Skip to content

chore(deps-dev): bump ruff from 0.7.0 to 0.8.3 (#253) #459

chore(deps-dev): bump ruff from 0.7.0 to 0.8.3 (#253)

chore(deps-dev): bump ruff from 0.7.0 to 0.8.3 (#253) #459

Workflow file for this run

name: Linting
on:
push:
branches:
- main
pull_request:
env:
PIP_DISABLE_PIP_VERSION_CHECK: 1
jobs:
changed-files:
name: Changed Files
runs-on: ubuntu-latest
outputs:
docs-change: ${{ steps.changed-files.outputs.docs-change_any_modified == 'true' }}
python-change: ${{ steps.changed-files.outputs.python-change_any_modified == 'true' }}
project-change: ${{ steps.changed-files.outputs.project-change_any_modified == 'true' }}
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 50 # Assume PRs are less than 50 commits
- name: Find changed files
uses: tj-actions/changed-files@v45
id: changed-files
with:
files_yaml: |
common: &common
- .github/workflows/linter.yml
docs-change:
- *common
- docs/**
- package.json
- package-lock.json
python-change:
- *common
- src/**
- tests/**
- ruff.toml
- poetry.lock
- pyproject.toml
project-change:
- *common
- package.json
- .prettierignore
- .github/ISSUE_TEMPLATE/**
- .github/*.md
lint-python:
name: Python
runs-on: ubuntu-latest
needs: [changed-files]
if: ${{ needs.changed-files.outputs.python-change == 'true' }}
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Set up Python 3.x
uses: actions/setup-python@v5
with:
python-version: 3.x
- name: Install requirements
run: |
set -xe
python -m pip install poetry
python -m poetry install
- name: Lint with ruff
run: |
set -xe
python -m poetry run ruff format --check
lint-docs:
name: Docs
runs-on: ubuntu-latest
needs: [changed-files]
if: ${{ needs.changed-files.outputs.docs-change == 'true' }}
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Setup node
uses: actions/[email protected]
with:
cache: npm
- name: Install dependencies
run: |
set -xe
npm i
- name: Lint
run: |
set -xe
npm run lint:docs
lint-project:
name: Project
runs-on: ubuntu-latest
needs: [changed-files]
if: ${{ needs.changed-files.outputs.project-change == 'true' }}
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Setup node
uses: actions/[email protected]
with:
cache: npm
- name: Install dependencies
run: |
set -xe
npm i
- name: Lint
run: |
set -xe
npm run lint:proj
lint-successful:
if: ${{ always() }}
name: Lint successful
runs-on: ubuntu-latest
needs: [lint-python, lint-docs, lint-project]
steps:
- name: Whether the whole linting suite passed
uses: re-actors/[email protected]
with:
allowed-skips: ${{ toJSON(needs) }}
jobs: ${{ toJSON(needs) }}