Skip to content

Releases: microsoft/FluidFramework

Fluid Framework v2.0.0-internal.5.4.0 (minor)

03 Aug 22:04
1e991af
Compare
Choose a tag to compare

Changes in Fluid Framework v2.0.0-internal.5.4.0

Deprecate Internal TelemetryLogger Implementations

This change deprecates our internal TelemetryLogger implementations and unifies our exported and consumed surface area on our telemetry interfaces.

For the deprecated implementations the following replacement function should be used:

  • replace ChildLogger.create, new TelemetryNullLogger, and new BaseTelemetryNullLogger with createChildLogger
  • replace new MultiSinkLogger with createMultiSinkLogger
  • replace TelemetryUTLogger with MockLogger
  • DebugLogger.create will be made internal with no intended replacement

ILoaderOptions.cache has been deprecated

ILoaderOptions.cache has been deprecated and will be removed in a future release, as well as all caching functionality of containers. Cache support will be removed soon, please try not to rely on caching, and inform us if you cannot do so.

Remove support for Global Fields

Support for Global fields has been removed.

Some interval-related APIs are deprecated

The following APIs are now deprecated from IntervalCollection:

  • findOverlappingIntervals and gatherIterationResults - these functions are moved to the OverlappingIntervalsIndex. Users are advised to independently attach the index to the collection and utilize the API accordingly, for instance:

    const overlappingIntervalsIndex = createOverlappingIntervalsIndex(
      client,
      helpers
    );
    collection.attachIndex(overlappingIntervalsIndex);
    const result1 = overlappingIntervalsIndex.findOverlappingIntervals(
      start,
      end
    );
    
    const result2 = [];
    overlappingIntervalsIndex.gatherIterationResults(result2, true);
  • CreateBackwardIteratorWithEndPosition, CreateBackwardIteratorWithStartPosition, CreateForwardIteratorWithEndPosition and CreateForwardIteratorWithStartPosition - only the default iterator will be supported in the future, and it will no longer preserve sequence order.

    Equivalent functionality to these four methods is provided by IOverlappingIntervalIndex.gatherIterationResults.

  • previousInterval and nextInterval - These functionalities are moved to the EndpointIndex. Users are advised to independently attach the index to the collection and utilize the API accordingly, for instance:

    const endpointIndex = createEndpointIndex(client, helpers);
    collection.attachIndex(endpointIndex);
    
    const result1 = endpointIndex.previousInterval(pos);
    const result2 = endpointIndex.nextInterval(pos);

ContainerRuntime.reSubmitFn is deprecated:

ContainerRuntime.reSubmitFn is deprecatedsince this functionality needs not be exposed, and we are refactoring the signatures of related code internally.

Old SchemaBuilder APIs removed

Remove old SchemaBuilder APIs in favor of Schema2 design.

Fluid Framework v2.0.0-internal.4.4.4 (patch)

03 Aug 21:36
76c5c44
Compare
Choose a tag to compare

What's Changed

  • Port 16649 to patch release 4.4.4 #16701
  • [bump] client: 2.0.0-internal.4.4.3 => 2.0.0-internal.4.4.4 (patch) #16599

Full Changelog: client_v2.0.0-internal.4.4.3...client_v2.0.0-internal.4.4.4

build-tools v0.22.0 (minor)

02 Aug 22:22
a3a4839
Compare
Choose a tag to compare

This is a minor release.

Fluid Framework v2.0.0-internal.5.3.2 (patch)

27 Jul 21:20
6f0b169
Compare
Choose a tag to compare

What's Changed

  • Fix handling of SharedDirectory ops on subdirs created on a detached data store #16582
  • [bump] client: 2.0.0-internal.5.3.1 => 2.0.0-internal.5.3.2 (patch) #16539

Full Changelog: client_v2.0.0-internal.5.3.1...client_v2.0.0-internal.5.3.2

Fluid Framework v2.0.0-internal.4.4.3 (patch)

27 Jul 19:46
af1ca62
Compare
Choose a tag to compare

What's Changed

  • Fix handling of SharedDirectory ops on subdirs created on a detached data store #16583
  • [bump] client: 2.0.0-internal.4.4.2 => 2.0.0-internal.4.4.3 (patch) #16525

Full Changelog: client_v2.0.0-internal.4.4.2...client_v2.0.0-internal.4.4.3

Fluid Framework v2.0.0-internal.5.3.1 (patch)

24 Jul 19:17
1853acd
Compare
Choose a tag to compare

What's Changed

  • Port nilUuid removal to 5.3 #16523
  • [bump] client: 2.0.0-internal.5.3.0 => 2.0.0-internal.5.3.1 (patch) #16384

Full Changelog: client_v2.0.0-internal.5.3.0...client_v2.0.0-internal.5.3.1

Fluid Framework v2.0.0-internal.4.4.2 (patch)

22 Jul 00:29
6785c5c
Compare
Choose a tag to compare

What's Changed

  • Port nilUuid removal to 4.4 #16521
  • [bump] client: 2.0.0-internal.4.4.1 => 2.0.0-internal.4.4.2 (patch) #15995

Full Changelog: client_v2.0.0-internal.4.4.1...client_v2.0.0-internal.4.4.2

Fluid Framework v2.0.0-internal.5.3.0 (minor)

15 Jul 01:11
041e51a
Compare
Choose a tag to compare

Changes in Fluid Framework v2.0.0-internal.5.3.0

This is a minor release that contains deprecations and new features.

IDeltaManager members disposed and dispose() deprecated

Directly calling dispose() on the IDeltaManager puts the system in an inconsistent state, and inspecting the disposed state of the IDeltaManager is not recommended (instead, prefer to inspect either the IContainer.disposed, IContainerRuntime.disposed, or IFluidDataStoreRuntime.disposed depending on your scenario). These members have been deprecated from the interface and will be removed in an upcoming release.

Move closeAndGetPendingLocalState to IContainerExperimental

This change deprecates the experimental method closeAndGetPendingLocalState on IContainer and moves it to IContainerExperimental. IContainerExperimental is an interface that is easily casted to, which enables partners to access experimental features for testing and evaluation. Moving the experimental method off IContainer will reduce exposure and churn on that production interface as we iterate on and finalize our experimental features. Experimental features should not be used in production environments.

New API getRelaySessionInfo in odsp-driver

OdspDocumentServiceFactory and OdspDocumentServiceFactoryCore now provide a new API getRelaySessionInfo to surface relay session info from cache.

New interfaces to discover getRelaySessionInfo API

There are new interfaces IRelaySessionAwareDriverFactory and IProvideSessionAwareDriverFactory in odsp-driver-definitions that enable using the provider pattern to discover the new API getRelaySessionInfo in odsp-driver.

build-tools v0.21.0 (minor)

11 Jul 18:48
4098adf
Compare
Choose a tag to compare

This is a minor release.

Fluid Framework v2.0.0-internal.5.2.0 (minor)

05 Jul 22:36
7981852
Compare
Choose a tag to compare

Changes in Fluid Framework v2.0.0-internal.5.2.0

IConnectionDetailsInternal and IDeltaHandlerStrategy deprecated

The IConnectionDetailsInternal and IDeltaHandlerStrategy interfaces from the @fluidframework/container-definitions package have been deprecated and will be removed in a future release. These are internal-only interfaces and should not be used.

Deprecate unnecessary exports

This change deprecates a number of interfaces in the merge tree package that are not used in the exported apis surface and therefore should not be used.

Deprecate ISegment.parent

This change deprecates the parent property on the ISegment interface. The property will still exist, but should not generally be used by outside consumers.

There are some circumstances where a consumer may wish to know if a segment is still in the underlying tree and were using the parent property to determine that.

Please change those checks to use the following "parent" in segment && segment.parent !== undefined

slide parameter in changeInterval event

The changeInterval event listener has a new parameter "slide" that is true if the event was caused by the interval endpoint sliding from a removed range.

IContainerContext members deprecated

IContainerContext members disposed, dispose(), serviceConfiguration, and id have been deprecated and will be removed in an upcoming release.

disposed - The disposed state on the IContainerContext is not meaningful to the runtime.

dispose() - The runtime is not permitted to dispose the IContainerContext, this results in an inconsistent system state.

serviceConfiguration - This property is redundant, and is unused by the runtime. The same information can be found via deltaManager.serviceConfiguration on this object if it is necessary.

id - The docId is already logged by the IContainerContext.taggedLogger for telemetry purposes, so this is generally unnecessary for telemetry. If the id is needed for other purposes it should be passed to the consumer explicitly.

EventForwarder and IDisposable members deprecated from PureDataObject

The EventForwarder and IDisposable members have been deprecated from PureDataObject and will be removed in an upcoming release. The EventForwarder pattern was mostly unused by the current implementation, and is also recommended against generally (instead, register and forward events explicitly). The disposal implementation was incomplete and likely to cause poor behavior as the disposal was not observable by default. Inheritors of the PureDataObject can of course still implement their own di