Page MenuHomePhorge

T15064: PHP8 related corrections
Needs ReviewPublic

Authored by mturdus on May 29 2023, 10:11.
Tags
None
Referenced Files
Unknown Object (File)
Thu, Apr 11, 05:17
Unknown Object (File)
Wed, Apr 10, 18:10
Unknown Object (File)
Tue, Apr 9, 20:23
Unknown Object (File)
Tue, Apr 9, 20:23
Unknown Object (File)
Tue, Apr 9, 20:23
Unknown Object (File)
Tue, Apr 9, 20:23
Unknown Object (File)
Mon, Apr 8, 21:23
Unknown Object (File)
Mon, Apr 8, 21:14

Details

Summary

These are several fixes for running Phorge on PHP 8.2

Closes T15536

Test Plan
  • When you browse for the 1st time to your new Phorge installation, the base_uri check failed.
    • error disappears after applying this patch
  • When you browse to "Config > Services > Database Schemata", you will see an error
    • (Failed "property" check at)
    • error disappears after applying this patch
  • when browsing to a file object (e.g. F15) and change the view mode, an error appears
    • (Failed encode_setting and hightlight_setting)
    • error disappears after applying this patch
  • When attaching an image to a maniphest task and then clicking on the image, an error message is shown
    • (Failed "comment" check )
    • error disappears after applying this patch
  • When trying to sending emails (e.g. by editing a wiki document and by bin\mail --send-test), the mails are not sent and an error is logged
    • error disappears after applying this patch
  • When creating a repository and changing its URI, an error is shown
    • error disappears after applying this patch
  • When creating a repository, setting its URI, activating the repo an error is shown at the bottom of the screen (near "RAW ERROR"). You may need to click on "Update Now" to see the result faster.
    • error disappears after applying this patch
  • When entering text in the search filter in the top right corner, no dropdown with search results is shown
    • search results are shown after applying this patch

Diff Detail

Repository
rP Phorge
Branch
arcpatch-D25256
Lint
Lint Passed
Unit
Tests Passed
Build Status
Buildable 1137
Build 1137: arc lint + arc unit

Event Timeline

mturdus requested review of this revision.May 29 2023, 10:11

Thanks

Have you your stack traces before this was happening?

Please share somewhere :) You are now a Trusted Contributors

src/applications/diffusion/request/DiffusionGitRequest.php
6 ↗(On Diff #833)

✅ This involves a PHP pitfall that is OK here: the symbol "0" is not a 40-length acceptable character, so it's OK to short circuit to false.

These are the stack traces:

[Mon May 29 10:55:20.640772 2023] [php:notice] [pid 18588:tid 140379590485696] [client ::1:40142] [2023-05-29 08:55:20] EXCEPTION: (RuntimeException) strlen(): Passing null to parameter #1 ($string) of type string is deprecated at [<arcanist>/src/error/PhutilErrorHandler.php:261]
[Mon May 29 10:55:20.641113 2023] [php:notice] [pid 18588:tid 140379590485696] [client ::1:40142] arcanist(head=master, ref.master=0e32dbc1ac8f), phorge(head=master, ref.master=827f63a06543, custom=1)
[Mon May 29 10:55:20.641128 2023] [php:notice] [pid 18588:tid 140379590485696] [client ::1:40142] #0 <#2> PhutilErrorHandler::handleError(integer, string, string, integer) called at [<phorge>/src/applications/config/check/PhabricatorWebServerSetupCheck.php:26]
[Mon May 29 10:55:20.641135 2023] [php:notice] [pid 18588:tid 140379590485696] [client ::1:40142] #1 <#2> PhabricatorWebServerSetupCheck::executeChecks() called at [<phorge>/src/applications/config/check/PhabricatorSetupCheck.php:63]
[Mon May 29 10:55:20.641140 2023] [php:notice] [pid 18588:tid 140379590485696] [client ::1:40142] #2 <#2> PhabricatorSetupCheck::runSetupChecks() called at [<phorge>/src/applications/config/check/PhabricatorSetupCheck.php:258]
[Mon May 29 10:55:20.641145 2023] [php:notice] [pid 18588:tid 140379590485696] [client ::1:40142] #3 <#2> PhabricatorSetupCheck::runNormalChecks() called at [<phorge>/src/applications/config/engine/PhabricatorSetupEngine.php:26]
[Mon May 29 10:55:20.641150 2023] [php:notice] [pid 18588:tid 140379590485696] [client ::1:40142] #4 <#2> PhabricatorSetupEngine::execute() called at [<phorge>/src/applications/config/check/PhabricatorSetupCheck.php:194]
[Mon May 29 10:55:20.641155 2023] [php:notice] [pid 18588:tid 140379590485696] [client ::1:40142] #5 <#2> PhabricatorSetupCheck::willProcessRequest() called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:169]
[Mon May 29 10:55:20.641160 2023] [php:notice] [pid 18588:tid 140379590485696] [client ::1:40142] #6 <#2> AphrontApplicationConfiguration::runHTTPRequest(AphrontPHPHTTPSink) called at [<phorge>/webroot/index.php:35]
[Mon May 29 10:55:20.641165 2023] [php:notice] [pid 18588:tid 140379590485696] [client ::1:40142] #7 phlog(RuntimeException) called at [<phorge>/src/aphront/response/AphrontUnhandledExceptionResponse.php:32]
[Mon May 29 10:55:20.641170 2023] [php:notice] [pid 18588:tid 140379590485696] [client ::1:40142] #8 AphrontUnhandledExceptionResponse::setException(RuntimeException) called at [<phorge>/webroot/index.php:46]

[Mon May 29 11:42:29.478375 2023] [php:notice] [pid 22530:tid 140379556914880] [client ::1:52076] [2023-05-29 09:42:29] EXCEPTION: (RuntimeException) strlen(): Passing null to parameter #1 ($string) of type string is deprecated at [<arcanist>/src/error/PhutilErrorHandler.php:261]
[Mon May 29 11:42:29.478530 2023] [php:notice] [pid 22530:tid 140379556914880] [client ::1:52076] arcanist(head=master, ref.master=0e32dbc1ac8f), phorge(head=master, ref.master=6f4d974ab8f6, custom=1)
[Mon May 29 11:42:29.478537 2023] [php:notice] [pid 22530:tid 140379556914880] [client ::1:52076] #0 <#2> PhutilErrorHandler::handleError(integer, string, string, integer) called at [<phorge>/src/applications/files/controller/PhabricatorFileLightboxController.php:23]
[Mon May 29 11:42:29.478540 2023] [php:notice] [pid 22530:tid 140379556914880] [client ::1:52076] #1 <#2> PhabricatorFileLightboxController::handleRequest(AphrontRequest) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:284]
[Mon May 29 11:42:29.478543 2023] [php:notice] [pid 22530:tid 140379556914880] [client ::1:52076] #2 phlog(RuntimeException) called at [<phorge>/src/aphront/handler/PhabricatorDefaultRequestExceptionHandler.php:41]
[Mon May 29 11:42:29.478546 2023] [php:notice] [pid 22530:tid 140379556914880] [client ::1:52076] #3 PhabricatorDefaultRequestExceptionHandler::handleRequestThrowable(AphrontRequest, RuntimeException) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:751]
[Mon May 29 11:42:29.478549 2023] [php:notice] [pid 22530:tid 140379556914880] [client ::1:52076] #4 AphrontApplicationConfiguration::handleThrowable(RuntimeException) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:296]
[Mon May 29 11:42:29.478552 2023] [php:notice] [pid 22530:tid 140379556914880] [client ::1:52076] #5 AphrontApplicationConfiguration::processRequest(AphrontRequest, PhutilDeferredLog, AphrontPHPHTTPSink, MultimeterControl) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:203]
[Mon May 29 11:42:29.478554 2023] [php:notice] [pid 22530:tid 140379556914880] [client ::1:52076] #6 AphrontApplicationConfiguration::runHTTPRequest(AphrontPHPHTTPSink) called at [<phorge>/webroot/index.php:35]

[Mon May 29 12:44:50.903224 2023] [php:notice] [pid 22843:tid 140378497861312] [client ::1:60778] [2023-05-29 10:44:50] EXCEPTION: (RuntimeException) strlen(): Passing null to parameter #1 ($string) of type string is deprecated at [<arcanist>/src/error/PhutilErrorHandler.php:261]
[Mon May 29 12:44:50.903389 2023] [php:notice] [pid 22843:tid 140378497861312] [client ::1:60778] arcanist(head=master, ref.master=0e32dbc1ac8f), phorge(head=master, ref.master=421e37beec7b, custom=1)
[Mon May 29 12:44:50.903397 2023] [php:notice] [pid 22843:tid 140378497861312] [client ::1:60778] #0 <#2> PhutilErrorHandler::handleError(integer, string, string, integer) called at [<phorge>/src/applications/config/controller/services/PhabricatorConfigDatabaseStatusController.php:840]
[Mon May 29 12:44:50.903400 2023] [php:notice] [pid 22843:tid 140378497861312] [client ::1:60778] #1 <#2> PhabricatorConfigDatabaseStatusController::getURI(array) called at [<phorge>/src/applications/config/controller/services/PhabricatorConfigDatabaseStatusController.php:178]
[Mon May 29 12:44:50.903403 2023] [php:notice] [pid 22843:tid 140378497861312] [client ::1:60778] #2 <#2> PhabricatorConfigDatabaseStatusController::renderServers(array, array, array) called at [<phorge>/src/applications/config/controller/services/PhabricatorConfigDatabaseStatusController.php:67]
[Mon May 29 12:44:50.903406 2023] [php:notice] [pid 22843:tid 140378497861312] [client ::1:60778] #3 <#2> PhabricatorConfigDatabaseStatusController::handleRequest(AphrontRequest) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:284]
[Mon May 29 12:44:50.903416 2023] [php:notice] [pid 22843:tid 140378497861312] [client ::1:60778] #4 phlog(RuntimeException) called at [<phorge>/src/aphront/handler/PhabricatorDefaultRequestExceptionHandler.php:41]
[Mon May 29 12:44:50.903419 2023] [php:notice] [pid 22843:tid 140378497861312] [client ::1:60778] #5 PhabricatorDefaultRequestExceptionHandler::handleRequestThrowable(AphrontRequest, RuntimeException) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:751]
[Mon May 29 12:44:50.903422 2023] [php:notice] [pid 22843:tid 140378497861312] [client ::1:60778] #6 AphrontApplicationConfiguration::handleThrowable(RuntimeException) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:296]
[Mon May 29 12:44:50.903425 2023] [php:notice] [pid 22843:tid 140378497861312] [client ::1:60778] #7 AphrontApplicationConfiguration::processRequest(AphrontRequest, PhutilDeferredLog, AphrontPHPHTTPSink, MultimeterControl) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:203]
[Mon May 29 12:44:50.903428 2023] [php:notice] [pid 22843:tid 140378497861312] [client ::1:60778] #8 AphrontApplicationConfiguration::runHTTPRequest(AphrontPHPHTTPSink) called at [<phorge>/webroot/index.php:35]

[Mon May 29 12:52:28.549997 2023] [php:notice] [::1:53274] [2023-05-29 10:52:28] EXCEPTION: (RuntimeException) strlen(): Passing null to parameter #1 ($string) of type string is deprecated at [<arcanist>/src/error/PhutilErrorHandler.php:261]
[Mon May 29 12:52:28.550170 2023] [php:notice] [::1:53274] arcanist(head=master, ref.master=0e32dbc1ac8f), phorge(head=master, ref.master=421e37beec7b, custom=1)
[Mon May 29 12:52:28.550177 2023] [php:notice] [::1:53274] #0 <#2> PhutilErrorHandler::handleError(integer, string, string, integer) called at [<phorge>/src/applications/files/document/render/PhabricatorDocumentRenderingEngine.php:211]
[Mon May 29 12:52:28.550180 2023] [php:notice] [::1:53274] #1 <#2> PhabricatorDocumentRenderingEngine::newRenderResponse(PhabricatorDocumentRef) called at [<phorge>/src/applications/files/controller/PhabricatorFileDocumentController.php:33]
[Mon May 29 12:52:28.550183 2023] [php:notice] [::1:53274] #2 <#2> PhabricatorFileDocumentController::handleRequest(AphrontRequest) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:284]
[Mon May 29 12:52:28.550186 2023] [php:notice] [::1:53274] #3 phlog(RuntimeException) called at [<phorge>/src/aphront/handler/PhabricatorAjaxRequestExceptionHandler.php:27]
[Mon May 29 12:52:28.550188 2023] [php:notice] [::1:53274] #4 PhabricatorAjaxRequestExceptionHandler::handleRequestThrowable(AphrontRequest, RuntimeException) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:751]
[Mon May 29 12:52:28.550191 2023] [php:notice] [::1:53274] #5 AphrontApplicationConfiguration::handleThrowable(RuntimeException) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:296]
[Mon May 29 12:52:28.550194 2023] [php:notice] [::1:53274] #6 AphrontApplicationConfiguration::processRequest(AphrontRequest, PhutilDeferredLog, AphrontPHPHTTPSink, MultimeterControl) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:203]
[Mon May 29 12:52:28.550202 2023] [php:notice] [::1:53274] #7 AphrontApplicationConfiguration::runHTTPRequest(AphrontPHPHTTPSink) called at [<phorge>/webroot/index.php:35]

[Mon May 29 12:54:11.080086 2023] [php:notice] [::1:42166] [2023-05-29 10:54:11] EXCEPTION: (RuntimeException) strlen(): Passing null to parameter #1 ($string) of type string is deprecated at [<arcanist>/src/error/PhutilErrorHandler.php:261]
[Mon May 29 12:54:11.080244 2023] [php:notice] [::1:42166] arcanist(head=master, ref.master=0e32dbc1ac8f), phorge(head=master, ref.master=421e37beec7b, custom=1)
[Mon May 29 12:54:11.080251 2023] [php:notice] [::1:42166] #0 <#2> PhutilErrorHandler::handleError(integer, string, string, integer) called at [<phorge>/src/applications/files/document/render/PhabricatorDocumentRenderingEngine.php:216]
[Mon May 29 12:54:11.080255 2023] [php:notice] [::1:42166] #1 <#2> PhabricatorDocumentRenderingEngine::newRenderResponse(PhabricatorDocumentRef) called at [<phorge>/src/applications/files/controller/PhabricatorFileDocumentController.php:33]
[Mon May 29 12:54:11.080257 2023] [php:notice] [::1:42166] #2 <#2> PhabricatorFileDocumentController::handleRequest(AphrontRequest) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:284]
[Mon May 29 12:54:11.080260 2023] [php:notice] [::1:42166] #3 phlog(RuntimeException) called at [<phorge>/src/aphront/handler/PhabricatorAjaxRequestExceptionHandler.php:27]
[Mon May 29 12:54:11.080263 2023] [php:notice] [::1:42166] #4 PhabricatorAjaxRequestExceptionHandler::handleRequestThrowable(AphrontRequest, RuntimeException) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:751]
[Mon May 29 12:54:11.080266 2023] [php:notice] [::1:42166] #5 AphrontApplicationConfiguration::handleThrowable(RuntimeException) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:296]
[Mon May 29 12:54:11.080268 2023] [php:notice] [::1:42166] #6 AphrontApplicationConfiguration::processRequest(AphrontRequest, PhutilDeferredLog, AphrontPHPHTTPSink, MultimeterControl) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:203]
[Mon May 29 12:54:11.080271 2023] [php:notice] [::1:42166] #7 AphrontApplicationConfiguration::runHTTPRequest(AphrontPHPHTTPSink) called at [<phorge>/webroot/index.php:35]

[2023-05-29 10:56:41] 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=0e32dbc1ac8f), phorge(head=master, ref.master=421e37beec7b, custom=1)

#0 PhutilErrorHandler::handleError(integer, string, string, integer) called at [<phorge>/src/applications/metamta/management/PhabricatorMailManagementSendTestWorkflow.php:77]
#1 PhabricatorMailManagementSendTestWorkflow::execute(PhutilArgumentParser) called at [<arcanist>/src/parser/argument/PhutilArgumentParser.php:492]
#2 PhutilArgumentParser::parseWorkflowsFull(array) called at [<arcanist>/src/parser/argument/PhutilArgumentParser.php:377]
#3 PhutilArgumentParser::parseWorkflows(array) called at [<phorge>/scripts/mail/manage_mail.php:21]

Pull of 'R4' failed:
#0 /opt/phorge/phorge/src/applications/repository/storage/PhabricatorRepository.php(1163): PhutilErrorHandler::handleError(8192, '...', '...', 1163)
#1 /opt/phorge/phorge/src/applications/repository/storage/PhabricatorRepository.php(523): PhabricatorRepository->getRemoteURIObject()
#2 /opt/phorge/phorge/src/applications/repository/storage/PhabricatorRepository.php(509): PhabricatorRepository->newRemoteCommandEngine(Array)
#3 /opt/phorge/phorge/src/applications/repository/storage/PhabricatorRepository.php(495): PhabricatorRepository->newRemoteCommandFuture(Array)
#4 /opt/phorge/phorge/src/applications/repository/engine/PhabricatorRepositoryPullEngine.php(266): PhabricatorRepository->execxRemoteCommand('...', '...')
#5 /opt/phorge/phorge/src/applications/repository/engine/PhabricatorRepositoryPullEngine.php(112): PhabricatorRepositoryPullEngine->executeGitCreate()
#6 /opt/phorge/phorge/src/applications/repository/engine/PhabricatorRepositoryPullEngine.php(40): PhabricatorRepositoryPullEngine->pullRepositoryWithLock()
#7 /opt/phorge/phorge/src/applications/repository/management/PhabricatorRepositoryManagementUpdateWorkflow.php(59): PhabricatorRepositoryPullEngine->pullRepository()
#8 /opt/phorge/arcanist/src/parser/argument/PhutilArgumentParser.php(492): PhabricatorRepositoryManagementUpdateWorkflow->execute(Object(PhutilArgumentParser))
#9 /opt/phorge/arcanist/src/parser/argument/PhutilArgumentParser.php(377): PhutilArgumentParser->parseWorkflowsFull(Array)
#10 /opt/phorge/phorge/scripts/repository/manage_repositories.php(22): PhutilArgumentParser->parseWorkflows(Array)
#11 {main}

[Mon May 29 13:13:30.188466 2023] [php:notice] [::1:38826] [2023-05-29 11:13:30] EXCEPTION: (RuntimeException) strlen(): Passing null to parameter #1 ($string) of type string is deprecated at [<arcanist>/src/error/PhutilErrorHandler.php:261]
[Mon May 29 13:13:30.188675 2023] [php:notice] [::1:38826] arcanist(head=master, ref.master=0e32dbc1ac8f), phorge(head=master, ref.master=421e37beec7b, custom=1)
[Mon May 29 13:13:30.188682 2023] [php:notice] [::1:38826] #0 <#2> PhutilErrorHandler::handleError(integer, string, string, integer) called at [<phorge>/src/applications/repository/storage/PhabricatorRepositoryURI.php:755]
[Mon May 29 13:13:30.188693 2023] [php:notice] [::1:38826] #1 <#2> PhabricatorRepositoryURI::getURINormalizerDomainMap() called at [<phorge>/src/applications/repository/storage/PhabricatorRepositoryURI.php:211]
[Mon May 29 13:13:30.188697 2023] [php:notice] [::1:38826] #2 <#2> PhabricatorRepositoryURI::getNormalizedURI() called at [<phorge>/src/applications/repository/storage/PhabricatorRepository.php:840]
[Mon May 29 13:13:30.188699 2023] [php:notice] [::1:38826] #3 <#2> PhabricatorRepository::updateURIIndex() called at [<phorge>/src/applications/diffusion/editor/DiffusionURIEditor.php:497]
[Mon May 29 13:13:30.188703 2023] [php:notice] [::1:38826] #4 <#2> DiffusionURIEditor::applyFinalEffects(PhabricatorRepositoryURI, array) called at [<phorge>/src/applications/transactions/editor/PhabricatorApplicationTransactionEditor.php:1412]
[Mon May 29 13:13:30.188705 2023] [php:notice] [::1:38826] #5 <#2> PhabricatorApplicationTransactionEditor::applyTransactions(PhabricatorRepositoryURI, array) called at [<phorge>/src/applications/transactions/editengine/PhabricatorEditEngine.php:1149]
[Mon May 29 13:13:30.188708 2023] [php:notice] [::1:38826] #6 <#2> PhabricatorEditEngine::buildEditResponse(PhabricatorRepositoryURI) called at [<phorge>/src/applications/transactions/editengine/PhabricatorEditEngine.php:1000]
[Mon May 29 13:13:30.188711 2023] [php:notice] [::1:38826] #7 <#2> PhabricatorEditEngine::buildResponse() called at [<phorge>/src/applications/diffusion/controller/DiffusionRepositoryURIEditController.php:18]
[Mon May 29 13:13:30.188714 2023] [php:notice] [::1:38826] #8 <#2> DiffusionRepositoryURIEditController::handleRequest(AphrontRequest) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:284]
[Mon May 29 13:13:30.188717 2023] [php:notice] [::1:38826] #9 phlog(RuntimeException) called at [<phorge>/src/aphront/handler/PhabricatorDefaultRequestExceptionHandler.php:41]
[Mon May 29 13:13:30.188720 2023] [php:notice] [::1:38826] #10 PhabricatorDefaultRequestExceptionHandler::handleRequestThrowable(AphrontRequest, RuntimeException) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:751]
[Mon May 29 13:13:30.188722 2023] [php:notice] [::1:38826] #11 AphrontApplicationConfiguration::handleThrowable(RuntimeException) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:296]
[Mon May 29 13:13:30.188725 2023] [php:notice] [::1:38826] #12 AphrontApplicationConfiguration::processRequest(AphrontRequest, PhutilDeferredLog, AphrontPHPHTTPSink, MultimeterControl) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:203]
[Mon May 29 13:13:30.188728 2023] [php:notice] [::1:38826] #13 AphrontApplicationConfiguration::runHTTPRequest(AphrontPHPHTTPSink) called at [<phorge>/webroot/index.php:35]

I was unable to reproduce these 2:
src/applications/diffusion/request/DiffusionGitRequest.php
src/applications/people/mail/PhabricatorPeopleEmailLoginMailEngine.php

The fix for src/applications/search/controller/PhabricatorSearchController.php does not generate a stack trace in the httpd error_log.
If I undo the fix, I'm not able to search for words anymore

src/applications/diffusion/request/DiffusionGitRequest.php
6 ↗(On Diff #833)

🔴 Interestingly the isStableCommit() was already fixed 6 days ago:

6b8ec50148909938850b5acfd11725ae23a8e31b

D25266

Hoping to be useful I will strip this change from the Diff to avoid an edit conflict.

src/applications/repository/storage/PhabricatorRepositoryURI.php
755 ↗(On Diff #833)

🔴 Interestingly $ssh_host was already fixed here 3 days ago:

1028eb3ee966a9662f847301e4db45b5377321c8

D25273

I will also strip this, in order to avoid an edit conflict.

I verified some lines but I need more help in the others.

src/applications/config/check/PhabricatorWebServerSetupCheck.php
26 ↗(On Diff #1095)
src/applications/files/document/render/PhabricatorDocumentRenderingEngine.php
211

✅ Indeed from the method AphrontRequest::getStr() we should only get NULL or a string

216

✅ Indeed from the method AphrontRequest::getStr() we should only get NULL or a string

src/applications/search/controller/PhabricatorSearchController.php
16 ↗(On Diff #1095)

✅ Indeed from the method AphrontRequest::getStr() we should only get NULL or a string

Most of these look good, but I think some of it is outdated - can you check which is still needed?

src/applications/metamta/management/PhabricatorMailManagementSendTestWorkflow.php
78–80 ↗(On Diff #1095)

I think I already fixed this one in D25275?

The change in src/applications/people/mail/PhabricatorPeopleEmailLoginMailEngine.php also seems to be solved somehow.
I tried to simulate the issue with bin/mail send-test --to mturdus --subject "" and pressing CTRL-D.
I received an empty email (containing no subject and no body).

(I can't comment on my own changes, so I mention it in here)

src/applications/metamta/management/PhabricatorMailManagementSendTestWorkflow.php
78–80 ↗(On Diff #1095)

Confirmed: this is indeed fixed

avivey requested changes to this revision.Jul 17 2023, 06:03

Please update the diff.

This revision now requires changes to proceed.Jul 17 2023, 06:03
aklapper subscribed.

Remove two changes from patch which got already fixed in the meantime; rebase

Remove another change which is unneeded now