Separate build/host and run dependencies in meta.yaml #1476
Closed
Description
In meta.yaml
I think it would make sense to differentiate between build/host and run dependencies, same as conda does https://conda-forge.org/docs/maintainer/adding_pkgs.html#build-host-and-run
This would,
- improve the parallelism for building packages. Since for instance, a number of packages depend on scipy, by few actually need scipy to build, and right now all those packages are waiting for scipy to build.
- allow us to explicitly check that build dependencies are available (and if necessary install them). Which should address issues like Flaky scipy build #936
Currently the problem for this migration is that we are using setup.py build
which doesn't have a --no-deps
version as far as I can tell, and so will fetch all dependencies at this step.
Another possible workaround I considered would be to monkeypatch socket.socket
at install time to prevent internet access, but I think it's able to escape that as setuptools uses subprocess internally.
Also related to #795