17.3.0
What's Changed
- Introducing State Snapshot feature, providing users with the ability to capture and restore the state of multiple stores within an application. This is particularly useful for scenarios requiring transactional guarantees, enabling users to roll back across various stores. See the docs
- Introducing new Store status signals and some renaming. You can now check if an effect has initialized a store. More info in PR #78
- New
maxLength
option for the history plugin. Users can now set a maximum length for the history, providing better control over memory consumption. If left unspecified, the history will still grow without boundaries, maintaining backward compatibility with version17.*
. Starting from version18
, a defined default value for maxLength will be in place. See the updated docs - You can now directly configure projection functions using
configureIndexedDb
method - Docs have been improved and you can now search the docs using docsearch by algolia
Contributors Notice
For this release, I have taken the time to prepare a good environment for potential contributors and collaborators.
- We have a Code of Conduct
- We have specified Contributing conventions
- We use
Commitlint
+Husky
+Commitizen
to enable conventional commits - We have templates for PRs and Issues
- We use github actions to test and lint the code and to ensure that no PR breaks the tree-shakability of the library
Deprecation Notice
isModified()
is deprecated, usemodified()
instead.markAsUnmodified()
is deprecated, useresetStoreStatus()
instead.setUnmodifiedStatus
is deprecated, usesetInitializedStatus
instead.
Relevant PRs
- feat(core): ✨ Introduce State Snapshot feature in #68
- feat(plugin-status): ✨ enhance store status plugin and improve naming in #78
- feat(plugin-persistence): ✨ include projection in configureIndexedDb in #79
- feat(plugin-history): ✨ introduce pruning for limiting memory usage in #81
- feat(core): ✨ expose StorePlugin type in #82
- docs: 📝 add algolia docsearch support in #84
- docs: 📝 add howtos and improve multiple doc pages in #83
- docs: 📝 add github star button to landing page in #85
- docs(core): 📝 add snapshot doc page in #71
- ci: 🎡 add workflow for running tests and performing checks in #72
- ci: 🎡 specify project in build command in #73
- chore: 🔨 remove eslint-plugin-tree-shaking in #76
- chore: 🔨 add better issue templates in #77
- chore: 🔨 add ressources for contribution in #70
Full Changelog: 17.2.0...17.3.0