conda-forge / vtk-feedstock

A conda-smithy repository for vtk.
BSD 3-Clause "New" or "Revised" License
13 stars 64 forks source link

Dev/Nightly builds? #90

Closed banesullivan closed 4 years ago

banesullivan commented 5 years ago

Would it be possible to add a channel or some way of building the latest changes in VTK proper? That way these python binding could be kept up to date with the latest VTK features.

FYI: https://discourse.vtk.org/t/nightly-python-releases-on-anaconda/1739

grlee77 commented 5 years ago

I think uploading prerelease / dev versions was generally discouraged in the past, but with Azure builds there are much more CI resources available than previously, so perhaps it may be more feasible now?

I did find that there is a prerelease label for conda-forge. Currently it seems to have only pre-release versions of Python 3.8 and fenics: https://anaconda.org/conda-forge/repo/files?label=prerelease see also: https://github.com/conda-forge/conda-forge.github.io/issues/147

I think you will need to check in with some core devs on whether they are open to doing this for other packages like VTK. The second question is then who is going to do the maintenance of updating the recipe on a more frequent basis?

banesullivan commented 5 years ago

but with Azure builds there are much more CI resources available than previously, so perhaps it may be more feasible now?

That is definitely what I am thinking... plus tons of anaconda sponsored projects have dev labels on their channels like bokeh: https://anaconda.org/bokeh/bokeh/labels

I did find that there is a prerelease label for conda-forge. Currently it seems to have only pre-release versions of Python 3.8 and fenics: https://anaconda.org/conda-forge/repo/files?label=prerelease see also: conda-forge/conda-forge.github.io#147

The dev label appears to be a lot more widely used: https://anaconda.org/conda-forge/repo/files?label=dev

I think you will need to check in with some core devs on whether they are open to doing this for other packages like VTK.

Who exactly do you mean by "core devs"?... The maintainers of this recipe?

The second question is then who is going to do the maintenance of updating the recipe on a more frequent basis?

Yeah... that's a great question. If someone helps me get this going and can teach me the ways of the conda, then I'd be happy to maintain it but I image I will have to solicit help from others quite often.

grlee77 commented 5 years ago

Who exactly do you mean by "core devs"?... The maintainers of this recipe?

I meant the people here who are maintainers for the conda-forge organization as opposed to just this feedstock. They will have a better idea of the burden this may place on their resources (VTK builds take quite long). Maybe just post a quick question about doing this to https://gitter.im/conda-forge with a link to this issue and see if there are any objections there.

If someone helps me get this going and can teach me the ways of the conda, then I'd be happy to maintain it but I image I will have to solicit help from others quite often.

For the most part it involves just bumping or resetting the build number and the links/sha256 for the recipe. However, for compiled libraries like VTK various changes to the build scripts may also need to be made. I am only an occasional VTK user, so having more experienced VTK maintainers would be helpful.

To start out, you can get commit rights to the repository by making a PR that just adds your github username under the maintainers section in meta.yaml

grlee77 commented 4 years ago

@banesullivan: I just came across the discussion in the following PR which is proposing conda-forge guidelines for dev/rc builds: conda-forge/conda-forge-enhancement-proposals#3

banesullivan commented 4 years ago

However, for compiled libraries like VTK various changes to the build scripts may also need to be made. I am only an occasional VTK user, so having more experienced VTK maintainers would be helpful.

@danlipsa made some awesome, up to date recipes here which he shared on the VTK discourse

Also, thanks for sharing that PR on the guidelines for labeling!

banesullivan commented 4 years ago

So we need https://github.com/conda-forge/conda-forge-enhancement-proposals/pull/3 before we could ever move forward with this as dev labels are not built at this time

banesullivan commented 4 years ago

Or maybe we could make a new feedstock and publish to a new channel to keep the dev build separate from the stable releases here? https://github.com/conda-forge/conda-smithy#making-a-new-feedstock

banesullivan commented 4 years ago

From Gitter, I was recommended to push heavily for conda-forge/conda-forge-enhancement-proposals#3

banesullivan commented 4 years ago

So it looks like https://github.com/conda-forge/cfep/pull/3 was accepted!

I would really love to have a build from the VTK master branch and especially one where the RenderingOpenVR module is enabled for windows. Do you all think this would be doable now? Perhaps have an openvr label?

xylar commented 4 years ago

It sounds like there was a feeling that nightly builds aren't feasible, and I think conda-forge maybe isn't the place for that anyway.

For release-candidate builds, I have created a dev branch in #105 and merges to that branch should create builds with the conda-forge/label/vtk_dev label.