Replace --bui-surface-1..5 with --bui-bg-neutral-1..5 for both light
and dark themes. --bui-bg-neutral-1 replaces the deprecated --bui-bg-app,
and --bui-bg-neutral-2..5 extend the scale. The old bare --bui-bg-neutral-1..4
entries are removed from the deprecated section since their names are now
reused; the hover/pressed/disabled variants remain deprecated.
Updates colors.stories.tsx, the ESLint rule and tests, and all migration
documentation and the PR description accordingly.
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
Group migrations by family (Surfaces, Foreground, Accent, Positive,
Negative, Warning, Announcement) and correct the surface token mappings
to match the full --bui-surface-1 through --bui-surface-5 scale.
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
Replace markdown headings with bold markers and add Affected components
line as required by the .changeset/README.md format guide.
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
Maps every deprecated token to its semantic replacement, grouped by
family: Surfaces, Foreground, Accent, Positive, Negative, Warning,
and Announcement.
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
- Add patch changeset for @backstage/ui (new semantic color token families)
- Add patch changeset for @backstage/eslint-plugin (no-deprecated-bui-tokens rule)
- Remove redundant wrapper div in the Colors story and drop minHeight
that was preventing scroll in the Storybook canvas
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
The stitcher parameter was removed from DefaultEntitiesCatalog's
constructor by the stitching refactor, but two tests added by the
query split PR still referenced it.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Signed-off-by: Fredrik Adelöw <freben@gmail.com>
Adds the missing documentation page at the URL referenced in the rule
meta, consistent with all other rules in the plugin. Includes incorrect/
correct code examples and a migration table mapping each deprecated token
to its semantic replacement.
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
Redesigns the BUI color token system in `@backstage/ui`:
- Adds a gray scale (`--bui-gray-1` through `--bui-gray-11`)
- Adds new foreground tokens with explicit hex values (primary, secondary, disabled, positive, negative, warning, announcement)
- Introduces five new semantic color families — Accent, Announcement, Warning, Negative, Positive — each with bg-base, bg-subdued, border, fg-on-base, and fg-on-subdued variants, for both light and dark themes
- Moves all legacy tokens (`--bui-bg-solid-*`, `--bui-bg-neutral-*`, `--bui-bg-danger/warning/success/info`, `--bui-fg-solid`, `--bui-fg-danger/success/info`, `--bui-border-*`, `--bui-shadow`) into a clearly marked `/* Deprecated tokens */` section in both light and dark themes
- Updates the Spotify theme overrides to use the new accent tokens and mark legacy overrides as deprecated
- Rewrites the `Colors` Storybook story to display all token families as a live, theme-aware reference grid
- Adds a new `@backstage/no-deprecated-bui-tokens` ESLint rule to `@backstage/eslint-plugin` that warns when any deprecated BUI token is referenced in JS/TS string literals; the rule is included in the `recommended` config so it applies to all plugin authors automatically
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
Since protobufjs 7.5.9, the @protobufjs/inquire utility is no longer
called with dynamic module names (replaced by bundler-safe lookups in
protobufjs/protobuf.js#2254). However, webpack/rspack still statically
analyzes the inquire source and emits a "Critical dependency" warning
for its require(moduleName) pattern. This is a false positive — the
code path is dead in practice.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Signed-off-by: Fredrik Adelöw <freben@gmail.com>