rdiff-backup-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Rdiff-backup-commits] rdiff-backup CHANGELOG rdiff-backup.1 rdiff_bac..


From: dean gaudet
Subject: [Rdiff-backup-commits] rdiff-backup CHANGELOG rdiff-backup.1 rdiff_bac...
Date: Sun, 13 May 2007 05:43:06 +0000

CVSROOT:        /cvsroot/rdiff-backup
Module name:    rdiff-backup
Changes by:     dean gaudet <dgaudet>   07/05/13 05:43:06

Modified files:
        .              : CHANGELOG rdiff-backup.1 
        rdiff_backup   : Main.py selection.py 

Log message:
        New --exclude-if-present option (i.e. --exclude-if-present .nobackup).
        (Jeff Strunk).

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/rdiff-backup/CHANGELOG?cvsroot=rdiff-backup&r1=1.207&r2=1.208
http://cvs.savannah.gnu.org/viewcvs/rdiff-backup/rdiff-backup.1?cvsroot=rdiff-backup&r1=1.83&r2=1.84
http://cvs.savannah.gnu.org/viewcvs/rdiff-backup/rdiff_backup/Main.py?cvsroot=rdiff-backup&r1=1.107&r2=1.108
http://cvs.savannah.gnu.org/viewcvs/rdiff-backup/rdiff_backup/selection.py?cvsroot=rdiff-backup&r1=1.45&r2=1.46

Patches:
Index: CHANGELOG
===================================================================
RCS file: /cvsroot/rdiff-backup/rdiff-backup/CHANGELOG,v
retrieving revision 1.207
retrieving revision 1.208
diff -u -b -r1.207 -r1.208
--- CHANGELOG   6 Mar 2007 18:58:37 -0000       1.207
+++ CHANGELOG   13 May 2007 05:43:05 -0000      1.208
@@ -1,6 +1,9 @@
 New in v1.1.10 (????/??/??)
 ---------------------------
 
+New --exclude-if-present option (i.e. --exclude-if-present .nobackup).
+(Jeff Strunk).
+
 Use signal 0 rather than signal.NSIG when testing if another rdiff-backup
 is still running.  (Patch from Sébastien Maret)
 

Index: rdiff-backup.1
===================================================================
RCS file: /cvsroot/rdiff-backup/rdiff-backup/rdiff-backup.1,v
retrieving revision 1.83
retrieving revision 1.84
diff -u -b -r1.83 -r1.84
--- rdiff-backup.1      29 Jan 2007 17:38:58 -0000      1.83
+++ rdiff-backup.1      13 May 2007 05:43:05 -0000      1.84
@@ -190,6 +190,12 @@
 .B "\-\-exclude-symbolic-links"
 Exclude all symbolic links.
 .TP
+.BI "\-\exclude-if-present " filename
+Exclude directories if
+.IR filename
+is present. This option needs to come before any other include or
+exclude options.
+.TP
 .B \-\-force
 Authorize a more drastic modification of a directory than usual (for
 instance, when overwriting of a destination path, or when removing

Index: rdiff_backup/Main.py
===================================================================
RCS file: /cvsroot/rdiff-backup/rdiff-backup/rdiff_backup/Main.py,v
retrieving revision 1.107
retrieving revision 1.108
diff -u -b -r1.107 -r1.108
--- rdiff_backup/Main.py        30 Jan 2007 02:03:39 -0000      1.107
+++ rdiff_backup/Main.py        13 May 2007 05:43:06 -0000      1.108
@@ -67,7 +67,7 @@
                  "exclude-symbolic-links", "exclude-sockets",
                  "exclude-filelist-stdin", "exclude-globbing-filelist=",
                  "exclude-globbing-filelist-stdin", "exclude-mirror=",
-                 "exclude-other-filesystems", "exclude-regexp=",
+                 "exclude-other-filesystems", "exclude-regexp=", 
"exclude-if-present=",
                  "exclude-special-files", "force", "group-mapping-file=",
                  "include=", "include-filelist=", "include-filelist-stdin",
                  "include-globbing-filelist=",
@@ -109,6 +109,7 @@
                          opt == "--exclude-fifos" or
                          opt == "--exclude-other-filesystems" or
                          opt == "--exclude-regexp" or
+                         opt == "--exclude-if-present" or
                          opt == "--exclude-special-files" or
                          opt == "--exclude-sockets" or
                          opt == "--exclude-symbolic-links"):

Index: rdiff_backup/selection.py
===================================================================
RCS file: /cvsroot/rdiff-backup/rdiff-backup/rdiff_backup/selection.py,v
retrieving revision 1.45
retrieving revision 1.46
diff -u -b -r1.45 -r1.46
--- rdiff_backup/selection.py   29 Jan 2007 18:09:32 -0000      1.45
+++ rdiff_backup/selection.py   13 May 2007 05:43:06 -0000      1.46
@@ -234,6 +234,8 @@
                        for opt, arg in argtuples:
                                if opt == "--exclude":
                                        
self.add_selection_func(self.glob_get_sf(arg, 0))
+                               elif opt == "--exclude-if-present":
+                                       
self.add_selection_func(self.presence_get_sf(arg, 0))
                                elif opt == "--exclude-device-files":
                                        
self.add_selection_func(self.devfiles_get_sf(0))
                                elif opt == "--exclude-symbolic-links":
@@ -471,6 +473,18 @@
                sel_func.name = "Regular expression: %s" % regexp_string
                return sel_func
 
+       def presence_get_sf(self, presence_filename, include):
+               """Return selection function given by a file if present"""
+               assert include == 0 or include == 1
+
+               def sel_func(rp):
+                       if rp.isdir() and rp.readable() and 
rp.append(presence_filename).isreg(): return include
+                       return None
+
+               sel_func.exclude = not include
+               sel_func.name = "Presence file: %s" % presence_filename
+               return sel_func
+
        def gen_get_sf(self, pred, include, name):
                """Returns a selection function that uses pred to test
                




reply via email to

[Prev in Thread] Current Thread [Next in Thread]