diff -Nru tzdata-2023c/debian/changelog tzdata-2023c/debian/changelog --- tzdata-2023c/debian/changelog 2023-04-13 15:17:25.000000000 +0200 +++ tzdata-2023c/debian/changelog 2023-04-26 13:58:15.000000000 +0200 @@ -1,3 +1,16 @@ +tzdata (2023c-0ubuntu0.20.04.2) focal; urgency=medium + + * Do not update US/* timezones to their America/* counterparts. + Drop Asia/Rangoon from debconf options (was renamed to Asia/Yangon). + (Closes: #688318, LP: #772024) + * Fix inconsistencies introduced by building timezones that differ pre-1970 + (LP: #2003797): + - Do not replace Europe/Uzhgorod and Europe/Zaporozhye by Europe/Kyiv + * Test convert_timezone for consistency + * Update Mideast/Riyadh8[789] conversion target to Asia/Riyadh + + -- Benjamin Drung Wed, 26 Apr 2023 13:58:15 +0200 + tzdata (2023c-0ubuntu0.20.04.1) focal; urgency=medium * Build timezones that differ pre-1970 (LP: #2003797) diff -Nru tzdata-2023c/debian/control tzdata-2023c/debian/control --- tzdata-2023c/debian/control 2023-04-13 15:05:21.000000000 +0200 +++ tzdata-2023c/debian/control 2023-04-26 13:58:15.000000000 +0200 @@ -2,7 +2,7 @@ Section: localization Priority: required Build-Depends: debhelper-compat (= 12) -Build-Depends-Indep: gawk, po-debconf, python3, python3-tz, symlinks, icu-devtools +Build-Depends-Indep: gawk, po-debconf, python3, python3-debian, python3-tz, symlinks, icu-devtools Rules-Requires-Root: no Maintainer: Ubuntu Developers XSBC-Original-Maintainer: GNU Libc Maintainers diff -Nru tzdata-2023c/debian/po/be.po tzdata-2023c/debian/po/be.po --- tzdata-2023c/debian/po/be.po 2023-04-13 15:06:14.000000000 +0200 +++ tzdata-2023c/debian/po/be.po 2023-04-26 13:58:15.000000000 +0200 @@ -2393,13 +2393,6 @@ #. Choices #. Translators: do not translate underscores. You can use spaces instead. #: ../tzdata.templates:7001 -msgid "Rangoon" -msgstr "Рангун" - -#. Type: select -#. Choices -#. Translators: do not translate underscores. You can use spaces instead. -#: ../tzdata.templates:7001 msgid "Riyadh" msgstr "Рыяд" diff -Nru tzdata-2023c/debian/po/bg.po tzdata-2023c/debian/po/bg.po --- tzdata-2023c/debian/po/bg.po 2023-04-13 15:06:22.000000000 +0200 +++ tzdata-2023c/debian/po/bg.po 2023-04-26 13:58:15.000000000 +0200 @@ -2386,13 +2386,6 @@ #. Choices #. Translators: do not translate underscores. You can use spaces instead. #: ../tzdata.templates:7001 -msgid "Rangoon" -msgstr "Рангун" - -#. Type: select -#. Choices -#. Translators: do not translate underscores. You can use spaces instead. -#: ../tzdata.templates:7001 msgid "Riyadh" msgstr "Рияд" diff -Nru tzdata-2023c/debian/po/ca.po tzdata-2023c/debian/po/ca.po --- tzdata-2023c/debian/po/ca.po 2023-04-13 15:06:27.000000000 +0200 +++ tzdata-2023c/debian/po/ca.po 2023-04-26 13:58:15.000000000 +0200 @@ -2488,13 +2488,6 @@ msgid "Qyzylorda" msgstr "Qyzylorda" -#. Type: select -#. Choices -#. Translators: do not translate underscores. You can use spaces instead. -#: ../tzdata.templates:7001 -msgid "Rangoon" -msgstr "Rangoon" - # Gnome_2.16_Desktop [gnome-applets-locations.HEAD.ca.po] #. Type: select #. Choices diff -Nru tzdata-2023c/debian/po/cs.po tzdata-2023c/debian/po/cs.po --- tzdata-2023c/debian/po/cs.po 2023-04-13 15:06:46.000000000 +0200 +++ tzdata-2023c/debian/po/cs.po 2023-04-26 13:58:15.000000000 +0200 @@ -2369,13 +2369,6 @@ #. Choices #. Translators: do not translate underscores. You can use spaces instead. #: ../tzdata.templates:7001 -msgid "Rangoon" -msgstr "Rangún" - -#. Type: select -#. Choices -#. Translators: do not translate underscores. You can use spaces instead. -#: ../tzdata.templates:7001 msgid "Riyadh" msgstr "Rijád" diff -Nru tzdata-2023c/debian/po/da.po tzdata-2023c/debian/po/da.po --- tzdata-2023c/debian/po/da.po 2023-04-13 15:06:55.000000000 +0200 +++ tzdata-2023c/debian/po/da.po 2023-04-26 13:58:15.000000000 +0200 @@ -2365,13 +2365,6 @@ #. Choices #. Translators: do not translate underscores. You can use spaces instead. #: ../tzdata.templates:7001 -msgid "Rangoon" -msgstr "Rangoon" - -#. Type: select -#. Choices -#. Translators: do not translate underscores. You can use spaces instead. -#: ../tzdata.templates:7001 msgid "Riyadh" msgstr "Riyadh" diff -Nru tzdata-2023c/debian/po/de.po tzdata-2023c/debian/po/de.po --- tzdata-2023c/debian/po/de.po 2023-04-13 15:07:03.000000000 +0200 +++ tzdata-2023c/debian/po/de.po 2023-04-26 13:58:15.000000000 +0200 @@ -2368,13 +2368,6 @@ #. Choices #. Translators: do not translate underscores. You can use spaces instead. #: ../tzdata.templates:7001 -msgid "Rangoon" -msgstr "Rangun" - -#. Type: select -#. Choices -#. Translators: do not translate underscores. You can use spaces instead. -#: ../tzdata.templates:7001 msgid "Riyadh" msgstr "Riad" diff -Nru tzdata-2023c/debian/po/en.po tzdata-2023c/debian/po/en.po --- tzdata-2023c/debian/po/en.po 2023-04-13 15:07:28.000000000 +0200 +++ tzdata-2023c/debian/po/en.po 2023-04-26 13:58:15.000000000 +0200 @@ -2365,13 +2365,6 @@ #. Choices #. Translators: do not translate underscores. You can use spaces instead. #: ../tzdata.templates:7001 -msgid "Rangoon" -msgstr "Rangoon" - -#. Type: select -#. Choices -#. Translators: do not translate underscores. You can use spaces instead. -#: ../tzdata.templates:7001 msgid "Riyadh" msgstr "Riyadh" diff -Nru tzdata-2023c/debian/po/es.po tzdata-2023c/debian/po/es.po --- tzdata-2023c/debian/po/es.po 2023-04-13 15:07:35.000000000 +0200 +++ tzdata-2023c/debian/po/es.po 2023-04-26 13:58:15.000000000 +0200 @@ -2399,13 +2399,6 @@ #. Choices #. Translators: do not translate underscores. You can use spaces instead. #: ../tzdata.templates:7001 -msgid "Rangoon" -msgstr "Rangún" - -#. Type: select -#. Choices -#. Translators: do not translate underscores. You can use spaces instead. -#: ../tzdata.templates:7001 msgid "Riyadh" msgstr "Riad" diff -Nru tzdata-2023c/debian/po/eu.po tzdata-2023c/debian/po/eu.po --- tzdata-2023c/debian/po/eu.po 2023-04-13 15:07:42.000000000 +0200 +++ tzdata-2023c/debian/po/eu.po 2023-04-26 13:58:15.000000000 +0200 @@ -2375,13 +2375,6 @@ #. Choices #. Translators: do not translate underscores. You can use spaces instead. #: ../tzdata.templates:7001 -msgid "Rangoon" -msgstr "Rangoon" - -#. Type: select -#. Choices -#. Translators: do not translate underscores. You can use spaces instead. -#: ../tzdata.templates:7001 msgid "Riyadh" msgstr "Riyadh" diff -Nru tzdata-2023c/debian/po/fi.po tzdata-2023c/debian/po/fi.po --- tzdata-2023c/debian/po/fi.po 2023-04-13 15:07:49.000000000 +0200 +++ tzdata-2023c/debian/po/fi.po 2023-04-26 13:58:15.000000000 +0200 @@ -2374,13 +2374,6 @@ #. Choices #. Translators: do not translate underscores. You can use spaces instead. #: ../tzdata.templates:7001 -msgid "Rangoon" -msgstr "Yangôn" - -#. Type: select -#. Choices -#. Translators: do not translate underscores. You can use spaces instead. -#: ../tzdata.templates:7001 msgid "Riyadh" msgstr "Riad" diff -Nru tzdata-2023c/debian/po/fr.po tzdata-2023c/debian/po/fr.po --- tzdata-2023c/debian/po/fr.po 2023-04-13 15:07:54.000000000 +0200 +++ tzdata-2023c/debian/po/fr.po 2023-04-26 13:58:15.000000000 +0200 @@ -2376,13 +2376,6 @@ #. Choices #. Translators: do not translate underscores. You can use spaces instead. #: ../tzdata.templates:7001 -msgid "Rangoon" -msgstr "Rangoun" - -#. Type: select -#. Choices -#. Translators: do not translate underscores. You can use spaces instead. -#: ../tzdata.templates:7001 msgid "Riyadh" msgstr "Riyad" diff -Nru tzdata-2023c/debian/po/gl.po tzdata-2023c/debian/po/gl.po --- tzdata-2023c/debian/po/gl.po 2023-04-13 15:07:59.000000000 +0200 +++ tzdata-2023c/debian/po/gl.po 2023-04-26 13:58:15.000000000 +0200 @@ -2370,13 +2370,6 @@ #. Choices #. Translators: do not translate underscores. You can use spaces instead. #: ../tzdata.templates:7001 -msgid "Rangoon" -msgstr "Rangún" - -#. Type: select -#. Choices -#. Translators: do not translate underscores. You can use spaces instead. -#: ../tzdata.templates:7001 msgid "Riyadh" msgstr "O Riad" diff -Nru tzdata-2023c/debian/po/gu.po tzdata-2023c/debian/po/gu.po --- tzdata-2023c/debian/po/gu.po 2023-04-13 15:08:05.000000000 +0200 +++ tzdata-2023c/debian/po/gu.po 2023-04-26 13:58:15.000000000 +0200 @@ -2373,13 +2373,6 @@ #. Choices #. Translators: do not translate underscores. You can use spaces instead. #: ../tzdata.templates:7001 -msgid "Rangoon" -msgstr "રંગૂન" - -#. Type: select -#. Choices -#. Translators: do not translate underscores. You can use spaces instead. -#: ../tzdata.templates:7001 msgid "Riyadh" msgstr "રીયાધ" diff -Nru tzdata-2023c/debian/po/he.po tzdata-2023c/debian/po/he.po --- tzdata-2023c/debian/po/he.po 2023-04-13 15:08:10.000000000 +0200 +++ tzdata-2023c/debian/po/he.po 2023-04-26 13:58:15.000000000 +0200 @@ -2375,13 +2375,6 @@ #. Choices #. Translators: do not translate underscores. You can use spaces instead. #: ../tzdata.templates:7001 -msgid "Rangoon" -msgstr "ראנגון" - -#. Type: select -#. Choices -#. Translators: do not translate underscores. You can use spaces instead. -#: ../tzdata.templates:7001 msgid "Riyadh" msgstr "ריאד" diff -Nru tzdata-2023c/debian/po/hr.po tzdata-2023c/debian/po/hr.po --- tzdata-2023c/debian/po/hr.po 2023-04-13 15:08:15.000000000 +0200 +++ tzdata-2023c/debian/po/hr.po 2023-04-26 13:58:15.000000000 +0200 @@ -2393,13 +2393,6 @@ #. Choices #. Translators: do not translate underscores. You can use spaces instead. #: ../tzdata.templates:7001 -msgid "Rangoon" -msgstr "Rangoon" - -#. Type: select -#. Choices -#. Translators: do not translate underscores. You can use spaces instead. -#: ../tzdata.templates:7001 msgid "Riyadh" msgstr "Rijad" diff -Nru tzdata-2023c/debian/po/hu.po tzdata-2023c/debian/po/hu.po --- tzdata-2023c/debian/po/hu.po 2023-04-13 15:08:21.000000000 +0200 +++ tzdata-2023c/debian/po/hu.po 2023-04-26 13:58:15.000000000 +0200 @@ -2373,13 +2373,6 @@ #. Choices #. Translators: do not translate underscores. You can use spaces instead. #: ../tzdata.templates:7001 -msgid "Rangoon" -msgstr "Rangoon" - -#. Type: select -#. Choices -#. Translators: do not translate underscores. You can use spaces instead. -#: ../tzdata.templates:7001 msgid "Riyadh" msgstr "Rijád" diff -Nru tzdata-2023c/debian/po/id.po tzdata-2023c/debian/po/id.po --- tzdata-2023c/debian/po/id.po 2023-04-13 15:08:26.000000000 +0200 +++ tzdata-2023c/debian/po/id.po 2023-04-26 13:58:15.000000000 +0200 @@ -2391,13 +2391,6 @@ #. Choices #. Translators: do not translate underscores. You can use spaces instead. #: ../tzdata.templates:7001 -msgid "Rangoon" -msgstr "Rangoon" - -#. Type: select -#. Choices -#. Translators: do not translate underscores. You can use spaces instead. -#: ../tzdata.templates:7001 msgid "Riyadh" msgstr "Riyadh" diff -Nru tzdata-2023c/debian/po/it.po tzdata-2023c/debian/po/it.po --- tzdata-2023c/debian/po/it.po 2023-04-13 15:08:33.000000000 +0200 +++ tzdata-2023c/debian/po/it.po 2023-04-26 13:58:15.000000000 +0200 @@ -2366,13 +2366,6 @@ #. Choices #. Translators: do not translate underscores. You can use spaces instead. #: ../tzdata.templates:7001 -msgid "Rangoon" -msgstr "Yangon" - -#. Type: select -#. Choices -#. Translators: do not translate underscores. You can use spaces instead. -#: ../tzdata.templates:7001 msgid "Riyadh" msgstr "Riyad" diff -Nru tzdata-2023c/debian/po/ja.po tzdata-2023c/debian/po/ja.po --- tzdata-2023c/debian/po/ja.po 2023-04-13 15:08:38.000000000 +0200 +++ tzdata-2023c/debian/po/ja.po 2023-04-26 13:58:15.000000000 +0200 @@ -2365,13 +2365,6 @@ #. Choices #. Translators: do not translate underscores. You can use spaces instead. #: ../tzdata.templates:7001 -msgid "Rangoon" -msgstr "ラングーン" - -#. Type: select -#. Choices -#. Translators: do not translate underscores. You can use spaces instead. -#: ../tzdata.templates:7001 msgid "Riyadh" msgstr "リヤド" diff -Nru tzdata-2023c/debian/po/ku.po tzdata-2023c/debian/po/ku.po --- tzdata-2023c/debian/po/ku.po 2023-04-13 15:08:43.000000000 +0200 +++ tzdata-2023c/debian/po/ku.po 2023-04-26 13:58:15.000000000 +0200 @@ -2388,13 +2388,6 @@ #. Choices #. Translators: do not translate underscores. You can use spaces instead. #: ../tzdata.templates:7001 -msgid "Rangoon" -msgstr "Rangoon" - -#. Type: select -#. Choices -#. Translators: do not translate underscores. You can use spaces instead. -#: ../tzdata.templates:7001 msgid "Riyadh" msgstr "Riyad" diff -Nru tzdata-2023c/debian/po/lt.po tzdata-2023c/debian/po/lt.po --- tzdata-2023c/debian/po/lt.po 2023-04-13 15:08:49.000000000 +0200 +++ tzdata-2023c/debian/po/lt.po 2023-04-26 13:58:15.000000000 +0200 @@ -2383,13 +2383,6 @@ #. Choices #. Translators: do not translate underscores. You can use spaces instead. #: ../tzdata.templates:7001 -msgid "Rangoon" -msgstr "Rangūnas" - -#. Type: select -#. Choices -#. Translators: do not translate underscores. You can use spaces instead. -#: ../tzdata.templates:7001 msgid "Riyadh" msgstr "Rijadas" diff -Nru tzdata-2023c/debian/po/ml.po tzdata-2023c/debian/po/ml.po --- tzdata-2023c/debian/po/ml.po 2023-04-13 15:08:53.000000000 +0200 +++ tzdata-2023c/debian/po/ml.po 2023-04-26 13:58:15.000000000 +0200 @@ -2390,13 +2390,6 @@ #. Choices #. Translators: do not translate underscores. You can use spaces instead. #: ../tzdata.templates:7001 -msgid "Rangoon" -msgstr "റംഗൂണ്‍" - -#. Type: select -#. Choices -#. Translators: do not translate underscores. You can use spaces instead. -#: ../tzdata.templates:7001 msgid "Riyadh" msgstr "റിയാദ്" diff -Nru tzdata-2023c/debian/po/nl.po tzdata-2023c/debian/po/nl.po --- tzdata-2023c/debian/po/nl.po 2023-04-13 15:08:59.000000000 +0200 +++ tzdata-2023c/debian/po/nl.po 2023-04-26 13:58:15.000000000 +0200 @@ -2369,13 +2369,6 @@ #. Choices #. Translators: do not translate underscores. You can use spaces instead. #: ../tzdata.templates:7001 -msgid "Rangoon" -msgstr "Rangoon" - -#. Type: select -#. Choices -#. Translators: do not translate underscores. You can use spaces instead. -#: ../tzdata.templates:7001 msgid "Riyadh" msgstr "Riyadh" diff -Nru tzdata-2023c/debian/po/pl.po tzdata-2023c/debian/po/pl.po --- tzdata-2023c/debian/po/pl.po 2023-04-13 15:09:04.000000000 +0200 +++ tzdata-2023c/debian/po/pl.po 2023-04-26 13:58:15.000000000 +0200 @@ -2369,13 +2369,6 @@ #. Choices #. Translators: do not translate underscores. You can use spaces instead. #: ../tzdata.templates:7001 -msgid "Rangoon" -msgstr "Rangun" - -#. Type: select -#. Choices -#. Translators: do not translate underscores. You can use spaces instead. -#: ../tzdata.templates:7001 msgid "Riyadh" msgstr "Rijad" diff -Nru tzdata-2023c/debian/po/pt_BR.po tzdata-2023c/debian/po/pt_BR.po --- tzdata-2023c/debian/po/pt_BR.po 2023-04-13 15:09:09.000000000 +0200 +++ tzdata-2023c/debian/po/pt_BR.po 2023-04-26 13:58:15.000000000 +0200 @@ -2370,13 +2370,6 @@ #. Choices #. Translators: do not translate underscores. You can use spaces instead. #: ../tzdata.templates:7001 -msgid "Rangoon" -msgstr "Rangoon" - -#. Type: select -#. Choices -#. Translators: do not translate underscores. You can use spaces instead. -#: ../tzdata.templates:7001 msgid "Riyadh" msgstr "Riyadh" diff -Nru tzdata-2023c/debian/po/pt.po tzdata-2023c/debian/po/pt.po --- tzdata-2023c/debian/po/pt.po 2023-04-13 15:09:15.000000000 +0200 +++ tzdata-2023c/debian/po/pt.po 2023-04-26 13:58:15.000000000 +0200 @@ -2369,13 +2369,6 @@ #. Choices #. Translators: do not translate underscores. You can use spaces instead. #: ../tzdata.templates:7001 -msgid "Rangoon" -msgstr "Rangoon" - -#. Type: select -#. Choices -#. Translators: do not translate underscores. You can use spaces instead. -#: ../tzdata.templates:7001 msgid "Riyadh" msgstr "Riade" diff -Nru tzdata-2023c/debian/po/ru.po tzdata-2023c/debian/po/ru.po --- tzdata-2023c/debian/po/ru.po 2023-04-13 15:09:21.000000000 +0200 +++ tzdata-2023c/debian/po/ru.po 2023-04-26 13:58:15.000000000 +0200 @@ -2373,13 +2373,6 @@ #. Choices #. Translators: do not translate underscores. You can use spaces instead. #: ../tzdata.templates:7001 -msgid "Rangoon" -msgstr "Янгон" - -#. Type: select -#. Choices -#. Translators: do not translate underscores. You can use spaces instead. -#: ../tzdata.templates:7001 msgid "Riyadh" msgstr "Эр-Рияд" diff -Nru tzdata-2023c/debian/po/sk.po tzdata-2023c/debian/po/sk.po --- tzdata-2023c/debian/po/sk.po 2023-04-13 15:09:26.000000000 +0200 +++ tzdata-2023c/debian/po/sk.po 2023-04-26 13:58:15.000000000 +0200 @@ -2369,13 +2369,6 @@ #. Choices #. Translators: do not translate underscores. You can use spaces instead. #: ../tzdata.templates:7001 -msgid "Rangoon" -msgstr "Rangún" - -#. Type: select -#. Choices -#. Translators: do not translate underscores. You can use spaces instead. -#: ../tzdata.templates:7001 msgid "Riyadh" msgstr "Rijád" diff -Nru tzdata-2023c/debian/po/sq.po tzdata-2023c/debian/po/sq.po --- tzdata-2023c/debian/po/sq.po 2023-04-13 15:09:31.000000000 +0200 +++ tzdata-2023c/debian/po/sq.po 2023-04-26 13:58:15.000000000 +0200 @@ -2389,13 +2389,6 @@ #. Choices #. Translators: do not translate underscores. You can use spaces instead. #: ../tzdata.templates:7001 -msgid "Rangoon" -msgstr "Rangoon" - -#. Type: select -#. Choices -#. Translators: do not translate underscores. You can use spaces instead. -#: ../tzdata.templates:7001 msgid "Riyadh" msgstr "Riyadh" diff -Nru tzdata-2023c/debian/po/sv.po tzdata-2023c/debian/po/sv.po --- tzdata-2023c/debian/po/sv.po 2023-04-13 15:09:37.000000000 +0200 +++ tzdata-2023c/debian/po/sv.po 2023-04-26 13:58:15.000000000 +0200 @@ -2370,13 +2370,6 @@ #. Choices #. Translators: do not translate underscores. You can use spaces instead. #: ../tzdata.templates:7001 -msgid "Rangoon" -msgstr "Rangoon" - -#. Type: select -#. Choices -#. Translators: do not translate underscores. You can use spaces instead. -#: ../tzdata.templates:7001 msgid "Riyadh" msgstr "Riyadh" diff -Nru tzdata-2023c/debian/po/templates.pot tzdata-2023c/debian/po/templates.pot --- tzdata-2023c/debian/po/templates.pot 2023-04-13 15:09:41.000000000 +0200 +++ tzdata-2023c/debian/po/templates.pot 2023-04-26 13:58:15.000000000 +0200 @@ -2363,13 +2363,6 @@ #. Choices #. Translators: do not translate underscores. You can use spaces instead. #: ../tzdata.templates:7001 -msgid "Rangoon" -msgstr "" - -#. Type: select -#. Choices -#. Translators: do not translate underscores. You can use spaces instead. -#: ../tzdata.templates:7001 msgid "Riyadh" msgstr "" diff -Nru tzdata-2023c/debian/po/th.po tzdata-2023c/debian/po/th.po --- tzdata-2023c/debian/po/th.po 2023-04-13 15:09:46.000000000 +0200 +++ tzdata-2023c/debian/po/th.po 2023-04-26 13:58:15.000000000 +0200 @@ -2365,13 +2365,6 @@ #. Choices #. Translators: do not translate underscores. You can use spaces instead. #: ../tzdata.templates:7001 -msgid "Rangoon" -msgstr "ย่างกุ้ง" - -#. Type: select -#. Choices -#. Translators: do not translate underscores. You can use spaces instead. -#: ../tzdata.templates:7001 msgid "Riyadh" msgstr "ริยาด" diff -Nru tzdata-2023c/debian/po/tr.po tzdata-2023c/debian/po/tr.po --- tzdata-2023c/debian/po/tr.po 2023-04-13 15:09:52.000000000 +0200 +++ tzdata-2023c/debian/po/tr.po 2023-04-26 13:58:15.000000000 +0200 @@ -2367,13 +2367,6 @@ #. Choices #. Translators: do not translate underscores. You can use spaces instead. #: ../tzdata.templates:7001 -msgid "Rangoon" -msgstr "Yangoon" - -#. Type: select -#. Choices -#. Translators: do not translate underscores. You can use spaces instead. -#: ../tzdata.templates:7001 msgid "Riyadh" msgstr "Riyad" diff -Nru tzdata-2023c/debian/po/vi.po tzdata-2023c/debian/po/vi.po --- tzdata-2023c/debian/po/vi.po 2023-04-13 15:09:56.000000000 +0200 +++ tzdata-2023c/debian/po/vi.po 2023-04-26 13:58:15.000000000 +0200 @@ -2389,13 +2389,6 @@ #. Choices #. Translators: do not translate underscores. You can use spaces instead. #: ../tzdata.templates:7001 -msgid "Rangoon" -msgstr "Rangoon" - -#. Type: select -#. Choices -#. Translators: do not translate underscores. You can use spaces instead. -#: ../tzdata.templates:7001 msgid "Riyadh" msgstr "Riyadh" diff -Nru tzdata-2023c/debian/po/wo.po tzdata-2023c/debian/po/wo.po --- tzdata-2023c/debian/po/wo.po 2023-04-13 15:10:02.000000000 +0200 +++ tzdata-2023c/debian/po/wo.po 2023-04-26 13:58:15.000000000 +0200 @@ -2382,13 +2382,6 @@ #. Choices #. Translators: do not translate underscores. You can use spaces instead. #: ../tzdata.templates:7001 -msgid "Rangoon" -msgstr "Raŋguun" - -#. Type: select -#. Choices -#. Translators: do not translate underscores. You can use spaces instead. -#: ../tzdata.templates:7001 msgid "Riyadh" msgstr "Riyaad" diff -Nru tzdata-2023c/debian/rules tzdata-2023c/debian/rules --- tzdata-2023c/debian/rules 2023-04-13 15:05:37.000000000 +0200 +++ tzdata-2023c/debian/rules 2023-04-26 13:58:15.000000000 +0200 @@ -76,7 +76,7 @@ fi ; \ cd $(CURDIR)/tzgen/$$i ; \ find . -maxdepth 2 -type f -o -type l | sed -e 's#^\./##' | \ - egrep -v '^(Ashkhabad|Chungking|Dacca|Macao|Thimbu|Ulan_Bator|Faeroe|ACT|LHI|NSW|North|Queensland|South|Tasmania|Victoria|West|Argentina/ComodRivadavia|Buenos_Aires|Catamarca|Cordoba|Jujuy|Mendoza|Rosario|Louisville|Fort_Wayne|Indianapolis|Knox_IN|East-Indiana|East-Starke|Asmera|South_Pole|Saigon|Calcutta|Katmandu|Pacific-New|Kiev)$$' | \ + egrep -v '^(Ashkhabad|Chungking|Dacca|Macao|Thimbu|Ulan_Bator|Faeroe|ACT|LHI|NSW|North|Queensland|South|Tasmania|Victoria|West|Argentina/ComodRivadavia|Buenos_Aires|Catamarca|Cordoba|Jujuy|Mendoza|Rosario|Louisville|Fort_Wayne|Indianapolis|Knox_IN|East-Indiana|East-Starke|Asmera|South_Pole|Saigon|Calcutta|Katmandu|Pacific-New|Kiev|Rangoon)$$' | \ sort -n | tr '\n' ',' | sed -e 's#,#, #g' -e 's#, $$#\n#' ; \ echo "_Description: Time zone:" ; \ echo " Please select the city or region corresponding to your time zone." ; \ @@ -93,6 +93,7 @@ # The upstream tests are related to the sources. Just skip it. override_dh_auto_test: + debian/test_timezone_conversions -z "$(TZGEN)" PYTZ_TZDATADIR="$(TZGEN)" debian/tests/python override_dh_auto_install: diff -Nru tzdata-2023c/debian/tests/control tzdata-2023c/debian/tests/control --- tzdata-2023c/debian/tests/control 2023-04-13 15:05:21.000000000 +0200 +++ tzdata-2023c/debian/tests/control 2023-04-26 13:58:15.000000000 +0200 @@ -5,3 +5,8 @@ Tests: python-icu Depends: python3, python3-icu, tzdata Restrictions: allow-stderr + +Test-command: debian/test_timezone_conversions -d /var/lib/dpkg/info/ +Depends: python3, python3-debian, tzdata +Restrictions: allow-stderr superficial +Features: test-name=test_timezone_conversions diff -Nru tzdata-2023c/debian/test_timezone_conversions tzdata-2023c/debian/test_timezone_conversions --- tzdata-2023c/debian/test_timezone_conversions 1970-01-01 01:00:00.000000000 +0100 +++ tzdata-2023c/debian/test_timezone_conversions 2023-04-26 13:58:15.000000000 +0200 @@ -0,0 +1,200 @@ +#!/usr/bin/python3 + +# Author: Benjamin Drung + +"""Check convert_timezone from tzdata.config for consistency.""" + +import argparse +import logging +import os +import pathlib +import re +import subprocess +import sys +import typing + +import debian.deb822 + +LOG_FORMAT = "%(levelname)s: %(message)s" +# Special timezones that should not be selectable in debconf +SPECIAL = {"Factory", "localtime", "posixrules"} + + +class ConvertTimezone: + """Wrap convert_timezone from tzdata.config.""" + + def __init__(self, tzdata_config: pathlib.Path): + self.tzdata_config = tzdata_config + content = tzdata_config.read_text(encoding="utf-8") + match = re.search(r"convert_timezone\(\).*\n}", content, flags=re.DOTALL) + assert match, f"convert_timezone function not found in {tzdata_config}" + self.convert_timezone = match.group(0) + + def __call__(self, timezone: str) -> str: + shell_script = f"{self.convert_timezone}\nconvert_timezone '{timezone}'\n" + shell = subprocess.run( + ["/bin/sh", "-c", shell_script], + capture_output=True, + check=True, + encoding="utf-8", + ) + return shell.stdout.strip() + + def filter_converted_timezones(self, timezones): + """Return set of timezones that will be converted by convert_timezone.""" + converted = set() + for timezone in timezones: + if self(timezone) != timezone: + converted.add(timezone) + return converted + + def filter_unconverted_timezones(self, timezones): + """Return set of timezones that will not be converted by convert_timezone.""" + return timezones - self.filter_converted_timezones(timezones) + + def get_targets(self): + """Return set of conversion targets.""" + targets = set(re.findall('echo "([^"$]+)"', self.convert_timezone)) + logging.getLogger(__name__).info( + "Available conversion targets in %s: %i", self.tzdata_config, len(targets) + ) + return targets + + +def _is_tzif_file(fpath): + with open(fpath, "rb") as tz_file: + return tz_file.read(4) == b"TZif" + + +def get_available_timezones(directory: typing.Optional[pathlib.Path]): + """Return a set of available timezones in the directory. + + If directory is not set, use the sytem's default. + """ + logger = logging.getLogger(__name__) + + available = set() + tz_root = str(directory or "/usr/share/zoneinfo") + for root, dirnames, files in os.walk(tz_root): + if root == tz_root: + # right/ and posix/ are special directories and shouldn't be + # included in the output of available zones + if "right" in dirnames: + dirnames.remove("right") + if "posix" in dirnames: + dirnames.remove("posix") + + for file in files: + fpath = os.path.join(root, file) + key = os.path.relpath(fpath, start=tz_root) + if _is_tzif_file(fpath): + available.add(key) + + if not available: + logger.error("Found no timezones in %s.", tz_root) + sys.exit(1) + logger.info("Available timezones in %s: %i", directory or "system", len(available)) + return available + + +def get_debconf_choices(template_filename: pathlib.Path): + """Extract the timezone choices from the debconf template.""" + logger = logging.getLogger(__name__) + debconf_choices = set() + with template_filename.open(encoding="utf-8") as template_file: + for paragraph in debian.deb822.Deb822.iter_paragraphs(template_file): + area_match = re.match("tzdata/Zones/(.*)", paragraph["Template"]) + if not area_match: + continue + area = area_match.group(1) + choices = paragraph.get("Choices", paragraph.get("__Choices", "")) + debconf_choices.update([f"{area}/{c}" for c in choices.split(", ")]) + if not debconf_choices: + logger.error("Found no selectable timezones in %s.", template_filename) + sys.exit(1) + logger.info( + "Selectable timezones in %s: %i", template_filename, len(debconf_choices) + ) + return debconf_choices + + +def existing_dir_path(string: str) -> pathlib.Path: + """Convert string to existing dir path or raise ArgumentTypeError.""" + path = pathlib.Path(string) + if not path.is_dir(): + raise argparse.ArgumentTypeError(f"Directory {string} does not exist") + return path + + +def parse_args() -> argparse.Namespace: + """Parse command line arguments and return namespace.""" + parser = argparse.ArgumentParser() + parser.add_argument( + "-z", + "--zoneinfo-directory", + type=existing_dir_path, + help="Directory containing the generated zoneinfo files (default: system)", + ) + parser.add_argument( + "-d", + "--debian-directory", + default=pathlib.Path("debian"), + type=existing_dir_path, + help="Path to debian directory containing tzdata.config" + " and tzdata.templates (default: %(default)s)", + ) + return parser.parse_args() + + +def main() -> int: + """Check convert_timezone from tzdata.config for consistency.""" + args = parse_args() + logging.basicConfig(format=LOG_FORMAT, level=logging.INFO) + logger = logging.getLogger(__name__) + + selectable = get_debconf_choices(args.debian_directory / "tzdata.templates") + available = get_available_timezones(args.zoneinfo_directory) + convert_timezone = ConvertTimezone(args.debian_directory / "tzdata.config") + conversion_targets = convert_timezone.get_targets() + failures = 0 + + converted = convert_timezone.filter_converted_timezones(selectable) + if converted: + logger.error( + "Following %i timezones can be selected, but will be converted:\n%s", + len(converted), + "\n".join(sorted(converted)), + ) + failures += 1 + + unselectable = available - selectable + missing = convert_timezone.filter_unconverted_timezones(unselectable) - SPECIAL + if missing: + logger.warning( + "Following %i timezones cannot be selected, but are not converted:\n%s", + len(missing), + "\n".join(sorted(missing)), + ) + + targets = conversion_targets - available + if targets: + logger.error( + "Following %i timezones are conversion targets, but are not available:\n%s", + len(targets), + "\n".join(sorted(targets)), + ) + failures += 1 + + targets = conversion_targets - selectable + if targets: + logger.warning( + "Following %i timezones are conversion targets, but are not selectable:\n%s", + len(targets), + "\n".join(sorted(targets)), + ) + + return failures + + +if __name__ == "__main__": + sys.exit(main()) diff -Nru tzdata-2023c/debian/tzdata.config tzdata-2023c/debian/tzdata.config --- tzdata-2023c/debian/tzdata.config 2023-04-13 15:05:21.000000000 +0200 +++ tzdata-2023c/debian/tzdata.config 2023-04-26 13:58:15.000000000 +0200 @@ -164,12 +164,6 @@ "Europe/Kiev") echo "Europe/Kyiv" ;; - "Europe/Uzhgorod") - echo "Europe/Kyiv" - ;; - "Europe/Zaporozhye") - echo "Europe/Kyiv" - ;; "GB") echo "Europe/London" ;; @@ -231,13 +225,13 @@ echo "America/Mexico_City" ;; "Mideast/Riyadh87") - echo "Asia/Riyadh87" + echo "Asia/Riyadh" ;; "Mideast/Riyadh88") - echo "Asia/Riyadh88" + echo "Asia/Riyadh" ;; "Mideast/Riyadh89") - echo "Asia/Riyadh89" + echo "Asia/Riyadh" ;; "MST") echo "SystemV/MST7" @@ -284,42 +278,9 @@ "Universal") echo "Etc/UTC" ;; - "US/Alaska") - echo "America/Anchorage" - ;; - "US/Aleutian") - echo "America/Adak" - ;; - "US/Arizona") - echo "America/Phoenix" - ;; - "US/Central") - echo "America/Chicago" - ;; "US/East-Indiana") echo "America/Indianapolis" ;; - "US/Eastern") - echo "America/New_York" - ;; - "US/Hawaii") - echo "Pacific/Honolulu" - ;; - "US/Indiana-Starke") - echo "America/Indianapolis" - ;; - "US/Michigan") - echo "America/Detroit" - ;; - "US/Mountain") - echo "America/Denver" - ;; - "US/Pacific") - echo "America/Los_Angeles" - ;; - "US/Samoa") - echo "Pacific/Pago_Pago" - ;; "UTC") echo "Etc/UTC" ;; diff -Nru tzdata-2023c/debian/tzdata.templates tzdata-2023c/debian/tzdata.templates --- tzdata-2023c/debian/tzdata.templates 2023-04-13 15:16:13.000000000 +0200 +++ tzdata-2023c/debian/tzdata.templates 2023-04-26 13:58:15.000000000 +0200 @@ -55,7 +55,7 @@ Type: select # Translators: do not translate underscores. You can use spaces instead. #flag:partial -__Choices: Aden, Almaty, Amman, Anadyr, Aqtau, Aqtobe, Ashgabat, Atyrau, Baghdad, Bahrain, Baku, Bangkok, Barnaul, Beirut, Bishkek, Brunei, Chita, Choibalsan, Chongqing, Colombo, Damascus, Dhaka, Dili, Dubai, Dushanbe, Famagusta, Gaza, Hanoi, Harbin, Hebron, Ho_Chi_Minh, Hong_Kong, Hovd, Irkutsk, Istanbul, Jakarta, Jayapura, Jerusalem, Kabul, Kamchatka, Karachi, Kashgar, Kathmandu, Khandyga, Kolkata, Krasnoyarsk, Kuala_Lumpur, Kuching, Kuwait, Macau, Magadan, Makassar, Manila, Muscat, Nicosia, Novokuznetsk, Novosibirsk, Omsk, Oral, Phnom_Penh, Pontianak, Pyongyang, Qatar, Qostanay, Qyzylorda, Rangoon, Riyadh, Sakhalin, Samarkand, Seoul, Shanghai, Singapore, Srednekolymsk, Taipei, Tashkent, Tbilisi, Tehran, Tel_Aviv, Thimphu, Tokyo, Tomsk, Ujung_Pandang, Ulaanbaatar, Urumqi, Ust-Nera, Vientiane, Vladivostok, Yakutsk, Yangon, Yekaterinburg, Yerevan +__Choices: Aden, Almaty, Amman, Anadyr, Aqtau, Aqtobe, Ashgabat, Atyrau, Baghdad, Bahrain, Baku, Bangkok, Barnaul, Beirut, Bishkek, Brunei, Chita, Choibalsan, Chongqing, Colombo, Damascus, Dhaka, Dili, Dubai, Dushanbe, Famagusta, Gaza, Hanoi, Harbin, Hebron, Ho_Chi_Minh, Hong_Kong, Hovd, Irkutsk, Istanbul, Jakarta, Jayapura, Jerusalem, Kabul, Kamchatka, Karachi, Kashgar, Kathmandu, Khandyga, Kolkata, Krasnoyarsk, Kuala_Lumpur, Kuching, Kuwait, Macau, Magadan, Makassar, Manila, Muscat, Nicosia, Novokuznetsk, Novosibirsk, Omsk, Oral, Phnom_Penh, Pontianak, Pyongyang, Qatar, Qostanay, Qyzylorda, Riyadh, Sakhalin, Samarkand, Seoul, Shanghai, Singapore, Srednekolymsk, Taipei, Tashkent, Tbilisi, Tehran, Tel_Aviv, Thimphu, Tokyo, Tomsk, Ujung_Pandang, Ulaanbaatar, Urumqi, Ust-Nera, Vientiane, Vladivostok, Yakutsk, Yangon, Yekaterinburg, Yerevan _Description: Time zone: Please select the city or region corresponding to your time zone.