public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
* [rpms/rust-ureq] f43: Update to version 3.3.0; Fixes RHBZ#2329382
@ 2026-07-01 10:49 Benjamin A. Beasley
0 siblings, 0 replies; only message in thread
From: Benjamin A. Beasley @ 2026-07-01 10:49 UTC (permalink / raw)
To: git-commits
A new commit has been pushed.
Repo : rpms/rust-ureq
Branch : f43
Commit : 808e1449cacf35bfbc7bfdd7b08776c31b96bea3
Author : Benjamin A. Beasley <code@musicinmybrain.net>
Date : 2026-06-28T10:34:49+01:00
Stats : +316/-84 in 7 file(s)
URL : https://src.fedoraproject.org/rpms/rust-ureq/c/808e1449cacf35bfbc7bfdd7b08776c31b96bea3?branch=f43
Log:
Update to version 3.3.0; Fixes RHBZ#2329382
---
diff --git a/.gitignore b/.gitignore
index 0cba4d1..0a520c0 100644
--- a/.gitignore
+++ b/.gitignore
@@ -3,3 +3,4 @@
/ureq-2.10.0.crate
/ureq-2.10.1.crate
/ureq-2.12.1.crate
+/ureq-3.3.0.crate
diff --git a/0001-Downstream-only-omit-tests-that-require-network-acce.patch b/0001-Downstream-only-omit-tests-that-require-network-acce.patch
new file mode 100644
index 0000000..33a9751
--- /dev/null
+++ b/0001-Downstream-only-omit-tests-that-require-network-acce.patch
@@ -0,0 +1,43 @@
+From 2d26abee2815fde560ca6dfa3c6f021200958fad Mon Sep 17 00:00:00 2001
+From: "Benjamin A. Beasley" <code@musicinmybrain.net>
+Date: Sun, 28 Jun 2026 10:16:41 +0100
+Subject: [PATCH] Downstream-only: omit tests that require network access
+
+---
+ src/lib.rs | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/src/lib.rs b/src/lib.rs
+index c616c6f..f1fc34c 100644
+--- a/src/lib.rs
++++ b/src/lib.rs
+@@ -36,7 +36,7 @@
+ //!
+ //! In its simplest form, ureq looks like this:
+ //!
+-//! ```rust
++//! ```rust,ignore
+ //! let body: String = ureq::get("http://example.com")
+ //! .header("Example-Header", "header value")
+ //! .call()?
+@@ -183,7 +183,7 @@
+ //! ureq does not guarantee to default to ring indefinitely. `rustls` as a feature flag will always
+ //! work, but the specific crypto backend might change in a minor version.
+ //!
+-//! ```
++//! ```ignore
+ //! # #[cfg(feature = "rustls")]
+ //! # {
+ //! // This uses rustls
+@@ -351,7 +351,7 @@
+ //! sending the body, ureq will respect that header by not overriding it,
+ //! and by encoding the body or not, as indicated by the headers you set.
+ //!
+-//! ```
++//! ```ignore
+ //! let resp = ureq::put("https://httpbin.org/put")
+ //! .header("Transfer-Encoding", "chunked")
+ //! .send("Hello world")?;
+--
+2.54.0
+
diff --git a/rust-ureq.spec b/rust-ureq.spec
index bdef838..3f2fc93 100644
--- a/rust-ureq.spec
+++ b/rust-ureq.spec
@@ -5,19 +5,26 @@
%global crate ureq
Name: rust-ureq
-Version: 2.12.1
+Version: 3.3.0
Release: %autorelease
Summary: Simple, safe HTTP client
License: MIT OR Apache-2.0
URL: https://crates.io/crates/ureq
Source: %{crates_source}
+# Automatically generated patch to strip dependencies and normalize metadata
+Patch: ureq-fix-metadata-auto.diff
# Manually created patch for downstream crate metadata changes
-# * bump cookie_store dependency from 0.21 to 0.22:
-# https://github.com/algesten/ureq/commit/a24929b
-# * bump brotli-decompressor dependency from v4 to v5:
-# https://github.com/algesten/ureq/commit/a24929bbf887979f3eaf39acda3ea127a08898f2
+# * Drop the rustls/aws-lc-rs feature dependency; we don’t have rust-aws-lc-rs.
+# Upstream says that this is enabled “for tests so we can demonstrate using
+# ureq without compiling ring.”
+# * Drop the auto_args dev-dependency since we don’t have rust-auto_args; drop
+# the cureq example that would have required it.
+# * Support testing in release mode: https://github.com/algesten/ureq/pull/1180
Patch: ureq-fix-metadata.diff
+# * Downstream-only: omit tests that require network access (and are not
+# practical to skip by name, e.g. anonymous doctests).
+Patch10: 0001-Downstream-only-omit-tests-that-require-network-acce.patch
BuildRequires: cargo-rpm-macros >= 24
@@ -38,11 +45,9 @@ use the "%{crate}" crate.
%files devel
%license %{crate_instdir}/LICENSE-APACHE
%license %{crate_instdir}/LICENSE-MIT
-%license %{crate_instdir}/src/chunked/LICENSE-APACHE
-%license %{crate_instdir}/src/chunked/LICENSE-MIT
%doc %{crate_instdir}/CHANGELOG.md
%doc %{crate_instdir}/CONTRIBUTING.md
-%doc %{crate_instdir}/FUTURE.md
+%doc %{crate_instdir}/MIGRATE-2-to-3.md
%doc %{crate_instdir}/README.md
%doc %{crate_instdir}/RELEASE.txt
%{crate_instdir}/
@@ -59,6 +64,54 @@ use the "default" feature of the "%{crate}" crate.
%files -n %{name}+default-devel
%ghost %{crate_instdir}/Cargo.toml
+%package -n %{name}+_ring-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+_ring-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "_ring" feature of the "%{crate}" crate.
+
+%files -n %{name}+_ring-devel
+%ghost %{crate_instdir}/Cargo.toml
+
+%package -n %{name}+_rustls-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+_rustls-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "_rustls" feature of the "%{crate}" crate.
+
+%files -n %{name}+_rustls-devel
+%ghost %{crate_instdir}/Cargo.toml
+
+%package -n %{name}+_tls-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+_tls-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "_tls" feature of the "%{crate}" crate.
+
+%files -n %{name}+_tls-devel
+%ghost %{crate_instdir}/Cargo.toml
+
+%package -n %{name}+_url-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+_url-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "_url" feature of the "%{crate}" crate.
+
+%files -n %{name}+_url-devel
+%ghost %{crate_instdir}/Cargo.toml
+
%package -n %{name}+brotli-devel
Summary: %{summary}
BuildArch: noarch
@@ -107,76 +160,112 @@ use the "gzip" feature of the "%{crate}" crate.
%files -n %{name}+gzip-devel
%ghost %{crate_instdir}/Cargo.toml
-%package -n %{name}+http-crate-devel
+%package -n %{name}+json-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+json-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "json" feature of the "%{crate}" crate.
+
+%files -n %{name}+json-devel
+%ghost %{crate_instdir}/Cargo.toml
+
+%package -n %{name}+multipart-devel
Summary: %{summary}
BuildArch: noarch
-%description -n %{name}+http-crate-devel %{_description}
+%description -n %{name}+multipart-devel %{_description}
This package contains library source intended for building other packages which
-use the "http-crate" feature of the "%{crate}" crate.
+use the "multipart" feature of the "%{crate}" crate.
-%files -n %{name}+http-crate-devel
+%files -n %{name}+multipart-devel
%ghost %{crate_instdir}/Cargo.toml
-%package -n %{name}+http-interop-devel
+%package -n %{name}+native-tls-devel
Summary: %{summary}
BuildArch: noarch
-%description -n %{name}+http-interop-devel %{_description}
+%description -n %{name}+native-tls-devel %{_description}
This package contains library source intended for building other packages which
-use the "http-interop" feature of the "%{crate}" crate.
+use the "native-tls" feature of the "%{crate}" crate.
-%files -n %{name}+http-interop-devel
+%files -n %{name}+native-tls-devel
%ghost %{crate_instdir}/Cargo.toml
-%package -n %{name}+json-devel
+%package -n %{name}+native-tls-no-default-devel
Summary: %{summary}
BuildArch: noarch
-%description -n %{name}+json-devel %{_description}
+%description -n %{name}+native-tls-no-default-devel %{_description}
This package contains library source intended for building other packages which
-use the "json" feature of the "%{crate}" crate.
+use the "native-tls-no-default" feature of the "%{crate}" crate.
-%files -n %{name}+json-devel
+%files -n %{name}+native-tls-no-default-devel
%ghost %{crate_instdir}/Cargo.toml
-%package -n %{name}+native-certs-devel
+%package -n %{name}+native-tls-webpki-roots-devel
Summary: %{summary}
BuildArch: noarch
-%description -n %{name}+native-certs-devel %{_description}
+%description -n %{name}+native-tls-webpki-roots-devel %{_description}
This package contains library source intended for building other packages which
-use the "native-certs" feature of the "%{crate}" crate.
+use the "native-tls-webpki-roots" feature of the "%{crate}" crate.
-%files -n %{name}+native-certs-devel
+%files -n %{name}+native-tls-webpki-roots-devel
%ghost %{crate_instdir}/Cargo.toml
-%package -n %{name}+native-tls-devel
+%package -n %{name}+platform-verifier-devel
Summary: %{summary}
BuildArch: noarch
-%description -n %{name}+native-tls-devel %{_description}
+%description -n %{name}+platform-verifier-devel %{_description}
This package contains library source intended for building other packages which
-use the "native-tls" feature of the "%{crate}" crate.
+use the "platform-verifier" feature of the "%{crate}" crate.
-%files -n %{name}+native-tls-devel
+%files -n %{name}+platform-verifier-devel
+%ghost %{crate_instdir}/Cargo.toml
+
+%package -n %{name}+rustls-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+rustls-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "rustls" feature of the "%{crate}" crate.
+
+%files -n %{name}+rustls-devel
+%ghost %{crate_instdir}/Cargo.toml
+
+%package -n %{name}+rustls-no-provider-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+rustls-no-provider-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "rustls-no-provider" feature of the "%{crate}" crate.
+
+%files -n %{name}+rustls-no-provider-devel
%ghost %{crate_instdir}/Cargo.toml
-%package -n %{name}+proxy-from-env-devel
+%package -n %{name}+rustls-webpki-roots-devel
Summary: %{summary}
BuildArch: noarch
-%description -n %{name}+proxy-from-env-devel %{_description}
+%description -n %{name}+rustls-webpki-roots-devel %{_description}
This package contains library source intended for building other packages which
-use the "proxy-from-env" feature of the "%{crate}" crate.
+use the "rustls-webpki-roots" feature of the "%{crate}" crate.
-%files -n %{name}+proxy-from-env-devel
+%files -n %{name}+rustls-webpki-roots-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+socks-proxy-devel
@@ -191,16 +280,16 @@ use the "socks-proxy" feature of the "%{crate}" crate.
%files -n %{name}+socks-proxy-devel
%ghost %{crate_instdir}/Cargo.toml
-%package -n %{name}+tls-devel
+%package -n %{name}+win-system-proxy-devel
Summary: %{summary}
BuildArch: noarch
-%description -n %{name}+tls-devel %{_description}
+%description -n %{name}+win-system-proxy-devel %{_description}
This package contains library source intended for building other packages which
-use the "tls" feature of the "%{crate}" crate.
+use the "win-system-proxy" feature of the "%{crate}" crate.
-%files -n %{name}+tls-devel
+%files -n %{name}+win-system-proxy-devel
%ghost %{crate_instdir}/Cargo.toml
%prep
@@ -218,18 +307,21 @@ use the "tls" feature of the "%{crate}" crate.
%if %{with check}
%check
-# * skip tests that require internet access
+# * unversioned_rustls_crypto_provider needs aws-lc-rs
+# * other skipped tests require internet access
%{cargo_test -- -- %{shrink:
- --skip error::tests::status_code_error_redirect
- --skip test::range::read_range_rustls
- --skip tests::connect_http_google
- --skip tests::connect_https_google_rustls
- --skip src/agent.rs
- --skip src/error.rs
- --skip src/lib.rs
- --skip src/request.rs
- --skip src/response.rs
- --skip ipv6_addr_in_dns_name
+ --skip tls::TlsConfigBuilder::unversioned_rustls_crypto_provider
+ --skip agent::Agent::run
+ --skip body::Body
+ --skip body::BodyReader
+ --skip body::BodyWithConfig
+ --skip middleware::Middleware
+ --skip request::RequestBuilder
+ --skip response::ResponseExt::get_redirect_history
+ --skip response::ResponseExt::get_uri
+ --skip send_body::AsSendBody
+ --skip test::
+ --skip unversioned::transport::Connector
}}
%endif
diff --git a/rust2rpm.toml b/rust2rpm.toml
index e494149..28299d8 100644
--- a/rust2rpm.toml
+++ b/rust2rpm.toml
@@ -1,30 +1,88 @@
[package]
cargo-toml-patch-comments = [
- "bump cookie_store dependency from 0.21 to 0.22: https://github.com/algesten/ureq/commit/a24929b",
"""\
-bump brotli-decompressor dependency from v4 to v5: \
-https://github.com/algesten/ureq/commit/a24929bbf887979f3eaf39acda3ea127a08898f2\
+Drop the rustls/aws-lc-rs feature dependency; we don’t have rust-aws-lc-rs. \
+Upstream says that this is enabled “for tests so we can demonstrate using ureq \
+without compiling ring.”\
+""",
+ """\
+Drop the auto_args dev-dependency since we don’t have rust-auto_args; drop the \
+cureq example that would have required it.\
+""",
+ """\
+Support testing in release mode: https://github.com/algesten/ureq/pull/1180\
""",
]
[features]
-hide = ["testdeps"]
+hide = [
+ # Let’s avoid exposing unstable or internal features unless default and/or
+ # stable features depend on them. We still end up needing most of them, but
+ # each one we can omit reduces the likelihood of downstream problems in
+ # minor-version updates and potentially prunes some unwanted dependencies.
+
+ # Unstable features
+ # #################
+
+ # rustls → rustls-no-provider
+ # "rustls-no-provider",
+
+ # native-tls → native-tls-no-default
+ # "native-tls-no-default",
+
+ "vendored",
+
+ # Internal features
+ # #################
+
+ # (default) → rustls → _ring
+ # "_ring",
+
+ # cookies → _url
+ # "_url",
+
+ # native-tls → _tls
+ # rustls → rustls-no-provider → _tls
+ # native-tls → native-tls-no-default → _tls
+ # "_tls",
+
+ "_test",
+
+ # rustls → rustls-no-provider → _rustls
+ # "_rustls",
+
+ "_doc",
+]
+
+[[package.extra-patches]]
+number = 10
+file = "0001-Downstream-only-omit-tests-that-require-network-acce.patch"
+comments = [
+ """\
+Downstream-only: omit tests that require network access (and are not practical \
+to skip by name, e.g. anonymous doctests).\
+""",
+]
[tests]
+skip-exact = false
skip = [
- # --lib
- "error::tests::status_code_error_redirect",
- "test::range::read_range_rustls",
- "tests::connect_http_google",
- "tests::connect_https_google_rustls",
- # --doc
- "src/agent.rs",
- "src/error.rs",
- "src/lib.rs",
- "src/request.rs",
- "src/response.rs",
- # --tests
- "ipv6_addr_in_dns_name",
+ # requires aws-lc-rs:
+ "tls::TlsConfigBuilder::unversioned_rustls_crypto_provider",
+ # require network access:
+ "agent::Agent::run",
+ "body::Body",
+ "body::BodyReader",
+ "body::BodyWithConfig",
+ "middleware::Middleware",
+ "request::RequestBuilder",
+ "response::ResponseExt::get_redirect_history",
+ "response::ResponseExt::get_uri",
+ "send_body::AsSendBody",
+ "test::",
+ "unversioned::transport::Connector",
+]
+comments = [
+ "unversioned_rustls_crypto_provider needs aws-lc-rs",
+ "other skipped tests require internet access",
]
-comments = ["skip tests that require internet access"]
-
diff --git a/sources b/sources
index fff7ff9..09d739b 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (ureq-2.12.1.crate) = 30fb75e097b9cfb34ebd056c0936d1b5ce16f4a613e963c5179046eb48a0165da6cb2e4a5d612b03d6b0daf736f5353159a92ab69e68b643b923fd551f0c3e7c
+SHA512 (ureq-3.3.0.crate) = 3ec507b4e29927b3e8a4c5982226e440be511bd42959c73049ce11a57d25df004ac6222cd394008a766c655d446563649fee57e95dbfc79979a0e11a696a7de6
diff --git a/ureq-fix-metadata-auto.diff b/ureq-fix-metadata-auto.diff
new file mode 100644
index 0000000..a998fbd
--- /dev/null
+++ b/ureq-fix-metadata-auto.diff
@@ -0,0 +1,18 @@
+--- ureq-3.3.0/Cargo.toml 2006-07-24T01:21:28+00:00
++++ ureq-3.3.0/Cargo.toml 2026-06-28T09:34:39.268335+00:00
+@@ -111,7 +111,7 @@
+ rustls-webpki-roots = ["dep:webpki-roots"]
+ socks-proxy = ["dep:socks"]
+ vendored = ["native-tls?/vendored"]
+-win-system-proxy = ["dep:winreg"]
++win-system-proxy = []
+
+ [lib]
+ name = "ureq"
+@@ -269,6 +269,3 @@
+ "derive",
+ ]
+
+-[target."cfg(windows)".dependencies.winreg]
+-version = "0.56"
+-optional = true
diff --git a/ureq-fix-metadata.diff b/ureq-fix-metadata.diff
index 57b1aa3..0e285d4 100644
--- a/ureq-fix-metadata.diff
+++ b/ureq-fix-metadata.diff
@@ -1,20 +1,40 @@
---- ureq-2.12.1/Cargo.toml 1970-01-01T00:00:01+00:00
-+++ ureq-2.12.1/Cargo.toml 2026-06-28T06:57:54.057318+00:00
-@@ -105,7 +105,7 @@
- version = "0.22"
+--- ureq-3.3.0/Cargo.toml 2006-07-24T01:21:28+00:00
++++ ureq-3.3.0/Cargo.toml 2026-06-28T09:34:39.269754+00:00
+@@ -118,19 +118,6 @@
+ path = "src/lib.rs"
- [dependencies.brotli-decompressor]
--version = "4.0.0"
-+version = "5.0.0"
- optional = true
+ [[example]]
+-name = "cureq"
+-path = "examples/cureq.rs"
+-required-features = [
+- "rustls",
+- "native-tls",
+- "socks-proxy",
+- "cookies",
+- "gzip",
+- "brotli",
+- "charset",
+-]
+-
+-[[example]]
+ name = "mpsc-transport"
+ path = "examples/mpsc-transport.rs"
+ required-features = ["rustls"]
+@@ -251,16 +238,13 @@
- [dependencies.cookie]
-@@ -114,7 +114,7 @@
- default-features = false
+ [dev-dependencies.assert_no_alloc]
+ version = "1.1.2"
+-
+-[dev-dependencies.auto-args]
+-version = "0.3.0"
++default-features = false
- [dependencies.cookie_store]
--version = "0.21.1"
-+version = "0.22"
- features = [
- "preserve_order",
- "serde_json",
+ [dev-dependencies.env_logger]
+ version = "0.11.7"
+
+ [dev-dependencies.rustls]
+ version = "0.23"
+-features = ["aws-lc-rs"]
+
+ [dev-dependencies.serde]
+ version = "1.0.204"
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2026-07-01 10:49 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-07-01 10:49 [rpms/rust-ureq] f43: Update to version 3.3.0; Fixes RHBZ#2329382 Benjamin A. Beasley
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox