1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5
6 # build-system
7 setuptools,
8 versioneer,
9
10 # dependencies
11 arviz,
12 cachetools,
13 cloudpickle,
14 numpy,
15 pandas,
16 pytensor,
17 rich,
18 scipy,
19 threadpoolctl,
20 typing-extensions,
21}:
22
23buildPythonPackage rec {
24 pname = "pymc";
25 version = "5.23.0";
26 pyproject = true;
27
28 src = fetchFromGitHub {
29 owner = "pymc-devs";
30 repo = "pymc";
31 tag = "v${version}";
32 hash = "sha256-Hlj5kOSMz8uoqeBkLiq9kT6CZrb2XJW9mas45G2EZB4=";
33 };
34
35 build-system = [
36 setuptools
37 versioneer
38 ];
39
40 pythonRelaxDeps = [
41 "pytensor"
42 ];
43
44 dependencies = [
45 arviz
46 cachetools
47 cloudpickle
48 numpy
49 pandas
50 pytensor
51 rich
52 scipy
53 threadpoolctl
54 typing-extensions
55 ];
56
57 # The test suite is computationally intensive and test failures are not
58 # indicative for package usability hence tests are disabled by default.
59 doCheck = false;
60
61 pythonImportsCheck = [ "pymc" ];
62
63 meta = {
64 description = "Bayesian estimation, particularly using Markov chain Monte Carlo (MCMC)";
65 homepage = "https://github.com/pymc-devs/pymc";
66 changelog = "https://github.com/pymc-devs/pymc/releases/tag/v${version}";
67 license = lib.licenses.asl20;
68 maintainers = with lib.maintainers; [
69 nidabdella
70 ferrine
71 ];
72 };
73}