Vigia

Upgrading happy-dom from 20.x to 21.x

Comparison of the public API of happy-dom 20.14.6 and 21.0.0, computed automatically from their TypeScript types. A changed signature is a candidate for a breaking change, not a certainty.

Summary

Removed import paths0
Removed exports0
Changed signatures0
Removed class or interface members177
Changed class or interface members0
Newly deprecated2
Requirement changes (engines, peer dependencies)0
New exports0

Removed exports

None detected.

Changed signatures

None detected.

Removed class or interface members

memberimportBefore
Element.static __@tagName@1334happy-domstring | null
Element.static __@localName@1336happy-domstring | null
Element.static __@namespaceURI@1338happy-domstring | null
FileList.static __@species@3388happy-dom(arrayLength?: number | undefined): any[] | <T>(arrayLength: number): T[] | <T>(...items: T[]): T[]
SVGElement.static __@tagName@1334happy-domstring | null
SVGElement.static __@localName@1336happy-domstring | null
SVGElement.static __@namespaceURI@1338happy-domstring | null
HTMLElement.static __@tagName@1334happy-domstring | null
HTMLElement.static __@localName@1336happy-domstring | null
HTMLElement.static __@namespaceURI@1338happy-domstring | null
HTMLBRElement.static __@tagName@1334happy-domstring | null
HTMLBRElement.static __@localName@1336happy-domstring | null
HTMLBRElement.static __@namespaceURI@1338happy-domstring | null
HTMLHRElement.static __@tagName@1334happy-domstring | null
HTMLHRElement.static __@localName@1336happy-domstring | null
HTMLHRElement.static __@namespaceURI@1338happy-domstring | null
HTMLLIElement.static __@tagName@1334happy-domstring | null
HTMLLIElement.static __@localName@1336happy-domstring | null
HTMLLIElement.static __@namespaceURI@1338happy-domstring | null
HTMLDivElement.static __@tagName@1334happy-domstring | null
HTMLDivElement.static __@localName@1336happy-domstring | null
HTMLDivElement.static __@namespaceURI@1338happy-domstring | null
HTMLMapElement.static __@tagName@1334happy-domstring | null
HTMLMapElement.static __@localName@1336happy-domstring | null
HTMLMapElement.static __@namespaceURI@1338happy-domstring | null
HTMLModElement.static __@tagName@1334happy-domstring | null
HTMLModElement.static __@localName@1336happy-domstring | null
HTMLModElement.static __@namespaceURI@1338happy-domstring | null
HTMLPreElement.static __@tagName@1334happy-domstring | null
HTMLPreElement.static __@localName@1336happy-domstring | null
HTMLPreElement.static __@namespaceURI@1338happy-domstring | null
HTMLBaseElement.static __@tagName@1334happy-domstring | null
HTMLBaseElement.static __@localName@1336happy-domstring | null
HTMLBaseElement.static __@namespaceURI@1338happy-domstring | null
HTMLBodyElement.static __@tagName@1334happy-domstring | null
HTMLBodyElement.static __@localName@1336happy-domstring | null
HTMLBodyElement.static __@namespaceURI@1338happy-domstring | null
HTMLDataElement.static __@tagName@1334happy-domstring | null
HTMLDataElement.static __@localName@1336happy-domstring | null
HTMLDataElement.static __@namespaceURI@1338happy-domstring | null
HTMLHeadElement.static __@tagName@1334happy-domstring | null
HTMLHeadElement.static __@localName@1336happy-domstring | null
HTMLHeadElement.static __@namespaceURI@1338happy-domstring | null
HTMLHtmlElement.static __@tagName@1334happy-domstring | null
HTMLHtmlElement.static __@localName@1336happy-domstring | null
HTMLHtmlElement.static __@namespaceURI@1338happy-domstring | null
HTMLLinkElement.static __@tagName@1334happy-domstring | null
HTMLLinkElement.static __@localName@1336happy-domstring | null
HTMLLinkElement.static __@namespaceURI@1338happy-domstring | null
HTMLMenuElement.static __@tagName@1334happy-domstring | null
HTMLMenuElement.static __@localName@1336happy-domstring | null
HTMLMenuElement.static __@namespaceURI@1338happy-domstring | null
HTMLMetaElement.static __@tagName@1334happy-domstring | null
HTMLMetaElement.static __@localName@1336happy-domstring | null
HTMLMetaElement.static __@namespaceURI@1338happy-domstring | null
HTMLSlotElement.static __@tagName@1334happy-domstring | null
HTMLSlotElement.static __@localName@1336happy-domstring | null
HTMLSlotElement.static __@namespaceURI@1338happy-domstring | null
HTMLSpanElement.static __@tagName@1334happy-domstring | null
HTMLSpanElement.static __@localName@1336happy-domstring | null
HTMLSpanElement.static __@namespaceURI@1338happy-domstring | null
HTMLTimeElement.static __@tagName@1334happy-domstring | null
HTMLTimeElement.static __@localName@1336happy-domstring | null
HTMLTimeElement.static __@namespaceURI@1338happy-domstring | null
HTMLDListElement.static __@tagName@1334happy-domstring | null
HTMLDListElement.static __@localName@1336happy-domstring | null
HTMLDListElement.static __@namespaceURI@1338happy-domstring | null
HTMLEmbedElement.static __@tagName@1334happy-domstring | null
HTMLEmbedElement.static __@localName@1336happy-domstring | null
HTMLEmbedElement.static __@namespaceURI@1338happy-domstring | null
HTMLLabelElement.static __@tagName@1334happy-domstring | null
HTMLLabelElement.static __@localName@1336happy-domstring | null
HTMLLabelElement.static __@namespaceURI@1338happy-domstring | null
HTMLMeterElement.static __@tagName@1334happy-domstring | null
HTMLMeterElement.static __@localName@1336happy-domstring | null
HTMLMeterElement.static __@namespaceURI@1338happy-domstring | null
HTMLOListElement.static __@tagName@1334happy-domstring | null
HTMLOListElement.static __@localName@1336happy-domstring | null
HTMLOListElement.static __@namespaceURI@1338happy-domstring | null
HTMLParamElement.static __@tagName@1334happy-domstring | null
HTMLParamElement.static __@localName@1336happy-domstring | null
HTMLParamElement.static __@namespaceURI@1338happy-domstring | null
HTMLQuoteElement.static __@tagName@1334happy-domstring | null
HTMLQuoteElement.static __@localName@1336happy-domstring | null
HTMLQuoteElement.static __@namespaceURI@1338happy-domstring | null
HTMLStyleElement.static __@tagName@1334happy-domstring | null
HTMLStyleElement.static __@localName@1336happy-domstring | null
HTMLStyleElement.static __@namespaceURI@1338happy-domstring | null
HTMLTableElement.static __@tagName@1334happy-domstring | null
HTMLTableElement.static __@localName@1336happy-domstring | null
HTMLTableElement.static __@namespaceURI@1338happy-domstring | null
HTMLTitleElement.static __@tagName@1334happy-domstring | null
HTMLTitleElement.static __@localName@1336happy-domstring | null
HTMLTitleElement.static __@namespaceURI@1338happy-domstring | null
HTMLTrackElement.static __@tagName@1334happy-domstring | null
HTMLTrackElement.static __@localName@1336happy-domstring | null
HTMLTrackElement.static __@namespaceURI@1338happy-domstring | null
HTMLUListElement.static __@tagName@1334happy-domstring | null
HTMLUListElement.static __@localName@1336happy-domstring | null
HTMLUListElement.static __@namespaceURI@1338happy-domstring | null
TextTrackCueList.static __@species@3388happy-dom(arrayLength?: number | undefined): any[] | <T>(arrayLength: number): T[] | <T>(...items: T[]): T[]
HTMLCanvasElement.static __@tagName@1334happy-domstring | null
HTMLCanvasElement.static __@localName@1336happy-domstring | null
HTMLCanvasElement.static __@namespaceURI@1338happy-domstring | null
HTMLDialogElement.static __@tagName@1334happy-domstring | null
HTMLDialogElement.static __@localName@1336happy-domstring | null
HTMLDialogElement.static __@namespaceURI@1338happy-domstring | null
HTMLIFrameElement.static __@tagName@1334happy-domstring | null
HTMLIFrameElement.static __@localName@1336happy-domstring | null
HTMLIFrameElement.static __@namespaceURI@1338happy-domstring | null
HTMLLegendElement.static __@tagName@1334happy-domstring | null
HTMLLegendElement.static __@localName@1336happy-domstring | null
HTMLLegendElement.static __@namespaceURI@1338happy-domstring | null
HTMLObjectElement.static __@tagName@1334happy-domstring | null
HTMLObjectElement.static __@localName@1336happy-domstring | null
HTMLObjectElement.static __@namespaceURI@1338happy-domstring | null
HTMLOptionElement.static __@tagName@1334happy-domstring | null
HTMLOptionElement.static __@localName@1336happy-domstring | null
HTMLOptionElement.static __@namespaceURI@1338happy-domstring | null
HTMLOutputElement.static __@tagName@1334happy-domstring | null
HTMLOutputElement.static __@localName@1336happy-domstring | null
HTMLOutputElement.static __@namespaceURI@1338happy-domstring | null
HTMLScriptElement.static __@tagName@1334happy-domstring | null
HTMLScriptElement.static __@localName@1336happy-domstring | null
HTMLScriptElement.static __@namespaceURI@1338happy-domstring | null
HTMLSourceElement.static __@tagName@1334happy-domstring | null
HTMLSourceElement.static __@localName@1336happy-domstring | null
HTMLSourceElement.static __@namespaceURI@1338happy-domstring | null
HTMLDetailsElement.static __@tagName@1334happy-domstring | null
HTMLDetailsElement.static __@localName@1336happy-domstring | null
HTMLDetailsElement.static __@namespaceURI@1338happy-domstring | null
HTMLHeadingElement.static __@tagName@1334happy-domstring | null
HTMLHeadingElement.static __@localName@1336happy-domstring | null
HTMLHeadingElement.static __@namespaceURI@1338happy-domstring | null
HTMLPictureElement.static __@tagName@1334happy-domstring | null
HTMLPictureElement.static __@localName@1336happy-domstring | null
HTMLPictureElement.static __@namespaceURI@1338happy-domstring | null
HTMLUnknownElement.static __@tagName@1334happy-domstring | null
HTMLUnknownElement.static __@localName@1336happy-domstring | null
HTMLUnknownElement.static __@namespaceURI@1338happy-domstring | null
SVGGraphicsElement.static __@tagName@1334happy-domstring | null
SVGGraphicsElement.static __@localName@1336happy-domstring | null
SVGGraphicsElement.static __@namespaceURI@1338happy-domstring | null
HTMLDataListElement.static __@tagName@1334happy-domstring | null
HTMLDataListElement.static __@localName@1336happy-domstring | null
HTMLDataListElement.static __@namespaceURI@1338happy-domstring | null
HTMLFieldSetElement.static __@tagName@1334happy-domstring | null
HTMLFieldSetElement.static __@localName@1336happy-domstring | null
HTMLFieldSetElement.static __@namespaceURI@1338happy-domstring | null
HTMLOptGroupElement.static __@tagName@1334happy-domstring | null
HTMLOptGroupElement.static __@localName@1336happy-domstring | null
HTMLOptGroupElement.static __@namespaceURI@1338happy-domstring | null
HTMLProgressElement.static __@tagName@1334happy-domstring | null
HTMLProgressElement.static __@localName@1336happy-domstring | null
HTMLProgressElement.static __@namespaceURI@1338happy-domstring | null
HTMLTableColElement.static __@tagName@1334happy-domstring | null
HTMLTableColElement.static __@localName@1336happy-domstring | null
HTMLTableColElement.static __@namespaceURI@1338happy-domstring | null
HTMLTableRowElement.static __@tagName@1334happy-domstring | null
HTMLTableRowElement.static __@localName@1336happy-domstring | null
HTMLTableRowElement.static __@namespaceURI@1338happy-domstring | null
HTMLTemplateElement.static __@tagName@1334happy-domstring | null
HTMLTemplateElement.static __@localName@1336happy-domstring | null
HTMLTemplateElement.static __@namespaceURI@1338happy-domstring | null
DataTransferItemList.static __@species@3388happy-dom(arrayLength?: number | undefined): any[] | <T>(arrayLength: number): T[] | <T>(...items: T[]): T[]
HTMLParagraphElement.static __@tagName@1334happy-domstring | null
HTMLParagraphElement.static __@localName@1336happy-domstring | null
HTMLParagraphElement.static __@namespaceURI@1338happy-domstring | null
HTMLTableCellElement.static __@tagName@1334happy-domstring | null
HTMLTableCellElement.static __@localName@1336happy-domstring | null
HTMLTableCellElement.static __@namespaceURI@1338happy-domstring | null
HTMLTableCaptionElement.static __@tagName@1334happy-domstring | null
HTMLTableCaptionElement.static __@localName@1336happy-domstring | null
HTMLTableCaptionElement.static __@namespaceURI@1338happy-domstring | null
HTMLTableSectionElement.static __@tagName@1334happy-domstring | null
HTMLTableSectionElement.static __@localName@1336happy-domstring | null
HTMLTableSectionElement.static __@namespaceURI@1338happy-domstring | null

Changed class or interface members

None detected.

Newly deprecated

export@deprecated
happy-dom · IBrowserSettings.disableCSSFileLoadingCSS file loading is disabled by default. Use "enableCSSFileLoading" to enable it.
happy-dom · IOptionalBrowserSettings.disableCSSFileLoadingCSS file loading is disabled by default. Use "enableCSSFileLoading" to enable it.

Requirement changes (engines, peer dependencies)

None detected.

Give your AI agent these facts

Vigia is a free MCP server: your coding agent checks versions, breaking changes and vulnerabilities before it writes code. No signup, no API key.

claude mcp add --transport http vigia https://vigia.coredls.cloud/mcp

Add to CursorAdd to VS Code★ Star on GitHub

Any other MCP client
{ "mcpServers": { "vigia": { "url": "https://vigia.coredls.cloud/mcp" } } }

Agent skill (SKILL.md): tells the agent when to use Vigia · GitHub Action for pull requests

Frequently asked questions

What are the breaking changes when upgrading happy-dom from 20 to 21?

Between happy-dom 20.14.6 and 21.0.0, Vigia found 0 removed exports, 0 changed signatures and 177 removed or changed class or interface members.

What became deprecated in happy-dom 21?

2 exports or members are newly marked as deprecated in happy-dom 21.0.0.

For agents

GET https://vigia.coredls.cloud/v1/packages/npm/happy-dom/upgrade?from=20.14.6&to=21.0.0