nixpkgs/pkgs/development/python-modules/ydata-profiling/default.nix

113 lines
1.8 KiB
Nix

{
lib,
buildPythonPackage,
fetchFromGitHub,
pythonOlder,
pytestCheckHook,
dacite,
htmlmin,
imagehash,
jinja2,
matplotlib,
multimethod,
numba,
numpy,
pandas,
phik,
pyarrow,
pydantic,
pyyaml,
requests,
scipy,
setuptools,
seaborn,
statsmodels,
tqdm,
typeguard,
visions,
wordcloud,
}:
buildPythonPackage rec {
pname = "ydata-profiling";
version = "4.12.0";
pyproject = true;
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "ydataai";
repo = "ydata-profiling";
rev = "refs/tags/v${version}";
hash = "sha256-G1qW6HcJi176nfxOBGBK2tLyY/Nnz9STYpZWluWvhP0=";
};
preBuild = ''
echo ${version} > VERSION
'';
build-system = [ setuptools ];
pythonRelaxDeps = [
"imagehash"
"scipy"
];
dependencies = [
dacite
htmlmin
imagehash
jinja2
matplotlib
multimethod
numba
numpy
pandas
phik
pydantic
pyyaml
requests
scipy
seaborn
statsmodels
tqdm
typeguard
visions
wordcloud
];
nativeCheckInputs = [
pyarrow
pytestCheckHook
];
disabledTestPaths = [
# needs Spark:
"tests/backends/spark_backend"
# try to download data:
"tests/issues"
"tests/unit/test_console.py"
"tests/unit/test_dataset_schema.py"
"tests/unit/test_modular.py"
];
disabledTests = [
# try to download data:
"test_decorator"
"test_example"
"test_load"
"test_urls"
];
pythonImportsCheck = [ "ydata_profiling" ];
meta = with lib; {
description = "Create HTML profiling reports from Pandas DataFrames";
homepage = "https://ydata-profiling.ydata.ai";
changelog = "https://github.com/ydataai/ydata-profiling/releases/tag/${version}";
license = licenses.mit;
maintainers = with maintainers; [ bcdarwin ];
mainProgram = "ydata_profiling";
};
}