cadquery
cadquery copied to clipboard
Make versioned conda builds between releases
NOTE: this is a work in progress. PR opened for discussion and to get Pipelines running.
What's the problem?
It's not possible to pin the package version in conda between releases. There's a ton of cool stuff in CadQuery only available in the development version that one might want to use without necessarily following the very bleeding edge of development. If I pin to cadquery=master today, I might get a different version tomorrow.
What's my solution?
- Use
setuptools_scmto automagically get version numbers based on git tags and history. - Build conda packages and mark them using these version numbers. E.g.
cadquery-2.2.dev304+g45334d0-py3.8.tar.bz2 - Publish development versions under the
devlabel (so that one can usecadquery/label/devas a channel). - Publish released versions under the
mainlabel, as usual.
Is this even a good idea?
Well, is it? Feel free to let me know if you outright believe it to be a bad idea. I'm very open to discuss the nuances of this.
I don't think we want to keep dev builds. If you really need this as a user use pip+git. It would be nice to hava a build number and automatic removal of older builds.
I solved this for my own purposes by creating a GitHub Actions workflow (https://github.com/ovidner/cadquery-dev-builder/blob/main/.github/workflows/main.yml), publishing the builds to my own Anaconda namespace, under the cq-dev label (https://anaconda.org/ovidner/cadquery). @adam-urbanczyk: feel free to close this or let me know if you want me to incorporate any of the Actions stuff into the main CQ repo. I'd love to contribute!
Thank, superseded by https://github.com/CadQuery/cadquery/pull/1315