-
-
Notifications
You must be signed in to change notification settings - Fork 7.9k
Simplest pyproject.toml containing build-system only #24102
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
Conversation
For C/C++ coverage to work, need a CI build using Edit: The above is no longer true, now if coverage is enabled this PR stores I think we will probably need to use |
da8b828
to
bdfd2ff
Compare
This is now working as expected, and is the smallest set of changes needed to use |
@@ -208,8 +217,9 @@ def update_matplotlibrc(path): | |||
class BuildPy(setuptools.command.build_py.build_py): | |||
def run(self): | |||
super().run() | |||
update_matplotlibrc( | |||
Path(self.build_lib, "matplotlib/mpl-data/matplotlibrc")) | |||
if not self.editable_mode: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It surprised me to discover that when you build the main
branch in editable mode this run
function is not called. This branch does call the run
function so here I am explicitly avoiding the update_matplotlibrc
call when in editable mode to give the same behaviour as main
branch.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Editable (via pip/setuptools) is quite different from a regular build. I'm not an expert there, but have the feeling that if in doubt expectations on editable installs do not hold. Possibly pep660 will change that.
Lets get this in ASAP so we can shake out any issues with it. |
This is the start of a transition to a
pyproject.toml
build system (issue #23815) and is a alternative to (or precursor to) PR #23829.This is the only part of the
pyproject.toml
transition that is required for thepybind11
progress to continue. So after this is merged work can continue on bothpyproject.toml
andpybind11
independently.