diff --git a/.github/workflows/1.bump-version.yml b/.github/workflows/1.bump-version.yml index fc16d78..f7de4c7 100644 --- a/.github/workflows/1.bump-version.yml +++ b/.github/workflows/1.bump-version.yml @@ -17,7 +17,7 @@ jobs: contents: write steps: - name: Checkout - uses: actions/checkout@v6 + uses: actions/checkout@v7 - name: Bump version env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/2.build-publish.yml b/.github/workflows/2.build-publish.yml index b182792..55f95a2 100644 --- a/.github/workflows/2.build-publish.yml +++ b/.github/workflows/2.build-publish.yml @@ -17,9 +17,9 @@ jobs: contents: read steps: - name: Checkout - uses: actions/checkout@v6 + uses: actions/checkout@v7 - name: Set up Python - uses: actions/setup-python@v6 + uses: actions/setup-python@v7 with: python-version: "3.10" - name: Install dependencies @@ -37,13 +37,13 @@ jobs: contents: write steps: - name: Checkout - uses: actions/checkout@v6 + uses: actions/checkout@v7 - name: Get latest version run: | git pull origin main echo "Current version: v$(./scripts/get-version.sh)" - name: Set up Python - uses: actions/setup-python@v6 + uses: actions/setup-python@v7 with: python-version: "3.10" - name: Install dependencies diff --git a/.github/workflows/3.update-changelog.yml b/.github/workflows/3.update-changelog.yml index 29d9902..c04eefa 100644 --- a/.github/workflows/3.update-changelog.yml +++ b/.github/workflows/3.update-changelog.yml @@ -14,7 +14,7 @@ jobs: contents: write steps: - name: Checkout - uses: actions/checkout@v6 + uses: actions/checkout@v7 - name: Update changelog env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/pre-commit.yml b/.github/workflows/pre-commit.yml new file mode 100644 index 0000000..10fd5b9 --- /dev/null +++ b/.github/workflows/pre-commit.yml @@ -0,0 +1,44 @@ +name: Pre-Commit + +on: + pull_request: + branches: + - main + - dev + types: + - opened + - synchronize + - reopened + +jobs: + pre-commit: + name: Run pre-commit checks + runs-on: ubuntu-24.04 + steps: + - name: Checkout repository + uses: actions/checkout@v7 + with: + ref: ${{ github.event.pull_request.head.sha }} + fetch-depth: 0 + - name: Set up Python + uses: actions/setup-python@v7 + with: + python-version: "3.10" + - name: Cache pip + uses: actions/cache@v6 + with: + path: ~/.cache/pip + key: pip-${{ runner.os }}-${{ hashFiles('requirements.txt') }} + - name: Install pre-commit and dependencies + run: | + python -m pip install -U pip + python -m pip install -r ./requirements.txt + python -m pip install -U pre-commit pyright pytest + - name: Cache pre-commit + uses: actions/cache@v6 + with: + path: ~/.cache/pre-commit + key: pre-commit-${{ runner.os }}-${{ hashFiles('.pre-commit-config.yaml') }} + - name: Run pre-commit on all files + run: | + pre-commit run --all-files --show-diff-on-failure --color=always diff --git a/.github/workflows/publish-docs.yml b/.github/workflows/publish-docs.yml index aee75cf..d11be07 100644 --- a/.github/workflows/publish-docs.yml +++ b/.github/workflows/publish-docs.yml @@ -17,11 +17,11 @@ jobs: contents: write steps: - name: Checkout - uses: actions/checkout@v6 + uses: actions/checkout@v7 with: fetch-depth: 0 - name: Set up Python - uses: actions/setup-python@v6 + uses: actions/setup-python@v7 with: python-version: "3.10" - name: Install dependencies diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index d7fab9a..fe38c9b 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -99,7 +99,7 @@ repos: # --- Security checks --- - repo: https://github.com/gitleaks/gitleaks - rev: v8.30.0 + rev: v8.30.1 hooks: - id: gitleaks name: "๐Ÿ” gitleaks - Detect secrets in git history" @@ -120,7 +120,7 @@ repos: # --- Markdown --- - repo: https://github.com/igorshubovych/markdownlint-cli - rev: v0.48.0 + rev: v0.49.1 hooks: - id: markdownlint name: "๐Ÿ“ markdownlint - Lint markdown files" @@ -146,7 +146,7 @@ repos: # --- Python --- - repo: https://github.com/psf/black - rev: 26.1.0 + rev: 26.5.1 hooks: - id: black name: "๐Ÿ black - Format python code" @@ -191,23 +191,6 @@ repos: entry: pyright files: \.pyi?$ - # --- Tests --- - # - repo: local - # hooks: - # - id: pytest-collect - # name: "๐Ÿงช pytest-collect (local) - Validate test formatting" - # language: system - # entry: "python -m pytest --collect-only" - # pass_filenames: false - # always_run: true - - # - id: pytest - # name: "๐Ÿงช pytest (local) - Run tests" - # language: system - # entry: "./scripts/test.sh -l -v -c" - # pass_filenames: false - # always_run: true - # --- Cleanup --- # - repo: local # hooks: diff --git a/.vscode/extensions.json b/.vscode/extensions.json index 8303941..d3aa935 100644 --- a/.vscode/extensions.json +++ b/.vscode/extensions.json @@ -13,7 +13,6 @@ "alefragnani.project-manager", "pkief.material-icon-theme", "aaron-bond.better-comments", - "gruntfuggly.todo-tree", "piotrpalarz.vscode-gitignore-generator", "timonwong.shellcheck", "davidanson.vscode-markdownlint", diff --git a/.vscode/settings.json b/.vscode/settings.json index c0ad193..fce1112 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -162,7 +162,6 @@ "**/Thumbs.db": true, "**/docs/assets/js/*.js": true }, - "python.languageServer": "Pylance", "python.analysis.extraPaths": [ "${workspaceFolder}/src" ], diff --git a/pyproject.toml b/pyproject.toml index e653fb9..5d6fcf0 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,5 +1,5 @@ [build-system] -requires = ["setuptools>=82.0.1,<83.0.0", "setuptools-scm>=10.0.5,<11.0.0"] +requires = ["setuptools>=82.0.1,<84.0.0", "setuptools-scm>=10.0.5,<11.0.0"] build-backend = "setuptools.build_meta" [project] diff --git a/requirements/requirements.build.txt b/requirements/requirements.build.txt index d3bf1b2..8f9112f 100644 --- a/requirements/requirements.build.txt +++ b/requirements/requirements.build.txt @@ -1,4 +1,4 @@ -setuptools>=70.3.0,<83.0.0 +setuptools>=70.3.0,<84.0.0 wheel>=0.43.0,<1.0.0 build>=1.1.1,<2.0.0 twine>=6.0.1,<7.0.0