1
- [tool .pytest .ini_options ]
2
- minversion = " 6.0"
3
- addopts = " --ignore=panda/ --ignore=rednose_repo/ --ignore=tinygrad_repo/ --ignore=laika_repo/"
4
- python_files = " test_*.py"
5
- timeout = " 30" # you get this long by default
6
-
7
- [tool .mypy ]
8
- python_version = " 3.11"
9
- plugins = [
10
- " numpy.typing.mypy_plugin" ,
11
- ]
12
- exclude = [
13
- " body/" ,
14
- " cereal/" ,
15
- " opendbc/" ,
16
- " panda/" ,
17
- " laika/" ,
18
- " laika_repo/" ,
19
- " rednose/" ,
20
- " rednose_repo/" ,
21
- " tinygrad/" ,
22
- " tinygrad_repo/" ,
23
- " third_party/" ,
24
- ]
25
-
26
- # third-party packages
27
- ignore_missing_imports =true
28
-
29
- # helpful warnings
30
- warn_redundant_casts =true
31
- warn_unreachable =true
32
- warn_unused_ignores =true
33
-
34
- # restrict dynamic typing
35
- warn_return_any =true
36
-
37
-
38
1
[tool .poetry ]
39
2
name = " openpilot"
40
3
version = " 0.1.0"
@@ -47,113 +10,176 @@ documentation = "https://docs.comma.ai"
47
10
48
11
49
12
[tool .poetry .dependencies ]
50
- python = " ~3.11"
51
- atomicwrites = " *"
52
- aiohttp = " *"
53
- aiortc = " *"
13
+ python = " ~3.8"
14
+ atomicwrites = " ^1.4.0"
54
15
casadi = " ==3.6.3"
55
- cffi = " *"
56
- control = " *"
57
- crcmod = " *"
58
- cryptography = " *"
59
- Cython = " *"
60
- future-fstrings = " *" # for acados
16
+ cffi = " ^1.15.1"
17
+ crcmod = " ^1.7"
18
+ cryptography = " ^37.0.4"
19
+ Cython = " ^0.29.30"
20
+ flake8 = " ^4.0.1"
21
+ Flask = " ^2.1.2"
22
+ future-fstrings = " ^1.2.0" # for acados
23
+ gunicorn = " ^20.1.0"
61
24
hatanaka = " ==2.4"
62
- hexdump = " *"
63
- Jinja2 = " *"
64
- json-rpc = " *"
65
- libusb1 = " *"
66
- numpy = " *"
67
- onnx = " >=1.14.0"
68
- onnxruntime-gpu = { version = " >=1.15.1" , platform = " linux" , markers = " platform_machine == 'x86_64'" }
69
- pillow = " *"
70
- psutil = " *"
71
- pyaudio = " *"
72
- pycapnp = " *"
73
- pycryptodome = " *"
74
- pydub = " *"
75
- PyJWT = " *"
76
- pyopencl = " *"
77
- pyserial = " *"
78
- PyYAML = " *"
79
- pyzmq = " *"
80
- requests = " *"
81
- scons = " *"
82
- sentry-sdk = " ==1.28.1" # needs to be updated with AGNOS
83
- setproctitle = " *"
84
- smbus2 = " *"
85
- sounddevice = " *"
86
- spidev = { version = " *" , platform = " linux" }
87
- spidev2 = { version = " *" , platform = " linux" }
88
- sympy = " *"
89
- timezonefinder = " *"
90
- tqdm = " *"
91
- urllib3 = " *"
92
- websocket_client = " *"
93
- polyline = " *"
25
+ hexdump = " ^3.3"
26
+ Jinja2 = " ^3.1.2"
27
+ json-rpc = " ^1.13.0"
28
+ libusb1 = " ^3.0.0"
29
+ nose = " ^1.3.7"
30
+ numpy = " ^1.23.0"
31
+ onnx = " ^1.14.0"
32
+ onnxruntime-gpu = { version = " ^1.15.1" , platform = " linux" , markers = " platform_machine == 'x86_64'" }
33
+ pillow = " ^9.2.0"
34
+ poetry = " ==1.2.2"
35
+ protobuf = " ==3.20.3"
36
+ psutil = " ^5.9.1"
37
+ pycapnp = " ==1.1.0"
38
+ pycryptodome = " ^3.15.0"
39
+ PyJWT = " ^2.5.0"
40
+ pyopencl = " ^2022.2.4"
41
+ pyserial = " ^3.5"
42
+ python-dateutil = " ^2.8.2"
43
+ PyYAML = " ^6.0"
44
+ pyzmq = " ^23.2.0"
45
+ requests = " ^2.28.1"
46
+ scons = " ^4.3.0"
47
+ sentry-sdk = " ^1.6.0"
48
+ setproctitle = " ^1.2.3"
49
+ six = " ^1.16.0"
50
+ smbus2 = " ^0.4.2"
51
+ sounddevice = " ^0.4.5"
52
+ spidev = { version = " ^3.6" , platform = " linux" }
53
+ spidev2 = { version = " ^0.9.0" , platform = " linux" }
54
+ sympy = " ^1.10.1"
55
+ timezonefinder = " ^6.0.1"
56
+ tqdm = " ^4.64.0"
57
+ urllib3 = " ^1.26.10"
58
+ utm = " ^0.7.0"
59
+ websocket_client = " ^1.3.3"
60
+ polyline = " ^1.4.0"
94
61
sconscontrib = {git = " https://github.com/SCons/scons-contrib.git" }
95
62
96
63
97
64
[tool .poetry .group .dev .dependencies ]
98
- av = " * "
65
+ av = " ^9.2.0 "
99
66
azure-storage-blob = " ~2.1"
100
- breathe = " *"
101
- carla = { url = " https://github.com/commaai/carla/releases/download/3.11.4/carla-0.9.14-cp311-cp311-linux_x86_64.whl" , platform = " linux" , markers = " platform_machine == 'x86_64'" }
102
- coverage = " *"
103
- dictdiffer = " *"
104
- ft4222 = " *"
67
+ breathe = " ^4.34.0"
68
+ carla = { version = " ==0.9.13" , platform = " linux" , markers = " platform_machine == 'x86_64'" }
69
+ control = " ^0.9.2"
70
+ coverage = " ^6.4.1"
71
+ dictdiffer = " ^0.9.0"
72
+ fastcluster = " ^1.2.6"
73
+ ft4222 = " ^1.4.1"
74
+ hexdump = " ^3.3"
105
75
hypothesis = " ==6.46.7"
106
- inputs = " *"
107
- lru-dict = " *"
108
- markdown-it-py = " *"
109
- matplotlib = " *"
110
- mpld3 = " *"
111
- mypy = " *"
112
- myst-parser = " *"
113
- natsort = " *"
114
- opencv-python-headless = " *"
115
- pandas = " *"
116
- parameterized = " ^0.8"
117
- pprofile = " *"
118
- pre-commit = " *"
119
- pycurl = " *"
120
- pygame = " *"
121
- pyprof2calltree = " *"
122
- pytest = " *"
123
- pytest-cov = " *"
124
- pytest-subtests = " *"
125
- pytest-xdist = " *"
126
- scipy = " *"
127
- sphinx = " *"
128
- sphinx-rtd-theme = " *"
129
- sphinx-sitemap = " *"
130
- tabulate = " *"
131
- tenacity = " *"
132
- types-atomicwrites = " *"
133
- types-certifi = " *"
134
- types-pycurl = " *"
135
- types-PyYAML = " *"
136
- types-requests = " *"
137
- types-tabulate = " *"
138
- pyqt5 = { version = " *" , markers = " platform_machine == 'x86_64'" } # no aarch64 wheels for macOS/linux
76
+ inputs = " ^0.5"
77
+ lru-dict = " ^1.1.7"
78
+ lxml = " ^4.9.1"
79
+ markdown-it-py = " ^2.1.0"
80
+ matplotlib = " ^3.5.2"
81
+ mpld3 = " ^0.5.8"
82
+ mypy = " ^0.961"
83
+ myst-parser = " ^0.18.0"
84
+ natsort = " ^8.1.0"
85
+ numpy = " ^1.23.0"
86
+ opencv-python-headless = { url = " https://github.com/commaai/opencv-python-builder/releases/download/4.5.5.64%2Bcu118/opencv_python_headless-4.5.5.64-cp38-cp38-manylinux_2_31_x86_64.whl" , platform = " linux" }
87
+ pandas = " ^1.4.3"
88
+ parameterized = " ^0.8.1"
89
+ paramiko = " ^2.11.0"
90
+ pprofile = " ^2.1.0"
91
+ pre-commit = " ^2.19.0"
92
+ pycurl = " ^7.45.1"
93
+ pygame = " ^2.1.2"
94
+ pylint = " ^2.17.4"
95
+ pyprof2calltree = " ^1.4.5"
96
+ pytest = " ^7.1.2"
97
+ pytest-xdist = " ^2.5.0"
98
+ reverse_geocoder = " ^1.5.1"
99
+ scipy = " ^1.8.1"
100
+ sphinx = " ^5.0.2"
101
+ sphinx-rtd-theme = " ^1.0.0"
102
+ sphinx-sitemap = " ^2.2.0"
103
+ tabulate = " ^0.8.10"
104
+ tenacity = " ^8.0.1"
105
+ types-atomicwrites = " ^1.4.5"
106
+ types-certifi = " ^2021.10.8"
107
+ types-pycurl = " ^7.45.1"
108
+ types-python-dateutil = " ^2.8.19.13"
109
+ types-PyYAML = " ^6.0"
110
+ types-requests = " ^2.28.11"
111
+ types-tabulate = " ^0.8.10"
112
+
113
+
114
+ [tool .poetry .group .xx ]
115
+ optional = true
116
+
117
+ [tool .poetry .group .xx .dependencies ]
118
+ aenum = " ^3.1.11"
119
+ aiohttp = " ^3.8.1"
120
+ albumentations = " ^1.2.1"
121
+ apex = { url = " https://github.com/commaai/apex/releases/download/pytorch2.0.0%2Bcu11.8/apex-0.1-cp38-cp38-linux_x86_64.whl" }
122
+ azure-cli-core = " ^2.38.0"
123
+ azure-common = " ^1.1.28"
124
+ azure-core = " ^1.24.2"
125
+ azure-nspkg = " ~3.0"
126
+ azure-storage-common = " ~2.1"
127
+ azure-storage-nspkg = " ~3.1"
128
+ blosc = " ==1.9.2"
129
+ cloudpickle = " ^2.1.0"
130
+ configargparse = " ^1.5.3"
131
+ cupy-cuda11x = " ^11.6.0"
132
+ datadog = " ^0.44.0"
133
+ dotmap = " ^1.3.30"
134
+ einops = " ^0.5.0"
135
+ elasticsearch = " ^8.3.1"
136
+ Flask-Cors = " ^3.0.10"
137
+ Flask-SocketIO = " ^5.2.0"
138
+ GeoAlchemy2 = " ^0.12.1"
139
+ imageio = " ^2.19.5"
140
+ influxdb-client = " ^1.30.0"
141
+ ipykernel = " ^6.15.1"
142
+ ipython = " ^8.4.0"
143
+ joblib = " ^1.1.0"
144
+ json-logging-py = " ^0.2"
145
+ jupyter = " ^1.0.0"
146
+ jupyterlab = " ^3.4.4"
147
+ jupyterlab-vim = " ^0.15.1"
148
+ Markdown = " ^3.4.1"
149
+ msgpack-python = " ^0.5.6"
150
+ networkx = " ~2.8"
151
+ nvidia-ml-py3 = " ^7.352.0"
152
+ onnx2torch = " ^1.5.4"
153
+ onnxoptimizer = " ^0.3.1"
154
+ osmium = " ^3.3.0"
155
+ pillow-avif-plugin = " ^1.2.2"
156
+ pipenv = " ==2022.10.12"
157
+ plotly = " ^5.9.0"
158
+ pycuda = " ^2022.1"
159
+ Pygments = " ^2.12.0"
160
+ PyMySQL = " ~0.9"
161
+ pyproj = " ^3.3.1"
162
+ python-logstash = " ^0.4.8"
163
+ redis = " ^4.3.4"
164
+ s2sphere = " ^0.2.5"
165
+ scikit-image = " ^0.19.3"
166
+ scikit-learn = " ^1.1.1"
167
+ segmentation-models-pytorch = " ==0.3.2"
168
+ simplejson = " ^3.17.6"
169
+ SQLAlchemy = " ^1.4.39"
170
+ torch = { url = " https://download.pytorch.org/whl/cu118/torch-2.0.0%2Bcu118-cp38-cp38-linux_x86_64.whl" }
171
+ torchsummary = " ^1.5.1"
172
+ torchvision = { url = " https://download.pytorch.org/whl/cu118/torchvision-0.15.1%2Bcu118-cp38-cp38-linux_x86_64.whl" }
173
+ triton = " ^2.0.0"
174
+ Werkzeug = " ^2.1.2"
175
+ zerorpc = { git = " https://github.com/commaai/zerorpc-python.git" , branch = " master" }
176
+ omegaconf = " ^2.3.0"
177
+ osmnx = " ==1.2.2"
178
+ tritonclient = {version = " 2.28.0" , extras = [" http" ]}
179
+ tensorrt = " ^8.6.0"
180
+ transformers = " ^4.29.2"
139
181
140
182
141
183
[build-system ]
142
184
requires = [" poetry-core" ]
143
185
build-backend = " poetry.core.masonry.api"
144
-
145
- # https://beta.ruff.rs/docs/configuration/#using-pyprojecttoml
146
- [tool .ruff ]
147
- select = [" E" , " F" , " W" , " PIE" , " C4" , " ISC" , " RUF100" , " A" , " B" ]
148
- ignore = [" W292" , " E741" , " E402" , " C408" , " ISC003" , " B027" , " B024" ]
149
- line-length = 160
150
- target-version =" py311"
151
- exclude = [
152
- " panda" ,
153
- " opendbc" ,
154
- " laika_repo" ,
155
- " rednose_repo" ,
156
- " tinygrad_repo" ,
157
- " third_party" ,
158
- ]
159
- flake8-implicit-str-concat.allow-multiline =false
0 commit comments