v0.4.0
Added
- The web UI's authentication config is now served at runtime from
GET /config.json, sourced fromauth.issuer,auth.client_id, andauth.audiencein~/.pvdata.toml. The published Docker image works for any OIDC tenant without rebuilding — drop in your config and restart.
Changed
- Authentication is now provider-agnostic. The backend reads
auth.issuer,auth.jwks_url, andauth.audienceinstead ofauth.domain/auth.client_id, so Auth0, Zitadel, Keycloak, or any standards-compliant OIDC provider works with the same binary. Migration: existing deployments usingauth.domain/auth.client_idneed to update to the new keys. - The Docker image now builds the Vue UI as part of the image build, so the published
pennyvault/pvdatano longer ships with broken asset references.
Fixed
pvdata serveno longer hangs on shutdown when SSE clients (run-event streams, data-quality run streams) are connected or when a subscription is in-flight. Shutdown is now bounded to roughly 45 seconds worst-case.
Full changelog: v0.3.0...v0.4.0