Skip to content

Commit 07e4f62

Browse files
committed
convert to GitHub Actions and add newer Pythons
1 parent 1e7ddf0 commit 07e4f62

File tree

4 files changed

+83
-30
lines changed

4 files changed

+83
-30
lines changed

.github/workflows/ci.yml

Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
name: Test
2+
3+
on: [push, pull_request]
4+
5+
jobs:
6+
build:
7+
name: Python ${{ matrix.python-version }}
8+
runs-on: ${{ matrix.os }}
9+
continue-on-error: ${{ matrix.experimental }}
10+
strategy:
11+
fail-fast: false
12+
matrix:
13+
python-version:
14+
- '2.7'
15+
- '3.5'
16+
- '3.6'
17+
- '3.7'
18+
- '3.8'
19+
- '3.9'
20+
experimental:
21+
- false
22+
os: [ubuntu-latest]
23+
include:
24+
# Python 3.4 is not on ubuntu-latest
25+
- python-version: '3.4'
26+
os: ubuntu-18.04
27+
experimental: false
28+
29+
# Python 3.10 is currently failing, but this may be OK
30+
- python-version: '3.10.0-alpha - 3.10'
31+
os: ubuntu-latest
32+
experimental: true
33+
34+
steps:
35+
- uses: actions/checkout@v2
36+
37+
- name: Set up Python ${{ matrix.python-version }}
38+
uses: actions/setup-python@v2
39+
with:
40+
python-version: ${{ matrix.python-version }}
41+
42+
- uses: actions/cache@v2
43+
with:
44+
path: ~/.cache/pip
45+
key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }}
46+
restore-keys: |
47+
${{ runner.os }}-pip-
48+
49+
- name: Install dependencies
50+
id: install
51+
run: |
52+
set -x
53+
pip install -r requirements.txt
54+
55+
# install mypy on Python 3.6+
56+
if python -c \
57+
'import sys; sys.exit(0 if sys.version_info >= (3, 6) else 1)'; then
58+
pip install -U mypy
59+
echo "::set-output name=mypy::true"
60+
fi
61+
62+
- name: Run pytest
63+
run: |
64+
pytest
65+
66+
- name: Run mypy
67+
if: ${{ steps.install.outputs.mypy }}
68+
run: |
69+
mypy pyannotate_*

.travis.yml

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

pyannotate_tools/fixes/tests/test_annotate_json_py3.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,11 @@
66
import tempfile
77
import unittest
88
import sys
9-
from mock import patch
9+
10+
try:
11+
from unittest.mock import patch
12+
except ImportError:
13+
from mock import patch # type: ignore
1014

1115
from lib2to3.tests.test_fixers import FixerTestCase
1216

requirements.txt

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,13 @@
1+
mock; python_version < '3.3'
12
mypy_extensions>=0.3.0
2-
pytest>=3.3.0
3+
pytest>=3.3.0; python_version > '3.5'
4+
# pytest >5.3.0 uses typing.Type from Python 3.5.2
5+
pytest>=3.3.0,<=5.3.0; python_version <= '3.5'
6+
# importlib-metadata is needed for Python 3.5+, but pip does not seem to be
7+
# pinning it to a correct version for Python 3.5 (possibly because it's a
8+
# transitive dependency).
9+
# Python 3.5 support was dropped in importlib-metadata 3.0.0
10+
importlib-metadata>=0.12,<3.0.0; python_version == '3.5'
311
setuptools>=28.8.0
412
six>=1.11.0
513
typing>=3.6.2; python_version < '3.5'

0 commit comments

Comments
 (0)