Luca Fulchir
b682068dca
we have a Quick but partial shutdown, which lets the async "threads" work in the background and shutdown after a bit more time and the graceful/full shutdown, which waits for everything. Unfortunately `Drop` can't manage async and blocks everything, no way to yeld either, so if we only have a thread we would deadlock if we tried to stop things gracefully Signed-off-by: Luca Fulchir <luca.fulchir@runesauth.com> |
||
---|---|---|
src | ||
var | ||
.editorconfig | ||
.gitignore | ||
Cargo.toml | ||
LICENSE | ||
Readme.md | ||
flake.lock | ||
flake.nix | ||
rustfmt.toml |
Readme.md
libFenrir
Official reference implementation of the Fenrir protocol
License
Licensed under the Apache2.0 with LLVM exception.
You should be free to use it with GPL2 or other licenses.
Building
like all rust proejcts, just run cargo build --release
you will find the result in ./target/release
If you want to build the Hati
server, you don't need to build this library
separately. Just build the server and it will automatically include this lib
Developing
we recommend to use the nix environment, so that you will have exactly the same environment as the developers.
just enter the repository directory and run
nix develop
and everything should be done for you.
Git
Please configure a pre-commit hook like the one in var/git-pre-commit
cp var/git-pre-commit .git/hooks/pre-commit
This will run cargo test --offline
right before your commit,
to make sure that everything compiles and that the test pass