Skip to content

Commit 462ddee

Browse files
authored
Merge branch 'pythongssapi:main' into main
2 parents 63846f0 + 55df351 commit 462ddee

File tree

10 files changed

+54
-90
lines changed

10 files changed

+54
-90
lines changed

.github/workflows/ci.yml

Lines changed: 37 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -11,12 +11,12 @@ jobs:
1111
runs-on: ubuntu-latest
1212
steps:
1313
- name: Check out code
14-
uses: actions/checkout@v4
14+
uses: actions/checkout@v5
1515

1616
- name: Select python
1717
uses: actions/setup-python@v5
1818
with:
19-
python-version: 3.9
19+
python-version: 3.12
2020

2121
- name: Build sdist
2222
run: |
@@ -43,6 +43,12 @@ jobs:
4343
fail-fast: false
4444
matrix:
4545
include:
46+
- os: macOS-13
47+
version: cp314-macosx_x86_64
48+
prerelease: true
49+
- os: macOS-15
50+
version: cp314-macosx_arm64
51+
prerelease: true
4652
- os: macOS-13
4753
version: cp313-macosx_x86_64
4854
- os: macOS-15
@@ -63,11 +69,13 @@ jobs:
6369
version: cp39-macosx_x86_64
6470
- os: macOS-15
6571
version: cp39-macosx_arm64
66-
- os: macOS-13
67-
version: cp38-macosx_x86_64
68-
- os: macOS-15
69-
version: cp38-macosx_arm64
7072

73+
- os: windows-2022
74+
version: cp314-win_amd64
75+
prerelease: true
76+
- os: windows-2022
77+
version: cp314-win32
78+
prerelease: true
7179
- os: windows-2022
7280
version: cp313-win_amd64
7381
- os: windows-2022
@@ -88,10 +96,6 @@ jobs:
8896
version: cp39-win_amd64
8997
- os: windows-2022
9098
version: cp39-win32
91-
- os: windows-2022
92-
version: cp38-win_amd64
93-
- os: windows-2022
94-
version: cp38-win32
9599

96100
steps:
97101
- name: Set up environment
@@ -109,7 +113,7 @@ jobs:
109113
echo "C:\Program Files${{ endsWith(matrix.version, '-win32') && ' (x86)' || '' }}\MIT\Kerberos\bin;$PATH" >> $GITHUB_PATH
110114
111115
- name: Download gssapi sdist
112-
uses: actions/download-artifact@v4
116+
uses: actions/download-artifact@v5
113117
with:
114118
name: artifact-sdist
115119
path: ./
@@ -123,10 +127,11 @@ jobs:
123127
rm gssapi-*.tar.gz
124128
125129
- name: Build wheel
126-
uses: pypa/cibuildwheel@v2.22.0
130+
uses: pypa/cibuildwheel@v3.1.4
127131
env:
128132
CIBW_BUILD: ${{ matrix.version }}
129133
CIBW_BUILD_VERBOSITY: 1
134+
CIBW_PRERELEASE_PYTHONS: ${{ matrix.prerelease || 'false' }}
130135

131136
- name: Upload wheel
132137
uses: actions/upload-artifact@v4
@@ -142,7 +147,7 @@ jobs:
142147
runs-on: ubuntu-latest
143148
steps:
144149
- name: Download gssapi sdist
145-
uses: actions/download-artifact@v4
150+
uses: actions/download-artifact@v5
146151
with:
147152
name: artifact-sdist
148153
path: ./dist
@@ -166,7 +171,7 @@ jobs:
166171
167172
PATH="${PWD}/Python-${PYTHON_VERSION}-build/bin:${PATH}"
168173
python3 -m pip install gssapi=="${GSSAPI_VER}" \
169-
--find-links "file://${PWD}/dist" \
174+
--find-links dist \
170175
--verbose
171176
172177
python3 -c "import gssapi"
@@ -199,10 +204,10 @@ jobs:
199204

200205
steps:
201206
- name: Check out code
202-
uses: actions/checkout@v4
207+
uses: actions/checkout@v5
203208

204209
- name: Download built project
205-
uses: actions/download-artifact@v4
210+
uses: actions/download-artifact@v5
206211
with:
207212
pattern: artifact-*
208213
merge-multiple: true
@@ -225,18 +230,20 @@ jobs:
225230
fail-fast: false
226231
matrix:
227232
name:
233+
- win-py-3.14
228234
- win-py-3.13
229235
- win-py-3.12
230236
- win-py-3.11
231237
- win-py-3.10
232238
- win-py-3.9
233-
- win-py-3.8
234239
arch:
235240
- x64
236241
- x86
237242
include:
243+
- name: win-py-3.14
244+
pyenv: '3.14.0-rc.2'
238245
- name: win-py-3.13
239-
pyenv: '3.13.0-rc.3'
246+
pyenv: '3.13'
240247
- name: win-py-3.12
241248
pyenv: '3.12'
242249
- name: win-py-3.11
@@ -245,15 +252,13 @@ jobs:
245252
pyenv: '3.10'
246253
- name: win-py-3.9
247254
pyenv: '3.9'
248-
- name: win-py-3.8
249-
pyenv: '3.8'
250255

251256
steps:
252257
- name: Check out code
253-
uses: actions/checkout@v4
258+
uses: actions/checkout@v5
254259

255260
- name: Download built project
256-
uses: actions/download-artifact@v4
261+
uses: actions/download-artifact@v5
257262
with:
258263
pattern: artifact-*
259264
merge-multiple: true
@@ -279,10 +284,10 @@ jobs:
279284
runs-on: macos-latest
280285
steps:
281286
- name: Check out code
282-
uses: actions/checkout@v4
287+
uses: actions/checkout@v5
283288

284289
- name: Download built project
285-
uses: actions/download-artifact@v4
290+
uses: actions/download-artifact@v5
286291
with:
287292
pattern: artifact-*
288293
merge-multiple: true
@@ -311,10 +316,10 @@ jobs:
311316

312317
steps:
313318
- name: Check out code
314-
uses: actions/checkout@v4
319+
uses: actions/checkout@v5
315320

316321
- name: Download built project
317-
uses: actions/download-artifact@v4
322+
uses: actions/download-artifact@v5
318323
with:
319324
pattern: artifact-*
320325
merge-multiple: true
@@ -347,37 +352,14 @@ jobs:
347352
folder: ci_docs_build
348353
target-folder: stable
349354

350-
- name: Create release
355+
- name: Create release with tar artifact
351356
if: startsWith(github.ref, 'refs/tags/v')
352-
uses: actions/create-release@v1
353-
id: cr
354-
env:
355-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
356-
with:
357-
tag_name: ${{ github.ref }}
358-
release_name: ${{ github.ref }}
359-
360-
- name: Upload release tarball
361-
if: startsWith(github.ref, 'refs/tags/v')
362-
uses: actions/upload-release-asset@v1
363-
env:
364-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
365-
with:
366-
upload_url: ${{ steps.cr.outputs.upload_url }}
367-
asset_path: tag_build/${{ steps.tarball.outputs.tarball }}
368-
asset_name: ${{ steps.tarball.outputs.tarball }}
369-
asset_content_type: application/octet-stream
370-
371-
- name: Upload release checksum
372-
if: startsWith(github.ref, 'refs/tags/v')
373-
uses: actions/upload-release-asset@v1
374-
env:
375-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
357+
uses: softprops/action-gh-release@v2
376358
with:
377-
upload_url: ${{ steps.cr.outputs.upload_url }}
378-
asset_path: tag_build/${{ steps.checksum.outputs.checksum }}
379-
asset_name: ${{ steps.checksum.outputs.checksum }}
380-
asset_content_type: text/plain
359+
files: |
360+
tag_build/${{ steps.tarball.outputs.tarball }}
361+
tag_build/${{ steps.checksum.outputs.checksum }}
362+
generate_release_notes: true
381363

382364
- name: Deploy to PyPI
383365
if: startsWith(github.ref, 'refs/tags/v')

.github/workflows/deploy-docs.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,12 +8,12 @@ jobs:
88
runs-on: ubuntu-latest
99
steps:
1010
- name: Check out code
11-
uses: actions/checkout@v4
11+
uses: actions/checkout@v5
1212

1313
- name: Select python
1414
uses: actions/setup-python@v5
1515
with:
16-
python-version: 3.9
16+
python-version: 3.12
1717

1818
- name: Build sdist
1919
run: |

.github/workflows/stale.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ jobs:
1111
runs-on: ubuntu-latest
1212

1313
steps:
14-
- uses: actions/stale@v9.0.0
14+
- uses: actions/stale@v9.1.0
1515
id: stale
1616
with:
1717
days-before-stale: -1

README.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,14 +32,14 @@ Basic
3232

3333
* a C compiler (such as GCC)
3434

35-
* Python 3.8+ (older releases support older versions, but are unsupported)
35+
* Python 3.9+ (older releases support older versions, but are unsupported)
3636

3737
* the `decorator` python package
3838

3939
Compiling from Scratch
4040
----------------------
4141

42-
To compile from scratch, you will need Cython ``>= 3.0.3, < 4.0.0`` which is automatically
42+
To compile from scratch, you will need Cython (see [pyproject.toml](pyproject.toml) for the version) which is automatically
4343
installed by pip in an isolated build virtual environment.
4444

4545
For Running the Tests

ci/lib.sh

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -132,14 +132,8 @@ lib::setup::install() {
132132
echo "Installing gssapi"
133133
GSSAPI_VER="$( grep 'version=' setup.py | cut -d "'" -f2 )"
134134

135-
if [ "$(expr substr $(uname -s) 1 5)" == "MINGW" ]; then
136-
DIST_LINK_PATH="$( echo "${PWD}/dist" | sed -e 's/^\///' -e 's/\//\\/g' -e 's/^./\0:/' )"
137-
else
138-
DIST_LINK_PATH="${PWD}/dist"
139-
fi
140-
141135
python -m pip install gssapi=="${GSSAPI_VER}" \
142-
--find-links "file://${DIST_LINK_PATH}" \
136+
--find-links dist \
143137
--verbose
144138

145139
echo "Installing dev dependencies"

gssapi/names.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -390,8 +390,8 @@ def __setitem__(
390390
complete = value.complete
391391
attr_value = value.values
392392
elif isinstance(value, tuple) and len(value) == 2:
393-
complete = t.cast(bool, value[1])
394-
attr_value = [t.cast(bytes, value[0])]
393+
complete = value[1]
394+
attr_value = [value[0]]
395395
else:
396396
complete = False
397397

gssapi/sec_contexts.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -499,7 +499,7 @@ def delegated_creds(self) -> t.Optional[Credentials]:
499499
locally_initiated = _utils.inquire_property(
500500
'locally_init', 'Whether this context was locally intiated')
501501

502-
@property # type: ignore # https://github.com/python/mypy/issues/1362
502+
@property
503503
@_utils.check_last_err
504504
def complete(self) -> bool:
505505
"""Whether negotiation for this context has been completed"""

pyproject.toml

Lines changed: 1 addition & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[build-system]
22
requires = [
3-
"Cython >= 3.0.3, < 4.0.0",
3+
"Cython == 3.1.3",
44
"setuptools >= 40.6.0", # Start of PEP 517 support for setuptools
55
]
66
build-backend = "setuptools.build_meta"
@@ -42,17 +42,3 @@ ignore_missing_imports = true
4242
[[tool.mypy.overrides]]
4343
module = "parameterized"
4444
ignore_missing_imports = true
45-
46-
[tool.tox]
47-
legacy_tox_ini = """
48-
[tox]
49-
envlist = py36,py37,py38
50-
51-
[testenv]
52-
whitelist_externals=bash
53-
commands =
54-
bash -c "source ./.travis/lib-verify.sh && verify::flake8"
55-
python -m unittest
56-
57-
deps = -r{toxinidir}/test-requirements.txt
58-
"""

setup.py

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -278,7 +278,7 @@ def gssapi_modules(lst):
278278

279279
setup(
280280
name='gssapi',
281-
version='1.9.0',
281+
version='1.10.1',
282282
author='The Python GSSAPI Team',
283283
author_email='[email protected]',
284284
packages=['gssapi', 'gssapi.raw', 'gssapi.raw._enum_extensions',
@@ -289,19 +289,21 @@ def gssapi_modules(lst):
289289
},
290290
description='Python GSSAPI Wrapper',
291291
long_description=long_desc,
292-
license='LICENSE.txt',
292+
long_description_content_type='text/x-rst',
293+
license='ISC',
294+
license_files=['LICENSE.txt'],
293295
url="https://github.com/pythongssapi/python-gssapi",
294-
python_requires=">=3.8",
296+
python_requires=">=3.9",
295297
classifiers=[
296298
'Development Status :: 5 - Production/Stable',
297299
'Programming Language :: Python',
298300
'Programming Language :: Python :: 3',
299-
'Programming Language :: Python :: 3.8',
300301
'Programming Language :: Python :: 3.9',
301302
'Programming Language :: Python :: 3.10',
302303
'Programming Language :: Python :: 3.11',
303304
'Programming Language :: Python :: 3.12',
304305
'Programming Language :: Python :: 3.13',
306+
'Programming Language :: Python :: 3.14',
305307
'Intended Audience :: Developers',
306308
'Programming Language :: Python :: Implementation :: CPython',
307309
'Programming Language :: Cython',

test-requirements.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,5 @@ flake8
33
parameterized
44
k5test
55
decorator
6-
mypy==0.971
6+
mypy==1.17.1
77
types-decorator

0 commit comments

Comments
 (0)