- PHP 8.3.9; Phorge at 1b5d2f83c3aa03dada5cbed4a18d341733348425
- Intentionally bug Phorge with an Array to string conversion by applying the following code change:
diff --git a/src/applications/settings/panel/PhabricatorEmailPreferencesSettingsPanel.php b/src/applications/settings/panel/PhabricatorEmailPreferencesSettingsPanel.php index 50d64072f5..3705ce4e7f 100644 --- a/src/applications/settings/panel/PhabricatorEmailPreferencesSettingsPanel.php +++ b/src/applications/settings/panel/PhabricatorEmailPreferencesSettingsPanel.php @@ -60,7 +60,7 @@ final class PhabricatorEmailPreferencesSettingsPanel $mailtags = $preferences->getSettingValue( PhabricatorEmailTagsSetting::SETTINGKEY); - +phlog(pht('intentionally buggy %s', $mailtags)); $form = id(new AphrontFormView()) ->setUser($viewer);
- Go to http://phorge.localhost/settings/user/testadmin/page/emailpreferences/ and check the resulting stacktrace:
ERROR 8192: file_exists(): Passing null to parameter #1 ($filename) of type string is deprecated at [/var/www/html/phorge/arcanist/src/filesystem/Filesystem.php:1068]; arcanist(head=master, ref.master=331b255b1508), ava(head=wmf/stable, ref.master=d3f5a1c67bb4, ref.wmf/stable=0b414fb56fe3), phorge(head=master, ref.master=1b5d2f83c3aa), translations(head=wmf/stable, ref.master=09fe573a932a, ref.wmf/stable=22bfc12ddd7e); #0 file_exists(NULL) called at [<arcanist>/src/filesystem/Filesystem.php:1068]; #1 Filesystem::pathExists(NULL) called at [<arcanist>/src/filesystem/Filesystem.php:1180]; #2 Filesystem::assertExists(NULL) called at [<arcanist>/src/filesystem/Filesystem.php:1020]; #3 Filesystem::isDescendant(NULL, string) called at [<phorge>/src/view/widget/AphrontStackTraceView.php:33]; #4 AphrontStackTraceView::render() called at [<phorge>/src/view/AphrontView.php:222]; #5 AphrontView::producePhutilSafeHTML() called at [<phorge>/src/infrastructure/markup/render.php:115]; #6 phutil_escape_html(AphrontStackTraceView) called at [<phorge>/src/infrastructure/markup/render.php:139]; #7 phutil_escape_html(array) called at [<phorge>/src/infrastructure/markup/render.php:97]; #8 phutil_tag(string, array, array) called at [<phorge>/src/aphront/handler/PhabricatorDefaultRequestExceptionHandler.php:62]; #9 PhabricatorDefaultRequestExceptionHandler::handleRequestThrowable(AphrontRequest, RuntimeException) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:752]; #10 AphrontApplicationConfiguration::handleThrowable(RuntimeException) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:296]; #11 AphrontApplicationConfiguration::processRequest(AphrontRequest, PhutilDeferredLog, AphrontPHPHTTPSink, MultimeterControl) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:203]; #12 AphrontApplicationConfiguration::runHTTPRequest(AphrontPHPHTTPSink) called at [<phorge>/webroot/index.php:35]