-
-
Notifications
You must be signed in to change notification settings - Fork 242
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
Simplify CI, fix mybinder.org build, bump python (and other) versions #148
Conversation
Trying to get this to build on both mybinder and the existing CI
I'm going to try to fix CI by vastly simplifying it. It currently does a large number of things (including trying to manage environments, even though it itself needs an environment before it can run). |
``` | ||
invoke clean | ||
``` | ||
TODO: More installation instructions |
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 want to keep this TODO in the readme or open an issue instead?
- jupyter-collaboration=2.1.1 | ||
- nbconvert=7.16.4 | ||
- notebook=7.1.3 | ||
- jupyterlab |
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.
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.
@krassowski I dug into why it was resolving to this, and it's because that's the base version in repo2docker - last updated in jupyterhub/repo2docker#1369. I agree that we should try to use latest jupyterlab here if possible. If we pin to >=4.3.5, it means that when repo2docker goes to a version above 4.3.5, it'll simply just get pinned to that rather than latest. Do you know if there's a way to specify 'latest' with a conda environment.yml?
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.
@krassowski ok, so I've made jupyterhub/repo2docker#1407 which bumps up all versions of things, including lab to 4.3.5. For this PR, my suggestion is that we either find a way to specify 'latest' or let it be unpinned, as once that repo2docker PR lands >=4.3.5 is a no-op
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've checked with a colleague working on conda and it seems there is no way to specify latest
but if we had an option to customize the CLI invocation we could use --prune
to ignore constraints from currently installed versions.
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.
Thank you @yuvipanda, I think it is fine to merge as-is given the constraints!
I started looking into this more as it was reported broken on mybinder.org: https://jupyter.zulipchat.com/#narrow/channel/469744-jupyterhub/topic/try.20mybinder.20jupyterleab.20demo.20broken
Debugging the failure on mybinder.org via #147, I discovered:
(2) is fixed with jupyterhub/mybinder.org-deploy#3211, and this 'fixes' (1) by removing xeus-cling. I also unpinned the semi-pinned versions in
environment.yml
. If we want version pinning, we should use a lock file. This bumps up versions of various packages, including python (to 3.12 from 3.9)This works on mybinder now! https://mybinder.org/v2/gh/yuvipanda/jupyterlab-demo/remove-xtensor?urlpath=lab
Merging this will unbreak this repo on mybinder.
I then looked through CI, and simplified it by:
pyinvoke
and turning things into a simplebuild.py
file.invoke
is great for things that are more complex with multiple interdependencies. By removing environment management, what needs to happen got far more simpler - clone some repos, and copy some files. This can be done with straightforward python more easily, which I have done here.Originally reported in https://jupyter.zulipchat.com/#narrow/channel/469744-jupyterhub/topic/try.20mybinder.20jupyterleab.20demo.20broken