npm / lit
lit
What changed in lit 3, from its official release notes, upgrade guides and advisories. Sources checked 2026-10-23.
5 breaking1 deprecations5 fixes and other
See which of these apply to your code, ranked, in your agent:
npx @unstale/cli initlit 311 changes
Breaking changes 5
Generated reactive-property accessors now wrap user accessors and call this.requestUpdate() in the setter; with noAccessor: true, users must call it themselves to trigger an update.
Experimental hydrate modules were removed; they are available from @lit-labs/ssr-client.
IE11 is no longer supported.
Lit 1 to Lit 2 migration warnings were removed.
The deprecated queryAssignedNodes behavior and arguments were deleted; use @queryAssignedElements for selector-based usage.
Deprecations 1
Lit now warns when performUpdate() is overridden asynchronously.
Fixes and other changes 5
The ref directive now disconnects gracefully when its internal ref is undefined.
Decorators now work with the accessor keyword when experimentalDecorators is true.
The return type now includes undefined.
Its return type is now HTMLElement | DocumentFragment, matching ReactiveElement.renderRoot and lit-html's render() method.
The type is now HTMLElement | DocumentFragment, matching the return type of createRenderRoot() and lit-html's render() method.