github microsoft/FluidFramework client_v3.1.0
Fluid Framework v3.1.0 (minor)

5 hours ago

Contents

  • 🌳 SharedTree DDS Changes
    • Fix an infinite loop bug in revertTo (#28219)
    • Fix a bug in revertTo (#28202)
    • Fields defined with SchemaFactoryAlpha.identifier() now generate identifiers when omitted (#28178)
    • Support flexible indexers when creating tree indexes (#28210)
  • 🐛 Bug Fixes
    • Fix compact snapshot loading with pooled Node.js buffers (#28203)
  • Legacy API Changes
    • Expose the version mark resolver on IContainerRuntimeBase (#28168)

🌳 SharedTree DDS Changes

Fix an infinite loop bug in revertTo (#28219)

Fixes a bug in UntypedTreeViewAlpha.revertTo which could trigger an infinite loop when called. This bug is not known to cause document corruption.

Change details

Commit: 8c8ca60891d

Affected packages:

  • @fluidframework/tree
  • fluid-framework

⬆️ Table of contents

Fix a bug in revertTo (#28202)

Fixes a bug in UntypedTreeViewAlpha.revertTo which could trigger assert codes 0x7ce, 0x8a1, 0x695, and possibly others. This bug is not known to cause document corruption.

Change details

Commit: acaed12

Affected packages:

  • @fluidframework/tree
  • fluid-framework

⬆️ Table of contents

Fields defined with SchemaFactoryAlpha.identifier() now generate identifiers when omitted (#28178)

Fields defined with SchemaFactoryAlpha.identifier() now correctly generate identifiers when omitted.

Change details

Commit: cf51fdd

Affected packages:

  • @fluidframework/tree
  • fluid-framework

⬆️ Table of contents

Support flexible indexers when creating tree indexes (#28210)

createTreeIndex now accepts the new TreeIndexKeyFieldSelector type: either a pure callback or an object with a get method. This simplifies the factory to two overloads while continuing to support Map and ReadonlyMap values.

Change details

Commit: 3920a9a

Affected packages:

  • @fluidframework/tree
  • fluid-framework

⬆️ Table of contents

🐛 Bug Fixes

Fix compact snapshot loading with pooled Node.js buffers (#28203)

Compact snapshots can now be loaded when their binary data is represented by a Uint8Array view with a non-zero byteOffset. This prevents container load failures in Node.js 24.18 and later, where the larger buffer pool causes more file reads to return pooled buffer views.

Change details

Commit: 64a2289

Affected packages:

  • @fluidframework/odsp-driver

⬆️ Table of contents

Legacy API Changes

Expose the version mark resolver on IContainerRuntimeBase (#28168)

IContainerRuntimeBase now exposes versionMarkResolver: IVersionMarkResolver, the supported access point for the version mark resolver APIs (IVersionMarkResolver, ResolveResult, VersionMarkCapture), which now live in @fluidframework/runtime-definitions. Hosts and data stores obtain the resolver from the runtime instead of the concrete ContainerRuntime class.

ResolveResult's pending and unresolvable results also gain an optional reason?: string, an opaque diagnostic string for logging only. Hosts drive behavior from kind. reason is not a contract and must not be branched on.

Change details

Commit: c1f54db

Affected packages:

  • @fluidframework/runtime-definitions
  • @fluidframework/container-runtime-definitions
  • @fluidframework/container-runtime

⬆️ Table of contents

🛠️ Start Building Today!

Please continue to engage with us on GitHub Discussion and Issue pages as you adopt Fluid Framework!

Don't miss a new FluidFramework release

NewReleases is sending notifications on new releases.