Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package zlib-rs for openSUSE:Factory checked in at 2026-09-17 15:19:30 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/zlib-rs (Old) and /work/SRC/openSUSE:Factory/.zlib-rs.new.383539 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "zlib-rs" Thu Sep 17 15:19:30 2026 rev:2 rq:1378280 version:0.6.8 Changes: -------- --- /work/SRC/openSUSE:Factory/zlib-rs/zlib-rs.changes 2026-08-04 21:38:29.904721777 +0200 +++ /work/SRC/openSUSE:Factory/.zlib-rs.new.383539/zlib-rs.changes 2026-09-17 15:20:43.464264096 +0200 @@ -1,0 +2,6 @@ +Wed Sep 16 07:27:31 UTC 2026 - Martin Pluskal <[email protected]> + +- Update to version 0.6.8: + * Add Deflate from config constructor + +------------------------------------------------------------------- Old: ---- zlib-rs-0.6.7.obscpio New: ---- zlib-rs-0.6.8.obscpio ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ zlib-rs.spec ++++++ --- /var/tmp/diff_new_pack.mfnjvz/_old 2026-09-17 15:20:44.719316733 +0200 +++ /var/tmp/diff_new_pack.mfnjvz/_new 2026-09-17 15:20:44.721316817 +0200 @@ -21,7 +21,7 @@ # so the library is libz_rs.so.1.3.0 with an soname of libz_rs.so.1. %define sover 1 Name: zlib-rs -Version: 0.6.7 +Version: 0.6.8 Release: 0 Summary: Memory-safe zlib implementation written in Rust License: Zlib ++++++ _service ++++++ --- /var/tmp/diff_new_pack.mfnjvz/_old 2026-09-17 15:20:44.773318998 +0200 +++ /var/tmp/diff_new_pack.mfnjvz/_new 2026-09-17 15:20:44.776319124 +0200 @@ -2,8 +2,8 @@ <service name="obs_scm" mode="manual"> <param name="url">https://github.com/trifectatechfoundation/zlib-rs.git</param> <param name="scm">git</param> - <param name="revision">v0.6.7</param> - <param name="version">0.6.7</param> + <param name="revision">v0.6.8</param> + <param name="version">0.6.8</param> <param name="changesgenerate">disable</param> <!-- 21 MB of the 24 MB checkout is the Silesia benchmark corpus, used only by "cargo bench", plus the fuzzing harness and CI config. None of it is ++++++ vendor.tar.zst ++++++ ++++ 54778 lines of diff (skipped) ++++++ zlib-rs-0.6.7.obscpio -> zlib-rs-0.6.8.obscpio ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/zlib-rs-0.6.7/.github/workflows/checks.yaml new/zlib-rs-0.6.8/.github/workflows/checks.yaml --- old/zlib-rs-0.6.7/.github/workflows/checks.yaml 2026-08-03 15:05:30.000000000 +0200 +++ new/zlib-rs-0.6.8/.github/workflows/checks.yaml 2026-09-15 15:07:40.000000000 +0200 @@ -42,6 +42,8 @@ CARGO_TARGET_WASM32_WASIP1_RUNNER: "wasmtime --dir /home/runner/work/zlib-rs/zlib-rs/test-libz-rs-sys --dir /tmp/" CARGO_TARGET_WASM32_WASIP1_RUSTFLAGS: "-Ctarget-feature=+simd128" BINDGEN_EXTRA_CLANG_ARGS_wasm32_wasip1: "--sysroot=/tmp/wasi-sdk-24.0-x86_64-linux/share/wasi-sysroot" + RUSTFLAGS: ${{ matrix.rust == 'nightly' && matrix.target == 'x86_64-unknown-linux-gnu' && '-Zsanitizer=address' || '' }} + RUSTDOCFLAGS: ${{ matrix.rust == 'nightly' && matrix.target == 'x86_64-unknown-linux-gnu' && '-Zsanitizer=address' || '' }} strategy: matrix: include: @@ -113,9 +115,6 @@ os: windows-11-arm codecov: false - env: - RUSTFLAGS: ${{ matrix.rust == 'nightly' && matrix.target == 'x86_64-unknown-linux-gnu' && '-Zsanitizer=address' || '' }} - steps: - name: Checkout sources uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 @@ -463,7 +462,7 @@ run: | rustup toolchain install nightly cargo +nightly build --release --target ${{matrix.target}} --no-default-features --features=gz,gzprintf,c-allocator - cc -o example example.c target/${{matrix.target}}/release/deps/libz_rs.so + cc -o example example.c target/${{matrix.target}}/release/libz_rs.so ./example valgrind --track-origins=yes --error-exitcode=1 ./example - name: "cdylib: example.c with our .h files" @@ -471,7 +470,10 @@ LD_LIBRARY_PATH: "target/${{matrix.target}}/release/deps" working-directory: libz-rs-sys-cdylib run: | - cc -o example example.c target/${{matrix.target}}/release/deps/libz_rs.so -I../libz-rs-sys/include/ + ls target/${{matrix.target}}/release + echo "----" + ls target/${{matrix.target}}/release/deps + cc -o example example.c target/${{matrix.target}}/release/libz_rs.so -I../libz-rs-sys/include/ ./example valgrind --track-origins=yes --error-exitcode=1 ./example diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/zlib-rs-0.6.7/Cargo.lock new/zlib-rs-0.6.8/Cargo.lock --- old/zlib-rs-0.6.7/Cargo.lock 2026-08-03 15:05:30.000000000 +0200 +++ new/zlib-rs-0.6.8/Cargo.lock 2026-09-15 15:07:40.000000000 +0200 @@ -114,7 +114,7 @@ [[package]] name = "libz-rs-sys" -version = "0.6.7" +version = "0.6.8" dependencies = [ "libc", "zlib-rs", @@ -256,7 +256,7 @@ [[package]] name = "test-libz-rs-sys" -version = "0.6.7" +version = "0.6.8" dependencies = [ "crc32fast", "libc", @@ -378,7 +378,7 @@ [[package]] name = "zlib-rs" -version = "0.6.7" +version = "0.6.8" dependencies = [ "arbitrary", "crc32fast", diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/zlib-rs-0.6.7/Cargo.toml new/zlib-rs-0.6.8/Cargo.toml --- old/zlib-rs-0.6.7/Cargo.toml 2026-08-03 15:05:30.000000000 +0200 +++ new/zlib-rs-0.6.8/Cargo.toml 2026-09-15 15:07:40.000000000 +0200 @@ -14,7 +14,7 @@ # Global settings for our crates [workspace.package] -version = "0.6.7" +version = "0.6.8" edition = "2021" license = "Zlib" repository = "https://github.com/trifectatechfoundation/zlib-rs" @@ -35,5 +35,5 @@ arbitrary = { version = "1.0" } quickcheck = { version = "1.0.3", default-features = false, features = [] } -libz-rs-sys = { version = "0.6.7", path = "./libz-rs-sys", default-features = false } -zlib-rs = { version = "0.6.7", path = "./zlib-rs", default-features = false } +libz-rs-sys = { version = "0.6.8", path = "./libz-rs-sys", default-features = false } +zlib-rs = { version = "0.6.8", path = "./zlib-rs", default-features = false } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/zlib-rs-0.6.7/libz-rs-sys/include/zlib.h new/zlib-rs-0.6.8/libz-rs-sys/include/zlib.h --- old/zlib-rs-0.6.7/libz-rs-sys/include/zlib.h 2026-08-03 15:05:30.000000000 +0200 +++ new/zlib-rs-0.6.8/libz-rs-sys/include/zlib.h 2026-09-15 15:07:40.000000000 +0200 @@ -45,7 +45,7 @@ extern "C" { #endif -#define ZLIB_VERSION "1.3.2.zlib-rs-0.6.7" +#define ZLIB_VERSION "1.3.2.zlib-rs-0.6.8" #define ZLIB_VERNUM 0x131f #define ZLIB_VER_MAJOR 1 #define ZLIB_VER_MINOR 3 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/zlib-rs-0.6.7/libz-rs-sys/src/lib.rs new/zlib-rs-0.6.8/libz-rs-sys/src/lib.rs --- old/zlib-rs-0.6.7/libz-rs-sys/src/lib.rs 2026-08-03 15:05:30.000000000 +0200 +++ new/zlib-rs-0.6.8/libz-rs-sys/src/lib.rs 2026-09-15 15:07:40.000000000 +0200 @@ -1892,7 +1892,7 @@ /// /// ``` /// use core::mem::MaybeUninit; -/// use libz_rs_sys::{z_stream, deflateInit_, zlibVersion, Z_OK}; +/// use libz_rs_sys::{z_stream, deflateInit_, deflateEnd, zlibVersion, Z_OK}; /// /// // the zalloc and zfree fields are initialized as zero/NULL. /// // `deflateInit_` will set a default allocation and deallocation function. @@ -1911,6 +1911,8 @@ /// // the stream is now fully initialized. Prefer `assume_init_mut` over /// // `assume_init` so the stream does not get moved. /// let strm = unsafe { strm.assume_init_mut() }; +/// +/// assert_eq!(unsafe { deflateEnd(strm) }, Z_OK); /// ``` #[cfg_attr(feature = "export-symbols", export_name = prefix!(deflateInit_))] pub unsafe extern "C" fn deflateInit_( @@ -1974,7 +1976,7 @@ /// /// ``` /// use core::mem::MaybeUninit; -/// use libz_rs_sys::{z_stream, deflateInit2_, zlibVersion, Z_OK}; +/// use libz_rs_sys::{z_stream, deflateInit2_, deflateEnd, zlibVersion, Z_OK}; /// /// // the zalloc and zfree fields are initialized as zero/NULL. /// // `deflateInit_` will set a default allocation and deallocation function. @@ -1997,6 +1999,8 @@ /// // the stream is now fully initialized. Prefer `assume_init_mut` over /// // `assume_init` so the stream does not get moved. /// let strm = unsafe { strm.assume_init_mut() }; +/// +/// assert_eq!(unsafe { deflateEnd(strm) }, Z_OK); /// ``` #[cfg_attr(feature = "export-symbols", export_name = prefix!(deflateInit2_))] pub unsafe extern "C" fn deflateInit2_( diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/zlib-rs-0.6.7/libz-rs-sys-cdylib/Cargo.lock new/zlib-rs-0.6.8/libz-rs-sys-cdylib/Cargo.lock --- old/zlib-rs-0.6.7/libz-rs-sys-cdylib/Cargo.lock 2026-08-03 15:05:30.000000000 +0200 +++ new/zlib-rs-0.6.8/libz-rs-sys-cdylib/Cargo.lock 2026-09-15 15:07:40.000000000 +0200 @@ -10,7 +10,7 @@ [[package]] name = "libz-rs-sys" -version = "0.6.7" +version = "0.6.8" dependencies = [ "libc", "zlib-rs", @@ -18,7 +18,7 @@ [[package]] name = "libz-rs-sys-cdylib" -version = "0.6.7" +version = "0.6.8" dependencies = [ "libz-rs-sys", "zlib-rs", @@ -26,4 +26,4 @@ [[package]] name = "zlib-rs" -version = "0.6.7" +version = "0.6.8" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/zlib-rs-0.6.7/libz-rs-sys-cdylib/Cargo.toml new/zlib-rs-0.6.8/libz-rs-sys-cdylib/Cargo.toml --- old/zlib-rs-0.6.7/libz-rs-sys-cdylib/Cargo.toml 2026-08-03 15:05:30.000000000 +0200 +++ new/zlib-rs-0.6.8/libz-rs-sys-cdylib/Cargo.toml 2026-09-15 15:07:40.000000000 +0200 @@ -1,6 +1,6 @@ [package] name = "libz-rs-sys-cdylib" -version = "0.6.7" +version = "0.6.8" edition = "2021" readme = "README.md" license = "Zlib" @@ -43,8 +43,8 @@ __internal-test = [] [dependencies] -libz-rs-sys = { version = "0.6.7", path = "../libz-rs-sys", default-features = false, features = ["export-symbols"] } -zlib-rs = { version = "0.6.7", path = "../zlib-rs", default-features = false } +libz-rs-sys = { version = "0.6.8", path = "../libz-rs-sys", default-features = false, features = ["export-symbols"] } +zlib-rs = { version = "0.6.8", path = "../zlib-rs", default-features = false } [package.metadata.capi.library] version = "1.3.0" # the zlib api version we match diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/zlib-rs-0.6.7/zlib-rs/src/adler32/neon.rs new/zlib-rs-0.6.8/zlib-rs/src/adler32/neon.rs --- old/zlib-rs-0.6.7/zlib-rs/src/adler32/neon.rs 2026-08-03 15:05:30.000000000 +0200 +++ new/zlib-rs-0.6.8/zlib-rs/src/adler32/neon.rs 2026-09-15 15:07:40.000000000 +0200 @@ -121,6 +121,7 @@ #[target_feature(enable = "neon")] #[inline] unsafe fn swap_64bit_lanes_when_be(v: uint8x16_t) -> uint8x16_t { + #[rustfmt::skip] crate::cfg_select! { target_endian = "big" => { vextq_u8(v, v, 8) } target_endian = "little" => { v } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/zlib-rs-0.6.7/zlib-rs/src/crc32/acle.rs new/zlib-rs-0.6.8/zlib-rs/src/crc32/acle.rs --- old/zlib-rs-0.6.7/zlib-rs/src/crc32/acle.rs 2026-08-03 15:05:30.000000000 +0200 +++ new/zlib-rs-0.6.8/zlib-rs/src/crc32/acle.rs 2026-09-15 15:07:40.000000000 +0200 @@ -99,10 +99,10 @@ crate::cfg_select! { miri => { - use core::arch::aarch64::{__crc32b, __crc32h, __crc32d, __crc32w}; + use core::arch::aarch64::{__crc32b, __crc32d, __crc32h, __crc32w}; } _ => { - use asm::{__crc32b, __crc32h, __crc32d, __crc32w}; + use asm::{__crc32b, __crc32d, __crc32h, __crc32w}; } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/zlib-rs-0.6.7/zlib-rs/src/crc32/loongarch.rs new/zlib-rs-0.6.8/zlib-rs/src/crc32/loongarch.rs --- old/zlib-rs-0.6.7/zlib-rs/src/crc32/loongarch.rs 2026-08-03 15:05:30.000000000 +0200 +++ new/zlib-rs-0.6.8/zlib-rs/src/crc32/loongarch.rs 2026-09-15 15:07:40.000000000 +0200 @@ -80,10 +80,10 @@ crate::cfg_select! { miri => { - use core::arch::loongarch64::{crc_w_b_w, crc_w_h_w, crc_w_w_w, crc_w_d_w}; + use core::arch::loongarch64::{crc_w_b_w, crc_w_d_w, crc_w_h_w, crc_w_w_w}; } _ => { - use asm::{crc_w_b_w, crc_w_h_w, crc_w_w_w, crc_w_d_w}; + use asm::{crc_w_b_w, crc_w_d_w, crc_w_h_w, crc_w_w_w}; } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/zlib-rs-0.6.7/zlib-rs/src/deflate/algorithm/fast.rs new/zlib-rs-0.6.8/zlib-rs/src/deflate/algorithm/fast.rs --- old/zlib-rs-0.6.7/zlib-rs/src/deflate/algorithm/fast.rs 2026-08-03 15:05:30.000000000 +0200 +++ new/zlib-rs-0.6.8/zlib-rs/src/deflate/algorithm/fast.rs 2026-09-15 15:07:40.000000000 +0200 @@ -30,8 +30,8 @@ // Insert the string window[strstart .. strstart+2] in the // dictionary, and set hash_head to the head of the hash chain: - let lc: u8; // Literal character to output if there is no match. - if state.lookahead >= WANT_MIN_MATCH { + // Literal character to output if there is no match. + let lc = if state.lookahead >= WANT_MIN_MATCH { let val = u32::from_le_bytes( state.window.filled()[state.strstart..state.strstart + 4] .try_into() @@ -82,10 +82,10 @@ continue; } } - lc = val as u8; + val as u8 } else { - lc = state.window.filled()[state.strstart]; - } + state.window.filled()[state.strstart] + }; /* No match, output a literal byte */ let bflush = state.tally_lit(lc); state.lookahead -= 1; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/zlib-rs-0.6.7/zlib-rs/src/deflate/algorithm/quick.rs new/zlib-rs-0.6.8/zlib-rs/src/deflate/algorithm/quick.rs --- old/zlib-rs-0.6.7/zlib-rs/src/deflate/algorithm/quick.rs 2026-08-03 15:05:30.000000000 +0200 +++ new/zlib-rs-0.6.8/zlib-rs/src/deflate/algorithm/quick.rs 2026-09-15 15:07:40.000000000 +0200 @@ -93,8 +93,7 @@ } } - let lc: u8; - if state.lookahead >= WANT_MIN_MATCH { + let lc = if state.lookahead >= WANT_MIN_MATCH { macro_rules! first_four_bytes { ($slice:expr, $offset:expr) => { u32::from_le_bytes($slice[$offset..$offset + 4].try_into().unwrap()) @@ -137,10 +136,10 @@ } } } - lc = str_val as u8; + str_val as u8 } else { - lc = state.window.filled()[state.strstart]; - } + state.window.filled()[state.strstart] + }; state.bit_writer.emit_lit(StaticTreeDesc::L.static_tree, lc); state.strstart += 1; state.lookahead -= 1; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/zlib-rs-0.6.7/zlib-rs/src/deflate.rs new/zlib-rs-0.6.8/zlib-rs/src/deflate.rs --- old/zlib-rs-0.6.7/zlib-rs/src/deflate.rs 2026-08-03 15:05:30.000000000 +0200 +++ new/zlib-rs-0.6.8/zlib-rs/src/deflate.rs 2026-09-15 15:07:40.000000000 +0200 @@ -2019,9 +2019,9 @@ // number of elements with bit length too large let mut overflow: i32 = 0; - for h in heap.heap_max + 1..HEAP_SIZE { - let n = heap.heap[h] as usize; - let mut bits = tree[tree[n].dad() as usize].len() + 1; + for &n in &heap.heap[heap.heap_max + 1..HEAP_SIZE] { + let n = n as usize; + let mut bits = tree[usize::from(tree[n].dad())].len() + 1; if bits > max_length { bits = max_length; @@ -2036,7 +2036,7 @@ continue; } - bl_count[bits as usize] += 1; + bl_count[usize::from(bits)] += 1; let mut xbits = 0; if n >= base { xbits = extra[n - base] as usize; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/zlib-rs-0.6.7/zlib-rs/src/inflate.rs new/zlib-rs-0.6.8/zlib-rs/src/inflate.rs --- old/zlib-rs-0.6.7/zlib-rs/src/inflate.rs 2026-08-03 15:05:30.000000000 +0200 +++ new/zlib-rs-0.6.8/zlib-rs/src/inflate.rs 2026-09-15 15:07:40.000000000 +0200 @@ -733,7 +733,7 @@ self.back += extra; } - traceln!("inflate: length {}", state.length); + traceln!("inflate: length {}", self.length); self.was = self.length; @@ -818,7 +818,7 @@ ); } - traceln!("inflate: distance {}", state.offset); + traceln!("inflate: distance {}", self.offset); break 'top Mode::Match; } @@ -1291,9 +1291,8 @@ } need_bits!(self, 3); - // self.last = self.bit_reader.bits(1) != 0; - self.flags - .update(Flags::IS_LAST_BLOCK, self.bit_reader.bits(1) != 0); + let last = self.bit_reader.bits(1) != 0; + self.flags.update(Flags::IS_LAST_BLOCK, last); self.bit_reader.drop_bits(1); match self.bit_reader.bits(2) { @@ -1363,7 +1362,7 @@ } self.length = hold as usize & 0xFFFF; - traceln!("inflate: stored length {}", state.length); + traceln!("inflate: stored length {}", self.length); self.bit_reader.init_bits(); @@ -1453,7 +1452,7 @@ self.back += extra; } - traceln!("inflate: length {}", state.length); + traceln!("inflate: length {}", self.length); self.was = self.length; @@ -1534,7 +1533,7 @@ break 'label self.bad("invalid distance code too far back\0"); } - traceln!("inflate: distance {}", state.offset); + traceln!("inflate: distance {}", self.offset); break 'blk Mode::Match; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/zlib-rs-0.6.7/zlib-rs/src/stable.rs new/zlib-rs-0.6.8/zlib-rs/src/stable.rs --- old/zlib-rs-0.6.7/zlib-rs/src/stable.rs 2026-08-03 15:05:30.000000000 +0200 +++ new/zlib-rs-0.6.8/zlib-rs/src/stable.rs 2026-09-15 15:07:40.000000000 +0200 @@ -305,6 +305,16 @@ ..DeflateConfig::default() }; + Self::new_with_config(config) + } + + /// Create a new instance with the provided [`DeflateConfig`]. + /// + /// In most cases it is recommended to use the standard [`Deflate::new`] constructor unless + /// tweaking `mem_level` or `strategy` is desired. + /// + /// This allocates, so should be done with care. + pub fn new_with_config(config: DeflateConfig) -> Self { Self { inner: crate::deflate::DeflateStream::new(config), total_in: 0, ++++++ zlib-rs.obsinfo ++++++ --- /var/tmp/diff_new_pack.mfnjvz/_old 2026-09-17 15:20:47.496433204 +0200 +++ /var/tmp/diff_new_pack.mfnjvz/_new 2026-09-17 15:20:47.501433414 +0200 @@ -1,5 +1,5 @@ name: zlib-rs -version: 0.6.7 -mtime: 1785762330 -commit: 734b2c1f42e2efaafe04cbab9c61cfaa5dead9ad +version: 0.6.8 +mtime: 1789477660 +commit: 0254e07204884bfc902d6ebb68c8b703d0ea49cf
