Release Notes for Safari Technology Preview 105

Safari Technology Preview Release 105 is now available for download for macOS Catalina and macOS Mojave. If you already have Safari Technology Preview installed, you can update in the Software Update pane of System Preferences on macOS.

This release covers WebKit revisions 259476-260266.


  • Added Selectors Level 4 specificity calculation for pseudo classes (r260024, r260069)
  • Added support for font-relative lh and rlh unit frp, CSS Values Level 4 specification (r259703)
  • Corrected the computed style for outline-offset when outline-style is none (r259562)
  • Fixed bad style sharing between sibling elements with different part attributes for CSS Shadow Parts (r259877)
  • Implemented the CSS Color Level 4 behavior for inheritance of currentColor (r259532)
  • Prevented caching definite height against perpendicular flex items (r260055)


  • Fixed Intl.DateTimeFormat patterns and fields (r260145)
  • Implemented BigInt.prototype.toLocaleString` (r259919)
  • Updated Intl to allow calendar and numberingSystem options (r259941)
  • Implemented logical assignment operators (r260119)
  • Updated canonicalizeLocaleList to gracefully throw OOM error if the input and error message is too large (r259481)
  • Updated module’s default cross-origin value should be “anonymous” (r260003, r260038)


  • Made a change to update ScreenTime as playback state changes (r260182, r260201)
  • Filtered some capture device names (r259477)
  • Added support for applying a frameRate limit when the request stream is from Camera (r260245)

Web Animations

  • Added support for pseudoElement on KeyframeEffect and KeyframeEffectOptions (r260139)
  • Fixed computing transition-property correctly when transition-duration is set to inherit (r259720)


  • Fixed smart invert to handle the picture elements on (r260092)


  • Fixed drawing an image srcRect and imageRect to be in the same orientation of destRect (r260016)
  • Fixed a missing gradient banner on (r259701)


  • Fixed querySelector("#\u0000") to match an element with ID U+FFFD (r259773)
  • Fixed scroll snap in subframes when async overflow scroll is enabled (r260086)
  • Fixed zoom changes to not affect ResizeObserverSize (r259578)
  • Updated CanvasRenderingContext2D.drawImage to ignore the EXIF orientation if the image-orientation is none (r259567)
  • Updated documentFragment.getElementById() not work for empty-string IDs (r259651)
  • Updated baseURL for a module script to be the response URL, not the request URL (r260131)

Web Inspector

  • Elements Tab
    • De-indented items in the Variables section in the Computed sidebar panel so that wrapped content doesn’t line up with -- (r260096)
  • Sources Tab
    • Added support for copying selected call frame(s) in the Call Stack section (r259738)
    • Added a “Step” button that continues execution to the next expression in the current call frame (r260113)
    • Treated comma sub-expressions as separate statements to provide more intuitive formatting, additional breakpoint opportunities, and better stepping functionality (r259781, r259810)
  • Storage Tab
    • Provided a way to delete multiple localStorage or sessionStorage entries (r259744)
    • Allowed cookies to be set with no value (r259842)
    • Fixed an issue where cookies weren’t shown on pages that have subframes that have been denied access to cookies (r259649)
  • Console Tab
    • Ensured that long strings are not truncated when passed to console functions (r260091)
  • Search Tab
    • Added a setting that controls whether search field is populated with the current selection when using the global search shortcut ⇧⌘F (r259748)
  • Miscellaneous
    • Increased the auto-inspect debugger timeout delay to account for slower networks/devices (r259479)