Conda-build: Use conda build to create Python wheels

Created on 1 Sep 2016  路  6Comments  路  Source: conda/conda-build

Would there be support or interest for having the ability to use conda build to create Python wheels?

My though would be to use the conda build framework to create a conda environment where the command/script (typically python setup.py bdist_wheel) to build the wheel is executed. Then copy this whl file to the conda build output directory in place of a post step. The test phase would install this whl file into the test environment before running the tests.

Is this feature of interest to others? I have a proof of concept implementation that I am willing to continue to develop if there is interest.

Most helpful comment

Yes! This is most definitely of interest. Anything that can help bridge the gap between conda packaging and pip/setuptools/distutils/distribute/pbr/wheels is a good thing!

In the long term, I'm hoping that we'll have pluggable support for different output types - conda packages and wheels being just two of many. Any implementation you put forth now will help us think about and discuss that. I'll happily merge it in whatever state you have, and go from there.

All 6 comments

Yes! This is most definitely of interest. Anything that can help bridge the gap between conda packaging and pip/setuptools/distutils/distribute/pbr/wheels is a good thing!

In the long term, I'm hoping that we'll have pluggable support for different output types - conda packages and wheels being just two of many. Any implementation you put forth now will help us think about and discuss that. I'll happily merge it in whatever state you have, and go from there.

+1 for conda wheel

Implemented in #1576 - closing. See docs at https://github.com/conda/conda-docs/pull/388

@msarahan what platform does conda build a wheel for? Is this a viable way to build wheels for multiple platforms?

@zfrenchee conda build will create a whl for the platform you are running the command one. For packages that produce universal wheels a universal whl file will be produced. I believe you will still need access to multiple machines to build wheels for multiple platforms.

Yes, what @jjhelmus says is correct. In general, conda-build is not quite as good at making wheels as other command line tools. Long-term, we want to be able to create wheels directly (we currently basically run any binary build steps twice.) When we are able to do that, we'll also be able to harness some of the recent work we've done on cross-compiling. It won't be the simplest way to get the job done, but it might take less work overall.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

groutr picture groutr  路  9Comments

pmlandwehr picture pmlandwehr  路  9Comments

krinsman picture krinsman  路  8Comments

sebastian-luna-valero picture sebastian-luna-valero  路  6Comments

asmeurer picture asmeurer  路  3Comments