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