Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DM-27354: Enable pip installation using pyproject.toml / PEP 517 #30

Merged
merged 6 commits into from
Nov 5, 2020

Commits on Nov 3, 2020

  1. Improve setuptools metadata

    - Removed license field because it's not recommended when there is a
      license classifier.
    - Moved long_description to setup.cfg, removing that logic from setup.py
    - Formatting consistency
    jonathansick committed Nov 3, 2020
    Configuration menu
    Copy the full SHA
    acc2ac7 View commit details
    Browse the repository at this point in the history
  2. Remove tests_require section

    tests_require is deprecated, so instead we've created a "test" extra.
    jonathansick committed Nov 3, 2020
    Configuration menu
    Copy the full SHA
    fcecef9 View commit details
    Browse the repository at this point in the history
  3. Bump numpy to >= 1.18

    This is for consistency with the original requirements.txt file.
    jonathansick committed Nov 3, 2020
    Configuration menu
    Copy the full SHA
    a8cfa2f View commit details
    Browse the repository at this point in the history
  4. Drop setuptools_cpp for pybind11 build

    setuptools_cpp doesn't offer any obvious functionality over pybind11's
    built-in setuptools integration, so we'll use the pybind11 recipe. Based
    on: https://github.com/pybind/python_example/blob/master/setup.py
    
    Also package headers with MANIFEST.in This appears necessary for a pip
    installation when building the pybind11 extension.
    jonathansick committed Nov 3, 2020
    Configuration menu
    Copy the full SHA
    4cf6029 View commit details
    Browse the repository at this point in the history
  5. Adopt pyproject.toml for setting build reqs

    pyroject.toml and PEP 517 is really the only way to ensure that certain
    python dependencies are present *before* a package is built.
    
    This replaces the setup_requires section in setup.cfg (it didn't install
    build dependencies in time) and requirements.txt (it's not a viable
    solution for installing dependencies for a library).
    
    Update GitHub Actions to use this installation method.
    jonathansick committed Nov 3, 2020
    Configuration menu
    Copy the full SHA
    f0e9fc6 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    45c70af View commit details
    Browse the repository at this point in the history