Hello contributors,
As we move forward with the transition to GitHub, we are starting to adopt
identifiers <https://trac.webkit.org/wiki/commit-identifiers> in tooling and
infrastructure. This is going to take a few weeks, but you will start seeing
links based on identifiers more frequently. During this transition period, not
all tooling will work with identifiers, and it’s possible there are tools you
rely on that aren’t in common use so will be slow in receiving support. To that
end, I would like to share the tools available to translate between hashes,
revisions and identifiers in WebKit, along with the Python libraries backing
that tooling if you feel motivated to expedite the transition for a workflow
that is particularly important to you.
Tools/Scripts/git-webkit find <ref> is the local script that can convert
between revisions, hashes and identifiers. By default, it uses your local
checkout, which means it may be restricted by your checkout’s configuration.
For example, a pure Subversion checkout will be unable to convert hashes and a
pure Git checkout will be unable to convert revisions, while a Git-Svn checkout
will be able to translate all three formats.
If you want to be certain that a hash or revision can be converted to an
identifier, running Tools/Scripts/git-webkit -C
https://svn.webkit.org/repository/webkit
<https://svn.webkit.org/repository/webkit> find <ref> or
Tools/Scripts/git-webkit -C https://github.com/WebKit/Webkit
<https://github.com/WebKit/Webkit> find <ref> are options. These command
operate entirely on the network, instead of relying on your local checkout.
Both variations of git-webkit find are ultimately thin wrappers around
webkitscmpy local.Scm and remote.Scm classes, so if you find yourself working
with Python code, consider leveraging the APIs directly.
Lastly, along with redirecting to trac/GitHub, the site
https://commits.webkit.org <https://commits.webkit.org/> has a JSON API which
vends a representation of a commit which includes the hash, revision and
identifier and looks like this: https://commits.webkit.org/234036@main/json
<https://commits.webkit.org/234036@main/json>. commits.webkit.org
<http://commits.webkit.org/> is a service we are dedicated to maintaining
permanently, since it allows us to vend commit links with identifiers instead
of hashes.
Jonathan
WebKit Continuous Integration
_______________________________________________
webkit-dev mailing list
webkit-dev@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-dev