diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 32aa9cb8..0ad3350c 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -43,16 +43,34 @@ jobs: python: - major-dot-minor: '3.7' cibw-build: 'cp37-*' + manylinux: + arch: manylinux2014 + intel: manylinux2010 matrix: '3.7' - major-dot-minor: '3.8' cibw-build: 'cp38-*' + manylinux: + arch: manylinux2014 + intel: manylinux2010 matrix: '3.8' - major-dot-minor: '3.9' cibw-build: 'cp39-*' + manylinux: + arch: manylinux2014 + intel: manylinux2010 matrix: '3.9' - major-dot-minor: '3.10' cibw-build: 'cp310-*' + manylinux: + arch: manylinux2014 + intel: manylinux2010 matrix: '3.10' + - major-dot-minor: '3.11' + cibw-build: 'cp311-*' + manylinux: + arch: manylinux2014 + intel: manylinux2014 + matrix: '3.11' arch: - name: ARM matrix: arm @@ -116,17 +134,14 @@ jobs: pip install pipx - name: Build and test - uses: pypa/cibuildwheel@v2.7.0 - with: - output-dir: dist env: CIBW_BUILD_VERBOSITY_MACOS: 0 CIBW_BUILD_VERBOSITY_LINUX: 0 CIBW_BUILD_VERBOSITY_WINDOWS: 0 CIBW_BUILD: ${{ matrix.python.cibw-build }} CIBW_SKIP: '*-manylinux_i686 *-win32 *-musllinux_*' - CIBW_MANYLINUX_AARCH64_IMAGE: manylinux2014 - CIBW_MANYLINUX_X86_64_IMAGE: manylinux2010 + CIBW_MANYLINUX_AARCH64_IMAGE: ${{ matrix.python.manylinux['arm'] }} + CIBW_MANYLINUX_X86_64_IMAGE: ${{ matrix.python.manylinux['intel'] }} CIBW_ENVIRONMENT_LINUX: "PATH=/project/cmake-3.17.3-Linux-`uname -m`/bin:$PATH BUILD_VDF_CLIENT=N" CIBW_BEFORE_ALL_LINUX: > yum -y install epel-release @@ -174,6 +189,9 @@ jobs: && cp {wheel} {dest_dir} CIBW_TEST_REQUIRES: pytest CIBW_TEST_COMMAND: py.test -v {project}/tests + CIBW_PRERELEASE_PYTHONS: True + run: + pipx run --spec='cibuildwheel==2.9.0' cibuildwheel --output-dir dist 2>&1 - name: Upload artifacts uses: actions/upload-artifact@v3 diff --git a/pyproject.toml b/pyproject.toml index 9aa80285..5fc898f8 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,5 +1,5 @@ [build-system] -requires = ["setuptools>=42", "wheel", "setuptools_scm[toml]>=3.5.0", "pybind11"] +requires = ["setuptools>=42", "wheel", "setuptools_scm[toml]>=3.5.0", "pybind11>=2.10.0"] build-backend = "setuptools.build_meta" [tool.setuptools_scm] diff --git a/setup.py b/setup.py index e84f7fdc..49c6285e 100644 --- a/setup.py +++ b/setup.py @@ -253,7 +253,7 @@ def build_extensions(self): python_requires=">=3.7", long_description=open("README.md").read(), long_description_content_type="text/markdown", - build_requires=["pybind11"], + build_requires=["pybind11>=2.10.0"], url="https://github.com/Chia-Network/chiavdf", ext_modules=ext_modules, cmdclass={"build_ext": BuildExt}, @@ -273,7 +273,7 @@ def build_extensions(self): long_description=open("README.md").read(), long_description_content_type="text/markdown", url="https://github.com/Chia-Network/chiavdf", - setup_requires=["pybind11>=2.5.0"], + setup_requires=["pybind11>=2.10.0"], ext_modules=[CMakeExtension("chiavdf", "src")], cmdclass=dict( build_ext=CMakeBuild, install_hook=install_hook, build_hook=build_hook diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index c9751281..fb92c4d7 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -32,7 +32,7 @@ include(FetchContent) FetchContent_Declare( pybind11-src GIT_REPOSITORY https://github.com/pybind/pybind11.git - GIT_TAG v2.6.2 + GIT_TAG v2.10.0 ) FetchContent_MakeAvailable(pybind11-src)