python-pydantic
Port variant v13
Summary Data validation using Python type hints (3.13)
Package version 2.12.4
Homepage https://github.com/pydantic/pydantic
Keywords python
Maintainer Python Automaton
License Not yet specified
Other variants v12
Ravenports Buildsheet | History
Ravensource Port Directory | History
Last modified 05 NOV 2025, 21:49:58 UTC
Port created 05 MAR 2024, 06:30:48 UTC
Subpackage Descriptions
single # Pydantic Validation [CI] [Coverage] [pypi] [CondaForge] [downloads] [versions] [license] [Pydantic v2] [![llms.txt]](https://docs.pydantic.dev/latest/llms.txt) Data validation using Python type hints. Fast and extensible, Pydantic plays nicely with your linters/IDE/brain. Define how data should be in pure, canonical Python 3.9+; validate it with Pydantic. ## Pydantic Logfire :fire: We've recently launched Pydantic Logfire to help you monitor your applications. [Learn more] ## Pydantic V1.10 vs. V2 Pydantic V2 is a ground-up rewrite that offers many new features, performance improvements, and some breaking changes compared to Pydantic V1. If you're using Pydantic V1 you may want to look at the [pydantic V1.10 Documentation] or, [`1.10.X-fixes` git branch]. Pydantic V2 also ships with the latest version of Pydantic V1 built in so that you can incrementally upgrade your code base and projects: `from pydantic import v1 as pydantic_v1`. ## Help See [documentation] for more details. ## Installation Install using `pip install -U pydantic` or `conda install pydantic -c conda-forge`. For more installation options to make Pydantic even faster, see the [Install] section in the documentation. ## A Simple Example ```python from datetime import datetime from typing import Optional from pydantic import BaseModel class User(BaseModel): id: int name: str = 'John Doe' signup_ts: Optional[datetime] = None friends: list[int] = [] external_data = {'id': '123', 'signup_ts': '2017-06-01 12:22', 'friends': [1, '2', b'3']} user = User(**external_data) print(user) #> User id=123 name='John Doe' signup_ts=datetime.datetime(2017, 6, 1, 12, 22) friends=[1, 2, 3] print(user.id) #> 123 ``` ## Contributing For guidance on setting up a development environment and how to make a contribution to Pydantic, see [Contributing to Pydantic]. ## Reporting a Security Vulnerability See our [security policy]. ## Changelog ## v2.12.4 (2025-11-05) [GitHub release] This is the fourth 2.12 patch release, fixing more regressions, and reverting a change in the `build()` method of the [`AnyUrl` and Dsn types]. This patch release also fixes an issue with the serialization of IP address types, when `serialize_as_any` is used. The next patch release will try to address the remaining issues with *serialize as any* behavior by introducing a new *polymorphic serialization* feature, that should be used in most cases in place of *serialize as any*.
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) python313:dev:std
python-pip:single:v13
autoselect-python:single:std
Build and Runtime python313:primary:std
Runtime (only) python-annotated-types:single:v13
python-pydantic-core:single:v13
python-typing-extensions:single:v13
python-typing-inspection:single:v13
Download groups
main mirror://PYPIWHL/82/2f/e68750da9b04856e2a7ec56fc6f034a5a79775e9b9a81882252789873798
Distribution File Information
92d3d202a745d46f9be6df459ac5a064fdaa3c1c4cd8adcfa332ccf3c05f871e 463400 python-src/pydantic-2.12.4-py3-none-any.whl
Ports that require python-pydantic:v13
No other ports depend on this one.