summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2025-08-17 07:01:48 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2025-08-17 07:01:48 +0000
commit3bef6eb2ae865ff8fc46c6f4005eea74c0cd4d35 (patch)
treee4098c2e138e14fa42ce257c06509fb90ba216ef /dev-python
parent294dc08adb9917b77c9bbe0bbbcb0d6cd3864f1e (diff)
downloadbaldeagleos-repo-3bef6eb2ae865ff8fc46c6f4005eea74c0cd4d35.tar.gz
baldeagleos-repo-3bef6eb2ae865ff8fc46c6f4005eea74c0cd4d35.tar.xz
baldeagleos-repo-3bef6eb2ae865ff8fc46c6f4005eea74c0cd4d35.zip
Adding metadata
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/coverage/Manifest1
-rw-r--r--dev-python/coverage/coverage-7.10.4.ebuild109
-rw-r--r--dev-python/elementpath/Manifest1
-rw-r--r--dev-python/elementpath/elementpath-5.0.4.ebuild34
-rw-r--r--dev-python/gherkin-official/Manifest1
-rw-r--r--dev-python/gherkin-official/gherkin-official-34.0.0.ebuild31
-rw-r--r--dev-python/mss/Manifest1
-rw-r--r--dev-python/mss/mss-10.1.0.ebuild48
-rw-r--r--dev-python/pygit2/Manifest1
-rw-r--r--dev-python/pygit2/pygit2-1.18.2.ebuild47
-rw-r--r--dev-python/pyglet/Manifest1
-rw-r--r--dev-python/pyglet/pyglet-2.1.8.ebuild80
-rw-r--r--dev-python/pytest-sugar/Manifest1
-rw-r--r--dev-python/pytest-sugar/pytest-sugar-1.1.0.ebuild29
-rw-r--r--dev-python/setuptools-scm/Manifest1
-rw-r--r--dev-python/setuptools-scm/setuptools-scm-9.2.0.ebuild52
16 files changed, 438 insertions, 0 deletions
diff --git a/dev-python/coverage/Manifest b/dev-python/coverage/Manifest
index 2249e02b534d..e2b77a900b7b 100644
--- a/dev-python/coverage/Manifest
+++ b/dev-python/coverage/Manifest
@@ -1,4 +1,5 @@
DIST coverage-7.10.0.tar.gz 819816 BLAKE2B 18e404a03b95a03fad0a4d1b51e3888dfc19e8664370bf89dcbd917969b8a240c4f80577b87231ee022d9bc10de9bdc248223ad531ac2ffafd78a4a5cbba3e74 SHA512 27575b11c3a14d8de73ffb1e56f64ba9c218bace54290685241ce347f2c246950b8ce30bc5c97497c5663196001b2dba5541ae05cf004552cf1f0a09b85fea08
DIST coverage-7.10.2.tar.gz 820754 BLAKE2B 6d743134e950de09ade50fc2b921be0ffaa20d88a33023495f8453df6e789b87fe5f8d08b0bdac3fdbde4bb71ab367d4fc43cc429ebd5e6bb941f283a9ac88bd SHA512 5faafc9fbcbd539741f4d3e68a3a033ee3109aa42958f12f5e33cc2f2c0eadfe4c729f23225804d38a1dfadde5d84a9b5c76970a35d3dbe852a94c74d618f388
+DIST coverage-7.10.4.tar.gz 823798 BLAKE2B 65ba8f5931ac5e577da9636a3df82e8b5a4b0447c051e671d18446c56cd642f0c0904984995ebf2896e91d8f1c12b3b1c5f2895269979bb4cba430008a2ae4b1 SHA512 59b7ac1b21be9b5fa5af8710568c24dfedc53d39d6ded5e79af2472ad64c2546e76f2eaaf0c0e4e387d00c52c3932e1d81970c4e14432cf6b19eb1be8fbeb21d
DIST coverage-7.9.1.tar.gz 813650 BLAKE2B 42ea77277135a98d812c690aad744db427d6832ff01af68197015e4ff932c7ca88d2f804c0bceaca28b86087cb24245e5f57600444d064f1f008fc8b0a2353b5 SHA512 0bccbf802cdbd7d4df7c88cd7573466b024f7fb4cbf41fc5166a3e2dd70cd107caad01529971eb061cd571faadb342de057d0929f02b3b3e513666c052ecf591
DIST coverage-7.9.2.tar.gz 813556 BLAKE2B 6ed57a0011f7d05634c2a5c1e023f9ccfbb40d9a4bdd9011f2eaf03b658468a18df2044417f15108ec6429b6b62c63cd6a73e31904c0266137a4c6e65557207f SHA512 33ace642aada4b0ff5a72c3df628fe60fcc8b5f586f4851bfecc2ffa237cf019cbd78413c133aa8454e168b8895bfbc1363b722cf072eaf90979935b1982662c
diff --git a/dev-python/coverage/coverage-7.10.4.ebuild b/dev-python/coverage/coverage-7.10.4.ebuild
new file mode 100644
index 000000000000..e77b298e5776
--- /dev/null
+++ b/dev-python/coverage/coverage-7.10.4.ebuild
@@ -0,0 +1,109 @@
+# Copyright 1999-2025 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_{9,10,11,12,13} pypy3 )
+PYTHON_REQ_USE="threads(+),sqlite(+)"
+
+inherit distutils-r1 multiprocessing pypi
+
+DESCRIPTION="Code coverage measurement for Python"
+HOMEPAGE="
+ https://coverage.readthedocs.io/en/latest/
+ https://github.com/nedbat/coveragepy/
+ https://pypi.org/project/coverage/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+IUSE="+native-extensions"
+
+BDEPEND="
+ test? (
+ >=dev-python/unittest-mixins-1.4[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_PLUGINS=( hypothesis pytest-{rerunfailures,xdist} )
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+python_compile() {
+ if ! use native-extensions; then
+ local -x COVERAGE_DISABLE_EXTENSION=1
+ fi
+
+ distutils-r1_python_compile
+}
+
+test_tracer() {
+ local -x COVERAGE_CORE=${1}
+ einfo " Testing with the ${COVERAGE_CORE} core ..."
+ epytest -o addopts= "${@:2}" tests
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # broken because of pytest plugins explicity loaded
+ tests/test_debug.py::ShortStackTest::test_short_stack{,_skip}
+ # these expect specific availability of C extension matching
+ # COVERAGE_CORE (which breaks testing pytracer on CPython)
+ tests/test_cmdline.py::CmdLineStdoutTest::test_version
+ tests/test_debug.py::DebugTraceTest::test_debug_sys_ctracer
+ # mismatch of expected concurrency in error message
+ # TODO: report upstream?
+ tests/test_concurrency.py::ConcurrencyTest::test_greenlet
+ tests/test_concurrency.py::ConcurrencyTest::test_greenlet_simple_code
+ # packaging tests, fragile to setuptools version
+ tests/test_setup.py
+ # looks like a difference in exit status reporting?
+ # https://github.com/nedbat/coveragepy/issues/2008
+ tests/test_process.py::ProcessTest::test_save_signal_usr1
+ )
+ local EPYTEST_IGNORE=(
+ # pip these days insists on fetching build deps from Internet
+ tests/test_venv.py
+ )
+
+ "${EPYTHON}" igor.py zip_mods || die
+
+ local -x COVERAGE_TESTING=True
+ # TODO: figure out why they can't be imported inside test env
+ local -x COVERAGE_NO_CONTRACTS=1
+
+ local jobs=${EPYTEST_JOBS:-$(makeopts_jobs)}
+ local xdist_args=()
+ if [[ ${jobs} -gt 1 ]]; then
+ # required upstream to avoid cross-test conflicts
+ xdist_args+=( --dist=loadgroup )
+ fi
+
+ local prev_opt=$(shopt -p nullglob)
+ shopt -s nullglob
+ local c_ext=( "${BUILD_DIR}/install$(python_get_sitedir)"/coverage/*.so )
+ ${prev_opt}
+
+ if [[ -n ${c_ext} ]]; then
+ cp "${c_ext}" coverage/ || die
+ test_tracer ctrace "${xdist_args[@]}"
+ fi
+
+ test_tracer pytrace "${xdist_args[@]}"
+
+ case ${EPYTHON} in
+ *3.11)
+ ;;
+ *)
+ # available since Python 3.12
+ test_tracer sysmon "${xdist_args[@]}"
+ ;;
+ esac
+
+ if [[ -n ${c_ext} ]]; then
+ rm coverage/*.so || die
+ fi
+}
diff --git a/dev-python/elementpath/Manifest b/dev-python/elementpath/Manifest
index 1038d3f1fdc7..502a4f4f3f27 100644
--- a/dev-python/elementpath/Manifest
+++ b/dev-python/elementpath/Manifest
@@ -1 +1,2 @@
DIST elementpath-5.0.3.tar.gz 364992 BLAKE2B 146ced4d658e89de75788962dc8fdb30600d16c3929964e52f2f22f5fe842e6a7479f1f3664cd546ce37833390cefdbffc055153cf796566ff083727e7531851 SHA512 8cb6ce88714407f8b95b0301a23687a5c273caeaadc0e5f4203a59b948950810b6eb5b811353544a57712706fe86d8bb729239107fa785d44095dde5a2808aea
+DIST elementpath-5.0.4.tar.gz 365851 BLAKE2B 6e3a36b62de7628f50bb990950fbda96a805338137fa48533214e463edc400c922a3812ebe712fea715353f56c314455d99d16bbc34fbb9e48ea8bc896f2c235 SHA512 1c7ddc20a6c0ce4c6af9ccea201ec57773cc443e77412c597088c46f6b00c8719821a74b28254b7496b17e4f8c5800a6094808f658caa84dfe3f2c79db454cd0
diff --git a/dev-python/elementpath/elementpath-5.0.4.ebuild b/dev-python/elementpath/elementpath-5.0.4.ebuild
new file mode 100644
index 000000000000..8ba60a07a736
--- /dev/null
+++ b/dev-python/elementpath/elementpath-5.0.4.ebuild
@@ -0,0 +1,34 @@
+# Copyright 2019-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="XPath 1.0/2.0 parsers and selectors for ElementTree and lxml"
+HOMEPAGE="
+ https://github.com/sissaschool/elementpath/
+ https://pypi.org/project/elementpath/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+
+BDEPEND="
+ test? (
+ dev-python/lxml[${PYTHON_USEDEP}]
+ >=dev-python/xmlschema-4.0.1[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_PLUGINS=()
+distutils_enable_tests pytest
+
+EPYTEST_IGNORE=(
+ # fails for some reason, more fit for upstream testing anyway
+ tests/test_typing.py
+)
diff --git a/dev-python/gherkin-official/Manifest b/dev-python/gherkin-official/Manifest
index afe901e8e49d..9eaf38cff0a1 100644
--- a/dev-python/gherkin-official/Manifest
+++ b/dev-python/gherkin-official/Manifest
@@ -1 +1,2 @@
DIST gherkin-33.1.0.gh.tar.gz 3855072 BLAKE2B 026dc11c4451e5243dc4ede0108c19162cb29784507095642d4a2599c52143f8a594b6dba21552a4c061f62fccfe71f3ed4bb574453d68e35231f99340876e90 SHA512 176a9e8bf448f07da54a0e35095e40d82ff4a842132ef58052e4451d3ccd3a551d493319c6f44c0148ae2e6dec950e4a0baaffea5aea77c161bafc0970c18f48
+DIST gherkin-34.0.0.gh.tar.gz 3879551 BLAKE2B f1f97e9b7aef359ef7fecae6d6c6259e58e2650317d8bfac166ee0c7be60418bc2dbfa6c56aec186c27d4dd712f3c5caec769e0f908d61e54cb3903513a69a1f SHA512 4014a37df26cc5add51a4825a8ef03418560f07e4b9dbd4ccdd461ab6f519a959f6b29e8536b2aea5c5e4c2d53abae106cfefab650eccc1bc1bbbad01ee28d40
diff --git a/dev-python/gherkin-official/gherkin-official-34.0.0.ebuild b/dev-python/gherkin-official/gherkin-official-34.0.0.ebuild
new file mode 100644
index 000000000000..9d0418c542ba
--- /dev/null
+++ b/dev-python/gherkin-official/gherkin-official-34.0.0.ebuild
@@ -0,0 +1,31 @@
+# Copyright 2024-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=uv-build
+PYTHON_COMPAT=( python3_{11..14} )
+
+inherit distutils-r1
+
+DESCRIPTION="Gherkin parser/compiler for Python"
+HOMEPAGE="
+ https://github.com/cucumber/gherkin/
+ https://pypi.org/project/gherkin-official/
+"
+SRC_URI="
+ https://github.com/cucumber/gherkin/archive/refs/tags/v${PV}.tar.gz
+ -> gherkin-${PV}.gh.tar.gz
+"
+S=${WORKDIR}/gherkin-${PV}/python
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/typing-extensions[${PYTHON_USEDEP}]
+"
+
+EPYTEST_PLUGINS=()
+distutils_enable_tests pytest
diff --git a/dev-python/mss/Manifest b/dev-python/mss/Manifest
index f27921a7fed1..c57baff86334 100644
--- a/dev-python/mss/Manifest
+++ b/dev-python/mss/Manifest
@@ -1 +1,2 @@
DIST mss-10.0.0.tar.gz 83127 BLAKE2B fb015e02fb80320ba6ad8b612fd675d6ca3b15560fc3413426e1a9a569eca57794fb69289dd6a97ff681e3674448176e022a900b8c565299cb6133b92510d47f SHA512 f2ed2fcd927e51a90facd3f7eefa56e745ed5ccb04fcf46f66f3ad969dc2d5f28d87887950cdd1f552e36250376e4cd77d6c65607848f7768e952319c6197bdc
+DIST mss-10.1.0.tar.gz 84200 BLAKE2B f19a09e2429fc3bed358587680d589578536809055247b81a4bb2b0e9fd86ec531c849b3ad360e6612a08c3c70e29812febbd9650fc2b7ab98315d462077ce1f SHA512 4653881086d32906b88a83674feedfd995b8ad7637fcaf3eecd0a868537c9b2e94aa550ea4bcbfa813f599621cc697a32625ba145f061e994e166ff1501ee204
diff --git a/dev-python/mss/mss-10.1.0.ebuild b/dev-python/mss/mss-10.1.0.ebuild
new file mode 100644
index 000000000000..8ed7accee3b9
--- /dev/null
+++ b/dev-python/mss/mss-10.1.0.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+
+inherit distutils-r1 pypi virtualx
+
+DESCRIPTION="An ultra fast cross-platform multiple screenshots module in python using ctypes"
+HOMEPAGE="
+ https://github.com/BoboTiG/python-mss/
+ https://pypi.org/project/mss/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+
+BDEPEND="
+ test? (
+ dev-python/pyvirtualdisplay[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_PLUGINS=( pytest-rerunfailures )
+distutils_enable_tests pytest
+
+EPYTEST_IGNORE=(
+ # upstream tests for self-build, apparently broken by setuptools
+ # issuing deprecation warnings
+ src/tests/test_setup.py
+)
+
+EPYTEST_DESELECT=(
+ # unreliable `lsof -U | grep ...` tests
+ src/tests/test_leaks.py
+)
+
+src_prepare() {
+ distutils-r1_src_prepare
+ sed -i -e '/--cov/d' pyproject.toml || die
+}
+
+src_test() {
+ virtx distutils-r1_src_test
+}
diff --git a/dev-python/pygit2/Manifest b/dev-python/pygit2/Manifest
index 37b538a302e0..8eda6daebb04 100644
--- a/dev-python/pygit2/Manifest
+++ b/dev-python/pygit2/Manifest
@@ -1,3 +1,4 @@
DIST pygit2-1.16.0.tar.gz 768597 BLAKE2B 30e8df4c3f992e075117bdcda3d84e2ed0618dd8556ae8574f6238992cacff69ec3c7c22a6ab85f7857156fbb4b3e6e75bc899e71ea59efcb1f8dee61687355f SHA512 297fc46f2e48e77937718e54b3ef2bb41a252348173fc5858ab4225fc3403a4d29efd2d6377508220d8bdf901f6cd9595c31601d8c0f77e9dc9a44f159a1d278
DIST pygit2-1.18.0.tar.gz 773270 BLAKE2B 3ca510c7e83f78ba37c62fa02562c93665d7393c69668d03f35b1952e9b0c32b94c4c642ec60d7320087f3703bfee31bd48718431e209dd1038501ef0ea654fd SHA512 d082322b38c0d609f9603f838a8909626d2f59cde1f7aafcd80107233fbed2741cfd480c0d305a540cdf890bed4a47d4122b015f906e4a0ed891f66ab64e3408
DIST pygit2-1.18.1.tar.gz 781426 BLAKE2B 705b4397f6d8e2d1e46f06dcc5eb31e9e53acbf2eaeeffde954559b6d3216c6f2c76473653e3733b565330ba701524ba97cc58b3a7312a6fb6b03badabdc464b SHA512 57a13e0dc4c09754d61c2bff462f4a413c84292cc88bfa811da4243b0bcff8e5eed0dc9ccb399cc3dac8c366462c5ade64fd89573a13c250dfece47432c688e1
+DIST pygit2-1.18.2.tar.gz 797200 BLAKE2B d65bc1d4a2bfbca43764f6fcf9bb050caf28c9455cb70b880036d9ac2b7271df5578549aaaeaa318f8eaf0316eb842d77512b2c1c2108250288c9e481b0f4c03 SHA512 81b0a2fbf57d1a9bb6eb8c29a7cb614a2d3e097518b2ea4510e2e59c2354510906d5063f2b94635a69e20a95473b1139146e29b9f21fcfd2f96ab0afa32ac7fe
diff --git a/dev-python/pygit2/pygit2-1.18.2.ebuild b/dev-python/pygit2/pygit2-1.18.2.ebuild
new file mode 100644
index 000000000000..34a65ac2a6c1
--- /dev/null
+++ b/dev-python/pygit2/pygit2-1.18.2.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2025 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_{11..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Python bindings for libgit2"
+HOMEPAGE="
+ https://github.com/libgit2/pygit2/
+ https://pypi.org/project/pygit2/
+"
+
+LICENSE="GPL-2-with-linking-exception"
+SLOT="0"
+KEYWORDS="~amd64 ~loong ~riscv ~x86"
+
+DEPEND="
+ <dev-libs/libgit2-1.10:=
+ >=dev-libs/libgit2-1.9.0:=
+"
+BDEPEND="
+ >=dev-python/cffi-1.17.0:=[${PYTHON_USEDEP}]
+"
+RDEPEND="
+ ${DEPEND}
+ ${BDEPEND}
+"
+
+EPYTEST_PLUGINS=()
+distutils_enable_tests pytest
+
+src_prepare() {
+ distutils-r1_src_prepare
+
+ # unconditionally prevent it from using network
+ sed -i -e '/has_network/s:True:False:' test/utils.py || die
+}
+
+src_test() {
+ rm -r pygit2 || die
+ distutils-r1_src_test
+}
diff --git a/dev-python/pyglet/Manifest b/dev-python/pyglet/Manifest
index b29426021492..7362c29aaa1e 100644
--- a/dev-python/pyglet/Manifest
+++ b/dev-python/pyglet/Manifest
@@ -1 +1,2 @@
DIST pyglet-2.1.6.tar.gz 6546705 BLAKE2B ea32e864e5b8168d18fd99c464759d98189301aca821b2eec0770e180a1ed3c8a2d9543bce8d5331d0f9c4f75b055b42d4c67fac5a5f08b84d7ec7ff82481b13 SHA512 118b4c14aad735f7da1d168e7e5e68094af387d616379223260150a3140fa9069b30a8bbf12ee0e2921c199aedbfecbbb55034c7bf8e160ccca5aa4d8b348d18
+DIST pyglet-2.1.8.tar.gz 6591905 BLAKE2B 03142754f461402f625225622f6ca53a066b8c3d924762e740b2cbd46dc1851ec661b9263fc90c33949ade25c07d7b63ad92cd243bc12869f50c0b8e77b6b660 SHA512 cd38d7e4d39f26f5188898c822a8f7c53a34429f9098c0f0695df3befadb1d287b92533d264988654def7ceae6f70debc096d546da5d42848ca69644933a4a9b
diff --git a/dev-python/pyglet/pyglet-2.1.8.ebuild b/dev-python/pyglet/pyglet-2.1.8.ebuild
new file mode 100644
index 000000000000..b63467fc3ea6
--- /dev/null
+++ b/dev-python/pyglet/pyglet-2.1.8.ebuild
@@ -0,0 +1,80 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit
+PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
+
+inherit distutils-r1 pypi virtualx xdg-utils
+
+MY_P=${P/_/.}
+DESCRIPTION="Cross-platform windowing and multimedia library for Python"
+HOMEPAGE="
+ https://pyglet.org/
+ https://github.com/pyglet/pyglet/
+ https://pypi.org/project/pyglet/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux"
+IUSE="examples image +sound"
+
+RDEPEND="
+ virtual/glu
+ virtual/opengl
+ image? (
+ || (
+ dev-python/pillow[${PYTHON_USEDEP}]
+ x11-libs/gtk+:2
+ )
+ )
+ sound? (
+ || (
+ media-libs/libpulse
+ media-libs/openal
+ )
+ )
+"
+# ffmpeg? ( media-libs/avbin-bin )
+BDEPEND="
+ test? (
+ dev-python/pillow[${PYTHON_USEDEP}]
+ media-libs/fontconfig
+ x11-base/xorg-server[-minimal]
+ )
+"
+
+EPYTEST_PLUGINS=()
+distutils_enable_tests pytest
+
+src_test() {
+ virtx distutils-r1_src_test
+}
+
+python_test() {
+ xdg_environment_reset
+
+ local EPYTEST_DESELECT=(
+ # lacking device/server permissions
+ tests/unit/media/test_listener.py::test_openal_listener
+ tests/unit/media/test_listener.py::test_pulse_listener
+ # fragile to system load
+ tests/unit/media/test_player.py::PlayerTestCase::test_pause_resume
+ tests/unit/test_clock_freq.py::test_elapsed_time_between_tick
+ )
+
+ # Specify path to avoid running interactive tests
+ # We could add in integration tests, but they're slow
+ nonfatal epytest tests/unit || die "Tests failed with ${EPYTHON}"
+}
+
+python_install_all() {
+ if use examples; then
+ dodoc -r examples
+ docompress -x /usr/share/doc/${PF}/examples
+ fi
+
+ distutils-r1_python_install_all
+}
diff --git a/dev-python/pytest-sugar/Manifest b/dev-python/pytest-sugar/Manifest
index 023f68ed522b..d8d8ebf835a7 100644
--- a/dev-python/pytest-sugar/Manifest
+++ b/dev-python/pytest-sugar/Manifest
@@ -1 +1,2 @@
DIST pytest-sugar-1.0.0.tar.gz 14992 BLAKE2B 75087685c88a2f5ff27cdebbc7600a23fc57c8ee556f57cf05ef3239b1a88866940f99635065fecf254e7fb7a96784edf1bfeaad1a9548077313c1bfd51146b5 SHA512 3976a77c76ae9a83a84753d426902650d0a63d686a84cdd25439c01ae444ae0a84c6095bf0ee5cfaf544e1cc69680001676a8dc4314d0f4d22c3021cb5b7c41d
+DIST pytest-sugar-1.1.0.tar.gz 16331 BLAKE2B 792c507dedfc4cccb20590f698f09e3e6ac9ac33a322cd751aaca97694a612e317654ab996d1073563903e8e103bdc7f0fa13e24f02b2d31b3d924a3da2c5a69 SHA512 8cbabb5c6982ca830573ac8250bf57619d50b901408115204c45df78ad4590df9d45ce326d647df550e2d6c084487015e8b31dfdf4f0ffba8ad18de6793f1282
diff --git a/dev-python/pytest-sugar/pytest-sugar-1.1.0.ebuild b/dev-python/pytest-sugar/pytest-sugar-1.1.0.ebuild
new file mode 100644
index 000000000000..b2b6d59613ad
--- /dev/null
+++ b/dev-python/pytest-sugar/pytest-sugar-1.1.0.ebuild
@@ -0,0 +1,29 @@
+# Copyright 2021-2025 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_{9,10,11,12,13} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Plugin that changes the default look and feel of pytest"
+HOMEPAGE="
+ https://github.com/Teemu/pytest-sugar/
+ https://pypi.org/project/pytest-sugar/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+RDEPEND="
+ >=dev-python/pytest-6.2.0[${PYTHON_USEDEP}]
+ >=dev-python/termcolor-2.1.0[${PYTHON_USEDEP}]
+"
+
+EPYTEST_PLUGIN_LOAD_VIA_ENV=1
+EPYTEST_PLUGINS=( "${PN}" pytest-{rerunfailures,xdist} )
+distutils_enable_tests pytest
diff --git a/dev-python/setuptools-scm/Manifest b/dev-python/setuptools-scm/Manifest
index 4a9e8c731e3c..972bf4a4982d 100644
--- a/dev-python/setuptools-scm/Manifest
+++ b/dev-python/setuptools-scm/Manifest
@@ -2,3 +2,4 @@ DIST setuptools_scm-8.3.1.tar.gz 78088 BLAKE2B 6cedb55fc16830d12a28fe5b662c371b1
DIST setuptools_scm-9.0.0.tar.gz 184752 BLAKE2B f6ec73dd4733b7cf24cd67bebde9cc96e1c611187774c35fa33e96a29b8aab29c13069ba68e52406dee30e1bf19d2fe38f61031f66b4abb7aeec60a5d3cb72aa SHA512 2d22695ac7036d70d23d8c2613b1c9a9948cc517754b93f38d561065746b8df001d6bae9878477f2df622711b6809b8e178c2c21ad82bdd9c7877b5816251e47
DIST setuptools_scm-9.0.3.tar.gz 187006 BLAKE2B 8e936eda4802aae82d3aafa4ee8d4cfd3beae7afc7df0719e97a268d63a3f1e701334734fcb94c31fa16b11f67b3e38f2097fd9c7951b1d185bc4cfc1d2f6809 SHA512 642b11ec216a7f332492d6cfa6b4972aa7e58bdf6181f62f0e9d8ab8dba24feb771aa4e87facf704aabad500bd75a12d2ad420f00b0f36fb61d3b35158a71ea7
DIST setuptools_scm-9.1.1.tar.gz 191499 BLAKE2B 1da62adeabc697195c0ebf43131d00bea8a8b85fa556e228bd03b7ec4a110f61938aef5e3c433862c1a93af1e0112f0b327519181b17a9be22927837c7c90a21 SHA512 142affb002a72de841ca18461ebd40ac2a0f5f2599a9c82c020ee0081975871701e17b64e40e8eebbd7be469a572f6eacd1b82d26600c787a168c5cb0066be55
+DIST setuptools_scm-9.2.0.tar.gz 201229 BLAKE2B b2633c1a4f5a8a4b0ff23bf9b866e9bcb5f5c7b3a5fff9159d207b7405f8e3d76efddf3dda6a3083efdbd83bd3ff9d3399ebd2bcbe87598a93d36494ac169753 SHA512 da76f5440d03cadc545d0ed4275476c2d5b42013a100ee3948e77a05fdb61087fe208785bbb460d96423da7f6849b5eab45914f0054b21fd1d0c36ce0eac1795
diff --git a/dev-python/setuptools-scm/setuptools-scm-9.2.0.ebuild b/dev-python/setuptools-scm/setuptools-scm-9.2.0.ebuild
new file mode 100644
index 000000000000..c9b3936a5c94
--- /dev/null
+++ b/dev-python/setuptools-scm/setuptools-scm-9.2.0.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# please keep this ebuild at EAPI 8 -- sys-apps/portage dep
+EAPI=8
+
+DISTUTILS_USE_PEP517=standalone
+PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Manage versions by scm tags via setuptools"
+HOMEPAGE="
+ https://github.com/pypa/setuptools-scm/
+ https://pypi.org/project/setuptools-scm/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+
+# there's an optional dep on rich for cute logs
+RDEPEND="
+ dev-python/packaging[${PYTHON_USEDEP}]
+ >=dev-python/setuptools-64[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ test? (
+ dev-python/build[${PYTHON_USEDEP}]
+ dev-python/typing-extensions[${PYTHON_USEDEP}]
+ dev-vcs/git
+ )
+"
+
+EPYTEST_PLUGINS=( pytest-timeout )
+distutils_enable_tests pytest
+
+EPYTEST_DESELECT=(
+ # the usual nondescript gpg-agent failure
+ testing/test_git.py::test_git_getdate_signed_commit
+
+ # fetching from the Internet
+ testing/test_integration.py::test_xmlsec_download_regression
+ testing/test_regressions.py::test_pip_download
+
+ # calls flake8, unpredictable
+ testing/test_functions.py::test_dump_version_flake8
+
+ # incompatible with current mypy version
+ testing/test_functions.py::test_dump_version_mypy
+)