tzf Spring 2026 Update

It has been a few years since the tzf project family was started. The last systematic look back at its development history was History of package tzf in early 2023. Since then, there have been various updates and maintenance work, mostly focused on non-core optimizations and supplementary features. In spring 2026, several long-pending important changes were finally completed: Introducing topology-aware processing to eliminate gaps and overlaps introduced during polygon simplification; Based on topology-aware processing, developing a more efficient data distribution format — ~17 MB for full-precision data and ~5.4 MB for simplified data; Introducing YStripes index acceleration, inspired by the tg project. Topology-Aware Processing The raw data is essentially a collection of polygons. Because the raw boundaries are highly detailed, the data volume is large, so polygon simplification is necessary. Many of these polygons share boundaries, but in the previous approach, each polygon was simplified independently using RDP. This caused a known issue that existed since the project’s early days: gaps appearing in areas that should be fully covered, and unwanted polygon overlaps introduced by simplification: ...

 ·  · 8 min · 1665 words · ringsaturn

tzf libraries: fast timezone conversion for GPS coordinates

Please see https://project-tzf.ringsaturn.me for the summary of the project tzf.

 · 1 min · 10 words

Group world cities by timezone

A simple example of how to group world cities by timezone

 · 4 min · 725 words · ringsaturn

Released pg-tzf: High-Performance Lat/Lon → Time Zone PostgreSQL Extension

Developed and released pg-tzf, a PostgreSQL extension providing microsecond-level latitude/longitude to time zone conversion, based on the Rust library tzf-rs and the pgrx framework.

 · 1 min · 145 words · ringsaturn

History of package tzf

Introduces the evolution of tzf, from the initial implementation in Go, to the later Python extension, and finally to the current Rust implementation with a PyO3 wrapper.

 · 4 min · 1875 words · ringsaturn