* ci: add cargo check on rust stable
* refactor: upgrade secp256kfun and fix resulting issues
* build(deps): update sigma_fun and ecdsa_fun to a52142cf7f
#1520#1521
* chore: fix clippy issue
* update to 91112f80b24
* bump to 294de1721add
* chore(deps): remove spectral
spectral fails to compile on rust stable 1.76 due to dep on deprecated
rustc-serialize
* secp256kfun: update to 7da9d277 and set rev in manifest
* update to 6fdc5d8
* switch to crates.io versions of ecdsa_fun and sigma_fun
* ci: update toolchain to 1.74 and fix draft action
* clippy fixes
---------
Co-authored-by: binarybaron <86064887+binarybaron@users.noreply.github.com>
This will allow us to compile on stable Rust.
The latest version of `secp256kfun` uses `curve25519-dalek-ng` instead
of the original curve25519-dalek crate. Instead of converting back and
forth, we simply switch to this crate as well. Judging from the README
it is just a fork because there was trouble between the maintainers of
the original crate.
This is fairly bare-bones for now and only contains one piece of
functionality: choosing random key offsets.
More functionality for actually signing Monero transactions will
be added later.
Invoking cargo tomlfmt on all files is a PITA and as we can see from
the CI scripts, it is often forgotten to as new crates are added to
the workspace.
Using dprint for toml files fixes this.
Unfortunately, we can't use dprint for Rust code yet because there
hasn't been a release of rustfmt in quite a while but we are already
using features from a newer rustfmt via rustup.
Created network, storage and protocol modules. Organised
files into the modules where the belong.
xmr_btc crate moved into isolated modulein swap crate.
Remove the xmr_btc module and integrate into swap crate.
Consolidate message related code
Reorganise imports
Remove unused parent Message enum
Remove unused parent State enum
Remove unused dependencies from Cargo.toml
Add a binary crate `swap` that implements two nodes (Alice and Bob). With this
applied we can start up a node for each role and do:
- Bob: Requests current amounts using BTC is input
- Alice: Responds with amounts
- Bob: (mock) get user input to Ok the amounts
... continue with swap (TODO)