~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/version_info_formats/format_rio.py

(vila) Forbid more operations on ReadonlyTransportDecorator (Vincent Ladeuil)

Show diffs side-by-side

added added

removed removed

Lines of Context:
16
16
 
17
17
"""A generator which creates a rio stanza of the current tree info"""
18
18
 
 
19
from __future__ import absolute_import
 
20
 
19
21
from bzrlib import hooks
20
22
from bzrlib.revision import (
21
23
    NULL_REVISION,
38
40
            info.add('revision-id', revision_id)
39
41
            rev = self._branch.repository.get_revision(revision_id)
40
42
            info.add('date', create_date_str(rev.timestamp, rev.timezone))
41
 
            revno = str(self._branch.revision_id_to_revno(revision_id))
 
43
            revno = self._get_revno_str(revision_id)
42
44
            for hook in RioVersionInfoBuilder.hooks['revision']:
43
45
                hook(rev, info)
44
46
        else:
60
62
                info.add('clean', 'False')
61
63
 
62
64
        if self._include_history:
63
 
            self._extract_revision_history()
64
65
            log = Stanza()
65
66
            for (revision_id, message,
66
 
                 timestamp, timezone) in self._revision_history_info:
 
67
                 timestamp, timezone) in self._iter_revision_history():
67
68
                log.add('id', revision_id)
68
69
                log.add('message', message)
69
70
                log.add('date', create_date_str(timestamp, timezone))
84
85
    """Hooks for rio-formatted version-info output."""
85
86
 
86
87
    def __init__(self):
87
 
        super(RioVersionInfoBuilderHooks, self).__init__()
88
 
        self.create_hook(hooks.HookPoint('revision',
 
88
        super(RioVersionInfoBuilderHooks, self).__init__(
 
89
            "bzrlib.version_info_formats.format_rio", "RioVersionInfoBuilder.hooks")
 
90
        self.add_hook('revision',
89
91
            "Invoked when adding information about a revision to the"
90
92
            " RIO stanza that is printed. revision is called with a"
91
 
            " revision object and a RIO stanza.", (1, 15), None))
 
93
            " revision object and a RIO stanza.", (1, 15))
 
94
 
92
95
 
93
96
RioVersionInfoBuilder.hooks = RioVersionInfoBuilderHooks()