------------------------------------------------------------ revno: 228 committer: Glenn Morris <r...@gnu.org> branch nick: elpa timestamp: Wed 2012-05-23 17:19:22 -0400 message: Make forward-diffs.py check for a directory maintainer if no file one modified: admin/forward-diffs.py
=== modified file 'admin/forward-diffs.py' --- a/admin/forward-diffs.py 2012-05-23 20:48:03 +0000 +++ b/admin/forward-diffs.py 2012-05-23 21:19:22 +0000 @@ -47,8 +47,11 @@ ## ## package1/file1 email1 ## package2/file2 email2,email3 +## package3 email4 ## ## Use "nomail" for the email field to not send a mail. +## An entry that is a directory applies to all files in that directory +## that do not have specific maintainers. ## ## overmaint = like maintfile, but takes precedence over it. @@ -318,26 +321,41 @@ lfile.write('Unknown maintainer\n') - if opts.noscan: continue - - lfile.write('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. - if not opts.noupdate: - 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)) + if not opts.noscan: + + lfile.write('Scanning file...\n') + thismaint = [] + thisfile = os.path.join( opts.packagedir, pfile ) + scan_file( thisfile, thismaint ) + + if thismaint: + maints[pfile] = thismaint + + ## Append maintainer to file. + if not opts.noupdate: + 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)) + + ## Didn't scan, or scanning did not work. + ## Look for a directory maintainer. + if not pfile in maints: + lfile.write('No file maintainer, trying directories...\n') + while True: + (pfile, tail) = os.path.split(pfile) + if not pfile: break + if pfile in maints: break + + + if not pfile in maints: + lfile.write('No maintainer, skipping\n') + continue for maint in maints[pfile]: