-
Notifications
You must be signed in to change notification settings - Fork 3
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
Update DSCI 100 R and Python Docker Images #38
Conversation
briank-git
commented
Jan 2, 2024
•
edited
Loading
edited
- Added jupyter-resource-usage extension to show memory usage
- jupyter_server_config.py allows students to see and delete hidden files (Toggle with View -> Show Hidden Files)
- RISE and jupyterlab-git fixed in their latest versions
- RISE Issue #48
- RISE Issue #33
- jupyterlab-git Issue #1261
- Set global pull strategy to rebase with .gitconfig
- Pin pexpect to 4.9.0 to avoid asyncio issue with jupyterlab-git
- Remove manual install of scikit learn in Python image as new release fixes issue
- Add zip package to Python image, fixes zip package missing from py-dsci-100 image #37
- Fixes jupyterlab-git extension not working #34
- Fixes Reduce or disable HEALTHCHECK #32
…onfig, pin pexpect to 4.9.0
…onfig, pexpect for python image
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.
@briank-git thanks for taking care of this so quickly. A few questions/comments in this review.
Also I assume that all the other upgrades will just follow by rebuilding the dockerfile (which will pull in latest versions of everything) ?
docker/py-dsci-100/.gitconfig
Outdated
@@ -0,0 +1,2 @@ | |||
[pull] | |||
rebase = true |
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.
Why did we change the pull strategy? I wouldn't normally go for rebase -- any particular reason?
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 can't find the original slack thread where it was suggested, but no, there's no particular reason. We can use any other strategy. Maybe ff only?
It's just to suppress this error which prompts students to choose a pull strategy (have to use terminal):
Hint: You have divergent branches and need to specify how to reconcile them.
Hint: You can do so by running one of the following commands sometime before
Hint: your next pull:
Hint:
Hint: git config pull.rebase false # merge
Hint: git config pull.rebase true # rebase
Hint: git config pull.ff only # fast-forward only
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.
Ah I see! It's not for this repo, it's for copying into the docker image later on to avoid students getting confusing error messages. Let's use the default strategy which is pull.rebase false
(so that what they see in class is the common default in the real world)
# update scikit-learn to the current @main (July 20, 2023) | ||
# to get this merged PR: https://github.com/scikit-learn/scikit-learn/pull/26772 | ||
# which fixes this issue: https://github.com/scikit-learn/scikit-learn/issues/26768 | ||
RUN pip install --upgrade git+https://github.com/scikit-learn/scikit-learn@7de59b2017f39048880a3858d32c8caef9308954 |
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.
What installs scikit-learn now that this is gone?
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.
(and does the latest release include the two fixes listed in the comments?)
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.
scikit-learn 1.3.1 is installed by the base image jupyter/scipy-notebook
. Here's a link to the relevant patch notes for 1.3.1, fixed by PR #26772.
COPY jupyter_server_config.py /home/${NB_USER}/.jupyter | ||
|
||
# Copy gitconfig that sets global default pull strategy to rebase | ||
COPY .gitconfig /home/${NB_USER}/ |
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.
why?
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.
@briank-git please edit the commented out line on 48 above to reflect the default merge strat
docker/r-dsci-100/.gitconfig
Outdated
@@ -0,0 +1,2 @@ | |||
[pull] | |||
rebase = true |
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.
same Q -- why changing the repo default to rebase?
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.
Handled by above discussion
Yes, I did test builds yesterday and new versions of RISE, jupyterlab-git, pexpect were installed. |