Releases: evoluhq/evolu
evolu@0.7.1
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
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
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
Patch Changes
- 02a8c47: Publish README.md
evolu@0.5.0
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
Patch Changes
- 8d29b99: Fix ESM bug
evolu@0.4.0
Minor Changes
- 74a94ee: Add config reloadUrl
evolu@0.3.1
Patch Changes
- 15fa758: Make useMutation mutate stable
evolu@0.3.0
Minor Changes
- fcdbff9: Add onComplete to mutate function
evolu@0.2.2
Patch Changes
-
127f1ae: Add SQLiteError
This error should happen only in Firefox's private mode, which does not support IndexedDB.