From 3309ce39313a70b1e544e102b87316926d99c7d6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Natalie=20Klestrup=20R=C3=B6ijezon?= Date: Thu, 6 Aug 2026 23:52:08 +0200 Subject: [PATCH 1/3] wasmtime: Clarify that component::Linker doesn't support intra-component linking yet https://bytecodealliance.zulipchat.com/#narrow/channel/217126-wasmtime/topic/.E2.9C.94.20linking.20wasm.20components.20at.20runtime.3F/near/615012938 The current state tripped me up a bit, since the docs make it sound like it's already there and working, while the API itself seems nowhere to be found. --- crates/wasmtime/src/runtime/component/linker.rs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/crates/wasmtime/src/runtime/component/linker.rs b/crates/wasmtime/src/runtime/component/linker.rs index 7ab67228533c..be21268c8493 100644 --- a/crates/wasmtime/src/runtime/component/linker.rs +++ b/crates/wasmtime/src/runtime/component/linker.rs @@ -18,11 +18,15 @@ use wasmtime_environ::{Atom, PrimaryMap, StringPool}; /// A type used to instantiate [`Component`]s. /// -/// This type is used to both link components together as well as supply host +/// This type is used to both link components together[^component-linking-not-implemented] as well as supply host /// functionality to components. Values are defined in a [`Linker`] by their /// import name and then components are instantiated with a [`Linker`] using the /// names provided for name resolution of the component's imports. /// +/// [^component-linking-not-implemented]: Linking between components isn't +/// implemented yet. In the meantime, [wac](https://github.com/bytecodealliance/wac) +/// can be used to link components before loading instead. +/// /// # Names and Semver /// /// Names defined in a [`Linker`] correspond to import names in the Component From b85306b389de853713dcf2025707cba2cea2dae7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Natalie=20Klestrup=20R=C3=B6ijezon?= Date: Fri, 7 Aug 2026 00:13:28 +0200 Subject: [PATCH 2/3] Remove the mention of intra-component linking entirely https://github.com/bytecodealliance/wasmtime/pull/14088#pullrequestreview-4878462396 --- crates/wasmtime/src/runtime/component/linker.rs | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/crates/wasmtime/src/runtime/component/linker.rs b/crates/wasmtime/src/runtime/component/linker.rs index be21268c8493..88856daab71c 100644 --- a/crates/wasmtime/src/runtime/component/linker.rs +++ b/crates/wasmtime/src/runtime/component/linker.rs @@ -18,15 +18,11 @@ use wasmtime_environ::{Atom, PrimaryMap, StringPool}; /// A type used to instantiate [`Component`]s. /// -/// This type is used to both link components together[^component-linking-not-implemented] as well as supply host +/// This type is used to supply host /// functionality to components. Values are defined in a [`Linker`] by their /// import name and then components are instantiated with a [`Linker`] using the /// names provided for name resolution of the component's imports. /// -/// [^component-linking-not-implemented]: Linking between components isn't -/// implemented yet. In the meantime, [wac](https://github.com/bytecodealliance/wac) -/// can be used to link components before loading instead. -/// /// # Names and Semver /// /// Names defined in a [`Linker`] correspond to import names in the Component From 61526e8a700ef1d21d5564757a9c313fcbd7e38a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Natalie=20Klestrup=20R=C3=B6ijezon?= Date: Fri, 7 Aug 2026 00:14:46 +0200 Subject: [PATCH 3/3] Reflow the paragraph --- crates/wasmtime/src/runtime/component/linker.rs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/crates/wasmtime/src/runtime/component/linker.rs b/crates/wasmtime/src/runtime/component/linker.rs index 88856daab71c..cb41df20320f 100644 --- a/crates/wasmtime/src/runtime/component/linker.rs +++ b/crates/wasmtime/src/runtime/component/linker.rs @@ -18,10 +18,10 @@ use wasmtime_environ::{Atom, PrimaryMap, StringPool}; /// A type used to instantiate [`Component`]s. /// -/// This type is used to supply host -/// functionality to components. Values are defined in a [`Linker`] by their -/// import name and then components are instantiated with a [`Linker`] using the -/// names provided for name resolution of the component's imports. +/// This type is used to supply host functionality to components. Values are +/// defined in a [`Linker`] by their import name and then components are +/// instantiated with a [`Linker`] using the names provided for name resolution +/// of the component's imports. /// /// # Names and Semver ///