comparison hgext/transplant.py @ 38164:aac4be30e250

py3: wrap tempfile.mkstemp() to use bytes path This patch just flips the default to use a bytes path on Python 3. ca1cf9b3cce7 is backed out as the bundlepath should be bytes now.
author Yuya Nishihara <yuya@tcha.org>
date Sat, 26 May 2018 12:14:04 +0900
parents 2a8939e25d07
children 365a78daf735
comparison
equal deleted inserted replaced
38163:b39958d6b81b 38164:aac4be30e250
14 map from a changeset hash to its hash in the source repository. 14 map from a changeset hash to its hash in the source repository.
15 ''' 15 '''
16 from __future__ import absolute_import 16 from __future__ import absolute_import
17 17
18 import os 18 import os
19 import tempfile 19
20 from mercurial.i18n import _ 20 from mercurial.i18n import _
21 from mercurial import ( 21 from mercurial import (
22 bundlerepo, 22 bundlerepo,
23 cmdutil, 23 cmdutil,
24 error, 24 error,
213 parent = parents[0] 213 parent = parents[0]
214 214
215 if skipmerge: 215 if skipmerge:
216 patchfile = None 216 patchfile = None
217 else: 217 else:
218 fd, patchfile = tempfile.mkstemp(prefix='hg-transplant-') 218 fd, patchfile = pycompat.mkstemp(prefix='hg-transplant-')
219 fp = os.fdopen(fd, r'wb') 219 fp = os.fdopen(fd, r'wb')
220 gen = patch.diff(source, parent, node, opts=diffopts) 220 gen = patch.diff(source, parent, node, opts=diffopts)
221 for chunk in gen: 221 for chunk in gen:
222 fp.write(chunk) 222 fp.write(chunk)
223 fp.close() 223 fp.close()
261 def filter(self, filter, node, changelog, patchfile): 261 def filter(self, filter, node, changelog, patchfile):
262 '''arbitrarily rewrite changeset before applying it''' 262 '''arbitrarily rewrite changeset before applying it'''
263 263
264 self.ui.status(_('filtering %s\n') % patchfile) 264 self.ui.status(_('filtering %s\n') % patchfile)
265 user, date, msg = (changelog[1], changelog[2], changelog[4]) 265 user, date, msg = (changelog[1], changelog[2], changelog[4])
266 fd, headerfile = tempfile.mkstemp(prefix='hg-transplant-') 266 fd, headerfile = pycompat.mkstemp(prefix='hg-transplant-')
267 fp = os.fdopen(fd, r'wb') 267 fp = os.fdopen(fd, r'wb')
268 fp.write("# HG changeset patch\n") 268 fp.write("# HG changeset patch\n")
269 fp.write("# User %s\n" % user) 269 fp.write("# User %s\n" % user)
270 fp.write("# Date %d %d\n" % date) 270 fp.write("# Date %d %d\n" % date)
271 fp.write(msg + '\n') 271 fp.write(msg + '\n')