-
Notifications
You must be signed in to change notification settings - Fork 66
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
Question: Is there a way to emit current matrix information in user code? #139
Comments
Here is the commit that is failing because The corresponding TravisCI job is https://travis-ci.org/sass/node-sass/jobs/50524897#L582. You will notice that io.js job, all calls to I think this could be the better solution than making users write a runtime-redirection script for npm? |
Oh, could you please elaborate what do you mean? |
With io.js job, |
Thanks for pointing that out. I did not noticed that up until now that io.js packs binaries with both aliases. The trouble is, our script relies on |
@FeodorFitsner, nvmw downloads only io.js and then they make a copy of :: Created by nvmw, please don't edit manually.
@IF EXIST "%~dp0\iojs.exe" (
"%~dp0\iojs.exe" %*
) ELSE (
iojs %*
) node-sass uses C++ add-on and it will cause many issues only by using different exec (which emits different process information), not only by node-sass but also the pangyp, which is a cross-runtime build tool for all iojs, node.js and atom-shell. Which means we do not need node.exe in iojs folder. All we need is node.cmd like the one nvmw has to offer. Again the only difference between iojs.exe and node.exe with same version is the different process information, on which some script are relying heavily. And IMO this is the only use-case in io.js job: to use iojs.exe when the command is invoked with |
I'm not sure the way you detect node.js/io.js runtime is correct. You rely on availability of redirecting |
Here is the latest version: extensions.js#L11-L24. This is still debateable how to identify the runtime as you can see here: nodejs/node-gyp#564. Meanwhile our solution to identify runtime is working out fine. For Linux, io.js provides a symlink called † that line is not necessary to resolve the symlink on Linux, it is also a Windows-only issue in libuv. see: nodejs/node#851 & libuv/libuv#206. |
With multiple node-like runtimes (sass/node-sass#655), there is are use-cases which demand awareness of current runtime (io.js, node.js, atom-shell).
On TravisCI, we can call Linux
which node
command to get the full path of the executable the current matrix is using (they switch the version withnvm
and hencewhich
returns the absolute path to active version's executable). Is there a way to get that information from AppVeyor?Note that this is different that identifying the runtime within JS script. We need it to instantiate the npm jobs defined in package.json (such as
npm test
) with corresponding runtime (as opposed to genericnode node_modules/blah
).The text was updated successfully, but these errors were encountered: