PluginProbe
WP-Optimize – Cache, Compress images, Minify & Clean database to boost page speed & performance / 4.7.0
WP-Optimize – Cache, Compress images, Minify & Clean database to boost page speed & performance v4.7.0
4.7.0 4.6.1 4.6.0 4.5.5 4.5.4 4.5.3 4.5.2 3.2.20 3.2.21 3.2.22 3.2.3 3.2.5 3.2.6 3.2.7 3.2.9 3.3.0 3.3.1 3.3.2 3.4.0 3.4.1 3.4.2 3.5.0 3.6.0 3.7.0 3.7.1 All 111 releases
wp-optimize / changelog.txt

changelog.txt in WP-Optimize – Cache, Compress images, Minify & Clean database to boost page speed & performance 4.7.0, at changelog.txt

1,548 lines 87.6 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 == Changelog ==
2
3 = 4.7.0 - 16/Sep/2026 =
4
5 * FEATURE: Dashboard overview showing a summary of all WP-Optimize modules (cache, images, minification, and database), including active status, savings, and quick links to manage each area
6 * FEATURE: Load tables in batches when there are too many tables to load in a single request
7 * FIX: Added missing optimizations for auto optimizations cron
8 * FIX: Fix removal of cache settings and related cron events on plugin deactivation and reactivation
9 * FIX: Fixed inconsistent UI in the Minify status tab, and removed duplicate tooltips
10 * FIX: Fixed the association of the wp_e_submissions_actions_log table with its plugin
11 * FIX: LCP - Preserve original cached HTML when removing the LCP observer script fails instead of returning an empty string
12 * FIX: PHPStan issues WPO_WP_Kses_Compatibility class
13 * FIX: Permissions issues for adminbar menu items
14 * FIX: Registered image sizes not showing on multisite
15 * FIX: Removed extra spacing in the Wipe settings section
16 * FIX: WP_CACHE constant warning in debug.log
17 * FIX: WP_Optimize_Utils::get_file_path() does not handle URLs with query parameters
18 * REFACTOR: WPO_Page_Builder_Compatibility class
19 * REFACTOR: WPO_Webp_Convert_Image_Task class
20 * TWEAK: Added data- attributes support for older wordpress versions
21 * TWEAK: Cache - Browser cache settings updated for better compatibility
22 * TWEAK: Cache - Improved browser cache detection
23 * TWEAK: Disabling Show avatars no longer leaves gravatars hosted locally in the background
24 * TWEAK: Improved GZIP detection
25 * TWEAK: Improved the Purge Page Cache and Purge Minify Cache admin bar functionality
26 * TWEAK: Premium - Improved UX for Unused CSS Removal
27 * TWEAK: Premium - Index Post Meta Table power tweak now correctly indexes all subsites postmeta tables in a Multisite network and tracks last-run status per site
28 * TWEAK: Premium Auto LCP writes the gzip cache variant atomically via a temporary file and rename, matching how the HTML cache file is patched
29 * TWEAK: Rename `as_type` to `asset_type` in the LCP beacon request for clarity
30
31 = 4.6.1 - 29/Jul/2026 =
32
33 * FIX: CSS exclusions added via Minify -> Advanced -> Exclude are now saved on separate lines, preventing invalid exclusion entries
34 * FIX: Fixed compatibility issue with the WooCommerce multi-currency plugin
35 * FIX: Incorrect WebP browser detection for Firefox users
36 * FIX: Misaligned UI issue in minify admin pages
37 * FIX: Mobile UI issues
38 * FIX: Prevent caching pages when a WooCommerce cart has content
39 * FIX: UI freezes when restoring a compressed image
40 * REFACTOR: Use WP_Optimize_Utils::get_url_without_cache_purge_params() for admin bar links
41 * REFACTOR: WPO_KD_Submissions_Compatibility class
42 * REFACTOR: WP_Optimize_Server_Compatibility class
43 * REFACTOR: WPO_Polylang_Compatibility class
44 * TWEAK: Clear cached local Google Fonts statistics when the CSS font file is downloaded
45 * TWEAK: Create a new class named WP_Optimize_UpdraftCentral_Commands to group UpdraftCentral specific commands, currently including methods for retrieving and updating WP-Optimize settings
46 * TWEAK: Removed deprecated UpdraftCentral commands from WP_Optimize_Commands class
47 * TWEAK: Removed unused phpseclib dependency from composer
48 * TWEAK: Smush post meta keys are prefixed with `_` and now is multisite compatible
49
50 = 4.6.0 - 06/Jul/2026 =
51
52 * FEATURE: Premium - Automatically preloads the page’s Largest Contentful Paint (LCP) element to improve initial load speed and perceived performance
53 * FIX: Cache - Fixed an issue related to cache setting saving
54 * FIX: Fixed a UI issue in WooCommerce variation products when Automatically preload content after it is purged is enabled
55 * FIX: Fixed browser caching issue where admin pages were cached
56 * FIX: Mobile UI issue
57 * FIX: Notice Dismissal issue
58 * FIX: Usage of htmlspecialchars()
59 * REFACTOR: Code from can_purge_cache() method moved to WP_Optimize_Utils::current_user_can_purge_cache()
60 * REFACTOR: Fix WordPress Security check errors and warnings on admin page
61 * REFACTOR: Make `is_edit_mode` a static method and avoid duplication
62 * REFACTOR: Optimized WP_Optimize_Database_Information::get_table_plugin() method
63 * TWEAK: Added method to check current user has the capability
64 * TWEAK: Added methods to retrieve and save essential WP-Optimize toggleable settings for UpdraftCentral
65 * TWEAK: Disable and hide the "Speed up WooCommerce 'Get total spent' query" Power Tweak when it's no longer relevant
66 * TWEAK: Handle race conditions in font downloading and optimize cache stats storage
67 * TWEAK: Improved image grid action button visibility to accommodate WordPress 7.0 button styling changes
68 * TWEAK: Matched response styles when purging via the admin bar
69 * TWEAK: Premium - Handle empty orders in WooCommerce Total Spent Power Tweak feature
70 * TWEAK: Premium - Improved hash logic for the Unused CSS Removal feature
71 * TWEAK: Prevent unwanted cache growth caused by crawlers or preload bots
72 * TWEAK: UI changes to match WordPress 7.0
73 * TWEAK: Unschedule all WP-Optimize cron jobs on deactivation in multisite
74 * TWEAK: WP_Optimize_Power_Tweaks class method deactivate bug fixed related to the array_diff function
75
76 = 4.5.5 - 05/Jun/2026 =
77
78 * TWEAK: Update the bundled common-libs version
79
80 = 4.5.4 - 25/May/2026 =
81
82 * FIX: WebP image compression breaking in some cases
83 * REFACTOR: Avoid instantiating PHPSQLParser on each call in WPO_DB_Table_Analysis
84 * REFACTOR: Class WPO_WebP_Convert
85 * REFACTOR: Make markup readable in `tables-body.php` template
86 * REFACTOR: Refactored duplicated cache_admin_bar logic by centralizing it in the admin class and removing redundant implementations.
87 * REFACTOR: Removed unused `WPO_Htaccess_Capabilities` class
88 * REFACTOR: WPO_Activation class
89 * REFACTOR: WPO_Uninstall class
90 * REFACTOR: WPO_WebP_Alter_HTML class
91 * REFACTOR: WPO_WebP_Self_Test class
92 * REFACTOR: WPO_WebP_Test_Run class
93 * REFACTOR: WPO_WebP_Utils class
94 * REFACTOR: WPO_Webp_Task_Manager class
95 * REFACTOR: WP_Optimize_WebP class
96 * REFACTOR: WP_Optimize_WebP_Images class
97 * TWEAK: Added an additional check to prevent SplFileInfo::getSize() RuntimeException in WP_Optimize_Utils::get_folder_stats()
98 * TWEAK: All in One SEO plugin compatibility issue
99 * TWEAK: Cache - Inconsistent REST cache filenames due to query parameter order
100 * TWEAK: Cache - Set the purge old cache cron schedule based on the Cache lifespan setting
101 * TWEAK: Ensure parsed result is an array in WPO_DB_Table_Analysis::get_query_table()
102 * TWEAK: Exclude GIF from being converted to WebP with `wpo_webp_convert_compressed_images` cron job
103 * TWEAK: Optimized `wpo_username_from_cookies()` to avoid repeated database queries per request
104 * TWEAK: Precheck for existing WebP format of file before running WebP conversion
105 * TWEAK: Remove redundant code that is not reachable.
106 * TWEAK: Resolved edge cases in CapoJS
107
108 = 4.5.3 - 29/Apr/2026 =
109 * SECURITY: Prevented path traversal security risk. Thanks to Wordfence for the responsible disclosure
110
111 = 4.5.2 - 20/Apr/2026 =
112
113 * FIX: Bug preg_match() fails on wildcard * patterns in browser agents exclusion list
114 * FIX: Cache - purge the cache when a plugin is auto-updated
115 * FIX: Ensure page caching is fully disabled by updating internal cache configuration to prevent constant-related errors in logs
116 * FIX: Premium - Unused images - Fixed an issue where multiple unused images were displayed for an edited image on setups where images are not stored in /yyyy/mm folders
117 * FIX: Minify - The cron job to purge old cache files is not created
118 * REFACTOR: Instead of nested output buffering, code make use of single buffer using Page Optimizer class
119 * REFACTOR: Refactor Updraft_Smush_Manager::update_smush_options() method
120 * REFACTOR: Using ABSPATH to prevent direct access instead of plugin constants to comply with PCP
121 * TWEAK: Added a safety check to remove scheduled table optimization cron jobs when the server does not allow table optimization
122 * TWEAK: Enhanced database table detection by marking the KD Submissions database table as used by Elementor Pro
123 * TWEAK: Fixed a UI issue with WebP conversion in the Media Library
124 * TWEAK: Handle WP_Error in WPO_Page_Cache::enable() callers
125 * TWEAK: Initialize Heartbeat only on admin pages
126 * TWEAK: Premium - Preload only selected URLs in the "Cache Specific URLs Only" setting
127 * TWEAK: Premium - Smush - Improved PHP 8.5 compatibility by replacing deprecated $http_response_header usage
128 * TWEAK: Updated user agent for the cache preloader
129
130 = 4.5.1 - 23/Mar/2026 =
131
132 * FIX: Fixed compatibility issue with WP Remote
133 * FIX: Notice: Function _load_textdomain_just_in_time was called incorrectly
134 * FIX: Resolved weekly cron not running on WordPress < 5.4 by switching to the wpo_weekly schedule
135 * FIX: Database table error when upgrading from free to premium version
136 * REFACTOR: Improved WebP conversion flow by separating capability checks from configuration changes
137 * REFACTOR: Improved auto-optimization handling by correcting static method usage
138 * REFACTOR: Introduced `WP_Optimize_Server_Compatibility` class to centralize all server environment checks
139 * REFACTOR: Removed separate `get_schedule_types()` method in premium version
140 * SECURITY: Enforced capability checks and allowed-command validation for Smush actions triggered via Heartbeat API. Thanks to WordFence for the responsible disclosure
141 * TWEAK: Display the `Enable the caching menu in the admin bar` option only when Cache or Minify is enabled
142 * TWEAK: Improved detection of LearnDash plugin tables
143 * TWEAK: Improved onboarding wizard RTL support and eliminated dependency on the PHP Reflection class
144 * TWEAK: Improved robustness of `uploads/wpo` directory removal during plugin uninstallation
145 * TWEAK: Minify - Don't remove the version query argument when the source is not processed by Minify
146 * TWEAK: Premium - Unused Images - Enhanced detection of edited WordPress images
147 * TWEAK: Prevent deprecation notices in PHP 8.5
148 * TWEAK: Add a notice when `.htaccess` file is not available or renamed in Apache servers
149
150 = 4.5.0 - 11/Feb/2026 =
151
152 * FEATURE: Premium - Cache – Added ability to cache only selected URLs
153 * FEATURE: Premium - Minify - Host Google Fonts locally
154 * FEATURE: Premium - Option to enhance page performance by applying Capo.js rules
155 * FIX: Cache - fixed sitemap caching issue
156 * FIX: Improved compatibility with WordPress versions earlier than 6.1
157 * FIX: Reset WebP conversion failure no longer appears in the popup
158 * FIX: Resolved issues with detecting WebP conversion availability
159 * FIX: Smush – Fixed missing tooltip in the 'Compress' pop-up in Media Library
160 * FIX: Stop initialization of page optimizer for non-HTML requests
161 * FIX: Remove marcusschwarz/lessc lib from autoload
162 * TWEAK: Added support for bypassing WPO features via a URL query parameter defined by the WPO_DISABLE_MODE_URL_PARAM constant
163 * TWEAK: Allow some database records cleanup for Kinsta users
164 * TWEAK: Clear cache of archived pages when a related post is updated
165 * TWEAK: Disabled CSS/JS merging by default.
166 * TWEAK: Enhanced 404 detector compatibility with plain permalinks
167 * TWEAK: WP_Optimize_Options::auto_option_settings() is not called in Premium version
168 * TWEAK: Improved timestamp handling to prevent fatal errors on WordPress 4.9
169 * TWEAK: Improved Minify settings UI so JavaScript options correctly show/hide when JS minification is enabled/disabled
170
171 = 4.4.1 - 08/Jan/2026 =
172
173 * FIX: Onboarding wizard RTL issue
174 * FIX: Prevented plugin table JSON data in the uploads directory from being updated on every WP-Optimize admin page load
175
176 = 4.4.0 - 12/Dec/2025 =
177
178 * FEATURE: Added Onboarding Wizard
179 * FIX: Ensured old cache purging cron job is scheduled successfully
180 * FIX: Fixed a potential fatal error in the WPO_Page_Optimizer class
181 * TWEAK: Fixed the ability to disable caching menu in admin bar
182 * TWEAK: Updated file permissions for wpo-plugins-tables-list.json
183
184 = 4.3.1 - 14/Nov/2025 =
185
186 * FIX: Prevent PHP fatal error occurring when cache is enabled and the "Aelia Currency Switcher for WooCommerce" plugin is active
187 * FIX: Cache – Fixed compatibility issue
188 * FIX: Database - Table Usage - Fixed the issue with incorrect table name detection in certain cases
189 * FIX: Fixed UI Issue - Content cut off in "Review Actions" modal under WP-Optimize > Database
190 * FIX: Fixed _load_textdomain_just_in_time trigger too early
191 * FIX: Premium - Unused images - Fixed an issue with clearing the cache of unused images
192 * FIX: Smush - Compressing an image larger than the reSmush.it service limit freezes the popup in the Media Library
193 * FIX: Smush - Fixed issue with multiple images compression action
194 * FIX: Undefined property: stdClass::$plugin_status bug fixed
195 * REFACTOR: Database - Table Usage - enhanced variable names
196 * REFACTOR: Using strict comparison throughout the codebase
197 * TWEAK: Improve detection of cloudflare handling browser cache
198 * TWEAK: Added validation for AJAX commands in the Premium version
199 * TWEAK: Convert already compressed images to webp format when possible
200 * TWEAK: Fix the compatibility issue with ALTCHA when using the ASE Pro Plugin
201 * TWEAK: Improve browser caching by adding max-age option
202 * TWEAK: Premium - Cache - Do not process the cache when the user cannot be identified
203 * TWEAK: Premium - Database - Tables usage report shows data only for active plugins
204 * TWEAK: Premium - Unused Images - Enhanced detection for Revolution Slider
205 * TWEAK: Premium - Unused Images - Improved detection of unused images in Oxygen Builder
206 * TWEAK: Premium - Unused Images - Recognize Oxygen 6 images
207 * TWEAK: Premium - Prevent PHP warnings from Table Usage feature
208 * TWEAK: Remove unused jQuery 1.12.4 dependency
209 * TWEAK: Run database table optimization last
210 * TWEAK: Updated links
211 * TWEAK: Various tweaks and improvements to code
212
213 = 4.3.0 - 22/Sep/2025 =
214
215 * FEATURE: Premium - Cache - Cache REST API requests
216 * FEATURE: Premium - Further reduce CSS files sizes by removing unused CSS rules
217 * FIX: Added backward compatibility for timezone and datetime functions and improved status report support for older WordPress versions like 4.9.
218 * FIX: PHP Warning file_exists(): open_basedir restriction in effect
219 * FIX: Prevented buffer initialization during wp-cron when HTML DOM is unavailable.
220 * REFACTOR: Database - Table Usage - Refactored execute_query_analysis() function
221 * TWEAK: Added new UpdraftCentral endpoints
222 * TWEAK: Enhanced multisite support: added performance widget to Network Dashboard and fixed sub-site widgets to show only site-specific 404 request counts.
223 * TWEAK: Fix external loading of Gtag analytics script
224 * TWEAK: Moved the tooltip tag outside the <label> tag
225 * TWEAK: Performance - 404 Detector (Not Found Requests) added a button to clear all logs.
226 * TWEAK: Publishing a post or custom post type (CPT) no longer clears the cache of all posts of the same type.
227 * TWEAK: Removed return statements from constructors and added checks at the point of class instantiation.
228 * TWEAK: Smush - Enhanced compatibility and performance with EWWW Image Optimizer installed
229 * TWEAK: Premium - Added cache support for Nelio A/B Testing plugin
230 * TWEAK: Added a hook to trigger custom code when a page is not cached
231
232 = 4.2.4 - 30/Jul/2025 =
233
234 * FIX: Potential PHP fatal error when no site is selected during database optimization in multisite
235 * FIX: Issue where the database optimization spinner remained indefinitely active
236 * FIX: PHP 8.4 compatibility warnings
237 * FIX: Minify default exclusions fatal error
238 * FIX: Premium - Potential PHP fatal error - type hinting error in the database table usage feature
239 * FIX: Premium - Page cache and lazy load meta boxes no longer display on post edit screen when their respective options are disabled
240 * FIX: Only purge relevant files when a published post is saved; also purge the author archive cache upon post save
241 * FIX: Premium - Fixed compatibility of Table usage with WordPress versions earlier than 5.3
242 * REFACTOR: Premium - Database - Table Usage - added missed translation functions
243 * TWEAK: Purged content will preload only when cache is enabled, and the user-agent has been updated to a modern browser and OS version
244 * TWEAK: Update seasonal advert banner logos, texts and links
245 * TWEAK: Update plugin readme text and links
246 * TWEAK: Premium - Cache - Add UI element to ignore query variables
247 * TWEAK: Premium - Database - Table Usage - replaced loading state with native modal
248 * TWEAK: Removed seasonal discount ads except Black Friday
249
250 = 4.2.3 - 15/Jul/2025 =
251
252 * FIX: Cache - Resolved PHP warning caused by excessively long cache file names
253 * FIX: Corrected typo from `meta data` to `metadata`
254 * FIX: Cron reschedule event error for hook `wpo_prune_404_log` when `is_minimum_requirement_met` is `false`
255 * FIX: Premium - Fixed a rare PHP warning that could occur when saving a post
256 * FIX: Unused image - incorrect image filtering in multisite
257 * FIX: WP Remote sync conflict caused in v4.2.1 and v4.2.2 By replacing wp_salt with core PHP functions
258 * FIX: YouTube lazy-load – Thumbnail image now falls back to JPG if browser doesn't support WebP
259 * FIX: WebP images were not being served in Firefox on certain environments
260 * TWEAK: 404 detector logs URLs on mobile screens goes out of viewport fixed.
261 * TWEAK: CSS Improvements, better font size handling, remove duplication, and SASS instead of import
262 * TWEAK: Delay YouTube preview image cache purging
263 * TWEAK: Display notice when server does not allow database optimizations
264 * TWEAK: Enhanced database optimization compatibility with jQuery 4
265 * TWEAK: Fixed incorrect transients count in database optimizations UI
266 * TWEAK: Improved sanitization of incoming data in `Updraft_Smush_Manager_Commands`
267 * TWEAK: Minify - Improved compatibility with Divi theme's dynamically generated assets
268 * TWEAK: Multisite corrected site count in database optimizations UI.
269 * TWEAK: Preserve EXIF data is set to false by default in all places at codebase level.
270 * TWEAK: Update URLs of links and images to point to https://teamupdraft.com
271
272 = 4.2.2 - 02/June/2025 =
273
274 * FIX: Cache - Resolved unwanted output in WP-CLI and fatal error related to WooCommerce's country-specific files, introduced in v4.2.0
275 * TWEAK: Premium - Cache - Compatibility with WordPress 6.8
276
277 = 4.2.1 - 05/May/2025 =
278
279 * FIX: Cache - Compatibility issue with other plugins due to late start of output buffering
280 * TWEAK: Improved array handling in `get_active_plugins()`, potentially avoiding edge-case fatal error
281
282 = 4.2.0 - 01/May/2025 =
283
284 * SECURITY: On multisite installs (only), a logged-in site administrator could use an unsanitised parameter to inject unwanted content into SQL queries. Thanks to Marc Montpas for the responsible disclosure.
285 * FEATURE: Premium - Replace YouTube Iframes with preview images to improve page speed
286 * FIX: Fix conflict with the WPML plugin
287 * FIX: Smush - Fixed PHP warning on the Media Library page
288 * FIX: Smush - Fixed issue where the Smush popup would freeze
289 * FIX: WebP images not served after WP-Optimize reactivation
290 * REFACTOR: Smush option removed from media upload modal
291 * TWEAK: Update advert banner logos, texts and links
292 * TWEAK: Add missing separator between compression items in media library
293 * TWEAK: Avoid PHP warning thrown by Page Speed Ninja plugin
294 * TWEAK: Cache - Start caching after plugins loaded
295 * TWEAK: Fix PHP deprecation warning in PHPSQLParser for PHP 8.4
296 * TWEAK: Fix deprecation warning in Updraft_Logger class for PHP 8.4
297 * TWEAK: Fixes absence of checkbox to remove all transients
298 * TWEAK: Premium - Support and feedback links in Help tab now point to getwpo.com
299
300 = 4.1.1 - 05/Mar/2025 =
301
302 * FIX: Page builders not working with Delay JS option enabled
303
304 = 4.1.0 - 03/Mar/2025 =
305
306 * FEATURE: Premium - Improve performance by caching Gravatar images locally.
307 * FIX: Premium - Unused images - Fixed warnings when moving non existing image to trash
308
309 = 4.0.1 - 17/Feb/2025 =
310
311 * FIX: File system usage issue
312
313 = 4.0.0 - 10/Feb/2025 =
314
315 * FEATURE: Delay JavaScript execution
316 * FIX: Cache - Fixed PHP warning "Cannot modify header information"
317 * FIX: Minify - Unusual behavior occurs when the "Disable Google Fonts processing" option is enabled
318 * FIX: Smush - Fixed image compression actions in Media Library
319 * REFACTOR: Replacing jQuery Tablesorter with 'sortable-tablesort' package
320 * TWEAK: Cache - Enhance ActivityPub compatibility
321 * TWEAK: Fix PHP notice caused by subscriben plugin advert
322 * TWEAK: Minimum requirements were updated to PHP version 7.2 and WordPress version 4.9
323 * TWEAK: Remove uses of `unserialize` without restriction of allowed_classes
324 * TWEAK: Recognise Independent Analytics Pro plugin tables in database optimization
325
326 = 3.8.0 - 09/Dec/2024 =
327
328 * FEATURE: Added a system status page
329 * FEATURE: Logs frequent and highly recurrent 404 requests; introduces a new Performance tab.
330 * FIX: Cache - Legacy Widgets visibility issue with WP-Optimize Cache enabled
331 * FIX: Cache - UI issue: Preload "Cancel" option is gone after reloading the WPO settings page instantly
332 * FIX: Database - optimizing any item also changes the status of other items
333 * REFACTOR: Minify - Removal of the WPO_MINIFY_PHP_VERSION_MET constant
334 * TWEAK: Add a warning message before deleting post metadata or orphaned relationship data.
335 * TWEAK: Bailout early if the minimum PHP version is not met
336 * TWEAK: Introduced logging for cache purge operations, available under `uploads/wpo/logs/cache-*.log`
337 * TWEAK: Open CRON overdue guide in new tab
338 * TWEAK: Persist Analytics Tab when minification is disabled
339 * TWEAK: Premium - Unused Images - Improved detection of images not present in the Media Library, marking them as used
340 * TWEAK: UI improvements in Analytics section
341 * TWEAK: Wrapped checkboxes inside `label` tags in the confirmation popup that appears when clicking the "Remove" button on the Database > Tables tab.
342
343 = 3.7.1 - 20/Nov/2024 =
344
345 * TWEAK: Resolved a PHP notice caused by translation loading too early when caching is enabled, introduced in WordPress 6.7
346
347 = 3.7.0 - 21/Oct/2024 =
348
349 * FEATURE: Added an option to automatically preload URLs immediately after cache content is purged
350 * FEATURE: Premium - Gather data about table usage by filtering `query` event
351 * FIX: Cache - Scheduled preloading wasn't working
352 * FIX: Inconsistency in `smush_manager_send_command` function
353 * REFACTOR: Smush - Popup styles, remove unused code
354 * TWEAK: Fix fatal implode error when updating to v3.5.0
355 * TWEAK: Image compression - Issue with cancelling smush image compression
356 * TWEAK: Improve module minification logic
357 * TWEAK: Premium - Unused images - Fixed popup when moving images to or restoring images from the trash
358 * TWEAK: Premium - Unused images - Placeholder images in unused images section
359 * TWEAK: Added `security.md` file with information to report security issues
360
361 = 3.6.0 - 12/Sep/2024 =
362
363 * FEATURE: Premium - Auto-detect images lacking dimension attributes and add them to improve CLS
364 * FIX: Fixed the issue that disabled WebP conversion due to checking all shell commands for WebP compression
365 * FIX: Premium - Unused Images - The unused image size deletion functionality does not work when images are not in the /yyyy/mm/ folder
366 * REFACTOR: Removed unnecessary static methods in WebP class
367 * TWEAK: Image compression - Rolled back to using popup error notices as in versions prior to 3.4.0
368 * TWEAK: Added a more descriptive error with resolution proposals for failed gzip compression and browser cache tests
369 * TWEAK: Fix broken unused image list thumbnails and download as csv link in Multisite
370 * TWEAK: Fix the singleton pattern in Heartbeat class
371 * TWEAK: Image compression functionality added to the Media Library page
372 * TWEAK: Premium - Cache - Added support for Aelia Currency Switcher plugin
373 * TWEAK: Premium - Unused images - improve clarity in UI for images in post revisions
374 * TWEAK: Added additional checks to the `implode()` function to mitigate the risk of fatal errors on certain instances
375
376 = 3.5.0 - 14/Aug/2024 =
377
378 * FEATURE: Premium - Host Google and minimal analytics scripts locally
379 * FIX: Premium - Cache - Single page cache purge/preload feature isn't working
380 * TWEAK: Add logging for the WebP feature
381 * TWEAK: Allow minification of script modules
382 * TWEAK: Cache - Purge the cache when the site is migrated
383 * TWEAK: Improvements to asset minification cache logic
384 * TWEAK: Improvements to reSmushIt curl error message
385 * TWEAK: Minify - Added an option to disable Google Fonts processing when it causes conflicts with other plugins
386 * TWEAK: Move all WPO files from the `uploads` folder to `uploads/wpo`
387 * TWEAK: Style improvement of the loading modals
388
389 = 3.4.2 - 03/Jul/2024 =
390
391 * FIX: Removes unnecessary heartbeat calls for retrieving information about images
392
393 = 3.4.1 - 26/Jun/2024 =
394
395 * FIX: Issue with bulk editing on the posts and pages edit screen
396
397 = 3.4.0 - 25/Jun/2024 =
398
399 * FEATURE: Premium - Smush - Bulk compress / restore from media library
400 * FIX: Deactivate the form for minifying JS/CSS settings when the corresponding option is disabled
401 * REFACTOR: The functionality for the 'Unused Images' feature in ACF has been moved to a separate class
402 * TWEAK: Add UpdraftCentral commands for the latest WP-Optimize features
403 * TWEAK: Adjusted the scheduled preload time for improved performance
404 * TWEAK: Auto-update advanced-cache.php settings during site migration
405 * TWEAK: Cache - Human-readable file names for the cache directory
406 * TWEAK: Caching related cron jobs are activated even though cache is disabled
407 * TWEAK: Image compression - Updated message for restoring images action
408 * TWEAK: Implement Heartbeat API for image compression progress updates
409 * TWEAK: Improving vendor autoload
410 * TWEAK: Introduces a hook (`wpo_force_webp_serve_using_altered_html`) for changing WebP serving method
411 * TWEAK: Minify - Exclude .min files from minification
412 * TWEAK: Minify - Improve list of processed files UI
413 * TWEAK: Optimization of the get_uncompressed_image query
414 * TWEAK: Persist script loading strategy when minifying JS files
415 * TWEAK: Premium - Compatibility with Curcy WooCommerce multi currency plugin
416 * TWEAK: Premium - Unused Images - Added an option to delete original images when scaled versions exist
417
418 = 3.3.2 - 16/Apr/2024 =
419
420 * FIX: Ensure the admin bar is not cached when caching is enabled for both logged-in and guest users
421 * REFACTOR: Remove unused code
422 * TWEAK: Cache - Prevent sitemaps being cached
423 * TWEAK: Display a notice when static browser cache is enabled but not working
424 * TWEAK: Premium - Added "Lost your password?" link on plugin's page
425 * TWEAK: Premium - Unused images - Detect Elementor's 'Video' widget's image
426 * TWEAK: Recognise Rank Math plugin tables as used in database optimization
427 * TWEAK: Reduce .htaccess file write operations when WebP is enabled
428 * TWEAK: Seasonal notice content update for 2024
429 * TWEAK: Unused Images - Unused tab displays multiple images for compressed images with WebP Conversion
430 * TWEAK: Prevent multiple AJAX requests being generated by repeated clicks on the "Purge Cache" button
431 * TWEAK: Call the `litespeed_finish_request()` function when attempting to close browser connection on LiteSpeed servers
432
433 = 3.3.1 - 06/Mar/2024 =
434
435 * FIX: Cache - Compatibility issue with Jetpack's infinity scroll feature
436 * FIX: Cache - Don't cache activity stream (ActivityPub plugin compatibility)
437 * FIX: Cache - Page not cached comment is added to `robots.txt`
438 * TWEAK: Fix PHP warnings when server variables are not available
439 * TWEAK: Fix Unexpected response alert and PHP warning when cache preloading is triggered manually
440 * TWEAK: Migrate from setInterval to WP heartbeat API to refresh information about backend tasks
441 * TWEAK: Optimization of the WebP Implementation
442 * TWEAK: Update dashboard notice to include all of our plugins
443 * TWEAK: Update the footer review prompt
444
445 = 3.3.0 - 31/Jan/2024 =
446
447 * FEATURE: Premium - Ability to preload and purge caches from individual post/page
448 * FIX: Premium - Unused Images - Recognise Elementor's Container, and Section widget background images
449 * FIX: Avoid having repeated minified scripts in the same bundle, it breaks the code in some specific cases
450 * FIX: Cache - TranslatePress compatibility - Post updates purges cache for all related translated languages
451 * FIX: Only try to parse canonical URLs if there is a path or querystring, needed for WPML with multi-domain compatibility
452 * TWEAK: Add cron de-scheduling of all wpo_* events during plugin uninstall
453 * TWEAK: Cache - Always add source code comment about page not being cached, but only add details when WP_DEBUG is ON
454 * TWEAK: Cache - Fix issue with excluding encoded (non-latin) URLs
455 * TWEAK: Do not attempt to close browser connection when the context is not an AJAX action
456 * TWEAK: Minify - Logging more information about why minify static assets cache gets invalidated and regenerated
457 * TWEAK: Revert to the original `matthiasmullie/minify` repository after confirming resolution of previous issues
458 * TWEAK: Setup Cron job to clear failed smush tasks from DB
459 * TWEAK: Using clear text user agent strings instead of regular expressions to identify web browsers for improved clarity
460 * TWEAK: Updater library in the Premium version updated to the current release series
461
462 = 3.2.22 - 23/Nov/2023 =
463
464 * TWEAK: Cache - Show a notice in the admin if the config file is missing and caching is enabled
465 * TWEAK: Added support for new emoji styles related hooks introduced in WordPress 6.4
466 * TWEAK: Database - Fix "Optimize database tables" stuck loading state
467 * TWEAK: Premium - Cache - Style improvement for the select2 box from advanced cache settings
468 * TWEAK: Premium - Images - Fix issues with avif images in the unused images feature
469 * REFACTOR: Wrapping most of the external links in the WPO settings pages with the appropriate function
470 * REFACTOR: Remove unused code
471
472 = 3.2.21 - 18/Oct/2023 =
473 * FIX: Prevent PHP fatal error when updating from older versions of WP-Optimize
474
475 = 3.2.20 - 16/Oct/2023 =
476
477 * FIX: WebP - Performance issue because of possible infinite loop
478 * FIX: Cache purging occurred prior to the cache lifespan expiration
479 * FIX: Premium - Smush - Do not consider images in trashed posts as unused
480 * TWEAK - Remove extra slash from plugin asset urls and paths
481 * TWEAK: Image - Add a tooltip next to the restore button on the edit media screen
482 * TWEAK: Premium - Prevent PHP deprecated warning when generating variations from attributes for new WooCommerce variable products
483 * TWEAK: Premium - Purge cache when the `Variation Swatches for WooCommerce` plugin settings get updated
484 * TWEAK: Premium - Settings - Style improvement for the `Purge cache permissions` select2 box
485 * TWEAK: Recognise LearnDash plugin tables in database optimization
486 * TWEAK: Remove empty `uploads/.htaccess` file and remaining cron events
487 * TWEAK: Smush - Disable server info in smush logs by default
488 * TWEAK: Smush - Resolve double log entries when compressing a single image from the media library metabox
489 * TWEAK: Prevent unwanted PHP notice upon update
490
491 = 3.2.19 - 15/Sep/2023 =
492
493 * FIX: Cache - Relevant caches are now purged upon updating homepage display settings and posts per page settings
494 * FIX: Minify - Multiline content inside textareas break after exporting and importing settings
495 * FIX: Smush - Images are not compressed with default (image quality = 100) settings
496 * FIX: Premium - Cache - Caching stops working when WordPress salt keys contain backslash (\) character
497 * FIX: Premium - User per role cache not working when tables do not have `wp` prefix
498 * FIX: Premium - When lazy loading is enabled, the picture tag in initial viewport is not visible
499 * TWEAK: Fixed date format and timezone in the cache last modification comment according to the site configuration
500 * TWEAK: Fixed spelling errors in the repository
501 * TWEAK: Minify - The process of purging cache for 3rd party caching solutions now works properly when multiple other solutions are present
502 * TWEAK: Premium - Lazy load - Added Jetpack, Optimole, Rocket Lazy Load, and Smush (WPMU Dev) plugins to the incompatibility notice
503 * TWEAK: Prevent PHP warning upon installing themes from the WordPress repository
504 * TWEAK: Update the composer package yahnis-elsts/plugin-update-checker for PHP 8.2 compatibility
505
506 = 3.2.18 - 11/Aug/2023 =
507
508 * FIX: A bug in the v3.2.17 release that caused certain database optimization buttons to be disabled has been fixed
509 * TWEAK: Reset WebP serving method upon updating to version 3.2.18
510
511 = 3.2.17 - 08/Aug/2023 =
512
513 * FIX: Automatically compress newly-added images feature now works on multisite in case of attachment ID is the same in both sites
514 * FIX: Minify - No separate try-catch blocks for same handle
515 * FIX: Premium - Unused Images - Recognise Elementor Carousel, Slides, Flip Box, and Site logo widget images
516 * FIX: Premium - Prevent memory exhausted PHP fatal error when using unused images feature with Elementor
517 * TWEAK: External links will open in new tab/window
518 * TWEAK: Remove `htaccess-capability-tester` dependency
519 * TWEAK: Remove residue folders in `uploads/wpo`
520
521 = 3.2.16 - 06/Jul/2023 =
522
523 * FIX: HTML minify should not remove `title` tag added by AIOSEO
524 * FIX: Premium - Fetching unused images data is incorrect when previous task queue is not properly unlocked
525 * FIX: Premium - Unused Images - Recognise Elementor background images
526 * TWEAK: Premium - Prevent conflicts between the minify feature and the `YITH Point of Sale for WooCommerce` plugin
527 * TWEAK: Premium - Compatibility issue with Smart Slider 3
528 * TWEAK: Suppress PHP warnings caused by WebP converter
529 * TWEAK: Database optimization - Prevent duplicate AJAX requests, minor code improvements
530 * TWEAK: Smush - Add a cron job to run pending image compressions, ensuring completion of the process even if bulk image compression encounters interruptions or failures
531 * TWEAK: Clean up files on uninstall
532 * TWEAK: Added compatibility for `Custom Permalinks` plugin
533 * TWEAK: If minifying is enabled, then check that the purge cron event exists (not only upon plugin activation)
534 * REFACTOR: Premium - Unused Images - Separate classes for Beaver Builder, Estatik, and Yoast SEO plugins
535 * FIX: Premium - WP CLI commands permission issues solved
536
537 = 3.2.15 - 09/May/2023 =
538
539 * FEATURE: Premium - Cache - Added compatibility with the "WooCommerce Multilingual & Multicurrency" plugin's multi-currency feature
540 * FIX: Premium - Above the folder elements should not be loaded lazily
541 * FIX: Prevents minify cache invalidation when asset version is changed but content is same
542 * FIX: Prevent PHP 8 uncaught exception `TypeError` when using CloudFlare
543 * FIX: Add logging destination UI
544 * FIX: Premium - Cache - Prevents a PHP fatal error that occurs when user cache is enabled on sites running on MariaDB with a version prefix of '5.5.5-' and PHP versions prior to 8.0
545 * FIX: Serving WebP images only to supported browsers wasn't working properly when page caching is enabled
546 * FIX: Minify - `inherit` Google fonts method is not working
547 * TWEAK: Prevent PHP deprecation notice when purging minify cache
548 * TWEAK: Cache - Prevent PHP warning when deleting cache
549 * TWEAK: Suppress PHP notice when cannot write to .htaccess file
550 * TWEAK: Add user capability check for smush task manager ajax handling method
551 * TWEAK: Minify - Do not send cache control and last modified headers if already present
552 * TWEAK: Smush - clean up log entries
553 * TWEAK: Correctly handle XX and T1 country codes in Cloudflare's IP country header
554 * REFACTOR: Separate classes for activation, deactivation and uninstall actions
555
556 = 3.2.14 - 30/Mar/2023 =
557
558 * FIX: Compatibility with WordPress 6.2 when using PHP 8.x
559 * FIX: Divi builder's edit mode when WebP serving is using the "alter HTML" method
560 * FIX: Premium - Unused images feature - improve compatibility with Beaver Builder and its addons
561 * FIX: Cache - Page caching wasn't working on the IIS webserver
562 * TWEAK: Update seasonal notices
563 * TWEAK: Prevent deprecation notices in PHP 8.2+
564
565 = 3.2.13 - 13/Mar/2023 =
566
567 * FEATURE: WebP - Ability to convert to webp format from media library
568 * FIX: Prevent PHP warning when minify-log files are missing or corrupted, also added appropriate error message
569 * FIX: Delete webp files and uncompressed file when media is deleted
570 * FIX: Polylang compatibility - now upon updating any post, caches for all translated languages are cleared
571 * FIX: Prevent adding unsupported media types to the smush task list
572 * FIX: WebP - Unsupported formats throws a fatal error
573 * FIX: Compress image UI for webp images
574 * FIX: Premium - WebP Images are marked as unused images
575 * FIX: Resolved an issue where Beaver Builder's edit mode was not functioning properly when WebP conversion was enabled
576 * FIX: Prevent creating multiple cache directories for URLs that contain non-English characters
577 * TWEAK: Preload allowed time difference is set to be the same as max execution time
578 * TWEAK: Premium - Unused images feature - Add compatibility with Yoast SEO social images
579 * TWEAK: Prevent jQuery deprecation notices
580 * SECURITY: Fixed a non-persistent XSS vulnerability that could occur on certain servers when the WebP conversion option was enabled. This vulnerability could allow an attacker to execute arbitrary JavaScript code in the victim's browser by tricking them into clicking on a specially crafted link. Thanks to Paolo Elia for reporting this.
581
582 = 3.2.12 - 06/Feb/2023 =
583
584 * SECURITY: Today's 3.2.11 release (free version only - there was no 3.2.11 Premium release) checked nonces incorrectly, opening up the possibility of an attacker tricking an admin into clicking links crafted to perform unauthorised actions on the WP Optimize configuration on his site.
585
586 = 3.2.11 - 06/Feb/2023 =
587
588 * FIX: Empty query string updates cache
589 * FIX: Cache - Purge cache after string translation update in WPML
590 * FIX: Cache - Preload stuck and fails to complete
591 * FIX: Prevent PHP warning when `.htaccess` files don't have write permission
592 * FIX: Premium – Fixed compatibility issue with WP Hide plugin
593 * FIX: Minify - Less than 20KB stylesheets loading order
594 * TWEAK: Add cron event only if clear backup images is enabled
595 * TWEAK: Cache - Use WordPress GMT offset for cache comment
596 * TWEAK: Only allow image types that can be compressed
597 * TWEAK: Cached page is not served for sites that have own directory for WordPress files
598
599 = 3.2.10 - 28/Nov/2022 =
600
601 * FIX: Prevent php warning and increase SendInBlue `mailin` plugin compatibility
602 * FIX: Avoid screen juggling while selecting optimizations from dropdown in scheduled clean up
603 * FIX: Prevent cache purge upon deactivation using filter
604 * FIX: Cache purge ability of all registered user
605 * FIX: Recognise WooCommerce product category images as used images
606 * FIX: Multisite support in `cached-file-log.php` template
607 * TWEAK: Improve Optimization Schedule UI
608 * TWEAK: Consolidated error notices by the use of a global WPO notice object.
609 * TWEAK: Remove `Reset WebP serving method` button when there are no webp conversion tools
610 * TWEAK: Remove query strings from scripts
611 * TWEAK: Add `Restrict Content Pro` plugin slug to `plugin.json`
612 * TWEAK: Add option to remove orphaned `user meta` data upon run optimization
613 * TWEAK: Add `no-cache` headers when minify is enabled and page caching is not
614 * TWEAK: Ability to remove `.htaccess` rules when gzip compression is not available
615 * TWEAK: WebP: Avoid PHP warnings when using hot linked images (Alter HTML method)
616 * TWEAK: WebP conversion is unavailable when php shell functions do not exist
617 * TWEAK: Improved UI settings for asynchronous loading and page speed testing exclusion tools
618 * TWEAK: Add a constant to enable/disable webp feature
619 * TWEAK: Set a global context for $wp_file_descriptions context so that it gets assigned to correctly, preventing a subtle visual change in the theme editor
620 * TWEAK: Prevent php warning from `webp-convert` library
621 * TWEAK: Update currently-active installs number in thank you for installing notice.
622 * TWEAK: Replaced deprecated use of jQuery.change()
623
624 = 3.2.9 - 06/Sep/2022 =
625
626 * FEATURE: Import and export settings
627 * FIX: Avoid infinite loop while using unused images export csv
628 * FIX: Scheduled cache preloading issue
629 * FIX: WebP testing making unnecessary background HTTP checks
630 * FIX: Google fonts compatibility with The7 theme
631 * FIX: Prevent console error for undefined `wp_optimize` for smush scripts
632 * TWEAK: Avoid PHP warnings on cache cleanup
633 * FIX: Ability to disable webp serving while caching is on
634 * TWEAK: Reset webp conversion method flags daily using cron job
635 * TWEAK: Remove orphaned `wpo_weekly_cron_tasks` cron job upon uninstallation
636
637 = 3.2.8 - 23/Aug/2022 =
638
639 * FIX: Build system error led to a missing file in 3.2.7 which could cause an error when using related functions
640 * FIX: Fix incorrect function name in admin class
641
642 = 3.2.7 - 15/Aug/2022 =
643
644 * FEATURE: A CLI command for generating lists of unused images as a CSV file (Premium)
645 * FIX: The unused images CSV downloads have a few redundant images listed
646 * FIX: ACF block field images are listed as unused images
647 * FIX: Correctly recognize `inherit` in google fonts async loading
648 * FIX: Cache - Do not purge when `wp_update_nav_menu` is removed from `wpo_purge_cache_hooks` array
649 * TWEAK: Prevent PHP warnings when using `json_decode` result
650 * TWEAK: Create cache config file if not present because of site migration
651 * TWEAK: Update notice class
652 * TWEAK: Recognize WooCommerce scheduled sales and cache accordingly
653 * TWEAK: Prevent duplicate `wp-optimize` entry in tables optimization list
654 * TWEAK: Test htaccess capability only when needed by webp feature
655 * TWEAK: Increase compatibility with Aelia plugins
656
657 = 3.2.6 - 15/Jun/2022 =
658
659 * FIX: Incorrect static method calling causes parse Error in PHP 5.6.36
660 * FIX: WebP - Trailing slash file creation issue in PHP 8
661 * FIX: PHP warning in cache rules file
662 * FIX: Asynchronous google fonts loaded twice
663 * TWEAK: Conditional Tags anchor tag fix
664
665 = 3.2.5 - 03/Jun/2022 =
666
667 * FIX: Fix a fatal error that could occur in 3.2.4 if settings had not been saved
668
669 = 3.2.4 - 24/May/2022 =
670
671 * FEATURE: Create a cron job to delete expired cache files
672 * FEATURE: WebP image format can be used to serve images
673 * FIX: Incorrect record count after importing
674 * FIX: Image smushing issues
675 * FIX: Problem with Redirect – Trailing Slash on URLs
676 * FIX: Unused images issue with ACF `repeater` and nested fields
677 * TWEAK: Added functionality for exclude caching based on conditional tags
678 * TWEAK: Update last optimized time for scheduled optimizations
679 * TWEAK: Cache - Prevent already header sent warnings while importing posts
680 * TWEAK: Improved UI for `actionscheduler_` tables
681 * TWEAK: Add filter to allow/disallow `gz` file generation
682 * TWEAK: Show error message to user when WP_CACHE constant can't be removed from wp-config.php due to file permission issue.
683
684 = 3.2.3 - 09/Mar/2022 =
685
686 * FEATURE: Minify: Pre-generate assets
687 * FIX: Cache - 'Purge cache permissions' setting does not allow additional roles to access the purge cache tool
688 * TWEAK: Make smush details button work in media modal window
689 * TWEAK: Do not show overhead in red when the amount is small
690 * TWEAK: Avoid PHP Notices caused by "upgrader_process_complete" action
691 * TWEAK: Force monolog 2.3.* in order to avoid PHP 7.2+ dependency
692
693 = 3.2.2 - 24/Jan/2022 =
694
695 * FEATURE: Cache - Allow debugging of which cache file is chosen
696 * FEATURE: Premium - Cache - Serve cached content for logged in users, per role
697 * FIX: Premium - Unused Images - Fixed trashed images listing
698 * FIX: Image selection issue in compressed and unused image is fixed.
699 * FIX: ACF plugin compatibility issue with select2 JS library
700 * FIX: Premium - Unused Images - Multibyte characters in filename are not recognised correctly
701 * FIX: Table optimization displays wrong information about WP All Import plugin tables
702 * FIX: Potential PHP fatal error - Call to undefined function _wp_get_current_user()
703 * FIX: Minify - correctly minify multiple `calc` function in single property value
704 * FIX: SQL error when keeping post revisions and optimizing
705 * FIX: Cache - Prevent caching WordPress critical error page
706 * FIX: Minify - Google fonts merging issue when the same font is enqueued in both API V1 and V2
707 * FIX: Minify - Make `inherit` and `inline` settings work with Google fonts
708 * FIX: Database error upon plugin activation
709 * TWEAK: Minify - Show a notice if other minification plugins are installed and active
710 * TWEAK: Remove unused bundled JavaScript from minify library to avoid irrelevant scan results
711 * TWEAK: Image compression - Image compression stats include gains on image sizes
712 * TWEAK: Make sure that messages from WP_Error objects in gzip compression are displayed to users.
713 * TWEAK: Prevent PHP notice from WooCommerce deprecation
714 * TWEAK: Create `task` tables upon activation, if needed.
715 * TWEAK: Show error instead of success when table doesn't exist
716 * TWEAK: Update seasonal notices
717 * TWEAK: Prevent PHP fatal error in media list view, when images are makred as compressed
718 * TWEAK: Image edit window - Link does not go to image settings and more/less link not working
719
720 = 3.2.1 - 29/Nov/2021 =
721
722 * FIX: Apply different image compression levels
723 * FIX: Cache - Purge WooCommerce product page after stock update
724 * FIX: Database errors after adding a new site
725 * FIX: Flatsome theme compatibility with google fonts
726 * FIX: Image compression advanced settings, display default backup days instead of empty value.
727 * FIX: Image compression was not working when the image extension used capital letters
728 * FIX: Premium - Cache - Potential PHP error in User-specific cache
729 * FIX: Premium - resolve potential admin-area PHP error if the deprecated mailchimp sync plugin and MC4WP plugin are both active (and potentially other situations where a plugin deactivates another)
730 * FIX: Premium - Unused images - compatibility with PHP 8
731 * FIX: Premium - Unused images - issue with parenthesis in name
732 * FIX: Premium - Unused images - Pagination count doesn't update
733 * FIX: Prevent a PHP notice when using with UpdraftCentral
734 * FIX: Save prioritize maximum compression setting correctly
735 * FIX: Wrong redirect when wiping settings on multisite
736 * TWEAK: Premium - add review link at bottom of settings
737 * TWEAK: Force monolog/monolog and psr/log versions to retain PHP 5.X compatibility/satisfy wordpress.org SVN hooks
738 * TWEAK: Add compatibility with Kinsta
739 * TWEAK: Added functionality for to convert MyISAM to InnoDB
740 * TWEAK: Add filters for minify input string
741 * TWEAK: Cache - Added filter to modify cache exception urls
742 * TWEAK: Cache - Optimize preload from sitemap
743 * TWEAK: Cache - Serve different versions based on cookie consent
744 * TWEAK: changed filter to prevent deprecation notice in php 8.1+
745 * TWEAK: Decide automatically whether to inline css or not based on file size
746 * TWEAK: Fix typo in text domain name
747 * TWEAK: get_hurl function minified.
748 * TWEAK: Improve clarity of debug message when DONOTCACHEPAGE constant is used
749 * TWEAK: Improve DB UI/UX on multisite
750 * TWEAK: Improve minify cache size messages
751 * TWEAK: Making Estatik plugin compatible
752 * TWEAK: Minify - Add JS translations support
753 * TWEAK: Minify HTML only on cache pre-loading
754 * TWEAK: Port from previous semaphore classes to Updraft_Semaphore_3_0
755 * TWEAK: Premium - Unused images - Show that there are images in the trash without having to re-scan everything
756 * TWEAK: Prevent a PHP notice when downloading image compression log file. Fix backup modal styling issue.
757 * TWEAK: Prevent fatal error in gzip settings when stylesheet could not be fetched
758 * TWEAK: Short-circuit trivial case of nothing in the buffer when page-caching, to involve any possible other issues
759 * TWEAK: Update comments count after trackbacks and pingbacks deletion
760 * TWEAK: Update minified asset when the enqueued scripts and styles version change
761 * TWEAK: Use proper constant of includes path in user cache extension
762 * TWEAK: Fix path to `wpo-plugins-tables-list.json` in robots.txt
763
764 = 3.1.12 - 12/Jul/2021 =
765
766 * FEATURE: Ability to defer js files and asynchronously load css files
767 * FEATURE: Option to not aggregate inline styles and scripts
768 * FIX: Always purge this cache HTML issue
769 * FIX: Cache - Enable cache for subfolders and multisite installation with the permalink structure example.com/index.php/a-post-name
770 * FIX: PHP 8 Issue: Minify and Merge Error
771 * FIX: Silent failure of page caching if plugin location not found
772 * TWEAK: Added Update URI header field to avoid accidentally being overwritten with an update of a plugin of a similar name from the WordPress.org Plugin Directory.
773 * TWEAK: Delay displaying notices for 2 weeks
774 * TWEAK: Improve label of when saving a media type in always purge this
775 * TWEAK: Improve query for EWWW IO history
776 * TWEAK: Prevent a PHP notice if using WP-Optimize and MetaSlider on the same site.
777 * TWEAK: Prevent PHP warnings from theme update and google font minify
778 * TWEAK: Skip HTML minification if the total size is > 1MB (takes too long to be worthwhile)
779 * TWEAK: Updating custom compression slider values
780
781 = 3.1.11 - 08/Jun/2021 =
782
783 * FIX: Cache - Don't cache pages for logged-in users when 'Serve cached pages to logged in users' option (new in 3.1.10) is enabled
784
785 = 3.1.10 - 26/May/2021 =
786
787 * FEATURE: Premium - Cache - User-specific cache. Useful for subscription websites, and websites where tailored content is offered to logged-in users.
788 * FEATURE: Page cache now also caches RSS feeds
789 * FEATURE: Ability to exclude files from minify process
790 * TWEAK: Prevent PHP warning when deactivating Minify and the cache folder does not exist anymore
791 * TWEAK: Premium - Lazy-load - Possibility to disable Lazy load on specific pages
792 * TWEAK: Do not enqueue deleted script
793 * FIX: Minify - Some pattern CSS import statements broke site
794 * FIX: Minify - Events triggering
795 * FIX: Google Fonts regression in 3.1.9
796
797 = 3.1.9 - 29/Apr/2021 =
798
799 * FEATURE: Power Tweak - Change meta_key field length and create new index
800 * FEATURE: Premium - Automatic Backups using UpdraftPlus during scheduled optimizations
801 * FEATURE: Keep last X revisions
802 * FIX: Overlapping header notice in mobile view
803 * FIX: Cache - Wildcard not working in cache exclusions
804 * FIX: Prevent error in htaccess when mod_header isn't available
805 * FIX: PHP Fatal error on deleting plugin
806 * FIX: PHP 8 Issue: loadAsync JS error
807 * FIX: RankMath breaks robots.txt
808 * TWEAK: Bypass minify when editing translations using TranslatePress
809 * TWEAK: Purge minify cache from front end
810 * TWEAK: Minify - Prevent cache directory creation while disabled
811 * TWEAK: Add Google Fonts API version 2 support
812 * TWEAK: Minify - Save all tab content settings changes with single Click
813 * TWEAK: Improved optimization preview
814 * TWEAK: Filter the list of preloaded URLs
815 * FEATURE: Premium - Cache - Always purge this page
816 * TWEAK: Update seasonal notices
817 * TWEAK: Bump WP version requirement to 4.5+
818
819 = 3.1.8 - 12/Mar/2021 =
820
821 * FIX: Cache - Warning failed to open dir
822 * FIX: Premium - Unused images - Fixed issue with images including a size suffix similar to WP sizes
823 * FIX: Display optimization data based on retention period
824 * FIX: Scheduled cleanup settings - Invalid date selection
825 * TWEAK: Premium - Separate table optimisations per sub-site
826 * TWEAK: Premium - Unused images - Add compatibility with the Envira Gallery plugin
827 * TWEAK: Page caching: add support for Avada
828 * TWEAK: Add visual clue when image compression was cancelled
829 * TWEAK: Image compression - multi image selection using Ctrl/Shift keys
830 * TWEAK: Premium - Unused images - Reset last clicked image reference when `select none` is clicked
831 * FIX: Premium - Unused images - Pagination not working in the trash
832 * TWEAK: Prevent bots from indexing plugins list json file
833 * TWEAK: Minify - Added a setting to change the time stale cache should be kept
834 * TWEAK: Better support for Beaver Builder
835 * TWEAK: Prevent PHP warning when reading a file's size
836 * TWEAK: Cache - Purge the blog page when updating a post
837 * TWEAK: Cache - Purge next and previous posts on post update
838 * TWEAK: Cache - Purge sitemap files on post update
839
840 = 3.1.7 - 12/Feb/2021 =
841
842 * FEATURE: Premium - Preload key requests (Preload fonts and other assets)
843 * FIX: Detecting Brotli compression issue
844 * FIX: Cache - PHP Warning in URLs to exclude from caching
845 * FIX: Premium - Unused images - Unused Images Tool not recognising Greek characters
846 * FIX: Button for disabling Gzip doesn't showing
847 * TWEAK: Database optimization - Prevent fatal error due to files missing
848 * TWEAK: Skip minify when SCRIPT_DEBUG is set to true
849 * TWEAK: Fixed Font-awesome settings
850 * TWEAK: Add support for different spellings of "Font-awesome"
851 * TWEAK: Update the feature comparison table
852 * TWEAK: Added the option to not show the warning before deleting a table
853 * TWEAK: Wipe all options upon plugin de-installation
854 * TWEAK: Premium - Lazy-load - Lazy load support for background images
855 * TWEAK: Minify - Add file size in the minify cache summary
856 * TWEAK: Detect conflicting plugins for GZIP issue
857 * TWEAK: Database optimization - Include all tables if database prefix is not set on WP install
858 * TWEAK: Premium - Unused images - added "X of X images loaded" for unused trash images
859 * TWEAK: Don't allow to remove actionscheduler_* tables
860 * TWEAK: Premium - Unused images - Show a progression screen when doing any action with unused images
861 * TWEAK: Cache - Enable cache for the old default permalink structure `domain.com/index.php/a-post-name` by creating a folder without the extension
862 * TWEAK: Show previous action as message on Trackbacks or Comments enable or disable.
863 * TWEAK: Prevent deprecation notice on PHP 8.0
864 * TWEAK: Update notices
865
866 = 3.1.6 - 17/Dec/2020 =
867
868 * FIX: Fix wrong class name
869
870 = 3.1.5 - 17/Dec/2020 =
871
872 * FEATURE: Introduction of Power tweaks (premium feature)
873 * FEATURE: Power tweak - replace WooCommerce "Get total spent" query by a faster one
874 * FIX: CloudFlare not detected on gzip and browser caching tabs
875 * FIX: Cloudflare caching issue
876 * FIX: Premium - Unused images - Download CSV warning
877 * FIX: PHP 8 compatibility issue WP_Optimize_Browser_Cache->prepare_interval()
878 * TWEAK: Upgrade jQuery code to deal with deprecations with the latest bundled version
879 * TWEAK: Fix wrong usage of wp_localize_script to prevent warnings in PHP 8
880 * TWEAK: Premium - Unused images - Update the data when moving images to the trash / deleting instead of doing a hard refresh
881 * TWEAK: Change how default exclusions are handled
882 * TWEAK: Now that PHP 8.0 has been released, bump minimum PHP version requirement from PHP 5.4 to 5.6.
883 * TWEAK: Delete WP-O's .htaccess rules at deactivation
884 * TWEAK: Premium - Unused images - Separate unused images and unused image sizes processes
885 * TWEAK: Update jQuery document ready style to the one not deprecated in jQuery 3.0
886 * TWEAK: Minify CSS - Possibility to toggle the google fonts `display=swap` parameter from the UI.
887 * TWEAK: Fix small UI issues
888 * TWEAK: Clean up all cron events when deactivating the plugin
889 * TWEAK: Premium - Possibility to set permissions for purging page cache and minify files.
890 * TWEAK: Bypass minify when editing a post using the Brizy editor
891 * TWEAK: Renamed UpdraftCentral's command classes filter
892 * TWEAK: Bump WP version requirement to 4.4+, and PHP version requirement to 5.4+
893 * TWEAK: Purge caches when updating a plugin / theme (also when updating using a ZIP archive)
894 * TWEAK: Improve the admin bar "cache" menu
895 * TWEAK: Show information about Cloudflare support
896 * TWEAK: Database optimization - Resume optimizing when a timeout occurs
897 * TWEAK: Remove redundant code
898 * TWEAK: Cache feature - Do not cache pages with fatal errors
899 * TWEAK: Cache feature - Do not cache RSS feeds
900 * TWEAK: Page caching - Prevent adding the "comment cookie" when ordering on WooCommerce
901
902 = 3.1.4 - 15/Sep/2020 =
903
904 * FIX: Prevent fatal error when updating
905
906 = 3.1.3 - 15/Sep/2020 =
907
908 * TWEAK: Added Oasis Workflow Pro tables to the list
909 * FIX: Unused images - restore from trash UI issue
910 * FIX: Premium - Unused images - Images trash works on multisite
911 * TWEAK: Prevent GLOB_BRACE warning on systems not supporting it
912 * TWEAK: Minify - Reset minified files when saving an Elementor page or post
913 * TWEAK: Minify - Purge cached assets when UpdraftCentral was updated.
914 * TWEAK: Minify - Enable users to defer all JavaScript, including the merged and minified assets
915 * TWEAK: Minify - Improve general compatibility with The Events Calendar and other plugins
916 * TWEAK: Image compression - prevent database warning when the table `ewwwio_images` does not exist
917 * TWEAK: Image compression - Detect already compressed images by other plugins (ShortPixel Image Optimizer, Smush, Imagify, Compress JPEG & PNG images by TinyPNG, EWWW Image Optimizer)
918 * TWEAK: Image compression - Added compression stats in the Media Library's list view
919 * TWEAK: Image compression - Possibility to restore all compressed images
920 * TWEAK: Image compression - Remove NitroSmush service, which is no longer active.
921 * TWEAK: Image compression - Tweak user agent when requesting to resmush.it
922 * TWEAK: Preserve selected optimizations when saving settings
923 * TWEAK: Page caching - Prevent PHP Notice: Trying to get property 'comment_status' of non-object
924 * TWEAK: Cache - Do not serve from cache when a user has posted a comment
925 * TWEAK: Cache feature - Added integration with Cloudflare (Premium)
926 * TWEAK: Page caching - Rename variables in the global context to more specific names
927 * TWEAK: Premium - Prevent potential JS error in the "unused images" feature
928 * TWEAK: Premium - Unused images - Add support for Slider Revolution
929 * TWEAK: Premium - Unused images - use the URL stored in attachment meta-data as fallback
930 * TWEAK: Premium - Unused images - Only fetch image information when requesting the information to be displayed
931 * TWEAK: Premium - Lazy-load - Show a notice when a known plugin also provides lazy-loading, instead of disabling the feature
932 * TWEAK: Minify - Only load the required vendor classes instead of using composer's autoload in order to prevent compatibility issues
933 * TWEAK: Minify - Added filters `wpo_minify_get_js` and `wpo_minify_get_css` to enable users to do extra processing before saving the code
934 * TWEAK: Minify - Prevent PHP warning when no log is present
935 * TWEAK: Minify - Prevent error when the function gzencode doesn't exist
936 * TWEAK: Removed MetaSlider notice in the notices collection
937
938 = 3.1.2 - 03/Jun/2020 =
939
940 * TWEAK: Only load minify dependencies when the feature is enabled, reducing the risk of conflicts with plugins with obsolete/incompatible library versions
941
942 = 3.1.1 - 03/Jun/2020 =
943
944 * FIX: Minify - Make the feature unavailable when W3 Total Cache is active (an ancient version of the library in that plugin is incompatible and can cause a crash if either plugin attempts to perform minification)
945 * TWEAK: Tweak polling interval for fetching WP-O minify cache information
946
947 = 3.1.0 - 02/Jun/2020 =
948
949 * FEATURE: Major new feature: JS and CSS combination and minification. Read more at: https://getwpo.com/faqs/category/minification/
950 * FIX: Image compression - delete backup images in a non-dated folders
951 * FIX: Premium - Unused images - Only move relevant images to trash
952 * FIX: Cache feature - Show correct preloading status
953 * FIX: Fixed optimizations preview on multisite
954 * FIX: Cache feature - Fixed error handling for cache preload action
955 * FIX: Call to unavailable function was breaking page caching on old WP versions without add_filter() available early
956 * TWEAK: Premium - Do not show the loading overlay on the database screen when loading the unused images list
957 * TWEAK: Periodically update the plugins' tables list (plugin.json)
958 * TWEAK: Do not use wp_get_upload_dir() on WP versions before it is available
959 * TWEAK: Prevent JavaScript error when showing a notice after purging the cache
960 * TWEAK: Cache feature - Better handle errors when enabling or disabling caching
961 * TWEAK: Cache feature - Use HTTP headers to indicate page caching status
962 * TWEAK: Premium - Unused images - Added filter `wpo_unused_images_ids`
963 * TWEAK: Cache feature - Prevent purging the whole cache when saving a WooCommerce product
964 * TWEAK: Premium - Page cache - "Do not cache this post" setting to only be effective when viewing a single post or page.
965 * TWEAK: Cache feature - Added the filter wpo_cache_preload_sitemap_filename to enable overriding of the sitemap name used for preloading
966 * TWEAK: Make all tooltips accessible via keyboard navigation
967 * TWEAK: scandir() usages changed to opendir()
968 * TWEAK: Database optimizations - Add Gravityforms to list and tweak UI
969 * TWEAK: Cache feature - Preload indicates when using a sitemap
970 * TWEAK: Hide the "remember to save settings" notice after saving.
971 * TWEAK: Updater in paid version now will make checks on availability without needing login
972
973 = 3.0.19 - 31/Mar/2020 =
974
975 * FIX: Fix force tables optimisations checkboxes
976 * FIX: Fix tablesorter issue preventing the optimisations from displaying
977 * FIX: Premium - Fix Spam and Trashed Comments preview
978 * TWEAK: Premium - Possibility to exclude a page from cache from the page / post edit
979
980 = 3.0.18 - 27/Mar/2020 =
981
982 * TWEAK: Wipe WP-Optimize settings function
983 * FIX: Don't override advanced-cache.php if caching is disabled
984
985 = 3.0.17 - 19/Mar/2020 =
986
987 * FIX: Show image as uncompressed after restoring backup from the media modal
988 * FIX: Save the last state for "take a backup" checkboxes
989 * TWEAK: Load optimizations and database tables list via ajax
990 * TWEAK: Move database optimization settings to the database page
991 * TWEAK: Improve error handling for ajax requests
992 * TWEAK: Cache feature - Add the filter `wpo_cache_show_cached_by_comment` to enable users to hide the HTML comment <!-- Cached by WP-Optimize... -->
993 * TWEAK: Cache feature - Clear archive page cache when post is updated
994 * TWEAK: Cache feature - Possibility to exclude front page from the cache
995 * TWEAK: Cache feature - Deny direct access to cache files folder
996 * TWEAK: Cache feature - Prevent direct access to cache config content
997 * TWEAK: Image compression - Prevent confusing errors when restoring an image whose backup file was deleted
998 * TWEAK: Only show the plugin's own notices on WP-Optimize's pages
999 * TWEAK: Remove MetaSlider related message
1000 * TWEAK: Premium - Page cache - Possibility to generate a cache file per country with WooCommerce geolocation
1001 * TWEAK: Premium - Reorganise cache extensions to only keep the code required at the cache generation / fetching stage
1002 * TWEAK: Premium - Unused images - add support for non-dated folders
1003 * TWEAK: Premium - Unused images - Added wpo_unused_images_per_page filter for filtering images per page count
1004 * TWEAK: Premium - Unused images - Possibility to move unused images to trash before completely deleting
1005
1006 = 3.0.16 - 27/Jan/2020 =
1007
1008 * FIX: Premium - Unused images - Fixed detection of -rotated and -scaled images
1009 * TWEAK: Cache feature - Cache sitemap.xml and robots.txt
1010 * TWEAK: Cache feature: fix scheduled preload
1011 * TWEAK: Cache feature: save the value of wpo_current_url() to enhance compatibility with Weglot
1012 * TWEAK: Fix permissions for restoring or compressing images on multisite
1013 * TWEAK: Premium - Tweak UI when fetching unused image infos
1014 * TWEAK: Premium - Added compatibility for Oxygen builder
1015 * TWEAK: Premium - Added WP-CLI commands for managing cache
1016
1017 = 3.0.15 - 16/Dec/2019 =
1018
1019 * FIX: Image compression - Fix restoration on multisite
1020 * FIX: Cache feature - Scheduled preload when a sitemap does not exists
1021 * TWEAK: Check for headers_sent() before closing the browser connection
1022 * TWEAK: Cache feature - Do not show clear cache buttons in the admin bar if the user doesn't have the right capability
1023 * TWEAK: Cache feature - Don't cache REST API requests
1024 * TWEAK: Tabs to point to the correct URL for direct access
1025 * TWEAK: Only log the reason why an URL isn't cached if the constant WPO_CACHE_DEBUG is true
1026 * TWEAK: Image compression - Added a new filter 'wpo_image_compression_single_image_options' to allow changing the image quality for each image.
1027 * TWEAK: Cache feature - Added instructions how to edit advanced-cache.php file
1028 * TWEAK: Detecting Cloudflare and Brotli compression before enabling GZIP
1029
1030 = 3.0.14 - 25/Nov/2019 =
1031
1032 * FIX: Fixed default option values for smush backup automatic deletion
1033 * FIX: Prevent potential Fatal error when including notices class
1034 * FIX: Image compression - Fixed division by zero notification
1035 * FIX: Fix list of backup entities before removing unused images
1036 * TWEAK: PHP 7.4 compatibility tweak in the fatal error handler
1037 * TWEAK: Image compression feature - Backup of original image paths are now relative
1038 * TWEAK: Page cache - Fix condition when displaying the message indicating the reason for not caching or serving cache
1039 * TWEAK: Page cache - Do not save post to cache if comments are opened and the user has saved their information
1040 * TWEAK: Page cache - intelligently handle Google Analytics tracking parameters in URL (Premium)
1041 * TWEAK: Page cache - add a query parameter to force display of the reason for not caching a page or serving a cached page
1042 * TWEAK: Cache feature - Added is_writable() checking before trying to write advanced-cache.php
1043 * TWEAK: Premium - Optimize database optimisations for WP-CLI commands
1044 * TWEAK: Premium - Don't run UI requests for WP-CLI actions
1045 * TWEAK: Premium - Page cache - Add default WooCommerce currency to the cache config
1046 * TWEAK: Page cache - Add the possibility to save default values to the cache config
1047 * TWEAK: Page cache - Add a possible secondary cache extensions location using the constant 'WPO_CACHE_CUSTOM_EXT_DIR', to allow keeping the bundled extensions in their original location
1048 * TWEAK: UI tweaks
1049 * TWEAK: Add missing filename reference in error message
1050 * TWEAK: Page cache - Purge cache when Autoptimize's cache is cleared
1051 * TWEAK: Image compression - Compatibility with Elementor plugin
1052 * TWEAK: Image compression - Added feature to mark all images as uncompressed
1053 * TWEAK: Bump supported minimum WP version up to 3.9
1054
1055 = 3.0.13 - 21/Oct/2019 =
1056
1057 * FIX: Don't show VIEWs as corrupted database tables
1058 * TWEAK: Image compression - Cancel button now stops the compression process
1059 * TWEAK: Only show general notice when update notice isn't shown
1060 * TWEAK: Improve message when Gzip compression is already enabled
1061 * TWEAK: Premium - Use path to include lazy load script
1062 * FIX: Image compression - Fixed detecting of uncompressed images
1063 * TWEAK: Image compression - Use wp_remote_get() instead file_get_contents() for retrieving compressed images
1064 * TWEAK: Use wp_remote_get() instead file_get_contents() for retrieving compressed images
1065 * TWEAK: Cache feature - add a 'Purge all' cache button to the admin bar
1066 * TWEAK: Premium - Prevent php warning in scheduled optimisations list
1067 * TWEAK: Premium - Unused images feature - Add compatibility with Advanced Custom Fields (ACF) image and gallery fields
1068
1069 = 3.0.12 - 24/Sep/2019 =
1070
1071 * TWEAK: Cache - Purge cache files when updating menu, saving the customizer and editing widgets
1072 * TWEAK: Cache - Do not show the reason for not caching when the request is DOING_CRON
1073 * TWEAK: Premium - Unused images feature - Improved detection on sites with many posts/images
1074 * TWEAK: Automatically delete smush image backups option
1075 * TWEAK: Premium - Unused images feature - Better detection of featured images
1076 * TWEAK: Cache - Ability to purge single page or post from cache
1077 * TWEAK: Cache - Display the content of advanced-cache.php to the user if it was not writable when enabling cache
1078 * TWEAK: Image compression - Automatically delete image backups option
1079 * TWEAK: Image compression - metabox now inherits the settings from the main screen
1080 * TWEAK: Image compression - Added feature to mark images as already compressed by another tool
1081 * TWEAK: Image compression - Added detailed log information when image compression fails.
1082 * TWEAK: Premium - Unused images feature - Improved detection on sites with many posts/images
1083 * TWEAK: Premium - Unused images feature - Better detection of featured images
1084 * TWEAK: Premium - Lazy load - Added WooCommerce support
1085 * TWEAK: Premium - Increased warning level and visibility when deleting unused database tables and unused images
1086 * TWEAK: Prevent a couple of unwanted PHP notices being logged when running cron via the command-line
1087 * TWEAK: Tweaked update notice wording
1088
1089 = 3.0.11 - 07/Aug/2019 =
1090
1091 * FIX: Check the results of opendir() when emptying the cache, to prevent a possible infinite loop if it fails
1092 * FIX: Compatibility issues with WordPress 4.0
1093 * FIX: Replace function that did not exist on PHP 5.2
1094 * TWEAK: Add work-around for plugins which call the WP action comment_post incorrectly
1095 * TWEAK: Change the algorithm for locating file-based-page-cache.php to handle same-server site moves better
1096 * TWEAK: Prevent an unwanted PHP notice caused by Action Scheduler purges
1097
1098 = 3.0.10 - 30/Jul/2019 =
1099
1100 * TWEAK: If short-circuiting the attachment_fields_to_edit filter result, return the pre-existing value
1101 * TWEAK: Adjust wpo_delete_files() and related functions with extra sanity checks
1102
1103 = 3.0.9 - 30/Jul/2019 =
1104
1105 * FIX: Fix bug in logic for sending "Content-Encoding: gzip" header that could cause it to be sent prematurely with non-cached pages
1106
1107 = 3.0.8 - 30/Jul/2019 =
1108
1109 * FIX: Lazy-loading regression in recent Premium release
1110 * FIX: Smush images selection on multisite
1111 * FIX: Displaying WP-Optimize tabs menu on mobile devices
1112 * TWEAK: Disable redundant lazy-loading feature when Divi theme is active
1113 * TWEAK: Improve accuracy of message shown when it is not possible to automatically enable Gzip compression of static resources
1114 * TWEAK: Only output reasons a page was not cached if the wp_footer action was run
1115
1116 = 3.0.7 - 25/Jul/2019 =
1117
1118 * FIX: Fix some logic bugs related to the decision whether to send gzip-encoded cached content
1119 * FEATURE: To aid debugging if WP_DEBUG is turned on then if a page was *not* cached, then the HTML source will now contain the reason(s) why not in the footer
1120 * TWEAK: The is_user_logged_in() function is not necessarily available during a WP 'technical difficulties' scenario
1121 * TWEAK: Purge site homepage cache after updating post or publishing a new post (can be over-ridden with the filter wpo_delete_cached_homepage_on_post_update)
1122
1123 = 3.0.6 - 25/Jul/2019 =
1124
1125 * FIX: Regression causing incorrect JavaScript filenames in the Premium release in 3.0.5
1126 * TWEAK: Also add cache-busting for the compiled handlebars file
1127 * TWEAK: Change the handlebars enqueue handle to prevent double loading
1128
1129 = 3.0.5 - 23/Jul/2019 =
1130
1131 * FIX: Short-circuit Updraft_Smush_Manager::add_compress_button_to_media_modal() outside of a dashboard context, so that plugins or themes that hook into some dashboard hooks outside of that context can't cause fatal errors
1132 * TWEAK: Added suffixes with WP-Optimize version number to js, css files
1133 * TWEAK: Change the method used to generate the configuration file path in advanced-cache.php; no issues were reported, but analysis indicated a potential way to generate a path that would not agree with what was written by saving settings; and also another way to generate an invalid path on Windows webservers running on non-standard ports.
1134 * TWEAK: Use WPO_CACHE_CONFIG_DIR constant instead string value in advanced-cache.php
1135
1136 = 3.0.4 - 20/Jul/2019 =
1137
1138 * FIX: Fixed a regression in 3.0 with orphaned relationship data optimization
1139
1140 = 3.0.3 - 20/Jul/2019 =
1141
1142 * TWEAK: Prevent saving of page cache settings when the page cache was already off and another page cache plugin was active from over-writing the other plugin's advanced-cache.php
1143
1144 = 3.0.2 - 19/Jul/2019 =
1145
1146 * TWEAK: Rename in order to cache-bust sites that cached old versions of the JS admin scripts
1147 * TWEAK: Prevent unwanted PHP notice if saving page cache settings without ever having turned the cache on
1148
1149 = 3.0.1 - 18/Jul/2019 =
1150
1151 * FIX: Prevent a potential stray line of text appearing
1152
1153 = 3.0.0 - 17/Jul/2019 =
1154
1155 * FEATURE: Adds a caching feature, with page cache, browser cache control and gzip control
1156 * TWEAK: Smush feature added to medial modal
1157 * TWEAK: Remove references to Keyy
1158 * TWEAK: Image compression metabox tweaks
1159 * TWEAK: Preload after purging, If preload schedule is enabled
1160 * TWEAK: Prevent image compression AJAX call from firing upon every tab change
1161 * TWEAK: Load assets in admin_enqueue_scripts()
1162 * TWEAK: Smush all image sizes
1163 * TWEAK: Add quick feedback link
1164 * TWEAK: Delete the original backup file when an attachment file has been deleted
1165 * TWEAK: Remove die() from shutdown handler
1166 * TWEAK: Remove references to Keyy
1167
1168 = 2.3.4 - 10/Jun/2019 =
1169
1170 * FIX: Incorrect file paths on multisites
1171 * FIX: Wrong DB Schema caused image compression to fail on multisites
1172 * TWEAK: Improve image compression UI
1173 * TWEAK: Add the possibility to hide the image optimisation metabox in the media edit screen.
1174 * TWEAK: Fix potential PHP notice in task queue when Automatic Smush is activated
1175 * TWEAK: Improve JSON-reparser to cope with even more exotic junk from some setups with problems elsewhere in their stack
1176 * TWEAK: Remove the numerical index column from the list of tables
1177 * TWEAK: Prevent methods being called when create_task returns false
1178 * TWEAK: Prevent PHP log warnings when images are missing from server (log in WP-O internal log instead)
1179 * TWEAK: Changed the default settings page from 'Settings' to 'Database'
1180 * TWEAK: Better discoverability of Premium features
1181 * TWEAK: Use new task manager class Updraft_Task_Manager_1_1
1182
1183 = 2.3.3 - 17/Apr/2019 =
1184
1185 * FIX: Revert faulty change to the default settings page in 2.3.2, which prevented optimization buttons working
1186
1187 = 2.3.2 - 17/Apr/2019 =
1188
1189 * FIX: Non-ASCII filenames could get mangled in the image optimization preview, resulting in images not shown (and WP 404 generation on the back-end).
1190 * FIX: Optimizing a table now runs correctly after automatic pre-optimize backup
1191 * TWEAK: Changed the default settings page from 'Settings' to 'Database'
1192 * TWEAK: Updated plugin links
1193
1194 = 2.3.1 - 16/Apr/2019 =
1195
1196 * FIX: Fix a code path that could cause a fatal error on PHP 5.2
1197 * TWEAK: Optimizing a table should then refresh the information in the UI shown for it
1198 * TWEAK: Use an image compression logfile path inside the uploads hierarchy, with unpredictable salted element
1199
1200 = 2.3.0 - 12/Apr/2019 =
1201
1202 * FEATURE: Compress images using lossy and lossless compression - both existing images, and newly uploaded
1203 * FIX: Wrong information about corrupted tables
1204 * TWEAK: Prevent PHP notices on calls from UpdraftCentral
1205 * TWEAK: Prevent notices about Premium showing in Premium, correct button text, update coupon
1206 * TWEAK: Prevent the overdue cron checker running twice instead of once
1207
1208 = 2.2.13 - 04/Mar/2019 =
1209
1210 * FIX: Fixed RTL layout
1211 * FIX: Detect more relationships between tables and plugins in orphaned database tables optimization
1212 * FIX: Fixed orphaned relationships optimization
1213 * TWEAK: The informational list of WP core tables missed some possible extra tables on multisite
1214
1215 = 2.2.12 - 07/Feb/2019 =
1216
1217 * TWEAK: Updated information on More plugins tab
1218 * TWEAK: Fix header layout when a system or third party notification are shown
1219 * TWEAK: (Premium) Fix layout in unused images list mode
1220 * TWEAK: Improve data reliability in javascript
1221 * TWEAK: Improve orphaned relationships data optimization
1222 * TWEAK: Wrong message for "remove spam and trashed comments" optimization
1223 * TWEAK: Output additional information if table was not deleted
1224 * FIX: Added escaping for table names in database queries
1225 * FIX: Fix another possible fatal error due to missing get_plugins() function
1226 * FIX: Improve identification of installed/active plugins
1227
1228 = 2.2.11 - 16/Jan/2019 =
1229
1230 * FIX: A regression in the "identify table by owner" feature caused optimizing to silently fail on some tables
1231 * TWEAK: Added ability to exclude lazy load images by class
1232
1233 = 2.2.10 - 11/Jan/2019 =
1234
1235 * FEATURE: Added the ability to download unused images list (Premium version) as a CSV file
1236 * FIX: Load scripts and styles only on WP-Optimize pages
1237 * FIX: Fix a possible fatal error due to missing get_plugins() function
1238 * TWEAK: Remember selected optimizations on Database page
1239 * TWEAK: Prevent PHP notices when saving settings or optimizing in some circumstances
1240
1241 = 2.2.9 - 03/Jan/2019 =
1242
1243 * FIX: Change a newly-introduced fragment that was not compatible with PHP 5.2
1244 * TWEAK: Tweak some other code that had PHP 5.2 compatibility issues
1245
1246 = 2.2.7 - 31/December/2018 =
1247
1248 * RE-FACTOR: Refactoring and reorganisation of the UI
1249 * TWEAK: Added feature to view unused images as list
1250 * TWEAK: Fix sorting sizes columns in Tables information to take into account textual modifiers
1251 * FIX: MetaSlider images detected as unused
1252 * FIX: Preview for Trashed posts optimization doesn't work
1253 * FIX: Unselected optimizations could be run on a scheduled run
1254
1255 = 2.2.6 - 30/October/2018 =
1256
1257 * FEATURE: Added Gzip compression support
1258 * FIX: Unexpected content in the footer after preview popup closed
1259 * TWEAK: Mark as supporting WordPress 5.0
1260 * TWEAK: Update seasonal notices
1261 * TWEAK: Removed redundant checkbox for Lazy Loading settings
1262 * FEATURE: Remove orphaned database tables, and identify (many) known tables by plugin.
1263
1264 = 2.2.5 - 24/August/2018 =
1265
1266 * FEATURE: Preview data before deleting. (Premium)
1267 * FEATURE: Lazy Loading for images, iframes and videos. (Premium)
1268 * FEATURE: Added custom capabilities wpo_prevent_run_optimizations and wpo_prevent_manage_options (Premium)
1269 * FIX: Correct tables order sorting
1270 * FIX: Wrong numbers in total cleaned field
1271 * FIX: Don't show incorrect overhead value if option innodb_file_per_table disabled
1272 * TWEAK: Added option to clean "all" transient options and network-wide transient options for multisite WordPress installation
1273 * TWEAK: Links to UpdraftPlus automatically Install/Activate UpdraftPlus plugin
1274 * TWEAK: FAQ links point to getwpo.com
1275 * TWEAK: Auto-draft, revision posts and pingback comments removing with their metadata
1276 * TWEAK: Scheduler is not using the WordPress timezone settings
1277 * TWEAK: Detecting corrupted tables in background.
1278 * TWEAK: Unused Images optimization correctly detects images in pages built with popular plugins - Page Builder by SiteOrigin, Visual Composer, Beaver Builder, Elementor.
1279 * TWEAK: Paginate unused images
1280 * TWEAK: Added checkbox for select all optimizations
1281 * TWEAK: Prevent deleting homepage images in image optimization
1282 * TWEAK: Override the default multisite site list fetch limit of 100 sites
1283
1284 = 2.2.4 - 07/May/2018 =
1285
1286 * TWEAK: Changed the term 'Automatic' to 'Scheduled'.
1287 * TWEAK: Show correct table type for views
1288 * TWEAK: Fixed string spelling and syntax errors
1289 * TWEAK: Disabled Simple History logging option if plugin is not installed.
1290 * TWEAK: Prevented PHP notices in repair tables functionality
1291
1292 = 2.2.3 - 04/Apr/2018 =
1293
1294 * FEATURE: Added the ability to repair corrupted database tables
1295 * FIX: Fixed dismiss notices functionality
1296 * FIX: When detecting potentially unused images, exclude those found mentioned in the options table(s)
1297 * TWEAK: Load WPO translations (logger classes info included) when template is pulled for UpdraftCentral-WPO module
1298 * TWEAK: Add get_js_translation command for the UpdraftCentral WPO module
1299 * TWEAK: Added logging for fatal errors
1300
1301 = 2.2.2 - 28/Feb/2018 =
1302
1303 * TWEAK: Prevent possible PHP notice when parsing logger options
1304
1305 = 2.2.1 - 28/Feb/2018 =
1306
1307 * FIX: Fix number counting in Table information tab
1308 * FIX: Fix InnoDB optimization UI
1309 * TWEAK: Removed orphaned attachment optimization from optimizations UI list
1310
1311 = 2.2.0 - 19/Feb/2018 =
1312
1313 * FEATURE: Added the ability to export/import WP-Optimize settings
1314 * FEATURE: Extended the logging class to include logging for Simple History Logger, Slack, Email, syslog and a simple 'ring' log
1315 * FEATURE: Added the ability to optimize ARCHIVE and Aria (MariaDB) database tables.
1316 * FEATURE: Added the ability to sort data in the "Table Information" tab
1317 * FEATURE: Added the ability to search tables in "Table Information" tab
1318 * FEATURE: Added the ability to optimize an individual table. (Premium)
1319 * FEATURE: Added the ability to optimize multisites. (Premium)
1320 * FEATURE: Allow the user to create arbitrarily complex automatic optimization schedules (Premium)
1321 * FEATURE: Added ability to use WP CLI interface for run optimizations. (Premium)
1322 * FIX: Auto clean-up settings not optimizing database tables
1323 * FIX: Comments count after related to comments optimization
1324 * FIX: Fix unapproved comments count
1325 * TWEAK: Add functions to pull WP-Optimize templates for UpdraftCentral
1326 * TWEAK: Allow user to tick the "Take a backup with UpdraftPlus before optimizing" option from UpdraftCentral
1327 * TWEAK: Show last automatic optimization time using site's configured timezone and locale
1328 * TWEAK: Extra MySQL and MariaDB checks for optimization, along with an over-ride functionality.
1329 * TWEAK: updated previous optimizations and added optimizations for trash posts, trash comments and orphaned attachments
1330 * TWEAK: Use higher-quality spinner image
1331 * TWEAK: Adjusted notices about other products
1332 * TWEAK: Added message for multisite users with proposal to upgrade to Premium.
1333 * TWEAK: Optimize the check for whether both free and Premium are installed
1334 * TWEAK: Added Premium / Plugin Family tab
1335 * TWEAK: Added seasonal dashboard notices
1336
1337 = 2.1.1 - 28/Feb/2017 =
1338
1339 * FEATURE: Added the ability to take a automatic backup with UpdraftPlus (https://updraftplus.com) before an optimization
1340 * FEATURE: When optimizing from the dashboard, tables are now optimized one by one, to reduce the scope for timeouts
1341 * FIX: Removal of sitemeta items from main site on multisite install was not proceeding
1342 * TWEAK: Adding premium bootstrapping to WP-Optimize for adding premium features in the future
1343 * TWEAK: A few wording tweaks, plus automatically refresh the page if the 'admin bar menu' option is changed
1344 * TWEAK: Introduce internal logging API
1345
1346 = 2.1.0 - 28/Dec/2016 =
1347
1348 * FOCUS: This release concentrates upon the user-interface, and in particular upon improving the clarity of each part, and making optimizations, saves and other actions possible without page reloads.
1349 * FEATURE: Any optimisation can now be run individually with a single button press
1350 * TWEAK: All optimisations run via the dashboard page are now run via AJAX (no page refresh)
1351 * TWEAK: Settings saving now takes place via AJAX (no page refresh)
1352 * TWEAK: Navigation between different tabs now takes place without a page refresh
1353 * TWEAK: The "trackback/comments" actions section now operates via AJAX (no page refresh needed)
1354 * TWEAK: "Refresh" button in the "Status" widget now refreshes via AJAX (no page refresh needed)
1355 * TWEAK: When saving settings or running an optimization, the "Status" widget now automatically refreshes
1356 * TWEAK: Make the admin bar menu into a drop-down, making it quicker to access individual tabs
1357 * TWEAK: Call set_time_limit to reduce the chances of PHP self-terminating via reaching max_execution_time
1358 * TWEAK: Introduce dashboard notice infrastructure
1359 * TWEAK: The lines showing information on how many spam/trashed posts and comments existed were incomplete
1360
1361 = 2.0.1 - 12/Dec/2016 =
1362
1363 * OWNERSHIP: WP-Optimize is now under the leadership of Team UpdraftPlus - https://updraftplus.com. A big thank you to Ruhani (who remains on-board) for his leadership of WP-Optimize until this point! Layout, branding and links have been altered to reflect this change.
1364 * RE-FACTOR: Internal code completely re-factored, laying the foundations for future improvements
1365 * TWEAK: Various filters introduced internally for easier customisation
1366 * TWEAK: Marked form element labels, so that they can be clicked
1367 * TWEAK: Various small UI improvements (more to come in future releases)
1368 * FIX: Previous versions could potentially run OPTIMIZE commands on tables in the same MySQL database (if it was shared) belonging to other sites
1369 * FIX: Previous versions were not deleting most delete-able transients. This is now fixed, with the modification that we now delete all *expired* transients.
1370 * LANGUAGES: Removed language packs and screenshots that are already carried by wordpress.org, reducing the plugin download / install size
1371
1372 = 1.9.1 =
1373 * Ability to clean up Unused Post Meta, Comment Meta and Broken Relationship Data
1374 * Warning prompts for RED marked items and optimize button
1375 * Better transient options cleaning.
1376 * Language files update
1377 * Various other fixes
1378
1379 = 1.9 =
1380 * 27 Weeks retention option equivalent to 6 month
1381 * Compatibility update.
1382 * Language files update
1383 * Removed email notifications, it doesn't work on many servers
1384 * Various other fixes
1385
1386 = 1.8.9.10 =
1387 * Security Patch provided by Dion at WordPress.org and Security report provided by http://planetzuda.com .
1388 * Language files update
1389
1390 = 1.8.9.8 =
1391 * Daily Schedule Option Added
1392 * Email notification on automatic optimization, default email is admin email address. You can change this in settings
1393
1394 = 1.8.9.7 =
1395 * BUGFIX for Settings screen
1396 * Enable/Disable trackbacks / comments buttons removal and use select box instead. Extra button caused the Auto Scheduler to get into reset mode.
1397
1398 = 1.8.9.6 =
1399 * There were few number formatting problem and detection of InnoDB table format. Charles Dee Rice solved the problems that I missed out. Thank you!
1400 * Duplicate msg fixed
1401 * Enable/Disable trackbacks for all published post
1402 * Enable/Disable comments for all published post
1403
1404 = 1.8.9 =
1405 * ONE MILLION+ Downloads. THANK YOU!!
1406 * Language updates platform - see readme file for details.
1407 * Mixed type tables optimization supported and in BETA
1408 * Removal of akismet metadata from comments
1409 * Removal of other stale metadata from comments
1410 * InnoDB tables won't be optimized.
1411 * Main screen user selection will be saved. Red items selection will not be saved
1412 * Scheduled time display will be shown according to WordPress blog local time
1413
1414 = 1.8.6 =
1415 * Language files update
1416 * Fix issues with total gain number problem
1417 * InnoDB tables detected and features disabled automatically, tables view will not show Overhead. Main view will not show space saved, or total gain.
1418
1419 = 1.8.5 =
1420 * Version bump + modified translator names
1421
1422 = 1.8.4 =
1423 * Problem with readme file changes
1424
1425 = 1.8.3 =
1426 * Minor fixes
1427
1428 = 1.8.1 =
1429 * A whole lot more code optimization
1430 * Slick new interface
1431 * Responsive mobile interface, supports running from iPhone/Android/Tablets
1432 * Tables moved to independent tab
1433 * Optimize faster
1434 * GitHub updater support
1435 * I do not monitor WP forums, support email at plugins(at)ruhanirabin.com
1436
1437 = 1.7.4 =
1438 * More Translation compatibility.
1439 * Added MYSQL and PHP versions beside the Optimizer tab.
1440
1441 = 1.7.3 =
1442 * Fixed Problems with wpMail.
1443 * Fixed Problems with wpAdmin menubar.
1444 * Fixed Permission issues on some site.
1445 * Language files update
1446
1447 = 1.7.2 =
1448 * All MySQL statements re-factored into native WP database calls - necessary for future versions of MySQL and WordPress.
1449 * Upgrade to match WordPress 3.9 changes.
1450 * Language files update
1451 * Now postmeta cleanup is disabled from code - it will be updated soon with native WordPress postmeta cleaning options.
1452
1453 = 1.6.2 =
1454 * Language files update
1455
1456 = 1.6.1 =
1457 * Fixed - trashed Comments was not clearing out.
1458 * Language files update
1459
1460 = 1.5.7 =
1461 * Language files update
1462
1463 = 1.5.6 =
1464 * "Unused Tags cleanup" option made a problem on some WordPress sites that it deletes empty categories. Since I am unable to replicate this problem. I am making this option disabled.
1465 * Language files update
1466 * Minor maintenance and fixes.
1467
1468 = 1.5.5 =
1469 * Safe clean up options are selected by default, defaults are not by user preference for now (Optimizer Page).
1470 * All the potentially dangerous clean up options are MARKED RED.
1471 * Language files update
1472 * New features explained - http://j.mp/HBIoVT (read the blog post).
1473
1474 = 1.5.4 =
1475 * More path related fixes for various warnings. Maintenance
1476
1477 = 1.5.2 =
1478 * Fatar error fix, if it disabled your wp admin, please remove the wp-optimize directory and reinstall again.
1479
1480 = 1.5.1 =
1481 * Option to add or remove link on wp admin bar (even enabled - it is visible to admin only).
1482 * New admin interface.
1483 * Settings to select items for automatic optimization.
1484 * Removal of WordPress transient options
1485 * Removal of orphaned post meta tags.
1486 * Removal of unused tags.
1487 * 3 different schedule times added (weekly, bi-weekly and monthly).
1488 * Language files update
1489 * Code optimization and translation strings updated.
1490 * Integrated development log from TRAC
1491
1492 = 1.1.2 =
1493 * removed persistent admin bar menu item
1494 * Language files update
1495
1496 = 1.1.1 =
1497 * Fix Fatal Error.
1498
1499 = 1.1.0 =
1500 * Added WP-Optimize to admin menu bar on top. Always accessible.
1501 * Added wp-optimize.pot file for translators (inside ./languages/ folder).
1502 * Last auto optimization timestamp / display
1503 * Fix possible scheduler bug as requested at support forum
1504 * Fix some other codes regarding SQL query parameters
1505 * Ability to keep last X weeks of data, any junk data before that period will be deleted - this option affects both Auto and Manual process. Appreciate time and help from Mikel King (http://mikelking.com/) about this matter.
1506
1507 = 1.0.1 =
1508 * Removed auto cleanup of trackbacks or pingbacks.. it's better for people to do it manually.
1509
1510 = 0.9.8-beta =
1511 * added beta tag
1512
1513 = 0.9.8 =
1514 * Remove all trackbacks and pingbacks (can significantly reduce db size)
1515 * Remove all Trash Comments and Posts
1516 * Enable/Disable weekly schedules of optimization. This is an EXPERIMENTAL feature. It may or may not work on all servers.
1517
1518 = 0.9.4 =
1519 * Non Initialized variables fixes as of https://wordpress.org/support/topic/plugin-wp-optimize-errors-in-debug-mode?replies=2
1520
1521 = 0.9.3 =
1522 * Removed security tools.
1523 * Full database size displayed
1524
1525 = 0.9.2 =
1526 * Now the plugin is visible to site administrators only. Authors, Contributors, Editors won't be able to see it.
1527
1528 = 0.9.1 =
1529 * Fixed problem with database names containing "-" .
1530 * NEW Main Level Menu Item added for WP-Optimize, You might need to scroll down to see it
1531 * Compatibility with WordPress 3.1
1532 * Language files update
1533 * Added auto draft post removal feature
1534
1535 = 0.8.0 =
1536 * Added Multilanguage capability
1537 * Language files update
1538
1539 = 0.7.1 =
1540 * POST META Table cleanup code removed cause it is making problems with many hosts
1541
1542 = 0.7 =
1543 * Added cleanup of POST META Table along with the revisions
1544 * Fixed some minor PHP tags which causes the total numbers to disappear
1545 * Now requires MySQL 5.1.x and PHP 5.1.x
1546
1547 = 0.6.5.1 =
1548 * Fix Interface