Skip to content

Updates for Safari TP 251 - #30347

Merged
ddbeck merged 4 commits into
mdn:mainfrom
Elchi3:safari-tp-251
Sep 1, 2026
Merged

Updates for Safari TP 251#30347
ddbeck merged 4 commits into
mdn:mainfrom
Elchi3:safari-tp-251

Conversation

@Elchi3

@Elchi3 Elchi3 commented Aug 27, 2026

Copy link
Copy Markdown
Member

The https://collector.openwebdocs.org/ project (v10.20.8) found new features shipping in Safari Technical Preview 251 on macOS 27.0 Beta which was released yesterday. Currently, the collector covers about 90% of BCD, so the following list might not be exhaustive.

See also https://webkit.org/blog/18194/release-notes-for-safari-technology-preview-251/

From reading the release notes, it is also possible that HTMLMediaElement.removeTextTrack is included, but the spec update has not been merged so our tooling doesn't have the IDL yet. whatwg/html#12735

This PR now marks the following 184 features as "preview" (bold are new features)

  1. api.CSSFontFaceDescriptors.ascent-override
  2. api.CSSFontFaceDescriptors.ascentOverride
  3. api.CSSFontFaceDescriptors.descent-override
  4. api.CSSFontFaceDescriptors.descentOverride
  5. api.CSSFontFaceDescriptors.line-gap-override
  6. api.CSSFontFaceDescriptors.lineGapOverride
  7. api.FontFace.ascentOverride
  8. api.FontFace.descentOverride
  9. api.FontFace.lineGapOverride
  10. api.HTMLElement.popover.hint
  11. api.HighlightRegistry.highlightsFromPoint
  12. api.ImageDecoder
  13. api.ImageDecoder.ImageDecoder
  14. api.ImageDecoder.close
  15. api.ImageDecoder.complete
  16. api.ImageDecoder.completed
  17. api.ImageDecoder.decode
  18. api.ImageDecoder.isTypeSupported_static
  19. api.ImageDecoder.reset
  20. api.ImageDecoder.tracks
  21. api.ImageDecoder.type
  22. api.ImageTrack
  23. api.ImageTrack.animated
  24. api.ImageTrack.frameCount
  25. api.ImageTrack.repetitionCount
  26. api.ImageTrack.selected
  27. api.ImageTrackList
  28. api.ImageTrackList.length
  29. api.ImageTrackList.ready
  30. api.ImageTrackList.selectedIndex
  31. api.ImageTrackList.selectedTrack
  32. api.NavigationPrecommitController
  33. api.NavigationPrecommitController.addHandler
  34. api.NavigationPrecommitController.redirect
  35. api.NavigationTransition.committed
  36. api.NavigationTransition.to
  37. api.WebTransport.responseHeaders (see [WebTransport] Add headers and responseHeaders support WebKit/WebKit#61874)
  38. css.at-rules.supports.at-rule
  39. css.properties.corner-block-end-shape
  40. css.properties.corner-block-end-shape.bevel
  41. css.properties.corner-block-end-shape.notch
  42. css.properties.corner-block-end-shape.round
  43. css.properties.corner-block-end-shape.scoop
  44. css.properties.corner-block-end-shape.square
  45. css.properties.corner-block-end-shape.squircle
  46. css.properties.corner-block-start-shape
  47. css.properties.corner-block-start-shape.bevel
  48. css.properties.corner-block-start-shape.notch
  49. css.properties.corner-block-start-shape.round
  50. css.properties.corner-block-start-shape.scoop
  51. css.properties.corner-block-start-shape.square
  52. css.properties.corner-block-start-shape.squircle
  53. css.properties.corner-bottom-left-shape
  54. css.properties.corner-bottom-left-shape.bevel
  55. css.properties.corner-bottom-left-shape.notch
  56. css.properties.corner-bottom-left-shape.round
  57. css.properties.corner-bottom-left-shape.scoop
  58. css.properties.corner-bottom-left-shape.square
  59. css.properties.corner-bottom-left-shape.squircle
  60. css.properties.corner-bottom-right-shape
  61. css.properties.corner-bottom-right-shape.bevel
  62. css.properties.corner-bottom-right-shape.notch
  63. css.properties.corner-bottom-right-shape.round
  64. css.properties.corner-bottom-right-shape.scoop
  65. css.properties.corner-bottom-right-shape.square
  66. css.properties.corner-bottom-right-shape.squircle
  67. css.properties.corner-bottom-shape
  68. css.properties.corner-bottom-shape.bevel
  69. css.properties.corner-bottom-shape.notch
  70. css.properties.corner-bottom-shape.round
  71. css.properties.corner-bottom-shape.scoop
  72. css.properties.corner-bottom-shape.square
  73. css.properties.corner-bottom-shape.squircle
  74. css.properties.corner-end-end-shape
  75. css.properties.corner-end-end-shape.bevel
  76. css.properties.corner-end-end-shape.notch
  77. css.properties.corner-end-end-shape.round
  78. css.properties.corner-end-end-shape.scoop
  79. css.properties.corner-end-end-shape.square
  80. css.properties.corner-end-end-shape.squircle
  81. css.properties.corner-end-start-shape
  82. css.properties.corner-end-start-shape.bevel
  83. css.properties.corner-end-start-shape.notch
  84. css.properties.corner-end-start-shape.round
  85. css.properties.corner-end-start-shape.scoop
  86. css.properties.corner-end-start-shape.square
  87. css.properties.corner-end-start-shape.squircle
  88. css.properties.corner-inline-end-shape
  89. css.properties.corner-inline-end-shape.bevel
  90. css.properties.corner-inline-end-shape.notch
  91. css.properties.corner-inline-end-shape.round
  92. css.properties.corner-inline-end-shape.scoop
  93. css.properties.corner-inline-end-shape.square
  94. css.properties.corner-inline-end-shape.squircle
  95. css.properties.corner-inline-start-shape
  96. css.properties.corner-inline-start-shape.bevel
  97. css.properties.corner-inline-start-shape.notch
  98. css.properties.corner-inline-start-shape.round
  99. css.properties.corner-inline-start-shape.scoop
  100. css.properties.corner-inline-start-shape.square
  101. css.properties.corner-inline-start-shape.squircle
  102. css.properties.corner-left-shape
  103. css.properties.corner-left-shape.bevel
  104. css.properties.corner-left-shape.notch
  105. css.properties.corner-left-shape.round
  106. css.properties.corner-left-shape.scoop
  107. css.properties.corner-left-shape.square
  108. css.properties.corner-left-shape.squircle
  109. css.properties.corner-right-shape
  110. css.properties.corner-right-shape.bevel
  111. css.properties.corner-right-shape.notch
  112. css.properties.corner-right-shape.round
  113. css.properties.corner-right-shape.scoop
  114. css.properties.corner-right-shape.square
  115. css.properties.corner-right-shape.squircle
  116. css.properties.corner-shape
  117. css.properties.corner-shape.bevel
  118. css.properties.corner-shape.notch
  119. css.properties.corner-shape.round
  120. css.properties.corner-shape.scoop
  121. css.properties.corner-shape.square
  122. css.properties.corner-shape.squircle
  123. css.properties.corner-start-end-shape
  124. css.properties.corner-start-end-shape.bevel
  125. css.properties.corner-start-end-shape.notch
  126. css.properties.corner-start-end-shape.round
  127. css.properties.corner-start-end-shape.scoop
  128. css.properties.corner-start-end-shape.square
  129. css.properties.corner-start-end-shape.squircle
  130. css.properties.corner-start-start-shape
  131. css.properties.corner-start-start-shape.bevel
  132. css.properties.corner-start-start-shape.notch
  133. css.properties.corner-start-start-shape.round
  134. css.properties.corner-start-start-shape.scoop
  135. css.properties.corner-start-start-shape.square
  136. css.properties.corner-start-start-shape.squircle
  137. css.properties.corner-top-left-shape
  138. css.properties.corner-top-left-shape.bevel
  139. css.properties.corner-top-left-shape.notch
  140. css.properties.corner-top-left-shape.round
  141. css.properties.corner-top-left-shape.scoop
  142. css.properties.corner-top-left-shape.square
  143. css.properties.corner-top-left-shape.squircle
  144. css.properties.corner-top-right-shape
  145. css.properties.corner-top-right-shape.bevel
  146. css.properties.corner-top-right-shape.notch
  147. css.properties.corner-top-right-shape.round
  148. css.properties.corner-top-right-shape.scoop
  149. css.properties.corner-top-right-shape.square
  150. css.properties.corner-top-right-shape.squircle
  151. css.properties.corner-top-shape
  152. css.properties.corner-top-shape.bevel
  153. css.properties.corner-top-shape.notch
  154. css.properties.corner-top-shape.round
  155. css.properties.corner-top-shape.scoop
  156. css.properties.corner-top-shape.square
  157. css.properties.corner-top-shape.squircle
  158. css.properties.object-view-box
  159. css.properties.object-view-box.none
  160. css.types.attr.type_function
  161. css.types.attr.type_function.angle
  162. css.types.attr.type_function.color
  163. css.types.attr.type_function.custom-ident
  164. css.types.attr.type_function.ident
  165. css.types.attr.type_function.image
  166. css.types.attr.type_function.integer
  167. css.types.attr.type_function.length
  168. css.types.attr.type_function.length-percentage
  169. css.types.attr.type_function.number
  170. css.types.attr.type_function.percentage
  171. css.types.attr.type_function.resolution
  172. css.types.attr.type_function.string
  173. css.types.attr.type_function.time
  174. css.types.attr.type_function.transform-function
  175. html.global_attributes.popover.hint
  176. javascript.builtins.Iterator.chunks
  177. javascript.builtins.Iterator.includes
  178. javascript.builtins.Iterator.join
  179. javascript.builtins.Iterator.windows
  180. javascript.builtins.Iterator.zip
  181. javascript.builtins.Iterator.zipKeyed
  182. javascript.regular_expressions.buffer_boundary_assertion
  183. webassembly.api.Exception.stack
  184. webassembly.memory64

@github-actions github-actions Bot added data:api Compat data for Web APIs. https://developer.mozilla.org/docs/Web/API data:css Compat data for CSS features. https://developer.mozilla.org/docs/Web/CSS data:js Compat data for JS/ECMAScript features. https://developer.mozilla.org/docs/Web/JavaScript data:html Compat data for HTML elements. https://developer.mozilla.org/docs/Web/HTML data:wasm Compat data for Web Assembly features. https://developer.mozilla.org/en-US/docs/WebAssembly size:l [PR only] 101-1000 LoC changed labels Aug 27, 2026
@github-actions

github-actions Bot commented Aug 27, 2026

Copy link
Copy Markdown
Contributor

Tip: Review these changes grouped by change (recommended for most PRs), or grouped by feature (for large PRs).

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should I be worried that the font face descriptor API changes don't seem to get a mention in the Safari TP 251 release notes? Given WebKit/WebKit#69062 and WebKit/WebKit#71020, I would expect changes in both the css.at-rules.font-face and api.CSSFontFaceDescriptors trees, but only the API is showing here. Any idea what happened here?

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, this is the collector's fault which does well on the API surface but doesn't always test keys in css.* (the API test should probably apply for these css.at-rules.* keys, too.

Fixed in f534846

Comment thread api/WebTransport.json
Comment thread css/types/attr.json
"opera_android": "mirror",
"safari": {
"version_added": false
"version_added": "preview"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This helped me catch a number of issues:

  1. This and the release notes suggest that webassembly.api.Exception.Exception.options_parameter_traceStack should also be flipped to "preview".
  2. The existing data on webassembly.api.Exception.Exception.options_parameter_traceStack is wrong (at least for Safari, where it shows support since 15.2).
  3. webassembly.api.Exception.stack and webassembly.api.Exception.Exception.options_parameter_traceStack should not be non-standard and should link to their respective spec URLs.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've addressed this in a0612dd

@ddbeck
ddbeck merged commit 39b2f3a into mdn:main Sep 1, 2026
10 checks passed
@mdn-bot mdn-bot mentioned this pull request Sep 1, 2026
@Elchi3
Elchi3 deleted the safari-tp-251 branch September 1, 2026 15:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

data:api Compat data for Web APIs. https://developer.mozilla.org/docs/Web/API data:css Compat data for CSS features. https://developer.mozilla.org/docs/Web/CSS data:html Compat data for HTML elements. https://developer.mozilla.org/docs/Web/HTML data:js Compat data for JS/ECMAScript features. https://developer.mozilla.org/docs/Web/JavaScript data:wasm Compat data for Web Assembly features. https://developer.mozilla.org/en-US/docs/WebAssembly size:l [PR only] 101-1000 LoC changed

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants