Skip to content

Commit 3589215

Browse files
authored
Merge pull request #71 from typemytype/add-github-actions-ci
Add GitHub Actions CI workflow
2 parents 6bc5c9b + 5918ffc commit 3589215

File tree

6 files changed

+67
-93
lines changed

6 files changed

+67
-93
lines changed

.github/workflows/ci.yml

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
name: CI
2+
3+
on:
4+
push:
5+
branches: [master]
6+
tags: ["*.*.*"]
7+
pull_request:
8+
branches: [master]
9+
10+
jobs:
11+
test:
12+
runs-on: ${{ matrix.os }}
13+
strategy:
14+
fail-fast: false
15+
matrix:
16+
os: [ubuntu-latest, macos-latest, windows-latest]
17+
python-version: ["3.10", "3.14"]
18+
steps:
19+
- uses: actions/checkout@v6
20+
- name: Set up Python ${{ matrix.python-version }}
21+
uses: actions/setup-python@v6
22+
with:
23+
python-version: ${{ matrix.python-version }}
24+
- name: Install tox
25+
run: pip install tox
26+
- name: Run tests
27+
run: tox -e py
28+
29+
deploy:
30+
if: startsWith(github.ref, 'refs/tags/')
31+
needs: test
32+
runs-on: ubuntu-latest
33+
permissions:
34+
contents: write
35+
id-token: write
36+
steps:
37+
- uses: actions/checkout@v6
38+
- name: Set up Python
39+
uses: actions/setup-python@v6
40+
with:
41+
python-version: "3.12"
42+
- name: Build package
43+
run: pipx run build
44+
- name: Create GitHub Release
45+
uses: softprops/action-gh-release@v2
46+
with:
47+
files: dist/*
48+
generate_release_notes: true
49+
- name: Publish to PyPI
50+
uses: pypa/gh-action-pypi-publish@release/v1

.travis.yml

Lines changed: 0 additions & 49 deletions
This file was deleted.

appveyor.yml

Lines changed: 0 additions & 34 deletions
This file was deleted.

requirements.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# fontTools.ufoLib is not imported directly by booleanOperations, but
22
# the test suite needs defcon, which in turns requires fonttools installed
33
# with [ufo] support
4-
fonttools[ufo]==4.0.2
5-
pyclipper==1.1.0.post1
4+
fonttools[ufo]==4.61.1
5+
pyclipper==1.4.0

setup.cfg

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,21 +14,31 @@ classifiers =
1414
Operating System :: OS Independent
1515
Programming Language :: Python
1616
Programming Language :: Python :: 3
17-
Programming Language :: Python :: 3.6
18-
Programming Language :: Python :: 3.7
17+
Programming Language :: Python :: 3.9
18+
Programming Language :: Python :: 3.10
19+
Programming Language :: Python :: 3.11
20+
Programming Language :: Python :: 3.12
21+
Programming Language :: Python :: 3.13
22+
Programming Language :: Python :: 3.14
1923
Topic :: Multimedia :: Graphics :: Editors :: Vector-Based
2024
Topic :: Software Development :: Libraries :: Python Modules
2125

2226
[options]
2327
package_dir = =Lib
2428
packages = find:
25-
python_requires = >=3.6
29+
python_requires = >=3.9
2630
setup_requires =
2731
setuptools_scm
2832
install_requires =
2933
pyclipper >= 1.1.0.post1
3034
fonttools >= 4.0.2
3135

36+
[options.extras_require]
37+
test =
38+
pytest
39+
defcon
40+
fontPens
41+
3242
[options.packages.find]
3343
where = Lib
3444

tox.ini

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,10 @@
11
[tox]
2-
envlist = py{36,37}
2+
envlist = py{310,311,312,313,314}
33

44
[testenv]
5+
extras = test
56
deps =
6-
defcon
7-
fontPens
8-
pytest
97
-rrequirements.txt
10-
download = True
118
commands =
129
# pass to pytest any extra positional arguments after `tox -- ...`
1310
pytest {posargs}

0 commit comments

Comments
 (0)