Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP

Loading…

[EXPLETIVE] Fucking Debian fucking ruined their fucking PHP package once again, and now we need to waste fucking time to fucking fix it #1008

Closed
dzuelke opened this Issue · 6 comments

2 participants

@dzuelke
Owner

Debian ticks me off.

So, a user (Joe Orton) suggested to internals@ that the system timezone be consulted if the timezone identifier was System/Localtime, which it would be by default. internals@ declined (http://thread.gmane.org/gmane.comp.php.devel/47609), and he produced a patch for Debian that was eventually included into their distribution.

From http://packages.debian.org/changelogs/pool/main/p/php5/php5_5.2.6.dfsg.1-0.1~lenny1/changelog#versionversion5.2.6-1:

> New patch (use_embedded_timezonedb.patch) allows us to default to using the system provided timezone database instead of the one bundled with PHP. Many thanks to Joe Orten from Red Hat for the patch! (closes: [#447174](http://bugs.debian.org/447174), [#471104](http://bugs.debian.org/471104)).

Now, if no timezone is configured anywhere, then such a Debian system (it’s in lenny and sid, not in etch), will use “System/Localtime” as the default timezone, and PHP is patched to resolve meaningful data for this identifier. So `DateTime`, `DateTimeZone` etc work fine, because they all use this change that makes them look at `/etc/localtime`, but… we cannot get the actual timezone name, only the abbreviation, which is useless as it’s not authoritative in many cases (example: actual timezone “Asia/Novosibirsk” returns “System/Localtime”, but “NOVT” as the abbreviation). `date_default_timezone_get()` returns “System/Localtime”, not the resolved value. Same with `DateTimeZone` or anything in `DateTime`.

Now, of course we could simply determine the offset of the resulting timezone and create an “anonymous” timezone, or the corresponding “GMT+x” one, but that doesn’t give us correct daylight saving time information for the timezone in question, so we cannot do any kind of calculations properly.

So basically, we cannot handle that `System/Localtime` stuff at all, because the stupid patch does it wrong, and because it’s useless, and because once again, some guy from the $random_linux_distribution camp thought he knew better.

Sad.

I really can’t be bothered to implement yet another workaround. Debian and Ubuntu are causing us nothing but trouble.

Oh, also, Redhat/Fedora might do the same crap (looks like they didn’t include it yet): https://bugzilla.redhat.com/show_bug.cgi?id=469532

God fucking damnit. What kind of a bullcrap idea is this.

Oh and Debian guys keep pointing at PHP in #debian on freenode. Great. They’re also saying that it’s only likely to be fixed if the application(s) affected by it are sufficiently “popular”, whatever that means.

@dzuelke
Owner

Title changed from “[Expletive] Fucking Debian fucking ruined their fucking PHP package once again, and now we need to waste fucking time to fucking fix it” to “[EXPLETIVE] Fucking Debian fucking ruined their fucking PHP package once again, and now we need to waste fucking time to fucking fix it”

@dzuelke
Owner

(In 75f4659056f3fccd4f52064c779cc386592411eb) Fixed #1008: [EXPLETIVE] Fucking Debian fucking ruined their fucking PHP package once again, and now we need to waste fucking time to fucking fix it

@dzuelke
Owner

Issue closed

@dzuelke
Owner

(In 309e2ba55ac3303361cce1cfed198a6bd7957b4b) ported [3659/branches/0.11], refs #1008

@dzuelke
Owner

Attachment: Logs of the discussion in #debian on irc.freenode.net today; I removed messages unrelated to the discussion and join/part/quit events

https://github.com/agavi/trac-ticket-attachments/blob/master/1008/debian_chatlog (8.5 kB)

@hexmode

I’m working with the Debian PHP maintenance team to bundle up 5.3. If you want this changed in Debian, file a bug so I have something to point to.

@dzuelke dzuelke was assigned
This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.