software-mansion / software-mansion/react-native-executorch

Tracking: remove @deprecated symbols at 1.0.0

Open
#1,213 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

improvement refactoring
Dominant language
TypeScript
Stars
1.7k
Forks
96
Avg merge
20h 51m
Merged PRs (30d)
59

Description

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.)

Additionally:

  • Remove all unused repositories from Hugging Face.

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.

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

Re-run grep -rn "@deprecated" src against the current main branch, then inspect the listed symbols in src/types/llm.ts and src/constants/modelUrls.ts and review the unused Hugging Face repositories. Done means the tracked deprecated symbols and unused repositories are removed, their stated replacements remain available, and the tracker is updated before the 1.0.0 release.

Written by the indexing model from the issue text.

Assessment

Tech stack
react-native, typescript
Domain
api
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.