linux_xanmod: 5.11.14 -> 5.11.15
[NixPkgs.git] / pkgs / development / python-modules / optuna / default.nix
blobaa61b18291d6cf8edb8eee9de7bbf79042be3cea
1 { lib
2 , buildPythonPackage
3 , fetchFromGitHub
4 , pytest
5 , mock
6 , bokeh
7 , plotly
8 , chainer
9 , xgboost
10 , mpi4py
11 , lightgbm
12 , Keras
13 , mxnet
14 , scikit-optimize
15 , tensorflow
16 , cma
17 , sqlalchemy
18 , numpy
19 , scipy
20 , six
21 , cliff
22 , colorlog
23 , pandas
24 , alembic
25 , tqdm
26 , typing
27 , pythonOlder
28 , isPy27
31 buildPythonPackage rec {
32   pname = "optuna";
33   version = "0.19.0";
34   disabled = isPy27;
36   src = fetchFromGitHub {
37     owner = "optuna";
38     repo = pname;
39     rev = "v${version}";
40     sha256 = "179x2lsckpmkrkkdnvvbzky86g1ba882z677qwbayhsc835wbp0y";
41   };
43   checkInputs = [
44     pytest
45     mock
46     bokeh
47     plotly
48     chainer
49     xgboost
50     mpi4py
51     lightgbm
52     Keras
53     mxnet
54     scikit-optimize
55     tensorflow
56     cma
57   ];
59   propagatedBuildInputs = [
60     sqlalchemy
61     numpy
62     scipy
63     six
64     cliff
65     colorlog
66     pandas
67     alembic
68     tqdm
69   ] ++ lib.optionals (pythonOlder "3.5") [
70     typing
71   ];
73   configurePhase = if !(pythonOlder "3.5") then ''
74     substituteInPlace setup.py \
75       --replace "'typing'," ""
76   '' else "";
78   checkPhase = ''
79     pytest --ignore tests/test_cli.py \
80            --ignore tests/integration_tests/test_chainermn.py \
81            --ignore tests/integration_tests/test_pytorch_lightning.py \
82            --ignore tests/integration_tests/test_pytorch_ignite.py \
83            --ignore tests/integration_tests/test_fastai.py
84   '';
86   meta = with lib; {
87     broken = true;  # Dashboard broken, other build failures.
88     description = "A hyperparameter optimization framework";
89     homepage = "https://optuna.org/";
90     license = licenses.mit;
91     maintainers = [ maintainers.costrouc ];
92   };