Skip to content

Commit c818a99

Browse files
Add Support for Ruby 4.0.0 (#1724)
* Update Ruby version to 4.x in Dockerfile and manifest * Revert "Update Ruby version to 4.x in Dockerfile and manifest" This reverts commit 6f2824f. * Update Ruby version to 4.x in Dockerfile, README, and manifest * Add missing variant tags for Ruby 3.3 and 3.2 on bullseye * Update Ruby version choice in Dockerfile * Modify Ruby version entries in manifest.json Updated Ruby version entries for various distributions. * Add Ruby 3.3 and 3.2 versions to manifest.json
1 parent 29a4bda commit c818a99

File tree

3 files changed

+50
-23
lines changed

3 files changed

+50
-23
lines changed

src/ruby/.devcontainer/Dockerfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
# [Choice] Ruby version (use -bullseye variants on local arm64/Apple Silicon): 3, 3.4, 3.3, 3.2, 3-bookworm, 3.4-bookworm, 3.3-bookworm, 3.2-bookworm, 3-bullseye, 3.4-bullseye, 3.3-bullseye, 3.2-bullseye, 3-buster, 3.2-buster
2-
ARG VARIANT=3-trixie
1+
# [Choice] Ruby version (use -bullseye variants on local arm64/Apple Silicon): 4, 3.4, 3.3, 3.2, 4-trixie, 4-bookworm, 3.4-bookworm, 3.3-bookworm, 3.2-bookworm, 4-bullseye, 3.4-bullseye, 3.3-bullseye, 3.2-bullseye
2+
ARG VARIANT=4-trixie
33
FROM ruby:${VARIANT}
44

55
RUN apt-get update && export DEBIAN_FRONTEND=noninteractive \

src/ruby/README.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@
99
| *Categories* | Core, Languages |
1010
| *Image type* | Dockerfile |
1111
| *Published images* | mcr.microsoft.com/devcontainers/ruby |
12-
| *Available image variants* | 3 / 3-trixie, 3.4 / 3.4-trixie, 3.3 / 3.3-trixie, 3.2 / 3.2-trixie, 3-bookworm, 3.4-bookworm, 3.3-bookworm, 3.2-bookworm, 3-bullseye, 3.4-bullseye, 3.3-bullseye, 3.2-bullseye ([full list](https://mcr.microsoft.com/v2/devcontainers/ruby/tags/list)) |
13-
| *Published image architecture(s)* | x86-64, arm64/aarch64 for `bookworm` , and `bullseye` variants |
12+
| *Available image variants* | 4 / 4-trixie, 4-bookworm, 4-bullseye, 3.4 / 3.4-trixie, 3.3 / 3.3-trixie, 3.2 / 3.2-trixie, 3-bookworm, 3.4-bookworm, 3.3-bookworm, 3.2-bookworm, 3-bullseye, 3.4-bullseye ([full list](https://mcr.microsoft.com/v2/devcontainers/ruby/tags/list)) |
13+
| *Published image architecture(s)* | x86-64, arm64/aarch64 for `trixie`, `bookworm` , and `bullseye` variants |
1414
| *Container host OS support* | Linux, macOS, Windows |
1515
| *Container OS* | Debian |
1616
| *Languages, platforms* | Ruby |
@@ -22,7 +22,7 @@ See **[history](history)** for information on the contents of published images.
2222
You can directly reference pre-built versions of `Dockerfile` by using the `image` property in `.devcontainer/devcontainer.json` or updating the `FROM` statement in your own `Dockerfile` to one of the following. An example `Dockerfile` is included in this repository.
2323

2424
- `mcr.microsoft.com/devcontainers/ruby` (latest)
25-
- `mcr.microsoft.com/devcontainers/ruby:3` (or `3-trixie`, `3-bookworm`, `3-bullseye` to pin to an OS version)
25+
- `mcr.microsoft.com/devcontainers/ruby:4` (or `4-trixie`, `4-bookworm`, `4-bullseye` to pin to an OS version)
2626
- `mcr.microsoft.com/devcontainers/ruby:3.4` (or `3.4-trixie`, `3.4-bookworm`, `3.4-bullseye` to pin to an OS version)
2727
- `mcr.microsoft.com/devcontainers/ruby:3.3` (or `3.3-trixie`, `3.3-bookworm`, `3.3-bullseye` to pin to an OS version)
2828
- `mcr.microsoft.com/devcontainers/ruby:3.2` (or `3.2-trixie`, `3.2-bookworm`, `3.2-bullseye` to pin to an OS version)
@@ -31,11 +31,11 @@ Refer to [this guide](https://containers.dev/guide/dockerfile) for more details.
3131

3232
You can decide how often you want updates by referencing a [semantic version](https://semver.org/) of each image. For example:
3333

34-
- `mcr.microsoft.com/devcontainers/ruby:2-3` (or `2-3-trixie`, `2-3-bookworm`, `2-3-bullseye` to pin to an OS version)
35-
- `mcr.microsoft.com/devcontainers/ruby:2.0-3` (or `2.0-3-trixie`, `2.0-3-bookworm`, `2.0-3-bullseye` to pin to an OS version)
36-
- `mcr.microsoft.com/devcontainers/ruby:2.0.0-3` (or `2.0.0-3-trixie`, `2.0.0-3-bookworm`, `2.0.0-3-bullseye` to pin to an OS version)
34+
- `mcr.microsoft.com/devcontainers/ruby:3-4` (or `3-4-trixie`, `3-4-bookworm`, `3-4-bullseye` to pin to an OS version)
35+
- `mcr.microsoft.com/devcontainers/ruby:3.0-4` (or `3.0-4-trixie`, `3.0-4-bookworm`, `3.0-4-bullseye` to pin to an OS version)
36+
- `mcr.microsoft.com/devcontainers/ruby:3.0.0-4` (or `3.0.0-4-trixie`, `3.0.0-4-bookworm`, `3.0.0-4-bullseye` to pin to an OS version)
3737

38-
However, we only do security patching on the latest [non-breaking, in support](https://github.com/devcontainers/images/issues/90) versions of images (e.g. `2-3.4`). You may want to run `apt-get update && apt-get upgrade` in your Dockerfile if you lock to a more specific version to at least pick up OS security updates.
38+
However, we only do security patching on the latest [non-breaking, in support](https://github.com/devcontainers/images/issues/90) versions of images (e.g. `2-4.0`). You may want to run `apt-get update && apt-get upgrade` in your Dockerfile if you lock to a more specific version to at least pick up OS security updates.
3939

4040
See [history](history) for information on the contents of each version and [here for a complete list of available tags](https://mcr.microsoft.com/v2/devcontainers/ruby/tags/list).
4141

src/ruby/manifest.json

Lines changed: 41 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,35 @@
11
{
2-
"version": "2.0.5",
2+
"version": "3.0.0",
33
"variants": [
4+
"4.0-trixie",
45
"3.4-trixie",
56
"3.3-trixie",
6-
"3.2-trixie",
7+
"3.2-trixie",
8+
"4.0-bookworm",
79
"3.4-bookworm",
810
"3.3-bookworm",
911
"3.2-bookworm",
12+
"4.0-bullseye",
1013
"3.4-bullseye",
1114
"3.3-bullseye",
1215
"3.2-bullseye"
1316
],
1417
"build": {
15-
"latest": "3.4-trixie",
18+
"latest": "4.0-trixie",
1619
"rootDistro": "debian",
1720
"architectures": {
21+
"4.0-trixie": [
22+
"linux/amd64",
23+
"linux/arm64"
24+
],
25+
"4.0-bookworm": [
26+
"linux/amd64",
27+
"linux/arm64"
28+
],
29+
"4.0-bullseye": [
30+
"linux/amd64",
31+
"linux/arm64"
32+
],
1833
"3.4-trixie": [
1934
"linux/amd64",
2035
"linux/arm64"
@@ -56,21 +71,34 @@
5671
"ruby:${VERSION}-${VARIANT}"
5772
],
5873
"variantTags": {
74+
"4.0-trixie": [
75+
"ruby:${VERSION}-4",
76+
"ruby:${VERSION}-4.0",
77+
"ruby:${VERSION}-4-trixie",
78+
"ruby:${VERSION}-trixie"
79+
],
80+
"4.0-bookworm": [
81+
"ruby:${VERSION}-4-bookworm",
82+
"ruby:${VERSION}-bookworm"
83+
],
84+
"4.0-bullseye": [
85+
"ruby:${VERSION}-4-bullseye",
86+
"ruby:${VERSION}-bullseye"
87+
],
5988
"3.4-trixie": [
60-
"ruby:${VERSION}-3",
6189
"ruby:${VERSION}-3.4",
62-
"ruby:${VERSION}-3-trixie",
63-
"ruby:${VERSION}-trixie"
90+
"ruby:${VERSION}-3.4-trixie"
6491
],
6592
"3.3-trixie": [
66-
"ruby:${VERSION}-3.3"
93+
"ruby:${VERSION}-3.3",
94+
"ruby:${VERSION}-3.3-trixie"
6795
],
6896
"3.2-trixie": [
69-
"ruby:${VERSION}-3.2"
97+
"ruby:${VERSION}-3.2",
98+
"ruby:${VERSION}-3.2-trixie"
7099
],
71100
"3.4-bookworm": [
72-
"ruby:${VERSION}-3-bookworm",
73-
"ruby:${VERSION}-bookworm"
101+
"ruby:${VERSION}-3.4-bookworm"
74102
],
75103
"3.3-bookworm": [
76104
"ruby:${VERSION}-3.3-bookworm"
@@ -79,16 +107,14 @@
79107
"ruby:${VERSION}-3.2-bookworm"
80108
],
81109
"3.4-bullseye": [
82-
"ruby:${VERSION}-3-bullseye",
83-
"ruby:${VERSION}-bullseye"
110+
"ruby:${VERSION}-3.4-bullseye"
84111
],
85112
"3.3-bullseye": [
86113
"ruby:${VERSION}-3.3-bullseye"
87114
],
88115
"3.2-bullseye": [
89116
"ruby:${VERSION}-3.2-bullseye"
90117
]
91-
}
92118
},
93119
"dependencies": {
94120
"image": "ruby:${VARIANT}",
@@ -122,4 +148,5 @@
122148
}
123149
}
124150
}
125-
}
151+
}
152+
}

0 commit comments

Comments
 (0)