diff --git a/pkgs/development/python-modules/keras/default.nix b/pkgs/development/python-modules/keras/default.nix index 55deee586c8d..156f8f5c2cd5 100644 --- a/pkgs/development/python-modules/keras/default.nix +++ b/pkgs/development/python-modules/keras/default.nix @@ -1,6 +1,6 @@ { lib, buildPythonPackage, fetchPypi , pytest, pytest-cov, pytest-xdist -, six, numpy, scipy, pyyaml, h5py +, six, numpy, scipy, pyyaml, h5py, optree , keras-applications, keras-preprocessing }: diff --git a/pkgs/development/python-modules/optree/default.nix b/pkgs/development/python-modules/optree/default.nix new file mode 100644 index 000000000000..d592c6d51f39 --- /dev/null +++ b/pkgs/development/python-modules/optree/default.nix @@ -0,0 +1,60 @@ +{ stdenv +, buildPythonPackage +, fetchFromGitHub +, pythonOlder +, lib +, cmake +, setuptools +, typing-extensions +, pybind11 +, pytestCheckHook +}: + +buildPythonPackage rec { + pname = "optree"; + version = "0.11.0"; + pyproject = true; + + disabled = pythonOlder "3.7"; + + src = fetchFromGitHub { + owner = "metaopt"; + repo = pname; + rev = "v${version}"; + hash = "sha256-VnnnEoXkYJO+S7baH+JZvsW18Tk3TiY9+Cd230OlZWo="; + }; + + dontUseCmakeConfigure = true; + + propagatedBuildInputs = [ + typing-extensions + ]; + nativeBuildInputs = [ + setuptools + pybind11 + cmake + ]; + + nativeCheckInputs = [ + pytestCheckHook + ]; + # prevent import failures from pytest + preCheck = '' + rm -r optree + ''; + disabledTests = [ + # Fails because the 'test_treespec' module can't be found + "test_treespec_pickle_missing_registration" + ]; + pythonImportsCheck = [ + "optree" + ]; + + meta = with lib; { + homepage = "https://github.com/metaopt/optree"; + changelog = "https://github.com/metaopt/optree/releases/tag/v${version}"; + description = "Optimized PyTree Utilities"; + maintainers = with maintainers; [ pandapip1 ]; + license = licenses.asl20; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index c47843cad641..606734fba3b2 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -9283,6 +9283,8 @@ self: super: with self; { optimum = callPackage ../development/python-modules/optimum { }; + optree = callPackage ../development/python-modules/optree { }; + optuna = callPackage ../development/python-modules/optuna { }; opuslib = callPackage ../development/python-modules/opuslib { };