summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichał Górny <mgorny@gentoo.org>2022-05-18 14:50:40 +0200
committerMichał Górny <mgorny@gentoo.org>2022-05-18 17:13:51 +0200
commit3563aab0076b4798207a44ba6374a1aa885ee1fc (patch)
treeea471a935da051ac57cbbf595c6b53ba138f3c02 /dev-python/passlib
parentkde-plasma/plasma-workspace: Drop 5.24.5 (r0) (diff)
downloadgentoo-3563aab0076b4798207a44ba6374a1aa885ee1fc.tar.gz
gentoo-3563aab0076b4798207a44ba6374a1aa885ee1fc.tar.bz2
gentoo-3563aab0076b4798207a44ba6374a1aa885ee1fc.zip
dev-python/passlib: Use PEP517 build
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Diffstat (limited to 'dev-python/passlib')
-rw-r--r--dev-python/passlib/passlib-1.7.4-r2.ebuild54
1 files changed, 54 insertions, 0 deletions
diff --git a/dev-python/passlib/passlib-1.7.4-r2.ebuild b/dev-python/passlib/passlib-1.7.4-r2.ebuild
new file mode 100644
index 000000000000..d94f2af91e7f
--- /dev/null
+++ b/dev-python/passlib/passlib-1.7.4-r2.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{8..10} pypy3 )
+
+inherit distutils-r1 optfeature
+
+DESCRIPTION="Password hashing framework supporting over 20 schemes"
+HOMEPAGE="
+ https://foss.heptapod.net/python-libs/passlib/-/wikis/home
+ https://pypi.org/project/passlib/
+"
+SRC_URI="mirror://pypi/${PN::1}/${PN}/${P}.tar.gz"
+
+LICENSE="BSD-2"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+SLOT="0"
+IUSE="doc"
+
+BDEPEND="
+ test? (
+ dev-python/bcrypt[${PYTHON_USEDEP}]
+ dev-python/scrypt[${PYTHON_USEDEP}]
+ !alpha? ( !hppa? ( !ia64? (
+ dev-python/cryptography[${PYTHON_USEDEP}]
+ ) ) )
+ )"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # broken all the time by new django releases
+ passlib/tests/test_ext_django.py
+ )
+
+ # skip fuzzing tests, they are very slow
+ epytest -k "not fuzz_input"
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+ use doc && dodoc docs/{*.rst,requirements.txt,lib/*.rst}
+}
+
+pkg_postinst() {
+ optfeature "Argon2 support" dev-python/argon2-cffi
+ optfeature "bcrypt support" dev-python/bcrypt
+ optfeature "scrypt support" dev-python/scrypt
+ optfeature "Time-based One-Time Password (TOTP) support" dev-python/cryptography
+}