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 2023-12-06 23:48:21
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/obs-service-cargo (Old)
 and      /work/SRC/openSUSE:Factory/.obs-service-cargo.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "obs-service-cargo"

Wed Dec  6 23:48:21 2023 rev:6 rq:1131221 version:0.8.18

Changes:
--------
--- /work/SRC/openSUSE:Factory/obs-service-cargo/obs-service-cargo.changes      
2023-11-24 23:35:38.801326176 +0100
+++ 
/work/SRC/openSUSE:Factory/.obs-service-cargo.new.25432/obs-service-cargo.changes
   2023-12-06 23:48:53.688725447 +0100
@@ -1,0 +2,9 @@
+Tue Dec  5 22:20:06 UTC 2023 - Soc Virnyl Estela 
<uncomfy+openbuildserv...@uncomfyhalomacro.pl>
+
+- Update to version 0.8.18:
+  * (de)compress: add Bz2 compression
+  * refactor return types and initial boilerplate for bz2 compress
+  * nitpick. slight refactor because Ok(()) looks yuck in some contexts
+  * it should be `--output` if we want to download a file
+
+-------------------------------------------------------------------

Old:
----
  obs-service-cargo-0.8.15.tar.gz

New:
----
  obs-service-cargo-0.8.18.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ obs-service-cargo.spec ++++++
--- /var/tmp/diff_new_pack.yaAGqT/_old  2023-12-06 23:48:55.824802646 +0100
+++ /var/tmp/diff_new_pack.yaAGqT/_new  2023-12-06 23:48:55.824802646 +0100
@@ -22,7 +22,7 @@
 Group:          Development/Tools/Building
 # Repository name subject to change
 URL:            https://github.com/openSUSE/obs-service-cargo_vendor
-Version:        0.8.15
+Version:        0.8.18
 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-0.8.15.tar.gz -> obs-service-cargo-0.8.18.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/obs-service-cargo_vendor-0.8.15/Cargo.lock 
new/obs-service-cargo_vendor-0.8.18/Cargo.lock
--- old/obs-service-cargo_vendor-0.8.15/Cargo.lock      2023-11-24 
12:57:59.000000000 +0100
+++ new/obs-service-cargo_vendor-0.8.18/Cargo.lock      2023-12-05 
23:09:28.000000000 +0100
@@ -48,30 +48,30 @@
 
 [[package]]
 name = "anstyle-parse"
-version = "0.2.2"
+version = "0.2.3"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "317b9a89c1868f5ea6ff1d9539a69f45dffc21ce321ac1fd1160dfa48c8e2140"
+checksum = "c75ac65da39e5fe5ab759307499ddad880d724eed2f6ce5b5e8a26f4f387928c"
 dependencies = [
  "utf8parse",
 ]
 
 [[package]]
 name = "anstyle-query"
-version = "1.0.0"
+version = "1.0.1"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "5ca11d4be1bab0c8bc8734a9aa7bf4ee8316d462a08c6ac5052f888fef5b494b"
+checksum = "a3a318f1f38d2418400f8209655bfd825785afd25aa30bb7ba6cc792e4596748"
 dependencies = [
- "windows-sys",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "anstyle-wincon"
-version = "3.0.1"
+version = "3.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "f0699d10d2f4d628a98ee7b57b289abbc98ff3bad977cb3152709d4bf2330628"
+checksum = "1cd54b81ec8d6180e24654d0b371ad22fc3dd083b6ff8ba325b72e00c87660a7"
 dependencies = [
  "anstyle",
- "windows-sys",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
@@ -160,7 +160,7 @@
 
 [[package]]
 name = "bulk-updater"
-version = "0.8.15"
+version = "0.8.18"
 dependencies = [
  "clap",
  "obs-service-cargo",
@@ -191,6 +191,27 @@
 checksum = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223"
 
 [[package]]
+name = "bzip2"
+version = "0.4.4"
+source = "registry+https://github.com/rust-lang/crates.io-index";
+checksum = "bdb116a6ef3f6c3698828873ad02c3014b3c85cadb88496095628e3ef1e347f8"
+dependencies = [
+ "bzip2-sys",
+ "libc",
+]
+
+[[package]]
+name = "bzip2-sys"
+version = "0.1.11+1.0.8"
+source = "registry+https://github.com/rust-lang/crates.io-index";
+checksum = "736a955f3fa7875102d57c82b8cac37ec45224a07fd32d58f9f7a186b6cd4cdc"
+dependencies = [
+ "cc",
+ "libc",
+ "pkg-config",
+]
+
+[[package]]
 name = "camino"
 version = "1.1.6"
 source = "registry+https://github.com/rust-lang/crates.io-index";
@@ -237,9 +258,9 @@
 
 [[package]]
 name = "clap"
-version = "4.4.8"
+version = "4.4.11"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "2275f18819641850fa26c89acc84d465c1bf91ce57bc2748b28c420473352f64"
+checksum = "bfaff671f6b22ca62406885ece523383b9b64022e341e53e009a62ebc47a45f2"
 dependencies = [
  "clap_builder",
  "clap_derive",
@@ -247,9 +268,9 @@
 
 [[package]]
 name = "clap_builder"
-version = "4.4.8"
+version = "4.4.11"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "07cdf1b148b25c1e1f7a42225e30a0d99a615cd4637eae7365548dd4529b95bc"
+checksum = "a216b506622bb1d316cd51328dce24e07bdff4a6128a47c7e7fad11878d5adbb"
 dependencies = [
  "anstream",
  "anstyle",
@@ -289,9 +310,9 @@
 
 [[package]]
 name = "core-foundation"
-version = "0.9.3"
+version = "0.9.4"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146"
+checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f"
 dependencies = [
  "core-foundation-sys",
  "libc",
@@ -299,9 +320,9 @@
 
 [[package]]
 name = "core-foundation-sys"
-version = "0.8.4"
+version = "0.8.6"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa"
+checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f"
 
 [[package]]
 name = "crc32fast"
@@ -390,9 +411,9 @@
 
 [[package]]
 name = "deranged"
-version = "0.3.9"
+version = "0.3.10"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "0f32d04922c60427da6f9fef14d042d9edddef64cb9d4ce0d64d0685fbeb1fd3"
+checksum = "8eb30d70a07a3b04884d2677f06bec33509dc67ca60d92949e5535352d3191dc"
 dependencies = [
  "powerfmt",
  "serde",
@@ -447,12 +468,12 @@
 
 [[package]]
 name = "errno"
-version = "0.3.7"
+version = "0.3.8"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "f258a7194e7f7c2a7837a8913aeab7fd8c383457034fa20ce4dd3dcb813e8eb8"
+checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245"
 dependencies = [
  "libc",
- "windows-sys",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
@@ -472,14 +493,14 @@
 
 [[package]]
 name = "filetime"
-version = "0.2.22"
+version = "0.2.23"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "d4029edd3e734da6fe05b6cd7bd2960760a616bd2ddd0d59a0124746d6272af0"
+checksum = "1ee447700ac8aa0b2f2bd7bc4462ad686ba06baa6727ac149a2d6277f0d240fd"
 dependencies = [
  "cfg-if",
  "libc",
- "redox_syscall 0.3.5",
- "windows-sys",
+ "redox_syscall",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
@@ -1348,9 +1369,9 @@
 
 [[package]]
 name = "hashbrown"
-version = "0.14.2"
+version = "0.14.3"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "f93e7192158dbcda357bdec5fb5788eebf8bbac027f3f33e719d29135ae84156"
+checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604"
 
 [[package]]
 name = "heck"
@@ -1370,7 +1391,7 @@
 source = "registry+https://github.com/rust-lang/crates.io-index";
 checksum = "5444c27eef6923071f7ebcc33e3444508466a76f7a2b93da00ed6e19f30c1ddb"
 dependencies = [
- "windows-sys",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
@@ -1507,9 +1528,9 @@
 
 [[package]]
 name = "js-sys"
-version = "0.3.65"
+version = "0.3.66"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "54c0c35952f67de54bb584e9fd912b3023117cbafc0a77d8f3dee1fb5f572fe8"
+checksum = "cee9c64da59eae3b50095c18d3e74f8b73c0b86d2792824ff01bbce68ba229ca"
 dependencies = [
  "wasm-bindgen",
 ]
@@ -1553,14 +1574,14 @@
 dependencies = [
  "bitflags 2.4.1",
  "libc",
- "redox_syscall 0.4.1",
+ "redox_syscall",
 ]
 
 [[package]]
 name = "linux-raw-sys"
-version = "0.4.11"
+version = "0.4.12"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "969488b55f8ac402214f3f5fd243ebb7206cf82de60d3172994707a4bcc2b829"
+checksum = "c4cd1a83af159aa67994778be9070f0ae1bd732942279cabb14f86f986a21456"
 
 [[package]]
 name = "lock_api"
@@ -1662,7 +1683,7 @@
 dependencies = [
  "libc",
  "wasi",
- "windows-sys",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
@@ -1724,8 +1745,9 @@
 
 [[package]]
 name = "obs-service-cargo"
-version = "0.8.15"
+version = "0.8.18"
 dependencies = [
+ "bzip2",
  "clap",
  "flate2",
  "glob",
@@ -1779,9 +1801,9 @@
 dependencies = [
  "cfg-if",
  "libc",
- "redox_syscall 0.4.1",
+ "redox_syscall",
  "smallvec",
- "windows-targets",
+ "windows-targets 0.48.5",
 ]
 
 [[package]]
@@ -1863,9 +1885,9 @@
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.69"
+version = "1.0.70"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "134c189feb4956b20f6f547d2cf727d4c0fe06722b20a0eec87ed445a97f92da"
+checksum = "39278fbbf5fb4f646ce651690877f89d1c5811a3d4acb27700c1cb3cdb78fd3b"
 dependencies = [
  "unicode-ident",
 ]
@@ -1932,15 +1954,6 @@
 
 [[package]]
 name = "redox_syscall"
-version = "0.3.5"
-source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29"
-dependencies = [
- "bitflags 1.3.2",
-]
-
-[[package]]
-name = "redox_syscall"
 version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index";
 checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa"
@@ -2047,16 +2060,16 @@
 
 [[package]]
 name = "ring"
-version = "0.17.5"
+version = "0.17.6"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "fb0205304757e5d899b9c2e448b867ffd03ae7f988002e47cd24954391394d0b"
+checksum = "684d5e6e18f669ccebf64a92236bb7db9a34f07be010e3627368182027180866"
 dependencies = [
  "cc",
  "getrandom",
  "libc",
  "spin",
  "untrusted",
- "windows-sys",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
@@ -2067,15 +2080,15 @@
 
 [[package]]
 name = "rustix"
-version = "0.38.25"
+version = "0.38.26"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "dc99bc2d4f1fed22595588a013687477aedf3cdcfb26558c559edb67b4d9b22e"
+checksum = "9470c4bf8246c8daf25f9598dca807fb6510347b1e1cfa55749113850c79d88a"
 dependencies = [
  "bitflags 2.4.1",
  "errno",
  "libc",
  "linux-raw-sys",
- "windows-sys",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
@@ -2163,7 +2176,7 @@
 source = "registry+https://github.com/rust-lang/crates.io-index";
 checksum = "0c3733bf4cf7ea0880754e19cb5a462007c4a8c1914bff372ccc95b464f1df88"
 dependencies = [
- "windows-sys",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
@@ -2328,7 +2341,7 @@
 checksum = "7b5fac59a5cb5dd637972e5fca70daf0523c9067fcdc4842f053dae04a18f8e9"
 dependencies = [
  "libc",
- "windows-sys",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
@@ -2415,7 +2428,7 @@
  "tokio",
  "toml 0.8.8",
  "twox-hash",
- "windows-targets",
+ "windows-targets 0.48.5",
 ]
 
 [[package]]
@@ -2437,9 +2450,9 @@
 dependencies = [
  "cfg-if",
  "fastrand",
- "redox_syscall 0.4.1",
+ "redox_syscall",
  "rustix",
- "windows-sys",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
@@ -2544,7 +2557,7 @@
  "num_cpus",
  "pin-project-lite",
  "socket2 0.5.5",
- "windows-sys",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
@@ -2812,9 +2825,9 @@
 
 [[package]]
 name = "wasm-bindgen"
-version = "0.2.88"
+version = "0.2.89"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "7daec296f25a1bae309c0cd5c29c4b260e510e6d813c286b19eaadf409d40fce"
+checksum = "0ed0d4f68a3015cc185aff4db9506a015f4b96f95303897bfa23f846db54064e"
 dependencies = [
  "cfg-if",
  "wasm-bindgen-macro",
@@ -2822,9 +2835,9 @@
 
 [[package]]
 name = "wasm-bindgen-backend"
-version = "0.2.88"
+version = "0.2.89"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "e397f4664c0e4e428e8313a469aaa58310d302159845980fd23b0f22a847f217"
+checksum = "1b56f625e64f3a1084ded111c4d5f477df9f8c92df113852fa5a374dbda78826"
 dependencies = [
  "bumpalo",
  "log",
@@ -2837,9 +2850,9 @@
 
 [[package]]
 name = "wasm-bindgen-futures"
-version = "0.4.38"
+version = "0.4.39"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "9afec9963e3d0994cac82455b2b3502b81a7f40f9a0d32181f7528d9f4b43e02"
+checksum = "ac36a15a220124ac510204aec1c3e5db8a22ab06fd6706d881dc6149f8ed9a12"
 dependencies = [
  "cfg-if",
  "js-sys",
@@ -2849,9 +2862,9 @@
 
 [[package]]
 name = "wasm-bindgen-macro"
-version = "0.2.88"
+version = "0.2.89"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "5961017b3b08ad5f3fe39f1e79877f8ee7c23c5e5fd5eb80de95abc41f1f16b2"
+checksum = "0162dbf37223cd2afce98f3d0785506dcb8d266223983e4b5b525859e6e182b2"
 dependencies = [
  "quote",
  "wasm-bindgen-macro-support",
@@ -2859,9 +2872,9 @@
 
 [[package]]
 name = "wasm-bindgen-macro-support"
-version = "0.2.88"
+version = "0.2.89"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "c5353b8dab669f5e10f5bd76df26a9360c748f054f862ff5f3f8aae0c7fb3907"
+checksum = "f0eb82fcb7930ae6219a7ecfd55b217f5f0893484b7a13022ebb2b2bf20b5283"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -2872,15 +2885,15 @@
 
 [[package]]
 name = "wasm-bindgen-shared"
-version = "0.2.88"
+version = "0.2.89"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "0d046c5d029ba91a1ed14da14dca44b68bf2f124cfbaf741c54151fdb3e0750b"
+checksum = "7ab9b36309365056cd639da3134bf87fa8f3d86008abf99e612384a6eecd459f"
 
 [[package]]
 name = "web-sys"
-version = "0.3.65"
+version = "0.3.66"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "5db499c5f66323272151db0e666cd34f78617522fb0c1604d31a27c50c206a85"
+checksum = "50c24a44ec86bb68fbecd1b3efed7e85ea5621b39b35ef2766b66cd984f8010f"
 dependencies = [
  "js-sys",
  "wasm-bindgen",
@@ -2923,7 +2936,7 @@
 source = "registry+https://github.com/rust-lang/crates.io-index";
 checksum = "e686886bc078bc1b0b600cac0147aadb815089b6e4da64016cbd754b6342700f"
 dependencies = [
- "windows-targets",
+ "windows-targets 0.48.5",
 ]
 
 [[package]]
@@ -2932,7 +2945,16 @@
 source = "registry+https://github.com/rust-lang/crates.io-index";
 checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9"
 dependencies = [
- "windows-targets",
+ "windows-targets 0.48.5",
+]
+
+[[package]]
+name = "windows-sys"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index";
+checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
+dependencies = [
+ "windows-targets 0.52.0",
 ]
 
 [[package]]
@@ -2941,13 +2963,28 @@
 source = "registry+https://github.com/rust-lang/crates.io-index";
 checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c"
 dependencies = [
- "windows_aarch64_gnullvm",
- "windows_aarch64_msvc",
- "windows_i686_gnu",
- "windows_i686_msvc",
- "windows_x86_64_gnu",
- "windows_x86_64_gnullvm",
- "windows_x86_64_msvc",
+ "windows_aarch64_gnullvm 0.48.5",
+ "windows_aarch64_msvc 0.48.5",
+ "windows_i686_gnu 0.48.5",
+ "windows_i686_msvc 0.48.5",
+ "windows_x86_64_gnu 0.48.5",
+ "windows_x86_64_gnullvm 0.48.5",
+ "windows_x86_64_msvc 0.48.5",
+]
+
+[[package]]
+name = "windows-targets"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index";
+checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd"
+dependencies = [
+ "windows_aarch64_gnullvm 0.52.0",
+ "windows_aarch64_msvc 0.52.0",
+ "windows_i686_gnu 0.52.0",
+ "windows_i686_msvc 0.52.0",
+ "windows_x86_64_gnu 0.52.0",
+ "windows_x86_64_gnullvm 0.52.0",
+ "windows_x86_64_msvc 0.52.0",
 ]
 
 [[package]]
@@ -2957,46 +2994,88 @@
 checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
 
 [[package]]
+name = "windows_aarch64_gnullvm"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index";
+checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea"
+
+[[package]]
 name = "windows_aarch64_msvc"
 version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index";
 checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
 
 [[package]]
+name = "windows_aarch64_msvc"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index";
+checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef"
+
+[[package]]
 name = "windows_i686_gnu"
 version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index";
 checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
 
 [[package]]
+name = "windows_i686_gnu"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index";
+checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313"
+
+[[package]]
 name = "windows_i686_msvc"
 version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index";
 checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
 
 [[package]]
+name = "windows_i686_msvc"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index";
+checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a"
+
+[[package]]
 name = "windows_x86_64_gnu"
 version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index";
 checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
 
 [[package]]
+name = "windows_x86_64_gnu"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index";
+checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd"
+
+[[package]]
 name = "windows_x86_64_gnullvm"
 version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index";
 checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
 
 [[package]]
+name = "windows_x86_64_gnullvm"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index";
+checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e"
+
+[[package]]
 name = "windows_x86_64_msvc"
 version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index";
 checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
 
 [[package]]
+name = "windows_x86_64_msvc"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index";
+checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04"
+
+[[package]]
 name = "winnow"
-version = "0.5.19"
+version = "0.5.24"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "829846f3e3db426d4cee4510841b71a8e58aa2a76b1132579487ae430ccd9c7b"
+checksum = "0383266b19108dfc6314a56047aa545a1b4d1be60e799b4dbdd407b56402704b"
 dependencies = [
  "memchr",
 ]
@@ -3008,7 +3087,7 @@
 checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1"
 dependencies = [
  "cfg-if",
- "windows-sys",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/obs-service-cargo_vendor-0.8.15/Cargo.toml 
new/obs-service-cargo_vendor-0.8.18/Cargo.toml
--- old/obs-service-cargo_vendor-0.8.15/Cargo.toml      2023-11-24 
12:57:59.000000000 +0100
+++ new/obs-service-cargo_vendor-0.8.18/Cargo.toml      2023-12-05 
23:09:28.000000000 +0100
@@ -12,7 +12,7 @@
 resolver = "2"
 
 [workspace.package]
-version = "0.8.15"
+version = "0.8.18"
 description = "OBS Source Service and utilities for Rust software packaging."
 authors = [
   "Soc Virnyl Estela <socvirnyl.est...@uncomfyhalomacro.pl>",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/obs-service-cargo_vendor-0.8.15/cargo/Cargo.toml 
new/obs-service-cargo_vendor-0.8.18/cargo/Cargo.toml
--- old/obs-service-cargo_vendor-0.8.15/cargo/Cargo.toml        2023-11-24 
12:57:59.000000000 +0100
+++ new/obs-service-cargo_vendor-0.8.18/cargo/Cargo.toml        2023-12-05 
23:09:28.000000000 +0100
@@ -24,6 +24,7 @@
 toml = "~0.7.6"
 xz2 = "^0.1.7"
 zstd = { version = "~0.12.4", features = ["pkg-config", "zstdmt"] }
+bzip2 = { version = "~0.4" }
 
 [lints]
 workspace = true
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/obs-service-cargo_vendor-0.8.15/cargo/src/bin/cargo_vendor.rs 
new/obs-service-cargo_vendor-0.8.18/cargo/src/bin/cargo_vendor.rs
--- old/obs-service-cargo_vendor-0.8.15/cargo/src/bin/cargo_vendor.rs   
2023-11-24 12:57:59.000000000 +0100
+++ new/obs-service-cargo_vendor-0.8.18/cargo/src/bin/cargo_vendor.rs   
2023-12-05 23:09:28.000000000 +0100
@@ -33,6 +33,7 @@
         Ok(hasterminfodb) => hasterminfodb.get::<cap::MaxColors>().is_some(),
         Err(_) => false,
     };
+
     let to_color = matches!(std::io::stdout().is_terminal(), true if {
         let coloroption = &args.color;
         match coloroption {
@@ -78,11 +79,8 @@
 "#
     );
 
-    match args.src.run_vendor(&args) {
-        Ok(_) => Ok(()),
-        Err(err) => {
-            error!("{}", err);
-            Err(err.into())
-        }
-    }
+    Ok(args.src.run_vendor(&args).map_err(|err| {
+        error!("{}", err);
+        err
+    })?)
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/obs-service-cargo_vendor-0.8.15/cargo/src/cli.rs 
new/obs-service-cargo_vendor-0.8.18/cargo/src/cli.rs
--- old/obs-service-cargo_vendor-0.8.15/cargo/src/cli.rs        2023-11-24 
12:57:59.000000000 +0100
+++ new/obs-service-cargo_vendor-0.8.18/cargo/src/cli.rs        2023-12-05 
23:09:28.000000000 +0100
@@ -82,6 +82,7 @@
     Xz,
     #[default]
     Zst,
+    Bz2,
 }
 
 #[derive(Debug)]
@@ -121,6 +122,7 @@
             Compression::Gz => "gz",
             Compression::Xz => "xz",
             Compression::Zst => "zst",
+            Compression::Bz2 => "bz2",
         };
         write!(f, "{}", msg)
     }
@@ -152,6 +154,7 @@
         Compression::Gz => utils::decompress::targz(outdir, src),
         Compression::Xz => utils::decompress::tarxz(outdir, src),
         Compression::Zst => utils::decompress::tarzst(outdir, src),
+        Compression::Bz2 => utils::decompress::tarbz2(outdir, src),
     }
 }
 
@@ -317,12 +320,8 @@
             }
         };
         drop(newworkdir);
-        match tmpdir.close() {
-            Ok(_) => Ok(()),
-            Err(err) => Err(OBSCargoError::new(
-                OBSCargoErrorKind::VendorError,
-                err.to_string(),
-            )),
-        }
+        Ok(tmpdir
+            .close()
+            .map_err(|err| OBSCargoError::new(OBSCargoErrorKind::VendorError, 
err.to_string()))?)
     }
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/obs-service-cargo_vendor-0.8.15/cargo/src/utils/compress.rs 
new/obs-service-cargo_vendor-0.8.18/cargo/src/utils/compress.rs
--- old/obs-service-cargo_vendor-0.8.15/cargo/src/utils/compress.rs     
2023-11-24 12:57:59.000000000 +0100
+++ new/obs-service-cargo_vendor-0.8.18/cargo/src/utils/compress.rs     
2023-12-05 23:09:28.000000000 +0100
@@ -19,7 +19,7 @@
     builder: &mut tar::Builder<T>,
     prjdir: impl AsRef<Path>,
     archive_files: &[impl AsRef<Path>],
-) -> Result<(), io::Error> {
+) -> io::Result<()> {
     for f in archive_files.iter().map(|p| p.as_ref()) {
         // Each path is relative to prjdir. So we can split the
         // prjdir prefix to get the relative archive path.
@@ -61,15 +61,14 @@
         }
     }
 
-    builder.finish()?;
-    Ok(())
+    Ok(builder.finish()?)
 }
 
 pub fn targz(
     outpath: impl AsRef<Path>,
     prjdir: impl AsRef<Path>,
     archive_files: &[impl AsRef<Path>],
-) -> Result<(), io::Error> {
+) -> io::Result<()> {
     use flate2::write::GzEncoder;
     use flate2::Compression;
     let outtar = fs::File::create(outpath.as_ref())?;
@@ -82,7 +81,7 @@
     outpath: impl AsRef<Path>,
     prjdir: impl AsRef<Path>,
     archive_files: &[impl AsRef<Path>],
-) -> Result<(), io::Error> {
+) -> io::Result<()> {
     use zstd::Encoder;
     let outtar = fs::File::create(outpath.as_ref())?;
     let mut enc_builder = Encoder::new(outtar, 19)?;
@@ -98,7 +97,7 @@
     outpath: impl AsRef<Path>,
     prjdir: impl AsRef<Path>,
     archive_files: &[impl AsRef<Path>],
-) -> Result<(), io::Error> {
+) -> io::Result<()> {
     // Crc32 is simpler/faster and often hardware accelerated.
     use xz2::stream::Check::Crc32;
     use xz2::stream::MtStreamBuilder;
@@ -114,3 +113,16 @@
     let mut builder = tar::Builder::new(encoder);
     tar_builder(&mut builder, prjdir, archive_files)
 }
+
+pub fn tarbz2(
+    outpath: impl AsRef<Path>,
+    prjdir: impl AsRef<Path>,
+    archive_files: &[impl AsRef<Path>],
+) -> io::Result<()> {
+    use bzip2::write::BzEncoder;
+    use bzip2::Compression;
+    let outtar = fs::File::create(outpath.as_ref())?;
+    let encoder = BzEncoder::new(outtar, Compression::best());
+    let mut builder = tar::Builder::new(encoder);
+    tar_builder(&mut builder, prjdir, archive_files)
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/obs-service-cargo_vendor-0.8.15/cargo/src/utils/decompress.rs 
new/obs-service-cargo_vendor-0.8.18/cargo/src/utils/decompress.rs
--- old/obs-service-cargo_vendor-0.8.15/cargo/src/utils/decompress.rs   
2023-11-24 12:57:59.000000000 +0100
+++ new/obs-service-cargo_vendor-0.8.18/cargo/src/utils/decompress.rs   
2023-12-05 23:09:28.000000000 +0100
@@ -15,47 +15,67 @@
 #[allow(unused_imports)]
 use tracing::{debug, error, info, warn};
 
-pub fn targz(outdir: impl AsRef<Path>, srcpath: impl AsRef<Path>) -> 
Result<(), io::Error> {
+pub fn targz(outdir: impl AsRef<Path>, srcpath: impl AsRef<Path>) -> 
io::Result<()> {
     use flate2::bufread::GzDecoder;
     let mut src = io::BufReader::new(fs::File::open(srcpath.as_ref())?);
     src.seek(io::SeekFrom::Start(0))?;
     let enc = GzDecoder::new(src);
     let mut ar = tar::Archive::new(enc);
-    ar.unpack(outdir.as_ref())?;
-    debug!(
-        "Successfully decompressed Gz archive from {} to {}",
-        srcpath.as_ref().to_string_lossy(),
-        outdir.as_ref().to_string_lossy(),
-    );
-    Ok(())
+    Ok({
+        ar.unpack(outdir.as_ref())?;
+        debug!(
+            "Successfully decompressed Gz archive from {} to {}",
+            srcpath.as_ref().to_string_lossy(),
+            outdir.as_ref().to_string_lossy(),
+        );
+    })
 }
 
-pub fn tarzst(outdir: impl AsRef<Path>, srcpath: impl AsRef<Path>) -> 
Result<(), io::Error> {
+pub fn tarzst(outdir: impl AsRef<Path>, srcpath: impl AsRef<Path>) -> 
io::Result<()> {
     use zstd::Decoder;
     let mut src = io::BufReader::new(fs::File::open(srcpath.as_ref())?);
     src.seek(io::SeekFrom::Start(0))?;
     let enc = Decoder::new(src)?;
     let mut ar = tar::Archive::new(enc);
-    ar.unpack(outdir.as_ref())?;
-    debug!(
-        "Successfully decompressed Zst archive from {} to {}",
-        srcpath.as_ref().to_string_lossy(),
-        outdir.as_ref().to_string_lossy(),
-    );
-    Ok(())
+    Ok({
+        ar.unpack(outdir.as_ref())?;
+        debug!(
+            "Successfully decompressed Zst archive from {} to {}",
+            srcpath.as_ref().to_string_lossy(),
+            outdir.as_ref().to_string_lossy(),
+        );
+    })
 }
 
-pub fn tarxz(outdir: impl AsRef<Path>, srcpath: impl AsRef<Path>) -> 
Result<(), io::Error> {
+pub fn tarxz(outdir: impl AsRef<Path>, srcpath: impl AsRef<Path>) -> 
io::Result<()> {
     use xz2::read::XzDecoder;
     let mut src = io::BufReader::new(fs::File::open(srcpath.as_ref())?);
     src.seek(io::SeekFrom::Start(0))?;
     let enc = XzDecoder::new(src);
     let mut ar = tar::Archive::new(enc);
-    ar.unpack(outdir.as_ref())?;
-    debug!(
-        "Successfully decompressed Xz archive from {} to {}",
-        srcpath.as_ref().to_string_lossy(),
-        outdir.as_ref().to_string_lossy(),
-    );
-    Ok(())
+    Ok({
+        ar.unpack(outdir.as_ref())?;
+        debug!(
+            "Successfully decompressed Xz archive from {} to {}",
+            srcpath.as_ref().to_string_lossy(),
+            outdir.as_ref().to_string_lossy(),
+        );
+    })
+}
+
+pub fn tarbz2(outdir: impl AsRef<Path>, srcpath: impl AsRef<Path>) -> 
io::Result<()> {
+    use bzip2::bufread::MultiBzDecoder;
+
+    let mut src = io::BufReader::new(fs::File::open(srcpath.as_ref())?);
+    src.seek(io::SeekFrom::Start(0))?;
+    let enc = MultiBzDecoder::new(src);
+    let mut ar = tar::Archive::new(enc);
+    Ok({
+        ar.unpack(outdir.as_ref())?;
+        debug!(
+            "Successfully decompressed Bz2 archive from {} to {}",
+            srcpath.as_ref().to_string_lossy(),
+            outdir.as_ref().to_string_lossy(),
+        );
+    })
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/obs-service-cargo_vendor-0.8.15/cargo/src/utils/mod.rs 
new/obs-service-cargo_vendor-0.8.18/cargo/src/utils/mod.rs
--- old/obs-service-cargo_vendor-0.8.15/cargo/src/utils/mod.rs  2023-11-24 
12:57:59.000000000 +0100
+++ new/obs-service-cargo_vendor-0.8.18/cargo/src/utils/mod.rs  2023-12-05 
23:09:28.000000000 +0100
@@ -32,7 +32,7 @@
     debug!("Copying sources");
     debug!(?dst);
     fs::create_dir_all(dst)?;
-    for entry in fs::read_dir(src)? {
+    Ok(for entry in fs::read_dir(src)? {
         let entry = entry?;
         let ty = entry.file_type()?;
         trace!(?entry);
@@ -59,8 +59,7 @@
             trace!(?ty, "Is file?");
             fs::copy(&entry.path(), &mut dst.join(&entry.file_name()))?;
         };
-    }
-    Ok(())
+    })
 }
 
 pub fn process_src(args: &Opts, prjdir: &Path) -> Result<(), OBSCargoError> {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/obs-service-cargo_vendor-0.8.15/cargo/src/vendor.rs 
new/obs-service-cargo_vendor-0.8.18/cargo/src/vendor.rs
--- old/obs-service-cargo_vendor-0.8.15/cargo/src/vendor.rs     2023-11-24 
12:57:59.000000000 +0100
+++ new/obs-service-cargo_vendor-0.8.18/cargo/src/vendor.rs     2023-12-05 
23:09:28.000000000 +0100
@@ -35,15 +35,16 @@
         manifest_path.as_ref().into(),
     ];
 
-    cargo_command("update", &update_options, &prjdir).map_err(|e| {
-        error!(err = %e);
-        OBSCargoError::new(
-            OBSCargoErrorKind::VendorError,
-            "Unable to execute cargo".to_string(),
-        )
-    })?;
-    info!("⏫ Successfully ran cargo update");
-    Ok(())
+    Ok({
+        cargo_command("update", &update_options, &prjdir).map_err(|e| {
+            error!(err = %e);
+            OBSCargoError::new(
+                OBSCargoErrorKind::VendorError,
+                "Unable to execute cargo".to_string(),
+            )
+        })?;
+        info!("⏫ Successfully ran cargo update");
+    })
 }
 
 pub fn vendor(
@@ -91,7 +92,7 @@
         )
     })?;
     // Write the stdout which is used by the package later.
-    file_cargo_config
+    Ok(file_cargo_config
         .write_all(cargo_vendor_output.as_bytes())
         .map_err(|err| {
             error!(?err, "Failed to write to file for cargo config");
@@ -99,8 +100,7 @@
                 OBSCargoErrorKind::VendorError,
                 "failed to write to file for cargo config".to_string(),
             )
-        })?;
-    Ok(())
+        })?)
 }
 
 pub fn compress(
@@ -131,62 +131,79 @@
     };
 
     let mut vendor_out = outpath.as_ref().join(tar_name);
-    match compression {
-        Compression::Gz => {
-            vendor_out.set_extension("tar.gz");
-            if vendor_out.exists() {
-                warn!(
-                    replacing = ?vendor_out,
-                    "🔦 Compressed tarball for vendor exists AND will be 
replaced."
-                );
+    Ok({
+        match compression {
+            Compression::Gz => {
+                vendor_out.set_extension("tar.gz");
+                if vendor_out.exists() {
+                    warn!(
+                        replacing = ?vendor_out,
+                        "🔦 Compressed tarball for vendor exists AND will be 
replaced."
+                    );
+                }
+                compress::targz(&vendor_out, &prjdir, 
paths_to_archive).map_err(|err| {
+                    error!(?err, "gz compression failed");
+                    OBSCargoError::new(
+                        OBSCargoErrorKind::VendorCompressionFailed,
+                        "gz compression failed".to_string(),
+                    )
+                })?;
+                debug!("Compressed to {}", vendor_out.to_string_lossy());
             }
-            compress::targz(&vendor_out, &prjdir, 
paths_to_archive).map_err(|err| {
-                error!(?err, "gz compression failed");
-                OBSCargoError::new(
-                    OBSCargoErrorKind::VendorCompressionFailed,
-                    "gz compression failed".to_string(),
-                )
-            })?;
-            debug!("Compressed to {}", vendor_out.to_string_lossy());
-        }
-        Compression::Xz => {
-            vendor_out.set_extension("tar.xz");
-            if vendor_out.exists() {
-                warn!(
-                    replacing = ?vendor_out,
-                    "🔦 Compressed tarball for vendor exists AND will be 
replaced."
-                );
+            Compression::Xz => {
+                vendor_out.set_extension("tar.xz");
+                if vendor_out.exists() {
+                    warn!(
+                        replacing = ?vendor_out,
+                        "🔦 Compressed tarball for vendor exists AND will be 
replaced."
+                    );
+                }
+                compress::tarxz(&vendor_out, &prjdir, 
paths_to_archive).map_err(|err| {
+                    error!(?err, "xz compression failed");
+                    OBSCargoError::new(
+                        OBSCargoErrorKind::VendorCompressionFailed,
+                        "xz compression failed".to_string(),
+                    )
+                })?;
+                debug!("Compressed to {}", vendor_out.to_string_lossy());
             }
-            compress::tarxz(&vendor_out, &prjdir, 
paths_to_archive).map_err(|err| {
-                error!(?err, "xz compression failed");
-                OBSCargoError::new(
-                    OBSCargoErrorKind::VendorCompressionFailed,
-                    "xz compression failed".to_string(),
-                )
-            })?;
-            debug!("Compressed to {}", vendor_out.to_string_lossy());
-        }
-        Compression::Zst => {
-            vendor_out.set_extension("tar.zst");
-            if vendor_out.exists() {
-                warn!(
-                    replacing = ?vendor_out,
-                    "🔦 Compressed tarball for vendor exists AND will be 
replaced."
-                );
+            Compression::Zst => {
+                vendor_out.set_extension("tar.zst");
+                if vendor_out.exists() {
+                    warn!(
+                        replacing = ?vendor_out,
+                        "🔦 Compressed tarball for vendor exists AND will be 
replaced."
+                    );
+                }
+                compress::tarzst(&vendor_out, &prjdir, 
paths_to_archive).map_err(|err| {
+                    error!(?err, "zst compression failed");
+                    OBSCargoError::new(
+                        OBSCargoErrorKind::VendorCompressionFailed,
+                        "zst compression failed".to_string(),
+                    )
+                })?;
+                debug!("Compressed to {}", vendor_out.to_string_lossy());
+            }
+            Compression::Bz2 => {
+                vendor_out.set_extension("tar.bz2");
+                if vendor_out.exists() {
+                    warn!(
+                        replacing = ?vendor_out,
+                        "🔦 Compressed tarball for vendor exists AND will be 
replaced."
+                    );
+                }
+                compress::tarbz2(&vendor_out, &prjdir, 
paths_to_archive).map_err(|err| {
+                    error!(?err, "bz2 compression failed");
+                    OBSCargoError::new(
+                        OBSCargoErrorKind::VendorCompressionFailed,
+                        "bz2 compression failed".to_string(),
+                    )
+                })?;
+                debug!("Compressed to {}", vendor_out.to_string_lossy());
             }
-            compress::tarzst(&vendor_out, &prjdir, 
paths_to_archive).map_err(|err| {
-                error!(?err, "zst compression failed");
-                OBSCargoError::new(
-                    OBSCargoErrorKind::VendorCompressionFailed,
-                    "zst compression failed".to_string(),
-                )
-            })?;
-            debug!("Compressed to {}", vendor_out.to_string_lossy());
         }
-    };
-    debug!("Finished creating {} compressed tarball", compression);
-
-    Ok(())
+        debug!("Finished creating {} compressed tarball", compression);
+    })
 }
 
 pub fn is_workspace(src: &Path) -> Result<bool, OBSCargoError> {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/obs-service-cargo_vendor-0.8.15/runtests.sh 
new/obs-service-cargo_vendor-0.8.18/runtests.sh
--- old/obs-service-cargo_vendor-0.8.15/runtests.sh     2023-11-24 
12:57:59.000000000 +0100
+++ new/obs-service-cargo_vendor-0.8.18/runtests.sh     2023-12-05 
23:09:28.000000000 +0100
@@ -13,7 +13,7 @@
 
 echo "# Downloading VBox-Starter"
 
-curl -LJ0 
"https://gitlab.com/catsfood/VBox-Starter/-/archive/v3.1.0/VBox-Starter-v3.1.0.tar.gz";
 --output-dir /tmp
+curl -LJ0 
"https://gitlab.com/catsfood/VBox-Starter/-/archive/v3.1.0/VBox-Starter-v3.1.0.tar.gz";
 --output /tmp/VBox-Starter-v3.1.0.tar.gz
 
 echo "# Generating tarball"
 "${SCRIPTPATH}"/target/release/cargo_vendor --src /tmp/bonk-0.3.2.tar.gz 
--outdir /tmp

++++++ vendor.tar.zst ++++++
Binary files /var/tmp/diff_new_pack.yaAGqT/_old and 
/var/tmp/diff_new_pack.yaAGqT/_new differ

Reply via email to