Restore nbgitpuller, dropped as collateral of the JupyterLab 4 upgrade in #317 - #528
Restore nbgitpuller, dropped as collateral of the JupyterLab 4 upgrade in #317#528audiodude wants to merge 1 commit into
Conversation
8bd7794 to
b324854
Compare
|
Rebased onto current main ( The two red checks are unrelated to the change itself, but we want to flag a consequence that needs a maintainer either way. Both failures are the fork-checkout guard in
The part that matters beyond the red X: in Easiest path, if you agree the change is wanted: push the branch inside Also, "We" here is @audiodude — @Audiodude on Phabricator — and Claude Code, which assisted with the rebase and CI triage; claims above are drawn from the workflow files and the job logs for |
b324854 to
c9f502d
Compare
nbgitpuller was added in toolforge#66 (May 2021) and dropped in toolforge#317 (Aug 2023), but not for its own sake. 1b99c87 upgraded JupyterLab 3.4.8 -> 4.0.3 and also removed the notebook==6.4.12 pin, which left nbgitpuller 1.1.1's notebook>=5.5.0 as the only requirement on notebook in the image, so pip resolved it to the newest release: notebook 7.0.1, in a JupyterLab 4 image. 47 minutes later 9d3969d re-pinned notebook==6.5.5 and commented out nbgitpuller in the same commit, alongside a test matrix noting that Lab 4 worked with notebook 6.5.5 and not with 7.0.1. A cleanup commit before merge deleted both the matrix and the disabled line, so the squashed result shows only an unexplained one-line deletion. Restoring the pin was the fix on its own: pip does not upgrade a package that is already installed and already satisfies an unpinned requirement. The two changes went in together and were never separated, so nbgitpuller was removed alongside the thing that actually fixed it. It is safe to bring back. nbgitpuller 1.2.0 (2023-08-07) dropped the notebook dependency; 1.3.0 declares only jupyter_server>=1.10.1 and tornado and ships no JupyterLab extension, and the image no longer installs notebook at all. Requiring >=1.2 keeps the 2023 failure mode unreachable. Bug: T434973 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
c9f502d to
35045fe
Compare
What
Re-adds
nbgitpuller>=1.2to the singleuser image (one requirement line, plus a comment explaining the floor).Why
nbgitpuller was added in #66 (May 2021) so that
/hub/user-redirect/git-pull?repo=...&urlpath=...links could pull a repo into a user's PAWS home and open a notebook in one click — the standard way to put an "open this example on PAWS" link on a wiki page.Why it was removed
Not for its own sake — it was collateral of the JupyterLab 4 upgrade in #317, which also dropped the
notebookpin and left nbgitpuller 1.1.1'snotebook>=5.5.0pulling in notebook 7. Full history, and why removing it was never necessary, in T434973.Current behavior (verified 2026-08-13): clicking a git-pull link resolves through the hub, then 404s on the user server, e.g.
because nothing in the image registers the
git-pullhandler. Confirmed absent fromimages/singleuser/{Dockerfile,requirements.txt,install-extensions}on main.Compatibility
nbgitpuller 1.2.0 (2023-08-07) dropped the
notebookdependency, and 1.3.0 declares onlyjupyter_server>=1.10.1andtornado. It ships no JupyterLab prebuilt extension in any version — it is ajupyter_serverextension — so there is no JupyterLab version coupling; the image's jupyterlab 4.4.0 pullsjupyter_server>=2.4, well above the floor. The image no longer installsnotebookat all (that pin went in #324).The requirement is written
>=1.2so that no future resolution can land on ≤1.1.1 and reintroduce thenotebookdependency that caused the 2023 breakage.🤖 Generated with Claude Code
Manually reviewed by @audiodude