Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package libmseed for openSUSE:Factory 
checked in at 2025-10-31 16:28:33
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libmseed (Old)
 and      /work/SRC/openSUSE:Factory/.libmseed.new.1980 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "libmseed"

Fri Oct 31 16:28:33 2025 rev:8 rq:1314650 version:3.1.11

Changes:
--------
--- /work/SRC/openSUSE:Factory/libmseed/libmseed.changes        2025-10-27 
14:42:29.765620196 +0100
+++ /work/SRC/openSUSE:Factory/.libmseed.new.1980/libmseed.changes      
2025-10-31 16:29:25.913387250 +0100
@@ -1,0 +2,9 @@
+Fri Oct 31 08:14:47 UTC 2025 - Andreas Stieger <[email protected]>
+
+- update to 3.1.11:
+  * Fix byte swapping in ms3_detect() for v3 records for big-endian
+    systems
+  * Add MSF_SKIPADJACENTDUPLICATES to skip adjacent duplicate
+    records while populating a MS3TraceList
+
+-------------------------------------------------------------------

Old:
----
  libmseed-3.1.10.tar.gz

New:
----
  libmseed-3.1.11.tar.gz

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

Other differences:
------------------
++++++ libmseed.spec ++++++
--- /var/tmp/diff_new_pack.pwjbuJ/_old  2025-10-31 16:29:26.457410365 +0100
+++ /var/tmp/diff_new_pack.pwjbuJ/_new  2025-10-31 16:29:26.461410535 +0100
@@ -18,7 +18,7 @@
 
 %define sover 3
 Name:           libmseed
-Version:        3.1.10
+Version:        3.1.11
 Release:        0
 Summary:        MiniSEED data format library
 License:        Apache-2.0

++++++ libmseed-3.1.10.tar.gz -> libmseed-3.1.11.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libmseed-3.1.10/ChangeLog 
new/libmseed-3.1.11/ChangeLog
--- old/libmseed-3.1.10/ChangeLog       2025-10-25 20:01:56.000000000 +0200
+++ new/libmseed-3.1.11/ChangeLog       2025-10-31 01:05:30.000000000 +0100
@@ -1,3 +1,8 @@
+2025.303: v3.1.11
+  - Fix byte swapping in ms3_detect() for v3 records for big-endian systems.
+  - Add MSF_SKIPADJACENTDUPLICATES to skip adjacent duplicate records while
+  populating a MS3TraceList.
+
 2025.298: v3.1.10
   - Add MSF_SPLITISVERSION flag to control using the splitversion value as the
   version instead the record publication version for mstl3_addmsr() and 
variants.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libmseed-3.1.10/fileutils.c 
new/libmseed-3.1.11/fileutils.c
--- old/libmseed-3.1.10/fileutils.c     2025-10-25 20:01:56.000000000 +0200
+++ new/libmseed-3.1.11/fileutils.c     2025-10-31 01:05:30.000000000 +0100
@@ -664,6 +664,7 @@
  * @param[in] flags
  * @parblock
  *  - \c ::MSF_RECORDLIST : Build a ::MS3RecordList for each ::MS3TraceSeg
+ *  - \c ::MSF_SKIPADJACENTDUPLICATES : Skip adjacent duplicate records
  *  - Flags supported by msr3_parse()
  *  - Flags supported by mstl3_addmsr()
  * @endparblock
@@ -688,6 +689,7 @@
   MS3RecordPtr *recordptr = NULL;
   uint32_t dataoffset;
   uint32_t datasize;
+  uint32_t previous_crc = 0;
   int retcode;
 
   if (!ppmstl)
@@ -712,6 +714,18 @@
   while ((retcode = ms3_readmsr_selection (&msfp, &msr, mspath, flags, 
selections, verbose)) ==
          MS_NOERROR)
   {
+    if (flags & MSF_SKIPADJACENTDUPLICATES)
+    {
+      uint32_t crc = ms_crc32c ((const uint8_t *)msr->record, msr->reclen, 0);
+
+      if (crc == previous_crc)
+      {
+        continue;
+      }
+
+      previous_crc = crc;
+    }
+
     seg = mstl3_addmsr_recordptr (*ppmstl, msr, (flags & MSF_RECORDLIST) ? 
&recordptr : NULL,
                                   splitversion, 1, flags, tolerance);
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libmseed-3.1.10/libmseed.h 
new/libmseed-3.1.11/libmseed.h
--- old/libmseed-3.1.10/libmseed.h      2025-10-25 20:01:56.000000000 +0200
+++ new/libmseed-3.1.11/libmseed.h      2025-10-31 01:05:30.000000000 +0100
@@ -29,8 +29,8 @@
 {
 #endif
 
-#define LIBMSEED_VERSION "3.1.10"   //!< Library version
-#define LIBMSEED_RELEASE "2025.298" //!< Library release date
+#define LIBMSEED_VERSION "3.1.11"   //!< Library version
+#define LIBMSEED_RELEASE "2025.303" //!< Library release date
 
 /** @defgroup io-functions File and URL I/O */
 /** @defgroup miniseed-record Record Handling */
@@ -1561,6 +1561,7 @@
   0x0400 //!< [TraceList] Store update time (as nstime_t) at 
::MS3TraceSeg.prvtptr
 #define MSF_SPLITISVERSION \
   0x0800 //!< [TraceList] Use the splitversion value as version instead of 
record version
+#define MSF_SKIPADJACENTDUPLICATES 0x1000 //!< [TraceList] Skip adjacent 
duplicate records
 /** @} */
 
 #ifdef __cplusplus
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libmseed-3.1.10/parseutils.c 
new/libmseed-3.1.11/parseutils.c
--- old/libmseed-3.1.10/parseutils.c    2025-10-25 20:01:56.000000000 +0200
+++ new/libmseed-3.1.11/parseutils.c    2025-10-31 01:05:30.000000000 +0100
@@ -203,10 +203,19 @@
 
     *formatversion = 3;
 
+    /* Check to see if byte swapping is needed, v3 is little-endian */
+    swapflag = (ms_bigendianhost()) ? 1 : 0;
+
     memcpy (&sidlength, pMS3FSDH_SIDLENGTH (record), sizeof (uint8_t));
     memcpy (&extralength, pMS3FSDH_EXTRALENGTH (record), sizeof (uint16_t));
     memcpy (&datalength, pMS3FSDH_DATALENGTH (record), sizeof (uint32_t));
 
+    if (swapflag)
+    {
+      ms_gswap2 (&extralength);
+      ms_gswap4 (&datalength);
+    }
+
     reclen = MS3FSDH_LENGTH /* Length of fixed portion of header */
              + sidlength    /* Length of source identifier */
              + extralength  /* Length of extra headers */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libmseed-3.1.10/test/test-msrutils.c 
new/libmseed-3.1.11/test/test-msrutils.c
--- old/libmseed-3.1.10/test/test-msrutils.c    2025-10-25 20:01:56.000000000 
+0200
+++ new/libmseed-3.1.11/test/test-msrutils.c    2025-10-31 01:05:30.000000000 
+0100
@@ -1,8 +1,6 @@
 #include <tau/tau.h>
 #include <libmseed.h>
 
-#include "testdata.h"
-
 TEST (msr3, utils)
 {
   MS3Record *msr = NULL;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libmseed-3.1.10/test/test-repack.c 
new/libmseed-3.1.11/test/test-repack.c
--- old/libmseed-3.1.10/test/test-repack.c      2025-10-25 20:01:56.000000000 
+0200
+++ new/libmseed-3.1.11/test/test-repack.c      2025-10-31 01:05:30.000000000 
+0100
@@ -1,8 +1,6 @@
 #include <libmseed.h>
 #include <tau/tau.h>
 
-#include "testdata.h"
-
 extern int cmpfiles (char *fileA, char *fileB);
 
 /* Write test output files.  Reference files are at "data/reference-<name>" */

Reply via email to