Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WASM support #463

Open
3 of 17 tasks
Byron opened this issue Jul 19, 2022 · 3 comments
Open
3 of 17 tasks

WASM support #463

Byron opened this issue Jul 19, 2022 · 3 comments
Labels
C-tracking-issue An issue to track to track the progress of multiple PRs or issues

Comments

@Byron
Copy link
Owner

Byron commented Jul 19, 2022

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

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

@Byron Byron added the C-tracking-issue An issue to track to track the progress of multiple PRs or issues label Jul 19, 2022
@Byron Byron added this to Journeys in Collaboration Board Oct 8, 2022
@dzmitry-lahoda
Copy link

you may consider support of no_std(it is the proper way to do wasm rather than just compile to target). afaik embedded and blockchain targets are no_std and these (wasm stems from being no_std

@dzmitry-lahoda
Copy link

dzmitry-lahoda commented Dec 17, 2022

on top of allowing in-browser ide to work better, this feature will allow more secure software release and dependency verifications. (there is usefull stuff to git in blockchain to verify gpg signatures. code oracle later when nix will be on chain, can verify whole build, for now just ci oracle would be good. ) just couple of words about future application.

@dzmitry-lahoda
Copy link

after no_std is done for core libs, can support wasi (os/fs interface of some no_std hosts). that is separate task.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-tracking-issue An issue to track to track the progress of multiple PRs or issues
Projects
Development

No branches or pull requests

2 participants