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

[DEVX-3831] Update for compatibility with PHP 8.4 #2650

Open
pwtyler opened this issue Dec 2, 2024 · 7 comments
Open

[DEVX-3831] Update for compatibility with PHP 8.4 #2650

pwtyler opened this issue Dec 2, 2024 · 7 comments
Labels
v4.0 Issues to resolve with version 4

Comments

@pwtyler
Copy link
Member

pwtyler commented Dec 2, 2024

Platform

(x) MacOS

Installed Via

(x) Homebrew

PHP Version

(x) 8.4.1

Terminus Version

3.6.0

Command Executed

Any

Expected behavior

No more deprecated warnings with our glorious PHP 8.4 future.

Actual behavior

PHP Deprecated:  Consolidation\AnnotatedCommand\State\StateHelper::injectIntoCallbackObject(): Implicitly marking parameter $output as nullable is deprecated, the explicit nullable type must be used instead in phar:///opt/homebrew/Cellar/terminus/3.6.0/bin/terminus/vendor/consolidation/annotated-command/src/State/StateHelper.php on line 20

Deprecated: Consolidation\AnnotatedCommand\State\StateHelper::injectIntoCallbackObject(): Implicitly marking parameter $output as nullable is deprecated, the explicit nullable type must be used instead in phar:///opt/homebrew/Cellar/terminus/3.6.0/bin/terminus/vendor/consolidation/annotated-command/src/State/StateHelper.php on line 20
PHP Deprecated:  Consolidation\AnnotatedCommand\State\StateHelper::inject(): Implicitly marking parameter $output as nullable is deprecated, the explicit nullable type must be used instead in phar:///opt/homebrew/Cellar/terminus/3.6.0/bin/terminus/vendor/consolidation/annotated-command/src/State/StateHelper.php on line 32

Deprecated: Consolidation\AnnotatedCommand\State\StateHelper::inject(): Implicitly marking parameter $output as nullable is deprecated, the explicit nullable type must be used instead in phar:///opt/homebrew/Cellar/terminus/3.6.0/bin/terminus/vendor/consolidation/annotated-command/src/State/StateHelper.php on line 32
@Farnoosh63
Copy link

Following this as I am seeing the same error

@Farnoosh63
Copy link

For now, I added:
export TERMINUS_ALLOW_UNSUPPORTED_NEWER_PHP=true
to my bash profile

@pwtyler
Copy link
Member Author

pwtyler commented Dec 4, 2024

Looks like this was already addressed upstream consolidation/annotated-command#311 but needs a new release (and I suppose does that necessitate a robo update?) we can then upgrade to in Terminus.

cc @greg-1-anderson

@scottbuscemi scottbuscemi changed the title Update for compatibility with PHP 8.4 [DEVX-3831] Update for compatibility with PHP 8.4 Dec 5, 2024
@pwtyler pwtyler added the v4.0 Issues to resolve with version 4 label Dec 17, 2024
@markmont
Copy link

I'm following this issue since PHP 8.4 has started breaking things for us / our users / customers. Right now we're telling affected people to downgrade to PHP 8.3 in order to use Terminus.

I see this got tagged as v4.0... is there any guess as to when v4.0 might be released?

@pwtyler
Copy link
Member Author

pwtyler commented Dec 26, 2024

is there any guess as to when v4.0 might be released?

8.4 support means dropping support for older PHP versions (which the platform still supports), so we're trying not to rush it, we'll be figuring out a development/release plan next month, including making sure we capture any other breaking changes we wish to include at the same time.

@kmonty
Copy link

kmonty commented Dec 26, 2024

@pwtyler Is there a compelling reason to not release v4 but still continuing to support v3 while older versions of PHP are still supported by the platform?

@pwtyler
Copy link
Member Author

pwtyler commented Dec 27, 2024

Is there a compelling reason to not release v4 but still continuing to support v3 while older versions of PHP are still supported by the platform?

I expect it will look something like that. It's mostly planning and making sure we capture any other breaking changes we want to make at the same time.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
v4.0 Issues to resolve with version 4
Projects
None yet
Development

No branches or pull requests

4 participants