Commit Graph

16502 Commits

Author SHA1 Message Date
Thomas Arendsen Hein
567734318a inotify: catch SignalInterrupt during shutdown (issue3351)
When inotify.repowatcher.shutdown() is called, mercurial.error.SignalInterrupt
exception is thrown by mercurial.dispatch._runcatch.catchterm(), therefore
socketlistener.shutdown() is not called.

Catching this allows cleanup action (removing the socket file) to proceed.
2012-04-04 10:57:48 +02:00
Thomas Arendsen Hein
5e3d9e57d7 clone: always close source repository (issue2491)
This is especially needed for cloning from bundles as a temporary
bundlerepository is created which needs to be deleted after clone has
finished.
2012-04-03 22:01:28 +02:00
Thomas Arendsen Hein
21bb7c4cdc tests: make tests work if directory contains special characters
With this quoting tests will work e.g. in "/tmp/foo bar/mercurial/".
2012-04-03 19:06:35 +02:00
Thomas Arendsen Hein
10f14ea780 test-gpg: replace 83b32bd12586 by md5sum check
The call to 'hg identify' would have needed '--cwd "$TESTDIR' to make it work
anyway, but by using a checksum this test can work outside a repository.
2012-04-03 16:36:25 +02:00
Javi Merino
c4e6d14c1e tests: don't run test-gpg if not in a working directory
test-gpg has to be run in a mercurial working directory as it uses
that to verify that it hasn't modified the trustdb.gpg file.  Skip the
test if it is running in an exploded tarball.
2012-04-02 22:25:55 +01:00
Matt Mackall
2be8f7711a tests: avoid zombie lockup with test-hup
The 'while kill -0' recipe can cause a livelock if the process we're waiting
to die is a normal child process. If it becomes a zombie that the shell
doesn't reap (shell bug?), it will continue to be able to accept
signals. So instead, we just wait(1).
2012-04-02 16:46:58 -05:00
Matt Mackall
668dad5779 tests: make test-hup more race-proof
We need to wait until a journal exists AND is non-empty before
aborting a transaction to get stable output. We move the kill wait
outside the fifo block to avoid potential deadlock.
2012-04-02 16:04:07 -05:00
Matt Mackall
462be3c589 tests: re-silence test-bad-pull log messages 2012-04-02 15:06:36 -05:00
Matt Mackall
b9f3cf4eb3 tests: really add blacklist for vfat on Linux 2012-04-01 15:54:29 -05:00
Matt Mackall
b7cc3aeb0b Added signature for changeset bf3e6b163ba4 2012-04-01 15:31:07 -05:00
Matt Mackall
1c2151ba6e tests: fix shutdown race in test-bad-pull 2012-04-01 14:23:55 -05:00
FUJIWARA Katsunori
18786dc9ad tests: fix portability of sed usage in test-mq
on some platform (Mac OS X and Solaris, at least), to insert new text
line, sed function 'i' should be followed by:

  - backslash('\'),
  - new-line,
  - text to be inserted and
  - new-line

GNU sed on Linux can recognize both previous and new ones as same
modification request.

in addition to it, this patch avoids to use '-i' option for sed,
because it is not so portable, as noted in WritingTests wiki page.
2012-04-01 18:18:48 +09:00
Matt Mackall
bd79d24af7 tests: fix portability of sed expression in test-mq 2012-03-31 13:46:46 -05:00
Takumi IINO
5391bc80ef tests: skip test-lfconvert.t if not support symblic link
Windows not support symbolic link. but test-lfconvert.t
execute 'ln -s' command.

@@ -51,8 +51,6 @@
   skipping incorrectly formatted tag IncorrectlyFormattedTag!
   skipping incorrectly formatted id invalidhash
   no mapping for id 0123456789abcdef
-  abort: renamed/copied largefile large3 becomes symlink
-  [255]
   $ cd bigfile-repo
   $ hg strip --no-backup 2
   0 files updated, 0 files merged, 2 files removed, 0 files unresolved

ERROR: test-lfconvert.t output changed
2012-03-29 22:16:56 +09:00
FUJIWARA Katsunori
36e9e8107c dirstate: fix some problems for recursive case normalization (issue3342)
file in nested directory causes unexpected abort.

problems below should be fixed for recursive normalization route in
dirstate._normalize():

    1. rsplit() may cause unpacking into more than 2 elements.
       it should be called with 'maxsplit' argument to unpack
       into 'd, f'

    2. 'd' is replaced by normalized value prefixed with
       'self._root', but this makes 'folded' as absolute path,
       and it is unexpected one for caller of recursive
       normalization
2012-03-31 15:55:03 +09:00
Matt Mackall
9aa1e49c7c tests: make test-walkrepo use hg's symlink test 2012-03-31 10:44:31 -05:00
Matt Mackall
199e84020f tests: make hghave handle exec bit on Linux with vfat 2012-03-31 10:44:31 -05:00
Matt Mackall
0d1f9340f4 tests: teach hghave to actually test for symlink support 2012-03-31 10:44:31 -05:00
Matt Mackall
c9532589d2 merge with i18n 2012-03-30 14:29:50 -05:00
FUJIWARA Katsunori
dba1f40821 dirstate: avoid normalizing letter case on icasefs for exact match (issue3340)
on icasefs, "hg qnew" fails to import changing letter case of filename
already occurred in working directory, for example:

    $ hg rename a tmp
    $ hg rename tmp A
    $ hg qnew casechange
    $ hg status
    R a
    $

"hg qnew" invokes 'dirstate.walk()' via 'localrepository.commit()'
with 'exact match' matching object having exact filenames of targets
in ones 'files()'.

current implementation of 'dirstate.walk()' always normalizes letter
case of filenames from 'match.files()' on icasefs, even though exact
matching is required.

then, files only different in letter case are treated as one file.

this patch prevents 'dirstate.walk()' from normalizing, if exact
matching is required, even on icasefs.

filenames for 'exact matching' are given not from user command line,
but from dirstate walk result, manifest of changecontext, patch files
or fixed list for specific system files (e.g.: '.hgtags').

in such case, case normalization should not be done, so this patch
works well.
2012-03-31 00:04:08 +09:00
FUJIWARA Katsunori
26cf91b0ae i18n-ja: synchronized with 0a0f0575159c 2012-03-30 21:18:37 +09:00
Wagner Bruna
e64a0c6479 i18n-pt_BR: synchronized with 1b98103e9cde 2012-03-29 18:14:20 -03:00
Mads Kiilerich
08bbe3eb2b mq: fix qpush --move with comments in series file between applied patches
The 'start' variable pointed to qtip in self.series, but it was used for
indexing self.fullseries.

When fullseries had holes and the patch was moved to self.fullseries[start]
it would end up too early in self.series and it could thus not be
found in self.series[start:] and it would crash.

Now the 'fullstart' index in fullseries is found used instead.
2012-03-29 00:35:00 +02:00
Matt Mackall
b7a9e07a8c dirstate: normalize case of directory components
If we have an existing f/a, and rename f to F, adding F/b should be
normalized to f/b.
2012-03-28 19:24:13 -05:00
Matt Mackall
76e8b41818 tests: fix startup race in test-http-proxy 2012-03-28 19:24:11 -05:00
Matt Mackall
18bf05f2aa tests: fix startup/shutdown races in test-https
tinyproxy now writes its own pid when it's ready to accept connections
2012-03-28 19:23:25 -05:00
Matt Mackall
41dc46b131 tests: remove sleep/startup/shutdown races from test-hup 2012-03-28 12:02:38 -05:00
Matt Mackall
7d38a1dbb4 tests: fix shutdown race in test-hgweb-raw 2012-03-28 11:28:37 -05:00
Matt Mackall
0c6d0f05a2 tests: eliminate shutdown race and sleeps in test-serve 2012-03-28 10:29:39 -05:00
Matt Mackall
3851075bbd tests: eliminate daemon race in test-bad-pull 2012-03-28 10:11:12 -05:00
Matt Mackall
3eb6e77c5e alias: abort on missing positional args (issue3331) 2012-03-27 16:13:59 -05:00
Angel Ezquerra
5aafeb5916 fileset: add "subrepo" fileset symbol
This new fileset symbol returns a list of subrepos whose paths match a given
pattern. If the argument has no pattern type set, an exact
match is performed.

If no argument is passed, return a list of all subrepos.
2012-03-22 21:12:15 +01:00
Steven Stallion
3ad03bc654 plan9: finalize documentation for next release 2012-04-15 23:47:46 -07:00
Alain Leufroy
10dafa190b localrepo: do not complain about missing journal files 2012-04-16 10:56:37 +02:00
Alain Leufroy
01eed330fd repair: fix missing import
introduced by: 1792c24f759cbee608767738104810158188a0e4
2012-04-16 10:33:18 +02:00
Na'Tosha Bard
26cdea9a9e largefiles: fix cat for largefiles (issue3352)
This is a fix to largefiles so that 'hg cat' will work correctly when a
largefile is specified.

As per discussion on Issue 3352:

1) The file will be printed regardless if it is binary or large.
2) The file is downloaded if it is not readily available (not found in
   the system cache), so that it can be printed.  If the download fails,
   then we abort.
2012-04-16 17:03:39 +02:00
Steven Stallion
379dfc3a8c pure: quiesce build warnings
The following patch fixes the following warning when building pure:
package init file 'mercurial/pure/__init__.py' not found (or not a regular file)
2012-04-16 08:50:40 -07:00
Matt Mackall
0fa9895915 util.h: replace ntohl/htonl with get/putbe32 2012-04-16 11:26:00 -05:00
Wolfgang Treutterer
00e7333b1b scmutil: fix systemrcpath regression introduced in ebc9c501f13c
Changeset ebc9c501f13c introduced a 'root' path component to look for
hgrc files, which is used both as an absolute path and a path relative
to the <install-root>.
The latter one was broken since 'root' was set to an absolute location
and the subsequent os.path.join discarded the <install-root> path prefix.
2012-04-13 10:08:08 +02:00
Patrick Mezard
e9454c243f revlog: fix partial revision() docstring (from f4a6c9197dbd) 2012-04-13 10:14:59 +02:00
Patrick Mezard
aa91736f8f graphlog: fix --follow FILE and relative paths
The situation is complicated because filelog() revset uses a match object in
relpath mode while follow() revset interprets the filename as a manifest entry.
2012-04-14 11:27:11 +02:00
Patrick Mezard
97d474a24b graphlog: reduce duplication in --follow code 2012-04-14 11:16:57 +02:00
Patrick Mezard
a0e9bb4632 graphlog: add all log options to glog command
glog and log -G should be equivalent.
2012-04-14 10:44:13 +02:00
Patrick Mezard
923d3cc5c3 graphlog: implement --hidden 2012-04-14 10:30:38 +02:00
Angel Ezquerra
5089e1299f revert: add support for reverting subrepos without --no-backup and/or --all
When a subrepo is reverted but --no-backup is not set, call revert on the
subrepo that is being reverted prior to updating it to the revision specified
in the parent repo's .hgsubstate file.

The --all flag is passed down to the subrepo when it is being reverted. If the
--all flag is not set, all files that are modified on the subrepo will be
reverted.
2012-03-28 11:42:17 +02:00
Angel Ezquerra
3e2b4220e7 revert: add support for reverting subrepos
Reverting a subrepo is done by updating it to the revision that is selected on
the parent repo .hgsubstate file.

* ISSUES/TODO:

- reverting added and removed subrepos is not supported yet.
- reverting subrepos is only supported if the --no-backup flag is used (this
limitation will be removed on another patch).
- The behavior of the --all flag has been changed. It now reverts subrepos as
well. Note that this may lead to data loss if the user has a dirty subrepo.
2012-03-28 11:42:17 +02:00
Matt Mackall
4ca25d50f9 merge with stable 2012-04-14 01:39:35 -05:00
Bryan O'Sullivan
9b32b66805 commands: move bundle type validation earlier
Checking the bundle type late in the command's execution can mean
that we do work for a long time before complaining about incorrect
user input and aborting.  Guess how I discovered this.
2012-04-13 11:01:07 -07:00
Matt Mackall
e80599976d changegroupsubset: optimize function lookup in prune 2012-04-13 22:55:46 -05:00
Matt Mackall
736fde9c03 changegroup: optimize gennodelist 2012-04-13 22:55:46 -05:00