From 9e043a154848ecfb26b1f9c48a5a40b4deb968c0 Mon Sep 17 00:00:00 2001 From: Rajdeep Chandra Date: Wed, 17 Jun 2026 10:32:21 +0530 Subject: [PATCH 1/7] chore(release): enter beta pre-release mode for 2nd-gen (2.0.0-beta.0) Baseline @spectrum-web-components/core and @adobe/spectrum-wc to the 2.0.0 major line and enter Changesets pre-release mode (tag: beta) so 2nd-gen betas are cut as semver-correct 2.0.0-beta.N, leading up to a clean 2.0.0 GA. Co-authored-by: Cursor --- .changeset/gen2-2-0-0-major.md | 6 ++ .changeset/pre.json | 106 +++++++++++++++++++++++++++++ 2nd-gen/packages/core/CHANGELOG.md | 27 ++++++++ 2nd-gen/packages/core/package.json | 2 +- 2nd-gen/packages/swc/CHANGELOG.md | 28 ++++++++ 2nd-gen/packages/swc/package.json | 4 +- yarn.lock | 4 +- 7 files changed, 172 insertions(+), 5 deletions(-) create mode 100644 .changeset/gen2-2-0-0-major.md create mode 100644 .changeset/pre.json diff --git a/.changeset/gen2-2-0-0-major.md b/.changeset/gen2-2-0-0-major.md new file mode 100644 index 00000000000..7f183a71633 --- /dev/null +++ b/.changeset/gen2-2-0-0-major.md @@ -0,0 +1,6 @@ +--- +'@adobe/spectrum-wc': major +'@spectrum-web-components/core': major +--- + +Gen2 2.0.0 milestone. Establishes the 2.0.0 major line for the 2nd-gen component set; beta releases are cut as `2.0.0-beta.N` via Changesets pre-release mode. diff --git a/.changeset/pre.json b/.changeset/pre.json new file mode 100644 index 00000000000..32883a4c446 --- /dev/null +++ b/.changeset/pre.json @@ -0,0 +1,106 @@ +{ + "mode": "pre", + "tag": "beta", + "initialVersions": { + "@spectrum-web-components/1st-gen": "0.0.9", + "@spectrum-web-components/accordion": "1.12.1", + "@spectrum-web-components/action-bar": "1.12.1", + "@spectrum-web-components/action-button": "1.12.1", + "@spectrum-web-components/action-group": "1.12.1", + "@spectrum-web-components/action-menu": "1.12.1", + "@spectrum-web-components/alert-banner": "1.12.1", + "@spectrum-web-components/alert-dialog": "1.12.1", + "@spectrum-web-components/asset": "1.12.1", + "@spectrum-web-components/avatar": "1.12.1", + "@spectrum-web-components/badge": "1.12.1", + "@spectrum-web-components/breadcrumbs": "1.12.1", + "@spectrum-web-components/button": "1.12.1", + "@spectrum-web-components/button-group": "1.12.1", + "@spectrum-web-components/card": "1.12.1", + "@spectrum-web-components/checkbox": "1.12.1", + "@spectrum-web-components/clear-button": "1.12.1", + "@spectrum-web-components/close-button": "1.12.1", + "@spectrum-web-components/coachmark": "1.12.1", + "@spectrum-web-components/color-area": "1.12.1", + "@spectrum-web-components/color-field": "1.12.1", + "@spectrum-web-components/color-handle": "1.12.1", + "@spectrum-web-components/color-loupe": "1.12.1", + "@spectrum-web-components/color-slider": "1.12.1", + "@spectrum-web-components/color-wheel": "1.12.1", + "@spectrum-web-components/combobox": "1.12.1", + "@spectrum-web-components/contextual-help": "1.12.1", + "@spectrum-web-components/dialog": "1.12.1", + "@spectrum-web-components/divider": "1.12.1", + "@spectrum-web-components/dropzone": "1.12.1", + "@spectrum-web-components/field-group": "1.12.1", + "@spectrum-web-components/field-label": "1.12.1", + "@spectrum-web-components/help-text": "1.12.1", + "@spectrum-web-components/icon": "1.12.1", + "@spectrum-web-components/icons": "1.12.1", + "@spectrum-web-components/icons-ui": "1.12.1", + "@spectrum-web-components/icons-workflow": "1.12.1", + "@spectrum-web-components/iconset": "1.12.1", + "@spectrum-web-components/illustrated-message": "1.12.1", + "@spectrum-web-components/infield-button": "1.12.1", + "@spectrum-web-components/link": "1.12.1", + "@spectrum-web-components/menu": "1.12.1", + "@spectrum-web-components/meter": "1.12.1", + "@spectrum-web-components/modal": "1.12.1", + "@spectrum-web-components/number-field": "1.12.1", + "@spectrum-web-components/overlay": "1.12.1", + "@spectrum-web-components/picker": "1.12.1", + "@spectrum-web-components/picker-button": "1.12.1", + "@spectrum-web-components/popover": "1.12.1", + "@spectrum-web-components/progress-bar": "1.12.1", + "@spectrum-web-components/progress-circle": "1.12.1", + "@spectrum-web-components/radio": "1.12.1", + "@spectrum-web-components/search": "1.12.1", + "@spectrum-web-components/sidenav": "1.12.1", + "@spectrum-web-components/slider": "1.12.1", + "@spectrum-web-components/split-view": "1.12.1", + "@spectrum-web-components/status-light": "1.12.1", + "@spectrum-web-components/swatch": "1.12.1", + "@spectrum-web-components/switch": "1.12.1", + "@spectrum-web-components/table": "1.12.1", + "@spectrum-web-components/tabs": "1.12.1", + "@spectrum-web-components/tags": "1.12.1", + "@spectrum-web-components/textfield": "1.12.1", + "@spectrum-web-components/thumbnail": "1.12.1", + "@spectrum-web-components/toast": "1.12.1", + "@spectrum-web-components/tooltip": "1.12.1", + "@spectrum-web-components/top-nav": "1.12.1", + "@spectrum-web-components/tray": "1.12.1", + "@spectrum-web-components/underlay": "1.12.1", + "@spectrum-web-components/custom-vars-viewer": "1.12.1", + "documentation": "1.2.12", + "@spectrum-web-components/story-decorator": "1.12.1", + "swc-templates": "1.2.0", + "@types/swc": "1.2.0", + "@spectrum-web-components/vrt-compare": "1.12.1", + "@spectrum-web-components/base": "1.12.1", + "@spectrum-web-components/bundle": "1.12.1", + "@spectrum-web-components/grid": "1.12.1", + "@spectrum-web-components/opacity-checkerboard": "1.12.1", + "@spectrum-web-components/reactive-controllers": "1.12.1", + "@spectrum-web-components/shared": "1.12.1", + "@spectrum-web-components/styles": "1.12.1", + "@spectrum-web-components/theme": "1.12.1", + "@spectrum-web-components/truncated": "1.12.1", + "@spectrum-web-components/2nd-gen": "0.0.1", + "@spectrum-web-components/core": "1.0.0", + "@adobe/spectrum-wc": "1.0.0", + "@adobe/postcss-token": "0.0.2", + "@adobe/swc-tokens": "0.2.0", + "swc-vscode-token": "0.0.1", + "@adobe/vite-global-elements-css": "0.0.1", + "@spectrum-web-components/eslint-plugin": "1.12.1", + "@spectrum-web-components/stylelint-header-plugin": "1.12.1" + }, + "changesets": [ + "gen2-2-0-0-major", + "light-beers-roll", + "meter-2nd-gen-migration", + "placement-controller-core", + "silver-mice-pay" + ] +} diff --git a/2nd-gen/packages/core/CHANGELOG.md b/2nd-gen/packages/core/CHANGELOG.md index 6393c97cae7..8618472816a 100644 --- a/2nd-gen/packages/core/CHANGELOG.md +++ b/2nd-gen/packages/core/CHANGELOG.md @@ -1,5 +1,32 @@ # @spectrum-web-components/core +## 2.0.0-beta.0 + +### Major Changes + +- Gen2 2.0.0 milestone. Establishes the 2.0.0 major line for the 2nd-gen component set; beta releases are cut as `2.0.0-beta.N` via Changesets pre-release mode. + +### Minor Changes + +- [#6358](https://github.com/adobe/spectrum-web-components/pull/6358) [`fe85234`](https://github.com/adobe/spectrum-web-components/commit/fe8523478348419aaeb7dc3f925ef00c4b8b40aa) Thanks [@5t3ph](https://github.com/5t3ph)! - Add `HoverController`, a Lit `ReactiveController` that manages hover and keyboard-focus event wiring for components that use the native Popover API, such as Tooltip. + +- [#6370](https://github.com/adobe/spectrum-web-components/pull/6370) [`7c1d0c5`](https://github.com/adobe/spectrum-web-components/commit/7c1d0c574c918474196fa0f6007b9f905455f772) Thanks [@blunteshwar](https://github.com/blunteshwar)! - Add the 2nd-gen ``, migrated from the Spectrum 1 ``. + + - **API**: `value` (replaces `progress`) with `min-value` / `max-value` for arbitrary ranges; `variant` (`informative` default, `positive`, `notice`, `negative`) with unknown values normalized to `informative`; `label-position` (`top` / `side`, replaces the `side-label` boolean); `value-label` and `formatOptions` for locale-aware value text; `label` and `description` named slots; `accessible-label` for the no-visible-label case. + - **Accessibility**: the WAI-ARIA `meter` role and all `aria-value*`, `aria-labelledby`, and `aria-describedby` attributes live on the internal bar element, not the host; non-focusable, read-only; honors `prefers-reduced-motion: reduce` (WCAG 2.3.3) on the shared linear-progress base by dropping the fill transition. + - **Styling**: exposes the `--swc-linear-progress-*` custom-property surface (replaces `--mod-progressbar-*` / `--mod-meter-*`); adds `static-color="black"` alongside `white`. + - **Docs and tests**: per-component Storybook docs page, consumer migration guide, and full unit + accessibility test coverage. + +- [#6337](https://github.com/adobe/spectrum-web-components/pull/6337) [`e334d4f`](https://github.com/adobe/spectrum-web-components/commit/e334d4f4d622325984912b9689aae05e5ac179ce) Thanks [@rubencarvalho](https://github.com/rubencarvalho)! - Add `PlacementController`, a Floating UI-backed reactive controller for positioning anchored floating elements relative to a trigger. This adds `@floating-ui/dom` as a runtime dependency of `@spectrum-web-components/core`. + +- [#6387](https://github.com/adobe/spectrum-web-components/pull/6387) [`64a3d50`](https://github.com/adobe/spectrum-web-components/commit/64a3d50a6f4284cc32b8e13f2c8e05489012cef6) Thanks [@5t3ph](https://github.com/5t3ph)! - Add the 2nd-gen ``, migrated from the Spectrum 1 ``. + + - **API**: `for` attribute wires the tooltip to a trigger by ID; `trigger-element` property for programmatic or cross-shadow-root wiring; `manual` opts out of automatic wiring; `delay` (default 1500ms) for hover warm-up; `offset`, `cross-offset`, `container-padding`, and `should-flip` for viewport-aware positioning; `labeling` switches ARIA wiring to `ariaLabelledByElements` for icon-only triggers; `variant` accepts `neutral` (default), `informative`, and `negative`. + - **Breaking changes from ``**: `slot="icon"` removed; `variant="positive"` removed; `variant="info"` renamed to `variant="informative"`; `self-managed` attribute removed (automatic wiring is now the default; use `manual` to opt out); events renamed from `sp-opened`/`sp-closed` to `swc-open`/`swc-after-open`/`swc-close`/`swc-after-close`; authoring pattern changed — `` is authored as a sibling of the trigger, not nested inside it. + - **Accessibility**: `role="tooltip"` set on the host; `Element.ariaDescribedByElements` wired on the trigger's inner interactive element on open; `Escape` closes without moving focus via native `popover="auto"`; WCAG 1.4.13 pointer bridge keeps the tooltip open when the pointer moves from the trigger into the bubble; high-contrast border in forced-colors mode. + - **Controllers**: `HoverController` manages hover and keyboard-focus wiring with warm-up/cooldown timing; `PlacementController` handles viewport-aware pixel positioning via Floating UI with automatic flip on viewport collision. + - **Docs and tests**: per-component Storybook docs page, consumer migration guide, and full unit + accessibility test coverage. + ## 0.1.0 ### Minor Changes diff --git a/2nd-gen/packages/core/package.json b/2nd-gen/packages/core/package.json index 929d8c4537c..e861555cfe4 100644 --- a/2nd-gen/packages/core/package.json +++ b/2nd-gen/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@spectrum-web-components/core", - "version": "0.1.0", + "version": "2.0.0-beta.0", "description": "Abstract base classes for Spectrum Web Components", "license": "Apache-2.0", "author": "Adobe", diff --git a/2nd-gen/packages/swc/CHANGELOG.md b/2nd-gen/packages/swc/CHANGELOG.md index f4e8f663306..2c074a31c2d 100644 --- a/2nd-gen/packages/swc/CHANGELOG.md +++ b/2nd-gen/packages/swc/CHANGELOG.md @@ -1,5 +1,33 @@ # @adobe/spectrum-wc +## 2.0.0-beta.0 + +### Major Changes + +- Gen2 2.0.0 milestone. Establishes the 2.0.0 major line for the 2nd-gen component set; beta releases are cut as `2.0.0-beta.N` via Changesets pre-release mode. + +### Minor Changes + +- [#6370](https://github.com/adobe/spectrum-web-components/pull/6370) [`7c1d0c5`](https://github.com/adobe/spectrum-web-components/commit/7c1d0c574c918474196fa0f6007b9f905455f772) Thanks [@blunteshwar](https://github.com/blunteshwar)! - Add the 2nd-gen ``, migrated from the Spectrum 1 ``. + + - **API**: `value` (replaces `progress`) with `min-value` / `max-value` for arbitrary ranges; `variant` (`informative` default, `positive`, `notice`, `negative`) with unknown values normalized to `informative`; `label-position` (`top` / `side`, replaces the `side-label` boolean); `value-label` and `formatOptions` for locale-aware value text; `label` and `description` named slots; `accessible-label` for the no-visible-label case. + - **Accessibility**: the WAI-ARIA `meter` role and all `aria-value*`, `aria-labelledby`, and `aria-describedby` attributes live on the internal bar element, not the host; non-focusable, read-only; honors `prefers-reduced-motion: reduce` (WCAG 2.3.3) on the shared linear-progress base by dropping the fill transition. + - **Styling**: exposes the `--swc-linear-progress-*` custom-property surface (replaces `--mod-progressbar-*` / `--mod-meter-*`); adds `static-color="black"` alongside `white`. + - **Docs and tests**: per-component Storybook docs page, consumer migration guide, and full unit + accessibility test coverage. + +- [#6387](https://github.com/adobe/spectrum-web-components/pull/6387) [`64a3d50`](https://github.com/adobe/spectrum-web-components/commit/64a3d50a6f4284cc32b8e13f2c8e05489012cef6) Thanks [@5t3ph](https://github.com/5t3ph)! - Add the 2nd-gen ``, migrated from the Spectrum 1 ``. + + - **API**: `for` attribute wires the tooltip to a trigger by ID; `trigger-element` property for programmatic or cross-shadow-root wiring; `manual` opts out of automatic wiring; `delay` (default 1500ms) for hover warm-up; `offset`, `cross-offset`, `container-padding`, and `should-flip` for viewport-aware positioning; `labeling` switches ARIA wiring to `ariaLabelledByElements` for icon-only triggers; `variant` accepts `neutral` (default), `informative`, and `negative`. + - **Breaking changes from ``**: `slot="icon"` removed; `variant="positive"` removed; `variant="info"` renamed to `variant="informative"`; `self-managed` attribute removed (automatic wiring is now the default; use `manual` to opt out); events renamed from `sp-opened`/`sp-closed` to `swc-open`/`swc-after-open`/`swc-close`/`swc-after-close`; authoring pattern changed — `` is authored as a sibling of the trigger, not nested inside it. + - **Accessibility**: `role="tooltip"` set on the host; `Element.ariaDescribedByElements` wired on the trigger's inner interactive element on open; `Escape` closes without moving focus via native `popover="auto"`; WCAG 1.4.13 pointer bridge keeps the tooltip open when the pointer moves from the trigger into the bubble; high-contrast border in forced-colors mode. + - **Controllers**: `HoverController` manages hover and keyboard-focus wiring with warm-up/cooldown timing; `PlacementController` handles viewport-aware pixel positioning via Floating UI with automatic flip on viewport collision. + - **Docs and tests**: per-component Storybook docs page, consumer migration guide, and full unit + accessibility test coverage. + +### Patch Changes + +- Updated dependencies [[`fe85234`](https://github.com/adobe/spectrum-web-components/commit/fe8523478348419aaeb7dc3f925ef00c4b8b40aa), [`7c1d0c5`](https://github.com/adobe/spectrum-web-components/commit/7c1d0c574c918474196fa0f6007b9f905455f772), [`e334d4f`](https://github.com/adobe/spectrum-web-components/commit/e334d4f4d622325984912b9689aae05e5ac179ce), [`64a3d50`](https://github.com/adobe/spectrum-web-components/commit/64a3d50a6f4284cc32b8e13f2c8e05489012cef6)]: + - @spectrum-web-components/core@2.0.0-beta.0 + ## 0.2.0 ### Minor Changes diff --git a/2nd-gen/packages/swc/package.json b/2nd-gen/packages/swc/package.json index 7faaea4ce3d..015a39ff8c2 100644 --- a/2nd-gen/packages/swc/package.json +++ b/2nd-gen/packages/swc/package.json @@ -1,6 +1,6 @@ { "name": "@adobe/spectrum-wc", - "version": "0.2.0", + "version": "2.0.0-beta.0", "description": "Spectrum Web Components 2nd generation - rendering implementations", "license": "Apache-2.0", "author": "Adobe", @@ -79,7 +79,7 @@ "test:watch:vitest": "vitest --project storybook --watch" }, "dependencies": { - "@spectrum-web-components/core": "0.1.0", + "@spectrum-web-components/core": "2.0.0-beta.0", "lit": "^2.5.0 || ^3.1.3" }, "devDependencies": { diff --git a/yarn.lock b/yarn.lock index e4f74babbdd..bf2f7614c3c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -200,7 +200,7 @@ __metadata: "@chromatic-com/storybook": "npm:5.2.1" "@custom-elements-manifest/analyzer": "npm:0.10.8" "@github-ui/storybook-addon-performance-panel": "npm:1.1.4" - "@spectrum-web-components/core": "npm:0.1.0" + "@spectrum-web-components/core": "npm:2.0.0-beta.0" "@storybook/addon-a11y": "npm:10.4.1" "@storybook/addon-designs": "npm:11.1.3" "@storybook/addon-docs": "npm:10.4.1" @@ -7167,7 +7167,7 @@ __metadata: languageName: unknown linkType: soft -"@spectrum-web-components/core@npm:0.1.0, @spectrum-web-components/core@workspace:2nd-gen/packages/core": +"@spectrum-web-components/core@npm:2.0.0-beta.0, @spectrum-web-components/core@workspace:2nd-gen/packages/core": version: 0.0.0-use.local resolution: "@spectrum-web-components/core@workspace:2nd-gen/packages/core" dependencies: From 83392e3ac7068f08d54d0edc0697a1fd14f0a370 Mon Sep 17 00:00:00 2001 From: Rajdeep Chandra Date: Wed, 17 Jun 2026 15:21:24 +0530 Subject: [PATCH 2/7] docs(release): add Gen2 beta versioning strategy write-up Co-authored-by: Cursor --- gen2-beta-release-strategy.md | 130 ++++++++++++++++++++++++++++++++++ 1 file changed, 130 insertions(+) create mode 100644 gen2-beta-release-strategy.md diff --git a/gen2-beta-release-strategy.md b/gen2-beta-release-strategy.md new file mode 100644 index 00000000000..b757fbd113c --- /dev/null +++ b/gen2-beta-release-strategy.md @@ -0,0 +1,130 @@ +# Gen2 beta release strategy (for team review) + +> Status: proposal / for cross-verification. The `gen2-beta` branch is pushed (PR #6413); nothing has been published to npm yet. + +## Goal + +Ship the 2nd-gen component set as a **private beta** (through ~mid-July) under semver-correct +pre-release versions, leading up to a clean `2.0.0` GA. 1st-gen continues to release on `next` +and is unaffected. + +Target version shape: + +``` +2.0.0-beta.0 -> 2.0.0-beta.1 -> 2.0.0-beta.2 -> ... -> 2.0.0 (GA) +``` + +## Why pre-release mode (not snapshot, not 0.x) + +- **Snapshot mode** (`changeset version --snapshot beta`) produces timestamped, unordered tags + like `0.0.0-beta-20260617...`. Fine for throwaway dev builds, not for a real beta line. +- **`0.x-beta`** understates stability. Per semver, `0.x` signals "initial development, anything + may change". A `-beta` pre-release of `2.0.0` more accurately signals "API is stabilizing, + leading up to a release". See semver [item 4](https://semver.org/#spec-item-4) and + [item 9](https://semver.org/#spec-item-9). +- **Changesets pre-release mode** gives ordered, incrementing, semver-correct pre-releases + (`2.0.0-beta.N`) and a clean exit to `2.0.0`. This is the documented changesets workflow for + exactly this scenario. + +## Scope + +Only the **publishable** 2nd-gen packages are in the beta line: + +| Package | Published | Beta version | +| ---------------------------------- | ---------------------------------------------- | ------------------------- | +| `@spectrum-web-components/core` | yes (OIDC trusted publishing) | `2.0.0-beta.0` | +| `@adobe/spectrum-wc` | yes (npm token auth) | `2.0.0-beta.0` | +| `@spectrum-web-components/2nd-gen` | **no** — `private: true`, no `exports`/`files` | n/a (workspace root only) | + +1st-gen packages: untouched, continue on `next`. + +## How the version lands exactly on `2.0.0-beta.0` + +The two packages are a **linked** changesets group, so they version in lockstep. To make a major +bump resolve to `2.0.0` (not `1.0.0` from the current `0.x`), we baseline both to `1.0.0`, then a +single `major` changeset takes the linked group to `2.0.0`. Pre-release mode then holds the base at +`2.0.0` and only advances the `-beta.N` counter until GA. + +Setup performed on the `gen2-beta` branch (PR #6413): + +1. Baseline `@spectrum-web-components/core` and `@adobe/spectrum-wc` to `1.0.0` + (and the swc -> core internal dependency). +2. Add one `major` changeset for the Gen2 2.0.0 milestone. +3. `changeset pre enter beta` (writes `.changeset/pre.json`, tag `beta`). +4. `changeset version` -> both packages become `2.0.0-beta.0`, internal dep and `yarn.lock` + updated, CHANGELOGs generated. + +Net diff is small and contains no reformatting: two version bumps, one dep bump, a 2-line +`yarn.lock` change, two CHANGELOG entries, plus `pre.json` and the milestone changeset. + +## Release mechanics + +**Cut the next beta** (`2.0.0-beta.1`, `.2`, ...): + +```bash +# on gen2-beta, with a new changeset present for the work being released +changeset version # NOT --snapshot; pre mode advances the -beta.N counter +git commit ... # commit the bump + changelog +changeset publish --tag beta # (via CI for core's OIDC; see "open items") +``` + +**Promote to GA (`2.0.0`)** when ready: + +```bash +changeset pre exit # leaves pre mode +changeset version # -> 2.0.0 +changeset publish # latest tag +``` + +## How to cross-verify this yourself + +Anyone can reproduce the proof in a throwaway worktree (no risk to `main`): + +```bash +git worktree add -b verify-beta /tmp/verify-beta origin/main +cd /tmp/verify-beta +# baseline core + swc to 1.0.0 (and swc -> core dep), add one `major` changeset, then: +node ../..//node_modules/@changesets/cli/bin.js pre enter beta +node .../bin.js version # -> 2.0.0-beta.0 +# add a changeset, version again -> 2.0.0-beta.1; again -> 2.0.0-beta.2 +node .../bin.js pre exit && node .../bin.js version # -> clean 2.0.0 +``` + +Observed result: + +| Step | core | @adobe/spectrum-wc | +| ---------------------------- | -------------- | ------------------ | +| `pre enter beta` + `version` | `2.0.0-beta.0` | `2.0.0-beta.0` | +| add changeset + `version` | — | `2.0.0-beta.1` | +| add changeset + `version` | — | `2.0.0-beta.2` | +| `pre exit` + `version` | `2.0.0` | `2.0.0` | + +Things to check on the branch: + +- both published package.json versions are `2.0.0-beta.0` +- swc's `@spectrum-web-components/core` dependency is `2.0.0-beta.0` +- both CHANGELOGs top with `## 2.0.0-beta.0`; swc's "Updated dependencies" cites `core@2.0.0-beta.0` +- `yarn.lock` core descriptor is `@spectrum-web-components/core@npm:2.0.0-beta.0` +- `.changeset/pre.json` exists with `"mode": "pre"`, `"tag": "beta"` + +## Open items / decisions for the team + +1. **Counter starts at `.0`, not `.1`** — changesets/npm convention. Cosmetic only; not changing it. +2. **Publish workflow wiring** — `publish.yml` on `main` runs `changeset version --snapshot` for + non-`latest` tags, which would clobber the committed `2.0.0-beta.0`. To publish the real beta we + use the **scope=2nd-gen** path (from the in-flight workflow PR) that packs from `package.json` + and `npm publish --tag beta` without re-versioning. That requires re-adding the + "skip `changeset version` for scope=2nd-gen" gate and bringing that workflow onto `gen2-beta`. +3. **Branch home** — `gen2-beta` is a long-lived release branch (per changesets pre-release docs). + Lives on the canonical repo as `gen2-beta` (PR #6413). +4. **Pre mode is stateful** — while `pre.json` exists, every `changeset version` produces a beta. + Do not run a "normal" release from this branch without `changeset pre exit` first. + +## Risks / caveats + +- Pre mode keeps consumed changeset `.md` files until `pre exit`; this is expected and lets the + counter increment correctly. Don't manually delete them. +- The `1.0.0` baseline is transient — it only exists to make the `major` bump resolve to `2.0.0`. + After the first `changeset version` the committed versions are `2.0.0-beta.0`. +- Keep 1st-gen out of the beta: only `core` + `@adobe/spectrum-wc` changesets should be present on + `gen2-beta` when cutting a beta. From 103399769f1803a63ac959f07e1a7e28978172e6 Mon Sep 17 00:00:00 2001 From: Rajdeep Chandra Date: Mon, 15 Jun 2026 17:47:17 +0530 Subject: [PATCH 3/7] ci: add 2nd-gen-only beta publish scope to publish workflow Add a manual `scope` input (all | 2nd-gen) to the Publish Packages workflow so a private beta of the 2nd-gen packages can be cut on demand without releasing 1st-gen. When scope is `2nd-gen`, only @spectrum-web-components/core (OIDC trusted publishing) and @adobe/spectrum-wc (npm token) are packed and published under the chosen pre-release dist-tag; 1st-gen steps and React wrappers are skipped, and the `latest` tag is rejected for this scope. The default `all` scope and the automatic push-to-main `next` release are unchanged. Co-authored-by: Cursor (cherry picked from commit 5169fc4e00371057a0d76b563048e5e63285cb54) --- .github/workflows/publish.yml | 54 +++++++++++++++++++++++++++++++++-- 1 file changed, 51 insertions(+), 3 deletions(-) diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index fd9d1fe45c2..45e0a07a415 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -7,6 +7,14 @@ on: description: 'NPM dist-tag (e.g., latest, beta, snapshot)' required: false default: 'next' + scope: + description: 'Packages to publish: all (1st-gen + 2nd-gen) or 2nd-gen (core + @adobe/spectrum-wc only)' + required: false + type: choice + default: all + options: + - all + - 2nd-gen pull_request: types: [labeled, synchronize] push: @@ -95,6 +103,7 @@ jobs: env: EVENT_NAME: ${{ github.event_name }} INPUT_TAG: ${{ github.event.inputs.tag }} + INPUT_SCOPE: ${{ github.event.inputs.scope }} run: | if [ "$EVENT_NAME" == "pull_request" ]; then # PRs with the snapshot-release label always use snapshot-test @@ -107,18 +116,32 @@ jobs: WORKFLOW_TAG="next" fi + # Publish scope only applies to manual runs; everything else publishes all packages + if [ "$EVENT_NAME" == "workflow_dispatch" ] && [ "$INPUT_SCOPE" == "2nd-gen" ]; then + WORKFLOW_SCOPE="2nd-gen" + else + WORKFLOW_SCOPE="all" + fi + echo "tag=$WORKFLOW_TAG" >> $GITHUB_OUTPUT + echo "scope=$WORKFLOW_SCOPE" >> $GITHUB_OUTPUT echo "Using npm tag: $WORKFLOW_TAG" + echo "Publish scope: $WORKFLOW_SCOPE" - name: Validate release tag env: TAG: ${{ steps.extract-tag.outputs.tag }} + SCOPE: ${{ steps.extract-tag.outputs.scope }} GIT_REF: ${{ github.ref }} run: | if [ "$TAG" == "latest" ] && [ "$GIT_REF" != "refs/heads/main" ]; then echo "ERROR: Cannot publish 'latest' from non-main branch" exit 1 fi + if [ "$SCOPE" == "2nd-gen" ] && [ "$TAG" == "latest" ]; then + echo "ERROR: 2nd-gen-only scope does not support the 'latest' tag; use a pre-release tag such as 'beta'" + exit 1 + fi - name: Verify OIDC token and configure NPM authentication id: npm-auth @@ -139,9 +162,11 @@ jobs: run: yarn build - name: Generate custom elements manifests + if: steps.extract-tag.outputs.scope != '2nd-gen' run: yarn workspace @spectrum-web-components/1st-gen custom-element-json - name: Confirm build artifacts + if: steps.extract-tag.outputs.scope != '2nd-gen' run: yarn workspace @spectrum-web-components/1st-gen build:confirm - name: Version packages @@ -172,7 +197,7 @@ jobs: yarn build - name: Publish all packages - if: steps.npm-auth.outcome == 'success' + if: steps.npm-auth.outcome == 'success' && steps.extract-tag.outputs.scope != '2nd-gen' env: NODE_AUTH_TOKEN: ${{ secrets.ADOBE_BOT_NPM_TOKEN }} TAG: ${{ steps.extract-tag.outputs.tag }} @@ -187,12 +212,33 @@ jobs: yarn changeset publish --no-git-tag --tag $TAG fi + - name: Publish 2nd-gen packages only + if: steps.npm-auth.outcome == 'success' && steps.extract-tag.outputs.scope == '2nd-gen' + env: + NODE_AUTH_TOKEN: ${{ secrets.ADOBE_BOT_NPM_TOKEN }} + TAG: ${{ steps.extract-tag.outputs.tag }} + run: | + set -euo pipefail + # Publish ONLY the 2nd-gen packages, leaving 1st-gen untouched even if + # 1st-gen changesets are present in this run (they stay unpublished and + # continue to release as `next` from the normal main pipeline). + # + # `yarn pack` resolves the workspace: protocol and honors each package's + # files field, producing a publishable tarball. `npm publish` then selects + # the correct auth automatically, matching how `changeset publish` behaves: + # - @spectrum-web-components/core -> OIDC trusted publishing + # - @adobe/spectrum-wc -> npm token (from ~/.npmrc) + yarn workspace @spectrum-web-components/core pack --out /tmp/swc-core.tgz + yarn workspace @adobe/spectrum-wc pack --out /tmp/swc-wc.tgz + npm publish /tmp/swc-core.tgz --tag "$TAG" --access public + npm publish /tmp/swc-wc.tgz --tag "$TAG" --access public + - name: Build React wrappers - if: needs.check-changesets.outputs.has_1st_gen_changesets == 'true' + if: needs.check-changesets.outputs.has_1st_gen_changesets == 'true' && steps.extract-tag.outputs.scope != '2nd-gen' run: yarn workspace @spectrum-web-components/1st-gen build:react - name: Publish React wrappers - if: needs.check-changesets.outputs.has_1st_gen_changesets == 'true' + if: needs.check-changesets.outputs.has_1st_gen_changesets == 'true' && steps.extract-tag.outputs.scope != '2nd-gen' env: TAG: ${{ steps.extract-tag.outputs.tag }} run: | @@ -236,6 +282,7 @@ jobs: if: always() env: TAG: ${{ steps.extract-tag.outputs.tag }} + SCOPE: ${{ steps.extract-tag.outputs.scope }} EVENT_NAME: ${{ github.event_name }} PR_NUMBER: ${{ github.event.pull_request.number }} PR_TITLE: ${{ github.event.pull_request.title }} @@ -267,6 +314,7 @@ jobs: echo "| **Trigger** | Manual dispatch |" >> $GITHUB_STEP_SUMMARY echo "| **Branch** | \`${REF_NAME}\` |" >> $GITHUB_STEP_SUMMARY echo "| **NPM tag** | \`${TAG}\` |" >> $GITHUB_STEP_SUMMARY + echo "| **Scope** | \`${SCOPE}\` |" >> $GITHUB_STEP_SUMMARY echo "| **Actor** | @${ACTOR} |" >> $GITHUB_STEP_SUMMARY else echo "| Field | Value |" >> $GITHUB_STEP_SUMMARY From 9cb3ec177c1de6b5b64f91b0566ed8fea0ce080b Mon Sep 17 00:00:00 2001 From: Rajdeep Chandra Date: Mon, 15 Jun 2026 17:52:13 +0530 Subject: [PATCH 4/7] ci: add dry-run option to 2nd-gen beta publish Allow the 2nd-gen-only scope to run with npm publish --dry-run so the build, version, and pack steps can be validated from a feature branch without writing to the npm registry. Co-authored-by: Cursor (cherry picked from commit 9626abc5bd3a55727ce7254a80ae3c30f4f96a21) --- .github/workflows/publish.yml | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 45e0a07a415..a7d2e75657e 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -15,6 +15,11 @@ on: options: - all - 2nd-gen + dry_run: + description: 'Dry run: build, version, and pack but use npm publish --dry-run (no registry writes). Only applies to the 2nd-gen scope.' + required: false + type: boolean + default: false pull_request: types: [labeled, synchronize] push: @@ -217,6 +222,7 @@ jobs: env: NODE_AUTH_TOKEN: ${{ secrets.ADOBE_BOT_NPM_TOKEN }} TAG: ${{ steps.extract-tag.outputs.tag }} + DRY_RUN: ${{ github.event.inputs.dry_run }} run: | set -euo pipefail # Publish ONLY the 2nd-gen packages, leaving 1st-gen untouched even if @@ -228,10 +234,15 @@ jobs: # the correct auth automatically, matching how `changeset publish` behaves: # - @spectrum-web-components/core -> OIDC trusted publishing # - @adobe/spectrum-wc -> npm token (from ~/.npmrc) + PUBLISH_FLAGS="--tag $TAG --access public" + if [ "$DRY_RUN" == "true" ]; then + PUBLISH_FLAGS="$PUBLISH_FLAGS --dry-run" + echo "::notice::DRY RUN - packing only, no packages will be published to npm" + fi yarn workspace @spectrum-web-components/core pack --out /tmp/swc-core.tgz yarn workspace @adobe/spectrum-wc pack --out /tmp/swc-wc.tgz - npm publish /tmp/swc-core.tgz --tag "$TAG" --access public - npm publish /tmp/swc-wc.tgz --tag "$TAG" --access public + npm publish /tmp/swc-core.tgz $PUBLISH_FLAGS + npm publish /tmp/swc-wc.tgz $PUBLISH_FLAGS - name: Build React wrappers if: needs.check-changesets.outputs.has_1st_gen_changesets == 'true' && steps.extract-tag.outputs.scope != '2nd-gen' From d73457314f599a6450c663bd46f93e3ee5c97404 Mon Sep 17 00:00:00 2001 From: Rajdeep Chandra Date: Mon, 15 Jun 2026 17:54:52 +0530 Subject: [PATCH 5/7] fix(ci): tolerate no-match grep in changeset detection The check-changesets step runs under `bash -e`, so the package-detection grep aborted the job whenever a changeset referenced only @spectrum-web-components/core (grep -v matches nothing and exits 1). Add `|| true` so core-only and @adobe-only changesets are handled. Co-authored-by: Cursor (cherry picked from commit b8f8fcf6f9520113fdf63fb9b048c6179451e363) --- .github/workflows/publish.yml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index a7d2e75657e..f750672d520 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -62,8 +62,11 @@ jobs: HAS_1ST_GEN=false for file in .changeset/*.md; do if [ "$(basename "$file")" != "README.md" ]; then - PACKAGES=$(grep -oP "@spectrum-web-components/[a-z-]+" "$file") - NON_CORE=$(echo "$PACKAGES" | grep -v "^@spectrum-web-components/core$") + # `|| true` keeps `set -e` from aborting when grep finds no match + # (e.g. a changeset that references only @spectrum-web-components/core, + # or only @adobe/spectrum-wc with no @spectrum-web-components/* package). + PACKAGES=$(grep -oP "@spectrum-web-components/[a-z-]+" "$file" || true) + NON_CORE=$(echo "$PACKAGES" | grep -v "^@spectrum-web-components/core$" || true) if [ -n "$NON_CORE" ]; then HAS_1ST_GEN=true break From aef335ab18cb271d8f575b2aa9db8fcbbb828d91 Mon Sep 17 00:00:00 2001 From: Rajdeep Chandra Date: Wed, 17 Jun 2026 18:01:59 +0530 Subject: [PATCH 6/7] ci: skip changeset version for scope=2nd-gen to publish committed pre-release versions For the 2nd-gen beta scope, publish the versions already committed on the pre-release branch (2.0.0-beta.N) instead of letting `changeset version --snapshot` overwrite them with a timestamped snapshot. Co-authored-by: Cursor --- .github/workflows/publish.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index f750672d520..e70b240208d 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -177,7 +177,12 @@ jobs: if: steps.extract-tag.outputs.scope != '2nd-gen' run: yarn workspace @spectrum-web-components/1st-gen build:confirm + # For scope=2nd-gen we publish the versions already committed on the + # pre-release branch (e.g. 2.0.0-beta.N from Changesets pre mode). Running + # `changeset version --snapshot` here would overwrite those with a + # timestamped snapshot, so the step is skipped for the 2nd-gen scope. - name: Version packages + if: steps.extract-tag.outputs.scope != '2nd-gen' env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} TAG: ${{ steps.extract-tag.outputs.tag }} From a607f914bdbb8b775bffbd7f1eaf0882932ca555 Mon Sep 17 00:00:00 2001 From: Rajdeep Chandra Date: Tue, 30 Jun 2026 17:09:23 +0530 Subject: [PATCH 7/7] chore(release): version 2nd-gen packages to 2.0.0-beta.1 Consume pending changesets on gen2-beta (accordion, action-button, button-group, illustrated-message, link, and related 1st-gen patches). Co-authored-by: Cursor --- .changeset/pre.json | 6 + 1st-gen/packages/accordion/CHANGELOG.md | 19 + 1st-gen/packages/accordion/package.json | 12 +- 1st-gen/packages/action-bar/CHANGELOG.md | 12 + 1st-gen/packages/action-bar/package.json | 14 +- 1st-gen/packages/action-button/CHANGELOG.md | 18 + 1st-gen/packages/action-button/package.json | 12 +- 1st-gen/packages/action-group/CHANGELOG.md | 10 + 1st-gen/packages/action-group/package.json | 10 +- 1st-gen/packages/action-menu/CHANGELOG.md | 27 + 1st-gen/packages/action-menu/package.json | 28 +- 1st-gen/packages/alert-banner/CHANGELOG.md | 9 + 1st-gen/packages/alert-banner/package.json | 8 +- 1st-gen/packages/alert-dialog/CHANGELOG.md | 12 + 1st-gen/packages/alert-dialog/package.json | 14 +- 1st-gen/packages/asset/CHANGELOG.md | 7 + 1st-gen/packages/asset/package.json | 4 +- 1st-gen/packages/avatar/CHANGELOG.md | 8 + 1st-gen/packages/avatar/package.json | 6 +- 1st-gen/packages/badge/CHANGELOG.md | 8 + 1st-gen/packages/badge/package.json | 6 +- 1st-gen/packages/breadcrumbs/CHANGELOG.md | 14 + 1st-gen/packages/breadcrumbs/package.json | 18 +- 1st-gen/packages/button-group/CHANGELOG.md | 10 + 1st-gen/packages/button-group/package.json | 6 +- 1st-gen/packages/button/CHANGELOG.md | 14 + 1st-gen/packages/button/package.json | 18 +- 1st-gen/packages/card/CHANGELOG.md | 14 + 1st-gen/packages/card/package.json | 18 +- 1st-gen/packages/checkbox/CHANGELOG.md | 10 + 1st-gen/packages/checkbox/package.json | 10 +- 1st-gen/packages/clear-button/CHANGELOG.md | 7 + 1st-gen/packages/clear-button/package.json | 4 +- 1st-gen/packages/close-button/CHANGELOG.md | 7 + 1st-gen/packages/close-button/package.json | 4 +- 1st-gen/packages/coachmark/CHANGELOG.md | 15 + 1st-gen/packages/coachmark/package.json | 20 +- 1st-gen/packages/color-area/CHANGELOG.md | 11 + 1st-gen/packages/color-area/package.json | 12 +- 1st-gen/packages/color-field/CHANGELOG.md | 10 + 1st-gen/packages/color-field/package.json | 10 +- 1st-gen/packages/color-handle/CHANGELOG.md | 9 + 1st-gen/packages/color-handle/package.json | 8 +- 1st-gen/packages/color-loupe/CHANGELOG.md | 8 + 1st-gen/packages/color-loupe/package.json | 6 +- 1st-gen/packages/color-slider/CHANGELOG.md | 11 + 1st-gen/packages/color-slider/package.json | 12 +- 1st-gen/packages/color-wheel/CHANGELOG.md | 10 + 1st-gen/packages/color-wheel/package.json | 10 +- 1st-gen/packages/combobox/CHANGELOG.md | 17 + 1st-gen/packages/combobox/package.json | 24 +- 1st-gen/packages/contextual-help/CHANGELOG.md | 13 + 1st-gen/packages/contextual-help/package.json | 16 +- 1st-gen/packages/dialog/CHANGELOG.md | 15 + 1st-gen/packages/dialog/package.json | 20 +- 1st-gen/packages/divider/CHANGELOG.md | 7 + 1st-gen/packages/divider/package.json | 4 +- 1st-gen/packages/dropzone/CHANGELOG.md | 7 + 1st-gen/packages/dropzone/package.json | 4 +- 1st-gen/packages/field-group/CHANGELOG.md | 8 + 1st-gen/packages/field-group/package.json | 6 +- 1st-gen/packages/field-label/CHANGELOG.md | 11 + 1st-gen/packages/field-label/package.json | 12 +- 1st-gen/packages/help-text/CHANGELOG.md | 9 + 1st-gen/packages/help-text/package.json | 8 +- 1st-gen/packages/icon/CHANGELOG.md | 9 + 1st-gen/packages/icon/package.json | 8 +- 1st-gen/packages/icons-ui/CHANGELOG.md | 9 + 1st-gen/packages/icons-ui/package.json | 8 +- 1st-gen/packages/icons-workflow/CHANGELOG.md | 8 + 1st-gen/packages/icons-workflow/package.json | 6 +- 1st-gen/packages/icons/CHANGELOG.md | 8 + 1st-gen/packages/icons/package.json | 6 +- 1st-gen/packages/iconset/CHANGELOG.md | 7 + 1st-gen/packages/iconset/package.json | 4 +- .../packages/illustrated-message/CHANGELOG.md | 8 + .../packages/illustrated-message/package.json | 6 +- 1st-gen/packages/infield-button/CHANGELOG.md | 8 + 1st-gen/packages/infield-button/package.json | 6 +- 1st-gen/packages/link/CHANGELOG.md | 8 + 1st-gen/packages/link/package.json | 6 +- 1st-gen/packages/menu/CHANGELOG.md | 23 + 1st-gen/packages/menu/package.json | 20 +- 1st-gen/packages/meter/CHANGELOG.md | 10 + 1st-gen/packages/meter/package.json | 10 +- 1st-gen/packages/modal/CHANGELOG.md | 7 + 1st-gen/packages/modal/package.json | 4 +- 1st-gen/packages/number-field/CHANGELOG.md | 13 + 1st-gen/packages/number-field/package.json | 16 +- 1st-gen/packages/overlay/CHANGELOG.md | 11 + 1st-gen/packages/overlay/package.json | 12 +- 1st-gen/packages/picker-button/CHANGELOG.md | 11 + 1st-gen/packages/picker-button/package.json | 12 +- 1st-gen/packages/picker/CHANGELOG.md | 20 + 1st-gen/packages/picker/package.json | 30 +- 1st-gen/packages/popover/CHANGELOG.md | 8 + 1st-gen/packages/popover/package.json | 6 +- 1st-gen/packages/progress-bar/CHANGELOG.md | 10 + 1st-gen/packages/progress-bar/package.json | 10 +- 1st-gen/packages/progress-circle/CHANGELOG.md | 9 + 1st-gen/packages/progress-circle/package.json | 8 +- 1st-gen/packages/radio/CHANGELOG.md | 11 + 1st-gen/packages/radio/package.json | 12 +- 1st-gen/packages/search/CHANGELOG.md | 11 + 1st-gen/packages/search/package.json | 12 +- 1st-gen/packages/sidenav/CHANGELOG.md | 9 + 1st-gen/packages/sidenav/package.json | 8 +- 1st-gen/packages/slider/CHANGELOG.md | 12 + 1st-gen/packages/slider/package.json | 14 +- 1st-gen/packages/split-view/CHANGELOG.md | 8 + 1st-gen/packages/split-view/package.json | 6 +- 1st-gen/packages/status-light/CHANGELOG.md | 7 + 1st-gen/packages/status-light/package.json | 4 +- 1st-gen/packages/swatch/CHANGELOG.md | 12 + 1st-gen/packages/swatch/package.json | 14 +- 1st-gen/packages/switch/CHANGELOG.md | 8 + 1st-gen/packages/switch/package.json | 6 +- 1st-gen/packages/table/CHANGELOG.md | 10 + 1st-gen/packages/table/package.json | 10 +- 1st-gen/packages/tabs/CHANGELOG.md | 12 + 1st-gen/packages/tabs/package.json | 14 +- 1st-gen/packages/tags/CHANGELOG.md | 10 + 1st-gen/packages/tags/package.json | 10 +- 1st-gen/packages/textfield/CHANGELOG.md | 14 + 1st-gen/packages/textfield/package.json | 18 +- 1st-gen/packages/thumbnail/CHANGELOG.md | 8 + 1st-gen/packages/thumbnail/package.json | 6 +- 1st-gen/packages/toast/CHANGELOG.md | 11 + 1st-gen/packages/toast/package.json | 12 +- 1st-gen/packages/tooltip/CHANGELOG.md | 10 + 1st-gen/packages/tooltip/package.json | 10 +- 1st-gen/packages/top-nav/CHANGELOG.md | 9 + 1st-gen/packages/top-nav/package.json | 8 +- 1st-gen/packages/tray/CHANGELOG.md | 11 + 1st-gen/packages/tray/package.json | 12 +- 1st-gen/packages/underlay/CHANGELOG.md | 7 + 1st-gen/packages/underlay/package.json | 4 +- .../css-custom-vars-viewer/CHANGELOG.md | 17 + .../css-custom-vars-viewer/package.json | 22 +- 1st-gen/projects/documentation/CHANGELOG.md | 8 + 1st-gen/projects/documentation/package.json | 2 +- 1st-gen/projects/story-decorator/CHANGELOG.md | 14 + 1st-gen/projects/story-decorator/package.json | 18 +- 1st-gen/projects/vrt-compare/CHANGELOG.md | 15 + 1st-gen/projects/vrt-compare/package.json | 20 +- 1st-gen/tools/base/CHANGELOG.md | 2 + 1st-gen/tools/base/package.json | 2 +- 1st-gen/tools/base/src/version.ts | 4 +- 1st-gen/tools/bundle/CHANGELOG.md | 80 ++ 1st-gen/tools/bundle/package.json | 150 +-- 1st-gen/tools/grid/CHANGELOG.md | 8 + 1st-gen/tools/grid/package.json | 6 +- .../tools/opacity-checkerboard/CHANGELOG.md | 7 + .../tools/opacity-checkerboard/package.json | 4 +- .../tools/reactive-controllers/CHANGELOG.md | 7 + .../tools/reactive-controllers/package.json | 4 +- 1st-gen/tools/shared/CHANGELOG.md | 7 + 1st-gen/tools/shared/package.json | 4 +- 1st-gen/tools/styles/CHANGELOG.md | 7 + 1st-gen/tools/styles/package.json | 4 +- 1st-gen/tools/theme/CHANGELOG.md | 8 + 1st-gen/tools/theme/package.json | 6 +- 1st-gen/tools/truncated/CHANGELOG.md | 10 + 1st-gen/tools/truncated/package.json | 10 +- 2nd-gen/packages/core/CHANGELOG.md | 15 + 2nd-gen/packages/core/element/version.ts | 4 +- 2nd-gen/packages/core/package.json | 2 +- 2nd-gen/packages/swc/CHANGELOG.md | 30 + 2nd-gen/packages/swc/package.json | 4 +- linters/eslint-plugin/CHANGELOG.md | 2 + linters/eslint-plugin/package.json | 2 +- linters/stylelint-header-plugin/CHANGELOG.md | 2 + linters/stylelint-header-plugin/package.json | 2 +- yarn.lock | 968 +++++++++--------- 174 files changed, 1959 insertions(+), 980 deletions(-) diff --git a/.changeset/pre.json b/.changeset/pre.json index 32883a4c446..7cf4f81b509 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -97,8 +97,14 @@ "@spectrum-web-components/stylelint-header-plugin": "1.12.1" }, "changesets": [ + "accordion-2nd-gen-and-deprecations", + "action-button-2nd-gen-migration", + "button-group-migration", + "fix-action-menu-submenu-mobile-tray", "gen2-2-0-0-major", + "illustrated-message-actions-slot", "light-beers-roll", + "link-2nd-gen-migration", "meter-2nd-gen-migration", "placement-controller-core", "silver-mice-pay" diff --git a/1st-gen/packages/accordion/CHANGELOG.md b/1st-gen/packages/accordion/CHANGELOG.md index 10883cffce3..b58cc5dac37 100644 --- a/1st-gen/packages/accordion/CHANGELOG.md +++ b/1st-gen/packages/accordion/CHANGELOG.md @@ -1,5 +1,24 @@ # Change Log +## 1.12.2-beta.0 + +### Patch Changes + +- [#6268](https://github.com/adobe/spectrum-web-components/pull/6268) [`abe7cbd`](https://github.com/adobe/spectrum-web-components/commit/abe7cbdf7af837633e223ba033e08560111c95ce) Thanks [@rise-erpelding](https://github.com/rise-erpelding)! - **feat(accordion):** Add 2nd-gen `` and `` with Spectrum 2-oriented behavior. Key changes from 1st-gen `` / ``: + - Core `AccordionBase` / `AccordionItemBase` with public API: `allow-multiple`, `level`, `size`, `density`, `quiet`, host `disabled`, item `open` / `disabled`, slotted heading (`slot="label"`), optional `slot="actions"`, and cancellable `swc-accordion-item-toggle` + - APG-aligned accessibility: `` wrapping a native header `