git: a45dc2190f00 - main - security/py-krb5: Allow build with cython 0.29.*

From: Po-Chuan Hsieh <sunpoet_at_FreeBSD.org>
Date: Tue, 22 Oct 2024 09:56:49 UTC
The branch main has been updated by sunpoet:

URL: https://cgit.FreeBSD.org/ports/commit/?id=a45dc2190f0009deb593ceccdd88a7663c388dad

commit a45dc2190f0009deb593ceccdd88a7663c388dad
Author:     Po-Chuan Hsieh <sunpoet@FreeBSD.org>
AuthorDate: 2024-10-22 09:48:56 +0000
Commit:     Po-Chuan Hsieh <sunpoet@FreeBSD.org>
CommitDate: 2024-10-22 09:48:56 +0000

    security/py-krb5: Allow build with cython 0.29.*
    
    - Bump PORTREVISION for package change
    
    Obtained from:  https://github.com/jborean93/pykrb5/commit/3caba43693520001ba6847ecbc1b378ea344a68f
---
 security/py-krb5/Makefile           |  6 ++---
 security/py-krb5/files/patch-cython | 51 +++++++++++++++++++++++++++++++++++++
 2 files changed, 54 insertions(+), 3 deletions(-)

diff --git a/security/py-krb5/Makefile b/security/py-krb5/Makefile
index 782077d6dbb9..2878a0e79c2e 100644
--- a/security/py-krb5/Makefile
+++ b/security/py-krb5/Makefile
@@ -1,5 +1,6 @@
 PORTNAME=	krb5
 PORTVERSION=	0.7.0
+PORTREVISION=	1
 CATEGORIES=	security python
 MASTER_SITES=	PYPI
 PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
@@ -11,12 +12,11 @@ WWW=		https://github.com/jborean93/pykrb5
 LICENSE=	MIT
 LICENSE_FILE=	${WRKSRC}/LICENSE
 
-BUILD_DEPENDS=	${PYTHON_PKGNAMEPREFIX}cython3>=0:lang/cython3@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}setuptools>=42.0.0:devel/py-setuptools@${PY_FLAVOR} \
+BUILD_DEPENDS=	${PYTHON_PKGNAMEPREFIX}setuptools>=42.0.0:devel/py-setuptools@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR}
 
 USES=		python ssl
-USE_PYTHON=	autoplist concurrent pep517
+USE_PYTHON=	autoplist concurrent cython pep517
 
 MAKE_ENV=	KRB5_KRB5CONFIG=${KRB5CONFIG}
 
diff --git a/security/py-krb5/files/patch-cython b/security/py-krb5/files/patch-cython
new file mode 100644
index 000000000000..6bfdddadba97
--- /dev/null
+++ b/security/py-krb5/files/patch-cython
@@ -0,0 +1,51 @@
+Obtained from:	https://github.com/jborean93/pykrb5/commit/3caba43693520001ba6847ecbc1b378ea344a68f
+
+--- src/krb5/_set_password.pyi.orig	2024-10-03 06:17:02 UTC
++++ src/krb5/_set_password.pyi
+@@ -1,3 +1,8 @@
++# Copyright: (c) 2024 Jordan Borean (@jborean93) <jborean93@gmail.com>
++# MIT License (see LICENSE or https://opensource.org/licenses/MIT)
++
++from __future__ import annotations
++
+ import enum
+ import typing
+ 
+@@ -57,7 +62,7 @@ def set_password(
+     context: Context,
+     creds: Creds,
+     newpw: bytes,
+-    change_password_for: typing.Optional[Principal] = None,
++    change_password_for: Principal | None = None,
+ ) -> SetPasswordResult:
+     """Set a password for a principal using specified credentials.
+ 
+@@ -87,7 +92,7 @@ def set_password_using_ccache(
+     context: Context,
+     ccache: CCache,
+     newpw: bytes,
+-    change_password_for: typing.Optional[Principal] = None,
++    change_password_for: Principal | None = None,
+ ) -> SetPasswordResult:
+     """Set a password for a principal using cached credentials.
+ 
+--- src/krb5/_set_password.pyx.orig	2024-10-03 06:17:02 UTC
++++ src/krb5/_set_password.pyx
+@@ -74,7 +74,7 @@ def set_password(
+     Context context not None,
+     Creds creds not None,
+     const unsigned char[:] newpw not None,
+-    change_password_for: typing.Optional[Principal] = None,
++    Principal change_password_for = None,
+ ) -> SetPasswordResult:
+     cdef krb5_error_code err = 0
+     cdef int result_code
+@@ -134,7 +134,7 @@ def set_password_using_ccache(
+     Context context not None,
+     CCache ccache not None,
+     const unsigned char[:] newpw not None,
+-    change_password_for: typing.Optional[Principal] = None,
++    Principal change_password_for = None,
+ ) -> SetPasswordResult:
+     cdef krb5_error_code err = 0
+     cdef int result_code