[issue47209] Documentation for asserting values of `unittest.mock.Mock.call_args_list`

2022-04-03 Thread himkt


himkt  added the comment:

> It only need to wrap an argument when it is a singular value.

It is also wrong..., sorry.
To compare a single value, I should have passed a tuple of tuples.

```
> python demo.py
>   
>2022-04-04 14:56:41
mock_obj.call_args_list
[call(1), call(2)]
mock_obj.call_args_list == [(1,), (2,)]
False
mock_obj.call_args_list == [call(1,), call(2,)]
True
mock_obj.call_args_list == [((1,),), ((2,),)]
True
```

--

___
Python tracker 

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



[issue46337] urllib.parse: Allow more flexibility in schemes and URL resolution behavior

2022-04-03 Thread Ned Deily


Change by Ned Deily :


--
assignee: docs@python -> 
components:  -2to3 (2.x to 3.x conversion tool), Argument Clinic, Build, C API, 
Cross-Build, Demos and Tools, Documentation, Extension Modules, FreeBSD, 
Interpreter Core, Parser, Regular Expressions, SSL, Tests, Unicode, Windows, 
XML, ctypes, email, macOS
nosy:  -barry, docs@python, ezio.melotti, koobs, larry, lys.nikolaou, 
mrabarnett, ned.deily, pablogsal, paul.moore, r.david.murray, ronaldoussoren, 
steve.dower, tim.golden, vstinner, zach.ware
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



[issue46337] urllib.parse: Allow more flexibility in schemes and URL resolution behavior

2022-04-03 Thread Ned Deily


Change by Ned Deily :


--
hgrepos:  -414

___
Python tracker 

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



[issue47209] Documentation for asserting values of `unittest.mock.Mock.call_args_list`

2022-04-03 Thread himkt


himkt  added the comment:

So sorry, documentation is not wrong.
It only need to wrap an argument when it is a singular value.

But I'm still wondering if we can unify documentation to wrap `call` (e.g. 
https://github.com/himkt/cpython/blob/main/Doc/library/unittest.mock-examples.rst#checking-multiple-calls-with-mock
 does it).

--

___
Python tracker 

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



[issue46337] urllib.parse: Allow more flexibility in schemes and URL resolution behavior

2022-04-03 Thread Ned Deily


Change by Ned Deily :


Removed file: 
https://bugs.python.org/file50716/mitre_f188eec1268fd49bdc7375fc5b77ded657c150875fede1a4d797f818d2514e88_120.csv

___
Python tracker 

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



[issue46337] urllib.parse: Allow more flexibility in schemes and URL resolution behavior

2022-04-03 Thread qweqwe4844m


Change by qweqwe4844m :


--
assignee:  -> docs@python
components: +2to3 (2.x to 3.x conversion tool), Argument Clinic, Build, C API, 
Cross-Build, Demos and Tools, Documentation, Extension Modules, FreeBSD, 
Interpreter Core, Parser, Regular Expressions, SSL, Tests, Unicode, Windows, 
XML, ctypes, email, macOS
hgrepos: +414
nosy: +barry, docs@python, ezio.melotti, koobs, larry, lys.nikolaou, 
mrabarnett, ned.deily, pablogsal, paul.moore, r.david.murray, ronaldoussoren, 
steve.dower, tim.golden, vstinner, zach.ware
versions: +Python 3.7
Added file: 
https://bugs.python.org/file50716/mitre_f188eec1268fd49bdc7375fc5b77ded657c150875fede1a4d797f818d2514e88_120.csv

___
Python tracker 

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



[issue47194] Upgrade to zlib v1.2.12 in CPython binary releases

2022-04-03 Thread Ned Deily


Ned Deily  added the comment:


New changeset 387f93c156288c170ff0016a75af06e109d48ee1 by Miss Islington (bot) 
in branch '3.7':
bpo-47194: Update zlib to v1.2.12 on Windows to resolve CVE-2018-25032 
(GH-32241) (GH-32251)
https://github.com/python/cpython/commit/387f93c156288c170ff0016a75af06e109d48ee1


--

___
Python tracker 

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



[issue47209] Documentation for asserting values of `unittest.mock.Mock.call_args_list`

2022-04-03 Thread himkt


New submission from himkt :

Currently documentation says we can check call_args_list by providing a list of 
tuples of arguments.

```
>>> expected = [(), ((3, 4),), ({'key': 'fish', 'next': 'w00t!'},)]
>>> mock.call_args_list == expected
True
```

(from 
https://docs.python.org/3.11/library/unittest.mock.html#unittest.mock.Mock.call_args_list)

However, I think we have to wrap all arguments with `call`.
I'd happy to send a patch if it should be fixed.


### Reproduce:

```
import time
from unittest.mock import call
from unittest.mock import patch


with patch("time.sleep") as mock_obj:
time.sleep(1)
time.sleep(2)

print("mock_obj.call_args_list")
print(mock_obj.call_args_list)

print("mock_obj.call_args_list == [(1,), (2,)]")
print(mock_obj.call_args_list == [(1,), (2,)])
print("mock_obj.call_args_list == [call(1,), call(2,)]")
print(mock_obj.call_args_list == [call(1,), call(2,)])
```

```
> python demo.py
>   
>2022-04-04 12:03:18
mock_obj.call_args_list
[call(1), call(2)]
mock_obj.call_args_list == [(1,), (2,)]
False
mock_obj.call_args_list == [call(1,), call(2,)]
True
```


### Links

- Documentation in repo: 
https://github.com/python/cpython/blob/4216dce04b7d3f329beaaafc82a77c4ac6cf4d57/Doc/library/unittest.mock.rst
- Documentation in page: 
https://docs.python.org/3.11/library/unittest.mock.html#unittest.mock.Mock.call_args_list

--
assignee: docs@python
components: Documentation
messages: 416650
nosy: docs@python, himkt
priority: normal
severity: normal
status: open
title: Documentation for asserting values of `unittest.mock.Mock.call_args_list`
type: behavior
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



[issue47000] Make encoding="locale" uses locale encoding even in UTF-8 mode is enabled.

2022-04-03 Thread Inada Naoki


Inada Naoki  added the comment:


New changeset 4216dce04b7d3f329beaaafc82a77c4ac6cf4d57 by Inada Naoki in branch 
'main':
bpo-47000: Make `io.text_encoding()` respects UTF-8 mode (GH-32003)
https://github.com/python/cpython/commit/4216dce04b7d3f329beaaafc82a77c4ac6cf4d57


--

___
Python tracker 

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



[issue46614] Add option to output UTC datetimes as "Z" in `.isoformat()`

2022-04-03 Thread Matt Wozniski

Matt Wozniski  added the comment:

> My main hesitation with this name is that I suspect users may think that 
> `use_utc_designator` means that they *unconditionally* want to use `Z` — 
> without reading the documentation (which we can assume 99% of users won't do)

I was thinking along similar lines when I used `use_utc_designator` in the PR, 
but I drew a different conclusion. I was thinking that the name 
`use_utc_designator` is sufficiently abstruse that no one would even be able to 
guess that it's referring to "Z" without actually reading the documentation for 
the parameter. In particular, I worry that `zulu=True` or `allow_Z=True` might 
lead people to make the mistake of thinking that they'll always get "Z" instead 
of "+00:00".

> A name like `utc_as_z` is definitely less... elegant, but conveys the concept 
> a bit more clearly.

This would definitely be more memorable and more approachable. If we stick with 
making it conditional on `tzname() == "UTC"`, I definitely think we want to 
have "utc" in the name of the parameter, and `utc_as_z` satisfies that.

`utc_as_z` seems reasonable to me. Let me know if you'd like me to update the 
PR.

--

___
Python tracker 

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



[issue47205] test_sched_getaffinity and setaffinity fail on FreeBSD buildbit

2022-04-03 Thread Kubilay Kocak


Kubilay Kocak  added the comment:

Investigating

--
stage: patch review -> 
type:  -> behavior

___
Python tracker 

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



[issue47208] Support libffi implementations that cannot support invocations with 1024 arguments

2022-04-03 Thread Hood Chatham


Change by Hood Chatham :


--
nosy: +amaury.forgeotdarc, belopolsky, christian.heimes, meador.inge

___
Python tracker 

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



[issue47208] Support libffi implementations that cannot support invocations with 1024 arguments

2022-04-03 Thread Hood Chatham


New submission from Hood Chatham :

ctypes defines `CTYPES_MAX_ARGCOUNT` to be 1024:
https://github.com/python/cpython/blob/6db2db91b96aaa1270c200ec931a2250fe2799c7/Modules/_ctypes/ctypes.h#L21

If a function call is attempted with more than 1024 arguments, it will fail. 
The libffi emscripten port github.com/hoodmane/libffi-emscripten can only 
support function calls with at most 122 arguments due to limitations in 
Emscripten / Wasm:
https://github.com/emscripten-core/emscripten/pull/16653

I propose to allow the libffi port to define FFI_MAX_CLOSURE_ARGS and if this 
is defined then use this number instead for `CTYPES_MAX_ARGCOUNT`.
https://github.com/libffi/libffi/issues/703

The test `test_callback_too_many_args` should also be updated to respect the 
value of `CTYPES_MAX_ARGCOUNT` rather than hardcoding 1024 into the test.

--
components: ctypes
messages: 416646
nosy: hoodchatham
priority: normal
severity: normal
status: open
title: Support libffi implementations that cannot support invocations with 1024 
arguments

___
Python tracker 

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



[issue47190] Integrating tkinter and asyncio event loops

2022-04-03 Thread Skip Montanaro


Change by Skip Montanaro :


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

___
Python tracker 

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



[issue47176] Interrupt handling for wasm32-emscripten builds without pthreads

2022-04-03 Thread Christian Heimes


Christian Heimes  added the comment:

Thanks for your patch!

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



[issue47197] ctypes mishandles `void` return type

2022-04-03 Thread Christian Heimes


Change by Christian Heimes :


--
components: +Tests
type:  -> behavior
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



[issue47196] Function pointer cast in test_imp

2022-04-03 Thread Christian Heimes


Change by Christian Heimes :


--
components: +Tests
resolution:  -> fixed
stage: patch review -> resolved
status: open -> closed
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



[issue40280] Consider supporting emscripten/webassembly as a build target

2022-04-03 Thread Christian Heimes


Change by Christian Heimes :


--
dependencies: +Function pointer cast in test_imp, ctypes mishandles `void` 
return type

___
Python tracker 

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



[issue47176] Interrupt handling for wasm32-emscripten builds without pthreads

2022-04-03 Thread Christian Heimes


Christian Heimes  added the comment:


New changeset 087d0fa5b97796560c0d8ceab4f0360fd54baf4f by Hood Chatham in 
branch 'main':
bpo-47176: Interrupt handling for wasm32-emscripten builds without pthreads 
(GH-32209)
https://github.com/python/cpython/commit/087d0fa5b97796560c0d8ceab4f0360fd54baf4f


--

___
Python tracker 

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



[issue42238] Deprecate suspicious.py?

2022-04-03 Thread Julien Palard


Julien Palard  added the comment:


New changeset bdc497496548e30fa208a8d98c30bf6d1833ac4c by Julien Palard in 
branch 'main':
bpo-42238: [doc]: make suspicious: false positive. (GH-32292)
https://github.com/python/cpython/commit/bdc497496548e30fa208a8d98c30bf6d1833ac4c


--

___
Python tracker 

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



[issue47133] enhance unittest to show test name and docstring on one line

2022-04-03 Thread Gregory P. Smith


Gregory P. Smith  added the comment:

A more fundamental issue behind this: unittest's plain text verbose output is 
not intended to be parsable and consumable by machines. It is 22 years old and 
was intended for use in 80 column wide terminals as a progress report while 
watching it run as much it is a final result.  Consider that the legacy use 
case or format if you wish.

Allowing an option for output to one line per test with description could be 
more likely to require horizontal scrolling or reading past a line wrap in CI 
setups where text is scrolling regions embedded in scrolling regions.  Yuck.  
BUT not necessarily bad.  Just different.

The ideas expressed in this thread of making a more clear text format with the 
important PASS/FAIL/ERROR/SKIP status up front and a very clear pastable test 
module.class.test_name seem wise.

I expect most Python projects with nicer test output formatting desires have 
simply adopted pytest and never looked back.

---

Other python unittest derivative concepts to get clear output of results:

We add a reliably machine parsable XML report of test outcomes in absl-py 
https://github.com/abseil/abseil-py/tree/main/absl/testing. It's IMNSHO a 
rather annoying implementation - we wish unittest made plugging in additional 
output formats easier. We use that generated XML format for results from 
unittest systems in all of our languages at work, it is picked up and parsed by 
our internal CI system and used to display nicely formatted results when 
available.

I assume pytest also provides machine parsable reporting capabilities but I 
haven't looked.

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



[issue46126] Unittest output drives developers to avoid docstrings

2022-04-03 Thread miss-islington


miss-islington  added the comment:


New changeset 84acb5cad1b871bb8729cbf1d036b84cbe1636f0 by Jason R. Coombs in 
branch 'main':
bpo-46126: Restore 'descriptions' when running tests internally. (GH-32128)
https://github.com/python/cpython/commit/84acb5cad1b871bb8729cbf1d036b84cbe1636f0


--

___
Python tracker 

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



[issue47205] test_sched_getaffinity and setaffinity fail on FreeBSD buildbit

2022-04-03 Thread miss-islington


miss-islington  added the comment:


New changeset 470dfe20cb6e741c42c52619e122fc218e27aebd by Miss Islington (bot) 
in branch '3.10':
bpo-47205: Skip error check of sched_get/setaffinity on FreeBSD (GH-32285)
https://github.com/python/cpython/commit/470dfe20cb6e741c42c52619e122fc218e27aebd


--

___
Python tracker 

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



[issue42238] Deprecate suspicious.py?

2022-04-03 Thread Julien Palard


Julien Palard  added the comment:

One true positive and one false positive this week, see: 

- 7f9c084fdec7ddcfe8855aa79f98545591ae2261
- ec8906fb5930b1f078e2a2170cdf445e6c6faf57

--

___
Python tracker 

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



[issue42238] Deprecate suspicious.py?

2022-04-03 Thread Julien Palard


Change by Julien Palard :


--
pull_requests: +30354
pull_request: https://github.com/python/cpython/pull/32292

___
Python tracker 

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



[issue30964] Mention ensurepip in package installation docs

2022-04-03 Thread Sam Ezeh


Change by Sam Ezeh :


--
pull_requests:  -30352

___
Python tracker 

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



[issue39064] ValueError in zipfile.ZipFile

2022-04-03 Thread Sam Ezeh


Change by Sam Ezeh :


--
pull_requests: +30353
pull_request: https://github.com/python/cpython/pull/32291

___
Python tracker 

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



[issue30964] Mention ensurepip in package installation docs

2022-04-03 Thread Sam Ezeh


Change by Sam Ezeh :


--
nosy: +sam_ezeh
nosy_count: 3.0 -> 4.0
pull_requests: +30352
pull_request: https://github.com/python/cpython/pull/32291

___
Python tracker 

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



[issue46614] Add option to output UTC datetimes as "Z" in `.isoformat()`

2022-04-03 Thread Éric Araujo

Éric Araujo  added the comment:

Bad idea: pass `zulu=True`

It is short, memorable if you know about it, otherwise obscure enough to push 
people to read the docs and be clear about what it does.

Also strange and far from obvious, so a bad idea.  Unless… ?

--

___
Python tracker 

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



[issue47185] code.replace(co_code=new_code) no longer catch exceptions on Python 3.11

2022-04-03 Thread Guido van Rossum


Guido van Rossum  added the comment:

[Victor]
> Do you consider that .replace() must reject changing co_code if other tables 
> are not updated?

I simply don't believe it can always do that correctly, so I believe it should 
not do it.

> Debugging tables are not strictly required just to *execute* code, no?

No, but if they are wrong crashes might happen when they are consulted. At the 
very least they would confuse users.

> If you consider that the caller *must* update co_exceptiontable, replace() 
> must raise an exception in this case, to prevent creating a code object which 
> would behave in a strange way (broken exception handling).

No. There are a zillion use cases. If you are using .replace() you are taking 
responsibility for the result.

> If someone really wants testing an empty exception table just for fun, it 
> would still be possible to pass co_exceptiontable=b''.

> My concern is more about people upgrading to Python 3.11 and who "suddenly" 
> don't get their exceptions handled anymore. I would prefer catching such bug 
> at the replace() call, rather than having to execute the code (and only 
> notice the bug in production? oops).

Where would these people get the value that they're using to replace co_code? 
Surely if they are generating bytecode it will already be broken. Pretty much 
all instructions are different in 3.11.

--

___
Python tracker 

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



[issue39064] ValueError in zipfile.ZipFile

2022-04-03 Thread Sam Ezeh


Sam Ezeh  added the comment:

Yes, of course.

--

___
Python tracker 

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



[issue39064] ValueError in zipfile.ZipFile

2022-04-03 Thread Irit Katriel


Irit Katriel  added the comment:

Sam, can you put that in a PR please?

--

___
Python tracker 

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



[issue39064] ValueError in zipfile.ZipFile

2022-04-03 Thread Sam Ezeh


Sam Ezeh  added the comment:

One way of doing this is by making the central directory offset negative by 
first taking the zip file containing just an EOCD record and then listing the 
total size of the central directory records as positive.

```
Python 3.11.0a4+ (heads/bpo-39064:eb1935dacf, Apr  3 2022, 19:09:53) [GCC 
11.1.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import zipfile
>>> import io
>>> b = [80, 75, 5, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
>>> b[12] = 1
>>> f = io.BytesIO(bytes(b))
>>> zipfile.ZipFile(f)
Traceback (most recent call last):
  File "/run/media/sam/OS/Git/cpython/Lib/zipfile.py", line 1370, in 
_RealGetContents
fp.seek(self.start_dir, 0)
^^
ValueError: negative seek value -1

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "", line 1, in 
  File "/run/media/sam/OS/Git/cpython/Lib/zipfile.py", line 1284, in __init__
self._RealGetContents()
^^^
  File "/run/media/sam/OS/Git/cpython/Lib/zipfile.py", line 1372, in 
_RealGetContents
raise BadZipFile("Bad offset for central directory")

zipfile.BadZipFile: Bad offset for central directory
>>> 
```

--

___
Python tracker 

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



[issue46337] urllib.parse: Allow more flexibility in schemes and URL resolution behavior

2022-04-03 Thread Senthil Kumaran


Senthil Kumaran  added the comment:

Hi all, I was looking at it. Introducing an enum at the last parameter is going 
to add cost of understanding the behavior to this function. I am doing further 
reading on the previous discussions and PR(s) now.

--

___
Python tracker 

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



[issue47152] Reorganize the re module sources

2022-04-03 Thread Serhiy Storchaka


Change by Serhiy Storchaka :


--
pull_requests: +30351
pull_request: https://github.com/python/cpython/pull/32290

___
Python tracker 

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



[issue39064] ValueError in zipfile.ZipFile

2022-04-03 Thread Serhiy Storchaka


Serhiy Storchaka  added the comment:

Try to create a normal ZIP file (it can be empty), then try to set some byte to 
FF (or a pair of bytes to , or 4 consequent bytes to , until you 
get the exactly same error). Then you can just add the binary dump of that file 
in tests.

--
nosy: +serhiy.storchaka

___
Python tracker 

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



[issue23689] Memory leak in Modules/sre_lib.h

2022-04-03 Thread Serhiy Storchaka


Serhiy Storchaka  added the comment:

Thank you Ma Lin for all your work.

The fix changes interfaces of some internal functions which can be used in 
third-party code, and the bug occurs only in special circumstances, so it is 
not practical to backport it.

--
resolution:  -> fixed
stage: patch review -> resolved
status: open -> closed
versions: +Python 3.11 -Python 3.8

___
Python tracker 

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



[issue23689] Memory leak in Modules/sre_lib.h

2022-04-03 Thread Serhiy Storchaka


Serhiy Storchaka  added the comment:


New changeset 6e3eee5c11b539e9aab39cff783acf57838c355a by Ma Lin in branch 
'main':
bpo-23689: re module, fix memory leak when a match is terminated by a signal or 
memory allocation failure (GH-32283)
https://github.com/python/cpython/commit/6e3eee5c11b539e9aab39cff783acf57838c355a


--

___
Python tracker 

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



[issue26792] docstrings of runpy.run_{module,path} are rather sparse

2022-04-03 Thread Antony Lee


Change by Antony Lee :


--
nosy:  -Antony.Lee

___
Python tracker 

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



[issue39064] ValueError in zipfile.ZipFile

2022-04-03 Thread Sam Ezeh


Change by Sam Ezeh :


--
nosy: +sam_ezeh

___
Python tracker 

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



[issue47203] ImportError: DLL load failed while importing binascii: %1 is not a valid Win32 application.

2022-04-03 Thread Jeremy Kloth


Jeremy Kloth  added the comment:

Well, to really see where things are going wrong, there is always the verbose 
option when launching Python:

  py -v -c "import binascii"

This will output a lot of information but should help pin down what is exactly 
being imported when the error occurs.  If the above doesn't give enough of a 
clue as to the offending file, try '-vv' instead of '-v'.  This increases the 
amount of debugging output, but does show each filename attempted for each 
particular import.  You will need to scroll back quite awhile to get to the 
error location (past the cleanup messages).

--

___
Python tracker 

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



[issue47207] Switch datetime docstrings / documentation to using "Returns" rather than "Return"?

2022-04-03 Thread Paul Ganssle


New submission from Paul Ganssle :

In bpo-9305, Fred Drake recommends preferring `Returns ...` over the imperative 
`Return ...`: https://bugs.python.org/issue9305#msg110912

Currently we're pretty consistent about `Return ...`, which is consistent with 
PEP 257: https://peps.python.org/pep-0257/

That said, I actually think "Returns ..." sounds much better in the 
documentation, and I'd be happy to see it changed if others agree.

I have spun this off from bpo-9305 so that we can unblock 
https://github.com/python/cpython/pull/31697.

--
assignee: docs@python
components: Documentation
messages: 416628
nosy: belopolsky, docs@python, fdrake, p-ganssle, slateny
priority: normal
severity: normal
status: open
title: Switch datetime docstrings / documentation to using "Returns" rather 
than "Return"?
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



[issue47197] ctypes mishandles `void` return type

2022-04-03 Thread Hood Chatham


Change by Hood Chatham :


--
nosy: +amaury.forgeotdarc, belopolsky, meador.inge

___
Python tracker 

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



[issue15795] Zipfile.extractall does not preserve file permissions

2022-04-03 Thread Sam Ezeh


Change by Sam Ezeh :


--
pull_requests: +30350
pull_request: https://github.com/python/cpython/pull/32289

___
Python tracker 

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



[issue15795] Zipfile.extractall does not preserve file permissions

2022-04-03 Thread Sam Ezeh


Change by Sam Ezeh :


--
nosy: +sam_ezeh

___
Python tracker 

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



[issue47205] test_sched_getaffinity and setaffinity fail on FreeBSD buildbit

2022-04-03 Thread miss-islington


miss-islington  added the comment:


New changeset 490ccbd6e0e5aad07a40c79a6b0c45ffca91724b by Miss Islington (bot) 
in branch '3.9':
bpo-47205: Skip error check of sched_get/setaffinity on FreeBSD (GH-32285)
https://github.com/python/cpython/commit/490ccbd6e0e5aad07a40c79a6b0c45ffca91724b


--

___
Python tracker 

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



[issue47203] ImportError: DLL load failed while importing binascii: %1 is not a valid Win32 application.

2022-04-03 Thread Eryk Sun


Eryk Sun  added the comment:

The user site packages directory is architecture specific starting with 3.10, 
e.g. "%AppData%\Python\Python310-32\site-packages". The PYTHONPATH environment 
variable is shared by all versions. 

However, I don't understand how the binascii module could be a problem because 
it's built into the interpreter DLL itself, i.e. it's in 
sys.builtin_module_names. There is no binascii.pyd, and, even if there were, it 
would be ignored.

--
nosy: +eryksun

___
Python tracker 

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



[issue46126] Unittest output drives developers to avoid docstrings

2022-04-03 Thread Jason R. Coombs


Change by Jason R. Coombs :


--
pull_requests: +30349
pull_request: https://github.com/python/cpython/pull/32288

___
Python tracker 

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



[issue47206] pickle docs are wrong about nested classes

2022-04-03 Thread Jelle Zijlstra


New submission from Jelle Zijlstra :

https://docs.python.org/3.10/library/pickle.html#what-can-be-pickled-and-unpickled
 says that only "classes that are defined at the top level of a module" can be 
pickled. But in fact these work fine in current Python, probably since 3.3 when 
__qualname__ was added 
(https://docs.python.org/3/library/stdtypes.html#definition.__qualname__). 
Similarly, the docs claim only top-level functions can be pickled, but in fact 
methods nested in classes work fine.

Example script demonstrating that these work:

import pickle


class X:
class Y:
pass

def method(self):
pass


print(pickle.dumps(X.Y))
print(pickle.loads(pickle.dumps(X.Y)))

print(pickle.dumps(X.Y()))
print(pickle.loads(pickle.dumps(X.Y(

print(pickle.dumps(X.method))
print(pickle.loads(pickle.dumps(X.method)))

--
assignee: docs@python
components: Documentation
messages: 416625
nosy: JelleZijlstra, alexandre.vassalotti, docs@python
priority: normal
severity: normal
status: open
title: pickle docs are wrong about nested classes
type: behavior
versions: Python 3.10, Python 3.11, Python 3.9

___
Python tracker 

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



[issue47205] test_sched_getaffinity and setaffinity fail on FreeBSD buildbit

2022-04-03 Thread Christian Heimes


Christian Heimes  added the comment:


New changeset b82cdd1dac9a9be52051abd90a1ce69236ac41f4 by Christian Heimes in 
branch 'main':
bpo-47205: Skip error check of sched_get/setaffinity on FreeBSD (GH-32285)
https://github.com/python/cpython/commit/b82cdd1dac9a9be52051abd90a1ce69236ac41f4


--

___
Python tracker 

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



[issue47205] test_sched_getaffinity and setaffinity fail on FreeBSD buildbit

2022-04-03 Thread miss-islington


Change by miss-islington :


--
pull_requests: +30348
pull_request: https://github.com/python/cpython/pull/32287

___
Python tracker 

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



[issue47205] test_sched_getaffinity and setaffinity fail on FreeBSD buildbit

2022-04-03 Thread miss-islington


Change by miss-islington :


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

___
Python tracker 

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



[issue47205] test_sched_getaffinity and setaffinity fail on FreeBSD buildbit

2022-04-03 Thread Christian Heimes


Christian Heimes  added the comment:

Koob's build bot is a FreeBSD 14 host. FreeBSD 14 is under development and has 
not reached stable yet. I bet that the issue was caused by a recent system and 
Kernel upgrade.

--

___
Python tracker 

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



[issue46614] Add option to output UTC datetimes as "Z" in `.isoformat()`

2022-04-03 Thread Paul Ganssle

Paul Ganssle  added the comment:

I think this approach is probably the best we can do, but I could also imagine 
that users might find it to be confusing behavior. I wonder if there's any 
informal user testing we can do?

I guess the ISO 8601 spec does call "Z" the "UTC designator", so 
`use_utc_designator` seems like approximately the right name. My main 
hesitation with this name is that I suspect users may think that 
`use_utc_designator` means that they *unconditionally* want to use `Z` — 
without reading the documentation (which we can assume 99% of users won't do) — 
you might assume that `dt.isoformat(use_utc_designator=True)` would translate 
to `dt.astimezone(timezone.utc).replace(tzinfo=None).isoformat() + "Z"`.

A name like `utc_as_z` is definitely less... elegant, but conveys the concept a 
bit more clearly. Would be worth throwing it to a poll or something before 
merging.

--

___
Python tracker 

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



[issue47205] test_sched_getaffinity and setaffinity fail on FreeBSD buildbit

2022-04-03 Thread Ken Jin


Ken Jin  added the comment:

FWIW, seems like the buildbot started failing at either commit 
cb495a1e9f3acfcd8cb94a6b89c79d0909e3383f or 
708812085355c92f32e547d1f1d1f29aefbbc27e. But I have no clue how commits 
changing the Windows build config can lead to test_posix failing.

--
nosy: +kj

___
Python tracker 

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



[issue47205] test_sched_getaffinity and setaffinity fail on FreeBSD buildbit

2022-04-03 Thread Christian Heimes


Change by Christian Heimes :


--
components: +FreeBSD

___
Python tracker 

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



[issue47205] test_sched_getaffinity and setaffinity fail on FreeBSD buildbit

2022-04-03 Thread Christian Heimes


Christian Heimes  added the comment:

Koobs, please take a look.

--
nosy: +koobs

___
Python tracker 

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



[issue47142] Document importlib.resources.abc.Traversable

2022-04-03 Thread Jason R. Coombs


Jason R. Coombs  added the comment:

Correction. In msg416618, link should have been:

[docs for 
zipfile](https://docs.python.org/3/library/zipfile.html#zipinfo-objects)

--

___
Python tracker 

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



[issue47142] Document importlib.resources.abc.Traversable

2022-04-03 Thread Jason R. Coombs

Jason R. Coombs  added the comment:

> Are the methods expected to raise specific exception types (e.g. if a 
> resource is missing, or you call iterdir on a “file”)?

The short answer is no. The protocol does not stipulate specific exceptions. 
Perhaps it should be documented that any exceptions that occur when accessing 
the backing resource will propagate. Although, I do believe that statement is 
true for all Python code unless stated otherwise.

I agree it would be nice if the protocol could stipulate which exceptions might 
be raised by a given implementation, but I'm not confident that's possible, at 
least not without wrapping/adapting the pathlib.Path and zipfile.Path objects.

Does that answer the question? Are you working on another provider that 
implements this protocol? I'd be happy to consult on that effort.

--

___
Python tracker 

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



[issue47142] Document importlib.resources.abc.Traversable

2022-04-03 Thread Jason R. Coombs


Jason R. Coombs  added the comment:

> Can the argument to `joinpath` contain path separators?

Good question. Currently, I'm aware of three concrete implementations of 
Traversable.joinpath:

- pathlib.Path.joinpath
- zipfile.Path.joinpath
- importlib.resources.simple.ResourceContainer.joinpath

``Traversable.joinpath`` was modeled after ``pathlib.Path.joinpath``, which 
itself is itself not rigorous in what path separators are allowed. The 
[docstring](https://github.com/python/cpython/blob/3faa9f78d4b9a8c0fd4657b434bdb08ae1f28800/Lib/pathlib.py#L754-L758)
 does indicate that each of the parameters will be combined with the existing 
path and acknowledges that absolute paths are possible. The [curated 
docs](https://docs.python.org/3/library/pathlib.html#pathlib.PurePath.joinpath) 
only give examples, and curiously, those examples only use posixpath.sep, 
suggesting that it's recommended when passing compound paths to use posixpath 
separators as they're more widely supported.

For zipfile.Path, I observe that [joinpath does accept path 
separators](https://github.com/python/cpython/blob/3faa9f78d4b9a8c0fd4657b434bdb08ae1f28800/Lib/zipfile.py#L2438-L2440)
 but looking at the [docs for 
zipfile](https://gist.github.com/jaraco/5b266870c62680d6d6b3a876be321fa4), it's 
not even obvious to me what path separators are used in zipfiles, but I do 
observe there is [coercion to 
posixpath.sep](https://gist.github.com/jaraco/5b266870c62680d6d6b3a876be321fa4).

``ResourceContainer``, on the other hand, [will not accept path 
separators](https://github.com/python/cpython/blob/3faa9f78d4b9a8c0fd4657b434bdb08ae1f28800/Lib/importlib/resources/simple.py#L102-L105).
 This class, however, may not be used anywhere and probably could be extended 
to support path separators as well.

Here's what I propose:

- First, document that the interface is under-specified and that for maximum 
compatibility, a consumer should pass only relative paths using posixpath.sep 
or no separator at all. Additionally, explicitly declare that behavior with 
absolute paths is undefined and unsupported.
- Second, expand the interface on ``Traversable.joinpath`` to stipulate that 
the interface should accept multiple relative paths.
- Third, ``simple.ResourceContainer`` should be updated to meet that spec.

--

___
Python tracker 

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



[issue47205] test_sched_getaffinity and setaffinity fail on FreeBSD buildbit

2022-04-03 Thread Christian Heimes


Change by Christian Heimes :


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

___
Python tracker 

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



[issue47205] test_sched_getaffinity and setaffinity fail on FreeBSD buildbit

2022-04-03 Thread Christian Heimes


New submission from Christian Heimes :

Two test cases have been failing on FreeBSD buildbot for a while. Let's skip 
the error check on FreeBSD for now.

0:27:24 load avg: 1.97 Re-running test_posix in verbose mode (matching: 
test_sched_getaffinity, test_sched_setaffinity)
test_sched_getaffinity (test.test_posix.PosixTester.test_sched_getaffinity) ... 
FAIL
test_sched_setaffinity (test.test_posix.PosixTester.test_sched_setaffinity) ... 
FAIL
==
FAIL: test_sched_getaffinity 
(test.test_posix.PosixTester.test_sched_getaffinity)
--
Traceback (most recent call last):
  File 
"/usr/home/buildbot/python/pull_request.koobs-freebsd-564d/build/Lib/test/test_posix.py",
 line 1197, in test_sched_getaffinity
self.assertRaises(OSError, posix.sched_getaffinity, -1)
^^^
AssertionError: OSError not raised by sched_getaffinity
==
FAIL: test_sched_setaffinity 
(test.test_posix.PosixTester.test_sched_setaffinity)
--
Traceback (most recent call last):
  File 
"/usr/home/buildbot/python/pull_request.koobs-freebsd-564d/build/Lib/test/test_posix.py",
 line 1215, in test_sched_setaffinity
self.assertRaises(OSError, posix.sched_setaffinity, -1, mask)
^
AssertionError: OSError not raised by sched_setaffinity
--
Ran 2 tests in 0.015s

--
components: Tests
messages: 416616
nosy: christian.heimes
priority: normal
severity: normal
status: open
title: test_sched_getaffinity and setaffinity fail on FreeBSD buildbit
versions: Python 3.10, Python 3.11, Python 3.9

___
Python tracker 

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



[issue47185] code.replace(co_code=new_code) no longer catch exceptions on Python 3.11

2022-04-03 Thread Dominic Davis-Foster


Change by Dominic Davis-Foster :


--
nosy: +dom1310df

___
Python tracker 

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



[issue47152] Reorganize the re module sources

2022-04-03 Thread Serhiy Storchaka


Serhiy Storchaka  added the comment:

There are two very different classes with similar names: _sre.SRE_Scanner and 
re.Scanner. The former is used to implement the Pattern.finditer() method, but 
it could be used in other cases. The latter is an experimental implementation 
of generalized lexer using the former class. Both are undocumented. It is 
difficult to document Pattern.scanner() and _sre.SRE_Scanner because the class 
name contains implementation-specific prefix, and without it it would conflict 
with re.Scanner.

But let leave it all to a separate issue.

The original discussion about TEMPLATE was lost. Initially it only affected 
repetition operators, but now using them with TEMPLATE is error.

--

___
Python tracker 

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



[issue40280] Consider supporting emscripten/webassembly as a build target

2022-04-03 Thread Christian Heimes


Change by Christian Heimes :


--
pull_requests: +30345
pull_request: https://github.com/python/cpython/pull/32284

___
Python tracker 

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



[issue23689] Memory leak in Modules/sre_lib.h

2022-04-03 Thread Ma Lin


Change by Ma Lin :


--
pull_requests: +30344
pull_request: https://github.com/python/cpython/pull/32283

___
Python tracker 

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



[issue46014] functools.singledispatch does not support Union types

2022-04-03 Thread Yurii Karabas


Change by Yurii Karabas <1998uri...@gmail.com>:


--
pull_requests: +30343
pull_request: https://github.com/python/cpython/pull/32282

___
Python tracker 

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



[issue47196] Function pointer cast in test_imp

2022-04-03 Thread miss-islington


miss-islington  added the comment:


New changeset 3faa9f78d4b9a8c0fd4657b434bdb08ae1f28800 by Hood Chatham in 
branch 'main':
bpo-47196: Fix one more PyInit function signature (GH-32280)
https://github.com/python/cpython/commit/3faa9f78d4b9a8c0fd4657b434bdb08ae1f28800


--

___
Python tracker 

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



[issue44800] Code readability: rename InterpreterFrame to `_Py_framedata`

2022-04-03 Thread Nick Coghlan


Nick Coghlan  added the comment:


New changeset 124227c95f310d2ecd4b567271ab1919fc7000cb by Nick Coghlan in 
branch 'main':
bpo-44800: Document internal frame naming conventions (GH-32281)
https://github.com/python/cpython/commit/124227c95f310d2ecd4b567271ab1919fc7000cb


--

___
Python tracker 

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



[issue47204] Ensure PyEval_GetGlobals() doesn't set an exception when returning NULL

2022-04-03 Thread Nick Coghlan


Nick Coghlan  added the comment:

Core dev forum thread for the C API question: 
https://discuss.python.org/t/subtle-c-api-discrepancy-pyeval-getlocals-vs-pyeval-getglobals-with-no-python-frame/14797

--

___
Python tracker 

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



[issue47204] Ensure PyEval_GetGlobals() doesn't set an exception when returning NULL

2022-04-03 Thread Nick Coghlan


New submission from Nick Coghlan :

While working on the first PR for bpo-44800 I provoked an obscure failure in 
PyImport_ImportModule by making PyEval_GetGlobals set an exception when 
returning NULL (as PyEval_GetLocals has done since bpo-18408 was implemented 
for Python 3.4).

This ticket covers adding an embedding test case that:

* ensures PyEval_GetGlobals() returns NULL without an exception when no Python 
frame is active
* ensures PyEval_GetLocals() returns NULL and sets an exception when no Python 
frame is active
* ensures PyImport_ImportModule still works when no Python frame is active

There's an option to slightly change the behaviour of `PyEval_GetLocals()` to 
NOT set an exception in the "no Python frame" case, and instead only set the 
error when there is a Python frame, but something goes wrong when attempting to 
access the fast locals array (such as a memory allocation failure).

--
assignee: ncoghlan
messages: 416611
nosy: ncoghlan
priority: normal
severity: normal
stage: test needed
status: open
title: Ensure PyEval_GetGlobals() doesn't set an exception when returning NULL
type: enhancement

___
Python tracker 

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