Bug #21971
closedChanged PHP System requirements with Minor Release Version Update
0%
Description
Hi There,
after Updating my TYPO3 installations from version 4.2.10 to 4.2.11 Suddenly get an PHP Error when calling the List module.
PHP Fatal error: Call to undefined function filter_var() in /usr/lib/typo3/typo3_src-4.2.11/t3lib/class.t3lib_div.php on line 1555, referer: http://www.domainname.tld/typo3/backend.php
The same bug was discussed here #0009719 and is already solved.
Why do I suddenly need a PHP5 Update just for an Minor TYPO3 Release Update :(
Was the class.t3lig_div.php copied from a newer Projekt Branch?
Can this be reviewed and is it possible to rollback?
Greetz Semidark
(issue imported from #M13258)
Files
Updated by Chris topher almost 15 years ago
Hi Nico,
install pecl-fliter. That should fix it.
Alternativelly: Filter_var is a native php function since version 5.2...
When TYPO3 4.2 was released in april 2008, it was announced that this version of TYPO3 will need PHP 5.2 at least:
http://news.typo3.org/news/article/typo3-association-releases-version-42-focus-on-usability-and-performance-improvements/
So it is not really "suddenly" that TYPO3 4.2 does not work correctly with PHP 5.1.
It may be that TYPO3 4.2 was also running correctly with PHP 5.1 at the time of its release, but noone guaranteed you that this will stay that way.
You should do an update to PHP 5.2.
Updated by Ralf Hansen almost 15 years ago
We have the same error with PHP 5.1.6.
I think this is the same error like #21959.
We installed "pecl-filter" today , it doesn't help for us, we have the same error again.
The following document is linked from <http://typo3.org/about/system-requirements/>. [^]
http://buzz.typo3.org/people/stucki/article/leaving-php4-behind/: [^]
"If you are using PHP 5.1 then you might be in luck... We are aware that enterprise Linux distributions of Novell and RedHat do not ship with PHP 5.2 yet (they both come with 5.1). Therefore, we will avoid using PHP 5.2 any specific features in TYPO3 as long as they have not switched."
We use CentOS5/RHEL5, they have not switched for now. A PHP upgrade is difficult in such environment and may break other applications on the same server.
Updated by Chris topher almost 15 years ago
I just investigated the release policy of CentOS and they say:
Is PHP 5.2.5 released for CentOS?
No. As with each other program in CentOS, the version numbers of released software will not change over the life time of a CentOS product. CentOS 5.0 contained PHP 5.1.6, and that is the point version PHP will stay at for the life time of CentOS 5. It is possible that upstream or the CentOS team decides to push a newer version into some additionial repository. But there are no such plans at the moment.
(Source: http://wiki.centos.org/FAQ/CentOS5#head-8b85501ca7f023bc0eeb0fef98143e10fb6adefc )
So we can wait for a very long time, they just won't update the PHP version.
I don't know, if that is clever, but it is their decision.
Updated by Chris topher almost 15 years ago
The question, if you can rely on the blog post by Michael Stucki is still open:
The post was written in 2007. That is also how current the information are.
The release notes for TYPO3 4.2 are from 2008. So they are newer. They positively state, that TYPO3 4.2 will at least need PHP 5.2. This information is also included in the release notes published by the association and in the NEWS.txt shipped with TYPO3 4.2; all being newer than the information from 2007. These docs all state, that PHP 5.1 is not supported.
Is there an official guidline for such case?
I would say: The newer information supersedes the older one.
That means: With the newer release notes, NEWS.txt and so on skipping support for PHP 5.1, there is no (official) support for running TYPO3 4.2 under PHP 5.1.
Updated by Steffen Gebert almost 15 years ago
As it was always said that TYPO3 Version 4.2 requires PHP 5.2, I don't see the need for fixing this, just because it worked for previous minor versions.
You could XCLASS the functions using PHP 5.1 incompatible code and recode them in a 5.1 compatible way. It would be nice, if you could release it to TER for other users running old versions.
Updated by Ernesto Baschny over 14 years ago
I disagree.
Either we need to change the PHP 5.1 check in the core in v4.2 or we need to make it also work in PHP 5.1. It's a "show stopper" if a minor upgrade does such a drastic change, regardless of what we have stated in the release notes.
As it is only because of one minor function which can be easily adapted, I don't see the need to bump the actual PHP dependency up from 5.1 to 5.2 just because of this.
See attached patch, which I will submit to the core list.
Updated by Jonas Diemer over 14 years ago
Ernesto, can you please supply the patch that fixes this issue for PHP5.1? Thanks
Updated by Ernesto Baschny over 14 years ago
Jonas, patch is attached to this issue. If it works for you, visit us in the core list and give your "+1" to the matter.
Updated by Ralf Hansen over 14 years ago
The problem exists with 4.2.12, too.
Now it's a big problem. No way to fix known security problems since 4.2.12 is out. :-( We use CentOS5 and can't upgrade to PHP-5.2 easyly. We downgraded to 4.2.10 before because of this issue wasn't fixed and had to install a test system to test this issue with 4.2.12.
Updated by Chris topher over 14 years ago
@ Ralf: Right, this has not yet been committed, because it has not gone through the review process.
For everyone using 4.2 without having the PHP function filter_var():
Take the patch supplied above ("13258-v3.diff") and integrate it in your source.
This will no longer be needed, when the patch is committed.
Updated by Steffen Gebert over 14 years ago
But the patch has already two +1 (Steffen Kamper and Jonas Diemer), so formally it can be comitted - although Ernesto wrote "Just
waiting for one more core developer review and a +1.".
As Christopher wrote, use 13258-v3.diff. This is the patch which is in the review process and seems to fix the issue.
Updated by Ernesto Baschny over 14 years ago
Thanks Steffen, I just discovered that yesterday, as I thought Steffen was not really "sure" about the patch. This has been clarified already.
So I will commit ASAP, unfortunately not in time for 4.2.12 but only in 4.2.13. Sorry!
Updated by Ernesto Baschny over 14 years ago
- commited patch v3 to TYPO3-4.2 (rev.7024), will end up in 4.2.13.
- commited enhanced unit tests to trunk (rev.7025) and TYPO3-4.3 (rev.7026), no ChangeLog entry for this one. We had no unit tests in v4.2.