Skip to content

Commit d264379

Browse files
authored
Merge branch 'main' into par2
2 parents d1d8f91 + a76937c commit d264379

File tree

108 files changed

+4959
-1610
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

108 files changed

+4959
-1610
lines changed

.github/actions/setup-dependencies/action.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ inputs:
22
python-version:
33
description: "Python version to setup"
44
required: false
5-
default: "3.9"
5+
default: "3.10"
66
install-test-deps:
77
description: "Wether to install 3rd Party dependencies (for tests)"
88
required: false
@@ -30,7 +30,7 @@ runs:
3030
shell: bash
3131

3232
- name: Install uv & Python
33-
uses: astral-sh/setup-uv@v5
33+
uses: astral-sh/setup-uv@v6
3434
with:
3535
enable-cache: true
3636
cache-dependency-glob: "uv.lock"

.github/workflows/CI.yml

Lines changed: 30 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ jobs:
4040
install-test-deps: "false"
4141

4242
- name: Setup Nix
43-
uses: cachix/install-nix-action@v30
43+
uses: cachix/install-nix-action@v31
4444
with:
4545
install_url: https://releases.nixos.org/nix/nix-2.18.8/install
4646

@@ -60,13 +60,28 @@ jobs:
6060
- name: Check - pyright
6161
run: uv run pyright .
6262

63+
check_documentation:
64+
name: Check - Documentation
65+
runs-on: ubuntu-latest
66+
steps:
67+
- name: Checkout source code
68+
uses: actions/checkout@v4
69+
70+
- name: Setup 3rd party dependencies
71+
uses: ./.github/actions/setup-dependencies
72+
73+
- name: Check - Documentation
74+
run: |
75+
uv run unblob --build-handlers-doc docs/handlers.md
76+
git diff --exit-code docs/handlers.md
77+
6378
run_python_tests:
6479
name: Run tests (Python)
6580
needs: [check_pre_commit, check_pyright]
6681
runs-on: ubuntu-latest
6782
strategy:
6883
matrix:
69-
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
84+
python-version: ["3.10", "3.11", "3.12", "3.13"]
7085
steps:
7186
- name: Checkout source code
7287
uses: actions/checkout@v4
@@ -123,7 +138,6 @@ jobs:
123138
name: Build wheels (linux)
124139
if: github.event_name == 'push' || github.event_name == 'workflow_dispatch' || contains(github.event.*.labels.*.name, 'dependencies')
125140
needs: [check_pre_commit]
126-
runs-on: ubuntu-latest
127141
strategy:
128142
fail-fast: false
129143
matrix:
@@ -137,6 +151,7 @@ jobs:
137151
# lief is not available for this platform (and no sdist is provided)
138152
# - manylinux: musllinux_1_1
139153
# target: aarch64
154+
runs-on: ${{ matrix.platform.target == 'aarch64' && 'ubuntu-24.04-arm' || 'ubuntu-latest' }}
140155
steps:
141156
- name: Checkout source code
142157
uses: actions/checkout@v4
@@ -168,24 +183,17 @@ jobs:
168183
python3 -m venv wheel.venv
169184
source wheel.venv/bin/activate
170185
pip install dist/*.whl
171-
unblob --help
186+
unblob --version
172187
173188
- name: Check wheel (cross-manylinux)
174189
if: matrix.platform.target != 'x86_64' && startsWith(matrix.platform.manylinux, 'manylinux')
175-
uses: uraimo/run-on-arch-action@v2
176-
with:
177-
arch: ${{ matrix.platform.target }}
178-
distro: ubuntu22.04
179-
githubToken: ${{ github.token }}
180-
install: |
181-
apt-get update
182-
apt-get install -y --no-install-recommends python3-venv libmagic1
183-
run: |
184-
set -e
185-
python3 -m venv wheel.venv
186-
source wheel.venv/bin/activate
187-
pip install dist/*.whl
188-
unblob --version
190+
shell: bash
191+
run: |
192+
set -e
193+
python3 -m venv wheel.venv
194+
source wheel.venv/bin/activate
195+
pip install dist/*.whl
196+
unblob --version
189197
190198
- name: Check wheel (x86-musllinux)
191199
if: matrix.platform.target == 'x86_64' && startsWith(matrix.platform.manylinux, 'musllinux')
@@ -203,15 +211,13 @@ jobs:
203211
204212
- name: Check wheel (cross-musllinux)
205213
if: matrix.platform.target != 'x86_64' && startsWith(matrix.platform.manylinux, 'musllinux')
206-
uses: uraimo/run-on-arch-action@v2
214+
uses: addnab/docker-run-action@v3
207215
with:
208-
arch: ${{ matrix.platform.target }}
209-
distro: alpine_latest
210-
githubToken: ${{ github.token }}
211-
install: |
212-
apk add py3-pip libmagic gcc lz4 musl-dev python3-dev
216+
image: alpine:latest
217+
options: -v ${{ github.workspace }}:/io -w /io
213218
run: |
214219
set -e
220+
apk add py3-pip libmagic gcc lz4 musl-dev python3-dev
215221
python3 -m venv wheel.venv
216222
source wheel.venv/bin/activate
217223
pip install dist/*.whl

.github/workflows/build-nix.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ jobs:
2424
- uses: actions/checkout@v4
2525
- name: Setup git lfs
2626
uses: ./.github/actions/setup-git-lfs
27-
- uses: cachix/install-nix-action@v30
27+
- uses: cachix/install-nix-action@v31
2828
with:
2929
install_url: https://releases.nixos.org/nix/nix-2.18.8/install
3030
extra_nix_config: |

.github/workflows/documentation.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,11 +14,11 @@ jobs:
1414
uses: actions/checkout@v4
1515

1616
- name: Install uv & Python
17-
uses: astral-sh/setup-uv@v5
17+
uses: astral-sh/setup-uv@v6
1818
with:
1919
enable-cache: true
2020
cache-dependency-glob: "uv.lock"
21-
python-version: "3.9"
21+
python-version: "3.10"
2222

2323
- name: Install the project
2424
run: uv sync --only-group docs

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ build/
66
*.egg-info/
77
*.so
88
.idea
9+
.cache
910
.coverage*
1011
/.venv
1112
unblob.log

.pre-commit-config.yaml

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ repos:
1111
- id: check-json
1212
- id: check-toml
1313
- id: check-yaml
14+
args: ['--unsafe']
1415
- id: check-added-large-files
1516

1617
- repo: local
@@ -56,13 +57,6 @@ repos:
5657
language: system
5758
types: [toml]
5859
entry: uv run taplo format
59-
- id: taplo-lint
60-
name: Lint TOML (taplo)
61-
language: system
62-
types: [toml]
63-
entry: uv run taplo lint
64-
args:
65-
- --default-schema-catalogs
6660
- id: cargo-fmt # rustup component add rustfmt
6761
name: Check rust (cargo fmt)
6862
entry: cargo fmt --all --
@@ -83,15 +77,15 @@ repos:
8377
name: Check vulture
8478

8579
- repo: https://github.com/python-jsonschema/check-jsonschema
86-
rev: 0.33.0
80+
rev: 0.34.1
8781
hooks:
8882
- id: check-github-actions
8983
name: Check Github actions
9084
- id: check-github-workflows
9185
name: Check Github workflows
9286

9387
- repo: https://github.com/renovatebot/pre-commit-hooks
94-
rev: 39.264.0
88+
rev: 41.61.1
9589
hooks:
9690
- id: renovate-config-validator
9791
args: [--strict]

0 commit comments

Comments
 (0)