diff --git a/dev-python/pypiserver/Manifest b/dev-python/pypiserver/Manifest index ec254e269e2a1..1a6292ef51248 100644 --- a/dev-python/pypiserver/Manifest +++ b/dev-python/pypiserver/Manifest @@ -1 +1,2 @@ DIST pypiserver-2.4.0.gh.tar.gz 156766 BLAKE2B 99254c4cbc4290a80a2e272c1932f91e33aa7ee68a28463faf2dbad27fca505c52697aeaea812ae7aff6b0ee5e109d7c535f0d6c4bbe3af804de29a5ccabff53 SHA512 543f8bf98bface6a6db996c130be5acb19aa31ab85d5d37d9766e132b38713aed1eb0a46c67f767185409bf8c4eaef6fdfdcb5137af2651b5b6191032b5c5268 +DIST pypiserver-2.4.1.gh.tar.gz 157182 BLAKE2B 37d8898360070465f90f706401d94cc73502d8aefef8867281b52de527a162595b6707a862bf5bbaeba55c7c112cc04b8ec2d75fccc85a712cd10664288299a5 SHA512 11e1d224f5a001748e41e766431228af69f449562af70294194561b9f567da66a7f94a29ca107e1eb919694ad5d7a4325ed85c785885991bacaf705d63e7542a diff --git a/dev-python/pypiserver/pypiserver-2.4.1.ebuild b/dev-python/pypiserver/pypiserver-2.4.1.ebuild new file mode 100644 index 0000000000000..7cc0b3b2aff8b --- /dev/null +++ b/dev-python/pypiserver/pypiserver-2.4.1.ebuild @@ -0,0 +1,79 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{11..14} pypy3_11 ) + +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 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~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.11) + $(python_gen_cond_dep ' + dev-python/legacy-cgi[${PYTHON_USEDEP}] + ' 3.14) +" +# 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 ) + +EPYTEST_PLUGINS=() +distutils_enable_tests pytest + +src_prepare() { + distutils-r1_src_prepare + + # unbundle bottle + sed -e 's:pypiserver[.]bottle_wrapper[.]::' \ + -i pypiserver/bottle_wrapper/__init__.py || die + rm pypiserver/bottle_wrapper/bottle.py || die +} + +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[${PYTHON_USEDEP}]"; then + EPYTEST_DESELECT+=( + tests/test_server.py::test_twine_upload + tests/test_server.py::test_twine_register + ) + fi + + epytest tests +}