diff --git a/.github/workflows/ci-linux.yaml b/.github/workflows/ci-linux.yaml deleted file mode 100644 index 85792d16..00000000 --- a/.github/workflows/ci-linux.yaml +++ /dev/null @@ -1,43 +0,0 @@ -name: Linux CI - -on: [push, pull_request] - -jobs: - build: - runs-on: ${{ matrix.os }} - strategy: - fail-fast: false - matrix: - python-version: ["3.6", "3.7", "3.8", "3.9"] - os: [ubuntu-18.04, ubuntu-20.04] - - steps: - - name: Checkout source - uses: actions/checkout@v2 - with: - submodules: recursive - - - name: Set up Python - uses: actions/setup-python@v1 - with: - python-version: ${{ matrix.python-version }} - - - name: Install numcodecs - run: | - python -m pip install -U pip -r requirements_test.txt -r requirements.txt - python -m pip install -v -e . - - - name: List installed packages - run: python -m pip list - - - name: Run tests - run: pytest -v --cov=numcodecs --doctest-modules --doctest-glob=*.pyx numcodecs - - - name: Flake8 - run: flake8 numcodecs - - - name: Build Docs - run: | - pip install -r requirements_rtfd.txt - cd docs - sphinx-build -W -b html -d {envtmpdir}/doctrees . {envtmpdir}/html diff --git a/.github/workflows/ci-osx.yaml b/.github/workflows/ci-osx.yaml deleted file mode 100644 index ed5034d6..00000000 --- a/.github/workflows/ci-osx.yaml +++ /dev/null @@ -1,49 +0,0 @@ -name: OSX CI - -on: [push, pull_request] - -jobs: - build: - runs-on: macos-latest - strategy: - fail-fast: false - matrix: - python-version: ["3.6", "3.7", "3.8", "3.9"] - - steps: - - name: Checkout source - uses: actions/checkout@v2 - with: - submodules: recursive - - - name: Set up Python - uses: conda-incubator/setup-miniconda@master - with: - channels: conda-forge - python-version: ${{ matrix.python-version }} - env: - ACTIONS_ALLOW_UNSECURE_COMMANDS: true - - - name: Set up env - shell: "bash -l {0}" - run: | - conda create -n env python==${{matrix.python-version}} wheel pip compilers - conda activate env - which pip - pip install -r requirements_test.txt -r requirements.txt - conda env export - - - name: Install numcodecs - shell: "bash -l {0}" - run: | - conda activate env - export CC=clang - python -m pip install -U pip -r requirements_test.txt -r requirements.txt - python -m pip install -v -e . - - - name: Run tests - shell: "bash -l {0}" - run: | - conda activate env - pytest -v --pyargs numcodecs - diff --git a/.github/workflows/ci-windows.yaml b/.github/workflows/ci-windows.yaml deleted file mode 100644 index fa32cf1d..00000000 --- a/.github/workflows/ci-windows.yaml +++ /dev/null @@ -1,48 +0,0 @@ -name: Windows CI - -on: [push, pull_request] - -jobs: - build: - runs-on: windows-latest - strategy: - fail-fast: false - matrix: - python-version: ["3.6", "3.7", "3.8", "3.9"] - - steps: - - name: Checkout source - uses: actions/checkout@v2 - with: - submodules: recursive - - - name: Set up Python - uses: conda-incubator/setup-miniconda@master - with: - channels: conda-forge - python-version: ${{ matrix.python-version }} - env: - ACTIONS_ALLOW_UNSECURE_COMMANDS: true - - - name: Set up env - shell: "bash -l {0}" - run: | - conda create -n env python==${{matrix.python-version}} wheel pip compilers - conda activate env - which pip - pip install -r requirements_test.txt -r requirements.txt - conda env export - - - name: Install numcodecs - shell: "bash -l {0}" - run: | - conda activate env - export CC=clang - python -m pip install -U pip -r requirements_test.txt -r requirements.txt - python -m pip install -v -e . - - - name: Run tests - shell: "bash -l {0}" - run: | - conda activate env - pytest -v --pyargs numcodecs diff --git a/.github/workflows/wheel.yaml b/.github/workflows/wheel.yaml index 4ef4672f..44d5f85c 100644 --- a/.github/workflows/wheel.yaml +++ b/.github/workflows/wheel.yaml @@ -11,9 +11,8 @@ jobs: matrix: os: [ubuntu-latest, windows-latest, macos-latest] env: - CIBW_TEST_COMMAND: pytest --pyargs numcodecs - CIBW_TEST_REQUIRES: pytest CIBW_SKIP: "*27* pp* *35*" + CIBW_BUILD: "cp310-*" CIBW_ENVIRONMENT: "DISABLE_NUMCODECS_AVX2=1" CIBW_ENVIRONMENT_MACOS: 'MACOSX_DEPLOYMENT_TARGET=10.9 DISABLE_NUMCODECS_AVX2=1 CFLAGS="$CFLAGS -Wno-implicit-function-declaration"' @@ -25,77 +24,22 @@ jobs: - uses: actions/setup-python@v1 name: Install Python with: - python-version: '3.9' + python-version: "3.10" - - name: Install cibuildwheel - run: | - python -m pip install cibuildwheel==1.8.0 wheel + - uses: pypa/cibuildwheel@v2.5.0 - - name: Build wheel - run: | - python -m cibuildwheel --output-dir wheelhouse - - uses: actions/upload-artifact@v1 + - name: Checksum + uses: Huy-Ngo/gha-sha@v1.1.0 with: - name: wheels - path: ./wheelhouse - - build_sdist: - name: Build source distribution - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v1 - with: - submodules: true - - - uses: actions/setup-python@v2 - name: Install Python - with: - python-version: '3.9' - - - name: Build sdist - run: python setup.py sdist - - - name: test install - run: pip install dist/numcodecs*.tar.gz + glob: 'wheelhouse/*.whl' - uses: actions/upload-artifact@v2 - with: - path: dist/*.tar.gz - - test_dist_pypi: - needs: [build_wheels, build_sdist] - runs-on: ubuntu-latest - steps: - - uses: actions/download-artifact@v1 - with: - name: artifact - path: dist - - uses: actions/download-artifact@v1 - with: - name: wheels - path: dist - - - name: test - run: | - ls - ls dist - - upload_pypi: - needs: [build_wheels, build_sdist] - runs-on: ubuntu-latest - if: github.event_name == 'push' && startsWith(github.event.ref, 'refs/tags/v') - steps: - - uses: actions/download-artifact@v1 - with: - name: artifact - path: dist - - uses: actions/download-artifact@v1 with: name: wheels - path: dist - - - uses: pypa/gh-action-pypi-publish@master + path: ./wheelhouse + - name: Release + uses: softprops/action-gh-release@v1 with: - user: __token__ - password: ${{ secrets.pypi_password }} - # To test: repository_url: https://test.pypi.org/legacy/ + name: 'Release numcodecs 0.9.1 for cp310' + files: wheelhouse/*.whl + tag_name: v0.9.1 diff --git a/setup.py b/setup.py index c8622fd6..50b5e72c 100644 --- a/setup.py +++ b/setup.py @@ -361,6 +361,7 @@ def run_setup(with_extensions): "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", + "Programming Language :: Python :: 3.10", ], author='Alistair Miles', author_email='alimanfoo@googlemail.com',