/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/transport/memory.py

  • Committer: Jelmer Vernooij
  • Date: 2017-05-22 00:56:52 UTC
  • mfrom: (6621.2.26 py3_pokes)
  • Revision ID: jelmer@jelmer.uk-20170522005652-yjahcr9hwmjkno7n
Merge Python3 porting work ('py3 pokes')

Show diffs side-by-side

added added

removed removed

Lines of Context:
25
25
import os
26
26
import errno
27
27
from stat import S_IFREG, S_IFDIR
28
 
from cStringIO import StringIO
29
28
 
30
 
from breezy import (
 
29
from .. import (
31
30
    transport,
32
31
    urlutils,
33
32
    )
34
 
from breezy.errors import (
 
33
from ..errors import (
35
34
    FileExists,
36
35
    LockError,
37
36
    InProcessTransport,
38
37
    NoSuchFile,
39
38
    )
40
 
from breezy.transport import (
 
39
from ..sixish import (
 
40
    BytesIO,
 
41
    )
 
42
from ..transport import (
41
43
    AppendBasedFileStream,
42
44
    _file_streams,
43
45
    LateReadError,
51
53
        self.st_size = size
52
54
        if not is_dir:
53
55
            if perms is None:
54
 
                perms = 0644
 
56
                perms = 0o644
55
57
            self.st_mode = S_IFREG | perms
56
58
        else:
57
59
            if perms is None:
58
 
                perms = 0755
 
60
                perms = 0o755
59
61
            self.st_mode = S_IFDIR | perms
60
62
 
61
63
 
142
144
                return LateReadError(relpath)
143
145
            else:
144
146
                raise NoSuchFile(relpath)
145
 
        return StringIO(self._files[_abspath][0])
 
147
        return BytesIO(self._files[_abspath][0])
146
148
 
147
149
    def put_file(self, relpath, f, mode=None):
148
150
        """See Transport.put_file()."""
295
297
        self._locks = {}
296
298
        self._scheme = "memory+%s:///" % id(self)
297
299
        def memory_factory(url):
298
 
            from breezy.transport import memory
 
300
            from . import memory
299
301
            result = memory.MemoryTransport(url)
300
302
            result._dirs = self._dirs
301
303
            result._files = self._files