diff --git a/pkgs/development/python-modules/chispa/default.nix b/pkgs/development/python-modules/chispa/default.nix index 3410789c21cc..89accbd70ec5 100644 --- a/pkgs/development/python-modules/chispa/default.nix +++ b/pkgs/development/python-modules/chispa/default.nix @@ -1,26 +1,41 @@ -{ buildPythonPackage, fetchFromGitHub, lib, poetry-core, pyspark }: +{ lib +, buildPythonPackage +, fetchFromGitHub +, poetry-core +, pythonOlder +, setuptools +}: buildPythonPackage rec { pname = "chispa"; version = "0.8.3"; format = "pyproject"; + disabled = pythonOlder "3.7"; + src = fetchFromGitHub { - repo = "chispa"; owner = "MrPowers"; + repo = "chispa"; rev = "v${version}"; - sha256 = "sha256-1ePx8VbU8pMd5EsZhFp6qyMptlUxpoCvJfuDm9xXOdc="; + hash = "sha256-1ePx8VbU8pMd5EsZhFp6qyMptlUxpoCvJfuDm9xXOdc="; }; - checkInputs = [ pyspark ]; + nativeBuildInputs = [ + poetry-core + ]; - nativeBuildInputs = [ poetry-core ]; + propagatedBuildInputs = [ + setuptools + ]; - pythonImportsCheck = [ "chispa" ]; + # Tests require a spark installation + doCheck = false; + + # pythonImportsCheck needs spark installation meta = with lib; { - homepage = "https://github.com/MrPowers/chispa"; description = "PySpark test helper methods with beautiful error messages"; + homepage = "https://github.com/MrPowers/chispa"; license = licenses.mit; maintainers = with maintainers; [ ratsclub ]; }; diff --git a/pkgs/development/python-modules/pyspark/default.nix b/pkgs/development/python-modules/pyspark/default.nix index a596a2226c5e..b436eecbcb12 100644 --- a/pkgs/development/python-modules/pyspark/default.nix +++ b/pkgs/development/python-modules/pyspark/default.nix @@ -1,16 +1,23 @@ { lib , buildPythonPackage , fetchPypi +, numpy +, pandas , py4j +, pyarrow +, pythonOlder }: buildPythonPackage rec { pname = "pyspark"; - version = "3.3.0"; + version = "3.3.1"; + format = "setuptools"; + + disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - sha256 = "sha256-fr6OlQVke00STVqC/KYN/TiRAhz4rWxeyId37uzpLPc="; + hash = "sha256-6Z+n3pK+QGiEv9gxwyuTBqOpneRM/Dmi7vtu0HRF1fo="; }; # pypandoc is broken with pandoc2, so we just lose docs. @@ -25,6 +32,20 @@ buildPythonPackage rec { py4j ]; + passthru.optional-dependencies = { + ml = [ + numpy + ]; + mllib = [ + numpy + ]; + sql = [ + numpy + pandas + pyarrow + ]; + }; + # Tests assume running spark instance doCheck = false; @@ -40,6 +61,6 @@ buildPythonPackage rec { binaryBytecode ]; license = licenses.asl20; - maintainers = [ maintainers.shlevy ]; + maintainers = with maintainers; [ shlevy ]; }; }