diff --git a/pkgs/development/python-modules/papermill/default.nix b/pkgs/development/python-modules/papermill/default.nix new file mode 100644 index 000000000000..ffe0fbc5da58 --- /dev/null +++ b/pkgs/development/python-modules/papermill/default.nix @@ -0,0 +1,70 @@ +{ lib +, buildPythonPackage +, fetchPypi +, ansiwrap +, click +, future +, pyyaml +, nbformat +, nbconvert +, six +, tqdm +, jupyter_client +, requests +, entrypoints +, tenacity +, futures +, backports_tempfile +, isPy27 +, pytest +, pytestcov +, pytest-mock +}: + +buildPythonPackage rec { + pname = "papermill"; + version = "1.2.1"; + + src = fetchPypi { + inherit pname version; + sha256 = "04dadaabdeb129c7414079f77b9f9a4a08f1322549aa99e20e4a12700ee23509"; + }; + + propagatedBuildInputs = [ + ansiwrap + click + future + pyyaml + nbformat + nbconvert + six + tqdm + jupyter_client + requests + entrypoints + tenacity + ] ++ lib.optionals isPy27 [ + futures + backports_tempfile + ]; + + checkInputs = [ + pytest + pytestcov + pytest-mock + ]; + + checkPhase = '' + HOME=$(mktemp -d) pytest + ''; + + # the test suite depends on cloud resources azure/aws + doCheck = false; + + meta = with lib; { + description = "Parametrize and run Jupyter and nteract Notebooks"; + homepage = https://github.com/nteract/papermill; + license = licenses.bsd3; + maintainers = [ maintainers.costrouc ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 3c98710b3268..e9d766d1ee3a 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -876,6 +876,8 @@ in { palettable = callPackage ../development/python-modules/palettable { }; + papermill = callPackage ../development/python-modules/papermill { }; + parsley = callPackage ../development/python-modules/parsley { }; pastel = callPackage ../development/python-modules/pastel { };