Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package obs-service-cargo for
openSUSE:Factory checked in at 2024-03-17 22:15:15
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/obs-service-cargo (Old)
and /work/SRC/openSUSE:Factory/.obs-service-cargo.new.1905 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "obs-service-cargo"
Sun Mar 17 22:15:15 2024 rev:12 rq:1158489 version:1.2.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/obs-service-cargo/obs-service-cargo.changes
2024-03-02 23:24:36.061836424 +0100
+++
/work/SRC/openSUSE:Factory/.obs-service-cargo.new.1905/obs-service-cargo.changes
2024-03-17 22:15:46.715891900 +0100
@@ -1,0 +2,6 @@
+Sat Mar 9 13:26:57 UTC 2024 - Soc Virnyl Estela
<[email protected]>
+
+- Update to version 1.2.1:
+ * Add experimental vendor_filterer support
+
+-------------------------------------------------------------------
Old:
----
obs-service-cargo-1.1.0.tar.gz
New:
----
obs-service-cargo-1.2.1.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ obs-service-cargo.spec ++++++
--- /var/tmp/diff_new_pack.nR1Bok/_old 2024-03-17 22:15:48.963974372 +0100
+++ /var/tmp/diff_new_pack.nR1Bok/_new 2024-03-17 22:15:48.967974518 +0100
@@ -22,7 +22,7 @@
Group: Development/Tools/Building
# Repository name subject to change
URL: https://github.com/openSUSE/obs-service-cargo_vendor
-Version: 1.1.0
+Version: 1.2.1
Release: 0
Source0:
https://github.com/openSUSE/obs-service-cargo_vendor/archive/refs/tags/v%{version}.tar.gz#/%{name}-%{version}.tar.gz
Source1: vendor.tar.zst
++++++ obs-service-cargo-1.1.0.tar.gz -> obs-service-cargo-1.2.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/obs-service-cargo_vendor-1.1.0/Cargo.lock
new/obs-service-cargo_vendor-1.2.1/Cargo.lock
--- old/obs-service-cargo_vendor-1.1.0/Cargo.lock 2024-03-02
18:49:39.000000000 +0100
+++ new/obs-service-cargo_vendor-1.2.1/Cargo.lock 2024-03-07
05:29:23.000000000 +0100
@@ -76,9 +76,9 @@
[[package]]
name = "arc-swap"
-version = "1.6.0"
+version = "1.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bddcadddf5e9015d310179a59bb28c4d4b9920ad0f11e8e14dbadf654890c9a6"
+checksum = "7b3d0060af21e8d11a926981cc00c6c1541aa91dd64b9f881985c3da1094425f"
[[package]]
name = "arrayvec"
@@ -145,7 +145,7 @@
checksum = "05efc5cfd9110c8416e471df0e96702d58690178e206e61b7173706673c93706"
dependencies = [
"memchr",
- "regex-automata 0.4.5",
+ "regex-automata 0.4.6",
"serde",
]
@@ -160,7 +160,7 @@
[[package]]
name = "bulk-updater"
-version = "1.1.0"
+version = "1.2.0"
dependencies = [
"clap",
"obs-service-cargo",
@@ -231,10 +231,11 @@
[[package]]
name = "cc"
-version = "1.0.88"
+version = "1.0.90"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "02f341c093d19155a6e41631ce5971aac4e9a868262212153124c15fa22d1cdc"
+checksum = "8cd6604a82acf3039f1144f54b8eb34e91ffba622051189e71b781822d5ee1f5"
dependencies = [
+ "jobserver",
"libc",
]
@@ -257,9 +258,9 @@
[[package]]
name = "clap"
-version = "4.5.1"
+version = "4.5.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c918d541ef2913577a0f9566e9ce27cb35b6df072075769e0b26cb5a554520da"
+checksum = "b230ab84b0ffdf890d5a10abdbc8b83ae1c4918275daea1ab8801f71536b2651"
dependencies = [
"clap_builder",
"clap_derive",
@@ -267,9 +268,9 @@
[[package]]
name = "clap_builder"
-version = "4.5.1"
+version = "4.5.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9f3e7391dad68afb0c2ede1bf619f579a3dc9c2ec67f089baa397123a2f3d1eb"
+checksum = "ae129e2e766ae0ec03484e609954119f123cc1fe650337e155d03b022f24f7b4"
dependencies = [
"anstream",
"anstyle",
@@ -1401,9 +1402,9 @@
[[package]]
name = "http"
-version = "0.2.11"
+version = "0.2.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8947b1a6fad4393052c7ba1f4cd97bed3e953a95c79c92ad9b051a04611d9fbb"
+checksum = "601cbb57e577e2f5ef5be8e7b83f0f63994f25aa94d673e54a92d5c516d101f1"
dependencies = [
"bytes",
"fnv",
@@ -1523,10 +1524,19 @@
checksum = "b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c"
[[package]]
+name = "jobserver"
+version = "0.1.28"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ab46a6e9526ddef3ae7f787c06f0f2600639ba80ea3eade3d8e670a2230f51d6"
+dependencies = [
+ "libc",
+]
+
+[[package]]
name = "js-sys"
-version = "0.3.68"
+version = "0.3.69"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "406cda4b368d531c842222cf9d2600a9a4acce8d29423695379c6868a143a9ee"
+checksum = "29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d"
dependencies = [
"wasm-bindgen",
]
@@ -1738,7 +1748,7 @@
[[package]]
name = "obs-service-cargo"
-version = "1.1.0"
+version = "1.2.0"
dependencies = [
"bzip2",
"clap",
@@ -1974,7 +1984,7 @@
dependencies = [
"aho-corasick",
"memchr",
- "regex-automata 0.4.5",
+ "regex-automata 0.4.6",
"regex-syntax 0.8.2",
]
@@ -1989,9 +1999,9 @@
[[package]]
name = "regex-automata"
-version = "0.4.5"
+version = "0.4.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5bb987efffd3c6d0d8f5f89510bb458559eab11e4f869acb20bf845e016259cd"
+checksum = "86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea"
dependencies = [
"aho-corasick",
"memchr",
@@ -2796,9 +2806,9 @@
[[package]]
name = "wasm-bindgen"
-version = "0.2.91"
+version = "0.2.92"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c1e124130aee3fb58c5bdd6b639a0509486b0338acaaae0c84a5124b0f588b7f"
+checksum = "4be2531df63900aeb2bca0daaaddec08491ee64ceecbee5076636a3b026795a8"
dependencies = [
"cfg-if",
"wasm-bindgen-macro",
@@ -2806,9 +2816,9 @@
[[package]]
name = "wasm-bindgen-backend"
-version = "0.2.91"
+version = "0.2.92"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c9e7e1900c352b609c8488ad12639a311045f40a35491fb69ba8c12f758af70b"
+checksum = "614d787b966d3989fa7bb98a654e369c762374fd3213d212cfc0251257e747da"
dependencies = [
"bumpalo",
"log",
@@ -2821,9 +2831,9 @@
[[package]]
name = "wasm-bindgen-futures"
-version = "0.4.41"
+version = "0.4.42"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "877b9c3f61ceea0e56331985743b13f3d25c406a7098d45180fb5f09bc19ed97"
+checksum = "76bc14366121efc8dbb487ab05bcc9d346b3b5ec0eaa76e46594cabbe51762c0"
dependencies = [
"cfg-if",
"js-sys",
@@ -2833,9 +2843,9 @@
[[package]]
name = "wasm-bindgen-macro"
-version = "0.2.91"
+version = "0.2.92"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b30af9e2d358182b5c7449424f017eba305ed32a7010509ede96cdc4696c46ed"
+checksum = "a1f8823de937b71b9460c0c34e25f3da88250760bec0ebac694b49997550d726"
dependencies = [
"quote",
"wasm-bindgen-macro-support",
@@ -2843,9 +2853,9 @@
[[package]]
name = "wasm-bindgen-macro-support"
-version = "0.2.91"
+version = "0.2.92"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "642f325be6301eb8107a83d12a8ac6c1e1c54345a7ef1a9261962dfefda09e66"
+checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7"
dependencies = [
"proc-macro2",
"quote",
@@ -2856,15 +2866,15 @@
[[package]]
name = "wasm-bindgen-shared"
-version = "0.2.91"
+version = "0.2.92"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4f186bd2dcf04330886ce82d6f33dd75a7bfcf69ecf5763b89fcde53b6ac9838"
+checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96"
[[package]]
name = "web-sys"
-version = "0.3.68"
+version = "0.3.69"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "96565907687f7aceb35bc5fc03770a8a0471d82e479f25832f54a0e3f4b28446"
+checksum = "77afa9a11836342370f4817622a2f0f418b134426d91a82dfb48f532d2ec13ef"
dependencies = [
"js-sys",
"wasm-bindgen",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/obs-service-cargo_vendor-1.1.0/Cargo.toml
new/obs-service-cargo_vendor-1.2.1/Cargo.toml
--- old/obs-service-cargo_vendor-1.1.0/Cargo.toml 2024-03-02
18:49:39.000000000 +0100
+++ new/obs-service-cargo_vendor-1.2.1/Cargo.toml 2024-03-07
05:29:23.000000000 +0100
@@ -12,7 +12,7 @@
resolver = "2"
[workspace.package]
-version = "1.1.0"
+version = "1.2.0"
description = "OBS Source Service and utilities for Rust software packaging."
authors = [
"Soc Virnyl Estela <[email protected]>",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/obs-service-cargo_vendor-1.1.0/bulk-updater/src/operations.rs
new/obs-service-cargo_vendor-1.2.1/bulk-updater/src/operations.rs
--- old/obs-service-cargo_vendor-1.1.0/bulk-updater/src/operations.rs
2024-03-02 18:49:39.000000000 +0100
+++ new/obs-service-cargo_vendor-1.2.1/bulk-updater/src/operations.rs
2024-03-07 05:29:23.000000000 +0100
@@ -287,6 +287,7 @@
let mut accept_risks: Vec<String> = Vec::new();
let mut src: String = String::new();
let mut tag: Option<String> = None;
+ let mut filter = false; // Still experimental, so default=false for now
let outdir = package_path.to_path_buf();
for param in params.iter() {
if let Some(name) = param.name.clone() {
@@ -317,6 +318,11 @@
accept_risks.push(String::from(text));
}
};
+ if name == "filter" {
+ if let Some(val) = param.text.as_ref().and_then(|t|
t.parse::<bool>().ok()) {
+ filter = val;
+ }
+ };
}
}
if compression.is_empty() || src.is_empty() {
@@ -346,6 +352,7 @@
outdir,
color: colorize,
i_accept_the_risk: accept_risks,
+ filter,
};
srcpath
.run_vendor(&new_opts)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/obs-service-cargo_vendor-1.1.0/cargo/src/cli.rs
new/obs-service-cargo_vendor-1.2.1/cargo/src/cli.rs
--- old/obs-service-cargo_vendor-1.1.0/cargo/src/cli.rs 2024-03-02
18:49:39.000000000 +0100
+++ new/obs-service-cargo_vendor-1.2.1/cargo/src/cli.rs 2024-03-07
05:29:23.000000000 +0100
@@ -53,6 +53,8 @@
pub cargotoml: Vec<PathBuf>,
#[arg(long, default_value_t = true, action = clap::ArgAction::Set, help =
"Update dependencies or not")]
pub update: bool,
+ #[arg(long, default_value_t = false, action = clap::ArgAction::Set, help =
"EXPERIMENTAL: Reduce vendor-tarball size by filtering out non-Linux
dependencies.")]
+ pub filter: bool,
#[arg(long, help = "Where to output vendor.tar* and cargo_config")]
pub outdir: PathBuf,
#[arg(
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/obs-service-cargo_vendor-1.1.0/cargo/src/utils/mod.rs
new/obs-service-cargo_vendor-1.2.1/cargo/src/utils/mod.rs
--- old/obs-service-cargo_vendor-1.1.0/cargo/src/utils/mod.rs 2024-03-02
18:49:39.000000000 +0100
+++ new/obs-service-cargo_vendor-1.2.1/cargo/src/utils/mod.rs 2024-03-07
05:29:23.000000000 +0100
@@ -228,7 +228,13 @@
process_reports(reports)?;
if hasdeps {
- vendor(prjdir, &cargo_config, &first_manifest, &manifest_files)?;
+ vendor(
+ prjdir,
+ &cargo_config,
+ &first_manifest,
+ &manifest_files,
+ args.filter,
+ )?;
// Finally, compress everything together.
let compression: &Compression = &args.compression;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/obs-service-cargo_vendor-1.1.0/cargo/src/vendor.rs
new/obs-service-cargo_vendor-1.2.1/cargo/src/vendor.rs
--- old/obs-service-cargo_vendor-1.1.0/cargo/src/vendor.rs 2024-03-02
18:49:39.000000000 +0100
+++ new/obs-service-cargo_vendor-1.2.1/cargo/src/vendor.rs 2024-03-07
05:29:23.000000000 +0100
@@ -52,27 +52,60 @@
cargo_config: impl AsRef<Path>,
manifest_path: impl AsRef<Path>,
extra_manifest_paths: &[impl AsRef<Path>],
+ filter: bool,
) -> Result<(), OBSCargoError> {
- let mut vendor_options: Vec<OsString> = vec![
- "-vv".into(),
- "--manifest-path".into(),
- manifest_path.as_ref().into(),
- ];
+ let mut vendor_options: Vec<OsString> =
+ vec!["--manifest-path".into(), manifest_path.as_ref().into()];
+ let mut using_sync = false;
for ex_path in extra_manifest_paths {
vendor_options.push("--sync".into());
vendor_options.push(ex_path.as_ref().into());
+ using_sync = true;
}
+ // cargo-vendor-filterer doesn't yet support `--sync` (will have it in the
next release, hopefully).
+ // In the meantime, or, if filtering is explicitly disabled, use the
normal vendor-subcommand.
+ let using_vendor_filterer = filter && !using_sync;
+ if filter && !using_vendor_filterer {
+ warn!(
+ "â ï¸ Cannot use 'filter' in this crate yet. Falling back to
regular, unfiltered vendoring."
+ );
+ }
+
+ let cargo_subcommand = if using_vendor_filterer {
+ info!("Filter set to true. Only vendoring crates for platforms
*-unknown-linux-gnu and wasm32-*");
+ vendor_options.push("--platform=*-unknown-linux-gnu".into());
+ // Some crates compile their plugins to WASM, so we need those
dependencies as well.
+ // Conservatively adding them everywhere, even if they are not needed
everywhere.
+ // But the impact should be small.
+ vendor_options.push("--platform=wasm32-wasi".into());
+ vendor_options.push("--platform=wasm32-unknown-unknown".into());
+ // We are conservative here and vendor all possible features, even
+ // if they are not used in the spec. But we can't know.
+ // Maybe make this configurable?
+ vendor_options.push("--all-features=true".into());
+ // vendor-filterer could theoretically also create the tarballs for us,
+ // with using `--format=tar.zstd` for example. But we need to include
+ // additional files and it also doesn't support all
compression-schemes.
+ vendor_options.push("--format=dir".into());
+ "vendor-filterer"
+ } else {
+ // cargo-vendor-filterer doesn't support `-vv`
+ vendor_options.push("-vv".into());
+ "vendor"
+ };
+
debug!(?vendor_options);
- let cargo_vendor_output = cargo_command("vendor", &vendor_options,
&prjdir).map_err(|e| {
- error!(err = %e);
- OBSCargoError::new(
- OBSCargoErrorKind::VendorError,
- "Unable to execute cargo".to_string(),
- )
- })?;
+ let cargo_vendor_output =
+ cargo_command(cargo_subcommand, &vendor_options, &prjdir).map_err(|e| {
+ error!(err = %e);
+ OBSCargoError::new(
+ OBSCargoErrorKind::VendorError,
+ "Unable to execute cargo".to_string(),
+ )
+ })?;
if let Some(p_path) = cargo_config.as_ref().parent() {
fs::create_dir_all(p_path).map_err(|err| {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/obs-service-cargo_vendor-1.1.0/cargo_vendor.service
new/obs-service-cargo_vendor-1.2.1/cargo_vendor.service
--- old/obs-service-cargo_vendor-1.1.0/cargo_vendor.service 2024-03-02
18:49:39.000000000 +0100
+++ new/obs-service-cargo_vendor-1.2.1/cargo_vendor.service 2024-03-07
05:29:23.000000000 +0100
@@ -31,4 +31,9 @@
<parameter name="cargotoml">
<description>Specify a Cargo.toml to use. Can be specified multiple times.
Default will autodetect.</description>
</parameter>
+ <parameter name="filter">
+ <description>EXPERIMENTAL: Reduce vendor-tarball size by filtering out
non-Linux dependencies.</description>
+ <allowedvalue>false</allowedvalue>
+ <allowedvalue>true</allowedvalue>
+ </parameter>
</service>
++++++ vendor.tar.zst ++++++
Binary files /var/tmp/diff_new_pack.nR1Bok/_old and
/var/tmp/diff_new_pack.nR1Bok/_new differ