f6e8863128 
					 
					
						
						
							
							backup: adjust email formatting  
						
						 
						
						
						
						
					 
					
						2021-10-26 21:37:53 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						f14b0d2d4d 
					 
					
						
						
							
							backup.py: fix notification error  
						
						 
						
						
						
						
					 
					
						2021-10-26 16:00:46 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						46f9f98860 
					 
					
						
						
							
							backup: show errors at top of email notification  
						
						 
						
						
						
						
					 
					
						2021-10-26 13:24:39 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						cb12e09c46 
					 
					
						
						
							
							backup: rework output to make notification emails easier to read  
						
						 
						
						
						
						
					 
					
						2021-10-26 13:20:21 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						1115d1f821 
					 
					
						
						
							
							backup: rename pstr() helper to b2s()  
						
						 
						
						... 
						
						
						
						The helper is just bytes->str conversion with errors=backslashreplace,
which we can use for more than just paths. 
						
						
					 
					
						2021-10-26 12:54:41 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						51c5b5e9ca 
					 
					
						
						
							
							backup: fix prune archive name  
						
						 
						
						
						
						
					 
					
						2021-10-19 12:28:20 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						ed8ea15aa7 
					 
					
						
						
							
							backup: only prune archives that match default naming pattern  
						
						 
						
						
						
						
					 
					
						2021-10-19 12:18:46 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						481e01896b 
					 
					
						
						
							
							backup: fix issue with ignoring "changed while we backed it up" warnings  
						
						 
						
						
						
						
					 
					
						2021-10-19 12:14:42 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						e85e08cace 
					 
					
						
						
							
							backup: call prune after backup; add run_borg helper  
						
						 
						
						... 
						
						
						
						Automatically prunes after backup, although this doesn't actually
free up space (because we're in append-only mode). 
						
						
					 
					
						2021-10-19 11:16:17 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						4b7802ad5f 
					 
					
						
						
							
							backup: flush stderr after all writes  
						
						 
						
						
						
						
					 
					
						2021-10-18 19:35:39 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						4a30b82e39 
					 
					
						
						
							
							backup: replace simple max size with rule-based system  
						
						 
						
						... 
						
						
						
						Now individual files or patterns can have their own maximum sizes. 
						
						
					 
					
						2021-10-18 17:43:33 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						ac12b42cad 
					 
					
						
						
							
							backup: rename force-include to unexclude  
						
						 
						
						... 
						
						
						
						Force-include is a misnomer because it won't include files
that weren't considered at all (like files in an excluded subdir).
Instead, call it "unexclude" to make it slightly clearer that this
will just override the exclusions. 
						
						
					 
					
						2021-10-18 16:25:23 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						16fe205715 
					 
					
						
						
							
							backup: remove pathnames from progress output  
						
						 
						
						... 
						
						
						
						It clutters up the output and isn't super useful 
						
						
					 
					
						2021-10-18 15:03:32 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						81d430b56b 
					 
					
						
						
							
							backup: print exceptions from reader thread  
						
						 
						
						
						
						
					 
					
						2021-10-17 20:02:46 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						2d89e530be 
					 
					
						
						
							
							backup: split handling of log_message and progress_message  
						
						 
						
						
						
						
					 
					
						2021-10-17 20:01:55 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						3024cf2e69 
					 
					
						
						
							
							backup: stop main thread if reader thread dies unexpectedly  
						
						 
						
						... 
						
						
						
						_thread.interrupt_main will trigger KeyboardInterrupt in the main thread. 
						
						
					 
					
						2021-10-17 20:00:55 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						a540f4336f 
					 
					
						
						
							
							backup: fix nonlocal variable issue with errors  
						
						 
						
						
						
						
					 
					
						2021-10-17 19:31:56 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						643f41d7f7 
					 
					
						
						
							
							backup: tweak types for python 3.7 compatibility  
						
						 
						
						
						
						
					 
					
						2021-10-17 19:31:36 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						2b81094a32 
					 
					
						
						
							
							backup: fix borg exit code handling for ret=0  
						
						 
						
						
						
						
					 
					
						2021-10-17 01:05:03 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						e7b0320c9f 
					 
					
						
						
							
							backup: fix ignoring of harmless borg warnings  
						
						 
						
						
						
						
					 
					
						2021-10-17 00:55:49 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						a18b9ed6d0 
					 
					
						
						
							
							backup: track errors/warnings from borg; add prefix to them  
						
						 
						
						... 
						
						
						
						This also ignores the "file changed while we backed it up" error, because
that isn't important enough to warrant sending an email. 
						
						
					 
					
						2021-10-17 00:16:43 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						756dbe1898 
					 
					
						
						
							
							backup: fix mypy-detected errors  
						
						 
						
						
						
						
					 
					
						2021-10-17 00:14:14 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						2caceedea7 
					 
					
						
						
							
							backup: show detailed progress from borg  
						
						 
						
						
						
						
					 
					
						2021-10-16 23:40:36 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						f2b47dcba2 
					 
					
						
						
							
							backup: parse vars.sh and use hostname from that  
						
						 
						
						
						
						
					 
					
						2021-10-16 18:52:34 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						979dfd892f 
					 
					
						
						
							
							backup: revert to catching fewer exceptions  
						
						 
						
						... 
						
						
						
						We specifically don't want to catch BrokenPipeError; just list
file-related ones that we might expect to see if we hit bad
permissions, disk errors, or race conditions. 
						
						
					 
					
						2021-10-16 09:37:04 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						aff447c1b6 
					 
					
						
						
							
							notify: fix notify.sh to work with server side; adjust text  
						
						 
						
						
						
						
					 
					
						2021-10-16 09:37:03 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						d168c5bf54 
					 
					
						
						
							
							backup: catch all OSError exceptions while accessing files  
						
						 
						
						... 
						
						
						
						We might see these if files change during the scan, for example. 
						
						
					 
					
						2021-10-16 09:37:03 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						31d88f9345 
					 
					
						
						
							
							backup: print final results and run notification script on error  
						
						 
						
						
						
						
					 
					
						2021-10-16 09:37:03 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						ccf54b98d7 
					 
					
						
						
							
							backup: fix archive name  
						
						 
						
						... 
						
						
						
						Was overly quoted from when this was a shell script 
						
						
					 
					
						2021-10-16 09:37:03 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						59ad2b5b4d 
					 
					
						
						
							
							backup: capture borg output for later reporting  
						
						 
						
						
						
						
					 
					
						2021-10-16 09:37:03 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						0c74f1676c 
					 
					
						
						
							
							backup: add bold option to log(); simplify logic  
						
						 
						
						
						
						
					 
					
						2021-10-16 09:37:03 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						5e06ebd822 
					 
					
						
						
							
							backup: change some warnings into errors  
						
						 
						
						
						
						
					 
					
						2021-10-16 09:37:03 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						43ceb39120 
					 
					
						
						
							
							backup: support multiple roots; remove "relative absolute path" nonsense  
						
						 
						
						... 
						
						
						
						Support multiple roots in config file, not just one.
The absolute path stuff before would match against exclusions/inclusions
based on paths from the root dir, but that doesn't make sense when we
have multiple roots, and added needless complexity. 
						
						
					 
					
						2021-10-14 12:33:07 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						35c72e7ce6 
					 
					
						
						
							
							backup: calculate size only once  
						
						 
						
						... 
						
						
						
						We need to calculate size so we get an idea of actual used disk space
(which is closer to how much maximum space will be used in the backup,
in case files have huge holes).  Calculate it once to avoid errors. 
						
						
					 
					
						2021-10-14 12:33:07 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						27213033a2 
					 
					
						
						
							
							backup: use decorated paths for matching patterns  
						
						 
						
						... 
						
						
						
						By ensuring that directory names end in '/', the behavior of
"match only directories if the pattern ends with /" comes for
free based on how wcmatch.glob works, so we don't need to run
the regex match twice. 
						
						
					 
					
						2021-10-14 12:33:07 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						5152a316c6 
					 
					
						
						
							
							backup: use helper to format binary paths as strings  
						
						 
						
						
						
						
					 
					
						2021-10-14 12:33:07 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						46195daaaa 
					 
					
						
						
							
							Improve borg process spawning and result checking  
						
						 
						
						
						
						
					 
					
						2021-10-14 12:33:07 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						ffe13a45e6 
					 
					
						
						
							
							Add --debug option  
						
						 
						
						
						
						
					 
					
						2021-10-14 12:33:07 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						738573a292 
					 
					
						
						
							
							Fix type issue  
						
						 
						
						
						
						
					 
					
						2021-10-13 15:02:48 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						4a707968ab 
					 
					
						
						
							
							Spawn borg and pass input  
						
						 
						
						
						
						
					 
					
						2021-10-13 14:58:44 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						356f6db2ca 
					 
					
						
						
							
							Remove debug prints  
						
						 
						
						
						
						
					 
					
						2021-10-13 14:46:58 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						e82d40bbfb 
					 
					
						
						
							
							Fix some exclude/include path issues; misc setup improvements  
						
						 
						
						
						
						
					 
					
						2021-10-13 14:38:47 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						22b663fa61 
					 
					
						
						
							
							Rework how exclude/include pattern matching works a bit  
						
						 
						
						
						
						
					 
					
						2021-10-13 11:48:53 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						863b7acc9b 
					 
					
						
						
							
							Add arg to specify borg program  
						
						 
						
						
						
						
					 
					
						2021-10-13 10:17:28 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						0f56415493 
					 
					
						
						
							
							Use actual file blocks rather than apparent size; doc updates  
						
						 
						
						
						
						
					 
					
						2021-10-11 23:30:53 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						0039ca1ee0 
					 
					
						
						
							
							Implement filesystem scanning with configurable filters  
						
						 
						
						
						
						
					 
					
						2021-10-11 16:50:08 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						6978cfc012 
					 
					
						
						
							
							Continue reworking towards local copy of borg, etc  
						
						 
						
						
						
						
					 
					
						2021-10-11 12:34:57 -04:00