beverloo/peter.sh

Highlighted commits per Chrome release

beverloo opened this issue · 0 comments

It's been on my list for quite a while (and @addyosmani keeps nagging me about it) to enable viewing highlighted commits per Chromium release, rather than just those in the last 14 days.

In order to implement this accurately, I'd need a commit hook monitoring BUILD updates to //chrome/VERSION. This gives us the SHA for Chromium at that revision. For Blink, Skia and v8, I need to parse the //DEPS file at that revision and find the current revisions for these repositories. This should be stored as a set of {build, repository, revision} records in the database.

Then we need to know the BUILD that's associated with a Chrome release. This will have to be a manual process. My current idea is to have a JSON file here on GitHub (so that anyone can update it) mapping major Chrome versions to branches -- Chrome 40 would be BUILD 2214. OmahaProxy can provide this information.

Displaying them, assuming an URL similar to https://commits.peter.sh/chrome/40/, would then require mapping 40 to the BUILD (2214) and finding the BUILD for the previous release (39 -> 2171). Then, for each repository, select the highlighted commits where the commit date is between those of the revisions mentioned in the BUILD records in the database.

Addy mentions it might be nice to have diffs between multiple releases, e.g. between 40 and 37, but I'm not sure there's a valid use-case for that so I'd like to keep it out for now.

Another edge-case are merged commits. There are cases where an interesting commit gets merged to a release branch. This should be fairly rare for Web Exposed changes, but we'd miss out on these changes for now.