Skip to content

Commit

Permalink
Bump version to 1.8.1 with Python 3.7 requires
Browse files Browse the repository at this point in the history
This update bumps the `python_requires` to be `>=3.7` as the sdist build
requires PEP 517 support that is somewhat only guaranteed with the pip
that was shipped with Python 3.7 or greater. Since 3.6 has been end of
life since December 2021 and the remaining Linux distributions that
still use it have system provided packages this shouldn't be a surprise.

Also use CentOS 9 Stream in the CI tests to test this on an actual
RHEL-ish host on the version of Python actually supported.

Signed-off-by: Jordan Borean <[email protected]>
  • Loading branch information
jborean93 committed Aug 15, 2022
1 parent d885831 commit aae717d
Show file tree
Hide file tree
Showing 4 changed files with 51 additions and 31 deletions.
15 changes: 3 additions & 12 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -57,8 +57,6 @@ jobs:
version: cp38-macosx_arm64
- os: macOS-12
version: cp37-macosx_x86_64
- os: macOS-12
version: cp36-macosx_x86_64

- os: windows-2022
version: cp310-win_amd64
Expand All @@ -76,10 +74,6 @@ jobs:
version: cp37-win_amd64
- os: windows-2022
version: cp37-win32
- os: windows-2022
version: cp36-win_amd64
- os: windows-2022
version: cp36-win32

steps:
- name: Set up environment
Expand Down Expand Up @@ -136,16 +130,16 @@ jobs:
name:
- debian-stable
- debian-heimdal
- centos-stream-8
- centos-stream-9
- fedora-latest
include:
- name: debian-stable
distro: debian:stable
- name: debian-heimdal
distro: debian:stable
krb5_ver: heimdal
- name: centos-stream-8
distro: quay.io/centos/centos:stream8
- name: centos-stream-9
distro: quay.io/centos/centos:stream9
- name: fedora-latest
distro: fedora:latest
flake: 'yes'
Expand Down Expand Up @@ -181,7 +175,6 @@ jobs:
- win-py-3.9
- win-py-3.8
- win-py-3.7
- win-py-3.6
arch:
- x64
- x86
Expand All @@ -194,8 +187,6 @@ jobs:
pyenv: '3.8'
- name: win-py-3.7
pyenv: '3.7'
- name: win-py-3.6
pyenv: '3.6'

steps:
- name: Check out code
Expand Down
5 changes: 3 additions & 2 deletions README.txt
Original file line number Diff line number Diff line change
Expand Up @@ -36,14 +36,15 @@ Basic

* a C compiler (such as GCC)

* Python 3.6+ (older releases support older versions, but are unsupported)
* Python 3.7+ (older releases support older versions, but are unsupported)

* the `decorator` python package

Compiling from Scratch
----------------------

To compile from scratch, you will need Cython >= 0.21.1.
To compile from scratch, you will need Cython >= 0.29.29 which is automatically
installed by pip in an isolated build virtual environment.

For Running the Tests
---------------------
Expand Down
57 changes: 43 additions & 14 deletions ci/lib.sh
Original file line number Diff line number Diff line change
Expand Up @@ -16,34 +16,64 @@ lib::setup::debian_install() {
export GSSAPI_KRB5_MAIN_LIB="/usr/lib/x86_64-linux-gnu/libkrb5.so"
fi

apt-get -y install gcc virtualenv python3-{venv,dev}
apt-get -y install gcc python3-{venv,dev}

virtualenv -p $(which python3) .venv
python3 -m venv .venv
source ./.venv/bin/activate
}

lib::setup::rh_yuminst() {
# yum has no update-only verb. Also: modularity just makes this slower.
yum -y --nogpgcheck --disablerepo=\*modul\* install $@
lib::setup::rh_dnfinst() {
# dnf has no update-only verb. Also: modularity just makes this slower.
dnf -y --nogpgcheck --disablerepo=\*modul\* install $@
}

lib::setup::centos_install() {
lib::setup::rh_yuminst python3-{virtualenv,devel}
virtualenv -p $(which python3) .venv
lib::setup::rh_dnfinst python3-devel
python3 -m venv .venv
source ./.venv/bin/activate
}

lib::setup::fedora_install() {
# path to binary here in case Rawhide changes it
lib::setup::rh_yuminst redhat-rpm-config \
/usr/bin/virtualenv python3-{virtualenv,devel}
virtualenv -p $(which python3) .venv
lib::setup::rh_dnfinst redhat-rpm-config \
python3-devel
python3 -m venv .venv
source ./.venv/bin/activate
}

lib::setup::gssntlmssp_install() {
lib::setup::rh_dnfinst dnf-plugins-core
dnf config-manager --set-enabled crb

lib::setup::rh_dnfinst autoconf automake gettext libtool \
libunistring-devel openssl-devel zlib-devel

curl -L -s https://github.com/gssapi/gss-ntlmssp/releases/download/v1.1.0/gssntlmssp-1.1.0.tar.gz --output /tmp/gssntlmssp.tar.gz
tar xf /tmp/gssntlmssp.tar.gz -C /tmp

pushd /tmp/gssntlmssp-1.1.0

autoreconf -f -i
./configure --with-wbclient=no --with-manpages=no
make
make install

popd

echo "gssntlmssp_v1 1.3.6.1.4.1.311.2.2.10 /usr/local/lib/gssntlmssp/gssntlmssp.so" > /etc/gss/mech.d/gssntlmssp.conf
}

lib::setup::rh_install() {
lib::setup::rh_yuminst krb5-{devel,libs,server,workstation} \
which gcc findutils gssntlmssp
lib::setup::rh_dnfinst krb5-{devel,libs,server,workstation} \
which gcc findutils

if grep -q 'release 9' /etc/redhat-release; then
# CentOS 9 Stream doesn't have a dnf package for gssntlmssp
lib::setup::gssntlmssp_install
else
lib::setup::rh_dnfinst gssntlmssp
fi

export GSSAPI_KRB5_MAIN_LIB="/usr/lib64/libkrb5.so"

if [ -f /etc/fedora-release ]; then
Expand All @@ -54,8 +84,7 @@ lib::setup::rh_install() {
}

lib::setup::macos_install() {
sudo pip3 install virtualenv
python3 -m virtualenv -p $(which python3) .venv
python3 -m venv .venv
source .venv/bin/activate

export GSSAPI_KRB5_MAIN_LIB="/System/Library/PrivateFrameworks/Heimdal.framework/Heimdal"
Expand Down
5 changes: 2 additions & 3 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -274,7 +274,7 @@ def gssapi_modules(lst):

setup(
name='gssapi',
version='1.8.0',
version='1.8.1',
author='The Python GSSAPI Team',
author_email='[email protected]',
packages=['gssapi', 'gssapi.raw', 'gssapi.raw._enum_extensions',
Expand All @@ -287,12 +287,11 @@ def gssapi_modules(lst):
long_description=long_desc,
license='LICENSE.txt',
url="https://github.com/pythongssapi/python-gssapi",
python_requires=">=3.6",
python_requires=">=3.7",
classifiers=[
'Development Status :: 5 - Production/Stable',
'Programming Language :: Python',
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.6',
'Programming Language :: Python :: 3.7',
'Programming Language :: Python :: 3.8',
'Programming Language :: Python :: 3.9',
Expand Down

0 comments on commit aae717d

Please sign in to comment.