Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def get_rev_log(master, revno):
- rqst = log.make_log_request_dict(start_revision=revno, limit=1, delta_type='full')
- log_format = log.log_formatter_registry.get_default(master)
- buf = StringIO()
- lf = log_format(show_ids=False, to_file=buf,
- show_timezone='local',
- delta_format=None,
- levels=None,
- show_advice=True)
- log.Logger(master, rqst).show(lf)
- buf_str = buf.getvalue()
- return buf_str[buf_str.find('\n') + 1:].strip()
- def get_rev_diff(repository, rev, old_revid, new_revid):
- if old_revid == revision.NULL_REVISION:
- tree_new = repository.revision_tree(new_revid)
- tree_old = repository.revision_tree(old_revid)
- else:
- tree_new, tree_old = repository.revision_trees((new_revid, old_revid))
- diff_content = StringIO()
- show_diff_trees(tree_old, tree_new, diff_content)
- return diff_content.getvalue()
- def post_commit(local, master, old_revno, old_revid, new_revno, new_revid):
- repository = master.repository
- if local is not None and local.repository.has_revision(new_revid):
- repository = local.repository
- rev = repository.get_revision(new_revid)
- for bug_url, status in rev.iter_bugs():
- if bug_url.startswith('<removed>'):
- diag_msg = get_rev_log(master, new_revno)
- src_change = get_rev_diff(repository, rev, old_revid, new_revid)
Add Comment
Please, Sign In to add comment