Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package man for openSUSE:Factory checked in at 2026-09-22 15:48:43 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/man (Old) and /work/SRC/openSUSE:Factory/.man.new.383539 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "man" Tue Sep 22 15:48:43 2026 rev:113 rq:1378823 version:2.13.1 Changes: -------- --- /work/SRC/openSUSE:Factory/man/man.changes 2026-05-29 18:04:10.475079912 +0200 +++ /work/SRC/openSUSE:Factory/.man.new.383539/man.changes 2026-09-22 15:49:12.705223925 +0200 @@ -1,0 +2,5 @@ +Fri Sep 18 13:13:07 UTC 2026 - Dr. Werner Fink <[email protected]> + +- Enable multi compression with libzio + +------------------------------------------------------------------- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ man.spec ++++++ --- /var/tmp/diff_new_pack.K1eeok/_old 2026-09-22 15:49:13.595261165 +0200 +++ /var/tmp/diff_new_pack.K1eeok/_new 2026-09-22 15:49:13.596261207 +0200 @@ -64,6 +64,7 @@ # PATCH-FEATURE-OPENSUSE -- Propose to read man pages online Patch12: man-propose-online.patch BuildRequires: automake +BuildRequires: bzip2 BuildRequires: flex BuildRequires: gdbm-devel BuildRequires: gettext-runtime @@ -71,12 +72,17 @@ BuildRequires: groff BuildRequires: less BuildRequires: libalternatives-devel +BuildRequires: libbz2-devel BuildRequires: libpipeline-devel >= 1.5.0 -BuildRequires: libzio-devel >= 1.12 +BuildRequires: libzio-devel >= 1.17 +BuildRequires: libzstd-devel BuildRequires: lzip +BuildRequires: lzlib-devel BuildRequires: man-pages BuildRequires: pkgconfig BuildRequires: po4a +BuildRequires: xz +BuildRequires: xz-devel BuildRequires: zlib-devel BuildRequires: zstd BuildRequires: pkgconfig(systemd) ++++++ man-db-2.7.1-zio.dif ++++++ --- /var/tmp/diff_new_pack.K1eeok/_old 2026-09-22 15:49:13.668264220 +0200 +++ /var/tmp/diff_new_pack.K1eeok/_new 2026-09-22 15:49:13.671264345 +0200 @@ -23,7 +23,7 @@ #undef HAVE_LIB_BCRYPT --- configure.ac -+++ configure.ac 2026-05-28 08:23:35.150041138 +0000 ++++ configure.ac @@ -35,6 +35,18 @@ MAN_ARG_DEVICE MAN_ARG_DB MAN_ARG_CONFIG_FILE @@ -43,7 +43,7 @@ MAN_ARG_AUTOMATIC_CREATE MAN_ARG_AUTOMATIC_UPDATE MAN_ARG_CATS -@@ -374,6 +386,46 @@ AC_DEFINE_UNQUOTED([PROG_UNXZ], ["$unxz" +@@ -374,6 +386,52 @@ AC_DEFINE_UNQUOTED([PROG_UNXZ], ["$unxz"], [Program to use as unxz.]) AC_DEFINE_UNQUOTED([PROG_UNLZIP], ["$unlzip"], [Program to use as unlzip.]) AC_DEFINE_UNQUOTED([PROG_UNZSTD], ["$unzstd"], [Program to use as unzstd.]) MAN_COMPRESS_LIB([z], [gzopen]) @@ -85,14 +85,20 @@ + AC_CHECK_LIB($lib, ZSTD_createCCtx, [LIBS="$LIBS -Wl,--no-as-needed -l$lib"; break]) + done + ]) ++ AC_CHECK_HEADER(lzlib.h, [ ++ for lib in lz ++ do ++ AC_CHECK_LIB($lib, LZ_decompress_read, [LIBS="$LIBS -Wl,--no-as-needed -l$lib"; break]) ++ done ++ ], [], [#include <stdint.h>]) + fi +fi dnl To add more decompressors just follow the scheme above. # Check for various header files and associated libraries. --- src/decompress.c -+++ src/decompress.c 2026-05-28 08:26:49.822545458 +0000 -@@ -27,6 +27,7 @@ ++++ src/decompress.c +@@ -26,6 +26,7 @@ #include <assert.h> #include <fcntl.h> #include <stdbool.h> @@ -100,7 +106,7 @@ #include <stdio.h> #include <stdlib.h> #include <string.h> -@@ -40,12 +41,17 @@ +@@ -39,12 +40,17 @@ #include "pipeline.h" @@ -118,7 +124,7 @@ #include "manconfig.h" #include "compression.h" -@@ -100,6 +106,7 @@ static decompress *decompress_new_inproc +@@ -99,6 +105,7 @@ static decompress *decompress_new_inprocess (char *buf, size_t len) return d; } @@ -126,7 +132,7 @@ static void decompress_zlib (void *data MAYBE_UNUSED) { gzFile zlibfile; -@@ -127,6 +134,7 @@ static void decompress_zlib (void *data +@@ -126,6 +133,7 @@ static void decompress_zlib (void *data MAYBE_UNUSED) gzclose (zlibfile); return; } @@ -134,7 +140,7 @@ /* The largest number of uncompressed bytes we're prepared to read into * memory. (We actually allow at most one fewer byte than this, for easy -@@ -146,7 +154,11 @@ static void decompress_zlib (void *data +@@ -145,7 +153,11 @@ static void decompress_zlib (void *data MAYBE_UNUSED) static decompress *decompress_try_zlib (const char *filename) { @@ -146,7 +152,7 @@ /* We only ever call this from the parent process (and don't * currently use threads), and this lets us skip per-file memory * allocation. -@@ -154,18 +166,33 @@ static decompress *decompress_try_zlib ( +@@ -153,18 +165,33 @@ static decompress *decompress_try_zlib (const char *filename) static char buffer[MAX_INPROCESS]; int len = 0; @@ -180,7 +186,7 @@ return NULL; } else if (r == 0) break; -@@ -173,7 +200,11 @@ static decompress *decompress_try_zlib ( +@@ -172,7 +199,11 @@ static decompress *decompress_try_zlib (const char *filename) len += r; } @@ -192,18 +198,18 @@ if (len >= MAX_INPROCESS) return NULL; /* Copy input data so that we don't have potential data corruption -@@ -189,33 +220,108 @@ static decompress *decompress_try_zlib ( +@@ -188,33 +219,109 @@ static decompress *decompress_try_zlib (const char *filename) # define OPEN_FLAGS_UNUSED MAYBE_UNUSED #endif /* HAVE_LIBZ */ +#ifdef HAVE_ZIO +static void decompress_zio (void *data) +{ -+ char what[2] = { 'n', '\0' }; ++ char what[2] = {'n', '\0'}; + FILE *file; + + if (data) -+ what[0] = (char)(uintptr_t)data; ++ what[0] = (char) (uintptr_t) data; + + file = fdzopen (dup (fileno (stdin)), "r", what); + if (!file) @@ -236,9 +242,10 @@ + {"bz2", 3, 'b' }, + {"xz", 2, 'x' }, + {"lzma", 4, 'l' }, -+ {"zst", 3, 's' }, ++ {"lz", 2, 'L' }, ++ {"zst", 3, 's' }, + {"zstd", 4, 's' }, -+ {NULL, 0, '\0'}, ++ {NULL, 0, '\0'}, + }; + struct l_s *l; + @@ -283,13 +290,14 @@ if (d) return d; } +- +# ifdef HAVE_ZIO + char *name = NULL; - ++ + /* informational only; no shell quoting concerns */ + name = appendstr (NULL, "zio<", filename, (void *) 0); + cmd = pipecmd_new_function (name, &decompress_zio, NULL, -+ (void *)(uintptr_t)decomp_type); ++ (void *) (uintptr_t) decomp_type); +# else cmd = pipecmd_new_function ("zcat", &decompress_zlib, NULL, NULL); @@ -302,7 +310,7 @@ goto got_pipeline; } #endif /* HAVE_LIBZ */ -@@ -236,9 +342,9 @@ decompress *decompress_open (const char +@@ -235,9 +342,9 @@ decompress *decompress_open (const char *filename, int flags OPEN_FLAGS_UNUSED) } } @@ -314,7 +322,7 @@ if (ext) { cmd = pipecmd_new_argstr (PROG_GUNZIP); pipecmd_pre_exec (cmd, sandbox_load, sandbox_free, sandbox); -@@ -263,7 +369,11 @@ decompress *decompress_fdopen (int fd) +@@ -262,7 +369,11 @@ decompress *decompress_fdopen (int fd) #endif /* HAVE_LIBZ */ #ifdef HAVE_LIBZ @@ -326,7 +334,7 @@ pipecmd_pre_exec (cmd, sandbox_load, sandbox_free, sandbox); p = pipeline_new_commands (cmd, nullptr); #else /* HAVE_LIBZ */ -@@ -313,7 +423,7 @@ void decompress_inprocess_replace (decom +@@ -312,7 +423,7 @@ void decompress_inprocess_replace (decompress *d, char *buf, size_t len) void decompress_start (decompress *d) {
