Page MenuHomePhabricator

Modularize remaining TYPE_ACTION transactions in Differential, reducing calls to ArcanistDifferentialRevisionStatus
ClosedPublic

Authored by epriestley on Aug 11 2017, 10:18 PM.
Tags
None
Referenced Files
F17947766: D18412.id.diff
Thu, Jul 31, 6:26 PM
F17889622: D18412.id.diff
Tue, Jul 29, 2:48 AM
F17870970: D18412.diff
Mon, Jul 28, 3:06 PM
F17843755: D18412.id.diff
Sun, Jul 27, 1:18 AM
F17843245: D18412.id44256.diff
Sun, Jul 27, 12:41 AM
F17823095: D18412.diff
Sat, Jul 26, 4:20 AM
F17811271: D18412.diff
Fri, Jul 25, 6:23 PM
F17704011: D18412.diff
Wed, Jul 16, 2:56 AM
Subscribers
None

Details

Summary

Ref T2543. This cleans up a couple of remaining rough edges:

  • We could do an older TYPE_ACTION "close" via the daemons.
  • We could do an older TYPE_ACTION "close" via arc close-revision, explicitly or implicitly in arc land, via API (differential.close).
  • We could do an older TYPE_ACTION "rethink" ("Plan Changes") via the API, via arc diff --plan-changes (differential.createcomment).

Move these to modern modular transactions, then get rid of all the validation and application logic for them. This nukes a bunch of ArcanistDifferentialRevision::... junk.

Test Plan
  • Used bin/repository reparse --message rXYZ... to reparse a commit, closing a corresponding revision.
  • Used differential.close to close a revision.
  • Used differential.createcomment to plan changes to a revision.
  • Reviewed transaction log for full "closed by commit" message (linking to commit and mentioning author).
  • Grepped for ::TYPE_ACTION to look for remaining callsites, didn't find any.
  • Grepped for differential.close and differential.createcomment in arcanist/ to look for anything suspicious, seemed clean.

Diff Detail

Repository
rP Phabricator
Branch
status13
Lint
Lint Passed
Unit
Tests Passed
Build Status
Buildable 18039
Build 24228: Run Core Tests
Build 24227: arc lint + arc unit