Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-pylsqpack for 
openSUSE:Factory checked in at 2026-01-28 15:05:36
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-pylsqpack (Old)
 and      /work/SRC/openSUSE:Factory/.python-pylsqpack.new.1928 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-pylsqpack"

Wed Jan 28 15:05:36 2026 rev:7 rq:1329413 version:0.3.23

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-pylsqpack/python-pylsqpack.changes        
2025-04-30 19:02:35.885863106 +0200
+++ 
/work/SRC/openSUSE:Factory/.python-pylsqpack.new.1928/python-pylsqpack.changes  
    2026-01-28 15:05:54.042888707 +0100
@@ -1,0 +2,9 @@
+Tue Jan 27 07:06:33 UTC 2026 - Dirk Müller <[email protected]>
+
+- update to 0.3.23:
+  * update ls-qpack to latest version
+  * Support 3.14, drop python 3.9
+  * binding: store reference to xhdr buffer
+  * binding: add sanity asserts
+
+-------------------------------------------------------------------

Old:
----
  pylsqpack-0.3.20.tar.gz

New:
----
  pylsqpack-0.3.23.tar.gz

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

Other differences:
------------------
++++++ python-pylsqpack.spec ++++++
--- /var/tmp/diff_new_pack.Vrz3F9/_old  2026-01-28 15:05:55.934967552 +0100
+++ /var/tmp/diff_new_pack.Vrz3F9/_new  2026-01-28 15:05:55.934967552 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package python-pylsqpack
 #
-# Copyright (c) 2025 SUSE LLC
+# 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
@@ -18,7 +18,7 @@
 
 %{?sle15_python_module_pythons}
 Name:           python-pylsqpack
-Version:        0.3.20
+Version:        0.3.23
 Release:        0
 Summary:        Python ls-qpack QPACK library
 License:        BSD-3-Clause

++++++ pylsqpack-0.3.20.tar.gz -> pylsqpack-0.3.23.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pylsqpack-0.3.20/PKG-INFO 
new/pylsqpack-0.3.23/PKG-INFO
--- old/pylsqpack-0.3.20/PKG-INFO       2025-04-06 17:36:53.419468900 +0200
+++ new/pylsqpack-0.3.23/PKG-INFO       2025-10-10 19:06:52.422104800 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 2.4
 Name: pylsqpack
-Version: 0.3.20
+Version: 0.3.23
 Summary: Python wrapper for the ls-qpack QPACK library
 Author-email: Jeremy Lainé <[email protected]>
 License-Expression: BSD-3-Clause
@@ -12,13 +12,13 @@
 Classifier: Operating System :: OS Independent
 Classifier: Programming Language :: Python
 Classifier: Programming Language :: Python :: 3
-Classifier: Programming Language :: Python :: 3.9
 Classifier: Programming Language :: Python :: 3.10
 Classifier: Programming Language :: Python :: 3.11
 Classifier: Programming Language :: Python :: 3.12
 Classifier: Programming Language :: Python :: 3.13
+Classifier: Programming Language :: Python :: 3.14
 Classifier: Topic :: Internet :: WWW/HTTP
-Requires-Python: >=3.9
+Requires-Python: >=3.10
 Description-Content-Type: text/x-rst
 License-File: LICENSE
 Dynamic: license-file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pylsqpack-0.3.20/pyproject.toml 
new/pylsqpack-0.3.23/pyproject.toml
--- old/pylsqpack-0.3.20/pyproject.toml 2025-04-06 17:36:46.000000000 +0200
+++ new/pylsqpack-0.3.23/pyproject.toml 2025-10-10 19:06:42.000000000 +0200
@@ -6,7 +6,7 @@
 name = "pylsqpack"
 description = "Python wrapper for the ls-qpack QPACK library"
 readme = "README.rst"
-requires-python = ">=3.9"
+requires-python = ">=3.10"
 license = "BSD-3-Clause"
 authors = [
     { name = "Jeremy Lainé", email = "[email protected]" },
@@ -18,11 +18,11 @@
     "Operating System :: OS Independent",
     "Programming Language :: Python",
     "Programming Language :: Python :: 3",
-    "Programming Language :: Python :: 3.9",
     "Programming Language :: Python :: 3.10",
     "Programming Language :: Python :: 3.11",
     "Programming Language :: Python :: 3.12",
     "Programming Language :: Python :: 3.13",
+    "Programming Language :: Python :: 3.14",
     "Topic :: Internet :: WWW/HTTP",
 ]
 dynamic = ["version"]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pylsqpack-0.3.20/setup.py 
new/pylsqpack-0.3.23/setup.py
--- old/pylsqpack-0.3.20/setup.py       2025-04-06 17:36:46.000000000 +0200
+++ new/pylsqpack-0.3.23/setup.py       2025-10-10 19:06:42.000000000 +0200
@@ -20,7 +20,7 @@
         python, abi, plat = super().get_tag()
 
         if python.startswith("cp"):
-            return "cp39", "abi3", plat
+            return "cp310", "abi3", plat
 
         return python, abi, plat
 
@@ -29,7 +29,7 @@
     ext_modules=[
         setuptools.Extension(
             "pylsqpack._binding",
-            define_macros=[("Py_LIMITED_API", "0x03080000")],
+            define_macros=[("Py_LIMITED_API", "0x030A0000")],
             extra_compile_args=extra_compile_args,
             include_dirs=include_dirs,
             py_limited_api=True,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pylsqpack-0.3.20/src/pylsqpack/__init__.py 
new/pylsqpack-0.3.23/src/pylsqpack/__init__.py
--- old/pylsqpack-0.3.20/src/pylsqpack/__init__.py      2025-04-06 
17:36:46.000000000 +0200
+++ new/pylsqpack-0.3.23/src/pylsqpack/__init__.py      2025-10-10 
19:06:42.000000000 +0200
@@ -9,4 +9,4 @@
     StreamBlocked,
 )
 
-__version__ = "0.3.20"
+__version__ = "0.3.23"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pylsqpack-0.3.20/src/pylsqpack/binding.c 
new/pylsqpack-0.3.23/src/pylsqpack/binding.c
--- old/pylsqpack-0.3.20/src/pylsqpack/binding.c        2025-04-06 
17:36:46.000000000 +0200
+++ new/pylsqpack-0.3.23/src/pylsqpack/binding.c        2025-10-10 
19:06:42.000000000 +0200
@@ -1,5 +1,7 @@
 #define PY_SSIZE_T_CLEAN
 
+#include <assert.h>
+
 #include <Python.h>
 #include "lsqpack.h"
 #include "lsxpack_header.h"
@@ -27,6 +29,8 @@
     size_t data_len;
     const unsigned char *data_ptr;
     struct lsxpack_header xhdr;
+    // This buffer is owned by the header_block and is reused internally by 
xhdr.
+    char *header_buffer;
     uint64_t stream_id;
     PyObject *headers;
 };
@@ -49,7 +53,7 @@
     free(hblock->data);
     hblock->data = 0;
     hblock->data_ptr = 0;
-    free(hblock->xhdr.buf);
+    free(hblock->header_buffer);
     Py_DECREF(hblock->headers);
     free(hblock);
 }
@@ -64,17 +68,18 @@
  */
 static struct lsxpack_header *header_block_prepare_decode(void *opaque, struct 
lsxpack_header *xhdr, size_t space) {
     struct header_block *hblock = opaque;
-    char *buf;
+    char *buf = realloc(hblock->header_buffer, space);
+    if (!buf) return NULL;
+    hblock->header_buffer = buf;
 
     if (xhdr) {
-        buf = realloc(xhdr->buf, space);
-        if (!buf) return NULL;
+        assert(&hblock->xhdr == xhdr);
+        assert(space > xhdr->val_len);
+
         xhdr->buf = buf;
         xhdr->val_len = space;
     } else {
         xhdr = &hblock->xhdr;
-        buf = malloc(space);
-        if (!buf) return NULL;
         lsxpack_header_prepare_decode(xhdr, buf, 0, space);
     }
     return xhdr;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pylsqpack-0.3.20/src/pylsqpack.egg-info/PKG-INFO 
new/pylsqpack-0.3.23/src/pylsqpack.egg-info/PKG-INFO
--- old/pylsqpack-0.3.20/src/pylsqpack.egg-info/PKG-INFO        2025-04-06 
17:36:53.000000000 +0200
+++ new/pylsqpack-0.3.23/src/pylsqpack.egg-info/PKG-INFO        2025-10-10 
19:06:52.000000000 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 2.4
 Name: pylsqpack
-Version: 0.3.20
+Version: 0.3.23
 Summary: Python wrapper for the ls-qpack QPACK library
 Author-email: Jeremy Lainé <[email protected]>
 License-Expression: BSD-3-Clause
@@ -12,13 +12,13 @@
 Classifier: Operating System :: OS Independent
 Classifier: Programming Language :: Python
 Classifier: Programming Language :: Python :: 3
-Classifier: Programming Language :: Python :: 3.9
 Classifier: Programming Language :: Python :: 3.10
 Classifier: Programming Language :: Python :: 3.11
 Classifier: Programming Language :: Python :: 3.12
 Classifier: Programming Language :: Python :: 3.13
+Classifier: Programming Language :: Python :: 3.14
 Classifier: Topic :: Internet :: WWW/HTTP
-Requires-Python: >=3.9
+Requires-Python: >=3.10
 Description-Content-Type: text/x-rst
 License-File: LICENSE
 Dynamic: license-file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pylsqpack-0.3.20/vendor/ls-qpack/.appveyor.yml 
new/pylsqpack-0.3.23/vendor/ls-qpack/.appveyor.yml
--- old/pylsqpack-0.3.20/vendor/ls-qpack/.appveyor.yml  2025-04-06 
17:36:47.000000000 +0200
+++ new/pylsqpack-0.3.23/vendor/ls-qpack/.appveyor.yml  2025-10-10 
19:06:43.000000000 +0200
@@ -6,6 +6,9 @@
 - c:\tools\vcpkg\installed
 
 environment:
+  VCPKG_DEFAULT_TRIPLET: x64-windows
+  CMAKE_ZIP_URL: 
'https://github.com/Kitware/CMake/releases/download/v3.31.7/cmake-3.31.7-windows-x86_64.zip'
+  CMAKE_INST_DIR: '%PROGRAMFILES(x86)%\CMake'
   matrix:
   - job_name: "Internal xxhash"
     LSQPACK_XXH: ON
@@ -18,14 +21,15 @@
     XXH_CMAKE: DISABLE
 
 before_build:
+  - ps: 'iwr "${Env:CMAKE_ZIP_URL}" -outfile cmake.zip; if ($?) { 
expand-archive cmake.zip cmake }'
+  - ps: '$dir = "${Env:CMAKE_INST_DIR}"; rm -r -fo "$dir"; mv cmake\* "$dir"'
   - git -C c:\tools\vcpkg\ fetch
-  - git -C c:\tools\vcpkg\ checkout 2024.08.23
+  - git -C c:\tools\vcpkg\ checkout 2025.04.09
   - c:\tools\vcpkg\bootstrap-vcpkg.bat
-  - vcpkg x-set-installed getopt:x64-windows xxhash:x64-windows 
pkgconf:x64-windows
+  - vcpkg x-set-installed getopt xxhash pkgconf
   - cmake .
     -DCMAKE_TOOLCHAIN_FILE=c:/tools/vcpkg/scripts/buildsystems/vcpkg.cmake
     -DVCPKG_INSTALLED_DIR=c:/tools/vcpkg/installed
-    -DVCPKG_TARGET_TRIPLET=x64-windows
     
-DPKG_CONFIG_EXECUTABLE=c:/tools/vcpkg/installed/x64-windows/tools/pkgconf/pkgconf.exe
     -DCMAKE_BUILD_TYPE=Debug
     -DCMAKE_GENERATOR_PLATFORM=x64
@@ -42,5 +46,6 @@
   - set PATH=%PATH%;c:\projects\ls-qpack\bin\Debug
 
 test_script:
-  - dir
-  - msbuild RUN_TESTS.vcxproj 
+  - setlocal EnableDelayedExpansion & ctest -j -C Debug --output-junit 
TestResults.xml & set LEVEL=!ERRORLEVEL! & dir
+  - curl -v -F "[email protected]" 
"https://ci.appveyor.com/api/testresults/junit/%APPVEYOR_JOB_ID%";
+  - setlocal EnableDelayedExpansion & exit /b !LEVEL!
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pylsqpack-0.3.20/vendor/ls-qpack/CMakeLists.txt 
new/pylsqpack-0.3.23/vendor/ls-qpack/CMakeLists.txt
--- old/pylsqpack-0.3.20/vendor/ls-qpack/CMakeLists.txt 2025-04-06 
17:36:47.000000000 +0200
+++ new/pylsqpack-0.3.23/vendor/ls-qpack/CMakeLists.txt 2025-10-10 
19:06:43.000000000 +0200
@@ -13,7 +13,7 @@
        LANGUAGES C
         HOMEPAGE_URL "https://github.com/litespeedtech/ls-qpack";
         DESCRIPTION "QPACK compression library for use with HTTP/3" 
-        VERSION 2.6.1)
+        VERSION 2.6.2)
 
 option(LSQPACK_TESTS "Build tests")
 option(LSQPACK_BIN "Build binaries" ON)
@@ -123,7 +123,8 @@
     add_subdirectory(test)
 endif()
 
-if(LSQPACK_BIN)
+# The executables are used within the test suite as well.
+if(LSQPACK_BIN OR LSQPACK_TESTS)
     add_subdirectory(bin)
 endif()
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pylsqpack-0.3.20/vendor/ls-qpack/lsqpack.c 
new/pylsqpack-0.3.23/vendor/ls-qpack/lsqpack.c
--- old/pylsqpack-0.3.20/vendor/ls-qpack/lsqpack.c      2025-04-06 
17:36:47.000000000 +0200
+++ new/pylsqpack-0.3.23/vendor/ls-qpack/lsqpack.c      2025-10-10 
19:06:43.000000000 +0200
@@ -39,6 +39,27 @@
 #include <sys/types.h>
 #include <inttypes.h>
 
+
+#if defined(__linux__)
+#include <endian.h>
+
+#elif defined(__APPLE__)
+
+#include <machine/endian.h>
+#define __BIG_ENDIAN BIG_ENDIAN
+#define __LITTLE_ENDIAN LITTLE_ENDIAN
+#define __BYTE_ORDER BYTE_ORDER
+
+#elif (defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__))
+
+#include <sys/endian.h>
+#define __BIG_ENDIAN BIG_ENDIAN
+#define __LITTLE_ENDIAN LITTLE_ENDIAN
+#define __BYTE_ORDER BYTE_ORDER
+
+#elif WIN32
+#endif
+
 #include "lsqpack.h"
 #include "lsxpack_header.h"
 
@@ -53,15 +74,16 @@
 #define MIN(a, b) ((a) < (b) ? (a) : (b))
 #define MAX(a, b) ((a) > (b) ? (a) : (b))
 
-#ifdef _MSC_VER
-#  define FALL_THROUGH
-#endif
-
 #ifndef FALL_THROUGH
-#  if defined __has_attribute && __has_attribute (fallthrough)
-#    define FALL_THROUGH __attribute__ ((fallthrough))
+#  if 201710L < __STDC_VERSION__
+#    define FALL_THROUGH [[fallthrough]]
+#  elif ((__GNUC__ >= 7 && !defined __clang__)      \
+        || (defined __apple_build_version__         \
+            ? __apple_build_version__ >= 12000000   \
+            : __clang_major__ >= 10))
+#    define FALL_THROUGH __attribute__((fallthrough))
 #  else
-#    define FALL_THROUGH
+#    define FALL_THROUGH ((void)0)
 #  endif
 #endif
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pylsqpack-0.3.20/vendor/ls-qpack/lsqpack.h 
new/pylsqpack-0.3.23/vendor/ls-qpack/lsqpack.h
--- old/pylsqpack-0.3.20/vendor/ls-qpack/lsqpack.h      2025-04-06 
17:36:47.000000000 +0200
+++ new/pylsqpack-0.3.23/vendor/ls-qpack/lsqpack.h      2025-10-10 
19:06:43.000000000 +0200
@@ -44,7 +44,7 @@
 
 #define LSQPACK_MAJOR_VERSION 2
 #define LSQPACK_MINOR_VERSION 6
-#define LSQPACK_PATCH_VERSION 1
+#define LSQPACK_PATCH_VERSION 2
 
 /** Let's start with four billion for now */
 typedef unsigned lsqpack_abs_id_t;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pylsqpack-0.3.20/vendor/ls-qpack/test/CMakeLists.txt 
new/pylsqpack-0.3.23/vendor/ls-qpack/test/CMakeLists.txt
--- old/pylsqpack-0.3.20/vendor/ls-qpack/test/CMakeLists.txt    2025-04-06 
17:36:47.000000000 +0200
+++ new/pylsqpack-0.3.23/vendor/ls-qpack/test/CMakeLists.txt    2025-10-10 
19:06:43.000000000 +0200
@@ -1,3 +1,5 @@
+add_compile_definitions("TEST_DATA=\"${CMAKE_CURRENT_SOURCE_DIR}/testdata\"")
+
 function(lsqpack_add_test TARGET)
     add_executable(test_${TARGET} "")
     target_sources(test_${TARGET} PRIVATE test_${TARGET}.c)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/pylsqpack-0.3.20/vendor/ls-qpack/test/test_dyn_table_cap_mismatch.c 
new/pylsqpack-0.3.23/vendor/ls-qpack/test/test_dyn_table_cap_mismatch.c
--- old/pylsqpack-0.3.20/vendor/ls-qpack/test/test_dyn_table_cap_mismatch.c     
2025-04-06 17:36:47.000000000 +0200
+++ new/pylsqpack-0.3.23/vendor/ls-qpack/test/test_dyn_table_cap_mismatch.c     
2025-10-10 19:06:43.000000000 +0200
@@ -36,8 +36,8 @@
     size_t size = 0;
     if (!encoder_stream)
     {
-        encoder_stream = fopen("../../test/testdata/encoder_stream", "r");
-        response = fopen("../../test/testdata/response", "r");
+        encoder_stream = fopen(TEST_DATA "/encoder_stream", "r");
+        response = fopen(TEST_DATA "/response", "r");
     }
     while ((size = fread(buffer, 1, sizeof(buffer), encoder_stream)) > 0) {
         lsqpack_dec_enc_in(&qpackDecoder, buffer, size);

Reply via email to