Open jsturtevant opened 1 month ago
The version in the project and the version the binding create are off:
cargo component --version cargo-component-component 0.15.0 cargo component new --lib test-version cd test-version cat Cargo.toml [package] name = "test-version" version = "0.1.0" edition = "2021" [dependencies] wit-bindgen-rt = { version = "0.29.0", features = ["bitflags"] } [lib] crate-type = ["cdylib"] [profile.release] codegen-units = 1 opt-level = "s" debug = false strip = true lto = true [package.metadata.component] package = "component:test-version" [package.metadata.component.dependencies]
cargo component build head src/bindings.rs // Generated by `wit-bindgen` 0.25.0. DO NOT EDIT! // Options used: #[doc(hidden)] #[allow(non_snake_case)] pub unsafe fn _export_hello_world_cabi<T: Guest>() -> *mut u8 { #[cfg(target_arch = "wasm32")] _rt::run_ctors_once(); let result0 = T::hello_world(); let ptr1 = _RET_AREA.0.as_mut_ptr().cast::<u8>(); let vec2 = (result0.into_bytes()).into_boxed_slice();
Notice the versions are not the same (wit-bindgen-rt = { version = "0.29.0", and // Generated bywit-bindgen0.25.0. DO NOT EDIT!
wit-bindgen-rt = { version = "0.29.0",
// Generated by
0.25.0. DO NOT EDIT!
This doesn't seem to cause a problem with current versions, but I think it could?
The new command invokes cargo add --quiet wit-bindgen-rt --features bitflags^1, causing cargo to look for the newest version of that crate (currently 0.29.0), but cargo component itself still uses 0.25.0 of wit-bindgen-rust and wit-bindgen-core^2.
new
cargo add --quiet wit-bindgen-rt --features bitflags
wit-bindgen-rust
wit-bindgen-core
The version in the project and the version the binding create are off:
Notice the versions are not the same (
wit-bindgen-rt = { version = "0.29.0",
and// Generated by
wit-bindgen0.25.0. DO NOT EDIT!
This doesn't seem to cause a problem with current versions, but I think it could?