From b3b399c1cf730f6f50cc028d639c4850f4a60307 Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Mon, 20 Mar 2023 18:26:59 +0000 Subject: [PATCH 01/22] Create a dev container On content update, builds `python` and the docs. --- .devcontainer/Dockerfile | 7 +++++++ .devcontainer/devcontainer.json | 10 ++++++++++ 2 files changed, 17 insertions(+) create mode 100644 .devcontainer/Dockerfile create mode 100644 .devcontainer/devcontainer.json diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile new file mode 100644 index 00000000000000..e954776462f24b --- /dev/null +++ b/.devcontainer/Dockerfile @@ -0,0 +1,7 @@ +FROM docker.io/library/fedora:37 + +ENV CC=clang + +RUN dnf -y update && \ + dnf -y install git clang dnf-plugins-core && \ + dnf -y builddep python3 diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json new file mode 100644 index 00000000000000..d3e514e7a512ea --- /dev/null +++ b/.devcontainer/devcontainer.json @@ -0,0 +1,10 @@ +{ + "build": { + "dockerfile": "Dockerfile" + }, + "updateContentCommand": { + // Using a shell for `nproc` usage. + "python": "./configure --config-cache --with-pydebug && make -s -j `nproc`", + "docs": ["make", "--directory", "Doc", "venv", "html"] + } +} From b030aa3a5fcdec473627ae4c57dd1a96f7c64899 Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Mon, 20 Mar 2023 21:19:48 +0000 Subject: [PATCH 02/22] Add WASI to the container file --- .devcontainer/Dockerfile | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index e954776462f24b..064205fc9cc418 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -2,6 +2,22 @@ FROM docker.io/library/fedora:37 ENV CC=clang -RUN dnf -y update && \ - dnf -y install git clang dnf-plugins-core && \ +ENV WASI_SDK_VERSION=19 +ENV WASI_SDK_PATH=/opt/wasi-sdk + +ENV WASMTIME_HOME=/opt/wasmtime +ENV WASMTIME_VERSION=7.0.0 +ENV WASMTIME_CPU_ARCH=x86_64 + +RUN dnf -y install clang xz dnf-plugins-core && \ dnf -y builddep python3 + +RUN mkdir ${WASI_SDK_PATH} && \ + curl --location https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-${WASI_SDK_VERSION}/wasi-sdk-${WASI_SDK_VERSION}.0-linux.tar.gz | \ + tar --strip-components 1 --directory ${WASI_SDK_PATH} --extract --gunzip + +RUN mkdir --parents ${WASMTIME_HOME} && \ + curl --location "https://github.com/bytecodealliance/wasmtime/releases/download/v${WASMTIME_VERSION}/wasmtime-v${WASMTIME_VERSION}-${WASMTIME_CPU_ARCH}-linux.tar.xz" | \ + xz --decompress | \ + tar --strip-components 1 --directory ${WASMTIME_HOME} -x && \ + ln -s ${WASMTIME_HOME}/wasmtime /usr/local/bin From 56f990e86867e86d1e9fca8ac117ccb6d7f3a63b Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Mon, 20 Mar 2023 21:22:27 +0000 Subject: [PATCH 03/22] Ignore `nis` for WASI Closes GH-102851 --- Tools/wasm/Setup.local.example | 1 + 1 file changed, 1 insertion(+) diff --git a/Tools/wasm/Setup.local.example b/Tools/wasm/Setup.local.example index ad58c31a2efe31..cfb9f7fc8755f8 100644 --- a/Tools/wasm/Setup.local.example +++ b/Tools/wasm/Setup.local.example @@ -5,6 +5,7 @@ audioop _bz2 _crypt _decimal +nis _pickle pyexpat _elementtree _sha3 _blake2 From 95898c6f1dd8b02af68dc52a70386884a32e7a61 Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Mon, 20 Mar 2023 21:32:16 +0000 Subject: [PATCH 04/22] Add Zephyr extension --- .devcontainer/devcontainer.json | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index d3e514e7a512ea..81cc1bdf47736e 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -5,6 +5,19 @@ "updateContentCommand": { // Using a shell for `nproc` usage. "python": "./configure --config-cache --with-pydebug && make -s -j `nproc`", - "docs": ["make", "--directory", "Doc", "venv", "html"] + "docs": [ + "make", + "--directory", + "Doc", + "venv", + "html" + ] + }, + "customizations": { + "vscode": { + "extensions": [ + "brettcannon.zephyr-asdl" + ] + } } } From 6f4713827f833225f16d8436b254ba0a5ab4fee3 Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Mon, 20 Mar 2023 21:44:05 +0000 Subject: [PATCH 05/22] Add VS Code settings --- .devcontainer/devcontainer.json | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 81cc1bdf47736e..0ba40b22a13f94 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -17,7 +17,24 @@ "vscode": { "extensions": [ "brettcannon.zephyr-asdl" - ] + ], + "settings": { + "editor.insertSpaces": true, + "editor.rulers": [ + 80 + ], + "editor.trimAutoWhitespace": true, + "files.encoding": "utf8", + "files.eol": "\n", + "files.insertFinalNewline": true, + "files.trimTrailingWhitespace": true, + "[python]": { + "editor.tabSize": 4 + }, + "[restructuredtext]": { + "editor.tabSize": 3 + } + } } } } From f6a543a2743085d1e5bdcb4e71987f274a5f18d9 Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Tue, 21 Mar 2023 10:34:22 -0700 Subject: [PATCH 06/22] Move 4-space tab size to be a general setting --- .devcontainer/devcontainer.json | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 0ba40b22a13f94..8d4d8c803baec3 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -23,14 +23,12 @@ "editor.rulers": [ 80 ], + "editor.tabSize": 4, "editor.trimAutoWhitespace": true, "files.encoding": "utf8", "files.eol": "\n", "files.insertFinalNewline": true, "files.trimTrailingWhitespace": true, - "[python]": { - "editor.tabSize": 4 - }, "[restructuredtext]": { "editor.tabSize": 3 } From 86bdfbbed7e609319bc3c949bd96be41e39c4cc1 Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Wed, 22 Mar 2023 21:28:46 +0000 Subject: [PATCH 07/22] Add git to the `Dockerfile` --- .devcontainer/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index 064205fc9cc418..f9a2b4bfd1bdb6 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -9,7 +9,7 @@ ENV WASMTIME_HOME=/opt/wasmtime ENV WASMTIME_VERSION=7.0.0 ENV WASMTIME_CPU_ARCH=x86_64 -RUN dnf -y install clang xz dnf-plugins-core && \ +RUN dnf -y install git clang xz dnf-plugins-core && \ dnf -y builddep python3 RUN mkdir ${WASI_SDK_PATH} && \ From 5b646f46f0340c1aa7f17a9c1a3f14746a77c932 Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Wed, 22 Mar 2023 22:40:21 +0000 Subject: [PATCH 08/22] Add the Live Preview extension --- .devcontainer/devcontainer.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 0ba40b22a13f94..70674e85277a2d 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -16,7 +16,8 @@ "customizations": { "vscode": { "extensions": [ - "brettcannon.zephyr-asdl" + "brettcannon.zephyr-asdl", + "ms-vscode.live-server" ], "settings": { "editor.insertSpaces": true, From 5cb45470009f98e305b30bc1bac895a60f2e2063 Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Wed, 22 Mar 2023 23:36:40 +0000 Subject: [PATCH 09/22] Add ports used by the Live Preview extension --- .devcontainer/devcontainer.json | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 807739b1754426..d4a362177eb5d4 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -13,6 +13,15 @@ "html" ] }, + "forwardPorts": [3000, 3001], + "portsAttributes": { + "3000": { + "label": "Live Preview extension" + }, + "3001": { + "label": "Live Preview extension" + } + }, "customizations": { "vscode": { "extensions": [ From ad6b72a450cdda88cee4b55108d7e1e48a67f2bb Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Wed, 22 Mar 2023 23:48:23 +0000 Subject: [PATCH 10/22] Let Live Preview trigger the notification for the ports --- .devcontainer/devcontainer.json | 9 --------- 1 file changed, 9 deletions(-) diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index d4a362177eb5d4..807739b1754426 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -13,15 +13,6 @@ "html" ] }, - "forwardPorts": [3000, 3001], - "portsAttributes": { - "3000": { - "label": "Live Preview extension" - }, - "3001": { - "label": "Live Preview extension" - } - }, "customizations": { "vscode": { "extensions": [ From 97de6846bd502623a620695ae3aca3949c036a41 Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Wed, 22 Mar 2023 23:59:55 +0000 Subject: [PATCH 11/22] Add autoconf syntax highlighting --- .devcontainer/devcontainer.json | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 807739b1754426..cdef76d9dfcc85 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -16,9 +16,10 @@ "customizations": { "vscode": { "extensions": [ - "brettcannon.zephyr-asdl", - "ms-vscode.live-server" - ], + "brettcannon.zephyr-asdl", + "ms-vscode.live-server", + "maelvalais.autoconf" + ], "settings": { "editor.insertSpaces": true, "editor.rulers": [ From 5fdd0be3c9a2f1841fd00facd5514d113fe33354 Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Thu, 23 Mar 2023 00:57:02 +0000 Subject: [PATCH 12/22] Add the C extension --- .devcontainer/devcontainer.json | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index cdef76d9dfcc85..a9231685c2ee71 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -17,16 +17,26 @@ "vscode": { "extensions": [ "brettcannon.zephyr-asdl", - "ms-vscode.live-server", - "maelvalais.autoconf" + "maelvalais.autoconf", + "ms-vscode.cpptools", + "ms-vscode.live-server" ], "settings": { + "C_Cpp.default.cStandard": "c11", + "C_Cpp.default.defines": [ + "Py_BUILD_CORE" + ], + // https://github.com/microsoft/vscode-cpptools/issues/10732 + "C_Cpp.errorSquiggles": "enabled", "editor.insertSpaces": true, "editor.rulers": [ 80 ], "editor.tabSize": 4, "editor.trimAutoWhitespace": true, + "files.associations": { + "*.h": "c" + }, "files.encoding": "utf8", "files.eol": "\n", "files.insertFinalNewline": true, From ec514ceab90d142f08e2db6e2074cc1068002c89 Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Thu, 23 Mar 2023 00:57:33 +0000 Subject: [PATCH 13/22] Add settings for the Python extension The extension itself is left out until the Jupyter soft dependency is dropped to minimize installation cruft for this repo. --- .devcontainer/devcontainer.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index a9231685c2ee71..283840376aece8 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -20,6 +20,8 @@ "maelvalais.autoconf", "ms-vscode.cpptools", "ms-vscode.live-server" + // https://github.com/microsoft/vscode-python/issues/18073 + // "ms-python.python" ], "settings": { "C_Cpp.default.cStandard": "c11", @@ -41,6 +43,16 @@ "files.eol": "\n", "files.insertFinalNewline": true, "files.trimTrailingWhitespace": true, + "python.analysis.diagnosticSeverityOverrides": { + // Complains about shadowing the stdlib w/ the stdlib. + "reportShadowedImports": "none", + // Dodesn't like _frozen_importlib. + "reportMissingImports": "none" + }, + "python.analysis.extraPaths": [ + "Lib" + ], + "python.defaultInterpreterPath": "./python", "[restructuredtext]": { "editor.tabSize": 3 } From a7437ae87fe94260a22be348ac8a9ae7714cfb38 Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Thu, 23 Mar 2023 01:00:33 +0000 Subject: [PATCH 14/22] Tweak a comment --- .devcontainer/devcontainer.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 283840376aece8..076bd8ecb780f2 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -3,7 +3,7 @@ "dockerfile": "Dockerfile" }, "updateContentCommand": { - // Using a shell for `nproc` usage. + // Using the shell for `nproc` usage. "python": "./configure --config-cache --with-pydebug && make -s -j `nproc`", "docs": [ "make", From 73c9bec366395c1f6078702befff0b71731b9845 Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Thu, 23 Mar 2023 01:01:57 +0000 Subject: [PATCH 15/22] Turn off C error squiggles Seems to not like `Py_VAR_HEAD`. --- .devcontainer/devcontainer.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 076bd8ecb780f2..b1f7b40b1649c7 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -29,7 +29,7 @@ "Py_BUILD_CORE" ], // https://github.com/microsoft/vscode-cpptools/issues/10732 - "C_Cpp.errorSquiggles": "enabled", + "C_Cpp.errorSquiggles": "disabled", "editor.insertSpaces": true, "editor.rulers": [ 80 From 473d43474d132247b7c7a5b97e4414f18960e8da Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Thu, 23 Mar 2023 01:13:18 +0000 Subject: [PATCH 16/22] Add comments for why an extension is included --- .devcontainer/devcontainer.json | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index b1f7b40b1649c7..8e50abc29e365f 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -16,9 +16,13 @@ "customizations": { "vscode": { "extensions": [ + // Highlighting for Parser/Python.asdl. "brettcannon.zephyr-asdl", + // Highlighting for configure.ac. "maelvalais.autoconf", + // C auto-complete. "ms-vscode.cpptools", + // To view built docs. "ms-vscode.live-server" // https://github.com/microsoft/vscode-python/issues/18073 // "ms-python.python" From a42cc510da51d46bde1032b5b2191f1a2be09818 Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Thu, 23 Mar 2023 17:59:42 +0000 Subject: [PATCH 17/22] Install `which`, `zsh`, and `fish` in the dev container --- .devcontainer/devcontainer.json | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 8e50abc29e365f..66cd326fef3b98 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -2,6 +2,15 @@ "build": { "dockerfile": "Dockerfile" }, + "onCreateCommand": [ + // Install common tooling. + "dnf", + "install", + "-y", + "which", + "zsh", + "fish" + ], "updateContentCommand": { // Using the shell for `nproc` usage. "python": "./configure --config-cache --with-pydebug && make -s -j `nproc`", @@ -17,16 +26,16 @@ "vscode": { "extensions": [ // Highlighting for Parser/Python.asdl. - "brettcannon.zephyr-asdl", + "brettcannon.zephyr-asdl", // Highlighting for configure.ac. - "maelvalais.autoconf", + "maelvalais.autoconf", // C auto-complete. "ms-vscode.cpptools", // To view built docs. - "ms-vscode.live-server" + "ms-vscode.live-server" // https://github.com/microsoft/vscode-python/issues/18073 // "ms-python.python" - ], + ], "settings": { "C_Cpp.default.cStandard": "c11", "C_Cpp.default.defines": [ From 4d8d082537b9943e50026ecd75d6d9b7a628c474 Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Thu, 23 Mar 2023 20:59:06 +0000 Subject: [PATCH 18/22] Add a news entry --- .../next/Build/2023-03-23-20-58-56.gh-issue-102973.EaJUrw.rst | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 Misc/NEWS.d/next/Build/2023-03-23-20-58-56.gh-issue-102973.EaJUrw.rst diff --git a/Misc/NEWS.d/next/Build/2023-03-23-20-58-56.gh-issue-102973.EaJUrw.rst b/Misc/NEWS.d/next/Build/2023-03-23-20-58-56.gh-issue-102973.EaJUrw.rst new file mode 100644 index 00000000000000..38b02391266ffb --- /dev/null +++ b/Misc/NEWS.d/next/Build/2023-03-23-20-58-56.gh-issue-102973.EaJUrw.rst @@ -0,0 +1,2 @@ +Add a dev container (along with accompanying Dockerfile) for development +purposes. From ab50a160de8a1b1c086cec52440754c6fd13b6ec Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Thu, 23 Mar 2023 20:59:28 +0000 Subject: [PATCH 19/22] Add blurb to the container --- .devcontainer/Dockerfile | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index f9a2b4bfd1bdb6..a44154c84363be 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -9,9 +9,11 @@ ENV WASMTIME_HOME=/opt/wasmtime ENV WASMTIME_VERSION=7.0.0 ENV WASMTIME_CPU_ARCH=x86_64 -RUN dnf -y install git clang xz dnf-plugins-core && \ +RUN dnf -y install git clang xz pipx dnf-plugins-core && \ dnf -y builddep python3 +RUN pipx install --pip-args="--no-cache-dir" blurb + RUN mkdir ${WASI_SDK_PATH} && \ curl --location https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-${WASI_SDK_VERSION}/wasi-sdk-${WASI_SDK_VERSION}.0-linux.tar.gz | \ tar --strip-components 1 --directory ${WASI_SDK_PATH} --extract --gunzip From 8805339bc78bf7951c6d973739be5ca3a768d828 Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Mon, 27 Mar 2023 16:12:23 -0700 Subject: [PATCH 20/22] Fix a comment typo Co-authored-by: Ronald Oussoren --- .devcontainer/devcontainer.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 66cd326fef3b98..e3fb4c6c88f497 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -59,7 +59,7 @@ "python.analysis.diagnosticSeverityOverrides": { // Complains about shadowing the stdlib w/ the stdlib. "reportShadowedImports": "none", - // Dodesn't like _frozen_importlib. + // Doesn't like _frozen_importlib. "reportMissingImports": "none" }, "python.analysis.extraPaths": [ From 64bd77df89df9771ab03bc5732dc1aa3770a6bed Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Mon, 27 Mar 2023 23:30:01 +0000 Subject: [PATCH 21/22] Don't build docs and have `dnf` clean up after itself --- .devcontainer/Dockerfile | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index a44154c84363be..b63f63976cf946 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -9,8 +9,9 @@ ENV WASMTIME_HOME=/opt/wasmtime ENV WASMTIME_VERSION=7.0.0 ENV WASMTIME_CPU_ARCH=x86_64 -RUN dnf -y install git clang xz pipx dnf-plugins-core && \ - dnf -y builddep python3 +RUN dnf -y --nodocs install git clang xz pipx dnf-plugins-core && \ + dnf -y --nodocs builddep python3 && \ + dnf -y clean all RUN pipx install --pip-args="--no-cache-dir" blurb From cc8ac248b00fdbf8cf4c318fb9518f98d847e254 Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Tue, 28 Mar 2023 22:44:42 +0000 Subject: [PATCH 22/22] Drop `pipx` for `python3-blurb` --- .devcontainer/Dockerfile | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index b63f63976cf946..ce8967337b02f9 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -9,12 +9,10 @@ ENV WASMTIME_HOME=/opt/wasmtime ENV WASMTIME_VERSION=7.0.0 ENV WASMTIME_CPU_ARCH=x86_64 -RUN dnf -y --nodocs install git clang xz pipx dnf-plugins-core && \ +RUN dnf -y --nodocs install git clang xz python3-blurb dnf-plugins-core && \ dnf -y --nodocs builddep python3 && \ dnf -y clean all -RUN pipx install --pip-args="--no-cache-dir" blurb - RUN mkdir ${WASI_SDK_PATH} && \ curl --location https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-${WASI_SDK_VERSION}/wasi-sdk-${WASI_SDK_VERSION}.0-linux.tar.gz | \ tar --strip-components 1 --directory ${WASI_SDK_PATH} --extract --gunzip