diff options
| author | Liguros - Gitlab CI/CD [develop] <gitlab@liguros.net> | 2024-07-12 18:14:07 +0000 |
|---|---|---|
| committer | Liguros - Gitlab CI/CD [develop] <gitlab@liguros.net> | 2024-07-12 18:14:07 +0000 |
| commit | 6f7a4c178d81ca63bd8dd11c5ab1ad5d78a28018 (patch) | |
| tree | 13ad2fddbb3517619b47e3a6be660075a900e94c /dev-python | |
| parent | 9dd2fd66ec846f7f38bd3541a0109d20ac16c29f (diff) | |
| download | baldeagleos-repo-6f7a4c178d81ca63bd8dd11c5ab1ad5d78a28018.tar.gz baldeagleos-repo-6f7a4c178d81ca63bd8dd11c5ab1ad5d78a28018.tar.xz baldeagleos-repo-6f7a4c178d81ca63bd8dd11c5ab1ad5d78a28018.zip | |
Adding metadata
Diffstat (limited to 'dev-python')
71 files changed, 1327 insertions, 420 deletions
diff --git a/dev-python/ConfigArgParse/ConfigArgParse-1.7.ebuild b/dev-python/ConfigArgParse/ConfigArgParse-1.7.ebuild index a0b88cc7b497..15e3b42c4610 100644 --- a/dev-python/ConfigArgParse/ConfigArgParse-1.7.ebuild +++ b/dev-python/ConfigArgParse/ConfigArgParse-1.7.ebuild @@ -4,7 +4,6 @@ EAPI=8 DISTUTILS_USE_PEP517=setuptools -# py3.13: https://github.com/bw2/ConfigArgParse/issues/294 PYTHON_COMPAT=( python3_{8,9,10,11,12} ) inherit distutils-r1 @@ -30,6 +29,11 @@ BDEPEND=" distutils_enable_tests unittest +PATCHES=( + # https://github.com/bw2/ConfigArgParse/pull/295 + "${FILESDIR}/${P}-py313.patch" +) + src_test() { local -x COLUMNS=80 distutils-r1_src_test diff --git a/dev-python/ConfigArgParse/files/ConfigArgParse-1.7-py313.patch b/dev-python/ConfigArgParse/files/ConfigArgParse-1.7-py313.patch new file mode 100644 index 000000000000..a079f37a18e6 --- /dev/null +++ b/dev-python/ConfigArgParse/files/ConfigArgParse-1.7-py313.patch @@ -0,0 +1,112 @@ +From c6a974211f1a13d492bb807ff6d07cefcc948a87 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org> +Date: Fri, 12 Jul 2024 08:15:40 +0200 +Subject: [PATCH 1/2] update test expectations for Python 3.13 + +Python 3.13 no longer repeats the placeholder for options with multiple +aliases in the help message. For example, rather than: + + -c CONFIG_FILE, --config CONFIG_FILE + +it now outputs: + + -c, --config CONFIG_FILE + +Update the regular expressions to account for both possibilities. + +Fixes #294 +--- + tests/test_configargparse.py | 24 ++++++++++++------------ + 1 file changed, 12 insertions(+), 12 deletions(-) + +diff --git a/tests/test_configargparse.py b/tests/test_configargparse.py +index 288e082..e325afd 100644 +--- a/tests/test_configargparse.py ++++ b/tests/test_configargparse.py +@@ -271,9 +271,9 @@ def testBasicCase2(self, use_groups=False): + ' -h, --help \\s+ show this help message and exit\n' + ' --genome GENOME \\s+ Path to genome file\n' + ' -v\n' +- ' -g MY_CFG_FILE, --my-cfg-file MY_CFG_FILE\n' +- ' -d DBSNP, --dbsnp DBSNP\\s+\\[env var: DBSNP_PATH\\]\n' +- ' -f FRMT, --format FRMT\\s+\\[env var: OUTPUT_FORMAT\\]\n\n'%OPTIONAL_ARGS_STRING + ++ ' -g( MY_CFG_FILE)?, --my-cfg-file MY_CFG_FILE\n' ++ ' -d( DBSNP)?, --dbsnp DBSNP\\s+\\[env var: DBSNP_PATH\\]\n' ++ ' -f( FRMT)?, --format FRMT\\s+\\[env var: OUTPUT_FORMAT\\]\n\n'%OPTIONAL_ARGS_STRING + + 7*r'(.+\s*)') + else: + self.assertRegex(self.format_help(), +@@ -286,10 +286,10 @@ def testBasicCase2(self, use_groups=False): + 'g1:\n' + ' --genome GENOME \\s+ Path to genome file\n' + ' -v\n' +- ' -g MY_CFG_FILE, --my-cfg-file MY_CFG_FILE\n\n' ++ ' -g( MY_CFG_FILE)?, --my-cfg-file MY_CFG_FILE\n\n' + 'g2:\n' +- ' -d DBSNP, --dbsnp DBSNP\\s+\\[env var: DBSNP_PATH\\]\n' +- ' -f FRMT, --format FRMT\\s+\\[env var: OUTPUT_FORMAT\\]\n\n'%OPTIONAL_ARGS_STRING + ++ ' -d( DBSNP)?, --dbsnp DBSNP\\s+\\[env var: DBSNP_PATH\\]\n' ++ ' -f( FRMT)?, --format FRMT\\s+\\[env var: OUTPUT_FORMAT\\]\n\n'%OPTIONAL_ARGS_STRING + + 7*r'(.+\s*)') + + self.assertParseArgsRaises("invalid choice: 'ZZZ'", +@@ -387,9 +387,9 @@ def testMutuallyExclusiveArgs(self): + ' \\s*-f2 TYPE2_CFG_FILE\\)\\s+\\(-f FRMT \\| -b\\)\n\n' + '%s:\n' + ' -h, --help show this help message and exit\n' +- ' -f1 TYPE1_CFG_FILE, --type1-cfg-file TYPE1_CFG_FILE\n' +- ' -f2 TYPE2_CFG_FILE, --type2-cfg-file TYPE2_CFG_FILE\n' +- ' -f FRMT, --format FRMT\\s+\\[env var: OUTPUT_FORMAT\\]\n' ++ ' -f1( TYPE1_CFG_FILE)?, --type1-cfg-file TYPE1_CFG_FILE\n' ++ ' -f2( TYPE2_CFG_FILE)?, --type2-cfg-file TYPE2_CFG_FILE\n' ++ ' -f( FRMT)?, --format FRMT\\s+\\[env var: OUTPUT_FORMAT\\]\n' + ' -b, --bam\\s+\\[env var: BAM_FORMAT\\]\n\n' + 'group1:\n' + ' --genome GENOME Path to genome file\n' +@@ -875,7 +875,7 @@ def testConstructor_ConfigFileArgs(self): + 'usage: .* \\[-h\\] -c CONFIG_FILE --genome GENOME\n\n' + '%s:\n' + ' -h, --help\\s+ show this help message and exit\n' +- ' -c CONFIG_FILE, --config CONFIG_FILE\\s+ my config file\n' ++ ' -c( CONFIG_FILE)?, --config CONFIG_FILE\\s+ my config file\n' + ' --genome GENOME\\s+ Path to genome file\n\n'%OPTIONAL_ARGS_STRING + + 5*r'(.+\s*)') + +@@ -935,8 +935,8 @@ def test_FormatHelp(self): + r'\[-w CONFIG_OUTPUT_PATH\]\s* --arg1\s+ARG1\s*\[--flag\]\s*' + '%s:\\s*' + '-h, --help \\s* show this help message and exit ' +- r'-c CONFIG_FILE, --config CONFIG_FILE\s+my config file ' +- r'-w CONFIG_OUTPUT_PATH, --write-config CONFIG_OUTPUT_PATH takes ' ++ r'-c( CONFIG_FILE)?, --config CONFIG_FILE\s+my config file ' ++ r'-w( CONFIG_OUTPUT_PATH)?, --write-config CONFIG_OUTPUT_PATH takes ' + r'the current command line args and writes them ' + r'out to a config file at the given path, then exits ' + r'--arg1 ARG1 Arg1 help text ' + +From 5e9f442374bc6d9707a43df13aaff684dff6b535 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org> +Date: Fri, 12 Jul 2024 08:25:30 +0200 +Subject: [PATCH 2/2] skip exit_on_error* tests to fix 3.13 test failures + +Skip `exit_on_error*` tests from `test.test_argparse` to avoid test +failures on Python 3.13. The `exit_on_error=False` semantics +is not supported by ConfigArgParse at the moment. +--- + tests/test_configargparse.py | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/tests/test_configargparse.py b/tests/test_configargparse.py +index e325afd..9718d86 100644 +--- a/tests/test_configargparse.py ++++ b/tests/test_configargparse.py +@@ -1533,7 +1533,8 @@ def testYAMLConfigFileParser_w_ArgumentParser_parsed_values(self): + test_argparse_source_code = test_argparse_source_code.replace( + 'argparse.ArgumentParser', 'configargparse.ArgumentParser').replace( + 'TestHelpFormattingMetaclass', '_TestHelpFormattingMetaclass').replace( +- 'test_main', '_test_main') ++ 'test_main', '_test_main').replace( ++ 'test_exit_on_error', '_test_exit_on_error') + + # pytest tries to collect tests from TestHelpFormattingMetaclass, and + # test_main, and raises a warning when it finds it's not a test class diff --git a/dev-python/PyQt5-sip/Manifest b/dev-python/PyQt5-sip/Manifest index 2a010f9ef214..1b748b810be4 100644 --- a/dev-python/PyQt5-sip/Manifest +++ b/dev-python/PyQt5-sip/Manifest @@ -1 +1,2 @@ DIST PyQt5_sip-12.13.0.tar.gz 123225 BLAKE2B e3b7233e5405f7b24de157e1f0ed0f2ff47a9c331a76672892d8a7adc8aba8c7b738354d9f1c2fe9c29501b5bfe8c6302307c6731273b980a04dd327048a3a94 SHA512 ef363b21899f6d089fbc6d5adf700dc6c8838501343070ed1cf0826e05dd860343eba608d5aee5d8bece39b8ddca1f37866bb56aa07db18384ac0a372ca3532f +DIST PyQt5_sip-12.15.0.tar.gz 104024 BLAKE2B 40fdf25bfb8ca321f50926d7041e33edee9fbebafaded50d283ea95b04ea050e368d2b8470110d758f68f3ac08ada68b65b2f6ebcb9d7dd43707636e26701854 SHA512 1a009b53e80fc8231478f741839d8a88ab26f531c4ab0d41ccc00c8b0650c13c95c3c89cc949858a99bd1d817d736507df519384dff029530edc554f4b35b4cc diff --git a/dev-python/PyQt5-sip/PyQt5-sip-12.15.0.ebuild b/dev-python/PyQt5-sip/PyQt5-sip-12.15.0.ebuild new file mode 100644 index 000000000000..ebaf275be59b --- /dev/null +++ b/dev-python/PyQt5-sip/PyQt5-sip-12.15.0.ebuild @@ -0,0 +1,21 @@ +# 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 +PYPI_NO_NORMALIZE=1 +PYPI_PN=${PN/-/_} +# keep compat in sync with PyQt5 or else it confuses some revdeps +PYTHON_COMPAT=( python3_{8,9,10,11,12} ) +inherit distutils-r1 pypi + +DESCRIPTION="sip extension module for PyQt5" +# note that PyQt5-sip is currently not on github, but this is the +# homepage listed upstream as of the writing of this +HOMEPAGE="https://github.com/Python-SIP/sip/" + +LICENSE="BSD-2" +SLOT="0/$(ver_cut 1)" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86" diff --git a/dev-python/PyQt5-sip/metadata.xml b/dev-python/PyQt5-sip/metadata.xml index 89742e7d306d..a12020335fe1 100644 --- a/dev-python/PyQt5-sip/metadata.xml +++ b/dev-python/PyQt5-sip/metadata.xml @@ -6,13 +6,7 @@ <name>Gentoo Qt Project</name> </maintainer> <upstream> - <maintainer status="active"> - <email>phil@riverbankcomputing.com</email> - <name>Phil Thompson</name> - </maintainer> - <changelog>https://www.riverbankcomputing.com/hg/sip/raw-file/tip/NEWS</changelog> - <bugs-to>mailto:pyqt@riverbankcomputing.com</bugs-to> - <doc>https://www.riverbankcomputing.com/static/Docs/sip/</doc> + <bugs-to>https://github.com/Python-SIP/sip/issues</bugs-to> </upstream> <origin>gentoo-staging</origin> </pkgmetadata>
\ No newline at end of file diff --git a/dev-python/PyQt6-sip/Manifest b/dev-python/PyQt6-sip/Manifest index b75db9ddef10..26824c313b25 100644 --- a/dev-python/PyQt6-sip/Manifest +++ b/dev-python/PyQt6-sip/Manifest @@ -1 +1,2 @@ DIST PyQt6_sip-13.6.0.tar.gz 111576 BLAKE2B 1a5a35bb060654d347940af90fb5605b1b2f699da4fd4bbcdbb7d9497f91d7dd1a76c3267b5c4e1e68360c66130d4a9983d2da21da745e70adfc627df85cd8c0 SHA512 bd2fa70d64544d8104d3477cb650a0e6bcefa0008680afcf7d187ba3fb1117871c0237d3a7f047144c8a8a8eeb8da941a3b206f8ee0601cb2cc734243cdb9d46 +DIST PyQt6_sip-13.8.0.tar.gz 92264 BLAKE2B b44ba35c3209b3a49fccf0e4634af8a410b1531d0dd74fc665d7da9780f4e32baf18fbba80eb9635a96442c1c91295dc10e0388194d1e169d300e0e1b37d18cd SHA512 6947690e61fe65a21f61d034ae9de7b7adb001c59a4a362933c5441648fe27140b43666efa73f981b138cfc73fac72777bb7318b98accc3c7f808687e3fc5d81 diff --git a/dev-python/PyQt6-sip/PyQt6-sip-13.8.0.ebuild b/dev-python/PyQt6-sip/PyQt6-sip-13.8.0.ebuild new file mode 100644 index 000000000000..d68c36efd968 --- /dev/null +++ b/dev-python/PyQt6-sip/PyQt6-sip-13.8.0.ebuild @@ -0,0 +1,21 @@ +# Copyright 2022-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_EXT=1 +DISTUTILS_USE_PEP517=setuptools +PYPI_NO_NORMALIZE=1 +PYPI_PN=${PN/-/_} +# keep compat in sync with PyQt6 or else it confuses some revdeps +PYTHON_COMPAT=( python3_{8,9,10,11,12} ) +inherit distutils-r1 pypi + +DESCRIPTION="sip module support for PyQt6" +# note that PyQt6-sip is currently not on github, but this is the +# homepage listed upstream as of the writing of this +HOMEPAGE="https://github.com/Python-SIP/sip/" + +LICENSE="BSD-2" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv" diff --git a/dev-python/PyQt6-sip/metadata.xml b/dev-python/PyQt6-sip/metadata.xml index 34dc14b49d51..a12020335fe1 100644 --- a/dev-python/PyQt6-sip/metadata.xml +++ b/dev-python/PyQt6-sip/metadata.xml @@ -6,7 +6,7 @@ <name>Gentoo Qt Project</name> </maintainer> <upstream> - <bugs-to>https://www.riverbankcomputing.com/mailman/listinfo/pyqt/</bugs-to> + <bugs-to>https://github.com/Python-SIP/sip/issues</bugs-to> </upstream> <origin>gentoo-staging</origin> </pkgmetadata>
\ No newline at end of file diff --git a/dev-python/argh/argh-0.31.2.ebuild b/dev-python/argh/argh-0.31.2.ebuild index 23835e7651ba..16cdb4ac4eaa 100644 --- a/dev-python/argh/argh-0.31.2.ebuild +++ b/dev-python/argh/argh-0.31.2.ebuild @@ -4,7 +4,6 @@ EAPI=8 DISTUTILS_USE_PEP517=flit -# py3.13: https://github.com/neithere/argh/issues/228 PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 ) inherit distutils-r1 pypi @@ -27,3 +26,8 @@ BDEPEND=" " distutils_enable_tests pytest + +PATCHES=( + # https://github.com/neithere/argh/commit/cdb70d5ac7d8a5a5dff3c55100e5f67b68b26826 + "${FILESDIR}/${P}-py313.patch" +) diff --git a/dev-python/argh/files/argh-0.31.2-py313.patch b/dev-python/argh/files/argh-0.31.2-py313.patch new file mode 100644 index 000000000000..4049fedc0d0d --- /dev/null +++ b/dev-python/argh/files/argh-0.31.2-py313.patch @@ -0,0 +1,164 @@ +From cdb70d5ac7d8a5a5dff3c55100e5f67b68b26826 Mon Sep 17 00:00:00 2001 +From: Andy Mikhaylenko <neithere@gmail.com> +Date: Sun, 16 Jun 2024 22:38:21 +0200 +Subject: [PATCH] fix: tests under Python 3.13 (fixes #228) + +diff --git a/tests/test_integration.py b/tests/test_integration.py +index f863386..258a148 100644 +--- a/tests/test_integration.py ++++ b/tests/test_integration.py +@@ -724,18 +724,34 @@ def remind( + help_normalised = re.sub(r"\s+", " ", parser.format_help()) + + assert "name 'Basil'" in help_normalised +- assert "-t TASK, --task TASK 'hang the Moose'" in help_normalised +- assert ( +- "-r REASON, --reason REASON 'there are creatures living in it'" +- in help_normalised +- ) + +- # explicit help message is not obscured by the implicit one +- # but is still present +- assert ( +- "-n NOTE, --note NOTE why is it a remarkable animal? " +- "(default: 'it can speak English')" +- ) in help_normalised ++ # argh#228 — argparse in Python before 3.13 duplicated the placeholder in help ++ if sys.version_info < (3, 13): ++ assert "-t TASK, --task TASK 'hang the Moose'" in help_normalised ++ assert ( ++ "-r REASON, --reason REASON 'there are creatures living in it'" ++ in help_normalised ++ ) ++ ++ # explicit help message is not obscured by the implicit one ++ # but is still present ++ assert ( ++ "-n NOTE, --note NOTE why is it a remarkable animal? " ++ "(default: 'it can speak English')" ++ ) in help_normalised ++ else: ++ assert "-t, --task TASK 'hang the Moose'" in help_normalised ++ assert ( ++ "-r, --reason REASON 'there are creatures living in it'" ++ in help_normalised ++ ) ++ ++ # explicit help message is not obscured by the implicit one ++ # but is still present ++ assert ( ++ "-n, --note NOTE why is it a remarkable animal? " ++ "(default: 'it can speak English')" ++ ) in help_normalised + + + def test_default_arg_values_in_help__regression(): +@@ -750,9 +766,16 @@ def foo(*, bar=""): + # doesn't break + parser.format_help() + ++ # argh#228 — argparse in Python before 3.13 duplicated the placeholder in help ++ if sys.version_info < (3, 13): ++ expected_line = "-b BAR, --bar BAR ''" ++ # note the empty str repr ^^^ ++ else: ++ expected_line = "-b, --bar BAR ''" ++ # note the empty str repr ^^^ ++ + # now check details +- assert "-b BAR, --bar BAR ''" in parser.format_help() +- # note the empty str repr ^^^ ++ assert expected_line in parser.format_help() + + + def test_help_formatting_is_preserved(): +@@ -868,6 +891,19 @@ def second_func(): + + run(parser, "first-func --help", exit=True) + captured = capsys.readouterr() ++ ++ # argh#228 — argparse in Python before 3.13 duplicated the placeholder in help ++ if sys.version_info < (3, 13): ++ arg_help_lines = ( ++ " -h, --help show this help message and exit\n" ++ " -f FOO, --foo FOO 123" ++ ) ++ else: ++ arg_help_lines = ( ++ " -h, --help show this help message and exit\n" ++ " -f, --foo FOO 123" ++ ) ++ + assert ( + captured.out + == unindent( +@@ -877,8 +913,7 @@ def second_func(): + Owl stretching time + + {HELP_OPTIONS_LABEL}: +- -h, --help show this help message and exit +- -f FOO, --foo FOO 123 ++ {arg_help_lines} + """ + )[1:] + ) +@@ -997,6 +1032,19 @@ def second_func(): + + run(parser, "my-group first-func --help", exit=True) + captured = capsys.readouterr() ++ ++ # argh#228 — argparse in Python before 3.13 duplicated the placeholder in help ++ if sys.version_info < (3, 13): ++ arg_help_lines = ( ++ " -h, --help show this help message and exit\n" ++ " -f FOO, --foo FOO 123" ++ ) ++ else: ++ arg_help_lines = ( ++ " -h, --help show this help message and exit\n" ++ " -f, --foo FOO 123" ++ ) ++ + assert ( + captured.out + == unindent( +@@ -1006,8 +1054,7 @@ def second_func(): + Owl stretching time + + {HELP_OPTIONS_LABEL}: +- -h, --help show this help message and exit +- -f FOO, --foo FOO 123 ++ {arg_help_lines} + """ + )[1:] + ) +@@ -1079,6 +1126,19 @@ def second_func(): + + run(parser, "first-func --help", exit=True) + captured = capsys.readouterr() ++ ++ # argh#228 — argparse in Python before 3.13 duplicated the placeholder in help ++ if sys.version_info < (3, 13): ++ arg_help_lines = ( ++ " -h, --help show this help message and exit\n" ++ " -f FOO, --foo FOO 123" ++ ) ++ else: ++ arg_help_lines = ( ++ " -h, --help show this help message and exit\n" ++ " -f, --foo FOO 123" ++ ) ++ + assert ( + captured.out + == unindent( +@@ -1088,8 +1148,7 @@ def second_func(): + func description override + + {HELP_OPTIONS_LABEL}: +- -h, --help show this help message and exit +- -f FOO, --foo FOO 123 ++ {arg_help_lines} + """ + )[1:] + ) diff --git a/dev-python/argparse-manpage/argparse-manpage-4.6.ebuild b/dev-python/argparse-manpage/argparse-manpage-4.6.ebuild index dbda644af507..673a18ad8c5d 100644 --- a/dev-python/argparse-manpage/argparse-manpage-4.6.ebuild +++ b/dev-python/argparse-manpage/argparse-manpage-4.6.ebuild @@ -20,7 +20,7 @@ SRC_URI=" LICENSE="Apache-2.0" SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" +KEYWORDS="amd64 ~arm arm64 ~mips ~ppc ~ppc64 ~riscv ~sparc x86" RDEPEND=" $(python_gen_cond_dep ' diff --git a/dev-python/cattrs/cattrs-23.2.3_p20240627.ebuild b/dev-python/cattrs/cattrs-23.2.4_pre20240627.ebuild index 0253407800fb..470445cdc811 100644 --- a/dev-python/cattrs/cattrs-23.2.3_p20240627.ebuild +++ b/dev-python/cattrs/cattrs-23.2.4_pre20240627.ebuild @@ -61,7 +61,7 @@ PATCHES=( "${FILESDIR}/${P}-py313.patch" ) -export SETUPTOOLS_SCM_PRETEND_VERSION=${PV/_p/+} +export SETUPTOOLS_SCM_PRETEND_VERSION=${PV/_pre/.dev} python_test() { local EPYTEST_IGNORE=( diff --git a/dev-python/cattrs/files/cattrs-23.2.3_p20240627-py313.patch b/dev-python/cattrs/files/cattrs-23.2.4_pre20240627-py313.patch index 1ea85a653a32..1ea85a653a32 100644 --- a/dev-python/cattrs/files/cattrs-23.2.3_p20240627-py313.patch +++ b/dev-python/cattrs/files/cattrs-23.2.4_pre20240627-py313.patch diff --git a/dev-python/executing/Manifest b/dev-python/executing/Manifest index d2ce7ff6f380..8ba7530c201b 100644 --- a/dev-python/executing/Manifest +++ b/dev-python/executing/Manifest @@ -1 +1,2 @@ DIST executing-2.0.1.gh.tar.gz 837355 BLAKE2B 7d38890eb322809c2b705f51731fe7537f81a0775d99bebb4b4ae67453930daedd947b249385babbc2373969344b643f288441fc28f3588264e4ebc23e1c389d SHA512 8a753aab42ea2d3b61764ee77de3bb52ea7fcc2818298281180ffc47c7b22ee84974ee98b2137250f722ad559be92e72e8fc01d7b2d38ab6a01512618b65d4f3 +DIST executing-b3821ddf99132b61d8d32adfdae450e2418610ca.gh.tar.gz 983168 BLAKE2B 6f305aff1ff027efc5dc18288a1373623dc8e87f0a66f35ad6c92954fa1e6fc2422d50aaec128216efd1e090f1f69428447700b0adc8d4b61f40a777b3768c29 SHA512 049f95e363660052538b9d4c07123705663680d1c415ee43895678e4b740b3b2697c62c78e150fd14f75836727512e138c312ece7a48b2d3d11393f522b2ce60 diff --git a/dev-python/executing/executing-2.0.2_pre20240626.ebuild b/dev-python/executing/executing-2.0.2_pre20240626.ebuild new file mode 100644 index 000000000000..b27a2bf1a702 --- /dev/null +++ b/dev-python/executing/executing-2.0.2_pre20240626.ebuild @@ -0,0 +1,65 @@ +# 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} pypy3 ) + +inherit distutils-r1 optfeature + +# https://github.com/alexmojaki/executing/commits/3.13 +EGIT_COMMIT="b3821ddf99132b61d8d32adfdae450e2418610ca" +MY_P="${PN}-${EGIT_COMMIT}" + +DESCRIPTION="Get information about what a Python frame is currently doing" +HOMEPAGE=" + https://github.com/alexmojaki/executing/ + https://pypi.org/project/executing/ +" +SRC_URI=" + https://github.com/alexmojaki/executing/archive/${EGIT_COMMIT}.tar.gz + -> ${MY_P}.gh.tar.gz +" +S=${WORKDIR}/${MY_P} + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos" + +BDEPEND=" + dev-python/setuptools-scm[${PYTHON_USEDEP}] + test? ( + >=dev-python/asttokens-2.1.0[${PYTHON_USEDEP}] + dev-python/littleutils[${PYTHON_USEDEP}] + dev-python/rich[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +export SETUPTOOLS_SCM_PRETEND_VERSION=${PV/_pre/.dev} + +python_test() { + local EPYTEST_DESELECT=() + case ${EPYTHON} in + pypy3) + EPYTEST_DESELECT+=( + "tests/test_main.py::test_small_samples[22bc344a43584c051d8962116e8fd149d72e7e68bcb54caf201ee6e78986b167.py]" + "tests/test_main.py::test_small_samples[46597f8f896f11c5d7f432236344cc7e5645c2a39836eb6abdd2437c0422f0f4.py]" + ) + ;; + esac + if ! has_version "dev-python/ipython[${PYTHON_USEDEP}]"; then + EPYTEST_DESELECT+=( + tests/test_ipython.py + ) + fi + + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + epytest +} + +pkg_postinst() { + optfeature "getting node's source code" dev-python/asttokens +} diff --git a/dev-python/importlib-resources/importlib-resources-6.4.0.ebuild b/dev-python/importlib-resources/importlib-resources-6.4.0.ebuild index ad0db1bcd555..f330b2dab003 100644 --- a/dev-python/importlib-resources/importlib-resources-6.4.0.ebuild +++ b/dev-python/importlib-resources/importlib-resources-6.4.0.ebuild @@ -17,7 +17,7 @@ HOMEPAGE=" LICENSE="Apache-2.0" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc x86" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 sparc x86" BDEPEND=" dev-python/setuptools-scm[${PYTHON_USEDEP}] diff --git a/dev-python/ipykernel/ipykernel-6.29.5.ebuild b/dev-python/ipykernel/ipykernel-6.29.5.ebuild index 5c705c14f73d..f47b552815d7 100644 --- a/dev-python/ipykernel/ipykernel-6.29.5.ebuild +++ b/dev-python/ipykernel/ipykernel-6.29.5.ebuild @@ -34,11 +34,15 @@ RDEPEND=" " # RDEPEND seems specifically needed in BDEPEND, at least jupyter # bug #816486 +# pytest-8 runs a small subset of tests, we allow newer for 3.13 +# since a few tests are better than skipping entirely BDEPEND=" ${RDEPEND} test? ( dev-python/flaky[${PYTHON_USEDEP}] - <dev-python/pytest-8[${PYTHON_USEDEP}] + $(python_gen_cond_dep ' + <dev-python/pytest-8[${PYTHON_USEDEP}] + ' 3.{10..12}) >=dev-python/pytest-asyncio-0.23.5[${PYTHON_USEDEP}] dev-python/pytest-timeout[${PYTHON_USEDEP}] dev-python/ipyparallel[${PYTHON_USEDEP}] diff --git a/dev-python/ipython/ipython-8.26.0.ebuild b/dev-python/ipython/ipython-8.26.0.ebuild index 755d1f4fd670..220f3713a739 100644 --- a/dev-python/ipython/ipython-8.26.0.ebuild +++ b/dev-python/ipython/ipython-8.26.0.ebuild @@ -66,13 +66,15 @@ RDEPEND+=" " PDEPEND=" $(python_gen_cond_dep ' + qt5? ( dev-python/qtconsole[${PYTHON_USEDEP}] ) + ' 'python*') + $(python_gen_cond_dep ' notebook? ( dev-python/notebook[${PYTHON_USEDEP}] dev-python/ipywidgets[${PYTHON_USEDEP}] dev-python/widgetsnbextension[${PYTHON_USEDEP}] ) - qt5? ( dev-python/qtconsole[${PYTHON_USEDEP}] ) - ' 'python*') + ' 3.{10..12}) smp? ( >=dev-python/ipykernel-5.1.0[${PYTHON_USEDEP}] >=dev-python/ipyparallel-6.2.3[${PYTHON_USEDEP}] @@ -107,6 +109,12 @@ python_test() { IPython/lib/tests/test_display.py::TestAudioDataWithoutNumpy ) ;; + python3.13) + EPYTEST_DESELECT+=( + # docstring mismatch? + IPython/core/tests/test_debugger.py::IPython.core.tests.test_debugger.test_ipdb_magics + ) + ;; esac # nonfatal implied by virtx diff --git a/dev-python/ipywidgets/Manifest b/dev-python/ipywidgets/Manifest index 1fda580bd53c..6566d8777047 100644 --- a/dev-python/ipywidgets/Manifest +++ b/dev-python/ipywidgets/Manifest @@ -1,2 +1 @@ -DIST ipywidgets-8.1.2.tar.gz 116492 BLAKE2B 0fc8283b332447cd3659d39d4564e2e794678169c7bc156660f3478251c4df23de1719e4fcf9651b9766506edf359bdfc803b1450520a3cbce290b39bd95bd3c SHA512 59ddc92bb9b18b6cd36b1499465e700ce9b11010e2d51cdf0a820b36efecbea1facab42ced2f61de312319f4fd4e672bb27b248d40ee0088f3b58acfd102ab61 DIST ipywidgets-8.1.3.tar.gz 116515 BLAKE2B b7a11e7078ddbd99b8713fc3aa63c78118bf00b64c376412c608a622fda1e7d0430accb0959a56a474d2eeba4b5ce531255b52bba591f2806833644e47f2a7bd SHA512 3722e3716f367c6dce88c6ec401d23240c214793672ae76a12b672f77c7c801775d3253e1202749e54832d9dc13e4bb5984ec57e21607f12c22aced8874538db diff --git a/dev-python/ipywidgets/files/ipywidgets-8.1.3-py313.patch b/dev-python/ipywidgets/files/ipywidgets-8.1.3-py313.patch new file mode 100644 index 000000000000..c8bd3e22a8a6 --- /dev/null +++ b/dev-python/ipywidgets/files/ipywidgets-8.1.3-py313.patch @@ -0,0 +1,30 @@ +From acfa9a3539648a04b11331ad07cab4393069f87f Mon Sep 17 00:00:00 2001 +From: Lumir Balhar <lbalhar@redhat.com> +Date: Tue, 18 Jun 2024 11:58:07 +0200 +Subject: [PATCH] Make tests compatible with Python 3.13 + +Python compiler newly removes indent from docstrings +https://github.com/python/cpython/issues/81283 +--- + python/ipywidgets/ipywidgets/widgets/tests/test_docutils.py | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/ipywidgets/widgets/tests/test_docutils.py b/ipywidgets/widgets/tests/test_docutils.py +index 1f8b09aa34..462293326c 100644 +--- a/ipywidgets/widgets/tests/test_docutils.py ++++ b/ipywidgets/widgets/tests/test_docutils.py +@@ -15,7 +15,7 @@ def test_substitution(self): + def f(): + """ Docstring with value {key} """ + +- assert f.__doc__ == " Docstring with value 62 " ++ assert "Docstring with value 62" in f.__doc__ + + def test_unused_keys(self): + snippets = {'key': '62', 'other-key': 'unused'} +@@ -24,4 +24,4 @@ def test_unused_keys(self): + def f(): + """ Docstring with value {key} """ + +- assert f.__doc__ == " Docstring with value 62 " ++ assert "Docstring with value 62" in f.__doc__ diff --git a/dev-python/ipywidgets/files/ipywidgets-8.1.3-pytest-8.patch b/dev-python/ipywidgets/files/ipywidgets-8.1.3-pytest-8.patch new file mode 100644 index 000000000000..0294ec1ce604 --- /dev/null +++ b/dev-python/ipywidgets/files/ipywidgets-8.1.3-pytest-8.patch @@ -0,0 +1,91 @@ +From bbc6c064aa797eb21bd5a9b441dbbc76925a72db Mon Sep 17 00:00:00 2001 +From: Lumir Balhar <lbalhar@redhat.com> +Date: Thu, 11 Apr 2024 11:40:15 +0200 +Subject: [PATCH] Fix compatibility with pytest 8 + +Resolves: https://github.com/jupyter-widgets/ipywidgets/issues/3883 +--- + .../ipywidgets/ipywidgets/widgets/tests/test_interaction.py | 2 -- + python/ipywidgets/ipywidgets/widgets/tests/test_link.py | 1 - + .../ipywidgets/ipywidgets/widgets/tests/test_send_state.py | 2 +- + .../ipywidgets/ipywidgets/widgets/tests/test_set_state.py | 2 +- + python/ipywidgets/ipywidgets/widgets/tests/utils.py | 6 +++--- + 5 files changed, 5 insertions(+), 8 deletions(-) + +diff --git a/ipywidgets/widgets/tests/test_interaction.py b/ipywidgets/widgets/tests/test_interaction.py +index 0dc7e5fcfc..feb1afe50c 100644 +--- a/ipywidgets/widgets/tests/test_interaction.py ++++ b/ipywidgets/widgets/tests/test_interaction.py +@@ -19,8 +19,6 @@ + # Utility stuff + #----------------------------------------------------------------------------- + +-from .utils import setup, teardown +- + def f(**kwargs): + pass + +diff --git a/ipywidgets/widgets/tests/test_link.py b/ipywidgets/widgets/tests/test_link.py +index 0c92dfdcb2..9301764d40 100644 +--- a/ipywidgets/widgets/tests/test_link.py ++++ b/ipywidgets/widgets/tests/test_link.py +@@ -4,7 +4,6 @@ + import pytest + + from .. import jslink, jsdlink, ToggleButton +-from .utils import setup, teardown + + def test_jslink_args(): + with pytest.raises(TypeError): +diff --git a/ipywidgets/widgets/tests/test_send_state.py b/ipywidgets/widgets/tests/test_send_state.py +index ec18ae4af1..98465b9b7d 100644 +--- a/ipywidgets/widgets/tests/test_send_state.py ++++ b/ipywidgets/widgets/tests/test_send_state.py +@@ -3,7 +3,7 @@ + + from traitlets import Bool, Tuple, List + +-from .utils import setup, teardown, DummyComm ++from .utils import setup + + from ..widget import Widget + +diff --git a/ipywidgets/widgets/tests/test_set_state.py b/ipywidgets/widgets/tests/test_set_state.py +index 82ecbd9311..22ec54d90f 100644 +--- a/ipywidgets/widgets/tests/test_set_state.py ++++ b/ipywidgets/widgets/tests/test_set_state.py +@@ -6,7 +6,7 @@ + + from traitlets import Bool, Tuple, List, Instance, CFloat, CInt, Float, Int, TraitError, observe + +-from .utils import setup, teardown ++from .utils import setup + + import ipywidgets + from ipywidgets import Widget +diff --git a/ipywidgets/widgets/tests/utils.py b/ipywidgets/widgets/tests/utils.py +index 260485e3f8..8dbbcb355b 100644 +--- a/ipywidgets/widgets/tests/utils.py ++++ b/ipywidgets/widgets/tests/utils.py +@@ -12,7 +12,7 @@ + NEW_COMM_PACKAGE = False + + import ipykernel.comm +- ++import pytest + + class DummyComm(): + comm_id = 'a-b-c-d' +@@ -87,10 +87,10 @@ def teardown_test_comm(): + setattr(Widget, attr, value) + _widget_attrs.clear() + ++@pytest.fixture(autouse=True) + def setup(): + setup_test_comm() +- +-def teardown(): ++ yield + teardown_test_comm() + + def call_method(method, *args, **kwargs): diff --git a/dev-python/ipywidgets/ipywidgets-8.1.2-r1.ebuild b/dev-python/ipywidgets/ipywidgets-8.1.2-r1.ebuild deleted file mode 100644 index a29559f7971b..000000000000 --- a/dev-python/ipywidgets/ipywidgets-8.1.2-r1.ebuild +++ /dev/null @@ -1,58 +0,0 @@ -# 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} pypy3 ) -PYTHON_REQ_USE="threads(+)" - -inherit distutils-r1 pypi - -DESCRIPTION="IPython HTML widgets for Jupyter" -HOMEPAGE=" - https://ipywidgets.readthedocs.io/ - https://github.com/jupyter-widgets/ipywidgets/ - https://pypi.org/project/ipywidgets/ -" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="~amd64" - -RDEPEND=" - >=dev-python/comm-0.1.3[${PYTHON_USEDEP}] - >=dev-python/ipython_genutils-0.2.0[${PYTHON_USEDEP}] - >=dev-python/traitlets-4.3.1[${PYTHON_USEDEP}] - >=dev-python/widgetsnbextension-4.0.10[${PYTHON_USEDEP}] - >=dev-python/jupyterlab-widgets-3.0.10[${PYTHON_USEDEP}] -" -BDEPEND=" - test? ( - dev-python/ipykernel[${PYTHON_USEDEP}] - dev-python/jsonschema[${PYTHON_USEDEP}] - <dev-python/pytest-8.1[${PYTHON_USEDEP}] - dev-python/pytz[${PYTHON_USEDEP}] - ) -" -PDEPEND=" - >=dev-python/ipython-6.1.0[${PYTHON_USEDEP}] -" - -distutils_enable_tests pytest - -python_test() { - local EPYTEST_DESELECT=() - - case ${EPYTHON} in - pypy3) - EPYTEST_DESELECT+=( - # https://github.com/pypy/pypy/issues/4892 - ipywidgets/widgets/tests/test_interaction.py::test_interact_noinspect - ) - ;; - esac - - local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 - epytest -} diff --git a/dev-python/ipywidgets/ipywidgets-8.1.2.ebuild b/dev-python/ipywidgets/ipywidgets-8.1.2.ebuild deleted file mode 100644 index 676dd724d3ff..000000000000 --- a/dev-python/ipywidgets/ipywidgets-8.1.2.ebuild +++ /dev/null @@ -1,61 +0,0 @@ -# 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} pypy3 ) -PYTHON_REQ_USE="threads(+)" - -inherit distutils-r1 pypi - -DESCRIPTION="IPython HTML widgets for Jupyter" -HOMEPAGE=" - https://ipywidgets.readthedocs.io/ - https://github.com/jupyter-widgets/ipywidgets/ - https://pypi.org/project/ipywidgets/ -" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="amd64 arm arm64 ~loong ppc64 ~riscv x86 ~amd64-linux ~x86-linux" - -RDEPEND=" - >=dev-python/comm-0.1.3[${PYTHON_USEDEP}] - >=dev-python/ipython_genutils-0.2.0[${PYTHON_USEDEP}] - >=dev-python/traitlets-4.3.1[${PYTHON_USEDEP}] - >=dev-python/widgetsnbextension-4.0.10[${PYTHON_USEDEP}] -" -BDEPEND=" - test? ( - dev-python/jsonschema[${PYTHON_USEDEP}] - ) -" -PDEPEND=" - >=dev-python/ipython-6.1.0[${PYTHON_USEDEP}] -" - -distutils_enable_tests pytest - -src_prepare() { - # upstream hack to autoconfigure ipywidgets in jupyter - # we don't have jupyterlab_widgets packaged - sed -i -e '/jupyterlab_widgets/d' setup.cfg || die - distutils-r1_src_prepare -} - -python_test() { - local EPYTEST_DESELECT=() - - case ${EPYTHON} in - pypy3) - EPYTEST_DESELECT+=( - # https://github.com/pypy/pypy/issues/4892 - ipywidgets/widgets/tests/test_interaction.py::test_interact_noinspect - ) - ;; - esac - - local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 - epytest -} diff --git a/dev-python/ipywidgets/ipywidgets-8.1.3.ebuild b/dev-python/ipywidgets/ipywidgets-8.1.3.ebuild index 63ed5df1aa0f..17bd0ce5c2d7 100644 --- a/dev-python/ipywidgets/ipywidgets-8.1.3.ebuild +++ b/dev-python/ipywidgets/ipywidgets-8.1.3.ebuild @@ -18,7 +18,7 @@ HOMEPAGE=" LICENSE="BSD" SLOT="0" -KEYWORDS="amd64 arm arm64 ~loong ~riscv x86" +KEYWORDS="amd64 arm arm64 ~loong ppc64 ~riscv x86" RDEPEND=" >=dev-python/comm-0.1.3[${PYTHON_USEDEP}] @@ -31,7 +31,6 @@ BDEPEND=" test? ( dev-python/ipykernel[${PYTHON_USEDEP}] dev-python/jsonschema[${PYTHON_USEDEP}] - <dev-python/pytest-8.1[${PYTHON_USEDEP}] dev-python/pytz[${PYTHON_USEDEP}] ) " @@ -41,6 +40,13 @@ PDEPEND=" distutils_enable_tests pytest +PATCHES=( + # https://github.com/jupyter-widgets/ipywidgets/pull/3903 + "${FILESDIR}/${P}-pytest-8.patch" + # https://github.com/jupyter-widgets/ipywidgets/pull/3924 + "${FILESDIR}/${P}-py313.patch" +) + python_test() { local EPYTEST_DESELECT=() diff --git a/dev-python/irc/Manifest b/dev-python/irc/Manifest index 9d694b954d92..700bc270c538 100644 --- a/dev-python/irc/Manifest +++ b/dev-python/irc/Manifest @@ -1 +1,2 @@ DIST irc-20.4.1.tar.gz 91229 BLAKE2B 05518a19821016e5a10173a5ee20a0d3cb6047eb87f4a153331bc8458abb365d27cde8ae02b1e7c12a86957adc7811511f61c516bdb1c6f0f03f4a5186524eb5 SHA512 e57e18c7c8111c883737cbaa176e0e895c182e43208ff784abf382bcab0b613287076ec35cfe266d78418e27b38a6443344b03bd90ea768c1c50ce0c32453d89 +DIST irc-20.4.2.tar.gz 91206 BLAKE2B 4a2b16581bc863774180e9fe67b564be50cfa3ea192999153426bbe883b5360ccaf053fab6e7a9fb47262d0a7f3f97a2dd2eab8f2a6f16223e4fd12b0f333f45 SHA512 18a767ad99cbc387b9c785da9334a96822092eb90e7fdb913af92cb7ea973fc2e54cb59942a025e33630ff3a78b6a52910a92c053daa4f25ef37d851f58a62e4 diff --git a/dev-python/irc/irc-20.4.2.ebuild b/dev-python/irc/irc-20.4.2.ebuild new file mode 100644 index 000000000000..370db1cf6a95 --- /dev/null +++ b/dev-python/irc/irc-20.4.2.ebuild @@ -0,0 +1,44 @@ +# 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 pypi + +DESCRIPTION="IRC client framework written in Python" +HOMEPAGE=" + https://github.com/jaraco/irc/ + https://pypi.org/project/irc/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~riscv ~x86" +IUSE="examples" + +RDEPEND=" + dev-python/jaraco-collections[${PYTHON_USEDEP}] + >=dev-python/jaraco-functools-1.20[${PYTHON_USEDEP}] + dev-python/jaraco-logging[${PYTHON_USEDEP}] + dev-python/jaraco-stream[${PYTHON_USEDEP}] + >=dev-python/jaraco-text-3.10[${PYTHON_USEDEP}] + dev-python/more-itertools[${PYTHON_USEDEP}] + dev-python/pytz[${PYTHON_USEDEP}] + >=dev-python/tempora-1.6[${PYTHON_USEDEP}] +" +BDEPEND=" + >=dev-python/setuptools-scm-3.4.1[${PYTHON_USEDEP}] +" + +distutils_enable_tests pytest + +python_install_all() { + if use examples; then + docompress -x "/usr/share/doc/${PF}/scripts" + dodoc -r scripts + fi + distutils-r1_python_install_all +} diff --git a/dev-python/itunespy/Manifest b/dev-python/itunespy/Manifest index eaf9e6ec9e6c..f0451eba8382 100644 --- a/dev-python/itunespy/Manifest +++ b/dev-python/itunespy/Manifest @@ -1 +1,2 @@ +DIST itunespy-1.6.1.gh.tar.gz 10139 BLAKE2B 41eac172835cb440016a5d835f188e9cda72f3291983e35f44e2f2c9ceed6663784789761e88784e42f4586d5dcd0471661a8bec7586ea1b429d54419277aefe SHA512 b30dac3d498fe0e108bbab7480c45245ee18247c91b3b685761b1e6df7f285e93777080a1aced2f436837d48b122c3f7b91274069529a5370ef9cf158b0fc4eb DIST itunespy-1.6.tar.gz 9724 BLAKE2B c46ccfd00a3dec1772499d3299dae7c20355628176db4e660aca0b2b819b81423ac78ce55319c822c15e1c4bf0641c2fc3c4d9ba94dafad1ffdeb503be4f76f9 SHA512 d91428e23a71bdbc62e6b8126b379aa48f06a365056147cf30eb4fa6132243d35c8a8d6dc536174a53f206bf7bcb4dcebb5a3697fac0fd88cbcb38205202ad81 diff --git a/dev-python/itunespy/itunespy-1.6.1.ebuild b/dev-python/itunespy/itunespy-1.6.1.ebuild new file mode 100644 index 000000000000..3269d22b5469 --- /dev/null +++ b/dev-python/itunespy/itunespy-1.6.1.ebuild @@ -0,0 +1,37 @@ +# 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 + +DESCRIPTION="A simple library to fetch data from the iTunes Store API" +HOMEPAGE="https://github.com/sleepyfran/itunespy/" + +if [[ "${PV}" == *9999* ]] ; then + inherit git-r3 + + EGIT_REPO_URI="https://github.com/sleepyfran/${PN}.git" +else + SRC_URI="https://github.com/sleepyfran/${PN}/archive/v${PV}.tar.gz + -> ${P}.gh.tar.gz" + + KEYWORDS="~amd64 ~x86" +fi + +LICENSE="Apache-2.0" +SLOT="0" + +RDEPEND=" + dev-python/pycountry[${PYTHON_USEDEP}] + dev-python/requests[${PYTHON_USEDEP}] +" + +src_prepare() { + rm setup.cfg || die + + distutils-r1_src_prepare +} diff --git a/dev-python/jupyter-events/files/jupyter-events-0.10.0-test.patch b/dev-python/jupyter-events/files/jupyter-events-0.10.0-test.patch new file mode 100644 index 000000000000..44695c174cdd --- /dev/null +++ b/dev-python/jupyter-events/files/jupyter-events-0.10.0-test.patch @@ -0,0 +1,93 @@ +From 6c6219710e08784b3b8beed25d17240ea7f9ef93 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org> +Date: Fri, 12 Jul 2024 11:05:40 +0200 +Subject: [PATCH 1/2] Improve compatibility with patched python-json-logger on + py3.12+ + +Discard the `taskName` field from event capsule, to preserve +compatibility both with current python-json-logger versions, and with +versions containing the Python 3.12 fix +from madzak/python-json-logger#188 that removes the reserved `taskName` +field. +--- + tests/test_logger.py | 15 +++++---------- + 1 file changed, 5 insertions(+), 10 deletions(-) + +diff --git a/tests/test_logger.py b/tests/test_logger.py +index 8a0a499..986aade 100644 +--- a/tests/test_logger.py ++++ b/tests/test_logger.py +@@ -166,8 +166,7 @@ def test_emit(): + "__metadata_version__": 1, + "something": "blah", + } +- if sys.version_info >= (3, 12): +- expected["taskName"] = None ++ event_capsule.pop("taskName", None) + assert event_capsule == expected + + +@@ -214,8 +213,7 @@ def test_message_field(): + "something": "blah", + "message": "a message was seen", + } +- if sys.version_info >= (3, 12): +- expected["taskName"] = None ++ event_capsule.pop("taskName", None) + assert event_capsule == expected + + +@@ -263,8 +261,7 @@ def test_nested_message_field(): + "__metadata_version__": 1, + "thing": {"message": "a nested message was seen"}, + } +- if sys.version_info >= (3, 12): +- expected["taskName"] = None ++ event_capsule.pop("taskName", None) + assert event_capsule == expected + + +@@ -428,8 +425,7 @@ def test_unique_logger_instances(): + "__metadata_version__": 1, + "something": "blah", + } +- if sys.version_info >= (3, 12): +- expected["taskName"] = None ++ event_capsule0.pop("taskName", None) + assert event_capsule0 == expected + + event_capsule1 = json.loads(output1.getvalue()) +@@ -443,8 +439,7 @@ def test_unique_logger_instances(): + "__metadata_version__": 1, + "something": "blah", + } +- if sys.version_info >= (3, 12): +- expected["taskName"] = None ++ event_capsule1.pop("taskName", None) + assert event_capsule1 == expected + + + +From 5ad1b27eb8424f1c33067eb68859f9ed0d7ede74 Mon Sep 17 00:00:00 2001 +From: "pre-commit-ci[bot]" + <66853113+pre-commit-ci[bot]@users.noreply.github.com> +Date: Fri, 12 Jul 2024 09:08:44 +0000 +Subject: [PATCH 2/2] [pre-commit.ci] auto fixes from pre-commit.com hooks + +for more information, see https://pre-commit.ci +--- + tests/test_logger.py | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/tests/test_logger.py b/tests/test_logger.py +index 986aade..ecd56ab 100644 +--- a/tests/test_logger.py ++++ b/tests/test_logger.py +@@ -3,7 +3,6 @@ + import io + import json + import logging +-import sys + from datetime import datetime, timedelta, timezone + from unittest.mock import MagicMock + diff --git a/dev-python/jupyter-events/jupyter-events-0.10.0.ebuild b/dev-python/jupyter-events/jupyter-events-0.10.0.ebuild index fce06ae31153..1f001b0bc8b2 100644 --- a/dev-python/jupyter-events/jupyter-events-0.10.0.ebuild +++ b/dev-python/jupyter-events/jupyter-events-0.10.0.ebuild @@ -39,3 +39,9 @@ BDEPEND=" # TODO: package jupyterlite-sphinx # distutils_enable_sphinx docs distutils_enable_tests pytest + +PATCHES=( + # fix compatibility with patched python-json-logger + # https://github.com/jupyter/jupyter_events/pull/100 + "${FILESDIR}/${P}-test.patch" +) diff --git a/dev-python/jupyterlab-widgets/Manifest b/dev-python/jupyterlab-widgets/Manifest index 27ac9473953e..5c493a3b3e9a 100644 --- a/dev-python/jupyterlab-widgets/Manifest +++ b/dev-python/jupyterlab-widgets/Manifest @@ -1,2 +1 @@ -DIST jupyterlab_widgets-3.0.10.tar.gz 205549 BLAKE2B 7f31ffa65a6478f4007449fd9f1ea749144eda39afe21208b934fc33b2222e605a21e1cbfd61961b48c001b780eb75425444729fec931bb7fbb7f9afa290971d SHA512 a68de696b9d8c332c796242dd72d1a0cc33944373e97c826b8a971eb558565e55f4a0a59ba437e9bb9466695755193aa95ec74d69e54628931858f524c939da5 DIST jupyterlab_widgets-3.0.11.tar.gz 203538 BLAKE2B 8208afd3dc9e8dd36a6ab77ac20d935b53a8c200401e9e423ca154e87c50379cced5ff785dc625ead7f09aaffd9af5835151a853224abce6e7c84c6ce199259e SHA512 27e8fec4817d3e37e1976c30db21f914b11dc3bb1e0aa7c584c811b3f9a54422136c7702bd32f7494851d87108182a8a9fe11686d515f4da19ee2a8f7a930755 diff --git a/dev-python/jupyterlab-widgets/jupyterlab-widgets-3.0.10.ebuild b/dev-python/jupyterlab-widgets/jupyterlab-widgets-3.0.10.ebuild deleted file mode 100644 index 983a22b59df6..000000000000 --- a/dev-python/jupyterlab-widgets/jupyterlab-widgets-3.0.10.ebuild +++ /dev/null @@ -1,25 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_USE_PEP517=jupyter -PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 ) -PYTHON_REQ_USE="threads(+)" - -inherit distutils-r1 pypi - -DESCRIPTION="Jupyter interactive widgets for JupyterLab" -HOMEPAGE=" - https://ipython.org/ - https://pypi.org/project/jupyterlab-widgets/ -" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="~amd64" - -BDEPEND=" - >=dev-python/jupyterlab-4.1.8[${PYTHON_USEDEP}] - dev-python/jupyter-packaging[${PYTHON_USEDEP}] -" diff --git a/dev-python/jupyterlab-widgets/jupyterlab-widgets-3.0.11.ebuild b/dev-python/jupyterlab-widgets/jupyterlab-widgets-3.0.11.ebuild index c94723f9f229..a454acb49251 100644 --- a/dev-python/jupyterlab-widgets/jupyterlab-widgets-3.0.11.ebuild +++ b/dev-python/jupyterlab-widgets/jupyterlab-widgets-3.0.11.ebuild @@ -17,9 +17,8 @@ HOMEPAGE=" LICENSE="BSD" SLOT="0" -KEYWORDS="amd64 arm arm64 ~loong ~riscv x86" +KEYWORDS="amd64 arm arm64 ~loong ppc64 ~riscv x86" BDEPEND=" - >=dev-python/jupyterlab-4.1.8[${PYTHON_USEDEP}] dev-python/jupyter-packaging[${PYTHON_USEDEP}] " diff --git a/dev-python/langdetect/Manifest b/dev-python/langdetect/Manifest index 37a64204a00a..a11d7c268c91 100644 --- a/dev-python/langdetect/Manifest +++ b/dev-python/langdetect/Manifest @@ -1,3 +1 @@ DIST langdetect-1.0.9.tar.gz 981474 BLAKE2B ea8a9c3f16a2987c080742473bff4f2c1503f53fb3c2b40b0b1d6212bb6133ea22dce7864ffcfb8968c3a46b157d45cb3e2cf6f84bdbed0266cc716a853b032c SHA512 7558d674c47b080c79e43a00a25d2c7f77188cf60bea2cecb3bebb803d75e1aa42b43c74bd26ea1b541f4cb927421908882cbec01a91f0913984217e71ccc8db -EBUILD langdetect-1.0.9.ebuild 494 BLAKE2B 9b3521c5721afa49a58e0c35267f7d82bb56bd7e1d6d3152be0d36cd220180a526cb20b90b1113fbf0fff4a512137570f0b3bcf864498b7b7cc00403cb61ca27 SHA512 16d311400bf84a5f04e15f3da4b68b2810e4b005009f4d03dc8a487176dfc294403c976c412c83dcfa8084a49ef7b7d5389b43fb2ba446ce107ce4595e3558c6 -MISC metadata.xml 457 BLAKE2B 630128a3e982b6d60cc7b9f74c79fcb5ee47a71a02c73a50af9da8cedb6fad8e20a7f74b881e5b25c6483b92c9edbd56552cd38b2d9cbfa8b3eb4530facea969 SHA512 674f4f5cd809c6c77bc14e0f5687fa972bef14bdfa0b3343c5d66b7163eef1906eb87d060c8288732f825de71dce291ad0b841a5f2f0dd230f957b5687e45d45 diff --git a/dev-python/langdetect/files/langdetect-1.0.9-explicit-config.patch b/dev-python/langdetect/files/langdetect-1.0.9-explicit-config.patch new file mode 100644 index 000000000000..637368d2f237 --- /dev/null +++ b/dev-python/langdetect/files/langdetect-1.0.9-explicit-config.patch @@ -0,0 +1,13 @@ +Fix "Package 'langdetect.profiles' is absent from the `packages` configuration." + +--- a/setup.py ++++ b/setup.py +@@ -18,7 +18,7 @@ setup( + author_email='michal.danilak@gmail.com', + url='https://github.com/Mimino666/langdetect', + keywords='language detection library', +- packages=['langdetect', 'langdetect.utils', 'langdetect.tests'], ++ packages=['langdetect', 'langdetect.utils', 'langdetect.tests', 'langdetect.profiles'], + include_package_data=True, + install_requires=['six'], + license='MIT', diff --git a/dev-python/langdetect/langdetect-1.0.9.ebuild b/dev-python/langdetect/langdetect-1.0.9.ebuild index c09b7356f549..630fe63c6f53 100644 --- a/dev-python/langdetect/langdetect-1.0.9.ebuild +++ b/dev-python/langdetect/langdetect-1.0.9.ebuild @@ -1,4 +1,4 @@ -# Copyright 2022 Gentoo Authors +# Copyright 2022-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -19,4 +19,6 @@ KEYWORDS="~amd64" RDEPEND="dev-python/six[${PYTHON_USEDEP}]" +PATCHES=( "${FILESDIR}/${P}-explicit-config.patch" ) + distutils_enable_tests unittest diff --git a/dev-python/langdetect/metadata.xml b/dev-python/langdetect/metadata.xml index 020e07f2a3dd..736a1167c898 100644 --- a/dev-python/langdetect/metadata.xml +++ b/dev-python/langdetect/metadata.xml @@ -1,12 +1,6 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd"> <pkgmetadata> - <maintainer type="person"> - <email>marcin.deranek@slonko.net</email> - <name>Marcin Deranek</name> - </maintainer> - <upstream> - <bugs-to>https://github.com/Mimino666/langdetect/issues</bugs-to> - </upstream> - <origin>slonko-overlay</origin> + + <origin>gentoo-guru-overlay</origin> </pkgmetadata>
\ No newline at end of file diff --git a/dev-python/nbclient/files/nbclient-0.10.0-py313.patch b/dev-python/nbclient/files/nbclient-0.10.0-py313.patch new file mode 100644 index 000000000000..1403cd0e0513 --- /dev/null +++ b/dev-python/nbclient/files/nbclient-0.10.0-py313.patch @@ -0,0 +1,35 @@ +From 57222265bfd8bdcf8851997e1dce5cd564e1a573 Mon Sep 17 00:00:00 2001 +From: Lumir Balhar <lbalhar@redhat.com> +Date: Wed, 3 Jul 2024 14:21:41 +0200 +Subject: [PATCH] Fix compatibility with Python 3.13 beta 2 + +There are more calls in 3.13 than in previous versions +so the tests are now more permissive. + +Fixes: https://github.com/jupyter/nbclient/issues/316 +--- + tests/test_cli.py | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/tests/test_cli.py b/tests/test_cli.py +index 04b9887..55ccbd6 100644 +--- a/tests/test_cli.py ++++ b/tests/test_cli.py +@@ -60,7 +60,7 @@ def test_mult(input_names, relative, inplace, jupyterapp, client, reader, writer + # add suffix if needed + paths = [p.with_suffix(".ipynb") for p in paths] + +- assert path_open.mock_calls[::3] == [call(p) for p in paths] ++ assert all(call(p) in path_open.mock_calls for p in paths) + assert reader.call_count == len(paths) + # assert reader.mock_calls == [call(p, as_version=4) for p in paths] + +@@ -114,7 +114,7 @@ def test_output(input_names, relative, output_base, jupyterapp, client, reader, + # add suffix if needed + paths = [p.with_suffix(".ipynb") for p in paths] + +- assert path_open.mock_calls[::3] == [call(p) for p in paths] ++ assert all(call(p) in path_open.mock_calls for p in paths) + assert reader.call_count == len(paths) + + expected = [] diff --git a/dev-python/nbclient/nbclient-0.10.0.ebuild b/dev-python/nbclient/nbclient-0.10.0.ebuild index 88b0ca55b220..9bb0a5ba271e 100644 --- a/dev-python/nbclient/nbclient-0.10.0.ebuild +++ b/dev-python/nbclient/nbclient-0.10.0.ebuild @@ -41,6 +41,11 @@ BDEPEND=" EPYTEST_XDIST=1 distutils_enable_tests pytest +PATCHES=( + # https://github.com/jupyter/nbclient/pull/317 + "${FILESDIR}/${P}-py313.patch" +) + python_test() { local EPYTEST_DESELECT=( # hangs? diff --git a/dev-python/pure-eval/files/pure-eval-0.2.2-py313.patch b/dev-python/pure-eval/files/pure-eval-0.2.2-py313.patch new file mode 100644 index 000000000000..9ec2d680b616 --- /dev/null +++ b/dev-python/pure-eval/files/pure-eval-0.2.2-py313.patch @@ -0,0 +1,63 @@ +From 42e8a1f4a41b60c51619868f543e7b3ee82ac42f Mon Sep 17 00:00:00 2001 +From: Lumir Balhar <lbalhar@redhat.com> +Date: Wed, 15 May 2024 10:14:31 +0200 +Subject: [PATCH] Fix compatibility of check_copy_ast_without_context with Py + 3.13b1 + +Resolves: https://github.com/alexmojaki/pure_eval/issues/16 +--- + tests/test_utils.py | 11 ++++++++++- + 1 file changed, 10 insertions(+), 1 deletion(-) + +diff --git a/tests/test_utils.py b/tests/test_utils.py +index 172f50e..3a9cc9b 100644 +--- a/tests/test_utils.py ++++ b/tests/test_utils.py +@@ -58,7 +58,16 @@ def check_copy_ast_without_context(tree): + dump1 = ast.dump(tree) + dump2 = ast.dump(tree2) + normalised_dump1 = re.sub( +- r", ctx=(Load|Store|Del)\(\)", ++ # Two possible matches: ++ # - first one like ", ctx=…" where ", " should be removed ++ # - second one like "(ctx=…" where "(" should be kept ++ ( ++ r"(" ++ r", ctx=(Load|Store|Del)\(\)" ++ r"|" ++ r"(?<=\()ctx=(Load|Store|Del)\(\)" ++ r")" ++ ), + "", + dump1 + ) +From 89645cfd19d1480d586af50842f0ac264a036fa8 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= <miro@hroncok.cz> +Date: Sun, 9 Jun 2024 21:45:31 +0200 +Subject: [PATCH] Explicitly remove the ctx attribute in + copy_ast_without_context + +Python 3.13.0b2+ defaults to Load when we don't pass ctx +See https://github.com/python/cpython/pull/118871 +--- + pure_eval/utils.py | 7 ++++++- + 1 file changed, 6 insertions(+), 1 deletion(-) + +diff --git a/pure_eval/utils.py b/pure_eval/utils.py +index a8a3730..19ead65 100644 +--- a/pure_eval/utils.py ++++ b/pure_eval/utils.py +@@ -184,7 +184,12 @@ def copy_ast_without_context(x): + if field != 'ctx' + if hasattr(x, field) + } +- return type(x)(**kwargs) ++ a = type(x)(**kwargs) ++ if hasattr(a, 'ctx'): ++ # Python 3.13.0b2+ defaults to Load when we don't pass ctx ++ # https://github.com/python/cpython/pull/118871 ++ del a.ctx ++ return a + elif isinstance(x, list): + return list(map(copy_ast_without_context, x)) + else: diff --git a/dev-python/pure-eval/pure-eval-0.2.2-r1.ebuild b/dev-python/pure-eval/pure-eval-0.2.2-r1.ebuild new file mode 100644 index 000000000000..787b0e0c3556 --- /dev/null +++ b/dev-python/pure-eval/pure-eval-0.2.2-r1.ebuild @@ -0,0 +1,43 @@ +# 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} pypy3 ) + +inherit distutils-r1 pypi + +DESCRIPTION="Safely evaluate AST nodes without side effects" +HOMEPAGE=" + https://github.com/alexmojaki/pure_eval/ + https://pypi.org/project/pure-eval/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos" + +distutils_enable_tests pytest + +PATCHES=( + # https://github.com/alexmojaki/pure_eval/commit/42e8a1f4a41b60c51619868f543e7b3ee82ac42f + # https://github.com/alexmojaki/pure_eval/pull/18 + "${FILESDIR}/${P}-py313.patch" +) + +python_test() { + local EPYTEST_DESELECT=() + + case ${EPYTHON} in + pypy3) + EPYTEST_DESELECT+=( + # https://github.com/alexmojaki/pure_eval/issues/15 + tests/test_getattr_static.py::TestGetattrStatic::test_custom_object_dict + tests/test_utils.py::test_safe_name_samples + ) + ;; + esac + + epytest +} diff --git a/dev-python/pyatspi/pyatspi-2.46.1.ebuild b/dev-python/pyatspi/pyatspi-2.46.1.ebuild index 6d21ecec1689..41643d7b018c 100644 --- a/dev-python/pyatspi/pyatspi-2.46.1.ebuild +++ b/dev-python/pyatspi/pyatspi-2.46.1.ebuild @@ -24,11 +24,13 @@ DEPEND=" dev-python/dbus-python[${PYTHON_USEDEP}] >=dev-python/pygobject-2.90.1:3[${PYTHON_USEDEP}] " -RDEPEND="${DEPEND} +RDEPEND=" + ${DEPEND} >=sys-apps/dbus-1 >=app-accessibility/at-spi2-core-2.34[introspection] " -BDEPEND="virtual/pkgconfig +BDEPEND=" + virtual/pkgconfig test? ( x11-libs/gtk+:3 ) " diff --git a/dev-python/pygdbmi/pygdbmi-0.11.0.0.ebuild b/dev-python/pygdbmi/pygdbmi-0.11.0.0.ebuild index 74e7b5e8b622..b0d17036505b 100644 --- a/dev-python/pygdbmi/pygdbmi-0.11.0.0.ebuild +++ b/dev-python/pygdbmi/pygdbmi-0.11.0.0.ebuild @@ -22,7 +22,7 @@ SRC_URI=" LICENSE="MIT" SLOT="0" -KEYWORDS="~amd64 ~arm64 ~riscv" +KEYWORDS="~amd64 ~arm64 ~riscv ~x86" RDEPEND=" >=dev-debug/gdb-9.6 diff --git a/dev-python/pypiserver/Manifest b/dev-python/pypiserver/Manifest index 7b90dece416f..240b9ba1ca91 100644 --- a/dev-python/pypiserver/Manifest +++ b/dev-python/pypiserver/Manifest @@ -1,2 +1 @@ -DIST pypiserver-2.0.1.gh.tar.gz 156624 BLAKE2B b37700ffe0c7361289a3825dafd86041fab9ddf574d7792c7cd155f7e869a1bdd2de4e2a658c808afc7fe5ee8989876fcb7e85a8da74202c2c4c4344fbaf1df4 SHA512 962b34ea2bbca680fcf7ee8153ecea09c2f0c1bcebaaacee4666c93deab9d2508e08a22d82635a64d8aaec7cab3b5485e3752f1439006ed01b58539035f3b711 DIST pypiserver-2.1.1.gh.tar.gz 157393 BLAKE2B e80c73b2422dc87bba09d8c9c2e1ffc72017ec58c5530d3debb95560b50a776e1603cb5641c7e4af1ed87d64750843ae025a6a47ab4cc28ce0de1051dd5b214f SHA512 d85afb0d2c85c76a62e393d7d7824e91ff052a04e985278db48010b6f71d12c7749139245e69932b78aefbf3152ba8a8b463bfcd21d1772d047d64f0b164681a diff --git a/dev-python/pypiserver/pypiserver-2.0.1.ebuild b/dev-python/pypiserver/pypiserver-2.0.1.ebuild deleted file mode 100644 index 468670bb0b9f..000000000000 --- a/dev-python/pypiserver/pypiserver-2.0.1.ebuild +++ /dev/null @@ -1,76 +0,0 @@ -# Copyright 1999-2023 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} pypy3 ) - -inherit distutils-r1 - -DESCRIPTION="Minimal PyPI server" -HOMEPAGE=" - https://github.com/pypiserver/pypiserver/ - https://pypi.org/project/pypiserver/ -" -SRC_URI=" - https://github.com/pypiserver/pypiserver/archive/v${PV}.tar.gz - -> ${P}.gh.tar.gz -" - -LICENSE="ZLIB" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos" - -RDEPEND=" - dev-python/bottle[${PYTHON_USEDEP}] - >=dev-python/pip-7[${PYTHON_USEDEP}] - >=dev-python/wheel-0.25.0[${PYTHON_USEDEP}] -" -# NB: many test deps are optional/specific to tests we skip -BDEPEND=" - dev-python/setuptools-git[${PYTHON_USEDEP}] - test? ( - >=dev-python/passlib-1.6[${PYTHON_USEDEP}] - dev-python/setuptools[${PYTHON_USEDEP}] - dev-python/webtest[${PYTHON_USEDEP}] - ) -" - -DOCS=( CHANGES.rst README.md ) - -PATCHES=( - "${FILESDIR}/${PN}-1.5.0-unbundle-bottle.patch" -) - -distutils_enable_tests pytest - -src_prepare() { - # remove bundled bottle (sic!) - rm pypiserver/bottle.py || die - distutils-r1_src_prepare -} - -python_test() { - local EPYTEST_DESELECT=( - # Internet - tests/test_server.py::test_hash_algos - tests/test_server.py::test_pipInstall_openOk - tests/test_server.py::test_pipInstall_authedOk - # TODO - tests/test_app.py::test_root_count - tests/test_server.py::test_pip_install_open_succeeds - tests/test_server.py::test_pip_install_authed_succeeds - # seems to rely on internal bottle details - tests/test_main.py::test_auto_servers - ) - - if ! has_version dev-python/twine; then - EPYTEST_DESELECT+=( - tests/test_server.py::test_twine_upload - tests/test_server.py::test_twine_register - ) - fi - - epytest tests -} diff --git a/dev-python/pypiserver/pypiserver-2.1.1.ebuild b/dev-python/pypiserver/pypiserver-2.1.1.ebuild index 47b30d082a22..e0980d2542f3 100644 --- a/dev-python/pypiserver/pypiserver-2.1.1.ebuild +++ b/dev-python/pypiserver/pypiserver-2.1.1.ebuild @@ -20,7 +20,7 @@ SRC_URI=" LICENSE="ZLIB" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc x86" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 sparc x86" RDEPEND=" dev-python/bottle[${PYTHON_USEDEP}] diff --git a/dev-python/pytest-freezer/pytest-freezer-0.4.8.ebuild b/dev-python/pytest-freezer/pytest-freezer-0.4.8.ebuild index 56687d4ca5d1..226d7a37cb6d 100644 --- a/dev-python/pytest-freezer/pytest-freezer-0.4.8.ebuild +++ b/dev-python/pytest-freezer/pytest-freezer-0.4.8.ebuild @@ -16,7 +16,7 @@ HOMEPAGE=" LICENSE="MIT" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86" RDEPEND=" >=dev-python/freezegun-1.0[${PYTHON_USEDEP}] diff --git a/dev-python/python-dotenv/python-dotenv-1.0.1.ebuild b/dev-python/python-dotenv/python-dotenv-1.0.1.ebuild index cd9d751308ac..d7a20d7e8a15 100644 --- a/dev-python/python-dotenv/python-dotenv-1.0.1.ebuild +++ b/dev-python/python-dotenv/python-dotenv-1.0.1.ebuild @@ -22,10 +22,8 @@ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv BDEPEND=" test? ( >=dev-python/click-5[${PYTHON_USEDEP}] + dev-python/ipython[${PYTHON_USEDEP}] >=dev-python/sh-2[${PYTHON_USEDEP}] - $(python_gen_cond_dep ' - dev-python/ipython[${PYTHON_USEDEP}] - ' python3_{10..12}) ) " diff --git a/dev-python/python-json-logger/files/python-json-logger-2.0.7-py312.patch b/dev-python/python-json-logger/files/python-json-logger-2.0.7-py312.patch new file mode 100644 index 000000000000..1cab3b851ff6 --- /dev/null +++ b/dev-python/python-json-logger/files/python-json-logger-2.0.7-py312.patch @@ -0,0 +1,38 @@ +From 0ce621a8dd9dfa708a920c0ad90df8f7593b6110 Mon Sep 17 00:00:00 2001 +From: cache-miss <cache-miss> +Date: Sat, 9 Mar 2024 18:27:24 +0800 +Subject: [PATCH] add taskName to reserved_attrs which was added in python 3.12 + +Closes: https://github.com/madzak/python-json-logger/pull/188 +--- + src/pythonjsonlogger/jsonlogger.py | 7 +++++++ + 1 file changed, 7 insertions(+) + +diff --git a/src/pythonjsonlogger/jsonlogger.py b/src/pythonjsonlogger/jsonlogger.py +index e250c7e..a911478 100644 +--- a/src/pythonjsonlogger/jsonlogger.py ++++ b/src/pythonjsonlogger/jsonlogger.py +@@ -6,6 +6,7 @@ import logging + import json + import re + from datetime import date, datetime, time, timezone ++import sys + import traceback + import importlib + +@@ -23,6 +24,12 @@ RESERVED_ATTRS: Tuple[str, ...] = ( + 'msecs', 'message', 'msg', 'name', 'pathname', 'process', + 'processName', 'relativeCreated', 'stack_info', 'thread', 'threadName') + ++if sys.version_info >= (3, 12): ++ RESERVED_ATTRS = ( ++ *RESERVED_ATTRS, ++ "taskName", ++ ) ++ + + + def merge_record_extra( +-- +2.45.2 + diff --git a/dev-python/python-json-logger/files/python-json-logger-2.0.7-py313.patch b/dev-python/python-json-logger/files/python-json-logger-2.0.7-py313.patch new file mode 100644 index 000000000000..8421617783da --- /dev/null +++ b/dev-python/python-json-logger/files/python-json-logger-2.0.7-py313.patch @@ -0,0 +1,25 @@ +diff --git a/tests/test_jsonlogger.py b/tests/test_jsonlogger.py +index af369d2..068e760 100644 +--- a/tests/test_jsonlogger.py ++++ b/tests/test_jsonlogger.py +@@ -176,13 +176,17 @@ def test_json_default_encoder(self): + "1900-01-01T00:00:00") + + @unittest.mock.patch('time.time', return_value=1500000000.0) +- def test_json_default_encoder_with_timestamp(self, time_mock): ++ @unittest.mock.patch('time.time_ns', return_value=1500000000000000000) ++ def test_json_default_encoder_with_timestamp(self, time_ns_mock, time_mock): + fr = jsonlogger.JsonFormatter(timestamp=True) + self.log_handler.setFormatter(fr) + + self.log.info("Hello") +- +- self.assertTrue(time_mock.called) ++ ++ if sys.version_info < (3, 13): ++ self.assertTrue(time_mock.called) ++ else: ++ self.assertTrue(time_ns_mock.called) + log_json = json.loads(self.buffer.getvalue()) + self.assertEqual(log_json.get("timestamp"), "2017-07-14T02:40:00+00:00") + diff --git a/dev-python/python-json-logger/python-json-logger-2.0.7-r1.ebuild b/dev-python/python-json-logger/python-json-logger-2.0.7-r1.ebuild new file mode 100644 index 000000000000..eebbd60da169 --- /dev/null +++ b/dev-python/python-json-logger/python-json-logger-2.0.7-r1.ebuild @@ -0,0 +1,34 @@ +# Copyright 1999-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} pypy3 ) + +inherit distutils-r1 pypi + +DESCRIPTION="Standard python logging to output log data as json objects" +HOMEPAGE=" + https://github.com/madzak/python-json-logger/ + https://pypi.org/project/python-json-logger/ +" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +distutils_enable_tests pytest + +PATCHES=( + # https://github.com/madzak/python-json-logger/pull/188 + "${FILESDIR}/${P}-py312.patch" + # https://github.com/madzak/python-json-logger/pull/192 + "${FILESDIR}/${P}-py313.patch" +) + +python_test() { + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + epytest +} diff --git a/dev-python/python-mpv/Manifest b/dev-python/python-mpv/Manifest index 5a626d2a9dab..a6c5771121bc 100644 --- a/dev-python/python-mpv/Manifest +++ b/dev-python/python-mpv/Manifest @@ -1,2 +1 @@ -DIST python-mpv-1.0.6.gh.tar.gz 212503 BLAKE2B f0b63116f90b0d9e0be7d1f7e3586390d1486a89fd2eee8362f0e569b397a9d61dd597b39307559ea4206fdb98c70bbb09e07fbcbc64d60026b21522c1396053 SHA512 f5848f62f978372b04d09e89e9d04b64ff0c437a1f9f63c4ba4751bbe4a8bd0eb20e7503a3f25c7ca64ef0ab5c91db8be68473dbc29a04d78a9246ed784bcc38 DIST python-mpv-1.0.7.gh.tar.gz 212686 BLAKE2B 5a3de241739196a3baec6fb985422d82ae35fe0b3709ba96bdc7ae51489de02495f886b0c5ca38fbfdd110e974954dc715e9334925e558f69f8961f00487b9ed SHA512 9373259bab0857855cb08c13f9f33fb3a26f880b09c8c468ce1330433c1b2cff72a5015fc066fb830a4089eff08852ad5aa05e648bfba617b9b3d225860c20d3 diff --git a/dev-python/python-mpv/python-mpv-1.0.6.ebuild b/dev-python/python-mpv/python-mpv-1.0.6.ebuild deleted file mode 100644 index b1166125d73f..000000000000 --- a/dev-python/python-mpv/python-mpv-1.0.6.ebuild +++ /dev/null @@ -1,46 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{8,9,10,11,12} ) -DISTUTILS_USE_PEP517=setuptools - -inherit distutils-r1 virtualx - -DESCRIPTION="Python interface to the mpv media player" -HOMEPAGE=" - https://github.com/jaseg/python-mpv/ - https://pypi.org/project/python-mpv/ -" -SRC_URI=" - https://github.com/jaseg/python-mpv/archive/v${PV}.tar.gz - -> ${P}.gh.tar.gz -" - -LICENSE="AGPL-3" -SLOT="0" -KEYWORDS="~amd64 ~arm64" - -RDEPEND=" - media-video/mpv[libmpv] - dev-python/pillow[${PYTHON_USEDEP}] -" - -BDEPEND=" - test? ( - dev-python/pyvirtualdisplay[${PYTHON_USEDEP}] - ) -" - -distutils_enable_tests pytest - -python_test() { - local EPYTEST_DESELECT=( - # hanging tests - tests/test_mpv.py::TestLifecycle::test_wait_for_property_event_overflow - tests/test_mpv.py::TestStreams::test_custom_stream - ) - - virtx epytest -} diff --git a/dev-python/pythran/pythran-0.16.1.ebuild b/dev-python/pythran/pythran-0.16.1.ebuild index 95783e166e03..51df5f775982 100644 --- a/dev-python/pythran/pythran-0.16.1.ebuild +++ b/dev-python/pythran/pythran-0.16.1.ebuild @@ -41,9 +41,7 @@ DEPEND=" " BDEPEND=" test? ( - $(python_gen_cond_dep ' - dev-python/ipython[${PYTHON_USEDEP}] - ' 3.{10..12}) + dev-python/ipython[${PYTHON_USEDEP}] dev-python/pip[${PYTHON_USEDEP}] dev-python/packaging[${PYTHON_USEDEP}] dev-python/scipy[${PYTHON_USEDEP}] diff --git a/dev-python/qiskit/Manifest b/dev-python/qiskit/Manifest index 4323cb371fa1..7726e2edfcbf 100644 --- a/dev-python/qiskit/Manifest +++ b/dev-python/qiskit/Manifest @@ -103,6 +103,7 @@ DIST py_literal-0.4.0.crate 16747 BLAKE2B 824a3aeb85dc95f0b126f286d23dbe951c0e76 DIST pyo3-0.21.2.crate 504574 BLAKE2B 1b8bf374d1b61e3e4bedce6344338126051a6d951ea87d258e5ed92d4c0e13b0202f2e7e56500277c54743dd16c9b4587f436cf2058567501c8a9ac7c6b6c17a SHA512 5f88cda423e82b62698a74ceaa31fc27e5c1f1d417928accddb2e00337d163fda622f774ae6e24c1cb73c467d6b01e9a2ba866e4454338b1fbfc892ae14ffc53 DIST pyo3-build-config-0.21.2.crate 30581 BLAKE2B 993c1f7f15124336b70570ed3949cc0873c2b883e81dd3a350f347cf014fb9a82d487197fdaf475989b727b7ee8d9a5511a72422f76126b8788c4f40831baed8 SHA512 8b6bedb31235de3dd95bca6e19ea4eb7752227ceb9f1c928c4df2b277df5ee443e5c262e448012e4e54e3104213db4d745c9c42f79ab3029dee68f48ec3a2795 DIST pyo3-ffi-0.21.2.crate 66160 BLAKE2B 759622fa3a41bcdb48170983c4e194898415f8db16a7c57ace89a7945bd47374d9a14e5ecf24e80a178bde597cfa30d41f9e6617b458d365640bdbda048e6f6e SHA512 5cbc9dfb14569210776fd66341e77e61642a9920354251a65b91aa13a0fb1c373258d1a6b4f8feacdc4266d472193d8f20a6dd2cc180ccc3d43fb66237ae6d0d +DIST pyo3-ffi-0.22.1-py313.patch 6315 BLAKE2B 55f9c5d45356e8c4b2a86da0f489788de576d7fb4c7b124a87d953e8d3a850fbeb05a1af8e6f34edf252aeda40445f711f4409a3a80df7442bd4676c1d8969f8 SHA512 f6e6e2498bbd8b60e013b4cb6e1f1eda764292e3cd91ba5800fe798521f462bb97f1e621711513d52c263f7b394821a710252425cfb0de0f1c4457882dd138ab DIST pyo3-macros-0.21.2.crate 7920 BLAKE2B 60ceb626fd1ffeca7e81ebc721bb4cfebd99bb708d48bbfdd296b250ed41471f82e8657715e1f58840423ac11d8c5a84a6107a7037affdea4e0c2cc561514ed7 SHA512 95335a55d57346107fdc7591d51e36aa0a985d6c44a875475a0ed52df25d33b21a7b922fdab0eed190da9708968e79f7cd50bc683b6d210eb068713a915ac7f4 DIST pyo3-macros-backend-0.21.2.crate 58088 BLAKE2B 05dd49983c8aeddc47cd94f6cd58f10e41ad6f4ec57006908cde4fe3edbcf6814058d7843a88c9dbeb0824f840ad3509414c52e47fffe5ad4b730f791c9a3f19 SHA512 f8488ba0a68f1ae20d053e2323d065f03b40c24231a50b05205b100e973ae50bc7bb9c25e4d37df56f4cfa73d2001655ce9685078d1017a4a90bd7945c01b833 DIST qiskit-1.1.0.gh.tar.gz 9734708 BLAKE2B b188fe116ff5d0fa498e2b5c829b61950043163528ff39a51701d4f497a9dc0e1ffa27c518833dec84198682477c3398e8edb737d74b4f321b70fb3971b25a57 SHA512 7830b004b32461918ae5a739ee0dc1043386877f22f5112607828f6100e8b7b8b00fd946f465a1ae160fa1f6c40c1339dc743c7811add1c03e20c67d206a29e4 diff --git a/dev-python/qiskit/qiskit-1.1.1-r1.ebuild b/dev-python/qiskit/qiskit-1.1.1-r1.ebuild new file mode 100644 index 000000000000..fec0e0248dba --- /dev/null +++ b/dev-python/qiskit/qiskit-1.1.1-r1.ebuild @@ -0,0 +1,304 @@ +# Copyright 2022-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} ) + +CRATES=" + ahash@0.7.8 + ahash@0.8.11 + allocator-api2@0.2.18 + always-assert@0.1.3 + approx@0.5.1 + ariadne@0.3.0 + autocfg@1.2.0 + bitflags@1.3.2 + bitflags@2.5.0 + block-buffer@0.10.4 + boolenum@0.1.0 + bytemuck@1.15.0 + bytemuck_derive@1.6.0 + byteorder@1.5.0 + cfg-if@1.0.0 + coe-rs@0.1.2 + concolor-query@0.3.3 + concolor@0.1.1 + countme@3.0.1 + cov-mark@2.0.0-pre.1 + cpufeatures@0.2.12 + crossbeam-channel@0.5.12 + crossbeam-deque@0.8.5 + crossbeam-epoch@0.9.18 + crossbeam-utils@0.8.19 + crunchy@0.2.2 + crypto-common@0.1.6 + dbgf@0.1.2 + digest@0.10.7 + drop_bomb@0.1.5 + dyn-stack@0.10.0 + either@1.11.0 + enum-as-inner@0.6.0 + equator-macro@0.1.9 + equator@0.1.10 + equivalent@1.0.1 + faer-entity@0.18.0 + faer-ext@0.1.0 + faer@0.18.2 + fixedbitset@0.4.2 + gemm-c32@0.17.1 + gemm-c64@0.17.1 + gemm-common@0.17.1 + gemm-f16@0.17.1 + gemm-f32@0.17.1 + gemm-f64@0.17.1 + gemm@0.17.1 + generic-array@0.14.7 + getrandom@0.2.14 + half@2.4.1 + hashbrown@0.12.3 + hashbrown@0.14.5 + heck@0.4.1 + hermit-abi@0.3.9 + indexmap@1.9.3 + indexmap@2.2.6 + indoc@2.0.5 + is-terminal@0.4.12 + itertools@0.10.5 + itertools@0.11.0 + itertools@0.12.1 + jod-thread@0.1.2 + libc@0.2.154 + libm@0.2.8 + lock_api@0.4.12 + log@0.4.21 + matrixcompare-core@0.1.0 + matrixcompare@0.3.0 + matrixmultiply@0.3.8 + memchr@2.7.2 + memoffset@0.9.1 + miow@0.5.0 + ndarray@0.15.6 + npyz@0.8.3 + num-bigint@0.4.4 + num-complex@0.4.5 + num-integer@0.1.46 + num-traits@0.2.18 + numpy@0.21.0 + once_cell@1.19.0 + oq3_lexer@0.6.0 + oq3_parser@0.6.0 + oq3_semantics@0.6.0 + oq3_source_file@0.6.0 + oq3_syntax@0.6.0 + parking_lot@0.12.2 + parking_lot_core@0.9.10 + paste@1.0.14 + pest@2.7.10 + pest_derive@2.7.10 + pest_generator@2.7.10 + pest_meta@2.7.10 + petgraph@0.6.4 + portable-atomic@1.6.0 + ppv-lite86@0.2.17 + priority-queue@1.4.0 + proc-macro-error-attr@1.0.4 + proc-macro-error@1.0.4 + proc-macro2@1.0.81 + pulp-macro@0.1.1 + pulp@0.18.10 + py_literal@0.4.0 + pyo3-build-config@0.21.2 + pyo3-ffi@0.21.2 + pyo3-macros-backend@0.21.2 + pyo3-macros@0.21.2 + pyo3@0.21.2 + quote@1.0.36 + ra_ap_limit@0.0.188 + ra_ap_stdx@0.0.188 + rand@0.8.5 + rand_chacha@0.3.1 + rand_core@0.6.4 + rand_distr@0.4.3 + rand_pcg@0.3.1 + raw-cpuid@10.7.0 + rawpointer@0.2.1 + rayon-cond@0.3.0 + rayon-core@1.12.1 + rayon@1.10.0 + reborrow@0.5.5 + redox_syscall@0.5.1 + rowan@0.15.15 + rustc-hash@1.1.0 + rustversion@1.0.15 + rustworkx-core@0.14.2 + same-file@1.0.6 + scopeguard@1.2.0 + seq-macro@0.3.5 + serde@1.0.200 + serde_derive@1.0.200 + sha2@0.10.8 + smallvec@1.13.2 + smol_str@0.2.1 + syn@1.0.109 + syn@2.0.60 + sysctl@0.5.5 + target-lexicon@0.12.14 + text-size@1.1.1 + thiserror-impl@1.0.59 + thiserror@1.0.59 + triomphe@0.1.11 + typenum@1.17.0 + ucd-trie@0.1.6 + unicode-ident@1.0.12 + unicode-properties@0.1.1 + unicode-width@0.1.12 + unicode-xid@0.2.4 + unindent@0.2.3 + version_check@0.9.4 + walkdir@2.5.0 + wasi@0.11.0+wasi-snapshot-preview1 + winapi-i686-pc-windows-gnu@0.4.0 + winapi-util@0.1.8 + winapi-x86_64-pc-windows-gnu@0.4.0 + winapi@0.3.9 + windows-sys@0.42.0 + windows-sys@0.45.0 + windows-sys@0.52.0 + windows-targets@0.42.2 + windows-targets@0.52.5 + windows_aarch64_gnullvm@0.42.2 + windows_aarch64_gnullvm@0.52.5 + windows_aarch64_msvc@0.42.2 + windows_aarch64_msvc@0.52.5 + windows_i686_gnu@0.42.2 + windows_i686_gnu@0.52.5 + windows_i686_gnullvm@0.52.5 + windows_i686_msvc@0.42.2 + windows_i686_msvc@0.52.5 + windows_x86_64_gnu@0.42.2 + windows_x86_64_gnu@0.52.5 + windows_x86_64_gnullvm@0.42.2 + windows_x86_64_gnullvm@0.52.5 + windows_x86_64_msvc@0.42.2 + windows_x86_64_msvc@0.52.5 + xshell-macros@0.2.6 + xshell@0.2.6 + yansi@0.5.1 + zerocopy-derive@0.7.32 + zerocopy@0.7.32 +" + +inherit cargo distutils-r1 + +MY_P=qiskit-${PV} +DESCRIPTION="An open-source SDK for working with quantum computers" +HOMEPAGE=" + https://github.com/Qiskit/qiskit/ + https://pypi.org/project/qiskit/ +" +SRC_URI=" + https://github.com/Qiskit/qiskit/archive/${PV}.tar.gz + -> ${MY_P}.gh.tar.gz + ${CARGO_CRATE_URIS} + https://github.com/PyO3/pyo3/pull/4324.patch + -> pyo3-ffi-0.22.1-py313.patch +" +S=${WORKDIR}/${MY_P} + +LICENSE="Apache-2.0" +# Dependent crate licenses +LICENSE+=" + Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 MIT + Unicode-DFS-2016 + || ( LGPL-3 MPL-2.0 ) +" +SLOT="0" +KEYWORDS="~amd64" +IUSE="+visualization" + +RDEPEND=" + >=dev-python/dill-0.3[${PYTHON_USEDEP}] + >=dev-python/numpy-1.17[${PYTHON_USEDEP}] + >=dev-python/python-constraint-1.4[${PYTHON_USEDEP}] + >=dev-python/python-dateutil-2.8.0[${PYTHON_USEDEP}] + >=dev-python/rustworkx-0.14.0[${PYTHON_USEDEP}] + >=dev-python/scipy-1.5[${PYTHON_USEDEP}] + >=dev-python/stevedore-3.0.0[${PYTHON_USEDEP}] + >=dev-python/symengine-0.11.0[${PYTHON_USEDEP}] + >=dev-python/sympy-1.3[${PYTHON_USEDEP}] + $(python_gen_cond_dep ' + dev-python/typing-extensions[${PYTHON_USEDEP}] + ' 3.10) + visualization? ( + >=dev-python/matplotlib-3.3[${PYTHON_USEDEP}] + dev-python/pydot[${PYTHON_USEDEP}] + >=dev-python/pillow-4.2.1[${PYTHON_USEDEP}] + >=dev-python/pylatexenc-1.4[${PYTHON_USEDEP}] + >=dev-python/seaborn-0.9.0[${PYTHON_USEDEP}] + ) +" +BDEPEND=" + >=dev-python/cython-0.27.1[${PYTHON_USEDEP}] + test? ( + app-text/poppler[png] + >=dev-python/ddt-1.4.4[${PYTHON_USEDEP}] + >=dev-python/hypothesis-4.24.3[${PYTHON_USEDEP}] + >=dev-python/networkx-2.2[${PYTHON_USEDEP}] + >=dev-python/qiskit-aer-0.14[${PYTHON_USEDEP}] + >=dev-python/scikit-learn-0.20.0[${PYTHON_USEDEP}] + ) +" + +# Files built without CFLAGS/LDFLAGS, acceptable for rust +QA_FLAGS_IGNORED=" + usr/lib.*/py.*/site-packages/qiskit/_accelerate.*.so + usr/lib.*/py.*/site-packages/qiskit/_qasm2.*.so +" + +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +src_prepare() { + distutils-r1_src_prepare + + # strip forcing -Werror from tests that also leaks to other packages + sed -i -e '/filterwarnings.*error/d' test/utils/base.py || die + + cd "${ECARGO_VENDOR}"/pyo3-ffi-*/ || die + eapply -p2 "${DISTDIR}/pyo3-ffi-0.22.1-py313.patch" +} + +python_test() { + local EPYTEST_DESELECT=( + # TODO + test/python/circuit/test_equivalence.py::TestEquivalenceLibraryVisualization::test_equivalence_draw + test/python/quantum_info/operators/symplectic/test_sparse_pauli_op.py::TestSparsePauliOpConversions::test_to_matrix_zero + test/python/transpiler/test_unitary_synthesis_plugin.py::TestUnitarySynthesisPlugin + test/python/visualization/test_dag_drawer.py::TestDagDrawer::test_dag_drawer_no_register + ) + + local EPYTEST_IGNORE=( + # Breaks xdist + test/python/qasm2/test_parse_errors.py + ) + + case ${EPYTHON} in + python3.13) + EPYTEST_DESELECT+=( + # docstring mismatches + test/python/utils/test_deprecation.py::AddDeprecationDocstringTest::test_add_deprecation_docstring_meta_lines + test/python/utils/test_deprecation.py::AddDeprecationDocstringTest::test_add_deprecation_docstring_multiple_entries + test/python/utils/test_deprecation.py::AddDeprecationDocstringTest::test_add_deprecation_docstring_no_meta_lines + ) + ;; + esac + + rm -rf qiskit || die + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + # Run the Python test suite rather than everything under test/ which + # includes the 'randomized' suite. Upstream run that in a separate CI job. + epytest test/python +} diff --git a/dev-python/qiskit/qiskit-1.1.1.ebuild b/dev-python/qiskit/qiskit-1.1.1.ebuild index cf1c9e8ff4c1..b44f43abdcf1 100644 --- a/dev-python/qiskit/qiskit-1.1.1.ebuild +++ b/dev-python/qiskit/qiskit-1.1.1.ebuild @@ -245,7 +245,6 @@ BDEPEND=" >=dev-python/ddt-1.4.4[${PYTHON_USEDEP}] >=dev-python/hypothesis-4.24.3[${PYTHON_USEDEP}] >=dev-python/networkx-2.2[${PYTHON_USEDEP}] - <dev-python/pytest-8.2[${PYTHON_USEDEP}] >=dev-python/qiskit-aer-0.14[${PYTHON_USEDEP}] >=dev-python/scikit-learn-0.20.0[${PYTHON_USEDEP}] ) @@ -270,6 +269,7 @@ python_test() { local EPYTEST_DESELECT=( # TODO test/python/circuit/test_equivalence.py::TestEquivalenceLibraryVisualization::test_equivalence_draw + test/python/quantum_info/operators/symplectic/test_sparse_pauli_op.py::TestSparsePauliOpConversions::test_to_matrix_zero test/python/transpiler/test_unitary_synthesis_plugin.py::TestUnitarySynthesisPlugin test/python/visualization/test_dag_drawer.py::TestDagDrawer::test_dag_drawer_no_register ) diff --git a/dev-python/rapidfuzz-capi/Manifest b/dev-python/rapidfuzz-capi/Manifest deleted file mode 100644 index 2b991b1ac19f..000000000000 --- a/dev-python/rapidfuzz-capi/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST rapidfuzz_capi-1.0.5.gh.tar.gz 5908 BLAKE2B a5f3c27c2292800527f0e0558e0f25525c2865a6348fbbe36da8d5a96e5524c68154bfba8dbfc3c174f759dde14a95c64e47dd6669166beb035bd1126741569b SHA512 b62c6fdd0e5d0804f7c1ef6f6b5e007afd8439720071fbdf1440232c62925e794a6ae33774a33ef745ebbd4ef956a85d2bf60934a7d568d39d1e590467f26bcf diff --git a/dev-python/rapidfuzz-capi/metadata.xml b/dev-python/rapidfuzz-capi/metadata.xml deleted file mode 100644 index ea8988e8af6a..000000000000 --- a/dev-python/rapidfuzz-capi/metadata.xml +++ /dev/null @@ -1,11 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd"> -<pkgmetadata> - <maintainer type="project"> - <email>python@gentoo.org</email> - <name>Python</name> - </maintainer> - - <origin>gentoo-staging</origin> - <stabilize-allarches/> -</pkgmetadata>
\ No newline at end of file diff --git a/dev-python/rapidfuzz-capi/rapidfuzz-capi-1.0.5.ebuild b/dev-python/rapidfuzz-capi/rapidfuzz-capi-1.0.5.ebuild deleted file mode 100644 index 14cf6e50e2a9..000000000000 --- a/dev-python/rapidfuzz-capi/rapidfuzz-capi-1.0.5.ebuild +++ /dev/null @@ -1,25 +0,0 @@ -# Copyright 2022-2023 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} pypy3 ) - -inherit distutils-r1 - -MY_P=rapidfuzz_capi-${PV} -DESCRIPTION="C-API of RapidFuzz, which can be used to extend RapidFuzz" -HOMEPAGE=" - https://github.com/maxbachmann/rapidfuzz_capi/ - https://pypi.org/project/rapidfuzz-capi/ -" -SRC_URI=" - https://github.com/maxbachmann/rapidfuzz_capi/archive/v${PV}.tar.gz - -> ${MY_P}.gh.tar.gz -" -S=${WORKDIR}/${MY_P} - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86" diff --git a/dev-python/rustworkx/Manifest b/dev-python/rustworkx/Manifest index 68cc84817326..a65f00e00bb9 100644 --- a/dev-python/rustworkx/Manifest +++ b/dev-python/rustworkx/Manifest @@ -84,6 +84,7 @@ DIST pyo3-build-config-0.20.2.crate 30029 BLAKE2B 846eb95d1417a658763417a2750dca DIST pyo3-build-config-0.21.2.crate 30581 BLAKE2B 993c1f7f15124336b70570ed3949cc0873c2b883e81dd3a350f347cf014fb9a82d487197fdaf475989b727b7ee8d9a5511a72422f76126b8788c4f40831baed8 SHA512 8b6bedb31235de3dd95bca6e19ea4eb7752227ceb9f1c928c4df2b277df5ee443e5c262e448012e4e54e3104213db4d745c9c42f79ab3029dee68f48ec3a2795 DIST pyo3-ffi-0.20.2.crate 64601 BLAKE2B cf1141ad34a13dcb46de0d1e15dda192ca41a7441bfc92a9295861876dcc690d1d5d6d39dafa51cd70c4627353efa91563eaefee8c39f655d12818003f9524da SHA512 ee6386b6fdb80689d104f9cd5229f02e1893d00a52be710bd36882c47305abbe24ef2f3cdef8200fddc0bb97e29001fa3a2fd9d3d2673ecd9a104a070420d01e DIST pyo3-ffi-0.21.2.crate 66160 BLAKE2B 759622fa3a41bcdb48170983c4e194898415f8db16a7c57ace89a7945bd47374d9a14e5ecf24e80a178bde597cfa30d41f9e6617b458d365640bdbda048e6f6e SHA512 5cbc9dfb14569210776fd66341e77e61642a9920354251a65b91aa13a0fb1c373258d1a6b4f8feacdc4266d472193d8f20a6dd2cc180ccc3d43fb66237ae6d0d +DIST pyo3-ffi-0.22.1-py313.patch 6315 BLAKE2B 55f9c5d45356e8c4b2a86da0f489788de576d7fb4c7b124a87d953e8d3a850fbeb05a1af8e6f34edf252aeda40445f711f4409a3a80df7442bd4676c1d8969f8 SHA512 f6e6e2498bbd8b60e013b4cb6e1f1eda764292e3cd91ba5800fe798521f462bb97f1e621711513d52c263f7b394821a710252425cfb0de0f1c4457882dd138ab DIST pyo3-macros-0.20.2.crate 7925 BLAKE2B 00fc60becfa39bf452786d8a612247785f1737cc3e627700d0d144ab2efaadfb34ce8a8f46e932382a1ea99caebfe1946fbc517b5c26fadb0822ecaa8b2e9df0 SHA512 dd9ea9acda95dfc53689a4c26d8c2139f8a90a05ab06737037f19b8bccd5e52b0da5f297a29194b958f5f8b59cbb566b5f409b3f17a863eddf855ecb755d2719 DIST pyo3-macros-0.21.2.crate 7920 BLAKE2B 60ceb626fd1ffeca7e81ebc721bb4cfebd99bb708d48bbfdd296b250ed41471f82e8657715e1f58840423ac11d8c5a84a6107a7037affdea4e0c2cc561514ed7 SHA512 95335a55d57346107fdc7591d51e36aa0a985d6c44a875475a0ed52df25d33b21a7b922fdab0eed190da9708968e79f7cd50bc683b6d210eb068713a915ac7f4 DIST pyo3-macros-backend-0.20.2.crate 49710 BLAKE2B 711b18984e61219555df4b62667f7f376951c6cb47e6dd947fc24618b923c4f4f790eb1aba1901abea4761632cdb58cfa81cce91f33586da3022e6c7d126bc9f SHA512 c6ca2a2cdae8630fba3f8e4122e81b60ef2ef0905ad2a3fbcfae134456d5ca9e73690b61590e391f3b9d82c24725809f18544c5dfa0b36ffdb1914844fe65d3a diff --git a/dev-python/rustworkx/rustworkx-0.15.1-r1.ebuild b/dev-python/rustworkx/rustworkx-0.15.1-r2.ebuild index f36a70cb100f..55ef584b740a 100644 --- a/dev-python/rustworkx/rustworkx-0.15.1-r1.ebuild +++ b/dev-python/rustworkx/rustworkx-0.15.1-r2.ebuild @@ -110,6 +110,8 @@ SRC_URI=" https://github.com/Qiskit/rustworkx/archive/${PV}.tar.gz -> ${P}.gh.tar.gz ${CARGO_CRATE_URIS} + https://github.com/PyO3/pyo3/pull/4324.patch + -> pyo3-ffi-0.22.1-py313.patch " LICENSE="Apache-2.0" @@ -144,12 +146,10 @@ EPYTEST_XDIST=1 distutils_enable_tests pytest src_prepare() { - distutils-r1_src_prepare + default - # force unstable ABI to workaround stable ABI crash in py3.13 - # https://github.com/PyO3/pyo3/issues/4311 - sed -i -e 's:"abi3-py38",::' Cargo.toml || die - export UNSAFE_PYO3_SKIP_VERSION_CHECK=1 + cd "${ECARGO_VENDOR}"/pyo3-ffi-*/ || die + eapply -p2 "${DISTDIR}/pyo3-ffi-0.22.1-py313.patch" } python_test() { diff --git a/dev-python/shtab/shtab-1.7.1.ebuild b/dev-python/shtab/shtab-1.7.1.ebuild index 4171861a621f..eb845acf67f2 100644 --- a/dev-python/shtab/shtab-1.7.1.ebuild +++ b/dev-python/shtab/shtab-1.7.1.ebuild @@ -16,7 +16,7 @@ HOMEPAGE=" LICENSE="Apache-2.0" SLOT="0" -KEYWORDS="amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv x86" +KEYWORDS="amd64 ~arm arm64 ~loong ~ppc64 ~riscv x86" BDEPEND="dev-python/setuptools-scm[${PYTHON_USEDEP}]" diff --git a/dev-python/sip/Manifest b/dev-python/sip/Manifest index e63f1106e457..6f5fe425370b 100644 --- a/dev-python/sip/Manifest +++ b/dev-python/sip/Manifest @@ -1,4 +1,3 @@ -DIST sip-6.8.3.gh.tar.gz 585528 BLAKE2B 2a58edba0f7ca9da02399df9fe71f152ef8446c38886ca2a21c00ef3ac65e0a82493a6047120d6f786e5b26f974c9cac24a329f1a52d9c47f9669afe2f0789b4 SHA512 6ff5fa59a55d71a3303553d2c53879fc9ccc01b9db34da149a7b81e252613327c7390c5a2edeaec03381dbc36ed38aa4ce44d69560c277ecc3875a57e7d75a60 -DIST sip-6.8.3.tar.gz 987656 BLAKE2B 57cc4010aae64eec7e0f338d9653463c7381b639aa8efca978a3f3296550a37b3a09b52933a2c2cd354a65155841952d7ca045b0b774945a382c29a8d597951e SHA512 8a0ff1c16ead4c2b1c53963a015fb3d149362f649eeec2523e6b243945493f28f5ecf29aabbf5cee5f7909ded40d64a1f469d2d0c1b3c33244e6213ab23ec733 DIST sip-6.8.5.gh.tar.gz 514702 BLAKE2B 82b41f87991a9c8dd5416a948d5fd356d8d815fef007bcca7089d8b942f6287b9609d5813368afbca924f563873eea025462d83ba9b36d910004115fa81f289e SHA512 de5a5a134ef8a4a8dfeb97ca00cdd6d7c8a297e67aa046f003c883d14fe4cf1f009f6443712b78bc0f693e30b89fab3f76d5ef8ee18e9620f161c1933b2db513 DIST sip-6.8.5.tar.gz 420177 BLAKE2B 274df04ef21298fbc7559166e5d3b8830a10db900ee0c52001bc6f328e23dd691f092df560cd93e76a3ca17bbd89de88ab3370719dd6c9346e9ba3f3b7570e5c SHA512 eeb1e51624d95bc36e72f5d1949793b647c2b97d5bd13ea80d9a2a901698b4d7336e6812421b0f346af248350061c02db5a8c13aeb33ec31d8bd6dbea967a282 +DIST sip-6.8.6.gh.tar.gz 515751 BLAKE2B 769a1270351473f1c498e0d3cd463df3aa0992782b5501bd06455b71be05cae5a9754611bad4f966cc5b204170fec7fccbb065d9ed4c800daaa1bd6448a96352 SHA512 bfbeace21ef0bfd072548bcdb9af1f4917a33e15bcd9c5f6575aea0dc0eeaeec4aa322b2408f586c0e2713ada65c1657f81a4e0eb25cb9a3472fada234beca33 diff --git a/dev-python/sip/sip-6.8.3.ebuild b/dev-python/sip/sip-6.8.6.ebuild index c6612950618c..57eb997c0653 100644 --- a/dev-python/sip/sip-6.8.3.ebuild +++ b/dev-python/sip/sip-6.8.6.ebuild @@ -5,27 +5,29 @@ EAPI=8 DISTUTILS_USE_PEP517=setuptools PYTHON_COMPAT=( python3_{8,9,10,11,12} ) -inherit distutils-r1 pypi +inherit distutils-r1 DESCRIPTION="Python bindings generator for C/C++ libraries" HOMEPAGE="https://github.com/Python-SIP/sip/" -# gh does not include a way to generate some files, so combine with pypi -SRC_URI+=" - test? ( - https://github.com/Python-SIP/sip/archive/refs/tags/${PV}.tar.gz - -> ${P}.gh.tar.gz - ) +SRC_URI=" + https://github.com/Python-SIP/sip/archive/refs/tags/${PV}.tar.gz + -> ${P}.gh.tar.gz " LICENSE="|| ( GPL-2 GPL-3 SIP )" SLOT="5" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv ~sparc x86" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86" RDEPEND=" dev-python/packaging[${PYTHON_USEDEP}] dev-python/setuptools[${PYTHON_USEDEP}] $(python_gen_cond_dep 'dev-python/tomli[${PYTHON_USEDEP}]' 3.10) " +BDEPEND=" + >=dev-python/setuptools-scm-8[${PYTHON_USEDEP}] +" -distutils_enable_sphinx doc --no-autodoc +distutils_enable_sphinx docs \ + dev-python/myst-parser \ + dev-python/sphinx-rtd-theme distutils_enable_tests pytest diff --git a/dev-python/stack-data/stack-data-0.6.3.ebuild b/dev-python/stack-data/stack-data-0.6.3.ebuild index c4774afd6b3a..fde4f907ca6f 100644 --- a/dev-python/stack-data/stack-data-0.6.3.ebuild +++ b/dev-python/stack-data/stack-data-0.6.3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2023 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 diff --git a/dev-python/sympy/sympy-1.13.0.ebuild b/dev-python/sympy/sympy-1.13.0.ebuild index 444205effcfd..39dd4551938d 100644 --- a/dev-python/sympy/sympy-1.13.0.ebuild +++ b/dev-python/sympy/sympy-1.13.0.ebuild @@ -31,9 +31,7 @@ RDEPEND=" dev-python/pexpect[${PYTHON_USEDEP}] imaging? ( dev-python/pillow[${PYTHON_USEDEP}] ) ipython? ( - $(python_gen_cond_dep ' - dev-python/ipython[${PYTHON_USEDEP}] - ' 3.{10..12}) + dev-python/ipython[${PYTHON_USEDEP}] ) latex? ( virtual/latex-base diff --git a/dev-python/tempora/Manifest b/dev-python/tempora/Manifest index 5ba23c7a2bf0..0a0f4cebaef7 100644 --- a/dev-python/tempora/Manifest +++ b/dev-python/tempora/Manifest @@ -1,2 +1 @@ -DIST tempora-5.5.1.tar.gz 21145 BLAKE2B b034b85272faefc884e098c1ca58b3e4b1f6598487f4678ed3b0b9f353d70b9862d8eaed425fb812e23630f123a28a25fefc8916a1c9cc882e5ed8c3da98dfa6 SHA512 642c4176ea14504e2f831f738e1064c1fb888ad89a67c74d5bcf2a5389923af3933981393855c7eceaf6c7fc16bbbf4126015d2d1dfa0fdfd38d528d16854dce DIST tempora-5.6.0.tar.gz 21659 BLAKE2B 865fc851d852e054b389cbc5731a9523297b134c6d6e812cff9a6dfda8be0c0c9b2aa5f63324642ef3c151529f82292d867d01bf68a9aaa4f7a3e6d296a8f4bd SHA512 dd8dfe94813a482a2493e3129c9dd4f40dd399bc933a5348454b903d49def1c84a417696c24b66533bcfa93d3d334c67114bdc0cc2512ce39384c039911b4d0d diff --git a/dev-python/tempora/tempora-5.5.1.ebuild b/dev-python/tempora/tempora-5.5.1.ebuild deleted file mode 100644 index c36e47d7068d..000000000000 --- a/dev-python/tempora/tempora-5.5.1.ebuild +++ /dev/null @@ -1,46 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_USE_PEP517=setuptools -PYTHON_TESTED=( python3_{8,9,10,11,12} pypy3 ) -PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" ) - -inherit distutils-r1 pypi - -DESCRIPTION="Objects and routines pertaining to date and time" -HOMEPAGE=" - https://github.com/jaraco/tempora/ - https://pypi.org/project/tempora/ -" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos" - -RDEPEND=" - >=dev-python/jaraco-functools-1.20[${PYTHON_USEDEP}] - dev-python/pytz[${PYTHON_USEDEP}] -" -BDEPEND=" - dev-python/setuptools-scm[${PYTHON_USEDEP}] - test? ( - $(python_gen_cond_dep ' - dev-python/freezegun[${PYTHON_USEDEP}] - dev-python/pytest-freezegun[${PYTHON_USEDEP}] - ' "${PYTHON_TESTED[@]}") - ) -" - -distutils_enable_tests pytest - -python_test() { - if ! has "${EPYTHON/./_}" "${PYTHON_TESTED[@]}"; then - einfo "Skipping tests on ${EPYTHON}" - return - fi - - local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 - epytest -p freezegun -} diff --git a/dev-python/tempora/tempora-5.6.0.ebuild b/dev-python/tempora/tempora-5.6.0.ebuild index 358a095bc5e4..9c4da55b9aab 100644 --- a/dev-python/tempora/tempora-5.6.0.ebuild +++ b/dev-python/tempora/tempora-5.6.0.ebuild @@ -17,7 +17,7 @@ HOMEPAGE=" LICENSE="MIT" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos" RDEPEND=" >=dev-python/jaraco-functools-1.20[${PYTHON_USEDEP}] diff --git a/dev-python/uv/uv-0.2.23.ebuild b/dev-python/uv/uv-0.2.23.ebuild index 02d0a4fb4a54..505f71788dee 100644 --- a/dev-python/uv/uv-0.2.23.ebuild +++ b/dev-python/uv/uv-0.2.23.ebuild @@ -85,7 +85,7 @@ src_prepare() { # https://github.com/vorot93/tokio-tar/pull/23 # (fortunately uv already depends on portable-atomic, so we don't # have to fight Cargo.lock) - cd "${WORKDIR}/cargo_home/gentoo/tokio-tar-0.3.1" || die + cd "${ECARGO_VENDOR}/tokio-tar-0.3.1" || die eapply "${FILESDIR}/tokio-tar-0.3.1-ppc.patch" } |
