Skip to content

refactor(experimental-tree)!: decouple ISharedTree from ISharedObject#26722

Open
tylerbutler wants to merge 1 commit intotylerbu/experimental-tree-deprecatefrom
tylerbu/experimental-tree-breaking
Open

refactor(experimental-tree)!: decouple ISharedTree from ISharedObject#26722
tylerbutler wants to merge 1 commit intotylerbu/experimental-tree-deprecatefrom
tylerbu/experimental-tree-breaking

Conversation

@tylerbutler
Copy link
Member

Summary

Breaking changes to the @fluid-experimental/tree alpha API surface to remove DDS infrastructure types:

  • ISharedTree now extends IFluidLoadable + IEventProvider<ISharedTreeEvents> instead of ISharedObject<ISharedTreeEvents>. Members from IChannel (isAttached, getAttachSummary, summarize, connect, getGCData, attributes, bindToContext) are no longer available on the interface.
  • ISharedTreeEvents now extends IErrorEvent instead of ISharedObjectEvents. The pre-op and op event signatures are no longer available (these were documented as internal implementation details).
  • Event name fix: 'appliedSequencedEdit' renamed to 'sequencedEditApplied' to match the actual emitted event name (SharedTreeEvent.SequencedEditApplied).
  • Internal ISharedTreeEvents renamed to ISharedTreeInternalEvents (not part of public API).

This removes SharedObject, ISharedObject, ISharedObjectEvents, IChannel, and related DDS infrastructure types from the alpha API surface. Part of the custom DDS removal effort (#26184).

Depends on: #26721

Test plan

  • Build passes
  • CI passes
  • API reports regenerated and reviewed

BREAKING CHANGES:
- ISharedTree now extends IFluidLoadable + IEventProvider<ISharedTreeEvents>
  instead of ISharedObject<ISharedTreeEvents>. Members from IChannel
  (isAttached, getAttachSummary, summarize, connect, getGCData,
  attributes, bindToContext) are no longer available on ISharedTree.
- ISharedTreeEvents now extends IErrorEvent instead of
  ISharedObjectEvents. The pre-op and op event signatures from
  ISharedObjectEvents are no longer available.
- ISharedTreeEvents event name fixed: 'appliedSequencedEdit' renamed
  to 'sequencedEditApplied' to match the actual emitted event.
- ISharedTreeEvents renamed to ISharedTreeInternalEvents (internal).
  The public ISharedTreeEvents is now defined in ISharedTree.ts.

These changes remove SharedObject, ISharedObject, ISharedObjectEvents,
IChannel, and related DDS infrastructure types from the alpha API
surface of @fluid-experimental/tree.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant