- PHP 8.2.5; Phorge at 8eaa7c1ccf3d75d438e83e074a28ea7de1f15d37 with D25157 locally applied
- Go to http://phorge.localhost/herald/create/ to create a Herald rule
- Select first item Commit Hook: Branches/Tags/Bookmarks to go to http://phorge.localhost/herald/create/?adapter=HeraldPreCommitRefAdapter
- Select Personal Rule or Global Rule
[2023-05-04 20:07:14] EXCEPTION: (RuntimeException) strlen(): Passing null to parameter #1 ($string) of type string is deprecated at [<arcanist>/src/error/PhutilErrorHandler.php:261] arcanist(head=renderDashboardTabPanelContent, ref.master=d47289622650, ref.renderDashboardTabPanelContent=d47289622650), phorge(head=master, ref.master=8eaa7c1ccf3d) #0 <#2> PhutilErrorHandler::handleError(integer, string, string, integer) called at [<phorge>/src/infrastructure/contentsource/PhabricatorUnknownContentSource.php:10] #1 <#2> PhabricatorUnknownContentSource::getSourceName() called at [<arcanist>/src/utils/utils.php:147] #2 <#2> mpull(array, string) called at [<phorge>/src/applications/herald/field/HeraldContentSourceField.php:28] #3 <#2> HeraldContentSourceField::getHeraldFieldValueType(string) called at [<phorge>/src/applications/herald/adapter/HeraldAdapter.php:838] #4 <#2> HeraldAdapter::getValueTypeForFieldAndCondition(string, string) called at [<phorge>/src/applications/herald/controller/HeraldRuleController.php:458] #5 <#2> HeraldRuleController::setupEditorBehavior(HeraldRule, array, HeraldPreCommitRefAdapter) called at [<phorge>/src/applications/herald/controller/HeraldRuleController.php:234] #6 <#2> HeraldRuleController::handleRequest(AphrontRequest) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:284] #7 phlog(RuntimeException) called at [<phorge>/src/aphront/handler/PhabricatorDefaultRequestExceptionHandler.php:41] #8 PhabricatorDefaultRequestExceptionHandler::handleRequestThrowable(AphrontRequest, RuntimeException) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:751] #9 AphrontApplicationConfiguration::handleThrowable(RuntimeException) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:296] #10 AphrontApplicationConfiguration::processRequest(AphrontRequest, PhutilDeferredLog, AphrontPHPHTTPSink, MultimeterControl) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:203] #11 AphrontApplicationConfiguration::runHTTPRequest(AphrontPHPHTTPSink) called at [<phorge>/webroot/index.php:35]
This also applies to creating any other Herald rules.
After fixing that exception, page Create Herald Rule: Commit Hook: Branches/Tags/Bookmarks at http://phorge.localhost/herald/edit/?content_type=HeraldPreCommitRefAdapter&rule_type=personal gets rendered in web browser.