OWD Coordination Project: Audit, clean and set-up a maintenance process for -webkit and -moz prefixed properties
The problem
MDN has two pages listing prefixed properties that are available to web developers:
- https://developer.mozilla.org/en-US/docs/Web/CSS/WebKit_Extensions
- https://developer.mozilla.org/en-US/docs/Web/CSS/Mozilla_Extensions
These pages have the following problems:
- They are most of the time outdated
- Poorly organized (it is difficult to understand what is standardized with the prefix (as part of the Compatibiliy spec), what is non-standard but has no standard counterpart, and what features are non-standard and have a standard equivalent that should be used instead.
MDN regularly gets issues about it. For example: mdn/content#27631
Solution
The openwebdocs/mdn-bcd-collector tool can detect whether a given property exists. As it can detect newly added CSS features only if they are part of a specification, it has not detected the prefixed properties that are not part of the Compatiblity spec.
The collector has an extension mechanism where new tests can be added. By adding tests for the existing prefixed features, we will have a signal when a prefixed feature compatibility changes. Thanks to the automation pipeline currently being set up, these changes will be notified to maintainers.
Once we have an up-to-date list of prefixed features in BCD, we can audit and reorganize these two pages to make them more useful to web developers.
What the solution doesn't solve
This solution doesn't detect new prefixed features. This should be rare, as browser makers agreed not to add new prefixed features many years ago. Trying to set up a process for such exceptional events would be overkill.
Plan
- [x] Add tests in
openwebdocs/mdn-bcd-collectorfor missing-webkitproperties (openwebdocs/mdn-bcd-collector#952). - [x] Add missing bcd entries for
-webkitproperties inmdn/browser-compat-data(mdn/browser-compat-data#21621). - [x] Reorganize properties in
mdn/contenton the WebKit extensions page. (mdn/content#31223) - [ ] Add tests in
openwebdocs/mdn-bcd-collectorfor missing-webkitpseudo-classes and pseudo-elements. - [ ] Add missing bcd entries for
-webkitpseudo-elements and pseudo-classes inmdn/browser-compat-data. - [ ] Reorganize selectors in
mdn/contenton the WebKit extensions page. - [ ] Add tests in
openwebdocs/mdn-bcd-collectorfor missing-mozproperties. - [ ] Add missing bcd entries for
-mozproperties inmdn/browser-compat-data. - [ ] Add tests in
openwebdocs/mdn-bcd-collectorfor missing-mozpseudo-classes and pseudo-elements. - [ ] Add missing bcd entries for
-mozpseudo-elements and pseudo-classes inmdn/browser-compat-data. - [ ] Reorganize in
mdn/contentthe Mozilla extensions page.