@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.

Fail feed story renders individually, instead of in aggregate

Summary: When we fail to render a feed story because something is broken, just break that story, not the entire feed.

Test Plan: {F125898}

Reviewers: btrahan, chad

Reviewed By: chad

CC: aran

Differential Revision: https://secure.phabricator.com/D8488

+15 -2
+15 -2
src/applications/feed/builder/PhabricatorFeedBuilder.php
··· 57 57 $null_view->appendChild($header); 58 58 } 59 59 60 - $view = $story->renderView(); 61 - $view->setUser($user); 60 + try { 61 + $view = $story->renderView(); 62 + $view->setUser($user); 63 + $view = $view->render(); 64 + } catch (Exception $ex) { 65 + // If rendering failed for any reason, don't fail the entire feed, 66 + // just this one story. 67 + $view = id(new PHUIFeedStoryView()) 68 + ->setUser($user) 69 + ->setChronologicalKey($story->getChronologicalKey()) 70 + ->setEpoch($story->getEpoch()) 71 + ->setTitle( 72 + pht('Feed Story Failed to Render (%s)', get_class($story))) 73 + ->appendChild(pht('%s: %s', get_class($ex), $ex->getMessage())); 74 + } 62 75 63 76 $null_view->appendChild($view); 64 77 }