summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2024-04-25 18:14:53 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2024-04-25 18:14:53 +0000
commit9edcdf531a19afd7016254b203ab27bed7a474b6 (patch)
tree1edcd3cbbb0bfa2502d7eeefb108f9b4db6c1d0c /dev-python
parentc0f90ad26c0cea4e198d646bc155399c5d91563b (diff)
downloadbaldeagleos-repo-9edcdf531a19afd7016254b203ab27bed7a474b6.tar.gz
baldeagleos-repo-9edcdf531a19afd7016254b203ab27bed7a474b6.tar.xz
baldeagleos-repo-9edcdf531a19afd7016254b203ab27bed7a474b6.zip
Adding metadata
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/PyQt-builder/Manifest1
-rw-r--r--dev-python/PyQt-builder/PyQt-builder-1.16.2.ebuild30
-rw-r--r--dev-python/hatchling/Manifest1
-rw-r--r--dev-python/hatchling/hatchling-1.24.1.ebuild92
-rw-r--r--dev-python/hatchling/hatchling-1.24.2.ebuild47
-rw-r--r--dev-python/hishel/hishel-0.0.26.ebuild1
-rw-r--r--dev-python/imageio/Manifest1
-rw-r--r--dev-python/imageio/imageio-2.34.1.ebuild54
-rw-r--r--dev-python/langdetect/Manifest2
-rw-r--r--dev-python/langdetect/files/langdetect-1.0.9-explicit-config.patch13
-rw-r--r--dev-python/langdetect/langdetect-1.0.9.ebuild4
-rw-r--r--dev-python/langdetect/metadata.xml10
-rw-r--r--dev-python/passlib/files/passlib-1.7.4-bcrypt-4.1.patch13
-rw-r--r--dev-python/passlib/passlib-1.7.4-r3.ebuild (renamed from dev-python/passlib/passlib-1.7.4-r2.ebuild)12
-rw-r--r--dev-python/pypiserver/Manifest1
-rw-r--r--dev-python/pypiserver/files/pypiserver-2.1.1-test-offline.patch33
-rw-r--r--dev-python/pypiserver/pypiserver-2.1.1.ebuild79
17 files changed, 243 insertions, 151 deletions
diff --git a/dev-python/PyQt-builder/Manifest b/dev-python/PyQt-builder/Manifest
index 353f68f7d2b0..d2c2887a8827 100644
--- a/dev-python/PyQt-builder/Manifest
+++ b/dev-python/PyQt-builder/Manifest
@@ -1,2 +1,3 @@
DIST PyQt-builder-1.16.0.tar.gz 3670068 BLAKE2B 909aaead9bd62d3c1ce00f26e13fc81a3293fec212cf8cb1087f59f34d41e9541dbaf12f8a0faffda13434d1340264c2b611ee9061993c4543043ff4539a5bb3 SHA512 1584b41e0c260a45b2b883d035e7611b29501a24172a8d9f36702c4fbde8c3f7953a6897781b59f48b9fa1ceab51eb3767afa83e0e3ff097caf029d87a7114d8
DIST pyqt_builder-1.16.1.tar.gz 3671113 BLAKE2B 2d975e4158997bed1fbec80933ec821e6623fa3c11f4db4d9c3b49002ba2794945856d8130b7cf1c34a2c9ffab589d5db33245a531d6623112fb343b5333dbe9 SHA512 7497a06d7cd0bc662640575842a53fbae86f88b82a8bd7e36afcf4ea9e642f4dc5b06005811669160627ef6a0021cd6cf27c965c42f2202c8877916006d44232
+DIST pyqt_builder-1.16.2.tar.gz 3671133 BLAKE2B 854a3182488ad8b4fc6ddc5a363580f7555ec01aeecc8c8e6d7f121d7477df1481888450dc25fabfbcd965be5a1b98734d2679013b28b95e8a0cce92f4442a3f SHA512 64fc969799a12a176eb730fdc4581f18293dceb8edff20db0177ce409fe7e712cdfb07449b6c4abdd33f1fd9aabe8bee248fe9aeb5373df533d805f9d2a0c6a5
diff --git a/dev-python/PyQt-builder/PyQt-builder-1.16.2.ebuild b/dev-python/PyQt-builder/PyQt-builder-1.16.2.ebuild
new file mode 100644
index 000000000000..89ea0aa5cf13
--- /dev/null
+++ b/dev-python/PyQt-builder/PyQt-builder-1.16.2.ebuild
@@ -0,0 +1,30 @@
+# 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="The PEP 517 compliant PyQt build system"
+HOMEPAGE="https://github.com/Python-PyQt/PyQt-builder/"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86"
+
+RDEPEND="
+ dev-python/packaging[${PYTHON_USEDEP}]
+ >=dev-python/sip-6.7[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ >=dev-python/setuptools-scm-8[${PYTHON_USEDEP}]
+"
+
+src_prepare() {
+ distutils-r1_src_prepare
+
+ # don't install prebuilt DLLs
+ rm -r pyqtbuild/bundle/dlls || die
+}
diff --git a/dev-python/hatchling/Manifest b/dev-python/hatchling/Manifest
index 240c220ac376..bf39c424d688 100644
--- a/dev-python/hatchling/Manifest
+++ b/dev-python/hatchling/Manifest
@@ -1,4 +1,3 @@
DIST hatch-hatchling-v1.22.5.gh.tar.gz 782757 BLAKE2B 3431ef7c4e5f0754e51507e29d88ed0277b530d220eb75bdeab459d88172ba51de3cf2456074fa88483cc89e72726f3e147b97e995f9ccaf699b6c2699776a8c SHA512 d4e77872e34e3aba3fce286f911861b795005c37550a2ca72a83216cea67d53be891afc8861b11582c66d38748f9c8d4980548d216c0fb21b2b4e1cadc314e58
DIST hatch-hatchling-v1.23.0.gh.tar.gz 802345 BLAKE2B 571ae18bda737acf05bd830c4d835b2c785a595844cefbed030383e9ede166b0cd8bba2d7a6e0a4c7b504be825fbca4fa89861e9ae265e9a24bc756025da8d07 SHA512 ed504577d856e42b46ab861972cfb1c47589ae85887c2fc0aa78ded7a2f1cc8eaef796b9331d4ff853a86b6d808080b15d11943775c600c5d10b191ae65cb400
-DIST hatch-hatchling-v1.24.1.gh.tar.gz 803276 BLAKE2B 61966dbc170ef2b130ae49f78e9c99f81eedc69f6d7f30b28c48be8a2d6aa17f128ca08adc3740c3dead0da30581208b967a3b8e02fd5d3f3f46ab9be1813460 SHA512 47c6f93072f82b15c56eb61b342cde44bb34cc23b89ac426120215ae71ea956380a1a66d12a70a11088df921c0df31a448bb40953e2e3bb32c74ed34a94b9640
DIST hatch-hatchling-v1.24.2.gh.tar.gz 1054297 BLAKE2B b2da7dc3f3d58998b57d6ee625a2b7e890afc078c0d8f6cb9c332480df561090bb8bc255e3e60d5d25fa55001869429f822014891fe1cec0098b61fbe02efe52 SHA512 e83f57089707a267685c9cac7f29cd5862adec62f6346097aa62bd5b3b9f7222621b2ea71004dd52f62798dab71bcf05c33a2c43dbe39d1bbc5f4a4f99f28c40
diff --git a/dev-python/hatchling/hatchling-1.24.1.ebuild b/dev-python/hatchling/hatchling-1.24.1.ebuild
deleted file mode 100644
index bcffd69fd58f..000000000000
--- a/dev-python/hatchling/hatchling-1.24.1.ebuild
+++ /dev/null
@@ -1,92 +0,0 @@
-# Copyright 2022-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=standalone
-PYTHON_TESTED=( python3_{8,9,10,11,12} pypy3 )
-PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" )
-
-inherit distutils-r1
-
-TAG=${P/-/-v}
-MY_P=hatch-${TAG}
-DESCRIPTION="Modern, extensible Python build backend"
-HOMEPAGE="
- https://pypi.org/project/hatchling/
- https://github.com/pypa/hatch/
-"
-SRC_URI="
- https://github.com/pypa/hatch/archive/${TAG}.tar.gz
- -> ${MY_P}.gh.tar.gz
-"
-S=${WORKDIR}/${MY_P}/backend
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
-
-# deps are listed in backend/src/hatchling/ouroboros.py
-# editables are optional but required for editable installs
-RDEPEND="
- >=dev-python/editables-0.3[${PYTHON_USEDEP}]
- >=dev-python/packaging-23.2[${PYTHON_USEDEP}]
- >=dev-python/pathspec-0.10.1[${PYTHON_USEDEP}]
- >=dev-python/pluggy-1.0.0[${PYTHON_USEDEP}]
- $(python_gen_cond_dep '
- >=dev-python/tomli-1.2.2[${PYTHON_USEDEP}]
- ' 3.10)
-"
-# always depend on the newest version available, at least until upstream
-# stops treating unknown classifiers as a fatal error
-# https://github.com/pypa/hatch/issues/1368
-RDEPEND+="
- >=dev-python/trove-classifiers-2024.3.25[${PYTHON_USEDEP}]
-"
-BDEPEND="
- ${RDEPEND}
- test? (
- $(python_gen_cond_dep '
- dev-python/atomicwrites[${PYTHON_USEDEP}]
- dev-python/click[${PYTHON_USEDEP}]
- dev-python/httpx[${PYTHON_USEDEP}]
- dev-python/platformdirs[${PYTHON_USEDEP}]
- dev-python/pytest-mock[${PYTHON_USEDEP}]
- dev-python/rich[${PYTHON_USEDEP}]
- dev-python/tomli-w[${PYTHON_USEDEP}]
- dev-python/virtualenv[${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 EPYTEST_DESELECT=(
- # these run pip to install stuff
- tests/backend/dep/test_core.py::test_dependency_found
- tests/backend/dep/test_core.py::test_extra_met
- tests/backend/dep/test_core.py::test_extra_no_dependencies
- tests/backend/dep/test_core.py::test_extra_unmet
- tests/backend/dep/test_core.py::test_unknown_extra
- tests/backend/dep/test_core.py::test_version_unmet
- # broken if CARGO is set
- tests/backend/builders/test_binary.py::TestBuildBootstrap::test_no_cargo
- )
-
- # top-level "tests" directory contains tests both for hatch
- # and hatchling
- cd "${WORKDIR}/${MY_P}" || die
- local -x PYTHONPATH="src:${PYTHONPATH}"
- # sigh; standalone test suites are overrated, right?
- echo "__version__ = '${PV}'" > src/hatch/_version.py || die
- # tests mock cargo subprocess call but the backend raises if CARGO
- # is not set and shutil.which() can't find it
- local -x CARGO=cargo
- epytest tests/backend
-}
diff --git a/dev-python/hatchling/hatchling-1.24.2.ebuild b/dev-python/hatchling/hatchling-1.24.2.ebuild
index bcffd69fd58f..20e357d01e84 100644
--- a/dev-python/hatchling/hatchling-1.24.2.ebuild
+++ b/dev-python/hatchling/hatchling-1.24.2.ebuild
@@ -61,6 +61,31 @@ BDEPEND="
distutils_enable_tests pytest
+src_test() {
+ # top-level "tests" directory contains tests both for hatch
+ # and hatchling
+ cd "${WORKDIR}/${MY_P}" || die
+
+ # sigh; standalone test suites are overrated, right?
+ echo "__version__ = '${PV}'" > src/hatch/_version.py || die
+ local -x PYTHONPATH="src:${PYTHONPATH}"
+
+ # do not require uv for portability, sigh
+ mkdir "${T}/bin" || die
+ cat > "${T}/bin/uv" <<-EOF || die
+ #!/bin/sh
+ exit 127
+ EOF
+ chmod +x "${T}/bin/uv" || die
+ local -x PATH=${T}/bin:${PATH}
+
+ # tests mock cargo subprocess call but the backend raises if CARGO
+ # is not set and shutil.which() can't find it
+ local -x CARGO=cargo
+
+ distutils-r1_src_test
+}
+
python_test() {
if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then
einfo "Skipping tests on ${EPYTHON}"
@@ -68,25 +93,13 @@ python_test() {
fi
local -x EPYTEST_DESELECT=(
- # these run pip to install stuff
- tests/backend/dep/test_core.py::test_dependency_found
- tests/backend/dep/test_core.py::test_extra_met
- tests/backend/dep/test_core.py::test_extra_no_dependencies
- tests/backend/dep/test_core.py::test_extra_unmet
- tests/backend/dep/test_core.py::test_unknown_extra
- tests/backend/dep/test_core.py::test_version_unmet
+ # most of these run uv to install stuff
+ # the few remaining tests aren't worth running
+ tests/backend/dep/test_core.py
# broken if CARGO is set
tests/backend/builders/test_binary.py::TestBuildBootstrap::test_no_cargo
)
- # top-level "tests" directory contains tests both for hatch
- # and hatchling
- cd "${WORKDIR}/${MY_P}" || die
- local -x PYTHONPATH="src:${PYTHONPATH}"
- # sigh; standalone test suites are overrated, right?
- echo "__version__ = '${PV}'" > src/hatch/_version.py || die
- # tests mock cargo subprocess call but the backend raises if CARGO
- # is not set and shutil.which() can't find it
- local -x CARGO=cargo
- epytest tests/backend
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -p pytest_mock tests/backend
}
diff --git a/dev-python/hishel/hishel-0.0.26.ebuild b/dev-python/hishel/hishel-0.0.26.ebuild
index 9632cde0242e..4b419141473a 100644
--- a/dev-python/hishel/hishel-0.0.26.ebuild
+++ b/dev-python/hishel/hishel-0.0.26.ebuild
@@ -31,6 +31,7 @@ BDEPEND="
dev-python/anyio[${PYTHON_USEDEP}]
dev-python/boto3[${PYTHON_USEDEP}]
dev-python/moto[${PYTHON_USEDEP}]
+ dev-python/redis[${PYTHON_USEDEP}]
dev-python/trio[${PYTHON_USEDEP}]
)
"
diff --git a/dev-python/imageio/Manifest b/dev-python/imageio/Manifest
index e7244638142e..42be407165db 100644
--- a/dev-python/imageio/Manifest
+++ b/dev-python/imageio/Manifest
@@ -2,3 +2,4 @@ DIST imageio-2.34.0.gh.tar.gz 413125 BLAKE2B c6f9650265924f370634f5ab87bed94bdb5
DIST imageio-2.34.1.gh.tar.gz 413414 BLAKE2B 59371d0aeace317b9006a0b3b182b97259a53ca0d2288d8ee497234e4f2e7e253c1c27b40b2c5c1f531555a71c7f426ae6d4555043525aa88ca2818d26adfd7d SHA512 d7d1f99f735447e559c0b1fdc2dbe19f2991fb3c640cb9f1396d149c3c44f05e1c357ca8753fff8130625f8fb40a72f277ef09e7cec2b060d1a4f3a675e086a0
DIST imageio-chelsea.png 221294 BLAKE2B 58537d7a1678fa5be4cc899e5bacd925bfc180eb4ae691330a53749a49ff544e979609b529ed27e5c1fc9efe4bc050ca1ce49b777f4016fb1d66affd926ef9d3 SHA512 48470cdb843eed4dfa6673811c09c5aac9869ee23dd36be0c6b653d9f108d61d21b148c2a4435aaa6604887ba030e5bbc5e35d378da876366445dfc2d0ba4e27
DIST imageio-cockatoo.mp4 728751 BLAKE2B 45b22cd517c1cb7c0cd12f8865facaca6a847047aea716e49633cf2b1dc13826f94787c8a8f9dd5f48c6a896f5d37794c0058da1bde9e1469f196916476dbfa2 SHA512 e9cb7c25de8019c59ba4090cf10ab29f2b5d62ada37a877081ca07d2ecfe010036222ae843b41bbcc843130d97fa5e14421de252639e9481df1d1c27b19add49
+DIST imageio-test_images-1121036015c70cdbb3015e5c5ba0aaaf7d3d6021.gh.tar.gz 195497374 BLAKE2B 0083212fd63c196dc2e721bff8f89c177b6741317b6b1c6ae9d00a8dd5fb6366efa3f01b9bffafafac7177cfdaa4d700077a2bad42ada735f5553e97f651c4ad SHA512 1bb1f36a069bfaa0d0ffe5258534e02e49237fc6ce85fe3d3648650130165abc9b3d5ff0e7e5861ee1d94add00d4258575f9c2f8556debecf597bdaa5499efe0
diff --git a/dev-python/imageio/imageio-2.34.1.ebuild b/dev-python/imageio/imageio-2.34.1.ebuild
index d04d7e644fa7..9d73333f5f5a 100644
--- a/dev-python/imageio/imageio-2.34.1.ebuild
+++ b/dev-python/imageio/imageio-2.34.1.ebuild
@@ -8,7 +8,7 @@ PYTHON_COMPAT=( python3_{8,9,10,11,12} )
inherit distutils-r1
-BIN_COMMIT=224074bca448815e421a59266864c23041531a42
+TEST_IMAGES_COMMIT=1121036015c70cdbb3015e5c5ba0aaaf7d3d6021
DESCRIPTION="Python library for reading and writing image data"
HOMEPAGE="
https://imageio.readthedocs.io/en/stable/
@@ -19,19 +19,14 @@ SRC_URI="
https://github.com/imageio/imageio/archive/v${PV}.tar.gz
-> ${P}.gh.tar.gz
test? (
- https://github.com/imageio/imageio-binaries/raw/${BIN_COMMIT}/images/chelsea.png
- -> ${PN}-chelsea.png
- https://github.com/imageio/imageio-binaries/raw/${BIN_COMMIT}/images/cockatoo.mp4
- -> ${PN}-cockatoo.mp4
+ https://github.com/imageio/test_images/archive/${TEST_IMAGES_COMMIT}.tar.gz
+ -> imageio-test_images-${TEST_IMAGES_COMMIT}.gh.tar.gz
)
"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~x86"
-# over 50% of tests rely on Internet
-PROPERTIES="test_network"
-RESTRICT="test"
RDEPEND="
<dev-python/numpy-2[${PYTHON_USEDEP}]
@@ -39,14 +34,15 @@ RDEPEND="
>=dev-python/pillow-8.3.2[${PYTHON_USEDEP}]
media-libs/freeimage
"
-# requests for fsspec[github]
BDEPEND="
test? (
- dev-python/fsspec[${PYTHON_USEDEP}]
>=dev-python/imageio-ffmpeg-0.4.9-r1[${PYTHON_USEDEP}]
dev-python/psutil[${PYTHON_USEDEP}]
- dev-python/requests[${PYTHON_USEDEP}]
dev-python/tifffile[${PYTHON_USEDEP}]
+ || (
+ media-video/ffmpeg[openh264]
+ media-video/ffmpeg[x264]
+ )
)
"
@@ -59,31 +55,47 @@ src_prepare() {
)
if use test; then
- mkdir -p "${HOME}"/.imageio/images || die
- local i
- for i in chelsea.png cockatoo.mp4; do
- cp "${DISTDIR}/${PN}-${i}" "${HOME}/.imageio/images/${i}" || die
- done
+ mv "${WORKDIR}/test_images-${TEST_IMAGES_COMMIT}" .test_images || die
+ # upstream tries to update the image cache, and invalidates it
+ # if "git pull" fails
+ sed -i -e 's:git pull:true:' tests/conftest.py || die
+ # ffmpeg tests expect it there
+ mkdir -p "${HOME}/.imageio/images" || die
+ cp .test_images/cockatoo.mp4 "${HOME}/.imageio/images" || die
fi
distutils-r1_src_prepare
}
python_test() {
+ local EPYTEST_IGNORE=(
+ # uses fsspec to grab prebuilt .so from GitHub, sigh
+ tests/test_freeimage.py
+ )
+
local EPYTEST_DESELECT=(
- # Fails because of system installed freeimage
- tests/test_core.py::test_findlib2
+ # Note: upstream has a needs_internet marker but it is also
+ # used to mark tests that require test_images checkout that we
+ # supply
+
# Tries to download ffmpeg binary ?!
tests/test_ffmpeg.py::test_get_exe_installed
# blocked by our patch
tests/test_core.py::test_fetching
tests/test_core.py::test_request
- # known broken
- # https://github.com/imageio/imageio/issues/890
- tests/test_freeimage.py::test_exr_write
+ # Internet
+ tests/test_bsdf.py::test_from_url
+ tests/test_core.py::test_mvolread_out_of_bytes
+ tests/test_core.py::test_request_read_sources
+ tests/test_pillow.py::test_gif_first_p_frame
+ tests/test_pillow.py::test_png_remote
+ tests/test_pillow_legacy.py::test_png_remote
+ tests/test_swf.py::test_read_from_url
# requires pillow-heif, also possibly Internet
tests/test_pillow.py::test_avif_remote
tests/test_pillow.py::test_heif_remote
+ # not important, requires random system libs
+ tests/test_core.py::test_findlib2
)
local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
diff --git a/dev-python/langdetect/Manifest b/dev-python/langdetect/Manifest
index a11d7c268c91..e9da2ac43cac 100644
--- a/dev-python/langdetect/Manifest
+++ b/dev-python/langdetect/Manifest
@@ -1 +1,3 @@
DIST langdetect-1.0.9.tar.gz 981474 BLAKE2B ea8a9c3f16a2987c080742473bff4f2c1503f53fb3c2b40b0b1d6212bb6133ea22dce7864ffcfb8968c3a46b157d45cb3e2cf6f84bdbed0266cc716a853b032c SHA512 7558d674c47b080c79e43a00a25d2c7f77188cf60bea2cecb3bebb803d75e1aa42b43c74bd26ea1b541f4cb927421908882cbec01a91f0913984217e71ccc8db
+EBUILD langdetect-1.0.9.ebuild 493 BLAKE2B 0df8bce19bc80f79f8e76bcef5a4c2caf333365fe0cb9a3c076b7858bceded5a3e58921474f866a2709dd657b7ed330c1ec4a7f9d7bab0fcf1bc92d77cabc32d SHA512 ea2a1adcb133ac5fc951ba1aa90ef1ce3dfcc424e59727591763d4875aa044a74188be2d15fd89c6b2e83ed6ea04ec3d9851ed584ae79d2c2c127bde7d994b48
+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
deleted file mode 100644
index 637368d2f237..000000000000
--- a/dev-python/langdetect/files/langdetect-1.0.9-explicit-config.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-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 630fe63c6f53..c09b7356f549 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-2024 Gentoo Authors
+# Copyright 2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -19,6 +19,4 @@ 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 736a1167c898..020e07f2a3dd 100644
--- a/dev-python/langdetect/metadata.xml
+++ b/dev-python/langdetect/metadata.xml
@@ -1,6 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd">
<pkgmetadata>
-
- <origin>gentoo-guru-overlay</origin>
+ <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>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-python/passlib/files/passlib-1.7.4-bcrypt-4.1.patch b/dev-python/passlib/files/passlib-1.7.4-bcrypt-4.1.patch
new file mode 100644
index 000000000000..706ff73f3b5f
--- /dev/null
+++ b/dev-python/passlib/files/passlib-1.7.4-bcrypt-4.1.patch
@@ -0,0 +1,13 @@
+diff --git a/passlib/handlers/bcrypt.py b/passlib/handlers/bcrypt.py
+index b83b110..42dd019 100644
+--- a/passlib/handlers/bcrypt.py
++++ b/passlib/handlers/bcrypt.py
+@@ -617,7 +617,7 @@ class _BcryptBackend(_BcryptCommon):
+ except ImportError: # pragma: no cover
+ return False
+ try:
+- version = _bcrypt.__about__.__version__
++ version = _bcrypt.__version__
+ except:
+ log.warning("(trapped) error reading bcrypt version", exc_info=True)
+ version = '<unknown>'
diff --git a/dev-python/passlib/passlib-1.7.4-r2.ebuild b/dev-python/passlib/passlib-1.7.4-r3.ebuild
index d1ef59376ece..b4a191f63c3a 100644
--- a/dev-python/passlib/passlib-1.7.4-r2.ebuild
+++ b/dev-python/passlib/passlib-1.7.4-r3.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
@@ -15,8 +15,8 @@ HOMEPAGE="
"
LICENSE="BSD-2"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos"
SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos"
IUSE="doc test-rust"
BDEPEND="
@@ -30,6 +30,14 @@ BDEPEND="
distutils_enable_tests pytest
+src_prepare() {
+ # fix compatibility with >=dev-python/bcrypt-4.1
+ # https://foss.heptapod.net/python-libs/passlib/-/issues/190
+ sed -i -e '/bcrypt/s:__about__\.::' passlib/handlers/bcrypt.py || die
+
+ distutils-r1_src_prepare
+}
+
python_test() {
local EPYTEST_DESELECT=(
# broken all the time by new django releases
diff --git a/dev-python/pypiserver/Manifest b/dev-python/pypiserver/Manifest
index 39fba150f6ba..7b90dece416f 100644
--- a/dev-python/pypiserver/Manifest
+++ b/dev-python/pypiserver/Manifest
@@ -1 +1,2 @@
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/files/pypiserver-2.1.1-test-offline.patch b/dev-python/pypiserver/files/pypiserver-2.1.1-test-offline.patch
new file mode 100644
index 000000000000..121677beb1b8
--- /dev/null
+++ b/dev-python/pypiserver/files/pypiserver-2.1.1-test-offline.patch
@@ -0,0 +1,33 @@
+From 749ad0f641ac14cc6e8485ed0b4fdf6aacb6f015 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
+Date: Thu, 25 Apr 2024 14:44:16 +0200
+Subject: [PATCH] test: Fix running `build` in offline test environment
+
+Fix the `build` calls to use `--no-isolation`, in order to fix
+regression in running tests in an offline environment.
+
+Unlike the previous `setup.py` calls, `build` defaults to creating a new
+virtual environment to perform the build. This, in turn, requires
+fetching the build dependencies from the Internet, effectively making
+the tests error out in an offline environment. Passing `--no-isolation`
+makes `build` use the already-installed host dependencies instead.
+---
+ tests/test_server.py | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/tests/test_server.py b/tests/test_server.py
+index 92ecdda3..99da611c 100644
+--- a/tests/test_server.py
++++ b/tests/test_server.py
+@@ -148,7 +148,10 @@ def wheel_file(project, tmp_path_factory):
+ if re.match("^3\.7", sys.version):
+ assert run_setup_py(project, f"bdist_wheel -d {distdir}") == 0
+ else:
+- assert run_py_build(project, f"--wheel --outdir {distdir}") == 0
++ assert (
++ run_py_build(project, f"--wheel --no-isolation --outdir {distdir}")
++ == 0
++ )
+ wheels = list(distdir.glob("centodeps*.whl"))
+ assert len(wheels) > 0
+ return wheels[0]
diff --git a/dev-python/pypiserver/pypiserver-2.1.1.ebuild b/dev-python/pypiserver/pypiserver-2.1.1.ebuild
new file mode 100644
index 000000000000..6325972a7890
--- /dev/null
+++ b/dev-python/pypiserver/pypiserver-2.1.1.ebuild
@@ -0,0 +1,79 @@
+# 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
+
+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="~amd64 ~arm ~arm64 ~x86"
+
+RDEPEND="
+ dev-python/bottle[${PYTHON_USEDEP}]
+ >=dev-python/packaging-23.2[${PYTHON_USEDEP}]
+ >=dev-python/pip-7[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/importlib-resources[${PYTHON_USEDEP}]
+ ' 3.{10..11})
+"
+# NB: many test deps are optional/specific to tests we skip
+BDEPEND="
+ dev-python/setuptools-git[${PYTHON_USEDEP}]
+ test? (
+ >=dev-python/build-1.2.0[${PYTHON_USEDEP}]
+ >=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"
+ # https://github.com/pypiserver/pypiserver/pull/571
+ "${FILESDIR}/${P}-test-offline.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_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
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest tests
+}