#!/usr/bin/env php 'vcs', 'url' => GITHUB_URL, ]; } $array['require']['codeigniter4/codeigniter4'] = $branch === 'next' ? NEXT_MINOR : DEVELOP_BRANCH; unset($array['require']['codeigniter4/framework']); } else { unset($array['minimum-stability']); if (isset($array['repositories'])) { foreach ($array['repositories'] as $i => $repository) { if ($repository['url'] === GITHUB_URL) { unset($array['repositories'][$i]); break; } } if ($array['repositories'] === []) { unset($array['repositories']); } } $array['require']['codeigniter4/framework'] = LATEST_RELEASE; unset($array['require']['codeigniter4/codeigniter4']); } file_put_contents($file, json_encode($array, JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES) . PHP_EOL); $modified[] = $file; } else { echo 'Warning: Unable to decode composer.json! Skipping...' . PHP_EOL; } } else { echo 'Warning: Unable to read composer.json! Skipping...' . PHP_EOL; } } $files = [ __DIR__ . DIRECTORY_SEPARATOR . 'app/Config/Paths.php', __DIR__ . DIRECTORY_SEPARATOR . 'phpunit.xml.dist', __DIR__ . DIRECTORY_SEPARATOR . 'phpunit.xml', ]; foreach ($files as $file) { if (is_file($file)) { $contents = file_get_contents($file); if ($branch !== 'release') { $contents = str_replace('vendor/codeigniter4/framework', 'vendor/codeigniter4/codeigniter4', $contents); } else { $contents = str_replace('vendor/codeigniter4/codeigniter4', 'vendor/codeigniter4/framework', $contents); } file_put_contents($file, $contents); $modified[] = $file; } } if ($modified === []) { echo 'No files modified.' . PHP_EOL; } else { echo 'The following files were modified:' . PHP_EOL; foreach ($modified as $file) { echo " * {$file}" . PHP_EOL; } } echo 'Run `composer update` to sync changes with your vendor folder.' . PHP_EOL; echo 'Don\'t forget to update the project files in app folder from "vendor/codeigniter4/*/app/".' . PHP_EOL;