Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
77 commits
Select commit Hold shift + click to select a range
ff9d464
Merge pull request #1 from broxus/master
lpascal-ledger Dec 14, 2022
d62a13e
Merge pull request #2 from broxus/master
lpascal-ledger Jan 11, 2023
f5ebff5
Merge pull request #4 from broxus/master
fbeutin-ledger Jan 26, 2023
6466dd8
Merge pull request #5 from broxus/master
fbeutin-ledger Feb 15, 2023
a265711
[auto]: add PR template
sgliner-ledger Nov 29, 2023
0cc9ca5
[auto] Add manifest
sgliner-ledger Mar 13, 2024
430ac3a
[auto] Add guideline enforcer
sgliner-ledger Mar 13, 2024
cd58237
chore: update gitignore
reffiek Feb 13, 2025
10f5e6d
ops: update ci workflows
reffiek Feb 13, 2025
44392bd
chore: remove pending review screen parameters
reffiek Feb 13, 2025
584e730
chore: add configuration files for development
reffiek Feb 13, 2025
d84d999
test: add ragger tests and move old tests into a relevant folder
reffiek Feb 13, 2025
ab56cf5
fix: edit the text in the sign message approval screen
reffiek Feb 13, 2025
e37de50
test: generate golden snapshots
reffiek Feb 13, 2025
24d6242
Merge remote-tracking branch 'origin' into v1.0.10
reffiek Feb 13, 2025
1a2a0b7
test: update sign message test payload and signature
reffiek Feb 13, 2025
12a8ce5
ops: exclude lock files from misspellings check
reffiek Feb 13, 2025
278984f
fix: correct typos
reffiek Feb 13, 2025
7216654
style: format the C codebase
reffiek Feb 13, 2025
dfb3219
style: update clang-format and format C codebase
reffiek Feb 13, 2025
c9e8b6e
test: update golden snapshots for nanox
reffiek Feb 13, 2025
7b8d641
style: update .clang-format and format C codebase
reffiek Feb 13, 2025
64ba647
fix: replace deprecated function with new ones and format files
reffiek Feb 17, 2025
c5781e9
fix: change handleSignTransaction return type from int to void
reffiek Feb 17, 2025
1482e62
style: update pointer alignment and formatting in .clang-format
reffiek Feb 17, 2025
a371648
style: minor formatting and whitespace adjustments
reffiek Feb 17, 2025
9658ee6
style: apply consistent code formatting across header files
reffiek Feb 17, 2025
d11d884
Merge pull request #6 from blooo-io/fix/LDG-682--nano-app-get-a-clean…
keiff3r Feb 17, 2025
15d6b3c
refactor: move handler file in the corresponding folder
reffiek Feb 17, 2025
c4ad079
refactor: centralize UI display logic and separate platform-specific …
reffiek Feb 17, 2025
c3efedb
refactor: update Makefile and main application structure
reffiek Feb 18, 2025
e5a1e08
refactor: improve public key and error handling in key derivation fun…
reffiek Feb 18, 2025
2b5b5e7
refactor: add get address APDU command handler and UI flow
reffiek Feb 18, 2025
8390c2d
feat: add sign message APDU command handler and UI flow
reffiek Feb 18, 2025
bfca9c9
feat: implement sign transaction APDU command handler and UI flow
reffiek Feb 19, 2025
0062371
test: generate golden snapshots for nanoX
reffiek Feb 19, 2025
f48f0fe
refactor: update sign transaction UI flow to use generic validation c…
reffiek Feb 19, 2025
68f169d
refactor: remove usused code, files and make changes accordingly
reffiek Feb 19, 2025
adf1d31
refactor: use the output value of a function
reffiek Feb 19, 2025
0af4b93
refactor: delete unused and commented out code
reffiek Feb 19, 2025
8342afb
build: add app load flags for Everscale application
reffiek Feb 19, 2025
1a01d5d
update: replace boilerplate icons with Everscale app icons
reffiek Feb 19, 2025
47569c6
fix: make compilation work on flex & stax
reffiek Feb 19, 2025
9f148b2
chore: reorganize Everscale app icons for different device sizes
reffiek Feb 19, 2025
a47d54a
feat: add Docker Compose and GDB debug script debug purposes
reffiek Feb 12, 2025
0e13fc6
refactor: delete useless file
reffiek Feb 20, 2025
6e42f36
chore: rename boilerplate to everscale
reffiek Feb 20, 2025
8a86e58
chore: remove useless comments
reffiek Feb 20, 2025
9479f15
feat: implement get_addres display for nbgl devices [LDG-659]
reffiek Feb 19, 2025
8bfd27e
test: update sign transaction tests to support multiple device types
reffiek Feb 19, 2025
0efbdb9
feat: implement sign_transaction display for nbgl devices [LDG-661]
reffiek Feb 20, 2025
f0f257c
feat: implement sign_message's display for nbgl devices [LDG-660]
reffiek Feb 20, 2025
2916589
fix: enable compilation on stax
reffiek Feb 20, 2025
2310bc9
test: modify `navigate_until_text_and_compare` to accept a list of co…
reffiek Feb 20, 2025
65ae212
feat: implement get_public_key display for nbgl devices [LDG-658]
reffiek Feb 20, 2025
d236634
build: add flex and stax to ledger_app.toml
reffiek Feb 20, 2025
8f66f30
test: generate golden snapshots
reffiek Feb 20, 2025
0e52c33
test: update reject public key test to use "Reject" instead of "Approve"
reffiek Feb 20, 2025
e001cc0
test: generate golden snapshots
reffiek Feb 20, 2025
1d22292
Merge pull request #8 from blooo-io/feat/LDG-659--nano-app-implement-…
keiff3r Feb 20, 2025
10b70de
fix: add a title screen for get public key on nano devices and genera…
reffiek Feb 24, 2025
f68b786
fix(ui): put 'approve' screen before 'reject' screen on nano devices …
reffiek Feb 24, 2025
d1ff8d1
docs: Update README with comprehensive development and testing guide …
reffiek Feb 24, 2025
0b1ce5b
chore: bump app version
reffiek Feb 24, 2025
b55f70f
Merge pull request #9 from blooo-io/fix/LDG-680--nano-app-missing-ini…
keiff3r Feb 24, 2025
859afce
chore: remove old test suite and related files
n4l5u0r Feb 24, 2025
65094f0
chore: update Everscale app icons and glyphs
n4l5u0r Feb 24, 2025
519ff96
test: update Flex device test snapshots
n4l5u0r Feb 24, 2025
3a11b72
test: update Stax device test snapshots
n4l5u0r Feb 24, 2025
defd371
Merge pull request #10 from blooo-io/feat/LDG-685-generate-icons-for-…
n4l5u0r Feb 24, 2025
63abec3
feat: add support for Venom variant in Makefile and update README for…
n4l5u0r Mar 12, 2025
53100ea
chore: update Makefile for Venom variant and increment app version
n4l5u0r Mar 12, 2025
c35f879
Merge pull request #11 from blooo-io/feat/LDG-693--nano-app-add-venom…
n4l5u0r Mar 12, 2025
e745427
fix: fuzzing build
pashinov Mar 7, 2025
5634389
rust integration tests
pashinov Mar 10, 2025
b8b4c0e
extend cell tree depth to 16
pashinov Mar 16, 2025
7695775
fix warnings
pashinov Mar 19, 2025
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
  •  
  •  
  •  
21 changes: 21 additions & 0 deletions .clang-format
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
---
BasedOnStyle: Google
IndentWidth: 4
Language: Cpp
ColumnLimit: 100
DerivePointerAlignment: false
PointerAlignment: Left
AlignAfterOpenBracket: Align
AlignConsecutiveMacros: true

AllowAllParametersOfDeclarationOnNextLine: false
SortIncludes: false
SpaceAfterCStyleCast: true
AllowShortCaseLabelsOnASingleLine: false
AllowAllArgumentsOnNextLine: false
AllowShortBlocksOnASingleLine: Never
AllowShortFunctionsOnASingleLine: None
BinPackArguments: false
BinPackParameters: false
---

8 changes: 8 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# Checklist
<!-- Put an `x` in each box when you have completed the items. -->
- [ ] App update process has been followed <!-- See comment below -->
- [ ] Target branch is `develop` <!-- unless you have a very good reason -->
- [ ] Application version has been bumped <!-- required if your changes are to be deployed -->

<!-- Make sure you followed the process described in https://developers.ledger.com/docs/embedded-app/maintenance/ before opening your Pull Request.
Don't hesitate to contact us directly on Discord if you have any questions ! https://developers.ledger.com/discord -->
34 changes: 0 additions & 34 deletions .github/workflows/build-workflow.yml

This file was deleted.

43 changes: 43 additions & 0 deletions .github/workflows/build_and_functional_tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
name: Build and run functional tests using ragger through reusable workflow

# This workflow will build the app and then run functional tests using the Ragger framework upon Speculos emulation.
# It calls a reusable workflow developed by Ledger's internal developer team to build the application and upload the
# resulting binaries.
# It then calls another reusable workflow to run the Ragger tests on the compiled application binary.
#
# The build part of this workflow is mandatory, this ensures that the app will be deployable in the Ledger App Store.
# While the test part of this workflow is optional, having functional testing on your application is mandatory and this workflow and
# tooling environment is meant to be easy to use and adapt after forking your application

on:
workflow_dispatch:
inputs:
golden_run:
type: choice
required: true
default: 'Raise an error (default)'
description: CI behavior if the test snapshots are different than expected.
options:
- 'Raise an error (default)'
- 'Open a PR'
push:
branches:
- master
- main
- develop
pull_request:

jobs:
build_application:
name: Build application using the reusable workflow
uses: LedgerHQ/ledger-app-workflows/.github/workflows/reusable_build.yml@v1
with:
upload_app_binaries_artifact: "compiled_app_binaries"

ragger_tests:
name: Run ragger tests using the reusable workflow
needs: build_application
uses: LedgerHQ/ledger-app-workflows/.github/workflows/reusable_ragger_tests.yml@v1
with:
download_app_binaries_artifact: "compiled_app_binaries"
regenerate_snapshots: ${{ inputs.golden_run == 'Open a PR' }}
97 changes: 0 additions & 97 deletions .github/workflows/ci-workflow.yml

This file was deleted.

45 changes: 45 additions & 0 deletions .github/workflows/codeql_checks.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
name: "CodeQL"

on:
workflow_dispatch:
push:
branches:
- master
- main
- develop
pull_request:
# Excluded path: add the paths you want to ignore instead of deleting the workflow
paths-ignore:
- '.github/workflows/*.yml'
- 'tests/*'

jobs:
analyse:
name: Analyse
strategy:
fail-fast: false
matrix:
sdk: ["$NANOX_SDK", "$NANOSP_SDK"]
# 'cpp' covers C and C++
language: ['cpp']
runs-on: ubuntu-latest
container:
image: ghcr.io/ledgerhq/ledger-app-builder/ledger-app-builder-legacy:latest

steps:
- name: Clone
uses: actions/checkout@v4

- name: Initialize CodeQL
uses: github/codeql-action/init@v3
with:
languages: ${{ matrix.language }}
queries: security-and-quality

# CodeQL will create the database during the compilation
- name: Build
run: |
make BOLOS_SDK=${{ matrix.sdk }}

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v3
25 changes: 25 additions & 0 deletions .github/workflows/coding_style_checks.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
name: Run coding style check through reusable workflow

# This workflow will run linting checks to ensure a level of uniformization among all Ledger applications.
#
# The presence of this workflow is mandatory as a minimal level of linting is required.
# You are however free to modify the content of the .clang-format file and thus the coding style of your application.
# We simply ask you to not diverge too much from the linting of the everscale application.

on:
workflow_dispatch:
push:
branches:
- master
- main
- develop
pull_request:

jobs:
check_linting:
name: Check linting using the reusable workflow
uses: LedgerHQ/ledger-app-workflows/.github/workflows/reusable_lint.yml@v1
with:
source: './src'
extensions: 'h,c'
version: 12
23 changes: 23 additions & 0 deletions .github/workflows/guidelines_enforcer.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
name: Ensure compliance with Ledger guidelines

# This workflow is mandatory in all applications
# It calls a reusable workflow guidelines_enforcer developed by Ledger's internal developer team.
# The successful completion of the reusable workflow is a mandatory step for an app to be available on the Ledger
# application store.
#
# More information on the guidelines can be found in the repository:
# LedgerHQ/ledger-app-workflows/

on:
workflow_dispatch:
push:
branches:
- master
- main
- develop
pull_request:

jobs:
guidelines_enforcer:
name: Call Ledger guidelines_enforcer
uses: LedgerHQ/ledger-app-workflows/.github/workflows/reusable_guidelines_enforcer.yml@v1
29 changes: 29 additions & 0 deletions .github/workflows/misspellings_checks.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
name: Misspellings checks

# This workflow performs some misspelling checks on the repository
# It is there to help us maintain a level of quality in our codebase and does not have to be kept on forked
# applications.

on:
workflow_dispatch:
push:
branches:
- master
- main
- develop
pull_request:

jobs:
misspell:
name: Check misspellings
runs-on: ubuntu-latest
steps:
- name: Clone
uses: actions/checkout@v4

- name: Check misspellings
uses: codespell-project/actions-codespell@v2
with:
builtin: clear,rare
check_filenames: true
skip: "*.lock"
41 changes: 41 additions & 0 deletions .github/workflows/python_client_checks.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
name: Checks on the Python client

# This workflow performs some checks on the Python client used by the everscale tests
# It is there to help us maintain a level of quality in our codebase and does not have to be kept on forked
# applications.

on:
workflow_dispatch:
push:
branches:
- master
- main
- develop
pull_request:

jobs:
lint:
name: everscale client linting
runs-on: ubuntu-latest
steps:
- name: Clone
uses: actions/checkout@v4
- name: Installing PIP dependencies
run: |
pip install pylint
pip install -r tests/requirements.txt
- name: Lint Python code
run: pylint --rc tests/setup.cfg tests/application_client/

mypy:
name: Type checking
runs-on: ubuntu-latest
steps:
- name: Clone
uses: actions/checkout@v4
- name: Installing PIP dependencies
run: |
pip install mypy
pip install -r tests/requirements.txt
- name: Mypy type checking
run: mypy tests/application_client/
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -16,3 +16,6 @@ dist
*.DS_Store
client/target
fuzz/cmake-build-fuzz

__pycache__
snapshots-tmp
Loading
Loading