mirror of
https://github.com/infiniteCable2/openpilot.git
synced 2026-10-01 03:53:41 +08:00
Merge commaai/openpilot fdd1df79 into sync-20260721
This commit is contained in:
+20
-36
@@ -15,39 +15,28 @@ dependencies = [
|
||||
"tqdm", # cars (fw_versions.py) on start + many one-off uses
|
||||
|
||||
# core
|
||||
"cffi",
|
||||
"scons",
|
||||
"pycapnp==2.1.0", # 2.2 introduces a memory leak due to cyclic references
|
||||
"Cython",
|
||||
"setuptools",
|
||||
"numpy >=2.0",
|
||||
|
||||
# vendored native dependencies
|
||||
"comma-deps-bzip2",
|
||||
"comma-deps-bootstrap-icons",
|
||||
"comma-deps-capnproto",
|
||||
"comma-deps-catch2",
|
||||
"comma-deps-acados",
|
||||
"comma-deps-ffmpeg",
|
||||
"comma-deps-zstd",
|
||||
"comma-deps-ncurses",
|
||||
"comma-deps-zeromq",
|
||||
"comma-deps-libusb",
|
||||
"comma-deps-json11",
|
||||
"comma-deps-git-lfs",
|
||||
"comma-deps-gcc-arm-none-eabi",
|
||||
|
||||
# body / webrtcd
|
||||
"av",
|
||||
"aiortc",
|
||||
|
||||
# logging
|
||||
"pyzmq",
|
||||
"sentry-sdk",
|
||||
"xattr", # used in place of 'os.getxattr' for macOS compatibility
|
||||
|
||||
# athena
|
||||
"PyJWT",
|
||||
"PyJWT[crypto]",
|
||||
"websocket_client",
|
||||
|
||||
# joystickd
|
||||
@@ -68,7 +57,6 @@ dependencies = [
|
||||
|
||||
[project.optional-dependencies]
|
||||
docs = [
|
||||
"Jinja2",
|
||||
"zensical",
|
||||
]
|
||||
|
||||
@@ -84,7 +72,6 @@ testing = [
|
||||
"pytest-mock",
|
||||
"ruff",
|
||||
"codespell",
|
||||
"pre-commit-hooks",
|
||||
]
|
||||
|
||||
dev = [
|
||||
@@ -93,15 +80,15 @@ dev = [
|
||||
|
||||
tools = [
|
||||
"comma-deps-imgui",
|
||||
"comma-deps-bzip2",
|
||||
"comma-deps-bootstrap-icons",
|
||||
"comma-deps-libusb",
|
||||
"comma-deps-ncurses",
|
||||
|
||||
# this can be added back once it's stripped down some more
|
||||
#"metadrive-simulator @ git+https://github.com/commaai/metadrive.git@minimal ; (platform_machine != 'aarch64')",
|
||||
]
|
||||
|
||||
[project.urls]
|
||||
Homepage = "https://github.com/commaai/openpilot"
|
||||
|
||||
[dependency-groups]
|
||||
submodules = [
|
||||
"msgq",
|
||||
"opendbc",
|
||||
@@ -111,6 +98,14 @@ submodules = [
|
||||
"tinygrad",
|
||||
]
|
||||
|
||||
[project.urls]
|
||||
Homepage = "https://github.com/commaai/openpilot"
|
||||
|
||||
[dependency-groups]
|
||||
standalone = [
|
||||
"openpilot[submodules]",
|
||||
]
|
||||
|
||||
[build-system]
|
||||
requires = ["hatchling"]
|
||||
build-backend = "hatchling.build"
|
||||
@@ -155,20 +150,19 @@ lint.select = [
|
||||
"E", "F", "W", "PIE", "C4", "ISC", "A", "B",
|
||||
"NPY", # numpy
|
||||
"UP", # pyupgrade
|
||||
"ASYNC",
|
||||
"B904", "B905",
|
||||
"PLC0207",
|
||||
"TRY203", "TRY400", "TRY401", # try/excepts
|
||||
"RUF008", "RUF100",
|
||||
"RUF006", "RUF008", "RUF009", "RUF061", "RUF064", "RUF100", "RUF102", "RUF103", "RUF104",
|
||||
"TID251",
|
||||
"PLE", "PLR1704",
|
||||
]
|
||||
lint.ignore = [
|
||||
"E741",
|
||||
"E402",
|
||||
"C408",
|
||||
"ISC003",
|
||||
"B027",
|
||||
"B024",
|
||||
"NPY002", # new numpy random syntax is worse
|
||||
"UP045", "UP007", # these don't play nice with raylib atm
|
||||
"UP007", # this doesn't play nice with raylib atm
|
||||
]
|
||||
line-length = 160
|
||||
exclude = [
|
||||
@@ -181,8 +175,7 @@ lint.flake8-implicit-str-concat.allow-multiline = false
|
||||
|
||||
[tool.ruff.lint.flake8-tidy-imports.banned-api]
|
||||
"pytest.main".msg = "pytest.main requires special handling that is easy to mess up!"
|
||||
"unittest".msg = "Use pytest"
|
||||
"time.time".msg = "Use time.monotonic"
|
||||
"time.time".msg = "Use time.monotonic" # time.time can skip due to its reference clock, you probably want a monotonic clock
|
||||
|
||||
# raylib banned APIs
|
||||
"pyray.measure_text_ex".msg = "Use openpilot.system.ui.lib.text_measure"
|
||||
@@ -202,21 +195,12 @@ exclude = [
|
||||
[tool.ty.rules]
|
||||
unresolved-import = "ignore" # Cython-compiled modules (.pyx)
|
||||
unresolved-attribute = "ignore" # many from capnp and Cython modules
|
||||
invalid-method-override = "ignore" # signature variance issues
|
||||
possibly-missing-attribute = "ignore" # too many false positives
|
||||
invalid-assignment = "ignore" # often intentional monkey-patching
|
||||
no-matching-overload = "ignore" # numpy/ctypes overload matching issues
|
||||
invalid-argument-type = "ignore" # many false positives from raylib, ctypes, numpy
|
||||
call-non-callable = "ignore" # false positives from dynamic types
|
||||
unsupported-operator = "ignore" # false positives from dynamic types
|
||||
not-subscriptable = "ignore" # false positives from dynamic types
|
||||
|
||||
[tool.uv]
|
||||
python-preference = "only-managed"
|
||||
default-groups = ["submodules"]
|
||||
default-groups = ["standalone"]
|
||||
override-dependencies = [
|
||||
"opendbc", # panda pins opendbc from git for standalone use; always use our submodule
|
||||
"av", # teleoprtc's av<13 pin is stale
|
||||
]
|
||||
|
||||
[tool.uv.sources]
|
||||
|
||||
Reference in New Issue
Block a user