[issue27160] str.format: Silent truncation of kwargs when passing keywords containing colons

2016-05-30 Thread Kenneth Lim

Kenneth Lim added the comment:

Ah, so the truncation is fully intended behavior.

As for the name, a touch too many comic-books in the past might be the
reason I latched onto "Barry" as a first name.

Thanks for the clarification.

On Tue, May 31, 2016 at 12:37 AM, Emanuel Barry <rep...@bugs.python.org>
wrote:

>
> Emanuel Barry added the comment:
>
> The behaviour is correct, it's your assumptions that aren't :)
>
> The code for str.format only checks for what's before the colon (here,
> "HGNC") and checks if that's part of the dict provided. It isn't, so it
> raises a KeyError. It doesn't even get to the format spec part (which is a
> perfectly valid format specifier). Your dict can contain anything or be
> empty, str.format only checks for the existence of the key you asked for
> ("HGNC"). "{HGNC:11892}" is also a perfectly valid Python string.
>
> P.S.: While I'm fine with people calling me by my last name, there's
> another developer whose name is Barry Warsaw, so let's try to avoid
> confusion here ;-)
>
> --
>
> ___
> Python tracker <rep...@bugs.python.org>
> <http://bugs.python.org/issue27160>
> ___
>

--

___
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue27160>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue27160] str.format: Silent truncation of kwargs when passing keywords containing colons

2016-05-30 Thread Kenneth Lim

Kenneth Lim added the comment:

Hi Barry,

I was aware of that. However, I was alluding to the KeyError produced, and
the silent truncation of the text. Rather than failing at the colon step
(SyntaxError when on run), truncated arguments pass this step, causing
errors downstream.

On Mon, May 30, 2016 at 11:02 PM, Emanuel Barry <rep...@bugs.python.org>
wrote:

>
> Emanuel Barry added the comment:
>
> In other words, you cannot use keys containing a colon in str.format -
> you'll need to replace the colons by something else (for example an
> underscore, that works fine).
>
> --
> nosy: +ebarry
>
> ___
> Python tracker <rep...@bugs.python.org>
> <http://bugs.python.org/issue27160>
> ___
>

--

___
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue27160>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue27160] Silent truncation of kwargs when passing keywords containing colons

2016-05-30 Thread Kenneth Lim

New submission from Kenneth Lim:

Passing a dict with colon-containing keys as kwargs to a function results in a 
KeyError stemming from a silent truncation of the keys.

Error does not clearly describe the issue in this case.

--
components: Interpreter Core
files: poc.py
messages: 266696
nosy: Kenneth Lim
priority: normal
severity: normal
status: open
title: Silent truncation of kwargs when passing keywords containing colons
type: behavior
versions: Python 3.5
Added file: http://bugs.python.org/file43058/poc.py

___
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue27160>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com