Skip to content

feat: add external-editor-command #2534

feat: add external-editor-command

feat: add external-editor-command #2534

Workflow file for this run

name: Test
on:
workflow_dispatch:
push:
branches:
- main
pull_request:
branches:
- main
permissions:
contents: read
jobs:
test-py:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: ["ubuntu-latest"]
py: ["3.13", "3.10"]
make_target: ["test-py", "test-py-old-deps"]
include:
- os: "macos-latest"
make_target: "test-py"
py: "3.13"
- os: "windows-latest"
make_target: "test-py"
py: "3.13"
- os: "ubuntu-latest"
make_target: "test-py"
py: "3.14"
- os: "ubuntu-latest"
make_target: "test-py-typeguard"
py: "3.14"
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
with:
python-version: ${{ matrix.py }}
- uses: astral-sh/setup-uv@6ee6290f1cbc4156c0bdd66691b2c144ef8df19a # v7.4.0
with:
enable-cache: false
- run: touch src/fava/static/app.js
- run: make ${{ matrix.make_target }}
test-js:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: ["ubuntu-latest", "macos-latest", "windows-latest"]
node: ["lts/*"]
include:
- os: "ubuntu-latest"
node: "current"
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
with:
node-version: ${{ matrix.node }}
package-manager-cache: false
- run: make frontend/node_modules
- run: cd frontend && npm run build
- run: cd frontend && npm test
deno-js:
runs-on: "ubuntu-latest"
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- uses: denoland/setup-deno@e95548e56dfa95d4e1a28d6f422fafe75c4c26fb # v2.0.3
with:
deno-version: "v2.6.x"
- run: cd frontend && deno install
- run: cd frontend && deno lint
- run: cd frontend && deno run build
lint-js:
runs-on: "ubuntu-latest"
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
with:
python-version: "3.13"
- uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
with:
node-version: "lts/*"
package-manager-cache: false
- uses: astral-sh/setup-uv@6ee6290f1cbc4156c0bdd66691b2c144ef8df19a # v7.4.0
with:
enable-cache: false
- run: make frontend/node_modules
- run: uv run --no-dev --group pre-commit pre-commit run -a eslint
- run: uv run --no-dev --group pre-commit pre-commit run -a stylelint
- run: cd frontend; npx tsc
- run: cd frontend; npx svelte-check
lint-python-mypy:
runs-on: "ubuntu-latest"
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
with:
python-version: "3.13"
- uses: astral-sh/setup-uv@6ee6290f1cbc4156c0bdd66691b2c144ef8df19a # v7.4.0
with:
enable-cache: false
- run: touch src/fava/static/app.js
- run: make mypy
lint-python-ty:
runs-on: "ubuntu-latest"
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
with:
python-version: "3.13"
- uses: astral-sh/setup-uv@6ee6290f1cbc4156c0bdd66691b2c144ef8df19a # v7.4.0
with:
enable-cache: false
- run: touch src/fava/static/app.js
- run: make ty