[issue44340] Add support for building cpython with clang thin lto

2021-09-07 Thread Dong-hee Na


Change by Dong-hee Na :


--
pull_requests: +26649
pull_request: https://github.com/python/cpython/pull/28229

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



RE: on writing a while loop for rolling two dice

2021-09-07 Thread Avi Gross via Python-list
I think I already agreed with much of your point. That is indeed the
problem. You are allowed to do some possibly non-standard things. A static
evaluation/replacement may show the wrong function being called and a
dynamic one may still mess up as there are many ways to do indirection.

I mention this partially because of a recent discussion on another computer
where the question was why they got an error message that the object being
given a function was not a data.frame or something compatible. What was
being passed was a data structure meant to hold some simulation of an EXCEL
spreadsheet. Not quite the same. But they insisted it had to be a data.frame
because they called functionA() and it is documented to return a data.frame.


It turned out that they had loaded lots of packages (modules but not) and
had not paid attention when they got a message that one function called
functionA was now being covered by another with the same name. Each such
package loaded often gets a new namespace/environment and when searching for
a function by name, the new package was ahead of the older package, hence
the warning.

So one solution was to change his code in one of several ways, but more
generally to call any functions that may be hidden this way in a fully
qualified manner as in packageA::functionA(...) do you do not accidentally
get package::functionA(...)

Now note this is not so much a bug as a feature in that language and It is
quite common to sort of redefine a function name to do what you want.

But if you have developed your own package and want to guarantee the user
does not undo your work in specific cases, you should also call some things
as explicitly within your own namespace.

Back to Python, it is a tad too flexible in some places and my point was
that it would be interesting, along the lines of a linter, to have some
tools that help explain what the program might be doing a tad more
explicitly. But as an interpreted language, so much can happen at runtime
that this may not be very effective or accurate. The language is full of
places where slipping in another object means you over-rode the meaning of
+= for instance.

-Original Message-
From: Python-list  On
Behalf Of Richard Damon
Sent: Tuesday, September 7, 2021 10:09 PM
To: python-list@python.org
Subject: Re: on writing a while loop for rolling two dice

On 9/7/21 3:51 PM, Avi Gross via Python-list wrote:
> and similarly changes any function imported directly to also be fully 
> qualified.

One danger with this is that it can actual change the behavior of the
program. Maybe more likely with global objects than functions, but still an
issue.

Remember, "from module import fun" will bind the name fun in this modules
namespace to the current definiton of the object fun in the other modules
name space. If after that point, something rebinds the name in the other
module, the module that did the from import won't see that change, but if
the reference is changed to module.fun, it will.

Since that rebinding might even be some third module doing a 'monkey patch',
detecting if it is safe is basically impossible.

Admittedly, if this is an issue, the sensitivity to timing makes the
difference something very fussy to exactly the order you do things, the
cases where the difference is intended is likely fairly small.

--
Richard Damon

--
https://mail.python.org/mailman/listinfo/python-list

-- 
https://mail.python.org/mailman/listinfo/python-list


Re: on writing a while loop for rolling two dice

2021-09-07 Thread Richard Damon
On 9/7/21 3:51 PM, Avi Gross via Python-list wrote:
> and similarly changes any function imported directly
> to also be fully qualified.

One danger with this is that it can actual change the behavior of the
program. Maybe more likely with global objects than functions, but still
an issue.

Remember, "from module import fun" will bind the name fun in this
modules namespace to the current definiton of the object fun in the
other modules name space. If after that point, something rebinds the
name in the other module, the module that did the from import won't see
that change, but if the reference is changed to module.fun, it will.

Since that rebinding might even be some third module doing a 'monkey
patch', detecting if it is safe is basically impossible.

Admittedly, if this is an issue, the sensitivity to timing makes the
difference something very fussy to exactly the order you do things, the
cases where the difference is intended is likely fairly small.

-- 
Richard Damon

-- 
https://mail.python.org/mailman/listinfo/python-list


RE: on writing a while loop for rolling two dice

2021-09-07 Thread Avi Gross via Python-list
Greg,

Yes, a smart person may come up with such tricks but a really smart person,
in my view, adjusts. With some exceptions, such as when trying to port
existing code to a new language quickly, someone who is not too obsessive
will try to pick up the goals and spirit of a new language and use them when
it seems reasonable. And, a smart person, if they see nothing new, might
just go back to their old language or ...

Pick a language that easily supports regular expressions and object creation
and functional programming and so on, like python, and ask why you might
want to use it to simulate a really old version of BASIC when you can just
use BASIC.

Admittedly, most people are not flexible. I find that with human languages
too that some learn another language just enough to recognize words but not
to use the changed grammar or the different idioms and never become fluent. 

I am amused though at the fact that python, by using indentation rather than
things like curly braces, would make some of the games like shown below
quite a bit more difficult.

-Original Message-
From: Python-list  On
Behalf Of Greg Ewing
Sent: Tuesday, September 7, 2021 9:08 PM
To: python-list@python.org
Subject: Re: on writing a while loop for rolling two dice

On 8/09/21 2:53 am, Grant Edwards wrote:
>#define IF if (
>#define THEN ) {
>#define ELSE } else {
>#define ENDIF }
>...

I gather that early versions of some of the Unix utilities were written by
someone who liked using macros to make C resemble Algol.

I guess you can get away with that sort of thing if you're a Really Smart
Person.

--
Greg
--
https://mail.python.org/mailman/listinfo/python-list

-- 
https://mail.python.org/mailman/listinfo/python-list


Re: on writing a while loop for rolling two dice

2021-09-07 Thread Greg Ewing

On 8/09/21 2:53 am, Grant Edwards wrote:

   #define IF if (
   #define THEN ) {
   #define ELSE } else {
   #define ENDIF }
   ...


I gather that early versions of some of the Unix utilities were
written by someone who liked using macros to make C resemble Algol.

I guess you can get away with that sort of thing if you're a
Really Smart Person.

--
Greg
--
https://mail.python.org/mailman/listinfo/python-list


[issue45133] Open functions in dbm submodule should support path-like objects

2021-09-07 Thread Ethan Furman


Change by Ethan Furman :


--
stage:  -> resolved
status: open -> closed

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue40563] Support pathlike objects on dbm/shelve

2021-09-07 Thread Ethan Furman


Change by Ethan Furman :


--
nosy: +ethan.furman

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue41026] mailbox does not support new Path object

2021-09-07 Thread Ethan Furman


Ethan Furman  added the comment:

The problem with using `str()` on a path argument is that the argument may not 
be a str, nor a pathlib object, but `str()` will still create a string out of 
it, leading to difficult bugs.

The documentation for pathlib also predates the addition of `os.fspath()`.

--
nosy: +ethan.furman

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue32562] Support fspath protocol in AF_UNIX sockaddr resolution

2021-09-07 Thread Ethan Furman


Change by Ethan Furman :


--
nosy: +ethan.furman

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue40506] add support for os.Pathlike filenames in zipfile.ZipFile.writestr

2021-09-07 Thread Ethan Furman


Change by Ethan Furman :


--
nosy: +ethan.furman

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue45134] Protocol dealloc not called if Server is closed

2021-09-07 Thread Mark


New submission from Mark :

If I create_server

server_coro = loop.create_server( lambda: self._protocol_factory(self), 
sock=sock, ssl=ssl)
server = loop.run_until_complete(server_coro)

Then connect and disconnect a client the protocol connection lost and dealloc 
are called.

If however I close the server with existing connections then protocol dealloc 
is never called and I leak memory due to a malloc in my protocol.c init.

  server.close()
  loop.run_until_complete(server.wait_closed())

--
components: asyncio
messages: 401349
nosy: MarkReedZ, asvetlov, yselivanov
priority: normal
severity: normal
status: open
title: Protocol dealloc not called if Server is closed
type: resource usage
versions: Python 3.7

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



Re: on writing a while loop for rolling two dice

2021-09-07 Thread Alan Gauld via Python-list
On 07/09/2021 15:53, Grant Edwards wrote:

> I remember engineering manager I worked with about 35 years ago who
> used a set of C macros to try to make his code look as much like BASIC
> as possible:
> 
>   #define IF if (
>   #define THEN ) {
>   #define ELSE } else {
>   #define ENDIF }
>   ...
> 
> IIRC he copied them out of a magazine article.

That was quite common in C before it became popular(early/mid 80s).
I've seen Pascal, Algol and Coral macro sets in use.
You could even download pre-written ones from various
bulletin boards (remember them?!) for a while.

-- 
Alan G
Author of the Learn to Program web site
http://www.alan-g.me.uk/
http://www.amazon.com/author/alan_gauld
Follow my photo-blog on Flickr at:
http://www.flickr.com/photos/alangauldphotos


-- 
https://mail.python.org/mailman/listinfo/python-list


[Python-announce] [RELEASE] Python 3.10.0rc2 is available

2021-09-07 Thread Pablo Galindo Salgado
Python 3.10 is one month away, can you believe it? This snake is still
trying to bite as it has been an interesting day of fighting fires, release
blockers, and a bunch of late bugs but your friendly release team always
delivers :)

You can get this new release while is still fresh here:

https://www.python.org/downloads/release/python-3100rc2/

This is the second release candidate of Python 3.10

This release, **3.10.0rc2** , is the last preview before the final release
of Python 3.10.0 on 2021-10-04. Entering the release candidate phase, only
reviewed code changes which are clear bug fixes are allowed between release
candidates and the final release. There will be no ABI changes from this
point forward in the 3.10 series and the goal is that there will be as few
code changes as possible.

*The next release will be the final release of Python 3.10.0, which is
currently scheduled for Monday, 2021-10-04.*

Call to action
⚠️⚠️⚠️⚠️⚠️⚠️⚠️
*The 3.10 branch is now accepting changes for 3.10.**1*. To maximize
stability, the final release will be cut from the v3.10.0rc2 tag. If you
need the release manager (me) to cherry-pick any critical fixes, mark
issues as release blockers, and/or add me as a reviewer on a critical
backport PR on GitHub. To see which changes are currently cherry-picked for
inclusion in 3.10.0, look at the short-lived branch-v3.10.0
https://github.com/python/cpython/tree/branch-v3.10.0 on GitHub.
⚠️⚠️⚠️⚠️⚠️⚠️⚠️

*Core developers: all eyes on the docs now*

   - Are all your changes properly documented?
   - Did you notice other changes you know of to have insufficient
   documentation?


*Community members*
We strongly encourage maintainers of third-party Python projects to prepare
their projects for 3.10 compatibilities during this phase. As always,
report any issues to [the Python bug tracker ](https://bugs.python.org/).

Please keep in mind that this is a preview release and its use is **not**
recommended for production environments.

And now for something completely different
Maxwell's demon is a thought experiment that would hypothetically violate
the second law of thermodynamics. It was proposed by the physicist James
Clerk Maxwell in 1867. In the thought experiment, a demon controls a small
massless door between two chambers of gas. As individual gas molecules (or
atoms) approach the door, the demon quickly opens and closes the door to
allow only fast-moving molecules to pass through in one direction, and only
slow-moving molecules to pass through in the other. Because the kinetic
temperature of a gas depends on the velocities of its constituent
molecules, the demon's actions cause one chamber to warm up and the other
to cool down. This would decrease the total entropy of the two gases,
without applying any work, thereby violating the second law of
thermodynamics.

We hope you enjoy those new releases!
Thanks to all of the many volunteers who help make Python Development and
these releases possible! Please consider supporting our efforts by
volunteering yourself or through organization contributions to the Python
Software Foundation.

Regards from a plane going to Malaga,

Your friendly release team,
Pablo Galindo @pablogsal
Ned Deily @nad
Steve Dower @steve.dower
___
Python-announce-list mailing list -- python-announce-list@python.org
To unsubscribe send an email to python-announce-list-le...@python.org
https://mail.python.org/mailman3/lists/python-announce-list.python.org/
Member address: arch...@mail-archive.com


[RELEASE] Python 3.10.0rc2 is available

2021-09-07 Thread Pablo Galindo Salgado
Python 3.10 is one month away, can you believe it? This snake is still
trying to bite as it has been an interesting day of fighting fires, release
blockers, and a bunch of late bugs but your friendly release team always
delivers :)

You can get this new release while is still fresh here:

https://www.python.org/downloads/release/python-3100rc2/

This is the second release candidate of Python 3.10

This release, **3.10.0rc2** , is the last preview before the final release
of Python 3.10.0 on 2021-10-04. Entering the release candidate phase, only
reviewed code changes which are clear bug fixes are allowed between release
candidates and the final release. There will be no ABI changes from this
point forward in the 3.10 series and the goal is that there will be as few
code changes as possible.

*The next release will be the final release of Python 3.10.0, which is
currently scheduled for Monday, 2021-10-04.*

Call to action
⚠️⚠️⚠️⚠️⚠️⚠️⚠️
*The 3.10 branch is now accepting changes for 3.10.**1*. To maximize
stability, the final release will be cut from the v3.10.0rc2 tag. If you
need the release manager (me) to cherry-pick any critical fixes, mark
issues as release blockers, and/or add me as a reviewer on a critical
backport PR on GitHub. To see which changes are currently cherry-picked for
inclusion in 3.10.0, look at the short-lived branch-v3.10.0
https://github.com/python/cpython/tree/branch-v3.10.0 on GitHub.
⚠️⚠️⚠️⚠️⚠️⚠️⚠️

*Core developers: all eyes on the docs now*

   - Are all your changes properly documented?
   - Did you notice other changes you know of to have insufficient
   documentation?


*Community members*
We strongly encourage maintainers of third-party Python projects to prepare
their projects for 3.10 compatibilities during this phase. As always,
report any issues to [the Python bug tracker ](https://bugs.python.org/).

Please keep in mind that this is a preview release and its use is **not**
recommended for production environments.

And now for something completely different
Maxwell's demon is a thought experiment that would hypothetically violate
the second law of thermodynamics. It was proposed by the physicist James
Clerk Maxwell in 1867. In the thought experiment, a demon controls a small
massless door between two chambers of gas. As individual gas molecules (or
atoms) approach the door, the demon quickly opens and closes the door to
allow only fast-moving molecules to pass through in one direction, and only
slow-moving molecules to pass through in the other. Because the kinetic
temperature of a gas depends on the velocities of its constituent
molecules, the demon's actions cause one chamber to warm up and the other
to cool down. This would decrease the total entropy of the two gases,
without applying any work, thereby violating the second law of
thermodynamics.

We hope you enjoy those new releases!
Thanks to all of the many volunteers who help make Python Development and
these releases possible! Please consider supporting our efforts by
volunteering yourself or through organization contributions to the Python
Software Foundation.

Regards from a plane going to Malaga,

Your friendly release team,
Pablo Galindo @pablogsal
Ned Deily @nad
Steve Dower @steve.dower
-- 
https://mail.python.org/mailman/listinfo/python-list


[issue40563] Support pathlike objects on dbm/shelve

2021-09-07 Thread Gene Wood


Gene Wood  added the comment:

@DahlitzFlorian it looks like a PR was submitted August of last year : 
https://github.com/python/cpython/pull/21849

--
nosy: +gene_wood

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue39570] Python 3.7.3 Crash on msilib actions

2021-09-07 Thread Steve Dower


Steve Dower  added the comment:

Yep, this is malware. Don't download the file.

If this is a CPython issue that you want fixed, please provide a script to 
generate the MSI.

--
resolution:  -> rejected
stage:  -> resolved
status: open -> closed

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue45116] Performance regression 3.10b1 and later on Windows

2021-09-07 Thread Steve Dower


Steve Dower  added the comment:

> I'm not sure if PGO builds are reproducible, since there is a training step 
> which requires to run a non-deterministic workload (the Python test suite 
> which is somehow randomized by I/O timings and other stuffs).

I'm 99% sure it's a tracing PGO rather than sampling, so provided everything 
runs in the same order and follows the same codepaths, wall-clock timings 
shouldn't have a significant effect.

Without looking at the generated code, it may be more effective to try and 
force the functions called from the macro to never be inlined. The optimiser 
may be missing that the calls are uncommon, and trying to inline them first, 
then deciding that the whole merged function is too big to inline in places 
where it would be useful.

There's also no particular reason we need to use these tests as the profile, 
it's just that nobody has taken the time to come up with anything better. I'd 
rather see us invest time in generating a good profile rather than trying to 
hand-optimise inlining. (Though the test suite is good in many ways, because it 
makes sure all the extension modules are covered. We definitely want as close 
to full code coverage as we can get, at least for happy paths, but may need 
more eval loop in the profile if that's what needs help.)

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue45126] [sqlite3] cleanup and harden connection init

2021-09-07 Thread Erlend E. Aasland


Change by Erlend E. Aasland :


--
keywords: +patch
pull_requests: +26648
stage:  -> patch review
pull_request: https://github.com/python/cpython/pull/28227

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue45130] shlex.join() does not accept pathlib.Path objects

2021-09-07 Thread Eric V. Smith


Eric V. Smith  added the comment:

I was using str.join() as an analogy. I apologize if that was confusing.

I'll state this as clearly as I can: I don't think shlex.join() should 
automatically convert any arguments to str, not even those that are Path's.

Nothing is going to be solved by having a discussion on the bug tracker. A 
discussion on python-ideas would be the appropriate place to take this. If a 
consensus is reached there to add this feature, then this feature request can 
be used for its implementation.

It's entirely possible people there might agree with the feature request, but 
I'd argue against it. One thing going for your proposal is subprocess.run(). I 
was thinking issue 38670 applied there, but I guess not.

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue45130] shlex.join() does not accept pathlib.Path objects

2021-09-07 Thread Richard


Richard  added the comment:

IMO comparing shlex.join() to str.join() is a mistake. Comparing it to 
subprocess.run() is more appropriate.

What do you mean by "proposal"? subprocess.run() already converts Path 
arguments to str since Python 3.6 (though IIRC this was broken on Windows until 
3.7 or so). It indeed does not convert int arguments, but like I said that's 
irrelevant here, you're the one who brought it up.

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue45130] shlex.join() does not accept pathlib.Path objects

2021-09-07 Thread Eric V. Smith

Eric V. Smith  added the comment:

My point is that shlex.join() shouldn’t convert any arguments to strings, no 
matter their type. Just like str.join() doesn’t, and for the same reason. 

Within the last few years there was a discussion on making str.join() 
auto-convert it’s arguments to str, and we decided not to, because it would 
mask too many bugs. I believe the same argument applies to shlex.join(). Path 
objects aren’t special enough to make an exception. 

There’s a proposal somewhere to also call str() on Path arguments to 
subprocess.run(). I’m opposed to that for the same reasons.

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



Re: on floating-point numbers

2021-09-07 Thread Joe Pfeiffer
Hope Rouselle  writes:
> Christian Gollwitzer  writes:
>>
>> I believe it is not commutativity, but associativity, that is
>> violated. 
>
> Shall we take this seriously?  (I will disagree, but that doesn't mean I
> am not grateful for your post.  Quite the contary.)  It in general
> violates associativity too, but the example above couldn't be referring
> to associativity because the second sum above could not be obtained from
> associativity alone.  Commutativity is required, applied to five pairs
> of numbers.  How can I go from
>
>   7.23 + 8.41 + 6.15 + 2.31 + 7.73 + 7.77
>
> to 
>
>   8.41 + 6.15 + 2.31 + 7.73 + 7.77 + 7.23?
>
> Perhaps only through various application of commutativity, namely the
> ones below. (I omit the parentheses for less typing.  I suppose that
> does not create much trouble.  There is no use of associativity below,
> except for the intented omission of parentheses.)
>
>  7.23 + 8.41 + 6.15 + 2.31 + 7.73 + 7.77
>= 8.41 + 7.23 + 6.15 + 2.31 + 7.73 + 7.77
>= 8.41 + 6.15 + 7.23 + 2.31 + 7.73 + 7.77
>= 8.41 + 6.15 + 2.31 + 7.23 + 7.73 + 7.77
>= 8.41 + 6.15 + 2.31 + 7.73 + 7.23 + 7.77
>= 8.41 + 6.15 + 2.31 + 7.73 + 7.77 + 7.23.

But these transformations depend on both commutativity and
associativity, precisely due to those omitted parentheses.  When you
transform

7.23 + 8.41 + 6.15 + 2.31 + 7.73 + 7.77

into

8.41 + 6.15 + 2.31 + 7.73 + 7.77 + 7.23.

it isn't just assuming commutativity, it's also assuming associativity
since it is changing from

(7.23 + 8.41 + 6.15 + 2.31 + 7.73) + 7.77

to

(8.41 + 6.15 + 2.31 + 7.73 + 7.77) + 7.23.

If I use parentheses to modify the order of operations of the first line
to match that of the last, I get
7.23 + (8.41 + 6.15 + 2.31 + 7.73 + 7.77)

Now, I get 39.61 evaluating either of them.
-- 
https://mail.python.org/mailman/listinfo/python-list


[issue39562] Asynchronous comprehensions don't work in asyncio REPL

2021-09-07 Thread STINNER Victor


Change by STINNER Victor :


--
nosy:  -vstinner

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue44987] Speed up unicode normalization of ASCII strings

2021-09-07 Thread STINNER Victor


STINNER Victor  added the comment:

Well, someone should write a PR for it.

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue43075] CVE-2021-3733: ReDoS in urllib.request

2021-09-07 Thread STINNER Victor


STINNER Victor  added the comment:

I created 
https://python-security.readthedocs.io/vuln/urllib-basic-auth-regex2.html to 
track this vulnerability.

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



RE: on writing a while loop for rolling two dice

2021-09-07 Thread Avi Gross via Python-list
Although I sort of agree with Alister, I also note that many languages
deliberately provide you with the means to customize in ways that make your
personal life more amenable while making it perhaps harder for others.

Consider the humble import statement frequently used as:

import numpy as np
import pandas as pd

The above is perfectly legal and in some circles is expected. But I suspect
many people do not care about being able to type a slightly abbreviated
np.name(..) rather than numpy.name(...) and yet others import specific
functions from a package like:

from numpy import arrange

The bottom line is that there are many ways the same code can be called,
including quite a few other variations I am not describing. People can
customize their code in many ways including making it look more like the way
they might program in some other computer language/environment. Anyone
reading their code with a different viewpoint may have some adjustment
issues.

I am wondering if anyone has written programs that would take some complete
body of code and not prettify it or reformat it as some tools do, but sort
of make it into a standard format. In the above example, it might undo
things like renaming numpy to np and change all the code that looks like
np.name to numpy.name and similarly changes any function imported directly
to also be fully qualified.

Of course, some code I have seen changes things mid-stream or has some if
statement that sets one of several function calls to be the one to use
beyond that point.

So, I am not sanguine on trying to enforce some standards to make your code
easy to read by others and am more a fan of suggesting enough comments in
the code to guide anyone on your own idiosyncratic uses.


-Original Message-
From: Python-list  On
Behalf Of alister via Python-list
Sent: Tuesday, September 7, 2021 2:58 PM
To: python-list@python.org
Subject: Re: on writing a while loop for rolling two dice

On Tue, 07 Sep 2021 14:53:29 +, Grant Edwards wrote:

> On 2021-09-06, Stefan Ram  wrote:
>> "Avi Gross"  writes:
>>> In languages like C/C++ there are people who make up macros like:
>>>#define INDEFINITELY_LOOP while (true) Or something like that and 
>>>then allow the preprocessor to replace INDEFINITELY_LOOP with valid C 
>>>code.
>>
>>   Those usually are beginners.
>>
>>>So, how to do something like that in python, is a challenge left to 
>>>the user
>>
>>   Such a use of macros is frowned upon by most C programmers,
>>   because it renders the code unreadable.
> 
> I remember engineering manager I worked with about 35 years ago who 
> used a set of C macros to try to make his code look as much like BASIC 
> as
> possible:
> 
>   #define IF if ( #define THEN ) { #define ELSE } else {
>   #define ENDIF }
>   ...
> 
> IIRC he copied them out of a magazine article.
> 
> He then proceeded to try to implement a tree search algorithm (he 
> didn't actually know that's what he was doing) using his new 
> "language" without using recursion (which he had never heard of and 
> couldn't grok) by keeping track of state using an array. It did not go 
> well and made him a bit of a laughingstock. IIRC, he had first tried 
> to write it in actual BASIC, but gave up on that before switching to C 
> and his ridiculous macro set.

1 Simple rule, if you are programming in language 'a' then write Language
'a' Code it.

Just because you can do something doesn't mean you should


--
Help!  I'm trapped in a Chinese computer factory!
--
https://mail.python.org/mailman/listinfo/python-list

-- 
https://mail.python.org/mailman/listinfo/python-list


[issue43075] CVE-2021-3733: ReDoS in urllib.request

2021-09-07 Thread STINNER Victor


Change by STINNER Victor :


--
title: ReDoS in urllib.request -> CVE-2021-3733: ReDoS in urllib.request

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue42547] argparse: add_argument(... nargs='+', metavar=) does not work with positional arguments

2021-09-07 Thread Irit Katriel


Irit Katriel  added the comment:

Changing type since crash typically means segfault and not an exception.

--
nosy: +iritkatriel
type: crash -> behavior

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue39751] multiprocessing breaks when payload fails to unpickle

2021-09-07 Thread Irit Katriel


Irit Katriel  added the comment:

Changing type since crash typically means segfault and not an exception.

--
nosy: +iritkatriel
type: crash -> behavior

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue44259] lib2to3 does not accept "exec" as name

2021-09-07 Thread Irit Katriel


Irit Katriel  added the comment:

Changing type as crash typically refers to segfault and not an exception.

--
nosy: +iritkatriel
type: crash -> behavior

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue45133] Open functions in dbm submodule should support path-like objects

2021-09-07 Thread David Mertz


David Mertz  added the comment:

Oops... I missed prior closely related or identical issue at: 
https://bugs.python.org/issue40563

--
resolution:  -> duplicate

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue41501] 0x80070643, can't install any version

2021-09-07 Thread Irit Katriel


Irit Katriel  added the comment:

Closing as there isn't enough information to do anything about this and there 
was not response from the OP to followup questions.

--
nosy: +iritkatriel
resolution:  -> wont fix
stage:  -> resolved
status: open -> closed

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue38936] fatal error during installation 0x80070643 during python installation

2021-09-07 Thread Irit Katriel


Irit Katriel  added the comment:

Closing as there isn't enough information to do anything about this and there 
was not response from the OP to followup questions.

--
nosy: +iritkatriel
resolution:  -> wont fix
stage:  -> resolved
status: open -> closed

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue45133] Open functions in dbm submodule should support path-like objects

2021-09-07 Thread David Mertz


New submission from David Mertz :

Evan Greenup via Python-ideas

Currently, in Python 3.9, `dbm.open()`, `dbm.gnu.open()` and `dbm.ndbm.open()` 
doesn't support path-like object, class defined in `pathlib`.

It would be nice to add support with it.

--
components: Library (Lib), Tests
messages: 401334
nosy: DavidMertz
priority: normal
severity: normal
status: open
title: Open functions in dbm submodule should support path-like objects
type: enhancement
versions: Python 3.11

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue45128] test_multiprocessing fails sporadically on the release artifacts

2021-09-07 Thread STINNER Victor


STINNER Victor  added the comment:

I'm not sure if unittest.mock code to import the module is reliable: see 
bpo-39551. It imports "multiprocessing", use getattr() to get 
multiprocessing.shared_memory. If getattr() fails with AttributeError, it tries 
to import "mulitprocessing.shared_memory", and then tries again the same 
getattr() on the previously imported "multiprocessing" module.

I'm curious if this change works around the issue:

diff --git a/Lib/unittest/mock.py b/Lib/unittest/mock.py
index c6067151de..1e3a8277ca 100644
--- a/Lib/unittest/mock.py
+++ b/Lib/unittest/mock.py
@@ -1238,7 +1238,7 @@ def _dot_lookup(thing, comp, import_path):
 try:
 return getattr(thing, comp)
 except AttributeError:
-__import__(import_path)
+thing = __import__(import_path)
 return getattr(thing, comp)

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue45128] test_multiprocessing fails sporadically on the release artifacts

2021-09-07 Thread STINNER Victor


STINNER Victor  added the comment:

I guess that the test was previously skipped, and bpo-45042 enabled again the 
test:

commit e5976dd2e6e966183da59df99978ebcb4b3a32df
Author: Miss Islington (bot) <31488909+miss-isling...@users.noreply.github.com>
Date:   Sat Sep 4 14:04:44 2021 -0700

bpo-45042: Now test classes decorated with `requires_hashdigest` are not 
skipped (GH-28060)


Co-authored-by: Serhiy Storchaka 
(cherry picked from commit dd7b816ac87e468e2fa65ce83c2a03fe1da8503e)

Co-authored-by: Nikita Sobolev 

--
nosy: +vstinner

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



Re: on writing a while loop for rolling two dice

2021-09-07 Thread Dennis Lee Bieber
On Tue, 7 Sep 2021 16:08:04 +1200, Greg Ewing 
declaimed the following:

>On 7/09/21 11:38 am, Avi Gross wrote:
>
>> #define INDEFINITELY_LOOP while (true)
>> 
>> So, how to do something like that in python, is a challenge left to the user 
>> ?
>
>def hell_frozen_over():
> return False
>
>while not hell_frozen_over():
> 

Hell typically freezes every January (scroll down to monthly average):
https://www.worldweatheronline.com/hell-weather-averages/michigan/us.aspx


-- 
Wulfraed Dennis Lee Bieber AF6VN
wlfr...@ix.netcom.comhttp://wlfraed.microdiversity.freeddns.org/

-- 
https://mail.python.org/mailman/listinfo/python-list


[issue38852] test_recursion_limit in test_threading crashes with SIGSEGV on android

2021-09-07 Thread Irit Katriel


Change by Irit Katriel :


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

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue43187] Dict creation in recursive function cause interpreter crashes.

2021-09-07 Thread Irit Katriel


Irit Katriel  added the comment:

On 3.9 I reproduce the segfault.

On 3.11 on a mac I get 

RecursionError: maximum recursion depth exceeded while calling a Python object


So it has been fixed in the meantime.

--
nosy: +iritkatriel
resolution:  -> out of date
stage:  -> resolved
status: open -> closed

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue45022] Update libffi to 3.4.2

2021-09-07 Thread Steve Dower


Steve Dower  added the comment:


New changeset 4dc4300c686f543d504ab6fa9fe600eaf11bb695 by giovanniwijaya in 
branch 'main':
bpo-45022: Fix libffi DLL name in Windows installer sources (GH-28203)
https://github.com/python/cpython/commit/4dc4300c686f543d504ab6fa9fe600eaf11bb695


--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue45116] Performance regression 3.10b1 and later on Windows

2021-09-07 Thread STINNER Victor


STINNER Victor  added the comment:

I don't understand if adding __forceinline on the mentioned static inline 
functions has an impact on the performance of a PGO build on Windows.

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue45130] shlex.join() does not accept pathlib.Path objects

2021-09-07 Thread Richard


Richard  added the comment:

While it may be primarily intended to combine output from shlex.split() again, 
IMO it's useful for manually constructed command lines as well, for example 
displaying instructions to a user where a path may contain spaces and special 
characters and needs to be properly escaped.

As for converting int to str, since subprocess.run() does not do that, 
shlex.split() does not need to do so either. I never mentioned that, and while 
I could see that being useful as well, that would have to be a separate 
discussion.

There's more of a case for automatic conversion for Path objects, which are 
supposed to work seamlessly in most places where strings are accepted. But such 
quirks of certain functions not accepting them and being forced to convert to 
str manually makes pathlib a little annoying to use compared to os.path.

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



Re: on writing a while loop for rolling two dice

2021-09-07 Thread Hope Rouselle
Grant Edwards  writes:

> On 2021-09-06, Stefan Ram  wrote:
>> "Avi Gross"  writes:
>>> In languages like C/C++ there are people who make up macros like:
>>>#define INDEFINITELY_LOOP while (true)
>>>Or something like that and then allow the preprocessor to replace 
>>>INDEFINITELY_LOOP with valid C code.
>>
>>   Those usually are beginners.

[...]

>>   Such a use of macros is frowned upon by most C programmers,
>>   because it renders the code unreadable.
>
> I remember engineering manager I worked with about 35 years ago who
> used a set of C macros to try to make his code look as much like BASIC
> as possible:
>
>   #define IF if (
>   #define THEN ) {
>   #define ELSE } else {
>   #define ENDIF }
>   ...
>
> IIRC he copied them out of a magazine article.
>
> He then proceeded to try to implement a tree search algorithm (he
> didn't actually know that's what he was doing) using his new
> "language" without using recursion (which he had never heard of and
> couldn't grok) by keeping track of state using an array. It did not go
> well and made him a bit of a laughingstock. IIRC, he had first tried
> to write it in actual BASIC, but gave up on that before switching to C
> and his ridiculous macro set.

LOL!  (Had fun reading this.)
-- 
https://mail.python.org/mailman/listinfo/python-list


Re: on writing a while loop for rolling two dice

2021-09-07 Thread alister via Python-list
On Tue, 07 Sep 2021 14:53:29 +, Grant Edwards wrote:

> On 2021-09-06, Stefan Ram  wrote:
>> "Avi Gross"  writes:
>>> In languages like C/C++ there are people who make up macros like:
>>>#define INDEFINITELY_LOOP while (true)
>>>Or something like that and then allow the preprocessor to replace
>>>INDEFINITELY_LOOP with valid C code.
>>
>>   Those usually are beginners.
>>
>>>So, how to do something like that in python, is a challenge left to the
>>>user
>>
>>   Such a use of macros is frowned upon by most C programmers,
>>   because it renders the code unreadable.
> 
> I remember engineering manager I worked with about 35 years ago who used
> a set of C macros to try to make his code look as much like BASIC as
> possible:
> 
>   #define IF if ( #define THEN ) { #define ELSE } else {
>   #define ENDIF }
>   ...
> 
> IIRC he copied them out of a magazine article.
> 
> He then proceeded to try to implement a tree search algorithm (he didn't
> actually know that's what he was doing) using his new "language" without
> using recursion (which he had never heard of and couldn't grok) by
> keeping track of state using an array. It did not go well and made him a
> bit of a laughingstock. IIRC, he had first tried to write it in actual
> BASIC, but gave up on that before switching to C and his ridiculous
> macro set.

1 Simple rule, if you are programming in language 'a' then write Language 
'a' Code it.

Just because you can do something doesn't mean you should


-- 
Help!  I'm trapped in a Chinese computer factory!
-- 
https://mail.python.org/mailman/listinfo/python-list


[issue45130] shlex.join() does not accept pathlib.Path objects

2021-09-07 Thread Eric V. Smith


Eric V. Smith  added the comment:

I disagree. In my mind, there's no more reason for shlex.join() to take Path 
objects than there is for str.join() to take them, or for shlex.join() to 
convert int's to str's. I'd rather shlex.join() continue to raise an exception 
if passed something that's not a str or bytes.

You should probably discuss this on the python-ideas mailing list if you want a 
broader audience.

--
nosy: +eric.smith
type: behavior -> enhancement
versions:  -Python 3.10, Python 3.8, Python 3.9

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue32955] IDLE crashes when trying to save a file

2021-09-07 Thread Terry J. Reedy


Terry J. Reedy  added the comment:

Thank you Irit.

For any users who stumble on this issue:  Drop down clicks in the dialog are 
handled by tk.  Hence, this was not an IDLE issue, unlikely to be a tkinter 
issue, and most likely a bad tcl/tk version issue.  Hence my first post. My 
response and the web are out of date.  We have fixed the version issue by 
including in each installer what seems to be the best available tcl/tk build.

--
resolution: works for me -> out of date

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue24888] FileNotFoundException raised by subprocess.call

2021-09-07 Thread Łukasz Langa

Łukasz Langa  added the comment:

Thanks for the patch, DonnaDia! ✨  ✨

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

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue24888] FileNotFoundException raised by subprocess.call

2021-09-07 Thread miss-islington


miss-islington  added the comment:


New changeset 31be544721670516fa9700e088c022ff38b0c5fe by Miss Islington (bot) 
in branch '3.10':
bpo-24888: Clarify subprocess.check_call propagates exceptions if unable to 
start process (GH-28018)
https://github.com/python/cpython/commit/31be544721670516fa9700e088c022ff38b0c5fe


--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue24888] FileNotFoundException raised by subprocess.call

2021-09-07 Thread Łukasz Langa

Łukasz Langa  added the comment:


New changeset 2363910662cda4dcf574da68b4633b55e5fc0f9c by Miss Islington (bot) 
in branch '3.9':
bpo-24888: Clarify subprocess.check_call propagates exceptions if unable to 
start process (GH-28018) (GH-28223)
https://github.com/python/cpython/commit/2363910662cda4dcf574da68b4633b55e5fc0f9c


--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue45132] Remove deprecated __getitem__ methods

2021-09-07 Thread Hugo van Kemenade


Change by Hugo van Kemenade :


--
keywords: +patch
pull_requests: +26647
stage:  -> patch review
pull_request: https://github.com/python/cpython/pull/28225

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue45132] Remove deprecated __getitem__ methods

2021-09-07 Thread Hugo van Kemenade


New submission from Hugo van Kemenade :

The __getitem__ methods of xml.dom.pulldom.DOMEventStream, 
wsgiref.util.FileWrapper and were deprecated in Python 3.8 by bpo-9372 / 
GH-8609.

They can be removed in Python 3.11.

--
components: Library (Lib)
messages: 401322
nosy: hugovk
priority: normal
severity: normal
status: open
title: Remove deprecated __getitem__ methods
versions: Python 3.11

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue24888] FileNotFoundException raised by subprocess.call

2021-09-07 Thread miss-islington


Change by miss-islington :


--
pull_requests: +26646
pull_request: https://github.com/python/cpython/pull/28224

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue24888] FileNotFoundException raised by subprocess.call

2021-09-07 Thread miss-islington


Change by miss-islington :


--
nosy: +miss-islington
nosy_count: 7.0 -> 8.0
pull_requests: +26645
pull_request: https://github.com/python/cpython/pull/28223

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue24888] FileNotFoundException raised by subprocess.call

2021-09-07 Thread Łukasz Langa

Łukasz Langa  added the comment:


New changeset 19a304ba990481f0381a5316096b6b3cf2dff381 by DonnaDia in branch 
'main':
bpo-24888: Clarify subprocess.check_call propagates exceptions if unable to 
start process (GH-28018)
https://github.com/python/cpython/commit/19a304ba990481f0381a5316096b6b3cf2dff381


--
nosy: +lukasz.langa

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue45131] `venv` → `ensurepip` may read local `setup.cfg` and fail mysteriously

2021-09-07 Thread Sean Kelly

New submission from Sean Kelly :

Creating a new virtual environment with the `venv` module reads any local 
`setup.cfg` file that may be found; if such a file has garbage, the `venv` 
fails with a mysterious message. 

Reproduce:

```
$ date -u
Tue Sep  7 18:12:27 UTC 2021
$ mkdir /tmp/demo
$ cd /tmp/demo
$ echo 'a < b' >setup.cfg
$ python3 -V
Python 3.9.5
$ python3 -m venv venv
Error: Command '['/tmp/demo/venv/bin/python3.9', '-Im', 'ensurepip', 
'--upgrade', '--default-pip']' returned non-zero exit status 1.
```

(Took me a little while to figure out I had some garbage in a `setup.cfg` file 
in $CWD that was causing it.)

Implications:

Potential implications are that a specially crafted `setup.cfg` might cause a 
security-compromised virtual environment to be created maybe? I don't know.

--
messages: 401320
nosy: nutjob4life
priority: normal
severity: normal
status: open
title: `venv` → `ensurepip` may read local `setup.cfg` and fail mysteriously
type: behavior
versions: Python 3.9

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue45116] Performance regression 3.10b1 and later on Windows

2021-09-07 Thread neonene


neonene  added the comment:

@vstinner: __forceinline suggestion

Since PR25244 (mentioned above), it seems link.exe has got to get stuck on 
python310.dll.
Before the PR, it took 10x~ longer to link than without __forceinline function.
I can confirm with _Py_DECREF() and _Py_XDECREF() and one training-job (the 
more fucntions forced/jobs used, the slower to link).
Have you tried __forceinline on PGO ?


> I don't understand how to read the table.

Overhead field is the output of pyperf command, not subtraction (the answers 
are the same just luckily).

ex) 3.10rc1x86 PGO: 
 PGO  : pyperf compare_to 3.10a7 left
 patched  : pyperf compare_to 3.10a7 right
 overhead : pyperf compare_to right  left 
  are
 1.15x slower (slower 52, faster  4, not significant  2)
 1.13x slower (slower 50, faster  4, not significant  4)
 1.02x slower (slower 29, faster 14, not significant 15)


> I'm not sure if PGO builds are reproducible,

MSVC does not produce the same code. Inlining (all or nothing) might be a quite 
special case in the hottest section.
I suspect the profiler doesn't work well only for _PyEval_EvalFrameDefault(), 
including branch/align optimization.
So my posted macro or inlining is just for a mesureing, not the solution.

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue19346] Build fails when there are no shared extensions to be built

2021-09-07 Thread Irit Katriel

Change by Irit Katriel :


--
resolution: remind -> duplicate
stage: patch review -> resolved
status: open -> closed
superseder:  -> Python’s setup.py raises a ValueError when self.extensions is 
empty

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue45012] DirEntry.stat method should release GIL

2021-09-07 Thread Łukasz Langa

Łukasz Langa  added the comment:

Dzięki za zgłoszenie i poprawkę, Stanisław! ✨  ✨

--
resolution:  -> fixed
stage: patch review -> resolved
status: open -> closed
type: behavior -> performance
versions:  -Python 3.10, Python 3.6, Python 3.7, Python 3.8, Python 3.9

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue45012] DirEntry.stat method should release GIL

2021-09-07 Thread Łukasz Langa

Łukasz Langa  added the comment:


New changeset 9dc363ee7cf2eb6ff374fbf7bbeb0b333f4afb8f by Stanisław Skonieczny 
in branch 'main':
bpo-45012: Release GIL around stat in os.scandir (GH-28085)
https://github.com/python/cpython/commit/9dc363ee7cf2eb6ff374fbf7bbeb0b333f4afb8f


--
nosy: +lukasz.langa

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue45122] Remove PyCode_New and PyCode_NewWithPosOnlyArgs

2021-09-07 Thread da-woods


da-woods  added the comment:

Done: https://github.com/Nuitka/Nuitka/issues/1203

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue30089] Automatic Unload of Dynamic Library Cause Segfault

2021-09-07 Thread Irit Katriel


Irit Katriel  added the comment:

Python 2.7 is no longer being maintained. If you are still seeing this problem 
on a current version (>= 3.9), please create a new issue.

Ideally, please provide instructions how to reproduce the bug.  It is hard to 
debug just from a description (particularly when it involves third party 
components).

--
nosy: +iritkatriel
resolution:  -> out of date
stage:  -> resolved
status: open -> closed

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35901] json.dumps infinite recurssion

2021-09-07 Thread Irit Katriel


Change by Irit Katriel :


--
resolution:  -> not a bug
stage:  -> resolved
status: open -> closed

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue23864] doc: issubclass without registration only works for "one-trick pony" collections ABCs.

2021-09-07 Thread Raymond Hettinger


Change by Raymond Hettinger :


--
keywords: +patch
nosy: +rhettinger
nosy_count: 11.0 -> 12.0
pull_requests: +26644
stage:  -> patch review
pull_request: https://github.com/python/cpython/pull/28218

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue45024] Cannot extend collections ABCs with protocol

2021-09-07 Thread Raymond Hettinger


Change by Raymond Hettinger :


--
keywords: +patch
pull_requests: +26643
stage:  -> patch review
pull_request: https://github.com/python/cpython/pull/28218

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue45127] Code objects can contain unmarshallable objects

2021-09-07 Thread Hai Shi


Change by Hai Shi :


--
nosy: +shihai1991

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue45118] regrtest no longer lists "re-run tests" in the second summary

2021-09-07 Thread Łukasz Langa

Łukasz Langa  added the comment:


New changeset 04c13c97eecdb66365782dbbf5e93ff5de267a61 by Miss Islington (bot) 
in branch '3.9':
bpo-45118: Fix regrtest second summary for re-run tests (GH-28183) (GH-28215)
https://github.com/python/cpython/commit/04c13c97eecdb66365782dbbf5e93ff5de267a61


--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue31419] Can not install python3.6.2 due to Error 0x80070643: Failed to install MSI package

2021-09-07 Thread Irit Katriel


Irit Katriel  added the comment:

Versions 3.5 and 3.6 are no longer being maintained. Are you seeing this 
problem with a newer version (>= 3.9)?

--
nosy: +iritkatriel
status: open -> pending

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35084] binascii.Error: Incorrect padding

2021-09-07 Thread Irit Katriel


Change by Irit Katriel :


--
resolution:  -> third party
stage:  -> resolved
status: open -> closed

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue32955] IDLE crashes when trying to save a file

2021-09-07 Thread Irit Katriel


Irit Katriel  added the comment:

Closing as there isn't enough information and there has been no response from 
the OP to the follow-up questions.

--
nosy: +iritkatriel
resolution:  -> works for me
stage:  -> resolved
status: open -> closed

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue38820] Make Python compatible with OpenSSL 3.0.0

2021-09-07 Thread Łukasz Langa

Change by Łukasz Langa :


--
pull_requests: +26642
pull_request: https://github.com/python/cpython/pull/28217

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue38820] Make Python compatible with OpenSSL 3.0.0

2021-09-07 Thread miss-islington


Change by miss-islington :


--
pull_requests: +26641
pull_request: https://github.com/python/cpython/pull/28216

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue38820] Make Python compatible with OpenSSL 3.0.0

2021-09-07 Thread Łukasz Langa

Łukasz Langa  added the comment:


New changeset cc7c6801945c6a7373553b78bd899ce09681ec0a by Christian Heimes in 
branch 'main':
bpo-38820: Test with OpenSSL 3.0.0 final (GH-28205)
https://github.com/python/cpython/commit/cc7c6801945c6a7373553b78bd899ce09681ec0a


--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue45129] Remove deprecated reuse_address parameter from create_datagram_endpoint()

2021-09-07 Thread Łukasz Langa

Łukasz Langa  added the comment:

To clarify, the option was entirely disabled in 3.9.0, 3.8.1, 3.7.6, and 3.6.10 
due to security concerns. If `True` was passed, it raised a ValueError. If 
`False` was passed, it raised a DeprecationWarning. This was implemented in 
GH-17311 and What's New was updated in GH-17595.

--
nosy: +lukasz.langa

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue32881] pycapsule:PyObject * is NULL pointer

2021-09-07 Thread Irit Katriel


Irit Katriel  added the comment:

Python 2.7 is no longer maintained. If you are seeing this problem on a new 
version (>= 3.9), please create a new issue with full instructions how to 
reproduce it.

--
nosy: +iritkatriel
resolution:  -> out of date
stage:  -> resolved
status: open -> closed

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue43468] functools.cached_property incorrectly locks the entire descriptor on class instead of per-instance locking

2021-09-07 Thread Antoine Pitrou


Antoine Pitrou  added the comment:

In addition to _NOT_FOUND and _EXCEPTION_RAISED, you could have an additional 
sentinel value _CONCURRENTLY_COMPUTING. Then you don't need to maintain a 
separate self.updater mapping.

--
nosy: +pitrou

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue44348] test_exceptions.ExceptionTests.test_recursion_in_except_handler stack overflow on Windows debug builds

2021-09-07 Thread STINNER Victor


STINNER Victor  added the comment:

I marked bpo-27277 as a duplicate of this issue.

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue27277] Test runner should try to increase stack size if it is too low

2021-09-07 Thread STINNER Victor


STINNER Victor  added the comment:

I just pushed a change to reduce the stack memory usage when deleting a chain 
of exceptions in bpo-44348. I consider that this issue is a duplicate. If it's 
not the case, please reopen the issue.

commit fb305092a5d7894b41f122c1a1117b3abf4c567e (upstream/main, main)
Author: Victor Stinner 
Date:   Tue Sep 7 15:42:11 2021 +0200

bpo-44348: BaseException deallocator uses trashcan (GH-28190)

The deallocator function of the BaseException type now uses the
trashcan mecanism to prevent stack overflow. For example, when a
RecursionError instance is raised, it can be linked to another
RecursionError through the __context__ attribute or the __traceback__
attribute, and then a chain of exceptions is created. When the chain
is destroyed, nested deallocator function calls can crash with a
stack overflow if the chain is too long compared to the available
stack memory.

--
resolution:  -> duplicate
stage:  -> resolved
status: open -> closed
superseder:  -> test_exceptions.ExceptionTests.test_recursion_in_except_handler 
stack overflow on Windows debug builds

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



Re: on writing a while loop for rolling two dice

2021-09-07 Thread Grant Edwards
On 2021-09-06, Stefan Ram  wrote:
> "Avi Gross"  writes:
>> In languages like C/C++ there are people who make up macros like:
>>#define INDEFINITELY_LOOP while (true)
>>Or something like that and then allow the preprocessor to replace 
>>INDEFINITELY_LOOP with valid C code.
>
>   Those usually are beginners.
>
>>So, how to do something like that in python, is a challenge left to the 
>>user
>
>   Such a use of macros is frowned upon by most C programmers,
>   because it renders the code unreadable.

I remember engineering manager I worked with about 35 years ago who
used a set of C macros to try to make his code look as much like BASIC
as possible:

  #define IF if (
  #define THEN ) {
  #define ELSE } else {
  #define ENDIF }
  ...

IIRC he copied them out of a magazine article.

He then proceeded to try to implement a tree search algorithm (he
didn't actually know that's what he was doing) using his new
"language" without using recursion (which he had never heard of and
couldn't grok) by keeping track of state using an array. It did not go
well and made him a bit of a laughingstock. IIRC, he had first tried
to write it in actual BASIC, but gave up on that before switching to C
and his ridiculous macro set.


-- 
https://mail.python.org/mailman/listinfo/python-list


Re: on writing a while loop for rolling two dice

2021-09-07 Thread Greg Ewing

On 7/09/21 11:38 am, Avi Gross wrote:


#define INDEFINITELY_LOOP while (true)

So, how to do something like that in python, is a challenge left to the user 


def hell_frozen_over():
return False

while not hell_frozen_over():


--
Greg

--
https://mail.python.org/mailman/listinfo/python-list


[issue34262] Asyncio test fails under Win 7

2021-09-07 Thread Irit Katriel


Change by Irit Katriel :


--
resolution:  -> duplicate
stage:  -> resolved
status: open -> closed
superseder:  -> [Windows] test_asyncio: Proactor 
test_sendfile_close_peer_in_the_middle_of_receiving failure

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue44348] test_exceptions.ExceptionTests.test_recursion_in_except_handler stack overflow on Windows debug builds

2021-09-07 Thread STINNER Victor


STINNER Victor  added the comment:

I rejected my two other ideas to fix this issue:

* bpo-45094: Consider using __forceinline and __attribute__((always_inline)) on 
static inline functions (Py_INCREF, Py_TYPE) for debug builds
* bpo-45115: Windows: enable compiler optimizations when building Python in 
debug mode

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue34262] Asyncio test fails under Win 7

2021-09-07 Thread STINNER Victor


STINNER Victor  added the comment:

test_sendfile_close_peer_in_the_middle_of_receiving() failure is tracked by 
bpo-41682.

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue25240] Stack overflow in reprlib causes a core dump

2021-09-07 Thread Irit Katriel


Irit Katriel  added the comment:

There was work on recursion in newer versions and several similar issues have 
been confirmed to be fixed. Since you didn't include a complete reproduction 
script, it's hard to know whether your case was fixed as well. I am therefore 
closing this, and request that you create a new issue with full reproduction 
information if you are still seeing this in a current version (>= 3.9).

--
nosy: +iritkatriel
resolution:  -> out of date
stage:  -> resolved
status: open -> closed

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue45104] Error in __new__ docs

2021-09-07 Thread Łukasz Langa

Łukasz Langa  added the comment:

Thanks for the patch, Raymond!

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

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue45104] Error in __new__ docs

2021-09-07 Thread Łukasz Langa

Łukasz Langa  added the comment:


New changeset b1f2fe777e1fe133d33cd1e714b8aa0f81fed1cc by Miss Islington (bot) 
in branch '3.9':
bpo-45104: Clarify when __init__ is called (GH-28210) (GH-28212)
https://github.com/python/cpython/commit/b1f2fe777e1fe133d33cd1e714b8aa0f81fed1cc


--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue45130] shlex.join() does not accept pathlib.Path objects

2021-09-07 Thread Richard


New submission from Richard :

When one of the items in the iterable passed to shlex.join() is a pathlib.Path 
object, it throws an exception saying it must be str or bytes. I believe it 
should accept Path objects just like other parts of the standard library such 
as subprocess.run() already do.


Python 3.9.2 (default, Feb 28 2021, 17:03:44) 
[GCC 10.2.1 20210110] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import shlex
>>> from pathlib import Path
>>> shlex.join(['foo', Path('bar baz')])
Traceback (most recent call last):
  File "", line 1, in 
  File "/usr/lib/python3.9/shlex.py", line 320, in join
return ' '.join(quote(arg) for arg in split_command)
  File "/usr/lib/python3.9/shlex.py", line 320, in 
return ' '.join(quote(arg) for arg in split_command)
  File "/usr/lib/python3.9/shlex.py", line 329, in quote
if _find_unsafe(s) is None:
TypeError: expected string or bytes-like object
>>> shlex.join(['foo', str(Path('bar baz'))])
"foo 'bar baz'"


Python 3.11.0a0 (heads/main:fa15df77f0, Sep  7 2021, 18:22:35) [GCC 10.2.1 
20210110] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import shlex
>>> from pathlib import Path
>>> shlex.join(['foo', Path('bar baz')])
Traceback (most recent call last):
  File "", line 1, in 
  File "/home/nyuszika7h/.pyenv/versions/3.11-dev/lib/python3.11/shlex.py", 
line 320, in join
return ' '.join(quote(arg) for arg in split_command)
   ^
  File "/home/nyuszika7h/.pyenv/versions/3.11-dev/lib/python3.11/shlex.py", 
line 320, in 
return ' '.join(quote(arg) for arg in split_command)
^^
  File "/home/nyuszika7h/.pyenv/versions/3.11-dev/lib/python3.11/shlex.py", 
line 329, in quote
if _find_unsafe(s) is None:
   ^^^
TypeError: expected string or bytes-like object, got 'PosixPath'
>>> shlex.join(['foo', str(Path('bar baz'))])
"foo 'bar baz'"

--
components: Library (Lib)
messages: 401301
nosy: nyuszika7h
priority: normal
severity: normal
status: open
title: shlex.join() does not accept pathlib.Path objects
type: behavior
versions: Python 3.10, Python 3.11, Python 3.8, Python 3.9

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue45104] Error in __new__ docs

2021-09-07 Thread miss-islington


miss-islington  added the comment:


New changeset ef704137770b2e98da7880c828aaf921f0b45337 by Miss Islington (bot) 
in branch '3.10':
bpo-45104: Clarify when __init__ is called (GH-28210)
https://github.com/python/cpython/commit/ef704137770b2e98da7880c828aaf921f0b45337


--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue45104] Error in __new__ docs

2021-09-07 Thread Łukasz Langa

Łukasz Langa  added the comment:


New changeset 5a42a49477cd601d67d81483f9589258dccb14b1 by Miss Islington (bot) 
in branch '3.8':
bpo-45104: Clarify when __init__ is called (GH-28210) (GH-28213)
https://github.com/python/cpython/commit/5a42a49477cd601d67d81483f9589258dccb14b1


--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue45118] regrtest no longer lists "re-run tests" in the second summary

2021-09-07 Thread miss-islington


Change by miss-islington :


--
pull_requests: +26640
pull_request: https://github.com/python/cpython/pull/28215

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue45118] regrtest no longer lists "re-run tests" in the second summary

2021-09-07 Thread Łukasz Langa

Łukasz Langa  added the comment:


New changeset c4ea45d7d2c02674db2fdb96c7eee89324d2dc64 by Victor Stinner in 
branch 'main':
bpo-45118: Fix regrtest second summary for re-run tests (GH-28183)
https://github.com/python/cpython/commit/c4ea45d7d2c02674db2fdb96c7eee89324d2dc64


--
nosy: +lukasz.langa

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue45118] regrtest no longer lists "re-run tests" in the second summary

2021-09-07 Thread miss-islington


Change by miss-islington :


--
nosy: +miss-islington
nosy_count: 2.0 -> 3.0
pull_requests: +26639
pull_request: https://github.com/python/cpython/pull/28214

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue41489] HTMLParser : HTMLParser.error creating multiple errors.

2021-09-07 Thread Irit Katriel


Irit Katriel  added the comment:

The code was changed and now instead of calling self.error() it raises an 
exception: 

raise AssertionError(
   'unknown status keyword %r in marked section' % rawdata[i+3:j])


So match not being initialised is no longer a problem.

--
resolution:  -> out of date
stage:  -> resolved
status: open -> closed

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue45104] Error in __new__ docs

2021-09-07 Thread miss-islington


Change by miss-islington :


--
nosy: +miss-islington
nosy_count: 6.0 -> 7.0
pull_requests: +26636
pull_request: https://github.com/python/cpython/pull/28211

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue45104] Error in __new__ docs

2021-09-07 Thread miss-islington


Change by miss-islington :


--
pull_requests: +26637
pull_request: https://github.com/python/cpython/pull/28212

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue41489] HTMLParser : HTMLParser.error creating multiple errors.

2021-09-07 Thread Irit Katriel


Irit Katriel  added the comment:

Changing type because crash typically refers to segfault rather than an 
exception.

--
nosy: +iritkatriel
type: crash -> behavior

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue45104] Error in __new__ docs

2021-09-07 Thread miss-islington


Change by miss-islington :


--
pull_requests: +26638
pull_request: https://github.com/python/cpython/pull/28213

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue45104] Error in __new__ docs

2021-09-07 Thread Łukasz Langa

Łukasz Langa  added the comment:


New changeset fa15df77f02ba4a66ba0b71989381a426038be01 by Raymond Hettinger in 
branch 'main':
bpo-45104: Clarify when __init__ is called (GH-28210)
https://github.com/python/cpython/commit/fa15df77f02ba4a66ba0b71989381a426038be01


--
nosy: +lukasz.langa

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue45121] Calling super().__init__ in subclasses of typing.Protocol raises RecursionError

2021-09-07 Thread Ken Jin


Change by Ken Jin :


--
priority: normal -> critical
title: Regression in 3.9.7 with typing.Protocol -> Calling super().__init__ in 
subclasses of typing.Protocol raises RecursionError
versions: +Python 3.10, Python 3.11

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue45121] Regression in 3.9.7 with typing.Protocol

2021-09-07 Thread Jelle Zijlstra


Change by Jelle Zijlstra :


--
nosy: +Jelle Zijlstra, kj

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue25769] Crash due to using weakref referent without acquiring a strong reference

2021-09-07 Thread Irit Katriel


Change by Irit Katriel :


--
resolution:  -> duplicate
stage:  -> resolved
status: open -> closed
superseder:  -> proxy_contains (weakref.proxy) can access an object with 0 
refcount

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



  1   2   3   >