Page MenuHomePhorge

PHP 8.1 "strlen(null)" and "preg_match()" exceptions block repository creation
Closed, ResolvedPublic

Description

  1. PHP 8.1.8; Phorge at 953726d71bfa28f7ab570e9b1bdc8bd53d0bffa0
  2. Go to http://phorge.localhost/diffusion/edit/form/default/
  3. Select Create Git Repository to go to http://phorge.localhost/diffusion/edit/form/default/?vcs=git
  4. In the Name field, enter whatever
  5. Select Create Repository button
[2023-05-03 17:11:02] EXCEPTION: (RuntimeException) strlen(): Passing null to parameter #1 ($string) of type string is deprecated at [<arcanist>/src/error/PhutilErrorHandler.php:261]
arcanist(head=workbColAutoCompl, ref.master=82d1abd4edd1, ref.workbColAutoCompl=057c306f4cb6), phorge(head=master, ref.master=953726d71bfa)
  #0 <#2> PhutilErrorHandler::handleError(integer, string, string, integer) called at [<phorge>/src/applications/repository/editor/PhabricatorRepositoryEditor.php:53]
  #1 <#2> PhabricatorRepositoryEditor::applyFinalEffects(PhabricatorRepository, array) called at [<phorge>/src/applications/transactions/editor/PhabricatorApplicationTransactionEditor.php:1412]
  #2 <#2> PhabricatorApplicationTransactionEditor::applyTransactions(PhabricatorRepository, array) called at [<phorge>/src/applications/transactions/editengine/PhabricatorEditEngine.php:1149]
  #3 <#2> PhabricatorEditEngine::buildEditResponse(PhabricatorRepository) called at [<phorge>/src/applications/transactions/editengine/PhabricatorEditEngine.php:1000]
  #4 <#2> PhabricatorEditEngine::buildResponse() called at [<phorge>/src/applications/diffusion/controller/DiffusionRepositoryEditController.php:26]
  #5 <#2> DiffusionRepositoryEditController::handleRequest(AphrontRequest) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:284]
  #6 phlog(RuntimeException) called at [<phorge>/src/aphront/handler/PhabricatorDefaultRequestExceptionHandler.php:41]
  #7 PhabricatorDefaultRequestExceptionHandler::handleRequestThrowable(AphrontRequest, RuntimeException) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:751]
  #8 AphrontApplicationConfiguration::handleThrowable(RuntimeException) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:296]
  #9 AphrontApplicationConfiguration::processRequest(AphrontRequest, PhutilDeferredLog, AphrontPHPHTTPSink, MultimeterControl) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:204]
  #10 AphrontApplicationConfiguration::runHTTPRequest(AphrontPHPHTTPSink) called at [<phorge>/webroot/index.php:35]

Fix that exception, get next exception:

[2023-05-03 17:12:18] EXCEPTION: (RuntimeException) preg_match(): Passing null to parameter #2 ($subject) of type string is deprecated at [<arcanist>/src/error/PhutilErrorHandler.php:261]
arcanist(head=workbColAutoCompl, ref.master=82d1abd4edd1, ref.workbColAutoCompl=057c306f4cb6), phorge(head=createRepo, ref.master=953726d71bfa, ref.createRepo=953726d71bfa)
  #0 <#2> PhutilErrorHandler::handleError(integer, string, string, integer) called at [<arcanist>/src/error/PhutilErrorHandler.php:261]
  #1 <#2> preg_match(string, NULL) called at [<phorge>/src/applications/diffusion/controller/DiffusionServeController.php:67]
  #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-05-03 17:12:18] EXCEPTION: (PhutilAggregateException) Encountered a processing exception, then another exception when trying to build a response for the first exception.
    - RuntimeException: file_exists(): Passing null to parameter #1 ($filename) of type string is deprecated
    - RuntimeException: preg_match(): Passing null to parameter #2 ($subject) of type string is deprecated at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:316]
arcanist(head=workbColAutoCompl, ref.master=82d1abd4edd1, ref.workbColAutoCompl=057c306f4cb6), phorge(head=createRepo, ref.master=953726d71bfa, ref.createRepo=953726d71bfa)
  #0 <#4> preg_match(string, NULL) called at [<phorge>/src/applications/diffusion/controller/DiffusionServeController.php:67]
  #1 <#4> DiffusionServeController::isVCSRequest(AphrontRequest) called at [<phorge>/src/applications/diffusion/controller/DiffusionController.php:26]
  #2 <#4> DiffusionController::willBeginExecution() called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:271]
  #3 <#3> PhutilErrorHandler::handleError(integer, string, string, integer) called at [<arcanist>/src/error/PhutilErrorHandler.php:261]
  #4 <#3> file_exists(NULL) called at [<arcanist>/src/filesystem/Filesystem.php:1068]
  #5 <#3> Filesystem::pathExists(NULL) called at [<arcanist>/src/filesystem/Filesystem.php:1169]
  #6 <#3> Filesystem::assertExists(NULL) called at [<arcanist>/src/filesystem/Filesystem.php:1020]
  #7 <#3> Filesystem::isDescendant(NULL, string) called at [<phorge>/src/view/widget/AphrontStackTraceView.php:33]
  #8 <#3> AphrontStackTraceView::render() called at [<phorge>/src/view/AphrontView.php:222]
  #9 <#3> AphrontView::producePhutilSafeHTML() called at [<phorge>/src/infrastructure/markup/render.php:115]
  #10 <#3> phutil_escape_html(AphrontStackTraceView) called at [<phorge>/src/infrastructure/markup/render.php:139]
  #11 <#3> phutil_escape_html(array) called at [<phorge>/src/infrastructure/markup/render.php:97]
  #12 <#3> phutil_tag(string, array, array) called at [<phorge>/src/aphront/handler/PhabricatorDefaultRequestExceptionHandler.php:67]
  #13 <#3> PhabricatorDefaultRequestExceptionHandler::handleRequestThrowable(AphrontRequest, RuntimeException) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:751]
  #14 <#3> AphrontApplicationConfiguration::handleThrowable(RuntimeException) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:296]
  #15 <#2> AphrontApplicationConfiguration::processRequest(AphrontRequest, PhutilDeferredLog, AphrontPHPHTTPSink, MultimeterControl) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:204]
  #16 <#2> AphrontApplicationConfiguration::runHTTPRequest(AphrontPHPHTTPSink) called at [<phorge>/webroot/index.php:35]
  #17 phlog(PhutilAggregateException) called at [<phorge>/src/aphront/response/AphrontUnhandledExceptionResponse.php:32]
  #18 AphrontUnhandledExceptionResponse::setException(PhutilAggregateException) called at [<phorge>/webroot/index.php:46]

Fix that exception, get next exception:

[2023-05-03 17:54:56] EXCEPTION: (RuntimeException) strlen(): Passing null to parameter #1 ($string) of type string is deprecated at [<arcanist>/src/error/PhutilErrorHandler.php:261]
arcanist(head=workbColAutoCompl, ref.master=82d1abd4edd1, ref.workbColAutoCompl=057c306f4cb6), phorge(head=createRepo, ref.master=953726d71bfa, ref.createRepo=953726d71bfa)
  #0 <#2> PhutilErrorHandler::handleError(integer, string, string, integer) called at [<phorge>/src/applications/diffusion/controller/DiffusionRepositoryManagePanelsController.php:43]
  #1 <#2> DiffusionRepositoryManagePanelsController::handleRequest(AphrontRequest) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:284]
  #2 phlog(RuntimeException) called at [<phorge>/src/aphront/handler/PhabricatorDefaultRequestExceptionHandler.php:41]
  #3 PhabricatorDefaultRequestExceptionHandler::handleRequestThrowable(AphrontRequest, RuntimeException) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:751]
  #4 AphrontApplicationConfiguration::handleThrowable(RuntimeException) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:296]
  #5 AphrontApplicationConfiguration::processRequest(AphrontRequest, PhutilDeferredLog, AphrontPHPHTTPSink, MultimeterControl) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:204]
  #6 AphrontApplicationConfiguration::runHTTPRequest(AphrontPHPHTTPSink) called at [<phorge>/webroot/index.php:35]

Fix that exception, get next exception:

[2023-05-03 17:57:23] EXCEPTION: (RuntimeException) strlen(): Passing null to parameter #1 ($string) of type string is deprecated at [<arcanist>/src/error/PhutilErrorHandler.php:261]
arcanist(head=workbColAutoCompl, ref.master=82d1abd4edd1, ref.workbColAutoCompl=057c306f4cb6), phorge(head=createRepo, ref.master=953726d71bfa, ref.createRepo=953726d71bfa)
  #0 <#2> PhutilErrorHandler::handleError(integer, string, string, integer) called at [<phorge>/src/applications/diffusion/management/DiffusionRepositoryBasicsManagementPanel.php:222]
  #1 <#2> DiffusionRepositoryBasicsManagementPanel::buildBasics() called at [<phorge>/src/applications/diffusion/management/DiffusionRepositoryBasicsManagementPanel.php:164]
  #2 <#2> DiffusionRepositoryBasicsManagementPanel::buildManagementPanelContent() called at [<phorge>/src/applications/diffusion/controller/DiffusionRepositoryManagePanelsController.php:60]
  #3 <#2> DiffusionRepositoryManagePanelsController::handleRequest(AphrontRequest) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:284]
  #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]

Finally, page http://phorge.localhost/diffusion/4/manage/ gets rendered in web browser, showing R4 as inactive

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.