strlen() was used in Phabricator to check if a generic value is a non-empty string.
This behavior is deprecated since PHP 8.1. Phorge adopts phutil_nonempty_string() as a replacement.
[Thu Jun 01 19:47:05.238882 2023] [php:notice] [::1:39392] [2023-06-01 17:47:05] EXCEPTION: (RuntimeException) strlen(): Passing null to parameter #1 ($string) of type string is deprecated at [<arcanist>/src/error/PhutilErrorHandler.php:261] [Thu Jun 01 19:47:05.239220 2023] [php:notice] [::1:39392] arcanist(head=master, ref.master=18554ea76ceb), phorge(head=merula, ref.master=e11c5486c92b, ref.merula=9c37f16f7a63, custom=1) [Thu Jun 01 19:47:05.239234 2023] [php:notice] [::1:39392] #0 <#2> PhutilErrorHandler::handleError(integer, string, string, integer) called at [<phorge>/src/applications/conduit/controller/PhabricatorConduitAPIController.php:686] [Thu Jun 01 19:47:05.239241 2023] [php:notice] [::1:39392] #1 <#2> PhabricatorConduitAPIController::decodeConduitParams(AphrontRequest, string) called at [<phorge>/src/applications/conduit/controller/PhabricatorConduitAPIController.php:28] [Thu Jun 01 19:47:05.239260 2023] [php:notice] [::1:39392] #2 phlog(RuntimeException) called at [<phorge>/src/applications/conduit/controller/PhabricatorConduitAPIController.php:111] [Thu Jun 01 19:47:05.239266 2023] [php:notice] [::1:39392] #3 PhabricatorConduitAPIController::handleRequest(AphrontRequest) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:284] [Thu Jun 01 19:47:05.239270 2023] [php:notice] [::1:39392] #4 AphrontApplicationConfiguration::processRequest(AphrontRequest, PhutilDeferredLog, AphrontPHPHTTPSink, MultimeterControl) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:203] [Thu Jun 01 19:47:05.239275 2023] [php:notice] [::1:39392] #5 AphrontApplicationConfiguration::runHTTPRequest(AphrontPHPHTTPSink) called at [<phorge>/webroot/index.php:35]