Skip to content

Releases: evoluhq/evolu

evolu@0.7.1

10 Jan 16:48
c3afdda
Compare
Choose a tag to compare

Patch Changes

  • c171392: Run mutate onComplete after React flushSync

    Using mutate onComplete is rare because Evolu updates active queries automatically. We need onComplete typically when dealing with DOM, for example, moving focus for keyboard navigation. For such cases, onComplete must be called when DOM is already updated, and this update ensures it via React flushSync.

evolu@0.7.0

28 Dec 02:58
fa1199d
Compare
Choose a tag to compare

Minor Changes

  • abad8f5: Purge cache on a mutation

    Before this change, Evolu cached all queries forever. Caching forever is not a real issue because, sooner or later, users will reload the tab or browser itself. But UX could have been better. Imagine a situation when a user goes from page A to page B and then back. Without a mutation, everything is OK, and the user will see the valid data from the cache. But when a mutation is made, obsolete data will flash for milliseconds. While this is OK for server-loaded data (better stale than dead), there is absolutely no reason to favor stale over actual data for local-first apps because fetching is super fast and will never fail.

evolu@0.6.0

27 Dec 12:35
67a9501
Compare
Choose a tag to compare

Minor Changes

  • e193754: Replace rfc6902 and immutable-json-patch with custom and much faster algorithm.

    For now, we detect only a change in the whole result and in-place edits. In the future, we will add more heuristics. We will probably not implement the Myers diff algorithm because it's faster to rerender all than to compute many detailed patches. We will only implement a logic a developer would implement manually, if necessary.

evolu@0.5.1

17 Nov 21:18
557fc24
Compare
Choose a tag to compare

Patch Changes

evolu@0.5.0

17 Nov 21:09
ad534b1
Compare
Choose a tag to compare

Minor Changes

  • b957aea: Add has helper

    Helper has filters items with NonNullable props with type refinement. It helps filter yet-to-be-synced data.

evolu@0.4.1

09 Nov 22:39
ad2f17a
Compare
Choose a tag to compare

Patch Changes

evolu@0.4.0

09 Nov 21:48
dd6b716
Compare
Choose a tag to compare

Minor Changes

evolu@0.3.1

25 Oct 23:37
b8c41e4
Compare
Choose a tag to compare

Patch Changes

  • 15fa758: Make useMutation mutate stable

evolu@0.3.0

24 Oct 22:56
7b1c500
Compare
Choose a tag to compare

Minor Changes

  • fcdbff9: Add onComplete to mutate function

evolu@0.2.2

17 Oct 21:01
b4be8af
Compare
Choose a tag to compare

Patch Changes

  • 127f1ae: Add SQLiteError

    This error should happen only in Firefox's private mode, which does not support IndexedDB.