[Python-modules-commits] [python-idna] 01/04: Import python-idna_2.1.orig.tar.gz

Tristan Seligmann mithrandi at moszumanska.debian.org
Wed Apr 6 21:18:40 UTC 2016


This is an automated email from the git hooks/post-receive script.

mithrandi pushed a commit to branch master
in repository python-idna.

commit 0034b0a2ecbc3c76abdd699244ae8a35f4efc1af
Author: Tristan Seligmann <mithrandi at debian.org>
Date:   Wed Apr 6 23:16:43 2016 +0200

    Import python-idna_2.1.orig.tar.gz
---
 HISTORY.rst               |   13 +-
 LICENSE.rst               |    2 +-
 PKG-INFO                  |   49 +-
 README.rst                |   47 +-
 idna.egg-info/PKG-INFO    |   49 +-
 idna.egg-info/SOURCES.txt |    6 +-
 idna.egg-info/pbr.json    |    1 -
 idna/core.py              |    9 +-
 idna/idnadata.py          | 4129 ++++++++++++---------------------------------
 idna/intranges.py         |   46 +
 setup.py                  |    2 +-
 tests/test_idna_codec.py  |    2 +-
 tests/test_idna_uts46.py  |    2 +
 tests/test_intranges.py   |   61 +
 tools/build-idnadata.py   |   43 +-
 tools/build-uts46data.py  |   10 +-
 tools/intranges.py        |   46 +
 17 files changed, 1374 insertions(+), 3143 deletions(-)

diff --git a/HISTORY.rst b/HISTORY.rst
index f8460f3..d18fd09 100644
--- a/HISTORY.rst
+++ b/HISTORY.rst
@@ -3,6 +3,18 @@
 History
 -------
 
+2.1 (2016-03-20)
+++++++++++++++++
+
+- Memory consumption optimizations. The library should consume significantly
+  less memory through smarter data structures being used to represent
+  relevant Unicode properties. Many thanks to Shivaram Lingamneni for this
+  patch.
+- Patches to make library work better with Python 2.6. The core library
+  currently works however the unit testing does not. (Thanks, Robert
+  Buchholz)
+- Better affix all Unicode codepoint properties to a specific version.
+
 2.0 (2015-05-18)
 ++++++++++++++++
 
@@ -10,7 +22,6 @@ History
   Technical Standard #46). Big thanks to Jon Ribbens who contributed this
   functionality.
 
-
 1.1 (2015-01-27)
 ++++++++++++++++
 
diff --git a/LICENSE.rst b/LICENSE.rst
index 738d92b..27fda5d 100644
--- a/LICENSE.rst
+++ b/LICENSE.rst
@@ -1,7 +1,7 @@
 License
 -------
 
-Copyright (c) 2013-2015, Kim Davies. All rights reserved.
+Copyright (c) 2013-2016, Kim Davies. All rights reserved.
 
 Redistribution and use in source and binary forms, with or without
 modification, are permitted provided that the following conditions are met:
diff --git a/PKG-INFO b/PKG-INFO
index b721731..bb5187c 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,6 +1,6 @@
 Metadata-Version: 1.1
 Name: idna
-Version: 2.0
+Version: 2.1
 Summary: Internationalized Domain Names in Applications (IDNA)
 Home-page: https://github.com/kjd/idna
 Author: Kim Davies
@@ -11,12 +11,15 @@ Description: Internationalized Domain Names in Applications (IDNA)
         
         A library to support the Internationalised Domain Names in Applications
         (IDNA) protocol as specified in `RFC 5891 <http://tools.ietf.org/html/rfc5891>`_.
-        This version of the protocol is often referred to as “IDNA2008” and can 
-        produce different results from the earlier standard from 2003.
+        This version of the protocol is often referred to as “IDNA2008”.
         
-        The library is also intended to act as a suitable drop-in replacement for
+        This library also provides support for Unicode Technical Standard 46,
+        `Unicode IDNA Compatibility Processing <http://unicode.org/reports/tr46/>`_.
+        
+        The library is also intended to act as a suitable replacement for
         the “encodings.idna” module that comes with the Python standard library
-        but currently only supports the older 2003 specification.
+        but currently only supports the older, deprecated IDNA specification
+        (`RFC 3490 <http://tools.ietf.org/html/rfc3490>`_).
         
         Its basic functions are simply executed:
         
@@ -91,15 +94,19 @@ Description: Internationalized Domain Names in Applications (IDNA)
         Compatibility Mapping (UTS #46)
         +++++++++++++++++++++++++++++++
         
-        As described in RFC 5895, the IDNA specification no longer including mappings
-        from different forms of input that a user may enter, to the form that is provided
-        to the IDNA functions. This functionality is now a local user-interface issue
-        distinct from the IDNA functionality.
+        As described in `RFC 5895 <http://tools.ietf.org/html/rfc5895>`_, the IDNA
+        specification no longer including mappings from different forms of input that
+        a user may enter, to the form that is provided to the IDNA functions. This
+        functionality is now considered by the specification to be a local
+        user-interface issue distinct from IDNA conversion functionality.
         
-        The Unicode Consortium has developed one such user-level mapping, known as
-        `Unicode IDNA Compatibility Processing <http://unicode.org/reports/tr46/>`_.
-        It provides for both transitional mapping and non-transitional mapping described
-        in this document.
+        This library support one user-level mapping, that developed by the Unicode
+        Consortium, known as `Unicode IDNA Compatibility Processing <http://unicode.org/reports/tr46/>`_.
+        It provides for both regular mapping and transitional mapping.
+        
+        For example, "Königsgäßchen" is not a permissible label as LATIN CAPITAL
+        LETTER K is not allowed (as are capital letters in general). UTS46 will convert
+        this into lower case.
         
         .. code-block:: pycon
         
@@ -109,11 +116,23 @@ Description: Internationalized Domain Names in Applications (IDNA)
             idna.core.InvalidCodepoint: Codepoint U+004B at position 1 of u'K\xf6nigsg\xe4\xdfchen' not allowed
             >>> idna.encode(u'Königsgäßchen', uts46=True)
             'xn--knigsgchen-b4a3dun'
+        
+        Transitional processing provides conversions to help transition from the older
+        2003 standard to the current standard. For example, in the original IDNA
+        specification, the LATIN SMALL LETTER SHARP S (ß) was converted into two
+        LATIN SMALL LETTER S (ss), whereas in the current IDNA specification this
+        conversion is not performed.
+        
+        .. code-block:: pycon
+        
             >>> idna.encode(u'Königsgäßchen', uts46=True, transitional=True)
             'xn--knigsgsschen-lcb0w'
         
-        Note that implementors should use transitional processing with caution as the outputs
-        of the functions may differ from what is expected, as noted in the example.
+        Implementors should use transitional processing with caution, only in rare
+        cases where conversion from legacy labels to current labels must be performed
+        (i.e. IDNA implementations that pre-date 2008). For typical applications
+        that just need to convert labels, transitional processing is unlikely to be
+        beneficial and could produce unexpected incompatible results.
         
         ``encodings.idna`` Compatibility
         ++++++++++++++++++++++++++++++++
diff --git a/README.rst b/README.rst
index eb79b18..929000e 100644
--- a/README.rst
+++ b/README.rst
@@ -3,12 +3,15 @@ Internationalized Domain Names in Applications (IDNA)
 
 A library to support the Internationalised Domain Names in Applications
 (IDNA) protocol as specified in `RFC 5891 <http://tools.ietf.org/html/rfc5891>`_.
-This version of the protocol is often referred to as “IDNA2008” and can 
-produce different results from the earlier standard from 2003.
+This version of the protocol is often referred to as “IDNA2008”.
 
-The library is also intended to act as a suitable drop-in replacement for
+This library also provides support for Unicode Technical Standard 46,
+`Unicode IDNA Compatibility Processing <http://unicode.org/reports/tr46/>`_.
+
+The library is also intended to act as a suitable replacement for
 the “encodings.idna” module that comes with the Python standard library
-but currently only supports the older 2003 specification.
+but currently only supports the older, deprecated IDNA specification
+(`RFC 3490 <http://tools.ietf.org/html/rfc3490>`_).
 
 Its basic functions are simply executed:
 
@@ -83,15 +86,19 @@ functions if necessary:
 Compatibility Mapping (UTS #46)
 +++++++++++++++++++++++++++++++
 
-As described in RFC 5895, the IDNA specification no longer including mappings
-from different forms of input that a user may enter, to the form that is provided
-to the IDNA functions. This functionality is now a local user-interface issue
-distinct from the IDNA functionality.
+As described in `RFC 5895 <http://tools.ietf.org/html/rfc5895>`_, the IDNA
+specification no longer including mappings from different forms of input that
+a user may enter, to the form that is provided to the IDNA functions. This
+functionality is now considered by the specification to be a local
+user-interface issue distinct from IDNA conversion functionality.
 
-The Unicode Consortium has developed one such user-level mapping, known as
-`Unicode IDNA Compatibility Processing <http://unicode.org/reports/tr46/>`_.
-It provides for both transitional mapping and non-transitional mapping described
-in this document.
+This library support one user-level mapping, that developed by the Unicode
+Consortium, known as `Unicode IDNA Compatibility Processing <http://unicode.org/reports/tr46/>`_.
+It provides for both regular mapping and transitional mapping.
+
+For example, "Königsgäßchen" is not a permissible label as LATIN CAPITAL
+LETTER K is not allowed (as are capital letters in general). UTS46 will convert
+this into lower case.
 
 .. code-block:: pycon
 
@@ -101,11 +108,23 @@ in this document.
     idna.core.InvalidCodepoint: Codepoint U+004B at position 1 of u'K\xf6nigsg\xe4\xdfchen' not allowed
     >>> idna.encode(u'Königsgäßchen', uts46=True)
     'xn--knigsgchen-b4a3dun'
+
+Transitional processing provides conversions to help transition from the older
+2003 standard to the current standard. For example, in the original IDNA
+specification, the LATIN SMALL LETTER SHARP S (ß) was converted into two
+LATIN SMALL LETTER S (ss), whereas in the current IDNA specification this
+conversion is not performed.
+
+.. code-block:: pycon
+
     >>> idna.encode(u'Königsgäßchen', uts46=True, transitional=True)
     'xn--knigsgsschen-lcb0w'
 
-Note that implementors should use transitional processing with caution as the outputs
-of the functions may differ from what is expected, as noted in the example.
+Implementors should use transitional processing with caution, only in rare
+cases where conversion from legacy labels to current labels must be performed
+(i.e. IDNA implementations that pre-date 2008). For typical applications
+that just need to convert labels, transitional processing is unlikely to be
+beneficial and could produce unexpected incompatible results.
 
 ``encodings.idna`` Compatibility
 ++++++++++++++++++++++++++++++++
diff --git a/idna.egg-info/PKG-INFO b/idna.egg-info/PKG-INFO
index b721731..bb5187c 100644
--- a/idna.egg-info/PKG-INFO
+++ b/idna.egg-info/PKG-INFO
@@ -1,6 +1,6 @@
 Metadata-Version: 1.1
 Name: idna
-Version: 2.0
+Version: 2.1
 Summary: Internationalized Domain Names in Applications (IDNA)
 Home-page: https://github.com/kjd/idna
 Author: Kim Davies
@@ -11,12 +11,15 @@ Description: Internationalized Domain Names in Applications (IDNA)
         
         A library to support the Internationalised Domain Names in Applications
         (IDNA) protocol as specified in `RFC 5891 <http://tools.ietf.org/html/rfc5891>`_.
-        This version of the protocol is often referred to as “IDNA2008” and can 
-        produce different results from the earlier standard from 2003.
+        This version of the protocol is often referred to as “IDNA2008”.
         
-        The library is also intended to act as a suitable drop-in replacement for
+        This library also provides support for Unicode Technical Standard 46,
+        `Unicode IDNA Compatibility Processing <http://unicode.org/reports/tr46/>`_.
+        
+        The library is also intended to act as a suitable replacement for
         the “encodings.idna” module that comes with the Python standard library
-        but currently only supports the older 2003 specification.
+        but currently only supports the older, deprecated IDNA specification
+        (`RFC 3490 <http://tools.ietf.org/html/rfc3490>`_).
         
         Its basic functions are simply executed:
         
@@ -91,15 +94,19 @@ Description: Internationalized Domain Names in Applications (IDNA)
         Compatibility Mapping (UTS #46)
         +++++++++++++++++++++++++++++++
         
-        As described in RFC 5895, the IDNA specification no longer including mappings
-        from different forms of input that a user may enter, to the form that is provided
-        to the IDNA functions. This functionality is now a local user-interface issue
-        distinct from the IDNA functionality.
+        As described in `RFC 5895 <http://tools.ietf.org/html/rfc5895>`_, the IDNA
+        specification no longer including mappings from different forms of input that
+        a user may enter, to the form that is provided to the IDNA functions. This
+        functionality is now considered by the specification to be a local
+        user-interface issue distinct from IDNA conversion functionality.
         
-        The Unicode Consortium has developed one such user-level mapping, known as
-        `Unicode IDNA Compatibility Processing <http://unicode.org/reports/tr46/>`_.
-        It provides for both transitional mapping and non-transitional mapping described
-        in this document.
+        This library support one user-level mapping, that developed by the Unicode
+        Consortium, known as `Unicode IDNA Compatibility Processing <http://unicode.org/reports/tr46/>`_.
+        It provides for both regular mapping and transitional mapping.
+        
+        For example, "Königsgäßchen" is not a permissible label as LATIN CAPITAL
+        LETTER K is not allowed (as are capital letters in general). UTS46 will convert
+        this into lower case.
         
         .. code-block:: pycon
         
@@ -109,11 +116,23 @@ Description: Internationalized Domain Names in Applications (IDNA)
             idna.core.InvalidCodepoint: Codepoint U+004B at position 1 of u'K\xf6nigsg\xe4\xdfchen' not allowed
             >>> idna.encode(u'Königsgäßchen', uts46=True)
             'xn--knigsgchen-b4a3dun'
+        
+        Transitional processing provides conversions to help transition from the older
+        2003 standard to the current standard. For example, in the original IDNA
+        specification, the LATIN SMALL LETTER SHARP S (ß) was converted into two
+        LATIN SMALL LETTER S (ss), whereas in the current IDNA specification this
+        conversion is not performed.
+        
+        .. code-block:: pycon
+        
             >>> idna.encode(u'Königsgäßchen', uts46=True, transitional=True)
             'xn--knigsgsschen-lcb0w'
         
-        Note that implementors should use transitional processing with caution as the outputs
-        of the functions may differ from what is expected, as noted in the example.
+        Implementors should use transitional processing with caution, only in rare
+        cases where conversion from legacy labels to current labels must be performed
+        (i.e. IDNA implementations that pre-date 2008). For typical applications
+        that just need to convert labels, transitional processing is unlikely to be
+        beneficial and could produce unexpected incompatible results.
         
         ``encodings.idna`` Compatibility
         ++++++++++++++++++++++++++++++++
diff --git a/idna.egg-info/SOURCES.txt b/idna.egg-info/SOURCES.txt
index 38e561b..79daa28 100644
--- a/idna.egg-info/SOURCES.txt
+++ b/idna.egg-info/SOURCES.txt
@@ -8,11 +8,11 @@ idna/codec.py
 idna/compat.py
 idna/core.py
 idna/idnadata.py
+idna/intranges.py
 idna/uts46data.py
 idna.egg-info/PKG-INFO
 idna.egg-info/SOURCES.txt
 idna.egg-info/dependency_links.txt
-idna.egg-info/pbr.json
 idna.egg-info/top_level.txt
 tests/IdnaTest.txt.gz
 tests/__init__.py
@@ -20,5 +20,7 @@ tests/test_idna.py
 tests/test_idna_codec.py
 tests/test_idna_compat.py
 tests/test_idna_uts46.py
+tests/test_intranges.py
 tools/build-idnadata.py
-tools/build-uts46data.py
\ No newline at end of file
+tools/build-uts46data.py
+tools/intranges.py
\ No newline at end of file
diff --git a/idna.egg-info/pbr.json b/idna.egg-info/pbr.json
deleted file mode 100644
index 086d6e8..0000000
--- a/idna.egg-info/pbr.json
+++ /dev/null
@@ -1 +0,0 @@
-{"is_release": true, "git_version": "bb6e94c"}
\ No newline at end of file
diff --git a/idna/core.py b/idna/core.py
index 35b2803..ff3b38d 100644
--- a/idna/core.py
+++ b/idna/core.py
@@ -3,6 +3,7 @@ import bisect
 import unicodedata
 import re
 import sys
+from .intranges import intranges_contain
 
 _virama_combining_class = 9
 _alabel_prefix = b'xn--'
@@ -36,7 +37,7 @@ def _combining_class(cp):
     return unicodedata.combining(unichr(cp))
 
 def _is_script(cp, script):
-    return ord(cp) in idnadata.scripts[script]
+    return intranges_contain(ord(cp), idnadata.scripts[script])
 
 def _punycode(s):
     return s.encode('punycode')
@@ -240,12 +241,12 @@ def check_label(label):
 
     for (pos, cp) in enumerate(label):
         cp_value = ord(cp)
-        if cp_value in idnadata.codepoint_classes['PVALID']:
+        if intranges_contain(cp_value, idnadata.codepoint_classes['PVALID']):
             continue
-        elif cp_value in idnadata.codepoint_classes['CONTEXTJ']:
+        elif intranges_contain(cp_value, idnadata.codepoint_classes['CONTEXTJ']):
             if not valid_contextj(label, pos):
                 raise InvalidCodepointContext('Joiner {0} not allowed at position {1} in {2}'.format(_unot(cp_value), pos+1, repr(label)))
-        elif cp_value in idnadata.codepoint_classes['CONTEXTO']:
+        elif intranges_contain(cp_value, idnadata.codepoint_classes['CONTEXTO']):
             if not valid_contexto(label, pos):
                 raise InvalidCodepointContext('Codepoint {0} not allowed at position {1} in {2}'.format(_unot(cp_value), pos+1, repr(label)))
         else:
diff --git a/idna/idnadata.py b/idna/idnadata.py
index e2867e5..2bffe52 100644
--- a/idna/idnadata.py
+++ b/idna/idnadata.py
@@ -1,1061 +1,84 @@
 # This file is automatically generated by build-idnadata.py
 
 scripts = {
-    'Arabic': frozenset(
-        list(range(0x600,0x605)) +
-        list(range(0x606,0x60c)) +
-        list(range(0x60d,0x61b)) +
-        [0x61e] +
-        list(range(0x620,0x640)) +
-        list(range(0x641,0x64b)) +
-        list(range(0x656,0x660)) +
-        list(range(0x66a,0x670)) +
-        list(range(0x671,0x6dd)) +
-        list(range(0x6de,0x700)) +
-        list(range(0x750,0x780)) +
-        list(range(0x8a0,0x8b3)) +
-        list(range(0x8e4,0x900)) +
-        list(range(0xfb50,0xfbc2)) +
-        list(range(0xfbd3,0xfd3e)) +
-        list(range(0xfd50,0xfd90)) +
-        list(range(0xfd92,0xfdc8)) +
-        list(range(0xfdf0,0xfdfe)) +
-        list(range(0xfe70,0xfe75)) +
-        list(range(0xfe76,0xfefd)) +
-        list(range(0x10e60,0x10e7f)) +
-        list(range(0x1ee00,0x1ee04)) +
-        list(range(0x1ee05,0x1ee20)) +
-        list(range(0x1ee21,0x1ee23)) +
-        [0x1ee24] +
-        [0x1ee27] +
-        list(range(0x1ee29,0x1ee33)) +
-        list(range(0x1ee34,0x1ee38)) +
-        [0x1ee39] +
-        [0x1ee3b] +
-        [0x1ee42] +
-        [0x1ee47] +
-        [0x1ee49] +
-        [0x1ee4b] +
-        list(range(0x1ee4d,0x1ee50)) +
-        list(range(0x1ee51,0x1ee53)) +
-        [0x1ee54] +
-        [0x1ee57] +
-        [0x1ee59] +
-        [0x1ee5b] +
-        [0x1ee5d] +
-        [0x1ee5f] +
-        list(range(0x1ee61,0x1ee63)) +
-        [0x1ee64] +
-        list(range(0x1ee67,0x1ee6b)) +
-        list(range(0x1ee6c,0x1ee73)) +
-        list(range(0x1ee74,0x1ee78)) +
-        list(range(0x1ee79,0x1ee7d)) +
-        [0x1ee7e] +
-        list(range(0x1ee80,0x1ee8a)) +
-        list(range(0x1ee8b,0x1ee9c)) +
-        list(range(0x1eea1,0x1eea4)) +
-        list(range(0x1eea5,0x1eeaa)) +
-        list(range(0x1eeab,0x1eebc)) +
-        list(range(0x1eef0,0x1eef2))
-    ),
-    'Armenian': frozenset(
-        list(range(0x531,0x557)) +
-        list(range(0x559,0x560)) +
-        list(range(0x561,0x588)) +
-        [0x58a] +
-        list(range(0x58d,0x590)) +
-        list(range(0xfb13,0xfb18))
-    ),
-    'Avestan': frozenset(
-        list(range(0x10b00,0x10b36)) +
-        list(range(0x10b39,0x10b40))
-    ),
-    'Balinese': frozenset(
-        list(range(0x1b00,0x1b4c)) +
-        list(range(0x1b50,0x1b7d))
-    ),
-    'Bamum': frozenset(
-        list(range(0xa6a0,0xa6f8)) +
-        list(range(0x16800,0x16a39))
-    ),
-    'Bassa_Vah': frozenset(
-        list(range(0x16ad0,0x16aee)) +
-        list(range(0x16af0,0x16af6))
-    ),
-    'Batak': frozenset(
-        list(range(0x1bc0,0x1bf4)) +
-        list(range(0x1bfc,0x1c00))
-    ),
-    'Bengali': frozenset(
-        list(range(0x980,0x984)) +
-        list(range(0x985,0x98d)) +
-        list(range(0x98f,0x991)) +
-        list(range(0x993,0x9a9)) +
-        list(range(0x9aa,0x9b1)) +
-        [0x9b2] +
-        list(range(0x9b6,0x9ba)) +
-        list(range(0x9bc,0x9c5)) +
-        list(range(0x9c7,0x9c9)) +
-        list(range(0x9cb,0x9cf)) +
-        [0x9d7] +
-        list(range(0x9dc,0x9de)) +
-        list(range(0x9df,0x9e4)) +
-        list(range(0x9e6,0x9fc))
-    ),
-    'Bopomofo': frozenset(
-        list(range(0x2ea,0x2ec)) +
-        list(range(0x3105,0x312e)) +
-        list(range(0x31a0,0x31bb))
-    ),
-    'Brahmi': frozenset(
-        list(range(0x11000,0x1104e)) +
-        list(range(0x11052,0x11070)) +
-        [0x1107f]
-    ),
-    'Braille': frozenset(
-        list(range(0x2800,0x2900))
-    ),
-    'Buginese': frozenset(
-        list(range(0x1a00,0x1a1c)) +
-        list(range(0x1a1e,0x1a20))
-    ),
-    'Buhid': frozenset(
-        list(range(0x1740,0x1754))
-    ),
-    'Canadian_Aboriginal': frozenset(
-        list(range(0x1400,0x1680)) +
-        list(range(0x18b0,0x18f6))
-    ),
-    'Carian': frozenset(
-        list(range(0x102a0,0x102d1))
-    ),
-    'Caucasian_Albanian': frozenset(
-        list(range(0x10530,0x10564)) +
-        [0x1056f]
-    ),
-    'Chakma': frozenset(
-        list(range(0x11100,0x11135)) +
-        list(range(0x11136,0x11144))
-    ),
-    'Cham': frozenset(
-        list(range(0xaa00,0xaa37)) +
-        list(range(0xaa40,0xaa4e)) +
-        list(range(0xaa50,0xaa5a)) +
-        list(range(0xaa5c,0xaa60))
-    ),
-    'Cherokee': frozenset(
-        list(range(0x13a0,0x13f5))
-    ),
-    'Common': frozenset(
-        list(range(0x0,0x41)) +
-        list(range(0x5b,0x61)) +
-        list(range(0x7b,0xaa)) +
-        list(range(0xab,0xba)) +
-        list(range(0xbb,0xc0)) +
-        [0xd7] +
-        [0xf7] +
-        list(range(0x2b9,0x2e0)) +
-        list(range(0x2e5,0x2ea)) +
-        list(range(0x2ec,0x300)) +
-        [0x374] +
-        [0x37e] +
-        [0x385] +
-        [0x387] +
-        [0x589] +
-        [0x605] +
-        [0x60c] +
-        list(range(0x61b,0x61d)) +
-        [0x61f] +
-        [0x640] +
-        list(range(0x660,0x66a)) +
-        [0x6dd] +
-        list(range(0x964,0x966)) +
-        [0xe3f] +
-        list(range(0xfd5,0xfd9)) +
-        [0x10fb] +
-        list(range(0x16eb,0x16ee)) +
-        list(range(0x1735,0x1737)) +
-        list(range(0x1802,0x1804)) +
-        [0x1805] +
-        [0x1cd3] +
-        [0x1ce1] +
-        list(range(0x1ce9,0x1ced)) +
-        list(range(0x1cee,0x1cf4)) +
-        list(range(0x1cf5,0x1cf7)) +
-        list(range(0x2000,0x200c)) +
-        list(range(0x200e,0x2065)) +
-        list(range(0x2066,0x2071)) +
-        list(range(0x2074,0x207f)) +
-        list(range(0x2080,0x208f)) +
-        list(range(0x20a0,0x20be)) +
-        list(range(0x2100,0x2126)) +
-        list(range(0x2127,0x212a)) +
-        list(range(0x212c,0x2132)) +
-        list(range(0x2133,0x214e)) +
-        list(range(0x214f,0x2160)) +
-        [0x2189] +
-        list(range(0x2190,0x23fb)) +
-        list(range(0x2400,0x2427)) +
-        list(range(0x2440,0x244b)) +
-        list(range(0x2460,0x2800)) +
-        list(range(0x2900,0x2b74)) +
-        list(range(0x2b76,0x2b96)) +
-        list(range(0x2b98,0x2bba)) +
-        list(range(0x2bbd,0x2bc9)) +
-        list(range(0x2bca,0x2bd2)) +
-        list(range(0x2e00,0x2e43)) +
-        list(range(0x2ff0,0x2ffc)) +
-        list(range(0x3000,0x3005)) +
-        [0x3006] +
-        list(range(0x3008,0x3021)) +
-        list(range(0x3030,0x3038)) +
-        list(range(0x303c,0x3040)) +
-        list(range(0x309b,0x309d)) +
-        [0x30a0] +
-        list(range(0x30fb,0x30fd)) +
-        list(range(0x3190,0x31a0)) +
-        list(range(0x31c0,0x31e4)) +
-        list(range(0x3220,0x3260)) +
-        list(range(0x327f,0x32d0)) +
-        list(range(0x3358,0x3400)) +
-        list(range(0x4dc0,0x4e00)) +
-        list(range(0xa700,0xa722)) +
-        list(range(0xa788,0xa78b)) +
-        list(range(0xa830,0xa83a)) +
-        [0xa92e] +
-        [0xa9cf] +
-        [0xab5b] +
-        list(range(0xfd3e,0xfd40)) +
-        list(range(0xfe10,0xfe1a)) +
-        list(range(0xfe30,0xfe53)) +
-        list(range(0xfe54,0xfe67)) +
-        list(range(0xfe68,0xfe6c)) +
-        [0xfeff] +
-        list(range(0xff01,0xff21)) +
-        list(range(0xff3b,0xff41)) +
-        list(range(0xff5b,0xff66)) +
-        [0xff70] +
-        list(range(0xff9e,0xffa0)) +
-        list(range(0xffe0,0xffe7)) +
-        list(range(0xffe8,0xffef)) +
-        list(range(0xfff9,0xfffe)) +
-        list(range(0x10100,0x10103)) +
-        list(range(0x10107,0x10134)) +
-        list(range(0x10137,0x10140)) +
-        list(range(0x10190,0x1019c)) +
-        list(range(0x101d0,0x101fd)) +
-        list(range(0x102e1,0x102fc)) +
-        list(range(0x1bca0,0x1bca4)) +
-        list(range(0x1d000,0x1d0f6)) +
-        list(range(0x1d100,0x1d127)) +
-        list(range(0x1d129,0x1d167)) +
-        list(range(0x1d16a,0x1d17b)) +
-        list(range(0x1d183,0x1d185)) +
-        list(range(0x1d18c,0x1d1aa)) +
-        list(range(0x1d1ae,0x1d1de)) +
-        list(range(0x1d300,0x1d357)) +
-        list(range(0x1d360,0x1d372)) +
-        list(range(0x1d400,0x1d455)) +
-        list(range(0x1d456,0x1d49d)) +
-        list(range(0x1d49e,0x1d4a0)) +
-        [0x1d4a2] +
-        list(range(0x1d4a5,0x1d4a7)) +
-        list(range(0x1d4a9,0x1d4ad)) +
-        list(range(0x1d4ae,0x1d4ba)) +
-        [0x1d4bb] +
-        list(range(0x1d4bd,0x1d4c4)) +
-        list(range(0x1d4c5,0x1d506)) +
-        list(range(0x1d507,0x1d50b)) +
-        list(range(0x1d50d,0x1d515)) +
-        list(range(0x1d516,0x1d51d)) +
-        list(range(0x1d51e,0x1d53a)) +
-        list(range(0x1d53b,0x1d53f)) +
-        list(range(0x1d540,0x1d545)) +
-        [0x1d546] +
-        list(range(0x1d54a,0x1d551)) +
-        list(range(0x1d552,0x1d6a6)) +
-        list(range(0x1d6a8,0x1d7cc)) +
-        list(range(0x1d7ce,0x1d800)) +
-        list(range(0x1f000,0x1f02c)) +
-        list(range(0x1f030,0x1f094)) +
-        list(range(0x1f0a0,0x1f0af)) +
-        list(range(0x1f0b1,0x1f0c0)) +
-        list(range(0x1f0c1,0x1f0d0)) +
-        list(range(0x1f0d1,0x1f0f6)) +
-        list(range(0x1f100,0x1f10d)) +
-        list(range(0x1f110,0x1f12f)) +
-        list(range(0x1f130,0x1f16c)) +
-        list(range(0x1f170,0x1f19b)) +
-        list(range(0x1f1e6,0x1f200)) +
-        list(range(0x1f201,0x1f203)) +
-        list(range(0x1f210,0x1f23b)) +
-        list(range(0x1f240,0x1f249)) +
-        list(range(0x1f250,0x1f252)) +
-        list(range(0x1f300,0x1f32d)) +
-        list(range(0x1f330,0x1f37e)) +
-        list(range(0x1f380,0x1f3cf)) +
-        list(range(0x1f3d4,0x1f3f8)) +
-        list(range(0x1f400,0x1f4ff)) +
-        list(range(0x1f500,0x1f54b)) +
-        list(range(0x1f550,0x1f57a)) +
-        list(range(0x1f57b,0x1f5a4)) +
-        list(range(0x1f5a5,0x1f643)) +
-        list(range(0x1f645,0x1f6d0)) +
-        list(range(0x1f6e0,0x1f6ed)) +
-        list(range(0x1f6f0,0x1f6f4)) +
-        list(range(0x1f700,0x1f774)) +
-        list(range(0x1f780,0x1f7d5)) +
-        list(range(0x1f800,0x1f80c)) +
-        list(range(0x1f810,0x1f848)) +
-        list(range(0x1f850,0x1f85a)) +
-        list(range(0x1f860,0x1f888)) +
-        list(range(0x1f890,0x1f8ae)) +
-        [0xe0001] +
-        list(range(0xe0020,0xe0080))
-    ),
-    'Coptic': frozenset(
-        list(range(0x3e2,0x3f0)) +
-        list(range(0x2c80,0x2cf4)) +
-        list(range(0x2cf9,0x2d00))
-    ),
-    'Cuneiform': frozenset(
-        list(range(0x12000,0x12399)) +
-        list(range(0x12400,0x1246f)) +
-        list(range(0x12470,0x12475))
-    ),
-    'Cypriot': frozenset(
-        list(range(0x10800,0x10806)) +
-        [0x10808] +
-        list(range(0x1080a,0x10836)) +
-        list(range(0x10837,0x10839)) +
-        [0x1083c] +
-        [0x1083f]
-    ),
-    'Cyrillic': frozenset(
-        list(range(0x400,0x485)) +
-        list(range(0x487,0x530)) +
-        [0x1d2b] +
-        [0x1d78] +
-        list(range(0x2de0,0x2e00)) +
-        list(range(0xa640,0xa69e)) +
-        [0xa69f]
-    ),
-    'Deseret': frozenset(
-        list(range(0x10400,0x10450))
-    ),
-    'Devanagari': frozenset(
-        list(range(0x900,0x951)) +
-        list(range(0x953,0x964)) +
-        list(range(0x966,0x980)) +
-        list(range(0xa8e0,0xa8fc))
-    ),
-    'Duployan': frozenset(
-        list(range(0x1bc00,0x1bc6b)) +
-        list(range(0x1bc70,0x1bc7d)) +
-        list(range(0x1bc80,0x1bc89)) +
-        list(range(0x1bc90,0x1bc9a)) +
-        list(range(0x1bc9c,0x1bca0))
-    ),
-    'Egyptian_Hieroglyphs': frozenset(
-        list(range(0x13000,0x1342f))
-    ),
-    'Elbasan': frozenset(
-        list(range(0x10500,0x10528))
-    ),
-    'Ethiopic': frozenset(
-        list(range(0x1200,0x1249)) +
-        list(range(0x124a,0x124e)) +
-        list(range(0x1250,0x1257)) +
-        [0x1258] +
-        list(range(0x125a,0x125e)) +
-        list(range(0x1260,0x1289)) +
-        list(range(0x128a,0x128e)) +
-        list(range(0x1290,0x12b1)) +
-        list(range(0x12b2,0x12b6)) +
-        list(range(0x12b8,0x12bf)) +
-        [0x12c0] +
-        list(range(0x12c2,0x12c6)) +
-        list(range(0x12c8,0x12d7)) +
-        list(range(0x12d8,0x1311)) +
-        list(range(0x1312,0x1316)) +
-        list(range(0x1318,0x135b)) +
-        list(range(0x135d,0x137d)) +
-        list(range(0x1380,0x139a)) +
-        list(range(0x2d80,0x2d97)) +
-        list(range(0x2da0,0x2da7)) +
-        list(range(0x2da8,0x2daf)) +
-        list(range(0x2db0,0x2db7)) +
-        list(range(0x2db8,0x2dbf)) +
-        list(range(0x2dc0,0x2dc7)) +
-        list(range(0x2dc8,0x2dcf)) +
-        list(range(0x2dd0,0x2dd7)) +
-        list(range(0x2dd8,0x2ddf)) +
-        list(range(0xab01,0xab07)) +
-        list(range(0xab09,0xab0f)) +
-        list(range(0xab11,0xab17)) +
-        list(range(0xab20,0xab27)) +
-        list(range(0xab28,0xab2f))
-    ),
-    'Georgian': frozenset(
-        list(range(0x10a0,0x10c6)) +
-        [0x10c7] +
-        [0x10cd] +
-        list(range(0x10d0,0x10fb)) +
-        list(range(0x10fc,0x1100)) +
-        list(range(0x2d00,0x2d26)) +
-        [0x2d27] +
-        [0x2d2d]
-    ),
-    'Glagolitic': frozenset(
-        list(range(0x2c00,0x2c2f)) +
-        list(range(0x2c30,0x2c5f))
-    ),
-    'Gothic': frozenset(
-        list(range(0x10330,0x1034b))
-    ),
-    'Grantha': frozenset(
-        list(range(0x11301,0x11304)) +
-        list(range(0x11305,0x1130d)) +
-        list(range(0x1130f,0x11311)) +
-        list(range(0x11313,0x11329)) +
-        list(range(0x1132a,0x11331)) +
-        list(range(0x11332,0x11334)) +
-        list(range(0x11335,0x1133a)) +
-        list(range(0x1133c,0x11345)) +
-        list(range(0x11347,0x11349)) +
-        list(range(0x1134b,0x1134e)) +
-        [0x11357] +
-        list(range(0x1135d,0x11364)) +
-        list(range(0x11366,0x1136d)) +
-        list(range(0x11370,0x11375))
-    ),
-    'Greek': frozenset(
-        list(range(0x370,0x374)) +
-        list(range(0x375,0x378)) +
-        list(range(0x37a,0x37e)) +
-        [0x37f] +
-        [0x384] +
-        [0x386] +
-        list(range(0x388,0x38b)) +
-        [0x38c] +
-        list(range(0x38e,0x3a2)) +
-        list(range(0x3a3,0x3e2)) +
-        list(range(0x3f0,0x400)) +
-        list(range(0x1d26,0x1d2b)) +
-        list(range(0x1d5d,0x1d62)) +
-        list(range(0x1d66,0x1d6b)) +
-        [0x1dbf] +
-        list(range(0x1f00,0x1f16)) +
-        list(range(0x1f18,0x1f1e)) +
-        list(range(0x1f20,0x1f46)) +
-        list(range(0x1f48,0x1f4e)) +
-        list(range(0x1f50,0x1f58)) +
-        [0x1f59] +
-        [0x1f5b] +
-        [0x1f5d] +
-        list(range(0x1f5f,0x1f7e)) +
-        list(range(0x1f80,0x1fb5)) +
-        list(range(0x1fb6,0x1fc5)) +
-        list(range(0x1fc6,0x1fd4)) +
-        list(range(0x1fd6,0x1fdc)) +
-        list(range(0x1fdd,0x1ff0)) +
-        list(range(0x1ff2,0x1ff5)) +
-        list(range(0x1ff6,0x1fff)) +
-        [0x2126] +
-        [0xab65] +
-        list(range(0x10140,0x1018d)) +
-        [0x101a0] +
-        list(range(0x1d200,0x1d246))
-    ),
-    'Gujarati': frozenset(
-        list(range(0xa81,0xa84)) +
-        list(range(0xa85,0xa8e)) +
-        list(range(0xa8f,0xa92)) +
-        list(range(0xa93,0xaa9)) +
-        list(range(0xaaa,0xab1)) +
-        list(range(0xab2,0xab4)) +
-        list(range(0xab5,0xaba)) +
-        list(range(0xabc,0xac6)) +
-        list(range(0xac7,0xaca)) +
-        list(range(0xacb,0xace)) +
-        [0xad0] +
-        list(range(0xae0,0xae4)) +
-        list(range(0xae6,0xaf2))
-    ),
-    'Gurmukhi': frozenset(
-        list(range(0xa01,0xa04)) +
-        list(range(0xa05,0xa0b)) +
-        list(range(0xa0f,0xa11)) +
-        list(range(0xa13,0xa29)) +
-        list(range(0xa2a,0xa31)) +
-        list(range(0xa32,0xa34)) +
-        list(range(0xa35,0xa37)) +
-        list(range(0xa38,0xa3a)) +
-        [0xa3c] +
-        list(range(0xa3e,0xa43)) +
-        list(range(0xa47,0xa49)) +
-        list(range(0xa4b,0xa4e)) +
-        [0xa51] +
-        list(range(0xa59,0xa5d)) +
-        [0xa5e] +
-        list(range(0xa66,0xa76))
-    ),
-    'Han': frozenset(
-        list(range(0x2e80,0x2e9a)) +
-        list(range(0x2e9b,0x2ef4)) +
-        list(range(0x2f00,0x2fd6)) +
-        [0x3005] +
-        [0x3007] +
-        list(range(0x3021,0x302a)) +
-        list(range(0x3038,0x303c)) +
-        list(range(0x3400,0x4db6)) +
-        list(range(0x4e00,0x9fcd)) +
-        list(range(0xf900,0xfa6e)) +
-        list(range(0xfa70,0xfada)) +
-        list(range(0x20000,0x2a6d7)) +
-        list(range(0x2a700,0x2b735)) +
-        list(range(0x2b740,0x2b81e)) +
-        list(range(0x2f800,0x2fa1e))
-    ),
-    'Hangul': frozenset(
-        list(range(0x1100,0x1200)) +
-        list(range(0x302e,0x3030)) +
-        list(range(0x3131,0x318f)) +
-        list(range(0x3200,0x321f)) +
-        list(range(0x3260,0x327f)) +
-        list(range(0xa960,0xa97d)) +
-        list(range(0xac00,0xd7a4)) +
-        list(range(0xd7b0,0xd7c7)) +
-        list(range(0xd7cb,0xd7fc)) +
-        list(range(0xffa0,0xffbf)) +
-        list(range(0xffc2,0xffc8)) +
-        list(range(0xffca,0xffd0)) +
-        list(range(0xffd2,0xffd8)) +
-        list(range(0xffda,0xffdd))
-    ),
-    'Hanunoo': frozenset(
-        list(range(0x1720,0x1735))
-    ),
-    'Hebrew': frozenset(
-        list(range(0x591,0x5c8)) +
-        list(range(0x5d0,0x5eb)) +
-        list(range(0x5f0,0x5f5)) +
-        list(range(0xfb1d,0xfb37)) +
-        list(range(0xfb38,0xfb3d)) +
-        [0xfb3e] +
-        list(range(0xfb40,0xfb42)) +
-        list(range(0xfb43,0xfb45)) +
-        list(range(0xfb46,0xfb50))
-    ),
-    'Hiragana': frozenset(
-        list(range(0x3041,0x3097)) +
-        list(range(0x309d,0x30a0)) +
-        [0x1b001] +
-        [0x1f200]
-    ),
-    'Imperial_Aramaic': frozenset(
-        list(range(0x10840,0x10856)) +
-        list(range(0x10857,0x10860))
-    ),
-    'Inherited': frozenset(
-        list(range(0x300,0x370)) +
-        list(range(0x485,0x487)) +
-        list(range(0x64b,0x656)) +
-        [0x670] +
-        list(range(0x951,0x953)) +
-        list(range(0x1ab0,0x1abf)) +
-        list(range(0x1cd0,0x1cd3)) +
-        list(range(0x1cd4,0x1ce1)) +
-        list(range(0x1ce2,0x1ce9)) +
-        [0x1ced] +
-        [0x1cf4] +
-        list(range(0x1cf8,0x1cfa)) +
-        list(range(0x1dc0,0x1df6)) +
-        list(range(0x1dfc,0x1e00)) +
-        list(range(0x200c,0x200e)) +
-        list(range(0x20d0,0x20f1)) +
-        list(range(0x302a,0x302e)) +
-        list(range(0x3099,0x309b)) +
-        list(range(0xfe00,0xfe10)) +
-        list(range(0xfe20,0xfe2e)) +
-        [0x101fd] +
-        [0x102e0] +
-        list(range(0x1d167,0x1d16a)) +
-        list(range(0x1d17b,0x1d183)) +
-        list(range(0x1d185,0x1d18c)) +
-        list(range(0x1d1aa,0x1d1ae)) +
-        list(range(0xe0100,0xe01f0))
-    ),
-    'Inscriptional_Pahlavi': frozenset(
-        list(range(0x10b60,0x10b73)) +
-        list(range(0x10b78,0x10b80))
-    ),
-    'Inscriptional_Parthian': frozenset(
-        list(range(0x10b40,0x10b56)) +
-        list(range(0x10b58,0x10b60))
-    ),
-    'Javanese': frozenset(
-        list(range(0xa980,0xa9ce)) +
-        list(range(0xa9d0,0xa9da)) +
-        list(range(0xa9de,0xa9e0))
-    ),
-    'Kaithi': frozenset(
-        list(range(0x11080,0x110c2))
... 3898 lines suppressed ...

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/python-modules/packages/python-idna.git



More information about the Python-modules-commits mailing list