Skip to content

Conversation

@chrisdavidmills
Copy link
Contributor

Summary

Chrome 143 adds support for the WebGPU texture-component-swizzle feature, which, when enabled, allows usage of the createView() method's swizzle option that allows developers to perform color swizzles.

See https://chromestatus.com/feature/5110223547269120.

This PR adds a data point for both the feature and the option.

I also took this opportunity to clean up the rest of the Chrome feature data, as a bunch of the entries weren't quite right (the Chrome Android data shouldn't mirror Chrome when Chrome is marked partial implementation and has a note, neither of which are relevant to CxA).

Test results and supporting details

Related issues

@github-actions github-actions bot added data:api Compat data for Web APIs. https://developer.mozilla.org/docs/Web/API size:l [PR only] 101-1000 LoC changed labels Nov 7, 2025
@github-actions
Copy link
Contributor

github-actions bot commented Nov 7, 2025

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

@caugner
Copy link
Contributor

caugner commented Nov 12, 2025

I also took this opportunity to clean up the rest of the Chrome feature data, as a bunch of the entries weren't quite right (the Chrome Android data shouldn't mirror Chrome when Chrome is marked partial implementation and has a note, neither of which are relevant to CxA).

Note that this will be partially fixed by #28226, so some of the statements will become "mirror" again, except the ones where Chrome has two notes.

Copy link
Contributor

@caugner caugner left a comment

Choose a reason for hiding this comment

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

We need to run npm ci && npm run fix once on this branch, which will revert some now Chrome Android statements to mirror.

As for other changes, I left some comments. (Sorry, reviewed last week and missed to submit.)

@chrisdavidmills
Copy link
Contributor Author

We need to run npm ci && npm run fix once on this branch, which will revert some now Chrome Android statements to mirror.

As for other changes, I left some comments. (Sorry, reviewed last week and missed to submit.)

Thanks! I ran the command as suggested and also added a missing comma.

Copy link
Contributor

@caugner caugner left a comment

Choose a reason for hiding this comment

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

Could we extract the other changes to a separate PR?

This should be straight-forward:

  1. Copy the branch (git checkout -b webgpu-fixes)
  2. Remove the swizzle features in that branch.

Then we can merge that PR first, afterwards merge main into this one, which would only leave adding the new swizzle features.

"chrome_android": "mirror",
"chrome_android": {
"version_added": "139",
"notes": "Available on all adapters and enabled automatically on all devices even if not requested."
Copy link
Contributor

Choose a reason for hiding this comment

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

I understand that this is note is pre-existing, but what does it mean for web developers? Are there certain things that don't work, and why does it not justify partial_implementation: true?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

It is a feature that represents the basic, core featureset of WebGPU without requesting any extra features or advanced featuresets (which may well follow in the future). It is always available unless your GPU Adapter is set to "compatibility mode". I'm not 100% sure why they needed a specific feature name to represent the feature status quo.

@chrisdavidmills
Copy link
Contributor Author

Could we extract the other changes to a separate PR?

This should be straight-forward:

1. Copy the branch (`git checkout -b webgpu-fixes`)

2. Remove the `swizzle` features in that branch.

Then we can merge that PR first, afterwards merge main into this one, which would only leave adding the new swizzle features.

Sure. Done in #28525.

@github-actions
Copy link
Contributor

This pull request has merge conflicts that must be resolved before it can be merged.

@github-actions github-actions bot added the merge conflicts 🚧 This PR needs to merge latest "main" branch to resolve a merge conflict or other issue. label Nov 25, 2025
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 merge conflicts 🚧 This PR needs to merge latest "main" branch to resolve a merge conflict or other issue. size:l [PR only] 101-1000 LoC changed

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants