Date: Mon, 2 Nov 2009 20:37:50 +0000 (UTC) From: "Simon L. Nielsen" <simon@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-svnadmin@freebsd.org Subject: svn commit: r198821 - svnadmin/hooks/scripts Message-ID: <200911022037.nA2Kboga068930@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: simon Date: Mon Nov 2 20:37:49 2009 New Revision: 198821 URL: http://svn.freebsd.org/changeset/base/198821 Log: Change the handling of directory property changes in the svn mailer script: - Removes all directories that have only prop-changes from the subject line (unless there are only prop-changes in the commit). - Move directory prop-changes to a separate category at the end of the change listing. This should hopefully reduce the problem mergeinfo in sys/contrib etc. "cluttering up" commit mails, and should also make it easier to spot when there is mergeinfo missing (or misplaced) in a MFC. Submitted by: mlaier (also most of the commit message) Reviewed by: peter (the general idea) Modified: svnadmin/hooks/scripts/mailer.py Directory Properties: Modified: svnadmin/hooks/scripts/mailer.py ============================================================================== --- svnadmin/hooks/scripts/mailer.py Mon Nov 2 20:18:50 2009 (r198820) +++ svnadmin/hooks/scripts/mailer.py Mon Nov 2 20:37:49 2009 (r198821) @@ -370,9 +370,14 @@ class Commit(Messenger): # figure out the changed directories dirs = { } + pdirs = { } for path, change in self.changelist: if change.item_kind == svn.core.svn_node_dir: - dirs[path] = None + # do not include dirs that have only prop changes + if change.prop_changes: + pdirs[path] = None + else: + dirs[path] = None else: idx = string.rfind(path, '/') if idx == -1: @@ -380,7 +385,10 @@ class Commit(Messenger): else: dirs[path[:idx]] = None - dirlist = dirs.keys() + if len(dirs) == 0: + dirlist = pdirs.keys() + else: + dirlist = dirs.keys() commondir, dirlist = get_commondir(dirlist) @@ -1029,6 +1037,7 @@ class TextCommitRenderer: w = self.output.write w(header + ':\n') + ps = '' for d in data_list: if d.is_dir: is_dir = '/' @@ -1037,11 +1046,13 @@ class TextCommitRenderer: if d.props_changed: if d.text_changed: props = ' (contents, props changed)' + w(' %s%s%s\n' % (d.path, is_dir, props)) else: props = ' (props changed)' + ps = ('%s %s%s%s\n' % (ps, d.path, is_dir, props)) else: props = '' - w(' %s%s%s\n' % (d.path, is_dir, props)) + w(' %s%s%s\n' % (d.path, is_dir, props)) if d.copied: if is_dir: text = '' @@ -1051,6 +1062,7 @@ class TextCommitRenderer: text = ' unchanged' w(' - copied%s from r%d, %s%s\n' % (text, d.base_rev, d.base_path, is_dir)) + w('Directory Properties:\n%s' % (ps)) def _render_diffs(self, diffs, section_header): """Render diffs. Write the SECTION_HEADER if there are actually
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200911022037.nA2Kboga068930>