Skip to content

Commit 0b2eeed

Browse files
committed
Run pyproject pre-commit hook
1 parent 03af146 commit 0b2eeed

File tree

1 file changed

+48
-69
lines changed

1 file changed

+48
-69
lines changed

pyproject.toml

Lines changed: 48 additions & 69 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,7 @@ description = "PySide6-based GUI to run real time DeepLabCut experiments"
88
readme = "README.md"
99
keywords = [ "deep learning", "deeplabcut", "gui", "pose estimation", "real-time" ]
1010
license-files = [ "LICENSE" ]
11-
authors = [ { name = "A. & M. Mathis Labs", email = "adim@deeplabcut.org" } ]
12-
requires-python = ">=3.10,<3.13"
11+
requires-python = ">=3.10" # don' forget to update tool.pyproject-fmt if this changes
1312
classifiers = [
1413
"Development Status :: 4 - Beta",
1514
"Environment :: X11 Applications :: Qt",
@@ -34,120 +33,93 @@ dependencies = [
3433
"qdarkstyle",
3534
"vidgear[core]",
3635
]
37-
optional-dependencies.all = [ "harvesters", "pypylon" ]
38-
optional-dependencies.basler = [ "pypylon" ]
39-
optional-dependencies.dev = [
36+
[[project.authors]]
37+
name = "A. & M. Mathis Labs"
38+
email = "adim@deeplabcut.org"
39+
[project.optional-dependencies]
40+
all = [ "harvesters", "pypylon" ]
41+
basler = [ "pypylon" ]
42+
dev = [
4043
"hypothesis>=6",
4144
"pre-commit",
4245
"pytest>=7",
4346
"pytest-cov>=4",
4447
"pytest-mock>=3.10",
4548
"pytest-qt>=4.2",
4649
]
47-
optional-dependencies.gentl = [ "harvesters" ]
48-
optional-dependencies.pytorch = [
50+
gentl = [ "harvesters" ]
51+
pytorch = [
4952
"deeplabcut-live[pytorch]>=2", # this includes timm and scipy
5053
]
51-
<<<<<<< cy/upgrade-gentl-backend
52-
dev = [
53-
"pytest>=7.0",
54-
"pytest-cov>=4.0",
55-
"pytest-mock>=3.10",
56-
"pytest-qt>=4.2",
57-
"pytest-timeout>=2.0",
58-
"pre-commit",
59-
"hypothesis>=6.0",
60-
]
6154
test = [
62-
"pytest>=7.0",
63-
"pytest-cov>=4.0",
64-
"pytest-mock>=3.10",
65-
"pytest-qt>=4.2",
66-
"pytest-timeout>=2.0",
67-
"hypothesis>=6.0",
68-
=======
69-
optional-dependencies.test = [
7055
"hypothesis>=6",
7156
"pytest>=7",
7257
"pytest-cov>=4",
7358
"pytest-mock>=3.10",
7459
"pytest-qt>=4.2",
7560
]
76-
optional-dependencies.tf = [
61+
tf = [
7762
"deeplabcut-live[tf]>=2",
78-
>>>>>>> cy/pre-release-fixes-2.0
7963
]
80-
urls."Bug Tracker" = "https://github.com/DeepLabCut/DeepLabCut-live-GUI/issues"
81-
urls.Documentation = "https://github.com/DeepLabCut/DeepLabCut-live-GUI"
82-
urls.Homepage = "https://github.com/DeepLabCut/DeepLabCut-live-GUI"
83-
urls.Repository = "https://github.com/DeepLabCut/DeepLabCut-live-GUI"
84-
scripts.dlclivegui = "dlclivegui:main"
64+
[project.scripts]
65+
dlclivegui = "dlclivegui:main"
66+
[project.urls]
67+
"Bug Tracker" = "https://github.com/DeepLabCut/DeepLabCut-live-GUI/issues"
68+
Documentation = "https://github.com/DeepLabCut/DeepLabCut-live-GUI"
69+
Homepage = "https://github.com/DeepLabCut/DeepLabCut-live-GUI"
70+
Repository = "https://github.com/DeepLabCut/DeepLabCut-live-GUI"
8571

86-
[tool.setuptools]
8772
# [tool.setuptools]
88-
8973
# include-package-data = true
9074

91-
# This is more granular and explicit than include-package-data,
92-
93-
# which can be too broad and include unwanted files.
94-
95-
package-data."dlclivegui.assets" = [ "*.png" ]
96-
packages.find.where = [ "." ]
97-
packages.find.include = [ "dlclivegui*" ]
98-
packages.find.exclude = [ "tests*", "docs*" ]
75+
[tool.setuptools.package-data]
76+
"dlclivegui.assets" = [ "*.png" ]
77+
[tool.setuptools.packages]
78+
find.where = [ "." ]
79+
find.include = [ "dlclivegui*" ]
80+
find.exclude = [ "tests*", "docs*" ]
9981

10082
[tool.ruff]
10183
target-version = "py310"
10284
line-length = 120
10385
fix = true
104-
lint.select = [ "B", "E", "F", "I", "UP" ]
105-
lint.ignore = [ "E741" ]
86+
[tool.ruff.lint]
87+
select = [ "B", "E", "F", "I", "UP" ]
88+
ignore = [ "E741" ]
10689

10790
[tool.pyproject-fmt]
108-
generate-python-classifiers = false
91+
max_supported_python = "3.12"
92+
generate_python_version_classifiers = true
93+
# Avoid collapsing tables to field.key = value format (less readable)
94+
table_format = "long"
10995

11096
[tool.pytest]
111-
ini_options.testpaths = [ "tests" ]
112-
ini_options.python_files = [ "test_*.py" ]
113-
ini_options.python_classes = [ "Test*" ]
114-
ini_options.python_functions = [ "test_*" ]
115-
ini_options.addopts = [
97+
[tool.pytest.ini_options]
98+
testpaths = [ "tests" ]
99+
python_files = [ "test_*.py" ]
100+
python_classes = [ "Test*" ]
101+
python_functions = [ "test_*" ]
102+
addopts = [
116103
"--strict-markers",
117104
"--strict-config",
118105
"--disable-warnings",
119106
# "--maxfail=1",
120107
"-ra",
121108
"-q",
122109
]
123-
<<<<<<< cy/upgrade-gentl-backend
124110
markers = [
125-
"unit: Unit tests for individual components",
126-
"integration: Integration tests for component interaction",
127-
"functional: Functional tests for end-to-end workflows",
128-
"hardware: Tests that require specific hardware, notable camera backends",
129-
# "slow: Tests that take a long time to run",
130-
"gui: Tests that require GUI interaction",
131-
"timeout: Test timeout in seconds (pytest-timeout)",
132-
=======
133-
ini_options.markers = [
134111
"unit: Unit tests for individual components",
135112
"integration: Integration tests for component interaction",
136113
"functional: Functional tests for end-to-end workflows",
137114
"hardware: Tests that require specific hardware, notable camera backends",
138115
# "slow: Tests that take a long time to run",
139116
"gui: Tests that require GUI interaction",
140-
>>>>>>> cy/pre-release-fixes-2.0
117+
"timeout: Test timeout in seconds (pytest-timeout)",
141118
]
142119

143120
[tool.coverage]
144-
run.branch = true
145-
run.omit = [
146-
"*/__pycache__/*",
147-
"*/site-packages/*",
148-
]
149-
run.source = [ "dlclivegui", "tests" ]
150-
report.exclude_lines = [
121+
[tool.coverage.report]
122+
exclude_lines = [
151123
"@abstract",
152124
"def __repr__",
153125
"if __name__ == .__main__.:",
@@ -156,6 +128,13 @@ report.exclude_lines = [
156128
"raise AssertionError",
157129
"raise NotImplementedError",
158130
]
159-
report.omit = [
131+
omit = [
160132
"tests/*",
161133
]
134+
[tool.coverage.run]
135+
branch = true
136+
omit = [
137+
"*/__pycache__/*",
138+
"*/site-packages/*",
139+
]
140+
source = [ "dlclivegui", "tests" ]

0 commit comments

Comments
 (0)