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
Closed

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

javiereguiluz opened this issue Jan 30, 2019 · 4 comments

Comments

@javiereguiluz
Copy link
Member

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
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
Copy link
Member Author

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
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
Copy link
Member

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
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants