FluidFramework

Library for building distributed, real-time collaborative web applications

MIT License

Downloads
1.4M
Stars
4.7K
Committers
246

Bot releases are visible (Hide)

FluidFramework - Fluid Framework v2.0.0-internal.4.3.1 (patch)

Published by github-actions[bot] over 1 year ago

What's Changed

  • [v2int 4.3 port] Don't schedule session refresh timers multiple times (#15596) #15956
  • [v2int 4.3 port] ci: Pin version downloaded by npx lerna (#15922) #15958
  • build(deps): Bump build-tools dependencies in client #15963
  • [bump] client: 2.0.0-internal.4.3.0 => 2.0.0-internal.4.3.1 (patch) #15647

Full Changelog: https://github.com/microsoft/FluidFramework/compare/client_v2.0.0-internal.4.3.0...client_v2.0.0-internal.4.3.1

FluidFramework - build-tools v0.18.2 (patch)

Published by github-actions[bot] over 1 year ago

What's Changed

  • fix: Pin version for npx lerna in build-tools (release branch) #15924

Full Changelog: https://github.com/microsoft/FluidFramework/compare/build-tools_v0.18.1...build-tools_v0.18.2

FluidFramework - build-tools v0.18.1 (patch)

Published by github-actions[bot] over 1 year ago

What's Changed

  • [release/build-tools/0.18] Non-zero exit when there is build error #15918

Full Changelog: https://github.com/microsoft/FluidFramework/compare/build-tools_v0.18.0...build-tools_v0.18.1

FluidFramework - build-tools v0.18.0 (minor)

Published by github-actions[bot] over 1 year ago

This is a minor release.

FluidFramework - Fluid Framework v2.0.0-internal.5.0.0 (major)

Published by github-actions[bot] over 1 year ago

This is a major release that includes breaking changes in addition to deprecations that will take effect in a future major release.

💥 Breaking changes

This release contains the following breaking changes:

IResolvedUrl equivalent to IFluidResolvedUrl

In @fluidframework/driver-definitions IResolvedUrlBase and IWebResolvedUrl have now been removed.

This makes IResolvedUrl and IFluidResolvedUrl equivalent. Since all ResolvedUrls are now FluidResolvedUrls we no longer need to differentiate them. In @fluidframework/driver-utils isFluidResolvedUrl and ensureFluidResolvedUrl have been removed due to this.

@fluidframework/garbage-collector removed

The @fluidframework/garbage-collector package was deprecated in 2.0.0-internal.4.1.0. It has now been removed with the following functions, interfaces, and types in it.

  • runGarbageCollection
  • trimLeadingAndTrailingSlashes
  • trimLeadingSlashes
  • trimTrailingSlashes
  • cloneGCData
  • unpackChildNodesGCDetails
  • unpackChildNodesUsedRoutes
  • removeRouteFromAllNodes
  • concatGarbageCollectionStates
  • concatGarbageCollectionData
  • GCDataBuilder
  • getGCDataFromSnapshot
  • IGCResult

GC interfaces removed from runtime-definitions

The following interfaces available in @fluidframework/runtime-definitions were deprecated in 2.0.0-internal.4.1.0 and are now removed.

  • IGarbageCollectionNodeData
  • IGarbageCollectionState
  • IGarbageCollectionSnapshotData
  • IGarbageCollectionSummaryDetailsLegacy

ensureSynchronizedWithTimeout removed from LoaderContainerTracker

LoaderContainerTracker.ensureSynchronizedWithTimeout has been removed as it is equivalent to LoaderContainerTracker.ensureSynchronized. The timeoutDuration parameter from TestObjectProvider.ensureSynchronized will also be removed. Configure the timeout for the test instead.

Container-loader deprecation removals

The following types in the @fluidframework/container-loader package are not used by, or necessary to use our public api, so have been removed from export in this release:

  • IContainerLoadOptions
  • IContainerConfig
  • IPendingContainerState
  • ISerializableBlobContents

Closing Container no longer disposes

Calling IContainer.close(...) will no longer dispose the container runtime, document service, or document storage service.

If the container is not expected to be used after the close(...) call, replace it instead with a IContainer.dispose(...) call (this should be the most common case). Using IContainer.dispose(...) will no longer switch the container to "readonly" mode and relevant code should instead listen to the Container's "disposed" event.
If you intend to pass your own critical error to the container, use IContainer.close(...). Once you are done using the container, call IContainer.dispose(...).

Please see the Closure section of Loader README.md for more details.

IContainer.dispose is now required

IContainer.dispose is now a required method. This method should dispose any resources and switch the container to a permanently disconnected state.

Please see the Closure section of Loader README.md for more details.

ISummarizerRuntime on/off op required

The on("op") and off("op") methods on ISummarizerRuntime are now required. These listener methods are needed to accurately run summary heuristics.

Driver param removed from appendToMergeTreeDeltaRevertibles

The first parameter, driver, of the function appendToMergeTreeDeltaRevertibles has been removed. Additionally, the interface MergeTreeRevertibleDriver has been simplified, and no longer requires:

  • createLocalReferencePosition
  • localReferencePositionToPosition
  • getPosition
  • getContainingSegment

PureDataObject.getFluidObjectFromDirectory removed

PureDataObject.getFluidObjectFromDirectory was deprecated in a previous release and has been removed.

IProvideContainerRuntime and IContainerRuntime member removed

IProvideContainerRuntime and its IContainerRuntime member were deprecated in a previous release and have been removed. This applies to the ContainerRuntime class as well.

IntervalCollection removed

The exports deprecated in IntervalCollection public export deprecated have been removed.

Internal ITelemetryLogger interface upgraded to ITelemetryLoggerExt

ITelemetryLoggerExt is a replacement for ITelemetryLogger, which adds additional types that can be logged as property values.
This interface is not expected to be used outside the codebase, and all Logger implementations already use the new interface.
In this release, the new type is used throughout the codebase to allow richer instrumentation.

Deprecations

IFluidResolvedUrl Deprecated

IFluidResolvedUrl is now deprecated, all usages should move to IResolvedUrl instead.

FluidFramework - Fluid Framework v2.0.0-internal.4.4.0 (minor)

Published by github-actions[bot] over 1 year ago

This is a minor release.

It contains bug fixes and other internal improvements.

What's Changed

Deprecations

IntervalCollection public export deprecated in @fluidframework/sequence

IntervalCollection has been deprecated in favor of an interface (IIntervalCollection) containing its public API. Several types transitively referenced by IntervalCollection implementation details have also been deprecated: CompressedSerializedInterval, IntervalCollectionIterator, and ISerializedIntervalCollectionV2.

FluidFramework - Fluid Framework v2.0.0-internal.4.3.0 (minor)

Published by jatgarg over 1 year ago

This is a minor release.

It contains bug fixes and other internal improvements.

What's Changed

💥 Breaking changes

  • bigBlobs request handling removed from DataObject

    bigBlobs request handling removed from DataObject

    Previously, DataObject would perform undocumented special handling for requests to it starting with bigBlobs/ to pull objects out of its
    root directory. This special handling has been removed.

2.0.0-internal.4.3.0 Upcoming changes

PureDataObject.getFluidObjectFromDirectory deprecated

`PureDataObject.getFluidObjectFromDirectory` has been deprecated and will be removed in an upcoming release. Instead prefer to 
interface directly with the directory and handles.
FluidFramework - Fluid Framework v2.0.0-internal.4.2.1 (patch)

Published by github-actions[bot] over 1 year ago

What's Changed

  • [Port v2int 4.2] Remove the peer dependencies for @fluidframework/tinylicious-client as they are wrong #15567

Full Changelog: https://github.com/microsoft/FluidFramework/compare/client_v2.0.0-internal.4.2.0...client_v2.0.0-internal.4.2.1

FluidFramework - Fluid Framework v2.0.0-internal.4.2.0 (minor)

Published by github-actions[bot] over 1 year ago

This is a minor release.

It contains bug fixes and other internal improvements.

There are no new deprecations in this release.

FluidFramework - build-tools v0.17.0 (minor)

Published by github-actions[bot] over 1 year ago

This is a minor release.

FluidFramework - patch release client_v2.0.0-internal.3.4.5

Published by chentong7 over 1 year ago

What's Changed

Full Changelog: https://github.com/microsoft/FluidFramework/compare/client_v2.0.0-internal.3.4.4...client_v2.0.0-internal.3.4.5

FluidFramework - client_v2.0.0-internal.4.1.2

Published by chentong7 over 1 year ago

What's Changed

Other changes

Full Changelog: https://github.com/microsoft/FluidFramework/compare/client_v2.0.0-internal.4.1.1...client_v2.0.0-internal.4.1.2

FluidFramework - Fluid Framework v2.0.0-internal.4.1.1 (patch)

Published by markfields over 1 year ago

What's Changed

Full Changelog: https://github.com/microsoft/FluidFramework/compare/client_v2.0.0-internal.4.1.0...client_v2.0.0-internal.4.1.1

FluidFramework - Fluid Framework v2.0.0-internal.4.1.0 (minor)

Published by tylerbutler over 1 year ago

This is a minor release that includes deprecations that will take effect in a future major release as well as new features.

Deprecations

@fluidframework/garbage-collector deprecated

The @fluidframework/garbage-collector package is deprecated with the following functions, interfaces, and types in it. These are internal implementation details and have been deprecated for public use. They will be removed in an upcoming release.

  • runGarbageCollection
  • trimLeadingAndTrailingSlashes
  • trimLeadingSlashes
  • trimTrailingSlashes
  • cloneGCData
  • unpackChildNodesGCDetails
  • unpackChildNodesUsedRoutes
  • removeRouteFromAllNodes
  • concatGarbageCollectionStates
  • concatGarbageCollectionData
  • GCDataBuilder
  • getGCDataFromSnapshot
  • IGCResult

GC interfaces removed from runtime-definitions

The following interfaces available in @fluidframework/runtime-definitions are internal implementation details and have been deprecated for public use. They will be removed in an upcoming release.

  • IGarbageCollectionNodeData
  • IGarbageCollectionState
  • IGarbageCollectionSnapshotData
  • IGarbageCollectionSummaryDetailsLegacy

Some test packages no longer published

These packages were previously published under the @fluidframework scope:

  • @fluidframework/test-end-to-end-tests

ensureSynchronizedWithTimeout deprecated in LoaderContainerTracker

LoaderContainerTracker.ensureSynchronizedWithTimeout is deprecated as it is equivalent to LoaderContainerTracker.ensureSynchronized and will be removed in an upcoming release. The timeoutDuration parameter from TestObjectProvider.ensureSynchronized will also be removed. Please configure the timeout for the test instead.

Container-loader deprecations

The following types in the @fluidframework/container-loader package are not used by, or necessary to use our public api, so will be removed from export in the next major release:

  • IContainerLoadOptions
  • IContainerConfig
  • IPendingContainerState
  • ISerializableBlobContents

Op compression is enabled by default

If the size of a batch is larger than 614kb, the ops will be compressed. After upgrading to this version, if batches exceed the size threshold, the runtime will produce a new type of op with the compression properties. To open a document which contains this type of op, the client's runtime version needs to be at least client_v2.0.0-internal.2.3.0. Older clients will close with assert 0x3ce ("Runtime message of unknown type") and will not be able to open the documents until they upgrade. To minimize the risk, it is recommended to audit existing session and ensure that at least 99.9% of them are using a runtime version equal or greater than client_v2.0.0-internal.2.3.0, before upgrading to 2.0.0-internal.4.1.0.

More information about op compression can be found here.

IntervalConflictResolver deprecation

In SharedString, interval conflict resolvers have been unused since this change, which added support for multiple intervals at the same position. As such, any existing usages can be removed. Related APIs have been deprecated and will be removed in an upcoming release.

Features

Ability to enable grouped batching

The IContainerRuntimeOptions.enableGroupedBatching option has been added to the container runtime layer and is off by default. This option will group all batch messages under a new "grouped" message to be sent to the service. Upon receiving this new "grouped" message, the batch messages will be extracted and given the sequence number of the parent "grouped" message.

Upon enabling this option, if any issues arise, use the Fluid.ContainerRuntime.DisableGroupedBatching feature flag to disable at runtime. This option should ONLY be enabled after observing that 99.9% of your application sessions contains these changes (version "2.0.0-internal.4.1.0" or later). This option is experimental and should not be enabled yet in production. Containers created with this option may not open in future versions of the framework.

This option will change a couple of expectations around message structure and runtime layer expectations. Only enable this option after testing
and verifying that the following expectation changes won't have any effects:

  • batch messages observed at the runtime layer will not match messages seen at the loader layer
  • messages within the same batch will have the same sequence number
  • client sequence numbers on batch messages can only be used to order messages with the same sequenceNumber
  • requires all ops to be processed by runtime layer (version "2.0.0-internal.1.2.0" or later https://github.com/microsoft/FluidFramework/pull/11832)
FluidFramework - client_v2.0.0-internal.4.0.6

Published by markfields over 1 year ago

FluidFramework - benchmark v0.47.0

Published by tylerbutler over 1 year ago

This is a minor release.

FluidFramework - @fluidframework/protocol-definitions v1.2.0

Published by tylerbutler over 1 year ago

This is a minor release.

Deprecations

Deprecate term member from IDocumentAttributes and ISequencedDocumentMessage

This member was related to an experimental feature that did not ship. As a result it is unused/ignored by all consumers.
This change deprecates it, to be removed in a later release.

Deprecate RemoteHelp from MessageType

The RemoteHelp MessageType is no longer used by the server side so it is safe to deprecate this op type.
This change deprecates it, to be removed in a later release.

FluidFramework - server v0.1040.1000 (major)

Published by tylerbutler over 1 year ago

This is a major release.

FluidFramework - Fluid Framework v2.0.0-internal.3.3.2 - deprecated

Published by agarwal-navin over 1 year ago

This version is deprecated. Please use the latest minor for 2.0.0.internal.3.x

FluidFramework - Fluid Framework v2.0.0-internal.3.3.1 - deprecated

Published by agarwal-navin over 1 year ago

This version is deprecated. Please use the latest minor for 2.0.0.internal.3.x

Package Rankings
Top 1.24% on Npmjs.org