Move brailleInput into the braille.input package and deprecate the old module #99
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # A part of NonVisual Desktop Access (NVDA) | |
| # Copyright (C) 2026 NV Access Limited, Leonard de Ruijter | |
| # This file may be used under the terms of the GNU General Public License, version 2 or later, as modified by the NVDA license. | |
| # For full terms and any additional permissions, see the NVDA license file: https://github.com/nvaccess/nvda/blob/master/copying.txt | |
| name: Autofix or fail | |
| on: | |
| push: | |
| # Never auto-fix the protected branches; PRs to them use pull_request below. | |
| branches-ignore: | |
| - master | |
| - beta | |
| - rc | |
| pull_request: | |
| branches: | |
| - master | |
| - beta | |
| - rc | |
| - 'try-**' | |
| workflow_dispatch: | |
| permissions: | |
| contents: write | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| autofix: | |
| name: Auto-fix and lint gate | |
| # On the base repo the pull_request run is the gate; skip its push run on non-Fork pushes to | |
| # avoid a duplicate. Fork pushes still run for autofix. | |
| if: github.event_name != 'push' || github.repository != 'nvaccess/nvda' | |
| runs-on: windows-2025-vs2026 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v7 | |
| with: | |
| submodules: true | |
| - name: Set up python | |
| uses: actions/setup-python@v6 | |
| with: | |
| # Keep in sync with defaultPythonVersion in testAndPublish.yml. | |
| python-version: '3.13.13' | |
| - name: Install the latest version of uv | |
| uses: astral-sh/setup-uv@v7 | |
| with: | |
| activate-environment: "false" | |
| # Autofix role: run the fixer hooks (the "autofix" group) and push the fixes. | |
| - name: Apply prek auto-fixes | |
| if: github.event_name == 'push' | |
| shell: bash | |
| env: | |
| REF_NAME: ${{ github.ref_name }} | |
| run: | | |
| # Fixers exit non-zero when they change files. Some fixers' output feeds | |
| # another fixer, so a single pass may not reach a stable tree. | |
| # Re-run on the fixed tree until prek exits clean or we hit the cap. | |
| for attempt in 1 2 3; do | |
| if uvx prek run --group autofix --all-files; then | |
| break | |
| fi | |
| done | |
| if ! git diff --quiet; then | |
| git config user.name "github-actions" | |
| git config user.email "github-actions@github.com" | |
| git add -A | |
| git commit -m "Auto-fix: apply prek fixes" | |
| # Push via an explicit refspec so this works even if checkout left us | |
| # in a detached HEAD state. | |
| git push origin HEAD:"$REF_NAME" | |
| fi | |
| # Gate role: the merge-required blocking check (non-zero exit fails the job). | |
| # The 6 skipped hooks are the heavy/env-bound ones with dedicated jobs in | |
| # testAndPublish.yml. | |
| - name: Lint gate | |
| uses: j178/prek-action@v2 | |
| with: | |
| extra-args: >- | |
| --all-files | |
| --skip checkPo | |
| --skip scons-source | |
| --skip checkPot | |
| --skip unitTest | |
| --skip licenseCheck | |
| --skip pyright |