Page MenuHomePhorge

Add "Understanding Application Transaction Editors" article to Diviner
ClosedPublic

Authored by amybones on Sun, Feb 16, 02:01.
Tags
None
Referenced Files
F2991577: D25883.1740190708.diff
Fri, Feb 21, 02:18
F2988952: D25883.1740155574.diff
Thu, Feb 20, 16:32
F2987707: D25883.1740117218.diff
Thu, Feb 20, 05:53
F2982846: D25883.1739971988.diff
Tue, Feb 18, 13:33
F2982771: D25883.1739971813.diff
Tue, Feb 18, 13:30
F2982421: D25883.1739959232.diff
Tue, Feb 18, 10:00
F2981859: D25883.1739940629.diff
Tue, Feb 18, 04:50
F2980046: D25883.1739874515.diff
Mon, Feb 17, 10:28

Details

Summary

In writing a number of Phorge extensions, I found it quite challenging to
understand how to use and implement Application Transaction Editors. As these
are quite core to most Phorge applications, it seems that we should probably
have some documentation. Introduce a rough draft of a guide to using and
implementing such things.

Test Plan

Check that the prose reads okay, and confirm that what's described is in line
with what PhabricatorApplicationTransactionEditor does. Additionally, run ./bin/diviner generate and observe that the document "Understanding Application Transaction Editors" appears in the appropriate location.

Diff Detail

Repository
rP Phorge
Branch
transaction_editor_docs (branched from master)
Lint
Lint Warnings
SeverityLocationCodeMessage
Warningsrc/docs/contributor/transaction_editors.diviner:35TXT3Line Too Long
Unit
No Test Coverage
Build Status
Buildable 1709
Build 1709: arc lint + arc unit

Event Timeline

aklapper subscribed.

This is impressive, thanks for writing this up! I don't have enough expertise to comment on the "Edit Phases", however all in all this looks super helpful for technical understanding!

Content: Minor nitpick: I'd probably change 2fac to two-factor, and I'd personally prefer avoiding first-person.

Testing: Running ./bin/diviner generate before and after ../arcanist/bin/arc patch D25883 I can confirm that http://phorge.localhost/book/contrib/ lists a new entry "Understanding Application Transaction Editors". Opening that new document, all looks correct, apart from a those links going to functions (example: PhabricatorApplicationTransactionInterface::getApplicationTransactionEditor()) not working and showing a 404, but that is a problem entirely outside of this patch (namely, D25812).

I'm accepting as O1 as we/someone can always add additional patches/changes on top of this.

This revision is now accepted and ready to land.Sun, Feb 16, 15:49
aklapper retitled this revision from Preliminary documentation for transaction editors. to Add "Understanding Application Transaction Editors" article to Diviner.Sun, Feb 16, 15:49

Remove first person voice in a few areas. And a bit of swearing that slipped through from my notes.

This revision was landed with ongoing or failed builds.Sun, Feb 16, 21:37
This revision was automatically updated to reflect the committed changes.