Changes by R. David Murray :
--
nosy: +brett.cannon, eric.snow, ncoghlan, r.david.murray
___
Python tracker
<http://bugs.python.org/issue30645>
___
___
Python-bug
Changes by R. David Murray :
--
resolution: not a bug -> third party
___
Python tracker
<http://bugs.python.org/issue30655>
___
___
Python-bugs-list mai
R. David Murray added the comment:
OK, so the key here is venv's dependency on a pip wheel. That makes sense, but
is certainly counterintuitive. One would naively think that having a copy of
PIP installed would make it easy to link that into the venv, but obviously it
is a lot more co
R. David Murray added the comment:
Yes, that's all you needed to do. She updated your status in the tracker (you
now have the CLA signed '*' next to your name).
--
___
Python tracker
<http://bugs.pyt
R. David Murray added the comment:
We don't generally document all exceptions that a method can raise, only those
that are relevant to its specific API. In this case, documenting the exception
answers the question, "what happens if the directory already exists?" This
question
R. David Murray added the comment:
This seems sensible to me (I haven't looked at the PR, I'm talking about adding
the support). When textwrap was written python was pretty ascii oriented, so
it is not too much of a surprise that unicode em dashes were not supported.
-
R. David Murray added the comment:
The problem is that if it returns None on parse failure, then you can't tell
the difference between the header not existing and the date not being
parseable. I don't have a solution for this problem. Suggestions welcome.
(Note that this is only
R. David Murray added the comment:
This appears to be a duplicate of issue 29097.
--
nosy: +r.david.murray
resolution: -> duplicate
stage: -> resolved
status: open -> closed
superseder: -> datetime.fromtimestamp(t) when 0 <= t <= 86399 fa
R. David Murray added the comment:
OK, I think I've reloaded my brain at least partially on this topic.
I think my original reason for having prasedate_to_datetime raise errors is
that it was my opinion that that is the way it should work, and that parsedate
should work the same way (
R. David Murray added the comment:
I'll make one argument in favor of retaining the exception, and if that doesn't
fly then I agree to the solution and will try to review the PR soon.
The argument is this: if parsedate_to_datetime raises an error, you get
information about *why* th
R. David Murray added the comment:
Yep, you found an edge case I didn't write a test for. The defect should get
added to the header object during parsing. (Those are supposed to get copied
to the message object...)
--
___
Python tracker
R. David Murray added the comment:
IMO, it would actually be surprising for ChainMap to support unhashable keys.
In Python, as Raymond indicates, "mapping" is pretty much synonymous with
'dict-like', and it would be where that was *not* true that we might add
R. David Murray added the comment:
This isn't the place to get help on Python coding, but since this is a
relatively new API I'll give you a pointer, and then you can tell me where the
docs need improvement :)
If you do message_from_string(yourstring, policy=email.policy.default), y
R. David Murray added the comment:
On the PR Berker wrote:
I'm wondering if we should still advertise the use of set([...]). We
replaced all instances of it with set literals in the stdlib.
set([...]) is part of the language, and the python documentation is also a
specification o
R. David Murray added the comment:
Just as well. I had no time last weekend. I should have time this Sunday,
though.
--
___
Python tracker
<http://bugs.python.org/issue30
R. David Murray added the comment:
New changeset b350c22ebcbb891412e0b334afc9f0db19534e06 by R. David Murray (Joel
Hillacre) in branch 'master':
bpo-30532: Fix whitespace folding in certain cases
https://github.com/python/cpython/commit/b350c22ebcbb891412e0b334afc9f0
Changes by R. David Murray :
--
stage: -> backport needed
___
Python tracker
<http://bugs.python.org/issue30532>
___
___
Python-bugs-list mailing list
Un
R. David Murray added the comment:
Given that there hasn't been any response that would help us improve the docs
on this, I'm going to close the issue. I hope you've figured out how to do
what you want to do!
--
resolution: -> not a bug
stage: -> resolved
s
R. David Murray added the comment:
If it's a good idea, why close the issue? Maybe post it to core-mentorship
instead? It's not an easy issue, but it also has the beginnings of a patch.
So if there is anyone on core-mentorship with some windows knowledge (and I'm
guessing th
R. David Murray added the comment:
Given that background, closing it seems reasonable to me :)
--
___
Python tracker
<http://bugs.python.org/issue12939>
___
___
R. David Murray added the comment:
IMO allow_non_nfkc=True that just returns False would be a bad idea, since as
Benjamin points out it *is* a valid identifier, it's just not normalized (yet).
Raising might work, that way you could tell the difference, but that would be
a weird API for
Changes by R. David Murray :
--
nosy: +ncoghlan
___
Python tracker
<http://bugs.python.org/issue30755>
___
___
Python-bugs-list mailing list
Unsubscribe:
Changes by R. David Murray :
--
nosy: +lukasz.langa
___
Python tracker
<http://bugs.python.org/issue30760>
___
___
Python-bugs-list mailing list
Unsubscribe:
R. David Murray added the comment:
See also issue 30772 about the deeper problem.
--
___
Python tracker
<http://bugs.python.org/issue13821>
___
___
Python-bug
R. David Murray added the comment:
Hmm. All the dunder methods are listed in the index on the '_' page. It would
kind of be consistent to have an '@' page. Not sure what would be needed to
make that happen though (might be a sphinx level thing).
--
n
R. David Murray added the comment:
I'm not entirely sure what you are asking for opinions on, but for what it is
worth I'm with Haypo: the repr should show the *actual* value of the attributes.
--
nosy: +r.david.murray
___
Python trac
R. David Murray added the comment:
If the docstring changes incorporate changes from this PR, I'd keep them in a
single PR myself. If not, two PRs would make review easier. On the other
hand, if haypo is volunteering to do the review, do whatever he
R. David Murray added the comment:
We should fix the docs for 3.5 and 3.6, and open an enhancement request for 3.7
if we still think this feature is a good idea.
--
___
Python tracker
<http://bugs.python.org/issue30
R. David Murray added the comment:
See also issue 12568.
--
nosy: +r.david.murray
___
Python tracker
<http://bugs.python.org/issue30717>
___
___
Python-bugs-list m
R. David Murray added the comment:
Interestingly, this just came up again in issue 30717.
--
nosy: +r.david.murray
___
Python tracker
<http://bugs.python.org/issue12
R. David Murray added the comment:
If you pass shell=True, PWD gests set, because it is a shell variable and the
shell sets it. If you don't, it doesn't, just like all the other
shell-maintained variables. I'm not sure it is worth calling out specifically
in the Popen docs
R. David Murray added the comment:
Per our current policy with respect to mime types, this should be added to all
currently maintained versions.
--
stage: -> needs patch
versions: +Python 2.7, Python 3.5, Python 3.6
___
Python tracker
&l
R. David Murray added the comment:
Yes. There's a chance someone else will review it if you do that. I'm still
not likely to have time for a while, myself, but ping me again in a month if I
haven't gotten to it.
--
___
Python
R. David Murray added the comment:
I have no opinion on that issue. I opened this issue to fix a hole in our
validation, but if that hole no longer exists after that (subsequently opened
:) issue is resolved, then this isn't needed (sorry, Ammar, and thank you for
your
R. David Murray added the comment:
There's a deeper problem here involving how Header is used in compat32 that
I've been aware of for a while but haven't had time to try to think through a
fix for (there may not be one, given the history of the compat32 code). In the
meantim
Changes by R. David Murray :
--
versions: -Python 3.3, Python 3.4
___
Python tracker
<http://bugs.python.org/issue30835>
___
___
Python-bugs-list mailin
R. David Murray added the comment:
Yes, setting _MAX_LENGTH can be an independent feature request.
The default will not be changed, however, since it is the most useful default
given that assertEquals in general produces a much more useful diff output in
addition to the one-line summary
Changes by R. David Murray :
--
assignee: -> docs@python
components: +Documentation
nosy: +brett.cannon, docs@python, eric.snow, ncoghlan
versions: +Python 3.6, Python 3.7
___
Python tracker
<http://bugs.python.org/issu
R. David Murray added the comment:
I'm guessing we can only do something here in 3.7, for backward compatibility
reasons, but maybe I'm wrong. Hopefully Lukasz will notice the activity on the
issue and have time to take a look.
--
nosy: +r.david.murray
versions: +Python 3
R. David Murray added the comment:
This issue is closed. Please open a new issue for your problem and proposal.
--
nosy: +r.david.murray
___
Python tracker
<http://bugs.python.org/issue10
R. David Murray added the comment:
Probably. Figure out a protocol to inject them into linecache, perhaps. But
I'm not sure such a thing would be accepted. If you can figure out a way to
make it work at least theoretically, it would probably be best to talk about it
on python-ideas
R. David Murray added the comment:
I think the current error message is more informative than your suggestion,
myself. However, the message could say "keyword argument name" instead of just
"keyword", which I think would be quite a bit clearer.
I seem to remember anothe
R. David Murray added the comment:
I will let Vinay answer definitively, but this is working as designed. This
allows you to set 'debug' level on a sub-logger without getting debug output
for every logger in your system, which is what you would get otherwise as the
default loggin
R. David Murray added the comment:
If I saw your message, I would think "what is a 'simple name'?". There's no
glossary entry for that, nor is it a concept used elsewhere in the
documentation as far as I remember. One could instead use "single identifier&qu
R. David Murray added the comment:
@qingyunha: we are telling you that that would *introduce* a bug. This is
working the way it is supposed to.
Vinay, what if we rewrote the beginning of that paragraph like this:
Sets the threshold for this logger to lvl. Logging messages which are less
R. David Murray added the comment:
Reading through some of the linked material, it looks like the issue is with
how UNC "symlinks" are resolved.
--
nosy: +r.david.murray
___
Python tracker
<http://bugs.python.o
R. David Murray added the comment:
New changeset c60d2f5e8609b040ab58c498fde23928fe9dbef5 by R. David Murray (Joel
Hillacre) in branch '3.6':
bpo-30532: Fix whitespace folding in certain cases (#2591)
https://github.com/python/cpython/commit/c60d2f5e8609b040ab58c498fde239
R. David Murray added the comment:
New changeset 3bbdf990a2c1b0b303b950058e3177a1bd5f697a by R. David Murray (Joel
Hillacre) in branch '3.5':
bpo-30532: Fix whitespace folding in certain cases (#2592)
https://github.com/python/cpython/commit/3bbdf990a2c1b0b303b950058e3177
R. David Murray added the comment:
Thanks, Joel!
--
resolution: -> fixed
stage: backport needed -> resolved
status: open -> closed
type: -> behavior
___
Python tracker
<http://bugs.python
R. David Murray added the comment:
I think we are waiting on confirmation that we have a buildbot that has the
necessary headers.
--
___
Python tracker
<http://bugs.python.org/issue27
R. David Murray added the comment:
Given a choice between catering for Python programmers and catering for
Java/C++ programmers, the Python docs obviously ought to chose to cater to
Python programmers. To a python programmer, calling C.f() is intuitive.
I would myself definitely *not
R. David Murray added the comment:
Also note that we have fixed a number of bugs in the stdlib code where a raw
string was not used for a docstring when it should have been. And when I say
bugs, I mean both formatting problems in pydoc, and doctest bugs. There may
even have been a case
R. David Murray added the comment:
I'm not sure there's a "best practice" choice between the two calling forms
that are documented. Although obviously when you don't have an instance you
can't use the instance calling form. I think it is *common* practice to u
R. David Murray added the comment:
I don't think that helps. The issue here is that *sequences* are iterated over
by incrementing an integer index. If you change the size of the list, you are
potentially changing which value any given index points to. Presumably the
tutorial writer th
R. David Murray added the comment:
Thanks. OK, so you agree a fix is appropriate. What about the question of
backport/backward compatibility?
--
___
Python tracker
<http://bugs.python.org/issue23
R. David Murray added the comment:
It is documented how to call a static method when you don't have an instance.
So when you don't (for example, inside a static method on the same class) you
use that form (call the method on the class name).
I realize you don't find thi
R. David Murray added the comment:
The biggest problem, as paul.j3 says, is to get someone from core to review the
argparse issues. I am currently planning to make argparse one of my foci in a
sprint we are doing at the beginning of September, so there is some hope
Any reviews/testing
R. David Murray added the comment:
I just had a colleague get confused about the container returning self, and he
was referring to the iterator protocol docs at
https://docs.python.org/3.6/library/stdtypes.html#iterator.__iter__. If you
don't read that section with your thinking cap f
R. David Murray added the comment:
If I remember correctly, the exceptions adhere to the standard because it gives
the option of "signaling" in those cases (but in any case it is the behavior we
want).
0.5 is a float, so x**.5 is not the square root.
>>> math.sqrt
R. David Murray added the comment:
This is the standard way that we write examples. Sprinkling in extra blank
lines everywhere would make the examples less readable. One you've learned how
the command interpreter works, the examples are clear, so you each beginner
only has to learn
R. David Murray added the comment:
Thanks for being interested in improving Python. Please join the discussion in
the existing issue 26781, which proposes a max_depth parameter for walk.
--
nosy: +r.david.murray
resolution: -> duplicate
stage: -> resolved
status: open -&g
R. David Murray added the comment:
No, refusing to guess in this case is to believe the class's declaration that
it is an iterable if (and only if) it defines __iter__, which is the modern
definition of iterable. If that doesn't work when the object is iterated,
that's a b
Changes by R. David Murray :
--
resolution: -> out of date
stage: -> resolved
status: open -> closed
superseder: -> can't interpolate byte string with \x00 before replacement
identifier
___
Python tracker
<http://bugs.p
R. David Murray added the comment:
Thanks for the suggestion, but I don't think so.
Python imports are not lazy. They are ordered. Python is an *interpreted*
language, so __subclasses__ is only going to hold those subclasses whose class
definitions have been executed. This is fundament
R. David Murray added the comment:
"things with __getitem__ are clearly iterable"
This is false. IMO it should be fixed in the glossary. It should say "or
__getitem__ method implementing sequence semantics". That plus the addition to
the Iterable docs w
R. David Murray added the comment:
I do not have a strong opinion on this issue, but I share Martin's doubts that
it should be added. It certainly should not be on by default if it is added.
We should get input from other core devs.
--
nosy: +r.david.m
Changes by R. David Murray :
--
components: +Windows
nosy: +paul.moore, steve.dower, tim.golden, zach.ware
___
Python tracker
<http://bugs.python.org/issue30
R. David Murray added the comment:
No. 2.7 is in maintenance mode and gets no new features.
--
nosy: +r.david.murray
resolution: -> rejected
stage: -> resolved
status: open -> closed
___
Python tracker
<http://bugs.python.or
R. David Murray added the comment:
There is, however, unittest2 on pypi that has most of the python3 features
backported.
--
___
Python tracker
<http://bugs.python.org/issue30
R. David Murray added the comment:
Given:
import socket
from ftplib import FTP
try:
ftp = FTP('host.i.know.will.hang.com', timeout=4)
except socket.timeout:
print('caught')
I see 'caught' printed on the console. However, if I increase the timeout to
400
R. David Murray added the comment:
We don't need to burden Mark with doing a PR for this (unless he wants to).
This is a good new contributer practice issue :)
--
nosy: +r.david.murray
___
Python tracker
<http://bugs.python.org/is
R. David Murray added the comment:
This is a bug tracker for Python. 3.2 is out of maintenance, so such a
question is not appropriate for this forum. In any case it is an issue with
your install, not with Python itself, so again not appropriate for this forum.
You should ask for help on the
R. David Murray added the comment:
I would like to leave this issue open. It is clear that the behavior for long
timeouts does not match the docs, and that should be investigated if someone
has the motivation :)
--
resolution: works for me ->
stage: resolved ->
status:
R. David Murray added the comment:
I changed the title to reflect the problem, but note that I'm *assuming* it is
"greater than the default" that is the issue, I haven't actually tested that
theory.
--
title: ftplib socket timeout can't be handled -> ft
Changes by R. David Murray :
--
type: crash -> behavior
versions: +Python 3.6, Python 3.7
___
Python tracker
<http://bugs.python.org/issue30956>
___
___
Python-
R. David Murray added the comment:
Getting input from python ideas is a great idea :)
--
___
Python tracker
<http://bugs.python.org/issue30576>
___
___
Python-bug
R. David Murray added the comment:
I think you change is appropriate given that the "equivalent to" for the built
in iterators contains the 'is' expression.
However, I also think we should drop that second whole paragraph, and in the
previous paragraph say ".
R. David Murray added the comment:
Thanks for wanting to improve Python. However, the purpose of those function
is to *print* the result. They intentionally do not have return values.
All of the values that you would have these functions return are accessible via
attributes already
R. David Murray added the comment:
However, our general policy is that we don't make such changes unless we are
also touching the code for other reasons. So I think using this PR as a base
for your feature PRs, and then committing everything together if they are
accepted, would be the w
R. David Murray added the comment:
Right. We don't try to fix handling these kinds of exponential expressions.
This is a case of "don't do that" :)
(I don't know if the regex module is better at "handling" this kind of regex
bug.)
--
nosy: +r.da
R. David Murray added the comment:
I would take "actual file" as meaning the file the symlink points to, so I'd
say the documentation matches the implementation according to your description
of the two. The current docs actually say "refer to the same file or
directory&q
R. David Murray added the comment:
Well, the reason one *might* consider a test failure as a release blocker (and
I'm not saying you should, I'm just explaining the possible logic) is that
distros would understandably like the test suite to pass before they include a
releas
R. David Murray added the comment:
I'm confused, I don't see how there can be any difference between (1) and (2).
--
nosy: +r.david.murray
___
Python tracker
<http://bugs.python.o
R. David Murray added the comment:
I think Terry and his OP are reacting to the fact that "-190 % 12 == -10" looks
like it is saying that that expression is True in Python, which it is not (and
that's the point).
IMO, another issue is that "and then compilers that tru
R. David Murray added the comment:
So you are saying that BytesIO has code that checks that its argument only has
a single reference and modifies the string in place when it can if so? You
can't depend on that in any other implementation of Python, and shouldn't
depend on it
R. David Murray added the comment:
smtplib in 2.7 doesn't know anything about RFC822 or any of the replacement
RFCs. sendmail accepts a *string*, and doesn't understand or modify anything
about that string except the newlines. It is your responsibility not to *add*
the BCC header.
R. David Murray added the comment:
It actually returns the path, since "name" often means the last component of
the path. Just saying "path" might be confused with pathlib, though. So I
guess we'd have to say "returning its path as a string", which sounds
R. David Murray added the comment:
No, we understand the process, the problem is that except for the 'dev' docs,
the link would be to a branch other than master. That's the problem that we're
discussing.
Maybe instead of an edit link on non-dev docs we could have a mes
R. David Murray added the comment:
I agree with Raymond. I'm not sure that adding roughly is going to decrease
the possibility of confusion, but I won't object to it.
In a way, it's too bad we didn't make the attribute lookup machinery look up
all dunder methods on
R. David Murray added the comment:
Boy, I wasn't thinking very clearly when I wrote that.
As pointed out on the PR, tempfile.TemporaryDirectory of course returns a
TemporaryDirectory object. That's in the nature of Python. I was reading so
poorly that I didn't even no
R. David Murray added the comment:
Yes we can add "otherwise return None". However it is pretty clear as is,
since "poll" implies an immediate return, and if there's no return code to
return, the logical value in Python to get back is None :)
---
R. David Murray added the comment:
Agreed. Explicit is good.
--
___
Python tracker
<http://bugs.python.org/issue31065>
___
___
Python-bugs-list mailing list
Unsub
R. David Murray added the comment:
Thanks for the report. Retitling because this has nothing to do with map:
>>> def foo(*args):
... raise TypeError('fake')
... yield 1
...
>>> foo(1, *foo())
Traceback (most recent call last):
File "", line
R. David Murray added the comment:
parseaddr does what you expect if the message has been read using universal
newline mode (ie: the linesep is \n):
>>> parseaddr('"=?UTF-8?Q?Anita_=W4=86ieckli=C5=84ska_|_PATO_Nieruch?=\n
>>> =?UTF-8?Q?omo=C5=9Bci?=" &quo
R. David Murray added the comment:
Ah, I take it back. With \n it retains the \n in the decoded name field.
There is a bug of some sort here (\r\n should be treated the same as \n, I
think, whatever way it is treated). I don't think this is worth addressing,
given that the new pol
R. David Murray added the comment:
I think the "vaguely" pretty much says it, and you are the at least the first
person who has *requested* it :)
This is one of those cost-versus-benefit calculations. It is a specialized use
case, and in other specialized use cases the &quo
R. David Murray added the comment:
Yes, that is mostly likely why parseaddr operates the way it does. The old
email package does not do very much hand-holding, it expects you to understand
the RFCs, which as you note is a rather daunting task. The new email package
(the new policies) in
R. David Murray added the comment:
The specialized use case is wanting to autogenerate a name with no other
information provided. You suggested csv as one example where this would be
used, but even in that case I'd rather see something based on the filename than
a mashup of field name
R. David Murray added the comment:
Perhaps I'm missing something, but isn't this to be expected? Timer will run
d.popleft() repeatedly until you get the error you see because the list is
empty. Are you thinking that setup is run each time? That would defeat its
purpose.
-
R. David Murray added the comment:
It is intended. See issue 30554.
--
nosy: +r.david.murray
resolution: -> duplicate
stage: -> resolved
status: open -> closed
superseder: -> Inaccessible attribute characters_written on OSErr
5001 - 5100 of 12944 matches
Mail list logo