py-pybind11: 2.9.1#29387
Conversation
Add the latest releases of pybind11.
|
tested with |
adamjstewart
left a comment
There was a problem hiding this comment.
Can you add the following deps (and versions) from pyproject.toml:
requires = ["setuptools>=42", "wheel", "cmake>=3.18", "ninja"]wheel is added by the base class so you can skip that one.
according to `pyproject.toml`
|
@adamjstewart ok, done :) |
| version('2.1.0', sha256='2860f2b8d0c9f65f0698289a161385f59d099b7ead1bf64e8993c486f2b93ee0') | ||
|
|
||
| depends_on('py-setuptools', type='build') | ||
| depends_on('ninja', type='build') |
There was a problem hiding this comment.
I think we want deps on py-cmake and py-ninja. Not sure if it actually makes any difference, but that's what pip would check for
There was a problem hiding this comment.
We just need cmake and ninja on our PATH, no need to pull them in via pypa packages.
Pip declares them because for pip its the only way to consistently & automatically fetch them.
There was a problem hiding this comment.
My only concern is what will happen if pip doesn't find those deps. I think that it will be fine since we use --no-deps, but I wonder what would happen if we moved from pip to build/installer which doesn't have that option.
There was a problem hiding this comment.
Correct, it will ignore them with --no-deps.
There was a problem hiding this comment.
As far as I understand, build intentionally has no dependency resolution.
No, it will check build dependencies from PEP517, but it has --skip-dependency-check for us.
https://pypa-build.readthedocs.io
There was a problem hiding this comment.
installer will not look at build dependencies: https://installer.readthedocs.io/en/latest/concepts/
I wonder how you would skip (runtime) dependencies there, but it's not related to the problem here :)
Add the latest releases of pybind11.