Skip to content

feat: Silent Payments (BIP-352) — address, descriptor and signing #3259

feat: Silent Payments (BIP-352) — address, descriptor and signing

feat: Silent Payments (BIP-352) — address, descriptor and signing #3259

Workflow file for this run

name: Tests
on:
push:
branches:
- main
- develop
pull_request:
jobs:
lint-black:
strategy:
matrix:
# minimum tested python version
# maximum python version
py-version: [ "3.11.5", "3.12.13"]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup Python
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.py-version }}
- uses: psf/black@stable
with:
options: "--check --verbose"
src: "./firmware/font"
- uses: psf/black@stable
with:
options: "--check --verbose"
src: "./firmware/scripts"
- uses: psf/black@stable
with:
options: "--check --verbose"
src: "./i18n"
- uses: psf/black@stable
with:
options: "--check --verbose"
src: "./src"
- uses: psf/black@stable
with:
options: "--check --verbose"
src: "./tests"
lint-pylint:
strategy:
matrix:
# minimum tested python version
# maximum python version
py-version: [ "3.11.5", "3.12.13"]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
- name: Install uv
uses: astral-sh/setup-uv@v4
with:
enable-cache: true
- name: Set up Python
run: uv python install ${{ matrix.py-version }}
- name: Sync dependencies
run: uv sync --frozen --python ${{ matrix.py-version }}
- name: Lint
run: uv run --python ${{ matrix.py-version }} poe lint
check-translations:
strategy:
matrix:
# minimum tested python version
# maximum python version
py-version: [ "3.11.5", "3.12.13"]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
- name: Install uv
uses: astral-sh/setup-uv@v4
with:
enable-cache: true
- name: Set up Python
run: uv python install ${{ matrix.py-version }}
- name: Sync dependencies
run: uv sync --frozen --python ${{ matrix.py-version }}
- name: Validate translations
run: uv run --python ${{ matrix.py-version }} poe i18n validate
run-tests:
strategy:
matrix:
# minimum tested python version
# maximum python version
py-version: [ "3.11.5", "3.12.13"]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
- name: Install uv
uses: astral-sh/setup-uv@v4
with:
enable-cache: true
- name: Set up Python
run: uv python install ${{ matrix.py-version }}
- name: Sync dependencies
run: uv sync --frozen --python ${{ matrix.py-version }}
- name: Build libsecp256k1
run: uv run --python ${{ matrix.py-version }} poe secp256k1-build
- name: Check embit uses the C secp256k1
run: uv run --python ${{ matrix.py-version }} poe secp256k1-check
- name: Run tests
run: uv run --python ${{ matrix.py-version }} poe test-simple
coverage:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@main
with:
submodules: recursive
- name: Install uv
uses: astral-sh/setup-uv@v4
with:
enable-cache: true
- name: Set up Python
# no need to use many coverages
run: uv python install 3.12.13
- name: Sync dependencies
run: uv sync --frozen --python 3.12.13
- name: Build libsecp256k1
run: uv run --python 3.12.13 poe secp256k1-build
- name: Check embit uses the C secp256k1
run: uv run --python 3.12.13 poe secp256k1-check
- name: Build coverage file
run: uv run --python 3.12.13 pytest --cache-clear --cov src/krux --cov-report xml tests
- name: Upload coverage reports to Codecov with GitHub Action
uses: codecov/codecov-action@v5
with:
token: ${{ secrets.CODECOV_TOKEN }}