Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
62 commits
Select commit Hold shift + click to select a range
cd2ee45
Update year in copyrights
ImplOfAnImpl Jun 24, 2026
02d4cf1
Regenerate all snapshots
ImplOfAnImpl Jun 24, 2026
fc8d8c5
Messages renaming and cleanup - WIP
ImplOfAnImpl Jun 18, 2026
ef88f34
Remove unused types from tests/application_client/__init__.py
ImplOfAnImpl Jun 22, 2026
098ff0c
Format python code via `black`
ImplOfAnImpl Jun 22, 2026
8b47b22
Fix rust-analyzer warning about P2_MORE/P2_DONE having wrong case (it…
ImplOfAnImpl Jun 22, 2026
18ee93e
Add a bunch of FIXMEs
ImplOfAnImpl Jun 22, 2026
0043ed0
Send 1st signature after the 1st explicit request rather than after l…
ImplOfAnImpl Jun 22, 2026
e61292f
Update tests: 1) tests fix (as last output no longer returns the 1st …
ImplOfAnImpl Jun 23, 2026
507a6aa
Add test for ts with zero outputs; some cleanup
ImplOfAnImpl Jun 23, 2026
aa5b032
Tests improvements: 1) expect specific intermediate responses; 2) som…
ImplOfAnImpl Jun 23, 2026
6ffed54
Fix tests on touch devices (need snapshot update)
ImplOfAnImpl Jun 23, 2026
2359083
Update snapshots
ImplOfAnImpl Jun 24, 2026
b87fdcd
Add some FIXMEs
ImplOfAnImpl Jun 24, 2026
008a40b
Move the tech spec document to docs and rename it
ImplOfAnImpl Jun 24, 2026
949f6da
Move icons and glyphs to the media subdir; minor cleanup
ImplOfAnImpl Jun 24, 2026
7193d60
Move derivation path handling to utils; add a couple of FIXMEs
ImplOfAnImpl Jun 24, 2026
b941a0c
Minor cleanup of tx messages
ImplOfAnImpl Jun 24, 2026
3c00547
Regression fix: call ui_approve_streaming_review inside switch_to_sig…
ImplOfAnImpl Jun 24, 2026
8ab3bfe
Add some FIXMEs
ImplOfAnImpl Jun 24, 2026
b845883
Fix docs; minor cleanup; forbid non-empty data in ping command
ImplOfAnImpl Jun 24, 2026
b709a13
Appease clippy
ImplOfAnImpl Jun 24, 2026
35f5123
Update snapshots
ImplOfAnImpl Jun 24, 2026
1eaef55
Cleanup
ImplOfAnImpl Jun 24, 2026
54f8186
Use bigger MAX_BUFFER_LEN; add a fixme; fix some typos
ImplOfAnImpl Jun 24, 2026
472ed97
Remove the useless subtitle "Cannot be undone" from message signing r…
ImplOfAnImpl Jun 24, 2026
4d09da8
Add tools/get_target_id.py (copied from the latest boilerplate app)
ImplOfAnImpl Jun 25, 2026
b0dfba3
Cleanup (mostly docs)
ImplOfAnImpl Jun 25, 2026
d0d0acb
Update tests.usage.md to refer to the main readme for device installa…
ImplOfAnImpl Jun 25, 2026
f526cc8
The messages crate now re-exports all types from mintlayer_core_primi…
ImplOfAnImpl Jun 25, 2026
b6838be
Minor cleanup
ImplOfAnImpl Jun 26, 2026
227fa7c
Rename: parsing->processing
ImplOfAnImpl Jun 26, 2026
cb20e34
Fix input/output review titles on nano devices
ImplOfAnImpl Jun 26, 2026
b1c40e7
Rename InputCompressed to SigTarget
ImplOfAnImpl Jun 26, 2026
bcf0534
Encapsulate hashing in the Hasher struct; avoid redundant allocations…
ImplOfAnImpl Jun 26, 2026
d058c83
Apply a FIXME
ImplOfAnImpl Jun 26, 2026
0e33296
Remove redundant FIXMEs in test command sender and apply a small one …
ImplOfAnImpl Jun 26, 2026
1575b34
Change snapshot by-step index increase from 10 to 100
ImplOfAnImpl Jun 26, 2026
04c48f2
Update snapshots
ImplOfAnImpl Jun 26, 2026
929b3b6
Fix CI
ImplOfAnImpl Jun 27, 2026
4e50569
Add codecheck script
ImplOfAnImpl Jun 30, 2026
23e0788
Replace FIXMEs with TODOs, minor cleanup
ImplOfAnImpl Jun 30, 2026
16b5457
Check derivation path in SignMessage
ImplOfAnImpl Jun 30, 2026
b5be495
Avoid using from_utf8_lossy when displaying strings; show "descriptio…
ImplOfAnImpl Jun 30, 2026
2dfdfb2
Cleanup tests/application_client/__init__.py, add some TODOs
ImplOfAnImpl Jul 1, 2026
3c62460
Rename tests/test_sign_cmd.py to tests/test_sign_tx.py
ImplOfAnImpl Jul 1, 2026
8dd0329
Minor cleanup in tests
ImplOfAnImpl Jul 1, 2026
df345f1
Move test-related utils to a separate crate. Bump rust edition of app…
ImplOfAnImpl Jul 1, 2026
3ed2067
Add tests for ledger-messages; fix Apdu::new_chunks for the case of e…
ImplOfAnImpl Jul 1, 2026
954a040
Replace a FIXME with a TODO
ImplOfAnImpl Jul 1, 2026
dc06375
Bump version to 1.0.0
ImplOfAnImpl Jul 1, 2026
f8cd9cf
Temporarily disable guidelines_enforcer job
ImplOfAnImpl Jul 1, 2026
f2e230a
Prettify the code; appease clippy
ImplOfAnImpl Jul 1, 2026
fef9fc8
Run 'cargo clean' in regenerate_snapshots.sh
ImplOfAnImpl Jul 1, 2026
2c2998e
Update snapshots
ImplOfAnImpl Jul 1, 2026
f558aee
Format token amounts as atoms, instead of using coin-specific formatting
ImplOfAnImpl Jul 1, 2026
6012ea7
Reject txs with zero inputs; some cleanup
ImplOfAnImpl Jul 1, 2026
327af45
Cleanup of tx signing tests
ImplOfAnImpl Jul 2, 2026
15e31ff
Check signatures in python tests
ImplOfAnImpl Jul 2, 2026
8a8ccc3
Prettify python code
ImplOfAnImpl Jul 2, 2026
74d4b2b
Fix CI; cleanup
ImplOfAnImpl Jul 2, 2026
b82dcb1
Update snapshots
ImplOfAnImpl Jul 2, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion .github/workflows/coding_style_checks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ on:
- main
- develop
pull_request:

jobs:
check_linting:
name: Check linting using the reusable workflow
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/extra_checks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ jobs:
steps:
- name: Checkout the repository
uses: actions/checkout@v5

# Note: no need to install docker manually, because it's already installed, see
# https://github.com/actions/runner-images/blob/main/images/ubuntu/Ubuntu2404-Readme.md

Expand Down
6 changes: 6 additions & 0 deletions .github/workflows/guidelines_enforcer.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ name: Ensure compliance with Ledger guidelines
permissions:
actions: write
contents: read
pull-requests: write

on:
workflow_dispatch:
Expand All @@ -23,5 +24,10 @@ on:

jobs:
guidelines_enforcer:
# TODO: this is disabled because the app is still not in the ledger app database,
# so the "Check app_load_params" step fails.
# Once it's there, this must be re-enabled.
# See https://github.com/mintlayer/mintlayer-ledger-app/issues/20.
if: false
name: Call Ledger guidelines_enforcer
uses: LedgerHQ/ledger-app-workflows/.github/workflows/reusable_guidelines_enforcer.yml@v1
126 changes: 103 additions & 23 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

32 changes: 17 additions & 15 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -4,28 +4,30 @@ version.workspace = true
edition = "2021"

[workspace]
members = ["crates/app-core", "crates/messages"]
members = ["crates/app-core", "crates/messages", "crates/test-utils"]
resolver = "2"

[workspace.package]
version = "0.1.0"
version = "1.0.0"

[workspace.dependencies]
bech32 = { version = "0.11", default-features = false }
chrono = { version = "0.4", default-features = false }
derive_more = { version = "2.1.1", default-features = false }
hex = { version = "0.4.3", default-features = false }
image = "0.25.8"
ledger_device_sdk = "1.35.1"
ledger_secure_sdk_sys = "1.16.1"
num_enum = { version = "0.7.5", default-features = false }
const-hex = { version = "1.19", default-features = false }
derive_more = { version = "2.1", default-features = false }
image = "0.25"
ledger_device_sdk = "1.35"
ledger_secure_sdk_sys = "1.16"
num_enum = { version = "0.7", default-features = false }
num-traits = { version = "0.2", default-features = false }
# Note: the testmacro crate is published by Ledger and its source code comes from the `testmacro`
# dir inside the sdk repo, i.e. https://github.com/LedgerHQ/ledger-device-rust-sdk/tree/cad196841dbd72c037cfa01bec81a4a3ae57a04e/testmacro
# (though the published version is a bit older).
testmacro = "0.1.0"
testmacro = "0.1"

mintlayer-app-core = { path = "crates/app-core" }
mintlayer-messages = { path = "crates/messages" }
test-utils = { path = "crates/test-utils" }

[workspace.dependencies.parity-scale-codec]
git = "https://github.com/paritytech/parity-scale-codec.git"
Expand Down Expand Up @@ -53,7 +55,7 @@ mintlayer-app-core.workspace = true
image.workspace = true

[[bin]]
# Note: we only have this section to disable tests, but Cargo inists that "name" should also
# Note: we only have this section to disable tests, but Cargo insists that "name" should also
# be specified.
name = "mintlayer-app"
# The app bin crate is a thin wrapper around `mintlayer-app-core` and it's not supposed to have
Expand All @@ -68,16 +70,16 @@ path = ["44'/19788'", "44'/1'"]
name = "Mintlayer"

[package.metadata.ledger.nanox]
icon = "icons/mintlayer_14x14.gif"
icon = "media/icons/mintlayer_14x14.gif"

[package.metadata.ledger.nanosplus]
icon = "icons/mintlayer_14x14.gif"
icon = "media/icons/mintlayer_14x14.gif"

[package.metadata.ledger.stax]
icon = "icons/mintlayer_32x32.gif"
icon = "media/icons/mintlayer_32x32.gif"

[package.metadata.ledger.flex]
icon = "icons/mintlayer_40x40.gif"
icon = "media/icons/mintlayer_40x40.gif"

[package.metadata.ledger.apex_p]
icon = "icons/mintlayer_32x32.png"
icon = "media/icons/mintlayer_32x32.png"
Loading
Loading