We have a WIP integration of wasm, grpc and testing framework for defid (all of which are in Rust and hence libain-rs). In order to be able to develop and release with ease, we need to integrate Rust toolchain into defid, which involves fiddling around the depends system. We approach this in two phases:
- To quickly start developing, we hide the
libain-rs integration under certain feature flags. When those flags are set, depends will expect Rust toolchain to exist locally. There should also be a possibility to specify local version of libain-rs, which will then be used as an override instead of pulling this repository.
- As we mature, the flags will be flipped to use
libain-rs by default. At this point, it wouldn't make sense to enforce having rustc and cargo as a prerequisite in everyone's machine. Now, we could build artifacts for multiple targets and host them in CI or some public bucket, which can then be downloaded by depends and link them directly to defid builds.
We have a WIP integration of wasm, grpc and testing framework for
defid(all of which are in Rust and hencelibain-rs). In order to be able to develop and release with ease, we need to integrate Rust toolchain into defid, which involves fiddling around the depends system. We approach this in two phases:libain-rsintegration under certain feature flags. When those flags are set, depends will expect Rust toolchain to exist locally. There should also be a possibility to specify local version oflibain-rs, which will then be used as an override instead of pulling this repository.libain-rsby default. At this point, it wouldn't make sense to enforce havingrustcandcargoas a prerequisite in everyone's machine. Now, we could build artifacts for multiple targets and host them in CI or some public bucket, which can then be downloaded by depends and link them directly to defid builds.