2.0.0-alpha1
Pre-release
Pre-release
PHP
- Raised minimum PHP version to 5.5.
HTTP
- BC break: Replaced hard coupling on Guzzle HTTP client with HTTPlug.
You now need to explicitly specify a supported HTTP adapter in composer.json;
see installation instructions. - BC break: Separated the HttpDispatcher from the proxy clients. All
existing clients still use HTTP to send invalidation requests. - Added support and documentation for setting a custom TTL specifically for the
caching proxy.
Logging
- BC break: Renamed the log event listener from
LogSubscriberto
LogListener.
Tagging
- BC break: Moved tag invalidation to
CacheInvalidator, and renamed
TagHandlertoResponseTagger. - Abstracting tags by adding new
TagsInterfacefor ProxyClients. - Added
strictoption toResponseTaggerthat throws an exception when empty
tags are added. By default, empty tags are ignored.
Varnish
- Varnish configuration are now files that you can directly include from your
.vcl and call custom functions to avoid copy-pasting VCL code. - Added support for and changed default to Varnish version 5.
- Moved Varnish 4 and 5 configuration files from
resources/config/varnish-4/
toresources/config/varnish/. - Changed default Varnish version to 5.
- Removed special case for anonymous users in user context behaviour. Varnish
now does a hash lookup for anonymous users as well.
NGINX
- The NGINX purge location is no longer passed as constructor argument but by
callingsetPurgeLocation().
Symfony HttpCache
- BC break: Renamed all event listeners to
XxListenerinstead of
XxSubscriber. - BC break: Constructors for
PurgeListenerandRefreshListenernow use
an options array for customization. - BC break: Converted abstract event dispatching kernel class
EventDispatchingHttpCacheto a trait, which now provides theaddSubscriber
andaddListenermethods. In yourAppCache, replace
AppCache extends EventDispatchingHttpInterfacewith a
use EventDispatchingHttpCache;statement. - The user context by default does not use a hardcoded hash for anonymous users
but does a hash lookup. You can still configure a hardcoded hash.
Testing
- BC break: Refactored the proxy client test system into traits. Removed
ProxyTestCase; use the traitsCacheAssertionsandHttpCallerinstead. - Added HTTP method parameter to
HttpCaller::getResponse().