Page MenuHomePhabricator

Enrich the "change project tags" transaction in ""

Authored by epriestley on Feb 25 2019, 1:35 PM.



Depends on D20208. Ref T13255. See that task for some long-winded discussion and rationale. Short version:

  • This is a list of operations instead of a list of old/new PHIDs because of scalability issues for large lists (T13056).
  • This is a fairly verbose list (instead of, for example, the more concise internal map we sometimes use with "+" and "-" as keys) to try to make the structure obvious and extensible in the future.
  • The "add" and "remove" echo the *.edit operations.
Test Plan

Called on an object with project tag changes, saw them in the results.

Diff Detail

rP Phabricator
Automatic diff as part of commit; lint not applicable.
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

This revision is now accepted and ready to land.Feb 25 2019, 3:16 PM

I guess there's some argument I should call this "tags" instead of "projects", but the *.edit transactions are called "projects", and I think most of the projects/tags confusion we hit historically was around new users figuring things out, not users digging into the API.

This revision was automatically updated to reflect the committed changes.