Changes for version v0.13.0 - 2026-08-04

  • BREAKING: Removed component method promotion (the 'promote' key in a components-block entry). Per spec V3, an added component's methods are reachable only through the object the component itself returns ($concierge->{$compName} / $concierge->$compName()), never merged into the concierge's own method namespace. No automatic access is provided in either direction between added components and Concierge's core objects ($desk, $concierge, $auth, $sessions, $users, $user, $session); the application is responsible for passing whatever arguments a component's methods need.
  • Added $user-level mirror methods verify_password(), reset_password(), and logout(), delegating to the same closures used internally. logout() clears the user object's session and credential-checking closures on success (self-cleanup), and capability-bearing mirror methods are gated by a live session-validity check (_session_valid()/_session_ok()) so a second, stale $user instance can no longer mutate data after another instance has logged out.

Modules

Extensible service layer that manages the relationship between an application and its users.
Contract documentation for additional Concierge desk components
Stand-in that defers a 'defer' component's real construction until first use
One-time desk creation and configuration for Concierge
Stand-in substituted for a failed optional Concierge desk component
User object enabled by Concierge