summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2021-01-25 20:31:22 +0000
committerMichael Williamson <mike@zwobble.org>2021-01-27 14:01:22 +0000
commit615d65fa173824db6654d0c4e078a020924f865a (patch)
tree1508bb50752a3fb7280c8ca8f22d5a020c6adb9e
parentdb51e965e0fdd2250fa46b23800ab35426e09279 (diff)
Replace Travis with GitHub actions
-rw-r--r--.github/workflows/build.yml83
-rw-r--r--.travis.yml52
-rw-r--r--makefile2
-rw-r--r--setup.py3
4 files changed, 85 insertions, 55 deletions
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
new file mode 100644
index 0000000..a422fd5
--- /dev/null
+++ b/.github/workflows/build.yml
@@ -0,0 +1,83 @@
+name: Build
+
+on: [push, pull_request]
+
+jobs:
+ tests:
+ runs-on: ${{ matrix.os }}
+
+ strategy:
+ matrix:
+ os: [ubuntu-20.04, macos-10.15]
+ python-version: [2.7, 3.5, 3.6, 3.7, 3.8, 3.9, pypy2, pypy3]
+
+ steps:
+
+ - uses: actions/checkout@v2
+
+ - name: Use Python ${{ matrix.python-version }}
+ uses: actions/setup-python@v2
+ with:
+ python-version: ${{ matrix.python-version }}
+
+ - run: pip install tox virtualenv
+
+ - run: "make jq.c"
+
+ - run: tox -e py
+
+ build_sdist:
+ name: Build source distribution
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+
+ - uses: actions/setup-python@v2
+ name: Use Python 3.7
+ with:
+ python-version: '3.7'
+
+ - run: make jq.c
+
+ - run: pip install build
+
+ - name: Build sdist
+ run: python -m build --sdist
+
+ - uses: actions/upload-artifact@v2
+ with:
+ path: dist/*.tar.gz
+
+ build_wheels:
+ name: Build wheels on ${{ matrix.os }}
+
+ runs-on: ${{ matrix.os }}
+ if: github.event_name == 'push' && startsWith(github.event.ref, 'refs/tags/')
+
+ strategy:
+ matrix:
+ os: [ubuntu-20.04, macos-10.15]
+ python-version: [3.7]
+
+ steps:
+
+ - uses: actions/checkout@v2
+
+ - name: Use Python ${{ matrix.python-version }}
+ uses: actions/setup-python@v2
+ with:
+ python-version: ${{ matrix.python-version }}
+
+ - run: python -m pip install cibuildwheel==1.8.0 twine virtualenv
+
+ - run: |
+ python3 -m cibuildwheel --output-dir wheelhouse
+ twine check wheelhouse/*.whl
+ env:
+ CIBW_BEFORE_BUILD: "pip install cython==0.29.16 && cython {project}/jq.pyx"
+ CIBW_TEST_REQUIRES: "-r test-requirements.txt"
+ CIBW_TEST_COMMAND: "nosetests {project}/tests"
+
+ - uses: actions/upload-artifact@v2
+ with:
+ path: ./wheelhouse/*.whl
diff --git a/.travis.yml b/.travis.yml
deleted file mode 100644
index 7728d0c..0000000
--- a/.travis.yml
+++ /dev/null
@@ -1,52 +0,0 @@
-language: python
-python:
- - "2.7"
- - "3.4"
- - "3.5"
- - "3.6"
- - "3.7"
- - "3.8"
- - "pypy"
- - "pypy3"
-
-jobs:
- include:
- - if: tag =~ /^([0-9]+\.[0-9]+\.[0-9]+)(\.?(dev|a|b|rc)[0-9]+)?$/
- name: "Linux wheels"
- services:
- - "docker"
- python: "3.8"
- install:
- - python3 -m pip install cibuildwheel==1.6.2 twine virtualenv
- script:
- - export CIBW_BEFORE_BUILD="pip install cython==0.29.16 && cython {project}/jq.pyx"
- - export CIBW_TEST_REQUIRES="-r test-requirements.txt"
- - export CIBW_TEST_COMMAND="nosetests {project}/tests"
- - python3 -m cibuildwheel --output-dir wheelhouse &&
- twine check wheelhouse/*.whl &&
- twine upload wheelhouse/*.whl --skip-existing
-
- - if: tag =~ /^([0-9]+\.[0-9]+\.[0-9]+)(\.?(dev|a|b|rc)[0-9]+)?$/
- name: "OS X wheels"
- os: osx
- osx_image: xcode11.2
- language: "shell"
- install:
- - python3 -m pip install cibuildwheel==1.6.2 twine virtualenv
- script:
- - export CIBW_BEFORE_BUILD="pip install cython==0.29.16 && cython {project}/jq.pyx"
- - export CIBW_TEST_REQUIRES="-r test-requirements.txt"
- - export CIBW_TEST_COMMAND="nosetests {project}/tests"
- - python3 -m cibuildwheel --output-dir wheelhouse &&
- twine check wheelhouse/*.whl &&
- twine upload wheelhouse/*.whl --skip-existing
-
-env:
- global:
- - TWINE_USERNAME=__token__
- # Note: TWINE_PASSWORD is set to a PyPI API token in Travis settings
-
-install:
- - "make jq.c"
- - "pip install tox"
-script: tox -e py
diff --git a/makefile b/makefile
index 01c5db1..fab534d 100644
--- a/makefile
+++ b/makefile
@@ -22,7 +22,7 @@ endif
make clean
_virtualenv:
- virtualenv _virtualenv
+ python3 -m venv _virtualenv
_virtualenv/bin/pip install --upgrade pip
_virtualenv/bin/pip install --upgrade setuptools
_virtualenv/bin/pip install --upgrade wheel
diff --git a/setup.py b/setup.py
index 8494eba..281027e 100644
--- a/setup.py
+++ b/setup.py
@@ -65,8 +65,7 @@ class jq_build_ext(build_ext):
tarball_path=jq_lib_tarball_path,
lib_dir=jq_lib_dir,
commands=[
- ["autoreconf", "-i"],
- ["./configure", "CFLAGS=-fPIC", "--disable-maintainer-mode", "--with-oniguruma=" + oniguruma_lib_install_dir],
+ ["./configure", "CFLAGS=-fPIC -pthread", "--disable-maintainer-mode", "--with-oniguruma=" + oniguruma_lib_install_dir],
["make"],
])