=== 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
Requires at least: 3.2
Tested up to: 4.9
Stable tag: 1.14.13
Author URI: https://updraftplus.com
Donate link: https://david.dw-perspective.org.uk/donate
License: GPLv3 or later

Backup and restoration made easy. Complete backups; manual or scheduled (backup to Dropbox, S3, Google Drive, Rackspace, FTP, SFTP, email + others).

== Description ==

<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 a 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 backs 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 the entire investment you've made in 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 things such as server crashes, hacking, 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) stay safe, and can be restored in no time.

You could always create your own manual backups- but using 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 plugin out there - and for good reason. Not only is it comprehensive in terms of its features, but it's aso easy and intuitive to use. And because it has such a vast user base, it's tried and tested in a whole range of different situations and 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 1 million sites

On our website, we've got a whole page dedicated to how our Premium version compares with the competition <a href="https://updraftplus.com/comparison-updraftplus-free-updraftplus-premium/">here</a>

= UpdraftPlus Premium =

The free version of UpdraftPlus works just fine, but if you need more features and options you can purchase our Premium version. Here are some of the many features of UpdraftPlus Premium:

* Easily duplicates or migrates websites (with Migrator)
* Multisite/multi-network compatible
* Backs up non WP files and databases to multiple remote destinations
* Free dedicated expert support

Find out more on our comparison page. 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 backup, 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)

= 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? 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: https://updraftplus.com/translate/

= More premium plugins =

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 sister 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.

It also:
* 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, UpdraftPremium.

= 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://updraftplus.com/download/">YouTube channel</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.

== Changelog ==

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.14.9 of the free version correspond to changes made in 2.14.9.x of the paid version.

= 1.14.13 - 15/August/2018 =

* FEATURE: WP-CLI - add a 'get_latest_full_backup' command
* FIX: An issue when deleting multiple backups could result in a backup set not found error
* FIX: Polling during a backup when called from outside UpdraftPlus
* FIX: Plugin activation check was running at the wrong point in the restore process
* FIX: The WP-CLI "restore" command returned an unnecessary error if the incremental shim was not present
* TWEAK: Multisite tweaks for UpdraftCentral's plugin and theme module handlers
* TWEAK: Prevent potential PHP notice on page load when no backup storage is selected
* TWEAK: Add scoping to some CSS rules that were too general.
* TWEAK: A new "Backup / Restore" tab, which consists of backup status and existing backup with rid the "Current Status" tab and the "Existing Backups" tab
* TWEAK: Remove the possibility of a false-positive warning of a migration-rather-than-restoration if the WordPress home_url setting has legitimate oddities
* TWEAK: Improve UI of more database delete button (Premium)
* TWEAK: Removed Gold column and redesigned Premium page
* TWEAK: Improve UC factoring and introduce a UPDRAFTCENTRAL_COMMAND constant to allow context detection
* TWEAK: Tweaked downwards the minimum time in the future for rescheduling a resumption
* TWEAK: Deal with a possible issue in automatic collation selection in restoration when all character sets are supported and a collation is not supported
* TWEAK: Replace absolute URLs in place of relative URLs in anchor links

= 1.14.12 - 17/July/2018 =

* FEATURE: Added UpdraftCentral's theme management module handler
* FEATURE: User can mark any backup as "do not delete", and it will then not be deleted even when retention limits are hit
* FEATURE: WP-CLI - add a 'restore' command
* FEATURE: WP-CLI - Add an option 'delete-during-restore' in the 'restore' command
* FEATURE: Add optional 'fingerprint' configuration for sftp/scp remote storage, allowing the connection to be halted if the server's fingerprint does not match what was entered
* FEATURE: Added the ability to take an incremental backup via WP-CLI (note: incremental backups are still considered an experimental/work-in-progress feature)
* FIX: If a user gave the wrong key to decrypt an encrypted database, the "Decryption failed" message did not display
* FIX: The Migration was not changing an unsupported database table engine with the MyISAM  engine automatically
* FIX: Issue with the Dropbox account API call on some installs
* FIX: The web server disk space refresh link of the existing backups is not working
* FIX: The UpdraftPlus News couldn't print first time when the news cache was not made
* FIX: Activating the "all addons" licence did not remove the corresponding 'activate on this account' link in the "Premium / Extensions" tab
* FIX: When set names query character set hadn't support from the current MySQL server, the restoration process wasn't giving the option to replace the character set
* TWEAK: Updated the plugin.php handler for UpdraftCentral's new plugin management module
* TWEAK: Update posts handler to fix and update pagination in UpdraftCentral
* TWEAK: Refresh UpdraftCentral keys upon successful login or registration using the UpdraftCentral Cloud wizard 
* TWEAK: Correct admin page URL in WP-CLI 'restore' command when on multisite without multisite add-on
* TWEAK: Prevent PHP notice when checking non-existent files in relation to an extraneous whitespace warning
* TWEAK: Prevent PHP notices in add-ons with non-present settings
* TWEAK: Add the "Migrate / Clone" tab in place of the "Migrate / Clone" dialog
* TWEAK: Prevent call to the the wp_get_sites() deprecated function on WP 4.6 and newer
* TWEAK: Prevent a potential PHP debugging notice when displaying the 'Connect with your UpdraftPlus.com' form
* TWEAK: Do not show the confusing JetPack 'backup' notice on the 'Updates' page
* TWEAK: Added clone notices and commands for when UpdraftPlus is running on a UpdraftClone
* TWEAK: Move 'Log all messages to syslog (only server admins are likely to want this)' into the 'expert' settings section
* TWEAK: Replace a missing class constant in the Dropbox SDK (only relevant to people upgrading from Dropbox API v1 tokens - indicates upgrading UpdraftPlus from a very old version that previously used Dropbox APIv1 but never v2)
* TWEAK: It's "backup", not "back up"
* TWEAK: Prevent potential PHP debugging notices in restoration step 2
* TWEAK: Allow non-Super Admins to access UpdraftPlus Premium if they have 'manage_network_plugins' capability and the updraft_user_can_manage filter is used
* TWEAK: Improved code in a way that prevents continuous polling in the themes page, the plugins page and the updates page

= 1.14.11 - 25/May/2018 =

* FIX: Revert a change in 1.14.9 that could cause backups to not be sent to remote storage (fix in 1.14.10 was not 100% complete (but worked for almost everyone))

= 1.14.9 - 24/May/2018 =

* FEATURE: Make it more seamless to sign up to UpdraftCentral Cloud
* FEATURE: Microsoft Azure storage (Premium) compatibility with Azure Germany
* FEATURE: Added the ability to create migration keys from WP-CLI (Premium)
* FIX: A backup icon/storage shows for a storage type even if all instances were disabled
* FIX: WP CLI updraftplus command was not running on few enviroments like the Windows command line
* FIX: A PHP fatal error was occurring when a user try to restore an encrypted DB when defining the "UPDRAFTPLUS_DECRYPTION_ENGINE" constant
* TWEAK: Added the ability to schedule incremental backups (Note you can not yet take incremental backups)
* REFACTOR: Completed factoring for tabs of the settings page.
* TWEAK: Some re-factoring and tidying of the restoration code for easier maintenance
* TWEAK: Add a longer timeout on SFTP logins to cope with a 'long delay, but then worked' situation seen in the wild
* TWEAK: An "Incremental backups" extension was displayed in the Premium / Extensions tab, causing confusion since it is not yet finished/launched
* TWEAK: Displays a Byte Order Mark (BOM) warning by giving the file names along with the path in the "Existing Backups" tab, if a BOM is detected at the start of common files that people tend to edit
* TWEAK: A WP CLI Existing backup command didn't display a date time in the "job_identifier" column
* TWEAK: Add links to the relevant app privacy policies within the settings sections for storage methods using OAuth authorization apps
* TWEAK: Log user and group IDs of process and file/folder, when permissions for an operation is denied
* TWEAK: Prevent a potential PHP debugging notice when showing the 'Upload' button
* TWEAK: Update an out-of-date "wrong password" link
* TWEAK: Added the "Web-server disk space in use by UpdraftPlus" information to "Site information" section in the "Advanced Tools" tab; it won't show in the 'Existing Backups' tab if you are using less than 100MB.
* TWEAK: When a Google Cloud token was invalid, a PHP Fatal could result instead of catching the error and informing/logging nicely
* TWEAK: If php-xml (SimpleXMLElement) is not installed, then show an appropriate warning in the Azure configuration section
* TWEAK: If the user tries to install another version of UpdraftPlus, then tweak the default error message that they are shown by WP, which is too obscure/cryptic for many users
* TWEAK: If a fatal error occurred during uploading a backup, try to recover it and process the upload further

= 1.14.8 - 12/May/2018 =

* FIX: Resuming of a partially uploaded backup archive in the new 'OneDrive for Business' module was not working
* TWEAK: When testing SFTP settings, if debug is activated, activate debug logging and pass the results back in the event of test failure (previous attempt was incomplete)
* TWEAK: OneDrive SDK cleaned up to remove the obsolete Live 5.0 API

= 1.14.7 - 25/Apr/2018 =

* FIX: Fix incompatibility with loading the dashboard on WP 4.6 and older. If you have this problem, then you cannot visit /wp-admin/ - you will need to update via another tool (e.g. if you have a multiple site management tool), or via FTP (download the https://downloads.wordpress.org/plugin/updraftplus.1.14.7.zip , unzip it on your PC, log in to your site via FTP into the folder wp-content/plugins, remove the existing folder 'updraftplus' and then upload the unzipped 'updraftplus' folder). Many apologies!

= 1.14.6 - 25/Apr/2018 =

* FEATURE: Added the option to upload locally-available backups to remote storage
* FEATURE: Add post management module for UpdraftCentral (client-side; UC-side still pending)
* FEATURE: Added WP-CLI "rescan-storage" subcommand to the WP-CLI add-on rescan either remote storage or local storage
* FEATURE: Compatibility of the (paid) OneDrive module with 'OneDrive for Business'
* FIX: Multisite restoration did not display single site restoration option when URLs were different but clearly the same site (http/https difference)
* FIX: WebDAV uploads could fail if the user defined the constant UPDRAFTPLUS_WEBDAV_NEVER_CHUNK
* FIX: If UpdraftVault remote had failed, UpdraftVault couldn't recover without settings wipe
* TWEAK: Handle a DreamObjects server that was not sending an application/xml content-type header
* TWEAK: Handle a case where the root cause of an error from DreamObjects was not being clearly shown
* TWEAK: Alert the user of their mistake if they try to enter a URL instead of a folder path in the OneDrive settings folder field
* TWEAK: Adjust the PclZip log message to clarify the implications of using PclZip (i.e.: it's significantly slower)
* TWEAK: Add support for the upcoming objects-us-east-1.dream.io DreamObjects endpoint
* TWEAK: Prevent potential PHP notice in WP-CLI subcommand for existing backups
* TWEAK: Add UpdraftPlus news in admin dashboard "WordPress Events & News" widget

= 1.14.5 - 3/Apr/2018 =

* FEATURE: Add a "Database only" option to the UpdraftPlus email backup options
* FEATURE: An UpdraftPlus add-on (paid) to run the backup process through WP CLI
* FIX: Restoration did not display the decryption passphrase input (but always used the saved one)
* FIX: Browse content download file was not working in Windows hosting
* FIX: The wrong default for the 'Delete local backup' setting was applied if you had never saved your settings
* TWEAK: Prevent a PHP notice showing when testing S3 storage
* TWEAK: Prevent a PHP notice when downloading from Dropbox
* TWEAK: Improved the migrate UI
* TWEAK: Update bundle cacert bundle to latest (2018-01-17) release
* TWEAK: Ajouter soutien pour le nouveau region AWS Paris (eu-west-3)
* TWEAK: Handle short filesystem reads when sending data to Google Drive
* TWEAK: Improve handling of PHP errors and exceptions during back-end calls
* TWEAK: Update internal OneDrive SDK for compatibility with 'OneDrive for Business' (not yet fully supported)
* TWEAK: Internal refactoring and improvements to the UpdraftPlus.com form
* TWEAK: Job ID is now separate from the file nonce
* TWEAK: Show increments in the UI
* TWEAK: Add visibility controls to functions of a stream wrapper class for WebDAV access
* TWEAK: Handle errors when getting folder ID from Google Drive more patiently
* TWEAK: Displays more descriptive error when google drive authentication error occur

= 1.14.4 - 19/Feb/2018 =

* FEATURE: Now supports AWS v4 signatures (allowing use of new AWS regions) with old S3 SDK (which is used on PHP 5.2)
* FIX: WebDAV options filter was not correctly saving any human-chosen description
* FIX: Regression: Rackspace 'new user' wizard was not functioning
* FIX: For chunked storage APIs that require a method to finally re-assemble chunks, if the first attempt failed, then a subsequent failed attempt could be incorrectly marked as having succeeded
* FIX: First instance of each remote storage object was not using its internal default options
* TWEAK: Added the ability to restore incremental backup sets (N.B. currently you cannot create incremental backup sets; this is part of our development of that feature)
* TWEAK: Edit welcome banner
* TWEAK: If 'lock admin' functionality (Premium) has been disabled by the site administrator, then include a line to that effect in the relevant section.
* TWEAK: Allow UpdraftCentral classes to have boiler-plate pre and post-call methods
* TWEAK: Do a bit more logging for Backblaze B2 uploads
* TWEAK: Add a sanity check to prevent some PHP debug notices being logged in an upgrade situation
* TWEAK: Resolved unwanted WebDAV remote storage JavaScript console message

= 1.14.3 - 24/Jan/2018 =

* FEATURE: OneDrive and Google Cloud deauthorise link provided after authentication
* FEATURE: Added the ability to label remote storage instances (Premium)
* TWEAK: Handle a combined error/timing condition seen on DigitalOcean Spaces that could lead to UD thinking that an upload that actually succeeded, did not
* TWEAK: Add functions to pull backup status and log for UpdraftCentral
* TWEAK: Add command multiplexer function for UpdraftCentral
* TWEAK: Audit and regularise use of slash-handling code in AJAX layer
* TWEAK: A couple of remote storage error paths were not returning the error information to the upper level correctly
* TWEAK: Prevent phpseclib from throwing a fatal upon autoload if mbstring.func_overload is set (see: https://github.com/phpseclib/phpseclib/issues/762); instead, log, or handle in some other way appropriate to the context
* TWEAK: Some minor code-styling and linting ignore tweaks
* TWEAK: (Regression) After filling the UpdraftVault connect form, pressing Enter was no longer triggering submission
* TWEAK: If counting up the total "More files" data when none are configured to be backed up, show "None configured" instead of "Error"
* TWEAK: Improve UI of notice when claiming an add-on
* TWEAK: Standardise the way OAuth remote storage methods authorise/deauthorise settings
* TWEAK: "Wipe Settings" button click event was not asking for confirmation
* TWEAK: Add Server Side Encryption (SSE) support to old S3 SDK
* TWEAK: Dropbox now uses the internal chunked download API

= 1.14.2 - 22/Dec/2017 =

* FIX: Email backups not sending correctly
* FIX: Buttons in the 'Migrate' dialog box stopped working after you switched tabs (until you reload the page)
* FIX: Unable to delete multi-storage S3 instances
* TWEAK: Remove duplicate DOM id for nonce fields
* TWEAK: Correct name of PutObjectAclVersion permission when requesting it in S3 wizard
* TWEAK: Improve S3 log message to make clear which back-end a message is coming from
* TWEAK: Improved migration warning message if migrator addon is available and restoration site url is slightly different than current site url
* TWEAK: New non-existent Backblaze B2 buckets are now created automatically
* TWEAK: Suppress expected (but confusing to some users) "404 not found" message in the log when WebDAV backup file is at 0% uploaded

= 1.14.1 - 12/Dec/2017 =

* FEATURE: Backup to multiple remote storage accounts of the same type
* TWEAK: Remove all the lines "X is a great choice, because is supports chunked uploading..." from the UI. Almost everything did support it, but not everything mentioned it, which could cause confusion.
* TWEAK: Prevent a PHP log notice in some settings savings scenarios
* TWEAK: Add missing filter for processing changes to Google Cloud, OneDrive and Azure settings (Premium storage option) on multisite
* TWEAK: Minor internal re-factoring: move hard-coded storage back-end names out of options and multisite addon classes.
* TWEAK: Prevent a PHP log notice during backup on PHP 7.2

= 1.13.16 - 07/Dec/2017 =

* TWEAK: Remove Ukranian translation files from wordpress.org zip (translation now complete, will download from wordpress.org separately)
* TWEAK: Adding V4 Signature properties and methods to old S3 SDK
* TWEAK: Migrator add-on: keep a log of tables as they are created
* TWEAK: Tweak wording on the 'Premium/Extensions' tab
* TWEAK: Change the order of classes in methods/cloudfiles.php to work around a PHP install bug seen in one instance
* TWEAK: Be less aggressive about logging a usually unnecessary internal message about settings
* TWEAK: Improve UI of migration notice in free version
* TWEAK: Resolve PSR4 autoloading conflict with older version of Composer
* TWEAK: Pruning will now prune backups from multiple storage destinations of the same type (not yet a user-visible feature)
* TWEAK: Update the 'ifeq' handlebars helper to resolve a conflict with MainWP


= 1.13.15 - 28/Nov/2017 =

* FIX: Updated OneDrive SDK to allow for PHP 7.2 (due for release soon) compatibility
* FIX: When multiple remote backup destinations existed, pruning of old backup sets was not removing from all destinations (recent regression)
* FIX: When re-scanning a Rackspace Cloud Files remote location, only the first 100 files were processed
* FIX: Backups being downloaded twice from Dropbox during a restore which could cause unexpected results upon a site migration
* FIX: The 'SCP' and 'Server-side encryption' checkboxes in the settings was always ticked in the browser upon reload, regardless of the saved setting (regression in 1.13.14)
* TWEAK: Improve export settings file name by appending site name to export download file
* TWEAK: Perform escaping of table names in SQL calls without using esc_sql()
* TWEAK: Site option is deleted before updating it in multisite
* TWEAK: Improve WebDAV remote method upload speed
* TWEAK: Improve WebDAV remote method download speed

= 1.13.14 - 21/Nov/2017 =

* FIX: Search/replace checkbox was not appearing when migrating a multisite setup
* FIX: WordPress 4.8.3 introduced a breaking internal change in the WordPress database API, which broke the search/replace of strings including percent signs. Updated Migrator code to handle this.
* FIX: WebDAV remote storage settings not being loaded onto the settings page properly
* FIX: Rewrite of legacy (PHP 5.2) S3 SDK Class to fix pruning old backup sets when multiple storage back-ends that are all based on S3 are in use.
* TWEAK: Improve formatting of restoration warnings
* TWEAK: Add css classes to backup templates
* TWEAK: Standardise the way storage classes are internally stored/retrieved
* TWEAK: Remote storage modules configuration templates transition using handlebars.js
* TWEAK: Adjust message mentioning mcrypt which is not needed if php-openssl is installed
* TWEAK: Add UPDRAFTPLUS_USE_WPDB constant

= 1.13.13 - 02/Nov/2017 =

* FIX: Google Drive Custom App authorisation and de-authorisation was not working
* FIX: Rackspace new user creation had stopped filling the new credential fields automatically after successful creation of a new user
* TWEAK: When migrating, the detected search/replace terms now make sure that http and https variants are both included as search terms
* TWEAK: Make the internal error code with OneDrive auth failures more accurate
* TWEAK: Remote storage modules configuration templates transition using xamin/handlebars.php libraries
* TWEAK: Changed the Dropbox authentication flow to not send a GET request on large URLs
* TWEAK: Improve error message when invalid bucket name given by user for Backblaze remote storage method

= 1.13.12 - 25/Oct/2017 =

* TWEAK: Showing search/replace checkbox option only when needed.
* FEATURE: Warn the user if their .htaccess seems to contain a redirect (or any other reference) to the old site after migration.
* FEATURE: When importing a database, warn the user if the current MySQL server does not support a used collation, and offer to replace it
* FIX: Saving of S3 settings had taken a dislike to buckets beginning with a capital 'B'
* FIX: UpdraftCentral users' module was failing to handle loading a very large number of users
* TWEAK: Allows the installation and/or activation of the WP-Optimize plugin from UpdraftCentral
* TWEAK: Add multisite attribute to the error response object for the create user, delete user and edit user actions.
* TWEAK: All remote storage methods are ported over to using configuration templates internally
* TWEAK: Include a method to add a manifest file inside each backup archive
* TWEAK: All code relating to the now-dead Dropbox APIv1 removed (N.B. If you've not updated UpdraftPlus since November 2016 and were using Dropbox, it won't be working - https://blogs.dropbox.com/developers/2017/09/api-v1-shutdown-details/)
* TWEAK: Prevent a PHP log notice upon database backup restore when using Google Drive without a client ID
* TWEAK: Prevent the final 'Restore' button being pressed a second time
* TWEAK: Improvements to the UpdraftCentral wizard
* TWEAK: Update to trunk version of plugin updater (paid versions), restoring the ability to work on older WP versions (3.8 and before)
* TWEAK: Add lbakut_activity_log to the list of large log tables
* TWEAK: Updater in paid versions now requests JSON as response format for responses when claiming entitlements
* TWEAK: Resolve: Backup labels could end up with extraneous slashes in output
* TWEAK: Updater in paid versions can now receive and process update information in respond to entitlement claim - one less HTTP round-trip
* TWEAK: Improve Google Cloud authentication success message for bucket name is not defined
* TWEAK: UpdraftVault commands now pass an instance identifier
* FEATURE: Backups can now be uploaded to multiple instances of the same remote storage but not yet possible to add multiple instances 

= 1.13.11 - 27/Sep/2017 =

* FIX: Fix a failure (regression in 1.13.8+) to download some backup sets which pre-date the existence of instances
* FIX: Fix a failure to backup in the short-lived 1.13.10 (many apologies)
* TWEAK: When logging an Exception or Error, include a backtrace (WP 3.4+)
* TWEAK: Prevent a PHP warning during a save of the backup history
* TWEAK: Added a MetaSlider notice in the notices collection
* TWEAK: Put a try/catch block that will catch PHP exceptions/fatals (PHP 7.0+) during encryption phase, so that any issues can be logged

= 1.13.9 - 25/Sep/2017 =

* FEATURE: Backblaze B2 (https://www.backblaze.com/b2/) support in UpdraftPlus Premium
* TWEAK: Port job data used by Azure, Google Cloud and OneDrive storage to being instance-local (now believed to all be ported)
* TWEAK: The automatic correcting of wrongly-input S3 and FTP settings had regressed in a recent version
* TWEAK: Various small fixes to the standards compliance of the HTML output in the remote storage settings area
* TWEAK: When deleting backups with multiple remote storage instances of the same type, order the attempts

= 1.13.8 - 21/Sep/2017 =

* FEATURE: When importing a database, warn the user if the current MySQL server does not support a used character set, and offer to replace it (with a link explaining the risks)
* FEATURE: Generic S3 storage module can now use non-default ports (specify by appending :(port number) to the host name)
* FIX: Re-scanning of remote storage would fail to detect a file manually uploaded to a secondary remote storage location if not also present locally. Various other (unlikely) corner-case rescanning scenarios also tested and fixed.
* TWEAK: Some enhancements to the S3 internals, to make the "S3 Generic" module behave better (it already worked) with the forthcoming DigitalOcean Spaces (object storage) (see: https://updraftplus.com/use-updraftplus-digital-ocean-spaces/)
* TWEAK: UpdraftCentral will no longer show updates which WordPress core lists which appear to be of the same version number
* TWEAK: Handle trying to download a zero-sized file through the browser more elegantly
* TWEAK: When pressing 'Delete', the "also delete remote backup" checkbox was showing even for backups without remote storage
* TWEAK: Abstract history handling into a separate class, UpdraftPlus_Backup_History, for easier maintenance
* TWEAK: Remove a use of count() on a string to prevent a new PHP notice on PHP 7.2+
* TWEAK: Some changes to the UpdraftCentral connection tool to make it more user-friendly
* TWEAK: Clarified and documented the re-scanning code, and made it compatible with the increased flexibility needed for incremental backups in future
* TWEAK: Tweaked UpdraftCentral GA handler to support Tracking ID editing and disconnection.
* TWEAK: In the free version, if the only difference between backup and site URLs is http/https, then show a different message to make the situation clearer
* TWEAK: Make the UPDRAFTPLUS_IPV4_ONLY constant take effect more widely
* TWEAK: Do not duplicate remote instance ID records in the backup history when re-scanning
* TWEAK: Keep the remote instance ID list consistent with the remote service list when re-scanning
* TWEAK: Prevent a PHP notice that could appear for locally stored backups in UpdraftPlus::get_storage_objects_and_ids()

= 1.13.7 - 06/Sep/2017 =

* FIX: UpdraftCentral connectivity for various operations restored (regression in 1.13.6)
* FIX: No error message was being shown when a backup to local storage was missing upon restore
* COMPATIBILITY: Replace uses of the deprecated (PHP 7.2+) each() function
* TRANSLATION: Portuguese (Portugal) and Romanian translations are now complete and supplied from wordpress.org, so can be removed from the free plugin zip
* TWEAK: Fix some wrongly-called translation functions, and pull more known strings into the Premium version
* TWEAK: Remove the legacy parameter for setting storage upload job status data (only useful for version downgrades of more than 1 release during in-progress backups)
* TWEAK: Exclude some unnecessary build and unused files from the release zip (reduce disk space and download size)

= 1.13.6 - 05/Sep/2017 =

* FEATURE: Google Drive authorisation now goes via an officially registered app for easier connections to Google Drive.
* FEATURE: Include commands for UpdraftCentral's (https://updraftcentral.com) Google Analytics management facility (check the changelog for the release)
* FIX: Correct handling of OneDrive folder names featuring spaces (possibly a regression/change in the handling at OneDrive's end)
* TWEAK: Prevent messy layout when the last log message is very long
* TWEAK: Log catchable fatal errors and exceptions during backup in PHP 7
* TWEAK: Log catchable fatal errors and exceptions during restore in PHP 7
* TWEAK: Log catchable fatal errors and exceptions during backup download in PHP 7
* TWEAK: Reduce amount of database logging during existing zip analysis, database backup and pruning stages
* TWEAK: In AJAX/JSON responses, automatically detect and handle corrupted output (e.g. setups where PHP debugging notices are configured to come to the browser)
* TWEAK: Catches and more elegantly handles errors when a settings import file cannot be JSON-parsed
* TWEAK: Request list of available add-ons (paid versions) from the mothership in current format
* TWEAK: Added custom backup message parameter backupnow_message in function updraft_backupnow_inpage_go()
* TWEAK: General code tidy-up, making older code conform to our current standards
* TWEAK: Add the possibility of passing back associated data with test results, and log it in the browser console
* TWEAK: When carrying out a remote storage test, pass the state of the 'debug' setting
* TWEAK: When testing SFTP settings, if debug is activated, activate debug logging and pass the results back in the event of test failure
* TWEAK: Optimise away a database query in the case of no UpdraftCentral keys existing
* TWEAK: Removed "Reduced Redundancy" storage class from Amazon S3 remote storage options, because Amazon are deprecating it (and it now costs more, for inferior redundancy - https://updraftplus.com/forums/topic/amazon-is-phasing-out-reduced-redundancy-storage/)
* TWEAK: Backup files missing error message corrected
* TWEAK: Add the handlebars-js and xamin/handlebars.php libraries
* TWEAK: The FTP storage module has been ported to outputing its configuration via a template
* TWEAK: Introduce internal API and port all job data saved in storage modules to be instance-local

= 1.13.5 - 08/Aug/2017 =

* TWEAK: Manage phpseclib through composer
* TWEAK: Do less logging to database when resuming and noticing already-processed tables (saves resources)
* TWEAK: Returns comment status when updating comments from UpdraftCentral
* TWEAK: Update plugin-updates-checker library to current (4.2), and manage via composer, replacing bundled copy in the build source
* TWEAK: Replace uses of create_function(), which is deprecated on PHP 7.2
* TWEAK: Replace deprecated constructors (PHP 7+) in webdav module
* TWEAK: Documentation showing plugin developers how easy it is to add in-page backups to their plugin: https://updraftplus.com/add-take-backup-functionality-plugin/
* TWEAK: Make the UpdraftCentral updates checking able to cope with a wider range of third-party schemes
* TWEAK: General code tidy-up, making older code conform to our current standards
* TWEAK: Minor version updates of some bundled libraries
* TWEAK: Produce and use minified resources (CSS/JS) where available
* TWEAK: Update class-udrpc to latest (1.4.14) which removes a conflict with other code that may interact with CORS OPTIONS requests
* TWEAK: Escape log lines when sending for display (theoretically an XSS security issue, but to achieve a successful attack, someone would have to first get something malicious into the log file, which is difficult as there are not many places where foreign input can end up in the log file - e.g. hack into Dropbox and cause Dropbox to send you back malicious HTML in an error message - and then be able to persuade you to both take a backup triggering the problem and then view the log file in your WP dashboard)
* TWEAK: Update Google Cloud bucket locations

= 1.13.4 - 08/Jun/2017 =

* FIX: Import function had a regression and was not coping with all formats
* TWEAK: When the import function failed, the error was not shown to the user

= 1.13.3 - 07/Jun/2017 =

* FIX: Revert Dropbox authentication change in 1.13.2, which was not working on all sites

= 1.13.2 - 07/Jun/2017 =

* TWEAK: Marked as tested and compatible on WordPress 4.8
* TWEAK: Dropbox authentication flow can now use POST for the final step, side-stepping (arbitrary) parameter length restrictions on some Apache mod_security setups
* TWEAK: Prevent a possible PHP notice when curl is not present
* TWEAK: Point Clef users towards Keyy
* TWEAK: Do not open an alert box when the user changes their site ID in 'Advanced Tools'
* TWEAK: Fix parameters to updraft_check_overduecrons() JS function

= 1.13.1 - 09/May/2017 =

* REFACTOR: Completed re-factoring of the remote storage modules, so that now all remote storage code has completed this current stage of re-factoring (more to come in future - laying the foundation for a significant new feature)
* FIX: Added a nonce to the Dropbox deauth link. This is a minor security issue - someone personally targetting you, who knew that you were logged in to your WordPress admin, and who could persuade you to visit a personally-crafted web page, could cause the connection between UpdraftPlus and your Dropbox to be broken. The only impact of this is that the sending of your next backup to Dropbox would fail, and you would be alerted about the need to re-connect.
* FIX: Import settings now handle the new remote storage options format
* FIX: The zip file browser was not working in free versions
* TWEAK: Added a version check when saving settings to prevent errors or lost settings
* TWEAK: 'Existing Backups' table now shows an icon for each remote destination that the backup was sent to
* TWEAK: Update SSL CA certificates file
* TWEAK: If, when uploading to S3, a file is not found, handle it slightly more elegantly
* TWEAK: Work with some WebDAV servers that previously sent empty responses to OPTIONS requests

= 1.12.40 - 01/Apr/2017 =

* TWEAK: The in-page log file display had stopped continuously updating in 1.12.32
* FIX: In some circumstances, settings for the storage modules refactored in 1.12.37 could fail to show
* FIX: The free version of 1.12.37/38 in some circumstances could fail to complete Dropbox authentication

= 1.12.38 - 31/Mar/2017 =

* TWEAK: Dropbox API v2 call to de-authorise a token was failing
* FIX: Prevent a fatal error when attempting to use a backup method with no options set

= 1.12.37 - 31/Mar/2017 =

* FEATURE: Browse the contents of a backup from within your WordPress dashboard, and (with Premium) download individual files from it
* FIX: Fix an issue that could occasionally cause corruption of interrupted Dropbox backups. All Dropbox users are recommended to update asap.
* TWEAK: Remove debugging statement inadvertently left in 1.12.36
* TWEAK: Re-factored remote storage handlers via add-ons so that there was a cleaner and more consistent class hierarchy (preparation for future improvements). N.B. If you subsequently downgrade to an older version of UpdraftPlus, you will need to re-enter the settings for some remote storage options.
* TWEAK: List of checksum algorithms run over backups and logged now includes SHA256, and is filterable (SHA1 now considered deprecated)
* TWEAK: Allow chunked database encryption to try and resume in the event of an error
* TWEAK: Improve the premium/extension tab content
* TWEAK: Fix an issue whereby the UpdraftVault settings section could show a bogus problem with checking quota immediately after initial setup
* TWEAK: When requesting a download, work around buggy browser/server that continued after Connection: close
* TWEAK: Improve the UI experience when downloading a log file for display fails
* TWEAK: Prevent PHP notice if another plugin cancels a cron event
* TWEAK: Tweak semaphore handling and enhance logging

Older changes are found <a href="https://plugins.svn.wordpress.org/updraftplus/trunk/changelog.txt">in the changelog.txt file in the plugin directory.</a>

== Screenshots ==

1. Main dashboard - screenshots are from UpdraftPlus Premium, so may reference some features that are not part of the free version

2. Configuring your backups

3. Take a backup

4. Restoring from a backup

== License ==

    Copyright 2011-18 David Anderson

    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation; either version 3 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA

Furthermore, reliance upon any non-English translation is at your own risk. UpdraftPlus can give no guarantees that translations from the original English are accurate.

We recognise and thank the following for code and/or libraries used and/or modified under the terms of their open source licences; see: https://updraftplus.com/acknowledgements/

== Upgrade Notice ==
* 1.14.13 : A new "Backup / Restore" tab and a new WP-CLI get_latest_full_backup command. Many tweaks for convenience and small fixes. A recommended update for all.

