This commit is contained in:
Brett Cannon 2013-04-01 13:25:40 -04:00
commit daf4daa295
3 changed files with 3485 additions and 3470 deletions

View File

@ -474,9 +474,9 @@ def _get_sourcefile(bytecode_path):
return source_path if _path_isfile(source_stats) else bytecode_path
def _verbose_message(message, *args):
def _verbose_message(message, *args, verbosity=1):
"""Print the message to stderr if -v/PYTHONVERBOSE is turned on."""
if sys.flags.verbose:
if sys.flags.verbose >= verbosity:
if not message.startswith(('#', 'import ')):
message = '# ' + message
print(message.format(*args), file=sys.stderr)
@ -637,8 +637,9 @@ def _validate_bytecode_header(data, source_stats=None, name=None, path=None):
raw_timestamp = data[4:8]
raw_size = data[8:12]
if magic != _MAGIC_BYTES:
msg = 'bad magic number in {!r}: {!r}'.format(name, magic)
raise ImportError(msg, **exc_details)
message = 'bad magic number in {!r}: {!r}'.format(name, magic)
_verbose_message(message)
raise ImportError(message, **exc_details)
elif len(raw_timestamp) != 4:
message = 'incomplete timestamp in {!r}'.format(name)
_verbose_message(message)
@ -1390,11 +1391,13 @@ class FileFinder:
is_namespace = True
# Check for a file w/ a proper suffix exists.
for suffix, loader in self._loaders:
full_path = _path_join(self.path, tail_module + suffix)
_verbose_message('trying {}'.format(full_path), verbosity=2)
if cache_module + suffix in cache:
full_path = _path_join(self.path, tail_module + suffix)
if _path_isfile(full_path):
return (loader(fullname, full_path), [])
if is_namespace:
_verbose_message('possible namespace for {}'.format(base_path))
return (None, [base_path])
return (None, [])

View File

@ -10,6 +10,9 @@ What's New in Python 3.4.0 Alpha 1?
Core and Builtins
-----------------
- Issue #17357: Add missing verbosity messages for -v/-vv that were lost during
the importlib transition.
- Issue #17323: The "[X refs, Y blocks]" printed by debug builds has been
disabled by default. It can be re-enabled with the `-X showrefcount` option.

File diff suppressed because it is too large Load Diff