- Allow URL encoded params to be filtered out by configuration from admin fastly#594
- Fix blocking issues on php 8.0 and up. fastly#582
- Add option to serve 404s on nonexistent images instead of placeholders fastly#597
- Update to the Netacea integration module fastly#593
- Add ability to remove the custom 5xx page fastly#592
- Add check for identities type fastly#587
- Add geolocation origin website matching fastly#581
- Update WAF to WAF2020 fastly#578
- Response Plugin fixes fastly#577
- Custom snippet duplicate warning fastly#579
- Additional fix for rate limiting enablement errors fastly#575
- Update DeleteCustomSnippet.php (fix to accept VCL name with underscore) fastly#574
- GeoIP fix for case when request comes for store without a trailing slash fastly#569
- When IO is enabled and image is not on the disk we will show a 404 page. This was changed in 1.2.184. Changes the behavior to display the image placeholder fastly#572
- Fix getImageOptimization for PHP 8.1 fastly#570
- Enabling rate limiting with no defined paths causes a 503. This fix adds a placeholder path to avoid that condition fastly#566
- GeoIP worked only with stores of the same website. This fix allows cross website. fastly#564
- Add stale-while-error to GraphQL responses fastly#563
- Fix for ratelimiting not exempting maintenance IPs from rate limiting fastly#555
- Add stale-while-revalidate to GraphQL responses fastly#561
- Fixes for PHP 8.1 issue in Rate Limiting fastly#552
- Turn of generating images that crawlers may request from cache after turning on Deep Image Optimization fastly#542
- Update Handlebars to 4.7.7 fastly#547
- Update Javascript to avoid a XSS issue fastly#545
- Revert "Improvements to custom VCL snippets upload logic" fastly#541
- Remove Pragma and Expires headers for all static/immutable objects. Helps Chrome not revalidate cached resources
- Fix deep image optimization - prevent default magento image resize fastly#534
- Improvements to custom VCL snippets upload logic fastly#530
- GeoIP Mapping Does Not Support Multi-site Instance fastly#531
- Update available Fastly Shielding POP list
- Fix setup scripts per Magento Marketplace guidelines fastly#509
- Update available Fastly Shielding POP list
- Fix for Fastly Rate Limiting - Graphql fastly#507
- Fix version compare for PHP 8.1 fastly#502
- Fix for "GetUpdateFlag call flushes all configuration" fastly#501
- Update to support PHP 8.1 fastly#500
- Update available Fastly Shielding POP list
- Update to Netacea edge module fastly#496
- Add support for PHP 8.0 fastly#495
- Added support for
Access-Control-Allow-Headers
(CORS headers Edge Module) fastly#493 - Fix IO canvas parameter fastly#490
- Do not send
override_host
if empty upon backend creation fastly#491
- Fix/gallery mixin and removed support for Magento 2.2.x fastly#481
- Apply request processing only when Fastly is enabled fastly#486
- Fix bugs in upadte backend dialog fastly#487
- Enable shielding on tester requests
- Add SiteSpect integration edge module
- Fix bug in the purging functionality. fastly#483
Due to the changes we made in 1.2.162, cache tags were not getting processed by our ResponsePlugin, causing users unable to purge contents properly using surrogate-key.
- Fix ambiguous behavior in Blocking toggle fastly#479
- ESI workaround snippet no longer required fastly#478
- Fix to avoid VCL being uploaded every time on save due to Image Optimization multi-select fastly#477
- Allow extending custom image attributes in versions < 2.4 fastly#474
- Fix type check in Image class fastly#472
- Vendor tooling was adding Authorization header to cache key hampering GraphQL caching. fastly#470
- Fix for magento/magento2#33468 fastly#469
- Update regex for basic auth block fastly#461
- Prevent PURGE requests from being blocked by custom modules fastly#467
- Fix typo in variable name fastly#464
- PWA-1832: Adding graphql caching by X-Magento-Cache-Id fastly#459
- Added country_code provider for controller fastlyCdn/geoip/getaction fastly#463
- Fixed for Adaptive Pixel Ratios for PDP fastly#457
- Don't use Basic Authentication for /graphql endpoints fastly#460
- Move shield generation to use Fastly API fastly#449
- Datadome module 2.14 update fastly#454
- Add klaviyo and emersys to tracking query arguments that need to be stripped by default fastly#453
- Add Adaptive Pixel Ratios for PDP fastly#452
- Use Fastly-Client-IP header for remote IP address fastly#430
- CORS module should return "Vary: Origin" response header fastly#442
- Update shield nodes locations fastly#441
- Due to the way Varnish handles POST bodies and cache lookups we need to rewrite all requests that have bodies into POSTs fastly#440
- Fix for PHP 7.4 and error that shows up when enabling Rate limiting fastly#431
- Fix for rate limiting methods such as POST, DELETE where Varnish rewrites them to GETs fastly#434
- Addition of PerimeterX edge module fastly#429
- Update shield list fastly#427
- Fix for "error saving in system config" fastly#426
- Products not showing on category page when Adaptive Device Pixel Ratios is enabled in versions 2.4+ fastly#418
- Allow to cache search results fastly#414
- Due to changes in Magento 2.3.5 stale-while-revalidate headers were not set for cache control fastly#421
- Upgrade to version of 2.12 of Datadome module fastly#420
- Add support for bypass secret to enable Magento Tester tool
- Make all Fastly API endpoint calls URL encoded fastly#410
- Add support for Automatic Image compression (optimize) fastly#404
- Fix for Edge Modules not updating priority of already updated modules
- Change database table type to support snippets longer than 64 kB fastly#402
- Fix for Cache Maintenance IP list throwing exceptions if .maintenance.ip is not present fastly#403
- Cache Maintenance IP list fastly#400
- Datadome Edge Module updated to 2.11 fastly#396
- New Relic logging endpoint fastly#368
- Exclude admin IPs from being rate limited on sensitive paths fastly#395
- Make sure surrogate key list is not empty before sending it to the API fastly#394
- Datadome Edge Module updated to 2.10 fastly#391
- Rate limiting may do early returns when there are multiple backends. Moving priority to address
- Datadome Edge Module updated to 2.9 fastly#387
- GEO Redirect template had an errantly placed semi-colon fastly#389
- When using GraphQL cache tags were not being shortened breaking invalidation fastly#386
- Fix for Upload VCL button is inactive if there are currently no active versions of a service fastly#388
- GeoIP redirect URLs may errantly contain a semi-colon (;) fastly#389
- Address case when user decides to remove all entries from querystring filter which may result in whole query string being removed fastly#385
- Fix for Datadome Edge Module escaping
- Update to Datadome Edge Module
- GeoIP controller may throw an unserialize error fastly#382
- Reenable clustering VCL added to the Netacea Edge module
- Update to Datadome Edge Module
- Add rate limiting to WebApi fastly#379
- Moved the Image preferences from frontend to global area, to allow use on adminhtml and cron areas too. Enable IO on sitemaps fastly#373
- Sometimes when a user removes all the edge modules from the config it results in a server error. Add fallback to avoid getting an empty object fastly#372
- Update to Datadome Edge Module fastly#371
- Improve rewrites edge module to support conditioning rewrites on host regular expressions
- Fix inability to create new backends with new conditions fastly#369
- Edge module default values in new groups do not carry over fastly#367
- Improve message format so that can more easily translated fastly#365
- Fix VCL regexes so that they don't trigger the new VCL linter warnings
- Geolocation redirect now uses plain JS instead of require.js to redirect users fastly#360
- Change all password fields for logging endpoints to be obfuscated to make it easier to troubleshoot fastly#361
- Add ability to remove backends from the UI
- VCL changes to Datadome integration edge module
- Add Netacea integration edge module
- Manually add default argument values to Config::saveConfig() to support all Magento 2.2.x versions fastly#358
- Add ability to remove backends fastly#359
- Add logging set up for S3, GCS, Honeycomb, Sumologic and Google Bigquery fastly#350
- Add ability to import configs that were previously exported
- Fix errors when adding conditions to existing backends fastly#343
- Provide logging to rate limiting
- Hide API token fastly#342
- Add Datadome integration Edge Module
- Add stripping of dm_i query arguments used by Dotdigital campaigns in order to increase cache hit ratios
- ESIs may be affected by a change in Fastly architecture where we compress ESIs on both shield and edge fastly#338
- Fix for WAF dashboard showing that WAF was enabled if there were blocking rules however WAF wasn't enabled overall.
- VCL change to cache images that are served directly from S3 and lack Cache-Control headers
- Fix for setup:di:compile issue fastly#334
- Move Import/Export menu under Tools menu https://github.com/fastly/fastly-magento2/pulls?q=is%3Apr+is%3Aclosed
- Introduce Verify images exist on the disk tunable. In most cases verifying images exist on the disk results in heavy IO penalty especially when images are stored on a shared filesystem fastly#330
- Fix bug with UI showing VCL update is needed when it's not fastly#326
- Strip Listrak query arguments by default fastly#325
- Make the rate limiting UI clearer by providing a top level on/off switch fastly#321
- Rewrite the Vary VCL code to use accessors
- Add Mobile Theme support Edge module https://github.com/fastly/fastly-magento2/blob/master/Documentation/Guides/Edge-Modules/EDGE-MODULE-MOBILE-THEME-SUPPORT.md
- Convert whitespaces to underscores when creating Edge ACLs and Dictionaries to avoid syntax errors fastly#319
- Provide feedback in update blocking config if there is an error that happens during update fastly#318
- GeoIP fixes fastly#314 and fastly#311
- Update visibility in getmessageinstorelocale function fastly#312
- Add notification to update Blocking Config when blocking changes are made fastly#310
- Add handling for GraphQL paths. This may be removed in the future after Magento core adds Vary GraphQL requests fastly#307
- Add fix for uenc brackets [] when using GeoIP fastly#311
- Expose all options for configuring the backend. Previously we only exposed only selected fields fastly#308
- Add notification to upload custom VCL snippets when they are changed
- Remove conflicting WAF bypass statement
- Add Override Host option to backend creation
- Warning when vcl is out of date fastly#297
- Enhance export functionality to export Edge Module configs fastly#295
- Make sure we don't set uenc unless VCL version 1.2.111 fastly#296
- Add Fastly Version UI fastly#293
- Add page URL to the GeoIP switcher fastly#292
- Rework the rate limiting UI fastly#291
- Allow creation of dictionaries or ACLs from Edge Module configuration screens fastly#290
- Change composer magento-framework requirement to 101+. This change abandons 2.1.x
- Retag of 1.2.103 in order to fix M2.1.x upgrading.
- Fix for 1.2.106 caused issues during checkout fastly#288
- Fix for missing type in phpdoc which results in failed compilation fastly#286
- Another fix for 2.3 IO - add orientation and canvas fastly#284
- Fix for "Catalog list image optimization not working in Magento" fastly#283
- Add Blackfire integration edge module
- Add Time Edge module was last uploaded fastly#278
- Added uenc to the GeoIP storeswitcher fastly#276
- add UI to create backends fastly#274
- Add Gzip safety logic to avoid default Gzip policy interfering with ESI processing
- Add Edge Module to integrate other CMS/Backend
- Additional fixes to the Edge Module
- Bugfix for edge modules losing group values fastly#268
- Add Increase Timeouts for Long Running jobs edge module
- Change req.http.Fastly-FF references to use the new fastly.ff datastructure
- Add definition of snippet priority to edge modules fastly#266
- Another pass at removing redundant x-pass request conditions fastly#267
- Cleaned up redundant x-pass request conditions fastly#265
- Fix for boolean mode edge modules not working correctly fastly#264
- Edge modules are turned on by default
- Fix for maintenance mode not using the custom maintenance/error page
- Fix GeoIP not working for stores with different base URL fastly#263
- Fix for Auto WebP not being set
- Experimental support for rate limiting abusive crawlers
- Experimental support for rate limiting fastly#259
- Improvements to maintenance mode support fastly#258
- Add maintenance mode support fastly#256
- Added check for file and line array indexes for webhook stack trace fastly#257
- Changed the way the store switch url parameters are added for the geoip redirect fastly#254
- Add Bypass Fastly cache for Admin users Admin module https://github.com/fastly/fastly-magento2/commit/56595f105b4ccf8b4b70dc2a418456fcdef94fe7
- Rework ACL interface to more closely align it with Fastly interface fastly#252
- Change shield definition for Tokyo
- There are multiple locations to set image quality e.g. Fastly has IO defaults menu with quality settings that are used unless quality query argument exists in the URL. Deep IO optimization sets the default quality level by appending the quality argument This pull request exposes the latter in the UI under Deep IO fastly#251
- Remove snippets when Edge Module is disabled fastly#250
- When removing custom snippet also remove them from Fastly fastly#249
- Flush Magento cache used to flush Fastly as well. This changes to behavior to Magento Only fastly#246
- Make sure Quick Purge uses the PURGE verb fastly#245
- Fix for gstatic.com minification that was done in 1.2.79 broke under Magento 2.1.x. This fixes it fastly#244
- Added more details to quick purge error messages fastly#243
- Correct historic stats URL path. fastly#241
- Addition of the interface to manage domains fastly#240
- Add fix to avoid magento for rewriting gstatic.com assets that are no minified. Without this it breaks Fastly usage graphs in the dashboard fastly#239
- Fix for stock Magento placeholder images being displayed instead of customer defined when deep IO turned on fastly#236
- Stop rewriting version assets URLs in Varnish fastly#230
- Add ability to configure WAF ACL Bypass fastly#232
- Added ___from_store url parameter when switching stores fastly#228
- Changed the way Fastly Statistics obtain default site country name fastly#227
- Changed popup.js name and any references to it to 'overlay' to avoid potential adblocking fastly#224
- Handlebars ifEq helper fix fastly#223
- Bugfix/#199 module breaks search engine switcher due to testconnection same name fastly#222
- Reset cache-control headers to uncacheable only if X-Magento-Tags header is present https://github.com/fastly/fastly-magento2/commit/c99d56bf96c627cfec5205b258a102b6e549fa97
- Code refactoring and add comments to Fastly service config changes so they show up in event log fastly#219
- Preliminary support for Fastly Edge Modules. They are off by default. Need to be enabled through the Advanced menu. fastly#218
- Add store code to CountryMapping list to identify store fastly#216
- Initial implementation of the Web Application Firewall (WAF) fastly#217
- Added check for empty admin user variable in webhooks fastly#215
- Added save to config when update blocking is triggered fastly#213
- Refine blocking to include allowlist functionality fastly#211
- Change default setting to preserve static content e.g. JS/CSS/Images when people request Flush Magento Cache. This should provide for higher cache hit ratio
- Fix for non square images and canvas setting
- Allow to turn off canvas query option to image optimization fastly#209
- Code cleanup and refactoring fastly#208
- Added check for empty string instead of just false, added default config value to force lossy fastly#207
- Fix oversight where objects with no Cache-control and Expires headers would end up with the default TTL
- Add canvas parameter to product images fastly#206
- Expose admin's username in slack actions fastly#200
- Added option to toggle bg-color query argument for images fastly#198
- Add additional tunable to send full stack trace for all purge actions not just purge all fastly#196
- Fix for situations where image is unavailable and placeholder image is inserted fastly#195
- Rework how snippets are written to disk. Addresses issues with Magento Cloud fastly#194
- Fix for fastly#193
- Fix for fastly#191
- Remove GeoIP processed cookie constant as it's not used and may be interpreted as tracking for GDPR fastly#188
- Add ability to upload custom VCL snippets fastly#179
- Add validation for Admin path timeout. It needs to be between 0 and 600 seconds. fastly#189
- Add HSTS headers when force TLS is enabled https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Strict-Transport-Security
- Add ability to force lossy conversions of lossless image formats fastly#186
- Wording/documentation changes
- By default remove User-Agent Vary from backend responses fastly#181
- VCL reordering to address caching of 404s during site rebuilds fastly#174
- Fix for Redis sessions contention when where Fastly module makes multiple parallel requests to find out when certain features are enabled. This change changes it to be on demand versus bulk fastly#177
- Add ability to customize WAF blocking page fastly#175
- Minor wording changes around Image Optimization
- We are marking any pages with ESIs as such fastly#172. This avoids issues with slow pages waiting for full payload to be processed by ESI engine
- Add ability to tweak default Image Optimization settings fastly#171
- Revert since it caused issues with ESIs fastly#166
- Feature/check if io is enabled fastly#167
- Added check for the error/maintenance page HTML character count fastly#168
- Changed device pixel ratios checkboxes to multiselect fastly#165
- Enhancement to adaptive pixel ratios to allow users to select ratios they want to support fastly#161
- Add ability to remove edge dictionaries and ACLs fastly#157
- Resort ordering of config tabs
- Add adaptive pixel fastly#160
- Stop treating every HTML file as potentially having ESIs. We'll mark all Magento documents as ESIs
- Fix broken Basic Auth upload
- Fix broken GeoIP
- Add preliminary implementation for Image Optimization
- Fix for system configuration bar being broken fastly#152
- Updates to the blocking UI fastly#146
- Improvements to the limiting X-Magento-Tags fastly#145
- Minor bug fixes and code clean up
- Bugfixes encountered when doing refactoring for MEQP2
- Changes to achieve Magento Extension Quality Program (MEQP) compliance
- Add UI to add blocking by country and ACL fastly#137
- Make sure the X-Magento-Tags header is less than 16kBytes in length
- Allow user to override default first byte timeout for admin paths fastly#135
- Allow user to override default list of query arguments to strip out fastly#134
- Use frontName from app/etc/env.php to generate VCL statements for handling /admin/ URLS fastly#132
- Handle cases where more than 256 surrogate keys are being purged. Those need to be broken up into multiple transactions https://github.com/fastly/fastly-magento2/pull/133/files
- Fix for Edit Backends where due to improper escaping in certain situations backends would not show
- Add ability to see full stack trace of purge all requests. Often times 3rd party modules will invoke purge all needlessly and this allows you to track down who is making the calls. By default this functionality is off.
- Added shell functionality for setting Service ID, Token, enabling/disabling Fastly, uploading default VCL, testing connection and cleaning configuration cache.
- VCL optimizations and fixes fastly#117
- Fix for serialization issue regarding old config data for GeoIP Country Mapping (Magento version above 2.2)
- Added shell function for converting Fastly config data to JSON manually (Magento version above 2.2), executed by: fastly:format:serializetojson
- Added shell function for converting Fastly config data to serialize format manually (Should be used only to revert changes made from fastly:format:serializetojson), executed by: fastly:format:jsontoserialize
- Don't cache /customer/section/load. This works around core bug where Cache-Control headers are set to cache fastly#111
- Due to the way Fastly plugin is implemented we are still sending Varnish like purges which don't do anything fastly#110. This fixes it so it doesn't send those
- When Force TLS is enabled if a user request comes in with Google Analytics arguments those will be stripped before issuing a redirect. fastly#112 fixes it so redirect is issued immediately before any other logic executes
- Remove errant logging when checking if a feature is enabled or not fastly#108
- Enable long caching of signed assets fastly#109
- Fix for Surrogate Keys not being set on HTML assets when shielding is turned on
- Fix for when adding first entry to an ACL modal is incorrectly displayed fastly#105
- Fix for GeoIP processed
- Fix for category ESIs not being correctly purged fastly#101
- Fix for missing observers. Relates to MAGETWO-70616 issue
- Error/maintenance page was returning 503 OK when returning a response. This has now been change 503 Service Temporarily Unavailable
- Magento 2.2 changes HTTP API which break PUT requests. This release contains fix for 2.2
- VCL clean up. Remove unused structures. Add few more guardrails
- Add fastly-page-cacheable debug header to indicate whether a page is cacheable. Helpful to determine if a particular block in the page has been marked uncacheable
- Fix for a bug where 302 may be deemed an unsuccessful code resulting in caching of cookies
- Add Basic Authentication functionality - ability to protect your site during maintenance or development
- Add Edge ACLs management interface directly into the Magento Plugin admin
- Add Historical bandwidth/request/error stats to the Magento Dashboard
- Redesign the edge dictionaries interface to use individual actions/calls when adding/removing entries instead of bulk calls as bulk
- Add Edge Dictionaries management interface directly into the Magento Plugin admin
- Purge by content type and store was not working due to fallout from the multiple surrogate key purge bug.
- Fix for multiple surrogate key purges being incorrectly serialized
- Convert multiple single surrogate key purges to the new single multiple key purges request
- Migrate geo location variables to the new namespace
- Minor bug fixes and clean ups
- Fix multiple purges being sent for a single product/category change
- Webhooks code inadvertently broke ability to do setup and upgrades. This fixes it.
- Add ability to add WebHooks for purges and configuration changes
- Remove Download VCL button and custom VCL as it's deprecated
- Fix an issue with error/maintenance page where contents were not being escaped causing some elements to be invisible while editing
- Add usage statistics tracking
- Mark custom VCL separately
- Add new shield locations
- Error page fixes
- Add a UI to add a custom error/maintenance page
- Add a check to make sure user has saved config before attempting upload
- Add Backend Settings configuration - allows reconfiguration of existing backends
- Minor bug fixes
- Add Force TLS button in advanced settings - it enables/disables it in the Fastly service
- Fix VCL if user has uploaded custom VCL and changed req.url
- Minor VCL optimizations
- Fix for VCL Snippet upload when no snippets exist
- Convert to using VCL snippets https://docs.fastly.com/guides/vcl-snippets/. This will provide for better maintainability since it breaks down functionality into separate files instead of one large file. Also it avoids the need for having VCL upload functionality enabled
- Button to Test Credentials
- Updated etc/fastly.vcl to remove set-cookies on static content. Also to cache static 404's for 5 minutes.
- Some styling changes to better match Magento's style
- bumped version.
- Corrected autoload typo.
- Corrected spelling mistake in README.
- Adjusted dependencies for 2.1 installation issue.
- Fixed compilation errors due to dependency declaration
- Fixed display of cache management.
- Added CLI command to generate VCL
- Updates to README.
- Adjustments from Marketplace review.
- Resolved Geo-IP ESI tag being added when Geo-IP function is disabled.
- Adjusted cache headers for caching of Geo-IP response
- Changed module name for marketplace review
Initial release for testing.