Skip to content

🐛 Various inconsistent and outdated mappings in timezone data #24536

@niranjan-uma-shankar

Description

@niranjan-uma-shankar

Issue Summary

The mapping between IANA timezone identifiers and city labels contains several inconsistencies. The issues include incorrect timezone mappings and GMT offsets for some cities, and the usage of outdated names for some cities.

1. Update city names

  • Issue: Ulaan Bataar is incorrectly written as two words (source: wikipedia).
    Suggested Fix: Update to Ulaanbataar.

  • Issue: In Chennai, Calcutta, Mumbai, New Delhi, all cities use their modern names except Calcutta, which is the former name for the city.
    Suggested Fix: Update Calcutta to Kolkata for consistency.

  • Issue: Rangoon is the former name for the city.
    Suggested Fix: Update Rangoon to Yangon.

2. Incorrect offset for Kazakhstan cities

Issue

  • Almaty and Astana, both in Kazhakstan, are currently listed under GMT+6 as separate entries.

As of March 1, 2024, Kazakhstan transitioned to a single GMT+5 timezone. From this source:

Starting the night of 29 February leading into 1 March, the cities of Astana, Almaty, and Shymkent, along with the Abai, Akmola, Almaty, Zhambyl, Zhetisu, Karagandy, Kostanai, Pavlodar, North Kazakhstan, Turkistan, Ulytau, and East Kazakhstan regions adjusted their local time by setting the clocks back one hour.

Suggested Fix

  • Update both Almaty and Astana to GMT+5.
  • Combine them into a single entry under the same timezone identifier, since they are cities belonging to the same country and timezone.

3. Incorrect offset for Novosibirsk

Issue
Novosibirsk is currently listed under GMT+6, but has observed GMT+7 year round from Jul 28th, 2016. Source wikipedia.

Suggested Fix

Move Novosibirsk to GMT+7. It could be grouped with Krasnoyarsk.

4. Incorrect offset and label for Sri Jayawardenepura

Issue

  • Listed under GMT+6, but Sri Lanka observes GMT+5:30 (no DST).
  • IANA time zone identifier for Sri Lanka is Asia/Colombo which is missing.

Suggested fix

Use the following entry, which groups the city under the correct timezone identifier, and also includes the country's capital Colombo.

{
    name: 'Asia/Colombo',
    label: '(GMT +5:30) Colombo, Sri Jayawardenepura'
}

5. Incorrect timezone for Georgetown, Guyana

Issue

`Georgetown is incorrectly mapped to GMT-3. However, it observes GMT-4 year round (no DST). Check source and IANA DB.

Suggested Fix

  • Move to GMT-4.
  • Either create a new entry with America/Guyana, or group it with existing GMT-4 entries like Caracas, La Paz.

6. Outdated and incorrect mappings for Mexican cities

Issue

  • Chihuahua, La Paz, and Mazatlan are incorrectly grouped under America/Tijuana (GMT-8).
    • Chihuahua is in GMT-6 year round (source and IANA DB). The IANA timezone identifier is America/Chihuahua.
    • La Paz and Mazatlan in Mexico observe GMT-7 year round. The IANA identifier for their timezone is America/Mazatlan (source and IANA DB).
  • Tijuana is already defined elsewhere with correct mapping.

It's also worth noting that most of Mexico (except US-border areas) discontinued observing DST (source).

Suggested Fix

  • Create a new GMT-6 entry for Chihuahua using America/Chihuahua.
  • Create a new GMT-7 entry for La Paz and Mazatlan using America/Mazatlan.
  • Remove the redundant America/Tijuana entry (already covered under Pacific Time).

Steps to Reproduce

In Ghost admin, go to /settings/timezone and click on the timezone dropdown to view the timezones mapped to cities.

Ghost Version

6.0.0-rc.0

Node.js Version

22.13.1

How did you install Ghost?

From source

Database type

SQLite3

Code of Conduct

  • I agree to be friendly and polite to people in this repository

Metadata

Metadata

Assignees

No one assigned

    Labels

    affects:adminAnything relating to Ghost Adminbug[triage] something behaving unexpectedlycommunity[triage] Community features and bugsstale[triage] Issues that were closed to to lack of traction

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions