diff options
| author | Liguros - Gitlab CI/CD [develop] <gitlab@liguros.net> | 2024-02-06 18:41:21 +0000 |
|---|---|---|
| committer | Liguros - Gitlab CI/CD [develop] <gitlab@liguros.net> | 2024-02-06 18:41:21 +0000 |
| commit | 28b5ba1065f9ff1e32903c1088028d9caaa9db0c (patch) | |
| tree | d95f0d082dd36897c521b5d4dbcdf5a05b23fee2 /dev-python | |
| parent | 97f3a0a782a277ae327f3c20b6ff038476d54adf (diff) | |
| download | baldeagleos-repo-28b5ba1065f9ff1e32903c1088028d9caaa9db0c.tar.gz baldeagleos-repo-28b5ba1065f9ff1e32903c1088028d9caaa9db0c.tar.xz baldeagleos-repo-28b5ba1065f9ff1e32903c1088028d9caaa9db0c.zip | |
Adding metadata
Diffstat (limited to 'dev-python')
25 files changed, 868 insertions, 7 deletions
diff --git a/dev-python/aiofiles/aiofiles-23.2.1.ebuild b/dev-python/aiofiles/aiofiles-23.2.1.ebuild index 3b1451d8f036..183990a8fde3 100644 --- a/dev-python/aiofiles/aiofiles-23.2.1.ebuild +++ b/dev-python/aiofiles/aiofiles-23.2.1.ebuild @@ -16,7 +16,7 @@ HOMEPAGE=" LICENSE="Apache-2.0" SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~loong ~riscv ~x86" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~riscv ~x86" BDEPEND=" test? ( diff --git a/dev-python/cli-helpers/Manifest b/dev-python/cli-helpers/Manifest index 4499213caf40..e9b8a9ec5562 100644 --- a/dev-python/cli-helpers/Manifest +++ b/dev-python/cli-helpers/Manifest @@ -1 +1,2 @@ DIST cli_helpers-2.3.0.gh.tar.gz 34374 BLAKE2B 83978ee17aec8a02173460cf5d5c42751d4745c63a1f83c8fafdd55fcfb31e04d02a61f90db4a4fe8ba2049167306b06e1389db15230558a646589e3834745de SHA512 ee5f2adbca54c62c2f40be4c7b418760d12f331737a65bafdb8209989fc866f35d6c2ea1b9b0a12add6ed3fa576a84a2c8f62a2f3babf58706660f7d7eb8eb57 +DIST cli_helpers-2.3.1.gh.tar.gz 34372 BLAKE2B 00cafd4d704e2aa8ac68d372505adffd0d6b42b03dcc320c858e2085eb32a11112e0819cbabc4eddd1e8e9f11cb101bb8fc9b87f49c3b7fec289acfca792bb22 SHA512 ea2449f7d8b87da62a6a2bc8a10eb726a927b0cf62431016125aa30a6f7bcbee3b396364a78f749cb22c86427ca8fc7e46aaac19ea0f93ef6dee661653c2f5c0 diff --git a/dev-python/cli-helpers/cli-helpers-2.3.1.ebuild b/dev-python/cli-helpers/cli-helpers-2.3.1.ebuild new file mode 100644 index 000000000000..3b297d255145 --- /dev/null +++ b/dev-python/cli-helpers/cli-helpers-2.3.1.ebuild @@ -0,0 +1,35 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{8,9,10,11,12} ) + +inherit distutils-r1 + +MY_P=cli_helpers-${PV} +DESCRIPTION="Python helpers for common CLI tasks" +HOMEPAGE=" + https://cli-helpers.rtfd.io/ + https://github.com/dbcli/cli_helpers/ + https://pypi.org/project/cli-helpers/ +" +SRC_URI=" + https://github.com/dbcli/cli_helpers/archive/v${PV}.tar.gz + -> ${MY_P}.gh.tar.gz +" +S=${WORKDIR}/${MY_P} + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" + +RDEPEND=" + >=dev-python/configobj-5.0.5[${PYTHON_USEDEP}] + >=dev-python/pygments-2.4.0[${PYTHON_USEDEP}] + >=dev-python/tabulate-0.9.0[${PYTHON_USEDEP}] + dev-python/wcwidth[${PYTHON_USEDEP}] +" + +distutils_enable_tests pytest diff --git a/dev-python/leechcorepyc/Manifest b/dev-python/leechcorepyc/Manifest index 97630a1da22a..a0b88a3f7aca 100644 --- a/dev-python/leechcorepyc/Manifest +++ b/dev-python/leechcorepyc/Manifest @@ -1 +1,2 @@ DIST leechcorepyc-2.16.5.tar.gz 177365 BLAKE2B a5193e6e6c3fc2dc63358f62a2240b3a186b2acb37968597c5b5c690fbc94487c17bef55e8123bfdc55df2aa8668f667750a850fe4480b08d85bc311b1d2a95d SHA512 8d9b556d7ebc7de474dc853f9dfa005f91a19e6f7672d4021bc83c48b7d3ab0b6617bdbaf79e79b2fc930b64f448e3b8849d83c735077fd98776b026cff57a30 +DIST leechcorepyc-2.16.9.tar.gz 178656 BLAKE2B 76cefea2d8c30c88ae649da6c95f420b366e6b7ec8a44339cda6bd65b890b02196ff19d3b7d8218c87a73256e079fdd51dcb0499934fef0145e4a404376be7de SHA512 5a5455d0401177d2ae4f6b22a0dbf1f4ddce3458edb4cea04c8a127a6baa7083c83ba79d3d236a6cec15e8a1c05c4a8c747d7053b451dbed9b6a8defa17ec288 diff --git a/dev-python/leechcorepyc/files/leechcorepyc-2.16.9-respect-CC.patch b/dev-python/leechcorepyc/files/leechcorepyc-2.16.9-respect-CC.patch new file mode 100644 index 000000000000..7ad3aac070ab --- /dev/null +++ b/dev-python/leechcorepyc/files/leechcorepyc-2.16.9-respect-CC.patch @@ -0,0 +1,30 @@ +--- a/leechcore/Makefile ++++ b/leechcore/Makefile +@@ -1,5 +1,6 @@ +-CC=gcc
+-CFLAGS += -I. -D LINUX -D _GNU_SOURCE -shared -fPIC -fvisibility=hidden -pthread `pkg-config libusb-1.0 --libs --cflags`
++CC?=gcc
++PKG_CONFIG ?= pkg-config
++CFLAGS += -I. -D LINUX -D _GNU_SOURCE -shared -fPIC -fvisibility=hidden -pthread `$(PKG_CONFIG) libusb-1.0 --libs --cflags`
+ # DEBUG FLAGS BELOW
+ # export ASAN_OPTIONS=strict_string_checks=1:detect_stack_use_after_return=1:check_initialization_order=1:strict_init_order=1:detect_invalid_pointer_pairs=2
+ # CFLAGS += -g -O0 -Wextra -Wno-unused-parameter -Wno-cast-function-type
+--- a/leechcore_device_rawtcp/Makefile ++++ b/leechcore_device_rawtcp/Makefile +@@ -1,4 +1,4 @@ +-CC=gcc ++CC?=gcc + CFLAGS += -I. -I../includes -D LINUX -shared -fPIC -fvisibility=hidden + LDFLAGS += -g -shared + DEPS = +--- a/leechcore_ft601_driver_linux/Makefile ++++ b/leechcore_ft601_driver_linux/Makefile +@@ -1,5 +1,6 @@ +-CC=gcc
+-CFLAGS += -I. -D LINUX -shared -fPIC -fvisibility=hidden `pkg-config libusb-1.0 --libs --cflags`
++CC?=gcc
++PKG_CONFIG ?= pkg-config
++CFLAGS += -I. -D LINUX -shared -fPIC -fvisibility=hidden `$(PKG_CONFIG) libusb-1.0 --libs --cflags`
+ LDFLAGS += -g -shared
+ DEPS = leechcore_ft601_driver_linux.h
+ OBJ = fpga_libusb.o leechcore_ft601_driver_linux.o
diff --git a/dev-python/leechcorepyc/leechcorepyc-2.16.9.ebuild b/dev-python/leechcorepyc/leechcorepyc-2.16.9.ebuild new file mode 100644 index 000000000000..4e44650b2882 --- /dev/null +++ b/dev-python/leechcorepyc/leechcorepyc-2.16.9.ebuild @@ -0,0 +1,41 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_EXT=1 +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{8,9,10,11,12} ) + +inherit distutils-r1 toolchain-funcs pypi + +DESCRIPTION="Python binding for LeechCore Physical Memory Acquisition Library" +HOMEPAGE="https://github.com/ufrisk/LeechCore" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +# leechcorepyc ships with a bundled version of the LeechCore library. So we +# don't depend on the library here. But we must be aware this module doesn't +# use the system library. +DEPEND="virtual/libusb:=" +RDEPEND="${DEPEND}" +BDEPEND="virtual/pkgconfig" + +PATCHES=( + "${FILESDIR}/${PN}-2.16.9-respect-CC.patch" +) + +src_prepare() { + default + + # Avoid redefining _FORTIFY_SOURCE. See #893824, #906715. + sed -i -e 's/ -D_FORTIFY_SOURCE=2 / /g' leechcore/Makefile || die +} + +src_configure() { + tc-export CC + + distutils-r1_src_configure +} diff --git a/dev-python/moto/moto-5.0.1.ebuild b/dev-python/moto/moto-5.0.1.ebuild index f5be3a7de576..0629a89f14e3 100644 --- a/dev-python/moto/moto-5.0.1.ebuild +++ b/dev-python/moto/moto-5.0.1.ebuild @@ -96,10 +96,15 @@ python_test() { # broken by new urllib3 tests/test_moto_api/recorder/test_recorder.py::TestRecorder::test_s3_upload_data tests/test_moto_api/recorder/test_recorder.py::TestRecorder::test_s3_upload_file_using_requests - tests/test_s3/test_s3.py::test_upload_from_file_to_presigned_url - tests/test_s3/test_s3.py::test_put_chunked_with_v4_signature_in_body + tests/test_moto_api/recorder/test_recorder.py::TestThreadedMotoServer::test_server tests/test_s3/test_s3.py::test_presigned_put_url_with_approved_headers tests/test_s3/test_s3.py::test_presigned_put_url_with_custom_headers + tests/test_s3/test_s3.py::test_put_chunked_with_v4_signature_in_body + tests/test_s3/test_s3.py::test_upload_from_file_to_presigned_url + tests/test_s3/test_s3_bucket_policy.py::TestBucketPolicy::test_block_all_actions + tests/test_s3/test_s3_bucket_policy.py::TestBucketPolicy::test_block_all_with_different_principal + tests/test_s3/test_s3_bucket_policy.py::TestBucketPolicy::test_block_or_allow_get_object + tests/test_s3/test_s3_bucket_policy.py::TestBucketPolicy::test_block_put_object ) local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 diff --git a/dev-python/numpy/Manifest b/dev-python/numpy/Manifest index f064bf22b4ce..d3efe8e51057 100644 --- a/dev-python/numpy/Manifest +++ b/dev-python/numpy/Manifest @@ -1,3 +1,4 @@ DIST numpy-1.26.1.tar.gz 15651806 BLAKE2B 2b7fe13675b6f11b8f19c2dc671c84418fa959f403ff32c15ae6da37ae8137d062bb47db0180031c90f54451d69d640ec4ebfad0a4eefb32afc55df45c6824ab SHA512 abe5919029fc66961e8f44fdd503b54c291ce75b0d95e3f8bb61ee39a25d62142fbece5734fd7e9cbf65511f9d746fa61796f0d68e6dc2816c0e7747e286e505 DIST numpy-1.26.2.tar.gz 15664248 BLAKE2B 006e511e27c009f27bf4bf6c8c30c84a4bf0e8b1ff53f4e031089f28c1cfd168ec0d037952fe8f377f9a1d6e1ab642a84c095edeee5696b18053fd5cb7550586 SHA512 9986cd34dda921fbc152c3be0e39f003035787ea1e055452b9259d02c423d413080a0c7e4e19fd38d9e28f66d428719d6ebe784c24ae17249ff56494950daf4b DIST numpy-1.26.3.tar.gz 15679696 BLAKE2B 4c063e1a495b187049b5604686c0411b056fd03a69b5044cff10693694a7f055c87a017334cf8d05aa4a4cb87896fdf9203f51742d3cf83dbaf611b0e6e4091a SHA512 25556b41e2db9cfc52c1dfa61b05e4fc1b7b6df3b169f365375575d1146857fdb5ff91ca1508b968c296b7a06e5c6d95e82c41cdc3561587a46d3aa178f6305d +DIST numpy-1.26.4.tar.gz 15786129 BLAKE2B ee759d3a857111bc494d5e989a7b005375d942b2a89cda69be4a3bd7c6cb195003fd2a8a0535f1858d8977ff688b0ec36360dcba9c3160206eedce5e28f191ef SHA512 f7121ab4099fa0686f9c095d456baa4a5869d651d7b7a06385f885f329cf08f11024b5df5e7b4ee705970062a8102ec4f709512eabbfd5c9fccce4ef83b9c208 diff --git a/dev-python/numpy/numpy-1.26.4.ebuild b/dev-python/numpy/numpy-1.26.4.ebuild new file mode 100644 index 000000000000..f8e42fdd6e2c --- /dev/null +++ b/dev-python/numpy/numpy-1.26.4.ebuild @@ -0,0 +1,169 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_EXT=1 +DISTUTILS_USE_PEP517=meson-python +PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 ) +PYTHON_REQ_USE="threads(+)" +FORTRAN_NEEDED=lapack + +inherit distutils-r1 flag-o-matic fortran-2 pypi toolchain-funcs + +DESCRIPTION="Fast array and numerical python library" +HOMEPAGE=" + https://numpy.org/ + https://github.com/numpy/numpy/ + https://pypi.org/project/numpy/ +" + +LICENSE="BSD" +SLOT="0" +# +lapack because the internal fallbacks are pretty slow. Building without blas +# is barely supported anyway, see bug #914358. +IUSE="+lapack" +if [[ ${PV} != *_[rab]* ]] ; then + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +fi + +RDEPEND=" + lapack? ( + >=virtual/cblas-3.8 + >=virtual/lapack-3.8 + ) +" +BDEPEND=" + ${RDEPEND} + >=dev-build/meson-1.1.0 + >=dev-python/cython-3.0.0[${PYTHON_USEDEP}] + lapack? ( + virtual/pkgconfig + ) + test? ( + $(python_gen_cond_dep ' + >=dev-python/cffi-1.14.0[${PYTHON_USEDEP}] + ' 'python*') + dev-python/charset-normalizer[${PYTHON_USEDEP}] + >=dev-python/hypothesis-5.8.0[${PYTHON_USEDEP}] + >=dev-python/pytz-2019.3[${PYTHON_USEDEP}] + ) +" + +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +python_prepare_all() { + append-flags -fno-strict-aliasing + + distutils-r1_python_prepare_all +} + +python_configure_all() { + DISTUTILS_ARGS=( + -Dallow-noblas=$(usex !lapack true false) + -Dblas=$(usev lapack cblas) + -Dlapack=$(usev lapack lapack) + # TODO: cpu-* options + ) +} + +python_test() { + local EPYTEST_DESELECT=( + # Very disk-and-memory-hungry + lib/tests/test_io.py::TestSaveTxt::test_large_zip + lib/tests/test_io.py::TestSavezLoad::test_closing_fid + lib/tests/test_io.py::TestSavezLoad::test_closing_zipfile_after_load + + # Precision problems + core/tests/test_umath_accuracy.py::TestAccuracy::test_validate_transcendentals + + # Runs the whole test suite recursively, that's just crazy + core/tests/test_mem_policy.py::test_new_policy + + typing/tests/test_typing.py + # Uses huge amount of memory + core/tests/test_mem_overlap.py + 'core/tests/test_multiarray.py::TestDot::test_huge_vectordot[complex128]' + + # TODO: crashes + lib/tests/test_histograms.py::TestHistogram::test_big_arrays + + # likely a test problem + # https://github.com/numpy/numpy/issues/25135 + core/tests/test_cython.py::test_conv_intp + + # flaky + f2py/tests/test_crackfortran.py + f2py/tests/test_data.py::TestData{,F77}::test_crackedlines + ) + + if use arm && [[ $(uname -m || echo "unknown") == "armv8l" ]] ; then + # Degenerate case of arm32 chroot on arm64, bug #774108 + EPYTEST_DESELECT+=( + core/tests/test_cpu_features.py::Test_ARM_Features::test_features + ) + fi + + if use x86 ; then + EPYTEST_DESELECT+=( + # https://github.com/numpy/numpy/issues/18388 + core/tests/test_umath.py::TestRemainder::test_float_remainder_overflow + # https://github.com/numpy/numpy/issues/18387 + random/tests/test_generator_mt19937.py::TestRandomDist::test_pareto + # more precision problems + core/tests/test_einsum.py::TestEinsum::test_einsum_sums_int16 + ) + fi + + if use hppa ; then + EPYTEST_DESELECT+=( + # TODO: Get selectedrealkind updated! + # bug #907228 + # https://github.com/numpy/numpy/issues/3424 (https://github.com/numpy/numpy/issues/3424#issuecomment-412369029) + # https://github.com/numpy/numpy/pull/21785 + f2py/tests/test_kind.py::TestKind::test_real + f2py/tests/test_kind.py::TestKind::test_quad_precision + ) + fi + + if [[ $(tc-endian) == "big" ]] ; then + # https://github.com/numpy/numpy/issues/11831 and bug #707116 + EPYTEST_DESELECT+=( + 'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f77[s1]' + 'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f90[t1]' + 'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f90[s1]' + 'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f77[t1]' + f2py/tests/test_kind.py::TestKind::test_int + ) + fi + + case "${ABI}" in + alpha|arm|hppa|m68k|o32|ppc|s390|sh|sparc|x86) + EPYTEST_DESELECT+=( + # too large for 32-bit platforms + core/tests/test_ufunc.py::TestUfunc::test_identityless_reduction_huge_array + 'core/tests/test_multiarray.py::TestDot::test_huge_vectordot[float64]' + 'core/tests/test_multiarray.py::TestDot::test_huge_vectordot[complex128]' + ) + ;; + *) + ;; + esac + + if ! has_version -b "~${CATEGORY}/${P}[${PYTHON_USEDEP}]" ; then + # depends on importing numpy.random from system namespace + EPYTEST_DESELECT+=( + 'random/tests/test_extending.py::test_cython' + ) + fi + + rm -rf numpy || die + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + epytest --pyargs numpy +} + +python_install_all() { + local DOCS=( LICENSE.txt README.md THANKS.txt ) + distutils-r1_python_install_all +} diff --git a/dev-python/pycountry/pycountry-23.12.11.ebuild b/dev-python/pycountry/pycountry-23.12.11.ebuild index 9666cdcb8c33..a2f3096dc07f 100644 --- a/dev-python/pycountry/pycountry-23.12.11.ebuild +++ b/dev-python/pycountry/pycountry-23.12.11.ebuild @@ -18,10 +18,10 @@ LICENSE="LGPL-2.1" SLOT="0" KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~loong ~mips ppc ~ppc64 ~riscv ~s390 ~sparc x86" -distutils_enable_tests pytest - BDEPEND=" test? ( dev-python/importlib-metadata[${PYTHON_USEDEP}] ) " + +distutils_enable_tests pytest diff --git a/dev-python/pygraphviz/files/pygraphviz-1.12-swig-4.2.0.patch b/dev-python/pygraphviz/files/pygraphviz-1.12-swig-4.2.0.patch new file mode 100644 index 000000000000..3daa485044ce --- /dev/null +++ b/dev-python/pygraphviz/files/pygraphviz-1.12-swig-4.2.0.patch @@ -0,0 +1,290 @@ +https://bugs.gentoo.org/921637 +https://github.com/swig/swig/issues/2778 +https://github.com/pygraphviz/pygraphviz/commit/6ecae22cc382407652f9d3b57e9da89a3a03043b + +From 6ecae22cc382407652f9d3b57e9da89a3a03043b Mon Sep 17 00:00:00 2001 +From: William S Fulton <wsf@fultondesigns.co.uk> +Date: Fri, 26 Jan 2024 00:52:44 +0000 +Subject: [PATCH] Remove outdated pystrings.swg (#508) + +Remove pystring.swg - a very ancient copy from SWIG which does not +compile when using swig-4.2.0. Instead SWIG's version of pystrings.swg +that is kept up to date in SWIG is used. SWIG_PYTHON_STRICT_BYTE_CHAR +needs to be defined in order to maintain the current behaviour of only +allowing Python 3 byte type instead of Python 3 string type as input. + +As the output of swig is in graphviz_wrap.c and is committed to the +repo, the updates committed in this file (keeping the current swig-4.1.1 +version). A later commit could update it to swig-4.2.0. + +Fixes build problems on Fedora where SWIG_Python_str_AsChar no longer exists, +as reported at https://github.com/swig/swig/issues/2778. +--- + pygraphviz/graphviz.i | 4 ++ + pygraphviz/graphviz_wrap.c | 106 ++++++++++++++++++++++++++++--------- + pystrings.swg | 86 ------------------------------ + 3 files changed, 84 insertions(+), 112 deletions(-) + delete mode 100644 pystrings.swg + +diff --git a/pygraphviz/graphviz.i b/pygraphviz/graphviz.i +index c63eb2d3..d7c49330 100644 +--- a/pygraphviz/graphviz.i ++++ b/pygraphviz/graphviz.i +@@ -1,5 +1,9 @@ + %module graphviz + ++%begin %{ ++#define SWIG_PYTHON_STRICT_BYTE_CHAR ++%} ++ + %{ + #include "graphviz/cgraph.h" + #include "graphviz/gvc.h" +diff --git a/pygraphviz/graphviz_wrap.c b/pygraphviz/graphviz_wrap.c +index 8f4d3a62..cb06da79 100644 +--- a/pygraphviz/graphviz_wrap.c ++++ b/pygraphviz/graphviz_wrap.c +@@ -6,6 +6,9 @@ + * the SWIG interface file instead. + * ----------------------------------------------------------------------------- */ + ++#define SWIG_PYTHON_STRICT_BYTE_CHAR ++ ++ + + #define SWIG_VERSION 0x040101 + #define SWIGPYTHON +@@ -3038,49 +3041,96 @@ SWIGINTERN int + SWIG_AsCharPtrAndSize(PyObject *obj, char** cptr, size_t* psize, int *alloc) + { + #if PY_VERSION_HEX>=0x03000000 ++#if defined(SWIG_PYTHON_STRICT_BYTE_CHAR) + if (PyBytes_Check(obj)) + #else ++ if (PyUnicode_Check(obj)) ++#endif ++#else + if (PyString_Check(obj)) + #endif + { + char *cstr; Py_ssize_t len; ++ int ret = SWIG_OK; + #if PY_VERSION_HEX>=0x03000000 +- PyBytes_AsStringAndSize(obj, &cstr, &len); +- if(alloc) *alloc = SWIG_NEWOBJ; ++#if !defined(SWIG_PYTHON_STRICT_BYTE_CHAR) ++ if (!alloc && cptr) { ++ /* We can't allow converting without allocation, since the internal ++ representation of string in Python 3 is UCS-2/UCS-4 but we require ++ a UTF-8 representation. ++ TODO(bhy) More detailed explanation */ ++ return SWIG_RuntimeError; ++ } ++ obj = PyUnicode_AsUTF8String(obj); ++ if (!obj) ++ return SWIG_TypeError; ++ if (alloc) ++ *alloc = SWIG_NEWOBJ; ++#endif ++ if (PyBytes_AsStringAndSize(obj, &cstr, &len) == -1) ++ return SWIG_TypeError; + #else +- PyString_AsStringAndSize(obj, &cstr, &len); ++ if (PyString_AsStringAndSize(obj, &cstr, &len) == -1) ++ return SWIG_TypeError; + #endif + if (cptr) { + if (alloc) { +- /* +- In python the user should not be able to modify the inner +- string representation. To warranty that, if you define +- SWIG_PYTHON_SAFE_CSTRINGS, a new/copy of the python string +- buffer is always returned. +- +- The default behavior is just to return the pointer value, +- so, be careful. +- */ +-#if defined(SWIG_PYTHON_SAFE_CSTRINGS) +- if (*alloc != SWIG_OLDOBJ) +-#else +- if (*alloc == SWIG_NEWOBJ) +-#endif +- { +- *cptr = (char *)memcpy(malloc((len + 1)*sizeof(char)), cstr, sizeof(char)*(len + 1)); +- *alloc = SWIG_NEWOBJ; +- } +- else { ++ if (*alloc == SWIG_NEWOBJ) { ++ *cptr = (char *)memcpy(malloc((len + 1)*sizeof(char)), cstr, sizeof(char)*(len + 1)); ++ *alloc = SWIG_NEWOBJ; ++ } else { + *cptr = cstr; + *alloc = SWIG_OLDOBJ; + } + } else { ++#if PY_VERSION_HEX>=0x03000000 ++#if defined(SWIG_PYTHON_STRICT_BYTE_CHAR) ++ *cptr = PyBytes_AsString(obj); ++#else ++ assert(0); /* Should never reach here with Unicode strings in Python 3 */ ++#endif ++#else + *cptr = SWIG_Python_str_AsChar(obj); ++ if (!*cptr) ++ ret = SWIG_TypeError; ++#endif + } + } + if (psize) *psize = len + 1; +- return SWIG_OK; ++#if PY_VERSION_HEX>=0x03000000 && !defined(SWIG_PYTHON_STRICT_BYTE_CHAR) ++ Py_XDECREF(obj); ++#endif ++ return ret; + } else { ++#if defined(SWIG_PYTHON_2_UNICODE) ++#if defined(SWIG_PYTHON_STRICT_BYTE_CHAR) ++#error "Cannot use both SWIG_PYTHON_2_UNICODE and SWIG_PYTHON_STRICT_BYTE_CHAR at once" ++#endif ++#if PY_VERSION_HEX<0x03000000 ++ if (PyUnicode_Check(obj)) { ++ char *cstr; Py_ssize_t len; ++ if (!alloc && cptr) { ++ return SWIG_RuntimeError; ++ } ++ obj = PyUnicode_AsUTF8String(obj); ++ if (!obj) ++ return SWIG_TypeError; ++ if (PyString_AsStringAndSize(obj, &cstr, &len) != -1) { ++ if (cptr) { ++ if (alloc) *alloc = SWIG_NEWOBJ; ++ *cptr = (char *)memcpy(malloc((len + 1)*sizeof(char)), cstr, sizeof(char)*(len + 1)); ++ } ++ if (psize) *psize = len + 1; ++ ++ Py_XDECREF(obj); ++ return SWIG_OK; ++ } else { ++ Py_XDECREF(obj); ++ } ++ } ++#endif ++#endif ++ + swig_type_info* pchar_descriptor = SWIG_pchar_descriptor(); + if (pchar_descriptor) { + void* vptr = 0; +@@ -3311,13 +3361,17 @@ SWIG_FromCharPtrAndSize(const char* carray, size_t size) + if (carray) { + if (size > INT_MAX) { + swig_type_info* pchar_descriptor = SWIG_pchar_descriptor(); +- return pchar_descriptor ? ++ return pchar_descriptor ? + SWIG_InternalNewPointerObj((char *)(carray), pchar_descriptor, 0) : SWIG_Py_Void(); + } else { + #if PY_VERSION_HEX >= 0x03000000 +- return PyBytes_FromStringAndSize(carray, (int)(size)); ++#if defined(SWIG_PYTHON_STRICT_BYTE_CHAR) ++ return PyBytes_FromStringAndSize(carray, (Py_ssize_t)(size)); ++#else ++ return PyUnicode_DecodeUTF8(carray, (Py_ssize_t)(size), "surrogateescape"); ++#endif + #else +- return PyString_FromStringAndSize(carray, (int)(size)); ++ return PyString_FromStringAndSize(carray, (Py_ssize_t)(size)); + #endif + } + } else { +diff --git a/pystrings.swg b/pystrings.swg +deleted file mode 100644 +index 7988a353..00000000 +--- a/pystrings.swg ++++ /dev/null +@@ -1,86 +0,0 @@ +-/* Fixed fragments for work with bytes in Python 3. */ +- +-%fragment("SWIG_AsCharPtrAndSize","header",fragment="SWIG_pchar_descriptor") { +-SWIGINTERN int +-SWIG_AsCharPtrAndSize(PyObject *obj, char** cptr, size_t* psize, int *alloc) +-{ +-%#if PY_VERSION_HEX>=0x03000000 +- if (PyBytes_Check(obj)) +-%#else +- if (PyString_Check(obj)) +-%#endif +- { +- char *cstr; Py_ssize_t len; +-%#if PY_VERSION_HEX>=0x03000000 +- PyBytes_AsStringAndSize(obj, &cstr, &len); +- if(alloc) *alloc = SWIG_NEWOBJ; +-%#else +- PyString_AsStringAndSize(obj, &cstr, &len); +-%#endif +- if (cptr) { +- if (alloc) { +- /* +- In python the user should not be able to modify the inner +- string representation. To warranty that, if you define +- SWIG_PYTHON_SAFE_CSTRINGS, a new/copy of the python string +- buffer is always returned. +- +- The default behavior is just to return the pointer value, +- so, be careful. +- */ +-%#if defined(SWIG_PYTHON_SAFE_CSTRINGS) +- if (*alloc != SWIG_OLDOBJ) +-%#else +- if (*alloc == SWIG_NEWOBJ) +-%#endif +- { +- *cptr = %new_copy_array(cstr, len + 1, char); +- *alloc = SWIG_NEWOBJ; +- } +- else { +- *cptr = cstr; +- *alloc = SWIG_OLDOBJ; +- } +- } else { +- *cptr = SWIG_Python_str_AsChar(obj); +- } +- } +- if (psize) *psize = len + 1; +- return SWIG_OK; +- } else { +- swig_type_info* pchar_descriptor = SWIG_pchar_descriptor(); +- if (pchar_descriptor) { +- void* vptr = 0; +- if (SWIG_ConvertPtr(obj, &vptr, pchar_descriptor, 0) == SWIG_OK) { +- if (cptr) *cptr = (char *) vptr; +- if (psize) *psize = vptr ? (strlen((char *)vptr) + 1) : 0; +- if (alloc) *alloc = SWIG_OLDOBJ; +- return SWIG_OK; +- } +- } +- } +- return SWIG_TypeError; +-} +-} +- +-%fragment("SWIG_FromCharPtrAndSize","header",fragment="SWIG_pchar_descriptor") { +-SWIGINTERNINLINE PyObject * +-SWIG_FromCharPtrAndSize(const char* carray, size_t size) +-{ +- if (carray) { +- if (size > INT_MAX) { +- swig_type_info* pchar_descriptor = SWIG_pchar_descriptor(); +- return pchar_descriptor ? +- SWIG_InternalNewPointerObj(%const_cast(carray,char *), pchar_descriptor, 0) : SWIG_Py_Void(); +- } else { +-%#if PY_VERSION_HEX >= 0x03000000 +- return PyBytes_FromStringAndSize(carray, %numeric_cast(size,int)); +-%#else +- return PyString_FromStringAndSize(carray, %numeric_cast(size,int)); +-%#endif +- } +- } else { +- return SWIG_Py_Void(); +- } +-} +-} + diff --git a/dev-python/pygraphviz/pygraphviz-1.12-r1.ebuild b/dev-python/pygraphviz/pygraphviz-1.12-r1.ebuild new file mode 100644 index 000000000000..a4af4d7b5dbb --- /dev/null +++ b/dev-python/pygraphviz/pygraphviz-1.12-r1.ebuild @@ -0,0 +1,54 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_EXT=1 +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{8,9,10,11,12} ) + +inherit distutils-r1 pypi + +DESCRIPTION="Python wrapper for the Graphviz Agraph data structure" +HOMEPAGE=" + https://pygraphviz.github.io/ + https://github.com/pygraphviz/pygraphviz/ + https://pypi.org/project/pygraphviz/ +" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86 ~x86-linux ~ppc-macos ~x64-macos" + +# Note: only C API of graphviz is used, PYTHON_USEDEP unnecessary. +DEPEND=" + media-gfx/graphviz +" +RDEPEND=" + ${DEPEND} +" +BDEPEND=" + dev-lang/swig:0 +" + +distutils_enable_tests pytest + +PATCHES=( + "${FILESDIR}"/${P}-swig-4.2.0.patch +) + +src_configure() { + swig -python pygraphviz/graphviz.i || die +} + +python_test() { + cd "${BUILD_DIR}"/install || die + epytest +} + +python_install_all() { + dodoc -r examples + docompress -x /usr/share/doc/${PF}/examples + + distutils-r1_python_install_all +} diff --git a/dev-python/pysimdjson/Manifest b/dev-python/pysimdjson/Manifest index 7e239b3da5ef..dd63631fc72f 100644 --- a/dev-python/pysimdjson/Manifest +++ b/dev-python/pysimdjson/Manifest @@ -1 +1,2 @@ DIST pysimdjson-5.0.2.gh.tar.gz 3828487 BLAKE2B 6197fa9adaa353df82def9f56f821e8b7f9ec955769e9ac28d990542fc0661f3afbe9cd8f7abfc55cdce8eac94c0e5fc78dba9102c7dcfc4e3c4307d0a6fc5bf SHA512 bd7ba4d6f95967f3cd086077406a2c65b895016c9baf16fa9be6dbf77d31487ad5c40e9e3dd2496070605ef37c6a1dc75f3c1b4c96ddc8465132fbcdbde77fd3 +DIST pysimdjson-6.0.2.gh.tar.gz 4493696 BLAKE2B 18f107fa5db762813e90dbf788d54ee24f823e177d2529f5311ef2b35320a45fd698ef6f8863c45ffad96c116ad5240eaf5a6724a3030578f89111cc40f24897 SHA512 ef8856dd137780a4345539b1604af34757b58a4b4d11854e420ad2e855f3e3f251b2ba6296c04d1bf2b71f095ca95fe95e9076e8740e98c7c4404a57df3617ba diff --git a/dev-python/pysimdjson/files/pysimdjson-6.0.2-system-lib.patch b/dev-python/pysimdjson/files/pysimdjson-6.0.2-system-lib.patch new file mode 100644 index 000000000000..8a58c6de0481 --- /dev/null +++ b/dev-python/pysimdjson/files/pysimdjson-6.0.2-system-lib.patch @@ -0,0 +1,17 @@ +diff --git a/setup.py b/setup.py +index fa1ff8b..3f36120 100644 +--- a/setup.py ++++ b/setup.py +@@ -52,11 +52,11 @@ if os.getenv('BUILD_WITH_CYTHON') and CYTHON_AVAILABLE: + Extension( + 'csimdjson', + [ +- 'simdjson/simdjson.cpp', + 'simdjson/util.cpp', + 'simdjson/csimdjson.pyx' + ], + define_macros=macros, ++ libraries=["simdjson"], + extra_compile_args=extra_compile_args + ) + ], compiler_directives=compiler_directives, force=force) diff --git a/dev-python/pysimdjson/pysimdjson-6.0.2.ebuild b/dev-python/pysimdjson/pysimdjson-6.0.2.ebuild new file mode 100644 index 000000000000..c2a9cc1b5941 --- /dev/null +++ b/dev-python/pysimdjson/pysimdjson-6.0.2.ebuild @@ -0,0 +1,57 @@ +# Copyright 2020-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{8,9,10,11,12} ) +DISTUTILS_EXT=1 +inherit distutils-r1 + +DESCRIPTION="Python bindings for simdjson" +HOMEPAGE=" + https://github.com/TkTech/pysimdjson/ + https://pypi.org/project/pysimdjson/ +" +SRC_URI=" + https://github.com/TkTech/pysimdjson/archive/v${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="MIT Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +DEPEND=" + >=dev-libs/simdjson-2.0.1:= + test? ( dev-libs/simdjson[all-impls(-)] ) +" +RDEPEND=" + ${DEPEND} +" +BDEPEND=" + dev-python/cython[${PYTHON_USEDEP}] +" + +PATCHES=( + "${FILESDIR}/pysimdjson-6.0.2-system-lib.patch" +) + +distutils_enable_tests pytest + +src_prepare() { + # force regen + rm simdjson/csimdjson.cpp || die + # unbundle + rm simdjson/simdjson.cpp || die + echo "#include_next <simdjson.h>" > simdjson/simdjson.h || die + + distutils-r1_src_prepare + + export BUILD_WITH_CYTHON=1 +} + +python_test() { + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + epytest -o required_plugins= +} diff --git a/dev-python/pytest-asyncio/files/pytest-asyncio-0.23.4-pytest-8.patch b/dev-python/pytest-asyncio/files/pytest-asyncio-0.23.4-pytest-8.patch new file mode 100644 index 000000000000..d18c5714005b --- /dev/null +++ b/dev-python/pytest-asyncio/files/pytest-asyncio-0.23.4-pytest-8.patch @@ -0,0 +1,47 @@ +From d53c12962fd7250bea28e03b5a141be73cfce06b Mon Sep 17 00:00:00 2001 +From: Arjan Keeman <akeeman@users.noreply.github.com> +Date: Tue, 6 Feb 2024 14:46:13 +0100 +Subject: [PATCH] fix compatibility with pytest ^8 + +diff --git a/setup.cfg b/setup.cfg +index 45d70b3..e8cbfc5 100644 +--- a/setup.cfg ++++ b/setup.cfg +@@ -40,5 +40,5 @@ include_package_data = True + install_requires = +- pytest >= 7.0.0,<8 ++ pytest >= 7.0.0, !=8.0.0rc1, !=8.0.0rc2 + + [options.extras_require] + testing = +diff --git a/tests/markers/test_session_scope.py b/tests/markers/test_session_scope.py +index bd0baee..9049c17 100644 +--- a/tests/markers/test_session_scope.py ++++ b/tests/markers/test_session_scope.py +@@ -44,7 +44,9 @@ def test_asyncio_mark_provides_session_scoped_loop_strict_mode(pytester: Pyteste + """ + ), + ) +- subpackage_name = "subpkg" ++ ++ # subpackage_name must alphabetically come after test_module_one.py ++ subpackage_name = "z_subpkg" + subpkg = pytester.mkpydir(subpackage_name) + subpkg.joinpath("test_subpkg.py").write_text( + dedent( +diff --git a/tests/test_is_async_test.py b/tests/test_is_async_test.py +index 512243b..12e791c 100644 +--- a/tests/test_is_async_test.py ++++ b/tests/test_is_async_test.py +@@ -77,8 +77,10 @@ def test_returns_false_for_unmarked_coroutine_item_in_strict_mode(pytester: Pyte + if pytest.version_tuple < (7, 2): + # Probably related to https://github.com/pytest-dev/pytest/pull/10012 + result.assert_outcomes(failed=1) +- else: ++ elif pytest.version_tuple < (8,): + result.assert_outcomes(skipped=1) ++ else: ++ result.assert_outcomes(failed=1) + + + def test_returns_true_for_unmarked_coroutine_item_in_auto_mode(pytester: Pytester): diff --git a/dev-python/pytest-asyncio/pytest-asyncio-0.23.4.ebuild b/dev-python/pytest-asyncio/pytest-asyncio-0.23.4-r1.ebuild index 9af91a7c12ae..6d16bf51d88a 100644 --- a/dev-python/pytest-asyncio/pytest-asyncio-0.23.4.ebuild +++ b/dev-python/pytest-asyncio/pytest-asyncio-0.23.4-r1.ebuild @@ -31,6 +31,11 @@ BDEPEND=" distutils_enable_tests pytest +PATCHES=( + # https://github.com/pytest-dev/pytest-asyncio/pull/776 + "${FILESDIR}/${P}-pytest-8.patch" +) + python_test() { local EPYTEST_DESELECT=( # rely on precise warning counts @@ -41,6 +46,9 @@ python_test() { tests/test_event_loop_fixture_finalizer.py::test_event_loop_fixture_finalizer_raises_warning_when_test_leaves_loop_unclosed tests/test_pytest_min_version_warning.py tests/trio/test_fixtures.py::test_strict_mode_ignores_trio_fixtures + + # TODO + tests/test_is_async_test.py::test_returns_false_for_unmarked_coroutine_item_in_strict_mode ) local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 diff --git a/dev-python/quart/quart-0.19.4.ebuild b/dev-python/quart/quart-0.19.4.ebuild index 4e81caaa1b99..e20d1fb73d0d 100644 --- a/dev-python/quart/quart-0.19.4.ebuild +++ b/dev-python/quart/quart-0.19.4.ebuild @@ -21,7 +21,7 @@ SRC_URI=" LICENSE="MIT" SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~loong ~riscv" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~riscv" RDEPEND=" dev-python/aiofiles[${PYTHON_USEDEP}] diff --git a/dev-python/sphinxemoji/Manifest b/dev-python/sphinxemoji/Manifest index b56e6a067b7c..9985c8473562 100644 --- a/dev-python/sphinxemoji/Manifest +++ b/dev-python/sphinxemoji/Manifest @@ -1 +1,2 @@ +DIST emojicodes-0.3.1.gh.tar.gz 47298 BLAKE2B 95dc98f737d66005e101955d9da8e4a1509fbf780316a9be8050f086c4d951144de6fa016fbf7215b48e1f4f0155c11001ccc689f4537cf93bda9d4c61d3340a SHA512 1253845bd6a9ffc53a9a649a795b29fab8980f2020e86802479f886b819e8b345f94e6c1fc5f4597c5096cd3fb8bdf31389c7ba02839d7fc145d43ce914e235e DIST sphinxemoji-0.2.0.tar.gz 44431 BLAKE2B 18c9a7b4c97bc6081216cac98cecf41fef0bfc90122bd24f7d11d96f5db71437ee4e80675464fcaf9bc4c6e89c2511392600e043d4fb1904cfc57ce4efbed824 SHA512 974fcfad13f326265c679a3c97fd251b0348499fc9a72b65547b2548ddb2eb895a96f71d4b212f619287ac7c759df22fbb66f1a8cfa160287f8b25878c0f0515 diff --git a/dev-python/sphinxemoji/sphinxemoji-0.3.1.ebuild b/dev-python/sphinxemoji/sphinxemoji-0.3.1.ebuild new file mode 100644 index 000000000000..11980f505672 --- /dev/null +++ b/dev-python/sphinxemoji/sphinxemoji-0.3.1.ebuild @@ -0,0 +1,35 @@ +# Copyright 2022-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{8,9,10,11,12} ) + +inherit distutils-r1 + +MY_P=emojicodes-${PV} +DESCRIPTION="Extension to use emoji codes in your Sphinx documentation" +HOMEPAGE=" + https://pypi.org/project/sphinxemoji/ + https://github.com/sphinx-contrib/emojicodes/ +" +SRC_URI=" + https://github.com/sphinx-contrib/emojicodes/archive/v${PV}.tar.gz + -> ${MY_P}.gh.tar.gz +" +S=${WORKDIR}/${MY_P} + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +RDEPEND=" + >=dev-python/sphinx-5.0[${PYTHON_USEDEP}] +" + +python_test() { + local HTML_DOCS=() + build_sphinx docs/source + rm -r docs/source/_build || die +} diff --git a/dev-python/starlette/Manifest b/dev-python/starlette/Manifest index b7dc06a3b5e1..773e116e9b97 100644 --- a/dev-python/starlette/Manifest +++ b/dev-python/starlette/Manifest @@ -2,3 +2,4 @@ DIST starlette-0.35.1.gh.tar.gz 2842796 BLAKE2B 1ea63f30d65103754559700eb2db699b DIST starlette-0.36.1.gh.tar.gz 2843494 BLAKE2B 633cd664785f32423c0dfeab04b400340b5e3197f4ef07edca9fcda20954444ccfef1ff9afc62969d5b2914f2091e08946420931ee1ee22e1ab771fe02db13ec SHA512 9a990098a1faa179bcf8df64237147d59e3114b1336f491ca358ffd0016412f18323845eb5f8691aa41810fef455e97cb47ff34d9456a0e3a5be3eb6b23027bb DIST starlette-0.36.2.gh.tar.gz 2843707 BLAKE2B 7ec75189d7e9864fe15823692d2d264586be8772a0ff29e1d539eb15f858ef9d77ef6398e203f5c2f8a507869026fd8863931a176923f29bf11457e58cdb66fa SHA512 fedccb1db4cfe4a0dac321c843ae211e436ec5b07c0e65b663914657a9cec61a900d95dac09b6752a51defbb310a8dce30f0867574523a3c96cf33cd19b61c76 DIST starlette-0.36.3.gh.tar.gz 2844320 BLAKE2B 74e2b7449cf18393c63a2123e7537704bcf85528d504c33dc579b7660ef13c11fe74ba4da6e680063d9849f5addddaeaa5c20cc770bf658613b56da2f7d9191d SHA512 998e8958810efbc329382d86f6084d7ed90dca68bb64c51349b2dae6740ba537db10ec68a007e95a81ab06f5df39c64d998b3e87432a8fc75da3ead0963bcc5d +DIST starlette-0.37.0.gh.tar.gz 2845423 BLAKE2B f471d6170cecc0a4421b865306a76147e3c946892abef3a5f8e04a03e8aab830c5702079db9af81ef8eaaba9812286c1364599e556fb4a3c4aae511849d706a3 SHA512 7750d76f2c7d8ee5aba47ba21583d0167c16965538a3735c9098ea44c6f335d893f314550b90ddf2ac9dd592fb777f5cd8035020d7c31cff46e4813b3194730f diff --git a/dev-python/starlette/starlette-0.37.0.ebuild b/dev-python/starlette/starlette-0.37.0.ebuild new file mode 100644 index 000000000000..2bc6499860f7 --- /dev/null +++ b/dev-python/starlette/starlette-0.37.0.ebuild @@ -0,0 +1,49 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=hatchling +PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 ) + +inherit distutils-r1 + +MY_P=${P/_p/.post} +DESCRIPTION="The little ASGI framework that shines" +HOMEPAGE=" + https://www.starlette.io/ + https://github.com/encode/starlette/ + https://pypi.org/project/starlette/ +" +# no docs or tests in sdist, as of 0.27.0 +SRC_URI=" + https://github.com/encode/starlette/archive/${PV/_p/.post}.tar.gz + -> ${MY_P}.gh.tar.gz +" +S=${WORKDIR}/${MY_P} + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +RDEPEND=" + <dev-python/anyio-5[${PYTHON_USEDEP}] + >=dev-python/anyio-3.4.0[${PYTHON_USEDEP}] + >=dev-python/httpx-0.22.0[${PYTHON_USEDEP}] + dev-python/itsdangerous[${PYTHON_USEDEP}] + dev-python/jinja[${PYTHON_USEDEP}] + >=dev-python/python-multipart-0.0.7[${PYTHON_USEDEP}] + dev-python/pyyaml[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-python/trio[${PYTHON_USEDEP}] + ) +" + +EPYTEST_IGNORE=( + # Unpackaged 'databases' dependency + tests/test_database.py +) + +distutils_enable_tests pytest diff --git a/dev-python/types-psutil/Manifest b/dev-python/types-psutil/Manifest index 842b439daef8..f9ae248297e5 100644 --- a/dev-python/types-psutil/Manifest +++ b/dev-python/types-psutil/Manifest @@ -1 +1,2 @@ DIST types-psutil-5.9.5.20240106.tar.gz 14317 BLAKE2B fa7c252f45f4bb1e1cd2c2dbf615c680090500637d24f2b37745175ac0b7237918c38d17c478142f25bf0e4ada0776f989f86590fdd849b3feac6ec516f85e8d SHA512 d286f9eee84fb363248dc09f5629ff8ef717740b5e0f01475a376a94eeb996c418d0236e32e90262f12dfe3e9051f18f66b5e85e3167e81e77399cd34718aafd +DIST types-psutil-5.9.5.20240205.tar.gz 14333 BLAKE2B 6f48c008ac634a761f7eb6ed94ef1d06933da803dc8ff3111826ff91cd23ed17bc9e7fc661ea9c52075a675f9a2e6129c555e334bdf758f86f412523e27c91c7 SHA512 a8be7698a6e5bb37d45ea0a81d925835a685e5be7390401fb659a1eab71c6bf9c8529c285bcb1382b61aca37d8b4b43921f9281831bd8099402ec0078cb7334c diff --git a/dev-python/types-psutil/types-psutil-5.9.5.20240205.ebuild b/dev-python/types-psutil/types-psutil-5.9.5.20240205.ebuild new file mode 100644 index 000000000000..13f69b1b406d --- /dev/null +++ b/dev-python/types-psutil/types-psutil-5.9.5.20240205.ebuild @@ -0,0 +1,17 @@ +# Copyright 2023-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYPI_NO_NORMALIZE=1 +PYTHON_COMPAT=( python3_{8,9,10,11,12} ) + +inherit distutils-r1 pypi + +DESCRIPTION="Typing stubs for psutil" +HOMEPAGE="https://pypi.org/project/types-psutil/" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" diff --git a/dev-python/urllib3/urllib3-2.2.0.ebuild b/dev-python/urllib3/urllib3-2.2.0.ebuild index 14440ca7eed0..fb2fc467f430 100644 --- a/dev-python/urllib3/urllib3-2.2.0.ebuild +++ b/dev-python/urllib3/urllib3-2.2.0.ebuild @@ -27,7 +27,7 @@ SRC_URI+=" LICENSE="MIT" SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~loong ~riscv" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~riscv" IUSE="brotli http2 test zstd" RESTRICT="!test? ( test )" |
