Remove beaker dependency, switch to Pyramid SignedCookieSessionFactory

Replace server-side session backends (redis, file, database, memcached)
with client-side signed cookie sessions. Users will need to
re-authenticate after deploy.

- Rewrite rc_beaker.py to use pyramid.session.SignedCookieSessionFactory
- Gut user_sessions.py to cookie-only stub
- Drop beaker.container from memory_lru_dict.py (pure repoze.lru)
- Migrate ini configs from beaker.session.* to session.* namespace
- Remove beaker==1.13.0 from requirements.txt
- Remove beaker.backends entry points from pyproject.toml
- Preserve backward-compat fallbacks for encryption key resolution
This commit is contained in:
russell@unturf.com 2026-02-19 15:26:24 -05:00
parent ceb23e4d47
commit 4f73837822
20 changed files with 125 additions and 574 deletions

View file

@ -294,7 +294,7 @@ def cleanup_sessions(request, apiuser, older_then=Optional(60)):
older_than_seconds = 60 * 60 * 24 * older_then
config = system_info.rhodecode_config().get_value()["value"]["config"]
session_model = user_sessions.get_session_handler(config.get("beaker.session.type", "memory"))(config)
session_model = user_sessions.get_session_handler("cookie")(config)
backend = session_model.SESSION_TYPE
try: