Skip to content

Conversation

@github-actions
Copy link
Contributor

@github-actions github-actions bot commented Dec 2, 2025

This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to master, this PR will be updated.

Releases

@pluv/addon-indexeddb@4.0.0

Major Changes

  • df5c39c: Update all packages to be ESM only.

Minor Changes

  • 037074e: Migrated build process from tsup to tsdown.

Patch Changes

  • 2eb5def: Bumped dependencies.
  • Updated dependencies [2eb5def]
  • Updated dependencies [df5c39c]
  • Updated dependencies [037074e]
    • @pluv/client@4.0.0
    • @pluv/crdt@4.0.0

@pluv/client@4.0.0

Major Changes

  • df5c39c: Update all packages to be ESM only.

Minor Changes

  • 037074e: Migrated build process from tsup to tsdown.

Patch Changes

  • 2eb5def: Bumped dependencies.
  • Updated dependencies [2eb5def]
  • Updated dependencies [df5c39c]
  • Updated dependencies [037074e]
    • @pluv/types@4.0.0
    • @pluv/crdt@4.0.0

@pluv/crdt@4.0.0

Major Changes

  • df5c39c: Update all packages to be ESM only.

Minor Changes

  • 037074e: Migrated build process from tsup to tsdown.

Patch Changes

  • 2eb5def: Bumped dependencies.
  • Updated dependencies [2eb5def]
  • Updated dependencies [df5c39c]
  • Updated dependencies [037074e]
    • @pluv/types@4.0.0

@pluv/crdt-loro@4.0.0

Major Changes

  • df5c39c: Update all packages to be ESM only.

Minor Changes

  • 037074e: Migrated build process from tsup to tsdown.

Patch Changes

  • 2eb5def: Bumped dependencies.
  • Updated dependencies [2eb5def]
  • Updated dependencies [df5c39c]
  • Updated dependencies [037074e]
    • @pluv/types@4.0.0
    • @pluv/crdt@4.0.0

@pluv/crdt-yjs@4.0.0

Major Changes

  • df5c39c: Update all packages to be ESM only.

Minor Changes

  • 037074e: Migrated build process from tsup to tsdown.

Patch Changes

  • 2eb5def: Bumped dependencies.
  • Updated dependencies [2eb5def]
  • Updated dependencies [df5c39c]
  • Updated dependencies [037074e]
    • @pluv/types@4.0.0
    • @pluv/crdt@4.0.0

eslint-config-pluv@4.0.0

Major Changes

  • df5c39c: Update all packages to be ESM only.

Patch Changes

@pluv/io@4.0.0

Major Changes

  • df5c39c: Update all packages to be ESM only.

  • c142910: ### Breaking Changes

    Updated jose from jose@^5 to jose@^6.

  • 07e2a1e: ### Breaking Changes

    Split onDestroy into onRoomDestroyed and onStorageDestroyed

    The onDestroy event handler has been split into two separate handlers to provide better control over when storage is saved:

    • onRoomDestroyed: Fires whenever a room is destroyed. This event no longer includes encodedState to prevent accidentally saving empty or uninitialized storage data.

    • onStorageDestroyed: Only fires when the storage document is about to be destroyed after it has been initialized via initializeSession. This event includes encodedState and should be used for saving storage to your database.

      Migration Guide:

      Before:

      io.server({
          onDestroy: async ({ encodedState, room }) => {
              // This could receive null/empty encodedState if storage wasn't initialized
              await saveToDatabase(room, encodedState);
          },
      });

      After:

      io.server({
          onRoomDestroyed: async ({ room }) => {
              // Room destroyed - use for cleanup if needed
              await cleanupRoom(room);
          },
          onStorageDestroyed: async ({ encodedState, room }) => {
              // Only fires when storage was initialized via initializeSession
              // Safe to save to database
              await saveToDatabase(room, encodedState);
          },
      });

      Type Changes:

    • IORoomListenerEvent now includes encodedState: string | null

    • IORoomDestroyedEvent is a new type that does NOT include encodedState

    • onRoomDeleted now uses IORoomDestroyedEvent instead of IORoomListenerEvent

Minor Changes

  • 037074e: Migrated build process from tsup to tsdown.

Patch Changes

  • 2eb5def: Bumped dependencies.
  • Updated dependencies [2eb5def]
  • Updated dependencies [df5c39c]
  • Updated dependencies [037074e]
    • @pluv/types@4.0.0
    • @pluv/crdt@4.0.0

@pluv/persistence-cloudflare-transactional-storage@4.0.0

Major Changes

  • df5c39c: Update all packages to be ESM only.

Minor Changes

  • 037074e: Migrated build process from tsup to tsdown.

Patch Changes

  • 2eb5def: Bumped dependencies.
  • Updated dependencies [2eb5def]
  • Updated dependencies [df5c39c]
  • Updated dependencies [c142910]
  • Updated dependencies [037074e]
  • Updated dependencies [07e2a1e]
    • @pluv/types@4.0.0
    • @pluv/io@4.0.0

@pluv/persistence-redis@4.0.0

Major Changes

  • df5c39c: Update all packages to be ESM only.

Minor Changes

  • 037074e: Migrated build process from tsup to tsdown.

Patch Changes

  • 2eb5def: Bumped dependencies.
  • Updated dependencies [2eb5def]
  • Updated dependencies [df5c39c]
  • Updated dependencies [c142910]
  • Updated dependencies [037074e]
  • Updated dependencies [07e2a1e]
    • @pluv/types@4.0.0
    • @pluv/io@4.0.0

@pluv/platform-cloudflare@4.0.0

Major Changes

  • df5c39c: Update all packages to be ESM only.

  • 07e2a1e: ### Breaking Changes

    Split onDestroy into onRoomDestroyed and onStorageDestroyed

    The onDestroy event handler has been split into two separate handlers to provide better control over when storage is saved:

    • onRoomDestroyed: Fires whenever a room is destroyed. This event no longer includes encodedState to prevent accidentally saving empty or uninitialized storage data.

    • onStorageDestroyed: Only fires when the storage document is about to be destroyed after it has been initialized via initializeSession. This event includes encodedState and should be used for saving storage to your database.

      Migration Guide:

      Before:

      io.server({
          onDestroy: async ({ encodedState, room }) => {
              // This could receive null/empty encodedState if storage wasn't initialized
              await saveToDatabase(room, encodedState);
          },
      });

      After:

      io.server({
          onRoomDestroyed: async ({ room }) => {
              // Room destroyed - use for cleanup if needed
              await cleanupRoom(room);
          },
          onStorageDestroyed: async ({ encodedState, room }) => {
              // Only fires when storage was initialized via initializeSession
              // Safe to save to database
              await saveToDatabase(room, encodedState);
          },
      });

      Type Changes:

    • IORoomListenerEvent now includes encodedState: string | null

    • IORoomDestroyedEvent is a new type that does NOT include encodedState

    • onRoomDeleted now uses IORoomDestroyedEvent instead of IORoomListenerEvent

Minor Changes

  • 037074e: Migrated build process from tsup to tsdown.

Patch Changes

  • 2eb5def: Bumped dependencies.
  • Updated dependencies [2eb5def]
  • Updated dependencies [df5c39c]
  • Updated dependencies [c142910]
  • Updated dependencies [037074e]
  • Updated dependencies [07e2a1e]
    • @pluv/persistence-cloudflare-transactional-storage@4.0.0
    • @pluv/types@4.0.0
    • @pluv/crdt@4.0.0
    • @pluv/io@4.0.0

@pluv/platform-node@4.0.0

Major Changes

  • df5c39c: Update all packages to be ESM only.

  • 07e2a1e: ### Breaking Changes

    Split onDestroy into onRoomDestroyed and onStorageDestroyed

    The onDestroy event handler has been split into two separate handlers to provide better control over when storage is saved:

    • onRoomDestroyed: Fires whenever a room is destroyed. This event no longer includes encodedState to prevent accidentally saving empty or uninitialized storage data.

    • onStorageDestroyed: Only fires when the storage document is about to be destroyed after it has been initialized via initializeSession. This event includes encodedState and should be used for saving storage to your database.

      Migration Guide:

      Before:

      io.server({
          onDestroy: async ({ encodedState, room }) => {
              // This could receive null/empty encodedState if storage wasn't initialized
              await saveToDatabase(room, encodedState);
          },
      });

      After:

      io.server({
          onRoomDestroyed: async ({ room }) => {
              // Room destroyed - use for cleanup if needed
              await cleanupRoom(room);
          },
          onStorageDestroyed: async ({ encodedState, room }) => {
              // Only fires when storage was initialized via initializeSession
              // Safe to save to database
              await saveToDatabase(room, encodedState);
          },
      });

      Type Changes:

    • IORoomListenerEvent now includes encodedState: string | null

    • IORoomDestroyedEvent is a new type that does NOT include encodedState

    • onRoomDeleted now uses IORoomDestroyedEvent instead of IORoomListenerEvent

Minor Changes

  • 037074e: Migrated build process from tsup to tsdown.

Patch Changes

  • 2eb5def: Bumped dependencies.
  • Updated dependencies [2eb5def]
  • Updated dependencies [df5c39c]
  • Updated dependencies [c142910]
  • Updated dependencies [037074e]
  • Updated dependencies [07e2a1e]
    • @pluv/types@4.0.0
    • @pluv/crdt@4.0.0
    • @pluv/io@4.0.0

@pluv/platform-pluv@4.0.0

Major Changes

  • df5c39c: Update all packages to be ESM only.

  • 07e2a1e: ### Breaking Changes

    Split onDestroy into onRoomDestroyed and onStorageDestroyed

    The onDestroy event handler has been split into two separate handlers to provide better control over when storage is saved:

    • onRoomDestroyed: Fires whenever a room is destroyed. This event no longer includes encodedState to prevent accidentally saving empty or uninitialized storage data.

    • onStorageDestroyed: Only fires when the storage document is about to be destroyed after it has been initialized via initializeSession. This event includes encodedState and should be used for saving storage to your database.

      Migration Guide:

      Before:

      io.server({
          onDestroy: async ({ encodedState, room }) => {
              // This could receive null/empty encodedState if storage wasn't initialized
              await saveToDatabase(room, encodedState);
          },
      });

      After:

      io.server({
          onRoomDestroyed: async ({ room }) => {
              // Room destroyed - use for cleanup if needed
              await cleanupRoom(room);
          },
          onStorageDestroyed: async ({ encodedState, room }) => {
              // Only fires when storage was initialized via initializeSession
              // Safe to save to database
              await saveToDatabase(room, encodedState);
          },
      });

      Type Changes:

    • IORoomListenerEvent now includes encodedState: string | null

    • IORoomDestroyedEvent is a new type that does NOT include encodedState

    • onRoomDeleted now uses IORoomDestroyedEvent instead of IORoomListenerEvent

Minor Changes

  • 037074e: Migrated build process from tsup to tsdown.

Patch Changes

  • 2eb5def: Bumped dependencies.
  • Updated dependencies [2eb5def]
  • Updated dependencies [df5c39c]
  • Updated dependencies [c142910]
  • Updated dependencies [037074e]
  • Updated dependencies [07e2a1e]
    • @pluv/types@4.0.0
    • @pluv/crdt@4.0.0
    • @pluv/io@4.0.0

@pluv/pubsub-redis@4.0.0

Major Changes

  • df5c39c: Update all packages to be ESM only.

Minor Changes

  • 037074e: Migrated build process from tsup to tsdown.

Patch Changes

@pluv/react@4.0.0

Major Changes

  • df5c39c: Update all packages to be ESM only.

Minor Changes

  • 037074e: Migrated build process from tsup to tsdown.

Patch Changes

  • 2eb5def: Bumped dependencies.
  • Updated dependencies [2eb5def]
  • Updated dependencies [df5c39c]
  • Updated dependencies [037074e]
    • @pluv/client@4.0.0
    • @pluv/types@4.0.0
    • @pluv/crdt@4.0.0

@pluv/types@4.0.0

Major Changes

  • df5c39c: Update all packages to be ESM only.

Minor Changes

  • 037074e: Migrated build process from tsup to tsdown.

Patch Changes

@pluv/tsconfig@4.0.0

@github-actions github-actions bot force-pushed the changeset-release/master branch 7 times, most recently from 89c5c12 to d068506 Compare December 5, 2025 21:14
@github-actions github-actions bot force-pushed the changeset-release/master branch from d068506 to 9996214 Compare December 8, 2025 15:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant