@recaptime-dev's working patches + fork for Phorge, a community fork of Phabricator. (Upstream dev and stable branches are at upstream/main and upstream/stable respectively.) hq.recaptime.dev/wiki/Phorge
phorge phabricator
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Conduit column.search: add status, sequence and isDefault to API results

Summary:
This seems like a fairly obvious oversight with the column.search API.

Knowing:

1. isHidden - boolean to indicate Active vs Archived
2. isDefaultColumn - the one that Tasks get dropped in by default, usually called "Backlog"
3. sequence - numerical order on the Workboard

are all necessary for a lot of things that very sensible real-world API clients need to do when working with columns.

Partial cherry-pick from:

https://phabricator.wikimedia.org/rPHABebfe30890b52784d222ec4ed36c05462b2a57f92

Closes T15484

Test Plan:
Tested on phabricator.wikimedia.org over many months and used by real client apps.

To do additional tests, visit this page:

/conduit/method/project.column.search/

Check that the new fields are returned correctly and nothing explodes.

Reviewers: #blessed_committers, O1 Blessed Committers, 0, avivey, valerio.bozzolan

Reviewed By: #blessed_committers, O1 Blessed Committers, 0, valerio.bozzolan

Subscribers: Cigaryno, 0, speck, tobiaswiese, valerio.bozzolan, Matthew

Maniphest Tasks: T15081, T15484

Differential Revision: https://we.phorge.it/D25038

authored by

Mukunda Modell and committed by
Valerio Bozzolan
327ac921 478012cd

+16
+16
src/applications/project/storage/PhabricatorProjectColumn.php
··· 271 271 pht( 272 272 'For columns that proxy another object (like a subproject or '. 273 273 'milestone), the PHID of the object they proxy.')), 274 + id(new PhabricatorConduitSearchFieldSpecification()) 275 + ->setKey('isHidden') 276 + ->setType('bool') 277 + ->setDescription(pht('True if this column is hidden.')), 278 + id(new PhabricatorConduitSearchFieldSpecification()) 279 + ->setKey('isDefaultColumn') 280 + ->setType('bool') 281 + ->setDescription(pht('True if this is the default column.')), 282 + id(new PhabricatorConduitSearchFieldSpecification()) 283 + ->setKey('sequence') 284 + ->setType('int') 285 + ->setDescription( 286 + pht('The sequence in which this column appears on the workboard.')), 274 287 ); 275 288 } 276 289 ··· 279 292 'name' => $this->getDisplayName(), 280 293 'proxyPHID' => $this->getProxyPHID(), 281 294 'project' => $this->getProject()->getRefForConduit(), 295 + 'isHidden' => $this->isHidden(), 296 + 'isDefaultColumn' => $this->isDefaultColumn(), 297 + 'sequence' => (int)$this->getSequence(), 282 298 ); 283 299 } 284 300