forked from CEXT-Dan/PyRx
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpyproject.toml
More file actions
127 lines (115 loc) · 2.81 KB
/
pyproject.toml
File metadata and controls
127 lines (115 loc) · 2.81 KB
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
119
120
121
122
123
124
125
126
127
[build-system]
requires = ["setuptools >= 61.0"]
build-backend = "setuptools.build_meta"
[tool.setuptools.packages.find]
include = ["pyrx*"]
namespaces = false
[tool.setuptools.dynamic]
version = { attr = "pyrx.__version__" }
[project]
name = "cad-pyrx"
dynamic = ["version"]
authors = [{ name = "PyRx Dev Team", email = "daniel@cadext.com" }]
description = "Python for Autocad® and Clones."
readme = "PYPI_README.md"
requires-python = ">=3.12.0,<3.13.0"
keywords = [
"AutoCAD",
"BricsCAD",
"GStarCAD",
"ZwCAD",
"CAD",
"dwg",
"dxf",
"Python",
"Wrappers",
"ARX",
"BRX",
"GRX",
"ZRX",
]
license = { file = "LICENSE.txt" }
# full list of classifiers: https://pypi.org/classifiers/
classifiers = [
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Developers",
"Topic :: Software Development :: Libraries :: Python Modules",
"License :: OSI Approved :: GNU Lesser General Public License v3 (LGPLv3)",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: Implementation :: CPython",
"Operating System :: Microsoft :: Windows",
]
dependencies = [
"wxpython>=4.2.3; os_name == 'nt'", # Hard to install on Ubuntu for the CI
"pywin32; os_name == 'nt'",
"debugpy>=1.8.0",
"pydantic_settings",
]
[project.optional-dependencies]
dev = [
"pytest",
"build",
"ruff",
"python-dotenv[cli]",
"pre-commit",
"mypy",
"types-pywin32",
"asttokens",
"setuptools-scm>=8",
]
ptrepl = ["ptpython", "prompt_toolkit"]
[project.urls]
Homepage = "https://pyarx.blogspot.com/"
Repository = "https://github.com/CEXT-Dan/PyRx"
Issues = "https://github.com/CEXT-Dan/PyRx/issues"
[tool.pytest.ini_options]
testpaths = ["tests"]
[tool.ruff]
line-length = 99
target-version = "py312"
[tool.ruff.lint]
select = ["E", "F", "I"]
ignore = ["E501"]
per-file-ignores = { "tests/**/*.py" = ["E711", "E712"] }
[tool.ruff.lint.isort]
known-first-party = ["pyrx"]
section-order = [
"future",
"standard-library",
"third-party",
"first-party",
"local-folder",
]
[tool.mypy]
disable_error_code = "overload-cannot-match"
follow_imports = "skip"
check_untyped_defs = true
files = [
"pyrx/*/**/*.py",
"pyrx/_host_init.py",
"pyrx/commands.py",
"pyrx/console.py",
"pyrx/PyAp.pyi",
"pyrx/PyAx.pyi",
"pyrx/PyBr.pyi",
"pyrx/PyBrx.pyi",
"pyrx/PyBrxBim.pyi",
"pyrx/PyBrxCv.pyi",
"pyrx/PyDb.pyi",
"pyrx/PyEd.pyi",
"pyrx/PyGe.pyi",
"pyrx/PyGi.pyi",
"pyrx/PyGs.pyi",
"pyrx/PyPl.pyi",
"pyrx/PyRx.pyi",
"pyrx/PyRxDebug.py",
"pyrx/PySm.pyi",
# "PySamples", # Needs extra work
# "tests",
"gen_pyi.py",
"in_test_runner.py",
]
ignore_missing_imports = true
[[tool.mypy.overrides]]
module = ["wx.*", "debugpy.*"]
ignore_missing_imports = true