commit: bfa3a01822e04f236a845b33131a2e69eaf5bd7d Author: Michał Górny <mgorny <AT> gentoo <DOT> org> AuthorDate: Thu Jun 8 04:46:29 2023 +0000 Commit: Michał Górny <mgorny <AT> gentoo <DOT> org> CommitDate: Thu Jun 8 04:46:29 2023 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bfa3a018
dev-python/pydantic: Bump to 1.10.9 Signed-off-by: Michał Górny <mgorny <AT> gentoo.org> dev-python/pydantic/Manifest | 1 + dev-python/pydantic/pydantic-1.10.9.ebuild | 91 ++++++++++++++++++++++++++++++ 2 files changed, 92 insertions(+) diff --git a/dev-python/pydantic/Manifest b/dev-python/pydantic/Manifest index fe208aff3f09..6419f0b79982 100644 --- a/dev-python/pydantic/Manifest +++ b/dev-python/pydantic/Manifest @@ -1,3 +1,4 @@ DIST pydantic-1.10.7.gh.tar.gz 903379 BLAKE2B b2dd75a640ca54024a2bf141117a1d738a30a4630bed8f4d0169fc5a6a55ded719727d88c7e78b9a2acc3aec68482e9be8c8bf4776fef668fe4acc3e1fd775df SHA512 948a7935b374719773df50243aed708b3c6789243b9aa0ba239cf1502ddd0e0cec4d701e108f1cc78090c088f3cb1c78b840c39f5e7ad0e61739776f552f284d DIST pydantic-1.10.8.gh.tar.gz 765592 BLAKE2B 0b4cc273ce6fad20baa7c8bd87ef32199cb003f52b8e9aa19eda6359ca0e5c30152c7f25d2bb146ec23027011895cf44d9eb051c6ca609fb00e3d7b5f6089e4e SHA512 3ac41cdf0eb70fb71298131a043966b85387bc953ef2f463ece80728b46251d5d5f66c3f030afc3cdf4527918ae410fcd733a774cbe0c3b7ba9fc806a76378e4 +DIST pydantic-1.10.9.gh.tar.gz 765868 BLAKE2B 802c542d75b41ff2926215bf4f6bd68a906d581db7b08ed85577f9021d259717f3ef8dbacfe381723aa042aab8720ad182c57fee188f2436b33d21164e24ba23 SHA512 d376a302eac3427cdc8da0ed2fab01c0b5e7a059447777a53c394a60dac5fa0066488be8553022bb5aa89367d5a2e80e5d6e3cb39d9272843718dd07f6acd11e DIST pydantic-2.0b2.tar.gz 527380 BLAKE2B 214c740ecaed3cf4e7ed1e06d75ce17b37028e41c6a7abc4174b201691e31725123f89430c430a514c59973dc327d2b8fcd21c5ef0a47aaa48fafaf7e322d7a1 SHA512 49cc058c91e48638f9809ca77d9c486e3bdfc05e1546b19ca7e419f41e152998f750cfb58927ad8189913859d27fff68de0e5848599baaf816404e0f58fd6646 diff --git a/dev-python/pydantic/pydantic-1.10.9.ebuild b/dev-python/pydantic/pydantic-1.10.9.ebuild new file mode 100644 index 000000000000..742af7f9f99e --- /dev/null +++ b/dev-python/pydantic/pydantic-1.10.9.ebuild @@ -0,0 +1,91 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_EXT=1 +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( pypy3 python3_{10..12} ) + +inherit distutils-r1 + +MY_P=${P/_beta/b} +DESCRIPTION="Data parsing and validation using Python type hints" +HOMEPAGE=" + https://github.com/pydantic/pydantic/ + https://pypi.org/project/pydantic/ +" +SRC_URI=" + https://github.com/pydantic/pydantic/archive/v${PV/_beta/b}.tar.gz + -> ${MY_P}.gh.tar.gz +" +S=${WORKDIR}/${MY_P} + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +IUSE="native-extensions" + +RDEPEND=" + >=dev-python/typing-extensions-4.1.0[${PYTHON_USEDEP}] +" +BDEPEND=" + native-extensions? ( + <dev-python/cython-3[${PYTHON_USEDEP}] + ) + test? ( + >=dev-python/email-validator-1.2.1[${PYTHON_USEDEP}] + dev-python/hypothesis[${PYTHON_USEDEP}] + dev-python/pytest-mock[${PYTHON_USEDEP}] + dev-python/python-dotenv[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +src_prepare() { + sed -i -e '/CFLAGS/d' setup.py || die + distutils-r1_src_prepare +} + +python_compile() { + if [[ ${EPYTHON} == pypy3 ]] || ! use native-extensions; then + # do not build extensions on PyPy to workaround + # https://github.com/cython/cython/issues/4763 + local -x SKIP_CYTHON=1 + fi + distutils-r1_python_compile +} + +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 + # mypy linting causes regressions with new mypy versions + tests/mypy + ) + case ${EPYTHON} in + 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 + ) + ;; + python3.12) + EPYTEST_DESELECT+=( + tests/test_abc.py::test_model_subclassing_abstract_base_classes_without_implementation_raises_exception + tests/test_generics.py::test_partial_specification_name + tests/test_generics.py::test_parse_generic_json + tests/test_types.py::test_secretfield + ) + ;; + esac + rm -rf pydantic || die + epytest +}