/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 breezy/plugins/git/unpeel_map.py

  • Committer: Jelmer Vernooij
  • Date: 2018-05-13 22:54:28 UTC
  • mto: This revision was merged to the branch mainline in revision 6968.
  • Revision ID: jelmer@jelmer.uk-20180513225428-5ysu0bs9rtk7045h
Initial work to support brz-git on python3.

Show diffs side-by-side

added added

removed removed

Lines of Context:
19
19
from __future__ import absolute_import
20
20
 
21
21
from collections import defaultdict
22
 
from cStringIO import StringIO
 
22
from io import BytesIO
23
23
 
24
24
from ... import (
25
25
    errors,
38
38
        self._re_map = {}
39
39
 
40
40
    def update(self, m):
41
 
        for k, v in m.iteritems():
 
41
        for k, v in m.items():
42
42
            self._map[k].update(v)
43
43
            for i in v:
44
44
                self._re_map[i] = k
45
45
 
46
46
    def load(self, f):
47
47
        firstline = f.readline()
48
 
        if firstline != "unpeel map version 1\n":
 
48
        if firstline != b"unpeel map version 1\n":
49
49
            raise AssertionError("invalid format for unpeel map: %r" % firstline)
50
50
        for l in f.readlines():
51
 
            (k, v) = l.split(":", 1)
 
51
            (k, v) = l.split(b":", 1)
52
52
            k = k.strip()
53
53
            v = v.strip()
54
54
            self._map[k].add(v)
55
55
            self._re_map[v] = k
56
56
 
57
57
    def save(self, f):
58
 
        f.write("unpeel map version 1\n")
59
 
        for k, vs in self._map.iteritems():
 
58
        f.write(b"unpeel map version 1\n")
 
59
        for k, vs in self._map.items():
60
60
            for v in vs:
61
 
                f.write("%s: %s\n" % (k, v))
 
61
                f.write(b"%s: %s\n" % (k, v))
62
62
 
63
63
    def save_in_repository(self, repository):
64
 
        f = StringIO()
 
64
        f = BytesIO()
65
65
        try:
66
66
            self.save(f)
67
67
            f.seek(0)