Skip to content

3.2.0-alpha03

Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 24 May 06:31
· 314 commits to master since this release
0c41905

🚀 New Features

  • New plugins: childStorePlugin and storeDelegatePlugin allow you to compose stores into tree-like hierarchies and split responsibilities even more easily. Learn more in the new doc page
  • Let PipelineContext implement new SubscriptionAware interface to allow observing subscribers from within the store
  • Completely new implementation of whileSubscribed plugin based on new SubscriptionAware support, that now includes a small delay for reporting unsubscriptions to avoid wasted resources during configuration changes on Android. Tests for the plugin have been expanded. The delay can be configured via a parameter.
  • implement sample app showcase for the delegated stores feature. It implements a progressive content loading feature with 7 lines of code.
  • update IDE plugin live templates to allow generating plugins for a specific store or general store
  • Use custom, more descriptive exceptions for duplicate store startup

🧨 API Changes

  • remove deprecated parentStore and savedState plugins
  • The recover function is now deprecated in Savers. Instead, a new RecoveringSaver is introduced that does the same thing but works not only in framework code, but when you call save and restore as well. Due to compiler bugs, signatures of some methods had to change, so it may introduce small source breaking changes.

🐞 Bug Fixes

  • add missing name parameter to init plugin
  • add missing DelicateStoreApi to state property
  • await the completion of startup on store test DSL. This should improve test stability.
  • add interruption support to blocking file IO calls in save state plugin
  • fix no message when duplicate plugin is installed in store. Previously it would throw cryptic "kotlin.Unit"
  • fix bogus compiler errors with usages of inline in Saver overloads
  • fix clipboard copy not working in the debugger

Dependencies

  • Kotlin 2.2-RC
  • CMP 1.8.1

❔ Other

  • update android compile sdk to 36
  • remove and re-create android keystore. Make sample keystore optional for publishing.
  • Update ConnectScreen ui, use ImageVector logo (#145)
  • bump actions/upload-artifact from 4.6.1 to 4.6.2 (#144)
  • add rules for AI
  • cleanup code and address deprecations
  • add tests for store lifecycle
  • update docusaurus
  • improve test gradle task output
  • tests for child stores and delegates
  • write tests for the new whileSubscribed plugin
  • update docs website title style

📚 Docs

  • add documentation for delegated stores
  • document store delegate and child stores code
  • update documentation of whileSubscribed plugin and composable stores

New Contributors

Full Changelog: 3.2.0-alpha01...3.2.0-alpha03