-
Notifications
You must be signed in to change notification settings - Fork 24
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Windows VC matrix #65
Comments
Friendly nudge @pelson. 😄 Continuing to suffer without this functionality. See this re-rendering PR ( conda-forge/tk-feedstock#8 ) for an example. Any chance we could add |
I guess the most important one to xref is: #36 |
SGTM. Would it help to have |
Could you please also weigh in on this discussion @msarahan ? |
We might be able to get around a matrix by doing clever hacks like PR ( conda-forge/tk-feedstock#20 ), but I don't know if we should be rolling that out on a large scale. Maybe |
@jakirkham - what is the status on VC nowadays? Would you like me to resurrect #36, or shall we keep holding fire on that until we have a conda-build 3 usage plan (if we don't already)? |
I'm pretty happy with the solution devised in PR ( conda-forge/tk-feedstock#20 ) even if it may be a hack. FWIU there is a solution in |
cb3 uses variants, and one of the keys is vc: https://github.com/AnacondaRecipes/qt-feedstock/blob/master/recipe/meta.yaml#L49 As for CB3 usage plan, I think that there are two steps, as I outlined at conda/conda-build@a617f57#commitcomment-24461476
Where conda-build 3 and conda-build-all differ most is that cb3 supports an arbitrary variable space, whereas c-b-a is limited to what conda-build 2 supports, which is numpy, python, perl, lua, and R. CB3 supports the same env vars as cb2, but the arbitrary extensibility doesn't translate into env vars. If you can think up a good way to have it available in env vars, I'd happily accept it. Perhaps it could be something like the way that conda does its configuration vars, CONDA_* |
TBH I think moving away from environment variables might be healthier. The trick that I imagine with doing this is creating sensible CI matrices from it. Though that is a problem at the |
yeah, environment variables are not as nice, but they do make moving across multiple CI worker instances easier. Having temporary files makes the build infrastructure quite a bit more complicated. |
Thanks the the insights. I'm going to close this out - the proof of concept in #36 is the way I'd solve the problem for CB2, but CB3's variants is the right way to go IMO. I'm definitely up for having conda-build-all/conda-smithy/conda-whatever generate the right If anything, just having conda-build-all and conda-build 3 playing together would be a nice first step. |
While we have discussed this several places before, wasn't seeing this tracked anywhere. So thought it best to open an issue here. Guessing we will need to handle VC correctly here before we can address it in
conda-smithy
.Currently in order to get a package to build with multiple VC runtimes, we need to add
python
as abuild
dependency and track a feature. However, this has proved impractical and in some cases limiting. Instead discussion over the past several months has concluded the best way forward is to have a separatevc
package for tracking the compiler thatpython
and other packages track. Though ultimately this must be addressed with some kind of matrix. While we can find somewhat effective ways to do this manually,conda-build-all
has reigned supreme at helping convert an implicit matrix to an explicit matrix (via leveraging byconda-smithy
). Hence I'm raising this here to ask thatvc
be handled in the matrix configuration used bystaged-recipes
and can picked up withconda-smithy
for use in the feedstocks. There are already some considerations about how this might play out.xref: conda-forge/glpk-feedstock#10
xref: conda-forge/tk-feedstock#2
xref: conda-forge/curl-feedstock#11
xref: conda-forge/conda-smithy#245
cc @jjhelmus @msarahan
The text was updated successfully, but these errors were encountered: