Skip to content

Commit eace58d

Browse files
committed
Adding Dependencies
1 parent 289e871 commit eace58d

File tree

410 files changed

+152448
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

410 files changed

+152448
-0
lines changed
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
pip
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
License
2+
-------
3+
4+
License: bsd-3-clause
5+
6+
Copyright (c) 2013-2020, Kim Davies. All rights reserved.
7+
8+
Redistribution and use in source and binary forms, with or without
9+
modification, are permitted provided that the following conditions are met:
10+
11+
#. Redistributions of source code must retain the above copyright
12+
notice, this list of conditions and the following disclaimer.
13+
14+
#. Redistributions in binary form must reproduce the above
15+
copyright notice, this list of conditions and the following
16+
disclaimer in the documentation and/or other materials provided with
17+
the distribution.
18+
19+
#. Neither the name of the copyright holder nor the names of the
20+
contributors may be used to endorse or promote products derived
21+
from this software without specific prior written permission.
22+
23+
#. THIS SOFTWARE IS PROVIDED BY THE CONTRIBUTORS "AS IS" AND ANY
24+
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
25+
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
26+
PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR
27+
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
28+
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
29+
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
30+
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
31+
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
32+
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
33+
USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
34+
DAMAGE.
Lines changed: 243 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,243 @@
1+
Metadata-Version: 2.1
2+
Name: idna
3+
Version: 2.10
4+
Summary: Internationalized Domain Names in Applications (IDNA)
5+
Home-page: https://github.com/kjd/idna
6+
Author: Kim Davies
7+
Author-email: kim@cynosure.com.au
8+
License: BSD-like
9+
Platform: UNKNOWN
10+
Classifier: Development Status :: 5 - Production/Stable
11+
Classifier: Intended Audience :: Developers
12+
Classifier: Intended Audience :: System Administrators
13+
Classifier: License :: OSI Approved :: BSD License
14+
Classifier: Operating System :: OS Independent
15+
Classifier: Programming Language :: Python
16+
Classifier: Programming Language :: Python :: 2
17+
Classifier: Programming Language :: Python :: 2.7
18+
Classifier: Programming Language :: Python :: 3
19+
Classifier: Programming Language :: Python :: 3.4
20+
Classifier: Programming Language :: Python :: 3.5
21+
Classifier: Programming Language :: Python :: 3.6
22+
Classifier: Programming Language :: Python :: 3.7
23+
Classifier: Programming Language :: Python :: 3.8
24+
Classifier: Programming Language :: Python :: Implementation :: CPython
25+
Classifier: Programming Language :: Python :: Implementation :: PyPy
26+
Classifier: Topic :: Internet :: Name Service (DNS)
27+
Classifier: Topic :: Software Development :: Libraries :: Python Modules
28+
Classifier: Topic :: Utilities
29+
Requires-Python: >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*
30+
31+
Internationalized Domain Names in Applications (IDNA)
32+
=====================================================
33+
34+
Support for the Internationalised Domain Names in Applications
35+
(IDNA) protocol as specified in `RFC 5891 <http://tools.ietf.org/html/rfc5891>`_.
36+
This is the latest version of the protocol and is sometimes referred to as
37+
“IDNA 2008”.
38+
39+
This library also provides support for Unicode Technical Standard 46,
40+
`Unicode IDNA Compatibility Processing <http://unicode.org/reports/tr46/>`_.
41+
42+
This acts as a suitable replacement for the “encodings.idna” module that
43+
comes with the Python standard library, but only supports the
44+
old, deprecated IDNA specification (`RFC 3490 <http://tools.ietf.org/html/rfc3490>`_).
45+
46+
Basic functions are simply executed:
47+
48+
.. code-block:: pycon
49+
50+
# Python 3
51+
>>> import idna
52+
>>> idna.encode('ドメイン.テスト')
53+
b'xn--eckwd4c7c.xn--zckzah'
54+
>>> print(idna.decode('xn--eckwd4c7c.xn--zckzah'))
55+
ドメイン.テスト
56+
57+
# Python 2
58+
>>> import idna
59+
>>> idna.encode(u'ドメイン.テスト')
60+
'xn--eckwd4c7c.xn--zckzah'
61+
>>> print idna.decode('xn--eckwd4c7c.xn--zckzah')
62+
ドメイン.テスト
63+
64+
Packages
65+
--------
66+
67+
The latest tagged release version is published in the PyPI repository:
68+
69+
.. image:: https://badge.fury.io/py/idna.svg
70+
:target: http://badge.fury.io/py/idna
71+
72+
73+
Installation
74+
------------
75+
76+
To install this library, you can use pip:
77+
78+
.. code-block:: bash
79+
80+
$ pip install idna
81+
82+
Alternatively, you can install the package using the bundled setup script:
83+
84+
.. code-block:: bash
85+
86+
$ python setup.py install
87+
88+
This library works with Python 2.7 and Python 3.4 or later.
89+
90+
91+
Usage
92+
-----
93+
94+
For typical usage, the ``encode`` and ``decode`` functions will take a domain
95+
name argument and perform a conversion to A-labels or U-labels respectively.
96+
97+
.. code-block:: pycon
98+
99+
# Python 3
100+
>>> import idna
101+
>>> idna.encode('ドメイン.テスト')
102+
b'xn--eckwd4c7c.xn--zckzah'
103+
>>> print(idna.decode('xn--eckwd4c7c.xn--zckzah'))
104+
ドメイン.テスト
105+
106+
You may use the codec encoding and decoding methods using the
107+
``idna.codec`` module:
108+
109+
.. code-block:: pycon
110+
111+
# Python 2
112+
>>> import idna.codec
113+
>>> print u'домена.испытание'.encode('idna')
114+
xn--80ahd1agd.xn--80akhbyknj4f
115+
>>> print 'xn--80ahd1agd.xn--80akhbyknj4f'.decode('idna')
116+
домена.испытание
117+
118+
Conversions can be applied at a per-label basis using the ``ulabel`` or ``alabel``
119+
functions if necessary:
120+
121+
.. code-block:: pycon
122+
123+
# Python 2
124+
>>> idna.alabel(u'测试')
125+
'xn--0zwm56d'
126+
127+
Compatibility Mapping (UTS #46)
128+
+++++++++++++++++++++++++++++++
129+
130+
As described in `RFC 5895 <http://tools.ietf.org/html/rfc5895>`_, the IDNA
131+
specification no longer normalizes input from different potential ways a user
132+
may input a domain name. This functionality, known as a “mapping”, is now
133+
considered by the specification to be a local user-interface issue distinct
134+
from IDNA conversion functionality.
135+
136+
This library provides one such mapping, that was developed by the Unicode
137+
Consortium. Known as `Unicode IDNA Compatibility Processing <http://unicode.org/reports/tr46/>`_,
138+
it provides for both a regular mapping for typical applications, as well as
139+
a transitional mapping to help migrate from older IDNA 2003 applications.
140+
141+
For example, “Königsgäßchen” is not a permissible label as *LATIN CAPITAL
142+
LETTER K* is not allowed (nor are capital letters in general). UTS 46 will
143+
convert this into lower case prior to applying the IDNA conversion.
144+
145+
.. code-block:: pycon
146+
147+
# Python 3
148+
>>> import idna
149+
>>> idna.encode(u'Königsgäßchen')
150+
...
151+
idna.core.InvalidCodepoint: Codepoint U+004B at position 1 of 'Königsgäßchen' not allowed
152+
>>> idna.encode('Königsgäßchen', uts46=True)
153+
b'xn--knigsgchen-b4a3dun'
154+
>>> print(idna.decode('xn--knigsgchen-b4a3dun'))
155+
königsgäßchen
156+
157+
Transitional processing provides conversions to help transition from the older
158+
2003 standard to the current standard. For example, in the original IDNA
159+
specification, the *LATIN SMALL LETTER SHARP S* (ß) was converted into two
160+
*LATIN SMALL LETTER S* (ss), whereas in the current IDNA specification this
161+
conversion is not performed.
162+
163+
.. code-block:: pycon
164+
165+
# Python 2
166+
>>> idna.encode(u'Königsgäßchen', uts46=True, transitional=True)
167+
'xn--knigsgsschen-lcb0w'
168+
169+
Implementors should use transitional processing with caution, only in rare
170+
cases where conversion from legacy labels to current labels must be performed
171+
(i.e. IDNA implementations that pre-date 2008). For typical applications
172+
that just need to convert labels, transitional processing is unlikely to be
173+
beneficial and could produce unexpected incompatible results.
174+
175+
``encodings.idna`` Compatibility
176+
++++++++++++++++++++++++++++++++
177+
178+
Function calls from the Python built-in ``encodings.idna`` module are
179+
mapped to their IDNA 2008 equivalents using the ``idna.compat`` module.
180+
Simply substitute the ``import`` clause in your code to refer to the
181+
new module name.
182+
183+
Exceptions
184+
----------
185+
186+
All errors raised during the conversion following the specification should
187+
raise an exception derived from the ``idna.IDNAError`` base class.
188+
189+
More specific exceptions that may be generated as ``idna.IDNABidiError``
190+
when the error reflects an illegal combination of left-to-right and right-to-left
191+
characters in a label; ``idna.InvalidCodepoint`` when a specific codepoint is
192+
an illegal character in an IDN label (i.e. INVALID); and ``idna.InvalidCodepointContext``
193+
when the codepoint is illegal based on its positional context (i.e. it is CONTEXTO
194+
or CONTEXTJ but the contextual requirements are not satisfied.)
195+
196+
Building and Diagnostics
197+
------------------------
198+
199+
The IDNA and UTS 46 functionality relies upon pre-calculated lookup tables for
200+
performance. These tables are derived from computing against eligibility criteria
201+
in the respective standards. These tables are computed using the command-line
202+
script ``tools/idna-data``.
203+
204+
This tool will fetch relevant tables from the Unicode Consortium and perform the
205+
required calculations to identify eligibility. It has three main modes:
206+
207+
* ``idna-data make-libdata``. Generates ``idnadata.py`` and ``uts46data.py``,
208+
the pre-calculated lookup tables using for IDNA and UTS 46 conversions. Implementors
209+
who wish to track this library against a different Unicode version may use this tool
210+
to manually generate a different version of the ``idnadata.py`` and ``uts46data.py``
211+
files.
212+
213+
* ``idna-data make-table``. Generate a table of the IDNA disposition
214+
(e.g. PVALID, CONTEXTJ, CONTEXTO) in the format found in Appendix B.1 of RFC
215+
5892 and the pre-computed tables published by `IANA <http://iana.org/>`_.
216+
217+
* ``idna-data U+0061``. Prints debugging output on the various properties
218+
associated with an individual Unicode codepoint (in this case, U+0061), that are
219+
used to assess the IDNA and UTS 46 status of a codepoint. This is helpful in debugging
220+
or analysis.
221+
222+
The tool accepts a number of arguments, described using ``idna-data -h``. Most notably,
223+
the ``--version`` argument allows the specification of the version of Unicode to use
224+
in computing the table data. For example, ``idna-data --version 9.0.0 make-libdata``
225+
will generate library data against Unicode 9.0.0.
226+
227+
Note that this script requires Python 3, but all generated library data will work
228+
in Python 2.7.
229+
230+
231+
Testing
232+
-------
233+
234+
The library has a test suite based on each rule of the IDNA specification, as
235+
well as tests that are provided as part of the Unicode Technical Standard 46,
236+
`Unicode IDNA Compatibility Processing <http://unicode.org/reports/tr46/>`_.
237+
238+
The tests are run automatically on each commit at Travis CI:
239+
240+
.. image:: https://travis-ci.org/kjd/idna.svg?branch=master
241+
:target: https://travis-ci.org/kjd/idna
242+
243+
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
idna-2.10.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4
2+
idna-2.10.dist-info/LICENSE.rst,sha256=QSAUQg0kc9ugYRfD1Nng7sqm3eDKMM2VH07CvjlCbzI,1565
3+
idna-2.10.dist-info/METADATA,sha256=ZWCaQDBjdmSvx5EU7Cv6ORC-9NUQ6nXh1eXx38ySe40,9104
4+
idna-2.10.dist-info/RECORD,,
5+
idna-2.10.dist-info/WHEEL,sha256=8zNYZbwQSXoB9IfXOjPfeNwvAsALAjffgk27FqvCWbo,110
6+
idna-2.10.dist-info/top_level.txt,sha256=jSag9sEDqvSPftxOQy-ABfGV_RSy7oFh4zZJpODV8k0,5
7+
idna/__init__.py,sha256=9Nt7xpyet3DmOrPUGooDdAwmHZZu1qUAy2EaJ93kGiQ,58
8+
idna/__pycache__/__init__.cpython-39.pyc,,
9+
idna/__pycache__/codec.cpython-39.pyc,,
10+
idna/__pycache__/compat.cpython-39.pyc,,
11+
idna/__pycache__/core.cpython-39.pyc,,
12+
idna/__pycache__/idnadata.cpython-39.pyc,,
13+
idna/__pycache__/intranges.cpython-39.pyc,,
14+
idna/__pycache__/package_data.cpython-39.pyc,,
15+
idna/__pycache__/uts46data.cpython-39.pyc,,
16+
idna/codec.py,sha256=lvYb7yu7PhAqFaAIAdWcwgaWI2UmgseUua-1c0AsG0A,3299
17+
idna/compat.py,sha256=R-h29D-6mrnJzbXxymrWUW7iZUvy-26TQwZ0ij57i4U,232
18+
idna/core.py,sha256=jCoaLb3bA2tS_DDx9PpGuNTEZZN2jAzB369aP-IHYRE,11951
19+
idna/idnadata.py,sha256=gmzFwZWjdms3kKZ_M_vwz7-LP_SCgYfSeE03B21Qpsk,42350
20+
idna/intranges.py,sha256=TY1lpxZIQWEP6tNqjZkFA5hgoMWOj1OBmnUG8ihT87E,1749
21+
idna/package_data.py,sha256=bxBjpLnE06_1jSYKEy5svOMu1zM3OMztXVUb1tPlcp0,22
22+
idna/uts46data.py,sha256=lMdw2zdjkH1JUWXPPEfFUSYT3Fyj60bBmfLvvy5m7ko,202084
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
Wheel-Version: 1.0
2+
Generator: bdist_wheel (0.33.6)
3+
Root-Is-Purelib: true
4+
Tag: py2-none-any
5+
Tag: py3-none-any
6+
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
idna
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
pip
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
Copyright (c) 2008-2021 The pip developers (see AUTHORS.txt file)
2+
3+
Permission is hereby granted, free of charge, to any person obtaining
4+
a copy of this software and associated documentation files (the
5+
"Software"), to deal in the Software without restriction, including
6+
without limitation the rights to use, copy, modify, merge, publish,
7+
distribute, sublicense, and/or sell copies of the Software, and to
8+
permit persons to whom the Software is furnished to do so, subject to
9+
the following conditions:
10+
11+
The above copyright notice and this permission notice shall be
12+
included in all copies or substantial portions of the Software.
13+
14+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

0 commit comments

Comments
 (0)