Matt Mackall <mpm@selenic.com> [Sat, 22 Oct 2011 16:12:33 -0500] rev 15337
windows: recompute flags when committing a merge (
issue1802)
Before this patch, Windows always did the wrong thing with exec bits
when committing a merge: consult the flags in first parent.
Now we manually recompute the result of merging flags at commit time,
which almost always does the right thing (except when there are
conflicts between symlink and exec flags).
To do this, we:
- pull flag synthesis out into its own function
- delay building this function unless it's needed
- add a merge case that compares flags in local and other against the ancestor
This has been tested in multiple ways on Linux:
- running the whole test suite with both old and new code in place,
checking for differences in each flags() result
- running the whole test suite while comparing real on-disk flags
against synthetic ones for merges
- test-
issue1802 (from Martin Geisler) which disables exec bit
checking on Unix
Andrew Pritchard <awpritchard@gmail.com> [Fri, 21 Oct 2011 15:09:33 -0500] rev 15336
largefiles: test interaction between largefiles and vanilla clients and servers
This reintroduces tests for the case described by
issue3066, among others:
- vanilla clients and servers should still be able to talk to largefiles
clients and servers about vanilla repos
- vanilla clients should not attempt to clone largefiles repos over http and
should report a useful error message (
issue3066; this appears to work
correctly)
- vanilla clients should not attempt to clone largefiles repos over ssh, again
with a useful error message
- largefiles clients should not attempt to push largefile changes to vanilla
servers
Matt Mackall <mpm@selenic.com> [Sat, 22 Oct 2011 11:21:00 -0500] rev 15335
tests: darcs > 2.5 got "smart" about encoding, disable encoding tests
We can no longer convert a repo with mixed encodings, nor can I even
figure out how to get Darcs to display such messages.
Matt Mackall <mpm@selenic.com> [Fri, 21 Oct 2011 16:52:23 -0500] rev 15334
check-code: catch BaseException and os.path.relpath
Matt Mackall <mpm@selenic.com> [Fri, 21 Oct 2011 16:52:16 -0500] rev 15333
largefiles: py2.4 doesn't have BaseException
..and it's the wrong base class anyway.
Greg Ward <greg@gerg.ca> [Thu, 20 Oct 2011 21:56:30 -0400] rev 15332
largefiles: rename lfconvert --tonormal option to --to-normal
Greg Ward <greg@gerg.ca> [Thu, 20 Oct 2011 22:01:05 -0400] rev 15331
largefiles: test lfconvert --tonormal
Greg Ward <greg@gerg.ca> [Thu, 20 Oct 2011 22:24:24 -0400] rev 15330
largefiles: use smaller files in test script
Greg Ward <greg@gerg.ca> [Thu, 20 Oct 2011 22:22:24 -0400] rev 15329
largefiles: test that minimum size can be a float
This allows us to drop the existing test of --lfsize, since it's
redundant with the new test.
Greg Ward <greg@gerg.ca> [Thu, 20 Oct 2011 22:14:11 -0400] rev 15328
largefiles: polish comments in test script
Kevin Bullock <kbullock@ringworld.org> [Fri, 21 Oct 2011 11:10:43 -0500] rev 15327
import: abort usefully if no patch name given
Pierre-Yves David <pierre-yves.david@logilab.fr> [Fri, 21 Oct 2011 14:15:58 +0200] rev 15326
revset: disambiguous the node variable
The module could be confused with the function.
Matt Mackall <mpm@selenic.com> [Fri, 21 Oct 2011 12:12:21 -0500] rev 15325
revset: deal with empty lists in formatspec
Christian Ebert <blacktrash@gmx.net> [Fri, 21 Oct 2011 12:07:27 +0100] rev 15324
keyword: correct grammar in iskwfile docstring
Benjamin Pollack <benjamin@bitquabit.com> [Thu, 20 Oct 2011 17:40:25 -0400] rev 15323
largefiles: remove all uses of os.path.relpath for 2.4 compatibility
Patrick Mezard <pmezard@gmail.com> [Thu, 20 Oct 2011 16:43:31 +0200] rev 15322
mq: avoid data loss upon qfold + qmv (
issue3058)
When renaming a patch A as B where B was previously qfolded into A and
therefore marked as removed, a versioned MQ would first restore B before
marking it as a copy of A, thus losing A changes. The undelete() call is
probably a left-over, wctx.copy() explicitely handles the case where the
destination is removed.
Also note that status command represents "hg rm b; hg mv a b" as:
A b
a
R a
which explains the first hunk in test-mq-qrename.t.
Martin Geisler <mg@lazybytes.net> [Fri, 21 Oct 2011 00:33:08 +0200] rev 15321
subrepos: abort commit by default if a subrepo is dirty (BC)
This changeset flips the default value of ui.commitsubrepos setting
from True to False and adds a --subrepos flag to commit.
The commit, status, and diff commands behave like this with regard to
recusion and the ui.commitsubrepos setting:
| recurses | recurses
| by default | with --subrepos
--------+---------------+----------------
commit: | commitsubrepo | True
status: | False | True
diff: | False | True
By changing the default from True to False, the table becomes
consistent in the two columns:
* without --subrepos on the command line, commit will abort if a
subrepo is dirty and status/diff wont show changes inside subrepos.
* with --subrepos, all three commands will recurse.
A --subrepos flag on the command line overrides the config settin.g
Benjamin Pollack <benjamin@bitquabit.com> [Thu, 20 Oct 2011 17:05:13 -0400] rev 15320
largefiles: use XDG and OS X-specific cache locations by default (
issue3067)
Benjamin Pollack <benjamin@bitquabit.com> [Wed, 19 Oct 2011 20:40:55 -0400] rev 15319
largefiles: remove redundant any_ function
Eli Carter <eli.carter@tektronix.com> [Thu, 20 Oct 2011 09:35:37 -0500] rev 15318
largefiles: testcase to simulate inter-user clone on local machine
Benjamin Pollack <benjamin@bitquabit.com> [Thu, 20 Oct 2011 13:24:11 -0400] rev 15317
largefiles: make the store primary, and the user cache secondary
This uses the now-properly-named functions and methods from the previous
patch to actually deliver the desired behavior
Benjamin Pollack <benjamin@bitquabit.com> [Thu, 20 Oct 2011 13:24:09 -0400] rev 15316
largefiles: rename functions and methods to match desired behavior
The original intent was that the largefiles would primarily be in the
repository, with the global cache being only that--a cache. The naming
conventions and actual intent have both strayed. In this first patch, the
naming conventions are switched to match the actual intent, as are the
configuration options.
Benjamin Pollack <benjamin@bitquabit.com> [Thu, 20 Oct 2011 13:24:08 -0400] rev 15315
largefiles: fix documentation to match desired behavior
Martin Geisler <mg@aragost.com> [Thu, 20 Oct 2011 17:47:33 +0200] rev 15314
runrst: improve error message when Docutils is missing
Peter Toft told me he had installed a 'python-doc' package instead of
the correct 'python-docutils' and he suggested that we add the URL to
Docutils in our error message.
Eli Carter <eli.carter@tektronix.com> [Tue, 18 Oct 2011 17:28:26 -0500] rev 15313
largefiles: fix newline for lfconverted repos
Eli Carter <eli.carter@tektronix.com> [Wed, 19 Oct 2011 15:37:03 -0500] rev 15312
largefiles: remove 1.9 compat code
Matt Mackall <mpm@selenic.com> [Wed, 19 Oct 2011 17:16:25 -0500] rev 15311
merge with i18n
Wagner Bruna <wbruna@softwareexpress.com.br> [Tue, 18 Oct 2011 09:51:02 -0200] rev 15310
i18n-pt_BR: synchronized with
ab341fbb05b1
Wagner Bruna <wbruna@softwareexpress.com.br> [Tue, 18 Oct 2011 09:50:57 -0200] rev 15309
i18n-pt_BR: msgmerge with
ab341fbb05b1
Wagner Bruna <wbruna@softwareexpress.com.br> [Tue, 18 Oct 2011 09:38:14 -0200] rev 15308
bisect: add i18n contexts
Wagner Bruna <wbruna@softwareexpress.com.br> [Tue, 18 Oct 2011 09:38:10 -0200] rev 15307
import: add i18n context
Greg Ward <greg@gerg.ca> [Sun, 16 Oct 2011 10:24:45 -0400] rev 15306
largefiles: fix some badly named function parameters
overrides.py contains several functions that temporarily override
scmutil.match(), which always takes a changectx object as the first
parameter. But these overrides name that parameter either 'repo' or
'ctxorrepo', which is misleading. So rename them to 'ctx' and remove
the special type-sensitive handling of the one called 'ctxorrepo'.
Greg Ward <greg@gerg.ca> [Sun, 16 Oct 2011 10:29:51 -0400] rev 15305
largefiles: tidy imports
- no need to defensively import scmutil
- remove duplicate
- unwrap non-long line
Greg Ward <greg@gerg.ca> [Tue, 18 Oct 2011 20:06:23 -0400] rev 15304
largefiles: rename config setting 'size' to 'minsize'
Eli Carter <eli.carter@tektronix.com> [Tue, 18 Oct 2011 16:40:59 -0500] rev 15303
largefiles: include 'largefiles' in converted repository requirements
Hao Lian <hao@fogcreek.com> [Tue, 18 Oct 2011 17:09:03 -0400] rev 15302
largefiles: string formatting typo in basestore._openstore where comma is used instead of modulo
Eli Carter <eli.carter@tektronix.com> [Tue, 18 Oct 2011 11:09:11 -0500] rev 15301
largefiles: fix test typo
Eli Carter <eli.carter@tektronix.com> [Tue, 18 Oct 2011 10:32:12 -0500] rev 15300
convert: fix typo
Eli Carter <eli.carter@tektronix.com> [Tue, 18 Oct 2011 09:59:04 -0500] rev 15299
largefiles: fix typo
Na'Tosha Bard <natosha@unity3d.com> [Wed, 19 Oct 2011 17:40:27 +0200] rev 15298
largefiles: test that merging does not result in wrong versions of largefiles
Na'Tosha Bard <natosha@unity3d.com> [Wed, 19 Oct 2011 17:02:59 +0200] rev 15297
largefiles: expand test suite some more (test rebasing, rollback, update --clean, and verify --large)
Matt Mackall <mpm@selenic.com> [Mon, 17 Oct 2011 17:27:33 -0500] rev 15296
check-code: report suspicious string joins
This detects patterns of the form:
ui.write("this is missing"
"a space at the join\n")
Wagner Bruna <wbruna@softwareexpress.com.br> [Mon, 17 Oct 2011 19:10:28 -0200] rev 15295
largefiles: fix typo
Wagner Bruna <wbruna@softwareexpress.com.br> [Mon, 17 Oct 2011 19:10:42 -0200] rev 15294
largefiles: make parameter more i18n-friendly
Mads Kiilerich <mads@kiilerich.com> [Sun, 16 Oct 2011 01:26:06 +0200] rev 15293
grep: correct handling of matching lines without line ending (
issue3050)
Matching lines without trailing '\n' was missing the last character.
That seems to have been an unintended side effect of
261a9f47b44b.
The test in
dac14cc9711e documents the bad behaviour.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Mon, 17 Oct 2011 11:37:59 +0200] rev 15292
discovery: Fix error print mentioning a 'None' branch
When talking to old server discovery use heads of the 'None' branch to refer to
topological heads. This use of None should never make it to the end user.
Matt Mackall <mpm@selenic.com> [Mon, 17 Oct 2011 14:14:28 -0500] rev 15291
largefiles: remove fixme from docs
Wagner Bruna <wbruna@softwareexpress.com.br> [Mon, 17 Oct 2011 11:54:12 -0200] rev 15290
i18n: import polib 0.6.4 (rev
84598f2b5365)
This version fixes some upstream issues observed during the pt_BR
translation update: #8 (obsolete entries reappearing); an
unidentified issue that made i18n/posplit produce some spurious
messages on the resulting po file; possibly others.
These bugs probably didn't cause actual differences on the translated
output, since an invalid message added to the .mo file wouldn't match
an input message most of the time. But they do pollute the .po file
contents (and diffs), adding some confusion to the translation
process.
db957a72fbd7,
4c50552fc9bc and
8ea51e9e7031 were included upstream,
so the only remaining difference is the "no-check-code" marking.
Wagner Bruna <wbruna@softwareexpress.com.br> [Mon, 17 Oct 2011 14:47:36 -0200] rev 15289
rebase: fix typos
Matt Mackall <mpm@selenic.com> [Mon, 17 Oct 2011 13:42:42 -0500] rev 15288
auth: fix realm handling with Python < 2.4.3 (
issue2739)
Martin Geisler <mg@aragost.com> [Mon, 17 Oct 2011 18:01:38 +0200] rev 15287
subrepo: abort in hgsubrepo._get if the destination is obstructed
Before, we deleted foo when we determined that there were zero
changesets in the foo subrepo. Any files in foo was deleted too. We
now delete foo/.hg instead, and the normal checks in hg.clone will
then abort if there are untracked files in foo.
Martin Geisler <mg@aragost.com> [Mon, 17 Oct 2011 16:45:19 +0200] rev 15286
subrepo: pull revisions on demand when archiving hg subrepos
Before, running 'hg archive -S' could result in
abort: unknown revision '
65903cebad86f1a84bd4f1134f62fa7dcb7a1c98'!
if a subrepo was missing completely or had missing changesets. Now,
the missing changesets will be pulled or cloned as appropriate.
This make Mercurial subrepos match Git subrepos which already took
care to fetch any missing commits before starting the archive.
Thomas Arendsen Hein <thomas@intevation.de> [Mon, 17 Oct 2011 14:27:34 +0200] rev 15285
test-check-code.t: test matching try/except/finally introduced in
aeeb2afcdc25
Matt Mackall <mpm@selenic.com> [Sun, 16 Oct 2011 22:15:43 -0500] rev 15284
merge with crew
Mads Kiilerich <mads@kiilerich.com> [Mon, 17 Oct 2011 01:40:50 +0200] rev 15283
merge in commit that shouldn't be on default
Mads Kiilerich <mads@kiilerich.com> [Mon, 17 Oct 2011 00:11:56 +0200] rev 15282
tests: don't use 'test -e'
On Solaris 10:
$ test -e f
test: argument expected
Matt Mackall <mpm@selenic.com> [Sun, 16 Oct 2011 20:26:20 -0500] rev 15281
check-code: support multiline matches like try/except/finally
- match one pattern at a time against entire file
- find line containing match
- sort matches by line number
Matt Mackall <mpm@selenic.com> [Sun, 16 Oct 2011 17:22:07 -0500] rev 15280
fix bad tag for 2.0-rc
This tag was immediately stripped, but not before escaping onto the hg-stable mirror.
Thomas Arendsen Hein <thomas@intevation.de> [Sun, 16 Oct 2011 11:28:03 +0200] rev 15279
largefiles: use separate try/except and try/finally as needed for python2.4
cfccd3bee7b3 introduced a try/except/finally block, which breaks compatibility
with python2.4
Thomas Arendsen Hein <thomas@intevation.de> [Sun, 16 Oct 2011 11:12:59 +0200] rev 15278
commands: use separate try/except and try/finally as needed for python2.4
62dc0e7ab092 introduced a try/except/finally block, which breaks compatibility
with python2.4
Matt Mackall <mpm@selenic.com> [Sat, 15 Oct 2011 14:22:59 -0500] rev 15277
Added signature for changeset
fccd350acf79
Matt Mackall <mpm@selenic.com> [Sat, 15 Oct 2011 14:22:55 -0500] rev 15276
Added tag 2.0-rc for changeset
fccd350acf79
Matt Mackall <mpm@selenic.com> [Sat, 15 Oct 2011 14:31:29 -0500] rev 15275
Added signature for changeset
384082750f2c
Matt Mackall <mpm@selenic.com> [Sat, 15 Oct 2011 14:31:26 -0500] rev 15274
Added tag 2.0-rc for changeset
384082750f2c
Matt Mackall <mpm@selenic.com> [Sat, 15 Oct 2011 14:30:50 -0500] rev 15273
merge default into stable for 2.0 code freeze
Matt Mackall <mpm@selenic.com> [Sat, 15 Oct 2011 14:19:24 -0500] rev 15272
rebase: simplify check for orphaned descendants
Matt Mackall <mpm@selenic.com> [Sat, 15 Oct 2011 14:19:07 -0500] rev 15271
rebase: simplify set generation
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sat, 15 Oct 2011 20:12:32 +0200] rev 15270
rebase: add --rev option to rebase
This option allow a strict set of revision to be specified instead of using -s
or -b. Rebase will refuse start if striping rebased changeset will strip non
rebased changeset. Rebase will refuse to work on set with multiple root.
Matt Mackall <mpm@selenic.com> [Sat, 15 Oct 2011 12:57:47 -0500] rev 15269
rebase: allow revsets for source and base args
Matt Mackall <mpm@selenic.com> [Sat, 15 Oct 2011 12:52:43 -0500] rev 15268
revset: fix %r handling in formatspec
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sat, 15 Oct 2011 19:07:51 +0200] rev 15267
rebase: use revset as soon as possible in internal logic
The buildstate function now take a set of revs. Logic related to --source and
--base option have been moved in the main rebase function.
In the process this fixes a bug where the wrong source changeset might be pick.
This explain the changes in hgext/rebase.py
Matt Mackall <mpm@selenic.com> [Sat, 15 Oct 2011 10:20:08 -0500] rev 15266
revset: add %r for embedded revset support to formatspec
This allows folding external revsets or lists of revsets into a revset
expression. Revsets are pre-parsed for validity so that syntax errors
don't escape.
Angel Ezquerra <angel.ezquerra@gmail.com> [Sat, 15 Oct 2011 01:06:52 +0200] rev 15265
revert: warn that subrepos cannot be reverted
(tests added by mpm)
Greg Ward <greg@gerg.ca> [Wed, 12 Oct 2011 21:45:58 -0400] rev 15264
merge: expand environment variables and ~/ in tool.executable
hgrc(5) already implies that this works, so we might as well support it.
Another approach would be to implement this in util.findexe(): that
would benefit other callers of findexe(), e.g. convert and anyone
calling the user's editor. But findexe() is really implemented in
both posix.py and windows.py, so this would make both of those modules
depend on util.py: not good. So keep it narrow and only for merge
tools.
Matt Mackall <mpm@selenic.com> [Sat, 15 Oct 2011 00:39:06 -0500] rev 15263
minirst: improve test harness
Matt Mackall <mpm@selenic.com> [Sat, 15 Oct 2011 00:39:04 -0500] rev 15262
minirst: add style flag to format
Matt Mackall <mpm@selenic.com> [Sat, 15 Oct 2011 00:39:01 -0500] rev 15261
minirst: add basic HTML formatting support
Matt Mackall <mpm@selenic.com> [Fri, 14 Oct 2011 15:40:50 -0500] rev 15260
graft: use status verbosity for reporting grafts
Idan Kamara <idankk86@gmail.com> [Fri, 14 Oct 2011 19:10:36 +0200] rev 15259
contrib: add a script to help diagnose raw output of the cmdserver
Idan Kamara <idankk86@gmail.com> [Fri, 14 Oct 2011 19:51:46 +0200] rev 15258
mq: eliminate explicit checks for file existence
Mads Kiilerich <mads@kiilerich.com> [Fri, 14 Oct 2011 02:50:06 +0200] rev 15257
mq: cleanup of lookup - handling of None is not relevant
Patch specifications in mq is passed around as a string or None. None is
generally used when no patch has been specified and there thus is nothing to
lookup and the calling code should do something else. One code path did however
pass None all the way to lookup. That case was handled in lookup, but there was
really need for that, it was undocumented, and it used to cause trouble back
when patches was specified as integers.
Mads Kiilerich <mads@kiilerich.com> [Sun, 31 Oct 2010 18:29:56 +0100] rev 15256
mq: fix corner cases for handling of patch 0 in qselect
Most of the code paths in mq would always pass patch specifications as a
string. Patches can be specified by their index, but one code path passed that
(through pop) to lookup as an integer - all other code paths used a string.
Unfortunately pop and lookup (like many other parts of mq) used the boolean
value of the patch specification to see if it was None, and they would thus
incorrectly handle patch 0 as None.
This patch makes the code comply with the actual internal duck typing of patch
specifications: patch indices must be encoded as strings. The (now) unused code
for partial and thus incorrect handling of indices as integers is removed.
Greg Ward <greg@gerg.ca> [Thu, 13 Oct 2011 21:42:54 -0400] rev 15255
largefiles: cosmetics, whitespace, code style
This is mainly about keeping code under the 80-column limit with as
few backslashes as possible. I am deliberately not making any logic or
behaviour changes here and have restrained myself to a few "peephole"
refactorings.
Greg Ward <greg@gerg.ca> [Thu, 13 Oct 2011 20:45:49 -0400] rev 15254
largefiles: more work on cleaning up comments
- always say "largefile", not "lfile"
- cleanup mangled syntax, hopefully correctly
(punctuation: it's your friend!)
- wrap to 75 columns (where feasible)
Greg Ward <greg@gerg.ca> [Thu, 13 Oct 2011 20:24:29 -0400] rev 15253
largefiles: improve error reporting
- tweak wording of some error messages
- use consistent capitalization
- always say 'largefile', not 'lfile'
- fix I18N problems
- only raise Abort for errors the user can do something about
Greg Ward <greg@gerg.ca> [Wed, 12 Oct 2011 20:59:27 -0400] rev 15252
largefiles: improve comments, internal docstrings
- fix some ungrammatical/unclear/incorrect comments/docstrings
- rewrite some really unclear comments/docstrings
- make formatting/style more consistent with the rest of Mercurial
(lowercase without period unless it's really multiple sentences)
- wrap to 75 columns
- always say "largefile(s)", not "lfile(s)" (or "big files")
- one space between sentences, not two
Na'Tosha Bard <natosha@unity3d.com> [Thu, 13 Oct 2011 15:15:32 +0200] rev 15251
largefiles: flush out tests to cover more operations and known cornercases
Na'Tosha Bard <natosha@unity3d.com> [Thu, 13 Oct 2011 12:11:25 +0200] rev 15250
largefiles: speed up commit by only rewriting standins for modified largefiles
Idan Kamara <idankk86@gmail.com> [Thu, 13 Oct 2011 17:54:38 +0200] rev 15249
tests: add basic tests for doctest syntax
Idan Kamara <idankk86@gmail.com> [Thu, 13 Oct 2011 17:54:37 +0200] rev 15248
run-tests: end doctest block when seeing a non-command
Idan Kamara <idankk86@gmail.com> [Thu, 13 Oct 2011 17:54:35 +0200] rev 15247
tests: remove temp doctest file when finished running it
Mads Kiilerich <mads@kiilerich.com> [Thu, 13 Oct 2011 04:27:49 +0200] rev 15246
httprepo: make __del__ more stable in error situations
Some errors could leave self.urlopener uninitialized and thus cause strange
crashes in __del__.
This member variable is now "declared statically" and checked for assignment
before use.
Mads Kiilerich <mads@kiilerich.com> [Sun, 31 Oct 2010 18:29:55 +0100] rev 15245
tests: exercise some corner cases for mq guard selection and --reapply
Mads Kiilerich <mads@kiilerich.com> [Thu, 13 Oct 2011 04:27:49 +0200] rev 15244
tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com> [Thu, 13 Oct 2011 04:27:49 +0200] rev 15243
tests: cleanup of echo statements left over from test conversion
Matt Mackall <mpm@selenic.com> [Wed, 12 Oct 2011 18:59:59 -0500] rev 15242
graft: add examples and information about copied metadata