1{
2 lib,
3 stdenv,
4 buildPythonPackage,
5 fetchFromGitHub,
6
7 # build-system
8 packaging,
9 setuptools,
10
11 # dependencies
12 h5netcdf,
13 matplotlib,
14 numpy,
15 pandas,
16 scipy,
17 typing-extensions,
18 xarray,
19 xarray-einstats,
20
21 # tests
22 bokeh,
23 cloudpickle,
24 emcee,
25 ffmpeg,
26 h5py,
27 jax,
28 jaxlib,
29 numba,
30 numpyro,
31 #, pymc3 (circular dependency)
32 pyro-ppl,
33 #, pystan (not packaged)
34 pytestCheckHook,
35 torchvision,
36 writableTmpDirAsHomeHook,
37 zarr,
38}:
39
40buildPythonPackage rec {
41 pname = "arviz";
42 version = "0.21.0";
43 pyproject = true;
44
45 src = fetchFromGitHub {
46 owner = "arviz-devs";
47 repo = "arviz";
48 tag = "v${version}";
49 hash = "sha256-rrOvdyZE0wo3iiiQ2hHklAtLU38mXs3hLsb+Fwy9eAk=";
50 };
51
52 build-system = [
53 packaging
54 setuptools
55 ];
56
57 dependencies = [
58 h5netcdf
59 matplotlib
60 numpy
61 pandas
62 scipy
63 typing-extensions
64 xarray
65 xarray-einstats
66 ];
67
68 nativeCheckInputs = [
69 bokeh
70 cloudpickle
71 emcee
72 ffmpeg
73 h5py
74 jax
75 jaxlib
76 numba
77 numpyro
78 # pymc3 (circular dependency)
79 pyro-ppl
80 # pystan (not packaged)
81 pytestCheckHook
82 torchvision
83 writableTmpDirAsHomeHook
84 zarr
85 ];
86
87 pytestFlagsArray = [
88 "arviz/tests/base_tests/"
89
90 # AttributeError: module 'zarr.storage' has no attribute 'DirectoryStore'
91 # https://github.com/arviz-devs/arviz/issues/2357
92 "--deselect=arviz/tests/base_tests/test_data_zarr.py::TestDataZarr::test_io_function"
93 "--deselect=arviz/tests/base_tests/test_data_zarr.py::TestDataZarr::test_io_method"
94 ];
95
96 disabledTests = [
97 # Tests require network access
98 "test_plot_ppc_transposed"
99 "test_plot_separation"
100 "test_plot_trace_legend"
101 "test_cov"
102
103 # countourpy is not available at the moment
104 "test_plot_kde"
105 "test_plot_kde_2d"
106 "test_plot_pair"
107 ];
108
109 # Tests segfault on darwin
110 doCheck = !stdenv.hostPlatform.isDarwin;
111
112 pythonImportsCheck = [ "arviz" ];
113
114 meta = {
115 description = "Library for exploratory analysis of Bayesian models";
116 homepage = "https://arviz-devs.github.io/arviz/";
117 changelog = "https://github.com/arviz-devs/arviz/blob/v${version}/CHANGELOG.md";
118 license = lib.licenses.asl20;
119 maintainers = with lib.maintainers; [ omnipotententity ];
120 };
121}