[issue43565] PyUnicode_KIND macro does not has specified return type

2021-07-29 Thread Petr Viktorin


Petr Viktorin  added the comment:


New changeset 47fd4726a2ce8599cc397ddeae40f70eb471e868 by Ammar Askar in branch 
'main':
bpo-43565: Document PyUnicode_KIND's return type as an unsigned int (GH-25724)
https://github.com/python/cpython/commit/47fd4726a2ce8599cc397ddeae40f70eb471e868


--
nosy: +petr.viktorin

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



[issue42035] [C API] PyType_GetSlot cannot get tp_name

2021-07-29 Thread Petr Viktorin


Petr Viktorin  added the comment:


New changeset a390ebea17a96d1c93fc5f75b1e19916090a4561 by Hai Shi in branch 
'main':
bpo-42035: Add a PyType_GetName() to get type's short name. (GH-23903)
https://github.com/python/cpython/commit/a390ebea17a96d1c93fc5f75b1e19916090a4561


--

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



[issue42035] [C API] PyType_GetSlot cannot get tp_name

2021-07-29 Thread Petr Viktorin


Petr Viktorin  added the comment:

> Can we create PyType_GetDataSlot function to return the data pointer?

No, see the borrowed pointer issues above.

> I will create another PR after PR-23903 merged.

Great, thank you!

--

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



[issue44688] [sqlite3] Remove ASCII limitation from sqlite3.Connection.create_collation()

2021-07-29 Thread Petr Viktorin


Petr Viktorin  added the comment:


New changeset 5269c091458c5ea76eb625e4fabc9980b6309266 by Erlend Egeberg 
Aasland in branch 'main':
bpo-44688: Remove ASCII limitation from `sqlite3` collation names (GH-27395)
https://github.com/python/cpython/commit/5269c091458c5ea76eb625e4fabc9980b6309266


--

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



[issue44769] socketserver.shutdown should stop serve_forever() immediately

2021-07-29 Thread Petr Viktorin


Petr Viktorin  added the comment:

This isn't a high priority for me, but I have a WIP branch in 
https://github.com/encukou/cpython/tree/http-server-poll
Feel free to continue it if you get to it sooner than I do.

--

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



[issue44769] socketserver.shutdown should stop serve_forever() immediately

2021-07-28 Thread Petr Viktorin


New submission from Petr Viktorin :

Currently, socketserver.serve_forever() sets a variable and serve_forever() 
polls for it, with a configurable interval.

A comment in the code already says:
# XXX: Consider using another file descriptor or connecting to the
# socket to wake this up instead of polling. Polling reduces our
# responsiveness to a shutdown request and wastes cpu at all other
# times.

--
components: Library (Lib)
messages: 398427
nosy: petr.viktorin
priority: normal
severity: normal
status: open
title: socketserver.shutdown should stop serve_forever()  immediately

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



[issue43377] _PyErr_Display should be available in the CPython-specific API

2021-07-28 Thread Petr Viktorin


Petr Viktorin  added the comment:

PyErr_Display (without underscore) is already exposed.
This issue is about adding a variant with an additional output file argument.

The function formats an exception "just as Python would". The exact output will 
naturally be different between versions, but the function is still useful.

I'm also not sold on the "the arguments it may take" restriction:
- exceptions generally carry all of their context around
- even if they don't in the future, we'll always need a function that takes 
"just" an exception, for cases where some additional context isn't available

--

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



[issue29298] argparse fails with required subparsers, un-named dest, and empty argv

2021-07-27 Thread Petr Viktorin


Change by Petr Viktorin :


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

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



[issue43235] Tools/scripts/stable_abi.py should also check PC/python3dll.c (Windows stable ABI)

2021-07-27 Thread Petr Viktorin


Petr Viktorin  added the comment:

Since PEP 652, PC/python3dll.c is generated from the stable ABI definition.
Checking (i.e. running the tool without --generate) ensures it is up-to-date.

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

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



[issue43377] _PyErr_Display should be available in the CPython-specific API

2021-07-27 Thread Petr Viktorin


Petr Viktorin  added the comment:

If it should be exposed, it should be renamed to a public (non-underscored) 
name, like PyErr_DisplayToFile. It should also ideally get documentation and 
tests (along with PyErr_Display, which is sadly missing those as well).


(Also, note that there are no no API/ABI compatibility guarantees if you use 
private API or define Py_BUILD_CORE. Functions like _PyErr_Display could 
change/disappear in a patch version of CPython.)

--
nosy: +petr.viktorin

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



[issue42064] Convert sqlite3 to multi-phase initialisation (PEP 489)

2021-07-27 Thread Petr Viktorin


Petr Viktorin  added the comment:


New changeset 890e22957d427ee994b85d62dfe4d5a7cbd34ec5 by Erlend Egeberg 
Aasland in branch 'main':
bpo-42064: Migrate to `sqlite3_create_collation_v2` (GH-27156)
https://github.com/python/cpython/commit/890e22957d427ee994b85d62dfe4d5a7cbd34ec5


--

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



[issue42035] [C API] PyType_GetSlot cannot get tp_name

2021-07-27 Thread Petr Viktorin


Petr Viktorin  added the comment:

Sorry for the delay; getting 652 into Python 3.10 took up most of my time.


So, in the current proposal:
- `PyType_GetName(t)` is equivalent to `PyObject_GetAttrString(t, "__name__")`
- for the qualified name you can use `PyObject_GetAttrString(t, "__qualname__")`
- there is still no way to get t.tp_name

The advantage of PyType_GetName over a regular getattr is that it's fast for 
heap types (there's no dict lookup, and the string object is cached as 
ht_name). For static types, it's a bit slower (a string object needs to be 
built, but still there's no dict lookup).

If we go this way, why not add PyType_GetQualName as well?

(Is the speed, compared to getattr, worth adding two new functions? I guess it 
is, barely.)



The OP specifically requested a way to get tp_name, which the current PR does 
not do. I don't think it should, either:
- there's no way to assure that `char* tp_name` is not deallocated before the 
caller is done with it (especially considering that other Python 
implementations should be able to implement the stable ABI, and those shouldn't 
need store tp_name as char*).
- there is already __name__ and __qualname__ (and __module__); tp_name is a 
weird mix that I, personally, won't miss if it goes away. I think it's OK to 
only use it for creation (as PyType_Spec.name), and then expose the 
__name__/__module__ derived from it. It's not how CPython works, but that's OK 
for the limited API.

--

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



[issue42747] Remove Py_TPFLAGS_HAVE_VERSION_TAG flag?

2021-07-23 Thread Petr Viktorin


Petr Viktorin  added the comment:

I usually wait until buildbots are green before closing the bpo, but I don't 
think there's anything else.

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

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



[issue41756] Do not always use exceptions to return result from coroutine

2021-07-23 Thread Petr Viktorin


Petr Viktorin  added the comment:

that is, bpo-44727

--

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



[issue41756] Do not always use exceptions to return result from coroutine

2021-07-23 Thread Petr Viktorin


Petr Viktorin  added the comment:

Hello!
This change added an enum to the stable ABI:
typedef enum {
PYGEN_RETURN = 0,
PYGEN_ERROR = -1,
PYGEN_NEXT = 1,
} PySendResult;

Adding new values to enums might break the stable ABI in some (admittedly rare) 
cases; so usually it's better to avoid enums and stick with int and #ifdef'd 
values.
This particular one looks like it won't be extended and won't cause problems, 
but still, switching to int would make stable ABI easier to work with.
Is anyone against switching to int?

See pbo-44727 for details.

--
nosy: +petr.viktorin

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



[issue44727] Stable ABI should avoid `enum`

2021-07-23 Thread Petr Viktorin


Petr Viktorin  added the comment:

As far as I can see, the current enums in the stable ABI are:

PySendResult from object.h, return value of PyObject_Send:
typedef enum {
PYGEN_RETURN = 0,
PYGEN_ERROR = -1,
PYGEN_NEXT = 1,
} PySendResult;
(This is unlikely to change in the future, but added in 3.10, maybe it can be 
converted to int.)

PyLockStatus from pythread.h, return value of PyThread_acquire_lock_timed:
typedef enum PyLockStatus {
PY_LOCK_FAILURE = 0,
PY_LOCK_ACQUIRED = 1,
PY_LOCK_INTR
} PyLockStatus;
(This has been there for a long time so shouldn't be changed now.)

PyGILState_STATE from pystate.h, for PyGILState_Ensure/PyGILState_Release:
typedef
enum {PyGILState_LOCKED, PyGILState_UNLOCKED}
PyGILState_STATE;
(Also is unlikely to change in the future.)

--
nosy:  -corona10

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



[issue44727] Stable ABI should avoid `enum`

2021-07-23 Thread Petr Viktorin


Petr Viktorin  added the comment:

Devguide PR: https://github.com/python/devguide/pull/730

--

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



[issue44727] Stable ABI should avoid `enum`

2021-07-23 Thread Petr Viktorin


New submission from Petr Viktorin :

Adding a new enumerator to a C enum can change the size of the type,
which would break the ABI.
This is not often a problem in practice, but the rules around when it is a 
problem and when it isn't are complicated enough that I believe enum should not 
be used in the stable ABI (possibly with well-reasoned exceptions)

AFAICS, the rules are:
- In C++, an incompatible change to an enum is one that changes the size of the 
*smallest bit field large enough to hold all enumerators*. Values outside the 
range cause undefined/unspecified behavior.
- In C, it looks like enums that fit in `char` are safe.

(Also, the compiler-defined size of enums will make it more cumbersome to 
formally define an ABI for non-C languages.)

--
components: C API
messages: 398067
nosy: petr.viktorin
priority: normal
severity: normal
status: open
title: Stable ABI should avoid `enum`

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



[issue42747] Remove Py_TPFLAGS_HAVE_VERSION_TAG flag?

2021-07-23 Thread Petr Viktorin


Petr Viktorin  added the comment:


New changeset 632e8a69593efb12ec58d90e624ddf249a7a1b65 by Miss Islington (bot) 
in branch '3.10':
bpo-42747: Remove Py_TPFLAGS_HAVE_AM_SEND and make Py_TPFLAGS_HAVE_VERSION_TAG 
no-op (GH-27260) (GH-27306)
https://github.com/python/cpython/commit/632e8a69593efb12ec58d90e624ddf249a7a1b65


--

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



[issue29298] argparse fails with required subparsers, un-named dest, and empty argv

2021-07-23 Thread Petr Viktorin


Petr Viktorin  added the comment:


New changeset 097801844c99ea3916bebe1cc761257ea7083d34 by Miss Islington (bot) 
in branch '3.9':
bpo-29298: Fix crash with required subparsers without dest (GH-3680) (GH-27304)
https://github.com/python/cpython/commit/097801844c99ea3916bebe1cc761257ea7083d34


--

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



[issue29298] argparse fails with required subparsers, un-named dest, and empty argv

2021-07-23 Thread Petr Viktorin


Petr Viktorin  added the comment:


New changeset c589992e09d0db7cb47d21d5948929e599fdbb94 by Miss Islington (bot) 
in branch '3.10':
bpo-29298: Fix crash with required subparsers without dest (GH-3680) (GH-27303)
https://github.com/python/cpython/commit/c589992e09d0db7cb47d21d5948929e599fdbb94


--
nosy: +petr.viktorin

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



[issue44588] Possible double Py_XDECREF in cpython typeobject.c

2021-07-20 Thread Petr Viktorin


Change by Petr Viktorin :


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

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



[issue44588] Possible double Py_XDECREF in cpython typeobject.c

2021-07-20 Thread Petr Viktorin


Petr Viktorin  added the comment:

Please use Py_TPFLAGS_DEFAULT when creating objects. Do you have a reason to 
not do it?


The flag Py_TPFLAGS_HAVE_VERSION_TAG is unneeded and Python should not check 
for it. There's bpo-42747 open for that already; I sent a PR for it.

--
nosy: +petr.viktorin

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



[issue42747] Remove Py_TPFLAGS_HAVE_VERSION_TAG flag?

2021-07-20 Thread Petr Viktorin


Change by Petr Viktorin :


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

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



[issue42747] Remove Py_TPFLAGS_HAVE_VERSION_TAG flag?

2021-07-20 Thread Petr Viktorin


Petr Viktorin  added the comment:

The bit cannot be repurposed, since older extensions using the stable ABI might 
set it.
It doesn't make much sense to remove the Py_TPFLAGS_HAVE_VERSION_TAG or 
Py_TPFLAGS_HAVE_FINALIZE defines; I'd let them stay to document that the bits 
are reserved.

--

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



[issue42085] Add dedicated slot for sending values

2021-07-20 Thread Petr Viktorin


Petr Viktorin  added the comment:

Py_TPFLAGS_HAVE_AM_SEND is unnecessary and I'd like to remove it.

It is not possible for type objects to have a different layout than the 
interpreter:
- extensions using the regular ABI must be recompiled for each feature version 
of Python
- extensions using the stable ABI can only create types dynamically

Or is there a different reason for Py_TPFLAGS_HAVE_AM_SEND? Checking it may be 
faster than ((Py_TYPE(x)->tp_as_async != NULL) && 
(Py_TYPE(x)->tp_as_async->am_send != NULL)), but I don't think the speedup is 
relevant.

See bpo-42747

--
nosy: +petr.viktorin

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



[issue44663] Possible bug in datetime utc

2021-07-20 Thread Petr Viktorin


Change by Petr Viktorin :


--
components: +Library (Lib) -C API

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



[issue43334] venv does not install libpython

2021-07-20 Thread Petr Viktorin


Petr Viktorin  added the comment:

A venv does *not* create a replica of a python installation directory. Files 
shared with the main Python installation are not copied nor linked. This goes 
for the standard library, as well as the libraries and headers.
(*Executables* are an exception; they're copied, since a venv needs them on the 
PATH.)

Copies would take up unnecessary space, and not all operating systems support 
symbolic links (and we don't want another platform-specific difference), so the 
shared files are only referenced using pyvenv.cfg


If you point to the macros you're using, I can take a look at how they could be 
improved.

--
nosy: +petr.viktorin
status: open -> closed

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



[issue43629] fix _PyRun_SimpleFileObject create __main__ module and cache. Call this function multiple times, the attributes stored in the module dict will affect eachother.

2021-07-20 Thread Petr Viktorin


Petr Viktorin  added the comment:

The public function that calls _PyRun_SimpleFileObject is 
PyRun_SimpleStringFlags, and the behavior is as specified in its documentation: 
"Executes the Python source code from command in the __main__ module according 
to the flags argument. If __main__ does not already exist, it is created."

https://docs.python.org/3.8/c-api/veryhigh.html?highlight=pyrun_simplefileexflags#c.PyRun_SimpleStringFlags

--
nosy: +petr.viktorin
stage: patch review -> resolved
status: open -> closed

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



[issue42064] Convert sqlite3 to multi-phase initialisation (PEP 489)

2021-07-20 Thread Petr Viktorin


Petr Viktorin  added the comment:


New changeset 4c0deb25ac899fbe4da626ce3cb21f204cdd3aa9 by Erlend Egeberg 
Aasland in branch 'main':
bpo-42064: Finalise establishing sqlite3 global state (GH-27155)
https://github.com/python/cpython/commit/4c0deb25ac899fbe4da626ce3cb21f204cdd3aa9


--

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



[issue25653] ctypes+callbacks+fork+selinux = crash

2021-06-30 Thread Petr Viktorin


Petr Viktorin  added the comment:

Here's a simpler reproducer.

--
nosy: +petr.viktorin
Added file: https://bugs.python.org/file50134/y.py

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



[issue40939] Remove the old parser

2021-06-28 Thread Petr Viktorin


Petr Viktorin  added the comment:


New changeset dc10264eb880ed63fcf42c17057f3f5d879a0a0c by Miss Islington (bot) 
in branch '3.10':
bpo-40939: Remove documentation for `PyParser_*` & add porting notes (GH-26855) 
(GH-26898)
https://github.com/python/cpython/commit/dc10264eb880ed63fcf42c17057f3f5d879a0a0c


--

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



[issue40939] Remove the old parser

2021-06-24 Thread Petr Viktorin


Petr Viktorin  added the comment:


New changeset 29987f72650b7cccee4df216c8297e8484a44e6a by Petr Viktorin in 
branch 'main':
bpo-40939: Remove documentation for `PyParser_*` & add porting notes (GH-26855)
https://github.com/python/cpython/commit/29987f72650b7cccee4df216c8297e8484a44e6a


--

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



[issue44498] move deprecated asynchat, asyncore and smtpd from the stdlib to test.support

2021-06-23 Thread Petr Viktorin


Petr Viktorin  added the comment:

Please follow the backwards compatibility policy (PEP 387):
- Have a discussion
- Raise deprecation warnings
- Wait at least two minor Python versions where warnings are raised
- Consider any feedback
- Then remove stuff
(Or ask the SC for an exception, but these "are only granted for extreme 
situations such as dangerously broken or insecure features or features no one 
could reasonably be depending on".)

There were no deprecation warnings raised so far, so removing these in 3.11 is 
very premature.

--
nosy: +petr.viktorin

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



[issue40939] Remove the old parser

2021-06-22 Thread Petr Viktorin


Petr Viktorin  added the comment:

- The removed functions are still listed in the documentation; this is 
confusing.

- `struct _node` is not very usable in the C API, but what I saw in mod_wsgi 
was giving gave PyParser_* output to PyNode_Compile. I tried to write porting 
notes for this usage. It should also help with the "compile to check for syntax 
errors" case in unbound.

--

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



[issue40939] Remove the old parser

2021-06-22 Thread Petr Viktorin


Change by Petr Viktorin :


--
nosy: +petr.viktorin
nosy_count: 11.0 -> 12.0
pull_requests: +25434
pull_request: https://github.com/python/cpython/pull/26855

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



[issue39767] create multiprocessing.SharedMemory by pointing to existing memoryview

2021-06-22 Thread Petr Viktorin


Change by Petr Viktorin :


--
components: +Library (Lib) -C API

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



[issue39620] PyObject_GetAttrString and tp_getattr do not agree

2021-06-22 Thread Petr Viktorin


Change by Petr Viktorin :


--
nosy: +petr.viktorin

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



[issue39355] The Python library will not compile with a C++2020 compiler because the code uses the reserved “module” keyword

2021-06-22 Thread Petr Viktorin


Change by Petr Viktorin :


--
nosy: +petr.viktorin

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



[issue39123] PyThread_xxx() not available when using limited API

2021-06-22 Thread Petr Viktorin


Petr Viktorin  added the comment:

In Python 3.10, the functions:
PyThread_allocate_lock, PyThread_exit_thread, PyThread_free_lock, 
PyThread_get_stacksize, PyThread_get_thread_ident, 
PyThread_get_thread_native_id, PyThread_init_thread, PyThread_release_lock, 
PyThread_set_stacksize, PyThread_start_new_thread

are exported as part of the stable ABI. They were added in bpo-42545 and 
bpo-43795 (PEP 652).
Sorry for the delay.

--
nosy: +petr.viktorin
resolution:  -> fixed
stage:  -> resolved
status: open -> closed

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



[issue39078] __function.__defaults__ breaks for __init__ of dataclasses with default factory

2021-06-22 Thread Petr Viktorin


Change by Petr Viktorin :


--
components: +Library (Lib) -C API

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



[issue38829] Make the function flush_io accessible in the C-API

2021-06-22 Thread Petr Viktorin


Petr Viktorin  added the comment:

To follow up on the StackOverflow discussion: A call to PyErr_Print should 
invoke sys.excepthook. Unless sys.excepthook was changed, this should print the 
message *and* flush standard output.
If it doesn't, I recommend investigating why.

If that does not work, you can flush stderr with two function calls:

sys_stderr = PySys_GetObject("stderr");
PyObject_CallMethodNoArgs(sys_stderr, "flush");

plus the necessary error handling if any returns NULL, of course.

And/or the same thing with stdout. The flush_io function does exactly this (for 
both stdout and stderr).
I don't think this is general enough to expose as an API -- IMO it's better to 
be explicit and call the flush method as above.

--
nosy: +petr.viktorin
resolution:  -> not a bug
stage:  -> resolved
status: open -> closed

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



[issue44441] Malformed PyImport_Inittab after re-initialization

2021-06-17 Thread Petr Viktorin


Change by Petr Viktorin :


--
nosy: +vstinner

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



[issue43795] Implement PEP 652 -- Maintaining the Stable ABI

2021-06-16 Thread Petr Viktorin


Petr Viktorin  added the comment:


New changeset 7cad9cb51bdae2144cbab330f13a607ba3471742 by Petr Viktorin in 
branch 'main':
bpo-43795: Don't list private names in the limited API (GH-26740)
https://github.com/python/cpython/commit/7cad9cb51bdae2144cbab330f13a607ba3471742


--

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



[issue43795] Implement PEP 652 -- Maintaining the Stable ABI

2021-06-15 Thread Petr Viktorin


Change by Petr Viktorin :


--
pull_requests: +25326
pull_request: https://github.com/python/cpython/pull/26740

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



[issue42064] Convert sqlite3 to multi-phase initialisation (PEP 489)

2021-06-15 Thread Petr Viktorin


Petr Viktorin  added the comment:


New changeset 10a5c806d4dec6c342dcc9888fbe4fa1fa9b7a1f by Erlend Egeberg 
Aasland in branch 'main':
bpo-42064: Move sqlite3 types to global state (GH-26537)
https://github.com/python/cpython/commit/10a5c806d4dec6c342dcc9888fbe4fa1fa9b7a1f


--
nosy: +petr.viktorin

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



[issue44351] distutils.sysconfig.parse_makefile() regression in Python 3.10

2021-06-15 Thread Petr Viktorin


Petr Viktorin  added the comment:


New changeset 2f2ea96c4429b81f491aa1cdc4219ef2fd6d37fb by Miss Islington (bot) 
in branch '3.10':
bpo-44351: Restore back parse_makefile in distutils.sysconfig (GH-26637) 
(GH-26673)
https://github.com/python/cpython/commit/2f2ea96c4429b81f491aa1cdc4219ef2fd6d37fb


--

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



[issue44392] Py_GenericAlias is not documented

2021-06-14 Thread Petr Viktorin


Petr Viktorin  added the comment:

> Can we remove this from the stable API during beta?

It was added (to PC/python3.def) in 3.9, so removing in 3.10 beta wouldn't be 
good.
It can be deprecated; should it?

--

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



[issue44351] distutils.sysconfig.parse_makefile() regression in Python 3.10

2021-06-11 Thread Petr Viktorin

Petr Viktorin  added the comment:


New changeset fc98266ff627ba0f56f8ae241245b66bc983baa3 by Lumír 'Frenzy' Balhar 
in branch 'main':
bpo-44351: Restore back parse_makefile in distutils.sysconfig (GH-26637)
https://github.com/python/cpython/commit/fc98266ff627ba0f56f8ae241245b66bc983baa3


--

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



[issue44351] distutils.sysconfig.parse_makefile() regression in Python 3.10

2021-06-09 Thread Petr Viktorin


Petr Viktorin  added the comment:

IMO, the functionality should only be preserved until distutils is removed. So:

- distutils.sysconfig.parse_makefile should use TextFile as before, so projects 
that use it aren't broken *yet*
- nothing else should call distutils.sysconfig.parse_makefile, so it doesn't 
block removing distutils

Would that make sense?

--

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



[issue43795] Implement PEP 652 -- Maintaining the Stable ABI

2021-06-08 Thread Petr Viktorin


Petr Viktorin  added the comment:


New changeset 75185561a9a3b6dede3ad87bd83bab66847bd425 by Miss Islington (bot) 
in branch '3.10':
bpo-43795: Note Stable ABI PEP in What's New (GH-26479) (GH-26603)
https://github.com/python/cpython/commit/75185561a9a3b6dede3ad87bd83bab66847bd425


--

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



[issue43795] Implement PEP 652 -- Maintaining the Stable ABI

2021-06-08 Thread Petr Viktorin


Petr Viktorin  added the comment:


New changeset 257e400a19b34c7da6e2aa500d80b54e4c4dbf6f by Petr Viktorin in 
branch 'main':
bpo-43795: Note Stable ABI PEP in What's New (GH-26479)
https://github.com/python/cpython/commit/257e400a19b34c7da6e2aa500d80b54e4c4dbf6f


--

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



[issue44285] Coverity scan: Modules/getpath.c. "calculate_open_pyenv" allocates memory that is stored into "env_file".

2021-06-02 Thread Petr Viktorin


Petr Viktorin  added the comment:


New changeset bdb56902a3bfe12b10f85a941d5dd0eae739f1a8 by stratakis in branch 
'main':
bpo-44285: getpath.c: Assert that env_file is NULL during an error check 
(GH-26486)
https://github.com/python/cpython/commit/bdb56902a3bfe12b10f85a941d5dd0eae739f1a8


--

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



[issue44285] Coverity scan: Modules/getpath.c. "calculate_open_pyenv" allocates memory that is stored into "env_file".

2021-06-02 Thread Petr Viktorin


Petr Viktorin  added the comment:

+1, for adding the assertion. It's not trivial to see that env_file must be 
NULL here, even for me (a human).

--
nosy: +petr.viktorin

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



[issue29086] Document C API that is not part of the limited API

2021-06-01 Thread Petr Viktorin


Petr Viktorin  added the comment:

PEP 652 is now in, and with it a list of everything that *is* in the stable 
ABI: https://docs.python.org/3.10/c-api/stable.html#contents-of-limited-api

I'm closing the issue.

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

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



[issue23903] Generate PC/python3.def by scraping headers

2021-06-01 Thread Petr Viktorin


Petr Viktorin  added the comment:

PEP 652 (bpo-43795) is now in; I'm closing this issue.

A cross-platform C parser/checker would still be an improvement, but the 
constraints (no external dependencies in CPython) and benefits (not many 
compared to the goal of strict separation of internal/public/stable headers) 
aren't really aligned in its favor.

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

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



[issue43795] Implement PEP 652 -- Maintaining the Stable ABI

2021-06-01 Thread Petr Viktorin


Change by Petr Viktorin :


--
pull_requests: +25074
pull_request: https://github.com/python/cpython/pull/26479

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



[issue43795] Implement PEP 652 -- Maintaining the Stable ABI

2021-05-25 Thread Petr Viktorin


Change by Petr Viktorin :


--
pull_requests: +24946
pull_request: https://github.com/python/cpython/pull/26354

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



[issue44230] lookup extensions with the stable ABI under a platform specific name

2021-05-25 Thread Petr Viktorin


Petr Viktorin  added the comment:

How will these filenames be generated? Won't build tools like setuptools need 
to be changed as well?

--

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



[issue41282] Deprecate and remove distutils

2021-05-25 Thread Petr Viktorin


Petr Viktorin  added the comment:

Thank you for doing the hard part, Ned!

--

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



[issue41282] Deprecate and remove distutils

2021-05-24 Thread Petr Viktorin


Change by Petr Viktorin :


--
pull_requests: +24921
pull_request: https://github.com/python/cpython/pull/26329

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



[issue41282] Deprecate and remove distutils

2021-05-24 Thread Petr Viktorin


Petr Viktorin  added the comment:

When building Python, we need two distinct "include" directories:
- source .h files
- install target for .h files

Note that this doesn't matter except when building Python from source.

Historically:
- source .h files were in the sysconfig scheme under 'include'
- the install directory was in the distutils.command.install scheme
under 'headers'

GH-24549 merged these, because sysconfig is now the single source of truth and 
distutils is derived from it.
It seems to me that we need to bring 'headers' back -- at least when building 
Python.

--

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



[issue44099] [C API] Introduce a new slot in PyModuleDef to hold the classes

2021-05-19 Thread Petr Viktorin


Petr Viktorin  added the comment:

First off, note that you can use PyModule_AddType rather than 
PyModule_AddObject to avoid repeating the name.

Adding this *correctly* will be somewhat involved: slots take function 
pointers, not data pointers which are incompatible according to standard C. The 
changes will also need to keep backwards compatibility.

--
nosy: +petr.viktorin

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



[issue43795] Implement PEP 652 -- Maintaining the Stable ABI

2021-05-19 Thread Petr Viktorin


Change by Petr Viktorin :


--
pull_requests: +24856
pull_request: https://github.com/python/cpython/pull/26241

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



[issue42591] Method Py_FrozenMain missing in libpython3.9

2021-05-19 Thread Petr Viktorin


Change by Petr Viktorin :


--
pull_requests: +24857
pull_request: https://github.com/python/cpython/pull/26241

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



[issue44131] [C API] Add tests on Py_FrozenMain()

2021-05-19 Thread Petr Viktorin


Change by Petr Viktorin :


--
pull_requests: +24858
pull_request: https://github.com/python/cpython/pull/26241

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



[issue42591] Method Py_FrozenMain missing in libpython3.9

2021-05-18 Thread Petr Viktorin


Petr Viktorin  added the comment:

Is this function actually usable in Windows? ISTM that you need to define three 
more functions, PyWinFreeze_ExeInit, PyWinFreeze_ExeTerm and 
PyInitFrozenExtensions.

Was adding this undocumented function to the Windows stable ABI deliberate? I 
see no discussion about that.

--
nosy: +petr.viktorin

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



[issue44131] [C API] Add tests on Py_FrozenMain()

2021-05-18 Thread Petr Viktorin


Petr Viktorin  added the comment:

The tests are now skipped on Windows. It might be better to use a feature 
check: hasattr(ctypes.pythonapi, 'Py_FrozenMain')


IMO, Py_FrozenMain is quite specific: it's OK if it's exported, but also OK if 
it's missing. (Unless you're compiling a special build with frozen modules, 
which won't work at all without Py_FrozenMain.)

--

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



[issue41111] [C API] Convert a few stdlib extensions to the limited C API (PEP 384)

2021-05-14 Thread Petr Viktorin


Petr Viktorin  added the comment:

METH_VARARGS and METH_KEYWORDS are part of the stable ABI.

--

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



[issue43795] Implement PEP 652 -- Maintaining the Stable ABI

2021-05-13 Thread Petr Viktorin


Change by Petr Viktorin :


--
pull_requests: +24742
pull_request: https://github.com/python/cpython/pull/26101

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



[issue44116] The _csv module can't be garbage-collected after _csv.register_dialect is called

2021-05-12 Thread Petr Viktorin


Petr Viktorin  added the comment:

Changes to _csv.Error should not be necessary, there everything is handled by 
the superclass.

--
stage: patch review -> 

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



[issue44116] The _csv module can't be garbage-collected after _csv.register_dialect is called

2021-05-12 Thread Petr Viktorin


Petr Viktorin  added the comment:

The urllib.request one was caused by _hashlib, see GH-26072.

--
stage: patch review -> 

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



[issue40645] Use OpenSSL's HMAC API

2021-05-12 Thread Petr Viktorin


Change by Petr Viktorin :


--
nosy: +petr.viktorin
nosy_count: 5.0 -> 6.0
pull_requests: +24712
pull_request: https://github.com/python/cpython/pull/26072

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



[issue44116] The _csv module can't be garbage-collected after _csv.register_dialect is called

2021-05-12 Thread Petr Viktorin


Petr Viktorin  added the comment:

*facepalm* Yes, that's it.

If you have the time now, could you send he PR?

--

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



[issue44116] The _csv module can't be garbage-collected after _csv.register_dialect is called

2021-05-12 Thread Petr Viktorin


Change by Petr Viktorin :


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

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



[issue44116] The _csv module can't be garbage-collected after _csv.register_dialect is called

2021-05-12 Thread Petr Viktorin


Petr Viktorin  added the comment:

Hm, a similar thing apparently happens with urllib.request.

--

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



[issue43795] Implement PEP 652 -- Maintaining the Stable ABI

2021-05-12 Thread Petr Viktorin


Petr Viktorin  added the comment:

I opened https://bugs.python.org/issue44116 for the leak when trying to unload 
_csv.
Looks like investigating that will take a while, so I'll send a small PR to 
unblock the buildbots.

--

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



[issue44116] The _csv module can't be garbage-collected after _csv.register_dialect is called

2021-05-12 Thread Petr Viktorin


New submission from Petr Viktorin :

After `_csv.register_dialect` is called, the csv module is alive even after 
it's removed from sys.modules. It should be garbage-collected.
(It's not that big a deal: unloading _csv isn't something users should do. But 
it might be hiding a deeper issue.)

The following reproducer (for a debug build of Python) shows an increasing 
number of refcounts. (Importing `csv` is the easiest way to call 
_csv._register_dialect with a proper argument):


import sys
import gc

for i in range(10):
import csv
del sys.modules['_csv']
del sys.modules['csv']
del csv
gc.collect()

print(sys.gettotalrefcount())

--
components: Extension Modules
messages: 393508
nosy: petr.viktorin
priority: normal
severity: normal
status: open
title: The _csv module can't be garbage-collected after _csv.register_dialect 
is called
versions: Python 3.11

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



[issue43795] Implement PEP 652 -- Maintaining the Stable ABI

2021-05-12 Thread Petr Viktorin


Petr Viktorin  added the comment:

Thanks for the note!

This is due to `csv`. Adding a script in Tools/scripts that imports csv will 
also make the refleak check fail.
I'll investigate further.

--

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



[issue40222] "Zero cost" exception handling

2021-05-11 Thread Petr Viktorin


Petr Viktorin  added the comment:

Then, according to PEP 387, "The steering council may grant exceptions to this 
policy."

I think API breaks like this do need coordination at the project level.

--

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



[issue40222] "Zero cost" exception handling

2021-05-11 Thread Petr Viktorin


Petr Viktorin  added the comment:

PyCode_NewWithPosOnlyArgs is not part of the stable ABI. It is OK to break its 
ABI in a minor version (i.e. 3.11).

The PyAPI_FUNC makes it part of the public *API*. It needs to be source- 
compatible; the number of arguments can't change. Could yo u add a new function?

I wouldn't remove PyCode_NewWithPosOnlyArgs from the public C API, which can be 
CPython-specific and used by projects like Cython that need some low-level 
access for performance. But PEP 387 applies, so if it is deprecated in 3.11, it 
can be removed in 3.13.

--

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



[issue43760] The DISPATCH() macro is not as efficient as it could be.

2021-05-10 Thread Petr Viktorin


Petr Viktorin  added the comment:

PEP 0497 is rejected; the active one is PEP 387, which says "backwards 
incompatibility" means preexisting code ceases to comparatively function after 
a change.
So, this does look like a backwards-incompatible change.

Unfortunately, not all of the C API is documented, so unless it's explicitly 
marked private, people will use it :(

--

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



[issue23903] Generate PC/python3.def by scraping headers

2021-05-06 Thread Petr Viktorin


Petr Viktorin  added the comment:

The symbols exported by python3.dll are now generated from Misc/stable_abi.txt 
as per PEP 652.
See the devguide for more details: https://devguide.python.org/c-api/

This is slightly more work than generating the list fully automatically, but 
the extra work is negligible compared to all the things you should think about 
when adding API that'll be be supported until Python 4.0.


Headers are now checked on Unix (GCC) only. If anyone wants to work on a 
cross-platform C parser/checker, please let me know.

--

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



[issue43795] Implement PEP 652 -- Maintaining the Stable ABI

2021-05-05 Thread Petr Viktorin


Change by Petr Viktorin :


--
pull_requests: +24588
pull_request: https://github.com/python/cpython/pull/25920

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



[issue42083] PyStructSequence_NewType broken in 3.8

2021-05-04 Thread Petr Viktorin


Petr Viktorin  added the comment:

Changing PyType_FromSpec* to accept NULL has an issue: extensions built and 
tested with 3.9.5 would not work with the earlier 3.9s.

I'll send a PR to fix just PyStructSequence_NewType.

--

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



[issue42083] PyStructSequence_NewType broken in 3.8

2021-05-04 Thread Petr Viktorin


Change by Petr Viktorin :


--
nosy: +petr.viktorin
nosy_count: 5.0 -> 6.0
pull_requests: +24568
pull_request: https://github.com/python/cpython/pull/25896

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



[issue43976] Allow Python distributors to add custom site install schemes

2021-05-04 Thread Petr Viktorin


Petr Viktorin  added the comment:

Sorry for not getting to this sooner, but 5 days is really tight for such a 
change.


With -S/-I, It would be great if sys.path only included packages installed as 
part of the OS, and not those installed by `sudo pip`. (Or `pip --user`, but 
that's covered).

It seems that with the current patch, pip will install into site-packages and 
there's no way to disable/change site-packages. Is that the case?

--
nosy: +petr.viktorin

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



[issue28254] Add C API for gc.enable, gc.disable, and gc.isenabled

2021-04-29 Thread Petr Viktorin


Petr Viktorin  added the comment:


New changeset 14fc2bdfab857718429029e53ceffca456178827 by Petr Viktorin in 
branch 'master':
bpo-28254: Add PyGC_ functions to the stable ABI manifest (GH-25720)
https://github.com/python/cpython/commit/14fc2bdfab857718429029e53ceffca456178827


--

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



[issue28254] Add C API for gc.enable, gc.disable, and gc.isenabled

2021-04-29 Thread Petr Viktorin


Change by Petr Viktorin :


--
nosy: +petr.viktorin
nosy_count: 5.0 -> 6.0
pull_requests: +24411
pull_request: https://github.com/python/cpython/pull/25720

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



[issue43795] Implement PEP 652 -- Maintaining the Stable ABI

2021-04-29 Thread Petr Viktorin


Petr Viktorin  added the comment:


New changeset f6ee4dad589c0953283dacb577a2d808fda7aae9 by Petr Viktorin in 
branch 'master':
bpo-43795: Generate python3dll.c and doc data from manifest (PEP 652) (GH-25315)
https://github.com/python/cpython/commit/f6ee4dad589c0953283dacb577a2d808fda7aae9


--

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



[issue43795] Implement PEP 652 -- Maintaining the Stable ABI

2021-04-28 Thread Petr Viktorin


Petr Viktorin  added the comment:

I hope the PR fixes that. I plan to merge tomorrow if there ar no objections to 
it.

On April 28, 2021 5:15:19 PM GMT+02:00, STINNER Victor  
wrote:
>
>STINNER Victor  added the comment:
>
>Right now, running "make regen-limited-abi" adds again functions which
>were removed from Doc/data/stable_abi.dat:
>https://github.com/python/cpython/pull/25687#issuecomment-828520575
>
>diff --git a/Doc/data/stable_abi.dat b/Doc/data/stable_abi.dat
>index cdc7160250..6fe61743d6 100644
>--- a/Doc/data/stable_abi.dat
>+++ b/Doc/data/stable_abi.dat
>@@ -351,11 +351,17 @@ PyMapping_Length
> PyMapping_SetItemString
> PyMapping_Size
> PyMapping_Values
>+PyMarshal_ReadObjectFromString
>+PyMarshal_WriteLongToFile
>+PyMarshal_WriteObjectToFile
>+PyMarshal_WriteObjectToString
> PyMem_Calloc
> PyMem_Free
> PyMem_Malloc
> PyMem_Realloc
> PyMemberDescr_Type
>+PyMember_GetOne
>+PyMember_SetOne
> PyMemoryView_FromMemory
> PyMemoryView_FromObject
> PyMemoryView_GetContiguous
>
>
>I guess that you should not be added until this issue is solved.
>
>--
>
>___
>Python tracker 
><https://bugs.python.org/issue43795>
>___

--

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



[issue43795] Implement PEP 652 -- Maintaining the Stable ABI

2021-04-27 Thread Petr Viktorin


Change by Petr Viktorin :


--
pull_requests: +24357
pull_request: https://github.com/python/cpython/pull/25668

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



[issue43933] Regression in python3.10 with traceback frame having lineno of -1

2021-04-27 Thread Petr Viktorin


Petr Viktorin  added the comment:

Please don't lose the big picture here.
Previously, the reported line number was *somewhere close* to the currently 
executing code. That's typically all I need from a traceback: the fix for a bug 
often needs to go a few lines above/below where it's reported.

If, in an effort to make line numbers *exact*, we determine that there's no 
good line number to report and use -1 or None, we're introducing a regression.


> We could give it the line number of the `with` keyword, but that might break 
> coverage and profiling tools.

That sounds like a reasonable idea, despite the drawback. As we can see from 
the report, *any* change will probably break *some* tools.

--
nosy: +petr.viktorin

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



[issue43868] Remove PyOS_ReadlineFunctionPointer from the stable ABI list

2021-04-23 Thread Petr Viktorin


Petr Viktorin  added the comment:


New changeset 91b69b77cf5f78de6d35dea23098df34b6fd9e53 by Petr Viktorin in 
branch 'master':
bpo-43868: Remove PyOS_ReadlineFunctionPointer from the stable ABI list 
(GH-25442)
https://github.com/python/cpython/commit/91b69b77cf5f78de6d35dea23098df34b6fd9e53


--

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



[issue43795] Implement PEP 652 -- Maintaining the Stable ABI

2021-04-23 Thread Petr Viktorin


Petr Viktorin  added the comment:


New changeset 9d6a2d0ee7e55402656e1dec46400591b62db331 by Petr Viktorin in 
branch 'master':
bpo-43795: PEP-652: Clean up the stable ABI/limited API (GH-25482)
https://github.com/python/cpython/commit/9d6a2d0ee7e55402656e1dec46400591b62db331


--

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



[issue43795] Implement PEP 652 -- Maintaining the Stable ABI

2021-04-23 Thread Petr Viktorin


Petr Viktorin  added the comment:


New changeset e7cc64e297001cc79b9afab80f71d9e6d1267cb7 by Petr Viktorin in 
branch 'master':
bpo-43795: PEP-652: Simplify headers for easier static analysis (GH-25483)
https://github.com/python/cpython/commit/e7cc64e297001cc79b9afab80f71d9e6d1267cb7


--

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



[issue41282] Deprecate and remove distutils

2021-04-23 Thread Petr Viktorin

Petr Viktorin  added the comment:


New changeset 90d02e5e63e2cb8f66a2c0dd2ea8d7d4f45f4ebf by Lumír 'Frenzy' Balhar 
in branch 'master':
bpo-41282: (PEP 632) Deprecate distutils.sysconfig (partial implementation of 
the PEP) (GH-23142)
https://github.com/python/cpython/commit/90d02e5e63e2cb8f66a2c0dd2ea8d7d4f45f4ebf


--

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



[issue37578] Change Glob: Allow Recursion for Hidden Files

2021-04-22 Thread Petr Viktorin


Petr Viktorin  added the comment:

I wonder if it would be worth it to add a new option to include hidden files 
(except . and ..)
For the record, setuptools' fork of glob does this unconditionally: 
https://github.com/pypa/setuptools/blob/main/setuptools/glob.py

--
nosy: +petr.viktorin

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



[issue43795] Implement PEP 652 -- Maintaining the Stable ABI

2021-04-20 Thread Petr Viktorin


Change by Petr Viktorin :


--
pull_requests: +24208
pull_request: https://github.com/python/cpython/pull/25483

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



[issue43795] Implement PEP 652 -- Maintaining the Stable ABI

2021-04-20 Thread Petr Viktorin


Petr Viktorin  added the comment:

> Should we mention PEP 652 in Include/README.rst, now that the PEP is accepted?

No, we should link to the documentation (when it's written). The PEP is a 
design document; it'll become outdated.

--

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



<    1   2   3   4   5   6   7   8   9   10   >