Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 1 addition & 6 deletions .github/dependabot.yaml
Original file line number Diff line number Diff line change
@@ -1,10 +1,5 @@
version: 2
updates:
- package-ecosystem: "devcontainers"
directory: "/"
schedule:
interval: "monthly"

- package-ecosystem: "github-actions"
directory: "/"
schedule:
Expand All @@ -14,7 +9,7 @@ updates:
patterns:
- "*"

- package-ecosystem: "pip"
- package-ecosystem: "uv"
directory: "/"
schedule:
interval: "monthly"
Expand Down
20 changes: 11 additions & 9 deletions .github/workflows/codspeed.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -17,21 +17,23 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
with:
persist-credentials: false

- name: Install uv
uses: astral-sh/setup-uv@681c641aba71e4a1c380be3ab5e12ad51f415867 # v7.1.6
with:
enable-cache: true

- name: Setup Python
uses: actions/setup-python@83679a892e2d95755f2dac6acb0bfd1e9ac5d548 # v6.1.0
with:
python-version: 3.13
cache: pip
cache-dependency-path: uv.lock

- name: Update packaging tools
run: python -m pip install --upgrade pip wheel setuptools build
python-version-file: "pyproject.toml"

- name: Install dependencies
run: python -m pip install .[tests]
- name: Sync dependencies
run: uv sync --group tests

- uses: CodSpeedHQ/action@0700edb451d0e9f2426f99bd6977027e550fb2a6 # v4.7.0
with:
run: pytest tests/ --codspeed
run: uv run pytest tests/ --codspeed
mode: "simulation"
6 changes: 3 additions & 3 deletions .github/workflows/dependency-review.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: 'Dependency Review'
name: Dependency Review

on: [ pull_request ]

Expand All @@ -10,10 +10,10 @@ jobs:
runs-on: ubuntu-latest

steps:
- name: 'Checkout Repository'
- name: Checkout Repository
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1

- name: 'Dependency Review'
- name: Dependency Review
uses: actions/dependency-review-action@3c4e3dcb1aa7874d2c16be7d79418e9b7efd6261 # v4.8.2
with:
config-file: darbiadev/.github/.github/dependency-review-config.yaml@a5bf74504f1a843e026621c41517952fa3a09f81
61 changes: 61 additions & 0 deletions .github/workflows/docs.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
name: Docs

on:
push:
branches:
- main
pull_request:

permissions:
contents: read

jobs:
build:
runs-on: ubuntu-latest

steps:
- name: Checkout repository
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
with:
persist-credentials: false

- name: Install uv
uses: astral-sh/setup-uv@681c641aba71e4a1c380be3ab5e12ad51f415867 # v7.1.6
with:
enable-cache: true

- name: Setup Python
uses: actions/setup-python@83679a892e2d95755f2dac6acb0bfd1e9ac5d548 # v6.1.0
with:
python-version-file: "pyproject.toml"

- name: Sync dependencies
run: uv sync --group docs

- name: Build docs
run: uv run sphinx-build --builder dirhtml --nitpicky docs site

- name: Upload artifact
uses: actions/upload-pages-artifact@7b1f4a764d45c48632c6b24a0339c27f5614fb0b # v4.0.0
with:
path: ./site

deploy:
if: ${{ github.ref == 'refs/heads/main' }}

permissions:
contents: read
pages: write
id-token: write

environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}

runs-on: ubuntu-latest

needs: build
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@d6db90164ac5ed86f2b6aed7e0febac5b3c0c03e # v4.0.5
83 changes: 55 additions & 28 deletions .github/workflows/python-ci.yaml
Original file line number Diff line number Diff line change
@@ -1,36 +1,63 @@
name: "Python CI"
name: Python CI

on:
push:
branches:
- main
pull_request:

permissions:
contents: read
id-token: write

jobs:
pre-commit:
uses: darbiadev/.github/.github/workflows/generic-precommit.yaml@440166417b42442c6114aaa895094f0db7de9b78 # v15.2.0

lint:
needs: pre-commit
uses: darbiadev/.github/.github/workflows/python-lint.yaml@440166417b42442c6114aaa895094f0db7de9b78 # v15.2.0

test:
needs: lint
strategy:
matrix:
os: [ ubuntu-latest ]
python-version: [ "3.9", "3.10", "3.11", "3.12", "3.13" ]

uses: darbiadev/.github/.github/workflows/python-test.yaml@440166417b42442c6114aaa895094f0db7de9b78 # v15.2.0
with:
os: ${{ matrix.os }}
python-version: ${{ matrix.python-version }}

docs:
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
permissions:
contents: read
pages: write
id-token: write

uses: darbiadev/.github/.github/workflows/github-pages-python-sphinx.yaml@440166417b42442c6114aaa895094f0db7de9b78 # v15.2.0
lint-test:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
with:
persist-credentials: false

- name: Install uv
uses: astral-sh/setup-uv@681c641aba71e4a1c380be3ab5e12ad51f415867 # v7.1.6
with:
enable-cache: true
resolution-strategy: "lowest"

- name: Setup Python
uses: actions/setup-python@83679a892e2d95755f2dac6acb0bfd1e9ac5d548 # v6.1.0
with:
python-version-file: "pyproject.toml"

- name: Sync dependencies
run: uv sync --group dev --group tests

- name: Run prek
run: uv run prek run --all-files

- name: Check formatting
run: uv run ruff format --check .

- name: Run Ruff checks
run: uv run ruff check --output-format=github .

- name: Run mypy
run: uv run mypy --strict src/ tests/

- name: Run tests
run: uv run python -m coverage run -m pytest -v --junitxml=junit.xml

- name: Create coverage report
run: uv run coverage xml

- name: Upload coverage reports to Codecov
uses: codecov/codecov-action@671740ac38dd9b0130fbe1cec585b89eea48d3de # v5.5.2
with:
use_oidc: true

- name: Upload test results to Codecov
if: ${{ !cancelled() }}
uses: codecov/test-results-action@0fa95f0e1eeaafde2c782583b36b28ad0d8c77d3 # v1.2.1
with:
use_oidc: true
3 changes: 1 addition & 2 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v5.0.0
rev: 3e8a8703264a2f4a69428a0aa4dcb512790b2c8c # frozen: v6.0.0
hooks:
- id: check-case-conflict
- id: check-merge-conflict
Expand All @@ -12,4 +12,3 @@ repos:
- id: mixed-line-ending
args: [ --fix=lf ]
- id: end-of-file-fixer
exclude: .devcontainer/devcontainer-lock.json
14 changes: 14 additions & 0 deletions docs/.readthedocs.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
version: 2

build:
os: ubuntu-lts-latest
tools:
python: "3"
jobs:
install:
- pip install --upgrade pip
- pip install --upgrade .
- pip install --group 'docs'

sphinx:
configuration: docs/conf.py
20 changes: 0 additions & 20 deletions docs/Makefile

This file was deleted.

File renamed without changes.
2 changes: 1 addition & 1 deletion docs/source/conf.py → docs/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@
]

autoapi_type: str = "python"
autoapi_dirs: list[str] = ["../../src"]
autoapi_dirs: list[str] = ["../src"]

intersphinx_mapping = {"python": ("https://docs.python.org/3", None)}

Expand Down
File renamed without changes.
File renamed without changes.
35 changes: 0 additions & 35 deletions docs/make.bat

This file was deleted.

16 changes: 0 additions & 16 deletions docs/source/.readthedocs.yaml

This file was deleted.

7 changes: 4 additions & 3 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -8,22 +8,23 @@ authors = [
license = "MIT"
license-files = ["LICEN[CS]E*"]
readme = "README.md"
requires-python = ">=3.9"
requires-python = ">=3.10"
dependencies = []

[project.urls]
repository = "https://github.com/letsbuilda/imsosorry/"
documentation = "https://docs.letsbuilda.dev/imsosorry/"

[project.optional-dependencies]
[dependency-groups]
dev = [
"nox>=2025.5.1",
"pre-commit>=4.2.0",
"prek>=0.2.28",
"ruff>=0.12.1",
"mypy>=1.16.1",
]
tests = [
"pytest>=8.4.1",
"coverage>=7.13.1",
"pytest-randomly>=3.16.0",
"pytest-codspeed>=4.0.0",
]
Expand Down
Loading
Loading