Skip to content

Commit d6c82d6

Browse files
authored
feat: add support for cluster definition v1.10.0 (#20)
* feat: setup initial project structure * feat: update CI to use nightly toolchain for rustfmt * feat: update CI to use nightly toolchain for rustfmt * fix: fmt * refactor: reorganize workspace members and remove charon-types crate * feat: add core types and dependencies for Charon * feat: add is_valid method and tests for DutyType * feat: enhance Charon core types with new methods and error handling for PubKey * chore: remove unused proptest dependency from workspace * feat: implement Default trait for UnsignedDataSet, ParSignedDataSet, and SignedDataSet * refactor: update PubKey methods for improved error handling and add try_from implementation * docs: clarify slot duration comment and add debug prints for PubKey serialization/deserialization tests * fix: remove unnecessary println * feat: add tbls crypto boilerplate * feat: add initial implementation of tbls * feat: add tests for the bls implementation * feat: init structure of charon-cluster * feat: integrate blsful implementation and refactor tbls module - Added `thiserror` dependency for improved error handling. - Introduced `blsful` module for TBLS implementation. - Refactored `tbls` module to utilize new types and error handling. - Created `tblsconv` module for type conversions between byte slices and cryptographic types. - Removed the old `herumi` implementation and replaced it with the new `blsful` based implementation. - Added utility functions for key and signature conversions. - Updated types and error definitions for better clarity and consistency. * style: improve code formatting and documentation in tblsconv module - Reformatted comments for better readability. - Adjusted spacing and alignment in error messages for consistency. - Ensured clarity in documentation regarding expected byte lengths for key and signature conversions. * chore: clean up Cargo.toml by removing duplicate dependencies and organizing workspace lints * chore: update Cargo.lock with new dependencies and versions * chore: fix clippy warnings * chore: apply fmt * refactor: replace blsful implementation with blst for threshold BLS signatures - Updated dependencies in Cargo.toml and Cargo.lock to use the blst library. - Removed blsful module and its associated code, including type conversions and utility functions. - Introduced a new blst_impl module for the BLST implementation of threshold BLS signatures. - Refactored tbls module to utilize the new blst implementation. - Cleaned up error handling and types to align with the new library. - Added workspace lints and improved documentation throughout the codebase. * fix: add protoc to workflow files * fix: add ignore files to typos config * feat: add support for cluster definition v1.10.0
1 parent 9306bab commit d6c82d6

8 files changed

Lines changed: 809 additions & 5 deletions

File tree

Cargo.lock

Lines changed: 228 additions & 5 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,8 @@ prost = "0.14"
3838
prost-types = "0.14"
3939
prost-build = "0.14"
4040
rand = {version = "0.8", features = ["std_rng"]}
41+
uuid = {version = "1.16", features = ["serde"] }
42+
serde_with = { version = "3", features = ["hex"] }
4143

4244
[workspace.lints.rust]
4345
missing_docs = "deny"

crates/charon-cluster/Cargo.toml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,12 @@ publish.workspace = true
99
[dependencies]
1010
prost.workspace = true
1111
prost-types.workspace = true
12+
uuid.workspace = true
13+
chrono.workspace = true
14+
serde.workspace = true
15+
serde_json.workspace = true
16+
hex.workspace = true
17+
serde_with.workspace = true
1218

1319
[build-dependencies]
1420
prost-build.workspace = true

0 commit comments

Comments
 (0)