summaryrefslogtreecommitdiff
path: root/.github/workflows/builds.yaml
diff options
context:
space:
mode:
authorjvoisin2025-09-03 16:18:52 +0200
committerjvoisin2025-09-04 14:35:36 +0200
commit102f08cd2807e0e664064f118a66b0c974c43c0e (patch)
tree28ef3e2048af11fd0d43971ba4a1681971dfbf16 /.github/workflows/builds.yaml
parent7a8ea224bc327b8ee929379d577c74968ea1c352 (diff)
Switch the project from 0xacab to github
While the folks running 0xacab are much more lovely than the github ones, this project has outgrown the former: - Github offers beefy continuous integration, make it easier to run the testsuite on every python version, instead of using a weird docker-based contraption. Moreover, I'd rather burn some Microsoft money than 0xacab one. - Opening an account on 0xacab is non-trivial (by design), making it tedious for people to report issues and contribute to mat2. - Gitlab is becoming unbearably slow and convoluted, even compared to Github's awful Copilot/AI push. It's a sad state of affairs, but it's a pragmatic decision. People who don't have a Github account can still report issues and send patches by sending me an email.
Diffstat (limited to '.github/workflows/builds.yaml')
-rw-r--r--.github/workflows/builds.yaml45
1 files changed, 45 insertions, 0 deletions
diff --git a/.github/workflows/builds.yaml b/.github/workflows/builds.yaml
new file mode 100644
index 0000000..f6a62d0
--- /dev/null
+++ b/.github/workflows/builds.yaml
@@ -0,0 +1,45 @@
1name: CI for Python versions
2on:
3 pull_request:
4 push:
5 schedule:
6 - cron: '0 16 * * 5'
7
8jobs:
9 linting:
10 runs-on: ubuntu-latest
11 steps:
12 - uses: actions/checkout@v5
13 - uses: actions/setup-python@v5
14 - run: pip install ruff
15 - run: |
16 ruff check .
17 build:
18 needs: linting
19 runs-on: ubuntu-latest
20 strategy:
21 matrix:
22 python-version: ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13", "3.14.0-rc.2"]
23 steps:
24 - uses: actions/checkout@v5
25 - name: Setup Python
26 uses: actions/setup-python@v5
27 with:
28 python-version: ${{ matrix.python-version }}
29 - name: Install dependencies
30 run: |
31 sudo apt-get install --no-install-recommends --no-install-suggests --yes \
32 ffmpeg \
33 gir1.2-gdkpixbuf-2.0 \
34 gir1.2-poppler-0.18 \
35 gir1.2-rsvg-2.0 \
36 libimage-exiftool-perl \
37 python3-gi-cairo \
38 libcairo2-dev \
39 libgirepository-2.0-dev \
40 libgirepository1.0-dev \
41 gobject-introspection \
42 python3-mutagen
43 pip install .
44 - name: Build and run the testsuite
45 run: python3 -m unittest discover -v