1{ lib
2, buildPythonPackage
3, fetchFromGitHub
4, bokeh
5, emcee
6, matplotlib
7, netcdf4
8, numba
9, numpy
10, pandas
11, pytest
12, scipy
13, setuptools
14, tensorflow-probability
15, xarray
16#, h5py (used by disabled tests)
17#, pymc3 (broken)
18#, pyro-ppl (broken)
19#, pystan (not packaged)
20#, numpyro (not packaged)
21}:
22
23buildPythonPackage rec {
24 pname = "arviz";
25 version = "0.11.4";
26
27 src = fetchFromGitHub {
28 owner = "arviz-devs";
29 repo = "arviz";
30 rev = "v${version}";
31 sha256 = "0vindadyxhxhrhbalys6kzrda2d4qpqbqbsbwfprp8pxkldgk548";
32 };
33
34 propagatedBuildInputs = [
35 # needed to install
36 matplotlib
37 netcdf4
38 pandas
39 xarray
40 # needed to import
41 setuptools
42 # not needed to import, but used by many functions
43 # and is listed as a dependency in the documentation
44 numpy
45 scipy
46 ];
47
48 checkInputs = [
49 bokeh
50 emcee
51 numba
52 pytest
53 tensorflow-probability
54 #h5py (used by disabled tests)
55 #pymc3 (broken)
56 #pyro-ppl (broken)
57 #pystan (not packaged)
58 #numpyro (not packaged)
59 ];
60
61 # check requires pymc3 and pyro-ppl, which are currently broken, and pystan
62 # and numpyro, which are not yet packaged, some checks also need to make
63 # directories and do not have permission to do so. So we can only check part
64 # of the package
65 # Additionally, there are some failures with the plots test, which revolve
66 # around attempting to output .mp4 files through an interface that only wants
67 # to output .html files.
68 # The following test have been disabled as a result: data_cmdstanpy,
69 # data_numpyro, data_pyro, data_pystan, and plots.
70 checkPhase = ''
71 cd arviz/tests/
72 export HOME=$TMPDIR
73 pytest \
74 base_tests/test_data.py \
75 base_tests/test_diagnostics.py \
76 base_tests/test_plot_utils.py \
77 base_tests/test_rcparams.py \
78 base_tests/test_stats.py \
79 base_tests/test_stats_utils.py \
80 base_tests/test_utils.py \
81 external_tests/test_data_cmdstan.py \
82 external_tests/test_data_emcee.py \
83 external_tests/test_data_tfp.py
84 '';
85
86 meta = with lib; {
87 description = "ArviZ is a Python package for exploratory analysis of Bayesian models";
88 homepage = "https://arviz-devs.github.io/arviz/";
89 license = licenses.asl20;
90 maintainers = [ maintainers.omnipotententity ];
91 };
92}