Revision history for POE-Component-Server-JSONUnix

0.2.0   2026-08-02/22:30
        - Add kernel peer-credential authentication. On Linux (SO_PEERCRED),
          FreeBSD/DragonFly/macOS (LOCAL_PEERCRED), NetBSD, and OpenBSD the
          server reads the peer's UID/GID straight from the socket, so a
          client can authenticate with no cookie file: auth_start advertises
          'peercred', and auth_verify called with no path succeeds. Controlled
          by the new 'auth_method' spawn argument ('auto' (default), 'peercred',
          or 'cookie'); 'auto' falls back to the cookie challenge where the
          platform has no support. Wire-compatible: existing cookie-based
          clients are unaffected.
        - Add the peer_uid/peer_gid context accessors, populated from connect
          time on supported platforms independent of any handshake.
        - Client and BlockingClient authenticate() now use the peercred path
          automatically whenever the server offers it, creating no file.

0.1.0   2026-07-21/20:30
        - Add Unix-ownership authentication: auth_start/auth_verify built-in
          commands, the auth_required and auth_temp_dir spawn arguments, and
          the authenticated/uid/username context accessors.
        - Add POE::Component::Server::JSONUnix::Client, a POE-based client
          with request/response correlation, callback and event dispatch,
          per-request timeouts, and support for the auth handshake.
        - Add POE::Component::Server::JSONUnix::BlockingClient, a simple
          blocking (non-POE) client with the same auth support.
        - Add an optional user/group permission system via the 'permissions'
          spawn argument: per-command allow/deny rules by user or group
          (resolved through NSS, secondary groups included, cached per
          connection), machine-readable 'code' fields on refusals, and the
          groups/in_group/may context accessors. A '%DEFAULT%' entry under
          permissions commands supplies a full fallback rule for commands
          without one of their own. Without the argument the server behaves
          exactly as before.

0.0.1   2026-06-21/04:30
        - Initial release.

