Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package lerc for openSUSE:Factory checked in 
at 2026-03-23 17:11:12
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/lerc (Old)
 and      /work/SRC/openSUSE:Factory/.lerc.new.8177 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "lerc"

Mon Mar 23 17:11:12 2026 rev:3 rq:1341720 version:4.1.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/lerc/lerc.changes        2026-02-01 
22:07:06.576856770 +0100
+++ /work/SRC/openSUSE:Factory/.lerc.new.8177/lerc.changes      2026-03-23 
17:11:15.092389133 +0100
@@ -1,0 +2,33 @@
+Sat Mar 21 15:47:09 UTC 2026 - Ben Greiner <[email protected]>
+
+- Make the python package in a multibuild: Avoid build cycle
+  pylerc -> numpy -> meson-python --> git -> ... -> tiff -> lerc
+
+-------------------------------------------------------------------
+Wed Mar 18 16:19:21 UTC 2026 - Hans-Peter Jansen <[email protected]>
+
+- Fix a dependency problem:
+  nothing provides 'libLerc4 = 4.1-0' needed by the to be installed 
+  lerc-devel-4.1.0-0.x86_64
+  Thanks to darix, I've learned, that the version redefinition affects
+  %{version} to some degree. Using %{VERSION} fixed it. Don't ask.
+
+-------------------------------------------------------------------
+Sun Mar 15 11:34:34 UTC 2026 - Ben Greiner <[email protected]>
+
+- Add Python binding package: python3XX-pylerc 4.1
+  * Add pylerc-use-syslib.patch 
+
+-------------------------------------------------------------------
+Sun Mar 15 11:08:18 UTC 2026 - Martin Hauke <[email protected]>
+
+- Update to version 4.1.0
+  Fixed
+  * Renamed Lerc python package to pylerc.
+  * Cleaned up the treatment of line endings (CRLF vs LF) across
+    platforms.
+  * Cleaned up the code to avoid pointer casts from unaligned byte
+    pointers to integer or float pointers. Such pointer casts may
+    cause problems on some platforms (e.g., embedded).
+
+-------------------------------------------------------------------
New Changes file:

--- /dev/null   2026-02-12 11:13:27.188000000 +0100
+++ /work/SRC/openSUSE:Factory/.lerc.new.8177/python-pylerc.changes     
2026-03-23 17:11:15.256395963 +0100
@@ -0,0 +1,5 @@
+-------------------------------------------------------------------
+Sat Mar 21 15:21:03 UTC 2026 - Ben Greiner <[email protected]>
+
+- Make the python package in a multibuild: Avoid build cycle
+  pylerc -> numpy -> meson-python --> git -> ... -> tiff -> lerc

Old:
----
  lerc-4.0.0.tar.gz

New:
----
  _multibuild
  lerc-4.1.0.tar.gz
  pylerc-use-syslib.patch
  python-pylerc.changes
  python-pylerc.spec

----------(New B)----------
  New:/work/SRC/openSUSE:Factory/.lerc.new.8177/lerc.changes-- Add Python 
binding package: python3XX-pylerc 4.1
/work/SRC/openSUSE:Factory/.lerc.new.8177/lerc.changes:  * Add 
pylerc-use-syslib.patch 
/work/SRC/openSUSE:Factory/.lerc.new.8177/lerc.changes-
----------(New E)----------

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

Other differences:
------------------
++++++ lerc.spec ++++++
--- /var/tmp/diff_new_pack.BhoMd8/_old  2026-03-23 17:11:17.840503593 +0100
+++ /var/tmp/diff_new_pack.BhoMd8/_new  2026-03-23 17:11:17.848503925 +0100
@@ -19,7 +19,7 @@
 %define  sover  4
 %define  lname  libLerc
 Name:           lerc
-Version:        4.0.0
+Version:        4.1.0
 Release:        0
 Summary:        Limited Error Raster Compression
 License:        Apache-2.0
@@ -31,6 +31,7 @@
 BuildRequires:  cmake
 BuildRequires:  dos2unix
 
+
 %description
 LERC is an open-source image or raster format which supports rapid encoding
 and decoding for any pixel type (not just RGB or Byte). Users set the
@@ -57,8 +58,6 @@
 %prep
 %autosetup -p1
 dos2unix -v -o NOTICE
-dos2unix -v -o README.md
-dos2unix -v -o doc/MORE.md
 
 %build
 %cmake
@@ -68,21 +67,26 @@
 %cmake_install
 
 %check
-cd build
-c++ %{optflags} --std=c++17 ../src/LercTest/main.cpp -L. -lLerc -o testLerc
-LD_LIBRARY_PATH=. ./testLerc
+mkdir test
+cd test
+export LD_LIBRARY_PATH=%{buildroot}%{_libdir}
+# Test C++ library
+c++ %{optflags} --std=c++17 ../src/LercTest/main.cpp -L%{buildroot}%{_libdir} 
-lLerc -o testLerc
+./testLerc
 
 %ldconfig_scriptlets -n %{lname}%{sover}
 
 %files -n %{lname}%{sover}
-%doc README.md CHANGELOG.md NOTICE
+%doc README.md CHANGELOG.md
+%license LICENSE NOTICE
 %{_libdir}/libLerc.so.%{sover}
-%license LICENSE
 
 %files devel
-%doc README.md CHANGELOG.md NOTICE doc/
+%doc README.md CHANGELOG.md doc/
+%license LICENSE NOTICE
 %{_includedir}/Lerc_c_api.h
 %{_includedir}/Lerc_types.h
 %{_libdir}/libLerc.so
 %{_libdir}/pkgconfig/Lerc.pc
 
+

++++++ python-pylerc.spec ++++++
#
# spec file for package python-pylerc
#
# 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
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via https://bugs.opensuse.org/
#

%define  sover  4
%define  lname  libLerc
%define  cversion 4.1.0
Name:           python-pylerc
Version:        4.1
Release:        0
Summary:        Python Bindings for LERC: Limited Error Raster Compression
License:        Apache-2.0
Group:          Development/Libraries/C and C++
URL:            https://github.com/Esri/lerc
Source0:        lerc-%{cversion}.tar.gz
# PATCH-FEATURE-OPENSUSE: Use the system library instead of copying to the 
python sitelib
Patch0:         pylerc-use-syslib.patch
BuildRequires:  dos2unix
BuildRequires:  fdupes
BuildRequires:  lerc-devel
BuildRequires:  %{python_module base >= 3.11}
BuildRequires:  %{python_module pip}
BuildRequires:  %{python_module setuptools}
BuildRequires:  %{python_module wheel}
BuildRequires:  %{python_module numpy >= 2.3.0}
Requires:       python-numpy >= 2.3.0
Requires:       %{lname}%{sover} = %{cversion}-%{release}
BuildArch:      noarch
%python_subpackages


%description
LERC is an open-source image or raster format which supports rapid encoding
and decoding for any pixel type (not just RGB or Byte). Users set the
maximum compression error per pixel while encoding, so the precision of the
original input image is preserved (within user defined error bounds).

This package provides the Python bindings for LERC.

%prep
%autosetup -p1 -n lerc-%{cversion}
dos2unix -v -o NOTICE

%build
cd OtherLanguages/Python
%pyproject_wheel

%install
cd OtherLanguages/Python
%pyproject_install
%{python_expand %fdupes %{buildroot}%{$python_sitelib}/lerc}

%check
%{python_expand # Test python bindings
export PYTHONDONTWRITEBYTECODE=1
export PYTHONPATH=%{buildroot}%{python_sitelib}
$python -c "import lerc; lerc.test()"
}

%files %{python_files}
%doc OtherLanguages/Python/lerc/README.md
%license LICENSE NOTICE
%{python_sitelib}/lerc
%{python_sitelib}/pylerc-%{version}.dist-info

%changelog

++++++ _multibuild ++++++
<multibuild>
  <flavor>python-pylerc</flavor>
</multibuild>
(No newline at EOF)

++++++ lerc-4.0.0.tar.gz -> lerc-4.1.0.tar.gz ++++++
++++ 30160 lines of diff (skipped)

++++++ pylerc-use-syslib.patch ++++++
diff -ur lerc-4.1.0.orig/OtherLanguages/Python/lerc/_lerc.py 
lerc-4.1.0/OtherLanguages/Python/lerc/_lerc.py
--- lerc-4.1.0.orig/OtherLanguages/Python/lerc/_lerc.py 2026-03-15 
12:29:27.160819309 +0100
+++ lerc-4.1.0/OtherLanguages/Python/lerc/_lerc.py      2026-03-15 
12:32:07.898969816 +0100
@@ -115,24 +115,10 @@
 import numpy as np
 import ctypes as ct
 from timeit import default_timer as timer
-import platform
-import os
 
 def _get_lib():
-    dir_path = os.path.dirname(os.path.realpath(__file__))
-
-    if platform.system() == "Windows":
-        lib = os.path.join(dir_path, 'Lerc.dll')
-    elif platform.system() == "Linux":
-        lib = os.path.join(dir_path, 'libLerc.so.4')
-    elif platform.system() == "Darwin":
-        lib = os.path.join(dir_path, 'libLerc.dylib')
-    else:
-        lib = None
-
-    if not lib or not os.path.exists(lib):
-        import ctypes.util
-        lib = ctypes.util.find_library('Lerc')
+    import ctypes.util
+    lib = ctypes.util.find_library('Lerc')
 
     return lib
 
diff -ur lerc-4.1.0.orig/OtherLanguages/Python/setup.py 
lerc-4.1.0/OtherLanguages/Python/setup.py
--- lerc-4.1.0.orig/OtherLanguages/Python/setup.py      2026-03-15 
12:29:27.161382479 +0100
+++ lerc-4.1.0/OtherLanguages/Python/setup.py   2026-03-15 12:31:09.640600081 
+0100
@@ -1,23 +1,5 @@
 import setuptools
-from glob import glob
-from os.path import basename, exists, join, getmtime
-from shutil import copyfile
-
-# Forces the wheel to be platform-specific (e.g., win_amd64)
-# but compatible with any Python 3 version (py3-none).
-try:
-    from wheel.bdist_wheel import bdist_wheel as _bdist_wheel
-    class bdist_wheel(_bdist_wheel):
-        def finalize_options(self):
-            _bdist_wheel.finalize_options(self)
-            self.root_is_pure = False
-            
-        def get_tag(self):
-            _, _, plat = _bdist_wheel.get_tag(self)
-            return "py3", "none", plat
-    cmdclass = {'bdist_wheel': bdist_wheel}
-except ImportError:
-    cmdclass = {}
+from os.path import join
 
 readme_path = join("lerc", "README.md")
 try:
@@ -26,18 +8,6 @@
 except Exception:
     long_description = "Limited Error Raster Compression"
 
-# Using MANIFEST.in doesn't respect relative paths above the package root.
-# Instead, inspect the location and copy in the binaries if newer.
-BINARY_TYPES = ["*.dll", "*.lib", "*.so*", "*.dylib"]
-PLATFORMS = ["Linux", "MacOS", "windows"]
-for platform in PLATFORMS:
-    platform_dir = join("..", "..", "bin", platform)
-    for ext in BINARY_TYPES:
-        input_binaries = glob(join(platform_dir, ext))
-        for input_binary in input_binaries:
-            output_binary = join("lerc", basename(input_binary))
-            if not exists(output_binary) or getmtime(input_binary) > 
getmtime(output_binary):
-                copyfile(input_binary, output_binary)
 
 setuptools.setup(
     name="pylerc",
@@ -51,14 +21,11 @@
     url="https://github.com/Esri/lerc";,
     packages=setuptools.find_packages(),
     install_requires=["numpy >=2.3.0,<3"],
-    cmdclass=cmdclass,
     classifiers=[
         "Programming Language :: Python :: 3.11",
         "Programming Language :: Python :: 3.12",
         "Programming Language :: Python :: 3.13",
         "License :: OSI Approved :: Apache Software License",
     ],
-    package_data={"lerc": BINARY_TYPES},
     python_requires=">=3.11",
-    zip_safe=False,
 )

Reply via email to