Skip to content

Stop cythonizing sdist PyPi releases #14863

@rth

Description

@rth

I think we should stop cythonizing our sdist releases uploaded to PyPi. Cython is not forward compatible, meaning that a sdist generated for Py3.7 will very likely fail to install on Py3.8 (this also applied to Py3.6 -> Py3.7 before). At the same time Python is mostly backward compatible, so code written for py3.6 is going to work with Py3.7 (with maybe a few warnings).

So by cythonizing sdist releases we are hurting reproducibility because it will not be possible to install current scikit-learn from sources with latest python a few years from now.

There have been a few issues related to this as far as I remember.

Instead we should add cython as a build dependency.

This will be transparent for most users, that use pre-build wheels anyway.

Numpy is also going in that direction numpy/numpy#14453 and I think we should too.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions