diff options
Diffstat (limited to 'dev-python/pydantic')
-rw-r--r-- | dev-python/pydantic/Manifest | 3 | ||||
-rw-r--r-- | dev-python/pydantic/pydantic-1.9.0-r1.ebuild | 73 | ||||
-rw-r--r-- | dev-python/pydantic/pydantic-1.9.0.ebuild | 30 |
3 files changed, 98 insertions, 8 deletions
diff --git a/dev-python/pydantic/Manifest b/dev-python/pydantic/Manifest index a7c55569e4e8..43fc67a3f0c5 100644 --- a/dev-python/pydantic/Manifest +++ b/dev-python/pydantic/Manifest @@ -2,5 +2,6 @@ AUX pydantic-1.8.2_p20210719-update-py3.10rc1.patch 5461 BLAKE2B 991dc2438ebe9db DIST pydantic-1.8.2_p20210719.tar.gz 310729 BLAKE2B 1905ddd100e3a40b48eadc7beb75542f4a59ff8ef55115105041b0c06249ee67df1ca91003bc01f828c543c757ec8931ff2d31663d33ca16f356f62f71a61474 SHA512 c9d91788b3143b211755806e533ae0ccafa2ab101159f98eeba921ec9370956e8f8b0f210e6ddddcef2345ea391d2e1011ea5498d2f7985bd711f48d025e30d5 DIST pydantic-1.9.0.tar.gz 299758 BLAKE2B f6c2b89e598fc94db74b8165c449c752f11166752b12bbd37c23902b74c1f895bbd49b8fc4dc8da86b10880ac2e37178275cc28a42964e1133397364ea268d02 SHA512 ace542ff12698d568f2bea6121afc889c51892042b1a1b98464a6da6f71e50ecd8aafff7abd7ffd16983769844f7c970099d1fee7aa788f2e78172c0d5c4f472 EBUILD pydantic-1.8.2_p20210719.ebuild 1200 BLAKE2B e5d8f312a83e62fc82617211cebc670f32a140b97ab40a3be8cbc6a1a4fecec6d61a98189d2a63e938b9bff5eecbdb4cc4cfd679da2db404768aa2555e099419 SHA512 e7765492c554d4e7696f9eb115ca0505e05146c3b7c19104074986b8512bed6c56b737d91b4537df934ab35e2b923db7c34d97f8f53dd198b33251fff91f5be8 -EBUILD pydantic-1.9.0.ebuild 1258 BLAKE2B 7ed0cbfb13119fe7539c4491a86f9f99f88e2ac9288bc6745212eb8bb11282c0f4a69b30d2f2d26f4db77d885ed1515f3b8985856bc28fc41621dc0f5fbf007b SHA512 2cfaec6d09dd4dc084a664d9389a08ba9bf96118af02ba096e16814e96c8343c19c185a053df24643006bfbef12d697e90e0442ad9a8da652d0f579f979ba804 +EBUILD pydantic-1.9.0-r1.ebuild 1952 BLAKE2B d6a7d28fa73e7db97fee6465451d959f4bb8579581f7b8bc4d890383f61457246a749adc89bbe0ff54fd93516a0323ec8050d13e5cdc590d3687520c06755871 SHA512 19b445f9e2885344c03cd8c198ef50b6dec6348a8458a3485ad92da4bfd6efc555fb060d340cf9e13698c2c6540a2c6cd657a039e8a6b664d3697e3ea1b40fe5 +EBUILD pydantic-1.9.0.ebuild 1776 BLAKE2B 2ffe4da260a2dbbca936bbd7597bfa6b712a70c5fe2345da527727ca256bf240650f929792e72b09450cb98c102d880d1850fa0e706208fe3904e7932d414e90 SHA512 fbdf19ac48623242e32d5ecb4e2e9ad306868ef28a6bcea3d022f64dc5f40beffebaa49f774cd589dd5acdfccc0e38ce14cbf9f9d1014cad71f007ecb0af2778 MISC metadata.xml 492 BLAKE2B e21bc5a40669b2b321ba310df9dd4c6ff424e77d9d961b3aebc1f62b579444c7f505c19dae02590de999cfd8168ac522034275583fb4835e97e8db9b153fefda SHA512 bfb9c7a069a79735543dc12101af7cca16acc5fd93cae01515dc35a106c16a419c0e0e3a97a6bc8426c3db776417f7d29231022cb6ac27020f97e5dcfe0d0cbb diff --git a/dev-python/pydantic/pydantic-1.9.0-r1.ebuild b/dev-python/pydantic/pydantic-1.9.0-r1.ebuild new file mode 100644 index 000000000000..1e26b96ea70b --- /dev/null +++ b/dev-python/pydantic/pydantic-1.9.0-r1.ebuild @@ -0,0 +1,73 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( pypy3 python3_{8..10} ) + +inherit distutils-r1 + +DESCRIPTION="Data parsing and validation using Python type hints" +HOMEPAGE="https://github.com/samuelcolvin/pydantic" +SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +RDEPEND=" + dev-python/typing-extensions[${PYTHON_USEDEP}] +" +BDEPEND=" + dev-python/cython[${PYTHON_USEDEP}] + test? ( + dev-python/hypothesis[${PYTHON_USEDEP}] + dev-python/pytest-mock[${PYTHON_USEDEP}] + dev-python/python-dotenv[${PYTHON_USEDEP}] + dev-python/python-email-validator[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +src_prepare() { + sed -i -e '/CFLAGS/d' setup.py || die + distutils-r1_src_prepare +} + +python_compile() { + distutils-r1_python_compile + # "setup.py clean" is broken + # TODO: remove this if distutils-r1.eclass is updated to do rm + rm -rf build || die +} + +python_test() { + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + local -x PYTEST_PLUGINS=pytest_mock + + local EPYTEST_DESELECT=( + # flaky test, known upstream + tests/test_hypothesis_plugin.py::test_can_construct_models_with_all_fields + ) + case ${EPYTHON} in + python3.8) + EPYTEST_DESELECT+=( + # Those fail on python 3.8 as None changed typing semantic on >=3.9 + "tests/test_types.py::test_none[value_type3]" + tests/test_typing.py::test_is_none_type + ) + ;; + pypy3) + EPYTEST_DESELECT+=( + tests/test_private_attributes.py::test_private_attribute + tests/test_private_attributes.py::test_private_attribute_annotation + tests/test_private_attributes.py::test_private_attribute_factory + tests/test_private_attributes.py::test_private_attribute_multiple_inheritance + tests/test_private_attributes.py::test_underscore_attrs_are_private + ) + ;; + esac + epytest +} diff --git a/dev-python/pydantic/pydantic-1.9.0.ebuild b/dev-python/pydantic/pydantic-1.9.0.ebuild index 970f223a617f..958836539afa 100644 --- a/dev-python/pydantic/pydantic-1.9.0.ebuild +++ b/dev-python/pydantic/pydantic-1.9.0.ebuild @@ -3,7 +3,7 @@ EAPI=8 -PYTHON_COMPAT=( python3_{8..10} ) +PYTHON_COMPAT=( pypy3 python3_{8..10} ) inherit distutils-r1 DESCRIPTION="Data parsing and validation using Python type hints" @@ -12,7 +12,7 @@ SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" LICENSE="MIT" SLOT="0" -KEYWORDS="amd64 arm arm64 hppa ppc ppc64 ~riscv sparc x86" +KEYWORDS="amd64 arm arm64 hppa ~ia64 ppc ppc64 ~riscv ~s390 sparc x86" RDEPEND=" dev-python/typing-extensions[${PYTHON_USEDEP}] @@ -35,15 +35,31 @@ src_prepare() { } python_test() { + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + local -x PYTEST_PLUGINS=pytest_mock + local EPYTEST_DESELECT=( # flaky test, known upstream tests/test_hypothesis_plugin.py::test_can_construct_models_with_all_fields ) - [[ ${EPYTHON} == "python3.8" ]] && EPYTEST_DESELECT+=( - # Those fail on python 3.8 as None changed typing semantic on >=3.9 - "tests/test_types.py::test_none[value_type3]" - tests/test_typing.py::test_is_none_type - ) + case ${EPYTHON} in + python3.8) + EPYTEST_DESELECT+=( + # Those fail on python 3.8 as None changed typing semantic on >=3.9 + "tests/test_types.py::test_none[value_type3]" + tests/test_typing.py::test_is_none_type + ) + ;; + pypy3) + EPYTEST_DESELECT+=( + tests/test_private_attributes.py::test_private_attribute + tests/test_private_attributes.py::test_private_attribute_annotation + tests/test_private_attributes.py::test_private_attribute_factory + tests/test_private_attributes.py::test_private_attribute_multiple_inheritance + tests/test_private_attributes.py::test_underscore_attrs_are_private + ) + ;; + esac distutils_install_for_testing epytest } |