self-update does update, but displays class not found error and PHP output due to PHAR content changing
Maintainer thường phản hồi trong vòng 1 ngày
@asgrim đang làm issue này rồi.
Từ ngày 8/5/2025.
Đánh giá
Issue này chưa được đánh giá.
Mô tả
We introduced the EventDispatcher in #219 to handle the banner, but this has introduced a side-effect when the PHAR is overwritten (by SelfUpdateCommand), in that the PHAR content has changed and so the subsequent class loads will fail.
Reproducer:
$ php box.phar compile && php pie.phar self-update --nightly
<box compile snipped>
🥧 PHP Installer for Extensions (PIE) 0.11.0@5d7fa4f, from The PHP Foundation
You are running PHP 8.4.6
Target PHP installation: 8.4.6 nts, on Linux/OSX/etc x86_64 (from /usr/bin/php8.4)
Downloading the latest nightly release.
✅ Verified the new PIE version
✅ PIE has been upgraded to nightly
icense information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Composer\Util;
use Composer\XdebugHandler\XdebugHandler;
/**
* Provides ini file location functions that work with and without a restart.
* When the process has restarted it uses a tmp ini and stores the original
* ini locations in an environment variable.
*
* @author John Stevenson <[email protected]>
*/
class IniHelper
{
/**
* Returns an array of php.ini locations with at least one entry
*
* The equivalent of calling php_ini_loaded_file then php_ini_scanned_files.
* The loaded ini location is the first entry and may be empty.
*
* @return string[]
*/
public static function getAll(): array
{
return XdebugHandler::getAllIniFiles();
}
/**
* Describes the location of the loaded php.ini file(s)
*/
public static function getMessage(): string
{
$paths = self::getAll();
if (empty($paths[0])) {
array_shift($paths);
}
$ini = array_shift($paths);
if (empty($ini)) {
return 'A php.ini file does not exist. You will have to create one.';
}
if (!ePHP Fatal error: Uncaught Error: Class "Symfony\Component\Console\Event\ConsoleTerminateEvent" not found in phar:///home/james/workspace/phpf/pie/pie.phar/vendor/symfony/console/Application.php:1110
Stack trace:
#0 phar:///home/james/workspace/phpf/pie/pie.phar/vendor/symfony/console/Application.php(324): Symfony\Component\Console\Application->doRunCommand()
#1 phar:///home/james/workspace/phpf/pie/pie.phar/vendor/symfony/console/Application.php(175): Symfony\Component\Console\Application->doRun()
#2 phar:///home/james/workspace/phpf/pie/pie.phar/bin/pie(53): Symfony\Component\Console\Application->run()
#3 /home/james/workspace/phpf/pie/pie.phar(15): require('...')
#4 {main}
thrown in phar:///home/james/workspace/phpf/pie/pie.phar/vendor/symfony/console/Application.php on line 1110
- Ngôn ngữ chính
- PHP
- Star
- 2k
- Fork
- 75
- Merge trung bình
- 19 giờ
- Pull request đã merge (30 ngày)
- 16
Chuẩn bị môi trường
- Có Dockerfile hoặc tệp Docker Compose
- Có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của php/pie
-
Inaccurate install instructions in the README, not possible to run `gh attestation` unauthenticatedĐang mởdocumentation
Độ khó 2/5 Dưới một giờ Mức phù hợp với người mới 66/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Do not duplicate an ext in pie show output for dev versionsCó thể đã có người làm @asgrim đã nhận 11 ngày trước. Đang mởenhancement maintainer investigating
php/pie#746 · 1 người được giao ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Add self-update feature for executable PIEsCó thể đã có người làm @asgrim đã nhận 23 ngày trước. Đang mởenhancement maintainer investigating
php/pie#739 · 1 người được giao ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Allow building from existing sources on diskCó thể đã có người làm @asgrim đã nhận 23 ngày trước. Đang mởenhancement maintainer investigating
php/pie#738 · 2 bình luận · 1 người được giao ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Optionally remove build-only dependencies and bloat after installCó thể làm lại được @asgrim đã nhận 144 ngày trước và không có pull request nào đang mở. Đang mởenhancement maintainer investigating
php/pie#618 · 2 bình luận · 4 reaction · 1 người được giao ·
Maintainer thường phản hồi trong vòng 1 ngày
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
components-web-app/api-components-bundle#403 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 74/100
mollie/PrestaShop#1566 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
components-web-app/docs#193 ·
-
Python 3.15 supportCó thể đã có người làm @amnesiaof đã nhận hôm nay. Đang mởL: python L: python:uv
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
dependabot/dependabot-core#16524 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 88/100
crazy-goat/rabbit-stream#830 ·
Maintainer thường phản hồi trong vòng 1 ngày