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 # checks
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 zarr,
37}:
38
39buildPythonPackage rec {
40 pname = "arviz";
41 version = "0.20.0";
42 pyproject = true;
43
44 src = fetchFromGitHub {
45 owner = "arviz-devs";
46 repo = "arviz";
47 rev = "refs/tags/v${version}";
48 hash = "sha256-6toqOGwk8YbatfiDCTEG4r0z3zZAA8zcNVZJqqssYrY=";
49 };
50
51 build-system = [
52 packaging
53 setuptools
54 ];
55
56 dependencies = [
57 h5netcdf
58 matplotlib
59 numpy
60 pandas
61 scipy
62 typing-extensions
63 xarray
64 xarray-einstats
65 ];
66
67 nativeCheckInputs = [
68 bokeh
69 cloudpickle
70 emcee
71 ffmpeg
72 h5py
73 jax
74 jaxlib
75 numba
76 numpyro
77 # pymc3 (circular dependency)
78 pyro-ppl
79 # pystan (not packaged)
80 pytestCheckHook
81 torchvision
82 zarr
83 ];
84
85 preCheck = ''
86 export HOME=$(mktemp -d);
87 '';
88
89 pytestFlagsArray = [ "arviz/tests/base_tests/" ];
90
91 disabledTests = [
92 # Tests require network access
93 "test_plot_ppc_transposed"
94 "test_plot_separation"
95 "test_plot_trace_legend"
96 "test_cov"
97 # countourpy is not available at the moment
98 "test_plot_kde"
99 "test_plot_kde_2d"
100 "test_plot_pair"
101 ];
102
103 # Tests segfault on darwin
104 doCheck = !stdenv.hostPlatform.isDarwin;
105
106 pythonImportsCheck = [ "arviz" ];
107
108 meta = {
109 description = "Library for exploratory analysis of Bayesian models";
110 homepage = "https://arviz-devs.github.io/arviz/";
111 changelog = "https://github.com/arviz-devs/arviz/blob/v${version}/CHANGELOG.md";
112 license = lib.licenses.asl20;
113 maintainers = with lib.maintainers; [ omnipotententity ];
114 };
115}