diff --git a/src/javascript-node/.devcontainer/Dockerfile b/src/javascript-node/.devcontainer/Dockerfile index 6142aa9b1..5e1f0511d 100644 --- a/src/javascript-node/.devcontainer/Dockerfile +++ b/src/javascript-node/.devcontainer/Dockerfile @@ -1,5 +1,4 @@ -# [Choice] Node.js version (use -bookworm, and -bullseye variants on local arm64/Apple Silicon): 20, 18, 20-bookworm, 18-bookworm, 20-bullseye, 18-bullseye, 20-buster, 18-buster -ARG VARIANT=20-bookworm +ARG VARIANT=22-bookworm FROM node:${VARIANT} ARG USERNAME=node diff --git a/src/javascript-node/README.md b/src/javascript-node/README.md index 5be9b1ad1..d1d552670 100644 --- a/src/javascript-node/README.md +++ b/src/javascript-node/README.md @@ -9,7 +9,7 @@ | *Categories* | Core, Languages | | *Image type* | Dockerfile | | *Published image* | mcr.microsoft.com/devcontainers/javascript-node | -| *Available image variants* | 20 / 20-bookworm, 18 / 18-bookworm, 20-bullseye, 18-bullseye, 20-buster, 18-buster ([full list](https://mcr.microsoft.com/v2/devcontainers/javascript-node/tags/list)) | +| *Available image variants* | 22 / 22-bookworm, 20 / 20-bookworm, 18 / 18-bookworm, 20-bullseye, 18-bullseye, 20-buster, 18-buster ([full list](https://mcr.microsoft.com/v2/devcontainers/javascript-node/tags/list)) | | *Published image architecture(s)* | x86-64, arm64/aarch64 for `bookworm`, and `bullseye` variants | | *Container host OS support* | Linux, macOS, Windows | | *Container OS* | Debian | @@ -20,6 +20,7 @@ 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. - `mcr.microsoft.com/devcontainers/javascript-node` (latest) +- `mcr.microsoft.com/devcontainers/javascript-node:22` (or `22-bookworm`, `22-bullseye` to pin to an OS version) - `mcr.microsoft.com/devcontainers/javascript-node:20` (or `20-bookworm`, `20-bullseye`, `20-buster` to pin to an OS version) - `mcr.microsoft.com/devcontainers/javascript-node:18` (or `18-bookworm`, `18-bullseye`, `18-buster` to pin to an OS version) @@ -27,9 +28,9 @@ Refer to [this guide](https://containers.dev/guide/dockerfile) for more details. You can decide how often you want updates by referencing a [semantic version](https://semver.org/) of each image. For example: -- `mcr.microsoft.com/devcontainers/typescript-node:1-20` (or `1-20-bookworm`, `1-20-bullseye`, `1-20-buster`) -- `mcr.microsoft.com/devcontainers/typescript-node:1.0-20` (or `1.0-20-bookworm`, `1.0-20-bullseye`, `1.0-20-buster`) -- `mcr.microsoft.com/devcontainers/typescript-node:1.0.3-20` (or `1.0.3-20-bookworm`, `1.0.3-20-bullseye`, `1.0.3-20-buster`) +- `mcr.microsoft.com/devcontainers/typescript-node:1-22` (or `1-22-bookworm`, `1-22-bullseye`) +- `mcr.microsoft.com/devcontainers/typescript-node:1.1-22` (or `1.1-22-bookworm`, `1.1-22-bullseye`) +- `mcr.microsoft.com/devcontainers/typescript-node:1.1.0-22` (or `1.1.0-22-bookworm`, `1.1.0-22-bullseye`) 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. `1-1.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. diff --git a/src/javascript-node/manifest.json b/src/javascript-node/manifest.json index 3e70a587e..d87635fd6 100644 --- a/src/javascript-node/manifest.json +++ b/src/javascript-node/manifest.json @@ -1,17 +1,23 @@ { "version": "1.0.11", "variants": [ + "22-bookworm", "20-bookworm", "18-bookworm", + "22-bullseye", "20-bullseye", "18-bullseye", "20-buster", "18-buster" ], "build": { - "latest": "20-bookworm", + "latest": "22-bookworm", "rootDistro": "debian", "architectures": { + "22-bookworm": [ + "linux/amd64", + "linux/arm64" + ], "20-bookworm": [ "linux/amd64", "linux/arm64" @@ -20,6 +26,10 @@ "linux/amd64", "linux/arm64" ], + "22-bullseye": [ + "linux/amd64", + "linux/arm64" + ], "20-bullseye": [ "linux/amd64", "linux/arm64" @@ -39,14 +49,17 @@ "javascript-node:${VERSION}-${VARIANT}" ], "variantTags": { - "20-bookworm": [ - "javascript-node:${VERSION}-20", + "22-bookworm": [ + "javascript-node:${VERSION}-22", "javascript-node:${VERSION}-bookworm" ], + "20-bookworm": [ + "javascript-node:${VERSION}-20" + ], "18-bookworm": [ "javascript-node:${VERSION}-18" ], - "20-bullseye": [ + "22-bullseye": [ "javascript-node:${VERSION}-bullseye" ], "20-buster": [ diff --git a/src/javascript-node/test-project/.eslintrc.json b/src/javascript-node/test-project/.eslintrc.json deleted file mode 100644 index 6144597b5..000000000 --- a/src/javascript-node/test-project/.eslintrc.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "root": true, - "env": { - "node": true, - "es6": true - }, - "rules": { - "no-console": 0, - "eqeqeq":"warn", - "no-cond-assign": 0, - "no-unused-vars": 1, - "no-extra-semi": "warn", - "semi": "warn" - }, - "extends": "eslint:recommended", - "parserOptions": { - "ecmaFeatures": { - "experimentalObjectRestSpread": true - } - } -} diff --git a/src/javascript-node/test-project/eslint.config.js b/src/javascript-node/test-project/eslint.config.js new file mode 100644 index 000000000..b54e01898 --- /dev/null +++ b/src/javascript-node/test-project/eslint.config.js @@ -0,0 +1,10 @@ +module.exports = { + "rules": { + "no-console": 0, + "eqeqeq":"warn", + "no-cond-assign": 0, + "no-unused-vars": 1, + "no-extra-semi": "warn", + "semi": "warn" + } +}; \ No newline at end of file