Back to Scalability Pro
Scalability Pro changelog
Release notes for every version we have on record, newest first.
Latest 6.39.2 · 3 Nov 2026
40 versions
Since Aug 2026
2026 40 versions
6.39.2 Latest 3 Nov 2026 1 improved
Improved
- Updated super-speedy-settings to 1.14.5: creating the MCP connection now needs permission to add users, so a multisite sub-site administrator cannot create the agent account when the network does not allow it.
6.39.1 2 Nov 2026 1 changed
Changed
- The Fast Ajax endpoint editor shows active plugins on the never-unload list ticked and locked as *Always loaded (protected)*.
6.39.0 2 Nov 2026 1 security1 changed
Security
- Fast Ajax endpoints now always keep plugins on the never-unload list loaded, such as security, firewall, consent and payment plugins.
Changed
- The settings-page outbound HTTP shield now applies only to administrators, so a visitor's admin-ajax request can no longer have its external calls blocked by a Referer header.
6.38.0 30 Oct 2026 1 changed
Changed
- *Alter main query to use EXISTS rather than LEFT JOIN* leaves pages Super Speedy Filters serves from its own index to Super Speedy Filters, so they no longer carry an extra product visibility check.
6.37.11 30 Oct 2026 1 fixed
Fixed
- Fixed database errors about missing scalability_pro_post_count_cache and scalability_pro_transient_cache tables after activating Scalability Pro with WP-CLI: activation creates the cache tables before anything uses them.
6.37.10 29 Oct 2026 1 improved
Improved
- Updated super-speedy-settings to 1.14.3: update downloads now send the licence key in a request header instead of the download URL.
6.37.9 29 Oct 2026 1 fixed
Fixed
- Fixed native WordPress search running slower with Scalability Pro's indexes installed on large stores: the wpi_scalability_pro_sitemaps index now leads with post_type and is rebuilt automatically after updating.
6.37.8 29 Oct 2026 1 changed
Changed
- Reworded the *Alter main query to use EXISTS rather than LEFT JOIN* description: it changes how the SQL is written, never which products are shown.
6.37.7 29 Oct 2026 1 changed
Changed
- Clarified the *Alter main query to use EXISTS rather than LEFT JOIN* description: it changes only the front-end main query, mainly WooCommerce's product visibility clause, and lists what to check before leaving it on.
6.37.6 29 Oct 2026 1 fixed
Fixed
- Fixed the Options Autoload, HTTP API and Imports tabs scrolling sideways on a phone; HTTP API rules now stack into labelled fields on narrow screens.
6.37.5 29 Oct 2026 1 fixed
Fixed
- Fixed Cache [sale_products] shortcode and Cache [best_selling_products] shortcode showing no products inside page-builder widgets such as Elementor's Shortcode widget.
6.37.4 27 Oct 2026 3 changed
Changed
- Enable good settings, Apply all settings and the Options Autoload scan keep retrying for as long as the server answers busy (503, 429, 502 or 504) and show how long it has been busy, instead of failing after about a minute.
- The Options Autoload scan waits for a slow page to finish instead of abandoning it after 60 seconds.
- Enable good settings no longer cancels a performance analysis started from the Performance Analysis screen; it asks you to cancel it there.
6.37.3 27 Oct 2026 1 fixed1 changed
Fixed
- Fixed Cache [best_selling_products] shortcode showing the products on sale instead of the best sellers.
Changed
- The cached [sale_products] and [best_selling_products] output now refreshes as soon as a product is saved or an order changes sales counts.
6.37.2 26 Oct 2026 2 fixed
Fixed
- Fixed Enable good settings and Apply all settings stopping on a large site with "The index build is taking more than 10 minutes"; they now wait for each index build however long it takes and show how long it has been building.
- Fixed the Indexes tab reporting an error and moving on when an index build outlasts the web server's request timeout; it now waits for the build to finish and shows its progress on the tab.
6.37.1 20 Oct 2026 1 fixed
Fixed
- Fixed Plugin Unloads verification rejecting an unchanged page that has pagination links, with "the page output changed with the plugin unloads active: rendered HTML grew by 2.0 B".
6.37.0 20 Oct 2026 4 changed
Changed
- Plugin Unloads and Fast Ajax endpoint unloads are out of beta: the Unload Plugins tab is always available, with no opt-in under Advanced.
- The Plugin unloading and Fast Ajax runtime switches are on by default, but nothing is unloaded and no mu-plugin is installed until you configure and enable a rule; sites that already saved rules keep their switch setting.
- Enable good settings no longer creates or enables plugin unload rules; unloads are always your decision on the Unload Plugins tab.
- The taxonomy EXISTS rewrite is now an ordinary setting under Advanced > Query rewrites and the next-page lookahead is an ordinary Query Speed option, both still off by default; updating never turns either on.
6.36.1 14 Oct 2026 1 fixed
Fixed
- Fixed Cache wp-admin WooCommerce Products Category List so a cached category list skips the category and product count queries on wp-admin > Products, and filtering by a category reuses the same cache.
6.36 8 Sep 2026 2 new3 changed
New
- Added capture-time Fast Ajax policy details and a link to Performance Analysis AJAX before/after profiling.
- Added a default-off Fast Ajax endpoint-unloading beta with exact registered-route rules, safe keep-list defaults, automatic failure shutoff and optional Performance Analysis evidence
Changed
- Simplified Fast Ajax theme handling to a Keep loading my theme checkbox, with the WordPress default theme used when unticked.
- Fast Ajax builds require recorded tests for the current source, current core and the approved SQL review.
- Fast Ajax drafts select only required plugins and group optional choices by related endpoint selections and deterministic capability hints.
6.35 8 Sep 2026 1 changed
Changed
- Restored the GROUP BY optimisation for joined wp_posts.* queries without changing their selected columns
6.34 4 Sep 2026 3 fixed
Fixed
- Fixed configured SPRO_SQL_CALC_ROWS_FINGERPRINT entries causing strpos(): Argument #1 ($haystack) must be of type string, array given on PHP 8
- Fixed explicit WP-CLI term recounts while deferred term counting is enabled
- Fixed manual term recounts for stores where WordPress term and term-taxonomy IDs differ
6.33 4 Sep 2026 1 removed
Removed
- Removed the wp-config.php backup warning while retaining automatic cleanup of the old backup file
6.32 3 Sep 2026 2 new1 improved1 fixed1 changed
New
- Added a direct Main-tab link from the high-autoload warning to Options Autoload
- Added a disabled-by-default one-extra-row pagination lookahead under Remove SQL_CALC_ROWS, applied only to completed SQL after other query builders to avoid duplicate LIMIT clauses
Improved
- Declared WordPress 6.4, MySQL 5.7 or MariaDB 10.2 as supported floors and updated legacy plugin links
Fixed
- Fixed beta lookahead totals for queries with explicit offsets so the reported page count includes the skipped rows
Changed
- Restored "Alter main query to use EXISTS rather than LEFT JOIN" under Advanced as a disabled-by-default beta, with corrected multi-term AND and mixed-OR handling
6.31 25 Aug 2026 1 new2 improved2 fixed7 changed
New
- Added an Abort scan button to the Unload Plugins scan monitor, which now closes on Escape or a click outside it
Improved
- Tested up to WordPress 7.1, including its updated posts list-table navigation
- Updated super-speedy-settings to the latest version
Fixed
- Fixed a PHP 8 fatal when another plugin returns null from a posts_results filter; thanks to Glenn H for reporting it
- Fixed plugins staying ticked in the Unload Plugins popover after being unticked
Changed
- Plugin Unloads is now an opt-in beta under Advanced, while sites with existing rules retain access; its global switch is always visible at the top of the beta tab
- Plugin unload choices now stay isolated from ordinary visitors until their page verification passes
- The Unload Plugins tab now runs through a single code path, showing each plugin's verdict and the reason for it inside the scan popover
- The Unload Plugins master switch is now an ON/OFF toggle at the top of the tab
- An Unload Plugins scan now survives a dropped progress poll, and reports a permanent refusal instead of appearing to stall
- A deep scan can now reach certain confidence on a dynamic page, and explains how a page's output differed when it cannot
- The Unload Plugins tab is now usable by a site owner rather than only by the plugin's author
6.30 19 Aug 2026 1 new1 security3 changed
New
- New Unload Plugins tab: stops selected plugins loading on the pages where Performance Analysis measured that they do nothing, using per-page rules compiled into an mu-plugin
Security
- Payment, security, membership, consent, caching and multilingual plugins are never unloaded
Changed
- Unload rules are sorted into certain, likely and unknown confidence, and Enable good settings applies only the certain ones
- Only anonymous page views are ever trimmed, so a POST, wp-admin, REST, a system entry point and any logged-in visitor always load every plugin
- The Unload Plugins tab needs Super Speedy Performance Analysis 0.24.0 or later, and is not offered on multisite
6.29.45 21 Aug 2026 1 improved
Improved
- Performance Analysis now installs from its free public release when no licensed package is available, so a site with no licence key can still measure
6.29.39 21 Aug 2026 4 removed1 changed
Removed
- Removed the Slow Query Log tab; use your database server's own slow query log, or Super Speedy Performance Analysis for per-page timings
- Removed the wp-content/db.php drop-in the Slow Query Log needed, so Scalability Pro no longer conflicts with Query Monitor's database drop-in, HyperDB, LudicrousDB or database-cache plugins
- An existing installation has its Slow Query Log settings and any leftover drop-in removed on the next admin page load
- Removed the unused TGM Plugin Activation library
Changed
- Cleanup actions on multisite now require manage_network_plugins
6.29.34 20 Aug 2026 1 security1 removed2 changed
Security
- Completed a three-pass security review of the plugin
Removed
- A wp-config.php.spro-backup file left by an earlier version for those using slow query log is now correctly removed
Changed
- Scalability Pro no longer reads, parses or writes wp-config.php
- MCP access is now opt-in
6.29.30 19 Aug 2026 1 new1 removed1 changed
New
- Rules you write can stop another plugin's licence, update or telemetry calls while a wp-admin page renders
Removed
- Removed the Switch off phone home setting, replaced by the HTTP API tab's per-rule controls; a site that had it enabled allows outbound requests again until you add rules
Changed
- Outbound requests are allowed by default, and a rule can never reach the front end, REST, cron, a form submission, the plugin and update screens, commerce screens, your own site's URLs or 22 named payment gateway hosts
6.29.24 15 Aug 2026 2 changed
Changed
- Enable good settings and Apply all settings no longer configure or build Super Speedy Archives, which now does both from its own tab
- Clear all options now reverts only Scalability Pro's own settings, report and indexes, and leaves Super Speedy Archives and its table alone
6.29.23 14 Aug 2026 1 removed1 changed
Removed
- Moved MCP onto the one shared Abilities bridge and removed Scalability Pro's duplicate dedicated Adapter server and AI Engine registration
Changed
- MCP setup now uses a dedicated least-privilege agent user, with spro_apply and plugin installation as separate execute permissions
6.29.22 13 Aug 2026 1 improved
Improved
- Updated super-speedy-settings to the latest version
6.29.21 13 Aug 2026 1 security2 changed
Security
- Options scans now use the administrator's browser when Basic Auth, a WAF, CDN or other security layer blocks server loopbacks
Changed
- Scan failures now name the failed page and mechanism instead of treating an HTTP response without recorded data as success
- Apply Good Settings now drives browser-transport Performance Analysis runs and reports failed steps honestly at completion
6.29.17 13 Aug 2026 1 fixed1 changed
Fixed
- Fixed the archive optimisation being reported as applied when switching it back on had actually failed.
Changed
- A run that could not apply every step now says so on the results screen and names the steps, instead of reporting "All done".
6.29.16 13 Aug 2026 1 changed
Changed
- This plugin now describes in plain English what it publishes to a shared analysis, listed on the Performance Analysis Share tab with a switch to turn it off.
6.29.15 12 Aug 2026 1 new2 changed
New
- Added options_optimizer, checkout_purge_shield and checkout_purge_timeout_cap to the agent and MCP settings surface.
Changed
- Clear all options now reverts Super Speedy Archives as well, switching the optimisation off and dropping its mirror table, because this plugin is what configured and built them.
- When Super Speedy Performance Analysis is active and you have opted in to sharing, this plugin publishes which of its optimisations are on alongside a shared analysis, so a before measurement can be told apart from an after one. Settings only, never your licence key.
6.29 10 Aug 2026 6 new1 fixed1 removed11 changed
New
- New Apply all settings button next to Enable good settings adds the maximum-speed extras - next/previous page counts, natural sort order and the optimised private-content check - with each trade-off stated in the preview; also available as wp spro recommended --all and mode=all on the spro/apply-recommended ability
- New Clear all options button on the Main tab, under the good-settings buttons, returns every setting to its default, clears the stored before/after report and drops every index Scalability Pro created, so you can revert a good-settings run
- New Optimise Options on the Options Autoload tab (called Single Pages until 6.29.11): scans your key pages (including wp-admin orders and product screens if you tick them) to see which options each really fetches, then stops autoloading big unused options and starts autoloading hot ones - reviewable before applying, fully revertible, with an automatic monthly mode; Enable good settings turns th...
- New wp spro recommended WP-CLI command applies the same preset from the command line, with --dry-run, --indexes-only and --settings-only
- New wp spro status WP-CLI command lists every managed index and every good setting still outstanding
- New spro/describe-recommended and spro/apply-recommended abilities let an AI agent read the plan and, once you confirm, apply it
Fixed
- Fixed an index whose prefix length covers the whole column, such as wpi_scalability_pro_sitemaps on wp_posts, being reported as needing a rebuild on every check
Removed
- Indexes now survive deactivation and are removed when the plugin is deleted instead, so deactivating to test something no longer costs you your indexes; the cleanup setting is now called Delete indexes when the plugin is deleted and a pre-6.29 opt-out is carried over
Changed
- When the Super Speedy Archives add-on is active, Enable good settings and Apply all settings now configure it from the same measurement and build its table for you, so the after measurement shows the archive speed-up alongside everything else
- The archive optimisation is turned off before the before measurement, so what gets configured comes from your real queries rather than ones Archives has already rewritten
- The first tab is renamed Main and is now a guided setup - measure, optimise, cache - with the Enable good settings button front and centre
- Buttons restyled to the Super Speedy Imports look across every tab including Save Changes, with the Inter and JetBrains Mono fonts bundled locally; the Advanced tab's buttons are all secondary, and the plugin version now shows in a chip beside the logo
- Enable good settings works through the plan one item at a time, showing each index being created and then each setting being applied, and can be re-run whenever you like to fill in anything missing; an index build that outlives the web request shows still applying and waits for the database to finish instead of reporting an error
- When our free Super Speedy Performance Analysis plugin is active, a good-settings run measures your key pages before and after and shows the results - per-page generation times, SQL time and which pages got faster, each linked to the URL that was measured
- The Getting Started tab can install Super Speedy Performance Analysis for you with one click
- Good settings no longer touches the Query Speed row-count options, so page counts stay correct; use Apply all settings or the Query Speed tab if you want them
- Good settings now also turns on the checkout purge shield, and lists what it deliberately leaves alone and why
- The options optimiser is also available as wp spro options-scan, options-plan, options-apply and options-revert, and as four new abilities for AI agents
- The plugin's abilities are now discoverable on the MCP Adapter's default server as well as the dedicated /wp-json/mcp/scalability-pro endpoint, and the delete_indexes_on_deactivation ability setting is renamed delete_indexes_on_uninstall
6.28 7 Aug 2026 2 new1 fixed1 changed
New
- New Checkout purge shield on the WooCommerce tab, on by default: cache-purge plugins such as Nginx Helper no longer treat every WooCommerce order note as a page edit, which on a test store took a checkout from 30 outbound HTTP requests down to none
- New optional setting to cap the site's own purge requests at 3 seconds instead of the usual 5, off by default
Fixed
- Fixed a front-end fatal array_key_exists(): Argument #2 ($array) must be of type array, false given when the plugin is activated without a wp-admin page having been loaded since
Changed
- Licence corrected to GPLv3 in readme.txt, matching the plugin header
6.27.3 6 Aug 2026 1 improved
Improved
- Updated the shared Super Speedy settings module: the Super Speedy wordmark on the settings header is now a crisp high-resolution image with a dark-text variant
6.27.1 3 Aug 2026 1 new1 improved4 changed
New
- New Check frequency setting - cap licence, update and changelog checks to once a day or once a week, and see when the licence was last checked
Improved
- Updated the shared Super Speedy settings module: AI agents can check your licence and install other Super Speedy plugins over MCP, now also exposed on AI Engine's MCP endpoint when AI Engine is active
Changed
- The wpi_postmeta_boost index now covers the whole of meta_key rather than its first 50 characters, so SELECT DISTINCT meta_key lookups use the index instead of scanning wp_postmeta; existing installations have the index rebuilt automatically
- Licence and changelog checks fail fast when superspeedyplugins.com cannot be reached, instead of hanging the settings page
- The newest installed copy of the shared Super Speedy settings code now runs site-wide, whichever plugin loads first - previously the alphabetically-first plugin's often-older copy won
- The plugin's MCP abilities also appear on AI Engine's MCP endpoint as spro_ tools when AI Engine is active, so one AI connector reaches them
6.27 2 Aug 2026 11 new8 fixed1 security2 removed2 changed
New
- Added an Advanced-tab good-settings preset with a complete preview of settings changes and applicable indexes before confirmation
- Added estimated-total, maximum-page and progressive Previous/current/Next pagination strategies for archives where exact totals are disabled
- Added a one-result pagination look-ahead so a full final page no longer links to an empty Next page
- Added optional scheduled daily or weekly term recounts, configurable start time, batched progress and a manual Run now action
- Added a Performance Analyser status panel and link on the Advanced tab
- Added an Advanced-tab option to keep Scalability Pro indexes when the plugin is deactivated; index deletion remains enabled by default
- Added six WordPress Abilities API abilities for inspecting settings, measuring pages and database probes, changing safe or confirmed settings, and managing indexes
- Added versioned index definitions, exact column and direction drift detection, retired-index cleanup and automatic resumable reconciliation for existing installations
- Added a server-side index-operation lock and bounded, resumable index deletion to prevent overlapping or timed-out DDL requests
- Added a scoped comment-query option for skipping exact totals inside custom query alterations
- Added a WP Admin notice and manual action for clearing the deliberately persistent month-dropdown cache
Fixed
- Fixed custom post type bulk actions disappearing when the Bulk Edit safety limit is exceeded; only Bulk Edit is now removed
- Fixed newly registered custom image sizes being removed even though the administrator had never deselected them
- Fixed concurrent cache writes causing duplicate-entry errors by replacing delete-then-insert with one atomic upsert
- Fixed post-count and WP All Export query filters inspecting unrelated queries for the rest of the request
- Fixed the experimental taxonomy EXISTS rewrite interpolating unsanitised taxonomy names and term IDs
- Fixed GROUP BY optimisation applying DISTINCT to wp_posts.* queries with joins
- Fixed slow-query logging opening a new MySQL connection for every logged query and mishandling DB_HOST ports or sockets
- Fixed the original cache tables using inconsistent character sets and racy creation checks
Security
- Hardened settings import/export, product-attribute term search and direct access to include files
Removed
- Removed two duplicate index definitions and corrected multisite user and usermeta index handling
- Removed production debug logging, stale hooks, a public developer shortcode and other unreachable code
Changed
- Moved the WP All Import Query Monitor diagnostic into the separate spro-addon-query-monitor support plugin, removing eval() from Scalability Pro
- Replaced direct wp-config.php rewriting with atomic wp-content/spro-config.php generation and safe migration of the legacy $SPRO_GLOBALS block
