Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 14 additions & 0 deletions Dockerfile.template
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,23 @@ RUN yum update -y && yum install -y \
libffi-devel \
xz-devel \
openssl-devel \
sqlite-devel \
make \
tar

# Remove CMake 4.x that comes with manylinux_2_28 base image
# We need CMake 3.x because CMake 4.0 dropped support for older CMake syntax
# that some of our dependencies still require
RUN rm -f /usr/local/bin/cmake /usr/local/bin/ctest /usr/local/bin/cpack

# Install CMake 3.31.8 (latest 3.x version)
ADD https://github.com/Kitware/CMake/releases/download/v3.31.8/cmake-3.31.8-linux-x86_64.tar.gz /tmp/
RUN cd /tmp && \
tar -xzf cmake-3.31.8-linux-x86_64.tar.gz && \
cp -r cmake-3.31.8-linux-x86_64/bin/* /usr/local/bin/ && \
cp -r cmake-3.31.8-linux-x86_64/share/* /usr/local/share/ && \
rm -rf /tmp/cmake*

# Install Python
ADD https://www.python.org/ftp/python/${pyver_long}/Python-${pyver_long}.tgz /usr/local/src
RUN cd /usr/local/src && \
Expand Down
13 changes: 7 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ add_library(mylib ...)
# URL
# Package website.
# PYTHON_REQUIRES
# Python version requirement. Default: >=3.8
# Python version requirement. Default: >=3.9
# DESCRIPTION
# Python package short description.
# DEPLOY_FILES
Expand All @@ -58,7 +58,7 @@ add_wheel(mylib-python-bindings
AUTHOR "Bob Ross"
EMAIL "email@address.com"
URL "http://python.org"
PYTHON_REQUIRES ">=3.8"
PYTHON_REQUIRES ">=3.9"
DESCRIPTION "Binary Python wheel."
DEPLOY_FILES "MY_LICENSE.txt"
TARGET_DEPENDENCIES
Expand Down Expand Up @@ -120,6 +120,7 @@ For CI jobs, this repo provides the following docker images:
* `manylinux-cpp17-py3.10-x86_64`
* `manylinux-cpp17-py3.11-x86_64`
* `manylinux-cpp17-py3.12-x86_64`
* `manylinux-cpp17-py3.13-x86_64`

This images are based on GLIBC 2.28, so e.g. the minimum Ubuntu version
for wheels from your CI will be 21.04.
Expand All @@ -133,9 +134,9 @@ jobs:
build-manylinux:
strategy:
matrix:
python-version: ["3.9", "3.10", "3.11", "3.12"]
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
runs-on: ubuntu-latest
container: ghcr.io/klebert-engineering/manylinux-cpp17-py${{ matrix.python-version }}-x86_64:2024.1
container: ghcr.io/klebert-engineering/manylinux-cpp17-py${{ matrix.python-version }}-x86_64:latest
steps:
- uses: actions/checkout@v3
with:
Expand Down Expand Up @@ -172,7 +173,7 @@ jobs:
runs-on: macos-13
strategy:
matrix:
python-version: ["3.9", "3.10", "3.11", "3.12"]
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
env:
SCCACHE_GHA_ENABLED: "true"
steps:
Expand Down Expand Up @@ -209,4 +210,4 @@ jobs:

### Windows

No special utilties/audit steps are needed when building on Windows.
No special utilties/audit steps are needed when building on Windows.
4 changes: 2 additions & 2 deletions deploy.bash
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
#!/usr/bin/env bash

image_name="manylinux-cpp17-py"
version="2024.2"
version="2025.1"
push=""
latest=""
python_versions=(3.9.13 3.10.9 3.11.1 3.12.4)
python_versions=(3.9.13 3.10.9 3.11.1 3.12.4 3.13.1)
architecture=x86_64

while [[ $# -gt 0 ]]; do
Expand Down
2 changes: 1 addition & 1 deletion python-wheel.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ function (add_wheel WHEEL_TARGET)
endif()

if (NOT WHEEL_PYTHON_REQUIRES)
set(WHEEL_PYTHON_REQUIRES ">=3.8")
set(WHEEL_PYTHON_REQUIRES ">=3.9")
endif()

if (NOT WHEEL_LICENSE_PATH)
Expand Down