PluginProbe ʕ •ᴥ•ʔ
UpdraftPlus: WP Backup & Migration Plugin / 1.26.4
UpdraftPlus: WP Backup & Migration Plugin v1.26.4
1.26.4 1.26.3 1.9.19 1.9.25 1.9.26 1.9.30 1.9.31 1.9.32 1.9.4 1.9.40 1.9.41 1.9.42 1.9.43 1.9.44 1.9.45 1.9.46 1.9.5 1.9.50 1.9.51 1.9.60 1.9.62 1.9.63 1.9.64 1.11.12 1.4.8 1.11.15 1.4.9 1.11.17 1.5.16 1.11.18 1.5.20 1.11.2 1.5.21 1.11.20 1.5.22 1.11.23 1.5.5 1.11.24 1.5.6 1.11.25 1.5.7 1.11.26 1.5.8 1.11.27 1.5.9 1.11.28 1.6.1 1.11.3 1.6.17 1.11.4 1.6.2 1.11.5 1.6.46 1.11.8 1.7.0 1.11.9 1.7.1 1.12.0 1.7.18 1.12.1 1.7.20 1.12.12 1.7.3 1.12.13 1.7.34 1.12.15 1.7.35 1.12.17 1.7.39 1.12.2 1.7.40 1.12.20 1.7.41 1.12.23 1.8.1 1.12.24 1.8.11 1.12.25 1.8.12 1.12.28 1.8.13 1.12.29 1.8.2 1.12.30 1.8.5 1.12.32 1.8.8 1.12.34 1.9.0 1.12.35 1.9.13 1.12.37 1.9.15 1.12.39 1.9.17 1.12.4 1.12.40 1.12.6 1.13.1 1.13.11 1.13.12 1.13.15 1.13.16 1.13.2 1.13.3 1.13.4 1.13.5 1.13.6 1.13.7 1.13.8 1.13.9 1.14.10 1.14.11 1.14.12 1.14.13 1.14.2 1.14.3 1.14.4 1.14.5 1.14.7 1.14.9 1.15.0 1.15.2 1.15.3 1.15.5 1.15.6 1.15.7 1.16.0 1.16.10 1.16.11 1.16.12 1.16.13 1.16.14 1.16.15 1.16.16 1.16.17 1.16.20 1.16.21 1.16.22 1.16.23 1.16.24 1.16.25 1.16.26 1.16.28 1.16.29 1.16.32 1.16.34 1.16.35 1.16.36 1.16.37 1.16.4 1.16.40 1.16.41 1.16.42 1.16.43 1.16.44 1.16.45 1.16.46 1.16.47 1.16.48 1.16.49 1.16.5 1.16.50 1.16.51 1.16.53 1.16.55 1.16.56 1.16.59 1.16.6 1.16.60 1.16.61 1.16.62 1.16.63 1.16.64 1.16.65 1.16.66 1.16.67 1.16.68 1.16.69 1.16.7 1.16.8 1.16.9 1.2.0 1.2.1 1.2.10 1.2.11 1.2.12 1.2.14 1.2.15 1.2.16 1.2.17 1.2.19 1.2.2 1.2.20 1.2.24 1.2.25 1.2.26 1.2.27 1.2.28 1.2.29 1.2.3 1.2.30 1.2.31 1.2.33 1.2.35 1.2.36 1.2.38 1.2.39 1.2.4 1.2.40 1.2.41 1.2.42 1.2.43 1.2.44 1.2.45 1.2.46 1.2.5 1.2.7 1.2.8 1.2.9 1.22.1 1.22.10 1.22.11 1.22.12 1.22.14 1.22.15 1.22.16 1.22.17 1.22.18 1.22.19 1.22.20 1.22.21 1.22.22 1.22.23 1.22.24 1.22.3 1.22.4 1.22.5 1.22.6 1.22.7 1.22.8 1.22.9 1.23.1 1.23.10 1.23.11 1.23.12 1.23.13 1.23.15 1.23.16 1.23.2 1.23.3 1.23.4 1.23.5 1.23.6 1.23.7 1.23.8 1.23.9 1.24.1 1.24.10 1.24.11 1.24.12 1.24.2 trunk 1.24.3 0.7.4 1.24.4 0.7.7 1.24.5 0.8.28 1.24.6 0.8.29 1.24.7 0.8.30 1.24.8 0.8.31 1.24.9 0.8.32 1.25.1 0.8.33 1.25.2 0.8.36 1.25.3 0.8.37 1.25.5 0.8.50 1.25.6 0.8.51 1.25.7 0.9.1 1.25.8 0.9.10 1.25.9 0.9.11 1.26.1 0.9.12 1.26.2 0.9.2 1.3.10 0.9.20 1.3.12 0.9.21 1.3.14 0.9.22 1.3.15 1.0.10 1.3.17 1.0.11 1.3.18 1.0.12 1.3.19 1.0.15 1.3.2 1.0.16 1.3.20 1.0.18 1.3.22 1.0.20 1.3.23 1.0.3 1.3.24 1.0.4 1.3.25 1.0.5 1.3.3 1.0.6 1.3.4 1.0.7 1.3.6 1.0.8 1.3.7 1.0.9 1.3.8 1.1.0 1.3.9 1.1.10 1.4.0 1.1.11 1.4.10 1.1.12 1.4.11 1.1.13 1.4.12 1.1.14 1.4.13 1.1.15 1.4.14 1.1.16 1.4.15 1.1.17 1.4.2 1.1.2 1.4.27 1.1.3 1.4.28 1.1.5 1.4.29 1.1.6 1.4.30 1.1.8 1.4.4 1.1.9 1.4.48 1.10.1 1.4.5 1.10.3 1.4.6 1.11.1 1.4.7
updraftplus / readme.txt
updraftplus Last commit date
central 3 weeks ago css 3 weeks ago images 1 month ago includes 3 weeks ago js 3 weeks ago languages 3 weeks ago methods 3 weeks ago templates 1 month ago vendor 3 weeks ago SECURITY.md 1 year ago admin.php 3 weeks ago backup.php 3 weeks ago changelog-old.txt 2 years ago class-updraftplus.php 3 weeks ago example-decrypt.php 1 month ago index.html 4 years ago options.php 3 weeks ago readme.txt 3 weeks ago restorer.php 3 weeks ago updraftplus.php 3 weeks ago
readme.txt
2162 lines
1 === UpdraftPlus: WP Backup & Migration Plugin ===
2 Contributors: Backup with UpdraftPlus, DavidAnderson, pmbaldha, DNutbourne, aporter, bcrodua
3 Tags: backup, database backup, wordpress backup, cloud backup, migration
4 Requires at least: 3.2
5 Tested up to: 7.0
6 Stable tag: 1.26.4
7 Author URI: https://updraftplus.com
8 Donate link: https://david.dw-perspective.org.uk/donate
9 License: GPLv3 or later
10
11 Backup, restore or migrate your WordPress website to another host or domain. Schedule backups or run manually. Migrate in minutes. Reliable and easy to use.
12
13 == Description ==
14
15 <a href="https://updraftplus.com">The UpdraftPlus Backup & Migration Plugin</a> is trusted by the WordPress community to backup, restore and migrate their WordPress websites. UpdraftPlus is actively installed on more than 3 million websites around the world.
16
17 = Backup with UpdraftPlus =
18
19 UpdraftPlus is the world’s highest ranking and most popular scheduled backup and migration plugin. Backup to your preferred storage location and restore in just three clicks.
20
21 Backup to Dropbox, Google Drive, Amazon S3 (or compatible), Rackspace Cloud, FTP, DreamObjects, Openstack Swift or email.
22
23 The paid version also allows you to backup to Microsoft OneDrive, Microsoft Azure, Google Cloud, Backblaze B2, SFTP, SCP, pCloud, WebDAV or UpdraftVault, our integrated storage option for UpdraftPlus.
24
25 Backup manually or schedule to run every 2, 4, 8 or 12 hours, daily, weekly, monthly or fortnightly.
26
27 = Restore with UpdraftPlus =
28
29 Your WordPress website is vulnerable. Your site may get hacked. Something could go wrong with an update or your server could crash. You might need to reverse a change made or a mistake caused by human error.
30
31 Whatever the reason, you can restore your WordPress website in just a few clicks with UpdraftPlus. Choose which components to restore (e.g. plugins, themes, database etc.), click again to restore, then click again to return to the main screen.
32
33 = Migrate with UpdraftPlus =
34
35 It’s easy to migrate your WordPress website to another web host, server or domain with this free version of UpdraftPlus.
36
37 To migrate, simply download your database, plugins, themes etc. from the source site, then upload them into your destination site.
38
39 When migrating, a built-in search-and-replace engine identifies old strings and replaces these to reflect the new location. UpdraftPlus saves you time and reduces the risk of broken links or missing files associated with manual migrations.
40
41 = Why UpdraftPlus? =
42
43 Writing a reliable backup and migration plugin that ‘just works’ consistently across millions of different WordPress deployments is hard. UpdraftPlus is relied upon to do exactly that. We’re trusted and actively deployed on more websites around the world than any other WordPress backup and migration plugin.
44
45 UpdraftPlus:
46
47 * Backs up, migrates and restores
48 * Offers a huge number of remote storage locations
49 * Allows you to schedule backups, so you can ‘set and forget’
50 * Is comprehensive and easy to use
51 * Is proven to work on over 3 million sites.
52
53 [vimeo https://vimeo.com/154870690]
54
55 = UpdraftPlus Premium =
56
57 The free version of UpdraftPlus will back up and migrate your website perfectly well. However if you need more features and options you can purchase our Premium version.
58
59 Backup and Migrate with UpdraftPlus Premium, and:
60
61 * Get automatic backups before updates. Restore the very latest version if a WordPress or plugin update breaks your site.
62
63 * Backup Incrementally. Changes are added to the master, saving server resources vs repeatedly backing up in full.
64
65 * Get more remote storage options including Microsoft OneDrive, SFTP, Microsoft Azure, WebDAV, Google Cloud, SCP, Backblaze and pCloud.
66
67 * Get 1GB of integrated storage with UpdraftVault for 99.999% reliability, redundancy and scalability.
68
69 * Get more control over how many backups are stored in a specified interval.
70 Restore from other backup plugins including BackWPup, BackupWordPress, Simple Backups and more.
71
72 * Run backups at set times e.g. during periods of low traffic.
73
74 * Backup to more than one location for added protection.
75
76 * Get detailed reports. Includes cryptographic checksums so you can verify the integrity of the backup files and more.
77
78 * Get Premium migration. Migrating to the destination site is more direct and can be done from the source site.
79
80 * Get Multisite / multi-network compatibility.
81
82 * Backup non-WP files and databases e.g. tables belonging to your e-commerce store or customisations to WordPress core.
83
84 * Get database encryption.
85
86 * Manage your backups and migrations from the WP-CLI.
87
88 * Get Premium Support.
89
90 Find out more <a href="https://updraftplus.com/comparison-updraftplus-free-updraftplus-premium/">on our comparison page</a>. UpdraftPlus Premium is available for purchase <a href="https://updraftplus.com/shop/">here</a>.
91
92 = Managing multiple websites? =
93
94 UpdraftCentral is a powerful remote control dashboard for WordPress that allows you to manage your backups, as well as updates, users, pages, posts, plugins and themes from one central location. Choose between:
95
96 * <a href="https://wordpress.org/plugins/updraftcentral/#description/">UpdraftCentral</a> (free, self-hosted)
97 * <a href="https://updraftplus.com/shop/updraftcentral-premium/">UpdraftCentral Premium</a> (paid-for, self-hosted)
98 * <a href="https://updraftplus.com/shop/updraftcentral-dashboard/">UpdraftCentral Cloud</a> (paid-for, fully-hosted)
99
100 Optimize your sites centrally by combining the power of WP-Optimize and UpdraftCentral or manage your backups centrally by combining the power of UpdraftPlus with UpdraftCentral.
101
102 = Need to create a temporary clone of your site? =
103
104 UpdraftClone makes it quick and easy to create a temporary sandbox for changes you want to try out. Simply select the versions of WordPress and PHP that you want, and we’ll do the rest. <a href="https://updraftplus.com/shop/updraftclone-tokens/">More about UpdraftClone</a>
105
106 = The full suite of plugins from Team Updraft and friends =
107
108 * <a href="https://updraftplus.com">UpdraftPlus</a>.
109 <b>Backup, migrate and restore.</b> Rated 5* on the plugin directory and trusted by more than 3 million WordPress website owner
110
111 * <a href="https://getwpo.com">WP-Optimize</a>.
112 <b>Clean the database, compress images and caching.</b> Optimize your WordPress website. 5* user rating. 1 million + active installs.
113
114 * <a href="https://aiosplugin.com">All-In-One Security (AIOS)</a>.
115 <b>Secure your WordPress website.</b> Comprehensive, feature rich and easy to use. 5* user rating and 1 million + active installs.
116
117 * <a href="https://wpovernight.com">WP Overnight</a>.
118 <b>Quality Extensions for your WooCommerce store.</b> 5* rated invoicing, order and product management, customer management solutions and more.
119
120 * <a href="https://easyupdatesmanager.com">Easy Updates Manager</a>.
121 <b>Take control of updates.</b> Lots of features for free, and a Premium version with even more - over 300,000 users.
122
123 * <a href="https://www.internallinkjuicer.com">Internal Link Juicer</a>.<b>Boost your SEO.</b> Automate internal links within your WordPress website. Save time and rank higher in the search engines.
124
125 For other useful, free plugins see <a href="https://profiles.wordpress.org/davidanderson/#content-plugins">our lead developer's profile, here</a>.
126
127 = Are you multilingual? Can you translate? =
128
129 Do you want to help people that speak your language to backup, migrate and restore their WordPress websites?
130
131 The UpdraftPlus backup, migration and restoration plugin is ready and waiting. The translation process is easy, and web-based – please go here for instructions: https://updraftplus.com/translate/.
132
133 Or, if you’re already an expert WordPress translator, 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().
134
135 Many thanks to our existing translators.
136
137
138
139 == Frequently Asked Questions ==
140
141
142 = How do I install the UpdraftPlus backup & migration plugin? =
143
144 Here are the installation guidelines from our [YouTube channel](https://www.youtube.com/watch?v=7ReY7Z19h2I) or from [our website](https://updraftplus.com/download/).
145
146 = What if I have a problem / need support ? =
147
148 If you’re struggling to backup, migrate or restore there’s help available.
149
150 Search existing topics on the WordPress support forum or post a new one. Our support and development teams check and respond to queries everyday.
151
152 UpdraftPlus Premium customers can log a ticket directly with our support and development teams via the [UpdraftPlus support hub](https://updraftplus.com/support/).
153
154 Before you get in touch, please ensure that you have read through our [FAQs](https://updraftplus.com/frequently-asked-questions) and that you’ve updated to the latest release of our plugin.
155
156 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.
157
158 To find the backup log: there are links to download the logs on the UpdraftPlus settings page in the plugin - or you may be emailed it. Failing that, FTP into the directory wp-content/updraft and look for it there.
159
160 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. If you’re a programmer that can debug and send a patch, that’s even better.
161
162 = When it comes to migration, what does the premium plugin do that the free plugin can't? =
163
164 Migrating in the free plugin involves downloading the backups from the source site then uploading these to the destination site.
165
166 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.
167
168 Both free and Premium plugins include a built-in search-and-replace engine to replace old strings with the new location.
169
170 If migration is all you require, and for simple single site migrations the free plugin will likely be enough to meet your needs. If you have additional needs around backups e.g. the ability to backup before updates, if you require more remote storage locations or if you have a WordPress multisite then we recommend UpdraftPlus Premium for the additional benefits that it brings.
171
172 = 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? =
173
174 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.
175
176 == Changelog ==
177
178 The [UpdraftPlus backup blog](https://updraftplus.com/news/) is the best place to learn in more detail about any important changes.
179
180 N.B. Paid versions of UpdraftPlus Backup / Restore have a version number which is 1 higher in the first digit, and has an extra component on the end, but the changelog below still applies. i.e. changes listed for 1.16.32.x of the free version correspond to changes made in 2.16.32.x of the paid version.
181
182 = 1.26.4 - 07/May/2026 =
183
184 * FIX: In version 1.26.2, a regression prevented the backup schedule, including the day name or number, as well as backup entity exclusion rules, from being saved.
185 * TWEAK: Alert users who wrongly enter URLs instead of an actual hostname for SFTP and FTP remote storage.
186 * TWEAK: Updated DreamObjects endpoints by removing the deprecated objects-us-west-1, marking objects-us-east-1.dream.io as unavailable (Nov. 12th, 2025), and adding admin notices to inform users of this change.
187 * TWEAK: get_structured_data() now accepts params to avoid timeouts.
188
189 = 1.26.3 - 23/Apr/2026 =
190
191 * FEATURE: Implemented enhanced streaming extraction for large files during restoration to handle cases where the file size exceeds the PHP memory limit.
192 * FIX: Fix users role filter empty state shows generic “Failed to Fetch Data” error.
193 * FIX: Fixed backup failures on tables with invisible columns and large data volumes.
194 * FIX: Unable to uncheck all categories on post in UDC dashboard
195 * TWEAK: Added a new internal command to get given plugins' installation info.
196 * TWEAK: Ensure autobackup notice is always a string to prevent PHP 8.1+ deprecation in wp_kses()
197 * TWEAK: Fix the JS errors that occur when deleting the last generated UDC keys.
198 * TWEAK: Implemented adjustments for UI misalignment issues caused by the WordPress 7 visual design refresh across the admin dashboard. The plugin's interface now aligns correctly with the updated design standards.
199 * TWEAK: Prevent broken settings pages in other plugins in multisite when UpdraftPlus is active due to modified menu URLs.
200 * TWEAK: Update all links in the addons folder to use teamupdraft.com instead of updraftplus.com.
201 * TWEAK: Replaced esc_html_e() with esc_html__() where string concatenation was silently discarding the colon separator in SFTP connection failure message and noscript JavaScript warning notice
202 * TWEAK: Switched to native phpseclib API/function for Dropbox token decryption, replacing deprecated mcrypt_decrypt since PHP 7.1 and removed in PHP 7.2.
203 * TWEAK: Clear out PHP "Undefined offset" notice that occurred while restoring a backup of single site to multisite. It happened during the search-replace operation due to the absence of the users and usermeta tables.
204 * TWEAK: Enhance the unzip file function to handle more folder inclusion/exclusion
205 * TWEAK: Update all links in the methods folder to use teamupdraft.com instead of updraftplus.com.
206 * TWEAK: Add post status and date fields to get_posts API response for UDC
207
208 = 1.26.2 - 03/Mar/2026 =
209
210 * TWEAK: Added PHP 8.5 support to UpdraftClone
211 * TWEAK: Fix deprecation warnings in PHP 8.4 for the Dropbox integration
212 * TWEAK: Make abort backup warning icon responsive with percentage-based sizing
213 * TWEAK: Prevent the suppressed PHP warnings from being output in the backup and restore log on PHP 8.0+
214 * TWEAK: On a site where the site owner has restricted (super-)administrators (so that they can't restore backups), require a constant to first be set to use the HTTP debug tool for internal IP addresses.
215 * TWEAK: Update all links in the settings folder to use teamupdraft.com instead of updraftplus.com.
216 * TWEAK: When deleting backup sets created through a direct site-to-site migration, the 'Also delete from remote storage' checkbox is unnecessary.
217
218 = 1.26.1 - 19/Jan/2026 =
219
220 * FIX: Google Drive chunked uploads didn't resume from where it left off but started from the beginning resulting in file duplicates
221 * TWEAK: Add a WP-CLI command to register a product key (premium)
222 * TWEAK: Add product registration link on the premium version
223 * TWEAK: Fix JS error on UpdraftCentral Cloud connect modal.
224 * TWEAK: Fix grammatical error in the low disk space admin notice.
225 * TWEAK: Update links for better user experience
226 * TWEAK: Update the premium links on the settings page
227 * TWEAK: Update all links in the includes/notices/central folders to use teamupdraft.com instead of updraftplus.com.
228 * TWEAK: Upgrade the common-libs tag version
229
230 = 1.25.9 - 12/Nov/2025 =
231
232 * FIX: A regression that resulted in the list of tables within the "Database size" tools not being displayed, due to code refactoring implemented in version 1.25.8.
233 * TWEAK: Add function for returning Advanced Tools menu data in a structured format.
234 * TWEAK: Resolve regression in 1.25.2 which caused the admin notice "Not yet connected to licence" was linking to teamupdraft.com instead of the UpdraftPlus Premium/Extensions tab.
235 * TWEAK: Refactoring connection keys data function to deduplicate and read from a single source
236 * TWEAK: Restored the missing backup confirmation pop-up icon for older WordPress versions.
237 * TWEAK: Stripped unwanted HTML from the plain-text notice and added new lines after each sentences in the sale offer message.
238 * TWEAK: Update Black Friday seasonal sale URL/link
239 * TWEAK: Updated "Check our premium" and "Back up non-WP tables and external databases" URL links to avoid HTTP 404 (not found) errors.
240 * TWEAK: Update database charset detection to support both CHARSET= and CHARACTER SET syntax in SQL dumps
241 * TWEAK: Replaced deprecated (boolean) casting
242
243 = 1.25.8 - 07/Oct/2025 =
244
245 * FIX: A fatal error in UpdraftCentral when trying to manage posts when no posts exist.
246 * FIX: During a failure in the file copy process while restoring, a directory was created with the same name as the file, and the restoration process persisted when it ought to have been stopped
247 * FIX: PHP fatal error in WP CLI commands for listing or scanning existing backups on PHP 8.0+ after a rescan
248 * TWEAK: Add UpdraftCentral support to import_settings function with return values
249 * TWEAK: Add support for new Amazon AWS S3 regions
250 * TWEAK: Added Burst Statistics to the family plugin list
251 * TWEAK: Adjust the backup logic to recognize invisible columns, and when that occurs, use a query that explicitly specifies the required columns instead of relying on "SELECT *".
252 * TWEAK: Ensure the restore process terminates with an error when file copying/moving fails
253 * TWEAK: Improve the backup email report to better reflect the backup types and status.
254 * TWEAK: New endpoint for getting locked settings data for UpdraftCentral
255 * TWEAK: Perform a search and replace on __PHP_Incomplete_Class to make it work with unserialize() when object deserialization is not allowed.
256 * TWEAK: Refactoring site info section to deduplicate and read from single source
257 * TWEAK: Resolved a PHP warning triggered when uploading the plugin via the WP Plugins page — caused by translation functions (e.g. __()) being called too early.
258 * TWEAK: Some text was left out of the translation POT file, which meant that certain translator plugins and libraries could not find the text, making it impossible to translate.
259 * TWEAK: Update the db_size function to allow returning either data or html, depending on the argument that is passed in.
260
261 = 1.25.7 - 07/Aug/2025 =
262
263 * FIX: A regression for verifying the presence of old folders in the backup directory; old folders created during the restoration of the "Others" entity were not detected correctly.
264 * FIX: The per-backup lock entries were not removed, resulting in an accumulation of these entries in the database over time. (Includes clean-up of old entries).
265 * TWEAK: Add IDrive e2 and MEGA to the S3-Compatible storage list
266 * TWEAK: Internal function call to prevent a PHP 8.1 deprecation notice on fresh WP installs
267 * TWEAK: Add wp-staging to the default uploads exclusion list
268 * TWEAK: Add UpdraftCentral handler for site icon upload request.
269 * TWEAK: Added support for the database view dashicon in WordPress versions prior to 5.5.
270 * TWEAK: Include site icon information in the 'get_site_icon' response of the UpdraftCentral core module.
271 * TWEAK: Resolve the empty list issue on the backup email reports created by the UpdraftPlus free version
272 * TWEAK: The "Get every feature of UpdraftPlus Premium" box shouldn't be displayed after purchases got claimed/activated
273 * TWEAK: Remove seasonal (new year, summer, spring and plugin collection) sale notices
274 * TWEAK: Handle unsupported character set defined for table fields during database pre-restoration.
275 * TWEAK: Updated links in the Premium Extensions tab of the plugin’s admin menu page.
276
277 = 1.25.6 - 27/May/2025 =
278
279 * FIX: A regression that prevented the remote storage label from being updated
280 * FIX: A regression that could cause unintended behaviour when restoring special files
281 * FIX: A fatal error when executing a standalone php backup script with "do_action('updraft_backup_all')".
282 * FIX: Regression that caused certain features (e.g. PHP Info) to break due to a missing HTML attribute on the triggering element
283 * FIX: An issue that caused migration failure for sites using the Performance Lab plugin or other plugins implementing an object cache drop-in
284 * TWEAK: handle non fatal file rename failure during restore
285 * TWEAK: The automatic backup feature is now disabled by default on new installs
286 * TWEAK: return post status and formatted date from UDC post API
287 * TWEAK: Replace a call to unserialize() in the Dropbox storage library
288 * TWEAK: Validate the DreamObjects endpoint to ensure only expected DreamObjects enpoint formats can pass through.
289 * TWEAK: Position the "includes all tables not listed below" option at the beginning of the first known table in the DB restoration widget.
290 * TWEAK: Add a new default endpoint in DreamObjects along with UI to allow users to add custom endpoint in the format "s3.<region>.dream.io".
291 * TWEAK: The Azure Storage Service add-on now requires PHP 5.6 or higher to support the mandatory use of TLS 1.2, which will be enforced starting August 31, 2025.
292
293 = 1.25.5 - 17/Apr/2025 =
294
295 * FIX: A bug that prevented the Rackspace "Create new API user and container" dialog from opening.
296 * TWEAK: An HTTP header intended to terminate the browser's connection was incorrectly assigned a value that the header does not support.
297 * TWEAK: Ability to automatically choose the proper checkout page when the user is about to buy TeamUpdraft products from within the plugin
298 * TWEAK: Clear Divi theme CSS cache at the end of the restoration process
299 * TWEAK: Resolve PHP warning in pCloud addon when upgrading from free to premium version.
300 * TWEAK: Update error messages when the user fails to connect to their TeamUpdraft account on the 'Premium/Extensions' tab.
301
302 = 1.25.4 - 24/Mar/2025 =
303
304 * FIX: Regression in 1.25.3 - missing database encryption input field due to the use of the "wp_kses_post" function that doesn't allow "<input>" tag to be rendered
305 * TWEAK: Add new fields to UpdraftCentral handler
306
307 = 1.25.3 - 21/Mar/2025 =
308
309 * FIX: An issue that prevented an UpdraftClone backup from sending when attempting to boot an UpdraftClone from WP_CLI
310 * FIX: An issue that prevented changing the default UpdraftClone region when attempting to boot an UpdraftClone from WP_CLI
311 * TWEAK: The "x-amz-content-sha256" request header is now signed and included in the S3 signature version 4. Some S3-based providers mandate the signing of this header for accurate signature calculation.
312 * TWEAK: Introduce a new constant named "UPDRAFTPLUS_S3_EXCLUDE_SIGV4_CONTENT_SHA256_HEADER". This constant allows for the exclusion of the "x-amz-content-sha256" headers from being signed if desired; it accepts a boolean value, defaulting to false.
313 * TWEAK: Add 'noopener, noreferrer' window features to the Javascript's window.open() call to prevent the target page from changing content of the original page
314 * TWEAK: Favicon fetching feature for UpdraftCentral
315 * TWEAK: Minor tweak to "updates" module to include icons to plugin and screenshot url to theme update items
316 * TWEAK: New UpdraftCentral module for background fetching
317 * TWEAK: Revise the wording found in the expert settings regarding the deletion of local backup files
318 * TWEAK: Update seasonal notices
319 * TWEAK: Enhance the notifications to signify the introduction of other plugins that belong to the same plugin family
320 * TWEAK: To avoid CORS issues and ensure the UpdraftPlus plugin is functional and accessible via the UpdraftCentral dashboard, the hostname and/or domain origin is changed from updraftplus.com to teamupdraft.com.
321 * COMPATIBILITY: Resolved PHP deprecation warnings in lockadmin.php by eliminating the use of dynamic properties
322
323 = 1.25.2 - 26/Feb/2025 =
324
325 * FEATURE: Added a "Cron events" tab in the Advanced Tools section to check for the presence of the UpdraftPlus cron job.
326 * FIX: Resolve the issue of uploads to pCloud failing after a folder name change by resetting the "folderid" whenever the folder name is updated.
327 * TWEAK: Add site information for WooCommerce and HPOS support to the database backup header.
328 * TWEAK: Create a log entry when a bot verification page appears during the file upload in the migration procedure.
329 * TWEAK: Improve error message clarity for failed connection tests in migration.
330 * TWEAK: Include details in the backup log file about the status and availability of the proxy configured in the system.
331 * TWEAK: Update the Google library to support the WP_PROXY_HOST and WP_PROXY_PORT constants.
332 * TWEAK: Update the link for Onedrive and Azure app creation
333 * COMPATIBILITY: Got rid of PHP 8.4 deprecation messages caused by the E_STRICT constant usage
334
335 = 1.25.1 - 11/Jan/2025 =
336
337 * SECURITY: Fix a non-persistent reflected XSS vulnerability due to a missing nonce combined with missing sanitisation. This could allow an attacker, who persuaded you to click a personally-crafted link to your site's dashboard whilst you were logged in, to once run JavaScript code in your dashboard. Thanks to Asaf Mozes for finding and responsibly disclosing this issue.
338 * FIX: Prevent the restoration from failing when there is a 'sync-xhr=()' permission policy on the response header.
339 * FIX: Improve the approach of acquiring a suggested region for Amazon AWS S3 if a failure arises during the getBucketLocation() call, particularly when the XML response fails to provide a field for the suggested region - this resolves issues with regions (e.g. us-east-2) which recently changed their response behaviour
340 * TWEAK: Broaden the support to incorporate the "ap-southeast-4" region of Amazon AWS S3 and additional recently updated regions
341 * TWEAK: A regression in the paid version update checker to version 4.13.2, resulting in non-appearance of notices concerning subscription status or WP version compatibility.
342
343 = 1.24.12 - 23/Dec/2024 =
344
345 * FIX: The pre-restoration stage failed to properly address the tables that were to be excluded, which caused a logical error that misread the checked "include all tables not listed" option as an instruction to restore every table
346 * FIX: Update PHPSecLib library to version 2.0.48 which has the fixes for the "gmp_pow(): base and exponent overflow" on certain PHP versions and could cause backups to fail on the SFTP remote storage
347 * TWEAK: Complete the review and removal of calls to the unserialize() PHP function allowing class instantiation begun in 1.24.7. (The final removal involved a theoretical security defect, if your development site allowed an attacker to post content to it which you migrated to another site, and which contained customised code that could perform destructive actions which the attacker knew about, prior to you then cloning the site. The result of this removal is that some search-replaces, highly unlikely to be encountered in practice, will be skipped).
348 * TWEAK: Drop search and replace feature for PHP 5.2 users (to fulfil the preceding item)
349 * TWEAK: Tweak UpdraftCentral media module to add "has_image_editor" property to each media item
350 * TWEAK: On the restoration screen in a multisite configuration, the dropdown labeled "which site to restore" was covering other HTML elements, which caused some buttons to be positioned at the bottom instead of at the top
351 * TWEAK: Avoid deregistering jQuery-UI CSS if already printed by other plugins to prevent compatibility issues
352 * TWEAK: In the context of database restoration, the execution of LOCK and/or ALTER SQL statements must be avoided for any tables that are part of the "skipped tables" list
353 * TWEAK: openssl_free_key() is only needed on PHP < 8
354 * TWEAK: Various coding style changes to comply with "Plugin Check" rules
355
356 = 1.24.11 - 15/Nov/2024 =
357
358 * TWEAK: Do not request drive.readonly scope on Google Drive connections, due to Google's app permissions review (unannounced and requires us to create a Youtube video for their review process) - this means that (until the review completes) new connections to Google Drive can only access backups created by UpdraftPlus directly, and not backups which you manually upload to Google Drive. This restores the ability to make new connections to Google Drive.
359 * TWEAK: Adjustment of the UpdraftPlus_S3_Compat class to preserve compatibility with the external UpdraftPlus AWS SDK plugin (https://github.com/DavidAnderson684/updraftplus-aws-sdk).
360
361 = 1.24.9 - 14/Nov/2024 =
362
363 * FIX: A regression in 1.24.8 when handling restoration of wp-config.php
364 * TWEAK: The changes in handling of loading text domains in 1.24.8 did not cover most cases
365 * TWEAK: Introduce the "updraftplus_use_builtin_wpcore_restoration" filter which can be used to restore WP-Core entity using a different WP-Core restoration mechanism especially in a case that the admin-ajax.php file couldn't be deleted during the restoration
366
367 = 1.24.8 - 13/Nov/2024 =
368
369 * TWEAK: Add descriptions for the 'Clone Package' dropdown when creating a clone.
370 * TWEAK: Move the "load_plugin_textdomain" call from being called through "plugins_loaded" action to being called via "init" action
371 * TWEAK: Update the log message to specify that backup files are marked as "processed" when no remote storage is selected, and as "uploaded" when remote storage is selected.
372 * TWEAK: Some code tidying in the restore class
373
374 = 1.24.7 - 04/Nov/2024 =
375
376 * TWEAK: Include the .part file extension into the cleanup list, guaranteeing that files associated with this extension are regularly deleted from the backup directory
377 * TWEAK: The update functionalities in the WordPress plugin information box (6.5 and later) have been adjusted to stop updates from taking place in the same window, ensuring that the "auto-backup before update" dialog appears as intended
378 * TWEAK: Add customized "unserialized" method into the UpdraftPlus class which can handle the use of the "options" argument or its absence when running across different PHP versions
379 * TWEAK: Add the UPDRAFTPLUS_SEND_UNWRITABLE_BACKUP_DIRECTORY_EMAIL constant to disable the sending of unwritable backup directory emails to users.
380 * TWEAK: Clearer notifications to users regarding unconfigured remote storage settings and/or the selection of remote storage that are not part of their UpdraftPlus version
381 * TWEAK: During the resumption of OneDrive’s chunk uploads, the authorisation header and bearer token should not be included as it may lead to an unauthenticated error due to a different upload URL.
382 * TWEAK: Implement code to enable automatic activation of the UpdraftPlus plugin during the migration process from a multisite setup to a standalone site
383 * TWEAK: In a multisite environment, ensure that users can access the UpdraftPlus plugin page even in the absence of the WP_ALLOW_MULTISITE constant
384 * TWEAK: UpdraftClone now supports PHP 8.4
385 * TWEAK: Prevent a potential PHP deprecation notice when zip creation fails
386
387 = 1.24.6 - 25/Sep/2024 =
388
389 * TWEAK: In 1.24.5, the browser title wrongly displayed as "UpdraftPlus" when accessing an unrelated plugin page using the main menu.
390
391 = 1.24.5 - 24/Sep/2024 =
392
393 * FIX: Incorrect regular expression for DigitalOcean Spaces endpoint
394 * FIX: CSS conflicts with the LearnDash LMS Instructor Role Add-on plugin which caused some UI elements to disappear
395 * TWEAK: Reorganize UpdraftPlus in left-hand menu and rename it to "UpdraftPlus"; to disable it, follow this guide: https://updraftplus.com/new-location-of-updraftplus-in-the-wordpress-dashboard/
396 * TWEAK: Add span wrapper to UpdraftCentral connection failed message
397 * TWEAK: Add the "Go here to complete your settings" link into the appropriate admin notice that when clicked will jump to the UpdraftVault configuration if no settings are specified.
398 * TWEAK: Adjust regex patterns that didn't match some temporary files, causing them to not be automatically removed
399 * TWEAK: After a restoration, clicking "Delete old folders" will also remove the wp-config-pre-ud-restore-backup.php file
400 * TWEAK: On the settings page/tab; prevent the floating "Save changes" button from getting clicked multiple times and/or sending multiple AJAX requests
401 * TWEAK: Remove pCloud from the add-ons list on the "Premium / Extensions" tab (there is no change in its availability)
402 * TWEAK: Renamed wp-config-backup.php to wp-config-pre-ud-restore-backup.php to clarify its purpose as a backup file created before restoring WordPress core entities, and it will only be generated if the user does not select the "Over-write wp-config.php" option during restoration, as the previous name was too generic and could cause confusion
403 * TWEAK: The popup modal for automatic plugin updates fails to retain the backup checkbox selection when the "remember" option is enabled in a Multisite environment.
404 * TWEAK: Updated autobackup selector to resolve issues caused by the missing "update-link" class in WPForms Pro plugin
405
406 = 1.24.4 - 2/Jul/2024 =
407
408 * FIX: Case-sensitive issue of bit field type names in a table.
409 * FIX: Resolved issue where backup files could not be deleted from remote storage when either the root directory was active or no directory was specified in the OneDrive configuration form.
410 * FIX: When users attempt to update a plugin using the "View Version x.x.x Details" link instead of choosing "Update Now," the plugin is successfully updated; however, the UI incorrectly displays an "Update Failed" message
411 * FIX: Conflict with the Gravity Forms plugin when there was an older version of jQuery UI presented on the "Installed Plugins" page.
412 * TWEAK: Ensure compliance with Google Granular Consent and check for required permissions during storage access authorisation of Google Drive and Google Cloud
413 * TWEAK: Prevent PHP warning and deprecation messages after completing access authorisation to Google Drive storage.
414 * TWEAK: Prevent PHP warning when Dropbox remote storage has been authenticated and the page is refreshed.
415 * TWEAK: Added filter updraftplus_working_dir_localpath to allow temporary unzip path to be modified by developers
416 * TWEAK: Modify the displayed title of the plugin from "WordPress Backup & Migration Plugin" to "WP Backup & Migration Plugin" as required by the plugin directory team
417 * TWEAK: Parse certain php events and log proper error messages
418
419 = 1.24.3 - 30/Apr/2024 =
420
421 * FIX: Regression in 1.23.16 for improving logs which then caused incorrect_offset error reported by Dropbox wasn't properly handled.
422 * TWEAK: The UpdraftVault remote storage can handle Wasabi as well as Amazon S3 storage in the background.
423 * TWEAK: Fix WP_Theme_JSON_Resolver::theme_has_support deprecation warning for UpdraftCentral
424 * TWEAK: Prevent "PHP Warning: Undefined property: UpdraftPlus_BackupModule_pcloud::$description" during rescan remote storage.
425 * TWEAK: Prevent PHP deprecation warnings during database backups when encountering null values in bit field types.
426 * TWEAK: Show a warning message when the WP_ACCESSIBLE_HOSTS constant is defined and updraftplus.com is not permitted by its value
427 * TWEAK: Update notices
428 * TWEAK: Split multiple sentences into separate translation function calls.
429 * TWEAK: Trim spaces from S3-Compatible (Generic) endpoint.
430
431 = 1.24.2 - 26/Mar/2024 =
432
433 * FIX: The "Continue restoration" and "Dismiss" buttons on the unfinished restoration dialog were not responsive to being pressed due to a recent regression
434 * FIX: Conflict with other plugins due to different version of third party library (Guzzle) and the composer autoload.php was called too early
435 * FIX: Undefined "NET_SCP_LOCAL_FILE" constant when SCP was in use for the SFTP/SCP remote storage
436 * TWEAK: Add compatibility fields when returning plugins and themes to UpdraftCentral
437 * TWEAK: Due to issues in some cURL versions 7.x in handling HTTP/2 connections, all HTTP connections to the OneDrive API are now forced to use HTTP/1.1 version, on cURL versions after 7.61 and before 8.0. Also, a constant named UPDRAFTPLUS_ONEDRIVE_CURL_HTTP_VERSION can be set in the wp-config.php file to change the default HTTP version to another preferred version
438 * TWEAK: Adjust margin to fix broken UI for the 'View logs' button on backups.
439 * TWEAK: Ensure all "SET SQL_MODE" statements in the database backup file are internally handled and are subjected only to a restoration outside UpdraftPlus plugin
440 * TWEAK: Prevent PHP 8.2 coding style deprecation notices in the autobackup addon
441 * TWEAK: In the context of OneDrive's chunk upload, authorisation header and bearer token should not be included during upload session as it may lead to 401 HTTP status due to different upload URL
442 * TWEAK: Remove default value for updraftplus_https_to_http_additional_warning and updraftplus_http_to_https_additional_warning filters.
443 * TWEAK: Set the SQL_MODE to 'NO_AUTO_VALUE_ON_ZERO' in the database backup file.
444 * TWEAK: Seasonal notice content update for 2024
445 * TWEAK: During the operations that require phpseclib, include the composer autoload.php only when the phpseclib is really needed
446
447 = 1.24.1 - 21/Feb/2024 =
448
449 * FEATURE: Implement Backblaze Object Lock support (Premium version)
450 * FIX: The email backup and basic report setting didn't work causing notification email confirming backup status couldn't be delivered to admin's email address (free version)
451 * FIX: Fix WP-Optimize premium discovery for UpdraftCentral
452 * FIX: Regression in 1.23.16 for correcting calls to translation functions which then caused some HTML attributes to be empty
453 * FIX: Restoring backup sets via Migrate/Clone tab had caused all associated backup entities being downloaded immediately ignoring user preferences about the entities they wanted to restore
454 * FIX: Third-party library conflict (phpseclib) with WP All Import Pro and AIO WP Migration plugins that caused failure in testing SFTP credentials and backing up to the SFTP remote storage
455 * FIX: Restore compatibility with WordPress multisite running on versions < 4.9 caused by use of function not present before then
456 * TWEAK: Add new translation entries for UpdraftCentral
457 * TWEAK: Got rid of PHP 8.2 deprecation messages caused by a null value being passed to the htmlspecialchars() function and creation of dynamic property
458 * TWEAK: Got rid of PHP 8.3 deprecation messages caused by calling get_class() without arguments.
459 * TWEAK: Refactor methods in UpdraftPlus_Database_Utility class
460 * TWEAK: Send an email if the backup directory is not writable.
461 * TWEAK: Add and set the `filename_only` parameter to reduce search times when looking for specific backup files in Dropbox.
462 * TWEAK: Autoload PHP secure communication library (phpseclib) in a better way that would prevent already-loaded phpseclib classes (by other plugin) from being used in certain operations
463 * TWEAK: Add updraftplus_backup_db_header_append filter to allow site owners to include arbitrary content in their database backup header
464
465 = 1.23.16 - 23/Dec/2023 =
466
467 * TWEAK: Added demo link for the family plugin in advertisement
468 * TWEAK: Removed https / http prefix from s3generic endpoints
469 * TWEAK: Resolve PHP 8.0 compatibility with ob_implicit_flush function
470 * TWEAK: Dropbox error logs improvement
471 * TWEAK: As required by the wordpress.org plugin team, all UpdraftPlus news is forbidden to be displayed in the "WordPress News" section of the dashboard for users of the free plugin even if consent is first given.
472 * TWEAK: Fix some incorrect calls to translation functions
473
474 = 1.23.14 - 30/Nov/2023 =
475
476 * FIX: Resolved Google Cloud remote storage authentication flow
477 * TWEAK: Changed updraftvault links functionality to open in different tab
478 * TWEAK: Clarify significance of warnings in report emails
479 * TWEAK: Make the news-consent's layer fit with the confirmation text thus removing empty space that can reveal some of the UpdraftPlus news
480 * TWEAK: Declare a shim "php_uname" function when it's found to be undefined to prevent a fatal error in the phpseclib library (which calls it)
481
482 = 1.23.13 - 22/Nov/2023 =
483
484 * FIX: An issue that prevented incremental backups from running via WP-CLI or Cron when the option to backup mu-plugins was enabled but no mu-plugins existed
485 * FIX: OneDrive remote storage authentication was giving the error "Invalid input."
486 * FIX: The option to back up additional, user-chosen files (i.e. the morefiles entity) was no longer present in the UI
487 * TWEAK: Remove unused "migrator-lite.php" string during search and replace operations
488 * TWEAK: Replace remaining hardcoded text domain with UPDRAFTCENTRAL_TEXT_DOMAIN placeholder within the central folder
489 * TWEAK: LiteSpeed admin dashboard warning is now displayed upon completion of migration on the destination site, even after dismissing the message on the source site.
490 * TWEAK: Do not show UpdraftPlus news in the WordPress events and news widget section without first gaining user consent
491 * TWEAK: Change order of checks when seeing if cPanel is present/accessible for asking about disk quota in order to prevent unwanted an PHP notice when safe_mode is active
492 * TWEAK: Prevent potential fatal error if something has modified an updates check's 'translation' property to be invalid before passing on to UpdraftPlus
493 * TWEAK: Update bundled cacert.pem file
494
495 = 1.23.12 - 08/Nov/2023 =
496
497 * FIX: Issue that prevented some database restores from completing due to a change in wpdb in WordPress 6.4
498 * TWEAK: Replace Javascript onchange event with oninput event to detect changes made for HTML <input> tags on the settings page, also to add <textarea> to the event handler so that unsaved changes can be detected
499
500 = 1.23.11 - 03/Nov/2023 =
501
502 * SECURITY: Fix a vulnerability which could, if you had Google Drive storage enabled, and if an attacker targetted a logged-in administrator on your site and persuaded them to access a specific URL that the attacker creates, add the attacker's own Google Drive account to the saved storage methods. Thanks to Nicolas Decayeux of Patrowl for finding and disclosing this issue.
503 * FEATURE: Add JSTree for Google Drive to select existing folder
504 * FEATURE: The "Must-use plugins" backup entity can be backed up and restored separately in a normal WordPress site
505 * FIX: OneDrive folder case sensitivity issue (successfully uploaded backup files to the remote storage but failed in pruning old backup files due to different letter capitalisation; also happened in manual deletions)
506 * FIX: When two instances of WebDav remote storage were sequentially added in the Premium version, filling some fields of the latest instance would break the WebDav URL of the previous instance
507 * TWEAK: Update phpseclib library from version 1 to 2. As previously advised, this also means that these features (Database Encryption, Dropbox & SFTP/SCP remote storage, and UpdraftCentral key creations) will no longer be available and can cause a fatal error when running on PHP 5.2
508 * TWEAK: Add a link to Trustpilot in the review prompt
509 * TWEAK: Added a warning message when the WP_HTTP_BLOCK_EXTERNAL is defined and set to true
510 * TWEAK: Added the "Copy to clipboard" button under the self-hosted central option
511 * TWEAK: File size is shown when pressing on the backup entity
512 * TWEAK: Fix the restore dialog to not display "plugins" checkbox when only there's "mu-plugins" entity
513 * TWEAK: Fixed PHP 8.2 deprecation messages caused by a null value being passed to the rtrim() function
514 * TWEAK: Resolve PHP deprecations for the dynamic property access by declaring the variables in the class
515 * TWEAK: Includes the plugin.php file path if "get_mu_plugins" function does not exist.
516 * TWEAK: Provide default options for function UpdraftPlus::backup_all()
517 * TWEAK: Add and call the `litespeed_finish_request()` function to ensure the HTTP connection made from the browser gets closed immediately without having to wait the process to complete thus leaving it run in the background
518 * TWEAK: Ensure no PHP "Class not found" is showing up during credentials testing
519 * TWEAK: Add type checking in UpdraftPlus::handle_url_actions() to prevent plugin conflicts causing PHP errors on PHP 8+
520
521 = 1.23.10 - 05/Sep/2023 =
522
523 * TWEAK: New S3 signature version setting is added to the S3-Compatible (Generic) configuration form, giving an opportunity for the user to choose which signature version to use (SigV2 or SigV4)
524 * TWEAK: Enable PHP 8.3 (see: https://stitcher.io/blog/new-in-php-83) support in UpdraftClone
525 * TWEAK: Adjust fread() sizes for better performance when uploading an archive via the widget
526
527 = 1.23.9 - 14/Aug/2023 =
528
529 * FIX: Fatal error of Uncaught ArgumentCountError when the UpdraftPlus settings page is browsed from an IP-adressed site (i.e. no hostname) on PHP 7.1+
530 * FIX: Incorrect caching mechanism such that when multiple Google Drive storage back-ends were in use (Premium feature), uploading to a storage would fail due to unmatched folder ID taken from a different storage instance
531 * TWEAK: Define class properties in UpdraftPlus_Addons_Migrator class for PHP 8.2 compatibility
532
533 = 1.23.8 - 08/Aug/2023 =
534
535 * FEATURE: Given the basic migration feature in the free plugin
536 * FIX: Content-MD5 and any V2-related headers were always included in the S3's V4 SignedHeaders even though the headers were not presented in a HTTP request
537 * FIX: Generating URL-encoded queries for a canonical request should have used a method/mechanism which encoded query values according to RFC 3986 (for consistency and for not breaking the code)
538 * FIX: Search / replace database not working on Admin dashboard > Settings > UpdraftPlus Backups > Advanced Tools > Search / replace database on PHP 8.2 due to stricter type checking
539 * FIX: A newly added subsite that was restored from a normal site to the multisite was not listed in the site list in the multisite
540 * FIX: Manual deletion of backup sets appeared to skip some files when multiple instance and/or remote storage were in use
541 * FIX: The SFTP remote storage stopped working in the UpdraftPlus 2.23.6 release. Reverted the change "TWEAK: Validate SFTP key field on credential test and before save"
542 * TWEAK: Add a warning in the log file if AWS connection fails and a TLSv1.2 connection test fails
543 * TWEAK: Add warning for user if only PclZip available
544 * TWEAK: Fix unable to switch tab when a plugin (wrongly) loads certain CSS onto UD's settings page
545 * TWEAK: Remove the word 'apparently' in the backup success message
546 * TWEAK: Update to latest phpseclib 1.0.X version (prevents deprecation notice on PHP 8.1+)
547 * TWEAK: Change "s3" property to "public" in UpdraftPlus_AWSRequest class for PHP 8.2 deprecation compatibility
548 * TWEAK: Fixed Missing/ broken links for the pCloud image in addons tab
549 * TWEAK: Buying UpdraftClone tokens through inline checkout
550 * TWEAK: Fixed Spelling errors in updraftplus repo
551 * TWEAK: Added save button at the top of setting tab content
552 * TWEAK: UpdraftCentral module now, by default, overwrites the same existing theme installed on the remote sites (if any), regardless of what version is currently installed or what version being uploaded and installed
553 * TWEAK: Define class properties in Updraft_Checkout_Embed class for PHP 8.2 deprecation compatibility
554 * TWEAK: Update the composer package yahnis-elsts/plugin-update-checker for PHP 8.2 compatibility
555 * TWEAK: Added username and email details for authenticated dropbox account in updraftplus settings
556 * TRANSLATIONS: Split sentences to make one sentence in any translation functions
557
558 = 1.23.7 - 04/Jul/2023 =
559
560 * FIX: When Dropbox returns an error, this error was not always correctly passed up to the logging layer
561 * FIX: Search / replace database not working on Admin dashboard > Settings > UpdraftPlus Backups > Advanced Tools > Search / replace database on PHP 8.2 due to stricter type checking
562 * FIX: The SFTP remote storage stopped working in the UpdraftPlus 2.23.6 release. Reverted the change "TWEAK: Validate SFTP key field on credential test and before save"
563 * TWEAK: Fixed Missing/ broken links for the pCloud image in addons tab
564 * TWEAK: Buying UpdraftClone tokens through inline checkout
565 * TWEAK: Prevent PHP warning during some migrations when no table list provided
566
567 = 1.23.6 - 19/Jun/2023 =
568
569 * FIX: Search / replace database not working on Admin dashboard > Settings > UpdraftPlus Backups > Advanced Tools > Search / replace database on PHP 8.2 due to stricter type checking
570 * TWEAK: Remove the incremental dropdown on incremental backup restore when the user selects only the database to restore
571 * TWEAK: Validate SFTP key field on credential test and before save
572 * TWEAK: Remove the unused UpdraftPlus_S3::getHttpUploadPostParams() method
573 * TWEAK: Attempt to workaround some web hosts' opcode cache producing incorrect error upon upgrade
574 * COMPATIBILITY: Fix pCloud deprecated warning in PHP 8.2
575 * COMPATIBILITY: Fix Google Cloud deprecated warning in PHP 8.2
576 * COMPATIBILITY: Fix Google Drive deprecated warning in PHP 8.2
577 * TWEAK: Fixed issue with cron jobs not clearing after wiping settings
578 * TWEAK: Added link to WP-Optimize in the database size tab in the advanced tools
579
580 = 1.23.4 - 16/May/2023 =
581
582 * SECURITY: Fixed a missing nonce combined with a URL sanitisation failure, which could lead to a targeted XSS opportunity (if an attacker persuades a logged-in administrator to both re-authorise their connection to a remote storage (e.g. Dropbox) and then to follow a link personally crafted for their site before re-authorising whilst logged in, he can then store a fixed JavaScript payload in the WP admin area (they would need a further route to use that ability to cause any damage). Because of the need for the administrator to co-operate in multiple steps, this attack is very unlikely (but you should of course still update).
583 * FIX: DigitalOcean S3-compatible storage does not work with disabled SSL entirely where possible settings.
584 * FIX: If there was an error or network connectivity issue on first attempt of uploading a plugin/theme file, then the second attempt of uploading the same file would make the file become corrupted thus resulting in installation failure.
585 * COMPATIBILITY: Suppress htmlspecialchars deprecation warnings on PHP 8.1
586 * COMPATIBILITY: Suppress some PHP 8.2 deprecation notices from use of ${} style variables, and others from use of dynamic properties
587 * TWEAK: Handle web hosting company setup that disabled pclose() but not popen()
588 * TWEAK: All HTTP requests to the Google Drive API now, by default, forces to use HTTP/1.1 version. Also, a constant named UPDRAFTPLUS_GDRIVE_CURL_HTTP_VERSION can be set in the wp-config.php file to change the default HTTP version to another preferred version
589 * TWEAK: Improve 'move' and 'copy' filesystem functions in restoring directories containing files to a different mount point/partition than where they reside
590 * TWEAK: Improve files pruning mechanism, by not repeating already-done ones when resuming deletions
591 * TWEAK: Improve the Handlebars templates of the Google Drive, Dropbox and UpdraftVault remote storage modules by taking PHP code out of them
592 * TWEAK: Improve widget layout when decrypting a backup
593 * TWEAK: Remove Bootstrap CSS in Restore Wizard and replace with Flexbox CSS
594 * TWEAK: Add multisite subsites header information to the database backup file that will be used for converting a network subsite to a standalone normal WordPress site
595 * TWEAK: Add the UpdraftPlus plugin slug header to the database backup file
596 * TWEAK: Include next-level-up directory path along with deleted folder's name when deleting a folder
597 * TWEAK: Update seasonal notices
598 * TWEAK: Make common logic for getting backup history from the database
599 * TWEAK: Remove usage of the file_get_contents() function from WebDAV remote storage without chunking upload
600 * TWEAK: Pass through some previously unhandled Dropbox error codes
601 * TWEAK: Added the "non-core" word to the WordPress database tables excluded warning.
602 * TWEAK: Remove WordPress core tables from the non-core WordPress database tables excluded list in restoration step 2
603 * TWEAK: When migrating the www site, the search replace will be performed in database tables on the non-www domain too, and vice versa
604
605 = 1.23.3 - 16/Mar/2023 =
606
607 * SECURITY: This release fixes an important security defect - please update. Full details: https://updraftplus.com/updraftplus-1-23-3-2-23-3-important-security-release/. Sites are affected if there are WordPress users (i.e. people who can login) who can reach the back-end (i.e. wp-admin) dashboard (but we recommend everyone updates in any case).
608
609 = 1.23.2 - 15/Mar/2023 =
610
611 * FIX: Automatic backups before updating a plugin, theme, or WP core were not working (regression in 1.23.1)
612 * FIX: A database backup couldn't be taken from WP-Optimize and All-In-One Security (AIOS) (regression)
613 * TWEAK: Add a user capabilities check when downloading a backup (this is not believed to have any security implications, as the download operation already requires knowledge of a further nonce that there is no mechanism for a non-administrator to obtain).
614 * TWEAK: Improve the Handlebars template of the UpdraftVault remote storage by taking PHP code out of it
615 * TWEAK: Prevent making a nonce available to logged-in users who could not manage UpdraftPlus (this did not give access to any unauthorised actions)
616 * TWEAK: Improve the Handlebars template of the UpdraftVault remote storage by taking PHP code out of it
617 * TWEAK: Improve the Handlebars template of the pCloud remote storage by taking PHP code out of it
618
619 = 1.23.1 - 08/Mar/2023 =
620
621 * FEATURE: Support Cloudflare R2 as a generic S3 storage provider (always use v4 signature)
622 * FEATURE: Added the ability to get an accurate row count for all tables in the advanced tools
623 * FEATURE: Expose an option in the UI to disable chunked uploading when using WebDAV remote storage (previously required a constant)
624 * FEATURE: Add the ability to anonymize WooCommerce order data when cloning a site
625 * FIX: An over-ride enforcing use of V4 signatures on Aliyuncs S3 storage was no longer working
626 * FIX: pCloud error handling in chunked uploading did not pass the error message up to the logging layer
627 * FIX: Backups started under WP-CLI could not backup the database only without any files
628 * FIX: Couldn't add any file/directory inclusion for "Other" entity due to access to one directory up from the current (ABSPATH) isn't permitted
629 * FIX: Atomic restore is not renaming a few tables when not restoring specific tables by using the filter `updraftplus_restore_this_table`.
630 * FIX: Sometimes the "delete old directories" notice displayed even though the actual `-old` directory didn't exist
631 * FIX: The restore point date time was incorrect in the restore screen when restoring the incremental backup, and the WordPress site has a non-GMT timezone set.
632 * TWEAK: Improve manual rescanning and deletion of backup sets by setting up a time limit to a value defined in UPDRAFTPLUS_SET_TIME_LIMIT constant to minimise chances of getting fatal error (maximum execution time exceeded)
633 * TWEAK: Add a filter updraftplus_mysqldump_arguments to allow changing of arguments passed to the mysqldump binary when that is being used
634 * TWEAK: Include PHP version in default S3 user agent to aid debugging
635 * TWEAK: Disable Gravatar on UpdraftClone
636 * TWEAK: Cleanup .list.tmp files when a cloud backup completes
637 * TWEAK: Use the function that lists our own cron schedules to simplify the way backup intervals are prepared and to avoid schedules mismatch
638 * TWEAK: Improve manual deletion of backup sets by setting up a time limit to a value defined in UPDRAFTPLUS_SET_TIME_LIMIT constant to minimise chances of getting fatal error (maximum execution time exceeded)
639 * TWEAK: Improve the Handlebars template of the S3-Compatible (Generic) remote storage by taking PHP code out of it
640 * TWEAK: Increase max_recursion value to 20 in class-search-replace.php
641 * TWEAK: Add a new function that lists our own cron schedules so that it can later be used as schedules sorting purpose also as a main source from which our schedules list is originated
642 * TWEAK: Display Google drive email address along with account holder name
643 * TWEAK: Fixed WebDAV PHP 8.1+ deprecated warnings
644 * TWEAK: Updated text message displayed on Web Server - Localhost UC Dashboard Key Creation.
645 * TWEAK: Use nonce in every part of a restoration process to prevent direct access that has allows an unwanted log file to be begun. On sites running on end-of-lifed PHP versions (<8.0) it was possible to read the beginning of the log file, causing an unintended information disclosure about the server environment, e.g. Apache version, PHP version and available memory (but current PHP versions are not vulnerable).
646 * TWEAK: Use nonce when starting a new restoration and strengthen the continuation process to prevent direct access that has the potential of being file and/or log abuse
647 * TWEAK: Improve the WebDAV storage module API in regard to the way it handles uploading and writing files
648 * TWEAK: Replace the word "Directory" with "Folder" in UI notices
649 * TWEAK: UpdraftVault: select storage class intelligently
650
651 = 1.22.25 - 16/Dec/2022 =
652
653 * FIX: Resolves a fatal error that occurred if a user had one specific add-on and not another (i.e. paid versions only)
654
655 = 1.22.24 - 14/Dec/2022 =
656
657 * FEATURE: Support PHP 8.2 in UpdraftClone
658 * FEATURE: pCloud protocol support (Premium)
659 * FIX: Add missing support for custom Dropbox app refresh tokens
660 * FIX: After sending email report, other emails that follow would contain leftover data from the previous email report
661 * FIX: Javascript hook that is used to show "Automatic backup before update" dialog box when pressing "Install Update Now" button on the WP Plugins page had made the same button on WP Updates page not respond to a press
662 * FIX: Potentially not storing the size of new files in the backup history
663 * FIX: Pressing "Rescan remote storage" using WebDAV can show an error message
664 * FIX: Prevent a fatal error when logging PHP events using the exported "central" folder on the remote site
665 * FIX: Prevent an error that occurs on WordPress 6.1 when managing and creating post/page from UpdraftCentral
666 * FIX: Prevent fatal error when rescanning if internal directory was unusable
667 * TWEAK: Ability to permanently dismiss Litespeed warning
668 * TWEAK: Add admin notice to inform the user to upgrade their PHP to version 5.3 or higher due to changes in phpseclib requirements in future releases
669 * TWEAK: Add "#[\ReturnTypeWillChange]" attribute to Google Drive API for suppressing PHP 8.1 deprecation notices
670 * TWEAK: Add the ability to anonymize personal data in the database backup when using migrator
671 * TWEAK: Advise users if files in the plugin are missing
672 * TWEAK: Discourage page caches from caching UpdraftClone intermediate pages
673 * TWEAK: "Dismiss from main dashboard" button sometimes doesn't work
674 * TWEAK: Fix missing FTP admin notices when clicking on other remote storage method
675 * TWEAK: Hive off the AWS S3 SDK into a separate plugin (UpdraftPlus now always uses its own, more lightweight, SDK) - https://github.com/DavidAnderson684/updraftplus-aws-sdk
676 * TWEAK: Improve the Handlebars template of the Amazon S3 remote storage by taking PHP code out of it
677 * TWEAK: Improve the Handlebars template of the DreamObjects remote storage by taking PHP code out of it
678 * TWEAK: Improve wording in plugin by removing ambiguous wordings
679 * TWEAK: Increase the Google Cloud (Premium) downloading minimum chunk size for faster downloads
680 * TWEAK: In Premium / Extensions tab add notices for AIOS and Easy Updates Manager
681 * TWEAK: Log the list of blocks that failed to re-assemble in Microsoft Azure.
682 * TWEAK: Make the Google Drive downloading algorithms adapt to available memory - cut the total download time by 2/3 in testing
683 * TWEAK: Prevent a PHP notice upon UpdraftClone startup
684 * TWEAK: Prevent deprecation notice on PHP 8+ if opening a zero-size zip file
685 * TWEAK: Replace the use of $_SERVER['SERVER_NAME'] variable with network_site_url() function because the array key is not defined in WP-CLI and might not be defined on some server-side cron tasks, resulting in a PHP log message
686 * TWEAK: Set a global context for $wp_file_descriptions context so that it gets assigned to correctly, preventing a subtle visual change in the theme editor
687 * TWEAK: Use built-in logging for WebDAV
688 * TWEAK: WP Rocket - disable CDN upon migration completion for multisite since key will be invalid
689
690 = 1.22.23 - 29/Sep/2022 =
691
692 * FIX: Fix "More Files" tracking on resumption
693 * FIX: Parse error when loading plugins and themes in UpdraftCentral. Error occurs when UpdraftPlus is installed in a system with PHP 5.6 or older.
694 * FIX: BinZip did not handle out-of-tree directory symlinks. These are now backed up as expected.
695 * FIX: When expired tokens occur during Vault uploads, reschedule and resume, to avoid incomplete pruning of backup history
696 * FIX: Inconsistent WebDAV host field behaviour where there are multiple WebDAV storage locations
697 * FIX: The Exclusion rule link text was broken when "uploads" and "wp-content" exclusion settings were initially in an unchecked state
698 * TWEAK: Create IAM call methods in UpdraftPlus_S3
699 * TWEAK: Add a select all / deselect all selector to the table list when restoring
700 * TWEAK: Do not write `SET @@GLOBAL.GTID_PURGED` statements
701 * TWEAK: Improve the upload after create status reporting in the progress widget
702 * TWEAK: If a symlink pointed to an inaccessible location, this was silently skipped when using ZipArchive; it now generates a warning.
703 * TWEAK: Cast the service list to an array in upload_button() to avoid a potential PHP error with PHP 8
704 * TWEAK: Quadruple size of buffer when reading from files for S3 chunks
705
706 = 1.22.22 - 16/Sep/2022 =
707
708 * FIX: Restrict the CSS scope for our jQuery to prevent conflicts
709 * FIX: UI bug when unable to download a database for restoration and then retrying before refreshing the page
710 * TWEAK: Add basic design to confirmation window when adding a site to UpdraftCentral
711 * TWEAK: Prevent a PHP coding deprecation warning on PHP 8.1
712 * TWEAK: Feedburner URLs now are case-sensitive
713 * TWEAK: Improve the Handlebars template of the Rackspace Cloud Files remote storage by taking PHP code out of it
714 * TWEAK: WP Rocket - disable CDN upon migration completion since key will be invalid.
715 * TWEAK: Improve the UpdraftClone user-visible feedback and logging on delay or failure conditions
716 * TWEAK: WebDAV refactor part 2: Eliminate the stream-wrapper layer
717
718 = 1.22.21 - 09/Sep/2022 =
719
720 * FIX: Infinite recursions/loops appeared to happen in restoration during the search-replace operation especially when some tables had a circular reference in their serialised data
721 * FIX: Prevent PclZip from restoring empty/corrupt archives
722 * FIX: Zip file sizes had ceased to be recorded in the backup history
723 * FIX: Fix fatal error when loading the "Advanced Tools" section for UpdraftCentral
724 * TWEAK: Log intermediate unzip errors before proceeding with different method
725
726 = 1.22.20 - 05/Sep/2022 =
727
728 * FEATURE: Restore the "upload immediately after creation" feature that was turned off whilst misbehaviour was investigated; fixes have been applied.
729 * FIX: Prevent premature removal of zip manifest files
730 * TWEAK: Improve the Handlebars template of the OpenStack (Swift) remote storage by taking PHP code out of it
731 * TWEAK: Do not run out-of-place "SET @@GLOBAL.GTID_PURGED" statements upon restore
732
733 = 1.22.19 - 29/Aug/2022 =
734
735 * TWEAK: The "upload immediately after creation" feature has been disabled whilst reports of incorrect behaviour are investigated
736 * TWEAK: Replace require_once to include_once and use the UpdraftCentral path constant when loading the UpdraftCentral host class.
737 * TWEAK: Modify the "overdue crons" message for greater clarity
738
739 = 1.22.18 - 26/Aug/2022 =
740
741 * TWEAK: Suppress pre-loading of phpseclib libraries, which has exposed fatal-error inducing bugs in a handful of unmaintained third-party plugins and themes
742 * TWEAK: Increase the number of conditions for which attempts to access an S3 bucket will result in more logging
743
744 = 1.22.17 - 23/Aug/2022 =
745
746 * FIX: Ensure jobdata is saved before attempting a partial cloud upload, preventing potential omission of an archive
747 * FEATURE: Restore the "upload immediately after creation" feature that was turned off in 1.22.16 whilst misbehaviour was investigated
748 * TWEAK: Add log information as to why DB stored routines couldn't be included in the backup if that should be so
749 * TWEAK: Declare some implicitly-declared class variables to avoid warnings in PHP 8.2
750
751 = 1.22.15 - 22/Aug/2022 =
752
753 * FEATURE: Each archive created will now be uploaded immediately directly after creation, to save disk space (prior behaviour was to first create all archives)
754 * FIX: Improve parsing of HTTP response code header with generic S3 providers to avoid incorrectly interpreting status code
755 * FIX: When an S3 service returns a RequestTimeTooSkewed error, make sure this is passed up to the user and not lost
756 * FIX: Do not prematurely trigger upload_complete message when performing immediate file upload during clone operation
757 * FIX: Database views don't get restored or are not restored correctly when in atomic mode
758 * FIX: After sending email reports, other emails that follow used the same From address/name taken from the previous email
759 * FIX: Database views don't get included in the backup
760 * TWEAK: Improve the Handlebars template of the Microsoft Azure remote storage by taking PHP code out of it (Premium)
761 * TWEAK: Update WebDAV library used for WebDAV remote storage (Premium) - N.B. This now requires PHP 5.5+.
762 * TWEAK: Improve the Handlebars template of the Google Cloud remote storage by taking PHP code out of it (Premium)
763 * TWEAK: Improve the Handlebars template of the Microsoft OneDrive remote storage by taking PHP code out of it (Premium)
764 * TWEAK: Detect and break absurdly-future locks
765 * TWEAK: Restrict the CSS scope for our jQuery to prevent conflicts
766 * TWEAK: Work around consequences of a backup history save failure
767 * TWEAK: Add a twice-daily cron to clear temporary files so that they are cleared even in the absence of new backups beginning and prior backup completion failure
768 * TWEAK: Tweak UpdraftCentral abstraction classes
769 * TWEAK: Separate custom font rules when retrieving styles from remote sites
770 * TWEAK: Prevent PHP deprecation notice when using Google libraries on PHP 8.1+
771 * TWEAK: Simplify Dropbox SDK by removing unused "response format" code
772
773 = 1.22.14 - 07/Jul/2022 =
774
775 * FIX: Selective table restore
776 * FIX: Fix restore button JS issue when importing single site to multisite
777 * TWEAK: Allow charset to be set during a WP_CLI restore
778 * TWEAK: Use similar charset if one is not set and not supported during a WL_CLI restore
779 * TWEAK: Add bulk process handler for UpdraftCentral's plugin and theme modules
780 * TWEAK: Return previous plugin and theme states before installation or activation
781 * TWEAK: Improve the Handlebars template of the Backblaze remote storage by taking PHP code out of it (Premium)
782 * TWEAK: Improve the Handlebars template of the WebDAV remote storage by taking PHP code out of it (Premium)
783 * TWEAK: Improve the Handlebars template of the SFTP/SCP remote storage by taking PHP code out of it (Premium)
784 * TWEAK: Avoid using 'phpmailer_init' action when setting up sender name and sender email address, as some SMTP plugins override the 'wp_mail()' function and they don't bother to call the 'phpmailer_init' action
785 * TWEAK: Prevent increments being added to backups from other sites
786
787 = 1.22.13 - 25/May/2022 =
788
789 * FEATURE: Added the ability to create a clone from WP-CLI (Premium)
790 * TWEAK: Free version – Improve the Handlebars template of Azzure, OneDrive, WebDAV, SFTP/SCP, Blackblaze, and Google Cloud remote storage by taking PHP code out of them
791 * TWEAK: Update notice class
792 * TWEAK: Escape URL used in remote storage connection modal
793 * TWEAK: A Label being incorrectly displayed when creating a clone
794 * TWEAK: Update class-udrpc
795 * TWEAK: Don't show database selective restore UI if no tables are found in the database scan
796 * TWEAK: Allow drag-dropping of backup anywhere, not just on target area
797 * TWEAK: Add "echo" to display the premium link properly in some templates
798 * TWEAK: Update the posts class to support theme.json config file for theme styles and block settings
799 * TWEAK: Extract from plugin's data rather than relying on its key when retrieving the plugin slug
800 * TWEAK: Increase likelihood of using experimental upload-sooner feature from 1% to 5%
801
802 = 1.22.12 - 29/Apr/2022 =
803
804 * FEATURE: Added the ability to select which themes and plugins to Restore
805 * FEATURE: Allow existing local backups to be sent to a remote site when migrating
806 * TWEAK: Tweak to allow the Amazon S3 setup wizard to run if the internal S3 library is active
807 * TWEAK: The WordPress sidebar menu overlaps the popover tour box
808 * TWEAK: Attempt to upload a zip file after it's been created to save on storage space
809 * TWEAK: Add MySQL maximum packet size to Advanced Tools -> Site Information
810 * TWEAK: Only output the expected table rows when starting to process the table
811 * TWEAK: Fix get_users parameter that has been deprecated on WP 5.9 in UpdraftCentral posts controller.
812 * TWEAK: Do not call escapeshellarg() for SCP if we know it is unnecessary (prevents problems on hosts lacking the function for trivial use cases)
813 * TWEAK: Detect change of run-time environment on first resumption and re-set previously detected resumption interval if likely to be helpful
814 * TWEAK: Improve the FTP Handlebars template by taking PHP code out of it
815 * TWEAK: Convert HTTP error codes to their meanings
816 * TWEAK: Some plugins are loading their own incomplete mcrypt_* functions try and detect this and recover
817 * TWEAK: Ensure the local backup file is cleaned up if an earlier failed remote storage upload later succeeds
818 * TWEAK: Include plugin version when getting details from UpdraftPlus Vault to allow features that depend upon a sufficiently up-to-date version
819
820 = 1.22.11 - 15/Mar/2022 =
821
822 * FIX: Internal S3 library did not correctly construct canonical query string with v4 signatures if there were multiple parameters, leading to wrong signatures and failed authorisation
823 * FIX: Fix a recent regression that caused DNS hostnames to not be preferred when using Amazon S3
824 * TWEAK: Prevent deprecation notice on PHP 8.1 if opening a zero-size zip file
825 * TWEAK: Introduce filter updraftplus_dropbox_fetch_curl_options for easier debugging/experimentation
826
827 = 1.22.10 - 11/Mar/2022 =
828
829 * FIX: Fix a regression in the 1.22.9 adjustment to the internal S3 library's evaluation of when to use a Host: header
830 * FIX: Fix a long-standing issue whereby if S3-related credentials were being tested via the front-end UI, and multiple back-end instances were present, then the wrong settings could be used in making decisions on Host: headers
831
832 = 1.22.9 - 10/Mar/2022 =
833
834 * SECURITY: Fixed a failure to sanitise printed URLs properly, leading to a targeted XSS opportunity (if an attacker persuades a logged-in admin to follow a link personally crafted for their site, he may be able to run JavaScript inside the browser - but on our testing, this ability is limited due to the sanitisation that was there - we have not been able to confirm that a payload causing damage is possible). Reported by Taurus Omar - https://taurusomar.com.
835 * TWEAK: Adjust internal S3 library's evaluation of when to use a Host: header (improves compatibility with buckets with minimal access rules)
836 * TWEAK: Adjust algorithm concerning likelihood of switching S3 libraries to accelerate deployment
837 * TWEAK: Prevent PHP notice when using S3 with particular bucket naming and SSL
838
839 = 1.22.8 - 03/Mar/2022 =
840
841 * FIX: Do not attempt to use S3 DNS-style bucket naming in alternative library if SSL validation will fail due to AWS certificate wildcard policies or other bucket naming-related reasons
842 * TWEAK: Add version number to alternative S3 library requests
843
844 = 1.22.7 - 01/Mar/2022 =
845
846 * FIX: Internal S3 library was missing a method for using session tokens together with Vault
847 * FIX: Various UI issues with the S3 IAM Wizard
848 * TWEAK: Use AWS SDK/Guzzle for S3 operations if Curl is not available
849 * TWEAK: Prevent coding deprecation notice during S3 upload on PHP 8.1
850
851 = 1.22.6 - 26/Feb/2022 =
852
853 * FIX: Internal S3 library had regressed in its ability to detect bucket location on AWS when using v4 signatures
854 * TWEAK: When using S3 APIs, log the class used for easier debugging
855 * TWEAK: Change S3 SDK selection algorithm
856
857 = 1.22.5 - 24/Feb/2022 =
858
859 * FIX: An issue that prevented being able to browse the contents of an already downloaded backup zip file
860 * FIX: Add previously unbundled AWS SDK file for IAM service description which prevented S3 wizard in the Premium version working correctly
861 * FIX: Prevent a fatal error when handling some S3 errors, caused by a format change
862 * TWEAK: When loading AWS SDK at upload time, apply some work-arounds for plugins with buggy or old versions of related libraries
863 * TWEAK: Update to latest AWS SDK toolkit, fixing an error with error-reporting in some situations in the previous version
864 * TWEAK: Remove vendor/aws/aws-crt-php/run_tests.bat from build (apparently one user's hosting does not allow .bat files), plus other unnecessary files from that package
865 * TWEAK: Enable PHP 8.1 in UpdraftClone (N.B. not yet officially supported by WordPress, so, made available for testing/development purposes)
866 * TWEAK: Prevent error emitted on the browser console when 'Images' filter is selected on UpdraftCentral's media module
867
868 = 1.22.4 - 17/Feb/2022 =
869
870 * TWEAK: Prevent a couple of possible fatal errors when printing autobackup options on PHP 8
871 * TWEAK: Work around a bug in the JetPack autoloader that was triggered when projects using that also used Guzzle in a different namespace
872
873 = 1.22.3 - 15/Feb/2022 =
874
875 * SECURITY: Thanks to Marc-Alexandre Montpas of Automattic for this report (CVE: CVE-2022-23303). All versions of UpdraftPlus from March 2019 onwards have contained a vulnerability caused by a missing permissions-level check, allowing untrusted users access to backups. If your site does not have non-admin users, or if your non-admin users are all trusted (and your site does not allow users to sign up themselves), then you are not vulnerable (but we always recommend updating to the latest version in any case). Please see https://updraftplus.com/updraftplus-security-release-1-22-3-2-22-3/ for more details.
876 * FIX: Unexpected 'Backup History' array structure during the rescanning of the new backup sets that changed the type of the database associative keys from string to array format
877 * FIX: Failure in excluding and wiping out jobdata during backup and restore causing the same backup to repeat under certain circumstances
878 * REFACTOR: Upgrade AWS SDK from version 2.8 to 3
879 * TWEAK: Improve how log file and backup file attachments are handled through mail-related functions, so they don't get omitted by some 3rd party SMTP plugins
880 * TWEAK: Overcome PHP 8 'Only the first byte will be assigned to the string offset' warning when rescanning local folder and/or remote storage for new backup sets
881 * TWEAK: On Windows, when mysqldump.exe binary is in use for backing up database, it failed to exclude updraft_jobdata_* entries due to 'escapeshellarg' function that replaces % char to white space
882 * TWEAK: Switch to official jstree release now that our patch is included
883 * TWEAK: Update updater library in paid version to current release
884 * TWEAK: In the multisite add-on, store the last log message separately to perform better with binary logging together with large backups
885 * TWEAK: Add Google branding to the Google Drive authentication link
886 * TWEAK: Change complex formatting string to avoid translator errors resulting in PHP errors
887
888 = 1.22.1 - 14/Jan/2022 =
889
890 * TWEAK: New versioning scheme; the second part of the version number was previously not used very meaningfully/systematically; together with the third, it now indicates the year of release and number within that year
891 * TWEAK: Adjust run-time performance check, removing one test that was no longer appropriate
892 * TWEAK: Adjust next resumption display message if there isn't one
893 * TWEAK: Cache the UpdraftVault quota to reduce the amount of network calls made during long backups
894
895 = 1.16.69 - 27/Dec/2021 =
896
897 * FIX: A bug that prevented a final resumption from attempting to split the zip to make progress
898 * FIX: Handle LOCK TABLES statements produced by some mysqldump versions properly in case of atomic restores
899 * SECURITY: Fix a non-persistent XSS error allowing an attacker to once run JavaScript in your web browser if you clicked on a link crafted personally for you whilst logged into your site (very similar to that fixed in 1.16.65/6). A packaging error meant that this was not properly fixed in the 1.16.67-68 releases.
900 * TWEAK: Search and replace ABSPATH if it's changed, non-trivial and stored in the DB by a bad plugin/theme
901 * TWEAK: Make whole label for "UpdraftPlus temporary clone user login settings" clickable
902 * TWEAK: Change wording for an advanced tool for clarity
903 * TWEAK: Include UD in user agent for S3 calls when using the AWS SDKs
904 * TWEAK: Make sure WP_Error is passed up during specific plugin update failure case
905
906 = 1.16.66 - 29/Nov/2021 =
907
908 * SECURITY: The fix made in 1.16.65 was faulty; this release corrects it.
909
910 = 1.16.65 - 25/Nov/2021 =
911
912 * SECURITY: Fix a non-persistent XSS error allowing an attacker to once run JavaScript in your web browser if you clicked on a link crafted personally for your site whilst logged into it. Discovered by Krzysztof Zaj�
913 c.
914 * TWEAK: Premium - add review link at bottom of admin
915
916 = 1.16.64 - 24/Nov/2021 =
917
918 * FIX: Do not create a zip manifest file if the zip is still potentially incomplete
919 * TWEAK: Improve Dropbox downloading performance by reducing round-trips, by eliminating unnecessary chunking
920 * TWEAK: Update certificate store to current list
921 * TWEAK: Increase precision of previous check-in record in log
922
923 = 1.16.63 - 25/Oct/2021 =
924
925 * FIX: Use correct zip file name when creating manifest
926 * TWEAK: Tweak the response data of UpdraftCentral's plugin and theme handlers to add additional error information
927 * TWEAK: Moved the raw backup history command so it can be accessed via UpdraftCentral
928 * TWEAK: Optimise away unnecessary file open/read/close cycle on null gzip files when writing the final database dump (should help on enormous sites with thousands of tables)
929 * TWEAK: Cleanup .list.tmp files when a local backup completes
930 * TWEAK: Refactor WebDAV addon code for future improvements
931
932 = 1.16.62 - 30/Sep/2021 =
933
934 * FIX: Fix UpdraftCentral error when installing plugin or theme on a slow connection
935 * TWEAK: Support wildcard (asterisk char) exclusions not just for the first/top-level directory but also for the 2nd level directories and below
936 * TWEAK: Fix deprecation warning on UpdraftCentral's comment settings
937 * TWEAK: Algorithm improvement with small tables with individually large rows not triggering the existing over-sized rows algorithm, to reduce fetch size quicker
938 * TWEAK: Implement the newly abstracted host plugin usage/process within the UpdraftCentral client code
939 * TWEAK: Improve backtrace logging
940 * TWEAK: Add admin and log warning messages regarding the planned shutdown of Microsoft Azure and OneDrive Germany
941 * TWEAK: Output UpdraftVault quota recount link if needed
942 * TWEAK: Introduce constant: UPDRAFTPLUS_LOG_BACKUP_SELECTS: Defining this to true will cause the SQL SELECT commands used when fetching data for a database table backup to be logged in the UpdraftPlus backup log
943 * TWEAK: Don't change SQL modes if a null value is returned
944 * TWEAK: Existing backups paging logic to avoid a confusing rescan user experience
945 * TWEAK: Refactor the search and replace engine
946
947 = 1.16.61 - 28/Aug/2021 =
948
949 * FIX: If MySQL performance was very fast on large tables, and if fallback fetch mode was being used (which should not occur on any WordPress core table, but can be triggered on recent Oracle MySQL 8.0 versions), then when increasing rows fetched on large tables, some rows could be unintentionally skipped.
950 * TWEAK: Oracle MySQL 8.0 from somewhere after 8.0.17 has removed the display width from the response to SHOW CREATE TABLE, resulting in failure (prior to this tweak) to detect a primary key type that can be used with faster fetching
951 * TWEAK: Use 'wp_mail_failed' action hook to improve logging of email delivery failures caused by a PHPMailer exception
952 * TWEAK: Add additional log information to themes and plugins modules
953
954 = 1.16.60 - 23/Aug/2021 =
955
956 * FIX: An issue that prevented the more files restore UI appearing if it was part of an incremental backup
957 * FIX: Add an extra check to prevent incremental backups from being run after a migration, if incremental backups are not enabled.
958 * TWEAK: Add method to check whether an image editor is available for UpdraftCentral's image media editing feature.
959 * TWEAK: In the reporting add-on accept URLs, if the address is a URL then instead of emailing it, POST it to that URL using the format used by Slack
960 * TWEAK: Add a link to the create clone UI to explain the various clone package sizes
961 * TWEAK: Record ABSPATH in the summary
962 * TWEAK: Prevent a couple of unwanted logging notices on PHP 8
963 * TWEAK: Catch and deal with various WebDAV exceptions
964 * TWEAK: Create a zip file manifest and read from it if available
965
966 = 1.16.59 - 16/Jul/2021 =
967
968 * FEATURE: (Paid versions) New WP-CLI command (connect) to connect plugin with the user's associated account/licence on updraftplus.com
969 * FIX: Each time the 'Upload Backup' dialog is opened, '(already uploaded)' text is appended one more time for the same remote storage resulting in it being nearly impossible to have the two buttons shown at the bottom
970 * TWEAK: Enhanced over-sized row-detection to include any table with a primary key and a LONGTEXT
971 * TWEAK: Log file now includes max packet size
972 * TWEAK: Properly handle port numbers included in DB_HOST when using mysqldump
973 * TWEAK: Handle UNIX socket paths included in DB_HOST when using mysqldump
974 * TWEAK: Increase default mysqldump maximum packet size
975 * TWEAK: Change WebDAV request library to HTTP_Request2
976 * TWEAK: Add custom category sorting on post module using uasort due to deprecation warning emitted on UpdraftCentral
977 * TWEAK: Added an icon within the top-right of the log widget allowing user to toggle that part between its current size and full-screen of the restoration log section
978 * TWEAK: Prevent an error in the phpinfo advanced tool when handling non-string constants
979 * TWEAK: Escape remote storage IDs in output templates
980 * TWEAK: Suppress unwanted error logging related to Gravity Forms
981 * TWEAK: Clear Elementor cache at the end of restoration process (if possible) giving an opportunity for Elementor to regenerate CSS files on the next page load request
982 * TWEAK: Clear Avada/Fusion-related CSS cache at the end of restoration process (if relevant)
983 * TWEAK: Catch and recover from errors and exceptions when clearing third-party caches
984 * TWEAK: Prevent a PHP logging notice when an SCP server is scanned for files
985 * TWEAK: Remove unused CloudFront methods from S3 library
986 * TWEAK: Added missing anonymisation.png graphic and detail of Anonymisation addon in the addons list table
987 * TWEAK: Added Update URI header field to avoid accidentally being overwritten with an update of a plugin of a similar name from the WordPress.org Plugin Directory.
988 * TWEAK: Improvements in finding a working mysqldump binary during a backup operation
989 * TWEAK: Start on larger chunk sizes when fetching *meta table contents, and scale up chunk sizes on all tables dynamically (less SQL queries; but testing shows it makes little difference to overall speed)
990 * TWEAK: Adjust Google Drive to retry once after a UDP_Google_IO_Exception, as was done in Google Cloud - intended to help with intermittently buggy Curl versions
991 * TWEAK: Show a notice when attempting to download a backup from email remote storage explaining nothing can be downloaded
992 * TWEAK: Update shop links and upgrade prompts
993
994 = 1.16.58 - 27/May/2021 =
995
996 * FIX: UpdraftVault storage settings saving issue on multisite
997 * FIX: Translation undefined index issue while running updates on UpdraftCentral
998 * FIX: Do not retain SFTP/SCP connection object between upload and prune stages, fixing a multi-instance bug that could cause deleting of obsolete archives to be skipped when backing up the same backup to multiple SCP servers
999 * TWEAK: When a link points to an unreadable file, include information in the log about the original reference
1000 * TWEAK: Do not compress and recompress intermediate table files when stitching together the final database dump (increases speed and reduces resource usage)
1001
1002 = 1.16.57 - 08/May/2021 =
1003
1004 * FIX: Backblaze infinite loop when listing on buckets with huge numbers of objects
1005 * TWEAK: Minor improvements to the organisation of the S3-provider classes (abstract per-backend logic more cleanly)
1006 * TWEAK: Add --no-tablespaces switch to mysqldump invocation (required on MySQL 8.0+)
1007
1008 = 1.16.56 - 29/Apr/2021 =
1009
1010 * FIX: Revert changing of Amazon S3 authentication error handling in 1.16.55, which broke support of S3-compatible providers
1011 * TWEAK: Remove some unnecessary methods from the UpdraftPlus_S3 class
1012
1013 = 1.16.55 - 28/Apr/2021 =
1014
1015 * FIX: Wrong prefix being used on non WP tables during an atomic restore
1016 * FIX: Issue that prevented generic (non-UpdraftPlus) SQL databases being restored
1017 * TWEAK: JSTree file selector: list folders first, and list entities in alphabetical order
1018 * TWEAK: Increase efficiency when listing Backblaze files during multi-delete operation
1019 * TWEAK: Integrate UpdraftVault storage with the scheduled destination backups feature
1020 * TWEAK: Added bucket access style field to S3-Compatible (Generic) to allow user to choose preferred access style (Path or Virtual-host)
1021 * TWEAK: Improve handling of Amazon S3 authentication error messages to avoid misunderstanding concerning "wrong bucket region" that occurs after trying further methods
1022 * TWEAK: Make modal dialogs resizable
1023 * TWEAK: During the Database scan if the amount of tables found exceeds the PHP max input vars limit then truncate the list, to prevent restore options being lost
1024 * TWEAK: Update seasonal notices
1025 * TWEAK: Track the amount of restore options being sent and warn the user if this exceeds the PHP max_input_vars limit
1026
1027 = 1.16.54 - 05/Apr/2021 =
1028
1029 * FIX: Undetected build system error on free version omitted jstree library
1030 * TWEAK: Reduce plugin size by removing 9 languages that are now fully available from the wordpress.org on-demand system
1031
1032 = 1.16.53 - 03/Apr/2021 =
1033
1034 * FIX: Incorrect final table name being used during an atomic restore when restoring using a different table prefix
1035 * FIX: Fix variable re-use issue in Backblaze multi-delete code which halted deletion
1036 * TWEAK: Prevent unnecessary logging when testing data for serialization on PHP 8.0 during migration
1037 * TWEAK: Update jsTree library to version 3.3.12-rc0 to work around deprecated jQuery functions
1038 * TWEAK: Add an extra check for whether it looks reasonable to reduce the resumption time, increasing efficiency
1039 * TWEAK: On the posts table, detect over-sized rows in advance, and fetch them one at a time.
1040
1041 = 1.16.51 - 01/Apr/2021 =
1042
1043 * FIX: Backup before updating dialog was not working on the inline informational pop-up on the Plugins page
1044 * TWEAK: Refactor how translatable texts are being handled and displayed within the UpdraftCentral client code
1045 * TWEAK: Fix parameter passing for UpdraftCentral multiplexed request
1046 * TWEAK: Exclude/skip very large files from the backup operation if the first and second attempt at backing them up didn't succeed
1047 * TWEAK: Backblaze multi-deletion code did not properly handle files that were already deleted (could abort deletion of others)
1048 * TWEAK: Replace the table prefix in the constraint name if it is found
1049 * TWEAK: Don't perform an atomic restore on tables with constraints
1050 * TWEAK: Add atomic restore support for non-WordPress tables
1051
1052 = 1.16.50 - 16/Mar/2021 =
1053
1054 * FIX: An issue with refreshing Dropbox access tokens
1055 * TWEAK: Reduce and log memory usage in Google upload methods
1056 * TWEAK: Catch Dropbox HTTP 401 errors and refresh the access token
1057
1058 = 1.16.49 - 10/Mar/2021 =
1059
1060 * FIX: Don't perform an atomic restore for non-WP-prefix tables backed up (Premium feature) - fixes a bug that resulted in the final table being dropped
1061 * TWEAK: Dates/times shown in the "next scheduled backup(s)" are now translated into the user's locale
1062
1063 = 1.16.48 - 09/Mar/2021 =
1064
1065 * FEATURE: If needed database permissions are available then perform an atomic restore to improve chances of successfully restoring the database
1066 * FEATURE: Added the ability to manually complete authentication with Google Drive (Avoids issues where security modules/plugins break the authentication flow)
1067 * FEATURE: Added the ability to manually complete authentication with OneDrive (Avoids issues where security modules/plugins break the authentication flow)
1068 * FEATURE: Google Drive and Google Cloud now allow boosting chunk size for faster transfers
1069 * FIX: Files/Directories Exclusion not saving correctly when adding numeric directory/file names into the exclusion list
1070 * FIX: Different PHP versions generate different suffixes length in the temporary ZIP filename resulting in a chance of overlapping runs
1071 * FIX: an issue with mysqldump password character escaping
1072 * TWEAK: Avoid unnecessary database writes caused by redundant jobdata updating during backup of files
1073 * TWEAK: Add "anywhere in their names" syntax option to the exclusion UI
1074 * TWEAK: Bump the requirement for the S3 enhanced module, and for using the official AWS SDK, up to PHP 5.5 (in preparation for updating the SDK version later)
1075 * TWEAK: Fix a bug of report emails for incremental backups displaying incorrectly in many email apps
1076 * TWEAK: Update Select2 library to version 4.1.0-rc.0 to work around deprecated jQuery isFunction
1077 * TWEAK: Update jQuery-serializeJSON library to version 3.2.0 to work around deprecated jQuery isArray
1078 * TWEAK: Handle hosts that have disabled some of the PHP functions thus causing a fatal error on PHP 8
1079 * TWEAK: Correct under-calculation of used memory in verify_free_memory()
1080 * TWEAK: Fix (inconsequential to this point) double-use of identifier for SQL statement type
1081 * TWEAK: Remove some compatibility code in Dropbox downloading pertaining to a folder selection bug eliminated ~8 years ago.
1082 * TWEAK: Remove unneeded sub-site tables when performing a restoration/migration (Multisite)
1083 * TWEAK: Improve the exclusion UI by adding new "wildcards" option thus allowing the user to add a set of patterns for excluding files/directories
1084 * TWEAK: Integration of the new files that were previously added for abstracting UpdraftCentral's client code
1085 * TWEAK: Excluded items (Files or Folders) that are not readable should not trigger a warning about being unreadable
1086 * TWEAK: Fix some RTL CSS issues
1087 * TWEAK: OneDrive 4xx error reporting
1088 * TWEAK: Update the Dropbox SDK to use refresh tokens (long lived token support ends September 2021)
1089 * TWEAK: implement a multi-delete capability when deleting from Backblaze
1090 * TWEAK: On UpdraftClone display the image ID in the advanced tools tab for easier debugging
1091 * TWEAK: Make it more clear in the restore log that we are starting an AJAX restore
1092 * TWEAK: The download backup HTML so that there is only one download button per archive type
1093
1094 = 1.16.47 - 25/Jan/2021 =
1095
1096 * FEATURE: added the ability to anonymise personal data in database backups from the "Backup Now" dialog (Premium / add-on)
1097 * FEATURE: Add page management module for UpdraftCentral
1098 * FIX: 1.16.42 Introduced a regression (truncation) when listing files from Dropbox when there were multiple pages of results
1099 * TWEAK: Force host-style bucket access when backing up via S3 generic to Alibabacloud
1100 * TWEAK: Remove unneeded Google SDK files from our fork of the SDK taking the size from 6MB to 800KB
1101 * TWEAK: Incorrect jQuery UI dialog extended filename
1102 * TWEAK: Change some class names to improve compatibility with other plugins using the Google SDK and auto-loading their version unconditionally
1103 * TWEAK: Update the delete file Dropbox API call to version 2
1104 * TWEAK: Change the S3 test settings form names to match the saved setting names
1105 * TWEAK: Check the Content-Type on the response from an S3-compatible provider slightly less strictly, improving compatibility with at least one otherwise-working implementation
1106 * TWEAK: Update the Dropbox SDK to use scopes
1107 * TWEAK: Handle hosts that have removed disk_free_space() (now that on PHP 8 disabling functions removes them)
1108
1109 = 1.16.46 - 05/Jan/2021 =
1110
1111 * FIX: Prevent some deprecation-related errors when backing up to some remote storage locations in PHP 8
1112 * FIX: Adding new remote storage instance (Premium) doesn't bring up the UI
1113 * TWEAK: Fix some modal dialog alignment/resizing issues
1114
1115 = 1.16.45 - 04/Jan/2021 =
1116
1117 * FIX: Prevent some fatal errors due to language behaviour changes when running under PHP 8
1118 * TWEAK: Replace deprecated calls to jQuery fn.focus(), fn.ready(), fn.submit(), fn.click() and fn.blur() methods in internal libraries
1119 * TWEAK: Replace deprecated calls to jQuery (:first) and (:eq) pseudo-classes in internal libraries
1120 * TWEAK: Prevent several PHP deprecation log notices on PHP 8
1121 * TWEAK: Rename some further classes in our fork of the Google SDK to prevent conflicts
1122 * TWEAK: When running under cron, do not combine schedules when there are no schedules
1123 * TWEAK: Revert a jQuery change in 1.16.44 which made notices on the 'updates' page appear multiple times.
1124
1125 = 1.16.43 - 17/Dec/2020 =
1126
1127 * TWEAK: Replace deprecated calls to jQuery.trim(), jQuery.fn.change(), jQuery.fn.bind(), jQuery.fn.unbind(), jQuery.fn.keyup(), jQuery.fn.removeAttr() and `jQuery.fn.removeProp() in internal libraries
1128 * TWEAK: Reduce excessive vertical margin above the header within Autobackup dialog box
1129 * TWEAK: Improve user experience in the case of some rare UpdraftVault conditions
1130 * TWEAK: Fix the exclude fields, which were unable to switch their mode from read-only to edit mode
1131 * TWEAK: Added new files needed for abstracting UpdraftCentral's client code
1132 * TWEAK: Update the review notice
1133 * TWEAK: When attempting to delete a Backblaze file and discovering it does not exist, do not log that as an error (presumably already deleted)
1134 * TWEAK: Fetch history log data in the popup using AJAX, instead of using embedded data attributes.
1135 * TWEAK: Be less quick to switch to PclZip when BinZip has not completed the job
1136
1137 = 1.16.42 - 10/Dec/2020 =
1138
1139 * FEATURE: Added the ability to manually complete authentication with Dropbox (Avoids issues where security modules/plugins break the authentication flow)
1140 * TWEAK: Replace BlockUI's deprecated jQuery functions and/or shorthand events with the appropriate method accordingly
1141 * TWEAK: Replace /2/files/search Dropbox API calls with /2/files/search_v2
1142 * TWEAK: Replace Labelauty's deprecated jQuery functions and/or shorthand events with the appropriate method accordingly
1143 * TWEAK: Fix broken multiple range selection's highlighters due to the absence of jquery-migrate in the WordPress core on version 5.5
1144 * TWEAK: Add the latest jQuery UI CSS framework for compatibility with WordPress 5.6 and all ongoing versions of WordPress
1145 * TWEAK: Add support for PHP 8.0 in UpdraftClone
1146 * TWEAK: Prevent a couple of PHP coding notices on PHP 8.0
1147 * TWEAK: Tweak in the backing up of tables to reduce PHP memory use when working with very long row contents
1148 * TWEAK: Prevent a PHP warning when starting a backup
1149 * TWEAK: Fix a UI issue in the "send backup to remote site" options
1150
1151 = 1.16.41 - 27/Nov/2020 =
1152
1153 * TWEAK: Don't repeat sending the 'upload_complete' command to a remotesend destination after it succeeded the first time
1154 * TWEAK: Update the udrpc library
1155 * TWEAK: In UpdraftClone, delay the temporary_clone_ready_for_restore signal until the browser connection is closed (preventing a loss of response)
1156
1157 = 1.16.40 - 25/Nov/2020 =
1158
1159 * TWEAK: Cycle Dropbox API client ID (old one has been cycled and no longer works)
1160
1161 = 1.16.37 - 23/Nov/2020 =
1162
1163 * FIX: Scheduled backups to remote storage not being correctly sent in 1.16.35/36 in the absence of the "More Storage" add-on
1164 * TWEAK: Wording tweak to clarify the effect of the conditional logic settings
1165 * TWEAK: Add a warning to the restore page to inform the user if JavaScript is broken and as a result the restore won't start
1166 * TWEAK: Replace intval() with casting to (int)
1167 * TWEAK: If the first fetch from a table failed, then the algorithm to fetch fewer rows failed to reduce the fetch size more than once
1168
1169 = 1.16.36 - 20/Nov/2020 =
1170
1171 * TWEAK: During a restore or migration, detect if the backup was affected by the key issue fixed in 1.16.35, and automatically unselect by default such tables from the list of those to be restored. On a migration advise the user to take a fresh backup on the source site with a current version.
1172
1173 = 1.16.35 - 19/Nov/2020 =
1174
1175 * FEATURE: Backup destinations with conditional logic rules for scheduled backups (Premium)
1176 * FIX: A regression in 1.16.30 meant that the term_relationships table could have rows missing in the backup if mysqldump was not present/used; this meant that items with multiple terms were only having one relationship backed up (e.g. multiple tags being assigned to one post)
1177 * TWEAK: Adding remote block assets support when editing post from UpdraftCentral
1178 * TWEAK: Rename UpdraftCentral's main and listener classes
1179 * TWEAK: Improve error message when encrypted key given by user for SFTP/SCP remote storage method
1180 * TWEAK: Enhance the algorithm when dumping large tables via PHP, by also consulting the size of the current uncompressed data and passed time and resumption state
1181 * TWEAK: When there are no backups in existence, display some help text explaining how to upload one for restoration
1182 * TWEAK: Prevent composer 2 run-time platform checks
1183 * TWEAK: Update bundled cacert.pem file
1184 * TWEAK: When fetching less rows due to previous failures, make this persist across resumptions when on the same table
1185 * TWEAK: Raise the default for UPDRAFTPLUS_MAXBATCHFILES
1186 * TWEAK: Improve handling of the situation when the source database has no table prefix (which is officially unsupported by WordPress, but people have them)
1187 * TWEAK: When fetching the site name from the database, process it via wp_specialchars_decode() to remove HTML encodings that WP applied before storage
1188 * TWEAK: Replace uses of php_uname() function with PHP_OS constant when the server where PHP is running on disables the function for security reasons
1189 * TWEAK: When the definition of a VIEW cannot be fetched, report this nicely, do not let it be flagged as a fatal error, and log it in the backup file and log
1190 * TWEAK: Integrate UpdraftPlus and WordPress 5.5 core's automatic update settings
1191 * TWEAK: When a backup resumed, the last successful resumption was incorrectly set as the last successful resumption when an 'alive' event was recorded, rather than a 'useful' one; this deferred some mitigations when there was insufficient progress
1192 * TWEAK: Add another tweak to paid versions' update checking time algorithm
1193 * TWEAK: Add "Select all" and "Deselect all" link texts for bulk selecting/deselecting tables from the database table list on the manual backup dialog
1194 * TWEAK: Ensure all code paths use internal ud_parse_json function for decoding JSON in JavaScript
1195 * TWEAK: When using UpdraftVault, only cache results of a vault_getconfig call conditionally (retry on potentially transient errors)
1196 * TWEAK: Prevent a PHP coding notice if running an UpdraftVault backup on the CLI
1197 * TWEAK: Reduce the on-disk logging of entity base directories containing vast numbers of entries
1198 * TWEAK: When we first save the backup schedule set the scheduled time randomly between 9PM and 7AM
1199 * TWEAK: During a remote storage rescan correctly update the backup file sizes to prevent incorrect 'may have changed' warnings
1200
1201 = 1.16.34 - 30/Oct/2020 =
1202
1203 * 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
1204 * TWEAK: Update jQuery document ready style to the one not deprecated in jQuery 3.0
1205 * TWEAK: While using the file tree browser return an error if we are unable to open a directory
1206
1207 = 1.16.33 - 20/Oct/2020 =
1208
1209 * FIX: Fatal error when doing a backup with no storage in the short-lived 1.16.32 (free version)
1210 * 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).
1211 * TWEAK: Exclude All In One WP Migration-related archive files when backing up plugins and/or others from the UpdraftPlus backup process
1212 * TWEAK: Add downloadable backup links in the Backup Report email (Reporting Addon)
1213 * TWEAK: Rename some classes in our fork of the Google SDK to prevent conflicts
1214 * TWEAK: Improve automatic backups output when 'UPDRAFTPLUS_NOAUTOBACKUPS' constant is defined.
1215 * TWEAK: Remove the now-redundant concept of inner loops from the database table backup routine
1216
1217 = 1.16.31 - 20/Oct/2020 =
1218
1219 * 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).
1220
1221 = 1.16.30 - 15/Oct/2020 =
1222
1223 * 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).
1224 * FIX: Remove incorrect decodeURIComponent() parsing when importing settings, which could prevent import of settings containing some special characters
1225 * 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)
1226 * TWEAK: Catch errors from Google Cloud when the bucket is not found
1227 * TWEAK: Fix undefined variables instead of expected values in message prior to settings import
1228 * TWEAK: Strip the redundant WHERE for the --where parameter to mysqldump (which modern versions strip out, but a version was found that didn't)
1229 * TWEAK: Handle hosts that have disabled the session_id() function
1230 * TWEAK: Provide SQL mode information in the 'Site Information' section under the 'Advanced Tools' tab and in the database backup's header
1231 * TWEAK: Show a notification of UpdraftPlus plugin updates even if the associated user account is not connected to the UpdraftPlus website
1232 * 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)
1233 * TWEAK: When booting a clone if it's claimed from the clone queue then update the token being used
1234 * TWEAK: Tweaked downwards the minimum time in the future for rescheduling a resumption
1235
1236 = 1.16.29 - 08/Sep/2020 =
1237
1238 * FIX: Added Africa (Cape Town), Asia Pacific (Hong Kong) & Asia Pacific (Osaka-Local) to AWS
1239 * FIX: Fix bug where incorrect function call prevented backup file downloads from the WP dashboard
1240 * TWEAK: Removed LinkedIn and Google+ links
1241 * TWEAK: Choosing email remote storage method in the free version will automatically tick the "Email" field setting, making the UI meaning clearer
1242 * 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
1243
1244 = 1.16.28 - 02/Sep/2020 =
1245
1246 * FEATURE: Support backing up and restoring MySQL/MariaDB routines (stored procedures and functions)
1247 * FEATURE: Added the ability to search and replace the database via WP-CLI
1248 * 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
1249 * FIX: Allow single multisite sub-sites to be restored when there is a http/https mismatch between the site and database backup
1250 * TWEAK: Update plugin updates checker dependency (in paid versions) to the 4.10 series, improving compatibility with WP 5.5+'s updates management
1251 * TWEAK: Suppress message about how to upgrade an already-installed plugin when on WP 5.5+ (where it is no longer relevant)
1252 * TWEAK: Internal refactoring to allow more flexibility when creating database backups
1253 * TWEAK: Force the turning off of ANSI_QUOTES in the active SQL mode when creating a backup, for better compatibility
1254 * TWEAK: Add the ability to configure the 'max_allowed_packet' option in the binary mysqldump command via the 'UPDRAFTPLUS_MYSQLDUMP_MAX_ALLOWED_PACKET' constant
1255 * TWEAK: The Google Drive options exist condition to prevent a false positive saved settings error
1256 * TWEAK: Improve the UpdraftPlus get_outgoing_ip_address method in finding user webserver's IPv6 address
1257 * TWEAK: Removed MetaSlider notice in the notices collection
1258
1259 = 1.16.27 - 23/Jun/2020 =
1260
1261 * FIX: In the free version configured remote storage locations were not selected by default in the backup now modal
1262 * FIX: On newer versions of Curl uploads to Dropbox can fail with a bad request, we now retry with a better request
1263 * FEATURE: Improve support for enormous tables when outputting via PHP via batching of the dump
1264 * TWEAK: Add site_url to load_plugins and load_themes requests
1265 * TWEAK: Catch PHP fatal errors when executing UpdraftCentral commands
1266 * TWEAK: Tweak the version that gets added to CSS and JS filenames to work with addons
1267 * TWEAK: Prevent an internal UpdraftVault message displaying in the UI when Vault is not in use
1268 * TWEAK: Stop displaying the 'licence expires soon' warning if an active subscription is detected on the account
1269 * TWEAK: Catch Google_IO_Exception during upload to Google Cloud to prevent further unwanted errors
1270 * TWEAK: Date/time indicator in the UI now gets updated via the WP heartbeat API
1271 * 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
1272 * TWEAK: Use the administration email address (if possible) as the email sender address when sending a backup report email
1273 * TWEAK: Catch new OneDrive access token has expired message during a backup
1274 * TWEAK: Cleanup failed OneDrive uploads to prevent repeated failures that will never succeed
1275 * TWEAK: Add a warning alert when the remote scan button is pressed to explain this feature to prevent support requests
1276 * 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
1277 * 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.
1278
1279 = 1.16.25 - 23/May/2020 =
1280
1281 * 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.
1282 * 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
1283 * FEATURE: Added the ability to create UpdraftCentral keys from WP-CLI
1284
1285 = 1.16.24 - 15/May/2020 =
1286
1287 * FEATURE: Support migration between different "generate columns" syntaxes of MySQL and MariaDB
1288 * FEATURE: Added the ability to choose the remote storage locations you want to send your backup to in the "Backup Now" modal
1289 * 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.
1290 * FIX: Failure to restore database 'view' in some rare circumstances due to the nonexistent DEFINER account and lack of privileges
1291 * TWEAK: Handle binary data during backup
1292 * TWEAK: Add strack_st to the lists of large logging tables and tables not requiring search/replace
1293 * TWEAK: Make search and replace case insensitive when operating on URLs
1294 * TWEAK: The incremental backup notice logic
1295 * TWEAK: Update bundled updater class (YahnisElsts/plugin-update-checker) (paid versions) to version 4.9
1296 * TWEAK: Add another tweak to paid versions' update checking time algorithm
1297 * TWEAK: Add the options_exist() method to backup modules that did not have it
1298 * 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.
1299 * TWEAK: Show the backup label (if specified) in the UI backup progress indicator
1300 * TWEAK: Added the facility to clear the list of existing migration sites
1301 * TWEAK: Create default instance labels
1302 * TWEAK: Bring list of debugging plugins up to date
1303 * TWEAK: Add support for the AWS Milan and Cape Town endpoints (and correct a couple of existing endpoints that had wrong references)
1304
1305 = 1.16.23 - 01/Apr/2020 =
1306
1307 * FEATURE: Post module handler for UpdraftCentral
1308 * FEATURE: Added the ability to select which database tables you want to restore
1309 * 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.
1310 * TWEAK: The "Backup now" options were all unselected after trying to take a manual incremental backup with no possible entities for increments
1311 * TWEAK: When importing a single site into a multisite remove UpdraftPlus options and cron to prevent unwanted backups
1312 * TWEAK: Auto select clone package based on size of the selected backup
1313 * TWEAK: Prevent PHP notice when logging a Google Drive account full condition
1314 * TWEAK: Prevent a PHP notice when Azure is deleting files on PHP 7.4
1315 * TWEAK: Prevent potential PHP notice if returned OneDrive quota is zero
1316 * TWEAK: When restoring a single site that is part of a multisite only put that single site in maintenance mode not the entire network
1317 * TWEAK: Remove filesize warning from the log if we successfully added the file to the zip to prevent user concern
1318 * TWEAK: Add page_visit_history table to list of those with low-priority data and search/replace unnecessary
1319 * TWEAK: Add a warning message when restoring/migrating from an older PHP version to a newer version
1320 * TWEAK: Set 'NO_AUTO_VALUE_ON_ZERO' sql mode on restorations, for better compatibility with MySQL 8
1321 * TWEAK: Add WordFence logging tables to list of optional tables
1322 * TWEAK: If the Google Cloud revoke call fails try again once
1323 * TWEAK: Catch file closed errors during uploads to Dropbox to prevent unwanted errors in the backup log and prevent user concern
1324 * TWEAK: Get list of supported UpdraftClone regions from updraftplus.com
1325 * TWEAK: Logging in backup modules will now correctly pass on arguments to main log function
1326 * TWEAK: Change OneDrive 'account full, expected to fail' error message to a recoverable warning
1327 * TWEAK: Detect non-homepage 404s and provide FAQ link after a restore
1328 * TWEAK: Add paging to the existing backups table to prevent long loading times for sites with a large amount of backups
1329 * TWEAK: Remove unwanted padding on some buttons
1330
1331 = 1.16.22 - 17/Feb/2020 =
1332
1333 * FIX: Fix a regression with some S3-compatible providers caused by a previous switch to virtual-hosted style bucket referencing
1334 * TWEAK: Integrate input credentials from UpdraftCentral's zip install feature
1335 * TWEAK: Add information to the log file about what type of addresses (sub-domain/sub-folder) the multisite is configured to use
1336 * TWEAK: Fix potential race condition affecting settings page notifications on very fast or very slow sites
1337 * TWEAK: Some PHP notices that could be output during a restore
1338 * TWEAK: Automatically resume a timed-out restore operation during the uploads stage
1339 * TWEAK: If the database connection dies during a restore operation, try to reopen it
1340 * TWEAK: Adjust the UpdraftClone dashboard notice text
1341 * TWEAK: If the Google Drive revoke call fails try again once
1342 * TWEAK: The incremental backups label showed the incorrect time for different timezones
1343 * TWEAK: Update the WP-Optimize notice
1344 * TWEAK: Extend the auto resume restore to themes, others and more file backups
1345
1346 = 1.16.21 - 10/Dec/2019 =
1347
1348 * FIX: Correctly search and replace database views when importing on a site with a different table prefix
1349 * FIX: A bug that prevented the restore modal opening on the migrate/clone tab
1350 * FIX: Dropbox cURL issues on connection are resolved for PHP 7.4
1351 * TWEAK: Change the way the "Disabled Cron" warning appears on the administrative settings page
1352 * TWEAK: Improvements to error messages return for UpdraftCentral's plugin and theme installation process
1353 * TWEAK: Updates to credentials validation for UpdraftCentral's plugin and theme modules
1354 * TWEAK: Add media request handler for UpdraftCentral media module
1355 * TWEAK: On paid versions, again possibly adjust the daily update check time to further favour overnight hours
1356 * TWEAK: Mask classified information in WebDav URL settings
1357 * TWEAK: Add multiple range selection on certain backup using ctrl and shift buttons
1358 * TWEAK: Hide incremental backup link if the backup directory is not writable
1359 * TWEAK: Make Updraft_Restorer_Skin compatible with WP 5.3
1360 * TWEAK: Added Linode object storage link to list of supported S3 providers and updated existing links
1361 * TWEAK: Ensure some variables are defined to prevent unwanted warnings
1362
1363 = 1.16.20 - 04/Nov/2019 =
1364
1365 * FEATURE: Add support for PHP 7.4 in UpdraftClone
1366 * FEATURE: Added the ability to restore "more files" backups
1367 * FEATURE: Add OneDrive Germany compatibility
1368 * FIX: Failure to send existing translation version with update checks (on paid versions) resulted in redundant translation updates
1369 * FIX: Deal with a BackBlaze "first chunk too small" error correctly when doing chunked uploading
1370 * TWEAK: Block any updates from occurring during a restore
1371 * TWEAK: Force the predecessor Amazon S3 SDK to use virtual-hosted style bucket identification instead of path style
1372 * TWEAK: Refactor the remote storage logging code in Addon base v2
1373 * TWEAK: Removed the Keyy notice (Keyy now has a new owner)
1374 * TWEAK: Add WP 5.3 support in UpdraftClone
1375 * TWEAK: On paid versions, possibly adjust the daily update check time to favour overnight hours
1376 * TWEAK: Get UpdraftClone supported WordPress versions during authentication
1377 * TWEAK: Added the ability to use backups stored in remote storage for UpdraftClone
1378 * TWEAK: Small PHP 7.4 deprecation tweaks in the Google and legacy AWS SDKs
1379 * FIX: Prevent trying to download files that have no remote storage and don't exist locally
1380
1381 = 1.16.19 - 04/Oct/2019 =
1382
1383 * FIX: GoogleDrive and WebDAV remote storage methods now correctly report if remote files failed to be deleted
1384 * FIX: Issue in cloudfiles-enhanced addon that breaks translations when the user language is different from the site language
1385 * FIX: Regression: add missing restore options
1386 * TWEAK: Improve restoration modal on mobile devices
1387 * TWEAK: Support the new Amazon S3 Middle East (Bahrain) region when removing a backup set
1388 * TWEAK: Improvements to the dashboard to allow for better screen-reader access
1389 * TWEAK: Ensure phpseclib Crypt_Blowfish is loaded over PEAR's version
1390 * TWEAK: Add time zone and expiries in to the UpdraftClone scheduled removal time
1391 * TWEAK: Add a multi-delete capability for OneDrive to prevent PHP timeouts during deletes
1392
1393 = 1.16.18 - 20/Sep/2019 =
1394
1395 * FIX: Select2 instance visiblility in restoration modal when selecting blog on multisite
1396 * FIX: Remove unsupported WordPress versions (3.6 and older) from the UpdraftClone selection list
1397 * FEATURE: Ability to resume interrupted database restores
1398 * TWEAK: Add filesystem error data when FTP input validation fails in UpdraftCentral
1399 * TWEAK: Enable appropriate SQL mode to ensure the database restoration compatibility
1400 * TWEAK: Add a link to the Backblaze configuration guide
1401
1402 = 1.16.17 - 12/Sep/2019 =
1403
1404 * FEATURE: Added the ability to use UpdraftClone with sub-folder based multisites
1405 * FEATURE: Catch duplicate entries in a corrupt DB upon restoration and handle/fix them automatically
1406 * 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
1407 * FIX: Reset internal state upon beginning backup_resume(), in case WP cron called us multiple times in the same process
1408 * FIX: Provide compatibility functions on WP < 3.7 for mbstring_binary_safe_encoding() and reset_mbstring_encoding()
1409 * FIX: Correct the Azure China storage endpoint in options
1410 * TWEAK: Re-designed restore process
1411 * TWEAK: Prevent cosmetic error if WP_Filesystem call fails when deleting old folders
1412 * TWEAK: Fix escaping that caused a problem in some translations with a dismissal notice
1413 * TWEAK: Update bundled cacert.pem file
1414 * TWEAK: Include a DROP command for any triggers about to be created in the backup
1415 * TWEAK: The BackBlaze module (Premium feature) can now cope with BackBlaze losing uploaded chunks
1416 * TWEAK: Cast file IDs in Backblaze to strings to prevent possible API error
1417 * TWEAK: Do not attempt to perform search/replaces in tables of ARCHIVE type
1418 * TWEAK: Introduce the constant UPDRAFTPLUS_SQLEXEC_MAXIMUM_ERRORS to aid debugging
1419 * TWEAK: log message when checking which files need uploading on a incremental backup job
1420 * TWEAK: Don't send external DB backups to UpdraftClone
1421 * TWEAK: Reset the UpdraftClone UI if the clone is not created before it expires
1422 * TWEAK: Automatically detect a stalled restore and offer a resumption on the restore page
1423 * TWEAK: Remove some unused restore code
1424 * TWEAK: Prevent a PHP deprecation log notice with WebDAV on PHP 7.3
1425 * TWEAK: Catch exceptions and errors during recursive search/replace and recover from them
1426 * TWEAK: CSS tweak to prevent other plugins from breaking the style of pop-up close buttons
1427 * TWEAK: Ensure the error is logged on the final remote send complete call if it fails
1428 * TWEAK: BackBlaze terminology updated to match their changes
1429 * TWEAK: Update seasonal notices for next year
1430
1431 = 1.16.16 - 23/Jul/2019 =
1432
1433 * TWEAK: Adding support for installing plugin and theme through zip files in UpdraftCentral
1434 * FEATURE: Added the ability to launch a blank WordPress clone
1435 * FEATURE: Add --collate= parameter to WP-CLI (Premium) to allow substitution of locally unknown collations when restoring
1436 * 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
1437 * FIX: Issue where (rare) foreign key constraints aren't updated upon restore when table prefix changes
1438 * FIX: Improve parsing of backed-up triggers when restoring preventing possible unnecessary errors
1439 * 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
1440 * FIX: JSON-reparser to prevent unwanted RINFO data being output to screen
1441 * FIX: Triggers were still included in a backup for tables that were excluded because of lack of WP prefix
1442 * FIX: Resuming restores could resume at an unnecessarily early stage
1443 * FIX: Issue with Dropbox account information call that could make it fail
1444 * 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
1445 * TWEAK: Add option to start 250GB Vault subscription as in-app purchase
1446 * TWEAK: Regression: backup checksums were not being recorded in the backup log file
1447 * TWEAK: Remove UpdraftClone when the backup is cancelled by the user
1448 * TWEAK: Send the backup log during the creation of UpdraftClone for easier support when a clone fails to receive the backup
1449 * TWEAK: Detect OneDrive Graph token expiries and initiate swift resumption
1450 * 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)
1451
1452 = 1.16.15 - 31/May/2019 =
1453
1454 * FEATURE: Added the ability to use already existing local backups with UpdraftClone
1455 * FIX: Prevent PHP fatal error (regression) when WP_Filesystem credentials were needed and wrong ones were supplied
1456 * FIX: Issue where you could not delete old directories from the restore progress page
1457 * FIX: Issue where restore would not run over AJAX if wrong credentials were entered when WordPress requested filesystem credentials
1458 * FIX: Fix incorrect refusal to accept valid email addresses in the UpdraftCentral wizard
1459 * 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).
1460 * TWEAK: Update UpdraftCentral theme module handler to support themes without a name header
1461 * TWEAK: Prevent PHP log notice when fetching available theme updates via UpdraftCentral
1462 * 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/)
1463 * TWEAK: Abstract the code for handling maintenance mode to allow future improvements
1464 * TWEAK: Fix a potential wrong file path in an error message
1465 * 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
1466 * TWEAK: Infer phpseclib class path from the class name, instead of hard-coding it
1467 * TWEAK: Some lines that were meant to include HTML bold in the browser output had lost that effect
1468 * TWEAK: Add what entity caused the automatic backup to the logfile
1469 * TWEAK: Upon restoration, a couple of known plugin cache directories will be emptied to prevent serving up an intermediate page
1470 * TWEAK: Fix a bug in the "fail on resume" error-trapping logic which could cause it to resume too many times
1471 * TWEAK: Prevent a bogus error message being logged at the end of a successful direct site-to-site transfer
1472 * TWEAK: Add backup size information when hovering at the backup data buttons (excluding database button)
1473 * 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
1474 * TWEAK: During a restore send structured data to the front end. This is preparing the way for future UX improvements.
1475
1476 = 1.16.14 - 30/Apr/2019 =
1477
1478 * TWEAK: Make UpdraftVault trial more discoverable
1479 * TWEAK: Fix stray JavaScript in the short-lived version 1.16.13
1480 * TWEAK: Add support to translation updates
1481 * TWEAK: Add WP 5.2 support in UpdraftClone
1482 * TWEAK: Prevent PHP notice in remotesend method
1483 * TWEAK: Restorations are now started over AJAX instead of in-page. This is preparing the way for future UX improvements.
1484 * TWEAK: Upgraded the 'site-to-site' remote sending code to use the more recent UDRPC message format
1485 * TWEAK: Make the UpdraftClone suggestion sentences dismissible
1486 * TWEAK: Improve JSON-reparser to cope with even more exotic junk from some setups with problems elsewhere in their stack
1487
1488 = 1.16.12 - 16/Apr/2019 =
1489
1490 * FIX: Regression which caused PclZip unzips to be very slow
1491 * TWEAK: Add stream_meta to the list of log tables and tables not requiring search/replace
1492
1493 = 1.16.11 - 08/Apr/2019 =
1494
1495 * FIX: Issue which prevented the downloader UI being removed during a manual entity download (regression)
1496 * FIX: Regression in 1.16.10 whereby restore resumptions did not correctly resume because the jobdata had not been loaded
1497 * TWEAK: Update UpdraftCentral description and internationalize strings
1498 * TWEAK: Handle HTTP/2 responses from Dropbox on some operations
1499 * TWEAK: Add a timeout on Dropbox quota look-up operations during backup, in response to cases of faulty outgoing HTTP proxies
1500 * TWEAK: The backup_finish() method should not have been private; could cause a harmless PHP abort when manually stopping a backup
1501 * TWEAK: Wrong variable context could cause failure of SFTP progress recording
1502
1503 = 1.16.10 - 23/Mar/2019 =
1504
1505 * FEATURE: Added support for backing up and restoring SQL triggers
1506 * FIX: Prevent the downloader UI being removed before it's complete in the case of multi-archive sets (regression)
1507 * TWEAK: Refactor the restore code and use jobdata to save information about the restore rather than using $_POST data
1508 * TWEAK: Automatically show the UpdraftClone admin UI for UpdraftClone developers for easier debugging
1509 * TWEAK: Prevent a PHP notice with certain exclusion settings
1510 * TWEAK: Add a mention of UpdraftClone in WP's PHP version notice and WooCommerce's "untested extensions" notice
1511 * TWEAK: Add 5.1 to the built-in list of available UpdraftClone WP versions
1512
1513 = 1.16.8 - 13/Mar/2019 =
1514
1515 * FIX: If requesting clone credentials that were not ready, the loop could rapidly repeat instead of waiting the intended time
1516 * TWEAK: Some background updates checks (paid versions) that were intended to be suppressed, weren't being.
1517
1518 = 1.16.7 - 11/Mar/2019 =
1519
1520 * FEATURE: Add support for bucket-specific application keys in Backblaze
1521 * FEATURE: Added the ability to take incremental backups via UpdraftCentral
1522 * FIX: Dropbox authorisation setting getting lost after saving UpdraftPlus settings in the free version
1523 * FIX: Issue where an error wasn't thrown if you tried to restore a backup with no valid components
1524 * 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).
1525 * TWEAK: Ride a polling status check on the regular heartbeat check, thereby reducing the need for stand-alone polls
1526 * 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.
1527 * TWEAK: For premium users: Added the option to connect to UpdraftCentral Cloud at point of connecting a license to a site
1528 * 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
1529 * TWEAK: Clear settings visuals after wipe settings
1530 * TWEAK: Improve UpdraftPlus news layout on dashboard
1531 * TWEAK: Handle a case seen where the updates checker failed to load
1532 * TWEAK: Prevent a possible PHP notice when requesting a rating
1533 * TWEAK: Update to the current series (4.5) of yahnis-elsts/plugin-update-checker (paid versions)
1534 * TWEAK: The "follow this link to refresh your (licensing) connection)" (paid versions) link was not functioning
1535 * TWEAK: Alert the user in the UI if they have activated a storage destination without any settings
1536 * TWEAK: Refactor the remote storage logging code in the S3, Email, Remote send, Backblaze, WebDAV, UpdraftVault, FTP, Google Cloud and Azure modules
1537 * FEATURE: Ability to purchase UpdraftVault subscriptions, including a new 5GB 1 month trial, directly from the UpdraftVault settings
1538 * 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
1539 * TWEAK: Use the correct nonce name when requesting filesystem credentials if needing the WP_Filesystem API to delete old directories
1540 * 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
1541 * TWEAK: Refactor the remote storage logging code in all remote storage modules
1542 * TWEAK: Prevent the download entities UI becoming uglified from multiple button presses
1543
1544 = 1.16.6 - 14/Feb/2019 =
1545
1546 * FEATURE: Added new S3 intelligent tiering class
1547 * FEATURE: Ability for user to buy Premium without leaving the plugin's settings pages
1548 * 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
1549 * 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)
1550 * 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
1551 * PERFORMANCE: UpdraftClone now sends larger chunks over the network, leading to faster sending of data
1552 * PERFORMANCE: Force UpdraftClone to use a 100MB split size for better performance (previously intended, but not always working)
1553 * 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)
1554 * TWEAK: Add support for the new Europe (Stockholm) (eu-north-1) AWS region in Amazon S3
1555 * TWEAK: Advise the user if they changed the plugin's slug (and so won't be able to get updates) (paid versions)
1556 * TWEAK: Make use of wp_get_themes rather than relying solely to get_themes which is already deprecated
1557 * TWEAK: Regression: When a user aborted a fatal error occurred before all clean-up actions were complete
1558
1559 = 1.16.5 - 28/Jan/2019 =
1560
1561 * 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/)
1562 * FEATURE: Added command in WP-CLI which gives a list of incremental backups restore points.
1563 * FIX: Regression: When a Dropbox upload failed to complete, UpdraftPlus would log this but fail to retry
1564 * FIX: Again update phpseclib to the latest version which should now fix the 'SSH2 Server Host Key Algorithm Mismatch' on all installs
1565 * TWEAK: Correct a wrong variable reference in an error message
1566 * TWEAK: Only add the JavaScript for the incremental schedule selection on the UD settings page
1567 * TWEAK: Replace incidental use of ipinfo.io now that it requires a paid API key
1568 * TWEAK: The print_delete_old_dirs_form method should have been public to allow painting if the user clicked through the previous message
1569
1570 = 1.16.4 - 17/Jan/2019 =
1571
1572 * 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)
1573 * FIX: Correctly update the OneDrive refresh token to prevent expiry
1574 * 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
1575 * FIX: When restoring an incremental backup set via WP-CLI, the selected restore point was ignored
1576 * 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
1577 * TWEAK: Show the error message if mbstring.func_overload is turned on in php.ini while creating migration key
1578 * TWEAK: Added Azure China endpoint
1579 * TWEAK: Resolve "dashicons" CSS conflict
1580 * TWEAK: Add 'blogmeta' to the list of core tables (in readiness for WP 5.1)
1581 * TWEAK: Remove unnecessary deprecated (in PHP 7.3) parameter to define() in WebDAV HTTP library
1582 * TWEAK: Prevent a potential PHP notice in UpdraftPlus Premium when installed without network access
1583 * TWEAK: Enhance the updraftplus_exclude_file and updraftplus_exclude_directory filters to also pass the stored names
1584 * TWEAK: Add a new constant UPDRAFTPLUS_ZIP_BATCH_CEILING that can tweak internals of the zip backup engine
1585
1586 = 1.16.3 - 10/Jan/2019 =
1587
1588 * FIX: Prevent extraction regression (in 1.16.1) when using PclZip (N.B. php-zip is always preferred if installed) on zero-sized files
1589 * FIX: Prevent the incremental backup cron from being incorrectly scheduled
1590
1591 = 1.16.2 - 07/Jan/2019 =
1592
1593 * 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)
1594 * TWEAK: Updated phpseclib to the latest version after the previous work around to fix the 'SSH2 Server Host Key Algorithm Mismatch' issue
1595 * TWEAK: Check-in with the clone during the backup process to make sure it is not prematurely purged
1596
1597 = 1.16.1 - 01/Jan/2019 =
1598
1599 * FIX: If a very large UpdraftVault upload took more than an hour, then the token could expire without being refreshed
1600 * FIX: Version 2.16.0 could write invalid or incomplete JSON when creating the manifest file on an incremental backup under certain circumstances
1601 * FIX: When restoring an incremental backup set via WP-CLI, the restore order could be wrong
1602 * TWEAK: Accept and parse the invalid JSON when restoring an incremental archive created on 2.16.0
1603 * TWEAK: When running an incremental backup, the backup report would report the time taken to run the backup wrongly
1604 * TWEAK: Make the logging on the state of zip extraction more fine-grained (at least every 100MB, 1000 files or 15 seconds)
1605 * TWEAK: Re-factoring of zip extraction code to allow for future improvements
1606 * TWEAK: Re-factoring of the restore routines to share more code between different entry points, and allow future improvements
1607 * TWEAK: Differentiate between failures to JSON-decode an incremental backup manifest file and other types of failures
1608
1609 = 1.16.0 - 19/Dec/2018 =
1610
1611 * FEATURE: Added the ability to create and restore Incremental Backups (Premium version)
1612 * 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
1613 * TWEAK: Improve performance by aggregating separate SQL SELECT queries (previously one for each backup) when loading the settings page
1614 * TWEAK: internal backup extradata parameter to prevent unwanted PHP notices
1615 * TWEAK: Fork a method UpdraftPlus_Filesystem_Functions::unzip_file() to allow for future enhancements
1616 * TWEAK: Periodic purging of obsolete job data that didn't get cleaned when expected was not happening on multisite
1617 * TWEAK: Improve logging when the initial call to jobdata_set_multi fails
1618 * 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.
1619
1620 = 1.15.7 - 06/Dec/2018 =
1621
1622 * FIX: a method call on an incorrect class which caused a fatal error
1623
1624 = 1.15.6 - 06/Dec/2018 =
1625
1626 * FEATURE: Added WordPress 5.0 support to UpdraftClone
1627 * FEATURE: Added the ability to choose the UpdraftClone server location
1628 * FEATURE: Cut a step from the activation procedure on paid versions, improving reliability on some installs that did not detect available updates
1629 * TWEAK: The UpdraftClone video is inserted after clicking a link (prevent unwanted call to the video server)
1630 * TWEAK: Replace a 'continue' with a 'break' to prevent a PHP notice on PHP 7.3
1631 * 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.
1632 * TWEAK: (Paid versions) Remove a library versioning assumption in the processing of results from a licensing claim
1633 * TWEAK: (Paid versions) A regression had caused the current UD install version to be sent in an updates check
1634 * TWEAK: Re-factoring of scheduling methods into their own class
1635 * 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
1636
1637 = 1.15.5 - 19/Nov/2018 =
1638
1639 * TWEAK: Include the backup set ID in clone ready state file
1640 * 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
1641 * 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.
1642 * TWEAK: Track "more files" incremental backup locations
1643 * TWEAK: Don't show individual add-ons that have not been bought in the account add-ons page if the user has Premium.
1644 * TWEAK: Include the raw updates check response information in the internal/advanced dump
1645 * TWEAK: Added the UpdraftClone video
1646
1647 * TWEAK: Ability for user to buy Premium without leaving the plugin's settings pages
1648
1649 = 1.15.3 - 29/Oct/2018 =
1650
1651 * FEATURE: UpdraftPlus now has an option to auto-update
1652 * FEATURE: Azure for Government endpoint support (Premium)
1653 * FIX: SSL verification settings were not allowing verification to be turned off for generic S3 storage
1654 * 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
1655 * FIX: Prevent particular a SQL text pattern wrongly triggering detection of database features when it is within content
1656 * TWEAK: Marked as supporting WordPress 5.0
1657 * TWEAK: Automatically re-scan for presence of database backup after restoring it, to prevent confusion over its status
1658 * TWEAK: Change logic that controls whether the minified or full JavaScript is used
1659 * TWEAK: Improve Settings tab UI on mobile
1660 * TWEAK: Improve UpdraftClone UI
1661 * TWEAK: Improve UpdraftClone temporary page UI
1662 * 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)
1663 * TWEAK: Replace Base64 encoded logo by image file
1664 * TWEAK: Hide guided tour on UpdraftClone
1665 * TWEAK: Fixed broken automatic backup modal layout
1666 * TWEAK: Auto rescan after restoring the remote database
1667 * TWEAK: Explicitly set the backup history option to not autoload, as it can get non-trivial in size
1668 * TWEAK: Improve UI of excluding things from the backup
1669 * TWEAK: Prevent a possible PHP debug notice in methods/backup-module.php
1670 * TWEAK: Show progress in browser view port instead of modal dialog when we delete the backup(s).
1671 * 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.
1672 * TWEAK: Update the UpdraftClone UI when site information becomes available
1673 * TWEAK: Curl errors when interacting with Backblaze B2 will now be passed up for easier debugging
1674 * TWEAK: Re-factor add-on remote storage credential testing to make passing debugging information easier
1675 * TWEAK: Implement non-default SSL options with Backblaze B2 (previously the defaults were always used)
1676 * TWEAK: UpdraftClone: redirect to admin page after using the auto login link
1677 * TWEAK: Improve internal more files backup location tracking
1678 * TWEAK: Send a single request to download a backup set not for each file entity
1679 * TWEAK: Fix a DOM element whereby multiple nonces had the same id
1680 * TWEAK: Automatically build the more files backup location tracking on local rescan
1681 * TWEAK: Refactor the remote storage logging code in Onedrive module
1682
1683 = 1.15.2 - 19/Sep/2018 =
1684
1685 * FIX: Asking the tour to cancel on the plugins page did not work
1686 * FIX: an issue where some jobdata did not get set which resulted in the backup email not being sent
1687 * FIX: a regression whereby network-activated plugins could get deactivated on multisites when restoring
1688 * FIX: When database encryption was active, UpdraftClone would fail
1689 * TWEAK: There is now a 'Rescan remote storage - log results to console' link in 'Advanced Tools' to aid with debugging
1690 * TWEAK: Fixes Migrate / clone tab contents showing on the Advanced tools tab
1691 * 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
1692 * TWEAK: Re-factor and introduce the UpdraftPlus_Storage_Methods_Interface class
1693 * 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.
1694
1695 = 1.15.0 - 12/Sep/2018 =
1696
1697 * 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/
1698 * FIX: Fix the logic for claiming and activating licences/add-ons.
1699 * FIX: Fixed OneDrive for Business Germany authentication tenant issue
1700 * TWEAK: WP-CLI - use dash (-) instead of underscore (_) to separate words, in order to match WP-CLI standards.
1701 * TWEAK: Adds close_browser_connection capability for servers using phpfpm
1702 * TWEAK: Change multiple backups selection and actions UI
1703 * TWEAK: Prevent PHP debug message on backup from UpdraftCentral when processing the service list
1704 * TWEAK: Improves manual backup feedback
1705 * TWEAK: Fix an out-of-date 'lost password' link
1706 * TWEAK: Add filter updraftplus_disk_space_check to allow over-riding disk space check result
1707 * TWEAK: Re-factor some of the restore code to enable future enhancements
1708 * TWEAK: In the case of an 'always keep' backup, it was possible for the wrong log message to be logged concerning the reason for it being kept
1709 * TWEAK: Add log warning and WP Admin notice regarding DreamObjects objects-us-west-1.dream.io endpoint shutting down
1710 * TWEAK: Refactor the remote storage logging code
1711 * TWEAK: Clean up some confusing UI when dealing with remote send backups
1712
1713 = 1.14.13 - 15/Aug/2018 =
1714
1715 * FEATURE: WP-CLI - add a 'get_latest_full_backup' command
1716 * FIX: An issue when deleting multiple backups could result in a backup set not found error
1717 * FIX: Polling during a backup when called from outside UpdraftPlus
1718 * FIX: Plugin activation check was running at the wrong point in the restore process
1719 * FIX: The WP-CLI "restore" command returned an unnecessary error if the incremental shim was not present
1720 * TWEAK: Multisite tweaks for UpdraftCentral's plugin and theme module handlers
1721 * TWEAK: Prevent potential PHP notice on page load when no backup storage is selected
1722 * TWEAK: Add scoping to some CSS rules that were too general.
1723 * 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
1724 * TWEAK: Remove the possibility of a false-positive warning of a migration-rather-than-restoration if the WordPress home_url setting has legitimate oddities
1725 * TWEAK: Improve UI of more database delete button (Premium)
1726 * TWEAK: Removed Gold column and redesigned Premium page
1727 * TWEAK: Improve UC factoring and introduce a UPDRAFTCENTRAL_COMMAND constant to allow context detection
1728 * TWEAK: Tweaked downwards the minimum time in the future for rescheduling a resumption
1729 * TWEAK: Deal with a possible issue in automatic collation selection in restoration when all character sets are supported and a collation is not supported
1730 * TWEAK: Replace absolute URLs in place of relative URLs in anchor links
1731 * TWEAK: Update error code URL for binary zip errors
1732 * FEATURE: Added OneDrive for Business Germany compatibility
1733
1734 = 1.14.12 - 17/Jul/2018 =
1735
1736 * FEATURE: Added Plugin guided tour for new users
1737 * FEATURE: Added UpdraftCentral's theme management module handler
1738 * FEATURE: User can mark any backup as "do not delete", and it will then not be deleted even when retention limits are hit
1739 * FEATURE: WP-CLI - add a 'restore' command
1740 * FEATURE: WP-CLI - Add an option 'delete-during-restore' in the 'restore' command
1741 * 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
1742 * FEATURE: Added the ability to take an incremental backup via WP-CLI (note: incremental backups are still considered an experimental/work-in-progress feature)
1743 * FIX: If a user gave the wrong key to decrypt an encrypted database, the "Decryption failed" message did not display
1744 * FIX: The Migration was not changing an unsupported database table engine with the MyISAM engine automatically
1745 * FIX: Issue with the Dropbox account API call on some installs
1746 * FIX: The web server disk space refresh link of the existing backups is not working
1747 * FIX: The UpdraftPlus News couldn't print first time when the news cache was not made
1748 * FIX: Activating the "all addons" licence did not remove the corresponding 'activate on this account' link in the "Premium / Extensions" tab
1749 * 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
1750 * TWEAK: Updated the plugin.php handler for UpdraftCentral's new plugin management module
1751 * TWEAK: Update posts handler to fix and update pagination in UpdraftCentral
1752 * TWEAK: Refresh UpdraftCentral keys upon successful login or registration using the UpdraftCentral Cloud wizard
1753 * TWEAK: Correct admin page URL in WP-CLI 'restore' command when on multisite without multisite add-on
1754 * TWEAK: Prevent PHP notice when checking non-existent files in relation to an extraneous whitespace warning
1755 * TWEAK: Prevent PHP notices in add-ons with non-present settings
1756 * TWEAK: Add the "Migrate / Clone" tab in place of the "Migrate / Clone" dialog
1757 * TWEAK: Prevent call to the the wp_get_sites() deprecated function on WP 4.6 and newer
1758 * TWEAK: Prevent a potential PHP debugging notice when displaying the 'Connect with your UpdraftPlus.com' form
1759 * TWEAK: Do not show the confusing JetPack 'backup' notice on the 'Updates' page
1760 * TWEAK: Added clone notices and commands for when UpdraftPlus is running on a UpdraftClone
1761 * TWEAK: Move 'Log all messages to syslog (only server admins are likely to want this)' into the 'expert' settings section
1762 * 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)
1763 * TWEAK: It's "backup", not "back up"
1764 * TWEAK: Prevent potential PHP debugging notices in restoration step 2
1765 * 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
1766 * TWEAK: Improved code in a way that prevents continuous polling in the themes page, the plugins page and the updates page
1767
1768 = 1.14.11 - 25/May/2018 =
1769
1770 * 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))
1771
1772 = 1.14.9 - 24/May/2018 =
1773
1774 * FEATURE: Make it more seamless to sign up to UpdraftCentral Cloud
1775 * FEATURE: Microsoft Azure storage (Premium) compatibility with Azure Germany
1776 * FEATURE: Added the ability to create migration keys from WP-CLI (Premium)
1777 * FIX: A backup icon/storage shows for a storage type even if all instances were disabled
1778 * FIX: WP CLI updraftplus command was not running on few environments like the Windows command line
1779 * FIX: A PHP fatal error was occurring when a user try to restore an encrypted DB when defining the "UPDRAFTPLUS_DECRYPTION_ENGINE" constant
1780 * TWEAK: Added the ability to schedule incremental backups (Note you can not yet take incremental backups)
1781 * REFACTOR: Completed factoring for tabs of the settings page.
1782 * TWEAK: Some re-factoring and tidying of the restoration code for easier maintenance
1783 * TWEAK: Add a longer timeout on SFTP logins to cope with a 'long delay, but then worked' situation seen in the wild
1784 * TWEAK: An "Incremental backups" extension was displayed in the Premium / Extensions tab, causing confusion since it is not yet finished/launched
1785 * 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
1786 * TWEAK: A WP CLI Existing backup command didn't display a date time in the "job_identifier" column
1787 * TWEAK: Add links to the relevant app privacy policies within the settings sections for storage methods using OAuth authorization apps
1788 * TWEAK: Log user and group IDs of process and file/folder, when permissions for an operation is denied
1789 * TWEAK: Prevent a potential PHP debugging notice when showing the 'Upload' button
1790 * TWEAK: Update an out-of-date "wrong password" link
1791 * 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.
1792 * TWEAK: When a Google Cloud token was invalid, a PHP Fatal could result instead of catching the error and informing/logging nicely
1793 * TWEAK: If php-xml (SimpleXMLElement) is not installed, then show an appropriate warning in the Azure configuration section
1794 * 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
1795 * TWEAK: If a fatal error occurred during uploading a backup, try to recover it and process the upload further
1796
1797 = 1.14.8 - 12/May/2018 =
1798
1799 * FIX: Resuming of a partially uploaded backup archive in the new 'OneDrive for Business' module was not working
1800 * 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)
1801 * TWEAK: OneDrive SDK cleaned up to remove the obsolete Live 5.0 API
1802
1803 = 1.14.7 - 25/Apr/2018 =
1804
1805 * 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!
1806
1807 = 1.14.6 - 25/Apr/2018 =
1808
1809 * FEATURE: Added the option to upload locally-available backups to remote storage
1810 * FEATURE: Add post management module for UpdraftCentral (client-side; UC-side still pending)
1811 * FEATURE: Added WP-CLI "rescan-storage" subcommand to the WP-CLI add-on rescan either remote storage or local storage
1812 * FEATURE: Compatibility of the (paid) OneDrive module with 'OneDrive for Business'
1813 * FIX: Multisite restoration did not display single site restoration option when URLs were different but clearly the same site (http/https difference)
1814 * FIX: WebDAV uploads could fail if the user defined the constant UPDRAFTPLUS_WEBDAV_NEVER_CHUNK
1815 * FIX: If UpdraftVault remote had failed, UpdraftVault couldn't recover without settings wipe
1816 * TWEAK: Handle a DreamObjects server that was not sending an application/xml content-type header
1817 * TWEAK: Handle a case where the root cause of an error from DreamObjects was not being clearly shown
1818 * 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
1819 * TWEAK: Adjust the PclZip log message to clarify the implications of using PclZip (i.e.: it's significantly slower)
1820 * TWEAK: Add support for the upcoming objects-us-east-1.dream.io DreamObjects endpoint
1821 * TWEAK: Prevent potential PHP notice in WP-CLI subcommand for existing backups
1822 * TWEAK: Add UpdraftPlus news in admin dashboard "WordPress Events & News" widget
1823
1824 = 1.14.5 - 3/Apr/2018 =
1825
1826 * FEATURE: Add a "Database only" option to the UpdraftPlus email backup options
1827 * FEATURE: An UpdraftPlus add-on (paid) to run the backup process through WP CLI
1828 * FIX: Restoration did not display the decryption passphrase input (but always used the saved one)
1829 * FIX: Browse content download file was not working in Windows hosting
1830 * FIX: The wrong default for the 'Delete local backup' setting was applied if you had never saved your settings
1831 * TWEAK: Prevent a PHP notice showing when testing S3 storage
1832 * TWEAK: Prevent a PHP notice when downloading from Dropbox
1833 * TWEAK: Improved the migrate UI
1834 * TWEAK: Update bundle cacert bundle to latest (2018-01-17) release
1835 * TWEAK: Ajouter soutien pour le nouveau region AWS Paris (eu-west-3)
1836 * TWEAK: Handle short filesystem reads when sending data to Google Drive
1837 * TWEAK: Improve handling of PHP errors and exceptions during back-end calls
1838 * TWEAK: Update internal OneDrive SDK for compatibility with 'OneDrive for Business' (not yet fully supported)
1839 * TWEAK: Internal refactoring and improvements to the UpdraftPlus.com form
1840 * TWEAK: Job ID is now separate from the file nonce
1841 * TWEAK: Show increments in the UI
1842 * TWEAK: Add visibility controls to functions of a stream wrapper class for WebDAV access
1843 * TWEAK: Handle errors when getting folder ID from Google Drive more patiently
1844 * TWEAK: Displays more descriptive error when google drive authentication error occur
1845
1846 = 1.14.4 - 19/Feb/2018 =
1847
1848 * FEATURE: Now supports AWS v4 signatures (allowing use of new AWS regions) with old S3 SDK (which is used on PHP 5.2)
1849 * FIX: WebDAV options filter was not correctly saving any human-chosen description
1850 * FIX: Regression: Rackspace 'new user' wizard was not functioning
1851 * 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
1852 * FIX: First instance of each remote storage object was not using its internal default options
1853 * 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)
1854 * TWEAK: Edit welcome banner
1855 * TWEAK: If 'lock admin' functionality (Premium) has been disabled by the site administrator, then include a line to that effect in the relevant section.
1856 * TWEAK: Allow UpdraftCentral classes to have boiler-plate pre and post-call methods
1857 * TWEAK: Do a bit more logging for Backblaze B2 uploads
1858 * TWEAK: Add a sanity check to prevent some PHP debug notices being logged in an upgrade situation
1859 * TWEAK: Resolved unwanted WebDAV remote storage JavaScript console message
1860
1861 = 1.14.3 - 24/Jan/2018 =
1862
1863 * FEATURE: OneDrive and Google Cloud deauthorise link provided after authentication
1864 * FEATURE: Added the ability to label remote storage instances (Premium)
1865 * 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
1866 * TWEAK: Add functions to pull backup status and log for UpdraftCentral
1867 * TWEAK: Add command multiplexer function for UpdraftCentral
1868 * TWEAK: Audit and regularise use of slash-handling code in AJAX layer
1869 * TWEAK: A couple of remote storage error paths were not returning the error information to the upper level correctly
1870 * 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
1871 * TWEAK: Some minor code-styling and linting ignore tweaks
1872 * TWEAK: (Regression) After filling the UpdraftVault connect form, pressing Enter was no longer triggering submission
1873 * TWEAK: If counting up the total "More files" data when none are configured to be backed up, show "None configured" instead of "Error"
1874 * TWEAK: Improve UI of notice when claiming an add-on
1875 * TWEAK: Standardise the way OAuth remote storage methods authorise/deauthorise settings
1876 * TWEAK: "Wipe Settings" button click event was not asking for confirmation
1877 * TWEAK: Add Server Side Encryption (SSE) support to old S3 SDK
1878 * TWEAK: Dropbox now uses the internal chunked download API
1879
1880 = 1.14.2 - 22/Dec/2017 =
1881
1882 * FIX: Email backups not sending correctly
1883 * FIX: Buttons in the 'Migrate' dialog box stopped working after you switched tabs (until you reload the page)
1884 * FIX: Unable to delete multi-storage S3 instances
1885 * TWEAK: Remove duplicate DOM id for nonce fields
1886 * TWEAK: Correct name of PutObjectAclVersion permission when requesting it in S3 wizard
1887 * TWEAK: Improve S3 log message to make clear which back-end a message is coming from
1888 * TWEAK: Improved migration warning message if migrator addon is available and restoration site url is slightly different than current site url
1889 * TWEAK: New non-existent Backblaze B2 buckets are now created automatically
1890 * TWEAK: Suppress expected (but confusing to some users) "404 not found" message in the log when WebDAV backup file is at 0% uploaded
1891
1892 = 1.14.1 - 12/Dec/2017 =
1893
1894 * FEATURE: Backup to multiple remote storage accounts of the same type
1895 * 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.
1896 * TWEAK: Prevent a PHP log notice in some settings savings scenarios
1897 * TWEAK: Add missing filter for processing changes to Google Cloud, OneDrive and Azure settings (Premium storage option) on multisite
1898 * TWEAK: Minor internal re-factoring: move hard-coded storage back-end names out of options and multisite addon classes.
1899 * TWEAK: Prevent a PHP log notice during backup on PHP 7.2
1900
1901 = 1.13.16 - 07/Dec/2017 =
1902
1903 * TWEAK: Remove Ukrainian translation files from wordpress.org zip (translation now complete, will download from wordpress.org separately)
1904 * TWEAK: Adding V4 Signature properties and methods to old S3 SDK
1905 * TWEAK: Migrator add-on: keep a log of tables as they are created
1906 * TWEAK: Tweak wording on the 'Premium/Extensions' tab
1907 * TWEAK: Change the order of classes in methods/cloudfiles.php to work around a PHP install bug seen in one instance
1908 * TWEAK: Be less aggressive about logging a usually unnecessary internal message about settings
1909 * TWEAK: Improve UI of migration notice in free version
1910 * TWEAK: Resolve PSR4 autoloading conflict with older version of Composer
1911 * TWEAK: Pruning will now prune backups from multiple storage destinations of the same type (not yet a user-visible feature)
1912 * TWEAK: Update the 'ifeq' handlebars helper to resolve a conflict with MainWP
1913
1914
1915 = 1.13.15 - 28/Nov/2017 =
1916
1917 * FIX: Updated OneDrive SDK to allow for PHP 7.2 (due for release soon) compatibility
1918 * FIX: When multiple remote backup destinations existed, pruning of old backup sets was not removing from all destinations (recent regression)
1919 * FIX: When re-scanning a Rackspace Cloud Files remote location, only the first 100 files were processed
1920 * FIX: Backups being downloaded twice from Dropbox during a restore which could cause unexpected results upon a site migration
1921 * 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)
1922 * TWEAK: Improve export settings file name by appending site name to export download file
1923 * TWEAK: Perform escaping of table names in SQL calls without using esc_sql()
1924 * TWEAK: Site option is deleted before updating it in multisite
1925 * TWEAK: Improve WebDAV remote method upload speed
1926 * TWEAK: Improve WebDAV remote method download speed
1927
1928 = 1.13.14 - 21/Nov/2017 =
1929
1930 * FIX: Search/replace checkbox was not appearing when migrating a multisite setup
1931 * 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.
1932 * FIX: WebDAV remote storage settings not being loaded onto the settings page properly
1933 * 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.
1934 * TWEAK: Improve formatting of restoration warnings
1935 * TWEAK: Add css classes to backup templates
1936 * TWEAK: Standardise the way storage classes are internally stored/retrieved
1937 * TWEAK: Remote storage modules configuration templates transition using handlebars.js
1938 * TWEAK: Adjust message mentioning mcrypt which is not needed if php-openssl is installed
1939 * TWEAK: Add UPDRAFTPLUS_USE_WPDB constant
1940
1941 = 1.13.13 - 02/Nov/2017 =
1942
1943 * FIX: Google Drive Custom App authorisation and de-authorisation was not working
1944 * FIX: Rackspace new user creation had stopped filling the new credential fields automatically after successful creation of a new user
1945 * TWEAK: When migrating, the detected search/replace terms now make sure that http and https variants are both included as search terms
1946 * TWEAK: Make the internal error code with OneDrive auth failures more accurate
1947 * TWEAK: Remote storage modules configuration templates transition using xamin/handlebars.php libraries
1948 * TWEAK: Changed the Dropbox authentication flow to not send a GET request on large URLs
1949 * TWEAK: Improve error message when invalid bucket name given by user for Backblaze remote storage method
1950
1951 = 1.13.12 - 25/Oct/2017 =
1952
1953 * TWEAK: Showing search/replace checkbox option only when needed.
1954 * FEATURE: Warn the user if their .htaccess seems to contain a redirect (or any other reference) to the old site after migration.
1955 * FEATURE: When importing a database, warn the user if the current MySQL server does not support a used collation, and offer to replace it
1956 * FIX: Saving of S3 settings had taken a dislike to buckets beginning with a capital 'B'
1957 * FIX: UpdraftCentral users' module was failing to handle loading a very large number of users
1958 * TWEAK: Allows the installation and/or activation of the WP-Optimize plugin from UpdraftCentral
1959 * TWEAK: Add multisite attribute to the error response object for the create user, delete user and edit user actions.
1960 * TWEAK: All remote storage methods are ported over to using configuration templates internally
1961 * TWEAK: Include a method to add a manifest file inside each backup archive
1962 * 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/)
1963 * TWEAK: Prevent a PHP log notice upon database backup restore when using Google Drive without a client ID
1964 * TWEAK: Prevent the final 'Restore' button being pressed a second time
1965 * TWEAK: Improvements to the UpdraftCentral wizard
1966 * TWEAK: Update to trunk version of plugin updater (paid versions), restoring the ability to work on older WP versions (3.8 and before)
1967 * TWEAK: Add lbakut_activity_log to the list of large log tables
1968 * TWEAK: Updater in paid versions now requests JSON as response format for responses when claiming entitlements
1969 * TWEAK: Resolve: Backup labels could end up with extraneous slashes in output
1970 * TWEAK: Updater in paid versions can now receive and process update information in respond to entitlement claim - one less HTTP round-trip
1971 * TWEAK: Improve Google Cloud authentication success message for bucket name is not defined
1972 * TWEAK: UpdraftVault commands now pass an instance identifier
1973 * FEATURE: Backups can now be uploaded to multiple instances of the same remote storage but not yet possible to add multiple instances
1974
1975 = 1.13.11 - 27/Sep/2017 =
1976
1977 * FIX: Fix a failure (regression in 1.13.8+) to download some backup sets which pre-date the existence of instances
1978 * FIX: Fix a failure to backup in the short-lived 1.13.10 (many apologies)
1979 * TWEAK: When logging an Exception or Error, include a backtrace (WP 3.4+)
1980 * TWEAK: Prevent a PHP warning during a save of the backup history
1981 * TWEAK: Added a MetaSlider notice in the notices collection
1982 * 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
1983
1984 = 1.13.9 - 25/Sep/2017 =
1985
1986 * FEATURE: Backblaze B2 (https://www.backblaze.com/b2/) support in UpdraftPlus Premium
1987 * TWEAK: Port job data used by Azure, Google Cloud and OneDrive storage to being instance-local (now believed to all be ported)
1988 * TWEAK: The automatic correcting of wrongly-input S3 and FTP settings had regressed in a recent version
1989 * TWEAK: Various small fixes to the standards compliance of the HTML output in the remote storage settings area
1990 * TWEAK: When deleting backups with multiple remote storage instances of the same type, order the attempts
1991
1992 = 1.13.8 - 21/Sep/2017 =
1993
1994 * 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)
1995 * FEATURE: Generic S3 storage module can now use non-default ports (specify by appending :(port number) to the host name)
1996 * 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.
1997 * 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/)
1998 * TWEAK: UpdraftCentral will no longer show updates which WordPress core lists which appear to be of the same version number
1999 * TWEAK: Handle trying to download a zero-sized file through the browser more elegantly
2000 * TWEAK: When pressing 'Delete', the "also delete remote backup" checkbox was showing even for backups without remote storage
2001 * TWEAK: Abstract history handling into a separate class, UpdraftPlus_Backup_History, for easier maintenance
2002 * TWEAK: Remove a use of count() on a string to prevent a new PHP notice on PHP 7.2+
2003 * TWEAK: Some changes to the UpdraftCentral connection tool to make it more user-friendly
2004 * TWEAK: Clarified and documented the re-scanning code, and made it compatible with the increased flexibility needed for incremental backups in future
2005 * TWEAK: Tweaked UpdraftCentral GA handler to support Tracking ID editing and disconnection.
2006 * 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
2007 * TWEAK: Make the UPDRAFTPLUS_IPV4_ONLY constant take effect more widely
2008 * TWEAK: Do not duplicate remote instance ID records in the backup history when re-scanning
2009 * TWEAK: Keep the remote instance ID list consistent with the remote service list when re-scanning
2010 * TWEAK: Prevent a PHP notice that could appear for locally stored backups in UpdraftPlus::get_storage_objects_and_ids()
2011
2012 = 1.13.7 - 06/Sep/2017 =
2013
2014 * FIX: UpdraftCentral connectivity for various operations restored (regression in 1.13.6)
2015 * FIX: No error message was being shown when a backup to local storage was missing upon restore
2016 * COMPATIBILITY: Replace uses of the deprecated (PHP 7.2+) each() function
2017 * TRANSLATION: Portuguese (Portugal) and Romanian translations are now complete and supplied from wordpress.org, so can be removed from the free plugin zip
2018 * TWEAK: Fix some wrongly-called translation functions, and pull more known strings into the Premium version
2019 * 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)
2020 * TWEAK: Exclude some unnecessary build and unused files from the release zip (reduce disk space and download size)
2021
2022 = 1.13.6 - 05/Sep/2017 =
2023
2024 * FEATURE: Google Drive authorisation now goes via an officially registered app for easier connections to Google Drive.
2025 * FEATURE: Include commands for UpdraftCentral's (https://updraftcentral.com) Google Analytics management facility (check the changelog.txt for the release)
2026 * FIX: Correct handling of OneDrive folder names featuring spaces (possibly a regression/change in the handling at OneDrive's end)
2027 * TWEAK: Prevent messy layout when the last log message is very long
2028 * TWEAK: Log catchable fatal errors and exceptions during backup in PHP 7
2029 * TWEAK: Log catchable fatal errors and exceptions during restore in PHP 7
2030 * TWEAK: Log catchable fatal errors and exceptions during backup download in PHP 7
2031 * TWEAK: Reduce amount of database logging during existing zip analysis, database backup and pruning stages
2032 * 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)
2033 * TWEAK: Catches and more elegantly handles errors when a settings import file cannot be JSON-parsed
2034 * TWEAK: Request list of available add-ons (paid versions) from the mothership in current format
2035 * TWEAK: Added custom backup message parameter backupnow_message in function updraft_backupnow_inpage_go()
2036 * TWEAK: General code tidy-up, making older code conform to our current standards
2037 * TWEAK: Add the possibility of passing back associated data with test results, and log it in the browser console
2038 * TWEAK: When carrying out a remote storage test, pass the state of the 'debug' setting
2039 * TWEAK: When testing SFTP settings, if debug is activated, activate debug logging and pass the results back in the event of test failure
2040 * TWEAK: Optimise away a database query in the case of no UpdraftCentral keys existing
2041 * 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/)
2042 * TWEAK: Backup files missing error message corrected
2043 * TWEAK: Add the handlebars-js and xamin/handlebars.php libraries
2044 * TWEAK: The FTP storage module has been ported to outputting its configuration via a template
2045 * TWEAK: Introduce internal API and port all job data saved in storage modules to be instance-local
2046
2047 = 1.13.5 - 08/Aug/2017 =
2048
2049 * TWEAK: Manage phpseclib through composer
2050 * TWEAK: Do less logging to database when resuming and noticing already-processed tables (saves resources)
2051 * TWEAK: Returns comment status when updating comments from UpdraftCentral
2052 * TWEAK: Update plugin-updates-checker library to current (4.2), and manage via composer, replacing bundled copy in the build source
2053 * TWEAK: Replace uses of create_function(), which is deprecated on PHP 7.2
2054 * TWEAK: Replace deprecated constructors (PHP 7+) in webdav module
2055 * 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/
2056 * TWEAK: Make the UpdraftCentral updates checking able to cope with a wider range of third-party schemes
2057 * TWEAK: General code tidy-up, making older code conform to our current standards
2058 * TWEAK: Minor version updates of some bundled libraries
2059 * TWEAK: Produce and use minified resources (CSS/JS) where available
2060 * TWEAK: Update class-udrpc to latest (1.4.14) which removes a conflict with other code that may interact with CORS OPTIONS requests
2061 * 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)
2062 * TWEAK: Update Google Cloud bucket locations
2063
2064 = 1.13.4 - 08/Jun/2017 =
2065
2066 * FIX: Import function had a regression and was not coping with all formats
2067 * TWEAK: When the import function failed, the error was not shown to the user
2068
2069 = 1.13.3 - 07/Jun/2017 =
2070
2071 * FIX: Revert Dropbox authentication change in 1.13.2, which was not working on all sites
2072
2073 = 1.13.2 - 07/Jun/2017 =
2074
2075 * TWEAK: Marked as tested and compatible on WordPress 4.8
2076 * TWEAK: Dropbox authentication flow can now use POST for the final step, side-stepping (arbitrary) parameter length restrictions on some Apache mod_security setups
2077 * TWEAK: Prevent a possible PHP notice when curl is not present
2078 * TWEAK: Point Clef users towards Keyy
2079 * TWEAK: Do not open an alert box when the user changes their site ID in 'Advanced Tools'
2080 * TWEAK: Fix parameters to updraft_check_overduecrons() JS function
2081
2082 = 1.13.1 - 09/May/2017 =
2083
2084 * 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)
2085 * FIX: Added a nonce to the Dropbox deauth link. This is a minor security issue - someone personally targeting 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.
2086 * FIX: Import settings now handle the new remote storage options format
2087 * FIX: The zip file browser was not working in free versions
2088 * TWEAK: Added a version check when saving settings to prevent errors or lost settings
2089 * TWEAK: 'Existing Backups' table now shows an icon for each remote destination that the backup was sent to
2090 * TWEAK: Update SSL CA certificates file
2091 * TWEAK: If, when uploading to S3, a file is not found, handle it slightly more elegantly
2092 * TWEAK: Work with some WebDAV servers that previously sent empty responses to OPTIONS requests
2093
2094 = 1.12.40 - 01/Apr/2017 =
2095
2096 * TWEAK: The in-page log file display had stopped continuously updating in 1.12.32
2097 * FIX: In some circumstances, settings for the storage modules refactored in 1.12.37 could fail to show
2098 * FIX: The free version of 1.12.37/38 in some circumstances could fail to complete Dropbox authentication
2099
2100 = 1.12.38 - 31/Mar/2017 =
2101
2102 * TWEAK: Dropbox API v2 call to de-authorise a token was failing
2103 * FIX: Prevent a fatal error when attempting to use a backup method with no options set
2104
2105 = 1.12.37 - 31/Mar/2017 =
2106
2107 * FEATURE: Browse the contents of a backup from within your WordPress dashboard, and (with Premium) download individual files from it
2108 * FIX: Fix an issue that could occasionally cause corruption of interrupted Dropbox backups. All Dropbox users are recommended to update asap.
2109 * TWEAK: Remove debugging statement inadvertently left in 1.12.36
2110 * 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.
2111 * TWEAK: List of checksum algorithms run over backups and logged now includes SHA256, and is filterable (SHA1 now considered deprecated)
2112 * TWEAK: Allow chunked database encryption to try and resume in the event of an error
2113 * TWEAK: Improve the premium/extension tab content
2114 * TWEAK: Fix an issue whereby the UpdraftVault settings section could show a bogus problem with checking quota immediately after initial setup
2115 * TWEAK: When requesting a download, work around buggy browser/server that continued after Connection: close
2116 * TWEAK: Improve the UI experience when downloading a log file for display fails
2117 * TWEAK: Prevent PHP notice if another plugin cancels a cron event
2118 * TWEAK: Tweak semaphore handling and enhance logging
2119
2120 Older changes are found <a href="https://plugins.svn.wordpress.org/updraftplus/trunk/changelog-old.txt">in the changelog-old.txt file in the plugin directory.</a>
2121
2122 == Screenshots ==
2123
2124 1. Main dashboard - screenshots are from UpdraftPlus Premium, so may reference some features that are not part of the free version
2125
2126 2. Configuring your backups
2127
2128 3. Take a backup
2129
2130 4. Choose which components to restore
2131
2132 5. Restoration shows as successful
2133
2134 6. To migrate, first click 'Database', 'Plugins' etc. to download these backups to your local machine.
2135
2136 7. On the destination site, 'upload backup files' from the source site to restore and migrate to the new destination.
2137
2138 == License ==
2139
2140 Copyright 2011-24 David Anderson
2141
2142 This program is free software; you can redistribute it and/or modify
2143 it under the terms of the GNU General Public License as published by
2144 the Free Software Foundation; either version 3 of the License, or
2145 (at your option) any later version.
2146
2147 This program is distributed in the hope that it will be useful,
2148 but WITHOUT ANY WARRANTY; without even the implied warranty of
2149 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
2150 GNU General Public License for more details.
2151
2152 You should have received a copy of the GNU General Public License
2153 along with this program; if not, write to the Free Software
2154 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
2155
2156 Non-English translators are provided by volunteers, and wordpress.org does not give plugin developers control over their translations; thus relying on them is at your own risk; UpdraftPlus cannot guarantee that translations from the original English are accurate.
2157
2158 We recognise and thank those mentioned at https://updraftplus.com/acknowledgements/ for code and/or libraries used and/or modified under the terms of their open source licences.
2159
2160 == Upgrade Notice ==
2161 * 1.26.4: Regression in 1.26.2 stopped saving rules and schedule. Various fixes and small tweaks - see the changelog for details. A recommended update for all.
2162