git: 1bf5534647d9 - 2026Q3 - security/py-social-auth-core4: New port

From: Kai Knoblich <kai_at_FreeBSD.org>
Date: Fri, 31 Jul 2026 17:01:50 UTC
The branch 2026Q3 has been updated by kai:

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

commit 1bf5534647d9a8b8ddf3961d1a1567c96b91011a
Author:     Kai Knoblich <kai@FreeBSD.org>
AuthorDate: 2026-07-31 07:15:25 +0000
Commit:     Kai Knoblich <kai@FreeBSD.org>
CommitDate: 2026-07-31 16:56:37 +0000

    security/py-social-auth-core4: New port
    
    This is the core component of the python-social-auth ecosystem, it
    implements the common interface to define new authentication backends
    to third parties services, implement integrations with web frameworks
    and storage solutions.
    
    PR:             297152
    (cherry picked from commit f30b3052c7cd4f71ec433ee4e037b1b78ba75266)
---
 security/Makefile                                  |  1 +
 security/py-social-auth-core/Makefile              |  2 +
 security/py-social-auth-core4/Makefile             | 49 ++++++++++++++++++++++
 security/py-social-auth-core4/distinfo             | 17 ++++++++
 .../files/patch-pyproject.toml                     | 34 +++++++++++++++
 security/py-social-auth-core4/pkg-descr            |  3 ++
 6 files changed, 106 insertions(+)

diff --git a/security/Makefile b/security/Makefile
index fc9cd64fc010..c0ef63895ea6 100644
--- a/security/Makefile
+++ b/security/Makefile
@@ -1099,6 +1099,7 @@
     SUBDIR += py-siphash24
     SUBDIR += py-slip10
     SUBDIR += py-social-auth-core
+    SUBDIR += py-social-auth-core4
     SUBDIR += py-spake2
     SUBDIR += py-ssh-audit
     SUBDIR += py-sshpubkeys
diff --git a/security/py-social-auth-core/Makefile b/security/py-social-auth-core/Makefile
index cf50cd8591c4..b7ba45aa01aa 100644
--- a/security/py-social-auth-core/Makefile
+++ b/security/py-social-auth-core/Makefile
@@ -38,6 +38,8 @@ USE_PYTHON=	autoplist cryptography pep517 pytest
 
 TEST_ENV=	PYTHONPATH=${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}
 
+CONFLICTS_INSTALL=	${PYTHON_PKGNAMEPREFIX}social-auth-core4
+
 NO_ARCH=	yes
 
 # An SHOPIFY option would still be possible as well, but the ports tree does
diff --git a/security/py-social-auth-core4/Makefile b/security/py-social-auth-core4/Makefile
new file mode 100644
index 000000000000..1a907ced051d
--- /dev/null
+++ b/security/py-social-auth-core4/Makefile
@@ -0,0 +1,49 @@
+PORTNAME=	social-auth-core
+DISTVERSION=	4.8.5
+CATEGORIES=	security www python
+MASTER_SITES=	PYPI
+PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
+PKGNAMESUFFIX=	4
+DISTNAME=	social_auth_core-${DISTVERSION}
+
+MAINTAINER=	kai@FreeBSD.org
+COMMENT=	Social authentication/registration mechanism for several frameworks
+WWW=		https://github.com/python-social-auth/social-core
+
+LICENSE=	BSD3CLAUSE
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+BUILD_DEPENDS=	${PYTHON_PKGNAMEPREFIX}setuptools>=63.1.0:devel/py-setuptools@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR}
+RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}defusedxml>=0.7.1:devel/py-defusedxml@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}python3-openid>=3.2.0:security/py-python3-openid@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}pyjwt>=2.11.0:www/py-pyjwt@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}oauthlib>=3.3.1:security/py-oauthlib@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}requests>=2.32.5:www/py-requests@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}requests-oauthlib>=2.0.0:www/py-requests-oauthlib@${PY_FLAVOR}
+TEST_DEPENDS=	${PYTHON_PKGNAMEPREFIX}responses>=0.25.0:devel/py-responses@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}typing-extensions>0:devel/py-typing-extensions@${PY_FLAVOR}
+
+USES=		python
+USE_PYTHON=	autoplist cryptography pep517 pytest
+
+TEST_ENV=	PYTHONPATH=${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}
+
+CONFLICTS_INSTALL=	${PYTHON_PKGNAMEPREFIX}social-auth-core
+
+NO_ARCH=	yes
+
+PORTSCOUT=	ignore:1
+
+# An SHOPIFY option would still be possible as well, but the ports tree does
+# not yet have all the required dependencies for this.
+OPTIONS_DEFINE=		GOOGLE-ONETAP SAML
+OPTIONS_DEFAULT=	GOOGLE-ONETAP SAML
+
+GOOGLE-ONETAP_DESC=	Google One Tap support
+SAML_DESC?=	SAML Support
+
+GOOGLE-ONETAP_RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}google-auth>=2.40.0<3:security/py-google-auth@${PY_FLAVOR}
+SAML_RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}python3-saml>=1.16.0:security/py-python3-saml@${PY_FLAVOR}
+
+.include <bsd.port.mk>
diff --git a/security/py-social-auth-core4/distinfo b/security/py-social-auth-core4/distinfo
new file mode 100644
index 000000000000..46f3bf576bf1
--- /dev/null
+++ b/security/py-social-auth-core4/distinfo
@@ -0,0 +1,17 @@
+TIMESTAMP = 1782967104
+SHA256 (social_auth_core-4.8.5.tar.gz) = fd10d44bff681a128d127f665f203c496658d5bbfc993ad1b5bbaed589eab573
+SIZE (social_auth_core-4.8.5.tar.gz) = 244501
+SHA256 (44f15058c0b030b4f6212033f7db275739c86078.patch) = 23130d67ef1882e1afc15e79f5c857ac618c79b1a5bb7f63a1a2d6351f64faf3
+SIZE (44f15058c0b030b4f6212033f7db275739c86078.patch) = 726
+SHA256 (57105742439f046270c9dc404020620a5d4d7cdd.patch) = 86db8a3e5be4544f11b59cb3d907339c76a130da29aedaed893c6224183a60a6
+SIZE (57105742439f046270c9dc404020620a5d4d7cdd.patch) = 729
+SHA256 (6496d8dd88ab99017dbe64f65b0058fd21e1bc90.patch) = f43e4c30a105f6f97dd31758d66aa96f57d9ea33cc9331397c7c065f93850ef0
+SIZE (6496d8dd88ab99017dbe64f65b0058fd21e1bc90.patch) = 728
+SHA256 (9725f8f306beedc31062bfde359239740713f271.patch) = f91cba12a9a347c7a7f0135e83905682a1229964ec136aaf9410b3913b3e3b1f
+SIZE (9725f8f306beedc31062bfde359239740713f271.patch) = 728
+SHA256 (d447bd570e25b0a20ebc4687f48ca4d60718fafc.patch) = 175b2ad1e5609def192833c0eef0d5be89b13bf525b9f66c28ef82fe3e64301c
+SIZE (d447bd570e25b0a20ebc4687f48ca4d60718fafc.patch) = 727
+SHA256 (4188a5f03e274b76adf58d7b45ef8a45f8ddb7fa.patch) = 229e7617e5ada54429b9b4768cb0894fce5678e172ab24164efb1a488f71f0f5
+SIZE (4188a5f03e274b76adf58d7b45ef8a45f8ddb7fa.patch) = 729
+SHA256 (acf7394ecbe33e49b278fd1faf35eaf655af24f6.patch) = 9aaf35d1a445c164c3f4a00d8b898bc0a5005359a5b00d5500e2c129fbb88cbf
+SIZE (acf7394ecbe33e49b278fd1faf35eaf655af24f6.patch) = 729
diff --git a/security/py-social-auth-core4/files/patch-pyproject.toml b/security/py-social-auth-core4/files/patch-pyproject.toml
new file mode 100644
index 000000000000..56d971abd661
--- /dev/null
+++ b/security/py-social-auth-core4/files/patch-pyproject.toml
@@ -0,0 +1,34 @@
+* Relax version requirements for py-setuptools and enable build for
+  older versions of it
+
+* Also relax version requirements for py-google-auth.
+
+--- pyproject.toml.orig	2026-02-10 09:05:58 UTC
++++ pyproject.toml
+@@ -1,6 +1,6 @@ build-backend = "setuptools.build_meta"
+ [build-system]
+ build-backend = "setuptools.build_meta"
+-requires = ["setuptools>=78.0.2"]
++requires = ["setuptools>=63.1.0"]
+ 
+ [dependency-groups]
+ dev = [
+@@ -54,8 +54,7 @@ keywords = ["oauth", "openid", "saml", "social auth"]
+ ]
+ description = "Python social authentication made simple."
+ keywords = ["oauth", "openid", "saml", "social auth"]
+-license = "BSD-3-Clause"
+-license-files = ["LICENSE"]
++license = { text="BSD-3-Clause" }
+ name = "social-auth-core"
+ readme = "README.md"
+ requires-python = ">=3.10"
+@@ -95,7 +94,7 @@ google-onetap = [
+   "types-requests==2.32.4.20260107"
+ ]
+ google-onetap = [
+-  "google-auth>=2.40.0,<2.49"
++  "google-auth>=2.40.0,<3"
+ ]
+ saml = [
+   "python3-saml>=1.16.0"
diff --git a/security/py-social-auth-core4/pkg-descr b/security/py-social-auth-core4/pkg-descr
new file mode 100644
index 000000000000..3ea335ec38e1
--- /dev/null
+++ b/security/py-social-auth-core4/pkg-descr
@@ -0,0 +1,3 @@
+This is the core component of the python-social-auth ecosystem, it implements
+the common interface to define new authentication backends to third parties
+services, implement integrations with web frameworks and storage solutions.