{ lib, buildPythonPackage, pythonOlder, fetchFromGitHub, # build-system setuptools, # dependencies arviz, cachetools, cloudpickle, numpy, pandas, pytensor, rich, scipy, threadpoolctl, typing-extensions, }: buildPythonPackage rec { pname = "pymc"; version = "5.16.2"; pyproject = true; disabled = pythonOlder "3.10"; src = fetchFromGitHub { owner = "pymc-devs"; repo = "pymc"; rev = "refs/tags/v${version}"; hash = "sha256-vOU5P45AJPULGWj9lscZKP3JqfSpkPDnq1Fyq9lIawc="; }; postPatch = '' substituteInPlace setup.py \ --replace-fail ', "pytest-cov"' "" ''; build-system = [ setuptools ]; dependencies = [ arviz cachetools cloudpickle numpy pandas pytensor rich scipy threadpoolctl typing-extensions ]; # The test suite is computationally intensive and test failures are not # indicative for package usability hence tests are disabled by default. doCheck = false; pythonImportsCheck = [ "pymc" ]; meta = { description = "Bayesian estimation, particularly using Markov chain Monte Carlo (MCMC)"; homepage = "https://github.com/pymc-devs/pymc"; changelog = "https://github.com/pymc-devs/pymc/releases/tag/v${version}"; license = lib.licenses.asl20; maintainers = with lib.maintainers; [ nidabdella ferrine ]; }; }