diff --git a/pkgs/development/python-modules/bqplot/default.nix b/pkgs/development/python-modules/bqplot/default.nix new file mode 100644 index 000000000000..967b0a15fcf6 --- /dev/null +++ b/pkgs/development/python-modules/bqplot/default.nix @@ -0,0 +1,53 @@ +{ lib +, buildPythonPackage +, pythonOlder +, fetchPypi +, jupyter-packaging +, bqscales +, ipywidgets +, numpy +, pandas +, traitlets +, traittypes +}: + +buildPythonPackage rec { + pname = "bqplot"; + version = "0.12.36"; + + format = "pyproject"; + disabled = pythonOlder "3.6"; + + src = fetchPypi { + inherit pname version; + hash = "sha256-alU+Vf28xPYuBWeb10slSdHvvkPhIK07C8sDplx5Ia8="; + }; + + nativeBuildInputs = [ + jupyter-packaging + ]; + + propagatedBuildInputs = [ + bqscales + ipywidgets + numpy + pandas + traitlets + traittypes + ]; + + # no tests in PyPI dist, and not obvious to me how to build the js files from GitHub + doCheck = false; + + pythonImportsCheck = [ + "bqplot" + "bqplot.pyplot" + ]; + + meta = { + description = "2D plotting library for Jupyter based on Grammar of Graphics"; + homepage = "https://bqplot.github.io/bqplot"; + license = lib.licenses.asl20; + maintainers = with lib.maintainers; [ bcdarwin ]; + }; +} diff --git a/pkgs/development/python-modules/bqscales/default.nix b/pkgs/development/python-modules/bqscales/default.nix new file mode 100644 index 000000000000..3bd015a58f67 --- /dev/null +++ b/pkgs/development/python-modules/bqscales/default.nix @@ -0,0 +1,48 @@ +{ lib +, buildPythonPackage +, pythonOlder +, fetchPypi +, hatchling +, jupyter-packaging +, ipywidgets +, numpy +, traitlets +, traittypes +}: + +buildPythonPackage rec { + pname = "bqscales"; + version = "0.3.1"; + + format = "pyproject"; + disabled = pythonOlder "3.6"; + + src = fetchPypi { + inherit pname version; + hash = "sha256-C+/GLpqYpePngbn5W0MwvpdmVgFZF7aGHyKMgO5XM90="; + }; + + nativeBuildInputs = [ + hatchling + jupyter-packaging + ]; + + propagatedBuildInputs = [ + ipywidgets + numpy + traitlets + traittypes + ]; + + # no tests in PyPI dist + doCheck = false; + + pythonImportsCheck = [ "bqscales" ]; + + meta = { + description = "Grammar of Graphics scales for bqplot and other Jupyter widgets libraries"; + homepage = "https://github.com/bqplot/bqscales"; + license = lib.licenses.asl20; + maintainers = with lib.maintainers; [ bcdarwin ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 3b20fa3f4dbd..b0582347de26 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -1459,6 +1459,10 @@ self: super: with self; { bpython = callPackage ../development/python-modules/bpython { }; + bqplot = callPackage ../development/python-modules/bqplot { }; + + bqscales = callPackage ../development/python-modules/bqscales { }; + braceexpand = callPackage ../development/python-modules/braceexpand { }; bracex = callPackage ../development/python-modules/bracex { };