Skip to content

Releases: 2devs-team/reactter

v7.3.0

01 Aug 19:07
Compare
Choose a tag to compare

Breakings

Enhancements

  • feat(extensions): Add id parameter to watch method.
  • feat(widgets): Add the RtWatcher widget. It's a experimental widget for watching state and rebuilding when the state watched changes.

Fixes

  • **...
Read more

v7.2.0

29 Jun 06:16
Compare
Choose a tag to compare

Breakings

  • refactor(core,hooks,test): Deprecate and replace some enums and methods on Lifecycle to use the right concept.
    • Deprecated Lifecycle.initialized, use Lifecycle.created instead.
    • Deprecated Lifecycle.destroyed, use Lifecycle.deleted instead.
    • Deprecated onInitialized method of LifecycleObserver, use onCreated method instead.
    • Deprecated onDestroyed method of LifecycleObserver, use onDeleted method instead.
  • refactor(widgets): Update ReactterProvider to use ReactterProvider.init constructor instead of init property.

Enhancements

  • feat(core): Add Reactter.hasRegister method to check if the dependency is registered in Reactter.
  • refactor(framework): Improve lazy loading performance in ProviderImpl, update implementation to reduce unnecessary checks and streamline widget rendering.

Fixes

  • fix(core): Prevent all ReactterDependency events from being deleted after deregistering a dependency.
    • Update offAll method in EventHandler to support generic removal.
  • fix(hooks): Ensure that the callback is executed by the dependencies of UseEffect.
  • refactor(hooks): Improve error handling in UseEffect.

Internal

  • refactor(core,framework,hooks): Update dependencyInjection getter names in Reactter codebase.
  • refactor(framework,test): Rename reactter_instance to reactter_dependency and fix imports and exports.
  • doc(hooks): Update UseReducer and UseState documentation to improve clarity and consistency.
  • test(core,hooks): Rename some files and update the descriptions.
  • test(core): Add Reactter.hasRegister test.
  • refactor: Remove unnecessary 'late' modifier in TestController.
  • test: Add comparable test cases for Args.
  • refactor: 📝 Improve some comments and documentation for clarity and consistency.
  • test: 📝 Update the descriptions of some test for clarity and consistency.
  • test(widgets): Add test case for nullish dependency obtained from context.
  • test(widgets): Add test case for getting dependency form ReactterProvider siblings.
  • refactor: Resolve lints and formatting issues.

Full Changelog: v7.1.0...v7.2.0

v7.1.0

26 Jun 08:28
Compare
Choose a tag to compare

Breakings

Internal

  • refactor(core,framework,hooks,test): Deprecate and replace some classes and methods to use the right concept.
    • Renamed InstanceManager class to DependencyInjection.
    • Renamed EventManager class to EventHandler.
    • Renamed StateManager class to StateManagement.

Full Changelog: v7.0.1...v7.1.0

v7.0.1

09 Apr 00:13
Compare
Choose a tag to compare

Internal

  • test: Refactor and structure examples.
  • doc: Update ReactterWatcher builder comments for clarity.

Full Changelog: v7.0.0...v7.0.1

v7.0.0

21 Mar 00:42
0c283c1
Compare
Choose a tag to compare

Enhancements

  • feat(core, framework): Add Reactter.batch and Reactter.untracked methods.
    • Reactter.batch hepls to execute the given callback function within a batch operation. A batch operation allows multiple state changes to be grouped together, ensuring that any associated side effects are only triggered once, improving performance and reducing unnecessary re-renders.
    • Reactter.untracked hepls to execute the given callback function without tracking any state changes. This means that any state changes that occur inside the callback function will not trigger any side effects.
  • refactor(framework): Refactor lifecycle event handling and add lifecycle observer interface.
  • refactor(core, framework, types): Add LogLevel enum and update defaultLogWriterCallback signature.
  • refactor(hooks): Improve UseEffect performance and readability.
  • feat(framework, widgets): Add ReactterProvider.lazy constructor for lazy instance initialization.
  • refactor(widgets): Add idproperty to ReactterComponent for debugging information.

Breakings

Fixes

  • fix(obj): Fix equality comparison in ObjBase class.
  • fix(core): Resolve event for both types(instanceRef, instanceObj) and log event error.
  • fix(core): Find the instance registered by the instance manager when searching for the extended class.
  • refactor(core): Fix out-of-bounds index on getHashCodeRefAt method.

Internal

  • refactor(framework, widgets, test): Change the position of InstanceContextBuilder(InstanceChildBuilder now) arguments.
  • refactor(framework, widgets, test): Improve framework structure and simplify the ReactterProvider code.
  • refactor: Refactor file structure and imports.
  • refactor(core, framework, hooks, signal): Rename variables of ReactterZone and improve ReactterState implementation.
  • refactor(test): Add lazyState, untracked and batch tests.
  • refactor(core, test): Fix lifecycle event handling and add lifecycle_observer test.
  • refactor(core, framework, test): Refactor event manager and remove unused code for 100% coverage.
  • refactor(core, framework): Add BindingZone class and update references.
  • fix(core): Fix generic type constraint in _getInstanceRef method.
  • refactor(core): Refactor event handling logic and optimize listener removal.
  • test(core, hooks): Add tests for signal usage on instance and binding to another instance.
  • test(widgets): Add ReactterProvider.lazy tests, update ReactterComponent tests and add LifecycleObserver to TestController.
  • fix(example): Update dependencies and fix code formatting on examples.

What's Changed

Full Changelog: https://git...

Read more

v6.2.0

09 Jan 17:39
Compare
Choose a tag to compare

Breakings

Internal

  • doc: Improve README.
  • fix(example): Reset doneCount when clear todo completed.

Full Changelog: v6.1.0...v6.2.0

v6.1.0

22 Dec 19:45
Compare
Choose a tag to compare

Enhancements

  • feat(framework, widgets, extensions): Add ReactterSelector widget and context.select method extension.
    • ReactterSelector and context.select help to control the rebuilding of widget tree using a Selector methods that allows to select a state specific for listening, and return a computed value.
  • feat(widgets): Add ReactterScope Widget.
    If ReactterProvider.contextOf doesn't have a type defined, use ReactterScope to work correctly.

Breakings

Fixes

  • fix(widgets): Notify ReactterWatcher has changed when available.
  • fix(framework): Remove UseWen asynchronously when call markNeedsNotifyDependents through its changes.

Internal

  • perf(framework): Add ReactterNotifier to manage events.
  • refactor(widgets): Improve ReactterProvider code.
  • perf(extensions, framework, widgets): Improve performance of context.watch.
  • refactor(types): Add WatchState and SelectComputeValue types.
  • refactor(framework): Improve message error about notifyListeners of ReactterNotifier.
  • feat(framework, widgets, extensions): Improve managing dependency.
  • test(framework, widgets, hooks): Fix some part for test coverage.
  • test: Add context.select and ReactterSelector test.
  • doc: Fix some code documentation.
  • refactor(example): Improve api example.
  • doc: Add documention about new features.

Full Changelog: v6.0.2...v6.1.0

v6.0.2

27 Oct 21:34
Compare
Choose a tag to compare

Fixes

  • fix(signal): Add missing getters to Signal of list type.

Full Changelog: v6.0.1...v6.0.2

v6.0.0

23 Oct 23:43
e7a9b54
Compare
Choose a tag to compare

Enhancements

Breakings

Internal

  • refactor(framework, hooks, test): Improve code structure and how to attach an instance to states using ReactterZone and structure code of ReactterState.
  • refactor(example): Improve examples using the new features.
  • test(framework, widgets, hooks): Add some tests about ReactterInstanceManager, ReactterInstance, UseInstance
  • test(framework): Improve tests.
  • test(framework): Add Reactter.destroy test.
  • test(memo): Add Memo and MemoInterceptor test.
  • test(args): Add Args test.
  • test(hooks): Add UseAsyncState.withArg test.
  • test(hooks): Add UseInstance test.
  • fix(test): Fix grammar of test description.

What's Changed

New Contributors

Read more

v5.1.2

09 Aug 19:33
Compare
Choose a tag to compare

Fixes

  • refactor(hooks): Add const to ReactterAction and ReactterActionCallable.

Internal

  • doc: Change ROADMAP.
  • refactor(example): Improve code and fix some issues.
  • refactor(example): Remove const keyword for zapp compatibility.

Full Changelog: v5.1.1...v5.1.2