Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add a composer.json to enable support for PIE #139

Open
llaville opened this issue Nov 20, 2024 · 0 comments
Open

Add a composer.json to enable support for PIE #139

llaville opened this issue Nov 20, 2024 · 0 comments

Comments

@llaville
Copy link

Hello,

With recent release 4.2.6, I've noticed the PHAR distribution, and wanted to give a try !

I've downloaded the https://github.com/m6w6/ext-http/releases/download/v4.2.6/ext-http-v4.2.6.ext.phar on my PHP 8.2.25 platform, but was surprised to get masses of deprecations.

For example, when asking to display help panel with ./ext-http-v4.2.6.ext.phar -h command, I got :


Deprecated: Return type of pharext\Archive::offsetExists($o) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar on line 270

Call Stack:
    0.0072    2986856   1. {main}() /shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar:0


Deprecated: Return type of pharext\Archive::offsetGet($o) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar on line 274

Call Stack:
    0.0072    2986856   1. {main}() /shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar:0


Deprecated: Return type of pharext\Archive::offsetSet($o, $v) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar on line 279

Call Stack:
    0.0072    2986856   1. {main}() /shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar:0


Deprecated: Return type of pharext\Archive::offsetUnset($o) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar on line 283

Call Stack:
    0.0072    2986856   1. {main}() /shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar:0


Deprecated: Return type of pharext\Archive::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar on line 239

Call Stack:
    0.0072    2986856   1. {main}() /shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar:0


Deprecated: Return type of pharext\Cli\Args::offsetExists($o) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in phar:///shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar/pharext/Cli/Args.php on line 331

Call Stack:
    0.0072    2986856   1. {main}() /shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar:0
    0.0087    3048000   2. pharext\Installer->__construct() /shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar:472
    0.0088    3048000   3. pharext\{closure:/shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar:12-14}($c = 'pharext\\Cli\\Args') phar:///shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar/pharext/Installer.php:25
    0.0093    3089328   4. include('phar:///shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar/pharext/Cli/Args.php') /shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar:13


Deprecated: Return type of pharext\Cli\Args::offsetGet($o) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in phar:///shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar/pharext/Cli/Args.php on line 338

Call Stack:
    0.0072    2986856   1. {main}() /shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar:0
    0.0087    3048000   2. pharext\Installer->__construct() /shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar:472
    0.0088    3048000   3. pharext\{closure:/shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar:12-14}($c = 'pharext\\Cli\\Args') phar:///shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar/pharext/Installer.php:25
    0.0093    3089328   4. include('phar:///shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar/pharext/Cli/Args.php') /shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar:13


Deprecated: Return type of pharext\Cli\Args::offsetSet($o, $v) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in phar:///shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar/pharext/Cli/Args.php on line 348

Call Stack:
    0.0072    2986856   1. {main}() /shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar:0
    0.0087    3048000   2. pharext\Installer->__construct() /shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar:472
    0.0088    3048000   3. pharext\{closure:/shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar:12-14}($c = 'pharext\\Cli\\Args') phar:///shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar/pharext/Installer.php:25
    0.0093    3089328   4. include('phar:///shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar/pharext/Cli/Args.php') /shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar:13


Deprecated: Return type of pharext\Cli\Args::offsetUnset($o) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in phar:///shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar/pharext/Cli/Args.php on line 366

Call Stack:
    0.0072    2986856   1. {main}() /shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar:0
    0.0087    3048000   2. pharext\Installer->__construct() /shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar:472
    0.0088    3048000   3. pharext\{closure:/shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar:12-14}($c = 'pharext\\Cli\\Args') phar:///shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar/pharext/Installer.php:25
    0.0093    3089328   4. include('phar:///shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar/pharext/Cli/Args.php') /shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar:13


Deprecated: Creation of dynamic property pharext\Cli\Args\Help::$prog is deprecated in phar:///shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar/pharext/Cli/Args/Help.php on line 13

Call Stack:
    0.0072    2986856   1. {main}() /shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar:0
    0.0100    3094104   2. pharext\Installer->run($argc = 2, $argv = [0 => './ext-http-v4.2.6.ext.phar', 1 => '-h']) /shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar:473
    0.0440    3136704   3. pharext\Installer->help($prog = './ext-http-v4.2.6.ext.phar') phar:///shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar/pharext/Installer.php:134
    0.0443    3172952   4. pharext\Cli\Args\Help->__construct($prog = './ext-http-v4.2.6.ext.phar', $args = class pharext\Cli\Args { private $orig = [0 => [...], 1 => [...], 2 => [...], 3 => [...], 4 => [...], 5 => [...], 6 => [...], 7 => [...], 8 => [...], 9 => [...], 10 => [...], 11 => [...], 12 => [...], 13 => [...]]; private $spec = ['-h' => [...], '--help' => [...], '-v' => [...], '--verbose' => [...], '-q' => [...], '--quiet' => [...], '-p' => [...], '--prefix' => [...], '-n' => [...], '--common-name' => [...], '-c' => [...], '--configure' => [...], '-s' => [...], '--sudo' => [...], '-i' => [...], '--ini' => [...], '--signature' => [...], '--license' => [...], '--name' => [...], '--date' => [...], '--release' => [...], '--version' => [...]]; private $args = ['-h' => TRUE, '--help' => TRUE] }) phar:///shared/backups/bartlett/php-compatinfo-db/ext-http-v4.2.6.ext.phar/pharext/Cli/Command.php:122

Usage:

  $ ./ext-http-v4.2.6.ext.phar [-hvq] [-p|-n|-c|-i <arg>] [-s [<arg>]]

    -h|--help                    Display help
    -v|--verbose                 More output
    -q|--quiet                   Less output
    -p|--prefix <arg>            PHP installation prefix if phpize is not in $PATH, e.g. /opt/php7
    -n|--common-name <arg>       PHP common program name, e.g. php5 or zts-php [php]
    -c|--configure <arg>         Additional extension configure flags, e.g. -c --with-flag (MULTIPLE)
    -s|--sudo [<arg>]            Installation might need increased privileges [sudo -S %s]
    -i|--ini <arg>               Activate in this php.ini instead of loaded default php.ini
    --signature                  Show package signature
    --license                    Show package license
    --name                       Show package name
    --date                       Show package release date
    --release                    Show package release version
    --version                    Show pharext version

As project https://github.com/pharext/pharext seems a bit outdated, by source code and documentation (page https://pharext.org/pages/Home outdated), I suggest to add a composer.json to support PIE project available at https://github.com/php/pie

WDYT ?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant