abi_stable_crates
lunatic
abi_stable_crates | lunatic | |
---|---|---|
7 | 86 | |
491 | 4,533 | |
- | 0.4% | |
4.9 | 5.7 | |
7 months ago | about 2 months ago | |
Rust | Rust | |
Apache License 2.0 | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
abi_stable_crates
-
how can I add dynamic loading to do "plugins" for my Rust app?
I've used abi_stable_crates
-
Announcing `stabby`: a stable ABI for Rust with niche optimizations and much more!
It's possible, I even made a PR for closures a few months ago. However, for some odd reason the CI failed to build it, and months later I tried to update my PR only to find that master didn't build anymore on my machine.
-
CGlue 0.2 is out! Dynamically loadable traits in Rust, C and C++
Integration with /u/azure1992's abi_stable crate for API/ABI mismatch checking (layout_checks feature). Note that CGlue will not work with crates.io version just yet, as a certain patch needs to be published first. But in the meantime, this can be solved by specifying the upstream repo in cargo patch section.
-
What are the options of distributing a closed-source library in Rust?
There’s a crate for that: abi_stable
-
Plugin based architecture in Rust
Unfortunately, just before publishing this article I found out, that Rust does not guarante a stable ABI, not even between two separate runs of the compiler with the same rustc version. This measn that plugins might suddenly not be compatible anymore for no obvious reasons. Even though I never experienced any problems during development (neither on windows, linux nor mac), I'd recommend you to just share datastructures with #[repr(C)] attribute or use types from abi_stable_crates. A stable ABI will be shipped with minfac:0.0.2, as datastructures in minfac:0.0.1 don't have the #[repr(C)] attribute yet. A discussion about having a stable Rust ABI can be found in the internals forum. If anybody knows, why compiling with the compiler option -C prefer-dynamic is supported, I'd be interested to know, as I can't see how this problem is solved there.
-
Rust doesn’t support default function arguments. Or does it?
Here’s abi_stable_crates, enabling Rust API to be exported with a stable ABI
-
Is there a way to build a plugin system for rust code with dynamic libraries ?
This crate may also be of interest: https://github.com/rodrimati1992/abi_stable_crates/
lunatic
-
Spinkube: Running WASM in Kubernetes
This reminds me of Lunatic [1], an Erlang-inspired runtime for WebAssembly. Unfortunately it seems like development stalled some months ago.
[1] https://lunatic.solutions/
-
Spin 2.0 – open-source tool for building and running WASM apps
you can check out https://github.com/lunatic-solutions/lunatic for that
-
Flawless – Durable execution engine for Rust
Very cool, and the approach demonstrated might be of interest to a similar problem we have in Ambient (our WASM game runtime that has competing processes that may need to retry interactions.)
That being said - what’s the relation to Lunatic [0]? Are you still working on Lunatic? Is this a side project? Or is it something completely separate?
[0]: https://lunatic.solutions/
-
Async Rust Is A Bad Language
Curious too. I follow Lunatic [0] as a candidate for future use, and also wasmCloud [1].
[0] https://lunatic.solutions/
[1] https://wasmcloud.com
- Write Elixir NIFs in Rust
- A WASI VM?
- how can I add dynamic loading to do "plugins" for my Rust app?
-
Wasix, the Superset of WASI Supporting Threads, Processes and Sockets
Check out Lunatic https://lunatic.solutions/
-
Elixir and Rust is a good mix
There's a couple of Rust libs and frameworks inspired on Erlang in 'best of both worlds' attempts, such as https://lunatic.solutions
I found others like Lunatic before, but cannot remember right now.
-
Anything close beam/otp for other languages?
There is a really good initiative called Lunatic : https://lunatic.solutions/
What are some alternatives?
interoptopus - The polyglot bindings generator for your library (C#, C, Python, …) 🐙
spin - Spin is the open source developer tool for building and running serverless applications powered by WebAssembly.
minfac - Lightweight Inversion Of Control
hyperscan - High-performance regular expression matching library
memflow - physical memory introspection framework
actix - Actor framework for Rust.
rust-default-arguments-benchmark - A simple benchmark to evaluate the performance impact of using structs that implement Default as function arguments.
wit-bindgen - A language binding generator for WebAssembly interface types
ctti - Rust compile-time type information experiment
wasmCloud - wasmCloud allows for simple, secure, distributed application development using WebAssembly components and capability providers.
xi-editor - A modern editor with a backend written in Rust.
bastion - Highly-available Distributed Fault-tolerant Runtime