Page MenuHomePhabricator

Implement ApplicationTransactions in Differential
Closed, ResolvedPublic

Description

After T2104, we should move Differential to ApplicationTransactions.

Details

Differential Revisions
D8477: Remove DifferentialComment
D8476: Clean up various pieces of dead/obsolete Differential code
D8475: Move lint/unit test warning code forward to Transactions
D8474: Remove almost all old Differential field code
D8473: Use PhabricatorObjectListQuery in Herald worker
D8472: Remove DifferentialFieldSelector
D8471: Move "close tasks on commit" code out of field specification stuff
D8470: Remove field selector on Diff view and Revision List View
D8469: Use CustomFields to power Conduit auxiliary dictionaries
D8459: Port Differential mail features forward to transactions
Restricted Differential Revision
Commits
D8241 / rP7987b4b189d5: [Later] Drop legacyCommentID column from DifferentialTransactionComment
D8242 / rP9c423647d121: Drop DifferentialComment and DifferentialInlineComment
D8356 / rP1d90577d8c1c: Drop old Differential custom field storage
D8203 / rP490ae05eb892: Drop differential_relationship table
D8468 / rP77af6be803c7: Remove host/path and test plan enable/disable options
D8456 / rP1df84168efd9: Remove DifferentialRevisionEditor
D8457 / rP50331016f718: Modernize commit message tips
D8455 / rPc68703fbcb27: Perform derived index updates in TransactionEditor
D8454 / rPa19f49632fd8: Remove willWriteRevision/didWriteRevision hooks
D8453 / rPfbaa12440eac: Use DifferentialRevisionEditor in lipsum
D8449 / rPae3c1f781939: Perform commit message parsing and construction with new CustomFields
D8452 / rPa5fbe921b7d2: Use CustomFields in `differential.createrevision`
D8450 / rP6dd191a3c135: Allow configuration of Differential custom fields
D8451 / rPd8968755e9d1: Use CustomField for `differential.updaterevision`
D8445 / rP76577df50614: Extract textual object list parsing from Differential
D8444 / rPaff34077c52c: Move Differential commit message parsing to a separate, tested class
D8443 / rPf25cce1e695b: Remove DifferentialCommentEditor and DifferentialCommentMail
D8442 / rP1c51ed594065: Use TransactionEditor in differential.createcomment
D8441 / rPb04f706c0af6: Use TransactionEditor when closing revisions in response to commits
D8427 / rP49eaa9f8fe4c: Use TransactionEditor in Differential mail handling
D8426 / rP4dfd4944c4dd: Don't use CommentEditor in lipsum
D8425 / rP75514cc0f713: Update `differential.close` to use DifferentialTransactionEditor
D8424 / rP3dc9afa28dc2: Remove `differential.markcommitted`
D8405 / rP2ceffadee78a: Support Herald rules for new Differential edits
D8404 / rP84020a363fee: Let Herald activation depend on which transactions are being applied, and…
D8403 / rP4ef87eeac832: Add an explcit "Changes Planned" state for Differential
D8402 / rP9da6ec208111: Make updates of rejected revisions behave correctly again
D8400 / rARC7b6b24154b71: Add "Changes Planned" and "In Preparation" states for revisions
D8401 / rP857e3aee83de: Improve ApplicationTransaction behavior for poorly constructed transactions
D8378 / rP83206242c9dd: Clean up some Differential behaviors
D8377 / rPb383d2c338fa: Replace "Edit" controller with "EditPro" controller
D8376 / rPbca0ad8fdd7f: Make "EditPro" controller work with diff updates
D8369 / rP11c1edfb7431: Implement "words of power" against ApplicationTransactions
D8368 / rP024c331d2ba3: Improve rendering of new-style Differential comments in feed/notifications
D8367 / rP647d52f24880: Improve threading of new and old Differential mail
D8364 / rPa5dbb1fd59ae: Make new JIRA Issues field editable
D8362 / rPba7d67f9175f: Use "CommentPro" controller instead of "Comment" controller
D8360 / rP62143b5455e7: Add modern Unit/Lint field support
D8361 / rPf6a13fd1c7b1: Use CustomField, not AuxiliaryField, to power RevisionView
D8359 / rP0b4a6b8bee67: Add Branch and Arcanist Project CustomFields
D8357 / rP8297c2131cb2: Implement more Differential fields on ApplicationTransaction/CustomField
D8355 / rPcd7171ec6e11: Migrate old AuxiliaryField storage to modern CustomField storage
D8354 / rPee2b6eebaa31: Implement detail views for many Differential fields on ApplicationTransactions
D8346 / rPcd080b092e20: Use ApplicationTransactions/CustomField to power Differential global search
D8343 / rP424ba2e58887: Render inline comments in "Pro" mail
D8340 / rP06fc82a3eeff: Mark reviewers as "commented" when they leave a comment
D8339 / rPa69cca9fbb15: Update overall revision status after reviewers change
D8333 / rPca8c2c2d11a3: Implement Accept/Reject in ApplicationTransactions, approximately
D8331 / rPd07292df7fe0: Implement Commandeer action in ApplicationTransactions
D8330 / rP0f0673b9e526: Remove "dateCommitted" field from DifferentialRevision
D8328 / rP9292433daebd: Implement "Resign" action against ApplicationTransactions
D8307 / rP4eadcf975ade: Implement most Differential actions against ApplicationTransactions
D8306 / rPd48a88d4cd78: Add inline comment support to "Pro" comment save controller
D8304 / rPc7d208fda1ed: Add a "Pro" version of the Differential comment save controller
D8303 / rP3a8eb28a074f: Send basic email from new ApplicationTransaction editor
D8301 / rPd94c33b61aa5: Use a more modern design for "no reviewers" warning in Differential
D8293 / rPa24605432f60: Use standard rendering and controller for Differential subscriptions
D8294 / rP92ac8b5ad9a5: Make Differential inline comment rendering more consistent and somewhat more…
D8240 / rP04ba976a04f7: Remove references to legacy comment IDs
D8239 / rP7a28ca847d7c: When there are no events in a timleine, render a single spacer
D8236 / rP23146f2bb9e7: Render Differential previews through ApplicationTransactions
D8229 / rP7a96de10f07a: Hide seen transactions by default in all modern applications
rPe88d0f9c42d4: Merge Differential comment migration to ApplicationTransactions
D8224 / rP7374a0a4d4f5: Fix inline comment links for non-visible comments
D8222 / rPcb20205aee10: Don't show "edit" links in Differential for now
D8223 / rP9afe52de51d7: Provide transaction strings, icons and colors for Differential
D8215 / rP62cb58408346: Use timeline view in Differential and make inlines somewhat usable again
D8217 / rP348b07a4becf: Make Asana bridge work with new Differential transactions
D8218 / rP015931576330: Add some missing text for Differential inline transactions
D8216 / rP29918e1bd47f: Fix double-rendering of inline comments in mail
rP0dc73d5d9357: Always provide a valid content source for DifferentialCommentEditor
D8210 / rP18938b531071: Migrate Differential comments to ApplicationTransactions
D8209 / rP3092efdc65a4: Reduce reliance on `getRevisionID()` on DifferentialComment
D8208 / rP143b89286aad: Remove unreachable DifferentialRevisionStatsView
D8206 / rP54ce4a719eb7: Fix issue where new transaction comments can be spread across multiple…
D8202 / rP8f9b7f419619: Move Differential to proper subscriptions
D8201 / rP1dbfc56d3588: Write one DifferentialComment per CommentEditor action
D8200 / rPc65fad3fca0e: Separate revision updates into two separate comments
D8199 / rP8e232a8bf164: Allow Differential Mail to accept multiple comments for one mail
D8196 / rP305fb3fbd9c1: Migrate all Differential comment text into new storage
D7513 / rP4f0f95f7b587: Assign PHIDs to all diffs
D7375 / rP32dd8af9e5d5: Reduce surface area of DifferentialComment API
Restricted Differential Revision / rPf010730e49b0: Migrate all Differential inline comments to ApplicationTransactions
Restricted Differential Revision / rP3cb67480e063: Adjust keys for new Differential inline comment table
Restricted Differential Revision / rP7c2f6f8361c2: Simplify selection of inline comments from RevisionView
Restricted Differential Revision / rP3124838d6567: Undo D6266 (DifferentialComment PHID migration)
Restricted Differential Revision / rPd0da409eb0f8: Fix a mistakenly translated query from D6262
Restricted Differential Revision / rP75fa580f3f3f: Add PHIDs to DifferentialComments
Restricted Differential Revision / rP8e8057c6fe8c: Add LiskRawMigrationIterator
Restricted Differential Revision / rP6a2ae077915c: Abstract access to DifferentialInlineComment behind a Query
Restricted Differential Revision / rP44302d2f07fa: Add storage for new Differential transactions and transaction comments
Restricted Differential Revision / rP6a2e27ba8d70: Put all DifferentialComment loading behind DifferentialCommentQuery

Related Objects

StatusAssignedTask
DuplicateNone
OpenNone
Resolvedepriestley
OpenNone
Resolvedepriestley
Resolvedepriestley
Resolvedchad
Resolvedchad
OpenNone
OpenNone
DuplicateNone
Resolvedchad
ResolvedNone
Resolvedhsb
Resolvedepriestley
Resolvedepriestley
Resolvedepriestley
Resolvedjoshuaspence
Resolvedepriestley
Resolvedbtrahan
Resolvedbtrahan
Duplicateepriestley
Resolvedepriestley
Wontfixepriestley
Resolvedepriestley
Resolvedepriestley
DuplicateNone
Resolvedepriestley
Resolvedepriestley

Event Timeline

There are a very large number of changes, so older changes are hidden. Show Older Changes
epriestley edited this Maniphest Task.Feb 27 2014, 7:07 PM
epriestley edited this Maniphest Task.Feb 27 2014, 7:19 PM
epriestley edited this Maniphest Task.Feb 27 2014, 8:34 PM
epriestley edited this Maniphest Task.Feb 27 2014, 10:03 PM
epriestley edited this Maniphest Task.Feb 27 2014, 11:05 PM
epriestley edited this Maniphest Task.Feb 27 2014, 11:16 PM
epriestley edited this Maniphest Task.
epriestley edited this Maniphest Task.
epriestley edited this Maniphest Task.Feb 28 2014, 12:50 AM
epriestley edited this Maniphest Task.Feb 28 2014, 11:12 PM
epriestley edited this Maniphest Task.Feb 28 2014, 11:20 PM
epriestley edited this Maniphest Task.Feb 28 2014, 11:26 PM
epriestley edited this Maniphest Task.Mar 1 2014, 12:49 AM
epriestley edited this Maniphest Task.
epriestley edited this Maniphest Task.Mar 1 2014, 1:15 AM
epriestley edited this Maniphest Task.Mar 3 2014, 4:36 PM
epriestley edited this Maniphest Task.Mar 5 2014, 1:12 AM
epriestley edited this Maniphest Task.Mar 5 2014, 1:52 AM
epriestley edited this Maniphest Task.Mar 5 2014, 1:55 AM
epriestley edited this Maniphest Task.Mar 5 2014, 2:18 AM
epriestley edited this Maniphest Task.Mar 5 2014, 3:03 AM
epriestley edited this Maniphest Task.Mar 5 2014, 3:53 AM
epriestley edited this Maniphest Task.Mar 5 2014, 6:44 PM
epriestley edited this Maniphest Task.
epriestley edited this Maniphest Task.Mar 5 2014, 6:47 PM
epriestley edited this Maniphest Task.
epriestley edited this Maniphest Task.Mar 5 2014, 8:07 PM
epriestley edited this Maniphest Task.
epriestley edited this Maniphest Task.Mar 6 2014, 4:19 PM
epriestley edited this Maniphest Task.Mar 6 2014, 4:33 PM
epriestley edited this Maniphest Task.Mar 6 2014, 4:37 PM
epriestley edited this Maniphest Task.Mar 6 2014, 5:01 PM
epriestley edited this Maniphest Task.Mar 7 2014, 4:09 PM
epriestley edited this Maniphest Task.
epriestley edited this Maniphest Task.
epriestley edited this Maniphest Task.
epriestley edited this Maniphest Task.Mar 7 2014, 7:07 PM
epriestley edited this Maniphest Task.Mar 7 2014, 8:04 PM
epriestley edited this Maniphest Task.Mar 7 2014, 8:18 PM
epriestley edited this Maniphest Task.Mar 7 2014, 10:22 PM
epriestley edited this Maniphest Task.Mar 8 2014, 12:01 AM
epriestley edited this Maniphest Task.Mar 8 2014, 1:44 AM
epriestley edited this Maniphest Task.
epriestley edited this Maniphest Task.
epriestley edited this Maniphest Task.
epriestley edited this Maniphest Task.
Unknown Object (User) added a subscriber: Unknown Object (User).Mar 8 2014, 2:03 PM
Unknown Object (User) added a comment.EditedMar 8 2014, 2:06 PM

xxxxxxx"></''\'\

xxxxxxx"></''\'\xxxxxxx"></''\'\

Macro mushroom: xxxxxxx"></''\'\ xxxxxxx"></''\'\

@jablor Please do not penetration test this install. Install your own local copy of Phabricator instead.

epriestley edited this Maniphest Task.Mar 8 2014, 5:01 PM
epriestley edited this Maniphest Task.Mar 8 2014, 5:20 PM
epriestley edited this Maniphest Task.Mar 8 2014, 6:56 PM
epriestley edited this Maniphest Task.Mar 8 2014, 7:29 PM
epriestley edited this Maniphest Task.Mar 8 2014, 7:44 PM
epriestley edited this Maniphest Task.Mar 8 2014, 8:04 PM
epriestley edited this Maniphest Task.Mar 8 2014, 8:13 PM
chad removed a subscriber: chad.Mar 8 2014, 8:15 PM
epriestley edited this Maniphest Task.Mar 8 2014, 8:15 PM
epriestley edited this Maniphest Task.Mar 8 2014, 8:20 PM
epriestley edited this Maniphest Task.Mar 8 2014, 10:45 PM
epriestley edited this Maniphest Task.Mar 9 2014, 5:25 PM
epriestley edited this Maniphest Task.Mar 9 2014, 6:27 PM
epriestley edited this Maniphest Task.Mar 9 2014, 6:47 PM
epriestley edited this Maniphest Task.Mar 9 2014, 7:41 PM
epriestley edited this Maniphest Task.Mar 9 2014, 7:43 PM
epriestley edited this Maniphest Task.Mar 9 2014, 7:47 PM
epriestley edited this Maniphest Task.Mar 9 2014, 7:58 PM
epriestley edited this Maniphest Task.Mar 9 2014, 8:19 PM
epriestley edited this Maniphest Task.Mar 9 2014, 8:49 PM
epriestley edited this Maniphest Task.Mar 9 2014, 9:53 PM
epriestley edited this Maniphest Task.Mar 11 2014, 8:06 PM
epriestley edited this Maniphest Task.
epriestley edited this Maniphest Task.
epriestley edited this Maniphest Task.
epriestley edited this Maniphest Task.
epriestley edited this Maniphest Task.
epriestley edited this Maniphest Task.
epriestley edited this Maniphest Task.
epriestley edited this Maniphest Task.
epriestley edited this Maniphest Task.
epriestley closed this task as Resolved.Mar 11 2014, 8:20 PM

I'm going to close this as resolved; there's some various remaining work but it's not directly related to ApplicationTransactions and pretty well covered by other tasks. All the old editors are gone from the codebase and all edits now use ApplicationTransactions. If you run into bugs, T4481 is the best place to follow up (that task is less noisy and more human-readable).

rm added a subscriber: rm.Jun 5 2014, 8:33 PM

https://secure.phabricator.com/conduit/method/differential.getrevisioncomments/ points me to this task, but this doesn't make it clear to me why differential.getrevisioncomments is doomed, or what I might use to replace it.

Which is not terribly helpful, I suppose.

It's obsolete and doomed because the format it emits is insufficient to represent modern transaction activity, which now records things like title and test plan edits, comment edits, and so on.

Some more general differential.querytransactions method will eventually replace it, but maybe that will be even more general (transactions.query). I don't have concrete plans on this yet.

epriestley edited this Maniphest Task.Jun 22 2014, 3:12 PM
epriestley edited this Maniphest Task.Jun 22 2014, 3:15 PM
epriestley edited this Maniphest Task.Jun 24 2014, 12:30 PM
philip added a subscriber: philip.Jun 21 2015, 8:38 AM
chad changed the visibility from "All Users" to "Public (No Login Required)".Aug 28 2015, 8:59 PM
psung added a subscriber: psung.Jun 27 2017, 9:47 PM