mirror of
https://github.com/facebook/sapling.git
synced 2024-10-06 06:47:41 +03:00
py3: fix archive
Summary: archive uses a formatter to produce it's metadat file. We need to use a string io stream instead of bytes. Reviewed By: quark-zju Differential Revision: D19748163 fbshipit-source-id: fbd8c32066cfc4a234d9b51691717c7fce4c7c9a
This commit is contained in:
parent
48aec8ca41
commit
3a5728b32f
@ -32,8 +32,6 @@ from . import (
|
||||
from .i18n import _
|
||||
|
||||
|
||||
stringio = util.stringio
|
||||
|
||||
# from unzip source code:
|
||||
_UNX_IFREG = 0x8000
|
||||
_UNX_IFLNK = 0xA000
|
||||
@ -102,7 +100,7 @@ def buildmetadata(ctx):
|
||||
|
||||
opts = {"template": repo.ui.config("experimental", "archivemetatemplate", default)}
|
||||
|
||||
out = util.stringio()
|
||||
out = pycompat.stringutf8io()
|
||||
|
||||
fm = formatter.formatter(repo.ui, out, "archive", opts)
|
||||
fm.startitem()
|
||||
@ -116,7 +114,7 @@ def buildmetadata(ctx):
|
||||
fm.data(dirty=dirty)
|
||||
fm.end()
|
||||
|
||||
return out.getvalue()
|
||||
return pycompat.encodeutf8(out.getvalue())
|
||||
|
||||
|
||||
class tarit(object):
|
||||
@ -184,7 +182,7 @@ class tarit(object):
|
||||
i.size = 0
|
||||
else:
|
||||
i.mode = mode
|
||||
data = stringio(data)
|
||||
data = pycompat.stringio(data)
|
||||
self.z.addfile(i, data)
|
||||
|
||||
def done(self):
|
||||
|
@ -84,6 +84,7 @@ if sys.version_info[0] >= 3:
|
||||
sysexecutable = sys.executable
|
||||
|
||||
stringio = io.BytesIO
|
||||
stringutf8io = io.StringIO
|
||||
maplist = lambda *args: list(map(*args))
|
||||
ziplist = lambda *args: list(zip(*args))
|
||||
rawinput = input
|
||||
@ -178,6 +179,7 @@ else:
|
||||
sysexecutable = sys.executable
|
||||
shlexsplit = shlex.split
|
||||
stringio = cStringIO.StringIO
|
||||
stringutf8io = cStringIO.StringIO
|
||||
maplist = map
|
||||
ziplist = zip
|
||||
rawinput = raw_input # noqa
|
||||
|
@ -1,4 +1,3 @@
|
||||
#require py2
|
||||
#chg-compatible
|
||||
|
||||
$ disable treemanifest
|
||||
|
Loading…
Reference in New Issue
Block a user