* TWEAK: On sites with enormous numbers of tables (e.g. very large multisites), counting the already-backed-up tables when resuming took unnecessarily long since 1.16.30
* TWEAK: Update jQuery document ready style to the one not deprecated in jQuery 3.0
* TWEAK: While using the file tree browser return an error if we are unable to open a directory
= 1.16.33 - 20/Oct/2020 =
* FIX: Fatal error when doing a backup with no storage in the short-lived 1.16.32 (free version)
* TWEAK: Cookie policy changes in the Chrome family of browsers broke the embedded checkout; hence, this is now disabled (goes directly to updraftplus.com instead).
* TWEAK: Exclude All In One WP Migration-related archive files when backing up plugins and/or others from the UpdraftPlus backup process
* TWEAK: Add downloadable backup links in the Backup Report email (Reporting Addon)
* TWEAK: Rename some classes in our fork of the Google SDK to prevent conflicts
* TWEAK: Improve automatic backups output when 'UPDRAFTPLUS_NOAUTOBACKUPS' constant is defined.
* TWEAK: Remove the now-redundant concept of inner loops from the database table backup routine
= 1.16.31 - 20/Oct/2020 =
* FIX: A regression in 1.16.30 meant that tables with integer primary keys which used signed integers omitted the first row of the table from the backups. This is not common (e.g. it does not affect any core WP tables; most plugins adding tables follow WP core in using unsigned integers for primary keys).
= 1.16.30 - 15/Oct/2020 =
* PERFORMANCE: Where a table has a numerical primary key, extract its data using that index. This results in a substantial performance increase when fetching large tables using PHP. (The filter updraftplus_can_use_primary_key_default can be used to de-activate this behaviour).
* FIX: Remove incorrect decodeURIComponent() parsing when importing settings, which could prevent import of settings containing some special characters
* FIX: An issue where database tables that were not selected to be backed up in a "Backup Now" backup would get added to the backup during a resumption (i.e. if it did not finish in a single run)
* TWEAK: Catch errors from Google Cloud when the bucket is not found
* TWEAK: Fix undefined variables instead of expected values in message prior to settings import
* TWEAK: Strip the redundant WHERE for the --where parameter to mysqldump (which modern versions strip out, but a version was found that didn't)
* TWEAK: Handle hosts that have disabled the session_id() function
* TWEAK: Provide SQL mode information in the 'Site Information' section under the 'Advanced Tools' tab and in the database backup's header
* TWEAK: Show a notification of UpdraftPlus plugin updates even if the associated user account is not connected to the UpdraftPlus website
* TWEAK: Add mechanism to detect what hosting provider is being used and use it to make UpdraftPlus comply with Kinsta's backup limit policies (thus removing it from the list of disallowed plugins)
* TWEAK: When booting a clone if it's claimed from the clone queue then update the token being used
* TWEAK: Tweaked downwards the minimum time in the future for rescheduling a resumption
= 1.16.29 - 08/Sep/2020 =
* FIX: Added Africa (Cape Town), Asia Pacific (Hong Kong) & Asia Pacific (Osaka-Local) to AWS
* FIX: Fix bug where incorrect function call prevented backup file downloads from the WP dashboard
* TWEAK: Removed LinkedIn and Google+ links
* TWEAK: Choosing email remote storage method in the free version will automatically tick the "Email" field setting, making the UI meaning clearer
* TWEAK: Work around the invalid file paths if found in some key-value pairs in the PHP user.ini file or Apache .htaccess file when restoring
= 1.16.28 - 02/Sep/2020 =
* FEATURE: Support backing up and restoring MySQL/MariaDB routines (stored procedures and functions)
* FEATURE: Added the ability to search and replace the database via WP-CLI
* FIX: Bit fields in a table don't necessarily get backed up correctly due to the difference in the output of mysql_query() and mysqli_query() for the bit-field type
* FIX: Allow single multisite sub-sites to be restored when there is a http/https mismatch between the site and database backup
* TWEAK: Update plugin updates checker dependency (in paid versions) to the 4.10 series, improving compatibility with WP 5.5+'s updates management
* TWEAK: Suppress message about how to upgrade an already-installed plugin when on WP 5.5+ (where it is no longer relevant)
* TWEAK: Internal refactoring to allow more flexibility when creating database backups
* TWEAK: Force the turning off of ANSI_QUOTES in the active SQL mode when creating a backup, for better compatibility
* TWEAK: Add the ability to configure the 'max_allowed_packet' option in the binary mysqldump command via the 'UPDRAFTPLUS_MYSQLDUMP_MAX_ALLOWED_PACKET' constant
* TWEAK: The Google Drive options exist condition to prevent a false positive saved settings error
* TWEAK: Improve the UpdraftPlus get_outgoing_ip_address method in finding user webserver's IPv6 address
* TWEAK: Removed MetaSlider notice in the notices collection
= 1.16.27 - 23/Jun/2020 =
* FIX: In the free version configured remote storage locations were not selected by default in the backup now modal
* FIX: On newer versions of Curl uploads to Dropbox can fail with a bad request, we now retry with a better request
* FEATURE: Improve support for enormous tables when outputing via PHP via batching of the dump
* TWEAK: Add site_url to load_plugins and load_themes requests
* TWEAK: Catch PHP fatal errors when executing UpdraftCentral commands
* TWEAK: Tweak the version that gets added to CSS and JS filenames to work with addons
* TWEAK: Prevent an internal UpdraftVault message displaying in the UI when Vault is not in use
* TWEAK: Stop displaying the 'licence expires soon' warning if an active subscription is detected on the account
* TWEAK: Catch Google_IO_Exception during upload to Google Cloud to prevent further unwanted errors
* TWEAK: Date/time indicator in the UI now gets updated via the WP heartbeat API
* TWEAK: On large databases the database file scan can time-out; an option has been added to allow the restore operation to include tables that are missing from the list
* TWEAK: Use the administration email address (if possible) as the email sender address when sending a backup report email
* TWEAK: Catch new OneDrive access token has expired message during a backup
* TWEAK: Cleanup failed OneDrive uploads to prevent repeated failures that will never succeed
* TWEAK: Add a warning alert when the remote scan button is pressed to explain this feature to prevent support requests
* TWEAK: On large databases the amount of database tables can exceed the php_max_input_vars value; an option has been added to allow the restore operation to include tables that are missing from the list
* NOTE: The free version 1.16.27 was released as 1.16.26; i.e. if confused about 1.16.26 went, then the answer is that they are the same thing.
= 1.16.25 - 23/May/2020 =
* FIX: Dropbox since 1.16.24 was only deleting one backup files archive out of the set. i.e. Excess archives remained on Dropbox. These have to be deleted manually.
* TWEAK: Add version to CSS and JS within filenames to prevent old versions being served after update on sites which have customisations to remove the query string
* FEATURE: Added the ability to create UpdraftCentral keys from WP-CLI
= 1.16.24 - 15/May/2020 =
* FEATURE: Support migration between different "generate columns" syntaxes of MySQL and MariaDB
* FEATURE: Added the ability to choose the remote storage locations you want to send your backup to in the "Backup Now" modal
* FIX: If non-WordPress tables are selected in the advanced 'Backup Now' options, then back them up (even if the saved setting to back them up is off). i.e. "Backup Now" over-ride options should have been taking priority.
* FIX: Failure to restore database 'view' in some rare circumstances due to the nonexistent DEFINER account and lack of privileges
* TWEAK: Handle binary data during backup
* TWEAK: Add strack_st to the lists of large logging tables and tables not requiring search/replace
* TWEAK: Make search and replace case insensitive when operating on URLs
* TWEAK: The incremental backup notice logic
* TWEAK: Update bundled updater class (YahnisElsts/plugin-update-checker) (paid versions) to version 4.9
* TWEAK: Add another tweak to paid versions' update checking time algorithm
* TWEAK: Add the options_exist() method to backup modules that did not have it
* TWEAK: During manual backup uploads, check if the last 4 bytes are string "null" (caused by an error in uploading to Dropbox) and if so remove them. Prevents an unnecessary message about unexpected data.
* TWEAK: Show the backup label (if specified) in the UI backup progress indicator
* TWEAK: Added the facility to clear the list of existing migration sites
* TWEAK: Create default instance labels
* TWEAK: Bring list of debugging plugins up to date
* TWEAK: Add support for the AWS Milan and Cape Town endpoints (and correct a couple of existing endpoints that had wrong references)
= 1.16.23 - 01/Apr/2020 =
* FEATURE: Post module handler for UpdraftCentral
* FEATURE: Added the ability to select which database tables you want to restore
* FIX: An apparent change in Dropbox API behaviour at a recent date was causing uploads to Dropbox to be corrupted in some circumstances in versions 1.16.21-22.
* TWEAK: The "Backup now" options were all unselected after trying to take a manual incremental backup with no possible entities for increments
* TWEAK: When importing a single site into a multisite remove UpdraftPlus options and cron to prevent unwanted backups
* TWEAK: Auto select clone package based on size of the selected backup
* TWEAK: Prevent PHP notice when logging a Google Drive account full condition
* TWEAK: Prevent a PHP notice when Azure is deleting files on PHP 7.4
* TWEAK: Prevent potential PHP notice if returned OneDrive quota is zero
* TWEAK: When restoring a single site that is part of a multisite only put that single site in maintenance mode not the entire network
* TWEAK: Remove filesize warning from the log if we successfully added the file to the zip to prevent user concern
* TWEAK: Add page_visit_history table to list of those with low-priority data and search/replace unnecessary
* TWEAK: Add a warning message when restoring/migrating from an older PHP version to a newer version
* TWEAK: Set 'NO_AUTO_VALUE_ON_ZERO' sql mode on restorations, for better compatibility with MySQL 8
* TWEAK: Add WordFence logging tables to list of optional tables
* TWEAK: If the Google Cloud revoke call fails try again once
* TWEAK: Catch file closed errors during uploads to Dropbox to prevent unwanted errors in the backup log and prevent user concern
* TWEAK: Get list of supported UpdraftClone regions from updraftplus.com
* TWEAK: Logging in backup modules will now correctly pass on arguments to main log function
* TWEAK: Change OneDrive 'account full, expected to fail' error message to a recoverable warning
* TWEAK: Detect non-homepage 404s and provide FAQ link after a restore
* TWEAK: Add paging to the existing backups table to prevent long loading times for sites with a large amount of backups
* TWEAK: Remove unwanted padding on some buttons
= 1.16.22 - 17/Feb/2020 =
* FIX: Fix a regression with some S3-compatible providers caused by a previous switch to virtual-hosted style bucket referencing
* TWEAK: Integrate input credentials from UpdraftCentral's zip install feature
* TWEAK: Add information to the log file about what type of addresses (sub-domain/sub-folder) the multisite is configured to use
* TWEAK: Fix potential race condition affecting settings page notifications on very fast or very slow sites
* TWEAK: Some PHP notices that could be output during a restore
* TWEAK: Automatically resume a timed-out restore operation during the uploads stage
* TWEAK: If the database connection dies during a restore operation, try to reopen it
* TWEAK: Adjust the UpdraftClone dashboard notice text
* TWEAK: If the Google Drive revoke call fails try again once
* TWEAK: The incremental backups label showed the incorrect time for different timezones
* TWEAK: Update the WP-Optimize notice
* TWEAK: Extend the auto resume restore to themes, others and more file backups
= 1.16.21 - 10/Dec/2019 =
* FIX: Correctly search and replace database views when importing on a site with a different table prefix
* FIX: A bug that prevented the restore modal opening on the migrate/clone tab
* FIX: Dropbox cURL issues on connection are resolved for PHP 7.4
* TWEAK: Change the way the "Disabled Cron" warning appears on the administrative settings page
* TWEAK: Improvements to error messages return for UpdraftCentral's plugin and theme installation process
* TWEAK: Updates to credentials validation for UpdraftCentral's plugin and theme modules
* TWEAK: Add media request handler for UpdraftCentral media module
* TWEAK: On paid versions, again possibly adjust the daily update check time to further favour overnight hours
* TWEAK: Mask classified information in WebDav URL settings
* TWEAK: Add multiple range selection on certain backup using ctrl and shift buttons
* TWEAK: Hide incremental backup link if the backup directory is not writable
* TWEAK: Make Updraft_Restorer_Skin compatible with WP 5.3
* TWEAK: Added Linode object storage link to list of supported S3 providers and updated existing links
* TWEAK: Ensure some variables are defined to prevent unwanted warnings
= 1.16.20 - 04/Nov/2019 =
* FEATURE: Add support for PHP 7.4 in UpdraftClone
* FEATURE: Added the ability to restore "more files" backups
* FEATURE: Add OneDrive Germany compatibility
* FIX: Failure to send existing translation version with update checks (on paid versions) resulted in redundant translation updates
* FIX: Deal with a BackBlaze "first chunk too small" error correctly when doing chunked uploading
* TWEAK: Block any updates from occuring during a restore
* TWEAK: Force the predecessor Amazon S3 SDK to use virtual-hosted style bucket identification instead of path style
* TWEAK: Refactor the remote storage logging code in Addon base v2
* TWEAK: Removed the Keyy notice (Keyy now has a new owner)
* TWEAK: Add WP 5.3 support in UpdraftClone
* TWEAK: On paid versions, possibly adjust the daily update check time to favour overnight hours
* TWEAK: Get UpdraftClone supported WordPress versions during authentication
* TWEAK: Added the ability to use backups stored in remote storage for UpdraftClone
* TWEAK: Small PHP 7.4 deprecation tweaks in the Google and legacy AWS SDKs
* FIX: Prevent trying to download files that have no remote storage and don't exist locally
= 1.16.19 - 04/Oct/2019 =
* FIX: GoogleDrive and WebDAV remote storage methods now correctly report if remote files failed to be deleted
* FIX: Issue in cloudfiles-enhanced addon that breaks translations when the user language is different from the site language
* FIX: Regression: add missing restore options
* TWEAK: Improve restoration modal on mobile devices
* TWEAK: Support the new Amazon S3 Middle East (Bahrain) region when removing a backup set
* TWEAK: Improvements to the dashboard to allow for better screen-reader access
* TWEAK: Ensure phpseclib Crypt_Blowfish is loaded over PEAR's version
* TWEAK: Add time zone and expiries in to the UpdraftClone scheduled removal time
* TWEAK: Add a multi-delete capability for OneDrive to prevent PHP timeouts during deletes
= 1.16.18 - 20/Sep/2019 =
* FIX: Select2 instance visiblility in restoration modal when selecting blog on multisite
* FIX: Remove unsupported WordPress versions (3.6 and older) from the UpdraftClone selection list
* FEATURE: Ability to resume interrupted database restores
* TWEAK: Add filesystem error data when FTP input validation fails in UpdraftCentral
* TWEAK: Enable appropriate SQL mode to ensure the database restoration compatibility
* TWEAK: Add a link to the Backblaze configuration guide
= 1.16.17 - 12/Sep/2019 =
* FEATURE: Added the ability to use UpdraftClone with sub-folder based multisites
* FEATURE: Catch duplicate entries in a corrupt DB upon restoration and handle/fix them automatically
* FIX: Some more complicated triggers (see in CiviCRM) that were not previously handled correctly are; and SQL backup format for triggers is now mutually compatible with mysqldump/mysql binaries
* FIX: Reset internal state upon beginning backup_resume(), in case WP cron called us multiple times in the same process
* FIX: Provide compatibility functions on WP < 3.7 for mbstring_binary_safe_encoding() and reset_mbstring_encoding()
* FIX: Correct the Azure China storage endpoint in options
* TWEAK: Re-designed restore process
* TWEAK: Prevent cosmetic error if WP_Filesystem call fails when deleting old folders
* TWEAK: Fix escaping that caused a problem in some translations with a dismissal notice
* TWEAK: Update bundled cacert.pem file
* TWEAK: Include a DROP command for any triggers about to be created in the backup
* TWEAK: The BackBlaze module (Premium feature) can now cope with BackBlaze losing uploaded chunks
* TWEAK: Cast file IDs in Backblaze to strings to prevent possible API error
* TWEAK: Do not attempt to perform search/replaces in tables of ARCHIVE type
* TWEAK: Introduce the constant UPDRAFTPLUS_SQLEXEC_MAXIMUM_ERRORS to aid debugging
* TWEAK: log message when checking which files need uploading on a incremental backup job
* TWEAK: Don't send external DB backups to UpdraftClone
* TWEAK: Reset the UpdraftClone UI if the clone is not created before it expires
* TWEAK: Automatically detect a stalled restore and offer a resumption on the restore page
* TWEAK: Remove some unused restore code
* TWEAK: Prevent a PHP deprecation log notice with WebDAV on PHP 7.3
* TWEAK: Catch exceptions and errors during recursive search/replace and recover from them
* TWEAK: CSS tweak to prevent other plugins from breaking the style of pop-up close buttons
* TWEAK: Ensure the error is logged on the final remote send complete call if it fails
* TWEAK: BackBlaze terminology updated to match their changes
* TWEAK: Update seasonal notices for next year
= 1.16.16 - 23/Jul/2019 =
* TWEAK: Adding support for installing plugin and theme through zip files in UpdraftCentral
* FEATURE: Added the ability to launch a blank WordPress clone
* FEATURE: Add --collate= parameter to WP-CLI (Premium) to allow substitution of locally unknown collations when restoring
* FIX: Switched to wp_insert_site() from insert_blog() and install_blog() method when importing single-site into a multisite network on WP 5.1+. Fixes 'Already Installed' error when importing on newer WP versions
* FIX: Issue where (rare) foreign key constraints aren't updated upon restore when table prefix changes
* FIX: Improve parsing of backed-up triggers when restoring preventing possible unnecessary errors
* FIX: If an upload to Google Drive starts to fail due to an OAuth token refresh error, the backup will re-bootstrap the Drive client and try again
* FIX: JSON-reparser to prevent unwanted RINFO data being output to screen
* FIX: Triggers were still included in a backup for tables that were excluded because of lack of WP prefix
* FIX: Resuming restores could resume at an unnecessarily early stage
* FIX: Issue with Dropbox account information call that could make it fail
* TWEAK: In cases where there were duplicate Google Drive folders (which is possible if there are multiple network communications failures when looking up the folder), these are now detected and merged automatically
* TWEAK: Add option to start 250GB Vault subscription as in-app purchase
* TWEAK: Regression: backup checksums were not being recorded in the backup log file
* TWEAK: Remove UpdraftClone when the backup is cancelled by the user
* TWEAK: Send the backup log during the creation of UpdraftClone for easier support when a clone fails to recieve the backup
* TWEAK: Detect OneDrive Graph token expiries and initiate swift resumption
* TWEAK: Reduce the permissions requested for the UpdraftPlus Google Drive app (this now means that backups manually uploaded to Google Drive can not be deleted through the UpdraftPlus UI)
= 1.16.15 - 31/May/2019 =
* FEATURE: Added the ability to use already existing local backups with UpdraftClone
* FIX: Prevent PHP fatal error (regression) when WP_Filesystem credentials were needed and wrong ones were supplied
* FIX: Issue where you could not delete old directories from the restore progress page
* FIX: Issue where restore would not run over AJAX if wrong credentials were entered when WordPress requested filesystem credentials
* FIX: Fix incorrect refusal to accept valid email addresses in the UpdraftCentral wizard
* TRANSLATION: The Italian translation is now complete and supplied from wordpress.org, so can be removed from the free plugin zip (saves 424KB disk space - if your mother tongue is not English and you want to improve UpdraftPlus, take a look at: https://translate.wordpress.org/projects/wp-plugins/updraftplus).
* TWEAK: Update UpdraftCentral theme module handler to support themes without a name header
* TWEAK: Prevent PHP log notice when fetching available theme updates via UpdraftCentral
* TWEAK: Add more scheduling options to the built-in list (you can still further add whatever other arbitrary options you like: https://updraftplus.com/faqs/how-can-i-add-any-new-scheduling-interval-to-updraftplus/)
* TWEAK: Abstract the code for handling maintenance mode to allow future improvements
* TWEAK: Fix a potential wrong file path in an error message
* TWEAK: If there is more than one Google Drive folder of the same name, now the selection is deterministic: the oldest one is always used
* TWEAK: Infer phpseclib class path from the class name, instead of hard-coding it
* TWEAK: Some lines that were meant to include HTML bold in the browser output had lost that effect
* TWEAK: Add what entity caused the automatic backup to the logfile
* TWEAK: Upon restoration, a couple of known plugin cache directories will be emptied to prevent serving up an intermediate page
* TWEAK: Fix a bug in the "fail on resume" error-trapping logic which could cause it to resume too many times
* TWEAK: Prevent a bogus error message being logged at the end of a successful direct site-to-site transfer
* TWEAK: Add backup size information when hovering at the backup data buttons (excluding database button)
* TWEAK: Allow the plugin to connect to account and activate Premium licence if no more UpdraftCentral Cloud licences remain and the user enables the 'Add this website to UpdraftCentral' option in the Premium/Extensions tab
* TWEAK: During a restore send structured data to the front end. This is preparing the way for future UX improvements.
= 1.16.14 - 30/Apr/2019 =
* TWEAK: Make UpdraftVault trial more discoverable
* TWEAK: Fix stray JavaScript in the short-lived version 1.16.13
* TWEAK: Add support to translation updates
* TWEAK: Add WP 5.2 support in UpdraftClone
* TWEAK: Prevent PHP notice in remotesend method
* TWEAK: Restorations are now started over AJAX instead of in-page. This is preparing the way for future UX improvements.
* TWEAK: Upgraded the 'site-to-site' remote sending code to use the more recent UDRPC message format
* TWEAK: Make the UpdraftClone suggestion sentences dismissible
* TWEAK: Improve JSON-reparser to cope with even more exotic junk from some setups with problems elsewhere in their stack
= 1.16.12 - 16/Apr/2019 =
* FIX: Regression which caused PclZip unzips to be very slow
* TWEAK: Add stream_meta to the list of log tables and tables not requiring search/replace
= 1.16.11 - 08/Apr/2019 =
* FIX: Issue which prevented the downloader UI being removed during a manual entity download (regression)
* FIX: Regression in 1.16.10 whereby restore resumptions did not correctly resume because the jobdata had not been loaded
* TWEAK: Update UpdraftCentral description and internationalize strings
* TWEAK: Handle HTTP/2 responses from Dropbox on some operations
* TWEAK: Add a timeout on Dropbox quota look-up operations during backup, in response to cases of faulty outgoing HTTP proxies
* TWEAK: The backup_finish() method should not have been private; could cause a harmless PHP abort when manually stopping a backup
* TWEAK: Wrong variable context could cause failure of SFTP progress recording
= 1.16.10 - 23/Mar/2019 =
* FEATURE: Added support for backing up and restoring SQL triggers
* FIX: Prevent the downloader UI being removed before it's complete in the case of multi-archive sets (regression)
* TWEAK: Refactor the restore code and use jobdata to save information about the restore rather than using $_POST data
* TWEAK: Automatically show the UpdraftClone admin UI for UpdraftClone developers for easier debugging
* TWEAK: Prevent a PHP notice with certain exclusion settings
* TWEAK: Add a mention of UpdraftClone in WP's PHP version notice and WooCommerce's "untested extensions" notice
* TWEAK: Add 5.1 to the built-in list of available UpdraftClone WP versions
* FIX: If requesting clone credentials that were not ready, the loop could rapidly repeat instead of waiting the intended time
* TWEAK: Some background updates checks (paid versions) that were intended to be suppressed, weren't being.
* FEATURE: Add support for bucket-specific application keys in Backblaze
* FEATURE: Added the ability to take incremental backups via UpdraftCentral
* FIX: Dropbox authorisation setting getting lost after saving UpdraftPlus settings in the free version
* FIX: Issue where an error wasn't thrown if you tried to restore a backup with no valid components
* TRANSLATION: Norwegian (Bokmål) and Polish translations are now complete and supplied from wordpress.org, so can be removed from the free plugin zip (saves 900KB disk space - if your mother tongue is not English and you want to improve UpdraftPlus, take a look at: https://translate.wordpress.org/projects/wp-plugins/updraftplus).
* TWEAK: Ride a polling status check on the regular heartbeat check, thereby reducing the need for stand-alone polls
* TWEAK: If FTP settings were removed and an attempt was made to download a backup, then a zero-sized file would be created and then an unclear error shown, instead of just showing a clear error.
* TWEAK: For premium users: Added the option to connect to UpdraftCentral Cloud at point of connecting a license to a site
* TWEAK: If on PHP 5.3 or later, then register our Google SPL auto-loader with the 'prepend' flag, so that we can avoid loading incompatible Google SDKs registered (but not yet used) by other components
* TWEAK: Clear settings visuals after wipe settings
* TWEAK: Improve UpdraftPlus news layout on dashboard
* TWEAK: Handle a case seen where the updates checker failed to load
* TWEAK: Prevent a possible PHP notice when requesting a rating
* TWEAK: Update to the current series (4.5) of yahnis-elsts/plugin-update-checker (paid versions)
* TWEAK: The "follow this link to refresh your (licensing) connection)" (paid versions) link was not functioning
* TWEAK: Alert the user in the UI if they have activated a storage destination without any settings
* TWEAK: Refactor the remote storage logging code in the S3, Email, Remote send, Backblaze, WebDAV, UpdraftVault, FTP, Google Cloud and Azure modules
* FEATURE: Ability to purchase UpdraftVault subscriptions, including a new 5GB 1 month trial, directly from the UpdraftVault settings
* TWEAK: If a directory is not found during a restore but the parent directory is then, where relevant, UpdraftPlus will automatically try to create the missing directory
* TWEAK: Use the correct nonce name when requesting filesystem credentials if needing the WP_Filesystem API to delete old directories
* TWEAK: Regression in 1.16.6 - certain types of final errors stopped being shown in the final report and had to be read from the log file
* TWEAK: Refactor the remote storage logging code in all remote storage modules
* TWEAK: Prevent the download entities UI becoming uglified from multiple button presses
* FEATURE: Added new S3 intelligent tiering class
* FEATURE: Ability for user to buy Premium without leaving the plugin's settings pages
* FEATURE: UpdraftPlus can now catch backups that don't complete because of errors that kill PHP and make sure a report is still sent about them
* FIX: If a very large UpdraftVault upload took more than an hour, then the token could expire without being refreshed (fix in version 1.16.0 was incomplete)
* PERFORMANCE: Modify a condition in the zip-batching algorithm so that greater acceleration in the zip-batching algorithm is allowed on setups allowing very long PHP run times on the initial (zero-eth) resumption
* PERFORMANCE: UpdraftClone now sends larger chunks over the network, leading to faster sending of data
* PERFORMANCE: Force UpdraftClone to use a 100MB split size for better performance (previously intended, but not always working)
* TWEAK: Upon restoration, WP's cache directory will be emptied (by default it is not included in backups, so in theory this is a no-op, but the occasional case has been seen where it got populated during the restore process)
* TWEAK: Add support for the new Europe (Stockholm) (eu-north-1) AWS region in Amazon S3
* TWEAK: Advise the user if they changed the plugin's slug (and so won't be able to get updates) (paid versions)
* TWEAK: Make use of wp_get_themes rather than relying solely to get_themes which is already deprecated
* TWEAK: Regression: When a user aborted a fatal error occurred before all clean-up actions were complete
* FEATURE: If a restoration is interrupted (e.g. PHP timeout), then the "Continue" feature can now resume not just at the most recent zip file, but within the zip file at the point it had reached (https://updraftplus.com/auto-resuming-interrupted-restores-part-2/)
* FEATURE: Added command in WP-CLI which gives a list of incremental backups restore points.
* FIX: Regression: When a Dropbox upload failed to complete, UpdraftPlus would log this but fail to retry
* FIX: Again update phpseclib to the latest version which should now fix the 'SSH2 Server Host Key Algorithm Mismatch' on all installs
* TWEAK: Correct a wrong variable reference in an error message
* TWEAK: Only add the JavaScript for the incremental schedule selection on the UD settings page
* TWEAK: Replace incidental use of ipinfo.io now that it requires a paid API key
* TWEAK: The print_delete_old_dirs_form method should have been public to allow painting if the user clicked through the previous message
* FIX: Regression: Properly mark backups picked up via "Rescan remote storage" as non-native (preventing unwelcome side-effects such as being pruned by another site)
* FIX: Correctly update the OneDrive refresh token to prevent expiry
* FIX: Again work around an issue with 'SSH2 Server Host Key Algorithm Mismatch' occurring with the current phpseclib release by temporarily reverting to an earlier one as it still does not work on all installs
* FIX: When restoring an incremental backup set via WP-CLI, the selected restore point was ignored
* FIX: If the remote storage settings were for multiple instances of a single backend-type (e.g. two Dropbox accounts), and if the entire backup and send operation completed in a single PHP process, then the local copy of the files would not be deleted
* TWEAK: Show the error message if mbstring.func_overload is turned on in php.ini while creating migration key
* TWEAK: Added Azure China endpoint
* TWEAK: Resolve "dashicons" CSS conflict
* TWEAK: Add 'blogmeta' to the list of core tables (in readiness for WP 5.1)
* TWEAK: Remove unnecessary deprecated (in PHP 7.3) parameter to define() in WebDAV HTTP library
* TWEAK: Prevent a potential PHP notice in UpdraftPlus Premium when installed without network access
* TWEAK: Enhance the updraftplus_exclude_file and updraftplus_exclude_directory filters to also pass the stored names
* TWEAK: Add a new constant UPDRAFTPLUS_ZIP_BATCH_CEILING that can tweak internals of the zip backup engine
* FIX: Prevent extraction regression (in 1.16.1) when using PclZip (N.B. php-zip is always preferred if installed) on zero-sized files
* FIX: Prevent the incremental backup cron from being incorrectly scheduled
* FIX: wp_doing_cron() was used when unzipping, but requires WP 4.8+ (regression in 1.16.1, which was never released on wordpress.org)
* TWEAK: Updated phpseclib to the latest version after the previous work around to fix the 'SSH2 Server Host Key Algorithm Mismatch' issue
* TWEAK: Check-in with the clone during the backup process to make sure it is not prematurely purged
* FIX: If a very large UpdraftVault upload took more than an hour, then the token could expire without being refreshed
* FIX: Version 2.16.0 could write invalid or incomplete JSON when creating the manifest file on an incremental backup under certain circumstances
* FIX: When restoring an incremental backup set via WP-CLI, the restore order could be wrong
* TWEAK: Accept and parse the invalid JSON when restoring an incremental archive created on 2.16.0
* TWEAK: When running an incremental backup, the backup report would report the time taken to run the backup wrongly
* TWEAK: Make the logging on the state of zip extraction more fine-grained (at least every 100MB, 1000 files or 15 seconds)
* TWEAK: Re-factoring of zip extraction code to allow for future improvements
* TWEAK: Re-factoring of the restore routines to share more code between different entry points, and allow future improvements
* TWEAK: Differentiate between failures to JSON-decode an incremental backup manifest file and other types of failures
* FEATURE: Added the abilty to create and restore Incremental Backups (Premium version)
* FIX: Work around an issue with 'SSH2 Server Host Key Algorithm Mismatch' occurring with the current phpseclib release by temporarily reverting to an earlier one
* TWEAK: Improve performance by aggregating separate SQL SELECT queries (previously one for each backup) when loading the settings page
* TWEAK: internal backup extradata parameter to prevent unwanted PHP notices
* TWEAK: Fork a method UpdraftPlus_Filesystem_Functions::unzip_file() to allow for future enhancements
* TWEAK: Periodic purging of obsolete job data that didn't get cleaned when expected was not happening on multisite
* TWEAK: Improve logging when the initial call to jobdata_set_multi fails
* TWEAK: Any stored backup/restore progress log files will now be deleted after 40 days. (Since they are attached to email reports, you can keep and retrieve them from those if needed). Over-ride this with the filter updraftplus_log_delete_age if desired.
* FIX: a method call on an incorrect class which caused a fatal error
* FEATURE: Added WordPress 5.0 support to UpdraftClone
* FEATURE: Added the ability to choose the UpdraftClone server location
* FEATURE: Cut a step from the activation procedure on paid versions, improving reliability on some installs that did not detect available updates
* TWEAK: The UpdraftClone video is inserted after clicking a link (prevent unwanted call to the video server)
* TWEAK: Replace a 'continue' with a 'break' to prevent a PHP notice on PHP 7.3
* TWEAK: (Paid versions) Simplify the constants involved in defining a custom/over-ride licensing server; and show in the 'Extensions' tab if an over-ride applies.
* TWEAK: (Paid versions) Remove a library versioning assumption in the processing of results from a licensing claim
* TWEAK: (Paid versions) A regression had caused the current UD install version to be sent in an updates check
* TWEAK: Re-factoring of scheduling methods into their own class
* TWEAK: Tweak the scheduling engine to separate the next resumption time from the maximum run time in the case of overlapping runs, in order to prevent unnecessary large gaps between resumptions in cases where the server allows very long run times
* TWEAK: Include the backup set ID in clone ready state file
* TWEAK: For Premium users with grand-fathered lifetime updates (i.e. purchased before August 2013), a regression had caused support entitlement expiries to no longer be notified
* TWEAK: For Premium users with who have downgraded from unlimited licences to another package, a licence expiry message could show when in fact the real situation was that they just needed to specifically allocate a licence to the site. The relevant message has been adjusted to improve this.
* TWEAK: Track "more files" incremental backup locations
* TWEAK: Don't show individual add-ons that have not been bought in the account add-ons page if the user has Premium.
* TWEAK: Include the raw updates check response information in the internal/advanced dump
* TWEAK: Added the UpdraftClone video
* TWEAK: Ability for user to buy Premium without leaving the plugin's settings pages
* FEATURE: UpdraftPlus now has an option to auto-update
* FEATURE: Azure for Government endpoint support (Premium)
* FIX: SSL verification settings were not allowing verification to be turned off for generic S3 storage
* FIX: In some situations in which a user had defined UTF8 as their character set but WordPress was using UTF8MB4, UpdraftPlus was not detecting this
* FIX: Prevent particular a SQL text pattern wrongly triggering detection of database features when it is within content
* TWEAK: Marked as supporting WordPress 5.0
* TWEAK: Automatically re-scan for presence of database backup after restoring it, to prevent confusion over its status
* TWEAK: Change logic that controls whether the minified or full JavaScript is used
* TWEAK: Improve Settings tab UI on mobile
* TWEAK: Improve UpdraftClone UI
* TWEAK: Improve UpdraftClone temporary page UI
* TWEAK: Change method used to record the MySQL version to deal with how MariaDB can report when using a non-MariaDB client library (see: https://github.com/joomla/joomla-cms/issues/9062)
* TWEAK: Replace Base64 encoded logo by image file
* TWEAK: Hide guided tour on UpdraftClone
* TWEAK: Fixed broken automatic backup modal layout
* TWEAK: Auto rescan after restoring the remote database
* TWEAK: Explicitly set the backup history option to not autoload, as it can get non-trivial in size
* TWEAK: Improve UI of excluding things from the backup
* TWEAK: Prevent a possible PHP debug notice in methods/backup-module.php
* TWEAK: Show progress in browser view port instead of modal dialog when we delete the backup(s).
* TWEAK: Added a --db-dummy-restore option to WP-CLI which will run a dummy restore of the database (under an unused prefix) and then drop the tables after it finishes. This option can be useful for testing.
* TWEAK: Update the UpdraftClone UI when site information becomes available
* TWEAK: Curl errors when interacting with Backblaze B2 will now be passed up for easier debugging
* TWEAK: Re-factor add-on remote storage credential testing to make passing debugging information easier
* TWEAK: Implement non-default SSL options with Backblaze B2 (previously the defaults were always used)
* TWEAK: UpdraftClone: redirect to admin page after using the auto login link
* TWEAK: Improve internal more files backup location tracking
* TWEAK: Send a single request to download a backup set not for each file entity
* TWEAK: Fix a DOM element whereby multiple nonces had the same id
* TWEAK: Automatically build the more files backup location tracking on local rescan
* TWEAK: Refactor the remote storage logging code in Onedrive module
* FIX: Asking the tour to cancel on the plugins page did not work
* FIX: an issue where some jobdata did not get set which resulted in the backup email not being sent
* FIX: a regression whereby network-activated plugins could get deactivated on multisites when restoring
* FIX: When database encryption was active, UpdraftClone would fail
* TWEAK: There is now a 'Rescan remote storage - log results to console' link in 'Advanced Tools' to aid with debugging
* TWEAK: Fixes Migrate / clone tab contents showing on the Advanced tools tab
* TWEAK: Attempt to catch, work-around and log when the backup history cannot be saved due to too long a history relative to the MySQL server's maximum packet size
* TWEAK: Re-factor and introduce the UpdraftPlus_Storage_Methods_Interface class
* TWEAK: Introduce the UPDRAFTPLUS_ENABLE_TOUR constant for power users; set it to false as part of your automated WP installation process (or manually) if you wish to disable all tour functionality.
* FEATURE: Introducing UpdraftClone. Create a live copy of your site with a button press. Great for testing changes, testing updates (e.g. WordPress core, plugins, PHP versions) and anything else you can think of. More information: https://updraftplus.com/updraftclone/
* FIX: Fix the logic for claiming and activating licences/add-ons.
* FIX: Fixed OneDrive for Business Germany authentication tenant issue
* TWEAK: WP-CLI - use dash (-) instead of underscore (_) to separate words, in order to match WP-CLI standards.
* TWEAK: Adds close_browser_connection capability for servers using phpfpm