Repository navigation
assets: Avoid duplicate WASM symbols with Iroh - #3252
Draft
domenkozar wants to merge 1 commit into
Draft
domenkozar wants to merge 1 commit into
domenkozar wants to merge 1 commit into
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Use standard
reqwest0.13 for WASM icon downloads, with default features disabled. The assets crate currently uses the workspace'sgpui-pre-reqwest0.12 dependency. When an application also uses Iroh 1.2 in its WASM bundle, Iroh brings inreqwest0.13. Linking the two versions ofwasm-streamsthen fails with duplicateIntoUnderlyingByteSourceand related symbols.This keeps the workspace dependency used by other crates and changes only the assets crate's WASM dependency. Its
reqwest::get, response status, and bytes calls remain the same.AI assistance: Codex helped reproduce the failure, prepare the manifest change, and write this description. Human review is still pending.
Screenshot
Not applicable; this changes a WASM dependency and has no intended visual change.
How to Test
To reproduce against current
main, temporarily add this dependency tocrates/story-web/Cargo.toml:At the start of
runincrates/story-web/src/lib.rs, temporarily add:Then build the release WASM target:
RUSTC_BOOTSTRAP=1was needed for the local stable toolchain; the repository's nightly toolchain is another option. Before this change,rust-lldreported duplicate symbols from twowasm-streamsversions. With this change, the same release build completed. The temporary Iroh edits are not included in this PR.The committed assets crate also passed
cargo check -p gpui-kit-assets --target wasm32-unknown-unknown --libwith the updated lockfile.git diff --checkpassed.Checklist
cargo runfor story tests related to the changes. This is a WASM dependency change; the release web story build passed with the reproduction dependency.