wdio is used in tests only, does not install in some platforms (z/OS) - make it optional#509
wdio is used in tests only, does not install in some platforms (z/OS) - make it optional#509IgorTodorovskiIBM wants to merge 2 commits intouuidjs:masterfrom
Conversation
|
@IgorTodorovskiIBM are you trying to develop |
|
And out of curiosity: Are we really talking about https://en.wikipedia.org/wiki/OS/390? 😲 |
|
Yeah, it's z/OS actually. UUID part of CITGM (https://github.com/nodejs/citgm) and we're trying to get the uuid test passing. It clones the repo, does an hmm, I see that there's no optionalDevDependencies support. |
|
OK. Could you elaborate a bit more on why you need to install it that way and why you need to get the tests passing? I think a bit more context would help us to find a suitable solution. |
|
Sure, we're porting Node.js to z/OS and CITGM is one group of tests that the Node community runs. We're trying to get that to 100%. UUID is listed in the set of tests (https://github.com/nodejs/citgm/blob/master/lib/lookup.json). CITGM only fetches the uuid source from github and then runs |
|
Got it, thanks! BTW I was not aware of Unfortunately, putting the I guess we'll have to find a different way but I think I'll have to do some research. |
|
An ugly workaround that comes to my mind would be to put all Does anyone have better ideas? |
|
@MylesBorins do you maybe have a good idea of how to handle this issue? I can well imagine that |
|
@ctavan The wrapper module approach is a reasonable idea... it's basically what chokidar does to make fsevents optional for file watching. If it would take a bit to work this out we very well can skip this for 390x until it's ready |
Thanks for the quick reply! @IgorTodorovskiIBM should comment how urgent getting the tests green is for them. I think I can get the wrapper approach done within a couple of days. |
That would be great! It's not urgent |
WebdriverIO which we use for browser testing cannot be installed on some platforms like z/OS. In order to allow "Canary in the Goldmine" (https://github.com/nodejs/citgm) to be run on such platforms as well we need to install WebdriverIO as an optional devDependency. Unfortunately npm doesn't support this out-of-the-box, so we have to wrap the affected dependencies in a small local wrapper package. Fixes #509.
WebdriverIO which we use for browser testing cannot be installed on some platforms like z/OS. In order to allow "Canary in the Goldmine" (https://github.com/nodejs/citgm) to be run on such platforms as well we need to install WebdriverIO as an optional devDependency. Unfortunately npm doesn't support this out-of-the-box, so we have to wrap the affected dependencies in a small local wrapper package. Fixes #509.
WebdriverIO which we use for browser testing cannot be installed on some platforms like z/OS. In order to allow "Canary in the Goldmine" (https://github.com/nodejs/citgm) to be run on such platforms as well we need to install WebdriverIO as an optional devDependency. Unfortunately npm doesn't support this out-of-the-box, so we have to wrap the affected dependencies in a small local wrapper package. Fixes #509.
WebdriverIO which we use for browser testing cannot be installed on some platforms like z/OS. In order to allow "Canary in the Goldmine" (https://github.com/nodejs/citgm) to be run on such platforms as well we need to install WebdriverIO as an optional devDependency. Unfortunately npm doesn't support this out-of-the-box, so we have to wrap the affected dependencies in a small local wrapper package. Fixes #509.
WebdriverIO which we use for browser testing cannot be installed on some platforms like z/OS. In order to allow "Canary in the Goldmine" (https://github.com/nodejs/citgm) to be run on such platforms as well we need to install WebdriverIO as an optional devDependency. Unfortunately npm doesn't support this out-of-the-box, so we have to wrap the affected dependencies in a small local wrapper package. Fixes #509.
|
@IgorTodorovskiIBM see #510 for a potential solution. |
|
Thanks, I'll close this PR |
WebdriverIO which we use for browser testing cannot be installed on some platforms like z/OS. In order to allow "Canary in the Goldmine" (https://github.com/nodejs/citgm) to be run on such platforms as well we need to install WebdriverIO as an optional devDependency. npm doesn't support this out-of-the-box but fortunately there is https://github.com/bcoe/optional-dev-dependency which does precisely what we need. Fixes #509
The wdio node module is not supported on os390, preventing uuid from being installed. Since wdio is used for specific testing purposes only, I made it an optionalDependency. That way, if wdio fails to install, uuid will still be installed successfully.