Skip to content
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

Drop Python 3.8 and introduce Python 3.13 #1443

Merged
merged 3 commits into from
Oct 23, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 1 addition & 2 deletions .github/promote-images.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,12 +17,11 @@
workspace-node-18: "TIMESTAMP_TAG"
workspace-node-20: "TIMESTAMP_TAG"
workspace-node-22: "TIMESTAMP_TAG"
workspace-python: "TIMESTAMP_TAG"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why we need to remove workspace-python? (I thought images without specified versions will point to latest stable)

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@mustard-mh that's what we do for other images like workspace-node indeed, but we have not actually been updating it since last August, so this is just a cleanup. We can re-introduce it in the dazzle.yaml in a follow-up if we need to, but this is just syncing what we build to what we push.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@mustard-mh that's what we do for other images like workspace-node indeed

From README.md, we still have workspace-node, it's not removed.

Btw, workspace-python is documented in our docs as well (after this PR, we'll not maintain it anymore but users with this image configured don't know it
image

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@mustard-mh we still have and update workspace-node and we always have. workspace-python will continue to work, but be stuck on the last version we pushed it to last year (this PR does not change that, it has been like this since we merged that PR I mentioned above). What I'm saying is: let's introduce workspace-python again in a subsequent PR, but as of writing, it's outdated, and it does not need to be updated every time we push to our container registries, because we don't build it.

workspace-python-3.8: "TIMESTAMP_TAG"
workspace-python-3.9: "TIMESTAMP_TAG"
workspace-python-3.10: "TIMESTAMP_TAG"
workspace-python-3.11: "TIMESTAMP_TAG"
workspace-python-3.12: "TIMESTAMP_TAG"
workspace-python-3.13: "TIMESTAMP_TAG"
workspace-ruby-3: "TIMESTAMP_TAG"
workspace-ruby-3.1: "TIMESTAMP_TAG"
workspace-ruby-3.2: "TIMESTAMP_TAG"
Expand Down
3 changes: 1 addition & 2 deletions .github/sync-containers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,12 +14,11 @@ sync:
- node-18
- node-20
- node-22
- python
- python-3.8
- python-3.9
- python-3.10
- python-3.11
- python-3.12
- python-3.13
- ruby-3
- ruby-3.1
- ruby-3.2
Expand Down
5 changes: 5 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,11 @@

A curated, chronologically ordered list of notable changes in [Gitpod's default workspace images](https://hub.docker.com/u/gitpod).

## 2024-10-22

- Deprecate `workspace-python-3.8`
- Introduce `workspace-python-3.13`

## 2024-10-21

- Bump Rust to `1.82.0`
Expand Down
3 changes: 1 addition & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -57,12 +57,11 @@ Each contains a set of chunks: a common base and a language / tool. Every image
- [`gitpod/workspace-node-18`](https://hub.docker.com/r/gitpod/workspace-node-18) ✅
- [`gitpod/workspace-node-20`](https://hub.docker.com/r/gitpod/workspace-node-20) ✅
- [`gitpod/workspace-node-22`](https://hub.docker.com/r/gitpod/workspace-node-22) ✅
- [`gitpod/workspace-python`](https://hub.docker.com/r/gitpod/workspace-python) ✅
- [`gitpod/workspace-python-3.8`](https://hub.docker.com/r/gitpod/workspace-python-3.8) ✅
- [`gitpod/workspace-python-3.9`](https://hub.docker.com/r/gitpod/workspace-python-3.9) ✅
- [`gitpod/workspace-python-3.10`](https://hub.docker.com/r/gitpod/workspace-python-3.10) ✅
- [`gitpod/workspace-python-3.11`](https://hub.docker.com/r/gitpod/workspace-python-3.11) ✅
- [`gitpod/workspace-python-3.12`](https://hub.docker.com/r/gitpod/workspace-python-3.12) ✅
- [`gitpod/workspace-python-3.13`](https://hub.docker.com/r/gitpod/workspace-python-3.13) ✅
- [`gitpod/workspace-ruby-3`](https://hub.docker.com/r/gitpod/workspace-ruby-3) ✅
- [`gitpod/workspace-ruby-3.1`](https://hub.docker.com/r/gitpod/workspace-ruby-3.1) ✅
- [`gitpod/workspace-ruby-3.2`](https://hub.docker.com/r/gitpod/workspace-ruby-3.2) ✅
Expand Down
4 changes: 2 additions & 2 deletions chunks/lang-python/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,8 @@ RUN sudo install-packages \
libncursesw5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev \
# Install PYENV
&& git clone https://github.com/pyenv/pyenv.git ~/.pyenv \
# v2.4.14
&& git -C ~/.pyenv checkout 5180c3cfb506006e16982602d0d82fa64e285a5b \
# v2.4.16
&& git -C ~/.pyenv checkout 770eb66ec886bb79669dae89dacf740d17fd6ed5 \
&& pyenv install ${PYTHON_VERSION} \
&& pyenv global ${PYTHON_VERSION} \
&& for exec in global; do printf '%s\n' 'source "$HOME/.gp_pyenv.d/userbase.bash"' >> "$PYENV_ROOT/libexec/pyenv-$exec"; done \
Expand Down
6 changes: 3 additions & 3 deletions chunks/lang-python/chunk.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
variants:
- name: "3.13"
args:
PYTHON_VERSION: 3.13.0
- name: "3.12"
args:
PYTHON_VERSION: 3.12.7
Expand All @@ -11,6 +14,3 @@ variants:
- name: "3.9"
args:
PYTHON_VERSION: 3.9.20
- name: "3.8"
args:
PYTHON_VERSION: 3.8.20
4 changes: 2 additions & 2 deletions chunks/tool-yugabytedb/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,8 @@ RUN curl -sSLo ./yugabyte.tar.gz https://downloads.yugabyte.com/releases/${YB_VE
ENV PATH="$HOME/.pyenv/bin:$HOME/.pyenv/shims:$PATH"
ENV PYENV_ROOT="$HOME/.pyenv"
RUN git clone https://github.com/pyenv/pyenv.git ~/.pyenv \
# v2.4.14
&& git -C ~/.pyenv checkout 5180c3cfb506006e16982602d0d82fa64e285a5b \
# v2.4.16
&& git -C ~/.pyenv checkout 770eb66ec886bb79669dae89dacf740d17fd6ed5 \
&& pyenv install ${PYTHON_VERSION} \
&& pyenv global ${PYTHON_VERSION}

Expand Down
10 changes: 5 additions & 5 deletions dazzle.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,11 @@ combiner:
chunks:
- lang-node:22
- tool-chrome
- name: python-3.13
ref:
- base
chunks:
- lang-python:3.13
- name: python-3.12
ref:
- base
Expand All @@ -110,11 +115,6 @@ combiner:
- base
chunks:
- lang-python:3.9
- name: python-3.8
ref:
- base
chunks:
- lang-python:3.8
- name: ruby-3.1
ref:
- base
Expand Down
Loading