From 4b771590477282107016d3ddeea769b62785f935 Mon Sep 17 00:00:00 2001 From: Panos Date: Sun, 12 Jan 2025 22:10:27 +0000 Subject: [PATCH] Manylinux (#211) * Updated changelog * Updated manylinux wheel building * Updated CI cfg --- .circleci/config.yml | 2 +- Changelog.rst | 14 ++++++++++---- ci/build-wheels.sh | 14 ++++++++------ 3 files changed, 19 insertions(+), 11 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 7963ca0..f3bdde2 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -111,7 +111,7 @@ jobs: name: Deps command: | sudo apt-get install python3-pip - pip install -U pip + pip install -U pip setuptools pip install twine which twine which python3 diff --git a/Changelog.rst b/Changelog.rst index 1a023fd..85432b3 100644 --- a/Changelog.rst +++ b/Changelog.rst @@ -1,8 +1,8 @@ Change Log ============= -1.1.0 (unreleased) -++++++++++++++++++ +1.1.0 ++++++ Changes -------- @@ -12,11 +12,17 @@ Changes * Upgraded wheel OpenSSL to 3.4.0. * Removed testing for Python versions <3.8. +Fixes +----- + +* Calling ``ssh2.session.Session.methods`` without a valid connection would cause a segfault - #203. + Packaging ---------- -* Added binary wheels for Python versions 3.11, 3.12. -* Added OSX 12.0 and 13.0 wheels, Apple Silicon. +* Added binary wheels for Python versions 3.11, 3.12 and 3.13 on support manylinux wheel builds. +* Added OSX 12.0, 13.0 and 14.0 wheels, Apple Silicon. +* Support OSX brew OpenSSL from source builds. 1.0.0 diff --git a/ci/build-wheels.sh b/ci/build-wheels.sh index 10f3dad..a5c36be 100755 --- a/ci/build-wheels.sh +++ b/ci/build-wheels.sh @@ -1,6 +1,6 @@ #!/bin/bash -xe # This file is part of ssh2-python. -# Copyright (C) 2017-2022 Panos Kittenis and contributors. +# Copyright (C) 2017-2025 Panos Kittenis and contributors. # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public @@ -18,7 +18,8 @@ # Compile wheels # For testing # for PYBIN in `ls -1d /opt/python/cp310-cp310/bin | grep -v cpython`; do -for PYBIN in $(ls -1d /opt/python/*/bin | grep -v cpython); do +for PYBIN in $(ls -1d /opt/python/*/bin | grep -v cpython | grep -v cp313t); do + echo "Building for Python binary ${PYBIN}" "${PYBIN}/pip" wheel /io/ -w wheelhouse/ done @@ -28,9 +29,10 @@ for whl in wheelhouse/*.whl; do done # Install packages and test -for PYBIN in $(ls -1d /opt/python/*/bin | grep -v cpython); do +for PYBIN in $(ls -1d /opt/python/*/bin | grep -v cpython | grep -v cp313t); do # for PYBIN in `ls -1d /opt/python/cp310-cp310/bin | grep -v cpython`; do - "${PYBIN}/pip" install ssh2-python --no-index -f /io/wheelhouse - (cd "$HOME"; "${PYBIN}/python" -c 'from ssh2.session import Session; Session()' && - echo "Import sanity check succeeded.") + echo "Installing for Python binary ${PYBIN}" + "${PYBIN}/pip" install ssh2-python --no-index -f /io/wheelhouse + (cd "$HOME"; "${PYBIN}/python" -c 'from ssh2.session import Session; Session()' && + echo "Import sanity check succeeded.") done