=== UpdraftPlus WordPress Backup Plugin ===
Contributors: Backup with UpdraftPlus, DavidAnderson, DNutbourne, aporter, snightingale, bcrodua
Tags: backup, restore, database backup, wordpress backup, cloud backup, s3, dropbox, google drive, onedrive, ftp, backups
Author URI: https://updraftplus.com
Donate link: https://david.dw-perspective.org.uk/donate
Backup and restoration made easy. Complete backups; manual or scheduled (backup to Dropbox, S3, Google Drive, Rackspace, FTP, SFTP, email + others).
<a href="https://updraftplus.com">UpdraftPlus</a> simplifies backups and restoration. It is the world's highest ranking and most popular scheduled backup plugin, with over three million currently-active installs. Backup your files and database backups into the cloud and restore with a single click!
Backup into the cloud directly to Dropbox, Google Drive, Amazon S3 (or compatible), UpdraftVault, Rackspace Cloud, FTP, DreamObjects, Openstack Swift, and email. The paid version also allows you to back up to Microsoft OneDrive, Microsoft Azure, Google Cloud Storage, Backblaze B2, SFTP, SCP, and WebDAV.
[vimeo https://vimeo.com/154870690]
= Don't risk your backups on anything less =
Your WordPress backups are worth all of the investment you've made into your website. The day may come when you get hacked, when something goes wrong with an update, your server crashes or your hosting company goes bust – without good backups, you lose everything. Would you entrust all your hard work to a backup plugin with only a few thousand downloads, mixed reviews or no professional support?
Believe us: writing a reliable backup plugin that works consistently across the huge range of WordPress deployments is hard.
UpdraftPlus works. We'll keep your backups safe.
= Why you should backup your website. =
WordPress, like any CMS, can be vulnerable to everything from server crashes, hacks, security flaws, bad plugin or theme updates and insecure web hosts. If anything happened to your website, it would cost you dearly in time, money and reputation.
Whilst other security measures are essential, backups are the ultimate insurance: they mean that, if the worst were to happen, your website (plus all related files and databases) would stay safe, and could be restored in no time.
You could of course create your own manual backups- but using a backup plugin is infinitely quicker, simpler and safer. Life's busy enough! With UpdraftPlus, you can simply "set and forget", scheduling in automatic backups to save you time, work and hassle.
= How UpdraftPlus compares with other backup plugins: =
UpdraftPlus is the most highly-rated and popular backup plugin out there - and for good reason. Not only is it comprehensive in terms of its features, but it's also easy and intuitive to use. And its vast user base means that, it's been tried and tested in a whole range of different scenarios.
Unlike many other plugins, UpdraftPlus:
* Restores, as well as backing up
* Backs up to more cloud options than any others
* Allows you to set up automatic backup schedules, for the ultimate in convenience
* Is faster, using up fewer server resources
* Has been tested on over 3 million sites
Our website, has a full-page table laying out how our Premium version plugin compares with the competition <a href="https://updraftplus.com/comparison-updraftplus-free-updraftplus-premium/">here</a>
The free version of UpdraftPlus will back up your website perfectly well. However if you need more features and options you can purchase our Premium version. Back up with UpdraftPlus Premium, and you can enjoy:
* Easily duplicates or migrates websites (with Migrator)
* Multisite/multi-network compatibility
* Back ups of non WP files and databases to multiple remote destinations
* More storage destinations (e.g. OneDrive, BackBlaze, Azure, SFTP) and multiple destinations
* Free dedicated expert support
Find out more <a href="https://updraftplus.com/comparison-updraftplus-free-updraftplus-premium/">on our comparison page</a>. UpdraftPlus Premium is available for purchase <a href="https://updraftplus.com/shop/">here</a>.
= Managing multiple website backups =
We've also developed a brilliant new plugin that allows you to back up, update and manage all of your websites remotely from one central location. It's called <a href="https://updraftcentral.com">UpdraftCentral</a>, and it comes in 2 different forms:
* UpdraftCentral (free, self-hosted)
* UpdraftCentral Premium (fully-hosted and "ready-to-go", cloud version also available)
= Instantly create a temporary clone of your site (UpdraftClone) =
A temporary clone is an instant copy of a website, which runs on our servers. Rather than needing to test or develop this on your live site, you can instead create a UpdraftClone, which you can simply throw away when you're done. <a href="https://updraftplus.com/updraftclone/">Learn more about UpdraftClone here.</a>
* Easy: Press the buttons and UpdraftClone does the work.
* Reliable: UpdraftClone runs on capacity from a leading cloud computing provider.
* Secure: We designate one VPS (Virtual Private Server) per clone, shared with nobody.
* Fast: Clones take just the time needed to create a backup and send it.
* Flexible: Test upgrading to a different PHP or WP version if you want.
To create a temporary clone you will need: 1) credit in your account and 2) to connect to your account. You can buy UpdraftClone tokens <a href="https://updraftplus.com/shop/updraftclone-tokens/">from our shop, here</a>.
= Are you multi-lingual? Can you translate? =
Are you able to translate UpdraftPlus into another language? Are you ready to help speakers of your language to back up their website? UpdraftPlus Backup/Restore itself is ready and waiting - the only work needed is the translating. The translation process is easy, and web-based - go here for instructions: <a href="https://updraftplus.com/translate/">https://updraftplus.com/translate/</a>. (Or if you're an expert WordPress translator already, then just pick out the .pot file from the wp-content/plugins/updraftplus/languages/ directory - if you scan for translatable strings manually, then you need to get these functions: _x(), __(), _e(), _ex(), log_e()).
Many thanks to the existing translators - listed at: <a href="https://updraftplus.com/translate/">https://updraftplus.com/translate/</a>
If you are in the market for other WordPress premium plugins (especially WooCommerce addons), then try <a href="https://www.simbahosting.co.uk/s3/shop/">our friends' shop, here</a>.
For other useful free plugins see <a href="https://profiles.wordpress.org/davidanderson/#content-plugins">our lead developer's profile, here</a>.
== Frequently Asked Questions ==
= What exactly does UpdraftPlus do? =
Our free version of UpdraftPlus is fully functional: it performs full, manual or scheduled backups of all your WordPress files, databases, plugins and themes, and restores them direct from your WordPress control panel.
* Backs up to multiple cloud storage options: Dropbox, Google Drive, Amazon S3 (or compatible, e.g. DigitalOcean Spaces), UpdraftPlus Vault, Rackspace Cloud, FTP, DreamObjects, Openstack Swift, and email.
* Can split your website into multiple archives
* Downloads backup archives directly from your WordPress dashboard
* Automatically resumes and retries failed uploads
UpdraftPlus is supported on all current versions of PHP, and is translated in over 16 languages.
Extra features, including full guaranteed support, are available for purchase via our website shop. The full package of add-ons is included in our advanced version of the plugin, UpdraftPlus Premium.
= What are the benefits of upgrading to UpdraftPlus Premium? =
The free version of UpdraftPlus works just fine, but if you need more features and functionality, including migration and multisite compatibility, you can purchase our Premium version.
Here are some of the key features of UpdraftPlus Premium:
* Easily duplicates or migrates websites (using the built-in Migrator)
* Backs up non WP files and databases to multiple remote destinations and to more cloud storage options (WebDAV, Microsoft OneDrive, Google Cloud, Microsoft Azure, Backblaze B2, SFTP/SCP, encrypted FTP)
* Restores and migrates backup sets from other backup plugins: BackWPUp, BackupWordPress, Simple Backup, WordPress Backup to Dropbox
* Encrypts sensitive databases; has lock access settings
* Offers sophisticated reporting and scheduling
* Backs up automatically before updates to themes and plugins and cores
* Includes 1 GB centralised remote storage (with UpdraftVault)
* Free dedicated expert support
* Multisite/multi-network compatible
To find out more, why not take a look at our comparison page. UpdraftPremium is available for purchase here.
= How do I install UpdraftPlus? =
Here are the installation guidelines from our <a href="https://www.youtube.com/watch?v=7ReY7Z19h2I">YouTube channel</a> or from <a href="https://updraftplus.com/download/">our website</a>.
= Where are your other FAQs, other than the few found here? =
Here: <a href="https://updraftplus.com/faqs/">https://updraftplus.com/faqs/</a> (by keeping them in one place, we make sure they don't fall out-of-date!).
= Is there any way to make managing multiple website backups easier? =
Yes! We’ve developed a brilliant new plugin that allows you to backup, update and manage all of your website remotely from one central location. It’s called UpdraftCentral, and it comes in 2 different forms:
* UpdraftCentral (free, self-hosted)
* UpdraftCentral Premium (fully-hosted by us and "ready-to-go"; self-hosted version also available)
= What if I have a problem / need support ? =
You can find us in <a href="https://wordpress.org/support/plugin/updraftplus">the WordPress support forum for this plugin</a>. However, before you get in touch with problems, please do ensure that you read through all the FAQs and that you’ve updated to the latest release of our plugin. If you’re a paying customer, you should <a href="https://updraftplus.com/support/">go to our support page, here.</a>
It helps greatly if you can include the backup log and as much other information as possible in your report, for example, the PHP version, your website, the error description, how you got to the page that caused it, any other relevant plugins you have installed, plus any other information that might be of use.
To find the backup log: there are links to download the logs on the UpdraftPlus settings page- or you may be emailed it. Failing that, FTP into the directory wp-content/updraft and look for it there.
If you know how, please send your PHP error logs- just the few lines that appear when you run a backup, often the file called error_log, possibly in your wp-admin directory which you can check via FTP. And if you’re a programmer that can debug and send a patch, that’s even better.
= UpdraftPlus runs out of time when it’s trying to backup, after I have left it for some time to give it a good chance. What can I do? =
This problem is probably caused by your account being starved of resources by your (cheap) web host provider. This is far from ideal; although UpdraftPlus supports resuming backup runs right from the beginning to avoid everything having to be done at once, it has its limits. The best thing is to choose a more reputable web host. Failing this, try going into the “Expert settings” and reducing the size at which zip files are split. UpdraftPlus is known to successfully backup websites that run into the multiple-gigabytes on web servers that are not resource-starved.
= If my site gets hacked and the backups don’t work, is there anything I can do? =
Unfortunately not; since this is free software, there’s no warranty and no guarantee. It’s up to you to verify that UpdraftPlus is creating your backups correctly.
The <a href="https://updraftplus.com/news/">UpdraftPlus backup blog</a> is the best place to learn in more detail about any important changes.
N.B. Paid versions of UpdraftPlus Backup / Restore have a version number which is 1 higher in the first digit, and has an extra component on the end, but the changelog below still applies. i.e. changes listed for 1.16.32.x of the free version correspond to changes made in 2.16.32.x of the paid version.
* SECURITY: Thanks to Marc-Alexandre Montpas of Automattic for this report. All versions of UpdraftPlus from March 2019 onwards have contained a vulnerability caused by a missing permissions-level check. If your site does not have non-admin users, or if your non-admin users are all trusted (and your site does not allow users to sign up themselves), then you are not vulnerable (but we always recommend updating to the latest version in any case). Fuller details will be released after a short time interval allowing users to update.
* FIX: Unexpected 'Backup History' array structure during the rescanning of the new backup sets that changed the type of the database associative keys from string to array format
* FIX: Failure in excluding and wiping out jobdata during backup and restore causing the same backup to repeat under certain circumstances
* REFACTOR: Upgrade AWS SDK from version 2.8 to 3
* TWEAK: Improve how log file and backup file attachments are handled through mail-related functions, so they don't get omitted by some 3rd party SMTP plugins
* TWEAK: Overcome PHP 8 'Only the first byte will be assigned to the string offset' warning when rescanning local folder and/or remote storage for new backup sets
* TWEAK: On Windows, when mysqldump.exe binary is in use for backing up database, it failed to exclude updraft_jobdata_* entries due to 'escapeshellarg' function that replaces % char to white space
* TWEAK: Switch to official jstree release now that our patch is included
* TWEAK: Update updater library in paid version to current release
* TWEAK: In the multisite add-on, store the last log message separately to perform better with binary logging together with large backups
* TWEAK: Add Google branding to the Google Drive authentication link
* TWEAK: Change complex formatting string to avoid translator errors resulting in PHP errors
* TWEAK: New versionning scheme; the second part of the version number was previously not used very meaningfully/systematically; together with the third, it now indicates the year of release and number within that year
* TWEAK: Adjust run-time performance check, removing one test that was no longer appropriate
* TWEAK: Adjust next resumption display message if there isn't one
* TWEAK: Cache the UpdraftVault quota to reduce the amount of network calls made during long backups
= 1.16.69 - 27/Dec/2021 =
* FIX: A bug that prevented a final resumption from attempting to split the zip to make progress
* FIX: Handle LOCK TABLES statements produced by some mysqldump versions properly in case of atomic restores
* SECURITY: Fix a non-persistent XSS error allowing an attacker to once run JavaScript in your web browser if you clicked on a link crafted personally for you whilst logged into your site (very similar to that fixed in 1.16.65/6). A packaging error meant that this was not properly fixed in the 1.16.67-68 releases.
* TWEAK: Search and replace ABSPATH if it's changed, non-trivial and stored in the DB by a bad plugin/theme
* TWEAK: Make whole label for "UpdraftPlus temporary clone user login settings" clickable
* TWEAK: Change wording for an advanced tool for clarity
* TWEAK: Include UD in user agent for S3 calls when using the AWS SDKs
* TWEAK: Make sure WP_Error is passed up during specific plugin update failure case
= 1.16.66 - 29/Nov/2021 =
* SECURITY: The fix made in 1.16.65 was faulty; this release corrects it.
= 1.16.65 - 25/Nov/2021 =
* SECURITY: Fix a non-persistent XSS error allowing an attacker to once run JavaScript in your web browser if you clicked on a link crafted personally for your site whilst logged into it. Discovered by Krzysztof Zając.
* TWEAK: Premium - add review link at bottom of admin
= 1.16.64 - 24/Nov/2021 =
* FIX: Do not create a zip manifest file if the zip is still potentially incomplete
* TWEAK: Improve Dropbox downloading performance by reducing round-trips, by eliminating unnecessary chunking
* TWEAK: Update certificate store to current list
* TWEAK: Increase precision of previous check-in record in log
= 1.16.63 - 25/Oct/2021 =
* FIX: Use correct zip file name when creating manifest
* TWEAK: Tweak the response data of UpdraftCentral's plugin and theme handlers to add additional error information
* TWEAK: Moved the raw backup history command so it can be accessed via UpdraftCentral
* TWEAK: Optimise away unnecessary file open/read/close cycle on null gzip files when writing the final database dump (should help on enormous sites with thousands of tables)
* TWEAK: Cleanup .list.tmp files when a local backup completes
* TWEAK: Refactor WebDAV addon code for future improvements
= 1.16.62 - 30/Sep/2021 =
* FIX: Fix UpdraftCentral error when installing plugin or theme on a slow connection
* TWEAK: Support wildcard (asterisk char) exclusions not just for the first/top-level directory but also for the 2nd level directories and below
* TWEAK: Fix deprecation warning on UpdraftCentral's comment settings
* TWEAK: Algorithm improvement with small tables with individually large rows not triggering the existing over-sized rows algorithm, to reduce fetch size quicker
* TWEAK: Implement the newly abstracted host plugin usage/process within the UpdraftCentral client code
* TWEAK: Improve backtrace logging
* TWEAK: Add admin and log warning messages regarding the planned shutdown of Microsoft Azure and OneDrive Germany
* TWEAK: Output UpdraftVault quota recount link if needed
* TWEAK: Introduce constant: UPDRAFTPLUS_LOG_BACKUP_SELECTS: Defining this to true will cause the SQL SELECT commands used when fetching data for a database table backup to be logged in the UpdraftPlus backup log
* TWEAK: Don't change SQL modes if a null value is returned
* TWEAK: Existing backups paging logic to avoid a confusing rescan user experience
* TWEAK: Refactor the search and replace engine
= 1.16.61 - 28/Aug/2021 =
* FIX: If MySQL performance was very fast on large tables, and if fallback fetch mode was being used (which should not occur on any WordPress core table, but can be triggered on recent Oracle MySQL 8.0 versions), then when increasing rows fetched on large tables, some rows could be unintentionally skipped.
* TWEAK: Oracle MySQL 8.0 from somewhere after 8.0.17 has removed the display width from the response to SHOW CREATE TABLE, resulting in failure (prior to this tweak) to detect a primary key type that can be used with faster fetching
* TWEAK: Use 'wp_mail_failed' action hook to improve logging of email delivery failures caused by a PHPMailer exception
* TWEAK: Add additional log information to themes and plugins modules
= 1.16.60 - 23/Aug/2021 =
* FIX: An issue that prevented the more files restore UI appearing if it was part of an incremental backup
* FIX: Add an extra check to prevent incremental backups from being run after a migration, if incremental backups are not enabled.
* TWEAK: Add method to check whether an image editor is available for UpdraftCentral's image media editing feature.
* TWEAK: In the reporting add-on accept URLs, if the address is a URL then instead of emailing it, POST it to that URL using the format used by Slack
* TWEAK: Add a link to the create clone UI to explain the various clone package sizes
* TWEAK: Record ABSPATH in the summary
* TWEAK: Prevent a couple of unwanted logging notices on PHP 8
* TWEAK: Catch and deal with various WebDAV exceptions
* TWEAK: Create a zip file manifest and read from it if available
= 1.16.59 - 16/Jul/2021 =
* FEATURE: (Paid versions) New WP-CLI command (connect) to connect plugin with the user's associated account/licence on updraftplus.com
* FIX: Each time the 'Upload Backup' dialog is opened, '(already uploaded)' text is appended one more time for the same remote storage resulting in it being nearly impossible to have the two buttons shown at the bottom
* TWEAK: Enhanced over-sized row-detection to include any table with a primary key and a LONGTEXT
* TWEAK: Log file now includes max packet size
* TWEAK: Properly handle port numbers included in DB_HOST when using mysqldump
* TWEAK: Handle UNIX socket paths included in DB_HOST when using mysqldump
* TWEAK: Increase default mysqldump maximum packet size
* TWEAK: Change WebDAV request library to HTTP_Request2
* TWEAK: Add custom category sorting on post module using uasort due to deprecation warning emitted on UpdraftCentral
* TWEAK: Added an icon within the top-right of the log widget allowing user to toggle that part between its current size and full-screen of the restoration log section
* TWEAK: Prevent an error in the phpinfo advanced tool when handling non-string constants
* TWEAK: Escape remote storage IDs in output templates
* TWEAK: Suppress unwanted error logging related to Gravity Forms
* TWEAK: Clear Elementor cache at the end of restoration process (if possible) giving an opportunity for Elementor to regenerate CSS files on the next page load request
* TWEAK: Clear Avada/Fusion-related CSS cache at the end of restoration process (if relevant)
* TWEAK: Catch and recover from errors and exceptions when clearing third-party caches
* TWEAK: Prevent a PHP logging notice when an SCP server is scanned for files
* TWEAK: Remove unused CloudFront methods from S3 library
* TWEAK: Added missing anonymisation.png graphic and detail of Anonymisation addon in the addons list table
* TWEAK: Added Update URI header field to avoid accidentally being overwritten with an update of a plugin of a similar name from the WordPress.org Plugin Directory.
* TWEAK: Improvements in finding a working mysqldump binary during a backup operation
* TWEAK: Start on larger chunk sizes when fetching *meta table contents, and scale up chunk sizes on all tables dynamically (less SQL queries; but testing shows it makes little difference to overall speed)
* TWEAK: Adjust Google Drive to retry once after a UDP_Google_IO_Exception, as was done in Google Cloud - intended to help with intermittently buggy Curl versions
* TWEAK: Show a notice when attempting to download a backup from email remote storage explaining nothing can be downloaded
* TWEAK: Update shop links and upgrade prompts
= 1.16.58 - 27/May/2021 =
* FIX: UpdraftVault storage settings saving issue on multisite
* FIX: Translation undefined index issue while running updates on UpdraftCentral
* FIX: Do not retain SFTP/SCP connection object between upload and prune stages, fixing a multi-instance bug that could cause deleting of obsolete archives to be skipped when backing up the same backup to multiple SCP servers
* TWEAK: When a link points to an unreadable file, include information in the log about the original reference
* TWEAK: Do not compress and recompress intermediate table files when stitching together the final database dump (increases speed and reduces resource usage)
= 1.16.57 - 08/May/2021 =
* FIX: Backblaze infinite loop when listing on buckets with huge numbers of objects
* TWEAK: Minor improvements to the organisation of the S3-provider classes (abstract per-backend logic more cleanly)
* TWEAK: Add --no-tablespaces switch to mysqldump invocation (required on MySQL 8.0+)
= 1.16.56 - 29/Apr/2021 =
* FIX: Revert changing of Amazon S3 authentication error handling in 1.16.55, which broke support of S3-compatible providers
* TWEAK: Remove some unnnecessary methods from the UpdraftPlus_S3 class
= 1.16.55 - 28/Apr/2021 =
* FIX: Wrong prefix being used on non WP tables during an atomic restore
* FIX: Issue that prevented generic (non-UpdraftPlus) SQL databases being restored
* TWEAK: JSTree file selector: list folders first, and list entities in alphabetical order
* TWEAK: Increase efficiency when listing Backblaze files during multi-delete operation
* TWEAK: Integrate UpdraftVault storage with the scheduled destination backups feature
* TWEAK: Added bucket access style field to S3-Compatible (Generic) to allow user to choose preferred access style (Path or Virtual-host)
* TWEAK: Improve handling of Amazon S3 authentication error messages to avoid misunderstanding concerning "wrong bucket region" that occurs after trying further methods
* TWEAK: Make modal dialogs resizable
* TWEAK: During the Database scan if the amount of tables found exceeds the PHP max input vars limit then truncate the list, to prevent restore options being lost
* TWEAK: Update seasonal notices
* TWEAK: Track the amount of restore options being sent and warn the user if this exceeds the PHP max_input_vars limit
= 1.16.54 - 05/Apr/2021 =
* FIX: Undetected build system error on free version omitted jstree library
* TWEAK: Reduce plugin size by removing 9 languages that are now fully available from the wordpress.org on-demand system
= 1.16.53 - 03/Apr/2021 =
* FIX: Incorrect final table name being used during an atomic restore when restoring using a different table prefix
* FIX: Fix variable re-use issue in Backblaze multi-delete code which halted deletion
* TWEAK: Prevent unnecessary logging when testing data for serialization on PHP 8.0 during migration
* TWEAK: Update jsTree library to version 3.3.12-rc0 to work around deprecated jQuery functions
* TWEAK: Add an extra check for whether it looks reasonable to reduce the resumption time, increasing efficiency
* TWEAK: On the posts table, detect over-sized rows in advance, and fetch them one at a time.
= 1.16.51 - 01/Apr/2021 =
* FIX: Backup before updating dialog was not working on the inline informational pop-up on the Plugins page
* TWEAK: Refactor how translatable texts are being handled and displayed within the UpdraftCentral client code
* TWEAK: Fix parameter passing for UpdraftCentral multiplexed request
* TWEAK: Exclude/skip very large files from the backup operation if the first and second attempt at backing them up didn't succeed
* TWEAK: Backblaze multi-deletion code did not properly handle files that were already deleted (could abort deletion of others)
* TWEAK: Replace the table prefix in the constraint name if it is found
* TWEAK: Don't perform an atomic restore on tables with constraints
* TWEAK: Add atomic restore support for non-WordPress tables
= 1.16.50 - 16/Mar/2021 =
* FIX: An issue with refreshing Dropbox access tokens
* TWEAK: Reduce and log memory usage in Google upload methods
* TWEAK: Catch Dropbox HTTP 401 errors and refresh the access token
= 1.16.49 - 10/Mar/2021 =
* FIX: Don't perform an atomic restore for non-WP-prefix tables backed up (Premium feature) - fixes a bug that resulted in the final table being dropped
* TWEAK: Dates/times shown in the "next scheduled backup(s)" are now translated into the user's locale
= 1.16.48 - 09/Mar/2021 =
* FEATURE: If needed database permissions are available then perform an atomic restore to improve chances of successfully restoring the database
* FEATURE: Added the ability to manually complete authentication with Google Drive (Avoids issues where security modules/plugins break the authentication flow)
* FEATURE: Added the ability to manually complete authentication with OneDrive (Avoids issues where security modules/plugins break the authentication flow)
* FEATURE: Google Drive and Google Cloud now allow boosting chunk size for faster transfers
* FIX: Files/Directories Exclusion not saving correctly when adding numeric directory/file names into the exclusion list
* FIX: Different PHP versions generate different suffixes length in the temporary ZIP filename resulting in a chance of overlapping runs
* FIX: an issue with mysqldump password character escaping
* TWEAK: Avoid unnecessary database writes caused by redundant jobdata updating during backup of files
* TWEAK: Add "anywhere in their names" syntax option to the exclusion UI
* TWEAK: Bump the requirement for the S3 enhanced module, and for using the official AWS SDK, up to PHP 5.5 (in preparation for updating the SDK version later)
* TWEAK: Fix a bug of report emails for incremental backups displaying incorrectly in many email apps
* TWEAK: Update Select2 library to version 4.1.0-rc.0 to work around deprecated jQuery isFunction
* TWEAK: Update jQuery-serializeJSON library to version 3.2.0 to work around deprecated jQuery isArray
* TWEAK: Handle hosts that have disabled some of the PHP functions thus causing a fatal error on PHP 8
* TWEAK: Correct under-calculation of used memory in verify_free_memory()
* TWEAK: Fix (inconsequential to this point) double-use of identifier for SQL statement type
* TWEAK: Remove some compatibility code in Dropbox downloading pertaining to a folder selection bug eliminated ~8 years ago.
* TWEAK: Remove unneeded sub-site tables when performing a restoration/migration (Multisite)
* TWEAK: Improve the exclusion UI by adding new "wildcards" option thus allowing the user to add a set of patterns for excluding files/directories
* TWEAK: Integration of the new files that were previously added for abstracting UpdraftCentral's client code
* TWEAK: Excluded items (Files or Folders) that are not readable should not trigger a warning about being unreadable
* TWEAK: Fix some RTL CSS issues
* TWEAK: OneDrive 4xx error reporting
* TWEAK: Update the Dropbox SDK to use refresh tokens (long lived token support ends September 2021)
* TWEAK: implement a multi-delete capabiltiy when deleting from Backblaze
* TWEAK: On UpdraftClone display the image ID in the advanced tools tab for easier debugging
* TWEAK: Make it more clear in the restore log that we are starting an AJAX restore
* TWEAK: The download backup HTML so that there is only one download button per archive type
= 1.16.47 - 25/Jan/2021 =
* FEATURE: added the ability to anonymise personal data in database backups from the "Backup Now" dialog (Premium / add-on)
* FEATURE: Add page management module for UpdraftCentral
* FIX: 1.16.42 Introduced a regression (truncation) when listing files from Dropbox when there were multiple pages of results
* TWEAK: Force host-style bucket access when backing up via S3 generic to Alibabacloud
* TWEAK: Remove unneeded Google SDK files from our fork of the SDK taking the size from 6MB to 800KB
* TWEAK: Incorrect jQuery UI dialog extended filename
* TWEAK: Change some class names to improve compatibility with other plugins using the Google SDK and auto-loading their version unconditionally
* TWEAK: Update the delete file Dropbox API call to version 2
* TWEAK: Change the S3 test settings form names to match the saved setting names
* TWEAK: Check the Content-Type on the response from an S3-compatible provider slightly less strictly, improving compatibility with at least one otherwise-working implementation
* TWEAK: Update the Dropbox SDK to use scopes
* TWEAK: Handle hosts that have removed disk_free_space() (now that on PHP 8 disabling functions removes them)
= 1.16.46 - 05/Jan/2021 =
* FIX: Prevent some deprecation-related errors when backing up to some remote storage locations in PHP 8
* FIX: Adding new remote storage instance (Premium) doesn't bring up the UI
* TWEAK: Fix some modal dialog alignment/resizing issues
= 1.16.45 - 04/Jan/2021 =
* FIX: Prevent some fatal errors due to language behaviour changes when running under PHP 8
* TWEAK: Replace deprecated calls to jQuery fn.focus(), fn.ready(), fn.submit(), fn.click() and fn.blur() methods in internal libraries
* TWEAK: Replace deprecated calls to jQuery (:first) and (:eq) pseudo-classes in internal libraries
* TWEAK: Prevent several PHP deprecation log notices on PHP 8
* TWEAK: Rename some further classes in our fork of the Google SDK to prevent conflicts
* TWEAK: When running under cron, do not combine schedules when there are no schedules
* TWEAK: Revert a jQuery change in 1.16.44 which made notices on the 'updates' page appear multiple times.
= 1.16.43 - 17/Dec/2020 =
* TWEAK: Replace deprecated calls to jQuery.trim(), jQuery.fn.change(), jQuery.fn.bind(), jQuery.fn.unbind(), jQuery.fn.keyup(), jQuery.fn.removeAttr() and `jQuery.fn.removeProp() in internal libraries
* TWEAK: Reduce excessive vertical margin above the header within Autobackup dialog box
* TWEAK: Improve user experience in the case of some rare UpdraftVault conditions
* TWEAK: Fix the exclude fields, which were unable to switch their mode from read-only to edit mode
* TWEAK: Added new files needed for abstracting UpdraftCentral's client code
* TWEAK: Update the review notice
* TWEAK: When attempting to delete a Backblaze file and discovering it does not exist, do not log that as an error (presumably already deleted)
* TWEAK: Fetch history log data in the popup using AJAX, instead of using embedded data attributes.
* TWEAK: Be less quick to switch to PclZip when BinZip has not completed the job
= 1.16.42 - 10/Dec/2020 =
* FEATURE: Added the ability to manually complete authentication with Dropbox (Avoids issues where security modules/plugins break the authentication flow)
* TWEAK: Replace BlockUI's deprecated jQuery functions and/or shorthand events with the appropriate method accordingly
* TWEAK: Replace /2/files/search Dropbox API calls with /2/files/search_v2
* TWEAK: Replace Labelauty's deprecated jQuery functions and/or shorthand events with the appropriate method accordingly
* TWEAK: Fix broken multiple range selection's highlighters due to the absence of jquery-migrate in the WordPress core on version 5.5
* TWEAK: Add the latest jQuery UI CSS framework for compatibility with WordPress 5.6 and all ongoing versions of WordPress
* TWEAK: Add support for PHP 8.0 in UpdraftClone
* TWEAK: Prevent a couple of PHP coding notices on PHP 8.0
* TWEAK: Tweak in the backing up of tables to reduce PHP memory use when working with very long row contents
* TWEAK: Prevent a PHP warning when starting a backup
* TWEAK: Fix a UI issue in the "send backup to remote site" options
= 1.16.41 - 27/Nov/2020 =
* TWEAK: Don't repeat sending the 'upload_complete' command to a remotesend destination after it succeeded the first time
* TWEAK: Update the udrpc library
* TWEAK: In UpdraftClone, delay the temporary_clone_ready_for_restore signal until the browser connection is closed (preventing a loss of response)
= 1.16.40 - 25/Nov/2020 =
* TWEAK: Cycle Dropbox API client ID (old one has been cycled and no longer works)
= 1.16.37 - 23/Nov/2020 =
* FIX: Scheduled backups to remote storage not being correctly sent in 1.16.35/36 in the absence of the "More Storage" add-on
* TWEAK: Wording tweak to clarify the effect of the conditional logic settings
* TWEAK: Add a warning to the restore page to inform the user if JavaScript is broken and as a result the restore won't start
* TWEAK: Replace intval() with casting to (int)
* TWEAK: If the first fetch from a table failed, then the algorithm to fetch fewer rows failed to reduce the fetch size more than once
= 1.16.36 - 20/Nov/2020 =
* TWEAK: During a restore or migration, detect if the backup was affected by the key issue fixed in 1.16.35, and automatically unselect by default such tables from the list of those to be restored. On a migration advise the user to take a fresh backup on the source site with a current version.
= 1.16.35 - 19/Nov/2020 =
* FEATURE: Backup destinations with conditional logic rules for scheduled backups (Premium)
* FIX: A regression in 1.16.30 meant that the term_relationships table could have rows missing in the backup if mysqldump was not present/used; this meant that items with multiple terms were only having one relationship backed up (e.g. multiple tags being assigned to one post)
* TWEAK: Adding remote block assets support when editing post from UpdraftCentral
* TWEAK: Rename UpdraftCentral's main and listener classes
* TWEAK: Improve error message when encrypted key given by user for SFTP/SCP remote storage method
* TWEAK: Enhance the algorithm when dumping large tables via PHP, by also consulting the size of the current uncompressed data and passed time and resumption state
* TWEAK: When there are no backups in existence, display some help text explaining how to upload one for restoration
* TWEAK: Prevent composer 2 run-time platform checks
* TWEAK: Update bundled cacert.pem file
* TWEAK: When fetching less rows due to previous failures, make this persist across resumptions when on the same table
* TWEAK: Raise the default for UPDRAFTPLUS_MAXBATCHFILES
* TWEAK: Improve handling of the situation when the source database has no table prefix (which is officially unsupported by WordPress, but people have them)
* TWEAK: When fetching the site name from the database, process it via wp_specialchars_decode() to remove HTML encodings that WP applied before storage
* TWEAK: Replace uses of php_uname() function with PHP_OS constant when the server where PHP is running on disables the function for security reasons
* TWEAK: When the definition of a VIEW cannot be fetched, report this nicely, do not let it be flagged as a fatal error, and log it in the backup file and log
* TWEAK: Integrate UpdraftPlus and WordPress 5.5 core's automatic update settings
* TWEAK: When a backup resumed, the last successful resumption was incorrectly set as the last successful resumption when an 'alive' event was recorded, rather than a 'useful' one; this deferred some mitigations when there was insufficient progress
* TWEAK: Add another tweak to paid versions' update checking time algorithm
* TWEAK: Add "Select all" and "Deselect all" link texts for bulk selecting/deselecting tables from the database table list on the manual backup dialog
* TWEAK: Ensure all code paths use internal ud_parse_json function for decoding JSON in JavaScript
* TWEAK: When using UpdraftVault, only cache results of a vault_getconfig call conditionally (retry on potentially transient errors)
* TWEAK: Prevent a PHP coding notice if running an UpdraftVault backup on the CLI
* TWEAK: Reduce the on-disk logging of entity base directories containing vast numbers of entries
* TWEAK: When we first save the backup schedule set the scheduled time randomly between 9PM and 7AM
* TWEAK: During a remote storage rescan correctly update the backup file sizes to prevent incorrect 'may have changed' warnings
= 1.16.34 - 30/Oct/2020 =