nixpkgs/pkgs/development/python-modules/optuna/default.nix

94 lines
1.6 KiB
Nix
Raw Normal View History

2019-07-11 19:47:57 +01:00
{ lib
, buildPythonPackage
, fetchFromGitHub
2019-07-11 19:47:57 +01:00
, pytest
, mock
, bokeh
, plotly
, chainer
, xgboost
, mpi4py
, lightgbm
, Keras
, mxnet
, scikit-optimize
, tensorflow
, cma
2019-07-11 19:47:57 +01:00
, sqlalchemy
, numpy
, scipy
, six
, cliff
, colorlog
, pandas
, alembic
, tqdm
2019-07-11 19:47:57 +01:00
, typing
, pythonOlder
, isPy27
}:
buildPythonPackage rec {
pname = "optuna";
version = "2.6.0";
2019-07-11 19:47:57 +01:00
disabled = isPy27;
src = fetchFromGitHub {
owner = "optuna";
repo = pname;
rev = "v${version}";
sha256 = "11mskhb7i55i04cy0vkxi7kpaifbz8zc2m8x9s5y6yyyjinvly36";
2019-07-11 19:47:57 +01:00
};
checkInputs = [
pytest
mock
bokeh
plotly
chainer
xgboost
mpi4py
lightgbm
Keras
mxnet
scikit-optimize
tensorflow
cma
2019-07-11 19:47:57 +01:00
];
propagatedBuildInputs = [
sqlalchemy
numpy
scipy
six
cliff
colorlog
pandas
alembic
tqdm
] ++ lib.optionals (pythonOlder "3.5") [
typing
];
2019-07-11 19:47:57 +01:00
configurePhase = if !(pythonOlder "3.5") then ''
substituteInPlace setup.py \
--replace "'typing'," ""
2019-07-11 19:47:57 +01:00
'' else "";
checkPhase = ''
pytest --ignore tests/test_cli.py \
--ignore tests/integration_tests/test_chainermn.py \
--ignore tests/integration_tests/test_pytorch_lightning.py \
--ignore tests/integration_tests/test_pytorch_ignite.py \
--ignore tests/integration_tests/test_fastai.py
2019-07-11 19:47:57 +01:00
'';
meta = with lib; {
broken = true; # Dashboard broken, other build failures.
2019-07-11 19:47:57 +01:00
description = "A hyperparameter optimization framework";
homepage = "https://optuna.org/";
2019-07-11 19:47:57 +01:00
license = licenses.mit;
maintainers = [ maintainers.costrouc ];
};
}