nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 cython,
6 joblib,
7 matplotlib,
8 meson-python,
9 numpy,
10 pandas,
11 scikit-learn,
12 scipy,
13 statsmodels,
14 urllib3,
15 python,
16 pytestCheckHook,
17}:
18
19buildPythonPackage rec {
20 pname = "pmdarima";
21 version = "2.1.1";
22 pyproject = true;
23
24 src = fetchFromGitHub {
25 owner = "alkaline-ml";
26 repo = "pmdarima";
27 tag = "v${version}";
28 hash = "sha256-NSBmii+2AQidZo8sPARxtLELk5Ec6cHaZddswifFqwQ=";
29 };
30
31 postPatch = ''
32 patchShebangs build_tools/get_tag.py
33 '';
34
35 env = {
36 GITHUB_REF = "refs/tags/v${version}";
37 };
38
39 build-system = [
40 cython
41 meson-python
42 ];
43
44 pythonRemoveDeps = [
45 # https://github.com/alkaline-ml/pmdarima/pull/616
46 "setuptools"
47 ];
48
49 dependencies = [
50 joblib
51 numpy
52 pandas
53 scikit-learn
54 scipy
55 statsmodels
56 urllib3
57 ];
58
59 # Make sure we're running the tests for the actually installed
60 # package, so that cython's compiled files are available.
61 preCheck = ''
62 cd $out/${python.sitePackages}
63 '';
64
65 nativeCheckInputs = [
66 matplotlib
67 pytestCheckHook
68 ];
69
70 disabledTests = [
71 # touches internet
72 "test_load_from_web"
73 ];
74
75 pythonImportsCheck = [ "pmdarima" ];
76
77 meta = {
78 description = "Statistical library designed to fill the void in Python's time series analysis capabilities, including the equivalent of R's auto.arima function";
79 homepage = "https://github.com/alkaline-ml/pmdarima";
80 changelog = "https://github.com/alkaline-ml/pmdarima/releases/tag/v${version}";
81 license = lib.licenses.mit;
82 maintainers = [ ];
83 };
84}