Skip to content

Version 0.6.0

Latest

Choose a tag to compare

@dunglas dunglas released this 07 Oct 21:20
Immutable release. Only release title and notes can be modified.
v0.6.0
e86e8ef
  • Default protocol_version to 1.0 now that Mercure hub 1.0 is stable; set protocol_version: 0.x to keep talking to a 0.x hub. Hubs relying on the default now use the __Secure-mercure_access_token cookie name (mercure_access_token when kernel.debug is enabled, as browsers drop __Secure- cookies over plain HTTP; it matches the hub's playground default), and jwt.secret hubs must define the iss, sub and client_id claims in jwt.claims or the container fails to compile
  • protocol_version also accepts ProtocolVersion enum cases
  • Add the http_client per-hub option, to publish through a dedicated HTTP client service (e.g. a scoped client with a short timeout)
  • Make RemoteHubInterface autowirable, globally for a remote default hub and per hub through named arguments (e.g. RemoteHubInterface $fooHub)
  • Allow symfony/mercure ^0.9
  • BC break: Stop registering the legacy Publisher / PublisherInterface / TraceablePublisher services and aliases, and the StaticJwtProvider service (mercure.hub.*.jwt_provider). Apps must use Hub / HubInterface / TraceableHub and StaticTokenProvider (mercure.hub.*.jwt.provider) instead. This removes the symfony/mercure 0.5 deprecations that were triggered on every container boot even when the Hub API was used exclusively (#121)
  • BC break: Remove MercureDataCollector::getPublishers() (deprecated since 0.3 in favor of getHubs())
  • Pick between Hub and FrankenPhpHub at runtime, through a factory, instead of guessing at container build time: an empty url (an unset or empty MERCURE_URL, which is all Docker Compose can express) now reliably selects FrankenPHP's built-in Mercure hub, which is also autowirable through HubInterface like any other hub. url and public_url both default to null unconditionally
  • Add the publisher and subscriber per-hub options, an alternative to jwt to sign publisher and subscriber tokens with different keys
  • Fix a default_hub naming an undefined hub failing with a TypeError instead of a configuration error
  • Fix the profiler's TraceableHub keeping the messages of previous requests in long-running processes (e.g. FrankenPHP's worker mode)