1{ lib
2, buildPythonPackage
3, fetchPypi
4, ipykernel
5, ipywidgets
6, jinja2
7, jupyter
8, numpy
9, pandas
10, pytestCheckHook
11, pythonOlder
12, setuptools
13, traitlets
14, wheel
15}:
16
17buildPythonPackage rec {
18 pname = "pydeck";
19 version = "0.8.0";
20 format = "pyproject";
21
22 disabled = pythonOlder "3.7";
23
24 src = fetchPypi {
25 inherit pname version;
26 hash = "sha256-B+3egz98/O9nSRJDURlap9zSRmPUkJ/XiY29C2+8Aew=";
27 };
28
29 nativeBuildInputs = [
30 jinja2
31 jupyter
32 setuptools
33 wheel
34 ];
35
36 propagatedBuildInputs = [
37 jinja2
38 numpy
39 ];
40
41 passthru.optional-dependencies = {
42 carto = [
43 # pydeck-carto
44 ];
45 jupyter = [
46 ipykernel
47 ipywidgets
48 traitlets
49 ];
50 };
51
52 pythonImportsCheck = [ "pydeck" ];
53
54 nativeCheckInputs = [
55 pytestCheckHook
56 pandas
57 ] ++ passthru.optional-dependencies.jupyter;
58
59 # tries to start a jupyter server
60 disabledTests = [ "test_nbconvert" ];
61
62 meta = with lib; {
63 homepage = "https://github.com/visgl/deck.gl/tree/master/bindings/pydeck";
64 description = "Large-scale interactive data visualization in Python";
65 maintainers = with maintainers; [ creator54 ];
66 license = licenses.asl20;
67 };
68}