This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author jdemeyer
Recipients jdemeyer, lukasz.langa, ncoghlan, petr.viktorin, scoder, steve.dower, vstinner, willingc
Date 2019-06-21.05:43:58
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <>
> 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.
Date User Action Args
2019-06-21 05:43:58jdemeyersetrecipients: + jdemeyer, ncoghlan, scoder, vstinner, petr.viktorin, lukasz.langa, steve.dower, willingc
2019-06-21 05:43:58jdemeyersetmessageid: <>
2019-06-21 05:43:58jdemeyerlinkissue37250 messages
2019-06-21 05:43:58jdemeyercreate