Skip to content

Commit 22ab592

Browse files
authored
Merge branch 'main' into python3.13
2 parents 8ad644c + 55942df commit 22ab592

File tree

16 files changed

+50
-37
lines changed

16 files changed

+50
-37
lines changed

.gitignore

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -106,8 +106,10 @@ ipython_config.py
106106
#pdm.lock
107107
# pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it
108108
# in version control.
109-
# https://pdm.fming.dev/#use-with-ide
109+
# https://pdm.fming.dev/latest/usage/project/#working-with-version-control
110110
.pdm.toml
111+
.pdm-python
112+
.pdm-build/
111113

112114
# PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm
113115
__pypackages__/

.pre-commit-config.yaml

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
repos:
1515
# Autoupdate: Python code
1616
- repo: https://github.com/asottile/pyupgrade
17-
rev: v3.17.0
17+
rev: v3.19.0
1818
hooks:
1919
- id: pyupgrade
2020
args: [--py39-plus]
@@ -28,14 +28,14 @@ repos:
2828

2929
# Autoformat: Python code
3030
- repo: https://github.com/psf/black
31-
rev: 24.8.0
31+
rev: 24.10.0
3232
hooks:
3333
- id: black
3434
args: [--target-version=py39]
3535

3636
# Check python code static typing
3737
- repo: https://github.com/pre-commit/mirrors-mypy
38-
rev: v1.11.2
38+
rev: v1.13.0
3939
hooks:
4040
- id: mypy
4141
args: [--config, ./mypy.ini]
@@ -69,7 +69,7 @@ repos:
6969

7070
# `pre-commit sample-config` default hooks
7171
- repo: https://github.com/pre-commit/pre-commit-hooks
72-
rev: v4.6.0
72+
rev: v5.0.0
7373
hooks:
7474
- id: check-added-large-files
7575
- id: end-of-file-fixer
@@ -78,15 +78,15 @@ repos:
7878

7979
# Lint: Dockerfile
8080
- repo: https://github.com/hadolint/hadolint
81-
rev: v2.13.0-beta
81+
rev: v2.13.1-beta
8282
hooks:
8383
- id: hadolint-docker
8484
entry: hadolint/hadolint:v2.12.1-beta hadolint
8585

8686
# Lint: Dockerfile
8787
# We're linting .dockerfile files as well
8888
- repo: https://github.com/hadolint/hadolint
89-
rev: v2.13.0-beta
89+
rev: v2.13.1-beta
9090
hooks:
9191
- id: hadolint-docker
9292
name: Lint *.dockerfile Dockerfiles
@@ -124,14 +124,14 @@ repos:
124124

125125
# Lint: Markdown
126126
- repo: https://github.com/igorshubovych/markdownlint-cli
127-
rev: v0.41.0
127+
rev: v0.42.0
128128
hooks:
129129
- id: markdownlint
130130
args: ["--fix"]
131131

132132
# Strip output from Jupyter notebooks
133133
- repo: https://github.com/kynan/nbstripout
134-
rev: 0.7.1
134+
rev: 0.8.0
135135
hooks:
136136
- id: nbstripout
137137

@@ -149,7 +149,7 @@ repos:
149149

150150
# Run black on python code blocks in documentation files.
151151
- repo: https://github.com/adamchainz/blacken-docs
152-
rev: 1.18.0
152+
rev: 1.19.1
153153
hooks:
154154
- id: blacken-docs
155155
# --skip-errors is added to allow us to have python syntax highlighting even if

CHANGELOG.md

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,17 +3,31 @@
33
This changelog only contains breaking and/or significant changes manually introduced to this repository (using Pull Requests).
44
All image manifests can be found in [the wiki](https://github.com/jupyter/docker-stacks/wiki).
55

6+
## 2024-11-08
7+
8+
Affected: all images except `docker-stacks-foundation`.
9+
10+
- **Breaking:** `base-notebook`: stop installing `nodejs` from `conda-forge` ([#2172](https://github.com/jupyter/docker-stacks/pull/2172)).
11+
12+
Reason: It isn't a direct dependency on anything in the images any more, and increased the image size with ~150MB.
13+
14+
## 2024-11-06
15+
16+
Affected: all images except `docker-stacks-foundation`.
17+
18+
- **Non-breaking:** `base-notebook`: install `jupyterhub-base` and `nodejs` packages instead of `jupyterhub` package ([#2171](https://github.com/jupyter/docker-stacks/pull/2171)).
19+
620
## 2024-10-23
721

822
Affected: all images.
923

10-
- **Breaking:** Switch to Python 3.12 ([#2072](https://github.com/jupyter/docker-stacks/pull/2072)).
24+
- **Breaking:** `docker-stacks-foundation`: switch to Python 3.12 ([#2072](https://github.com/jupyter/docker-stacks/pull/2072)).
1125

1226
## 2024-10-22
1327

1428
Affected: `pyspark-notebook` and `all-spark-notebook` images.
1529

16-
- **Breaking:** Start using Spark 4.0.0 preview versions ([#2159](https://github.com/jupyter/docker-stacks/pull/2159)).
30+
- **Breaking:** `pyspark-notebook`: start using Spark 4.0.0 preview versions ([#2159](https://github.com/jupyter/docker-stacks/pull/2159)).
1731
`sparklyr` doesn't seem to support Spark v4 yet when using Spark locally.
1832

1933
Reason: Spark v3 is not compatible with Python 3.12, and [the voting group has decided](https://github.com/jupyter/docker-stacks/pull/2072#issuecomment-2414123851) to switch to Spark v4 preview version.
@@ -22,4 +36,4 @@ Affected: `pyspark-notebook` and `all-spark-notebook` images.
2236

2337
Affected: users building a custom set of images.
2438

25-
- **Breaking:** Rename: `ROOT_CONTAINER`->`ROOT_IMAGE`, `BASE_CONTAINER`->`BASE_IMAGE` ([#2154](https://github.com/jupyter/docker-stacks/issues/2154), [#2155](https://github.com/jupyter/docker-stacks/pull/2155)).
39+
- **Breaking:** rename: `ROOT_CONTAINER`->`ROOT_IMAGE`, `BASE_CONTAINER`->`BASE_IMAGE` ([#2154](https://github.com/jupyter/docker-stacks/issues/2154), [#2155](https://github.com/jupyter/docker-stacks/pull/2155)).

README.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
# Jupyter Docker Stacks
22

3-
[![GitHub actions badge](https://github.com/jupyter/docker-stacks/actions/workflows/docker.yml/badge.svg)
4-
](https://github.com/jupyter/docker-stacks/actions/workflows/docker.yml?query=branch%3Amain "Docker images build status")
3+
[![GitHub actions badge](https://github.com/jupyter/docker-stacks/actions/workflows/docker.yml/badge.svg)](https://github.com/jupyter/docker-stacks/actions/workflows/docker.yml?query=branch%3Amain "Docker images build status")
54
[![Read the Docs badge](https://img.shields.io/readthedocs/jupyter-docker-stacks.svg)](https://jupyter-docker-stacks.readthedocs.io/en/latest/ "Documentation build status")
65
[![pre-commit.ci status](https://results.pre-commit.ci/badge/github/jupyter/docker-stacks/main.svg)](https://results.pre-commit.ci/latest/github/jupyter/docker-stacks/main "pre-commit.ci build status")
76
[![Discourse badge](https://img.shields.io/discourse/users.svg?color=%23f37626&server=https%3A%2F%2Fdiscourse.jupyter.org)](https://discourse.jupyter.org/ "Jupyter Discourse Forum")

docs/conf.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,7 @@
6767
r"http://127\.0\.0\.1:.*", # various examples
6868
r"https://mybinder\.org/v2/gh/.*", # lots of 500 errors
6969
r"https://packages\.ubuntu\.com/search\?keywords=openjdk", # frequent read timeouts
70+
r"https://anaconda\.org\/conda-forge", # frequent read timeouts
7071
]
7172

7273
linkcheck_allowed_redirects = {

docs/maintaining/aarch64-runner.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ Each runner is recommended to have at least _2 cores_ and _30 GB_ of disk space.
77
Add a new runner:
88

99
- To use [Oracle OCI](https://www.oracle.com/cloud-0/), create a compute instance `VM.Standard.A1.Flex`.
10-
- To use [Google Cloud](https://cloud.google.com), use [this instruction](https://cloud.google.com/compute/docs/instances/create-arm-vm-instance#armpublicimage).
10+
- To use [Google Cloud](https://cloud.google.com), use [this instruction](https://cloud.google.com/compute/docs/instances/create-start-instance).
1111

1212
Configure your runner:
1313

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
FROM quay.io/jupyter/base-notebook
22

3-
RUN mamba install --yes 'jupyterhub==4.0.1' && \
3+
RUN mamba install --yes 'jupyterhub-singleuser==4.0.1' && \
44
mamba clean --all -f -y && \
55
fix-permissions "${CONDA_DIR}" && \
66
fix-permissions "/home/${NB_USER}"

docs/using/selecting.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ It contains:
5454

5555
- Everything in `jupyter/docker-stacks-foundation`
5656
- Minimally functional Server (e.g., no LaTeX support for saving notebooks as PDFs)
57-
- `notebook`, `jupyterhub`, and `jupyterlab` packages
57+
- `notebook`, `jupyterhub-singleuser`, and `jupyterlab` packages
5858
- A `start-notebook.py` script as the default command
5959
- A `start-singleuser.py` script useful for launching containers in JupyterHub
6060
- Options for a self-signed HTTPS certificate

docs/using/specifics.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,8 @@ You can build a `pyspark-notebook` image with a different `Spark` version by ove
4949
- This version needs to match the version supported by the Spark distribution used above.
5050
- See [Spark Overview](https://spark.apache.org/docs/latest/#downloading) and [Ubuntu packages](https://packages.ubuntu.com/search?keywords=openjdk).
5151
- `spark_version` (optional): The Spark version to install, for example `3.5.0`.
52-
If not specified (this is the default), latest stable Spark will be installed.
52+
If not specified (this is the default), latest Spark will be installed.
53+
Note: to support Python 3.12, we currently install Spark v4 preview versions: <https://github.com/jupyter/docker-stacks/pull/2072#issuecomment-2414123851>.
5354
- `hadoop_version`: The Hadoop version (`3` by default).
5455
Note, that _Spark < 3.3_ require to specify `major.minor` Hadoop version (i.e. `3.2`).
5556
- `scala_version` (optional): The Scala version, for example `2.13` (not specified by default).

images/base-notebook/Dockerfile

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -39,13 +39,16 @@ USER ${NB_UID}
3939
# files across image layers when the permissions change
4040
WORKDIR /tmp
4141
RUN mamba install --yes \
42-
'jupyterhub' \
42+
'jupyterhub-singleuser' \
4343
'jupyterlab' \
4444
'nbclassic' \
45-
'notebook' && \
45+
# Sometimes, when the new version of `jupyterlab` is released, latest `notebook` might not support it for some time
46+
# Old versions of `notebook` (<v7) didn't have a restriction on the `jupyterlab` version, and old `notebook` is getting installed
47+
# That's why we have to pin the minimum notebook version
48+
# More info: https://github.com/jupyter/docker-stacks/pull/2167
49+
'notebook>=7.2.2' && \
4650
jupyter server --generate-config && \
4751
mamba clean --all -f -y && \
48-
npm cache clean --force && \
4952
jupyter lab clean && \
5053
rm -rf "/home/${NB_USER}/.cache/yarn" && \
5154
fix-permissions "${CONDA_DIR}" && \

0 commit comments

Comments
 (0)