dev-python/pydantic: Bump to 2.12.4

Signed-off-by: Michał Górny <mgorny@gentoo.org>
This commit is contained in:
Michał Górny
2025-11-06 07:08:42 +01:00
parent 376340fd20
commit ab23d6defb
2 changed files with 238 additions and 0 deletions

View File

@@ -29,6 +29,7 @@ DIST idna_adapter-1.2.0.crate 8206 BLAKE2B 5e8d7dbfea699584542cde53039df9d8c3dd4
DIST indoc-2.0.5.crate 14396 BLAKE2B fe838c6a855d6ff7396675a3fe9b2e0b06a93cfd4013b0b843d24d2fb81f6566528bfd1753c649646f06cb7e59262bd6ec3ed79d4e6f01d740cf0682355f2e5a SHA512 095fb56a3d87946c42a63065a8b276c2d4b9b835800014b400bb987593bf56701bad9f55d947f090740fdb7641a4f3c87fe8bfa5724709e95254d1e8e2e3616f
DIST itoa-1.0.11.crate 10563 BLAKE2B 94da07e0f7f2535d0b1491b3a3c64905274b315ffd35ec8e9a3e36e26cd7211733b462eefb5208963e388345f65be9694804c344a6132b2b595b0bc716c0b328 SHA512 7e22dffac34c9c9f432daef395e0ec710ed658164bc9cd9fc6445c9f984c912a10bac556214a026bcddbe27a3197b35b0c87d6709fd605062637d086b2d20311
DIST jiter-0.11.0.crate 154537 BLAKE2B 040f3881f6e02e77b759675055d35423f129ec18d3e5f6b8d85a553c473a9f1587fc595f43dae25f0321fc8003b6f2f1f52029de253b027e009f88fab0641f6f SHA512 6882a950f7c084a5fa48dcd75a912f90c2c8990683cbf878a95e122ccb4ce99a0f9dbf30dc49bc2de9b7ab2d9f81e61b256dbd657036bdee5953a5d8d6d78f6b
DIST jiter-0.11.1.crate 154396 BLAKE2B 5e510ad85739de9965c6f802df761252bcd2e57467adcee5a8ddcb41819d785463f0edce379ae243fc4b00e7d6f9016f8eb247d92ad5fb53239219fb4b0b1708 SHA512 977d20ba5ea1d770cf27434eefba328a36768160b2673b516eadc6fdc09654482967d9561515e6295b6892c65dcc0316b9bb1c5123b140eb10438dd88282e8a2
DIST js-sys-0.3.77.crate 55538 BLAKE2B 8a4c04a8e93bf5dab63784a24320a314cc5cb629df788e116c452857b8c049c6bf357f3bf8f35086eaa81bc2d7f0954001addfd0577d845844871ee138e81bc6 SHA512 d9370ed6ea892bd51ea181630ca661c348f82d575381aa4c8b529113dfcab6687f4d19bceecad7e1b28ebaca74d405862150a5b5ee2d5d55efdaf98eed1ab255
DIST lexical-parse-float-1.0.5.crate 186731 BLAKE2B 145c7cda05e7f1c949a693e77df96f6eaedb7005d864a819e522a787d05102c44352a28ac1e4598162841214bc3f1350ed121e30ca6aa5e243dc78ef1a64fa05 SHA512 3785bac5f2694febf1ce5f094ff04dc032fc1adf992949087bb18f8316fdaf416701365b34defd2529012d077032fe62ba32f898a6dfad7eefb8b7b59a06742e
DIST lexical-parse-integer-1.0.5.crate 36912 BLAKE2B de63a3241c79a79b12fcc7ac515812bcd17cbd74c10bf0e2d329f4630218001118424b7016918cdfcbe27d5cbb77caf7f6c759883dea4e957d28e44437427cb7 SHA512 3239abf7200d3c480f19848d197168dea36428b1edfa565e21a568642400a32136020b2308a81f55aeaee9f8c7db448d913b1971eab4f146ef2c1a7e29cc9715
@@ -43,13 +44,17 @@ DIST num-integer-0.1.46.crate 22331 BLAKE2B d88c9f84e5d803a3aa8f44dfc1bd6d9b5e33
DIST num-traits-0.2.19.crate 51631 BLAKE2B 78637360cbf32d172510a62bd9442708af9730c0296a2bb4ebd200c08facd49bc31bf8ddd58967e0df7273a938832b620265d9f8f4d26ad16049bf6dac1cb4e5 SHA512 180018a5eceb45085e4e8d103ff21bb4d5079cea874c42a0ad4c76c99d275d434bbc1cc289f0cdec172866daa89dbfe0871410b2cc3407233fe1129786905956
DIST once_cell-1.21.3.crate 34534 BLAKE2B 3578aaef305cad2fdffdc40c392775a3540bfab3f3aeafd22466d9507bf8346b9fcc200929d48525b051070c0aaa423ecbcaa12868b34dca007991effb224166 SHA512 32a87506c6f4598f3ca2c88556014ef2093d5db9a08602335e847caa537a866492fa74c894e7e1da2e4289a1d3dbffcb90a9e37a4a1453203832f434b8206990
DIST percent-encoding-2.3.1.crate 10235 BLAKE2B cf8e2fd7b359a05b7bdaf731f9ae84c7fe6f468a53482eb2db7f93dfdaab64ac812b3664899db260055a93449462e6d219c695942fc5b030517b197b4df9b95f SHA512 5951ea8315e52cf3acfbaa023cb9e13a136b114c54a7da0bd44619ae24cd2159d4a96469d7572a2fdabd94e19513a033387117d7ca81d0eb409fb383e4acda44
DIST percent-encoding-2.3.2.crate 11583 BLAKE2B 58925243b23a6a1decc3d92c4ce17d06af5206844ad283b49e69e523ac0db2c36c3f4407af4104ab92c029c2581c228bdf416a054a2531191a9e912448ba4408 SHA512 495b4aac88a7a46420811671d6bd82817e4eb2fe51d5068d11c5b50d0d927895d54c855cb07d4f4ad5a2d42b22f9419ad0183c14781dbfa240804fd49761035a
DIST portable-atomic-1.6.0.crate 140689 BLAKE2B c91d06e04a87c9a207233d8a850859aa1f5cc43dda8aed34511c3fe9641c27412796539ed045a58e649d2a0c7d71100b6b2d78a0c662fc061fd961a652ae8722 SHA512 b27cf57655a2f1e2d6ea7b45d80b4f9920a836e462f132c50dc1e4d314e162444309de1baecf45dad2defc7a5b99759165e54da9fe759b24092f8cb8755c515c
DIST proc-macro2-1.0.86.crate 48958 BLAKE2B 4b89e07f23af8328dbb34fe2b3f1b202f1e6a3885a6269740a23359b41bb4099ac2484565d3b2b0936261689ca525785ac620c766997234fd8d0f409e80e5ea3 SHA512 1cdb7e22a35ae231d880c9420784c9acf97bda2db258b3d34aae5061dc1858449defe19a49e12c6a4173906aa72a4115059ac2db0fc760205fd2ab8b5b414434
DIST pydantic-2.11.10.tar.gz 788494 BLAKE2B 0fad8fa9baf40869df8ccb2715dc314ff64f7c21c20328be6b8c7387f4efbab92e681bc11660cdb321e12b462e1cd908bd0ae4c9c91b1d9a9ee6b072512badc7 SHA512 7bebff22b441bf0708457ed6b93909b4e2faaa7ff168323646bc61722fddc4497ceff8fc1759b9237a57a223f08c8ef450a0c9e062cee54e97c6ebc5f396b59a
DIST pydantic-2.11.7.tar.gz 788350 BLAKE2B 4767f593beb649fe3139f3b22e3814a9f56793494dc17428cf70952451e9112d03b275c0af979f0f0159b25deae2e2794bfdb1392e2c3499220ad3cd67945414 SHA512 54ee1a49d5a429cad31928425c197139ae3cce004d8f3530835ce39897be9afa6aea35e639af1d6290bace7148e1369ce66840e26bced329bc2e7d93b3dad6e5
DIST pydantic-2.12.3.tar.gz 819383 BLAKE2B 77e7242c478ad0cb686334207737d93e7381e6cd91117859e7755460d1adb05e73af1ace2733a3a4e8fca37bd5f063a643841a190c5d04c4519087e0d2d82549 SHA512 46af1777b4fa11d5e24ef8de93bad0eef3e0250150bdfdbd75be21d139925a58c32f526053675c1c022a229641763d7de6fa8f7ef81f86553572c366bd5cc341
DIST pydantic-2.12.3.tar.gz.provenance 9153 BLAKE2B 9e7de239ba62592cf420a77a85cd64e7ace52d7cc8eb8069af6b0d811e6ce740602df7ec6af97086659437b400d5faece4ed9190ba9fa590eab747c766c14cf2 SHA512 1c3cf685838846b350f309b2ec71f7794490277bcfd799031decc53bf4ccb2eb634952103b37148b3a3cd14b5f009845bb40f97047f865d24f23b26136c9bf38
DIST pydantic-2.12.4.tar.gz 821038 BLAKE2B c756e980c65af58785d39233d4d3adb4f738d2f7072df1b11525fc1fd150bf10eaf7ce81e1922eaf860ed1011c830bcdf87b5285b3f36c06b21ea621098b9aa8 SHA512 50eb4ac28a9990a2005f82caf1d363dc9d3c19592d734228f6ade2556f252a6551f99c628d144df8b3aa18dc8054348dd0b8d77008c407f62ac85633dc2cf917
DIST pydantic-2.12.4.tar.gz.provenance 9243 BLAKE2B f81fd238a3ec0e86520578046d4921166dfd2cce5a65317704d9fdc3a73f478388fa8ba0ce53800842895e8af40b9f8427c470317f9b79f008db914140799484 SHA512 bd3cc6a5cccb1ec88dd7eaf3b3347acae56fc4b396dff2a38a5913dc5205866591bd7bdfab25fbb15107e8162ca0aef3b0fa0c214266c30d962c41df6ddc5f2d
DIST pydantic_core-2.41.4.tar.gz 457557 BLAKE2B ebff295fe3a735fe29fd1c2384eb54c44f783413e849848392eff23e317f3e6650567211a284c2f5df5318827e447ff4ab457f7d63984e3a618698f3b9bfc243 SHA512 aced59b149d48956220407ff42001167c7fa98f3ae7539bab0b16011bf9a38d9c1e8994770db7bb0426114d3322316cb3ce12cb1961d54f6a4798d8b00d1ee85
DIST pydantic_core-2.41.5.tar.gz 460952 BLAKE2B dd7d45acdc5f3093668cb57813c0c4e40e5916d04f75ef8f06308ec00243c9b0469cba5ffd2eb8449e11279d28c12ccc039dc03ed108cdb879da675d9f61aebe SHA512 1447f257efdbad0f70b490569c073696f8bdcdbd0baccac40e843520eb3cabfd23d499dca31afdc67581dd6a690cc138b882f393a91f57afcc309c800b9620c3
DIST pyo3-0.26.0.crate 1151579 BLAKE2B bcc8236785502928bf4a0b7a320e0a8f3d6140c562de4351a52d015aaebb8dd6b4d68fe607c8ea13ec66941c8f01d2c18c4249adfacb521355d4bf158667f3a3 SHA512 e073a4d893f88aa0301ef0ead78048137515edd93c490e6dccbc301ff65a208534c65c1d216b04639d4b1ec1e4b69bc87bd34974e5d0659134c28dcce589c194
DIST pyo3-build-config-0.26.0.crate 34309 BLAKE2B 5ea8b51da2f425674cd3bfcc1090ffdd08da01d2161dc66b08995c20cc859422f9f84077c545e5a0580182910aeb9dbba97838915148a82b86948d1cca3c8722 SHA512 a982d0a0baa4af58c2cef7c0c4b2671e3f559ca7f30586eda9fbd05e842efa2bfea0089ddbc729225b848871f6a25f85e86576e1dff519192ba289cd92c6aa8b
DIST pyo3-ffi-0.26.0.crate 78247 BLAKE2B 65f1c399bc763bf8afc36ccac27d28242ebcccebd08ab8d9b3165ca5c9abb10f76e76fe5a250aa1e0cdc1d1e8a613160660f07bc0dbc2812675acb9dfc8e89c2 SHA512 91c2ae828e997dee5e48d839794727e94576228e9329c358a3bc77a59f8f37fa0ae6c2579229782b3f46ab90725844ce9194b9de4d3849d824adf1d40743bf7e
@@ -60,7 +65,9 @@ DIST quote-1.0.36.crate 28507 BLAKE2B b93495163ed205e33543ed45f084870240d479071d
DIST r-efi-5.2.0.crate 64764 BLAKE2B ee17fae983b2c39137cb75698062a3bf8edb4bc680b04900797730618b54298e2f1d13ceab6b660f7a1799f6fc4113ca15d4320b1b95fc42913e0930f3aa16f8 SHA512 80f89d467b482297ec2c13cb0dc8e310442495483e25c33bb523f1cb66d6ce01fee4a57b36880a4f51c0e9f20eb3f993a5bc0a13224d52693dbc81b97c630158
DIST radium-0.7.0.crate 10906 BLAKE2B d576e0ea5c5287bcb6740cee3a3838b6ae4dfdef0ef05d34634b96dba5159e48260233db57a767c9e032fa5d9a5798361335cb19f7844f450113ece30ffbc51d SHA512 51e23cf52997b46c0018a94b0259b29d7bf33ddba19f6db406ca57ee5b1417d7e5f27dda3bb487d0099886011a97f238e8b3dd4d6c86e8464c0b471c1a7622a0
DIST regex-1.11.3.crate 163275 BLAKE2B a46ebf656ced6e349262900eb714b75e70e8dec66745723b200b76f0bf1b72aeb4c8104309d3312b84d946d52b1cccc7ec05bd3d31c918db9b565dbd9b4c8c4e SHA512 8a814d7d75fed7bc271409611e5491c2766c9c3781f8913152c956579e5cd278b26e08b3c1088890e7e70a352da1bc3d3765e5a6f1906d366dad6b5001ad68b2
DIST regex-1.12.2.crate 163843 BLAKE2B 4e36124886e35c2e06ecf3310c32f45bb80fff978a99509abd7d7eb6378f81123819470c227d5c234fd6e3bc7a8e7baa331ee0ed3137f9256c76cb32413ecb7f SHA512 c459657944679350369462c3c7686dcdf412597f75bc13c450a131bfceebfe2cd1e1d7f95f0f55b4aa16bfc1acb5c777f344fcfd6a5927aa76b8a2d7aa954d3c
DIST regex-automata-0.4.11.crate 622880 BLAKE2B 13353ae363d139bd890c3a1f46f5169ee136f4b0ccb119fc297b8937acafb0126f421eb2e3c28ce69a8b5e2f9374a50649c5417c69a23ad2a1933bd4c9ee2f5c SHA512 676dff6e44efe92d8c384573a9047f670337e80f73c49715d61e85fa1d6ac4604933c5588204ca85efd7d14f4f24b0509cbd1da0c4137d8dff965103a7113ec2
DIST regex-automata-0.4.13.crate 625250 BLAKE2B e8682eff5df93737430a783cd913265dd45a9692fc4623a956557cd7d6553f34eff731f6f3ec5fed5c0dc6b7f8f31236203ad9f459a998fede053d990d9faea6 SHA512 f76939dc573a88d17b4cf37fedfcdf95202171ca8607374a5c2bcdc515abd1ef9231376175c6cf11cc567eddda34e0c5f90ed1c592f2c5efbd1dee883954a932
DIST regex-syntax-0.8.5.crate 357541 BLAKE2B fc6d125f7a8574c37d81c75cbfd447cbcff736f2d9991b19814ffc1a414ebc5b76e84fb8fd36c983b38e8e391d165cdd9047832b0d9100f0e1ba7085484b7db5 SHA512 549d8d130fea9ec0d5806126f57f31d433f50e9328c5532ad417c44bb5488ec0d20acb0983dbe54dabaa0b453cbea4533cf7baac7144df119e8f78dfe55c5ab8
DIST rustversion-1.0.17.crate 17621 BLAKE2B 1f077ca6fd90333724d1ea9df7f5b178f37f895b71a7b2814e9ba8618bffcd2307f9cb4ac2eea25d461a6686a4b5b51eebb80f1b1ccc773d4da1948c47fe8abe SHA512 0565cddecaedae17e7cd99bc34f54cda242d4c29cd4269f8e3b178ff91d49f3682e7ffe66e436bbb138299736c8e55cc143fefb74c076911fefcc41ba98064f3
DIST ryu-1.0.18.crate 47713 BLAKE2B 409cdf4b4e77685394018371e91ad6fdb175ac57e1df9f902871f13208515e5a2ab1daa226fc1e7291278e64448332845be4cc9409bce3b2f3daed409259e104 SHA512 a9b2beac778ec47e6be303148d7512ee681bd2361f6e4ac6db32c8b4baf86a8c5eb5b0d02eacd6131ae88c7b5105c57018c3050676e0b3dd1ed9c4d2fd650e84

View File

@@ -0,0 +1,231 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_EXT=1
DISTUTILS_USE_PEP517=hatchling
# no provenance for pydantic-core:
# https://github.com/pydantic/pydantic-core/issues/1842
PYPI_VERIFY_REPO=https://github.com/pydantic/pydantic
PYTHON_COMPAT=( pypy3_11 python3_{11..14} )
PYDANTIC_CORE_PV=2.41.5
RUST_MIN_VER="1.75.0"
CRATES="
ahash@0.8.12
aho-corasick@1.1.3
autocfg@1.3.0
base64@0.22.1
bitflags@2.9.1
bitvec@1.0.1
bumpalo@3.19.0
cc@1.0.101
cfg-if@1.0.0
displaydoc@0.2.5
enum_dispatch@0.3.13
form_urlencoded@1.2.1
funty@2.0.0
getrandom@0.3.3
heck@0.5.0
hex@0.4.3
icu_collections@1.5.0
icu_locid@1.5.0
icu_locid_transform@1.5.0
icu_locid_transform_data@1.5.0
icu_normalizer@1.5.0
icu_normalizer_data@1.5.0
icu_properties@1.5.1
icu_properties_data@1.5.0
icu_provider@1.5.0
icu_provider_macros@1.5.0
idna@1.1.0
idna_adapter@1.2.0
indoc@2.0.5
itoa@1.0.11
jiter@0.11.1
js-sys@0.3.77
lexical-parse-float@1.0.5
lexical-parse-integer@1.0.5
lexical-util@1.0.6
libc@0.2.155
litemap@0.7.3
log@0.4.27
memchr@2.7.4
memoffset@0.9.1
num-bigint@0.4.6
num-integer@0.1.46
num-traits@0.2.19
once_cell@1.21.3
percent-encoding@2.3.2
portable-atomic@1.6.0
proc-macro2@1.0.86
pyo3-build-config@0.26.0
pyo3-ffi@0.26.0
pyo3-macros-backend@0.26.0
pyo3-macros@0.26.0
pyo3@0.26.0
python3-dll-a@0.2.14
quote@1.0.36
r-efi@5.2.0
radium@0.7.0
regex-automata@0.4.13
regex-syntax@0.8.5
regex@1.12.2
rustversion@1.0.17
ryu@1.0.18
serde@1.0.228
serde_core@1.0.228
serde_derive@1.0.228
serde_json@1.0.145
smallvec@1.15.1
speedate@0.17.0
stable_deref_trait@1.2.0
static_assertions@1.1.0
strum@0.27.2
strum_macros@0.27.2
syn@2.0.82
synstructure@0.13.1
tap@1.0.1
target-lexicon@0.13.2
tinystr@0.7.6
unicode-ident@1.0.12
unindent@0.2.3
url@2.5.4
utf16_iter@1.0.5
utf8_iter@1.0.4
uuid@1.18.1
version_check@0.9.5
wasi@0.14.2+wasi-0.2.4
wasm-bindgen-backend@0.2.100
wasm-bindgen-macro-support@0.2.100
wasm-bindgen-macro@0.2.100
wasm-bindgen-shared@0.2.100
wasm-bindgen@0.2.100
wit-bindgen-rt@0.39.0
write16@1.0.0
writeable@0.5.5
wyz@0.5.1
yoke-derive@0.7.4
yoke@0.7.4
zerocopy-derive@0.8.25
zerocopy@0.8.25
zerofrom-derive@0.1.4
zerofrom@0.1.4
zerovec-derive@0.10.3
zerovec@0.10.4
"
inherit cargo distutils-r1 pypi
DESCRIPTION="Data parsing and validation using Python type hints"
HOMEPAGE="
https://github.com/pydantic/pydantic/
https://pypi.org/project/pydantic/
"
# pydantic-core & pydantic have a perfect circular test dep now
SRC_URI+="
$(pypi_sdist_url pydantic_core "${PYDANTIC_CORE_PV}")
${CARGO_CRATE_URIS}
"
PYDANTIC_CORE_S=${WORKDIR}/pydantic_core-${PYDANTIC_CORE_PV}
LICENSE="MIT"
# Dependent crate licenses
LICENSE+="
Apache-2.0-with-LLVM-exceptions MIT Unicode-3.0 Unicode-DFS-2016
|| ( Apache-2.0 Boost-1.0 )
"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
RDEPEND="
>=dev-python/annotated-types-0.6.0[${PYTHON_USEDEP}]
>=dev-python/typing-extensions-4.14.1[${PYTHON_USEDEP}]
>=dev-python/typing-inspection-0.4.2[${PYTHON_USEDEP}]
dev-python/tzdata[${PYTHON_USEDEP}]
!dev-python/pydantic-core
"
BDEPEND="
>=dev-python/hatch-fancy-pypi-readme-22.5.0[${PYTHON_USEDEP}]
dev-util/maturin[${PYTHON_USEDEP}]
test? (
$(python_gen_cond_dep '
dev-python/cloudpickle[${PYTHON_USEDEP}]
' 'python3*')
dev-python/dirty-equals[${PYTHON_USEDEP}]
>=dev-python/email-validator-2.0.0[${PYTHON_USEDEP}]
>=dev-python/faker-18.13.0[${PYTHON_USEDEP}]
>=dev-python/jsonschema-4.23.0[${PYTHON_USEDEP}]
dev-python/pytz[${PYTHON_USEDEP}]
dev-python/rich[${PYTHON_USEDEP}]
)
"
# pydantic-core
BDEPEND+="
test? (
>=dev-python/dirty-equals-0.5.0[${PYTHON_USEDEP}]
>=dev-python/inline-snapshot-0.13.3[${PYTHON_USEDEP}]
>=dev-python/typing-inspection-0.4.1[${PYTHON_USEDEP}]
)
"
EPYTEST_PLUGINS=( hypothesis pytest-mock )
distutils_enable_tests pytest
QA_FLAGS_IGNORED="usr/lib.*/py.*/site-packages/pydantic_core/_pydantic_core.*.so"
src_unpack() {
pypi_src_unpack
cargo_src_unpack
}
src_prepare() {
sed -i -e '/benchmark/d' {.,"${PYDANTIC_CORE_S}"}/pyproject.toml || die
sed -i -e '/^strip/d' "${PYDANTIC_CORE_S}"/Cargo.toml || die
distutils-r1_src_prepare
}
python_compile() {
distutils-r1_python_compile
local DISTUTILS_USE_PEP517=maturin
local DISTUTILS_UPSTREAM_PEP517=maturin
cd "${PYDANTIC_CORE_S}" || die
distutils-r1_python_compile
cd - >/dev/null || die
}
python_test() {
local EPYTEST_DESELECT=(
# == pydantic ==
# -Werror, sigh
tests/test_types_typeddict.py::test_readonly_qualifier_warning
# == pydantic-core ==
# TODO: recursion till segfault
tests/serializers/test_functions.py::test_recursive_call
)
local EPYTEST_IGNORE=(
# require pytest-examples (pydantic)
tests/test_docs.py
# benchmarks (both)
tests/benchmarks
)
if ! has_version "dev-python/cloudpickle[${PYTHON_USEDEP}]"; then
EPYTEST_IGNORE+=(
# (pydantic)
tests/test_pickle.py
)
fi
cd "${PYDANTIC_CORE_S}" || die
rm -rf pydantic_core || die
# tests link to libpython, so they fail to link on pypy3
[[ ${EPYTHON} != pypy3* ]] && cargo_src_test
epytest -o xfail_strict=False -o addopts=
cd - 2>/dev/null || die
epytest
}