#duniter #protocols #document

dubp

Set of libraries implementing the DUBP protocol

41 releases (breaking)

0.58.0 May 31, 2021
0.56.0 May 20, 2021
0.50.0 Mar 21, 2021
0.36.0 Dec 20, 2020
0.32.2 Nov 26, 2020

#8 in #duniter

AGPL-3.0

20KB

DUBP Rust Libraries

pipeline status codecov dependency status

Set of libraries implementing the DUBP protocol.

  • common : Provide common tools and types for libraries in this repository.
  • crypto : Manage cryptographic operations (signature, hashs, base58, base64).
  • wallet : Manage wallet script, unlock proofs and sources amount.
  • documents : Define DUBP Documents: identity, membership, certification, revocation and transaction.
  • documents-parser : Provide parser for DUBP documents (use a PEG grammar via pest),
  • block : Definition of the blocks format in DUBP as well as the methods to manipulate them.

Versioning policy

All crates in this repository are always at the same version. Even if only one crate is modified, they all change version and are all republished. If you need all crates, use the dubp meta-crate directly, it re-exports all the others.

Changes between two versions are listed in CHANGELOG.

Also, this project adheres to Semantic Versioning.


How to publish a new release

Everything is automated via the cargo-release utility, if you don't already have it, install it:

cargo install cargo-release

Then, to release the version x.y.z:

git checkout master
cargo release x.y.z
git push origin

Finally, the gitlab CI will automatically publish all crates on crates.io (if all tests pass of course).

Dependencies

~8–12MB
~252K SLoC