From d335d0bb0152d55e339f41e3e9146b06b57c8b42 Mon Sep 17 00:00:00 2001 From: inhere Date: Thu, 28 Jan 2021 18:16:58 +0800 Subject: [PATCH] feat: support dynmaic load project info. --- Dockerfile | 5 + README.md | 8 + app/Common/CmdRunner.php | 54 +- app/Common/GitLocal/AbstractGitLocal.php | 160 +- app/Common/GitLocal/GitHub.php | 43 - app/Common/GitLocal/GitLab.php | 44 - app/Common/GitLocal/GitLab/Project.php | 24 + app/Common/GitLocal/GitRepo.php | 85 - app/Console/Controller/FileController.php | 1 + app/Console/Controller/GitFlowController.php | 3 +- app/Console/Controller/GitHubController.php | 38 +- app/Console/Controller/GitLabController.php | 50 +- app/Console/Controller/GitUseController.php | 102 +- app/Console/Controller/PhpController.php | 1 + app/Helper/AppHelper.php | 24 - app/Helper/GitUtil.php | 7 +- composer.json | 90 +- composer.lock | 2436 +++--------------- resource/images/kite-gitlab-help.png | Bin 0 -> 167972 bytes 19 files changed, 700 insertions(+), 2475 deletions(-) create mode 100644 Dockerfile delete mode 100644 app/Common/GitLocal/GitRepo.php create mode 100644 resource/images/kite-gitlab-help.png diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..510a772 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,5 @@ +FROM php:7.4-alpine + +FROM php:7.4-alpine + +COPY --from=0 /home/worker/build ./ diff --git a/README.md b/README.md index 53d32aa..1516793 100644 --- a/README.md +++ b/README.md @@ -62,8 +62,16 @@ kite -h ## git 常用命令 +```bash +kite git {command} [arguments ...] [--options ...] +``` + ## gitlab 常用命令 +```bash +kite gitlab {command} [arguments ...] [--options ...] +``` + ## 其他工具命令 **env** diff --git a/app/Common/CmdRunner.php b/app/Common/CmdRunner.php index cbe4adb..2671e97 100644 --- a/app/Common/CmdRunner.php +++ b/app/Common/CmdRunner.php @@ -6,6 +6,7 @@ use Toolkit\Cli\Color; use Toolkit\Sys\Exec; use function is_array; +use function is_string; use function sprintf; use function trim; @@ -76,12 +77,12 @@ class CmdRunner private $printOutput = false; /** - * @param string $cmd + * @param string|array $cmd * @param string $workDir * * @return static */ - public static function new(string $cmd = '', string $workDir = ''): self + public static function new($cmd = '', string $workDir = ''): self { return new self($cmd, $workDir); } @@ -89,12 +90,17 @@ public static function new(string $cmd = '', string $workDir = ''): self /** * Class constructor. * - * @param string $command + * @param string|array $command One or multi commands * @param string $workDir */ - public function __construct(string $command = '', string $workDir = '') + public function __construct($command = '', string $workDir = '') { - $this->command = $command; + if (is_string($command)) { + $this->command = $command; + } elseif (is_array($command)) { + $this->commands = $command; + } + $this->workDir = $workDir; } @@ -130,7 +136,7 @@ public function changeDir(string $workDir): self */ public function exec(bool $printOutput = false): array { - $this->do($printOutput); + $this->run($printOutput); return $this->getResult(); } @@ -142,10 +148,7 @@ public function exec(bool $printOutput = false): array */ public function do(bool $printOutput = false): self { - $this->printOutput = $printOutput; - $this->execute($this->command, $this->workDir); - - return $this; + return $this->run($printOutput); } /** @@ -190,9 +193,7 @@ public function afterOkDo(string $cmd, string $workDir = null): self $this->workDir = $workDir; } - $this->command = $cmd; - - return $this->do($this->printOutput); + return $this->setCommand($cmd)->do($this->printOutput); } /** @@ -324,9 +325,28 @@ public function run(bool $printOutput = false): self { $this->printOutput = $printOutput; + if ($command = $this->command) { + $this->innerExecute($command, $this->workDir); + + // stop on error + if (0 !== $this->code && false === $this->ignoreError) { + Color::println("\nCommand exit code not equal to 0(code: {$this->code}), stop run.", 'red'); + return $this; + } + } + + if ($commands = $this->commands) { + $this->runCommands($commands); + } + + return $this; + } + + private function runCommands(array $commands): void + { Color::println('Starting Handle', 'suc'); $step = 1; - foreach ($this->commands as $command) { + foreach ($commands as $command) { $workDir = $this->workDir; // see addWhere() @@ -351,7 +371,7 @@ public function run(bool $printOutput = false): self Color::println('- work dir is ' . $workDir, 'italic'); } - $this->execute($command, $workDir); + $this->innerExecute($command, $workDir); $step++; // stop on error @@ -360,8 +380,6 @@ public function run(bool $printOutput = false): self break; } } - - return $this; } /************************************************************************** @@ -372,7 +390,7 @@ public function run(bool $printOutput = false): self * @param string $command * @param string $workDir */ - protected function execute(string $command, string $workDir): void + protected function innerExecute(string $command, string $workDir): void { if (!$command) { throw new RuntimeException('The execute command cannot be empty'); diff --git a/app/Common/GitLocal/AbstractGitLocal.php b/app/Common/GitLocal/AbstractGitLocal.php index a22ac0d..78c1c39 100644 --- a/app/Common/GitLocal/AbstractGitLocal.php +++ b/app/Common/GitLocal/AbstractGitLocal.php @@ -3,8 +3,9 @@ namespace Inhere\Kite\Common\GitLocal; use Inhere\Console\IO\Output; -use Inhere\Kite\Common\CmdRunner; use Inhere\Kite\Helper\GitUtil; +use PhpGit\Info\RemoteInfo; +use PhpGit\Repo; use RuntimeException; use Toolkit\Cli\Color; use Toolkit\Stdlib\Obj; @@ -24,6 +25,11 @@ abstract class AbstractGitLocal { public const GITHUB_HOST = 'https://github.com'; + /** + * @var Repo + */ + protected $repo; + /** * @var string */ @@ -52,6 +58,8 @@ abstract class AbstractGitLocal protected $output; /** + * default remote name + * * @var string */ protected $remote = 'origin'; @@ -134,6 +142,18 @@ public function __construct(Output $output = null, array $config = []) $this->init($config); } + /** + * @return Repo + */ + public function getRepo(): Repo + { + if (!$this->repo) { + $this->repo = Repo::new($this->workDir); + } + + return $this->repo; + } + /** * @param array $config */ @@ -161,6 +181,46 @@ public function clone(): array return []; } + /** + * @return string + */ + public function findProjectName(): string + { + $pjName = ''; + + $info = $this->getRemoteInfo(); + $path = $info->path; + + if ($path) { + // TODO check host is: github OR gitlab. + $pjName = $path; + + // try padding some info + if (isset($this->projects[$path])) { + if (!isset($this->projects[$path]['forkGroup'])) { + $this->projects[$path]['forkGroup'] = $info->group; + } + if (!isset($this->projects[$path]['repo'])) { + $this->projects[$path]['repo'] = $info->repo; + } + } + + $this->output->liteNote('auto parse project info from git remote url'); + } + + if (!$pjName) { + $dirName = $this->getDirName(); + + // try auto parse project name for dirname. + if (isset($this->projects[$dirName])) { + $pjName = $dirName; + $this->output->liteNote('auto parse project name from dirname.'); + } + } + + return $pjName; + } + /** * @return string */ @@ -238,91 +298,18 @@ public function setRemote(string $remote): self return $this; } - /** - * @param string $remote - * - * @return $this - */ - public function parseRemote(string $remote = ''): self - { - if ($remote) { - $this->setRemote($remote); - } - - Color::println('find and parse remote info ...', 'normal'); - $str = 'git remote get-url --push ' . $this->remote; - $run = CmdRunner::new($str, $this->workDir); - $url = $run->do()->getOutput(true); - if ($run->isFail()) { - throw new RuntimeException($run->getError(), 500); - } - - // git@gitlab.my.com:group/some-lib.git - if (strpos($url, 'git@') === 0) { - if (substr($url, -4) === '.git') { - $url = substr($url, 4, -4); - } else { - $url = substr($url, 4); - } - - // $url = gitlab.my.com:group/some-lib - [$host, $path] = explode(':', $url, 2); - [$group, $repo] = explode('/', $path, 2); - - $this->curRepo = $repo; - if ($this->remote === $this->getDefaultGroupName()) { - $this->curMainGroup = ''; - } - - $this->curForkGroup = $group; - $this->remoteInfo = [ - 'host' => $host, - 'path' => $path, - 'url' => $url, - 'group' => $group, - 'repo' => $repo, - ]; - } else { // eg: "https://github.com/ulue/swoft-component.git" - $info = parse_url($url); - // add - $info['url'] = $url; - - $uriPath = $info['path']; - if (substr($uriPath, -4) === '.git') { - $uriPath = substr($uriPath, 0, -4); - } - - $info['path'] = trim($uriPath, '/'); - - [$group, $repo] = explode('/', $info['path'], 2); - $info['group'] = $group; - - // TODO - // $this->curGroup = $group; - $this->curRepo = $repo; - - $this->curForkGroup = $group; - $this->remoteInfo = $info; - } - - return $this; - } - /** * @param string $pjName * * @return $this */ - public function loadCurPjInfo(string $pjName = ''): self + public function loadProjectInfo(string $pjName = ''): self { if ($pjName) { $this->setCurPjName($pjName); } $pjName = $this->curPjName; - if (!isset($this->projects[$pjName])) { - throw new RuntimeException("project '{$pjName}' is not found in the projects"); - } $defaultInfo = [ 'name' => $pjName, @@ -331,6 +318,21 @@ public function loadCurPjInfo(string $pjName = ''): self 'forkGroup' => $this->getValue('defaultForkGroup', ''), ]; + // not exist. dynamic add + if (!isset($this->projects[$pjName])) { + // throw new RuntimeException("project '{$pjName}' is not found in the projects"); + $info = $this->getRemoteInfo(); + if ($info->isInvalid()) { + throw new RuntimeException("dynamic load project '{$pjName}' fail. not found git remote info"); + } + + $this->projects[$pjName] = [ + 'dynamic' => true, + 'forkGroup' => $info->group, + 'repo' => $info->repo, + ]; + } + $this->curPjInfo = array_merge($defaultInfo, $this->projects[$pjName]); // set current repo if (!$this->curRepo) { @@ -475,11 +477,13 @@ public function getDirName(): string } /** - * @return array + * @param string $remote + * + * @return RemoteInfo */ - public function getRemoteInfo(): array + public function getRemoteInfo(string $remote = ''): RemoteInfo { - return $this->remoteInfo; + return $this->getRepo()->getRemoteInfo($remote); } /** diff --git a/app/Common/GitLocal/GitHub.php b/app/Common/GitLocal/GitHub.php index efb666a..5b1b7f3 100644 --- a/app/Common/GitLocal/GitHub.php +++ b/app/Common/GitLocal/GitHub.php @@ -45,49 +45,6 @@ public function setCurrent(string $owner, string $pName): void $this->curPjName = $pName; } - /** - * @return string - */ - public function findPjName(): string - { - $pjName = ''; - $dirName = $this->getDirName(); - $dirPfx = $this->getValue('dirPrefix', ''); - - // try auto parse project name for dirname. - if (isset($this->projects[$dirName])) { - $pjName = $dirName; - $this->output->liteNote('auto parse project name from dirname.'); - } elseif ($dirPfx && strpos($dirName, $dirPfx) === 0) { - $tmpName = substr($dirName, strlen($dirPfx)); - - if (isset($this->projects[$tmpName])) { - $pjName = $tmpName; - $this->output->liteNote('auto parse project name from dirname.'); - } - } else { - $info = $this->parseRemote()->getRemoteInfo(); - $path = $info['path'] ?? ''; - - if ($path && isset($this->projects[$path])) { - $pjName = $path; - - // try padding some info - [$forkGroup, $repo] = explode('/', $path, 2); - if (!isset($this->projects[$path]['forkGroup'])) { - $this->projects[$path]['forkGroup'] = $forkGroup; - } - if (!isset($this->projects[$path]['repo'])) { - $this->projects[$path]['repo'] = $repo; - } - - $this->output->liteNote('auto parse project name from git remote url'); - } - } - - return $pjName; - } - /** * @param string $host */ diff --git a/app/Common/GitLocal/GitLab.php b/app/Common/GitLocal/GitLab.php index f01ed9c..e3883b5 100644 --- a/app/Common/GitLocal/GitLab.php +++ b/app/Common/GitLocal/GitLab.php @@ -21,50 +21,6 @@ class GitLab extends AbstractGitLocal */ private $dstBranch = ''; - /** - * @return string - */ - public function findPjName(): string - { - $pjName = ''; - $dirName = $this->getDirName(); - $dirPfx = $this->getValue('dirPrefix', ''); - - // try auto parse project name for dirname. - if (isset($this->projects[$dirName])) { - $pjName = $dirName; - $this->output->liteNote('auto parse project name from dirname.'); - } elseif ($dirPfx && strpos($dirName, $dirPfx) === 0) { - $tmpName = substr($dirName, strlen($dirPfx)); - - if (isset($this->projects[$tmpName])) { - $pjName = $tmpName; - $this->output->liteNote('auto parse project name from dirname.'); - } - } - - if (!$pjName) { - $info = $this->parseRemote()->getRemoteInfo(); - $path = $info['path'] ?? ''; -// \vdump($info); - if ($path && isset($this->projects[$path])) { - $pjName = $path; - - // try padding some info - [$forkGroup, $repo] = explode('/', $path, 2); - if (!isset($this->projects[$path]['forkGroup'])) { - $this->projects[$path]['forkGroup'] = $forkGroup; - } - if (!isset($this->projects[$path]['repo'])) { - $this->projects[$path]['repo'] = $repo; - } - - $this->output->liteNote('auto parse project name from git remote url'); - } - } - - return $pjName; - } public function createPRLink(string $srcBranch, string $dstBranch, bool $direct = false): string { diff --git a/app/Common/GitLocal/GitLab/Project.php b/app/Common/GitLocal/GitLab/Project.php index b549141..c0ac499 100644 --- a/app/Common/GitLocal/GitLab/Project.php +++ b/app/Common/GitLocal/GitLab/Project.php @@ -56,6 +56,13 @@ class Project */ private $forkPid; + /** + * 是否是根据当前工作目录信息自动加载的信息 + * + * @var bool + */ + private $dynamic = false; + /** * @param array $data * @@ -78,6 +85,7 @@ public function toArray(): array 'mainPid' => $this->mainPid, 'forkGroup' => $this->forkGroup, 'forkPid' => $this->forkPid, + 'dynamic' => $this->dynamic, ]; } @@ -214,4 +222,20 @@ public function setForkPid($forkPid): Project $this->forkPid = (string)$forkPid; return $this; } + + /** + * @return bool + */ + public function isDynamic(): bool + { + return $this->dynamic; + } + + /** + * @param bool $dynamic + */ + public function setDynamic(bool $dynamic): void + { + $this->dynamic = $dynamic; + } } diff --git a/app/Common/GitLocal/GitRepo.php b/app/Common/GitLocal/GitRepo.php deleted file mode 100644 index bf0e037..0000000 --- a/app/Common/GitLocal/GitRepo.php +++ /dev/null @@ -1,85 +0,0 @@ -workDir); - - // 'D some.file' deleted - // ' M some.file' modified - // '?? some.file' new file - foreach (explode("\n", trim($output)) as $file) { - $file = trim($file); - - // only php file. - if (!strpos($file, '.php')) { - continue; - } - - // modified files - if (strpos($file, 'M ') === 0) { - yield substr($file, 2); - - // new files - } elseif (strpos($file, '?? ') === 0) { - yield substr($file, 3); - } - } - } - - /** - * Get the value of errCode - * - * @return int - */ - public function getErrCode(): int - { - return $this->errCode; - } - - /** - * Get error message - * - * @return string - */ - public function getErrMsg(): string - { - return $this->errMsg; - } -} diff --git a/app/Console/Controller/FileController.php b/app/Console/Controller/FileController.php index dec3dfd..4af86a2 100644 --- a/app/Console/Controller/FileController.php +++ b/app/Console/Controller/FileController.php @@ -129,6 +129,7 @@ public function vimCommand(Input $input, Output $output): void // \var_dump(proc_get_status($process)); \proc_close($process); + $output->success('Complete'); } /** diff --git a/app/Console/Controller/GitFlowController.php b/app/Console/Controller/GitFlowController.php index c0b0476..916cb7f 100644 --- a/app/Console/Controller/GitFlowController.php +++ b/app/Console/Controller/GitFlowController.php @@ -183,8 +183,7 @@ protected function syncConfigure(): void public function syncCommand(Input $input, Output $output): void { $forkRemote = $this->forkRemote; - - if (!$mainRemote = $input->getSameStringOpt(['r', 'remote'], '')) { + if (!$mainRemote = $input->getSameStringOpt(['r', 'remote'])) { $mainRemote = $this->mainRemote; } diff --git a/app/Console/Controller/GitHubController.php b/app/Console/Controller/GitHubController.php index 54e824c..6835392 100644 --- a/app/Console/Controller/GitHubController.php +++ b/app/Console/Controller/GitHubController.php @@ -48,11 +48,12 @@ protected static function commandAliases(): array /** * @return GitHub */ - private function newGithub(): GitHub + private function getGithub(): GitHub { $config = $this->app->getParam('github', []); + // $github->setWorkDir($this->input->getWorkDir()); - return GitHub::new($this->output, $config)->setWorkDir($this->input->getWorkDir()); + return GitHub::new($this->output, $config); } protected function configure(): void @@ -143,8 +144,8 @@ protected function openConfigure(Input $input): void * Open an github repository by browser * * @options - * -r, --remote The git remote name. default is 'origin' - * --main Use the `mainRemote` name + * -r, --remote The git remote name. default is `origin` + * --main Use the config `mainRemote` name * * @arguments * repoPath The remote git repo URL or repository group/name. @@ -159,10 +160,10 @@ protected function openConfigure(Input $input): void */ public function openCommand(Input $input, Output $output): void { - $gh = $this->newGithub(); + $gh = $this->getGithub(); // - input repoPath - $repoPath = $input->getStringArg('repoPath'); + $repoPath = $input->getStringArg('repoPath'); if ($repoPath) { $repoUrl = $gh->parseRepoUrl($repoPath); if (!$repoUrl) { @@ -181,15 +182,10 @@ public function openCommand(Input $input, Output $output): void $remote = $gh->getMainRemote(); } - $info = $gh->parseRemote($remote)->getRemoteInfo(); - if (!empty($info['url'])) { - AppHelper::openBrowser($info['url']); + $info = $gh->getRemoteInfo($remote); + AppHelper::openBrowser($info->getHttpUrl()); - $output->success('Complete'); - return; - } - - $output->error('please input an repoPath or go into an git workDir'); + $output->success('Complete'); } /** @@ -223,7 +219,7 @@ public function cloneCommand(Input $input, Output $output): void $repo = $input->getRequiredArg('repo'); $name = $input->getStringArg('name'); - $gh = $this->newGithub(); + $gh = $this->getGithub(); $repoUrl = $gh->parseRepoUrl($repo); if (!$repoUrl) { @@ -249,16 +245,16 @@ public function cloneCommand(Input $input, Output $output): void */ public function pullRequestCommand(Input $input, Output $output): void { - $gh = $this->newGithub(); - if (!$pjName = $gh->findPjName()) { + $gh = $this->getGithub(); + if (!$pjName = $gh->findProjectName()) { $pjName = $input->getRequiredArg('project'); } - if (!$gh->hasProject($pjName)) { - throw new PromptException("project '{$pjName}' is not found in the config"); - } + // if (!$gh->hasProject($pjName)) { + // throw new PromptException("project '{$pjName}' is not found in the config"); + // } - $gh->loadCurPjInfo($pjName); + $gh->loadProjectInfo($pjName); $pjInfo = $gh->getCurPjInfo(); diff --git a/app/Console/Controller/GitLabController.php b/app/Console/Controller/GitLabController.php index 9dac5ec..1c118e8 100644 --- a/app/Console/Controller/GitLabController.php +++ b/app/Console/Controller/GitLabController.php @@ -62,17 +62,17 @@ protected function groupOptions(): array protected static function commandAliases(): array { return [ - 'pr' => 'pullRequest', - 'li' => 'linkInfo', - 'cf' => 'config', - 'conf' => 'config', - 'pj' => 'project', - 'nb' => 'newBranch', - 'db' => 'deleteBranch', - 'rc' => 'resolve', - 'up' => 'update', - 'upp' => 'updatePush', - 'new' => 'create', + 'pr' => 'pullRequest', + 'li' => 'linkInfo', + 'cf' => 'config', + 'conf' => 'config', + 'nb' => 'newBranch', + 'db' => 'deleteBranch', + 'rc' => 'resolve', + 'up' => 'update', + 'upp' => 'updatePush', + 'new' => 'create', + 'project' => ['pj', 'info'], ]; } @@ -94,10 +94,9 @@ protected function configure(): void private function gitlab(): GitLab { $config = $this->app->getParam('gitlab', []); - $gitlab = GitLab::new($this->output, $config); - $gitlab->setWorkDir($this->input->getWorkDir()); + // $gitlab->setWorkDir($this->input->getWorkDir()); - return $gitlab; + return GitLab::new($this->output, $config); } /** @@ -300,18 +299,17 @@ public function projectCommand(Input $input, Output $output): void return; } - if (!$pjName = $gitlab->findPjName()) { + if (!$pjName = $gitlab->findProjectName()) { $pjName = $input->getArg('name'); } - $gitlab->loadCurPjInfo($pjName); + $gitlab->loadProjectInfo($pjName); $project = $gitlab->getCurProject(); $output->json($project->toArray()); $output->success('Complete'); } - /** * open gitlab project page on browser * @@ -327,19 +325,17 @@ public function projectCommand(Input $input, Output $output): void public function openCommand(Input $input, Output $output): void { $gitlab = $this->gitlab(); - $toMain = $input->getSameBoolOpt(['m', 'main']); $defRemote = $gitlab->getForkRemote(); - if ($toMain) { + if ($input->getSameBoolOpt(['m', 'main'])) { $defRemote = $gitlab->getMainRemote(); } - // \vdump($defRemote);die; $remote = $input->getArg('remote', $defRemote); - $rInfo = $gitlab->parseRemote($remote)->getRemoteInfo(); - // \var_dump($defRemote, $gitlab);die; - $link = $gitlab->getHost() . '/' . $rInfo['path']; + $info = $gitlab->getRemoteInfo($remote); + $link = $info->getHttpUrl(); + AppHelper::openBrowser($link); $output->success('Complete'); @@ -437,15 +433,11 @@ public function pullRequestCommand(Input $input, Output $output): void { // http://gitlab.my.com/group/repo/merge_requests/new?utf8=%E2%9C%93&merge_request%5Bsource_project_id%5D=319&merge_request%5Bsource_branch%5D=fea_4_16&merge_request%5Btarget_project_id%5D=319&merge_request%5Btarget_branch%5D=qa $gitlab = $this->gitlab(); - if (!$pjName = $gitlab->findPjName()) { + if (!$pjName = $gitlab->findProjectName()) { $pjName = $input->getRequiredArg('project'); } - if (!$gitlab->hasProject($pjName)) { - throw new PromptException("project '{$pjName}' is not found in the config"); - } - - $gitlab->loadCurPjInfo($pjName); + $gitlab->loadProjectInfo($pjName); $project = $gitlab->getCurProject(); diff --git a/app/Console/Controller/GitUseController.php b/app/Console/Controller/GitUseController.php index 486d754..b9322a6 100644 --- a/app/Console/Controller/GitUseController.php +++ b/app/Console/Controller/GitUseController.php @@ -16,7 +16,9 @@ use Inhere\Kite\Common\CmdRunner; use Inhere\Kite\Helper\AppHelper; use Inhere\Kite\Helper\GitUtil; +use PhpGit\Repo; use function sprintf; +use function strtolower; use function trim; /** @@ -75,14 +77,14 @@ protected function onNotFound(string $action): bool { $this->output->info("input sub-command is '$action', will try exec system command `git $action`"); - $run = CmdRunner::new("git $action"); + $run = CmdRunner::new($this->input->getFullScript()); $run->do(true); // return $run->isSuccess(); return true; } - public function statusCommand(): void + public function statusCommand(Input $input, Output $output): void { $commands = [ 'echo hi', @@ -94,8 +96,23 @@ public function statusCommand(): void /** * display git information for the project + * + * @param Input $input + * @param Output $output + */ + public function infoCommand(Input $input, Output $output): void + { + $repo = Repo::new(); + + $output->aList($repo->getInfo(), 'Project Info', [ + 'ucFirst' => false, + ]); + } + + /** + * batch update multi dir by git pull */ - public function infoCommand(): void + public function batchPullCommand(): void { $commands = [ 'git status', @@ -105,6 +122,33 @@ public function infoCommand(): void CmdRunner::new()->batch($commands)->run(true); } + /** + * Open the git repository URL by browser + * + * @arguments + * remote The remote name for open. If not input, will use `origin` + * + * @param Input $input + * @param Output $output + * + * @example + * {binWithCmd} + * {binWithCmd} other-remote + */ + public function openCommand(Input $input, Output $output): void + { + $input->bindArgument('remote', 0); + + $remote = $input->getStringArg('remote', 'origin'); + + $repo = Repo::new(); + $info = $repo->getRemoteInfo($remote); + + AppHelper::openBrowser($info->getHttpUrl()); + + $output->success('Complete'); + } + /** * Clone an remote git repository to local * @@ -119,9 +163,9 @@ public function infoCommand(): void * @param Output $output * * @example - * {fullCmd} php-toolkit/cli-utils --gh - * {fullCmd} php-toolkit/cli-utils my-repo --gh - * {fullCmd} https://github.com/php-toolkit/cli-utils + * {binWithCmd} php-toolkit/cli-utils --gh + * {binWithCmd} php-toolkit/cli-utils my-repo --gh + * {binWithCmd} https://github.com/php-toolkit/cli-utils */ public function cloneCommand(Input $input, Output $output): void { @@ -377,7 +421,7 @@ public function acpCommand(Input $input, Output $output): void $dryRun = $input->getBoolOpt('dry-run'); - $run = CmdRunner::new("git status"); + $run = CmdRunner::new("git status $added"); $run->setDryRun($dryRun); $run->do(true); @@ -401,27 +445,63 @@ protected function changelogConfigure(Input $input): void } /** - * collect git change log list + * collect git change log information by `git log` * * @arguments * oldVersion The old version. eg: v1.0.2 + * - keywords `latest` will auto use latest tag. * newVersion The new version. eg: v1.2.3 + * - keywords `head` will use `Head` commit. * * @options * --file Export changelog message to file * --max-commit Max parse how many commits + * --format The git log option `--pretty` value. + * can be one of oneline, short, medium, full, fuller, reference, email, raw, format: and tformat:. * * @param Input $input * @param Output $output */ public function changelogCommand(Input $input, Output $output): void { - // git log v1.0.7...v1.0.7 --pretty=format:'
  • view commit • %s
  • ' --reverse - // git log v1.0.7...HEAD --pretty=format:'
  • view commit • %s
  • ' --reverse + // useful options: + // --no-merges + // --glob= + // --exclude= + // --pretty[=] can be one of oneline, short, medium, full, fuller, reference, email, raw, format: and tformat:. + + // git log v1.0.7...v1.0.8 --pretty=format:'/commit/%H %s' --reverse + + // git log v1.0.7...v1.0.7 --pretty=format:'
  • view commit • %s
  • ' --reverse + // git log v1.0.7...HEAD --pretty=format:'
  • view commit • %s
  • ' --reverse + $oldVersion = $input->getStringArg('oldVersion'); + if ($oldVersion) { + if ($oldVersion === 'latest') { + $oldVersion = GitUtil::findTag(); + $output->info('auto find latest tag ' . $oldVersion); + } + + $newVersion = $input->getRequiredArg('newVersion'); + if (strtolower($newVersion) === 'head') { + $newVersion = 'HEAD'; + } + + $logCmd = <</commit/%H %s' --reverse +CMD; + + $runner = CmdRunner::new(trim($logCmd)); + $runner->do(true); + + $output->success('Complete'); + return; + } + + $maxCommit = $input->getIntOpt('max-commit', 15); // git log --color --graph --pretty=format:'%Cred%h%Creset:%C(ul yellow)%d%Creset %s (%Cgreen%cr%Creset, %C(bold blue)%an%Creset)' --abbrev-commit -10 $logCmd = << $cmd"); Sys::execute($cmd); } - - /** - * @param array $userConfig - * @param array $config - * - * @return array - */ - public static function mergeConfig(array $userConfig, array $config): array - { - foreach ($userConfig as $key => $item) { - if (isset($config[$key]) && is_array($config[$key])) { - if (is_array($item)) { - $config[$key] = array_merge($config[$key], $item); - } else { - throw new \RuntimeException("Array config error! the '{$key}' must be an array"); - } - } else { - // custom add/set config - $config[$key] = $item; - } - } - - return $config; - } } diff --git a/app/Helper/GitUtil.php b/app/Helper/GitUtil.php index 42c8145..e50ffc6 100644 --- a/app/Helper/GitUtil.php +++ b/app/Helper/GitUtil.php @@ -58,10 +58,9 @@ public static function isFullUrl(string $str): bool */ public static function getCurrentBranchName(string $workDir = ''): string { - // git symbolic-ref --short -q HEAD - // - // git rev-parse --abbrev-ref HEA - // $str = 'git branch --show-current'; + // 1. git symbolic-ref --short -q HEAD + // 2. git rev-parse --abbrev-ref HEA + // 3. git branch --show-current // 老版本不支持 $str = 'git symbolic-ref --short -q HEAD'; $cmd = CmdRunner::new($str, $workDir); diff --git a/composer.json b/composer.json index 0e23be7..aadf23b 100644 --- a/composer.json +++ b/composer.json @@ -1,47 +1,53 @@ { - "name": "inhere/kite", - "description": "person tool by php", - "type": "project", - "license": "MIT", - "homepage": "https://github/inhere/kite.git", - "authors": [ - { - "name": "inhere", - "email": "in.798@qq.com" - } - ], - "require": { - "php": ">7.3.0", - "ext-json": "*", - "ext-mbstring": "*", - "inhere/console": "dev-master", - "inhere/sroute": "dev-master", - "cebe/markdown": "^1.2", - "php-comp/http-client": "dev-master", - "php-comp/http-message": "^1.4" - }, - "require-dev": { - "phpunit/phpunit": ">8.0" - }, - "autoload": { - "psr-4": { - "Inhere\\Kite\\": "app/" - }, - "files": [ - "app/func.php" - ] + "name": "inhere/kite", + "description": "person tool by php", + "type": "project", + "license": "MIT", + "homepage": "https://github/inhere/kite.git", + "authors": [ + { + "name": "inhere", + "email": "in.798@qq.com" + } + ], + "require": { + "php": ">7.2.0", + "ext-json": "*", + "ext-mbstring": "*", + "inhere/console": "dev-master", + "inhere/sroute": "dev-master", + "cebe/markdown": "^1.2", + "psr/log": "^1.1", + "php-comp/http-client": "dev-master", + "php-comp/http-message": "^1.4", + "gitonomy/gitlib": "^1.2", + "ulue/phpgit": "dev-master" + }, + "require-dev": { + }, + "autoload": { + "psr-4": { + "Inhere\\Kite\\": "app/" }, - "bin": [ - "bin/kite", - "bin/htu" - ], - "repositories": { - "packagist": { - "type": "composer", - "url": "https://mirrors.aliyun.com/composer/" - } + "files": [ + "app/func.php" + ] + }, + "bin": [ + "bin/kite", + "bin/htu" + ], + "repositories": { + "packagist": { + "type": "composer", + "url": "https://mirrors.aliyun.com/composer/" }, - "scripts": { - "test": "php vender/bin/phpunit" + "phpgit": { + "type": "git", + "url": "https://github.com/ulue/phpgit.git" } + }, + "scripts": { + "test": "php vender/bin/phpunit" + } } diff --git a/composer.lock b/composer.lock index c8ab05b..eea565c 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "de52dc44b0305e68b46cde86353a0718", + "content-hash": "15136a83334d8724bacfecb3fa2809e1", "packages": [ { "name": "cebe/markdown", @@ -70,20 +70,100 @@ "markdown", "markdown-extra" ], + "support": { + "issues": "https://github.com/cebe/markdown/issues", + "source": "https://github.com/cebe/markdown" + }, "time": "2018-03-26T11:24:36+00:00" }, + { + "name": "gitonomy/gitlib", + "version": "v1.2.3", + "source": { + "type": "git", + "url": "https://github.com/gitonomy/gitlib.git", + "reference": "d22f212b97fdb631ac73dfae65c194dc4cb0d227" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/gitonomy/gitlib/zipball/d22f212b97fdb631ac73dfae65c194dc4cb0d227", + "reference": "d22f212b97fdb631ac73dfae65c194dc4cb0d227", + "shasum": "", + "mirrors": [ + { + "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", + "preferred": true + } + ] + }, + "require": { + "ext-pcre": "*", + "php": "^5.6 || ^7.0 || ^8.0", + "symfony/polyfill-mbstring": "^1.7", + "symfony/process": "^3.4 || ^4.0 || ^5.0" + }, + "require-dev": { + "ext-fileinfo": "*", + "phpunit/phpunit": "^5.7 || ^6.5 || ^7.0 || ^8.0 || ^9.0", + "psr/log": "^1.0" + }, + "suggest": { + "ext-fileinfo": "Required to determine the mimetype of a blob", + "psr/log": "Required to use loggers for reporting of execution" + }, + "type": "library", + "autoload": { + "psr-4": { + "Gitonomy\\Git\\": "src/Gitonomy/Git/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Graham Campbell", + "email": "graham@alt-three.com" + }, + { + "name": "Julien Didier", + "email": "genzo.wm@gmail.com" + }, + { + "name": "Grégoire Pineau", + "email": "lyrixx@lyrixx.info" + }, + { + "name": "Alexandre Salomé", + "email": "alexandre.salome@gmail.com" + } + ], + "description": "Library for accessing git", + "support": { + "issues": "https://github.com/gitonomy/gitlib/issues", + "source": "https://github.com/gitonomy/gitlib/tree/v1.2.3" + }, + "funding": [ + { + "url": "https://tidelift.com/funding/github/packagist/gitonomy/gitlib", + "type": "tidelift" + } + ], + "time": "2020-12-29T16:48:45+00:00" + }, { "name": "inhere/console", "version": "dev-master", "source": { "type": "git", "url": "https://github.com/inhere/php-console.git", - "reference": "2de1962cc2bd302d9f4cfa9cd557ec3e825edf38" + "reference": "bd4f38a17d9f086af6135c24c8bb6d7eb035b343" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/inhere/php-console/zipball/2de1962cc2bd302d9f4cfa9cd557ec3e825edf38", - "reference": "2de1962cc2bd302d9f4cfa9cd557ec3e825edf38", + "url": "https://api.github.com/repos/inhere/php-console/zipball/bd4f38a17d9f086af6135c24c8bb6d7eb035b343", + "reference": "bd4f38a17d9f086af6135c24c8bb6d7eb035b343", "shasum": "", "mirrors": [ { @@ -106,6 +186,7 @@ "symfony/process": "php process operation", "text/template": "Single-Class string template engine for PHP5/7 supporting if/loops/filters" }, + "default-branch": true, "type": "library", "autoload": { "psr-4": { @@ -135,7 +216,11 @@ "console-color", "phar" ], - "time": "2021-01-24T07:11:51+00:00" + "support": { + "issues": "https://github.com/inhere/php-console/issues", + "source": "https://github.com/inhere/php-console/tree/master" + }, + "time": "2021-01-25T09:32:09+00:00" }, { "name": "inhere/sroute", @@ -166,6 +251,7 @@ "suggest": { "inhere/simple-print-tool": "Very lightweight data printing tools" }, + "default-branch": true, "type": "library", "autoload": { "psr-4": { @@ -194,6 +280,10 @@ "route", "router" ], + "support": { + "issues": "https://github.com/inhere/php-srouter/issues", + "source": "https://github.com/inhere/php-srouter/tree/v3.0.6" + }, "time": "2020-10-21T03:26:56+00:00" }, { @@ -223,6 +313,7 @@ "suggest": { "php-comp/http-message": "Very lightweight PSR-7 implements http message component" }, + "default-branch": true, "type": "library", "autoload": { "psr-4": { @@ -248,6 +339,10 @@ "library", "tool" ], + "support": { + "issues": "https://github.com/php-comp/http-client/issues", + "source": "https://github.com/php-comp/http-client/tree/v2.0.0" + }, "time": "2020-06-10T13:03:55+00:00" }, { @@ -303,6 +398,10 @@ "psr7", "tool" ], + "support": { + "issues": "https://github.com/php-comp/http-message/issues", + "source": "https://github.com/php-comp/http-message/tree/master" + }, "time": "2019-02-04T08:21:11+00:00" }, { @@ -358,6 +457,9 @@ "psr", "psr-18" ], + "support": { + "source": "https://github.com/php-fig/http-client/tree/master" + }, "time": "2020-06-29T06:28:15+00:00" }, { @@ -414,20 +516,23 @@ "request", "response" ], + "support": { + "source": "https://github.com/php-fig/http-message/tree/master" + }, "time": "2016-08-06T14:39:51+00:00" }, { - "name": "toolkit/cli-utils", - "version": "v1.2.2", + "name": "psr/log", + "version": "1.1.3", "source": { "type": "git", - "url": "https://github.com/php-toolkit/cli-utils.git", - "reference": "5e438e4d999f8d1c21a3da92d787857f91a407b9" + "url": "https://github.com/php-fig/log.git", + "reference": "0f73288fd15629204f9d42b7055f72dacbe811fc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-toolkit/cli-utils/zipball/5e438e4d999f8d1c21a3da92d787857f91a407b9", - "reference": "5e438e4d999f8d1c21a3da92d787857f91a407b9", + "url": "https://api.github.com/repos/php-fig/log/zipball/0f73288fd15629204f9d42b7055f72dacbe811fc", + "reference": "0f73288fd15629204f9d42b7055f72dacbe811fc", "shasum": "", "mirrors": [ { @@ -437,18 +542,17 @@ ] }, "require": { - "php": ">7.1.0" - }, - "require-dev": { - "phpunit/phpunit": "^7.5" - }, - "suggest": { - "inhere/console": "a lightweight php console application library." + "php": ">=5.3.0" }, "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.1.x-dev" + } + }, "autoload": { "psr-4": { - "Toolkit\\Cli\\": "src/" + "Psr\\Log\\": "Psr/Log/" } }, "notification-url": "https://packagist.org/downloads/", @@ -457,32 +561,34 @@ ], "authors": [ { - "name": "inhere", - "email": "in.798@qq.com", - "homepage": "http://www.yzone.net/" + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" } ], - "description": "some cli tool library of the php", - "homepage": "https://github.com/php-toolkit/cli-utils", + "description": "Common interface for logging libraries", + "homepage": "https://github.com/php-fig/log", "keywords": [ - "library", - "php", - "tool" + "log", + "psr", + "psr-3" ], - "time": "2021-01-23T17:44:39+00:00" + "support": { + "source": "https://github.com/php-fig/log/tree/1.1.3" + }, + "time": "2020-03-23T09:12:05+00:00" }, { - "name": "toolkit/stdlib", - "version": "v1.0.8", + "name": "symfony/options-resolver", + "version": "v4.4.18", "source": { "type": "git", - "url": "https://github.com/php-toolkit/stdlib.git", - "reference": "90c52028128049c9bced4dabbf72a105bd84bedb" + "url": "https://github.com/symfony/options-resolver.git", + "reference": "157a252222251310fe50c71012b4e72f01325850" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-toolkit/stdlib/zipball/90c52028128049c9bced4dabbf72a105bd84bedb", - "reference": "90c52028128049c9bced4dabbf72a105bd84bedb", + "url": "https://api.github.com/repos/symfony/options-resolver/zipball/157a252222251310fe50c71012b4e72f01325850", + "reference": "157a252222251310fe50c71012b4e72f01325850", "shasum": "", "mirrors": [ { @@ -492,19 +598,15 @@ ] }, "require": { - "ext-mbstring": "*", - "php": ">7.1.0" - }, - "suggest": { - "inhere/php-validate": "Very lightweight data validate tool" + "php": ">=7.1.3" }, "type": "library", "autoload": { "psr-4": { - "Toolkit\\Stdlib\\": "src/" + "Symfony\\Component\\OptionsResolver\\": "" }, - "files": [ - "src/func.php" + "exclude-from-classmap": [ + "/Tests/" ] }, "notification-url": "https://packagist.org/downloads/", @@ -513,35 +615,52 @@ ], "authors": [ { - "name": "inhere", - "email": "in.798@qq.com", - "homepage": "http://www.yzone.net/" + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" } ], - "description": "some stdlib tool library of the php", - "homepage": "https://github.com/php-toolkit/stdlib", + "description": "Symfony OptionsResolver Component", + "homepage": "https://symfony.com", "keywords": [ - "array", - "library", - "object", - "php", - "string", - "tool" + "config", + "configuration", + "options" ], - "time": "2021-01-23T07:17:46+00:00" + "support": { + "source": "https://github.com/symfony/options-resolver/tree/v4.4.18" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-10-24T11:50:19+00:00" }, { - "name": "toolkit/sys-utils", - "version": "v1.2.3", + "name": "symfony/polyfill-mbstring", + "version": "v1.22.0", "source": { "type": "git", - "url": "https://github.com/php-toolkit/sys-utils.git", - "reference": "2fddcefb43383e80a749e38f75ff8f6fbe05301d" + "url": "https://github.com/symfony/polyfill-mbstring.git", + "reference": "f377a3dd1fde44d37b9831d68dc8dea3ffd28e13" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-toolkit/sys-utils/zipball/2fddcefb43383e80a749e38f75ff8f6fbe05301d", - "reference": "2fddcefb43383e80a749e38f75ff8f6fbe05301d", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/f377a3dd1fde44d37b9831d68dc8dea3ffd28e13", + "reference": "f377a3dd1fde44d37b9831d68dc8dea3ffd28e13", "shasum": "", "mirrors": [ { @@ -551,18 +670,28 @@ ] }, "require": { - "php": ">7.1.0", - "toolkit/stdlib": "~1.0" + "php": ">=7.1" }, "suggest": { - "inhere/console": "a lightweight php console application library.", - "inhere/php-validate": "Very lightweight data validate tool" + "ext-mbstring": "For best performance" }, "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.22-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, "autoload": { "psr-4": { - "Toolkit\\Sys\\": "src/" - } + "Symfony\\Polyfill\\Mbstring\\": "" + }, + "files": [ + "bootstrap.php" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -570,34 +699,54 @@ ], "authors": [ { - "name": "inhere", - "email": "in.798@qq.com", - "homepage": "http://www.yzone.net/" + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" } ], - "description": "some system tool library of the php", - "homepage": "https://github.com/php-toolkit/sys-utils", + "description": "Symfony polyfill for the Mbstring extension", + "homepage": "https://symfony.com", "keywords": [ - "library", - "php", - "tool" + "compatibility", + "mbstring", + "polyfill", + "portable", + "shim" ], - "time": "2021-01-23T16:11:58+00:00" - } - ], - "packages-dev": [ + "support": { + "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.22.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2021-01-07T16:49:33+00:00" + }, { - "name": "doctrine/instantiator", - "version": "1.4.0", + "name": "symfony/process", + "version": "v4.4.18", "source": { "type": "git", - "url": "https://github.com/doctrine/instantiator.git", - "reference": "d56bf6102915de5702778fe20f2de3b2fe570b5b" + "url": "https://github.com/symfony/process.git", + "reference": "075316ff72233ce3d04a9743414292e834f2cb4a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/instantiator/zipball/d56bf6102915de5702778fe20f2de3b2fe570b5b", - "reference": "d56bf6102915de5702778fe20f2de3b2fe570b5b", + "url": "https://api.github.com/repos/symfony/process/zipball/075316ff72233ce3d04a9743414292e834f2cb4a", + "reference": "075316ff72233ce3d04a9743414292e834f2cb4a", "shasum": "", "mirrors": [ { @@ -607,22 +756,16 @@ ] }, "require": { - "php": "^7.1 || ^8.0" - }, - "require-dev": { - "doctrine/coding-standard": "^8.0", - "ext-pdo": "*", - "ext-phar": "*", - "phpbench/phpbench": "^0.13 || 1.0.0-alpha2", - "phpstan/phpstan": "^0.12", - "phpstan/phpstan-phpunit": "^0.12", - "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0" + "php": ">=7.1.3" }, "type": "library", "autoload": { "psr-4": { - "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/" - } + "Symfony\\Component\\Process\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -630,45 +773,47 @@ ], "authors": [ { - "name": "Marco Pivetta", - "email": "ocramius@gmail.com", - "homepage": "https://ocramius.github.io/" + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" } ], - "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors", - "homepage": "https://www.doctrine-project.org/projects/instantiator.html", - "keywords": [ - "constructor", - "instantiate" - ], + "description": "Symfony Process Component", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/process/tree/v4.4.18" + }, "funding": [ { - "url": "https://www.doctrine-project.org/sponsorship.html", + "url": "https://symfony.com/sponsor", "type": "custom" }, { - "url": "https://www.patreon.com/phpdoctrine", - "type": "patreon" + "url": "https://github.com/fabpot", + "type": "github" }, { - "url": "https://tidelift.com/funding/github/packagist/doctrine%2Finstantiator", + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", "type": "tidelift" } ], - "time": "2020-11-10T18:47:58+00:00" + "time": "2020-12-08T16:59:59+00:00" }, { - "name": "myclabs/deep-copy", - "version": "1.10.2", + "name": "toolkit/cli-utils", + "version": "v1.2.2", "source": { "type": "git", - "url": "https://github.com/myclabs/DeepCopy.git", - "reference": "776f831124e9c62e1a2c601ecc52e776d8bb7220" + "url": "https://github.com/php-toolkit/cli-utils.git", + "reference": "5e438e4d999f8d1c21a3da92d787857f91a407b9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/776f831124e9c62e1a2c601ecc52e776d8bb7220", - "reference": "776f831124e9c62e1a2c601ecc52e776d8bb7220", + "url": "https://api.github.com/repos/php-toolkit/cli-utils/zipball/5e438e4d999f8d1c21a3da92d787857f91a407b9", + "reference": "5e438e4d999f8d1c21a3da92d787857f91a407b9", "shasum": "", "mirrors": [ { @@ -678,57 +823,56 @@ ] }, "require": { - "php": "^7.1 || ^8.0" - }, - "replace": { - "myclabs/deep-copy": "self.version" + "php": ">7.1.0" }, "require-dev": { - "doctrine/collections": "^1.0", - "doctrine/common": "^2.6", - "phpunit/phpunit": "^7.1" + "phpunit/phpunit": "^7.5" + }, + "suggest": { + "inhere/console": "a lightweight php console application library." }, "type": "library", "autoload": { "psr-4": { - "DeepCopy\\": "src/DeepCopy/" - }, - "files": [ - "src/DeepCopy/deep_copy.php" - ] + "Toolkit\\Cli\\": "src/" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], - "description": "Create deep copies (clones) of your objects", - "keywords": [ - "clone", - "copy", - "duplicate", - "object", - "object graph" - ], - "funding": [ + "authors": [ { - "url": "https://tidelift.com/funding/github/packagist/myclabs/deep-copy", - "type": "tidelift" + "name": "inhere", + "email": "in.798@qq.com", + "homepage": "http://www.yzone.net/" } ], - "time": "2020-11-13T09:40:50+00:00" + "description": "some cli tool library of the php", + "homepage": "https://github.com/php-toolkit/cli-utils", + "keywords": [ + "library", + "php", + "tool" + ], + "support": { + "issues": "https://github.com/php-toolkit/cli-utils/issues", + "source": "https://github.com/php-toolkit/cli-utils/tree/v1.2.2" + }, + "time": "2021-01-23T17:44:39+00:00" }, { - "name": "nikic/php-parser", - "version": "v4.10.4", + "name": "toolkit/stdlib", + "version": "v1.0.8", "source": { "type": "git", - "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "c6d052fc58cb876152f89f532b95a8d7907e7f0e" + "url": "https://github.com/php-toolkit/stdlib.git", + "reference": "90c52028128049c9bced4dabbf72a105bd84bedb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/c6d052fc58cb876152f89f532b95a8d7907e7f0e", - "reference": "c6d052fc58cb876152f89f532b95a8d7907e7f0e", + "url": "https://api.github.com/repos/php-toolkit/stdlib/zipball/90c52028128049c9bced4dabbf72a105bd84bedb", + "reference": "90c52028128049c9bced4dabbf72a105bd84bedb", "shasum": "", "mirrors": [ { @@ -738,283 +882,60 @@ ] }, "require": { - "ext-tokenizer": "*", - "php": ">=7.0" - }, - "require-dev": { - "ircmaxell/php-yacc": "^0.0.7", - "phpunit/phpunit": "^6.5 || ^7.0 || ^8.0 || ^9.0" + "ext-mbstring": "*", + "php": ">7.1.0" }, - "bin": [ - "bin/php-parse" - ], - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.9-dev" - } - }, - "autoload": { - "psr-4": { - "PhpParser\\": "lib/PhpParser" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Nikita Popov" - } - ], - "description": "A PHP parser written in PHP", - "keywords": [ - "parser", - "php" - ], - "time": "2020-12-20T10:01:03+00:00" - }, - { - "name": "phar-io/manifest", - "version": "2.0.1", - "source": { - "type": "git", - "url": "https://github.com/phar-io/manifest.git", - "reference": "85265efd3af7ba3ca4b2a2c34dbfc5788dd29133" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phar-io/manifest/zipball/85265efd3af7ba3ca4b2a2c34dbfc5788dd29133", - "reference": "85265efd3af7ba3ca4b2a2c34dbfc5788dd29133", - "shasum": "", - "mirrors": [ - { - "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", - "preferred": true - } - ] - }, - "require": { - "ext-dom": "*", - "ext-phar": "*", - "ext-xmlwriter": "*", - "phar-io/version": "^3.0.1", - "php": "^7.2 || ^8.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0.x-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Arne Blankerts", - "email": "arne@blankerts.de", - "role": "Developer" - }, - { - "name": "Sebastian Heuer", - "email": "sebastian@phpeople.de", - "role": "Developer" - }, - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "Developer" - } - ], - "description": "Component for reading phar.io manifest information from a PHP Archive (PHAR)", - "time": "2020-06-27T14:33:11+00:00" - }, - { - "name": "phar-io/version", - "version": "3.0.4", - "source": { - "type": "git", - "url": "https://github.com/phar-io/version.git", - "reference": "e4782611070e50613683d2b9a57730e9a3ba5451" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phar-io/version/zipball/e4782611070e50613683d2b9a57730e9a3ba5451", - "reference": "e4782611070e50613683d2b9a57730e9a3ba5451", - "shasum": "", - "mirrors": [ - { - "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", - "preferred": true - } - ] - }, - "require": { - "php": "^7.2 || ^8.0" + "suggest": { + "inhere/php-validate": "Very lightweight data validate tool" }, "type": "library", "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Arne Blankerts", - "email": "arne@blankerts.de", - "role": "Developer" - }, - { - "name": "Sebastian Heuer", - "email": "sebastian@phpeople.de", - "role": "Developer" + "psr-4": { + "Toolkit\\Stdlib\\": "src/" }, - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "Developer" - } - ], - "description": "Library for handling version information and constraints", - "time": "2020-12-13T23:18:30+00:00" - }, - { - "name": "phpdocumentor/reflection-common", - "version": "2.2.0", - "source": { - "type": "git", - "url": "https://github.com/phpDocumentor/ReflectionCommon.git", - "reference": "1d01c49d4ed62f25aa84a747ad35d5a16924662b" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/1d01c49d4ed62f25aa84a747ad35d5a16924662b", - "reference": "1d01c49d4ed62f25aa84a747ad35d5a16924662b", - "shasum": "", - "mirrors": [ - { - "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", - "preferred": true - } + "files": [ + "src/func.php" ] }, - "require": { - "php": "^7.2 || ^8.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-2.x": "2.x-dev" - } - }, - "autoload": { - "psr-4": { - "phpDocumentor\\Reflection\\": "src/" - } - }, "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], "authors": [ { - "name": "Jaap van Otterdijk", - "email": "opensource@ijaap.nl" + "name": "inhere", + "email": "in.798@qq.com", + "homepage": "http://www.yzone.net/" } ], - "description": "Common reflection classes used by phpdocumentor to reflect the code structure", - "homepage": "http://www.phpdoc.org", + "description": "some stdlib tool library of the php", + "homepage": "https://github.com/php-toolkit/stdlib", "keywords": [ - "FQSEN", - "phpDocumentor", - "phpdoc", - "reflection", - "static analysis" + "array", + "library", + "object", + "php", + "string", + "tool" ], - "time": "2020-06-27T09:03:43+00:00" - }, - { - "name": "phpdocumentor/reflection-docblock", - "version": "5.2.2", - "source": { - "type": "git", - "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git", - "reference": "069a785b2141f5bcf49f3e353548dc1cce6df556" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/069a785b2141f5bcf49f3e353548dc1cce6df556", - "reference": "069a785b2141f5bcf49f3e353548dc1cce6df556", - "shasum": "", - "mirrors": [ - { - "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", - "preferred": true - } - ] - }, - "require": { - "ext-filter": "*", - "php": "^7.2 || ^8.0", - "phpdocumentor/reflection-common": "^2.2", - "phpdocumentor/type-resolver": "^1.3", - "webmozart/assert": "^1.9.1" - }, - "require-dev": { - "mockery/mockery": "~1.3.2" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.x-dev" - } - }, - "autoload": { - "psr-4": { - "phpDocumentor\\Reflection\\": "src" - } + "support": { + "issues": "https://github.com/php-toolkit/stdlib/issues", + "source": "https://github.com/php-toolkit/stdlib/tree/v1.0.8" }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Mike van Riel", - "email": "me@mikevanriel.com" - }, - { - "name": "Jaap van Otterdijk", - "email": "account@ijaap.nl" - } - ], - "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.", - "time": "2020-09-03T19:13:55+00:00" + "time": "2021-01-23T07:17:46+00:00" }, { - "name": "phpdocumentor/type-resolver", - "version": "1.4.0", + "name": "toolkit/sys-utils", + "version": "v1.2.3", "source": { "type": "git", - "url": "https://github.com/phpDocumentor/TypeResolver.git", - "reference": "6a467b8989322d92aa1c8bf2bebcc6e5c2ba55c0" + "url": "https://github.com/php-toolkit/sys-utils.git", + "reference": "2fddcefb43383e80a749e38f75ff8f6fbe05301d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/6a467b8989322d92aa1c8bf2bebcc6e5c2ba55c0", - "reference": "6a467b8989322d92aa1c8bf2bebcc6e5c2ba55c0", + "url": "https://api.github.com/repos/php-toolkit/sys-utils/zipball/2fddcefb43383e80a749e38f75ff8f6fbe05301d", + "reference": "2fddcefb43383e80a749e38f75ff8f6fbe05301d", "shasum": "", "mirrors": [ { @@ -1024,21 +945,17 @@ ] }, "require": { - "php": "^7.2 || ^8.0", - "phpdocumentor/reflection-common": "^2.0" + "php": ">7.1.0", + "toolkit/stdlib": "~1.0" }, - "require-dev": { - "ext-tokenizer": "*" + "suggest": { + "inhere/console": "a lightweight php console application library.", + "inhere/php-validate": "Very lightweight data validate tool" }, "type": "library", - "extra": { - "branch-alias": { - "dev-1.x": "1.x-dev" - } - }, "autoload": { "psr-4": { - "phpDocumentor\\Reflection\\": "src" + "Toolkit\\Sys\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", @@ -1047,1707 +964,78 @@ ], "authors": [ { - "name": "Mike van Riel", - "email": "me@mikevanriel.com" + "name": "inhere", + "email": "in.798@qq.com", + "homepage": "http://www.yzone.net/" } ], - "description": "A PSR-5 based resolver of Class names, Types and Structural Element Names", - "time": "2020-09-17T18:55:26+00:00" + "description": "some system tool library of the php", + "homepage": "https://github.com/php-toolkit/sys-utils", + "keywords": [ + "library", + "php", + "tool" + ], + "support": { + "issues": "https://github.com/php-toolkit/sys-utils/issues", + "source": "https://github.com/php-toolkit/sys-utils/tree/v1.2.3" + }, + "time": "2021-01-23T16:11:58+00:00" }, { - "name": "phpspec/prophecy", - "version": "1.12.2", + "name": "ulue/phpgit", + "version": "dev-master", "source": { "type": "git", - "url": "https://github.com/phpspec/prophecy.git", - "reference": "245710e971a030f42e08f4912863805570f23d39" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phpspec/prophecy/zipball/245710e971a030f42e08f4912863805570f23d39", - "reference": "245710e971a030f42e08f4912863805570f23d39", - "shasum": "", - "mirrors": [ - { - "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", - "preferred": true - } - ] + "url": "https://github.com/ulue/phpgit.git", + "reference": "4a73499d7e6f46b23452f1301f983c5498f1f0a3" }, "require": { - "doctrine/instantiator": "^1.2", - "php": "^7.2 || ~8.0, <8.1", - "phpdocumentor/reflection-docblock": "^5.2", - "sebastian/comparator": "^3.0 || ^4.0", - "sebastian/recursion-context": "^3.0 || ^4.0" + "php": ">7.1.0", + "symfony/options-resolver": "~4.0", + "symfony/process": "~4.0" }, "require-dev": { - "phpspec/phpspec": "^6.0", - "phpunit/phpunit": "^8.0 || ^9.0" + "symfony/filesystem": ">=2.3" }, + "default-branch": true, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.11.x-dev" + "dev-master": "1.0.x-dev" } }, "autoload": { "psr-4": { - "Prophecy\\": "src/Prophecy" + "PhpGit\\": "src" } }, - "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], "authors": [ { - "name": "Konstantin Kudryashov", - "email": "ever.zet@gmail.com", - "homepage": "http://everzet.com" + "name": "inhere", + "email": "in.798@qq.com" }, { - "name": "Marcello Duarte", - "email": "marcello.duarte@gmail.com" - } - ], - "description": "Highly opinionated mocking framework for PHP 5.3+", - "homepage": "https://github.com/phpspec/prophecy", - "keywords": [ - "Double", - "Dummy", - "fake", - "mock", - "spy", - "stub" - ], - "time": "2020-12-19T10:15:11+00:00" - }, - { - "name": "phpunit/php-code-coverage", - "version": "9.2.5", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "f3e026641cc91909d421802dd3ac7827ebfd97e1" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/f3e026641cc91909d421802dd3ac7827ebfd97e1", - "reference": "f3e026641cc91909d421802dd3ac7827ebfd97e1", - "shasum": "", - "mirrors": [ - { - "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", - "preferred": true - } - ] - }, - "require": { - "ext-dom": "*", - "ext-libxml": "*", - "ext-xmlwriter": "*", - "nikic/php-parser": "^4.10.2", - "php": ">=7.3", - "phpunit/php-file-iterator": "^3.0.3", - "phpunit/php-text-template": "^2.0.2", - "sebastian/code-unit-reverse-lookup": "^2.0.2", - "sebastian/complexity": "^2.0", - "sebastian/environment": "^5.1.2", - "sebastian/lines-of-code": "^1.0.3", - "sebastian/version": "^3.0.1", - "theseer/tokenizer": "^1.2.0" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "suggest": { - "ext-pcov": "*", - "ext-xdebug": "*" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "9.2-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Library that provides collection, processing, and rendering functionality for PHP code coverage information.", - "homepage": "https://github.com/sebastianbergmann/php-code-coverage", - "keywords": [ - "coverage", - "testing", - "xunit" - ], - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" + "name": "Kazuyuki Hayashi", + "email": "hayashi@valnur.net" } ], - "time": "2020-11-28T06:44:49+00:00" - }, - { - "name": "phpunit/php-file-iterator", - "version": "3.0.5", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/php-file-iterator.git", - "reference": "aa4be8575f26070b100fccb67faabb28f21f66f8" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/aa4be8575f26070b100fccb67faabb28f21f66f8", - "reference": "aa4be8575f26070b100fccb67faabb28f21f66f8", - "shasum": "", - "mirrors": [ - { - "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", - "preferred": true - } - ] - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "FilterIterator implementation that filters files based on a list of suffixes.", - "homepage": "https://github.com/sebastianbergmann/php-file-iterator/", - "keywords": [ - "filesystem", - "iterator" - ], - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-09-28T05:57:25+00:00" - }, - { - "name": "phpunit/php-invoker", - "version": "3.1.1", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/php-invoker.git", - "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-invoker/zipball/5a10147d0aaf65b58940a0b72f71c9ac0423cc67", - "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67", - "shasum": "", - "mirrors": [ - { - "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", - "preferred": true - } - ] - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "ext-pcntl": "*", - "phpunit/phpunit": "^9.3" - }, - "suggest": { - "ext-pcntl": "*" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.1-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Invoke callables with a timeout", - "homepage": "https://github.com/sebastianbergmann/php-invoker/", - "keywords": [ - "process" - ], - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-09-28T05:58:55+00:00" - }, - { - "name": "phpunit/php-text-template", - "version": "2.0.4", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/php-text-template.git", - "reference": "5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28", - "reference": "5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28", - "shasum": "", - "mirrors": [ - { - "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", - "preferred": true - } - ] - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Simple template engine.", - "homepage": "https://github.com/sebastianbergmann/php-text-template/", - "keywords": [ - "template" - ], - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-10-26T05:33:50+00:00" - }, - { - "name": "phpunit/php-timer", - "version": "5.0.3", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/php-timer.git", - "reference": "5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2", - "reference": "5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2", - "shasum": "", - "mirrors": [ - { - "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", - "preferred": true - } - ] - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Utility class for timing", - "homepage": "https://github.com/sebastianbergmann/php-timer/", - "keywords": [ - "timer" - ], - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-10-26T13:16:10+00:00" - }, - { - "name": "phpunit/phpunit", - "version": "9.5.1", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "e7bdf4085de85a825f4424eae52c99a1cec2f360" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/e7bdf4085de85a825f4424eae52c99a1cec2f360", - "reference": "e7bdf4085de85a825f4424eae52c99a1cec2f360", - "shasum": "", - "mirrors": [ - { - "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", - "preferred": true - } - ] - }, - "require": { - "doctrine/instantiator": "^1.3.1", - "ext-dom": "*", - "ext-json": "*", - "ext-libxml": "*", - "ext-mbstring": "*", - "ext-xml": "*", - "ext-xmlwriter": "*", - "myclabs/deep-copy": "^1.10.1", - "phar-io/manifest": "^2.0.1", - "phar-io/version": "^3.0.2", - "php": ">=7.3", - "phpspec/prophecy": "^1.12.1", - "phpunit/php-code-coverage": "^9.2.3", - "phpunit/php-file-iterator": "^3.0.5", - "phpunit/php-invoker": "^3.1.1", - "phpunit/php-text-template": "^2.0.3", - "phpunit/php-timer": "^5.0.2", - "sebastian/cli-parser": "^1.0.1", - "sebastian/code-unit": "^1.0.6", - "sebastian/comparator": "^4.0.5", - "sebastian/diff": "^4.0.3", - "sebastian/environment": "^5.1.3", - "sebastian/exporter": "^4.0.3", - "sebastian/global-state": "^5.0.1", - "sebastian/object-enumerator": "^4.0.3", - "sebastian/resource-operations": "^3.0.3", - "sebastian/type": "^2.3", - "sebastian/version": "^3.0.2" - }, - "require-dev": { - "ext-pdo": "*", - "phpspec/prophecy-phpunit": "^2.0.1" - }, - "suggest": { - "ext-soap": "*", - "ext-xdebug": "*" - }, - "bin": [ - "phpunit" - ], - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "9.5-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ], - "files": [ - "src/Framework/Assert/Functions.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "The PHP Unit Testing framework.", - "homepage": "https://phpunit.de/", - "keywords": [ - "phpunit", - "testing", - "xunit" - ], - "funding": [ - { - "url": "https://phpunit.de/donate.html", - "type": "custom" - }, - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2021-01-17T07:42:25+00:00" - }, - { - "name": "sebastian/cli-parser", - "version": "1.0.1", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/cli-parser.git", - "reference": "442e7c7e687e42adc03470c7b668bc4b2402c0b2" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/442e7c7e687e42adc03470c7b668bc4b2402c0b2", - "reference": "442e7c7e687e42adc03470c7b668bc4b2402c0b2", - "shasum": "", - "mirrors": [ - { - "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", - "preferred": true - } - ] - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Library for parsing CLI options", - "homepage": "https://github.com/sebastianbergmann/cli-parser", - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-09-28T06:08:49+00:00" - }, - { - "name": "sebastian/code-unit", - "version": "1.0.8", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/code-unit.git", - "reference": "1fc9f64c0927627ef78ba436c9b17d967e68e120" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/code-unit/zipball/1fc9f64c0927627ef78ba436c9b17d967e68e120", - "reference": "1fc9f64c0927627ef78ba436c9b17d967e68e120", - "shasum": "", - "mirrors": [ - { - "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", - "preferred": true - } - ] - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Collection of value objects that represent the PHP code units", - "homepage": "https://github.com/sebastianbergmann/code-unit", - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-10-26T13:08:54+00:00" - }, - { - "name": "sebastian/code-unit-reverse-lookup", - "version": "2.0.3", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git", - "reference": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5", - "reference": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5", - "shasum": "", - "mirrors": [ - { - "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", - "preferred": true - } - ] - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Looks up which function or method a line of code belongs to", - "homepage": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/", - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-09-28T05:30:19+00:00" - }, - { - "name": "sebastian/comparator", - "version": "4.0.6", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/comparator.git", - "reference": "55f4261989e546dc112258c7a75935a81a7ce382" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/55f4261989e546dc112258c7a75935a81a7ce382", - "reference": "55f4261989e546dc112258c7a75935a81a7ce382", - "shasum": "", - "mirrors": [ - { - "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", - "preferred": true - } - ] - }, - "require": { - "php": ">=7.3", - "sebastian/diff": "^4.0", - "sebastian/exporter": "^4.0" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - }, - { - "name": "Jeff Welch", - "email": "whatthejeff@gmail.com" - }, - { - "name": "Volker Dusch", - "email": "github@wallbash.com" - }, - { - "name": "Bernhard Schussek", - "email": "bschussek@2bepublished.at" - } - ], - "description": "Provides the functionality to compare PHP values for equality", - "homepage": "https://github.com/sebastianbergmann/comparator", - "keywords": [ - "comparator", - "compare", - "equality" - ], - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-10-26T15:49:45+00:00" - }, - { - "name": "sebastian/complexity", - "version": "2.0.2", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/complexity.git", - "reference": "739b35e53379900cc9ac327b2147867b8b6efd88" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/complexity/zipball/739b35e53379900cc9ac327b2147867b8b6efd88", - "reference": "739b35e53379900cc9ac327b2147867b8b6efd88", - "shasum": "", - "mirrors": [ - { - "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", - "preferred": true - } - ] - }, - "require": { - "nikic/php-parser": "^4.7", - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Library for calculating the complexity of PHP code units", - "homepage": "https://github.com/sebastianbergmann/complexity", - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-10-26T15:52:27+00:00" - }, - { - "name": "sebastian/diff", - "version": "4.0.4", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/diff.git", - "reference": "3461e3fccc7cfdfc2720be910d3bd73c69be590d" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/3461e3fccc7cfdfc2720be910d3bd73c69be590d", - "reference": "3461e3fccc7cfdfc2720be910d3bd73c69be590d", - "shasum": "", - "mirrors": [ - { - "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", - "preferred": true - } - ] - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3", - "symfony/process": "^4.2 || ^5" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - }, - { - "name": "Kore Nordmann", - "email": "mail@kore-nordmann.de" - } - ], - "description": "Diff implementation", - "homepage": "https://github.com/sebastianbergmann/diff", - "keywords": [ - "diff", - "udiff", - "unidiff", - "unified diff" - ], - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-10-26T13:10:38+00:00" - }, - { - "name": "sebastian/environment", - "version": "5.1.3", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/environment.git", - "reference": "388b6ced16caa751030f6a69e588299fa09200ac" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/388b6ced16caa751030f6a69e588299fa09200ac", - "reference": "388b6ced16caa751030f6a69e588299fa09200ac", - "shasum": "", - "mirrors": [ - { - "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", - "preferred": true - } - ] - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "suggest": { - "ext-posix": "*" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.1-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Provides functionality to handle HHVM/PHP environments", - "homepage": "http://www.github.com/sebastianbergmann/environment", - "keywords": [ - "Xdebug", - "environment", - "hhvm" - ], - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-09-28T05:52:38+00:00" - }, - { - "name": "sebastian/exporter", - "version": "4.0.3", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/exporter.git", - "reference": "d89cc98761b8cb5a1a235a6b703ae50d34080e65" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/d89cc98761b8cb5a1a235a6b703ae50d34080e65", - "reference": "d89cc98761b8cb5a1a235a6b703ae50d34080e65", - "shasum": "", - "mirrors": [ - { - "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", - "preferred": true - } - ] - }, - "require": { - "php": ">=7.3", - "sebastian/recursion-context": "^4.0" - }, - "require-dev": { - "ext-mbstring": "*", - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - }, - { - "name": "Jeff Welch", - "email": "whatthejeff@gmail.com" - }, - { - "name": "Volker Dusch", - "email": "github@wallbash.com" - }, - { - "name": "Adam Harvey", - "email": "aharvey@php.net" - }, - { - "name": "Bernhard Schussek", - "email": "bschussek@gmail.com" - } - ], - "description": "Provides the functionality to export PHP variables for visualization", - "homepage": "http://www.github.com/sebastianbergmann/exporter", - "keywords": [ - "export", - "exporter" - ], - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-09-28T05:24:23+00:00" - }, - { - "name": "sebastian/global-state", - "version": "5.0.2", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/global-state.git", - "reference": "a90ccbddffa067b51f574dea6eb25d5680839455" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/a90ccbddffa067b51f574dea6eb25d5680839455", - "reference": "a90ccbddffa067b51f574dea6eb25d5680839455", - "shasum": "", - "mirrors": [ - { - "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", - "preferred": true - } - ] - }, - "require": { - "php": ">=7.3", - "sebastian/object-reflector": "^2.0", - "sebastian/recursion-context": "^4.0" - }, - "require-dev": { - "ext-dom": "*", - "phpunit/phpunit": "^9.3" - }, - "suggest": { - "ext-uopz": "*" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Snapshotting of global state", - "homepage": "http://www.github.com/sebastianbergmann/global-state", - "keywords": [ - "global state" - ], - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-10-26T15:55:19+00:00" - }, - { - "name": "sebastian/lines-of-code", - "version": "1.0.3", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/lines-of-code.git", - "reference": "c1c2e997aa3146983ed888ad08b15470a2e22ecc" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/c1c2e997aa3146983ed888ad08b15470a2e22ecc", - "reference": "c1c2e997aa3146983ed888ad08b15470a2e22ecc", - "shasum": "", - "mirrors": [ - { - "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", - "preferred": true - } - ] - }, - "require": { - "nikic/php-parser": "^4.6", - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Library for counting the lines of code in PHP source code", - "homepage": "https://github.com/sebastianbergmann/lines-of-code", - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-11-28T06:42:11+00:00" - }, - { - "name": "sebastian/object-enumerator", - "version": "4.0.4", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/object-enumerator.git", - "reference": "5c9eeac41b290a3712d88851518825ad78f45c71" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/5c9eeac41b290a3712d88851518825ad78f45c71", - "reference": "5c9eeac41b290a3712d88851518825ad78f45c71", - "shasum": "", - "mirrors": [ - { - "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", - "preferred": true - } - ] - }, - "require": { - "php": ">=7.3", - "sebastian/object-reflector": "^2.0", - "sebastian/recursion-context": "^4.0" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Traverses array structures and object graphs to enumerate all referenced objects", - "homepage": "https://github.com/sebastianbergmann/object-enumerator/", - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-10-26T13:12:34+00:00" - }, - { - "name": "sebastian/object-reflector", - "version": "2.0.4", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/object-reflector.git", - "reference": "b4f479ebdbf63ac605d183ece17d8d7fe49c15c7" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/b4f479ebdbf63ac605d183ece17d8d7fe49c15c7", - "reference": "b4f479ebdbf63ac605d183ece17d8d7fe49c15c7", - "shasum": "", - "mirrors": [ - { - "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", - "preferred": true - } - ] - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Allows reflection of object attributes, including inherited and non-public ones", - "homepage": "https://github.com/sebastianbergmann/object-reflector/", - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-10-26T13:14:26+00:00" - }, - { - "name": "sebastian/recursion-context", - "version": "4.0.4", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/recursion-context.git", - "reference": "cd9d8cf3c5804de4341c283ed787f099f5506172" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/cd9d8cf3c5804de4341c283ed787f099f5506172", - "reference": "cd9d8cf3c5804de4341c283ed787f099f5506172", - "shasum": "", - "mirrors": [ - { - "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", - "preferred": true - } - ] - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - }, - { - "name": "Jeff Welch", - "email": "whatthejeff@gmail.com" - }, - { - "name": "Adam Harvey", - "email": "aharvey@php.net" - } - ], - "description": "Provides functionality to recursively process PHP variables", - "homepage": "http://www.github.com/sebastianbergmann/recursion-context", - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-10-26T13:17:30+00:00" - }, - { - "name": "sebastian/resource-operations", - "version": "3.0.3", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/resource-operations.git", - "reference": "0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8", - "reference": "0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8", - "shasum": "", - "mirrors": [ - { - "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", - "preferred": true - } - ] - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Provides a list of PHP built-in functions that operate on resources", - "homepage": "https://www.github.com/sebastianbergmann/resource-operations", - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-09-28T06:45:17+00:00" - }, - { - "name": "sebastian/type", - "version": "2.3.1", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/type.git", - "reference": "81cd61ab7bbf2de744aba0ea61fae32f721df3d2" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/81cd61ab7bbf2de744aba0ea61fae32f721df3d2", - "reference": "81cd61ab7bbf2de744aba0ea61fae32f721df3d2", - "shasum": "", - "mirrors": [ - { - "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", - "preferred": true - } - ] - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.3-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Collection of value objects that represent the types of the PHP type system", - "homepage": "https://github.com/sebastianbergmann/type", - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-10-26T13:18:59+00:00" - }, - { - "name": "sebastian/version", - "version": "3.0.2", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/version.git", - "reference": "c6c1022351a901512170118436c764e473f6de8c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/c6c1022351a901512170118436c764e473f6de8c", - "reference": "c6c1022351a901512170118436c764e473f6de8c", - "shasum": "", - "mirrors": [ - { - "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", - "preferred": true - } - ] - }, - "require": { - "php": ">=7.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Library that helps with managing the version number of Git-hosted PHP projects", - "homepage": "https://github.com/sebastianbergmann/version", - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-09-28T06:39:44+00:00" - }, - { - "name": "symfony/polyfill-ctype", - "version": "v1.22.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-ctype.git", - "reference": "c6c942b1ac76c82448322025e084cadc56048b4e" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/c6c942b1ac76c82448322025e084cadc56048b4e", - "reference": "c6c942b1ac76c82448322025e084cadc56048b4e", - "shasum": "", - "mirrors": [ - { - "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", - "preferred": true - } - ] - }, - "require": { - "php": ">=7.1" - }, - "suggest": { - "ext-ctype": "For best performance" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.22-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Polyfill\\Ctype\\": "" - }, - "files": [ - "bootstrap.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Gert de Pagter", - "email": "BackEndTea@gmail.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill for ctype functions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "ctype", - "polyfill", - "portable" - ], - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2021-01-07T16:49:33+00:00" - }, - { - "name": "theseer/tokenizer", - "version": "1.2.0", - "source": { - "type": "git", - "url": "https://github.com/theseer/tokenizer.git", - "reference": "75a63c33a8577608444246075ea0af0d052e452a" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/theseer/tokenizer/zipball/75a63c33a8577608444246075ea0af0d052e452a", - "reference": "75a63c33a8577608444246075ea0af0d052e452a", - "shasum": "", - "mirrors": [ - { - "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", - "preferred": true - } - ] - }, - "require": { - "ext-dom": "*", - "ext-tokenizer": "*", - "ext-xmlwriter": "*", - "php": "^7.2 || ^8.0" - }, - "type": "library", - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Arne Blankerts", - "email": "arne@blankerts.de", - "role": "Developer" - } - ], - "description": "A small library for converting tokenized PHP source code into XML and potentially other formats", - "funding": [ - { - "url": "https://github.com/theseer", - "type": "github" - } - ], - "time": "2020-07-12T23:59:07+00:00" - }, - { - "name": "webmozart/assert", - "version": "1.9.1", - "source": { - "type": "git", - "url": "https://github.com/webmozarts/assert.git", - "reference": "bafc69caeb4d49c39fd0779086c03a3738cbb389" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/webmozarts/assert/zipball/bafc69caeb4d49c39fd0779086c03a3738cbb389", - "reference": "bafc69caeb4d49c39fd0779086c03a3738cbb389", - "shasum": "", - "mirrors": [ - { - "url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%", - "preferred": true - } - ] - }, - "require": { - "php": "^5.3.3 || ^7.0 || ^8.0", - "symfony/polyfill-ctype": "^1.8" - }, - "conflict": { - "phpstan/phpstan": "<0.12.20", - "vimeo/psalm": "<3.9.1" - }, - "require-dev": { - "phpunit/phpunit": "^4.8.36 || ^7.5.13" - }, - "type": "library", - "autoload": { - "psr-4": { - "Webmozart\\Assert\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Bernhard Schussek", - "email": "bschussek@gmail.com" - } - ], - "description": "Assertions to validate method input/output with nice error messages.", - "keywords": [ - "assert", - "check", - "validate" - ], - "time": "2020-07-08T17:02:28+00:00" + "description": "A Git wrapper for PHP 7.1+", + "homepage": "https://github/ulue/phpgit.git", + "time": "2021-01-26T13:22:25+00:00" } ], + "packages-dev": [], "aliases": [], "minimum-stability": "stable", "stability-flags": { "inhere/console": 20, "inhere/sroute": 20, - "php-comp/http-client": 20 + "php-comp/http-client": 20, + "ulue/phpgit": 20 }, "prefer-stable": false, "prefer-lowest": false, @@ -2757,5 +1045,5 @@ "ext-mbstring": "*" }, "platform-dev": [], - "plugin-api-version": "1.1.0" + "plugin-api-version": "2.0.0" } diff --git a/resource/images/kite-gitlab-help.png b/resource/images/kite-gitlab-help.png new file mode 100644 index 0000000000000000000000000000000000000000..5e68d02479c5cb96c6d18741ed868973281414a9 GIT binary patch literal 167972 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