Edit report at https://bugs.php.net/bug.php?id=66985&edit=1
ID: 66985
Updated by: rasmus@php.net
Reported by: evert at rooftopsolutions dot nl
Summary: Some timezones are no longer valid in PHP 5.5.10
Status: Re-Opened
Type: Bug
Package: Date/time related
Operating System: Any
PHP Version: 5.5.10
Block user comment: N
Private report: N
New Comment:
Derick, wouldn't the easiest solution just be to add these to timezonemap.h?
As in, for EST5EDT it would be something like:
{ "edt", 1, -14400, "EST5EDT" },
{ "est", 1, -18000, "EST5EDT" },
Previous Comments:
------------------------------------------------------------------------
[2014-07-16 17:01:09] evert at rooftopsolutions dot nl
OT: Bit dissapointed that it required a comment from Rasmus for this issue to be as much as
acknowledged. Didn't ask for an immediate fix, but getting ignored really sucks.
------------------------------------------------------------------------
[2014-07-16 14:30:48] rasmus@php.net
Yup, I looked at it too, I thought it would be as simple as adding them back into the array there,
but I see it isn't. The fact that it has been 4 patch releases isn't really an issue
though. People are migrating slowly to 5.5 still. For those who are already on current 5.5 they
either already fixed this by moving to a more precise tz identifier or they didn't have the
problem in the first place, so they won't be affected by the fix. And for the others who
aren't there yet it will only help them by removing a compatibility obstacle.
------------------------------------------------------------------------
[2014-07-16 14:26:01] derick@php.net
I don't disagree... but not sure what to do now. It's been four patch releases (or more
since) and the discontinuation of those "deprecated identifiers" was a consequence of
allowing CEST and the like as argument to a constructor - which there were a few bug reports for. So
we can't just revert the patch.
Fixing this is certainly possible, but not as trivial as I hoped when looking into this again.
It's still in the back of my head, but I've had some other priorities.
------------------------------------------------------------------------
[2014-07-16 14:03:06] rasmus@php.net
I agree this shouldn't have been changed in a minor version. For better or worse, there is a
lot of EST5EDT and other POSIX tz identifiers out there being used interchangeably with Olson
identifiers. If Olson lists it, I think we should support it and if we are going to drop some we
should add warnings and in the current version and then drop them only in the next major version.
------------------------------------------------------------------------
[2014-03-31 14:57:46] evert at rooftopsolutions dot nl
Hey Derick,
They worked, because they are part of the olson file, and they are documented on the php site: https://php.net/manual/en/timezones.others.php
Furthermore, I'm using these, not in my code, but because I'm receiving timezone strings
from various sources that I can't control. This one came from a c library (libical) from some
system that had it's system timezone likely set to EST5EDT.
While I don't disagree that neither I nor anyone else should be using these, you introduced a
BC break in a minor PHP version of a documented feature, without as much as a mention in the
changelog.
That, to me, sounds like a bug.
------------------------------------------------------------------------
The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
https://bugs.php.net/bug.php?id=66985
--
Edit this bug report at https://bugs.php.net/bug.php?id=66985&edit=1