This release features the [Pipelined executor](https://libertem.github.io/LiberTEM/api.html#pipelined) for parallel live data processing ([1267](https://github.com/LiberTEM/LiberTEM/pull/1267)). This change greatly improves the processing performance for live data, in particular to support detectors with high data rate. Many thanks to Alexander Clausen and Matthew Bryan for their work! The corresponding capabilities in the [LiberTEM-live](https://github.com/LiberTEM/LiberTEM-live/) package will be released soon and announced separately.
Other improvements
* Support for Python 3.10.
* [NumPy files (NPY)](https://libertem.github.io/LiberTEM/reference/dataset.html#npy-format) for reading NumPy .npy files ([222](https://github.com/LiberTEM/LiberTEM/issues/222), [#1249](https://github.com/LiberTEM/LiberTEM/pull/1249)).
* Support for updated EMPAD XML format, including series ([1259](https://github.com/LiberTEM/LiberTEM/issues/1259), [#1260](https://github.com/LiberTEM/LiberTEM/pull/1260)).
* Integrate [Tracing using opentelemetry](https://libertem.github.io/LiberTEM/debugging.html#tracing) that allows to debug and trace distribted operation of LiberTEM ([691](https://github.com/LiberTEM/LiberTEM/issues/691), [#1266](https://github.com/LiberTEM/LiberTEM/pull/1266)).
* libertem-server picks a free port if the default is in use and no port was specified ([1184](https://github.com/LiberTEM/LiberTEM/pull/1184)).
* [cluster_spec()](https://libertem.github.io/LiberTEM/dev/executors.html#libertem.executor.dask.cluster_spec) now accepts the same CUDA device ID multiple times to spawn multiple workers on the same GPU. This can help increase GPU resource utilisation for some workloads ([1270](https://github.com/LiberTEM/LiberTEM/pull/1270)).
* A few bug fixes
See the [full changelog](https://libertem.github.io/LiberTEM/changelog.html#v0-10-0) for more details!