1{ lib
2, buildPythonPackage
3, fetchFromGitHub
4, pythonOlder
5, pytestCheckHook
6, dacite
7, htmlmin
8, imagehash
9, jinja2
10, matplotlib
11, multimethod
12, numba
13, numpy
14, pandas
15, phik
16, pyarrow
17, pydantic
18, pyyaml
19, requests
20, scipy
21, seaborn
22, statsmodels
23, tqdm
24, typeguard
25, visions
26, wordcloud
27}:
28
29buildPythonPackage rec {
30 pname = "ydata-profiling";
31 version = "4.8.3";
32 pyproject = true;
33
34 disabled = pythonOlder "3.7";
35
36 src = fetchFromGitHub {
37 owner = "ydataai";
38 repo = pname;
39 rev = "refs/tags/${version}";
40 hash = "sha256-tMwhoVnn65EvZK5NBvh/G36W8tH7I9qaL+NTK3IZVdI=";
41 };
42
43 preBuild = ''
44 echo ${version} > VERSION
45 '';
46
47 propagatedBuildInputs = [
48 dacite
49 htmlmin
50 imagehash
51 jinja2
52 matplotlib
53 multimethod
54 numba
55 numpy
56 pandas
57 phik
58 pydantic
59 pyyaml
60 requests
61 scipy
62 seaborn
63 statsmodels
64 tqdm
65 typeguard
66 visions
67 wordcloud
68 ];
69
70 nativeCheckInputs = [
71 pytestCheckHook
72 pyarrow
73 ];
74 disabledTestPaths = [
75 # needs Spark:
76 "tests/backends/spark_backend"
77 # try to download data:
78 "tests/issues"
79 "tests/unit/test_console.py"
80 "tests/unit/test_dataset_schema.py"
81 "tests/unit/test_modular.py"
82 ];
83 disabledTests = [
84 # try to download data:
85 "test_decorator"
86 "test_example"
87 "test_load"
88 "test_urls"
89 ];
90
91 pythonImportsCheck = [
92 "ydata_profiling"
93 ];
94
95 meta = with lib; {
96 description = "Create HTML profiling reports from Pandas DataFrames";
97 homepage = "https://ydata-profiling.ydata.ai";
98 changelog = "https://github.com/ydataai/ydata-profiling/releases/tag/${version}";
99 license = licenses.mit;
100 maintainers = with maintainers; [ bcdarwin ];
101 mainProgram = "ydata_profiling";
102 };
103}