git: dfd76d00018c - main - www/lua-resty-session3: port sticking to version 3
Date: Wed, 18 Sep 2024 16:02:50 UTC
The branch main has been updated by netchild:
URL: https://cgit.FreeBSD.org/ports/commit/?id=dfd76d00018cdfd270368acba037c9811ebd8b51
commit dfd76d00018cdfd270368acba037c9811ebd8b51
Author: Baptiste Grenier <baptiste@bapt.name>
AuthorDate: 2024-08-30 20:12:38 +0000
Commit: Alexander Leidinger <netchild@FreeBSD.org>
CommitDate: 2024-09-18 16:02:45 +0000
www/lua-resty-session3: port sticking to version 3
This is based upon www/lua-resty-session (v4), but is needed for
lua-resty-openidc.
The version 3.x is pinned in the lua-resty-openidc dependencies:
https://github.com/zmartzone/lua-resty-openidc/blob/9f3a4fcade930f6f38ee0cb43cabf50cebffbcc9/lua-resty-openidc-1.7.6-3.rockspec#L27
There is apparently currently no clear plan on when/if lua-resty-openidc
will be updated to include changes for lua-resty-session 4.X, see
discussions on
https://github.com/zmartzone/lua-resty-openidc/issues/480
Additionally to what the author submitted some changes by me:
- add conflicts with www/lua-resty-session
- give up maintainership of www/lua-resty-session
PR: 281142
---
www/Makefile | 1 +
www/lua-resty-session/Makefile | 5 +++-
www/lua-resty-session3/Makefile | 60 ++++++++++++++++++++++++++++++++++++++++
www/lua-resty-session3/distinfo | 3 ++
www/lua-resty-session3/pkg-descr | 8 ++++++
5 files changed, 76 insertions(+), 1 deletion(-)
diff --git a/www/Makefile b/www/Makefile
index 4c6716d695e9..55b17bc10a45 100644
--- a/www/Makefile
+++ b/www/Makefile
@@ -336,6 +336,7 @@
SUBDIR += lua-resty-http
SUBDIR += lua-resty-lrucache
SUBDIR += lua-resty-session
+ SUBDIR += lua-resty-session3
SUBDIR += luakit
SUBDIR += luakit-devel
SUBDIR += lux
diff --git a/www/lua-resty-session/Makefile b/www/lua-resty-session/Makefile
index 79467f829c00..805670eb2db7 100644
--- a/www/lua-resty-session/Makefile
+++ b/www/lua-resty-session/Makefile
@@ -1,9 +1,10 @@
PORTNAME= lua-resty-session
+PORTREVISION= 1
DISTVERSIONPREFIX=v
DISTVERSION= 4.0.5
CATEGORIES= www
-MAINTAINER= netchild@FreeBSD.org
+MAINTAINER= ports@FreeBSD.org
COMMENT= Lua session library for OpenResty / ngx_lua
WWW= https://github.com/bungle/lua-resty-session
@@ -13,6 +14,8 @@ LICENSE_FILE= ${WRKSRC}/LICENSE
RUN_DEPENDS= luajit-openresty>=2.1:lang/luajit-openresty
# XXX: deps for filesystem, postgres, redis backends missing
+CONFLICTS_INSTALL= lua-resty-session-3*
+
USE_GITHUB= yes
GH_ACCOUNT= bungle
diff --git a/www/lua-resty-session3/Makefile b/www/lua-resty-session3/Makefile
new file mode 100644
index 000000000000..0d058fb59bac
--- /dev/null
+++ b/www/lua-resty-session3/Makefile
@@ -0,0 +1,60 @@
+PORTNAME= lua-resty-session
+DISTVERSIONPREFIX=v
+DISTVERSION= 3.10
+CATEGORIES= www
+
+MAINTAINER= baptiste@bapt.name
+COMMENT= Lua session library for OpenResty / ngx_lua Version 3.x
+WWW= https://github.com/bungle/lua-resty-session
+
+LICENSE= BSD2CLAUSE
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+RUN_DEPENDS= luajit-openresty>=2.1:lang/luajit-openresty
+# XXX: deps for filesystem, postgres, redis backends missing
+
+CONFLICTS_INSTALL= lua-resty-session-4*
+
+USE_GITHUB= yes
+GH_ACCOUNT= bungle
+
+NO_ARCH= yes
+NO_BUILD= yes
+
+LUA_MODSHAREDIR=${LOCALBASE}/share/lua/5.1
+
+PLIST_FILES+= ${LUA_MODSHAREDIR}/resty/session.lua \
+ ${LUA_MODSHAREDIR}/resty/session/ciphers/aes.lua \
+ ${LUA_MODSHAREDIR}/resty/session/ciphers/none.lua \
+ ${LUA_MODSHAREDIR}/resty/session/compressors/none.lua \
+ ${LUA_MODSHAREDIR}/resty/session/compressors/zlib.lua \
+ ${LUA_MODSHAREDIR}/resty/session/encoders/base16.lua \
+ ${LUA_MODSHAREDIR}/resty/session/encoders/base64.lua \
+ ${LUA_MODSHAREDIR}/resty/session/encoders/hex.lua \
+ ${LUA_MODSHAREDIR}/resty/session/hmac/sha1.lua \
+ ${LUA_MODSHAREDIR}/resty/session/identifiers/random.lua \
+ ${LUA_MODSHAREDIR}/resty/session/serializers/json.lua \
+ ${LUA_MODSHAREDIR}/resty/session/storage/cookie.lua \
+ ${LUA_MODSHAREDIR}/resty/session/storage/dshm.lua \
+ ${LUA_MODSHAREDIR}/resty/session/storage/memcache.lua \
+ ${LUA_MODSHAREDIR}/resty/session/storage/memcached.lua \
+ ${LUA_MODSHAREDIR}/resty/session/storage/redis.lua \
+ ${LUA_MODSHAREDIR}/resty/session/storage/shm.lua \
+ ${LUA_MODSHAREDIR}/resty/session/strategies/default.lua \
+ ${LUA_MODSHAREDIR}/resty/session/strategies/regenerate.lua
+
+PORTDOCS= README.md
+
+DOCSDIR= ${PREFIX}/share/doc/lua${LUA_VER_STR}/${PORTNAME}
+
+OPTIONS_DEFINE= DOCS
+
+do-install:
+ @${MKDIR} ${STAGEDIR}${LUA_MODSHAREDIR}
+ @(cd ${WRKSRC}/lib && ${COPYTREE_SHARE} . ${STAGEDIR}${LUA_MODSHAREDIR} "-name *\.lua")
+
+do-install-DOCS-on:
+ @${MKDIR} ${STAGEDIR}${DOCSDIR}
+ @${INSTALL_DATA} ${WRKSRC}/README.md ${STAGEDIR}${DOCSDIR}
+
+.include <bsd.port.mk>
diff --git a/www/lua-resty-session3/distinfo b/www/lua-resty-session3/distinfo
new file mode 100644
index 000000000000..78c09b6dfda3
--- /dev/null
+++ b/www/lua-resty-session3/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1725035042
+SHA256 (bungle-lua-resty-session-v3.10_GH0.tar.gz) = 89ac564760d6a870b12f694dd23f123f8e2d5425c297bc10a8f1738528ec9bce
+SIZE (bungle-lua-resty-session-v3.10_GH0.tar.gz) = 32125
diff --git a/www/lua-resty-session3/pkg-descr b/www/lua-resty-session3/pkg-descr
new file mode 100644
index 000000000000..2bb13b386f5f
--- /dev/null
+++ b/www/lua-resty-session3/pkg-descr
@@ -0,0 +1,8 @@
+Lua session library for OpenResty / ngx_lua
+
+Features:
+ - Sessions are immutable (each save generates a new session), and lockless.
+ - Session data is AES-256-GCM encrypted with a key derived using HKDF-SHA256.
+ - Session has a fixed size header that is protected with HMAC-SHA256 MAC with a key derived using HKDF-SHA256.
+ - Session data can be stored in a stateless cookie or in various backend storages.
+ - A single session cookie can maintain multiple sessions across different audiences.