cvsps version 2.2b1 as found in Fedora 10 outputs the following format:
---------------------
PatchSet 1
Date: 2008/11/26 00:59:46
Author: mk
Branch: HEAD
Tag: (none)
Branches: INITIAL
Log:
Initial revision
Members:
a:INITIAL->1.1
b/c:INITIAL->1.1
---------------------
The parser overwrote the Branch value with noise from the misparsed Branches
value.
The --graph option shows the ascii revision graph when used in conjunction
with the incoming, outgoing or log commands.
It also makes sure that incompatible options (e.g. --newest-first) are not
used.
Due to the fix to the pull race, to avoid sending unnecessary
changesets, use changegroupsubset if possible.
This will increase the load on the server.
Former code failed when tracking child directories we assumed were renamed with
their parents but were really created in the tags directory. This happens in
jQuery repository with /tags/ui/1.5b4/release@5455.
Extracts the column and edge determination code into a separate function
usable on generic DAGs with at most 2 parents per node.
grapher() is very similar to graphmod.graph(). I shall look into merging
them when I try visualizing patch branches in hgweb.
Started using contexts and renamed a bunch of variables (fewer underscores).
- clarifies dependencies on variables
- extracts potentially useful utility functions
- no need for separate confirm() function
- error message style conformance
- PEP 8 conformance
Adds two internal options, patches and patchnames, which allow other extensions
to email a given set of patches. The pbranch extension needs this to send its
patches which are diffs between topic branches.
Using the changectx might result in a lookup error during the strip command.
Thefore we use the current dirstate to get the parents of the working directory.
When a file is deleted via hg rm <file> the dirstate marks the file with a
status of 'r'. The physical file has been deleted, but the inotify server
tries to do a stat on the file after it's been removed.
Patch catches the exception and correctly call updatestatus()
And remove the "native support is required" message which is generated at an
inappropriate location and is printed more than once when using 'hg status'.
This patch fixes the following minor problem:
% hg bookmark -r null test
% hg bookmarks
test -1:000000000000
[...]
% hg commit
% hg bookmarks
* test 17:861ce7a241f9
That is: Bookmarks referring to the null revision are always forwarded
to the current revision.
To me, --move sounds like "make an existing bookmark refer to another
revision", but --move currently means "rename an existing bookmark".
This patch renames the switch to --rename to make it easier to
understand.
Mercurial bookmarks are local moveable pointers to changesets.
If you commit a changeset that is based on a changeset that has a
bookmark on it, the bookmark is forwarded to the new changeset.
Thanks to Ian Dees, Ronny Pfannschmidt for their patches,
Thanks to ronny, tonfa, prianha, mpm, #mercurial for their comments
and their support that helped me to get things done.
When converting git repos, all stuff happening on branches
seems to be ignored.
This is caused by the fact a "git clone" of a remote git
repo has all its branches prefixed with "origin/". By
chance, the "origin/master" branch is always linked to a
local "master" branch. So getheads() returns only the
master head, and it ignores all the other heads.
Make sure getheads() returns all heads, forcing remote
branches to be return by git-rev-parse.
pmezard expects
hg qref -s -X b
to apply the -X to the list of files in the patch, and thus remove b from the
patch.
That's how it worked before c302ef4372b2. That change seemed sensible, but it
wasn't...
mpm says
(17:22:30) pmezard_: kiilerix1: do you mean that -X should be forbidden with -s ?
(17:22:54) pmezard_: kiilerix1: and --include too
(17:23:03) mpm: No because you should be able to say hg qref -s foo* -X foo-bar
so mpm expects
hg qref -s -X b *
to apply the -X to the list of files in the working directory, and thus don't
include b in the patch
This patch tries to make both usecases work by creating a matchfn which uses
the include/excludes but not the filelist.
If we can't create the unix socket because the path is too long
we create the socket in a temporary directory and symlink it into
the repo.
Fix issue1208
The record extension incorrectly re-calculated the size lines for unified
diff hunks. It counted a '\\ No newline at end of file\n' line towards the
number of lines of trailing context, while it's not actually part of the
context (and certainly isn't added as a line to the resulting output).
Use the local name of a variable that was access through the nonlocal scope
while we're at it. Seeing the variable was a little bewildering.
The latest GIT has some changes in the way it is installed. Only the 'git'
executable need to be in the path. All other commands are treated as sub
commands of 'git'.
Fix identified by frank@kingswood-consulting.co.uk
Changed usage fron os.environ["HOME"] to expanduser("~/.cvspass") as
this is the
only usage of this construct in mercurial sources.
Example case:
Display file written in iso-8859-1 with current HGENCODING utf-8.
At the moment only an Error page appears because pygmentize
chokes on the replacement chars.
Alternatives:
1) Turn off highlighting and avoid UnicodeDecodeError
for files that are not in HGENCODING.
2) [this patch] use util.tolocal to display these files.
Alternative 2) seems ok, as this only concerns display and
readability.
See also: c5f1a58b8b9a, apparently put aside during refactor of
highlight.
Add test for UnicodeDecodeError with iso-8859-1 file contents.
- addresses will be properly encoded
- message bodies will also be encoded as we are not sending
patches that are meant to be applied
- update test output
- adapt test-keyword to ignore the new headers
'hg qrefresh --short file.txt' now adds changes made to file.txt to current
patch.
This builds on a patch for implementing --amend by Kirill Smelkov as discussed
in issue933.
FIXME: Why do mq refresh have two matchers if we only need one?