From 79b79606db2c009a48ba180d0355de204f49e5f0 Mon Sep 17 00:00:00 2001 From: Nick Cao Date: Sun, 7 Apr 2024 11:35:17 -0400 Subject: [PATCH 1/2] python312Packages.sagemaker: fix build by adding patch removing dependency on distutils --- .../python-modules/sagemaker/default.nix | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/pkgs/development/python-modules/sagemaker/default.nix b/pkgs/development/python-modules/sagemaker/default.nix index 4e3b7062d286..42ac9f286844 100644 --- a/pkgs/development/python-modules/sagemaker/default.nix +++ b/pkgs/development/python-modules/sagemaker/default.nix @@ -2,6 +2,7 @@ , buildPythonPackage , pythonOlder , fetchFromGitHub +, fetchpatch , pythonRelaxDepsHook , attrs , boto3 @@ -38,6 +39,19 @@ buildPythonPackage rec { hash = "sha256-RE4uyIpFiZNDyS5R6+gMLlj0vcAIiHPattFPTSMGnCI="; }; + patches = [ + # Distutils removal, fix build with python 3.12 + # https://github.com/aws/sagemaker-python-sdk/pull/4544 + (fetchpatch { + url = "https://github.com/aws/sagemaker-python-sdk/commit/84447ba59e544c810aeb842fd058e20d89e3fc74.patch"; + hash = "sha256-B8Q18ViB7xYy1F5LoL1NvXj2lnFPgt+C9wssSODyAXM="; + }) + (fetchpatch { + url = "https://github.com/aws/sagemaker-python-sdk/commit/e9e08a30cb42d4b2d7299c1c4b42d680a8c78110.patch"; + hash = "sha256-uGPtXSXfeaIvt9kkZZKQDuiZfoRgw3teffuxai1kKlY="; + }) + ]; + nativeBuildInputs = [ pythonRelaxDepsHook ]; From f3f3c19e46674b10f9523d0055c35dfe57bbfd6a Mon Sep 17 00:00:00 2001 From: Nick Cao Date: Sun, 7 Apr 2024 11:43:21 -0400 Subject: [PATCH 2/2] python312Packages.sagemaker: modernize --- .../python-modules/sagemaker/default.nix | 22 ++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/pkgs/development/python-modules/sagemaker/default.nix b/pkgs/development/python-modules/sagemaker/default.nix index 42ac9f286844..a8b0d3f07cba 100644 --- a/pkgs/development/python-modules/sagemaker/default.nix +++ b/pkgs/development/python-modules/sagemaker/default.nix @@ -4,6 +4,7 @@ , fetchFromGitHub , fetchpatch , pythonRelaxDepsHook +, setuptools , attrs , boto3 , cloudpickle @@ -21,14 +22,18 @@ , platformdirs , tblib , urllib3 +, requests , docker +, tqdm +, psutil , scipy +, accelerate }: buildPythonPackage rec { pname = "sagemaker"; version = "2.214.3"; - format = "setuptools"; + pyproject = true; disabled = pythonOlder "3.8"; @@ -52,16 +57,17 @@ buildPythonPackage rec { }) ]; - nativeBuildInputs = [ + build-system = [ + setuptools pythonRelaxDepsHook ]; pythonRelaxDeps = [ - "attrs" - "boto3" + "cloudpickle" + "importlib-metadata" ]; - propagatedBuildInputs = [ + dependencies = [ attrs boto3 cloudpickle @@ -78,6 +84,11 @@ buildPythonPackage rec { jsonschema platformdirs tblib + urllib3 + requests + docker + tqdm + psutil ]; doCheck = false; # many test dependencies are not available in nixpkgs @@ -90,6 +101,7 @@ buildPythonPackage rec { passthru.optional-dependencies = { local = [ urllib3 docker pyyaml ]; scipy = [ scipy ]; + huggingface = [ accelerate ]; # feature-processor = [ pyspark sagemaker-feature-store-pyspark ]; # not available in nixpkgs };