deprecate-cds-api
Deprecate CDS public API
Automate the standard CDS deprecation workflow for symbols exported from packages/web, packages/mobile, packages/common, packages/web-visualization, or packages/mobile-visualization.
Inputs to confirm first
- What is being deprecated? Component name, hook, prop, or other exported symbol.
- What should consumers use instead? The replacement must be named in JSDoc and in docs
warningtext. - Which major should
@deprecationExpectedRemovaluse? (e.g.v9,v10.) Ask the user to confirm if they have not already stated it. If they want a default, suggest the next major from the relevantpackage.json(see Step 2) and confirm they accept it before editing.
Step 0 — Discover every public export (all packages)
Deprecate the symbol everywhere it is publicly reachable, not only where it is first implemented.
- For each CDS package (
web,mobile,common,web-visualization,mobile-visualization), trace the symbol from that package’spackage.jsonexportsmap → barrel /indexfiles → the module that declares or re-exports the symbol. Grepfor the symbol name underpackages/<name>/src(e.g.export { Foo,export * from,Foo as) to catch re-exports and alternate entry paths.- Every package that publicly exports the symbol must end up with deprecation coverage: primary implementation and any re-export site where your tooling or consumers would not see JSDoc from the source file (add JSDoc on the re-export line or duplicate the tags as needed so imports from
@coinbase/cds-web,@coinbase/cds-mobile,@coinbase/cds-common, etc. all surface the deprecation).
More from coinbase/cds
cds-code
|
10cds-docs
|
6feature-planner
A guided workflow for non-technical contributors (designers, PMs) to describe a feature idea and produce a detailed technical implementation plan for an engineer. Invoke manually with /feature-planner.
3ktlo
Instructions to fetch assigned Linear issues in the current cycle and potentially kick off a development session.
2dev.cds-mobile
USE THIS when asked to work on a new or existing (MOBILE) CDS React component in packages/mobile
2git.repo-manager
Instructions to manage a local cache of GitHub repositories. This would typically done in cases where the user want to perform research/analysis on a repository. Invoke whenever you need to clone a repo that isn't present locally, bring an existing clone up to date, or remove a repo from the cache. This skill handles only the mechanical filesystem/git operations — not research, analysis, or anything about the repo's contents.
2