HomePhorge

Emit full URIs to identify Differential revisions

Description

Emit full URIs to identify Differential revisions

Summary:

  • Previously, used IDs like "33" to match a commit to a Differential revision.

This has a namespacing problem because we now have an arbitrarily large number
of Phabricator installs in the world, and they may want to track commits from
other installs.

  • In Differential, parse raw IDs or full URIs. Emit only full URIs.
  • In Repositories, parse only full URIs.
  • This might cause a few commits to not be picked up in rare circumstances.

Users can fix them with "arc mark-committed". This should be exceedingly rare
because of hash matching.

  • There are some caveats for reparsing older repositories, see comments

inline. I don't think there's much broad impact here.

Test Plan:

  • Created a new revision, got a full URI.
  • Updated revision, worked correctly.
  • Ran unit tests.
  • Monkeyed with "Differential Revision" field.
  • Reviewers: btrahan, jungejason

Reviewers: btrahan, jungejason

Reviewed By: jungejason

CC: aran, epriestley, jungejason

Maniphest Tasks: T54, T692

Differential Revision: 1250

Details

Provenance
epriestleyAuthored on Dec 20 2011, 3:40 PM
themackabuPushed on Mar 25 2025, 8:07 PM
Parents
rPa8104699291c: Improve performance of differential.query
Branches
Unknown
Tags
Unknown

Event Timeline