FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Mon, 05 May 2014 21:26:40 +0900] rev 21236
qrefresh: use "editor" argument of "commit()" instead of explicit "ui.edit()"
Before this patch, "hg qrefresh" and "hg qfold" invoke "ui.edit()"
explicitly to get commit message edited manually.
This requires explicit "localrepository.savecommitmessage()"
invocation to save edited commit message into ".hg/last-message.txt",
because unexpected exception raising may abort command execution
before saving it in "localrepository.commit()".
This patch uses "editor" argument of "localrepository.commit()"
instead of explicit "ui.edit()" invocation for "hg qnew" and "hg qfold"
"localrepository.commit()" will invoke "desceditor()" function newly
added by this patch, and save edited commit message into
".hg/last-message.txt" automatically.
This patch passes not "editor" but "desceditor" to "commit()", because
"hg qnew" and "hg qfold" require editor function to return edited
message (and invoke "patchheader.setmessage()" with it) if not empty,
or default message otherwise.
This patch also avoids "not q.applied" check at "hg qrefresh --edit",
because it is also checked in "queue.refresh()", and it is not needed
to get commit message from patch header before "queue.refresh()".
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Mon, 05 May 2014 21:26:40 +0900] rev 21235
qrefresh: relocate message/patch-header handling to delay message determination
Before this patch, commit message for refreshed MQ changeset is
determined, and written into refreshed patch file before
"localrepository.commit()" invocation.
This makes refactoring to use "editor" argument of "commit()" instead
of explicit "ui.edit()" invocation in succeeding patch difficult.
This patch relocates message/patch-header handling to delay message
determination.
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Mon, 05 May 2014 21:26:40 +0900] rev 21234
qnew: use "editor" argument of "commit()" instead of explicit "ui.edit()"
Before this patch, "hg qnew" invokes "ui.edit()" explicitly to get
commit message edited manually.
This requires explicit "localrepository.savecommitmessage()"
invocation to save edited commit message into ".hg/last-message.txt",
because unexpected exception raising may abort command execution
before saving it in "localrepository.commit()".
This patch uses "editor" argument of "localrepository.commit()"
instead of explicit "ui.edit()" invocation for "hg qnew".
"localrepository.commit()" will invoke "desceditor()" function newly
added by this patch, and save edited commit message into
".hg/last-message.txt" automatically.
This patch passes not "editor" but "desceditor" to "commit()", because
"hg qnew" requires editor function to return edited message if not
empty, or default message otherwise.
This patch applies "rstrip()" on "defaultmsg" at comparison between
"nctx.description()" and "defaultmsg", because the former should be
stripped by "changelog.stripdesc()" and the latter may have tail white
spaces inherited from "patchfn".
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Mon, 05 May 2014 21:26:40 +0900] rev 21233
histedit: use "editor" argument of "commit()" instead of explicit "ui.edit()"
Before this patch, "message" action of "hg histedit" uses "ui.edit()"
explicitly to get commit message edited manually.
This requires explicit "localrepository.savecommitmessage()"
invocation to save edited commit message into ".hg/last-message.txt",
because unexpected exception raising may abort command execution
before saving it in "localrepository.commit()".
This patch uses "editor" argument of "localrepository.commit()"
instead of explicit "ui.edit()" invocation for "message" action of "hg
histedit"
"localrepository.commit()" will invoke "editor()" function newly added
in this patch, and save edited commit message into ".hg/last-message.txt"
automatically.
Yuya Nishihara <yuya@tcha.org> [Tue, 29 Apr 2014 12:54:01 +0900] rev 21232
test-pyflakes: detect undefined name error
It should be able to catch the following mistakes at
2606e7f227f6:
mercurial/exchange.py:590: undefined name 'UnknownPartError'
mercurial/match.py:346: undefined name 'pat'
mercurial/win32.py:365: undefined name '_ERROR_NO_MORE_FILES'
tests/killdaemons.py:46: undefined name 'check'
Yuya Nishihara <yuya@tcha.org> [Fri, 02 May 2014 18:25:23 +0900] rev 21231
run-tests: initialize global variables to suppress pyflakes warning
Matt Mackall <mpm@selenic.com> [Tue, 06 May 2014 12:47:59 -0500] rev 21230
merge with stable
Thomas Arendsen Hein <thomas@intevation.de> [Mon, 05 May 2014 16:54:15 +0200] rev 21229
setup.py, make: avoid problems with outdated, existing hgext/__index__.py*
"make clean" already removed __index__.py[cdo], but not the __index__.py
(automatically generated by "python setup.py build_hgextindex").
"setup.py build_hgextindex" did not generate a new index if file
__index__.py[cdo] already existed, because if __index__.py was removed,
the compiled file containing the old information was imported and used.
Generate an empty file (with a new timestamp to generate a new .py[cdo])
instead and make mercurial.extensions ignore the unset docs attribute.
One of the problems was a failed test-help.t, to reproduce:
$ rm hgext/__index__.py*
$ echo 'docs = {"mq": "dummy"}' > hgext/__index__.py
$ make test-help.t
With this a "make clean" or "python setup.py build_hgextindex" helps.
Yuya Nishihara <yuya@tcha.org> [Fri, 02 May 2014 18:24:10 +0900] rev 21228
factotum: initialize global variables to suppress pyflakes warning
Mads Kiilerich <madski@unity3d.com> [Sat, 03 May 2014 03:29:30 +0200] rev 21227
color: don't fail on error messages when no curses (
issue4237)
The error only occured when Python didn't have curses - such as on Windows and
when Python was built without curses support.
No curses can also be emulated by (re)moving .../lib/python2.7/curses/ from the
Python installation.
It is left as an exercise to figure out exactly what changed in Mercurial that
triggered this error.
Steve Borho <steve@borho.org> [Sat, 03 May 2014 10:33:54 +0200] rev 21226
win32: backout
1a9ebc83a74c
This change conflicted with TortoiseHg's use of QFileSystemWatcher. Files which
were being monitored (for file-system events) were unable to be reliably updated
using util.atomictempfile. Often the update would error out in the middle of
the process leaving neither the old or the new file in place.
My guess is that _kernel32.CreateFileA() is triggering an exception that is
not handled correctly within unlink()
Matt Mackall <mpm@selenic.com> [Mon, 05 May 2014 13:42:08 -0500] rev 21225
test-check-code-hg: use locate instead of manifest
Matt Mackall <mpm@selenic.com> [Mon, 05 May 2014 13:41:29 -0500] rev 21224
test-check-code-hg: drop manual check of non-.py scripts
Matt Mackall <mpm@selenic.com> [Mon, 05 May 2014 13:42:58 -0500] rev 21223
test-check-code-hg: use test-repo check
Matt Mackall <mpm@selenic.com> [Mon, 05 May 2014 13:37:59 -0500] rev 21222
check-code: look at shebang to identify Python scripts
Matt Mackall <mpm@selenic.com> [Fri, 02 May 2014 00:23:58 -0500] rev 21221
tests: use locate to find files for pyflakes check
Based on a suggestion by Yuya Nishihara