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

[RRFC] Deprecating the npx package from the public registry #238

Open
ruyadorno opened this issue Sep 23, 2020 · 11 comments
Open

[RRFC] Deprecating the npx package from the public registry #238

ruyadorno opened this issue Sep 23, 2020 · 11 comments

Comments

@ruyadorno
Copy link
Contributor

ruyadorno commented Sep 23, 2020

⚠️ [DISCLAIMER]: npx as a command now lives within the npm cli, it's not going anywhere and we love it - this discussion is only about deprecating the npx package published in the npm registry.


We know we want to deprecate the npx package but what exactly does that mean?

  • Simply putting up a deprecation notice for the package in the registry?
  • Cut a new major version and point it to install npm instead?
  • Some other/diff ideas?
@ruyadorno ruyadorno added the Agenda will be discussed at the Open RFC call label Sep 23, 2020
@wesleytodd
Copy link

I have heard this a few times, but I am pretty strongly against this idea. It is now deeply ingrained in many folks workflows. Wouldn't it be better to just re-purpose the package on top of whatever new approach you prefer to maintain?

@ruyadorno
Copy link
Contributor Author

ruyadorno commented Sep 23, 2020

@wesleytodd awesome to hear from you! Yeah, I was expecting that there could be some concerns so I think it's a great point to talk about during the OpenRFC call and make sure we are aware of all the implications! 😊

@thescientist13
Copy link

thescientist13 commented Sep 23, 2020

We know we want to deprecate the npx package but what exactly does that mean?

Is there any additional context available here or discussion to follow on this topic? In particular understanding the motivation to deprecate it and what the alternative being proposed is (if any)?

I (personally) think npx was a great addition to the ecosystem and favor it as much as possible instead of having to install global packages for something as trivial as say firing up a quick webserver "inline", e.g.

$ npx http-server

@ruyadorno
Copy link
Contributor Author

hi @thescientist13 thanks for the comment, it just made me realize some people might not be aware of all the context so I added a big disclaimer there on top:

⚠️ [DISCLAIMER]: npx as a command now lives within the npm cli, it's not going anywhere and we love it - this discussion is only about deprecating the npx package published in the npm registry.

@ruyadorno ruyadorno changed the title [RRFC] Deprecating npx [RRFC] Deprecating the npx package from the public registry Sep 23, 2020
@thescientist13
Copy link

AH, phew! 😅

Appreciate the clarification there. 👍

@ljharb
Copy link
Contributor

ljharb commented Sep 23, 2020

How many people actually use/install the npx package from the registry, since npx comes with modern versions of npm?

@darcyclarke
Copy link
Contributor

@ljharb ~56k weekly downloads

@ljharb
Copy link
Contributor

ljharb commented Sep 23, 2020

@darcyclarke do you have any internal metrics that tell you if those are being installed by an npm that already ships with npx? ie, can you filter out the installs that arguably aren't needed?

@remyrylan
Copy link
Contributor

remyrylan commented Sep 23, 2020

Just to put in perspective: 56k weekly downloads are about 2.75% of the 2 million+ weekly downloads the npm package gets. My vote (not worth much, I know) is to rip the bandage off and officially mark the npx package as deprecated once npm v7 is released. The deprecation message should be clear and state the importance of upgrading.

Maybe something like:

"npx is now integrated directly into npm v7+. There are numerous unsupported issues in this package that are fixed in the latest npm version."

@wesleytodd
Copy link

wesleytodd commented Sep 23, 2020

These are long tail migrations. What are the benefits of adding a deprecation warning (which will be disruptive)? Seems to me there should be some big benefits to justify it until npm 7 has seen significant adoption.

So share some data, of the projects I am able to reliably query at work, 12% of active projects are still not on npm@6.

EDIT: and to be clear, I am not saying this would disrupt those projects, just that saying "it is in npm@7" doesn't solve things for everyone.

@ljharb
Copy link
Contributor

ljharb commented Sep 23, 2020

Another point is that if you don't want to force your consumers to have npm 7, or even an npm with npx, you'd want to add npx as a dependency.

@darcyclarke darcyclarke removed the Agenda will be discussed at the Open RFC call label Oct 7, 2020
@darcyclarke darcyclarke added the Agenda will be discussed at the Open RFC call label Oct 14, 2020
@darcyclarke darcyclarke removed the Agenda will be discussed at the Open RFC call label Oct 21, 2020
ruyadorno added a commit to npm/npx that referenced this issue Mar 9, 2021
Follow up from the RFC discussions, add a deprecation notice to the README as a first step into deprecating/archiving this repo.

Ref: npm/rfcs#238
Ref: https://github.com/npm/rfcs/blob/cbf076b7a58be9d39d12bd8b91c8cf89612bf8c3/meetings/2020-10-14.md
ruyadorno added a commit to npm/npx that referenced this issue Mar 9, 2021
Follow up from the RFC discussions, add a deprecation notice to the README as a first step into deprecating/archiving this repo.

Ref: npm/rfcs#238
Ref: https://github.com/npm/rfcs/blob/cbf076b7a58be9d39d12bd8b91c8cf89612bf8c3/meetings/2020-10-14.md
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

7 participants
@ljharb @ruyadorno @remyrylan @darcyclarke @thescientist13 @wesleytodd and others