diff --git a/Doc/library/codecs.rst b/Doc/library/codecs.rst index b3bd6af5302..743ccba58fd 100644 --- a/Doc/library/codecs.rst +++ b/Doc/library/codecs.rst @@ -1160,6 +1160,10 @@ particular, the following variants typically exist: +-----------------+--------------------------------+--------------------------------+ | koi8_r | | Russian | +-----------------+--------------------------------+--------------------------------+ +| koi8_t | | Tajik | +| | | | +| | | .. versionadded:: 3.5 | ++-----------------+--------------------------------+--------------------------------+ | koi8_u | | Ukrainian | +-----------------+--------------------------------+--------------------------------+ | kz1048 | kz_1048, strk1048_2002, rk1048 | Kazakh | diff --git a/Doc/whatsnew/3.5.rst b/Doc/whatsnew/3.5.rst index 412d9b08a8e..48d871a3f14 100644 --- a/Doc/whatsnew/3.5.rst +++ b/Doc/whatsnew/3.5.rst @@ -234,6 +234,9 @@ Some smaller changes made to the core Python language are: * New Kazakh :ref:`codec ` ``kz1048``. (Contributed by Serhiy Storchaka in :issue:`22682`.) +* New Tajik :ref:`codec ` ``koi8_t``. (Contributed by + Serhiy Storchaka in :issue:`22681`.) + New Modules =========== diff --git a/Lib/locale.py b/Lib/locale.py index c24f73167eb..ceaa6d8ff72 100644 --- a/Lib/locale.py +++ b/Lib/locale.py @@ -699,6 +699,7 @@ locale_encoding_alias = { 'euc_kr': 'eucKR', 'utf_8': 'UTF-8', 'koi8_r': 'KOI8-R', + 'koi8_t': 'KOI8-T', 'koi8_u': 'KOI8-U', 'kz1048': 'RK1048', 'cp1251': 'CP1251', diff --git a/Lib/test/test_codecs.py b/Lib/test/test_codecs.py index e7e189d3a0c..eab07c98875 100644 --- a/Lib/test/test_codecs.py +++ b/Lib/test/test_codecs.py @@ -1822,6 +1822,7 @@ all_unicode_encodings = [ "iso8859_9", "johab", "koi8_r", + "koi8_t", "koi8_u", "kz1048", "latin_1", diff --git a/Lib/test/test_unicode.py b/Lib/test/test_unicode.py index b1d453b4785..3fcb590f694 100644 --- a/Lib/test/test_unicode.py +++ b/Lib/test/test_unicode.py @@ -2081,7 +2081,8 @@ class UnicodeTest(string_tests.CommonTest, 'cp863', 'cp865', 'cp866', 'cp1125', 'iso8859_10', 'iso8859_13', 'iso8859_14', 'iso8859_15', 'iso8859_2', 'iso8859_3', 'iso8859_4', 'iso8859_5', 'iso8859_6', - 'iso8859_7', 'iso8859_9', 'koi8_r', 'kz1048', 'latin_1', + 'iso8859_7', 'iso8859_9', + 'koi8_r', 'koi8_t', 'koi8_u', 'kz1048', 'latin_1', 'mac_cyrillic', 'mac_latin2', 'cp1250', 'cp1251', 'cp1252', 'cp1253', 'cp1254', 'cp1255', @@ -2109,14 +2110,14 @@ class UnicodeTest(string_tests.CommonTest, 'cp863', 'cp865', 'cp866', 'cp1125', 'iso8859_10', 'iso8859_13', 'iso8859_14', 'iso8859_15', 'iso8859_2', 'iso8859_4', 'iso8859_5', - 'iso8859_9', 'koi8_r', 'latin_1', + 'iso8859_9', 'koi8_r', 'koi8_u', 'latin_1', 'mac_cyrillic', 'mac_latin2', ### These have undefined mappings: #'cp1250', 'cp1251', 'cp1252', 'cp1253', 'cp1254', 'cp1255', #'cp1256', 'cp1257', 'cp1258', #'cp424', 'cp856', 'cp857', 'cp864', 'cp869', 'cp874', - #'iso8859_3', 'iso8859_6', 'iso8859_7', 'kz1048', + #'iso8859_3', 'iso8859_6', 'iso8859_7', 'koi8_t', 'kz1048', #'mac_greek', 'mac_iceland','mac_roman', 'mac_turkish', ### These fail the round-trip: diff --git a/Lib/test/test_xml_etree.py b/Lib/test/test_xml_etree.py index 5e638894819..8cd01eba86b 100644 --- a/Lib/test/test_xml_etree.py +++ b/Lib/test/test_xml_etree.py @@ -704,7 +704,7 @@ class ElementTreeTest(unittest.TestCase): 'mac-roman', 'mac-turkish', 'iso2022-jp', 'iso2022-jp-1', 'iso2022-jp-2', 'iso2022-jp-2004', 'iso2022-jp-3', 'iso2022-jp-ext', - 'koi8-r', 'koi8-u', 'kz1048', + 'koi8-r', 'koi8-t', 'koi8-u', 'kz1048', 'hz', 'ptcp154', ] for encoding in supported_encodings: diff --git a/Misc/NEWS b/Misc/NEWS index a46e80a926f..d714016550e 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -42,6 +42,8 @@ Core and Builtins Library ------- +- Issue #22681: Added support for the koi8_t encoding. + - Issue #22682: Added support for the kz1048 encoding. - Issue #23796: peak and read1 methods of BufferedReader now raise ValueError