[issue39883] Use BSD0 license for code in docs

2020-09-02 Thread miss-islington


Change by miss-islington :


--
keywords: +patch
nosy: +miss-islington
nosy_count: 5.0 -> 6.0
pull_requests: +21162
stage:  -> patch review
pull_request: https://github.com/python/cpython/pull/22073

___
Python tracker 

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



[issue39883] Use BSD0 license for code in docs

2020-09-02 Thread miss-islington


Change by miss-islington :


--
pull_requests: +21163
pull_request: https://github.com/python/cpython/pull/22074

___
Python tracker 

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



[issue39883] Use BSD0 license for code in docs

2020-09-02 Thread Guido van Rossum


Guido van Rossum  added the comment:


New changeset e223d06a8b2067c68e9f97c4628c2b0f056dcae6 by Todd in branch 
'master':
bpo-39883: Use BSD0 license for code in docs (GH-17635)
https://github.com/python/cpython/commit/e223d06a8b2067c68e9f97c4628c2b0f056dcae6


--

___
Python tracker 

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



[issue41695] http.cookies.SimpleCookie.parse could not parse cookies when one cookie value is json

2020-09-02 Thread Martin Panter


Martin Panter  added the comment:

Perhaps this is a duplicate of Issue 27674, where I think parsing is aborted 
when a double-quote is seen?

--
nosy: +martin.panter
superseder:  -> Quote mark breaks http.cookies, Cookie.py processing

___
Python tracker 

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



[issue41697] Heap buffer overflow in the parser

2020-09-02 Thread Guido van Rossum


Guido van Rossum  added the comment:

Smaller repro:

./python.exe -m configparser

Bisection shows that this is the call that causes the crash (line 1301):

return _impl(self._name, option, raw=raw, vars=vars,
 fallback=fallback, **kwargs)

But just that line doesn't trigger this -- apparently *everything* that came 
before it in that file is implicated. Or at least *something* that I haven't 
found yet.

Sorry for the play-by-play...

--

___
Python tracker 

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



[issue39010] ProactorEventLoop raises unhandled ConnectionResetError

2020-09-02 Thread Yury Selivanov


Yury Selivanov  added the comment:


New changeset be435ae2b064dc64f04475bec632862e1dbf605f by Ben Darnell in branch 
'master':
bpo-39010: Improve test shutdown (#22066)
https://github.com/python/cpython/commit/be435ae2b064dc64f04475bec632862e1dbf605f


--

___
Python tracker 

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



[issue41696] asyncio.run interacts surprisingly with debug mode

2020-09-02 Thread miss-islington


Change by miss-islington :


--
nosy: +miss-islington
nosy_count: 3.0 -> 4.0
pull_requests: +21160
pull_request: https://github.com/python/cpython/pull/22071

___
Python tracker 

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



[issue41696] asyncio.run interacts surprisingly with debug mode

2020-09-02 Thread miss-islington


Change by miss-islington :


--
pull_requests: +21161
pull_request: https://github.com/python/cpython/pull/22072

___
Python tracker 

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



[issue41697] Heap buffer overflow in the parser

2020-09-02 Thread Guido van Rossum


Guido van Rossum  added the comment:

Adding 3.9 since the offending commit was backported there.

--
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



[issue41696] asyncio.run interacts surprisingly with debug mode

2020-09-02 Thread Yury Selivanov


Yury Selivanov  added the comment:


New changeset 0770ad948cb6d9f7f6c4002efd83e27c27069808 by Shantanu in branch 
'master':
bpo-41696: Fix handling of debug mode in asyncio.run (#22069)
https://github.com/python/cpython/commit/0770ad948cb6d9f7f6c4002efd83e27c27069808


--

___
Python tracker 

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



[issue41697] Heap buffer overflow in the parser

2020-09-02 Thread Guido van Rossum


Guido van Rossum  added the comment:

Looking at it in lldb, 'last' seems to be bogus.

  kind = 6961392
  ...
  lineno = -33686019
  col_offset = -33686019
  end_lineno = 0
  end_col_offset = 0

Here I'm stuck.

--

___
Python tracker 

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



[issue41697] Heap buffer overflow in the parser

2020-09-02 Thread Guido van Rossum


Guido van Rossum  added the comment:

Hm, it's not in sysconfig.py, it's in the next step:

./python.exe -E ./setup.py  build

--

___
Python tracker 

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



[issue41697] Heap buffer overflow in the parser

2020-09-02 Thread Guido van Rossum


Guido van Rossum  added the comment:

I do have a repro of the crash (with clang 11 no less). But it could be 
anywhere in sysconfig.py or anything it imports...

--

___
Python tracker 

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



[issue41697] Heap buffer overflow in the parser

2020-09-02 Thread Guido van Rossum


Guido van Rossum  added the comment:

So that's the last line of the new helper function (in fact the end of the 
file). Maybe args can still be empty at this point?

--
assignee:  -> pablogsal
priority: normal -> release blocker

___
Python tracker 

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



[issue41698] io.[Text]IOBase.seek doesn't take keyword parameter - revisited

2020-09-02 Thread Andy Maier


Andy Maier  added the comment:

Thanks for referencing the PR that reintroduced the old way of documenting it.

>From my perspective, the proposal is fine. There are already some cases where 
>it is documented like that, e.g. str.removeprefix(prefix, /).

--

___
Python tracker 

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



[issue39883] Use BSD0 license for code in docs

2020-09-02 Thread Guido van Rossum


Guido van Rossum  added the comment:

FWIW the PSF board approved the change.

--
nosy: +gvanrossum

___
Python tracker 

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



[issue41699] Potential memory leak with asyncio and run_in_executor

2020-09-02 Thread Karthikeyan Singaravelan


Change by Karthikeyan Singaravelan :


--
nosy: +aeros

___
Python tracker 

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



[issue41699] Potential memory leak with asyncio and run_in_executor

2020-09-02 Thread Sophia Wisdom


New submission from Sophia Wisdom :

The below example leaks ~20 megabytes of memory. The amount leaked is related 
to both the number of items in the list and the number of times 
`run_in_executor` is called.

```
import asyncio

def leaker():
x = list(range(int(1000)))
1/0

async def function():
loop = asyncio.get_running_loop()
for i in range(1):
loop.run_in_executor(None, leaker)
```
at this point, `ps -o rss -p {pid}` outputs about 10MB

after invoking this:
```
asyncio.run(function())
```
Memory jumps to about 94MB, and doesn't return.

The lists don't show up in `gc.get_objects()`, but the amount of memory leaked 
does increase (though not proportionately) when the lists increase in size.

Note - this doesn't happen if `run_in_executor` is `await`ed immediately, but 
it does still occur if we e.g. put the future in a dictionary and then `await` 
the results later.
The leak still occurs on my machine if the `1/0` is omitted, but not on a 
colleague's.

We're pretty confused as to why this happens, and would appreciate any help.

--
components: asyncio
messages: 376275
nosy: asvetlov, sophia2, yselivanov
priority: normal
severity: normal
status: open
title: Potential memory leak with asyncio and run_in_executor
versions: Python 3.10, Python 3.8

___
Python tracker 

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



[issue41698] io.[Text]IOBase.seek doesn't take keyword parameter - revisited

2020-09-02 Thread Inada Naoki


Inada Naoki  added the comment:

Since we have positional-only argument, can we document it as `seek(offset, 
whence=SEEK_SET, /)`?

--

___
Python tracker 

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



[issue41698] io.[Text]IOBase.seek doesn't take keyword parameter - revisited

2020-09-02 Thread Inada Naoki


Inada Naoki  added the comment:

For the record, https://github.com/python/cpython/pull/14691/files reintroduced 
`whence=SEEK_SET`.

--
nosy: +inada.naoki

___
Python tracker 

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



[issue41696] asyncio.run interacts surprisingly with debug mode

2020-09-02 Thread Shantanu


Change by Shantanu :


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

___
Python tracker 

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



[issue41698] io.[Text]IOBase.seek doesn't take keyword parameter - revisited

2020-09-02 Thread Andy Maier


New submission from Andy Maier :

I stumbled across the problem reported in https://bugs.python.org/issue25030 on 
Python 3.8:

>>> with open('x.txt', 'a') as fp:
...   fp.seek(0, whence=os.SEEK_END)
... 
Traceback (most recent call last):
  File "", line 2, in 
TypeError: seek() takes no keyword arguments

Which I coded with a keyword argument because the documentation says so:

   seek(offset, whence=SEEK_SET)

See https://docs.python.org/3.8/library/io.html#io.IOBase.seek

The fix for issue issue25030 changed the documentation to:

   seek(offset[, whence])

and supposedly was integrated into 2.7, 3.4, and the default branch back then.

It seems the fix got lost?

--
assignee: docs@python
components: Documentation
messages: 376272
nosy: andymaier, docs@python
priority: normal
severity: normal
status: open
title: io.[Text]IOBase.seek doesn't take keyword parameter - revisited
versions: Python 3.8

___
Python tracker 

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



[issue41692] Deprecate immortal interned strings: PyUnicode_InternImmortal()

2020-09-02 Thread Inada Naoki


Inada Naoki  added the comment:

+1

--

___
Python tracker 

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



[issue41697] Heap buffer overflow in the parser

2020-09-02 Thread Brad Larsen


New submission from Brad Larsen :

It looks like commit 4a97b1517a6b5ff22e2984b677a680b07ff0ce11 introduced a heap 
buffer overflow:

commit 4a97b1517a6b5ff22e2984b677a680b07ff0ce11 (HEAD -> master, 
origin/master, origin/HEAD)
Author: Pablo Galindo 
Date:   Wed Sep 2 17:44:19 2020 +0100

bpo-41690: Use a loop to collect args in the parser instead of 
recursion (GH-22053)

This program can segfault the parser by stack overflow:

```
import ast

code = "f(" + ",".join(['a' for _ in range(10)]) + ")"
print("Ready!")
ast.parse(code)
```

the reason is that the rule for arguments has a simple recursion when 
collecting args:

args[expr_ty]:
[...]
| a=named_expression b=[',' c=args { c }] {
[...] }


If you try building with clang-10 with `--with-pydebug 
--with-address-sanitizer`, you should see a crash like the following during the 
`generate-posix-vars` step:

=
==39814==ERROR: AddressSanitizer: heap-buffer-overflow on address 
0x625000264148 at pc 0x01ff3be8 bp 0x7ffec90e5d00 sp 0x7ffec90e5cf8
READ of size 4 at 0x625000264148 thread T0
#0 0x1ff3be7 in _PyPegen_collect_call_seqs 
/build/python/cpython/Parser/pegen.c:2253:61
#1 0x218ab08 in args_rule /build/python/cpython/Parser/parser.c:12240:20
#2 0x20f8906 in arguments_rule 
/build/python/cpython/Parser/parser.c:12159:18
#3 0x2158c61 in t_primary_raw 
/build/python/cpython/Parser/parser.c:14063:18
#4 0x21416fb in t_primary_rule 
/build/python/cpython/Parser/parser.c:13896:22
#5 0x246d944 in single_subscript_attribute_target_rule 
/build/python/cpython/Parser/parser.c:13265:18
#6 0x2433a19 in _tmp_20_rule 
/build/python/cpython/Parser/parser.c:16717:54
#7 0x24016e3 in assignment_rule 
/build/python/cpython/Parser/parser.c:2093:18
#8 0x23e6617 in small_stmt_rule 
/build/python/cpython/Parser/parser.c:1526:31
#9 0x2018581 in simple_stmt_rule 
/build/python/cpython/Parser/parser.c:1424:18
#10 0x200c22c in statement_rule 
/build/python/cpython/Parser/parser.c:1258:32
#11 0x2007026 in _loop1_11_rule 
/build/python/cpython/Parser/parser.c:16174:30
#12 0x200455a in statements_rule 
/build/python/cpython/Parser/parser.c:1193:18
#13 0x230193f in block_rule 
/build/python/cpython/Parser/parser.c:6257:18
#14 0x205886b in function_def_raw_rule 
/build/python/cpython/Parser/parser.c:4927:18
#15 0x20229a4 in function_def_rule 
/build/python/cpython/Parser/parser.c:4856:37
#16 0x200e2da in compound_stmt_rule 
/build/python/cpython/Parser/parser.c:1872:33
#17 0x200a873 in statement_rule 
/build/python/cpython/Parser/parser.c:1234:18
#18 0x2007026 in _loop1_11_rule 
/build/python/cpython/Parser/parser.c:16174:30
#19 0x200455a in statements_rule 
/build/python/cpython/Parser/parser.c:1193:18
#20 0x230193f in block_rule 
/build/python/cpython/Parser/parser.c:6257:18
#21 0x2392ac3 in class_def_raw_rule 
/build/python/cpython/Parser/parser.c:6196:18
#22 0x202fb74 in class_def_rule 
/build/python/cpython/Parser/parser.c:6139:34
#23 0x2010e47 in compound_stmt_rule 
/build/python/cpython/Parser/parser.c:1914:30
#24 0x200a873 in statement_rule 
/build/python/cpython/Parser/parser.c:1234:18
#25 0x2007026 in _loop1_11_rule 
/build/python/cpython/Parser/parser.c:16174:30
#26 0x200455a in statements_rule 
/build/python/cpython/Parser/parser.c:1193:18
#27 0x230193f in block_rule 
/build/python/cpython/Parser/parser.c:6257:18
#28 0x238f31b in else_block_rule 
/build/python/cpython/Parser/parser.c:3787:18
#29 0x204e3c4 in try_stmt_rule 
/build/python/cpython/Parser/parser.c:4460:19
#30 0x2014f68 in compound_stmt_rule 
/build/python/cpython/Parser/parser.c:1977:29
#31 0x200a873 in statement_rule 
/build/python/cpython/Parser/parser.c:1234:18
#32 0x2007026 in _loop1_11_rule 
/build/python/cpython/Parser/parser.c:16174:30
#33 0x200455a in statements_rule 
/build/python/cpython/Parser/parser.c:1193:18
#34 0x1ff8c93 in file_rule /build/python/cpython/Parser/parser.c:726:18
#35 0x1ff742d in _PyPegen_parse 
/build/python/cpython/Parser/parser.c:24794:18
#36 0x1fc1128 in _PyPegen_run_parser 
/build/python/cpython/Parser/pegen.c::17
#37 0x1fc5e38 in _PyPegen_run_parser_from_string 
/build/python/cpython/Parser/pegen.c:1238:14
#38 0x1a8952b in PyParser_ASTFromStringObject 
/build/python/cpython/Parser/peg_api.c:27:21
#39 0x1339bef in Py_CompileStringObject 
/build/python/cpython/Python/pythonrun.c:1203:11
#40 0x1f2ac43 in builtin_compile_impl 
/build/python/cpython/Python/bltinmodule.c:819:14
#41 0x1f1902a in builtin_compile 

[issue41696] asyncio.run interacts surprisingly with debug mode

2020-09-02 Thread Yury Selivanov


Yury Selivanov  added the comment:

Yes, this is a bug. The default for the `debug` parameter should be `None` and 
it should only call `loop.set_debug` if a non-None bool value was explicitly 
passed. Care to submit a PR?

--

___
Python tracker 

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



[issue41696] asyncio.run interacts surprisingly with debug mode

2020-09-02 Thread Shantanu

New submission from Shantanu :

To quote the docs (https://docs.python.org/3/library/asyncio-dev.html):

```
By default asyncio runs in production mode. In order to ease the development 
asyncio has a debug mode.

There are several ways to enable asyncio debug mode:

Setting the PYTHONASYNCIODEBUG environment variable to 1.

Using the -X dev Python command line option.

Passing debug=True to asyncio.run().

Calling loop.set_debug().
```

Unfortunately, this documentation is misleading (or wrong) when using 
asyncio.run. For instance, from a naive read of the above, I'd expect debug 
mode to be True for many of the following:

```
~/tmp λ cat test57.py
import asyncio
import time

async def foo():
loop = asyncio.get_event_loop()
time.sleep(2)
print(loop.get_debug())

print(asyncio.coroutines._DEBUG)
asyncio.run(foo())
~/tmp λ python3 --version   
Python 3.7.3

# expected
~/tmp λ python3 test57.py
False
False

# surprising, would expect this to work
~/tmp λ python3 -X dev test57.py
True
False

# surprising, would expect this to work
~/tmp λ PYTHONASYNCIODEBUG=1 python3 test57.py
True
False

# expected
~/tmp λ vim test57.py
~/tmp λ cat test57.py
import asyncio
import time

async def foo():
loop = asyncio.get_event_loop()
time.sleep(2)
print(loop.get_debug())

print(asyncio.coroutines._DEBUG)
asyncio.run(foo(), debug=True)
~/tmp λ python3 test57.py   
False
True
Executing  result=None 
created at 
/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.7/lib/python3.7/asyncio/base_events.py:563>
 took 2.003 seconds
~/tmp λ 
```

This appears to be because asyncio.run sets debug mode here: 
https://github.com/python/cpython/blob/4a97b1517a6b5ff22e2984b677a680b07ff0ce11/Lib/asyncio/runners.py#L42

We should either change asyncio.run to use the existing value of debug mode if 
left unspecified, or we should update the documentation to explicitly call out 
that the environment variable and command line flag will not work when using 
asyncio.run

--
components: asyncio
messages: 376268
nosy: asvetlov, hauntsaninja, yselivanov
priority: normal
severity: normal
status: open
title: asyncio.run interacts surprisingly with debug mode

___
Python tracker 

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



[issue41694] python3 futures.as_completed timeout broken if future contains undefined reference

2020-09-02 Thread Josh Rosenberg


Josh Rosenberg  added the comment:

The problem is a lot simpler than you're making it:

1. You submit a time.sleep(30) task. This begins running immediately
2. You try to submit another task, but a NameError is raised, bypassing the 
rest of the code (you never call as_completed, with or without a timeout)
3. The ThreadPoolExecutor's __exit__ is invoked, which implicitly invokes 
shutdown(wait=True). This does not return until the successfully submitted task 
(time.sleep(30)) finished.
4. At that point, the exception that was interrupted by with statement cleanup 
resumes bubbling

All of this is behaving exactly as documented, no bug is occurring.

--
nosy: +josh.r
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



[issue32725] Instance of _multiprocessing.PipeConnection-subtype crash on deletion

2020-09-02 Thread Irit Katriel


Irit Katriel  added the comment:

I was able to reproduce the crash in python 2.7, but in Python 3.10 (after I 
changed to import PipeConnection from multiprocessing.connection instead of 
_multiprocessing), it doesn't crash but raises an exception that makes sense 
when the handle is 0:

Running Release|Win32 interpreter...
Exception ignored in: 
Traceback (most recent call last):
  File "C:\Users\User\src\cpython\lib\multiprocessing\connection.py", line 137, 
in __del__
self._close()
  File "C:\Users\User\src\cpython\lib\multiprocessing\connection.py", line 282, 
in _close
_CloseHandle(self._handle)
OSError: [WinError 6] The handle is invalid

--
nosy: +iritkatriel

___
Python tracker 

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



[issue41513] High accuracy math.hypot()

2020-09-02 Thread Raymond Hettinger


Change by Raymond Hettinger :


Removed file: https://bugs.python.org/file49438/hypot.svg

___
Python tracker 

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



[issue41513] High accuracy math.hypot()

2020-09-02 Thread Raymond Hettinger


Change by Raymond Hettinger :


Added file: https://bugs.python.org/file49439/hypot.png

___
Python tracker 

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



[issue41686] C++ Embedded 'time.sleep()' is not working on Windows host due to 'Py_InitializeEx(0)'

2020-09-02 Thread Steve Dower


Steve Dower  added the comment:

> Could sigint_event be relocated to a platform-dependent extension of 
> _PyRuntimeState that gets initialized and finalized independent of any module?

This, or leaving it where it is and making sure it gets initialised (it really 
is about emulating certain signals). Either sounds fine to me.

--

___
Python tracker 

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



[issue38965] test_stack_overflow (test.test_faulthandler.FaultHandlerTests) is stuck with GCC10

2020-09-02 Thread Matej Cepl


Matej Cepl  added the comment:

3.7 patch applies cleanly even for 3.6.12.

--
nosy: +mcepl

___
Python tracker 

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



[issue41690] Use a loop to collect args in the parser instead of recursion

2020-09-02 Thread Pablo Galindo Salgado


Change by Pablo Galindo Salgado :


--
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



[issue41690] Use a loop to collect args in the parser instead of recursion

2020-09-02 Thread Pablo Galindo Salgado


Pablo Galindo Salgado  added the comment:


New changeset 8de34cdb952a2e3b8d7a9a213845cad01a8cece3 by Pablo Galindo in 
branch '3.9':
[3.9] bpo-41690: Use a loop to collect args in the parser instead of recursion 
(GH-22053) (GH-22067)
https://github.com/python/cpython/commit/8de34cdb952a2e3b8d7a9a213845cad01a8cece3


--

___
Python tracker 

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



[issue41693] AttributeError: 'str' object has no attribute '__cause__' (python3.8/traceback.py", line 479, in __init__)

2020-09-02 Thread Eric V. Smith


Change by Eric V. Smith :


--
resolution:  -> not a bug

___
Python tracker 

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



[issue41693] AttributeError: 'str' object has no attribute '__cause__' (python3.8/traceback.py", line 479, in __init__)

2020-09-02 Thread Abael He


Abael He  added the comment:

jupyterlab 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



[issue39349] Add "cancel_futures" parameter to concurrent.futures.Executor.shutdown()

2020-09-02 Thread Kyle Stanley


Kyle Stanley  added the comment:

Thanks for bringing attention to cancel_futures being missing in the base 
Executor class and for the PR, Shantanu!

--

___
Python tracker 

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



[issue39349] Add "cancel_futures" parameter to concurrent.futures.Executor.shutdown()

2020-09-02 Thread Kyle Stanley


Kyle Stanley  added the comment:


New changeset a763ee3c583e6a2dfe1b1ac0600a48e8a978ed50 by Shantanu in branch 
'3.9':
[3.9] bpo-39349: Add cancel_futures to Executor.shutdown base class (GH-22023) 
(GH-22048)
https://github.com/python/cpython/commit/a763ee3c583e6a2dfe1b1ac0600a48e8a978ed50


--

___
Python tracker 

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



[issue41642] Buildbot: workers detached every minute and "no space left on device" issue

2020-09-02 Thread Pablo Galindo Salgado


Pablo Galindo Salgado  added the comment:

All the pablogsal-* buildbots have been updated

--

___
Python tracker 

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



[issue41642] Buildbot: workers detached every minute and "no space left on device" issue

2020-09-02 Thread Gregory P. Smith


Gregory P. Smith  added the comment:

The gps-* bots have been updated.

--
nosy: +gregory.p.smith

___
Python tracker 

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



[issue41513] High accuracy math.hypot()

2020-09-02 Thread Raymond Hettinger


Change by Raymond Hettinger :


Added file: https://bugs.python.org/file49438/hypot.svg

___
Python tracker 

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



[issue41694] python3 futures.as_completed timeout broken if future contains undefined reference

2020-09-02 Thread Dallas Marlow


Dallas Marlow  added the comment:

I apologize for all the messages, but the more I look into this issue the 
stranger it seems. The following code does the following:

- print the time
- execute 3 futures (2 w/ 30s sleeps)
- call as_completed
- catch the timeout exception
- print the time again
- then raise the timeout exception, but only after all futures complete.

the second time print executes after the as_completed timeout duration, but the 
exception was only raised after all futures completed. the exception message 
incorrectly states that it left 2/3 futures unfinished.

#

import concurrent.futures
import time

with concurrent.futures.ThreadPoolExecutor() as ex:
print(time.time())
futures = [
ex.submit(time.sleep, 30),
ex.submit(time.sleep, 30),
ex.submit(print, 'test'),
]
try:
for future in concurrent.futures.as_completed(
futures, timeout=1):
_ = future.result()
except Exception as e:
print(time.time())
raise e

--

___
Python tracker 

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



[issue16003] thread_PyThread_start_new_thread fails with a generic error

2020-09-02 Thread Zackery Spytz


Change by Zackery Spytz :


--
keywords: +patch
nosy: +ZackerySpytz
nosy_count: 2.0 -> 3.0
pull_requests: +21158
stage:  -> patch review
pull_request: https://github.com/python/cpython/pull/22068

___
Python tracker 

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



[issue41679] Deprecation warning due to invalid escape sequences in Doc/tools/extensions/peg_highlight.py

2020-09-02 Thread Pablo Galindo Salgado


Change by Pablo Galindo Salgado :


--
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



[issue41690] Use a loop to collect args in the parser instead of recursion

2020-09-02 Thread Pablo Galindo Salgado


Change by Pablo Galindo Salgado :


--
pull_requests: +21157
pull_request: https://github.com/python/cpython/pull/22067

___
Python tracker 

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



[issue41631] _ast module: get_global_ast_state() doesn't work with Mercurial lazy import

2020-09-02 Thread STINNER Victor


STINNER Victor  added the comment:

At commit ac46eb4ad6662cf6d771b20d8963658b2186c48c ("bpo-38113: Update the 
Python-ast.c generator to PEP384 (gh-15957)"):
---
static struct PyModuleDef _astmodule = {
PyModuleDef_HEAD_INIT,
"_ast",
NULL,
sizeof(astmodulestate),
NULL,
NULL,
astmodule_traverse,
astmodule_clear,
astmodule_free,
};

#define astmodulestate_global ((astmodulestate 
*)PyModule_GetState(PyState_FindModule(&_astmodule)))

PyMODINIT_FUNC
PyInit__ast(void)
{
PyObject *m;
if (!init_types()) return NULL;
m = PyState_FindModule(&_astmodule);
...
return m;
}
---

=> I investigated bpo-41194 crash again. It seems like the root issue is more 
than PyInit__ast() returns a *borrowed* reference, rather than a strong 
reference.

=> The _ast module can only be loaded once, astmodule_free() and 
astmodule_clear() are not called at Python exit.


At commit 91e1bc18bd467a13bceb62e16fbc435b33381c82 ("bpo-41194: The _ast module 
cannot be loaded more than once (GH-21290)"):
---
static astmodulestate global_ast_state;

static astmodulestate *
get_ast_state(PyObject *Py_UNUSED(module))
{
return _ast_state;
}

#define get_global_ast_state() (_ast_state)

static struct PyModuleDef _astmodule = {
PyModuleDef_HEAD_INIT,
.m_name = "_ast",
.m_size = -1,
.m_traverse = astmodule_traverse,
.m_clear = astmodule_clear,
.m_free = astmodule_free,
};

PyMODINIT_FUNC
PyInit__ast(void)
{
PyObject *m = PyModule_Create(&_astmodule);
if (!m) {
return NULL;
}
astmodulestate *state = get_ast_state(m);
...
}
---

* bpo-41194 => ok, PyInit__ast() is fine
* bpo-41631 => ok: PyAST_Check() doesn't import the module, it uses a global 
state.
* bpo-41261 => ERROR: This implementation allows to create two instances of the 
_ast module, but also to unload one instance (call astmodule_free), because 
_astmodule.m_size = -1.


At commit b1cc6ba73a51d5cc3aeb113b5e7378fb50a0e20a ("bpo-41194: Convert _ast 
extension to PEP 489 (GH-21293)"):
---
static astmodulestate*
get_global_ast_state(void)
{
...
PyObject *module = PyImport_GetModule(name);
if (module == NULL) {
if (PyErr_Occurred()) {
return NULL;
}
module = PyImport_Import(name);
if (module == NULL) {
return NULL;
}
}
...
astmodulestate *state = get_ast_state(module);
Py_DECREF(module);
return state;
}

static struct PyModuleDef _astmodule = {
PyModuleDef_HEAD_INIT,
.m_name = "_ast",
.m_size = sizeof(astmodulestate),
.m_slots = astmodule_slots,
.m_traverse = astmodule_traverse,
.m_clear = astmodule_clear,
.m_free = astmodule_free,
};

PyMODINIT_FUNC
PyInit__ast(void)
{
return PyModuleDef_Init(&_astmodule);
}
---

* bpo-41631 => ERROR: PyAST_Check() imports "_ast" module

--

___
Python tracker 

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



[issue41690] Use a loop to collect args in the parser instead of recursion

2020-09-02 Thread Pablo Galindo Salgado


Pablo Galindo Salgado  added the comment:


New changeset 4a97b1517a6b5ff22e2984b677a680b07ff0ce11 by Pablo Galindo in 
branch 'master':
bpo-41690: Use a loop to collect args in the parser instead of recursion 
(GH-22053)
https://github.com/python/cpython/commit/4a97b1517a6b5ff22e2984b677a680b07ff0ce11


--

___
Python tracker 

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



[issue41694] python3 futures.as_completed timeout broken if future contains undefined reference

2020-09-02 Thread Dallas Marlow


Dallas Marlow  added the comment:

I also verified that this issue persists with blocking futures other than sleep 
calls:

import concurrent.futures
import subprocess

with concurrent.futures.ThreadPoolExecutor() as ex:
futures = [
ex.submit(subprocess.run, ['sleep', '30']),
ex.submit(print, 'test'),
]
for future in concurrent.futures.as_completed(futures, timeout=1):
_ = future.result()

--

___
Python tracker 

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



[issue41695] http.cookies.SimpleCookie.parse could not parse cookies when one cookie value is json

2020-09-02 Thread Benoît Brayer

New submission from Benoît Brayer :

Using python3.8.5, SimpleCookie parser seems to be unable to load the cookie 
string when a json string is used inside one of the cookie values.

I did not try to replay using other python3 versions yet.

Please use the following code to replay the bug:

>>> from http import cookies
>>> cookie_parser = cookies.SimpleCookie()
>>> cookie_parser.load('CookieScriptConsent={"action":"accept"}; 
>>> __stripe_mid=plip; __stripe_sid=plop; _ga=tada; _gcl_au=pouet; _hjid=hello; 
>>> authn_token=mylogin; rememberMe=true')
>>> cookie_parser.keys()
dict_keys([])
>>> cookie_parser = cookies.SimpleCookie()
>>> cookie_parser.load('__stripe_mid=plip; __stripe_sid=plop; _ga=tada; 
>>> _gcl_au=pouet; _hjid=hello; authn_token=mylogin; rememberMe=true')
>>> cookie_parser.keys()
dict_keys(['__stripe_mid', '__stripe_sid', '_ga', '_gcl_au', '_hjid', 
'authn_token', 'rememberMe'])

--
messages: 376253
nosy: brayer.benoit
priority: normal
severity: normal
status: open
title: http.cookies.SimpleCookie.parse could not parse cookies when one cookie 
value is json
type: behavior
versions: Python 3.8

___
Python tracker 

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



[issue41694] python3 futures.as_completed timeout broken if future contains undefined reference

2020-09-02 Thread Dallas Marlow


Dallas Marlow  added the comment:

After closer inspection it seems as though timeouts are not working as I would 
expect even when there are no undefined references. The following code runs for 
30s when I would expect a timeout exception thrown after 1 second. as_completed 
eventually does throw a timeout exception, but only after the sleep future 
completes.

###

import concurrent.futures
import time

with concurrent.futures.ThreadPoolExecutor() as ex:
futures = [
ex.submit(time.sleep, 30),
ex.submit(print, 'test'),
]
for future in concurrent.futures.as_completed(futures, timeout=1):
_ = future.result()

--

___
Python tracker 

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



[issue41689] allow __text_signature__ to work for c heap types

2020-09-02 Thread Benjamin Peterson


Benjamin Peterson  added the comment:


New changeset 3940333637b98a2781869977b077552514784529 by Benjamin Peterson in 
branch 'master':
closes bpo-41689: Preserve text signature from tp_doc in C heap type creation. 
(GH-22058)
https://github.com/python/cpython/commit/3940333637b98a2781869977b077552514784529


--
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



[issue41694] python3 futures.as_completed timeout broken if future contains undefined reference

2020-09-02 Thread Dallas Marlow


New submission from Dallas Marlow :

I recently noticed that timeouts do not work with futures.as_completed if a 
future contains an undefined variable or method. The following code runs for 30 
seconds which I believe is a bug as I would expect the invalid print future to 
throw an exception immediately or the as_completed method throw an exception 
instead.

#

import concurrent.futures

with concurrent.futures.ThreadPoolExecutor() as ex:
futures = [
ex.submit(time.sleep, 30),
ex.submit(print, a),
]
for future in concurrent.futures.as_completed(futures, timeout=1):
_ = future.result()

--
components: Interpreter Core
messages: 376250
nosy: dallasmarlow
priority: normal
severity: normal
status: open
title: python3 futures.as_completed timeout broken if future contains undefined 
reference
versions: Python 3.6, Python 3.7, Python 3.8

___
Python tracker 

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



[issue41692] Deprecate immortal interned strings: PyUnicode_InternImmortal()

2020-09-02 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



[issue41693] AttributeError: 'str' object has no attribute '__cause__' (python3.8/traceback.py", line 479, in __init__)

2020-09-02 Thread Eric V. Smith


Eric V. Smith  added the comment:

I'm not convinced. Isn't the real problem that exc_value is a str, and you're 
just hiding that problem now?

--

___
Python tracker 

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



[issue41693] AttributeError: 'str' object has no attribute '__cause__' (python3.8/traceback.py", line 479, in __init__)

2020-09-02 Thread Abael He


Abael He  added the comment:

"traceback.py" exception occurred During handling of the jupyter exception;
that denotes we need more robust "traceback.py";
i have submit PR:
https://github.com/python/cpython/pull/22064

--

___
Python tracker 

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



[issue39010] ProactorEventLoop raises unhandled ConnectionResetError

2020-09-02 Thread Ben Darnell


Ben Darnell  added the comment:

I've fixed the test and added some commentary about the different levels of 
clean shutdown we must do to quiet all the warnings: 
https://github.com/python/cpython/pull/22066

--

___
Python tracker 

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



[issue38055] Starting multiprocessing.Process raises FileNotFoundError unexpectedly

2020-09-02 Thread Irit Katriel


Irit Katriel  added the comment:

On windows 10, Python 3.10 I don't get a FileNotFoundError from this script. 
Which system and python version are you seeing it on?

--
nosy: +iritkatriel

___
Python tracker 

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



[issue39010] ProactorEventLoop raises unhandled ConnectionResetError

2020-09-02 Thread Ben Darnell


Change by Ben Darnell :


--
pull_requests: +21156
pull_request: https://github.com/python/cpython/pull/22066

___
Python tracker 

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



[issue41691] Idle 3.8.5 on Win64 won't save a file if it didn't include a newline when it was opened (ex: opening empty file)

2020-09-02 Thread David Crespo


David Crespo  added the comment:

Thanks for your answers. I tried to search if the bug was already reported 
using some text searches but I couldn't find it so I opened a new one. Next 
time I'll try what you recommend.

Regards and thanks for keeping Python in good shape!

--

___
Python tracker 

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



[issue41528] Use math module in turtle

2020-09-02 Thread Terry J. Reedy


Terry J. Reedy  added the comment:

You could post a suggested replacement for a couple of the expressions, with 
the warning that we would not necessarily use it.  math.hypot has recently be 
worked over so that it is perhaps more accurate than the  standard C version.

--

___
Python tracker 

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



[issue41691] Idle 3.8.5 on Win64 won't save a file if it didn't include a newline when it was opened (ex: opening empty file)

2020-09-02 Thread Terry J. Reedy


Terry J. Reedy  added the comment:

For future reference, bpo has a search function.  Searching with component = 
IDLE and status = Closed or Don't care would have found this.

--
resolution:  -> fixed
stage:  -> resolved
status: open -> closed
superseder:  -> IDLE: edit/save files created by Windows Explorer

___
Python tracker 

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



[issue41693] AttributeError: 'str' object has no attribute '__cause__' (python3.8/traceback.py", line 479, in __init__)

2020-09-02 Thread Eric V. Smith


Eric V. Smith  added the comment:

This looks like a problem with jupyter, possibly related to the permission 
error. Have you tried a jupyter forum for help?

--
nosy: +eric.smith

___
Python tracker 

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



[issue41679] Deprecation warning due to invalid escape sequences in Doc/tools/extensions/peg_highlight.py

2020-09-02 Thread miss-islington


Change by miss-islington :


--
nosy: +miss-islington
nosy_count: 3.0 -> 4.0
pull_requests: +21155
pull_request: https://github.com/python/cpython/pull/22065

___
Python tracker 

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



[issue41675] Modernize siginterrupt calls

2020-09-02 Thread Pablo Galindo Salgado


Pablo Galindo Salgado  added the comment:


New changeset f9c5e3f5f61cd380f8a17c814766fc3730b7fbdf by Pablo Galindo in 
branch 'master':
bpo-41675: Modernize siginterrupt calls (GH-22028)
https://github.com/python/cpython/commit/f9c5e3f5f61cd380f8a17c814766fc3730b7fbdf


--

___
Python tracker 

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



[issue41675] Modernize siginterrupt calls

2020-09-02 Thread Pablo Galindo Salgado


Change by Pablo Galindo Salgado :


--
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



[issue1635741] Py_Finalize() doesn't clear all Python objects at exit

2020-09-02 Thread STINNER Victor


STINNER Victor  added the comment:

I created bpo-41692: "Deprecate immortal interned strings: 
PyUnicode_InternImmortal()".

--
versions: +Python 3.10 -Python 3.9

___
Python tracker 

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



[issue41693] AttributeError: 'str' object has no attribute '__cause__' (python3.8/traceback.py", line 479, in __init__)

2020-09-02 Thread Abael He


Change by Abael He :


--
versions: +Python 3.10, Python 3.9

___
Python tracker 

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



[issue41693] AttributeError: 'str' object has no attribute '__cause__' (python3.8/traceback.py", line 479, in __init__)

2020-09-02 Thread Abael He

New submission from Abael He :

Abaels-MBP:notebook-myfork abaelhe$ pip install jupyterlab_powerpoint
Defaulting to user installation because normal site-packages is not writeable
Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple, 
https://mirror.baidu.com/pypi/simple
Collecting jupyterlab_powerpoint
  Downloading 
https://pypi.tuna.tsinghua.edu.cn/packages/67/b3/7c65696326b35c2cf62f7203ddc6915518769b3281297762505496c02cbb/jupyterlab_powerpoint-0.1.0-py2.py3-none-any.whl
 (22 kB)
Collecting python-pptx>=0.6.0

……

Building wheels for collected packages: python-pptx
  Building wheel for python-pptx (setup.py) ... done
  Created wheel for python-pptx: filename=python_pptx-0.6.18-py3-none-any.whl 
size=275703 
sha256=2cc60bf3fd5d8de7909a47cf2318248fe7f966f64da1014be413db2274abd19c
  Stored in directory: 
/Users/abaelhe/Library/Caches/pip/wheels/2c/92/3f/c614b86f8f18dc83f377a94e76a2f2fb1a1b6d5d74d438d2f4
Successfully built python-pptx
Installing collected packages: lxml, XlsxWriter, python-pptx, 
jupyterlab-powerpoint
Successfully installed XlsxWriter-1.3.3 jupyterlab-powerpoint-0.1.0 lxml-4.5.2 
python-pptx-0.6.18
Abaels-MBP:notebook-myfork abaelhe$ jupyter labextension install 
jupyterlab_powerpoint
jupyter serverextension enable --py jupyterlab_powerpointjupyter 
serverextension enable --py jupyterlab_powerpointjupyter serverextension enable 
--py jupyterlab_powerpointBuilding jupyterlab assets (build:prod:minimize)
--- Logging error ---
Traceback (most recent call last):
  File 
"/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/shutil.py", 
line 670, in _rmtree_safe_fd
os.unlink(entry.name, dir_fd=topfd)
PermissionError: [Errno 13] Permission denied: '403.html'

During handling of the above exception, another exception occurred:
Traceback (most recent call last):
  File 
"/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/logging/__init__.py",
 line 1081, in emit
msg = self.format(record)
  File 
"/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/logging/__init__.py",
 line 925, in format
return fmt.format(record)
  File 
"/Users/abaelhe/Library/Python/3.8/lib/python/site-packages/traitlets/config/application.py",
 line 117, in format
return super(LevelFormatter, self).format(record)
  File 
"/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/logging/__init__.py",
 line 672, in format
record.exc_text = self.formatException(record.exc_info)
  File 
"/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/logging/__init__.py",
 line 622, in formatException
traceback.print_exception(ei[0], ei[1], tb, None, sio)
  File 
"/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/traceback.py", 
line 103, in print_exception
for line in TracebackException(
  File 
"/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/traceback.py", 
line 479, in __init__
if (exc_value and exc_value.__cause__ is not None
AttributeError: 'str' object has no attribute '__cause__'
Call stack:
  File "/Users/abaelhe/Library/Python/3.8/bin/jupyter-labextension", line 8, in 

sys.exit(main())
  File 
"/Users/abaelhe/Library/Python/3.8/lib/python/site-packages/jupyter_core/application.py",
 line 270, in launch_instance
return super(JupyterApp, cls).launch_instance(argv=argv, **kwargs)
  File 
"/Users/abaelhe/Library/Python/3.8/lib/python/site-packages/traitlets/config/application.py",
 line 664, in launch_instance
app.start()
  File 
"/Users/abaelhe/Library/Python/3.8/lib/python/site-packages/jupyterlab/labextensions.py",
 line 308, in start
super(LabExtensionApp, self).start()
  File 
"/Users/abaelhe/Library/Python/3.8/lib/python/site-packages/jupyter_core/application.py",
 line 259, in start
self.subapp.start()
  File 
"/Users/abaelhe/Library/Python/3.8/lib/python/site-packages/jupyterlab/labextensions.py",
 line 104, in start
build(clean_staging=self.should_clean,
  File 
"/Users/abaelhe/Library/Python/3.8/lib/python/site-packages/jupyterlab/commands.py",
 line 459, in build
return handler.build(name=name, version=version, static_url=static_url,
  File 
"/Users/abaelhe/Library/Python/3.8/lib/python/site-packages/jupyterlab/commands.py",
 line 640, in build
self._populate_staging(
  File 
"/Users/abaelhe/Library/Python/3.8/lib/python/site-packages/jupyterlab/commands.py",
 line 1100, in _populate_staging
_rmtree(templates, self.logger)
  File 
"/Users/abaelhe/Library/Python/3.8/lib/python/site-packages/jupyterlab/commands.py",
 line 1824, in _rmtree
shutil.rmtree(path, onerror=onerror)
  File 
"/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/shutil.py", 
line 715, in rmtree
_rmtree_safe_fd(fd, path, onerror)
  File 
"/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/shutil.py", 
line 672, in _rmtree_safe_fd
onerror(os.unlink, fullname, sys.exc_info())
  File 

[issue41642] Buildbot: workers detached every minute and "no space left on device" issue

2020-09-02 Thread David Edelsohn


David Edelsohn  added the comment:

I have updated

edelsohn-aix-ppc64
edelsohn-debian-z
edelsohn-fedora-ppc64
edelsohn-fedora-rawhide-z
edelsohn-fedora-z
edelsohn-rhel-z
edelsohn-rhel8-z
edelsohn-sles-z
aixtools-aix-power6

--

___
Python tracker 

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



[issue41692] Deprecate immortal interned strings: PyUnicode_InternImmortal()

2020-09-02 Thread STINNER Victor

New submission from STINNER Victor :

Python has the concept of "immortal" interned strings: 
PyUnicode_InternImmortal().

The feature was first introduced in the Python 2 "str" (bytes) type, bpo-576101 
(commit 45ec02aed14685c353e55841b5acbc0dadee76f8). New 
PyString_InternImmortal() function.

commit 45ec02aed14685c353e55841b5acbc0dadee76f8
Author: Guido van Rossum 
Date:   Mon Aug 19 21:43:18 2002 +

SF patch 576101, by Oren Tirosh: alternative implementation of
interning.  I modified Oren's patch significantly, but the basic idea
and most of the implementation is unchanged.  Interned strings created
with PyString_InternInPlace() are now mortal, and you must keep a
reference to the resulting string around; use the new function
PyString_InternImmortal() to create immortal interned strings.

Later, the feature was added to the PyUnicodeObject type, new 
PyUnicode_InternImmortal() function:

commit 1680713e524016d93a94114c4a874ad71a090b95
Author: Walter Dörwald 
Date:   Fri May 25 13:52:07 2007 +

Add interning of unicode strings by copying the functionality from
stringobject.c.

Intern "True" and "False" in bool_repr() again as it was in the
8bit string era.

Since Python 3.10, (mortal) interned strings are cleared at Python exit in 
Py_Finalize(). It avoids leaking memory when Python is embedded in an 
application: bpo-1635741.

commit 666ecfb0957a2fa0df5e2bd03804195de74bdfbf
Author: Victor Stinner 
Date:   Thu Jul 2 01:19:57 2020 +0200

bpo-1635741: Release Unicode interned strings at exit (GH-21269)

* PyUnicode_InternInPlace() now ensures that interned strings are
  ready.
* Add _PyUnicode_ClearInterned().
* Py_Finalize() now releases Unicode interned strings:
  call _PyUnicode_ClearInterned().

--

PyUnicode_InternImmortal() is not used in the Python standard library. I 
propose to start deprecating the function and remove it in Python 3.12 (PEP 387 
requires a deprecation for 2 releases). In Python 3.10, calling the function 
will emit a DeprecationWarning at runtime.

Note: PyString_InternImmortal() (for bytes strings) has been removed from 
Python 3.0.

--
components: Interpreter Core
messages: 376237
nosy: inada.naoki, serhiy.storchaka, vstinner
priority: normal
severity: normal
status: open
title: Deprecate immortal interned strings: PyUnicode_InternImmortal()
versions: Python 3.10

___
Python tracker 

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



[issue41528] Use math module in turtle

2020-09-02 Thread Marek Madejski


Marek Madejski  added the comment:

Complex numbers to be considered, of course.
My first pull request, so I'd rather not make such a revolution this time. :)

--

___
Python tracker 

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



[issue41642] Buildbot: workers detached every minute and "no space left on device" issue

2020-09-02 Thread STINNER Victor


STINNER Victor  added the comment:

Ah, I also updated:

Fedora Stable ppc64le
Fedora Rawhide ppc64le

--

___
Python tracker 

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



[issue41642] Buildbot: workers detached every minute and "no space left on device" issue

2020-09-02 Thread STINNER Victor


STINNER Victor  added the comment:

Charris, Pablo and me identified that TCP connections are closed by the load 
balancer on some buildbot workers.

When the "buildbot.python.org" host name is used, TCP connections (tcp port 
9020) go through a load balancer.

Ernest exposed the TCP port 9020 directly to the Internet (without the load 
balancer) using a new host name: "buildbot-api.python.org".

Buildbot workers should be updated to use "buildbot-api.python.org". I also 
suggest to use a keepalive of 60 seconds, rather than 600 seconds.

If your worker got impacted the this issue, I strongly advice you to clean up 
manually the temporary directory (/tmp). When a worker was disconnected, the 
build was interrupted without removing temporary files. On some workers, we got 
around 20 GB of temporary files in /tmp: "cc" files and "tmp" files. I 
guess that some files are coming from the compiler, some other from the Python 
test suite.

I updated the buildbot client configuration of the 9 workers operated by Red 
Hat:

Fedora Rawhide x64-86
Fedora Stable x64-86
RHEL8 x64-86
RHEL7 x64-86
RHEL8 FIPS x86-64
Fedora Rawhide AArch64
Fedora Stable AArch64
RHEL 8 ppc64le
RHEL 7 ppc64le

On our owners, I used the following commands:

systemctl stop buildbot-worker.service
du -sh /tmp; rm -f /tmp/{cc,tmp}*; du -sh /tmp
sed -i -e "s/buildmaster_host = 'buildbot.python.org'/buildmaster_host = 
'buildbot-api.python.org'/;s/keepalive = .*/keepalive = 60/" 
/home/buildbot/buildarea/buildbot.tac; grep -E '(host|keepalive) =' 
/home/buildbot/buildarea/buildbot.tac
systemctl start buildbot-worker.service
systemctl status buildbot-worker.service

--

___
Python tracker 

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



[issue41691] Idle 3.8.5 on Win64 won't save a file if it didn't include a newline when it was opened (ex: opening empty file)

2020-09-02 Thread E. Paine


E. Paine  added the comment:

Thank you for reporting this bug (particularly for the detailed instructions 
for reproduction). This has already been fixed in #41373 just over a month ago, 
and is already available in the 3.9 release candidate (though the fix will not 
be released for 3.8 until 3.8.6).

--
nosy: +epaine

___
Python tracker 

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



[issue41686] C++ Embedded 'time.sleep()' is not working on Windows host due to 'Py_InitializeEx(0)'

2020-09-02 Thread Eryk Sun


Eryk Sun  added the comment:

> Maybe in the time module?

The SIGINT event is also needed by PyOS_Readline, _io (builtin), _winapi 
(builtin), and _multiprocessing (pyd). Is the time module guaranteed to be 
imported in 3.x? It appears to get imported incidentally via _PyImportZip_Init 
(zipimport). 

Could sigint_event be relocated to a platform-dependent extension of 
_PyRuntimeState that gets initialized and finalized independent of any module?

--

___
Python tracker 

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



[issue41686] C++ Embedded 'time.sleep()' is not working on Windows host due to 'Py_InitializeEx(0)'

2020-09-02 Thread Eryk Sun


Change by Eryk Sun :


--
Removed message: https://bugs.python.org/msg376231

___
Python tracker 

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



[issue41686] C++ Embedded 'time.sleep()' is not working on Windows host due to 'Py_InitializeEx(0)'

2020-09-02 Thread Eryk Sun


Eryk Sun  added the comment:

> Maybe in the time module?

The SIGINT event is also needed by PyOS_Readline, _io (builtin), _winapi 
(builtin), and _multiprocessing (pyd). Is the time module guaranteed to be 
imported in 3.x? It appears to get imported incidentally via _PyImportZip_Init 
(zipimport). 

Could sigint_event be relocated to a platform-dependent union in 
_PyRuntimeState that gets initialized and finalized independent of any module? 
For example, accessed as _PyRuntime.platform.windows.sigint_event.

--

___
Python tracker 

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



[issue41642] Buildbot: workers detached every minute and "no space left on device" issue

2020-09-02 Thread STINNER Victor


STINNER Victor  added the comment:

> I can provide some information from the logs of one of the buildbots, or 
> change a parameter. Let me know.

David: can you please change the buildbot client configuration to use 
"buildbot-api.python.org" host name? This host name doesn't go through the PSF 
load balancer. It seems like TCP connection issues are coming from the load 
balancer. Also, please reduce the keepalive to 60 seconds (keepalive_interval).

--

___
Python tracker 

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



[issue40352] SocketHandler silently drops log messages on re-connect

2020-09-02 Thread Vinay Sajip


Vinay Sajip  added the comment:

> It is enough to reopen the socket and send the current message again.

A common reason for connection failure in SocketHandler is the other end going 
offline for some reason. The offline period can often be measured in seconds to 
hours, or even longer. The current strategy is to retry connection, but on the 
next logging call, and with an exponential backoff.

Otherwise, if the remote end goes down and you keep retrying to connect on the 
same call, the handler would keep trying to connect and failing, and this could 
slow things down.

--

___
Python tracker 

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



[issue41691] Idle 3.8.5 on Win64 won't save a file if it didn't include a newline when it was opened (ex: opening empty file)

2020-09-02 Thread David Crespo


New submission from David Crespo :

Idle won't save a file if it didn't include a newline when it was opened (ex: 
opening empty file)

Steps for reproducing the error:
1) get into some folder in Windows File Explorer
2) right-click on empty space for context menu
3) click new -> create text file
4) rename to test.py
5) right click on test.py for context menu
6) click Edit with Idle -> Edit with Idle 3.8 64-bit
7) write some code, ex: print('hello, world!)
8) try to save the file with CTRL+S, or menu file->save, file->save as or 
file->save a copy

IDLE will silently refuse to save the file, the 'not saved' asterisk will 
remain next to the file name and no file is written.

I am using a workaround for this since creating empty files and editing them is 
part of my usual workflow.

If I edit the file with another text editor, save it, and then open it from the 
context menu, it can be saved after editing, but ONLY if i put a newline in the 
file from the alternate text editor. If my the file does NOT contain any 
newline at opening time, IDLE refuses to save it.

This error (refusing to save) seems to happen also when opening from menu 
file->open any file which does NOT contain any newline.

Regards.

--
assignee: terry.reedy
components: IDLE
messages: 376228
nosy: dcrespo3d, terry.reedy
priority: normal
severity: normal
status: open
title: Idle 3.8.5 on Win64 won't save a file if it didn't include a newline 
when it was opened (ex: opening empty file)
type: behavior
versions: Python 3.8

___
Python tracker 

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



[issue41685] make doctest on 3.10 (master branch) fails with setuptools 50.0.0

2020-09-02 Thread STINNER Victor


STINNER Victor  added the comment:

As far as I know, the issue is fixed, so I close the issue.

Thanks Ned for the temporary fix to repair the workflow!

--
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



[issue41685] make doctest on 3.10 (master branch) fails with setuptools 50.0.0

2020-09-02 Thread STINNER Victor


STINNER Victor  added the comment:


New changeset 51fece1bb8d7aa22f114172a256714fe24788e31 by Victor Stinner in 
branch 'master':
bpo-41685: Don't pin setuptools version anymore in Doc/Makefile (GH-22062)
https://github.com/python/cpython/commit/51fece1bb8d7aa22f114172a256714fe24788e31


--

___
Python tracker 

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



[issue38762] Logging displays wrong "processName" if "sys.modules" is cleared in child process

2020-09-02 Thread Irit Katriel


Change by Irit Katriel :


--
keywords: +patch
nosy: +iritkatriel
nosy_count: 2.0 -> 3.0
pull_requests: +21154
stage:  -> patch review
pull_request: https://github.com/python/cpython/pull/22063

___
Python tracker 

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



[issue41690] Use a loop to collect args in the parser instead of recursion

2020-09-02 Thread Pablo Galindo Salgado


Change by Pablo Galindo Salgado :


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

___
Python tracker 

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



[issue41690] Use a loop to collect args in the parser instead of recursion

2020-09-02 Thread Pablo Galindo Salgado


New submission from Pablo Galindo Salgado :

This program can segfault the parser by stackoverflow:

import ast

code = "f(" + ",".join(['a' for _ in range(10)]) + ")"
print("Ready!")
ast.parse(code)

the reason is that the rule for arguments has a simple recursion when 
collecting args:

args[expr_ty]:
[...]
| a=named_expression b=[',' c=args { c }] {
[...] }

Check https://github.com/we-like-parsers/pegen/issues/245 for more context and 
informaton

--
messages: 376225
nosy: pablogsal
priority: normal
severity: normal
status: open
title: Use a loop to collect args in the parser instead of recursion
versions: Python 3.10, Python 3.9

___
Python tracker 

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



[issue41685] make doctest on 3.10 (master branch) fails with setuptools 50.0.0

2020-09-02 Thread STINNER Victor


STINNER Victor  added the comment:

I proposed PR 22062 to unpin the setuptools version.

Unless someone steps in and proposes a solution to automate updating the pinned 
setuptools version, I prefer to not pin the version.

--

___
Python tracker 

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



[issue41685] make doctest on 3.10 (master branch) fails with setuptools 50.0.0

2020-09-02 Thread STINNER Victor


Change by STINNER Victor :


--
pull_requests: +21152
stage: needs patch -> patch review
pull_request: https://github.com/python/cpython/pull/22062

___
Python tracker 

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



[issue40204] Docs build error with Sphinx 3.0 due to invalid C declaration

2020-09-02 Thread STINNER Victor


STINNER Victor  added the comment:


New changeset c0d5c131d9c1ac743058fae99f913b455fc90ac7 by Victor Stinner in 
branch 'master':
bpo-40204: Update Sphinx to version 3.2.1 in Doc/Makefile (GH-22043)
https://github.com/python/cpython/commit/c0d5c131d9c1ac743058fae99f913b455fc90ac7


--

___
Python tracker 

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



[issue37873] unittest: execute tests in parallel

2020-09-02 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



[issue41654] Segfault when raising MemoryError

2020-09-02 Thread STINNER Victor


STINNER Victor  added the comment:

Thanks for the fix Pablo! Thanks for the funny bug report Oleg Hoefling! I 
didn't expect that anyone would ever subclass MemoryError.

--

___
Python tracker 

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



[issue1635741] Py_Finalize() doesn't clear all Python objects at exit

2020-09-02 Thread STINNER Victor


STINNER Victor  added the comment:


New changeset 93d50a6a8d0c5d332c11aef267e66573a09765ac by Mohamed Koubaa in 
branch 'master':
bpo-1635741: Port _sha3 module to multi-phase init (GH-21855)
https://github.com/python/cpython/commit/93d50a6a8d0c5d332c11aef267e66573a09765ac


--

___
Python tracker 

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



[issue41686] C++ Embedded 'time.sleep()' is not working on Windows host due to 'Py_InitializeEx(0)'

2020-09-02 Thread STINNER Victor


STINNER Victor  added the comment:

By the way, it would be nice to add error handling on:

sigint_event = CreateEvent(NULL, TRUE, FALSE, FALSE);


See also PR #22049.

--

___
Python tracker 

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



[issue41686] C++ Embedded 'time.sleep()' is not working on Windows host due to 'Py_InitializeEx(0)'

2020-09-02 Thread STINNER Victor


STINNER Victor  added the comment:

Py_InitializeEx() should be modified to always initialize sigint_event, even if 
install_sigs is equal to zero.

Maybe the variable should be moved somewhere else. Maybe in the time module?

--

___
Python tracker 

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



[issue1635741] Py_Finalize() doesn't clear all Python objects at exit

2020-09-02 Thread STINNER Victor


STINNER Victor  added the comment:


New changeset a7f026870d2dab7015a94e287bec6dd46cdbf604 by Mohamed Koubaa in 
branch 'master':
bpo-1635741: Port _blake2 module to multi-phase init (GH-21856)
https://github.com/python/cpython/commit/a7f026870d2dab7015a94e287bec6dd46cdbf604


--

___
Python tracker 

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



[issue40352] SocketHandler silently drops log messages on re-connect

2020-09-02 Thread Serhiy Storchaka


Change by Serhiy Storchaka :


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

___
Python tracker 

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



[issue40352] SocketHandler silently drops log messages on re-connect

2020-09-02 Thread Serhiy Storchaka


Serhiy Storchaka  added the comment:

In this particular case we do not need a buffer. It is enough to reopen the 
socket and send the current message again.

--

___
Python tracker 

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



[issue41681] f-string error description seems wrong

2020-09-02 Thread Hanish


Change by Hanish :


--
pull_requests: +21150
pull_request: https://github.com/python/cpython/pull/22059

___
Python tracker 

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