Skip to content

LiteMage 2.2.6: Security Hardening and Magento 2.4.6 Compatibility

Choose a tag to compare

@litespeedtech litespeedtech released this 29 May 20:12
· 2 commits to master since this release

Security

  • Hardened ESI block and shell purge entry points with signed request tokens; shell purge tokens expire.
  • Added request validation for ESI block names, encoded layout handles, shell purge timestamps, and nonces.
  • Stopped trusting client-forwarded LiteMage and debug headers for runtime module enablement and debug IP matching.

Added

  • Added support for cacheable HTTP 201 responses, including Cloudflare-protected CLI purge responses. Thanks @martinstoehr.
  • Added an automatic purge-all hook when themes are assigned to stores.

Changed

  • Modernized frontend and shell controllers for current Magento action interfaces and raw result responses.
  • Switched CLI purge requests to Magento's framework Curl client with signed URLs, explicit batch flushing, host-header support, basic-auth handling, and improved response logging.
  • Returned explicit success codes from LiteMage CLI commands for Magento 2.4.6+ console compatibility. Thanks @martinstoehr.
  • Split LiteMage tag headers by value length so large identity-tag sets are emitted across multiple headers instead of being truncated.
  • Switched custom vary refresh to a GET JSON endpoint with no-store response headers.
  • Marked generated ESI includes as no-vary and skipped custom-vary refresh checks for ESI requests.
  • Improved admin LiteMage statistics parsing and output escaping.
  • Preserved required customer login and customer group vary context from bypass configuration.

Fixed

  • Corrected after-order product purge selection for parent and child product cases.
  • Flushed final partial CLI purge batches immediately instead of relying on object destruction. Thanks @martinstoehr.
  • Fix Symfony Console 6.1+ execute()/configure() signature incompatibility.