Repository navigation
Expand file tree
/
Copy pathpyproject.toml
More file actions
49 lines (41 loc) · 1.65 KB
/
Copy pathpyproject.toml
File metadata and controls
49 lines (41 loc) · 1.65 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
[build-system]
requires = ["setuptools>=61"]
build-backend = "setuptools.build_meta"
[project]
name = "stackforge"
version = "0.1.0"
description = "Full-colour multi-toolhead 3D printing: per-pixel filament stacks, surface colouring, filament calibration"
readme = "README.md"
requires-python = ">=3.10"
license = { file = "LICENSE" }
# The CLIs need only these. The Qt GUI (stackforge) is the `gui` extra.
dependencies = ["numpy", "Pillow", "scipy"]
[project.optional-dependencies]
gui = ["PySide6"]
dev = ["pytest", "ruff", "PySide6"]
[project.scripts]
stackforge = "stackforge.gui.app:main"
stackforge-plaque = "stackforge.tools.plaque:main"
stackforge-paint = "stackforge.tools.paint:main"
stackforge-top-paint = "stackforge.tools.top_paint:main"
stackforge-calibrate = "stackforge.tools.calibrate:main"
stackforge-measure = "stackforge.tools.measure:main"
stackforge-filaments = "stackforge.core.filamentdb:main"
stackforge-polymaker = "stackforge.tools.polymaker:main"
stackforge-spectral = "stackforge.tools.spectral:main"
stackforge-dither-compare = "stackforge.tools.dither_compare:main"
stackforge-make-samples = "stackforge.tools.make_samples:main"
[tool.setuptools.packages.find]
where = ["src"]
# the shipped filament database and Polymaker catalogue (src/stackforge/data/)
[tool.setuptools.package-data]
stackforge = ["data/*.json", "data/cie/*"]
[tool.pytest.ini_options]
testpaths = ["tests"]
[tool.ruff]
line-length = 110
target-version = "py310"
[tool.ruff.lint]
# real mistakes only (pyflakes + pycodestyle errors); the codebase's style is not enforced
select = ["E4", "E7", "E9", "F"]
ignore = ["E401", "E402"] # tests import after setting sys.path / ROOT