summary refs log tree commit diff
diff options
context:
space:
mode:
authorSamuel Ainsworth <skainsworth@gmail.com>2022-08-05 21:53:40 -0700
committerGitHub <noreply@github.com>2022-08-05 21:53:40 -0700
commit0c60eb310e22e4b637a4de750ca51bf4118e75c8 (patch)
tree8d3fd6c8e3c3090008f3bf6ea0bee6bbb1f5564f
parent3524da2f0ab911c9c65ac6fb34e87b9698a4e5fb (diff)
parent07ed3ff369faf94568c31bf41b05f87d82df9ead (diff)
downloadnixpkgs-0c60eb310e22e4b637a4de750ca51bf4118e75c8.tar
nixpkgs-0c60eb310e22e4b637a4de750ca51bf4118e75c8.tar.gz
nixpkgs-0c60eb310e22e4b637a4de750ca51bf4118e75c8.tar.bz2
nixpkgs-0c60eb310e22e4b637a4de750ca51bf4118e75c8.tar.lz
nixpkgs-0c60eb310e22e4b637a4de750ca51bf4118e75c8.tar.xz
nixpkgs-0c60eb310e22e4b637a4de750ca51bf4118e75c8.tar.zst
nixpkgs-0c60eb310e22e4b637a4de750ca51bf4118e75c8.zip
Merge pull request #183052 from mcwitt/squashed/init-etils
python310Packages.etils: init at 0.6.0
-rw-r--r--pkgs/development/python-modules/etils/default.nix89
-rw-r--r--pkgs/top-level/python-packages.nix2
2 files changed, 91 insertions, 0 deletions
diff --git a/pkgs/development/python-modules/etils/default.nix b/pkgs/development/python-modules/etils/default.nix
new file mode 100644
index 00000000000..25f95648068
--- /dev/null
+++ b/pkgs/development/python-modules/etils/default.nix
@@ -0,0 +1,89 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pythonOlder
+, flit-core
+
+  # tests
+, chex
+, jaxlib
+, pytest-subtests
+, pytest-xdist
+, pytestCheckHook
+, yapf
+
+  # optional
+, jupyter
+, mediapy
+, numpy
+, importlib-resources
+, typing-extensions
+, zipp
+, absl-py
+, tqdm
+, dm-tree
+, jax
+, tensorflow
+}:
+
+buildPythonPackage rec {
+  pname = "etils";
+  version = "0.6.0";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchPypi {
+    inherit pname version;
+    hash = "sha256-ZnckEFGDXQ2xHElHvK2Tj1e1HqECKQYk+JLx5OUbcOU=";
+  };
+
+  nativeBuildInputs = [
+    flit-core
+  ];
+
+  passthru.optional-dependencies = rec {
+    array-types = enp;
+    ecolab = [ jupyter numpy mediapy ] ++ enp ++ epy;
+    edc = epy;
+    enp = [ numpy ] ++ epy;
+    epath = [ importlib-resources typing-extensions zipp ] ++ epy;
+    epy = [ typing-extensions ];
+    etqdm = [ absl-py tqdm ] ++ epy;
+    etree = array-types ++ epy ++ enp ++ etqdm;
+    etree-dm = [ dm-tree ] ++ etree;
+    etree-jax = [ jax ] ++ etree;
+    etree-tf = [ tensorflow etree ] ++ etree;
+    all = array-types ++ ecolab ++ edc ++ enp ++ epath ++ epy ++ etqdm
+      ++ etree ++ etree-dm ++ etree-jax ++ etree-tf;
+  };
+
+  doCheck = false; # disable tests until https://github.com/NixOS/nixpkgs/issues/185273 is resolved
+
+  pythonImportsCheck = [
+    "etils"
+  ];
+
+  checkInputs = [
+    chex
+    jaxlib
+    pytest-subtests
+    pytest-xdist
+    pytestCheckHook
+    yapf
+  ]
+  ++ passthru.optional-dependencies.all;
+
+  disabledTests = [
+    "test_repr" # known to fail on Python 3.10, see https://github.com/google/etils/issues/143
+    "test_public_access" # requires network access
+    "test_resource_path" # known to fail on Python 3.10, see https://github.com/google/etils/issues/143
+  ];
+
+  meta = with lib; {
+    description = "Collection of eclectic utils for python";
+    homepage = "https://github.com/google/etils";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ mcwitt ];
+  };
+}
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index 60485dcd9ea..8a001705c8a 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -2900,6 +2900,8 @@ in {
 
   eth-utils = callPackage ../development/python-modules/eth-utils { };
 
+  etils = callPackage ../development/python-modules/etils { };
+
   etuples = callPackage ../development/python-modules/etuples { };
 
   et_xmlfile = callPackage ../development/python-modules/et_xmlfile { };