python-pydantic-core
Port variant v13
Summary Core module for pydantic (3.13)
Package version 2.33.1
Homepage https://github.com/pydantic/pydantic-core
Keywords python, rust
Maintainer Python Automaton
License Not yet specified
Other variants v12
Ravenports Buildsheet | History
Ravensource Port Directory | History
Last modified 07 APR 2025, 15:16:37 UTC
Port created 05 MAR 2024, 06:30:48 UTC
Subpackage Descriptions
single # pydantic-core [CI] [Coverage] [pypi] [versions] [license] This package provides the core functionality for [pydantic] validation and serialization. Pydantic-core is currently around 17x faster than pydantic V1. See [`tests/benchmarks/`] for details. ## Example of direct usage _NOTE: You should not need to use pydantic-core directly; instead, use pydantic, which in turn uses pydantic-core._ ```py from pydantic_core import SchemaValidator, ValidationError v = SchemaValidator( { 'type': 'typed-dict', 'fields': { 'name': { 'type': 'typed-dict-field', 'schema': { 'type': 'str', }, }, 'age': { 'type': 'typed-dict-field', 'schema': { 'type': 'int', 'ge': 18, }, }, 'is_developer': { 'type': 'typed-dict-field', 'schema': { 'type': 'default', 'schema': {'type': 'bool'}, 'default': True, }, }, }, } ) r1 = v.validate_python({'name': 'Samuel', 'age': 35}) assert r1 == {'name': 'Samuel', 'age': 35, 'is_developer': True} # pydantic-core can also validate JSON directly r2 = v.validate_json('{"name": "Samuel", "age": 35}') assert r1 == r2 try: v.validate_python({'name': 'Samuel', 'age': 11}) except ValidationError as e: print(e) """ 1 validation error for model age Input should be greater than or equal to 18 [type=greater_than_equal, context={ge: 18}, input_value=11, input_type=int] """ ``` ## Getting Started You'll need rust stable [installed], or rust nightly if you want to generate accurate coverage. With rust and python 3.8+ installed, compiling pydantic-core should be possible with roughly the following: ```bash # clone this repo or your fork git clone git@github.com:pydantic/pydantic-core.git cd pydantic-core # create a new virtual env python3 -m venv env source env/bin/activate # install dependencies and install pydantic-core make install ``` That should be it, the example shown above should now run. You might find it useful to look at [`python/pydantic_core/_pydantic_core.pyi`] and [`python/pydantic_core/core_schema.py`] for more information on the python API, beyond that, [`tests/`] provide a large number of examples of usage. If you want to contribute to pydantic-core, you'll want to use some other make commands:
Configuration Switches (platform-specific settings discarded)
PY312 OFF Build using Python 3.12 PY313 ON Build using Python 3.13
Package Dependencies by Type
Build (only) python-maturin:single:v13
python-typing-extensions:single:v13
rust:single:std
python313:dev:std
python-pip:single:v13
python-setuptools:single:v13
python-wheel:single:v13
python-build:single:v13
python-installer:single:v13
autoselect-python:single:std
Build and Runtime python313:primary:std
Runtime (only) ravensys-gcc:libs:std (single subpackage)
Download groups
main mirror://PYPI/p/pydantic-core
cr01 mirror://CRATES/ahash:0.8.11
cr02 mirror://CRATES/aho-corasick:1.1.3
cr03 mirror://CRATES/autocfg:1.3.0
cr04 mirror://CRATES/base64:0.22.1
cr05 mirror://CRATES/bitvec:1.0.1
cr06 mirror://CRATES/cc:1.0.101
cr07 mirror://CRATES/cfg-if:1.0.0
cr08 mirror://CRATES/displaydoc:0.2.5
cr09 mirror://CRATES/enum_dispatch:0.3.13
cr10 mirror://CRATES/equivalent:1.0.1
cr11 mirror://CRATES/form_urlencoded:1.2.1
cr12 mirror://CRATES/funty:2.0.0
cr13 mirror://CRATES/getrandom:0.2.15
cr14 mirror://CRATES/hashbrown:0.14.5
cr15 mirror://CRATES/heck:0.5.0
cr16 mirror://CRATES/hex:0.4.3
cr17 mirror://CRATES/icu_collections:1.5.0
cr18 mirror://CRATES/icu_locid:1.5.0
cr19 mirror://CRATES/icu_locid_transform:1.5.0
cr20 mirror://CRATES/icu_locid_transform_data:1.5.0
cr21 mirror://CRATES/icu_normalizer:1.5.0
cr22 mirror://CRATES/icu_normalizer_data:1.5.0
cr23 mirror://CRATES/icu_properties:1.5.1
cr24 mirror://CRATES/icu_properties_data:1.5.0
cr25 mirror://CRATES/icu_provider:1.5.0
cr26 mirror://CRATES/icu_provider_macros:1.5.0
cr27 mirror://CRATES/idna:1.0.3
cr28 mirror://CRATES/idna_adapter:1.2.0
cr29 mirror://CRATES/indexmap:2.2.6
cr30 mirror://CRATES/indoc:2.0.5
cr31 mirror://CRATES/itoa:1.0.11
cr32 mirror://CRATES/jiter:0.9.0
cr33 mirror://CRATES/lexical-parse-float:1.0.5
cr34 mirror://CRATES/lexical-parse-integer:1.0.5
cr35 mirror://CRATES/lexical-util:1.0.6
cr36 mirror://CRATES/libc:0.2.155
cr37 mirror://CRATES/litemap:0.7.3
cr38 mirror://CRATES/memchr:2.7.4
cr39 mirror://CRATES/memoffset:0.9.1
cr40 mirror://CRATES/num-bigint:0.4.6
cr41 mirror://CRATES/num-integer:0.1.46
cr42 mirror://CRATES/num-traits:0.2.19
cr43 mirror://CRATES/once_cell:1.19.0
cr44 mirror://CRATES/percent-encoding:2.3.1
cr45 mirror://CRATES/portable-atomic:1.6.0
cr46 mirror://CRATES/proc-macro2:1.0.86
cr47 mirror://CRATES/pyo3:0.24.0
cr48 mirror://CRATES/pyo3-build-config:0.24.0
cr49 mirror://CRATES/pyo3-ffi:0.24.0
cr50 mirror://CRATES/pyo3-macros:0.24.0
cr51 mirror://CRATES/pyo3-macros-backend:0.24.0
cr52 mirror://CRATES/python3-dll-a:0.2.13
cr53 mirror://CRATES/quote:1.0.36
cr54 mirror://CRATES/radium:0.7.0
cr55 mirror://CRATES/regex:1.11.1
cr56 mirror://CRATES/regex-automata:0.4.8
cr57 mirror://CRATES/regex-syntax:0.8.5
cr58 mirror://CRATES/rustversion:1.0.17
cr59 mirror://CRATES/ryu:1.0.18
cr60 mirror://CRATES/serde:1.0.218
cr61 mirror://CRATES/serde_derive:1.0.218
cr62 mirror://CRATES/serde_json:1.0.138
cr63 mirror://CRATES/smallvec:1.14.0
cr64 mirror://CRATES/speedate:0.15.0
cr65 mirror://CRATES/stable_deref_trait:1.2.0
cr66 mirror://CRATES/static_assertions:1.1.0
cr67 mirror://CRATES/strum:0.26.3
cr68 mirror://CRATES/strum_macros:0.26.4
cr69 mirror://CRATES/syn:2.0.82
cr70 mirror://CRATES/synstructure:0.13.1
cr71 mirror://CRATES/tap:1.0.1
cr72 mirror://CRATES/target-lexicon:0.13.2
cr73 mirror://CRATES/tinystr:0.7.6
cr74 mirror://CRATES/unicode-ident:1.0.12
cr75 mirror://CRATES/unindent:0.2.3
cr76 mirror://CRATES/url:2.5.4
cr77 mirror://CRATES/utf16_iter:1.0.5
cr78 mirror://CRATES/utf8_iter:1.0.4
cr79 mirror://CRATES/uuid:1.15.1
cr80 mirror://CRATES/version_check:0.9.5
cr81 mirror://CRATES/wasi:0.11.0+wasi-snapshot-preview1
cr82 mirror://CRATES/write16:1.0.0
cr83 mirror://CRATES/writeable:0.5.5
cr84 mirror://CRATES/wyz:0.5.1
cr85 mirror://CRATES/yoke:0.7.4
cr86 mirror://CRATES/yoke-derive:0.7.4
cr87 mirror://CRATES/zerocopy:0.7.34
cr88 mirror://CRATES/zerocopy-derive:0.7.34
cr89 mirror://CRATES/zerofrom:0.1.4
cr90 mirror://CRATES/zerofrom-derive:0.1.4
cr91 mirror://CRATES/zerovec:0.10.4
cr92 mirror://CRATES/zerovec-derive:0.10.3
Distribution File Information
bcc9c6fdb0ced789245b02b7d6603e17d1563064ddcfc36f046b61c0c05dd9df 434395 rust/crates/pydantic_core-2.33.1.tar.gz e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011 43607 rust/crates/ahash-0.8.11.tar.gz 8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916 183311 rust/crates/aho-corasick-1.1.3.tar.gz 0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0 16524 rust/crates/autocfg-1.3.0.tar.gz 72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6 81597 rust/crates/base64-0.22.1.tar.gz 1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c 224375 rust/crates/bitvec-1.0.1.tar.gz ac367972e516d45567c7eafc73d24e1c193dcf200a8d94e9db7b3d38b349572d 79446 rust/crates/cc-1.0.101.tar.gz baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd 7934 rust/crates/cfg-if-1.0.0.tar.gz 97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0 24219 rust/crates/displaydoc-0.2.5.tar.gz aa18ce2bc66555b3218614519ac839ddb759a7d6720732f979ef8d13be147ecd 29876 rust/crates/enum_dispatch-0.3.13.tar.gz 5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5 6615 rust/crates/equivalent-1.0.1.tar.gz e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456 8969 rust/crates/form_urlencoded-1.2.1.tar.gz e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c 13160 rust/crates/funty-2.0.0.tar.gz c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7 37163 rust/crates/getrandom-0.2.15.tar.gz e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1 141498 rust/crates/hashbrown-0.14.5.tar.gz 2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea 11517 rust/crates/heck-0.5.0.tar.gz 7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70 13299 rust/crates/hex-0.4.3.tar.gz db2fa452206ebee18c4b5c2274dbf1de17008e874b4dc4f0aea9d01ca79e4526 82762 rust/crates/icu_collections-1.5.0.tar.gz 13acbb8371917fc971be86fc8057c41a64b521c184808a698c02acc242dbf637 55131 rust/crates/icu_locid-1.5.0.tar.gz 01d11ac35de8e40fdeda00d9e1e9d92525f3f9d887cdd7aa81d727596788b54e 29094 rust/crates/icu_locid_transform-1.5.0.tar.gz fdc8ff3388f852bede6b579ad4e978ab004f139284d7b28715f773507b946f6e 44727 rust/crates/icu_locid_transform_data-1.5.0.tar.gz 19ce3e0da2ec68599d193c93d088142efd7f9c5d6fc9b803774855747dc6a84f 53113 rust/crates/icu_normalizer-1.5.0.tar.gz f8cafbf7aa791e9b22bec55a167906f9e1215fd475cd22adfcf660e03e989516 50561 rust/crates/icu_normalizer_data-1.5.0.tar.gz 93d6020766cfc6302c15dbbc9c8778c37e62c14427cb7f6e601d849e092aeef5 64479 rust/crates/icu_properties-1.5.1.tar.gz 67a8effbc3dd3e4ba1afa8ad918d5684b8868b3b26500753effea8d2eed19569 227993 rust/crates/icu_properties_data-1.5.0.tar.gz 6ed421c8a8ef78d3e2dbc98a973be2f3770cb42b606e3ab18d6237c4dfde68d9 52722 rust/crates/icu_provider-1.5.0.tar.gz 1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6 6436 rust/crates/icu_provider_macros-1.5.0.tar.gz 686f825264d630750a544639377bae737628043f20d38bbc029e8f29ea968a7e 142515 rust/crates/idna-1.0.3.tar.gz daca1df1c957320b2cf139ac61e7bd64fed304c5040df000a745aa1de3b4ef71 8206 rust/crates/idna_adapter-1.2.0.tar.gz 168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26 82420 rust/crates/indexmap-2.2.6.tar.gz b248f5224d1d606005e02c97f5aa4e88eeb230488bcc03bc9ca4d7991399f2b5 14396 rust/crates/indoc-2.0.5.tar.gz 49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b 10563 rust/crates/itoa-1.0.11.tar.gz c024ccb0ed468a474efa325edea34d4198fb601d290c4d1bc24fe31ed11902fc 149952 rust/crates/jiter-0.9.0.tar.gz de6f9cb01fb0b08060209a057c048fcbab8717b4c1ecd2eac66ebfe39a65b0f2 186731 rust/crates/lexical-parse-float-1.0.5.tar.gz 72207aae22fc0a121ba7b6d479e42cbfea549af1479c3f3a4f12c70dd66df12e 36912 rust/crates/lexical-parse-integer-1.0.5.tar.gz 5a82e24bf537fd24c177ffbbdc6ebcc8d54732c35b50a3f28cc3f4e4c949a0b3 106117 rust/crates/lexical-util-1.0.6.tar.gz 97b3888a4aecf77e811145cadf6eef5901f4782c53886191b2f693f24761847c 743539 rust/crates/libc-0.2.155.tar.gz 643cb0b8d4fcc284004d5fd0d67ccf61dfffadb7f75e1e71bc420f4688a3a704 28728 rust/crates/litemap-0.7.3.tar.gz 78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3 96670 rust/crates/memchr-2.7.4.tar.gz 488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a 9032 rust/crates/memoffset-0.9.1.tar.gz a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9 102801 rust/crates/num-bigint-0.4.6.tar.gz 7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f 22331 rust/crates/num-integer-0.1.46.tar.gz 071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841 51631 rust/crates/num-traits-0.2.19.tar.gz 3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92 33046 rust/crates/once_cell-1.19.0.tar.gz e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e 10235 rust/crates/percent-encoding-2.3.1.tar.gz 7170ef9988bc169ba16dd36a7fa041e5c4cbeb6a35b76d4c03daded371eae7c0 140689 rust/crates/portable-atomic-1.6.0.tar.gz 5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77 48958 rust/crates/proc-macro2-1.0.86.tar.gz 7f1c6c3591120564d64db2261bec5f910ae454f01def849b9c22835a84695e86 1108432 rust/crates/pyo3-0.24.0.tar.gz e9b6c2b34cf71427ea37c7001aefbaeb85886a074795e35f161f5aecc7620a7a 33982 rust/crates/pyo3-build-config-0.24.0.tar.gz 5507651906a46432cdda02cd02dd0319f6064f1374c9147c45b978621d2c3a9c 76274 rust/crates/pyo3-ffi-0.24.0.tar.gz b0d394b5b4fd8d97d48336bb0dd2aebabad39f1d294edd6bcd2cccf2eefe6f42 8850 rust/crates/pyo3-macros-0.24.0.tar.gz fd72da09cfa943b1080f621f024d2ef7e2773df7badd51aa30a2be1f8caa7c8e 71998 rust/crates/pyo3-macros-backend-0.24.0.tar.gz 49fe4227a288cf9493942ad0220ea3f185f4d1f2a14f197f7344d6d02f4ed4ed 85018 rust/crates/python3-dll-a-0.2.13.tar.gz 0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7 28507 rust/crates/quote-1.0.36.tar.gz dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09 10906 rust/crates/radium-0.7.0.tar.gz b544ef1b4eac5dc2db33ea63606ae9ffcfac26c1416a2806ae0bf5f56b201191 254170 rust/crates/regex-1.11.1.tar.gz 368758f23274712b504848e9d5a6f010445cc8b87a7cdb4d7cbee666c1288da3 617784 rust/crates/regex-automata-0.4.8.tar.gz 2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c 357541 rust/crates/regex-syntax-0.8.5.tar.gz 955d28af4278de8121b7ebeb796b6a45735dc01436d898801014aced2773a3d6 17621 rust/crates/rustversion-1.0.17.tar.gz f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f 47713 rust/crates/ryu-1.0.18.tar.gz e8dfc9d19bdbf6d17e22319da49161d5d0108e4188e8b680aef6299eed22df60 78968 rust/crates/serde-1.0.218.tar.gz f09503e191f4e797cb8aac08e9a4a4695c5edf6a2e70e376d961ddd5c969f82b 57782 rust/crates/serde_derive-1.0.218.tar.gz d434192e7da787e94a6ea7e9670b26a036d0ca41e0b7efb2676dd32bae872949 154769 rust/crates/serde_json-1.0.138.tar.gz 7fcf8323ef1faaee30a44a340193b1ac6814fd9b7b4e88e9d4519a3e4abe1cfd 35561 rust/crates/smallvec-1.14.0.tar.gz 9a5e7adf4e07e7de39a64d77962ca14a09165e592d42d0c9f9acadb679f4f937 33698 rust/crates/speedate-0.15.0.tar.gz a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3 8054 rust/crates/stable_deref_trait-1.2.0.tar.gz a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f 18480 rust/crates/static_assertions-1.1.0.tar.gz 8fec0f0aef304996cf250b31b5a10dee7980c85da9d759361292b8bca5a18f06 7237 rust/crates/strum-0.26.3.tar.gz 4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be 27531 rust/crates/strum_macros-0.26.4.tar.gz 83540f837a8afc019423a8edb95b52a8effe46957ee402287f4292fae35be021 272300 rust/crates/syn-2.0.82.tar.gz c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971 18327 rust/crates/synstructure-0.13.1.tar.gz 55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369 11316 rust/crates/tap-1.0.1.tar.gz e502f78cdbb8ba4718f566c418c52bc729126ffd16baee5baa718cf25dd5a69a 27923 rust/crates/target-lexicon-0.13.2.tar.gz 9117f5d4db391c1cf6927e7bea3db74b9a1c1add8f7eda9ffd5364f40f57b82f 16971 rust/crates/tinystr-0.7.6.tar.gz 3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b 42168 rust/crates/unicode-ident-1.0.12.tar.gz c7de7d73e1754487cb58364ee906a499937a0dfabd86bcb980fa99ec8c8fa2ce 7306 rust/crates/unindent-0.2.3.tar.gz 32f8b686cadd1473f4bd0117a5d28d36b1ade384ea9b5069a1c40aefed7fda60 81097 rust/crates/url-2.5.4.tar.gz c8232dd3cdaed5356e0f716d285e4b40b932ac434100fe9b7e0e8e935b9e6246 9736 rust/crates/utf16_iter-1.0.5.tar.gz b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be 10437 rust/crates/utf8_iter-1.0.4.tar.gz e0f540e3240398cce6128b64ba83fdbdd86129c16a3aa1a3a252efd66eb3d587 58728 rust/crates/uuid-1.15.1.tar.gz 0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a 15554 rust/crates/version_check-0.9.5.tar.gz 9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423 28131 rust/crates/wasi-0.11.0+wasi-snapshot-preview1.tar.gz d1890f4022759daae28ed4fe62859b1236caebfc61ede2f63ed4e695f3f6d936 7218 rust/crates/write16-1.0.0.tar.gz 1e9df38ee2d2c3c5948ea468a8406ff0db0b29ae1ffde1bcf20ef305bcc95c51 22354 rust/crates/writeable-0.5.5.tar.gz 05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed 18790 rust/crates/wyz-0.5.1.tar.gz 6c5b1314b079b0930c31e3af543d8ee1757b1951ae1e1565ec704403a7240ca5 27781 rust/crates/yoke-0.7.4.tar.gz 28cc31741b18cb6f1d5ff12f5b7523e3d6eb0852bbbad19d73905511d9849b95 7470 rust/crates/yoke-derive-0.7.4.tar.gz ae87e3fcd617500e5d106f0380cf7b77f3c6092aae37191433159dda23cfb087 151177 rust/crates/zerocopy-0.7.34.tar.gz 15e934569e47891f7d9411f1a451d947a60e000ab3bd24fbb970f000387d1b3b 37907 rust/crates/zerocopy-derive-0.7.34.tar.gz 91ec111ce797d0e0784a1116d0ddcdbea84322cd79e5d5ad173daeba4f93ab55 5044 rust/crates/zerofrom-0.1.4.tar.gz 0ea7b4a3637ea8669cedf0f1fd5c286a17f3de97b8dd5a70a6c167a1730e63a5 8232 rust/crates/zerofrom-derive-0.1.4.tar.gz aa2b893d79df23bfb12d5461018d408ea19dfafe76c2c7ef6d4eba614f8ff079 126398 rust/crates/zerovec-0.10.4.tar.gz 6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6 19438 rust/crates/zerovec-derive-0.10.3.tar.gz
Ports that require python-pydantic-core:v13
python-pydantic:v13 Data validation using Python type hints (3.13)