]> code.delx.au - gnu-emacs-elpa/commitdiff
When the maintainer is unknown, scan the file, and append it if found.
authorGlenn Morris <rgm@gnu.org>
Wed, 23 May 2012 07:29:15 +0000 (00:29 -0700)
committerGlenn Morris <rgm@gnu.org>
Wed, 23 May 2012 07:29:15 +0000 (00:29 -0700)
admin/forward-diffs.py

index 7d78885f238acd5cd435d9c8f7c8d75f682fe6c2..f529f170ef6eaf5b4c8cc95f72118d793e342c3a 100755 (executable)
@@ -28,6 +28,9 @@
 ## 1) Create the maintfile (really this is just an optimization):
 ## forward-diffs.py --create -p packagesdir -m maintfile
 
+## You can start with an empty maintfile and normal operation in 2)
+## will append information as needed.
+
 ## 2) Call from eg procmail to forward diffs.  Example usage:
 
 ## :0c
@@ -297,8 +300,27 @@ for line in text.splitlines():
 
 
     if not pfile in maints:
-        lfile.write('Unknown maintainer\n')
-        continue
+
+        lfile.write('Unknown maintainer, scanning file...\n')
+
+        thismaint = []
+        thisfile = os.path.join( opts.packagedir, pfile )
+
+        scan_file( thisfile, thismaint )
+
+        if not thismaint: continue
+
+        maints[pfile] = thismaint
+
+        ## Append maintainer to file.
+        try:
+            mfile = open( opts.maintfile, 'a' )
+            string = "%-50s %s\n" % (pfile, ",".join(thismaint))
+            mfile.write(string)
+            mfile.close()
+            lfile.write('Appended to maintfile\n')
+        except Exception as err:
+            lfile.write('Error appending to maintfile: %s\n' % str(err))
 
 
     for maint in maints[pfile]: