summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/aiohttp/aiohttp-3.6.2.ebuild13
-rw-r--r--dev-python/jedi/Manifest1
-rw-r--r--dev-python/jedi/jedi-0.17.2.ebuild70
-rw-r--r--dev-python/pyftpdlib/Manifest1
-rw-r--r--dev-python/pyftpdlib/pyftpdlib-1.5.5-r1.ebuild86
-rw-r--r--dev-python/pytest-expect/pytest-expect-1.1.0.ebuild24
-rw-r--r--dev-python/pytest-freezegun/pytest-freezegun-0.4.1.ebuild2
-rw-r--r--dev-python/pythondialog/Manifest1
-rw-r--r--dev-python/pythondialog/pythondialog-3.3.0.ebuild38
-rw-r--r--dev-python/stevedore/Manifest1
-rw-r--r--dev-python/stevedore/stevedore-3.2.0.ebuild43
-rw-r--r--dev-python/tempora/Manifest1
-rw-r--r--dev-python/tempora/tempora-4.0.0.ebuild42
13 files changed, 171 insertions, 152 deletions
diff --git a/dev-python/aiohttp/aiohttp-3.6.2.ebuild b/dev-python/aiohttp/aiohttp-3.6.2.ebuild
index ebb1ceafb89f..26d663b8a5e0 100644
--- a/dev-python/aiohttp/aiohttp-3.6.2.ebuild
+++ b/dev-python/aiohttp/aiohttp-3.6.2.ebuild
@@ -29,6 +29,7 @@ DEPEND="
dev-python/cython[${PYTHON_USEDEP}]
test? (
${COMMON_DEPEND}
+ !!dev-python/pytest-aiohttp
dev-python/async_generator[${PYTHON_USEDEP}]
dev-python/brotlipy[${PYTHON_USEDEP}]
dev-python/freezegun[${PYTHON_USEDEP}]
@@ -111,6 +112,9 @@ python_prepare_all() {
sed -e 's|^def test_aiohttp_plugin_async_fixture(|@pytest.mark.xfail\n\0|' \
-i tests/test_pytest_plugin.py || die
+ sed -e 's|^def test_static(|@pytest.mark.xfail\n\0|' \
+ -i tests/test_route_def.py || die
+
sed -e 's|^async def test_mixed_middleware(|@pytest.mark.xfail\n\0|' \
-e 's|^async def test_new_style_middleware_class(|@pytest.mark.xfail\n\0|' \
-e 's|^async def test_new_style_middleware_method(|@pytest.mark.xfail\n\0|' \
@@ -121,6 +125,9 @@ python_prepare_all() {
sed -e 's|^async def test_client_disconnect(|@pytest.mark.xfail\n\0|' \
-i tests/test_web_protocol.py || die
+ sed -e 's|^async def test_static_file_range(|@pytest.mark.xfail\n\0|' \
+ -i tests/test_web_sendfile_functional.py || die
+
sed -e 's|^async def test_partially_applied_handler(|@pytest.mark.xfail\n\0|' \
-i tests/test_web_urldispatcher.py || die
@@ -134,5 +141,9 @@ python_prepare_all() {
}
python_test() {
- pytest -vv "${S}/tests" || die "Tests fail with ${EPYTHON}"
+ pushd "${BUILD_DIR}/lib" >/dev/null || die
+ ln -snf "${S}/tests" tests || die
+ pytest -vv || die "Tests fail with ${EPYTHON}"
+ rm -rf .pytest_cache tests || die
+ popd >/dev/null || die
}
diff --git a/dev-python/jedi/Manifest b/dev-python/jedi/Manifest
index 835746b0407f..ec1c551a5de7 100644
--- a/dev-python/jedi/Manifest
+++ b/dev-python/jedi/Manifest
@@ -3,5 +3,6 @@ DIST jedi-0.14.1.tar.gz 860206 BLAKE2B d1234ceb417f531c5a29908843a47bec5b198abbc
DIST jedi-0.15.2.tar.gz 422520 BLAKE2B f382e4026e1d0388c03b5116ea49fe4abf117c1555ccf0159541557e8d0d344774e15b983fbc66f996f60ae38552bb3b89f3f9cc809ab57f511a01664612f08f SHA512 079d9fc104125d188c72cfc0bd0ccd4de88eb5e7cdfba86e44f840e2427d0ab114bb812dad8e814e502e773d3a59f166547f5f6f287a5eedae64af99e8b5616e
DIST jedi-0.17.0.tar.gz 462810 BLAKE2B 71eeb3e3fa23786c577fbcb3727a49111d6188c2a5d9e13538123c7c6817b67d457f3bb88423dc9dac6ee09dec89d7281c86166bc771fa0215cd327a4432ebd7 SHA512 562ae25f0c4709cfe36fe4e737d383190d8ad435b3ff580b9fbe966544c8d035cfa29815459ceecfafd704547560a8dc397f841989043e6e18c8f9d639f75399
DIST jedi-0.17.1.tar.gz 472489 BLAKE2B 7486925cb307f6a25538c2f5d52763802222561cfc4beca1637e433f4450b06ef328204e75779b6b2ac4ca2cfcf5ab647daecd329941ca6fb0ae2a5dd2bd8b5f SHA512 0a9d552d2b4c45730c9cccf06ebb434b159b755acea0dbaddf5f628dccf8e9c752e03d151258e377b817f1a25fb9ca8e0289dbd2da290f55dc719883413b65cf
+DIST jedi-0.17.2.tar.gz 474372 BLAKE2B cd0bf217202e4413a7d4f1d4095fb22ad5c3de557993fd33e246a1fb516992a16a7382db9e18e0c0414ff5d927008c8148e9bbd8ee0dbd62368d01a31611c326 SHA512 cd96faa6f9cd6e8ad8b9a52ceaa6a84f30c8ced51b20d621932f0babf1b90bbc445fbe5ffd11a4f0e356bf20bdd1da756ccc3574e5fc978883de72dfdb519977
DIST typeshed-jedi_v0.15.0.tar.gz 466890 BLAKE2B 7c4956c60646ecb7f21704e3ce95cd38a44e40849e4efba352a0be11c4511fc28d77f32308a3f136cd72833f937f802194ae57f1cdf1d53ae7824ebe4f4bc323 SHA512 46250822eb4aa20203db9b99626e33f2b60ec77072e20dbd94219d782cf204e2cc5a94579b1753c634f931445ad4ef9f0bd7ccfed287d86bca96b945d2eb27c1
DIST typeshed-jedi_v0.16.0.tar.gz 497407 BLAKE2B d322d70d3c46d1abcedddbd10aed5c6f213698f4e9f9aec1b4bd7e7186ab7ce384ec6a95d6adc46c7459e3bbb748d6ff432115cae744a315aed60972d2390eee SHA512 1551082938b52717f90e28ffd25e838ab04798ea86ea719fa35975a9de006bcc063a00cc8c8babd994990cdff694d48490f4d8c898c322666450d7ef3be8688a
diff --git a/dev-python/jedi/jedi-0.17.2.ebuild b/dev-python/jedi/jedi-0.17.2.ebuild
new file mode 100644
index 000000000000..d090e6b4f4b5
--- /dev/null
+++ b/dev-python/jedi/jedi-0.17.2.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{5,6,7,8,9} )
+
+inherit distutils-r1
+
+TYPESHED_P="typeshed-jedi_v0.16.0"
+DJANGO_STUBS_P="django-stubs-v1.5.0"
+
+DESCRIPTION="Autocompletion library for Python"
+HOMEPAGE="https://github.com/davidhalter/jedi"
+SRC_URI="
+ https://github.com/davidhalter/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz
+ https://github.com/davidhalter/typeshed/archive/${TYPESHED_P#typeshed-}.tar.gz
+ -> ${TYPESHED_P}.tar.gz
+ https://github.com/davidhalter/django-stubs/archive/${DJANGO_STUBS_P#django-stubs-}.tar.gz
+ -> ${DJANGO_STUBS_P/v/}.tar.gz"
+
+LICENSE="MIT
+ test? ( Apache-2.0 )"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+
+RDEPEND=">=dev-python/parso-0.7.0[${PYTHON_USEDEP}]"
+
+distutils_enable_sphinx docs \
+ dev-python/sphinx_rtd_theme
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ # upstream includes these as submodules ...
+ rmdir "${S}"/jedi/third_party/{django-stubs,typeshed} || die
+ mv "${WORKDIR}/${DJANGO_STUBS_P/v/}" \
+ "${S}/jedi/third_party/django-stubs" || die
+ mv "${WORKDIR}/${TYPESHED_P}" \
+ "${S}/jedi/third_party/typeshed" || die
+
+ # don't run doctests, don't depend on colorama
+ sed -i "s:'docopt',:: ; s:'colorama',::" setup.py || die
+ sed -i "s: --doctest-modules::" pytest.ini || die
+
+ # speed tests are fragile
+ rm test/test_speed.py || die
+
+ # test_complete_expanduser relies on $HOME not being empty
+ touch "${HOME}"/somefile || die
+
+ # TODO: investigate
+ sed -e 's:test_local_import:_&:' \
+ -i test/test_utils.py || die
+ sed -e '/with sqlite3\.connect/,+2d' \
+ -i test/completion/stdlib.py || die
+ rm test/completion/django.py || die
+
+ # tests relying on pristine virtualenv
+ # this relies on test* not matching anything else
+ sed -e "/#\? \['test'\]/,+1d" \
+ -i test/completion/on_import.py || die
+ # this one's broken by 'path' module (dev-python/path-py)
+ sed -e 's:test_os_issues:_&:' \
+ -i test/test_inference/test_imports.py || die
+ sed -e 's:test_venv_and_pths:_&:' \
+ -i test/test_inference/test_sys_path.py || die
+
+ distutils-r1_python_prepare_all
+}
diff --git a/dev-python/pyftpdlib/Manifest b/dev-python/pyftpdlib/Manifest
index 6b886a655308..5e424d106727 100644
--- a/dev-python/pyftpdlib/Manifest
+++ b/dev-python/pyftpdlib/Manifest
@@ -1,2 +1 @@
-DIST pyftpdlib-1.5.5.tar.gz 184314 BLAKE2B 2d02839c6809674c7b7c4dfd610610a9231799802cc53ad0a05bfabc8985e77c64d9b239628f13bdc22942460b3e923067f084c3c5ac2b7be7671279a08e0351 SHA512 27427154f893812f689adf3a9ceb4ec2d8f0ea7a4bf7b08671dc146c95f09ddd596a27c85e009d8d6647277def48c0bf0a8b76fb3fba5818eda3dfdc6c10795e
DIST pyftpdlib-1.5.6.tar.gz 188099 BLAKE2B 508e94da6b27b4b1f15306df2916c176f07ca31944398e9ac580fca8d2cdc72ca0ee8e7db282de6745e2e401b23b1fa8cb8de400dc2ba998b93ac45772c78157 SHA512 a3c3c1cac221a8a3c090ee208c03134bb1b8de58099a23ca6ee422f06fb97a0ed561c96e62c62b21fa112dd0b3458651b9fc0c55d72dc0bed79d0583b319a50d
diff --git a/dev-python/pyftpdlib/pyftpdlib-1.5.5-r1.ebuild b/dev-python/pyftpdlib/pyftpdlib-1.5.5-r1.ebuild
deleted file mode 100644
index 3e04597d25f5..000000000000
--- a/dev-python/pyftpdlib/pyftpdlib-1.5.5-r1.ebuild
+++ /dev/null
@@ -1,86 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 python3_{5,6,7,8,9} )
-PYTHON_REQ_USE="ssl(+)"
-
-inherit distutils-r1
-
-DESCRIPTION="Python FTP server library"
-HOMEPAGE="https://github.com/giampaolo/pyftpdlib https://pypi.org/project/pyftpdlib/"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris"
-IUSE="examples ssl test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- ssl? ( dev-python/pyopenssl[${PYTHON_USEDEP}] )
- dev-python/pysendfile[${PYTHON_USEDEP}]
-"
-DEPEND="
- dev-python/setuptools[${PYTHON_USEDEP}]
- test? (
- ${RDEPEND}
- dev-python/mock[${PYTHON_USEDEP}]
- dev-python/psutil[${PYTHON_USEDEP}]
- dev-python/pyopenssl[${PYTHON_USEDEP}]
- dev-python/pytest[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_sphinx docs dev-python/sphinx_rtd_theme
-
-python_test() {
- # These tests fail when passing additional options to pytest
- # so we need to run them separately and not pass any args to pytest
- pytest ${PN}/test/test_misc.py || die "Tests failed with ${EPYTHON}"
- # Some of these tests tend to fail
- local skipped_tests=(
- # https://github.com/giampaolo/pyftpdlib/issues/470
- # https://bugs.gentoo.org/659108
- pyftpdlib/test/test_functional_ssl.py::TestTimeouts::test_idle_data_timeout2
- pyftpdlib/test/test_functional_ssl.py::TestTimeoutsTLSMixin::test_idle_data_timeout2
- # https://github.com/giampaolo/pyftpdlib/issues/471
- # https://bugs.gentoo.org/636410
- pyftpdlib/test/test_functional.py::TestCallbacks::test_on_incomplete_file_received
- # https://github.com/giampaolo/pyftpdlib/issues/466
- # https://bugs.gentoo.org/659786
- pyftpdlib/test/test_functional_ssl.py::TestFtpListingCmdsTLSMixin::test_nlst
- # https://github.com/giampaolo/pyftpdlib/issues/512
- # https://bugs.gentoo.org/701146
- pyftpdlib/test/test_functional_ssl.py::TestFtpStoreDataTLSMixin::test_rest_on_stor
- pyftpdlib/test/test_functional_ssl.py::TestFtpStoreDataTLSMixin::test_stor_ascii
- # https://github.com/giampaolo/pyftpdlib/issues/513
- # https://bugs.gentoo.org/676232
- pyftpdlib/test/test_servers.py::TestFtpAuthentication::test_anon_auth
- # https://github.com/giampaolo/pyftpdlib/issues/513
- # https://bugs.gentoo.org/702578
- pyftpdlib/test/test_servers.py::TestFtpAuthentication::test_auth_failed
- )
- # Tests fail with TZ=GMT, see https://bugs.gentoo.org/666623
- TZ=UTC+1 pytest -vv \
- --ignore ${PN}/test/test_misc.py ${skipped_tests[@]/#/--deselect } \
- || die "Tests failed with ${EPYTHON}"
-}
-
-python_install_all() {
- if use examples; then
- docinto examples
- dodoc -r demo/.
- docompress -x /usr/share/doc/${PF}/examples
- fi
- distutils-r1_python_install_all
-}
-
-pkg_postinst() {
- if [[ -z ${REPLACING_VERSIONS} ]] && \
- [[ ${PYTHON_TARGETS} == *python2_7* ]] && \
- ! has_version dev-python/pysendfile ; then
- elog "dev-python/pysendfile is not installed"
- elog "It can considerably speed up file transfers for Python 2"
- fi
-}
diff --git a/dev-python/pytest-expect/pytest-expect-1.1.0.ebuild b/dev-python/pytest-expect/pytest-expect-1.1.0.ebuild
deleted file mode 100644
index 092cfb6f366d..000000000000
--- a/dev-python/pytest-expect/pytest-expect-1.1.0.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-PYTHON_COMPAT=( python2_7 python3_{5,6,7,8,9} )
-
-inherit distutils-r1
-
-DESCRIPTION="py.test plugin that stores test expectations by saving the set of failing tests"
-HOMEPAGE="https://github.com/gsnedders/pytest-expect/ https://pypi.org/project/pytest-expect/"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 s390 sparc x86"
-IUSE=""
-
-RDEPEND="
- dev-python/pytest[${PYTHON_USEDEP}]
- dev-python/u-msgpack[${PYTHON_USEDEP}]"
-
-DEPEND="
- ${RDEPEND}
- dev-python/setuptools[${PYTHON_USEDEP}]"
diff --git a/dev-python/pytest-freezegun/pytest-freezegun-0.4.1.ebuild b/dev-python/pytest-freezegun/pytest-freezegun-0.4.1.ebuild
index c45be2041e57..6425d8e683a4 100644
--- a/dev-python/pytest-freezegun/pytest-freezegun-0.4.1.ebuild
+++ b/dev-python/pytest-freezegun/pytest-freezegun-0.4.1.ebuild
@@ -4,7 +4,7 @@
EAPI=7
DISTUTILS_USE_SETUPTOOLS=rdepend
-PYTHON_COMPAT=( python3_{5,6,7,8,9} )
+PYTHON_COMPAT=( python3_{5,6,7,8,9} pypy3 )
inherit distutils-r1
DESCRIPTION="Easily freeze time in pytest test + fixtures"
diff --git a/dev-python/pythondialog/Manifest b/dev-python/pythondialog/Manifest
index ce092d00e840..a0f7d8de19fa 100644
--- a/dev-python/pythondialog/Manifest
+++ b/dev-python/pythondialog/Manifest
@@ -1,2 +1 @@
-DIST python3-pythondialog-3.3.0.tar.bz2 1827891 BLAKE2B ef78832972cc2417ecedc797cb95ea10b1fcca4ff1ab2f7db74a9afaefddeedfee8303f2f4b9ff7230f3d2eea305e359f3854112abaefa2a4adf4c801de7ffe0 SHA512 b651593f077f6679be030182ac5f14a02d8bad86206c2733ba8b655d346809a32ea391de91e35101d400c55d9e8ecefaf6f1ba25fec036246186e13530f43a1f
DIST python3-pythondialog-3.5.1.tar.bz2 1418034 BLAKE2B 28dbb76a213d702abd6fb4571ddd28acea0bd9757424e99432aa58c1336fce2aa9b248e4de0631fe34c7ac52b928c8b3dc65afc42a826cc268ca4247be4dafb8 SHA512 f032e425ce1ebac53ade1401e48625b5869497367f788831d08fd22eb3b3b14fa5aebd26fd3681b47222ef0247ebb5c1ead127f111ca296197e258650dd675ad
diff --git a/dev-python/pythondialog/pythondialog-3.3.0.ebuild b/dev-python/pythondialog/pythondialog-3.3.0.ebuild
deleted file mode 100644
index 42af24cee0fc..000000000000
--- a/dev-python/pythondialog/pythondialog-3.3.0.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-PYTHON_COMPAT=( python3_{5,6,7,8,9} pypy3 )
-
-inherit distutils-r1
-
-DESCRIPTION="A Python module for making simple text/console-mode user interfaces"
-HOMEPAGE="https://sourceforge.net/projects/pythondialog/"
-SRC_URI="mirror://sourceforge/pythondialog//${PV}/python3-${P}.tar.bz2"
-
-LICENSE="LGPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~ia64 ppc sparc x86"
-IUSE="doc examples"
-
-RDEPEND="dev-util/dialog"
-DEPEND="doc? ( dev-python/sphinx[${PYTHON_USEDEP}] )"
-
-python_prepare_all() {
- sed -e "/^ 'sphinx.ext.intersphinx',/d" -i doc/conf.py || die
- distutils-r1_python_prepare_all
-}
-
-python_compile_all() {
- use doc && emake -C doc html
-}
-
-python_install_all() {
- if use examples; then
- dodoc -r examples
- docompress -x /usr/share/doc/${PF}/examples
- fi
- use doc && local HTML_DOCS=( doc/_build/html/. )
-
- distutils-r1_python_install_all
-}
diff --git a/dev-python/stevedore/Manifest b/dev-python/stevedore/Manifest
index 433dc3670abe..a6a13b8fe1c4 100644
--- a/dev-python/stevedore/Manifest
+++ b/dev-python/stevedore/Manifest
@@ -1,3 +1,4 @@
DIST stevedore-2.0.1.tar.gz 505248 BLAKE2B 2fee9467b70aa605ca89060e839a2c00deec571f15f014cb8118710e9221fef65ec15172d727dbafb5d5e2adf15ce0e94919804e2ec7ee72ae9e47afe2a6b88f SHA512 1efe46983975b1a0f176f847874c68dd91538fc3c029facbbf0f96891894176e0eeaf28c19e674baa9e9dae024deabae0555c846e36211a9be6cbba5e2ecd710
DIST stevedore-3.0.0.tar.gz 510351 BLAKE2B c73a6baaa4179f8bd45bae92491fa6f87d63594fa245f58f297526a277c7b40f5548526029144da4f18f0df71dcbbdc3620d7dd635db700ad98b597b797c4648 SHA512 5970d13b7986e0f0e0cb6dc30eef8a4a75c6d7122bbf7123f71a9d66bcbd16725a50345217552206506960df1eadbf4e0c04fa6f2cfc25362ed347ebff25d5b6
DIST stevedore-3.1.0.tar.gz 509580 BLAKE2B d19d70bef6573259f48c171b81aa6c08efa2055825ae8834e30f5713e3049cb75fe6adc07bfd37b4a1b17c0d4eb03cc31bf208cf01b91b94dcd436069e03dcbf SHA512 d5b800b6bcbf21935edc71241de2216690bf879f829264b762ff29402a273e7fa6b20b551be3f38a433eb967ff4f248cb3d2f359bd00fda03e79b21cdc800207
+DIST stevedore-3.2.0.tar.gz 510559 BLAKE2B 69faa75eed9efff36a0dd5f91730dd22936af646bd54e1f8c47da5d3bc3d33e949714ac81898747336bcd8acbdd1bb2addc68fb64add825493ad29fb22393fee SHA512 89b6c88ff41bd9429561886fa2e7cbeef1658e955266b61e1ac9809812ee8e290ecb39819618a12b1a6e080d2e86ea03d951a0a31f7ff4920d8b22bb55420439
diff --git a/dev-python/stevedore/stevedore-3.2.0.ebuild b/dev-python/stevedore/stevedore-3.2.0.ebuild
new file mode 100644
index 000000000000..a6e52d5c5434
--- /dev/null
+++ b/dev-python/stevedore/stevedore-3.2.0.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{5,6,7,8,9} )
+DISTUTILS_USE_SETUPTOOLS=rdepend
+
+inherit distutils-r1
+
+DESCRIPTION="Manage dynamic plugins for Python applications"
+HOMEPAGE="https://github.com/openstack/stevedore https://pypi.org/project/stevedore/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc64 ~sparc ~x86"
+
+RDEPEND="
+ $(python_gen_cond_dep '
+ >=dev-python/importlib_metadata-1.7.0[${PYTHON_USEDEP}]
+ ' python3_{6,7})
+ >=dev-python/six-1.10.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+ test? (
+ dev-python/sphinx[${PYTHON_USEDEP}]
+ dev-python/testtools[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests unittest
+distutils_enable_sphinx 'doc/source' \
+ '>=dev-python/openstackdocstheme-1.18.1' \
+ '>=dev-python/reno-2.5.0' \
+ '>=dev-python/sphinx-2.0.0'
+
+python_prepare_all() {
+ # Delete spurious data in requirements.txt
+ sed -e '/^pbr/d' -i requirements.txt || die
+ distutils-r1_python_prepare_all
+}
diff --git a/dev-python/tempora/Manifest b/dev-python/tempora/Manifest
index 7db945c48b36..0a26115a5e3c 100644
--- a/dev-python/tempora/Manifest
+++ b/dev-python/tempora/Manifest
@@ -1 +1,2 @@
DIST tempora-3.0.0.tar.gz 21500 BLAKE2B 7bf241d5ab60c78c0ea56df6b28e33504200eb5427cdffaf9d5f34da202c3ba4550fa4dcc48874ee870345fa5a10f2b874687fe7de2bbe049b1c14d05161b0e0 SHA512 2d397c1d17bb4c502817ad0278090137fb8ca00273c63a7336200ed7e621a99cd5c954cdc2da00d06eba34ed4f079429f5ddc68b928cc83feacb2335f995e1b7
+DIST tempora-4.0.0.tar.gz 47217 BLAKE2B 3f8489c584768c074874fd299d11ca71b51c646f07792ac910dbd3fa76c309a866e599204364bbc06e6589a6fa046d3150bff05c9d3beb9b427ff409e2c27fe6 SHA512 59792bf03b4ccbdd5b849f0f6b9a0b5f2672e1cc3076b85449b8f183524d23de05588c3a8185550cdb9e52cc610e29db18ed151b8c5f5f25438de41015cc595e
diff --git a/dev-python/tempora/tempora-4.0.0.ebuild b/dev-python/tempora/tempora-4.0.0.ebuild
new file mode 100644
index 000000000000..a31653551f8c
--- /dev/null
+++ b/dev-python/tempora/tempora-4.0.0.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{5,6,7,8,9} pypy3 )
+DISTUTILS_USE_SETUPTOOLS=rdepend
+
+inherit distutils-r1
+
+MY_PN="${PN/-/.}"
+DESCRIPTION="Objects and routines pertaining to date and time"
+HOMEPAGE="https://github.com/jaraco/tempora"
+SRC_URI="mirror://pypi/${PN:0:1}/${MY_PN}/${MY_PN}-${PV}.tar.gz"
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+
+RDEPEND="
+ >=dev-python/jaraco-functools-1.20[${PYTHON_USEDEP}]
+ dev-python/pytz[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/setuptools_scm[${PYTHON_USEDEP}]
+ dev-python/toml[${PYTHON_USEDEP}]
+ test? (
+ dev-python/freezegun[${PYTHON_USEDEP}]
+ dev-python/pytest-freezegun[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+distutils_enable_sphinx docs \
+ ">=dev-python/jaraco-packaging-3.2" \
+ ">=dev-python/rst-linker-1.9"
+
+src_prepare() {
+ sed -i -e 's:--flake8 --black --cov --mypy::' pytest.ini || die
+ distutils-r1_src_prepare
+}