Comments (1)
A handful of examples would go a long way, too. E.g. this morning I wanted to write a component targeting the wasi:http/proxy
world. I couldn't figure out the "right" way to do this.
I'm guessing I can get this working by copying all the wasi .wit
files from GitHub somewhere into my deps/
folder, and making my component's world extend proxy
... or something like that... but I'm guessing that this is also not the way cargo-component wants me to do things. I.e. my not understanding what "magic" cargo-component brings to the table and what it doesn't is often a source of confusion for me. (This is not a request for help — I'm just offering an example of user confusion!)
If there were some real-ish-shaped examples, at least that would then offer a feel for how to do things the way that cargo-component wants me to.
Perhaps this should be a different ticket, though? I just figured I'd chime in on the general topic of "documentation priorities".
EDIT: My attempt to summarise some of the high questions I have about cargo-component that I'd love to have answered in the readme or somewhere:
- What is the difference between
[package.metadata.component.dependencies]
and[package.metadata.component.target.dependencies]
? I've only ever found a way to do anything useful with the latter. - Am I supposed to bring my own copies of the WASI
.wit
definitions, or is there a way to make cargo-component bring these in for me from somewhere? A registry? Is there a public official-ish registry housing the WASIp2 definitions? - cargo-component seems to implicitly extend my target world somehow... exactly what does it do here? And does it expect me to always target my own world (possibly extending one or more other worlds I want to target), or is it okay to make it target something like
wasi:http/proxy
directly and not have my own.wit
at all? - Should I be generating bindings for wasi stuff myself, or use the
wasi
crate for this? If the latter, what does that look like?
from cargo-component.
Related Issues (20)
- Resource Static Methods Cause Build Failure When Imported HOT 5
- Wit package name/version validated against registry publishes
- Some wasi imports added per default into wit HOT 2
- cargo install cargo-component error HOT 5
- Compile error when installing cargo component HOT 7
- Minimum Supported Rust Version (MSRV)
- Bindings are sometimes incorrectly generated type + `Borrow` suffix vs `&` type HOT 2
- `cargo component add` not producing runnable/usable binaries
- Cargo Component install give error in RPI 4 (ARM CORTEX-A72) HOT 3
- Update to `-S cli` instead of `-S common` for wasmtime commands
- Should the wit crate be relocated to wasm-pkg-tools? HOT 2
- question: is it possible to further shrink wasm size using `wasm-opt`? HOT 3
- How to use `cargo component serve`? HOT 3
- `cargo component build` always produces a `bindings.rs` file HOT 1
- move generated bindings files to a `generated/` sub-directory HOT 2
- `type mismatch` when building rust with C
- Default to `--editor none`
- request: Support multiple package in a single WIT HOT 4
- `cargo component serve` does not show in `cargo component --help` HOT 1
- Versions of wit-bindgen don't match HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from cargo-component.