comparison mercurial/patch.py @ 41986:95e4ae86329f

patch: include newline at EOF in help text for interactive patch The lack of a newline means that some "editors" that are useful in tests, such as `echo "+new line" >> "$1"` don't work. It's obviously easy to work around it, but newline at EOF seems like a good practice anyway. Differential Revision: https://phab.mercurial-scm.org/D6124
author Martin von Zweigbergk <martinvonz@google.com>
date Tue, 12 Mar 2019 14:58:35 -0700
parents f8c5225b9054
children c1d83d916e85
comparison
equal deleted inserted replaced
41985:b1bc6e5f5249 41986:95e4ae86329f
1115 try: 1115 try:
1116 # Write the initial patch 1116 # Write the initial patch
1117 f = util.nativeeolwriter(os.fdopen(patchfd, r'wb')) 1117 f = util.nativeeolwriter(os.fdopen(patchfd, r'wb'))
1118 chunk.header.write(f) 1118 chunk.header.write(f)
1119 chunk.write(f) 1119 chunk.write(f)
1120 f.write('\n'.join(['# ' + i for i in phelp.splitlines()])) 1120 f.write(''.join(['# ' + i + '\n'
1121 for i in phelp.splitlines()]))
1121 f.close() 1122 f.close()
1122 # Start the editor and wait for it to complete 1123 # Start the editor and wait for it to complete
1123 editor = ui.geteditor() 1124 editor = ui.geteditor()
1124 ret = ui.system("%s \"%s\"" % (editor, patchfn), 1125 ret = ui.system("%s \"%s\"" % (editor, patchfn),
1125 environ={'HGUSER': ui.username()}, 1126 environ={'HGUSER': ui.username()},