kaya-oidc 0.0.6 namespaces its session state per provider as
oidc:{provider}:user (the default provider is "default", so the key is
oidc:default:user). The unprefixed oidc_user key is no longer written:
left unadapted, every websocket upgrade would be rejected with 401 and
traced requests would silently lose their user.id attribute. Adopt it
with a session_user helper on tavolo.platform.auth that finds any
provider's user, used by both get_ws_user and telemetry's
session_tag_hook. Websocket and route handlers keep their signatures.
kaya-otel 0.0.6 only enriches websocket spans with standard URL, network
and peer attributes (plus error.type), which needs no application change.
Regenerate the lock: the eight kaya pins move to 0.0.6 and, the wheels'
declared metadata being unchanged, nothing else moves. tavolo-platform
now floors kaya-core>=0.0.6 (it reads the new session layout) and
tavolo-app floors kaya-otel>=0.0.6.
As kaya documents, the session-key move signs existing logged-in users
out once; they simply log in again.
51 lines
1007 B
TOML
51 lines
1007 B
TOML
[build-system]
|
|
requires = ["setuptools>=68"]
|
|
build-backend = "setuptools.build_meta"
|
|
|
|
[project]
|
|
name = "tavolo-app"
|
|
version = "0.1.0"
|
|
description = "Tavolo multiplayer card-game application: platform + scopone game wiring"
|
|
readme = "README.md"
|
|
requires-python = ">=3.10"
|
|
dependencies = [
|
|
"tavolo-platform",
|
|
"tavolo-scopone",
|
|
"kaya-core",
|
|
"kaya-cors",
|
|
"kaya-session",
|
|
"kaya-session-redis",
|
|
"kaya-oidc",
|
|
"kaya-openapi",
|
|
"kaya-rsgi",
|
|
"granian>=2.0",
|
|
"asyncpg",
|
|
"aerich",
|
|
"httpx",
|
|
"PyJWT[crypto]",
|
|
"pwo",
|
|
"PyYAML",
|
|
"redis",
|
|
]
|
|
|
|
[project.optional-dependencies]
|
|
dev = [
|
|
"mypy",
|
|
"httpx-ws",
|
|
]
|
|
otel = [
|
|
"kaya-otel>=0.0.6",
|
|
"opentelemetry-instrumentation-asyncpg>=0.66b0",
|
|
"opentelemetry-instrumentation-redis>=0.66b0",
|
|
"opentelemetry-instrumentation-system-metrics>=0.66b0",
|
|
]
|
|
|
|
[tool.setuptools.packages.find]
|
|
where = ["src"]
|
|
namespaces = true
|
|
|
|
[tool.mypy]
|
|
python_version = "3.12"
|
|
ignore_missing_imports = true
|
|
plugins = []
|