Comments (11)
I guess the most important one to xref is: #36
That PR needs resurrecting, and we should be good to go, right?
from conda-build-all.
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
- Using cb3 with conda-build-all. I hope this is a drop-in thing. I tried to maintain the backward compatibility.
- Taking advantage of cb3's build matrices while also maintaining the job splitting capability of conda-build-all. This is a little bit bigger project. It will probably largely duplicate concepts in https://github.com/conda/conda-concourse-ci (but c3i can probably be said to have duplicated conda-build-all). Specifically, conda-build-all or something like it render output metadata, then write that output data to a temporary location to be used by the build servers, or alternately, store environment variables as necessary.
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_*
from conda-build-all.
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 vc
detection to the version matrix?
from conda-build-all.
SGTM. Would it help to have conda-build
learn more about VC long term? ( conda/conda-build#1445 )
from conda-build-all.
Could you please also weigh in on this discussion @msarahan ?
from conda-build-all.
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 conda-build
3 has better solutions available?
from conda-build-all.
@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)?
from conda-build-all.
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 conda-build
3 that is different, but have had no time to familiarize myself with it. Maybe @msarahan can comment. My guess is we can close this though.
from conda-build-all.
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 conda-smithy
level. Depending on what the answer is to that question, it may make more sense to go to conda-build
directly from conda-smithy
or preserve the status quo (i.e. conda-smithy
-> conda-build-all
-> conda-build
).
from conda-build-all.
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.
from conda-build-all.
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 conda_build_config.yaml
if necessary.
If anything, just having conda-build-all and conda-build 3 playing together would be a nice first step.
from conda-build-all.
Related Issues (20)
- Update conda-build to 2.0.1? HOT 3
- Support CONDA_LUA in matrix HOT 3
- Exclude conda-build version 2.0.9 HOT 2
- Bug with conda-build 2.0.11 and above. HOT 2
- Handling R/CONDA_R correctly HOT 1
- Problem with numpy/openblas in staged-recipes HOT 4
- AttributeError: 'Dist' object has no attribute 'fn' from rerender HOT 22
- Selector resolution problem / Python 2,3 compatibility issue? HOT 2
- KeyError: 'python-1.0.1-0.tar.bz2' from rerender HOT 11
- Packages missing in current linux-64 channels HOT 2
- Adding option of excepting failing builds due to missing dependencies.
- Exception raised with anaconda-client 1.6.3
- feaure to : build-all, convert all, upload all? HOT 1
- Migrate history from conda-forge HOT 2
- Fails with conda-build 3.0.3 HOT 10
- New release HOT 2
- conda-build-all not compatible with conda-4.3.23 HOT 9
- DirectoryDestination.make_available Passes List rather than String HOT 8
- Compatibility with conda-build=3 HOT 1
- Unsupported conda version: 4.5.5 HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from conda-build-all.