-
-
Notifications
You must be signed in to change notification settings - Fork 42
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
OWD BCD project: Implement a process for updating BCD whenever a new browser release is available #168
Comments
This is a very important project! Quick question on step 2. if I may: Where can I find the collector website ? |
It currently lives here https://mdn-bcd-collector.gooborg.com |
Wow, thank you! Very helpful! |
@queengooborg @Elchi3 This is something the Bocoup team have on our roadmap to tackle, can we please add it to the agenda for discussion at Tuesday's (03/Oct/23) meeting? |
@lolaodelola Yes, it has been on the agenda already. Would be lovely if you could join! |
One important piece here is automating the creation of pull requests, as discussed in openwebdocs/mdn-bcd-collector#726. The most important use case is submitting changes for a single browser release, and a mock invocation of that script might look like:
That pull request should then only include changes that affect Chrome 116, and have a reasonable subject and body, similar to the pull requests that @queengooborg submits using a standalone script. |
Open question: is it best to have a PR creation script internally invoke |
We achieved a first milestone in this project. @teoli2003 was leading this work! 🎉 Jean-Yves landed 9 pull request in mdn/browser-compat-data to automatically update the browser release information which BCD stores for these 6 BCD browsers:
More browsers can easily be added in the future and we reached out to WebKit/Safari if they could provide a data source for their release information for us. All scripts created can be found here: https://github.com/mdn/browser-compat-data/tree/main/scripts/update-browser-releases and the new GitHub workflow lives here: https://github.com/mdn/browser-compat-data/blob/main/.github/workflows/update-browser-releases.yml The PRs this script creates will look like this: mdn/browser-compat-data#21113. Now we get to know automatically when browsers released a new version. As a next step we will look into providing more automation for updating the compatibility data itself for those new browser releases. |
Very cool, thanks @teoli2003 for driving this! |
@Elchi3, given mdn/browser-compat-data#21084 and mdn/browser-compat-data#21083, are you (personally) planning any work to create these pull requests automatically? I'm discussing PR creation with @lolaodelola and @mzgoddard and want to make sure we don't have overlapping plans. |
Yes we are woking on this. We are investigating how such automatically created PRs should look like exactly. We've started our research by creating such PRs manually and we're collecting feedback from key people (release drivers, tech writers). I'm happy to sync about implementation and we've been using the #bcd channel on the OWD Slack to coordinate and share our progress and thoughts as well as the weekly BCD calls. |
Update on how this project is going:
|
Update on the project: the Selenium autorun is now functional and live! Results will now be automatically collected and pushed to the results repo on every release! There are still some browsers and browser versions that require manual runs due to the limitations explained above, but we now have a path forward! |
I'm closing this project as complete. There is more we can do to improve our tooling/processes and we will continuously try to improve. Over the last few months, we were able to successfully propose lots of updates to BCD. Example PRs:
We will continue to produce these. There are at least about 20 more releases this year. About 30-40 releases every year. Your feedback/suggestions can be filed at https://github.com/openwebdocs/mdn-bcd-collector. Thanks again to funding from the Sovereign Tech Fund that made this work possible. From our final report:
|
I would like to thank the following people who helped with this work and/or gave feedback and reviews as part of this project: Representatives of browser projects: Philip Jägenstedt (Chromium/Google), Rachel Andrew (Chromium/Google), Chris Mills (Chromium/Google), Patrick Brosset (Chromium/Microsoft), Jon Davis (WebKit/Apple), Jen Simmons (WebKit/Apple), Ruth John (Gecko/Mozilla), Brian Smith (Gecko/Mozilla), Hamish Willee (Gecko/Mozilla). Open Web Docs members and external contributors: Jean-Yves Perrier, Vinyl Da.i'gyu, Lola Odelola, Z Goddard, and Chris Cuellar. |
Problem statement
When browser vendors release a new version of a browser, compatibility information in the BCD project becomes outdated. Known web platform features might become supported in more browsers or entirely new web platform features might ship in any of the browsers for the first time.
Proposed solutions
To ensure web developers have up-to-date browser support information available as fast as possible and MDN author know about newly available web platform features, the BCD project should introduce a process that is triggered automatically whenever a new browser release is available. It should update existing data points and add new data points for features shipping for the first time in any of the browsers.
We can start by making this work for stable browser releases and expand it to beta and preview versions if desirable.
Task list
Previously, @queengooborg described the process like this:
update-bcd
script using--browser=<browser_id> --release=<browser_version>
We should investigate how to automate more of this and also look into how we will be notified about new browser releases as the trigger point of this whole process. Thoughts around this are also in mdn/browser-compat-data#1664.
It's OK and desired that there is a human control step in this process. Most of the mechanical work should be automated, though. BCD peers are required to assure quality of the pull requests (as usual).
browsers/
folderPriority assessment
More information
Open Web Docs (OWD) is a non-profit collective funded by corporate and individual donations.
In order for this project to happen, please consider donating to OWD on https://opencollective.com/open-web-docs.
For more information on sponsorship and membership tiers, see https://openwebdocs.org/membership/
More information is available at https://openwebdocs.org/.
For questions, please reach out to [email protected].
The text was updated successfully, but these errors were encountered: