Skip to content
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

v2 #191

Closed
sindresorhus opened this issue Mar 10, 2019 · 17 comments
Closed

v2 #191

sindresorhus opened this issue Mar 10, 2019 · 17 comments
Labels
Milestone

Comments

@sindresorhus
Copy link
Owner

@ehmicky Is there anything you think we should improve with the API? Since it's a major version, we can do breaking changes if it's beneficial.

@sindresorhus sindresorhus added this to the v2 milestone Mar 10, 2019
@sindresorhus
Copy link
Owner Author

I have created a v2 milestone: https://github.com/sindresorhus/execa/milestone/1

@ehmicky
Copy link
Collaborator

ehmicky commented Mar 10, 2019

It seems this major release already has lots of improvements, so this looks good to me. From a developer experience standpoint nothing comes to my mind.

The milestone issues and PRs to work on look good.

@sindresorhus
Copy link
Owner Author

I also want to make .signal be undefined instead of null when not available. I'm trying to limit my null usage for consistency.

execa/index.js

Line 164 in 7f8d911

error.signal = signal || null;

@ehmicky
Copy link
Collaborator

ehmicky commented Mar 15, 2019

I can open a PR to remove null from signal.

null is also set to result's stdout, sderr and all when standard streams options are set to either null or undefined. Should that be removed as well?

@sindresorhus
Copy link
Owner Author

Yes

@ehmicky
Copy link
Collaborator

ehmicky commented Mar 15, 2019

Done in #193.

@arcanis
Copy link

arcanis commented Mar 28, 2019

Please please please do something about preferLocal 🙏

Yarn already sets the PATH when running scripts so that the right Yarn binary (and all other binaries that your application should have access to) is always in the PATH. But because execa modifies it as well (and it does it without actually knowing which paths it should use, it only makes assumptions), it ends up overriding the Yarn-generated folder. In the end, the wrong files are called.

I would strongly suggest defaulting it to false, as it's very intrusive and can lead to pretty hard to debug issues (I myself spent an indecent amount of time trying to figure out what happened before I started to consider that maybe execa was doing something strange).

@ehmicky
Copy link
Collaborator

ehmicky commented Mar 28, 2019

@arcanis thanks for reporting this. Is there already a GitHub issue about this in this repository? If not, this might be better to open a separate issue. Also some minimally reproducible code would us help out with this problem.

@arcanis
Copy link

arcanis commented Mar 28, 2019

@ehmicky sure, I put more details on #196

@ehmicky
Copy link
Collaborator

ehmicky commented May 8, 2019

@sindresorhus Should we do a beta release right away? Without updating the latest npm tag. Like this, as we are waiting for the few items left to be merged, some users can try it out. There are quite many breaking changes, so it might be a good idea to avoid too many issues during the public release.

Also: should we add any of the new PRs to the v2 milestone?

@sindresorhus
Copy link
Owner Author

Should we do a beta release right away? Without updating the latest npm tag. Like this, as we are waiting for the few items left to be merged, some users can try it out.

From experience, there's not much point. I tried doing prereleases many times in the past and nobody bothered to try it out (I know because the prerelease was broken, but nobody reported it). If someone wants to try it, they can just npm i sindresorhus/execa anyway.

@arcanis
Copy link

arcanis commented May 17, 2019

So #196 won't be part of the release? 🙁

@ehmicky
Copy link
Collaborator

ehmicky commented May 17, 2019

The reason I was asking was also because:

@sindresorhus
Copy link
Owner Author

We've had several issues where people were wondering why they can't use some of the new features (like TypeScript). This would solve this problem until we get the major release ironed out.

It probably wouldn't as they would not get the new version by default, so they would still open an issue, and we would have to tell them how to install a prerelease.

@sindresorhus
Copy link
Owner Author

So #196 won't be part of the release? 🙁

We intend to solve it, but it's a complex issue with no clear outcome that satisfies all parties...

@ehmicky
Copy link
Collaborator

ehmicky commented Jun 18, 2019

There's an alpha version of v2 out now: https://github.com/sindresorhus/execa/releases/tag/v2.0.0-alpha.0

Install it with npm install execa@next.

Please share feedback here or in new issues.

@ehmicky
Copy link
Collaborator

ehmicky commented Jun 25, 2019

We just released 2.0.0. Please check the Medium article!

@ehmicky ehmicky closed this as completed Jun 25, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants