Repository navigation
Expand file tree
/
Copy pathpyproject.toml
More file actions
69 lines (62 loc) · 2.2 KB
/
Copy pathpyproject.toml
File metadata and controls
69 lines (62 loc) · 2.2 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
[project]
name = "linkerbot"
version = "0.5.4"
description = "Linkerbot Python SDK"
readme = "README.md"
authors = [{ name = "Jason Yip", email = "yezi.2022@outlook.com" }]
requires-python = ">=3.10"
dependencies = [
"numpy>=2.2.6",
"pydantic>=2.13.4",
"python-can>=4.6.1",
"scipy>=1.15.3",
"tomli>=2.4.1; python_version < '3.11'",
"tomli-w>=1.0.0",
]
[project.optional-dependencies]
kinetix = ["pin>=4.1.0"]
[build-system]
requires = ["uv_build>=0.11.28,<0.12.0"]
build-backend = "uv_build"
[dependency-groups]
dev = ["matplotlib>=3.10.9", "ruff>=0.15.21", "ty>=0.0.58", "uv-bump>=0.5.0"]
test = ["pytest>=9.1.1", "pytest-timeout>=2.4.0"]
[tool.uv.build-backend]
module-name = "linkerbot"
[[tool.uv.index]]
name = "gitea-linker-bot"
url = "https://gitea.linkerhub.work/api/packages/linker-bot/pypi/simple/"
publish-url = "https://gitea.linkerhub.work/api/packages/linker-bot/pypi"
explicit = true
[tool.pytest.ini_options]
testpaths = ["tests"]
markers = [
"interactive: Interactive tests requiring human observation",
"l6: Tests for L6 robotic hand",
"l20lite: Tests for L20Lite robotic hand",
"l20: Tests for L20 robotic hand",
"o6: Tests for O6 robotic hand",
"l30: Tests for L30 robotic hand",
"o20: Tests for O20 robotic hand",
"o30: Tests for O30 robotic hand and HandProtocol_v1.0",
"canfd: Tests for CANFD communication",
"hardware: Tests requiring physical hardware",
"slow: Tests that take longer to run",
"lifecycle: Connection and lifecycle tests",
"control: Angle, speed, and torque control tests",
"sensor: Temperature, current, fault, and force sensor tests",
"polling: Background polling tests",
"streaming: Event streaming tests",
"stress: Timing and concurrency stress tests",
"validation: Input and configuration validation tests",
"error_handling: Error propagation and recovery tests",
"a7_lite: Tests for A7lite robotic arm",
"a7: Tests for A7 robotic arm",
"basic: Basic functionality tests",
"safety: Safety verification tests",
"motion: Motion control tests",
"extra: Extra tests (explicit invocation only)",
]
addopts = ["-v", "--strict-markers", "-m", "not hardware and not interactive"]
[tool.ty.analysis]
replace-imports-with-any = ["pinocchio.**"]