microsoft / microsoft/FluidFramework

Remove deprecated assert API from @fluidframework/core-utils in 3.10.0

Open
#28,084 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

api deprecation triage
Dominant language
TypeScript
Stars
4.9k
Forks
586
Avg merge
1d 15h
Merged PRs (30d)
146

Description

Deprecated API

Remove the external assert export from @fluidframework/core-utils. This API is available from the package's default and /legacy entry points.

Context

The API is intended only for Fluid Framework client code. An external export creates an API support commitment for functionality that external consumers must not use. PR https://github.com/microsoft/FluidFramework/pull/28080 deprecates the external export and keeps a non-deprecated API at @fluidframework/core-utils/internal for Fluid Framework repository code.

This issue supersedes #28083, which specified the incorrect removal version.

Approach

Remove the external assert export in version 3.10.0. Keep the internal export for Fluid Framework repository code. External consumers must use an assertion utility that is appropriate for their application or throw an Error directly.

Dependencies

Compatibility Concerns

This removal is a compile-time breaking change for consumers that import assert from @fluidframework/core-utils or @fluidframework/core-utils/legacy. It does not change persisted data, loader compatibility, or runtime compatibility. Fluid Framework repository code can continue to import assert from @fluidframework/core-utils/internal.

Phases

  • Deprecate the external API in version 3.0.0 with migration guidance and this issue link.
  • Confirm partner impact and notify affected partners.
  • Stage the removal on a test/breaks/client/3.10.0/ branch.
  • Remove the external export and its compatibility implementation.
  • Update API reports, compatibility tests, documentation, and examples.
  • Add a breaking-change changeset for the removal.

Expected Timeline

Remove the API in version 3.10.0.

Open Questions

None.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing PR 28080 and the @fluidframework/core-utils default, /legacy, and /internal entry points. Search for the external assert export, then check the API reports, compatibility tests, documentation, examples, and breaking-change changeset. Done means the external exports are removed in the 3.10.0 staging branch while the internal export remains available.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
api, release
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.