1
0
Fork 0
mirror of https://github.com/ultrajson/ultrajson.git synced 2024-06-10 14:16:04 +02:00

Merge pull request #564 from hugovk/add-3.11

This commit is contained in:
Hugo van Kemenade 2022-09-15 14:22:12 +03:00 committed by GitHub
commit d84c832060
Signed by: GitHub
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 36 additions and 30 deletions

View File

@ -16,13 +16,13 @@ jobs:
fail-fast: false fail-fast: false
matrix: matrix:
python-version: ["3.10"] python-version: ["3.10"]
os: [ubuntu-20.04] os: [ubuntu-22.04]
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }} - name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v3 uses: actions/setup-python@v4
with: with:
python-version: ${{ matrix.python-version }} python-version: ${{ matrix.python-version }}
cache: pip cache: pip

View File

@ -25,18 +25,19 @@ jobs:
os: [windows-latest, macOS-latest, ubuntu-latest] os: [windows-latest, macOS-latest, ubuntu-latest]
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v3
- run: git fetch --prune --unshallow - run: git fetch --prune --unshallow
- name: Set up Python - name: Set up Python
uses: actions/setup-python@v3 uses: actions/setup-python@v4
with: with:
python-version: "3.x"
cache: pip cache: pip
cache-dependency-path: ".github/workflows/deploy.yml" cache-dependency-path: ".github/workflows/deploy.yml"
- name: Install dependencies - name: Install dependencies
run: | run: |
python -m pip install cibuildwheel==2.3.0 python -m pip install cibuildwheel==2.10.0
python -m pip install -U twine python -m pip install -U twine
- name: Build wheels - name: Build wheels
@ -47,14 +48,12 @@ jobs:
CIBW_ARCHS_MACOS: "x86_64 arm64" CIBW_ARCHS_MACOS: "x86_64 arm64"
# Build only on Linux architectures that don't need qemu emulation. # Build only on Linux architectures that don't need qemu emulation.
CIBW_ARCHS_LINUX: "x86_64 i686" CIBW_ARCHS_LINUX: "x86_64 i686"
# Don't build with prerelease Python versions.
CIBW_PROJECT_REQUIRES_PYTHON: ">=3.7,<3.11"
# Run the test suite after each build. # Run the test suite after each build.
CIBW_TEST_REQUIRES: "pytest" CIBW_TEST_REQUIRES: "pytest"
CIBW_TEST_COMMAND: pytest {package}/tests CIBW_TEST_COMMAND: pytest {package}/tests
- name: Upload as build artifacts - name: Upload as build artifacts
uses: actions/upload-artifact@v2 uses: actions/upload-artifact@v3
with: with:
name: wheels name: wheels
path: dist/*.whl path: dist/*.whl
@ -81,37 +80,39 @@ jobs:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
architecture: ["aarch64"]
python-version: python-version:
- pp37 - pp37
- pp38 - pp38
- pp39
- cp37 - cp37
- cp38 - cp38
- cp39 - cp39
- cp310 - cp310
- cp311
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v3
- run: git fetch --prune --unshallow - run: git fetch --prune --unshallow
- name: Set up Python - name: Set up Python
uses: actions/setup-python@v3 uses: actions/setup-python@v4
with: with:
python-version: "3.x"
cache: pip cache: pip
cache-dependency-path: ".github/workflows/deploy.yml" cache-dependency-path: ".github/workflows/deploy.yml"
- name: Install dependencies - name: Install dependencies
run: | run: |
python -m pip install cibuildwheel==2.3.0 python -m pip install cibuildwheel==2.10.0
python -m pip install -U twine python -m pip install -U twine
# https://github.com/docker/setup-qemu-action # https://github.com/docker/setup-qemu-action
- name: Set up QEMU - name: Set up QEMU
uses: docker/setup-qemu-action@v1 uses: docker/setup-qemu-action@v2
# https://github.com/docker/setup-buildx-action # https://github.com/docker/setup-buildx-action
- name: Set up Docker Buildx - name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1 uses: docker/setup-buildx-action@v2
- name: Build wheels - name: Build wheels
run: python -m cibuildwheel --output-dir dist run: python -m cibuildwheel --output-dir dist
@ -119,7 +120,7 @@ jobs:
env: env:
# Build only the currently selected Linux architecture (so we can # Build only the currently selected Linux architecture (so we can
# parallelise for speed). # parallelise for speed).
CIBW_ARCHS_LINUX: "${{ matrix.architecture }}" CIBW_ARCHS_LINUX: "aarch64"
# Likewise, select only one Python version per job to speed this up. # Likewise, select only one Python version per job to speed this up.
CIBW_BUILD: "${{ matrix.python-version }}-*" CIBW_BUILD: "${{ matrix.python-version }}-*"
# Run the test suite after each build. # Run the test suite after each build.
@ -127,7 +128,7 @@ jobs:
CIBW_TEST_COMMAND: pytest {package}/tests CIBW_TEST_COMMAND: pytest {package}/tests
- name: Upload as build artifacts - name: Upload as build artifacts
uses: actions/upload-artifact@v2 uses: actions/upload-artifact@v3
with: with:
name: wheels name: wheels
path: dist/*.whl path: dist/*.whl
@ -150,18 +151,18 @@ jobs:
twine upload --repository-url https://test.pypi.org/legacy/ --skip-existing dist/*.whl twine upload --repository-url https://test.pypi.org/legacy/ --skip-existing dist/*.whl
build-sdist: build-sdist:
runs-on: ubuntu-20.04 runs-on: ubuntu-latest
needs: ['build-native-wheels', 'build-QEMU-emulated-wheels'] needs: ['build-native-wheels', 'build-QEMU-emulated-wheels']
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v3
- run: | - run: |
git fetch --prune --unshallow git fetch --prune --unshallow
- name: Set up Python - name: Set up Python
uses: actions/setup-python@v3 uses: actions/setup-python@v4
with: with:
python-version: "3.10" python-version: "3.x"
cache: pip cache: pip
cache-dependency-path: "setup.py" cache-dependency-path: "setup.py"

View File

@ -12,7 +12,7 @@ jobs:
sync: sync:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v3
- uses: micnncim/action-label-syncer@v1 - uses: micnncim/action-label-syncer@v1
with: with:
prune: false prune: false

View File

@ -4,9 +4,11 @@ on: [push, pull_request, workflow_dispatch]
jobs: jobs:
lint: lint:
runs-on: ubuntu-20.04 runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v3
- uses: actions/setup-python@v3 - uses: actions/setup-python@v4
- uses: pre-commit/action@v2.0.3 with:
python-version: "3.x"
- uses: pre-commit/action@v3.0.0

View File

@ -18,12 +18,14 @@ jobs:
- { python-version: "pypy-3.8", os: macos-latest } - { python-version: "pypy-3.8", os: macos-latest }
- { python-version: "3.10", os: windows-latest } - { python-version: "3.10", os: windows-latest }
- { python-version: "3.10", os: macos-latest } - { python-version: "3.10", os: macos-latest }
- { python-version: "3.11-dev", os: windows-latest }
- { python-version: "3.11-dev", os: macos-latest }
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }} - name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v3 uses: actions/setup-python@v4
with: with:
python-version: ${{ matrix.python-version }} python-version: ${{ matrix.python-version }}
cache: pip cache: pip
@ -48,7 +50,7 @@ jobs:
python -m pytest python -m pytest
- name: Test with coverage - name: Test with coverage
if: ${{ startsWith(matrix.os, 'ubuntu') && matrix.python-version == '3.9' }} if: ${{ startsWith(matrix.os, 'ubuntu') && matrix.python-version == '3.10' }}
env: env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
run: | run: |
@ -66,7 +68,7 @@ jobs:
matrix: matrix:
architecture: [ppc64le, s390x, aarch64, arm/v6, 386] architecture: [ppc64le, s390x, aarch64, arm/v6, 386]
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v3
- run: git fetch --prune --unshallow - run: git fetch --prune --unshallow
# https://github.com/docker/setup-qemu-action # https://github.com/docker/setup-qemu-action

View File

@ -18,6 +18,7 @@ classifiers =
Programming Language :: Python :: 3.8 Programming Language :: Python :: 3.8
Programming Language :: Python :: 3.9 Programming Language :: Python :: 3.9
Programming Language :: Python :: 3.10 Programming Language :: Python :: 3.10
Programming Language :: Python :: 3.11
download_url = https://github.com/ultrajson/ultrajson download_url = https://github.com/ultrajson/ultrajson
project_urls = project_urls =
Source=https://github.com/ultrajson/ultrajson Source=https://github.com/ultrajson/ultrajson