Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package libm4ri for openSUSE:Factory checked 
in at 2026-01-23 17:32:33
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libm4ri (Old)
 and      /work/SRC/openSUSE:Factory/.libm4ri.new.1928 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "libm4ri"

Fri Jan 23 17:32:33 2026 rev:13 rq:1328754 version:20260122

Changes:
--------
--- /work/SRC/openSUSE:Factory/libm4ri/libm4ri.changes  2025-12-08 
11:56:37.308192839 +0100
+++ /work/SRC/openSUSE:Factory/.libm4ri.new.1928/libm4ri.changes        
2026-01-23 17:32:56.549629724 +0100
@@ -1,0 +2,6 @@
+Thu Jan 22 20:00:28 UTC 2026 - Jan Engelhardt <[email protected]>
+
+- Update to release 20260122
+  * Add functions `mzd_to_png_fh` and `mzd_from_png_fh`
+
+-------------------------------------------------------------------

Old:
----
  m4ri-20251207.tar.gz

New:
----
  m4ri-20260122.tar.gz

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

Other differences:
------------------
++++++ libm4ri.spec ++++++
--- /var/tmp/diff_new_pack.56XwGJ/_old  2026-01-23 17:32:57.117652949 +0100
+++ /var/tmp/diff_new_pack.56XwGJ/_new  2026-01-23 17:32:57.121653113 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package libm4ri
 #
-# Copyright (c) 2025 SUSE LLC and contributors
+# Copyright (c) 2026 SUSE LLC and contributors
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -17,8 +17,8 @@
 
 
 Name:           libm4ri
-Version:        20251207
-%define lname  libm4ri1
+Version:        20260122
+%define lname  libm4ri2
 Release:        0
 Summary:        Library for linear arithmetic over GF(2)
 License:        GPL-2.0-or-later

++++++ _scmsync.obsinfo ++++++
--- /var/tmp/diff_new_pack.56XwGJ/_old  2026-01-23 17:32:57.169655075 +0100
+++ /var/tmp/diff_new_pack.56XwGJ/_new  2026-01-23 17:32:57.177655402 +0100
@@ -1,5 +1,5 @@
-mtime: 1765112615
-commit: d27fb83bb5a5883b5068163ce078898dcbe1c5667a9b504c878282fcbfd05576
+mtime: 1769124080
+commit: 652629be683827bcc0a393ca1861290c78aa00f2e398e59a833f2639a3882aed
 url: https://src.opensuse.org/jengelh/libm4ri
 revision: master
 

++++++ build.specials.obscpio ++++++

++++++ build.specials.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/.gitignore new/.gitignore
--- old/.gitignore      1970-01-01 01:00:00.000000000 +0100
+++ new/.gitignore      2026-01-23 00:22:26.000000000 +0100
@@ -0,0 +1 @@
+.osc

++++++ m4ri-20251207.tar.gz -> m4ri-20260122.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/m4ri-20251207/bench/bench_elimination.c 
new/m4ri-20260122/bench/bench_elimination.c
--- old/m4ri-20251207/bench/bench_elimination.c 2025-12-07 11:21:29.000000000 
+0100
+++ new/m4ri-20260122/bench/bench_elimination.c 2026-01-22 20:46:19.000000000 
+0100
@@ -2,7 +2,7 @@
 
 #include "benchmarking.h"
 #include "cpucycles.h"
-#include <m4ri/config.h>
+#include <m4ri/m4ri_config.h>
 #include <m4ri/m4ri.h>
 
 #ifdef HAVE_LIBPAPI
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/m4ri-20251207/bench/bench_elimination_sparse.c 
new/m4ri-20260122/bench/bench_elimination_sparse.c
--- old/m4ri-20251207/bench/bench_elimination_sparse.c  2025-12-07 
11:21:29.000000000 +0100
+++ new/m4ri-20260122/bench/bench_elimination_sparse.c  2026-01-22 
20:46:19.000000000 +0100
@@ -2,7 +2,7 @@
 
 #include "benchmarking.h"
 #include "cpucycles.h"
-#include <m4ri/config.h>
+#include <m4ri/m4ri_config.h>
 #include <m4ri/m4ri.h>
 
 struct elim_sparse_params {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/m4ri-20251207/bench/bench_invert.c 
new/m4ri-20260122/bench/bench_invert.c
--- old/m4ri-20251207/bench/bench_invert.c      2025-12-07 11:21:29.000000000 
+0100
+++ new/m4ri-20260122/bench/bench_invert.c      2026-01-22 20:46:19.000000000 
+0100
@@ -2,7 +2,7 @@
 
 #include "benchmarking.h"
 #include "cpucycles.h"
-#include <m4ri/config.h>
+#include <m4ri/m4ri_config.h>
 #include <m4ri/m4ri.h>
 
 struct inv_params {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/m4ri-20251207/bench/bench_m4rm.c 
new/m4ri-20260122/bench/bench_m4rm.c
--- old/m4ri-20251207/bench/bench_m4rm.c        2025-12-07 11:21:29.000000000 
+0100
+++ new/m4ri-20260122/bench/bench_m4rm.c        2026-01-22 20:46:19.000000000 
+0100
@@ -2,7 +2,7 @@
 
 #include "benchmarking.h"
 #include "cpucycles.h"
-#include <m4ri/config.h>
+#include <m4ri/m4ri_config.h>
 #include <m4ri/m4ri.h>
 
 #ifdef HAVE_LIBPAPI
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/m4ri-20251207/bench/bench_multiplication.c 
new/m4ri-20260122/bench/bench_multiplication.c
--- old/m4ri-20251207/bench/bench_multiplication.c      2025-12-07 
11:21:29.000000000 +0100
+++ new/m4ri-20260122/bench/bench_multiplication.c      2026-01-22 
20:46:19.000000000 +0100
@@ -2,7 +2,7 @@
 
 #include "benchmarking.h"
 #include "cpucycles.h"
-#include <m4ri/config.h>
+#include <m4ri/m4ri_config.h>
 #include <m4ri/m4ri.h>
 
 #ifdef HAVE_LIBPAPI
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/m4ri-20251207/bench/bench_mzd.c 
new/m4ri-20260122/bench/bench_mzd.c
--- old/m4ri-20251207/bench/bench_mzd.c 2025-12-07 11:21:29.000000000 +0100
+++ new/m4ri-20260122/bench/bench_mzd.c 2026-01-22 20:46:19.000000000 +0100
@@ -25,7 +25,7 @@
 #define __STDC_FORMAT_MACROS 1
 #endif
 
-#include <m4ri/config.h>
+#include <m4ri/m4ri_config.h>
 
 #ifdef HAVE_LIBPAPI
 #define _GNU_SOURCE
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/m4ri-20251207/bench/bench_ple.c 
new/m4ri-20260122/bench/bench_ple.c
--- old/m4ri-20251207/bench/bench_ple.c 2025-12-07 11:21:29.000000000 +0100
+++ new/m4ri-20260122/bench/bench_ple.c 2026-01-22 20:46:19.000000000 +0100
@@ -2,7 +2,7 @@
 
 #include "benchmarking.h"
 #include "cpucycles.h"
-#include <m4ri/config.h>
+#include <m4ri/m4ri_config.h>
 #include <m4ri/m4ri.h>
 
 struct pluq_params {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/m4ri-20251207/bench/bench_rank.c 
new/m4ri-20260122/bench/bench_rank.c
--- old/m4ri-20251207/bench/bench_rank.c        2025-12-07 11:21:29.000000000 
+0100
+++ new/m4ri-20260122/bench/bench_rank.c        2026-01-22 20:46:19.000000000 
+0100
@@ -2,7 +2,7 @@
 
 #include "benchmarking.h"
 #include "cpucycles.h"
-#include <m4ri/config.h>
+#include <m4ri/m4ri_config.h>
 #include <m4ri/m4ri.h>
 
 #ifdef HAVE_LIBPAPI
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/m4ri-20251207/bench/bench_trsm.c 
new/m4ri-20260122/bench/bench_trsm.c
--- old/m4ri-20251207/bench/bench_trsm.c        2025-12-07 11:21:29.000000000 
+0100
+++ new/m4ri-20260122/bench/bench_trsm.c        2026-01-22 20:46:19.000000000 
+0100
@@ -2,7 +2,7 @@
 
 #include "benchmarking.h"
 #include "cpucycles.h"
-#include <m4ri/config.h>
+#include <m4ri/m4ri_config.h>
 #include <m4ri/m4ri.h>
 
 struct trsm_params {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/m4ri-20251207/bench/benchmarking.c 
new/m4ri-20260122/bench/benchmarking.c
--- old/m4ri-20251207/bench/benchmarking.c      2025-12-07 11:21:29.000000000 
+0100
+++ new/m4ri-20260122/bench/benchmarking.c      2026-01-22 20:46:19.000000000 
+0100
@@ -52,7 +52,7 @@
  * The last three lines can be suppressed by passing the option -q (quiet).
  */
 
-#include <m4ri/config.h>
+#include <m4ri/m4ri_config.h>
 
 #ifdef HAVE_LIBPAPI
 #define _GNU_SOURCE
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/m4ri-20251207/configure new/m4ri-20260122/configure
--- old/m4ri-20251207/configure 2025-12-07 11:21:43.000000000 +0100
+++ new/m4ri-20260122/configure 2026-01-22 20:46:33.000000000 +0100
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.71 for m4ri 20251207.
+# Generated by GNU Autoconf 2.71 for m4ri 20260122.
 #
 #
 # Copyright (C) 1992-1996, 1998-2017, 2020-2021 Free Software Foundation,
@@ -618,8 +618,8 @@
 # Identity of this package.
 PACKAGE_NAME='m4ri'
 PACKAGE_TARNAME='m4ri'
-PACKAGE_VERSION='20251207'
-PACKAGE_STRING='m4ri 20251207'
+PACKAGE_VERSION='20260122'
+PACKAGE_STRING='m4ri 20260122'
 PACKAGE_BUGREPORT=''
 PACKAGE_URL=''
 
@@ -1398,7 +1398,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures m4ri 20251207 to adapt to many kinds of systems.
+\`configure' configures m4ri 20260122 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1469,7 +1469,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of m4ri 20251207:";;
+     short | recursive ) echo "Configuration of m4ri 20260122:";;
    esac
   cat <<\_ACEOF
 
@@ -1602,7 +1602,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-m4ri configure 20251207
+m4ri configure 20260122
 generated by GNU Autoconf 2.71
 
 Copyright (C) 2021 Free Software Foundation, Inc.
@@ -1863,7 +1863,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by m4ri $as_me 20251207, which was
+It was created by m4ri $as_me 20260122, which was
 generated by GNU Autoconf 2.71.  Invocation command line was
 
   $ $0$ac_configure_args_raw
@@ -2620,7 +2620,7 @@
 
 
 # See 
http://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html
-LT_VERSION=1:1:0
+LT_VERSION=2:1:0
 
 
 
@@ -3215,7 +3215,7 @@
 
 # Define the identity of the package.
  PACKAGE='m4ri'
- VERSION='20251207'
+ VERSION='20260122'
 
 
 printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h
@@ -15508,7 +15508,7 @@
 printf "%s\n" "#define M4RI_BUILDING_M4RI 1" >>confdefs.h
 
 
-RELEASE="20251207"
+RELEASE="20260122"
 
 
 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} 
sets \$(MAKE)" >&5
@@ -16077,7 +16077,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by m4ri $as_me 20251207, which was
+This file was extended by m4ri $as_me 20260122, which was
 generated by GNU Autoconf 2.71.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -16145,7 +16145,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config='$ac_cs_config_escaped'
 ac_cs_version="\\
-m4ri config.status 20251207
+m4ri config.status 20260122
 configured by $0, generated by GNU Autoconf 2.71,
   with options \\"\$ac_cs_config\\"
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/m4ri-20251207/configure.ac 
new/m4ri-20260122/configure.ac
--- old/m4ri-20251207/configure.ac      2025-12-07 11:21:29.000000000 +0100
+++ new/m4ri-20260122/configure.ac      2026-01-22 20:46:19.000000000 +0100
@@ -1,7 +1,7 @@
-AC_INIT([m4ri],[20251207])
+AC_INIT([m4ri],[20260122])
 
 # See 
http://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html
-LT_VERSION=1:1:0
+LT_VERSION=2:1:0
 AC_SUBST(LT_VERSION)
 
 AC_CANONICAL_HOST
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/m4ri-20251207/m4ri/Doxyfile 
new/m4ri-20260122/m4ri/Doxyfile
--- old/m4ri-20251207/m4ri/Doxyfile     2025-12-07 11:21:29.000000000 +0100
+++ new/m4ri-20260122/m4ri/Doxyfile     2026-01-22 20:46:19.000000000 +0100
@@ -38,7 +38,7 @@
 # could be handy for archiving the generated documentation or if some version
 # control system is used.
 
-PROJECT_NUMBER         = 20251207
+PROJECT_NUMBER         = 20260122
 
 # Using the PROJECT_BRIEF tag one can provide an optional one line description
 # for a project that appears at the top of each page and should give viewer a
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/m4ri-20251207/m4ri/io.c new/m4ri-20260122/m4ri/io.c
--- old/m4ri-20251207/m4ri/io.c 2025-12-07 11:21:29.000000000 +0100
+++ new/m4ri-20260122/m4ri/io.c 2026-01-22 20:46:19.000000000 +0100
@@ -70,10 +70,6 @@
 #define PNGSIGSIZE 8
 
 mzd_t *mzd_from_png(const char *fn, int verbose) {
-  int retval = 0;
-  mzd_t *A   = NULL;
-  png_byte pngsig[PNGSIGSIZE];
-
   FILE *fh = fopen(fn, "rb");
 
   if (!fh) {
@@ -81,24 +77,31 @@
     return NULL;
   };
 
+  mzd_t *A = mzd_from_png_fh(fh, verbose);
+
+  fclose(fh);
+  return A;
+}
+
+mzd_t *mzd_from_png_fh(FILE *fh, int verbose) {
+  mzd_t *A = NULL;
+  png_byte pngsig[PNGSIGSIZE];
+
   if (fread((char *)pngsig, PNGSIGSIZE, 1, fh) != 1) {
-    if (verbose) printf("Could not read file '%s'\n", fn);
-    retval = 1;
-    goto from_png_close_fh;
+    if (verbose) printf("Could not read PNG file\n");
+    return NULL;
   }
 
   if (png_sig_cmp(pngsig, 0, PNGSIGSIZE) != 0) {
-    if (verbose) printf("'%s' is not a PNG file.\n", fn);
-    retval = 2;
-    goto from_png_close_fh;
+    if (verbose) printf("Input is not a PNG file.\n");
+    return NULL;
   }
 
   png_structp png_ptr = png_create_read_struct(PNG_LIBPNG_VER_STRING, NULL, 
NULL, NULL);
 
   if (!png_ptr) {
     if (verbose) printf("failed to initialise PNG read struct.\n");
-    retval = 3;
-    goto from_png_close_fh;
+    return NULL;
   }
   png_set_user_limits(png_ptr, 0x7fffffffL, 0x7fffffffL);
 
@@ -106,8 +109,8 @@
 
   if (!info_ptr) {
     if (verbose) printf("failed to initialise PNG info struct\n");
-    retval = 3;
-    goto from_png_destroy_read_struct;
+    png_destroy_read_struct(&png_ptr, &info_ptr, (png_infopp)0);
+    return NULL;
   }
 
   png_init_io(png_ptr, fh);
@@ -124,7 +127,8 @@
 
   if (interlace_type != PNG_INTERLACE_NONE) {
     if (verbose) printf("interlaced images not supported\n");
-    goto from_png_destroy_read_struct;
+    png_destroy_read_struct(&png_ptr, &info_ptr, (png_infopp)0);
+    return NULL;
   };
 
   if (verbose)
@@ -135,7 +139,8 @@
 
   if (color_type != 0 && color_type != 3) {
     if (verbose) printf("only graycscale and palette colors are supported.\n");
-    goto from_png_destroy_read_struct;
+    png_destroy_read_struct(&png_ptr, &info_ptr, (png_infopp)0);
+    return NULL;
   }
 
   A                      = mzd_init(m, n);
@@ -175,18 +180,9 @@
   m4ri_mm_free(row);
   png_read_end(png_ptr, NULL);
 
-from_png_destroy_read_struct:
   png_destroy_read_struct(&png_ptr, &info_ptr, (png_infopp)0);
 
-from_png_close_fh:
-  fclose(fh);
-
-  if (retval != 0 && A) {
-    mzd_free(A);
-    return NULL;
-  } else {
-    return A;
-  }
+  return A;
 }
 
 int mzd_to_png(const mzd_t *A, const char *fn, int compression_level, const 
char *comment,
@@ -198,11 +194,20 @@
     return 1;
   }
 
+  int r = mzd_to_png_fh(A, fh, compression_level, comment, verbose);
+
+  fclose(fh);
+
+  return r;
+}
+
+int mzd_to_png_fh(const mzd_t *A, FILE *fh, int compression_level, const char 
*comment,
+                  int verbose) {
+
   png_structp png_ptr = png_create_write_struct(PNG_LIBPNG_VER_STRING, NULL, 
NULL, NULL);
 
   if (!png_ptr) {
     if (verbose) printf("failed to initialise PNG write struct.\n");
-    fclose(fh);
     return 3;
   }
   png_set_user_limits(png_ptr, 0x7fffffffL, 0x7fffffffL);
@@ -212,14 +217,12 @@
   if (!info_ptr) {
     if (verbose) printf("failed to initialise PNG info struct\n");
     png_destroy_write_struct(&png_ptr, &info_ptr);
-    fclose(fh);
     return 3;
   }
 
   if (setjmp(png_jmpbuf(png_ptr))) {
     if (verbose) printf("error writing PNG file\n");
     png_destroy_write_struct(&png_ptr, &info_ptr);
-    fclose(fh);
     return 1;
   }
 
@@ -288,7 +291,6 @@
 
   png_write_end(png_ptr, info_ptr);
   png_destroy_write_struct(&png_ptr, &info_ptr);
-  fclose(fh);
   return 0;
 }
 
@@ -300,7 +302,7 @@
   FILE *fh   = fopen(fn, "r");
 
   rci_t m, n;
-  int p       = 0;
+  int p           = 0;
   int64_t nonzero = 0;
 
   if (!fh) {
@@ -321,7 +323,8 @@
   }
 
   if (verbose)
-    printf("reading %d x %d matrix with at most %" PRId64 " non-zero entries 
(density at most: %6.5f)\n",
+    printf("reading %d x %d matrix with at most %" PRId64
+           " non-zero entries (density at most: %6.5f)\n",
            m, n, nonzero, ((double)nonzero) / ((double)m * n));
 
   A = mzd_init(m, n);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/m4ri-20251207/m4ri/io.h new/m4ri-20260122/m4ri/io.h
--- old/m4ri-20251207/m4ri/io.h 2025-12-07 11:21:29.000000000 +0100
+++ new/m4ri-20260122/m4ri/io.h 2026-01-22 20:46:19.000000000 +0100
@@ -91,7 +91,7 @@
 #if __M4RI_HAVE_LIBPNG
 
 /**
- * \brief Read matrix from 1-bit PNG image.
+ * \brief Read matrix from a 1-bit PNG image.
  *
  * This function returns a matrix on success and NULL otherwise. 1-bit
  * Grayscale and 1-bit Palette images are supported.
@@ -103,7 +103,19 @@
 mzd_t *mzd_from_png(const char *fn, int verbose);
 
 /**
- * \brief Write matrix to 1-bit PNG image.
+ * \brief Read matrix from a 1-bit PNG image.
+ *
+ * This function returns a matrix on success and NULL otherwise. 1-bit
+ * Grayscale and 1-bit Palette images are supported.
+ *
+ * \param fh a file handle
+ * \param verbose Print error message to stdout if != 0
+ */
+
+mzd_t *mzd_from_png_fh(FILE *fh, int verbose);
+
+/**
+ * \brief Write matrix to a 1-bit PNG image.
  *
  * This function returns zero on success and some value != 0
  * otherwise. The parameter compression_level takes a zlib compression
@@ -129,6 +141,21 @@
 int mzd_to_png(const mzd_t *A, const char *fn, int compression_level, const 
char *comment,
                int verbose);
 
+/**
+ * \brief Write matrix to a 1-bit PNG image.
+ *
+ * See mzd_to_png for details.
+ *
+ * \param A Matrix
+ * \param fh a file handle (must have write permission)
+ * \param compression_level Zlib compression level (see above)
+ * \param comment Optional comment (may be NULL)
+ * \param verbose Print error message to stdout if != 0
+ */
+
+int mzd_to_png_fh(const mzd_t *A, FILE *fh, int compression_level, const char 
*comment,
+                  int verbose);
+
 #endif  //__M4RI_HAVE_LIBPNG
 
 /**
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/m4ri-20251207/tests/test_djb.c 
new/m4ri-20260122/tests/test_djb.c
--- old/m4ri-20251207/tests/test_djb.c  2025-12-07 11:21:29.000000000 +0100
+++ new/m4ri-20260122/tests/test_djb.c  2026-01-22 20:46:19.000000000 +0100
@@ -1,5 +1,5 @@
 #include "testing.h"
-#include <m4ri/config.h>
+#include <m4ri/m4ri_config.h>
 #include <m4ri/djb.h>
 #include <m4ri/m4ri.h>
 #include <stdlib.h>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/m4ri-20251207/tests/test_elimination.c 
new/m4ri-20260122/tests/test_elimination.c
--- old/m4ri-20251207/tests/test_elimination.c  2025-12-07 11:21:29.000000000 
+0100
+++ new/m4ri-20260122/tests/test_elimination.c  2026-01-22 20:46:19.000000000 
+0100
@@ -1,5 +1,5 @@
 #include "testing.h"
-#include <m4ri/config.h>
+#include <m4ri/m4ri_config.h>
 #include <m4ri/m4ri.h>
 #include <stdlib.h>
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/m4ri-20251207/tests/test_invert.c 
new/m4ri-20260122/tests/test_invert.c
--- old/m4ri-20251207/tests/test_invert.c       2025-12-07 11:21:29.000000000 
+0100
+++ new/m4ri-20260122/tests/test_invert.c       2026-01-22 20:46:19.000000000 
+0100
@@ -1,5 +1,5 @@
 #include "testing.h"
-#include <m4ri/config.h>
+#include <m4ri/m4ri_config.h>
 #include <m4ri/m4ri.h>
 #include <stdlib.h>
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/m4ri-20251207/tests/test_kernel.c 
new/m4ri-20260122/tests/test_kernel.c
--- old/m4ri-20251207/tests/test_kernel.c       2025-12-07 11:21:29.000000000 
+0100
+++ new/m4ri-20260122/tests/test_kernel.c       2026-01-22 20:46:19.000000000 
+0100
@@ -19,7 +19,7 @@
  ********************************************************************/
 
 #include "testing.h"
-#include <m4ri/config.h>
+#include <m4ri/m4ri_config.h>
 #include <m4ri/m4ri.h>
 #include <stdlib.h>
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/m4ri-20251207/tests/test_misc.c 
new/m4ri-20260122/tests/test_misc.c
--- old/m4ri-20251207/tests/test_misc.c 2025-12-07 11:21:29.000000000 +0100
+++ new/m4ri-20260122/tests/test_misc.c 2026-01-22 20:46:19.000000000 +0100
@@ -57,7 +57,15 @@
 
   ret += mzd_cmp(A, B);
 
+  FILE *fh = tmpfile();
+  mzd_to_png_fh(A, fh, 9, NULL, 0);
+  rewind(fh);
+  mzd_t *C = mzd_from_png_fh(fh, 0);
+
+  ret += mzd_cmp(A, C);
+
   remove(fn);
+  mzd_free(C);
   mzd_free(B);
   mzd_free(A);
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/m4ri-20251207/tests/test_multiplication.c 
new/m4ri-20260122/tests/test_multiplication.c
--- old/m4ri-20251207/tests/test_multiplication.c       2025-12-07 
11:21:29.000000000 +0100
+++ new/m4ri-20260122/tests/test_multiplication.c       2026-01-22 
20:46:19.000000000 +0100
@@ -1,5 +1,5 @@
 #include "testing.h"
-#include <m4ri/config.h>
+#include <m4ri/m4ri_config.h>
 #include <m4ri/m4ri.h>
 #include <stdlib.h>
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/m4ri-20251207/tests/test_ple.c 
new/m4ri-20260122/tests/test_ple.c
--- old/m4ri-20251207/tests/test_ple.c  2025-12-07 11:21:29.000000000 +0100
+++ new/m4ri-20260122/tests/test_ple.c  2026-01-22 20:46:19.000000000 +0100
@@ -1,5 +1,5 @@
 #include "testing.h"
-#include <m4ri/config.h>
+#include <m4ri/m4ri_config.h>
 #include <m4ri/m4ri.h>
 #include <stdlib.h>
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/m4ri-20251207/tests/test_pluq.c 
new/m4ri-20260122/tests/test_pluq.c
--- old/m4ri-20251207/tests/test_pluq.c 2025-12-07 11:21:29.000000000 +0100
+++ new/m4ri-20260122/tests/test_pluq.c 2026-01-22 20:46:19.000000000 +0100
@@ -1,5 +1,5 @@
 #include "testing.h"
-#include <m4ri/config.h>
+#include <m4ri/m4ri_config.h>
 #include <m4ri/m4ri.h>
 #include <stdlib.h>
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/m4ri-20251207/tests/test_random.c 
new/m4ri-20260122/tests/test_random.c
--- old/m4ri-20251207/tests/test_random.c       2025-12-07 11:21:29.000000000 
+0100
+++ new/m4ri-20260122/tests/test_random.c       2026-01-22 20:46:19.000000000 
+0100
@@ -23,7 +23,7 @@
  */
 
 #include "testing.h"
-#include <m4ri/config.h>
+#include <m4ri/m4ri_config.h>
 #include <m4ri/m4ri.h>
 #include <stdio.h>
 #include <stdlib.h>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/m4ri-20251207/tests/test_smallops.c 
new/m4ri-20260122/tests/test_smallops.c
--- old/m4ri-20251207/tests/test_smallops.c     2025-12-07 11:21:29.000000000 
+0100
+++ new/m4ri-20260122/tests/test_smallops.c     2026-01-22 20:46:19.000000000 
+0100
@@ -1,6 +1,6 @@
 #include "testing.h"
 #include <inttypes.h>
-#include <m4ri/config.h>
+#include <m4ri/m4ri_config.h>
 #include <m4ri/m4ri.h>
 #include <stdlib.h>
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/m4ri-20251207/tests/test_solve.c 
new/m4ri-20260122/tests/test_solve.c
--- old/m4ri-20251207/tests/test_solve.c        2025-12-07 11:21:29.000000000 
+0100
+++ new/m4ri-20260122/tests/test_solve.c        2026-01-22 20:46:19.000000000 
+0100
@@ -2,7 +2,7 @@
 #define _GNU_SOURCE
 #endif
 #include "testing.h"
-#include <m4ri/config.h>
+#include <m4ri/m4ri_config.h>
 #include <m4ri/m4ri.h>
 #include <stdlib.h>
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/m4ri-20251207/tests/test_trsm.c 
new/m4ri-20260122/tests/test_trsm.c
--- old/m4ri-20251207/tests/test_trsm.c 2025-12-07 11:21:29.000000000 +0100
+++ new/m4ri-20260122/tests/test_trsm.c 2026-01-22 20:46:19.000000000 +0100
@@ -1,5 +1,5 @@
 #include "testing.h"
-#include <m4ri/config.h>
+#include <m4ri/m4ri_config.h>
 #include <m4ri/m4ri.h>
 #include <stdlib.h>
 

Reply via email to