python3Packages.fastjet: re-init at 3.4.2.1 (#370858)

This commit is contained in:
Dmitry Kalinkin
2025-01-08 19:28:38 -05:00
committed by GitHub
4 changed files with 118 additions and 25 deletions
@@ -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.
@@ -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
@@ -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 ];
};
}
+1 -4
View File
@@ -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 { };