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