Unverified Commit 77087988 authored by OTABI Tomoya's avatar OTABI Tomoya Committed by GitHub
Browse files

Merge pull request #325184 from natsukium/pot/fix

python312Packages.pot: 0.9.3 -> 0.9.4 and fix
parents 25aebb4c 98b89f97
Loading
Loading
Loading
Loading
+51 −27
Original line number Diff line number Diff line
@@ -3,25 +3,25 @@
  autograd,
  buildPythonPackage,
  fetchFromGitHub,
  cupy,
  cvxopt,
  cython,
  oldest-supported-numpy,
  jax,
  jaxlib,
  matplotlib,
  numpy,
  tensorflow,
  pymanopt,
  pytestCheckHook,
  pythonOlder,
  scikit-learn,
  scipy,
  enableDimensionalityReduction ? false,
  enableGPU ? false,
  setuptools,
  tensorflow,
  torch,
}:

buildPythonPackage rec {
  pname = "pot";
  version = "0.9.3";
  version = "0.9.4";
  pyproject = true;

  disabled = pythonOlder "3.6";
@@ -30,33 +30,56 @@ buildPythonPackage rec {
    owner = "PythonOT";
    repo = "POT";
    rev = "refs/tags/${version}";
    hash = "sha256-fdqDM0V6zTFe1lcqi53ZZNHAfmuR2I7fdX4SN9qeNn8=";
    hash = "sha256-Yx9hjniXebn7ZZeqou0JEsn2Yf9hyJSu/acDlM4kCCI=";
  };

  nativeBuildInputs = [
  build-system = [
    setuptools
    cython
    oldest-supported-numpy
    numpy
  ];

  propagatedBuildInputs =
    [
  dependencies = [
    numpy
    scipy
    ]
    ++ lib.optionals enableGPU [ cupy ]
    ++ lib.optionals enableDimensionalityReduction [
      autograd
      pymanopt
  ];

  nativeCheckInputs = [
    cvxopt
    matplotlib
    numpy
    tensorflow
  optional-dependencies = {
    backend-numpy = [ ];
    backend-jax = [
      jax
      jaxlib
    ];
    backend-cupy = [ ];
    backend-tf = [ tensorflow ];
    backend-torch = [ torch ];
    cvxopt = [ cvxopt ];
    dr = [
      scikit-learn
    pytestCheckHook
      pymanopt
      autograd
    ];
    gnn = [
      torch
      # torch-geometric
    ];
    plot = [ matplotlib ];
    all =
      with optional-dependencies;
      (
        backend-numpy
        ++ backend-jax
        ++ backend-cupy
        ++ backend-tf
        ++ backend-torch
        ++ optional-dependencies.cvxopt
        ++ dr
        ++ gnn
        ++ plot
      );
  };

  nativeCheckInputs = [ pytestCheckHook ];

  postPatch = ''
    substituteInPlace setup.cfg \
@@ -64,6 +87,9 @@ buildPythonPackage rec {
      --replace " --durations=20" "" \
      --replace " --junit-xml=junit-results.xml" ""

    substituteInPlace pyproject.toml \
      --replace-fail "numpy>=2.0.0" "numpy"

    # we don't need setup.py to find the macos sdk for us
    sed -i '/sdk_path/d' setup.py
  '';
@@ -106,8 +132,6 @@ buildPythonPackage rec {
    "test_emd1d_device_tf"
  ];

  disabledTestPaths = lib.optionals (!enableDimensionalityReduction) [ "test/test_dr.py" ];

  pythonImportsCheck = [
    "ot"
    "ot.lp"