diff --git a/.github/workflows/rust-aptos-checks.yml b/.github/workflows/rust-aptos-checks.yml
index 66d208853..54f58aa3c 100644
--- a/.github/workflows/rust-aptos-checks.yml
+++ b/.github/workflows/rust-aptos-checks.yml
@@ -15,7 +15,7 @@ jobs:
- uses: actions-rs/toolchain@v1
with:
- toolchain: nightly-2024-01-31
+ toolchain: nightly-2024-07-01
override: true
components: rustfmt
target: x86_64-apple-darwin
@@ -24,4 +24,4 @@ jobs:
uses: taiki-e/install-action@cargo-llvm-cov
- name: Run rust/apps/aptos
- run: cd rust/apps/aptos && cargo +nightly-2024-01-31 llvm-cov --fail-under-functions 50 --fail-under-lines 50 --fail-under-regions 50
+ run: cd rust/apps/aptos && cargo +nightly-2024-07-01 llvm-cov --fail-under-functions 50 --fail-under-lines 50 --fail-under-regions 50
diff --git a/.github/workflows/rust-arweave-checks.yml b/.github/workflows/rust-arweave-checks.yml
index 2cccc8567..aa3e29935 100644
--- a/.github/workflows/rust-arweave-checks.yml
+++ b/.github/workflows/rust-arweave-checks.yml
@@ -15,7 +15,7 @@ jobs:
- uses: actions-rs/toolchain@v1
with:
- toolchain: nightly-2024-01-31
+ toolchain: nightly-2024-07-01
override: true
components: rustfmt
target: x86_64-apple-darwin
@@ -24,4 +24,4 @@ jobs:
uses: taiki-e/install-action@cargo-llvm-cov
- name: Run rust/apps/arweave
- run: cd rust/apps/arweave && cargo +nightly-2024-01-31 llvm-cov --fail-under-functions 50 --fail-under-lines 50 --fail-under-regions 50
+ run: cd rust/apps/arweave && cargo +nightly-2024-07-01 llvm-cov --fail-under-functions 50 --fail-under-lines 50 --fail-under-regions 50
diff --git a/.github/workflows/rust-bitcoin-checks.yml b/.github/workflows/rust-bitcoin-checks.yml
index 8ed35fb6d..3d758456b 100644
--- a/.github/workflows/rust-bitcoin-checks.yml
+++ b/.github/workflows/rust-bitcoin-checks.yml
@@ -15,7 +15,7 @@ jobs:
- uses: actions-rs/toolchain@v1
with:
- toolchain: nightly-2024-01-31
+ toolchain: nightly-2024-07-01
override: true
components: rustfmt
target: x86_64-apple-darwin
@@ -24,4 +24,4 @@ jobs:
uses: taiki-e/install-action@cargo-llvm-cov
- name: Run rust/apps/bitcoin
- run: cd rust/apps/bitcoin && cargo +nightly-2024-01-31 llvm-cov --fail-under-functions 50 --fail-under-lines 50 --fail-under-regions 50
+ run: cd rust/apps/bitcoin && cargo +nightly-2024-07-01 llvm-cov --fail-under-functions 50 --fail-under-lines 50 --fail-under-regions 50
diff --git a/.github/workflows/rust-cardano-checks.yml b/.github/workflows/rust-cardano-checks.yml
index 8529ec310..ee5378ccc 100644
--- a/.github/workflows/rust-cardano-checks.yml
+++ b/.github/workflows/rust-cardano-checks.yml
@@ -15,7 +15,7 @@ jobs:
- uses: actions-rs/toolchain@v1
with:
- toolchain: nightly-2024-01-31
+ toolchain: nightly-2024-07-01
override: true
components: rustfmt
target: x86_64-apple-darwin
@@ -24,4 +24,4 @@ jobs:
uses: taiki-e/install-action@cargo-llvm-cov
- name: Run rust/apps/cardano
- run: cd rust/apps/cardano && cargo +nightly-2024-01-31 llvm-cov --fail-under-functions 50 --fail-under-lines 50 --fail-under-regions 50
+ run: cd rust/apps/cardano && cargo +nightly-2024-07-01 llvm-cov --fail-under-functions 50 --fail-under-lines 50 --fail-under-regions 50
diff --git a/.github/workflows/rust-cosmos-checks.yml b/.github/workflows/rust-cosmos-checks.yml
index f0ea168b4..372b300d6 100644
--- a/.github/workflows/rust-cosmos-checks.yml
+++ b/.github/workflows/rust-cosmos-checks.yml
@@ -15,7 +15,7 @@ jobs:
- uses: actions-rs/toolchain@v1
with:
- toolchain: nightly-2024-01-31
+ toolchain: nightly-2024-07-01
override: true
components: rustfmt
target: x86_64-apple-darwin
@@ -24,4 +24,4 @@ jobs:
uses: taiki-e/install-action@cargo-llvm-cov
- name: Run rust/apps/cosmos
- run: cd rust/apps/cosmos && cargo +nightly-2024-01-31 llvm-cov --fail-under-regions 18 --fail-under-functions 12 --fail-under-lines 47
+ run: cd rust/apps/cosmos && cargo +nightly-2024-07-01 llvm-cov --fail-under-regions 18 --fail-under-functions 12 --fail-under-lines 47
diff --git a/.github/workflows/rust-ethereum-checks.yml b/.github/workflows/rust-ethereum-checks.yml
index a5630cef5..7e6b685b6 100644
--- a/.github/workflows/rust-ethereum-checks.yml
+++ b/.github/workflows/rust-ethereum-checks.yml
@@ -15,7 +15,7 @@ jobs:
- uses: actions-rs/toolchain@v1
with:
- toolchain: nightly-2024-01-31
+ toolchain: nightly-2024-07-01
override: true
components: rustfmt
target: x86_64-apple-darwin
@@ -24,4 +24,4 @@ jobs:
uses: taiki-e/install-action@cargo-llvm-cov
- name: Run rust/apps/ethereum
- run: cd rust/apps/ethereum && cargo +nightly-2024-01-31 llvm-cov --fail-under-functions 50 --fail-under-lines 50 --fail-under-regions 50
+ run: cd rust/apps/ethereum && cargo +nightly-2024-07-01 llvm-cov --fail-under-functions 50 --fail-under-lines 50 --fail-under-regions 50
diff --git a/.github/workflows/rust-fmt-checks.yml b/.github/workflows/rust-fmt-checks.yml
index 08fea9737..3f05ed2a9 100644
--- a/.github/workflows/rust-fmt-checks.yml
+++ b/.github/workflows/rust-fmt-checks.yml
@@ -15,40 +15,40 @@ jobs:
- uses: actions-rs/toolchain@v1
with:
- toolchain: nightly-2024-01-31
+ toolchain: nightly-2024-07-01
override: true
target: x86_64-apple-darwin
components: rustfmt
- name: Run rust/apps/bitcoin
- run: cd rust/apps/bitcoin && cargo +nightly-2024-01-31 fmt --check
+ run: cd rust/apps/bitcoin && cargo +nightly-2024-07-01 fmt --check
- name: Run rust/apps/ethereum
- run: cd rust/apps/ethereum && cargo +nightly-2024-01-31 fmt --check
+ run: cd rust/apps/ethereum && cargo +nightly-2024-07-01 fmt --check
- name: Run rust/apps/solana
- run: cd rust/apps/solana && cargo +nightly-2024-01-31 fmt --check
+ run: cd rust/apps/solana && cargo +nightly-2024-07-01 fmt --check
- name: Run rust/apps/cardano
- run: cd rust/apps/cardano && cargo +nightly-2024-01-31 fmt --check
+ run: cd rust/apps/cardano && cargo +nightly-2024-07-01 fmt --check
- name: Run rust/apps/tron
- run: cd rust/apps/tron && cargo +nightly-2024-01-31 fmt --check
+ run: cd rust/apps/tron && cargo +nightly-2024-07-01 fmt --check
- name: Run rust/apps/near
- run: cd rust/apps/near && cargo +nightly-2024-01-31 fmt --check
+ run: cd rust/apps/near && cargo +nightly-2024-07-01 fmt --check
- name: Run rust/apps/xrp
- run: cd rust/apps/xrp && cargo +nightly-2024-01-31 fmt --check
+ run: cd rust/apps/xrp && cargo +nightly-2024-07-01 fmt --check
- name: Run rust/apps/cosmos
- run: cd rust/apps/cosmos && cargo +nightly-2024-01-31 fmt --check
+ run: cd rust/apps/cosmos && cargo +nightly-2024-07-01 fmt --check
- name: Run rust/apps/aptos
- run: cd rust/apps/aptos && cargo +nightly-2024-01-31 fmt --check
+ run: cd rust/apps/aptos && cargo +nightly-2024-07-01 fmt --check
- name: Run rust/apps/sui
- run: cd rust/apps/sui && cargo +nightly-2024-01-31 fmt --check
+ run: cd rust/apps/sui && cargo +nightly-2024-07-01 fmt --check
- name: Run rust/apps/arweave
- run: cd rust/apps/arweave && cargo +nightly-2024-01-31 fmt --check
+ run: cd rust/apps/arweave && cargo +nightly-2024-07-01 fmt --check
- name: Run rust/apps/stellar
- run: cd rust/apps/stellar && cargo +nightly-2024-01-31 fmt --check
+ run: cd rust/apps/stellar && cargo +nightly-2024-07-01 fmt --check
- name: Run rust/apps/utils
- run: cd rust/apps/utils && cargo +nightly-2024-01-31 fmt --check
+ run: cd rust/apps/utils && cargo +nightly-2024-07-01 fmt --check
- name: Run rust/apps/wallets
- run: cd rust/apps/wallets && cargo +nightly-2024-01-31 fmt --check
+ run: cd rust/apps/wallets && cargo +nightly-2024-07-01 fmt --check
- name: Run rust/keystore
- run: cd rust/keystore && cargo +nightly-2024-01-31 fmt --check
+ run: cd rust/keystore && cargo +nightly-2024-07-01 fmt --check
- name: Run rust/rust_c
- run: cd rust/rust_c && cargo +nightly-2024-01-31 fmt --check
+ run: cd rust/rust_c && cargo +nightly-2024-07-01 fmt --check
diff --git a/.github/workflows/rust-keystore-checks.yml b/.github/workflows/rust-keystore-checks.yml
index e1de29564..bb522acab 100644
--- a/.github/workflows/rust-keystore-checks.yml
+++ b/.github/workflows/rust-keystore-checks.yml
@@ -15,7 +15,7 @@ jobs:
- uses: actions-rs/toolchain@v1
with:
- toolchain: nightly-2024-01-31
+ toolchain: nightly-2024-07-01
override: true
components: rustfmt
target: x86_64-apple-darwin
@@ -24,4 +24,4 @@ jobs:
uses: taiki-e/install-action@cargo-llvm-cov
- name: Run rust/keystore
- run: cd rust/keystore && cargo +nightly-2024-01-31 llvm-cov --fail-under-functions 50 --fail-under-lines 50 --fail-under-regions 50
+ run: cd rust/keystore && cargo +nightly-2024-07-01 llvm-cov --fail-under-functions 50 --fail-under-lines 50 --fail-under-regions 50
diff --git a/.github/workflows/rust-monero-checks.yml b/.github/workflows/rust-monero-checks.yml
new file mode 100644
index 000000000..a361e34a2
--- /dev/null
+++ b/.github/workflows/rust-monero-checks.yml
@@ -0,0 +1,27 @@
+on:
+ pull_request:
+ paths:
+ - rust/apps/monero/**
+
+name: Monero Checks
+
+jobs:
+ UnitTest:
+ name: Unit Test And Code coverage
+ runs-on: ubuntu-latest
+ steps:
+ - name: Checkout sources
+ uses: actions/checkout@v2
+
+ - uses: actions-rs/toolchain@v1
+ with:
+ toolchain: nightly-2024-07-01
+ override: true
+ components: rustfmt
+ target: x86_64-apple-darwin
+
+ - name: Install cargo-llvm-cov
+ uses: taiki-e/install-action@cargo-llvm-cov
+
+ - name: Run rust/apps/monero
+ run: cd rust/apps/monero && cargo +nightly-2024-07-01 llvm-cov --fail-under-functions 50 --fail-under-lines 50 --fail-under-regions 50
diff --git a/.github/workflows/rust-near-checks.yml b/.github/workflows/rust-near-checks.yml
index 480c43a3d..60febff5f 100644
--- a/.github/workflows/rust-near-checks.yml
+++ b/.github/workflows/rust-near-checks.yml
@@ -15,7 +15,7 @@ jobs:
- uses: actions-rs/toolchain@v1
with:
- toolchain: nightly-2024-01-31
+ toolchain: nightly-2024-07-01
override: true
components: rustfmt
target: x86_64-apple-darwin
@@ -24,4 +24,4 @@ jobs:
uses: taiki-e/install-action@cargo-llvm-cov
- name: Run rust/apps/near
- run: cd rust/apps/near && cargo +nightly-2024-01-31 llvm-cov --fail-under-regions 49 --fail-under-functions 52 --fail-under-lines 68
+ run: cd rust/apps/near && cargo +nightly-2024-07-01 llvm-cov --fail-under-regions 49 --fail-under-functions 52 --fail-under-lines 68
diff --git a/.github/workflows/rust-solana-checks.yml b/.github/workflows/rust-solana-checks.yml
index f7d30d757..da8a8d077 100644
--- a/.github/workflows/rust-solana-checks.yml
+++ b/.github/workflows/rust-solana-checks.yml
@@ -15,7 +15,7 @@ jobs:
- uses: actions-rs/toolchain@v1
with:
- toolchain: nightly-2024-01-31
+ toolchain: nightly-2024-07-01
override: true
components: rustfmt
target: x86_64-apple-darwin
@@ -24,4 +24,4 @@ jobs:
uses: taiki-e/install-action@cargo-llvm-cov
- name: Run rust/apps/solana
- run: cd rust/apps/solana && cargo +nightly-2024-01-31 llvm-cov --fail-under-regions 21 --fail-under-functions 34 --fail-under-lines 38
+ run: cd rust/apps/solana && cargo +nightly-2024-07-01 llvm-cov --fail-under-regions 21 --fail-under-functions 34 --fail-under-lines 38
diff --git a/.github/workflows/rust-stellar-checks.yml b/.github/workflows/rust-stellar-checks.yml
index 0f74ee527..0a22d53ad 100644
--- a/.github/workflows/rust-stellar-checks.yml
+++ b/.github/workflows/rust-stellar-checks.yml
@@ -15,7 +15,7 @@ jobs:
- uses: actions-rs/toolchain@v1
with:
- toolchain: nightly-2024-01-31
+ toolchain: nightly-2024-07-01
override: true
components: rustfmt
target: x86_64-apple-darwin
@@ -24,4 +24,4 @@ jobs:
uses: taiki-e/install-action@cargo-llvm-cov
- name: Run rust/apps/stellar
- run: cd rust/apps/stellar && cargo +nightly-2024-01-31 llvm-cov --fail-under-functions 50 --fail-under-lines 50 --fail-under-regions 50
+ run: cd rust/apps/stellar && cargo +nightly-2024-07-01 llvm-cov --fail-under-functions 50 --fail-under-lines 50 --fail-under-regions 50
diff --git a/.github/workflows/rust-sui-checks.yml b/.github/workflows/rust-sui-checks.yml
index 9358e10fd..320122b7b 100644
--- a/.github/workflows/rust-sui-checks.yml
+++ b/.github/workflows/rust-sui-checks.yml
@@ -15,7 +15,7 @@ jobs:
- uses: actions-rs/toolchain@v1
with:
- toolchain: nightly-2024-01-31
+ toolchain: nightly-2024-07-01
override: true
components: rustfmt
target: x86_64-apple-darwin
@@ -24,4 +24,4 @@ jobs:
uses: taiki-e/install-action@cargo-llvm-cov
- name: Run rust/apps/sui
- run: cd rust/apps/sui && cargo +nightly-2024-01-31 llvm-cov --fail-under-functions 50 --fail-under-lines 50 --fail-under-regions 50
+ run: cd rust/apps/sui && cargo +nightly-2024-07-01 llvm-cov --fail-under-functions 50 --fail-under-lines 50 --fail-under-regions 50
diff --git a/.github/workflows/rust-ton-checks.yml b/.github/workflows/rust-ton-checks.yml
index 8d20d6dc6..c6308baa4 100644
--- a/.github/workflows/rust-ton-checks.yml
+++ b/.github/workflows/rust-ton-checks.yml
@@ -15,7 +15,7 @@ jobs:
- uses: actions-rs/toolchain@v1
with:
- toolchain: nightly-2024-01-31
+ toolchain: nightly-2024-07-01
override: true
components: rustfmt
target: x86_64-apple-darwin
@@ -24,4 +24,4 @@ jobs:
uses: taiki-e/install-action@cargo-llvm-cov
- name: Run rust/apps/ton
- run: cd rust/apps/ton && cargo +nightly-2024-01-31 llvm-cov --fail-under-regions 41 --fail-under-functions 48 --fail-under-lines 47
+ run: cd rust/apps/ton && cargo +nightly-2024-07-01 llvm-cov --fail-under-regions 41 --fail-under-functions 48 --fail-under-lines 47
diff --git a/.github/workflows/rust-tron-checks.yml b/.github/workflows/rust-tron-checks.yml
index 993b46215..d4ee2e999 100644
--- a/.github/workflows/rust-tron-checks.yml
+++ b/.github/workflows/rust-tron-checks.yml
@@ -15,7 +15,7 @@ jobs:
- uses: actions-rs/toolchain@v1
with:
- toolchain: nightly-2024-01-31
+ toolchain: nightly-2024-07-01
override: true
components: rustfmt
target: x86_64-apple-darwin
@@ -24,4 +24,4 @@ jobs:
uses: taiki-e/install-action@cargo-llvm-cov
- name: Run rust/apps/tron
- run: cd rust/apps/tron && cargo +nightly-2024-01-31 llvm-cov --fail-under-functions 50 --fail-under-lines 50 --fail-under-regions 50
+ run: cd rust/apps/tron && cargo +nightly-2024-07-01 llvm-cov --fail-under-functions 50 --fail-under-lines 50 --fail-under-regions 50
diff --git a/.github/workflows/rust-utils-checks.yml b/.github/workflows/rust-utils-checks.yml
index 9aec2192b..b85f823a4 100644
--- a/.github/workflows/rust-utils-checks.yml
+++ b/.github/workflows/rust-utils-checks.yml
@@ -15,7 +15,7 @@ jobs:
- uses: actions-rs/toolchain@v1
with:
- toolchain: nightly-2024-01-31
+ toolchain: nightly-2024-07-01
override: true
components: rustfmt
target: x86_64-apple-darwin
@@ -24,4 +24,4 @@ jobs:
uses: taiki-e/install-action@cargo-llvm-cov
- name: Run rust/apps/utils
- run: cd rust/apps/utils && cargo +nightly-2024-01-31 llvm-cov --fail-under-functions 50 --fail-under-lines 50 --fail-under-regions 50
+ run: cd rust/apps/utils && cargo +nightly-2024-07-01 llvm-cov --fail-under-functions 50 --fail-under-lines 50 --fail-under-regions 50
diff --git a/.github/workflows/rust-wallets-checks.yml b/.github/workflows/rust-wallets-checks.yml
index 005b09846..6aad3b913 100644
--- a/.github/workflows/rust-wallets-checks.yml
+++ b/.github/workflows/rust-wallets-checks.yml
@@ -15,7 +15,7 @@ jobs:
- uses: actions-rs/toolchain@v1
with:
- toolchain: nightly-2024-01-31
+ toolchain: nightly-2024-07-01
override: true
components: rustfmt
target: x86_64-apple-darwin
@@ -24,4 +24,4 @@ jobs:
uses: taiki-e/install-action@cargo-llvm-cov
- name: Run rust/apps/wallets
- run: cd rust/apps/wallets && cargo +nightly-2024-01-31 llvm-cov --fail-under-regions 39 --fail-under-functions 40 --fail-under-lines 57
+ run: cd rust/apps/wallets && cargo +nightly-2024-07-01 llvm-cov --fail-under-regions 39 --fail-under-functions 40 --fail-under-lines 57
diff --git a/.github/workflows/rust-xrp-checks.yml b/.github/workflows/rust-xrp-checks.yml
index 6b7d7a44a..258b3d2c7 100644
--- a/.github/workflows/rust-xrp-checks.yml
+++ b/.github/workflows/rust-xrp-checks.yml
@@ -15,7 +15,7 @@ jobs:
- uses: actions-rs/toolchain@v1
with:
- toolchain: nightly-2024-01-31
+ toolchain: nightly-2024-07-01
override: true
components: rustfmt
target: x86_64-apple-darwin
@@ -24,4 +24,4 @@ jobs:
uses: taiki-e/install-action@cargo-llvm-cov
- name: Run rust/apps/xrp
- run: cd rust/apps/xrp && cargo +nightly-2024-01-31 llvm-cov --fail-under-functions 50 --fail-under-lines 50 --fail-under-regions 50
+ run: cd rust/apps/xrp && cargo +nightly-2024-07-01 llvm-cov --fail-under-functions 50 --fail-under-lines 50 --fail-under-regions 50
diff --git a/.github/workflows/rust-zcash-checks.yml b/.github/workflows/rust-zcash-checks.yml
index ec0d4b8ae..429ae63a7 100644
--- a/.github/workflows/rust-zcash-checks.yml
+++ b/.github/workflows/rust-zcash-checks.yml
@@ -15,7 +15,7 @@ jobs:
- uses: actions-rs/toolchain@v1
with:
- toolchain: nightly-2024-01-31
+ toolchain: nightly-2024-07-01
override: true
components: rustfmt
target: x86_64-apple-darwin
@@ -24,4 +24,4 @@ jobs:
uses: taiki-e/install-action@cargo-llvm-cov
- name: Run rust/apps/zcash
- run: cd rust/apps/zcash && cargo +nightly-2024-01-31 llvm-cov --fail-under-regions 48 --fail-under-functions 42 --fail-under-lines 56
+ run: cd rust/apps/zcash && cargo +nightly-2024-07-01 llvm-cov --fail-under-regions 48 --fail-under-functions 42 --fail-under-lines 56
diff --git a/.gitignore b/.gitignore
index 459154016..53cfa7807 100644
--- a/.gitignore
+++ b/.gitignore
@@ -12,3 +12,4 @@
pyenv
!/rust/apps/target/
!/rust/apps/Cargo.lock
+*.rustfmt.toml
diff --git a/.gitmodules b/.gitmodules
index 848aa5e83..99edf0892 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -7,3 +7,4 @@
[submodule "keystone3-firmware-release"]
path = keystone3-firmware-release
url = git@github.com:KeystoneHQ/keystone3-firmware-release.git
+ branch = fix-build-monero
diff --git a/CMakeLists.txt b/CMakeLists.txt
index a52582b6e..6a2800a5c 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -3,9 +3,36 @@ cmake_minimum_required(VERSION 3.10)
option(COMPILE_KEYSTONE "compile on MAIN target" ON)
+set(BUILD_ENVIRONMENT "DEBUG")
+set(BUILD_VARIANT "MULTI_COINS")
+
+set(WIDGET_PATH "multi")
+if(CYPHERPUNK)
+ message(STATUS "Building for CYPHERPUNK")
+ add_compile_definitions(CYPHERPUNK_VERSION)
+ set(BUILD_VARIANT "CYPHERPUNK")
+ set(WIDGET_SUBPATH "multi/cypherpunk")
+elseif(BTC_ONLY)
+ message(STATUS "Building for BTC_ONLY")
+ set(WIDGET_SUBPATH "btc_only/multi_sig")
+ set(WIDGET_PATH "btc_only")
+ set(BUILD_VARIANT "BTC_ONLY")
+ add_compile_definitions(BTC_ONLY)
+ add_compile_definitions(EXCLUDE_RUSTC)
+else()
+ message(STATUS "Building for WEB3_VERSION")
+ add_compile_definitions(WEB3_VERSION)
+ set(WIDGET_SUBPATH "multi/web3")
+ set(BUILD_VARIANT "MULTI_COINS")
+endif()
if(BUILD_TYPE STREQUAL "Simulator")
set(COMPILE_KEYSTONE OFF CACHE BOOL "compile on MAIN target" FORCE)
set(COMPILE_SIMULATOR ON CACHE BOOL "compile on Simulator target" FORCE)
+ set(BUILD_ENVIRONMENT "SIMULATOR")
+endif()
+
+if(BUILD_PRODUCTION)
+ set(BUILD_ENVIRONMENT "PRODUCTION")
endif()
set(CMAKE_C_FLAGS_DEBUG "-O0 -g2 -ggdb")
@@ -36,10 +63,6 @@ foreach(_variableName ${_variableNames})
endif()
endforeach()
-if(BTC_ONLY)
- add_compile_definitions(BTC_ONLY)
- add_compile_definitions(EXCLUDE_RUSTC)
-endif()
set(COMMON_DEFINITIONS
USE_STDPERIPH_DRIVER
@@ -61,29 +84,32 @@ set(CRYPTO_INCLUDE_PATH
src/crypto/slip39/trezor-crypto
)
+set(GUI_CUSTOM_INCLUDE_PATH
+ src/ui/gui_widgets/${WIDGET_SUBPATH}
+ src/ui/gui_widgets/${WIDGET_PATH}
+ src/ui/gui_chain/${WIDGET_SUBPATH}
+ src/ui/gui_chain/${WIDGET_PATH}
+ src/ui/gui_wallet/${WIDGET_SUBPATH}
+ src/ui/gui_wallet/${WIDGET_PATH}
+)
+
set(GUI_INCLUDE_PATH
src/ui
src/ui/gui_views
src/ui/gui_assets
src/ui/gui_assets/abi
src/ui/gui_frame
+ ${GUI_CUSTOM_INCLUDE_PATH}
src/ui/gui_widgets
src/ui/gui_widgets/setting
src/ui/lv_i18n
src/ui/gui_model
src/ui/gui_analyze
src/ui/gui_chain
- src/ui/gui_chain/btc
src/ui/gui_components
- src/ui/wallet
+ src/ui/gui_wallet
)
-if(BTC_ONLY)
- list(APPEND GUI_INCLUDE_PATH src/ui/gui_widgets/btc_only src/ui/gui_widgets/btc_only/multi_sig src/ui/gui_widgets/general)
-else()
- list(APPEND GUI_INCLUDE_PATH src/ui/gui_chain/others src/ui/gui_widgets/general)
-endif()
-
set(EXTERNAL_INCLUDE_PATH
external
external/ctaes
@@ -140,6 +166,7 @@ set(SRC_INCLUDE_PATH
src/hardware_interface
src/webusb_protocol
src/webusb_protocol/services
+ src/webusb_protocol/general
)
set(INCLUDE_DIR
@@ -159,21 +186,37 @@ if(NOT BUILD_PRODUCTION)
list(APPEND INCLUDE_DIR test)
set(TEST_CMD test)
endif()
+
+file(GLOB GUI_CUSTOM_VIEW_WIDGETS
+ src/ui/gui_views/*.c
+ src/ui/gui_views/web3/*.c
+ src/ui/gui_widgets/*.c
+ src/ui/gui_widgets/web3/*.c
+ src/ui/gui_wallet/*.c
+ src/ui/gui_chain/*.c
+ src/ui/gui_analyze/*.c
+ src/ui/gui_widgets/${WIDGET_SUBPATH}/*.c
+ src/ui/gui_widgets/${WIDGET_PATH}/*.c
+ src/ui/gui_views/${WIDGET_SUBPATH}/*.c
+ src/ui/gui_views/${WIDGET_PATH}/*.c
+ src/ui/gui_chain/${WIDGET_SUBPATH}/*.c
+ src/ui/gui_chain/${WIDGET_PATH}/*.c
+ src/ui/gui_wallet/${WIDGET_SUBPATH}/*.c
+ src/ui/gui_wallet/${WIDGET_PATH}/*.c
+ src/ui/gui_analyze/${WIDGET_SUBPATH}/*.c
+ src/ui/gui_analyze/${WIDGET_PATH}/*.c
+)
file(GLOB_RECURSE GUI
+ ${GUI_CUSTOM_VIEW_WIDGETS}
"src/ui/gui_assets/*.c"
"src/ui/gui_assets/font/*.c"
"src/ui/gui_assets/abi/*.c"
"src/ui/gui_frame/*.c"
- "src/ui/gui_views/*.c"
- "src/ui/gui_widgets/*.c"
"src/ui/gui_widgets/setting/*.c"
"src/ui/lv_i18n/*.c"
"src/ui/gui_model/*.c"
- "src/ui/gui_analyze/*.c"
- "src/ui/gui_chain/*.c"
"src/ui/gui_components/*.c"
- "src/ui/wallet/*.c"
)
file(GLOB_RECURSE LVGL
@@ -267,18 +310,6 @@ if(COMPILE_KEYSTONE)
src/cm_backtrace/fault_handler/gcc/cmb_fault.s
)
- if(BTC_ONLY)
- set(excluded_directories
- src/ui/gui_chain/others
- src/ui/gui_widgets/general
- src/ui/gui_views/general
- src/webusb_protocol/general)
- else()
- set(excluded_directories
- src/ui/gui_views/btc_only
- src/ui/gui_widgets/btc_only)
- endif()
-
foreach(directory ${excluded_directories})
file(GLOB_RECURSE excluded_files "${directory}/*")
list(REMOVE_ITEM objsrc ${excluded_files})
diff --git a/Dockerfile b/Dockerfile
index 1905bc7e9..7f8e77230 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -16,8 +16,8 @@ RUN apt-get install -y \
RUN curl https://sh.rustup.rs -sSf | sh -s -- --default-toolchain nightly -y
ENV PATH=/root/.cargo/bin:$PATH
-RUN rustup default nightly-2024-01-31
-RUN rustup target add thumbv7em-none-eabihf --toolchain nightly-2024-01-31
+RUN rustup default nightly-2024-07-01
+RUN rustup target add thumbv7em-none-eabihf --toolchain nightly-2024-07-01
RUN cargo install cbindgen bindgen-cli
RUN pip3 install PyYaml
diff --git a/README.md b/README.md
index f119f402b..737bc6765 100644
--- a/README.md
+++ b/README.md
@@ -26,7 +26,7 @@ brew install armmbed/formulae/arm-none-eabi-gcc
# Install Rust
# For instructions, visit https://www.rust-lang.org/tools/install
-rustup install nightly-2024-01-31
+rustup install nightly-2024-07-01
rustup target add thumbv7em-none-eabihf
cargo install bindgen-cli
cargo install cbindgen
diff --git a/build.bat b/build.bat
index 801d3f3eb..d4c13f003 100644
--- a/build.bat
+++ b/build.bat
@@ -12,7 +12,7 @@ SET LANGUAGE_PATH=%CD%\src\ui\lv_i18n
SET LANGUAGE_SCRIPT=py data_loader.py
SET RUST_C_PATH=%CD%\rust\rust_c
-SET "build_options=log copy production screen debug format release rebuild btc_only simulator language clean"
+SET "build_options=log copy production screen debug format release rebuild btc_only cypherpunk simulator language clean"
FOR %%O IN (%build_options%) DO SET "build_%%O=false"
FOR %%i in (%*) DO (
@@ -54,6 +54,7 @@ IF "%build_language%"=="true" (
SET cmake_parm=
IF "%build_production%"=="true" SET "cmake_parm=%cmake_parm% -DBUILD_PRODUCTION=true"
IF "%build_btc_only%"=="true" SET "cmake_parm=%cmake_parm% -DBTC_ONLY=true"
+IF "%build_cypherpunk%"=="true" SET "cmake_parm=%cmake_parm% -DCYPHERPUNK=true"
IF "%build_screen%"=="true" SET "cmake_parm=%cmake_parm% -DENABLE_SCREEN_SHOT=true"
IF "%build_debug%"=="true" SET "cmake_parm=%cmake_parm% -DDEBUG_MEMORY=true"
@@ -71,7 +72,7 @@ IF "%build_simulator%"=="true" (
) ELSE (
make -j16
)
- python3 padding_bin_file.py mh1903.bin
+ py padding_bin_file.py mh1903.bin
popd
)
diff --git a/build.py b/build.py
index 3f647af3f..b495100f0 100644
--- a/build.py
+++ b/build.py
@@ -21,6 +21,7 @@
def build_firmware(environment, options, bin_type):
is_release = environment == "production"
is_btc_only = bin_type == "btc_only"
+ is_cypherpunk = bin_type == "cypherpunk"
if not os.path.exists(build_dir):
os.makedirs(build_dir)
@@ -39,6 +40,8 @@ def build_firmware(environment, options, bin_type):
cmd += ' -DRU_SUPPORT=true'
if is_btc_only:
cmd += ' -DBTC_ONLY=true'
+ if is_cypherpunk:
+ cmd += ' -DCYPHERPUNK=true'
for option in options:
diff --git a/build.sh b/build.sh
new file mode 100644
index 000000000..2e263de2a
--- /dev/null
+++ b/build.sh
@@ -0,0 +1,123 @@
+#!/bin/bash
+
+set -e
+set -o pipefail
+
+BUILD_FOLDER="$(pwd)/build"
+BUILD_SIMULATOR_FOLDER="$(pwd)/build_simulator"
+TOOLS_FOLDER="$(pwd)/tools"
+MAKE_OAT_FILE_PATH="${TOOLS_FOLDER}/ota_file_maker"
+MAKE_PADDING_FILE_PATH="${TOOLS_FOLDER}/padding_bin_file"
+ASTYLE_PATH="${TOOLS_FOLDER}/AStyle.sh"
+PACK_PATH="$(pwd)/pack.sh"
+LANGUAGE_PATH="$(pwd)/src/ui/lv_i18n"
+LANGUAGE_SCRIPT="python3 data_loader.py"
+RUST_C_PATH="$(pwd)/rust/rust_c"
+
+declare -A build_options=(
+ ["log"]=false
+ ["copy"]=false
+ ["production"]=false
+ ["screen"]=false
+ ["debug"]=false
+ ["format"]=false
+ ["release"]=false
+ ["rebuild"]=false
+ ["btc_only"]=false
+ ["cypherpunk"]=false
+ ["simulator"]=false
+ ["language"]=false
+ ["clean"]=false
+)
+
+for arg in "$@"; do
+ if [[ "$arg" == "format" ]]; then
+ pushd "$TOOLS_FOLDER"
+ echo "Formatting files..."
+ bash "$ASTYLE_PATH"
+ popd
+ else
+ echo "Building with option: $arg"
+ build_options["$arg"]=true
+ fi
+done
+
+echo "Building with options: ${build_options[@]}"
+
+if [[ "${build_options[rebuild]}" == true ]]; then
+ if [[ -d "$BUILD_FOLDER" ]]; then
+ rm -rf "$BUILD_FOLDER"
+ fi
+ pushd "$RUST_C_PATH"
+ cargo clean
+ popd
+fi
+
+mkdir -p "$BUILD_FOLDER"
+
+if [[ ! -f "$BUILD_FOLDER/padding_bin_file.py" ]]; then
+ cp "$MAKE_PADDING_FILE_PATH/padding_bin_file.py" "$BUILD_FOLDER/padding_bin_file.py"
+fi
+
+execute_build() {
+ if [[ "${build_options[language]}" == true ]]; then
+ pushd "$LANGUAGE_PATH"
+ $LANGUAGE_SCRIPT
+ popd
+ fi
+
+ cmake_parm=""
+ if [[ "${build_options[production]}" == true ]]; then
+ cmake_parm="${cmake_parm} -DBUILD_PRODUCTION=true"
+ fi
+ if [[ "${build_options[btc_only]}" == true ]]; then
+ cmake_parm="${cmake_parm} -DBTC_ONLY=true"
+ fi
+ if [[ "${build_options[cypherpunk]}" == true ]]; then
+ cmake_parm="${cmake_parm} -DCYBERPUNK=true"
+ fi
+ if [[ "${build_options[screen]}" == true ]]; then
+ cmake_parm="${cmake_parm} -DENABLE_SCREEN_SHOT=true"
+ fi
+ if [[ "${build_options[debug]}" == true ]]; then
+ cmake_parm="${cmake_parm} -DDEBUG_MEMORY=true"
+ fi
+
+ if [[ "${build_options[simulator]}" == true ]]; then
+ mkdir -p "$BUILD_SIMULATOR_FOLDER"
+ pushd "$BUILD_SIMULATOR_FOLDER"
+ cmake -G "Unix Makefiles" -DBUILD_TYPE=Simulator $cmake_parm ..
+ make -j16
+ popd
+ else
+ pushd "$BUILD_FOLDER"
+ cmake -G "Unix Makefiles" $cmake_parm ..
+ if [[ "${build_options[log]}" == true ]]; then
+ make -j16 > makefile.log 2>&1
+ else
+ make -j16
+ fi
+ python3 padding_bin_file.py mh1903.bin
+ popd
+ fi
+
+ if [[ "${build_options[copy]}" == true ]]; then
+ echo "Generating pillar.bin file..."
+ pushd "$MAKE_OAT_FILE_PATH"
+ echo "Generating OTA files..."
+ bash make_ota_file.sh "$(pwd)/build/pillar.bin"
+ bash make_ota_file.sh "$(pwd)/build/keystone3.bin"
+ bash make_ota_file.sh "F:/pillar.bin"
+ popd
+ elif [[ "${build_options[release]}" == true ]]; then
+ pushd "$MAKE_OAT_FILE_PATH"
+ echo "Generating release files..."
+ bash make_ota_file.sh "$(pwd)/build/pillar.bin"
+ bash make_ota_file.sh "$(pwd)/build/keystone3.bin"
+ popd
+ elif [[ "${build_options[simulator]}" == true ]]; then
+ ./build/simulator.exe
+ fi
+}
+
+execute_build
diff --git a/docs/SIMULATOR.md b/docs/SIMULATOR.md
index dc5b82234..e81881dc7 100644
--- a/docs/SIMULATOR.md
+++ b/docs/SIMULATOR.md
@@ -13,7 +13,7 @@ We recommend creating a virtual env for this project: https://docs.python.org/3/
Please follow Rust official site: https://www.rust-lang.org/tools/install
We have fixed the rust version in most of our rust libs so please run this command when you finish rust setup:
-> rustup install nightly-2024-01-31
+> rustup install nightly-2024-07-01
`cbindgen` is also required to build essential C header files for Rust libs, so run the following after rust setup:
> cargo install cbindgen
diff --git a/firmware.cmake b/firmware.cmake
index 0092f06ed..356defac6 100644
--- a/firmware.cmake
+++ b/firmware.cmake
@@ -27,7 +27,7 @@ aux_source_directory(src/crypto CRYPTO)
aux_source_directory(src/crypto/bips BIPS)
aux_source_directory(src/crypto/checksum CHECKSUM)
aux_source_directory(src/crypto/utils CRYPTO_UTILS)
-file(GLOB_RECURSE WEBUSB_PROTOCOL WEBUSB_PROTOCOL/*.c)
+file(GLOB_RECURSE WEBUSB_PROTOCOL src/webusb_protocol/*.c)
list(FILTER all_files EXCLUDE REGEX "some_directory/general/.*")
file(GLOB_RECURSE USB_DRIVER
@@ -50,14 +50,15 @@ set(TASKS
src/tasks/log_task.c
src/tasks/data_parser_task.c
src/tasks/fetch_sensitive_data_task.c
+ src/tasks/cmd_task.c
)
-if(NOT BUILD_PRODUCTION)
- list(APPEND TASKS src/tasks/cmd_task.c)
-endif()
-
file(GLOB_RECURSE SRC
- "src/*.c"
+ "src/device_settings.c"
+ "src/main.c"
+ "src/presetting.c"
+ "src/user_fatfs.c"
+ "src/user_sqlite3.c"
"src/utils/*.c"
"src/utils/log/*.c"
"src/managers/*.c"
diff --git a/images/coin/coinXmr.png b/images/coin/coinXmr.png
new file mode 100644
index 000000000..ec050c652
Binary files /dev/null and b/images/coin/coinXmr.png differ
diff --git a/images/img/imgQrcodeMask.png b/images/img/imgQrcodeMask.png
new file mode 100644
index 000000000..1d5c51680
Binary files /dev/null and b/images/img/imgQrcodeMask.png differ
diff --git a/images/wallet/walletCake.png b/images/wallet/walletCake.png
new file mode 100644
index 000000000..e5e9f9c24
Binary files /dev/null and b/images/wallet/walletCake.png differ
diff --git a/images/wallet/walletFeather.png b/images/wallet/walletFeather.png
new file mode 100644
index 000000000..09d617037
Binary files /dev/null and b/images/wallet/walletFeather.png differ
diff --git a/images/walletList/walletListCake.png b/images/walletList/walletListCake.png
new file mode 100644
index 000000000..36ba2f15c
Binary files /dev/null and b/images/walletList/walletListCake.png differ
diff --git a/images/walletList/walletListFeather.png b/images/walletList/walletListFeather.png
new file mode 100644
index 000000000..9c4108815
Binary files /dev/null and b/images/walletList/walletListFeather.png differ
diff --git a/keystone3-firmware-release b/keystone3-firmware-release
index 659306f6e..c293c8cb5 160000
--- a/keystone3-firmware-release
+++ b/keystone3-firmware-release
@@ -1 +1 @@
-Subproject commit 659306f6e234e43e732ae93b7ed2e24ffe6bd5ef
+Subproject commit c293c8cb5c57e84a4093a13008034693bf736a8b
diff --git a/rust-toolchain b/rust-toolchain
index a88cc5761..b61ebfcfb 100644
--- a/rust-toolchain
+++ b/rust-toolchain
@@ -1 +1 @@
-nightly-2024-01-31
\ No newline at end of file
+nightly-2024-07-01
\ No newline at end of file
diff --git a/rust/.gitignore b/rust/.gitignore
index e330df76a..970fd171c 100644
--- a/rust/.gitignore
+++ b/rust/.gitignore
@@ -1,4 +1,5 @@
/target
/**/target
signer/build
-.idea/
\ No newline at end of file
+.idea/
+rust_c/bindings/
diff --git a/rust/BUILD.MD b/rust/BUILD.MD
new file mode 100644
index 000000000..6e6db9547
--- /dev/null
+++ b/rust/BUILD.MD
@@ -0,0 +1,34 @@
+## Build
+
+BUILD_ENVIRONMENT: PRODUCTION, DEBUG, SIMULATOR
+BUILD_VARIANT: BTC_ONLY, MULTI_COINS
+
+### Build for production
+
+```bash
+cargo build --release -p rust_c --target thumbv7em-none-eabihf --no-default-features --features production-multi-coins
+```
+
+```bash
+cargo build --release -p rust_c --target thumbv7em-none-eabihf --no-default-features --features production-btc-only
+```
+
+### Build for simulator
+
+```bash
+cargo build --release -p rust_c --no-default-features --features simulator-multi-coins
+```
+
+```bash
+cargo build --release -p rust_c --no-default-features --features simulator-btc-only
+```
+
+### Build for debug
+
+```bash
+cargo build -p rust_c --target thumbv7em-none-eabihf --no-default-features --features debug-multi-coins
+```
+
+```bash
+cargo build -p rust_c --target thumbv7em-none-eabihf --no-default-features --features debug-btc-only
+```
diff --git a/rust/CMakeLists.txt b/rust/CMakeLists.txt
index ccc78dbb2..42a95c74c 100644
--- a/rust/CMakeLists.txt
+++ b/rust/CMakeLists.txt
@@ -1,51 +1,68 @@
message(STATUS "compile rust")
+set(LIB_NAME librust_c.a)
-include(rust_c.cmake)
+# set variables
+find_program(RUST_CARGO_EXECUTABLE cargo)
+find_program(BINDGEN_EXE bindgen)
+find_program(CBINDGEN_EXE cbindgen)
-if(NOT BUILD_TYPE STREQUAL "Simulator")
- if(BTC_ONLY)
- set(CARGO_FLAG --release --target ${CARGO_ARM_TARGET} -p rust_c --no-default-features --features firmware-btc-only)
- else()
- set(CARGO_FLAG --release --target ${CARGO_ARM_TARGET} -p rust_c --no-default-features --features firmware)
- endif()
+# BUILD_ENVIRONMENT: PRODUCTION, DEBUG, SIMULATOR
+# BUILD_VARIANT: BTC_ONLY, MULTI_COINS, CYPHERPUNK
+set(RUST_DIR ${CMAKE_SOURCE_DIR}/rust)
+set(RUST_C_DIR ${RUST_DIR}/rust_c)
- if(DEFINED DEBUG_MEMORY)
- message(STATUS "build with DEBUG_MEMORY")
- set(CARGO_FLAG ${CARGO_FLAG} --features debug-memory)
- endif()
+if(BUILD_ENVIRONMENT STREQUAL "SIMULATOR")
+ set(FEATURE_ENVIRONMENT "simulator")
+ set(TARGET_PATH ${CMAKE_SOURCE_DIR}/ui_simulator/lib/rust-builds)
+elseif(BUILD_ENVIRONMENT STREQUAL "PRODUCTION")
+ set(FEATURE_ENVIRONMENT "production")
+ set(TARGET_PATH ${CMAKE_BINARY_DIR}/rust-builds)
+ set(CARGO_ARM_TARGET thumbv7em-none-eabihf)
+else()
+ set(FEATURE_ENVIRONMENT "debug")
+ set(TARGET_PATH ${CMAKE_BINARY_DIR}/rust-builds)
+ set(CARGO_ARM_TARGET thumbv7em-none-eabihf)
+endif()
- message(STATUS "cargo build command: " ${CARGO_FLAG})
- message(STATUS ${TARGET_PATH})
+message(STATUS "build environment: " ${BUILD_ENVIRONMENT})
+message(STATUS "build variant: " ${BUILD_VARIANT})
- set(COPY_COMMAND cp ${RUST_DIR}/target/${CARGO_ARM_TARGET}/release/${LIB_NAME} ${TARGET_PATH})
+message(STATUS "build target path: " ${TARGET_PATH})
+if(NOT EXISTS ${TARGET_PATH})
+ file(MAKE_DIRECTORY ${TARGET_PATH})
+endif()
- add_custom_target(rust_c ALL
- COMMAND ${CBINDGEN_EXE} ${CBINDGEN_FLAG}
- COMMAND rustup run nightly-2024-01-31 ${RUST_CARGO_EXECUTABLE} build ${CARGO_FLAG}
- COMMAND ${COPY_COMMAND}
- WORKING_DIRECTORY ${RUST_DIR}
- )
+if(BUILD_VARIANT STREQUAL "BTC_ONLY")
+ set(FEATURE_VARIANT "btc-only")
+elseif(BUILD_VARIANT STREQUAL "CYPHERPUNK")
+ set(FEATURE_VARIANT "cypherpunk")
else()
- if(BTC_ONLY)
- set(CARGO_FLAG --release -p rust_c --no-default-features --features simulator_btc_only)
- else()
- set(CARGO_FLAG --release -p rust_c --no-default-features --features simulator)
- endif()
-
- if(DEFINED DEBUG_MEMORY)
- message(STATUS "build with DEBUG_MEMORY")
- set(CARGO_FLAG ${CARGO_FLAG} --features debug-memory)
- endif()
-
- message(STATUS "Cargo Flags: ${CARGO_FLAG}")
-
- set(COPY_COMMAND cp ${RUST_DIR}/target/release/${LIB_NAME} ${TARGET_PATH})
-
- add_custom_target(rust_c ALL
- COMMAND ${CBINDGEN_EXE} ${CBINDGEN_FLAG}
- COMMAND rustup run nightly-2024-01-31 ${RUST_CARGO_EXECUTABLE} build ${CARGO_FLAG}
- COMMAND ${COPY_COMMAND}
- WORKING_DIRECTORY ${RUST_DIR}
- )
-endif()
\ No newline at end of file
+ set(FEATURE_VARIANT "multi-coins")
+endif()
+
+set(FEATURE ${FEATURE_ENVIRONMENT}-${FEATURE_VARIANT})
+
+set(CBINDGEN_BINDINGS_TARGET ${RUST_C_DIR}/bindings/${FEATURE}/librust_c.h)
+set(COPY_BINDINGS_TARGET cp ${CBINDGEN_BINDINGS_TARGET} ${TARGET_PATH})
+
+# compile rust lib
+set(CARGO_FLAG --release -p rust_c --no-default-features)
+set(CARGO_FLAG ${CARGO_FLAG} --features ${FEATURE})
+if(CARGO_ARM_TARGET)
+ set(CARGO_FLAG ${CARGO_FLAG} --target ${CARGO_ARM_TARGET})
+ set(COPY_BUILD_TARGET cp ${RUST_DIR}/target/${CARGO_ARM_TARGET}/release/${LIB_NAME} ${TARGET_PATH})
+else()
+ set(COPY_BUILD_TARGET cp ${RUST_DIR}/target/release/${LIB_NAME} ${TARGET_PATH})
+endif()
+
+message(STATUS "cargo build command: " ${CARGO_FLAG})
+#TODO: add debug-momery if need
+
+#run build
+add_custom_target(rust_c ALL
+ COMMAND rustup run nightly-2024-07-01 ${RUST_CARGO_EXECUTABLE} build ${CARGO_FLAG}
+ COMMAND ${COPY_BUILD_TARGET}
+ COMMAND ${COPY_BINDINGS_TARGET}
+ WORKING_DIRECTORY ${RUST_DIR}
+)
diff --git a/rust/Cargo.lock b/rust/Cargo.lock
index 02e8d7a4c..f9655c1c7 100644
--- a/rust/Cargo.lock
+++ b/rust/Cargo.lock
@@ -2,12 +2,6 @@
# It is not intended for manual editing.
version = 3
-[[package]]
-name = "adler"
-version = "1.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
-
[[package]]
name = "adler2"
version = "2.0.0"
@@ -75,15 +69,64 @@ dependencies = [
[[package]]
name = "allocator-api2"
-version = "0.2.18"
+version = "0.2.21"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923"
+
+[[package]]
+name = "anstream"
+version = "0.6.18"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8acc5369981196006228e28809f761875c0327210a891e941f4c683b3a99529b"
+dependencies = [
+ "anstyle",
+ "anstyle-parse",
+ "anstyle-query",
+ "anstyle-wincon",
+ "colorchoice",
+ "is_terminal_polyfill",
+ "utf8parse",
+]
+
+[[package]]
+name = "anstyle"
+version = "1.0.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "55cc3b69f167a1ef2e161439aa98aed94e6028e5f9a59be9a6ffb47aef1651f9"
+
+[[package]]
+name = "anstyle-parse"
+version = "0.2.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3b2d16507662817a6a20a9ea92df6652ee4f94f914589377d69f3b21bc5798a9"
+dependencies = [
+ "utf8parse",
+]
+
+[[package]]
+name = "anstyle-query"
+version = "1.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f"
+checksum = "79947af37f4177cfead1110013d678905c37501914fba0efea834c3fe9a8d60c"
+dependencies = [
+ "windows-sys 0.59.0",
+]
+
+[[package]]
+name = "anstyle-wincon"
+version = "3.0.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2109dbce0e72be3ec00bed26e6a7479ca384ad226efdd66db8fa2e3a38c83125"
+dependencies = [
+ "anstyle",
+ "windows-sys 0.59.0",
+]
[[package]]
name = "anyhow"
-version = "1.0.91"
+version = "1.0.95"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c042108f3ed77fd83760a5fd79b53be043192bb3b9dba91d8c574c0ada7850c8"
+checksum = "34ac096ce696dc2fcabef30516bb13c0a68a11d30131d3df6f04711467681b04"
[[package]]
name = "app_aptos"
@@ -205,6 +248,28 @@ dependencies = [
"ur-registry",
]
+[[package]]
+name = "app_monero"
+version = "0.1.0"
+dependencies = [
+ "app_utils",
+ "base58-monero",
+ "bitcoin",
+ "chacha20",
+ "cryptoxide",
+ "cuprate-cryptonight",
+ "curve25519-dalek",
+ "hex",
+ "keystore",
+ "monero-serai",
+ "monero-wallet",
+ "rand_chacha",
+ "rand_core 0.6.4",
+ "rust_tools",
+ "thiserror-core",
+ "zeroize",
+]
+
[[package]]
name = "app_near"
version = "0.1.0"
@@ -231,7 +296,7 @@ dependencies = [
"arrayref",
"bincode",
"bitcoin",
- "borsh 1.5.1",
+ "borsh 1.5.3",
"bs58 0.5.1",
"hex",
"keystore",
@@ -378,23 +443,6 @@ dependencies = [
"zcash_vendor",
]
-[[package]]
-name = "aptos_rust_c"
-version = "0.1.0"
-dependencies = [
- "app_aptos",
- "app_utils",
- "bitcoin",
- "common_rust_c",
- "cstr_core",
- "cty",
- "hex",
- "keystore",
- "rust_tools",
- "serde_json",
- "ur-registry",
-]
-
[[package]]
name = "arrayref"
version = "0.3.9"
@@ -407,24 +455,6 @@ version = "0.7.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50"
-[[package]]
-name = "arweave_rust_c"
-version = "0.1.0"
-dependencies = [
- "app_arweave",
- "app_utils",
- "bitcoin",
- "common_rust_c",
- "cryptoxide",
- "cstr_core",
- "cty",
- "hex",
- "keystore",
- "rust_tools",
- "serde_json",
- "ur-registry",
-]
-
[[package]]
name = "ascii"
version = "1.1.0"
@@ -452,6 +482,12 @@ version = "0.2.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4cbbc9d0964165b47557570cce6c952866c2678457aca742aafc9fb771d30270"
+[[package]]
+name = "base58-monero"
+version = "2.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "978e81a45367d2409ecd33369a45dda2e9a3ca516153ec194de1fbda4b9fb79d"
+
[[package]]
name = "base58ck"
version = "0.1.0"
@@ -601,24 +637,6 @@ dependencies = [
"hex-conservative",
]
-[[package]]
-name = "bitcoin_rust_c"
-version = "0.1.0"
-dependencies = [
- "app_bitcoin",
- "app_utils",
- "base64 0.11.0",
- "bitcoin",
- "common_rust_c",
- "cryptoxide",
- "cstr_core",
- "cty",
- "hex",
- "keystore",
- "rust_tools",
- "ur-registry",
-]
-
[[package]]
name = "bitflags"
version = "1.3.2"
@@ -736,11 +754,11 @@ dependencies = [
[[package]]
name = "borsh"
-version = "1.5.1"
+version = "1.5.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a6362ed55def622cddc70a4746a68554d7b687713770de539e59a739b249f8ed"
+checksum = "2506947f73ad44e344215ccd6403ac2ae18cd8e046e581a441bf8d199f257f03"
dependencies = [
- "borsh-derive 1.5.1",
+ "borsh-derive 1.5.3",
"cfg_aliases",
]
@@ -759,16 +777,15 @@ dependencies = [
[[package]]
name = "borsh-derive"
-version = "1.5.1"
+version = "1.5.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c3ef8005764f53cd4dca619f5bf64cafd4664dada50ece25e4d81de54c80cc0b"
+checksum = "c2593a3b8b938bd68373196c9832f516be11fa487ef4ae745eb282e6a56a7244"
dependencies = [
"once_cell",
"proc-macro-crate 3.2.0",
"proc-macro2",
"quote",
- "syn 2.0.85",
- "syn_derive",
+ "syn 2.0.93",
]
[[package]]
@@ -809,38 +826,6 @@ dependencies = [
"tinyvec",
]
-[[package]]
-name = "btc_only_wallet_rust_c"
-version = "0.1.0"
-dependencies = [
- "app_utils",
- "app_wallets",
- "bitcoin",
- "common_rust_c",
- "cstr_core",
- "cty",
- "hex",
- "keystore",
- "rust_tools",
- "ur-registry",
-]
-
-[[package]]
-name = "btc_test_cmd"
-version = "0.1.0"
-dependencies = [
- "app_utils",
- "common_rust_c",
- "cstr_core",
- "cty",
- "hex",
- "keystore",
- "rust_tools",
- "ur-parse-lib",
- "ur-registry",
- "wallet_rust_c",
-]
-
[[package]]
name = "bumpalo"
version = "3.16.0"
@@ -855,9 +840,9 @@ checksum = "c3ac9f8b63eca6fd385229b3675f6cc0dc5c8a5c8a54a59d4f52ffd670d87b0c"
[[package]]
name = "bytemuck"
-version = "1.19.0"
+version = "1.21.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8334215b81e418a0a7bdb8ef0849474f40bb10c8b71f1c4ed315cff49f32494d"
+checksum = "ef657dfab802224e671f5818e9a4935f9b1957ed18e58292690cc39e7a4092a3"
[[package]]
name = "byteorder"
@@ -867,9 +852,9 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
[[package]]
name = "bytes"
-version = "1.8.0"
+version = "1.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9ac0150caa2ae65ca5bd83f25c7de183dea78d4d366469f148435e2acfbad0da"
+checksum = "325918d6fe32f23b19878fe4b34794ae41fc19ddbe53b10571a4874d44ffd39b"
dependencies = [
"serde",
]
@@ -906,24 +891,6 @@ dependencies = [
"wasm-bindgen",
]
-[[package]]
-name = "cardano_rust_c"
-version = "0.1.0"
-dependencies = [
- "app_cardano",
- "app_utils",
- "bitcoin",
- "common_rust_c",
- "cstr_core",
- "cty",
- "ed25519-bip32-core",
- "hex",
- "itertools 0.13.0",
- "keystore",
- "rust_tools",
- "ur-registry",
-]
-
[[package]]
name = "cbc"
version = "0.1.2"
@@ -933,6 +900,25 @@ dependencies = [
"cipher",
]
+[[package]]
+name = "cbindgen"
+version = "0.27.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3fce8dd7fcfcbf3a0a87d8f515194b49d6135acab73e18bd380d1d93bb1a15eb"
+dependencies = [
+ "clap",
+ "heck",
+ "indexmap 2.7.0",
+ "log",
+ "proc-macro2",
+ "quote",
+ "serde",
+ "serde_json",
+ "syn 2.0.93",
+ "tempfile",
+ "toml 0.8.19",
+]
+
[[package]]
name = "cbor_event"
version = "2.4.0"
@@ -943,9 +929,9 @@ dependencies = [
[[package]]
name = "cc"
-version = "1.1.31"
+version = "1.2.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c2e7962b54006dcfcc61cb72735f4d89bb97061dd6a7ed882ec6b8ee53714c6f"
+checksum = "8d6dbb628b8f8555f86d0323c2eb39e3ec81901f4b83e091db8a6a76d316a333"
dependencies = [
"shlex",
]
@@ -988,9 +974,9 @@ dependencies = [
[[package]]
name = "chrono"
-version = "0.4.38"
+version = "0.4.39"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401"
+checksum = "7e36cc9d416881d2e24f9a963be5fb1cd90966419ac844274161d10488b3e825"
dependencies = [
"num-traits",
"serde",
@@ -1007,6 +993,33 @@ dependencies = [
"zeroize",
]
+[[package]]
+name = "clap"
+version = "4.5.23"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3135e7ec2ef7b10c6ed8950f0f792ed96ee093fa088608f1c76e569722700c84"
+dependencies = [
+ "clap_builder",
+]
+
+[[package]]
+name = "clap_builder"
+version = "4.5.23"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "30582fc632330df2bd26877bde0c1f4470d57c582bbc070376afcd04d8cb4838"
+dependencies = [
+ "anstream",
+ "anstyle",
+ "clap_lex",
+ "strsim 0.11.1",
+]
+
+[[package]]
+name = "clap_lex"
+version = "0.7.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f46ad14479a25103f283c0f10005961cf086d8dc42205bb44c46ac563475dca6"
+
[[package]]
name = "clear_on_drop"
version = "0.2.5"
@@ -1068,43 +1081,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b"
[[package]]
-name = "common_rust_c"
-version = "0.1.0"
-dependencies = [
- "aes",
- "app_aptos",
- "app_arweave",
- "app_bitcoin",
- "app_cardano",
- "app_cosmos",
- "app_ethereum",
- "app_near",
- "app_solana",
- "app_stellar",
- "app_sui",
- "app_ton",
- "app_tron",
- "app_utils",
- "app_wallets",
- "app_xrp",
- "app_zcash",
- "base64 0.11.0",
- "bitcoin",
- "bitcoin_hashes 0.14.0",
- "cbc",
- "cryptoxide",
- "cstr_core",
- "cty",
- "hex",
- "keystore",
- "rsa",
- "rust_tools",
- "serde_json",
- "sha1",
- "thiserror-core",
- "ur-parse-lib",
- "ur-registry",
-]
+name = "colorchoice"
+version = "1.0.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5b63caa9aa9397e2d9480a9b13673856c78d8ac123288526c37d7839f2a86990"
[[package]]
name = "const-oid"
@@ -1180,27 +1160,11 @@ dependencies = [
"memchr",
]
-[[package]]
-name = "cosmos_rust_c"
-version = "0.1.0"
-dependencies = [
- "app_cosmos",
- "app_utils",
- "common_rust_c",
- "cstr_core",
- "cty",
- "either",
- "keystore",
- "rust_tools",
- "serde_json",
- "ur-registry",
-]
-
[[package]]
name = "cpufeatures"
-version = "0.2.14"
+version = "0.2.16"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "608697df725056feaccfa42cffdaeeec3fccc4ffc38358ecd19b243e716a78e0"
+checksum = "16b80225097f2e5ae4e7179dd2266824648f3e2f49d9134d584b76389d31c4c3"
dependencies = [
"libc",
]
@@ -1237,9 +1201,9 @@ checksum = "790eea4361631c5e7d22598ecd5723ff611904e3344ce8720784c93e3d83d40b"
[[package]]
name = "crossbeam-deque"
-version = "0.8.5"
+version = "0.8.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d"
+checksum = "9dd111b7b7f7d55b72c0a6ae361660ee5853c9af73f70c3c2ef6858b950e2e51"
dependencies = [
"crossbeam-epoch",
"crossbeam-utils",
@@ -1256,9 +1220,9 @@ dependencies = [
[[package]]
name = "crossbeam-utils"
-version = "0.8.20"
+version = "0.8.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80"
+checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28"
[[package]]
name = "crunchy"
@@ -1266,6 +1230,16 @@ version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7"
+[[package]]
+name = "crypto-bigint"
+version = "0.5.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76"
+dependencies = [
+ "subtle",
+ "zeroize",
+]
+
[[package]]
name = "crypto-common"
version = "0.1.6"
@@ -1298,6 +1272,64 @@ version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b365fabc795046672053e29c954733ec3b05e4be654ab130fe8f1f94d7051f35"
+[[package]]
+name = "cuprate-cryptonight"
+version = "0.1.0"
+source = "git+https://github.com/KeystoneHQ/cuprate#8ae09c3d83eb1a48050d7f46dc9ed5e0c6feedca"
+dependencies = [
+ "digest 0.10.7",
+ "groestl",
+ "jh",
+ "keccak",
+ "sha3 0.10.8",
+ "skein",
+]
+
+[[package]]
+name = "curve25519-dalek"
+version = "4.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "97fb8b7c4503de7d6ae7b42ab72a5a59857b4c937ec27a3d4539dba95b5ab2be"
+dependencies = [
+ "cfg-if",
+ "cpufeatures",
+ "curve25519-dalek-derive",
+ "digest 0.10.7",
+ "fiat-crypto",
+ "group",
+ "rand_core 0.6.4",
+ "rustc_version",
+ "subtle",
+ "zeroize",
+]
+
+[[package]]
+name = "curve25519-dalek-derive"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.93",
+]
+
+[[package]]
+name = "dalek-ff-group"
+version = "0.4.1"
+source = "git+https://github.com/KeystoneHQ/serai#c784e6c6fcd6cfd8ac88cdd0d467184aeefaf810"
+dependencies = [
+ "crypto-bigint",
+ "curve25519-dalek",
+ "digest 0.10.7",
+ "ff",
+ "group",
+ "rand_core 0.6.4",
+ "rustversion",
+ "subtle",
+ "zeroize",
+]
+
[[package]]
name = "darling"
version = "0.14.4"
@@ -1343,7 +1375,7 @@ dependencies = [
"proc-macro2",
"quote",
"strsim 0.11.1",
- "syn 2.0.85",
+ "syn 2.0.93",
]
[[package]]
@@ -1365,7 +1397,7 @@ checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806"
dependencies = [
"darling_core 0.20.10",
"quote",
- "syn 2.0.85",
+ "syn 2.0.93",
]
[[package]]
@@ -1415,7 +1447,7 @@ checksum = "cb7330aeadfbe296029522e6c40f315320aba36fc43a5b3632f3795348f3bd22"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.85",
+ "syn 2.0.93",
]
[[package]]
@@ -1510,12 +1542,12 @@ checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5"
[[package]]
name = "errno"
-version = "0.3.9"
+version = "0.3.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba"
+checksum = "33d852cb9b869c2a9b3df2f71a3074817f01e1844f839a144f5fcef059a4eb5d"
dependencies = [
"libc",
- "windows-sys 0.52.0",
+ "windows-sys 0.59.0",
]
[[package]]
@@ -1596,26 +1628,6 @@ dependencies = [
"uint",
]
-[[package]]
-name = "ethereum_rust_c"
-version = "0.1.0"
-dependencies = [
- "app_ethereum",
- "app_utils",
- "bitcoin",
- "common_rust_c",
- "core2",
- "cryptoxide",
- "cstr_core",
- "cty",
- "hex",
- "itertools 0.13.0",
- "keystore",
- "rust_tools",
- "serde_json",
- "ur-registry",
-]
-
[[package]]
name = "ethnum"
version = "1.5.0"
@@ -1624,15 +1636,14 @@ checksum = "b90ca2580b73ab6a1f724b76ca11ab632df820fd6040c336200d2c1df7b3c82c"
[[package]]
name = "exr"
-version = "1.72.0"
+version = "1.73.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "887d93f60543e9a9362ef8a21beedd0a833c5d9610e18c67abe15a5963dcb1a4"
+checksum = "f83197f59927b46c04a183a619b7c29df34e63e63c7869320862268c0ef687e0"
dependencies = [
"bit_field",
- "flume",
"half",
"lebe",
- "miniz_oxide 0.7.4",
+ "miniz_oxide",
"rayon-core",
"smallvec",
"zune-inflate",
@@ -1648,15 +1659,15 @@ dependencies = [
[[package]]
name = "fastrand"
-version = "2.1.1"
+version = "2.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e8c02a5121d4ea3eb16a80748c74f5549a5665e4c21333c6098f283870fbdea6"
+checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be"
[[package]]
name = "fdeflate"
-version = "0.3.6"
+version = "0.3.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "07c6f4c64c1d33a3111c4466f7365ebdcc37c5bd1ea0d62aae2e3d722aacbedb"
+checksum = "1e6853b52649d4ac5c0bd02320cddc5ba956bdb407c4b75a2c6b75bf51500f8c"
dependencies = [
"simd-adler32",
]
@@ -1672,6 +1683,12 @@ dependencies = [
"subtle",
]
+[[package]]
+name = "fiat-crypto"
+version = "0.2.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "28dea519a9695b9977216879a3ebfddf92f1c08c05d984f8996aecd6ecdc811d"
+
[[package]]
name = "fixed-hash"
version = "0.7.0"
@@ -1702,12 +1719,12 @@ checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80"
[[package]]
name = "flate2"
-version = "1.0.34"
+version = "1.0.35"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a1b589b4dc103969ad3cf85c950899926ec64300a1a46d76c03a6072957036f0"
+checksum = "c936bfdafb507ebbf50b8074c54fa31c5be9a1e7e5f467dd659697041407d07c"
dependencies = [
"crc32fast",
- "miniz_oxide 0.8.0",
+ "miniz_oxide",
]
[[package]]
@@ -1719,15 +1736,6 @@ dependencies = [
"paste",
]
-[[package]]
-name = "flume"
-version = "0.11.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da0e4dd2a88388a1f4ccc7c9ce104604dab68d9f408dc34cd45823d5a9069095"
-dependencies = [
- "spin",
-]
-
[[package]]
name = "fnv"
version = "1.0.7"
@@ -1761,7 +1769,7 @@ checksum = "1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.85",
+ "syn 2.0.93",
]
[[package]]
@@ -1872,21 +1880,6 @@ dependencies = [
"byteorder",
]
-[[package]]
-name = "general_test_cmd"
-version = "0.1.0"
-dependencies = [
- "app_utils",
- "common_rust_c",
- "cstr_core",
- "cty",
- "hex",
- "keystore",
- "rust_tools",
- "ur-registry",
- "wallet_rust_c",
-]
-
[[package]]
name = "generic-array"
version = "0.14.7"
@@ -1919,7 +1912,7 @@ dependencies = [
"proc-macro-error2",
"proc-macro2",
"quote",
- "syn 2.0.85",
+ "syn 2.0.93",
]
[[package]]
@@ -1942,6 +1935,15 @@ dependencies = [
"hashbrown 0.11.2",
]
+[[package]]
+name = "groestl"
+version = "0.10.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "343cfc165f92a988fd60292f7a0bfde4352a5a0beff9fbec29251ca4e9676e4d"
+dependencies = [
+ "digest 0.10.7",
+]
+
[[package]]
name = "group"
version = "0.13.0"
@@ -2020,9 +2022,9 @@ dependencies = [
[[package]]
name = "hashbrown"
-version = "0.15.0"
+version = "0.15.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1e087f84d4f86bf4b218b927129862374b72199ae7d8657835f1e89000eea4fb"
+checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289"
[[package]]
name = "heapless"
@@ -2065,6 +2067,12 @@ dependencies = [
"arrayvec",
]
+[[package]]
+name = "hex-literal"
+version = "0.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6fe2267d4ed49bc07b63801559be28c718ea06c4738b7a03c94df7386d2cde46"
+
[[package]]
name = "hex_lit"
version = "0.1.1"
@@ -2082,11 +2090,11 @@ dependencies = [
[[package]]
name = "home"
-version = "0.5.9"
+version = "0.5.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5"
+checksum = "589533453244b0995c858700322199b2becb13b627df2851f64a2775d024abcf"
dependencies = [
- "windows-sys 0.52.0",
+ "windows-sys 0.59.0",
]
[[package]]
@@ -2142,13 +2150,13 @@ dependencies = [
[[package]]
name = "impl-trait-for-tuples"
-version = "0.2.2"
+version = "0.2.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "11d7a9f6330b71fea57921c9b61c47ee6e84f72d394754eff6163ae67e7395eb"
+checksum = "a0eb5a3343abf848c0984fe4604b2b105da9539376e24fc0a3b0007411ae4fd9"
dependencies = [
"proc-macro2",
"quote",
- "syn 1.0.109",
+ "syn 2.0.93",
]
[[package]]
@@ -2172,12 +2180,12 @@ dependencies = [
[[package]]
name = "indexmap"
-version = "2.6.0"
+version = "2.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "707907fe3c25f5424cce2cb7e1cbcafee6bdbe735ca90ef77c29e84591e5b9da"
+checksum = "62f822373a4fe84d4bb149bf54e584a7f4abec90e072ed49cda0edea5b95471f"
dependencies = [
"equivalent",
- "hashbrown 0.15.0",
+ "hashbrown 0.15.2",
]
[[package]]
@@ -2201,6 +2209,12 @@ dependencies = [
"windows-sys 0.48.0",
]
+[[package]]
+name = "is_terminal_polyfill"
+version = "1.70.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf"
+
[[package]]
name = "itertools"
version = "0.10.5"
@@ -2221,9 +2235,20 @@ dependencies = [
[[package]]
name = "itoa"
-version = "1.0.11"
+version = "1.0.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b"
+checksum = "d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674"
+
+[[package]]
+name = "jh"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f65735f9e73adc203417d2e05352aef71d7e832ec090f65de26c96c9ec563aa5"
+dependencies = [
+ "digest 0.10.7",
+ "hex-literal",
+ "ppv-lite86",
+]
[[package]]
name = "jpeg-decoder"
@@ -2236,9 +2261,9 @@ dependencies = [
[[package]]
name = "js-sys"
-version = "0.3.64"
+version = "0.3.69"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c5f195fe497f702db0f318b07fdd68edb16955aed830df8363d837542f8f935a"
+checksum = "29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d"
dependencies = [
"wasm-bindgen",
]
@@ -2304,9 +2329,9 @@ checksum = "03087c2bad5e1034e8cace5926dec053fb3790248370865f5117a7d0213354c8"
[[package]]
name = "libc"
-version = "0.2.161"
+version = "0.2.169"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8e9489c2807c139ffd9c1794f4af0ebe86a828db53ecdc7fea2111d0fed085d1"
+checksum = "b5aba8db14291edd000dfcc4d620c7ebfb122c613afb886ca8803fa4e128a20a"
[[package]]
name = "libdbus-sys"
@@ -2341,9 +2366,9 @@ dependencies = [
[[package]]
name = "libloading"
-version = "0.8.5"
+version = "0.8.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4979f22fdb869068da03c9f7528f8297c6fd2606bc3a4affe42e6a823fdb8da4"
+checksum = "fc2f4eb4bc735547cfed7c0a4922cbd04a4655978c09b54f1f7b228750664c34"
dependencies = [
"cfg-if",
"windows-targets 0.52.6",
@@ -2454,21 +2479,167 @@ dependencies = [
[[package]]
name = "miniz_oxide"
-version = "0.7.4"
+version = "0.8.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b8a240ddb74feaf34a79a7add65a741f3167852fba007066dcac1ca548d89c08"
+checksum = "4ffbe83022cedc1d264172192511ae958937694cd57ce297164951b8b3568394"
+dependencies = [
+ "adler2",
+ "simd-adler32",
+]
+
+[[package]]
+name = "monero-address"
+version = "0.1.0"
+source = "git+https://github.com/KeystoneHQ/serai#c784e6c6fcd6cfd8ac88cdd0d467184aeefaf810"
dependencies = [
- "adler",
+ "curve25519-dalek",
+ "monero-io",
+ "monero-primitives",
+ "std-shims",
+ "zeroize",
]
[[package]]
-name = "miniz_oxide"
-version = "0.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e2d80299ef12ff69b16a84bb182e3b9df68b5a91574d3d4fa6e41b65deec4df1"
+name = "monero-borromean"
+version = "0.1.0"
+source = "git+https://github.com/KeystoneHQ/serai#c784e6c6fcd6cfd8ac88cdd0d467184aeefaf810"
dependencies = [
- "adler2",
- "simd-adler32",
+ "curve25519-dalek",
+ "monero-generators",
+ "monero-io",
+ "monero-primitives",
+ "std-shims",
+ "zeroize",
+]
+
+[[package]]
+name = "monero-bulletproofs"
+version = "0.1.0"
+source = "git+https://github.com/KeystoneHQ/serai#c784e6c6fcd6cfd8ac88cdd0d467184aeefaf810"
+dependencies = [
+ "curve25519-dalek",
+ "monero-generators",
+ "monero-io",
+ "monero-primitives",
+ "rand_core 0.6.4",
+ "std-shims",
+ "zeroize",
+]
+
+[[package]]
+name = "monero-clsag"
+version = "0.1.0"
+source = "git+https://github.com/KeystoneHQ/serai#c784e6c6fcd6cfd8ac88cdd0d467184aeefaf810"
+dependencies = [
+ "curve25519-dalek",
+ "monero-generators",
+ "monero-io",
+ "monero-primitives",
+ "rand_core 0.6.4",
+ "std-shims",
+ "subtle",
+ "zeroize",
+]
+
+[[package]]
+name = "monero-generators"
+version = "0.4.0"
+source = "git+https://github.com/KeystoneHQ/serai#c784e6c6fcd6cfd8ac88cdd0d467184aeefaf810"
+dependencies = [
+ "curve25519-dalek",
+ "dalek-ff-group",
+ "group",
+ "monero-io",
+ "sha3 0.10.8",
+ "std-shims",
+ "subtle",
+]
+
+[[package]]
+name = "monero-io"
+version = "0.1.0"
+source = "git+https://github.com/KeystoneHQ/serai#c784e6c6fcd6cfd8ac88cdd0d467184aeefaf810"
+dependencies = [
+ "curve25519-dalek",
+ "std-shims",
+]
+
+[[package]]
+name = "monero-mlsag"
+version = "0.1.0"
+source = "git+https://github.com/KeystoneHQ/serai#c784e6c6fcd6cfd8ac88cdd0d467184aeefaf810"
+dependencies = [
+ "curve25519-dalek",
+ "monero-generators",
+ "monero-io",
+ "monero-primitives",
+ "std-shims",
+ "zeroize",
+]
+
+[[package]]
+name = "monero-primitives"
+version = "0.1.0"
+source = "git+https://github.com/KeystoneHQ/serai#c784e6c6fcd6cfd8ac88cdd0d467184aeefaf810"
+dependencies = [
+ "curve25519-dalek",
+ "monero-generators",
+ "monero-io",
+ "sha3 0.10.8",
+ "std-shims",
+ "zeroize",
+]
+
+[[package]]
+name = "monero-rpc"
+version = "0.1.0"
+source = "git+https://github.com/KeystoneHQ/serai#c784e6c6fcd6cfd8ac88cdd0d467184aeefaf810"
+dependencies = [
+ "curve25519-dalek",
+ "hex",
+ "monero-address",
+ "monero-serai",
+ "serde",
+ "serde_json",
+ "std-shims",
+ "zeroize",
+]
+
+[[package]]
+name = "monero-serai"
+version = "0.1.4-alpha"
+source = "git+https://github.com/KeystoneHQ/serai#c784e6c6fcd6cfd8ac88cdd0d467184aeefaf810"
+dependencies = [
+ "curve25519-dalek",
+ "hex-literal",
+ "monero-borromean",
+ "monero-bulletproofs",
+ "monero-clsag",
+ "monero-generators",
+ "monero-io",
+ "monero-mlsag",
+ "monero-primitives",
+ "std-shims",
+ "zeroize",
+]
+
+[[package]]
+name = "monero-wallet"
+version = "0.1.0"
+source = "git+https://github.com/KeystoneHQ/serai#c784e6c6fcd6cfd8ac88cdd0d467184aeefaf810"
+dependencies = [
+ "curve25519-dalek",
+ "hex",
+ "monero-address",
+ "monero-clsag",
+ "monero-rpc",
+ "monero-serai",
+ "rand",
+ "rand_chacha",
+ "rand_core 0.6.4",
+ "rand_distr",
+ "std-shims",
+ "zeroize",
]
[[package]]
@@ -2496,27 +2667,9 @@ version = "0.1.0"
source = "git+https://github.com/MystenLabs/mysten-sim.git?rev=f2c31421e273eca7e97c563c7e07b81b5afa2d3a#f2c31421e273eca7e97c563c7e07b81b5afa2d3a"
dependencies = [
"darling 0.14.4",
- "proc-macro2",
- "quote",
- "syn 1.0.109",
-]
-
-[[package]]
-name = "multi_coins_wallet_rust_c"
-version = "0.1.0"
-dependencies = [
- "app_arweave",
- "app_utils",
- "app_wallets",
- "bitcoin",
- "common_rust_c",
- "cstr_core",
- "cty",
- "ed25519-bip32-core",
- "hex",
- "keystore",
- "rust_tools",
- "ur-registry",
+ "proc-macro2",
+ "quote",
+ "syn 1.0.109",
]
[[package]]
@@ -2525,21 +2678,6 @@ version = "0.8.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e5ce46fe64a9d73be07dcbe690a38ce1b293be448fd8ce1e6c1b8062c9f72c6a"
-[[package]]
-name = "near_rust_c"
-version = "0.1.0"
-dependencies = [
- "app_near",
- "app_utils",
- "common_rust_c",
- "cstr_core",
- "cty",
- "itertools 0.13.0",
- "keystore",
- "rust_tools",
- "ur-registry",
-]
-
[[package]]
name = "nix"
version = "0.26.4"
@@ -2639,7 +2777,7 @@ checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.85",
+ "syn 2.0.93",
]
[[package]]
@@ -2816,7 +2954,7 @@ dependencies = [
"postcard",
"secp256k1",
"serde",
- "serde_with 3.11.0",
+ "serde_with 3.12.0",
"zcash_protocol",
"zcash_transparent",
]
@@ -2834,7 +2972,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db"
dependencies = [
"fixedbitset",
- "indexmap 2.6.0",
+ "indexmap 2.7.0",
]
[[package]]
@@ -2867,7 +3005,7 @@ dependencies = [
"phf_shared",
"proc-macro2",
"quote",
- "syn 2.0.85",
+ "syn 2.0.93",
]
[[package]]
@@ -2921,15 +3059,15 @@ checksum = "953ec861398dccce10c670dfeaf3ec4911ca479e9c02154b3a215178c5f566f2"
[[package]]
name = "png"
-version = "0.17.14"
+version = "0.17.16"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "52f9d46a34a05a6a57566bc2bfae066ef07585a6e3fa30fbbdff5936380623f0"
+checksum = "82151a2fc869e011c153adc57cf2789ccb8d9906ce52c0b39a6b5697749d7526"
dependencies = [
"bitflags 1.3.2",
"crc32fast",
"fdeflate",
"flate2",
- "miniz_oxide 0.8.0",
+ "miniz_oxide",
]
[[package]]
@@ -2945,9 +3083,9 @@ dependencies = [
[[package]]
name = "portable-atomic"
-version = "1.9.0"
+version = "1.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cc9c68a3f6da06753e9335d63e27f6b9754dd1920d941135b7ea8224f141adb2"
+checksum = "280dc24453071f1b63954171985a0b0d30058d287960968b9b2aca264c8d4ee6"
[[package]]
name = "postcard"
@@ -3017,7 +3155,7 @@ version = "0.1.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1d6ea3c4595b96363c13943497db34af4460fb474a95c43f4446ad341b8c9785"
dependencies = [
- "toml",
+ "toml 0.5.11",
]
[[package]]
@@ -3029,29 +3167,6 @@ dependencies = [
"toml_edit",
]
-[[package]]
-name = "proc-macro-error"
-version = "1.0.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"
-dependencies = [
- "proc-macro-error-attr",
- "proc-macro2",
- "quote",
- "version_check",
-]
-
-[[package]]
-name = "proc-macro-error-attr"
-version = "1.0.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"
-dependencies = [
- "proc-macro2",
- "quote",
- "version_check",
-]
-
[[package]]
name = "proc-macro-error-attr2"
version = "2.0.0"
@@ -3071,7 +3186,7 @@ dependencies = [
"proc-macro-error-attr2",
"proc-macro2",
"quote",
- "syn 2.0.85",
+ "syn 2.0.93",
]
[[package]]
@@ -3089,9 +3204,9 @@ dependencies = [
[[package]]
name = "proc-macro2"
-version = "1.0.89"
+version = "1.0.92"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f139b0662de085916d1fb67d2b4169d1addddda1919e696f3252b740b629986e"
+checksum = "37d3544b3f2748c54e147655edb5025752e2303145b5aefb3c3ea2c78b973bb0"
dependencies = [
"unicode-ident",
]
@@ -3190,9 +3305,9 @@ dependencies = [
[[package]]
name = "quote"
-version = "1.0.37"
+version = "1.0.38"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af"
+checksum = "0e4dccaaaf89514f546c693ddc140f729f958c247918a13380cccc6078391acc"
dependencies = [
"proc-macro2",
]
@@ -3247,6 +3362,16 @@ dependencies = [
"getrandom",
]
+[[package]]
+name = "rand_distr"
+version = "0.4.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "32cb0b9bc82b0a0876c2dd994a7e7a2683d3e7390ca40e6886785ef0c7e3ee31"
+dependencies = [
+ "num-traits",
+ "rand",
+]
+
[[package]]
name = "rand_os"
version = "0.1.3"
@@ -3332,7 +3457,7 @@ checksum = "bcc303e793d3734489387d205e9b186fac9c6cfacedd98cbb2e8a5943595f3e6"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.85",
+ "syn 2.0.93",
]
[[package]]
@@ -3349,9 +3474,9 @@ dependencies = [
[[package]]
name = "regex-automata"
-version = "0.4.8"
+version = "0.4.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "368758f23274712b504848e9d5a6f010445cc8b87a7cdb4d7cbee666c1288da3"
+checksum = "809e8dc61f6de73b46c85f4c96486310fe304c434cfa43669d7b40f711150908"
dependencies = [
"aho-corasick",
"memchr",
@@ -3450,28 +3575,49 @@ dependencies = [
name = "rust_c"
version = "0.1.0"
dependencies = [
- "aptos_rust_c",
- "arweave_rust_c",
- "bitcoin_rust_c",
- "cardano_rust_c",
- "common_rust_c",
- "cosmos_rust_c",
+ "aes",
+ "app_aptos",
+ "app_arweave",
+ "app_bitcoin",
+ "app_cardano",
+ "app_cosmos",
+ "app_ethereum",
+ "app_monero",
+ "app_near",
+ "app_solana",
+ "app_stellar",
+ "app_sui",
+ "app_ton",
+ "app_tron",
+ "app_utils",
+ "app_wallets",
+ "app_xrp",
+ "app_zcash",
+ "base64 0.11.0",
+ "bitcoin",
+ "bitcoin_hashes 0.14.0",
+ "cbc",
+ "cbindgen",
+ "cipher",
+ "core2",
+ "cryptoxide",
"cstr_core",
"cty",
- "ethereum_rust_c",
+ "ed25519-bip32-core",
+ "either",
"getrandom",
+ "hex",
+ "itertools 0.13.0",
"keystore",
- "near_rust_c",
- "simulator_rust_c",
- "solana_rust_c",
- "stellar_rust_c",
- "sui_rust_c",
- "test_cmd",
- "ton_rust_c",
- "tron_rust_c",
- "wallet_rust_c",
- "xrp_rust_c",
- "zcash_rust_c",
+ "rsa",
+ "rust_tools",
+ "serde_json",
+ "sha1",
+ "sim_qr_reader",
+ "thiserror-core",
+ "ur-parse-lib",
+ "ur-registry",
+ "zcash_vendor",
]
[[package]]
@@ -3519,22 +3665,22 @@ dependencies = [
[[package]]
name = "rustix"
-version = "0.38.38"
+version = "0.38.42"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aa260229e6538e52293eeb577aabd09945a09d6d9cc0fc550ed7529056c2e32a"
+checksum = "f93dc38ecbab2eb790ff964bb77fa94faf256fd3e73285fd7ba0903b76bedb85"
dependencies = [
"bitflags 2.6.0",
"errno",
"libc",
"linux-raw-sys",
- "windows-sys 0.52.0",
+ "windows-sys 0.59.0",
]
[[package]]
name = "rustversion"
-version = "1.0.18"
+version = "1.0.19"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0e819f2bc632f285be6d7cd36e25940d45b2391dd6d9b939e79de557f7014248"
+checksum = "f7c45b9784283f1b2e7fb61b42047c2fd678ef0960d4f6f1eba131594cc369d4"
[[package]]
name = "ryu"
@@ -3544,9 +3690,9 @@ checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f"
[[package]]
name = "scale-info"
-version = "2.11.5"
+version = "2.11.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1aa7ffc1c0ef49b0452c6e2986abf2b07743320641ffd5fc63d552458e3b779b"
+checksum = "346a3b32eba2640d17a9cb5927056b08f3de90f65b72fe09402c2ad07d684d0b"
dependencies = [
"cfg-if",
"derive_more",
@@ -3556,14 +3702,14 @@ dependencies = [
[[package]]
name = "scale-info-derive"
-version = "2.11.5"
+version = "2.11.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "46385cc24172cf615450267463f937c10072516359b3ff1cb24228a4a08bf951"
+checksum = "c6630024bf739e2179b91fb424b28898baf819414262c5d376677dbff1fe7ebf"
dependencies = [
"proc-macro-crate 3.2.0",
"proc-macro2",
"quote",
- "syn 2.0.85",
+ "syn 2.0.93",
]
[[package]]
@@ -3587,7 +3733,7 @@ dependencies = [
"proc-macro2",
"quote",
"serde_derive_internals",
- "syn 2.0.85",
+ "syn 2.0.93",
]
[[package]]
@@ -3657,9 +3803,9 @@ checksum = "3cb6eb87a131f756572d7fb904f6e7b68633f09cca868c5df1c4b8d1a694bbba"
[[package]]
name = "serde"
-version = "1.0.214"
+version = "1.0.217"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f55c3193aca71c12ad7890f1785d2b73e1b9f63a0bbc353c08ef26fe03fc56b5"
+checksum = "02fc4265df13d6fa1d00ecff087228cc0a2b5f3c0e87e258d8b94a156e984c70"
dependencies = [
"serde_derive",
]
@@ -3695,13 +3841,13 @@ dependencies = [
[[package]]
name = "serde_derive"
-version = "1.0.214"
+version = "1.0.217"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "de523f781f095e28fa605cdce0f8307e451cc0fd14e2eb4cd2e98a355b147766"
+checksum = "5a9bf7cf98d04a2b28aead066b7496853d4779c9cc183c440dbac457641e19a0"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.85",
+ "syn 2.0.93",
]
[[package]]
@@ -3712,14 +3858,14 @@ checksum = "18d26a20a969b9e3fdf2fc2d9f21eda6c40e2de84c9408bb5d3b05d499aae711"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.85",
+ "syn 2.0.93",
]
[[package]]
name = "serde_json"
-version = "1.0.133"
+version = "1.0.134"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c7fceb2473b9166b2294ef05efcb65a3db80803f0b03ef86a5fc88a2b85ee377"
+checksum = "d00f4175c42ee48b15416f6193a959ba3a0d67fc699a0db9ad12df9f83991c7d"
dependencies = [
"itoa",
"memchr",
@@ -3727,6 +3873,15 @@ dependencies = [
"serde",
]
+[[package]]
+name = "serde_spanned"
+version = "0.6.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "87607cb1398ed59d48732e575a4c28a7a8ebf2454b964fe3f224f2afc07909e1"
+dependencies = [
+ "serde",
+]
+
[[package]]
name = "serde_with"
version = "2.3.3"
@@ -3744,9 +3899,9 @@ dependencies = [
[[package]]
name = "serde_with"
-version = "3.11.0"
+version = "3.12.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8e28bdad6db2b8340e449f7108f020b3b092e8583a9e3fb82713e1d4e71fe817"
+checksum = "d6b6f7f2fcb69f747921f79f3926bd1e203fce4fef62c268dd3abfb6d86029aa"
dependencies = [
"base64 0.22.1",
"chrono",
@@ -3754,7 +3909,7 @@ dependencies = [
"serde",
"serde_derive",
"serde_json",
- "serde_with_macros 3.11.0",
+ "serde_with_macros 3.12.0",
"time",
]
@@ -3767,19 +3922,19 @@ dependencies = [
"darling 0.20.10",
"proc-macro2",
"quote",
- "syn 2.0.85",
+ "syn 2.0.93",
]
[[package]]
name = "serde_with_macros"
-version = "3.11.0"
+version = "3.12.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9d846214a9854ef724f3da161b426242d8de7c1fc7de2f89bb1efcb154dca79d"
+checksum = "8d00caa5193a3c8362ac2b73be6b9e768aa5a4b2f721d8f4b339600c3cb51f8e"
dependencies = [
"darling 0.20.10",
"proc-macro2",
"quote",
- "syn 2.0.85",
+ "syn 2.0.93",
]
[[package]]
@@ -3873,16 +4028,6 @@ version = "0.3.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe"
-[[package]]
-name = "simulator_rust_c"
-version = "0.1.0"
-dependencies = [
- "common_rust_c",
- "cstr_core",
- "cty",
- "sim_qr_reader",
-]
-
[[package]]
name = "sinsemilla"
version = "0.1.0"
@@ -3900,27 +4045,22 @@ version = "0.3.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d"
+[[package]]
+name = "skein"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f412279217fa74b69094bf6b5cde63dd0ece9b85d94fedda9bbfdfb2666125cf"
+dependencies = [
+ "digest 0.10.7",
+ "threefish",
+]
+
[[package]]
name = "smallvec"
version = "1.13.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67"
-[[package]]
-name = "solana_rust_c"
-version = "0.1.0"
-dependencies = [
- "app_solana",
- "app_utils",
- "common_rust_c",
- "cstr_core",
- "cty",
- "itertools 0.13.0",
- "keystore",
- "rust_tools",
- "ur-registry",
-]
-
[[package]]
name = "spin"
version = "0.9.8"
@@ -3953,17 +4093,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
[[package]]
-name = "stellar_rust_c"
-version = "0.1.0"
+name = "std-shims"
+version = "0.1.1"
+source = "git+https://github.com/KeystoneHQ/serai#c784e6c6fcd6cfd8ac88cdd0d467184aeefaf810"
dependencies = [
- "app_stellar",
- "app_utils",
- "common_rust_c",
- "cstr_core",
- "cty",
- "hex",
- "keystore",
- "ur-registry",
+ "hashbrown 0.14.5",
+ "spin",
]
[[package]]
@@ -4031,7 +4166,7 @@ dependencies = [
"proc-macro2",
"quote",
"sui-enum-compat-util",
- "syn 2.0.85",
+ "syn 2.0.93",
]
[[package]]
@@ -4057,22 +4192,6 @@ dependencies = [
"thiserror-core",
]
-[[package]]
-name = "sui_rust_c"
-version = "0.1.0"
-dependencies = [
- "app_sui",
- "app_utils",
- "common_rust_c",
- "cstr_core",
- "cty",
- "hex",
- "keystore",
- "rust_tools",
- "serde_json",
- "ur-registry",
-]
-
[[package]]
name = "syn"
version = "1.0.109"
@@ -4086,27 +4205,15 @@ dependencies = [
[[package]]
name = "syn"
-version = "2.0.85"
+version = "2.0.93"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5023162dfcd14ef8f32034d8bcd4cc5ddc61ef7a247c024a33e24e1f24d21b56"
+checksum = "9c786062daee0d6db1132800e623df74274a0a87322d8e183338e01b3d98d058"
dependencies = [
"proc-macro2",
"quote",
"unicode-ident",
]
-[[package]]
-name = "syn_derive"
-version = "0.1.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1329189c02ff984e9736652b1631330da25eaa6bc639089ed4915d25446cbe7b"
-dependencies = [
- "proc-macro-error",
- "proc-macro2",
- "quote",
- "syn 2.0.85",
-]
-
[[package]]
name = "tap"
version = "1.0.1"
@@ -4115,9 +4222,9 @@ checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369"
[[package]]
name = "tempfile"
-version = "3.13.0"
+version = "3.14.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f0f2c9fc62d0beef6951ccffd757e241266a2c833136efbe35af6cd2567dca5b"
+checksum = "28cce251fcbc87fac86a866eeb0d6c2d536fc16d06f184bb61aeae11aa4cee0c"
dependencies = [
"cfg-if",
"fastrand",
@@ -4144,19 +4251,11 @@ dependencies = [
"time",
]
-[[package]]
-name = "test_cmd"
-version = "0.1.0"
-dependencies = [
- "btc_test_cmd",
- "general_test_cmd",
-]
-
[[package]]
name = "thiserror"
-version = "1.0.65"
+version = "1.0.69"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5d11abd9594d9b38965ef50805c5e469ca9cc6f197f883f717e0269a3057b3d5"
+checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52"
dependencies = [
"thiserror-impl",
]
@@ -4178,20 +4277,26 @@ checksum = "e4c60d69f36615a077cc7663b9cb8e42275722d23e58a7fa3d2c7f2915d09d04"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.85",
+ "syn 2.0.93",
]
[[package]]
name = "thiserror-impl"
-version = "1.0.65"
+version = "1.0.69"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ae71770322cbd277e69d762a16c444af02aa0575ac0d174f0b9562d3b37f8602"
+checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.85",
+ "syn 2.0.93",
]
+[[package]]
+name = "threefish"
+version = "0.5.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a693d0c8cf16973fac5a93fbe47b8c6452e7097d4fcac49f3d7a18e39c76e62e"
+
[[package]]
name = "tiff"
version = "0.9.1"
@@ -4205,9 +4310,9 @@ dependencies = [
[[package]]
name = "time"
-version = "0.3.36"
+version = "0.3.37"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885"
+checksum = "35e7868883861bd0e56d9ac6efcaaca0d6d5d82a2a7ec8209ff492c07cf37b21"
dependencies = [
"deranged",
"num-conv",
@@ -4225,9 +4330,9 @@ checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3"
[[package]]
name = "time-macros"
-version = "0.2.18"
+version = "0.2.19"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3f252a68540fde3a3877aeea552b832b40ab9a69e318efd078774a01ddee1ccf"
+checksum = "2834e6017e3e5e4b9834939793b282bc03b37a3336245fa820e35e233e2a85de"
dependencies = [
"num-conv",
"time-core",
@@ -4244,9 +4349,9 @@ dependencies = [
[[package]]
name = "tinyvec"
-version = "1.8.0"
+version = "1.8.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "445e881f4f6d382d5f27c034e25eb92edd7c784ceab92a0937db7f2e9471b938"
+checksum = "022db8904dfa342efe721985167e9fcd16c29b226db4397ed752a761cfce81e8"
dependencies = [
"tinyvec_macros",
]
@@ -4266,11 +4371,26 @@ dependencies = [
"serde",
]
+[[package]]
+name = "toml"
+version = "0.8.19"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a1ed1f98e3fdc28d6d910e6737ae6ab1a93bf1985935a1193e68f93eeb68d24e"
+dependencies = [
+ "serde",
+ "serde_spanned",
+ "toml_datetime",
+ "toml_edit",
+]
+
[[package]]
name = "toml_datetime"
version = "0.6.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41"
+dependencies = [
+ "serde",
+]
[[package]]
name = "toml_edit"
@@ -4278,31 +4398,18 @@ version = "0.22.22"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4ae48d6208a266e853d946088ed816055e556cc6028c5e8e2b84d9fa5dd7c7f5"
dependencies = [
- "indexmap 2.6.0",
+ "indexmap 2.7.0",
+ "serde",
+ "serde_spanned",
"toml_datetime",
"winnow",
]
-[[package]]
-name = "ton_rust_c"
-version = "0.1.0"
-dependencies = [
- "app_ton",
- "app_utils",
- "common_rust_c",
- "cstr_core",
- "cty",
- "hex",
- "keystore",
- "rust_tools",
- "ur-registry",
-]
-
[[package]]
name = "tracing"
-version = "0.1.40"
+version = "0.1.41"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef"
+checksum = "784e0ac535deb450455cbfa28a6f0df145ea1bb7ae51b821cf5e7927fdcfbdd0"
dependencies = [
"pin-project-lite",
"tracing-core",
@@ -4310,22 +4417,9 @@ dependencies = [
[[package]]
name = "tracing-core"
-version = "0.1.32"
+version = "0.1.33"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54"
-
-[[package]]
-name = "tron_rust_c"
-version = "0.1.0"
-dependencies = [
- "app_tron",
- "app_utils",
- "common_rust_c",
- "cstr_core",
- "cty",
- "keystore",
- "rust_tools",
-]
+checksum = "e672c95779cf947c5311f83787af4fa8fffd12fb27e4993211a84bdfd9610f9c"
[[package]]
name = "typenum"
@@ -4353,9 +4447,9 @@ checksum = "6b12e05d9e06373163a9bb6bb8c263c261b396643a99445fe6b9811fd376581b"
[[package]]
name = "unicode-ident"
-version = "1.0.13"
+version = "1.0.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe"
+checksum = "adb9e6ca4f869e1180728b7950e35922a7fc6397f7b641499e8f3ef06e50dc83"
[[package]]
name = "unicode-xid"
@@ -4376,7 +4470,7 @@ dependencies = [
[[package]]
name = "ur"
version = "0.3.0"
-source = "git+https://github.com/KeystoneHQ/ur-rs?tag=0.3.1#abf91c2417f2bda3ae7e93d3ba6ce9bc3bc2fd6f"
+source = "git+https://github.com/KeystoneHQ/ur-rs?tag=0.3.3#81b8bb3b6b3a823128489c81ffee5bb4001ba2ae"
dependencies = [
"bitcoin_hashes 0.12.0",
"crc",
@@ -4388,7 +4482,7 @@ dependencies = [
[[package]]
name = "ur-parse-lib"
version = "0.2.0"
-source = "git+https://git@github.com/KeystoneHQ/keystone-sdk-rust.git?tag=0.0.44#ff77d9834a0831e935c4c191db7ba1cfcd89b5b5"
+source = "git+https://git@github.com/KeystoneHQ/keystone-sdk-rust.git?tag=0.0.45#42f5e05834c395b8d7ce5d1a233b371d2b74fa21"
dependencies = [
"hex",
"ur",
@@ -4398,7 +4492,7 @@ dependencies = [
[[package]]
name = "ur-registry"
version = "0.1.1"
-source = "git+https://git@github.com/KeystoneHQ/keystone-sdk-rust.git?tag=0.0.44#ff77d9834a0831e935c4c191db7ba1cfcd89b5b5"
+source = "git+https://git@github.com/KeystoneHQ/keystone-sdk-rust.git?tag=0.0.45#42f5e05834c395b8d7ce5d1a233b371d2b74fa21"
dependencies = [
"bs58 0.5.1",
"core2",
@@ -4420,6 +4514,12 @@ version = "2.1.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "daf8dba3b7eb870caf1ddeed7bc9d2a049f3cfdfae7cb521b087cc33ae4c49da"
+[[package]]
+name = "utf8parse"
+version = "0.2.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821"
+
[[package]]
name = "version_check"
version = "0.9.5"
@@ -4434,15 +4534,7 @@ checksum = "d674d135b4a8c1d7e813e2f8d1c9a58308aee4a680323066025e53132218bd91"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.85",
-]
-
-[[package]]
-name = "wallet_rust_c"
-version = "0.1.0"
-dependencies = [
- "btc_only_wallet_rust_c",
- "multi_coins_wallet_rust_c",
+ "syn 2.0.93",
]
[[package]]
@@ -4472,7 +4564,7 @@ dependencies = [
"once_cell",
"proc-macro2",
"quote",
- "syn 2.0.85",
+ "syn 2.0.93",
"wasm-bindgen-shared",
]
@@ -4494,7 +4586,7 @@ checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.85",
+ "syn 2.0.93",
"wasm-bindgen-backend",
"wasm-bindgen-shared",
]
@@ -4694,7 +4786,7 @@ checksum = "2bbd5b46c938e506ecbce286b6628a02171d56153ba733b6c741fc627ec9579b"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.85",
+ "syn 2.0.93",
]
[[package]]
@@ -4705,7 +4797,7 @@ checksum = "053c4c462dc91d3b1504c6fe5a726dd15e216ba718e84a0e46a88fbe5ded3515"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.85",
+ "syn 2.0.93",
]
[[package]]
@@ -4736,15 +4828,6 @@ dependencies = [
"windows-targets 0.48.5",
]
-[[package]]
-name = "windows-sys"
-version = "0.52.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
-dependencies = [
- "windows-targets 0.52.6",
-]
-
[[package]]
name = "windows-sys"
version = "0.59.0"
@@ -4895,32 +4978,15 @@ dependencies = [
[[package]]
name = "xcb"
-version = "1.4.0"
+version = "1.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "02e75181b5a62b6eeaa72f303d3cef7dbb841e22885bf6d3e66fe23e88c55dc6"
+checksum = "f1e2f212bb1a92cd8caac8051b829a6582ede155ccb60b5d5908b81b100952be"
dependencies = [
"bitflags 1.3.2",
"libc",
"quick-xml 0.30.0",
]
-[[package]]
-name = "xrp_rust_c"
-version = "0.1.0"
-dependencies = [
- "app_utils",
- "app_xrp",
- "bitcoin",
- "common_rust_c",
- "cstr_core",
- "cty",
- "hex",
- "keystore",
- "rust_tools",
- "serde_json",
- "ur-registry",
-]
-
[[package]]
name = "zcash_address"
version = "0.6.2"
@@ -4990,21 +5056,6 @@ dependencies = [
"hex",
]
-[[package]]
-name = "zcash_rust_c"
-version = "0.1.0"
-dependencies = [
- "app_utils",
- "app_zcash",
- "common_rust_c",
- "cstr_core",
- "cty",
- "keystore",
- "rust_tools",
- "ur-registry",
- "zcash_vendor",
-]
-
[[package]]
name = "zcash_spec"
version = "0.1.2"
@@ -5040,7 +5091,6 @@ dependencies = [
name = "zcash_vendor"
version = "0.1.0"
dependencies = [
- "aes",
"bech32 0.11.0",
"bip32",
"bitvec",
@@ -5064,7 +5114,7 @@ dependencies = [
"ripemd",
"secp256k1",
"serde",
- "serde_with 3.11.0",
+ "serde_with 3.12.0",
"sha2 0.10.8",
"sinsemilla",
"subtle",
@@ -5094,7 +5144,7 @@ checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.85",
+ "syn 2.0.93",
]
[[package]]
@@ -5102,6 +5152,20 @@ name = "zeroize"
version = "1.8.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ced3678a2879b30306d323f4542626697a464a97c0a07c9aebf7ebca65cd4dde"
+dependencies = [
+ "zeroize_derive",
+]
+
+[[package]]
+name = "zeroize_derive"
+version = "1.4.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.93",
+]
[[package]]
name = "zip32"
diff --git a/rust/Cargo.toml b/rust/Cargo.toml
index 2db60a2e5..be63c6220 100644
--- a/rust/Cargo.toml
+++ b/rust/Cargo.toml
@@ -21,29 +21,6 @@ members = [
# C interface entry
"rust_c",
- # rust_c libs
- "rust_c/src/aptos",
- "rust_c/src/arweave",
- "rust_c/src/bitcoin",
- "rust_c/src/cardano",
- "rust_c/src/common",
- "rust_c/src/cosmos",
- "rust_c/src/ethereum",
- # "rust_c/src/kt_allocator",
- "rust_c/src/near",
- "rust_c/src/simulator",
- "rust_c/src/solana",
- "rust_c/src/stellar",
- "rust_c/src/sui",
- "rust_c/src/ton",
- "rust_c/src/tron",
- "rust_c/src/wallet",
- "rust_c/src/xrp",
- "rust_c/src/zcash",
-
- "rust_c/src/test_cmd",
- "rust_c/src/test_cmd/src/btc_test_cmd",
- "rust_c/src/test_cmd/src/general_test_cmd",
# other
"keystore",
@@ -69,6 +46,7 @@ app_utils = { path = "apps/utils" }
app_wallets = { path = "apps/wallets" }
app_xrp = { path = "apps/xrp" }
app_zcash = { path = "apps/zcash" }
+app_monero = { path = "apps/monero" }
keystore = { path = "keystore", default-features = false }
tools = { path = "tools" }
sim_qr_reader = { path = "sim_qr_reader" }
@@ -92,8 +70,8 @@ core2 = { version = "0.3.3", default_features = false, features = ["alloc"] }
thiserror = { version = "1.0", package = "thiserror-core", default-features = false }
rsa = { version = "0.8.2", default-features = false }
sha1 = { version = "0.10.5", default-features = false }
-ur-registry = { git = "https://git@github.com/KeystoneHQ/keystone-sdk-rust.git", tag = "0.0.44" }
-ur-parse-lib = { git = "https://git@github.com/KeystoneHQ/keystone-sdk-rust.git", tag = "0.0.44" }
+ur-registry = { git = "https://git@github.com/KeystoneHQ/keystone-sdk-rust.git", tag = "0.0.45" }
+ur-parse-lib = { git = "https://git@github.com/KeystoneHQ/keystone-sdk-rust.git", tag = "0.0.45" }
ed25519-bip32-core = { version = "0.1.1", default-features = false }
cryptoxide = "0.4"
arrayref = "0.3.6"
diff --git a/rust/apps/aptos/src/aptos_type/account_address.rs b/rust/apps/aptos/src/aptos_type/account_address.rs
index 87ec9c342..0280feabe 100644
--- a/rust/apps/aptos/src/aptos_type/account_address.rs
+++ b/rust/apps/aptos/src/aptos_type/account_address.rs
@@ -2,7 +2,7 @@ use alloc::format;
use alloc::string::{String, ToString};
use alloc::vec::Vec;
use core::{convert::TryFrom, fmt, str::FromStr};
-use hex;
+
use hex::FromHex;
use serde::{de::Error as _, Deserialize, Deserializer, Serialize, Serializer};
@@ -32,7 +32,7 @@ impl AccountAddress {
}
pub fn short_str_lossless(&self) -> String {
- let hex_str = hex::encode(&self.0).trim_start_matches('0').to_string();
+ let hex_str = hex::encode(self.0).trim_start_matches('0').to_string();
if hex_str.is_empty() {
"0".to_string()
} else {
diff --git a/rust/apps/aptos/src/aptos_type/module.rs b/rust/apps/aptos/src/aptos_type/module.rs
index c8eb133ff..5e43c5d9f 100644
--- a/rust/apps/aptos/src/aptos_type/module.rs
+++ b/rust/apps/aptos/src/aptos_type/module.rs
@@ -4,7 +4,7 @@
use alloc::vec;
use alloc::vec::Vec;
use core::fmt;
-use hex;
+
use serde::{Deserialize, Serialize};
#[derive(Clone, Hash, Eq, PartialEq, Serialize, Deserialize)]
diff --git a/rust/apps/aptos/src/aptos_type/parser.rs b/rust/apps/aptos/src/aptos_type/parser.rs
index e6d34eecd..a7d81c3ab 100644
--- a/rust/apps/aptos/src/aptos_type/parser.rs
+++ b/rust/apps/aptos/src/aptos_type/parser.rs
@@ -15,7 +15,6 @@ use alloc::string::{String, ToString};
use alloc::vec;
use alloc::vec::Vec;
use core::iter::Peekable;
-use hex;
#[derive(Eq, PartialEq, Debug)]
enum Token {
@@ -114,7 +113,7 @@ fn next_token(s: &str) -> crate::errors::Result