MergeTree Client Legacy API Removed#22697
Conversation
…to prototype-deprecate-client
…to test/internal-merge-tree-client
…to test/internal-merge-tree-client
⯆ @fluid-example/bundle-size-tests: -123 Bytes
Baseline commit: 99fbaf4 |
…to test/internal-merge-tree-client
7e8d1c7 to
2ae3b9e
Compare
…to test/internal-merge-tree-client
…to test/internal-merge-tree-client
…to test/internal-merge-tree-client
…to test/internal-merge-tree-client
…to test/internal-merge-tree-client
…to test/internal-merge-tree-client
| } from "@fluidframework/sequence/internal"; | ||
|
|
||
| export { | ||
| export type { |
There was a problem hiding this comment.
why this change? seems like SharedString still needs to be usable as a value in public api, e.g. in dynamic DDS creation:
const myNewString = await container.create(SharedString)
There was a problem hiding this comment.
interesting. i don't think i made an direct modifications to this file, maybe an auto-formatter bug. i'll revert.
There was a problem hiding this comment.
this breaks the build. the error doesn't actually call out SharedString. I'll split the import to fix, but odd the autofix does the wrong thing. FYI @Josmithr @tylerbutler
There was a problem hiding this comment.
i also don't think we type test fluid-framework, so nothing catches this.
There was a problem hiding this comment.
this breaks the build. the error doesn't actually call out SharedString. I'll split the import to fix, but odd the autofix does the wrong thing. FYI @Josmithr @tylerbutler
I don't think I've seen the auto-fixer change an export that was not type-only to a type-export before. If it's doing that, we may want to disable auto-fix for that rule.
i also don't think we type test fluid-framework, so nothing catches this.
This seems like a pretty serious oversight in our tooling. We should schedule work for this.
There was a problem hiding this comment.
@Josmithr do you know the right place to file a bug like this, and which team would own it? if you do would you mind filing it, and linking it here?
There was a problem hiding this comment.
Ownership of some of this tooling stuff remains pretty ambiguous (something my team has been pushing on in retrospectives). I would love for there to be more clarity around this for the team.
I'm happy to take on the eslint update (I have another update I want to make in that space anyways). https://dev.azure.com/fluidframework/internal/_workitems/edit/22618
I think Team Sasha/Jason has been owning the type-test infra? Is that right? @jason-ha
There was a problem hiding this comment.
In the past we haven't worried about type testing fluid-framework since it just re-exports APIs that are type-tested in their "real" packages. But that was a long time ago, and we have since stopped using export * so messing up the exports is more likely now. It was also based on the fact that the entire API surface was type-tested, though, and that's no longer the case for most packages which only type-test a subset of their API. It should still be a super-set of what's exposed in fluid-framework, though.
…to test/internal-merge-tree-client
tylerbutler
left a comment
There was a problem hiding this comment.
Minor nit; docs look good.
Co-authored-by: Tyler Butler <tylerbu@microsoft.com>
…to test/internal-merge-tree-client
|
🔗 No broken links found! ✅ Your attention to detail is admirable. linkcheck output |
The `Client` class in the merge-tree package has been removed. Additionally, types that directly or indirectly expose the merge-tree `Client` class have also been removed. The removed types were not meant to be used directly, and direct usage was not supported: - AttributionPolicy - IClientEvents - IMergeTreeAttributionOptions - SharedSegmentSequence - SharedStringClass Some classes that referenced the `Client` class have been transitioned to interfaces. Direct instantiation of these classes was not supported or necessary for any supported scenario, so the change to an interface should not impact usage. This applies to the following types: - SequenceInterval - SequenceEvent - SequenceDeltaEvent - SequenceMaintenanceEvent The initial deprecations of the now changed or removed types were announced in Fluid Framework v2.4.0: [Several MergeTree Client Legacy APIs are now deprecated](https://github.com/microsoft/FluidFramework/blob/main/RELEASE_NOTES/2.4.0.md#several-mergetree-client-legacy-apis-are-now-deprecated-22629) --------- Co-authored-by: Tyler Butler <tylerbu@microsoft.com>
This reverts commit 2aa0b5e.
This reverts commit 2aa0b5e.

The
Clientclass in the merge-tree package has been removed. Additionally, types that directly or indirectly expose the merge-treeClientclass have also been removed.The removed types were not meant to be used directly, and direct usage was not supported:
Some classes that referenced the
Clientclass have been transitioned to interfaces. Direct instantiation of these classes was not supported or necessary for any supported scenario, so the change to an interface should not impact usage. This applies to the following types:The initial deprecations of the now changed or removed types were announced in Fluid Framework v2.4.0:
Several MergeTree Client Legacy APIs are now deprecated