[issue32474] argparse nargs should support string wrapped integers too

2017-12-31 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

Why?  What's the motivation for supporting this?  There's no reason that I can 
think of, so I'm curious what your use case is.

--
nosy: +r.david.murray

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



[issue32462] mimetypes.guess_type() returns incorrectly formatted type

2017-12-31 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

You can get the same "bad" behavior on a posix system by having a mimetypes 
file with an incorrect entry in it.  That would be a system misconfiguration, 
as is your Windows registry case, and is outside of Python's control.  I 
suppose we could make it clearer (ie: in that intro paragraph) that the system 
files are read by default (that is, the built-in tables are only *defaults* 
unless you specify otherwise).

It is unfortunately true that the mime types in the Windows registry are less 
reliable than those on unix systems.  This has nothing to do with the mimetypes 
module itself, though ;)  I wonder if we should have made the default to be 
loading windows registry as non-strict, but that ship has sailed, I think.

Checking for at least minimal validity (xxx/yyy) would at least make things a 
little better on Windows, so I wouldn't object to adding that.

To summarize, my suggestion would be to add a note to the intro paragraph that 
system files/registry are read by default and override the built-in tables, and 
add a minimal sanity check on the mime type values read.  Adding .sql to the 
strict list is a separate issue, and would not change the behavior here (unless 
I'm missing something, which is possible).

There are issues around adding even a minimal validity check, though: do we 
backport that?  Do we silently ignore strings in the wrong format?  Do we "fix" 
a backslash to be a slash?  Do we issue a warning for any problems we find?  
These questions should be discussed if we decide to go this route.

--
nosy: +r.david.murray

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



[issue32448] subscriptable

2017-12-30 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

Well, in that case having 'organizer' in the error message wouldn't help you 
untangle your code ;)

--

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



[issue32452] Brackets and Parentheses used in an ambiguous way

2017-12-30 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

"round brackets" would require just as much thought (if not more...it's not a 
thing at all in American typographical language) for an American to understand 
as the unadorned bracket does for the rest of you, so the best compromise is 
"parenthesis instead of square brackets", since parenthesis is used elsewhere 
in the docs.

--
nosy: +r.david.murray

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



[issue32451] python -m venv activation issue when using cygwin on windows

2017-12-30 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

cygwin in not currently fully supported (there are people working on it, 
though).  Can you determine if this is a bug in cygwin's bash support, or 
something else?  It certainly works with bash shell on unix.  I would presume 
that from cygwin one would want the posix way to work, and that it should be 
possible.

--
nosy: +erik.bray, r.david.murray

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



[issue32449] MappingView must inherit from Collection instead of Sized

2017-12-29 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

Well, it would be a backward compatibility problem at a minimum.

Obviously things were designed this way.  Have you found out why?  Is there a 
consensus on python-ideas that this should be changed?  If so, please link to 
the thread.

--
nosy: +r.david.murray

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



[issue32448] subscriptable

2017-12-29 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

At the point at which that error is raised, Python doesn't know the name of the 
attribute, nor is attribute access the only place where that particular error 
report is triggered (it's in a generic subscript-this-object call).  So I doubt 
doing this would be practical.

As for Foo.organizer.blah[0], it has to be blah that is None, since 
'.organizer' is an attribute access and not a subscript operation.  The more 
difficult case is something like getattr(someobject, somevar)[0], where you 
can't tell what somevar contains just from the traceback.  Which is why some 
value-added systems also dump the locals from the frame in the traceback.

--
nosy: +r.david.murray

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



[issue15873] datetime: add ability to parse RFC 3339 dates and times

2017-12-29 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

Correct, a new feature should always get a what's new entry.  You could submit 
a PR for it :)

--

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



[issue32444] python -m venv symlink dependency on how python binary is called is not documented

2017-12-29 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

Actually, I'm going to reopen this as a doc issue because this behavior is not 
discussed by the docs that I can see, and it is important to know about when 
creating a venv.

--
assignee:  -> docs@python
components: +Documentation -Library (Lib)
nosy: +docs@python
resolution: not a bug -> 
stage: resolved -> needs patch
status: closed -> open
title: python -m venv has incongruous behavor creating binaries -> python -m 
venv symlink dependency on how python binary is called is not documented

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



[issue32444] python -m venv has incongruous behavor creating binaries

2017-12-29 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

This is a feature that actually supports your use case, as well as the use 
cases of those who *don't* want to strap the python version: you get what you 
ask for.  If you call venv with 'python3', you get a venv that will use your 
new python if you upgrade your python, but if you call it with python3.x, you 
will get a venv that will *not* upgrade, which is exactly what you want for 
your use case.

--
nosy: +r.david.murray
resolution:  -> not a bug
stage:  -> resolved
status: open -> closed
versions: +Python 3.7 -Python 3.5

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



[issue32420] LookupError : unknown encoding : [0x7FF092395AD0] ANOMALY

2017-12-28 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

Well, it's not obvious that it has anything to do with CPython itself.  You 
should probably work with the community responsible for tensorflow, whatever 
that is, and if they find a bug in CPython you can come back here with a 
report.  Given the error message it looks like an invalid value is being passed 
to CPython as the system encoding, so most likely the bug is in tensorflow 
and/or your environment.

--
nosy: +r.david.murray

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



[issue32424] Rename copy() to __copy__() in xml.etree.ElementTree.Element Python implementation

2017-12-28 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

Yes, that's why I said "from our point of view" :)  I know there is usually a 
fork in the practical sense, but we want to make it as easy as practical to 
sync that fork, which includes not breaking things in the python versions 
without good reason.

--

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



[issue32424] Rename copy() to __copy__() in xml.etree.ElementTree.Element Python implementation

2017-12-28 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

Paul Ganssle: Even if Andrew were not suggesting adding copy to the C 
implementation (I have no opinion on that currently), it would still be correct 
to maintain backward compatibility in the python version in the standard 
library.  We do not consider the standard library to be CPython specific, even 
though parts of it are.  There is no "fork" involved in other projects using 
it, from our point of view.  Quite the opposite, where possible.  We have given 
commit rights to developers from other python implementations specifically so 
they can contribute things that improve compatibility in the standard library 
and standard library test suite for those other python implementations.

--
nosy: +r.david.murray

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



[issue32431] Two bytes objects of zero length don't compare equal

2017-12-27 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

I think what Py_SIZE "means" depends on the object type in the general case, 
not just this one, so documenting that it is mucking with the internal 
representation is probably the way to go.

--

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



[issue32431] Two bytes objects of zero length don't compare equal

2017-12-27 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

My suspicion is that this behavior/code is left over from when the code was 
handling strings in python2, where strings were always null terminated and so 
the equal-bytes test would always pass.  I don't think this is appropriate for 
bytes objects, so I think the compare logic should be fixed.  But I don't deal 
with the C code much, so I'd like an opinion from a core dev who does.

--
nosy: +r.david.murray

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



[issue31639] http.server and SimpleHTTPServer hang after a few requests

2017-12-27 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

I don't think the PR as it stands is a good idea.  These classes are designed 
to be composable, so it should be up to the library user whether or not to use 
threads.  However it would be perfectly reasonable to choose to use threads in 
the 'test' function and thus the cli.  Which fact should then be documented, 
and chromium can even be mentioned as one of the motivations for using threads 
in the cli server.

--
nosy: +r.david.murray

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



[issue32419] Add unittest support for pyc projects

2017-12-25 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

There may be now, but I don't think there was when unittest was written.  Also, 
if someone decided to use namespace packages for tests for some reason, the 
current check would also probably fail, so it may be worth looking for (or 
creating if needed) a standard way to check via importlib.

--

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



[issue32419] Add unittest support for pyc projects

2017-12-24 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

Éric: in python3 if no .py is found but a .pyc is found where the .py is 
expected, it will be imported and run.  This supports sourceless package 
distributions, which is something we only sorta-support :)

The change looks simple enough that it might be worth doing, but I'll leave 
that to the unittest maintainers.  If accepted there should be comments as to 
why a .pyc is being checked for.

--
nosy: +r.david.murray

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



[issue32412] help() of bitwise operators should mention sets as well

2017-12-23 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

Which help are you talking about?  The Operator Precedence table that you get 
if you do, eg: help('&')?  I don't think it would be appropriate to mention 
specialized uses of the operators there, although perhaps we could add a 
general note about operator overloading in the intro paragraph and use set as 
the example.  Looking at help('BITWISE'), we could add 'when the arguments are 
numbers' after the precedence table, but since that section is called 'bitwise' 
I don't think we even want to mention set there.  Did you have other sections 
in mind?

--
nosy: +r.david.murray

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



[issue32407] lib2to3 doesn't work when zipped

2017-12-22 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

Funny, you are already nosy on that issue.  Does this one have a different 
goal, or did you just forget about that one?

--

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



[issue32407] lib2to3 doesn't work when zipped

2017-12-22 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

Duplicate of issue 24960.

--
nosy: +r.david.murray
resolution:  -> duplicate
stage:  -> resolved
status: open -> closed
superseder:  -> Can't use lib2to3 with embeddable zip file.

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



[issue32405] clr: AttributeError: 'module' object has no attribute 'AddReference'

2017-12-21 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

Whatever clr is, it doesn't look like it is part of the Python standard 
library.  Please contact the clr community for support on this package, or post 
to the python-list mailing list.

--
nosy: +r.david.murray
resolution:  -> third party
stage:  -> resolved
status: open -> closed

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



[issue32398] OSX C++ linking workaround in distutils breaks other packages

2017-12-21 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

I doubt we can make the change this way for backward compatibility reasons.  
That doesn't mean the situation can't be improved, though.

--
components: +macOS
nosy: +ned.deily, ronaldoussoren

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



[issue32398] GDAL compilation error

2017-12-21 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

Please describe the problem and your proposed solution in more detail and in 
terms of CPython, so that it can be discussed by the relevant experts.  GDAL is 
a third party product and only relevant as an example, so it would also be good 
to come up with a better title for the issues ;)

--
nosy: +r.david.murray

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



[issue32323] urllib.parse.urlsplit() must not lowercase() IPv6 scope value

2017-12-21 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

I don't think a zone id in that form is actually valid in a URI, but I agree 
that not messing with whatever is there is probably the best policy as long as 
we aren't directly supporting whatever *is* valid.

--

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



[issue32306] Clarify map API in concurrent.futures

2017-12-21 Thread David Lukeš

David Lukeš <dafydd.lu...@gmail.com> added the comment:

Perfect, thanks!

--

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



[issue32389] urllib3 wrong computation of 'Content-Length' for file upload

2017-12-20 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

Yes, this would appear to be both 3rd party and a support request rather than a 
bug report.  Gianguido: please work with the urllib3 community, or post to the 
python-list mailing list.  If you identify an actual bug in Python itself, you 
can come back here to report it.

--
nosy: +r.david.murray
resolution:  -> third party
stage:  -> resolved
status: open -> closed

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



[issue32384] Generator tests is broken in non-CPython implementation

2017-12-20 Thread R. David Murray

Change by R. David Murray <rdmur...@bitdance.com>:


--
nosy: +yselivanov
type: enhancement -> behavior

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



[issue32381] Python 3.6 cannot reopen .pyc file with non-ASCII path

2017-12-20 Thread R. David Murray

Change by R. David Murray <rdmur...@bitdance.com>:


--
keywords: +3.6regression

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



[issue32306] Clarify map API in concurrent.futures

2017-12-20 Thread David Lukeš

David Lukeš <dafydd.lu...@gmail.com> added the comment:

Yes, sorry for not being quite clear the first time around :)

I eventually found out about Pool.imap (see item 3 on list in OP) and indeed it 
fits my use case very nicely, but my point was that the documentation is 
somewhat misleading with respect to the semantics of built-in `map()` in Python 
3.

Specifically, I would argue that it is unexpected for a function which claims 
to be "Equivalent to map(func, *iterables)" to require allocating a list the 
length of the shortest iterable.

Maybe a code example will make this clearer for potential newcomers to the 
discussion -- this is what I would expect to happen (= the behavior of built-in 
`map()` itself), yielding values from the iterable is interleaved with calls to 
the mapped function:

```
>>> def gen():
... for i in range(3):
... print("yielding", i)
... yield i
... 
>>> def add1(i):
... print("adding 1 to", i)
... return i + 1
... 
>>> list(map(add1, gen()))
yielding 0
adding 1 to 0
yielding 1
adding 1 to 1
yielding 2
adding 1 to 2
[1, 2, 3]
```

This is what happens instead with `concurrent.futures.Executor.map()`:

```
>>> def my_map(fn, iterable):
... lst = list(iterable)
... for i in lst:
... yield fn(i)
... 
>>> list(my_map(add1, gen()))
yielding 0
yielding 1
yielding 2
adding 1 to 0
adding 1 to 1
adding 1 to 2
[1, 2, 3]
```

--

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



[issue32306] Clarify map API in concurrent.futures

2017-12-20 Thread David Lukeš

David Lukeš <dafydd.lu...@gmail.com> added the comment:

Hi Antoine,

Thanks for the response! :) I think the problem lies in the line immediately 
preceding the code you've posted:

```
fs = [self.submit(fn, *args) for args in zip(*iterables)]
```

In other words, all the jobs are first submitted and their futures stored in a 
list, which is then iterated over. This approach obviously breaks down when 
there is a great number of jobs, or when it's part of a pipeline meant for 
processing jobs continuously as they come.

--

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



[issue32268] quopri.decode(): string argument expected, got 'bytes'

2017-12-19 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

Yes, if that protocol existed the errors would be clearer.  But it doesn't, for 
historical reasons, and that is unlikely to change.

You are welcome to submit an enhancement request to make quopri accept string 
as an argument when decoding.  But when encoding, it must produce bytes, 
because "ASCII" is a *byte* encoding, not a unicode encoding (unicode is ascii 
compatible, but it is neither ascii nor bytes).  You might have to write the PR 
yourself, I'm not sure if anyone else will be interested (but some of the 
people on the core-mentorship mailing list might be).

StringIO is specifically designed to only operate on strings.  If you want to 
decode the bytes you feed it, you have to do that.  This is an intentional 
design.

Further discussion of ways to improve the situation should move to the 
python-idea mailing list.  There's really nothing to do here from a bug tracker 
perspective, unless you want to open an enhancement request as mentioned above.

--

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



[issue32268] quopri.decode(): string argument expected, got 'bytes'

2017-12-19 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

That's type checking.  Not type checking is to call the method that writes the 
data, expecting the object to handle the bytes it is passed, and then that 
object raises an error to indicate that it cannot.  There is no protocol that 
can be checked for.

--

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



[issue32376] Unusable syntax error reported when Python keyword in a f-string

2017-12-19 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

The existing issue is #29051.

--
nosy: +r.david.murray
resolution:  -> duplicate
stage: needs patch -> resolved
status: open -> closed
superseder:  -> Improve error reporting involving f-strings (PEP 498)

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



[issue32361] global / nonlocal interference : is this a bug, a feature or a design hole ?

2017-12-19 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

Hmm.  I suppose that could be clarified in the docs.  I would find it very 
counter-intuitive for the grandparent 'a' to be accessible, which is probably 
why I did not consider that an issue.

--

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



[issue32361] global / nonlocal interference : is this a bug, a feature or a design hole ?

2017-12-19 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

When I said "the only thing keeping this issue open" is the message, I should 
acknowledge that you mentioned clarifying the documentation, but as I pointed 
out the documentation is already clear: it says nonlocal does not access 
variables in the global scope, and in your example 'a' is a variable in the 
global scope, because it is declared to be one.  We generally don't update PEPs 
after they are accepted and implemented; after that point the documentation is 
the real reference since the implementation may actually be different in detail 
than the PEP due to later enhancements. The PEP is still useful as an 
historical document.  (There are exceptions to that, but that is the general 
rule.)

--

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



[issue32361] global / nonlocal interference : is this a bug, a feature or a design hole ?

2017-12-19 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

Right, it was indeed "designed that way" in the sense that nolocal was only 
ever intended to access variables from the surrounding local scope, *not* the 
global scope.  If you put a variable name in the global scope, nonlocal was not 
intended to be able to access it (it is then a global variable, not a local 
variable).

So the only question that keeps this issue open is can the error message be 
improved for the case where a global declaration affects the variable name in 
question (the message is clear when there is no variable with that name in the 
outer function at all).

Any change to this design would be an enhancement request and discussion of it 
should start on the python-ideas mailing list.

--

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



[issue32361] global / nonlocal interference : is this a bug, a feature or a design hole ?

2017-12-18 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

What is happening here is that what nonlocal does is give the function 
containing the nonlocal statement access to the "cell" in the parent function 
that holds the local variable of that function.  When you use a global 
statement, the name instead refers to a global variable, and  there is no local 
cell created for that variable name.  Thus you get "no binding [cell] for 
nonlocal 'a' found".  That is literally correct from the compiler's point of 
view.

I agree that this message is mysterious unless you understand how python 
scoping works at a fairly detailed level, and thus it would be nice if the 
error message could be improved.  The code generating the message may not know 
that there's a global statement for that name in effect, though, so it might 
not be trivial to improve it.

Would it be possible for nonlocal to effectively "chain", and turn the 
references in the inner function into global references?  In theory the answer 
would be yes, but in practice it might be distinctly non-trivial, and would 
probably be a PEP level change to the language.  It is currently documented 
that nonlocal does not look in to the global namespace 
(https://docs.python.org/3/reference/simple_stmts.html#nonlocal): "The nonlocal 
statement causes the listed identifiers to refer to previously bound variables 
in the nearest enclosing scope excluding globals.)

--

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



[issue32366] suggestion:html.escape(s, quote=True) escape \n to

2017-12-18 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

The point of html.escape is to sanitize a string that contains html such that 
*it does not get interpreted as html*.  So adding html markup would go against 
its purpose.  Further, including  in an attribute value (which is the 
purpose of quote=True) would make no sense and serve no purpose that I can see.

Clearly you have a use case in mind, but you did not describe it.  I would 
recommend posting to the python-list mailing list for advice on the best way to 
accomplish your use case.

--
components: +Library (Lib) -XML
nosy: +r.david.murray
resolution:  -> rejected
stage:  -> resolved
status: open -> closed

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



[issue32361] global / nonlocal interference : is this a bug, a feature or a design hole ?

2017-12-18 Thread R. David Murray

Change by R. David Murray <rdmur...@bitdance.com>:


--
nosy: +r.david.murray

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



[issue32276] there is no way to make tempfile reproducible (i.e. seed the used RNG)

2017-12-18 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

IMO it is better to have an API that can be used when, for example, writing 
tests, than to monkey patch.  On the other hand, I've never had an occasion 
when I cared about the names of tempfiles (or directories) in my test code, and 
it is hard to imagine a circumstance when being able to reproduce the sequence 
of tempfile names chosen would matter for debugging...especially since which 
filenames are actually chosen from the randomly generated sequence can depend 
on other activity on the system.  So I concur with the rejection. 

I wouldn't object to some sort of API that allowed one to control the filename 
generation without worrying that later changes to the module would break ones 
code, but that isn't actually the use case here, so no one has actually asked 
for this feature ;)

--
nosy: +r.david.murray
resolution: fixed -> rejected

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



[issue32264] move pygetopt.h into internal/

2017-12-16 Thread David Bolen

David Bolen <db3l@gmail.com> added the comment:

After some further testing, it does not appear to be configure related but 
something environmental (maybe MACOSX_DEPLOYMENT_TARGET) - using the same 
configure options manually as build-installer seems ok.

For what it's worth, since there do appear to be duplicate definitions in 
pygetopt.h and getopt.c, adding "extern" to the declarations in pygetopt.h 
appears to resolve the issue.  It looks like that was lost with the removal of 
PyAPI_DATA.

--

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



[issue32264] move pygetopt.h into internal/

2017-12-16 Thread David Bolen

David Bolen <db3l@gmail.com> added the comment:

This commit appears to have broken OSX installer builds using the 
build-installer.py script (as in the last two attempts on the bolen-dmg-3.x 
builder), confirmed with a bisection from the first failing worker build 
(covering the range 02a0a19..3327a2d)

It fails during the main python compilation with:

ld: multiple definitions of symbol __PyOS_optarg
libpython3.7m.a(getopt.o) definition of __PyOS_optarg in section (__DATA,__data)
libpython3.7m.a(main.o) definition of __PyOS_optarg in section (__DATA,__common)
ld: multiple definitions of symbol __PyOS_opterr

(repeated for the various __PyOS__opt* symbols.

It doesn't seem to be a problem with a simple manual configure/make build 
(probably why the regular OSX workers aren't failing).  

So best guess at the moment is it's related to one of the extra configure 
options used by the build-installer script.  I'm not sure which of the commit 
or build process needs correction, although reverting this at least temporarily 
would resolve the immediate issue.

--
nosy: +db3l, ned.deily, ronaldoussoren

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



[issue32340] ValueError: time data 'N/A' does not match format '%Y%m%d'

2017-12-15 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

This is not a bug in python.  If it is your code contact the pyhon-list mailing 
for help.  If you got whatsapp_xtract from somewhere else, contact that 
community with your questions.

--
nosy: +r.david.murray
resolution:  -> third party
stage:  -> resolved
status: open -> closed

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



[issue32330] Email parser creates a message object that can't be flattened

2017-12-15 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

I do wonder where you are using the string version of messages :)

I actually thought I'd already done this (errors=replace), but obviously not.  
I don't have time now to work on a patch for this, and the patch in the other 
issue hasn't be updated to reflect the review I did :(

--

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



[issue32330] Email parser creates a message object that can't be flattened

2017-12-14 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

What would you like to see happen in that situation?  Should we use 
errors=replace like we do for headers?  (That seems reasonable to me.)

Note that it can be re-serialized as binary.

--

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



[issue32323] urllib.parse.urlsplit() must not lowercase() IPv6 scope value

2017-12-14 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

In quick search the only RFC reference to this I found was 
https://tools.ietf.org/id/draft-sweet-uri-zoneid-01.html, which doesn't match 
what you are requesting (not that urlsplit's current behavior matches that 
either).  

Do you have RFC references?

--
nosy: +r.david.murray

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



[issue32307] Bad assumption on thread stack size makes python crash with musl libc

2017-12-14 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

I think we need people who do a lot of work at the C level to evaluate this, so 
I've added a couple to the nosy list :)

--
nosy: +serhiy.storchaka, vstinner

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



[issue32307] Bad assumption on thread stack size makes python crash with musl libc

2017-12-13 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

Well, from our point of view it isn't a bad assumption, it's that muslc needs 
to be added to the list of exceptions.  (I know almost nothing about this...I 
assume there is some reason we can't determine the stack size programatically?)

Would you care to propose a PR?

--
nosy: +r.david.murray

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



[issue32300] print(os.environ.keys()) should only print the keys

2017-12-13 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

Agreed about the other classes if we change this.  Your solution looks 
reasonable to me.

--

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



[issue32306] Clarify map API in concurrent.futures

2017-12-13 Thread David Lukeš

New submission from David Lukeš <dafydd.lu...@gmail.com>:

The docstring for `concurrent.futures.Executor.map` starts by stating that it 
is "Equivalent to map(func, *iterables)". In the case of Python 3, I would 
argue this is true only superficially: with `map`, the user expects 
memory-efficient processing, i.e. that the entire resulting collection will not 
be held in memory at once unless s/he requests so e.g. with `list(map(...))`. 
(In Python 2, the expectations are different of course.) On the other hand, 
while `Executor.map` superficially returns a generator, which seems to align 
with this expectation, what happens behind the scenes is that the call blocks 
until all results are computed and only then starts yielding them. In other 
words, they have to be stored in memory all at once at some point.

The lower-level multiprocessing module also describes 
`multiprocessing.pool.Pool.map` as "A parallel equivalent of the map() built-in 
function", but at least it immediately goes on to add that "It blocks until the 
result is ready.", which is a clear indication that all of the results will 
have to be stored somewhere before being yielded.

I can think of several ways the situation could be improved, listed here from 
most conservative to most progressive:

1. Add "It blocks until the result is ready." to the docstring of 
`Executor.map` as well, preferably somewhere at the beginning.
2. Reword the docstrings of both `Executor.map` and `Pool.map` so that they 
don't describe the functions as "equivalent" to built-in `map`, which raises 
the wrong expectations. ("Similar to map(...), but blocks until all results are 
collected and only then yields them.")
3. I would argue that the function that can be described as semantically 
equivalent to `map` is actually `Pool.imap`, which yields results as they're 
being computed. It would be really nice if this could be added to the 
higher-level `futures` API, along with `Pool.imap_unordered`. `Executor.map` 
simply doesn't work for very long streams of data.
4. Maybe instead of adding `imap` and `imap_unordered` methods to `Executor`, 
it would be a good idea to change the signature of `Executor.map(func, 
*iterables, timeout=None, chunksize=1)` to `Executor.map(func, *iterables, 
timeout=None, chunksize=1, block=True, ordered=True)`, in order to keep the API 
simple with good defaults while providing flexibility via keyword arguments.
5. I would go so far as to say that for me personally, the `block` argument to 
the version of `Executor.map` proposed in #4 above should be `False` by 
default, because that would make it behave most like built-in `map`, which is 
the least suprising behavior. But I've observed that for smaller work loads, 
`imap` tends to be slower than `map`, so I understand it might be a tradeoff 
between performance and semantics. Still, in a higher-level API meant for 
non-experts, I think semantics should be emphasized.

If the latter options seem much too radical, please consider at least something 
along the lines of #1 above, I think it would help people correct their 
expectations when they first encounter the API :)

--
components: Library (Lib)
messages: 308221
nosy: David Lukeš
priority: normal
severity: normal
status: open
title: Clarify map API in concurrent.futures
type: enhancement
versions: Python 3.8

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



[issue32300] print(os.environ.keys()) should only print the keys

2017-12-13 Thread R. David Murray

Change by R. David Murray <rdmur...@bitdance.com>:


--
nosy: +csabella

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



[issue32300] print(os.environ.keys()) should only print the keys

2017-12-13 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

This is a consequence of the repr used by KeysView, which it inherits from 
MappingView.  I agree that the result is surprising, but there may not be a 
generic fix.  It's not entirely clear what KeysView should do here, but 
presumably we could at least add a repr to environ's use of it that would 
produce something useful.

Note that a workaround when doing something like a travis debug is to print 
os.environ._data.keys(), which will print the bytes versions of the keys.  I 
wouldn't recommend depending on that continuing to, though ;)

--
nosy: +r.david.murray, rhettinger, vstinner -csabella
type: behavior -> 
versions:  -Python 3.6

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



[issue32298] Email.quopriprime over-encodes characters

2017-12-12 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

And of course tools can grep for "f...@bar.com": you can't use encoded words in 
an address, only in the display name.

However, it occurs to me that in fact the restriction applies only to phrases, 
so one could use a less restrictive character set in an unstructured header 
such as the Subject, and that would indeed be nice.  The old header folder 
(python 2.7 and python 3.x compat32 policy) can't do it, because they don't 
know anything about the syntax of the headers they fold, they just use a bunch 
of heuristics.  The new policies in python3, however, use a smarter folder from 
_header_value_parser, and that *does* have access to the full parse tree for 
the header, and so could make smart decisions about which character set to use 
for the encoded word encoding.

If you'd like to try your hand at a PR implementing this idea, I'll be happy to 
provide advice and do a review.  It's not going to be anywhere near as simple 
as the one line change you proposed here, though :)

--

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



[issue32298] Email.quopriprime over-encodes characters

2017-12-12 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

>From RFC 2047:

(3) As a replacement for a 'word' entity within a 'phrase', for example,
one that precedes an address in a From, To, or Cc header.  The ABNF
definition for 'phrase' from RFC 822 thus becomes:

phrase = 1*( encoded-word / word )

In this case the set of characters that may be used in a "Q"-encoded
'encoded-word' is restricted to: .  An 'encoded-word' that appears within a
'phrase' MUST be separated from any adjacent 'word', 'text' or
'special' by 'linear-white-space'.

The reason for this is that things like '@' are syntactically significant in 
headers and so must be encoded.

--
nosy: +r.david.murray
resolution:  -> not a bug
stage:  -> resolved
status: open -> closed

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



[issue32268] quopri.decode(): string argument expected, got 'bytes'

2017-12-12 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

We generally don't do advance type checking (look before you leap) in Python.  
This allows a type the programmer hadn't planned for to be used as long as it 
"quacks like" the expected type (this is called duck typing).  So the error was 
produced exactly where it should be and exactly as it should be: it was 
produced by the StringIO object you provided, when quopri tried to write the 
binary output that it produces to the object you handed it.

--

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



[issue32288] Inconsistent behavior with slice assignment?

2017-12-12 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

It actually makes sense that a slice assignment with a different length 
replacement list with a step of 1 works but any other step doesn't.  Logically 
you can see that you can cut out a chunk and replace it with a different sized 
chunk, but you can't do that if the step is not abs(1).  So a doc tweak may be 
appropriate.  And it is surprising that -1 doesn't work (but why would you ever 
use it? :), so that might be a buglet.

For a numpy array, I imagine the rules are different, so an error there on 
stride 1 is not that surprising either, though *perhaps* there is room for 
improvement on the numpy side.  (In other words, the stride 1 python behavior 
is "correct" from a python language perspective.)

And yes, it would be much easier to discuss these separate issues in separate 
issues.  Now you know for next time :)

--
nosy: +r.david.murray

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



[issue32287] Import of _pyio module failed on cygwin

2017-12-12 Thread R. David Murray

Change by R. David Murray <rdmur...@bitdance.com>:


--
nosy: +erik.bray

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



[issue32268] quopri.decode(): string argument expected, got 'bytes'

2017-12-10 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

Right, this is not a bug, it is working as documented.  You could submit an 
enhancement request, but I'm surprised to find that anyone is actually using 
that module :)

We unfortunately have multiple implementations of quoted printable handling in 
the stdlib.  You might be interested in the functions in the binascii module, 
which do accept unicode input when doing decoding.

--
nosy: +r.david.murray
resolution:  -> not a bug
stage:  -> resolved
status: open -> closed
type:  -> behavior

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



[issue32267] strptime misparses offsets with microsecond format

2017-12-10 Thread R. David Murray

Change by R. David Murray <rdmur...@bitdance.com>:


--
nosy: +belopolsky

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



[issue32259] Misleading "not iterable" Error Message when generator return a "simple" type, and a tuple is expected

2017-12-10 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

I shouldn't have searched the docs for 'unpackable', I should have searched for 
'unpack'.  Doing that reveals that the term 'unpack' is used for other 
concepts, whereas the term 'iterable' is precise.  So I think it would 
unacceptably lower the precision of the error message to add that word.

--

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



[issue32259] Misleading "not iterable" Error Message when generator return a "simple" type, and a tuple is expected

2017-12-10 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

> How about "[TYPE] object is not iterable/unpackable"

I just grepped the docs, and the term 'unpackable' does not appear anywhere in 
them.  I don't think this would be an improvement.

As for the earlier suggestion of adding "expected tuple" does not work, because 
it is not a tuple being expected, it is an iterable, and saying "expected 
iterable" would be redundant with saying "is not iterable".

What about "TypeError: expected iterable but found "?  That's parallel to 
some other type error messages we already generate.  Would that be any clearer? 
 (I'm not sure it would be, it says the same thing.)

--
nosy: +r.david.murray

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



[issue32255] csv.writer converts None to '""\n' when it is first line, otherwise '\n'

2017-12-10 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

The second case is indeed the bug, as can be seen by running the examples 
against python2.7.  It looks like this was probably broken by 7901b48a1f89 from 
issue 23171.

--
components: +Library (Lib) -IO
nosy: +r.david.murray
stage: patch review -> needs patch
versions:  -Python 2.7, Python 3.4, Python 3.5, Python 3.8

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



[issue32255] csv.writer converts None to '""\n' when it is first line, otherwise '\n'

2017-12-10 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

Serhiy, since it was your patch that probably introduced this bug, can you take 
a look?  Obviously it isn't a very high priority bug, since no one has reported 
a problem (even this issue isn't reporting the change in behavior as a 
*problem* :)

--
nosy: +serhiy.storchaka

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



[issue22589] mimetypes uses image/x-ms-bmp as the type for bmp files

2017-12-08 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

Thanks, nitishch.  As I said, I'm not going to backport this unless someone 
advances an argument in favor that discusses the possible backward 
compatibility issue.  (I'm not sure there are any significant ones, but someone 
needs to research it and present the results.)

--
resolution:  -> fixed
stage: patch review -> resolved
status: open -> closed
versions: +Python 3.7 -Python 2.7

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



[issue22589] mimetypes uses image/x-ms-bmp as the type for bmp files

2017-12-08 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:


New changeset ede157331b4f9e550334900b3b4de1c8590688de by R. David Murray 
(Nitish Chandra) in branch 'master':
bpo-22589 Changed MIME type of .bmp to "image/bmp" (#4756)
https://github.com/python/cpython/commit/ede157331b4f9e550334900b3b4de1c8590688de


--

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



[issue32212] few discrepancy between source and docs in logging

2017-12-06 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

It does matter, though, because in Python you can specify a positional argument 
as if it were a keyword argument if you use the name from the source rather 
than the documented name.  We have made other doc corrections along these 
lines.  We've even done it for C functions where you can't specify the argument 
as if it were a keyword argument, though that is considerably more rare.

That's a different question from the question of whether typing/linters should 
care, though.  Arguably they should recommend specifying them as positionals.

--
status: pending -> open

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



[issue32229] Simplify hiding developer warnings in user facing applications

2017-12-06 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

Ah, OK, that makes more sense.  I don't run into warnings other than 
DeprecationWarnings in practice, so I tend to forget about them :)

I think specifying warnings filters is pretty inscrutable, in general.

--

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



[issue32229] Simplify hiding developer warnings in user facing applications

2017-12-06 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

I haven't been following that discussion, and isolated from that that 
discussion the title of this issue and this proposal make no sense to me.  
Warnings are off by default, so you don't need to hide them.  In what context 
does this get used?  If this is going to be used to implement turning warnings 
on for the main application, why isn't it named "show_warnings"?

--
nosy: +r.david.murray

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



[issue32215] sqlite3 400x-600x slower depending on formatting of an UPDATE statement in a string

2017-12-05 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

It disappears for me running it on linux with the blank added.

--

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



[issue22589] mimetypes uses image/x-ms-bmp as the type for bmp files

2017-12-05 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

That's the basis, but its a bit more complicated than that (NEWS item, putting 
bpo-22589 in the issue title, the question of signing a CLA, though a CLA 
doesn't really matter for this kind of change IMO).  If you can't do it one of 
our core-mentorship volunteers will take care of it, I'm sure.

--
keywords: +easy

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



[issue22589] mimetypes uses image/x-ms-bmp as the type for bmp files

2017-12-05 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

If image/bmp is now[*] the official IANA type, mimetypes should use that.  
However, because this is a change with possible backward compatibility issues, 
it should probably only go into 3.7, but I'm open to arguments about that.

[*] The mimetypes module is very old and nobody specifically maintains it; we 
depend on user reports for updates to it, and obviously this one was 
overlooked.  Care to prepare a PR?

--
nosy: +r.david.murray

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



[issue27240] 'UnstructuredTokenList' object has no attribute '_fold_as_ew'

2017-12-05 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

Huh, I thought I had closed it.

--
resolution:  -> fixed
stage: patch review -> resolved
status: open -> closed

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



[issue32217] freeze.py fails to work.

2017-12-04 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

Does the 3.6.0 freeze fail under 3.6.0, or the 3.6.3 freeze fail under 3.6.3?  
If not, there's no bug to report.

--
nosy: +r.david.murray

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



[issue32215] sqlite3 400x-600x slower depending on formatting of an UPDATE statement in a string

2017-12-04 Thread R. David Murray

Change by R. David Murray <rdmur...@bitdance.com>:


--
versions: +Python 3.7

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



[issue32215] sqlite3 400x-600x slower depending on formatting of an UPDATE statement in a string

2017-12-04 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

...using the *same* sqlite version...

--

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



[issue32215] sqlite3 400x-600x slower depending on formatting of an UPDATE statement in a string

2017-12-04 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

I can confirm that there is a difference on linux as well, using the sqlite 
version for both 2.7 and 3.7:

rdmurray@pydev:~/python/p27[2.7]>./python sqlite3_27_36_performance_bug.py
First step: 3.22849011421
Second step: 3.2167429924

rdmurray@pydev:~/python/p37[master]>./python 
../p27/sqlite3_27_36_performance_bug.py
First step: 3.2722721099853516
Second step: 4.094221353530884

(I changed time.clock() to time.time()).

--
nosy: +r.david.murray

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



[issue32213] assertRaises and subTest context managers cannot be nested

2017-12-04 Thread R. David Murray

Change by R. David Murray <rdmur...@bitdance.com>:


--
resolution:  -> not a bug

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



[issue32213] assertRaises and subTest context managers cannot be nested

2017-12-04 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

Yes, that's an easy mistake to make.  I avoided it by only running one of the 
tests cases at a time, and I'll admit I had to think about it for a while to 
understand what was going on in your first case.

--

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



[issue32213] assertRaises and subTest context managers cannot be nested

2017-12-04 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

To be pedantic, are not macros, they are context managers :)

Your first case is not something I would have thought of coding.  In the 
to_raise=True case, the subTest is failing because an exception is raised 
inside its scope.  In the to_raise=False case, the subTest scope has already 
ended before the assertRaises scope completes and raises its error because no 
exception was raised.  That is, there is no subTest in effect to be reported 
when that failure occurs.

In your second case, when to_raise is False, no exception is raised, so the 
assertRaises correctly fails, and the subtest reports that to_raise is False.  
When to_raise is true, the exception is raised, the assertRaises passes and so 
does the subtest.  In other words, I can't reproduce the problem you cite for 
the second case.  Looking at what you pasted, it looks like you confused a 
test_assert_outer report with a test_report_inner report.

So, as far as I can see, there's nothing broken here, everything is working 
according to the documentation :)

--
nosy: +r.david.murray

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



[issue32212] few discrepancy between source and docs in logging

2017-12-04 Thread R. David Murray

Change by R. David Murray <rdmur...@bitdance.com>:


--
stage:  -> needs patch
versions: +Python 3.7 -Python 3.4, Python 3.5

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



[issue32212] few discrepancy between source and docs in logging

2017-12-04 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

Ah.  I'm guessing Vinay will probably want to fix the docs, then, since that's 
less disruptive backward compatibility wise.

--
nosy: +vinay.sajip

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



[issue32212] few discrepancy between source and docs in logging

2017-12-04 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

I don't understand what the bug is that you are reporting here.  Can you 
clarify?  mypy isn't part of the stdlib, so an explanation in terms of what's 
in the stdlib would be helpful.

--
nosy: +r.david.murray

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



[issue32182] Infinite recursion in email.message.as_string()

2017-12-03 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

I checked, and your example works correctly with the patch applied.  I've 
committed the PR.  Let me know if you find any other issues (there are several 
open issues with exactly how headers are wrapped, but I don't think there are 
any open where serialization fails completely.)

--
resolution:  -> fixed
stage:  -> resolved
status: open -> closed
type: crash -> behavior
versions: +Python 3.7

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



[issue31831] EmailMessage.add_attachment(filename="long or spécial") crashes or produces invalid output

2017-12-03 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

The PR has been committed.

--
resolution:  -> fixed
stage:  -> resolved
status: open -> closed
type: crash -> behavior
versions:  -Python 3.4, Python 3.5

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



[issue30788] email.policy.SMTP.fold() issue for long filenames with spaces

2017-12-03 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

The PR has been committed.

--
resolution:  -> fixed
stage: patch review -> resolved
status: open -> closed
versions:  -Python 3.5

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



[issue27240] 'UnstructuredTokenList' object has no attribute '_fold_as_ew'

2017-12-03 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:


New changeset a87ba60fe56ae2ebe80ab9ada6d280a6a1f3d552 by R. David Murray (Miss 
Islington (bot)) in branch '3.6':
bpo-27240 Rewrite the email header folding algorithm. (GH-3488) (#4693)
https://github.com/python/cpython/commit/a87ba60fe56ae2ebe80ab9ada6d280a6a1f3d552


--

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



[issue27240] 'UnstructuredTokenList' object has no attribute '_fold_as_ew'

2017-12-03 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:


New changeset 85d5c18c9d83a1d54eecc4c2ad4dce63194107c6 by R. David Murray in 
branch 'master':
bpo-27240 Rewrite the email header folding algorithm. (#3488)
https://github.com/python/cpython/commit/85d5c18c9d83a1d54eecc4c2ad4dce63194107c6


--

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



[issue32174] nonASCII punctuation characters can not display in python363.chm.

2017-12-02 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

The doc source files do not contain smart quotes, and as far as I know, sphinx 
does produce correct utf-8.

Recently there was a bug where incorrect smart quotes were leaking out of the 
internationalization of the docs, so this might be a problem that is already 
fixed.  On the other hand, there might be something broken about the chm 
production process.  I have no idea who would be the right person to 
investigate that, since I think Steve just spins the wheel on existing tools to 
get them generated :)

On the gripping hand, could there be something broken about your local charset 
configuration?  Does anyone else see this problem?

--
nosy: +r.david.murray

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



[issue32172] Add length counter for iterables

2017-12-02 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

Guido specifically rejected __len__ for iterators when the iteration protocol 
was designed.  This has become a FREQ in recent times (Frequently Rejected 
Enhancement Request :)

The rationale, as I understand it, is that an iterator object should always 
evaluate to True in a boolean context, but I don't know why.  There is also a 
consistency argument: since not all iterators *can* have a len, then none 
should, because if some did and some didn't you couldn't use iterators 
interchangeably in code the way you can now.  In other words, you can't make 
__len__ part of the iterator protocol, so iterators don't have a __len__.

--
nosy: +r.david.murray

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



[issue32168] Mutable instance variables don't get new references with args.

2017-12-02 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

For the record: https://docs.python.org/3/faq/programming.html#id13

--
nosy: +r.david.murray

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



[issue32182] Infinite recursion in email.message.as_string()

2017-12-01 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

It is gh-3488 if you want to try it out.  Feedback welcome.

--

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



[issue32182] Infinite recursion in email.message.as_string()

2017-11-30 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

This is almost certainly either a duplicate or will be fixed by a PR I have 
pending, that I don't have time to look for right now, that rewrites the 
folder.  I'll try to get to merging that PR soonish, but it might not happen 
before the holidays ;)

--

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



[issue32144] email.policy.SMTP and SMTPUTF8 doesn't honor linesep's value

2017-11-30 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

A note would be too heavy handed.  And get_content is a different function from 
get_payload, so there is no change in behavior, there is a new API with a more 
consistent behavior.  Basically, Python programs in general use \n line endings 
internally, and email was an exception to that rule (and is no longer, in the 
new API).  (There's a now closed issue about this somewhere in the tracker.)

--

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



[issue32142] heapq.heappop - documentation misleading or doesn't work

2017-11-30 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

I would suggested following the statement "To create a heap, use a list 
initialized to [], or you can transform a populated list into a heap via 
function heapify()." with "Any mutation of the list thereafter must maintain 
the heap invariant in order for the list to remain a heap."

--
nosy: +r.david.murray

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



[issue32117] Tuple unpacking in return and yield statements

2017-11-29 Thread David Cuthbert

David Cuthbert <da...@kanga.org> added the comment:

Oops, I wasn't looking broadly enough. This is also used in the augmented 
assignment statements syntax, e.g. a += 1, 2, 3

--

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



[issue32117] Tuple unpacking in return and yield statements

2017-11-29 Thread David Cuthbert

David Cuthbert <da...@kanga.org> added the comment:

Hm... that leaves the only production for expression_list as:
subscription ::= primary "[" expression_list "]"

And I'm not sure that this shouldn't also be replaced by starred_list. It's not 
accepted today, though:

In [6]: a[1,*(4, 5, 6)]
  File "", line 1
a[1,*(4, 5, 6)]
^
SyntaxError: invalid syntax

I will ask about this again on python-dev@

--

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



[issue32117] Tuple unpacking in return and yield statements

2017-11-29 Thread David Cuthbert

David Cuthbert <da...@kanga.org> added the comment:

CLA processed, and BDFL has assented on python-dev. Serhiy, thoughts on next 
steps?

--

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



[issue32159] Remove tools for CVS and Subversion

2017-11-29 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

I think Serhiy's point is that it doesn't matter whether or not it is used by a 
tool, it is useful for humans.  I don't know if it is used by the tracker; Ezio 
worked on that code, I think.

--

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



[issue32144] email.policy.SMTP and SMTPUTF8 doesn't honor linesep's value

2017-11-28 Thread R. David Murray

R. David Murray <rdmur...@bitdance.com> added the comment:

OK, I should have used the term the docs actually use: "serialization".  
get_content() is, I hope, clearly not serialization, while as_string() is.  
Does that make it make more sense?  Do you see a way to improve the docs in 
this regard?

--

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



<    6   7   8   9   10   11   12   13   14   15   >