depot/third_party/nixpkgs/pkgs/development/python-modules/pydeck/default.nix

75 lines
1.3 KiB
Nix

{
lib,
buildPythonPackage,
fetchPypi,
ipykernel,
ipywidgets,
jinja2,
jupyter,
numpy,
pandas,
pytestCheckHook,
pythonOlder,
setuptools,
traitlets,
wheel,
}:
buildPythonPackage rec {
pname = "pydeck";
version = "0.9.1";
format = "pyproject";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
hash = "sha256-90R1rmN5UdY/LuWDJnV/jU+c2fKkV89ClQcVAD4stgU=";
};
# upstream has an invalid pyproject.toml
# https://github.com/visgl/deck.gl/issues/8469
postPatch = ''
rm pyproject.toml
'';
nativeBuildInputs = [
jinja2
jupyter
setuptools
wheel
];
propagatedBuildInputs = [
jinja2
numpy
];
optional-dependencies = {
carto = [
# pydeck-carto
];
jupyter = [
ipykernel
ipywidgets
traitlets
];
};
pythonImportsCheck = [ "pydeck" ];
nativeCheckInputs = [
pytestCheckHook
pandas
] ++ optional-dependencies.jupyter;
# tries to start a jupyter server
disabledTests = [ "test_nbconvert" ];
meta = with lib; {
homepage = "https://github.com/visgl/deck.gl/tree/master/bindings/pydeck";
description = "Large-scale interactive data visualization in Python";
maintainers = with maintainers; [ creator54 ];
license = licenses.asl20;
};
}