-
Notifications
You must be signed in to change notification settings - Fork 3
/
pyproject.toml
103 lines (92 loc) · 3.41 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
[build-system]
requires = ["setuptools_scm>=7", "scikit-build-core[pyproject]>=0.5", "swig>=4", "pybind11"]
build-backend = "scikit_build_core.build"
[tool.scikit-build]
metadata.version.provider = "scikit_build_core.metadata.setuptools_scm"
sdist.include = ["cuvec/_dist_ver.py"]
sdist.exclude = ["docs", "tests", ".*"]
wheel.exclude = ["cuvec/src/**"]
minimum-version = "0.5"
cmake.minimum-version = "3.24"
cmake.source-dir = "cuvec"
[tool.setuptools_scm]
write_to = "cuvec/_dist_ver.py"
write_to_template = "__version__ = '{version}'\n"
[project.urls]
documentation = "https://amypad.github.io/CuVec"
repository = "https://github.com/AMYPAD/CuVec"
changelog = "https://github.com/AMYPAD/CuVec/releases"
[project]
name = "cuvec"
dynamic = ["version"]
authors = [{name = "Casper da Costa-Luis", email = "[email protected]"}]
description = "Unifying Python/C++/CUDA memory: Python buffered array -> C++11 `std::vector` -> CUDA managed memory"
readme = "README.rst"
requires-python = ">=3.7"
keywords = ["Python", "C", "C++", "buffer", "vector", "array", "CUDA", "CPython", "SWIG", "pybind11", "extensions", "API"]
license = {text = "MPL-2.0"}
classifiers = [
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Developers",
"Environment :: GPU",
"Environment :: GPU :: NVIDIA CUDA",
"Intended Audience :: Education",
"Intended Audience :: Science/Research",
"License :: OSI Approved :: Mozilla Public License 2.0 (MPL 2.0)",
"Operating System :: Microsoft :: Windows",
"Operating System :: POSIX :: Linux",
"Programming Language :: C",
"Programming Language :: C++",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.7",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3 :: Only",
"Topic :: Software Development :: Libraries",
"Topic :: Software Development :: Libraries :: Python Modules",
"Topic :: Utilities"]
dependencies = ['importlib_resources; python_version < "3.9"', "numpy"]
[project.optional-dependencies]
dev = ["pytest>=6", "pytest-cov", "pytest-timeout", "pytest-xdist", "packaging"]
[tool.mypy]
[[tool.mypy.overrides]]
module = "cuvec.cuvec_swig"
ignore_errors = true
[[tool.mypy.overrides]]
module = "cuvec.example_swig.*"
ignore_errors = true
[tool.flake8]
max_line_length = 99
extend_ignore = ["E261"]
exclude = [".git", "__pycache__", "build", "dist", ".eggs"]
[tool.yapf]
spaces_before_comment = [15, 20]
arithmetic_precedence_indication = true
allow_split_before_dict_value = false
coalesce_brackets = true
column_limit = 99
each_dict_entry_on_separate_line = false
space_between_ending_comma_and_closing_bracket = false
split_before_named_assigns = false
split_before_closing_bracket = false
blank_line_before_nested_class_or_def = false
[tool.isort]
profile = "black"
line_length = 99
known_first_party = ["cuvec", "tests"]
[tool.pytest.ini_options]
minversion = "6.0"
timeout = 2
log_level = "INFO"
python_files = ["tests/test_*.py"]
testpaths = ["tests"]
addopts = "-v --tb=short -rxs -n=3 --durations=0 --durations-min=1 --cov=cuvec --cov-report=term-missing --cov-report=xml"
filterwarnings = [
"error",
"ignore:.*one-time only warm-up.*:"
]
[tool.coverage.run]
omit = ["cuvec/cuvec_swig.py", "cuvec/example_swig.py"]