Ostatnio otrzymałem powiadomienie na moim telefonie informujące o dostępności nowych definicji stref czasowych i konieczności ponownego uruchomienia telefonu. Nie przypominam sobie, żebym widział tego typu powiadomienie w przeszłości, ale na podstawie niektórych z moich ostatnich projektów analizy danych miałem dobre wyobrażenie, o co może chodzić.
The Internet Assigned Numbers Authority (IANA) utrzymuje bazę danych, bazę danych tz, zawierającą kod i dane, które reprezentują historię czasu lokalnego dla wielu lokalizacji na całym świecie. Używając definicji stref czasowych zawartych w bazie danych tz można określić przesunięcie UTC dla danej strefy czasowej w konkretnym dniu. Obejmuje to definicje początku i końca czasu letniego, a także kompletne zmiany strefy czasowej dla danego kraju lub regionu. Informacje te zmieniają się częściej niż można by przypuszczać. Na przykład, ostatnia zmiana w bazie danych dodała Fidżi zaczynające przestrzegać czasu letniego od drugiej niedzieli listopada od 2019 r. zamiast pierwszej niedzieli. Dane zawarte w tej bazie danych są złożone i wykraczają poza zakres tego artykułu.
Jeśli napisałeś kod do konwersji czasu z jednej strefy czasowej na inną, korzystasz z wielu aplikacji, które muszą konwertować między strefami czasowymi, lub korzystasz z witryn internetowych do wykonywania konwersji, to prawie na pewno w jakiś sposób lub w jakiejś formie współdziałałeś z bazą danych tz. Baza danych jest zazwyczaj osadzona w systemach oprogramowania, takich jak systemy operacyjne (Windows, Android, iOS, itp.) oraz w środowiskach jako biblioteki (np. Java, Python i .Net, itp.).
Baza danych tz jest okresowo aktualizowana w celu odzwierciedlenia zmian dokonanych przez organy polityczne w granicach stref czasowych, przesunięciach UTC i zasadach oszczędzania światła dziennego. Jest to ważne dla programistów i twórców oprogramowania, aby o tym pamiętać, ponieważ zmiany te mogą mieć wpływ na użytkowników końcowych i że aktualizacje kodu lub bibliotek mogą być wymagane, aby odzwierciedlić zmiany, zwłaszcza jeśli nie były one aktualizowane od kilku lat. Ważne jest również, aby użytkownicy końcowi aktualizowali oprogramowanie, aby zapewnić, że biblioteki używane przez aplikacje na urządzeniach takich jak komputery i telefony zawierają ostatnie zmiany w bazie danych tz w celu prawidłowego przeliczania czasu pomiędzy różnymi strefami.
Więc, co jest zawarte w najnowszych zmianach? Aktualizacja bazy danych tz została wydana 23 kwietnia 2020 (2020a) w celu uwzględnienia aktualizacji następujących informacji:
- Maroko obecnie stale przestrzega czasu letniego (UTC+01) przez cały rok, z wyjątkiem miesiąca Ramadan, w którym powraca do swojej oryginalnej strefy czasowej UTC. Początkowo szacowano, że Maroko zmieni się z powrotem na UTC+1 w dniu 24 maja 2020 r. (koniec Ramadanu), jednak oficjalnie ogłoszono, że zmiana czasu faktycznie nastąpi w dniu 31 maja 2020 r.
- Kanadyjskie terytorium Jukon ogłosiło, że będzie przestrzegać stałego czasu letniego na Pacyfiku (UTC-07) przez cały rok zamiast powrotu do czasu standardowego na Pacyfiku (UTC-08) w listopadzie 2020 r.
- Dodanie czasu letniego dla Szanghaju w 1919 r.
W wielkim schemacie rzeczy zmiany te wiele wydają się niewielkie, ale w niektórych zastosowaniach użycie nieprawidłowo przeliczonych czasów może mieć poważne konsekwencje.
.