diff --git a/community/py3-pydantic/APKBUILD b/community/py3-pydantic/APKBUILD
index 0f54fde1522d43409b8092610bc397de53b5d987..3914a6230131c562380202359f7474b390772a94 100644
--- a/community/py3-pydantic/APKBUILD
+++ b/community/py3-pydantic/APKBUILD
@@ -1,21 +1,42 @@
 # Contributor: Newbyte <newbyte@disroot.org>
 # Maintainer: Natanael Copa <ncopa@alpinelinux.org>
 pkgname=py3-pydantic
-pkgver=2.8.2
+pkgver=2.9.2
 pkgrel=0
 pkgdesc="Data parsing and validation using Python type hints"
-url="https://github.com/samuelcolvin/pydantic"
+url="https://github.com/pydantic/pydantic"
 arch="noarch"
 license="MIT"
-depends="py3-typing-extensions py3-annotated-types py3-pydantic-core"
-makedepends="py3-gpep517 py3-hatchling py3-wheel py3-hatch-fancy-pypi-readme"
-checkdepends="py3-hypothesis py3-pytest py3-pytest-mock py3-pytest-benchmark py3-dirty-equals py3-cloudpickle py3-faker py3-rich py3-email-validator"
+depends="
+	py3-annotated-types
+	py3-pydantic-core
+	py3-typing-extensions
+	"
+makedepends="
+	py3-gpep517
+	py3-hatchling
+	py3-hatch-fancy-pypi-readme
+	py3-wheel
+	"
+checkdepends="
+	py3-cloudpickle
+	py3-dirty-equals
+	py3-email-validator
+	py3-faker
+	py3-hypothesis
+	py3-jsonschema
+	py3-pytest
+	py3-pytest-mock
+	py3-pytest-benchmark
+	py3-rich
+	py3-tzdata
+	"
 subpackages="$pkgname-pyc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/samuelcolvin/pydantic/archive/refs/tags/v$pkgver.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/pydantic/pydantic/archive/refs/tags/v$pkgver.tar.gz
+	invalid_schema.patch
+	"
 builddir="$srcdir/pydantic-$pkgver"
-
-# Tests broken on Python 3.12.
-options="!check"
+patch_args="-p1 --no-backup-if-mismatch"
 
 build() {
 	gpep517 build-wheel \
@@ -37,5 +58,6 @@ package() {
 }
 
 sha512sums="
-a9ef0ee54fac0d06e53effd4db793559e5d2779b5df53b5b9eceb0839c3c7dbd56224424b4d418d18932dc5341132c8a9bc159138badcbc12b957412d4d229f2  py3-pydantic-2.8.2.tar.gz
+ca4efd3972fabff9be675e1f8bc39b4048e18b56db7d8985c560172aceb9f73818ede407d1b97a9069815c0cc7ce9b8dada0cbb43ba0f66a84be7700b48230b6  py3-pydantic-2.9.2.tar.gz
+26712b861a0a564e18d3bad19fd87753f4c1643b728f6906857cfa84cab508b091f66c58db87415993a3a7c320facccf3952d5438d0b389a183aecf62c6d819d  invalid_schema.patch
 "
diff --git a/community/py3-pydantic/invalid_schema.patch b/community/py3-pydantic/invalid_schema.patch
new file mode 100644
index 0000000000000000000000000000000000000000..e0274b3076820e311883bbae09e15aee77f5a53b
--- /dev/null
+++ b/community/py3-pydantic/invalid_schema.patch
@@ -0,0 +1,17 @@
+Ref https://github.com/pydantic/pydantic/pull/10523
+
+--- a/pydantic/json_schema.py
++++ b/pydantic/json_schema.py
+@@ -589,6 +589,12 @@ def _sort_recursive(self, value: Any, parent_key: str | None = None) -> Any:
+             return value
+ 
+     # ### Schema generation methods
++
++    def invalid_schema(self, schema: core_schema.InvalidSchema) -> JsonSchemaValue:
++        """Placeholder - should never be called."""
++
++        raise RuntimeError('Cannot generate schema for invalid_schema. This is a bug! Please report it.')
++
+     def any_schema(self, schema: core_schema.AnySchema) -> JsonSchemaValue:
+         """Generates a JSON schema that matches any value.
+