From 33236c4c1bd18b52d21417f3f6f38ddcec67e2a9 Mon Sep 17 00:00:00 2001 From: Wang Mingyu Date: Thu, 22 Feb 2024 10:22:33 +0800 Subject: python3-pydantic: upgrade 2.5.3 -> 2.6.0 Changelog: ============ -Drop Python3.7 support -Drop Python 3.7, and PyPy 3.7 and 3.8 -Use positional-only self in BaseModel constructor, so no field name can ever conflict with it -Make @validate_call return a function instead of a custom descriptor - fixes binding issue with inheritance and adds self/cls argument to validation errors -Exclude BaseModel docstring from JSON schema description -Introducing classproperty decorator for model_computed_fields -Explicitly raise an error if field names clashes with types -Use stricter serializer for unions of simple types Signed-off-by: Wang Mingyu Signed-off-by: Khem Raj --- .../python/python3-pydantic_2.6.0.bb | 53 ++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 meta-python/recipes-devtools/python/python3-pydantic_2.6.0.bb (limited to 'meta-python/recipes-devtools/python/python3-pydantic_2.6.0.bb') diff --git a/meta-python/recipes-devtools/python/python3-pydantic_2.6.0.bb b/meta-python/recipes-devtools/python/python3-pydantic_2.6.0.bb new file mode 100644 index 0000000000..af465f4230 --- /dev/null +++ b/meta-python/recipes-devtools/python/python3-pydantic_2.6.0.bb @@ -0,0 +1,53 @@ +SUMMARY = "Data validation using Python type hinting" +DESCRIPTION = "Data validation and settings management 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.7+; validate it with \ +Pydantic." +HOMEPAGE = "https://github.com/samuelcolvin/pydantic" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://LICENSE;md5=09280955509d1c4ca14bae02f21d49a6" + +inherit pypi python_hatchling + +SRC_URI[sha256sum] = "ae887bd94eb404b09d86e4d12f93893bdca79d766e738528c6fa1c849f3c6bcf" + +DEPENDS += "python3-hatch-fancy-pypi-readme-native" + +RDEPENDS:${PN} += "\ + python3-annotated-types \ + python3-core \ + python3-datetime \ + python3-image \ + python3-io \ + python3-json \ + python3-logging \ + python3-netclient \ + python3-numbers \ + python3-profile \ + python3-pydantic-core \ + python3-typing-extensions \ +" + +inherit ptest +SRC_URI += "file://run-ptest" +RDEPENDS:${PN}-ptest += "\ + python3-cloudpickle \ + python3-dirty-equals \ + python3-pytest \ + python3-pytest-mock \ + python3-unittest-automake-output \ +" + +do_install_ptest() { + cp -rf ${S}/tests/ ${D}${PTEST_PATH}/ + # Requires 'ruff' (python3-ruff) which we cannot build + # until we have Rust 1.71+ in oe-core + rm -f ${D}${PTEST_PATH}/tests/test_docs.py + # We are not trying to support mypy + rm -f ${D}${PTEST_PATH}/tests/test_mypy.py + # We are not trying to run benchmarks + rm -rf ${D}${PTEST_PATH}/tests/benchmarks +} + -- cgit v1.2.3-54-g00ecf