nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 buildPythonPackage,
4 fetchPypi,
5 ipykernel,
6 ipywidgets,
7 jinja2,
8 jupyter,
9 numpy,
10 pandas,
11 pytestCheckHook,
12 setuptools,
13 traitlets,
14 wheel,
15}:
16
17buildPythonPackage rec {
18 pname = "pydeck";
19 version = "0.9.1";
20 pyproject = true;
21
22 src = fetchPypi {
23 inherit pname version;
24 hash = "sha256-90R1rmN5UdY/LuWDJnV/jU+c2fKkV89ClQcVAD4stgU=";
25 };
26
27 # upstream has an invalid pyproject.toml
28 # https://github.com/visgl/deck.gl/issues/8469
29 postPatch = ''
30 rm pyproject.toml
31 '';
32
33 nativeBuildInputs = [
34 jinja2
35 jupyter
36 setuptools
37 wheel
38 ];
39
40 propagatedBuildInputs = [
41 jinja2
42 numpy
43 ];
44
45 optional-dependencies = {
46 carto = [
47 # pydeck-carto
48 ];
49 jupyter = [
50 ipykernel
51 ipywidgets
52 traitlets
53 ];
54 };
55
56 pythonImportsCheck = [ "pydeck" ];
57
58 nativeCheckInputs = [
59 pytestCheckHook
60 pandas
61 ]
62 ++ optional-dependencies.jupyter;
63
64 # tries to start a jupyter server
65 disabledTests = [ "test_nbconvert" ];
66
67 meta = {
68 homepage = "https://github.com/visgl/deck.gl/tree/master/bindings/pydeck";
69 description = "Large-scale interactive data visualization in Python";
70 maintainers = with lib.maintainers; [ creator54 ];
71 license = lib.licenses.asl20;
72 };
73}