All notable changes to APCu Manager are documented in this changelog.
The format is based on Keep a Changelog, and APCu Manager adheres to Semantic Versioning.
- [BC] To enable installation on more heterogeneous platforms, the plugin now adapts its internal logging mode to already loaded libraries.
- Updated DecaLog SDK from version 4.1.0 to version 5.0.0.
- PHP error with some plugins like Woocommerce Paypal Payments.
- The plugin now adapts its requirements to the PSR-3 loaded version.
- PHP error when DecaLog is not installed.
- PHP error when DecaLog is not installed.
- Updated DecaLog SDK from version 3.0.0 to version 4.1.0.
- Minimal required WordPress version is now 6.2.
- Compatibility with WordPress 6.5.
- Minimal required WordPress version is now 6.1.
- Minimal required PHP version is now 8.1.
- In some edge-cases, multi sites instances may experience a PHP error while loading non-existent options (thanks to Szabó József).
- Options loading performances greatly improved.
- Improved hit-ratio computing.
- Compatibility with WordPress 6.4.
- With PHP 8.2, in some edge cases, deprecation warnings may be triggered when viewing analytics.
- Compatibility with WordPress 6.3.
- The color for
shmop
test in Site Health is now gray to not worry to much about it (was previously orange).
- With APCu version greater than 5.1.21, the 'used' object field may be wrongly computed.
- Improved objects list rendering time.
- Sorting objects by status produces PHP warnings.
- The ability to try to fetch expired objects.
- [SEC004] CSRF vulnerability / CVE-2023-27444 (thanks to Mika from Patchstack).
The developments of PerfOps One suite, of which this plugin is a part, is now sponsored by Hosterra.
Hosterra is a web hosting company I founded in late 2022 whose purpose is to propose web services operating in a European data center that is water and energy efficient and ensures a first step towards GDPR compliance.
This sponsoring is a way to keep PerfOps One plugins suite free, open source and independent.
- Compatibility with WordPress 6.2.
- In some edge-cases, detecting IP may produce PHP deprecation warnings (thanks to YR Chen).
- Better handling of hoster-specific configurations.
- The plugin doesn't fully support APCu version greater than 5.1.21 (many thanks to vgostore for helping me to debunk this).
- Support for
wp_cache_flush_group()
function.
- Improved loading by removing unneeded jQuery references in public rendering (thanks to Kishorchand).
- [WPCLI] Improved resilience to php configuration-related errors.
- Compatibility with WordPress 6.1.
- Support for
wp_cache_flush_runtime()
function. - [WPCLI] The results of
wp apcu
commands are now logged in DecaLog.
- Improved ephemeral cache in analytics.
- Updated Kint from version 4.1.1 to version 4.2.0.
- [WPCLI] The results of
wp apcu
commands are now prefixed by the product name.
- [SEC003] Moment.js library updated to 2.29.4 / Regular Expression Denial of Service (ReDoS).
- Flushing APCu doesn't flush the internal cache at the same time.
- Compatibility with WordPress 6.0.
- Full support of
wp_cache_*_multi()
functions.
- Improved preloading compatibility.
- Updated DecaLog SDK from version 2.0.2 to version 3.0.0.
- [SEC002] Moment.js library updated to 2.29.2 / CVE-2022-24785.
- Hugely improved loading speed.
- Improved options hit ratio.
- In list view, the object's status is now displayed.
- The Y-axis and legend of the fragmentation graph are now more readable.
- Improved deactivation process - with failsafe.
- Implementation of
force
flag to force a refetch rather than relying on the local cache.
- The garbage collector may (wrongly) skip some objects.
- Ajax calls to save/update posts may not refetch the cache value in some conditions.
- New objects viewer in APCu management tools.
- There's now
apcm_objects_list_actions_for_object
andapcm_objects_list_actions_for_ttl
filters to add custom actions to objects list view. - Experimental support of
wp_cache_*_multi()
functions that will be introduced in WordPress 6.0. - Built-in compatibility with unusual hosting environments and poorly coded plugins or themes (thanks to Renaud Pacouil for suggestion, support & tests).
- Activating/deactivating object cache setting now forces APCu flush.
- Deactivating/uninstalling the plugin now forces APCu flush (thanks to Renaud Pacouil for the idea).
- Improved persistent / non-persistent groups handling.
- Improved built-in internal cache speed.
- Site Health page now presents a much more realistic test about object caching.
- Improved coexistence behaviour with other cache management plugins.
- The drop-in file is now updated when plugin is updated.
- Objects at APCu root have no path in tool list view.
- Some options may not be reset when clicking "Reset To Default" button.
- In some conditions, the message for updated settings is incomplete.
- APCu metrics collation from command-line as it was meaningless and can cause issues on some hostings.
- The Site Health page may launch deprecated tests.
- NEW: APCu manager may be used as a full object cache drop-in replacement for WordPress caching.
- Compatibility with PHP 8.1.
- Added containers, paths and icons to APCu Management tool.
- Added WordPress and W3TC icons in analytics reports.
- [BC] The "Delete All" command now flush cache for site or network only.
- [BC] The garbage collector now works only on objects belonging to the site or network.
- [BC] The APCu Management tool now displays only objects belonging to the site or network.
- [BC] The memory fragmentation is now computed from a WordPress point of view: expect a drastic reduction.
- Analytics reports are now able to display WordPress object caching KPIs.
- APCu Manager now supports non expiring TTL (including garbage collecting operations)
- Charts allow now to display more than 2 months of data.
- Improved timescale computation and date display for all charts.
- Bar charts have now a resizable width.
- The hit/miss/insert chart have now swapped values for better readability.
- Updated DecaLog SDK from version 2.0.0 to version 2.0.2.
- Updated PerfOps One library from 2.2.1 to 2.2.2.
- Refactored cache mechanisms to fully support Redis and Memcached.
- Improved bubbles display when width is less than 500px (thanks to Pat Ol).
- The tables headers have now a better contrast (thanks to Paul Bonaldi).
- Updated documentation and readme files.
- The console menu may display an empty screen (thanks to Renaud Pacouil).
- Object caching method may be wrongly detected in Site Health status (thanks to freshuk).
- There may be name collisions with internal APCu cache.
- Compatibility with WordPress 5.9.
- New button in settings to install recommended plugins.
- The available hooks (filters and actions) are now described in
HOOKS.md
file.
- Improved update process on high-traffic sites to avoid concurrent resources accesses.
- Better publishing frequency for metrics.
- Updated labels and links in plugins page.
- X axis for graphs have been redesigned and are more accurate.
- Updated the
README.md
file.
- Country translation with i18n module may be wrong.
- New menu in the admin bar for "flush APCu" quick action.
- It's now possible to hide the main PerfOps One menu via the
poo_hide_main_menu
filter or each submenu via thepoo_hide_analytics_menu
,poo_hide_consoles_menu
,poo_hide_insights_menu
,poo_hide_tools_menu
,poo_hide_records_menu
andpoo_hide_settings_menu
filters (thanks to Jan Thiel).
- Updated DecaLog SDK from version 1.2.0 to version 2.0.0.
- There may be name collisions for some functions if version of WordPress is lower than 5.6.
- The main PerfOps One menu is not hidden when it doesn't contain any items (thanks to Jan Thiel).
- In some very special conditions, the plugin may be in the default site language rather than the user's language.
- The PerfOps One menu builder is not compatible with Admin Menu Editor plugin (thanks to dvokoun).
- New redesigned UI for PerfOps One plugins management and menus (thanks to Loïc Antignac, Paul Bonaldi, Axel Ducoron, Laurent Millet, Samy Rabih and Raphaël Riehl for their invaluable help).
- In some conditions, the plugin may be in the default site language rather than the user's language.
- Compatibility with WordPress 5.8.
- Integration with DecaLog SDK.
- Traces and metrics collation and publication.
- New option, available via settings page and wp-cli, to disable/enable metrics collation.
- [WP-CLI]
apcu status
command now displays DecaLog SDK version too.
- Compatibility with WordPress 5.7.
- Consistent reset for settings.
- Improved translation loading.
- [WP_CLI]
apcu
command have now a definition and all synopsis are up to date.
- In Site Health section, Opcache status may be wrong (or generates PHP warnings) if OPcache API usage is restricted.
- Compatibility with WordPress 5.6.
- Improvement in the way roles are detected.
- [WP-CLI] Memory analytics now displays total memory and occupation ratio.
- [SEC001] User may be wrongly detected in XML-RPC or Rest API calls.
- When site is in english and a user choose another language for herself/himself, menu may be stuck in english.
- [WP-CLI] New command to discover exit codes: see
wp help apcu exitcode
for details. - APCu Manager now integrates Spyc as yaml parser.
- New "Objects" box in analytics page, displaying objects breakdown.
- Improved IP detection (thanks to Ludovic Riaudel).
- [WP-CLI]
wp apcu settings
andwp apcu analytics
now support--stdout
flag. - [WP-CLI] Improved
wp apcu analytics
yaml formatting. - [WP-CLI] Improved documentation (with examples).
- The analytics dashboard now displays a warning if analytics features are not activated.
- Prepares PerfOps menus to future 5.6 version of WordPress.
- In admin dashboard, the statistics link is visible even if analytics features are not activated.
- Typos in admin screens.
- [WP-CLI] Typos in documentation.
- The "Objects Count" box in analytics page because it was useless.
- [WP-CLI] New command to toggle on/off main settings: see
wp help apcu settings
for details. - [WP-CLI] New command to display APCu Manager status: see
wp help apcu status
for details. - [WP-CLI] New command to display APCu analytics: see
wp help apcu analytics
for details. - Support for APCu multi configuration (web and command-line).
- Support for data feeds - reserved for future use.
- New Site Health "info" section about shared memory.
- The positions of PerfOps menus are pushed lower to avoid collision with other plugins (thanks to Loïc Antignac).
- Improved layout for language indicator.
- Admin notices are now set to "don't display" by default.
- Improved changelog readability.
- The integrated markdown parser is now Markdown from Carsten Brandt.
- In some cases, APCu detection may cause a PHP Warning.
- With Firefox, some links are unclickable in the Control Center (thanks to Emil1).
- Parsedown as integrated markdown parser.
- Compatibility with WordPress 5.5.
- Garbage collector for out-of-date cached objects (see "PerfOps Settings" > "APCu Manager").
- Full compatibility with PHP 7.4.
- Automatic switching between memory and transient when a cache plugin is installed without a properly configured Redis / Memcached.
- When used for the first time, settings checkboxes may remain checked after being unchecked.
- The charts take now care of DST in user's browser.
- The daily distribution charts have now a better timeline.
- There's an error while activating the plugin when the server is Microsoft IIS with Windows 10.
- With Microsoft Edge, some layouts may be ugly.
- Compatibility with DecaLog early loading feature.
- The settings page have now the standard WordPress style.
- Better styling in "PerfOps Settings" page.
- In site health "info" tab, the boolean are now clearly displayed.
- Unneeded tool links in settings page.
- Full integration with PerfOps One suite.
- Compatibility with WordPress 5.4.
- New menus (in the left admin bar) for accessing features: "PerfOps Analytics", "PerfOps Tools" and "PerfOps Settings".
- Analysis delta time has been increased to avoid holes in stats when cron is not fully reliable.
- With some plugins, box tooltips may be misplaced (css collision).
- Compatibility with WordPress versions prior to 5.2.
- Old menus entries, due to PerfOps integration.
- Initial release