diff --git a/pkgs/development/python-modules/awkward/default.nix b/pkgs/development/python-modules/awkward/default.nix index 867941a53aff..849b4b43b780 100644 --- a/pkgs/development/python-modules/awkward/default.nix +++ b/pkgs/development/python-modules/awkward/default.nix @@ -24,8 +24,6 @@ pyarrow, pytest-xdist, pytestCheckHook, - jax, - jaxlib, stdenv, }: @@ -61,28 +59,23 @@ buildPythonPackage rec { pythonImportsCheck = [ "awkward" ]; - nativeCheckInputs = - [ - fsspec - numba - setuptools - numexpr - pandas - pyarrow - pytest-xdist - pytestCheckHook - ] - ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [ - # no support for darwin - jax - jaxlib - ]; + nativeCheckInputs = [ + fsspec + numba + setuptools + numexpr + pandas + pyarrow + pytest-xdist + pytestCheckHook + ]; - # The following tests have been disabled because they need to be run on a GPU platform. disabledTestPaths = [ + # Need to be run on a GPU platform. "tests-cuda" - # Disable tests dependending on jax on darwin - ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ "tests/test_2603_custom_behaviors_with_jax.py" ]; + # JAX is broken + "tests/test_2603_custom_behaviors_with_jax.py" + ]; disabledTests = [ # AssertionError: Regex pattern did not match. diff --git a/pkgs/development/python-modules/correctionlib/default.nix b/pkgs/development/python-modules/correctionlib/default.nix index 6c39407ae3c2..0d40e8e3ab51 100644 --- a/pkgs/development/python-modules/correctionlib/default.nix +++ b/pkgs/development/python-modules/correctionlib/default.nix @@ -2,6 +2,7 @@ lib, buildPythonPackage, fetchFromGitHub, + fetchpatch, # build-system cmake, @@ -37,6 +38,16 @@ buildPythonPackage rec { fetchSubmodules = true; }; + patches = [ + # fix https://github.com/Tencent/rapidjson/issues/2277 + (fetchpatch { + url = "https://github.com/Tencent/rapidjson/pull/719.diff"; + hash = "sha256-xarSfi9o73KoJo0ijT0G8fyTSYVuY0+9rLEtfUwas0Q="; + extraPrefix = "rapidjson/"; + stripLen = 1; + }) + ]; + build-system = [ cmake scikit-build diff --git a/pkgs/development/python-modules/fastjet/default.nix b/pkgs/development/python-modules/fastjet/default.nix new file mode 100644 index 000000000000..d3e62027ae77 --- /dev/null +++ b/pkgs/development/python-modules/fastjet/default.nix @@ -0,0 +1,92 @@ +{ + lib, + stdenv, + fetchPypi, + fetchurl, + buildPythonPackage, + pytestCheckHook, + pkgs, + awkward, + numpy, + pybind11, + python, + setuptools, + setuptools-scm, + vector, +}: + +let + fastjet = + (pkgs.fastjet.override { + inherit python; + withPython = true; + }).overrideAttrs + (prev: { + postInstall = + (prev.postInstall or "") + + '' + mv "$out/${python.sitePackages}/"{fastjet.py,_fastjet_swig.py} + ''; + }); + fastjet-contrib = pkgs.fastjet-contrib.override { + inherit fastjet; + }; +in + +buildPythonPackage rec { + pname = "fastjet"; + version = "3.4.2.1"; + pyproject = true; + + src = fetchPypi { + pname = "fastjet"; + inherit version; + hash = "sha256-YlYJWCdwEBiG+koh1X2app1HinvktryisxP/C024g1k="; + }; + + # unvendor fastjet/fastjet-contrib + postPatch = '' + substituteInPlace setup.py \ + --replace-fail 'cmdclass={"build_ext": FastJetBuild, "install": FastJetInstall},' "" \ + --replace-fail 'str(OUTPUT / "include")' "" \ + --replace-fail 'str(OUTPUT / "lib")' "" + for file in src/fastjet/*.py; do + substituteInPlace "$file" \ + --replace-warn "fastjet._swig" "_fastjet_swig" + done + sed -i src/fastjet/_pyjet.py -e '1iimport _fastjet_swig' + ''; + + strictDeps = true; + + build-system = [ + setuptools + setuptools-scm + ]; + + dependencies = [ + fastjet + ]; + + buildInputs = [ + pybind11 + fastjet-contrib + ]; + + nativeCheckInputs = [ + pytestCheckHook + awkward + numpy + vector + ]; + + env.SETUPTOOLS_SCM_PRETEND_VERSION = version; + + meta = { + description = "Jet-finding in the Scikit-HEP ecosystem"; + homepage = "https://github.com/scikit-hep/fastjet"; + changelog = "https://github.com/scikit-hep/fastjet/releases/tag/v${version}"; + license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ veprbl ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 326234f325be..e8e028f38ac1 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4494,10 +4494,7 @@ self: super: with self; { fastimport = callPackage ../development/python-modules/fastimport { }; - fastjet = toPythonModule (pkgs.fastjet.override { - withPython = true; - inherit (self) python; - }); + fastjet = callPackage ../development/python-modules/fastjet { }; fastjsonschema = callPackage ../development/python-modules/fastjsonschema { };