Apple on Thursday released Safari Technology Preview 143, the latest version of their developer preview web browser. The preview version of Apple’s popular browser offers developers and other interested users the ability to try out features that may or may not, debut in future public release versions of Safari.
Safari Technology Preview release 143 includes bug fixes and performance improvements for Web Inspector, CSS Container Queries, CSS Cascade Layers, Subgrid, CSS, JavaScript, Rendering, Web Animations, SVG, Scrolling, WebAuthn, WebGL, HTML, Web API, Media, Accessibility, File System Access, and Web Extensions.
Safari Technology Preview release 143 is built on the new Safari 15.4 update included in macOS Monterey, and as such, it includes several Safari 15 features.
The preview is available for both macOS Monterey and macOS Big Sur.
Release 143
Note: Tab Groups do not sync in this release.
Web Inspector
- Elements Tab
- Added option in the Layout panel of the Details Sidebar for Flexbox overlays to show each item’s CSS order and/or DOM index in the parent flex container (r290613)
- Service workers are no longer terminated while they are being inspected. (r291467)
CSS Container Queries
- Added support for nested container queries (r290257)
- Added basic support for container units (r291474)
- Changed to only apply inline-size containment when it is allowed (r291154)
- Ensured container style changes are propagated to descendants (r291500)
- Fixed getComputedStyle to update the style for invalid query containers (r290320)
- Fixed offsetWidth, offsetHeight, and similar to update layout for container queries (r290380)
- Implemented new container selection algorithm (r291098)
CSS Cascade Layers
- Added support for revert in @keyframes (r290457)
- Added support for revert-layer in @keyframes (r290729)
- Fixed revert on low-priority properties (r291260)
- Let revert-layer in the lowest layer roll back to user styles (r290864)
Subgrid
- Fixed computing the correct containing block override size for items that are subgridded in one dimension only (r290577)
- Converted grid direction to be relative to subgrid when accounting for extra margin (r290576)
- Handled reverse flow direction when converting iterator coords for a subgrid (r290572)
- Fixed subgrid items to always be stretched (r291464)
- Fixed positioning of position: absolute items within nested grids (r290674)
CSS
- Implemented text-decoration as a shorthand (r290756, r291244)
- Implemented logical properties for CSS overscroll-behavior (r290422)
- Fixed background-clip: text to work with display: flex (r291303)
JavaScript
- Added CalendarDateTime parsing (r290248)
- Fixed ShadowRealm unwinding (r290283)
- Fixed Temporal.PlainDate to validate input range (r290282)
Rendering
- Fixed image alt text bi-directional reordering (r290734)
- Fixed alt text position in right-to-left context (r290726)
- Fixed table sizing when colgroup comes after tbody (r290512)
- Fixed scrollbars disappearing when very long or wide (r290545)
- Handled perpendicular containing blocks when computing available logical height (r290634)
Web Animations
- Added support for passing an optional timeline to Element.animate() (r290655)
- Changed setting the composite property on a keyframe effect to invalidate the target style (r290741)
- Fixed inherit values should trigger keyframe recomputation if any previous effect has changed that property (r290831)
- Fixed keyframe values set to inherit to recompute their values when the inherited value changes (r290823)
- Fixed animating fill and stroke to or from currentColor (r290898)
- Fixed ::placeholder to not be a valid pseudo-element for a keyframe effect target (r290662)
- Fixed animations on modal <dialog> elements and ::backdrop to run more than once (r291282)
- Fixed outline-width with transition to animate correctly (r290735)
- Fixed text-emphasis shorthand to be animatable (r290895)
- Fixed text-emphasis-color to support non-discrete animations (r290887)
- Made changes to font-size recompute keyframes (r290730)
- Added support for discrete animation to:
- background-blend-mode (r291041)
- clip-rule (r291042)
- color-interpolation (r291008)
- color-interpolation-filters (r291043)
- counter-increment (r291090)
- counter-reset (r291099)
- dominant-baseline (r291068)
- fill-rule (r291100)
- font-family (r291040)
- font-feature-settings (r291039)
- font-kerning (r291037)
- font-synthesis (r291103)
- font-variant-alternates (r291104)
- font-variant-caps (r291119)
- font-variant-east-asian (r291109)
- font-variant-ligatures (r291114)
- font-variant-numeric (r291147)
- font-variant-position (r291115)
- grid-template-areas (r291122)
- line-break (r290885)
- marker-end (r291226)
- marker-mid (r291227)
- marker-start (r291228)
- mask-clip (r291130)
- mask-composite (r291159)
- mask-mode (r291160)
- mask-origin (r291148)
- mask-repeat (r291161)
- mask-type (r291158)
- quotes (r291128)
- scroll-behavior (r291129)
- shape-rendering (r291171)
- stroke-linecap (r291163)
- stroke-linejoin (r291164)
- text-anchor (r291166)
- text-decoration-skip-ink (r290886)
- text-emphasis-style (r290888)
- text-rendering (r291157)
- vector-effect (r291170)
SVG
- Fixed clamping animated values to the 0-1 range for:
Scrolling
- Allowed history swipe in scroller with overscroll-behavior (r291497)
- Fixed incorrect painting when scrolling a page with fixed backgrounds (r290785)
- Fixed scroll animation when scroll snap scroller is navigated with the keyboard (r290548, r290625)
- Fixed element with position: sticky after sticking, starting to move incorrectly when scrolling (r290812)
WebAuthn
- Added support for authenticatorSelection.residentKey (r291176)
- Added fallback to attestation=none if requested but unavailable for platform authenticator (r290539)
- Enabled using WebAuthn within cross-origin iframe elements (r291018)
- Improved virtual authenticator support ( r291423 , r291321)
WebGL
- Fixed WebGL rendering incorrect results when using preserveDrawingBuffer (r291218)
HTML
- Enabled the inert attribute by default (r290587)
Web API
- Enabled the Permissions API by default (r291116, r290301)
- Fixed mousemove events double-firing in Safari (r290743)
- Fixed rendering when loading a USDZ as the main resource (r290562)
- Fixed CORS preflight failing due to cache-control header (r290507)
- Fixed PerformanceNavigationTiming Response Start being unavailable when using Service Worker Cache (r291441)
- Fixed buffered flag not working in Paint Timing (r290247)
- Fixed load event never firing after a form is submitted (r290841)
- Fixed WebSocket.send() to synchronously update bufferedAmount (r290995)
- Made input element UA shadow tree creation lazy (r290284)
- Made pointer-events checks for SVG take in account inert subtrees (r290306)
- Removed the 1ms minimum for setTimeout (r291476)
Media
- AudioContext will continue playing when minimizing or moving the macOS Safari window to the background (r291267)
- Fixed scrambled output for some WebM videos with VP8 codec (r291216)
- Implemented remote-inbound-rtp packetsLost (r290865)
Accessibility
- Updated WebSpeech API support (r291124)
File System Access
- Changed to throw an exception if a file or directory cannot be accessed in file system (r291014)
- Disallowed empty name in FileSystemHandle (r290998)
- Disallowed names that are not permitted by the underlying file system (r291057)
- Fixed fetching website data that may get a wrong or missing record after migrating data to general storage directory (r290239, r290233)
Web Extensions
- Fixed cookie expiration dates so they are not off by 30 years
While the preview is intended for use by developers and advanced users, in order to provide Apple with feedback on the development of the Safari browser, it can be run side-by-side with the release version of Safari. The app doesn’t require a developer account to download and install. For more information, visit the Safari Technology Preview website.