ReleaseMicrosoftMicrosoftpublished Apr 28, 2026seen 5d

microsoft/FluidFramework client_v2.100.0

microsoft/FluidFramework

Open original ↗

Captured source

source ↗
published Apr 28, 2026seen 5dcaptured 8hhttp 200method plain

Fluid Framework v2.100.0 (minor)

Repository: microsoft/FluidFramework

Tag: client_v2.100.0

Published: 2026-04-28T15:51:01Z

Prerelease: no

Release notes:

Contents

  • [🚨 Breaking Changes](#user-content--breaking-changes)
  • [Node 22 is now the minimum supported Node.js version (#27116)](#user-content-node-22-is-now-the-minimum-supported-nodejs-version-27116)
  • [Container runtime instantiation now requires navigator to be defined in the runtime environment (#27010)](#user-content-container-runtime-instantiation-now-requires-navigator-to-be-defined-in-the-runtime-environment-27010)
  • [✨ New Features](#user-content--new-features)
  • [Add SchemaFactoryAlpha.stagedOptionalRecursive for recursive staged-optional fields (#27042)](#user-content-add-schemafactoryalphastagedoptionalrecursive-for-recursive-staged-optional-fields-27042)
  • [🌳 SharedTree DDS Changes](#user-content--sharedtree-dds-changes)
  • [Fixed incremental summary bug in SharedTree that may cause repeated summary failures eventually leading to document corruption (#26990)](#user-content-fixed-incremental-summary-bug-in-sharedtree-that-may-cause-repeated-summary-failures-eventually-leading-to-document-corruption-26990)
  • [⚠️ Deprecations](#user-content-️-deprecations)
  • [Deprecate ITelemetryLoggerExt methods and related types (#26912)](#user-content-deprecate-itelemetryloggerext-methods-and-related-types-26912)
  • [Legacy API Changes](#user-content-legacy-api-changes)
  • [Remove IIdCompressorCore from legacy API surface (#27146)](#user-content-remove-iidcompressorcore-from-legacy-api-surface-27146)

🚨 Breaking Changes

Node 22 is now the minimum supported Node.js version (#27116)

All Fluid Framework client packages now require Node.js 22 or later. This aligns with the standing Node upgrade policy as Node 20 reaches end-of-life on April 30, 2026.

Change details

Commit: `e8214d2`

Affected packages:

  • @fluid-example/table-document
  • @fluid-experimental/attributor
  • @fluid-experimental/data-object-base
  • @fluid-experimental/data-objects
  • @fluid-experimental/dds-interceptions
  • @fluid-experimental/ink
  • @fluid-experimental/last-edited
  • @fluid-experimental/odsp-end-to-end-tests
  • @fluid-experimental/oldest-client-observer
  • @fluid-experimental/ot
  • @fluid-experimental/pact-map
  • @fluid-experimental/property-changeset
  • @fluid-experimental/property-common
  • @fluid-experimental/property-dds
  • @fluid-experimental/property-properties
  • @fluid-experimental/sequence-deprecated
  • @fluid-experimental/sharejs-json1
  • @fluid-experimental/tree
  • @fluid-internal/client-utils
  • @fluid-internal/platform-dependent
  • @fluid-internal/presence-definitions
  • @fluid-internal/presence-runtime
  • @fluid-internal/replay-tool
  • @fluid-private/test-dds-utils
  • @fluid-private/test-loader-utils
  • @fluid-tools/fetch-tool
  • @fluidframework/agent-scheduler
  • @fluidframework/app-insights-logger
  • @fluidframework/aqueduct
  • @fluidframework/azure-client
  • @fluidframework/azure-end-to-end-tests
  • @fluidframework/cell
  • @fluidframework/container-definitions
  • @fluidframework/container-loader
  • @fluidframework/container-runtime
  • @fluidframework/container-runtime-definitions
  • @fluidframework/core-interfaces
  • @fluidframework/core-utils
  • @fluidframework/counter
  • @fluidframework/datastore
  • @fluidframework/datastore-definitions
  • @fluidframework/debugger
  • @fluidframework/devtools
  • @fluidframework/devtools-core
  • @fluidframework/driver-base
  • @fluidframework/driver-definitions
  • @fluidframework/driver-utils
  • @fluidframework/driver-web-cache
  • @fluidframework/file-driver
  • @fluidframework/fluid-runner
  • @fluidframework/fluid-static
  • @fluidframework/fluid-telemetry
  • @fluidframework/id-compressor
  • @fluidframework/legacy-dds
  • @fluidframework/local-driver
  • @fluidframework/map
  • @fluidframework/matrix
  • @fluidframework/merge-tree
  • @fluidframework/odsp-client
  • @fluidframework/odsp-doclib-utils
  • @fluidframework/odsp-driver
  • @fluidframework/odsp-driver-definitions
  • @fluidframework/odsp-urlresolver
  • @fluidframework/ordered-collection
  • @fluidframework/presence
  • @fluidframework/quill-react
  • @fluidframework/react
  • @fluidframework/register-collection
  • @fluidframework/replay-driver
  • @fluidframework/request-handler
  • @fluidframework/routerlicious-driver
  • @fluidframework/routerlicious-urlresolver
  • @fluidframework/runtime-definitions
  • @fluidframework/runtime-utils
  • @fluidframework/sequence
  • @fluidframework/shared-object-base
  • @fluidframework/shared-summary-block
  • @fluidframework/synthesize
  • @fluidframework/task-manager
  • @fluidframework/telemetry-utils
  • @fluidframework/test-runtime-utils
  • @fluidframework/test-utils
  • @fluidframework/tinylicious-client
  • @fluidframework/tinylicious-driver
  • @fluidframework/tool-utils
  • @fluidframework/tree
  • @fluidframework/tree-agent
  • @fluidframework/tree-agent-langchain
  • @fluidframework/tree-agent-ses
  • @fluidframework/type-factory
  • @fluidframework/undo-redo
  • fluid-framework

[⬆️ Table of contents](#user-content-contents)

Container runtime instantiation now requires navigator to be defined in the runtime environment (#27010)

The internal getDeviceSpec() function, which is called during container runtime instantiation to report hardware telemetry, no longer guards against navigator being null or undefined. This means loading a container runtime requires either a browser environment or Node 22+, both of which provide a built-in navigator global. Environments that do not provide navigator (e.g., older versions of Node.js) will encounter a runtime error when instantiating the container runtime.

This requirement aligns with the recent migration of the repo to Node 22 per our standing Node upgrade policy. Node 20 reaches end-of-life on April 30, 2026.

Change details

Commit: `936562b`

Affected packages:

  • @fluidframework/container-runtime

[⬆️ Table of contents](#user-content-contents)

✨ New Features

Add SchemaFactoryAlpha.stagedOptionalRecursive for recursive staged-optional fields (#27042)

SchemaFactoryAlpha.stagedOptionalRecursive(T) is the recursive-type variant of stagedOptional

Excerpt shown — open the source for the full document.

Notability

notability 3.0/10

Routine version release, low impact.