Page MenuHomePhabricator

Make Phame Header and Profile Image Transactional
ClosedPublic

Authored by chad on Jul 1 2016, 5:50 PM.
Tags
None
Referenced Files
F14344699: D16217.id39011.diff
Thu, Dec 19, 12:50 AM
Unknown Object (File)
Fri, Dec 13, 9:22 PM
Unknown Object (File)
Thu, Dec 12, 4:24 AM
Unknown Object (File)
Wed, Dec 11, 8:40 AM
Unknown Object (File)
Sun, Dec 8, 12:59 AM
Unknown Object (File)
Tue, Dec 3, 11:24 PM
Unknown Object (File)
Nov 12 2024, 4:38 PM
Unknown Object (File)
Oct 27 2024, 10:37 PM
Subscribers

Details

Summary

Ref T9360. This makes these transactional.

Test Plan

Set new header, delete header. Set new profile image, reset profile image.

Diff Detail

Repository
rP Phabricator
Branch
phame-4 (branched from master)
Lint
Lint Passed
Unit
Tests Passed
Build Status
Buildable 12888
Build 16437: Run Core Tests
Build 16436: arc lint + arc unit

Event Timeline

chad retitled this revision from to Make Phame Header and Profile Image Transactional.
chad updated this object.
chad edited the test plan for this revision. (Show Details)
chad added a reviewer: epriestley.
chad added a task: T9360: Unbeta Phame.
epriestley edited edge metadata.

Minor nitpick that doesn't really matter: ideally, you should let ApplicationTransactionEditor handle the $file->attachToObject(...) call, by implementing extractFilePHIDsFromCustomTransaction().

However, this won't change anything and it's an easier fix when this moves to ModularTransactions so it's 100% fine to just leave it as-is for now.

src/applications/phame/storage/PhameBlogTransaction.php
186

Should these be renderHandleLink()?

This revision is now accepted and ready to land.Jul 1 2016, 6:06 PM
src/applications/phame/storage/PhameBlogTransaction.php
186

I'm breaking something, can't figure it out.

Transaction ("PHID-XACT-BLOG-dtq3uozqaazuqdx", of type "phame.blog.profile.image") requires a handle ("PHID-FILE-d6y2dbp2ikdr5zamxxk7") that it did not load.

Oh, you need to implement getRequiredHandlePHIDs(). You can look at, e..g, ManiphestTaskTransaction for an example.

chad edited edge metadata.
  • Richer transactions
This revision was automatically updated to reflect the committed changes.