forked from pandas-dev/pandas
-
Notifications
You must be signed in to change notification settings - Fork 0
/
pyproject.toml
118 lines (112 loc) · 3.95 KB
/
pyproject.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
[build-system]
# Minimum requirements for the build system to execute.
# See https://github.com/scipy/scipy/pull/12940 for the AIX issue.
requires = [
"setuptools>=51.0.0",
"wheel",
"Cython>=0.29.21,<3", # Note: sync with setup.py
# Numpy requirements for different OS/architectures
# Copied from https://github.com/scipy/scipy/blob/master/pyproject.toml (which is also licensed under BSD)
"numpy==1.17.3; python_version=='3.7' and (platform_machine!='arm64' or platform_system!='Darwin') and platform_machine!='aarch64'",
"numpy==1.18.3; python_version=='3.8' and (platform_machine!='arm64' or platform_system!='Darwin') and platform_machine!='aarch64'",
"numpy==1.19.3; python_version>='3.9' and (platform_machine!='arm64' or platform_system!='Darwin') and platform_machine!='aarch64'",
# Aarch64(Python 3.9 requirements are the same as AMD64)
"numpy==1.19.2; python_version=='3.7' and platform_machine=='aarch64'",
"numpy==1.19.2; python_version=='3.8' and platform_machine=='aarch64'",
# Darwin Arm64
"numpy>=1.20.0; python_version=='3.8' and platform_machine=='arm64' and platform_system=='Darwin'",
"numpy>=1.20.0; python_version=='3.9' and platform_machine=='arm64' and platform_system=='Darwin'"
]
# uncomment to enable pep517 after versioneer problem is fixed.
# https://github.com/python-versioneer/python-versioneer/issues/193
# build-backend = "setuptools.build_meta"
[tool.black]
target-version = ['py38', 'py39']
exclude = '''
(
asv_bench/env
| \.egg
| \.git
| \.hg
| \.mypy_cache
| \.nox
| \.tox
| \.venv
| _build
| buck-out
| build
| dist
| setup.py
)
'''
[tool.pytest.ini_options]
# sync minversion with pyproject.toml & install.rst
minversion = "6.0"
addopts = "--strict-data-files --strict-markers --capture=no --durations=30 --junitxml=test-data.xml"
xfail_strict = true
testpaths = "pandas"
doctest_optionflags = [
"NORMALIZE_WHITESPACE",
"IGNORE_EXCEPTION_DETAIL",
"ELLIPSIS",
]
filterwarnings = [
"error:Sparse:FutureWarning",
"error:The SparseArray:FutureWarning",
]
junit_family = "xunit2"
markers = [
"single: mark a test as single cpu only",
"slow: mark a test as slow",
"network: mark a test as network",
"db: tests requiring a database (mysql or postgres)",
"high_memory: mark a test as a high-memory only",
"clipboard: mark a pd.read_clipboard test",
"arm_slow: mark a test as slow for arm64 architecture",
"arraymanager: mark a test to run with ArrayManager enabled",
]
[tool.mypy]
platform = "linux-64"
ignore_missing_imports = true
no_implicit_optional = true
check_untyped_defs = true
strict_equality = true
warn_redundant_casts = true
warn_unused_ignores = true
show_error_codes = true
[[tool.mypy.overrides]]
module = [
"pandas.tests.*",
"pandas._version",
"pandas.io.clipboard",
]
check_untyped_defs = false
[[tool.mypy.overrides]]
module = [
"pandas.tests.apply.test_series_apply",
"pandas.tests.arithmetic.conftest",
"pandas.tests.arrays.sparse.test_combine_concat",
"pandas.tests.dtypes.test_common",
"pandas.tests.frame.methods.test_to_records",
"pandas.tests.groupby.test_rank",
"pandas.tests.groupby.transform.test_transform",
"pandas.tests.indexes.interval.test_interval",
"pandas.tests.indexing.test_categorical",
"pandas.tests.io.excel.test_writers",
"pandas.tests.reductions.test_reductions",
"pandas.tests.test_expressions",
]
ignore_errors = true
# To be kept consistent with "Import Formatting" section in contributing.rst
[tool.isort]
known_pre_libs = "pandas._config"
known_pre_core = ["pandas._libs", "pandas._typing", "pandas.util._*", "pandas.compat", "pandas.errors"]
known_dtypes = "pandas.core.dtypes"
known_post_core = ["pandas.tseries", "pandas.io", "pandas.plotting"]
sections = ["FUTURE", "STDLIB", "THIRDPARTY" ,"PRE_LIBS" , "PRE_CORE", "DTYPES", "FIRSTPARTY", "POST_CORE", "LOCALFOLDER"]
profile = "black"
combine_as_imports = true
force_grid_wrap = 2
force_sort_within_sections = true
skip_glob = "env"
skip = "pandas/__init__.py"