Skip to content

v1.1.0

Choose a tag to compare

@github-actions github-actions released this 23 Jul 01:45
· 107 commits to main since this release

1.1.0 (2026-07-23)

✨ Features

  • customelements: add customElements.upgrade(root) (7e2f115)
  • dom: add .content (ba186c6)
  • dom: add Blob and FileReader (fab5aeb)
  • dom: add CSSOM (document.styleSheets, CSSStyleRule, insertRule) (b84048a)
  • dom: add document.cookie (1c857be)
  • dom: add document.doctype and forms/images/scripts/links/getElementsByName (a6ade18)
  • dom: add DOMContentLoaded/load events on document/window (db4701b)
  • dom: add DOMException with legacy error codes (2ce3c3d)
  • dom: add FormData and form submit flow (064d4f0)
  • dom: add node.normalize() and compareDocumentPosition() (2998d2c)
  • dom: add Shadow DOM (attachShadow/shadowRoot) (085b27e)
  • dom: add template/doctype/normalize/comparePosition natives (5ee4302)
  • dom: add value/checked form element properties (4a8761b)
  • dom: add XMLSerializer.serializeToString() (ef05e1b)
  • dom: implement Custom Elements bindings (cfa91e6)
  • events: add KeyboardEvent and MouseEvent constructors (7e03e91)
  • quickjs: add AbortController/AbortSignal (965ab96)
  • quickjs: add crypto.getRandomValues (de258a7)
  • quickjs: add global URL/URLSearchParams (dd68bc8)
  • quickjs: add requestAnimationFrame, performance.now, queueMicrotask (f848f48)
  • quickjs: expose Node/Element/HTMLElement/Document globals (8c252bb)
  • quickjs: make children/childNodes/getElementsBy* live (6061b3a)
  • quickjs: stub getBoundingClientRect() with a zeroed rect (b325286)
  • sandbox: add atob/btoa globals (c903a0f)
  • sandbox: add navigator and matchMedia (07a587f)
  • sandbox: add TextEncoder/TextDecoder (cf20ae2)
  • sandbox: wire up pretendToBeVisual to document.hidden (92935b0)
  • shadowdom: add slot assignment and slotchange (bfe6f1e)
  • 🐛 Bug Fixes

    • android: register CustomElementsBindings.cpp in CMakeLists (e63ed02)
    • customelements: bound sync cost to the touched subtree (325af7e)
    • customelements: make subtree sync shadow-aware (f08f86d)
    • customelements: throw TypeError for non-Node upgrade() root (e680bb7)
    • deps: add nkf/tsort gems for Ruby 4.0 stdlib removal (051c753)
    • dom: add document/window removeEventListener (5c95c98)
    • dom: cache document.doctype for stable identity (f05dc9a)
    • dom: invalidate deep node cache in textarea value setter too (71a5572)
    • dom: notify MutationObserver from select/textarea/checked setters (11dd0c9)
    • dom: preserve exceptions and invalidate full subtrees on destroy (8d926f2)
    • dom: treat cookie expires/max-age as deletion (d082acb)
    • lexbor: skip non-JS <script type> execution (3aa5e04)
    • quickjs: anchor performance.now() to a time origin (3a4d0bb)
    • quickjs: guard LiveCollectionBindings class ID against reallocation (6fde459)
    • quickjs: prevent evaluate() reentrancy deadlock (e17961d)
    • quickjs: respect registration order for AbortSignal.onabort (6bd3955)
    • quickjs: use byteLength and a real CSPRNG in getRandomValues (98f9e06)
    • sandbox: catch script errors during initialize (6899947)
    • sandbox: preserve embedded NUL bytes in atob/btoa (da7199a)

    📚 Documentation

    • overview: add v0.9/v0.10 to the roadmap (59d9845)
    • overview: check off v0.10 roadmap items (4a5915a)
    • testing: document harness test convention for C++ bindings (7b52e53)
    • website: add testing WebView logic guide (ba75f58)

    🛠️ Other changes

    • ios: bump CocoaPods version in Podfile.lock (3ccb20c)