-
Notifications
You must be signed in to change notification settings - Fork 74
/
readme.txt
1316 lines (1047 loc) · 55.6 KB
/
readme.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
=== BackUpWordPress ===
Contributors: xibodevelopment, willmot, dashaluna, pauldewouters, joehoyle, mattheu, tcrsavage, cuvelier, katmoody, sambulance, dnutbourne, snightingale
Tags: back up, backup, backups, database, zip, db, files, archive, wp-cli, xibodevelopment
Requires at least: 3.9
Tested up to: 5.1
Stable tag: 3.10
Simple automated backups of your WordPress-powered website.
== Description ==
BackupWordPress was created by our friends at Human Made but is now under new ownership. We're committed to opensource and WordPress and will provide free support for the many BackupWordPress fans.
We'll make occasional updates to the free software - please send us any patches you'd like to see released here: [https://github.com/orgs/xibodevelopment/](https://github.com/orgs/xibodevelopment/)
However, we'll no longer be selling or supporting the paid add-ons (e.g. for backups to Dropbox and Google Drive). It's certainly a good idea to backup to cloud storage to protect against server-wide risks.
For this we recommend [UpdraftPlus WordPress Backups](https://updraftplus.com/?afref=744) which can do things for free BackupWordPress Premium could do on a paid basis. Click here for [full comparison](https://updraftplus.com/backupwordpress/?afref=744).
BackUpWordPress will back up your entire site including your database and all your files on a schedule that suits you. Try it now to see how easy it is!
This plugin requires PHP version 5.3.2 or later
= Features =
* Super simple to use, no setup required.
* Works in low memory, "shared host" environments.
* Manage multiple schedules.
* Option to have each backup file emailed to you.
* Uses `zip` and `mysqldump` for faster backups if they are available.
* Works on Linux & Windows Server.
* Exclude files and folders from your backups.
* Good support should you need help.
* Translations for Spanish, German, Chinese, Romanian, Russian, Serbian, Lithuanian, Italian, Czech, Dutch, French, Basque.
= Help develop this plugin =
The BackUpWordPress plugin is hosted on GitHub, if you want to help out with development or testing then head over to [https://github.com/orgs/xibodevelopment/backupwordpress/](https://github.com/orgs/xibodevelopment/backupwordpress/)
= Translations =
We'd also love help translating the plugin into more languages, if you can help then please visit [https://translate.wordpress.org/projects/wp-plugins/backupwordpress/dev/](https://translate.wordpress.org/projects/wp-plugins/backupwordpress/dev/) to start translating.
== Installation ==
1. Install BackUpWordPress either via the WordPress.org plugin directory, or by uploading the files to your server.
2. Activate the plugin.
3. Sit back and relax safe in the knowledge that your whole site will be backed up every day.
The plugin will try to use the `mysqldump` and `zip` commands via shell if they are available, using these will greatly improve the time it takes to back up your site.
== Frequently Asked Questions ==
**Where does BackUpWordPress store the backup files?**
Backups are stored on your server in `/wp-content/backups`, you can change the directory.
Important: By default BackUpWordPress backs up everything in your site root as well as your database, this includes any non WordPress folders that happen to be in your site root. This does mean that your backup directory can get quite large.
**What if I want to back up my site to another destination?**
We no longer be sell or support the paid add-ons (e.g. for backups to Dropbox and Google Drive). It's certainly a good idea to backup to cloud storage to protect against server-wide risks. For this we recommend [UpdraftPlus WordPress Backups](https://updraftplus.com/?afref=744) which can do things for free BackupWordPress Premium could do on a paid basis. Click here for [full comparison](https://updraftplus.com/backupwordpress/?afref=744).
**How do I restore my site from a backup?**
You need to download the latest backup file either by clicking download on the backups page or via `FTP`. `Unzip` the files and upload all the files to your server overwriting your site. You can then import the database using your hosts database management tool (likely `phpMyAdmin`).
**Does BackUpWordPress back up the backups directory?**
No.
**I'm not receiving my backups by email**
Most servers have a filesize limit on email attachments, it's generally about 10mb. If your backup file is over that limit, it won't be sent attached to the email. Instead, you should receive an email with a link to download the backup. If you aren't even receiving that, then you likely have a mail issue on your server that you'll need to contact your host about.
**How many backups are stored by default?**
BackUpWordPress stores the last 10 backups by default.
**How long should a backup take?**
Unless your site is very large (many gigabytes) it should only take a few minutes to perform a backup. If your back up has been running for longer than an hour, it's safe to assume that something has gone wrong. Try de-activating and re-activating the plugin. If it keeps happening, contact support.
**What do I do if I get the wp-cron error message?**
The issue is that your `wp-cron.php` is not returning a `200` response when hit with a HTTP request originating from your own server, it could be several things. In most cases, it's an issue with the server / site.
There are some things you can test to confirm this is the issue.
* Are scheduled posts working? (They use wp-cron as well.)
* Are you hosted on Heart Internet? (wp-cron may not be supported by Heart Internet, see below for work-around.)
* If you click manual backup, does it work?
* Try adding `define( 'ALTERNATE_WP_CRON', true );` to your `wp-config.php`. Do automatic backups work?
* Is your site private (i.e. is it behind some kind of authentication, maintenance plugin, .htaccess)? If so, wp-cron won't work until you remove it. If you are and you temporarily remove the authentication, do backups start working?
**How to get BackUpWordPress working in Heart Internet**
The script to be entered into the Heart Internet cPanel is: `/usr/bin/php5 /home/sites/yourdomain.com/public_html/wp-cron.php` (note the space between php5 and the location of the file). The file `wp-cron.php` `chmod` must be set to `711`.
**My backups seem to be failing?**
If your backups are failing, it's commonly caused by a lack of available resources on your server. To establish this is the case, exclude the complete (or parts of the) uploads folder and run a backup. If that succeeds, you know it's probably a server issue. If it does not succeed, you can find further assistance on our <a href="http://wordpress.org/support/plugin/backupwordpress" title="support forums" target="_blank">support forums</a>
**Further Support & Feedback**
General support questions should be posted in the <a href="http://wordpress.org/tags/backupwordpress?forum_id=10">WordPress support forums, tagged with backupwordpress.</a>
For development issues, feature requests or anybody wishing to help out with development checkout <a href="https://github.com/orgs/xibodevelopment/backupwordpress/">BackUpWordPress on GitHub.</a>
== Screenshots ==
1. Manage multiple schedules.
2. Choose your schedule, backup type, number of backups to keep and whether to receive a notification email.
3. Easily manage exclude rules and see exactly which files are included and excluded from your backup.
== Upgrade Notice ==
= 3.4 =
* This version introduces a major refactoring of the code responsible for the core backup engine. We made sure to write
unit tests for the new code, and we have tested it on several user's sites. It fixes a lot of old bugs, and Windows
users should see major improvements to reliability.
= 3.3.4 =
* WordPress 4.4 compatibility.
= 3.3.1 =
* Fixes a bug that would prevent downloading backups since 3.3.0 - please update.
= 3.2.5 =
* Security fixes related to add_query_arg
= 3.2.1 =
* Important bug fixes. Please upgrade to this version to avoid incomplete or broken backups.
= 3.1.3 =
* Fixes backwards compatibility for add-ons and avoids a Fatal Error. Please upgrade straight to this version before upgrading your add-ons.
= 3.0.4 =
* Fixes a few minor bugs. Immediate update is recommended.
= 3.0.2 =
* Important: we have dropped support for PHP 5.2, you will not be able to activate BackUpWordPress on a server running PHP versions older than PHP 5.3.29
= 3.0.1 =
* This is a critical update. Fixes a bug in the core backup library. Please update immediately.
== Changelog ==
### 3.10 / 2019-06-12
* Fixed whitelist-html
### 3.9 / 2019-06-10
* Readme update
### 3.8 / 2018-11-01
* GNU Wording change
### 3.7.2 / 2018-10-29
* Check remove intercomm links
### 3.7.1 / 2018-09-11
* Fixed admin notices
### 3.7 / 2018-08-30
* Updated readme to reflect ownership changes
* Stripped out support and premium links
### 3.6.4 / 2016-06-02
* Various improvements to exclusion handling.
* i18n improvements.
* Misc. UI improvements.
### 3.6.3.1 / 2016-12-14
* Fix issue where low disk space caused the admin interface to be unavailable
* Fix issue where admin notices were causing databases and error logs to fill up
* Improves file size calculations
* Improves remaining disk space calculations
* Improves file exclusion methods
* Misc admin interface improvements
* Misc code quality improvements and bug fixes
### 3.6.2 / 2016-08-02
* Improves admin performance.
* Improves security in internationalised strings.
### 3.6.1 / 2016-04-26
* Bug fixes/improvements in disk space calculation
* Misc bug fixes
### 3.6.0 / 2016-03-31
* Fix a bug caused by using a function incompatible with min PHP version requirements
* Misc code quality improvements and bug fixes
* Fix bugs in the code responsible for admin notices
* Display disk space info
* Uninstall cleanup
* Introduce a dedicated extensions page
### 3.5 / 2016-03-10
* Reduce duplication and improve code readability when echoing filesizes
* Improve how filesizes are handled in the Your Site list
* Switch to storing site size data in a file, large sites could cause database errors when saving the option
* Re-remove the PHP User and Group Requirements
* Check that the backup file exists before attempting to check it's contents
* Only call getPerms on readable files to ensure we avoid a fatal error
* Ensure error are correctly check in verify_backup
* Use Symfony Process instead of shell_exec for all our system calls
* More unit tests
* Update dependencies
* Detect disabled functions defined in php.ini, now accounts for different separators.
### 3.4.5 / 2016-02-23
* Fix fatal error on upgrade
### 3.4.4 / 2016-02-23
* Ensure temporary files are correctly cleaned up before and after running a backup.
* Avoid killing site if plugin is active on PHP 52
* Allow custom secure key using filter
* Fixes a bug which caused the root path to the WordPress install to be miscalulated in certain setups.
### 3.4.4-beta
* Fixes a bug which caused the root path to the WordPress install to be miscalulated in certain setups.
### 3.4.3
* Fix a bug where backups were not downloadable when WordPress installed in a subdirectory
### 3.4.2
* Remove the usage of `shell_exec` in two of our warning messages, fixes a PHP Warning on systems with it disabled.
* Improve how we handle `open_basedir` restrictions, fixes a PHP Warning on some systems. Adds unit tests to cover `open_basedir` handling.
* Show an error message if neither `mysqldump` nor `PDO:mysql` are available. Database backups won't work without at least one of them.
* Improve our upgrade code for users upgrading from pre version 2.0. Fixes a possible fatal error and ensures backups and backup settings are correctly brought forward.
### 3.4.1
* Fix a possible `PHP Warning` in the Schedule Sentence.
### 3.4 / 2016/01/20
* Introduces a major re-factor of the underlying backups engine, many bugs fixed and much improved unit test coverage.
* Vastly improved Windows Server support.
* We no longer write errors and warnings to files on disk.
* Update to the latest version of `symfony/finder`.
* Update to the latest version of `ifsnop/mysqldump-php`.
### 3.3.4 / 2015-12-10
* Fixes styling issues with WordPress 4.4
### 3.3.3 / 2015-11-13
* Fix broken Intercom support window
* Fixes Typos in i18n strings
* Backups finish faster
* Fix an issue that caused the site size to report as twice as large as it should
* Adds PHP mysqldump fallback lib (`ifsnop/mysqldump-php`)
### 3.3.2 / 2015-10-15
* Misc improvements
### 3.3.1 / 2015-10-12
* Fix false positive error message.
* Fix broken download links
### 3.3.0 / 2015-10-09
* Dropped support for PclZip
* Fixed duplicate cron schedule interval names ( props ucavus )
* Corrected some typos, grammar and punctuation ( props ucavus )
* Fixed a bug in the WP CLI command ( props duritong )
* Better message for wp-cron related errors
* Replace 'bi-weekly' with less confusing wording
* Fixed a few errors misc reported by code quality tool
* Total site size display now subtracts excludes
* Many general improvements and bug fixes
#### 3.2.7 / 2015-07-27
* Pass schedule type instead of schedule id as context for the calculated sizes, it's more useful
* Simply output arrays rather than trying to be too clever about it
* Start tracking PDO availability through Intercom
* Catch database and files shell_exec warnings
* Test under PHP 5.6 in Travis
* Use the new [email protected] email address everywhere
* Clarify how people request access to Slack and GlotPress
* Rewrite our contributing guidelines to be more comprehensive
* Add instructions to contributing.md
* Revert plugin name as it doesn't make a diff in search results
* Always return an integer
#### 3.2.6 / 2015-06-09
* Fixes admin page slug for multisite
#### 3.2.5 / 2015-04-29
* Fixes an issue when evaluating expression with empty
* Fixes a fatal error on PHP 5.3
* Displays other notices
* Updates stable tag
* Adds some escaping and sanitizing
* Defines plugins dir for different environments
* Adds tests for activation and deactivation hooks
* Adds a debugging function for tests
* Symlinks plugin into tests dir
* Splits out deactivation code into separate functions
* Fixes activation and deactivation hooks not being fired
* Exclude backups folder from size calculation
* Fixes a misplaced parenthesis
* Fixes how error messages are bubbled up
* get home path should return defined value
* Removes redundant exclude statement as CVS folders are excluded by default
* Adds a flag parameter to allow get_files to return all files including default excludes
#### 3.2.4 / 2015-04-01
* Fixes default exclude pattern that was too greedy.
#### 3.2.3 / 2015-04-01
* Fixes issue where files where 'cache' files were excluded by default.
* Updates brazilian portuguese translations.
* Fixes the issue with the 'no thanks' button in the Support modal and misc JS improvements. props SiamKreative.
#### 3.2.2 / 2015-03-25
* Fixes error in manual backups, caused by incorrect plugin version number in class, which is used for the JS script version.
#### 3.2.1 / 2015-03-25
* Check if shell_exec is available before running command
* Only validate day of month if this is the schedule type
* Make FS optional and fix the DB connect method
* (issue-770) Exclude the folder, not the wildcard
* (issue-751) Rename plugin
#### 3.2 / 2015-03-16
* (issue-698) skip mySql bug
* Use shell_exec
* Remove use statement
* Revert to using shell_exec
* Remove Process
* (cool-runnings-757) Add back session_write_close
* (issue-479) Hide hours and minutes for hourly backups
* (backupception) Only load if main site on multisite
* (all-paths-lead-to-rome) Set plugin path to main plugin file to avoid relative paths
* (socket-to-me-one-more-time) Fix paths
* Use socket if available
* Display errors
* Put the db dump in the archive first - fixes issue with large archive
* Dont wait for response
* Run schedule as a Backdrop task
* Pass array directly to function
* (issue-759) Fix require paths
* check PHP version before anything else
* Move plugin class to own file
* Skip mysql bug error
* Delete all BWP options
* Start the process
* Return and check WP_Error
* (what-time-is-backup) Extract hours and minutes from the date as an array for display
* Change plugin description if multisite
* Use wp_get_sites
* Add a comment
* We check for this on plugin instantiation
* Revert to clearing schedule and rescheduling
* Delete schedules and leftover options from subsites
* Ensure plugin only runs on main site
* Fix Too Many Schedules
* Use Symfony Process
* (fix-incorrect-type-error) File is an SPL object so get path
* Set root as default param
* Delete backdrop transient
* Force directory sizes recalculation
* Define VCS abbr
* Hide exclude patterns from Excludes list.
* Check if user can connect
* Test that the mysqldump command works
* Add a couple of mysql versions
* Automatically exclude VCS folders
* Calculate Root size correctly
* Get default rules from backup object
* Do not auto ignore dot files
* Count excluded
* Do not count excluded
* If its the root then return its size directly
* Fix typo in transient names
* Set and return class property instead
* List default excludes as such
* Require symfony finder
* Clear transients on deactivate
* Get list of files with Finder
* Load composer packages
* These are alredy filtered
* Add some default excludes
* Use absolute path for excludes added via UI
* Fix tests
* Fix conditional
* Fix syntax error in travis YML
* Run codesniffer only on pull requests
* Update tested WP versions
* Change min WP version required to match travis CI
* Fix readme changelog placement
* Add condtion for Cron and Ajax
* Fix deactivate logic
* Fixes recursive exclusion of files
#### 3.1.4 / 2015-02-24
* (upgrade-options) Bump version
* strtolower is redundant
* Upgrade routine - renames service settings to avoid backslashes.
* Use the Service name as the setting name
* Clear settings for schedule settings
* Fixes bug in displaying settings error notices
* Update version number
* Merge pull request #726 from humanmade/fix-fatal-error-missing-class-addons
* Leave bare minimum to avoid fatal error
* remove old main plugin class
#### 3.1.3 / 2015-02-04
* Keep deprecated classes in a deprecated.php file to avoid Fatal Error in addons during upgrade.
#### 3.1.2 / 2015-02-03
* (simplify-bwp-file-timestamp) Simplify the file name timestamp
* Fix class file name
* (fixup-setup-class) Add missing transients to uninstall routine
* switch Travis notifications to Slack instead of Hipchat
* Do not delete backups on uninstall
* wrap in parenthesis
* Fix include paths after moving uninstall to own file herpderp
* Update BackUp class include
* Add all cases to switch
* Pass scanned files sizes through conform_dir()
* Fix some classes and requires
* (origin/issue-684, issue-684) Fix namespaces
* Remove unnecessary wildcard from regex
* (crazy-refactor) Remove some duplication
* Formatting
* Fix Class name
* Blank line
* Uses a DirectoryIterator to delete files
* Remove tests for now
* Fix stable tag number
* Revert to using uninstall.php
* Add tests for uninstall and deactivate
* Remove double lie break
* Remove double line break
* Remove phpdocumentor
* We still need to require some scripts...
* We dont need to check for this constant in the hook callback
* Use get_col to directly have an array of schedule option names
* Remove namespacing
* Remove debugging
* Make the uninstall, activation and deactivation hooks work
* (change-singleton-implementation) Change the singleton implementation to not use the static() function
* path argument interfers with wp-cli path argument.
* Fix some scrutinizer issues, mostly major ones
* Consistent default name for database dumps
* Major 5.3 re-factoring fun
* Minor code formatting
* else if should be elseif
* Update the WP_CLI command to fix some issues
* Add support for copying and updating an existing backups
#### 3.1.0 / 2015-01-13
* Correct $response1 variable
* (origin/issue-652, issue-652) Suppress warnings from filesystem functions
* Remove debugging function
* (origin/issue-475, issue-475) Fix a French string
* Format the intercom data better
* Load Intercom in the admin footer
* Fix some HTML issues
* Add a function that returns a given option value
* Return Unknown if no average exists or invalid
* Add a start parameter to function
* Pass in the start time as a parameter
* Make strings translatable
* Escape values
* Adds a function to track backup duration and another to display it
* Adds Average Backup Duration Info
* Improve display of arrays
* Fixes open_basedir warnings
* Replace spaces with tabs for indentation
* (wp-cron-test-improvements) Improve the reliability of the wp-cron test
* Pop in the directory sizes
* Adapt heartbeat pulse
* Update Javascript
* Update constant name
* Load the default translations so that activation error message is in user language
* Fix a few translatable strings
* Update French translations
* Re-uglify Intercom js
* Use provided callback argument to determine current screen
* remove deprecated code
* Only show notices on BWP admin page
* Fix class name
* Make function public for now
* Get an instance of BWP to load functions
* Fix conditional
* Show admin notice if fails to meet requirements
* Remove unneeded function
* Fix references
* Refactor main class after addition of the Setup class
* Introduce a setup class
* Determine if we need to run a cleanup routine
* Introduce a custom hook for addons
* Refactor main plugin file into a singleton class
* Bring activation and deactivation into main plugin class
* css changes to fix support button alignment
* Fixes issue preventing backups from running without JS
* Remove back compat memory limit define
* Refactor HMBKP_Notices to support non-persistant notices
* Minor refactor for PHP minimum requirements notice
* Clear previous backup notices when running a new backup
* Fix issues with custom paths
* Improved singleton pattern
* Display errors in network admin
* Change to text input so multiple email address are supported
* Removes HTML tag from string
* Account for new schedule
* Make upsell sentence translatable
* fix return type
* Return true if transient exists
* Check if constant is defined
* Request the site size via heartbeat send
* Pass site size through heartbeat
* Only calculate if necessary
#### 3.0.4 / 2014-12-10
* Simplify the backup count display
* Enqueue scripts properly
* Change how we check directory_sizes
* Add BackUpWordPress test case class
* Move class to separate file
* Group help tab display functions
* Update POT file
* Make strings ready for translation
#### 3.0.3 / 2014-12-06
* Add French translations
* Update textdomain
* Fix deleted function
* Use HM_Backup function to determine if shell_exec is enabled
* Check if file is readable first
* Fix how we kick off Task
* Remove unused var
* Call recursive filescanner on admin page load
* Update package.json
* Update the POT file task params
* Replace hmbkp with backupwordpress as textdomain
* Exclude folders
* Add Grunt task options
* Remove hard line returns
* Display placeholder if exec fails
* Add 30 second time diff allowance
* Use $TRAVIS_BUILD_DIR
* we do this in travis.yml
* Regenerate github account info
* Update command to reflect function rename
* Update tests to reflect function name change
* Rename function
* Filter tests to run
* Fix group flags
* Calculate site size on page load
#### 3.0.2 / 2014-12-02
* Bump version
* Add parenthesis to require_once
* Remove disk space info
* Attempt to fix build
* define WP_TESTS_DIR
* Make sure current_action fnction is loaded
* Remove extra slashes and semicolons
* Remove the custom webhook service
* Better default WP_TESTS_DIR
* move trailingslash calls out of the loop for performance
* Minor code cleanup
* Correct path for hm-backup so it's tests are run
* add composer.lock
* Use scrutinizer code coverage
* add waffle.io badge
* Use up to date commands for coverage
* Add code rating
* Don't test 5.2
* Update readme.md
* excluded_dirs is deprecated
* Update scrutinizer config
* Add composer config and dev dependencies
* Make PHPUnit generate an XML for coveralls
* Add scrutinizer config
* Ignore vendor dir
* Add a link to Help page
* Move to activation hook
* Bump up required WP version
* Escape all the things
* Save errors to a notices option
* Reload page on errors
* Remove script
* Remove unneeded class
* Check PHP version on plugins loaded
* Check PHP version on activate
* Update readme
* Set required version to 5.3.2
* Update tests
* Allow for a 30 second delta in asserting schedule time
* Use the new build env on Travis
* Restrict plugin to be network only
* Fix admin URL logic
* Formatting
* Update readme changelog
#### 3.0.1 / 2014-11-20
* remove uneeded images
* latest hm-backup / fixes a serious bug in backups.
* Typos in v 3.0 changelog
* Specify POT filename in grunt task
* Update POT file
* Markdown readme
* Regenerate readme
* Add plugin headers
#### 3.0 / 2014-11-14
* Refactor the recursive filesize scanner
* correct text domain
* Remove unneede statements
* reload the excludes filelist in the correct place when someone excludes a file
* Latest backdrop
* Regenerate minified CSS
* Regenerate minified JS
* Fix cancel backup action
* WordPress Coding Standards
* Exit early if incompatible version of WordPress
* Update translations
* Update changelog
#### 3.0.0-beta / 2014-09-08
* Load minified CSS
* Formatting
* Biweekly wording
* Add missing period
* use nonce_url instead of manually adding the nonce query param
* close the settings form when done
* Design changes as per ticket
* Start tracking langauge in server info
* Right align the primary button in the enable support modal
* Re-factor the directory filesize code to use a single array instead of thoussands of transients
* Remove the warning that would show if you were using anything other than the latest stable, it's no longer needed now that the FAQ is local
* switch to using a single transient to store directory filesize data
* Add an anchor link
* Add error message
* Rename function
* Prefix GET params
* Update exclude rule action
* Adds function for building admin action urls
* fix vertical scroll
* Adds some functions to manage settings form submission errors
* Rename nonce and action
* fetch errors to display
* Form submission handling for BWP and add-ons settings
* Use a new function that persists form submission errors to a transient
* None check
* Pass the nonce around in the ajax request
* Enable support action links
* Check nonces
* Modify action URLs to use the admin_post hook
* Remove unneeded code
* New line at end
* Use admin_post hook
* Display schedule start time in local timezone
* Add an action hook that gives access to consumers to the backup progress
* Update translatable strings POT file
* Bump version
* Update min WP version and tested up to
* accidently used dash instead of underscore
* namespaced option and added option to uninstall.php
* basic show/hide of premium upsell
* Fix incorrect transient expiry
* Show the spinner in the tab if a schedule other than the current is running
* Snip snip
* Bring back the some javascript enhancements
* Switch to the PHP 5.2 compatible version of Backdrop
* Finish up support
* Brace up single line if's and foreach's
* Only load minified scripts and styles if WP_DEBUG isn't on
* Load the minified css and js files by default
* Remove the combined css files as we only have one now. Stop loading colorbox.
* Remove colorbox
* Improvements
* More improvements
* Don't die when directly running a backup on page load
* Re-factor the backup filesize calculation
* make capability filterable
* use core capabilities instead of custom
* Switch to Backdrop
* Fix typo in prefix
* Hook function onto admin_post
* Update delete link
* Bookmark current admin page for redirect
* Add custom capabilities and role
* Exclude BackUpWP by default
* Ignore the build folder
* Add more build excludes
* minify JS
* generate markdown readme
* minify css
* combine css
* regenerate readme
* Make links consistent for the grunt task
* Convert URLS to markdown
* Update lang files
* Add colorbox as bower dependency
* remove colorbox folder
* Remove colorbox submodule
* Change how we include FAQ
* Add readme partials
* Add package.json
* Add Gruntfile
* Add bower.json
* JSHint rules
* remove from ignore
* Update ignore list
* Add bower config
* Add FAQ strings
* Return the cached directory size early if we have it
* Re-factor the file browser scanner
* correct sprintf usage
* Handle saving service forms
* Codeing standards
* Move the error check outside of the foreach
* Remove uneeded $is_tab_visible
* Only show excludes for backups which include files
* Show destinations in the list of schedule links
* WordPress standard modal for enabling support
* Remove extra slash in include path
* Add a heading to the settings form
* More work on excludes
* Another todo
* Add some todos
* Don't include the parent directory in a browsable list
* More work on Excludes
* Switch to only storing 3 backups by default
* More work on redesign
* commented out enable support button till we figure out what to do with it
* made tabs responsive below 639px
* More work on redesign
* Add more default excludes
* Correctly highlight the tab for the first schedule
* Switch to tabs instead of subsubsub
* First bash at a redesign settings UX
#### 2.6.2
* Reverts a change to how the home path is calculated as it caused issues on installs where wp-config.php was stored outside of web root. Props to @mikelittle for the bug report.
#### 2.6.1
* Bump minimum WP requirement to 3.7.3, the latest security release on the 3.7 branch.
* Fix an issues that could cause schedule times to fail to account for timezone differences.
* Add a nonce check to the schedule settings.
* Fix a possible JS warning when removing an exclude rule.
* Our unit tests now run in PHP 5.2 again.
#### 2.6
* It's now possible to choose the time and day that your schedule will run on.
* Introduces several new unit tests around schedule timings.
* Fixes a bug that could cause the hourly schedule to run constantly.
* Improved the layout of the Constants help panel.
* If the backup root directory is unreadable then the plugin will no longer function.
* Update the backups table match the standard WordPress table styles.
* Improved styling for the settings dialogue.
* Improved styling for the Server Info help tab.
* /s/back ups/backups.
* Remove Deprecated call to `screen_icon`.
* Updated French translation.
* Update the `WP CLI` command to use the new method for registering command.
* Reload the schedules when re-setting up the default schedules so they show up straight away.
* s/dpesnt't/doesn't.
* Only show the estimated total schedule size when editing an existing schedule.
* Stop stripping 0 from the minutes on hourly backups so that backups at 10 (& 20, etc.) past the hour correctly show.
* Disable buttons whilst ajax requests are running.
* Move spinners outside the buttons as they didn't look very good inside.
* Improve the detection of the home path on multisite installs which have WordPress in a subdirectory.
* Track the time that the running backup is started and display how long a backup has been running for.
* Fix an issue that meant it wasn't possible to run multiple manual backups at the same time.
* Many other minor improvements.
#### 2.5
* BackUpWordPress now requires WordPress 3.7.1 as a minimum.
* Remove some old back-compat code that was required because we supported older WP versions.
* It's now possible to change the email address that notification emails are sent from using the `hmbkp_from_email` filter.
* The spinner is now retina!
* Close the PHP Session before starting the backup process to work around the 1 request per session issue. Backup status will now work on sites which happen to call `session_start`.
* Pass `max_execution_time` and the BackUpWordPress Plugin version back to support. * Include the users real name in support requests
* Stop passing `$_SERVER` with support requests as it can contain things like `.htaccess` passwords on some server configurations.
* Improve the display of the server info in the enable support popup.
* New screenshots
* Use `wp_safe_redirect` for internal redirects.
* Use `wp_is_writable` instead of `is_writable`.
#### 2.4.2
* In WordPress Multisite the backups admin page is now located in Network admin instead of the wp-admin of the main site.
* Fixed an issue with the new intercom support integration that could cause loading the backups page to timeout
* Fixed 3 stray PHP warnings.
* BackUpWordPress will now always be loaded before any BackUpWordPress Extensions.
* Fixed an issue that could cause a long modal (excludes) to show underneath the WP admin bar.
#### 2.4.1
* Add missing colorbox images
#### 2.4
* Support for new premium extensions for storing backups in a variety of online services.
* Exclude the WP DB Manager backups and WP Super Cache cache directories by default.
* We now use Intercom to offer support directly from within the plugin, opt-in of course.
* More i18n fixes / improvements.
* We no longer show download links if your backups directory isn't web accessible.
* Fix a bug that caused the plugin activation and deactivation hooks from firing.
* Correctly handle `MYSQL TIMESTAMP` columns in database dumps.
* `mysqldump` and `zip` are now correctly recognised on SmartOS.
* Schedule names are now translatable.
* Avoid having to re-calculate the filesize when a schedules type is set.
* Compatibility with WordPress 3.8
#### 2.3.2
* Correct version number.
#### 2.3.1
* Fix a PHP strict error.
* Save and close as separate buttons.
* Fix bug that caused multiple notification emails.
* Fixes typo in database option name.
* Updated translations.
* Improve PHP docblocks.
* Make schedules class a singleton.
* Exclude popular backup plugin folders by default.
* Exclude version control folders by default.
* Fix broken localisation.
* Use `wp_safe_redirect` instead of `wp_redirect` for internal form submissions
*
#### 2.3
* Replace Fancybox with Colorbox as Fancybox 2 isn't GPL compatible.
* Use the correct `HMBKP_ATTACHMENT_MAX_FILESIZE` constant consistently in the help section.
* Correct filename for some mis-named translation files.
* Show the total estimated disk space a schedule could take up (max backups * estimated site size).
* Fix a typo (your -> you're).
* Use the new time Constants and define backwords compatible ones for > than 3.5.
* Play nice with custom cron intervals.
* Main plugin file is now `backupwordpress.php` for consistency.
* Add Paul De Wouters (`pauldewouters`) as a contributor, welcome Paul!
* Don't remove non-backup files from custom backup paths.
* Fix a regression where setting a custom path which didn't exist could cause you to lose existing backups.
* When moving paths only move backup files.
* Make some untranslatable strings translatable.
* Don't allow a single schedule to run in multiple threads at once, should finally fix edge case issues where some load balancer / proxies were causing multiple backups per run.
* Only highlight the `HMBKP_SCHEDULE_TIME` constant in help if it's not the default value.
* Remove help text for deprecated `HMBKP_EMAIL`.
* Default to allways specificing `--single-transaction` when using `mysqldump` to backup the database, can be disabled by setting the `HMBKP_MYSQLDUMP_SINGLE_TRANSACTION` to `false`.
* Silence a `PHP Warning` if `mysql_pconnect` has been disabled.
* Ensure dot directories `.` & `..` are always skipped when looping the filesystem.
* Work around a warning in the latest version of MySQL when using the `-p` flag with `mysqldunmp`.
* Fix issues on IIS that could cause the root directory to be incorrectly calculated.
* Fix an issue on IIS that could cause the download backup url to be incorrect.
* Fix an issue on IIS that could mean your existing backups are lost when moving backup directory.
* Avoid a `PHP FATAL ERROR` if the `mysql_set_charset` doesn't exist.
* All unit tests now pass under IIS on Windows.
* Prefix the backup directory with `backupwordpress-` so that it's easier to identify.
* Re-calculate the backup directory name on plugin update and move backups.
* Fix some issues with how `HMBKP_SECURE_KEY` was generated.
#### 2.2.4
* Fix a fatal error on PHP 5.2, sorry! (again.)
#### 2.2.3
* Fix a parse error, sorry!
#### 2.2.2
* Fix a fatal error when uninstalling.
* Updated translations for Brazilian, French, Danish, Spanish, Czech, Slovakian, Polish, Italian, German, Latvian, Hebrew, Chinese & Dutch.
* Fix a possible notice when using the plugin on a server without internet access.
* Don't show the wp-cron error message when `WP_USE_ALTERNATE_CRON` is defined as true.
* Ability to override the max attachment size for email notifications using the new `HMBKP_ATTACHMENT_MAX_FILESIZE` constant.
* Nonce some ajax request.
* Silence warnings created if `is_executable`, `escapeshellcmd` or `escapeshellarg` are disabled.
* Handle situations where the mysql port is set to something wierd.
* Fallback to `mysql_connect` on system that disable `mysql_pconnect`.
* You can now force the `--single-transaction` param when using `mysqldump` by defining `HMBKP_MYSQLDUMP_SINGLE_TRANSACTION`.
* Unit tests for `HM_Backup::is_safe_mode_available()`.
* Silence possible PHP Warnings when unlinking files.
#### 2.2.1
* Stop storing a list of unreadable files in the backup warnings as it's too memory intensive.
* Revert the custom `RecursiveDirectoryIterator` as it caused an infinite loop on some servers.
* Show all errors and warnings in the popup shown when a manual backup completes.
* Write the .backup_error and .backup_warning files everytime an error or warning happens instead of waiting until the end of the backups process.
* Fix a couple of `PHP E_STRICT` notices.
* Catch more errors during the manual backup process and expose them to the user.
#### 2.2
* Don't repeatedly try to create the backups directory in the `uploads` if `uploads` isn't writable.
* Show the correct path in the warning message when the backups path can't be created.
* Include any user defined auth keys and salts when generating the HMBKP_SECURE_KEY.
* Stop relying on the built in WordPress schedules as other plugins can mess with them.
* Delete old backups everytime the backups page is viewed in an attempt to ensure old backups are always cleaned up.
* Improve modals on small screens and mobile devices.
* Use the retina spinner on retina screens.
* Update buttons to the new 3.5 style.
* Fix a possible fatal error caused when a symlink points to a location that is outside an `open_basedir` restriction.
* Fix an issue that could cause backups using PclZip with a custom backups path to fail.
* Security hardening by improving escaping, sanitizitation and validation.
* Increase the timeout on the ajax cron check, should fix issues with cron errors showing on slow sites.
* Only clear the cached backup filesize if the backup type changes.
* Add unit tests for all the schedule recurrences.
* Fix an issue which could cause weekly and monthly schedules to fail.
* Add an `uninstall.php` file which removes all BackUpWordPress data and options.
* Catch a possible fatal error in `RecursiveDirectoryIterator::hasChildren`.
* Fix an issue that could cause mysqldump errors to be ignored thus causing the backup process to use an incomplete mysqldump file.
#### 2.1.3
* Fix a regression in `2.1.2` that broke previewing and adding new exclude rules.
#### 2.1.2
* Fix an issue that could stop the settings panel from closing on save on servers which return `'0'` for ajax requests.
* Fix an issue that could cause the backup root to be set to `/` on sites with `site_url` and `home` set to different domains.
* The mysqldump fallback function will now be used if `mysqldump` produces an empty file.
* Fix a possible PHP `NOTICE` on Apache servers.
#### 2.1.1
* Fix a possible fatal error when a backup schedule is instantiated outside of wp-admin.
* Don't use functions from misc.php as loading it too early can cause fatal errors.
* Don't hardcode an English string in the JS, use the translated string instead.
* Properly skip dot files, should fix fatal errors on systems with `open_basedir` restrictions.
* Don't call `apache_mod_loaded` as it caused wierd DNS issue on some sites, use `global $is_apache` instead.
* Fix a possible double full stop at the end of the schedule sentence.
* Minor code cleanup.
#### 2.1
* Stop blocking people with `safe_mode = On` from using the plugin, instead just show a warning.
* Fix possible fatal error when setting schedule to monthly.
* Fix issues with download backup not working on some shared hosts.
* Fix issuses with download backup not working on sites with strange characters in the site name.
* Fix a bug could cause the update actions to fire on initial activation.