The translations were all random fuzzy strings, which can only do harm, so
remove them.
Moreover, given the status of revset (it seems mostly an internal undocumented module, and
to understand it you need the source anyway), I prefer not to translate it for
now.
Significant updates were performed - when translating something, I tried to
choose a term and use it consistently everywhere possible, so here I translated
a lot of messages. Additionally, I use the mq extension a lot, and now I am
using the translation, so I will be able to translate it better.
Since [OPTION]... is intended to mean more options, it was translated in Italian
as plural. However the plural is conveyed by `...', so switch to the singular.
This was also useful because for the '-o OPT' extdiff option, I have to
translate `OPT' as a singular.
The problem was introduced already in revision 8d217f7d68be by the original
Italian translator, according to logs. This might be due to a bug in the program
he used, "Lokalize 0.3", or maybe not - some accented characters exist also in
that commit.
The fallback was introduced by 33415b0b4e64 at the same time than
nlinks(). Apparently it only handles the case where target path
does not exist. Just raise IOError directly.
win32.nlinks() was often returning 1 instead of the correct
hardlinks count when reading from network drives. This made
commit or push to a repository on a network share to fail
breaking the hardlinks in the datastore, possibly causing
integrity errors in repositories linked locally on the remote
side.
Here is what the MSDN says about GetFileInformationByHandle():
Depending on the underlying network features of the operating
system and the type of server connected to, the
GetFileInformationByHandle function may fail, return partial
information, or full information for the given file.
In practice, we never got the correct hardlinks count when
reading from and to many combinations of Window XP, 2003, Vista
and 7, via network drives or RDP shares. It always returned 1
instead. The only setup returning an accurate links count was a
samba on Debian.
To avoid this, Mercurial now breaks the hardlinks unconditionally
when writing to a network drive.
Configuration from the outer repo is inherited to the patches repo when --mq is
used.
In case the patches repo only has paths.default configured but the outer repo
has paths.default-push then the inherited default-push will win. Very
confusing.
Inheriting the default paths is however wrong in all sane cases, so now we
explicitly remove them.
The following patch allows the use of python2.4 with a standalone
hashlib rather than assuming that python2.5 is in use when hashlib is
imported successfully.
Prior to version 2.7, calling locale.getpreferredencoding() would
always return 'mac-roman' on Mac OS X. Previously, this was handled by
a call to locale.setlocale(). Unfortunately, Python 2.6.5 and older
have a bug where isspace() would incorrectly report True for 0x85 and
0xa0 after such a call.
In order to fix this, we replace the previous _encodingfixup mapping
to an _encodingfixers mapping. Rather than mapping encodings to their
replacement, it maps them to a function returning the
replacement. This allows us to provide an simplified implementation of
getpreferredencoding() which extracts the expected encoding and
restores the locale.
This fix is based on a patch originally submitted by Martijn Pieters
as well as feedback from Brodie Rao.
Mads Kiilerich pointed out that 1e4ade283b02 was too eager since the
prefix and password keys may contain $-signs. So this only add the
username to the list of keys that are expanded.
This also updates the documentation to match.
re.match only looks at the beginning of the merged file, and without
re.MULTILINE the file had to end with ">>>>>>> something".
Now conflict markers inside the file are found, too.
Currently, given an alias like the following:
[alias]
summary = summary --remote
The alias might be executed - or it might not - depending on the order
of the cmdtable dict.
This happens because cmdalias gets assigned back to the cmdtable like so:
cmdtable['summary'] = ...
Yet '^summary|sum' is still in the table, so which one cmdutil.findcmd()
chooses isn't deterministic.
This patch makes cmdalias assign back to '^summary|sum'. It uses the same
cmdtable key lookup that extensions.wrapcommand() does.
If hgweb.config contains wrong path mapping, hgweb causes internal server
error on repository index page.
This patch changes makeindex() to ignore RepoError, because it looks to be
designed to suppress configuration error.
Changeset 372e3cb2c9bf (from 2008) introduced a hack to handle the
very long values of $TMPDIR typically seen on Mac OS X. This hack
expected continuation lines to begin with a tab. However, as a result
of a change in Python 2.7, changeset 025d0ea4305a made it so
continuation lines began with a tab. Since then, `test-notify' has
been broken on Mac OS X.
Merely replacing the tab in the regular expression with a space will
not work: not only do tab continuations still occur in the message, but
other lines -- in the body of the message -- also start with a
space. Luckily, all broken up lines appear to end with either a colon
or an n, so we can match those, and reinsert them in the replacement.