120 mail.sendmail( |
120 mail.sendmail( |
121 ui, emailutils.parseaddr(msg['From'])[1], subs, msgtext, mbox=n.mbox |
121 ui, emailutils.parseaddr(msg['From'])[1], subs, msgtext, mbox=n.mbox |
122 ) |
122 ) |
123 |
123 |
124 |
124 |
|
125 def has_successor(repo, rev): |
|
126 return any( |
|
127 r for r in obsutil.allsuccessors(repo.obsstore, [rev]) if r != rev |
|
128 ) |
|
129 |
|
130 |
125 def hook(ui, repo, hooktype, node=None, **kwargs): |
131 def hook(ui, repo, hooktype, node=None, **kwargs): |
126 if hooktype != b"pretxnclose": |
132 if hooktype != b"txnclose": |
127 raise error.Abort( |
133 raise error.Abort( |
128 _(b'Unsupported hook type %r') % pycompat.bytestr(hooktype) |
134 _(b'Unsupported hook type %r') % pycompat.bytestr(hooktype) |
129 ) |
135 ) |
130 for rev in obsutil.getobsoleted(repo, repo.currenttransaction()): |
136 for rev in obsutil.getobsoleted(repo, changes=kwargs['changes']): |
131 _report_commit(ui, repo, repo.unfiltered()[rev]) |
137 ctx = repo.unfiltered()[rev] |
|
138 if not has_successor(repo, ctx.node()): |
|
139 _report_commit(ui, repo, ctx) |