~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to common.py

  • Committer: John Arbash Meinel
  • Date: 2005-06-29 06:59:45 UTC
  • mto: (0.5.85) (1185.82.1 bzr-w-changeset)
  • mto: This revision was merged to the branch mainline in revision 1738.
  • Revision ID: john@arbash-meinel.com-20050629065945-14a14a6514d5fa46
Updated so that read_changeset is able to parse the output

Show diffs side-by-side

added added

removed removed

Lines of Context:
13
13
        ''
14
14
    ]
15
15
 
 
16
def canonicalize_revision(branch, revnos):
 
17
    """Turn some sort of revision information into a single
 
18
    set of from-to revision ids.
 
19
 
 
20
    A revision id can be None if there is no associated revison.
 
21
 
 
22
    :param revnos:  A list of revisions to lookup, should be at most 2 long
 
23
    :return: (old, new)
 
24
    """
 
25
    # If only 1 entry is given, then we assume we want just the
 
26
    # changeset between that entry and it's base (we assume parents[0])
 
27
    if len(revnos) == 0:
 
28
        revnos = [None, None]
 
29
    elif len(revnos) == 1:
 
30
        revnos = [None, revnos[0]]
 
31
 
 
32
    if revnos[1] is None:
 
33
        new = branch.last_patch()
 
34
    else:
 
35
        new = branch.lookup_revision(revnos[1])
 
36
    if revnos[0] is None:
 
37
        old = branch.get_revision(new).parents[0].revision_id
 
38
    else:
 
39
        old = branch.lookup_revision(revnos[0])
 
40
 
 
41
    return old, new
 
42