diff options
| author | nsfisis <nsfisis@gmail.com> | 2026-08-12 06:29:43 +0900 |
|---|---|---|
| committer | nsfisis <nsfisis@gmail.com> | 2026-08-15 09:19:39 +0900 |
| commit | bb4684f7d1c51bc1be9c1bda1b00cb52c839cd25 (patch) | |
| tree | 18fcdf1f9c9c64fc68e08bd5fab132808ca1cfcf /crates/shirabe/src/console | |
| parent | 9e5bb3e4253dda96345f4d1a3421077a72295048 (diff) | |
| download | php-shirabe-bb4684f7d1c51bc1be9c1bda1b00cb52c839cd25.tar.gz php-shirabe-bb4684f7d1c51bc1be9c1bda1b00cb52c839cd25.tar.zst php-shirabe-bb4684f7d1c51bc1be9c1bda1b00cb52c839cd25.zip | |
feat(php-shim): drop the modelled PHP version constants
The shim reported a fixed PHP 8.1.0 through PHP_VERSION, PHP_VERSION_ID,
the major/minor/release triple and the PHP_WINDOWS_VERSION_* trio. Their
uses split in two.
Some guarded branches PHP only needs on runtimes this port cannot be:
proc_get_status reports the exit status on every call, so Symfony's
pre-8.3 exit-code cache has nothing to work around; hash_raw and
hash_file always offer xxh3, so the sha1 fallback is unreachable; and
http_get_last_response_headers is always available, so the pre-8.4
$http_response_header branch is gone. safeJunctions reads the host
Windows version rather than PHP state, and joins the Windows work on
hold.
The rest ask about the PHP the user actually runs, and now reach the
worker through a new php-rpc PhpVersion payload: the startup banner and
the 7.2.5 warning, self-update's min-php filter, the ext-*
recommendation in VersionSelector, the stream User-Agent, and whether
PhpFileParser scans for enums.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Diffstat (limited to 'crates/shirabe/src/console')
| -rw-r--r-- | crates/shirabe/src/console/application.rs | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/crates/shirabe/src/console/application.rs b/crates/shirabe/src/console/application.rs index 1c0f0560..9bb810f7 100644 --- a/crates/shirabe/src/console/application.rs +++ b/crates/shirabe/src/console/application.rs @@ -57,13 +57,13 @@ use crate::util::Silencer; use indexmap::IndexMap; use shirabe_php_shim::Catch as _; use shirabe_php_shim::{ - LogicException as ShimLogicException, PHP_VERSION, PHP_VERSION_ID, PhpMixed, RuntimeException, - bin2hex, chdir, date_default_timezone_get, date_default_timezone_set, defined, dirname, - disk_free_space, extension_loaded, file_exists, file_get_contents, file_put_contents, - function_exists, getcwd, getmypid, glob, ini_set, is_array, is_dir, is_file, is_string, - json_decode, memory_get_peak_usage, memory_get_usage, microtime, php_regex, php_uname, - posix_getuid, random_bytes, realpath, restore_error_handler, round, str_replace, strpos, - strtoupper, sys_get_temp_dir, time, unlink, + LogicException as ShimLogicException, PhpMixed, RuntimeException, bin2hex, chdir, + date_default_timezone_get, date_default_timezone_set, defined, dirname, disk_free_space, + extension_loaded, file_exists, file_get_contents, file_put_contents, function_exists, getcwd, + getmypid, glob, ini_set, is_array, is_dir, is_file, is_string, json_decode, + memory_get_peak_usage, memory_get_usage, microtime, php_regex, php_uname, posix_getuid, + random_bytes, realpath, restore_error_handler, round, str_replace, strpos, strtoupper, + sys_get_temp_dir, time, unlink, }; use shirabe_seld_json_lint::ParsingException; use shirabe_symfony_console::application::Application as BaseApplication; @@ -2262,7 +2262,7 @@ impl ApplicationHandle { "Running {} ({}) with PHP {} on {}", composer::get_version(), composer::RELEASE_DATE, - PHP_VERSION, + shirabe_php_rpc::get_php_version().version, (if function_exists("php_uname") { format!("{} / {}", php_uname("s"), php_uname("r")) } else { @@ -2273,8 +2273,8 @@ impl ApplicationHandle { io_interface::DEBUG, ); - if PHP_VERSION_ID < 70205 { - io.write_error(&format!("<warning>Composer supports PHP 7.2.5 and above, you will most likely encounter problems with your PHP {}. Upgrading is strongly recommended but you can use Composer 2.2.x LTS as a fallback.</warning>", PHP_VERSION)); + if shirabe_php_rpc::get_php_version().version_id < 70205 { + io.write_error(&format!("<warning>Composer supports PHP 7.2.5 and above, you will most likely encounter problems with your PHP {}. Upgrading is strongly recommended but you can use Composer 2.2.x LTS as a fallback.</warning>", shirabe_php_rpc::get_php_version().version)); } if shirabe_php_rpc::xdebug::is_xdebug_active() @@ -2588,7 +2588,7 @@ impl ApplicationHandle { { io.write_error(&format!( "<info>PHP</info> version <comment>{}</comment> ({})", - shirabe_php_rpc::get_php_version(), + shirabe_php_rpc::get_php_version().version, shirabe_php_rpc::get_php_binary(), )); io.write_error( |
