UpdraftPlus WordPress Backup Plugin - Version 1.11.8

Version Description

Download this release

Release Info

Developer DavidAnderson
Plugin Icon 128x128 UpdraftPlus WordPress Backup Plugin
Version 1.11.8
Comparing to
See all releases

Code changes from version 1.11.5 to 1.11.8

backup.php CHANGED
@@ -891,7 +891,7 @@ class UpdraftPlus_Backup {
891
 
892
  # NOTYET: Possible amendment to original algorithm; not just no check-in, but if the check in was very early (can happen if we get a very early checkin for some trivial operation, then attempt something too big)
893
 
894
- if (!empty($updraftplus->no_checkin_last_time)) {
895
  // Apr 2015: !$updraftplus->newresumption_scheduled added after seeing a log where there was no activity on resumption 9, and extra resumption 10 then tried the same operation.
896
  if ($updraftplus->current_resumption - $updraftplus->last_successful_resumption > 2 || !$updraftplus->newresumption_scheduled) {
897
  $this->try_split = true;
891
 
892
  # NOTYET: Possible amendment to original algorithm; not just no check-in, but if the check in was very early (can happen if we get a very early checkin for some trivial operation, then attempt something too big)
893
 
894
+ if (!empty($updraftplus->no_checkin_last_time) || !$updraftplus->newresumption_scheduled) {
895
  // Apr 2015: !$updraftplus->newresumption_scheduled added after seeing a log where there was no activity on resumption 9, and extra resumption 10 then tried the same operation.
896
  if ($updraftplus->current_resumption - $updraftplus->last_successful_resumption > 2 || !$updraftplus->newresumption_scheduled) {
897
  $this->try_split = true;
class-updraftplus.php CHANGED
@@ -1019,7 +1019,7 @@ class UpdraftPlus {
1019
  } else {
1020
  // PclZip will die() if gzopen is not found
1021
  // Obviously, this is a kludge - we assume it's working. We could, of course, just return false - but since we already know now that PclZip can't work, that only leaves ZipArchive
1022
- $updraftplus->log("gzopen function not found; PclZip cannot be invoked; will assume that binary zip works if we have a non-zero file");
1023
  if (filesize($updraft_dir.'/binziptest/test.zip') > 0) {
1024
  $found_first = true;
1025
  $found_second = true;
1019
  } else {
1020
  // PclZip will die() if gzopen is not found
1021
  // Obviously, this is a kludge - we assume it's working. We could, of course, just return false - but since we already know now that PclZip can't work, that only leaves ZipArchive
1022
+ $this->log("gzopen function not found; PclZip cannot be invoked; will assume that binary zip works if we have a non-zero file");
1023
  if (filesize($updraft_dir.'/binziptest/test.zip') > 0) {
1024
  $found_first = true;
1025
  $found_second = true;
includes/Dropbox/OAuth/Consumer/ConsumerAbstract.php CHANGED
@@ -47,11 +47,17 @@ abstract class Dropbox_ConsumerAbstract
47
  if (empty($access_token) || !isset($access_token->oauth_token)) {
48
  try {
49
  $this->getAccessToken();
50
- } catch(Dropbox_Exception $e) {
51
- global $updraftplus;
52
- $updraftplus->log($e->getMessage().' - need to reauthenticate this site with Dropbox (if this fails, then you can also try wiping your settings from the Expert Settings section)');
53
- $this->getRequestToken();
54
- $this->authorise();
 
 
 
 
 
 
55
  }
56
  }
57
  }
47
  if (empty($access_token) || !isset($access_token->oauth_token)) {
48
  try {
49
  $this->getAccessToken();
50
+ } catch(Exception $e) {
51
+ $excep_class = get_class($e);
52
+ // 04-Sep-2015 - Dropbox started throwing a 404, which caused a Dropbox_BadRequestException which previously wasn't being caught
53
+ if ('Dropbox_BadRequestException' == $excep_class || 'Dropbox_Exception' == $excep_class) {
54
+ global $updraftplus;
55
+ $updraftplus->log($e->getMessage().' - need to reauthenticate this site with Dropbox (if this fails, then you can also try wiping your settings from the Expert Settings section)');
56
+ $this->getRequestToken();
57
+ $this->authorise();
58
+ } else {
59
+ throw $e;
60
+ }
61
  }
62
  }
63
  }
readme.txt CHANGED
@@ -3,7 +3,7 @@ Contributors: Backup with UpdraftPlus, DavidAnderson
3
  Tags: backup, backups, restore, amazon backup, s3 backup, dropbox backup, google drive backup, rackspace cloud files, rackspace backup, dreamhost, dreamobjects backup, ftp backup, webdav backup, google cloud storage, onedrive, microsoft one drive, back up, multisite, restoration, sftp backup, ftps, scp backup, migrate, duplicate, copy, mysql backup, database backup, db backups, website backup, wordpress backup, full backup, openstack backup, sicherung
4
  Requires at least: 3.2
5
  Tested up to: 4.3
6
- Stable tag: 1.11.5
7
  Author URI: https://updraftplus.com
8
  Donate link: http://david.dw-perspective.org.uk/donate
9
  License: GPLv3 or later
@@ -16,7 +16,7 @@ Backup and restoration made easy. Complete backups; manual or scheduled (backup
16
 
17
  <strong>Top-quality:</strong> UpdraftPlus is the <a href="http://rankwp.com/plugins/updraftplus">highest-ranking backup plugin on wordpress.org</a> (ranks in the top 40 out of over 30,000 WordPress plugins for quality on rankwp.com).
18
 
19
- <strong>Over half a million currently active installs:</strong> widely tested and reliable (over 2.7 million downloads). The #1 most installed scheduled backup plugin, according to wordpress.org. Millions of backups completed!
20
 
21
  * Supports WordPress backups to UpdraftPlus Vault, Amazon S3 (or compatible), Dropbox, Rackspace Cloud Files, Google Drive, Google Cloud Storage, DreamHost DreamObjects, FTP, OpenStack (Swift) and email. Also (via a paid add-on) backup to Microsoft OneDrive, Copy.Com, FTP over SSL, SFTP, SCP, and WebDAV (and compatible services, e.g. Yandex, Cubby). Examples of S3-compatible providers: Cloudian, Connectria, Constant, Eucalyptus, Nifty, Nimbula, Cloudn.
22
  * Quick restore (both file and database backups)
@@ -118,11 +118,25 @@ Thanks for asking; yes, we've got a few. Check out this profile page - https://p
118
 
119
  The <a href="https://updraftplus.com/news/">UpdraftPlus backup blog</a> is the best place to learn in more detail about any important changes.
120
 
121
- 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.11.4 of the free version correspond to changes made in 2.11.4.x of the paid version.
122
 
123
- = 1.11.5 - 22/Aug/2015 =
 
 
 
 
 
 
 
 
 
 
 
 
 
124
 
125
  * FIX: phpseclib fix relating to generation of random numbers on some systems (affecting SFTP on some systems)
 
126
 
127
  = 1.11.4 - 19/Aug/2015 =
128
 
@@ -1621,4 +1635,4 @@ We recognise and thank the following for code and/or libraries used and/or modif
1621
 
1622
 
1623
  == Upgrade Notice ==
1624
- * 1.11.5 : Random number generation was halting on some systems due to phpseclib issue in 1.11.4
3
  Tags: backup, backups, restore, amazon backup, s3 backup, dropbox backup, google drive backup, rackspace cloud files, rackspace backup, dreamhost, dreamobjects backup, ftp backup, webdav backup, google cloud storage, onedrive, microsoft one drive, back up, multisite, restoration, sftp backup, ftps, scp backup, migrate, duplicate, copy, mysql backup, database backup, db backups, website backup, wordpress backup, full backup, openstack backup, sicherung
4
  Requires at least: 3.2
5
  Tested up to: 4.3
6
+ Stable tag: 1.11.8
7
  Author URI: https://updraftplus.com
8
  Donate link: http://david.dw-perspective.org.uk/donate
9
  License: GPLv3 or later
16
 
17
  <strong>Top-quality:</strong> UpdraftPlus is the <a href="http://rankwp.com/plugins/updraftplus">highest-ranking backup plugin on wordpress.org</a> (ranks in the top 40 out of over 30,000 WordPress plugins for quality on rankwp.com).
18
 
19
+ <strong>Over half a million currently active installs:</strong> widely tested and reliable (over 2.9 million downloads). The #1 most installed scheduled backup plugin, according to wordpress.org. Millions of backups completed!
20
 
21
  * Supports WordPress backups to UpdraftPlus Vault, Amazon S3 (or compatible), Dropbox, Rackspace Cloud Files, Google Drive, Google Cloud Storage, DreamHost DreamObjects, FTP, OpenStack (Swift) and email. Also (via a paid add-on) backup to Microsoft OneDrive, Copy.Com, FTP over SSL, SFTP, SCP, and WebDAV (and compatible services, e.g. Yandex, Cubby). Examples of S3-compatible providers: Cloudian, Connectria, Constant, Eucalyptus, Nifty, Nimbula, Cloudn.
22
  * Quick restore (both file and database backups)
118
 
119
  The <a href="https://updraftplus.com/news/">UpdraftPlus backup blog</a> is the best place to learn in more detail about any important changes.
120
 
121
+ 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.11.9 of the free version correspond to changes made in 2.11.9.x of the paid version.
122
 
123
+ = 1.11.9 - 04/Sep/2015 =
124
+
125
+ * FIX: Dropbox introduced an un-documented, un-announced change to their server, which caused new site authentications in UpdraftPlus to no longer work. Now fixed with this release.
126
+ * FIX: If backing up multiple extra directories under "more files", if large directories required a resumption, then inclusion of the files multiple times in the backup was possible.
127
+ * TWEAK: Tweak the auto-split algorithm to not avoid firing in a particular case (that relies on a sequence of unlikely I/O events, seen on GoDaddy) if there's no resumption scheduled
128
+ * TWEAK: Add mysql.sql to the (changeable) default configuration for excludes from wp-content - on WP Engine this is an unreadable file that they create that thus produces a backup warning
129
+ * TWEAK: Add a dashboard warning (+ link to documentation) if UD appears to be incompletely installed
130
+ * TWEAK: Add UPDRAFTPLUS_WEBDAV_NEVER_CHUNK constant for WebDAV servers that return the wrong error code when chunking fails
131
+ * TWEAK: Introduce a UPDRAFTPLUS_REMOTESEND_DEFAULT_CHUNK_BYTES constant allowing the over-riding of the remote-send (Migrator) starting chunk size in wp-config.php (expert users)
132
+ * TWEAK: Add CSS classes to dashboard updates notices, so that people can hide them more easily if they wish
133
+ * TWEAK: If gzopen() is disabled, then test binzip without trying to use PclZip to verify the results
134
+ * TWEAK: Add work-around for PHP bug https://bugs.php.net/bug.php?id=62852
135
+
136
+ = 1.11.6 - 22/Aug/2015 =
137
 
138
  * FIX: phpseclib fix relating to generation of random numbers on some systems (affecting SFTP on some systems)
139
+ * FIX: 1.11.5 release had wrong version number in header for paying users; corrected with fresh release
140
 
141
  = 1.11.4 - 19/Aug/2015 =
142
 
1635
 
1636
 
1637
  == Upgrade Notice ==
1638
+ * 1.11.8 : Fix for undocumented change at Dropbox.Com that began preventing authorising new WP sites, plus a few others
updraftplus.php CHANGED
@@ -4,7 +4,7 @@ Plugin Name: UpdraftPlus - Backup/Restore
4
  Plugin URI: https://updraftplus.com
5
  Description: Backup and restore: take backups locally, or backup to Amazon S3, Dropbox, Google Drive, Rackspace, (S)FTP, WebDAV & email, on automatic schedules.
6
  Author: UpdraftPlus.Com, DavidAnderson
7
- Version: 1.11.5
8
  Donate link: http://david.dw-perspective.org.uk/donate
9
  License: GPLv3 or later
10
  Text Domain: updraftplus
@@ -36,7 +36,7 @@ if (!defined('ABSPATH')) die('No direct access allowed');
36
 
37
  define('UPDRAFTPLUS_DIR', dirname(__FILE__));
38
  define('UPDRAFTPLUS_URL', plugins_url('', __FILE__));
39
- define('UPDRAFT_DEFAULT_OTHERS_EXCLUDE','upgrade,cache,updraft,backup*,*backups');
40
  define('UPDRAFT_DEFAULT_UPLOADS_EXCLUDE','backup*,*backups,backwpup*,wp-clone');
41
 
42
  // The following can go in your wp-config.php
@@ -121,19 +121,30 @@ if (is_dir(UPDRAFTPLUS_DIR.'/addons') && $dir_handle = opendir(UPDRAFTPLUS_DIR.'
121
 
122
  if (is_file(UPDRAFTPLUS_DIR.'/udaddons/updraftplus-addons.php')) include_once(UPDRAFTPLUS_DIR.'/udaddons/updraftplus-addons.php');
123
 
124
- require_once(UPDRAFTPLUS_DIR.'/class-updraftplus.php');
125
- $updraftplus = new UpdraftPlus();
126
- $updraftplus->have_addons = $updraftplus_have_addons;
127
-
128
- if (!$updraftplus->memory_check(192)) {
129
- // Experience appears to show that the memory limit is only likely to be hit (unless it is very low) by single files that are larger than available memory (when compressed)
130
- # Add sanity checks - found someone who'd set WP_MAX_MEMORY_LIMIT to 256K !
131
- if (!$updraftplus->memory_check($updraftplus->memory_check_current(WP_MAX_MEMORY_LIMIT))) {
132
- $new = absint($updraftplus->memory_check_current(WP_MAX_MEMORY_LIMIT));
133
- if ($new>32 && $new<100000) {
134
- @ini_set('memory_limit', $new.'M');
 
 
 
 
 
 
 
 
 
135
  }
136
  }
 
137
  }
138
 
139
- if (!class_exists('UpdraftPlus_Options')) require_once(UPDRAFTPLUS_DIR.'/options.php');
 
4
  Plugin URI: https://updraftplus.com
5
  Description: Backup and restore: take backups locally, or backup to Amazon S3, Dropbox, Google Drive, Rackspace, (S)FTP, WebDAV & email, on automatic schedules.
6
  Author: UpdraftPlus.Com, DavidAnderson
7
+ Version: 1.11.8
8
  Donate link: http://david.dw-perspective.org.uk/donate
9
  License: GPLv3 or later
10
  Text Domain: updraftplus
36
 
37
  define('UPDRAFTPLUS_DIR', dirname(__FILE__));
38
  define('UPDRAFTPLUS_URL', plugins_url('', __FILE__));
39
+ define('UPDRAFT_DEFAULT_OTHERS_EXCLUDE','upgrade,cache,updraft,backup*,*backups,mysql.sql');
40
  define('UPDRAFT_DEFAULT_UPLOADS_EXCLUDE','backup*,*backups,backwpup*,wp-clone');
41
 
42
  // The following can go in your wp-config.php
121
 
122
  if (is_file(UPDRAFTPLUS_DIR.'/udaddons/updraftplus-addons.php')) include_once(UPDRAFTPLUS_DIR.'/udaddons/updraftplus-addons.php');
123
 
124
+ if (!file_exists(UPDRAFTPLUS_DIR.'/class-updraftplus.php') || !file_exists(UPDRAFTPLUS_DIR.'/options.php')) {
125
+ // Warn if they've not got the whole plugin - can happen if WP crashes (e.g. out of disk space) when upgrading the plugin
126
+ function updraftplus_incomplete_install_warning() {
127
+ echo '<div class="updraftmessage error"><p><strong>'.__('Error','updraftplus').':</strong> '.__("You do not have UpdraftPlus completely installed - please de-install and install it again. Most likely, WordPress malfunctioned when copying the plugin files.", 'updraftplus').' <a href="https://updraftplus.com/faqs/wordpress-crashed-when-updating-updraftplus-what-can-i-do/">'.__('Go here for more information.','updraftplus').'</a></p></div>';
128
+ }
129
+ add_action('all_admin_notices', 'updraftplus_incomplete_install_warning');
130
+ } else {
131
+
132
+ require_once(UPDRAFTPLUS_DIR.'/class-updraftplus.php');
133
+ $updraftplus = new UpdraftPlus();
134
+ $updraftplus->have_addons = $updraftplus_have_addons;
135
+
136
+ if (!$updraftplus->memory_check(192)) {
137
+ // Experience appears to show that the memory limit is only likely to be hit (unless it is very low) by single files that are larger than available memory (when compressed)
138
+ # Add sanity checks - found someone who'd set WP_MAX_MEMORY_LIMIT to 256K !
139
+ if (!$updraftplus->memory_check($updraftplus->memory_check_current(WP_MAX_MEMORY_LIMIT))) {
140
+ $new = absint($updraftplus->memory_check_current(WP_MAX_MEMORY_LIMIT));
141
+ if ($new>32 && $new<100000) {
142
+ @ini_set('memory_limit', $new.'M');
143
+ }
144
  }
145
  }
146
+
147
  }
148
 
149
+ // Do this even if the missing files detection above fired, as the "missing files" detection above has a greater chance of showing the user useful info
150
+ if (!class_exists('UpdraftPlus_Options')) include_once(UPDRAFTPLUS_DIR.'/options.php');