php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #80923 timezonedb does not compile anymore with PHP 5.3.29
Submitted: 2021-03-31 12:50 UTC Modified: 2022-10-19 15:15 UTC
Votes:1
Avg. Score:5.0 ± 0.0
Reproduced:1 of 1 (100.0%)
Same Version:0 (0.0%)
Same OS:1 (100.0%)
From: phpdev at ehrhardt dot nl Assigned: derick (profile)
Status: Closed Package: *General Issues
PHP Version: Irrelevant OS: Windows VC9
Private report: No CVE-ID: None
View Add Comment Developer Edit
Welcome! If you don't have a Git account, you can't do anything here.
You can add a comment by following this link or if you reported this bug, you can edit this bug over here.
(description)
Block user comment
Status: Assign to:
Package:
Bug Type:
Summary:
From: phpdev at ehrhardt dot nl
New email:
PHP Version: OS:

 

 [2021-03-31 12:50 UTC] phpdev at ehrhardt dot nl
Description:
------------
I regularly recompile PHP 5.3.27 on Windows (VC9) when a dependency has been updated (like Curl). This time the timezonedb extension did not compile anymore. Error:

> Your version of timelib does not understand the timzonedb data format, please upgrade

This was introduced in this revision: https://svn.php.net/viewvc/pecl/timezonedb/trunk/timezonedb.h?r1=352315&r2=352314&pathrev=352315 

PHP 5.4.41 uses exactly the same timelib files on Windows and it still happlly compiled. So I changed https://svn.php.net/viewvc/pecl/timezonedb/trunk/timezonedb.c?view=markup and defined TIMELIB_SUPPORTS_V2DATA for PHP 5.3.27 as well. It compiled and loaded fine after this change.

I know PHP 5.3.27 is really old, but the PECL info still states that timezonedb is for 'PHP 5.2.0 or newer'.

Test script:
---------------
Compile timezonedb with PHP 5.3.27 on Windows.


Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2021-03-31 13:07 UTC] cmb@php.net
-Status: Open +Status: Verified -Assigned To: +Assigned To: derick
 [2021-03-31 13:07 UTC] cmb@php.net
> but the PECL info still states that timezonedb is for 'PHP 5.2.0
> or newer'.

I think that should be fixed in package.xml.
 [2021-04-01 07:07 UTC] derick@php.net
I thought I had updated that. But it shouldn't have been in a tinezonedb PECL package release at least?
 [2021-04-01 07:38 UTC] phpdev at ehrhardt dot nl
-Summary: timezonedb does not compile anymore with PHP 5.3.27 +Summary: timezonedb does not compile anymore with PHP 5.3.29
 [2021-04-01 07:38 UTC] phpdev at ehrhardt dot nl
The minimum PHP version in http://svn.php.net/viewvc/pecl/timezonedb/trunk/package.xml?view=markup still is 5.2.0.

Waht is the reason PHP 5.3.29 is excluded now? After adding PHP 5.3.29 to timezonedb.c, it compiled and loaded fine. I did not run the tests though. Are they expected to fail?

> #if PHP_VERSION_ID >= 50329 && PHP_VERSION_ID <= 50399
> # define TIMELIB_SUPPORTS_V2DATA
> #endif
 [2022-10-19 15:14 UTC] git@php.net
Automatic comment on behalf of derickr
Revision: https://github.com/php/pecl-datetime-timezonedb/commit/fb6fbdc87bd579085481f2d61c65a672ae10fe8e
Log: Fixed bug #80923: Mark earliest supported version as PHP 5.4
 [2022-10-19 15:14 UTC] git@php.net
-Status: Verified +Status: Closed
 [2022-10-19 15:15 UTC] derick@php.net
-Package: timezonedb +Package: *General Issues
 [2022-10-19 15:15 UTC] derick@php.net
PHP 5.3 would not be able to use this new data format, and the `package.xml` file was wrong. I have now corrected that.
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Tue Mar 19 03:01:29 2024 UTC