mirror of https://github.com/python/cpython
bpo-37444: Update differing exception between builtins and importlib (GH-14869)
Imports now raise `TypeError` instead of `ValueError` for relative import failures. This makes things consistent between `builtins.__import__` and `importlib.__import__` as well as using a more natural import for the failure. https://bugs.python.org/issue37444 Automerge-Triggered-By: @brettcannon
This commit is contained in:
parent
8e568ef266
commit
c5fa44944e
|
@ -1433,13 +1433,18 @@ an :term:`importer`.
|
||||||
``importlib.util.resolve_name('sys', __package__)`` without doing a
|
``importlib.util.resolve_name('sys', __package__)`` without doing a
|
||||||
check to see if the **package** argument is needed.
|
check to see if the **package** argument is needed.
|
||||||
|
|
||||||
:exc:`ValueError` is raised if **name** is a relative module name but
|
:exc:`ImportError` is raised if **name** is a relative module name but
|
||||||
package is a false value (e.g. ``None`` or the empty string).
|
**package** is a false value (e.g. ``None`` or the empty string).
|
||||||
:exc:`ValueError` is also raised a relative name would escape its containing
|
:exc:`ImportError` is also raised a relative name would escape its containing
|
||||||
package (e.g. requesting ``..bacon`` from within the ``spam`` package).
|
package (e.g. requesting ``..bacon`` from within the ``spam`` package).
|
||||||
|
|
||||||
.. versionadded:: 3.3
|
.. versionadded:: 3.3
|
||||||
|
|
||||||
|
.. versionchanged:: 3.9
|
||||||
|
To improve consistency with import statements, raise
|
||||||
|
:exc:`ImportError` instead of :exc:`ValueError` for invalid relative
|
||||||
|
import attempts.
|
||||||
|
|
||||||
.. function:: find_spec(name, package=None)
|
.. function:: find_spec(name, package=None)
|
||||||
|
|
||||||
Find the :term:`spec <module spec>` for a module, optionally relative to
|
Find the :term:`spec <module spec>` for a module, optionally relative to
|
||||||
|
|
|
@ -75,6 +75,12 @@ New Features
|
||||||
Other Language Changes
|
Other Language Changes
|
||||||
======================
|
======================
|
||||||
|
|
||||||
|
* :func:`builtins.__import__` now raises :exc:`ImportError` instead of
|
||||||
|
:exc:`ValueError` as used to occur when a relative import went past
|
||||||
|
its top-level package.
|
||||||
|
(Contributed by Ngalim Siregar in :issue:`37444`.)
|
||||||
|
|
||||||
|
|
||||||
* Python now gets the absolute path of the script filename specified on
|
* Python now gets the absolute path of the script filename specified on
|
||||||
the command line (ex: ``python3 script.py``): the ``__file__`` attribute of
|
the command line (ex: ``python3 script.py``): the ``__file__`` attribute of
|
||||||
the ``__main__`` module, ``sys.argv[0]`` and ``sys.path[0]`` become an
|
the ``__main__`` module, ``sys.argv[0]`` and ``sys.path[0]`` become an
|
||||||
|
@ -118,6 +124,13 @@ pprint
|
||||||
:mod:`pprint` can now pretty-print :class:`types.SimpleNamespace`.
|
:mod:`pprint` can now pretty-print :class:`types.SimpleNamespace`.
|
||||||
(Contributed by Carl Bordum Hansen in :issue:`37376`.)
|
(Contributed by Carl Bordum Hansen in :issue:`37376`.)
|
||||||
|
|
||||||
|
importlib
|
||||||
|
---------
|
||||||
|
|
||||||
|
To improve consistency with import statements, :func:`importlib.util.resolve_name`
|
||||||
|
now raises :exc:`ImportError` instead of :exc:`ValueError` for invalid relative
|
||||||
|
import attempts.
|
||||||
|
(Contributed by Ngalim Siregar in :issue:`37444`.)
|
||||||
|
|
||||||
Optimizations
|
Optimizations
|
||||||
=============
|
=============
|
||||||
|
@ -180,4 +193,11 @@ Porting to Python 3.9
|
||||||
This section lists previously described changes and other bugfixes
|
This section lists previously described changes and other bugfixes
|
||||||
that may require changes to your code.
|
that may require changes to your code.
|
||||||
|
|
||||||
|
Changes in the Python API
|
||||||
|
-------------------------
|
||||||
|
|
||||||
|
* :func:`builtins.__import__` and :func:`importlib.util.resolve_name` now raise
|
||||||
|
:exc:`ImportError` where it previously raised :exc:`ValueError`. Callers
|
||||||
|
catching the specific exception type and supporting both Python 3.9 and
|
||||||
|
earlier versions will need to catch both:
|
||||||
|
``except (ImportError, ValueError):``
|
||||||
|
|
|
@ -873,7 +873,7 @@ def _resolve_name(name, package, level):
|
||||||
"""Resolve a relative module name to an absolute one."""
|
"""Resolve a relative module name to an absolute one."""
|
||||||
bits = package.rsplit('.', level - 1)
|
bits = package.rsplit('.', level - 1)
|
||||||
if len(bits) < level:
|
if len(bits) < level:
|
||||||
raise ValueError('attempted relative import beyond top-level package')
|
raise ImportError('attempted relative import beyond top-level package')
|
||||||
base = bits[0]
|
base = bits[0]
|
||||||
return '{}.{}'.format(base, name) if name else base
|
return '{}.{}'.format(base, name) if name else base
|
||||||
|
|
||||||
|
|
|
@ -29,8 +29,8 @@ def resolve_name(name, package):
|
||||||
if not name.startswith('.'):
|
if not name.startswith('.'):
|
||||||
return name
|
return name
|
||||||
elif not package:
|
elif not package:
|
||||||
raise ValueError(f'no package specified for {repr(name)} '
|
raise ImportError(f'no package specified for {repr(name)} '
|
||||||
'(required for relative module names)')
|
'(required for relative module names)')
|
||||||
level = 0
|
level = 0
|
||||||
for character in name:
|
for character in name:
|
||||||
if character != '.':
|
if character != '.':
|
||||||
|
|
|
@ -156,7 +156,7 @@ class RelativeImports:
|
||||||
{'__name__': 'pkg', '__path__': ['blah']})
|
{'__name__': 'pkg', '__path__': ['blah']})
|
||||||
def callback(global_):
|
def callback(global_):
|
||||||
self.__import__('pkg')
|
self.__import__('pkg')
|
||||||
with self.assertRaises(ValueError):
|
with self.assertRaises(ImportError):
|
||||||
self.__import__('', global_, fromlist=['top_level'],
|
self.__import__('', global_, fromlist=['top_level'],
|
||||||
level=2)
|
level=2)
|
||||||
self.relative_import_test(create, globals_, callback)
|
self.relative_import_test(create, globals_, callback)
|
||||||
|
@ -167,7 +167,7 @@ class RelativeImports:
|
||||||
globals_ = {'__package__': 'pkg'}, {'__name__': 'pkg.module'}
|
globals_ = {'__package__': 'pkg'}, {'__name__': 'pkg.module'}
|
||||||
def callback(global_):
|
def callback(global_):
|
||||||
self.__import__('pkg')
|
self.__import__('pkg')
|
||||||
with self.assertRaises(ValueError):
|
with self.assertRaises(ImportError):
|
||||||
self.__import__('', global_, fromlist=['top_level'],
|
self.__import__('', global_, fromlist=['top_level'],
|
||||||
level=2)
|
level=2)
|
||||||
self.relative_import_test(create, globals_, callback)
|
self.relative_import_test(create, globals_, callback)
|
||||||
|
|
|
@ -375,7 +375,7 @@ class ResolveNameTests:
|
||||||
|
|
||||||
def test_no_package(self):
|
def test_no_package(self):
|
||||||
# .bacon in ''
|
# .bacon in ''
|
||||||
with self.assertRaises(ValueError):
|
with self.assertRaises(ImportError):
|
||||||
self.util.resolve_name('.bacon', '')
|
self.util.resolve_name('.bacon', '')
|
||||||
|
|
||||||
def test_in_package(self):
|
def test_in_package(self):
|
||||||
|
@ -390,7 +390,7 @@ class ResolveNameTests:
|
||||||
|
|
||||||
def test_escape(self):
|
def test_escape(self):
|
||||||
# ..bacon in spam
|
# ..bacon in spam
|
||||||
with self.assertRaises(ValueError):
|
with self.assertRaises(ImportError):
|
||||||
self.util.resolve_name('..bacon', 'spam')
|
self.util.resolve_name('..bacon', 'spam')
|
||||||
|
|
||||||
|
|
||||||
|
@ -518,7 +518,7 @@ class FindSpecTests:
|
||||||
with util.temp_module(name, pkg=True) as pkg_dir:
|
with util.temp_module(name, pkg=True) as pkg_dir:
|
||||||
fullname, _ = util.submodule(name, subname, pkg_dir)
|
fullname, _ = util.submodule(name, subname, pkg_dir)
|
||||||
relname = '.' + subname
|
relname = '.' + subname
|
||||||
with self.assertRaises(ValueError):
|
with self.assertRaises(ImportError):
|
||||||
self.util.find_spec(relname)
|
self.util.find_spec(relname)
|
||||||
self.assertNotIn(name, sorted(sys.modules))
|
self.assertNotIn(name, sorted(sys.modules))
|
||||||
self.assertNotIn(fullname, sorted(sys.modules))
|
self.assertNotIn(fullname, sorted(sys.modules))
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
Update differing exception between :meth:`builtins.__import__` and :meth:`importlib.__import__`.
|
|
@ -1671,7 +1671,7 @@ resolve_name(PyThreadState *tstate, PyObject *name, PyObject *globals, int level
|
||||||
goto error;
|
goto error;
|
||||||
}
|
}
|
||||||
else if (last_dot == -1) {
|
else if (last_dot == -1) {
|
||||||
_PyErr_SetString(tstate, PyExc_ValueError,
|
_PyErr_SetString(tstate, PyExc_ImportError,
|
||||||
"attempted relative import beyond top-level "
|
"attempted relative import beyond top-level "
|
||||||
"package");
|
"package");
|
||||||
goto error;
|
goto error;
|
||||||
|
|
|
@ -1351,89 +1351,89 @@ const unsigned char _Py_M__importlib_bootstrap[] = {
|
||||||
112,111,114,116,32,98,101,121,111,110,100,32,116,111,112,45,
|
112,111,114,116,32,98,101,121,111,110,100,32,116,111,112,45,
|
||||||
108,101,118,101,108,32,112,97,99,107,97,103,101,114,22,0,
|
108,101,118,101,108,32,112,97,99,107,97,103,101,114,22,0,
|
||||||
0,0,250,5,123,125,46,123,125,41,4,218,6,114,115,112,
|
0,0,250,5,123,125,46,123,125,41,4,218,6,114,115,112,
|
||||||
108,105,116,218,3,108,101,110,218,10,86,97,108,117,101,69,
|
108,105,116,218,3,108,101,110,114,79,0,0,0,114,45,0,
|
||||||
114,114,111,114,114,45,0,0,0,41,5,114,17,0,0,0,
|
0,0,41,5,114,17,0,0,0,218,7,112,97,99,107,97,
|
||||||
218,7,112,97,99,107,97,103,101,218,5,108,101,118,101,108,
|
103,101,218,5,108,101,118,101,108,90,4,98,105,116,115,90,
|
||||||
90,4,98,105,116,115,90,4,98,97,115,101,114,10,0,0,
|
4,98,97,115,101,114,10,0,0,0,114,10,0,0,0,114,
|
||||||
0,114,10,0,0,0,114,11,0,0,0,218,13,95,114,101,
|
11,0,0,0,218,13,95,114,101,115,111,108,118,101,95,110,
|
||||||
115,111,108,118,101,95,110,97,109,101,104,3,0,0,115,10,
|
97,109,101,104,3,0,0,115,10,0,0,0,0,2,16,1,
|
||||||
0,0,0,0,2,16,1,12,1,8,1,8,1,114,188,0,
|
12,1,8,1,8,1,114,187,0,0,0,99,3,0,0,0,
|
||||||
0,0,99,3,0,0,0,0,0,0,0,0,0,0,0,4,
|
0,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,
|
||||||
0,0,0,4,0,0,0,67,0,0,0,115,34,0,0,0,
|
67,0,0,0,115,34,0,0,0,124,0,160,0,124,1,124,
|
||||||
124,0,160,0,124,1,124,2,161,2,125,3,124,3,100,0,
|
2,161,2,125,3,124,3,100,0,107,8,114,24,100,0,83,
|
||||||
107,8,114,24,100,0,83,0,116,1,124,1,124,3,131,2,
|
0,116,1,124,1,124,3,131,2,83,0,114,13,0,0,0,
|
||||||
83,0,114,13,0,0,0,41,2,114,167,0,0,0,114,91,
|
41,2,114,167,0,0,0,114,91,0,0,0,41,4,218,6,
|
||||||
0,0,0,41,4,218,6,102,105,110,100,101,114,114,17,0,
|
102,105,110,100,101,114,114,17,0,0,0,114,164,0,0,0,
|
||||||
0,0,114,164,0,0,0,114,109,0,0,0,114,10,0,0,
|
114,109,0,0,0,114,10,0,0,0,114,10,0,0,0,114,
|
||||||
0,114,10,0,0,0,114,11,0,0,0,218,17,95,102,105,
|
11,0,0,0,218,17,95,102,105,110,100,95,115,112,101,99,
|
||||||
110,100,95,115,112,101,99,95,108,101,103,97,99,121,113,3,
|
95,108,101,103,97,99,121,113,3,0,0,115,8,0,0,0,
|
||||||
0,0,115,8,0,0,0,0,3,12,1,8,1,4,1,114,
|
0,3,12,1,8,1,4,1,114,189,0,0,0,99,3,0,
|
||||||
190,0,0,0,99,3,0,0,0,0,0,0,0,0,0,0,
|
0,0,0,0,0,0,0,0,0,0,10,0,0,0,10,0,
|
||||||
0,10,0,0,0,10,0,0,0,67,0,0,0,115,12,1,
|
0,0,67,0,0,0,115,12,1,0,0,116,0,106,1,125,
|
||||||
0,0,116,0,106,1,125,3,124,3,100,1,107,8,114,22,
|
3,124,3,100,1,107,8,114,22,116,2,100,2,131,1,130,
|
||||||
116,2,100,2,131,1,130,1,124,3,115,38,116,3,160,4,
|
1,124,3,115,38,116,3,160,4,100,3,116,5,161,2,1,
|
||||||
100,3,116,5,161,2,1,0,124,0,116,0,106,6,107,6,
|
0,124,0,116,0,106,6,107,6,125,4,124,3,68,0,93,
|
||||||
125,4,124,3,68,0,93,210,125,5,116,7,131,0,143,84,
|
210,125,5,116,7,131,0,143,84,1,0,122,10,124,5,106,
|
||||||
1,0,122,10,124,5,106,8,125,6,87,0,110,54,4,0,
|
8,125,6,87,0,110,54,4,0,116,9,107,10,114,128,1,
|
||||||
116,9,107,10,114,128,1,0,1,0,1,0,116,10,124,5,
|
0,1,0,1,0,116,10,124,5,124,0,124,1,131,3,125,
|
||||||
124,0,124,1,131,3,125,7,124,7,100,1,107,8,114,124,
|
7,124,7,100,1,107,8,114,124,89,0,87,0,53,0,81,
|
||||||
89,0,87,0,53,0,81,0,82,0,163,0,113,52,89,0,
|
0,82,0,163,0,113,52,89,0,110,14,88,0,124,6,124,
|
||||||
110,14,88,0,124,6,124,0,124,1,124,2,131,3,125,7,
|
0,124,1,124,2,131,3,125,7,87,0,53,0,81,0,82,
|
||||||
87,0,53,0,81,0,82,0,88,0,124,7,100,1,107,9,
|
0,88,0,124,7,100,1,107,9,114,52,124,4,144,0,115,
|
||||||
114,52,124,4,144,0,115,254,124,0,116,0,106,6,107,6,
|
254,124,0,116,0,106,6,107,6,144,0,114,254,116,0,106,
|
||||||
144,0,114,254,116,0,106,6,124,0,25,0,125,8,122,10,
|
6,124,0,25,0,125,8,122,10,124,8,106,11,125,9,87,
|
||||||
124,8,106,11,125,9,87,0,110,28,4,0,116,9,107,10,
|
0,110,28,4,0,116,9,107,10,114,226,1,0,1,0,1,
|
||||||
114,226,1,0,1,0,1,0,124,7,6,0,89,0,2,0,
|
0,124,7,6,0,89,0,2,0,1,0,83,0,88,0,124,
|
||||||
1,0,83,0,88,0,124,9,100,1,107,8,114,244,124,7,
|
9,100,1,107,8,114,244,124,7,2,0,1,0,83,0,124,
|
||||||
2,0,1,0,83,0,124,9,2,0,1,0,83,0,113,52,
|
9,2,0,1,0,83,0,113,52,124,7,2,0,1,0,83,
|
||||||
124,7,2,0,1,0,83,0,113,52,100,1,83,0,41,4,
|
0,113,52,100,1,83,0,41,4,122,21,70,105,110,100,32,
|
||||||
122,21,70,105,110,100,32,97,32,109,111,100,117,108,101,39,
|
97,32,109,111,100,117,108,101,39,115,32,115,112,101,99,46,
|
||||||
115,32,115,112,101,99,46,78,122,53,115,121,115,46,109,101,
|
78,122,53,115,121,115,46,109,101,116,97,95,112,97,116,104,
|
||||||
116,97,95,112,97,116,104,32,105,115,32,78,111,110,101,44,
|
32,105,115,32,78,111,110,101,44,32,80,121,116,104,111,110,
|
||||||
32,80,121,116,104,111,110,32,105,115,32,108,105,107,101,108,
|
32,105,115,32,108,105,107,101,108,121,32,115,104,117,116,116,
|
||||||
121,32,115,104,117,116,116,105,110,103,32,100,111,119,110,122,
|
105,110,103,32,100,111,119,110,122,22,115,121,115,46,109,101,
|
||||||
22,115,121,115,46,109,101,116,97,95,112,97,116,104,32,105,
|
116,97,95,112,97,116,104,32,105,115,32,101,109,112,116,121,
|
||||||
115,32,101,109,112,116,121,41,12,114,15,0,0,0,218,9,
|
41,12,114,15,0,0,0,218,9,109,101,116,97,95,112,97,
|
||||||
109,101,116,97,95,112,97,116,104,114,79,0,0,0,218,9,
|
116,104,114,79,0,0,0,218,9,95,119,97,114,110,105,110,
|
||||||
95,119,97,114,110,105,110,103,115,218,4,119,97,114,110,218,
|
103,115,218,4,119,97,114,110,218,13,73,109,112,111,114,116,
|
||||||
13,73,109,112,111,114,116,87,97,114,110,105,110,103,114,92,
|
87,97,114,110,105,110,103,114,92,0,0,0,114,178,0,0,
|
||||||
0,0,0,114,178,0,0,0,114,166,0,0,0,114,106,0,
|
0,114,166,0,0,0,114,106,0,0,0,114,189,0,0,0,
|
||||||
0,0,114,190,0,0,0,114,105,0,0,0,41,10,114,17,
|
114,105,0,0,0,41,10,114,17,0,0,0,114,164,0,0,
|
||||||
0,0,0,114,164,0,0,0,114,165,0,0,0,114,191,0,
|
0,114,165,0,0,0,114,190,0,0,0,90,9,105,115,95,
|
||||||
0,0,90,9,105,115,95,114,101,108,111,97,100,114,189,0,
|
114,101,108,111,97,100,114,188,0,0,0,114,166,0,0,0,
|
||||||
0,0,114,166,0,0,0,114,95,0,0,0,114,96,0,0,
|
114,95,0,0,0,114,96,0,0,0,114,105,0,0,0,114,
|
||||||
0,114,105,0,0,0,114,10,0,0,0,114,10,0,0,0,
|
10,0,0,0,114,10,0,0,0,114,11,0,0,0,218,10,
|
||||||
114,11,0,0,0,218,10,95,102,105,110,100,95,115,112,101,
|
95,102,105,110,100,95,115,112,101,99,122,3,0,0,115,54,
|
||||||
99,122,3,0,0,115,54,0,0,0,0,2,6,1,8,2,
|
0,0,0,0,2,6,1,8,2,8,3,4,1,12,5,10,
|
||||||
8,3,4,1,12,5,10,1,8,1,8,1,2,1,10,1,
|
1,8,1,8,1,2,1,10,1,14,1,12,1,8,1,20,
|
||||||
14,1,12,1,8,1,20,2,22,1,8,2,18,1,10,1,
|
2,22,1,8,2,18,1,10,1,2,1,10,1,14,4,14,
|
||||||
2,1,10,1,14,4,14,2,8,1,8,2,10,2,10,2,
|
2,8,1,8,2,10,2,10,2,114,194,0,0,0,99,3,
|
||||||
114,195,0,0,0,99,3,0,0,0,0,0,0,0,0,0,
|
0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,5,
|
||||||
0,0,3,0,0,0,5,0,0,0,67,0,0,0,115,108,
|
0,0,0,67,0,0,0,115,108,0,0,0,116,0,124,0,
|
||||||
0,0,0,116,0,124,0,116,1,131,2,115,28,116,2,100,
|
116,1,131,2,115,28,116,2,100,1,160,3,116,4,124,0,
|
||||||
1,160,3,116,4,124,0,131,1,161,1,131,1,130,1,124,
|
131,1,161,1,131,1,130,1,124,2,100,2,107,0,114,44,
|
||||||
2,100,2,107,0,114,44,116,5,100,3,131,1,130,1,124,
|
116,5,100,3,131,1,130,1,124,2,100,2,107,4,114,84,
|
||||||
2,100,2,107,4,114,84,116,0,124,1,116,1,131,2,115,
|
116,0,124,1,116,1,131,2,115,72,116,2,100,4,131,1,
|
||||||
72,116,2,100,4,131,1,130,1,110,12,124,1,115,84,116,
|
130,1,110,12,124,1,115,84,116,6,100,5,131,1,130,1,
|
||||||
6,100,5,131,1,130,1,124,0,115,104,124,2,100,2,107,
|
124,0,115,104,124,2,100,2,107,2,114,104,116,5,100,6,
|
||||||
2,114,104,116,5,100,6,131,1,130,1,100,7,83,0,41,
|
131,1,130,1,100,7,83,0,41,8,122,28,86,101,114,105,
|
||||||
8,122,28,86,101,114,105,102,121,32,97,114,103,117,109,101,
|
102,121,32,97,114,103,117,109,101,110,116,115,32,97,114,101,
|
||||||
110,116,115,32,97,114,101,32,34,115,97,110,101,34,46,122,
|
32,34,115,97,110,101,34,46,122,31,109,111,100,117,108,101,
|
||||||
31,109,111,100,117,108,101,32,110,97,109,101,32,109,117,115,
|
32,110,97,109,101,32,109,117,115,116,32,98,101,32,115,116,
|
||||||
116,32,98,101,32,115,116,114,44,32,110,111,116,32,123,125,
|
114,44,32,110,111,116,32,123,125,114,22,0,0,0,122,18,
|
||||||
114,22,0,0,0,122,18,108,101,118,101,108,32,109,117,115,
|
108,101,118,101,108,32,109,117,115,116,32,98,101,32,62,61,
|
||||||
116,32,98,101,32,62,61,32,48,122,31,95,95,112,97,99,
|
32,48,122,31,95,95,112,97,99,107,97,103,101,95,95,32,
|
||||||
107,97,103,101,95,95,32,110,111,116,32,115,101,116,32,116,
|
110,111,116,32,115,101,116,32,116,111,32,97,32,115,116,114,
|
||||||
111,32,97,32,115,116,114,105,110,103,122,54,97,116,116,101,
|
105,110,103,122,54,97,116,116,101,109,112,116,101,100,32,114,
|
||||||
109,112,116,101,100,32,114,101,108,97,116,105,118,101,32,105,
|
101,108,97,116,105,118,101,32,105,109,112,111,114,116,32,119,
|
||||||
109,112,111,114,116,32,119,105,116,104,32,110,111,32,107,110,
|
105,116,104,32,110,111,32,107,110,111,119,110,32,112,97,114,
|
||||||
111,119,110,32,112,97,114,101,110,116,32,112,97,99,107,97,
|
101,110,116,32,112,97,99,107,97,103,101,122,17,69,109,112,
|
||||||
103,101,122,17,69,109,112,116,121,32,109,111,100,117,108,101,
|
116,121,32,109,111,100,117,108,101,32,110,97,109,101,78,41,
|
||||||
32,110,97,109,101,78,41,7,218,10,105,115,105,110,115,116,
|
7,218,10,105,115,105,110,115,116,97,110,99,101,218,3,115,
|
||||||
97,110,99,101,218,3,115,116,114,218,9,84,121,112,101,69,
|
116,114,218,9,84,121,112,101,69,114,114,111,114,114,45,0,
|
||||||
114,114,111,114,114,45,0,0,0,114,14,0,0,0,114,185,
|
0,0,114,14,0,0,0,218,10,86,97,108,117,101,69,114,
|
||||||
0,0,0,114,79,0,0,0,169,3,114,17,0,0,0,114,
|
114,111,114,114,79,0,0,0,169,3,114,17,0,0,0,114,
|
||||||
186,0,0,0,114,187,0,0,0,114,10,0,0,0,114,10,
|
185,0,0,0,114,186,0,0,0,114,10,0,0,0,114,10,
|
||||||
0,0,0,114,11,0,0,0,218,13,95,115,97,110,105,116,
|
0,0,0,114,11,0,0,0,218,13,95,115,97,110,105,116,
|
||||||
121,95,99,104,101,99,107,169,3,0,0,115,22,0,0,0,
|
121,95,99,104,101,99,107,169,3,0,0,115,22,0,0,0,
|
||||||
0,2,10,1,18,1,8,1,8,1,8,1,10,1,10,1,
|
0,2,10,1,18,1,8,1,8,1,8,1,10,1,10,1,
|
||||||
|
@ -1462,7 +1462,7 @@ const unsigned char _Py_M__importlib_bootstrap[] = {
|
||||||
0,0,0,114,141,0,0,0,114,106,0,0,0,218,8,95,
|
0,0,0,114,141,0,0,0,114,106,0,0,0,218,8,95,
|
||||||
69,82,82,95,77,83,71,114,45,0,0,0,218,19,77,111,
|
69,82,82,95,77,83,71,114,45,0,0,0,218,19,77,111,
|
||||||
100,117,108,101,78,111,116,70,111,117,110,100,69,114,114,111,
|
100,117,108,101,78,111,116,70,111,117,110,100,69,114,114,111,
|
||||||
114,114,195,0,0,0,114,159,0,0,0,114,5,0,0,0,
|
114,114,194,0,0,0,114,159,0,0,0,114,5,0,0,0,
|
||||||
41,8,114,17,0,0,0,218,7,105,109,112,111,114,116,95,
|
41,8,114,17,0,0,0,218,7,105,109,112,111,114,116,95,
|
||||||
114,164,0,0,0,114,130,0,0,0,90,13,112,97,114,101,
|
114,164,0,0,0,114,130,0,0,0,90,13,112,97,114,101,
|
||||||
110,116,95,109,111,100,117,108,101,114,157,0,0,0,114,95,
|
110,116,95,109,111,100,117,108,101,114,157,0,0,0,114,95,
|
||||||
|
@ -1520,7 +1520,7 @@ const unsigned char _Py_M__importlib_bootstrap[] = {
|
||||||
97,103,101,95,95,32,105,102,10,32,32,32,32,116,104,101,
|
97,103,101,95,95,32,105,102,10,32,32,32,32,116,104,101,
|
||||||
32,108,111,97,100,101,114,32,100,105,100,32,110,111,116,46,
|
32,108,111,97,100,101,114,32,100,105,100,32,110,111,116,46,
|
||||||
10,10,32,32,32,32,114,22,0,0,0,41,4,114,200,0,
|
10,10,32,32,32,32,114,22,0,0,0,41,4,114,200,0,
|
||||||
0,0,114,188,0,0,0,114,207,0,0,0,218,11,95,103,
|
0,0,114,187,0,0,0,114,207,0,0,0,218,11,95,103,
|
||||||
99,100,95,105,109,112,111,114,116,114,199,0,0,0,114,10,
|
99,100,95,105,109,112,111,114,116,114,199,0,0,0,114,10,
|
||||||
0,0,0,114,10,0,0,0,114,11,0,0,0,114,208,0,
|
0,0,0,114,10,0,0,0,114,11,0,0,0,114,208,0,
|
||||||
0,0,234,3,0,0,115,8,0,0,0,0,9,12,1,8,
|
0,0,234,3,0,0,115,8,0,0,0,0,9,12,1,8,
|
||||||
|
@ -1561,8 +1561,8 @@ const unsigned char _Py_M__importlib_bootstrap[] = {
|
||||||
122,8,73,116,101,109,32,105,110,32,122,18,32,109,117,115,
|
122,8,73,116,101,109,32,105,110,32,122,18,32,109,117,115,
|
||||||
116,32,98,101,32,115,116,114,44,32,110,111,116,32,250,1,
|
116,32,98,101,32,115,116,114,44,32,110,111,116,32,250,1,
|
||||||
42,218,7,95,95,97,108,108,95,95,84,114,209,0,0,0,
|
42,218,7,95,95,97,108,108,95,95,84,114,209,0,0,0,
|
||||||
114,182,0,0,0,78,41,16,114,196,0,0,0,114,197,0,
|
114,182,0,0,0,78,41,16,114,195,0,0,0,114,196,0,
|
||||||
0,0,114,1,0,0,0,114,198,0,0,0,114,14,0,0,
|
0,0,114,1,0,0,0,114,197,0,0,0,114,14,0,0,
|
||||||
0,114,4,0,0,0,218,16,95,104,97,110,100,108,101,95,
|
0,114,4,0,0,0,218,16,95,104,97,110,100,108,101,95,
|
||||||
102,114,111,109,108,105,115,116,114,212,0,0,0,114,45,0,
|
102,114,111,109,108,105,115,116,114,212,0,0,0,114,45,0,
|
||||||
0,0,114,67,0,0,0,114,203,0,0,0,114,17,0,0,
|
0,0,114,67,0,0,0,114,203,0,0,0,114,17,0,0,
|
||||||
|
@ -1609,9 +1609,9 @@ const unsigned char _Py_M__importlib_bootstrap[] = {
|
||||||
110,32,95,95,110,97,109,101,95,95,32,97,110,100,32,95,
|
110,32,95,95,110,97,109,101,95,95,32,97,110,100,32,95,
|
||||||
95,112,97,116,104,95,95,114,1,0,0,0,114,141,0,0,
|
95,112,97,116,104,95,95,114,1,0,0,0,114,141,0,0,
|
||||||
0,114,128,0,0,0,114,22,0,0,0,41,6,114,34,0,
|
0,114,128,0,0,0,114,22,0,0,0,41,6,114,34,0,
|
||||||
0,0,114,130,0,0,0,114,192,0,0,0,114,193,0,0,
|
0,0,114,130,0,0,0,114,191,0,0,0,114,192,0,0,
|
||||||
0,114,194,0,0,0,114,129,0,0,0,41,3,218,7,103,
|
0,114,193,0,0,0,114,129,0,0,0,41,3,218,7,103,
|
||||||
108,111,98,97,108,115,114,186,0,0,0,114,95,0,0,0,
|
108,111,98,97,108,115,114,185,0,0,0,114,95,0,0,0,
|
||||||
114,10,0,0,0,114,10,0,0,0,114,11,0,0,0,218,
|
114,10,0,0,0,114,10,0,0,0,114,11,0,0,0,218,
|
||||||
17,95,99,97,108,99,95,95,95,112,97,99,107,97,103,101,
|
17,95,99,97,108,99,95,95,95,112,97,99,107,97,103,101,
|
||||||
95,95,30,4,0,0,115,38,0,0,0,0,7,10,1,10,
|
95,95,30,4,0,0,115,38,0,0,0,0,7,10,1,10,
|
||||||
|
@ -1666,8 +1666,8 @@ const unsigned char _Py_M__importlib_bootstrap[] = {
|
||||||
111,110,114,184,0,0,0,114,15,0,0,0,114,92,0,0,
|
111,110,114,184,0,0,0,114,15,0,0,0,114,92,0,0,
|
||||||
0,114,1,0,0,0,114,4,0,0,0,114,213,0,0,0,
|
0,114,1,0,0,0,114,4,0,0,0,114,213,0,0,0,
|
||||||
41,9,114,17,0,0,0,114,218,0,0,0,218,6,108,111,
|
41,9,114,17,0,0,0,114,218,0,0,0,218,6,108,111,
|
||||||
99,97,108,115,114,214,0,0,0,114,187,0,0,0,114,96,
|
99,97,108,115,114,214,0,0,0,114,186,0,0,0,114,96,
|
||||||
0,0,0,90,8,103,108,111,98,97,108,115,95,114,186,0,
|
0,0,0,90,8,103,108,111,98,97,108,115,95,114,185,0,
|
||||||
0,0,90,7,99,117,116,95,111,102,102,114,10,0,0,0,
|
0,0,90,7,99,117,116,95,111,102,102,114,10,0,0,0,
|
||||||
114,10,0,0,0,114,11,0,0,0,218,10,95,95,105,109,
|
114,10,0,0,0,114,11,0,0,0,218,10,95,95,105,109,
|
||||||
112,111,114,116,95,95,57,4,0,0,115,30,0,0,0,0,
|
112,111,114,116,95,95,57,4,0,0,115,30,0,0,0,0,
|
||||||
|
@ -1713,10 +1713,10 @@ const unsigned char _Py_M__importlib_bootstrap[] = {
|
||||||
101,32,116,119,111,32,109,111,100,117,108,101,115,32,109,117,
|
101,32,116,119,111,32,109,111,100,117,108,101,115,32,109,117,
|
||||||
115,116,32,98,101,32,101,120,112,108,105,99,105,116,108,121,
|
115,116,32,98,101,32,101,120,112,108,105,99,105,116,108,121,
|
||||||
32,112,97,115,115,101,100,32,105,110,46,10,10,32,32,32,
|
32,112,97,115,115,101,100,32,105,110,46,10,10,32,32,32,
|
||||||
32,41,3,114,23,0,0,0,114,192,0,0,0,114,64,0,
|
32,41,3,114,23,0,0,0,114,191,0,0,0,114,64,0,
|
||||||
0,0,78,41,15,114,57,0,0,0,114,15,0,0,0,114,
|
0,0,78,41,15,114,57,0,0,0,114,15,0,0,0,114,
|
||||||
14,0,0,0,114,92,0,0,0,218,5,105,116,101,109,115,
|
14,0,0,0,114,92,0,0,0,218,5,105,116,101,109,115,
|
||||||
114,196,0,0,0,114,78,0,0,0,114,160,0,0,0,114,
|
114,195,0,0,0,114,78,0,0,0,114,160,0,0,0,114,
|
||||||
88,0,0,0,114,173,0,0,0,114,142,0,0,0,114,148,
|
88,0,0,0,114,173,0,0,0,114,142,0,0,0,114,148,
|
||||||
0,0,0,114,1,0,0,0,114,223,0,0,0,114,5,0,
|
0,0,0,114,1,0,0,0,114,223,0,0,0,114,5,0,
|
||||||
0,0,41,10,218,10,115,121,115,95,109,111,100,117,108,101,
|
0,0,41,10,218,10,115,121,115,95,109,111,100,117,108,101,
|
||||||
|
@ -1738,7 +1738,7 @@ const unsigned char _Py_M__importlib_bootstrap[] = {
|
||||||
108,32,105,109,112,111,114,116,101,114,115,32,102,111,114,32,
|
108,32,105,109,112,111,114,116,101,114,115,32,102,111,114,32,
|
||||||
98,117,105,108,116,105,110,32,97,110,100,32,102,114,111,122,
|
98,117,105,108,116,105,110,32,97,110,100,32,102,114,111,122,
|
||||||
101,110,32,109,111,100,117,108,101,115,78,41,6,114,227,0,
|
101,110,32,109,111,100,117,108,101,115,78,41,6,114,227,0,
|
||||||
0,0,114,15,0,0,0,114,191,0,0,0,114,120,0,0,
|
0,0,114,15,0,0,0,114,190,0,0,0,114,120,0,0,
|
||||||
0,114,160,0,0,0,114,173,0,0,0,41,2,114,225,0,
|
0,114,160,0,0,0,114,173,0,0,0,41,2,114,225,0,
|
||||||
0,0,114,226,0,0,0,114,10,0,0,0,114,10,0,0,
|
0,0,114,226,0,0,0,114,10,0,0,0,114,10,0,0,
|
||||||
0,114,11,0,0,0,218,8,95,105,110,115,116,97,108,108,
|
0,114,11,0,0,0,218,8,95,105,110,115,116,97,108,108,
|
||||||
|
@ -1771,7 +1771,7 @@ const unsigned char _Py_M__importlib_bootstrap[] = {
|
||||||
114,148,0,0,0,114,152,0,0,0,114,107,0,0,0,114,
|
114,148,0,0,0,114,152,0,0,0,114,107,0,0,0,114,
|
||||||
93,0,0,0,114,158,0,0,0,114,159,0,0,0,114,94,
|
93,0,0,0,114,158,0,0,0,114,159,0,0,0,114,94,
|
||||||
0,0,0,114,160,0,0,0,114,173,0,0,0,114,178,0,
|
0,0,0,114,160,0,0,0,114,173,0,0,0,114,178,0,
|
||||||
0,0,114,188,0,0,0,114,190,0,0,0,114,195,0,0,
|
0,0,114,187,0,0,0,114,189,0,0,0,114,194,0,0,
|
||||||
0,114,200,0,0,0,90,15,95,69,82,82,95,77,83,71,
|
0,114,200,0,0,0,90,15,95,69,82,82,95,77,83,71,
|
||||||
95,80,82,69,70,73,88,114,202,0,0,0,114,205,0,0,
|
95,80,82,69,70,73,88,114,202,0,0,0,114,205,0,0,
|
||||||
0,218,6,111,98,106,101,99,116,114,206,0,0,0,114,207,
|
0,218,6,111,98,106,101,99,116,114,206,0,0,0,114,207,
|
||||||
|
|
Loading…
Reference in New Issue