Skip to content

dragoon-rs/komodo

Repository files navigation

Komodo: Cryptographically-proven Erasure Coding

release crate docs source mirror

Komodo uses a build system entirely writen in Rust.

First, install rust-script with

cargo +1.74 install rust-script --locked --rev 99d2c790b303c1d75de5cd90499800283e4b9681 --git https://github.com/fornwall/rust-script

Then, run the script with ./make.rs --help

the library

./make.rs doc

the tests

./make.rs check
./make.rs clippy
./make.rs test

Other examples that showcase the Komodo API are available in examples/.

the benchmarks

see benchmarks/

development

Komodo uses a Docker image as the base of the GitLab pipelines.

That means that there is nothing to build apart from the source code of Komodo itself when running jobs.

When the development environment needs to change, e.g. when the version of Rust is bumped in rust-toolchain.toml, one shall run the following commands to push the new Docker image to the container registry.

./make.rs container --login
./make.rs container
./make.rs container --push

contributors

Because the code for this project has been originally extracted from dragoon/pcs-fec-id by @a.stevan, some contributors might be missing from the Git tree.

Please consult the original Git tree from dragoon/pcs-fec-id or note that the following people have contributed to this code base:

  • @a.stevan
  • @j.detchart

citation

If you use the komodo library in your research projects, please cite it using the following template:

@software{komodo@main,
  author  = {Komodo contributors},
  title   = {\texttt{komodo}: Cryptographically-proven Erasure Coding},
  url     = {https://gitlab.isae-supaero.fr/dragoon/komodo/-/tree/main},
  crate   = {},
  mirror  = {https://github.com/dragoon-rs/komodo/tree/main},
  docs    = {},
  version = {main},
  year    = {2023},
}

[!tip] TIP mentions to main can be removed