Page MenuHomePhorge

PHP 8.1 "strlen(null)" exceptions block rendering the Diffusion page
Closed, ResolvedPublic

Description

  1. PHP 8.1.8, D25144,D25145,D25146,D25147 locally applied
  2. Go to http://phorge.localhost
  3. Select Diffusion in the sidebar to go to http://phorge.localhost/diffusion/
[2023-04-30 07:56:27] EXCEPTION: (RuntimeException) strlen(): Passing null to parameter #1 ($string) of type string is deprecated at [<arcanist>/src/error/PhutilErrorHandler.php:261]
arcanist(head=master, ref.master=82d1abd4edd1), phorge(head=master, ref.master=562d36ef5f9e)
  #0 <#2> PhutilErrorHandler::handleError(integer, string, string, integer) called at [<phorge>/src/applications/diffusion/controller/DiffusionController.php:100]
  #1 <#2> DiffusionController::getRepositoryIdentifierFromRequest(AphrontRequest) called at [<phorge>/src/applications/diffusion/controller/DiffusionServeController.php:41]
  #2 <#2> DiffusionServeController::isVCSRequest(AphrontRequest) called at [<phorge>/src/applications/diffusion/controller/DiffusionController.php:26]
  #3 <#2> DiffusionController::willBeginExecution() called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:271]
  #4 phlog(RuntimeException) called at [<phorge>/src/aphront/handler/PhabricatorDefaultRequestExceptionHandler.php:41]
  #5 PhabricatorDefaultRequestExceptionHandler::handleRequestThrowable(AphrontRequest, RuntimeException) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:751]
  #6 AphrontApplicationConfiguration::handleThrowable(RuntimeException) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:296]
  #7 AphrontApplicationConfiguration::processRequest(AphrontRequest, PhutilDeferredLog, AphrontPHPHTTPSink, MultimeterControl) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:204]
  #8 AphrontApplicationConfiguration::runHTTPRequest(AphrontPHPHTTPSink) called at [<phorge>/webroot/index.php:35]

[2023-04-30 07:56:27] EXCEPTION: (PhutilAggregateException) Encountered a processing exception, then another exception when trying to build a response for the first exception.
    - TypeError: PhabricatorEditEngine::setViewer(): Argument #1 ($viewer) must be of type PhabricatorUser, null given, called in /var/www/html/phorge/phorge/src/applications/diffusion/controller/DiffusionRepositoryListController.php on line 38
    - RuntimeException: strlen(): Passing null to parameter #1 ($string) of type string is deprecated at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:316]
arcanist(head=master, ref.master=82d1abd4edd1), phorge(head=master, ref.master=562d36ef5f9e)
  #0 <#4> PhutilErrorHandler::handleError(integer, string, string, integer) called at [<phorge>/src/applications/diffusion/controller/DiffusionController.php:100]
  #1 <#4> DiffusionController::getRepositoryIdentifierFromRequest(AphrontRequest) called at [<phorge>/src/applications/diffusion/controller/DiffusionServeController.php:41]
  #2 <#4> DiffusionServeController::isVCSRequest(AphrontRequest) called at [<phorge>/src/applications/diffusion/controller/DiffusionController.php:26]
  #3 <#4> DiffusionController::willBeginExecution() called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:271]
  #4 <#3> PhabricatorEditEngine::setViewer(NULL) called at [<phorge>/src/applications/diffusion/controller/DiffusionRepositoryListController.php:38]
  #5 <#3> DiffusionRepositoryListController::buildApplicationCrumbs() called at [<phorge>/src/applications/base/controller/PhabricatorController.php:270]
  #6 <#3> PhabricatorController::willSendResponse(AphrontDialogResponse) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:300]
  #7 <#2> AphrontApplicationConfiguration::processRequest(AphrontRequest, PhutilDeferredLog, AphrontPHPHTTPSink, MultimeterControl) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:204]
  #8 <#2> AphrontApplicationConfiguration::runHTTPRequest(AphrontPHPHTTPSink) called at [<phorge>/webroot/index.php:35]
  #9 phlog(PhutilAggregateException) called at [<phorge>/src/aphront/response/AphrontUnhandledExceptionResponse.php:32]
  #10 AphrontUnhandledExceptionResponse::setException(PhutilAggregateException) called at [<phorge>/webroot/index.php:46]

Fix that line, get next exception:

[2023-04-30 08:02:23] EXCEPTION: (RuntimeException) strlen(): Passing null to parameter #1 ($string) of type string is deprecated at [<arcanist>/src/error/PhutilErrorHandler.php:261]
arcanist(head=master, ref.master=82d1abd4edd1), phorge(head=D25150, ref.master=562d36ef5f9e, ref.D25150=562d36ef5f9e)
  #0 <#2> PhutilErrorHandler::handleError(integer, string, string, integer) called at [<phorge>/src/applications/diffusion/controller/DiffusionController.php:107]
  #1 <#2> DiffusionController::getRepositoryIdentifierFromRequest(AphrontRequest) called at [<phorge>/src/applications/diffusion/controller/DiffusionServeController.php:41]
  #2 <#2> DiffusionServeController::isVCSRequest(AphrontRequest) called at [<phorge>/src/applications/diffusion/controller/DiffusionController.php:26]
  #3 <#2> DiffusionController::willBeginExecution() called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:271]
  #4 phlog(RuntimeException) called at [<phorge>/src/aphront/handler/PhabricatorDefaultRequestExceptionHandler.php:41]
  #5 PhabricatorDefaultRequestExceptionHandler::handleRequestThrowable(AphrontRequest, RuntimeException) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:751]
  #6 AphrontApplicationConfiguration::handleThrowable(RuntimeException) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:296]
  #7 AphrontApplicationConfiguration::processRequest(AphrontRequest, PhutilDeferredLog, AphrontPHPHTTPSink, MultimeterControl) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:204]
  #8 AphrontApplicationConfiguration::runHTTPRequest(AphrontPHPHTTPSink) called at [<phorge>/webroot/index.php:35]
[2023-04-30 08:02:23] EXCEPTION: (PhutilAggregateException) Encountered a processing exception, then another exception when trying to build a response for the first exception.
    - TypeError: PhabricatorEditEngine::setViewer(): Argument #1 ($viewer) must be of type PhabricatorUser, null given, called in /var/www/html/phorge/phorge/src/applications/diffusion/controller/DiffusionRepositoryListController.php on line 38
    - RuntimeException: strlen(): Passing null to parameter #1 ($string) of type string is deprecated at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:316]
arcanist(head=master, ref.master=82d1abd4edd1), phorge(head=D25150, ref.master=562d36ef5f9e, ref.D25150=562d36ef5f9e)
  #0 <#4> PhutilErrorHandler::handleError(integer, string, string, integer) called at [<phorge>/src/applications/diffusion/controller/DiffusionController.php:107]
  #1 <#4> DiffusionController::getRepositoryIdentifierFromRequest(AphrontRequest) called at [<phorge>/src/applications/diffusion/controller/DiffusionServeController.php:41]
  #2 <#4> DiffusionServeController::isVCSRequest(AphrontRequest) called at [<phorge>/src/applications/diffusion/controller/DiffusionController.php:26]
  #3 <#4> DiffusionController::willBeginExecution() called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:271]
  #4 <#3> PhabricatorEditEngine::setViewer(NULL) called at [<phorge>/src/applications/diffusion/controller/DiffusionRepositoryListController.php:38]
  #5 <#3> DiffusionRepositoryListController::buildApplicationCrumbs() called at [<phorge>/src/applications/base/controller/PhabricatorController.php:270]
  #6 <#3> PhabricatorController::willSendResponse(AphrontDialogResponse) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:300]
  #7 <#2> AphrontApplicationConfiguration::processRequest(AphrontRequest, PhutilDeferredLog, AphrontPHPHTTPSink, MultimeterControl) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:204]
  #8 <#2> AphrontApplicationConfiguration::runHTTPRequest(AphrontPHPHTTPSink) called at [<phorge>/webroot/index.php:35]
  #9 phlog(PhutilAggregateException) called at [<phorge>/src/aphront/response/AphrontUnhandledExceptionResponse.php:32]
  #10 AphrontUnhandledExceptionResponse::setException(PhutilAggregateException) called at [<phorge>/webroot/index.php:46]

Fix that line, get next exception:

[2023-04-30 08:03:15] EXCEPTION: (RuntimeException) strlen(): Passing null to parameter #1 ($string) of type string is deprecated at [<arcanist>/src/error/PhutilErrorHandler.php:261]
arcanist(head=master, ref.master=82d1abd4edd1), phorge(head=D25150, ref.master=562d36ef5f9e, ref.D25150=562d36ef5f9e)
  #0 <#2> PhutilErrorHandler::handleError(integer, string, string, integer) called at [<phorge>/src/applications/diffusion/controller/DiffusionController.php:112]
  #1 <#2> DiffusionController::getRepositoryIdentifierFromRequest(AphrontRequest) called at [<phorge>/src/applications/diffusion/controller/DiffusionServeController.php:41]
  #2 <#2> DiffusionServeController::isVCSRequest(AphrontRequest) called at [<phorge>/src/applications/diffusion/controller/DiffusionController.php:26]
  #3 <#2> DiffusionController::willBeginExecution() called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:271]
  #4 phlog(RuntimeException) called at [<phorge>/src/aphront/handler/PhabricatorDefaultRequestExceptionHandler.php:41]
  #5 PhabricatorDefaultRequestExceptionHandler::handleRequestThrowable(AphrontRequest, RuntimeException) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:751]
  #6 AphrontApplicationConfiguration::handleThrowable(RuntimeException) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:296]
  #7 AphrontApplicationConfiguration::processRequest(AphrontRequest, PhutilDeferredLog, AphrontPHPHTTPSink, MultimeterControl) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:204]
  #8 AphrontApplicationConfiguration::runHTTPRequest(AphrontPHPHTTPSink) called at [<phorge>/webroot/index.php:35]
[2023-04-30 08:03:15] EXCEPTION: (PhutilAggregateException) Encountered a processing exception, then another exception when trying to build a response for the first exception.
    - TypeError: PhabricatorEditEngine::setViewer(): Argument #1 ($viewer) must be of type PhabricatorUser, null given, called in /var/www/html/phorge/phorge/src/applications/diffusion/controller/DiffusionRepositoryListController.php on line 38
    - RuntimeException: strlen(): Passing null to parameter #1 ($string) of type string is deprecated at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:316]
arcanist(head=master, ref.master=82d1abd4edd1), phorge(head=D25150, ref.master=562d36ef5f9e, ref.D25150=562d36ef5f9e)
  #0 <#4> PhutilErrorHandler::handleError(integer, string, string, integer) called at [<phorge>/src/applications/diffusion/controller/DiffusionController.php:112]
  #1 <#4> DiffusionController::getRepositoryIdentifierFromRequest(AphrontRequest) called at [<phorge>/src/applications/diffusion/controller/DiffusionServeController.php:41]
  #2 <#4> DiffusionServeController::isVCSRequest(AphrontRequest) called at [<phorge>/src/applications/diffusion/controller/DiffusionController.php:26]
  #3 <#4> DiffusionController::willBeginExecution() called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:271]
  #4 <#3> PhabricatorEditEngine::setViewer(NULL) called at [<phorge>/src/applications/diffusion/controller/DiffusionRepositoryListController.php:38]
  #5 <#3> DiffusionRepositoryListController::buildApplicationCrumbs() called at [<phorge>/src/applications/base/controller/PhabricatorController.php:270]
  #6 <#3> PhabricatorController::willSendResponse(AphrontDialogResponse) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:300]
  #7 <#2> AphrontApplicationConfiguration::processRequest(AphrontRequest, PhutilDeferredLog, AphrontPHPHTTPSink, MultimeterControl) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:204]
  #8 <#2> AphrontApplicationConfiguration::runHTTPRequest(AphrontPHPHTTPSink) called at [<phorge>/webroot/index.php:35]
  #9 phlog(PhutilAggregateException) called at [<phorge>/src/aphront/response/AphrontUnhandledExceptionResponse.php:32]
  #10 AphrontUnhandledExceptionResponse::setException(PhutilAggregateException) called at [<phorge>/webroot/index.php:46]

Finally, https://phorge.localhost/diffusion/ gets rendered in web browser, displaying the default Active Repositories view (which is empty).

Related Objects

View Standalone Graph
This task is connected to more than 200 other tasks. Only direct parents and subtasks are shown here. Use View Standalone Graph to show more of the graph.