<!-- Release notes generated using configuration in .github/release.yml at v0.6.5 -->
Highlights
This primary goal of this release is to improve some of the subtle challenges of working with `Proxy` objects. Specifically, that (1) serialization can fail on `Proxy` class attribute access, (2) serializers/compute frameworks will accidentally resolve a `Proxy` instance when doing simple operations like checking types or hashing, and (3) mypy cannot infer the types of most operations on a `Proxy[T]`.
* ProxyStore now uses a new slots-based `Proxy` implementation which will improve serialization compatibility.
* `Store.proxy(..., populate_target=True)` will now cache some attributes of the target object so that calling `hash()` or `isinstance()` on a proxy does not require the proxy to be resolved.
* An FAQ guide has been created to discuss these common pitfalls and their remedies.
* The `proxystore.mypy_plugin`, when enabled, allows mypy to infer attribute types on `Proxy[T]`.
* The `Store` now has a `register` flag for configuring a `Store` instances to always register themselves.
* Added the `StaticLifetime`
Upgrade Steps
bash
pip install --upgrade proxystore or proxystore[all]
What's Changed
Breaking Changes
* Improve flexibility of `Lifetime` protocol and add `StaticLifetime` implementation by gpauloski in https://github.com/proxystore/proxystore/pull/542
Enhancements
* Introduce new slots-based `Proxy` implementation by gpauloski in https://github.com/proxystore/proxystore/pull/539
* Add the `proxystore.mypy` mypy plugin for resolving `Proxy[T]` types by gpauloski in https://github.com/proxystore/proxystore/pull/545
* Add the `register` flag to auto-register a `Store` after initialization by gpauloski in https://github.com/proxystore/proxystore/pull/550
* Support caching target attributes in `Proxy` to avoid resolving when using `hash()` or `isinstance()` by gpauloski in https://github.com/proxystore/proxystore/pull/551
* Generate `Store.__repr__()` from `Store.config()` by gpauloski in https://github.com/proxystore/proxystore/pull/554
Bug Fixes
* Fix incorrect ns to ms conversion in `Metrics` by gpauloski in https://github.com/proxystore/proxystore/pull/538
Documentation
* Add Harish et al featured paper by gpauloski in https://github.com/proxystore/proxystore/pull/537
* Add "latest" DOI badge by gpauloski in https://github.com/proxystore/proxystore/pull/540
* Add an FAQ page and refresh documentation by gpauloski in https://github.com/proxystore/proxystore/pull/546
* Add a Dask Distributed guide by gpauloski in https://github.com/proxystore/proxystore/pull/553
Package Changes
* Remove citation metadata to preserve Zenodo defaults by gpauloski in https://github.com/proxystore/proxystore/pull/541
**Full Changelog**: https://github.com/proxystore/proxystore/compare/v0.6.4...v0.6.5