Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit d792186

Browse files
Update Python requirements and pin Cython
Updates the build dpendencies to newer versions, sets the new minimum Python requirement to 3.9 and adds official support for Python 3.14. Also pins the build requirements to a specific Cython version to support deterministic builds. Signed-off-by: Jordan Borean <jborean93@gmail.com>
1 parent 6cd2011 commit d792186

File tree

10 files changed

+51
-89
lines changed

10 files changed

+51
-89
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: 3 additions & 3 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.0',
282282
author='The Python GSSAPI Team',
283283
author_email='jborean93@gmail.com',
284284
packages=['gssapi', 'gssapi.raw', 'gssapi.raw._enum_extensions',
@@ -291,17 +291,17 @@ def gssapi_modules(lst):
291291
long_description=long_desc,
292292
license='LICENSE.txt',
293293
url="https://github.com/pythongssapi/python-gssapi",
294-
python_requires=">=3.8",
294+
python_requires=">=3.9",
295295
classifiers=[
296296
'Development Status :: 5 - Production/Stable',
297297
'Programming Language :: Python',
298298
'Programming Language :: Python :: 3',
299-
'Programming Language :: Python :: 3.8',
300299
'Programming Language :: Python :: 3.9',
301300
'Programming Language :: Python :: 3.10',
302301
'Programming Language :: Python :: 3.11',
303302
'Programming Language :: Python :: 3.12',
304303
'Programming Language :: Python :: 3.13',
304+
'Programming Language :: Python :: 3.14',
305305
'Intended Audience :: Developers',
306306
'Programming Language :: Python :: Implementation :: CPython',
307307
'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)

AltStyle によって変換されたページ (->オリジナル) /