-
-
Notifications
You must be signed in to change notification settings - Fork 3.4k
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
Bump yarn to 3.6.4 #15295
Bump yarn to 3.6.4 #15295
Conversation
Thanks for making a pull request to jupyterlab! |
While the performance benefits of 4 are tempting, we'd need some canary testing of a number of complex downstreams to assess whether this buys anything valuable... the transition from 1 to 3 still hasn't demonstrated a lot of value to me, as we upgraded in an entirely-breaking way (CLI, lockfile, etc), but didn't take many of its new opinions which might have contained those benefits (zero install). More broadly: still in favor of removing the It would be worth it to keep it in a super-cut-down |
Something else to note here - with immutable builds the downstream extensions will need to refresh lock files after updating JupyterLab (even if they don't bump any npm dependencies). Not a huge pain but I saw reports of "this lockfile is different for me locally" because an earlier point release of yarn was shipped in JupyterLab RC phase. |
Yes the reason for it is the yarn typescript patch; I wish it was not needed or somehow they don't complain about the version in the lock file as it is builtin within yarn. I'll add a note in the migration guide. |
For anyone interested: yarnpkg/berry@@yarnpkg/cli/3.5.0...@yarnpkg/cli/3.6.4 there are a few performance improvements and a few bugfixes. |
07e3ac5
to
3e4d5c7
Compare
Curious: removing the If it now becomes tedious for extension authors relying on Happy to open an issue to discuss that more broadly if there is interest. |
They have to do this anyway if rebuilding against a new version? At any rate, getting it (and all code related to |
Ah, #11336 |
The point is that this breaks CI even if not rebuilding nor updating versions (unless you pinned your jupyterlab to 4.0), see jupyter/notebook#7170 as an example. |
Yes. In that case |
Yes agree this should be on the radar for But here the question was a bit more narrow and focused on dropping |
So, in the near term, perhaps we roll back this change. I still haven't heard the compelling reason to use
I would maintain that having a working, (apparently-not-very) tested system available is, and will continue to be, crucial. I blinked, so may have missed the new js package manager that Fixes All The Problems. Provided that didn't happen, and the opinion of the week rules, then we would inherit supporting all of the problems with all the systems on all the operating systems for all of the users that happen to type Thus far, we have at least partially mitigated this by going through the python-declared
... none of which are guaranteed by any of the other systems. A potential solution, even in 4.1, is to offer an expansion of the schema to eject from all the {
"jupyterlab": {
"builder": {
"scripts": {
"install": ["${JLAB_NODEJS}", "${JLAB_YARN}"],
"build": ["${JLAB_NODEJS}", "${JLAB_BUILDER_JS}"],
"watch": ["${JLAB_NODEJS}", "${JLAB_YARN}", "watch"],
},
"needs": {
"install": ["${JLAB_NODEJS}", "${JLAB_YARN}"],
"build": ["${JLAB_NODEJS}", "${JLAB_YARN}", "${JLAB_BUILDER_JS}"],
"watch": ["${JLAB_NODEJS}", "${JLAB_YARN}", "${JLAB_BUILDER_JS}"],
}
}
}
} If someone has a toolchain that accepts the same arguments as |
I am not strongly opposing, but...
is not strictly correct. It does not break notebook. It does not break anything in the user land. It will be an annoyance for the extension authors who use immutable installs when released because it will break the CI (until the lockfile is updated). |
References
Maintenance to bump to the latest Yarn v3+
I stayed away from the new v4. We may try it after JupyterLab 4.1
Code changes
Bump vendored yarn to 3.6.4
User-facing changes
None
Backwards-incompatible changes
None