/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar

« back to all changes in this revision

Viewing changes to bzrlib/revision.py

  • Committer: John Arbash Meinel
  • Date: 2009-04-21 23:54:16 UTC
  • mto: (4300.1.7 groupcompress_info)
  • mto: This revision was merged to the branch mainline in revision 4301.
  • Revision ID: john@arbash-meinel.com-20090421235416-f0cz6ilf5cufbugi
Fix bug #364900, properly remove the 64kB that was just encoded in the copy.
Also, stop supporting None as a copy length in 'encode_copy_instruction'.
It was only used by the test suite, and it is good to pull that sort of thing out of
production code. (Besides, setting the copy to 64kB has the same effect.)

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
# Copyright (C) 2005-2010 Canonical Ltd
 
1
# Copyright (C) 2005, 2006 Canonical Ltd
2
2
#
3
3
# This program is free software; you can redistribute it and/or modify
4
4
# it under the terms of the GNU General Public License as published by
28
28
    symbol_versioning,
29
29
    )
30
30
from bzrlib.osutils import contains_whitespace
 
31
from bzrlib.progress import DummyProgress
31
32
 
32
33
NULL_REVISION="null:"
33
34
CURRENT_REVISION="current:"
53
54
 
54
55
    def __init__(self, revision_id, properties=None, **args):
55
56
        self.revision_id = revision_id
56
 
        if properties is None:
57
 
            self.properties = {}
58
 
        else:
59
 
            self.properties = properties
60
 
            self._check_properties()
 
57
        self.properties = properties or {}
 
58
        self._check_properties()
61
59
        self.committer = None
62
60
        self.parent_ids = []
63
61
        self.parent_sha1s = []
70
68
    def __eq__(self, other):
71
69
        if not isinstance(other, Revision):
72
70
            return False
 
71
        # FIXME: rbc 20050930 parent_ids are not being compared
73
72
        return (
74
73
                self.inventory_sha1 == other.inventory_sha1
75
74
                and self.revision_id == other.revision_id
77
76
                and self.message == other.message
78
77
                and self.timezone == other.timezone
79
78
                and self.committer == other.committer
80
 
                and self.properties == other.properties
81
 
                and self.parent_ids == other.parent_ids)
 
79
                and self.properties == other.properties)
82
80
 
83
81
    def __ne__(self, other):
84
82
        return not self.__eq__(other)
90
88
                raise ValueError("invalid property name %r" % name)
91
89
            if not isinstance(value, basestring):
92
90
                raise ValueError("invalid property value %r for %r" %
93
 
                                 (value, name))
 
91
                                 (name, value))
94
92
 
95
93
    def get_history(self, repository):
96
94
        """Return the canonical line-of-history for this revision.
113
111
 
114
112
    def get_summary(self):
115
113
        """Get the first line of the log message for this revision.
116
 
 
117
 
        Return an empty string if message is None.
118
114
        """
119
 
        if self.message:
120
 
            return self.message.lstrip().split('\n', 1)[0]
121
 
        else:
122
 
            return ''
 
115
        return self.message.lstrip().split('\n', 1)[0]
123
116
 
124
117
    @symbol_versioning.deprecated_method(symbol_versioning.deprecated_in((1, 13, 0)))
125
118
    def get_apparent_author(self):