diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index a572dcf9..edd219f9 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -48,6 +48,7 @@ jobs: -p serai-processor-utxo-scheduler-primitives \ -p serai-processor-utxo-scheduler \ -p serai-processor-transaction-chaining-scheduler \ + -p serai-processor-signers \ -p serai-bitcoin-processor \ -p serai-ethereum-processor \ -p serai-monero-processor \ diff --git a/Cargo.toml b/Cargo.toml index 3ec76f59..25e6c25d 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -81,6 +81,8 @@ members = [ "processor/scheduler/utxo/primitives", "processor/scheduler/utxo/standard", "processor/scheduler/utxo/transaction-chaining", + "processor/signers", + "processor/bitcoin", "processor/ethereum", "processor/monero", diff --git a/deny.toml b/deny.toml index 8fbb8fc9..ef195411 100644 --- a/deny.toml +++ b/deny.toml @@ -55,6 +55,7 @@ exceptions = [ { allow = ["AGPL-3.0"], name = "serai-processor-utxo-scheduler-primitives" }, { allow = ["AGPL-3.0"], name = "serai-processor-standard-scheduler" }, { allow = ["AGPL-3.0"], name = "serai-processor-transaction-chaining-scheduler" }, + { allow = ["AGPL-3.0"], name = "serai-processor-signers" }, { allow = ["AGPL-3.0"], name = "serai-bitcoin-processor" }, { allow = ["AGPL-3.0"], name = "serai-ethereum-processor" }, diff --git a/processor/frost-attempt-manager/Cargo.toml b/processor/frost-attempt-manager/Cargo.toml index a01acf0f..67bd8bb6 100644 --- a/processor/frost-attempt-manager/Cargo.toml +++ b/processor/frost-attempt-manager/Cargo.toml @@ -7,7 +7,7 @@ repository = "https://github.com/serai-dex/serai/tree/develop/processor/frost-at authors = ["Luke Parker "] keywords = ["frost", "multisig", "threshold"] edition = "2021" -rust-version = "1.79" +publish = false [package.metadata.docs.rs] all-features = true diff --git a/processor/frost-attempt-manager/README.md b/processor/frost-attempt-manager/README.md index c7b0be25..08a61398 100644 --- a/processor/frost-attempt-manager/README.md +++ b/processor/frost-attempt-manager/README.md @@ -3,4 +3,4 @@ A library for helper structures to manage various attempts of a FROST signing protocol. -This library is interacted with via the `serai-processor-messages::sign` API. +This library is interacted with via the `serai_processor_messages::sign` API. diff --git a/processor/key-gen/README.md b/processor/key-gen/README.md index c28357ba..566d1035 100644 --- a/processor/key-gen/README.md +++ b/processor/key-gen/README.md @@ -5,4 +5,4 @@ protocol. Two invocations of the eVRF-based DKG are performed, one for Ristretto (to have a key to oraclize values onto the Serai blockchain with) and one for the external network's curve. -This library is interacted with via the `serai-processor-messages::key_gen` API. +This library is interacted with via the `serai_processor_messages::key_gen` API. diff --git a/processor/scanner/Cargo.toml b/processor/scanner/Cargo.toml index c2dc31fe..a3e6a9ba 100644 --- a/processor/scanner/Cargo.toml +++ b/processor/scanner/Cargo.toml @@ -5,9 +5,9 @@ description = "Scanner of abstract blockchains for Serai" license = "AGPL-3.0-only" repository = "https://github.com/serai-dex/serai/tree/develop/processor/scanner" authors = ["Luke Parker "] -keywords = ["frost", "multisig", "threshold"] +keywords = [] edition = "2021" -rust-version = "1.79" +publish = false [package.metadata.docs.rs] all-features = true diff --git a/processor/signers/Cargo.toml b/processor/signers/Cargo.toml new file mode 100644 index 00000000..70248960 --- /dev/null +++ b/processor/signers/Cargo.toml @@ -0,0 +1,22 @@ +[package] +name = "serai-processor-signers" +version = "0.1.0" +description = "Signers for the Serai processor" +license = "AGPL-3.0-only" +repository = "https://github.com/serai-dex/serai/tree/develop/processor/signers" +authors = ["Luke Parker "] +keywords = [] +edition = "2021" +publish = false + +[package.metadata.docs.rs] +all-features = true +rustdoc-args = ["--cfg", "docsrs"] + +[package.metadata.cargo-machete] +ignored = ["borsh", "scale"] + +[lints] +workspace = true + +[dependencies] diff --git a/processor/signers/LICENSE b/processor/signers/LICENSE new file mode 100644 index 00000000..e091b149 --- /dev/null +++ b/processor/signers/LICENSE @@ -0,0 +1,15 @@ +AGPL-3.0-only license + +Copyright (c) 2024 Luke Parker + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU Affero General Public License Version 3 as +published by the Free Software Foundation. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU Affero General Public License for more details. + +You should have received a copy of the GNU Affero General Public License +along with this program. If not, see . diff --git a/processor/signers/README.md b/processor/signers/README.md new file mode 100644 index 00000000..b6eddd56 --- /dev/null +++ b/processor/signers/README.md @@ -0,0 +1,6 @@ +# Processor Signers + +Implementations of the tree signers used by a processor (the transaction signer, +the Substrate signer, and the cosigner). + +This library is interacted with via the `serai_processor_messages::sign` API. diff --git a/processor/signers/src/cosigner.rs b/processor/signers/src/cosigner.rs new file mode 100644 index 00000000..e69de29b diff --git a/processor/signers/src/lib.rs b/processor/signers/src/lib.rs new file mode 100644 index 00000000..e69de29b diff --git a/processor/signers/src/substrate.rs b/processor/signers/src/substrate.rs new file mode 100644 index 00000000..e69de29b diff --git a/processor/signers/src/transaction.rs b/processor/signers/src/transaction.rs new file mode 100644 index 00000000..e69de29b