microsoft/FluidFramework client_v2.71.0
microsoft/FluidFramework
Captured source
source ↗Fluid Framework v2.71.0 (minor)
Repository: microsoft/FluidFramework
Tag: client_v2.71.0
Published: 2025-11-03T21:41:06Z
Prerelease: no
Release notes:
Contents
- [✨ New Features](#user-content--new-features)
- [delete keyword support for ObjectNodes (#25738)](#user-content-delete-keyword-support-for-objectnodes-25738)
- [🌳 SharedTree DDS Changes](#user-content--sharedtree-dds-changes)
- [Add IndependentTree API (#25785)](#user-content-add-independenttree-api-25785)
✨ New Features
delete keyword support for ObjectNodes (#25738)
Added support for using the delete keyword to remove content under optional fields for ObjectNodes.
// This is now equivalent to node.foo = undefined delete node.foo;
Change details
Commit: `31dca54`
Affected packages:
- @fluidframework/tree
[⬆️ Table of contents](#user-content-contents)
🌳 SharedTree DDS Changes
Add IndependentTree API (#25785)
New IndependentTreeAlpha and IndependentTreeBeta APIs provide similar utility to the existing alpha `IndependentView` API, except providing access to the `ViewableTree`.
This allows for multiple views (in sequence, not concurrently) to be created to test things like schema upgrades and incompatible view schema much more easily (see example below). For IndependentTreeAlpha, this also provides access to exportVerbose and exportSimpleSchema from `ITreeAlpha`.
An example of how to use createIndependentTreeBeta to create multiple views to test a schema upgrade:
const tree = createIndependentTreeBeta();
const stagedConfig = new TreeViewConfiguration({
schema: SchemaFactoryAlpha.types([
SchemaFactory.number,
SchemaFactoryAlpha.staged(SchemaFactory.string),
]),
});
const afterConfig = new TreeViewConfigurationAlpha({
schema: [SchemaFactory.number, SchemaFactory.string],
});
// Initialize tree
{
const view = tree.viewWith(stagedConfig);
view.initialize(1);
view.dispose();
}
// Do schema upgrade
{
const view = tree.viewWith(afterConfig);
view.upgradeSchema();
view.root = "A";
view.dispose();
}
// Can still view tree with staged schema
{
const view = tree.viewWith(stagedConfig);
assert.equal(view.root, "A");
view.dispose();
}Change details
Commit: `21c4245`
Affected packages:
- fluid-framework
- @fluidframework/tree
[⬆️ Table of contents](#user-content-contents)
🛠️ Start Building Today!
Please continue to engage with us on GitHub Discussion and Issue pages as you adopt Fluid Framework!