summaryrefslogtreecommitdiff
path: root/dev-python/pipx
diff options
context:
space:
mode:
Diffstat (limited to 'dev-python/pipx')
-rw-r--r--dev-python/pipx/Manifest4
-rw-r--r--dev-python/pipx/pipx-1.7.1.ebuild108
2 files changed, 112 insertions, 0 deletions
diff --git a/dev-python/pipx/Manifest b/dev-python/pipx/Manifest
index b1672f2841b1..3a29837d3ea5 100644
--- a/dev-python/pipx/Manifest
+++ b/dev-python/pipx/Manifest
@@ -1,5 +1,9 @@
DIST pip-23.3.2-py3-none-any.whl 2109393 BLAKE2B 278b9941f93951508ae2f508b1b5a9fddd4ca11fac1d5b0c2ac994f8e8457226a4e8c4501078776476e0bae56fd82b989ebaf4f5f484ffe7b0ee79789e34aca8 SHA512 a1449fe400787f73ac26cb48acaae71208a2e696f9ce4992b44e11da29646b018c2f6c27a95b12e42531236fe658e0605e20d5dfa740c43e005c01da3db802da
+DIST pip-24.0-py3-none-any.whl 2110226 BLAKE2B 6a0c8c9796cd574ef1d709de40a8530a15e50158143e332b79e5ad3edceda6ce93c5ef4df49b169062598618dcc6967c2115ac2c10b05abf345318204f1eeffc SHA512 5d7462a584105bccaa9cf376f5a8c5827ead099c813c8af7392d478a4398f373d9e8cac7bbad2db51b335411ab966b21e119b1b1234c9a7ab70c6ddfc9306da6
DIST pipx-1.6.0-test-shim.tar.xz 71508 BLAKE2B f6625796b733911aeee7157d726888ef251ef43a806008a07dadcc290a22d331494ab6906ab1f5e06bf11180d295c1c6445c1a3c4d20eafb0f19fdacef02becb SHA512 a30adb15c78c8f6f9febedf4a899c665bd185ae0e9dbb5278b962fab9d47164601e7f354f61dd600df856a16d9620a586f9f5795a2985172f938fc376c840a6c
DIST pipx-1.6.0.gh.tar.gz 389164 BLAKE2B 07b603202a44136892e196066fa6d1b85fce2c7d91d798f75edf3f2a18e2924e55487dbd63747948cfc82ea3ca600bdd09e6995a9ee5954c1f4287a4f255a43b SHA512 ae241bb518b240348b5811ee9d278c927cc0e703e6cd0da6225b2e47d727ac1ab54b5ac8fc207da849afc383cfe77ca6a95a62efcb33edc238bb607eada8b00b
+DIST pipx-1.7.1-test-shim.tar.xz 72696 BLAKE2B 276db812b311774d1ad5177402084eec5d3287f72416a8bd67db99530b0ee3ba538e196b8f6ce4ade8bd73b81be238d656366c2048abb90e584be1565b25e33b SHA512 e7c6d604487e1d9a7a7b5c1cd35e758e056d7cc8f9ca4a79ad45617d44d0e857ef336cf012ea08a7e0aa0773ca4c3f9995fe3bdcd3baff048281473464c39256
+DIST pipx-1.7.1.gh.tar.gz 391902 BLAKE2B eb2801c8b2a12a8096ff2fb6882b970cce154cf3f65a87e59ab321d36ce05a9bba03ac818e2148136e00e86fe44d6efd5a39d1c535e4e135feb48b7487f1dde3 SHA512 6375d413974477f488eb8c8d95594f39cf7c54e4c09639c95cb82ed58467266c0124259b1a1fc07596ac0fbffc9fd2ff2fffe58083d78e67ca9f056f2353852f
EBUILD pipx-1.6.0.ebuild 2648 BLAKE2B 3575c54eff11dfaad5216406272cf53152a7c3385aba7d3b863bb48723fae765c3f990532c3d43273827498bd60a9fad0bdcb1878c8599620b4ad18099c23c19 SHA512 adae9d97fc7690398bde3912998077bd8243159278e3fc5de83be683f9d07cb753756f5ea2dc6ed8435624b0c18b482612307b2ce6bdd9a84fb605c35052fd5b
+EBUILD pipx-1.7.1.ebuild 2899 BLAKE2B e5e910b52feed4e3de89a1a79036173eb89e558cea64837ab51b37adb2c27cce16cceea0c96bb8e26b6bde05cc188e5abb770e65c9f0cbd24ea838dd7a970a3e SHA512 10958ce78340a2811d5cb0d8acea172ab9c1105637c6552e4eee89f73385a79485530d49d71d1f5fd8ea44c4371edd706ab3b76601e1fdcd5c421248a26d7cf5
MISC metadata.xml 361 BLAKE2B 64a1d56c1c20595adff59c8df102b6301c8d8eb9ff7c4c2a9e326d0c144d1cbf10a1dd2c61b64eb3ffc757955e689cecbe5c69528d59e9b79007150a9327a74b SHA512 edb195766bc66572ead0b5913a26be82df533cfea7d22d4aadc90c2644c22e458e34f227092a556bc644de35f6e64184b3683ea9015ae6d9126dffe47340d8b0
diff --git a/dev-python/pipx/pipx-1.7.1.ebuild b/dev-python/pipx/pipx-1.7.1.ebuild
new file mode 100644
index 000000000000..d2da505c182f
--- /dev/null
+++ b/dev-python/pipx/pipx-1.7.1.ebuild
@@ -0,0 +1,108 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYTHON_COMPAT=( pypy3 python3_{10..13} )
+
+inherit distutils-r1 pypi
+
+# To update test shim, use https://github.com/projg2/pipx-repack-wheels
+TEST_SHIM=pipx-1.7.1-test-shim
+DESCRIPTION="Install and Run Python Applications in Isolated Environments"
+HOMEPAGE="
+ https://pipx.pypa.io/stable/
+ https://pypi.org/project/pipx/
+ https://github.com/pypa/pipx/
+"
+# no tests in sdist
+SRC_URI="
+ https://github.com/pypa/pipx/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+ test? (
+ https://dev.gentoo.org/~mgorny/dist/${TEST_SHIM}.tar.xz
+ $(pypi_wheel_url pip 23.3.2)
+ $(pypi_wheel_url pip 24.0)
+ )
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/argcomplete-1.9.4[${PYTHON_USEDEP}]
+ >=dev-python/packaging-20.0[${PYTHON_USEDEP}]
+ >=dev-python/platformdirs-2.1[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/tomli[${PYTHON_USEDEP}]
+ ' 3.10)
+ >=dev-python/userpath-1.9.1[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/hatch-vcs[${PYTHON_USEDEP}]
+ test? (
+ dev-python/ensurepip-pip
+ dev-python/ensurepip-setuptools
+ dev-python/ensurepip-wheel
+ dev-python/pypiserver[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
+
+src_prepare() {
+ if use test; then
+ cp -vs "${BROOT}"/usr/lib/python/ensurepip/{pip,setuptools,wheel}-*.whl \
+ "${WORKDIR}/${TEST_SHIM}/" || die
+ # needed for pinned pin version test
+ cp -vs "${DISTDIR}"/pip-23.3.2-py3-none-any.whl \
+ "${WORKDIR}/${TEST_SHIM}/" || die
+ cp -vs "${DISTDIR}"/pip-24.0-py3-none-any.whl \
+ "${WORKDIR}/${TEST_SHIM}/" || die
+ mkdir -p .pipx_tests/package_cache || die
+
+ > scripts/update_package_cache.py || die
+ # sigh
+ sed -e 's:server = str.*:server = "pypi-server":' \
+ -i tests/conftest.py || die
+ fi
+
+ distutils-r1_src_prepare
+}
+
+python_configure() {
+ if use test; then
+ local v=$(
+ "${EPYTHON}" - <<-EOF
+ import sys
+ print(".".join(str(x) for x in sys.version_info[:2]))
+ EOF
+ )
+ if [[ ! -e .pipx_tests/package_cache/${v} ]]; then
+ ln -s "${WORKDIR}/${TEST_SHIM}" \
+ ".pipx_tests/package_cache/${v}" || die
+ fi
+ fi
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # Internet
+ tests/test_run.py::test_run_ensure_null_pythonpath
+ tests/test_run.py::test_run_script_from_internet
+ 'tests/test_install.py::test_install_package_specs[pycowsay-git+https://github.com/cs01/pycowsay.git@master]'
+ tests/test_install.py::test_force_install_changes
+ 'tests/test_install.py::test_install_package_specs[nox-https://github.com/wntrblm/nox/archive/2022.1.7.zip]'
+ tests/test_interpreter.py::test_fetch_missing_python
+ tests/test_list.py::test_list_standalone_interpreter
+ tests/test_standalone_interpreter.py
+ )
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -o tmp_path_retention_policy=all
+}