2025-02-07 13:11:05 +00:00
#
# spec file for package python-orjson
#
# Copyright (c) 2025 SUSE LLC
#
# 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/
#
%{?sle15_python_module_pythons}
Name : python-orjson
Version : 3.10.15
Release : 0
Summary : Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy
License : Apache-2.0 OR MIT
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
Source1 : vendor.tar.xz
Source2 : https://files.pythonhosted.org/packages/source/o/orjson/orjson-%{version} .tar.gz
Source3 : devendor-sdist.sh
Source4 : PACKAGING_README.md
2026-01-26 09:53:38 +01:00
# PATCH-FIX-OPENSUSE CVE-2025-67221.patch gh#ijl/orjson#637
Patch0 : CVE-2025-67221.patch
2025-02-07 13:11:05 +00:00
BuildRequires : %{python_module base >= 3.8}
BuildRequires : %{python_module maturin >= 1}
BuildRequires : %{python_module pip}
BuildRequires : %{python_module setuptools}
BuildRequires : %{python_module wheel}
BuildRequires : cargo-packaging
BuildRequires : fdupes
BuildRequires : python-rpm-macros
# SECTION test requirements
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}
BuildRequires : timezone
# /SECTION
%python_subpackages
%description
orjson is a fast JSON library for Python.
It benchmarks as the fastest Python library for JSON.
%prep
2026-01-26 09:53:38 +01:00
%autosetup -p1 -a1 -n orjson-%{version}
2025-02-07 13:11:05 +00:00
%build
%pyproject_wheel
%install
%pyproject_install
%python_expand %fdupes %{buildroot} %{$python_sitearch}
%check
donttest=" b y d e f a u l t n o t h i n g f a i l s "
%ifarch %ix86 %arm32
# test_numpy_array_d1_uintp and test_numpy_array_d1_intp fail on 32bit
donttest=" $ d o n t t e s t o r t e s t _ n u m p y _ a r r a y _ d 1 _ i n t p o r t e s t _ n u m p y _ a r r a y _ d 1 _ u i n t p "
%endif
%ifarch ppc64le
# test_memory_loads_keys occasionally fails on crashes on ppc64le
donttest=" $ d o n t t e s t o r t e s t _ m e m o r y _ l o a d s _ k e y s "
%endif
%pytest_arch -k " n o t ( $ d o n t t e s t ) "
%files %{python_files}
%doc README.md CHANGELOG.md
%license LICENSE-APACHE LICENSE-MIT
%{python_sitearch} /orjson
%{python_sitearch} /orjson-%{version} .dist-info
%changelog