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

Check that we are not using features deprecated in PHP 8 #30036

Closed
javiereguiluz opened this Issue Jan 30, 2019 · 4 comments

Comments

Projects
None yet
3 participants
@javiereguiluz
Copy link
Member

javiereguiluz commented Jan 30, 2019

Description
PHP 8 won't be released anytime soon, but it has already removed a lot of features, functions, settings, etc. that were deprecated in PHP 7.2 and 7.3.

We probably don't use many (any?) of these, but to make our code future-proof we should check this comprehensive list: php/php-src#3770

@stof

This comment has been minimized.

Copy link
Member

stof commented Jan 30, 2019

Well, if they haven't messed up with triggering E_USER_DEPRECATED, we should already be fine, as any E_USER_DEPRECATED would be detected by our testsuite (and by the profiler in dev).

@javiereguiluz

This comment has been minimized.

Copy link
Member Author

javiereguiluz commented Jan 30, 2019

Not sure about that. For example, in our Yaml component code we have code like this: ... & (int) ini_get('mbstring.func_overload') but mbstring.func_overload no longer exists in PHP 8.0.

@stof

This comment has been minimized.

Copy link
Member

stof commented Jan 30, 2019

Well, our YAML component does not rely on mbstring.func_overload. It makes sure to keep working when you use that feature.

AFAICT, ini_get does not break for unknown settings (otherwise, the YAML component would already be broken if mbstring is not loaded), and so this code would simply never enter inside the code running only when the mbstring.func_overload feature is used.
Deleting that code will only be possible when PHP 8 is our min version (so that our code cannot run on a runtime having mbstring.func_overload enabled).

@nicolas-grekas

This comment has been minimized.

Copy link
Member

nicolas-grekas commented Feb 24, 2019

I'm closing as PHP8 is a remote and moving target. Test suite will tell us where we'll need to update, as done for previous versions.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.