1{ lib
2, stdenv
3, buildPythonPackage
4, fetchFromGitHub
5, jinja2
6, matplotlib
7, odfpy
8, openpyxl
9, pandas
10, poetry-core
11, pyarrow
12, pyreadstat
13, pytestCheckHook
14, pythonOlder
15, scipy
16, sqlalchemy
17, tables
18, tabulate
19, types-pytz
20, typing-extensions
21, xarray
22, xlsxwriter
23}:
24
25buildPythonPackage rec {
26 pname = "pandas-stubs";
27 version = "1.5.3.230321";
28 format = "pyproject";
29
30 disabled = pythonOlder "3.8";
31
32 src = fetchFromGitHub {
33 owner = "pandas-dev";
34 repo = pname;
35 rev = "refs/tags/v${version}";
36 hash = "sha256-RjU762VyDPy86Cvmr8hfPkqLtmntB3F6tf2OAgqmnK4=";
37 };
38
39 nativeBuildInputs = [
40 poetry-core
41 ];
42
43 propagatedBuildInputs = [
44 pandas
45 types-pytz
46 ];
47
48 nativeCheckInputs = [
49 jinja2
50 matplotlib
51 odfpy
52 openpyxl
53 pyarrow
54 pyreadstat
55 pytestCheckHook
56 scipy
57 sqlalchemy
58 tables
59 tabulate
60 typing-extensions
61 xarray
62 xlsxwriter
63 ];
64
65 disabledTests = [
66 # AttributeErrors, missing dependencies, error and warning checks
67 "test_aggregate_frame_combinations"
68 "test_aggregate_series_combinations"
69 "test_arrow_dtype"
70 "test_attribute_conflict_warning"
71 "test_categorical_conversion_warning"
72 "test_clipboard_iterator"
73 "test_clipboard"
74 "test_closed_file_error"
75 "test_compare_150_changes"
76 "test_crosstab_args"
77 "test_css_warning"
78 "test_data_error"
79 "test_database_error"
80 "test_dummies"
81 "test_from_dummies_args"
82 "test_incompatibility_warning"
83 "test_index_astype"
84 "test_indexing_error"
85 "test_invalid_column_name"
86 "test_isetframe"
87 "test_join"
88 "test_numexpr_clobbering_error"
89 "test_orc_buffer"
90 "test_orc_bytes"
91 "test_orc_columns"
92 "test_orc_path"
93 "test_orc"
94 "test_possible_data_loss_error"
95 "test_possible_precision_loss"
96 "test_pyperclip_exception"
97 "test_quantile_150_changes"
98 "test_resample_150_changes"
99 "test_reset_index_150_changes"
100 "test_reset_index"
101 "test_rolling_step_method"
102 "test_setting_with_copy_error"
103 "test_setting_with_copy_warning"
104 "test_show_version"
105 "test_specification_error"
106 "test_types_assert_series_equal"
107 "test_types_rank"
108 "test_undefined_variable_error"
109 "test_value_label_type_mismatch"
110 "test_read_sql_via_sqlalchemy_connection"
111 "test_read_sql_via_sqlalchemy_engine"
112 ] ++ lib.optionals stdenv.isDarwin [
113 "test_plotting" # Fatal Python error: Illegal instruction
114 ];
115
116 pythonImportsCheck = [
117 "pandas"
118 ];
119
120 meta = with lib; {
121 description = "Type annotations for Pandas";
122 homepage = "https://github.com/pandas-dev/pandas-stubs";
123 license = licenses.mit;
124 maintainers = with maintainers; [ malo ];
125 };
126}