darkguy2008 / parallelshell

Run multiple shell commands in parallel
501 stars 44 forks source link

child_process throwing error ('"cwd" must be a string') #57

Closed MeanTeam closed 7 years ago

MeanTeam commented 7 years ago

throw new TypeError('"cwd" must be a string'); TypeError: "cwd" must be a string at normalizeSpawnArguments (child_process.js:380:11) at exports.spawn (child_process.js:465:38)

The problem comes from cwd: process.cwd, I am thinking this could be solved executing the function to get the current path directory string: cwd: process.cwd(),

Using node 8.0.0 and npm 5.0.1

evolutionxbox commented 7 years ago

Also using node 8.0.0 and npm 5.0.0

I've tried reinstalling parallelshell, but am met with another error

node-pre-gyp http GET https://fsevents-binaries.s3-us-west-2.amazonaws.com/v1.1.1/fse-v1.1.1-node-v57-darwin-x64.tar.gz
node-pre-gyp http 404 https://fsevents-binaries.s3-us-west-2.amazonaws.com/v1.1.1/fse-v1.1.1-node-v57-darwin-x64.tar.gz

Are they related?

PierBover commented 7 years ago

Same here... using Node 8 and NPM 5.0.1

darkguy2008 commented 7 years ago

I've fixed it and made my own fork here: https://github.com/darkguy2008/parallelshell, I've also updated all the package.json libraries and made it work with latest mocha.

Unfortunately I have no idea how to push this to npm... and npm-run-all doesn't cut it, I like paralleshell as it doesn't need me to install something globally, and it works pretty well... it just needed some small fixes for Node 8.0. I'd rather use and maintain something that just works...

PierBover commented 7 years ago

I moved to npm-run-all and it didn't require me to install anything globally.

darkguy2008 commented 7 years ago

Yeah but the syntax and all looks different, and the documentation doesn't help me to understand how to use it (or how to migrate from parallelshell), so I'd rather use my own fixed version :/

PierBover commented 7 years ago

To run scripts in parallel: run-p some-npm-script some-other-npm-script

darkguy2008 commented 7 years ago

Well, that worked! the documentation for npm-run-all was really confusing, your example was very clear and concise. Thanks!. Ah well, I still fixed the error in parallelshell haha, in case anyone is interested I'll keep the github repo :)

keithamus commented 7 years ago

@darkguy2008 if you'd like I'd be happy to give you the commit bit for this repo, which would allow you to publish the fix for the canonical parallelshell npm package.

darkguy2008 commented 7 years ago

@keithamus Hello Keith, oh really? :O that would be awesome! I could also submit a PR if you wish. In any case, I'd be really happy to help :) let me know what do you prefer so I can prepare the files with the fix 👍

keithamus commented 7 years ago

@darkguy2008 you've been invited 😄. Feel free to manage the repo how you want! I'll give you publish rights on npm also if you give me your npm username.

darkguy2008 commented 7 years ago

Awesome! Thanks a lot :) I'll take good care of it :D Sure, my npm username is the same one as here, darkguy2008. I needed to use it on a project so I made a package (parallelshell-v8) using my branch, I'll delete it now that I have access here and apply the fixes in your repo. Thanks again! 👍 I'll do it when I'm back home, as I'm at work atm.

maoberlehner commented 7 years ago

@darkguy2008 working long hours, huh? ;)

Would be cool if this gets fixed in the not so distant future. Let me know if I can help.

darkguy2008 commented 7 years ago

@maoberlehner Hello! Kind of haha, I had some very busy days lately, however, don't worry, I'm kinda free today so I'll do it in the upcoming hours - stay tuned :D !

darkguy2008 commented 7 years ago

This has been fixed :). Closing issue!

screen shot 2017-06-12 at 7 56 02 pm

maoberlehner commented 7 years ago

Thx for fixing this. Please do not forget to publish a new release on npm. thx :)

darkguy2008 commented 7 years ago

@maoberlehner you're welcome! I've just published a new version of the package :)

jimmynotjim commented 7 years ago

Thanks for this fix, I came here for the same issue.

Could you add the release on GitHub so it's clear v2.0.0 isn't the latest if you arrive here instead of the NPM listing. Thanks.

zeratax commented 6 years ago

it seems like this is an issue again with node 10.1.0

$ parallelshell "echo 1" "echo 2" 
child_process.js:413
    throw new ERR_INVALID_ARG_TYPE('options.cwd', 'string', options.cwd);
    ^

TypeError [ERR_INVALID_ARG_TYPE]: The "options.cwd" property must be of type string. Received type function
    at normalizeSpawnArguments (child_process.js:413:11)
    at spawn (child_process.js:515:38)
    at /home/user/.nvm/versions/node/v10.1.0/lib/node_modules/parallelshell/index.js:104:17
    at Array.forEach (<anonymous>)
    at Object.<anonymous> (/home/user/.nvm/versions/node/v10.1.0/lib/node_modules/parallelshell/index.js:100:6)
    at Module._compile (internal/modules/cjs/loader.js:678:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:689:10)
    at Module.load (internal/modules/cjs/loader.js:589:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:528:12)
    at Function.Module._load (internal/modules/cjs/loader.js:520:3)
$ node --version
v10.1.0
powelmaja commented 6 years ago

@ZerataX I had the same for node 10.x. Downgrade of parallelshell to 3.0.1 helped for me.

burns-brian commented 6 years ago

I had the same issue, and @ZerataX is correct. "Downgrade of parallelshell to 3.0.1" is the workaround. The problem is with 3.0.2.

jydoskey commented 5 years ago

thanks @powelmaja this issue is with parallelshell 3.0.2, had to downgrade to 3.0.1 and its working perfectly well

tKartik commented 5 years ago

@ZerataX I had the same for node 10.x. Downgrade of parallelshell to 3.0.1 helped for me.

Thankyou so much for this!

mametur commented 4 years ago

https://stackoverflow.com/questions/53461626/problem-running-parallelshell-nodejs-script

this one works for me

pm0u commented 3 years ago

Can this be re-opened? Still happening to me, node 14.16.0 -- downgrading to 3.0.1 fixed