Jeroen Demeyer <j.deme...@ugent.be> added the comment:

> Perhaps it would be helpful for someone to recap the current options on the 
> table for moving forward and the most significant risk to Cython, Projects 
> using Cython, or CPython by selecting each option.

There are three options:

(1) Status-quo (keep everything as is in 3.8b1): this breaks any Cython project 
which has not been recythonized with the latest Cython. For example, it is 
(together with bpo-37221 which is planned to be fixed) the reason that "pip 
install numpy" doesn't work with 3.8b1. Typically, projects run Cython at 
packaging time, so this needs a new source release of every single Cython-using 
package.

(2) Apply PR 14193: the only disadvantage that I can think of is that types 
would get 8 bytes larger. We should stop discussing and just do this.

(3) Put back tp_print the way it was in 3.7: same as (2), except that it goes 
against PEP 590 as putting tp_vectorcall_offset in place of tp_print was a 
design decision made in that PEP. It would break ABI (any static type compiled 
with 3.7 would break on 3.8) and it prevents Cython from backporting vectorcall 
to 3.7. It's also a larger change compared to 3.8b1, so it's more work and more 
risky. In my personal opinion, the worst of the three options.

Then there is the further question whether we should apply this only on 3.8 or 
possibly also later versions. But here the consensus seems to be 3.8 only.

----------

_______________________________________
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue37250>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to