Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-orjson for openSUSE:Factory 
checked in at 2026-05-13 17:18:31
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-orjson (Old)
 and      /work/SRC/openSUSE:Factory/.python-orjson.new.1966 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-orjson"

Wed May 13 17:18:31 2026 rev:17 rq:1352654 version:3.11.9

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-orjson/python-orjson.changes      
2026-04-19 14:20:59.377180759 +0200
+++ /work/SRC/openSUSE:Factory/.python-orjson.new.1966/python-orjson.changes    
2026-05-13 17:18:40.101625306 +0200
@@ -1,0 +2,10 @@
+Fri May  8 14:43:37 UTC 2026 - Nico Krapp <[email protected]>
+
+- Update to 3.11.9
+  * Build now depends on Rust 1.95 or later instead of 1.89.
+  * Fix building on Rust 1.95.
+- switch to tar_scm source service since link to upstream tarball was missing
+- drop devendoring script in favor of excludes in tar_scm service
+- update test dependencies
+
+-------------------------------------------------------------------

Old:
----
  PACKAGING_README.md
  devendor-sdist.sh
  orjson-3.11.8-devendored.tar.xz

New:
----
  orjson-3.11.9.tar.xz

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

Other differences:
------------------
++++++ python-orjson.spec ++++++
--- /var/tmp/diff_new_pack.hYOIyn/_old  2026-05-13 17:18:40.981662073 +0200
+++ /var/tmp/diff_new_pack.hYOIyn/_new  2026-05-13 17:18:40.981662073 +0200
@@ -18,31 +18,36 @@
 
 %{?sle15_python_module_pythons}
 Name:           python-orjson
-Version:        3.11.8
+Version:        3.11.9
 Release:        0
 Summary:        Fast, correct Python JSON library supporting dataclasses, 
datetimes, and numpy
 License:        (Apache-2.0 OR MIT) AND MPL-2.0
 URL:            https://github.com/ijl/orjson
-# Update: Change version and run `osc rm orjson-*.tar.gz && osc service runall 
download_files && sh ./devendor-sdist.sh && osc service runall cargo_vendor`
-Source0:        orjson-%{version}-devendored.tar.xz
+Source0:        orjson-%{version}.tar.xz
 Source1:        vendor.tar.xz
-Source3:        devendor-sdist.sh
-Source4:        PACKAGING_README.md
 BuildRequires:  %{python_module base >= 3.9}
 BuildRequires:  %{python_module maturin >= 1.9.2}
 BuildRequires:  %{python_module pip}
 BuildRequires:  %{python_module setuptools}
 BuildRequires:  %{python_module wheel}
+# Requires rust 1.95 since v3.11.9
 BuildRequires:  cargo-packaging
 BuildRequires:  fdupes
 BuildRequires:  python-rpm-macros
+# TODO: de-vendor yyjson in include/yyjson
+# BuildRequires: yyjson-devel
+
 # SECTION test requirements
+BuildRequires:  %{python_module Faker}
 BuildRequires:  %{python_module numpy}
-BuildRequires:  %{python_module psutil}
 BuildRequires:  %{python_module pytest}
 BuildRequires:  %{python_module python-dateutil}
 BuildRequires:  %{python_module pytz}
-BuildRequires:  %{python_module xxhash}
+%ifarch x86_64
+BuildRequires:  %{python_module pendulum}
+BuildRequires:  %{python_module psutil}
+%endif
+
 BuildRequires:  timezone
 # /SECTION
 %python_subpackages

++++++ _service ++++++
--- /var/tmp/diff_new_pack.hYOIyn/_old  2026-05-13 17:18:41.021663744 +0200
+++ /var/tmp/diff_new_pack.hYOIyn/_new  2026-05-13 17:18:41.029664079 +0200
@@ -1,8 +1,19 @@
 <services>
+  <service name="tar_scm" mode="manual">
+    <param name="url">https://github.com/ijl/orjson</param>
+    <param name="revision">3.11.9</param>
+    <param name="versionformat">@PARENT_TAG@</param>
+    <param name="scm">git</param>
+    <param name="exclude">(Cargo.lock|.cargo/*|bench/*)</param>
+  </service>
+  <service name="recompress" mode="manual">
+    <param name="compression">xz</param>
+    <param name="file">*.tar</param>
+ </service>
   <service name="cargo_vendor" mode="manual">
-    <param name="srctar">orjson-*-devendored.tar.xz</param>
+    <param name="srctar">orjson-*.tar.xz</param>
     <param name="compression">xz</param>
-    <param name="update">true</param>
+    <param name="update">false</param>
   </service>
   <service name="cargo_audit" mode="manual"></service>
 </services>

++++++ orjson-3.11.8-devendored.tar.xz -> orjson-3.11.9.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/orjson-3.11.8/.github/actions/manylinux/action.yaml 
new/orjson-3.11.9/.github/actions/manylinux/action.yaml
--- old/orjson-3.11.8/.github/actions/manylinux/action.yaml     2026-03-31 
17:25:41.000000000 +0200
+++ new/orjson-3.11.9/.github/actions/manylinux/action.yaml     2026-05-06 
16:12:18.000000000 +0200
@@ -1,5 +1,5 @@
 # SPDX-License-Identifier: MPL-2.0
-# Copyright ijl (2024-2025)
+# Copyright ijl (2024-2026)
 
 name: manylinux
 
@@ -12,6 +12,8 @@
     required: true
   compatibility:
     required: true
+  packages:
+    required: true
 
 runs:
   using: "composite"
@@ -32,9 +34,8 @@
         fi
 
         export TARGET="${{ inputs.arch }}-unknown-linux-gnu"
-        export PATH="$PWD/.venv:$HOME/.cargo/bin:$PATH"
 
-        ./script/install-fedora
+        ./script/install-fedora "${{ inputs.packages }}"
 
         source "${VENV}/bin/activate"
 
@@ -48,10 +49,4 @@
 
         uv pip install ${CARGO_TARGET_DIR}/wheels/orjson*.whl
 
-        export PYTHONMALLOC="debug"
-        pytest -v test
-        ./integration/run thread
-        ./integration/run http
-        ./integration/run init
-
         cp ${CARGO_TARGET_DIR}/wheels/orjson*.whl dist
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/orjson-3.11.8/.github/workflows/artifact.yaml 
new/orjson-3.11.9/.github/workflows/artifact.yaml
--- old/orjson-3.11.8/.github/workflows/artifact.yaml   2026-03-31 
17:25:41.000000000 +0200
+++ new/orjson-3.11.9/.github/workflows/artifact.yaml   2026-05-06 
16:12:18.000000000 +0200
@@ -7,8 +7,8 @@
   FORCE_COLOR: "1"
   ORJSON_BUILD_FREETHREADED: "1"
   PIP_DISABLE_PIP_VERSION_CHECK: "1"
-  RUST_TOOLCHAIN: "nightly-2026-03-28"
-  RUST_TOOLCHAIN_STABLE: "1.89"
+  RUST_TOOLCHAIN: "nightly-2026-05-01"
+  RUST_TOOLCHAIN_STABLE: "1.95"
   UNSAFE_PYO3_BUILD_FREE_THREADED: "1"
   UNSAFE_PYO3_SKIP_VERSION_CHECK: "1"
   UV_LINK_MODE: "copy"
@@ -35,7 +35,7 @@
     - name: Cargo.toml and pyproject.toml version must match
       run: ./script/check-version
 
-    - run: python3 -m pip install --user --upgrade pip "maturin>=1.12,<2" wheel
+    - run: python3 -m pip install --user --upgrade pip "maturin>=1.13.1,<2" 
wheel
 
     - name: Vendor dependencies
       run: |
@@ -91,14 +91,15 @@
           { interpreter: 'python3.10', compatibility: "manylinux_2_17", 
publish: true },
         ]
         arch: [
-          { runner: "ubuntu-24.04", arch: "x86_64", features: "avx512", },
-          { runner: "ubuntu-24.04-arm", arch: "aarch64", features: 
"generic_simd" },
+          { runner: "ubuntu-24.04", arch: "x86_64", features: 
"avx512,optimize,no_panic", },
+          { runner: "ubuntu-24.04-arm", arch: "aarch64", features: 
"generic_simd,optimize,no_panic" },
         ]
     env:
       CARGO_TARGET_DIR: "/tmp/orjson"
       CC: "clang"
       CFLAGS: "-O2 -fstrict-aliasing -fno-plt -emit-llvm"
       LDFLAGS: "-fuse-ld=lld -Wl,-plugin-opt=also-emit-llvm -Wl,--as-needed 
-Wl,-zrelro,-znow"
+      PATH: 
"/__w/orjson/orjson/.venv/bin:/github/home/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
       RUSTFLAGS: "-Z unstable-options -C panic=immediate-abort -C linker=clang 
-C link-arg=-fuse-ld=lld -C linker-plugin-lto -C link-arg=-Wl,-zrelro,-znow -Z 
mir-opt-level=4 -Z threads=4 -D warnings"
       VENV: ".venv"
     steps:
@@ -117,6 +118,23 @@
           interpreter: "${{ matrix.python.interpreter }}"
           features: "${{ matrix.arch.features }}"
           compatibility: "${{ matrix.python.compatibility }}"
+          packages: ""
+
+      - run: pytest -v test
+        env:
+          PYTHONMALLOC: "debug"
+
+      - run: ./integration/run thread
+        env:
+          PYTHONMALLOC: "debug"
+
+      - run: ./integration/run http
+        env:
+          PYTHONMALLOC: "debug"
+
+      - run: ./integration/run init
+        env:
+          PYTHONMALLOC: "debug"
 
       - name: Store wheels
         if: matrix.python.publish == true
@@ -146,16 +164,16 @@
       matrix:
         python: [
           { interpreter: 'python3.14', abi: 'cp314-cp314', manylinux: 
'manylinux_2_17', maturin-version: 'v1.11.5', publish: true },
-          { interpreter: 'python3.13', abi: 'cp313-cp313', manylinux: 
'manylinux_2_17', maturin-version: 'v1.12.6', publish: true },
-          { interpreter: 'python3.12', abi: 'cp312-cp312', manylinux: 
'manylinux_2_17', maturin-version: 'v1.12.6', publish: true },
-          { interpreter: 'python3.11', abi: 'cp311-cp311', manylinux: 
'manylinux_2_17', maturin-version: 'v1.12.6', publish: true },
-          { interpreter: 'python3.10', abi: 'cp310-cp310', manylinux: 
'manylinux_2_17', maturin-version: 'v1.12.6', publish: true },
+          { interpreter: 'python3.13', abi: 'cp313-cp313', manylinux: 
'manylinux_2_17', maturin-version: 'v1.13.1', publish: true },
+          { interpreter: 'python3.12', abi: 'cp312-cp312', manylinux: 
'manylinux_2_17', maturin-version: 'v1.13.1', publish: true },
+          { interpreter: 'python3.11', abi: 'cp311-cp311', manylinux: 
'manylinux_2_17', maturin-version: 'v1.13.1', publish: true },
+          { interpreter: 'python3.10', abi: 'cp310-cp310', manylinux: 
'manylinux_2_17', maturin-version: 'v1.13.1', publish: true },
         ]
         target: [
           {
             arch: 'i686',
             cflags: '-Os -fstrict-aliasing',
-            features: 'no_panic',
+            features: 'no_panic,optimize',
             image: 'quay.io/pypa/manylinux_2_28_i686:latest',
             runner: "ubuntu-24.04",
             rustflags: '-Z unstable-options -C panic=immediate-abort -Z 
mir-opt-level=4 -D warnings',
@@ -164,7 +182,7 @@
           {
             arch: 'armv7',
             cflags: '-Os -fstrict-aliasing',
-            features: 'no_panic',
+            features: 'no_panic,optimize',
             image: 'ghcr.io/rust-cross/manylinux_2_28-cross:armv7',
             runner: "ubuntu-24.04-arm",
             rustflags: '-Z unstable-options -C panic=immediate-abort -Z 
mir-opt-level=4 -D warnings -C opt-level=s',
@@ -173,7 +191,7 @@
           {
             arch: 'ppc64le',
             cflags: '-Os -fstrict-aliasing',
-            features: 'generic_simd,no_panic',
+            features: 'generic_simd,no_panic,optimize',
             image: 'ghcr.io/rust-cross/manylinux_2_28-cross:ppc64le',
             runner: "ubuntu-24.04",
             rustflags: '-Z unstable-options -C panic=immediate-abort -Z 
mir-opt-level=4 -D warnings',
@@ -182,7 +200,7 @@
           {
             arch: 's390x',
             cflags: '-Os -fstrict-aliasing -march=z10',
-            features: 'no_panic',
+            features: 'no_panic,optimize',
             image: 'ghcr.io/rust-cross/manylinux_2_28-cross:s390x',
             runner: "ubuntu-24.04",
             rustflags: '-Z unstable-options -C panic=immediate-abort -Z 
mir-opt-level=4 -D warnings -C target-cpu=z10',
@@ -271,11 +289,11 @@
           - target: x86_64-unknown-linux-musl
             arch: x86_64
             platform: linux/amd64
-            features: avx512,unwind
+            features: avx512,no_panic,optimize,unwind
           - target: i686-unknown-linux-musl
             arch: i686
             platform: linux/386
-            features: unwind
+            features: no_panic,optimize,unwind
     steps:
     - uses: actions/checkout@v6
 
@@ -347,11 +365,11 @@
           - target: aarch64-unknown-linux-musl
             arch: aarch64
             platform: linux/arm64
-            features: generic_simd,no_panic,unwind
+            features: generic_simd,no_panic,optimize,unwind
           - target: armv7-unknown-linux-musleabihf
             arch: armv7l
             platform: linux/arm/v7
-            features: no_panic
+            features: no_panic,optimize
     steps:
     - uses: actions/checkout@v6
 
@@ -447,7 +465,7 @@
 
         curl -LsSf https://astral.sh/uv/install.sh | sh
         uv venv --python python${{ matrix.python.version }}
-        uv pip install --upgrade "maturin>=1.12,<2" -r test/requirements.txt 
-r integration/requirements.txt
+        uv pip install --upgrade "maturin>=1.13.1,<2" -r test/requirements.txt 
-r integration/requirements.txt
 
         mkdir .cargo
         cp ci/config.toml .cargo/config.toml
@@ -461,7 +479,7 @@
         maturin build \
           --release \
           --strip \
-          --features=generic_simd,no_panic \
+          --features=generic_simd,no_panic,optimize \
           --interpreter python${{ matrix.python.version }} \
           --target=aarch64-apple-darwin
         uv pip install target/wheels/orjson*.whl
@@ -533,7 +551,7 @@
 
         curl -LsSf https://astral.sh/uv/install.sh | sh
         uv venv --python python${{ matrix.python.version }}
-        uv pip install --upgrade "maturin>=1.12,<2" -r test/requirements.txt 
-r integration/requirements.txt
+        uv pip install --upgrade "maturin>=1.13.1,<2" -r test/requirements.txt 
-r integration/requirements.txt
 
         mkdir .cargo
         cp ci/config.toml .cargo/config.toml
@@ -547,7 +565,7 @@
         maturin build \
           --release \
           --strip \
-          --features=generic_simd,no_panic \
+          --features=generic_simd,no_panic,optimize \
           --interpreter python${{ matrix.python.version }} \
           --target=universal2-apple-darwin
         uv pip install target/wheels/orjson*.whl
@@ -586,8 +604,8 @@
           { version: '3.10', publish: true },
         ]
         platform: [
-          { arch: "x64", target: "x86_64-pc-windows-msvc", features: 
"avx512,no_panic" },
-          { arch: "x86", target: "i686-pc-windows-msvc", features: "no_panic" 
},
+          { arch: "x64", target: "x86_64-pc-windows-msvc", features: 
"avx512,no_panic,optimize" },
+          { arch: "x86", target: "i686-pc-windows-msvc", features: 
"no_panic,optimize" },
         ]
     env:
       CFLAGS: "-O2"
@@ -617,7 +635,7 @@
       run: |
         cargo fetch --target "${{ matrix.platform.target }}" &
 
-        python.exe -m pip install --upgrade pip "maturin>=1.12,<2" wheel
+        python.exe -m pip install --upgrade pip "maturin>=1.13.1,<2" wheel
         python.exe -m pip install -r test\requirements.txt
 
         mkdir .cargo
@@ -688,7 +706,7 @@
         cargo fetch --target "$" &
 
         python.exe -m sysconfig
-        python.exe -m pip install --upgrade pip "maturin>=1.12,<2" wheel
+        python.exe -m pip install --upgrade pip "maturin>=1.13.1,<2" wheel
         python.exe -m pip install -r test\requirements.txt
 
         mkdir .cargo
@@ -696,7 +714,7 @@
 
     - name: maturin
       run: |
-        maturin.exe build --release --strip --features=generic_simd,no_panic 
--target="$env:TARGET"
+        maturin.exe build --release --strip 
--features=generic_simd,no_panic,optimize --target="$env:TARGET"
         python.exe -m pip install orjson --no-index --find-links target\wheels
 
     - run: python.exe -m pytest -s -rxX -v test
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/orjson-3.11.8/.github/workflows/unusual.yaml 
new/orjson-3.11.9/.github/workflows/unusual.yaml
--- old/orjson-3.11.8/.github/workflows/unusual.yaml    2026-03-31 
17:25:41.000000000 +0200
+++ new/orjson-3.11.9/.github/workflows/unusual.yaml    2026-05-06 
16:12:18.000000000 +0200
@@ -14,9 +14,9 @@
       fail-fast: false
       matrix:
         cfg: [
-          { rust: "1.89", python: "3.15", version_check: "1" },
-          { rust: "1.89", python: "3.14", version_check: "0" },
-          { rust: "1.89", python: "3.10", version_check: "0" },
+          { rust: "1.95", python: "3.15", version_check: "1" },
+          { rust: "1.95", python: "3.14", version_check: "0" },
+          { rust: "1.95", python: "3.10", version_check: "0" },
         ]
     steps:
     - run: curl https://sh.rustup.rs -sSf | sh -s -- --default-toolchain ${{ 
matrix.cfg.rust }} --profile minimal -y
@@ -26,7 +26,7 @@
         python-version: '${{ matrix.cfg.python }}'
         allow-prereleases: true
 
-    - run: python -m pip install --user --upgrade pip "maturin>=1.12,<2" wheel
+    - run: python -m pip install --user --upgrade pip "maturin>=1.13.1,<2" 
wheel
 
     - uses: actions/checkout@v6
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/orjson-3.11.8/CHANGELOG.md 
new/orjson-3.11.9/CHANGELOG.md
--- old/orjson-3.11.8/CHANGELOG.md      2026-03-31 17:25:41.000000000 +0200
+++ new/orjson-3.11.9/CHANGELOG.md      2026-05-06 16:12:18.000000000 +0200
@@ -1,6 +1,17 @@
 # Changelog
 
 
+## 3.11.9 - 2026-05-06
+
+### Changed
+
+- Build now depends on Rust 1.95 or later instead of 1.89.
+
+### Fixed
+
+- Fix building on Rust 1.95.
+
+
 ## 3.11.8 - 2026-03-31
 
 ### Changed
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/orjson-3.11.8/Cargo.toml new/orjson-3.11.9/Cargo.toml
--- old/orjson-3.11.8/Cargo.toml        2026-03-31 17:25:41.000000000 +0200
+++ new/orjson-3.11.9/Cargo.toml        2026-05-06 16:12:18.000000000 +0200
@@ -1,12 +1,12 @@
 [package]
 name = "orjson"
-version = "3.11.8"
+version = "3.11.9"
 authors = ["ijl <[email protected]>"]
 description = "Fast, correct Python JSON library supporting dataclasses, 
datetimes, and numpy"
 repository = "https://github.com/ijl/orjson";
 edition = "2024"
 resolver = "3"
-rust-version = "1.89"
+rust-version = "1.95"
 license = "MPL-2.0 AND (Apache-2.0 OR MIT)"
 keywords = ["fast", "json", "dataclass", "dataclasses", "datetime", "rfc", 
"8259", "3339"]
 include = [
@@ -33,9 +33,7 @@
 # Avoid bundling libgcc on musl.
 unwind = ["unwinding"]
 
-# Features detected by build.rs. Do not specify.
 avx512 = []
-cold_path = []
 generic_simd = []
 inline_int = []
 inline_str = []
@@ -61,7 +59,6 @@
 [build-dependencies]
 cc = { version = "1" }
 pyo3-build-config = { version = "0.28" }
-version_check = { version = "0.9" }
 
 [profile.dev]
 codegen-units = 1
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/orjson-3.11.8/README.md new/orjson-3.11.9/README.md
--- old/orjson-3.11.8/README.md 2026-03-31 17:25:41.000000000 +0200
+++ new/orjson-3.11.9/README.md 2026-05-06 16:12:18.000000000 +0200
@@ -1069,7 +1069,7 @@
 
 ## Packaging
 
-To package orjson requires at least [Rust](https://www.rust-lang.org/) 1.89,
+To package orjson requires at least [Rust](https://www.rust-lang.org/) 1.95,
 a C compiler, and the [maturin](https://github.com/PyO3/maturin) build tool.
 The recommended build command is:
 
@@ -1077,7 +1077,7 @@
 maturin build --release --strip
 ```
 
-The project's own CI tests against `nightly-2026-03-28` and stable 1.89. It
+The project's own CI tests against `nightly-2026-05-01` and stable 1.95. It
 is prudent to pin the nightly version because that channel can introduce
 breaking changes. There is a significant performance benefit to using
 nightly.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/orjson-3.11.8/bench/benchmark_dumps.py 
new/orjson-3.11.9/bench/benchmark_dumps.py
--- old/orjson-3.11.8/bench/benchmark_dumps.py  2026-03-31 17:25:41.000000000 
+0200
+++ new/orjson-3.11.9/bench/benchmark_dumps.py  1970-01-01 01:00:00.000000000 
+0100
@@ -1,19 +0,0 @@
-# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-# Copyright ijl (2020-2026), Aarni Koskela (2021)
-
-from json import loads as json_loads
-
-import pytest
-
-from .data import FIXTURE_AS_OBJECTS, FIXTURE_NAMES, LIBRARIES
-
-
[email protected]("library", LIBRARIES)
[email protected]("fixture", FIXTURE_NAMES)
-def test_dumps(benchmark, fixture, library):
-    dumper, _ = LIBRARIES[library]
-    benchmark.group = f"{fixture} serialization"
-    benchmark.extra_info["lib"] = library
-    data = FIXTURE_AS_OBJECTS[fixture]
-    benchmark.extra_info["correct"] = json_loads(dumper(data)) == data  # 
type: ignore
-    benchmark(dumper, data)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/orjson-3.11.8/bench/benchmark_loads.py 
new/orjson-3.11.9/bench/benchmark_loads.py
--- old/orjson-3.11.8/bench/benchmark_loads.py  2026-03-31 17:25:41.000000000 
+0200
+++ new/orjson-3.11.9/bench/benchmark_loads.py  1970-01-01 01:00:00.000000000 
+0100
@@ -1,20 +0,0 @@
-# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-# Copyright ijl (2020-2026), Aarni Koskela (2021)
-
-from json import loads as json_loads
-
-import pytest
-
-from .data import FIXTURE_AS_BYTES, FIXTURE_NAMES, LIBRARIES
-
-
[email protected]("fixture", FIXTURE_NAMES)
[email protected]("library", LIBRARIES)
-def test_loads(benchmark, fixture, library):
-    dumper, loader = LIBRARIES[library]
-    benchmark.group = f"{fixture} deserialization"
-    benchmark.extra_info["lib"] = library
-    data = FIXTURE_AS_BYTES[fixture]
-    correct = json_loads(dumper(loader(data))) == json_loads(data)  # type: 
ignore
-    benchmark.extra_info["correct"] = correct
-    benchmark(loader, data)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/orjson-3.11.8/bench/data.py 
new/orjson-3.11.9/bench/data.py
--- old/orjson-3.11.8/bench/data.py     2026-03-31 17:25:41.000000000 +0200
+++ new/orjson-3.11.9/bench/data.py     1970-01-01 01:00:00.000000000 +0100
@@ -1,43 +0,0 @@
-# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-# Copyright ijl (2019-2026), Aarni Koskela (2021)
-
-import gc
-from json import dumps as _json_dumps
-from json import loads as json_loads
-
-from orjson import dumps as orjson_dumps
-from orjson import loads as orjson_loads
-
-from .util import read_fixture
-
-
-def json_dumps(obj):
-    return _json_dumps(obj).encode("utf-8")
-
-
-LIBRARIES = {
-    "orjson": (orjson_dumps, orjson_loads),
-    "json": (json_dumps, json_loads),
-}
-
-
-FIXTURE_NAMES = (
-    "canada.json",
-    "citm_catalog.json",
-    "github.json",
-    "twitter.json",
-)
-
-FIXTURE_AS_BYTES = {name: read_fixture(f"{name}.xz") for name in FIXTURE_NAMES}
-
-FIXTURE_AS_OBJECTS = {
-    name: orjson_loads(FIXTURE_AS_BYTES[name]) for name in FIXTURE_NAMES
-}
-
-
-if hasattr(gc, "freeze"):
-    gc.freeze()
-if hasattr(gc, "collect"):
-    gc.collect()
-if hasattr(gc, "disable"):
-    gc.disable()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/orjson-3.11.8/bench/requirements.txt 
new/orjson-3.11.9/bench/requirements.txt
--- old/orjson-3.11.8/bench/requirements.txt    2026-03-31 17:25:41.000000000 
+0200
+++ new/orjson-3.11.9/bench/requirements.txt    1970-01-01 01:00:00.000000000 
+0100
@@ -1,6 +0,0 @@
-memory-profiler; python_version<"3.15" and implementation_name=="cpython"
-pandas; python_version<"3.15" and implementation_name=="cpython"
-pytest-benchmark
-pytest-random-order
-seaborn; python_version<"3.15" and implementation_name=="cpython"
-tabulate
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/orjson-3.11.8/bench/run_func 
new/orjson-3.11.9/bench/run_func
--- old/orjson-3.11.8/bench/run_func    2026-03-31 17:25:41.000000000 +0200
+++ new/orjson-3.11.9/bench/run_func    1970-01-01 01:00:00.000000000 +0100
@@ -1,34 +0,0 @@
-#!/usr/bin/env python3
-# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-# Copyright ijl (2018-2025), Aarni Koskela (2021)
-
-import sys
-import lzma
-import os
-import gc
-
-if hasattr(os, "sched_setaffinity"):
-    os.sched_setaffinity(os.getpid(), {0, 1})
-
-from orjson import dumps, loads
-
-filename = sys.argv[1]
-n = int(sys.argv[3]) if len(sys.argv) >= 4 else 1000
-
-with lzma.open(filename, "r") as fileh:
-    file_bytes = fileh.read()
-
-if hasattr(gc, "freeze"):
-    gc.freeze()
-if hasattr(gc, "collect"):
-    gc.collect()
-if hasattr(gc, "disable"):
-    gc.disable()
-
-if sys.argv[2] == "dumps":
-    file_obj = loads(file_bytes)
-    for _ in range(n):
-        _ = dumps(file_obj)
-elif sys.argv[2] == "loads":
-    for _ in range(n):
-        _ = loads(file_bytes)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/orjson-3.11.8/bench/util.py 
new/orjson-3.11.9/bench/util.py
--- old/orjson-3.11.8/bench/util.py     2026-03-31 17:25:41.000000000 +0200
+++ new/orjson-3.11.9/bench/util.py     1970-01-01 01:00:00.000000000 +0100
@@ -1,20 +0,0 @@
-# SPDX-License-Identifier: (Apache-2.0 OR MIT)
-# Copyright ijl (2018-2022), Aarni Koskela (2021)
-
-import lzma
-import os
-from pathlib import Path
-
-dirname = os.path.join(os.path.dirname(__file__), "../data")
-
-if hasattr(os, "sched_setaffinity"):
-    os.sched_setaffinity(os.getpid(), {0, 1})
-
-
-def read_fixture(filename: str) -> bytes:
-    path = Path(dirname, filename)
-    if path.suffix == ".xz":
-        contents = lzma.decompress(path.read_bytes())
-    else:
-        contents = path.read_bytes()
-    return contents
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/orjson-3.11.8/build.rs new/orjson-3.11.9/build.rs
--- old/orjson-3.11.8/build.rs  2026-03-31 17:25:41.000000000 +0200
+++ new/orjson-3.11.9/build.rs  2026-05-06 16:12:18.000000000 +0200
@@ -24,8 +24,7 @@
                 println!("cargo:rustc-cfg=feature=\"inline_str\"");
             }
         }
-        pyo3_build_config::PythonImplementation::GraalPy => 
not_supported("GraalPy"),
-        pyo3_build_config::PythonImplementation::PyPy => not_supported("PyPy"),
+        _ => not_supported(&python_config.implementation.to_string()),
     }
 
     for cfg in python_config.build_script_outputs() {
@@ -39,7 +38,6 @@
     println!("cargo:rerun-if-env-changed=LDFLAGS");
     println!("cargo:rerun-if-env-changed=ORJSON_BUILD_FREETHREADED");
     println!("cargo:rerun-if-env-changed=RUSTFLAGS");
-    println!("cargo:rustc-check-cfg=cfg(cold_path)");
     println!("cargo:rustc-check-cfg=cfg(CPython)");
     println!("cargo:rustc-check-cfg=cfg(GraalPy)");
     println!("cargo:rustc-check-cfg=cfg(optimize)");
@@ -58,21 +56,6 @@
         println!("cargo:rustc-cfg=feature=\"avx512\"");
     }
 
-    #[cfg(target_arch = "aarch64")]
-    if version_check::supports_feature("portable_simd").unwrap_or(false) {
-        println!("cargo:rustc-cfg=feature=\"generic_simd\"");
-    }
-
-    if version_check::is_min_version("1.95.0")
-        
.unwrap_or(version_check::supports_feature("cold_path").unwrap_or(false))
-    {
-        println!("cargo:rustc-cfg=feature=\"cold_path\"");
-    }
-
-    if version_check::supports_feature("optimize_attribute").unwrap_or(false) {
-        println!("cargo:rustc-cfg=feature=\"optimize\"");
-    }
-
     cc::Build::new()
         .file("include/yyjson/yyjson.c")
         .include("include/yyjson")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/orjson-3.11.8/pyproject.toml 
new/orjson-3.11.9/pyproject.toml
--- old/orjson-3.11.8/pyproject.toml    2026-03-31 17:25:41.000000000 +0200
+++ new/orjson-3.11.9/pyproject.toml    2026-05-06 16:12:18.000000000 +0200
@@ -1,6 +1,6 @@
 [project]
 name = "orjson"
-version = "3.11.8"
+version = "3.11.9"
 repository = "https://github.com/ijl/orjson";
 description = "Fast, correct Python JSON library supporting dataclasses, 
datetimes, and numpy"
 requires-python = ">=3.10"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/orjson-3.11.8/script/develop 
new/orjson-3.11.9/script/develop
--- old/orjson-3.11.8/script/develop    2026-03-31 17:25:41.000000000 +0200
+++ new/orjson-3.11.9/script/develop    2026-05-06 16:12:18.000000000 +0200
@@ -22,6 +22,6 @@
 
 rm -f ${CARGO_TARGET_DIR}/wheels/*.whl
 
-maturin build --target="${TARGET}" --features=no_panic 
--compatibility="${ORJSON_COMPATIBILITY}" "$@"
+maturin build --target="${TARGET}" --features=no_panic,optimize 
--compatibility="${ORJSON_COMPATIBILITY}" --release
 
 uv pip install --link-mode=copy ${CARGO_TARGET_DIR}/wheels/*.whl
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/orjson-3.11.8/script/install-fedora 
new/orjson-3.11.9/script/install-fedora
--- old/orjson-3.11.8/script/install-fedora     2026-03-31 17:25:41.000000000 
+0200
+++ new/orjson-3.11.9/script/install-fedora     2026-05-06 16:12:18.000000000 
+0200
@@ -5,9 +5,18 @@
 export VENV="${VENV:-.venv}"
 export CARGO_TARGET_DIR="${CARGO_TARGET_DIR:-target}"
 
-rm /etc/yum.repos.d/fedora-cisco-openh264.repo || true
+rm -f /etc/yum.repos.d/fedora-cisco-openh264.repo || true
+echo 'max_parallel_downloads=10' >> /etc/dnf/dnf.conf
+echo 'timeout=1' >> /etc/dnf/dnf.conf
 
-dnf install --setopt=install_weak_deps=false -y rustup clang lld 
"${PYTHON_PACKAGE}" python3-uv
+packages="rustup clang lld "${PYTHON_PACKAGE}" python3-uv"
+
+if [[ $# -gt 1 ]]; then
+    packages="${packages} $@"
+fi
+
+
+dnf install --setopt=install_weak_deps=false -y $packages
 
 rustup-init --default-toolchain "${RUST_TOOLCHAIN}-${TARGET}" --profile 
minimal --component rust-src -y
 source "${HOME}/.cargo/env"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/orjson-3.11.8/src/lib.rs new/orjson-3.11.9/src/lib.rs
--- old/orjson-3.11.8/src/lib.rs        2026-03-31 17:25:41.000000000 +0200
+++ new/orjson-3.11.9/src/lib.rs        2026-05-06 16:12:18.000000000 +0200
@@ -1,11 +1,10 @@
 // SPDX-License-Identifier: MPL-2.0
 // Copyright ijl (2018-2026)
 
-#![cfg_attr(feature = "cold_path", feature(cold_path))]
 #![cfg_attr(feature = "generic_simd", feature(portable_simd))]
 #![cfg_attr(feature = "optimize", feature(optimize_attribute))]
 #![allow(unused_features)] // portable_simd on universal2 cross-compile
-#![allow(stable_features)] // MSRV 1.95, cold_path
+#![allow(stable_features)]
 #![allow(static_mut_refs)]
 #![allow(unused_unsafe)]
 #![warn(clippy::complexity)]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/orjson-3.11.8/src/util.rs 
new/orjson-3.11.9/src/util.rs
--- old/orjson-3.11.8/src/util.rs       2026-03-31 17:25:41.000000000 +0200
+++ new/orjson-3.11.9/src/util.rs       2026-05-06 16:12:18.000000000 +0200
@@ -53,7 +53,6 @@
 
 macro_rules! cold_path {
     () => {
-        #[cfg(feature = "cold_path")]
         core::hint::cold_path();
     };
 }

++++++ vendor.tar.xz ++++++
++++ 528465 lines of diff (skipped)

Reply via email to