diff options
| author | Huang Rui <vowstar@gmail.com> | 2025-05-06 17:00:00 +0800 |
|---|---|---|
| committer | Petr Vaněk <arkamar@gentoo.org> | 2025-05-08 13:40:38 +0200 |
| commit | fb89b4e2acc3c63b7b118c168dd5d779b60f7a72 (patch) | |
| tree | 3253811b4a58414ce8e39172d3f8fd7de136b30e /dev-libs/json-parser | |
| parent | e947f6574fb75f02514df6139d6616435da115e2 (diff) | |
| download | gentoo-fb89b4e2acc3c63b7b118c168dd5d779b60f7a72.tar.gz gentoo-fb89b4e2acc3c63b7b118c168dd5d779b60f7a72.tar.bz2 gentoo-fb89b4e2acc3c63b7b118c168dd5d779b60f7a72.zip | |
dev-libs/json-parser: fix bug 954840 and 955499
Closes: https://bugs.gentoo.org/954840
Closes: https://bugs.gentoo.org/955499
Signed-off-by: Huang Rui <vowstar@gmail.com>
Upstream-PR: https://github.com/json-parser/json-parser/pull/182
Closes: https://github.com/gentoo/gentoo/pull/41956
Signed-off-by: Petr Vaněk <arkamar@gentoo.org>
Diffstat (limited to 'dev-libs/json-parser')
3 files changed, 78 insertions, 3 deletions
diff --git a/dev-libs/json-parser/files/json-parser-1.1.0-fix-suspicious-version.patch b/dev-libs/json-parser/files/json-parser-1.1.0-fix-suspicious-version.patch new file mode 100644 index 000000000000..9c65ebe66f61 --- /dev/null +++ b/dev-libs/json-parser/files/json-parser-1.1.0-fix-suspicious-version.patch @@ -0,0 +1,31 @@ +From f9b99a73ca108e4073b4fe501a3426dd4e21bba6 Mon Sep 17 00:00:00 2001 +From: Huang Rui <vowstar@gmail.com> +Date: Tue, 6 May 2025 16:38:59 +0800 +Subject: [PATCH] build(python): Update package name and add version in + setup.py + +- Change package name to use hyphens instead of spaces +- Add version 1.1.0 to setup configuration + +Signed-off-by: Huang Rui <vowstar@gmail.com> +--- + bindings/python/setup.py | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/bindings/python/setup.py b/bindings/python/setup.py +index 57be7d584d5a..cac13595eec9 100644 +--- a/bindings/python/setup.py ++++ b/bindings/python/setup.py +@@ -8,7 +8,8 @@ ext_modules.append(Extension('jsonparser', + + + setup( +- name = 'json-parser python wrapper', ++ name = 'json-parser-python-wrapper', ++ version = '1.1.0', + cmdclass = {'build_ext': build_ext}, + ext_modules = ext_modules + ) +-- +2.49.0 + diff --git a/dev-libs/json-parser/files/json-parser-1.1.0-python3-pylong.patch b/dev-libs/json-parser/files/json-parser-1.1.0-python3-pylong.patch new file mode 100644 index 000000000000..858afa485a69 --- /dev/null +++ b/dev-libs/json-parser/files/json-parser-1.1.0-python3-pylong.patch @@ -0,0 +1,40 @@ +From 5bd7dc824bcffd867edef7ef80cc896c8c51ce38 Mon Sep 17 00:00:00 2001 +From: Huang Rui <vowstar@gmail.com> +Date: Tue, 6 May 2025 16:17:53 +0800 +Subject: [PATCH] fix(python): Add Python 3 compatibility macros for PyInt + functions + +- Add PY_MAJOR_VERSION check to define PyInt_* macros for Python 3 +- Replace deprecated PyInt functions with PyLong equivalents in Python 3 + +Signed-off-by: Huang Rui <vowstar@gmail.com> +--- + bindings/python/wrap_json.c | 12 ++++++++++++ + 1 file changed, 12 insertions(+) + +diff --git a/bindings/python/wrap_json.c b/bindings/python/wrap_json.c +index bd0360512fd3..1d42a82aad77 100644 +--- a/bindings/python/wrap_json.c ++++ b/bindings/python/wrap_json.c +@@ -27,6 +27,18 @@ + + #include "../../json.c" + ++#include <Python.h> ++ ++#if PY_MAJOR_VERSION >= 3 ++ /* Define PyInt_* only for Python 3, where they no longer exist */ ++ #ifndef PyInt_FromLong ++ #define PyInt_FromLong PyLong_FromLong ++ #endif ++ #ifndef PyInt_AsLong ++ #define PyInt_AsLong PyLong_AsLong ++ #endif ++#endif ++ + PyObject * json_exception = PyErr_NewException("jsonparser.JSONException", + NULL, NULL); + +-- +2.49.0 + diff --git a/dev-libs/json-parser/json-parser-1.1.0_p20211208.ebuild b/dev-libs/json-parser/json-parser-1.1.0_p20211208.ebuild index 184acdce391c..f5f622296c05 100644 --- a/dev-libs/json-parser/json-parser-1.1.0_p20211208.ebuild +++ b/dev-libs/json-parser/json-parser-1.1.0_p20211208.ebuild @@ -1,4 +1,4 @@ -# Copyright 2022-2024 Gentoo Authors +# Copyright 2022-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -6,7 +6,7 @@ EAPI=8 DISTUTILS_EXT=1 DISTUTILS_OPTIONAL=1 DISTUTILS_USE_PEP517=setuptools -PYTHON_COMPAT=( python3_{10..13} ) +PYTHON_COMPAT=( python3_{11..13} ) inherit distutils-r1 edo toolchain-funcs @@ -35,7 +35,11 @@ BDEPEND=" ) " -PATCHES=( "${FILESDIR}/${PN}-1.1.0-pkgconfig-libdir.patch" ) +PATCHES=( + "${FILESDIR}/${PN}-1.1.0-pkgconfig-libdir.patch" + "${FILESDIR}/${PN}-1.1.0-python3-pylong.patch" + "${FILESDIR}/${PN}-1.1.0-fix-suspicious-version.patch" +) wrap_python() { local phase=$1 |
