-
Notifications
You must be signed in to change notification settings - Fork 68
ASDF #2798
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
base: main
Are you sure you want to change the base?
ASDF #2798
Conversation
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I like this and I think bringing it in definitely makes sense. I like that it brings us in line with MMS.
Looks like there's a mismatch in the pnpm versions causing a build error atm though. Might have bump some more in other places.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we need this?
✍️ Proposed changes
Replaces our implicit node & pnpm version management with a more explicit tool manager;
asdf
Running
asdf install
ensures all contributors are using the same version of Node & pnpm, which can avoid versioning conflicts.Note: the MMS codebase also uses
asdf
, which would make moving between codebases easierDon't we already list these versions?
We list Node version in
engines
, and thepnpm
version is already identified twice, inengines
andpackageManager
, so this may seem like a third source of truth.But
asdf install
will actually install the correct version, whereas the "engines" attribute will only tell you if you're out of dateAlternatives
An alternative to
asdf
would benvm
(which many of us already use).We could set the required node version in a
.nvmrc
file, which would solve the Node versioning issue.Ensure you have the correct Node version with
nvm install
.,However, installing the correct
pnpm
version requires another tool;corepack
.This would require contributors to manually enable the tool (
corepack enable
) and install the correct versioncorepack install [email protected]
.As far as I can tell, there is no version file we can write to that will automatically install
corepack
dependencies