about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/python-modules/dataclasses-json/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/development/python-modules/dataclasses-json/default.nix')
-rw-r--r--nixpkgs/pkgs/development/python-modules/dataclasses-json/default.nix29
1 files changed, 24 insertions, 5 deletions
diff --git a/nixpkgs/pkgs/development/python-modules/dataclasses-json/default.nix b/nixpkgs/pkgs/development/python-modules/dataclasses-json/default.nix
index 661e77703bc0..d9b16bcc069a 100644
--- a/nixpkgs/pkgs/development/python-modules/dataclasses-json/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/dataclasses-json/default.nix
@@ -1,23 +1,39 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
-, typing-inspect
-, marshmallow-enum
 , hypothesis
+, marshmallow-enum
+, poetry-core
+, poetry-dynamic-versioning
 , pytestCheckHook
+, pythonOlder
+, typing-inspect
 }:
 
 buildPythonPackage rec {
   pname = "dataclasses-json";
-  version = "0.5.9";
+  version = "0.5.14";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "lidatong";
     repo = pname;
     rev = "refs/tags/v${version}";
-    sha256 = "sha256-2/J+d7SQvUs7nXw1n+qwy0DQCplK28eUrbP7+yQPB7g=";
+    hash = "sha256-pCvVKHh2elHaukEJNTw8MgJmoTlYjO9aVWFCQXXD13c=";
   };
 
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+      --replace 'version = "0.0.0"' 'version = "${version}"'
+  '';
+
+  nativeBuildInputs = [
+    poetry-core
+    poetry-dynamic-versioning
+  ];
+
   propagatedBuildInputs = [
     typing-inspect
     marshmallow-enum
@@ -35,11 +51,14 @@ buildPythonPackage rec {
     "tests/test_annotations.py"
   ];
 
-  pythonImportsCheck = [ "dataclasses_json" ];
+  pythonImportsCheck = [
+    "dataclasses_json"
+  ];
 
   meta = with lib; {
     description = "Simple API for encoding and decoding dataclasses to and from JSON";
     homepage = "https://github.com/lidatong/dataclasses-json";
+    changelog = "https://github.com/lidatong/dataclasses-json/releases/tag/v${version}";
     license = licenses.mit;
     maintainers = with maintainers; [ albakham ];
   };