mirror of
https://we.phorge.it/source/arcanist.git
synced 2024-11-29 18:22:41 +01:00
7d05dbec15
Summary: Ref T13098. Depends on D19675. This change is headed to the `untamed-wilds` branch. This change prevents `arc` from running `arc diff`, so I'm copy/pasting it. This change also completely breaks `arc`, but I'm just generally trying to do this rewrite step-by-step so we have at least a bit of context to refer to in the future. The major change here is to turn both `arc` and `phage` into scripts which start an `ArcanistRuntime`. This runtime then decides which workflows (like "diff", "patch", or "remote") are available based on `$argv[0]`. This turns `arc` into more of a CLI tools platform: we can build `phage` on it, third parties can build `my-companion-tool-thing`, etc. But all the different entry points can share a lot of infrastructure like: `help`, `alias`, shell-complete, configuration, Conduit, prompting, `--trace`, extension infrastructure, and so on. `ArcanistRuntime` is roughly a slightly more modern version of `scripts/arcanist.php`. That will be removed eventually, but not everything has ported yet. Test Plan: This code basically doesn't run yet, although the next patch runs at least a little bit. Reviewers: amckinley Reviewed By: amckinley Maniphest Tasks: T13098 Differential Revision: https://secure.phabricator.com/D19677
14 lines
279 B
PHP
Executable file
14 lines
279 B
PHP
Executable file
#!/usr/bin/env php
|
|
<?php
|
|
|
|
if (function_exists('pcntl_async_signals')) {
|
|
pcntl_async_signals(true);
|
|
} else {
|
|
declare(ticks = 1);
|
|
}
|
|
|
|
require_once dirname(dirname(__FILE__)).'/scripts/init/init-arcanist.php';
|
|
|
|
$runtime = new ArcanistRuntime();
|
|
return $runtime->execute($argv);
|
|
|