summary refs log tree commit diff
path: root/pkgs/tools/package-management/poetry
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/tools/package-management/poetry')
-rw-r--r--pkgs/tools/package-management/poetry/default.nix21
-rw-r--r--pkgs/tools/package-management/poetry/plugins/poetry-plugin-up.nix4
-rw-r--r--pkgs/tools/package-management/poetry/unwrapped.nix10
3 files changed, 21 insertions, 14 deletions
diff --git a/pkgs/tools/package-management/poetry/default.nix b/pkgs/tools/package-management/poetry/default.nix
index 4d4a98491cb..f4a10a8ff2e 100644
--- a/pkgs/tools/package-management/poetry/default.nix
+++ b/pkgs/tools/package-management/poetry/default.nix
@@ -1,27 +1,24 @@
-{ lib
-, python3
-, fetchFromGitHub
-, fetchPypi
-}:
+{ python3, fetchFromGitHub }:
 
 let
   python = python3.override {
-    packageOverrides = self: super: {
+    packageOverrides = self: super: rec {
       poetry = self.callPackage ./unwrapped.nix { };
 
-      # version overrides required by poetry and its plugins
-      deepdiff = super.deepdiff.overridePythonAttrs (old: rec {
-        doCheck = false;
-      });
+      # The versions of Poetry and poetry-core need to match exactly,
+      # and poetry-core in nixpkgs requires a staging cycle to be updated,
+      # so apply an override here.
+      #
+      # We keep the override around even when the versions match, as
+      # it's likely to become relevant again after the next Poetry update.
       poetry-core = super.poetry-core.overridePythonAttrs (old: rec {
-        version = "1.7.0";
+        version = poetry.version;
         src = fetchFromGitHub {
           owner = "python-poetry";
           repo = "poetry-core";
           rev = version;
           hash = "sha256-OfY2zc+5CgOrgbiPVnvMdT4h1S7Aek8S7iThl6azmsk=";
         };
-        patches = [ ];
       });
     } // (plugins self);
   };
diff --git a/pkgs/tools/package-management/poetry/plugins/poetry-plugin-up.nix b/pkgs/tools/package-management/poetry/plugins/poetry-plugin-up.nix
index b9ac5d4ada0..e737173a857 100644
--- a/pkgs/tools/package-management/poetry/plugins/poetry-plugin-up.nix
+++ b/pkgs/tools/package-management/poetry/plugins/poetry-plugin-up.nix
@@ -9,14 +9,14 @@
 
 buildPythonPackage rec {
   pname = "poetry-plugin-up";
-  version = "0.4.0";
+  version = "0.7.0";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "MousaZeidBaker";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-ENw+6DdQkRLnAlIuIEdZzIsFP7ILqA9WatlVZYNJSxw=";
+    hash = "sha256-RjyRnCrHLKBJm8WMzQd0WcfpO8Ve+ydvUTN4EnVunlI=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/tools/package-management/poetry/unwrapped.nix b/pkgs/tools/package-management/poetry/unwrapped.nix
index dd130550191..751db3ceec9 100644
--- a/pkgs/tools/package-management/poetry/unwrapped.nix
+++ b/pkgs/tools/package-management/poetry/unwrapped.nix
@@ -3,6 +3,7 @@
 , buildPythonPackage
 , pythonOlder
 , fetchFromGitHub
+, fetchpatch
 , installShellFiles
 , pythonRelaxDepsHook
 , build
@@ -53,6 +54,15 @@ buildPythonPackage rec {
     hash = "sha256-/OvYT4Vix1t5Yx/Tx0z3E9L9qJ4OdI4maQqUVl8H524=";
   };
 
+  patches = [
+    # Backport patch to fix pypa/build 1.0 incompatibility
+    # FIXME: remove in next release
+    (fetchpatch {
+      url = "https://github.com/python-poetry/poetry/commit/a16863d1a448ff91a7cc4e48042d3a8669b78b34.patch";
+      hash = "sha256-dWa5W1jFS7h5cTgoFy89o1Rbtmyddvme4sus+lld058=";
+    })
+  ];
+
   nativeBuildInputs = [
     installShellFiles
     pythonRelaxDepsHook