Skip to content

Add pyproject.toml file? #1180

@jamadden

Description

@jamadden

pip 10 supports pyproject.toml files as per PEP518. In theory this lets us declare our build-time dependencies (notably on Cython) so that a source install can simply be 'pip install gevent.tar.gz' without having to manually install Cython:

[build-system]
requires = ["setuptools", "wheel", "Cython >= 0.28.2"]

There's a problem with this, however.

Unfortunately, pip 10 will only install wheels for things listed in requires. If you're on a platform without a binary wheel for Cython (e.g., FreeBSD or Python 3.7b3 on any system), then the installation simply bails:

 Could not find a version that satisfies the requirement Cython>=0.28.2 (from versions: )
No matching distribution found for Cython>=0.28.2

Because pyproject.toml also specifies build isolation, installing Cython ahead of time also fails, unless you specify the --no-build-isolation flag. So until pip supports installing build deps from source, it's not clear that pyproject.toml is a net win.

Metadata

Metadata

Assignees

No one assigned

    Labels

    internalWork on the non-user-facing internals of gevent, e.g., build

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions