Open
Description
The ability to compile to --target wasm32-unknown-unknown
and wasm32-wasi
. Here we track what's needed to make this happen as well as the progress thus far.
Note that this doesn't necessarily mean everything will work there - that's an entirely separate task
Tasks
- CI setup for compiling crates to WASM, to avoid regressions (
--target wasm32-unknown-unknown
seems like a good baseline) - preliminary wasm32 support for git-pack #735
- Analysis - know what works and what doesn't
Crates that need the wasm
feature toggle to compile
- git-diff
- git-pack
Crates to be fixed
Fixing them might move them up to the list of crates with the wasm
feature toggle. Major crates to fix are git-sec
and git-tempfile
- with these more would probably run right away.
- git-config
- git-config-value
- git-credentials
- git-discover
- git-index
- git-lock
- git-prompt
- git-protocol (due to
git-sec
) - git-ref
- git-sec
- git-tempfile
- git-transport (due to `git-sec
- git-url -
home
crate should be optional - it doesn't compile - gix
Features of git-features
that won't compile
And that's OK as wasm32 doesn't need the fastest implementation just yet.
zlib-ng
zlib-ng-compat
zlib-stock
What to target
- look at this insightful comment which provides an idea on how WASM support could look like.