If you build from src with WITHOUT_KERBEROS in src.conf, then py-paramiko 2.11.0 will fail to build. Checking the documentation py-gssapi is optional for the py-paramiko build, so it would be helpful to have py-gssapi moved to a KERBEROS option in the py-paramiko port. Can confirm the port builds successfully without the dependency on py-gssapi.
^Triage: Dependency added in ports 1b67ae77ee77 (sbz), assign to committer.
By inspection, I conclude that "gssapi" is defined as a setuptools "extra", which is what should pull in the pyasn1 and gssapi optional dependencies. I would propose A) naming the new option after the upstream-defined extra (e.g. GSSAPI); and B) moving the devel/py-pyasn1 dependency under that option in addition to the security/py-gssapi dependency. As an aside, if base is built WITHOUT_KERBEROS, a GSSAPI feature can still be satisfied in general via ports using GSSAPI_HEIMDAL or GSSAPI_MIT. As far as I know, it is still up to the base builder to coordinate with the ports builder to ensure that the options each employs are compatible.
Confirming its an optional dependency: extras_require = { "gssapi": [ "pyasn1>=0.1.7", 'gssapi>=1.4.1;platform_system!="Windows"', [1] https://github.com/paramiko/paramiko/blob/2.11.0/setup.py#L37
(In reply to John W. O'Brien from comment #2) You are right. Checking /usr/ports/Mk there is /usr/ports/Mk/Uses/gssapi.mk which handles these cases including the installed ports. So a GSSAPI option is the correct path.
Created attachment 234398 [details] disable gssapi build dependency by default
Hi, Thanks for noticing that, can you confirm me the following patch in attachment is fixing your issue when building security/py-paramiko without Kerberos support in base? The patch conditionally add the gssapi to the build dependencies only if the GSSAPI option is enabled. It's disabled by default to keep the same behaviour
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=9acae4e20c4b09ee0c35edc0db44c4ecc616ba7c commit 9acae4e20c4b09ee0c35edc0db44c4ecc616ba7c Author: Sofian Brabez <sbz@FreeBSD.org> AuthorDate: 2022-06-02 21:22:24 +0000 Commit: Sofian Brabez <sbz@FreeBSD.org> CommitDate: 2022-06-08 17:10:54 +0000 security/py-paramiko: add GSSAPI option GSSAPI is considered as an extra feature in paramiko. Building support for it requires to have Kerberos (either MIT or Heimdal). Add support for it as an OPTION disabled by default. PR: 264136 security/py-paramiko/Makefile | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-)
No feedback from report. Fix was committed.