The Sunnylink dongle ID is now being formatted directly in the manager.py file, reducing redundancy. Also, the check for sunnylink_dongle_id in sunnylink.py was removed to simplify the SunnlinkEnabled conditional.
The Sunnylink integration has been refactored to improve handling of scenarios where Sunnylink is enabled but the dongle is not registered. Added checks for the registration status of the Sunnylink dongle and updated related defaults and UI indicators correspondingly. Additionally, moved the execution of the sunnylink.py script to the background during launch to prevent blocking other tasks.
* Fix for issue #19776
PyJWT 2.0.0 does not return `bytes` for `encode()` instead returns `str`. So converted the `str` to `bytes` and returned the resulting value
* added check for jwt.encode return type
* Update __init__.py
* Updated with suggested change
* Test to check return type of get_token()
The `get_token()` must return a `str` but for PyJWT version < 2.0.0 the `jwt.encode()` returns `bytes`. This test is to make sure if token returned by `get_token()` is `str`.
* Update test_get_token.py
* Update test_get_token.py
* Delete test_get_token.py
Co-authored-by: Willem Melching <willem.melching@gmail.com>
* use the openpilot/persist directory on PC
* manager runs on mac
* sim runs w/o carla
* fix params location in test
* that rmtree can fail and it's okay
* refactor params clear functionality
* set PARAMS_PATH