Wheel or Alternative Package Support in Conda-Build

What is the status or direction of alternative package support (like Python Wheels, RPM, DEB, and so on)? Conda-Build does have some native support for wheels (link to conda-build doc) and there have been some discussions for adding more (GitHub discussion. However, the discussions have not moved forward and existing support is horribly broken.

For the last couple of weeks, I’ve been trying to get conda-build to build both a wheel and Conda package for a package that heavily uses C/C++ extensions, and it has been very difficult. You can see some of the problems I ran into here: Issues when building both `wheel` and `conda` package · Issue #5142 · conda/conda-build · GitHub.

Theoretically, I think Conda-Build supporting wheels is a great idea. I already use Conda environments and Conda-Lock to programmatically define and create build environments with C/C++ compilers, packages, and so on. It was very natural to move that to Conda-Build. But if there is no community support, what’s the point? Especially because CEP 14, the CEP that defines the new recipe format, doesn’t include the type: argument.

What are other’s thoughts of wheel or other package support in Conda-Build? Am I the only person who would fine this useful? Does anyone know of any alternatives, or any recommendations for a single setup for building both Wheel and Conda packages? Any advise is appreciated!

I don’t think it is really conda-build’s job to build wheels or other formats for other packaging systems. But if you want you are building a pure python package and want to generate both a wheel and a corresponding conda package, you can use my whl2conda tool instead of conda-build to generate the conda package directly from a wheel.

Sounds interesting. But based on the Limitations page, it only works for packages without C/C++ extensions. Not really what I’m looking for, since I heavily use conda for its Python and C/C++ integration

Yeah, whl2conda is currently for pure python only. It probably could also be made to work for your case, but it isn’t my top priority…