Skip to content

[pre-commit.ci] pre-commit autoupdate #780

[pre-commit.ci] pre-commit autoupdate

[pre-commit.ci] pre-commit autoupdate #780

Workflow file for this run

name: Code analysis
on:
push:
branches:
- develop
pull_request:
branches-ignore:
- master
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.ref }}
cancel-in-progress: true
env:
DEFAULT_PYTHON: '3.14'
jobs:
linters:
name: Linters
runs-on: ubuntu-latest
permissions:
actions: read
contents: read
security-events: write
steps:
- name: Checkout repository
uses: actions/checkout@v6
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v6
with:
python-version: ${{ env.DEFAULT_PYTHON }}
- name: Install system dependencies
# this step is needed for successful installation of "bonsai" library in python dependencies
run: sudo apt-get update && sudo apt-get install -y libldap2-dev libsasl2-dev
- name: Install uv
uses: astral-sh/setup-uv@v7
with:
enable-cache: 'false'
# astral-sh/setup-uv cannot restore multiple keys
- name: Cache uv
uses: actions/cache@v5
with:
path: ~/.cache/uv
key: ${{ runner.os }}-python${{ env.DEFAULT_PYTHON }}-pydantic2-${{ hashFiles('uv.lock') }}
restore-keys: |
${{ runner.os }}-python${{ env.DEFAULT_PYTHON }}-pydantic2-${{ hashFiles('uv.lock') }}
${{ runner.os }}-python${{ env.DEFAULT_PYTHON }}-pydantic2-
${{ runner.os }}-python${{ env.DEFAULT_PYTHON }}-
- name: Install dependencies
run: |
uv sync --all-extras --group dev
- name: Run mypy
run: uv run mypy horizon
codeql:
name: CodeQL
runs-on: ubuntu-latest
permissions:
actions: read
contents: read
security-events: write
steps:
- name: Checkout repository
uses: actions/checkout@v6
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v6
with:
python-version: ${{ env.DEFAULT_PYTHON }}
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v4
with:
languages: python
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v4
with:
category: /language:python