Skip to content

Conversation

queengooborg
Copy link
Contributor

This PR updates and corrects version values for Safari (Desktop and iOS/iPadOS) for the ExtendableCookieChangeEvent API. The mdn-bcd-collector reported this to be unsupported in Safari 18.4 through 18.6, even though it was reported as supported in Safari 18.4 beta. After doing some additional digging, it appears that this feature was hidden behind a flag that must have been enabled in 18.4 beta but disabled in stable releases.

This PR updates and corrects version values for Safari (Desktop and iOS/iPadOS) for the `ExtendableCookieChangeEvent` API. The mdn-bcd-collector reported this to be unsupported in Safari 18.4 through 18.6, even though it was reported as supported in Safari 18.4 beta. After doing some additional digging, it appears that this feature was hidden behind a flag that must have been enabled in 18.4 beta but disabled in stable releases.
@queengooborg queengooborg added the data:api Compat data for Web APIs. https://developer.mozilla.org/docs/Web/API label Sep 8, 2025
@github-actions github-actions bot added the size:m [PR only] 25-100 LoC changed label Sep 8, 2025
Copy link
Contributor

github-actions bot commented Sep 8, 2025

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

Comment on lines +67 to +72
"flags": [
{
"name": "Cookie Store API CookieStoreManager",
"type": "preference",
"value_to_set": "Enabled"
}
Copy link
Contributor

Choose a reason for hiding this comment

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

Do we really need to repeat the flags on the subfeatures?

In #27726, I asked for these to be removed. If the interface is behind a flag, all the subfeatures are implicitly behind that flag as well, aren't they? Similarly, if a parent feature is only implemented with an alternative name, we don't specify the alternative name on the subfeatures (it would be misleading).

Copy link
Contributor Author

@queengooborg queengooborg Sep 9, 2025

Choose a reason for hiding this comment

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

Yes, we should be propagating the flag data down to subfeatures.

Unlike prefixes or alternative names, flags apply directly to the subfeatures as well. By copying the data down to subfeatures, it allows consumers to understand that a flag must be enabled for the feature, even if they're looking at a small scope such as a single method or property.

Another benefit of copying the flag data down to subfeatures (and not in a build step) is that it makes it easier for tooling, such as the collector, to update this data once the flag's been enabled by default. In fact, it was actually due to the collector tests that the lack of default support was detected!

While the collector could be updated to account for parent flag data, based upon my understanding of the way the new update script works, that would involve a complete rewrite. Either that, or a whole list of results overrides would have to be maintained!

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 size:m [PR only] 25-100 LoC changed
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants