ChromeDevTools / devtools-protocol

Chrome DevTools Protocol
https://chromedevtools.github.io/devtools-protocol/
BSD 3-Clause "New" or "Revised" License
1.15k stars 226 forks source link

Reconsider versioning scheme #298

Open mathiasbynens opened 1 year ago

mathiasbynens commented 1 year ago

Currently, devtools-protocol is being versioned as 0.0.<revision>, e.g. 0.0.1134390. However, we’re increasingly moving to using Chrome version numbers as the source of truth rather than branch positions / revision numbers.

Can we reconsider versioning devtools-protocol as 1.0.0-<chrome-version>, e.g. 1.0.0-112.0.5615.137? This is valid per semver; it’s interpreted as a pre-release version.

> semver.valid('1.0.0-112.0.5615.137')
'1.0.0-112.0.5615.137'

Motivation: We currently have some extra code to track version numbers alongside revision IDs in both Puppeteer and the Chrome for Testing availability dashboard, for the sole purpose of figuring out which devtools-protocol version to bundle. It would be nice if we could get rid of that.

In addition to this technical reason, I’d argue that Chrome version numbers are more intuitive and recognizable than the arbitrary-looking revision IDs.

cc @OrKoN