New and Noteworthy
Bundling the EDT library
This release bundles the EDT library (`edtlib`) from Zephyr 3.3.0, instead of installing the `devicetree` package from [PyPI](https://pypi.org/project/devicetree/): this approach allows to update the library implementation and API `dtsh` can depend on more frequently and reliably.
See [5e803eb ci: bundle devicetree Python package](https://github.com/dottspina/dtsh/commit/5e803ebdd3482db75dc752baa3cca6866750eff5).
Prefer gnureadline on macOS
On BSD-like systems (e.g. macOS), `dtsh` will try to install the [gnureadline](https://pypi.org/project/gnureadline/) package, and to load the `readline` implementation from there instead of from the Python standard library.
Should improve the overall user experience on these platforms.
See [14dc590 rl: do not assume readline is really a standard Python package](https://github.com/dottspina/dtsh/commit/14dc590db1dc1cba98d74143e7396bbe128ebd68).
Fix Python type hinting
Type hinting in `dtsh` should:
- be compatible with Python 3.8 (Zephyr minimal requirement)
- try to be compatible with at least Python 3.9
Alternative syntax for unions (e.g `T1 | T2`) requires Python 3.10: rewrite occurrences to Unions or Optionals.
Subscripting builtin classes (e.g. `list[T]`) requires Python 3.9: rewrite occurrences using the `typing` package (e.g. `typing.List[T]`), even if Python 3.9+ in turn deprecates this use of the `typing` package in favor of subscripting the builtin types (sic).
`dtsh` should now run fine on Python 3.8+ as expected.
See [aa0a96b ci: type hinting should be compatible with Python 3.8](https://github.com/dottspina/dtsh/commit/aa0a96b7091c70a5941a0f65fda5fbc432e17756).
Platform dependent paths to configuration directory and files
See [3c59fb0 config: expected configuration paths should be platform dependent](https://github.com/dottspina/dtsh/commit/3c59fb0121e731d3de3b7658610124a7280a4f09).