Re: [Python-Dev] [Python-checkins] cpython: Issue #15031: Refactor some code in importlib pertaining to validating
Nice improvement. Just a couple of minor cleanup suggestions. On Sat, Jan 12, 2013 at 9:09 AM, brett.cannon <python-checkins@python.org> wrote:
+ else: + # To prevent having to make all messages have a conditional name. + name = 'bytecode'
For consistency with other default/implied names, I suggest wrapping this in angle brackets: "<bytecode>")
+ if path is not None: + exc_details['path'] = path + magic = data[:4] + 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) + elif len(raw_timestamp) != 4: + message = 'bad timestamp in {!r}'.format(name) + _verbose_message(message) + raise EOFError(message) + elif len(raw_size) != 4: + message = 'bad size in {!r}'.format(name) + _verbose_message(message) + raise EOFError(message)
For timestamp and size "incomplete" would probably be a better word than "bad" in the error messages (since we're only checking the length rather than the value). Cheers, Nick. -- Nick Coghlan | ncoghlan@gmail.com | Brisbane, Australia
On Fri, Jan 11, 2013 at 9:55 PM, Nick Coghlan <ncoghlan@gmail.com> wrote:
Nice improvement. Just a couple of minor cleanup suggestions.
On Sat, Jan 12, 2013 at 9:09 AM, brett.cannon <python-checkins@python.org> wrote:
+ else: + # To prevent having to make all messages have a conditional name. + name = 'bytecode'
For consistency with other default/implied names, I suggest wrapping this in angle brackets: "<bytecode>")
Good suggestion.
+ if path is not None: + exc_details['path'] = path + magic = data[:4] + 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) + elif len(raw_timestamp) != 4: + message = 'bad timestamp in {!r}'.format(name) + _verbose_message(message) + raise EOFError(message) + elif len(raw_size) != 4: + message = 'bad size in {!r}'.format(name) + _verbose_message(message) + raise EOFError(message)
For timestamp and size "incomplete" would probably be a better word than "bad" in the error messages (since we're only checking the length rather than the value).
True. Those were the original messages and in hindsight not accurate. Since we don't consider exception messages a backwards-compatible thing I'll update them.
participants (2)
-
Brett Cannon
-
Nick Coghlan