Commit Graph

40 Commits

Author SHA1 Message Date
Cameron Clough
80da3aee14 mypy: use implicit-optional (#31590)
* mypy: set implicit-optional = true

* find and replace '| None = None' -> '= None' in function args
2024-02-25 13:29:18 -08:00
Cameron Clough
995250ae49 use pyupgrade to update to new typing syntax (#31580)
* add pyupgrade hook

* run pyupgrade (pre-commit run -a)

* ruff --fix

* Revert "add pyupgrade hook"

This reverts commit 56ec18bb6b8602a0b612f3803d96cdad14b52066.

* revert changes to third_party/

* manual type fixes

* explicit Optional wrapping capnp objects
2024-02-24 16:41:23 -08:00
Adeeb Shihadeh
1145122b3f More startup checks (#31511)
* no lag!

* kill first

---------

Co-authored-by: Comma Device <device@comma.ai>
2024-02-19 13:58:36 -08:00
Adeeb Shihadeh
35f819c823 swaglog.py goes in common/ (#30631)
* swaglog.py goes in common/

* all of these go in release

* we'll even include the pyx
2023-12-06 17:27:51 -08:00
Justin Newberry
1ee6ed4b16 Linter: remove pylint (#29611)
remove pylint
2023-08-24 16:30:54 -07:00
Adeeb Shihadeh
d013f2174a manager: refactor process starting logic (#29574)
* refactor into sane api

* always set

* cleanup

* cleanup

* and there too

* fix order

* fail

* and ensure we test

* pass test

pass test

* order

* only diff not related

---------

Co-authored-by: Shane Smiskol <shane@smiskol.com>
2023-08-24 06:00:55 -07:00
Adeeb Shihadeh
a9626f95b6 add openpilot prefix to imports (#29498)
* add openpilot prefix to imports

* more

* more

* fix docs

* fix linter

* bump submodules

* fix patched tests

* update dynamic imports

* debug

* Revert "debug"

This reverts commit db5e13b9911cc74438bee123bc3430da6c31b24b.

* fix pm test
2023-08-20 20:49:55 -07:00
Adeeb Shihadeh
d61f86d339 replace custom clock helpers with time module (#29499)
* replace custom clock stuff wtih time module

* fix double

* fix release

* bump cereal

* update type

* fix one more
2023-08-20 18:50:58 -07:00
Justin Newberry
62c1e65924 Ruff: enable most of bugbear (#29320)
* added mutable default args

* most of the Bs

* add comment about lrucache
2023-08-11 15:33:49 -07:00
Adeeb Shihadeh
bc0aa1c598 manager: remove old unkillable process handling (#29209) 2023-08-01 22:18:58 -07:00
Kacper Rączy
547a033a3c process_replay: capture process output (#29027)
* Add ProcessOutputProxy

* Move launcher to its own field

* Move ProcessOutputCapture to its own file

* Return itself from __enter__ of OpenpilotPrefix

* Integrate ProcessOutputCapture into process_replay

* Add note about capture_output_store to README

* ipykernel import is optional

* Disable type checking for link_with_current_proc

* Remove assertion

* Decode outputs to utf-8

* read(self): return empty buf if its none

* Fix type annotations

* Replace fifo with regular file, to avoid hitting fifo size limit
2023-07-31 16:30:58 -07:00
Adeeb Shihadeh
260e83d8e4 manager: create params once (#28757) 2023-06-30 10:03:45 -07:00
Adeeb Shihadeh
111b4eee30 fix a bunch of python warnings (#28576)
* fix a bunch of python warnings

* fix that
2023-06-16 13:22:30 -07:00
Adeeb Shihadeh
58d32a70d7 manager: watchdog restart UI with SIGKILL (#28523) 2023-06-12 21:46:20 -07:00
Comma Device
4293705648 test manager: use ensure_running to start relevant procs 2023-01-22 16:28:20 -06:00
Adeeb Shihadeh
0fce5d9045 Move a bunch of stuff to system/ part 3 (#24829)
* move swaglog.py

* timezoned

* logmessaged

* version.py

* fix linter
2022-06-11 23:19:27 -07:00
Adeeb Shihadeh
1139fe507b Move selfdrive/hardware/ to system/ (#24725)
* move hardware to system/

* fix mypy
2022-06-11 16:38:24 -07:00
Adeeb Shihadeh
cdf6338388 manager: start process by callback (#24417) 2022-05-03 23:30:35 -07:00
grekiki
b8b15d5cf1 mypy: enable --warn-unreachable (#24282)
* Optional solves mypy assuming None is always None

* oops

* spaces

* Update registration.py

* fix local error

Co-authored-by: Willem Melching <willem.melching@gmail.com>
2022-04-21 18:27:45 +02:00
Willem Melching
207df4742f manager: cleanup ensure_running (#24270)
* manager: cleanup ensure_running

* make notcar a blocking condition

* invert last conditions

* duplicate

* always run daemon process

* comment

* typo

* make notcar like driverview
2022-04-21 16:23:39 +02:00
Adeeb Shihadeh
76a8338197 manager: start bridge and web joystick for notcars (#24212)
* manager: start bridge and web joystick for notcars

* fix that

* bump cereal

Co-authored-by: Comma Device <device@comma.ai>
2022-04-19 14:13:05 -07:00
Adeeb Shihadeh
8af20af66d pylint: enforce indentation (W0311) (#24039)
* pylint: enforce indentation (W0311)

* few more
2022-03-24 23:23:29 -07:00
Adeeb Shihadeh
8b5b0ae341 sentry improvements (#23627)
* sentry: filter out unregistered devices and PC

* add daemon name
2022-01-26 11:44:10 -08:00
Adeeb Shihadeh
b63bc89bc9 sentry fixups (#23249)
* set env

* do init in same place

* no sentry for forks

* start session

* start session

* remove that

* val
2022-01-14 15:25:16 -08:00
Adeeb Shihadeh
8c53adf4ab swaglog: add daemon name to context (#23518)
* cleanup first

* add daemon name

* add test

* fix

* daemon name
2022-01-13 20:23:08 -08:00
Shane Smiskol
6e817f9eb5 manager: default driverview to False (#23492) 2022-01-11 14:07:35 +01:00
George Hotz
dc96d4bee7 Add More Types for mypy (#23268)
* mypy passes

* a few more

* a few in manager

* more types, will lint

* more

* simple types

* events type

* Update selfdrive/thermald/thermald.py

* Apply suggestions from code review

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
2021-12-28 18:07:00 +01:00
Ewout ter Hoeven
332f568a82 Pyupgrade 3.6: Update syntax with Python 3.6+ features (#23305)
Updated Python code with Python 3.6+ features:
- utf-8 encoding is now the default (PEP 3120)
- Replace list comprehensions by Generator Expressions (PEP 289)
- Replace yield loop by yield from (PEP 380)
- Remove the (object) subclass when defining a class
- Replace the IOError alias by OSError (PEP 3151)
- Define sets with curly braces {} instead of set()
- Remove "r" parameter from open function, which is default

Co-Authored-By: Adeeb Shihadeh <8762862+adeebshihadeh@users.noreply.github.com>
Co-Authored-By: GregorKikelj <96022003+GregorKikelj@users.noreply.github.com>

Co-authored-by: Adeeb Shihadeh <8762862+adeebshihadeh@users.noreply.github.com>
Co-authored-by: GregorKikelj <96022003+GregorKikelj@users.noreply.github.com>
2021-12-24 11:18:39 -08:00
Ewout ter Hoeven
55390d273f Convert format strings strings to f-strings (#23241)
* Convert all text strings to f-strings

Reformats all the text from the old "%-formatted" and .format(...) format to the newer f-string format, as defined in PEP 498. This requires Python 3.6+.

Flynt 0.69 was used to reformat the strings. 120 f-strings were created in 51 files.

F-strings are in general more readable, concise and performant. See also: https://www.python.org/dev/peps/pep-0498/#rationale

* revert pyextra changes

* revert ublox.py

Co-authored-by: Willem Melching <willem.melching@gmail.com>
2021-12-16 14:58:17 +01:00
Adeeb Shihadeh
b27a19e9d1 cloudlog: add daemon name to context for python daemons (#23225)
* python

* manager is a daemon too

* Update selfdrive/manager/process.py

Co-authored-by: Comma Device <device@comma.ai>
2021-12-14 20:43:26 -08:00
Dean Lee
ca88a8769b watchdog_kick: non-allocating (#22892)
* non-allocating

* unpack

* call kick every second

* cleanup include
2021-11-17 12:02:31 +01:00
Adeeb Shihadeh
2f57f1729d add shouldBeRunning field to managerState (#22246) 2021-09-15 19:51:55 -07:00
arfy slowy
d74def61f8 fix: spelling typos (#21861)
* fix: typo spelling grammar

* revert

* Update selfdrive/locationd/calibrationd.py

* more revert

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
2021-08-05 12:05:49 -07:00
Adeeb Shihadeh
09291b99bc watchdog: restart while onroad (#21636) 2021-07-17 14:52:05 -07:00
Willem Melching
9291ca773c Kill processes in parallel when going offroad (#20469)
* Kill processes in parallel when going offroad

* smaller diff

* handle edge case

* more readable

* set variable after actually sending signal

* newline
2021-03-25 17:27:49 +01:00
Willem Melching
958e7b0071 manager watchdog, log exit code 2021-03-09 13:11:40 +01:00
Willem Melching
a94ba4fb8b Add watchdog check to manager (#20277)
* this should work but doesnt

* Only offroad

* works

* make it work offorad

* reduce diff

* cleanup

* need util

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
2021-03-08 19:17:46 -08:00
Willem Melching
af2a847f06 manager: check if process is running before sending signal 2021-03-08 15:42:09 +01:00
Willem Melching
476558b547 Process config cleanup (#20276)
* add enabled flag

* remove hack

* only prepare when enabled
2021-03-08 12:18:58 +01:00
Willem Melching
5a3b511306 Manager cleanup (#20231)
* move manager in folder

* inital refactor

* call start

* small cleanup

* add comments

* use self.signal()

* order shouldnt matter

* newlines

* add helpers

* newlines

* add process config

* split out build part of manager

* this should fix most tests

* no sensord on pc

* dont start athena

* remove comment

* fix old athena test

* fix inject model

* fix test car models

* should be not none

* fix helpers exitcode

* ignore manage_athenad

* Use time.monotonic()

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>

* combine init, remove spinner

* move manager test

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
2021-03-05 11:03:23 +01:00