1700 Commits

Author SHA1 Message Date
Mohamed Daahir
7db9b3881d Merge branch 'master' into http-over-unix-socket 2025-01-19 15:21:51 +00:00
Mohamed Daahir
df9003e3da
Merge pull request #401 from otaconix/more-cookie-info-in-session
Remove vendored reqwest_cookie_store & store default paths for cookies without an explicit path attribute
2025-01-19 15:02:56 +00:00
Stefan Zwanenburg
9ae2e3bfd4 Save cookie default-path if no explicit path attribute is present in Set-Cookie
Note that this commit does not alter the storage format of sessions.
Perhaps requiring a cookie path at all times would be a good idea, but
I haven't done that here, because I don't want to break existing
sessions for users.

Fixes: #400
2025-01-19 13:25:08 +01:00
Stefan Zwanenburg
de82cb8f6d Remove vendored reqwest_cookie_store.
Fixes #399
2025-01-19 13:23:55 +01:00
Mohamed Daahir
bd8dbdd2bd Merge branch 'master' into http-over-unix-socket 2025-01-11 20:02:15 +02:00
Mohamed Daahir
1a1a0b5dc8
Merge pull request #397 from kranurag7/kr/upgrade-cookie_store
upgrade cookie_store to 0.21.1
2025-01-11 18:01:43 +00:00
kranurag7
bb82a77c0e use builder.into()
Signed-off-by: kranurag7 <81210977+kranurag7@users.noreply.github.com>

Co-authored-by: Jan Verbeek <jan.verbeek@posteo.nl>
2025-01-11 23:16:11 +05:30
kranurag7
355dd04295 address review comments
Co-authored-by: Jan Verbeek <jan.verbeek@posteo.nl>
2025-01-11 23:13:41 +05:30
kranurag7
53f7eced0f upgrade cookie_store to 0.21.1
upgrading cookie_store to 0.21.1 via this commit because it was pulling
idna which contained a CVE.

Signed-off-by: kranurag7 <81210977+kranurag7@users.noreply.github.com>
2025-01-11 23:11:18 +05:30
Mohamed Daahir
92df488c3a revert disabling badssl tests 2025-01-11 10:27:59 +02:00
Mohamed Daahir
e362e7fe79 switch from read timeout to total timeout
the former is not yet supported in blocking client
2025-01-11 10:25:28 +02:00
Mohamed Daahir
c84e8ef752 implement connect timeout for unix_socket requests 2025-01-08 21:46:00 +02:00
Mohamed Daahir
d6019468ff implement read timeout for unix_socket requests 2025-01-07 23:46:34 +02:00
Mohamed Daahir
8bcbb0da90 disable failing badssl.com tests 2025-01-07 12:45:44 +02:00
Mohamed Daahir
31c442058e warn or error if unix-socket used with unsupported option 2025-01-07 12:42:09 +02:00
Mohamed Daahir
2eb636758b Merge branch 'master' into http-over-unix-socket 2025-01-07 11:34:43 +02:00
Fotis Gimian
196ca1f162
Switch to generating completions at runtime (#393)
* Allow for completion and man page generation at runtime and support for Elvish and Nshull

* Refine runtime generation based on feedback provided
2025-01-06 14:24:36 +02:00
Mohamed Daahir
3d887f0855 Merge branch 'master' into http-over-unix-socket 2025-01-02 14:01:58 +02:00
Mohamed Daahir
35dfe49761 update CHANGELOG.md 2025-01-02 13:52:22 +02:00
Mohamed Daahir
65898226ee bump version to v0.23.1 v0.23.1 2025-01-02 13:37:48 +02:00
Mohamed Daahir
4c3ab40d1f Update Cargo.lock 2025-01-02 13:33:02 +02:00
Mohamed Daahir
04fea201d7 update CHANGELOG.md 2025-01-02 13:32:41 +02:00
Mohamed Daahir
0d7d652ca8
Merge pull request #396 from zuisong/ruzstd
Security update: upgrade to ruzstd v0.7.3
2025-01-02 10:40:32 +02:00
zuisong
8e7722f462
upgrade to ruzstd v0.7.3
Security update
RUSTSEC-2024-0400: ruzstd uninit and out-of-bounds memory reads
KillingSpark/zstd-rs#75
2025-01-02 11:21:47 +08:00
Mohamed Daahir
0a8040728e store unix_client in ClientWithMiddleware 2024-12-31 20:38:49 +02:00
Mohamed Daahir
de521084cd Merge branch 'master' into http-over-unix-socket 2024-12-30 17:01:46 +02:00
Mohamed Daahir
0d9d68f02f
Merge pull request #394 from blyxxyz/warn-range-continue
Warn on combination of `--continue` and `Range:` header
2024-12-30 16:59:41 +02:00
Mohamed Daahir
67730e1ac1 check that host header is passed 2024-12-30 16:24:38 +02:00
Jan Verbeek
6b70b77c0a Warn on combination of --continue and Range: header 2024-12-30 14:45:22 +01:00
Mohamed Daahir
f09a19107a fix missing import 2024-12-30 14:58:49 +02:00
Mohamed Daahir
e0791b37ca provide complete example for unix-socket usage 2024-12-30 14:51:01 +02:00
Mohamed Daahir
c7fb645c89 throw an error if unix-socket used in unsupported os 2024-12-30 14:48:41 +02:00
Mohamed Daahir
cb8d3966a8 use shortened version of cfg unix check 2024-12-30 14:31:00 +02:00
Mohamed Daahir
b6d59d9f9d avoid mocking host header 2024-12-30 11:23:17 +02:00
Mohamed Daahir
652e3df82c add test for cookies 2024-12-30 10:44:21 +02:00
Mohamed Daahir
8cee2fe98e add middleware for managing cookies 2024-12-30 10:17:35 +02:00
Mohamed Daahir
80242c27d5 disable http_unix tests in windows 2024-12-29 19:19:44 +02:00
Mohamed Daahir
bf4b1b822e fix clippy warnings 2024-12-29 19:06:14 +02:00
Mohamed Daahir
531dba91c9 add initial tests for http_unix 2024-12-29 18:23:38 +02:00
Mohamed Daahir
fe56317ad4 implement test server for http_unix 2024-12-29 18:21:20 +02:00
Mohamed Daahir
aa8fbf562a support http over unix domain sockets 2024-12-29 18:19:16 +02:00
Mohamed Daahir
8ba7774575 reduce lifetime of printer closure passed to client middleware 2024-12-29 17:44:18 +02:00
Jan Verbeek
6c2981c4c5 Move --download test cases to own file 2024-12-19 06:36:49 +01:00
Mohamed Daahir
0116e8218e
Merge pull request #390 from blyxxyz/log-dependencies
Enable logging in `rustls` and `tracing`-using dependencies
2024-12-01 20:33:03 +00:00
Jan Verbeek
e947ca79b3 Print errors regardless of logging filters
Before:
```console
$ RUST_LOG=foobar xh ssh://example.org
[no output]
```
After:
```console
$ RUST_LOG=foobar xh ssh://example.org
xh: error: builder error for url (ssh://example.org)

Caused by:
    URL scheme is not allowed
```

Reusing the `log` formatter for this was cute but ultimately
confusing.
2024-11-30 17:51:01 +01:00
Jan Verbeek
2b98447fac Enable logging in rustls and tracing-using dependencies
Enable `rustls`'s `logging` feature to start emitting logs.

Enable the `tracing` crate's `log` feature to hook up the dependencies
that log via that crate.

`hyper` can use `tracing` but it's currently unstable and locked
behind `RUSTFLAGS='--cfg hyper_unstable_tracing'` so we shouldn't use
it yet.

This partially addresses #389.

```console
$ RUST_LOG=trace/ALPN xh https://example.org
[0.495665s DEBUG rustls::client::hs] ALPN protocol is Some(b"h2")
[0.499526s TRACE hyper_util::client::legacy::client] ALPN negotiated h2, updating pool
HTTP/2.0 200 OK
[...]
$ RUST_LOG=rustls xh https://example.org
[0.288085s DEBUG rustls::client::hs] No cached session for DnsName("example.org")
[0.288657s DEBUG rustls::client::hs] Not resuming any session
[0.288767s TRACE rustls::client::hs] Sending ClientHello Message {
    version: TLSv1_0,
    payload: Handshake {
[...]
[0.698465s DEBUG rustls::client::hs] Using ciphersuite TLS13_AES_256_GCM_SHA384
[0.698508s DEBUG rustls::client::tls13] Not resuming
[0.698530s TRACE rustls::client::client_conn] EarlyData rejected
[0.699267s DEBUG rustls::client::tls13] TLS1.3 encrypted extensions: [Protocols([ProtocolName(6832)])]
[0.699342s DEBUG rustls::client::hs] ALPN protocol is Some(b"h2")
[0.699578s TRACE rustls::client::tls13] Server cert is
CertificateChain([CertificateDer(0x3082076e3082[...]
```

`native-tls` barely has any logging so we don't get much useful info
from there yet.
2024-11-30 17:51:01 +01:00
Mohamed Daahir
05fd88c89c
Merge pull request #388 from blyxxyz/fix-clippy-1.83
Fix `clippy::needless_lifetimes`
2024-11-29 22:19:18 +00:00
Jan Verbeek
42167ad59e Fix clippy::needless_lifetimes
This lint is new in Rust 1.83.
2024-11-28 19:19:44 +01:00
Mohamed Daahir
ef4429dd03 box TypeError to fix result_large_err clippy warning 2024-10-19 18:58:10 +01:00
Mohamed Daahir
0fb0a13ecb bump version to v0.23.0 v0.23.0 2024-10-12 22:22:45 +01:00