def revisions(self, uri): """ revisions at which this file changed """ uri = self.normalized(uri) x = self.client path = x.path2id(uri) if not path: raise NoSuchResource(uri) from bzrlib.log import LogFormatter def get_formatter(lst): class ListLogFormatter(LogFormatter): supports_merge_revisions = True preferred_levels = 1 supports_delta = True supports_tags = True supports_diff = True def __init__(self, *args, **kw): LogFormatter.__init__(self, *args, **kw) self._loglist = lst def log_revision(self, revision): self._loglist.append(int(revision.revno)) return ListLogFormatter from bzrlib.builtins import cmd_log from bzrlib.revisionspec import RevisionSpec log = cmd_log() log.outf = None foo = [] rev = None absolute_uri = os.path.join(self.checkout_dir, uri) log.run( file_list=[absolute_uri], revision=rev and [RevisionSpec.from_string(str(rev))] or None, log_format=get_formatter(foo), verbose=True, ) return foo
def revisions(self, uri): """ revisions at which this file changed """ uri = self.normalized(uri) x = self.client path = x.path2id(uri) if not path: raise NoSuchResource(uri) from bzrlib.log import LogFormatter def get_formatter(lst): class ListLogFormatter(LogFormatter): supports_merge_revisions = True preferred_levels = 1 supports_delta = True supports_tags = True supports_diff = True def __init__(self, *args, **kw): LogFormatter.__init__(self, *args, **kw) self._loglist = lst def log_revision(self, revision): self._loglist.append(int(revision.revno)) return ListLogFormatter from bzrlib.builtins import cmd_log from bzrlib.revisionspec import RevisionSpec log = cmd_log() log.outf = None foo = [] rev = None absolute_uri = os.path.join(self.checkout_dir, uri) log.run(file_list=[absolute_uri], revision=rev and [RevisionSpec.from_string(str(rev))] or None, log_format = get_formatter(foo), verbose=True, ) return foo
def log(self, uri, rev=None): """ Return the changelog of data stored at or under @param:uri as of time @param:rev in JSON-listing format. @raise:ResourceUnchanged etc. """ from bzrlib.log import LogFormatter def get_formatter(lst): class ListLogFormatter(LogFormatter): def __init__(self, *args, **kw): LogFormatter.__init__(self, *args, **kw) self._loglist = lst def log_revision(self, revision): revno = int(revision.revno) author = revision.rev.committer # @@@ what about get_apparent_authors? message = revision.rev.message.rstrip('\r\n') timestamp = revision.rev.timestamp self._loglist.append(dict(version=revno, author=author, message=message, timestamp=timestamp, id=uri, revprops=revision.rev.properties)) return ListLogFormatter from bzrlib.builtins import cmd_log from bzrlib.revisionspec import RevisionSpec log = cmd_log() log.outf = None foo = [] absolute_uri = os.path.join(self.checkout_dir, self.normalized(uri)) log.run(file_list=[absolute_uri], revision=rev and [RevisionSpec.from_string("1"), RevisionSpec.from_string(str(rev))] or None, log_format = get_formatter(foo), ) return [dict(href=uri, fields=i) for i in foo]
def log(self, uri, rev=None): """ Return the changelog of data stored at or under @param:uri as of time @param:rev in JSON-listing format. @raise:ResourceUnchanged etc. """ from bzrlib.log import LogFormatter def get_formatter(lst): class ListLogFormatter(LogFormatter): supports_merge_revisions = True preferred_levels = 1 supports_delta = True supports_tags = True supports_diff = True def __init__(self, *args, **kw): LogFormatter.__init__(self, *args, **kw) self._loglist = lst def log_revision(self, revision): revno = int(revision.revno) try: author = revision.rev.get_apparent_authors()[0] except IndexError: author = revision.rev.committer message = revision.rev.message.rstrip('\r\n') timestamp = revision.rev.timestamp id = uri if revision.delta: changed = [i[0] for i in revision.delta.added] \ + [i[0] for i in revision.delta.modified] if not len(changed): return id = changed[-1] self._loglist.append(dict(version=revno, author=author, message=message, timestamp=timestamp, id=id, revprops=revision.rev.properties)) return ListLogFormatter from bzrlib.builtins import cmd_log from bzrlib.revisionspec import RevisionSpec log = cmd_log() log.outf = None foo = [] absolute_uri = os.path.join(self.checkout_dir, self.normalized(uri)) try: log.run(file_list=[absolute_uri], revision=rev and [RevisionSpec.from_string("1"), RevisionSpec.from_string(str(rev))] or None, log_format = get_formatter(foo), verbose=True, ) except BzrCommandError, e: raise NoSuchResource(uri)
def log(self, uri, rev=None): """ Return the changelog of data stored at or under @param:uri as of time @param:rev in JSON-listing format. @raise:ResourceUnchanged etc. """ from bzrlib.log import LogFormatter def get_formatter(lst): class ListLogFormatter(LogFormatter): supports_merge_revisions = True preferred_levels = 1 supports_delta = True supports_tags = True supports_diff = True def __init__(self, *args, **kw): LogFormatter.__init__(self, *args, **kw) self._loglist = lst def log_revision(self, revision): revno = int(revision.revno) try: author = revision.rev.get_apparent_authors()[0] except IndexError: author = revision.rev.committer message = revision.rev.message.rstrip('\r\n') timestamp = revision.rev.timestamp id = uri if revision.delta: changed = [i[0] for i in revision.delta.added] \ + [i[0] for i in revision.delta.modified] if not len(changed): return id = changed[-1] self._loglist.append( dict(version=revno, author=author, message=message, timestamp=timestamp, id=id, revprops=revision.rev.properties)) return ListLogFormatter from bzrlib.builtins import cmd_log from bzrlib.revisionspec import RevisionSpec log = cmd_log() log.outf = None foo = [] absolute_uri = os.path.join(self.checkout_dir, self.normalized(uri)) try: log.run( file_list=[absolute_uri], revision=rev and [ RevisionSpec.from_string("1"), RevisionSpec.from_string(str(rev)) ] or None, log_format=get_formatter(foo), verbose=True, ) except BzrCommandError, e: raise NoSuchResource(uri)