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

Package manager manager ... discussion #904

Closed
jasnell opened this issue Aug 6, 2020 · 14 comments
Closed

Package manager manager ... discussion #904

jasnell opened this issue Aug 6, 2020 · 14 comments

Comments

@jasnell
Copy link
Member

jasnell commented Aug 6, 2020

@nodejs/tsc ... Maël Nison (@arcanis) has been working on a new project tentatively called "pmm" (package manager manager) that implements an approach that can allow us to continue to support npm as well as including support for yarn and pnpm. Rather than butcher the details myself, I'd like to invite @acanis to provide some details here, and I'd like to invite @arcanis to a future TSC call (or special dedicated call) to demo the work that they've done thus far and start a conversation about it. It's compelling work that I strongly believe should be given a fair review.

@mhdawson
Copy link
Member

Can you add the link to the repo for the project?

@jasnell
Copy link
Member Author

jasnell commented Aug 11, 2020

Repo is here: https://github.com/arcanis/pmm

@jasnell
Copy link
Member Author

jasnell commented Aug 17, 2020

Labeling this tsc-agenda to escalate it and ensure there's discussion.

@mmarchini
Copy link
Contributor

Should we move pmm to the Node.js org as a next step?

@mhdawson
Copy link
Member

@mmarchini I'm wondering if we need some level of consensus on the direction of bringing it into Node.js before asking for that. Maybe the issue asking for it to be moved in would be the place for that discussion, but I'm not sure that is visible enough based on the number of people who have commented on past requests.

@ljharb
Copy link
Member

ljharb commented Aug 27, 2020

This also seems like it would signal a pretty major direction decision made in the relative solitude of a TSC meeting, without inviting wider comment. I don't think any official encouragement or endorsement is necessary for exploration, and I think official encouragement or endorsement may be premature if the current stage is "exploration".

@jasnell
Copy link
Member Author

jasnell commented Aug 28, 2020

@mhdawson ...actually, I think those are two different questions. pmm can exist as a separate project under Node.js without us actually bundling it with the distribution. We ought to be able to move forward with that discussion in parallel if @arcanis is willing. I can open an issue in nodejs/admin to start that process.

The separate (and more difficult question) about whether we'd want to bundle pmm with the Node.js distribution is going to take much more time to consider.

@ljharb:

This also seems like it would signal a pretty major direction decision made in the relative solitude of a TSC meeting, without inviting wider comment.

I really don't get what you're saying here. No decisions have been made about anything.

@ljharb
Copy link
Member

ljharb commented Aug 28, 2020

@jasnell glad to hear that :-) what i meant was, bringing it into the node org may signal that a decision has been made.

@mmarchini
Copy link
Contributor

pmm can exist as a separate project under Node.js without us actually bundling it with the distribution

That's why I suggested it, collaboration should be easier if the project is under the Node.js org, and that doesn't imply that pmm is going to be bundled (but if we decide to bundle, being under the org is a requirement IMO) :)

@arcanis
Copy link

arcanis commented Aug 28, 2020

I'm fine with whatever you decide regarding where this project should live, I'll be happy to keep maintaining it in both orgs.

The separate (and more difficult question) about whether we'd want to bundle pmm with the Node.js distribution is going to take much more time to consider.

Something I wanted to ask - from my understanding, Node 15 is scheduled for October. I believe pmm is reaching a state where it would benefit from being evaluated in real-life conditions, and an odd release would sound the perfect fit for this. Do you think there is any chance we could schedule those discussions to happen before then, so that pmm could be part of Node 15?

Of note, since it would be an odd release, if it turns out this model doesn't work with the ecosystem after all, it would be perfectly fine to pull it out before the next even release.

@jasnell
Copy link
Member Author

jasnell commented Sep 2, 2020

I don't think we should rush anything in to 15.0.0. This can be introduced as an experimental feature anytime during the 15.x lifetime. What I'd personally like to see is:

  1. Moving the project into the nodejs github organization soon.

  2. Distributing pmm with the main distro as experimental sometime before 16.0.0 is out the door.

@arcanis
Copy link

arcanis commented Sep 22, 2020

I've made the changes we mentioned (about the offline workflow, and the engines.pm -> packageManager renaming). What would be the next step? There are a few things I plan to land this week, and after that it should be in a good state for a first review.

arcanis added a commit to arcanis/node that referenced this issue Sep 28, 2020
Corepack provides shims for Yarn and pnpm in order to soften the
developer experience when working on Node projects.

Refs: nodejs#15244
Refs: nodejs/TSC#904
@arcanis
Copy link

arcanis commented Sep 28, 2020

I've opened a PR against Node to formally keep track of the changes that would be entailed: nodejs/node#35398

arcanis added a commit to arcanis/node that referenced this issue Nov 4, 2020
Corepack provides shims for Yarn and pnpm in order to soften the
developer experience when working on Node projects.

Refs: nodejs#15244
Refs: nodejs/TSC#904
@mhdawson
Copy link
Member

@jasnell given the vote/decision on corepack can this be closed ?

@jasnell jasnell closed this as completed May 17, 2021
arcanis added a commit to arcanis/node that referenced this issue Jul 31, 2021
Corepack provides shims for Yarn and pnpm in order to soften the
developer experience when working on Node projects.

Refs: nodejs#15244
Refs: nodejs/TSC#904
arcanis added a commit to arcanis/node that referenced this issue Aug 18, 2021
Corepack provides shims for Yarn and pnpm in order to soften the
developer experience when working on Node projects.

Refs: nodejs#15244
Refs: nodejs/TSC#904
jasnell pushed a commit to nodejs/node that referenced this issue Aug 25, 2021
Corepack provides shims for Yarn and pnpm in order to soften the
developer experience when working on Node projects.

Refs: #15244
Refs: nodejs/TSC#904

PR-URL: #39608
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
targos pushed a commit to nodejs/node that referenced this issue Sep 6, 2021
Corepack provides shims for Yarn and pnpm in order to soften the
developer experience when working on Node projects.

Refs: #15244
Refs: nodejs/TSC#904

PR-URL: #39608
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
aduh95 pushed a commit to aduh95/node that referenced this issue Oct 16, 2021
Corepack provides shims for Yarn and pnpm in order to soften the
developer experience when working on Node projects.

Refs: nodejs#15244
Refs: nodejs/TSC#904

PR-URL: nodejs#39608
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
aduh95 pushed a commit to aduh95/node that referenced this issue Dec 7, 2021
Corepack provides shims for Yarn and pnpm in order to soften the
developer experience when working on Node projects.

Refs: nodejs#15244
Refs: nodejs/TSC#904

PR-URL: nodejs#39608
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
aduh95 pushed a commit to aduh95/node that referenced this issue Jan 14, 2022
Corepack provides shims for Yarn and pnpm in order to soften the
developer experience when working on Node projects.

Refs: nodejs#15244
Refs: nodejs/TSC#904

PR-URL: nodejs#39608
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
richardlau pushed a commit to nodejs/node that referenced this issue Jan 25, 2022
Corepack provides shims for Yarn and pnpm in order to soften the
developer experience when working on Node projects.

Refs: #15244
Refs: nodejs/TSC#904

PR-URL: #39608
Backport-PR-URL: #40479
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
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

6 participants