Skip to content

Tracking: remove @deprecated symbols at 1.0.0 #1213

@msluszniak

Description

@msluszniak

Problem description

This issue is the tracking point for @deprecated public API symbols that are still shipped and must be removed when breaking changes are batched at the 1.0.0 release. Without a single tracker, deprecated surface tends to accumulate and undermines the "1.0.0 = API stability" guarantee if it's still carrying aliases.

Symbols to remove at 1.0.0 (each with its replacement):

  • src/types/llm.ts:353topp alias → use topP.
  • src/constants/modelUrls.ts (~lines 30, 64) — non-SpinQuant Llama constants (LLAMA3_2_3B, LLAMA3_2_1B) → use the SpinQuant variants.
  • src/constants/modelUrls.ts (~lines 561, 568) — non-quantized LFM2.5-VL constants → use the *_QUANTIZED variants.
  • src/constants/modelUrls.ts:1204distiluse_base_multilingual_cased_v2 → use the models.text_embedding.*() accessor.

(List captured from grep -rn "@deprecated" src against main @ v0.8.4. Re-run before the 1.0.0 cut to catch any added since, and check the box as each symbol is removed.)

Proposed solution

Attach a 1.0.0 milestone to this issue (and/or a breaking-change label to each PR that removes a symbol) so the entries above are removed together as part of the 1.0.0 API-stability commitment rather than lingering indefinitely. Optionally add a lightweight check that flags newly added @deprecated markers without a target-removal note, so the list stays current.

Alternative solutions

Leave deprecations in place and rely on ad-hoc cleanup. Rejected: deprecated surface tends to accumulate and undermines the "1.0.0 = API stability" guarantee if it's still carrying aliases.

Benefits to React Native ExecuTorch

Keeps the 1.0.0 public surface clean and the stability commitment credible; gives consumers a single reference for what's going away and what to migrate to.

Metadata

Metadata

Assignees

No one assigned

    Labels

    improvementPRs or issues focused on improvements in the current codebaserefactoring

    Type

    No fields configured for Task.

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions