a2bca1b889
Some checks are pending
Audit / audit (push) Waiting to run
CI / fmt (push) Waiting to run
CI / typo (push) Waiting to run
CI / ci (macos-latest, stable, bash) (push) Waiting to run
CI / ci (ubuntu-latest, stable, bash) (push) Waiting to run
CI / ci (windows-latest, stable-x86_64-pc-windows-gnu, msys2 {0}) (push) Waiting to run
Deny / audit (push) Waiting to run
Doc / build (push) Waiting to run
Doc / deploy (push) Blocked by required conditions
* fixed-bytes: add `serde`, document feature flags * fixed-bytes: add derives * rpc: add `as _` syntax to macro * rpc: use `ByteArrayVec` and `ContainerAsBlob` for binary types * fixed-bytes: re-add derives * rpc-types: dedup default value within macro * readme: fixed bytes section * types: custom epee - `BlockCompleteEntry` * types: custom epee - `KeyImageSpentStatus` * types: custom epee - `PoolInfoExtent` * types: add `Status::Other(String)` variant * types: custom epee - `TxEntry`, add `read_epee_field` macro * bin: custom epee - `GetBlocks` * types: add `serde.rs` * misc: make `TxEntry` an `enum`, impl serde * misc: `unimplemented!()` for `TxEntry`'s epee * types: add `BlockCompleteEntry` * rpc: replace `BlockCompleteEntry` with `cuprate-types` * types: document `BlockCompleteEntry` * bin: fix `number_of_fields` for `GetBlocksResponse` * misc: add `Distribution` * distribution: add todo * misc fixes * readme: add `(De)serialization invariants` * distribution: compress variants * types: add `block_complete_entry.rs` * net: fix imports * p2p: fix imports * turn off default-features * p2p: fix imports * misc fixes * Update net/wire/Cargo.toml Co-authored-by: Boog900 <boog900@tutanota.com> * distribution: module doc * wire: re-export types * test-utils: add `crate::rpc::types` module * test-utils: conditional json doc-tests * bin: use enum for `GetBlocksResponse` * misc: use lowercase for stringify * json: add test data, fix macro doc tests * json: add all data * other: add all data * bin: add skeleton * docs * move type to correct file * remove duplicated fields for custom epee * rpc: `client/{client,constants}.rs` -> `client.rs` * lib.rs: remove `clippy::module_inception` * macros: add json doc test macro * json: add some tests * json: add doc-test for all types * add all other JSON doc-tests * move doc-test macros to files * base: add doc-tests * json: TODO distribution test --------- Co-authored-by: Boog900 <boog900@tutanota.com> |
||
---|---|---|
.github | ||
benches | ||
binaries | ||
books | ||
consensus | ||
cryptonight | ||
helper | ||
misc | ||
net | ||
p2p | ||
pruning | ||
rpc | ||
storage | ||
test-utils | ||
types | ||
zmq | ||
.gitignore | ||
Cargo.lock | ||
Cargo.toml | ||
CONTRIBUTING.md | ||
deny.toml | ||
LICENSE | ||
LICENSE-AGPL | ||
LICENSE-MIT | ||
README.md | ||
SECURITY.md | ||
typos.toml |
Contents
About
Cuprate is an effort to create an alternative Monero node implementation in Rust.
It will be able to independently validate Monero consensus rules, providing a layer of security and redundancy for the Monero network.
Documentation
Cuprate is currently a work-in-progress; documentation will be changing/unfinished.
Cuprate maintains various documentation books:
Book | Description |
---|---|
Cuprate's architecture book | Documents Cuprate's internal architecture & implementation |
Monero's protocol book | Documents the Monero protocol |
Cuprate's user book | Practical user-guide for using cuprated |
For crate (library) documentation, see: https://doc.cuprate.org. This site holds documentation for Cuprate's crates and all dependencies. All Cuprate crates start with cuprate_
, for example: cuprate_database
.
Contributing
See CONTRIBUTING.md
.
Security
Cuprate has a responsible vulnerability disclosure policy, see SECURITY.md
.
License
The binaries/
directory is licensed under AGPL-3.0, everything else is licensed under MIT.
See LICENSE
for more details.