-
Notifications
You must be signed in to change notification settings - Fork 5k
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
Workflow to update JupyterLab dependencies automatically #7281
Workflow to update JupyterLab dependencies automatically #7281
Conversation
Thanks @itsmevichu for looking into this! |
Maybe it's because it's using the default yarn (version 1), while the repo here uses yarn 3 via |
Thanks @itsmevichu. Looks like this needs a lint pass. |
@jtpio The lint check is failing because of the coverage for the scripts. Is it possible for us to exclude the "scripts" folder from coverage checks? |
@jtpio I am fetching the latest versions of the lab dependencies from the below URL - https://raw.githubusercontent.com/jupyterlab/jupyterlab/v4.1.4/jupyterlab/staging/package.json. The package "@jupyterlab/testutils" is not present in the above package.json. As a result, only that specific package won't get updated by this workflow. |
Yes I think so. An alternative could be to write the scripts in TypeScript and put them alongside other scripts here: https://github.com/jupyter/notebook/tree/main/buildutils/src
Right it's fine, we only need to update the packages used here in the notebook repo. |
@jtpio I have converted the scripts to typescript and included them in the buildutils. Pending tasks:
|
@jtpio Are any changes needed in this PR? If not, we could simply utilize this workflow, as it would minimize the effort required to upgrade dependencies with each JupyterLab release. |
It would be really handy to have this in! |
It looks like it missed one package, |
I noticed the same, but it seems that the @jupyterlab/testutils information is not present in our source package.json. |
Co-authored-by: Michał Krassowski <[email protected]>
I think it is under |
I've looked through, it appears to be missing from devDependencies. Can I proceed adding it in the respective jupyterlab's package.json? |
See this commit: f7f2ead |
It seems there was a misunderstanding. The source from which we get the latest release version https://raw.githubusercontent.com/jupyterlab/jupyterlab/v4.2.0/jupyterlab/staging/package.json doesn't include the @jupyterlab/testutils package, which is why the script isn't updating it here. I think we need to add this as a devDependency in the source |
Thanks @itsmevichu and sorry for the late reply! Looks like we could try this workflow for the next updates and iterate on it if needed 👍 The lint failure seems related, I'll push a fix right after. The other CI failure don't seem related and should hopefully be fixed soon: #7539 (comment) |
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.
Thanks!
Let's try it!
Looks like it managed to create and push the branch, but failed to open the PR: https://github.com/jupyter/notebook/actions/runs/12435633780/job/34721856783 |
Opened #7545 to track follow-up improvements. |
Issue- #7271
Description:
This workflow can be used to update all the jupyterlab dependecies to the latest release. This can also be manually triggered, which takes the JupyterLab version as an input.
Things to re-visit:
The created PR looks like - Sample pull-request
Feel free to adapt the workflow based on your requirements.