@lwc/aria-reflection
9.5.3 · 27 Oct 2026MIT91.4k / weekRepositoryHomepagenpmAtom feed
228 stable releases, newest first, by release line. Notes are quoted as the maintainers published them.
- 9.x · latest line
9.5.3
27 Oct 2026synthetic-shadow: Preserve focus boundaries for empty tab segments @W-24605807 @W-24587693
What's Changed
synthetic-shadow: Preserve focus boundaries for empty tab segments @W-24605807 @W-24587693
9.5.2
21 Oct 2026compiler: Clarify invalid if modifier error
What's Changed
compiler: Clarify invalid if modifier error
9.5.1
14 Oct 2026synthetic-shadow: Sanitize native ShadowRoot HTML sinks [W-23994661]
ssr-compiler,ssr-runtime: Validate render() template return value
ssr-runtime: Avoid duplicate classes in classList.replace()
What's Changed
synthetic-shadow: Sanitize native ShadowRoot HTML sinks [W-23994661]
ssr-compiler,ssr-runtime: Validate render() template return value
ssr-runtime: Avoid duplicate classes in classList.replace()
template-compiler: Treat inert as a valid global boolean attribute
9.5.0
14 Oct 20269.4.3
2 Sep 2026Remove context provider listener on disconnect
9.4.2
1 Sep 2026engine-core: Invoke compiled template via intrinsic apply behind a flag
engine: opt-in hook for parseFragment static content [W-23814957]
engine-dom: Guard repeat rendererFactory invocations behind a flag (W-23814927)
What's Changed
engine-core: Invoke compiled template via intrinsic apply behind a flag
engine: opt-in hook for parseFragment static content [W-23814957]
engine-dom: Guard repeat rendererFactory invocations behind a flag (W-23814927)
9.4.1
12 Aug 2026hydration: Only hydrate components @W-23722850
@W-23590585 fix(engine-core): only change attribute for components
engine-core: Brand sanitized HTML by identity, not object shape (W-23680734)
What's Changed
hydration: Only hydrate components @W-23722850
@W-23590585 fix(engine-core): only change attribute for components
engine-core: Brand sanitized HTML by identity, not object shape (W-23680734)
engine-core: Guard bridge element property accessors against non-public member access
9.4.0
10 Aug 2026integration-wtr: Account for Chromium 151 empty-comment handling
synthetic-shadow: Gate ShadowRoot undefined-methods behind a flag
ssr-compiler: Register @api props on in-file base classes (W-23508928)
What's Changed
integration-wtr: Account for Chromium 151 empty-comment handling
synthetic-shadow: Gate ShadowRoot undefined-methods behind a flag
ssr-compiler: Register @api props on in-file base classes (W-23508928)
@W-23486660 fix(synthetic-shadow): make NodeList polyfill match spec behavior
9.3.9
9 Sep 2026Remove context provider listener on disconnect
9.3.8
3 Sep 2026engine-core: Invoke compiled template via intrinsic apply behind a flag (W-23790290) [winter27 backport]
engine: opt-in hook for parseFragment static content (W-23814957) [winter27 backport]
engine-dom: Guard repeat rendererFactory invocations behind a flag (W-23814927) [winter27 backport]
What's Changed
engine-core: Invoke compiled template via intrinsic apply behind a flag (W-23790290) [winter27 backport]
engine: opt-in hook for parseFragment static content (W-23814957) [winter27 backport]
engine-dom: Guard repeat rendererFactory invocations behind a flag (W-23814927) [winter27 backport]
hydration: Only hydrate components (W-23722850) [winter27 backport]
engine-core: Guard bridge element property accessors against non-public member access (W-23641816) [winter27 backport]
9.3.5 – 9.3.62 releases with no change for you1 dependency updates, 1 maintenancejs-yaml 4.2.0vite 8.0.16prettier 3.8.4and 2 moreShow each
- 9.3.621 Jul 2026docs, tests or tooling
- 9.3.517 Jul 2026js-yaml 4.2.0vite 8.0.16prettier 3.8.4and 2 more
9.3.4
1 Jun 2026ssr: Properly handle arbitrary default exports @W-21733282
What's Changed
ssr: Properly handle arbitrary default exports @W-21733282
9.3.3
1 Jun 20269.2.2
29 Apr 2026Remove ENABLE_LEGACY_SIGNAL_CONTEXT_VALIDATION that hasn't been used in 3 releases
What's Changed
Remove ENABLE_LEGACY_SIGNAL_CONTEXT_VALIDATION that hasn't been used in 3 releases
9.2.1
23 Apr 2026Add more private method tests
Fix attach shadow in synthetic
What's Changed
Add more private method tests
Fix attach shadow in synthetic
9.2.0
15 Apr 2026Only updates a dependency:basic-ftp 5.2.2
9.1.5
28 Apr 2026Fix attach shadow in synthetic (backport)
9.1.4
15 Apr 2026Remove warning for private properties - Backport
9.1.3
13 Apr 2026Add guard to prevent attachShadow in synthetic
Remove warning for private properties
Revert "fix: add guard to prevent attachShadow in synthetic"
What's Changed
Add guard to prevent attachShadow in synthetic
Remove warning for private properties
Revert "fix: add guard to prevent attachShadow in synthetic"
9.1.2
8 Apr 2026playground: Update tsconfig
What's Changed
playground: Update tsconfig
9.1.1
25 Mar 2026@W-20770496 LWS escape by setting vm.component to <iframe> in class constructor
What's Changed
@W-20770496 LWS escape by setting vm.component to <iframe> in class constructor
9.1.0
10 Mar 2026template-compiler: Add
nameattribute for<details>Update preprocessor tag for SFCI
engine-core: Dedupe additions to
WeakMultimap@W-21387024
What's Changed
template-compiler: Add
nameattribute for<details>Update preprocessor tag for SFCI
engine-core: Dedupe additions to
WeakMultimap@W-21387024@W-20806053 Implement Private Methods
9.0.2 – 9.0.32 releases that only update dependencieswebdriverio 9.24.0qs 6.14.2systeminformation 5.31.1and 6 moreShow each
- 9.0.32 Mar 2026webdriverio 9.24.0qs 6.14.2systeminformation 5.31.1and 4 more
- 9.0.210 Feb 2026jsdom 28.0.0@commitlint/cli 20.4.1
9.0.1
5 Feb 2026Add doc urls
What's Changed
Add doc urls
9.0.0
3 Feb 2026- deprecated
@lwc/engine-serveris deprecated and won't receive further updates. Consumers should update their code to use the replacement,@lwc/ssr-runtime. - breaking
The
mainexport of each package is now ESM, rather than CommonJS. - breaking
The
experimentalDynamicComponentoption in@lwc/compileris renamed todynamicImports, and is no longer experimental.
Deprecations
- deprecated
@lwc/engine-serveris deprecated and won't receive further updates. Consumers should update their code to use the replacement,@lwc/ssr-runtime.
Breaking Changes
- breaking
The
mainexport of each package is now ESM, rather than CommonJS.Beginning with v9.0.3, for compatibility purposes a CJS bundle is published for each package in
dist/index.cjs.
- breaking
The
experimentalDynamicComponentoption in@lwc/compileris renamed todynamicImports, and is no longer experimental. - breaking
@lwc/babel-plugin-componentno longer performs import deduplication, as rollup provides the same functionality.This is not a breaking change for consumers of
@lwc/rollup-pluginor components on the Salesforce platform. It only impacts direct consumers of@lwc/babel-plugin-componentor@lwc/compiler.
- breaking
The type definition for wire decorators is updated. The
wirefunction now has three type parameters, rather than four. TheContextparameter was not necessary, and has been removed. Additionally, invalid@wireusage now reports errors in the correct location. Some edge cases can result in false positive errors or false negatives.Reactive properties in configs are type checked, but reactive property chains are not. For example,
{id: "$bookId"}will be type checked, but{id: "$book.id"}will not (it will always be permitted).Config values typed as
stringcannot provide type checking for reactive properties. For example,{str: "$notString"}will be permitted, even ifnotStringis not a string property on the component.To avoid unnecessarily large type unions, only objects can be used at the top level of a property chain. This excludes valid edge cases, like
"$myString.length".To avoid unnecessarily large type unions, properties from
LightningElementare excluded. This excludes valid edge cases, like"$hostElement.childElementCount".To avoid false positive errors, use a getter prop or a type assertion, such as
"$myObj.myProp" as Component["myObj"]["myProp"].For full details, view the pull request that introduced the change.
Other Changes
Packages now leverage
engines.nodeto warn when using old versions of Node.js. The officially supported Node.js versions remain the LTS releases, currently v22 and v24.Type definitions are now published using TypeScript v6.
All imports from Node's built-in modules now use the
node:protocol.
- 8.x
8.28.2
23 Jan 2026Reading the note…
8.28.1
23 Jan 2026Reading the note…
8.28.0
13 Jan 2026Reading the note…
8.27.0
6 Jan 2026Reading the note…
8.26.2
18 Dec 2025Reading the note…
8.26.1
5 Dec 2025Reading the note…
8.26.0
19 Nov 2025Reading the note…
8.25.1
19 Nov 2025Reading the note…
8.25.0
19 Nov 2025Reading the note…
8.24.0
4 Nov 2025Reading the note…
8.23.0
23 Oct 2025Reading the note…
8.22.6
13 Oct 2025Reading the note…
8.22.5
13 Oct 2025Reading the note…
8.22.4
1 Oct 2025Reading the note…
8.22.3
17 Sep 2025Reading the note…
8.22.1
12 Sep 2025Reading the note…
8.21.6
28 Aug 2025Reading the note…
8.21.4
28 Aug 2025Reading the note…
8.21.3
28 Aug 2025Reading the note…
8.21.2
15 Aug 2025Reading the note…
8.21.1
8 Aug 2025Reading the note…