diff -r fb66a7d3f28f -r 74e717a21779 hgext/notify.py --- a/hgext/notify.py Wed Aug 05 17:19:37 2009 +0200 +++ b/hgext/notify.py Thu Aug 06 18:48:00 2009 -0700 @@ -7,62 +7,64 @@ '''hooks for sending email notifications at commit/push time -Subscriptions can be managed through hgrc. Default mode is to print +Subscriptions can be managed through a hgrc file. Default mode is to print messages to stdout, for testing and configuring. -To use, configure notify extension and enable in hgrc like this: +To use, configure the notify extension and enable it in hgrc like this:: - [extensions] - hgext.notify = + [extensions] + hgext.notify = - [hooks] - # one email for each incoming changeset - incoming.notify = python:hgext.notify.hook - # batch emails when many changesets incoming at one time - changegroup.notify = python:hgext.notify.hook + [hooks] + # one email for each incoming changeset + incoming.notify = python:hgext.notify.hook + # batch emails when many changesets incoming at one time + changegroup.notify = python:hgext.notify.hook - [notify] - # config items go in here + [notify] + # config items go here - config items: +Required configuration items:: - REQUIRED: - config = /path/to/file # file containing subscriptions + config = /path/to/file # file containing subscriptions + +Optional configuration items:: - OPTIONAL: - test = True # print messages to stdout for testing - strip = 3 # number of slashes to strip for url paths - domain = example.com # domain to use if committer missing domain - style = ... # style file to use when formatting email - template = ... # template to use when formatting email - incoming = ... # template to use when run as incoming hook - changegroup = ... # template when run as changegroup hook - maxdiff = 300 # max lines of diffs to include (0=none, -1=all) - maxsubject = 67 # truncate subject line longer than this - diffstat = True # add a diffstat before the diff content - sources = serve # notify if source of incoming changes in this list - # (serve == ssh or http, push, pull, bundle) - [email] - from = user@host.com # email address to send as if none given - [web] - baseurl = http://hgserver/... # root of hg web site for browsing commits + test = True # print messages to stdout for testing + strip = 3 # number of slashes to strip for url paths + domain = example.com # domain to use if committer missing domain + style = ... # style file to use when formatting email + template = ... # template to use when formatting email + incoming = ... # template to use when run as incoming hook + changegroup = ... # template when run as changegroup hook + maxdiff = 300 # max lines of diffs to include (0=none, -1=all) + maxsubject = 67 # truncate subject line longer than this + diffstat = True # add a diffstat before the diff content + sources = serve # notify if source of incoming changes in this list + # (serve == ssh or http, push, pull, bundle) + [email] + from = user@host.com # email address to send as if none given + [web] + baseurl = http://hgserver/... # root of hg web site for browsing commits - notify config file has same format as regular hgrc. it has two - sections so you can express subscriptions in whatever way is handier - for you. +The notify config file has same format as a regular hgrc file. It has two +sections so you can express subscriptions in whatever way is handier for you. - [usersubs] - # key is subscriber email, value is ","-separated list of glob patterns - user@host = pattern +:: + + [usersubs] + # key is subscriber email, value is ","-separated list of glob patterns + user@host = pattern - [reposubs] - # key is glob pattern, value is ","-separated list of subscriber emails - pattern = user@host + [reposubs] + # key is glob pattern, value is ","-separated list of subscriber emails + pattern = user@host - glob patterns are matched against path to repository root. +Glob patterns are matched against path to repository root. - if you like, you can put notify config file in repository that users - can push changes to, they can manage their own subscriptions.''' +If you like, you can put notify config file in repository that users can push +changes to, they can manage their own subscriptions. +''' from mercurial.i18n import _ from mercurial import patch, cmdutil, templater, util, mail @@ -226,7 +228,7 @@ hash(self.repo.root), socket.getfqdn())) msg['To'] = ', '.join(self.subs) - msgtext = msg.as_string(0) + msgtext = msg.as_string() if self.test: self.ui.write(msgtext) if not msgtext.endswith('\n'):