Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Http Cache Laravel Package

friendsofsymfony/http-cache

PHP library to integrate apps with HTTP caching proxies (Varnish, NGINX, Symfony HttpCache, Fastly, Cloudflare). Send efficient cache invalidation/purge and tag requests, abstract proxy features, and test caching/invalidation with PHPUnit tools.

View on GitHub
Deep Wiki
Context7
3.2.0
  • Added support for prefix invalidation, a special case of banning for cloudflare enterprise.
3.1.2
  • Compatible with Symfony 8.
  • Testing with PHP 8.5.
3.1.1

Varnish Cache

  • Fixed banPath to escape array of host names to be a correct regular expression.
2.16.2

Fixed

  • The new EventDispatchingHttpCache::forward method added in 2.16.0 was not compatible with Symfony 4.4. Adjusted the signature to make it compatible.
2.16.1

(Mistake, same as 2.16.0)

3.1.0

Symfony HttpCache

  • Add events PRE_FORWARD and POST_FORWARD to allow event listeners to alter the request before and after it is sent to the backend.
  • Changed CustomTtlListener to use the POST_FORWARD event instead of PRE_STORE. Using PRE_STORE, requests that are not considered cacheable by Symfony were never cached, even when they had a custom TTL header.
  • Add flag fallbackToSmaxage to CustomTtlListener to allow controlling fallback to s-maxage if custom TTL header is not defined on the response.
  • Fix: Do not call store if Response object is not longer cacheable after event listeners. If you use the custom TTL system, this is only a performance improvement, because the TTL of the response would still be 0. With a custom listener that changes the response explicitly to not be cached but does not change s-maxage, this bug might have led to caching responses that should not have been cached.
2.16.0

Symfony HttpCache

  • Add events PRE_FORWARD and POST_FORWARD to allow event listeners to alter the request before and after it is sent to the backend.
  • Changed CustomTtlListener to use the POST_FORWARD event instead of PRE_STORE. Using PRE_STORE, requests that are not considered cacheable by Symfony were never cached, even when they had a custom TTL header.
  • Add flag fallbackToSmaxage to CustomTtlListener to allow controlling fallback to s-maxage if custom TTL header is not defined on the response.
  • Fix: Do not call store if Response object is not longer cacheable after event listeners. If you use the custom TTL system, this is only a performance improvement, because the TTL of the response would still be 0. With a custom listener that changes the response explicitly to not be cached but does not change s-maxage, this bug might have led to caching responses that should not have been cached.
3.0.0
  • Support Symfony 7
  • Drop support for Symfony < 6.4
  • Test with PHP 8.2 and 8.3
  • Drop support for PHP < 8.1
  • Switched to PSR-17 message factories
  • Switched some places to PSR-18 HTTP client. The main functionality needs the Httplug Async Client specification. There is no PSR for asynchronous clients.
  • Parameter and return type declarations where possible.
  • Ignore empty tag lists passed to TagCapable::invalidateTags so you don't need to check if there are tags or not.
2.15.3
  • Avoid deprecated RequestMatcher in favor of IpsRequestMatcher.
2.15.2
  • Declare incompatibility with Symfony 7 because it removes RequestMatcher.
2.15.1
  • Directly require php-http/message-factory to keep working with the legacy factories.
2.15.0
  • Provide a TagHeaderParser that can split up a tag header into the list of tags. This allows to correctly handle non-default tag separators in all places.
2.14.2
  • Fixed varnish configuration examples to say Authorization and not Autorization.
2.14.1
  • Fixed dummy interface name for code scanners to match the expected name.
2.14.0

Symfony Compatibility

  • Removed the internal BaseEvent class and extend our events from the Symfony contracts class directly.
  • Made the CacheInvalidation interface compatible with Symfony 6. Symfony 6 does a BC break for HttpKernelInterface::fetch - if you implement the method in your application, you need to adjust when upgrading to Symfony 6.
2.12.1

Symfony Compatibility

  • Do not extend the wrong Event class when installed with legacy Symfony but the Symfony contracts happen to be installed
2.13.0
  • Allow installation with Symfony 6 components
  • Drop support for Symfony 3, minimal version is now 4.3
2.12.0

Cloudflare

  • Added Cloudflare ProxyClient Adapter with ClearCapable, PurgeCapable and TagCapable. This allows to use FOSHttpCache to invalidate caches on Cloudflare. See the "Proxy Client" section of the documentation for how to configure the Cloudflare client.

Varnish Cache

  • Added a fos_user_context_hash method to be called in vcl_hash when using the user context hash mechanism. This can avoid performance problems Varnish can run into when the hash Varys on the basic authentication or session cookie. If you use the user context, read the updated documentation and call fos_user_context_hash in your vcl_hash function.

Noop Client

  • Implemented ClearCapable.
2.11.0

Symfony HttpCache

  • Added flag on CustomTtlListener to allow keeping the custom TTL header on the response

Fastly client

  • Marked the [@internal](https://github.com/internal) constants in FOS\HttpCache\ProxyClient\Fastly as private
2.10.1

HttpDispatcher

  • Fix how we create exceptions to get the expected exception rather than a PHP error
2.10.0

General

  • Raised minimal PHP version to 7.2
  • Added support for PHP 8.0

Symfony HttpCache

  • Added a neutral "Bad Request" body to user hash mismatch response to have something searchable in the code when debugging.
1.4.6

Symfony HttpCache

  • Added a neutral "Bad Request" body to user hash mismatch response to have something searchable in the code when debugging.
2.9.2

Proxy Client

  • Fix: Preserve inline credentials when multiplexing to the proxy servers.
2.9.1

Proxy Client

2.9.0

General

  • Added support for the fastly caching service
  • Raised minimal PHP version to 7.1
  • Test helper classes upgraded to support PHPUnit 7/8

Symfony HttpCache

  • Fixed issue with PurgeTagsListener and Symfony 5
  • Fixed clearing the cache completely together with toflar psr6 store did not work
2.8.0
  • Support Symfony 5
  • Use LegacyEventDispatcherProxy for Symfony >= 4.3 to avoid deprecation messages.
2.7.0

Symfony HttpCache

  • Added request type to the CacheEvent.
2.6.0
  • Added: ClearCapable to clear the whole cache in one efficient call. Currently supported only by the Symfony HttpCache.
  • Allow installing with Httplug 2.0 / PSR-18.
2.5.4

Symfony HttpCache

  • Fixed: Avoid regression of 2.5.3: If there are no messages to be dispatched, do not throw an exception if the HttpCache is not set.
2.5.3

Symfony HttpCache

  • Fixed: Handle HttpCache not available in KernelDispatcher and fix return type annotations - if HttpCache is not set, it can't be returned.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
terminal42/code-quality-tools
codifyo/ts-generator-bundle
andydefer/laravel-cluster
testo/fiber
mintobit/jobqueue
a4sex/maintenance-bundle
a4sex/entity-date-update
a4sex/client-identifier
a4sex/base-utilites
a4sex/key-value-storage
a4sex/micro-status
chilldev/dependency-injection-extra
datinglibre/datinglibre-app-api
biberltd/corebundle
bricre/symfony-bundle-test
biberltd/logbundle
dominium/http-adapter-bundle
dominium/google-analytics
a4sex/auto-clean-entity
christhompsontldr/laravel-inky