Contributing Advent 21: Timezone database
Timezones have always been a pain, and Daylight Saving(s) time does not make it a lot easier. Then of course you have governments that decide to change the rules. Often that is done nicely in advance, but once in a while the rule changes are announced at the absolutely last moment, or, sometimes even after the new rules have come into effect. To track the craziness, have a look at Time Zone News, and this image to see how many different rules there are!
The changes to rules, and the changes to them are tracked by a group of volunteers that maintain the Olson TZ Database, named after the now retired David Arthur Olson. Every so often a new release is made through IANA's website. The last change happened last Tuesday, and hopefully this is the last release of this year.
The Olson TZ Database is used by a whole lot of software stacks, for example by almost every Unix system, but there are also implementations for languages. There is Yoda time for Java, and PHP's DateTime support also uses the Olson database to be able to calculate the correct local time.
Because the PHP release cycle can not keep up with the releases of the Olson database, you can update the rule set in PHP by installing newer versions of the timezonedb PECL extension, which closely follows releases of the Olson database.
As I am the maintainer of PHP's DateTime support, I am also responsible for keeping the database, and it's accompanying PECL extension up-to-date. With the latest release available through the PECL extension, websites such as http://time.is can then show you the latest, and correct, local time.
Comments
You linked "Yoda time"[sic!] to PHP's datetime URL. Did you mean http://www.joda.org/joda-time/ ...?
Indeed, I've fixed it!
Life Line
Merge branch 'xdebug_3_5'
Merged pull request #1092
Use actual PID here, as we use that to be able to connect
Created 2 main entrances; Updated a vacant shop, a furniture shop, and a cafe; Confirmed an estate_agent office, a laundry shop, and 4 other objects
Merged pull request #1091
PHP 8.6: Fixed test expectation for 'debugInfo' name in error
Add 'strace' to run-xdebug-tests.php command
Oystercatcher Parent and Chick
Standing on the edge of a lake in the Arundel Wetlands.
#birds #birdPhotography #Birdsoffediverse #Photography #Nature #Wildlife
Updated 2 main entrances
Fixed tagging and bollard location
I hiked 8.7km in 4h4m28s
Updated a restaurant
Updated a restaurant
Updated a restaurant
I walked 5.5km in 56m26s
Created an entrance
I walked 5.7km in 1h20m50s
Updated a fitness_centre; Confirmed a charging_station
I walked 4.0km in 47m13s
I walked 1.1km in 9m32s
Also, whatnow‽
`GET /icons/blank.gif HTTP/1.1" 200 398 "https://downloads.php.net/~windows/pecl/releases/?utm_source=chatgpt.com`
WTF does that need an `utm_source` for?
I sometimes wish cache expiries could be fuzzy, like 900±15 seconds. Y'know, to prevent the thundering herd effect.
Created a chemist shop
I walked 8.1km in 1h24m38s
Updated a bar


Shortlink
This article has a short URL available: https://drck.me/adv1321-afg