Introduction
WP Staging Pro is a WordPress plugin for creating staging sites, running full-site backups, and pushing changes between staging and production. It backs up files and databases, supports cloud storage providers (Google Drive, Dropbox, OneDrive, S3, pCloud, SFTP/FTP), and handles site migration between hosts.
This changelog records every Pro release in one place, from the v5.x series through the current v6.x major version. The plugin is actively maintained, several major releases shipped in 2026 alone, and is compatible with WordPress 7.0 and tested up to PHP 8.6 Beta.
If you are deciding whether to update, the release notes below list feature additions, bug fixes, UX improvements, and developer changes for each version so you can judge the impact before upgrading.
How are you doing today? Are you getting enough sleep?π Drinking enough water?π₯ Eating some fruitsπ here and there? Changelogs are fantastic but We we also wanted to use this space to remind you to be kind to yourself and those around you. Thatβs all. Have a great day and enjoy the latest updates: π
Full Release Notes
6.14.0 Release September 15, 2026
- π¦ New Add parallel part upload and merge support for Remote Sync Push. (Pro) #5246
- π Fix Block IPv6 and DNS-rebinding bypasses of the backup download SSRF filter. #5991
- π Fix Enable the Start Upload button when a storage is selected in the Upload Backup to Cloud popup. #6064
- π Fix Generate job IDs with a secure random source so log stream tokens cannot be guessed. #5991
- π Fix Include schemes in copied backup links and CLI restore commands. #5435
- π Fix Let the subsites of a multisite use the WP Staging Pro licence activated in the network admin. #6162
- π Fix Preserve native Element.prototype.closest and only polyfill it when missing. #6004
- π Fix Prevent staging prefix reuse from destroying another staging site. #6146
- π Fix Redact the installation root inside failed-move warnings. #6108
- π Fix Refuse an invalid database table prefix when a staging site is saved, so pushing or resetting it cannot fail on it later. #6095
- π Fix Reject invalid cloud download filenames before writing to the backups folder. (Pro) #5462
- π Fix Remove every trailing issue reference from a changelog line before it appears in the newsfeed. #6171
- π Fix Render the staging delete modal when the staging database is unreachable. #6181
- π Fix Reopen the Upload Backup to Cloud popup after connecting a new cloud storage. #6064
- π Fix Report the latest log line, not the whole log, when a job responds before it has logged anything. #6017
- π Fix Stop logging a throttled request as an error during a healthy job. #6077
- π Fix Stop the backup schedule cron event from flooding the error log when WordPress cannot save the cron option, and prevent copied network schedules from running on other sites without disabling cross-site backup plans. #6173
- π Fix Stop the backups folder running scripts on Apache and IIS. #5462
- π Fix Stop the fatal error in the network admin when WP STAGING Free and WP STAGING Pro are both active on the main site. #6152
- π Fix Stop the scheduled-backup menu badge and cron warning from reporting a schedule row copied to a multisite subsite as overdue. #6161
- π οΈ Dev Keep the release changelog intact when the prepare phase runs more than once. #6126
- π οΈ Dev Post the WordPress.org release notes in every release run instead of leaving them as an optional follow-up. #6169
- π οΈ Dev Say which environment an E2E pass ran in, so a green job no longer ends on an all-skipped summary. #6096
- π οΈ Dev Write a release announcement covering Free and Pro once both versions are published, so the team is told what shipped. #5916
6.13.1 Release September 11, 2026
- π¦ New Back up a staging site automatically before you update it, so an update that goes wrong can be undone. (Pro) #1873
- π¦ New Repair a damaged backup from the command line. Everything still readable is written into new backup files you can restore. (Pro) #2255
- β‘οΈ Enh Describe the command line tool by what it does for Developer and Agency plans: pull a live site to your computer with one command. #6031
- β‘οΈ Enh Never delay an update on a staging site. A staging site is where updates are meant to be tried out. #6028
- β‘οΈ Enh Plugin updates now start the moment you click update. The recovery backup runs behind them and a panel in the corner reports it. #6028
- β‘οΈ Enh Rename the free plugin on WordPress.org so people searching for a backup plugin find it. #5205
- β‘οΈ Enh Run backups and cloud uploads through the same background engine, so a long job is less likely to be interrupted. #5950
- β‘οΈ Enh Switch Update Protection off in one click from that panel. A backup the updates are waiting on is cancelled with it. #6028
- π Fix A restore no longer breaks sites whose plugins link database tables to one another. #5244
- π Fix Block backups and restores on PHP versions we have not tested yet, starting with PHP 8.6. #5494
- π Fix Create and push a staging site faster on tables whose rows hold a lot of data. #5986
- π Fix Delete only the tables that belong to the staging site when it lives in its own database. #6088
- π Fix Delete the temporary plugin folders a restore leaves behind once they pile up, instead of letting them fill the disk. #1598
- π Fix Ignore tampered entries in the active plugin and login session lists while pushing. (Pro) #5411
- π Fix Keep cloud storage credentials out of System Info and the log files, and check the storage settings before they are saved. #6001
- π Fix Keep the licence section and other status messages visible when the Disable WP Notification plugin is active. #5880
- π Fix Keep the list of plugins a push has to restore even when no plugin is active on the staging site. (Pro) #5411
- π Fix Name the actual folder paths in the error a restore shows when it cannot move files, on every host. #5943
- π Fix Name the operation that is actually running when Remote Sync is blocked, instead of always saying a sync is already in progress. #5456
- π Fix Never delete a table of the live site during database cleanup, and handle table names that contain special characters. #6005
- π Fix Never delete a table of your live site when a staging site is deleted or its creation is cancelled. #6088
- π Fix Offer to carry on with a restore when the database refuses a table that has two automatic timestamp columns (MySQL error 1293), instead of stopping. #2063
- π Fix Replace the site address in every row of a table when creating or pushing a staging site, including when the database search and replace limit is set low. #5986
- π Fix Report a background job that failed on PHP 8, including a failure on the source site during a Remote Sync pull. #5967
- π Fix Report a finished backup as finished on PHP 7.0 to 7.3, so the staging site update waiting for it can carry on. #6118
- π Fix Save the FTP/SFTP settings when an SSH key is already stored. (Pro) #5920
- π Fix Show an unexpected server response as plain text, so markup inside it cannot run in the WordPress admin. #5990
- π Fix Show what is wrong with cloud storage settings in the page itself, where the message stays readable, instead of in a browser tooltip. (Pro) #5039
- π Fix Start a backup from the Remote Sync window without having to close it first. (Pro) #5063
- π Fix Stop a cancelled staging job writing an error into the browser console. #6011 #5613
- π Fix Stop a fatal error on the staging site when the login form cannot start up. #6079
- π Fix Stop an error when the progress window is closed while a job is still reporting into it. #6049
- π Fix Stop backup, restore and Remote Sync logs repeating every line, which duplicated entries and made the log files far larger than they should be. #5330
- π Fix Switch the database’s foreign key checks back on after deleting tables, even when the previous setting could not be read. #6019
- π Fix Update the Start Upload button as soon as a cloud storage is selected. (Pro) #5950
- π Fix Use the correct table prefix when pushing with the Classic engine, keep the Desktop link inside its banner, and allow a backup to be cancelled only once preparation has finished. #6061
- π Fix WP Staging Free now says the daily backup runs at 12:00 midnight, not noon. #6018
- π Fix Wait as long as the cloud storage asks for when it limits the upload rate, instead of failing the upload. (Pro) #6038
- π Fix Write settings and user data safely to the database when pushing, so an unusual value cannot change the query it is written with. (Pro) #5411
- UX: Make WP Staging Desktop easy to find on the Staging screen. Developer and Agency plans get a link beside the local site action, every other plan a discovery card. The label under the local site button reads “CLI” where that link sits next to it. #6046
- Tweak: Show the background option only when a backup is being created. #6085
- π οΈ Dev Add a rule that a fix for one operating system must not change behaviour on the others. #6069
- π οΈ Dev Add a skill that keeps the Free vs Pro marketing copy in step with what the plugin can do. #6016
- π οΈ Dev Add the Free vs Pro comparison document the website and the in-plugin upgrade table are built from. #5235
- π οΈ Dev Assert the polled listing count in the cloud storage integration tests. #6050
- π οΈ Dev Correct the licence matrix, which said the free plugin cannot schedule backups when it schedules one daily backup. #6083
- π οΈ Dev Document dispatching a single CI shard instead of re-running a whole test suite. #6034
- π οΈ Dev End the release procedure with a team note for Slack. #6060
- π οΈ Dev Give a pull request a subject label derived from its branch type when its issue has none. #6006
- π οΈ Dev Give the development nginx its own address on macOS instead of the bridge gateway. #5965
- π οΈ Dev Keep the release changelog intact when the prepare phase runs more than once. #6126
- π οΈ Dev Let the process log and update notification specs wait for the page they drive. #6120
- π οΈ Dev Let the work-on-issue skill open its own GitHub issue when the request arrives as prose, and provision a worktree with no dependencies or build. #6032
- π οΈ Dev Mark wp.org release notes resolved and keep entries that mention Pro as written. #6057
- π οΈ Dev Prevent a root-owned core cache from blocking worktree provisioning. #6055
- π οΈ Dev Remove the deprecated WpDefaultDirectories::getExcludedDirectories() method. #5478
- π οΈ Dev Run the Pro end-to-end suite once, after the review fixes, and keep the rule for that ordering in one place. #6015
- π οΈ Dev Run the Slack notification test without a web server. #6052
- π οΈ Dev Skip Jetpack in the wordpress.com test fixture on PHP versions it no longer supports. #6119
- π οΈ Dev Write down the Free and Pro boundary: Free previews a Pro feature, only Pro implements it. #6091
6.12.0 Release September 4, 2026
- β‘οΈ Enh Redesign backup creation modal with Full Site / Custom Backup. #4924
- π Fix Close the placeholder tab when magic login fails. (Pro) #5553
- π Fix Editing a backup schedule no longer reverts to the old time after a later re-cron. (Pro) #5616
- π Fix End the Update Protection wait when the backup it started finishes, instead of leaving the popup stuck on a backup that already completed. #5909
- π Fix Fail a restore loudly when a shortened table name is missing instead of writing broken SQL. #5634
- π Fix Harden the staging site email reminder – its disable link is now authorised by a secret unique to that staging site, and secret tokens are compared in constant time. #5813
- π Fix Include a reply-to address and site context in the corrupted staging sites report email. (Pro) #5893
- π Fix Keep the restore alive when a preserved option is stored in a shape its sanitize callback rejects. #5857
- π Fix Log which folders a backup restore deletes before it deletes them. #4418
- π Fix Pad the random suffix of a shortened table name leftwards, so two different draws no longer collide. #5634
- π Fix Preserve each subsite’s domain and active plugins in network clones. (Pro) #5977
- π Fix Prevent a critical error when opening WP Staging pages on hosting setups where another plugin conflicts with the optimizer. #5404
- π Fix Prevent the staging login form from being processed on production sites, and improve compatibility with login security plugins. #5794
- π Fix Reactivate every WP STAGING plugin after a restore, so Pro is not left disabled by its missing free plugin. #5857
- π Fix Remember a failed magic login availability check for a minute. (Pro) #5553
- π Fix Remove the competitor backup plugin notice that could get stuck on screen. #5923
- π Fix Render process log messages as text so stored markup cannot run script in wp-admin. #5884
- π Fix Require the Wasabi custom region to be filled in before the storage settings can be saved. (Pro) #5918
- π Fix Restore the 15 second timeout of the magic login availability check. (Pro) #5553
- π Fix Run a backup explorer search typed while the file list is still loading, instead of ignoring it. #6029
- π Fix Safely handle wpstg_data_excl_rows filter values in Next-Gen cloning. #5845
- π Fix Send the WordPress.com upgrade link to the localized pricing page with campaign tracking. #5939
- π Fix Send the upgrade links shown when a backup cannot be restored to the pricing page in your own language. #5941
- π Fix Show every backup stored on Dropbox, not only the first ones, so the backup list and the automatic clean-up of old backups both see all of them. (Pro) #5910
- π Fix Show the memory exhaustion help in the process log as readable text with a link. #5884
- π Fix Switching SFTP to FTPS no longer leaves the password field blurred and unclickable. #5919
- π Fix Translate the hosting provider exclusion notice, the temporary login error, the reminder disable message, the admin footer links and the backup modal’s cloud storage description, which were shown in English on non-English sites. #5929
- π Fix Treat a 503 from the staging site as unavailable, not rate-limited. (Pro) #5553
- Ux: Calculate the estimated backup size automatically when the backup window opens, and again whenever the selection changes. #5899
- π οΈ Dev Allow Playwright to use a worktree’s runtime URL. #5948
- π οΈ Dev Announce each release in the WordPress.org support forum as a step of the release procedure. #5944
- π οΈ Dev Assign every new pull request to its author. #5902
- π οΈ Dev Diagnose a failed CI run before re-running it, and treat a *-failed label beside ready-for-review as a test to fix. #5904
- π οΈ Dev Keep PR titles aligned with the issue they answer by pointing create-pr and work-on-issue at the pr-issue-titles skill. #5968
- π οΈ Dev Keep the code review and simplifier passes running under Claude Code 2.1.219, and ship the post-push CI hook with the repository instead of one developer’s home directory. #5930
- π οΈ Dev Make code reviews blocking-only and give non-blocking findings somewhere to go. #5911
- π οΈ Dev Point the review-pr skill at review-own-diff for the merge-base rule instead of restating it. #5933
- π οΈ Dev Print a compact summary while tests pass and the full report only when one fails. #5980
- π οΈ Dev Run PHP 8.5 fast tests only in the full matrix. #5894
- π οΈ Dev Set the naming standard for methods and variables, and stop the review skills from dropping names that misdescribe what they name. #5974
- π οΈ Dev Skip the reviewer request on rene-hermenau’s own skill and infrastructure PRs; every other author still gets one. #5972
- π οΈ Dev Stop a cancelled fast-test run from overwriting the verdict of the run that replaced it. #5988
- π οΈ Dev Stop the Remote Sync tests putting their own license back on the remote site, which made a push look as if it had overwritten the license there. #5979
- π οΈ Dev Stop the restore requirements test faking multisite on a single site, which crashed the whole single-site unit suite. #5952
- π οΈ Dev Stop the review-pr skill from reviewing a pull request another reviewer was already asked to review. #5936
6.11.2 Release August 31, 2026
- π¦ New Add notification badge to admin sidebar when a scheduled backup fails or is missed #1579
- β‘οΈ Enh Create staging sites with the Next-Gen engine again, now that the table prefix corruption that had it switched off is fixed. #5355
- π Fix Always store the WP STAGING settings as an array, so a stored object can no longer break saving, restoring or pushing. #5863
- π Fix Cancel only the Remote Sync pull the request verified, never a job that replaced it. #5797
- π Fix Clean up the temporary files and tables of a cancelled onboarding backup. #5796
- π Fix End a background cancellation that cannot be prepared cleanly instead of with a PHP error. #5797
- π Fix End a remote storage upload the provider refuses instead of retrying it on every request. #5822
- π Fix Generate temporary-login link IDs server-side with a secure random generator and throttle the login-link path, so links can no longer be guessed from a predictable timestamp or brute-forced. #5810
- π Fix Preserve WordPress metadata keys when cloning with the Next-Gen engine. #5354
- π Fix Prevent duplicate processing when running consecutive staging site pushes. (Pro) #5364
- π Fix Reject cloud storage OAuth callbacks that were not started from the plugin. #5809
- π Fix Reject nested legacy object payloads during search-replace and stop a rest_route parameter from bypassing the staging site login form. #5625
- π Fix Report MySQL as the database engine in usage analytics instead of leaving it undefined. #5508
- π Fix Report a pCloud upload that the remote refused as failed instead of finished. #5822
- π Fix Require administrator rights to complete Google Drive API authentication, so a low-privileged user can no longer trigger the OAuth token exchange. #5812
- π Fix Retry a backup upload the storage provider refused for rate limiting instead of failing it, and stop reporting a throttled Google Drive as a full one. #5848
- π Fix Safely handle custom excluded option names during Next-Gen cloning. #5354
- π Fix Show the backup creation offer in Free and Pro staging modals. #5775
- π Fix Stop BackgroundLogger showing a false “Something went wrong” error for background jobs that already finished successfully. #5777
- π Fix Stop a superseded push setup response from replacing the open push modal. #5874
- π Fix Stop the backup finalize step from writing an unsigned, corrupted backup after an interrupted request. #5374
- π Fix Stop the browser console error guard from failing E2E tests on console noise it does not own. #5853
- π Fix Stop the corner update-protection modal from swallowing clicks on the rest of the page. #5882
- π οΈ Dev Add PHP 8.5 to the fast tests suite. #5497
- π οΈ Dev Add a browsable, testable worktree. #5875
- π οΈ Dev Describe in the release docs what a rollback restores and what it leaves behind. #5840
- π οΈ Dev Extend work-on-issue and defer human review requests. #5865
- π οΈ Dev Extract the self-review rule into a review-own-diff skill the other skills invoke, and prove any deletion a review agent proposes against the merge-base. #5866
- π οΈ Dev Fail the guardrails when a file the standalone restorer bundles relies on a top-level import. #5818
- π οΈ Dev Prove the rest_route staging bypass over HTTP instead of against a stub of WordPress core. #5878
- π οΈ Dev Record in the PR workflow that Copilot reviews first and is answered before a human is asked. #5842
- π οΈ Dev Remove the ready-to-merge label when a review finds blocking issues. #5890
- π οΈ Dev Report any new direct read of the wpstg_settings option, so no reader can assume its stored shape unnoticed. #5835
- π οΈ Dev Run the release suite’s cloud storage stage three PHP versions at a time instead of one, within the providers’ documented rate limits. #5848
- π οΈ Dev Stop an unrelated label from cancelling the fast-tests run it was added beside. #5820
- π οΈ Dev Stop the fast tests label claiming a full pass on a two-version run. #5872
6.11.1 Release August 22, 2026
- π¦ New Show backup prompt before updating plugins, themes, or WordPress core. The recovery backup then runs in the background, and further updates queue behind it instead of asking again. #4028
- β‘οΈ Enh Allow the free version to back up other folders in the WordPress root directory. #5532
- β‘οΈ Enh Log the source and the destination table name while copying database tables, so the clone log no longer reads as if it copies staging tables. #5536
- β‘οΈ Enh Record a generic analytics event when an upgrade CTA is clicked, so the plugin side of the upgrade funnel can be compared with the website arrivals it produces. #5640
- β‘οΈ Enh Record a stable error code alongside the translated message so failure causes can be counted reliably. #5510
- β‘οΈ Enh Record whether a site still has WP STAGING, by noting in the anonymous usage data when the plugin is switched on or off, together with the reason given when switching it off. #5586
- β‘οΈ Enh Show the selected table count against the site prefix total when creating a staging site, so a plugin-heavy site no longer looks like it copies every database table. #5536
- β‘οΈ Enh Show the task-selector first run to every new single-site WP STAGING Free installation. #5646
- π Fix A backup request left over from a staging site that never finished no longer blocks the backup offer on the next staging site you create. #5618
- π Fix A backup schedule saved during the very minute it is set for now waits for its next occurrence, instead of being registered for a time that has just passed. #5617
- π Fix A backup that was still waiting or running when the first-run setup finished now starts and is reported as completed. #5577
- π Fix Cancel the backup scheduled after a staging site when that staging site creation is cancelled. #5737
- π Fix Convert a raw byte count to megabytes so the backup speed index is no longer always zero. #5590
- π Fix Drop the plugin dependencies from the shipped autoload classmap, which listed them at paths the build deletes. #5693
- π Fix Fail the restore when a database table rename fails, instead of reporting success on a half-swapped database. #5756
- π Fix Harden Classic staging row-exclusion filter values before SQL use. #5790
- π Fix Hide the “Create a Staging Site” onboarding card and post-backup offer on WordPress.com-hosted sites, which do not support staging. #5709
- π Fix Leave the hosting provider’s own must-use plugin files out of the staging site when creating, updating and resetting it. #5643
- π Fix Pass a string to esc_attr in the onboarding capability icon. #5562
- π Fix Preserve unrelated subsite tables and user metadata during network site restores. (Pro) #5653
- π Fix Prevent an error when opening Push Changes with legacy settings. (Pro) #5829
- π Fix Provision a fresh test environment again when the WordPress template is a mounted folder. #5802
- π Fix Push summary now reflects the configured file-size limit instead of always showing 8 MB. #5560
- π Fix Refuse a second start that arrives while another request is already initializing a job, instead of letting both overwrite each other. #5516
- π Fix Reject non-stdClass serialized objects in the Pro search-replace routine to prevent PHP object injection, and add a sniff requiring an allowed_classes option on unserialize(). #5668
- π Fix Report a temporary or backup table that could not be dropped during cleanup, instead of logging it as deleted. #5756
- π Fix Report smart exclusions as switched off in WP Staging Free, where they never run, instead of on with nothing excluded. #5635
- π Fix Restore each multisite subsite with its own URLs instead of always the main site. #5633
- π Fix Restore the light icon when dark mode requests a dark variant that does not exist. #5739
- π Fix Retry a table drop that a lock blocked, and give the lock a bounded wait instead of holding the request open. #5756
- π Fix Scheduled backups are now included in the usage statistics, which previously only counted backups started by hand. #5507
- π Fix Show a notice instead of a critical error when the selected backup items contain no files. #5515
- π Fix Show the backup creation button in the Next-Gen staging site creation process modal and make the Pro Next-Gen engine release a queued backup once the staging site is created. #5776
- π Fix Skip the commit-lookup guardrail when the API does not answer, rather than failing it. #5673
- π Fix Stop a restore before it imports the database when tables of an earlier restore could not be removed. #5756
- π Fix Stop emitting a deprecation notice on PHP 8.4 and 8.5 for parameters that accept null. #5758
- π Fix Stop renaming a backup created on Windows from reporting it as damaged. #5768
- π Fix Stop sending Remote Sync analytics events before the job finishes, which left most syncs recorded without an outcome. #5504
- π Fix Stop the Network Admin staging page from getting stuck on unresolved analytics consent. #5628
- π Fix Stop the release publish phases from losing a successful prepare run. #5779
- π Fix Type the database rows WordPress 7.1 now describes precisely, so static analysis passes again. #5754
- π Fix Write one line terminator in the backup format on every platform, so a backup created on Windows matches the one created on Linux. #5768
- π οΈ Dev Add a shutdown-worktree skill that stops the containers before removing the folder. #5798
- π οΈ Dev Add the 2026-08-14 reading of the free_onboarding_v1 experiment with a D1 cut that matures before the 7-day windows close, and make the reading a one-command daily job. #5609
- π οΈ Dev Cancel a Fast tests run when a newer push supersedes it, and keep PHP 8.0 and 8.1 for the full matrix. #5786
- π οΈ Dev Fold the four cheap fast-test jobs into a single static_checks job. #5792
- π οΈ Dev Give the Playwright E2E jobs enough time to finish when the runner has to pull its Docker images first. #5824
- π οΈ Dev Give the Windows unit tests back the time they need to finish. #5806
- π οΈ Dev Keep the deploy API mu-plugin only in the wp-staging.com repo, so a copy carrying the object-cache flush that broke the 6.11.0 release cannot be uploaded to production again. #5741
- π οΈ Dev Move the skills to .agents so every agent can read them, not only Claude. #5733
- π οΈ Dev Raise the release pre-flight floor for the deploy API to 1.4.0, so a production rollback to a mu-plugin without the changelog-anchor guard blocks the release instead of corrupting the changelog page. #5799
- π οΈ Dev Raise the self-hosted GitHub Actions fleet on xsimulator.net from eight runners to twelve. #5789
- π οΈ Dev Say what make tests_guardrails checks, and cover the Makefile baseline comparison with its own test. #5780
- π οΈ Dev Stop running environment-independent e2e tests once per environment, and split the longest pro jobs. #5833
- π οΈ Dev Work through the classes the wpfree sieves deferred, and drop the transient users. #5703
6.10.0 Release August 10, 2026
- π¦ New Add an A/B experiment framework and run the first experiment on the WP STAGING Free first-run experience. #5522
- β‘οΈ Enh Add a Remote Sync sidebar menu item for quicker access to syncing from a remote site. #5323
- β‘οΈ Enh Add a target domain field to the restore tool so a backup can be restored for another domain than the one the tool is opened from. #5453
- β‘οΈ Enh New installations can start a staging site, a backup or WP STAGING Desktop straight from a first-action selector. #5522
- β‘οΈ Enh Offer a full backup during staging creation that starts automatically once the staging site is ready. #5522
- β‘οΈ Enh Offer the same deferred backup during any staging creation, for sites without an established backup workflow. #5522
- β‘οΈ Enh Rewrite the analytics consent question to name every category WP STAGING actually sends. It no longer asks for permission to collect a name and email address, which it never collected. #5522
- β‘οΈ Enh Show lifetime licences correctly on the licence page: the plan they bought, “Never” as the expiration date, the premium support period, and no upgrade offer. #5418
- π Fix Don’t show the “Scheduled backups may not run” warning when scheduled backups demonstrably work, e.g. when WP-Cron is executed by an external server cron job. #5403
- π Fix Keep preserved options and cron jobs intact when a value fails safe unserialization. #5463
- π Fix Only run the WordPress.com restore task when the site is actually hosted on WordPress.com. #5463
- π Fix Prevent a successful Remote Sync from ending with a “No response” error when the job log file name is not set. #5483
- π Fix Prevent duplicate primary keys in database backups when a request is retried, which made the restore fail with MySQL error 1062. #5450
- π Fix Prevent interrupted database restores from failing when resuming. #5470
- π Fix Prevent staging, backup, and remote sync from running two workers on the same job at once (which could corrupt the operation) by acquiring the background process lock atomically. #5327
- π Fix Report the HTTP status and server response when a backup request fails, instead of only guessing at a PHP fatal error. #5503
- π Fix Require an authenticated request before a cancelled job resets the first-run state. #5522
- π Fix Resolve Remote Sync Pull failing with a 404 error when downloading data from a source site hosted on IIS. #5488
- π Fix Resolve the Remote Sync connection key “Copy” button not working in Microsoft Edge. #5488
- π Fix Restore a backup again after an interrupted restore left the site stuck, where every new attempt stopped at the same table. #5460
- π Fix Restore the data on servers that do not report their maximum query size, where every row was skipped as too large and the restore finished with empty tables. #5470
- π Fix Resume a database restore at a byte offset so large restores no longer stall and fail with “Cannot increase execution time”. #5486
- π Fix Show an accurate error when magic login is unavailable on the staging site instead of always suggesting a plugin update. (Pro) #5438
- π Fix State the deferred backup offer as a choice, so it is no longer mistaken for a job already running. #5522
- π Fix Stop deleting the oldest backup on the remote storage when its backup listing fails during an upload. (Pro) #5434
- π Fix Stop logging a false cron update failure when the backup schedule rows are unchanged. #5463
- π Fix Stop the dark theme from overriding the text colour of every WP STAGING design-system button. #5522
- π Fix The Delete buttons for the WP Staging logs and PHP debug log on the System Info page now reliably remove the log file and show a clear success or error message. #5375
- π Fix Warn instead of failing silently when the background session check gets a malformed server response. #4479
- π οΈ Dev Allow gh api POST so review replies need no approval, keep PATCH denied. #5534
- π οΈ Dev Fire wpstg_background_job_failure as a WordPress action as well as an internal hook, so more than one listener can observe a failed background job. #5522
- π οΈ Dev Ignore qemu crash dumps so they stop accumulating in the working tree. #5533
- π οΈ Dev Prevent intermittent failures when building distributable plugins in parallel. #5270
- π οΈ Dev Reduce duplication in BackgroundLogger token verification tests. #5130
- π οΈ Dev Report translation catalogue lines of code in the pull request breakdown. #5531
- π οΈ Dev Speed up “make reset” by preparing WordPress once and setting up all test sites at the same time. #5482
6.9.5 Release August 3, 2026
- β‘οΈ Enh Attribute in-plugin upgrade clicks from WP STAGING Desktop and CLI installs. #5451
- β‘οΈ Enh Open the “Upgrade to Pro” main menu item in a new tab instead of leaving the WP admin. #5451
- π Fix Add the missing campaign parameters to the pricing links in the Pro header, the license error messages, the CLI upgrade banner and the compressed backup restore notice. #5451
- π Fix Block escalation to network Super Admin through staging magic login links. #5408
- π Fix Contain backup file and part paths across explore, parts, remote upload, delete and edit. #5408
- π Fix Contain cloud-download backup filenames to the backups directory to prevent arbitrary file write. #5408
- π Fix Only delete, edit, validate and upload backup parts that belong to the selected backup. #5408
- π Fix Parameterize temporary-login and restore database writes to close authenticated SQL injection. #5408
- π Fix Prevent classic staging creation from using incomplete external database settings. (Pro) #5358
- π Fix Prevent core WordPress and staging site folders from being listed under Backup Other WP Root Folders on Windows UNC network shares. #5430
- π Fix Prevent directory scanner from rejecting all files on Windows UNC network share paths. #5430
- π Fix Read the environment through a guarded helper, so hosts that remove getenv() through disable_functions no longer risk a fatal error. #5451
- π Fix Reject serialized PHP objects in backup data during restore so they cannot be stored and unserialized later. #5408
- π Fix Require authorization before clearing Pro backup schedules. #5408
- π Fix Restore the “Extra Directories to Copy” option in the push setup UI. (Pro) #5397
- π Fix Restrict Slack notification webhooks to allowed hosts and guard the install page with a capability check. #5408
- π Fix Restrict the remote sync pull download URL to the configured source site. #5408
- π Fix Stop classic staging creation when required database rows are missing after copying. #5358
- π Fix Stop treating a public site as a local install when its URL merely contains .local, .test or an internal IP prefix. #5422
- π Fix Validate remote sync peer URLs against SSRF targets such as loopback and cloud metadata. #5408
- π οΈ Dev Add self-hosted GitHub Actions runners on xsimulator.net to replace the Blacksmith.sh runners. #5412
- π οΈ Dev Add the lines-of-code and CI test result sections to a pull request description that does not carry their markers yet. #5441
- π οΈ Dev Base the extractor tests’ unthrottled memory limit on current usage instead of a fixed 200 MB, which the suite’s own memory can exceed, and give ValidateBackupTaskTest the memory limit filter its resource checks require. #5445
- π οΈ Dev Clear a stale fast-tests label so the pending commit status can always resolve. #5468
- π οΈ Dev Fix the intermittent ExtractFilesTaskTest failure on the PHP 8.0 multisite suite. The request caps of 10 and 20 broke out of a run that was still progressing and then asserted it had finished, so a healthy extraction was reported as a failure. #5445
- π οΈ Dev Install the multi-request tests’ resource filters once per run and remove them in a finally block, so no exit path can leave the thresholds enabled. #5445
- π οΈ Dev Run the cheap pull request jobs and the Kanban board automation on the self-hosted runners as well. #5412
- π οΈ Dev Stop ci-watch.sh from reporting a pass for a CI run whose test jobs were all skipped. Without the fast-tests label the workflow still completes successfully, so watching that run claimed the tests were green when none of them had executed. The run lookup now skips those stub runs, and a run whose fast_tests jobs were all skipped reports not-run instead of pass. #5450
6.9.4 Release July 26, 2026
- β‘οΈ Enh Rename the “Engine” / “Copy method” terminology to “Transfer method” across the Create, Push, Update and Reset modals. #5277
- β‘οΈ Enh Show the Create Staging Site modal customization in place of the review card instead of appending it below. #5277
- β‘οΈ Enh Show the Push modal customization in place of the review card instead of appending it below the warning. #5277
- π Fix Consolidate customization into one button in Create/Push modals and stop hiding advanced settings behind cards. #5277
- π Fix Critical error when opening WP Staging on GoDaddy Managed WordPress sites running WooCommerce. #5399
- π Fix Include newly added network sites in scheduled multisite backups and show the network site count in backup listings. (Pro) #5338
- π Fix License status is no longer lost after backup restore. (Pro) #5294
- π Fix Prevent Windows UNC server paths from being corrupted and rejected when saving the Edit Staging Site form. #5365
- π Fix Prevent active remote sync pulls from timing out during source preparation. (Pro) #5361
- π Fix Prevent database restore from stalling when execution time must be increased. #5361
- π Fix Prevent fatal error when open_basedir restrictions block filesystem scanning during backup size calculation and the staging site directory tree. #5390
- π Fix Prevent multisite subsite admins from escalating to network Super Admin via temporary login links. #5387
- π Fix Remove the security alerts popup from the welcome page. #5336
- π Fix Render {link} placeholders in the What’s New modal as real links instead of showing them verbatim. #5405
- π οΈ Dev Load commonBootstrap.php in RoadRunner test harness to fix Playwright database reset failures. #5401
- π οΈ Dev Report lines of code (production, tests, documentation) in every pull request description. #5424
- π οΈ Dev Stop the Fast tests workflow reporting success for runs where every job was skipped. #5420
6.9.3 Release July 15, 2026
- β‘οΈ Enh Optimize the readme for better visibility on the WordPress.org plugin search. #5205
- π Fix Estimated size in the staging site setup now reflects the selected database tables and the selected files and folders. #5253
- π Fix List database tables in Push UI for staging sites connected to an external database. #5376
- π Fix Prevent Remote Sync from failing when optional sync selections are omitted. (Pro) #5329
- π Fix Prevent a PHP notice about early translation loading when cron schedules are registered. #5318
- π Fix Prevent a false “core folder excluded” warning in the Create Staging Site modal when staging sites already exist. #5352
- π Fix Prevent missing optimizer settings from triggering warnings. #5356
- π Fix Show an upgrade prompt instead of “No backups found” in the CLI installer when the backup list is unavailable. #5370
- π Fix Prevent the Optimizer mu-plugin from persisting its filtered active_plugins list, which could mass-deactivate every non WP STAGING plugin when core deactivates or activates a plugin during a WP STAGING AJAX request. #5371
- π οΈ Dev Ensure the source Developer license for every Remote Sync E2E test in the shared before-hook, so specs that authenticate against the source no longer fail intermittently with a “Developer plan required” error. #5360
6.9.2 Release July 7, 2026
- β‘οΈ Enh Add accessible labels to Pro upgrade badges and buttons. #5337
- β‘οΈ Enh Improve the first-time staging experience by removing the redundant “Create Staging Site” button, sharing a single CTA between the listing and empty state. #5266
- β‘οΈ Enh Route every in-plugin upgrade link to the wp-staging.com pricing table, localized to the current admin language (de, it, es, fr, pt, pl, ja), with unique UTM tags so each click is identifiable in analytics. #5337
- β‘οΈ Enh Standardize Pro badge wording across the plugin β small locked controls now read “Pro”, section badges “Available in Pro”, and the upsell button “Upgrade to Pro”. #5337
- β‘οΈ Enh Suppress the dismissed CLI notice server-side instead of via localStorage, so it no longer briefly flashes before being hidden. #5266
- β‘οΈ Enh Turn the Pro feature badges in the Create Staging Site modal and other upgrade prompts into links to the pricing table. #5337
- π Fix 404 error when accessing a staging site created with a name containing spaces or special characters. #5321
- π Fix A backup no longer fails when it hits a file outside the standard WordPress folders. The file is skipped and noted in the log instead of aborting the whole backup. #5325
- π Fix Allow staging site names up to 100 characters while keeping the generated directory name capped at 16 characters. #5321
- π Fix Broken auto login to the staging site when the staging site name contains spaces or special characters. #5321
- π Fix Fatal error on the staging site caused by an invalid destination path when the site name contains spaces or special characters. #5321
- π Fix Improve remote backup downloads when the remote file size cannot be detected. (Pro) #5222
- π Fix Prevent backup restore from writing files outside the restore folder. #5299
- π Fix Prevent site fatal error when plugin files are partially updated or missing during an upgrade. #5309
- π Fix Prevent the loading bar from staying visible after a successful backup extraction, and improve the βShow logsβ button styling. #5306
- π Fix Prevent unsafe push when staging and production WordPress versions are incompatible. (Pro) #5286
- π Fix Remove the security alerts popup from the welcome page. #5336
- π Fix Sanitize the staging site directory name and URL so spaces and special characters no longer produce a broken path. #5321
- π Fix Stop remote cloud upload immediately when user cancels instead of continuing in background. (Pro) #3891
- π Fix Temporarily disable the Next-Gen staging engine to prevent staging-site data corruption (postmeta keys). Users are automatically reverted to the Classic engine and warned when they may have staging sites created with the Next-Gen engine. #5346
- π Fix Temporary folders left by the restore tool are no longer included in backups when “Backup Other WP Root Folders” is enabled. (Pro) #5158
- Tweak: Refresh backup content icons and improve their light and dark mode styling. #5315
- π οΈ Dev Avoid lowering PHP memory limit when loading the restore tool as a library. (Pro) #5345
- π οΈ Dev Streamline the release pipeline’s test phase to avoid a long-running idle CI job that wasted runner time on every release. #5142
6.9.1 Release June 29, 2026
- β‘οΈ Enh Extend wpstg_file_permission filter with an optional file path argument for granular per-file permission control. #5237
- β‘οΈ Enh Hide tables from other staging sites when selecting what to copy. #5251
- β‘οΈ Enh Improve the plugin description and wording in the readme. #5262
- π Fix Allow capital letters and spaces in staging site names. #5280
- π Fix Correct dark theme colors in the staging setup modal exclude-rule fields and labels. #5283
- π Fix Ensure staging sites remain protected by the login prompt when access control is enabled. #5278
- π Fix Expand and collapse staging folders from the caret icon. #5274
- π Fix Improve backup and restore error handling to avoid silent failures and retry loops. #3681
- π Fix Populate previously selected exclude rules in the staging site Update and Reset modals. #5288
- π Fix Prevent “Deselect all” tables button from re-selecting tables on the staging Update/Reset modal. #5283
- π Fix Refresh the push files summary when selecting, deselecting or toggling folders, and align it with the create staging summary. #5283
- π Fix Remove misleading “Small Server Settings” link from backup and restore error messages. #3681
- π Fix Remove the redundant usage tracking opt-in admin banner. The first-install consent modal and the Settings toggle remain the way to enable or disable sending usage data. #5289
- π Fix Resolve fatal error on staging site Update/Reset when exclude rules exist. #5283
- π Fix Show the cache-clear notice instead of the staging site URL in the Next-Gen push success modal. #5283
- π Fix Uniquify the inlined SVG element ids in the analytics consent modal to avoid duplicate-id collisions, and update the affected unit test snapshots. #5296
- π Fix Update the create staging summary when toggling between current site and entire network options. #5283
- π Fix Use default plugin paths on staging sites with default WordPress structure to fix subsite asset loading on network staging. #4681
- π Fix Use the selected staging engine when pushing a staging site instead of the previous selection. #5283
6.9.0 Release June 24, 2026
- π¦ New Added the Next-Gen engine for creating, updating, resetting and pushing staging sites. It is up to 80% faster and more resilient against memory and timeout errors, while running in isolation to protect the live site. #5122
- π¦ New Zero performance impact on your live site β WP Staging now runs invisibly to frontend visitors, even during active staging operations. #602
- π¦ New Database restores are dramatically faster on large backups β multi-gigabyte sites restore in a fraction of the time previously needed. #3020
- π¦ New Major redesign of the staging workflows. The Create, Update, Reset, Push and Delete screens now use a cleaner, more consistent interface with live summaries, clearer table and folder selection, safer confirmation steps, improved advanced options and a unified two-column layout across all staging actions. #5122
- π¦ New Add offline asynchronous license registration for firewall-restricted sites. (Pro) #5146
- π¦ New Add option to preserve current user during remote sync pull job. #4934
- π¦ New Remote Sync now has its own independent API version, so sites running different plugin releases stay compatible during pulls and pushes. #5132
- π¦ New Backup file format upgraded to 2.1.0, laying the groundwork for per-file encryption and split backups in upcoming releases. All existing backups remain fully restorable β no migration needed. #5134
- π¦ New Snappier WordPress admin β admin scripts moved out of the critical render path with event delegation for noticeably faster page loads. #5024
- π¦ New A “WP Staging β Tips & Guides” widget on your WordPress dashboard with hand-picked links to docs and tutorials, so you can get more out of the plugin without leaving wp-admin. #5162
- β‘οΈ Enh Improved the staging creation experience in both Free and Pro by making default behavior clearer, showing what will be copied or skipped, grouping advanced settings more logically and removing wording that could make the free version feel unsafe. #5122
- β‘οΈ Enh Log the missing-compatible-primary-key table message as a notice instead of a warning, since the table is locked automatically and no user action is required. #5015
- β‘οΈ Enh Make the “skipped search & replace on large row” log clearer β report binary-data rows as a notice that needs no action and keep a reworded warning for large text rows, without dumping the raw query. #5015
- π Fix “Set Default” links for Destination Path and Target Hostname in Advanced Settings restored. #5055
- π Fix “Unlock Remote Sync” button now links to the correct checkout URL when the license is expired. (Pro) #5067
- π Fix “Unselect All” button now matches the other database table action buttons in dark mode. #5143
- π Fix Analytics consent modal styling fixed in dark mode; raster logo replaced with a scalable SVG. #5068
- π Fix Background restore and backup failures now show a clearer error message with actionable guidance, instead of a generic failure notice. #4606
- π Fix Backup download URL now reflects custom directory set via wpstg.backup.directory filter. #5212
- π Fix Backup queue self-heals when the worker’s loopback HTTP trigger is silently dropped by Cloudflare, restrictive firewalls, or cURL-blocked hosts β jobs no longer stall after the first task. #5118
- π Fix Clean up stale Remote Sync .wpstgtmp files left behind by crashed pulls on the initiator and, via a once-daily safety net, on both initiator and source sites. (Pro) #5101
- π Fix Clear stale option caches after direct database option updates. #5173
- π Fix Correct the dark-mode SweetAlert success icon β the masking wedges rendered as a white disc behind the checkmark on the dark popup. #5232
- π Fix Do not run the new-administrator-account task when the option is disabled, which previously logged a misleading “missing email or password” warning. #5015
- π Fix Do not show the “what’s new” update modal to brand-new users on their first visit; it now only appears for existing users after an update. #5263
- π Fix Enforce TLS certificate verification for restore tool requests. (Pro) #5175
- π Fix Improve next-gen staging site creation and reset with clearer details and more reliable handling of site names that already exist. #5258
- π Fix Keep background job live log buttons working after reopening the logs modal. #5203
- π Fix Keep the “Staging” and “Backup & Migration” menu labels untranslated so community translations can’t rename them. #5267
- π Fix Live backup logs now stream end-to-end on the same host β the live log UI no longer freezes around 100 events while the backup itself completes normally. #5118
- π Fix Live log UI no longer drops legitimate repeat lines (e.g. retried steps with refreshed progress numbers). #5118
- π Fix Load the bundled translation before WordPress.org language packs in the free plugin so local translations win. #5267
- π Fix Logs selector dropdown styling improved in dark mode. #5055
- π Fix Missing top margin on the WordPress Playground warning callout (staging listing page) added. #5149
- π Fix Multipart database-only backup no longer fails when the database is larger than the configured split size. #2624
- π Fix Reduce CPU usage after installing WP Staging and/or WP Staging Pro. #4867
- π Fix Remote Sync pulls on the source site are now properly cancelled and cleaned up when the initiator becomes unresponsive. #4870
- π Fix Remove 42 orphaned translation entries no longer present in the source. #5269
- π Fix Restore now retries temporary server errors automatically and shows a clear status instead of appearing stuck. #4909
- π Fix Restore respects server retry-after timing on temporary limits and handles other server errors more gracefully. #5002
- π Fix Restoring a large database backup that was split into multiple files no longer fails with a duplicate entry error. #5219
- π Fix Security checks for backup-file uploads strengthened. #5160
- π Fix System info card layout no longer breaks when content exceeds the max allowed width. #5055
- π Fix Throttle failed Remote Sync authentication attempts. (Pro) #5171
- π Fix Translate 107 staging setup, delete, and push UI strings that previously rendered in English across all 11 locales. #5269
- UX: Celebrate the first staging site and first backup creation with a brief confetti animation. #5275
- UX: Make the Staging dashboard task-first β replace the large global Pro banner with a compact, dismissible “Upgrade to Pro” card (90-day per-admin snooze), add a permanent “Compare Free vs Pro” footer card, and improve the empty state. #5275
- UX: Polished the staging-site delete confirmation modal. #5055
- UX: Refine the admin footer into a compact single line β muted WP STAGING brand text, brand-blue Documentation, Support and Changelog links, a quieter Borlabs Cookie partner credit, and muted GitHub and X icons, replacing the large centered logo. #5259
- UX: Replace the global time-based review banner with a success-based review prompt shown inside the staging and backup completion modals (never as loose dashboard text), with honest copy, Maybe Later / Don’t Ask Again, and one shared snooze state (progressive 14, 30, 180 days) so the user is never asked twice. #5275
- π οΈ Dev Add .tmp/ to .gitignore so local scratch files stay out of version control. #5199
- π οΈ Dev Add separate CI workflow for remote sync tests covering single-site and multisite. #5155
- π οΈ Dev Add tooling to generate dark and light marketing screenshots for the main features (backup, staging, remote sync, settings). #5231
- π οΈ Dev Allow the gh api graphql command in .claude/settings.json so Copilot review threads can be replied to and resolved. #5234
- π οΈ Dev Derive Playwright PHP version checks from the selected test environment. #5192
- π οΈ Dev Extend /release slash command with operator-critical pre-flight checks and cross-references to rollback, branch naming, and publish-permission rules. #5186
- π οΈ Dev Finalize the refactored staging and push feature and prepare it for e2e testing. #5015
- π οΈ Dev Fix downloading of WordPress 7.0 in dev environment using wp-cli on Windows. #5191
- π οΈ Dev Fix release pipeline failure when triggered for a release branch. #5141
- π οΈ Dev Fix the new administrator account staging test. #5219
- π οΈ Dev Make staging delete modal E2E checks target the visible modal. #5201
- π οΈ Dev Network-dependent tests moved from the unit suite to the integration suite for better test reliability. #5165
- π οΈ Dev New releases now land in the correct spot on the refreshed wp-staging.com changelog pages. #5184
- π οΈ Dev Release pipeline now detects when the deploy API on the release server is outdated. #5188
- π οΈ Dev Replace amd64-only FTP Docker image with multi-arch alternative to fix FTPS test failures on Apple Silicon. #5034
- π οΈ Dev Stop the release deploy from corrupting the changelog page when the editor anchor is set up incorrectly. #5197
- π οΈ Dev Stop the release tooling from losing already-merged changelog entries. #5195
- π οΈ Dev Storage identifier handling consolidated; remote-storage option-name migration now runs via a persistent feature flag instead of version_compare so it executes exactly once even when the stored plugin version is missing or corrupt. #3081
- π οΈ Dev Update db version in database seed files for e2e testing. #5182
6.8.1 Release May 22, 2026
- π¦ New Database restores are dramatically faster on large backups β multi-gigabyte sites restore in a fraction of the time previously needed. #3020
- π¦ New Zero performance impact on your live site β WP Staging now runs invisibly to frontend visitors, even during active staging operations. #602
- π¦ New Snappier WordPress admin β admin scripts moved out of the critical render path with event delegation for noticeably faster page loads. #5024
- π¦ New A “WP Staging β Tips & Guides” widget on your WordPress dashboard with hand-picked links to docs and tutorials, so you can get more out of the plugin without leaving wp-admin. #5162
- π¦ New Remote Sync now has its own independent API version, so sites running different plugin releases stay compatible during pulls and pushes. #5132
- π¦ New Backup file format upgraded to 2.1.0, laying the groundwork for per-file encryption and split backups in upcoming releases. All existing backups remain fully restorable β no migration needed. #5134
- π Fix Restore now retries temporary server errors automatically and shows a clear status instead of appearing stuck. #4909
- π Fix Restore respects server retry-after timing on temporary limits and handles other server errors more gracefully. #5002
- π Fix Backup queue self-heals when the worker’s loopback HTTP trigger is silently dropped by Cloudflare, restrictive firewalls, or cURL-blocked hosts β jobs no longer stall after the first task. #5118
- π Fix Background restore and backup failures now show a clearer error message with actionable guidance, instead of a generic failure notice. #4606
- π Fix Live backup logs now stream end-to-end on the same host β the live log UI no longer freezes around 100 events while the backup itself completes normally. #5118
- π Fix Live log UI no longer drops legitimate repeat lines (e.g. retried steps with refreshed progress numbers). #5118
- π Fix Remote Sync pulls on the source site are now properly cancelled and cleaned up when the initiator becomes unresponsive. #4870
- π Fix Throttle failed Remote Sync authentication attempts. (Pro) #5171
- π Fix “Unlock Remote Sync” button now links to the correct checkout URL when the license is expired. (Pro) #5067
- π Fix Security checks for backup-file uploads strengthened. #5160
- π Fix Missing top margin on the WordPress Playground warning callout (staging listing page) added. #5149
- π Fix Analytics consent modal styling fixed in dark mode; raster logo replaced with a scalable SVG. #5068
- π Fix System info card layout no longer breaks when content exceeds the max allowed width. #5055
- π Fix Logs selector dropdown styling improved in dark mode. #5055
- π Fix “Unselect All” button now matches the other database table action buttons in dark mode. #5143
- π Fix “Set Default” links for Destination Path and Target Hostname in Advanced Settings restored. #5055
- UX: Polished the staging-site delete confirmation modal. #5055
- π οΈ Dev Add separate CI workflow for remote sync tests covering single-site and multisite. #5155
- π οΈ Dev Derive Playwright PHP version checks from the selected test environment. #5192
- π οΈ Dev Extend /release slash command with operator-critical pre-flight checks and cross-references to rollback, branch naming, and publish-permission rules. #5186
- π οΈ Dev Fix release pipeline failure when triggered for a release branch. #5141
- π οΈ Dev Storage identifier handling consolidated; remote-storage option-name migration now runs via a persistent feature flag instead of version_compare so it executes exactly once even when the stored plugin version is missing or corrupt. #3081
- π οΈ Dev New releases now land in the correct spot on the refreshed wp-staging.com changelog pages. #5184
- π οΈ Dev Release pipeline now detects when the deploy API on the release server is outdated. #5188
- π οΈ Dev Network-dependent tests moved from the unit suite to the integration suite for better test reliability. #5165
- π οΈ Dev Replace amd64-only FTP Docker image with multi-arch alternative to fix FTPS test failures on Apple Silicon. #5034
- π οΈ Dev Update db version in database seed files for e2e testing. #5182
6.8.0 Release May 4, 2026
- π¦ New Add analytic events logging for Backup Explorer. #4954
- π¦ New Add filter configuration support for the standalone restore tool via JSON config file. #5051
- π¦ New Add option to create remote sync profiles which allow one click remote sync process. #4668
- π¦ New Add option to receive remote sync success notifications via emails and slack. #4668
- β‘οΈ Enh Add Remote Sync promo video composition (EN + DE) under promo-video/. #5088
- β‘οΈ Enh Add filter for custom search/replace in encoded database values (e.g. base64 JSON). #4931
- β‘οΈ Enh Added a notification on backup download to verify the downloaded file size. #1786
- β‘οΈ Enh Redesign remote sync flow to be smoother. #4668
- β‘οΈ Enh Remove deprecated wpstg.backup.restore.exclude_plugins filter. Use wpstg.backup.restore.exclude_paths instead. #4892
- β‘οΈ Enh Show “Not enough disk space” error when backup file archiving fails due to a disk-full condition, instead of a generic write-failure message. #3034
- π Fix Add per-request cron integrity check that self-heals missing, orphaned, or wrong-recurrence WP Staging cron events (backup schedules, daily/weekly maintenance, queue processing) so scheduled backups keep running even when WP-Cron itself is broken. #5090
- π Fix Cron warning shows only when scheduled backups are actually failing. #5058
- π Fix Fixed edge cases that could cause some settings or backup information to load incorrectly, and improved validation and error handling in backup and staging workflows. #5070
- π Fix Improved backup reliability on some hosts by ensuring backup progress continues correctly between requests. #5112
- π Fix Preserve WP Staging Free plugin during backup restore when using Pro version. #4892
- π Fix Prevent background backups from processing the database twice. #5009
- π Fix Prevent fatal error and full-site crash when plugin files are missing or corrupted. #5074
- π Fix Reject empty token on /wpstg/v1/sse-logs REST route to prevent unauthenticated log-stream connections when no job is active. #5097
- π Fix SFTP connection test fails when run more than once. (Pro) #5029
- π Fix Show actual Remote Sync error in UI instead of generic failure message and identify which server caused it. #5011
- π Fix Skip optimizer copy when the destination (mu-plugins directory) is not writable. #4545
- π Fix Staging delete modal overflows viewport when staging site has many database tables. #5071
- π Fix Stored SFTP credentials, including SSH private keys, are now saved securely by default. #5048
- π Fix Undefined variable notice of jobId from AnalyticsServiceProvider. #1503
- π οΈ Dev Add logic to log generic analytic events. #4954
- π οΈ Dev Add translation-audit helper script to find orphaned msgids and missing translations across .po files. #5106
- π οΈ Dev Bump phpunit/phpunit, symfony/process, phpseclib/phpseclib, eslint, @typescript-eslint, and flatted dependencies. #5017
- π οΈ Dev CI release prepare seeds dist/newsfeed-{en,de}.json from dev/releases-history/<version>/ when present, and skips newsfeed:generate-json regeneration in that case so manual edits to the EN newsfeed and translated DE newsfeed survive across re-runs and reach the deploy artifact. #5138
- π οΈ Dev Decouple general/ Playwright tests from staging GitHub workflows into dedicated basic_general, pro_general, and pro_thirdparty_general workflows. #5125
- π οΈ Dev Fix failing “Pro Integration” test on CI for PHP 8.3+. #5082
- π οΈ Dev Fix syntax error in CI release prepare workflow that caused the post-commit “mark required checks” step to crash. #5137
- π οΈ Dev Keep `fast-tests-passed` / `fast-tests-failed` labels across commits; let next test run swap them. #5087
- π οΈ Dev Refactor Staging Site e2e tests to be more robust and stable. #5077
- π οΈ Dev Remove binary .mo translation files from git to prevent merge conflicts. #5072
- π οΈ Dev Revert PHP 8.6 SplFileObject runtime detection until PHP 8.6 is officially released. #5115
- π οΈ Dev Skip AuthTempCertFileTest file permission check on Windows as it does not support Unix permissions. #5069
- π οΈ Dev Update dependencies related to building assets to reduce time taken to build assets. #4880
6.7.3 Release April 10, 2026
- β‘οΈ Enh Add new UI components: custom dropdown select, input groups with inline prefix, callout notifications, and card primitives. #4830
- β‘οΈ Enh Add responsive settings layout with auto-collapsing grid for general settings cards and email notification fields. #4830
- β‘οΈ Enh Add storage provider tab navigation with gradient hover effects matching the main menu. #4830
- β‘οΈ Enh Add two-column sidebar navigation layout for the settings page replacing horizontal tab navigation. #4830
- β‘οΈ Enh Improve maintenance process logging with dedicated entries for clone update/reset, backup extraction and remote sync, and skip scheduled backup completion entries. #4877
- β‘οΈ Enh Redesign FTP/SFTP settings with SSH key file upload, FTPS certificate support, and server host key fingerprint verification. #4830
- β‘οΈ Enh Redesign all storage provider settings with card-based layouts and consistent dark mode styling. #4830
- β‘οΈ Enh Redesign dark mode with cohesive bluish palette, updated header gradient colors, and CSS custom properties. #4830
- β‘οΈ Enh Redesign staging, backup modal, license, restorer, system info, and temporary login pages with new design system. #4830
- β‘οΈ Enh Replace .checksum-dist CI cache key with GitHub Actions hashFiles() on source files for more reliable cache invalidation. #4830
- β‘οΈ Enh Show more precise error messages when user account synchronization fails. (Pro) #3334
- β‘οΈ Enh Standardize page headers across all settings tabs with consistent typography and spacing. #4830
- π Fix Apply filters and actions for hooks starting with “wpstg_” as well as “wpstg.”. #4982
- π Fix Disallow spaces in remote storage backup location field for all providers. (Pro) #5019
- π Fix Fix broken privacy policy links in storage provider settings where translators embedded HTML in placeholder strings. #4830
- π Fix Fix duplicate HTML IDs from CLI integration modal being rendered multiple times per page. #4830
- π Fix Fix empty changelog in GitHub release descriptions created by release tag workflow. #4986
- π Fix Fix main navigation header bottom border not visible due to zero-width border declaration. #4830
- π Fix Fix temporary login actions dropdown clipped by overflow hidden on settings content area. #4830
- π Fix Fix wrong translations for “Email as HTML”, “Remove Google Drive Settings”, “Customize these settings”, and “Restore in Progress” across all 11 languages. #4830
- π Fix Improved input handling in `Google Drive` settings to prevent empty submissions and enhance validation. (Pro) #5019
- π Fix Issue where the apostrophe in the Backup Browser upsell modal title was displayed incorrectly. #5047
- π Fix Prevent PHP 8.1+ undefined variable warnings when detecting REST requests. #5036
- π Fix Prevent backup restore issues caused by temporary WPForms data by skipping this cache data in database backups. #4956
- π Fix Prevent importing or downloading backups from unsafe internal addresses. #4277
- π Fix Prevent path traversal in directory listing endpoint. #5032
- π Fix Resolved incorrect display of SSH private key UI after switching connection types and reloading saved settings. (Pro) #5042
- π Fix Show HTTP status code and error response when uploading a backup via form fails. #4619
- π Fix Show Logs link layout in backup restore success modal. #5050
- π Fix Show validation error when backup folder path is empty in remote storage settings. (Pro) #5019
- π Fix Simplify sanitizeString by removing the redundant shouldUrlDecode parameter. #4936
- π Fix Skip float memory_limit test on PHP 8.3+ to prevent CI failure from invalid INI value warning. #4994
- UX: Improve button alignment and spacing consistency in advanced settings. #5043
- π οΈ Dev Add cleanup folder support for pCloud, OneDrive, Google Drive, and Dropbox integration tests. #4978
- π οΈ Dev Add custom wpstg_settings database table with CRUD operations, WordPress object cache integration, reusable CustomTable base class, and SettingsTable facade for static access. #5027
- π οΈ Dev Add unit tests for backup schedule email and Slack notification methods. #4778
- π οΈ Dev Make fast tests label-triggered instead of auto-run on every push. #4989
- π οΈ Dev Migrate all Linux CI workflows to Blacksmith runners. #4991
- π οΈ Dev Remove Playwright keyword from Make targets and workflow commands, add run-mode support to pro workflows, restructure release test suite for parallel execution, remove Selenium dependencies, and upgrade primary CI PHP version to 8.3. #5004
- π οΈ Dev Remove obsolete dist checksum step from CI release pipeline. #5056
- π οΈ Dev UI options and CLI support for Refactored Staging and Push feature. #4825
6.7.2 Release March 18, 2026
- β‘οΈ Enh Secure Remote Sync feature by adding a toggle to enable or disable incoming connections. Also mask the connection key by default with a show/hide toggle. #4935
- π Fix Improve broken UX on backup page for free version on multisite. #4970
- π Fix Properly handle case when remote sync with database is too fast to trigger re-authentication. #4864
- π Fix Show error directly during authentication when syncing single site <-> multisite and subsite. #4835
- π Fix Show missing remote sync info in logs. #4836
- UX: Improve button readability in the “Want to Improve WP STAGING?” banner in dark mode. #4960
- π οΈ Dev Add automated CI release pipeline with secure deploy API endpoint. #5000
- π οΈ Dev Clean up CLAUDE.md by extracting detailed sections to dev/docs files. #4967
- π οΈ Dev Move all backup e2e codeception tests to playwright. #4761
- π οΈ Dev Move remote storage cleanup methods out of production plugin code into test-only classes to reduce attack surface. #4783
- π οΈ Dev Update Kanban GitHub action to set status “Done” when PR is merged. #4963
- π οΈ Dev Add label-triggered E2E tests for PRs. #4973
- π οΈ Dev Move CI test results from PR comments to PR description for cleaner test reporting. #4976
6.7.0 Release March 10, 2026
- π¦ New Browse and inspect the contents of any backup β view included files, folders, and database tables. In Pro, extract specific items from a backup to another folder without restoring the entire website. #2523
- π¦ New Add support for sites protected with HTTP Basic Authentication. Scheduled backups and external crons now work on password-protected sites. Remote Sync can also connect to remote sites with HTTP auth protection. (Pro) #4884
- π¦ New Automatically create missing directories on the remote server during SFTP/FTP backup uploads. Previously, the destination path had to exist on the server beforehand. (Pro) #4654
- β‘οΈ Enh Add Test Connection button for HTTP Basic Auth settings to verify credentials before saving. #4939
- β‘οΈ Enh Add option to change the database table prefix when extracting a backup with the WP Staging Restore Tool, allowing SQL imports into any database. (Pro) #4677
- β‘οΈ Enh Move CLI banner outside AJAX container on backup page. #4819
- β‘οΈ Enh Replace alarming WordPress version warning banner with a calm, neutral compatibility status notice inside the plugin UI. #4917
- β‘οΈ Enh Show CLI integration banner in free version as upsell for Docker environments feature. #4910
- β‘οΈ Enh Simplify Pro activation banner with one-click AJAX activation and standardize border-radius across all notices and banners. #4949
- β‘οΈ Enh Add validation to prevent staging prefix conflicts. Blocks using wpstg_ as a staging-site table prefix. Prefixes like wpstg0_, wpstg1_, etc. are still allowed. (Pro) #4799
- π Fix Allow deletion of orphaned staging sites that no longer exist in the file system but are still listed in the WP STAGING interface. #4610
- π Fix Drop-in files like object-cache.php and advanced-cache.php are now properly removed during push when βuninstall plugins and themesβ is selected. Previously, an incorrect file path could leave these files behind, potentially causing fatal errors. (Pro) #4799
- π Fix WP STAGING options no longer get corrupted during Push. A prefix-replacement bug could accidentally rewrite wpstg_* option names to wp_*, breaking configuration and stored staging data. (Pro) #4799
- π Fix During full network restore, subsitesβ URLs are not replaced in the options table. #4752
- π Fix Ensure WP STAGING admin notices display correctly in dark mode on WordPress 7.0. #4929
- π Fix Fixed an error that could cause the Backup page to crash. #4906
- π Fix Fixed an error that could prevent the Backup page from loading. #4901
- π Fix Prefix not replaced inside serialized option and meta values during database normalization. (Pro) #4676
- π Fix Prevent WP STAGING admin notices from appearing on third-party plugin pages with similar slug prefixes. #4823
- π Fix Prevent backup modal from jumping when expanding collapsible sections beyond viewport height. #4787
- π Fix Creating a temporary login link no longer invalidates the creatorβs own user session. (Pro) #4806
- π Fix Remote Sync pull gets stuck at βInitializingβ when the SSE connection is not established due to a race condition in job detection. (Pro) #4895
- π Fix Resolve false-positive backup validation error caused by skipped files not being counted in the total. #4933
- π Fix Restore the General Settings UI by removing duplicate CSS that overrode page styling. #4926
- π Fix Show detailed log entries when filtering logs by βallβ or βinfoβ during backup and staging operations. #4876
- UX: Add Close button on success modal of remote storage backup delete option. #4772
- UX: Improve sticky sidebar position on System Info page to stay at the top while scrolling. #4903
- π οΈ Dev Add support for skip-tests label in CI workflows to skip test execution. #4900
- π οΈ Dev Fix playwright tests failing for thirdparty site structure. #4890
- π οΈ Dev Integrate SolidJS in our dev environment to build reactive components. #4798
- π οΈ Dev Optimize make dev_dist build time and skip unit tests on macOS. #4879
6.6.0 Release February 10, 2026
- π¦ New Introduce Remote Sync to pull data from a remote site. (Pro) #4596
- π¦ New Compatible up to WordPress 6.9.1
- π¦ New Add UI component system for more consistent and polished styling. #4837
- π¦ New Add confetti celebration when creating a staging site or backup for the first time. #4803
- π¦ New Add smooth shrink-to-dock animation when dismissing the CLI banner. #4840
- π¦ New Redesign the license page with a modern look and updated feature descriptions. #4774
- β‘οΈ Enh Allow staging site creation in wp-content/wp-staging-sites when root folder is not writable. #4785
- β‘οΈ Enh Improve backup file validation performance by processing smaller files in memory. #4695
- β‘οΈ Enh Remove the “Check Directory Size” setting to simplify the settings page. #4715
- β‘οΈ Enh Simplify CLI integration Step 3 to use a single restore command with the –from flag. #4829
- π Fix Allow saving cloud storage settings even when the connection has not been tested yet, with a clear warning. (Pro) #4575
- π Fix Resolve CI cache conflict between Pro and Basic builds. #4868
- π Fix Resolve backup restore failure caused by empty chunk size. #4672
- π Fix License text in CLI banner was unreadable in dark mode due to incorrect text color. #4791
- π Fix Fully remove cloud storage settings on logout/revoke and clearly inform users before deletion. (Pro) #4758
- π Fix Preserve plugin settings during staging site updates, creation, and reset. #4744
- π Fix Sort backups by creation date in CLI integration Step 3. #4859
- π Fix Clean up stale CSS files during asset build process. #4853
- π Fix Correct broken footer layout on the FAQ card. #4831
- UX: Fix typo in the staging site update warning dialog. #4792
- UX: Improve backup page loading speed with parallel requests and better error handling. #4817
- UX: Improve loading states with skeleton placeholders, less blank space on the backup page, and shorter loading bar timeout. #4815
- UX: Redesign the System Info page with a cleaner layout and improved usability. #4746
- π οΈ Dev Add PHPCS rule to detect accidental double dollar signs ($$) as potential typos. #4645
- π οΈ Dev Add critical warning in CLAUDE.md to never push directly to master. #4857
- π οΈ Dev Add Tailwind CSS to streamline UI development. #4775
- π οΈ Dev Auto-copy built CSS/JS assets to dist folders after running make assets. #4847
- π οΈ Dev Consolidate duplicate license-checking logic in CLI integration notice. #4844
- π οΈ Dev Fix Playwright UI command (make e2e_playwright_ui) not working on macOS. #4760 #4765
- π οΈ Dev Fix incremental asset builds skipping rebuild after a failed build. #4851
- π οΈ Dev Fix missing sanitizeArrayString call and resolve “Staging page container not found” error on non-staging pages. #4809
- π οΈ Dev Improve sanitizeArrayString to handle multidimensional arrays recursively. #4802
- π οΈ Dev Fix missing semicolons in nginx Docker config files. #4757
- π οΈ Dev Prepare PUSH for refactoring. #4701
- π οΈ Dev Remove flaky email notification test in backup Playwright suite. #4750
- π οΈ Dev Update cloud backup Dropbox Refresh Token. #4793
- π οΈ Dev Update ESLint configuration to automatically fix linting issues. #4731
- π οΈ Dev Update ESLint config for improved JavaScript formatting. #4708
- π οΈ Dev Improve code readability by using positive variable names. #3675
6.5.0 Release January 14, 2026
- π¦ New Create local containerized and docker compatible development environments with wp staging cli. (Requires Pro Developer or Agency Plan) #4759
- π¦ New Beautify changelog section to make it more appealing. #4724
- π¦ New Add a preview of the selected options when the menus are collapsed. #4419
- π¦ New Add ability to select a specific day of the week when creating a weekly scheduled backup. (Pro) #4670
- π¦ New Improved email notification options for better user alerts. #4154
- π Fix Avoid OPcache “restrict_api” warnings in staging by properly handling restricted OPcache API paths. #4678
- π Fix Avoid fatal type errors when filtering the active plugins list during database restore and database pull for multisite if the active plugins options become corrupted. #4666
- π Fix Clean up plugins data on uninstall. #4583
- π Fix Clean up temporary validation directory before starting the backup process. #4625
- π Fix Corrected display issues in some admin messages to ensure text appears properly. #4716
- π Fix Dynamically fetch AWS S3 regions from AWS API with fallback to static list. (Pro) #4684
- π Fix Fail to create staging site after making a push. Get file permission error. (Pro) #4748
- π Fix Improve CLI modal reliability and backup UI, including a new sidebar and step navigation, custom header, visual feedback animation, copy button fix, and clearer date column styling. #4759
- π Fix Inconsistent font size in modal popups. #4721
- π Fix Logs are displayed even when their corresponding log type checkbox is not checked #4656
- π Fix Unable to create multisite backup when current network id not 1. #4697
- π Fix Valid permissions could be incorrectly rejected by isValidPermission(). #4749
- UX: Fix broken CSS and improve remote backup download modal with file size display and download button text improved. #4730
- π οΈ Dev Fix slowness in `make reset` dev command. #4742
- π οΈ Dev Improve macOS compatibility for development environment setup and build processes. #4567
- π οΈ Dev Increased time tolerance for scheduled backups to allow execution at any time of day. #4737
- π οΈ Dev Migrate wpstg-restorer codeception tests to Playwright for improved test reliability. #4071
- π οΈ Dev Move all staging(tests/e2e/Staging) e2e codeception tests to playwright. #4561
- π οΈ Dev Refactor and prepare code base for newer staging site update and reset logic using backuper pattern. #4537
- π οΈ Dev Skip unrequired and slow unit tests for Windows OS to speed it up. #4735
- π οΈ Dev Use constant for non-test filters in whole code base. #4236
- π οΈ Dev Fix mailhog email tests failing on macOS by making the API URL configurable via environment variable. #4769
6.4.0 Release December 2, 2025
- π¦ New Compatible up to WordPress 6.9
- π¦ New Tested up to PHP 8.5 RC5.
- π¦ New Create local containerized and docker compatible development environments with wp staging cli. (Requires Pro Developer Plan or higher) #4688
- π¦ New Add support for uploading backup files to shared Google Drive folders. (Pro) #3993
- π¦ New Add autoscroll toggle to log modals. Hovering or scrolling inside the log window pauses automatic scrolling, allowing users to review previous log entries while new ones arrive. Hovering outside re-enables autoscroll. A small “Autoscroll: on/off” indicator appears in the bottom-right corner. Increases performance by reducing unnecessary scroll events when users are interacting with the log content and caching DOM elements. #4614
- π¦ New Redesign the settings page with a cleaner layout and better visual hierarchy. #4595
- β‘οΈ Enh Make pro features dynamically accessible based on license types. (Pro) #4558
- β‘οΈ Enh Show backup storage connection test results in modal instead of toast when there is an error or warning. (Pro) #4463
- π Fix Ensure the initial login session on new staging sites follows the default WordPress session expiration. (Pro) #4646
- π Fix Fixes very rare file index issues on misconfigured and buggy server by implementing the filter `wpstg.job.performance_mode` (when set to `safe`). #4628
- π Fix Show clearer error messages when a directory is not writable due to permission issues or open_basedir restrictions. #4679
- π Fix Increase default ZIP file size limit from 10 MB to 50 MB during backup creation. #4674
- π Fix Simplify logout logic during database restore to avoid potential 503 error that disrupt the logout workflow. #4633
- π Fix Allow emails with subdomains when creating temporary login users. (Pro) #4621
- π Fix Show backup size in the UI for corrupted backups. #4637
- π Fix Prevent ‘E_STRICT’ deprecation notice on PHP 8.4+. #4544
- π Fix Don’t copy background processor table wpstg_queue during cloning. #4636
- π Fix Several fixes and UX improvements to the cli modals #4707
- π Fix Allow 5-site Business license to have access to all Pro features (Pro) #4691
- π Fix Make buttons grey when license is not active #4682
- π Fix Exclude debug.log from backup creation by default #4693
- UX: Enhance the license activation error notice to display a clearer and more informative message when activation fails due to any error. (Pro) #4657
- π οΈ Dev Convert codeception remote storage tests to Playwright. #4551
- π οΈ Dev Fix flaky playwright tests. #4662
- π οΈ Dev Make code base pass with phpstan level 5. #4650
- π οΈ Dev Refactored `getLoaderAndSwal` to ensure single responsibility by separating loader initialization and display logic. #4640
- π οΈ Dev Make code base pass with phpstan level 4. #4648
- π οΈ Dev Use updated playwright docker image #4699
6.3.2 Release October 7, 2025
- π¦ New Compatible up to WordPress 6.8.3.
- β‘οΈ Enh Present new automatic login to staging sites. #4585
- π Fix Resolved incorrect file path issue that was preventing old backup files from being deleted on FTP/SFTP servers. (Pro) #4582
- π Fix Resolved issue preventing data from being saved in the clone edit modal. (Pro) #4600
- π Fix Upload backup using the URL is not working, stuck at 0%. #4588
- π Fix Add additional JavaScript backup URL validation to ensure only valid .wpstg backup files are accepted. #4504
- π Fix Auto-login occasionally fails on older staging sites. (Pro) #4607
- π Fix False ‘Insufficient Database Permissions’ warning when database name contains escaped underscores. (Pro) #4590
- π Fix Backup upload fail for wasabi s3 due to timeout on fast server. (Pro) #4616
- π Fix Database prefix was not replaced for subsites when restoring multisite backups. #4578
- π Fix Case-Insensitive file conflict in same directory. #4612
- π οΈ Dev Move `renderAlertMessage` into the correct UI namespace for cleaner architecture. #4573
- π οΈ Dev Improve phpcs rules to catch and fix file formatting (space left over or wrong indentation). #4250
- π οΈ Dev Add analytics for remote sync feature. Change authentication workflow for remote sync. Add truly background support for one way remote sync. #4515
- π οΈ Dev Implement site-specific reset command functionality. #2877
- π οΈ Dev Add phpcs new rules. #4602
- π οΈ Dev Update login form snapshots. #4592
- π οΈ Dev Wrong string formatting and phpcs issues. #4598
6.3.1 Release September 12, 2025
- β‘οΈ Enh Add filter `wpstg.backup.restore.exclude.tables` to support excluding of specific tables during the backup restore process. #4430
- β‘οΈ Enh Add custom region field for Wasabi S3 backup storage settings to support additional regions not listed in predefined options. (Pro) #4470
- β‘οΈ Enh Improve upgrade notification. #4529
- β‘οΈ Enh Add cancel option for refactored staging site creation. Make UI options work in the refactored staging site logic. #4464
- π Fix Misleading warning message displayed when symlinking files on staging site. #4555
- π Fix Optimize and improve loading placeholder performance and smoothness to eliminate UI flakiness. #4526
- π Fix Magic login links to staging site not always work. Refactor auto-login code for re-usability and ensure auto login metadata is cleared after authentication. (Pro) #4424
- π Fix Resolved false positive database permission warnings and empty table lists when deleting staging sites with external databases and custom table prefixes. (Pro) #4576
- π Fix Fatal error for `invalid job type` when uploading local backup to cloud. (Pro) #4518
- π Fix Memory exhaust error on backup restore when using the restore tool. Fix class not found in the restore tool and remove unused constants. (Pro) #4552
- π Fix Temporarily disable the modal “Nothing to worry but there is a glitch⦔. #4516
- π οΈ Dev Improve speed of playwright background test and add AI agent documentation #4565
- π οΈ Dev Exclude CLAUDE.md from dist packages. #4534
- π οΈ Dev Bring back `WP Staging Restorer` build script. #4570
- π οΈ Dev Extend the remote backup downloader so it can be used for remote sync feature. Also use only login related cookies when running background queue jobs. #4393
- π οΈ Dev Remove php cli github action workflow. #4536
- π οΈ Dev Move backup storage providers one folder up and remove folder storages. #4484
- π οΈ Dev Optimize github actions by removing PHP CLI setup action and using Docker containers for all PHP commands, saving ~32 seconds per workflow run #4532
6.3.0 Release August 19, 2025
- π¦ New Opening a staging site using `Action` dropdown > `Open`, now automatically login to staging site using one time login token. Existing (old) staging sites must be updated to use this feature. (Pro) #3636
- π¦ New Implement new log level “Notice” and improve log filtering with multi-select checkboxes. Users can now see important notices that are not warnings or errors, and filter multiple log types simultaneously instead of being limited to single-type filtering. #4506
- π¦ New Add new `Personal License` plan. (Pro) #4420
- β‘οΈ Enh Add backup cancel button for server side events (SSE) based realtime background logger for backup foreground jobs as well. #4472
- β‘οΈ Enh Remove Amazon SDK and create a new custom S3 Implementation that is faster and smaller than the official Amazon SDK. (Pro) #4468
- π Fix Unable to create compressed large backup. Extraction and validation of large database fails if it couldn’t be completed in a single request. #4466
- π Fix Cleanup staging site cache file on cancel. Fix browser console errors on staging site cancel. #4456
- π Fix Backup cancel process doesn’t cleanup temp files extracted during backup restore. #4512
- π Fix Prevent fatal TypeError crashes during backup operations when null values are encountered in file metadata. #4330
- π Fix Delete rest url transient after staging site creation to make background logger work on staging sites. #4473
- π Fix Invalid ID in HTML of listed remote backup elements. #4490
- π Fix Background logger keeps on running after deleting a large staging site. #4411
- π Fix Escape invalid HTML entities to prevent `DOMDocument` parse errors during news feed validation. #4475
- π Fix Refresh `Last Saved` date after saving storage settings. (Pro) #4486
- π Fix Exclude `wp-content/wp-staging` folder by default while performing staging push. (Pro) #4477
- π Fix Typo in backup and restore task β “Tmp” should be “Temp”. #4408
- π Fix Cleanup temporary validation files after backup creation and add a routine to clean the temporary validation directory. #4407
- π Fix Prevent staging site creation from hanging when theme folder has no access permissions. #4451
- π Fix Change “Twitter” to “X” in notification messages and social links. #4436
- UX: Remove admin message “diagnostic information”. #4505
- UX: Use alert SVG icon for rendering alert messages. #4402
- UX: Make sure listed local backup and remote backup containers have the same height. #4487
- UX: Improve multi-part backup download modal for better usability and clarity. #4410
- π οΈ Dev Optimize and fix LLM instructions and setup steps for faster build process. #4496
6.2.1 Release July 22, 2025
- π¦ New Compatible up to WordPress 6.8.2.
- β‘οΈ Enh Reduce the disk space requirement for backups during creation and improve the speed of backup creation when compression is enabled. #4342
- β‘οΈ Enh Show Bytes in more human friendly megabytes format in Log Window. #4385
- β‘οΈ Enh Improve update message text for staged rollouts. #4394
- β‘οΈ Enh Disable click option of Add Exclusion checkbox in Create Backup modal for free version. #4396
- β‘οΈ Enh Use constant for non-test action hooks in whole code base. #4354
- π Fix Misleading menu name for copying backup URL. #4397
- π Fix Incorrect HTML encoding in log output. #4388
- π Fix UX, missing margin in free version for pro feature demonstration text. #4389
- π Fix Improve log wording of backup processing. Wrong usage of plural and singular. #4373
- π Fix Modal “Another backup is running” looks broken and has sprintf error. #4384
- π Fix Prevent possible rare race condition when purging the cache. #4392
- π Fix Keep Advanced Options collapsed on Create Backup popup. #4449
- π Fix Removing translations from brand names and general global known terms. #4395
- π Fix Avoid scanner issues in the backup restore standalone tool. #4361
- π Fix Prevent error in email masking for short usernames that have only two characters. #4382
- π Fix Opening Settings -> Temporary Logins is slow in free version and takes seconds to load. #4387
- UX: Add space character in Action menu items between menu text and (Unregistered) #4441
- UX: Margin right issue on main html container on mobile devices. #4426
- π οΈ Dev Move Remote Sync feature towards final steps. #4318
- π οΈ Dev Prepare file copying logic to use backup logic for staging site feature refactor. #4224
- π οΈ Dev Prepare data login to use backup logic for staging site feature refactor. #4239
- π οΈ Dev Fix e2e tests failing because of outdated db version in database snapshot used for resetting database between tests. #4427
6.2.0 Release June 23, 2025
- π¦ New Add pCloud backup storage cloud provider. (Pro) #2876
- π¦ New Add filter `wpstg.cloning.preserve_upload_path` to preserve the upload_path option during staging site creation. #3751
- β‘οΈ Enh Exclude “.gz” and “.tmp” from the backup process by default #1500
- β‘οΈ Enh Improve logs while compressing file in backups. #3432
- β‘οΈ Enh Label backup as “Compressed” when it is a compressed backup. #4324
- β‘οΈ Enh Change EDD license endpoint to a custom endpoint with fallback to legacy endpoint for improved reliability and performance. (Pro) #4336
- β‘οΈ Enh Improve the error message when the database table can’t be repaired during backup and if it is required. #4355
- π Fix Sanitize sftp options value to fix Uncaught TypeError #4209
- π Fix S3 backup (remote storages) authentication process is failing. (Pro) #4299
- π Fix Don’t copy backup schedules and temporary logins while creating a new staging site. Beautify clone edit modal tooltip text. #4285
- π Fix Unable to detect job type during WP Staging `status` ajax request. #4337
- π Fix Missing pro features for the `Developer Plan β 30 Active Sites` plan. (Pro) #4331
- π Fix Handle exclusion rules `Other WP Root Folders` backup to prevent the inclusion of unintended files/folders. (Pro) #4348
- π Fix Empty dirs are not copied during clone, update and push which create issues with third party plugins. #3329
- π Fix Improve error message when restore couldn’t be possible using free version because server changed. #4334
- π Fix Ensure pro features remain accessible even if the license is expired. (Pro) #4176
- π Fix On Multisite, Restore fails during database rename task when restoring full network backup if WP Staging plugin(s) are network active. (Pro) #4272
- π Fix The restore tool slows to load ‘View backup’ screen for large backup files. (Pro) #4292
- π Fix Remove wp-login.php from staging site login links incl. Temporary Login links to prevent cloudflare restrictions. #4192
- π Fix Backup upload failing for Dropbox backup remote storage. (Pro) #4375
- UX: Enhance the visual appearance of the backup storage icons. #4367
- UX: Missing space in Show Logs link. #4366
- UX: Adjust backup background logger design so that it takes less height on the screen. #4317
- UX: Remove duplicate buttons from tables selection while doing staging process. #4304
- UX: Enhance the activation process for backup cloud storage providers. (Pro) #4190
- UX: Beautify loading placeholder. #4322
- UX: Improve FTP backup storage UX #4234
- UX: Increase line-height of delete backup confirmation modal to make it more appealing. #4313
- π οΈ Dev Replace yarn with pnpm for building assets. Update php and js dependencies. #4352
- π οΈ Dev Improve database cloning speed for the upcoming staging site refactor. #4258
- π οΈ Dev Fix failing e2e tests. #4370
- π οΈ Dev Refactor hardcoded `wpstg_queue` string with constant. #2946
- π οΈ Dev Add an Github Action to create dist package against current state of the plugin, so they can be downloaded and installed. #4350
- π οΈ Dev Fix e2e failing on github for PCloud tests. #4363
- π οΈ Dev Fork lucatume/DI52 dependency to support PHP 7.0 and remove warnings in PHP 8.4. #4359