Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package laszip for openSUSE:Factory checked 
in at 2026-07-29 19:01:01
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/laszip (Old)
 and      /work/SRC/openSUSE:Factory/.laszip.new.2004 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "laszip"

Wed Jul 29 19:01:01 2026 rev:8 rq:1368326 version:3.5.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/laszip/laszip.changes    2020-05-19 
14:47:57.736003413 +0200
+++ /work/SRC/openSUSE:Factory/.laszip.new.2004/laszip.changes  2026-07-29 
19:02:40.816743377 +0200
@@ -1,0 +2,30 @@
+Wed Jul 29 08:12:53 UTC 2026 - Martin Pluskal <[email protected]>
+
+- Update to 3.5.0:
+  * Support for LAS 1.5
+  * Rename get/set_classification_uni to get/set_classification
+  * Merge from LAStools: LASMessage concept, warning and error
+    handling fixes
+  * Fix an integer overflow of number_of_point_records in
+    laszip_update_inventory
+  * Fix fseek with gcc for las/lax files larger than 2 GB
+  * Fix memory leaks in lasreaditemcompressed_v3 and laszip_dll
+  * Recover from bit-corrupted LAZ files whose chunk table is zeroed
+  * The shared library keeps soname 8; comparing exported symbols
+    against 3.4.3 shows 878 against 710, with four internal
+    LASindex/LASinterval symbols withdrawn and no consumer of them
+    in the distribution
+- Switch to the git archive: upstream stopped attaching a release
+  tarball, and its detached sha256sum, after 3.4.3
+- Add a %check: upstream ships no test suite, so exercise the
+  deliberately corrupt LAZ files under data/ through the public C
+  API and require each to be rejected rather than accepted or
+  crashed on, which also covers the dlopen path in liblaszip_api
+- Package the whole laszip include directory so a new upstream
+  header no longer breaks the build, as laszip_common.h did
+- Track the upstream rename of COPYING, AUTHORS and ChangeLog to
+  their .txt forms, and normalise CRLF line endings in README.md
+- Replace the hand-written ldconfig scriptlets with
+  %ldconfig_scriptlets, and drop Group tags
+
+-------------------------------------------------------------------

Old:
----
  laszip-src-3.4.3.tar.gz
  laszip-src-3.4.3.tar.gz.sha256sum

New:
----
  laszip-3.5.0.tar.gz

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

Other differences:
------------------
++++++ laszip.spec ++++++
--- /var/tmp/diff_new_pack.GOgong/_old  2026-07-29 19:02:41.380762815 +0200
+++ /var/tmp/diff_new_pack.GOgong/_new  2026-07-29 19:02:41.380762815 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package laszip
 #
-# Copyright (c) 2020 SUSE LLC
+# Copyright (c) 2026 SUSE LLC and contributors
 # Copyright (c) 2019 Bruno Friedmann, Ioda-Net Sàrl, Charmoille, Switzerland.
 #
 # All modifications and additions to the file contributed by third parties
@@ -19,14 +19,14 @@
 
 %define         sover 8
 Name:           laszip
-Version:        3.4.3
+Version:        3.5.0
 Release:        0
 Summary:        Compression library supporting ASPRS LAS format data
 License:        LGPL-2.1-or-later
-Group:          Development/Libraries/C and C++
 URL:            https://laszip.org/
-Source0:        
https://github.com/LASzip/LASzip/releases/download/%{version}/laszip-src-%{version}.tar.gz
-Source1:        
https://github.com/LASzip/LASzip/releases/download/%{version}/laszip-src-%{version}.tar.gz.sha256sum
+# Upstream stopped attaching a release tarball (and its .sha256sum) at 3.5.0;
+# the git auto-archive is the only published artifact.
+Source0:        
https://github.com/LASzip/LASzip/archive/refs/tags/%{version}.tar.gz#/%{name}-%{version}.tar.gz
 BuildRequires:  cmake
 BuildRequires:  gcc-c++
 
@@ -41,7 +41,6 @@
 
 %package -n lib%{name}%{sover}
 Summary:        Library files for %{name}
-Group:          System/Libraries
 
 %description -n lib%{name}%{sover}
 A free product of rapidlasso GmbH - quickly turns bulky LAS files into
@@ -58,7 +57,6 @@
 Summary:        API library files for lib%{name}
 # Packager comment are we sure this api can live alone ?
 #Requires:       lib%%{name}%%{sover} = %%{version}
-Group:          System/Libraries
 
 %description -n lib%{name}_api%{sover}
 API library for %{name}
@@ -66,7 +64,6 @@
 
 %package devel
 Summary:        Development files for %{name}
-Group:          Development/Libraries/C and C++
 Requires:       lib%{name}%{sover} = %{version}
 Requires:       lib%{name}_api%{sover} = %{version}
 
@@ -76,7 +73,9 @@
 data.
 
 %prep
-%setup -q -n laszip-src-%{version}
+%autosetup -p1 -n LASzip-%{version}
+# Upstream ships README.md with CRLF line endings
+sed -i 's/\r$//' README.md
 
 %build
 # laszip need dlopen,dlsym,dlclose
@@ -93,27 +92,56 @@
 %install
 %cmake_install
 
-%post -n lib%{name}%{sover} -p /sbin/ldconfig
-%postun -n lib%{name}%{sover}  -p /sbin/ldconfig
-%post -n lib%{name}_api%{sover} -p /sbin/ldconfig
-%postun -n lib%{name}_api%{sover}  -p /sbin/ldconfig
+%check
+# Upstream ships no test suite -- the only fixtures in data/ are LAZ files
+# that are deliberately corrupt in a different way each. Use them for what
+# they are for: every one must be *rejected* through the public C API rather
+# than crash or be silently accepted, which is the regression these files
+# exist to catch.
+cat > smoke.c <<'EOF'
+#include <laszip_api.h>
+#include <stdio.h>
+int main(int argc, char **argv)
+{
+    int i, bad = 0;
+    /* liblaszip_api is a dlopen wrapper around liblaszip -- nothing works
+       until the DLL is loaded, so this also exercises the -ldl link. */
+    if (laszip_load_dll()) { fprintf(stderr, "laszip_load_dll failed\n"); 
return 1; }
+    for (i = 1; i < argc; i++) {
+        laszip_POINTER h = 0;
+        laszip_BOOL compressed = 0;
+        if (laszip_create(&h)) { fprintf(stderr, "create failed\n"); return 1; 
}
+        if (laszip_open_reader(h, argv[i], &compressed) == 0) {
+            fprintf(stderr, "FAIL: %s was accepted but is corrupt\n", argv[i]);
+            bad = 1;
+        } else {
+            fprintf(stderr, "ok: %s rejected\n", argv[i]);
+        }
+        laszip_destroy(h);
+    }
+    return bad;
+}
+EOF
+gcc %{optflags} -o smoke smoke.c -Idll -Iinclude/laszip -Lbuild/%{_lib} 
-llaszip_api
+LD_LIBRARY_PATH=build/%{_lib} ./smoke data/*.laz
+
+%ldconfig_scriptlets -n lib%{name}%{sover}
+%ldconfig_scriptlets -n lib%{name}_api%{sover}
 
 %files devel
-%license COPYING
-%doc ChangeLog AUTHORS
-%dir %{_includedir}/%{name}
-%{_includedir}/%{name}/%{name}_api_version.h
-%{_includedir}/%{name}/%{name}_api.h
+%license COPYING.txt
+%doc CHANGES.txt AUTHORS.txt README.md
+%{_includedir}/%{name}/
 %{_libdir}/lib%{name}.so
 %{_libdir}/lib%{name}_api.so
 
 %files -n lib%{name}%{sover}
-%doc ChangeLog AUTHORS
-%license COPYING
+%license COPYING.txt
+%doc CHANGES.txt AUTHORS.txt README.md
 %{_libdir}/lib%{name}.so.*
 
 %files -n lib%{name}_api%{sover}
-%doc ChangeLog AUTHORS
-%license COPYING
+%license COPYING.txt
+%doc CHANGES.txt AUTHORS.txt README.md
 %{_libdir}/lib%{name}_api.so.*
 

++++++ laszip-src-3.4.3.tar.gz -> laszip-3.5.0.tar.gz ++++++
++++ 40180 lines of diff (skipped)

Reply via email to