Skip to content
This repository was archived by the owner on Apr 7, 2026. It is now read-only.

Commit 397ad65

Browse files
committed
initial commit
1 parent 7773eb2 commit 397ad65

4 files changed

Lines changed: 43 additions & 7 deletions

File tree

.github/workflows/ci.yml

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
name: CI
2+
on:
3+
pull_request:
4+
types: [opened, edited, synchronize, labeled, unlabeled, ready_for_review, reopened]
5+
jobs:
6+
ci:
7+
name: CI
8+
runs-on: ubuntu-latest
9+
steps:
10+
- name: Checkout repository
11+
uses: actions/checkout@v4
12+
- name: Install uv
13+
uses: astral-sh/setup-uv@v6
14+
with:
15+
version: "0.8.2"
16+
- name: Static code check
17+
run: uv run poe checker
18+
- name: Check docs build
19+
working-directory: ./docs
20+
run: |
21+
uv sync --group docs
22+
make html
23+
- name: Check PR title style
24+
uses: actions/github-script@v7
25+
with:
26+
script: |
27+
const title = context.payload.pull_request.title;
28+
const labels = context.payload.pull_request.labels.map(l => l.name);
29+
if (labels.includes('dev')) {
30+
console.log('Skipping PR title check due to dev label.');
31+
return;
32+
}
33+
const regex = /^(feat|fix|refactor|doc|perf|style|test|chore|revert)!?:[ ][a-z].*$/;
34+
if (!regex.test(title)) {
35+
core.setFailed(
36+
`PR title "${title}" does not match the expected conventional commit format`
37+
);
38+
}

.github/workflows/release.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,9 +27,9 @@ jobs:
2727
echo "::error ::Tag doesn't match project version"
2828
exit 1
2929
- name: Install uv
30-
uses: astral-sh/setup-uv@v5
30+
uses: astral-sh/setup-uv@v6
3131
with:
32-
version: "0.5.20"
32+
version: "0.8.2"
3333
- name: Build package
3434
run: uv build
3535
- name: Publish package to PyPI

docs/Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
# You can set these variables from the command line, and also
55
# from the environment for the first two.
66
SPHINXOPTS ?=
7-
SPHINXBUILD ?= sphinx-build
7+
SPHINXBUILD ?= uv run sphinx-build
88
SOURCEDIR = source
99
BUILDDIR = build
1010

pyproject.toml

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,8 @@ dependencies = [
1212
"anyio>=4.8.0",
1313
]
1414

15-
[project.optional-dependencies]
15+
[dependency-groups]
16+
dev = ["mypy>=1.14.1", "poethepoet>=0.36.0", "ruff>=0.9.1"]
1617
docs = [
1718
"enum-tools[sphinx]>=0.12.0",
1819
"furo>=2024.8.6",
@@ -21,9 +22,6 @@ docs = [
2122
"sphinx-autodoc-typehints>=3.0.0",
2223
]
2324

24-
[dependency-groups]
25-
dev = ["mypy>=1.14.1", "poethepoet>=0.36.0", "ruff>=0.9.1"]
26-
2725
[build-system]
2826
requires = ["hatchling"]
2927
build-backend = "hatchling.build"

0 commit comments

Comments
 (0)