Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
32 changes: 32 additions & 0 deletions .github/workflows/check.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
name: Prek Auto Fix

on:
pull_request:
branches: [main,stable]

permissions:
contents: write

jobs:
prek-fix:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
ref: ${{ github.head_ref }}
fetch-depth: 0

- name: Install uv
uses: astral-sh/setup-uv@v5

- name: Check lock file consistency
run: uv sync --locked --all-extras --all-groups

- name: Run prek on PR changes
run: |
uv run prek run --origin origin/${{ github.base_ref }} --source HEAD || true

- name: Auto Commit Fixes
uses: stefanzweifel/git-auto-commit-action@v7
with:
commit_message: "chore: auto fixes by prek"
98 changes: 21 additions & 77 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -1,78 +1,22 @@
repos:
- hooks:
- additional_dependencies:
- aiohttp>=3.12.15
- apmodel>=0.5.1
- apsig>=0.6.0
- charset-normalizer>=3.4.3
- coverage>=7.10.7
- fastapi>=0.116.1
- httpcore[http2,socks]>=1.0.9
- httpx>=0.28.1
- pytest-cov>=7.0.0
- pytest>=8.4.1
- redis>=5.0.4
- requests>=2.32.5
- types-requests>=2.32.4.20250913
- uvicorn>=0.35.0
args:
- --fix
description: Run 'ruff' for extremely fast Python linting
entry: ruff check --force-exclude
id: ruff
language: python
minimum_pre_commit_version: 2.9.2
name: ruff
require_serial: true
types_or:
- python
- pyi
- additional_dependencies:
- aiohttp>=3.12.15
- apmodel>=0.5.1
- apsig>=0.6.0
- charset-normalizer>=3.4.3
- coverage>=7.10.7
- fastapi>=0.116.1
- httpcore[http2,socks]>=1.0.9
- httpx>=0.28.1
- pytest-cov>=7.0.0
- pytest>=8.4.1
- redis>=5.0.4
- requests>=2.32.5
- types-requests>=2.32.4.20250913
- uvicorn>=0.35.0
args: []
description: Run 'ruff format' for extremely fast Python formatting
entry: ruff format --force-exclude
id: ruff-format
language: python
minimum_pre_commit_version: 2.9.2
name: ruff-format
require_serial: true
types_or:
- python
- pyi
repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.15.1
- hooks:
- additional_dependencies:
- aiohttp>=3.12.15
- apmodel>=0.5.1
- apsig>=0.6.0
- charset-normalizer>=3.4.3
- coverage>=7.10.7
- fastapi>=0.116.1
- httpcore[http2,socks]>=1.0.9
- httpx>=0.28.1
- pytest-cov>=7.0.0
- pytest>=8.4.1
- redis>=5.0.4
- requests>=2.32.5
- types-requests>=2.32.4.20250913
- uvicorn>=0.35.0
id: pyrefly-check
name: Pyrefly (type checking)
pass_filenames: false
repo: https://github.com/facebook/pyrefly-pre-commit
rev: 0.52.0
- repo: local
hooks:
- id: ruff
name: ruff
entry: ruff check --force-exclude --fix
language: system
types_or: [python, pyi]
require_serial: true

- id: ruff-format
name: ruff-format
entry: ruff format --force-exclude
language: system
types_or: [python, pyi]
require_serial: true

- id: pyrefly-check
name: Pyrefly (type checking)
entry: pyrefly check
language: system
pass_filenames: false
57 changes: 40 additions & 17 deletions Taskfile.yaml
Original file line number Diff line number Diff line change
@@ -1,51 +1,74 @@
version: '3'

vars:
UV_SYNC: uv sync --all-extras --all-groups

tasks:
default:
desc: Install dependencies using lockfile
cmds:
- "{{.UV_SYNC}} --locked"
silent: true

prepare:
desc: Setup development environment (uv, Python, and dependencies)
cmds:
- uv sync --locked --all-extras --all-groups
- task: default
- |
if [ -f .git/hooks/pre-commit ]; then
echo "WARNING: .git/hooks/pre-commit already exists."
echo "Please remove or back it up before installing prek."
else
uv run prek install
fi
silent: true

sync:
desc: Sync dependencies
cmds:
- uv sync --all-extras --all-groups
- "{{.UV_SYNC}}"
silent: true

upgrade:
desc: Upgrade dependencies
cmds:
- uv lock --upgrade
- uv sync --locked --all-extras --all-groups
- task: default
silent: true

test:
deps:
- default
desc: Run tests
deps: [default]
cmds:
- uv run pytest
silent: true
test-coverage:
deps:
- default

test:cov:
desc: Run tests with coverage
deps: [default]
cmds:
- uv run coverage run -m pytest
- uv run coverage html
silent: true

docs:
desc: Build documentation
cmds:
- uv run mkdocs build
silent: true

docs:serve:
desc: Serve documentation
cmds:
- uv run mkdocs serve
silent: true

build:
desc: Build package
cmds:
- cmd: rm --rf dist
- cmd: rm -rf dist
platforms: [linux, darwin]
- cmd: rmdir /s /q dist
- cmd: powershell -Command "if (Test-Path dist) { Remove-Item -Recurse -Force dist }"
platforms: [windows]
- uv build
silent: true
changelog:
cmds:
- uv run git cliff -o CHANGELOG.md
- git add CHANGELOG.md
- 'git commit -m "chore: update changelog [skip ci]"'
silent: true
silent: true
7 changes: 3 additions & 4 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -55,15 +55,14 @@ dev = [
"pytest>=8.4.1",
"pytest-asyncio>=1.3.0",
"pytest-cov>=7.0.0",
"pyrefly>=0.46.0",
"ruff>=0.14.10",
"prek>=0.3.3"
]
docs = [
"mkdocs>=1.6.1",
"mkdocs-material>=9.6.19",
]
lint = [
"pyrefly>=0.46.0",
"ruff>=0.14.10",
]

[tool.ruff]
exclude = [
Expand Down
4 changes: 2 additions & 2 deletions src/apkit/_version.py
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@
commit_id: COMMIT_ID
__commit_id__: COMMIT_ID

__version__ = version = '0.3.3.post1.dev58+ge5df88041.d20260127'
__version_tuple__ = version_tuple = (0, 3, 3, 'post1', 'dev58', 'ge5df88041.d20260127')
__version__ = version = '0.3.8.post1.dev10+g892881c3c'
__version_tuple__ = version_tuple = (0, 3, 8, 'post1', 'dev10', 'g892881c3c')

__commit_id__ = commit_id = None
38 changes: 30 additions & 8 deletions uv.lock

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