This breaking release is necessary to make the `polars` library an optional dependency. Until now, every codebase that wanted to use the `tum-esm-utils` library would have to use the same major release of `polars`.
The library now has two optional modules: `em27` and `plotting`, for which the dependencies (`polars` and `matplotlib` are not automatically installed). Install them using:
python
pip install "tum-esm-utils[polars]"
pip install "tum-esm-utils[plotting]"
pip install "tum-esm-utils[polars,plotting]"
Due to this change, the base library is kept at ~12MB, including all (sub-)dependencies, and only if you want the plotting and EM27 extras, this grows to ~174MB.
🦞 Breaking changes
_I included many breaking changes here, so there will not be a need for another breaking release soon._
* Module `interferograms` has been renamed `em27` and made optional
* Removed the `context` and `testing` modules: functionality has been moved into `timing` and `files`
* Renamed module `github` to `code`
* Removed unused functionality and changed some return types (see 18 for complete list)
* Dropped Python3.8 support because Matplotlib also dropped it
* Changed from MIT to GPL license
🦚 New features
* Added new optional `plotting` module
* Refactored function to load Proffast2 output files
* Added function to `code` module to load files from GitLab