about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/python-modules/pydantic/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/development/python-modules/pydantic/default.nix')
-rw-r--r--nixpkgs/pkgs/development/python-modules/pydantic/default.nix31
1 files changed, 26 insertions, 5 deletions
diff --git a/nixpkgs/pkgs/development/python-modules/pydantic/default.nix b/nixpkgs/pkgs/development/python-modules/pydantic/default.nix
index c81b46a20586..bb0a4bedde49 100644
--- a/nixpkgs/pkgs/development/python-modules/pydantic/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pydantic/default.nix
@@ -1,6 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
+, fetchpatch
 , pythonOlder
 
 # build-system
@@ -26,28 +27,37 @@
 
 buildPythonPackage rec {
   pname = "pydantic";
-  version = "2.5.3";
+  version = "2.6.3";
   pyproject = true;
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "pydantic";
     repo = "pydantic";
     rev = "refs/tags/v${version}";
-    hash = "sha256-YTNV67uKGRag6ICkNjjY9YrOiKFB1hSZkKcUXjSrhwM=";
+    hash = "sha256-neTdG/IcXopCmevzFY5/XDlhPHmOb6dhyAnzaobmeG8=";
   };
 
+  patches = [
+    (fetchpatch {
+      # https://github.com/pydantic/pydantic/pull/8678
+      name = "fix-pytest8-compatibility.patch";
+      url = "https://github.com/pydantic/pydantic/commit/825a6920e177a3b65836c13c7f37d82b810ce482.patch";
+      hash = "sha256-Dap5DtDzHw0jS/QUo5CRI9sLDJ719GRyC4ZNDWEdzus=";
+     })
+  ];
+
   buildInputs = lib.optionals (pythonOlder "3.9") [
     libxcrypt
   ];
 
-  nativeBuildInputs = [
+  build-system = [
     hatch-fancy-pypi-readme
     hatchling
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     annotated-types
     pydantic-core
     typing-extensions
@@ -76,6 +86,17 @@ buildPythonPackage rec {
       --replace "'--benchmark-disable'," ""
   '';
 
+  pytestFlagsArray = [
+    # suppress warnings with pytest>=8
+    "-Wignore::pydantic.warnings.PydanticDeprecatedSince20"
+    "-Wignore::pydantic.json_schema.PydanticJsonSchemaWarning"
+  ];
+
+  disabledTests = [
+    # disable failing test with pytest>=8
+    "test_assert_raises_validation_error"
+  ];
+
   disabledTestPaths = [
     "tests/benchmarks"