Dan Villiom Podlaski Christiansen <danchr@gmail.com> [Sat, 07 Jan 2012 15:27:34 +0100] rev 15783
largefiles: remove a chunk of commented out code
Martin Geisler <mg@aragost.com> [Fri, 06 Jan 2012 16:27:13 +0100] rev 15782
Remove FSF mailing address from GPL headers
The GPLv3 FAQ suggests to upgrade by
[...] replace all your existing v2 license notices (usually at the
top of each file) with the new recommended text available on the GNU
licenses howto. It's more future-proof because it no longer includes
the FSF's postal mailing address.
This removes the postal address, but leaves the version number at 2+.
Martin Geisler <mg@aragost.com> [Fri, 06 Jan 2012 16:16:58 +0100] rev 15781
dispatch: lowercase abort message
Martin Geisler <mg@lazybytes.net> [Fri, 06 Jan 2012 11:43:17 +0100] rev 15780
merge with stable
Martin Geisler <mg@lazybytes.net> [Fri, 06 Jan 2012 11:15:32 +0100] rev 15779
commands: add link to addremove in commit help text
Kevin Gessner <kevin@fogcreek.com> [Thu, 05 Jan 2012 07:26:22 -0800] rev 15778
largefiles: display remote errors from putlfile (
issue3123) (
issue3149)
Matt Mackall <mpm@selenic.com> [Thu, 05 Jan 2012 20:35:10 -0600] rev 15777
cmdutil: simplify duplicatecopies
Matt Mackall <mpm@selenic.com> [Thu, 05 Jan 2012 14:14:12 -0600] rev 15776
hgcia: fix diffstat support
Matt Mackall <mpm@selenic.com> [Wed, 04 Jan 2012 17:55:30 -0600] rev 15775
copies: rewrite copy detection for non-merge users
The existing copy detection API was designed with merge in mind and
was ill-suited for doing status/diff. The new pathcopies
implementation gives more accurate, easier to use results for
comparing two revisions, and is much simpler to understand.
Test notes:
- test-mv-cp-st.t results finds more renames in the reverse direction now
- test-mq-merge.t was always wrong and duplicated a copy in diff that
was already present in one of the parent revisions
Matt Mackall <mpm@selenic.com> [Wed, 04 Jan 2012 15:48:02 -0600] rev 15774
copies: split the copies api for "normal" and merge cases (API)
Matt Mackall <mpm@selenic.com> [Tue, 03 Jan 2012 17:13:03 -0600] rev 15773
merge with stable
Augie Fackler <durin42@gmail.com> [Mon, 02 Jan 2012 19:30:28 -0600] rev 15772
progress: Use the same GPL boilerplate as most hg files
Augie Fackler <durin42@gmail.com> [Mon, 02 Jan 2012 19:30:21 -0600] rev 15771
color: Use the same GPL boilerplate as most hg files
Matt Mackall <mpm@selenic.com> [Tue, 03 Jan 2012 17:09:26 -0600] rev 15770
tests: patch up silly new year's bug
Mads Kiilerich <mads@kiilerich.com> [Mon, 26 Dec 2011 15:01:06 +0100] rev 15769
encoding: use hint markup for "please check your locale settings"
This will also make test-encoding.t pass on windows. The test would hit some
other code path that already used hint markup.
Mads Kiilerich <mads@kiilerich.com> [Mon, 26 Dec 2011 15:30:43 +0100] rev 15768
tests: make simple single quotes work with dummyssh on windows
Mercurial assumes that the shell on remote servers over ssh servers uses unix
quoting rules. Tests using dummyssh are however also run on windows where cmd
doesn't parse single quotes like on unix.
This hack replaces the single quotes with double quotes on windows - that is
enough to make test-ssh.t pass after
d8fa35c28335.
Mads Kiilerich <mads@kiilerich.com> [Mon, 26 Dec 2011 16:54:43 +0100] rev 15767
tests: ensure platform independent revision hashes in test-notify.t
Makes the test pass again on windows after
ca572e94d8e7.
Mads Kiilerich <mads@kiilerich.com> [Mon, 26 Dec 2011 16:57:14 +0100] rev 15766
tests: ignore slash direction in paths in test-notify-changegroup.t
Fixes testing on windows after
2a7fa7c641d8.
Matt Mackall <mpm@selenic.com> [Tue, 03 Jan 2012 15:48:58 -0600] rev 15765
grep: make multiline mode the default (BC)
This is a much more logical way to deal with ^ and $.
Old ^ and $ behavior are available with \A and \Z.
Steve Borho <steve@borho.org> [Mon, 02 Jan 2012 20:52:16 -0600] rev 15764
wix: add map-commandline.bisect
Matt Mackall <mpm@selenic.com> [Sun, 01 Jan 2012 14:06:24 -0600] rev 15763
merge with stable
Matt Mackall <mpm@selenic.com> [Sun, 01 Jan 2012 13:46:50 -0600] rev 15762
Added signature for changeset
634404392449
Matt Mackall <mpm@selenic.com> [Sun, 01 Jan 2012 13:46:46 -0600] rev 15761
Added tag 2.0.2 for changeset
634404392449
Matt Mackall <mpm@selenic.com> [Sun, 01 Jan 2012 14:05:03 -0600] rev 15760
merge with stable
Matt Mackall <mpm@selenic.com> [Sun, 01 Jan 2012 13:37:44 -0600] rev 15759
merge with i18n
Matt Mackall <mpm@selenic.com> [Sun, 01 Jan 2012 13:37:30 -0600] rev 15758
merge with i18n
Alexander Sauta <demosito@gmail.com> [Sun, 01 Jan 2012 19:45:06 +0400] rev 15757
i18n-ru: translated commands output up to the end
Alexander Sauta <demosito@gmail.com> [Sat, 31 Dec 2011 21:54:14 +0300] rev 15756
i18n-ru: added missing strings in Mercurial help
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Sat, 31 Dec 2011 15:23:05 +0900] rev 15755
i18n-ja: synchronized with
be3173353094
Alexander Sauta <demosito@gmail.com> [Fri, 30 Dec 2011 23:18:19 +0300] rev 15754
i18n-ru: translated missing commands output up to line 13868
Alexander Sauta <demosito@gmail.com> [Mon, 26 Dec 2011 22:05:48 +0300] rev 15753
i18n-ru: synchronized with
9cf1620e1e75, translated patchbomb
Wagner Bruna <wbruna@yahoo.com> [Fri, 30 Dec 2011 00:54:36 -0200] rev 15752
i18n-pt_BR: synchronized with
5a20115e7397
Matt Mackall <mpm@selenic.com> [Fri, 30 Dec 2011 17:04:36 -0600] rev 15751
merge with stable
Matt Mackall <mpm@selenic.com> [Fri, 30 Dec 2011 15:47:58 -0600] rev 15750
convert: improve exception reporting for SVN logstream
- catch all exceptions
- pickle a stringified version of the exception
- use a normal abort
Hopefully this will result in less mysterious convert exceptions
Matt Mackall <mpm@selenic.com> [Fri, 30 Dec 2011 15:07:05 -0600] rev 15749
fetch: fix unneeded commit when no merge attempted (
issue2847)
Matt Mackall <mpm@selenic.com> [Fri, 30 Dec 2011 14:31:59 -0600] rev 15748
fetch: patch cornercase in children calculation (
issue2773)
Matt Mackall <mpm@selenic.com> [Thu, 29 Dec 2011 14:45:18 -0600] rev 15747
merge with stable
Matt Mackall <mpm@selenic.com> [Thu, 29 Dec 2011 14:44:30 -0600] rev 15746
merge with i18n
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Thu, 29 Dec 2011 16:10:53 +0900] rev 15745
i18n-ja: synchronized with
32a6e00e4cfe
Matt Mackall <mpm@selenic.com> [Thu, 29 Dec 2011 14:02:18 -0600] rev 15744
rollback: clarify --force text (
issue3175)
Michal Sznajder <michalsznajder@gmail.com> [Wed, 28 Dec 2011 00:01:48 +0100] rev 15743
largefiles: clarify help when options are ignored until first add is done
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 27 Dec 2011 00:11:22 +0100] rev 15742
phases: prevent rebase to rebase immutable changeset.
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Mon, 26 Dec 2011 13:48:31 +0100] rev 15741
phases: on copy clone, do not copy phases data if repote is publishing
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Mon, 26 Dec 2011 13:47:37 +0100] rev 15740
phases: copy phases data on local clone
Michal Sznajder <michalsznajder@gmail.com> [Tue, 27 Dec 2011 23:56:20 +0100] rev 15739
largefiles: tiny code clean up
lfutil.islfilesrepo is a preffered way for testing if repo is largefiles enabled
Laurens Holst <laurens.hg@grauw.nl> [Wed, 21 Dec 2011 18:20:15 +0100] rev 15738
context: add isbinary function
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 27 Dec 2011 21:12:09 +0100] rev 15737
rebase: add a "D" short option for detach
Detach is usually what I want when I use --source or (in particular) --rev.
Having a shorter option make it less an hassle to use it.
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 27 Dec 2011 20:45:46 +0100] rev 15736
rebase: allow --detach when --rev is used
--rev is only a more specific --source and there is no reason to refuse to use
detach with it.
Matt Mackall <mpm@selenic.com> [Mon, 26 Dec 2011 18:08:20 -0600] rev 15735
merge with stable
Matt Mackall <mpm@selenic.com> [Mon, 26 Dec 2011 18:07:49 -0600] rev 15734
merge with i18n
Alexander Sauta <demosito@gmail.com> [Sun, 25 Dec 2011 19:49:14 +0300] rev 15733
i18n-ru: translated notify, pager
Alexander Sauta <demosito@gmail.com> [Mon, 19 Dec 2011 22:40:59 +0300] rev 15732
i18n-ru: translated inotify, interhg; skipped strings added
Alexander Sauta <demosito@gmail.com> [Sun, 18 Dec 2011 22:54:43 +0300] rev 15731
i18n-ru: translated convert messages
Alexander Sauta <demosito@gmail.com> [Sun, 18 Dec 2011 01:05:52 +0300] rev 15730
i18n-ru: translated bugzilla
Alexander Sauta <demosito@gmail.com> [Sat, 17 Dec 2011 20:21:52 +0300] rev 15729
i18n-ru: synchronized with
d976b1ef6760
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Sat, 24 Dec 2011 19:16:36 +0900] rev 15728
icasefs: add test for case preservation on case insensitive filesystem
"hg qpush" causes unexpected behavior, if case preservation on case
insensitive filesystem is not enough.
this patch adds the test using mixed-case filenames to reproduce this
problem on any case insensitive filesystems.
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Sun, 25 Dec 2011 20:35:16 +0900] rev 15727
i18n: use "encoding.lower()" to normalize string in hgweb search query
some problematic encoding (e.g.: cp932) uses ASCII alphabet characters
in byte sequence of multi byte characters.
"str.lower()" on such byte sequence may treat distinct characters as
same one, and cause unexpected log matching.
this patch uses "encoding.lower()" instead of "str.lower()" to
normalize strings for compare.
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Sun, 25 Dec 2011 20:35:16 +0900] rev 15726
i18n: use "encoding.lower()" to normalize specified string for revset
some problematic encoding (e.g.: cp932) uses ASCII alphabet characters
in byte sequence of multi byte characters.
"str.lower()" on such byte sequence may treat distinct characters as
same one, and cause unexpected log matching.
this patch uses "encoding.lower()" instead of "str.lower()" to
normalize strings for compare.
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Sun, 25 Dec 2011 20:35:16 +0900] rev 15725
i18n: use "encoding.lower()" to normalize specified keywords for log searching
some problematic encoding (e.g.: cp932) uses ASCII alphabet characters
in byte sequence of multi byte characters.
"str.lower()" on such byte sequence may treat distinct characters as
same one, and cause unexpected log matching.
this patch uses "encoding.lower()" instead of "str.lower()" to
normalize strings for compare.
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Sun, 25 Dec 2011 20:32:48 +0900] rev 15724
win32mbcs: allow win32mbcs extension to be enabled on cygwin platform
this patch allows win32mbcs extension to be enabled on cygwin platform
for problematic character encodings.
on recent cygwin platform, even though
"os.path.supports_unicode_filenames" is False, "os.listdir()" and
other path manipulation functions can return the result correctly
decoded in unicode for invocations with unicode arguments, if locale
is configured properly.
existing code to check "os.path.supports_unicode_filenames" is kept to
prevent win32mbcs from being enabled on unexpected platform.
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Sat, 24 Dec 2011 19:05:35 +0900] rev 15723
windows: use normalized path as path to subrepo
path to subrepo is used to identify or check location of subrepo.
it should be normalized (in "/" delimiter form), because it is also
used with narrowmatcher which uses only normalized path even on
Windows environment.
this patch applies "util.pconvert()" on path to subrepo (called
"subpath") to normalize it.
for this patch, referers of below were checked.
- subrepo.state()
- subrepo.itersubrepos()
- subrepo.subrepo()
- context.sub()
- context.substate()
typical usecase is:
for subpath in ctx.substate:
sub = ctx.sub(subpath)
... ctx.substate[subpath] ....
in this case, normalization has no side effect, because keys given
from substate are used as key itself.
other cases shown below also seem to require subpath to be normalized.
- path components are joined by "/", in "commands.forget()":
for subpath in ctx.substate:
subforget[subpath + '/' + fsub] = (fsub, sub)
- normalized "file" is used to check below condition, in
"commands.revert()", "localrepository.commit()", and
"localrepository._checknested()"
file in ctx.substate
- substate.keys() is passed to dirstate.walk()/status() which use
only normalized pathes
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Sat, 24 Dec 2011 19:05:25 +0900] rev 15722
windows: use normalized path to check repository nesting
current "localrepository._checknested()" uses specified path itself to
compare against subrepo pathes.
it is invoked from "hgsubrepo.subrepo()" or pathauditor (as callback),
and both use "os.sep" as separator.
this causes unexpected nesting check result, if subrepo configuration
uses "/" as path separator for sub repo path.
this path uses "/" to join path components (or apply "util.pconvert()"
on path) to normalize.
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Sat, 24 Dec 2011 19:01:07 +0900] rev 15721
windows: force specified path to be audited in localpath form
pathauditor is invoked not only for localpath form using "os.sep" as
separator, but also for normalized form using "/": for example, hg
internal path like "store/data" under ".hg", or ones normalized by
match object
this causes insufficient repository nesting check, because current
pathauditor implementation divides specified path into components by
"os.sep", and this causes to treat multiple path components joined by
"/" as single one on Windows environment.
this patch applies "util.localpath()" on specified path to force it to
be divided into components correctly.
in fact, root for pathauditor also uses multiple path separator on
Windows. but this does not affect audit itself, so "util.localpath()"
is not applied on it.
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Sat, 24 Dec 2011 00:52:06 +0900] rev 15720
icasefs: rewrite comment to explain situtation precisely
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Sat, 24 Dec 2011 00:51:14 +0900] rev 15719
icasefs: follow standard cache look up pattern
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Sat, 24 Dec 2011 00:50:56 +0900] rev 15718
icasefs: disuse length check against un-normcase()-ed filenames
this patch disuses length check against un-normcase()-ed filenames
gotten by "os.listdir()", because there is no assurance that
filesystem stores filenames normalized except in letter case, even
though some case insensitive filesystems (in some environment, for
some language setting) store them in such manner.
Matt Mackall <mpm@selenic.com> [Thu, 22 Dec 2011 15:56:27 -0600] rev 15717
merge with stable
Matt Mackall <mpm@selenic.com> [Thu, 22 Dec 2011 15:56:17 -0600] rev 15716
merge with i18n
Fabian Kreutz <fabian.kreutz@qvantel.com> [Wed, 21 Dec 2011 11:48:18 +0200] rev 15715
i18n-de: Translations and fixes until line 6000; more annotations
Fabian Kreutz <fabian.kreutz@qvantel.com> [Mon, 19 Dec 2011 14:11:37 +0200] rev 15714
i18n-de: New translations, mostly largefiles extension
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 22 Dec 2011 00:42:25 +0100] rev 15713
phases: do not exchange secret changesets
Any secret changesets will be excluded from pull and push. Phase data are
properly synchronized on pull and push if a changeset is seen as secret locally
but is non-secret remote side.
This patch does not handle the case of a changeset secret on remote but known
locally.
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 22 Dec 2011 00:40:46 +0100] rev 15712
phases: test the new-commit option and proper inheritence of phase
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Fri, 16 Dec 2011 21:21:08 +0900] rev 15711
cygwin: add cygwin specific normcase logic
in cygwin environment, mount point part of path is treated as case
sensitive, even though underlying NTFS is case insensitive.
this patch preserves mount point part of specified path, only if it is
absolute one.
there is no easy way to get list of current mount points from python
program, other than to execute "mount" external command, because
cygwin does not store current mount points into Unix/Linux like
/etc/XXXtab file.
so, this patch introduces cygwinmountpoints variable to list mount
points to be preserved case.
this allows some other extensions to customize mount point
configuration.
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Fri, 16 Dec 2011 21:09:40 +0900] rev 15710
icasefs: avoid path-absoluteness/existance check in util.fspath() for efficiency
'dirstate._normalize()', the only caller of 'util.fspath()', has
already confirmed exsistance of specified file as relative to root.
so, this patch omits path-absoluteness/existance check from
'util.fspath()'.
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Fri, 16 Dec 2011 21:09:40 +0900] rev 15709
icasefs: retry directory scan once for already invalidated cache
some hg operation (e.g.: qpush) create new files after first
dirstate.walk()-ing, and it invalidates _fspathcache for fspath().
then, fspath() will fail to look up specified name in _fspathcache.
this causes case preservation breaking, because parts of already
normcase()-ed path are used as result at that time.
in this case, file creation and writing out should be done before
fspath() invocation, so the second invocation of os.listdir() has not
so much impact on runtime performance.
Angel Ezquerra <angel.ezquerra@gmail.com> [Thu, 29 Sep 2011 17:20:04 +0200] rev 15708
push: propagate --new-branch and --ssh options when pushing subrepos
Up until now the all the push command options were ignored when pushing
subrepos. In particular, the fact that the --new-branch command was not passed
down to subrepos made it not possible to push a repo when any of its
subrepos had a new branch, even if you used the --new-branch option of the push
command.
In addition the error message was confusing since it showed the following hint:
"--new-branch hint: use 'hg push --new-branch' to create new remote branches".
However using the --new_branch flag did not fix the problem, as it was ignored
when pushing subrepos.
This patch passes the --new-branch and --ssh flags to every subrepo that is
pushed.
Issues/Limitations:
- All subrepo types get these flags, but only the mercurial subrepos use them.
- It is no longer possible to _not_ pass down these flags to subrepos when
pushing:
* An alternative would be to introduce a --subrepos flag that should be
used to pass down these flags to the subrepos.
* If we did this, it could make sense to make the --force flag respect this
new --subrepos flag as well for consistency's sake.
- Matt suggested that the ssh related flags could also be passed down to
subrepos during pull and clone. However it seems that it would be the "update"
command that would need to get those, since subrepos are only pulled on update.
In any case I'd prefer to leave that for a later patch.
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 21 Dec 2011 23:56:15 +0100] rev 15707
phases: implement ``phase()`` and ``hidden()`` method for workingctx
Working ctx don't have revision number and need a dedicated implementation.
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 20 Dec 2011 01:31:25 +0100] rev 15706
Add a phases.new-commit option to control minimal phase of new commit
this option is both intended for human and internal code usage.
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 20 Dec 2011 01:34:12 +0100] rev 15705
phases: update doc to mention secret phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 21 Dec 2011 23:47:18 +0100] rev 15704
phases: prevent mq to qimport immutable change.
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Mon, 19 Dec 2011 23:31:38 +0100] rev 15703
phases: add a mutable boolean property on context
Laurens Holst <laurens.hg@grauw.nl> [Tue, 20 Dec 2011 20:36:40 +0100] rev 15702
ignore: add files present in the hackable-hg windows distribution
Kevin Bullock <kbullock@ringworld.org> [Tue, 20 Dec 2011 14:11:14 -0600] rev 15701
graft: use consistent language in help
Removes the word 'aborted' from the 3rd paragraph in favor of
'interrupted', the same word used in the description of the
-c/--continue switch. The word 'interrupted' is also consistent with
the help for rebase.
Matt Mackall <mpm@selenic.com> [Wed, 21 Dec 2011 14:36:08 -0600] rev 15700
merge with stable
Matt Mackall <mpm@selenic.com> [Tue, 20 Dec 2011 11:43:38 -0600] rev 15699
largefiles: copy files in binary mode (
issue3164)
Alistair Bell <alistair.bell@netronome.com> [Thu, 15 Dec 2011 16:41:03 -0500] rev 15698
diff: when diffing a revision with a deleted subrepo, maintain the node context (
issue3153)
Pierre-Yves David <pierre-yves.david@logilab.fr> [Mon, 19 Dec 2011 11:37:44 +0100] rev 15697
phases: add a function to compute visible heads
This function will be used to hide secret changeset.
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sun, 18 Dec 2011 23:16:46 +0100] rev 15696
phases: Add a third phase for secret changeset
Pierre-Yves David <pierre-yves.david@logilab.fr> [Mon, 19 Dec 2011 11:29:39 +0100] rev 15695
phases: fix advanceboundary behavior when targetphase !=0
Changeset was properly removed from upper phase but was not explicitly added to
target phase. If advanced changesets had not pwasnt in target phase they was
considered public (0-phase).
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sun, 18 Dec 2011 23:15:12 +0100] rev 15694
phases: add a bit more test for local phase movement.
Matt Mackall <mpm@selenic.com> [Mon, 19 Dec 2011 14:04:33 -0600] rev 15693
merge with stable
Matt Mackall <mpm@selenic.com> [Mon, 19 Dec 2011 14:04:26 -0600] rev 15692
merge with i18n
Matt Mackall <mpm@selenic.com> [Mon, 19 Dec 2011 14:04:09 -0600] rev 15691
merge with i18n
Martin Schröder <martinschroeder@vcp-sh.de> [Mon, 19 Dec 2011 13:02:30 +0100] rev 15690
i18n-de: several new translations
Wagner Bruna <wbruna@softwareexpress.com.br> [Fri, 16 Dec 2011 10:47:17 -0200] rev 15689
merge with i18n stable
Wagner Bruna <wbruna@softwareexpress.com.br> [Fri, 16 Dec 2011 10:43:18 -0200] rev 15688
i18n-pt_BR: synchronized with
dc5d1394ecd1
Wagner Bruna <wbruna@softwareexpress.com.br> [Fri, 16 Dec 2011 10:44:08 -0200] rev 15687
merge with i18n
Alexander Sauta <demosito@gmail.com> [Fri, 16 Dec 2011 10:13:46 +0300] rev 15686
i18n-ru: translated purge, progress, rebase
Andrei Polushin <polushin@gmail.com> [Wed, 14 Dec 2011 02:27:55 +0700] rev 15685
i18n-ru: editing for 'push' and 'pull'
Andrei Polushin <polushin@gmail.com> [Wed, 14 Dec 2011 01:56:57 +0700] rev 15684
i18n-ru: editing for 'commit'
Andrei Polushin <polushin@gmail.com> [Wed, 14 Dec 2011 00:48:54 +0700] rev 15683
i18n-ru: editing for 'directory'
Andrei Polushin <polushin@gmail.com> [Wed, 14 Dec 2011 00:43:31 +0700] rev 15682
i18n-ru: editing for 'remote'
Andrei Polushin <polushin@gmail.com> [Tue, 13 Dec 2011 22:55:43 +0700] rev 15681
i18n-ru: editing for 'repository'
Andrei Polushin <polushin@gmail.com> [Tue, 13 Dec 2011 01:51:08 +0700] rev 15680
i18n-ru: editing for 'store' (largefiles concept)
Andrei Polushin <polushin@gmail.com> [Tue, 13 Dec 2011 01:40:30 +0700] rev 15679
i18n-ru: editing for 'branch'
Andrei Polushin <polushin@gmail.com> [Tue, 13 Dec 2011 01:11:46 +0700] rev 15678
i18n-ru: spellcheck
Alexander Sauta <demosito@gmail.com> [Mon, 12 Dec 2011 00:03:26 +0300] rev 15677
i18n-ru: glossary synchronized with wiki, still requires fixing
Alexander Sauta <demosito@gmail.com> [Sun, 11 Dec 2011 23:28:57 +0300] rev 15676
i18n-ru: mq translated
Alexander Sauta <demosito@gmail.com> [Thu, 08 Dec 2011 20:12:56 +0300] rev 15675
i18n-ru: largefiles strings fixed
Matt Mackall <mpm@selenic.com> [Fri, 16 Dec 2011 19:05:59 -0600] rev 15674
merge with stable
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Fri, 16 Dec 2011 21:21:27 +0900] rev 15673
merge: check filename case collision between changesets for branch merging
this patch makes branch merging abort when merged changesets have same
file in different case on case insensitive filesystem.
this patch does not prevent linear update which merges between target
and working contexts, because 'branchmerge' is False in such case.
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Fri, 16 Dec 2011 21:09:41 +0900] rev 15672
i18n: use encoding.lower/upper for encoding aware case folding
this patch uses encoding.lower/upper for case folding, because ones of
str can not fold case of non ascii characters correctly.
to avoid cyclic dependency and to encapsulate logic of normcase in
each platforms, this patch introduces encodinglower/encodingupper in
both posix/windows specific files.
this patch does not change implementation of normcase() in posix.py,
because we do not know the encoding of filenames on POSIX.
some "normcase()" are excluded from function wrap list in
hgext/win32mbcs.py, because they become encoding aware by this patch.
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Fri, 16 Dec 2011 21:09:40 +0900] rev 15671
windows: use upper() instead of lower() or os.path.normcase()
this patch uses upper() instead of lower() or os.path.normcase() for
case folding on Windows(NTFS), because lower-ing causes problems for
some languages on it.
see below for detail about problem of lower-ing:
https://blogs.msdn.com/b/michkap/archive/2005/01/16/353873.aspx
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Fri, 16 Dec 2011 21:09:40 +0900] rev 15670
icasefs: avoid normcase()-ing in util.fspath() for efficiency
'dirstate._normalize()', the only caller of 'util.fspath()', has
already normcase()-ed path before invocation of it.
normcase()-ed root can be cached on dirstate side, too.
so, this patch changes 'util.fspath()' API specification to avoid
normcase()-ing in it.
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Fri, 16 Dec 2011 21:09:40 +0900] rev 15669
icasefs: use util.normcase() instead of lower() or os.path.normcase in fspath
this also avoids lower()-ing on each path components by reuse the path
normcase()-ed at beginning of function.
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Fri, 16 Dec 2011 21:09:40 +0900] rev 15668
dirstate: prevent useless util.fspath() invocation for '.'
at first of dirstate.walk() on case insensitive filesystem,
normalization of '.' causes util.fspath() invocation, but '.' is not
cached in it.
this invocation is not only useless, but also harmful: initial "hg
tag" causes creation of ".hgtags" file after dirstate.walk(), and
looking up ".hgtags" in cache will fail, because directory contents of
root is already cached at util.fspath() invocation for '.'.
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Fri, 16 Dec 2011 21:09:40 +0900] rev 15667
icasefs: consider as case sensitive if there is no counterevidence, for safety
for safety, this patch prevents case-less name from misleading into
case insensitivity, even though such names should not be used.
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Fri, 16 Dec 2011 21:09:40 +0900] rev 15666
pathauditor: switch normcase logic according to case sensitivity of filesystem
this patch applies 'util.normcase()' to audit path only on case
insensitive filesystem.
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Fri, 16 Dec 2011 21:09:40 +0900] rev 15665
pathauditor: preserve case in abort messages
this patch uses both plain and normcase()-ed pathes to preserve letter
case of path in abort messages.
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Fri, 16 Dec 2011 21:09:40 +0900] rev 15664
pathauditor: use normcase()-ed path for audit result cache
in current pathauditor implementation, un-normcase()-ed path is
stored into and compared with audit result cache.
this is not efficiency on case insensitive filesystem.