Ref T2543. When revisions are in the draft state, tell the user what we're waiting for or why they aren't moving forward.
Details
Diff Detail
- Repository
- rP Phabricator
- Branch
- draft2
- Lint
Lint Passed - Unit
Tests Passed - Build Status
Buildable 18704 Build 25198: Run Core Tests Build 25197: arc lint + arc unit
Event Timeline
Otherwise looks good.
src/applications/differential/customfield/DifferentialDraftField.php | ||
---|---|---|
41–47 | Maybe we should invert this and enumerate the non-blocking states? (Looks like there are 4 of those vs 5 of these). Or add a HarbormasterBuildStatus::getFailedStatusConstants() to make it more likely that this code will continue to work if we add more failed states? |
I'm think I'm going to leave this junk in place for now -- although it likely will get refactored in the future, I don't think these changes make it much harder to refactor and I'm not sure what it's going to refactor into yet. There are a couple of open tasks somewhere about adding 30 new weird build statuses, and I don't think we'll actually support those as first-class statuses, but it's possible that build statuses will become fully user-definable. If they do, the refactoring looks different than if we stay close to this model.
There's also some crudeness in the messaging here, e.g. "Paused" will say "these builds failed: ..." and should probably be refined at some point, but I don't want to go crazy and give every status combination a bunch of custom strings before this feature even works.
And largely I'm just trying to ship some version of this this week since things have been mired a bit recently in all the ngrams/rate-limit stuff.