80 lines
1.4 KiB
Nix
80 lines
1.4 KiB
Nix
{ lib
|
||
, buildPythonPackage
|
||
, cmake
|
||
, fetchFromGitHub
|
||
, isPy3k
|
||
, pytestCheckHook
|
||
, nbconvert
|
||
, joblib
|
||
, jupyter
|
||
, jupyter-client
|
||
, numpy
|
||
, scipy
|
||
, pandas
|
||
, matplotlib
|
||
, ninja
|
||
, numba
|
||
, pybind11
|
||
, scikit-build
|
||
}:
|
||
|
||
buildPythonPackage rec {
|
||
pname = "phik";
|
||
version = "0.12.2";
|
||
disabled = !isPy3k;
|
||
format = "pyproject";
|
||
|
||
src = fetchFromGitHub {
|
||
owner = "KaveIO";
|
||
repo = "PhiK";
|
||
rev = "v${version}";
|
||
hash = "sha256-nr3804MLIBPFw/PlJ9B8xKFFGI5LDp8m2gLtJB7YcEE=";
|
||
};
|
||
|
||
checkInputs = [
|
||
pytestCheckHook
|
||
nbconvert
|
||
jupyter
|
||
jupyter-client
|
||
];
|
||
|
||
propagatedBuildInputs = [
|
||
joblib
|
||
numpy
|
||
scipy
|
||
pandas
|
||
matplotlib
|
||
numba
|
||
pybind11
|
||
];
|
||
|
||
# uses setuptools to drive build process
|
||
dontUseCmakeConfigure = true;
|
||
|
||
nativeBuildInputs = [
|
||
cmake
|
||
ninja
|
||
scikit-build
|
||
];
|
||
|
||
pythonImportsCheck = [ "phik" ];
|
||
|
||
postInstall = ''
|
||
rm -r $out/bin
|
||
'';
|
||
|
||
preCheck = ''
|
||
# import from $out
|
||
rm -r phik
|
||
'';
|
||
|
||
meta = with lib; {
|
||
description = "Phi_K correlation analyzer library";
|
||
longDescription = "Phi_K is a new and practical correlation coefficient based on several refinements to Pearson’s hypothesis test of independence of two variables.";
|
||
homepage = "https://phik.readthedocs.io/en/latest/";
|
||
changelog = "https://github.com/KaveIO/PhiK/blob/${src.rev}/CHANGES.rst";
|
||
maintainers = with maintainers; [ melsigl ];
|
||
license = licenses.asl20;
|
||
};
|
||
}
|