Skip to content

Add requirements files for testing, linting, and documentation #16139

Add requirements files for testing, linting, and documentation

Add requirements files for testing, linting, and documentation #16139

Workflow file for this run

name: Lint
on:
push:
branches:
- master
- develop
pull_request:
merge_group:
concurrency:
# Cancel previous runs of this workflow for the same branch
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
lint:
name: Lint
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Merge CI fixes from sagemath/sage
run: |
.ci/merge-fixes.sh
env:
GH_TOKEN: ${{ github.token }}
SAGE_CI_FIXES_FROM_REPOSITORIES: ${{ vars.SAGE_CI_FIXES_FROM_REPOSITORIES }}
- name: Install test prerequisites
id: deps
# From docker.yml
run: |
sudo DEBIAN_FRONTEND=noninteractive apt-get update
sudo DEBIAN_FRONTEND=noninteractive apt-get install tox
- name: Code style check with ruff-minimal
if: (success() || failure()) && steps.deps.outcome == 'success'
run: tox -e ruff-minimal
env:
# https://github.com/ChartBoost/ruff-action/issues/7#issuecomment-1887780308
RUFF_OUTPUT_FORMAT: github
- name: Code style check with pycodestyle-minimal
if: (success() || failure()) && steps.deps.outcome == 'success'
run: tox -e pycodestyle-minimal
- name: Code style check with relint
if: (success() || failure()) && steps.deps.outcome == 'success'
run: tox -e relint -- src/sage/
- name: Validate docstring markup as RST
if: (success() || failure()) && steps.deps.outcome == 'success'
run: tox -e rst