Skip to content

chore(deps): update dependency dexie to v4.4.2#21046

Open
renovate[bot] wants to merge 1 commit intodevfrom
renovate/dexie-4.x
Open

chore(deps): update dependency dexie to v4.4.2#21046
renovate[bot] wants to merge 1 commit intodevfrom
renovate/dexie-4.x

Conversation

@renovate
Copy link
Copy Markdown
Contributor

@renovate renovate bot commented Apr 17, 2026

This PR contains the following updates:

Package Change Age Confidence
dexie (source) 4.0.74.4.2 age confidence
dexie (source) 4.3.04.4.2 age confidence

Release Notes

dexie/Dexie.js (dexie)

v4.4.2: Dexie.js v4.4.2

Compare Source

This is a maintenance release containing several bug fixes accumulated since v4.4.1.

Related Package Releases

Package Version
dexie 4.4.2
dexie-cloud-addon 4.4.8
dexie-react-hooks 4.4.0
dexie-export-import 4.4.0

Bug Fixes

dexie-cloud-addon
  • fix: Allow anonymous blob download — previously anonymous users could not download offloaded blobs. Also fixes a crash in Service Worker context when Dexie.ignoreTransaction() was called (#​2287)
  • fix: HMR protection of awareness provider — prevents hot module replacement from breaking the Y.js awareness connection in dev environments (9debfc0)
  • fix: Add configurable: true to awareness defineProperty — fixes compatibility issues with certain bundlers and proxies (#​2280)
  • fix: Strip primary key from changeSpecs in update mutations — incorrect inclusion of primary key could cause sync failures in certain edge cases (#​2277)
  • fix: Preserve syncState on logout to prevent spinner — logging out no longer resets sync state, avoiding an unwanted loading spinner on re-login (#​2276)
  • fix: Update wrappedCursor.value in non-blob and error paths in blob resolve middleware (f470167)

Other Changes

  • Upgraded dependencies and fixed npm audit warnings
  • Formatted codebase with Prettier (#​2282)

v4.4.1: Dexie v4.4.1

Compare Source

This release introduces Blob Offloading and String Offloading for Dexie Cloud, enabling efficient handling of large binary and text data. It also includes IDB 3.0 optimizations and several bug fixes.

Related Package Releases

Package Version
dexie 4.4.1
dexie-cloud-addon 4.4.6
dexie-cloud-common 1.0.59
dexie-react-hooks 4.4.0
dexie-export-import 4.4.0

New Features

⚡ IDB 3.0 Optimizations

Leverages IndexedDB 3.0 getAll(options) for more efficient key range queries, reducing overhead for collection operations.

📦 Blob Offloading for Dexie Cloud

Large binary data (Blob, File, ArrayBuffer, TypedArray) is now automatically offloaded to cloud blob storage during sync. Data is stored normally in IndexedDB — offloading happens transparently during the sync process.

  • Automatic offloading: Binaries ≥ 4 KB are offloaded to blob storage during sync
  • Lazy resolution: BlobRefs are resolved back to their original types on first read
  • Optional Lazy blob mode: Configure blobMode: 'lazy' to download blobs on-demand instead of eagerly after sync (default is 'eager')
  • Progress tracking: Observable db.cloud.blobProgress for download progress
import Dexie from 'dexie';
import dexieCloud from 'dexie-cloud-addon';

const db = new Dexie('mydb', { addons: [dexieCloud] });
db.version(1).stores({ photos: '@​id, title' });
db.cloud.configure({ databaseUrl: '...', blobMode: 'eager' });

// Store binary data — syncs normally, offloads transparently
await db.photos.add({
  title: 'Vacation',
  image: new Blob([imageData], { type: 'image/jpeg' })
});
📝 String Offloading for Dexie Cloud

Long strings are now offloaded to blob storage during sync, keeping IndexedDB data compact while preserving full string content in the cloud.

  • Configurable threshold: maxStringLength option (default: 32768 characters)
  • Transparent: Offloaded strings resolve back to regular strings on read
  • IndexedDB unchanged: Full strings remain in local IndexedDB
db.cloud.configure({
  databaseUrl: '...',
  maxStringLength: 32768 // Strings longer than this are offloaded (default)
});

Bug Fixes

  • fix(dexie-export-import): Fix UTF-8 corruption for non-ASCII strings during import (#​2259)
  • fix(dexie-cloud): Always offload Blob/File objects regardless of size (#​2182)
  • fix(react-hooks): Avoid direct React.use access for React < 19
  • fix(dexie): liveQuery could miss to emit values in certain rare circumstances

Other Changes

  • feat(dexie-cloud): Add copy-to-clipboard button for whitelist command (#​2261)
  • Use FinalizationRegistry for Dexie.connections and enforce maxConnections (#​2254)

v4.4.0: Dexie v4.4.0

Compare Source

This release introduces Blob Offloading and String Offloading for Dexie Cloud, enabling efficient handling of large binary and text data. It also includes IDB 3.0 optimizations and several bug fixes.

Related Package Releases

Package Version
dexie 4.4.0
dexie-cloud-addon 4.4.3
dexie-cloud-common 1.0.59
dexie-react-hooks 4.4.0
dexie-export-import 4.4.0

New Features

⚡ IDB 3.0 Optimizations

Leverages IndexedDB 3.0 getAll(options) for more efficient key range queries, reducing overhead for collection operations.

📦 Blob Offloading for Dexie Cloud

Large binary data (Blob, File, ArrayBuffer, TypedArray) is now automatically offloaded to cloud blob storage during sync. Data is stored normally in IndexedDB — offloading happens transparently during the sync process.

  • Automatic offloading: Binaries ≥ 4 KB are offloaded to blob storage during sync
  • Lazy resolution: BlobRefs are resolved back to their original types on first read
  • Optional Lazy blob mode: Configure blobMode: 'lazy' to download blobs on-demand instead of eagerly after sync (default is 'eager')
  • Progress tracking: Observable db.cloud.blobProgress for download progress
import Dexie from 'dexie';
import dexieCloud from 'dexie-cloud-addon';

const db = new Dexie('mydb', { addons: [dexieCloud] });
db.version(1).stores({ photos: '@&#8203;id, title' });
db.cloud.configure({ databaseUrl: '...', blobMode: 'eager' });

// Store binary data — syncs normally, offloads transparently
await db.photos.add({
  title: 'Vacation',
  image: new Blob([imageData], { type: 'image/jpeg' })
});
📝 String Offloading for Dexie Cloud

Long strings are now offloaded to blob storage during sync, keeping IndexedDB data compact while preserving full string content in the cloud.

  • Configurable threshold: maxStringLength option (default: 32768 characters)
  • Transparent: Offloaded strings resolve back to regular strings on read
  • IndexedDB unchanged: Full strings remain in local IndexedDB
db.cloud.configure({
  databaseUrl: '...',
  maxStringLength: 32768 // Strings longer than this are offloaded (default)
});

Bug Fixes

  • fix(dexie-export-import): Fix UTF-8 corruption for non-ASCII strings during import (#​2259)
  • fix(dexie-cloud): Always offload Blob/File objects regardless of size (#​2182)
  • fix(react-hooks): Avoid direct React.use access for React < 19

Other Changes

  • feat(dexie-cloud): Add copy-to-clipboard button for whitelist command (#​2261)
  • Use FinalizationRegistry for Dexie.connections and enforce maxConnections (#​2254)

v4.3.0

Compare Source

v4.2.1: Dexie v4.2.1

Compare Source

New package versions

  • dexie@​4.2.1
  • y-dexie@​4.2.1
  • dexie-cloud-addon@​4.2.2

dexie

dexie-cloud-addon

y-dexie

  • Updated README

Full Changelog: dexie/Dexie.js@v4.2.0...v4.2.1

v4.2.0: Dexie v4.2.0

Compare Source

New Stable Packages

  • dexie@​4.2.0
  • y-dexie@​4.2.0
  • dexie-react-hooks@​4.2.0
  • dexie-cloud-addon@​4.2.0

What's Changed since Latest Stable (dexie@​4.0.11)

  • New add-on "y-dexie" that integrates the powerful Y.js library with dexie.
  • Support "y-dexie" and Y.js in dexie-cloud-addon
  • New hook useDocument() in dexie-react-hooks for Y.js integration.
  • Fix Named Export 'Dexie' Not Found in Production with Vite/Vinxi by @​thijssmudde in #​2155
  • fix: 'Dexie' Not Found in Production with Vite/Vinxi dexie-react-hooks by @​Contraboi in #​2162

New Contributors

Migration from 4.1.x-beta

Dexie 4.1.x has been tagged @next and contained experimental Y.js support. The Y.js support has since been moved into its own add-on 'y-dexie'.

If the built-in Y.js support in dexie@4.1.x has been used, a migration is needed:

  1. npm install y-dexie
  2. Instead of import { DexieYProvider } from 'dexie' --> import { DexieYProvider } from 'y-dexie'
  3. Instead of DexieyYProvider<Y.Doc> --> DexieYProvider.
  4. No need to pass Y to Dexie constructor, but instead, pass the yDexie addon:
    import yDexie from 'y-dexie';
    ...
    const db = new Dexie('foo', { addons: [yDexie] });
    With dexieCloud addon, make sure to pass yDexie first: { addons: [yDexie, dexieCloud] }
  5. Declare Y.Doc properties as prop:Y.Doc instead of just prop:Y
    db.version(1).stores({
      friends: `
        ++id,
        name,
        age,
        friendNotes: Y.Doc` // where friendNotes holds the Y.Doc instance
    });

If you need a sample PR of these changes, have a look at dexie/dexie-cloud-starter#8

Full Changelog: b415d92...a978fc0

v4.0.11: Dexie v4.0.11

Compare Source

Fixes issues #​2103 and #​2113

Make sure to upgrade both dexie and dexie-cloud-addon:

npm install dexie@latest
npm install dexie-cloud-addon@latest

v4.0.10

Compare Source

dexie@​4.0.10

dexie-export-import@​4.1.4

v4.0.9: Dexie v4.0.9

Compare Source

Bugfixes

#​2011: Dexie returns duplicated object after manually deleting the database and re-populate it
#​2064 Failed to execute 'cmp' on 'IDBFactory': The parameter is not a valid key.
#​2073 Uses cmp for sortBy
#​2078 DexiePromise does not have withResolvers
#​2067 useLiveQuery does not update when multiple items are deleted

Note: The Y.js support is released in 4.1.0 in alpha and possible to test but there is still no official release published for it. Also, the API might change from how it is right now. Will need some more testing and documentation before publishing it with release notes

v4.0.8: Dexie v4.0.8

Compare Source

Here's a maintainance release with small things so far.

NOTE: We're also working to release a 4.1 later this summer with CRDT support for rich text editing by providing explicit support for Y.js documents into both Dexie.js and Dexie Cloud (#​1926)

Solved issues

  • #​2001 Typings: circular reference on update
  • #​2004 Add complete ./dist/* to package.json exports
  • #​2026 Typings error with Table.update()
  • #​2011 and #​2012: bulkPut() of multiple objects with same primary key would result i liveQueries showing multiple results instead of the last entry only (which is the correct result).

PRs:

  • #​2006 requireAuth with options. Now possible to provide requireAuth: {email, otp, otpId} instead of just requireAuth: true. Useful when implementing magic link authentication.

dexie-cloud-addon@​4.0.8:

  • Fix the 10-seconds pause issue: fdd9844

Configuration

📅 Schedule: (in timezone Europe/Berlin)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about these updates again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@sonarqubecloud
Copy link
Copy Markdown

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant