Page MenuHomeDevCentral

arcanist doesn't work on PHP 8.4
Open, NormalPublic

Description

We can't use arc with PHP 8.4:

$ arc paste P369
PHP Deprecated:  Constant E_STRICT is deprecated in /opt/phabricator/arcanist/support/init/init-script.php on line 18

Deprecated: Constant E_STRICT is deprecated in /opt/phabricator/arcanist/support/init/init-script.php on line 18
[2025-03-27 18:31:15] EXCEPTION: (Exception) Error while loading file "/opt/phabricator/arcanist/src/future/FutureProxy.php": FutureProxy::__construct(): Implicitly marking parameter $proxied as nullable is deprecated, the explicit nullable type must be used instead at [<arcanist>/src/init/lib/PhutilBootloader.php:275]
arcanist(head=production, ref.master=e50d1bc4eaba, ref.production=a1c7b85f1358), shellcheck-linter(head=main, ref.main=402dcb215451)
  #0 __phutil_autoload(string) called at [<arcanist>/src/conduit/ConduitFuture.php:3]
  #1 include_once(string) called at [<arcanist>/src/init/lib/PhutilBootloader.php:247]
  #2 PhutilBootloader::executeInclude(string) called at [<arcanist>/src/init/lib/PhutilBootloader.php:207]
  #3 PhutilBootloader::loadLibrarySource(string, string) called at [<arcanist>/src/symbols/PhutilSymbolLoader.php:423]
  #4 PhutilSymbolLoader::loadSymbol(array) called at [<arcanist>/src/symbols/PhutilSymbolLoader.php:277]
  #5 PhutilSymbolLoader::selectAndLoadSymbols() called at [<arcanist>/src/init/init-library.php:23]
  #6 __phutil_autoload(string) called at [<arcanist>/src/conduit/ConduitClient.php:180]
  #7 ConduitClient::callMethod(string, array) called at [<arcanist>/src/conduit/ArcanistConduitEngine.php:47]
  #8 ArcanistConduitEngine::newFuture(string, array) called at [<arcanist>/src/conduit/ConduitSearchFuture.php:107]
  #9 ConduitSearchFuture::newFuture() called at [<arcanist>/src/conduit/ConduitSearchFuture.php:59]
  #10 ConduitSearchFuture::isReady() called at [<arcanist>/src/future/Future.php:63]
  #11 Future::updateFuture() called at [<arcanist>/src/future/Future.php:159]
  #12 Future::start() called at [<arcanist>/src/future/FutureIterator.php:403]
  #13 FutureIterator::moveFutureToWork(string) called at [<arcanist>/src/future/FutureIterator.php:374]
  #14 FutureIterator::updateWorkingSet() called at [<arcanist>/src/future/FutureIterator.php:206]
  #15 FutureIterator::next() called at [<arcanist>/src/future/FutureIterator.php:190]
  #16 FutureIterator::rewind() called at [<arcanist>/src/hardpoint/ArcanistHardpointEngine.php:213]
  #17 ArcanistHardpointEngine::updateFutures() called at [<arcanist>/src/hardpoint/ArcanistHardpointEngine.php:176]
  #18 ArcanistHardpointEngine::waitForRequests(array) called at [<arcanist>/src/runtime/ArcanistRuntime.php:858]
  #19 ArcanistRuntime::loadHardpoints(array, ArcanistHardpointRequestList) called at [<arcanist>/src/ref/symbol/ArcanistSymbolEngine.php:94]
  #20 ArcanistSymbolEngine::loadRefsForSymbols(ArcanistPasteSymbolRef, array) called at [<arcanist>/src/ref/symbol/ArcanistSymbolEngine.php:68]
  #21 ArcanistSymbolEngine::loadPastesForSymbols(array) called at [<arcanist>/src/ref/symbol/ArcanistSymbolEngine.php:63]
  #22 ArcanistSymbolEngine::loadPasteForSymbol(string) called at [<arcanist>/src/workflow/ArcanistPasteWorkflow.php:94]
  #23 ArcanistPasteWorkflow::runWorkflow(PhutilArgumentParser) called at [<arcanist>/src/workflow/ArcanistWorkflow.php:227]
  #24 ArcanistWorkflow::executeWorkflow(PhutilArgumentParser) called at [<arcanist>/src/toolset/ArcanistPhutilWorkflow.php:21]
  #25 ArcanistPhutilWorkflow::execute(PhutilArgumentParser) called at [<arcanist>/src/parser/argument/PhutilArgumentParser.php:492]
  #26 PhutilArgumentParser::parseWorkflowsFull(array) called at [<arcanist>/src/runtime/ArcanistRuntime.php:171]
  #27 ArcanistRuntime::executeCore(array) called at [<arcanist>/src/runtime/ArcanistRuntime.php:37]
  #28 ArcanistRuntime::execute(array) called at [<arcanist>/support/init/init-arcanist.php:6]
  #29 require_once(string) called at [<arcanist>/bin/arc:10]

$ php -v
PHP 8.4.4 (cli) (built: Feb 11 2025 15:36:20) (NTS)
Copyright (c) The PHP Group
Built by Homebrew
Zend Engine v4.4.4, Copyright (c) Zend Technologies
    with Zend OPcache v8.4.4, Copyright (c), by Zend Technologies

Event Timeline

dereckson triaged this task as High priority.Thu, Mar 27, 18:33
dereckson created this task.
dereckson lowered the priority of this task from High to Normal.Thu, Mar 27, 19:28
dereckson updated the task description. (Show Details)

Decreased priority as it was on my local laptop, WindRiver is still 8.3.16.

dereckson renamed this task from arcanist doesn't work on PHP 8,4 to arcanist doesn't work on PHP 8.4.Thu, Mar 27, 21:10
dereckson added a subscriber: DorianWinty.