Release Notes for Safari Technology Preview 19

Safari Technology Preview Release 19 is now available for download for macOS Sierra. If you already have Safari Technology Preview installed, you can update from the Mac App Store’s Updates tab. This release covers WebKit revisions 208427-209238.

Touch Bar

  • Added support for Touch Bar in WebKit (r208452)

HTML Form Validation

  • Enabled HTML interactive form validation (r209060)

Pointer Lock API

  • Enabled Pointer Lock API (r208903)

Input Events

  • Fixed compositionEnd events to fire after input events when editing in IME (r208462)
  • Fixed firing an input event with color data when setting the foreground color for selected text (r208461)

URL Parser

  • Changed URL Parser to prevent treating the first slash after the colon as the path for URLs with no host (r208508)

Custom Elements

  • Fixed document.createElementNS to construct a custom element (r208716)

CSS Font Loading

  • Fixed promises failing to fire for FontFace.load() and FontFaceSet.load() (r208976, r208889)

Shadow DOM

  • Fixed triggering style recalculation when toggling a class in .class ::slotted(*) (r208610)
  • Fixed event.composedPath() to include window (r208641)
  • Fixed slot to work as a flex container (r208743)
  • Fixed the slotChange event to bubble and be dispatched once (r208817)
  • Fixed slot nodes that ignored transition events (r209065)
  • Fixed document.currentScript to be null when running a script inside a shadow tree (r208660)
  • Fixed the hover state when hovering over a slotted Text node (r208630)

Web Inspector

  • Added support to shift-click on a named color value to cycle through different color formats (r208857)
  • Added support for the Type Profiler and the Code Coverage Profiler in Workers (r208664)
  • Changed selecting folders to display content in the Resources sidebar (r208441)
  • Disabled Warning Filter in Debugger Tab by default (r208701)
  • Improved name sorting in HeapSnapshot data grids (r209115)
  • Improved Worker debugging to pause all targets and view call frames in all targets (r208725)
  • Improved Debugger stack traces to display names for Generator functions (r208885)
  • Improved Debugger to show execution lines for background threads (r208783)
  • Improved Debugger to include showing asynchronous call stacks (r209062, r209213)
  • Fixed URL Breakpoints that resolve in multiple workers to only appear in the UI once (r208746)
  • Fixed layout and display issues in the Settings tab (r208510, r208591, r208686)
  • Made checkbox labels clickable in the Settings tab (r208443)


  • Fixed an issue where elements with a negative z-index could sometimes render behind the document body (r208981)
  • Changed the way unsupported emoji are drawn from being invisible to being the empty box (r208894)
  • Changed flex element wrapping to consider when the width is less than min-width (r209068)

Indexed Database 2.0

  • Implemented IDBCursor.continuePrimaryKey() (r208500)
  • Implemented IDBObjectStore.getKey() (r209197)
  • De-duplicated the names returned by IDBDatabase.objectStoreNames() (r208501)
  • Added support for the IDBDatabase.onclose event (r208568)
  • Fixed some issues with the firing of IDBRequest.onblocked events (r208609)
  • Improved the performance of key (de)serialization during SQLite lookups (r208771)
  • Improved SQLiteStatement performance throughout the SQLite backend (r209096, r209144)
  • Agressively flush the client’s request queue to the server (r209086)


  • Changed the inverted-colors media query to match on state change instead of page reload (r208915)
  • Fixed the implicit value for aria-level on headings to match the ARIA 1.1 specification (r208696)
  • Exposed aria-busy attribute for authors to indicate when an area of the page is finished updating (r208924)


  • Exposed navigator.webdriver if the page is controlled by automation (r209198)
  • Changed the automation session to terminate if the web process crashes (r208657)


  • Fixed an issue where some animated images would not animate after reseting their animations (r209131)


  • Changed the keygen element to require 2048 or higher RSA key lengths (r208858)
  • Changed to be cleared after a cross-origin navigation (r209076)

Bug Fixes

  • Fixed an issue causing copied text to include the text of CDATA sections and comments (r208565)
  • Improved the performance of setting attributes on input elements of type text (r208653)
  • Fixed a crash when interacting with Issues and Pull Requests on (r208967)
  • Fixed broken tab-focus navigation on some sites (r208922)
  • Fixed a JS bindings generation issue that erroneously caused IntersectionObserver to be exposed, which broke Pinterest, Strava and Netflix (r208983)