Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 258017 Details for
Bug 348499
Stabilize =dev-vcs/mercurial-1.7
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
dev-vcs:mercurial-1.7:20101223-190044.log buildlog on ARM
dev-vcs:mercurial-1.7:20101223-190044.log (text/plain), 1.31 MB, created by
Markus Meier
on 2010-12-25 14:03:07 UTC
(
hide
)
Description:
dev-vcs:mercurial-1.7:20101223-190044.log buildlog on ARM
Filename:
MIME Type:
Creator:
Markus Meier
Created:
2010-12-25 14:03:07 UTC
Size:
1.31 MB
patch
obsolete
>[32;01m * [39;49;00mPackage: dev-vcs/mercurial-1.7 >[32;01m * [39;49;00mRepository: gentoo >[32;01m * [39;49;00mMaintainer: nelchael@gentoo.org djc@gentoo.org >[32;01m * [39;49;00mUSE: arm elibc_glibc kernel_linux test userland_GNU >>>> Unpacking source... >>>> Unpacking mercurial-1.7.tar.gz to /var/tmp/portage/dev-vcs/mercurial-1.7/work >>>> Source unpacked in /var/tmp/portage/dev-vcs/mercurial-1.7/work >>>> Preparing source in /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7 ... >>>> Source prepared. >>>> Configuring source in /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7 ... >>>> Source configured. >>>> Compiling source in /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7 ... > * Building of dev-vcs/mercurial-1.7 with CPython 2.6... >python2.6 setup.py build -b build-2.6 >running build >running build_mo >creating mercurial/locale >creating mercurial/locale/zh_CN >creating mercurial/locale/zh_CN/LC_MESSAGES >generating mercurial/locale/zh_CN/LC_MESSAGES/hg.mo from i18n/zh_CN.po >msgfmt -v -o mercurial/locale/zh_CN/LC_MESSAGES/hg.mo i18n/zh_CN.po -c >335 translated messages, 204 fuzzy translations, 1791 untranslated messages. >creating mercurial/locale/de >creating mercurial/locale/de/LC_MESSAGES >generating mercurial/locale/de/LC_MESSAGES/hg.mo from i18n/de.po >msgfmt -v -o mercurial/locale/de/LC_MESSAGES/hg.mo i18n/de.po -c >2245 translated messages, 237 fuzzy translations, 417 untranslated messages. >creating mercurial/locale/pt_BR >creating mercurial/locale/pt_BR/LC_MESSAGES >generating mercurial/locale/pt_BR/LC_MESSAGES/hg.mo from i18n/pt_BR.po >msgfmt -v -o mercurial/locale/pt_BR/LC_MESSAGES/hg.mo i18n/pt_BR.po -c >3026 translated messages. >creating mercurial/locale/zh_TW >creating mercurial/locale/zh_TW/LC_MESSAGES >generating mercurial/locale/zh_TW/LC_MESSAGES/hg.mo from i18n/zh_TW.po >msgfmt -v -o mercurial/locale/zh_TW/LC_MESSAGES/hg.mo i18n/zh_TW.po -c >640 translated messages, 8 fuzzy translations, 2372 untranslated messages. >creating mercurial/locale/it >creating mercurial/locale/it/LC_MESSAGES >generating mercurial/locale/it/LC_MESSAGES/hg.mo from i18n/it.po >msgfmt -v -o mercurial/locale/it/LC_MESSAGES/hg.mo i18n/it.po -c >1166 translated messages, 285 fuzzy translations, 1392 untranslated messages. >creating mercurial/locale/da >creating mercurial/locale/da/LC_MESSAGES >generating mercurial/locale/da/LC_MESSAGES/hg.mo from i18n/da.po >msgfmt -v -o mercurial/locale/da/LC_MESSAGES/hg.mo i18n/da.po -c >1855 translated messages, 1164 untranslated messages. >creating mercurial/locale/el >creating mercurial/locale/el/LC_MESSAGES >generating mercurial/locale/el/LC_MESSAGES/hg.mo from i18n/el.po >msgfmt -v -o mercurial/locale/el/LC_MESSAGES/hg.mo i18n/el.po -c >315 translated messages, 35 fuzzy translations, 1933 untranslated messages. >creating mercurial/locale/sv >creating mercurial/locale/sv/LC_MESSAGES >generating mercurial/locale/sv/LC_MESSAGES/hg.mo from i18n/sv.po >msgfmt -v -o mercurial/locale/sv/LC_MESSAGES/hg.mo i18n/sv.po -c >1188 translated messages, 1832 untranslated messages. >creating mercurial/locale/fr >creating mercurial/locale/fr/LC_MESSAGES >generating mercurial/locale/fr/LC_MESSAGES/hg.mo from i18n/fr.po >msgfmt -v -o mercurial/locale/fr/LC_MESSAGES/hg.mo i18n/fr.po -c >358 translated messages, 104 fuzzy translations, 1775 untranslated messages. >creating mercurial/locale/ja >creating mercurial/locale/ja/LC_MESSAGES >generating mercurial/locale/ja/LC_MESSAGES/hg.mo from i18n/ja.po >msgfmt -v -o mercurial/locale/ja/LC_MESSAGES/hg.mo i18n/ja.po -c >2526 translated messages, 493 untranslated messages. >creating mercurial/locale/ro >creating mercurial/locale/ro/LC_MESSAGES >generating mercurial/locale/ro/LC_MESSAGES/hg.mo from i18n/ro.po >msgfmt -v -o mercurial/locale/ro/LC_MESSAGES/hg.mo i18n/ro.po -c >517 translated messages, 5 fuzzy translations, 2350 untranslated messages. >running build_py >creating build-2.6 >creating build-2.6/lib.linux-armv5tel-2.6 >creating build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/__version__.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/changegroup.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/archival.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/ui.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/filemerge.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/help.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/hook.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/sshrepo.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/parser.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/keepalive.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/localrepo.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/extensions.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/minirst.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/templatekw.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/context.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/py3kcompat.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/config.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/hbisect.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/verify.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/win32.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/error.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/hg.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/mail.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/dagparser.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/util.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/node.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/repo.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/tags.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/windows.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/lock.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/revlog.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/ancestor.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/ignore.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/cmdutil.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/patch.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/dirstate.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/subrepo.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/strutil.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/demandimport.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/posix.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/byterange.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/bundlerepo.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/changelog.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/encoding.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/httprepo.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/lsprofcalltree.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/similar.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/match.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/commands.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/discovery.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/wireproto.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/templatefilters.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/fancyopts.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/repair.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/i18n.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/copies.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/url.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/pushkey.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/manifest.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/filelog.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/mdiff.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/sshserver.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/store.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/simplemerge.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/templater.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/revset.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/graphmod.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/__init__.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/dispatch.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/statichttprepo.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/transaction.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/merge.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >copying mercurial/lsprof.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial >creating build-2.6/lib.linux-armv5tel-2.6/mercurial/hgweb >copying mercurial/hgweb/hgweb_mod.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial/hgweb >copying mercurial/hgweb/server.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial/hgweb >copying mercurial/hgweb/webcommands.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial/hgweb >copying mercurial/hgweb/request.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial/hgweb >copying mercurial/hgweb/hgwebdir_mod.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial/hgweb >copying mercurial/hgweb/protocol.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial/hgweb >copying mercurial/hgweb/common.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial/hgweb >copying mercurial/hgweb/__init__.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial/hgweb >copying mercurial/hgweb/webutil.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial/hgweb >copying mercurial/hgweb/wsgicgi.py -> build-2.6/lib.linux-armv5tel-2.6/mercurial/hgweb >creating build-2.6/lib.linux-armv5tel-2.6/hgext >copying hgext/churn.py -> build-2.6/lib.linux-armv5tel-2.6/hgext >copying hgext/hgk.py -> build-2.6/lib.linux-armv5tel-2.6/hgext >copying hgext/fetch.py -> build-2.6/lib.linux-armv5tel-2.6/hgext >copying hgext/win32mbcs.py -> build-2.6/lib.linux-armv5tel-2.6/hgext >copying hgext/gpg.py -> build-2.6/lib.linux-armv5tel-2.6/hgext >copying hgext/share.py -> build-2.6/lib.linux-armv5tel-2.6/hgext >copying hgext/rebase.py -> build-2.6/lib.linux-armv5tel-2.6/hgext >copying hgext/color.py -> build-2.6/lib.linux-armv5tel-2.6/hgext >copying hgext/patchbomb.py -> build-2.6/lib.linux-armv5tel-2.6/hgext >copying hgext/pager.py -> build-2.6/lib.linux-armv5tel-2.6/hgext >copying hgext/bugzilla.py -> build-2.6/lib.linux-armv5tel-2.6/hgext >copying hgext/eol.py -> build-2.6/lib.linux-armv5tel-2.6/hgext >copying hgext/win32text.py -> build-2.6/lib.linux-armv5tel-2.6/hgext >copying hgext/children.py -> build-2.6/lib.linux-armv5tel-2.6/hgext >copying hgext/parentrevspec.py -> build-2.6/lib.linux-armv5tel-2.6/hgext >copying hgext/schemes.py -> build-2.6/lib.linux-armv5tel-2.6/hgext >copying hgext/relink.py -> build-2.6/lib.linux-armv5tel-2.6/hgext >copying hgext/notify.py -> build-2.6/lib.linux-armv5tel-2.6/hgext >copying hgext/purge.py -> build-2.6/lib.linux-armv5tel-2.6/hgext >copying hgext/keyword.py -> build-2.6/lib.linux-armv5tel-2.6/hgext >copying hgext/interhg.py -> build-2.6/lib.linux-armv5tel-2.6/hgext >copying hgext/record.py -> build-2.6/lib.linux-armv5tel-2.6/hgext >copying hgext/mq.py -> build-2.6/lib.linux-armv5tel-2.6/hgext >copying hgext/bookmarks.py -> build-2.6/lib.linux-armv5tel-2.6/hgext >copying hgext/transplant.py -> build-2.6/lib.linux-armv5tel-2.6/hgext >copying hgext/extdiff.py -> build-2.6/lib.linux-armv5tel-2.6/hgext >copying hgext/__init__.py -> build-2.6/lib.linux-armv5tel-2.6/hgext >copying hgext/progress.py -> build-2.6/lib.linux-armv5tel-2.6/hgext >copying hgext/graphlog.py -> build-2.6/lib.linux-armv5tel-2.6/hgext >copying hgext/acl.py -> build-2.6/lib.linux-armv5tel-2.6/hgext >copying hgext/hgcia.py -> build-2.6/lib.linux-armv5tel-2.6/hgext >creating build-2.6/lib.linux-armv5tel-2.6/hgext/convert >copying hgext/convert/bzr.py -> build-2.6/lib.linux-armv5tel-2.6/hgext/convert >copying hgext/convert/cvsps.py -> build-2.6/lib.linux-armv5tel-2.6/hgext/convert >copying hgext/convert/p4.py -> build-2.6/lib.linux-armv5tel-2.6/hgext/convert >copying hgext/convert/hg.py -> build-2.6/lib.linux-armv5tel-2.6/hgext/convert >copying hgext/convert/subversion.py -> build-2.6/lib.linux-armv5tel-2.6/hgext/convert >copying hgext/convert/convcmd.py -> build-2.6/lib.linux-armv5tel-2.6/hgext/convert >copying hgext/convert/gnuarch.py -> build-2.6/lib.linux-armv5tel-2.6/hgext/convert >copying hgext/convert/darcs.py -> build-2.6/lib.linux-armv5tel-2.6/hgext/convert >copying hgext/convert/transport.py -> build-2.6/lib.linux-armv5tel-2.6/hgext/convert >copying hgext/convert/monotone.py -> build-2.6/lib.linux-armv5tel-2.6/hgext/convert >copying hgext/convert/filemap.py -> build-2.6/lib.linux-armv5tel-2.6/hgext/convert >copying hgext/convert/common.py -> build-2.6/lib.linux-armv5tel-2.6/hgext/convert >copying hgext/convert/cvs.py -> build-2.6/lib.linux-armv5tel-2.6/hgext/convert >copying hgext/convert/__init__.py -> build-2.6/lib.linux-armv5tel-2.6/hgext/convert >copying hgext/convert/git.py -> build-2.6/lib.linux-armv5tel-2.6/hgext/convert >creating build-2.6/lib.linux-armv5tel-2.6/hgext/highlight >copying hgext/highlight/__init__.py -> build-2.6/lib.linux-armv5tel-2.6/hgext/highlight >copying hgext/highlight/highlight.py -> build-2.6/lib.linux-armv5tel-2.6/hgext/highlight >creating build-2.6/lib.linux-armv5tel-2.6/hgext/zeroconf >copying hgext/zeroconf/__init__.py -> build-2.6/lib.linux-armv5tel-2.6/hgext/zeroconf >copying hgext/zeroconf/Zeroconf.py -> build-2.6/lib.linux-armv5tel-2.6/hgext/zeroconf >creating build-2.6/lib.linux-armv5tel-2.6/hgext/inotify >copying hgext/inotify/server.py -> build-2.6/lib.linux-armv5tel-2.6/hgext/inotify >copying hgext/inotify/client.py -> build-2.6/lib.linux-armv5tel-2.6/hgext/inotify >copying hgext/inotify/common.py -> build-2.6/lib.linux-armv5tel-2.6/hgext/inotify >copying hgext/inotify/__init__.py -> build-2.6/lib.linux-armv5tel-2.6/hgext/inotify >copying hgext/inotify/linuxserver.py -> build-2.6/lib.linux-armv5tel-2.6/hgext/inotify >creating build-2.6/lib.linux-armv5tel-2.6/hgext/inotify/linux >copying hgext/inotify/linux/watcher.py -> build-2.6/lib.linux-armv5tel-2.6/hgext/inotify/linux >copying hgext/inotify/linux/__init__.py -> build-2.6/lib.linux-armv5tel-2.6/hgext/inotify/linux >creating build-2.6/lib.linux-armv5tel-2.6/mercurial/locale >creating build-2.6/lib.linux-armv5tel-2.6/mercurial/locale/zh_CN >creating build-2.6/lib.linux-armv5tel-2.6/mercurial/locale/zh_CN/LC_MESSAGES >copying mercurial/locale/zh_CN/LC_MESSAGES/hg.mo -> build-2.6/lib.linux-armv5tel-2.6/mercurial/locale/zh_CN/LC_MESSAGES >creating build-2.6/lib.linux-armv5tel-2.6/mercurial/locale/de >creating build-2.6/lib.linux-armv5tel-2.6/mercurial/locale/de/LC_MESSAGES >copying mercurial/locale/de/LC_MESSAGES/hg.mo -> build-2.6/lib.linux-armv5tel-2.6/mercurial/locale/de/LC_MESSAGES >creating build-2.6/lib.linux-armv5tel-2.6/mercurial/locale/pt_BR >creating build-2.6/lib.linux-armv5tel-2.6/mercurial/locale/pt_BR/LC_MESSAGES >copying mercurial/locale/pt_BR/LC_MESSAGES/hg.mo -> build-2.6/lib.linux-armv5tel-2.6/mercurial/locale/pt_BR/LC_MESSAGES >creating build-2.6/lib.linux-armv5tel-2.6/mercurial/locale/zh_TW >creating build-2.6/lib.linux-armv5tel-2.6/mercurial/locale/zh_TW/LC_MESSAGES >copying mercurial/locale/zh_TW/LC_MESSAGES/hg.mo -> build-2.6/lib.linux-armv5tel-2.6/mercurial/locale/zh_TW/LC_MESSAGES >creating build-2.6/lib.linux-armv5tel-2.6/mercurial/locale/it >creating build-2.6/lib.linux-armv5tel-2.6/mercurial/locale/it/LC_MESSAGES >copying mercurial/locale/it/LC_MESSAGES/hg.mo -> build-2.6/lib.linux-armv5tel-2.6/mercurial/locale/it/LC_MESSAGES >creating build-2.6/lib.linux-armv5tel-2.6/mercurial/locale/da >creating build-2.6/lib.linux-armv5tel-2.6/mercurial/locale/da/LC_MESSAGES >copying mercurial/locale/da/LC_MESSAGES/hg.mo -> build-2.6/lib.linux-armv5tel-2.6/mercurial/locale/da/LC_MESSAGES >creating build-2.6/lib.linux-armv5tel-2.6/mercurial/locale/el >creating build-2.6/lib.linux-armv5tel-2.6/mercurial/locale/el/LC_MESSAGES >copying mercurial/locale/el/LC_MESSAGES/hg.mo -> build-2.6/lib.linux-armv5tel-2.6/mercurial/locale/el/LC_MESSAGES >creating build-2.6/lib.linux-armv5tel-2.6/mercurial/locale/sv >creating build-2.6/lib.linux-armv5tel-2.6/mercurial/locale/sv/LC_MESSAGES >copying mercurial/locale/sv/LC_MESSAGES/hg.mo -> build-2.6/lib.linux-armv5tel-2.6/mercurial/locale/sv/LC_MESSAGES >creating build-2.6/lib.linux-armv5tel-2.6/mercurial/locale/fr >creating build-2.6/lib.linux-armv5tel-2.6/mercurial/locale/fr/LC_MESSAGES >copying mercurial/locale/fr/LC_MESSAGES/hg.mo -> build-2.6/lib.linux-armv5tel-2.6/mercurial/locale/fr/LC_MESSAGES >creating build-2.6/lib.linux-armv5tel-2.6/mercurial/locale/ja >creating build-2.6/lib.linux-armv5tel-2.6/mercurial/locale/ja/LC_MESSAGES >copying mercurial/locale/ja/LC_MESSAGES/hg.mo -> build-2.6/lib.linux-armv5tel-2.6/mercurial/locale/ja/LC_MESSAGES >creating build-2.6/lib.linux-armv5tel-2.6/mercurial/locale/ro >creating build-2.6/lib.linux-armv5tel-2.6/mercurial/locale/ro/LC_MESSAGES >copying mercurial/locale/ro/LC_MESSAGES/hg.mo -> build-2.6/lib.linux-armv5tel-2.6/mercurial/locale/ro/LC_MESSAGES >creating build-2.6/lib.linux-armv5tel-2.6/mercurial/help >copying mercurial/help/revsets.txt -> build-2.6/lib.linux-armv5tel-2.6/mercurial/help >copying mercurial/help/config.txt -> build-2.6/lib.linux-armv5tel-2.6/mercurial/help >copying mercurial/help/extensions.txt -> build-2.6/lib.linux-armv5tel-2.6/mercurial/help >copying mercurial/help/merge-tools.txt -> build-2.6/lib.linux-armv5tel-2.6/mercurial/help >copying mercurial/help/multirevs.txt -> build-2.6/lib.linux-armv5tel-2.6/mercurial/help >copying mercurial/help/glossary.txt -> build-2.6/lib.linux-armv5tel-2.6/mercurial/help >copying mercurial/help/hgweb.txt -> build-2.6/lib.linux-armv5tel-2.6/mercurial/help >copying mercurial/help/revisions.txt -> build-2.6/lib.linux-armv5tel-2.6/mercurial/help >copying mercurial/help/diffs.txt -> build-2.6/lib.linux-armv5tel-2.6/mercurial/help >copying mercurial/help/subrepos.txt -> build-2.6/lib.linux-armv5tel-2.6/mercurial/help >copying mercurial/help/templates.txt -> build-2.6/lib.linux-armv5tel-2.6/mercurial/help >copying mercurial/help/urls.txt -> build-2.6/lib.linux-armv5tel-2.6/mercurial/help >copying mercurial/help/environment.txt -> build-2.6/lib.linux-armv5tel-2.6/mercurial/help >copying mercurial/help/patterns.txt -> build-2.6/lib.linux-armv5tel-2.6/mercurial/help >copying mercurial/help/dates.txt -> build-2.6/lib.linux-armv5tel-2.6/mercurial/help >creating build-2.6/lib.linux-armv5tel-2.6/mercurial/templates >copying mercurial/templates/map-cmdline.changelog -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates >copying mercurial/templates/map-cmdline.compact -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates >copying mercurial/templates/template-vars.txt -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates >copying mercurial/templates/map-cmdline.default -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates >copying mercurial/templates/map-cmdline.xml -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates >creating build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/static >copying mercurial/templates/static/style.css -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/static >copying mercurial/templates/static/excanvas.js -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/static >copying mercurial/templates/static/coal-file.png -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/static >copying mercurial/templates/static/hgicon.png -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/static >copying mercurial/templates/static/coal-folder.png -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/static >copying mercurial/templates/static/hglogo.png -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/static >copying mercurial/templates/static/background.png -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/static >copying mercurial/templates/static/style-paper.css -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/static >copying mercurial/templates/static/style-gitweb.css -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/static >copying mercurial/templates/static/graph.js -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/static >copying mercurial/templates/static/style-coal.css -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/static >copying mercurial/templates/static/style-monoblue.css -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/static >creating build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/coal >copying mercurial/templates/coal/header.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/coal >copying mercurial/templates/coal/map -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/coal >creating build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/monoblue >copying mercurial/templates/monoblue/footer.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/monoblue >copying mercurial/templates/monoblue/filelog.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/monoblue >copying mercurial/templates/monoblue/error.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/monoblue >copying mercurial/templates/monoblue/changelog.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/monoblue >copying mercurial/templates/monoblue/helptopics.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/monoblue >copying mercurial/templates/monoblue/index.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/monoblue >copying mercurial/templates/monoblue/header.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/monoblue >copying mercurial/templates/monoblue/tags.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/monoblue >copying mercurial/templates/monoblue/help.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/monoblue >copying mercurial/templates/monoblue/branches.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/monoblue >copying mercurial/templates/monoblue/changelogentry.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/monoblue >copying mercurial/templates/monoblue/filerevision.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/monoblue >copying mercurial/templates/monoblue/changeset.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/monoblue >copying mercurial/templates/monoblue/notfound.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/monoblue >copying mercurial/templates/monoblue/filediff.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/monoblue >copying mercurial/templates/monoblue/manifest.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/monoblue >copying mercurial/templates/monoblue/shortlog.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/monoblue >copying mercurial/templates/monoblue/graph.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/monoblue >copying mercurial/templates/monoblue/fileannotate.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/monoblue >copying mercurial/templates/monoblue/search.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/monoblue >copying mercurial/templates/monoblue/summary.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/monoblue >copying mercurial/templates/monoblue/map -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/monoblue >creating build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/atom >copying mercurial/templates/atom/filelog.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/atom >copying mercurial/templates/atom/error.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/atom >copying mercurial/templates/atom/changelog.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/atom >copying mercurial/templates/atom/header.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/atom >copying mercurial/templates/atom/tags.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/atom >copying mercurial/templates/atom/changelogentry.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/atom >copying mercurial/templates/atom/tagentry.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/atom >copying mercurial/templates/atom/map -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/atom >creating build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/raw >copying mercurial/templates/raw/error.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/raw >copying mercurial/templates/raw/index.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/raw >copying mercurial/templates/raw/changeset.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/raw >copying mercurial/templates/raw/notfound.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/raw >copying mercurial/templates/raw/filediff.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/raw >copying mercurial/templates/raw/manifest.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/raw >copying mercurial/templates/raw/fileannotate.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/raw >copying mercurial/templates/raw/map -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/raw >creating build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/paper >copying mercurial/templates/paper/footer.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/paper >copying mercurial/templates/paper/filelog.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/paper >copying mercurial/templates/paper/error.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/paper >copying mercurial/templates/paper/filelogentry.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/paper >copying mercurial/templates/paper/helptopics.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/paper >copying mercurial/templates/paper/index.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/paper >copying mercurial/templates/paper/header.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/paper >copying mercurial/templates/paper/tags.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/paper >copying mercurial/templates/paper/help.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/paper >copying mercurial/templates/paper/branches.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/paper >copying mercurial/templates/paper/filerevision.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/paper >copying mercurial/templates/paper/changeset.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/paper >copying mercurial/templates/paper/notfound.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/paper >copying mercurial/templates/paper/shortlogentry.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/paper >copying mercurial/templates/paper/filediff.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/paper >copying mercurial/templates/paper/manifest.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/paper >copying mercurial/templates/paper/shortlog.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/paper >copying mercurial/templates/paper/graph.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/paper >copying mercurial/templates/paper/fileannotate.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/paper >copying mercurial/templates/paper/search.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/paper >copying mercurial/templates/paper/map -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/paper >creating build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/rss >copying mercurial/templates/rss/filelog.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/rss >copying mercurial/templates/rss/error.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/rss >copying mercurial/templates/rss/filelogentry.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/rss >copying mercurial/templates/rss/changelog.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/rss >copying mercurial/templates/rss/header.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/rss >copying mercurial/templates/rss/tags.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/rss >copying mercurial/templates/rss/changelogentry.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/rss >copying mercurial/templates/rss/tagentry.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/rss >copying mercurial/templates/rss/map -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/rss >creating build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/spartan >copying mercurial/templates/spartan/footer.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/spartan >copying mercurial/templates/spartan/filelog.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/spartan >copying mercurial/templates/spartan/error.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/spartan >copying mercurial/templates/spartan/filelogentry.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/spartan >copying mercurial/templates/spartan/changelog.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/spartan >copying mercurial/templates/spartan/index.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/spartan >copying mercurial/templates/spartan/header.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/spartan >copying mercurial/templates/spartan/tags.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/spartan >copying mercurial/templates/spartan/branches.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/spartan >copying mercurial/templates/spartan/changelogentry.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/spartan >copying mercurial/templates/spartan/filerevision.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/spartan >copying mercurial/templates/spartan/changeset.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/spartan >copying mercurial/templates/spartan/notfound.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/spartan >copying mercurial/templates/spartan/shortlogentry.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/spartan >copying mercurial/templates/spartan/filediff.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/spartan >copying mercurial/templates/spartan/manifest.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/spartan >copying mercurial/templates/spartan/shortlog.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/spartan >copying mercurial/templates/spartan/graph.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/spartan >copying mercurial/templates/spartan/fileannotate.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/spartan >copying mercurial/templates/spartan/search.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/spartan >copying mercurial/templates/spartan/map -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/spartan >creating build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/gitweb >copying mercurial/templates/gitweb/footer.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/gitweb >copying mercurial/templates/gitweb/filelog.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/gitweb >copying mercurial/templates/gitweb/error.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/gitweb >copying mercurial/templates/gitweb/changelog.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/gitweb >copying mercurial/templates/gitweb/helptopics.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/gitweb >copying mercurial/templates/gitweb/index.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/gitweb >copying mercurial/templates/gitweb/header.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/gitweb >copying mercurial/templates/gitweb/tags.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/gitweb >copying mercurial/templates/gitweb/help.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/gitweb >copying mercurial/templates/gitweb/branches.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/gitweb >copying mercurial/templates/gitweb/changelogentry.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/gitweb >copying mercurial/templates/gitweb/filerevision.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/gitweb >copying mercurial/templates/gitweb/changeset.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/gitweb >copying mercurial/templates/gitweb/notfound.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/gitweb >copying mercurial/templates/gitweb/filediff.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/gitweb >copying mercurial/templates/gitweb/manifest.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/gitweb >copying mercurial/templates/gitweb/shortlog.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/gitweb >copying mercurial/templates/gitweb/graph.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/gitweb >copying mercurial/templates/gitweb/fileannotate.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/gitweb >copying mercurial/templates/gitweb/search.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/gitweb >copying mercurial/templates/gitweb/summary.tmpl -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/gitweb >copying mercurial/templates/gitweb/map -> build-2.6/lib.linux-armv5tel-2.6/mercurial/templates/gitweb >warning: hgbuildpy: byte-compiling is disabled, skipping. >running build_ext >building 'mercurial.base85' extension >creating build-2.6/temp.linux-armv5tel-2.6 >creating build-2.6/temp.linux-armv5tel-2.6/mercurial >armv5tel-softfloat-linux-gnueabi-gcc -pthread -O2 -march=armv5te -pipe -fno-strict-aliasing -fPIC -I/usr/include/python2.6 -c mercurial/base85.c -o build-2.6/temp.linux-armv5tel-2.6/mercurial/base85.o >armv5tel-softfloat-linux-gnueabi-gcc -pthread -shared -Wl,-O1 -Wl,--as-needed -O2 -march=armv5te -pipe -fno-strict-aliasing build-2.6/temp.linux-armv5tel-2.6/mercurial/base85.o -L/usr/lib -lpython2.6 -o build-2.6/lib.linux-armv5tel-2.6/mercurial/base85.so >building 'mercurial.bdiff' extension >armv5tel-softfloat-linux-gnueabi-gcc -pthread -O2 -march=armv5te -pipe -fno-strict-aliasing -fPIC -I/usr/include/python2.6 -c mercurial/bdiff.c -o build-2.6/temp.linux-armv5tel-2.6/mercurial/bdiff.o >armv5tel-softfloat-linux-gnueabi-gcc -pthread -shared -Wl,-O1 -Wl,--as-needed -O2 -march=armv5te -pipe -fno-strict-aliasing build-2.6/temp.linux-armv5tel-2.6/mercurial/bdiff.o -L/usr/lib -lpython2.6 -o build-2.6/lib.linux-armv5tel-2.6/mercurial/bdiff.so >building 'mercurial.diffhelpers' extension >armv5tel-softfloat-linux-gnueabi-gcc -pthread -O2 -march=armv5te -pipe -fno-strict-aliasing -fPIC -I/usr/include/python2.6 -c mercurial/diffhelpers.c -o build-2.6/temp.linux-armv5tel-2.6/mercurial/diffhelpers.o >armv5tel-softfloat-linux-gnueabi-gcc -pthread -shared -Wl,-O1 -Wl,--as-needed -O2 -march=armv5te -pipe -fno-strict-aliasing build-2.6/temp.linux-armv5tel-2.6/mercurial/diffhelpers.o -L/usr/lib -lpython2.6 -o build-2.6/lib.linux-armv5tel-2.6/mercurial/diffhelpers.so >building 'mercurial.mpatch' extension >armv5tel-softfloat-linux-gnueabi-gcc -pthread -O2 -march=armv5te -pipe -fno-strict-aliasing -fPIC -I/usr/include/python2.6 -c mercurial/mpatch.c -o build-2.6/temp.linux-armv5tel-2.6/mercurial/mpatch.o >armv5tel-softfloat-linux-gnueabi-gcc -pthread -shared -Wl,-O1 -Wl,--as-needed -O2 -march=armv5te -pipe -fno-strict-aliasing build-2.6/temp.linux-armv5tel-2.6/mercurial/mpatch.o -L/usr/lib -lpython2.6 -o build-2.6/lib.linux-armv5tel-2.6/mercurial/mpatch.so >building 'mercurial.parsers' extension >armv5tel-softfloat-linux-gnueabi-gcc -pthread -O2 -march=armv5te -pipe -fno-strict-aliasing -fPIC -I/usr/include/python2.6 -c mercurial/parsers.c -o build-2.6/temp.linux-armv5tel-2.6/mercurial/parsers.o >armv5tel-softfloat-linux-gnueabi-gcc -pthread -shared -Wl,-O1 -Wl,--as-needed -O2 -march=armv5te -pipe -fno-strict-aliasing build-2.6/temp.linux-armv5tel-2.6/mercurial/parsers.o -L/usr/lib -lpython2.6 -o build-2.6/lib.linux-armv5tel-2.6/mercurial/parsers.so >building 'mercurial.osutil' extension >armv5tel-softfloat-linux-gnueabi-gcc -pthread -O2 -march=armv5te -pipe -fno-strict-aliasing -fPIC -I/usr/include/python2.6 -c mercurial/osutil.c -o build-2.6/temp.linux-armv5tel-2.6/mercurial/osutil.o >armv5tel-softfloat-linux-gnueabi-gcc -pthread -shared -Wl,-O1 -Wl,--as-needed -O2 -march=armv5te -pipe -fno-strict-aliasing build-2.6/temp.linux-armv5tel-2.6/mercurial/osutil.o -L/usr/lib -lpython2.6 -o build-2.6/lib.linux-armv5tel-2.6/mercurial/osutil.so >building 'hgext.inotify.linux._inotify' extension >creating build-2.6/temp.linux-armv5tel-2.6/hgext >creating build-2.6/temp.linux-armv5tel-2.6/hgext/inotify >creating build-2.6/temp.linux-armv5tel-2.6/hgext/inotify/linux >armv5tel-softfloat-linux-gnueabi-gcc -pthread -O2 -march=armv5te -pipe -fno-strict-aliasing -fPIC -Imercurial -I/usr/include/python2.6 -c hgext/inotify/linux/_inotify.c -o build-2.6/temp.linux-armv5tel-2.6/hgext/inotify/linux/_inotify.o >armv5tel-softfloat-linux-gnueabi-gcc -pthread -shared -Wl,-O1 -Wl,--as-needed -O2 -march=armv5te -pipe -fno-strict-aliasing build-2.6/temp.linux-armv5tel-2.6/hgext/inotify/linux/_inotify.o -L/usr/lib -lpython2.6 -o build-2.6/lib.linux-armv5tel-2.6/hgext/inotify/linux/_inotify.so >running build_scripts >creating build-2.6/scripts-2.6 >copying and adjusting hg -> build-2.6/scripts-2.6 >changing mode of build-2.6/scripts-2.6/hg from 644 to 755 >>>> Source compiled. > * Testing of dev-vcs/mercurial-1.7 with CPython 2.6... >.... >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-586.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-586.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-586.t.err >@@ -1,89 +1,6 @@ >+ >+ ### Abort: timeout after 180 seconds. > Issue586: removing remote files after merge appears to corrupt the > dirstate > > $ hg init a >- $ cd a >- $ echo a > a >- $ hg ci -Ama >- adding a >- >- $ hg init ../b >- $ cd ../b >- $ echo b > b >- $ hg ci -Amb >- adding b >- >- $ hg pull -f ../a >- pulling from ../a >- searching for changes >- warning: repository is unrelated >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files (+1 heads) >- (run 'hg heads' to see heads, 'hg merge' to merge) >- $ hg merge >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg rm -f a >- $ hg ci -Amc >- >- $ hg st -A >- C b >- $ cd .. >- >-Issue1433: Traceback after two unrelated pull, two move, a merge and >-a commit (related to issue586) >- >-create test repos >- >- $ hg init repoa >- $ touch repoa/a >- $ hg -R repoa ci -Am adda >- adding a >- >- $ hg init repob >- $ touch repob/b >- $ hg -R repob ci -Am addb >- adding b >- >- $ hg init repoc >- $ cd repoc >- $ hg pull ../repoa >- pulling from ../repoa >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- (run 'hg update' to get a working copy) >- $ hg update >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ mkdir tst >- $ hg mv * tst >- $ hg ci -m "import a in tst" >- $ hg pull -f ../repob >- pulling from ../repob >- searching for changes >- warning: repository is unrelated >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files (+1 heads) >- (run 'hg heads' to see heads, 'hg merge' to merge) >- >-merge both repos >- >- $ hg merge >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ mkdir src >- >-move b content >- >- $ hg mv b src >- $ hg ci -m "import b in src" >- $ hg manifest >- src/b >- tst/a >- >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-acl.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-acl.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-acl.t.err >@@ -1,3 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > > do_push() > > { > > user=$1 >@@ -45,1691 +47,3 @@ > > } > > $ hg init a >- $ cd a >- $ mkdir foo foo/Bar quux >- $ echo 'in foo' > foo/file.txt >- $ echo 'in foo/Bar' > foo/Bar/file.txt >- $ echo 'in quux' > quux/file.py >- $ hg add -q >- $ hg ci -m 'add files' -d '1000000 0' >- $ echo >> foo/file.txt >- $ hg ci -m 'change foo/file' -d '1000001 0' >- $ echo >> foo/Bar/file.txt >- $ hg ci -m 'change foo/Bar/file' -d '1000002 0' >- $ echo >> quux/file.py >- $ hg ci -m 'change quux/file' -d '1000003 0' >- $ hg tip --quiet >- 3:911600dab2ae >- >- $ cd .. >- $ hg clone -r 0 a b >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 3 changes to 3 files >- updating to branch default >- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >- $ echo '[extensions]' >> $HGRCPATH >- $ echo 'acl =' >> $HGRCPATH >- >- $ config=b/.hg/hgrc >- >-Extension disabled for lack of a hook >- >- $ do_push fred >- Pushing as user fred >- hgrc = """ >- """ >- pushing to ../b >- searching for changes >- common changesets up to 6675d58eff77 >- 3 changesets found >- list of changesets: >- ef1ea85a6374b77d6da9dcda9541f498f2d17df7 >- f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd >- 911600dab2ae7a9baff75958b84fe606851ce955 >- adding changesets >- bundling changes: 0 chunks >- bundling changes: 1 chunks >- bundling changes: 2 chunks >- bundling changes: 3 chunks >- bundling changes: 4 chunks >- bundling changes: 5 chunks >- bundling changes: 6 chunks >- bundling changes: 7 chunks >- bundling changes: 8 chunks >- bundling changes: 9 chunks >- bundling manifests: 0 chunks >- bundling manifests: 1 chunks >- bundling manifests: 2 chunks >- bundling manifests: 3 chunks >- bundling manifests: 4 chunks >- bundling manifests: 5 chunks >- bundling manifests: 6 chunks >- bundling manifests: 7 chunks >- bundling manifests: 8 chunks >- bundling manifests: 9 chunks >- bundling files: foo/Bar/file.txt 0 chunks >- bundling files: foo/Bar/file.txt 1 chunks >- bundling files: foo/Bar/file.txt 2 chunks >- bundling files: foo/Bar/file.txt 3 chunks >- bundling files: foo/file.txt 4 chunks >- bundling files: foo/file.txt 5 chunks >- bundling files: foo/file.txt 6 chunks >- bundling files: foo/file.txt 7 chunks >- bundling files: quux/file.py 8 chunks >- bundling files: quux/file.py 9 chunks >- bundling files: quux/file.py 10 chunks >- bundling files: quux/file.py 11 chunks >- changesets: 1 chunks >- add changeset ef1ea85a6374 >- changesets: 2 chunks >- add changeset f9cafe1212c8 >- changesets: 3 chunks >- add changeset 911600dab2ae >- adding manifests >- manifests: 1/3 chunks (33.33%) >- manifests: 2/3 chunks (66.67%) >- manifests: 3/3 chunks (100.00%) >- adding file changes >- adding foo/Bar/file.txt revisions >- files: 1/3 chunks (33.33%) >- adding foo/file.txt revisions >- files: 2/3 chunks (66.67%) >- adding quux/file.py revisions >- files: 3/3 chunks (100.00%) >- added 3 changesets with 3 changes to 3 files >- updating the branch cache >- rolling back to revision 0 (undo push) >- 0:6675d58eff77 >- >- >- $ echo '[hooks]' >> $config >- $ echo 'pretxnchangegroup.acl = python:hgext.acl.hook' >> $config >- >-Extension disabled for lack of acl.sources >- >- $ do_push fred >- Pushing as user fred >- hgrc = """ >- [hooks] >- pretxnchangegroup.acl = python:hgext.acl.hook >- """ >- pushing to ../b >- searching for changes >- common changesets up to 6675d58eff77 >- invalidating branch cache (tip differs) >- 3 changesets found >- list of changesets: >- ef1ea85a6374b77d6da9dcda9541f498f2d17df7 >- f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd >- 911600dab2ae7a9baff75958b84fe606851ce955 >- adding changesets >- bundling changes: 0 chunks >- bundling changes: 1 chunks >- bundling changes: 2 chunks >- bundling changes: 3 chunks >- bundling changes: 4 chunks >- bundling changes: 5 chunks >- bundling changes: 6 chunks >- bundling changes: 7 chunks >- bundling changes: 8 chunks >- bundling changes: 9 chunks >- bundling manifests: 0 chunks >- bundling manifests: 1 chunks >- bundling manifests: 2 chunks >- bundling manifests: 3 chunks >- bundling manifests: 4 chunks >- bundling manifests: 5 chunks >- bundling manifests: 6 chunks >- bundling manifests: 7 chunks >- bundling manifests: 8 chunks >- bundling manifests: 9 chunks >- bundling files: foo/Bar/file.txt 0 chunks >- bundling files: foo/Bar/file.txt 1 chunks >- bundling files: foo/Bar/file.txt 2 chunks >- bundling files: foo/Bar/file.txt 3 chunks >- bundling files: foo/file.txt 4 chunks >- bundling files: foo/file.txt 5 chunks >- bundling files: foo/file.txt 6 chunks >- bundling files: foo/file.txt 7 chunks >- bundling files: quux/file.py 8 chunks >- bundling files: quux/file.py 9 chunks >- bundling files: quux/file.py 10 chunks >- bundling files: quux/file.py 11 chunks >- changesets: 1 chunks >- add changeset ef1ea85a6374 >- changesets: 2 chunks >- add changeset f9cafe1212c8 >- changesets: 3 chunks >- add changeset 911600dab2ae >- adding manifests >- manifests: 1/3 chunks (33.33%) >- manifests: 2/3 chunks (66.67%) >- manifests: 3/3 chunks (100.00%) >- adding file changes >- adding foo/Bar/file.txt revisions >- files: 1/3 chunks (33.33%) >- adding foo/file.txt revisions >- files: 2/3 chunks (66.67%) >- adding quux/file.py revisions >- files: 3/3 chunks (100.00%) >- added 3 changesets with 3 changes to 3 files >- calling hook pretxnchangegroup.acl: hgext.acl.hook >- acl: changes have source "push" - skipping >- updating the branch cache >- rolling back to revision 0 (undo push) >- 0:6675d58eff77 >- >- >-No [acl.allow]/[acl.deny] >- >- $ echo '[acl]' >> $config >- $ echo 'sources = push' >> $config >- $ do_push fred >- Pushing as user fred >- hgrc = """ >- [hooks] >- pretxnchangegroup.acl = python:hgext.acl.hook >- [acl] >- sources = push >- """ >- pushing to ../b >- searching for changes >- common changesets up to 6675d58eff77 >- invalidating branch cache (tip differs) >- 3 changesets found >- list of changesets: >- ef1ea85a6374b77d6da9dcda9541f498f2d17df7 >- f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd >- 911600dab2ae7a9baff75958b84fe606851ce955 >- adding changesets >- bundling changes: 0 chunks >- bundling changes: 1 chunks >- bundling changes: 2 chunks >- bundling changes: 3 chunks >- bundling changes: 4 chunks >- bundling changes: 5 chunks >- bundling changes: 6 chunks >- bundling changes: 7 chunks >- bundling changes: 8 chunks >- bundling changes: 9 chunks >- bundling manifests: 0 chunks >- bundling manifests: 1 chunks >- bundling manifests: 2 chunks >- bundling manifests: 3 chunks >- bundling manifests: 4 chunks >- bundling manifests: 5 chunks >- bundling manifests: 6 chunks >- bundling manifests: 7 chunks >- bundling manifests: 8 chunks >- bundling manifests: 9 chunks >- bundling files: foo/Bar/file.txt 0 chunks >- bundling files: foo/Bar/file.txt 1 chunks >- bundling files: foo/Bar/file.txt 2 chunks >- bundling files: foo/Bar/file.txt 3 chunks >- bundling files: foo/file.txt 4 chunks >- bundling files: foo/file.txt 5 chunks >- bundling files: foo/file.txt 6 chunks >- bundling files: foo/file.txt 7 chunks >- bundling files: quux/file.py 8 chunks >- bundling files: quux/file.py 9 chunks >- bundling files: quux/file.py 10 chunks >- bundling files: quux/file.py 11 chunks >- changesets: 1 chunks >- add changeset ef1ea85a6374 >- changesets: 2 chunks >- add changeset f9cafe1212c8 >- changesets: 3 chunks >- add changeset 911600dab2ae >- adding manifests >- manifests: 1/3 chunks (33.33%) >- manifests: 2/3 chunks (66.67%) >- manifests: 3/3 chunks (100.00%) >- adding file changes >- adding foo/Bar/file.txt revisions >- files: 1/3 chunks (33.33%) >- adding foo/file.txt revisions >- files: 2/3 chunks (66.67%) >- adding quux/file.py revisions >- files: 3/3 chunks (100.00%) >- added 3 changesets with 3 changes to 3 files >- calling hook pretxnchangegroup.acl: hgext.acl.hook >- acl: acl.allow.branches not enabled >- acl: acl.deny.branches not enabled >- acl: acl.allow not enabled >- acl: acl.deny not enabled >- acl: branch access granted: "ef1ea85a6374" on branch "default" >- acl: allowing changeset ef1ea85a6374 >- acl: branch access granted: "f9cafe1212c8" on branch "default" >- acl: allowing changeset f9cafe1212c8 >- acl: branch access granted: "911600dab2ae" on branch "default" >- acl: allowing changeset 911600dab2ae >- updating the branch cache >- rolling back to revision 0 (undo push) >- 0:6675d58eff77 >- >- >-Empty [acl.allow] >- >- $ echo '[acl.allow]' >> $config >- $ do_push fred >- Pushing as user fred >- hgrc = """ >- [hooks] >- pretxnchangegroup.acl = python:hgext.acl.hook >- [acl] >- sources = push >- [acl.allow] >- """ >- pushing to ../b >- searching for changes >- common changesets up to 6675d58eff77 >- invalidating branch cache (tip differs) >- 3 changesets found >- list of changesets: >- ef1ea85a6374b77d6da9dcda9541f498f2d17df7 >- f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd >- 911600dab2ae7a9baff75958b84fe606851ce955 >- adding changesets >- bundling changes: 0 chunks >- bundling changes: 1 chunks >- bundling changes: 2 chunks >- bundling changes: 3 chunks >- bundling changes: 4 chunks >- bundling changes: 5 chunks >- bundling changes: 6 chunks >- bundling changes: 7 chunks >- bundling changes: 8 chunks >- bundling changes: 9 chunks >- bundling manifests: 0 chunks >- bundling manifests: 1 chunks >- bundling manifests: 2 chunks >- bundling manifests: 3 chunks >- bundling manifests: 4 chunks >- bundling manifests: 5 chunks >- bundling manifests: 6 chunks >- bundling manifests: 7 chunks >- bundling manifests: 8 chunks >- bundling manifests: 9 chunks >- bundling files: foo/Bar/file.txt 0 chunks >- bundling files: foo/Bar/file.txt 1 chunks >- bundling files: foo/Bar/file.txt 2 chunks >- bundling files: foo/Bar/file.txt 3 chunks >- bundling files: foo/file.txt 4 chunks >- bundling files: foo/file.txt 5 chunks >- bundling files: foo/file.txt 6 chunks >- bundling files: foo/file.txt 7 chunks >- bundling files: quux/file.py 8 chunks >- bundling files: quux/file.py 9 chunks >- bundling files: quux/file.py 10 chunks >- bundling files: quux/file.py 11 chunks >- changesets: 1 chunks >- add changeset ef1ea85a6374 >- changesets: 2 chunks >- add changeset f9cafe1212c8 >- changesets: 3 chunks >- add changeset 911600dab2ae >- adding manifests >- manifests: 1/3 chunks (33.33%) >- manifests: 2/3 chunks (66.67%) >- manifests: 3/3 chunks (100.00%) >- adding file changes >- adding foo/Bar/file.txt revisions >- files: 1/3 chunks (33.33%) >- adding foo/file.txt revisions >- files: 2/3 chunks (66.67%) >- adding quux/file.py revisions >- files: 3/3 chunks (100.00%) >- added 3 changesets with 3 changes to 3 files >- calling hook pretxnchangegroup.acl: hgext.acl.hook >- acl: acl.allow.branches not enabled >- acl: acl.deny.branches not enabled >- acl: acl.allow enabled, 0 entries for user fred >- acl: acl.deny not enabled >- acl: branch access granted: "ef1ea85a6374" on branch "default" >- acl: user fred not allowed on foo/file.txt >- error: pretxnchangegroup.acl hook failed: acl: access denied for changeset ef1ea85a6374 >- transaction abort! >- rollback completed >- abort: acl: access denied for changeset ef1ea85a6374 >- no rollback information available >- 0:6675d58eff77 >- >- >-fred is allowed inside foo/ >- >- $ echo 'foo/** = fred' >> $config >- $ do_push fred >- Pushing as user fred >- hgrc = """ >- [hooks] >- pretxnchangegroup.acl = python:hgext.acl.hook >- [acl] >- sources = push >- [acl.allow] >- foo/** = fred >- """ >- pushing to ../b >- searching for changes >- common changesets up to 6675d58eff77 >- 3 changesets found >- list of changesets: >- ef1ea85a6374b77d6da9dcda9541f498f2d17df7 >- f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd >- 911600dab2ae7a9baff75958b84fe606851ce955 >- adding changesets >- bundling changes: 0 chunks >- bundling changes: 1 chunks >- bundling changes: 2 chunks >- bundling changes: 3 chunks >- bundling changes: 4 chunks >- bundling changes: 5 chunks >- bundling changes: 6 chunks >- bundling changes: 7 chunks >- bundling changes: 8 chunks >- bundling changes: 9 chunks >- bundling manifests: 0 chunks >- bundling manifests: 1 chunks >- bundling manifests: 2 chunks >- bundling manifests: 3 chunks >- bundling manifests: 4 chunks >- bundling manifests: 5 chunks >- bundling manifests: 6 chunks >- bundling manifests: 7 chunks >- bundling manifests: 8 chunks >- bundling manifests: 9 chunks >- bundling files: foo/Bar/file.txt 0 chunks >- bundling files: foo/Bar/file.txt 1 chunks >- bundling files: foo/Bar/file.txt 2 chunks >- bundling files: foo/Bar/file.txt 3 chunks >- bundling files: foo/file.txt 4 chunks >- bundling files: foo/file.txt 5 chunks >- bundling files: foo/file.txt 6 chunks >- bundling files: foo/file.txt 7 chunks >- bundling files: quux/file.py 8 chunks >- bundling files: quux/file.py 9 chunks >- bundling files: quux/file.py 10 chunks >- bundling files: quux/file.py 11 chunks >- changesets: 1 chunks >- add changeset ef1ea85a6374 >- changesets: 2 chunks >- add changeset f9cafe1212c8 >- changesets: 3 chunks >- add changeset 911600dab2ae >- adding manifests >- manifests: 1/3 chunks (33.33%) >- manifests: 2/3 chunks (66.67%) >- manifests: 3/3 chunks (100.00%) >- adding file changes >- adding foo/Bar/file.txt revisions >- files: 1/3 chunks (33.33%) >- adding foo/file.txt revisions >- files: 2/3 chunks (66.67%) >- adding quux/file.py revisions >- files: 3/3 chunks (100.00%) >- added 3 changesets with 3 changes to 3 files >- calling hook pretxnchangegroup.acl: hgext.acl.hook >- acl: acl.allow.branches not enabled >- acl: acl.deny.branches not enabled >- acl: acl.allow enabled, 1 entries for user fred >- acl: acl.deny not enabled >- acl: branch access granted: "ef1ea85a6374" on branch "default" >- acl: allowing changeset ef1ea85a6374 >- acl: branch access granted: "f9cafe1212c8" on branch "default" >- acl: allowing changeset f9cafe1212c8 >- acl: branch access granted: "911600dab2ae" on branch "default" >- acl: user fred not allowed on quux/file.py >- error: pretxnchangegroup.acl hook failed: acl: access denied for changeset 911600dab2ae >- transaction abort! >- rollback completed >- abort: acl: access denied for changeset 911600dab2ae >- no rollback information available >- 0:6675d58eff77 >- >- >-Empty [acl.deny] >- >- $ echo '[acl.deny]' >> $config >- $ do_push barney >- Pushing as user barney >- hgrc = """ >- [hooks] >- pretxnchangegroup.acl = python:hgext.acl.hook >- [acl] >- sources = push >- [acl.allow] >- foo/** = fred >- [acl.deny] >- """ >- pushing to ../b >- searching for changes >- common changesets up to 6675d58eff77 >- 3 changesets found >- list of changesets: >- ef1ea85a6374b77d6da9dcda9541f498f2d17df7 >- f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd >- 911600dab2ae7a9baff75958b84fe606851ce955 >- adding changesets >- bundling changes: 0 chunks >- bundling changes: 1 chunks >- bundling changes: 2 chunks >- bundling changes: 3 chunks >- bundling changes: 4 chunks >- bundling changes: 5 chunks >- bundling changes: 6 chunks >- bundling changes: 7 chunks >- bundling changes: 8 chunks >- bundling changes: 9 chunks >- bundling manifests: 0 chunks >- bundling manifests: 1 chunks >- bundling manifests: 2 chunks >- bundling manifests: 3 chunks >- bundling manifests: 4 chunks >- bundling manifests: 5 chunks >- bundling manifests: 6 chunks >- bundling manifests: 7 chunks >- bundling manifests: 8 chunks >- bundling manifests: 9 chunks >- bundling files: foo/Bar/file.txt 0 chunks >- bundling files: foo/Bar/file.txt 1 chunks >- bundling files: foo/Bar/file.txt 2 chunks >- bundling files: foo/Bar/file.txt 3 chunks >- bundling files: foo/file.txt 4 chunks >- bundling files: foo/file.txt 5 chunks >- bundling files: foo/file.txt 6 chunks >- bundling files: foo/file.txt 7 chunks >- bundling files: quux/file.py 8 chunks >- bundling files: quux/file.py 9 chunks >- bundling files: quux/file.py 10 chunks >- bundling files: quux/file.py 11 chunks >- changesets: 1 chunks >- add changeset ef1ea85a6374 >- changesets: 2 chunks >- add changeset f9cafe1212c8 >- changesets: 3 chunks >- add changeset 911600dab2ae >- adding manifests >- manifests: 1/3 chunks (33.33%) >- manifests: 2/3 chunks (66.67%) >- manifests: 3/3 chunks (100.00%) >- adding file changes >- adding foo/Bar/file.txt revisions >- files: 1/3 chunks (33.33%) >- adding foo/file.txt revisions >- files: 2/3 chunks (66.67%) >- adding quux/file.py revisions >- files: 3/3 chunks (100.00%) >- added 3 changesets with 3 changes to 3 files >- calling hook pretxnchangegroup.acl: hgext.acl.hook >- acl: acl.allow.branches not enabled >- acl: acl.deny.branches not enabled >- acl: acl.allow enabled, 0 entries for user barney >- acl: acl.deny enabled, 0 entries for user barney >- acl: branch access granted: "ef1ea85a6374" on branch "default" >- acl: user barney not allowed on foo/file.txt >- error: pretxnchangegroup.acl hook failed: acl: access denied for changeset ef1ea85a6374 >- transaction abort! >- rollback completed >- abort: acl: access denied for changeset ef1ea85a6374 >- no rollback information available >- 0:6675d58eff77 >- >- >-fred is allowed inside foo/, but not foo/bar/ (case matters) >- >- $ echo 'foo/bar/** = fred' >> $config >- $ do_push fred >- Pushing as user fred >- hgrc = """ >- [hooks] >- pretxnchangegroup.acl = python:hgext.acl.hook >- [acl] >- sources = push >- [acl.allow] >- foo/** = fred >- [acl.deny] >- foo/bar/** = fred >- """ >- pushing to ../b >- searching for changes >- common changesets up to 6675d58eff77 >- 3 changesets found >- list of changesets: >- ef1ea85a6374b77d6da9dcda9541f498f2d17df7 >- f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd >- 911600dab2ae7a9baff75958b84fe606851ce955 >- adding changesets >- bundling changes: 0 chunks >- bundling changes: 1 chunks >- bundling changes: 2 chunks >- bundling changes: 3 chunks >- bundling changes: 4 chunks >- bundling changes: 5 chunks >- bundling changes: 6 chunks >- bundling changes: 7 chunks >- bundling changes: 8 chunks >- bundling changes: 9 chunks >- bundling manifests: 0 chunks >- bundling manifests: 1 chunks >- bundling manifests: 2 chunks >- bundling manifests: 3 chunks >- bundling manifests: 4 chunks >- bundling manifests: 5 chunks >- bundling manifests: 6 chunks >- bundling manifests: 7 chunks >- bundling manifests: 8 chunks >- bundling manifests: 9 chunks >- bundling files: foo/Bar/file.txt 0 chunks >- bundling files: foo/Bar/file.txt 1 chunks >- bundling files: foo/Bar/file.txt 2 chunks >- bundling files: foo/Bar/file.txt 3 chunks >- bundling files: foo/file.txt 4 chunks >- bundling files: foo/file.txt 5 chunks >- bundling files: foo/file.txt 6 chunks >- bundling files: foo/file.txt 7 chunks >- bundling files: quux/file.py 8 chunks >- bundling files: quux/file.py 9 chunks >- bundling files: quux/file.py 10 chunks >- bundling files: quux/file.py 11 chunks >- changesets: 1 chunks >- add changeset ef1ea85a6374 >- changesets: 2 chunks >- add changeset f9cafe1212c8 >- changesets: 3 chunks >- add changeset 911600dab2ae >- adding manifests >- manifests: 1/3 chunks (33.33%) >- manifests: 2/3 chunks (66.67%) >- manifests: 3/3 chunks (100.00%) >- adding file changes >- adding foo/Bar/file.txt revisions >- files: 1/3 chunks (33.33%) >- adding foo/file.txt revisions >- files: 2/3 chunks (66.67%) >- adding quux/file.py revisions >- files: 3/3 chunks (100.00%) >- added 3 changesets with 3 changes to 3 files >- calling hook pretxnchangegroup.acl: hgext.acl.hook >- acl: acl.allow.branches not enabled >- acl: acl.deny.branches not enabled >- acl: acl.allow enabled, 1 entries for user fred >- acl: acl.deny enabled, 1 entries for user fred >- acl: branch access granted: "ef1ea85a6374" on branch "default" >- acl: allowing changeset ef1ea85a6374 >- acl: branch access granted: "f9cafe1212c8" on branch "default" >- acl: allowing changeset f9cafe1212c8 >- acl: branch access granted: "911600dab2ae" on branch "default" >- acl: user fred not allowed on quux/file.py >- error: pretxnchangegroup.acl hook failed: acl: access denied for changeset 911600dab2ae >- transaction abort! >- rollback completed >- abort: acl: access denied for changeset 911600dab2ae >- no rollback information available >- 0:6675d58eff77 >- >- >-fred is allowed inside foo/, but not foo/Bar/ >- >- $ echo 'foo/Bar/** = fred' >> $config >- $ do_push fred >- Pushing as user fred >- hgrc = """ >- [hooks] >- pretxnchangegroup.acl = python:hgext.acl.hook >- [acl] >- sources = push >- [acl.allow] >- foo/** = fred >- [acl.deny] >- foo/bar/** = fred >- foo/Bar/** = fred >- """ >- pushing to ../b >- searching for changes >- common changesets up to 6675d58eff77 >- 3 changesets found >- list of changesets: >- ef1ea85a6374b77d6da9dcda9541f498f2d17df7 >- f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd >- 911600dab2ae7a9baff75958b84fe606851ce955 >- adding changesets >- bundling changes: 0 chunks >- bundling changes: 1 chunks >- bundling changes: 2 chunks >- bundling changes: 3 chunks >- bundling changes: 4 chunks >- bundling changes: 5 chunks >- bundling changes: 6 chunks >- bundling changes: 7 chunks >- bundling changes: 8 chunks >- bundling changes: 9 chunks >- bundling manifests: 0 chunks >- bundling manifests: 1 chunks >- bundling manifests: 2 chunks >- bundling manifests: 3 chunks >- bundling manifests: 4 chunks >- bundling manifests: 5 chunks >- bundling manifests: 6 chunks >- bundling manifests: 7 chunks >- bundling manifests: 8 chunks >- bundling manifests: 9 chunks >- bundling files: foo/Bar/file.txt 0 chunks >- bundling files: foo/Bar/file.txt 1 chunks >- bundling files: foo/Bar/file.txt 2 chunks >- bundling files: foo/Bar/file.txt 3 chunks >- bundling files: foo/file.txt 4 chunks >- bundling files: foo/file.txt 5 chunks >- bundling files: foo/file.txt 6 chunks >- bundling files: foo/file.txt 7 chunks >- bundling files: quux/file.py 8 chunks >- bundling files: quux/file.py 9 chunks >- bundling files: quux/file.py 10 chunks >- bundling files: quux/file.py 11 chunks >- changesets: 1 chunks >- add changeset ef1ea85a6374 >- changesets: 2 chunks >- add changeset f9cafe1212c8 >- changesets: 3 chunks >- add changeset 911600dab2ae >- adding manifests >- manifests: 1/3 chunks (33.33%) >- manifests: 2/3 chunks (66.67%) >- manifests: 3/3 chunks (100.00%) >- adding file changes >- adding foo/Bar/file.txt revisions >- files: 1/3 chunks (33.33%) >- adding foo/file.txt revisions >- files: 2/3 chunks (66.67%) >- adding quux/file.py revisions >- files: 3/3 chunks (100.00%) >- added 3 changesets with 3 changes to 3 files >- calling hook pretxnchangegroup.acl: hgext.acl.hook >- acl: acl.allow.branches not enabled >- acl: acl.deny.branches not enabled >- acl: acl.allow enabled, 1 entries for user fred >- acl: acl.deny enabled, 2 entries for user fred >- acl: branch access granted: "ef1ea85a6374" on branch "default" >- acl: allowing changeset ef1ea85a6374 >- acl: branch access granted: "f9cafe1212c8" on branch "default" >- acl: user fred denied on foo/Bar/file.txt >- error: pretxnchangegroup.acl hook failed: acl: access denied for changeset f9cafe1212c8 >- transaction abort! >- rollback completed >- abort: acl: access denied for changeset f9cafe1212c8 >- no rollback information available >- 0:6675d58eff77 >- >- >- $ echo 'barney is not mentioned => not allowed anywhere' >- barney is not mentioned => not allowed anywhere >- $ do_push barney >- Pushing as user barney >- hgrc = """ >- [hooks] >- pretxnchangegroup.acl = python:hgext.acl.hook >- [acl] >- sources = push >- [acl.allow] >- foo/** = fred >- [acl.deny] >- foo/bar/** = fred >- foo/Bar/** = fred >- """ >- pushing to ../b >- searching for changes >- common changesets up to 6675d58eff77 >- 3 changesets found >- list of changesets: >- ef1ea85a6374b77d6da9dcda9541f498f2d17df7 >- f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd >- 911600dab2ae7a9baff75958b84fe606851ce955 >- adding changesets >- bundling changes: 0 chunks >- bundling changes: 1 chunks >- bundling changes: 2 chunks >- bundling changes: 3 chunks >- bundling changes: 4 chunks >- bundling changes: 5 chunks >- bundling changes: 6 chunks >- bundling changes: 7 chunks >- bundling changes: 8 chunks >- bundling changes: 9 chunks >- bundling manifests: 0 chunks >- bundling manifests: 1 chunks >- bundling manifests: 2 chunks >- bundling manifests: 3 chunks >- bundling manifests: 4 chunks >- bundling manifests: 5 chunks >- bundling manifests: 6 chunks >- bundling manifests: 7 chunks >- bundling manifests: 8 chunks >- bundling manifests: 9 chunks >- bundling files: foo/Bar/file.txt 0 chunks >- bundling files: foo/Bar/file.txt 1 chunks >- bundling files: foo/Bar/file.txt 2 chunks >- bundling files: foo/Bar/file.txt 3 chunks >- bundling files: foo/file.txt 4 chunks >- bundling files: foo/file.txt 5 chunks >- bundling files: foo/file.txt 6 chunks >- bundling files: foo/file.txt 7 chunks >- bundling files: quux/file.py 8 chunks >- bundling files: quux/file.py 9 chunks >- bundling files: quux/file.py 10 chunks >- bundling files: quux/file.py 11 chunks >- changesets: 1 chunks >- add changeset ef1ea85a6374 >- changesets: 2 chunks >- add changeset f9cafe1212c8 >- changesets: 3 chunks >- add changeset 911600dab2ae >- adding manifests >- manifests: 1/3 chunks (33.33%) >- manifests: 2/3 chunks (66.67%) >- manifests: 3/3 chunks (100.00%) >- adding file changes >- adding foo/Bar/file.txt revisions >- files: 1/3 chunks (33.33%) >- adding foo/file.txt revisions >- files: 2/3 chunks (66.67%) >- adding quux/file.py revisions >- files: 3/3 chunks (100.00%) >- added 3 changesets with 3 changes to 3 files >- calling hook pretxnchangegroup.acl: hgext.acl.hook >- acl: acl.allow.branches not enabled >- acl: acl.deny.branches not enabled >- acl: acl.allow enabled, 0 entries for user barney >- acl: acl.deny enabled, 0 entries for user barney >- acl: branch access granted: "ef1ea85a6374" on branch "default" >- acl: user barney not allowed on foo/file.txt >- error: pretxnchangegroup.acl hook failed: acl: access denied for changeset ef1ea85a6374 >- transaction abort! >- rollback completed >- abort: acl: access denied for changeset ef1ea85a6374 >- no rollback information available >- 0:6675d58eff77 >- >- >-barney is allowed everywhere >- >- $ echo '[acl.allow]' >> $config >- $ echo '** = barney' >> $config >- $ do_push barney >- Pushing as user barney >- hgrc = """ >- [hooks] >- pretxnchangegroup.acl = python:hgext.acl.hook >- [acl] >- sources = push >- [acl.allow] >- foo/** = fred >- [acl.deny] >- foo/bar/** = fred >- foo/Bar/** = fred >- [acl.allow] >- ** = barney >- """ >- pushing to ../b >- searching for changes >- common changesets up to 6675d58eff77 >- 3 changesets found >- list of changesets: >- ef1ea85a6374b77d6da9dcda9541f498f2d17df7 >- f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd >- 911600dab2ae7a9baff75958b84fe606851ce955 >- adding changesets >- bundling changes: 0 chunks >- bundling changes: 1 chunks >- bundling changes: 2 chunks >- bundling changes: 3 chunks >- bundling changes: 4 chunks >- bundling changes: 5 chunks >- bundling changes: 6 chunks >- bundling changes: 7 chunks >- bundling changes: 8 chunks >- bundling changes: 9 chunks >- bundling manifests: 0 chunks >- bundling manifests: 1 chunks >- bundling manifests: 2 chunks >- bundling manifests: 3 chunks >- bundling manifests: 4 chunks >- bundling manifests: 5 chunks >- bundling manifests: 6 chunks >- bundling manifests: 7 chunks >- bundling manifests: 8 chunks >- bundling manifests: 9 chunks >- bundling files: foo/Bar/file.txt 0 chunks >- bundling files: foo/Bar/file.txt 1 chunks >- bundling files: foo/Bar/file.txt 2 chunks >- bundling files: foo/Bar/file.txt 3 chunks >- bundling files: foo/file.txt 4 chunks >- bundling files: foo/file.txt 5 chunks >- bundling files: foo/file.txt 6 chunks >- bundling files: foo/file.txt 7 chunks >- bundling files: quux/file.py 8 chunks >- bundling files: quux/file.py 9 chunks >- bundling files: quux/file.py 10 chunks >- bundling files: quux/file.py 11 chunks >- changesets: 1 chunks >- add changeset ef1ea85a6374 >- changesets: 2 chunks >- add changeset f9cafe1212c8 >- changesets: 3 chunks >- add changeset 911600dab2ae >- adding manifests >- manifests: 1/3 chunks (33.33%) >- manifests: 2/3 chunks (66.67%) >- manifests: 3/3 chunks (100.00%) >- adding file changes >- adding foo/Bar/file.txt revisions >- files: 1/3 chunks (33.33%) >- adding foo/file.txt revisions >- files: 2/3 chunks (66.67%) >- adding quux/file.py revisions >- files: 3/3 chunks (100.00%) >- added 3 changesets with 3 changes to 3 files >- calling hook pretxnchangegroup.acl: hgext.acl.hook >- acl: acl.allow.branches not enabled >- acl: acl.deny.branches not enabled >- acl: acl.allow enabled, 1 entries for user barney >- acl: acl.deny enabled, 0 entries for user barney >- acl: branch access granted: "ef1ea85a6374" on branch "default" >- acl: allowing changeset ef1ea85a6374 >- acl: branch access granted: "f9cafe1212c8" on branch "default" >- acl: allowing changeset f9cafe1212c8 >- acl: branch access granted: "911600dab2ae" on branch "default" >- acl: allowing changeset 911600dab2ae >- updating the branch cache >- rolling back to revision 0 (undo push) >- 0:6675d58eff77 >- >- >-wilma can change files with a .txt extension >- >- $ echo '**/*.txt = wilma' >> $config >- $ do_push wilma >- Pushing as user wilma >- hgrc = """ >- [hooks] >- pretxnchangegroup.acl = python:hgext.acl.hook >- [acl] >- sources = push >- [acl.allow] >- foo/** = fred >- [acl.deny] >- foo/bar/** = fred >- foo/Bar/** = fred >- [acl.allow] >- ** = barney >- **/*.txt = wilma >- """ >- pushing to ../b >- searching for changes >- common changesets up to 6675d58eff77 >- invalidating branch cache (tip differs) >- 3 changesets found >- list of changesets: >- ef1ea85a6374b77d6da9dcda9541f498f2d17df7 >- f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd >- 911600dab2ae7a9baff75958b84fe606851ce955 >- adding changesets >- bundling changes: 0 chunks >- bundling changes: 1 chunks >- bundling changes: 2 chunks >- bundling changes: 3 chunks >- bundling changes: 4 chunks >- bundling changes: 5 chunks >- bundling changes: 6 chunks >- bundling changes: 7 chunks >- bundling changes: 8 chunks >- bundling changes: 9 chunks >- bundling manifests: 0 chunks >- bundling manifests: 1 chunks >- bundling manifests: 2 chunks >- bundling manifests: 3 chunks >- bundling manifests: 4 chunks >- bundling manifests: 5 chunks >- bundling manifests: 6 chunks >- bundling manifests: 7 chunks >- bundling manifests: 8 chunks >- bundling manifests: 9 chunks >- bundling files: foo/Bar/file.txt 0 chunks >- bundling files: foo/Bar/file.txt 1 chunks >- bundling files: foo/Bar/file.txt 2 chunks >- bundling files: foo/Bar/file.txt 3 chunks >- bundling files: foo/file.txt 4 chunks >- bundling files: foo/file.txt 5 chunks >- bundling files: foo/file.txt 6 chunks >- bundling files: foo/file.txt 7 chunks >- bundling files: quux/file.py 8 chunks >- bundling files: quux/file.py 9 chunks >- bundling files: quux/file.py 10 chunks >- bundling files: quux/file.py 11 chunks >- changesets: 1 chunks >- add changeset ef1ea85a6374 >- changesets: 2 chunks >- add changeset f9cafe1212c8 >- changesets: 3 chunks >- add changeset 911600dab2ae >- adding manifests >- manifests: 1/3 chunks (33.33%) >- manifests: 2/3 chunks (66.67%) >- manifests: 3/3 chunks (100.00%) >- adding file changes >- adding foo/Bar/file.txt revisions >- files: 1/3 chunks (33.33%) >- adding foo/file.txt revisions >- files: 2/3 chunks (66.67%) >- adding quux/file.py revisions >- files: 3/3 chunks (100.00%) >- added 3 changesets with 3 changes to 3 files >- calling hook pretxnchangegroup.acl: hgext.acl.hook >- acl: acl.allow.branches not enabled >- acl: acl.deny.branches not enabled >- acl: acl.allow enabled, 1 entries for user wilma >- acl: acl.deny enabled, 0 entries for user wilma >- acl: branch access granted: "ef1ea85a6374" on branch "default" >- acl: allowing changeset ef1ea85a6374 >- acl: branch access granted: "f9cafe1212c8" on branch "default" >- acl: allowing changeset f9cafe1212c8 >- acl: branch access granted: "911600dab2ae" on branch "default" >- acl: user wilma not allowed on quux/file.py >- error: pretxnchangegroup.acl hook failed: acl: access denied for changeset 911600dab2ae >- transaction abort! >- rollback completed >- abort: acl: access denied for changeset 911600dab2ae >- no rollback information available >- 0:6675d58eff77 >- >- >-file specified by acl.config does not exist >- >- $ echo '[acl]' >> $config >- $ echo 'config = ../acl.config' >> $config >- $ do_push barney >- Pushing as user barney >- hgrc = """ >- [hooks] >- pretxnchangegroup.acl = python:hgext.acl.hook >- [acl] >- sources = push >- [acl.allow] >- foo/** = fred >- [acl.deny] >- foo/bar/** = fred >- foo/Bar/** = fred >- [acl.allow] >- ** = barney >- **/*.txt = wilma >- [acl] >- config = ../acl.config >- """ >- pushing to ../b >- searching for changes >- common changesets up to 6675d58eff77 >- 3 changesets found >- list of changesets: >- ef1ea85a6374b77d6da9dcda9541f498f2d17df7 >- f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd >- 911600dab2ae7a9baff75958b84fe606851ce955 >- adding changesets >- bundling changes: 0 chunks >- bundling changes: 1 chunks >- bundling changes: 2 chunks >- bundling changes: 3 chunks >- bundling changes: 4 chunks >- bundling changes: 5 chunks >- bundling changes: 6 chunks >- bundling changes: 7 chunks >- bundling changes: 8 chunks >- bundling changes: 9 chunks >- bundling manifests: 0 chunks >- bundling manifests: 1 chunks >- bundling manifests: 2 chunks >- bundling manifests: 3 chunks >- bundling manifests: 4 chunks >- bundling manifests: 5 chunks >- bundling manifests: 6 chunks >- bundling manifests: 7 chunks >- bundling manifests: 8 chunks >- bundling manifests: 9 chunks >- bundling files: foo/Bar/file.txt 0 chunks >- bundling files: foo/Bar/file.txt 1 chunks >- bundling files: foo/Bar/file.txt 2 chunks >- bundling files: foo/Bar/file.txt 3 chunks >- bundling files: foo/file.txt 4 chunks >- bundling files: foo/file.txt 5 chunks >- bundling files: foo/file.txt 6 chunks >- bundling files: foo/file.txt 7 chunks >- bundling files: quux/file.py 8 chunks >- bundling files: quux/file.py 9 chunks >- bundling files: quux/file.py 10 chunks >- bundling files: quux/file.py 11 chunks >- changesets: 1 chunks >- add changeset ef1ea85a6374 >- changesets: 2 chunks >- add changeset f9cafe1212c8 >- changesets: 3 chunks >- add changeset 911600dab2ae >- adding manifests >- manifests: 1/3 chunks (33.33%) >- manifests: 2/3 chunks (66.67%) >- manifests: 3/3 chunks (100.00%) >- adding file changes >- adding foo/Bar/file.txt revisions >- files: 1/3 chunks (33.33%) >- adding foo/file.txt revisions >- files: 2/3 chunks (66.67%) >- adding quux/file.py revisions >- files: 3/3 chunks (100.00%) >- added 3 changesets with 3 changes to 3 files >- calling hook pretxnchangegroup.acl: hgext.acl.hook >- error: pretxnchangegroup.acl hook raised an exception: [Errno 2] No such file or directory: '../acl.config' >- transaction abort! >- rollback completed >- abort: No such file or directory: ../acl.config >- no rollback information available >- 0:6675d58eff77 >- >- >-betty is allowed inside foo/ by a acl.config file >- >- $ echo '[acl.allow]' >> acl.config >- $ echo 'foo/** = betty' >> acl.config >- $ do_push betty >- Pushing as user betty >- hgrc = """ >- [hooks] >- pretxnchangegroup.acl = python:hgext.acl.hook >- [acl] >- sources = push >- [acl.allow] >- foo/** = fred >- [acl.deny] >- foo/bar/** = fred >- foo/Bar/** = fred >- [acl.allow] >- ** = barney >- **/*.txt = wilma >- [acl] >- config = ../acl.config >- """ >- acl.config = """ >- [acl.allow] >- foo/** = betty >- """ >- pushing to ../b >- searching for changes >- common changesets up to 6675d58eff77 >- 3 changesets found >- list of changesets: >- ef1ea85a6374b77d6da9dcda9541f498f2d17df7 >- f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd >- 911600dab2ae7a9baff75958b84fe606851ce955 >- adding changesets >- bundling changes: 0 chunks >- bundling changes: 1 chunks >- bundling changes: 2 chunks >- bundling changes: 3 chunks >- bundling changes: 4 chunks >- bundling changes: 5 chunks >- bundling changes: 6 chunks >- bundling changes: 7 chunks >- bundling changes: 8 chunks >- bundling changes: 9 chunks >- bundling manifests: 0 chunks >- bundling manifests: 1 chunks >- bundling manifests: 2 chunks >- bundling manifests: 3 chunks >- bundling manifests: 4 chunks >- bundling manifests: 5 chunks >- bundling manifests: 6 chunks >- bundling manifests: 7 chunks >- bundling manifests: 8 chunks >- bundling manifests: 9 chunks >- bundling files: foo/Bar/file.txt 0 chunks >- bundling files: foo/Bar/file.txt 1 chunks >- bundling files: foo/Bar/file.txt 2 chunks >- bundling files: foo/Bar/file.txt 3 chunks >- bundling files: foo/file.txt 4 chunks >- bundling files: foo/file.txt 5 chunks >- bundling files: foo/file.txt 6 chunks >- bundling files: foo/file.txt 7 chunks >- bundling files: quux/file.py 8 chunks >- bundling files: quux/file.py 9 chunks >- bundling files: quux/file.py 10 chunks >- bundling files: quux/file.py 11 chunks >- changesets: 1 chunks >- add changeset ef1ea85a6374 >- changesets: 2 chunks >- add changeset f9cafe1212c8 >- changesets: 3 chunks >- add changeset 911600dab2ae >- adding manifests >- manifests: 1/3 chunks (33.33%) >- manifests: 2/3 chunks (66.67%) >- manifests: 3/3 chunks (100.00%) >- adding file changes >- adding foo/Bar/file.txt revisions >- files: 1/3 chunks (33.33%) >- adding foo/file.txt revisions >- files: 2/3 chunks (66.67%) >- adding quux/file.py revisions >- files: 3/3 chunks (100.00%) >- added 3 changesets with 3 changes to 3 files >- calling hook pretxnchangegroup.acl: hgext.acl.hook >- acl: acl.allow.branches not enabled >- acl: acl.deny.branches not enabled >- acl: acl.allow enabled, 1 entries for user betty >- acl: acl.deny enabled, 0 entries for user betty >- acl: branch access granted: "ef1ea85a6374" on branch "default" >- acl: allowing changeset ef1ea85a6374 >- acl: branch access granted: "f9cafe1212c8" on branch "default" >- acl: allowing changeset f9cafe1212c8 >- acl: branch access granted: "911600dab2ae" on branch "default" >- acl: user betty not allowed on quux/file.py >- error: pretxnchangegroup.acl hook failed: acl: access denied for changeset 911600dab2ae >- transaction abort! >- rollback completed >- abort: acl: access denied for changeset 911600dab2ae >- no rollback information available >- 0:6675d58eff77 >- >- >-acl.config can set only [acl.allow]/[acl.deny] >- >- $ echo '[hooks]' >> acl.config >- $ echo 'changegroup.acl = false' >> acl.config >- $ do_push barney >- Pushing as user barney >- hgrc = """ >- [hooks] >- pretxnchangegroup.acl = python:hgext.acl.hook >- [acl] >- sources = push >- [acl.allow] >- foo/** = fred >- [acl.deny] >- foo/bar/** = fred >- foo/Bar/** = fred >- [acl.allow] >- ** = barney >- **/*.txt = wilma >- [acl] >- config = ../acl.config >- """ >- acl.config = """ >- [acl.allow] >- foo/** = betty >- [hooks] >- changegroup.acl = false >- """ >- pushing to ../b >- searching for changes >- common changesets up to 6675d58eff77 >- 3 changesets found >- list of changesets: >- ef1ea85a6374b77d6da9dcda9541f498f2d17df7 >- f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd >- 911600dab2ae7a9baff75958b84fe606851ce955 >- adding changesets >- bundling changes: 0 chunks >- bundling changes: 1 chunks >- bundling changes: 2 chunks >- bundling changes: 3 chunks >- bundling changes: 4 chunks >- bundling changes: 5 chunks >- bundling changes: 6 chunks >- bundling changes: 7 chunks >- bundling changes: 8 chunks >- bundling changes: 9 chunks >- bundling manifests: 0 chunks >- bundling manifests: 1 chunks >- bundling manifests: 2 chunks >- bundling manifests: 3 chunks >- bundling manifests: 4 chunks >- bundling manifests: 5 chunks >- bundling manifests: 6 chunks >- bundling manifests: 7 chunks >- bundling manifests: 8 chunks >- bundling manifests: 9 chunks >- bundling files: foo/Bar/file.txt 0 chunks >- bundling files: foo/Bar/file.txt 1 chunks >- bundling files: foo/Bar/file.txt 2 chunks >- bundling files: foo/Bar/file.txt 3 chunks >- bundling files: foo/file.txt 4 chunks >- bundling files: foo/file.txt 5 chunks >- bundling files: foo/file.txt 6 chunks >- bundling files: foo/file.txt 7 chunks >- bundling files: quux/file.py 8 chunks >- bundling files: quux/file.py 9 chunks >- bundling files: quux/file.py 10 chunks >- bundling files: quux/file.py 11 chunks >- changesets: 1 chunks >- add changeset ef1ea85a6374 >- changesets: 2 chunks >- add changeset f9cafe1212c8 >- changesets: 3 chunks >- add changeset 911600dab2ae >- adding manifests >- manifests: 1/3 chunks (33.33%) >- manifests: 2/3 chunks (66.67%) >- manifests: 3/3 chunks (100.00%) >- adding file changes >- adding foo/Bar/file.txt revisions >- files: 1/3 chunks (33.33%) >- adding foo/file.txt revisions >- files: 2/3 chunks (66.67%) >- adding quux/file.py revisions >- files: 3/3 chunks (100.00%) >- added 3 changesets with 3 changes to 3 files >- calling hook pretxnchangegroup.acl: hgext.acl.hook >- acl: acl.allow.branches not enabled >- acl: acl.deny.branches not enabled >- acl: acl.allow enabled, 1 entries for user barney >- acl: acl.deny enabled, 0 entries for user barney >- acl: branch access granted: "ef1ea85a6374" on branch "default" >- acl: allowing changeset ef1ea85a6374 >- acl: branch access granted: "f9cafe1212c8" on branch "default" >- acl: allowing changeset f9cafe1212c8 >- acl: branch access granted: "911600dab2ae" on branch "default" >- acl: allowing changeset 911600dab2ae >- updating the branch cache >- rolling back to revision 0 (undo push) >- 0:6675d58eff77 >- >- >-asterisk >- >- $ init_config >- >-asterisk test >- >- $ echo '[acl.allow]' >> $config >- $ echo "** = fred" >> $config >- >-fred is always allowed >- >- $ do_push fred >- Pushing as user fred >- hgrc = """ >- [acl] >- sources = push >- [extensions] >- [acl.allow] >- ** = fred >- """ >- pushing to ../b >- searching for changes >- common changesets up to 6675d58eff77 >- invalidating branch cache (tip differs) >- 3 changesets found >- list of changesets: >- ef1ea85a6374b77d6da9dcda9541f498f2d17df7 >- f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd >- 911600dab2ae7a9baff75958b84fe606851ce955 >- adding changesets >- bundling changes: 0 chunks >- bundling changes: 1 chunks >- bundling changes: 2 chunks >- bundling changes: 3 chunks >- bundling changes: 4 chunks >- bundling changes: 5 chunks >- bundling changes: 6 chunks >- bundling changes: 7 chunks >- bundling changes: 8 chunks >- bundling changes: 9 chunks >- bundling manifests: 0 chunks >- bundling manifests: 1 chunks >- bundling manifests: 2 chunks >- bundling manifests: 3 chunks >- bundling manifests: 4 chunks >- bundling manifests: 5 chunks >- bundling manifests: 6 chunks >- bundling manifests: 7 chunks >- bundling manifests: 8 chunks >- bundling manifests: 9 chunks >- bundling files: foo/Bar/file.txt 0 chunks >- bundling files: foo/Bar/file.txt 1 chunks >- bundling files: foo/Bar/file.txt 2 chunks >- bundling files: foo/Bar/file.txt 3 chunks >- bundling files: foo/file.txt 4 chunks >- bundling files: foo/file.txt 5 chunks >- bundling files: foo/file.txt 6 chunks >- bundling files: foo/file.txt 7 chunks >- bundling files: quux/file.py 8 chunks >- bundling files: quux/file.py 9 chunks >- bundling files: quux/file.py 10 chunks >- bundling files: quux/file.py 11 chunks >- changesets: 1 chunks >- add changeset ef1ea85a6374 >- changesets: 2 chunks >- add changeset f9cafe1212c8 >- changesets: 3 chunks >- add changeset 911600dab2ae >- adding manifests >- manifests: 1/3 chunks (33.33%) >- manifests: 2/3 chunks (66.67%) >- manifests: 3/3 chunks (100.00%) >- adding file changes >- adding foo/Bar/file.txt revisions >- files: 1/3 chunks (33.33%) >- adding foo/file.txt revisions >- files: 2/3 chunks (66.67%) >- adding quux/file.py revisions >- files: 3/3 chunks (100.00%) >- added 3 changesets with 3 changes to 3 files >- calling hook pretxnchangegroup.acl: hgext.acl.hook >- acl: acl.allow.branches not enabled >- acl: acl.deny.branches not enabled >- acl: acl.allow enabled, 1 entries for user fred >- acl: acl.deny not enabled >- acl: branch access granted: "ef1ea85a6374" on branch "default" >- acl: allowing changeset ef1ea85a6374 >- acl: branch access granted: "f9cafe1212c8" on branch "default" >- acl: allowing changeset f9cafe1212c8 >- acl: branch access granted: "911600dab2ae" on branch "default" >- acl: allowing changeset 911600dab2ae >- updating the branch cache >- rolling back to revision 0 (undo push) >- 0:6675d58eff77 >- >- >- $ echo '[acl.deny]' >> $config >- $ echo "foo/Bar/** = *" >> $config >- >-no one is allowed inside foo/Bar/ >- >- $ do_push fred >- Pushing as user fred >- hgrc = """ >- [acl] >- sources = push >- [extensions] >- [acl.allow] >- ** = fred >- [acl.deny] >- foo/Bar/** = * >- """ >- pushing to ../b >- searching for changes >- common changesets up to 6675d58eff77 >- invalidating branch cache (tip differs) >- 3 changesets found >- list of changesets: >- ef1ea85a6374b77d6da9dcda9541f498f2d17df7 >- f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd >- 911600dab2ae7a9baff75958b84fe606851ce955 >- adding changesets >- bundling changes: 0 chunks >- bundling changes: 1 chunks >- bundling changes: 2 chunks >- bundling changes: 3 chunks >- bundling changes: 4 chunks >- bundling changes: 5 chunks >- bundling changes: 6 chunks >- bundling changes: 7 chunks >- bundling changes: 8 chunks >- bundling changes: 9 chunks >- bundling manifests: 0 chunks >- bundling manifests: 1 chunks >- bundling manifests: 2 chunks >- bundling manifests: 3 chunks >- bundling manifests: 4 chunks >- bundling manifests: 5 chunks >- bundling manifests: 6 chunks >- bundling manifests: 7 chunks >- bundling manifests: 8 chunks >- bundling manifests: 9 chunks >- bundling files: foo/Bar/file.txt 0 chunks >- bundling files: foo/Bar/file.txt 1 chunks >- bundling files: foo/Bar/file.txt 2 chunks >- bundling files: foo/Bar/file.txt 3 chunks >- bundling files: foo/file.txt 4 chunks >- bundling files: foo/file.txt 5 chunks >- bundling files: foo/file.txt 6 chunks >- bundling files: foo/file.txt 7 chunks >- bundling files: quux/file.py 8 chunks >- bundling files: quux/file.py 9 chunks >- bundling files: quux/file.py 10 chunks >- bundling files: quux/file.py 11 chunks >- changesets: 1 chunks >- add changeset ef1ea85a6374 >- changesets: 2 chunks >- add changeset f9cafe1212c8 >- changesets: 3 chunks >- add changeset 911600dab2ae >- adding manifests >- manifests: 1/3 chunks (33.33%) >- manifests: 2/3 chunks (66.67%) >- manifests: 3/3 chunks (100.00%) >- adding file changes >- adding foo/Bar/file.txt revisions >- files: 1/3 chunks (33.33%) >- adding foo/file.txt revisions >- files: 2/3 chunks (66.67%) >- adding quux/file.py revisions >- files: 3/3 chunks (100.00%) >- added 3 changesets with 3 changes to 3 files >- calling hook pretxnchangegroup.acl: hgext.acl.hook >- acl: acl.allow.branches not enabled >- acl: acl.deny.branches not enabled >- acl: acl.allow enabled, 1 entries for user fred >- acl: acl.deny enabled, 1 entries for user fred >- acl: branch access granted: "ef1ea85a6374" on branch "default" >- acl: allowing changeset ef1ea85a6374 >- acl: branch access granted: "f9cafe1212c8" on branch "default" >- acl: user fred denied on foo/Bar/file.txt >- error: pretxnchangegroup.acl hook failed: acl: access denied for changeset f9cafe1212c8 >- transaction abort! >- rollback completed >- abort: acl: access denied for changeset f9cafe1212c8 >- no rollback information available >- 0:6675d58eff77 >- >- >-Groups >- >- $ init_config >- >-OS-level groups >- >- $ echo '[acl.allow]' >> $config >- $ echo "** = @group1" >> $config >- >-@group1 is always allowed >- >- $ do_push fred >- Pushing as user fred >- hgrc = """ >- [acl] >- sources = push >- [extensions] >- [acl.allow] >- ** = @group1 >- """ >- pushing to ../b >- searching for changes >- common changesets up to 6675d58eff77 >- 3 changesets found >- list of changesets: >- ef1ea85a6374b77d6da9dcda9541f498f2d17df7 >- f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd >- 911600dab2ae7a9baff75958b84fe606851ce955 >- adding changesets >- bundling changes: 0 chunks >- bundling changes: 1 chunks >- bundling changes: 2 chunks >- bundling changes: 3 chunks >- bundling changes: 4 chunks >- bundling changes: 5 chunks >- bundling changes: 6 chunks >- bundling changes: 7 chunks >- bundling changes: 8 chunks >- bundling changes: 9 chunks >- bundling manifests: 0 chunks >- bundling manifests: 1 chunks >- bundling manifests: 2 chunks >- bundling manifests: 3 chunks >- bundling manifests: 4 chunks >- bundling manifests: 5 chunks >- bundling manifests: 6 chunks >- bundling manifests: 7 chunks >- bundling manifests: 8 chunks >- bundling manifests: 9 chunks >- bundling files: foo/Bar/file.txt 0 chunks >- bundling files: foo/Bar/file.txt 1 chunks >- bundling files: foo/Bar/file.txt 2 chunks >- bundling files: foo/Bar/file.txt 3 chunks >- bundling files: foo/file.txt 4 chunks >- bundling files: foo/file.txt 5 chunks >- bundling files: foo/file.txt 6 chunks >- bundling files: foo/file.txt 7 chunks >- bundling files: quux/file.py 8 chunks >- bundling files: quux/file.py 9 chunks >- bundling files: quux/file.py 10 chunks >- bundling files: quux/file.py 11 chunks >- changesets: 1 chunks >- add changeset ef1ea85a6374 >- changesets: 2 chunks >- add changeset f9cafe1212c8 >- changesets: 3 chunks >- add changeset 911600dab2ae >- adding manifests >- manifests: 1/3 chunks (33.33%) >- manifests: 2/3 chunks (66.67%) >- manifests: 3/3 chunks (100.00%) >- adding file changes >- adding foo/Bar/file.txt revisions >- files: 1/3 chunks (33.33%) >- adding foo/file.txt revisions >- files: 2/3 chunks (66.67%) >- adding quux/file.py revisions >- files: 3/3 chunks (100.00%) >- added 3 changesets with 3 changes to 3 files >- calling hook pretxnchangegroup.acl: hgext.acl.hook >- acl: acl.allow.branches not enabled >- acl: acl.deny.branches not enabled >- acl: "group1" not defined in [acl.groups] >- acl: acl.allow enabled, 1 entries for user fred >- acl: acl.deny not enabled >- acl: branch access granted: "ef1ea85a6374" on branch "default" >- acl: allowing changeset ef1ea85a6374 >- acl: branch access granted: "f9cafe1212c8" on branch "default" >- acl: allowing changeset f9cafe1212c8 >- acl: branch access granted: "911600dab2ae" on branch "default" >- acl: allowing changeset 911600dab2ae >- updating the branch cache >- rolling back to revision 0 (undo push) >- 0:6675d58eff77 >- >- >- $ echo '[acl.deny]' >> $config >- $ echo "foo/Bar/** = @group1" >> $config >- >-@group is allowed inside anything but foo/Bar/ >- >- $ do_push fred >- Pushing as user fred >- hgrc = """ >- [acl] >- sources = push >- [extensions] >- [acl.allow] >- ** = @group1 >- [acl.deny] >- foo/Bar/** = @group1 >- """ >- pushing to ../b >- searching for changes >- common changesets up to 6675d58eff77 >- invalidating branch cache (tip differs) >- 3 changesets found >- list of changesets: >- ef1ea85a6374b77d6da9dcda9541f498f2d17df7 >- f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd >- 911600dab2ae7a9baff75958b84fe606851ce955 >- adding changesets >- bundling changes: 0 chunks >- bundling changes: 1 chunks >- bundling changes: 2 chunks >- bundling changes: 3 chunks >- bundling changes: 4 chunks >- bundling changes: 5 chunks >- bundling changes: 6 chunks >- bundling changes: 7 chunks >- bundling changes: 8 chunks >- bundling changes: 9 chunks >- bundling manifests: 0 chunks >- bundling manifests: 1 chunks >- bundling manifests: 2 chunks >- bundling manifests: 3 chunks >- bundling manifests: 4 chunks >- bundling manifests: 5 chunks >- bundling manifests: 6 chunks >- bundling manifests: 7 chunks >- bundling manifests: 8 chunks >- bundling manifests: 9 chunks >- bundling files: foo/Bar/file.txt 0 chunks >- bundling files: foo/Bar/file.txt 1 chunks >- bundling files: foo/Bar/file.txt 2 chunks >- bundling files: foo/Bar/file.txt 3 chunks >- bundling files: foo/file.txt 4 chunks >- bundling files: foo/file.txt 5 chunks >- bundling files: foo/file.txt 6 chunks >- bundling files: foo/file.txt 7 chunks >- bundling files: quux/file.py 8 chunks >- bundling files: quux/file.py 9 chunks >- bundling files: quux/file.py 10 chunks >- bundling files: quux/file.py 11 chunks >- changesets: 1 chunks >- add changeset ef1ea85a6374 >- changesets: 2 chunks >- add changeset f9cafe1212c8 >- changesets: 3 chunks >- add changeset 911600dab2ae >- adding manifests >- manifests: 1/3 chunks (33.33%) >- manifests: 2/3 chunks (66.67%) >- manifests: 3/3 chunks (100.00%) >- adding file changes >- adding foo/Bar/file.txt revisions >- files: 1/3 chunks (33.33%) >- adding foo/file.txt revisions >- files: 2/3 chunks (66.67%) >- adding quux/file.py revisions >- files: 3/3 chunks (100.00%) >- added 3 changesets with 3 changes to 3 files >- calling hook pretxnchangegroup.acl: hgext.acl.hook >- acl: acl.allow.branches not enabled >- acl: acl.deny.branches not enabled >- acl: "group1" not defined in [acl.groups] >- acl: acl.allow enabled, 1 entries for user fred >- acl: "group1" not defined in [acl.groups] >- acl: acl.deny enabled, 1 entries for user fred >- acl: branch access granted: "ef1ea85a6374" on branch "default" >- acl: allowing changeset ef1ea85a6374 >- acl: branch access granted: "f9cafe1212c8" on branch "default" >- acl: user fred denied on foo/Bar/file.txt >- error: pretxnchangegroup.acl hook failed: acl: access denied for changeset f9cafe1212c8 >- transaction abort! >- rollback completed >- abort: acl: access denied for changeset f9cafe1212c8 >- no rollback information available >- 0:6675d58eff77 >- >- >-Invalid group >- >-Disable the fakegroups trick to get real failures >- >- $ grep -v fakegroups $config > config.tmp >- $ mv config.tmp $config >- $ echo '[acl.allow]' >> $config >- $ echo "** = @unlikelytoexist" >> $config >- $ do_push fred 2>&1 | grep unlikelytoexist >- ** = @unlikelytoexist >- acl: "unlikelytoexist" not defined in [acl.groups] >- error: pretxnchangegroup.acl hook failed: group 'unlikelytoexist' is undefined >- abort: group 'unlikelytoexist' is undefined >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-add.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-add.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-add.t.err >@@ -1,99 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ hg init a >- $ cd a >- $ echo a > a >- $ hg add -n >- adding a >- $ hg st >- ? a >- $ hg add >- adding a >- $ hg st >- A a >- $ hg forget a >- $ hg add >- adding a >- $ hg st >- A a >- >- $ echo b > b >- $ hg add -n b >- $ hg st >- A a >- ? b >- $ hg add b >- $ hg st >- A a >- A b >- >-should fail >- >- $ hg add b >- b already tracked! >- $ hg st >- A a >- A b >- >- $ hg ci -m 0 --traceback >- >-should fail >- >- $ hg add a >- a already tracked! >- >- $ echo aa > a >- $ hg ci -m 1 >- $ hg up 0 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo aaa > a >- $ hg ci -m 2 >- created new head >- >- $ hg merge >- merging a >- warning: conflicts during merge. >- merging a failed! >- 0 files updated, 0 files merged, 0 files removed, 1 files unresolved >- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon >- [1] >- $ hg st >- M a >- ? a.orig >- >-should fail >- >- $ hg add a >- a already tracked! >- $ hg st >- M a >- ? a.orig >- $ hg resolve -m a >- $ hg ci -m merge >- >-Issue683: peculiarity with hg revert of an removed then added file >- >- $ hg forget a >- $ hg add a >- $ hg st >- ? a.orig >- $ hg rm a >- $ hg st >- R a >- ? a.orig >- $ echo a > a >- $ hg add a >- $ hg st >- M a >- ? a.orig >- >- $ hg add c && echo "unexpected addition of missing file" >- c: No such file or directory >- [1] >- $ echo c > c >- $ hg add d c && echo "unexpected addition of missing file" >- d: No such file or directory >- [1] >- $ hg st >- M a >- A c >- ? a.orig >- >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-archive.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-archive.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-archive.t.err >@@ -1,235 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ mkdir test >- $ cd test >- $ hg init >- $ echo foo>foo >- $ hg commit -Am 1 -d '1 0' >- adding foo >- $ echo bar>bar >- $ hg commit -Am 2 -d '2 0' >- adding bar >- $ mkdir baz >- $ echo bletch>baz/bletch >- $ hg commit -Am 3 -d '1000000000 0' >- adding baz/bletch >- $ echo "[web]" >> .hg/hgrc >- $ echo "name = test-archive" >> .hg/hgrc >- $ cp .hg/hgrc .hg/hgrc-base >- > test_archtype() { >- > echo "allow_archive = $1" >> .hg/hgrc >- > hg serve -p $HGPORT -d --pid-file=hg.pid -E errors.log >- > cat hg.pid >> $DAEMON_PIDS >- > echo % $1 allowed should give 200 >- > "$TESTDIR/get-with-headers.py" localhost:$HGPORT "/archive/tip.$2" | head -n 1 >- > echo % $3 and $4 disallowed should both give 403 >- > "$TESTDIR/get-with-headers.py" localhost:$HGPORT "/archive/tip.$3" | head -n 1 >- > "$TESTDIR/get-with-headers.py" localhost:$HGPORT "/archive/tip.$4" | head -n 1 >- > "$TESTDIR/killdaemons.py" >- > cat errors.log >- > cp .hg/hgrc-base .hg/hgrc >- > } >- >-check http return codes >- >- >- $ test_archtype gz tar.gz tar.bz2 zip >- % gz allowed should give 200 >- 200 Script output follows >- % tar.bz2 and zip disallowed should both give 403 >- 403 Archive type not allowed: bz2 >- 403 Archive type not allowed: zip >- $ test_archtype bz2 tar.bz2 zip tar.gz >- % bz2 allowed should give 200 >- 200 Script output follows >- % zip and tar.gz disallowed should both give 403 >- 403 Archive type not allowed: zip >- 403 Archive type not allowed: gz >- $ test_archtype zip zip tar.gz tar.bz2 >- % zip allowed should give 200 >- 200 Script output follows >- % tar.gz and tar.bz2 disallowed should both give 403 >- 403 Archive type not allowed: gz >- 403 Archive type not allowed: bz2 >- >- $ echo "allow_archive = gz bz2 zip" >> .hg/hgrc >- $ hg serve -p $HGPORT -d --pid-file=hg.pid -E errors.log >- $ cat hg.pid >> $DAEMON_PIDS >- >-invalid arch type should give 404 >- >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT "/archive/tip.invalid" | head -n 1 >- 404 Unsupported archive type: None >- >- $ TIP=`hg id -v | cut -f1 -d' '` >- $ QTIP=`hg id -q` >- $ cat > getarchive.py <<EOF >- > import os, sys, urllib2 >- > try: >- > # Set stdout to binary mode for win32 platforms >- > import msvcrt >- > msvcrt.setmode(sys.stdout.fileno(), os.O_BINARY) >- > except ImportError: >- > pass >- > node, archive = sys.argv[1:] >- > f = urllib2.urlopen('http://127.0.0.1:%s/?cmd=archive;node=%s;type=%s' >- > % (os.environ['HGPORT'], node, archive)) >- > sys.stdout.write(f.read()) >- > EOF >- $ python getarchive.py "$TIP" gz | gunzip | tar tf - 2>/dev/null >- test-archive-2c0277f05ed4/.hg_archival.txt >- test-archive-2c0277f05ed4/bar >- test-archive-2c0277f05ed4/baz/bletch >- test-archive-2c0277f05ed4/foo >- $ python getarchive.py "$TIP" bz2 | bunzip2 | tar tf - 2>/dev/null >- test-archive-2c0277f05ed4/.hg_archival.txt >- test-archive-2c0277f05ed4/bar >- test-archive-2c0277f05ed4/baz/bletch >- test-archive-2c0277f05ed4/foo >- $ python getarchive.py "$TIP" zip > archive.zip >- $ unzip -t archive.zip >- Archive: archive.zip >- testing: test-archive-2c0277f05ed4/.hg_archival.txt OK >- testing: test-archive-2c0277f05ed4/bar OK >- testing: test-archive-2c0277f05ed4/baz/bletch OK >- testing: test-archive-2c0277f05ed4/foo OK >- No errors detected in compressed data of archive.zip. >- >- $ "$TESTDIR/killdaemons.py" >- >- $ hg archive -t tar test.tar >- $ tar tf test.tar >- test/.hg_archival.txt >- test/bar >- test/baz/bletch >- test/foo >- >- $ hg archive -t tbz2 -X baz test.tar.bz2 >- $ bunzip2 -dc test.tar.bz2 | tar tf - 2>/dev/null >- test/.hg_archival.txt >- test/bar >- test/foo >- >- $ hg archive -t tgz -p %b-%h test-%h.tar.gz >- $ gzip -dc test-$QTIP.tar.gz | tar tf - 2>/dev/null >- test-2c0277f05ed4/.hg_archival.txt >- test-2c0277f05ed4/bar >- test-2c0277f05ed4/baz/bletch >- test-2c0277f05ed4/foo >- >- $ hg archive autodetected_test.tar >- $ tar tf autodetected_test.tar >- autodetected_test/.hg_archival.txt >- autodetected_test/bar >- autodetected_test/baz/bletch >- autodetected_test/foo >- >-The '-t' should override autodetection >- >- $ hg archive -t tar autodetect_override_test.zip >- $ tar tf autodetect_override_test.zip >- autodetect_override_test.zip/.hg_archival.txt >- autodetect_override_test.zip/bar >- autodetect_override_test.zip/baz/bletch >- autodetect_override_test.zip/foo >- >- $ for ext in tar tar.gz tgz tar.bz2 tbz2 zip; do >- > hg archive auto_test.$ext >- > if [ -d auto_test.$ext ]; then >- > echo "extension $ext was not autodetected." >- > fi >- > done >- >- $ cat > md5comp.py <<EOF >- > try: >- > from hashlib import md5 >- > except ImportError: >- > from md5 import md5 >- > import sys >- > f1, f2 = sys.argv[1:3] >- > h1 = md5(file(f1, 'rb').read()).hexdigest() >- > h2 = md5(file(f2, 'rb').read()).hexdigest() >- > print h1 == h2 or "md5 differ: " + repr((h1, h2)) >- > EOF >- >-archive name is stored in the archive, so create similar >- >-archives and rename them afterwards. >- >- $ hg archive -t tgz tip.tar.gz >- $ mv tip.tar.gz tip1.tar.gz >- $ sleep 1 >- $ hg archive -t tgz tip.tar.gz >- $ mv tip.tar.gz tip2.tar.gz >- $ python md5comp.py tip1.tar.gz tip2.tar.gz >- True >- >- $ hg archive -t zip -p /illegal test.zip >- abort: archive prefix contains illegal components >- [255] >- $ hg archive -t zip -p very/../bad test.zip >- >- $ hg archive --config ui.archivemeta=false -t zip -r 2 test.zip >- $ unzip -t test.zip >- Archive: test.zip >- testing: test/bar OK >- testing: test/baz/bletch OK >- testing: test/foo OK >- No errors detected in compressed data of test.zip. >- >- $ hg archive -t tar - | tar tf - 2>/dev/null >- test-2c0277f05ed4/.hg_archival.txt >- test-2c0277f05ed4/bar >- test-2c0277f05ed4/baz/bletch >- test-2c0277f05ed4/foo >- >- $ hg archive -r 0 -t tar rev-%r.tar >- $ if [ -f rev-0.tar ]; then >- $ fi >- >-test .hg_archival.txt >- >- $ hg archive ../test-tags >- $ cat ../test-tags/.hg_archival.txt >- repo: daa7f7c60e0a224faa4ff77ca41b2760562af264 >- node: 2c0277f05ed49d1c8328fb9ba92fba7a5ebcb33e >- branch: default >- latesttag: null >- latesttagdistance: 3 >- $ hg tag -r 2 mytag >- $ hg tag -r 2 anothertag >- $ hg archive -r 2 ../test-lasttag >- $ cat ../test-lasttag/.hg_archival.txt >- repo: daa7f7c60e0a224faa4ff77ca41b2760562af264 >- node: 2c0277f05ed49d1c8328fb9ba92fba7a5ebcb33e >- branch: default >- tag: anothertag >- tag: mytag >- >- $ hg archive -t bogus test.bogus >- abort: unknown archive type 'bogus' >- [255] >- >-server errors >- >- $ cat errors.log >- >-empty repo >- >- $ hg init ../empty >- $ cd ../empty >- $ hg archive ../test-empty >- abort: no working directory: please specify a revision >- [255] >-old file -- date clamped to 1980 >- >- $ touch -t 197501010000 old >- $ hg add old >- $ hg commit -m old >- $ hg archive ../old.zip >- $ unzip -l ../old.zip >- Archive: ../old.zip >- \s*Length.* (re) >- *-----* (glob) >- *147*80*00:00*old/.hg_archival.txt (glob) >- *0*80*00:00*old/old (glob) >- *-----* (glob) >- \s*147\s+2 files (re) >!. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-addremove-similar.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-addremove-similar.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-addremove-similar.t.err >@@ -1,100 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ hg init rep; cd rep >- >- $ touch empty-file >- $ python -c 'for x in range(10000): print x' > large-file >- >- $ hg addremove >- adding empty-file >- adding large-file >- >- $ hg commit -m A >- >- $ rm large-file empty-file >- $ python -c 'for x in range(10,10000): print x' > another-file >- >- $ hg addremove -s50 >- adding another-file >- removing empty-file >- removing large-file >- recording removal of large-file as rename to another-file (99% similar) >- >- $ hg commit -m B >- >-comparing two empty files caused ZeroDivisionError in the past >- >- $ hg update -C 0 >- 2 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ rm empty-file >- $ touch another-empty-file >- $ hg addremove -s50 >- adding another-empty-file >- removing empty-file >- >- $ cd .. >- >- $ hg init rep2; cd rep2 >- >- $ python -c 'for x in range(10000): print x' > large-file >- $ python -c 'for x in range(50): print x' > tiny-file >- >- $ hg addremove >- adding large-file >- adding tiny-file >- >- $ hg commit -m A >- >- $ python -c 'for x in range(70): print x' > small-file >- $ rm tiny-file >- $ rm large-file >- >- $ hg addremove -s50 >- removing large-file >- adding small-file >- removing tiny-file >- recording removal of tiny-file as rename to small-file (82% similar) >- >- $ hg commit -m B >- >-should all fail >- >- $ hg addremove -s foo >- abort: similarity must be a number >- [255] >- $ hg addremove -s -1 >- abort: similarity must be between 0 and 100 >- [255] >- $ hg addremove -s 1e6 >- abort: similarity must be between 0 and 100 >- [255] >- >- $ cd .. >- >-Issue1527: repeated addremove causes util.Abort >- >- $ hg init rep3; cd rep3 >- $ mkdir d >- $ echo a > d/a >- $ hg add d/a >- $ hg commit -m 1 >- >- $ mv d/a d/b >- $ hg addremove -s80 >- removing d/a >- adding d/b >- recording removal of d/a as rename to d/b (100% similar) >- $ hg debugstate >- r 0 0 1970-01-01 00:00:00 d/a >- a 0 -1 unset d/b >- copy: d/a -> d/b >- $ mv d/b c >- >-no copies found here (since the target isn't in d >- >- $ hg addremove -s80 d >- removing d/b >- >-copies here >- >- $ hg addremove -s80 >- adding c >- recording removal of d/a as rename to c (100% similar) >!. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-alias.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-alias.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-alias.t.err >@@ -1,3 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ cat >> $HGRCPATH <<EOF > > [extensions] > > graphlog= >@@ -35,311 +37,3 @@ > > lognull = -q > > log = -v > > EOF >- >- >-basic >- >- $ hg myinit alias >- >- >-unknown >- >- $ hg unknown >- alias 'unknown' resolves to unknown command 'bargle' >- $ hg help unknown >- alias 'unknown' resolves to unknown command 'bargle' >- >- >-ambiguous >- >- $ hg ambiguous >- alias 'ambiguous' resolves to ambiguous command 's' >- $ hg help ambiguous >- alias 'ambiguous' resolves to ambiguous command 's' >- >- >-recursive >- >- $ hg recursive >- alias 'recursive' resolves to unknown command 'recursive' >- $ hg help recursive >- alias 'recursive' resolves to unknown command 'recursive' >- >- >-no definition >- >- $ hg nodef >- no definition for alias 'nodefinition' >- $ hg help nodef >- no definition for alias 'nodefinition' >- >- >-invalid options >- >- $ hg no--cwd >- error in definition for alias 'no--cwd': --cwd may only be given on the command line >- $ hg help no--cwd >- error in definition for alias 'no--cwd': --cwd may only be given on the command line >- $ hg no-R >- error in definition for alias 'no-R': -R may only be given on the command line >- $ hg help no-R >- error in definition for alias 'no-R': -R may only be given on the command line >- $ hg no--repo >- error in definition for alias 'no--repo': --repo may only be given on the command line >- $ hg help no--repo >- error in definition for alias 'no--repo': --repo may only be given on the command line >- $ hg no--repository >- error in definition for alias 'no--repository': --repository may only be given on the command line >- $ hg help no--repository >- error in definition for alias 'no--repository': --repository may only be given on the command line >- >- $ cd alias >- >- >-no usage >- >- $ hg nousage >- no rollback information available >- >- $ echo foo > foo >- $ hg ci -Amfoo >- adding foo >- >- >-with opts >- >- $ hg cleanst >- C foo >- >- >-with opts and whitespace >- >- $ hg shortlog >- 0 e63c23eaa88a | 1970-01-01 00:00 +0000 >- >- >-interaction with defaults >- >- $ hg mylog >- 0:e63c23eaa88a >- $ hg lognull >- -1:000000000000 >- >- >-properly recursive >- >- $ hg dln >- changeset: -1:0000000000000000000000000000000000000000 >- parent: -1:0000000000000000000000000000000000000000 >- parent: -1:0000000000000000000000000000000000000000 >- manifest: -1:0000000000000000000000000000000000000000 >- user: >- date: Thu Jan 01 00:00:00 1970 +0000 >- extra: branch=default >- >- >- >-path expanding >- >- $ FOO=`pwd` hg put >- $ cat 0.diff >- # HG changeset patch >- # User test >- # Date 0 0 >- # Node ID e63c23eaa88ae77967edcf4ea194d31167c478b0 >- # Parent 0000000000000000000000000000000000000000 >- foo >- >- diff -r 000000000000 -r e63c23eaa88a foo >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/foo Thu Jan 01 00:00:00 1970 +0000 >- @@ -0,0 +1,1 @@ >- +foo >- >- >-simple shell aliases >- >- $ hg blank >- >- $ hg blank foo >- >- $ hg self >- self >- $ hg echo >- >- $ hg echo foo >- foo >- $ hg echo 'test $2' foo >- test $2 foo >- $ hg echo1 foo bar baz >- foo >- $ hg echo2 foo bar baz >- bar >- $ hg echo13 foo bar baz test >- foo baz >- $ hg echo2 foo >- >- $ echo bar > bar >- $ hg ci -qA -m bar >- $ hg count . >- 1 >- $ hg count 'branch(default)' >- 2 >- $ hg mcount -r '"branch(default)"' >- 2 >- >- $ hg tglog >- @ 1:7e7f92de180e: 'bar' >- | >- o 0:e63c23eaa88a: 'foo' >- >- >-shell aliases with global options >- >- $ hg init sub >- $ cd sub >- $ hg count 'branch(default)' >- 0 >- $ hg -v count 'branch(default)' >- 0 >- $ hg -R .. count 'branch(default)' >- 0 >- $ hg --cwd .. count 'branch(default)' >- 2 >- $ hg echo --cwd .. >- --cwd .. >- >- >-repo specific shell aliases >- >- $ cat >> .hg/hgrc <<EOF >- > [alias] >- > subalias = !echo sub \$@ >- > EOF >- $ cat >> ../.hg/hgrc <<EOF >- > [alias] >- > mainalias = !echo main \$@ >- > EOF >- >- >-shell alias defined in current repo >- >- $ hg subalias >- sub >- $ hg --cwd .. subalias > /dev/null >- hg: unknown command 'subalias' >- [255] >- $ hg -R .. subalias > /dev/null >- hg: unknown command 'subalias' >- [255] >- >- >-shell alias defined in other repo >- >- $ hg mainalias > /dev/null >- hg: unknown command 'mainalias' >- [255] >- $ hg -R .. mainalias >- main >- $ hg --cwd .. mainalias >- main >- >- >-invalid arguments >- >- $ hg rt foo >- hg rt: invalid arguments >- hg rt >- >- alias for: hg root >- >- print the root (top) of the current working directory >- >- Print the root directory of the current repository. >- >- Returns 0 on success. >- >- use "hg -v help rt" to show global options >- [255] >- >-invalid global arguments for normal commands, aliases, and shell aliases >- >- $ hg --invalid root >- hg: option --invalid not recognized >- Mercurial Distributed SCM >- >- basic commands: >- >- add add the specified files on the next commit >- annotate show changeset information by line for each file >- clone make a copy of an existing repository >- commit commit the specified files or all outstanding changes >- diff diff repository (or selected files) >- export dump the header and diffs for one or more changesets >- forget forget the specified files on the next commit >- init create a new repository in the given directory >- log show revision history of entire repository or files >- merge merge working directory with another revision >- pull pull changes from the specified source >- push push changes to the specified destination >- remove remove the specified files on the next commit >- serve start stand-alone webserver >- status show changed files in the working directory >- summary summarize working directory state >- update update working directory (or switch revisions) >- >- use "hg help" for the full list of commands or "hg -v" for details >- [255] >- $ hg --invalid mylog >- hg: option --invalid not recognized >- Mercurial Distributed SCM >- >- basic commands: >- >- add add the specified files on the next commit >- annotate show changeset information by line for each file >- clone make a copy of an existing repository >- commit commit the specified files or all outstanding changes >- diff diff repository (or selected files) >- export dump the header and diffs for one or more changesets >- forget forget the specified files on the next commit >- init create a new repository in the given directory >- log show revision history of entire repository or files >- merge merge working directory with another revision >- pull pull changes from the specified source >- push push changes to the specified destination >- remove remove the specified files on the next commit >- serve start stand-alone webserver >- status show changed files in the working directory >- summary summarize working directory state >- update update working directory (or switch revisions) >- >- use "hg help" for the full list of commands or "hg -v" for details >- [255] >- $ hg --invalid blank >- hg: option --invalid not recognized >- Mercurial Distributed SCM >- >- basic commands: >- >- add add the specified files on the next commit >- annotate show changeset information by line for each file >- clone make a copy of an existing repository >- commit commit the specified files or all outstanding changes >- diff diff repository (or selected files) >- export dump the header and diffs for one or more changesets >- forget forget the specified files on the next commit >- init create a new repository in the given directory >- log show revision history of entire repository or files >- merge merge working directory with another revision >- pull pull changes from the specified source >- push push changes to the specified destination >- remove remove the specified files on the next commit >- serve start stand-alone webserver >- status show changed files in the working directory >- summary summarize working directory state >- update update working directory (or switch revisions) >- >- use "hg help" for the full list of commands or "hg -v" for details >- [255] >- >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-annotate.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-annotate.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-annotate.t.err >@@ -1,230 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ HGMERGE=true; export HGMERGE >- >-init >- >- $ hg init >- >-commit >- >- $ echo 'a' > a >- $ hg ci -A -m test -u nobody -d '1 0' >- adding a >- >-annotate -c >- >- $ hg annotate -c a >- 8435f90966e4: a >- >-annotate -cl >- >- $ hg annotate -cl a >- 8435f90966e4:1: a >- >-annotate -d >- >- $ hg annotate -d a >- Thu Jan 01 00:00:01 1970 +0000: a >- >-annotate -n >- >- $ hg annotate -n a >- 0: a >- >-annotate -nl >- >- $ hg annotate -nl a >- 0:1: a >- >-annotate -u >- >- $ hg annotate -u a >- nobody: a >- >-annotate -cdnu >- >- $ hg annotate -cdnu a >- nobody 0 8435f90966e4 Thu Jan 01 00:00:01 1970 +0000: a >- >-annotate -cdnul >- >- $ hg annotate -cdnul a >- nobody 0 8435f90966e4 Thu Jan 01 00:00:01 1970 +0000:1: a >- >- $ cat <<EOF >>a >- > a >- > a >- > EOF >- $ hg ci -ma1 -d '1 0' >- $ hg cp a b >- $ hg ci -mb -d '1 0' >- $ cat <<EOF >> b >- > b4 >- > b5 >- > b6 >- > EOF >- $ hg ci -mb2 -d '2 0' >- >-annotate -n b >- >- $ hg annotate -n b >- 0: a >- 1: a >- 1: a >- 3: b4 >- 3: b5 >- 3: b6 >- >-annotate --no-follow b >- >- $ hg annotate --no-follow b >- 2: a >- 2: a >- 2: a >- 3: b4 >- 3: b5 >- 3: b6 >- >-annotate -nl b >- >- $ hg annotate -nl b >- 0:1: a >- 1:2: a >- 1:3: a >- 3:4: b4 >- 3:5: b5 >- 3:6: b6 >- >-annotate -nf b >- >- $ hg annotate -nf b >- 0 a: a >- 1 a: a >- 1 a: a >- 3 b: b4 >- 3 b: b5 >- 3 b: b6 >- >-annotate -nlf b >- >- $ hg annotate -nlf b >- 0 a:1: a >- 1 a:2: a >- 1 a:3: a >- 3 b:4: b4 >- 3 b:5: b5 >- 3 b:6: b6 >- >- $ hg up -C 2 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ cat <<EOF >> b >- > b4 >- > c >- > b5 >- > EOF >- $ hg ci -mb2.1 -d '2 0' >- created new head >- $ hg merge >- merging b >- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg ci -mmergeb -d '3 0' >- >-annotate after merge >- >- $ hg annotate -nf b >- 0 a: a >- 1 a: a >- 1 a: a >- 3 b: b4 >- 4 b: c >- 3 b: b5 >- >-annotate after merge with -l >- >- $ hg annotate -nlf b >- 0 a:1: a >- 1 a:2: a >- 1 a:3: a >- 3 b:4: b4 >- 4 b:5: c >- 3 b:5: b5 >- >- $ hg up -C 1 >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg cp a b >- $ cat <<EOF > b >- > a >- > z >- > a >- > EOF >- $ hg ci -mc -d '3 0' >- created new head >- $ hg merge >- merging b >- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ cat <<EOF >> b >- > b4 >- > c >- > b5 >- > EOF >- $ echo d >> b >- $ hg ci -mmerge2 -d '4 0' >- >-annotate after rename merge >- >- $ hg annotate -nf b >- 0 a: a >- 6 b: z >- 1 a: a >- 3 b: b4 >- 4 b: c >- 3 b: b5 >- 7 b: d >- >-annotate after rename merge with -l >- >- $ hg annotate -nlf b >- 0 a:1: a >- 6 b:2: z >- 1 a:3: a >- 3 b:4: b4 >- 4 b:5: c >- 3 b:5: b5 >- 7 b:7: d >- >-linkrev vs rev >- >- $ hg annotate -r tip -n a >- 0: a >- 1: a >- 1: a >- >-linkrev vs rev with -l >- >- $ hg annotate -r tip -nl a >- 0:1: a >- 1:2: a >- 1:3: a >- >-Issue589: "undelete" sequence leads to crash >- >-annotate was crashing when trying to --follow something >- >-like A -> B -> A >- >-generate ABA rename configuration >- >- $ echo foo > foo >- $ hg add foo >- $ hg ci -m addfoo >- $ hg rename foo bar >- $ hg ci -m renamefoo >- $ hg rename bar foo >- $ hg ci -m renamebar >- >-annotate after ABA with follow >- >- $ hg annotate --follow foo >- foo: foo >- >!.. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-bheads.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-bheads.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-bheads.t.err >@@ -1,367 +1,6 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ heads() > > { > > hg heads --template '{rev}: {desc|firstline|strip} ({branches})\n' "$@" > > } >- >- $ hg init a >- $ cd a >- $ echo 'root' >root >- $ hg add root >- $ hg commit -m "Adding root node" >- $ heads >- 0: Adding root node () >-------- >- $ heads . >- 0: Adding root node () >- >-======= >- >- $ echo 'a' >a >- $ hg add a >- $ hg branch a >- marked working directory as branch a >- $ hg commit -m "Adding a branch" >- $ heads >- 1: Adding a branch (a) >- 0: Adding root node () >-------- >- $ heads . >- 1: Adding a branch (a) >- >-======= >- >- $ hg update -C 0 >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ echo 'b' >b >- $ hg add b >- $ hg branch b >- marked working directory as branch b >- $ hg commit -m "Adding b branch" >- $ heads >- 2: Adding b branch (b) >- 1: Adding a branch (a) >- 0: Adding root node () >-------- >- $ heads . >- 2: Adding b branch (b) >- >-======= >- >- $ echo 'bh1' >bh1 >- $ hg add bh1 >- $ hg commit -m "Adding b branch head 1" >- $ heads >- 3: Adding b branch head 1 (b) >- 1: Adding a branch (a) >- 0: Adding root node () >-------- >- $ heads . >- 3: Adding b branch head 1 (b) >- >-======= >- >- $ hg update -C 2 >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ echo 'bh2' >bh2 >- $ hg add bh2 >- $ hg commit -m "Adding b branch head 2" >- created new head >- $ heads >- 4: Adding b branch head 2 (b) >- 3: Adding b branch head 1 (b) >- 1: Adding a branch (a) >- 0: Adding root node () >- $ heads . >- 4: Adding b branch head 2 (b) >- 3: Adding b branch head 1 (b) >- >-======= >- >- $ hg update -C 2 >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ echo 'bh3' >bh3 >- $ hg add bh3 >- $ hg commit -m "Adding b branch head 3" >- created new head >- $ heads >- 5: Adding b branch head 3 (b) >- 4: Adding b branch head 2 (b) >- 3: Adding b branch head 1 (b) >- 1: Adding a branch (a) >- 0: Adding root node () >-------- >- $ heads . >- 5: Adding b branch head 3 (b) >- 4: Adding b branch head 2 (b) >- 3: Adding b branch head 1 (b) >- >-======= >- >- $ hg merge 4 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg commit -m "Merging b branch head 2 and b branch head 3" >- $ heads >- 6: Merging b branch head 2 and b branch head 3 (b) >- 3: Adding b branch head 1 (b) >- 1: Adding a branch (a) >- 0: Adding root node () >-------- >- $ heads . >- 6: Merging b branch head 2 and b branch head 3 (b) >- 3: Adding b branch head 1 (b) >- >-======= >- >- $ echo 'c' >c >- $ hg add c >- $ hg branch c >- marked working directory as branch c >- $ hg commit -m "Adding c branch" >- $ heads >- 7: Adding c branch (c) >- 6: Merging b branch head 2 and b branch head 3 (b) >- 3: Adding b branch head 1 (b) >- 1: Adding a branch (a) >- 0: Adding root node () >-------- >- $ heads . >- 7: Adding c branch (c) >- >-======= >- >- $ heads -r 3 . >- no open branch heads found on branches c (started at 3) >- [1] >- $ heads -r 2 . >- 7: Adding c branch (c) >-------- >- $ hg update -C 4 >- 0 files updated, 0 files merged, 2 files removed, 0 files unresolved >-------- >- $ heads -r 3 . >- 3: Adding b branch head 1 (b) >-------- >- $ heads -r 2 . >- 6: Merging b branch head 2 and b branch head 3 (b) >- 3: Adding b branch head 1 (b) >-------- >- $ heads -r 7 . >- no open branch heads found on branches b (started at 7) >- [1] >- >-======= >- >- $ for i in 0 1 2 3 4 5 6 7; do >- > hg update -C "$i" >- > heads >- > echo '-------' >- > heads . >- > echo '-------' >- > done >- 0 files updated, 0 files merged, 2 files removed, 0 files unresolved >- 7: Adding c branch (c) >- 6: Merging b branch head 2 and b branch head 3 (b) >- 3: Adding b branch head 1 (b) >- 1: Adding a branch (a) >- 0: Adding root node () >- ------- >- 0: Adding root node () >- ------- >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- 7: Adding c branch (c) >- 6: Merging b branch head 2 and b branch head 3 (b) >- 3: Adding b branch head 1 (b) >- 1: Adding a branch (a) >- 0: Adding root node () >- ------- >- 1: Adding a branch (a) >- ------- >- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved >- 7: Adding c branch (c) >- 6: Merging b branch head 2 and b branch head 3 (b) >- 3: Adding b branch head 1 (b) >- 1: Adding a branch (a) >- 0: Adding root node () >- ------- >- 6: Merging b branch head 2 and b branch head 3 (b) >- 3: Adding b branch head 1 (b) >- ------- >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- 7: Adding c branch (c) >- 6: Merging b branch head 2 and b branch head 3 (b) >- 3: Adding b branch head 1 (b) >- 1: Adding a branch (a) >- 0: Adding root node () >- ------- >- 6: Merging b branch head 2 and b branch head 3 (b) >- 3: Adding b branch head 1 (b) >- ------- >- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved >- 7: Adding c branch (c) >- 6: Merging b branch head 2 and b branch head 3 (b) >- 3: Adding b branch head 1 (b) >- 1: Adding a branch (a) >- 0: Adding root node () >- ------- >- 6: Merging b branch head 2 and b branch head 3 (b) >- 3: Adding b branch head 1 (b) >- ------- >- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved >- 7: Adding c branch (c) >- 6: Merging b branch head 2 and b branch head 3 (b) >- 3: Adding b branch head 1 (b) >- 1: Adding a branch (a) >- 0: Adding root node () >- ------- >- 6: Merging b branch head 2 and b branch head 3 (b) >- 3: Adding b branch head 1 (b) >- ------- >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- 7: Adding c branch (c) >- 6: Merging b branch head 2 and b branch head 3 (b) >- 3: Adding b branch head 1 (b) >- 1: Adding a branch (a) >- 0: Adding root node () >- ------- >- 6: Merging b branch head 2 and b branch head 3 (b) >- 3: Adding b branch head 1 (b) >- ------- >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- 7: Adding c branch (c) >- 6: Merging b branch head 2 and b branch head 3 (b) >- 3: Adding b branch head 1 (b) >- 1: Adding a branch (a) >- 0: Adding root node () >- ------- >- 7: Adding c branch (c) >- ------- >- >-======= >- >- $ for i in a b c z; do >- > heads "$i" >- > echo '-------' >- > done >- 1: Adding a branch (a) >- ------- >- 6: Merging b branch head 2 and b branch head 3 (b) >- 3: Adding b branch head 1 (b) >- ------- >- 7: Adding c branch (c) >- ------- >- abort: unknown revision 'z'! >- ------- >- >-======= >- >- $ heads 0 1 2 3 4 5 6 7 >- 7: Adding c branch (c) >- 6: Merging b branch head 2 and b branch head 3 (b) >- 3: Adding b branch head 1 (b) >- 1: Adding a branch (a) >- 0: Adding root node () >- >-Topological heads: >- >- $ heads -t >- 7: Adding c branch (c) >- 3: Adding b branch head 1 (b) >- 1: Adding a branch (a) >- >- $ cd .. >-______________ >- >-"created new head" message tests >- >- $ hg init newheadmsg >- $ cd newheadmsg >- >-Init: no msg >- >- $ echo 1 > a >- $ hg ci -Am "a0: Initial root" >- adding a >- $ echo 2 >> a >- $ hg ci -m "a1 (HN)" >- >- $ hg branch b >- marked working directory as branch b >- $ echo 1 > b >- $ hg ci -Am "b2: Initial root for branch b" >- adding b >- $ echo 2 >> b >- $ hg ci -m "b3 (HN)" >- >-Case NN: msg >- >- $ hg up -q null >- $ hg branch -f b >- marked working directory as branch b >- $ echo 1 > bb >- $ hg ci -Am "b4 (NN): new topo root for branch b" >- adding bb >- created new head >- >-Case HN: no msg >- >- $ echo 2 >> bb >- $ hg ci -m "b5 (HN)" >- >-Case BN: msg >- >- $ hg branch -f default >- marked working directory as branch default >- $ echo 1 > aa >- $ hg ci -Am "a6 (BN): new branch root" >- adding aa >- created new head >- >-Case CN: msg >- >- $ hg up -q 4 >- $ echo 3 >> bbb >- $ hg ci -Am "b7 (CN): regular new head" >- adding bbb >- created new head >- >-Case BB: msg >- >- $ hg up -q 4 >- $ hg merge -q 3 >- $ hg branch -f default >- marked working directory as branch default >- $ hg ci -m "a8 (BB): weird new branch root" >- created new head >- >-Case CB: msg >- >- $ hg up -q 4 >- $ hg merge -q 1 >- $ hg ci -m "b9 (CB): new head from branch merge" >- created new head >- >-Case HB: no msg >- >- $ hg up -q 7 >- $ hg merge -q 6 >- $ hg ci -m "b10 (HB): continuing head from branch merge" >- >-Case CC: msg >- >- $ hg up -q 4 >- $ hg merge -q 2 >- $ hg ci -m "b11 (CC): new head from merge" >- created new head >- >-Case CH: no msg >- >- $ hg up -q 2 >- $ hg merge -q 10 >- $ hg ci -m "b12 (CH): continuing head from merge" >- >-Case HH: no msg >- >- $ hg merge -q 3 >- $ hg ci -m "b12 (HH): merging two heads" >- >!.. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-backout.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-backout.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-backout.t.err >@@ -1,287 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ hg init basic >- $ cd basic >- >-should complain >- >- $ hg backout >- abort: please specify a revision to backout >- [255] >- $ hg backout -r 0 0 >- abort: please specify just one revision >- [255] >- >-basic operation >- >- $ echo a > a >- $ hg commit -d '0 0' -A -m a >- adding a >- $ echo b >> a >- $ hg commit -d '1 0' -m b >- >- $ hg backout -d '2 0' tip --tool=true >- reverting a >- changeset 2:2929462c3dff backs out changeset 1:a820f4f40a57 >- $ cat a >- a >- >-file that was removed is recreated >- >- $ cd .. >- $ hg init remove >- $ cd remove >- >- $ echo content > a >- $ hg commit -d '0 0' -A -m a >- adding a >- >- $ hg rm a >- $ hg commit -d '1 0' -m b >- >- $ hg backout -d '2 0' tip --tool=true >- adding a >- changeset 2:de31bdc76c0d backs out changeset 1:76862dcce372 >- $ cat a >- content >- >-backout of backout is as if nothing happened >- >- $ hg backout -d '3 0' --merge tip --tool=true >- removing a >- changeset 3:7f6d0f120113 backs out changeset 2:de31bdc76c0d >- $ cat a 2>/dev/null || echo cat: a: No such file or directory >- cat: a: No such file or directory >- >-across branch >- >- $ cd .. >- $ hg init branch >- $ cd branch >- $ echo a > a >- $ hg ci -Am0 >- adding a >- $ echo b > b >- $ hg ci -Am1 >- adding b >- $ hg co -C 0 >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- >-should fail >- >- $ hg backout 1 >- abort: cannot backout change on a different branch >- [255] >- $ echo c > c >- $ hg ci -Am2 >- adding c >- created new head >- >-should fail >- >- $ hg backout 1 >- abort: cannot backout change on a different branch >- [255] >- >-backout with merge >- >- $ cd .. >- $ hg init merge >- $ cd merge >- >- $ echo line 1 > a >- $ echo line 2 >> a >- $ hg commit -d '0 0' -A -m a >- adding a >- >-remove line 1 >- >- $ echo line 2 > a >- $ hg commit -d '1 0' -m b >- >- $ echo line 3 >> a >- $ hg commit -d '2 0' -m c >- >- $ hg backout --merge -d '3 0' 1 --tool=true >- reverting a >- created new head >- changeset 3:26b8ccb9ad91 backs out changeset 1:5a50a024c182 >- merging with changeset 3:26b8ccb9ad91 >- merging a >- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg commit -d '4 0' -m d >- >-check line 1 is back >- >- $ cat a >- line 1 >- line 2 >- line 3 >- >-backout should not back out subsequent changesets >- >- $ hg init onecs >- $ cd onecs >- $ echo 1 > a >- $ hg commit -d '0 0' -A -m a >- adding a >- $ echo 2 >> a >- $ hg commit -d '1 0' -m b >- $ echo 1 > b >- $ hg commit -d '2 0' -A -m c >- adding b >- >-without --merge >- $ hg backout -d '3 0' 1 --tool=true >- reverting a >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg locate b >- b >- $ hg update -C tip >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg locate b >- b >- >-with --merge >- $ hg backout --merge -d '3 0' 1 --tool=true >- reverting a >- created new head >- changeset 3:3202beb76721 backs out changeset 1:22bca4c721e5 >- merging with changeset 3:3202beb76721 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg locate b >- b >- $ hg update -C tip >- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg locate b >- [1] >- >- $ cd .. >- $ hg init m >- $ cd m >- $ echo a > a >- $ hg commit -d '0 0' -A -m a >- adding a >- $ echo b > b >- $ hg commit -d '1 0' -A -m b >- adding b >- $ echo c > c >- $ hg commit -d '2 0' -A -m b >- adding c >- $ hg update 1 >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ echo d > d >- $ hg commit -d '3 0' -A -m c >- adding d >- created new head >- $ hg merge 2 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg commit -d '4 0' -A -m d >- >-backout of merge should fail >- >- $ hg backout 4 >- abort: cannot backout a merge changeset without --parent >- [255] >- >-backout of merge with bad parent should fail >- >- $ hg backout --parent 0 4 >- abort: cb9a9f314b8b is not a parent of b2f3bb92043e >- [255] >- >-backout of non-merge with parent should fail >- >- $ hg backout --parent 0 3 >- abort: cannot use --parent on non-merge changeset >- [255] >- >-backout with valid parent should be ok >- >- $ hg backout -d '5 0' --parent 2 4 --tool=true >- removing d >- changeset 5:10e5328c8435 backs out changeset 4:b2f3bb92043e >- >- $ hg rollback >- rolling back to revision 4 (undo commit) >- $ hg update -C >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >- $ hg backout -d '6 0' --parent 3 4 --tool=true >- removing c >- changeset 5:033590168430 backs out changeset 4:b2f3bb92043e >- >- $ cd .. >- >-named branches >- >- $ hg init named_branches >- $ cd named_branches >- >- $ echo default > default >- $ hg ci -d '0 0' -Am default >- adding default >- $ hg branch branch1 >- marked working directory as branch branch1 >- $ echo branch1 > file1 >- $ hg ci -d '1 0' -Am file1 >- adding file1 >- $ hg branch branch2 >- marked working directory as branch branch2 >- $ echo branch2 > file2 >- $ hg ci -d '2 0' -Am file2 >- adding file2 >- >-without --merge >- $ hg backout -r 1 --tool=true >- removing file1 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg branch >- branch2 >- $ hg status -A >- R file1 >- C default >- C file2 >- >-with --merge >- $ hg update -qC >- $ hg backout --merge -d '3 0' -r 1 -m 'backout on branch1' --tool=true >- removing file1 >- created new head >- changeset 3:d4e8f6db59fb backs out changeset 1:bf1602f437f3 >- merging with changeset 3:d4e8f6db59fb >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg update -q -C 2 >- >-on branch2 with branch1 not merged, so file1 should still exist: >- >- $ hg id >- 45bbcd363bf0 (branch2) >- $ hg st -A >- C default >- C file1 >- C file2 >- >-on branch2 with branch1 merged, so file1 should be gone: >- >- $ hg merge >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg ci -d '4 0' -m 'merge backout of branch1' >- $ hg id >- 22149cdde76d (branch2) tip >- $ hg st -A >- C default >- C file2 >- >-on branch1, so no file1 and file2: >- >- $ hg co -C branch1 >- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg id >- bf1602f437f3 (branch1) >- $ hg st -A >- C default >- C file1 >!... >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-bisect.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-bisect.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-bisect.t.err >@@ -1,419 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ hg init >- >- >-committing changes >- >- $ count=0 >- $ echo > a >- $ while test $count -lt 32 ; do >- > echo 'a' >> a >- > test $count -eq 0 && hg add >- > hg ci -m "msg $count" -d "$count 0" >- > count=`expr $count + 1` >- > done >- adding a >- >- >- $ hg log >- changeset: 31:58c80a7c8a40 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:31 1970 +0000 >- summary: msg 31 >- >- changeset: 30:ed2d2f24b11c >- user: test >- date: Thu Jan 01 00:00:30 1970 +0000 >- summary: msg 30 >- >- changeset: 29:b5bd63375ab9 >- user: test >- date: Thu Jan 01 00:00:29 1970 +0000 >- summary: msg 29 >- >- changeset: 28:8e0c2264c8af >- user: test >- date: Thu Jan 01 00:00:28 1970 +0000 >- summary: msg 28 >- >- changeset: 27:288867a866e9 >- user: test >- date: Thu Jan 01 00:00:27 1970 +0000 >- summary: msg 27 >- >- changeset: 26:3efc6fd51aeb >- user: test >- date: Thu Jan 01 00:00:26 1970 +0000 >- summary: msg 26 >- >- changeset: 25:02a84173a97a >- user: test >- date: Thu Jan 01 00:00:25 1970 +0000 >- summary: msg 25 >- >- changeset: 24:10e0acd3809e >- user: test >- date: Thu Jan 01 00:00:24 1970 +0000 >- summary: msg 24 >- >- changeset: 23:5ec79163bff4 >- user: test >- date: Thu Jan 01 00:00:23 1970 +0000 >- summary: msg 23 >- >- changeset: 22:06c7993750ce >- user: test >- date: Thu Jan 01 00:00:22 1970 +0000 >- summary: msg 22 >- >- changeset: 21:e5db6aa3fe2a >- user: test >- date: Thu Jan 01 00:00:21 1970 +0000 >- summary: msg 21 >- >- changeset: 20:7128fb4fdbc9 >- user: test >- date: Thu Jan 01 00:00:20 1970 +0000 >- summary: msg 20 >- >- changeset: 19:52798545b482 >- user: test >- date: Thu Jan 01 00:00:19 1970 +0000 >- summary: msg 19 >- >- changeset: 18:86977a90077e >- user: test >- date: Thu Jan 01 00:00:18 1970 +0000 >- summary: msg 18 >- >- changeset: 17:03515f4a9080 >- user: test >- date: Thu Jan 01 00:00:17 1970 +0000 >- summary: msg 17 >- >- changeset: 16:a2e6ea4973e9 >- user: test >- date: Thu Jan 01 00:00:16 1970 +0000 >- summary: msg 16 >- >- changeset: 15:e7fa0811edb0 >- user: test >- date: Thu Jan 01 00:00:15 1970 +0000 >- summary: msg 15 >- >- changeset: 14:ce8f0998e922 >- user: test >- date: Thu Jan 01 00:00:14 1970 +0000 >- summary: msg 14 >- >- changeset: 13:9d7d07bc967c >- user: test >- date: Thu Jan 01 00:00:13 1970 +0000 >- summary: msg 13 >- >- changeset: 12:1941b52820a5 >- user: test >- date: Thu Jan 01 00:00:12 1970 +0000 >- summary: msg 12 >- >- changeset: 11:7b4cd9578619 >- user: test >- date: Thu Jan 01 00:00:11 1970 +0000 >- summary: msg 11 >- >- changeset: 10:7c5eff49a6b6 >- user: test >- date: Thu Jan 01 00:00:10 1970 +0000 >- summary: msg 10 >- >- changeset: 9:eb44510ef29a >- user: test >- date: Thu Jan 01 00:00:09 1970 +0000 >- summary: msg 9 >- >- changeset: 8:453eb4dba229 >- user: test >- date: Thu Jan 01 00:00:08 1970 +0000 >- summary: msg 8 >- >- changeset: 7:03750880c6b5 >- user: test >- date: Thu Jan 01 00:00:07 1970 +0000 >- summary: msg 7 >- >- changeset: 6:a3d5c6fdf0d3 >- user: test >- date: Thu Jan 01 00:00:06 1970 +0000 >- summary: msg 6 >- >- changeset: 5:7874a09ea728 >- user: test >- date: Thu Jan 01 00:00:05 1970 +0000 >- summary: msg 5 >- >- changeset: 4:9b2ba8336a65 >- user: test >- date: Thu Jan 01 00:00:04 1970 +0000 >- summary: msg 4 >- >- changeset: 3:b53bea5e2fcb >- user: test >- date: Thu Jan 01 00:00:03 1970 +0000 >- summary: msg 3 >- >- changeset: 2:db07c04beaca >- user: test >- date: Thu Jan 01 00:00:02 1970 +0000 >- summary: msg 2 >- >- changeset: 1:5cd978ea5149 >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: msg 1 >- >- changeset: 0:b99c7b9c8e11 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: msg 0 >- >- >- $ hg up -C >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-bisect test >- >- $ hg bisect -r >- $ hg bisect -b >- $ hg bisect -g 1 >- Testing changeset 16:a2e6ea4973e9 (30 changesets remaining, ~4 tests) >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg bisect -g >- Testing changeset 23:5ec79163bff4 (15 changesets remaining, ~3 tests) >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-skip >- >- $ hg bisect -s >- Testing changeset 24:10e0acd3809e (15 changesets remaining, ~3 tests) >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg bisect -g >- Testing changeset 27:288867a866e9 (7 changesets remaining, ~2 tests) >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg bisect -g >- Testing changeset 29:b5bd63375ab9 (4 changesets remaining, ~2 tests) >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg bisect -b >- Testing changeset 28:8e0c2264c8af (2 changesets remaining, ~1 tests) >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg bisect -g >- The first bad revision is: >- changeset: 29:b5bd63375ab9 >- user: test >- date: Thu Jan 01 00:00:29 1970 +0000 >- summary: msg 29 >- >- >-mark revsets instead of single revs >- >- $ hg bisect -r >- $ hg bisect -b "0::3" >- $ hg bisect -s "13::16" >- $ hg bisect -g "26::tip" >- Testing changeset 12:1941b52820a5 (23 changesets remaining, ~4 tests) >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ cat .hg/bisect.state >- skip 9d7d07bc967ca98ad0600c24953fd289ad5fa991 >- skip ce8f0998e922c179e80819d5066fbe46e2998784 >- skip e7fa0811edb063f6319531f0d0a865882138e180 >- skip a2e6ea4973e9196ddd3386493b0c214b41fd97d3 >- bad b99c7b9c8e11558adef3fad9af211c58d46f325b >- bad 5cd978ea51499179507ee7b6f340d2dbaa401185 >- bad db07c04beaca44cf24832541e7f4a2346a95275b >- bad b53bea5e2fcb30d3e00bd3409507a5659ce0fd8b >- good 3efc6fd51aeb8594398044c6c846ca59ae021203 >- good 288867a866e9adb7a29880b66936c874b80f4651 >- good 8e0c2264c8af790daf3585ada0669d93dee09c83 >- good b5bd63375ab9a290419f2024b7f4ee9ea7ce90a8 >- good ed2d2f24b11c368fa8aa0da9f4e1db580abade59 >- good 58c80a7c8a4025a94cedaf7b4a4e3124e8909a96 >- >-bisect reverse test >- >- $ hg bisect -r >- $ hg bisect -b null >- $ hg bisect -g tip >- Testing changeset 15:e7fa0811edb0 (32 changesets remaining, ~5 tests) >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg bisect -g >- Testing changeset 7:03750880c6b5 (16 changesets remaining, ~4 tests) >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-skip >- >- $ hg bisect -s >- Testing changeset 6:a3d5c6fdf0d3 (16 changesets remaining, ~4 tests) >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg bisect -g >- Testing changeset 2:db07c04beaca (7 changesets remaining, ~2 tests) >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg bisect -g >- Testing changeset 0:b99c7b9c8e11 (3 changesets remaining, ~1 tests) >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg bisect -b >- Testing changeset 1:5cd978ea5149 (2 changesets remaining, ~1 tests) >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg bisect -g >- The first good revision is: >- changeset: 1:5cd978ea5149 >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: msg 1 >- >- >- $ hg bisect -r >- $ hg bisect -g tip >- $ hg bisect -b tip >- abort: starting revisions are not directly related >- [255] >- >- $ hg bisect -r >- $ hg bisect -g null >- $ hg bisect -bU tip >- Testing changeset 15:e7fa0811edb0 (32 changesets remaining, ~5 tests) >- $ hg id >- 5cd978ea5149 >- >- >-Issue1228: hg bisect crashes when you skip the last rev in bisection >-Issue1182: hg bisect exception >- >- $ hg bisect -r >- $ hg bisect -b 4 >- $ hg bisect -g 0 >- Testing changeset 2:db07c04beaca (4 changesets remaining, ~2 tests) >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg bisect -s >- Testing changeset 1:5cd978ea5149 (4 changesets remaining, ~2 tests) >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg bisect -s >- Testing changeset 3:b53bea5e2fcb (4 changesets remaining, ~2 tests) >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg bisect -s >- Due to skipped revisions, the first bad revision could be any of: >- changeset: 1:5cd978ea5149 >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: msg 1 >- >- changeset: 2:db07c04beaca >- user: test >- date: Thu Jan 01 00:00:02 1970 +0000 >- summary: msg 2 >- >- changeset: 3:b53bea5e2fcb >- user: test >- date: Thu Jan 01 00:00:03 1970 +0000 >- summary: msg 3 >- >- changeset: 4:9b2ba8336a65 >- user: test >- date: Thu Jan 01 00:00:04 1970 +0000 >- summary: msg 4 >- >- >- >-reproduce non converging bisect, issue1182 >- >- $ hg bisect -r >- $ hg bisect -g 0 >- $ hg bisect -b 2 >- Testing changeset 1:5cd978ea5149 (2 changesets remaining, ~1 tests) >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg bisect -s >- Due to skipped revisions, the first bad revision could be any of: >- changeset: 1:5cd978ea5149 >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: msg 1 >- >- changeset: 2:db07c04beaca >- user: test >- date: Thu Jan 01 00:00:02 1970 +0000 >- summary: msg 2 >- >- >- >-test no action >- >- $ hg bisect -r >- $ hg bisect >- abort: cannot bisect (no known good revisions) >- [255] >- >- >-reproduce AssertionError, issue1445 >- >- $ hg bisect -r >- $ hg bisect -b 6 >- $ hg bisect -g 0 >- Testing changeset 3:b53bea5e2fcb (6 changesets remaining, ~2 tests) >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg bisect -s >- Testing changeset 2:db07c04beaca (6 changesets remaining, ~2 tests) >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg bisect -s >- Testing changeset 4:9b2ba8336a65 (6 changesets remaining, ~2 tests) >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg bisect -s >- Testing changeset 1:5cd978ea5149 (6 changesets remaining, ~2 tests) >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg bisect -s >- Testing changeset 5:7874a09ea728 (6 changesets remaining, ~2 tests) >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg bisect -g >- The first bad revision is: >- changeset: 6:a3d5c6fdf0d3 >- user: test >- date: Thu Jan 01 00:00:06 1970 +0000 >- summary: msg 6 >- >- >- $ set +e >- >-test invalid command >-assuming that the shell returns 127 if command not found ... >- >- $ hg bisect -r >- $ hg bisect --command 'exit 127' >- abort: failed to execute exit 127 >- [255] >- >- >-test bisecting command >- >- $ cat > script.py <<EOF >- > #!/usr/bin/env python >- > import sys >- > from mercurial import ui, hg >- > repo = hg.repository(ui.ui(), '.') >- > if repo['.'].rev() < 6: >- > sys.exit(1) >- > EOF >- $ chmod +x script.py >- $ hg bisect -r >- $ hg bisect --good tip >- $ hg bisect --bad 0 >- Testing changeset 15:e7fa0811edb0 (31 changesets remaining, ~4 tests) >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg bisect --command "'`pwd`/script.py' and some parameters" >- Changeset 15:e7fa0811edb0: good >- Changeset 7:03750880c6b5: good >- Changeset 3:b53bea5e2fcb: bad >- Changeset 5:7874a09ea728: bad >- Changeset 6:a3d5c6fdf0d3: good >- The first good revision is: >- changeset: 6:a3d5c6fdf0d3 >- user: test >- date: Thu Jan 01 00:00:06 1970 +0000 >- summary: msg 6 >- >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-bookmarks.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-bookmarks.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-bookmarks.t.err >@@ -1,213 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ echo "[extensions]" >> $HGRCPATH >- $ echo "bookmarks=" >> $HGRCPATH >- >- $ hg init >- >-no bookmarks >- >- $ hg bookmarks >- no bookmarks set >- >-bookmark rev -1 >- >- $ hg bookmark X >- >-list bookmarks >- >- $ hg bookmarks >- * X -1:000000000000 >- >-list bookmarks with color >- >- $ hg --config extensions.color= --config color.mode=ansi \ >- > bookmarks --color=always >- [0;32m * X -1:000000000000[0m >- >- $ echo a > a >- $ hg add a >- $ hg commit -m 0 >- >-bookmark X moved to rev 0 >- >- $ hg bookmarks >- * X 0:f7b1eb17ad24 >- >-look up bookmark >- >- $ hg log -r X >- changeset: 0:f7b1eb17ad24 >- tag: X >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 0 >- >- >-second bookmark for rev 0 >- >- $ hg bookmark X2 >- >-bookmark rev -1 again >- >- $ hg bookmark -r null Y >- >-list bookmarks >- >- $ hg bookmarks >- * X2 0:f7b1eb17ad24 >- * X 0:f7b1eb17ad24 >- Y -1:000000000000 >- >- $ echo b > b >- $ hg add b >- $ hg commit -m 1 >- >-bookmarks revset >- >- $ hg log -r 'bookmark()' >- changeset: 1:925d80f479bb >- tag: X >- tag: X2 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 1 >- >- $ hg log -r 'bookmark(Y)' >- $ hg log -r 'bookmark(X2)' >- changeset: 1:925d80f479bb >- tag: X >- tag: X2 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 1 >- >- $ hg help revsets | grep 'bookmark(' >- "bookmark([name])" >- >-bookmarks X and X2 moved to rev 1, Y at rev -1 >- >- $ hg bookmarks >- * X2 1:925d80f479bb >- * X 1:925d80f479bb >- Y -1:000000000000 >- >-bookmark rev 0 again >- >- $ hg bookmark -r 0 Z >- >- $ echo c > c >- $ hg add c >- $ hg commit -m 2 >- >-bookmarks X and X2 moved to rev 2, Y at rev -1, Z at rev 0 >- >- $ hg bookmarks >- * X2 2:0316ce92851d >- * X 2:0316ce92851d >- Z 0:f7b1eb17ad24 >- Y -1:000000000000 >- >-rename nonexistent bookmark >- >- $ hg bookmark -m A B >- abort: a bookmark of this name does not exist >- [255] >- >-rename to existent bookmark >- >- $ hg bookmark -m X Y >- abort: a bookmark of the same name already exists >- [255] >- >-force rename to existent bookmark >- >- $ hg bookmark -f -m X Y >- >-list bookmarks >- >- $ hg bookmark >- * X2 2:0316ce92851d >- * Y 2:0316ce92851d >- Z 0:f7b1eb17ad24 >- >-rename without new name >- >- $ hg bookmark -m Y >- abort: new bookmark name required >- [255] >- >-delete without name >- >- $ hg bookmark -d >- abort: bookmark name required >- [255] >- >-delete nonexistent bookmark >- >- $ hg bookmark -d A >- abort: a bookmark of this name does not exist >- [255] >- >-bookmark name with spaces should be stripped >- >- $ hg bookmark ' x y ' >- >-list bookmarks >- >- $ hg bookmarks >- * X2 2:0316ce92851d >- * Y 2:0316ce92851d >- Z 0:f7b1eb17ad24 >- * x y 2:0316ce92851d >- >-look up stripped bookmark name >- >- $ hg log -r '"x y"' >- changeset: 2:0316ce92851d >- tag: X2 >- tag: Y >- tag: tip >- tag: x y >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 2 >- >- >-reject bookmark name with newline >- >- $ hg bookmark ' >- > ' >- abort: bookmark name cannot contain newlines >- [255] >- >-bookmark with existing name >- >- $ hg bookmark Z >- abort: a bookmark of the same name already exists >- [255] >- >-force bookmark with existing name >- >- $ hg bookmark -f Z >- >-list bookmarks >- >- $ hg bookmark >- * X2 2:0316ce92851d >- * Y 2:0316ce92851d >- * Z 2:0316ce92851d >- * x y 2:0316ce92851d >- >-revision but no bookmark name >- >- $ hg bookmark -r . >- abort: bookmark name required >- [255] >- >-bookmark name with whitespace only >- >- $ hg bookmark ' ' >- abort: bookmark names cannot consist entirely of whitespace >- [255] >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-branch-option.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-branch-option.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-branch-option.t.err >@@ -1,126 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > test branch selection options > > $ hg init branch >- $ cd branch >- $ hg branch a >- marked working directory as branch a >- $ echo a > foo >- $ hg ci -d '0 0' -Ama >- adding foo >- $ echo a2 > foo >- $ hg ci -d '0 0' -ma2 >- $ hg up 0 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg branch c >- marked working directory as branch c >- $ echo c > foo >- $ hg ci -d '0 0' -mc >- $ hg tag -l z >- $ cd .. >- $ hg clone -r 0 branch branch2 >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- updating to branch a >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ cd branch2 >- $ hg up 0 >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg branch b >- marked working directory as branch b >- $ echo b > foo >- $ hg ci -d '0 0' -mb >- $ hg up 0 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg --encoding utf-8 branch æ >- marked working directory as branch æ >- $ echo ae1 > foo >- $ hg ci -d '0 0' -mae1 >- $ hg up 0 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg --encoding utf-8 branch -f æ >- marked working directory as branch æ >- $ echo ae2 > foo >- $ hg ci -d '0 0' -mae2 >- created new head >- $ hg up 0 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg branch -f b >- marked working directory as branch b >- $ echo b2 > foo >- $ hg ci -d '0 0' -mb2 >- created new head >- >-unknown branch and fallback >- >- $ hg in -qbz >- abort: unknown branch 'z'! >- [255] >- $ hg in -q ../branch#z >- 2:f25d57ab0566 >- $ hg out -qbz >- abort: unknown branch 'z'! >- [255] >- >-in rev c branch a >- >- $ hg in -qr c ../branch#a >- 1:dd6e60a716c6 >- 2:f25d57ab0566 >- $ hg in -qr c -b a >- 1:dd6e60a716c6 >- 2:f25d57ab0566 >- >-out branch . >- >- $ hg out -q ../branch#. >- 1:b84708d77ab7 >- 4:65511d0e2b55 >- $ hg out -q -b . >- 1:b84708d77ab7 >- 4:65511d0e2b55 >- >-out branch . non-ascii >- >- $ hg --encoding utf-8 up æ >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg --encoding latin1 out -q ../branch#. >- 2:df5a44224d4e >- 3:4f4a5125ca10 >- $ hg --encoding latin1 out -q -b . >- 2:df5a44224d4e >- 3:4f4a5125ca10 >- >-clone branch b >- >- $ cd .. >- $ hg clone branch2#b branch3 >- adding changesets >- adding manifests >- adding file changes >- added 3 changesets with 3 changes to 1 files (+1 heads) >- updating to branch b >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg -q -R branch3 heads b >- 2:65511d0e2b55 >- 1:b84708d77ab7 >- $ hg -q -R branch3 parents >- 2:65511d0e2b55 >- $ rm -rf branch3 >- >-clone rev a branch b >- >- $ hg clone -r a branch2#b branch3 >- adding changesets >- adding manifests >- adding file changes >- added 3 changesets with 3 changes to 1 files (+1 heads) >- updating to branch a >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg -q -R branch3 heads b >- 2:65511d0e2b55 >- 1:b84708d77ab7 >- $ hg -q -R branch3 parents >- 0:5b65ba7c951d >- $ rm -rf branch3 >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-bisect2.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-bisect2.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-bisect2.t.err >@@ -1,3 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > # The tests in test-bisect are done on a linear history. Here the > # following repository history is used for testing: > # >@@ -26,404 +28,3 @@ > init > > $ hg init >- >-committing changes >- >- $ echo > a >- $ echo '0' >> a >- $ hg add a >- $ hg ci -m "0" -d "0 0" >- $ echo '1' >> a >- $ hg ci -m "1" -d "1 0" >- $ echo '2' >> a >- $ hg ci -m "2" -d "2 0" >- $ echo '3' >> a >- $ hg ci -m "3" -d "3 0" >- $ echo '4' >> a >- $ hg ci -m "4" -d "4 0" >- >-create branch >- >- $ hg up -r 2 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo '5' >> b >- $ hg add b >- $ hg ci -m "5" -d "5 0" >- created new head >- >-merge >- >- $ hg merge >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg ci -m "merge 4,5" -d "6 0" >- >-create branch >- >- $ hg up -r 4 >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ echo '7' > c >- $ hg add c >- $ hg ci -m "7" -d "7 0" >- created new head >- >-create branch >- >- $ hg up -r 1 >- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ echo '8' > d >- $ hg add d >- $ hg ci -m "8" -d "8 0" >- created new head >- $ echo '9' >> d >- $ hg ci -m "9" -d "9 0" >- >-merge >- >- $ hg merge -r 6 >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg ci -m "merge 6,9" -d "10 0" >- >-create branch >- >- $ hg up -r 8 >- 2 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ echo '11' > e >- $ hg add e >- $ hg ci -m "11" -d "11 0" >- created new head >- $ echo '12' >> e >- $ hg ci -m "12" -d "12 0" >- $ echo '13' >> e >- $ hg ci -m "13" -d "13 0" >- >-create branch >- >- $ hg up -r 11 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo '14' > f >- $ hg add f >- $ hg ci -m "14" -d "14 0" >- created new head >- >-merge >- >- $ hg up -r 13 -C >- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg merge -r 10 >- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg ci -m "merge 10,13" -d "15 0" >- $ echo '16' >> e >- $ hg ci -m "16" -d "16 0" >- $ echo '17' >> e >- $ hg ci -m "17" -d "17 0" >- >-create branch >- >- $ hg up -r 15 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo '18' >> e >- $ hg ci -m "18" -d "18 0" >- created new head >- >-log >- >- $ hg log >- changeset: 18:d42e18c7bc9b >- tag: tip >- parent: 15:857b178a7cf3 >- user: test >- date: Thu Jan 01 00:00:18 1970 +0000 >- summary: 18 >- >- changeset: 17:228c06deef46 >- user: test >- date: Thu Jan 01 00:00:17 1970 +0000 >- summary: 17 >- >- changeset: 16:609d82a7ebae >- user: test >- date: Thu Jan 01 00:00:16 1970 +0000 >- summary: 16 >- >- changeset: 15:857b178a7cf3 >- parent: 13:b0a32c86eb31 >- parent: 10:429fcd26f52d >- user: test >- date: Thu Jan 01 00:00:15 1970 +0000 >- summary: merge 10,13 >- >- changeset: 14:faa450606157 >- parent: 11:82ca6f06eccd >- user: test >- date: Thu Jan 01 00:00:14 1970 +0000 >- summary: 14 >- >- changeset: 13:b0a32c86eb31 >- user: test >- date: Thu Jan 01 00:00:13 1970 +0000 >- summary: 13 >- >- changeset: 12:9f259202bbe7 >- user: test >- date: Thu Jan 01 00:00:12 1970 +0000 >- summary: 12 >- >- changeset: 11:82ca6f06eccd >- parent: 8:dab8161ac8fc >- user: test >- date: Thu Jan 01 00:00:11 1970 +0000 >- summary: 11 >- >- changeset: 10:429fcd26f52d >- parent: 9:3c77083deb4a >- parent: 6:a214d5d3811a >- user: test >- date: Thu Jan 01 00:00:10 1970 +0000 >- summary: merge 6,9 >- >- changeset: 9:3c77083deb4a >- user: test >- date: Thu Jan 01 00:00:09 1970 +0000 >- summary: 9 >- >- changeset: 8:dab8161ac8fc >- parent: 1:4ca5088da217 >- user: test >- date: Thu Jan 01 00:00:08 1970 +0000 >- summary: 8 >- >- changeset: 7:50c76098bbf2 >- parent: 4:5c668c22234f >- user: test >- date: Thu Jan 01 00:00:07 1970 +0000 >- summary: 7 >- >- changeset: 6:a214d5d3811a >- parent: 5:385a529b6670 >- parent: 4:5c668c22234f >- user: test >- date: Thu Jan 01 00:00:06 1970 +0000 >- summary: merge 4,5 >- >- changeset: 5:385a529b6670 >- parent: 2:051e12f87bf1 >- user: test >- date: Thu Jan 01 00:00:05 1970 +0000 >- summary: 5 >- >- changeset: 4:5c668c22234f >- user: test >- date: Thu Jan 01 00:00:04 1970 +0000 >- summary: 4 >- >- changeset: 3:0950834f0a9c >- user: test >- date: Thu Jan 01 00:00:03 1970 +0000 >- summary: 3 >- >- changeset: 2:051e12f87bf1 >- user: test >- date: Thu Jan 01 00:00:02 1970 +0000 >- summary: 2 >- >- changeset: 1:4ca5088da217 >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: 1 >- >- changeset: 0:33b1f9bc8bc5 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 0 >- >- >-hg up -C >- >- $ hg up -C >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-complex bisect test 1 # first bad rev is 9 >- >- $ hg bisect -r >- $ hg bisect -g 0 >- $ hg bisect -b 17 # -> update to rev 6 >- Testing changeset 6:a214d5d3811a (15 changesets remaining, ~3 tests) >- 0 files updated, 0 files merged, 2 files removed, 0 files unresolved >- $ hg bisect -g # -> update to rev 13 >- Testing changeset 13:b0a32c86eb31 (9 changesets remaining, ~3 tests) >- 3 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg bisect -s # -> update to rev 10 >- Testing changeset 10:429fcd26f52d (9 changesets remaining, ~3 tests) >- 3 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg bisect -b # -> update to rev 8 >- Testing changeset 8:dab8161ac8fc (3 changesets remaining, ~1 tests) >- 2 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg bisect -g # -> update to rev 9 >- Testing changeset 9:3c77083deb4a (2 changesets remaining, ~1 tests) >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg bisect -b >- The first bad revision is: >- changeset: 9:3c77083deb4a >- user: test >- date: Thu Jan 01 00:00:09 1970 +0000 >- summary: 9 >- >- >-complex bisect test 2 # first good rev is 13 >- >- $ hg bisect -r >- $ hg bisect -g 18 >- $ hg bisect -b 1 # -> update to rev 6 >- Testing changeset 6:a214d5d3811a (13 changesets remaining, ~3 tests) >- 2 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg bisect -s # -> update to rev 10 >- Testing changeset 10:429fcd26f52d (13 changesets remaining, ~3 tests) >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg bisect -b # -> update to rev 12 >- Testing changeset 12:9f259202bbe7 (5 changesets remaining, ~2 tests) >- 3 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg bisect -b # -> update to rev 13 >- Testing changeset 13:b0a32c86eb31 (3 changesets remaining, ~1 tests) >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg bisect -g >- The first good revision is: >- changeset: 13:b0a32c86eb31 >- user: test >- date: Thu Jan 01 00:00:13 1970 +0000 >- summary: 13 >- >- >-complex bisect test 3 >- >-first bad rev is 15 >-10,9,13 are skipped an might be the first bad revisions as well >- >- $ hg bisect -r >- $ hg bisect -g 1 >- $ hg bisect -b 16 # -> update to rev 6 >- Testing changeset 6:a214d5d3811a (13 changesets remaining, ~3 tests) >- 2 files updated, 0 files merged, 2 files removed, 0 files unresolved >- $ hg bisect -g # -> update to rev 13 >- Testing changeset 13:b0a32c86eb31 (8 changesets remaining, ~3 tests) >- 3 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg bisect -s # -> update to rev 10 >- Testing changeset 10:429fcd26f52d (8 changesets remaining, ~3 tests) >- 3 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg bisect -s # -> update to rev 12 >- Testing changeset 12:9f259202bbe7 (8 changesets remaining, ~3 tests) >- 3 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg bisect -g # -> update to rev 9 >- Testing changeset 9:3c77083deb4a (5 changesets remaining, ~2 tests) >- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg bisect -s # -> update to rev 15 >- Testing changeset 15:857b178a7cf3 (5 changesets remaining, ~2 tests) >- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg bisect -b >- Due to skipped revisions, the first bad revision could be any of: >- changeset: 9:3c77083deb4a >- user: test >- date: Thu Jan 01 00:00:09 1970 +0000 >- summary: 9 >- >- changeset: 10:429fcd26f52d >- parent: 9:3c77083deb4a >- parent: 6:a214d5d3811a >- user: test >- date: Thu Jan 01 00:00:10 1970 +0000 >- summary: merge 6,9 >- >- changeset: 13:b0a32c86eb31 >- user: test >- date: Thu Jan 01 00:00:13 1970 +0000 >- summary: 13 >- >- changeset: 15:857b178a7cf3 >- parent: 13:b0a32c86eb31 >- parent: 10:429fcd26f52d >- user: test >- date: Thu Jan 01 00:00:15 1970 +0000 >- summary: merge 10,13 >- >- >-complex bisect test 4 >- >-first good revision is 17 >-15,16 are skipped an might be the first good revisions as well >- >- $ hg bisect -r >- $ hg bisect -g 17 >- $ hg bisect -b 8 # -> update to rev 10 >- Testing changeset 13:b0a32c86eb31 (8 changesets remaining, ~3 tests) >- 2 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg bisect -b # -> update to rev 13 >- Testing changeset 10:429fcd26f52d (5 changesets remaining, ~2 tests) >- 3 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg bisect -b # -> update to rev 15 >- Testing changeset 15:857b178a7cf3 (3 changesets remaining, ~1 tests) >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg bisect -s # -> update to rev 16 >- Testing changeset 16:609d82a7ebae (3 changesets remaining, ~1 tests) >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg bisect -s >- Due to skipped revisions, the first good revision could be any of: >- changeset: 15:857b178a7cf3 >- parent: 13:b0a32c86eb31 >- parent: 10:429fcd26f52d >- user: test >- date: Thu Jan 01 00:00:15 1970 +0000 >- summary: merge 10,13 >- >- changeset: 16:609d82a7ebae >- user: test >- date: Thu Jan 01 00:00:16 1970 +0000 >- summary: 16 >- >- changeset: 17:228c06deef46 >- user: test >- date: Thu Jan 01 00:00:17 1970 +0000 >- summary: 17 >- >- >-test unrelated revs: >- >- $ hg bisect --reset >- $ hg bisect -b 7 >- $ hg bisect -g 14 >- abort: starting revisions are not directly related >- [255] >- $ hg bisect --reset >- >-end at merge: 17 bad, 11 good (but 9 is first bad) >- >- $ hg bisect -r >- $ hg bisect -b 17 >- $ hg bisect -g 11 >- Testing changeset 13:b0a32c86eb31 (5 changesets remaining, ~2 tests) >- 3 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg bisect -g >- Testing changeset 15:857b178a7cf3 (3 changesets remaining, ~1 tests) >- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg bisect -b >- The first bad revision is: >- changeset: 15:857b178a7cf3 >- parent: 13:b0a32c86eb31 >- parent: 10:429fcd26f52d >- user: test >- date: Thu Jan 01 00:00:15 1970 +0000 >- summary: merge 10,13 >- >- Not all ancestors of this changeset have been checked. >- To check the other ancestors, start from the common ancestor, dab8161ac8fc. >- $ hg bisect -g 8 # dab8161ac8fc >- Testing changeset 9:3c77083deb4a (3 changesets remaining, ~1 tests) >- 1 files updated, 0 files merged, 2 files removed, 0 files unresolved >- $ hg bisect -b >- The first bad revision is: >- changeset: 9:3c77083deb4a >- user: test >- date: Thu Jan 01 00:00:09 1970 +0000 >- summary: 9 >- >!.. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-bundle-type.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-bundle-type.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-bundle-type.t.err >@@ -1,101 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > bundle w/o type option > > $ hg init t1 >- $ hg init t2 >- $ cd t1 >- $ echo blablablablabla > file.txt >- $ hg ci -Ama >- adding file.txt >- $ hg log | grep summary >- summary: a >- $ hg bundle ../b1 ../t2 >- searching for changes >- 1 changesets found >- >- $ cd ../t2 >- $ hg pull ../b1 >- pulling from ../b1 >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- (run 'hg update' to get a working copy) >- $ hg up >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg log | grep summary >- summary: a >- $ cd .. >- >-test bundle types >- >- $ for t in "None" "bzip2" "gzip"; do >- > echo % test bundle type $t >- > hg init t$t >- > cd t1 >- > hg bundle -t $t ../b$t ../t$t >- > cut -b 1-6 ../b$t | head -n 1 >- > cd ../t$t >- > hg pull ../b$t >- > hg up >- > hg log | grep summary >- > cd .. >- > done >- % test bundle type None >- searching for changes >- 1 changesets found >- HG10UN >- pulling from ../bNone >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- (run 'hg update' to get a working copy) >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- summary: a >- % test bundle type bzip2 >- searching for changes >- 1 changesets found >- HG10BZ >- pulling from ../bbzip2 >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- (run 'hg update' to get a working copy) >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- summary: a >- % test bundle type gzip >- searching for changes >- 1 changesets found >- HG10GZ >- pulling from ../bgzip >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- (run 'hg update' to get a working copy) >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- summary: a >- >-test garbage file >- >- $ echo garbage > bgarbage >- $ hg init tgarbage >- $ cd tgarbage >- $ hg pull ../bgarbage >- abort: ../bgarbage: not a Mercurial bundle >- [255] >- $ cd .. >- >-test invalid bundle type >- >- $ cd t1 >- $ hg bundle -a -t garbage ../bgarbage >- 1 changesets found >- abort: unknown bundle type specified with --type >- [255] >- $ cd .. >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-bookmarks-strip.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-bookmarks-strip.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-bookmarks-strip.t.err >@@ -1,87 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ echo "[extensions]" >> $HGRCPATH >- $ echo "bookmarks=" >> $HGRCPATH >- $ echo "mq=" >> $HGRCPATH >- >- $ hg init >- >- $ echo qqq>qqq.txt >- >-add file >- >- $ hg add >- adding qqq.txt >- >-commit first revision >- >- $ hg ci -m 1 >- >-set bookmark >- >- $ hg book test >- >- $ echo www>>qqq.txt >- >-commit second revision >- >- $ hg ci -m 2 >- >-set bookmark >- >- $ hg book test2 >- >-update to -2 >- >- $ hg update -r -2 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >- $ echo eee>>qqq.txt >- >-commit new head >- >- $ hg ci -m 3 >- created new head >- >-bookmarks updated? >- >- $ hg book >- test 1:25e1ee7a0081 >- test2 1:25e1ee7a0081 >- >-strip to revision 1 >- >- $ hg strip 1 >- saved backup bundle to $TESTTMP/.hg/strip-backup/*-backup.hg (glob) >- >-list bookmarks >- >- $ hg book >- * test 1:8cf31af87a2b >- * test2 1:8cf31af87a2b >- >-immediate rollback and reentrancy issue >- >- $ echo "mq=!" >> $HGRCPATH >- $ hg init repo >- $ cd repo >- $ echo a > a >- $ hg ci -Am adda >- adding a >- $ echo b > b >- $ hg ci -Am addb >- adding b >- $ hg bookmarks markb >- $ hg rollback >- rolling back to revision 0 (undo commit) >- >-are you there? >- >- $ hg bookmarks >- no bookmarks set >- >-can you be added again? >- >- $ hg bookmarks markb >- $ hg bookmarks >- * markb 0:07f494440405 >- $ cd .. >- >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-branches.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-branches.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-branches.t.err >@@ -1,398 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ hg init a >- $ cd a >- $ echo 'root' >root >- $ hg add root >- $ hg commit -d '0 0' -m "Adding root node" >- >- $ echo 'a' >a >- $ hg add a >- $ hg branch a >- marked working directory as branch a >- $ hg commit -d '1 0' -m "Adding a branch" >- >- $ hg branch q >- marked working directory as branch q >- $ echo 'aa' >a >- $ hg branch -C >- reset working directory to branch a >- $ hg commit -d '2 0' -m "Adding to a branch" >- >- $ hg update -C 0 >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ echo 'b' >b >- $ hg add b >- $ hg branch b >- marked working directory as branch b >- $ hg commit -d '2 0' -m "Adding b branch" >- >- $ echo 'bh1' >bh1 >- $ hg add bh1 >- $ hg commit -d '3 0' -m "Adding b branch head 1" >- >- $ hg update -C 2 >- 1 files updated, 0 files merged, 2 files removed, 0 files unresolved >- $ echo 'bh2' >bh2 >- $ hg add bh2 >- $ hg commit -d '4 0' -m "Adding b branch head 2" >- >- $ echo 'c' >c >- $ hg add c >- $ hg branch c >- marked working directory as branch c >- $ hg commit -d '5 0' -m "Adding c branch" >- >- $ hg branch tip >- abort: the name 'tip' is reserved >- [255] >- $ hg branch null >- abort: the name 'null' is reserved >- [255] >- $ hg branch . >- abort: the name '.' is reserved >- [255] >- >- $ echo 'd' >d >- $ hg add d >- $ hg branch 'a branch name much longer than the default justification used by branches' >- marked working directory as branch a branch name much longer than the default justification used by branches >- $ hg commit -d '6 0' -m "Adding d branch" >- >- $ hg branches >- a branch name much longer than the default justification used by branches 7:10ff5895aa57 >- b 4:aee39cd168d0 >- c 6:589736a22561 (inactive) >- a 5:d8cbc61dbaa6 (inactive) >- default 0:19709c5a4e75 (inactive) >- >-------- >- >- $ hg branches -a >- a branch name much longer than the default justification used by branches 7:10ff5895aa57 >- b 4:aee39cd168d0 >- >---- Branch a >- >- $ hg log -b a >- changeset: 5:d8cbc61dbaa6 >- branch: a >- parent: 2:881fe2b92ad0 >- user: test >- date: Thu Jan 01 00:00:04 1970 +0000 >- summary: Adding b branch head 2 >- >- changeset: 2:881fe2b92ad0 >- branch: a >- user: test >- date: Thu Jan 01 00:00:02 1970 +0000 >- summary: Adding to a branch >- >- changeset: 1:dd6b440dd85a >- branch: a >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: Adding a branch >- >- >----- Branch b >- >- $ hg log -b b >- changeset: 4:aee39cd168d0 >- branch: b >- user: test >- date: Thu Jan 01 00:00:03 1970 +0000 >- summary: Adding b branch head 1 >- >- changeset: 3:ac22033332d1 >- branch: b >- parent: 0:19709c5a4e75 >- user: test >- date: Thu Jan 01 00:00:02 1970 +0000 >- summary: Adding b branch >- >- >----- going to test branch closing >- >- $ hg branches >- a branch name much longer than the default justification used by branches 7:10ff5895aa57 >- b 4:aee39cd168d0 >- c 6:589736a22561 (inactive) >- a 5:d8cbc61dbaa6 (inactive) >- default 0:19709c5a4e75 (inactive) >- $ hg up -C b >- 2 files updated, 0 files merged, 4 files removed, 0 files unresolved >- $ echo 'xxx1' >> b >- $ hg commit -d '7 0' -m 'adding cset to branch b' >- $ hg up -C aee39cd168d0 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo 'xxx2' >> b >- $ hg commit -d '8 0' -m 'adding head to branch b' >- created new head >- $ echo 'xxx3' >> b >- $ hg commit -d '9 0' -m 'adding another cset to branch b' >- $ hg branches >- b 10:bfbe841b666e >- a branch name much longer than the default justification used by branches 7:10ff5895aa57 >- c 6:589736a22561 (inactive) >- a 5:d8cbc61dbaa6 (inactive) >- default 0:19709c5a4e75 (inactive) >- $ hg heads --closed >- changeset: 10:bfbe841b666e >- branch: b >- tag: tip >- user: test >- date: Thu Jan 01 00:00:09 1970 +0000 >- summary: adding another cset to branch b >- >- changeset: 8:eebb944467c9 >- branch: b >- parent: 4:aee39cd168d0 >- user: test >- date: Thu Jan 01 00:00:07 1970 +0000 >- summary: adding cset to branch b >- >- changeset: 7:10ff5895aa57 >- branch: a branch name much longer than the default justification used by branches >- user: test >- date: Thu Jan 01 00:00:06 1970 +0000 >- summary: Adding d branch >- >- changeset: 6:589736a22561 >- branch: c >- user: test >- date: Thu Jan 01 00:00:05 1970 +0000 >- summary: Adding c branch >- >- changeset: 5:d8cbc61dbaa6 >- branch: a >- parent: 2:881fe2b92ad0 >- user: test >- date: Thu Jan 01 00:00:04 1970 +0000 >- summary: Adding b branch head 2 >- >- changeset: 0:19709c5a4e75 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: Adding root node >- >- $ hg heads >- changeset: 10:bfbe841b666e >- branch: b >- tag: tip >- user: test >- date: Thu Jan 01 00:00:09 1970 +0000 >- summary: adding another cset to branch b >- >- changeset: 8:eebb944467c9 >- branch: b >- parent: 4:aee39cd168d0 >- user: test >- date: Thu Jan 01 00:00:07 1970 +0000 >- summary: adding cset to branch b >- >- changeset: 7:10ff5895aa57 >- branch: a branch name much longer than the default justification used by branches >- user: test >- date: Thu Jan 01 00:00:06 1970 +0000 >- summary: Adding d branch >- >- changeset: 6:589736a22561 >- branch: c >- user: test >- date: Thu Jan 01 00:00:05 1970 +0000 >- summary: Adding c branch >- >- changeset: 5:d8cbc61dbaa6 >- branch: a >- parent: 2:881fe2b92ad0 >- user: test >- date: Thu Jan 01 00:00:04 1970 +0000 >- summary: Adding b branch head 2 >- >- changeset: 0:19709c5a4e75 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: Adding root node >- >- $ hg commit -d '9 0' --close-branch -m 'prune bad branch' >- $ hg branches -a >- b 8:eebb944467c9 >- a branch name much longer than the default justification used by branches 7:10ff5895aa57 >- $ hg up -C b >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg commit -d '9 0' --close-branch -m 'close this part branch too' >- >---- b branch should be inactive >- >- $ hg branches >- a branch name much longer than the default justification used by branches 7:10ff5895aa57 >- c 6:589736a22561 (inactive) >- a 5:d8cbc61dbaa6 (inactive) >- default 0:19709c5a4e75 (inactive) >- $ hg branches -c >- a branch name much longer than the default justification used by branches 7:10ff5895aa57 >- b 12:2da6583810df (closed) >- c 6:589736a22561 (inactive) >- a 5:d8cbc61dbaa6 (inactive) >- default 0:19709c5a4e75 (inactive) >- $ hg branches -a >- a branch name much longer than the default justification used by branches 7:10ff5895aa57 >- $ hg heads b >- no open branch heads found on branches b >- [1] >- $ hg heads --closed b >- changeset: 12:2da6583810df >- branch: b >- tag: tip >- parent: 8:eebb944467c9 >- user: test >- date: Thu Jan 01 00:00:09 1970 +0000 >- summary: close this part branch too >- >- changeset: 11:c84627f3c15d >- branch: b >- user: test >- date: Thu Jan 01 00:00:09 1970 +0000 >- summary: prune bad branch >- >- $ echo 'xxx4' >> b >- $ hg commit -d '9 0' -m 'reopen branch with a change' >- reopening closed branch head 12 >- >---- branch b is back in action >- >- $ hg branches -a >- b 13:6ac12926b8c3 >- a branch name much longer than the default justification used by branches 7:10ff5895aa57 >- >----- test heads listings >- >- $ hg heads >- changeset: 13:6ac12926b8c3 >- branch: b >- tag: tip >- user: test >- date: Thu Jan 01 00:00:09 1970 +0000 >- summary: reopen branch with a change >- >- changeset: 7:10ff5895aa57 >- branch: a branch name much longer than the default justification used by branches >- user: test >- date: Thu Jan 01 00:00:06 1970 +0000 >- summary: Adding d branch >- >- changeset: 6:589736a22561 >- branch: c >- user: test >- date: Thu Jan 01 00:00:05 1970 +0000 >- summary: Adding c branch >- >- changeset: 5:d8cbc61dbaa6 >- branch: a >- parent: 2:881fe2b92ad0 >- user: test >- date: Thu Jan 01 00:00:04 1970 +0000 >- summary: Adding b branch head 2 >- >- changeset: 0:19709c5a4e75 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: Adding root node >- >- >-branch default >- >- $ hg heads default >- changeset: 0:19709c5a4e75 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: Adding root node >- >- >-branch a >- >- $ hg heads a >- changeset: 5:d8cbc61dbaa6 >- branch: a >- parent: 2:881fe2b92ad0 >- user: test >- date: Thu Jan 01 00:00:04 1970 +0000 >- summary: Adding b branch head 2 >- >- $ hg heads --active a >- no open branch heads found on branches a >- [1] >- >-branch b >- >- $ hg heads b >- changeset: 13:6ac12926b8c3 >- branch: b >- tag: tip >- user: test >- date: Thu Jan 01 00:00:09 1970 +0000 >- summary: reopen branch with a change >- >- $ hg heads --closed b >- changeset: 13:6ac12926b8c3 >- branch: b >- tag: tip >- user: test >- date: Thu Jan 01 00:00:09 1970 +0000 >- summary: reopen branch with a change >- >- changeset: 11:c84627f3c15d >- branch: b >- user: test >- date: Thu Jan 01 00:00:09 1970 +0000 >- summary: prune bad branch >- >-default branch colors: >- >- $ echo "[extensions]" >> $HGRCPATH >- $ echo "color =" >> $HGRCPATH >- >- $ hg up -C c >- 3 files updated, 0 files merged, 2 files removed, 0 files unresolved >- $ hg commit -d '9 0' --close-branch -m 'reclosing this branch' >- $ hg up -C b >- 2 files updated, 0 files merged, 3 files removed, 0 files unresolved >- $ hg branches --color=always >- [0;32mb[0m [0;33m 13:6ac12926b8c3[0m >- [0;0ma branch name much longer than the default justification used by branches[0m [0;33m7:10ff5895aa57[0m >- [0;0ma[0m [0;33m 5:d8cbc61dbaa6[0m (inactive) >- [0;0mdefault[0m [0;33m 0:19709c5a4e75[0m (inactive) >- >-default closed branch color: >- >- $ hg branches --color=always --closed >- [0;32mb[0m [0;33m 13:6ac12926b8c3[0m >- [0;0ma branch name much longer than the default justification used by branches[0m [0;33m7:10ff5895aa57[0m >- [0;30;1mc[0m [0;33m 14:717d2e6fabe1[0m (closed) >- [0;0ma[0m [0;33m 5:d8cbc61dbaa6[0m (inactive) >- [0;0mdefault[0m [0;33m 0:19709c5a4e75[0m (inactive) >- >- $ echo "[extensions]" >> $HGRCPATH >- $ echo "color =" >> $HGRCPATH >- $ echo "[color]" >> $HGRCPATH >- $ echo "branches.active = green" >> $HGRCPATH >- $ echo "branches.closed = blue" >> $HGRCPATH >- $ echo "branches.current = red" >> $HGRCPATH >- $ echo "branches.inactive = magenta" >> $HGRCPATH >- $ echo "log.changeset = cyan" >> $HGRCPATH >- >-custom branch colors: >- >- $ hg branches --color=always >- [0;31mb[0m [0;36m 13:6ac12926b8c3[0m >- [0;32ma branch name much longer than the default justification used by branches[0m [0;36m7:10ff5895aa57[0m >- [0;35ma[0m [0;36m 5:d8cbc61dbaa6[0m (inactive) >- [0;35mdefault[0m [0;36m 0:19709c5a4e75[0m (inactive) >- >-custom closed branch color: >- >- $ hg branches --color=always --closed >- [0;31mb[0m [0;36m 13:6ac12926b8c3[0m >- [0;32ma branch name much longer than the default justification used by branches[0m [0;36m7:10ff5895aa57[0m >- [0;34mc[0m [0;36m 14:717d2e6fabe1[0m (closed) >- [0;35ma[0m [0;36m 5:d8cbc61dbaa6[0m (inactive) >- [0;35mdefault[0m [0;36m 0:19709c5a4e75[0m (inactive) >!.. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-bundle-r.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-bundle-r.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-bundle-r.t.err >@@ -1,372 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ hg init test >- $ cd test >- $ echo "0" >> afile >- $ hg add afile >- $ hg commit -m "0.0" >- $ echo "1" >> afile >- $ hg commit -m "0.1" >- $ echo "2" >> afile >- $ hg commit -m "0.2" >- $ echo "3" >> afile >- $ hg commit -m "0.3" >- $ hg update -C 0 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo "1" >> afile >- $ hg commit -m "1.1" >- created new head >- $ echo "2" >> afile >- $ hg commit -m "1.2" >- $ echo "a line" > fred >- $ echo "3" >> afile >- $ hg add fred >- $ hg commit -m "1.3" >- $ hg mv afile adifferentfile >- $ hg commit -m "1.3m" >- $ hg update -C 3 >- 1 files updated, 0 files merged, 2 files removed, 0 files unresolved >- $ hg mv afile anotherfile >- $ hg commit -m "0.3m" >- $ hg debugindex .hg/store/data/afile.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 3 0 0 362fef284ce2 000000000000 000000000000 >- 1 3 5 1 1 125144f7e028 362fef284ce2 000000000000 >- 2 8 7 2 2 4c982badb186 125144f7e028 000000000000 >- 3 15 9 3 3 19b1fc555737 4c982badb186 000000000000 >- $ hg debugindex .hg/store/data/adifferentfile.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 75 0 7 2565f3199a74 000000000000 000000000000 >- $ hg debugindex .hg/store/data/anotherfile.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 75 0 8 2565f3199a74 000000000000 000000000000 >- $ hg debugindex .hg/store/data/fred.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 8 0 6 12ab3bcc5ea4 000000000000 000000000000 >- $ hg debugindex .hg/store/00manifest.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 48 0 0 43eadb1d2d06 000000000000 000000000000 >- 1 48 48 1 1 8b89697eba2c 43eadb1d2d06 000000000000 >- 2 96 48 2 2 626a32663c2f 8b89697eba2c 000000000000 >- 3 144 48 3 3 f54c32f13478 626a32663c2f 000000000000 >- 4 192 58 3 6 de68e904d169 626a32663c2f 000000000000 >- 5 250 68 3 7 09bb521d218d de68e904d169 000000000000 >- 6 318 54 6 8 1fde233dfb0f f54c32f13478 000000000000 >- $ hg verify >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 4 files, 9 changesets, 7 total revisions >- $ cd .. >- $ for i in 0 1 2 3 4 5 6 7 8; do >- > mkdir test-"$i" >- > hg --cwd test-"$i" init >- > hg -R test bundle -r "$i" test-"$i".hg test-"$i" >- > cd test-"$i" >- > hg unbundle ../test-"$i".hg >- > hg verify >- > hg tip -q >- > cd .. >- > done >- searching for changes >- 1 changesets found >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- (run 'hg update' to get a working copy) >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 1 files, 1 changesets, 1 total revisions >- 0:f9ee2f85a263 >- searching for changes >- 2 changesets found >- adding changesets >- adding manifests >- adding file changes >- added 2 changesets with 2 changes to 1 files >- (run 'hg update' to get a working copy) >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 1 files, 2 changesets, 2 total revisions >- 1:34c2bf6b0626 >- searching for changes >- 3 changesets found >- adding changesets >- adding manifests >- adding file changes >- added 3 changesets with 3 changes to 1 files >- (run 'hg update' to get a working copy) >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 1 files, 3 changesets, 3 total revisions >- 2:e38ba6f5b7e0 >- searching for changes >- 4 changesets found >- adding changesets >- adding manifests >- adding file changes >- added 4 changesets with 4 changes to 1 files >- (run 'hg update' to get a working copy) >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 1 files, 4 changesets, 4 total revisions >- 3:eebf5a27f8ca >- searching for changes >- 2 changesets found >- adding changesets >- adding manifests >- adding file changes >- added 2 changesets with 2 changes to 1 files >- (run 'hg update' to get a working copy) >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 1 files, 2 changesets, 2 total revisions >- 1:095197eb4973 >- searching for changes >- 3 changesets found >- adding changesets >- adding manifests >- adding file changes >- added 3 changesets with 3 changes to 1 files >- (run 'hg update' to get a working copy) >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 1 files, 3 changesets, 3 total revisions >- 2:1bb50a9436a7 >- searching for changes >- 4 changesets found >- adding changesets >- adding manifests >- adding file changes >- added 4 changesets with 5 changes to 2 files >- (run 'hg update' to get a working copy) >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 2 files, 4 changesets, 5 total revisions >- 3:7373c1169842 >- searching for changes >- 5 changesets found >- adding changesets >- adding manifests >- adding file changes >- added 5 changesets with 6 changes to 3 files >- (run 'hg update' to get a working copy) >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 3 files, 5 changesets, 6 total revisions >- 4:a6a34bfa0076 >- searching for changes >- 5 changesets found >- adding changesets >- adding manifests >- adding file changes >- added 5 changesets with 5 changes to 2 files >- (run 'hg update' to get a working copy) >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 2 files, 5 changesets, 5 total revisions >- 4:aa35859c02ea >- $ cd test-8 >- $ hg pull ../test-7 >- pulling from ../test-7 >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 4 changesets with 2 changes to 3 files (+1 heads) >- (run 'hg heads' to see heads, 'hg merge' to merge) >- $ hg verify >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 4 files, 9 changesets, 7 total revisions >- $ hg rollback >- rolling back to revision 4 (undo pull) >- $ cd .. >- >-should fail >- >- $ hg -R test bundle --base 2 -r tip test-bundle-branch1.hg test-3 >- abort: --base is incompatible with specifying a destination >- [255] >- $ hg -R test bundle -r tip test-bundle-branch1.hg >- abort: repository default-push not found! >- [255] >- >- $ hg -R test bundle --base 2 -r tip test-bundle-branch1.hg >- 2 changesets found >- $ hg -R test bundle --base 2 -r 7 test-bundle-branch2.hg >- 4 changesets found >- $ hg -R test bundle --base 2 test-bundle-all.hg >- 6 changesets found >- $ hg -R test bundle --base 3 -r tip test-bundle-should-fail.hg >- 1 changesets found >- >-empty bundle >- >- $ hg -R test bundle --base 7 --base 8 test-bundle-empty.hg >- no changes found >- [1] >- >-issue76 msg2163 >- >- $ hg -R test bundle --base 3 -r 3 -r 3 test-bundle-cset-3.hg >- 1 changesets found >- >-Issue1910: 'hg bundle --base $head' does not exclude $head from >-result >- >- $ hg -R test bundle --base 7 test-bundle-cset-7.hg >- 4 changesets found >- >- $ hg clone test-2 test-9 >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ cd test-9 >- >-revision 2 >- >- $ hg tip -q >- 2:e38ba6f5b7e0 >- $ hg unbundle ../test-bundle-should-fail.hg >- adding changesets >- transaction abort! >- rollback completed >- abort: 00changelog.i@eebf5a27f8ca: unknown parent! >- [255] >- >-revision 2 >- >- $ hg tip -q >- 2:e38ba6f5b7e0 >- $ hg unbundle ../test-bundle-all.hg >- adding changesets >- adding manifests >- adding file changes >- added 6 changesets with 4 changes to 4 files (+1 heads) >- (run 'hg heads' to see heads, 'hg merge' to merge) >- >-revision 8 >- >- $ hg tip -q >- 8:aa35859c02ea >- $ hg verify >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 4 files, 9 changesets, 7 total revisions >- $ hg rollback >- rolling back to revision 2 (undo unbundle) >- >-revision 2 >- >- $ hg tip -q >- 2:e38ba6f5b7e0 >- $ hg unbundle ../test-bundle-branch1.hg >- adding changesets >- adding manifests >- adding file changes >- added 2 changesets with 2 changes to 2 files >- (run 'hg update' to get a working copy) >- >-revision 4 >- >- $ hg tip -q >- 4:aa35859c02ea >- $ hg verify >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 2 files, 5 changesets, 5 total revisions >- $ hg rollback >- rolling back to revision 2 (undo unbundle) >- $ hg unbundle ../test-bundle-branch2.hg >- adding changesets >- adding manifests >- adding file changes >- added 4 changesets with 3 changes to 3 files (+1 heads) >- (run 'hg heads' to see heads, 'hg merge' to merge) >- >-revision 6 >- >- $ hg tip -q >- 6:a6a34bfa0076 >- $ hg verify >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 3 files, 7 changesets, 6 total revisions >- $ hg rollback >- rolling back to revision 2 (undo unbundle) >- $ hg unbundle ../test-bundle-cset-7.hg >- adding changesets >- adding manifests >- adding file changes >- added 2 changesets with 2 changes to 2 files >- (run 'hg update' to get a working copy) >- >-revision 4 >- >- $ hg tip -q >- 4:aa35859c02ea >- $ hg verify >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 2 files, 5 changesets, 5 total revisions >- >- $ cd ../test >- $ hg merge 7 >- note: possible conflict - afile was renamed multiple times to: >- anotherfile >- adifferentfile >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg ci -m merge >- $ cd .. >- $ hg -R test bundle --base 2 test-bundle-head.hg >- 7 changesets found >- $ hg clone test-2 test-10 >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ cd test-10 >- $ hg unbundle ../test-bundle-head.hg >- adding changesets >- adding manifests >- adding file changes >- added 7 changesets with 4 changes to 4 files >- (run 'hg update' to get a working copy) >- >-revision 9 >- >- $ hg tip -q >- 9:905597b0d5d4 >- $ hg verify >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 4 files, 10 changesets, 7 total revisions >!s. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-bundle.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-bundle.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-bundle.t.err >@@ -1,561 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ cp "$TESTDIR"/printenv.py . >- >-Setting up test >- >- $ hg init test >- $ cd test >- $ echo 0 > afile >- $ hg add afile >- $ hg commit -m "0.0" >- $ echo 1 >> afile >- $ hg commit -m "0.1" >- $ echo 2 >> afile >- $ hg commit -m "0.2" >- $ echo 3 >> afile >- $ hg commit -m "0.3" >- $ hg update -C 0 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo 1 >> afile >- $ hg commit -m "1.1" >- created new head >- $ echo 2 >> afile >- $ hg commit -m "1.2" >- $ echo "a line" > fred >- $ echo 3 >> afile >- $ hg add fred >- $ hg commit -m "1.3" >- $ hg mv afile adifferentfile >- $ hg commit -m "1.3m" >- $ hg update -C 3 >- 1 files updated, 0 files merged, 2 files removed, 0 files unresolved >- $ hg mv afile anotherfile >- $ hg commit -m "0.3m" >- $ hg verify >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 4 files, 9 changesets, 7 total revisions >- $ cd .. >- $ hg init empty >- >-Bundle --all >- >- $ hg -R test bundle --all all.hg >- 9 changesets found >- >-Bundle test to full.hg >- >- $ hg -R test bundle full.hg empty >- searching for changes >- 9 changesets found >- >-Unbundle full.hg in test >- >- $ hg -R test unbundle full.hg >- adding changesets >- adding manifests >- adding file changes >- added 0 changesets with 0 changes to 4 files >- (run 'hg update' to get a working copy) >- >-Verify empty >- >- $ hg -R empty heads >- [1] >- $ hg -R empty verify >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 0 files, 0 changesets, 0 total revisions >- >-Pull full.hg into test (using --cwd) >- >- $ hg --cwd test pull ../full.hg >- pulling from ../full.hg >- searching for changes >- no changes found >- >-Pull full.hg into empty (using --cwd) >- >- $ hg --cwd empty pull ../full.hg >- pulling from ../full.hg >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 9 changesets with 7 changes to 4 files (+1 heads) >- (run 'hg heads' to see heads, 'hg merge' to merge) >- >-Rollback empty >- >- $ hg -R empty rollback >- rolling back to revision -1 (undo pull) >- >-Pull full.hg into empty again (using --cwd) >- >- $ hg --cwd empty pull ../full.hg >- pulling from ../full.hg >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 9 changesets with 7 changes to 4 files (+1 heads) >- (run 'hg heads' to see heads, 'hg merge' to merge) >- >-Pull full.hg into test (using -R) >- >- $ hg -R test pull full.hg >- pulling from full.hg >- searching for changes >- no changes found >- >-Pull full.hg into empty (using -R) >- >- $ hg -R empty pull full.hg >- pulling from full.hg >- searching for changes >- no changes found >- >-Rollback empty >- >- $ hg -R empty rollback >- rolling back to revision -1 (undo pull) >- >-Pull full.hg into empty again (using -R) >- >- $ hg -R empty pull full.hg >- pulling from full.hg >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 9 changesets with 7 changes to 4 files (+1 heads) >- (run 'hg heads' to see heads, 'hg merge' to merge) >- >-Log -R full.hg in fresh empty >- >- $ rm -r empty >- $ hg init empty >- $ cd empty >- $ hg -R bundle://../full.hg log >- changeset: 8:aa35859c02ea >- tag: tip >- parent: 3:eebf5a27f8ca >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 0.3m >- >- changeset: 7:a6a34bfa0076 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 1.3m >- >- changeset: 6:7373c1169842 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 1.3 >- >- changeset: 5:1bb50a9436a7 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 1.2 >- >- changeset: 4:095197eb4973 >- parent: 0:f9ee2f85a263 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 1.1 >- >- changeset: 3:eebf5a27f8ca >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 0.3 >- >- changeset: 2:e38ba6f5b7e0 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 0.2 >- >- changeset: 1:34c2bf6b0626 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 0.1 >- >- changeset: 0:f9ee2f85a263 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 0.0 >- >- >-Pull ../full.hg into empty (with hook) >- >- $ echo '[hooks]' >> .hg/hgrc >- $ echo 'changegroup = python ../printenv.py changegroup' >> .hg/hgrc >- >-doesn't work (yet ?) >- >-hg -R bundle://../full.hg verify >- >- $ hg pull bundle://../full.hg >- changegroup hook: HG_NODE=f9ee2f85a263049e9ae6d37a0e67e96194ffb735 HG_SOURCE=pull HG_URL=bundle:../full.hg >- pulling from bundle://../full.hg >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 9 changesets with 7 changes to 4 files (+1 heads) >- (run 'hg heads' to see heads, 'hg merge' to merge) >- >-Rollback empty >- >- $ hg rollback >- rolling back to revision -1 (undo pull) >- $ cd .. >- >-Log -R bundle:empty+full.hg >- >- $ hg -R bundle:empty+full.hg log --template="{rev} "; echo "" >- 8 7 6 5 4 3 2 1 0 >- >-Pull full.hg into empty again (using -R; with hook) >- >- $ hg -R empty pull full.hg >- changegroup hook: HG_NODE=f9ee2f85a263049e9ae6d37a0e67e96194ffb735 HG_SOURCE=pull HG_URL=bundle:empty+full.hg >- pulling from full.hg >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 9 changesets with 7 changes to 4 files (+1 heads) >- (run 'hg heads' to see heads, 'hg merge' to merge) >- >-Create partial clones >- >- $ rm -r empty >- $ hg init empty >- $ hg clone -r 3 test partial >- adding changesets >- adding manifests >- adding file changes >- added 4 changesets with 4 changes to 1 files >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg clone partial partial2 >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ cd partial >- >-Log -R full.hg in partial >- >- $ hg -R bundle://../full.hg log >- changeset: 8:aa35859c02ea >- tag: tip >- parent: 3:eebf5a27f8ca >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 0.3m >- >- changeset: 7:a6a34bfa0076 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 1.3m >- >- changeset: 6:7373c1169842 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 1.3 >- >- changeset: 5:1bb50a9436a7 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 1.2 >- >- changeset: 4:095197eb4973 >- parent: 0:f9ee2f85a263 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 1.1 >- >- changeset: 3:eebf5a27f8ca >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 0.3 >- >- changeset: 2:e38ba6f5b7e0 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 0.2 >- >- changeset: 1:34c2bf6b0626 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 0.1 >- >- changeset: 0:f9ee2f85a263 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 0.0 >- >- >-Incoming full.hg in partial >- >- $ hg incoming bundle://../full.hg >- comparing with bundle://../full.hg >- searching for changes >- changeset: 4:095197eb4973 >- parent: 0:f9ee2f85a263 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 1.1 >- >- changeset: 5:1bb50a9436a7 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 1.2 >- >- changeset: 6:7373c1169842 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 1.3 >- >- changeset: 7:a6a34bfa0076 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 1.3m >- >- changeset: 8:aa35859c02ea >- tag: tip >- parent: 3:eebf5a27f8ca >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 0.3m >- >- >-Outgoing -R full.hg vs partial2 in partial >- >- $ hg -R bundle://../full.hg outgoing ../partial2 >- comparing with ../partial2 >- searching for changes >- changeset: 4:095197eb4973 >- parent: 0:f9ee2f85a263 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 1.1 >- >- changeset: 5:1bb50a9436a7 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 1.2 >- >- changeset: 6:7373c1169842 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 1.3 >- >- changeset: 7:a6a34bfa0076 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 1.3m >- >- changeset: 8:aa35859c02ea >- tag: tip >- parent: 3:eebf5a27f8ca >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 0.3m >- >- >-Outgoing -R does-not-exist.hg vs partial2 in partial >- >- $ hg -R bundle://../does-not-exist.hg outgoing ../partial2 >- abort: No such file or directory: ../does-not-exist.hg >- [255] >- $ cd .. >- >-Direct clone from bundle (all-history) >- >- $ hg clone full.hg full-clone >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 9 changesets with 7 changes to 4 files (+1 heads) >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg -R full-clone heads >- changeset: 8:aa35859c02ea >- tag: tip >- parent: 3:eebf5a27f8ca >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 0.3m >- >- changeset: 7:a6a34bfa0076 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 1.3m >- >- $ rm -r full-clone >- >-test for http://mercurial.selenic.com/bts/issue216 >- >-Unbundle incremental bundles into fresh empty in one go >- >- $ rm -r empty >- $ hg init empty >- $ hg -R test bundle --base null -r 0 ../0.hg >- 1 changesets found >- $ hg -R test bundle --base 0 -r 1 ../1.hg >- 1 changesets found >- $ hg -R empty unbundle -u ../0.hg ../1.hg >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-test for 540d1059c802 >- >-test for 540d1059c802 >- >- $ hg init orig >- $ cd orig >- $ echo foo > foo >- $ hg add foo >- $ hg ci -m 'add foo' >- >- $ hg clone . ../copy >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg tag foo >- >- $ cd ../copy >- $ echo >> foo >- $ hg ci -m 'change foo' >- $ hg bundle ../bundle.hg ../orig >- searching for changes >- 1 changesets found >- >- $ cd ../orig >- $ hg incoming ../bundle.hg >- comparing with ../bundle.hg >- searching for changes >- changeset: 2:ed1b79f46b9a >- tag: tip >- parent: 0:bbd179dfa0a7 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: change foo >- >- $ cd .. >- >-test for http://mercurial.selenic.com/bts/issue1144 >- >-test that verify bundle does not traceback >- >-partial history bundle, fails w/ unkown parent >- >- $ hg -R bundle.hg verify >- abort: 00changelog.i@bbd179dfa0a7: unknown parent! >- [255] >- >-full history bundle, refuses to verify non-local repo >- >- $ hg -R all.hg verify >- abort: cannot verify bundle or remote repos >- [255] >- >-but, regular verify must continue to work >- >- $ hg -R orig verify >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 2 files, 2 changesets, 2 total revisions >- >-diff against bundle >- >- $ hg init b >- $ cd b >- $ hg -R ../all.hg diff -r tip >- diff -r aa35859c02ea anotherfile >- --- a/anotherfile Thu Jan 01 00:00:00 1970 +0000 >- +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 >- @@ -1,4 +0,0 @@ >- -0 >- -1 >- -2 >- -3 >- $ cd .. >- >-bundle single branch >- >- $ hg init branchy >- $ cd branchy >- $ echo a >a >- $ hg ci -Ama >- adding a >- $ echo b >b >- $ hg ci -Amb >- adding b >- $ echo b1 >b1 >- $ hg ci -Amb1 >- adding b1 >- $ hg up 0 >- 0 files updated, 0 files merged, 2 files removed, 0 files unresolved >- $ echo c >c >- $ hg ci -Amc >- adding c >- created new head >- $ echo c1 >c1 >- $ hg ci -Amc1 >- adding c1 >- $ hg clone -q .#tip part >- >-== bundling via incoming >- >- $ hg in -R part --bundle incoming.hg --template "{node}\n" . >- comparing with . >- searching for changes >- d2ae7f538514cd87c17547b0de4cea71fe1af9fb >- 5ece8e77363e2b5269e27c66828b72da29e4341a >- >-== bundling >- >- $ hg bundle bundle.hg part --debug >- searching for changes >- common changesets up to c0025332f9ed >- 2 changesets found >- list of changesets: >- d2ae7f538514cd87c17547b0de4cea71fe1af9fb >- 5ece8e77363e2b5269e27c66828b72da29e4341a >- bundling changes: 0 chunks >- bundling changes: 1 chunks >- bundling changes: 2 chunks >- bundling changes: 3 chunks >- bundling changes: 4 chunks >- bundling changes: 5 chunks >- bundling changes: 6 chunks >- bundling manifests: 0 chunks >- bundling manifests: 1 chunks >- bundling manifests: 2 chunks >- bundling manifests: 3 chunks >- bundling manifests: 4 chunks >- bundling manifests: 5 chunks >- bundling manifests: 6 chunks >- bundling files: b 0 chunks >- bundling files: b 1 chunks >- bundling files: b 2 chunks >- bundling files: b 3 chunks >- bundling files: b1 4 chunks >- bundling files: b1 5 chunks >- bundling files: b1 6 chunks >- bundling files: b1 7 chunks >- >!s. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-children.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-children.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-children.t.err >@@ -1,123 +1,8 @@ >+ >+ ### Abort: timeout after 180 seconds. > test children command > > $ cat <<EOF >> $HGRCPATH > > [extensions] > > children = > > EOF >- >-init >- $ hg init t >- $ cd t >- >-no working directory >- $ hg children >- >-setup >- $ echo 0 > file0 >- $ hg ci -qAm 0 -d '0 0' >- >- $ echo 1 > file1 >- $ hg ci -qAm 1 -d '1 0' >- >- $ echo 2 >> file0 >- $ hg ci -qAm 2 -d '2 0' >- >- $ hg co null >- 0 files updated, 0 files merged, 2 files removed, 0 files unresolved >- $ echo 3 > file3 >- $ hg ci -qAm 3 -d '3 0' >- >-hg children at revision 3 (tip) >- $ hg children >- >- $ hg co null >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- >-hg children at nullrev (should be 0 and 3) >- $ hg children >- changeset: 0:4df8521a7374 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 0 >- >- changeset: 3:e2962852269d >- tag: tip >- parent: -1:000000000000 >- user: test >- date: Thu Jan 01 00:00:03 1970 +0000 >- summary: 3 >- >- $ hg co 1 >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-hg children at revision 1 (should be 2) >- $ hg children >- changeset: 2:8f5eea5023c2 >- user: test >- date: Thu Jan 01 00:00:02 1970 +0000 >- summary: 2 >- >- $ hg co 2 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-hg children at revision 2 (other head) >- $ hg children >- >- $ for i in null 0 1 2 3; do >- > echo "hg children -r $i" >- > hg children -r $i >- > done >- hg children -r null >- changeset: 0:4df8521a7374 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 0 >- >- changeset: 3:e2962852269d >- tag: tip >- parent: -1:000000000000 >- user: test >- date: Thu Jan 01 00:00:03 1970 +0000 >- summary: 3 >- >- hg children -r 0 >- changeset: 1:708c093edef0 >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: 1 >- >- hg children -r 1 >- changeset: 2:8f5eea5023c2 >- user: test >- date: Thu Jan 01 00:00:02 1970 +0000 >- summary: 2 >- >- hg children -r 2 >- hg children -r 3 >- >-hg children -r 0 file0 (should be 2) >- $ hg children -r 0 file0 >- changeset: 2:8f5eea5023c2 >- user: test >- date: Thu Jan 01 00:00:02 1970 +0000 >- summary: 2 >- >- >-hg children -r 1 file0 (should be 2) >- $ hg children -r 1 file0 >- changeset: 2:8f5eea5023c2 >- user: test >- date: Thu Jan 01 00:00:02 1970 +0000 >- summary: 2 >- >- >- $ hg co 0 >- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved >- >-hg children file0 at revision 0 (should be 2) >- $ hg children file0 >- changeset: 2:8f5eea5023c2 >- user: test >- date: Thu Jan 01 00:00:02 1970 +0000 >- summary: 2 >- >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-churn.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-churn.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-churn.t.err >@@ -1,141 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ echo "[extensions]" >> $HGRCPATH >- $ echo "churn=" >> $HGRCPATH >- >-create test repository >- >- $ hg init repo >- $ cd repo >- $ echo a > a >- $ hg ci -Am adda -u user1 -d 6:00 >- adding a >- $ echo b >> a >- $ echo b > b >- $ hg ci -m changeba -u user2 -d 9:00 a >- $ hg ci -Am addb -u user2 -d 9:30 >- adding b >- $ echo c >> a >- $ echo c >> b >- $ echo c > c >- $ hg ci -m changeca -u user3 -d 12:00 a >- $ hg ci -m changecb -u user3 -d 12:15 b >- $ hg ci -Am addc -u user3 -d 12:30 >- adding c >- $ mkdir -p d/e >- $ echo abc > d/e/f1.txt >- $ hg ci -Am "add d/e/f1.txt" -u user1 -d 12:45 d/e/f1.txt >- $ mkdir -p d/g >- $ echo def > d/g/f2.txt >- $ hg ci -Am "add d/g/f2.txt" -u user1 -d 13:00 d/g/f2.txt >- >- >-churn separate directories >- >- $ cd d >- $ hg churn e >- user1 1 *************************************************************** >- >-churn all >- >- $ hg churn >- user3 3 *************************************************************** >- user1 3 *************************************************************** >- user2 2 ****************************************** >- >-churn excluding one dir >- >- $ hg churn -X e >- user3 3 *************************************************************** >- user2 2 ****************************************** >- user1 2 ****************************************** >- >-churn up to rev 2 >- >- $ hg churn -r :2 >- user2 2 *************************************************************** >- user1 1 ******************************** >- $ cd .. >- >-churn with aliases >- >- $ cat > ../aliases <<EOF >- > user1 alias1 >- > user3 alias3 >- > not-an-alias >- > EOF >- >-churn with .hgchurn >- >- $ mv ../aliases .hgchurn >- $ hg churn >- skipping malformed alias: not-an-alias >- alias3 3 ************************************************************** >- alias1 3 ************************************************************** >- user2 2 ***************************************** >- $ rm .hgchurn >- >-churn with column specifier >- >- $ COLUMNS=40 hg churn >- user3 3 *********************** >- user1 3 *********************** >- user2 2 *************** >- >-churn by hour >- >- $ hg churn -f '%H' -s >- 06 1 ***************** >- 09 2 ********************************* >- 12 4 ****************************************************************** >- 13 1 ***************** >- >- >-churn with separated added/removed lines >- >- $ hg rm d/g/f2.txt >- $ hg ci -Am "removed d/g/f2.txt" -u user1 -d 14:00 d/g/f2.txt >- $ hg churn --diffstat >- user1 +3/-1 +++++++++++++++++++++++++++++++++++++++++-------------- >- user3 +3/-0 +++++++++++++++++++++++++++++++++++++++++ >- user2 +2/-0 +++++++++++++++++++++++++++ >- >-churn --diffstat with color >- >- $ hg --config extensions.color= churn --config color.mode=ansi \ >- > --diffstat --color=always >- user1 +3/-1 [0;32m+++++++++++++++++++++++++++++++++++++++++[0m[0;31m--------------[0m >- user3 +3/-0 [0;32m+++++++++++++++++++++++++++++++++++++++++[0m >- user2 +2/-0 [0;32m+++++++++++++++++++++++++++[0m >- >- >-changeset number churn >- >- $ hg churn -c >- user1 4 *************************************************************** >- user3 3 *********************************************** >- user2 2 ******************************** >- >- $ echo 'with space = no-space' >> ../aliases >- $ echo a >> a >- $ hg commit -m a -u 'with space' -d 15:00 >- >-churn with space in alias >- >- $ hg churn --aliases ../aliases -r tip >- no-space 1 ************************************************************ >- >- $ cd .. >- >- >-Issue833: ZeroDivisionError >- >- $ hg init issue-833 >- $ cd issue-833 >- $ touch foo >- $ hg ci -Am foo >- adding foo >- >-this was failing with a ZeroDivisionError >- >- $ hg churn >- test 0 >- $ cd .. >!. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-clone-pull-corruption.t output changed >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-clone-pull-corruption.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-clone-pull-corruption.t.err >@@ -28,10 +28,8 @@ > > $ sleep 1 > $ hg pull ../source 2>/dev/null >+ waiting for lock on repository $TESTTMP/corrupted held by 'sheevaplug:29341' > pulling from ../source >- transaction abort! >- rollback completed >- abort: pretxncommit hook exited with status 1 > searching for changes > adding changesets > adding manifests >@@ -42,6 +40,9 @@ > see what happened > > $ wait >+ transaction abort! >+ rollback completed >+ abort: pretxncommit hook exited with status 1 > $ hg verify > checking changesets > checking manifests >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-clone-update-order.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-clone-update-order.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-clone-update-order.t.err >@@ -1,103 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ hg init >- $ echo foo > bar >- $ hg commit -Am default >- adding bar >- $ hg up -r null >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg branch mine >- marked working directory as branch mine >- $ echo hello > world >- $ hg commit -Am hello >- adding world >- $ hg up -r null >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg branch other >- marked working directory as branch other >- $ echo good > bye >- $ hg commit -Am other >- adding bye >- $ hg up -r mine >- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved >- >- $ hg clone -U -u . .#other ../b -r 0 -r 1 -r 2 -b other >- abort: cannot specify both --noupdate and --updaterev >- [255] >- >- $ hg clone -U .#other ../b -r 0 -r 1 -r 2 -b other >- adding changesets >- adding manifests >- adding file changes >- added 3 changesets with 3 changes to 3 files (+2 heads) >- $ rm -rf ../b >- >- $ hg clone -u . .#other ../b -r 0 -r 1 -r 2 -b other >- adding changesets >- adding manifests >- adding file changes >- added 3 changesets with 3 changes to 3 files (+2 heads) >- updating to branch mine >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm -rf ../b >- >- $ hg clone -u 0 .#other ../b -r 0 -r 1 -r 2 -b other >- adding changesets >- adding manifests >- adding file changes >- added 3 changesets with 3 changes to 3 files (+2 heads) >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm -rf ../b >- >- $ hg clone -u 1 .#other ../b -r 0 -r 1 -r 2 -b other >- adding changesets >- adding manifests >- adding file changes >- added 3 changesets with 3 changes to 3 files (+2 heads) >- updating to branch mine >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm -rf ../b >- >- $ hg clone -u 2 .#other ../b -r 0 -r 1 -r 2 -b other >- adding changesets >- adding manifests >- adding file changes >- added 3 changesets with 3 changes to 3 files (+2 heads) >- updating to branch other >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm -rf ../b >- >-Test -r mine ... mine is ignored: >- >- $ hg clone -u 2 .#other ../b -r mine -r 0 -r 1 -r 2 -b other >- adding changesets >- adding manifests >- adding file changes >- added 3 changesets with 3 changes to 3 files (+2 heads) >- updating to branch other >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm -rf ../b >- >- $ hg clone .#other ../b -b default -b mine >- adding changesets >- adding manifests >- adding file changes >- added 3 changesets with 3 changes to 3 files (+2 heads) >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm -rf ../b >- >- $ hg clone .#other ../b >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- updating to branch other >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm -rf ../b >- >- $ hg clone -U . ../c -r 1 -r 2 > /dev/null >- $ hg clone ../c ../b >- updating to branch other >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm -rf ../b ../c >- >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-clone-r.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-clone-r.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-clone-r.t.err >@@ -1,220 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ hg init test >- $ cd test >- >- $ echo 0 >> afile >- $ hg add afile >- $ hg commit -m "0.0" >- >- $ echo 1 >> afile >- $ hg commit -m "0.1" >- >- $ echo 2 >> afile >- $ hg commit -m "0.2" >- >- $ echo 3 >> afile >- $ hg commit -m "0.3" >- >- $ hg update -C 0 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >- $ echo 1 >> afile >- $ hg commit -m "1.1" >- created new head >- >- $ echo 2 >> afile >- $ hg commit -m "1.2" >- >- $ echo a line > fred >- $ echo 3 >> afile >- $ hg add fred >- $ hg commit -m "1.3" >- $ hg mv afile adifferentfile >- $ hg commit -m "1.3m" >- >- $ hg update -C 3 >- 1 files updated, 0 files merged, 2 files removed, 0 files unresolved >- >- $ hg mv afile anotherfile >- $ hg commit -m "0.3m" >- >- $ hg debugindex -f 1 .hg/store/data/afile.i >- rev flag offset length size base link p1 p2 nodeid >- 0 0000 0 3 2 0 0 -1 -1 362fef284ce2 >- 1 0000 3 5 4 1 1 0 -1 125144f7e028 >- 2 0000 8 7 6 2 2 1 -1 4c982badb186 >- 3 0000 15 9 8 3 3 2 -1 19b1fc555737 >- >- $ hg debugindex .hg/store/data/adifferentfile.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 75 0 7 2565f3199a74 000000000000 000000000000 >- >- $ hg debugindex .hg/store/data/anotherfile.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 75 0 8 2565f3199a74 000000000000 000000000000 >- >- $ hg debugindex .hg/store/data/fred.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 8 0 6 12ab3bcc5ea4 000000000000 000000000000 >- >- $ hg debugindex .hg/store/00manifest.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 48 0 0 43eadb1d2d06 000000000000 000000000000 >- 1 48 48 1 1 8b89697eba2c 43eadb1d2d06 000000000000 >- 2 96 48 2 2 626a32663c2f 8b89697eba2c 000000000000 >- 3 144 48 3 3 f54c32f13478 626a32663c2f 000000000000 >- 4 192 58 3 6 de68e904d169 626a32663c2f 000000000000 >- 5 250 68 3 7 09bb521d218d de68e904d169 000000000000 >- 6 318 54 6 8 1fde233dfb0f f54c32f13478 000000000000 >- >- $ hg verify >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 4 files, 9 changesets, 7 total revisions >- >- $ cd .. >- >- $ for i in 0 1 2 3 4 5 6 7 8; do >- > echo >- > echo ---- hg clone -r "$i" test test-"$i" >- > hg clone -r "$i" test test-"$i" >- > cd test-"$i" >- > hg verify >- > cd .. >- > done >- >- ---- hg clone -r 0 test test-0 >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 1 files, 1 changesets, 1 total revisions >- >- ---- hg clone -r 1 test test-1 >- adding changesets >- adding manifests >- adding file changes >- added 2 changesets with 2 changes to 1 files >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 1 files, 2 changesets, 2 total revisions >- >- ---- hg clone -r 2 test test-2 >- adding changesets >- adding manifests >- adding file changes >- added 3 changesets with 3 changes to 1 files >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 1 files, 3 changesets, 3 total revisions >- >- ---- hg clone -r 3 test test-3 >- adding changesets >- adding manifests >- adding file changes >- added 4 changesets with 4 changes to 1 files >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 1 files, 4 changesets, 4 total revisions >- >- ---- hg clone -r 4 test test-4 >- adding changesets >- adding manifests >- adding file changes >- added 2 changesets with 2 changes to 1 files >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 1 files, 2 changesets, 2 total revisions >- >- ---- hg clone -r 5 test test-5 >- adding changesets >- adding manifests >- adding file changes >- added 3 changesets with 3 changes to 1 files >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 1 files, 3 changesets, 3 total revisions >- >- ---- hg clone -r 6 test test-6 >- adding changesets >- adding manifests >- adding file changes >- added 4 changesets with 5 changes to 2 files >- updating to branch default >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 2 files, 4 changesets, 5 total revisions >- >- ---- hg clone -r 7 test test-7 >- adding changesets >- adding manifests >- adding file changes >- added 5 changesets with 6 changes to 3 files >- updating to branch default >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 3 files, 5 changesets, 6 total revisions >- >- ---- hg clone -r 8 test test-8 >- adding changesets >- adding manifests >- adding file changes >- added 5 changesets with 5 changes to 2 files >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 2 files, 5 changesets, 5 total revisions >- >- $ cd test-8 >- $ hg pull ../test-7 >- pulling from ../test-7 >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 4 changesets with 2 changes to 3 files (+1 heads) >- (run 'hg heads' to see heads, 'hg merge' to merge) >- $ hg verify >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 4 files, 9 changesets, 7 total revisions >- $ cd .. >- >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-clone.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-clone.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-clone.t.err >@@ -1,448 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > Prepare repo a: > > $ mkdir a >- $ cd a >- $ hg init >- $ echo a > a >- $ hg add a >- $ hg commit -m test >- $ echo first line > b >- $ hg add b >- >-Create a non-inlined filelog: >- >- $ python -c 'for x in range(10000): print x' >> data1 >- $ for j in 0 1 2 3 4 5 6 7 8 9; do >- > cat data1 >> b >- > hg commit -m test >- > done >- >-List files in store/data (should show a 'b.d'): >- >- $ for i in .hg/store/data/*; do >- > echo $i >- > done >- .hg/store/data/a.i >- .hg/store/data/b.d >- .hg/store/data/b.i >- >-Default operation: >- >- $ hg clone . ../b >- updating to branch default >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ cd ../b >- $ cat a >- a >- $ hg verify >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 2 files, 11 changesets, 11 total revisions >- >-No update, with debug option: >- >- $ hg --debug clone -U . ../c >- linked 8 files >- $ cd ../c >- $ cat a 2>/dev/null || echo "a not present" >- a not present >- $ hg verify >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 2 files, 11 changesets, 11 total revisions >- >-Default destination: >- >- $ mkdir ../d >- $ cd ../d >- $ hg clone ../a >- destination directory: a >- updating to branch default >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ cd a >- $ hg cat a >- a >- $ cd ../.. >- >-Check that we drop the 'file:' from the path before writing the .hgrc: >- >- $ hg clone file:a e >- updating to branch default >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ grep 'file:' e/.hg/hgrc >- [1] >- >-Check that path aliases are expanded: >- >- $ hg clone -q -U --config 'paths.foobar=a#0' foobar f >- $ hg -R f showconfig paths.default >- $TESTTMP/a#0 >- >-Use --pull: >- >- $ hg clone --pull a g >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 11 changesets with 11 changes to 2 files >- updating to branch default >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg -R g verify >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 2 files, 11 changesets, 11 total revisions >- >-Clone to '.': >- >- $ mkdir h >- $ cd h >- $ hg clone ../a . >- updating to branch default >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ cd .. >- >- >-*** Tests for option -u *** >- >-Adding some more history to repo a: >- >- $ cd a >- $ hg tag ref1 >- $ echo the quick brown fox >a >- $ hg ci -m "hacked default" >- $ hg up ref1 >- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg branch stable >- marked working directory as branch stable >- $ echo some text >a >- $ hg ci -m "starting branch stable" >- $ hg tag ref2 >- $ echo some more text >a >- $ hg ci -m "another change for branch stable" >- $ hg up ref2 >- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg parents >- changeset: 13:e8ece76546a6 >- branch: stable >- tag: ref2 >- parent: 10:a7949464abda >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: starting branch stable >- >- >-Repo a has two heads: >- >- $ hg heads >- changeset: 15:0aae7cf88f0d >- branch: stable >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: another change for branch stable >- >- changeset: 12:f21241060d6a >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: hacked default >- >- >- $ cd .. >- >- >-Testing --noupdate with --updaterev (must abort): >- >- $ hg clone --noupdate --updaterev 1 a ua >- abort: cannot specify both --noupdate and --updaterev >- [255] >- >- >-Testing clone -u: >- >- $ hg clone -u . a ua >- updating to branch stable >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-Repo ua has both heads: >- >- $ hg -R ua heads >- changeset: 15:0aae7cf88f0d >- branch: stable >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: another change for branch stable >- >- changeset: 12:f21241060d6a >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: hacked default >- >- >-Same revision checked out in repo a and ua: >- >- $ hg -R a parents --template "{node|short}\n" >- e8ece76546a6 >- $ hg -R ua parents --template "{node|short}\n" >- e8ece76546a6 >- >- $ rm -r ua >- >- >-Testing clone --pull -u: >- >- $ hg clone --pull -u . a ua >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 16 changesets with 16 changes to 3 files (+1 heads) >- updating to branch stable >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-Repo ua has both heads: >- >- $ hg -R ua heads >- changeset: 15:0aae7cf88f0d >- branch: stable >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: another change for branch stable >- >- changeset: 12:f21241060d6a >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: hacked default >- >- >-Same revision checked out in repo a and ua: >- >- $ hg -R a parents --template "{node|short}\n" >- e8ece76546a6 >- $ hg -R ua parents --template "{node|short}\n" >- e8ece76546a6 >- >- $ rm -r ua >- >- >-Testing clone -u <branch>: >- >- $ hg clone -u stable a ua >- updating to branch stable >- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-Repo ua has both heads: >- >- $ hg -R ua heads >- changeset: 15:0aae7cf88f0d >- branch: stable >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: another change for branch stable >- >- changeset: 12:f21241060d6a >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: hacked default >- >- >-Branch 'stable' is checked out: >- >- $ hg -R ua parents >- changeset: 15:0aae7cf88f0d >- branch: stable >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: another change for branch stable >- >- >- $ rm -r ua >- >- >-Testing default checkout: >- >- $ hg clone a ua >- updating to branch default >- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-Repo ua has both heads: >- >- $ hg -R ua heads >- changeset: 15:0aae7cf88f0d >- branch: stable >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: another change for branch stable >- >- changeset: 12:f21241060d6a >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: hacked default >- >- >-Branch 'default' is checked out: >- >- $ hg -R ua parents >- changeset: 12:f21241060d6a >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: hacked default >- >- >- $ rm -r ua >- >- >-Testing #<branch>: >- >- $ hg clone -u . a#stable ua >- adding changesets >- adding manifests >- adding file changes >- added 14 changesets with 14 changes to 3 files >- updating to branch stable >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-Repo ua has branch 'stable' and 'default' (was changed in fd511e9eeea6): >- >- $ hg -R ua heads >- changeset: 13:0aae7cf88f0d >- branch: stable >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: another change for branch stable >- >- changeset: 10:a7949464abda >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: test >- >- >-Same revision checked out in repo a and ua: >- >- $ hg -R a parents --template "{node|short}\n" >- e8ece76546a6 >- $ hg -R ua parents --template "{node|short}\n" >- e8ece76546a6 >- >- $ rm -r ua >- >- >-Testing -u -r <branch>: >- >- $ hg clone -u . -r stable a ua >- adding changesets >- adding manifests >- adding file changes >- added 14 changesets with 14 changes to 3 files >- updating to branch stable >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-Repo ua has branch 'stable' and 'default' (was changed in fd511e9eeea6): >- >- $ hg -R ua heads >- changeset: 13:0aae7cf88f0d >- branch: stable >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: another change for branch stable >- >- changeset: 10:a7949464abda >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: test >- >- >-Same revision checked out in repo a and ua: >- >- $ hg -R a parents --template "{node|short}\n" >- e8ece76546a6 >- $ hg -R ua parents --template "{node|short}\n" >- e8ece76546a6 >- >- $ rm -r ua >- >- >-Testing -r <branch>: >- >- $ hg clone -r stable a ua >- adding changesets >- adding manifests >- adding file changes >- added 14 changesets with 14 changes to 3 files >- updating to branch stable >- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-Repo ua has branch 'stable' and 'default' (was changed in fd511e9eeea6): >- >- $ hg -R ua heads >- changeset: 13:0aae7cf88f0d >- branch: stable >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: another change for branch stable >- >- changeset: 10:a7949464abda >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: test >- >- >-Branch 'stable' is checked out: >- >- $ hg -R ua parents >- changeset: 13:0aae7cf88f0d >- branch: stable >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: another change for branch stable >- >- >- $ rm -r ua >- >- >-Issue2267: Error in 1.6 hg.py: TypeError: 'NoneType' object is not >-iterable in addbranchrevs() >- >- $ cat <<EOF > simpleclone.py >- > from mercurial import ui, hg >- > myui = ui.ui() >- > repo = hg.repository(myui, 'a') >- > hg.clone(myui, repo, dest="ua") >- > EOF >- >- $ python simpleclone.py >- updating to branch default >- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >- $ rm -r ua >- >- $ cat <<EOF > branchclone.py >- > from mercurial import ui, hg >- > myui = ui.ui() >- > repo = hg.repository(myui, 'a') >- > hg.clone(myui, repo, dest="ua", branch=["stable",]) >- > EOF >- >- $ python branchclone.py >- adding changesets >- adding manifests >- adding file changes >- added 14 changesets with 14 changes to 3 files >- updating to branch stable >- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm -r ua >!.. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-command-template.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-command-template.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-command-template.t.err >@@ -1,1333 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ hg init a >- $ cd a >- $ echo a > a >- $ hg add a >- $ echo line 1 > b >- $ echo line 2 >> b >- $ hg commit -l b -d '1000000 0' -u 'User Name <user@hostname>' >- >- $ hg add b >- $ echo other 1 > c >- $ echo other 2 >> c >- $ echo >> c >- $ echo other 3 >> c >- $ hg commit -l c -d '1100000 0' -u 'A. N. Other <other@place>' >- >- $ hg add c >- $ hg commit -m 'no person' -d '1200000 0' -u 'other@place' >- $ echo c >> c >- $ hg commit -m 'no user, no domain' -d '1300000 0' -u 'person' >- >- $ echo foo > .hg/branch >- $ hg commit -m 'new branch' -d '1400000 0' -u 'person' >- >- $ hg co -q 3 >- $ echo other 4 >> d >- $ hg add d >- $ hg commit -m 'new head' -d '1500000 0' -u 'person' >- >- $ hg merge -q foo >- $ hg commit -m 'merge' -d '1500001 0' -u 'person' >- >-Second branch starting at nullrev: >- >- $ hg update null >- 0 files updated, 0 files merged, 4 files removed, 0 files unresolved >- $ echo second > second >- $ hg add second >- $ hg commit -m second -d '1000000 0' -u 'User Name <user@hostname>' >- created new head >- >- $ echo third > third >- $ hg add third >- $ hg mv second fourth >- $ hg commit -m third -d "2020-01-01 10:01" >- >-Make sure user/global hgrc does not affect tests >- >- $ echo '[ui]' > .hg/hgrc >- $ echo 'logtemplate =' >> .hg/hgrc >- $ echo 'style =' >> .hg/hgrc >- >-Default style is like normal output: >- >- $ hg log > log.out >- $ hg log --style default > style.out >- $ cmp log.out style.out || diff -u log.out style.out >- >- $ hg log -v > log.out >- $ hg log -v --style default > style.out >- $ cmp log.out style.out || diff -u log.out style.out >- >- $ hg log --debug > log.out >- $ hg log --debug --style default > style.out >- $ cmp log.out style.out || diff -u log.out style.out >- >-Revision with no copies (used to print a traceback): >- >- $ hg tip -v --template '\n' >- >- >-Compact style works: >- >- $ hg log --style compact >- 8[tip] 95c24699272e 2020-01-01 10:01 +0000 test >- third >- >- 7:-1 29114dbae42b 1970-01-12 13:46 +0000 user >- second >- >- 6:5,4 c7b487c6c50e 1970-01-18 08:40 +0000 person >- merge >- >- 5:3 13207e5a10d9 1970-01-18 08:40 +0000 person >- new head >- >- 4 32a18f097fcc 1970-01-17 04:53 +0000 person >- new branch >- >- 3 10e46f2dcbf4 1970-01-16 01:06 +0000 person >- no user, no domain >- >- 2 97054abb4ab8 1970-01-14 21:20 +0000 other >- no person >- >- 1 b608e9d1a3f0 1970-01-13 17:33 +0000 other >- other 1 >- >- 0 1e4e1b8f71e0 1970-01-12 13:46 +0000 user >- line 1 >- >- >- $ hg log -v --style compact >- 8[tip] 95c24699272e 2020-01-01 10:01 +0000 test >- third >- >- 7:-1 29114dbae42b 1970-01-12 13:46 +0000 User Name <user@hostname> >- second >- >- 6:5,4 c7b487c6c50e 1970-01-18 08:40 +0000 person >- merge >- >- 5:3 13207e5a10d9 1970-01-18 08:40 +0000 person >- new head >- >- 4 32a18f097fcc 1970-01-17 04:53 +0000 person >- new branch >- >- 3 10e46f2dcbf4 1970-01-16 01:06 +0000 person >- no user, no domain >- >- 2 97054abb4ab8 1970-01-14 21:20 +0000 other@place >- no person >- >- 1 b608e9d1a3f0 1970-01-13 17:33 +0000 A. N. Other <other@place> >- other 1 >- other 2 >- >- other 3 >- >- 0 1e4e1b8f71e0 1970-01-12 13:46 +0000 User Name <user@hostname> >- line 1 >- line 2 >- >- >- $ hg log --debug --style compact >- 8[tip]:7,-1 95c24699272e 2020-01-01 10:01 +0000 test >- third >- >- 7:-1,-1 29114dbae42b 1970-01-12 13:46 +0000 User Name <user@hostname> >- second >- >- 6:5,4 c7b487c6c50e 1970-01-18 08:40 +0000 person >- merge >- >- 5:3,-1 13207e5a10d9 1970-01-18 08:40 +0000 person >- new head >- >- 4:3,-1 32a18f097fcc 1970-01-17 04:53 +0000 person >- new branch >- >- 3:2,-1 10e46f2dcbf4 1970-01-16 01:06 +0000 person >- no user, no domain >- >- 2:1,-1 97054abb4ab8 1970-01-14 21:20 +0000 other@place >- no person >- >- 1:0,-1 b608e9d1a3f0 1970-01-13 17:33 +0000 A. N. Other <other@place> >- other 1 >- other 2 >- >- other 3 >- >- 0:-1,-1 1e4e1b8f71e0 1970-01-12 13:46 +0000 User Name <user@hostname> >- line 1 >- line 2 >- >- >-Test xml styles: >- >- $ hg log --style xml >- <?xml version="1.0"?> >- <log> >- <logentry revision="8" node="95c24699272ef57d062b8bccc32c878bf841784a"> >- <tag>tip</tag> >- <author email="test">test</author> >- <date>2020-01-01T10:01:00+00:00</date> >- <msg xml:space="preserve">third</msg> >- </logentry> >- <logentry revision="7" node="29114dbae42b9f078cf2714dbe3a86bba8ec7453"> >- <parent revision="-1" node="0000000000000000000000000000000000000000" /> >- <author email="user@hostname">User Name</author> >- <date>1970-01-12T13:46:40+00:00</date> >- <msg xml:space="preserve">second</msg> >- </logentry> >- <logentry revision="6" node="c7b487c6c50ef1cf464cafdc4f4f5e615fc5999f"> >- <parent revision="5" node="13207e5a10d9fd28ec424934298e176197f2c67f" /> >- <parent revision="4" node="32a18f097fcccf76ef282f62f8a85b3adf8d13c4" /> >- <author email="person">person</author> >- <date>1970-01-18T08:40:01+00:00</date> >- <msg xml:space="preserve">merge</msg> >- </logentry> >- <logentry revision="5" node="13207e5a10d9fd28ec424934298e176197f2c67f"> >- <parent revision="3" node="10e46f2dcbf4823578cf180f33ecf0b957964c47" /> >- <author email="person">person</author> >- <date>1970-01-18T08:40:00+00:00</date> >- <msg xml:space="preserve">new head</msg> >- </logentry> >- <logentry revision="4" node="32a18f097fcccf76ef282f62f8a85b3adf8d13c4"> >- <branch>foo</branch> >- <author email="person">person</author> >- <date>1970-01-17T04:53:20+00:00</date> >- <msg xml:space="preserve">new branch</msg> >- </logentry> >- <logentry revision="3" node="10e46f2dcbf4823578cf180f33ecf0b957964c47"> >- <author email="person">person</author> >- <date>1970-01-16T01:06:40+00:00</date> >- <msg xml:space="preserve">no user, no domain</msg> >- </logentry> >- <logentry revision="2" node="97054abb4ab824450e9164180baf491ae0078465"> >- <author email="other@place">other</author> >- <date>1970-01-14T21:20:00+00:00</date> >- <msg xml:space="preserve">no person</msg> >- </logentry> >- <logentry revision="1" node="b608e9d1a3f0273ccf70fb85fd6866b3482bf965"> >- <author email="other@place">A. N. Other</author> >- <date>1970-01-13T17:33:20+00:00</date> >- <msg xml:space="preserve">other 1 >- other 2 >- >- other 3</msg> >- </logentry> >- <logentry revision="0" node="1e4e1b8f71e05681d422154f5421e385fec3454f"> >- <author email="user@hostname">User Name</author> >- <date>1970-01-12T13:46:40+00:00</date> >- <msg xml:space="preserve">line 1 >- line 2</msg> >- </logentry> >- </log> >- >- $ hg log -v --style xml >- <?xml version="1.0"?> >- <log> >- <logentry revision="8" node="95c24699272ef57d062b8bccc32c878bf841784a"> >- <tag>tip</tag> >- <author email="test">test</author> >- <date>2020-01-01T10:01:00+00:00</date> >- <msg xml:space="preserve">third</msg> >- <paths> >- <path action="A">fourth</path> >- <path action="A">third</path> >- <path action="R">second</path> >- </paths> >- <copies> >- <copy source="second">fourth</copy> >- </copies> >- </logentry> >- <logentry revision="7" node="29114dbae42b9f078cf2714dbe3a86bba8ec7453"> >- <parent revision="-1" node="0000000000000000000000000000000000000000" /> >- <author email="user@hostname">User Name</author> >- <date>1970-01-12T13:46:40+00:00</date> >- <msg xml:space="preserve">second</msg> >- <paths> >- <path action="A">second</path> >- </paths> >- </logentry> >- <logentry revision="6" node="c7b487c6c50ef1cf464cafdc4f4f5e615fc5999f"> >- <parent revision="5" node="13207e5a10d9fd28ec424934298e176197f2c67f" /> >- <parent revision="4" node="32a18f097fcccf76ef282f62f8a85b3adf8d13c4" /> >- <author email="person">person</author> >- <date>1970-01-18T08:40:01+00:00</date> >- <msg xml:space="preserve">merge</msg> >- <paths> >- </paths> >- </logentry> >- <logentry revision="5" node="13207e5a10d9fd28ec424934298e176197f2c67f"> >- <parent revision="3" node="10e46f2dcbf4823578cf180f33ecf0b957964c47" /> >- <author email="person">person</author> >- <date>1970-01-18T08:40:00+00:00</date> >- <msg xml:space="preserve">new head</msg> >- <paths> >- <path action="A">d</path> >- </paths> >- </logentry> >- <logentry revision="4" node="32a18f097fcccf76ef282f62f8a85b3adf8d13c4"> >- <branch>foo</branch> >- <author email="person">person</author> >- <date>1970-01-17T04:53:20+00:00</date> >- <msg xml:space="preserve">new branch</msg> >- <paths> >- </paths> >- </logentry> >- <logentry revision="3" node="10e46f2dcbf4823578cf180f33ecf0b957964c47"> >- <author email="person">person</author> >- <date>1970-01-16T01:06:40+00:00</date> >- <msg xml:space="preserve">no user, no domain</msg> >- <paths> >- <path action="M">c</path> >- </paths> >- </logentry> >- <logentry revision="2" node="97054abb4ab824450e9164180baf491ae0078465"> >- <author email="other@place">other</author> >- <date>1970-01-14T21:20:00+00:00</date> >- <msg xml:space="preserve">no person</msg> >- <paths> >- <path action="A">c</path> >- </paths> >- </logentry> >- <logentry revision="1" node="b608e9d1a3f0273ccf70fb85fd6866b3482bf965"> >- <author email="other@place">A. N. Other</author> >- <date>1970-01-13T17:33:20+00:00</date> >- <msg xml:space="preserve">other 1 >- other 2 >- >- other 3</msg> >- <paths> >- <path action="A">b</path> >- </paths> >- </logentry> >- <logentry revision="0" node="1e4e1b8f71e05681d422154f5421e385fec3454f"> >- <author email="user@hostname">User Name</author> >- <date>1970-01-12T13:46:40+00:00</date> >- <msg xml:space="preserve">line 1 >- line 2</msg> >- <paths> >- <path action="A">a</path> >- </paths> >- </logentry> >- </log> >- >- $ hg log --debug --style xml >- <?xml version="1.0"?> >- <log> >- <logentry revision="8" node="95c24699272ef57d062b8bccc32c878bf841784a"> >- <tag>tip</tag> >- <parent revision="7" node="29114dbae42b9f078cf2714dbe3a86bba8ec7453" /> >- <parent revision="-1" node="0000000000000000000000000000000000000000" /> >- <author email="test">test</author> >- <date>2020-01-01T10:01:00+00:00</date> >- <msg xml:space="preserve">third</msg> >- <paths> >- <path action="A">fourth</path> >- <path action="A">third</path> >- <path action="R">second</path> >- </paths> >- <copies> >- <copy source="second">fourth</copy> >- </copies> >- <extra key="branch">default</extra> >- </logentry> >- <logentry revision="7" node="29114dbae42b9f078cf2714dbe3a86bba8ec7453"> >- <parent revision="-1" node="0000000000000000000000000000000000000000" /> >- <parent revision="-1" node="0000000000000000000000000000000000000000" /> >- <author email="user@hostname">User Name</author> >- <date>1970-01-12T13:46:40+00:00</date> >- <msg xml:space="preserve">second</msg> >- <paths> >- <path action="A">second</path> >- </paths> >- <extra key="branch">default</extra> >- </logentry> >- <logentry revision="6" node="c7b487c6c50ef1cf464cafdc4f4f5e615fc5999f"> >- <parent revision="5" node="13207e5a10d9fd28ec424934298e176197f2c67f" /> >- <parent revision="4" node="32a18f097fcccf76ef282f62f8a85b3adf8d13c4" /> >- <author email="person">person</author> >- <date>1970-01-18T08:40:01+00:00</date> >- <msg xml:space="preserve">merge</msg> >- <paths> >- </paths> >- <extra key="branch">default</extra> >- </logentry> >- <logentry revision="5" node="13207e5a10d9fd28ec424934298e176197f2c67f"> >- <parent revision="3" node="10e46f2dcbf4823578cf180f33ecf0b957964c47" /> >- <parent revision="-1" node="0000000000000000000000000000000000000000" /> >- <author email="person">person</author> >- <date>1970-01-18T08:40:00+00:00</date> >- <msg xml:space="preserve">new head</msg> >- <paths> >- <path action="A">d</path> >- </paths> >- <extra key="branch">default</extra> >- </logentry> >- <logentry revision="4" node="32a18f097fcccf76ef282f62f8a85b3adf8d13c4"> >- <branch>foo</branch> >- <parent revision="3" node="10e46f2dcbf4823578cf180f33ecf0b957964c47" /> >- <parent revision="-1" node="0000000000000000000000000000000000000000" /> >- <author email="person">person</author> >- <date>1970-01-17T04:53:20+00:00</date> >- <msg xml:space="preserve">new branch</msg> >- <paths> >- </paths> >- <extra key="branch">foo</extra> >- </logentry> >- <logentry revision="3" node="10e46f2dcbf4823578cf180f33ecf0b957964c47"> >- <parent revision="2" node="97054abb4ab824450e9164180baf491ae0078465" /> >- <parent revision="-1" node="0000000000000000000000000000000000000000" /> >- <author email="person">person</author> >- <date>1970-01-16T01:06:40+00:00</date> >- <msg xml:space="preserve">no user, no domain</msg> >- <paths> >- <path action="M">c</path> >- </paths> >- <extra key="branch">default</extra> >- </logentry> >- <logentry revision="2" node="97054abb4ab824450e9164180baf491ae0078465"> >- <parent revision="1" node="b608e9d1a3f0273ccf70fb85fd6866b3482bf965" /> >- <parent revision="-1" node="0000000000000000000000000000000000000000" /> >- <author email="other@place">other</author> >- <date>1970-01-14T21:20:00+00:00</date> >- <msg xml:space="preserve">no person</msg> >- <paths> >- <path action="A">c</path> >- </paths> >- <extra key="branch">default</extra> >- </logentry> >- <logentry revision="1" node="b608e9d1a3f0273ccf70fb85fd6866b3482bf965"> >- <parent revision="0" node="1e4e1b8f71e05681d422154f5421e385fec3454f" /> >- <parent revision="-1" node="0000000000000000000000000000000000000000" /> >- <author email="other@place">A. N. Other</author> >- <date>1970-01-13T17:33:20+00:00</date> >- <msg xml:space="preserve">other 1 >- other 2 >- >- other 3</msg> >- <paths> >- <path action="A">b</path> >- </paths> >- <extra key="branch">default</extra> >- </logentry> >- <logentry revision="0" node="1e4e1b8f71e05681d422154f5421e385fec3454f"> >- <parent revision="-1" node="0000000000000000000000000000000000000000" /> >- <parent revision="-1" node="0000000000000000000000000000000000000000" /> >- <author email="user@hostname">User Name</author> >- <date>1970-01-12T13:46:40+00:00</date> >- <msg xml:space="preserve">line 1 >- line 2</msg> >- <paths> >- <path action="A">a</path> >- </paths> >- <extra key="branch">default</extra> >- </logentry> >- </log> >- >- >-Error if style not readable: >- >- $ touch q >- $ chmod 0 q >- $ hg log --style ./q >- abort: Permission denied: ./q >- [255] >- >-Error if no style: >- >- $ hg log --style notexist >- abort: style not found: notexist >- [255] >- >-Error if style missing key: >- >- $ echo 'q = q' > t >- $ hg log --style ./t >- abort: ./t: no key named 'changeset' >- [255] >- >-Error if include fails: >- >- $ echo 'changeset = q' >> t >- $ hg log --style ./t >- abort: template file ./q: Permission denied >- [255] >- >-Include works: >- >- $ rm q >- $ echo '{rev}' > q >- $ hg log --style ./t >- 8 >- 7 >- 6 >- 5 >- 4 >- 3 >- 2 >- 1 >- 0 >- >-ui.style works: >- >- $ echo '[ui]' > .hg/hgrc >- $ echo 'style = t' >> .hg/hgrc >- $ hg log >- 8 >- 7 >- 6 >- 5 >- 4 >- 3 >- 2 >- 1 >- 0 >- >- >-Issue338: >- >- $ hg log --style=changelog > changelog >- >- $ cat changelog >- 2020-01-01 test <test> >- >- * fourth, second, third: >- third >- [95c24699272e] [tip] >- >- 1970-01-12 User Name <user@hostname> >- >- * second: >- second >- [29114dbae42b] >- >- 1970-01-18 person <person> >- >- * merge >- [c7b487c6c50e] >- >- * d: >- new head >- [13207e5a10d9] >- >- 1970-01-17 person <person> >- >- * new branch >- [32a18f097fcc] <foo> >- >- 1970-01-16 person <person> >- >- * c: >- no user, no domain >- [10e46f2dcbf4] >- >- 1970-01-14 other <other@place> >- >- * c: >- no person >- [97054abb4ab8] >- >- 1970-01-13 A. N. Other <other@place> >- >- * b: >- other 1 other 2 >- >- other 3 >- [b608e9d1a3f0] >- >- 1970-01-12 User Name <user@hostname> >- >- * a: >- line 1 line 2 >- [1e4e1b8f71e0] >- >- >-Issue2130: xml output for 'hg heads' is malformed >- >- $ hg heads --style changelog >- 2020-01-01 test <test> >- >- * fourth, second, third: >- third >- [95c24699272e] [tip] >- >- 1970-01-18 person <person> >- >- * merge >- [c7b487c6c50e] >- >- 1970-01-17 person <person> >- >- * new branch >- [32a18f097fcc] <foo> >- >- >-Keys work: >- >- $ for key in author branches date desc file_adds file_dels file_mods \ >- > file_copies file_copies_switch files \ >- > manifest node parents rev tags diffstat extras; do >- > for mode in '' --verbose --debug; do >- > hg log $mode --template "$key$mode: {$key}\n" >- > done >- > done >- author: test >- author: User Name <user@hostname> >- author: person >- author: person >- author: person >- author: person >- author: other@place >- author: A. N. Other <other@place> >- author: User Name <user@hostname> >- author--verbose: test >- author--verbose: User Name <user@hostname> >- author--verbose: person >- author--verbose: person >- author--verbose: person >- author--verbose: person >- author--verbose: other@place >- author--verbose: A. N. Other <other@place> >- author--verbose: User Name <user@hostname> >- author--debug: test >- author--debug: User Name <user@hostname> >- author--debug: person >- author--debug: person >- author--debug: person >- author--debug: person >- author--debug: other@place >- author--debug: A. N. Other <other@place> >- author--debug: User Name <user@hostname> >- branches: >- branches: >- branches: >- branches: >- branches: foo >- branches: >- branches: >- branches: >- branches: >- branches--verbose: >- branches--verbose: >- branches--verbose: >- branches--verbose: >- branches--verbose: foo >- branches--verbose: >- branches--verbose: >- branches--verbose: >- branches--verbose: >- branches--debug: >- branches--debug: >- branches--debug: >- branches--debug: >- branches--debug: foo >- branches--debug: >- branches--debug: >- branches--debug: >- branches--debug: >- date: 1577872860.00 >- date: 1000000.00 >- date: 1500001.00 >- date: 1500000.00 >- date: 1400000.00 >- date: 1300000.00 >- date: 1200000.00 >- date: 1100000.00 >- date: 1000000.00 >- date--verbose: 1577872860.00 >- date--verbose: 1000000.00 >- date--verbose: 1500001.00 >- date--verbose: 1500000.00 >- date--verbose: 1400000.00 >- date--verbose: 1300000.00 >- date--verbose: 1200000.00 >- date--verbose: 1100000.00 >- date--verbose: 1000000.00 >- date--debug: 1577872860.00 >- date--debug: 1000000.00 >- date--debug: 1500001.00 >- date--debug: 1500000.00 >- date--debug: 1400000.00 >- date--debug: 1300000.00 >- date--debug: 1200000.00 >- date--debug: 1100000.00 >- date--debug: 1000000.00 >- desc: third >- desc: second >- desc: merge >- desc: new head >- desc: new branch >- desc: no user, no domain >- desc: no person >- desc: other 1 >- other 2 >- >- other 3 >- desc: line 1 >- line 2 >- desc--verbose: third >- desc--verbose: second >- desc--verbose: merge >- desc--verbose: new head >- desc--verbose: new branch >- desc--verbose: no user, no domain >- desc--verbose: no person >- desc--verbose: other 1 >- other 2 >- >- other 3 >- desc--verbose: line 1 >- line 2 >- desc--debug: third >- desc--debug: second >- desc--debug: merge >- desc--debug: new head >- desc--debug: new branch >- desc--debug: no user, no domain >- desc--debug: no person >- desc--debug: other 1 >- other 2 >- >- other 3 >- desc--debug: line 1 >- line 2 >- file_adds: fourth third >- file_adds: second >- file_adds: >- file_adds: d >- file_adds: >- file_adds: >- file_adds: c >- file_adds: b >- file_adds: a >- file_adds--verbose: fourth third >- file_adds--verbose: second >- file_adds--verbose: >- file_adds--verbose: d >- file_adds--verbose: >- file_adds--verbose: >- file_adds--verbose: c >- file_adds--verbose: b >- file_adds--verbose: a >- file_adds--debug: fourth third >- file_adds--debug: second >- file_adds--debug: >- file_adds--debug: d >- file_adds--debug: >- file_adds--debug: >- file_adds--debug: c >- file_adds--debug: b >- file_adds--debug: a >- file_dels: second >- file_dels: >- file_dels: >- file_dels: >- file_dels: >- file_dels: >- file_dels: >- file_dels: >- file_dels: >- file_dels--verbose: second >- file_dels--verbose: >- file_dels--verbose: >- file_dels--verbose: >- file_dels--verbose: >- file_dels--verbose: >- file_dels--verbose: >- file_dels--verbose: >- file_dels--verbose: >- file_dels--debug: second >- file_dels--debug: >- file_dels--debug: >- file_dels--debug: >- file_dels--debug: >- file_dels--debug: >- file_dels--debug: >- file_dels--debug: >- file_dels--debug: >- file_mods: >- file_mods: >- file_mods: >- file_mods: >- file_mods: >- file_mods: c >- file_mods: >- file_mods: >- file_mods: >- file_mods--verbose: >- file_mods--verbose: >- file_mods--verbose: >- file_mods--verbose: >- file_mods--verbose: >- file_mods--verbose: c >- file_mods--verbose: >- file_mods--verbose: >- file_mods--verbose: >- file_mods--debug: >- file_mods--debug: >- file_mods--debug: >- file_mods--debug: >- file_mods--debug: >- file_mods--debug: c >- file_mods--debug: >- file_mods--debug: >- file_mods--debug: >- file_copies: fourth (second) >- file_copies: >- file_copies: >- file_copies: >- file_copies: >- file_copies: >- file_copies: >- file_copies: >- file_copies: >- file_copies--verbose: fourth (second) >- file_copies--verbose: >- file_copies--verbose: >- file_copies--verbose: >- file_copies--verbose: >- file_copies--verbose: >- file_copies--verbose: >- file_copies--verbose: >- file_copies--verbose: >- file_copies--debug: fourth (second) >- file_copies--debug: >- file_copies--debug: >- file_copies--debug: >- file_copies--debug: >- file_copies--debug: >- file_copies--debug: >- file_copies--debug: >- file_copies--debug: >- file_copies_switch: >- file_copies_switch: >- file_copies_switch: >- file_copies_switch: >- file_copies_switch: >- file_copies_switch: >- file_copies_switch: >- file_copies_switch: >- file_copies_switch: >- file_copies_switch--verbose: >- file_copies_switch--verbose: >- file_copies_switch--verbose: >- file_copies_switch--verbose: >- file_copies_switch--verbose: >- file_copies_switch--verbose: >- file_copies_switch--verbose: >- file_copies_switch--verbose: >- file_copies_switch--verbose: >- file_copies_switch--debug: >- file_copies_switch--debug: >- file_copies_switch--debug: >- file_copies_switch--debug: >- file_copies_switch--debug: >- file_copies_switch--debug: >- file_copies_switch--debug: >- file_copies_switch--debug: >- file_copies_switch--debug: >- files: fourth second third >- files: second >- files: >- files: d >- files: >- files: c >- files: c >- files: b >- files: a >- files--verbose: fourth second third >- files--verbose: second >- files--verbose: >- files--verbose: d >- files--verbose: >- files--verbose: c >- files--verbose: c >- files--verbose: b >- files--verbose: a >- files--debug: fourth second third >- files--debug: second >- files--debug: >- files--debug: d >- files--debug: >- files--debug: c >- files--debug: c >- files--debug: b >- files--debug: a >- manifest: 8:94961b75a2da >- manifest: 7:f2dbc354b94e >- manifest: 6:91015e9dbdd7 >- manifest: 5:4dc3def4f9b4 >- manifest: 4:90ae8dda64e1 >- manifest: 3:cb5a1327723b >- manifest: 2:6e0e82995c35 >- manifest: 1:4e8d705b1e53 >- manifest: 0:a0c8bcbbb45c >- manifest--verbose: 8:94961b75a2da >- manifest--verbose: 7:f2dbc354b94e >- manifest--verbose: 6:91015e9dbdd7 >- manifest--verbose: 5:4dc3def4f9b4 >- manifest--verbose: 4:90ae8dda64e1 >- manifest--verbose: 3:cb5a1327723b >- manifest--verbose: 2:6e0e82995c35 >- manifest--verbose: 1:4e8d705b1e53 >- manifest--verbose: 0:a0c8bcbbb45c >- manifest--debug: 8:94961b75a2da554b4df6fb599e5bfc7d48de0c64 >- manifest--debug: 7:f2dbc354b94e5ec0b4f10680ee0cee816101d0bf >- manifest--debug: 6:91015e9dbdd76a6791085d12b0a0ec7fcd22ffbf >- manifest--debug: 5:4dc3def4f9b4c6e8de820f6ee74737f91e96a216 >- manifest--debug: 4:90ae8dda64e1a876c792bccb9af66284f6018363 >- manifest--debug: 3:cb5a1327723bada42f117e4c55a303246eaf9ccc >- manifest--debug: 2:6e0e82995c35d0d57a52aca8da4e56139e06b4b1 >- manifest--debug: 1:4e8d705b1e53e3f9375e0e60dc7b525d8211fe55 >- manifest--debug: 0:a0c8bcbbb45c63b90b70ad007bf38961f64f2af0 >- node: 95c24699272ef57d062b8bccc32c878bf841784a >- node: 29114dbae42b9f078cf2714dbe3a86bba8ec7453 >- node: c7b487c6c50ef1cf464cafdc4f4f5e615fc5999f >- node: 13207e5a10d9fd28ec424934298e176197f2c67f >- node: 32a18f097fcccf76ef282f62f8a85b3adf8d13c4 >- node: 10e46f2dcbf4823578cf180f33ecf0b957964c47 >- node: 97054abb4ab824450e9164180baf491ae0078465 >- node: b608e9d1a3f0273ccf70fb85fd6866b3482bf965 >- node: 1e4e1b8f71e05681d422154f5421e385fec3454f >- node--verbose: 95c24699272ef57d062b8bccc32c878bf841784a >- node--verbose: 29114dbae42b9f078cf2714dbe3a86bba8ec7453 >- node--verbose: c7b487c6c50ef1cf464cafdc4f4f5e615fc5999f >- node--verbose: 13207e5a10d9fd28ec424934298e176197f2c67f >- node--verbose: 32a18f097fcccf76ef282f62f8a85b3adf8d13c4 >- node--verbose: 10e46f2dcbf4823578cf180f33ecf0b957964c47 >- node--verbose: 97054abb4ab824450e9164180baf491ae0078465 >- node--verbose: b608e9d1a3f0273ccf70fb85fd6866b3482bf965 >- node--verbose: 1e4e1b8f71e05681d422154f5421e385fec3454f >- node--debug: 95c24699272ef57d062b8bccc32c878bf841784a >- node--debug: 29114dbae42b9f078cf2714dbe3a86bba8ec7453 >- node--debug: c7b487c6c50ef1cf464cafdc4f4f5e615fc5999f >- node--debug: 13207e5a10d9fd28ec424934298e176197f2c67f >- node--debug: 32a18f097fcccf76ef282f62f8a85b3adf8d13c4 >- node--debug: 10e46f2dcbf4823578cf180f33ecf0b957964c47 >- node--debug: 97054abb4ab824450e9164180baf491ae0078465 >- node--debug: b608e9d1a3f0273ccf70fb85fd6866b3482bf965 >- node--debug: 1e4e1b8f71e05681d422154f5421e385fec3454f >- parents: >- parents: -1:000000000000 >- parents: 5:13207e5a10d9 4:32a18f097fcc >- parents: 3:10e46f2dcbf4 >- parents: >- parents: >- parents: >- parents: >- parents: >- parents--verbose: >- parents--verbose: -1:000000000000 >- parents--verbose: 5:13207e5a10d9 4:32a18f097fcc >- parents--verbose: 3:10e46f2dcbf4 >- parents--verbose: >- parents--verbose: >- parents--verbose: >- parents--verbose: >- parents--verbose: >- parents--debug: 7:29114dbae42b9f078cf2714dbe3a86bba8ec7453 -1:0000000000000000000000000000000000000000 >- parents--debug: -1:0000000000000000000000000000000000000000 -1:0000000000000000000000000000000000000000 >- parents--debug: 5:13207e5a10d9fd28ec424934298e176197f2c67f 4:32a18f097fcccf76ef282f62f8a85b3adf8d13c4 >- parents--debug: 3:10e46f2dcbf4823578cf180f33ecf0b957964c47 -1:0000000000000000000000000000000000000000 >- parents--debug: 3:10e46f2dcbf4823578cf180f33ecf0b957964c47 -1:0000000000000000000000000000000000000000 >- parents--debug: 2:97054abb4ab824450e9164180baf491ae0078465 -1:0000000000000000000000000000000000000000 >- parents--debug: 1:b608e9d1a3f0273ccf70fb85fd6866b3482bf965 -1:0000000000000000000000000000000000000000 >- parents--debug: 0:1e4e1b8f71e05681d422154f5421e385fec3454f -1:0000000000000000000000000000000000000000 >- parents--debug: -1:0000000000000000000000000000000000000000 -1:0000000000000000000000000000000000000000 >- rev: 8 >- rev: 7 >- rev: 6 >- rev: 5 >- rev: 4 >- rev: 3 >- rev: 2 >- rev: 1 >- rev: 0 >- rev--verbose: 8 >- rev--verbose: 7 >- rev--verbose: 6 >- rev--verbose: 5 >- rev--verbose: 4 >- rev--verbose: 3 >- rev--verbose: 2 >- rev--verbose: 1 >- rev--verbose: 0 >- rev--debug: 8 >- rev--debug: 7 >- rev--debug: 6 >- rev--debug: 5 >- rev--debug: 4 >- rev--debug: 3 >- rev--debug: 2 >- rev--debug: 1 >- rev--debug: 0 >- tags: tip >- tags: >- tags: >- tags: >- tags: >- tags: >- tags: >- tags: >- tags: >- tags--verbose: tip >- tags--verbose: >- tags--verbose: >- tags--verbose: >- tags--verbose: >- tags--verbose: >- tags--verbose: >- tags--verbose: >- tags--verbose: >- tags--debug: tip >- tags--debug: >- tags--debug: >- tags--debug: >- tags--debug: >- tags--debug: >- tags--debug: >- tags--debug: >- tags--debug: >- diffstat: 3: +2/-1 >- diffstat: 1: +1/-0 >- diffstat: 0: +0/-0 >- diffstat: 1: +1/-0 >- diffstat: 0: +0/-0 >- diffstat: 1: +1/-0 >- diffstat: 1: +4/-0 >- diffstat: 1: +2/-0 >- diffstat: 1: +1/-0 >- diffstat--verbose: 3: +2/-1 >- diffstat--verbose: 1: +1/-0 >- diffstat--verbose: 0: +0/-0 >- diffstat--verbose: 1: +1/-0 >- diffstat--verbose: 0: +0/-0 >- diffstat--verbose: 1: +1/-0 >- diffstat--verbose: 1: +4/-0 >- diffstat--verbose: 1: +2/-0 >- diffstat--verbose: 1: +1/-0 >- diffstat--debug: 3: +2/-1 >- diffstat--debug: 1: +1/-0 >- diffstat--debug: 0: +0/-0 >- diffstat--debug: 1: +1/-0 >- diffstat--debug: 0: +0/-0 >- diffstat--debug: 1: +1/-0 >- diffstat--debug: 1: +4/-0 >- diffstat--debug: 1: +2/-0 >- diffstat--debug: 1: +1/-0 >- extras: branch=default >- extras: branch=default >- extras: branch=default >- extras: branch=default >- extras: branch=foo >- extras: branch=default >- extras: branch=default >- extras: branch=default >- extras: branch=default >- extras--verbose: branch=default >- extras--verbose: branch=default >- extras--verbose: branch=default >- extras--verbose: branch=default >- extras--verbose: branch=foo >- extras--verbose: branch=default >- extras--verbose: branch=default >- extras--verbose: branch=default >- extras--verbose: branch=default >- extras--debug: branch=default >- extras--debug: branch=default >- extras--debug: branch=default >- extras--debug: branch=default >- extras--debug: branch=foo >- extras--debug: branch=default >- extras--debug: branch=default >- extras--debug: branch=default >- extras--debug: branch=default >- >- >-Filters work: >- >- $ hg log --template '{author|domain}\n' >- >- hostname >- >- >- >- >- place >- place >- hostname >- >- $ hg log --template '{author|person}\n' >- test >- User Name >- person >- person >- person >- person >- other >- A. N. Other >- User Name >- >- $ hg log --template '{author|user}\n' >- test >- user >- person >- person >- person >- person >- other >- other >- user >- >- $ hg log --template '{date|age}\n' > /dev/null || exit 1 >- >- $ hg log -l1 --template '{date|age}\n' >- in the future >- $ hg log --template '{date|date}\n' >- Wed Jan 01 10:01:00 2020 +0000 >- Mon Jan 12 13:46:40 1970 +0000 >- Sun Jan 18 08:40:01 1970 +0000 >- Sun Jan 18 08:40:00 1970 +0000 >- Sat Jan 17 04:53:20 1970 +0000 >- Fri Jan 16 01:06:40 1970 +0000 >- Wed Jan 14 21:20:00 1970 +0000 >- Tue Jan 13 17:33:20 1970 +0000 >- Mon Jan 12 13:46:40 1970 +0000 >- >- $ hg log --template '{date|isodate}\n' >- 2020-01-01 10:01 +0000 >- 1970-01-12 13:46 +0000 >- 1970-01-18 08:40 +0000 >- 1970-01-18 08:40 +0000 >- 1970-01-17 04:53 +0000 >- 1970-01-16 01:06 +0000 >- 1970-01-14 21:20 +0000 >- 1970-01-13 17:33 +0000 >- 1970-01-12 13:46 +0000 >- >- $ hg log --template '{date|isodatesec}\n' >- 2020-01-01 10:01:00 +0000 >- 1970-01-12 13:46:40 +0000 >- 1970-01-18 08:40:01 +0000 >- 1970-01-18 08:40:00 +0000 >- 1970-01-17 04:53:20 +0000 >- 1970-01-16 01:06:40 +0000 >- 1970-01-14 21:20:00 +0000 >- 1970-01-13 17:33:20 +0000 >- 1970-01-12 13:46:40 +0000 >- >- $ hg log --template '{date|rfc822date}\n' >- Wed, 01 Jan 2020 10:01:00 +0000 >- Mon, 12 Jan 1970 13:46:40 +0000 >- Sun, 18 Jan 1970 08:40:01 +0000 >- Sun, 18 Jan 1970 08:40:00 +0000 >- Sat, 17 Jan 1970 04:53:20 +0000 >- Fri, 16 Jan 1970 01:06:40 +0000 >- Wed, 14 Jan 1970 21:20:00 +0000 >- Tue, 13 Jan 1970 17:33:20 +0000 >- Mon, 12 Jan 1970 13:46:40 +0000 >- >- $ hg log --template '{desc|firstline}\n' >- third >- second >- merge >- new head >- new branch >- no user, no domain >- no person >- other 1 >- line 1 >- >- $ hg log --template '{node|short}\n' >- 95c24699272e >- 29114dbae42b >- c7b487c6c50e >- 13207e5a10d9 >- 32a18f097fcc >- 10e46f2dcbf4 >- 97054abb4ab8 >- b608e9d1a3f0 >- 1e4e1b8f71e0 >- >- $ hg log --template '<changeset author="{author|xmlescape}"/>\n' >- <changeset author="test"/> >- <changeset author="User Name <user@hostname>"/> >- <changeset author="person"/> >- <changeset author="person"/> >- <changeset author="person"/> >- <changeset author="person"/> >- <changeset author="other@place"/> >- <changeset author="A. N. Other <other@place>"/> >- <changeset author="User Name <user@hostname>"/> >- >- $ hg log --template '{rev}: {children}\n' >- 8: >- 7: 8:95c24699272e >- 6: >- 5: 6:c7b487c6c50e >- 4: 6:c7b487c6c50e >- 3: 4:32a18f097fcc 5:13207e5a10d9 >- 2: 3:10e46f2dcbf4 >- 1: 2:97054abb4ab8 >- 0: 1:b608e9d1a3f0 >- >-Formatnode filter works: >- >- $ hg -q log -r 0 --template '{node|formatnode}\n' >- 1e4e1b8f71e0 >- >- $ hg log -r 0 --template '{node|formatnode}\n' >- 1e4e1b8f71e0 >- >- $ hg -v log -r 0 --template '{node|formatnode}\n' >- 1e4e1b8f71e0 >- >- $ hg --debug log -r 0 --template '{node|formatnode}\n' >- 1e4e1b8f71e05681d422154f5421e385fec3454f >- >-Error on syntax: >- >- $ echo 'x = "f' >> t >- $ hg log >- abort: t:3: unmatched quotes >- [255] >- >- $ cd .. >- >- >-latesttag: >- >- $ hg init latesttag >- $ cd latesttag >- >- $ echo a > file >- $ hg ci -Am a -d '0 0' >- adding file >- >- $ echo b >> file >- $ hg ci -m b -d '1 0' >- >- $ echo c >> head1 >- $ hg ci -Am h1c -d '2 0' >- adding head1 >- >- $ hg update -q 1 >- $ echo d >> head2 >- $ hg ci -Am h2d -d '3 0' >- adding head2 >- created new head >- >- $ echo e >> head2 >- $ hg ci -m h2e -d '4 0' >- >- $ hg merge -q >- $ hg ci -m merge -d '5 0' >- >-No tag set: >- >- $ hg log --template '{rev}: {latesttag}+{latesttagdistance}\n' >- 5: null+5 >- 4: null+4 >- 3: null+3 >- 2: null+3 >- 1: null+2 >- 0: null+1 >- >-One common tag: longuest path wins: >- >- $ hg tag -r 1 -m t1 -d '6 0' t1 >- $ hg log --template '{rev}: {latesttag}+{latesttagdistance}\n' >- 6: t1+4 >- 5: t1+3 >- 4: t1+2 >- 3: t1+1 >- 2: t1+1 >- 1: t1+0 >- 0: null+1 >- >-One ancestor tag: more recent wins: >- >- $ hg tag -r 2 -m t2 -d '7 0' t2 >- $ hg log --template '{rev}: {latesttag}+{latesttagdistance}\n' >- 7: t2+3 >- 6: t2+2 >- 5: t2+1 >- 4: t1+2 >- 3: t1+1 >- 2: t2+0 >- 1: t1+0 >- 0: null+1 >- >-Two branch tags: more recent wins: >- >- $ hg tag -r 3 -m t3 -d '8 0' t3 >- $ hg log --template '{rev}: {latesttag}+{latesttagdistance}\n' >- 8: t3+5 >- 7: t3+4 >- 6: t3+3 >- 5: t3+2 >- 4: t3+1 >- 3: t3+0 >- 2: t2+0 >- 1: t1+0 >- 0: null+1 >- >-Merged tag overrides: >- >- $ hg tag -r 5 -m t5 -d '9 0' t5 >- $ hg tag -r 3 -m at3 -d '10 0' at3 >- $ hg log --template '{rev}: {latesttag}+{latesttagdistance}\n' >- 10: t5+5 >- 9: t5+4 >- 8: t5+3 >- 7: t5+2 >- 6: t5+1 >- 5: t5+0 >- 4: at3:t3+1 >- 3: at3:t3+0 >- 2: t2+0 >- 1: t1+0 >- 0: null+1 >- >- $ cd .. >- >- >-Style path expansion: issue1948 - ui.style option doesn't work on OSX >-if it is a relative path >- >- $ mkdir -p home/styles >- >- $ cat > home/styles/teststyle <<EOF >- > changeset = 'test {rev}:{node|short}\n' >- > EOF >- >- $ HOME=`pwd`/home; export HOME >- >- $ cat > latesttag/.hg/hgrc <<EOF >- > [ui] >- > style = ~/styles/teststyle >- > EOF >- >- $ hg -R latesttag tip >- test 10:dee8f28249af >- >-Test recursive showlist template (issue1989): >- >- $ cat > style1989 <<EOF >- > changeset = '{file_mods}{manifest}{extras}' >- > file_mod = 'M|{author|person}\n' >- > manifest = '{rev},{author}\n' >- > extra = '{key}: {author}\n' >- > EOF >- >- $ hg -R latesttag log -r tip --style=style1989 >- M|test >- 10,test >- branch: test >- >!..s.s.s.s >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-commit.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-commit.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-commit.t.err >@@ -1,269 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > commit date test > > $ hg init test >- $ cd test >- $ echo foo > foo >- $ hg add foo >- $ HGEDITOR=true hg commit -m "" >- abort: empty commit message >- [255] >- $ hg commit -d '0 0' -m commit-1 >- $ echo foo >> foo >- $ hg commit -d '1 4444444' -m commit-3 >- abort: impossible time zone offset: 4444444 >- [255] >- $ hg commit -d '1 15.1' -m commit-4 >- abort: invalid date: '1\t15.1' >- [255] >- $ hg commit -d 'foo bar' -m commit-5 >- abort: invalid date: 'foo bar' >- [255] >- $ hg commit -d ' 1 4444' -m commit-6 >- $ hg commit -d '111111111111 0' -m commit-7 >- abort: date exceeds 32 bits: 111111111111 >- [255] >- >-commit added file that has been deleted >- >- $ echo bar > bar >- $ hg add bar >- $ rm bar >- $ hg commit -m commit-8 >- nothing changed >- [1] >- $ hg commit -m commit-8-2 bar >- abort: bar: file not found! >- [255] >- >- $ hg -q revert -a --no-backup >- >- $ mkdir dir >- $ echo boo > dir/file >- $ hg add >- adding dir/file >- $ hg -v commit -m commit-9 dir >- dir/file >- committed changeset 2:d2a76177cb42 >- >- $ echo > dir.file >- $ hg add >- adding dir.file >- $ hg commit -m commit-10 dir dir.file >- abort: dir: no match under directory! >- [255] >- >- $ echo >> dir/file >- $ mkdir bleh >- $ mkdir dir2 >- $ cd bleh >- $ hg commit -m commit-11 . >- abort: bleh: no match under directory! >- [255] >- $ hg commit -m commit-12 ../dir ../dir2 >- abort: dir2: no match under directory! >- [255] >- $ hg -v commit -m commit-13 ../dir >- dir/file >- committed changeset 3:1cd62a2d8db5 >- $ cd .. >- >- $ hg commit -m commit-14 does-not-exist >- abort: does-not-exist: No such file or directory >- [255] >- $ ln -s foo baz >- $ hg commit -m commit-15 baz >- abort: baz: file not tracked! >- [255] >- $ touch quux >- $ hg commit -m commit-16 quux >- abort: quux: file not tracked! >- [255] >- $ echo >> dir/file >- $ hg -v commit -m commit-17 dir/file >- dir/file >- committed changeset 4:49176991390e >- >-An empty date was interpreted as epoch origin >- >- $ echo foo >> foo >- $ hg commit -d '' -m commit-no-date >- $ hg tip --template '{date|isodate}\n' | grep '1970' >- [1] >- $ cd .. >- >- >-partial subdir commit test >- >- $ hg init test2 >- $ cd test2 >- $ mkdir foo >- $ echo foo > foo/foo >- $ mkdir bar >- $ echo bar > bar/bar >- $ hg add >- adding bar/bar >- adding foo/foo >- $ hg ci -m commit-subdir-1 foo >- $ hg ci -m commit-subdir-2 bar >- >-subdir log 1 >- >- $ hg log -v foo >- changeset: 0:f97e73a25882 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- files: foo/foo >- description: >- commit-subdir-1 >- >- >- >-subdir log 2 >- >- $ hg log -v bar >- changeset: 1:aa809156d50d >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- files: bar/bar >- description: >- commit-subdir-2 >- >- >- >-full log >- >- $ hg log -v >- changeset: 1:aa809156d50d >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- files: bar/bar >- description: >- commit-subdir-2 >- >- >- changeset: 0:f97e73a25882 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- files: foo/foo >- description: >- commit-subdir-1 >- >- >- $ cd .. >- >- >-dot and subdir commit test >- >- $ hg init test3 >- $ cd test3 >- $ mkdir foo >- $ echo foo content > foo/plain-file >- $ hg add foo/plain-file >- $ hg ci -m commit-foo-subdir foo >- $ echo modified foo content > foo/plain-file >- $ hg ci -m commit-foo-dot . >- >-full log >- >- $ hg log -v >- changeset: 1:95b38e3a5b2e >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- files: foo/plain-file >- description: >- commit-foo-dot >- >- >- changeset: 0:65d4e9386227 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- files: foo/plain-file >- description: >- commit-foo-subdir >- >- >- >-subdir log >- >- $ cd foo >- $ hg log . >- changeset: 1:95b38e3a5b2e >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: commit-foo-dot >- >- changeset: 0:65d4e9386227 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: commit-foo-subdir >- >- $ cd .. >- $ cd .. >- >-Issue1049: Hg permits partial commit of merge without warning >- >- $ cd .. >- $ hg init issue1049 >- $ cd issue1049 >- $ echo a > a >- $ hg ci -Ama >- adding a >- $ echo a >> a >- $ hg ci -mb >- $ hg up 0 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo b >> a >- $ hg ci -mc >- created new head >- $ HGMERGE=true hg merge >- merging a >- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- >-should fail because we are specifying a file name >- >- $ hg ci -mmerge a >- abort: cannot partially commit a merge (do not specify files or patterns) >- [255] >- >-should fail because we are specifying a pattern >- >- $ hg ci -mmerge -I a >- abort: cannot partially commit a merge (do not specify files or patterns) >- [255] >- >-should succeed >- >- $ hg ci -mmerge >- $ cd .. >- >- >-test commit message content >- >- $ hg init commitmsg >- $ cd commitmsg >- $ echo changed > changed >- $ echo removed > removed >- $ hg ci -qAm init >- >- $ hg rm removed >- $ echo changed >> changed >- $ echo added > added >- $ hg add added >- $ HGEDITOR=cat hg ci -A >- >- >- HG: Enter commit message. Lines beginning with 'HG:' are removed. >- HG: Leave message empty to abort commit. >- HG: -- >- HG: user: test >- HG: branch 'default' >- HG: added added >- HG: changed changed >- HG: removed removed >- abort: empty commit message >- [255] >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-convert-datesort.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-convert-datesort.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-convert-datesort.t.err >@@ -1,117 +1,8 @@ >+ >+ ### Abort: timeout after 180 seconds. > > $ cat >> $HGRCPATH <<EOF > > [extensions] > > convert= > > graphlog= > > EOF >- $ hg init t >- $ cd t >- $ echo a >> a >- $ hg ci -Am a0 -d '1 0' >- adding a >- $ hg branch brancha >- marked working directory as branch brancha >- $ echo a >> a >- $ hg ci -m a1 -d '2 0' >- $ echo a >> a >- $ hg ci -m a2 -d '3 0' >- $ echo a >> a >- $ hg ci -m a3 -d '4 0' >- $ hg up -C 0 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg branch branchb >- marked working directory as branch branchb >- $ echo b >> b >- $ hg ci -Am b0 -d '6 0' >- adding b >- $ hg up -C brancha >- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ echo a >> a >- $ hg ci -m a4 -d '5 0' >- $ echo a >> a >- $ hg ci -m a5 -d '7 0' >- $ echo a >> a >- $ hg ci -m a6 -d '8 0' >- $ hg up -C branchb >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo b >> b >- $ hg ci -m b1 -d '9 0' >- $ cd .. >- >-convert with datesort >- >- $ hg convert --datesort t t-datesort >- initializing destination t-datesort repository >- scanning source... >- sorting... >- converting... >- 8 a0 >- 7 a1 >- 6 a2 >- 5 a3 >- 4 a4 >- 3 b0 >- 2 a5 >- 1 a6 >- 0 b1 >- >-graph converted repo >- >- $ hg -R t-datesort glog --template '{rev} "{desc}"\n' >- o 8 "b1" >- | >- | o 7 "a6" >- | | >- | o 6 "a5" >- | | >- o | 5 "b0" >- | | >- | o 4 "a4" >- | | >- | o 3 "a3" >- | | >- | o 2 "a2" >- | | >- | o 1 "a1" >- |/ >- o 0 "a0" >- >- >-convert with datesort (default mode) >- >- $ hg convert t t-sourcesort >- initializing destination t-sourcesort repository >- scanning source... >- sorting... >- converting... >- 8 a0 >- 7 a1 >- 6 a2 >- 5 a3 >- 4 b0 >- 3 a4 >- 2 a5 >- 1 a6 >- 0 b1 >- >-graph converted repo >- >- $ hg -R t-sourcesort glog --template '{rev} "{desc}"\n' >- o 8 "b1" >- | >- | o 7 "a6" >- | | >- | o 6 "a5" >- | | >- | o 5 "a4" >- | | >- o | 4 "b0" >- | | >- | o 3 "a3" >- | | >- | o 2 "a2" >- | | >- | o 1 "a1" >- |/ >- o 0 "a0" >- >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-convert-filemap.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-convert-filemap.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-convert-filemap.t.err >@@ -1,284 +1,4 @@ >+ >+ ### Abort: timeout after 180 seconds. > > $ HGMERGE=true; export HGMERGE >- $ echo '[extensions]' >> $HGRCPATH >- $ echo 'graphlog =' >> $HGRCPATH >- $ echo 'convert =' >> $HGRCPATH >- $ glog() >- > { >- > hg glog --template '{rev} "{desc}" files: {files}\n' "$@" >- > } >- $ hg init source >- $ cd source >- $ echo foo > foo >- $ echo baz > baz >- $ mkdir -p dir/subdir >- $ echo dir/file >> dir/file >- $ echo dir/file2 >> dir/file2 >- $ echo dir/subdir/file3 >> dir/subdir/file3 >- $ echo dir/subdir/file4 >> dir/subdir/file4 >- $ hg ci -d '0 0' -qAm '0: add foo baz dir/' >- $ echo bar > bar >- $ echo quux > quux >- $ hg copy foo copied >- $ hg ci -d '1 0' -qAm '1: add bar quux; copy foo to copied' >- $ echo >> foo >- $ hg ci -d '2 0' -m '2: change foo' >- $ hg up -qC 1 >- $ echo >> bar >- $ echo >> quux >- $ hg ci -d '3 0' -m '3: change bar quux' >- created new head >- $ hg up -qC 2 >- $ hg merge -qr 3 >- $ echo >> bar >- $ echo >> baz >- $ hg ci -d '4 0' -m '4: first merge; change bar baz' >- $ echo >> bar >- $ echo 1 >> baz >- $ echo >> quux >- $ hg ci -d '5 0' -m '5: change bar baz quux' >- $ hg up -qC 4 >- $ echo >> foo >- $ echo 2 >> baz >- $ hg ci -d '6 0' -m '6: change foo baz' >- created new head >- $ hg up -qC 5 >- $ hg merge -qr 6 >- $ echo >> bar >- $ hg ci -d '7 0' -m '7: second merge; change bar' >- $ echo >> foo >- $ hg ci -m '8: change foo' >- $ glog >- @ 8 "8: change foo" files: foo >- | >- o 7 "7: second merge; change bar" files: bar baz >- |\ >- | o 6 "6: change foo baz" files: baz foo >- | | >- o | 5 "5: change bar baz quux" files: bar baz quux >- |/ >- o 4 "4: first merge; change bar baz" files: bar baz >- |\ >- | o 3 "3: change bar quux" files: bar quux >- | | >- o | 2 "2: change foo" files: foo >- |/ >- o 1 "1: add bar quux; copy foo to copied" files: bar copied quux >- | >- o 0 "0: add foo baz dir/" files: baz dir/file dir/file2 dir/subdir/file3 dir/subdir/file4 foo >- >- >-final file versions in this repo: >- >- $ hg manifest --debug >- 9463f52fe115e377cf2878d4fc548117211063f2 644 bar >- 94c1be4dfde2ee8d78db8bbfcf81210813307c3d 644 baz >- 7711d36246cc83e61fb29cd6d4ef394c63f1ceaf 644 copied >- 3e20847584beff41d7cd16136b7331ab3d754be0 644 dir/file >- 75e6d3f8328f5f6ace6bf10b98df793416a09dca 644 dir/file2 >- 5fe139720576e18e34bcc9f79174db8897c8afe9 644 dir/subdir/file3 >- 57a1c1511590f3de52874adfa04effe8a77d64af 644 dir/subdir/file4 >- 9a7b52012991e4873687192c3e17e61ba3e837a3 644 foo >- bc3eca3f47023a3e70ca0d8cc95a22a6827db19d 644 quux >- $ hg debugrename copied >- copied renamed from foo:2ed2a3912a0b24502043eae84ee4b279c18b90dd >- $ echo >- >- $ cd .. >- $ splitrepo() >- > { >- > msg="$1" >- > files="$2" >- > opts=$3 >- > echo "% $files: $msg" >- > prefix=`echo "$files" | sed -e 's/ /-/g'` >- > fmap="$prefix.fmap" >- > repo="$prefix.repo" >- > for i in $files; do >- > echo "include $i" >> "$fmap" >- > done >- > hg -q convert $opts --filemap "$fmap" --datesort source "$repo" >- > hg up -q -R "$repo" >- > glog -R "$repo" >- > hg -R "$repo" manifest --debug >- > } >- $ splitrepo 'skip unwanted merges; use 1st parent in 1st merge, 2nd in 2nd' foo >- % foo: skip unwanted merges; use 1st parent in 1st merge, 2nd in 2nd >- @ 3 "8: change foo" files: foo >- | >- o 2 "6: change foo baz" files: foo >- | >- o 1 "2: change foo" files: foo >- | >- o 0 "0: add foo baz dir/" files: foo >- >- 9a7b52012991e4873687192c3e17e61ba3e837a3 644 foo >- $ splitrepo 'merges are not merges anymore' bar >- % bar: merges are not merges anymore >- @ 4 "7: second merge; change bar" files: bar >- | >- o 3 "5: change bar baz quux" files: bar >- | >- o 2 "4: first merge; change bar baz" files: bar >- | >- o 1 "3: change bar quux" files: bar >- | >- o 0 "1: add bar quux; copy foo to copied" files: bar >- >- 9463f52fe115e377cf2878d4fc548117211063f2 644 bar >- $ splitrepo '1st merge is not a merge anymore; 2nd still is' baz >- % baz: 1st merge is not a merge anymore; 2nd still is >- @ 4 "7: second merge; change bar" files: baz >- |\ >- | o 3 "6: change foo baz" files: baz >- | | >- o | 2 "5: change bar baz quux" files: baz >- |/ >- o 1 "4: first merge; change bar baz" files: baz >- | >- o 0 "0: add foo baz dir/" files: baz >- >- 94c1be4dfde2ee8d78db8bbfcf81210813307c3d 644 baz >- $ splitrepo 'we add additional merges when they are interesting' 'foo quux' >- % foo quux: we add additional merges when they are interesting >- @ 8 "8: change foo" files: foo >- | >- o 7 "7: second merge; change bar" files: >- |\ >- | o 6 "6: change foo baz" files: foo >- | | >- o | 5 "5: change bar baz quux" files: quux >- |/ >- o 4 "4: first merge; change bar baz" files: >- |\ >- | o 3 "3: change bar quux" files: quux >- | | >- o | 2 "2: change foo" files: foo >- |/ >- o 1 "1: add bar quux; copy foo to copied" files: quux >- | >- o 0 "0: add foo baz dir/" files: foo >- >- 9a7b52012991e4873687192c3e17e61ba3e837a3 644 foo >- bc3eca3f47023a3e70ca0d8cc95a22a6827db19d 644 quux >- $ splitrepo 'partial conversion' 'bar quux' '-r 3' >- % bar quux: partial conversion >- @ 1 "3: change bar quux" files: bar quux >- | >- o 0 "1: add bar quux; copy foo to copied" files: bar quux >- >- b79105bedc55102f394e90a789c9c380117c1b4a 644 bar >- db0421cc6b685a458c8d86c7d5c004f94429ea23 644 quux >- $ splitrepo 'complete the partial conversion' 'bar quux' >- % bar quux: complete the partial conversion >- @ 4 "7: second merge; change bar" files: bar >- | >- o 3 "5: change bar baz quux" files: bar quux >- | >- o 2 "4: first merge; change bar baz" files: bar >- | >- o 1 "3: change bar quux" files: bar quux >- | >- o 0 "1: add bar quux; copy foo to copied" files: bar quux >- >- 9463f52fe115e377cf2878d4fc548117211063f2 644 bar >- bc3eca3f47023a3e70ca0d8cc95a22a6827db19d 644 quux >- $ rm -r foo.repo >- $ splitrepo 'partial conversion' 'foo' '-r 3' >- % foo: partial conversion >- @ 0 "0: add foo baz dir/" files: foo >- >- 2ed2a3912a0b24502043eae84ee4b279c18b90dd 644 foo >- $ splitrepo 'complete the partial conversion' 'foo' >- % foo: complete the partial conversion >- @ 3 "8: change foo" files: foo >- | >- o 2 "6: change foo baz" files: foo >- | >- o 1 "2: change foo" files: foo >- | >- o 0 "0: add foo baz dir/" files: foo >- >- 9a7b52012991e4873687192c3e17e61ba3e837a3 644 foo >- $ splitrepo 'copied file; source not included in new repo' copied >- % copied: copied file; source not included in new repo >- @ 0 "1: add bar quux; copy foo to copied" files: copied >- >- 2ed2a3912a0b24502043eae84ee4b279c18b90dd 644 copied >- $ hg --cwd copied.repo debugrename copied >- copied not renamed >- $ splitrepo 'copied file; source included in new repo' 'foo copied' >- % foo copied: copied file; source included in new repo >- @ 4 "8: change foo" files: foo >- | >- o 3 "6: change foo baz" files: foo >- | >- o 2 "2: change foo" files: foo >- | >- o 1 "1: add bar quux; copy foo to copied" files: copied >- | >- o 0 "0: add foo baz dir/" files: foo >- >- 7711d36246cc83e61fb29cd6d4ef394c63f1ceaf 644 copied >- 9a7b52012991e4873687192c3e17e61ba3e837a3 644 foo >- $ hg --cwd foo-copied.repo debugrename copied >- copied renamed from foo:2ed2a3912a0b24502043eae84ee4b279c18b90dd >- $ cat > renames.fmap <<EOF >- > include dir >- > exclude dir/file2 >- > rename dir dir2 >- > include foo >- > include copied >- > rename foo foo2 >- > rename copied copied2 >- > exclude dir/subdir >- > include dir/subdir/file3 >- > EOF >- $ hg -q convert --filemap renames.fmap --datesort source renames.repo >- $ hg up -q -R renames.repo >- $ glog -R renames.repo >- @ 4 "8: change foo" files: foo2 >- | >- o 3 "6: change foo baz" files: foo2 >- | >- o 2 "2: change foo" files: foo2 >- | >- o 1 "1: add bar quux; copy foo to copied" files: copied2 >- | >- o 0 "0: add foo baz dir/" files: dir2/file dir2/subdir/file3 foo2 >- >- $ hg -R renames.repo manifest --debug >- d43feacba7a4f1f2080dde4a4b985bd8a0236d46 644 copied2 >- 3e20847584beff41d7cd16136b7331ab3d754be0 644 dir2/file >- 5fe139720576e18e34bcc9f79174db8897c8afe9 644 dir2/subdir/file3 >- 9a7b52012991e4873687192c3e17e61ba3e837a3 644 foo2 >- $ hg --cwd renames.repo debugrename copied2 >- copied2 renamed from foo2:2ed2a3912a0b24502043eae84ee4b279c18b90dd >- >-copied: >- >- $ hg --cwd source cat copied >- foo >- >-copied2: >- >- $ hg --cwd renames.repo cat copied2 >- foo >- >-filemap errors >- >- $ cat > errors.fmap <<EOF >- > include dir/ # beware that comments changes error line numbers! >- > exclude /dir >- > rename dir//dir /dir//dir/ "out of sync" >- > include >- > EOF >- $ hg -q convert --filemap errors.fmap source errors.repo >- errors.fmap:1: superfluous / in exclude 'dir/' >- errors.fmap:3: superfluous / in include '/dir' >- errors.fmap:3: superfluous / in rename '/dir' >- errors.fmap:3: superfluous / in exclude 'dir//dir' >- errors.fmap:4: unknown directive 'out of sync' >- errors.fmap:5: path to exclude is missing >- abort: errors in filemap >- [255] >!s.s >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-convert-clonebranches.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-convert-clonebranches.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-convert-clonebranches.t.err >@@ -1,84 +1,4 @@ >+ >+ ### Abort: timeout after 180 seconds. > > $ echo "[extensions]" >> $HGRCPATH >- $ echo "convert = " >> $HGRCPATH >- $ echo "[convert]" >> $HGRCPATH >- $ echo "hg.tagsbranch=0" >> $HGRCPATH >- $ hg init source >- $ cd source >- $ echo a > a >- $ hg ci -qAm adda >- >-Add a merge with one parent in the same branch >- >- $ echo a >> a >- $ hg ci -qAm changea >- $ hg up -qC 0 >- $ hg branch branch0 >- marked working directory as branch branch0 >- $ echo b > b >- $ hg ci -qAm addb >- $ hg up -qC >- $ hg merge default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg ci -qm mergeab >- $ hg tag -ql mergeab >- $ cd .. >- >-Miss perl... sometimes >- >- $ cat > filter.py <<EOF >- > import sys, re >- > >- > r = re.compile(r'^(?:\d+|pulling from)') >- > sys.stdout.writelines([l for l in sys.stdin if r.search(l)]) >- > EOF >- >-convert >- >- $ hg convert -v --config convert.hg.clonebranches=1 source dest | >- > python filter.py >- 3 adda >- 2 changea >- 1 addb >- pulling from default into branch0 >- 1 changesets found >- 0 mergeab >- pulling from default into branch0 >- 1 changesets found >- >-Add a merge with both parents and child in different branches >- >- $ cd source >- $ hg branch branch1 >- marked working directory as branch branch1 >- $ echo a > file1 >- $ hg ci -qAm c1 >- $ hg up -qC mergeab >- $ hg branch branch2 >- marked working directory as branch branch2 >- $ echo a > file2 >- $ hg ci -qAm c2 >- $ hg merge branch1 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg branch branch3 >- marked working directory as branch branch3 >- $ hg ci -qAm c3 >- $ cd .. >- >-incremental conversion >- >- $ hg convert -v --config convert.hg.clonebranches=1 source dest | >- > python filter.py >- 2 c1 >- pulling from branch0 into branch1 >- 4 changesets found >- 1 c2 >- pulling from branch0 into branch2 >- 4 changesets found >- 0 c3 >- pulling from branch2 into branch3 >- 5 changesets found >- pulling from branch1 into branch3 >- 1 changesets found >!s >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-convert-hg-startrev.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-convert-hg-startrev.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-convert-hg-startrev.t.err >@@ -1,3 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > > $ cat > $HGRCPATH <<EOF > > [extensions] >@@ -6,149 +8,3 @@ > > [convert] > > hg.saverev = yes > > EOF >- >- $ glog() >- > { >- > hg -R "$1" glog --template '{rev} "{desc}" files: {files}\n' >- > } >- >- $ hg init source >- $ cd source >- >- $ echo a > a >- $ echo b > b >- $ hg ci -d '0 0' -qAm '0: add a b' >- $ echo c > c >- $ hg ci -d '1 0' -qAm '1: add c' >- $ hg copy a e >- $ echo b >> b >- $ hg ci -d '2 0' -qAm '2: copy e from a, change b' >- $ hg up -C 0 >- 1 files updated, 0 files merged, 2 files removed, 0 files unresolved >- $ echo a >> a >- $ hg ci -d '3 0' -qAm '3: change a' >- $ hg merge >- merging a and e to e >- 2 files updated, 1 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg copy b d >- $ hg ci -d '4 0' -qAm '4: merge 2 and 3, copy d from b' >- $ echo a >> a >- $ hg ci -d '5 0' -qAm '5: change a' >- $ cd .. >- >-Convert from null revision >- >- $ hg convert --config convert.hg.startrev=null source empty >- initializing destination empty repository >- scanning source... >- sorting... >- converting... >- >- $ glog empty >- >-Convert from zero revision >- >- $ hg convert --config convert.hg.startrev=0 source full >- initializing destination full repository >- scanning source... >- sorting... >- converting... >- 5 0: add a b >- 4 1: add c >- 3 2: copy e from a, change b >- 2 3: change a >- 1 4: merge 2 and 3, copy d from b >- 0 5: change a >- >- $ glog full >- o 5 "5: change a" files: a >- | >- o 4 "4: merge 2 and 3, copy d from b" files: d e >- |\ >- | o 3 "3: change a" files: a >- | | >- o | 2 "2: copy e from a, change b" files: b e >- | | >- o | 1 "1: add c" files: c >- |/ >- o 0 "0: add a b" files: a b >- >-Convert from merge parent >- >- $ hg convert --config convert.hg.startrev=1 source conv1 >- initializing destination conv1 repository >- scanning source... >- sorting... >- converting... >- 3 1: add c >- 2 2: copy e from a, change b >- 1 4: merge 2 and 3, copy d from b >- 0 5: change a >- >- $ glog conv1 >- o 3 "5: change a" files: a >- | >- o 2 "4: merge 2 and 3, copy d from b" files: a d e >- | >- o 1 "2: copy e from a, change b" files: b e >- | >- o 0 "1: add c" files: a b c >- >- $ cd conv1 >- >-Check copy preservation >- >- $ hg log --follow --copies e >- changeset: 2:79818a521a40 >- user: test >- date: Thu Jan 01 00:00:04 1970 +0000 >- summary: 4: merge 2 and 3, copy d from b >- >- changeset: 1:3e6201832cce >- user: test >- date: Thu Jan 01 00:00:02 1970 +0000 >- summary: 2: copy e from a, change b >- >-Check copy removal on missing parent >- >- $ hg log --follow --copies d >- changeset: 2:79818a521a40 >- user: test >- date: Thu Jan 01 00:00:04 1970 +0000 >- summary: 4: merge 2 and 3, copy d from b >- >- $ hg cat -r tip a b >- a >- a >- a >- b >- b >- $ hg -q verify >- $ cd .. >- >-Convert from merge >- >- $ hg convert --config convert.hg.startrev=4 source conv4 >- initializing destination conv4 repository >- scanning source... >- sorting... >- converting... >- 1 4: merge 2 and 3, copy d from b >- 0 5: change a >- $ glog conv4 >- o 1 "5: change a" files: a >- | >- o 0 "4: merge 2 and 3, copy d from b" files: a b c d e >- >- $ cd conv4 >- $ hg up -C >- 5 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg cat -r tip a b >- a >- a >- a >- b >- b >- $ hg -q verify >- $ cd .. >!. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-convert.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-convert.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-convert.t.err >@@ -1,3 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > > $ cat >> $HGRCPATH <<EOF > > [extensions] >@@ -5,383 +7,3 @@ > > [convert] > > hg.saverev=False > > EOF >- $ hg help convert >- hg convert [OPTION]... SOURCE [DEST [REVMAP]] >- >- convert a foreign SCM repository to a Mercurial one. >- >- Accepted source formats [identifiers]: >- >- - Mercurial [hg] >- - CVS [cvs] >- - Darcs [darcs] >- - git [git] >- - Subversion [svn] >- - Monotone [mtn] >- - GNU Arch [gnuarch] >- - Bazaar [bzr] >- - Perforce [p4] >- >- Accepted destination formats [identifiers]: >- >- - Mercurial [hg] >- - Subversion [svn] (history on branches is not preserved) >- >- If no revision is given, all revisions will be converted. Otherwise, >- convert will only import up to the named revision (given in a format >- understood by the source). >- >- If no destination directory name is specified, it defaults to the basename >- of the source with "-hg" appended. If the destination repository doesn't >- exist, it will be created. >- >- By default, all sources except Mercurial will use --branchsort. Mercurial >- uses --sourcesort to preserve original revision numbers order. Sort modes >- have the following effects: >- >- --branchsort convert from parent to child revision when possible, which >- means branches are usually converted one after the other. It >- generates more compact repositories. >- --datesort sort revisions by date. Converted repositories have good- >- looking changelogs but are often an order of magnitude >- larger than the same ones generated by --branchsort. >- --sourcesort try to preserve source revisions order, only supported by >- Mercurial sources. >- >- If <REVMAP> isn't given, it will be put in a default location >- (<dest>/.hg/shamap by default). The <REVMAP> is a simple text file that >- maps each source commit ID to the destination ID for that revision, like >- so: >- >- <source ID> <destination ID> >- >- If the file doesn't exist, it's automatically created. It's updated on >- each commit copied, so "hg convert" can be interrupted and can be run >- repeatedly to copy new commits. >- >- The authormap is a simple text file that maps each source commit author to >- a destination commit author. It is handy for source SCMs that use unix >- logins to identify authors (eg: CVS). One line per author mapping and the >- line format is: >- >- source author = destination author >- >- Empty lines and lines starting with a "#" are ignored. >- >- The filemap is a file that allows filtering and remapping of files and >- directories. Each line can contain one of the following directives: >- >- include path/to/file-or-dir >- >- exclude path/to/file-or-dir >- >- rename path/to/source path/to/destination >- >- Comment lines start with "#". A specified path matches if it equals the >- full relative name of a file or one of its parent directories. The >- "include" or "exclude" directive with the longest matching path applies, >- so line order does not matter. >- >- The "include" directive causes a file, or all files under a directory, to >- be included in the destination repository, and the exclusion of all other >- files and directories not explicitly included. The "exclude" directive >- causes files or directories to be omitted. The "rename" directive renames >- a file or directory if it is converted. To rename from a subdirectory into >- the root of the repository, use "." as the path to rename to. >- >- The splicemap is a file that allows insertion of synthetic history, >- letting you specify the parents of a revision. This is useful if you want >- to e.g. give a Subversion merge two parents, or graft two disconnected >- series of history together. Each entry contains a key, followed by a >- space, followed by one or two comma-separated values: >- >- key parent1, parent2 >- >- The key is the revision ID in the source revision control system whose >- parents should be modified (same format as a key in .hg/shamap). The >- values are the revision IDs (in either the source or destination revision >- control system) that should be used as the new parents for that node. For >- example, if you have merged "release-1.0" into "trunk", then you should >- specify the revision on "trunk" as the first parent and the one on the >- "release-1.0" branch as the second. >- >- The branchmap is a file that allows you to rename a branch when it is >- being brought in from whatever external repository. When used in >- conjunction with a splicemap, it allows for a powerful combination to help >- fix even the most badly mismanaged repositories and turn them into nicely >- structured Mercurial repositories. The branchmap contains lines of the >- form: >- >- original_branch_name new_branch_name >- >- where "original_branch_name" is the name of the branch in the source >- repository, and "new_branch_name" is the name of the branch is the >- destination repository. No whitespace is allowed in the branch names. This >- can be used to (for instance) move code in one repository from "default" >- to a named branch. >- >- Mercurial Source >- '''''''''''''''' >- >- --config convert.hg.ignoreerrors=False (boolean) >- ignore integrity errors when reading. Use it to fix Mercurial >- repositories with missing revlogs, by converting from and to >- Mercurial. >- >- --config convert.hg.saverev=False (boolean) >- store original revision ID in changeset (forces target IDs to change) >- >- --config convert.hg.startrev=0 (hg revision identifier) >- convert start revision and its descendants >- >- CVS Source >- '''''''''' >- >- CVS source will use a sandbox (i.e. a checked-out copy) from CVS to >- indicate the starting point of what will be converted. Direct access to >- the repository files is not needed, unless of course the repository is >- :local:. The conversion uses the top level directory in the sandbox to >- find the CVS repository, and then uses CVS rlog commands to find files to >- convert. This means that unless a filemap is given, all files under the >- starting directory will be converted, and that any directory >- reorganization in the CVS sandbox is ignored. >- >- The options shown are the defaults. >- >- --config convert.cvsps.cache=True (boolean) >- Set to False to disable remote log caching, for testing and debugging >- purposes. >- >- --config convert.cvsps.fuzz=60 (integer) >- Specify the maximum time (in seconds) that is allowed between commits >- with identical user and log message in a single changeset. When very >- large files were checked in as part of a changeset then the default >- may not be long enough. >- >- --config convert.cvsps.mergeto='{{mergetobranch ([-\w]+)}}' >- Specify a regular expression to which commit log messages are matched. >- If a match occurs, then the conversion process will insert a dummy >- revision merging the branch on which this log message occurs to the >- branch indicated in the regex. >- >- --config convert.cvsps.mergefrom='{{mergefrombranch ([-\w]+)}}' >- Specify a regular expression to which commit log messages are matched. >- If a match occurs, then the conversion process will add the most >- recent revision on the branch indicated in the regex as the second >- parent of the changeset. >- >- --config hook.cvslog >- Specify a Python function to be called at the end of gathering the CVS >- log. The function is passed a list with the log entries, and can >- modify the entries in-place, or add or delete them. >- >- --config hook.cvschangesets >- Specify a Python function to be called after the changesets are >- calculated from the the CVS log. The function is passed a list with >- the changeset entries, and can modify the changesets in-place, or add >- or delete them. >- >- An additional "debugcvsps" Mercurial command allows the builtin changeset >- merging code to be run without doing a conversion. Its parameters and >- output are similar to that of cvsps 2.1. Please see the command help for >- more details. >- >- Subversion Source >- ''''''''''''''''' >- >- Subversion source detects classical trunk/branches/tags layouts. By >- default, the supplied "svn://repo/path/" source URL is converted as a >- single branch. If "svn://repo/path/trunk" exists it replaces the default >- branch. If "svn://repo/path/branches" exists, its subdirectories are >- listed as possible branches. If "svn://repo/path/tags" exists, it is >- looked for tags referencing converted branches. Default "trunk", >- "branches" and "tags" values can be overridden with following options. Set >- them to paths relative to the source URL, or leave them blank to disable >- auto detection. >- >- --config convert.svn.branches=branches (directory name) >- specify the directory containing branches >- >- --config convert.svn.tags=tags (directory name) >- specify the directory containing tags >- >- --config convert.svn.trunk=trunk (directory name) >- specify the name of the trunk branch >- >- Source history can be retrieved starting at a specific revision, instead >- of being integrally converted. Only single branch conversions are >- supported. >- >- --config convert.svn.startrev=0 (svn revision number) >- specify start Subversion revision. >- >- Perforce Source >- ''''''''''''''' >- >- The Perforce (P4) importer can be given a p4 depot path or a client >- specification as source. It will convert all files in the source to a flat >- Mercurial repository, ignoring labels, branches and integrations. Note >- that when a depot path is given you then usually should specify a target >- directory, because otherwise the target may be named ...-hg. >- >- It is possible to limit the amount of source history to be converted by >- specifying an initial Perforce revision. >- >- --config convert.p4.startrev=0 (perforce changelist number) >- specify initial Perforce revision. >- >- Mercurial Destination >- ''''''''''''''''''''' >- >- --config convert.hg.clonebranches=False (boolean) >- dispatch source branches in separate clones. >- >- --config convert.hg.tagsbranch=default (branch name) >- tag revisions branch name >- >- --config convert.hg.usebranchnames=True (boolean) >- preserve branch names >- >- options: >- >- -s --source-type TYPE source repository type >- -d --dest-type TYPE destination repository type >- -r --rev REV import up to target revision REV >- -A --authormap FILE remap usernames using this file >- --filemap FILE remap file names using contents of file >- --splicemap FILE splice synthesized history into place >- --branchmap FILE change branch names while converting >- --branchsort try to sort changesets by branches >- --datesort try to sort changesets by date >- --sourcesort preserve source changesets order >- >- use "hg -v help convert" to show global options >- $ hg init a >- $ cd a >- $ echo a > a >- $ hg ci -d'0 0' -Ama >- adding a >- $ hg cp a b >- $ hg ci -d'1 0' -mb >- $ hg rm a >- $ hg ci -d'2 0' -mc >- $ hg mv b a >- $ hg ci -d'3 0' -md >- $ echo a >> a >- $ hg ci -d'4 0' -me >- $ cd .. >- $ hg convert a 2>&1 | grep -v 'subversion python bindings could not be loaded' >- assuming destination a-hg >- initializing destination a-hg repository >- scanning source... >- sorting... >- converting... >- 4 a >- 3 b >- 2 c >- 1 d >- 0 e >- $ hg --cwd a-hg pull ../a >- pulling from ../a >- searching for changes >- no changes found >- $ touch bogusfile >- >-should fail >- >- $ hg convert a bogusfile >- initializing destination bogusfile repository >- abort: cannot create new bundle repository >- [255] >- $ mkdir bogusdir >- $ chmod 000 bogusdir >- >-should fail >- >- $ hg convert a bogusdir >- abort: Permission denied: bogusdir >- [255] >- >-should succeed >- >- $ chmod 700 bogusdir >- $ hg convert a bogusdir >- initializing destination bogusdir repository >- scanning source... >- sorting... >- converting... >- 4 a >- 3 b >- 2 c >- 1 d >- 0 e >- >-test pre and post conversion actions >- >- $ echo 'include b' > filemap >- $ hg convert --debug --filemap filemap a partialb | \ >- > grep 'run hg' >- run hg source pre-conversion action >- run hg sink pre-conversion action >- run hg sink post-conversion action >- run hg source post-conversion action >- >-converting empty dir should fail "nicely >- >- $ mkdir emptydir >- >-override $PATH to ensure p4 not visible; use $PYTHON in case we're >-running from a devel copy, not a temp installation >- >- $ PATH="$BINDIR" $PYTHON "$BINDIR"/hg convert emptydir >- assuming destination emptydir-hg >- initializing destination emptydir-hg repository >- emptydir does not look like a CVS checkout >- emptydir does not look like a Git repository >- emptydir does not look like a Subversion repository >- emptydir is not a local Mercurial repository >- emptydir does not look like a darcs repository >- emptydir does not look like a monotone repository >- emptydir does not look like a GNU Arch repository >- emptydir does not look like a Bazaar repository >- cannot find required "p4" tool >- abort: emptydir: missing or unsupported repository >- [255] >- >-convert with imaginary source type >- >- $ hg convert --source-type foo a a-foo >- initializing destination a-foo repository >- abort: foo: invalid source repository type >- [255] >- >-convert with imaginary sink type >- >- $ hg convert --dest-type foo a a-foo >- abort: foo: invalid destination repository type >- [255] >- >-testing: convert must not produce duplicate entries in fncache >- >- $ hg convert a b >- initializing destination b repository >- scanning source... >- sorting... >- converting... >- 4 a >- 3 b >- 2 c >- 1 d >- 0 e >- >-contents of fncache file: >- >- $ cat b/.hg/store/fncache >- data/a.i >- data/b.i >- >-test bogus URL >- >- $ hg convert -q bzr+ssh://foobar@selenic.com/baz baz >- abort: bzr+ssh://foobar@selenic.com/baz: missing or unsupported repository >- [255] >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-convert-hg-source.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-convert-hg-source.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-convert-hg-source.t.err >@@ -1,3 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > > $ cat >> $HGRCPATH <<EOF > > [extensions] >@@ -5,134 +7,3 @@ > > [convert] > > hg.saverev=False > > EOF >- $ hg init orig >- $ cd orig >- $ echo foo > foo >- $ echo bar > bar >- $ hg ci -qAm 'add foo bar' -d '0 0' >- $ echo >> foo >- $ hg ci -m 'change foo' -d '1 0' >- $ hg up -qC 0 >- $ hg copy --after --force foo bar >- $ hg copy foo baz >- $ hg ci -m 'make bar and baz copies of foo' -d '2 0' >- created new head >- $ hg merge >- merging baz and foo to baz >- 1 files updated, 1 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg ci -m 'merge local copy' -d '3 0' >- $ hg up -C 1 >- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg merge 2 >- merging foo and baz to baz >- 1 files updated, 1 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg ci -m 'merge remote copy' -d '4 0' >- created new head >- $ chmod +x baz >- $ hg ci -m 'mark baz executable' -d '5 0' >- $ hg branch foo >- marked working directory as branch foo >- $ hg ci -m 'branch foo' -d '6 0' >- $ hg ci --close-branch -m 'close' -d '7 0' >- $ cd .. >- $ hg convert --datesort orig new 2>&1 | grep -v 'subversion python bindings could not be loaded' >- initializing destination new repository >- scanning source... >- sorting... >- converting... >- 7 add foo bar >- 6 change foo >- 5 make bar and baz copies of foo >- 4 merge local copy >- 3 merge remote copy >- 2 mark baz executable >- 1 branch foo >- 0 close >- $ cd new >- $ hg out ../orig >- comparing with ../orig >- searching for changes >- no changes found >- [1] >- $ cd .. >- >-check shamap LF and CRLF handling >- >- $ cat > rewrite.py <<EOF >- > import sys >- > # Interlace LF and CRLF >- > lines = [(l.rstrip() + ((i % 2) and '\n' or '\r\n')) >- > for i, l in enumerate(file(sys.argv[1]))] >- > file(sys.argv[1], 'wb').write(''.join(lines)) >- > EOF >- $ python rewrite.py new/.hg/shamap >- $ cd orig >- $ hg up -qC 1 >- $ echo foo >> foo >- $ hg ci -qm 'change foo again' >- $ hg up -qC 2 >- $ echo foo >> foo >- $ hg ci -qm 'change foo again again' >- $ cd .. >- $ hg convert --datesort orig new 2>&1 | grep -v 'subversion python bindings could not be loaded' >- scanning source... >- sorting... >- converting... >- 1 change foo again again >- 0 change foo again >- >-init broken repository >- >- $ hg init broken >- $ cd broken >- $ echo a >> a >- $ echo b >> b >- $ hg ci -qAm init >- $ echo a >> a >- $ echo b >> b >- $ hg copy b c >- $ hg ci -qAm changeall >- $ hg up -qC 0 >- $ echo bc >> b >- $ hg ci -m changebagain >- created new head >- $ HGMERGE=internal:local hg -q merge >- $ hg ci -m merge >- $ hg mv b d >- $ hg ci -m moveb >- >-break it >- >- $ rm .hg/store/data/b.* >- $ cd .. >- $ hg --config convert.hg.ignoreerrors=True convert broken fixed >- initializing destination fixed repository >- scanning source... >- sorting... >- converting... >- 4 init >- ignoring: data/b.i@1e88685f5dde: no match found >- 3 changeall >- 2 changebagain >- 1 merge >- 0 moveb >- $ hg -R fixed verify >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 3 files, 5 changesets, 5 total revisions >- >-manifest -r 0 >- >- $ hg -R fixed manifest -r 0 >- a >- >-manifest -r tip >- >- $ hg -R fixed manifest -r tip >- a >- c >- d >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-convert-hg-sink.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-convert-hg-sink.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-convert-hg-sink.t.err >@@ -1,3 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > > $ cat >> $HGRCPATH <<EOF > > [extensions] >@@ -5,120 +7,3 @@ > > [convert] > > hg.saverev=False > > EOF >- $ hg init orig >- $ cd orig >- $ echo foo > foo >- $ echo bar > bar >- $ hg ci -qAm 'add foo and bar' >- $ hg rm foo >- $ hg ci -m 'remove foo' >- $ mkdir foo >- $ echo file > foo/file >- $ hg ci -qAm 'add foo/file' >- $ hg tag some-tag >- $ hg log >- changeset: 3:593cbf6fb2b4 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: Added tag some-tag for changeset ad681a868e44 >- >- changeset: 2:ad681a868e44 >- tag: some-tag >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: add foo/file >- >- changeset: 1:cbba8ecc03b7 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: remove foo >- >- changeset: 0:327daa9251fa >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: add foo and bar >- >- $ cd .. >- $ hg convert orig new 2>&1 | grep -v 'subversion python bindings could not be loaded' >- initializing destination new repository >- scanning source... >- sorting... >- converting... >- 3 add foo and bar >- 2 remove foo >- 1 add foo/file >- 0 Added tag some-tag for changeset ad681a868e44 >- $ cd new >- $ hg out ../orig >- comparing with ../orig >- searching for changes >- no changes found >- [1] >- >-dirstate should be empty: >- >- $ hg debugstate >- $ hg parents -q >- $ hg up -C >- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg copy bar baz >- >-put something in the dirstate: >- >- $ hg debugstate > debugstate >- $ grep baz debugstate >- a 0 -1 unset baz >- copy: bar -> baz >- >-add a new revision in the original repo >- >- $ cd ../orig >- $ echo baz > baz >- $ hg ci -qAm 'add baz' >- $ cd .. >- $ hg convert orig new 2>&1 | grep -v 'subversion python bindings could not be loaded' >- scanning source... >- sorting... >- converting... >- 0 add baz >- $ cd new >- $ hg out ../orig >- comparing with ../orig >- searching for changes >- no changes found >- [1] >- >-dirstate should be the same (no output below): >- >- $ hg debugstate > new-debugstate >- $ diff debugstate new-debugstate >- >-no copies >- >- $ hg up -C >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg debugrename baz >- baz not renamed >- $ cd .. >- >-test tag rewriting >- >- $ cat > filemap <<EOF >- > exclude foo >- > EOF >- $ hg convert --filemap filemap orig new-filemap 2>&1 | grep -v 'subversion python bindings could not be loaded' >- initializing destination new-filemap repository >- scanning source... >- sorting... >- converting... >- 4 add foo and bar >- 3 remove foo >- 2 add foo/file >- 1 Added tag some-tag for changeset ad681a868e44 >- 0 add baz >- $ cd new-filemap >- $ hg tags >- tip 2:6f4fd1df87fb >- some-tag 0:ba8636729451 >- $ cd .. >!s.... >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-copy2.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-copy2.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-copy2.t.err >@@ -1,102 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ hg init >- $ echo foo > foo >-should fail - foo is not managed >- $ hg mv foo bar >- foo: not copying - file is not managed >- abort: no files to copy >- [255] >- $ hg st -A >- ? foo >- $ hg add foo >-dry-run; print a warning that this is not a real copy; foo is added >- $ hg mv --dry-run foo bar >- foo has not been committed yet, so no copy data will be stored for bar. >- $ hg st -A >- A foo >-should print a warning that this is not a real copy; bar is added >- $ hg mv foo bar >- foo has not been committed yet, so no copy data will be stored for bar. >- $ hg st -A >- A bar >-should print a warning that this is not a real copy; foo is added >- $ hg cp bar foo >- bar has not been committed yet, so no copy data will be stored for foo. >- $ hg rm -f bar >- $ rm bar >- $ hg st -A >- A foo >- $ hg commit -m1 >- >-copy --after to a nonexistant target filename >- $ hg cp -A foo dummy >- foo: not recording copy - dummy does not exist >- >-dry-run; should show that foo is clean >- $ hg copy --dry-run foo bar >- $ hg st -A >- C foo >-should show copy >- $ hg copy foo bar >- $ hg st -C >- A bar >- foo >- >-shouldn't show copy >- $ hg commit -m2 >- $ hg st -C >- >-should match >- $ hg debugindex .hg/store/data/foo.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 5 0 0 2ed2a3912a0b 000000000000 000000000000 >- $ hg debugrename bar >- bar renamed from foo:2ed2a3912a0b24502043eae84ee4b279c18b90dd >- >- $ echo bleah > foo >- $ echo quux > bar >- $ hg commit -m3 >- >-should not be renamed >- $ hg debugrename bar >- bar not renamed >- >- $ hg copy -f foo bar >-should show copy >- $ hg st -C >- M bar >- foo >- $ hg commit -m3 >- >-should show no parents for tip >- $ hg debugindex .hg/store/data/bar.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 69 0 1 7711d36246cc 000000000000 000000000000 >- 1 69 6 1 2 bdf70a2b8d03 7711d36246cc 000000000000 >- 2 75 81 1 3 b2558327ea8d 000000000000 000000000000 >-should match >- $ hg debugindex .hg/store/data/foo.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 5 0 0 2ed2a3912a0b 000000000000 000000000000 >- 1 5 7 1 2 dd12c926cf16 2ed2a3912a0b 000000000000 >- $ hg debugrename bar >- bar renamed from foo:dd12c926cf165e3eb4cf87b084955cb617221c17 >- >-should show no copies >- $ hg st -C >- >-copy --after on an added file >- $ cp bar baz >- $ hg add baz >- $ hg cp -A bar baz >- $ hg st -C >- A baz >- bar >- >-foo was clean: >- $ hg st -AC foo >- C foo >-but it's considered modified after a copy --after --force >- $ hg copy -Af bar foo >- $ hg st -AC foo >- M foo >- bar >!. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-debugbuilddag.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-debugbuilddag.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-debugbuilddag.t.err >@@ -1,321 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ echo "[extensions]" >> $HGRCPATH >- $ echo "graphlog=" >> $HGRCPATH >- >-overwritten and appended files >- >- $ rm -rf repo >- $ hg init repo >- $ cd repo >- $ hg debugbuilddag '+2:f +3:p2 @temp <f+4 @default /p2 +2' -q -oa >-dag >- $ hg debugdag -t -b >- +2:f >- +3:p2 >- @temp*f+3 >- @default*/p2+2:tip >-tip >- $ hg id >- f96e381c614c tip >-glog >- $ hg glog --template '{rev}: {desc} [{branches}] @ {date}\n' >- @ 11: r11 [] @ 11.00 >- | >- o 10: r10 [] @ 10.00 >- | >- o 9: r9 [] @ 9.00 >- |\ >- | o 8: r8 [temp] @ 8.00 >- | | >- | o 7: r7 [temp] @ 7.00 >- | | >- | o 6: r6 [temp] @ 6.00 >- | | >- | o 5: r5 [temp] @ 5.00 >- | | >- o | 4: r4 [] @ 4.00 >- | | >- o | 3: r3 [] @ 3.00 >- | | >- o | 2: r2 [] @ 2.00 >- |/ >- o 1: r1 [] @ 1.00 >- | >- o 0: r0 [] @ 0.00 >- >-glog of >- $ hg glog --template '{rev}: {desc} [{branches}]\n' of >- @ 11: r11 [] >- | >- o 10: r10 [] >- | >- o 9: r9 [] >- |\ >- | o 8: r8 [temp] >- | | >- | o 7: r7 [temp] >- | | >- | o 6: r6 [temp] >- | | >- | o 5: r5 [temp] >- | | >- o | 4: r4 [] >- | | >- o | 3: r3 [] >- | | >- o | 2: r2 [] >- |/ >- o 1: r1 [] >- | >- o 0: r0 [] >- >-glog af >- $ hg glog --template '{rev}: {desc} [{branches}]\n' af >- @ 11: r11 [] >- | >- o 10: r10 [] >- | >- o 9: r9 [] >- |\ >- | o 8: r8 [temp] >- | | >- | o 7: r7 [temp] >- | | >- | o 6: r6 [temp] >- | | >- | o 5: r5 [temp] >- | | >- o | 4: r4 [] >- | | >- o | 3: r3 [] >- | | >- o | 2: r2 [] >- |/ >- o 1: r1 [] >- | >- o 0: r0 [] >- >-tags >- $ hg tags -v >- tip 11:f96e381c614c >- p2 4:d9d6db981b55 local >- f 1:73253def624e local >-cat of >- $ hg cat of >- r11 >-cat af >- $ hg cat af >- r0 >- r1 >- r5 >- r6 >- r7 >- r8 >- r9 >- r10 >- r11 >- $ cd .. >- >-new and mergeable files >- >- $ rm -rf repo >- $ hg init repo >- $ cd repo >- $ hg debugbuilddag '+2:f +3:p2 @temp <f+4 @default /p2 +2' -q -mn >-dag >- $ hg debugdag -t -b >- +2:f >- +3:p2 >- @temp*f+3 >- @default*/p2+2:tip >-tip >- $ hg id >- 9c5ce9b70771 tip >-glog >- $ hg glog --template '{rev}: {desc} [{branches}] @ {date}\n' >- @ 11: r11 [] @ 11.00 >- | >- o 10: r10 [] @ 10.00 >- | >- o 9: r9 [] @ 9.00 >- |\ >- | o 8: r8 [temp] @ 8.00 >- | | >- | o 7: r7 [temp] @ 7.00 >- | | >- | o 6: r6 [temp] @ 6.00 >- | | >- | o 5: r5 [temp] @ 5.00 >- | | >- o | 4: r4 [] @ 4.00 >- | | >- o | 3: r3 [] @ 3.00 >- | | >- o | 2: r2 [] @ 2.00 >- |/ >- o 1: r1 [] @ 1.00 >- | >- o 0: r0 [] @ 0.00 >- >-glog mf >- $ hg glog --template '{rev}: {desc} [{branches}]\n' mf >- @ 11: r11 [] >- | >- o 10: r10 [] >- | >- o 9: r9 [] >- |\ >- | o 8: r8 [temp] >- | | >- | o 7: r7 [temp] >- | | >- | o 6: r6 [temp] >- | | >- | o 5: r5 [temp] >- | | >- o | 4: r4 [] >- | | >- o | 3: r3 [] >- | | >- o | 2: r2 [] >- |/ >- o 1: r1 [] >- | >- o 0: r0 [] >- >- >-man r4 >- $ hg manifest -r4 >- mf >- nf0 >- nf1 >- nf2 >- nf3 >- nf4 >-cat r4 mf >- $ hg cat -r4 mf >- 0 r0 >- 1 >- 2 r1 >- 3 >- 4 r2 >- 5 >- 6 r3 >- 7 >- 8 r4 >- 9 >- 10 >- 11 >- 12 >- 13 >- 14 >- 15 >- 16 >- 17 >- 18 >- 19 >- 20 >- 21 >- 22 >- 23 >-man r8 >- $ hg manifest -r8 >- mf >- nf0 >- nf1 >- nf5 >- nf6 >- nf7 >- nf8 >-cat r8 mf >- $ hg cat -r8 mf >- 0 r0 >- 1 >- 2 r1 >- 3 >- 4 >- 5 >- 6 >- 7 >- 8 >- 9 >- 10 r5 >- 11 >- 12 r6 >- 13 >- 14 r7 >- 15 >- 16 r8 >- 17 >- 18 >- 19 >- 20 >- 21 >- 22 >- 23 >-man >- $ hg manifest >- mf >- nf0 >- nf1 >- nf10 >- nf11 >- nf2 >- nf3 >- nf4 >- nf5 >- nf6 >- nf7 >- nf8 >- nf9 >-cat mf >- $ hg cat mf >- 0 r0 >- 1 >- 2 r1 >- 3 >- 4 r2 >- 5 >- 6 r3 >- 7 >- 8 r4 >- 9 >- 10 r5 >- 11 >- 12 r6 >- 13 >- 14 r7 >- 15 >- 16 r8 >- 17 >- 18 r9 >- 19 >- 20 r10 >- 21 >- 22 r11 >- 23 >- $ cd .. >- >-command >- >- $ rm -rf repo >- $ hg init repo >- $ cd repo >- $ hg debugbuilddag '+2 !"touch X" +2' -q -o >-dag >- $ hg debugdag -t -b >- +4:tip >-glog >- $ hg glog --template '{rev}: {desc} [{branches}]\n' >- @ 3: r3 [] >- | >- o 2: r2 [] >- | >- o 1: r1 [] >- | >- o 0: r0 [] >- >-glog X >- $ hg glog --template '{rev}: {desc} [{branches}]\n' X >- o 2: r2 [] >- >- $ cd .. >!.......... >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-diff-ignore-whitespace.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-diff-ignore-whitespace.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-diff-ignore-whitespace.t.err >@@ -1,446 +1,7 @@ >+ >+ ### Abort: timeout after 180 seconds. > GNU diff is the reference for all of these results. > > Prepare tests: > > $ echo '[alias]' >> $HGRCPATH >- $ echo 'ndiff = diff --nodates' >> $HGRCPATH >- >- $ hg init >- $ printf 'hello world\ngoodbye world\n' >foo >- $ hg ci -Amfoo -ufoo >- adding foo >- >- >-Test added blank lines: >- >- $ printf '\nhello world\n\ngoodbye world\n\n' >foo >- >->>> two diffs showing three added lines <<< >- >- $ hg ndiff >- diff -r 540c40a65b78 foo >- --- a/foo >- +++ b/foo >- @@ -1,2 +1,5 @@ >- + >- hello world >- + >- goodbye world >- + >- $ hg ndiff -b >- diff -r 540c40a65b78 foo >- --- a/foo >- +++ b/foo >- @@ -1,2 +1,5 @@ >- + >- hello world >- + >- goodbye world >- + >- >->>> no diffs <<< >- >- $ hg ndiff -B >- $ hg ndiff -Bb >- >- >-Test added horizontal space first on a line(): >- >- $ printf '\t hello world\ngoodbye world\n' >foo >- >->>> four diffs showing added space first on the first line <<< >- >- $ hg ndiff >- diff -r 540c40a65b78 foo >- --- a/foo >- +++ b/foo >- @@ -1,2 +1,2 @@ >- -hello world >- + hello world >- goodbye world >- >- $ hg ndiff -b >- diff -r 540c40a65b78 foo >- --- a/foo >- +++ b/foo >- @@ -1,2 +1,2 @@ >- -hello world >- + hello world >- goodbye world >- >- $ hg ndiff -B >- diff -r 540c40a65b78 foo >- --- a/foo >- +++ b/foo >- @@ -1,2 +1,2 @@ >- -hello world >- + hello world >- goodbye world >- >- $ hg ndiff -Bb >- diff -r 540c40a65b78 foo >- --- a/foo >- +++ b/foo >- @@ -1,2 +1,2 @@ >- -hello world >- + hello world >- goodbye world >- >- >-Test added horizontal space last on a line: >- >- $ printf 'hello world\t \ngoodbye world\n' >foo >- >->>> two diffs showing space appended to the first line <<< >- >- $ hg ndiff >- diff -r 540c40a65b78 foo >- --- a/foo >- +++ b/foo >- @@ -1,2 +1,2 @@ >- -hello world >- +hello world >- goodbye world >- >- $ hg ndiff -B >- diff -r 540c40a65b78 foo >- --- a/foo >- +++ b/foo >- @@ -1,2 +1,2 @@ >- -hello world >- +hello world >- goodbye world >- >->>> no diffs <<< >- >- $ hg ndiff -b >- $ hg ndiff -Bb >- >- >-Test added horizontal space in the middle of a word: >- >- $ printf 'hello world\ngood bye world\n' >foo >- >->>> four diffs showing space inserted into "goodbye" <<< >- >- $ hg ndiff >- diff -r 540c40a65b78 foo >- --- a/foo >- +++ b/foo >- @@ -1,2 +1,2 @@ >- hello world >- -goodbye world >- +good bye world >- >- $ hg ndiff -B >- diff -r 540c40a65b78 foo >- --- a/foo >- +++ b/foo >- @@ -1,2 +1,2 @@ >- hello world >- -goodbye world >- +good bye world >- >- $ hg ndiff -b >- diff -r 540c40a65b78 foo >- --- a/foo >- +++ b/foo >- @@ -1,2 +1,2 @@ >- hello world >- -goodbye world >- +good bye world >- >- $ hg ndiff -Bb >- diff -r 540c40a65b78 foo >- --- a/foo >- +++ b/foo >- @@ -1,2 +1,2 @@ >- hello world >- -goodbye world >- +good bye world >- >- >-Test increased horizontal whitespace amount: >- >- $ printf 'hello world\ngoodbye\t\t \tworld\n' >foo >- >->>> two diffs showing changed whitespace amount in the last line <<< >- >- $ hg ndiff >- diff -r 540c40a65b78 foo >- --- a/foo >- +++ b/foo >- @@ -1,2 +1,2 @@ >- hello world >- -goodbye world >- +goodbye world >- >- $ hg ndiff -B >- diff -r 540c40a65b78 foo >- --- a/foo >- +++ b/foo >- @@ -1,2 +1,2 @@ >- hello world >- -goodbye world >- +goodbye world >- >->>> no diffs <<< >- >- $ hg ndiff -b >- $ hg ndiff -Bb >- >- >-Test added blank line with horizontal whitespace: >- >- $ printf 'hello world\n \t\ngoodbye world\n' >foo >- >->>> three diffs showing added blank line with horizontal space <<< >- >- $ hg ndiff >- diff -r 540c40a65b78 foo >- --- a/foo >- +++ b/foo >- @@ -1,2 +1,3 @@ >- hello world >- + >- goodbye world >- >- $ hg ndiff -B >- diff -r 540c40a65b78 foo >- --- a/foo >- +++ b/foo >- @@ -1,2 +1,3 @@ >- hello world >- + >- goodbye world >- >- $ hg ndiff -b >- diff -r 540c40a65b78 foo >- --- a/foo >- +++ b/foo >- @@ -1,2 +1,3 @@ >- hello world >- + >- goodbye world >- >->>> no diffs <<< >- >- $ hg ndiff -Bb >- >- >-Test added blank line with other whitespace: >- >- $ printf 'hello world\n \t\ngoodbye world \n' >foo >- >->>> three diffs showing added blank line with other space <<< >- >- $ hg ndiff >- diff -r 540c40a65b78 foo >- --- a/foo >- +++ b/foo >- @@ -1,2 +1,3 @@ >- -hello world >- -goodbye world >- +hello world >- + >- +goodbye world >- >- $ hg ndiff -B >- diff -r 540c40a65b78 foo >- --- a/foo >- +++ b/foo >- @@ -1,2 +1,3 @@ >- -hello world >- -goodbye world >- +hello world >- + >- +goodbye world >- >- $ hg ndiff -b >- diff -r 540c40a65b78 foo >- --- a/foo >- +++ b/foo >- @@ -1,2 +1,3 @@ >- hello world >- + >- goodbye world >- >->>> no diffs <<< >- >- $ hg ndiff -Bb >- >- >-Test whitespace changes: >- >- $ printf 'helloworld\ngoodbye\tworld \n' >foo >- >->>> four diffs showing changed whitespace <<< >- >- $ hg ndiff >- diff -r 540c40a65b78 foo >- --- a/foo >- +++ b/foo >- @@ -1,2 +1,2 @@ >- -hello world >- -goodbye world >- +helloworld >- +goodbye world >- >- $ hg ndiff -B >- diff -r 540c40a65b78 foo >- --- a/foo >- +++ b/foo >- @@ -1,2 +1,2 @@ >- -hello world >- -goodbye world >- +helloworld >- +goodbye world >- >- $ hg ndiff -b >- diff -r 540c40a65b78 foo >- --- a/foo >- +++ b/foo >- @@ -1,2 +1,2 @@ >- -hello world >- +helloworld >- goodbye world >- >- $ hg ndiff -Bb >- diff -r 540c40a65b78 foo >- --- a/foo >- +++ b/foo >- @@ -1,2 +1,2 @@ >- -hello world >- +helloworld >- goodbye world >- >->>> no diffs <<< >- >- $ hg ndiff -w >- >- >-Test whitespace changes and blank lines: >- >- $ printf 'helloworld\n\n\n\ngoodbye\tworld \n' >foo >- >->>> five diffs showing changed whitespace <<< >- >- $ hg ndiff >- diff -r 540c40a65b78 foo >- --- a/foo >- +++ b/foo >- @@ -1,2 +1,5 @@ >- -hello world >- -goodbye world >- +helloworld >- + >- + >- + >- +goodbye world >- >- $ hg ndiff -B >- diff -r 540c40a65b78 foo >- --- a/foo >- +++ b/foo >- @@ -1,2 +1,5 @@ >- -hello world >- -goodbye world >- +helloworld >- + >- + >- + >- +goodbye world >- >- $ hg ndiff -b >- diff -r 540c40a65b78 foo >- --- a/foo >- +++ b/foo >- @@ -1,2 +1,5 @@ >- -hello world >- +helloworld >- + >- + >- + >- goodbye world >- >- $ hg ndiff -Bb >- diff -r 540c40a65b78 foo >- --- a/foo >- +++ b/foo >- @@ -1,2 +1,5 @@ >- -hello world >- +helloworld >- + >- + >- + >- goodbye world >- >- $ hg ndiff -w >- diff -r 540c40a65b78 foo >- --- a/foo >- +++ b/foo >- @@ -1,2 +1,5 @@ >- hello world >- + >- + >- + >- goodbye world >- >->>> no diffs <<< >- >- $ hg ndiff -wB >- >- >-Test \r (carriage return) as used in "DOS" line endings: >- >- $ printf 'hello world\r\n\r\ngoodbye\rworld\n' >foo >- >- $ hg ndiff >- diff -r 540c40a65b78 foo >- --- a/foo >- +++ b/foo >- @@ -1,2 +1,3 @@ >- -hello world >- -goodbye world >- +hello world >- + >- +goodbye world >-world >- >-No completely blank lines to ignore: >- >- $ hg ndiff --ignore-blank-lines >- diff -r 540c40a65b78 foo >- --- a/foo >- +++ b/foo >- @@ -1,2 +1,3 @@ >- -hello world >- -goodbye world >- +hello world >- + >- +goodbye world >-world >- >-Only new line noticed: >- >- $ hg ndiff --ignore-space-change >- diff -r 540c40a65b78 foo >- --- a/foo >- +++ b/foo >- @@ -1,2 +1,3 @@ >- hello world >- + >- goodbye world >- >- $ hg ndiff --ignore-all-space >- diff -r 540c40a65b78 foo >- --- a/foo >- +++ b/foo >- @@ -1,2 +1,3 @@ >- hello world >- + >- goodbye world >- >-New line not noticed when space change ignored: >- >- $ hg ndiff --ignore-blank-lines --ignore-all-space >!........... >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-dirstate-race.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-dirstate-race.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-dirstate-race.t.err >@@ -1,33 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ hg init >- $ echo a > a >- $ hg add a >- $ hg commit -m test >- >-Do we ever miss a sub-second change?: >- >- $ for i in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20; do >- > hg co -qC 0 >- > echo b > a >- > hg st >- > done >- M a >- M a >- M a >- M a >- M a >- M a >- M a >- M a >- M a >- M a >- M a >- M a >- M a >- M a >- M a >- M a >- M a >- M a >- M a >- M a >- >!.......... >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-eol.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-eol.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-eol.t.err >@@ -1,385 +1,8 @@ >+ >+ ### Abort: timeout after 180 seconds. > Test EOL extension > > $ cat > $HGRCPATH <<EOF > > [diff] > > git = True > > EOF >- >-Set up helpers >- >- $ cat > switch-eol.py <<EOF >- > import sys >- > try: >- > import os, msvcrt >- > msvcrt.setmode(sys.stdin.fileno(), os.O_BINARY) >- > msvcrt.setmode(sys.stdout.fileno(), os.O_BINARY) >- > except ImportError: >- > pass >- > (old, new) = sys.argv[1] == 'LF' and ('\n', '\r\n') or ('\r\n', '\n') >- > print "%% switching encoding from %r to %r" % (old, new) >- > for path in sys.argv[2:]: >- > data = file(path, 'rb').read() >- > data = data.replace(old, new) >- > file(path, 'wb').write(data) >- > EOF >- >- $ seteol () { >- > if [ $1 = "LF" ]; then >- > EOL='\n' >- > else >- > EOL='\r\n' >- > fi >- > } >- >- $ makerepo () { >- > seteol $1 >- > echo "% setup $1 repository" >- > hg init repo >- > cd repo >- > cat > .hgeol <<EOF >- > [repository] >- > native = $1 >- > [patterns] >- > mixed.txt = BIN >- > **.txt = native >- > EOF >- > printf "first${EOL}second${EOL}third${EOL}" > a.txt >- > hg commit --addremove -m 'checkin' >- > echo >- > cd .. >- > } >- >- $ dotest () { >- > seteol $1 >- > echo "% hg clone repo repo-$1" >- > hg clone --noupdate repo repo-$1 >- > cd repo-$1 >- > cat > .hg/hgrc <<EOF >- > [extensions] >- > eol = >- > [eol] >- > native = $1 >- > EOF >- > hg update >- > echo '% printrepr.py a.txt' >- > python $TESTDIR/printrepr.py < a.txt >- > echo '% hg cat a.txt' >- > hg cat a.txt | python $TESTDIR/printrepr.py >- > printf "fourth${EOL}" >> a.txt >- > echo '% printrepr.py a.txt' >- > python $TESTDIR/printrepr.py < a.txt >- > hg diff | python $TESTDIR/printrepr.py >- > python ../switch-eol.py $1 a.txt >- > echo '% hg diff only reports a single changed line:' >- > hg diff | python $TESTDIR/printrepr.py >- > echo "% reverting back to $1 format" >- > hg revert a.txt >- > python $TESTDIR/printrepr.py < a.txt >- > printf "first\r\nsecond\n" > mixed.txt >- > hg add mixed.txt >- > echo "% hg commit of inconsistent .txt file marked as binary (should work)" >- > hg commit -m 'binary file' >- > echo "% hg commit of inconsistent .txt file marked as native (should fail)" >- > printf "first\nsecond\r\nthird\nfourth\r\n" > a.txt >- > hg commit -m 'inconsistent file' >- > echo "% hg commit --config eol.only-consistent=False (should work)" >- > hg commit --config eol.only-consistent=False -m 'inconsistent file' >- > echo "% hg commit of binary .txt file marked as native (binary files always okay)" >- > printf "first${EOL}\0${EOL}third${EOL}" > a.txt >- > hg commit -m 'binary file' >- > cd .. >- > rm -r repo-$1 >- > } >- >- $ makemixedrepo () { >- > echo >- > echo "# setup $1 repository" >- > hg init mixed >- > cd mixed >- > printf "foo\r\nbar\r\nbaz\r\n" > win.txt >- > printf "foo\nbar\nbaz\n" > unix.txt >- > #printf "foo\r\nbar\nbaz\r\n" > mixed.txt >- > hg commit --addremove -m 'created mixed files' >- > echo "# setting repository-native EOLs to $1" >- > cat > .hgeol <<EOF >- > [repository] >- > native = $1 >- > [patterns] >- > **.txt = native >- > EOF >- > hg commit --addremove -m 'added .hgeol' >- > cd .. >- > } >- >- $ testmixed () { >- > echo >- > echo "% hg clone mixed mixed-$1" >- > hg clone mixed mixed-$1 >- > cd mixed-$1 >- > echo '% hg status (eol extension not yet activated)' >- > hg status >- > cat > .hg/hgrc <<EOF >- > [extensions] >- > eol = >- > [eol] >- > native = $1 >- > EOF >- > echo '% hg status (eol activated)' >- > hg status >- > echo '% hg commit' >- > hg commit -m 'synchronized EOLs' >- > echo '% hg status' >- > hg status >- > cd .. >- > rm -r mixed-$1 >- > } >- >-Basic tests >- >- $ makerepo LF >- % setup LF repository >- adding .hgeol >- adding a.txt >- >- $ dotest LF >- % hg clone repo repo-LF >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- % printrepr.py a.txt >- first >- second >- third >- % hg cat a.txt >- first >- second >- third >- % printrepr.py a.txt >- first >- second >- third >- fourth >- diff --git a/a.txt b/a.txt >- --- a/a.txt >- +++ b/a.txt >- @@ -1,3 +1,4 @@ >- first >- second >- third >- +fourth >- % switching encoding from '\n' to '\r\n' >- % hg diff only reports a single changed line: >- diff --git a/a.txt b/a.txt >- --- a/a.txt >- +++ b/a.txt >- @@ -1,3 +1,4 @@ >- first >- second >- third >- +fourth >- % reverting back to LF format >- first >- second >- third >- % hg commit of inconsistent .txt file marked as binary (should work) >- % hg commit of inconsistent .txt file marked as native (should fail) >- abort: inconsistent newline style in a.txt >- >- % hg commit --config eol.only-consistent=False (should work) >- % hg commit of binary .txt file marked as native (binary files always okay) >- $ dotest CRLF >- % hg clone repo repo-CRLF >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- % printrepr.py a.txt >- first\r >- second\r >- third\r >- % hg cat a.txt >- first >- second >- third >- % printrepr.py a.txt >- first\r >- second\r >- third\r >- fourth\r >- diff --git a/a.txt b/a.txt >- --- a/a.txt >- +++ b/a.txt >- @@ -1,3 +1,4 @@ >- first >- second >- third >- +fourth >- % switching encoding from '\r\n' to '\n' >- % hg diff only reports a single changed line: >- diff --git a/a.txt b/a.txt >- --- a/a.txt >- +++ b/a.txt >- @@ -1,3 +1,4 @@ >- first >- second >- third >- +fourth >- % reverting back to CRLF format >- first\r >- second\r >- third\r >- % hg commit of inconsistent .txt file marked as binary (should work) >- % hg commit of inconsistent .txt file marked as native (should fail) >- abort: inconsistent newline style in a.txt >- >- % hg commit --config eol.only-consistent=False (should work) >- % hg commit of binary .txt file marked as native (binary files always okay) >- $ rm -r repo >- $ makerepo CRLF >- % setup CRLF repository >- adding .hgeol >- adding a.txt >- >- $ dotest LF >- % hg clone repo repo-LF >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- % printrepr.py a.txt >- first >- second >- third >- % hg cat a.txt >- first\r >- second\r >- third\r >- % printrepr.py a.txt >- first >- second >- third >- fourth >- diff --git a/a.txt b/a.txt >- --- a/a.txt >- +++ b/a.txt >- @@ -1,3 +1,4 @@ >- first\r >- second\r >- third\r >- +fourth\r >- % switching encoding from '\n' to '\r\n' >- % hg diff only reports a single changed line: >- diff --git a/a.txt b/a.txt >- --- a/a.txt >- +++ b/a.txt >- @@ -1,3 +1,4 @@ >- first\r >- second\r >- third\r >- +fourth\r >- % reverting back to LF format >- first >- second >- third >- % hg commit of inconsistent .txt file marked as binary (should work) >- % hg commit of inconsistent .txt file marked as native (should fail) >- abort: inconsistent newline style in a.txt >- >- % hg commit --config eol.only-consistent=False (should work) >- % hg commit of binary .txt file marked as native (binary files always okay) >- $ dotest CRLF >- % hg clone repo repo-CRLF >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- % printrepr.py a.txt >- first\r >- second\r >- third\r >- % hg cat a.txt >- first\r >- second\r >- third\r >- % printrepr.py a.txt >- first\r >- second\r >- third\r >- fourth\r >- diff --git a/a.txt b/a.txt >- --- a/a.txt >- +++ b/a.txt >- @@ -1,3 +1,4 @@ >- first\r >- second\r >- third\r >- +fourth\r >- % switching encoding from '\r\n' to '\n' >- % hg diff only reports a single changed line: >- diff --git a/a.txt b/a.txt >- --- a/a.txt >- +++ b/a.txt >- @@ -1,3 +1,4 @@ >- first\r >- second\r >- third\r >- +fourth\r >- % reverting back to CRLF format >- first\r >- second\r >- third\r >- % hg commit of inconsistent .txt file marked as binary (should work) >- % hg commit of inconsistent .txt file marked as native (should fail) >- abort: inconsistent newline style in a.txt >- >- % hg commit --config eol.only-consistent=False (should work) >- % hg commit of binary .txt file marked as native (binary files always okay) >- $ rm -r repo >- >-Mixed tests >- >- $ makemixedrepo LF >- >- # setup LF repository >- adding unix.txt >- adding win.txt >- # setting repository-native EOLs to LF >- adding .hgeol >- $ testmixed LF >- >- % hg clone mixed mixed-LF >- updating to branch default >- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved >- % hg status (eol extension not yet activated) >- % hg status (eol activated) >- M win.txt >- % hg commit >- % hg status >- $ testmixed CRLF >- >- % hg clone mixed mixed-CRLF >- updating to branch default >- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved >- % hg status (eol extension not yet activated) >- % hg status (eol activated) >- M win.txt >- % hg commit >- % hg status >- $ rm -r mixed >- $ makemixedrepo CRLF >- >- # setup CRLF repository >- adding unix.txt >- adding win.txt >- # setting repository-native EOLs to CRLF >- adding .hgeol >- $ testmixed LF >- >- % hg clone mixed mixed-LF >- updating to branch default >- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved >- % hg status (eol extension not yet activated) >- % hg status (eol activated) >- M unix.txt >- % hg commit >- % hg status >- $ testmixed CRLF >- >- % hg clone mixed mixed-CRLF >- updating to branch default >- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved >- % hg status (eol extension not yet activated) >- % hg status (eol activated) >- M unix.txt >- % hg commit >- % hg status >- $ rm -r mixed >!.. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-encoding.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-encoding.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-encoding.t.err >@@ -1,245 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > Test character encoding > > $ hg init t >- $ cd t >- >-we need a repo with some legacy latin-1 changesets >- >- $ hg unbundle $TESTDIR/legacy-encoding.hg >- adding changesets >- adding manifests >- adding file changes >- added 2 changesets with 2 changes to 1 files >- (run 'hg update' to get a working copy) >- $ hg co >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ python << EOF >- > f = file('latin-1', 'w'); f.write("latin-1 e' encoded: \xe9"); f.close() >- > f = file('utf-8', 'w'); f.write("utf-8 e' encoded: \xc3\xa9"); f.close() >- > f = file('latin-1-tag', 'w'); f.write("\xe9"); f.close() >- > EOF >- >-should fail with encoding error >- >- $ echo "plain old ascii" > a >- $ hg st >- M a >- ? latin-1 >- ? latin-1-tag >- ? utf-8 >- $ HGENCODING=ascii hg ci -l latin-1 >- transaction abort! >- rollback completed >- abort: decoding near ' encoded: é': 'ascii' codec can't decode byte 0xe9 in position 20: ordinal not in range(128)! >- [255] >- >-these should work >- >- $ echo "latin-1" > a >- $ HGENCODING=latin-1 hg ci -l latin-1 >- $ echo "utf-8" > a >- $ HGENCODING=utf-8 hg ci -l utf-8 >- $ HGENCODING=latin-1 hg tag `cat latin-1-tag` >- $ HGENCODING=latin-1 hg branch `cat latin-1-tag` >- marked working directory as branch é >- $ HGENCODING=latin-1 hg ci -m 'latin1 branch' >- $ rm .hg/branch >- >-hg log (ascii) >- >- $ hg --encoding ascii log >- changeset: 5:093c6077d1c8 >- branch: ? >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: latin1 branch >- >- changeset: 4:94db611b4196 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: Added tag ? for changeset ca661e7520de >- >- changeset: 3:ca661e7520de >- tag: ? >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: utf-8 e' encoded: ? >- >- changeset: 2:650c6f3d55dd >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: latin-1 e' encoded: ? >- >- changeset: 1:0e5b7e3f9c4a >- user: test >- date: Mon Jan 12 13:46:40 1970 +0000 >- summary: koi8-r: ????? = u'\u0440\u0442\u0443\u0442\u044c' >- >- changeset: 0:1e78a93102a3 >- user: test >- date: Mon Jan 12 13:46:40 1970 +0000 >- summary: latin-1 e': ? = u'\xe9' >- >- >-hg log (latin-1) >- >- $ hg --encoding latin-1 log >- changeset: 5:093c6077d1c8 >- branch: é >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: latin1 branch >- >- changeset: 4:94db611b4196 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: Added tag é for changeset ca661e7520de >- >- changeset: 3:ca661e7520de >- tag: é >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: utf-8 e' encoded: é >- >- changeset: 2:650c6f3d55dd >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: latin-1 e' encoded: é >- >- changeset: 1:0e5b7e3f9c4a >- user: test >- date: Mon Jan 12 13:46:40 1970 +0000 >- summary: koi8-r: ÒÔÕÔØ = u'\u0440\u0442\u0443\u0442\u044c' >- >- changeset: 0:1e78a93102a3 >- user: test >- date: Mon Jan 12 13:46:40 1970 +0000 >- summary: latin-1 e': é = u'\xe9' >- >- >-hg log (utf-8) >- >- $ hg --encoding utf-8 log >- changeset: 5:093c6077d1c8 >- branch: é >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: latin1 branch >- >- changeset: 4:94db611b4196 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: Added tag é for changeset ca661e7520de >- >- changeset: 3:ca661e7520de >- tag: é >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: utf-8 e' encoded: é >- >- changeset: 2:650c6f3d55dd >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: latin-1 e' encoded: é >- >- changeset: 1:0e5b7e3f9c4a >- user: test >- date: Mon Jan 12 13:46:40 1970 +0000 >- summary: koi8-r: ÃÃÃÃà = u'\u0440\u0442\u0443\u0442\u044c' >- >- changeset: 0:1e78a93102a3 >- user: test >- date: Mon Jan 12 13:46:40 1970 +0000 >- summary: latin-1 e': é = u'\xe9' >- >- >-hg tags (ascii) >- >- $ HGENCODING=ascii hg tags >- tip 5:093c6077d1c8 >- ? 3:ca661e7520de >- >-hg tags (latin-1) >- >- $ HGENCODING=latin-1 hg tags >- tip 5:093c6077d1c8 >- é 3:ca661e7520de >- >-hg tags (utf-8) >- >- $ HGENCODING=utf-8 hg tags >- tip 5:093c6077d1c8 >- é 3:ca661e7520de >- >-hg branches (ascii) >- >- $ HGENCODING=ascii hg branches >- ? 5:093c6077d1c8 >- default 4:94db611b4196 (inactive) >- >-hg branches (latin-1) >- >- $ HGENCODING=latin-1 hg branches >- é 5:093c6077d1c8 >- default 4:94db611b4196 (inactive) >- >-hg branches (utf-8) >- >- $ HGENCODING=utf-8 hg branches >- é 5:093c6077d1c8 >- default 4:94db611b4196 (inactive) >- $ echo '[ui]' >> .hg/hgrc >- $ echo 'fallbackencoding = koi8-r' >> .hg/hgrc >- >-hg log (utf-8) >- >- $ HGENCODING=utf-8 hg log >- changeset: 5:093c6077d1c8 >- branch: é >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: latin1 branch >- >- changeset: 4:94db611b4196 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: Added tag é for changeset ca661e7520de >- >- changeset: 3:ca661e7520de >- tag: é >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: utf-8 e' encoded: é >- >- changeset: 2:650c6f3d55dd >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: latin-1 e' encoded: é >- >- changeset: 1:0e5b7e3f9c4a >- user: test >- date: Mon Jan 12 13:46:40 1970 +0000 >- summary: koi8-r: ÑÑÑÑÑ = u'\u0440\u0442\u0443\u0442\u044c' >- >- changeset: 0:1e78a93102a3 >- user: test >- date: Mon Jan 12 13:46:40 1970 +0000 >- summary: latin-1 e': Ð = u'\xe9' >- >- >-hg log (dolphin) >- >- $ HGENCODING=dolphin hg log >- abort: unknown encoding: dolphin, please check your locale settings >- [255] >- $ HGENCODING=ascii hg branch `cat latin-1-tag` >- abort: decoding near 'é': 'ascii' codec can't decode byte 0xe9 in position 0: ordinal not in range(128)! >- [255] >- $ cp latin-1-tag .hg/branch >- $ HGENCODING=latin-1 hg ci -m 'should fail' >- abort: branch name not in UTF-8! >- [255] >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-extdiff.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-extdiff.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-extdiff.t.err >@@ -1,170 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ echo "[extensions]" >> $HGRCPATH >- $ echo "extdiff=" >> $HGRCPATH >- >- $ hg init a >- $ cd a >- $ echo a > a >- $ echo b > b >- $ hg add >- adding a >- adding b >- >-Should diff cloned directories: >- >- $ hg extdiff -o -r $opt >- Only in a: a >- Only in a: b >- [1] >- >- $ echo "[extdiff]" >> $HGRCPATH >- $ echo "cmd.falabala=echo" >> $HGRCPATH >- $ echo "opts.falabala=diffing" >> $HGRCPATH >- >- $ hg falabala >- diffing a.000000000000 a >- [1] >- >- $ hg help falabala >- hg falabala [OPTION]... [FILE]... >- >- use 'echo' to diff repository (or selected files) >- >- Show differences between revisions for the specified files, using the >- 'echo' program. >- >- When two revision arguments are given, then changes are shown between >- those revisions. If only one revision is specified then that revision is >- compared to the working directory, and, when no revisions are specified, >- the working directory files are compared to its parent. >- >- options: >- >- -o --option OPT [+] pass option to comparison program >- -r --rev REV [+] revision >- -c --change REV change made by revision >- -I --include PATTERN [+] include names matching the given patterns >- -X --exclude PATTERN [+] exclude names matching the given patterns >- >- [+] marked option can be specified multiple times >- >- use "hg -v help falabala" to show global options >- >- $ hg ci -d '0 0' -mtest1 >- >- $ echo b >> a >- $ hg ci -d '1 0' -mtest2 >- >-Should diff cloned files directly: >- >- $ hg falabala -r 0:1 >- diffing a.8a5febb7f867/a a.34eed99112ab/a >- [1] >- >-Test diff during merge: >- >- $ hg update -C 0 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo c >> c >- $ hg add c >- $ hg ci -m "new branch" -d '1 0' >- created new head >- $ hg merge 1 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- >-Should diff cloned file against wc file: >- >- $ hg falabala >- diffing a.2a13a4d2da36/a $TESTTMP/a/a >- [1] >- >- >-Test --change option: >- >- $ hg ci -d '2 0' -mtest3 >- $ hg falabala -c 1 >- diffing a.8a5febb7f867/a a.34eed99112ab/a >- [1] >- >-Check diff are made from the first parent: >- >- $ hg falabala -c 3 || echo "diff-like tools yield a non-zero exit code" >- diffing a.2a13a4d2da36/a a.46c0e4daeb72/a >- diff-like tools yield a non-zero exit code >- >-Test extdiff of multiple files in tmp dir: >- >- $ hg update -C 0 > /dev/null >- $ echo changed > a >- $ echo changed > b >- $ chmod +x b >- >-Diff in working directory, before: >- >- $ hg diff --git >- diff --git a/a b/a >- --- a/a >- +++ b/a >- @@ -1,1 +1,1 @@ >- -a >- +changed >- diff --git a/b b/b >- old mode 100644 >- new mode 100755 >- --- a/b >- +++ b/b >- @@ -1,1 +1,1 @@ >- -b >- +changed >- >- >-Edit with extdiff -p: >- >-Prepare custom diff/edit tool: >- >- $ cat > 'diff tool.py' << EOT >- > #!/usr/bin/env python >- > import time >- > time.sleep(1) # avoid unchanged-timestamp problems >- > file('a/a', 'ab').write('edited\n') >- > file('a/b', 'ab').write('edited\n') >- > EOT >- >- $ chmod +x 'diff tool.py' >- >-will change to /tmp/extdiff.TMP and populate directories a.TMP and a >-and start tool >- >- $ hg extdiff -p "`pwd`/diff tool.py" >- [1] >- >-Diff in working directory, after: >- >- $ hg diff --git >- diff --git a/a b/a >- --- a/a >- +++ b/a >- @@ -1,1 +1,2 @@ >- -a >- +changed >- +edited >- diff --git a/b b/b >- old mode 100644 >- new mode 100755 >- --- a/b >- +++ b/b >- @@ -1,1 +1,2 @@ >- -b >- +changed >- +edited >- >-Test extdiff with --option: >- >- $ hg extdiff -p echo -o this -c 1 >- this a.8a5febb7f867/a a.34eed99112ab/a >- [1] >- >- $ hg falabala -o this -c 1 >- diffing this a.8a5febb7f867/a a.34eed99112ab/a >- [1] >- >!. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-export.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-export.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-export.t.err >@@ -1,110 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ hg init repo >- $ cd repo >- $ touch foo >- $ hg add foo >- $ for i in 0 1 2 3 4 5 6 7 8 9 10 11; do >- > echo "foo-$i" >> foo >- > hg ci -m "foo-$i" >- > done >- >- $ for out in "%nof%N" "%%%H" "%b-%R" "%h" "%r"; do >- > echo >- > echo "# foo-$out.patch" >- > hg export -v -o "foo-$out.patch" 2:tip >- > done >- >- # foo-%nof%N.patch >- exporting patches: >- foo-01of10.patch >- foo-02of10.patch >- foo-03of10.patch >- foo-04of10.patch >- foo-05of10.patch >- foo-06of10.patch >- foo-07of10.patch >- foo-08of10.patch >- foo-09of10.patch >- foo-10of10.patch >- >- # foo-%%%H.patch >- exporting patches: >- foo-%617188a1c80f869a7b66c85134da88a6fb145f67.patch >- foo-%dd41a5ff707a5225204105611ba49cc5c229d55f.patch >- foo-%f95a5410f8664b6e1490a4af654e4b7d41a7b321.patch >- foo-%4346bcfde53b4d9042489078bcfa9c3e28201db2.patch >- foo-%afda8c3a009cc99449a05ad8aa4655648c4ecd34.patch >- foo-%35284ce2b6b99c9d2ac66268fe99e68e1974e1aa.patch >- foo-%9688c41894e6931305fa7165a37f6568050b4e9b.patch >- foo-%747d3c68f8ec44bb35816bfcd59aeb50b9654c2f.patch >- foo-%5f17a83f5fbd9414006a5e563eab4c8a00729efd.patch >- foo-%f3acbafac161ec68f1598af38f794f28847ca5d3.patch >- >- # foo-%b-%R.patch >- exporting patches: >- foo-repo-2.patch >- foo-repo-3.patch >- foo-repo-4.patch >- foo-repo-5.patch >- foo-repo-6.patch >- foo-repo-7.patch >- foo-repo-8.patch >- foo-repo-9.patch >- foo-repo-10.patch >- foo-repo-11.patch >- >- # foo-%h.patch >- exporting patches: >- foo-617188a1c80f.patch >- foo-dd41a5ff707a.patch >- foo-f95a5410f866.patch >- foo-4346bcfde53b.patch >- foo-afda8c3a009c.patch >- foo-35284ce2b6b9.patch >- foo-9688c41894e6.patch >- foo-747d3c68f8ec.patch >- foo-5f17a83f5fbd.patch >- foo-f3acbafac161.patch >- >- # foo-%r.patch >- exporting patches: >- foo-02.patch >- foo-03.patch >- foo-04.patch >- foo-05.patch >- foo-06.patch >- foo-07.patch >- foo-08.patch >- foo-09.patch >- foo-10.patch >- foo-11.patch >- >-Exporting 4 changesets to a file: >- >- $ hg export -o export_internal 1 2 3 4 >- $ grep HG export_internal | wc -l >- \s*4 (re) >- >-Exporting 4 changesets to a file: >- >- $ hg export 1 2 3 4 | grep HG | wc -l >- \s*4 (re) >- >-Exporting revision -2 to a file: >- >- $ hg export -- -2 >- # HG changeset patch >- # User test >- # Date 0 0 >- # Node ID 5f17a83f5fbd9414006a5e563eab4c8a00729efd >- # Parent 747d3c68f8ec44bb35816bfcd59aeb50b9654c2f >- foo-10 >- >- diff -r 747d3c68f8ec -r 5f17a83f5fbd foo >- --- a/foo Thu Jan 01 00:00:00 1970 +0000 >- +++ b/foo Thu Jan 01 00:00:00 1970 +0000 >- @@ -8,3 +8,4 @@ >- foo-7 >- foo-8 >- foo-9 >- +foo-10 >- >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-eol-patch.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-eol-patch.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-eol-patch.t.err >@@ -1,400 +1,8 @@ >+ >+ ### Abort: timeout after 180 seconds. > Test EOL patching > > $ cat > $HGRCPATH <<EOF > > [diff] > > git = 1 > > EOF >- >-Set up helpers >- >- $ seteol () { >- > if [ $1 = "LF" ]; then >- > EOL='\n' >- > else >- > EOL='\r\n' >- > fi >- > } >- >- $ makerepo () { >- > seteol $1 >- > echo >- > echo "# ==== setup $1 repository ====" >- > echo '% hg init' >- > hg init repo >- > cd repo >- > cat > .hgeol <<EOF >- > [repository] >- > native = $1 >- > [patterns] >- > unix.txt = LF >- > win.txt = CRLF >- > **.txt = native >- > EOF >- > printf "first\r\nsecond\r\nthird\r\n" > win.txt >- > printf "first\nsecond\nthird\n" > unix.txt >- > printf "first${EOL}second${EOL}third${EOL}" > native.txt >- > hg commit --addremove -m 'checkin' >- > cd .. >- > } >- >- $ dotest () { >- > seteol $1 >- > echo >- > echo "% hg clone repo repo-$1" >- > hg clone --noupdate repo repo-$1 >- > cd repo-$1 >- > cat > .hg/hgrc <<EOF >- > [extensions] >- > eol = >- > [eol] >- > native = $1 >- > EOF >- > hg update >- > echo '% printrepr.py native.txt' >- > python $TESTDIR/printrepr.py < native.txt >- > echo '% printrepr.py unix.txt' >- > python $TESTDIR/printrepr.py < unix.txt >- > echo '% printrepr.py win.txt' >- > python $TESTDIR/printrepr.py < win.txt >- > printf "first${EOL}third${EOL}" > native.txt >- > printf "first\r\nthird\r\n" > win.txt >- > printf "first\nthird\n" > unix.txt >- > echo '% hg diff' >- > hg diff > p >- > python $TESTDIR/printrepr.py < p >- > echo '% hg revert' >- > hg revert --all >- > echo '% hg import' >- > hg import -m 'patch' p >- > echo '% printrepr.py native.txt' >- > python $TESTDIR/printrepr.py < native.txt >- > echo '% printrepr.py unix.txt' >- > python $TESTDIR/printrepr.py < unix.txt >- > echo '% printrepr.py win.txt' >- > python $TESTDIR/printrepr.py < win.txt >- > echo '% hg diff -c tip' >- > hg diff -c tip | python $TESTDIR/printrepr.py >- > cd .. >- > rm -r repo-$1 >- > } >- >-Run tests >- >- $ makerepo LF >- >- # ==== setup LF repository ==== >- % hg init >- adding .hgeol >- adding native.txt >- adding unix.txt >- adding win.txt >- $ dotest LF >- >- % hg clone repo repo-LF >- 4 files updated, 0 files merged, 0 files removed, 0 files unresolved >- % printrepr.py native.txt >- first >- second >- third >- % printrepr.py unix.txt >- first >- second >- third >- % printrepr.py win.txt >- first\r >- second\r >- third\r >- % hg diff >- diff --git a/native.txt b/native.txt >- --- a/native.txt >- +++ b/native.txt >- @@ -1,3 +1,2 @@ >- first >- -second >- third >- diff --git a/unix.txt b/unix.txt >- --- a/unix.txt >- +++ b/unix.txt >- @@ -1,3 +1,2 @@ >- first >- -second >- third >- diff --git a/win.txt b/win.txt >- --- a/win.txt >- +++ b/win.txt >- @@ -1,3 +1,2 @@ >- first\r >- -second\r >- third\r >- % hg revert >- reverting native.txt >- reverting unix.txt >- reverting win.txt >- % hg import >- applying p >- % printrepr.py native.txt >- first >- third >- % printrepr.py unix.txt >- first >- third >- % printrepr.py win.txt >- first\r >- third\r >- % hg diff -c tip >- diff --git a/native.txt b/native.txt >- --- a/native.txt >- +++ b/native.txt >- @@ -1,3 +1,2 @@ >- first >- -second >- third >- diff --git a/unix.txt b/unix.txt >- --- a/unix.txt >- +++ b/unix.txt >- @@ -1,3 +1,2 @@ >- first >- -second >- third >- diff --git a/win.txt b/win.txt >- --- a/win.txt >- +++ b/win.txt >- @@ -1,3 +1,2 @@ >- first\r >- -second\r >- third\r >- $ dotest CRLF >- >- % hg clone repo repo-CRLF >- 4 files updated, 0 files merged, 0 files removed, 0 files unresolved >- % printrepr.py native.txt >- first\r >- second\r >- third\r >- % printrepr.py unix.txt >- first >- second >- third >- % printrepr.py win.txt >- first\r >- second\r >- third\r >- % hg diff >- diff --git a/native.txt b/native.txt >- --- a/native.txt >- +++ b/native.txt >- @@ -1,3 +1,2 @@ >- first >- -second >- third >- diff --git a/unix.txt b/unix.txt >- --- a/unix.txt >- +++ b/unix.txt >- @@ -1,3 +1,2 @@ >- first >- -second >- third >- diff --git a/win.txt b/win.txt >- --- a/win.txt >- +++ b/win.txt >- @@ -1,3 +1,2 @@ >- first\r >- -second\r >- third\r >- % hg revert >- reverting native.txt >- reverting unix.txt >- reverting win.txt >- % hg import >- applying p >- % printrepr.py native.txt >- first\r >- third\r >- % printrepr.py unix.txt >- first >- third >- % printrepr.py win.txt >- first\r >- third\r >- % hg diff -c tip >- diff --git a/native.txt b/native.txt >- --- a/native.txt >- +++ b/native.txt >- @@ -1,3 +1,2 @@ >- first >- -second >- third >- diff --git a/unix.txt b/unix.txt >- --- a/unix.txt >- +++ b/unix.txt >- @@ -1,3 +1,2 @@ >- first >- -second >- third >- diff --git a/win.txt b/win.txt >- --- a/win.txt >- +++ b/win.txt >- @@ -1,3 +1,2 @@ >- first\r >- -second\r >- third\r >- $ rm -r repo >- $ makerepo CRLF >- >- # ==== setup CRLF repository ==== >- % hg init >- adding .hgeol >- adding native.txt >- adding unix.txt >- adding win.txt >- $ dotest LF >- >- % hg clone repo repo-LF >- 4 files updated, 0 files merged, 0 files removed, 0 files unresolved >- % printrepr.py native.txt >- first >- second >- third >- % printrepr.py unix.txt >- first >- second >- third >- % printrepr.py win.txt >- first\r >- second\r >- third\r >- % hg diff >- diff --git a/native.txt b/native.txt >- --- a/native.txt >- +++ b/native.txt >- @@ -1,3 +1,2 @@ >- first\r >- -second\r >- third\r >- diff --git a/unix.txt b/unix.txt >- --- a/unix.txt >- +++ b/unix.txt >- @@ -1,3 +1,2 @@ >- first >- -second >- third >- diff --git a/win.txt b/win.txt >- --- a/win.txt >- +++ b/win.txt >- @@ -1,3 +1,2 @@ >- first\r >- -second\r >- third\r >- % hg revert >- reverting native.txt >- reverting unix.txt >- reverting win.txt >- % hg import >- applying p >- % printrepr.py native.txt >- first >- third >- % printrepr.py unix.txt >- first >- third >- % printrepr.py win.txt >- first\r >- third\r >- % hg diff -c tip >- diff --git a/native.txt b/native.txt >- --- a/native.txt >- +++ b/native.txt >- @@ -1,3 +1,2 @@ >- first\r >- -second\r >- third\r >- diff --git a/unix.txt b/unix.txt >- --- a/unix.txt >- +++ b/unix.txt >- @@ -1,3 +1,2 @@ >- first >- -second >- third >- diff --git a/win.txt b/win.txt >- --- a/win.txt >- +++ b/win.txt >- @@ -1,3 +1,2 @@ >- first\r >- -second\r >- third\r >- $ dotest CRLF >- >- % hg clone repo repo-CRLF >- 4 files updated, 0 files merged, 0 files removed, 0 files unresolved >- % printrepr.py native.txt >- first\r >- second\r >- third\r >- % printrepr.py unix.txt >- first >- second >- third >- % printrepr.py win.txt >- first\r >- second\r >- third\r >- % hg diff >- diff --git a/native.txt b/native.txt >- --- a/native.txt >- +++ b/native.txt >- @@ -1,3 +1,2 @@ >- first\r >- -second\r >- third\r >- diff --git a/unix.txt b/unix.txt >- --- a/unix.txt >- +++ b/unix.txt >- @@ -1,3 +1,2 @@ >- first >- -second >- third >- diff --git a/win.txt b/win.txt >- --- a/win.txt >- +++ b/win.txt >- @@ -1,3 +1,2 @@ >- first\r >- -second\r >- third\r >- % hg revert >- reverting native.txt >- reverting unix.txt >- reverting win.txt >- % hg import >- applying p >- % printrepr.py native.txt >- first\r >- third\r >- % printrepr.py unix.txt >- first >- third >- % printrepr.py win.txt >- first\r >- third\r >- % hg diff -c tip >- diff --git a/native.txt b/native.txt >- --- a/native.txt >- +++ b/native.txt >- @@ -1,3 +1,2 @@ >- first\r >- -second\r >- third\r >- diff --git a/unix.txt b/unix.txt >- --- a/unix.txt >- +++ b/unix.txt >- @@ -1,3 +1,2 @@ >- first >- -second >- third >- diff --git a/win.txt b/win.txt >- --- a/win.txt >- +++ b/win.txt >- @@ -1,3 +1,2 @@ >- first\r >- -second\r >- third\r >- $ rm -r repo >!. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-flags.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-flags.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-flags.t.err >@@ -1,149 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ umask 027 >- $ mkdir test1 >- $ cd test1 >- >- $ hg init >- $ touch a b >- $ hg add a b >- $ hg ci -m "added a b" >- >- $ cd .. >- $ hg clone test1 test3 >- updating to branch default >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ mkdir test2 >- $ cd test2 >- >- $ hg init >- $ hg pull ../test1 >- pulling from ../test1 >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 2 changes to 2 files >- (run 'hg update' to get a working copy) >- $ hg co >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ chmod +x a >- $ hg ci -m "chmod +x a" >- >-the changelog should mention file a: >- >- $ hg tip --template '{files}\n' >- a >- >- $ cd ../test1 >- $ echo 123 >>a >- $ hg ci -m "a updated" >- >- $ hg pull ../test2 >- pulling from ../test2 >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 0 changes to 0 files (+1 heads) >- (run 'hg heads' to see heads, 'hg merge' to merge) >- $ hg heads >- changeset: 2:7f4313b42a34 >- tag: tip >- parent: 0:22a449e20da5 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: chmod +x a >- >- changeset: 1:c6ecefc45368 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: a updated >- >- $ hg history >- changeset: 2:7f4313b42a34 >- tag: tip >- parent: 0:22a449e20da5 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: chmod +x a >- >- changeset: 1:c6ecefc45368 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: a updated >- >- changeset: 0:22a449e20da5 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: added a b >- >- >- $ hg -v merge >- resolving manifests >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- >- $ cd ../test3 >- $ echo 123 >>b >- $ hg ci -m "b updated" >- >- $ hg pull ../test2 >- pulling from ../test2 >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 0 changes to 0 files (+1 heads) >- (run 'hg heads' to see heads, 'hg merge' to merge) >- $ hg heads >- changeset: 2:7f4313b42a34 >- tag: tip >- parent: 0:22a449e20da5 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: chmod +x a >- >- changeset: 1:dc57ead75f79 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: b updated >- >- $ hg history >- changeset: 2:7f4313b42a34 >- tag: tip >- parent: 0:22a449e20da5 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: chmod +x a >- >- changeset: 1:dc57ead75f79 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: b updated >- >- changeset: 0:22a449e20da5 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: added a b >- >- >- $ hg -v merge >- resolving manifests >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- >- $ ls -l ../test[123]/a > foo >- $ cut -b 1-10 < foo >- -rwxr-x--- >- -rwxr-x--- >- -rwxr-x--- >- >- $ hg debugindex .hg/store/data/a.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 0 0 0 b80de5d13875 000000000000 000000000000 >- $ hg debugindex ../test2/.hg/store/data/a.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 0 0 0 b80de5d13875 000000000000 000000000000 >- $ hg debugindex ../test1/.hg/store/data/a.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 0 0 0 b80de5d13875 000000000000 000000000000 >- 1 0 5 1 1 7fe919cc0336 b80de5d13875 000000000000 >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-fetch.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-fetch.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-fetch.t.err >@@ -1,418 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > adjust to non-default HGPORT, e.g. with run-tests.py -j > > $ echo "[extensions]" >> $HGRCPATH >- $ echo "fetch=" >> $HGRCPATH >- >-test fetch with default branches only >- >- $ hg init a >- $ echo a > a/a >- $ hg --cwd a commit -d '1 0' -Ama >- adding a >- $ hg clone a b >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg clone a c >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo b > a/b >- $ hg --cwd a commit -d '2 0' -Amb >- adding b >- $ hg --cwd a parents -q >- 1:97d72e5f12c7 >- >-should pull one change >- >- $ hg --cwd b fetch ../a >- pulling from ../a >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg --cwd b parents -q >- 1:97d72e5f12c7 >- $ echo c > c/c >- $ hg --cwd c commit -d '3 0' -Amc >- adding c >- $ hg clone c d >- updating to branch default >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg clone c e >- updating to branch default >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-We cannot use the default commit message if fetching from a local >-repo, because the path of the repo will be included in the commit >-message, making every commit appear different. >-should merge c into a >- >- $ hg --cwd c fetch -d '4 0' -m 'automated merge' ../a >- pulling from ../a >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files (+1 heads) >- updating to 2:97d72e5f12c7 >- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved >- merging with 1:5e056962225c >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- new changeset 3:cd3a41621cf0 merges remote changes with local >- $ ls c >- a >- b >- c >- $ netstat -tnap 2>/dev/null | grep $HGPORT | grep LISTEN >- [1] >- $ hg --cwd a serve -a localhost -p $HGPORT -d --pid-file=hg.pid >- $ cat a/hg.pid >> "$DAEMON_PIDS" >- >-fetch over http, no auth >- >- $ hg --cwd d fetch -d '5 0' http://localhost:$HGPORT/ >- pulling from http://localhost:$HGPORT/ >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files (+1 heads) >- updating to 2:97d72e5f12c7 >- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved >- merging with 1:5e056962225c >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- new changeset 3:* merges remote changes with local (glob) >- $ hg --cwd d tip --template '{desc}\n' >- Automated merge with http://localhost:$HGPORT/ >- >-fetch over http with auth (should be hidden in desc) >- >- $ hg --cwd e fetch -d '5 0' http://user:password@localhost:$HGPORT/ >- pulling from http://user:***@localhost:$HGPORT/ >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files (+1 heads) >- updating to 2:97d72e5f12c7 >- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved >- merging with 1:5e056962225c >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- new changeset 3:* merges remote changes with local (glob) >- $ hg --cwd e tip --template '{desc}\n' >- Automated merge with http://localhost:$HGPORT/ >- $ hg clone a f >- updating to branch default >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg clone a g >- updating to branch default >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo f > f/f >- $ hg --cwd f ci -d '6 0' -Amf >- adding f >- $ echo g > g/g >- $ hg --cwd g ci -d '6 0' -Amg >- adding g >- $ hg clone -q f h >- $ hg clone -q g i >- >-should merge f into g >- >- $ hg --cwd g fetch -d '7 0' --switch -m 'automated merge' ../f >- pulling from ../f >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files (+1 heads) >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- merging with 3:cc6a3744834d >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- new changeset 4:55aa4f32ec59 merges remote changes with local >- $ rm i/g >- >-should abort, because i is modified >- >- $ hg --cwd i fetch ../h >- abort: working directory is missing some files >- [255] >- >-test fetch with named branches >- >- $ hg init nbase >- $ echo base > nbase/a >- $ hg -R nbase ci -d '1 0' -Am base >- adding a >- $ hg -R nbase branch a >- marked working directory as branch a >- $ echo a > nbase/a >- $ hg -R nbase ci -d '2 0' -m a >- $ hg -R nbase up -C 0 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg -R nbase branch b >- marked working directory as branch b >- $ echo b > nbase/b >- $ hg -R nbase ci -Ad '3 0' -m b >- adding b >- $ echo >- >- >-pull in change on foreign branch >- >- $ hg clone nbase n1 >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg clone nbase n2 >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg -R n1 up -C a >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo aa > n1/a >- $ hg -R n1 ci -d '4 0' -m a1 >- $ hg -R n2 up -C b >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg -R n2 fetch -d '9 0' -m 'merge' n1 >- pulling from n1 >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- >-parent should be 2 (no automatic update) >- >- $ hg -R n2 parents --template '{rev}\n' >- 2 >- $ rm -fr n1 n2 >- $ echo >- >- >-pull in changes on both foreign and local branches >- >- $ hg clone nbase n1 >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg clone nbase n2 >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg -R n1 up -C a >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo aa > n1/a >- $ hg -R n1 ci -d '4 0' -m a1 >- $ hg -R n1 up -C b >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo bb > n1/b >- $ hg -R n1 ci -d '5 0' -m b1 >- $ hg -R n2 up -C b >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg -R n2 fetch -d '9 0' -m 'merge' n1 >- pulling from n1 >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 2 changesets with 2 changes to 2 files >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-parent should be 4 (fast forward) >- >- $ hg -R n2 parents --template '{rev}\n' >- 4 >- $ rm -fr n1 n2 >- $ echo >- >- >-pull changes on foreign (2 new heads) and local (1 new head) branches >-with a local change >- >- $ hg clone nbase n1 >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg clone nbase n2 >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg -R n1 up -C a >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo a1 > n1/a >- $ hg -R n1 ci -d '4 0' -m a1 >- $ hg -R n1 up -C b >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo bb > n1/b >- $ hg -R n1 ci -d '5 0' -m b1 >- $ hg -R n1 up -C 1 >- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ echo a2 > n1/a >- $ hg -R n1 ci -d '6 0' -m a2 >- created new head >- $ hg -R n2 up -C b >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo change >> n2/c >- $ hg -R n2 ci -Ad '7 0' -m local >- adding c >- $ hg -R n2 fetch -d '9 0' -m 'merge' n1 >- pulling from n1 >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 3 changesets with 3 changes to 2 files (+2 heads) >- updating to 5:708c6cce3d26 >- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved >- merging with 3:d83427717b1f >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- new changeset 7:48f1a33f52af merges remote changes with local >- >-parent should be 7 (new merge changeset) >- >- $ hg -R n2 parents --template '{rev}\n' >- 7 >- $ rm -fr n1 n2 >- >-pull in changes on foreign (merge of local branch) and local (2 new >-heads) with a local change >- >- $ hg clone nbase n1 >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg clone nbase n2 >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg -R n1 up -C a >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg -R n1 merge b >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg -R n1 ci -d '4 0' -m merge >- $ hg -R n1 up -C 2 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo c > n1/a >- $ hg -R n1 ci -d '5 0' -m c >- $ hg -R n1 up -C 2 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo cc > n1/a >- $ hg -R n1 ci -d '6 0' -m cc >- created new head >- $ hg -R n2 up -C b >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo change >> n2/b >- $ hg -R n2 ci -Ad '7 0' -m local >- $ hg -R n2 fetch -d '9 0' -m 'merge' n1 >- pulling from n1 >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 3 changesets with 2 changes to 1 files (+2 heads) >- not merging with 1 other new branch heads (use "hg heads ." and "hg merge" to merge them) >- [1] >- >-parent should be 3 (fetch did not merge anything) >- >- $ hg -R n2 parents --template '{rev}\n' >- 3 >- $ rm -fr n1 n2 >- >-pull in change on different branch than dirstate >- >- $ hg init n1 >- $ echo a > n1/a >- $ hg -R n1 ci -Am initial >- adding a >- $ hg clone n1 n2 >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo b > n1/a >- $ hg -R n1 ci -m next >- $ hg -R n2 branch topic >- marked working directory as branch topic >- $ hg -R n2 fetch -d '0 0' -m merge n1 >- abort: working dir not at branch tip (use "hg update" to check out branch tip) >- [255] >- >-parent should be 0 (fetch did not update or merge anything) >- >- $ hg -R n2 parents --template '{rev}\n' >- 0 >- $ rm -fr n1 n2 >- >-test fetch with inactive branches >- >- $ hg init ib1 >- $ echo a > ib1/a >- $ hg --cwd ib1 ci -Am base >- adding a >- $ hg --cwd ib1 branch second >- marked working directory as branch second >- $ echo b > ib1/b >- $ hg --cwd ib1 ci -Am onsecond >- adding b >- $ hg --cwd ib1 branch -f default >- marked working directory as branch default >- $ echo c > ib1/c >- $ hg --cwd ib1 ci -Am newdefault >- adding c >- created new head >- $ hg clone ib1 ib2 >- updating to branch default >- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-fetch should succeed >- >- $ hg --cwd ib2 fetch ../ib1 >- pulling from ../ib1 >- searching for changes >- no changes found >- $ rm -fr ib1 ib2 >- >-test issue1726 >- >- $ hg init i1726r1 >- $ echo a > i1726r1/a >- $ hg --cwd i1726r1 ci -Am base >- adding a >- $ hg clone i1726r1 i1726r2 >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo b > i1726r1/a >- $ hg --cwd i1726r1 ci -m second >- $ echo c > i1726r2/a >- $ hg --cwd i1726r2 ci -m third >- $ HGMERGE=true hg --cwd i1726r2 fetch ../i1726r1 >- pulling from ../i1726r1 >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files (+1 heads) >- updating to 2:7837755a2789 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- merging with 1:d1f0c6c48ebd >- merging a >- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved >- new changeset 3:* merges remote changes with local (glob) >- $ hg --cwd i1726r2 heads default --template '{rev}\n' >- 3 >- $ echo >- >- >-test issue2047 >- >- $ hg -q init i2047a >- $ cd i2047a >- $ echo a > a >- $ hg -q ci -Am a >- $ hg -q branch stable >- $ echo b > b >- $ hg -q ci -Am b >- $ cd .. >- $ hg -q clone -r 0 i2047a i2047b >- $ cd i2047b >- $ hg fetch ../i2047a >- pulling from ../i2047a >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- $ "$TESTDIR/killdaemons.py" >!.. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-gendoc.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-gendoc.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-gendoc.t.err >@@ -1,54 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > Test document extraction > > $ "$TESTDIR/hghave" docutils || exit 80 >- $ HGENCODING=UTF-8 >- $ export HGENCODING >- $ for PO in C $TESTDIR/../i18n/*.po; do >- > LOCALE=`basename $PO .po` >- > echo >- > echo "% extracting documentation from $LOCALE" >- > echo ".. -*- coding: utf-8 -*-" > gendoc-$LOCALE.txt >- > echo "" >> gendoc-$LOCALE.txt >- > LC_ALL=$LOCALE python $TESTDIR/../doc/gendoc.py >> gendoc-$LOCALE.txt 2> /dev/null || exit >- > >- > # We call runrst without adding "--halt warning" to make it report >- > # all errors instead of stopping on the first one. >- > echo "checking for parse errors" >- > python $TESTDIR/../doc/runrst html gendoc-$LOCALE.txt /dev/null >- > done >- >- % extracting documentation from C >- checking for parse errors >- >- % extracting documentation from da >- checking for parse errors >- >- % extracting documentation from de >- checking for parse errors >- >- % extracting documentation from el >- checking for parse errors >- >- % extracting documentation from fr >- checking for parse errors >- >- % extracting documentation from it >- checking for parse errors >- >- % extracting documentation from ja >- checking for parse errors >- >- % extracting documentation from pt_BR >- checking for parse errors >- >- % extracting documentation from ro >- checking for parse errors >- >- % extracting documentation from sv >- checking for parse errors >- >- % extracting documentation from zh_CN >- checking for parse errors >- >- % extracting documentation from zh_TW >- checking for parse errors >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-git-import.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-git-import.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-git-import.t.err >@@ -1,385 +1,4 @@ >+ >+ ### Abort: timeout after 180 seconds. > > $ hg init >- >-New file: >- >- $ hg import -d "1000000 0" -mnew - <<EOF >- > diff --git a/new b/new >- > new file mode 100644 >- > index 0000000..7898192 >- > --- /dev/null >- > +++ b/new >- > @@ -0,0 +1 @@ >- > +a >- > EOF >- applying patch from stdin >- >- $ hg tip -q >- 0:ae3ee40d2079 >- >-New empty file: >- >- $ hg import -d "1000000 0" -mempty - <<EOF >- > diff --git a/empty b/empty >- > new file mode 100644 >- > EOF >- applying patch from stdin >- >- $ hg tip -q >- 1:ab199dc869b5 >- >- $ hg locate empty >- empty >- >-chmod +x: >- >- $ hg import -d "1000000 0" -msetx - <<EOF >- > diff --git a/new b/new >- > old mode 100644 >- > new mode 100755 >- > EOF >- applying patch from stdin >- >- $ hg tip -q >- 2:3a34410f282e >- >- $ test -x new >- >-Copy: >- >- $ hg import -d "1000000 0" -mcopy - <<EOF >- > diff --git a/new b/copy >- > old mode 100755 >- > new mode 100644 >- > similarity index 100% >- > copy from new >- > copy to copy >- > diff --git a/new b/copyx >- > similarity index 100% >- > copy from new >- > copy to copyx >- > EOF >- applying patch from stdin >- >- $ hg tip -q >- 3:37bacb7ca14d >- >- $ if "$TESTDIR/hghave" -q execbit; then >- > test -f copy -a ! -x copy || echo bad >- > test -x copyx || echo bad >- > else >- > test -f copy || echo bad >- > fi >- >- $ cat copy >- a >- >- $ hg cat copy >- a >- >-Rename: >- >- $ hg import -d "1000000 0" -mrename - <<EOF >- > diff --git a/copy b/rename >- > similarity index 100% >- > rename from copy >- > rename to rename >- > EOF >- applying patch from stdin >- >- $ hg tip -q >- 4:47b81a94361d >- >- $ hg locate >- copyx >- empty >- new >- rename >- >-Delete: >- >- $ hg import -d "1000000 0" -mdelete - <<EOF >- > diff --git a/copyx b/copyx >- > deleted file mode 100755 >- > index 7898192..0000000 >- > --- a/copyx >- > +++ /dev/null >- > @@ -1 +0,0 @@ >- > -a >- > EOF >- applying patch from stdin >- >- $ hg tip -q >- 5:d9b001d98336 >- >- $ hg locate >- empty >- new >- rename >- >- $ test -f copyx >- [1] >- >-Regular diff: >- >- $ hg import -d "1000000 0" -mregular - <<EOF >- > diff --git a/rename b/rename >- > index 7898192..72e1fe3 100644 >- > --- a/rename >- > +++ b/rename >- > @@ -1 +1,5 @@ >- > a >- > +a >- > +a >- > +a >- > +a >- > EOF >- applying patch from stdin >- >- $ hg tip -q >- 6:ebe901e7576b >- >-Copy and modify: >- >- $ hg import -d "1000000 0" -mcopymod - <<EOF >- > diff --git a/rename b/copy2 >- > similarity index 80% >- > copy from rename >- > copy to copy2 >- > index 72e1fe3..b53c148 100644 >- > --- a/rename >- > +++ b/copy2 >- > @@ -1,5 +1,5 @@ >- > a >- > a >- > -a >- > +b >- > a >- > a >- > EOF >- applying patch from stdin >- >- $ hg tip -q >- 7:18f368958ecd >- >- $ hg cat copy2 >- a >- a >- b >- a >- a >- >-Rename and modify: >- >- $ hg import -d "1000000 0" -mrenamemod - <<EOF >- > diff --git a/copy2 b/rename2 >- > similarity index 80% >- > rename from copy2 >- > rename to rename2 >- > index b53c148..8f81e29 100644 >- > --- a/copy2 >- > +++ b/rename2 >- > @@ -1,5 +1,5 @@ >- > a >- > a >- > b >- > -a >- > +c >- > a >- > EOF >- applying patch from stdin >- >- $ hg tip -q >- 8:c32b0d7e6f44 >- >- $ hg locate copy2 >- [1] >- $ hg cat rename2 >- a >- a >- b >- c >- a >- >-One file renamed multiple times: >- >- $ hg import -d "1000000 0" -mmultirenames - <<EOF >- > diff --git a/rename2 b/rename3 >- > rename from rename2 >- > rename to rename3 >- > diff --git a/rename2 b/rename3-2 >- > rename from rename2 >- > rename to rename3-2 >- > EOF >- applying patch from stdin >- >- $ hg tip -q >- 9:034a6bf95330 >- >- $ hg log -vr. --template '{rev} {files} / {file_copies}\n' >- 9 rename2 rename3 rename3-2 / rename3 (rename2)rename3-2 (rename2) >- >- $ hg locate rename2 rename3 rename3-2 >- rename3 >- rename3-2 >- >- $ hg cat rename3 >- a >- a >- b >- c >- a >- >- $ hg cat rename3-2 >- a >- a >- b >- c >- a >- >- $ echo foo > foo >- $ hg add foo >- $ hg ci -m 'add foo' >- >-Binary files and regular patch hunks: >- >- $ hg import -d "1000000 0" -m binaryregular - <<EOF >- > diff --git a/binary b/binary >- > new file mode 100644 >- > index 0000000000000000000000000000000000000000..593f4708db84ac8fd0f5cc47c634f38c013fe9e4 >- > GIT binary patch >- > literal 4 >- > Lc\${NkU|;|M00aO5 >- > >- > diff --git a/foo b/foo2 >- > rename from foo >- > rename to foo2 >- > EOF >- applying patch from stdin >- >- $ hg tip -q >- 11:c39bce63e786 >- >- $ cat foo2 >- foo >- >- $ hg manifest --debug | grep binary >- 045c85ba38952325e126c70962cc0f9d9077bc67 644 binary >- >-Multiple binary files: >- >- $ hg import -d "1000000 0" -m multibinary - <<EOF >- > diff --git a/mbinary1 b/mbinary1 >- > new file mode 100644 >- > index 0000000000000000000000000000000000000000..593f4708db84ac8fd0f5cc47c634f38c013fe9e4 >- > GIT binary patch >- > literal 4 >- > Lc\${NkU|;|M00aO5 >- > >- > diff --git a/mbinary2 b/mbinary2 >- > new file mode 100644 >- > index 0000000000000000000000000000000000000000..112363ac1917b417ffbd7f376ca786a1e5fa7490 >- > GIT binary patch >- > literal 5 >- > Mc\${NkU|\`?^000jF3jhEB >- > >- > EOF >- applying patch from stdin >- >- $ hg tip -q >- 12:30b530085242 >- >- $ hg manifest --debug | grep mbinary >- 045c85ba38952325e126c70962cc0f9d9077bc67 644 mbinary1 >- a874b471193996e7cb034bb301cac7bdaf3e3f46 644 mbinary2 >- >-Filenames with spaces: >- >- $ hg import -d "1000000 0" -m spaces - <<EOF >- > diff --git a/foo bar b/foo bar >- > new file mode 100644 >- > index 0000000..257cc56 >- > --- /dev/null >- > +++ b/foo bar >- > @@ -0,0 +1 @@ >- > +foo >- > EOF >- applying patch from stdin >- >- $ hg tip -q >- 13:04750ef42fb3 >- >- $ cat "foo bar" >- foo >- >-Copy then modify the original file: >- >- $ hg import -d "1000000 0" -m copy-mod-orig - <<EOF >- > diff --git a/foo2 b/foo2 >- > index 257cc56..fe08ec6 100644 >- > --- a/foo2 >- > +++ b/foo2 >- > @@ -1 +1,2 @@ >- > foo >- > +new line >- > diff --git a/foo2 b/foo3 >- > similarity index 100% >- > copy from foo2 >- > copy to foo3 >- > EOF >- applying patch from stdin >- >- $ hg tip -q >- 14:c4cd9cdeaa74 >- >- $ cat foo3 >- foo >- >-Move text file and patch as binary >- >- $ echo a > text2 >- $ hg ci -Am0 >- adding text2 >- $ hg import -d "1000000 0" -m rename-as-binary - <<"EOF" >- > diff --git a/text2 b/binary2 >- > rename from text2 >- > rename to binary2 >- > index 78981922613b2afb6025042ff6bd878ac1994e85..10efcb362e9f3b3420fcfbfc0e37f3dc16e29757 >- > GIT binary patch >- > literal 5 >- > Mc$`b*O5$Pw00T?_*Z=?k >- > >- > EOF >- applying patch from stdin >- >- $ python $TESTDIR/printrepr.py < binary2 >- a >- b >- \x00 >- >- $ hg st --copies --change . >- A binary2 >- text2 >- R text2 >- $ cd .. >- >-Consecutive import with renames (issue2459) >- >- $ hg init issue2459 >- $ cd issue2459 >- $ hg import --no-commit --force - <<EOF >- > diff --git a/a b/a >- > new file mode 100644 >- > EOF >- applying patch from stdin >- $ hg import --no-commit --force - <<EOF >- > diff --git a/a b/b >- > rename from a >- > rename to b >- > EOF >- applying patch from stdin >- a has not been committed yet, so no copy data will be stored for b. >- $ hg debugstate >- a 0 -1 unset b >- $ hg ci -m done >- $ cd .. >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-extension.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-extension.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-extension.t.err >@@ -1,320 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > Test basic extension support > > $ "$TESTDIR/hghave" no-outer-repo || exit 80 >- >- $ cat > foobar.py <<EOF >- > import os >- > from mercurial import commands >- > >- > def uisetup(ui): >- > ui.write("uisetup called\\n") >- > >- > def reposetup(ui, repo): >- > ui.write("reposetup called for %s\\n" % os.path.basename(repo.root)) >- > ui.write("ui %s= repo.ui\\n" % (ui == repo.ui and "=" or "!")) >- > >- > def foo(ui, *args, **kwargs): >- > ui.write("Foo\\n") >- > >- > def bar(ui, *args, **kwargs): >- > ui.write("Bar\\n") >- > >- > cmdtable = { >- > "foo": (foo, [], "hg foo"), >- > "bar": (bar, [], "hg bar"), >- > } >- > >- > commands.norepo += ' bar' >- > EOF >- $ abspath=`pwd`/foobar.py >- >- $ mkdir barfoo >- $ cp foobar.py barfoo/__init__.py >- $ barfoopath=`pwd`/barfoo >- >- $ hg init a >- $ cd a >- $ echo foo > file >- $ hg add file >- $ hg commit -m 'add file' >- >- $ echo '[extensions]' >> $HGRCPATH >- $ echo "foobar = $abspath" >> $HGRCPATH >- $ hg foo >- uisetup called >- reposetup called for a >- ui == repo.ui >- Foo >- >- $ cd .. >- $ hg clone a b >- uisetup called >- reposetup called for a >- ui == repo.ui >- reposetup called for b >- ui == repo.ui >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >- $ hg bar >- uisetup called >- Bar >- $ echo 'foobar = !' >> $HGRCPATH >- >-module/__init__.py-style >- >- $ echo "barfoo = $barfoopath" >> $HGRCPATH >- $ cd a >- $ hg foo >- uisetup called >- reposetup called for a >- ui == repo.ui >- Foo >- $ echo 'barfoo = !' >> $HGRCPATH >- >-Check that extensions are loaded in phases: >- >- $ cat > foo.py <<EOF >- > import os >- > name = os.path.basename(__file__).rsplit('.', 1)[0] >- > print "1) %s imported" % name >- > def uisetup(ui): >- > print "2) %s uisetup" % name >- > def extsetup(): >- > print "3) %s extsetup" % name >- > def reposetup(ui, repo): >- > print "4) %s reposetup" % name >- > EOF >- >- $ cp foo.py bar.py >- $ echo 'foo = foo.py' >> $HGRCPATH >- $ echo 'bar = bar.py' >> $HGRCPATH >- >-Command with no output, we just want to see the extensions loaded: >- >- $ hg paths >- 1) foo imported >- 1) bar imported >- 2) foo uisetup >- 2) bar uisetup >- 3) foo extsetup >- 3) bar extsetup >- 4) foo reposetup >- 4) bar reposetup >- >-Check hgweb's load order: >- >- $ cat > hgweb.cgi <<EOF >- > #!/usr/bin/env python >- > from mercurial import demandimport; demandimport.enable() >- > from mercurial.hgweb import hgweb >- > from mercurial.hgweb import wsgicgi >- > >- > application = hgweb('.', 'test repo') >- > wsgicgi.launch(application) >- > EOF >- >- $ SCRIPT_NAME='/' SERVER_PORT='80' SERVER_NAME='localhost' python hgweb.cgi \ >- > | grep '^[0-9]) ' # ignores HTML output >- 1) foo imported >- 1) bar imported >- 2) foo uisetup >- 2) bar uisetup >- 3) foo extsetup >- 3) bar extsetup >- 4) foo reposetup >- 4) bar reposetup >- 4) foo reposetup >- 4) bar reposetup >- >- $ echo 'foo = !' >> $HGRCPATH >- $ echo 'bar = !' >> $HGRCPATH >- >- $ cd .. >- >- $ cat > empty.py <<EOF >- > '''empty cmdtable >- > ''' >- > cmdtable = {} >- > EOF >- $ emptypath=`pwd`/empty.py >- $ echo "empty = $emptypath" >> $HGRCPATH >- $ hg help empty >- empty extension - empty cmdtable >- >- no commands defined >- >- $ echo 'empty = !' >> $HGRCPATH >- >- $ cat > debugextension.py <<EOF >- > '''only debugcommands >- > ''' >- > def debugfoobar(ui, repo, *args, **opts): >- > "yet another debug command" >- > pass >- > >- > def foo(ui, repo, *args, **opts): >- > """yet another foo command >- > >- > This command has been DEPRECATED since forever. >- > """ >- > pass >- > >- > cmdtable = { >- > "debugfoobar": (debugfoobar, (), "hg debugfoobar"), >- > "foo": (foo, (), "hg foo") >- > } >- > EOF >- $ debugpath=`pwd`/debugextension.py >- $ echo "debugextension = $debugpath" >> $HGRCPATH >- >- $ hg help debugextension >- debugextension extension - only debugcommands >- >- no commands defined >- >- $ hg --verbose help debugextension >- debugextension extension - only debugcommands >- >- list of commands: >- >- foo: >- yet another foo command >- >- global options: >- -R --repository REPO repository root directory or name of overlay bundle >- file >- --cwd DIR change working directory >- -y --noninteractive do not prompt, assume 'yes' for any required answers >- -q --quiet suppress output >- -v --verbose enable additional output >- --config CONFIG [+] set/override config option (use 'section.name=value') >- --debug enable debugging output >- --debugger start debugger >- --encoding ENCODE set the charset encoding (default: ascii) >- --encodingmode MODE set the charset encoding mode (default: strict) >- --traceback always print a traceback on exception >- --time time how long the command takes >- --profile print command execution profile >- --version output version information and exit >- -h --help display help and exit >- >- [+] marked option can be specified multiple times >- >- $ hg --debug help debugextension >- debugextension extension - only debugcommands >- >- list of commands: >- >- debugfoobar: >- yet another debug command >- foo: >- yet another foo command >- >- global options: >- -R --repository REPO repository root directory or name of overlay bundle >- file >- --cwd DIR change working directory >- -y --noninteractive do not prompt, assume 'yes' for any required answers >- -q --quiet suppress output >- -v --verbose enable additional output >- --config CONFIG [+] set/override config option (use 'section.name=value') >- --debug enable debugging output >- --debugger start debugger >- --encoding ENCODE set the charset encoding (default: ascii) >- --encodingmode MODE set the charset encoding mode (default: strict) >- --traceback always print a traceback on exception >- --time time how long the command takes >- --profile print command execution profile >- --version output version information and exit >- -h --help display help and exit >- >- [+] marked option can be specified multiple times >- $ echo 'debugextension = !' >> $HGRCPATH >- >-Issue811: Problem loading extensions twice (by site and by user) >- >- $ debugpath=`pwd`/debugissue811.py >- $ cat > debugissue811.py <<EOF >- > '''show all loaded extensions >- > ''' >- > from mercurial import extensions, commands >- > >- > def debugextensions(ui): >- > "yet another debug command" >- > ui.write("%s\n" % '\n'.join([x for x, y in extensions.extensions()])) >- > >- > cmdtable = {"debugextensions": (debugextensions, (), "hg debugextensions")} >- > commands.norepo += " debugextensions" >- > EOF >- $ echo "debugissue811 = $debugpath" >> $HGRCPATH >- $ echo "mq=" >> $HGRCPATH >- $ echo "hgext.mq=" >> $HGRCPATH >- $ echo "hgext/mq=" >> $HGRCPATH >- >-Show extensions: >- >- $ hg debugextensions >- debugissue811 >- mq >- >-Disabled extension commands: >- >- $ HGRCPATH= >- $ export HGRCPATH >- $ hg help email >- 'email' is provided by the following extension: >- >- patchbomb command to send changesets as (a series of) patch emails >- >- use "hg help extensions" for information on enabling extensions >- $ hg qdel >- hg: unknown command 'qdel' >- 'qdelete' is provided by the following extension: >- >- mq manage a stack of patches >- >- use "hg help extensions" for information on enabling extensions >- [255] >- $ hg churn >- hg: unknown command 'churn' >- 'churn' is provided by the following extension: >- >- churn command to display statistics about repository history >- >- use "hg help extensions" for information on enabling extensions >- [255] >- >-Disabled extensions: >- >- $ hg help churn >- churn extension - command to display statistics about repository history >- >- use "hg help extensions" for information on enabling extensions >- $ hg help patchbomb >- patchbomb extension - command to send changesets as (a series of) patch emails >- >- use "hg help extensions" for information on enabling extensions >- >-Broken disabled extension and command: >- >- $ mkdir hgext >- $ echo > hgext/__init__.py >- $ cat > hgext/broken.py <<EOF >- > "broken extension' >- > EOF >- $ cat > path.py <<EOF >- > import os, sys >- > sys.path.insert(0, os.environ['HGEXTPATH']) >- > EOF >- $ HGEXTPATH=`pwd` >- $ export HGEXTPATH >- >- $ hg --config extensions.path=./path.py help broken >- broken extension - (no help text available) >- >- use "hg help extensions" for information on enabling extensions >- >- $ hg --config extensions.path=./path.py help foo > /dev/null >- hg: unknown command 'foo' >- [255] >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-globalopts.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-globalopts.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-globalopts.t.err >@@ -1,429 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ "$TESTDIR/hghave" no-outer-repo || exit 80 >- >- $ hg init a >- $ cd a >- $ echo a > a >- $ hg ci -A -d'1 0' -m a >- adding a >- >- $ cd .. >- >- $ hg init b >- $ cd b >- $ echo b > b >- $ hg ci -A -d'1 0' -m b >- adding b >- >- $ cd .. >- >- $ hg clone a c >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ cd c >- $ cat >> .hg/hgrc <<EOF >- > [paths] >- > relative = ../a >- > EOF >- $ hg pull -f ../b >- pulling from ../b >- searching for changes >- warning: repository is unrelated >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files (+1 heads) >- (run 'hg heads' to see heads, 'hg merge' to merge) >- $ hg merge >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- >- $ cd .. >- >-Testing -R/--repository: >- >- $ hg -R a tip >- changeset: 0:8580ff50825a >- tag: tip >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: a >- >- $ hg --repository b tip >- changeset: 0:b6c483daf290 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: b >- >- >--R with a URL: >- >- $ hg -R file:a identify >- 8580ff50825a tip >- $ hg -R file://localhost/`pwd`/a/ identify >- 8580ff50825a tip >- >--R with path aliases: >- >- $ cd c >- $ hg -R default identify >- 8580ff50825a tip >- $ hg -R relative identify >- 8580ff50825a tip >- $ echo '[paths]' >> $HGRCPATH >- $ echo 'relativetohome = a' >> $HGRCPATH >- $ HOME=`pwd`/../ hg -R relativetohome identify >- 8580ff50825a tip >- $ cd .. >- >-Implicit -R: >- >- $ hg ann a/a >- 0: a >- $ hg ann a/a a/a >- 0: a >- $ hg ann a/a b/b >- abort: There is no Mercurial repository here (.hg not found)! >- [255] >- $ hg -R b ann a/a >- abort: a/a not under root >- [255] >- $ hg log >- abort: There is no Mercurial repository here (.hg not found)! >- [255] >- >-Abbreviation of long option: >- >- $ hg --repo c tip >- changeset: 1:b6c483daf290 >- tag: tip >- parent: -1:000000000000 >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: b >- >- >-earlygetopt with duplicate options (36d23de02da1): >- >- $ hg --cwd a --cwd b --cwd c tip >- changeset: 1:b6c483daf290 >- tag: tip >- parent: -1:000000000000 >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: b >- >- $ hg --repo c --repository b -R a tip >- changeset: 0:8580ff50825a >- tag: tip >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: a >- >- >-earlygetopt short option without following space: >- >- $ hg -q -Rb tip >- 0:b6c483daf290 >- >-earlygetopt with illegal abbreviations: >- >- $ hg --confi "foo.bar=baz" >- abort: option --config may not be abbreviated! >- [255] >- $ hg --cw a tip >- abort: option --cwd may not be abbreviated! >- [255] >- $ hg --rep a tip >- abort: Option -R has to be separated from other options (e.g. not -qR) and --repository may only be abbreviated as --repo! >- [255] >- $ hg --repositor a tip >- abort: Option -R has to be separated from other options (e.g. not -qR) and --repository may only be abbreviated as --repo! >- [255] >- $ hg -qR a tip >- abort: Option -R has to be separated from other options (e.g. not -qR) and --repository may only be abbreviated as --repo! >- [255] >- $ hg -qRa tip >- abort: Option -R has to be separated from other options (e.g. not -qR) and --repository may only be abbreviated as --repo! >- [255] >- >-Testing --cwd: >- >- $ hg --cwd a parents >- changeset: 0:8580ff50825a >- tag: tip >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: a >- >- >-Testing -y/--noninteractive - just be sure it is parsed: >- >- $ hg --cwd a tip -q --noninteractive >- 0:8580ff50825a >- $ hg --cwd a tip -q -y >- 0:8580ff50825a >- >-Testing -q/--quiet: >- >- $ hg -R a -q tip >- 0:8580ff50825a >- $ hg -R b -q tip >- 0:b6c483daf290 >- $ hg -R c --quiet parents >- 0:8580ff50825a >- 1:b6c483daf290 >- >-Testing -v/--verbose: >- >- $ hg --cwd c head -v >- changeset: 1:b6c483daf290 >- tag: tip >- parent: -1:000000000000 >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- files: b >- description: >- b >- >- >- changeset: 0:8580ff50825a >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- files: a >- description: >- a >- >- >- $ hg --cwd b tip --verbose >- changeset: 0:b6c483daf290 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- files: b >- description: >- b >- >- >- >-Testing --config: >- >- $ hg --cwd c --config paths.quuxfoo=bar paths | grep quuxfoo > /dev/null && echo quuxfoo >- quuxfoo >- $ hg --cwd c --config '' tip -q >- abort: malformed --config option: '' (use --config section.name=value) >- [255] >- $ hg --cwd c --config a.b tip -q >- abort: malformed --config option: 'a.b' (use --config section.name=value) >- [255] >- $ hg --cwd c --config a tip -q >- abort: malformed --config option: 'a' (use --config section.name=value) >- [255] >- $ hg --cwd c --config a.= tip -q >- abort: malformed --config option: 'a.=' (use --config section.name=value) >- [255] >- $ hg --cwd c --config .b= tip -q >- abort: malformed --config option: '.b=' (use --config section.name=value) >- [255] >- >-Testing --debug: >- >- $ hg --cwd c log --debug >- changeset: 1:b6c483daf2907ce5825c0bb50f5716226281cc1a >- tag: tip >- parent: -1:0000000000000000000000000000000000000000 >- parent: -1:0000000000000000000000000000000000000000 >- manifest: 1:23226e7a252cacdc2d99e4fbdc3653441056de49 >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- files+: b >- extra: branch=default >- description: >- b >- >- >- changeset: 0:8580ff50825a50c8f716709acdf8de0deddcd6ab >- parent: -1:0000000000000000000000000000000000000000 >- parent: -1:0000000000000000000000000000000000000000 >- manifest: 0:a0c8bcbbb45c63b90b70ad007bf38961f64f2af0 >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- files+: a >- extra: branch=default >- description: >- a >- >- >- >-Testing --traceback: >- >- $ hg --cwd c --config x --traceback id 2>&1 | grep -i 'traceback' >- Traceback (most recent call last): >- >-Testing --time: >- >- $ hg --cwd a --time id >- 8580ff50825a tip >- Time: real * (glob) >- >-Testing --version: >- >- $ hg --version -q >- Mercurial Distributed SCM * (glob) >- >-Testing -h/--help: >- >- $ hg -h >- Mercurial Distributed SCM >- >- list of commands: >- >- add add the specified files on the next commit >- addremove add all new files, delete all missing files >- annotate show changeset information by line for each file >- archive create an unversioned archive of a repository revision >- backout reverse effect of earlier changeset >- bisect subdivision search of changesets >- branch set or show the current branch name >- branches list repository named branches >- bundle create a changegroup file >- cat output the current or given revision of files >- clone make a copy of an existing repository >- commit commit the specified files or all outstanding changes >- copy mark files as copied for the next commit >- diff diff repository (or selected files) >- export dump the header and diffs for one or more changesets >- forget forget the specified files on the next commit >- grep search for a pattern in specified files and revisions >- heads show current repository heads or show branch heads >- help show help for a given topic or a help overview >- identify identify the working copy or specified revision >- import import an ordered set of patches >- incoming show new changesets found in source >- init create a new repository in the given directory >- locate locate files matching specific patterns >- log show revision history of entire repository or files >- manifest output the current or given revision of the project manifest >- merge merge working directory with another revision >- outgoing show changesets not found in the destination >- parents show the parents of the working directory or revision >- paths show aliases for remote repositories >- pull pull changes from the specified source >- push push changes to the specified destination >- recover roll back an interrupted transaction >- remove remove the specified files on the next commit >- rename rename files; equivalent of copy + remove >- resolve redo merges or set/view the merge status of files >- revert restore individual files or directories to an earlier state >- rollback roll back the last transaction (dangerous) >- root print the root (top) of the current working directory >- serve start stand-alone webserver >- showconfig show combined config settings from all hgrc files >- status show changed files in the working directory >- summary summarize working directory state >- tag add one or more tags for the current or given revision >- tags list repository tags >- tip show the tip revision >- unbundle apply one or more changegroup files >- update update working directory (or switch revisions) >- verify verify the integrity of the repository >- version output version and copyright information >- >- additional help topics: >- >- config Configuration Files >- dates Date Formats >- patterns File Name Patterns >- environment Environment Variables >- revisions Specifying Single Revisions >- multirevs Specifying Multiple Revisions >- revsets Specifying Revision Sets >- diffs Diff Formats >- merge-tools Merge Tools >- templating Template Usage >- urls URL Paths >- extensions Using additional features >- subrepos Subrepositories >- hgweb Configuring hgweb >- glossary Glossary >- >- use "hg -v help" to show aliases and global options >- >- $ hg --help >- Mercurial Distributed SCM >- >- list of commands: >- >- add add the specified files on the next commit >- addremove add all new files, delete all missing files >- annotate show changeset information by line for each file >- archive create an unversioned archive of a repository revision >- backout reverse effect of earlier changeset >- bisect subdivision search of changesets >- branch set or show the current branch name >- branches list repository named branches >- bundle create a changegroup file >- cat output the current or given revision of files >- clone make a copy of an existing repository >- commit commit the specified files or all outstanding changes >- copy mark files as copied for the next commit >- diff diff repository (or selected files) >- export dump the header and diffs for one or more changesets >- forget forget the specified files on the next commit >- grep search for a pattern in specified files and revisions >- heads show current repository heads or show branch heads >- help show help for a given topic or a help overview >- identify identify the working copy or specified revision >- import import an ordered set of patches >- incoming show new changesets found in source >- init create a new repository in the given directory >- locate locate files matching specific patterns >- log show revision history of entire repository or files >- manifest output the current or given revision of the project manifest >- merge merge working directory with another revision >- outgoing show changesets not found in the destination >- parents show the parents of the working directory or revision >- paths show aliases for remote repositories >- pull pull changes from the specified source >- push push changes to the specified destination >- recover roll back an interrupted transaction >- remove remove the specified files on the next commit >- rename rename files; equivalent of copy + remove >- resolve redo merges or set/view the merge status of files >- revert restore individual files or directories to an earlier state >- rollback roll back the last transaction (dangerous) >- root print the root (top) of the current working directory >- serve start stand-alone webserver >- showconfig show combined config settings from all hgrc files >- status show changed files in the working directory >- summary summarize working directory state >- tag add one or more tags for the current or given revision >- tags list repository tags >- tip show the tip revision >- unbundle apply one or more changegroup files >- update update working directory (or switch revisions) >- verify verify the integrity of the repository >- version output version and copyright information >- >- additional help topics: >- >- config Configuration Files >- dates Date Formats >- patterns File Name Patterns >- environment Environment Variables >- revisions Specifying Single Revisions >- multirevs Specifying Multiple Revisions >- revsets Specifying Revision Sets >- diffs Diff Formats >- merge-tools Merge Tools >- templating Template Usage >- urls URL Paths >- extensions Using additional features >- subrepos Subrepositories >- hgweb Configuring hgweb >- glossary Glossary >- >- use "hg -v help" to show aliases and global options >- >-Not tested: --debugger >- >!. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-glog.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-glog.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-glog.t.err >@@ -1,3 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > @ (34) head > | > | o (33) head >@@ -70,820 +72,3 @@ > > > $ "$TESTDIR/hghave" no-outer-repo || exit 80 >- >- $ commit() >- > { >- > rev=$1 >- > msg=$2 >- > shift 2 >- > if [ "$#" -gt 0 ]; then >- > hg debugsetparents "$@" >- > fi >- > echo $rev > a >- > hg commit -Aqd "$rev 0" -m "($rev) $msg" >- > } >- >- $ echo "[extensions]" >> $HGRCPATH >- $ echo "graphlog=" >> $HGRCPATH >- >- $ hg init repo >- $ cd repo >- >-Empty repo: >- >- $ hg glog >- >- >-Building DAG: >- >- $ commit 0 "root" >- $ commit 1 "collapse" 0 >- $ commit 2 "collapse" 1 >- $ commit 3 "collapse" 2 >- $ commit 4 "merge two known; one immediate left, one immediate right" 1 3 >- $ commit 5 "expand" 3 4 >- $ commit 6 "merge two known; one immediate left, one far left" 2 5 >- $ commit 7 "expand" 2 5 >- $ commit 8 "merge two known; one immediate left, one far right" 0 7 >- $ commit 9 "expand" 7 8 >- $ commit 10 "merge two known; one immediate left, one near right" 0 6 >- $ commit 11 "expand" 6 10 >- $ commit 12 "merge two known; one immediate right, one far left" 1 9 >- $ commit 13 "expand" 9 11 >- $ commit 14 "merge two known; one immediate right, one far right" 0 12 >- $ commit 15 "expand" 13 14 >- $ commit 16 "merge two known; one immediate right, one near right" 0 1 >- $ commit 17 "expand" 12 16 >- $ commit 18 "merge two known; two far left" 1 15 >- $ commit 19 "expand" 15 17 >- $ commit 20 "merge two known; two far right" 0 18 >- $ commit 21 "expand" 19 20 >- $ commit 22 "merge two known; one far left, one far right" 18 21 >- $ commit 23 "merge one known; immediate left" 1 22 >- $ commit 24 "merge one known; immediate right" 0 23 >- $ commit 25 "merge one known; far left" 21 24 >- $ commit 26 "merge one known; far right" 18 25 >- $ commit 27 "collapse" 21 >- $ commit 28 "merge zero known" 1 26 >- $ commit 29 "regular commit" 0 >- $ commit 30 "expand" 28 29 >- $ commit 31 "expand" 21 30 >- $ commit 32 "expand" 27 31 >- $ commit 33 "head" 18 >- $ commit 34 "head" 32 >- >- >- $ hg glog -q >- @ 34:fea3ac5810e0 >- | >- | o 33:68608f5145f9 >- | | >- o | 32:d06dffa21a31 >- |\ \ >- | o \ 31:621d83e11f67 >- | |\ \ >- | | o \ 30:6e11cd4b648f >- | | |\ \ >- | | | o | 29:cd9bb2be7593 >- | | | | | >- | | o | | 28:44ecd0b9ae99 >- | | |\ \ \ >- o | | | | | 27:886ed638191b >- |/ / / / / >- | | o---+ 26:7f25b6c2f0b9 >- | | | | | >- +---o | | 25:91da8ed57247 >- | | | | | >- | | o | | 24:a9c19a3d96b7 >- | | |\| | >- | | o | | 23:a01cddf0766d >- | |/| | | >- +---o---+ 22:e0d9cccacb5d >- | | / / >- o | | | 21:d42a756af44d >- |\ \ \ \ >- | o---+-+ 20:d30ed6450e32 >- | / / / >- o | | | 19:31ddc2c1573b >- |\ \ \ \ >- +---+---o 18:1aa84d96232a >- | | | | >- | o | | 17:44765d7c06e0 >- | |\ \ \ >- | | o---+ 16:3677d192927d >- | | |/ / >- o | | | 15:1dda3f72782d >- |\ \ \ \ >- | o-----+ 14:8eac370358ef >- | |/ / / >- o | | | 13:22d8966a97e3 >- |\ \ \ \ >- +---o | | 12:86b91144a6e9 >- | | |/ / >- | o | | 11:832d76e6bdf2 >- | |\ \ \ >- | | o---+ 10:74c64d036d72 >- | |/ / / >- o | | | 9:7010c0af0a35 >- |\ \ \ \ >- | o-----+ 8:7a0b11f71937 >- |/ / / / >- o | | | 7:b632bb1b1224 >- |\ \ \ \ >- +---o | | 6:b105a072e251 >- | |/ / / >- | o | | 5:4409d547b708 >- | |\ \ \ >- | | o | | 4:26a8bac39d9f >- | |/|/ / >- | o / / 3:27eef8ed80b4 >- |/ / / >- o / / 2:3d9a33b8d1e1 >- |/ / >- o / 1:6db2ef61d156 >- |/ >- o 0:e6eb3150255d >- >- >- $ hg glog >- @ changeset: 34:fea3ac5810e0 >- | tag: tip >- | parent: 32:d06dffa21a31 >- | user: test >- | date: Thu Jan 01 00:00:34 1970 +0000 >- | summary: (34) head >- | >- | o changeset: 33:68608f5145f9 >- | | parent: 18:1aa84d96232a >- | | user: test >- | | date: Thu Jan 01 00:00:33 1970 +0000 >- | | summary: (33) head >- | | >- o | changeset: 32:d06dffa21a31 >- |\ \ parent: 27:886ed638191b >- | | | parent: 31:621d83e11f67 >- | | | user: test >- | | | date: Thu Jan 01 00:00:32 1970 +0000 >- | | | summary: (32) expand >- | | | >- | o | changeset: 31:621d83e11f67 >- | |\ \ parent: 21:d42a756af44d >- | | | | parent: 30:6e11cd4b648f >- | | | | user: test >- | | | | date: Thu Jan 01 00:00:31 1970 +0000 >- | | | | summary: (31) expand >- | | | | >- | | o | changeset: 30:6e11cd4b648f >- | | |\ \ parent: 28:44ecd0b9ae99 >- | | | | | parent: 29:cd9bb2be7593 >- | | | | | user: test >- | | | | | date: Thu Jan 01 00:00:30 1970 +0000 >- | | | | | summary: (30) expand >- | | | | | >- | | | o | changeset: 29:cd9bb2be7593 >- | | | | | parent: 0:e6eb3150255d >- | | | | | user: test >- | | | | | date: Thu Jan 01 00:00:29 1970 +0000 >- | | | | | summary: (29) regular commit >- | | | | | >- | | o | | changeset: 28:44ecd0b9ae99 >- | | |\ \ \ parent: 1:6db2ef61d156 >- | | | | | | parent: 26:7f25b6c2f0b9 >- | | | | | | user: test >- | | | | | | date: Thu Jan 01 00:00:28 1970 +0000 >- | | | | | | summary: (28) merge zero known >- | | | | | | >- o | | | | | changeset: 27:886ed638191b >- |/ / / / / parent: 21:d42a756af44d >- | | | | | user: test >- | | | | | date: Thu Jan 01 00:00:27 1970 +0000 >- | | | | | summary: (27) collapse >- | | | | | >- | | o---+ changeset: 26:7f25b6c2f0b9 >- | | | | | parent: 18:1aa84d96232a >- | | | | | parent: 25:91da8ed57247 >- | | | | | user: test >- | | | | | date: Thu Jan 01 00:00:26 1970 +0000 >- | | | | | summary: (26) merge one known; far right >- | | | | | >- +---o | | changeset: 25:91da8ed57247 >- | | | | | parent: 21:d42a756af44d >- | | | | | parent: 24:a9c19a3d96b7 >- | | | | | user: test >- | | | | | date: Thu Jan 01 00:00:25 1970 +0000 >- | | | | | summary: (25) merge one known; far left >- | | | | | >- | | o | | changeset: 24:a9c19a3d96b7 >- | | |\| | parent: 0:e6eb3150255d >- | | | | | parent: 23:a01cddf0766d >- | | | | | user: test >- | | | | | date: Thu Jan 01 00:00:24 1970 +0000 >- | | | | | summary: (24) merge one known; immediate right >- | | | | | >- | | o | | changeset: 23:a01cddf0766d >- | |/| | | parent: 1:6db2ef61d156 >- | | | | | parent: 22:e0d9cccacb5d >- | | | | | user: test >- | | | | | date: Thu Jan 01 00:00:23 1970 +0000 >- | | | | | summary: (23) merge one known; immediate left >- | | | | | >- +---o---+ changeset: 22:e0d9cccacb5d >- | | | | parent: 18:1aa84d96232a >- | | / / parent: 21:d42a756af44d >- | | | | user: test >- | | | | date: Thu Jan 01 00:00:22 1970 +0000 >- | | | | summary: (22) merge two known; one far left, one far right >- | | | | >- o | | | changeset: 21:d42a756af44d >- |\ \ \ \ parent: 19:31ddc2c1573b >- | | | | | parent: 20:d30ed6450e32 >- | | | | | user: test >- | | | | | date: Thu Jan 01 00:00:21 1970 +0000 >- | | | | | summary: (21) expand >- | | | | | >- | o---+-+ changeset: 20:d30ed6450e32 >- | | | | parent: 0:e6eb3150255d >- | / / / parent: 18:1aa84d96232a >- | | | | user: test >- | | | | date: Thu Jan 01 00:00:20 1970 +0000 >- | | | | summary: (20) merge two known; two far right >- | | | | >- o | | | changeset: 19:31ddc2c1573b >- |\ \ \ \ parent: 15:1dda3f72782d >- | | | | | parent: 17:44765d7c06e0 >- | | | | | user: test >- | | | | | date: Thu Jan 01 00:00:19 1970 +0000 >- | | | | | summary: (19) expand >- | | | | | >- +---+---o changeset: 18:1aa84d96232a >- | | | | parent: 1:6db2ef61d156 >- | | | | parent: 15:1dda3f72782d >- | | | | user: test >- | | | | date: Thu Jan 01 00:00:18 1970 +0000 >- | | | | summary: (18) merge two known; two far left >- | | | | >- | o | | changeset: 17:44765d7c06e0 >- | |\ \ \ parent: 12:86b91144a6e9 >- | | | | | parent: 16:3677d192927d >- | | | | | user: test >- | | | | | date: Thu Jan 01 00:00:17 1970 +0000 >- | | | | | summary: (17) expand >- | | | | | >- | | o---+ changeset: 16:3677d192927d >- | | | | | parent: 0:e6eb3150255d >- | | |/ / parent: 1:6db2ef61d156 >- | | | | user: test >- | | | | date: Thu Jan 01 00:00:16 1970 +0000 >- | | | | summary: (16) merge two known; one immediate right, one near right >- | | | | >- o | | | changeset: 15:1dda3f72782d >- |\ \ \ \ parent: 13:22d8966a97e3 >- | | | | | parent: 14:8eac370358ef >- | | | | | user: test >- | | | | | date: Thu Jan 01 00:00:15 1970 +0000 >- | | | | | summary: (15) expand >- | | | | | >- | o-----+ changeset: 14:8eac370358ef >- | | | | | parent: 0:e6eb3150255d >- | |/ / / parent: 12:86b91144a6e9 >- | | | | user: test >- | | | | date: Thu Jan 01 00:00:14 1970 +0000 >- | | | | summary: (14) merge two known; one immediate right, one far right >- | | | | >- o | | | changeset: 13:22d8966a97e3 >- |\ \ \ \ parent: 9:7010c0af0a35 >- | | | | | parent: 11:832d76e6bdf2 >- | | | | | user: test >- | | | | | date: Thu Jan 01 00:00:13 1970 +0000 >- | | | | | summary: (13) expand >- | | | | | >- +---o | | changeset: 12:86b91144a6e9 >- | | |/ / parent: 1:6db2ef61d156 >- | | | | parent: 9:7010c0af0a35 >- | | | | user: test >- | | | | date: Thu Jan 01 00:00:12 1970 +0000 >- | | | | summary: (12) merge two known; one immediate right, one far left >- | | | | >- | o | | changeset: 11:832d76e6bdf2 >- | |\ \ \ parent: 6:b105a072e251 >- | | | | | parent: 10:74c64d036d72 >- | | | | | user: test >- | | | | | date: Thu Jan 01 00:00:11 1970 +0000 >- | | | | | summary: (11) expand >- | | | | | >- | | o---+ changeset: 10:74c64d036d72 >- | | | | | parent: 0:e6eb3150255d >- | |/ / / parent: 6:b105a072e251 >- | | | | user: test >- | | | | date: Thu Jan 01 00:00:10 1970 +0000 >- | | | | summary: (10) merge two known; one immediate left, one near right >- | | | | >- o | | | changeset: 9:7010c0af0a35 >- |\ \ \ \ parent: 7:b632bb1b1224 >- | | | | | parent: 8:7a0b11f71937 >- | | | | | user: test >- | | | | | date: Thu Jan 01 00:00:09 1970 +0000 >- | | | | | summary: (9) expand >- | | | | | >- | o-----+ changeset: 8:7a0b11f71937 >- | | | | | parent: 0:e6eb3150255d >- |/ / / / parent: 7:b632bb1b1224 >- | | | | user: test >- | | | | date: Thu Jan 01 00:00:08 1970 +0000 >- | | | | summary: (8) merge two known; one immediate left, one far right >- | | | | >- o | | | changeset: 7:b632bb1b1224 >- |\ \ \ \ parent: 2:3d9a33b8d1e1 >- | | | | | parent: 5:4409d547b708 >- | | | | | user: test >- | | | | | date: Thu Jan 01 00:00:07 1970 +0000 >- | | | | | summary: (7) expand >- | | | | | >- +---o | | changeset: 6:b105a072e251 >- | |/ / / parent: 2:3d9a33b8d1e1 >- | | | | parent: 5:4409d547b708 >- | | | | user: test >- | | | | date: Thu Jan 01 00:00:06 1970 +0000 >- | | | | summary: (6) merge two known; one immediate left, one far left >- | | | | >- | o | | changeset: 5:4409d547b708 >- | |\ \ \ parent: 3:27eef8ed80b4 >- | | | | | parent: 4:26a8bac39d9f >- | | | | | user: test >- | | | | | date: Thu Jan 01 00:00:05 1970 +0000 >- | | | | | summary: (5) expand >- | | | | | >- | | o | | changeset: 4:26a8bac39d9f >- | |/|/ / parent: 1:6db2ef61d156 >- | | | | parent: 3:27eef8ed80b4 >- | | | | user: test >- | | | | date: Thu Jan 01 00:00:04 1970 +0000 >- | | | | summary: (4) merge two known; one immediate left, one immediate right >- | | | | >- | o | | changeset: 3:27eef8ed80b4 >- |/ / / user: test >- | | | date: Thu Jan 01 00:00:03 1970 +0000 >- | | | summary: (3) collapse >- | | | >- o | | changeset: 2:3d9a33b8d1e1 >- |/ / user: test >- | | date: Thu Jan 01 00:00:02 1970 +0000 >- | | summary: (2) collapse >- | | >- o | changeset: 1:6db2ef61d156 >- |/ user: test >- | date: Thu Jan 01 00:00:01 1970 +0000 >- | summary: (1) collapse >- | >- o changeset: 0:e6eb3150255d >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: (0) root >- >- >-File glog: >- $ hg glog a >- @ changeset: 34:fea3ac5810e0 >- | tag: tip >- | parent: 32:d06dffa21a31 >- | user: test >- | date: Thu Jan 01 00:00:34 1970 +0000 >- | summary: (34) head >- | >- | o changeset: 33:68608f5145f9 >- | | parent: 18:1aa84d96232a >- | | user: test >- | | date: Thu Jan 01 00:00:33 1970 +0000 >- | | summary: (33) head >- | | >- o | changeset: 32:d06dffa21a31 >- |\ \ parent: 27:886ed638191b >- | | | parent: 31:621d83e11f67 >- | | | user: test >- | | | date: Thu Jan 01 00:00:32 1970 +0000 >- | | | summary: (32) expand >- | | | >- | o | changeset: 31:621d83e11f67 >- | | | parent: 21:d42a756af44d >- | | | parent: 30:6e11cd4b648f >- | | | user: test >- | | | date: Thu Jan 01 00:00:31 1970 +0000 >- | | | summary: (31) expand >- | | | >- | o | changeset: 30:6e11cd4b648f >- | |\ \ parent: 28:44ecd0b9ae99 >- | | | | parent: 29:cd9bb2be7593 >- | | | | user: test >- | | | | date: Thu Jan 01 00:00:30 1970 +0000 >- | | | | summary: (30) expand >- | | | | >- | | o | changeset: 29:cd9bb2be7593 >- | | | | parent: 0:e6eb3150255d >- | | | | user: test >- | | | | date: Thu Jan 01 00:00:29 1970 +0000 >- | | | | summary: (29) regular commit >- | | | | >- | o | | changeset: 28:44ecd0b9ae99 >- | | | | parent: 1:6db2ef61d156 >- | | | | parent: 26:7f25b6c2f0b9 >- | | | | user: test >- | | | | date: Thu Jan 01 00:00:28 1970 +0000 >- | | | | summary: (28) merge zero known >- | | | | >- o | | | changeset: 27:886ed638191b >- | | | | parent: 21:d42a756af44d >- | | | | user: test >- | | | | date: Thu Jan 01 00:00:27 1970 +0000 >- | | | | summary: (27) collapse >- | | | | >- | o | | changeset: 26:7f25b6c2f0b9 >- | | | | parent: 18:1aa84d96232a >- | | | | parent: 25:91da8ed57247 >- | | | | user: test >- | | | | date: Thu Jan 01 00:00:26 1970 +0000 >- | | | | summary: (26) merge one known; far right >- | | | | >- | o | | changeset: 25:91da8ed57247 >- | | | | parent: 21:d42a756af44d >- | | | | parent: 24:a9c19a3d96b7 >- | | | | user: test >- | | | | date: Thu Jan 01 00:00:25 1970 +0000 >- | | | | summary: (25) merge one known; far left >- | | | | >- | o | | changeset: 24:a9c19a3d96b7 >- | | | | parent: 0:e6eb3150255d >- | | | | parent: 23:a01cddf0766d >- | | | | user: test >- | | | | date: Thu Jan 01 00:00:24 1970 +0000 >- | | | | summary: (24) merge one known; immediate right >- | | | | >- | o | | changeset: 23:a01cddf0766d >- | | | | parent: 1:6db2ef61d156 >- | | | | parent: 22:e0d9cccacb5d >- | | | | user: test >- | | | | date: Thu Jan 01 00:00:23 1970 +0000 >- | | | | summary: (23) merge one known; immediate left >- | | | | >- | o | | changeset: 22:e0d9cccacb5d >- |/ / / parent: 18:1aa84d96232a >- | | | parent: 21:d42a756af44d >- | | | user: test >- | | | date: Thu Jan 01 00:00:22 1970 +0000 >- | | | summary: (22) merge two known; one far left, one far right >- | | | >- o | | changeset: 21:d42a756af44d >- |\ \ \ parent: 19:31ddc2c1573b >- | | | | parent: 20:d30ed6450e32 >- | | | | user: test >- | | | | date: Thu Jan 01 00:00:21 1970 +0000 >- | | | | summary: (21) expand >- | | | | >- | o---+ changeset: 20:d30ed6450e32 >- | | | parent: 0:e6eb3150255d >- | / / parent: 18:1aa84d96232a >- | | | user: test >- | | | date: Thu Jan 01 00:00:20 1970 +0000 >- | | | summary: (20) merge two known; two far right >- | | | >- o | | changeset: 19:31ddc2c1573b >- |\ \ \ parent: 15:1dda3f72782d >- | | | | parent: 17:44765d7c06e0 >- | | | | user: test >- | | | | date: Thu Jan 01 00:00:19 1970 +0000 >- | | | | summary: (19) expand >- | | | | >- +-----o changeset: 18:1aa84d96232a >- | | | parent: 1:6db2ef61d156 >- | | | parent: 15:1dda3f72782d >- | | | user: test >- | | | date: Thu Jan 01 00:00:18 1970 +0000 >- | | | summary: (18) merge two known; two far left >- | | | >- | o | changeset: 17:44765d7c06e0 >- | |\ \ parent: 12:86b91144a6e9 >- | | | | parent: 16:3677d192927d >- | | | | user: test >- | | | | date: Thu Jan 01 00:00:17 1970 +0000 >- | | | | summary: (17) expand >- | | | | >- | | o | changeset: 16:3677d192927d >- | | | | parent: 0:e6eb3150255d >- | | | | parent: 1:6db2ef61d156 >- | | | | user: test >- | | | | date: Thu Jan 01 00:00:16 1970 +0000 >- | | | | summary: (16) merge two known; one immediate right, one near right >- | | | | >- o | | | changeset: 15:1dda3f72782d >- |\ \ \ \ parent: 13:22d8966a97e3 >- | | | | | parent: 14:8eac370358ef >- | | | | | user: test >- | | | | | date: Thu Jan 01 00:00:15 1970 +0000 >- | | | | | summary: (15) expand >- | | | | | >- | o | | | changeset: 14:8eac370358ef >- | |/ / / parent: 0:e6eb3150255d >- | | | | parent: 12:86b91144a6e9 >- | | | | user: test >- | | | | date: Thu Jan 01 00:00:14 1970 +0000 >- | | | | summary: (14) merge two known; one immediate right, one far right >- | | | | >- o | | | changeset: 13:22d8966a97e3 >- |\ \ \ \ parent: 9:7010c0af0a35 >- | | | | | parent: 11:832d76e6bdf2 >- | | | | | user: test >- | | | | | date: Thu Jan 01 00:00:13 1970 +0000 >- | | | | | summary: (13) expand >- | | | | | >- +---o | | changeset: 12:86b91144a6e9 >- | | / / parent: 1:6db2ef61d156 >- | | | | parent: 9:7010c0af0a35 >- | | | | user: test >- | | | | date: Thu Jan 01 00:00:12 1970 +0000 >- | | | | summary: (12) merge two known; one immediate right, one far left >- | | | | >- | o | | changeset: 11:832d76e6bdf2 >- | | | | parent: 6:b105a072e251 >- | | | | parent: 10:74c64d036d72 >- | | | | user: test >- | | | | date: Thu Jan 01 00:00:11 1970 +0000 >- | | | | summary: (11) expand >- | | | | >- | o | | changeset: 10:74c64d036d72 >- | | | | parent: 0:e6eb3150255d >- | | | | parent: 6:b105a072e251 >- | | | | user: test >- | | | | date: Thu Jan 01 00:00:10 1970 +0000 >- | | | | summary: (10) merge two known; one immediate left, one near right >- | | | | >- o | | | changeset: 9:7010c0af0a35 >- | | | | parent: 7:b632bb1b1224 >- | | | | parent: 8:7a0b11f71937 >- | | | | user: test >- | | | | date: Thu Jan 01 00:00:09 1970 +0000 >- | | | | summary: (9) expand >- | | | | >- o | | | changeset: 8:7a0b11f71937 >- | | | | parent: 0:e6eb3150255d >- | | | | parent: 7:b632bb1b1224 >- | | | | user: test >- | | | | date: Thu Jan 01 00:00:08 1970 +0000 >- | | | | summary: (8) merge two known; one immediate left, one far right >- | | | | >- o | | | changeset: 7:b632bb1b1224 >- | | | | parent: 2:3d9a33b8d1e1 >- | | | | parent: 5:4409d547b708 >- | | | | user: test >- | | | | date: Thu Jan 01 00:00:07 1970 +0000 >- | | | | summary: (7) expand >- | | | | >- | o | | changeset: 6:b105a072e251 >- |/ / / parent: 2:3d9a33b8d1e1 >- | | | parent: 5:4409d547b708 >- | | | user: test >- | | | date: Thu Jan 01 00:00:06 1970 +0000 >- | | | summary: (6) merge two known; one immediate left, one far left >- | | | >- o | | changeset: 5:4409d547b708 >- | | | parent: 3:27eef8ed80b4 >- | | | parent: 4:26a8bac39d9f >- | | | user: test >- | | | date: Thu Jan 01 00:00:05 1970 +0000 >- | | | summary: (5) expand >- | | | >- o | | changeset: 4:26a8bac39d9f >- | | | parent: 1:6db2ef61d156 >- | | | parent: 3:27eef8ed80b4 >- | | | user: test >- | | | date: Thu Jan 01 00:00:04 1970 +0000 >- | | | summary: (4) merge two known; one immediate left, one immediate right >- | | | >- o | | changeset: 3:27eef8ed80b4 >- | | | user: test >- | | | date: Thu Jan 01 00:00:03 1970 +0000 >- | | | summary: (3) collapse >- | | | >- o | | changeset: 2:3d9a33b8d1e1 >- |/ / user: test >- | | date: Thu Jan 01 00:00:02 1970 +0000 >- | | summary: (2) collapse >- | | >- o | changeset: 1:6db2ef61d156 >- |/ user: test >- | date: Thu Jan 01 00:00:01 1970 +0000 >- | summary: (1) collapse >- | >- o changeset: 0:e6eb3150255d >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: (0) root >- >- >-Unused arguments: >- $ hg glog -q foo bar >- hg glog: invalid arguments >- hg glog [OPTION]... [FILE] >- >- show revision history alongside an ASCII revision graph >- [255] >- >-Empty revision range - display nothing: >- $ hg glog -r 1..0 >- >-From outer space: >- $ cd .. >- $ hg glog -l1 repo >- @ changeset: 34:fea3ac5810e0 >- | tag: tip >- | parent: 32:d06dffa21a31 >- | user: test >- | date: Thu Jan 01 00:00:34 1970 +0000 >- | summary: (34) head >- | >- $ hg glog -l1 repo/a >- @ changeset: 34:fea3ac5810e0 >- | tag: tip >- | parent: 32:d06dffa21a31 >- | user: test >- | date: Thu Jan 01 00:00:34 1970 +0000 >- | summary: (34) head >- | >- $ hg glog -l1 repo/missing >- >-File log with revs != cset revs: >- $ hg init flog >- $ cd flog >- $ echo one >one >- $ hg add one >- $ hg commit -mone >- $ echo two >two >- $ hg add two >- $ hg commit -mtwo >- $ echo more >two >- $ hg commit -mmore >- $ hg glog two >- @ changeset: 2:12c28321755b >- | tag: tip >- | user: test >- | date: Thu Jan 01 00:00:00 1970 +0000 >- | summary: more >- | >- o changeset: 1:5ac72c0599bf >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: two >- >- >-Issue1896: File log with explicit style >- $ hg glog --style=default one >- o changeset: 0:3d578b4a1f53 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: one >- >-Issue2395: glog --style header and footer >- $ hg glog --style=xml one >- <?xml version="1.0"?> >- <log> >- o <logentry revision="0" node="3d578b4a1f537d5fcf7301bfa9c0b97adfaa6fb1"> >- <author email="test">test</author> >- <date>1970-01-01T00:00:00+00:00</date> >- <msg xml:space="preserve">one</msg> >- </logentry> >- </log> >- >- $ cd .. >- >-Incoming and outgoing: >- >- $ hg clone -U -r31 repo repo2 >- adding changesets >- adding manifests >- adding file changes >- added 31 changesets with 31 changes to 1 files >- $ cd repo2 >- >- $ hg incoming --graph ../repo >- comparing with ../repo >- searching for changes >- o changeset: 34:fea3ac5810e0 >- | tag: tip >- | parent: 32:d06dffa21a31 >- | user: test >- | date: Thu Jan 01 00:00:34 1970 +0000 >- | summary: (34) head >- | >- | o changeset: 33:68608f5145f9 >- | parent: 18:1aa84d96232a >- | user: test >- | date: Thu Jan 01 00:00:33 1970 +0000 >- | summary: (33) head >- | >- o changeset: 32:d06dffa21a31 >- | parent: 27:886ed638191b >- | parent: 31:621d83e11f67 >- | user: test >- | date: Thu Jan 01 00:00:32 1970 +0000 >- | summary: (32) expand >- | >- o changeset: 27:886ed638191b >- parent: 21:d42a756af44d >- user: test >- date: Thu Jan 01 00:00:27 1970 +0000 >- summary: (27) collapse >- >- $ cd .. >- >- $ hg -R repo outgoing --graph repo2 >- comparing with repo2 >- searching for changes >- @ changeset: 34:fea3ac5810e0 >- | tag: tip >- | parent: 32:d06dffa21a31 >- | user: test >- | date: Thu Jan 01 00:00:34 1970 +0000 >- | summary: (34) head >- | >- | o changeset: 33:68608f5145f9 >- | parent: 18:1aa84d96232a >- | user: test >- | date: Thu Jan 01 00:00:33 1970 +0000 >- | summary: (33) head >- | >- o changeset: 32:d06dffa21a31 >- | parent: 27:886ed638191b >- | parent: 31:621d83e11f67 >- | user: test >- | date: Thu Jan 01 00:00:32 1970 +0000 >- | summary: (32) expand >- | >- o changeset: 27:886ed638191b >- parent: 21:d42a756af44d >- user: test >- date: Thu Jan 01 00:00:27 1970 +0000 >- summary: (27) collapse >- >- >-File + limit with revs != cset revs: >- $ cd repo >- $ touch b >- $ hg ci -Aqm0 >- $ hg glog -l2 a >- o changeset: 34:fea3ac5810e0 >- | parent: 32:d06dffa21a31 >- | user: test >- | date: Thu Jan 01 00:00:34 1970 +0000 >- | summary: (34) head >- | >- | o changeset: 33:68608f5145f9 >- | | parent: 18:1aa84d96232a >- | | user: test >- | | date: Thu Jan 01 00:00:33 1970 +0000 >- | | summary: (33) head >- | | >- >-File + limit + -ra:b, (b - a) < limit: >- $ hg glog -l3000 -r32:tip a >- o changeset: 34:fea3ac5810e0 >- | parent: 32:d06dffa21a31 >- | user: test >- | date: Thu Jan 01 00:00:34 1970 +0000 >- | summary: (34) head >- | >- | o changeset: 33:68608f5145f9 >- | | parent: 18:1aa84d96232a >- | | user: test >- | | date: Thu Jan 01 00:00:33 1970 +0000 >- | | summary: (33) head >- | | >- o | changeset: 32:d06dffa21a31 >- |\ \ parent: 27:886ed638191b >- | | | parent: 31:621d83e11f67 >- | | | user: test >- | | | date: Thu Jan 01 00:00:32 1970 +0000 >- | | | summary: (32) expand >- | | | >- >-File + limit + -ra:b, b < tip: >- $ hg glog -l1 -r32:34 a >- o changeset: 34:fea3ac5810e0 >- | parent: 32:d06dffa21a31 >- | user: test >- | date: Thu Jan 01 00:00:34 1970 +0000 >- | summary: (34) head >- | >- >-File + limit + -ra:b, b < tip, (b - a) < limit: >- $ hg glog -l10 -r33:34 a >- o changeset: 34:fea3ac5810e0 >- | parent: 32:d06dffa21a31 >- | user: test >- | date: Thu Jan 01 00:00:34 1970 +0000 >- | summary: (34) head >- | >- | o changeset: 33:68608f5145f9 >- | | parent: 18:1aa84d96232a >- | | user: test >- | | date: Thu Jan 01 00:00:33 1970 +0000 >- | | summary: (33) head >- | | >- >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-grep.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-grep.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-grep.t.err >@@ -1,168 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ mkdir t >- $ cd t >- $ hg init >- $ echo import > port >- $ hg add port >- $ hg commit -m 0 -u spam -d '0 0' >- $ echo export >> port >- $ hg commit -m 1 -u eggs -d '1 0' >- $ echo export > port >- $ echo vaportight >> port >- $ echo 'import/export' >> port >- $ hg commit -m 2 -u spam -d '2 0' >- $ echo 'import/export' >> port >- $ hg commit -m 3 -u eggs -d '3 0' >- $ head -n 3 port > port1 >- $ mv port1 port >- $ hg commit -m 4 -u spam -d '4 0' >- >-pattern error >- >- $ hg grep '**test**' >- grep: invalid match pattern: nothing to repeat >- [1] >- >-simple >- >- $ hg grep port port >- port:4:export >- port:4:vaportight >- port:4:import/export >- >-simple with color >- >- $ hg --config extensions.color= grep --config color.mode=ansi \ >- > --color=always port port >- port:4:ex[0;31;1mport[0m >- port:4:va[0;31;1mport[0might >- port:4:im[0;31;1mport[0m/export >- >-all >- >- $ hg grep --traceback --all -nu port port >- port:4:4:-:spam:import/export >- port:3:4:+:eggs:import/export >- port:2:1:-:spam:import >- port:2:2:-:spam:export >- port:2:1:+:spam:export >- port:2:2:+:spam:vaportight >- port:2:3:+:spam:import/export >- port:1:2:+:eggs:export >- port:0:1:+:spam:import >- >-other >- >- $ hg grep import port >- port:4:import/export >- >- $ hg cp port port2 >- $ hg commit -m 4 -u spam -d '5 0' >- >-follow >- >- $ hg grep --traceback -f 'import$' port2 >- port:0:import >- $ echo deport >> port2 >- $ hg commit -m 5 -u eggs -d '6 0' >- $ hg grep -f --all -nu port port2 >- port2:6:4:+:eggs:deport >- port:4:4:-:spam:import/export >- port:3:4:+:eggs:import/export >- port:2:1:-:spam:import >- port:2:2:-:spam:export >- port:2:1:+:spam:export >- port:2:2:+:spam:vaportight >- port:2:3:+:spam:import/export >- port:1:2:+:eggs:export >- port:0:1:+:spam:import >- >- $ cd .. >- $ hg init t2 >- $ cd t2 >- $ hg grep foobar foo >- [1] >- $ hg grep foobar >- [1] >- $ echo blue >> color >- $ echo black >> color >- $ hg add color >- $ hg ci -m 0 >- $ echo orange >> color >- $ hg ci -m 1 >- $ echo black > color >- $ hg ci -m 2 >- $ echo orange >> color >- $ echo blue >> color >- $ hg ci -m 3 >- $ hg grep orange >- color:3:orange >- $ hg grep --all orange >- color:3:+:orange >- color:2:-:orange >- color:1:+:orange >- >- >-match in last "line" without newline >- >- $ python -c 'fp = open("noeol", "wb"); fp.write("no infinite loop"); fp.close();' >- $ hg ci -Amnoeol >- adding noeol >- >-last character omitted in output to avoid infinite loop >- >- $ hg grep loop >- noeol:4:no infinite loo >- >- >- $ cd .. >- >-Issue685: trackback in grep -r after rename >- >-Got a traceback when using grep on a single >-revision with renamed files. >- >- $ hg init issue685 >- $ cd issue685 >- $ echo octarine > color >- $ hg ci -Amcolor >- adding color >- $ hg rename color colour >- $ hg ci -Am rename >- $ hg grep octarine >- colour:1:octarine >- color:0:octarine >- >-Used to crash here >- >- $ hg grep -r 1 octarine >- colour:1:octarine >- $ cd .. >- >- >-Issue337: test that grep follows parent-child relationships instead >-of just using revision numbers. >- >- $ hg init issue337 >- $ cd issue337 >- >- $ echo white > color >- $ hg commit -A -m "0 white" >- adding color >- >- $ echo red > color >- $ hg commit -A -m "1 red" >- >- $ hg update 0 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo black > color >- $ hg commit -A -m "2 black" >- created new head >- >- $ hg update --clean 1 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo blue > color >- $ hg commit -A -m "3 blue" >- >- $ hg grep --all red >- color:3:-:red >- color:1:+:red >!..... >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-hgweb-empty.t output changed >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-hgweb-empty.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-hgweb-empty.t.err >@@ -3,7 +3,12 @@ > $ hg init test > $ cd test > $ hg serve -n test -p $HGPORT -d --pid-file=hg.pid -A access.log -E errors.log >+ abort: cannot start server at ':$HGPORT': Address already in use >+ abort: child process failed to start >+ [255] > $ cat hg.pid >> $DAEMON_PIDS >+ cat: hg.pid: No such file or directory >+ [1] > $ ("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/shortlog') > 200 Script output follows > >@@ -14,11 +19,11 @@ > <meta name="robots" content="index, nofollow" /> > <link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> > >- <title>test: log</title> >+ <title>/var/tmp/portage/dev-vcs/mercurial-1.7/temp/tests-2.6/child2/test-fetch.t/a: log</title> > <link rel="alternate" type="application/atom+xml" >- href="/atom-log" title="Atom feed for test" /> >+ href="/atom-log" title="Atom feed for /var/tmp/portage/dev-vcs/mercurial-1.7/temp/tests-2.6/child2/test-fetch.t/a" /> > <link rel="alternate" type="application/rss+xml" >- href="/rss-log" title="RSS feed for test" /> >+ href="/rss-log" title="RSS feed for /var/tmp/portage/dev-vcs/mercurial-1.7/temp/tests-2.6/child2/test-fetch.t/a" /> > </head> > <body> > >@@ -30,13 +35,13 @@ > </div> > <ul> > <li class="active">log</li> >- <li><a href="/graph/000000000000">graph</a></li> >+ <li><a href="/graph/97d72e5f12c7">graph</a></li> > <li><a href="/tags">tags</a></li> > <li><a href="/branches">branches</a></li> > </ul> > <ul> >- <li><a href="/rev/000000000000">changeset</a></li> >- <li><a href="/file/000000000000">browse</a></li> >+ <li><a href="/rev/97d72e5f12c7">changeset</a></li> >+ <li><a href="/file/97d72e5f12c7">browse</a></li> > </ul> > <ul> > >@@ -47,7 +52,7 @@ > </div> > > <div class="main"> >- <h2><a href="/">test</a></h2> >+ <h2><a href="/">/var/tmp/portage/dev-vcs/mercurial-1.7/temp/tests-2.6/child2/test-fetch.t/a</a></h2> > <h3>log</h3> > > <form class="search" action="/log"> >@@ -58,9 +63,9 @@ > </form> > > <div class="navigate"> >- <a href="/shortlog/-1?revcount=30">less</a> >- <a href="/shortlog/-1?revcount=120">more</a> >- | rev -1: <a href="/shortlog/000000000000">(0)</a> <a href="/shortlog/tip">tip</a> >+ <a href="/shortlog/1?revcount=30">less</a> >+ <a href="/shortlog/1?revcount=120">more</a> >+ | rev 1: <a href="/shortlog/8580ff50825a">(0)</a> <a href="/shortlog/tip">tip</a> > </div> > > <table class="bigtable"> >@@ -69,13 +74,23 @@ > <th class="author">author</th> > <th class="description">description</th> > </tr> >+ <tr class="parity0"> >+ <td class="age">1970-01-01</td> >+ <td class="author">test</td> >+ <td class="description"><a href="/rev/97d72e5f12c7">b</a><span class="branchhead">default</span> <span class="tag">tip</span> </td> >+ </tr> >+ <tr class="parity1"> >+ <td class="age">1970-01-01</td> >+ <td class="author">test</td> >+ <td class="description"><a href="/rev/8580ff50825a">a</a></td> >+ </tr> > > </table> > > <div class="navigate"> >- <a href="/shortlog/-1?revcount=30">less</a> >- <a href="/shortlog/-1?revcount=120">more</a> >- | rev -1: <a href="/shortlog/000000000000">(0)</a> <a href="/shortlog/tip">tip</a> >+ <a href="/shortlog/1?revcount=30">less</a> >+ <a href="/shortlog/1?revcount=120">more</a> >+ | rev 1: <a href="/shortlog/8580ff50825a">(0)</a> <a href="/shortlog/tip">tip</a> > </div> > > </div> >@@ -96,11 +111,11 @@ > <meta name="robots" content="index, nofollow" /> > <link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> > >- <title>test: log</title> >+ <title>/var/tmp/portage/dev-vcs/mercurial-1.7/temp/tests-2.6/child2/test-fetch.t/a: log</title> > <link rel="alternate" type="application/atom+xml" >- href="/atom-log" title="Atom feed for test" /> >+ href="/atom-log" title="Atom feed for /var/tmp/portage/dev-vcs/mercurial-1.7/temp/tests-2.6/child2/test-fetch.t/a" /> > <link rel="alternate" type="application/rss+xml" >- href="/rss-log" title="RSS feed for test" /> >+ href="/rss-log" title="RSS feed for /var/tmp/portage/dev-vcs/mercurial-1.7/temp/tests-2.6/child2/test-fetch.t/a" /> > </head> > <body> > >@@ -112,13 +127,13 @@ > </div> > <ul> > <li class="active">log</li> >- <li><a href="/graph/000000000000">graph</a></li> >+ <li><a href="/graph/97d72e5f12c7">graph</a></li> > <li><a href="/tags">tags</a></li> > <li><a href="/branches">branches</a></li> > </ul> > <ul> >- <li><a href="/rev/000000000000">changeset</a></li> >- <li><a href="/file/000000000000">browse</a></li> >+ <li><a href="/rev/97d72e5f12c7">changeset</a></li> >+ <li><a href="/file/97d72e5f12c7">browse</a></li> > </ul> > <ul> > >@@ -129,7 +144,7 @@ > </div> > > <div class="main"> >- <h2><a href="/">test</a></h2> >+ <h2><a href="/">/var/tmp/portage/dev-vcs/mercurial-1.7/temp/tests-2.6/child2/test-fetch.t/a</a></h2> > <h3>log</h3> > > <form class="search" action="/log"> >@@ -140,9 +155,9 @@ > </form> > > <div class="navigate"> >- <a href="/shortlog/-1?revcount=5">less</a> >- <a href="/shortlog/-1?revcount=20">more</a> >- | rev -1: <a href="/shortlog/000000000000">(0)</a> <a href="/shortlog/tip">tip</a> >+ <a href="/shortlog/1?revcount=5">less</a> >+ <a href="/shortlog/1?revcount=20">more</a> >+ | rev 1: <a href="/shortlog/8580ff50825a">(0)</a> <a href="/shortlog/tip">tip</a> > </div> > > <table class="bigtable"> >@@ -151,13 +166,23 @@ > <th class="author">author</th> > <th class="description">description</th> > </tr> >+ <tr class="parity0"> >+ <td class="age">1970-01-01</td> >+ <td class="author">test</td> >+ <td class="description"><a href="/rev/97d72e5f12c7">b</a><span class="branchhead">default</span> <span class="tag">tip</span> </td> >+ </tr> >+ <tr class="parity1"> >+ <td class="age">1970-01-01</td> >+ <td class="author">test</td> >+ <td class="description"><a href="/rev/8580ff50825a">a</a></td> >+ </tr> > > </table> > > <div class="navigate"> >- <a href="/shortlog/-1?revcount=5">less</a> >- <a href="/shortlog/-1?revcount=20">more</a> >- | rev -1: <a href="/shortlog/000000000000">(0)</a> <a href="/shortlog/tip">tip</a> >+ <a href="/shortlog/1?revcount=5">less</a> >+ <a href="/shortlog/1?revcount=20">more</a> >+ | rev 1: <a href="/shortlog/8580ff50825a">(0)</a> <a href="/shortlog/tip">tip</a> > </div> > > </div> >@@ -178,11 +203,11 @@ > <meta name="robots" content="index, nofollow" /> > <link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> > >- <title>test: revision graph</title> >+ <title>/var/tmp/portage/dev-vcs/mercurial-1.7/temp/tests-2.6/child2/test-fetch.t/a: revision graph</title> > <link rel="alternate" type="application/atom+xml" >- href="/atom-log" title="Atom feed for test: log" /> >+ href="/atom-log" title="Atom feed for /var/tmp/portage/dev-vcs/mercurial-1.7/temp/tests-2.6/child2/test-fetch.t/a: log" /> > <link rel="alternate" type="application/rss+xml" >- href="/rss-log" title="RSS feed for test: log" /> >+ href="/rss-log" title="RSS feed for /var/tmp/portage/dev-vcs/mercurial-1.7/temp/tests-2.6/child2/test-fetch.t/a: log" /> > <!--[if IE]><script type="text/javascript" src="/static/excanvas.js"></script><![endif]--> > </head> > <body> >@@ -194,14 +219,14 @@ > <img src="/static/hglogo.png" alt="mercurial" /></a> > </div> > <ul> >- <li><a href="/shortlog/000000000000">log</a></li> >+ <li><a href="/shortlog/97d72e5f12c7">log</a></li> > <li class="active">graph</li> > <li><a href="/tags">tags</a></li> > <li><a href="/branches">branches</a></li> > </ul> > <ul> >- <li><a href="/rev/000000000000">changeset</a></li> >- <li><a href="/file/000000000000">browse</a></li> >+ <li><a href="/rev/97d72e5f12c7">changeset</a></li> >+ <li><a href="/file/97d72e5f12c7">browse</a></li> > </ul> > <ul> > <li><a href="/help">help</a></li> >@@ -209,7 +234,7 @@ > </div> > > <div class="main"> >- <h2><a href="/">test</a></h2> >+ <h2><a href="/">/var/tmp/portage/dev-vcs/mercurial-1.7/temp/tests-2.6/child2/test-fetch.t/a</a></h2> > <h3>graph</h3> > > <form class="search" action="/log"> >@@ -220,16 +245,16 @@ > </form> > > <div class="navigate"> >- <a href="/graph/-1?revcount=30">less</a> >- <a href="/graph/-1?revcount=120">more</a> >- | rev -1: <a href="/graph/000000000000">(0)</a> <a href="/graph/tip">tip</a> >+ <a href="/graph/1?revcount=30">less</a> >+ <a href="/graph/1?revcount=120">more</a> >+ | rev 1: <a href="/graph/8580ff50825a">(0)</a> <a href="/graph/8580ff50825a">-1</a> <a href="/graph/tip">tip</a> > </div> > > <noscript><p>The revision graph only works with JavaScript-enabled browsers.</p></noscript> > > <div id="wrapper"> > <ul id="nodebgs"></ul> >- <canvas id="graph" width="224" height="12"></canvas> >+ <canvas id="graph" width="224" height="90"></canvas> > <ul id="graphnodes"></ul> > </div> > >@@ -237,7 +262,7 @@ > <script type="text/javascript"> > <!-- hide script content > >- var data = []; >+ var data = [["97d72e5f12c7", [0, 1], [[0, 0, 1]], "b", "test", "1970-01-01", ["default", true], ["tip"]], ["8580ff50825a", [0, 1], [], "a", "test", "1970-01-01", ["default", false], []]]; > var graph = new Graph(); > graph.scale(39); > >@@ -303,9 +328,9 @@ > </script> > > <div class="navigate"> >- <a href="/graph/-1?revcount=30">less</a> >- <a href="/graph/-1?revcount=120">more</a> >- | rev -1: <a href="/graph/000000000000">(0)</a> <a href="/graph/tip">tip</a> >+ <a href="/graph/1?revcount=30">less</a> >+ <a href="/graph/1?revcount=120">more</a> >+ | rev 1: <a href="/graph/8580ff50825a">(0)</a> <a href="/graph/8580ff50825a">-1</a> <a href="/graph/tip">tip</a> > </div> > > </div> >@@ -326,7 +351,7 @@ > <meta name="robots" content="index, nofollow" /> > <link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> > >- <title>test: 000000000000 /</title> >+ <title>/var/tmp/portage/dev-vcs/mercurial-1.7/temp/tests-2.6/child2/test-fetch.t/a: 97d72e5f12c7 /</title> > </head> > <body> > >@@ -337,13 +362,13 @@ > <img src="/static/hglogo.png" alt="mercurial" /></a> > </div> > <ul> >- <li><a href="/shortlog/000000000000">log</a></li> >- <li><a href="/graph/000000000000">graph</a></li> >+ <li><a href="/shortlog/97d72e5f12c7">log</a></li> >+ <li><a href="/graph/97d72e5f12c7">graph</a></li> > <li><a href="/tags">tags</a></li> > <li><a href="/branches">branches</a></li> > </ul> > <ul> >- <li><a href="/rev/000000000000">changeset</a></li> >+ <li><a href="/rev/97d72e5f12c7">changeset</a></li> > <li class="active">browse</li> > </ul> > <ul> >@@ -355,8 +380,8 @@ > </div> > > <div class="main"> >- <h2><a href="/">test</a></h2> >- <h3>directory / @ -1:000000000000 <span class="tag">tip</span> </h3> >+ <h2><a href="/">/var/tmp/portage/dev-vcs/mercurial-1.7/temp/tests-2.6/child2/test-fetch.t/a</a></h2> >+ <h3>directory / @ 1:97d72e5f12c7 <span class="tag">tip</span> </h3> > > <form class="search" action="/log"> > >@@ -372,12 +397,30 @@ > <th class="permissions">permissions</th> > </tr> > <tr class="fileline parity0"> >- <td class="name"><a href="/file/000000000000/">[up]</a></td> >+ <td class="name"><a href="/file/97d72e5f12c7/">[up]</a></td> > <td class="size"></td> > <td class="permissions">drwxr-xr-x</td> > </tr> > > >+ <tr class="fileline parity1"> >+ <td class="filename"> >+ <a href="/file/97d72e5f12c7/a"> >+ <img src="/static/coal-file.png" alt="file"/> a >+ </a> >+ </td> >+ <td class="size">2</td> >+ <td class="permissions">-rw-r--r--</td> >+ </tr> >+ <tr class="fileline parity0"> >+ <td class="filename"> >+ <a href="/file/97d72e5f12c7/b"> >+ <img src="/static/coal-file.png" alt="file"/> b >+ </a> >+ </td> >+ <td class="size">2</td> >+ <td class="permissions">-rw-r--r--</td> >+ </tr> > </table> > </div> > </div> >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-git-export.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-git-export.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-git-export.t.err >@@ -1,349 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ hg init >- $ echo start > start >- $ hg ci -Amstart >- adding start >- >-New file: >- >- $ echo new > new >- $ hg ci -Amnew >- adding new >- $ hg diff --git -r 0 >- diff --git a/new b/new >- new file mode 100644 >- --- /dev/null >- +++ b/new >- @@ -0,0 +1,1 @@ >- +new >- >-Copy: >- >- $ hg cp new copy >- $ hg ci -mcopy >- $ hg diff --git -r 1:tip >- diff --git a/new b/copy >- copy from new >- copy to copy >- >-Rename: >- >- $ hg mv copy rename >- $ hg ci -mrename >- $ hg diff --git -r 2:tip >- diff --git a/copy b/rename >- rename from copy >- rename to rename >- >-Delete: >- >- $ hg rm rename >- $ hg ci -mdelete >- $ hg diff --git -r 3:tip >- diff --git a/rename b/rename >- deleted file mode 100644 >- --- a/rename >- +++ /dev/null >- @@ -1,1 +0,0 @@ >- -new >- >- $ cat > src <<EOF >- > 1 >- > 2 >- > 3 >- > 4 >- > 5 >- > EOF >- $ hg ci -Amsrc >- adding src >- >-chmod 644: >- >- $ chmod +x src >- $ hg ci -munexec >- $ hg diff --git -r 5:tip >- diff --git a/src b/src >- old mode 100644 >- new mode 100755 >- >-Rename+mod+chmod: >- >- $ hg mv src dst >- $ chmod -x dst >- $ echo a >> dst >- $ hg ci -mrenamemod >- $ hg diff --git -r 6:tip >- diff --git a/src b/dst >- old mode 100755 >- new mode 100644 >- rename from src >- rename to dst >- --- a/src >- +++ b/dst >- @@ -3,3 +3,4 @@ >- 3 >- 4 >- 5 >- +a >- >-Nonexistent in tip+chmod: >- >- $ hg diff --git -r 5:6 >- diff --git a/src b/src >- old mode 100644 >- new mode 100755 >- >-Binary diff: >- >- $ cp $TESTDIR/binfile.bin . >- $ hg add binfile.bin >- $ hg diff --git > b.diff >- $ cat b.diff >- diff --git a/binfile.bin b/binfile.bin >- new file mode 100644 >- index 0000000000000000000000000000000000000000..37ba3d1c6f17137d9c5f5776fa040caf5fe73ff9 >- GIT binary patch >- literal 593 >- zc$@)I0<QguP)<h;3K|Lk000e1NJLTq000mG000mO0ssI2kdbIM00009a7bBm000XU >- z000XU0RWnu7ytkO2XskIMF-Uh9TW;VpMjwv0005-Nkl<ZD9@FWPs=e;7{<>W$NUkd >- zX$nnYLt$-$V!?uy+1V%`z&Eh=ah|duER<4|QWhju3gb^nF*8iYobxWG-qqXl=2~5M >- z*IoDB)sG^CfNuoBmqLTVU^<;@nwHP!1wrWd`{(mHo6VNXWtyh{alzqmsH*yYzpvLT >- zLdY<T=ks|woh-`&01!ej#(xbV1f|pI*=%;d-%F*E*X#ZH`4I%6SS+$EJDE&ct=8po >- ziN#{?_j|kD%Cd|oiqds`xm@;oJ-^?NG3Gdqrs?5u*zI;{nogxsx~^|Fn^Y?Gdc6<; >- zfMJ+iF1J`LMx&A2?dEwNW8ClebzPTbIh{@$hS6*`kH@1d%Lo7fA#}N1)oN7`gm$~V >- z+wDx#)OFqMcE{s!JN0-xhG8ItAjVkJwEcb`3WWlJfU2r?;Pd%dmR+q@mSri5q9_W- >- zaR2~ECX?B2w+zELozC0s*6Z~|QG^f{3I#<`?)Q7U-JZ|q5W;9Q8i_=pBuSzunx=U; >- z9C)5jBoYw9^?EHyQl(M}1OlQcCX>lXB*ODN003Z&P17_@)3Pi=i0wb04<W?v-u}7K >- zXmmQA+wDgE!qR9o8jr`%=ab_&uh(l?R=r;Tjiqon91I2-hIu?57~@*4h7h9uORK#= >- fQItJW-{SoTm)8|5##k|m00000NkvXXu0mjf{mKw4 >- >- >-Import binary diff: >- >- $ hg revert binfile.bin >- $ rm binfile.bin >- $ hg import -mfoo b.diff >- applying b.diff >- $ cmp binfile.bin $TESTDIR/binfile.bin >- >-Rename binary file: >- >- $ hg mv binfile.bin renamed.bin >- $ hg diff --git >- diff --git a/binfile.bin b/renamed.bin >- rename from binfile.bin >- rename to renamed.bin >- >-Diff across many revisions: >- >- $ hg mv dst dst2 >- $ hg ci -m 'mv dst dst2' >- >- $ echo >> start >- $ hg ci -m 'change start' >- >- $ hg revert -r -2 start >- $ hg mv dst2 dst3 >- $ hg ci -m 'mv dst2 dst3; revert start' >- >- $ hg diff --git -r 9:11 >- diff --git a/dst2 b/dst3 >- rename from dst2 >- rename to dst3 >- >-Reversed: >- >- $ hg diff --git -r 11:9 >- diff --git a/dst3 b/dst2 >- rename from dst3 >- rename to dst2 >- >- >- $ echo a >> foo >- $ hg add foo >- $ hg ci -m 'add foo' >- $ echo b >> foo >- $ hg ci -m 'change foo' >- $ hg mv foo bar >- $ hg ci -m 'mv foo bar' >- $ echo c >> bar >- $ hg ci -m 'change bar' >- >-File created before r1 and renamed before r2: >- >- $ hg diff --git -r -3:-1 >- diff --git a/foo b/bar >- rename from foo >- rename to bar >- --- a/foo >- +++ b/bar >- @@ -1,2 +1,3 @@ >- a >- b >- +c >- >-Reversed: >- >- $ hg diff --git -r -1:-3 >- diff --git a/bar b/foo >- rename from bar >- rename to foo >- --- a/bar >- +++ b/foo >- @@ -1,3 +1,2 @@ >- a >- b >- -c >- >-File created in r1 and renamed before r2: >- >- $ hg diff --git -r -4:-1 >- diff --git a/foo b/bar >- rename from foo >- rename to bar >- --- a/foo >- +++ b/bar >- @@ -1,1 +1,3 @@ >- a >- +b >- +c >- >-Reversed: >- >- $ hg diff --git -r -1:-4 >- diff --git a/bar b/foo >- rename from bar >- rename to foo >- --- a/bar >- +++ b/foo >- @@ -1,3 +1,1 @@ >- a >- -b >- -c >- >-File created after r1 and renamed before r2: >- >- $ hg diff --git -r -5:-1 >- diff --git a/bar b/bar >- new file mode 100644 >- --- /dev/null >- +++ b/bar >- @@ -0,0 +1,3 @@ >- +a >- +b >- +c >- >-Reversed: >- >- $ hg diff --git -r -1:-5 >- diff --git a/bar b/bar >- deleted file mode 100644 >- --- a/bar >- +++ /dev/null >- @@ -1,3 +0,0 @@ >- -a >- -b >- -c >- >- >-Comparing with the working dir: >- >- $ echo >> start >- $ hg ci -m 'change start again' >- >- $ echo > created >- $ hg add created >- $ hg ci -m 'add created' >- >- $ hg mv created created2 >- $ hg ci -m 'mv created created2' >- >- $ hg mv created2 created3 >- >-There's a copy in the working dir: >- >- $ hg diff --git >- diff --git a/created2 b/created3 >- rename from created2 >- rename to created3 >- >-There's another copy between the original rev and the wd: >- >- $ hg diff --git -r -2 >- diff --git a/created b/created3 >- rename from created >- rename to created3 >- >-The source of the copy was created after the original rev: >- >- $ hg diff --git -r -3 >- diff --git a/created3 b/created3 >- new file mode 100644 >- --- /dev/null >- +++ b/created3 >- @@ -0,0 +1,1 @@ >- + >- $ hg ci -m 'mv created2 created3' >- >- >- $ echo > brand-new >- $ hg add brand-new >- $ hg ci -m 'add brand-new' >- $ hg mv brand-new brand-new2 >- >-Created in parent of wd; renamed in the wd: >- >- $ hg diff --git >- diff --git a/brand-new b/brand-new2 >- rename from brand-new >- rename to brand-new2 >- >-Created between r1 and parent of wd; renamed in the wd: >- >- $ hg diff --git -r -2 >- diff --git a/brand-new2 b/brand-new2 >- new file mode 100644 >- --- /dev/null >- +++ b/brand-new2 >- @@ -0,0 +1,1 @@ >- + >- $ hg ci -m 'mv brand-new brand-new2' >- >-One file is copied to many destinations and removed: >- >- $ hg cp brand-new2 brand-new3 >- $ hg mv brand-new2 brand-new3-2 >- $ hg ci -m 'multiple renames/copies' >- $ hg diff --git -r -2 -r -1 >- diff --git a/brand-new2 b/brand-new3 >- rename from brand-new2 >- rename to brand-new3 >- diff --git a/brand-new2 b/brand-new3-2 >- copy from brand-new2 >- copy to brand-new3-2 >- >-Reversed: >- >- $ hg diff --git -r -1 -r -2 >- diff --git a/brand-new3 b/brand-new2 >- rename from brand-new3 >- rename to brand-new2 >- diff --git a/brand-new3-2 b/brand-new3-2 >- deleted file mode 100644 >- --- a/brand-new3-2 >- +++ /dev/null >- @@ -1,1 +0,0 @@ >- - >- >-There should be a trailing TAB if there are spaces in the file name: >- >- $ echo foo > 'with spaces' >- $ hg add 'with spaces' >- $ hg diff --git >- diff --git a/with spaces b/with spaces >- new file mode 100644 >- --- /dev/null >- +++ b/with spaces >- @@ -0,0 +1,1 @@ >- +foo >- $ hg ci -m 'add filename with spaces' >- >!...... >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-hgweb-diffs.t output changed >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-hgweb-diffs.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-hgweb-diffs.t.err >@@ -16,461 +16,52 @@ > set up hgweb > > $ hg serve -n test -p $HGPORT -d --pid-file=hg.pid -A access.log -E errors.log >+ abort: cannot start server at ':$HGPORT': Address already in use >+ abort: child process failed to start >+ [255] > $ cat hg.pid >> $DAEMON_PIDS >+ cat: hg.pid: No such file or directory >+ [1] > > revision > > $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT '/rev/0' >- 200 Script output follows >+ 500 Internal Server Error > >- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> >- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US"> >- <head> >- <link rel="icon" href="/static/hgicon.png" type="image/png" /> >- <meta name="robots" content="index, nofollow" /> >- <link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> >+ Internal Server ErrorSALT1293134864.0 120 1 >+ 500 Internal Server Error > >- <title>test: 0cd96de13884</title> >- </head> >- <body> >- <div class="container"> >- <div class="menu"> >- <div class="logo"> >- <a href="http://mercurial.selenic.com/"> >- <img src="/static/hglogo.png" alt="mercurial" /></a> >- </div> >- <ul> >- <li><a href="/shortlog/0cd96de13884">log</a></li> >- <li><a href="/graph/0cd96de13884">graph</a></li> >- <li><a href="/tags">tags</a></li> >- <li><a href="/branches">branches</a></li> >- </ul> >- <ul> >- <li class="active">changeset</li> >- <li><a href="/raw-rev/0cd96de13884">raw</a></li> >- <li><a href="/file/0cd96de13884">browse</a></li> >- </ul> >- <ul> >- >- </ul> >- <ul> >- <li><a href="/help">help</a></li> >- </ul> >- </div> >+ Internal Server ErrorSALT1293134864.0 145 1 >+ 500 Internal Server Error > >- <div class="main"> >- >- <h2><a href="/">test</a></h2> >- <h3>changeset 0:0cd96de13884 </h3> >- >- <form class="search" action="/log"> >- >- <p><input name="rev" id="search1" type="text" size="30" /></p> >- <div id="hint">find changesets by author, revision, >- files, or words in the commit message</div> >- </form> >- >- <div class="description">a</div> >- >- <table id="changesetEntry"> >- <tr> >- <th class="author">author</th> >- <td class="author">test</td> >- </tr> >- <tr> >- <th class="date">date</th> >- <td class="date">Thu Jan 01 00:00:00 1970 +0000 (1970-01-01)</td></tr> >- <tr> >- <th class="author">parents</th> >- <td class="author"></td> >- </tr> >- <tr> >- <th class="author">children</th> >- <td class="author"> <a href="/rev/78e4ebad7cdf">78e4ebad7cdf</a></td> >- </tr> >- <tr> >- <th class="files">files</th> >- <td class="files"><a href="/file/0cd96de13884/a">a</a> <a href="/file/0cd96de13884/b">b</a> </td> >- </tr> >- </table> >- >- <div class="overflow"> >- <div class="sourcefirst"> line diff</div> >- >- <div class="source bottomline parity0"><pre><a href="#l1.1" id="l1.1"> 1.1</a> <span class="minusline">--- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- </span><a href="#l1.2" id="l1.2"> 1.2</a> <span class="plusline">+++ b/a Thu Jan 01 00:00:00 1970 +0000 >- </span><a href="#l1.3" id="l1.3"> 1.3</a> <span class="atline">@@ -0,0 +1,1 @@ >- </span><a href="#l1.4" id="l1.4"> 1.4</a> <span class="plusline">+a >- </span></pre></div><div class="source bottomline parity1"><pre><a href="#l2.1" id="l2.1"> 2.1</a> <span class="minusline">--- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- </span><a href="#l2.2" id="l2.2"> 2.2</a> <span class="plusline">+++ b/b Thu Jan 01 00:00:00 1970 +0000 >- </span><a href="#l2.3" id="l2.3"> 2.3</a> <span class="atline">@@ -0,0 +1,1 @@ >- </span><a href="#l2.4" id="l2.4"> 2.4</a> <span class="plusline">+b >- </span></pre></div> >- </div> >- >- </div> >- </div> >- >- >- </body> >- </html> >- >+ Internal Server ErrorSALT1293134864.0 241 1 > > raw revision > > $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT '/raw-rev/0' >- 200 Script output follows >- >- >- # HG changeset patch >- # User test >- # Date 0 0 >- # Node ID 0cd96de13884b090099512d4794ae87ad067ea8e >- >- a >- >- diff -r 000000000000 -r 0cd96de13884 a >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/a Thu Jan 01 00:00:00 1970 +0000 >- @@ -0,0 +1,1 @@ >- +a >- diff -r 000000000000 -r 0cd96de13884 b >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/b Thu Jan 01 00:00:00 1970 +0000 >- @@ -0,0 +1,1 @@ >- +b >- >- >-diff removed file >- >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT '/diff/tip/a' >- 200 Script output follows >- >- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> >- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US"> >- <head> >- <link rel="icon" href="/static/hgicon.png" type="image/png" /> >- <meta name="robots" content="index, nofollow" /> >- <link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> >- >- <title>test: a diff</title> >- </head> >- <body> >- >- <div class="container"> >- <div class="menu"> >- <div class="logo"> >- <a href="http://mercurial.selenic.com/"> >- <img src="/static/hglogo.png" alt="mercurial" /></a> >- </div> >- <ul> >- <li><a href="/shortlog/78e4ebad7cdf">log</a></li> >- <li><a href="/graph/78e4ebad7cdf">graph</a></li> >- <li><a href="/tags">tags</a></li> >- <li><a href="/branches">branches</a></li> >- </ul> >- <ul> >- <li><a href="/rev/78e4ebad7cdf">changeset</a></li> >- <li><a href="/file/78e4ebad7cdf">browse</a></li> >- </ul> >- <ul> >- <li><a href="/file/78e4ebad7cdf/a">file</a></li> >- <li><a href="/file/tip/a">latest</a></li> >- <li class="active">diff</li> >- <li><a href="/annotate/78e4ebad7cdf/a">annotate</a></li> >- <li><a href="/log/78e4ebad7cdf/a">file log</a></li> >- <li><a href="/raw-file/78e4ebad7cdf/a">raw</a></li> >- </ul> >- <ul> >- <li><a href="/help">help</a></li> >- </ul> >- </div> >- >- <div class="main"> >- <h2><a href="/">test</a></h2> >- <h3>diff a @ 1:78e4ebad7cdf</h3> >- >- <form class="search" action="/log"> >- <p></p> >- <p><input name="rev" id="search1" type="text" size="30" /></p> >- <div id="hint">find changesets by author, revision, >- files, or words in the commit message</div> >- </form> >- >- <div class="description">b</div> >- >- <table id="changesetEntry"> >- <tr> >- <th>author</th> >- <td>test</td> >- </tr> >- <tr> >- <th>date</th> >- <td>Thu Jan 01 00:00:00 1970 +0000 (1970-01-01)</td> >- </tr> >- <tr> >- <th>parents</th> >- <td></td> >- </tr> >- <tr> >- <th>children</th> >- <td></td> >- </tr> >- >- </table> >- >- <div class="overflow"> >- <div class="sourcefirst"> line diff</div> >- >- <div class="source bottomline parity0"><pre><a href="#l1.1" id="l1.1"> 1.1</a> <span class="minusline">--- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- </span><a href="#l1.2" id="l1.2"> 1.2</a> <span class="plusline">+++ b/a Thu Jan 01 00:00:00 1970 +0000 >- </span><a href="#l1.3" id="l1.3"> 1.3</a> <span class="atline">@@ -0,0 +1,1 @@ >- </span><a href="#l1.4" id="l1.4"> 1.4</a> <span class="plusline">+a >- </span></pre></div> >- </div> >- </div> >- </div> >- >- >- >- </body> >- </html> >- >- >-set up hgweb with git diffs >- >- $ "$TESTDIR/killdaemons.py" >- $ hg serve --config 'diff.git=1' -n test -p $HGPORT -d --pid-file=hg.pid -A access.log -E errors.log >+ abort: cannot start server at ':$HGPORT': Address already in use >+ abort: child process failed to start >+ [255] > $ cat hg.pid >> $DAEMON_PIDS >+ cat: hg.pid: No such file or directory >+ [1] > > revision > > $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT '/rev/0' >- 200 Script output follows >+ 500 Internal Server Error > >- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> >- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US"> >- <head> >- <link rel="icon" href="/static/hgicon.png" type="image/png" /> >- <meta name="robots" content="index, nofollow" /> >- <link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> >+ Internal Server ErrorSALT1293134864.0 347 1 >+ 500 Internal Server Error > >- <title>test: 0cd96de13884</title> >- </head> >- <body> >- <div class="container"> >- <div class="menu"> >- <div class="logo"> >- <a href="http://mercurial.selenic.com/"> >- <img src="/static/hglogo.png" alt="mercurial" /></a> >- </div> >- <ul> >- <li><a href="/shortlog/0cd96de13884">log</a></li> >- <li><a href="/graph/0cd96de13884">graph</a></li> >- <li><a href="/tags">tags</a></li> >- <li><a href="/branches">branches</a></li> >- </ul> >- <ul> >- <li class="active">changeset</li> >- <li><a href="/raw-rev/0cd96de13884">raw</a></li> >- <li><a href="/file/0cd96de13884">browse</a></li> >- </ul> >- <ul> >- >- </ul> >- <ul> >- <li><a href="/help">help</a></li> >- </ul> >- </div> >+ Internal Server ErrorSALT1293134864.0 374 1 >+ 500 Internal Server Error > >- <div class="main"> >- >- <h2><a href="/">test</a></h2> >- <h3>changeset 0:0cd96de13884 </h3> >- >- <form class="search" action="/log"> >- >- <p><input name="rev" id="search1" type="text" size="30" /></p> >- <div id="hint">find changesets by author, revision, >- files, or words in the commit message</div> >- </form> >- >- <div class="description">a</div> >- >- <table id="changesetEntry"> >- <tr> >- <th class="author">author</th> >- <td class="author">test</td> >- </tr> >- <tr> >- <th class="date">date</th> >- <td class="date">Thu Jan 01 00:00:00 1970 +0000 (1970-01-01)</td></tr> >- <tr> >- <th class="author">parents</th> >- <td class="author"></td> >- </tr> >- <tr> >- <th class="author">children</th> >- <td class="author"> <a href="/rev/78e4ebad7cdf">78e4ebad7cdf</a></td> >- </tr> >- <tr> >- <th class="files">files</th> >- <td class="files"><a href="/file/0cd96de13884/a">a</a> <a href="/file/0cd96de13884/b">b</a> </td> >- </tr> >- </table> >- >- <div class="overflow"> >- <div class="sourcefirst"> line diff</div> >- >- <div class="source bottomline parity0"><pre><a href="#l1.1" id="l1.1"> 1.1</a> new file mode 100644 >- <a href="#l1.2" id="l1.2"> 1.2</a> <span class="minusline">--- /dev/null >- </span><a href="#l1.3" id="l1.3"> 1.3</a> <span class="plusline">+++ b/a >- </span><a href="#l1.4" id="l1.4"> 1.4</a> <span class="atline">@@ -0,0 +1,1 @@ >- </span><a href="#l1.5" id="l1.5"> 1.5</a> <span class="plusline">+a >- </span></pre></div><div class="source bottomline parity1"><pre><a href="#l2.1" id="l2.1"> 2.1</a> new file mode 100644 >- <a href="#l2.2" id="l2.2"> 2.2</a> <span class="minusline">--- /dev/null >- </span><a href="#l2.3" id="l2.3"> 2.3</a> <span class="plusline">+++ b/b >- </span><a href="#l2.4" id="l2.4"> 2.4</a> <span class="atline">@@ -0,0 +1,1 @@ >- </span><a href="#l2.5" id="l2.5"> 2.5</a> <span class="plusline">+b >- </span></pre></div> >- </div> >- >- </div> >- </div> >- >- >- </body> >- </html> >- >+ Internal Server ErrorSALT1293134864.0 468 1 > > revision > > $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT '/raw-rev/0' >- 200 Script output follows >- >- >- # HG changeset patch >- # User test >- # Date 0 0 >- # Node ID 0cd96de13884b090099512d4794ae87ad067ea8e >- >- a >- >- diff --git a/a b/a >- new file mode 100644 >- --- /dev/null >- +++ b/a >- @@ -0,0 +1,1 @@ >- +a >- diff --git a/b b/b >- new file mode 100644 >- --- /dev/null >- +++ b/b >- @@ -0,0 +1,1 @@ >- +b >- >- >-diff removed file >- >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT '/diff/tip/a' >- 200 Script output follows >- >- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> >- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US"> >- <head> >- <link rel="icon" href="/static/hgicon.png" type="image/png" /> >- <meta name="robots" content="index, nofollow" /> >- <link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> >- >- <title>test: a diff</title> >- </head> >- <body> >- >- <div class="container"> >- <div class="menu"> >- <div class="logo"> >- <a href="http://mercurial.selenic.com/"> >- <img src="/static/hglogo.png" alt="mercurial" /></a> >- </div> >- <ul> >- <li><a href="/shortlog/78e4ebad7cdf">log</a></li> >- <li><a href="/graph/78e4ebad7cdf">graph</a></li> >- <li><a href="/tags">tags</a></li> >- <li><a href="/branches">branches</a></li> >- </ul> >- <ul> >- <li><a href="/rev/78e4ebad7cdf">changeset</a></li> >- <li><a href="/file/78e4ebad7cdf">browse</a></li> >- </ul> >- <ul> >- <li><a href="/file/78e4ebad7cdf/a">file</a></li> >- <li><a href="/file/tip/a">latest</a></li> >- <li class="active">diff</li> >- <li><a href="/annotate/78e4ebad7cdf/a">annotate</a></li> >- <li><a href="/log/78e4ebad7cdf/a">file log</a></li> >- <li><a href="/raw-file/78e4ebad7cdf/a">raw</a></li> >- </ul> >- <ul> >- <li><a href="/help">help</a></li> >- </ul> >- </div> >- >- <div class="main"> >- <h2><a href="/">test</a></h2> >- <h3>diff a @ 1:78e4ebad7cdf</h3> >- >- <form class="search" action="/log"> >- <p></p> >- <p><input name="rev" id="search1" type="text" size="30" /></p> >- <div id="hint">find changesets by author, revision, >- files, or words in the commit message</div> >- </form> >- >- <div class="description">b</div> >- >- <table id="changesetEntry"> >- <tr> >- <th>author</th> >- <td>test</td> >- </tr> >- <tr> >- <th>date</th> >- <td>Thu Jan 01 00:00:00 1970 +0000 (1970-01-01)</td> >- </tr> >- <tr> >- <th>parents</th> >- <td></td> >- </tr> >- <tr> >- <th>children</th> >- <td></td> >- </tr> >- >- </table> >- >- <div class="overflow"> >- <div class="sourcefirst"> line diff</div> >- >- <div class="source bottomline parity0"><pre><a href="#l1.1" id="l1.1"> 1.1</a> new file mode 100755 >- <a href="#l1.2" id="l1.2"> 1.2</a> <span class="minusline">--- /dev/null >- </span><a href="#l1.3" id="l1.3"> 1.3</a> <span class="plusline">+++ b/a >- </span><a href="#l1.4" id="l1.4"> 1.4</a> <span class="atline">@@ -0,0 +1,1 @@ >- </span><a href="#l1.5" id="l1.5"> 1.5</a> <span class="plusline">+a >- </span></pre></div> >- </div> >- </div> >- </div> >- >- >- >- </body> >- </html> >- >- $ cd .. >- >-test import rev as raw-rev >- >- $ hg clone -r0 test test1 > adding changesets > adding manifests > adding file changes >@@ -479,7 +70,11 @@ > 2 files updated, 0 files merged, 0 files removed, 0 files unresolved > $ cd test1 > $ hg import -q --exact http://localhost:$HGPORT/rev/1 >+ abort: HTTP Error 500: Internal Server Error >+ [255] > > errors > > $ cat ../test/errors.log >+ cat: ../test/errors.log: No such file or directory >+ [1] >!.... >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-hgweb.t output changed >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-hgweb.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-hgweb.t.err >@@ -9,421 +9,72 @@ > adding da/foo > adding foo > $ hg serve -n test -p $HGPORT -d --pid-file=hg.pid -A access.log -E errors.log >+ abort: cannot start server at ':$HGPORT': Address already in use >+ abort: child process failed to start >+ [255] > $ cat hg.pid >> $DAEMON_PIDS >+ cat: hg.pid: No such file or directory >+ [1] > > manifest > > $ ("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/file/tip/?style=raw') >- 200 Script output follows >+ 500 Internal Server Error > >+ Internal Server ErrorSALT1293134995.77 23 1 >+ 500 Internal Server Error > >- drwxr-xr-x da >- -rw-r--r-- 4 foo >+ Internal Server ErrorSALT1293134995.77 33 1 >+ 500 Internal Server Error > >+ Internal Server ErrorSALT1293134995.77 40 1 >+ 500 Internal Server Error > >+ Internal Server ErrorSALT1293134995.77 101 1 >+ 500 Internal Server Error >+ >+ Internal Server ErrorSALT1293134995.77 110 1 >+ 500 Internal Server Error >+ >+ Internal Server ErrorSALT1293134995.77 119 1 >+ 500 Internal Server Error >+ >+ Internal Server ErrorSALT1293134995.77 125 1 >+ 500 Internal Server Error >+ >+ Internal Server ErrorSALT1293134995.77 183 1 >+ 500 Internal Server Error >+ >+ Internal Server ErrorSALT1293134995.77 192 1 >+ 500 Internal Server Error >+ >+ Internal Server ErrorSALT1293134995.77 286 1 > $ ("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/file/tip/da?style=raw') >- 200 Script output follows >- >- >- -rw-r--r-- 4 foo >- >- >- >-plain file >- >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT '/file/tip/foo?style=raw' >- 200 Script output follows >- >- foo >- >-should give a 404 - static file that does not exist >- >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT '/static/bogus' >- 404 Not Found >- >- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> >- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US"> >- <head> >- <link rel="icon" href="/static/hgicon.png" type="image/png" /> >- <meta name="robots" content="index, nofollow" /> >- <link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> >- >- <title>test: error</title> >- </head> >- <body> >- >- <div class="container"> >- <div class="menu"> >- <div class="logo"> >- <a href="http://mercurial.selenic.com/"> >- <img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial" /></a> >- </div> >- <ul> >- <li><a href="/shortlog">log</a></li> >- <li><a href="/graph">graph</a></li> >- <li><a href="/tags">tags</a></li> >- <li><a href="/branches">branches</a></li> >- <li><a href="/help">help</a></li> >- </ul> >- </div> >- >- <div class="main"> >- >- <h2><a href="/">test</a></h2> >- <h3>error</h3> >- >- <form class="search" action="/log"> >- >- <p><input name="rev" id="search1" type="text" size="30"></p> >- <div id="hint">find changesets by author, revision, >- files, or words in the commit message</div> >- </form> >- >- <div class="description"> >- <p> >- An error occurred while processing your request: >- </p> >- <p> >- Not Found >- </p> >- </div> >- </div> >- </div> >- >- >- >- </body> >- </html> >- >+ abort: cannot start server at ':$HGPORT': Address already in use >+ abort: child process failed to start >+ [255] >+ $ cat hg.pid >> $DAEMON_PIDS >+ cat: hg.pid: No such file or directory > [1] >- >-should give a 404 - bad revision >- >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT '/file/spam/foo?style=raw' >- 404 Not Found >- >- >- error: revision not found: spam >- [1] >- >-should give a 400 - bad command >- >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT '/file/tip/foo?cmd=spam&style=raw' >- 400* (glob) >- >- >- error: no such method: spam >- [1] >- >-should give a 404 - file does not exist >- >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT '/file/tip/bork?style=raw' >- 404 Not Found >- >- >- error: bork@2ef0ac749a14: not found in manifest >- [1] >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT '/file/tip/bork' >- 404 Not Found >- >- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> >- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US"> >- <head> >- <link rel="icon" href="/static/hgicon.png" type="image/png" /> >- <meta name="robots" content="index, nofollow" /> >- <link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> >- >- <title>test: error</title> >- </head> >- <body> >- >- <div class="container"> >- <div class="menu"> >- <div class="logo"> >- <a href="http://mercurial.selenic.com/"> >- <img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial" /></a> >- </div> >- <ul> >- <li><a href="/shortlog">log</a></li> >- <li><a href="/graph">graph</a></li> >- <li><a href="/tags">tags</a></li> >- <li><a href="/branches">branches</a></li> >- <li><a href="/help">help</a></li> >- </ul> >- </div> >- >- <div class="main"> >- >- <h2><a href="/">test</a></h2> >- <h3>error</h3> >- >- <form class="search" action="/log"> >- >- <p><input name="rev" id="search1" type="text" size="30"></p> >- <div id="hint">find changesets by author, revision, >- files, or words in the commit message</div> >- </form> >- >- <div class="description"> >- <p> >- An error occurred while processing your request: >- </p> >- <p> >- bork@2ef0ac749a14: not found in manifest >- </p> >- </div> >- </div> >- </div> >- >- >- >- </body> >- </html> >- >- [1] >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT '/diff/tip/bork?style=raw' >- 404 Not Found >- >- >- error: bork@2ef0ac749a14: not found in manifest >- [1] >- >-try bad style >- >- $ ("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/file/tip/?style=foobar') >- 200 Script output follows >- >- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> >- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US"> >- <head> >- <link rel="icon" href="/static/hgicon.png" type="image/png" /> >- <meta name="robots" content="index, nofollow" /> >- <link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> >- >- <title>test: 2ef0ac749a14 /</title> >- </head> >- <body> >- >- <div class="container"> >- <div class="menu"> >- <div class="logo"> >- <a href="http://mercurial.selenic.com/"> >- <img src="/static/hglogo.png" alt="mercurial" /></a> >- </div> >- <ul> >- <li><a href="/shortlog/2ef0ac749a14">log</a></li> >- <li><a href="/graph/2ef0ac749a14">graph</a></li> >- <li><a href="/tags">tags</a></li> >- <li><a href="/branches">branches</a></li> >- </ul> >- <ul> >- <li><a href="/rev/2ef0ac749a14">changeset</a></li> >- <li class="active">browse</li> >- </ul> >- <ul> >- >- </ul> >- <ul> >- <li><a href="/help">help</a></li> >- </ul> >- </div> >- >- <div class="main"> >- <h2><a href="/">test</a></h2> >- <h3>directory / @ 0:2ef0ac749a14 <span class="tag">tip</span> </h3> >- >- <form class="search" action="/log"> >- >- <p><input name="rev" id="search1" type="text" size="30" /></p> >- <div id="hint">find changesets by author, revision, >- files, or words in the commit message</div> >- </form> >- >- <table class="bigtable"> >- <tr> >- <th class="name">name</th> >- <th class="size">size</th> >- <th class="permissions">permissions</th> >- </tr> >- <tr class="fileline parity0"> >- <td class="name"><a href="/file/2ef0ac749a14/">[up]</a></td> >- <td class="size"></td> >- <td class="permissions">drwxr-xr-x</td> >- </tr> >- >- <tr class="fileline parity1"> >- <td class="name"> >- <a href="/file/2ef0ac749a14/da"> >- <img src="/static/coal-folder.png" alt="dir."/> da/ >- </a> >- <a href="/file/2ef0ac749a14/da/"> >- >- </a> >- </td> >- <td class="size"></td> >- <td class="permissions">drwxr-xr-x</td> >- </tr> >- >- <tr class="fileline parity0"> >- <td class="filename"> >- <a href="/file/2ef0ac749a14/foo"> >- <img src="/static/coal-file.png" alt="file"/> foo >- </a> >- </td> >- <td class="size">4</td> >- <td class="permissions">-rw-r--r--</td> >- </tr> >- </table> >- </div> >- </div> >- >- >- </body> >- </html> >- >- >-stop and restart >- >- $ "$TESTDIR/killdaemons.py" >- $ hg serve -p $HGPORT -d --pid-file=hg.pid -A access.log >- $ cat hg.pid >> $DAEMON_PIDS > > Test the access/error files are opened in append mode > > $ python -c "print len(file('access.log').readlines()), 'log lines written'" >- 10 log lines written >+ Traceback (most recent call last): >+ File "<string>", line 1, in <module> >+ IOError: [Errno 2] No such file or directory: 'access.log' >+ [1] > > static file > > $ "$TESTDIR/get-with-headers.py" --twice localhost:$HGPORT '/static/style-gitweb.css' >- 200 Script output follows >+ 500 Internal Server Error > >- body { font-family: sans-serif; font-size: 12px; margin:0px; border:solid #d9d8d1; border-width:1px; margin:10px; } >- a { color:#0000cc; } >- a:hover, a:visited, a:active { color:#880000; } >- div.page_header { height:25px; padding:8px; font-size:18px; font-weight:bold; background-color:#d9d8d1; } >- div.page_header a:visited { color:#0000cc; } >- div.page_header a:hover { color:#880000; } >- div.page_nav { padding:8px; } >- div.page_nav a:visited { color:#0000cc; } >- div.page_path { padding:8px; border:solid #d9d8d1; border-width:0px 0px 1px} >- div.page_footer { padding:4px 8px; background-color: #d9d8d1; } >- div.page_footer_text { float:left; color:#555555; font-style:italic; } >- div.page_body { padding:8px; } >- div.title, a.title { >- display:block; padding:6px 8px; >- font-weight:bold; background-color:#edece6; text-decoration:none; color:#000000; >- } >- a.title:hover { background-color: #d9d8d1; } >- div.title_text { padding:6px 0px; border: solid #d9d8d1; border-width:0px 0px 1px; } >- div.log_body { padding:8px 8px 8px 150px; } >- .age { white-space:nowrap; } >- span.age { position:relative; float:left; width:142px; font-style:italic; } >- div.log_link { >- padding:0px 8px; >- font-size:10px; font-family:sans-serif; font-style:normal; >- position:relative; float:left; width:136px; >- } >- div.list_head { padding:6px 8px 4px; border:solid #d9d8d1; border-width:1px 0px 0px; font-style:italic; } >- a.list { text-decoration:none; color:#000000; } >- a.list:hover { text-decoration:underline; color:#880000; } >- table { padding:8px 4px; } >- th { padding:2px 5px; font-size:12px; text-align:left; } >- tr.light:hover, .parity0:hover { background-color:#edece6; } >- tr.dark, .parity1 { background-color:#f6f6f0; } >- tr.dark:hover, .parity1:hover { background-color:#edece6; } >- td { padding:2px 5px; font-size:12px; vertical-align:top; } >- td.closed { background-color: #99f; } >- td.link { padding:2px 5px; font-family:sans-serif; font-size:10px; } >- td.indexlinks { white-space: nowrap; } >- td.indexlinks a { >- padding: 2px 5px; line-height: 10px; >- border: 1px solid; >- color: #ffffff; background-color: #7777bb; >- border-color: #aaaadd #333366 #333366 #aaaadd; >- font-weight: bold; text-align: center; text-decoration: none; >- font-size: 10px; >- } >- td.indexlinks a:hover { background-color: #6666aa; } >- div.pre { font-family:monospace; font-size:12px; white-space:pre; } >- div.diff_info { font-family:monospace; color:#000099; background-color:#edece6; font-style:italic; } >- div.index_include { border:solid #d9d8d1; border-width:0px 0px 1px; padding:12px 8px; } >- div.search { margin:4px 8px; position:absolute; top:56px; right:12px } >- .linenr { color:#999999; text-decoration:none } >- div.rss_logo { float: right; white-space: nowrap; } >- div.rss_logo a { >- padding:3px 6px; line-height:10px; >- border:1px solid; border-color:#fcc7a5 #7d3302 #3e1a01 #ff954e; >- color:#ffffff; background-color:#ff6600; >- font-weight:bold; font-family:sans-serif; font-size:10px; >- text-align:center; text-decoration:none; >- } >- div.rss_logo a:hover { background-color:#ee5500; } >- pre { margin: 0; } >- span.logtags span { >- padding: 0px 4px; >- font-size: 10px; >- font-weight: normal; >- border: 1px solid; >- background-color: #ffaaff; >- border-color: #ffccff #ff00ee #ff00ee #ffccff; >- } >- span.logtags span.tagtag { >- background-color: #ffffaa; >- border-color: #ffffcc #ffee00 #ffee00 #ffffcc; >- } >- span.logtags span.branchtag { >- background-color: #aaffaa; >- border-color: #ccffcc #00cc33 #00cc33 #ccffcc; >- } >- span.logtags span.inbranchtag { >- background-color: #d5dde6; >- border-color: #e3ecf4 #9398f4 #9398f4 #e3ecf4; >- } >+ Internal Server Error500 Internal Server Error > >- /* Graph */ >- div#wrapper { >- position: relative; >- margin: 0; >- padding: 0; >- margin-top: 3px; >- } >- >- canvas { >- position: absolute; >- z-index: 5; >- top: -0.9em; >- margin: 0; >- } >- >- ul#nodebgs { >- list-style: none inside none; >- padding: 0; >- margin: 0; >- top: -0.7em; >- } >- >- ul#graphnodes li, ul#nodebgs li { >- height: 39px; >- } >- >- ul#graphnodes { >- position: absolute; >- z-index: 10; >- top: -0.8em; >- list-style: none inside none; >- padding: 0; >- } >- >- ul#graphnodes li .info { >- display: block; >- font-size: 100%; >- position: relative; >- top: -3px; >- font-style: italic; >- } >- 304 Not Modified >- >+ Internal Server ErrorSALT1293134995.77 429 1 >+ cat: errors.log: No such file or directory >+ [1] > > errors > >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-hook.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-hook.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-hook.t.err >@@ -1,483 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ cp "$TESTDIR"/printenv.py . >- >-commit hooks can see env vars >- >- $ hg init a >- $ cd a >- $ echo "[hooks]" > .hg/hgrc >- $ echo 'commit = unset HG_LOCAL HG_TAG; python ../printenv.py commit' >> .hg/hgrc >- $ echo 'commit.b = unset HG_LOCAL HG_TAG; python ../printenv.py commit.b' >> .hg/hgrc >- $ echo 'precommit = unset HG_LOCAL HG_NODE HG_TAG; python ../printenv.py precommit' >> .hg/hgrc >- $ echo 'pretxncommit = unset HG_LOCAL HG_TAG; python ../printenv.py pretxncommit' >> .hg/hgrc >- $ echo 'pretxncommit.tip = hg -q tip' >> .hg/hgrc >- $ echo 'pre-identify = python ../printenv.py pre-identify 1' >> .hg/hgrc >- $ echo 'pre-cat = python ../printenv.py pre-cat' >> .hg/hgrc >- $ echo 'post-cat = python ../printenv.py post-cat' >> .hg/hgrc >- $ echo a > a >- $ hg add a >- $ hg commit -m a >- precommit hook: HG_PARENT1=0000000000000000000000000000000000000000 >- pretxncommit hook: HG_NODE=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b HG_PARENT1=0000000000000000000000000000000000000000 HG_PENDING=$TESTTMP/a >- 0:cb9a9f314b8b >- commit hook: HG_NODE=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b HG_PARENT1=0000000000000000000000000000000000000000 >- commit.b hook: HG_NODE=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b HG_PARENT1=0000000000000000000000000000000000000000 >- >- $ hg clone . ../b >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ cd ../b >- >-changegroup hooks can see env vars >- >- $ echo '[hooks]' > .hg/hgrc >- $ echo 'prechangegroup = python ../printenv.py prechangegroup' >> .hg/hgrc >- $ echo 'changegroup = python ../printenv.py changegroup' >> .hg/hgrc >- $ echo 'incoming = python ../printenv.py incoming' >> .hg/hgrc >- >-pretxncommit and commit hooks can see both parents of merge >- >- $ cd ../a >- $ echo b >> a >- $ hg commit -m a1 -d "1 0" >- precommit hook: HG_PARENT1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b >- pretxncommit hook: HG_NODE=ab228980c14deea8b9555d91c9581127383e40fd HG_PARENT1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b HG_PENDING=$TESTTMP/a >- 1:ab228980c14d >- commit hook: HG_NODE=ab228980c14deea8b9555d91c9581127383e40fd HG_PARENT1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b >- commit.b hook: HG_NODE=ab228980c14deea8b9555d91c9581127383e40fd HG_PARENT1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b >- $ hg update -C 0 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo b > b >- $ hg add b >- $ hg commit -m b -d '1 0' >- precommit hook: HG_PARENT1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b >- pretxncommit hook: HG_NODE=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2 HG_PARENT1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b HG_PENDING=$TESTTMP/a >- 2:ee9deb46ab31 >- commit hook: HG_NODE=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2 HG_PARENT1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b >- commit.b hook: HG_NODE=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2 HG_PARENT1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b >- created new head >- $ hg merge 1 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg commit -m merge -d '2 0' >- precommit hook: HG_PARENT1=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2 HG_PARENT2=ab228980c14deea8b9555d91c9581127383e40fd >- pretxncommit hook: HG_NODE=07f3376c1e655977439df2a814e3cc14b27abac2 HG_PARENT1=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2 HG_PARENT2=ab228980c14deea8b9555d91c9581127383e40fd HG_PENDING=$TESTTMP/a >- 3:07f3376c1e65 >- commit hook: HG_NODE=07f3376c1e655977439df2a814e3cc14b27abac2 HG_PARENT1=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2 HG_PARENT2=ab228980c14deea8b9555d91c9581127383e40fd >- commit.b hook: HG_NODE=07f3376c1e655977439df2a814e3cc14b27abac2 HG_PARENT1=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2 HG_PARENT2=ab228980c14deea8b9555d91c9581127383e40fd >- >-test generic hooks >- >- $ hg id >- pre-identify hook: HG_ARGS=id HG_OPTS={'tags': None, 'rev': '', 'num': None, 'branch': None, 'id': None} HG_PATS=[] >- warning: pre-identify hook exited with status 1 >- [1] >- $ hg cat b >- pre-cat hook: HG_ARGS=cat b HG_OPTS={'rev': '', 'decode': None, 'exclude': [], 'output': '', 'include': []} HG_PATS=['b'] >- post-cat hook: HG_ARGS=cat b HG_OPTS={'rev': '', 'decode': None, 'exclude': [], 'output': '', 'include': []} HG_PATS=['b'] HG_RESULT=0 >- b >- >- $ cd ../b >- $ hg pull ../a >- prechangegroup hook: HG_SOURCE=pull HG_URL=file: >- changegroup hook: HG_NODE=ab228980c14deea8b9555d91c9581127383e40fd HG_SOURCE=pull HG_URL=file: >- incoming hook: HG_NODE=ab228980c14deea8b9555d91c9581127383e40fd HG_SOURCE=pull HG_URL=file: >- incoming hook: HG_NODE=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2 HG_SOURCE=pull HG_URL=file: >- incoming hook: HG_NODE=07f3376c1e655977439df2a814e3cc14b27abac2 HG_SOURCE=pull HG_URL=file: >- pulling from ../a >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 3 changesets with 2 changes to 2 files >- (run 'hg update' to get a working copy) >- >-tag hooks can see env vars >- >- $ cd ../a >- $ echo 'pretag = python ../printenv.py pretag' >> .hg/hgrc >- $ echo 'tag = unset HG_PARENT1 HG_PARENT2; python ../printenv.py tag' >> .hg/hgrc >- $ hg tag -d '3 0' a >- pretag hook: HG_LOCAL=0 HG_NODE=07f3376c1e655977439df2a814e3cc14b27abac2 HG_TAG=a >- precommit hook: HG_PARENT1=07f3376c1e655977439df2a814e3cc14b27abac2 >- pretxncommit hook: HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_PARENT1=07f3376c1e655977439df2a814e3cc14b27abac2 HG_PENDING=$TESTTMP/a >- 4:539e4b31b6dc >- commit hook: HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_PARENT1=07f3376c1e655977439df2a814e3cc14b27abac2 >- commit.b hook: HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_PARENT1=07f3376c1e655977439df2a814e3cc14b27abac2 >- tag hook: HG_LOCAL=0 HG_NODE=07f3376c1e655977439df2a814e3cc14b27abac2 HG_TAG=a >- $ hg tag -l la >- pretag hook: HG_LOCAL=1 HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_TAG=la >- tag hook: HG_LOCAL=1 HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_TAG=la >- >-pretag hook can forbid tagging >- >- $ echo 'pretag.forbid = python ../printenv.py pretag.forbid 1' >> .hg/hgrc >- $ hg tag -d '4 0' fa >- pretag hook: HG_LOCAL=0 HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_TAG=fa >- pretag.forbid hook: HG_LOCAL=0 HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_TAG=fa >- abort: pretag.forbid hook exited with status 1 >- [255] >- $ hg tag -l fla >- pretag hook: HG_LOCAL=1 HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_TAG=fla >- pretag.forbid hook: HG_LOCAL=1 HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_TAG=fla >- abort: pretag.forbid hook exited with status 1 >- [255] >- >-pretxncommit hook can see changeset, can roll back txn, changeset no >-more there after >- >- $ echo 'pretxncommit.forbid0 = hg tip -q' >> .hg/hgrc >- $ echo 'pretxncommit.forbid1 = python ../printenv.py pretxncommit.forbid 1' >> .hg/hgrc >- $ echo z > z >- $ hg add z >- $ hg -q tip >- 4:539e4b31b6dc >- $ hg commit -m 'fail' -d '4 0' >- precommit hook: HG_PARENT1=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 >- pretxncommit hook: HG_NODE=6f611f8018c10e827fee6bd2bc807f937e761567 HG_PARENT1=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_PENDING=$TESTTMP/a >- 5:6f611f8018c1 >- 5:6f611f8018c1 >- pretxncommit.forbid hook: HG_NODE=6f611f8018c10e827fee6bd2bc807f937e761567 HG_PARENT1=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_PENDING=$TESTTMP/a >- transaction abort! >- rollback completed >- abort: pretxncommit.forbid1 hook exited with status 1 >- [255] >- $ hg -q tip >- 4:539e4b31b6dc >- >-precommit hook can prevent commit >- >- $ echo 'precommit.forbid = python ../printenv.py precommit.forbid 1' >> .hg/hgrc >- $ hg commit -m 'fail' -d '4 0' >- precommit hook: HG_PARENT1=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 >- precommit.forbid hook: HG_PARENT1=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 >- abort: precommit.forbid hook exited with status 1 >- [255] >- $ hg -q tip >- 4:539e4b31b6dc >- >-preupdate hook can prevent update >- >- $ echo 'preupdate = python ../printenv.py preupdate' >> .hg/hgrc >- $ hg update 1 >- preupdate hook: HG_PARENT1=ab228980c14d >- 0 files updated, 0 files merged, 2 files removed, 0 files unresolved >- >-update hook >- >- $ echo 'update = python ../printenv.py update' >> .hg/hgrc >- $ hg update >- preupdate hook: HG_PARENT1=539e4b31b6dc >- update hook: HG_ERROR=0 HG_PARENT1=539e4b31b6dc >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-prechangegroup hook can prevent incoming changes >- >- $ cd ../b >- $ hg -q tip >- 3:07f3376c1e65 >- $ echo '[hooks]' > .hg/hgrc >- $ echo 'prechangegroup.forbid = python ../printenv.py prechangegroup.forbid 1' >> .hg/hgrc >- $ hg pull ../a >- prechangegroup.forbid hook: HG_SOURCE=pull HG_URL=file: >- pulling from ../a >- searching for changes >- abort: prechangegroup.forbid hook exited with status 1 >- [255] >- >-pretxnchangegroup hook can see incoming changes, can roll back txn, >-incoming changes no longer there after >- >- $ echo '[hooks]' > .hg/hgrc >- $ echo 'pretxnchangegroup.forbid0 = hg tip -q' >> .hg/hgrc >- $ echo 'pretxnchangegroup.forbid1 = python ../printenv.py pretxnchangegroup.forbid 1' >> .hg/hgrc >- $ hg pull ../a >- 4:539e4b31b6dc >- pretxnchangegroup.forbid hook: HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_PENDING=$TESTTMP/b HG_SOURCE=pull HG_URL=file: >- pulling from ../a >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- transaction abort! >- rollback completed >- abort: pretxnchangegroup.forbid1 hook exited with status 1 >- [255] >- $ hg -q tip >- 3:07f3376c1e65 >- >-outgoing hooks can see env vars >- >- $ rm .hg/hgrc >- $ echo '[hooks]' > ../a/.hg/hgrc >- $ echo 'preoutgoing = python ../printenv.py preoutgoing' >> ../a/.hg/hgrc >- $ echo 'outgoing = python ../printenv.py outgoing' >> ../a/.hg/hgrc >- $ hg pull ../a >- preoutgoing hook: HG_SOURCE=pull >- outgoing hook: HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_SOURCE=pull >- pulling from ../a >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- (run 'hg update' to get a working copy) >- $ hg rollback >- rolling back to revision 3 (undo pull) >- >-preoutgoing hook can prevent outgoing changes >- >- $ echo 'preoutgoing.forbid = python ../printenv.py preoutgoing.forbid 1' >> ../a/.hg/hgrc >- $ hg pull ../a >- preoutgoing hook: HG_SOURCE=pull >- preoutgoing.forbid hook: HG_SOURCE=pull >- pulling from ../a >- searching for changes >- abort: preoutgoing.forbid hook exited with status 1 >- [255] >- >-outgoing hooks work for local clones >- >- $ cd .. >- $ echo '[hooks]' > a/.hg/hgrc >- $ echo 'preoutgoing = python ../printenv.py preoutgoing' >> a/.hg/hgrc >- $ echo 'outgoing = python ../printenv.py outgoing' >> a/.hg/hgrc >- $ hg clone a c >- preoutgoing hook: HG_SOURCE=clone >- outgoing hook: HG_NODE=0000000000000000000000000000000000000000 HG_SOURCE=clone >- updating to branch default >- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm -rf c >- >-preoutgoing hook can prevent outgoing changes for local clones >- >- $ echo 'preoutgoing.forbid = python ../printenv.py preoutgoing.forbid 1' >> a/.hg/hgrc >- $ hg clone a zzz >- preoutgoing hook: HG_SOURCE=clone >- preoutgoing.forbid hook: HG_SOURCE=clone >- abort: preoutgoing.forbid hook exited with status 1 >- [255] >- $ cd b >- >- $ cat > hooktests.py <<EOF >- > from mercurial import util >- > >- > uncallable = 0 >- > >- > def printargs(args): >- > args.pop('ui', None) >- > args.pop('repo', None) >- > a = list(args.items()) >- > a.sort() >- > print 'hook args:' >- > for k, v in a: >- > print ' ', k, v >- > >- > def passhook(**args): >- > printargs(args) >- > >- > def failhook(**args): >- > printargs(args) >- > return True >- > >- > class LocalException(Exception): >- > pass >- > >- > def raisehook(**args): >- > raise LocalException('exception from hook') >- > >- > def aborthook(**args): >- > raise util.Abort('raise abort from hook') >- > >- > def brokenhook(**args): >- > return 1 + {} >- > >- > class container: >- > unreachable = 1 >- > EOF >- >-test python hooks >- >- $ PYTHONPATH="`pwd`:$PYTHONPATH" >- $ export PYTHONPATH >- >- $ echo '[hooks]' > ../a/.hg/hgrc >- $ echo 'preoutgoing.broken = python:hooktests.brokenhook' >> ../a/.hg/hgrc >- $ hg pull ../a 2>&1 | grep 'raised an exception' >- error: preoutgoing.broken hook raised an exception: unsupported operand type(s) for +: 'int' and 'dict' >- >- $ echo '[hooks]' > ../a/.hg/hgrc >- $ echo 'preoutgoing.raise = python:hooktests.raisehook' >> ../a/.hg/hgrc >- $ hg pull ../a 2>&1 | grep 'raised an exception' >- error: preoutgoing.raise hook raised an exception: exception from hook >- >- $ echo '[hooks]' > ../a/.hg/hgrc >- $ echo 'preoutgoing.abort = python:hooktests.aborthook' >> ../a/.hg/hgrc >- $ hg pull ../a >- pulling from ../a >- searching for changes >- error: preoutgoing.abort hook failed: raise abort from hook >- abort: raise abort from hook >- [255] >- >- $ echo '[hooks]' > ../a/.hg/hgrc >- $ echo 'preoutgoing.fail = python:hooktests.failhook' >> ../a/.hg/hgrc >- $ hg pull ../a >- pulling from ../a >- searching for changes >- hook args: >- hooktype preoutgoing >- source pull >- abort: preoutgoing.fail hook failed >- [255] >- >- $ echo '[hooks]' > ../a/.hg/hgrc >- $ echo 'preoutgoing.uncallable = python:hooktests.uncallable' >> ../a/.hg/hgrc >- $ hg pull ../a >- pulling from ../a >- searching for changes >- abort: preoutgoing.uncallable hook is invalid ("hooktests.uncallable" is not callable) >- [255] >- >- $ echo '[hooks]' > ../a/.hg/hgrc >- $ echo 'preoutgoing.nohook = python:hooktests.nohook' >> ../a/.hg/hgrc >- $ hg pull ../a >- pulling from ../a >- searching for changes >- abort: preoutgoing.nohook hook is invalid ("hooktests.nohook" is not defined) >- [255] >- >- $ echo '[hooks]' > ../a/.hg/hgrc >- $ echo 'preoutgoing.nomodule = python:nomodule' >> ../a/.hg/hgrc >- $ hg pull ../a >- pulling from ../a >- searching for changes >- abort: preoutgoing.nomodule hook is invalid ("nomodule" not in a module) >- [255] >- >- $ echo '[hooks]' > ../a/.hg/hgrc >- $ echo 'preoutgoing.badmodule = python:nomodule.nowhere' >> ../a/.hg/hgrc >- $ hg pull ../a >- pulling from ../a >- searching for changes >- abort: preoutgoing.badmodule hook is invalid (import of "nomodule" failed) >- [255] >- >- $ echo '[hooks]' > ../a/.hg/hgrc >- $ echo 'preoutgoing.unreachable = python:hooktests.container.unreachable' >> ../a/.hg/hgrc >- $ hg pull ../a >- pulling from ../a >- searching for changes >- abort: preoutgoing.unreachable hook is invalid (import of "hooktests.container" failed) >- [255] >- >- $ echo '[hooks]' > ../a/.hg/hgrc >- $ echo 'preoutgoing.pass = python:hooktests.passhook' >> ../a/.hg/hgrc >- $ hg pull ../a >- pulling from ../a >- searching for changes >- hook args: >- hooktype preoutgoing >- source pull >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- (run 'hg update' to get a working copy) >- >-make sure --traceback works >- >- $ echo '[hooks]' > .hg/hgrc >- $ echo 'commit.abort = python:hooktests.aborthook' >> .hg/hgrc >- >- $ echo aa > a >- $ hg --traceback commit -d '0 0' -ma 2>&1 | grep '^Traceback' >- Traceback (most recent call last): >- >- $ cd .. >- $ hg init c >- $ cd c >- >- $ cat > hookext.py <<EOF >- > def autohook(**args): >- > print "Automatically installed hook" >- > >- > def reposetup(ui, repo): >- > repo.ui.setconfig("hooks", "commit.auto", autohook) >- > EOF >- $ echo '[extensions]' >> .hg/hgrc >- $ echo 'hookext = hookext.py' >> .hg/hgrc >- >- $ touch foo >- $ hg add foo >- $ hg ci -d '0 0' -m 'add foo' >- Automatically installed hook >- $ echo >> foo >- $ hg ci --debug -d '0 0' -m 'change foo' >- foo >- calling hook commit.auto: <function autohook at *> (glob) >- Automatically installed hook >- committed changeset 1:52998019f6252a2b893452765fcb0a47351a5708 >- >- $ hg showconfig hooks >- hooks.commit.auto=<function autohook at *> (glob) >- >-test python hook configured with python:[file]:[hook] syntax >- >- $ cd .. >- $ mkdir d >- $ cd d >- $ hg init repo >- $ mkdir hooks >- >- $ cd hooks >- $ cat > testhooks.py <<EOF >- > def testhook(**args): >- > print 'hook works' >- > EOF >- $ echo '[hooks]' > ../repo/.hg/hgrc >- $ echo "pre-commit.test = python:`pwd`/testhooks.py:testhook" >> ../repo/.hg/hgrc >- >- $ cd ../repo >- $ hg commit -d '0 0' >- hook works >- nothing changed >- [1] >- >- $ cd ../../b >- >-make sure --traceback works on hook import failure >- >- $ cat > importfail.py <<EOF >- > import somebogusmodule >- > # dereference something in the module to force demandimport to load it >- > somebogusmodule.whatever >- > EOF >- >- $ echo '[hooks]' > .hg/hgrc >- $ echo 'precommit.importfail = python:importfail.whatever' >> .hg/hgrc >- >- $ echo a >> a >- $ hg --traceback commit -ma 2>&1 | egrep '^(exception|Traceback|ImportError)' >- exception from first failed import attempt: >- Traceback (most recent call last): >- ImportError: No module named somebogusmodule >- exception from second failed import attempt: >- Traceback (most recent call last): >- ImportError: No module named hgext_importfail >- Traceback (most recent call last): >- >-Issue1827: Hooks Update & Commit not completely post operation >- >-commit and update hooks should run after command completion >- >- $ echo '[hooks]' > .hg/hgrc >- $ echo 'commit = hg id' >> .hg/hgrc >- $ echo 'update = hg id' >> .hg/hgrc >- $ echo bb > a >- $ hg ci -ma >- 223eafe2750c tip >- $ hg up 0 >- cb9a9f314b8b >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >!. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-hgweb-commands.t output changed >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-hgweb-commands.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-hgweb-commands.t.err >@@ -20,7 +20,12 @@ > marked working directory as branch stable > $ hg ci -Ambranch > $ hg serve --config server.uncompressed=False -n test -p $HGPORT -d --pid-file=hg.pid -E errors.log >+ abort: cannot start server at ':$HGPORT': Address already in use >+ abort: child process failed to start >+ [255] > $ cat hg.pid >> $DAEMON_PIDS >+ cat: hg.pid: No such file or directory >+ [1] > > Logs and changes > >@@ -33,54 +38,54 @@ > <id>http://*:$HGPORT/</id> (glob) > <link rel="self" href="http://*:$HGPORT/atom-log"/> (glob) > <link rel="alternate" href="http://*:$HGPORT/"/> (glob) >- <title>test Changelog</title> >- <updated>1970-01-01T00:00:00+00:00</updated> >+ <title>test-archive Changelog</title> >+ <updated>2001-09-09T01:46:40+00:00</updated> > > <entry> >- <title>branch</title> >- <id>http://*:$HGPORT/#changeset-1d22e65f027e5a0609357e7d8e7508cd2ba5d2fe</id> (glob) >- <link href="http://*:$HGPORT/rev/1d22e65f027e"/> (glob) >+ <title>3</title> >+ <id>http://localhost:$HGPORT/#changeset-2c0277f05ed49d1c8328fb9ba92fba7a5ebcb33e</id> >+ <link href="http://localhost:$HGPORT/rev/2c0277f05ed4"/> > <author> > <name>test</name> > <email>test</email> > </author> >- <updated>1970-01-01T00:00:00+00:00</updated> >- <published>1970-01-01T00:00:00+00:00</published> >+ <updated>2001-09-09T01:46:40+00:00</updated> >+ <published>2001-09-09T01:46:40+00:00</published> > <content type="xhtml"> > <div xmlns="http://www.w3.org/1999/xhtml"> >- <pre xml:space="preserve">branch</pre> >+ <pre xml:space="preserve">3</pre> > </div> > </content> > </entry> > <entry> >- <title>Added tag 1.0 for changeset 2ef0ac749a14</title> >- <id>http://*:$HGPORT/#changeset-a4f92ed23982be056b9852de5dfe873eaac7f0de</id> (glob) >- <link href="http://*:$HGPORT/rev/a4f92ed23982"/> (glob) >+ <title>2</title> >+ <id>http://localhost:$HGPORT/#changeset-0e6a6674cbcc3d7ad053aec20062bb2a298d24c2</id> >+ <link href="http://localhost:$HGPORT/rev/0e6a6674cbcc"/> > <author> > <name>test</name> > <email>test</email> > </author> >- <updated>1970-01-01T00:00:00+00:00</updated> >- <published>1970-01-01T00:00:00+00:00</published> >+ <updated>1970-01-01T00:00:02+00:00</updated> >+ <published>1970-01-01T00:00:02+00:00</published> > <content type="xhtml"> > <div xmlns="http://www.w3.org/1999/xhtml"> >- <pre xml:space="preserve">Added tag 1.0 for changeset 2ef0ac749a14</pre> >+ <pre xml:space="preserve">2</pre> > </div> > </content> > </entry> > <entry> >- <title>base</title> >- <id>http://*:$HGPORT/#changeset-2ef0ac749a14e4f57a5a822464a0902c6f7f448f</id> (glob) >- <link href="http://*:$HGPORT/rev/2ef0ac749a14"/> (glob) >+ <title>1</title> >+ <id>http://localhost:$HGPORT/#changeset-daa7f7c60e0a224faa4ff77ca41b2760562af264</id> >+ <link href="http://localhost:$HGPORT/rev/daa7f7c60e0a"/> > <author> > <name>test</name> > <email>test</email> > </author> >- <updated>1970-01-01T00:00:00+00:00</updated> >- <published>1970-01-01T00:00:00+00:00</published> >+ <updated>1970-01-01T00:00:01+00:00</updated> >+ <published>1970-01-01T00:00:01+00:00</published> > <content type="xhtml"> > <div xmlns="http://www.w3.org/1999/xhtml"> >- <pre xml:space="preserve">base</pre> >+ <pre xml:space="preserve">1</pre> > </div> > </content> > </entry> >@@ -95,54 +100,54 @@ > <id>http://*:$HGPORT/</id> (glob) > <link rel="self" href="http://*:$HGPORT/atom-log"/> (glob) > <link rel="alternate" href="http://*:$HGPORT/"/> (glob) >- <title>test Changelog</title> >- <updated>1970-01-01T00:00:00+00:00</updated> >+ <title>test-archive Changelog</title> >+ <updated>2001-09-09T01:46:40+00:00</updated> > > <entry> >- <title>branch</title> >- <id>http://*:$HGPORT/#changeset-1d22e65f027e5a0609357e7d8e7508cd2ba5d2fe</id> (glob) >- <link href="http://*:$HGPORT/rev/1d22e65f027e"/> (glob) >+ <title>3</title> >+ <id>http://localhost:$HGPORT/#changeset-2c0277f05ed49d1c8328fb9ba92fba7a5ebcb33e</id> >+ <link href="http://localhost:$HGPORT/rev/2c0277f05ed4"/> > <author> > <name>test</name> > <email>test</email> > </author> >- <updated>1970-01-01T00:00:00+00:00</updated> >- <published>1970-01-01T00:00:00+00:00</published> >+ <updated>2001-09-09T01:46:40+00:00</updated> >+ <published>2001-09-09T01:46:40+00:00</published> > <content type="xhtml"> > <div xmlns="http://www.w3.org/1999/xhtml"> >- <pre xml:space="preserve">branch</pre> >+ <pre xml:space="preserve">3</pre> > </div> > </content> > </entry> > <entry> >- <title>Added tag 1.0 for changeset 2ef0ac749a14</title> >- <id>http://*:$HGPORT/#changeset-a4f92ed23982be056b9852de5dfe873eaac7f0de</id> (glob) >- <link href="http://*:$HGPORT/rev/a4f92ed23982"/> (glob) >+ <title>2</title> >+ <id>http://localhost:$HGPORT/#changeset-0e6a6674cbcc3d7ad053aec20062bb2a298d24c2</id> >+ <link href="http://localhost:$HGPORT/rev/0e6a6674cbcc"/> > <author> > <name>test</name> > <email>test</email> > </author> >- <updated>1970-01-01T00:00:00+00:00</updated> >- <published>1970-01-01T00:00:00+00:00</published> >+ <updated>1970-01-01T00:00:02+00:00</updated> >+ <published>1970-01-01T00:00:02+00:00</published> > <content type="xhtml"> > <div xmlns="http://www.w3.org/1999/xhtml"> >- <pre xml:space="preserve">Added tag 1.0 for changeset 2ef0ac749a14</pre> >+ <pre xml:space="preserve">2</pre> > </div> > </content> > </entry> > <entry> >- <title>base</title> >- <id>http://*:$HGPORT/#changeset-2ef0ac749a14e4f57a5a822464a0902c6f7f448f</id> (glob) >- <link href="http://*:$HGPORT/rev/2ef0ac749a14"/> (glob) >+ <title>1</title> >+ <id>http://localhost:$HGPORT/#changeset-daa7f7c60e0a224faa4ff77ca41b2760562af264</id> >+ <link href="http://localhost:$HGPORT/rev/daa7f7c60e0a"/> > <author> > <name>test</name> > <email>test</email> > </author> >- <updated>1970-01-01T00:00:00+00:00</updated> >- <published>1970-01-01T00:00:00+00:00</published> >+ <updated>1970-01-01T00:00:01+00:00</updated> >+ <published>1970-01-01T00:00:01+00:00</published> > <content type="xhtml"> > <div xmlns="http://www.w3.org/1999/xhtml"> >- <pre xml:space="preserve">base</pre> >+ <pre xml:space="preserve">1</pre> > </div> > </content> > </entry> >@@ -155,22 +160,22 @@ > <feed xmlns="http://www.w3.org/2005/Atom"> > <id>http://*:$HGPORT/atom-log/tip/foo</id> (glob) > <link rel="self" href="http://*:$HGPORT/atom-log/tip/foo"/> (glob) >- <title>test: foo history</title> >- <updated>1970-01-01T00:00:00+00:00</updated> >+ <title>test-archive: foo history</title> >+ <updated>1970-01-01T00:00:01+00:00</updated> > > <entry> >- <title>base</title> >- <id>http://*:$HGPORT/#changeset-2ef0ac749a14e4f57a5a822464a0902c6f7f448f</id> (glob) >- <link href="http://*:$HGPORT/rev/2ef0ac749a14"/> (glob) >+ <title>1</title> >+ <id>http://localhost:$HGPORT/#changeset-daa7f7c60e0a224faa4ff77ca41b2760562af264</id> >+ <link href="http://localhost:$HGPORT/rev/daa7f7c60e0a"/> > <author> > <name>test</name> > <email>test</email> > </author> >- <updated>1970-01-01T00:00:00+00:00</updated> >- <published>1970-01-01T00:00:00+00:00</published> >+ <updated>1970-01-01T00:00:01+00:00</updated> >+ <published>1970-01-01T00:00:01+00:00</published> > <content type="xhtml"> > <div xmlns="http://www.w3.org/1999/xhtml"> >- <pre xml:space="preserve">base</pre> >+ <pre xml:space="preserve">1</pre> > </div> > </content> > </entry> >@@ -186,11 +191,11 @@ > <meta name="robots" content="index, nofollow" /> > <link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> > >- <title>test: log</title> >+ <title>test-archive: log</title> > <link rel="alternate" type="application/atom+xml" >- href="/atom-log" title="Atom feed for test" /> >+ href="/atom-log" title="Atom feed for test-archive" /> > <link rel="alternate" type="application/rss+xml" >- href="/rss-log" title="RSS feed for test" /> >+ href="/rss-log" title="RSS feed for test-archive" /> > </head> > <body> > >@@ -202,16 +207,25 @@ > </div> > <ul> > <li class="active">log</li> >- <li><a href="/graph/1d22e65f027e">graph</a></li> >+ <li><a href="/graph/2c0277f05ed4">graph</a></li> > <li><a href="/tags">tags</a></li> > <li><a href="/branches">branches</a></li> > </ul> > <ul> >- <li><a href="/rev/1d22e65f027e">changeset</a></li> >- <li><a href="/file/1d22e65f027e">browse</a></li> >+ <li><a href="/rev/2c0277f05ed4">changeset</a></li> >+ <li><a href="/file/2c0277f05ed4">browse</a></li> > </ul> > <ul> > >+ <li> >+ <a href="/archive/tip.tar.bz2">bz2</a> >+ </li> >+ <li> >+ <a href="/archive/tip.zip">zip</a> >+ </li> >+ <li> >+ <a href="/archive/tip.tar.gz">gz</a> >+ </li> > </ul> > <ul> > <li><a href="/help">help</a></li> >@@ -219,7 +233,7 @@ > </div> > > <div class="main"> >- <h2><a href="/">test</a></h2> >+ <h2><a href="/">test-archive</a></h2> > <h3>log</h3> > > <form class="search" action="/log"> >@@ -232,7 +246,7 @@ > <div class="navigate"> > <a href="/shortlog/2?revcount=30">less</a> > <a href="/shortlog/2?revcount=120">more</a> >- | rev 2: <a href="/shortlog/2ef0ac749a14">(0)</a> <a href="/shortlog/tip">tip</a> >+ | rev 2: <a href="/shortlog/daa7f7c60e0a">(0)</a> <a href="/shortlog/tip">tip</a> > </div> > > <table class="bigtable"> >@@ -242,19 +256,19 @@ > <th class="description">description</th> > </tr> > <tr class="parity0"> >- <td class="age">1970-01-01</td> >+ <td class="age">2001-09-09</td> > <td class="author">test</td> >- <td class="description"><a href="/rev/1d22e65f027e">branch</a><span class="branchhead">stable</span> <span class="tag">tip</span> </td> >+ <td class="description"><a href="/rev/2c0277f05ed4">3</a><span class="branchhead">default</span> <span class="tag">tip</span> </td> > </tr> > <tr class="parity1"> > <td class="age">1970-01-01</td> > <td class="author">test</td> >- <td class="description"><a href="/rev/a4f92ed23982">Added tag 1.0 for changeset 2ef0ac749a14</a><span class="branchhead">default</span> </td> >+ <td class="description"><a href="/rev/0e6a6674cbcc">2</a></td> > </tr> > <tr class="parity0"> > <td class="age">1970-01-01</td> > <td class="author">test</td> >- <td class="description"><a href="/rev/2ef0ac749a14">base</a><span class="tag">1.0</span> </td> >+ <td class="description"><a href="/rev/daa7f7c60e0a">1</a></td> > </tr> > > </table> >@@ -262,7 +276,7 @@ > <div class="navigate"> > <a href="/shortlog/2?revcount=30">less</a> > <a href="/shortlog/2?revcount=120">more</a> >- | rev 2: <a href="/shortlog/2ef0ac749a14">(0)</a> <a href="/shortlog/tip">tip</a> >+ | rev 2: <a href="/shortlog/daa7f7c60e0a">(0)</a> <a href="/shortlog/tip">tip</a> > </div> > > </div> >@@ -283,7 +297,7 @@ > <meta name="robots" content="index, nofollow" /> > <link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> > >- <title>test: 2ef0ac749a14</title> >+ <title>test-archive: daa7f7c60e0a</title> > </head> > <body> > <div class="container"> >@@ -293,28 +307,160 @@ > <img src="/static/hglogo.png" alt="mercurial" /></a> > </div> > <ul> >- <li><a href="/shortlog/2ef0ac749a14">log</a></li> >- <li><a href="/graph/2ef0ac749a14">graph</a></li> >+ <li><a href="/shortlog/daa7f7c60e0a">log</a></li> >+ <li><a href="/graph/daa7f7c60e0a">graph</a></li> > <li><a href="/tags">tags</a></li> > <li><a href="/branches">branches</a></li> > </ul> > <ul> > <li class="active">changeset</li> >- <li><a href="/raw-rev/2ef0ac749a14">raw</a></li> >- <li><a href="/file/2ef0ac749a14">browse</a></li> >+ <li><a href="/raw-rev/daa7f7c60e0a">raw</a></li> >+ <li><a href="/file/daa7f7c60e0a">browse</a></li> > </ul> > <ul> > >+ <li> >+ <a href="/archive/daa7f7c60e0a.tar.bz2">bz2</a> >+ </li> >+ <li> >+ <a href="/archive/daa7f7c60e0a.zip">zip</a> >+ </li>Internal Server ErrorSALT1293134972.73 370 0 >+ 500 Internal Server Error >+ >+ Internal Server ErrorSALT1293134972.73 387 1 >+ 200 Script output follows >+ >+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> >+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US"> >+ <head> >+ <link rel="icon" href="/static/hgicon.png" type="image/png" /> >+ <meta name="robots" content="index, nofollow" /> >+ <link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> >+ >+ <title>test-archive: searching for base</title> >+ </head> >+ <body> >+ >+ <div class="container"> >+ <div class="menu"> >+ <div class="logo"> >+ <a href="http://mercurial.selenic.com/"> >+ <img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial"></a> >+ </div> >+ <ul> >+ <li><a href="/shortlog">log</a></li> >+ <li><a href="/graph">graph</a></li> >+ <li><a href="/tags">tags</a></li> >+ <li><a href="/branches">branches</a></li> >+ <li><a href="/help">help</a></li> > </ul> >- <ul> >- <li><a href="/help">help</a></li> >+ </div> >+ >+ <div class="main"> >+ <h2><a href="/">test-archive</a></h2> >+ <h3>searching for 'base'</h3> >+ >+ <form class="search" action="/log"> >+ >+ <p><input name="rev" id="search1" type="text" size="30"></p> >+ <div id="hint">find changesets by author, revision, >+ files, or words in the commit message</div> >+ </form> >+ >+ <div class="navigate"> >+ <a href="/search/?rev=base&revcount=5">less</a> >+ <a href="/search/?rev=base&revcount=20">more</a> >+ </div> >+ >+ <table class="bigtable"> >+ <tr> >+ <th class="age">age</th> >+ <th class="author">author</th> >+ <th class="description">description</th> >+ </tr> >+ >+ </table> >+ >+ <div class="navigate"> >+ <a href="/search/?rev=base&revcount=5">less</a> >+ <a href="/search/?rev=base&revcount=20">more</a> >+ </div> >+ >+ </div> >+ </div> >+ >+ >+ >+ </body> >+ </html> >+ >+ $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/rev/1/?style=raw' >+ 200 Script output follows >+ >+ foo >+ $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/annotate/1/foo/?style=raw' >+ 200 Script output follows >+ >+ >+ test@0: foo >+ >+ >+ >+ >+ $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/file/1/?style=raw' >+ 200 Script output follows >+ >+ >+ -rw-r--r-- 4 bar >+ -rw-r--r-- 4 foo >+ >+ >+ $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/file/1/foo' >+ 200 Script output follows >+ >+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> >+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US"> >+ <head> >+ <link rel="icon" href="/static/hgicon.png" type="image/png" /> >+ <meta name="robots" content="index, nofollow" /> >+ <link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> >+ >+ <title>test-archive: 0e6a6674cbcc foo</title> >+ </head> >+ <body> >+ >+ <div class="container"> >+ <div class="menu"> >+ <div class="logo"> >+ <a href="http://mercurial.selenic.com/"> >+ <img src="/static/hglogo.png" alt="mercurial" /></a> >+ </div> >+ <ul> >+ <li><a href="/shortlog/0e6a6674cbcc">log</a></li> >+ <li><a href="/graph/0e6a6674cbcc">graph</a></li> >+ <li><a href="/tags">tags</a></li> >+ <li><a href="/branches">branches</a></li> > </ul> >+ <ul> >+ <li><a href="/rev/0e6a6674cbcc">changeset</a></li> >+ <li><a href="/file/0e6a6674cbcc/">browse</a></li> >+ </ul> >+ <ul> >+ <li class="active">file</li> >+ <li><a href="/file/tip/foo">latest</a></li> >+ <li><a href="/diff/0e6a6674cbcc/foo">diff</a></li> >+ <li><a href="/annotate/0e6a6674cbcc/foo">annotate</a></li> >+ <li><a href="/log/0e6a6674cbcc/foo">file log</a></li> >+ <li><a href="/raw-file/0e6a6674cbcc/foo">raw</a></li> >+ </ul> >+ <ul> >+ <li><a href="/help">help</a></li> >+ </ul> > </div> > > <div class="main"> >- >- <h2><a href="/">test</a></h2> >- <h3>changeset 0:2ef0ac749a14 <span class="tag">1.0</span> </h3> >+ <h2><a href="/">test-archive</a></h2> >+ <h3>view foo @ 1:0e6a6674cbcc</h3> > > <form class="search" action="/log"> > >@@ -323,7 +469,7 @@ > files, or words in the commit message</div> > </form> > >- <div class="description">base</div> >+ <div class="description">2</div> > > <table id="changesetEntry"> > <tr> >@@ -332,220 +478,7 @@ > </tr> > <tr> > <th class="date">date</th> >- <td class="date">Thu Jan 01 00:00:00 1970 +0000 (1970-01-01)</td></tr> >- <tr> >- <th class="author">parents</th> >- <td class="author"></td> >- </tr> >- <tr> >- <th class="author">children</th> >- <td class="author"> <a href="/rev/a4f92ed23982">a4f92ed23982</a></td> >- </tr> >- <tr> >- <th class="files">files</th> >- <td class="files"><a href="/file/2ef0ac749a14/da/foo">da/foo</a> <a href="/file/2ef0ac749a14/foo">foo</a> </td> >- </tr> >- </table> >- >- <div class="overflow"> >- <div class="sourcefirst"> line diff</div> >- >- <div class="source bottomline parity0"><pre><a href="#l1.1" id="l1.1"> 1.1</a> <span class="minusline">--- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- </span><a href="#l1.2" id="l1.2"> 1.2</a> <span class="plusline">+++ b/da/foo Thu Jan 01 00:00:00 1970 +0000 >- </span><a href="#l1.3" id="l1.3"> 1.3</a> <span class="atline">@@ -0,0 +1,1 @@ >- </span><a href="#l1.4" id="l1.4"> 1.4</a> <span class="plusline">+foo >- </span></pre></div><div class="source bottomline parity1"><pre><a href="#l2.1" id="l2.1"> 2.1</a> <span class="minusline">--- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- </span><a href="#l2.2" id="l2.2"> 2.2</a> <span class="plusline">+++ b/foo Thu Jan 01 00:00:00 1970 +0000 >- </span><a href="#l2.3" id="l2.3"> 2.3</a> <span class="atline">@@ -0,0 +1,1 @@ >- </span><a href="#l2.4" id="l2.4"> 2.4</a> <span class="plusline">+foo >- </span></pre></div> >- </div> >- >- </div> >- </div> >- >- >- </body> >- </html> >- >- $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/rev/1/?style=raw' >- 200 Script output follows >- >- >- # HG changeset patch >- # User test >- # Date 0 0 >- # Node ID a4f92ed23982be056b9852de5dfe873eaac7f0de >- # Parent 2ef0ac749a14e4f57a5a822464a0902c6f7f448f >- Added tag 1.0 for changeset 2ef0ac749a14 >- >- diff -r 2ef0ac749a14 -r a4f92ed23982 .hgtags >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/.hgtags Thu Jan 01 00:00:00 1970 +0000 >- @@ -0,0 +1,1 @@ >- +2ef0ac749a14e4f57a5a822464a0902c6f7f448f 1.0 >- >- $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/log?rev=base' >- 200 Script output follows >- >- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> >- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US"> >- <head> >- <link rel="icon" href="/static/hgicon.png" type="image/png" /> >- <meta name="robots" content="index, nofollow" /> >- <link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> >- >- <title>test: searching for base</title> >- </head> >- <body> >- >- <div class="container"> >- <div class="menu"> >- <div class="logo"> >- <a href="http://mercurial.selenic.com/"> >- <img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial"></a> >- </div> >- <ul> >- <li><a href="/shortlog">log</a></li> >- <li><a href="/graph">graph</a></li> >- <li><a href="/tags">tags</a></li> >- <li><a href="/branches">branches</a></li> >- <li><a href="/help">help</a></li> >- </ul> >- </div> >- >- <div class="main"> >- <h2><a href="/">test</a></h2> >- <h3>searching for 'base'</h3> >- >- <form class="search" action="/log"> >- >- <p><input name="rev" id="search1" type="text" size="30"></p> >- <div id="hint">find changesets by author, revision, >- files, or words in the commit message</div> >- </form> >- >- <div class="navigate"> >- <a href="/search/?rev=base&revcount=5">less</a> >- <a href="/search/?rev=base&revcount=20">more</a> >- </div> >- >- <table class="bigtable"> >- <tr> >- <th class="age">age</th> >- <th class="author">author</th> >- <th class="description">description</th> >- </tr> >- <tr class="parity0"> >- <td class="age">1970-01-01</td> >- <td class="author">test</td> >- <td class="description"><a href="/rev/2ef0ac749a14">base</a><span class="tag">1.0</span> </td> >- </tr> >- >- </table> >- >- <div class="navigate"> >- <a href="/search/?rev=base&revcount=5">less</a> >- <a href="/search/?rev=base&revcount=20">more</a> >- </div> >- >- </div> >- </div> >- >- >- >- </body> >- </html> >- >- >-File-related >- >- $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/file/1/foo/?style=raw' >- 200 Script output follows >- >- foo >- $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/annotate/1/foo/?style=raw' >- 200 Script output follows >- >- >- test@0: foo >- >- >- >- >- $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/file/1/?style=raw' >- 200 Script output follows >- >- >- drwxr-xr-x da >- -rw-r--r-- 45 .hgtags >- -rw-r--r-- 4 foo >- >- >- $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/file/1/foo' >- 200 Script output follows >- >- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> >- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US"> >- <head> >- <link rel="icon" href="/static/hgicon.png" type="image/png" /> >- <meta name="robots" content="index, nofollow" /> >- <link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> >- >- <title>test: a4f92ed23982 foo</title> >- </head> >- <body> >- >- <div class="container"> >- <div class="menu"> >- <div class="logo"> >- <a href="http://mercurial.selenic.com/"> >- <img src="/static/hglogo.png" alt="mercurial" /></a> >- </div> >- <ul> >- <li><a href="/shortlog/a4f92ed23982">log</a></li> >- <li><a href="/graph/a4f92ed23982">graph</a></li> >- <li><a href="/tags">tags</a></li> >- <li><a href="/branches">branches</a></li> >- </ul> >- <ul> >- <li><a href="/rev/a4f92ed23982">changeset</a></li> >- <li><a href="/file/a4f92ed23982/">browse</a></li> >- </ul> >- <ul> >- <li class="active">file</li> >- <li><a href="/file/tip/foo">latest</a></li> >- <li><a href="/diff/a4f92ed23982/foo">diff</a></li> >- <li><a href="/annotate/a4f92ed23982/foo">annotate</a></li> >- <li><a href="/log/a4f92ed23982/foo">file log</a></li> >- <li><a href="/raw-file/a4f92ed23982/foo">raw</a></li> >- </ul> >- <ul> >- <li><a href="/help">help</a></li> >- </ul> >- </div> >- >- <div class="main"> >- <h2><a href="/">test</a></h2> >- <h3>view foo @ 1:a4f92ed23982</h3> >- >- <form class="search" action="/log"> >- >- <p><input name="rev" id="search1" type="text" size="30" /></p> >- <div id="hint">find changesets by author, revision, >- files, or words in the commit message</div> >- </form> >- >- <div class="description">Added tag 1.0 for changeset 2ef0ac749a14</div> >- >- <table id="changesetEntry"> >- <tr> >- <th class="author">author</th> >- <td class="author">test</td> >- </tr> >- <tr> >- <th class="date">date</th> >- <td class="date">Thu Jan 01 00:00:00 1970 +0000 (1970-01-01)</td> >+ <td class="date">Thu Jan 01 00:00:02 1970 +0000 (1970-01-01)</td> > </tr> > <tr> > <th class="author">parents</th> >@@ -553,7 +486,7 @@ > </tr> > <tr> > <th class="author">children</th> >- <td class="author"><a href="/file/1d22e65f027e/foo">1d22e65f027e</a> </td> >+ <td class="author"></td> > </tr> > > </table> >@@ -574,31 +507,19 @@ > </html> > > $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/filediff/1/foo/?style=raw' >- 200 Script output follows >- >- >- diff -r 000000000000 -r a4f92ed23982 foo >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/foo Thu Jan 01 00:00:00 1970 +0000 >- @@ -0,0 +1,1 @@ >- +foo >- >- >- >- >+ 500 Internal Server Error >+ >+ Internal Server ErrorSALT1293134972.73 591 1 >+ 200 Script output follows >+ >+ tip 2c0277f05ed49d1c8328fb9ba92fba7a5ebcb33e > > Overviews > > $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/raw-tags' > 200 Script output follows > >- tip 1d22e65f027e5a0609357e7d8e7508cd2ba5d2fe >- 1.0 2ef0ac749a14e4f57a5a822464a0902c6f7f448f >- $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/raw-branches' >- 200 Script output follows >- >- stable 1d22e65f027e5a0609357e7d8e7508cd2ba5d2fe open >- default a4f92ed23982be056b9852de5dfe873eaac7f0de inactive >+ default 2c0277f05ed49d1c8328fb9ba92fba7a5ebcb33e open > $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/summary/?style=gitweb' > 200 Script output follows > >@@ -611,16 +532,16 @@ > <link rel="stylesheet" href="/static/style-gitweb.css" type="text/css" /> > > >- <title>test: Summary</title> >+ <title>test-archive: Summary</title> > <link rel="alternate" type="application/atom+xml" >- href="/atom-log" title="Atom feed for test"/> >+ href="/atom-log" title="Atom feed for test-archive"/> > <link rel="alternate" type="application/rss+xml" >- href="/rss-log" title="RSS feed for test"/> >+ href="/rss-log" title="RSS feed for test-archive"/> > </head> > <body> > > <div class="page_header"> >- <a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="/summary?style=gitweb">test</a> / summary >+ <a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="/summary?style=gitweb">test-archive</a> / summary > > <form action="/log"> > <input type="hidden" name="style" value="gitweb" /> >@@ -637,7 +558,7 @@ > <a href="/graph?style=gitweb">graph</a> | > <a href="/tags?style=gitweb">tags</a> | > <a href="/branches?style=gitweb">branches</a> | >- <a href="/file/1d22e65f027e?style=gitweb">files</a> | >+ <a href="/file/2c0277f05ed4?style=gitweb">files</a> | <a href="/archive/tip.tar.bz2">bz2</a> | <a href="/archive/tip.zip">zip</a> | <a href="/archive/tip.tar.gz">gz</a> | > <a href="/help?style=gitweb">help</a> > <br/> > </div> >@@ -646,52 +567,52 @@ > <table cellspacing="0"> > <tr><td>description</td><td>unknown</td></tr> > <tr><td>owner</td><td>Foo Bar <foo.bar@example.com></td></tr> >- <tr><td>last change</td><td>Thu, 01 Jan 1970 00:00:00 +0000</td></tr> >+ <tr><td>last change</td><td>Sun, 09 Sep 2001 01:46:40 +0000</td></tr> > </table> > > <div><a class="title" href="/shortlog?style=gitweb">changes</a></div> > <table cellspacing="0"> > > <tr class="parity0"> >- <td class="age"><i>1970-01-01</i></td> >+ <td class="age"><i>2001-09-09</i></td> > <td><i>test</i></td> > <td> >- <a class="list" href="/rev/1d22e65f027e?style=gitweb"> >- <b>branch</b> >- <span class="logtags"><span class="branchtag" title="stable">stable</span> <span class="tagtag" title="tip">tip</span> </span> >+ <a class="list" href="/rev/2c0277f05ed4?style=gitweb"> >+ <b>3</b> >+ <span class="logtags"><span class="branchtag" title="default">default</span> <span class="tagtag" title="tip">tip</span> </span> > </a> > </td> > <td class="link" nowrap> >- <a href="/rev/1d22e65f027e?style=gitweb">changeset</a> | >- <a href="/file/1d22e65f027e?style=gitweb">files</a> >+ <a href="/rev/2c0277f05ed4?style=gitweb">changeset</a> | >+ <a href="/file/2c0277f05ed4?style=gitweb">files</a> > </td> > </tr> > <tr class="parity1"> > <td class="age"><i>1970-01-01</i></td> > <td><i>test</i></td> > <td> >- <a class="list" href="/rev/a4f92ed23982?style=gitweb"> >- <b>Added tag 1.0 for changeset 2ef0ac749a14</b> >- <span class="logtags"><span class="branchtag" title="default">default</span> </span> >+ <a class="list" href="/rev/0e6a6674cbcc?style=gitweb"> >+ <b>2</b> >+ <span class="logtags"></span> > </a> > </td> > <td class="link" nowrap> >- <a href="/rev/a4f92ed23982?style=gitweb">changeset</a> | >- <a href="/file/a4f92ed23982?style=gitweb">files</a> >+ <a href="/rev/0e6a6674cbcc?style=gitweb">changeset</a> | >+ <a href="/file/0e6a6674cbcc?style=gitweb">files</a> > </td> > </tr> > <tr class="parity0"> > <td class="age"><i>1970-01-01</i></td> > <td><i>test</i></td> > <td> >- <a class="list" href="/rev/2ef0ac749a14?style=gitweb"> >- <b>base</b> >- <span class="logtags"><span class="tagtag" title="1.0">1.0</span> </span> >+ <a class="list" href="/rev/daa7f7c60e0a?style=gitweb"> >+ <b>1</b> >+ <span class="logtags"></span> > </a> > </td> > <td class="link" nowrap> >- <a href="/rev/2ef0ac749a14?style=gitweb">changeset</a> | >- <a href="/file/2ef0ac749a14?style=gitweb">files</a> >+ <a href="/rev/daa7f7c60e0a?style=gitweb">changeset</a> | >+ <a href="/file/daa7f7c60e0a?style=gitweb">files</a> > </td> > </tr> > <tr class="light"><td colspan="4"><a class="list" href="/shortlog?style=gitweb">...</a></td></tr> >@@ -700,15 +621,6 @@ > <div><a class="title" href="/tags?style=gitweb">tags</a></div> > <table cellspacing="0"> > >- <tr class="parity0"> >- <td class="age"><i>1970-01-01</i></td> >- <td><a class="list" href="/rev/2ef0ac749a14?style=gitweb"><b>1.0</b></a></td> >- <td class="link"> >- <a href="/rev/2ef0ac749a14?style=gitweb">changeset</a> | >- <a href="/log/2ef0ac749a14?style=gitweb">changelog</a> | >- <a href="/file/2ef0ac749a14?style=gitweb">files</a> >- </td> >- </tr> > <tr class="light"><td colspan="3"><a class="list" href="/tags?style=gitweb">...</a></td></tr> > </table> > >@@ -716,23 +628,13 @@ > <table cellspacing="0"> > > <tr class="parity0"> >- <td class="age"><i>1970-01-01</i></td> >- <td><a class="list" href="/shortlog/1d22e65f027e?style=gitweb"><b>1d22e65f027e</b></a></td> >- <td class="">stable</td> >- <td class="link"> >- <a href="/changeset/1d22e65f027e?style=gitweb">changeset</a> | >- <a href="/log/1d22e65f027e?style=gitweb">changelog</a> | >- <a href="/file/1d22e65f027e?style=gitweb">files</a> >- </td> >- </tr> >- <tr class="parity1"> >- <td class="age"><i>1970-01-01</i></td> >- <td><a class="list" href="/shortlog/a4f92ed23982?style=gitweb"><b>a4f92ed23982</b></a></td> >+ <td class="age"><i>2001-09-09</i></td> >+ <td><a class="list" href="/shortlog/2c0277f05ed4?style=gitweb"><b>2c0277f05ed4</b></a></td> > <td class="">default</td> > <td class="link"> >- <a href="/changeset/a4f92ed23982?style=gitweb">changeset</a> | >- <a href="/log/a4f92ed23982?style=gitweb">changelog</a> | >- <a href="/file/a4f92ed23982?style=gitweb">files</a> >+ <a href="/changeset/2c0277f05ed4?style=gitweb">changeset</a> | >+ <a href="/log/2c0277f05ed4?style=gitweb">changelog</a> | >+ <a href="/file/2c0277f05ed4?style=gitweb">files</a> > </td> > </tr> > <tr class="light"> >@@ -740,7 +642,7 @@ > </tr> > </table> > <div class="page_footer"> >- <div class="page_footer_text">test</div> >+ <div class="page_footer_text">test-archive</div> > <div class="rss_logo"> > <a href="/rss-log">RSS</a> > <a href="/atom-log">Atom</a> >@@ -763,17 +665,17 @@ > <link rel="stylesheet" href="/static/style-gitweb.css" type="text/css" /> > > >- <title>test: Graph</title> >+ <title>test-archive: Graph</title> > <link rel="alternate" type="application/atom+xml" >- href="/atom-log" title="Atom feed for test"/> >+ href="/atom-log" title="Atom feed for test-archive"/> > <link rel="alternate" type="application/rss+xml" >- href="/rss-log" title="RSS feed for test"/> >+ href="/rss-log" title="RSS feed for test-archive"/> > <!--[if IE]><script type="text/javascript" src="/static/excanvas.js"></script><![endif]--> > </head> > <body> > > <div class="page_header"> >- <a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="/summary?style=gitweb">test</a> / graph >+ <a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="/summary?style=gitweb">test-archive</a> / graph > </div> > > <form action="/log"> >@@ -789,12 +691,12 @@ > graph | > <a href="/tags?style=gitweb">tags</a> | > <a href="/branches?style=gitweb">branches</a> | >- <a href="/file/1d22e65f027e?style=gitweb">files</a> | >+ <a href="/file/2c0277f05ed4?style=gitweb">files</a> | > <a href="/help?style=gitweb">help</a> > <br/> > <a href="/graph/2?style=gitweb&revcount=30">less</a> > <a href="/graph/2?style=gitweb&revcount=120">more</a> >- | <a href="/graph/2ef0ac749a14?style=gitweb">(0)</a> <a href="/graph/2ef0ac749a14?style=gitweb">-2</a> <a href="/graph/tip?style=gitweb">tip</a> <br/> >+ | <a href="/graph/daa7f7c60e0a?style=gitweb">(0)</a> <a href="/graph/daa7f7c60e0a?style=gitweb">-2</a> <a href="/graph/tip?style=gitweb">tip</a> <br/> > </div> > > <div class="title"> </div> >@@ -811,7 +713,7 @@ > <script> > <!-- hide script content > >- var data = [["1d22e65f027e", [0, 1], [[0, 0, 1]], "branch", "test", "1970-01-01", ["stable", true], ["tip"]], ["a4f92ed23982", [0, 1], [[0, 0, 1]], "Added tag 1.0 for changeset 2ef0ac749a14", "test", "1970-01-01", ["default", true], []], ["2ef0ac749a14", [0, 1], [], "base", "test", "1970-01-01", ["default", false], ["1.0"]]]; >+ var data = [["2c0277f05ed4", [0, 1], [[0, 0, 1]], "3", "test", "2001-09-09", ["default", true], ["tip"]], ["0e6a6674cbcc", [0, 1], [[0, 0, 1]], "2", "test", "1970-01-01", ["default", false], []], ["daa7f7c60e0a", [0, 1], [], "1", "test", "1970-01-01", ["default", false], []]]; > var graph = new Graph(); > graph.scale(39); > >@@ -880,11 +782,11 @@ > <div class="page_nav"> > <a href="/graph/2?style=gitweb&revcount=30">less</a> > <a href="/graph/2?style=gitweb&revcount=120">more</a> >- | <a href="/graph/2ef0ac749a14?style=gitweb">(0)</a> <a href="/graph/2ef0ac749a14?style=gitweb">-2</a> <a href="/graph/tip?style=gitweb">tip</a> >+ | <a href="/graph/daa7f7c60e0a?style=gitweb">(0)</a> <a href="/graph/daa7f7c60e0a?style=gitweb">-2</a> <a href="/graph/tip?style=gitweb">tip</a> > </div> > > <div class="page_footer"> >- <div class="page_footer_text">test</div> >+ <div class="page_footer_text">test-archive</div> > <div class="rss_logo"> > <a href="/rss-log">RSS</a> > <a href="/atom-log">Atom</a> >@@ -901,14 +803,14 @@ > $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '?cmd=capabilities'; echo > 200 Script output follows > >- lookup changegroupsubset branchmap pushkey unbundle=HG10GZ,HG10BZ,HG10UN >+ lookup changegroupsubset branchmap pushkey stream unbundle=HG10GZ,HG10BZ,HG10UN > > heads > > $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '?cmd=heads' > 200 Script output follows > >- 1d22e65f027e5a0609357e7d8e7508cd2ba5d2fe >+ 2c0277f05ed49d1c8328fb9ba92fba7a5ebcb33e > > branches > >@@ -923,31 +825,49 @@ > > | $TESTDIR/printrepr.py > 200 Script output follows > >- x\x9c\xbdTMHUA\x14\xbe\xa8\xf9\xec\xda&\x10\x11*\xb8\x88\x81\x99\xbef\xe6\xce\xbdw\xc6\xf2a\x16E\x1b\x11[%\x98\xcc\xaf\x8f\x8c\xf7\xc0\xf7\x82 >- 4\x11KP2m\x95\xad*\xabE\x05AP\xd0\xc22Z\x14\xf9\x03\xb9j\xa3\x9b$\xa4MJ\xb4\x90\xc0\x9a\x9bO0\x10\xdf\x13\xa2\x81\x0f\x869g\xe6|\xe7\x9c\xef\x8ceY\xf7\xa2KO\xd2\xb7K\x16~\ >- \xe9\xad\x90w\x86\xab\x93W\x8e\xdf\xb0r\\Y\xee6(\xa2)\xf6\x95\xc6\x01\xe4\x1az\x80R\xe8kN\x98\xe7R\xa4\xa9K@\xe0!A\xb4k\xa7U*m\x03\x07\xd8\x92\x1d\xd2\xc9\xa4\x1d\xc2\xe6,\xa5\xcc+\x1f\xef\xafDgi\xef\xab\x1d\x1d\xb7\x9a\xe7[W\xfbc\x8f\xde-\xcd\xe7\xcaz\xb3\xbb\x19\xd3\x81\x10>c>\x08\x00"X\x11\xc2\x84@\xd2\xe7B*L\x00\x01P\x04R\xc3@\xbaB0\xdb8#\x83:\x83\xa2h\xbc=\xcd\xdaS\xe1Y,L\xd3\xa0\xf2\xa8\x94J:\xe6\xd8\x81Q\xe0\xe8d\xa7#\xe2,\xd1\xaeR*\xed \xa5\x01\x13\x01\xa6\x0cb\xe3;\xbe\xaf\xfcK[^wK\xe1N\xaf\xbbk\xe8B\xd1\xf4\xc1\x07\xb3\xab[\x10\xfdkmvwcB\xa6\xa4\xd4G\xc4D\xc2\x141\xad\x91\x10\x00\x08J\x81\xcb}\xee\t\xee+W\xba\x8a\x80\x90|\xd4\xa0\xd6\xa0\xd4T\xde\xe1\x9d,!\xe2\xb5\xa94\xe3\xe7\xd5\x9f\x06\x18\xcba\x03aP\xb8f\xcd\x04\x1a_\\9\xf1\xed\xe4\x9e\xe5\xa6\xd1\xd2\x9f\x03\xa7o\xae\x90H\xf3\xfb\xef\xffH3\xadk >- \xb0\x90\x92\x88\xb9\x14"\x068\xc2\x1e@\x00\xbb\x8a)\xd3\'\x859 >- \xa8\x80\x84S \xa5\xbd-g\x13`\xe4\xdc\xc3H^\xdf\xe2\xc0TM\xc7\xf4BO\xcf\xde\xae\xe5\xae#\x1frM(K\x97`F\x19\x16s\x05GD\xb9\x01\xc1\x00+\x8c|\x9fp\xc11\xf0\x14\x00\x9cJ\x82<\xe0\x12\x9f\xc1\x90\xd0\xf5\xc8\x19>Pr\xaa\xeaW\xf5\xc4\xae\xd1\xfc\x17\xcf\'\x13u\xb1\x9e\xcdHnC\x0e\xcc`\xc8\xa0&\xac\x0e\xf1|\x8c\x10$\xc4\x8c\xa2p\x05`\xdc\x08 \x80\xc4\xd7Rr-\x94\x10\x102\xedi;\xf3f\xf1z\x16\x86\xdb\xd8d\xe5\xe7\x8b\xf5\x8d\rzp\xb2\xfe\xac\xf5\xf2\xd3\xfe\xfckws\xedt\x96b\xd5l\x1c\x0b\x85\xb5\x170\x8f\x11\x84\xb0\x8f\x19\xa0\x00\t_\x07\x1ac\xa2\xc3\x89Z\xe7\x96\xf9 \xccNFg\xc7F\xaa\x8a+\x9a\x9cc_\x17\x1b\x17\x9e]z38<\x97+\xb5,",\xc8\xc8?\\\x91\xff\x17.~U\x96\x97\xf5%\xdeN<\x8e\xf5\x97%\xe7^\xcfL\xed~\xda\x96k\xdc->\x86\x02\x83"\x96H\xa6\xe3\xaas=-\xeb7\xe5\xda\x8f\xbc >+ x\x9c\xad\x94MhSA\x10\xc7\x9f&hy\x86 \x05!\xa0\x87R >+ \xa6\xc1\xa6\xfb\xf1>v\x0fz\xd1\xab\xa6 ((\xd6\xee\xbe\xd9\xb5\x14\xa1\xa0\x01i\x10\x14\x8ax\x90@\x03\x96\x16\xfc\xc2V\x8c\xcd\xa1\x14{\xb2~aA/Z\xb0\xeaA[\xa2\x82\x1eDz\x10A\xaaxq_L\xb5\x85\xd2Dp`\x1e\xec\xee\x0c\xf3\x9b\xf9\x0f\xcf\xb2\xac\xe1\xb9\xe2\xe2\x93\xb8\xdd\x9c)e\x16O\xdf\xd8\xba\xbd\xeb@\xea+XuZ\x8d\\\xc6\x11\xc7B\xb8\xa09CB\t\x0f1\x0f\t\xa2(\x0f\xb8\x8b\x19Q\x1e\x03\x0c\xa0\x02;\xabNfm\xdc\x84l\xdd\xdbk\xdb\xd8\xe4\x96\xe2=:\xfb\xf4\xd9\xce\xdc\xf3\xfd\xe3\xd3\x96\xbc\x9bj\xcd\xb7L\xd7\xcb\xbaZn\xf5\xa95tS\x9b\tJ\xb1\xa3}.\x04P\t\x01H%\x88\xa1"\x8c\xba\x92\x01W\x80\x85o\x9b\xe0\xb4q\xcfx\x031xR\x9c\x08\xef\xfc\xb09\xe3\xeb\x88\xf9L\xedX\x7f\xeaK\xe7\xab+\xdb\xfa\x93?/\x8d\xb5O\xe5:\xefM\xeeZ\x83`\x85\xad\x96\xbb\x9c\xd4\x15(@\x81\xe7y\x82\xfb(\x00&\xb8`\x8eC\x08(J9\x03!5\xf7\x03\x17\xbb\xcbI\x13\x18-Y\x059\xd7.\x8f\xabl\xd0\xbd\x82\x9cV\xab\xe4\x07 >+ \xa5#?\xce\x8e\xdfl\xe8\x1a\xf9py0\x91\xee\x9e-/\xfc\'\xfd\xdb\x8c\x9a\x16Q@\x04\xe5\x98\x08$\x89\xe3"\x82\x1c\xaa\x84b\x8eR\x8e$>\x0f0\x93\x1c\x01\x84t\xf9Dr\x14g\xfaJ/\xef\xcf<\x18\x19l\xec?\x9c\xbf:[\xac\x17\xb0\xc6\xc8\xdb\x8cv\x96D\xc8\tQ\x98kfD\r\x12u\x91\xf0\x1d\x10\x820DA\x806\x11 >+ \x93\x10\xe6\xe2\xa1XL\xf7\x0c\xc5^\x8f\xdd\xda\xd3\xfc\x96\x0e\xcf=\x1cz\xbce5\xc0\x7f\xd0\xb5\xad\xea\xce_U,_{\x94h\x85\x80\xbb>H\xe6s\x1d\x00\xf24\x03@T\x05\x02K.\xa9\xabuE\xe2\xd06\x86\x8dX\x16LD\x0b\xa9s\x9b#\xa9HGqo)\x19\x99{7\x11o\xacW\xb8\x1a\xb3\x8aV\xf7\xbc\x12\xba\x0c\xd5\xb2\x8e\x9d\t\xda\xdf\xbf98\x7f\xfe\xda\xcc\x86\xef\xe5\xc8\xc2\xf5;\x93G\xbf\xd5[u\x8de\xff\xdd\xd8\x9f5\xad\x1c\xc3\xed1}\xa6_\x8c\x16R\x9bZ:\x9av\x7f\xfe\xb4\xef\xe3\xed\xbeG\x17\x06\xca\xf5V\xac\xb1\xa0\xd1\xf0w\xb3t\xf8\x05\xd9\x04>P > > stream_out > > $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '?cmd=stream_out' > 200 Script output follows > >- 1 >- >-failing unbundle, requires POST request >- >- $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '?cmd=unbundle' >+ 0 >+ 5 960 >+ data/foo.i69 >+ ÿÿÿÿÿÿÿÿ.Ò£*$P CêèNä²yÁÝufoo >+ data/baz/bletch.i72 >+ ÿÿÿÿÿÿÿÿc/àÙWÛÍøÝ졹³_õubletch >+ data/bar.i69 >+ ÿÿÿÿÿÿÿÿ°* *P§Mª(Úß°ubar >+ 00manifest.i358 >+ .-ÿÿÿÿÿÿÿÿª]ù®¦`¢ã.hÑÝìufoo2ed2a3912a0b24502043eae84ee4b279c18b90dd >+ .8Zÿÿÿÿ(£1OyªÓ½Í¾¢[ѧxc`ݤÄ"$KC£DSCc£DcSDsÄD#ãÄ4 TC#.øÄf@ÿÿÿÿZfjØ©¨D"Þ3Ú¿Å--4baz/bletch7f632fe0d957db879fcd06f8dd03eca1b9b35ff5 >+ 00changelog.i392 >+ 98ÿÿÿÿÿÿÿÿÚ§÷Æ >+ "OªO÷|¤'`V*òdu9091aa5df980aea60860a2e39c95182e68d1ddec >+ test >+ 1 0 >+ foo >+ >+ 1998ÿÿÿÿjftËÌ=zÐS®Âb»*)$Âu1828a3314f79aad3bdcdbea29512835b8d9ed1a7 >+ test >+ 2 0 >+ bar >+ >+ 2rVHÿÿÿÿ,wð^Ô(û©/ºz^¼³>x5Ê-0@áaw$Ý{®A Q|îóµA@rÎL¤!cÞ·aãzPäÕySYÍþ°½^ýs<E¡ÂÏvSALT1293134972.73 940 0 > 405 push requires POST request > > 0 > push requires POST request > [1] > >-Static files >- >- $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/static/style.css' >+failing unbundle, requires POST request >+ >+ $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '?cmd=unbundle' > 200 Script output follows > > a { text-decoration:none; } >@@ -1061,7 +981,12 @@ > $ "$TESTDIR/killdaemons.py" > $ HGENCODING=cp932 hg serve --config server.uncompressed=False -n test \ > > -p $HGPORT -d --pid-file=hg.pid -E errors.log >+ abort: cannot start server at ':$HGPORT': Address already in use >+ abort: child process failed to start >+ [255] > $ cat hg.pid >> $DAEMON_PIDS >+ cat: hg.pid: No such file or directory >+ [1] > > commit message with Japanese Kanji 'Noh', which ends with '\x5c' > >@@ -1072,8 +997,10 @@ > > $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/graph/' \ > > | grep '^var data =' >- var data = [["40b4d6888e92", [0, 1], [[0, 0, 1]], "\u80fd", "test", "1970-01-01", ["stable", true], ["tip"]], ["1d22e65f027e", [0, 1], [[0, 0, 1]], "branch", "test", "1970-01-01", ["stable", false], []], ["a4f92ed23982", [0, 1], [[0, 0, 1]], "Added tag 1.0 for changeset 2ef0ac749a14", "test", "1970-01-01", ["default", true], []], ["2ef0ac749a14", [0, 1], [], "base", "test", "1970-01-01", ["default", false], ["1.0"]]]; >+ var data = [["2c0277f05ed4", [0, 1], [[0, 0, 1]], "3", "test", "2001-09-09", ["default", true], ["tip"]], ["0e6a6674cbcc", [0, 1], [[0, 0, 1]], "2", "test", "1970-01-01", ["default", false], []], ["daa7f7c60e0a", [0, 1], [], "1", "test", "1970-01-01", ["default", false], []]]; > > ERRORS ENCOUNTERED > > $ cat errors.log >+ cat: errors.log: No such file or directory >+ [1] >!. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-http.t output changed >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-http.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-http.t.err >@@ -13,6 +13,9 @@ > adding foo.d/baR.d.hg/bAR > adding foo.d/foo > $ hg serve -p $HGPORT -d --pid-file=../hg1.pid >+ abort: cannot start server at ':$HGPORT': Address already in use >+ abort: child process failed to start >+ [255] > $ hg --config server.uncompressed=False serve -p $HGPORT1 -d --pid-file=../hg2.pid > > Test server address cannot be reused >@@ -22,21 +25,23 @@ > [255] > $ cd .. > $ cat hg1.pid hg2.pid >> $DAEMON_PIDS >+ cat: hg1.pid: No such file or directory >+ [1] > > clone via stream > > $ hg clone --uncompressed http://localhost:$HGPORT/ copy 2>&1 > streaming all changes >- 6 files to transfer, 606 bytes of data >+ 4 files to transfer, 599 bytes of data > transferred * bytes in * seconds (*B/sec) (glob) > updating to branch default >- 4 files updated, 0 files merged, 0 files removed, 0 files unresolved >+ 2 files updated, 0 files merged, 0 files removed, 0 files unresolved > $ hg verify -R copy > checking changesets > checking manifests > crosschecking files in changesets and manifests > checking files >- 4 files, 1 changesets, 4 total revisions >+ 2 files, 2 changesets, 2 total revisions > > try to clone via stream, should use pull instead > >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-highlight.t output changed >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-highlight.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-highlight.t.err >@@ -51,462 +51,28 @@ > hg serve > > $ hg serve -p $HGPORT -d -n test --pid-file=hg.pid -A access.log -E errors.log >+ abort: cannot start server at ':$HGPORT': Address already in use >+ abort: child process failed to start >+ [255] > $ cat hg.pid >> $DAEMON_PIDS >+ cat: hg.pid: No such file or directory >+ [1] > > hgweb filerevision, html > > $ ("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/file/tip/primes.py') \ > > | sed "s/class=\"k\"/class=\"kn\"/g" | sed "s/class=\"mf\"/class=\"mi\"/g" >- 200 Script output follows >- >- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> >- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US"> >- <head> >- <link rel="icon" href="/static/hgicon.png" type="image/png" /> >- <meta name="robots" content="index, nofollow" /> >- <link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> >- >- <link rel="stylesheet" href="/highlightcss" type="text/css" /> >- <title>test: 853dcd4de2a6 primes.py</title> >- </head> >- <body> >- >- <div class="container"> >- <div class="menu"> >- <div class="logo"> >- <a href="http://mercurial.selenic.com/"> >- <img src="/static/hglogo.png" alt="mercurial" /></a> >- </div> >- <ul> >- <li><a href="/shortlog/853dcd4de2a6">log</a></li> >- <li><a href="/graph/853dcd4de2a6">graph</a></li> >- <li><a href="/tags">tags</a></li> >- <li><a href="/branches">branches</a></li> >- </ul> >- <ul> >- <li><a href="/rev/853dcd4de2a6">changeset</a></li> >- <li><a href="/file/853dcd4de2a6/">browse</a></li> >- </ul> >- <ul> >- <li class="active">file</li> >- <li><a href="/file/tip/primes.py">latest</a></li> >- <li><a href="/diff/853dcd4de2a6/primes.py">diff</a></li> >- <li><a href="/annotate/853dcd4de2a6/primes.py">annotate</a></li> >- <li><a href="/log/853dcd4de2a6/primes.py">file log</a></li> >- <li><a href="/raw-file/853dcd4de2a6/primes.py">raw</a></li> >- </ul> >- <ul> >- <li><a href="/help">help</a></li> >- </ul> >- </div> >- >- <div class="main"> >- <h2><a href="/">test</a></h2> >- <h3>view primes.py @ 0:853dcd4de2a6</h3> >- >- <form class="search" action="/log"> >- >- <p><input name="rev" id="search1" type="text" size="30" /></p> >- <div id="hint">find changesets by author, revision, >- files, or words in the commit message</div> >- </form> >- >- <div class="description">a</div> >- >- <table id="changesetEntry"> >- <tr> >- <th class="author">author</th> >- <td class="author">test</td> >- </tr> >- <tr> >- <th class="date">date</th> >- <td class="date">Thu Jan 01 00:00:00 1970 +0000 (1970-01-01)</td> >- </tr> >- <tr> >- <th class="author">parents</th> >- <td class="author"></td> >- </tr> >- <tr> >- <th class="author">children</th> >- <td class="author"></td> >- </tr> >- >- </table> >- >- <div class="overflow"> >- <div class="sourcefirst"> line source</div> >- >- <div class="parity0 source"><a href="#l1" id="l1"> 1</a> <span class="c">#!/usr/bin/env python</span></div> >- <div class="parity1 source"><a href="#l2" id="l2"> 2</a> </div> >- <div class="parity0 source"><a href="#l3" id="l3"> 3</a> <span class="sd">"""Fun with generators. Corresponding Haskell implementation:</span></div> >- <div class="parity1 source"><a href="#l4" id="l4"> 4</a> </div> >- <div class="parity0 source"><a href="#l5" id="l5"> 5</a> <span class="sd">primes = 2 : sieve [3, 5..]</span></div> >- <div class="parity1 source"><a href="#l6" id="l6"> 6</a> <span class="sd"> where sieve (p:ns) = p : sieve [n | n <- ns, mod n p /= 0]</span></div> >- <div class="parity0 source"><a href="#l7" id="l7"> 7</a> <span class="sd">"""</span></div> >- <div class="parity1 source"><a href="#l8" id="l8"> 8</a> </div> >- <div class="parity0 source"><a href="#l9" id="l9"> 9</a> <span class="kn">from</span> <span class="nn">itertools</span> <span class="kn">import</span> <span class="n">dropwhile</span><span class="p">,</span> <span class="n">ifilter</span><span class="p">,</span> <span class="n">islice</span><span class="p">,</span> <span class="n">count</span><span class="p">,</span> <span class="n">chain</span></div> >- <div class="parity1 source"><a href="#l10" id="l10"> 10</a> </div> >- <div class="parity0 source"><a href="#l11" id="l11"> 11</a> <span class="kn">def</span> <span class="nf">primes</span><span class="p">():</span></div> >- <div class="parity1 source"><a href="#l12" id="l12"> 12</a> <span class="sd">"""Generate all primes."""</span></div> >- <div class="parity0 source"><a href="#l13" id="l13"> 13</a> <span class="kn">def</span> <span class="nf">sieve</span><span class="p">(</span><span class="n">ns</span><span class="p">):</span></div> >- <div class="parity1 source"><a href="#l14" id="l14"> 14</a> <span class="n">p</span> <span class="o">=</span> <span class="n">ns</span><span class="o">.</span><span class="n">next</span><span class="p">()</span></div> >- <div class="parity0 source"><a href="#l15" id="l15"> 15</a> <span class="c"># It is important to yield *here* in order to stop the</span></div> >- <div class="parity1 source"><a href="#l16" id="l16"> 16</a> <span class="c"># infinite recursion.</span></div> >- <div class="parity0 source"><a href="#l17" id="l17"> 17</a> <span class="kn">yield</span> <span class="n">p</span></div> >- <div class="parity1 source"><a href="#l18" id="l18"> 18</a> <span class="n">ns</span> <span class="o">=</span> <span class="n">ifilter</span><span class="p">(</span><span class="kn">lambda</span> <span class="n">n</span><span class="p">:</span> <span class="n">n</span> <span class="o">%</span> <span class="n">p</span> <span class="o">!=</span> <span class="mi">0</span><span class="p">,</span> <span class="n">ns</span><span class="p">)</span></div> >- <div class="parity0 source"><a href="#l19" id="l19"> 19</a> <span class="kn">for</span> <span class="n">n</span> <span class="ow">in</span> <span class="n">sieve</span><span class="p">(</span><span class="n">ns</span><span class="p">):</span></div> >- <div class="parity1 source"><a href="#l20" id="l20"> 20</a> <span class="kn">yield</span> <span class="n">n</span></div> >- <div class="parity0 source"><a href="#l21" id="l21"> 21</a> </div> >- <div class="parity1 source"><a href="#l22" id="l22"> 22</a> <span class="n">odds</span> <span class="o">=</span> <span class="n">ifilter</span><span class="p">(</span><span class="kn">lambda</span> <span class="n">i</span><span class="p">:</span> <span class="n">i</span> <span class="o">%</span> <span class="mi">2</span> <span class="o">==</span> <span class="mi">1</span><span class="p">,</span> <span class="n">count</span><span class="p">())</span></div> >- <div class="parity0 source"><a href="#l23" id="l23"> 23</a> <span class="kn">return</span> <span class="n">chain</span><span class="p">([</span><span class="mi">2</span><span class="p">],</span> <span class="n">sieve</span><span class="p">(</span><span class="n">dropwhile</span><span class="p">(</span><span class="kn">lambda</span> <span class="n">n</span><span class="p">:</span> <span class="n">n</span> <span class="o"><</span> <span class="mi">3</span><span class="p">,</span> <span class="n">odds</span><span class="p">)))</span></div> >- <div class="parity1 source"><a href="#l24" id="l24"> 24</a> </div> >- <div class="parity0 source"><a href="#l25" id="l25"> 25</a> <span class="kn">if</span> <span class="n">__name__</span> <span class="o">==</span> <span class="s">"__main__"</span><span class="p">:</span></div> >- <div class="parity1 source"><a href="#l26" id="l26"> 26</a> <span class="kn">import</span> <span class="nn">sys</span></div> >- <div class="parity0 source"><a href="#l27" id="l27"> 27</a> <span class="kn">try</span><span class="p">:</span></div> >- <div class="parity1 source"><a href="#l28" id="l28"> 28</a> <span class="n">n</span> <span class="o">=</span> <span class="nb">int</span><span class="p">(</span><span class="n">sys</span><span class="o">.</span><span class="n">argv</span><span class="p">[</span><span class="mi">1</span><span class="p">])</span></div> >- <div class="parity0 source"><a href="#l29" id="l29"> 29</a> <span class="kn">except</span> <span class="p">(</span><span class="ne">ValueError</span><span class="p">,</span> <span class="ne">IndexError</span><span class="p">):</span></div> >- <div class="parity1 source"><a href="#l30" id="l30"> 30</a> <span class="n">n</span> <span class="o">=</span> <span class="mi">10</span></div> >- <div class="parity0 source"><a href="#l31" id="l31"> 31</a> <span class="n">p</span> <span class="o">=</span> <span class="n">primes</span><span class="p">()</span></div> >- <div class="parity1 source"><a href="#l32" id="l32"> 32</a> <span class="kn">print</span> <span class="s">"The first </span><span class="si">%d</span><span class="s"> primes: </span><span class="si">%s</span><span class="s">"</span> <span class="o">%</span> <span class="p">(</span><span class="n">n</span><span class="p">,</span> <span class="nb">list</span><span class="p">(</span><span class="n">islice</span><span class="p">(</span><span class="n">p</span><span class="p">,</span> <span class="n">n</span><span class="p">)))</span></div> >- <div class="sourcelast"></div> >- </div> >- </div> >- </div> >- >- >- >- </body> >- </html> >- >+ 500 Internal Server Error >+ >+ Internal Server ErrorSALT1293135058.25 183 0 >+ 500 Internal Server Error >+ >+ Internal Server ErrorSALT1293135058.25 506 0 > > hgweb fileannotate, html > > $ ("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/annotate/tip/primes.py') \ > > | sed "s/class=\"k\"/class=\"kn\"/g" | sed "s/class=\"mi\"/class=\"mf\"/g" >- 200 Script output follows >- >- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> >- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US"> >- <head> >- <link rel="icon" href="/static/hgicon.png" type="image/png" /> >- <meta name="robots" content="index, nofollow" /> >- <link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> >- >- <link rel="stylesheet" href="/highlightcss" type="text/css" /> >- <title>test: primes.py annotate</title> >- </head> >- <body> >- >- <div class="container"> >- <div class="menu"> >- <div class="logo"> >- <a href="http://mercurial.selenic.com/"> >- <img src="/static/hglogo.png" alt="mercurial" /></a> >- </div> >- <ul> >- <li><a href="/shortlog/853dcd4de2a6">log</a></li> >- <li><a href="/graph/853dcd4de2a6">graph</a></li> >- <li><a href="/tags">tags</a></li> >- <li><a href="/branches">branches</a></li> >- </ul> >- >- <ul> >- <li><a href="/rev/853dcd4de2a6">changeset</a></li> >- <li><a href="/file/853dcd4de2a6/">browse</a></li> >- </ul> >- <ul> >- <li><a href="/file/853dcd4de2a6/primes.py">file</a></li> >- <li><a href="/file/tip/primes.py">latest</a></li> >- <li><a href="/diff/853dcd4de2a6/primes.py">diff</a></li> >- <li class="active">annotate</li> >- <li><a href="/log/853dcd4de2a6/primes.py">file log</a></li> >- <li><a href="/raw-annotate/853dcd4de2a6/primes.py">raw</a></li> >- </ul> >- <ul> >- <li><a href="/help">help</a></li> >- </ul> >- </div> >- >- <div class="main"> >- <h2><a href="/">test</a></h2> >- <h3>annotate primes.py @ 0:853dcd4de2a6</h3> >- >- <form class="search" action="/log"> >- >- <p><input name="rev" id="search1" type="text" size="30" /></p> >- <div id="hint">find changesets by author, revision, >- files, or words in the commit message</div> >- </form> >- >- <div class="description">a</div> >- >- <table id="changesetEntry"> >- <tr> >- <th class="author">author</th> >- <td class="author">test</td> >- </tr> >- <tr> >- <th class="date">date</th> >- <td class="date">Thu Jan 01 00:00:00 1970 +0000 (1970-01-01)</td> >- </tr> >- <tr> >- <th class="author">parents</th> >- <td class="author"></td> >- </tr> >- <tr> >- <th class="author">children</th> >- <td class="author"></td> >- </tr> >- >- </table> >- >- <div class="overflow"> >- <table class="bigtable"> >- <tr> >- <th class="annotate">rev</th> >- <th class="line"> line source</th> >- </tr> >- >- <tr class="parity0"> >- <td class="annotate"> >- <a href="/annotate/853dcd4de2a6/primes.py#1" >- title="853dcd4de2a6: a">test@0</a> >- </td> >- <td class="source"><a href="#l1" id="l1"> 1</a> <span class="c">#!/usr/bin/env python</span></td> >- </tr> >- <tr class="parity1"> >- <td class="annotate"> >- <a href="/annotate/853dcd4de2a6/primes.py#2" >- title="853dcd4de2a6: a">test@0</a> >- </td> >- <td class="source"><a href="#l2" id="l2"> 2</a> </td> >- </tr> >- <tr class="parity0"> >- <td class="annotate"> >- <a href="/annotate/853dcd4de2a6/primes.py#3" >- title="853dcd4de2a6: a">test@0</a> >- </td> >- <td class="source"><a href="#l3" id="l3"> 3</a> <span class="sd">"""Fun with generators. Corresponding Haskell implementation:</span></td> >- </tr> >- <tr class="parity1"> >- <td class="annotate"> >- <a href="/annotate/853dcd4de2a6/primes.py#4" >- title="853dcd4de2a6: a">test@0</a> >- </td> >- <td class="source"><a href="#l4" id="l4"> 4</a> </td> >- </tr> >- <tr class="parity0"> >- <td class="annotate"> >- <a href="/annotate/853dcd4de2a6/primes.py#5" >- title="853dcd4de2a6: a">test@0</a> >- </td> >- <td class="source"><a href="#l5" id="l5"> 5</a> <span class="sd">primes = 2 : sieve [3, 5..]</span></td> >- </tr> >- <tr class="parity1"> >- <td class="annotate"> >- <a href="/annotate/853dcd4de2a6/primes.py#6" >- title="853dcd4de2a6: a">test@0</a> >- </td> >- <td class="source"><a href="#l6" id="l6"> 6</a> <span class="sd"> where sieve (p:ns) = p : sieve [n | n <- ns, mod n p /= 0]</span></td> >- </tr> >- <tr class="parity0"> >- <td class="annotate"> >- <a href="/annotate/853dcd4de2a6/primes.py#7" >- title="853dcd4de2a6: a">test@0</a> >- </td> >- <td class="source"><a href="#l7" id="l7"> 7</a> <span class="sd">"""</span></td> >- </tr> >- <tr class="parity1"> >- <td class="annotate"> >- <a href="/annotate/853dcd4de2a6/primes.py#8" >- title="853dcd4de2a6: a">test@0</a> >- </td> >- <td class="source"><a href="#l8" id="l8"> 8</a> </td> >- </tr> >- <tr class="parity0"> >- <td class="annotate"> >- <a href="/annotate/853dcd4de2a6/primes.py#9" >- title="853dcd4de2a6: a">test@0</a> >- </td> >- <td class="source"><a href="#l9" id="l9"> 9</a> <span class="kn">from</span> <span class="nn">itertools</span> <span class="kn">import</span> <span class="n">dropwhile</span><span class="p">,</span> <span class="n">ifilter</span><span class="p">,</span> <span class="n">islice</span><span class="p">,</span> <span class="n">count</span><span class="p">,</span> <span class="n">chain</span></td> >- </tr> >- <tr class="parity1"> >- <td class="annotate"> >- <a href="/annotate/853dcd4de2a6/primes.py#10" >- title="853dcd4de2a6: a">test@0</a> >- </td> >- <td class="source"><a href="#l10" id="l10"> 10</a> </td> >- </tr> >- <tr class="parity0"> >- <td class="annotate"> >- <a href="/annotate/853dcd4de2a6/primes.py#11" >- title="853dcd4de2a6: a">test@0</a> >- </td> >- <td class="source"><a href="#l11" id="l11"> 11</a> <span class="kn">def</span> <span class="nf">primes</span><span class="p">():</span></td> >- </tr> >- <tr class="parity1"> >- <td class="annotate"> >- <a href="/annotate/853dcd4de2a6/primes.py#12" >- title="853dcd4de2a6: a">test@0</a> >- </td> >- <td class="source"><a href="#l12" id="l12"> 12</a> <span class="sd">"""Generate all primes."""</span></td> >- </tr> >- <tr class="parity0"> >- <td class="annotate"> >- <a href="/annotate/853dcd4de2a6/primes.py#13" >- title="853dcd4de2a6: a">test@0</a> >- </td> >- <td class="source"><a href="#l13" id="l13"> 13</a> <span class="kn">def</span> <span class="nf">sieve</span><span class="p">(</span><span class="n">ns</span><span class="p">):</span></td> >- </tr> >- <tr class="parity1"> >- <td class="annotate"> >- <a href="/annotate/853dcd4de2a6/primes.py#14" >- title="853dcd4de2a6: a">test@0</a> >- </td> >- <td class="source"><a href="#l14" id="l14"> 14</a> <span class="n">p</span> <span class="o">=</span> <span class="n">ns</span><span class="o">.</span><span class="n">next</span><span class="p">()</span></td> >- </tr> >- <tr class="parity0"> >- <td class="annotate"> >- <a href="/annotate/853dcd4de2a6/primes.py#15" >- title="853dcd4de2a6: a">test@0</a> >- </td> >- <td class="source"><a href="#l15" id="l15"> 15</a> <span class="c"># It is important to yield *here* in order to stop the</span></td> >- </tr> >- <tr class="parity1"> >- <td class="annotate"> >- <a href="/annotate/853dcd4de2a6/primes.py#16" >- title="853dcd4de2a6: a">test@0</a> >- </td> >- <td class="source"><a href="#l16" id="l16"> 16</a> <span class="c"># infinite recursion.</span></td> >- </tr> >- <tr class="parity0"> >- <td class="annotate"> >- <a href="/annotate/853dcd4de2a6/primes.py#17" >- title="853dcd4de2a6: a">test@0</a> >- </td> >- <td class="source"><a href="#l17" id="l17"> 17</a> <span class="kn">yield</span> <span class="n">p</span></td> >- </tr> >- <tr class="parity1"> >- <td class="annotate"> >- <a href="/annotate/853dcd4de2a6/primes.py#18" >- title="853dcd4de2a6: a">test@0</a> >- </td> >- <td class="source"><a href="#l18" id="l18"> 18</a> <span class="n">ns</span> <span class="o">=</span> <span class="n">ifilter</span><span class="p">(</span><span class="kn">lambda</span> <span class="n">n</span><span class="p">:</span> <span class="n">n</span> <span class="o">%</span> <span class="n">p</span> <span class="o">!=</span> <span class="mf">0</span><span class="p">,</span> <span class="n">ns</span><span class="p">)</span></td> >- </tr> >- <tr class="parity0"> >- <td class="annotate"> >- <a href="/annotate/853dcd4de2a6/primes.py#19" >- title="853dcd4de2a6: a">test@0</a> >- </td> >- <td class="source"><a href="#l19" id="l19"> 19</a> <span class="kn">for</span> <span class="n">n</span> <span class="ow">in</span> <span class="n">sieve</span><span class="p">(</span><span class="n">ns</span><span class="p">):</span></td> >- </tr> >- <tr class="parity1"> >- <td class="annotate"> >- <a href="/annotate/853dcd4de2a6/primes.py#20" >- title="853dcd4de2a6: a">test@0</a> >- </td> >- <td class="source"><a href="#l20" id="l20"> 20</a> <span class="kn">yield</span> <span class="n">n</span></td> >- </tr> >- <tr class="parity0"> >- <td class="annotate"> >- <a href="/annotate/853dcd4de2a6/primes.py#21" >- title="853dcd4de2a6: a">test@0</a> >- </td> >- <td class="source"><a href="#l21" id="l21"> 21</a> </td> >- </tr> >- <tr class="parity1"> >- <td class="annotate"> >- <a href="/annotate/853dcd4de2a6/primes.py#22" >- title="853dcd4de2a6: a">test@0</a> >- </td> >- <td class="source"><a href="#l22" id="l22"> 22</a> <span class="n">odds</span> <span class="o">=</span> <span class="n">ifilter</span><span class="p">(</span><span class="kn">lambda</span> <span class="n">i</span><span class="p">:</span> <span class="n">i</span> <span class="o">%</span> <span class="mf">2</span> <span class="o">==</span> <span class="mf">1</span><span class="p">,</span> <span class="n">count</span><span class="p">())</span></td> >- </tr> >- <tr class="parity0"> >- <td class="annotate"> >- <a href="/annotate/853dcd4de2a6/primes.py#23" >- title="853dcd4de2a6: a">test@0</a> >- </td> >- <td class="source"><a href="#l23" id="l23"> 23</a> <span class="kn">return</span> <span class="n">chain</span><span class="p">([</span><span class="mf">2</span><span class="p">],</span> <span class="n">sieve</span><span class="p">(</span><span class="n">dropwhile</span><span class="p">(</span><span class="kn">lambda</span> <span class="n">n</span><span class="p">:</span> <span class="n">n</span> <span class="o"><</span> <span class="mf">3</span><span class="p">,</span> <span class="n">odds</span><span class="p">)))</span></td> >- </tr> >- <tr class="parity1"> >- <td class="annotate"> >- <a href="/annotate/853dcd4de2a6/primes.py#24" >- title="853dcd4de2a6: a">test@0</a> >- </td> >- <td class="source"><a href="#l24" id="l24"> 24</a> </td> >- </tr> >- <tr class="parity0"> >- <td class="annotate"> >- <a href="/annotate/853dcd4de2a6/primes.py#25" >- title="853dcd4de2a6: a">test@0</a> >- </td> >- <td class="source"><a href="#l25" id="l25"> 25</a> <span class="kn">if</span> <span class="n">__name__</span> <span class="o">==</span> <span class="s">"__main__"</span><span class="p">:</span></td> >- </tr> >- <tr class="parity1"> >- <td class="annotate"> >- <a href="/annotate/853dcd4de2a6/primes.py#26" >- title="853dcd4de2a6: a">test@0</a> >- </td> >- <td class="source"><a href="#l26" id="l26"> 26</a> <span class="kn">import</span> <span class="nn">sys</span></td> >- </tr> >- <tr class="parity0"> >- <td class="annotate"> >- <a href="/annotate/853dcd4de2a6/primes.py#27" >- title="853dcd4de2a6: a">test@0</a> >- </td> >- <td class="source"><a href="#l27" id="l27"> 27</a> <span class="kn">try</span><span class="p">:</span></td> >- </tr> >- <tr class="parity1"> >- <td class="annotate"> >- <a href="/annotate/853dcd4de2a6/primes.py#28" >- title="853dcd4de2a6: a">test@0</a> >- </td> >- <td class="source"><a href="#l28" id="l28"> 28</a> <span class="n">n</span> <span class="o">=</span> <span class="nb">int</span><span class="p">(</span><span class="n">sys</span><span class="o">.</span><span class="n">argv</span><span class="p">[</span><span class="mf">1</span><span class="p">])</span></td> >- </tr> >- <tr class="parity0"> >- <td class="annotate"> >- <a href="/annotate/853dcd4de2a6/primes.py#29" >- title="853dcd4de2a6: a">test@0</a> >- </td> >- <td class="source"><a href="#l29" id="l29"> 29</a> <span class="kn">except</span> <span class="p">(</span><span class="ne">ValueError</span><span class="p">,</span> <span class="ne">IndexError</span><span class="p">):</span></td> >- </tr> >- <tr class="parity1"> >- <td class="annotate"> >- <a href="/annotate/853dcd4de2a6/primes.py#30" >- title="853dcd4de2a6: a">test@0</a> >- </td> >- <td class="source"><a href="#l30" id="l30"> 30</a> <span class="n">n</span> <span class="o">=</span> <span class="mf">10</span></td> >- </tr> >- <tr class="parity0"> >- <td class="annotate"> >- <a href="/annotate/853dcd4de2a6/primes.py#31" >- title="853dcd4de2a6: a">test@0</a> >- </td> >- <td class="source"><a href="#l31" id="l31"> 31</a> <span class="n">p</span> <span class="o">=</span> <span class="n">primes</span><span class="p">()</span></td> >- </tr> >- <tr class="parity1"> >- <td class="annotate"> >- <a href="/annotate/853dcd4de2a6/primes.py#32" >- title="853dcd4de2a6: a">test@0</a> >- </td> >- <td class="source"><a href="#l32" id="l32"> 32</a> <span class="kn">print</span> <span class="s">"The first </span><span class="si">%d</span><span class="s"> primes: </span><span class="si">%s</span><span class="s">"</span> <span class="o">%</span> <span class="p">(</span><span class="n">n</span><span class="p">,</span> <span class="nb">list</span><span class="p">(</span><span class="n">islice</span><span class="p">(</span><span class="n">p</span><span class="p">,</span> <span class="n">n</span><span class="p">)))</span></td> >- </tr> >- </table> >- </div> >- </div> >- </div> >- >- >- >- </body> >- </html> >- >- >-hgweb fileannotate, raw >- >- $ ("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/annotate/tip/primes.py?style=raw') \ >- > | sed "s/test@//" > a >- $ echo "200 Script output follows" > b > $ echo "" >> b > $ echo "" >> b > $ hg annotate "primes.py" >> b >@@ -515,6 +81,52 @@ > $ echo "" >> b > $ echo "" >> b > $ diff -u b a >+ --- b 2010-12-23 20:11:45.000000000 +0000 >+ +++ a 2010-12-23 20:11:36.000000000 +0000 >+ @@ -1,39 +1,3 @@ >+ -200 Script output follows >+ - >+ - >+ -0: #!/usr/bin/env python >+ -0: >+ -0: """Fun with generators. Corresponding Haskell implementation: >+ -0: >+ -0: primes = 2 : sieve [3, 5..] >+ -0: where sieve (p:ns) = p : sieve [n | n <- ns, mod n p /= 0] >+ -0: """ >+ -0: >+ -0: from itertools import dropwhile, ifilter, islice, count, chain >+ -0: >+ -0: def primes(): >+ -0: """Generate all primes.""" >+ -0: def sieve(ns): >+ -0: p = ns.next() >+ -0: # It is important to yield *here* in order to stop the >+ -0: # infinite recursion. >+ -0: yield p >+ -0: ns = ifilter(lambda n: n % p != 0, ns) >+ -0: for n in sieve(ns): >+ -0: yield n >+ -0: >+ -0: odds = ifilter(lambda i: i % 2 == 1, count()) >+ -0: return chain([2], sieve(dropwhile(lambda n: n < 3, odds))) >+ -0: >+ -0: if __name__ == "__main__": >+ -0: import sys >+ -0: try: >+ -0: n = int(sys.argv[1]) >+ -0: except (ValueError, IndexError): >+ -0: n = 10 >+ -0: p = primes() >+ -0: print "The first %d primes: %s" % (n, list(islice(p, n))) >+ - >+ - >+ - >+ +500 Internal Server Error >+ >+ +Internal Server Error >+ \ No newline at end of file >+ [1] > $ echo > > >@@ -522,26 +134,66 @@ > > $ ("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/file/tip/primes.py?style=raw') \ > > > a >+ [1] > $ echo "200 Script output follows" > b > $ echo "" >> b > $ hg cat primes.py >> b > $ diff -u b a >+ --- b 2010-12-23 20:11:55.000000000 +0000 >+ +++ a 2010-12-23 20:11:46.000000000 +0000 >+ @@ -1,34 +1,3 @@ >+ -200 Script output follows >+ +500 Internal Server Error >+ >+ -#!/usr/bin/env python >+ - >+ -"""Fun with generators. Corresponding Haskell implementation: >+ - >+ -primes = 2 : sieve [3, 5..] >+ - where sieve (p:ns) = p : sieve [n | n <- ns, mod n p /= 0] >+ -""" >+ - >+ -from itertools import dropwhile, ifilter, islice, count, chain >+ - >+ -def primes(): >+ - """Generate all primes.""" >+ - def sieve(ns): >+ - p = ns.next() >+ - # It is important to yield *here* in order to stop the >+ - # infinite recursion. >+ - yield p >+ - ns = ifilter(lambda n: n % p != 0, ns) >+ - for n in sieve(ns): >+ - yield n >+ - >+ - odds = ifilter(lambda i: i % 2 == 1, count()) >+ - return chain([2], sieve(dropwhile(lambda n: n < 3, odds))) >+ - >+ -if __name__ == "__main__": >+ - import sys >+ - try: >+ - n = int(sys.argv[1]) >+ - except (ValueError, IndexError): >+ - n = 10 >+ - p = primes() >+ - print "The first %d primes: %s" % (n, list(islice(p, n))) >+ +Internal Server Error >+ \ No newline at end of file >+ [1] > $ echo > > > hgweb highlightcss friendly > > $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT '/highlightcss' > out >+ [1] > $ head -n 4 out >- 200 Script output follows >- >- /* pygments_style = friendly */ >- >+ 500 Internal Server Error >+ >+ Internal Server ErrorSALT1293135058.25 539 0 > $ rm out >- >-errors encountered >- >- $ cat errors.log >+ cat: errors.log: No such file or directory >+ [1] > $ "$TESTDIR/killdaemons.py" > > Change the pygments style >@@ -554,21 +206,24 @@ > hg serve again > > $ hg serve -p $HGPORT -d -n test --pid-file=hg.pid -A access.log -E errors.log >+ abort: cannot start server at ':$HGPORT': Address already in use >+ abort: child process failed to start >+ [255] > $ cat hg.pid >> $DAEMON_PIDS >+ cat: hg.pid: No such file or directory >+ [1] > > hgweb highlightcss fruity > > $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT '/highlightcss' > out >+ [1] > $ head -n 4 out >- 200 Script output follows >- >- /* pygments_style = fruity */ >- >+ 500 Internal Server Error >+ >+ Internal Server ErrorSALT1293135058.25 566 0 > $ rm out >- >-errors encountered >- >- $ cat errors.log >+ cat: errors.log: No such file or directory >+ [1] > $ cd .. > $ hg init eucjp > $ cd eucjp >@@ -589,16 +244,31 @@ > > } > $ hgserveget euc-jp eucjp.txt > % HGENCODING=euc-jp hg serve >+ abort: cannot start server at ':$HGPORT': Address already in use >+ abort: child process failed to start >+ cat: hg.pid: No such file or directory > % hgweb filerevision, html >- <div class="parity0 source"><a href="#l1" id="l1"> 1</a> \xb5\xfe</div> >+ > % errors encountered >+ cat: errors.log: No such file or directory >+ [1] > $ hgserveget utf-8 eucjp.txt > % HGENCODING=utf-8 hg serve >+ abort: cannot start server at ':$HGPORT': Address already in use >+ abort: child process failed to start >+ cat: hg.pid: No such file or directory > % hgweb filerevision, html >- <div class="parity0 source"><a href="#l1" id="l1"> 1</a> \xef\xbf\xbd\xef\xbf\xbd</div> >+ <div class="parity0 source"><a href="#l1" id="l1"> 1</a> \xb5\xfe > % errors encountered >+ cat: errors.log: No such file or directory >+ [1] > $ hgserveget us-ascii eucjp.txt > % HGENCODING=us-ascii hg serve >+ abort: cannot start server at ':$HGPORT': Address already in use >+ abort: child process failed to start >+ cat: hg.pid: No such file or directory > % hgweb filerevision, html >- <div class="parity0 source"><a href="#l1" id="l1"> 1</a> ??</div> >+ <div class="parity0 source"><a href="#l1" id="l1"> 1</a> \xb5\xfe > % errors encountered >+ cat: errors.log: No such file or directory >+ [1] >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-hgweb-filelog.t output changed >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-hgweb-filelog.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-hgweb-filelog.t.err >@@ -104,12 +104,17 @@ > +b > > $ hg serve -n test -p $HGPORT -d --pid-file=hg.pid -E errors.log >+ abort: cannot start server at ':$HGPORT': Address already in use >+ abort: child process failed to start >+ [255] > $ cat hg.pid >> $DAEMON_PIDS >+ cat: hg.pid: No such file or directory >+ [1] > > tip - two revisions > > $ ("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/log/tip/a') >- 200 Script output follows >+ 404 Not Found > > <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> > <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US"> >@@ -118,389 +123,7 @@ > <meta name="robots" content="index, nofollow" /> > <link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> > >- <title>test: a history</title> >- <link rel="alternate" type="application/atom+xml" >- href="/atom-log/tip/a" title="Atom feed for test:a" /> >- <link rel="alternate" type="application/rss+xml" >- href="/rss-log/tip/a" title="RSS feed for test:a" /> >- </head> >- <body> >- >- <div class="container"> >- <div class="menu"> >- <div class="logo"> >- <a href="http://mercurial.selenic.com/"> >- <img src="/static/hglogo.png" alt="mercurial" /></a> >- </div> >- <ul> >- <li><a href="/shortlog/01de2d66a28d">log</a></li> >- <li><a href="/graph/01de2d66a28d">graph</a></li> >- <li><a href="/tags">tags</a></li> >- <li><a href="/branches">branches</a></li> >- </ul> >- <ul> >- <li><a href="/rev/01de2d66a28d">changeset</a></li> >- <li><a href="/file/01de2d66a28d">browse</a></li> >- </ul> >- <ul> >- <li><a href="/file/01de2d66a28d/a">file</a></li> >- <li><a href="/diff/01de2d66a28d/a">diff</a></li> >- <li><a href="/annotate/01de2d66a28d/a">annotate</a></li> >- <li class="active">file log</li> >- <li><a href="/raw-file/01de2d66a28d/a">raw</a></li> >- </ul> >- <ul> >- <li><a href="/help">help</a></li> >- </ul> >- </div> >- >- <div class="main"> >- <h2><a href="/">test</a></h2> >- <h3>log a</h3> >- >- <form class="search" action="/log"> >- >- <p><input name="rev" id="search1" type="text" size="30" /></p> >- <div id="hint">find changesets by author, revision, >- files, or words in the commit message</div> >- </form> >- >- <div class="navigate"> >- <a href="/log/01de2d66a28d/a?revcount=30">less</a> >- <a href="/log/01de2d66a28d/a?revcount=120">more</a> >- | <a href="/log/5ed941583260/a">(0)</a> <a href="/log/tip/a">tip</a> </div> >- >- <table class="bigtable"> >- <tr> >- <th class="age">age</th> >- <th class="author">author</th> >- <th class="description">description</th> >- </tr> >- <tr class="parity0"> >- <td class="age">1970-01-01</td> >- <td class="author">test</td> >- <td class="description"><a href="/rev/01de2d66a28d">second a</a></td> >- </tr> >- <tr class="parity1"> >- <td class="age">1970-01-01</td> >- <td class="author">test</td> >- <td class="description"><a href="/rev/5ed941583260">first a</a></td> >- </tr> >- >- </table> >- >- <div class="navigate"> >- <a href="/log/01de2d66a28d/a?revcount=30">less</a> >- <a href="/log/01de2d66a28d/a?revcount=120">more</a> >- | <a href="/log/5ed941583260/a">(0)</a> <a href="/log/tip/a">tip</a> >- </div> >- >- </div> >- </div> >- >- >- >- </body> >- </html> >- >- >-second version - two revisions >- >- $ ("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/log/3/a') >- 200 Script output follows >- >- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> >- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US"> >- <head> >- <link rel="icon" href="/static/hgicon.png" type="image/png" /> >- <meta name="robots" content="index, nofollow" /> >- <link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> >- >- <title>test: a history</title> >- <link rel="alternate" type="application/atom+xml" >- href="/atom-log/tip/a" title="Atom feed for test:a" /> >- <link rel="alternate" type="application/rss+xml" >- href="/rss-log/tip/a" title="RSS feed for test:a" /> >- </head> >- <body> >- >- <div class="container"> >- <div class="menu"> >- <div class="logo"> >- <a href="http://mercurial.selenic.com/"> >- <img src="/static/hglogo.png" alt="mercurial" /></a> >- </div> >- <ul> >- <li><a href="/shortlog/01de2d66a28d">log</a></li> >- <li><a href="/graph/01de2d66a28d">graph</a></li> >- <li><a href="/tags">tags</a></li> >- <li><a href="/branches">branches</a></li> >- </ul> >- <ul> >- <li><a href="/rev/01de2d66a28d">changeset</a></li> >- <li><a href="/file/01de2d66a28d">browse</a></li> >- </ul> >- <ul> >- <li><a href="/file/01de2d66a28d/a">file</a></li> >- <li><a href="/diff/01de2d66a28d/a">diff</a></li> >- <li><a href="/annotate/01de2d66a28d/a">annotate</a></li> >- <li class="active">file log</li> >- <li><a href="/raw-file/01de2d66a28d/a">raw</a></li> >- </ul> >- <ul> >- <li><a href="/help">help</a></li> >- </ul> >- </div> >- >- <div class="main"> >- <h2><a href="/">test</a></h2> >- <h3>log a</h3> >- >- <form class="search" action="/log"> >- >- <p><input name="rev" id="search1" type="text" size="30" /></p> >- <div id="hint">find changesets by author, revision, >- files, or words in the commit message</div> >- </form> >- >- <div class="navigate"> >- <a href="/log/01de2d66a28d/a?revcount=30">less</a> >- <a href="/log/01de2d66a28d/a?revcount=120">more</a> >- | <a href="/log/5ed941583260/a">(0)</a> <a href="/log/tip/a">tip</a> </div> >- >- <table class="bigtable"> >- <tr> >- <th class="age">age</th> >- <th class="author">author</th> >- <th class="description">description</th> >- </tr> >- <tr class="parity0"> >- <td class="age">1970-01-01</td> >- <td class="author">test</td> >- <td class="description"><a href="/rev/01de2d66a28d">second a</a></td> >- </tr> >- <tr class="parity1"> >- <td class="age">1970-01-01</td> >- <td class="author">test</td> >- <td class="description"><a href="/rev/5ed941583260">first a</a></td> >- </tr> >- >- </table> >- >- <div class="navigate"> >- <a href="/log/01de2d66a28d/a?revcount=30">less</a> >- <a href="/log/01de2d66a28d/a?revcount=120">more</a> >- | <a href="/log/5ed941583260/a">(0)</a> <a href="/log/tip/a">tip</a> >- </div> >- >- </div> >- </div> >- >- >- >- </body> >- </html> >- >- >-first deleted - one revision >- >- $ ("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/log/2/a') >- 200 Script output follows >- >- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> >- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US"> >- <head> >- <link rel="icon" href="/static/hgicon.png" type="image/png" /> >- <meta name="robots" content="index, nofollow" /> >- <link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> >- >- <title>test: a history</title> >- <link rel="alternate" type="application/atom+xml" >- href="/atom-log/tip/a" title="Atom feed for test:a" /> >- <link rel="alternate" type="application/rss+xml" >- href="/rss-log/tip/a" title="RSS feed for test:a" /> >- </head> >- <body> >- >- <div class="container"> >- <div class="menu"> >- <div class="logo"> >- <a href="http://mercurial.selenic.com/"> >- <img src="/static/hglogo.png" alt="mercurial" /></a> >- </div> >- <ul> >- <li><a href="/shortlog/5ed941583260">log</a></li> >- <li><a href="/graph/5ed941583260">graph</a></li> >- <li><a href="/tags">tags</a></li> >- <li><a href="/branches">branches</a></li> >- </ul> >- <ul> >- <li><a href="/rev/5ed941583260">changeset</a></li> >- <li><a href="/file/5ed941583260">browse</a></li> >- </ul> >- <ul> >- <li><a href="/file/5ed941583260/a">file</a></li> >- <li><a href="/diff/5ed941583260/a">diff</a></li> >- <li><a href="/annotate/5ed941583260/a">annotate</a></li> >- <li class="active">file log</li> >- <li><a href="/raw-file/5ed941583260/a">raw</a></li> >- </ul> >- <ul> >- <li><a href="/help">help</a></li> >- </ul> >- </div> >- >- <div class="main"> >- <h2><a href="/">test</a></h2> >- <h3>log a</h3> >- >- <form class="search" action="/log"> >- >- <p><input name="rev" id="search1" type="text" size="30" /></p> >- <div id="hint">find changesets by author, revision, >- files, or words in the commit message</div> >- </form> >- >- <div class="navigate"> >- <a href="/log/5ed941583260/a?revcount=30">less</a> >- <a href="/log/5ed941583260/a?revcount=120">more</a> >- | <a href="/log/5ed941583260/a">(0)</a> <a href="/log/tip/a">tip</a> </div> >- >- <table class="bigtable"> >- <tr> >- <th class="age">age</th> >- <th class="author">author</th> >- <th class="description">description</th> >- </tr> >- <tr class="parity0"> >- <td class="age">1970-01-01</td> >- <td class="author">test</td> >- <td class="description"><a href="/rev/5ed941583260">first a</a></td> >- </tr> >- >- </table> >- >- <div class="navigate"> >- <a href="/log/5ed941583260/a?revcount=30">less</a> >- <a href="/log/5ed941583260/a?revcount=120">more</a> >- | <a href="/log/5ed941583260/a">(0)</a> <a href="/log/tip/a">tip</a> >- </div> >- >- </div> >- </div> >- >- >- >- </body> >- </html> >- >- >-first version - one revision >- >- $ ("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/log/1/a') >- 200 Script output follows >- >- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> >- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US"> >- <head> >- <link rel="icon" href="/static/hgicon.png" type="image/png" /> >- <meta name="robots" content="index, nofollow" /> >- <link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> >- >- <title>test: a history</title> >- <link rel="alternate" type="application/atom+xml" >- href="/atom-log/tip/a" title="Atom feed for test:a" /> >- <link rel="alternate" type="application/rss+xml" >- href="/rss-log/tip/a" title="RSS feed for test:a" /> >- </head> >- <body> >- >- <div class="container"> >- <div class="menu"> >- <div class="logo"> >- <a href="http://mercurial.selenic.com/"> >- <img src="/static/hglogo.png" alt="mercurial" /></a> >- </div> >- <ul> >- <li><a href="/shortlog/5ed941583260">log</a></li> >- <li><a href="/graph/5ed941583260">graph</a></li> >- <li><a href="/tags">tags</a></li> >- <li><a href="/branches">branches</a></li> >- </ul> >- <ul> >- <li><a href="/rev/5ed941583260">changeset</a></li> >- <li><a href="/file/5ed941583260">browse</a></li> >- </ul> >- <ul> >- <li><a href="/file/5ed941583260/a">file</a></li> >- <li><a href="/diff/5ed941583260/a">diff</a></li> >- <li><a href="/annotate/5ed941583260/a">annotate</a></li> >- <li class="active">file log</li> >- <li><a href="/raw-file/5ed941583260/a">raw</a></li> >- </ul> >- <ul> >- <li><a href="/help">help</a></li> >- </ul> >- </div> >- >- <div class="main"> >- <h2><a href="/">test</a></h2> >- <h3>log a</h3> >- >- <form class="search" action="/log"> >- >- <p><input name="rev" id="search1" type="text" size="30" /></p> >- <div id="hint">find changesets by author, revision, >- files, or words in the commit message</div> >- </form> >- >- <div class="navigate"> >- <a href="/log/5ed941583260/a?revcount=30">less</a> >- <a href="/log/5ed941583260/a?revcount=120">more</a> >- | <a href="/log/5ed941583260/a">(0)</a> <a href="/log/tip/a">tip</a> </div> >- >- <table class="bigtable"> >- <tr> >- <th class="age">age</th> >- <th class="author">author</th> >- <th class="description">description</th> >- </tr> >- <tr class="parity0"> >- <td class="age">1970-01-01</td> >- <td class="author">test</td> >- <td class="description"><a href="/rev/5ed941583260">first a</a></td> >- </tr> >- >- </table> >- >- <div class="navigate"> >- <a href="/log/5ed941583260/a?revcount=30">less</a> >- <a href="/log/5ed941583260/a?revcount=120">more</a> >- | <a href="/log/5ed941583260/a">(0)</a> <a href="/log/tip/a">tip</a> >- </div> >- >- </div> >- </div> >- >- >- >- </body> >- </html> >- >- >-before addition - error >- >- $ ("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/log/0/a') >- 404 Not Found >- >- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> >- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US"> >- <head> >- <link rel="icon" href="/static/hgicon.png" type="image/png" /> >- <meta name="robots" content="index, nofollow" /> >- <link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> >- >- <title>test: error</title> >+ <title>test-archive: error</title> > </head> > <body> > >@@ -521,7 +144,7 @@ > > <div class="main"> > >- <h2><a href="/">test</a></h2> >+ <h2><a href="/">test-archive</a></h2> > <h3>error</h3> > > <form class="search" action="/log"> >@@ -536,7 +159,251 @@ > An error occurred while processing your request: > </p> > <p> >- a@6563da9dcf87: not found in manifest >+ a@2c0277f05ed4: not found in manifest >+ </p> >+ </div> >+ </div> >+ </div> >+ >+ >+ >+ </body> >+ </html> >+ >+ [1] >+ >+second version - two revisions >+ >+ $ ("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/log/3/a') >+ 404 Not Found >+ >+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> >+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US"> >+ <head> >+ <link rel="icon" href="/static/hgicon.png" type="image/png" /> >+ <meta name="robots" content="index, nofollow" /> >+ <link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> >+ >+ <title>test-archive: error</title> >+ </head> >+ <body> >+ >+ <div class="container"> >+ <div class="menu"> >+ <div class="logo"> >+ <a href="http://mercurial.selenic.com/"> >+ <img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial" /></a> >+ </div> >+ <ul> >+ <li><a href="/shortlog">log</a></li> >+ <li><a href="/graph">graph</a></li> >+ <li><a href="/tags">tags</a></li> >+ <li><a href="/branches">branches</a></li> >+ <li><a href="/help">help</a></li> >+ </ul> >+ </div> >+ >+ <div class="main"> >+ >+ <h2><a href="/">test-archive</a></h2> >+ <h3>error</h3> >+ >+ <form class="search" action="/log"> >+ >+ <p><input name="rev" id="search1" type="text" size="30"></p> >+ <div id="hint">find changesets by author, revision, >+ files, or words in the commit message</div> >+ </form> >+ >+ <div class="description"> >+ <p> >+ An error occurred while processing your request: >+ </p> >+ <p> >+ revision not found: 3 >+ </p> >+ </div> >+ </div> >+ </div> >+ >+ >+ >+ </body> >+ </html> >+ >+ [1] >+ >+first deleted - one revision >+ >+ $ ("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/log/2/a') >+ 404 Not Found >+ >+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> >+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US"> >+ <head> >+ <link rel="icon" href="/static/hgicon.png" type="image/png" /> >+ <meta name="robots" content="index, nofollow" /> >+ <link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> >+ >+ <title>test-archive: error</title> >+ </head> >+ <body> >+ >+ <div class="container"> >+ <div class="menu"> >+ <div class="logo"> >+ <a href="http://mercurial.selenic.com/"> >+ <img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial" /></a> >+ </div> >+ <ul> >+ <li><a href="/shortlog">log</a></li> >+ <li><a href="/graph">graph</a></li> >+ <li><a href="/tags">tags</a></li> >+ <li><a href="/branches">branches</a></li> >+ <li><a href="/help">help</a></li> >+ </ul> >+ </div> >+ >+ <div class="main"> >+ >+ <h2><a href="/">test-archive</a></h2> >+ <h3>error</h3> >+ >+ <form class="search" action="/log"> >+ >+ <p><input name="rev" id="search1" type="text" size="30"></p> >+ <div id="hint">find changesets by author, revision, >+ files, or words in the commit message</div> >+ </form> >+ >+ <div class="description"> >+ <p> >+ An error occurred while processing your request: >+ </p> >+ <p> >+ a@2c0277f05ed4: not found in manifest >+ </p> >+ </div> >+ </div> >+ </div> >+ >+ >+ >+ </body> >+ </html> >+ >+ [1] >+ >+first version - one revision >+ >+ $ ("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/log/1/a') >+ 404 Not Found >+ >+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> >+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US"> >+ <head> >+ <link rel="icon" href="/static/hgicon.png" type="image/png" /> >+ <meta name="robots" content="index, nofollow" /> >+ <link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> >+ >+ <title>test-archive: error</title> >+ </head> >+ <body> >+ >+ <div class="container"> >+ <div class="menu"> >+ <div class="logo"> >+ <a href="http://mercurial.selenic.com/"> >+ <img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial" /></a> >+ </div> >+ <ul> >+ <li><a href="/shortlog">log</a></li> >+ <li><a href="/graph">graph</a></li> >+ <li><a href="/tags">tags</a></li> >+ <li><a href="/branches">branches</a></li> >+ <li><a href="/help">help</a></li> >+ </ul> >+ </div> >+ >+ <div class="main"> >+ >+ <h2><a href="/">test-archive</a></h2> >+ <h3>error</h3> >+ >+ <form class="search" action="/log"> >+ >+ <p><input name="rev" id="search1" type="text" size="30"></p> >+ <div id="hint">find changesets by author, revision, >+ files, or words in the commit message</div> >+ </form> >+ >+ <div class="description"> >+ <p> >+ An error occurred while processing your request: >+ </p> >+ <p> >+ a@0e6a6674cbcc: not found in manifest >+ </p> >+ </div> >+ </div> >+ </div> >+ >+ >+ >+ </body> >+ </html> >+ >+ [1] >+ >+before addition - error >+ >+ $ ("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/log/0/a') >+ 404 Not Found >+ >+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> >+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US"> >+ <head> >+ <link rel="icon" href="/static/hgicon.png" type="image/png" /> >+ <meta name="robots" content="index, nofollow" /> >+ <link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> >+ >+ <title>test-archive: error</title> >+ </head> >+ <body> >+ >+ <div class="container"> >+ <div class="menu"> >+ <div class="logo"> >+ <a href="http://mercurial.selenic.com/"> >+ <img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial" /></a> >+ </div> >+ <ul> >+ <li><a href="/shortlog">log</a></li> >+ <li><a href="/graph">graph</a></li> >+ <li><a href="/tags">tags</a></li> >+ <li><a href="/branches">branches</a></li> >+ <li><a href="/help">help</a></li> >+ </ul> >+ </div> >+ >+ <div class="main"> >+ >+ <h2><a href="/">test-archive</a></h2> >+ <h3>error</h3> >+ >+ <form class="search" action="/log"> >+ >+ <p><input name="rev" id="search1" type="text" size="30"></p> >+ <div id="hint">find changesets by author, revision, >+ files, or words in the commit message</div> >+ </form> >+ >+ <div class="description"> >+ <p> >+ An error occurred while processing your request: >+ </p> >+ <p> >+ a@daa7f7c60e0a: not found in manifest > </p> > </div> > </div> >@@ -552,7 +419,7 @@ > should show base link, use spartan because it shows it > > $ ("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/log/tip/c?style=spartan') >- 200 Script output follows >+ 404 Not Found > > <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> > <html> >@@ -561,90 +428,18 @@ > <meta name="robots" content="index, nofollow" /> > <link rel="stylesheet" href="/static/style.css" type="text/css" /> > >- <title>test: c history</title> >- <link rel="alternate" type="application/atom+xml" >- href="/atom-log/tip/c" title="Atom feed for test:c"> >- <link rel="alternate" type="application/rss+xml" >- href="/rss-log/tip/c" title="RSS feed for test:c"> >- </head> >- <body> >- >- <div class="buttons"> >- <a href="/log?style=spartan">changelog</a> >- <a href="/shortlog?style=spartan">shortlog</a> >- <a href="/graph?style=spartan">graph</a> >- <a href="/tags?style=spartan">tags</a> >- <a href="/branches?style=spartan">branches</a> >- <a href="/file/b7682196df1c/c?style=spartan">file</a> >- <a href="/annotate/b7682196df1c/c?style=spartan">annotate</a> >- <a href="/help?style=spartan">help</a> >- <a type="application/rss+xml" href="/rss-log/tip/c">rss</a> >- <a type="application/atom+xml" href="/atom-log/tip/c" title="Atom feed for test:c">atom</a> >- </div> >- >- <h2>c revision history</h2> >- >- <p>navigate: <small class="navigate"><a href="/log/1a6696706df2/c?style=spartan">(0)</a> <a href="/log/tip/c?style=spartan">tip</a> </small></p> >- >- <table class="logEntry parity0"> >- <tr> >- <th class="age">1970-01-01:</th> >- <th class="firstline"><a href="/rev/b7682196df1c?style=spartan">change c</a></th> >- </tr> >- <tr> >- <th class="revision">revision 1:</td> >- <td class="node"> >- <a href="/file/b7682196df1c/c?style=spartan">b7682196df1c</a> >- <a href="/diff/b7682196df1c/c?style=spartan">(diff)</a> >- <a href="/annotate/b7682196df1c/c?style=spartan">(annotate)</a> >- </td> >- </tr> >- >- <tr> >- <th class="author">author:</th> >- <td class="author">test</td> >- </tr> >- <tr> >- <th class="date">date:</th> >- <td class="date">Thu Jan 01 00:00:00 1970 +0000</td> >- </tr> >- </table> >- >- >- <table class="logEntry parity1"> >- <tr> >- <th class="age">1970-01-01:</th> >- <th class="firstline"><a href="/rev/1a6696706df2?style=spartan">mv b</a></th> >- </tr> >- <tr> >- <th class="revision">revision 0:</td> >- <td class="node"> >- <a href="/file/1a6696706df2/c?style=spartan">1a6696706df2</a> >- <a href="/diff/1a6696706df2/c?style=spartan">(diff)</a> >- <a href="/annotate/1a6696706df2/c?style=spartan">(annotate)</a> >- </td> >- </tr> >- >- <tr> >- <th>base:</th> >- <td> >- <a href="/file/1e88685f5dde/b?style=spartan"> >- b@1e88685f5dde >- </a> >- </td> >- </tr> >- <tr> >- <th class="author">author:</th> >- <td class="author">test</td> >- </tr> >- <tr> >- <th class="date">date:</th> >- <td class="date">Thu Jan 01 00:00:00 1970 +0000</td> >- </tr> >- </table> >- >- >- >+ <title>Mercurial Error</title> >+ </head> >+ <body> >+ >+ <h2>Mercurial Error</h2> >+ >+ <p> >+ An error occurred while processing your request: >+ </p> >+ <p> >+ c@2c0277f05ed4: not found in manifest >+ </p> > > > <div class="logo"> >@@ -655,7 +450,10 @@ > </body> > </html> > >+ [1] > > errors > > $ cat errors.log >+ cat: errors.log: No such file or directory >+ [1] >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-hgweb-raw.t output changed >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-hgweb-raw.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-hgweb-raw.t.err >@@ -13,22 +13,28 @@ > $ hg commit -d "1 0" -m "Just some text" > > $ hg serve -p $HGPORT -A access.log -E error.log -d --pid-file=hg.pid >+ abort: cannot start server at ':$HGPORT': Address already in use >+ abort: child process failed to start >+ [255] > > $ cat hg.pid >> $DAEMON_PIDS >+ cat: hg.pid: No such file or directory >+ [1] > $ ("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/?f=a23bf1310f6e;file=sub/some%20%22text%22.txt;style=raw' content-type content-length content-disposition) >getoutput.txt & > $ sleep 5 > $ kill `cat hg.pid` >+ cat: hg.pid: No such file or directory >+ kill: usage: kill [-s sigspec | -n signum | -sigspec] pid | jobspec ... or kill -l [sigspec] >+ [1] > $ sleep 1 # wait for server to scream and die > $ cat getoutput.txt >- 200 Script output follows >- content-type: text/plain; charset="ascii" >- content-length: 157 >- content-disposition: inline; filename="some \"text\".txt" >+ 404 Not Found >+ content-type: text/plain; charset=ascii > >- This is just some random text >- that will go inside the file and take a few lines. >- It is very boring to read, but computers don't >- care about things like that. >+ >+ error: revision not found: a23bf1310f6e > $ cat access.log error.log >- 127.0.0.1 - - [*] "GET /?f=a23bf1310f6e;file=sub/some%20%22text%22.txt;style=raw HTTP/1.1" 200 - (glob) >+ cat: access.log: No such file or directory >+ cat: error.log: No such file or directory >+ [1] > >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-http-proxy.t output changed >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-http-proxy.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-http-proxy.t.err >@@ -5,7 +5,12 @@ > $ hg ci -Ama -d '1123456789 0' > adding a > $ hg --config server.uncompressed=True serve -p $HGPORT -d --pid-file=hg.pid >+ abort: cannot start server at ':$HGPORT': Address already in use >+ abort: child process failed to start >+ [255] > $ cat hg.pid >> $DAEMON_PIDS >+ cat: hg.pid: No such file or directory >+ [1] > $ cd .. > $ ("$TESTDIR/tinyproxy.py" $HGPORT1 localhost >proxy.log 2>&1 </dev/null & > $ echo $! > proxy.pid) >@@ -16,7 +21,7 @@ > > $ http_proxy=http://localhost:$HGPORT1/ hg --config http_proxy.always=True clone --uncompressed http://localhost:$HGPORT/ b > streaming all changes >- 3 files to transfer, 303 bytes of data >+ 3 files to transfer, 311 bytes of data > transferred * bytes in * seconds (*B/sec) (glob) > updating to branch default > 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >!. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-http-clone-r.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-http-clone-r.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-http-clone-r.t.err >@@ -1,264 +1,4 @@ >+ >+ ### Abort: timeout after 180 seconds. > > $ hg init remote >- $ cd remote >- >-creating 'remote >- >- $ cat >>afile <<EOF >- > 0 >- > EOF >- $ hg add afile >- $ hg commit -m "0.0" >- $ cat >>afile <<EOF >- > 1 >- > EOF >- $ hg commit -m "0.1" >- $ cat >>afile <<EOF >- > 2 >- > EOF >- $ hg commit -m "0.2" >- $ cat >>afile <<EOF >- > 3 >- > EOF >- $ hg commit -m "0.3" >- $ hg update -C 0 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ cat >>afile <<EOF >- > 1 >- > EOF >- $ hg commit -m "1.1" >- created new head >- $ cat >>afile <<EOF >- > 2 >- > EOF >- $ hg commit -m "1.2" >- $ cat >fred <<EOF >- > a line >- > EOF >- $ cat >>afile <<EOF >- > 3 >- > EOF >- $ hg add fred >- $ hg commit -m "1.3" >- $ hg mv afile adifferentfile >- $ hg commit -m "1.3m" >- $ hg update -C 3 >- 1 files updated, 0 files merged, 2 files removed, 0 files unresolved >- $ hg mv afile anotherfile >- $ hg commit -m "0.3m" >- $ hg debugindex .hg/store/data/afile.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 3 0 0 362fef284ce2 000000000000 000000000000 >- 1 3 5 1 1 125144f7e028 362fef284ce2 000000000000 >- 2 8 7 2 2 4c982badb186 125144f7e028 000000000000 >- 3 15 9 3 3 19b1fc555737 4c982badb186 000000000000 >- $ hg debugindex .hg/store/data/adifferentfile.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 75 0 7 2565f3199a74 000000000000 000000000000 >- $ hg debugindex .hg/store/data/anotherfile.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 75 0 8 2565f3199a74 000000000000 000000000000 >- $ hg debugindex .hg/store/data/fred.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 8 0 6 12ab3bcc5ea4 000000000000 000000000000 >- $ hg debugindex .hg/store/00manifest.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 48 0 0 43eadb1d2d06 000000000000 000000000000 >- 1 48 48 1 1 8b89697eba2c 43eadb1d2d06 000000000000 >- 2 96 48 2 2 626a32663c2f 8b89697eba2c 000000000000 >- 3 144 48 3 3 f54c32f13478 626a32663c2f 000000000000 >- 4 192 58 3 6 de68e904d169 626a32663c2f 000000000000 >- 5 250 68 3 7 09bb521d218d de68e904d169 000000000000 >- 6 318 54 6 8 1fde233dfb0f f54c32f13478 000000000000 >- $ hg verify >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 4 files, 9 changesets, 7 total revisions >- >-Starting server >- >- $ hg serve -p $HGPORT -E ../error.log -d --pid-file=../hg1.pid >- $ cd .. >- $ cat hg1.pid >> $DAEMON_PIDS >- >-clone remote via stream >- >- $ for i in 0 1 2 3 4 5 6 7 8; do >- > hg clone -r "$i" http://localhost:$HGPORT/ test-"$i" >- > if cd test-"$i"; then >- > hg verify >- > cd .. >- > fi >- > done >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 1 files, 1 changesets, 1 total revisions >- adding changesets >- adding manifests >- adding file changes >- added 2 changesets with 2 changes to 1 files >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 1 files, 2 changesets, 2 total revisions >- adding changesets >- adding manifests >- adding file changes >- added 3 changesets with 3 changes to 1 files >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 1 files, 3 changesets, 3 total revisions >- adding changesets >- adding manifests >- adding file changes >- added 4 changesets with 4 changes to 1 files >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 1 files, 4 changesets, 4 total revisions >- adding changesets >- adding manifests >- adding file changes >- added 2 changesets with 2 changes to 1 files >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 1 files, 2 changesets, 2 total revisions >- adding changesets >- adding manifests >- adding file changes >- added 3 changesets with 3 changes to 1 files >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 1 files, 3 changesets, 3 total revisions >- adding changesets >- adding manifests >- adding file changes >- added 4 changesets with 5 changes to 2 files >- updating to branch default >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 2 files, 4 changesets, 5 total revisions >- adding changesets >- adding manifests >- adding file changes >- added 5 changesets with 6 changes to 3 files >- updating to branch default >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 3 files, 5 changesets, 6 total revisions >- adding changesets >- adding manifests >- adding file changes >- added 5 changesets with 5 changes to 2 files >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 2 files, 5 changesets, 5 total revisions >- $ cd test-8 >- $ hg pull ../test-7 >- pulling from ../test-7 >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 4 changesets with 2 changes to 3 files (+1 heads) >- (run 'hg heads' to see heads, 'hg merge' to merge) >- $ hg verify >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 4 files, 9 changesets, 7 total revisions >- $ cd .. >- $ cd test-1 >- $ hg pull -r 4 http://localhost:$HGPORT/ >- pulling from http://localhost:$HGPORT/ >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 0 changes to 1 files (+1 heads) >- (run 'hg heads' to see heads, 'hg merge' to merge) >- $ hg verify >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 1 files, 3 changesets, 2 total revisions >- $ hg pull http://localhost:$HGPORT/ >- pulling from http://localhost:$HGPORT/ >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 6 changesets with 5 changes to 4 files >- (run 'hg update' to get a working copy) >- $ cd .. >- $ cd test-2 >- $ hg pull -r 5 http://localhost:$HGPORT/ >- pulling from http://localhost:$HGPORT/ >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 2 changesets with 0 changes to 1 files (+1 heads) >- (run 'hg heads' to see heads, 'hg merge' to merge) >- $ hg verify >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 1 files, 5 changesets, 3 total revisions >- $ hg pull http://localhost:$HGPORT/ >- pulling from http://localhost:$HGPORT/ >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 4 changesets with 4 changes to 4 files >- (run 'hg update' to get a working copy) >- $ hg verify >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 4 files, 9 changesets, 7 total revisions >- $ cd .. >- $ cat error.log >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-hup.t output changed >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-hup.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-hup.t.err >@@ -8,13 +8,8 @@ > $ (echo lock; echo addchangegroup; sleep 5) > p & > $ Q=$! > $ sleep 3 >- 0 >- 0 >- adding changesets > $ kill -HUP $P > $ wait >- transaction abort! >- rollback completed > killed! > $ echo .hg/* .hg/store/* >- .hg/00changelog.i .hg/journal.branch .hg/journal.desc .hg/journal.dirstate .hg/requires .hg/store .hg/store/00changelog.i .hg/store/00changelog.i.a >+ .hg/00changelog.i .hg/requires .hg/store .hg/store/* >!.. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-hgwebdir.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-hgwebdir.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-hgwebdir.t.err >@@ -1,648 +1,6 @@ >+ >+ ### Abort: timeout after 180 seconds. > Tests some basic hgwebdir functionality. Tests setting up paths and > collection, different forms of 404s and the subdirectory support. > > $ mkdir webdir >- $ cd webdir >- $ hg init a >- $ echo a > a/a >- $ hg --cwd a ci -Ama -d'1 0' >- adding a >- >-create a mercurial queue repository >- >- $ hg --cwd a qinit --config extensions.hgext.mq= -c >- $ hg init b >- $ echo b > b/b >- $ hg --cwd b ci -Amb -d'2 0' >- adding b >- >-create a nested repository >- >- $ cd b >- $ hg init d >- $ echo d > d/d >- $ hg --cwd d ci -Amd -d'3 0' >- adding d >- $ cd .. >- $ hg init c >- $ echo c > c/c >- $ hg --cwd c ci -Amc -d'3 0' >- adding c >- >-create repository without .hg/store >- >- $ hg init nostore >- $ rm -R nostore/.hg/store >- $ root=`pwd` >- $ cd .. >- $ cat > paths.conf <<EOF >- > [paths] >- > a=$root/a >- > b=$root/b >- > EOF >- $ hg serve -p $HGPORT -d --pid-file=hg.pid --webdir-conf paths.conf \ >- > -A access-paths.log -E error-paths-1.log >- $ cat hg.pid >> $DAEMON_PIDS >- >-should give a 404 - file does not exist >- >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT '/a/file/tip/bork?style=raw' >- 404 Not Found >- >- >- error: bork@8580ff50825a: not found in manifest >- [1] >- >-should succeed >- >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT '/?style=raw' >- 200 Script output follows >- >- >- /a/ >- /b/ >- >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT '/a/file/tip/a?style=raw' >- 200 Script output follows >- >- a >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT '/b/file/tip/b?style=raw' >- 200 Script output follows >- >- b >- >-should give a 404 - repo is not published >- >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT '/c/file/tip/c?style=raw' >- 404 Not Found >- >- >- error: repository c not found >- [1] >- >-atom-log without basedir >- >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT '/a/atom-log' | grep '<link' >- <link rel="self" href="http://*:$HGPORT/a/atom-log"/> (glob) >- <link rel="alternate" href="http://*:$HGPORT/a/"/> (glob) >- <link href="http://*:$HGPORT/a/rev/8580ff50825a"/> (glob) >- >-rss-log without basedir >- >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT '/a/rss-log' | grep '<guid' >- <guid isPermaLink="true">http://*:$HGPORT/a/rev/8580ff50825a</guid> (glob) >- $ cat > paths.conf <<EOF >- > [paths] >- > t/a/=$root/a >- > b=$root/b >- > coll=$root/* >- > rcoll=$root/** >- > star=* >- > starstar=** >- > EOF >- $ hg serve -p $HGPORT1 -d --pid-file=hg.pid --webdir-conf paths.conf \ >- > -A access-paths.log -E error-paths-2.log >- $ cat hg.pid >> $DAEMON_PIDS >- >-should succeed, slashy names >- >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT1 '/?style=raw' >- 200 Script output follows >- >- >- /t/a/ >- /b/ >- /coll/a/ >- /coll/a/.hg/patches/ >- /coll/b/ >- /coll/c/ >- /rcoll/a/ >- /rcoll/a/.hg/patches/ >- /rcoll/b/ >- /rcoll/b/d/ >- /rcoll/c/ >- /star/webdir/a/ >- /star/webdir/a/.hg/patches/ >- /star/webdir/b/ >- /star/webdir/c/ >- /starstar/webdir/a/ >- /starstar/webdir/a/.hg/patches/ >- /starstar/webdir/b/ >- /starstar/webdir/b/d/ >- /starstar/webdir/c/ >- >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT1 '/?style=paper' >- 200 Script output follows >- >- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> >- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US"> >- <head> >- <link rel="icon" href="/static/hgicon.png" type="image/png" /> >- <meta name="robots" content="index, nofollow" /> >- <link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> >- >- <title>Mercurial repositories index</title> >- </head> >- <body> >- >- <div class="container"> >- <div class="menu"> >- <a href="http://mercurial.selenic.com/"> >- <img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial" /></a> >- </div> >- <div class="main"> >- <h2>Mercurial Repositories</h2> >- >- <table class="bigtable"> >- <tr> >- <th><a href="?sort=name">Name</a></th> >- <th><a href="?sort=description">Description</a></th> >- <th><a href="?sort=contact">Contact</a></th> >- <th><a href="?sort=lastchange">Last modified</a></th> >- <th> </th> >- </tr> >- >- <tr class="parity0"> >- <td><a href="/t/a/?style=paper">t/a</a></td> >- <td>unknown</td> >- <td>Foo Bar <foo.bar@example.com></td> >- <td class="age">* ago</td> (glob) >- <td class="indexlinks"></td> >- </tr> >- >- <tr class="parity1"> >- <td><a href="/b/?style=paper">b</a></td> >- <td>unknown</td> >- <td>Foo Bar <foo.bar@example.com></td> >- <td class="age">* ago</td> (glob) >- <td class="indexlinks"></td> >- </tr> >- >- <tr class="parity0"> >- <td><a href="/coll/a/?style=paper">coll/a</a></td> >- <td>unknown</td> >- <td>Foo Bar <foo.bar@example.com></td> >- <td class="age">* ago</td> (glob) >- <td class="indexlinks"></td> >- </tr> >- >- <tr class="parity1"> >- <td><a href="/coll/a/.hg/patches/?style=paper">coll/a/.hg/patches</a></td> >- <td>unknown</td> >- <td>Foo Bar <foo.bar@example.com></td> >- <td class="age">* ago</td> (glob) >- <td class="indexlinks"></td> >- </tr> >- >- <tr class="parity0"> >- <td><a href="/coll/b/?style=paper">coll/b</a></td> >- <td>unknown</td> >- <td>Foo Bar <foo.bar@example.com></td> >- <td class="age">* ago</td> (glob) >- <td class="indexlinks"></td> >- </tr> >- >- <tr class="parity1"> >- <td><a href="/coll/c/?style=paper">coll/c</a></td> >- <td>unknown</td> >- <td>Foo Bar <foo.bar@example.com></td> >- <td class="age">* ago</td> (glob) >- <td class="indexlinks"></td> >- </tr> >- >- <tr class="parity0"> >- <td><a href="/rcoll/a/?style=paper">rcoll/a</a></td> >- <td>unknown</td> >- <td>Foo Bar <foo.bar@example.com></td> >- <td class="age">* ago</td> (glob) >- <td class="indexlinks"></td> >- </tr> >- >- <tr class="parity1"> >- <td><a href="/rcoll/a/.hg/patches/?style=paper">rcoll/a/.hg/patches</a></td> >- <td>unknown</td> >- <td>Foo Bar <foo.bar@example.com></td> >- <td class="age">* ago</td> (glob) >- <td class="indexlinks"></td> >- </tr> >- >- <tr class="parity0"> >- <td><a href="/rcoll/b/?style=paper">rcoll/b</a></td> >- <td>unknown</td> >- <td>Foo Bar <foo.bar@example.com></td> >- <td class="age">* ago</td> (glob) >- <td class="indexlinks"></td> >- </tr> >- >- <tr class="parity1"> >- <td><a href="/rcoll/b/d/?style=paper">rcoll/b/d</a></td> >- <td>unknown</td> >- <td>Foo Bar <foo.bar@example.com></td> >- <td class="age">* ago</td> (glob) >- <td class="indexlinks"></td> >- </tr> >- >- <tr class="parity0"> >- <td><a href="/rcoll/c/?style=paper">rcoll/c</a></td> >- <td>unknown</td> >- <td>Foo Bar <foo.bar@example.com></td> >- <td class="age">* ago</td> (glob) >- <td class="indexlinks"></td> >- </tr> >- >- <tr class="parity1"> >- <td><a href="/star/webdir/a/?style=paper">star/webdir/a</a></td> >- <td>unknown</td> >- <td>Foo Bar <foo.bar@example.com></td> >- <td class="age">* ago</td> (glob) >- <td class="indexlinks"></td> >- </tr> >- >- <tr class="parity0"> >- <td><a href="/star/webdir/a/.hg/patches/?style=paper">star/webdir/a/.hg/patches</a></td> >- <td>unknown</td> >- <td>Foo Bar <foo.bar@example.com></td> >- <td class="age">* ago</td> (glob) >- <td class="indexlinks"></td> >- </tr> >- >- <tr class="parity1"> >- <td><a href="/star/webdir/b/?style=paper">star/webdir/b</a></td> >- <td>unknown</td> >- <td>Foo Bar <foo.bar@example.com></td> >- <td class="age">* ago</td> (glob) >- <td class="indexlinks"></td> >- </tr> >- >- <tr class="parity0"> >- <td><a href="/star/webdir/c/?style=paper">star/webdir/c</a></td> >- <td>unknown</td> >- <td>Foo Bar <foo.bar@example.com></td> >- <td class="age">* ago</td> (glob) >- <td class="indexlinks"></td> >- </tr> >- >- <tr class="parity1"> >- <td><a href="/starstar/webdir/a/?style=paper">starstar/webdir/a</a></td> >- <td>unknown</td> >- <td>Foo Bar <foo.bar@example.com></td> >- <td class="age">* ago</td> (glob) >- <td class="indexlinks"></td> >- </tr> >- >- <tr class="parity0"> >- <td><a href="/starstar/webdir/a/.hg/patches/?style=paper">starstar/webdir/a/.hg/patches</a></td> >- <td>unknown</td> >- <td>Foo Bar <foo.bar@example.com></td> >- <td class="age">* ago</td> (glob) >- <td class="indexlinks"></td> >- </tr> >- >- <tr class="parity1"> >- <td><a href="/starstar/webdir/b/?style=paper">starstar/webdir/b</a></td> >- <td>unknown</td> >- <td>Foo Bar <foo.bar@example.com></td> >- <td class="age">* ago</td> (glob) >- <td class="indexlinks"></td> >- </tr> >- >- <tr class="parity0"> >- <td><a href="/starstar/webdir/b/d/?style=paper">starstar/webdir/b/d</a></td> >- <td>unknown</td> >- <td>Foo Bar <foo.bar@example.com></td> >- <td class="age">* ago</td> (glob) >- <td class="indexlinks"></td> >- </tr> >- >- <tr class="parity1"> >- <td><a href="/starstar/webdir/c/?style=paper">starstar/webdir/c</a></td> >- <td>unknown</td> >- <td>Foo Bar <foo.bar@example.com></td> >- <td class="age">* ago</td> (glob) >- <td class="indexlinks"></td> >- </tr> >- >- </table> >- </div> >- </div> >- >- >- </body> >- </html> >- >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT1 '/t?style=raw' >- 200 Script output follows >- >- >- /t/a/ >- >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT1 '/t/?style=raw' >- 200 Script output follows >- >- >- /t/a/ >- >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT1 '/t/?style=paper' >- 200 Script output follows >- >- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> >- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US"> >- <head> >- <link rel="icon" href="/static/hgicon.png" type="image/png" /> >- <meta name="robots" content="index, nofollow" /> >- <link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> >- >- <title>Mercurial repositories index</title> >- </head> >- <body> >- >- <div class="container"> >- <div class="menu"> >- <a href="http://mercurial.selenic.com/"> >- <img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial" /></a> >- </div> >- <div class="main"> >- <h2>Mercurial Repositories</h2> >- >- <table class="bigtable"> >- <tr> >- <th><a href="?sort=name">Name</a></th> >- <th><a href="?sort=description">Description</a></th> >- <th><a href="?sort=contact">Contact</a></th> >- <th><a href="?sort=lastchange">Last modified</a></th> >- <th> </th> >- </tr> >- >- <tr class="parity0"> >- <td><a href="/t/a/?style=paper">a</a></td> >- <td>unknown</td> >- <td>Foo Bar <foo.bar@example.com></td> >- <td class="age">* ago</td> (glob) >- <td class="indexlinks"></td> >- </tr> >- >- </table> >- </div> >- </div> >- >- >- </body> >- </html> >- >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT1 '/t/a?style=atom' >- 200 Script output follows >- >- <?xml version="1.0" encoding="ascii"?> >- <feed xmlns="http://www.w3.org/2005/Atom"> >- <!-- Changelog --> >- <id>http://*:$HGPORT1/t/a/</id> (glob) >- <link rel="self" href="http://*:$HGPORT1/t/a/atom-log"/> (glob) >- <link rel="alternate" href="http://*:$HGPORT1/t/a/"/> (glob) >- <title>t/a Changelog</title> >- <updated>1970-01-01T00:00:01+00:00</updated> >- >- <entry> >- <title>a</title> >- <id>http://*:$HGPORT1/t/a/#changeset-8580ff50825a50c8f716709acdf8de0deddcd6ab</id> (glob) >- <link href="http://*:$HGPORT1/t/a/rev/8580ff50825a"/> (glob) >- <author> >- <name>test</name> >- <email>test</email> >- </author> >- <updated>1970-01-01T00:00:01+00:00</updated> >- <published>1970-01-01T00:00:01+00:00</published> >- <content type="xhtml"> >- <div xmlns="http://www.w3.org/1999/xhtml"> >- <pre xml:space="preserve">a</pre> >- </div> >- </content> >- </entry> >- >- </feed> >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT1 '/t/a/?style=atom' >- 200 Script output follows >- >- <?xml version="1.0" encoding="ascii"?> >- <feed xmlns="http://www.w3.org/2005/Atom"> >- <!-- Changelog --> >- <id>http://*:$HGPORT1/t/a/</id> (glob) >- <link rel="self" href="http://*:$HGPORT1/t/a/atom-log"/> (glob) >- <link rel="alternate" href="http://*:$HGPORT1/t/a/"/> (glob) >- <title>t/a Changelog</title> >- <updated>1970-01-01T00:00:01+00:00</updated> >- >- <entry> >- <title>a</title> >- <id>http://*:$HGPORT1/t/a/#changeset-8580ff50825a50c8f716709acdf8de0deddcd6ab</id> (glob) >- <link href="http://*:$HGPORT1/t/a/rev/8580ff50825a"/> (glob) >- <author> >- <name>test</name> >- <email>test</email> >- </author> >- <updated>1970-01-01T00:00:01+00:00</updated> >- <published>1970-01-01T00:00:01+00:00</published> >- <content type="xhtml"> >- <div xmlns="http://www.w3.org/1999/xhtml"> >- <pre xml:space="preserve">a</pre> >- </div> >- </content> >- </entry> >- >- </feed> >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT1 '/t/a/file/tip/a?style=raw' >- 200 Script output follows >- >- a >- >-Test [paths] '*' extension >- >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT1 '/coll/?style=raw' >- 200 Script output follows >- >- >- /coll/a/ >- /coll/a/.hg/patches/ >- /coll/b/ >- /coll/c/ >- >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT1 '/coll/a/file/tip/a?style=raw' >- 200 Script output follows >- >- a >- >-est [paths] '**' extension >- >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT1 '/rcoll/?style=raw' >- 200 Script output follows >- >- >- /rcoll/a/ >- /rcoll/a/.hg/patches/ >- /rcoll/b/ >- /rcoll/b/d/ >- /rcoll/c/ >- >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT1 '/rcoll/b/d/file/tip/d?style=raw' >- 200 Script output follows >- >- d >- $ "$TESTDIR/killdaemons.py" >- $ cat > paths.conf <<EOF >- > [paths] >- > t/a = $root/a >- > t/b = $root/b >- > c = $root/c >- > [web] >- > descend=false >- > EOF >- $ hg serve -p $HGPORT1 -d --pid-file=hg.pid --webdir-conf paths.conf \ >- > -A access-paths.log -E error-paths-3.log >- $ cat hg.pid >> $DAEMON_PIDS >- >-test descend = False >- >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT1 '/?style=raw' >- 200 Script output follows >- >- >- /c/ >- >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT1 '/t/?style=raw' >- 200 Script output follows >- >- >- /t/a/ >- /t/b/ >- >- $ "$TESTDIR/killdaemons.py" >- $ cat > paths.conf <<EOF >- > [paths] >- > nostore = $root/nostore >- > inexistent = $root/inexistent >- > EOF >- $ hg serve -p $HGPORT1 -d --pid-file=hg.pid --webdir-conf paths.conf \ >- > -A access-paths.log -E error-paths-4.log >- $ cat hg.pid >> $DAEMON_PIDS >- >-test inexistent and inaccessible repo should be ignored silently >- >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT1 '/' >- 200 Script output follows >- >- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> >- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US"> >- <head> >- <link rel="icon" href="/static/hgicon.png" type="image/png" /> >- <meta name="robots" content="index, nofollow" /> >- <link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> >- >- <title>Mercurial repositories index</title> >- </head> >- <body> >- >- <div class="container"> >- <div class="menu"> >- <a href="http://mercurial.selenic.com/"> >- <img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial" /></a> >- </div> >- <div class="main"> >- <h2>Mercurial Repositories</h2> >- >- <table class="bigtable"> >- <tr> >- <th><a href="?sort=name">Name</a></th> >- <th><a href="?sort=description">Description</a></th> >- <th><a href="?sort=contact">Contact</a></th> >- <th><a href="?sort=lastchange">Last modified</a></th> >- <th> </th> >- </tr> >- >- </table> >- </div> >- </div> >- >- >- </body> >- </html> >- >- $ cat > collections.conf <<EOF >- > [collections] >- > $root=$root >- > EOF >- $ hg serve --config web.baseurl=http://hg.example.com:8080/ -p $HGPORT2 -d \ >- > --pid-file=hg.pid --webdir-conf collections.conf \ >- > -A access-collections.log -E error-collections.log >- $ cat hg.pid >> $DAEMON_PIDS >- >-collections: should succeed >- >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT2 '/?style=raw' >- 200 Script output follows >- >- >- /a/ >- /a/.hg/patches/ >- /b/ >- /c/ >- >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT2 '/a/file/tip/a?style=raw' >- 200 Script output follows >- >- a >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT2 '/b/file/tip/b?style=raw' >- 200 Script output follows >- >- b >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT2 '/c/file/tip/c?style=raw' >- 200 Script output follows >- >- c >- >-atom-log with basedir / >- >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT2 '/a/atom-log' | grep '<link' >- <link rel="self" href="http://hg.example.com:8080/a/atom-log"/> >- <link rel="alternate" href="http://hg.example.com:8080/a/"/> >- <link href="http://hg.example.com:8080/a/rev/8580ff50825a"/> >- >-rss-log with basedir / >- >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT2 '/a/rss-log' | grep '<guid' >- <guid isPermaLink="true">http://hg.example.com:8080/a/rev/8580ff50825a</guid> >- $ "$TESTDIR/killdaemons.py" >- $ hg serve --config web.baseurl=http://hg.example.com:8080/foo/ -p $HGPORT2 -d \ >- > --pid-file=hg.pid --webdir-conf collections.conf \ >- > -A access-collections-2.log -E error-collections-2.log >- $ cat hg.pid >> $DAEMON_PIDS >- >-atom-log with basedir /foo/ >- >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT2 '/a/atom-log' | grep '<link' >- <link rel="self" href="http://hg.example.com:8080/foo/a/atom-log"/> >- <link rel="alternate" href="http://hg.example.com:8080/foo/a/"/> >- <link href="http://hg.example.com:8080/foo/a/rev/8580ff50825a"/> >- >-rss-log with basedir /foo/ >- >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT2 '/a/rss-log' | grep '<guid' >- <guid isPermaLink="true">http://hg.example.com:8080/foo/a/rev/8580ff50825a</guid> >- >-paths errors 1 >- >- $ cat error-paths-1.log >- >-paths errors 2 >- >- $ cat error-paths-2.log >- >-paths errors 3 >- >- $ cat error-paths-3.log >- >-collections errors >- >- $ cat error-collections.log >- >-collections errors 2 >- >- $ cat error-collections-2.log >!. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-import-eol.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-import-eol.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-import-eol.t.err >@@ -1,3 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ cat > makepatch.py <<EOF > > f = file('eol.diff', 'wb') > > w = f.write >@@ -17,106 +19,3 @@ > > w('+z\r\n') > > w('\ No newline at end of file\r\n') > > EOF >- >- $ hg init repo >- $ cd repo >- $ echo '\.diff' > .hgignore >- >- >-Test different --eol values >- >- $ python -c 'file("a", "wb").write("a\nbbb\ncc\n\nd\ne")' >- $ hg ci -Am adda >- adding .hgignore >- adding a >- $ python ../makepatch.py >- >- >-invalid eol >- >- $ hg --config patch.eol='LFCR' import eol.diff >- applying eol.diff >- abort: unsupported line endings type: LFCR >- [255] >- $ hg revert -a >- >- >-force LF >- >- $ hg --traceback --config patch.eol='LF' import eol.diff >- applying eol.diff >- $ python -c 'print repr(file("a","rb").read())' >- 'a\nyyyy\ncc\n\nd\ne' >- $ hg st >- >- >-force CRLF >- >- $ hg up -C 0 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg --traceback --config patch.eol='CRLF' import eol.diff >- applying eol.diff >- $ python -c 'print repr(file("a","rb").read())' >- 'a\r\nyyyy\r\ncc\r\n\r\nd\r\ne' >- $ hg st >- >- >-auto EOL on LF file >- >- $ hg up -C 0 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg --traceback --config patch.eol='auto' import eol.diff >- applying eol.diff >- $ python -c 'print repr(file("a","rb").read())' >- 'a\nyyyy\ncc\n\nd\ne' >- $ hg st >- >- >-auto EOL on CRLF file >- >- $ python -c 'file("a", "wb").write("a\r\nbbb\r\ncc\r\n\r\nd\r\ne")' >- $ hg commit -m 'switch EOLs in a' >- $ hg --traceback --config patch.eol='auto' import eol.diff >- applying eol.diff >- $ python -c 'print repr(file("a","rb").read())' >- 'a\r\nyyyy\r\ncc\r\n\r\nd\r\ne' >- $ hg st >- >- >-auto EOL on new file or source without any EOL >- >- $ python -c 'file("noeol", "wb").write("noeol")' >- $ hg add noeol >- $ hg commit -m 'add noeol' >- $ python -c 'file("noeol", "wb").write("noeol\r\nnoeol\n")' >- $ python -c 'file("neweol", "wb").write("neweol\nneweol\r\n")' >- $ hg add neweol >- $ hg diff --git > noeol.diff >- $ hg revert --no-backup noeol neweol >- $ rm neweol >- $ hg --traceback --config patch.eol='auto' import -m noeol noeol.diff >- applying noeol.diff >- $ python -c 'print repr(file("noeol","rb").read())' >- 'noeol\r\nnoeol\n' >- $ python -c 'print repr(file("neweol","rb").read())' >- 'neweol\nneweol\r\n' >- $ hg st >- >- >-Test --eol and binary patches >- >- $ python -c 'file("b", "wb").write("a\x00\nb\r\nd")' >- $ hg ci -Am addb >- adding b >- $ python -c 'file("b", "wb").write("a\x00\nc\r\nd")' >- $ hg diff --git > bin.diff >- $ hg revert --no-backup b >- >-binary patch with --eol >- >- $ hg import --config patch.eol='CRLF' -m changeb bin.diff >- applying bin.diff >- $ python -c 'print repr(file("b","rb").read())' >- 'a\x00\nc\r\nd' >- $ hg st >- $ cd .. >!. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-http-branchmap.t output changed >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-http-branchmap.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-http-branchmap.t.err >@@ -10,16 +10,26 @@ > $ hg -R a ci -Am foo > adding foo > $ hgserve -R a --config web.push_ssl=False --config web.allow_push=* --encoding latin1 >- listening at http://*:$HGPORT1/ (bound to 127.0.0.1:$HGPORT1) (glob) >+ abort: cannot start server at 'localhost:$HGPORT1': Address already in use >+ abort: child process failed to start >+ cat: hg.pid: No such file or directory >+ [1] > $ hg --encoding utf-8 clone http://localhost:$HGPORT1 b >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- updating to branch æ >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >+ abort: HTTP Error 500: Internal Server Error >+ [255] > $ hg --encoding utf-8 -R b log >+ abort: repository b not found! >+ [255] >+ $ echo bar >> b/foo >+ /var/tmp/portage/dev-vcs/mercurial-1.7/temp/tmpJYhOkOhg-tst: line 21: b/foo: No such file or directory >+ [1] >+ $ hg -R b ci -m bar >+ abort: repository b not found! >+ [255] >+ $ hg --encoding utf-8 -R b push >+ abort: repository b not found! >+ [255] >+ $ hg -R a --encoding utf-8 log > changeset: 0:867c11ce77b8 > branch: æ > tag: tip >@@ -27,30 +37,10 @@ > date: Thu Jan 01 00:00:00 1970 +0000 > summary: foo > >- $ echo bar >> b/foo >- $ hg -R b ci -m bar >- $ hg --encoding utf-8 -R b push >- pushing to http://localhost:$HGPORT1 >- searching for changes >- remote: adding changesets >- remote: adding manifests >- remote: adding file changes >- remote: added 1 changesets with 1 changes to 1 files >- $ hg -R a --encoding utf-8 log >- changeset: 1:58e7c90d67cb >- branch: æ >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: bar >- >- changeset: 0:867c11ce77b8 >- branch: æ >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: foo >- > $ kill `cat hg.pid` >+ cat: hg.pid: No such file or directory >+ kill: usage: kill [-s sigspec | -n signum | -sigspec] pid | jobspec ... or kill -l [sigspec] >+ [1] > > verify 7e7d56fe4833 (encoding fallback in branchmap to maintain compatibility with 1.3.x) > >@@ -82,11 +72,11 @@ > > commands.serve(myui, repo, stdio=True) > > EOF > $ echo baz >> b/foo >+ /var/tmp/portage/dev-vcs/mercurial-1.7/temp/tmpJYhOkOhg-tst: line 59: b/foo: No such file or directory >+ [1] > $ hg -R b ci -m baz >+ abort: repository b not found! >+ [255] > $ hg push -R b -e 'python oldhg' ssh://dummy/ --encoding latin1 >- pushing to ssh://dummy/ >- searching for changes >- remote: adding changesets >- remote: adding manifests >- remote: adding file changes >- remote: added 1 changesets with 1 changes to 1 files >+ abort: repository b not found! >+ [255] >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-import.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-import.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-import.t.err >@@ -1,924 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ hg init a >- $ mkdir a/d1 >- $ mkdir a/d1/d2 >- $ echo line 1 > a/a >- $ echo line 1 > a/d1/d2/a >- $ hg --cwd a ci -Ama >- adding a >- adding d1/d2/a >- >- $ echo line 2 >> a/a >- $ hg --cwd a ci -u someone -d '1 0' -m'second change' >- >- >-import exported patch >- >- $ hg clone -r0 a b >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 2 changes to 2 files >- updating to branch default >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg --cwd a export tip > tip.patch >- $ hg --cwd b import ../tip.patch >- applying ../tip.patch >- >-message should be same >- >- $ hg --cwd b tip | grep 'second change' >- summary: second change >- >-committer should be same >- >- $ hg --cwd b tip | grep someone >- user: someone >- $ rm -r b >- >- >-import exported patch with external patcher >- >- $ cat > dummypatch.py <<EOF >- > print 'patching file a' >- > file('a', 'wb').write('line2\n') >- > EOF >- $ chmod +x dummypatch.py >- $ hg clone -r0 a b >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 2 changes to 2 files >- updating to branch default >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg --cwd a export tip > tip.patch >- $ hg --config ui.patch='python ../dummypatch.py' --cwd b import ../tip.patch >- applying ../tip.patch >- $ cat b/a >- line2 >- $ rm -r b >- >- >-import of plain diff should fail without message >- >- $ hg clone -r0 a b >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 2 changes to 2 files >- updating to branch default >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg --cwd a diff -r0:1 > tip.patch >- $ hg --cwd b import ../tip.patch >- applying ../tip.patch >- abort: empty commit message >- [255] >- $ rm -r b >- >- >-import of plain diff should be ok with message >- >- $ hg clone -r0 a b >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 2 changes to 2 files >- updating to branch default >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg --cwd a diff -r0:1 > tip.patch >- $ hg --cwd b import -mpatch ../tip.patch >- applying ../tip.patch >- $ rm -r b >- >- >-import of plain diff with specific date and user >- >- $ hg clone -r0 a b >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 2 changes to 2 files >- updating to branch default >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg --cwd a diff -r0:1 > tip.patch >- $ hg --cwd b import -mpatch -d '1 0' -u 'user@nowhere.net' ../tip.patch >- applying ../tip.patch >- $ hg -R b tip -pv >- changeset: 1:ca68f19f3a40 >- tag: tip >- user: user@nowhere.net >- date: Thu Jan 01 00:00:01 1970 +0000 >- files: a >- description: >- patch >- >- >- diff -r 80971e65b431 -r ca68f19f3a40 a >- --- a/a Thu Jan 01 00:00:00 1970 +0000 >- +++ b/a Thu Jan 01 00:00:01 1970 +0000 >- @@ -1,1 +1,2 @@ >- line 1 >- +line 2 >- >- $ rm -r b >- >- >-import of plain diff should be ok with --no-commit >- >- $ hg clone -r0 a b >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 2 changes to 2 files >- updating to branch default >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg --cwd a diff -r0:1 > tip.patch >- $ hg --cwd b import --no-commit ../tip.patch >- applying ../tip.patch >- $ hg --cwd b diff --nodates >- diff -r 80971e65b431 a >- --- a/a >- +++ b/a >- @@ -1,1 +1,2 @@ >- line 1 >- +line 2 >- $ rm -r b >- >- >-import of malformed plain diff should fail >- >- $ hg clone -r0 a b >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 2 changes to 2 files >- updating to branch default >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg --cwd a diff -r0:1 > tip.patch >- $ sed 's/1,1/foo/' < tip.patch > broken.patch >- $ hg --cwd b import -mpatch ../broken.patch >- applying ../broken.patch >- abort: bad hunk #1 >- [255] >- $ rm -r b >- >- >-hg -R repo import >-put the clone in a subdir - having a directory named "a" >-used to hide a bug. >- >- $ mkdir dir >- $ hg clone -r0 a dir/b >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 2 changes to 2 files >- updating to branch default >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg --cwd a export tip > dir/tip.patch >- $ cd dir >- $ hg -R b import tip.patch >- applying tip.patch >- $ cd .. >- $ rm -r dir >- >- >-import from stdin >- >- $ hg clone -r0 a b >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 2 changes to 2 files >- updating to branch default >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg --cwd a export tip | hg --cwd b import - >- applying patch from stdin >- $ rm -r b >- >- >-import two patches in one stream >- >- $ hg init b >- $ hg --cwd a export 0:tip | hg --cwd b import - >- applying patch from stdin >- applied 80971e65b431 >- $ hg --cwd a id >- 1d4bd90af0e4 tip >- $ hg --cwd b id >- 1d4bd90af0e4 tip >- $ rm -r b >- >- >-override commit message >- >- $ hg clone -r0 a b >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 2 changes to 2 files >- updating to branch default >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg --cwd a export tip | hg --cwd b import -m 'override' - >- applying patch from stdin >- $ hg --cwd b tip | grep override >- summary: override >- $ rm -r b >- >- $ cat > mkmsg.py <<EOF >- > import email.Message, sys >- > msg = email.Message.Message() >- > msg.set_payload('email commit message\n' + open('tip.patch', 'rb').read()) >- > msg['Subject'] = 'email patch' >- > msg['From'] = 'email patcher' >- > sys.stdout.write(msg.as_string()) >- > EOF >- >- >-plain diff in email, subject, message body >- >- $ hg clone -r0 a b >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 2 changes to 2 files >- updating to branch default >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg --cwd a diff -r0:1 > tip.patch >- $ python mkmsg.py > msg.patch >- $ hg --cwd b import ../msg.patch >- applying ../msg.patch >- $ hg --cwd b tip | grep email >- user: email patcher >- summary: email patch >- $ rm -r b >- >- >-plain diff in email, no subject, message body >- >- $ hg clone -r0 a b >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 2 changes to 2 files >- updating to branch default >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ grep -v '^Subject:' msg.patch | hg --cwd b import - >- applying patch from stdin >- $ rm -r b >- >- >-plain diff in email, subject, no message body >- >- $ hg clone -r0 a b >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 2 changes to 2 files >- updating to branch default >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ grep -v '^email ' msg.patch | hg --cwd b import - >- applying patch from stdin >- $ rm -r b >- >- >-plain diff in email, no subject, no message body, should fail >- >- $ hg clone -r0 a b >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 2 changes to 2 files >- updating to branch default >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ egrep -v '^(Subject|email)' msg.patch | hg --cwd b import - >- applying patch from stdin >- abort: empty commit message >- [255] >- $ rm -r b >- >- >-hg export in email, should use patch header >- >- $ hg clone -r0 a b >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 2 changes to 2 files >- updating to branch default >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg --cwd a export tip > tip.patch >- $ python mkmsg.py | hg --cwd b import - >- applying patch from stdin >- $ hg --cwd b tip | grep second >- summary: second change >- $ rm -r b >- >- >-subject: duplicate detection, removal of [PATCH] >-The '---' tests the gitsendmail handling without proper mail headers >- >- $ cat > mkmsg2.py <<EOF >- > import email.Message, sys >- > msg = email.Message.Message() >- > msg.set_payload('email patch\n\nnext line\n---\n' + open('tip.patch').read()) >- > msg['Subject'] = '[PATCH] email patch' >- > msg['From'] = 'email patcher' >- > sys.stdout.write(msg.as_string()) >- > EOF >- >- >-plain diff in email, [PATCH] subject, message body with subject >- >- $ hg clone -r0 a b >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 2 changes to 2 files >- updating to branch default >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg --cwd a diff -r0:1 > tip.patch >- $ python mkmsg2.py | hg --cwd b import - >- applying patch from stdin >- $ hg --cwd b tip --template '{desc}\n' >- email patch >- >- next line >- --- >- $ rm -r b >- >- >-Issue963: Parent of working dir incorrect after import of multiple >-patches and rollback >- >-We weren't backing up the correct dirstate file when importing many >-patches: import patch1 patch2; rollback >- >- $ echo line 3 >> a/a >- $ hg --cwd a ci -m'third change' >- $ hg --cwd a export -o '../patch%R' 1 2 >- $ hg clone -qr0 a b >- $ hg --cwd b parents --template 'parent: {rev}\n' >- parent: 0 >- $ hg --cwd b import ../patch1 ../patch2 >- applying ../patch1 >- applying ../patch2 >- applied 1d4bd90af0e4 >- $ hg --cwd b rollback >- rolling back to revision 1 (undo commit) >- $ hg --cwd b parents --template 'parent: {rev}\n' >- parent: 1 >- $ rm -r b >- >- >-importing a patch in a subdirectory failed at the commit stage >- >- $ echo line 2 >> a/d1/d2/a >- $ hg --cwd a ci -u someoneelse -d '1 0' -m'subdir change' >- >-hg import in a subdirectory >- >- $ hg clone -r0 a b >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 2 changes to 2 files >- updating to branch default >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg --cwd a export tip > tmp >- $ sed -e 's/d1\/d2\///' < tmp > tip.patch >- $ dir=`pwd` >- $ cd b/d1/d2 2>&1 > /dev/null >- $ hg import ../../../tip.patch >- applying ../../../tip.patch >- $ cd "$dir" >- >-message should be 'subdir change' >- >- $ hg --cwd b tip | grep 'subdir change' >- summary: subdir change >- >-committer should be 'someoneelse' >- >- $ hg --cwd b tip | grep someoneelse >- user: someoneelse >- >-should be empty >- >- $ hg --cwd b status >- >- >-Test fuzziness (ambiguous patch location, fuzz=2) >- >- $ hg init fuzzy >- $ cd fuzzy >- $ echo line1 > a >- $ echo line0 >> a >- $ echo line3 >> a >- $ hg ci -Am adda >- adding a >- $ echo line1 > a >- $ echo line2 >> a >- $ echo line0 >> a >- $ echo line3 >> a >- $ hg ci -m change a >- $ hg export tip > tip.patch >- $ hg up -C 0 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo line1 > a >- $ echo line0 >> a >- $ echo line1 >> a >- $ echo line0 >> a >- $ hg ci -m brancha >- created new head >- $ hg import --no-commit -v tip.patch >- applying tip.patch >- patching file a >- Hunk #1 succeeded at 1 with fuzz 2 (offset -2 lines). >- $ hg revert -a >- reverting a >- >-test fuzziness with eol=auto >- >- $ hg --config patch.eol=auto import --no-commit -v tip.patch >- applying tip.patch >- patching file a >- Hunk #1 succeeded at 1 with fuzz 2 (offset -2 lines). >- $ cd .. >- >- >-Test hunk touching empty files (issue906) >- >- $ hg init empty >- $ cd empty >- $ touch a >- $ touch b1 >- $ touch c1 >- $ echo d > d >- $ hg ci -Am init >- adding a >- adding b1 >- adding c1 >- adding d >- $ echo a > a >- $ echo b > b1 >- $ hg mv b1 b2 >- $ echo c > c1 >- $ hg copy c1 c2 >- $ rm d >- $ touch d >- $ hg diff --git >- diff --git a/a b/a >- --- a/a >- +++ b/a >- @@ -0,0 +1,1 @@ >- +a >- diff --git a/b1 b/b2 >- rename from b1 >- rename to b2 >- --- a/b1 >- +++ b/b2 >- @@ -0,0 +1,1 @@ >- +b >- diff --git a/c1 b/c1 >- --- a/c1 >- +++ b/c1 >- @@ -0,0 +1,1 @@ >- +c >- diff --git a/c1 b/c2 >- copy from c1 >- copy to c2 >- --- a/c1 >- +++ b/c2 >- @@ -0,0 +1,1 @@ >- +c >- diff --git a/d b/d >- --- a/d >- +++ b/d >- @@ -1,1 +0,0 @@ >- -d >- $ hg ci -m empty >- $ hg export --git tip > empty.diff >- $ hg up -C 0 >- 4 files updated, 0 files merged, 2 files removed, 0 files unresolved >- $ hg import empty.diff >- applying empty.diff >- $ for name in a b1 b2 c1 c2 d; do >- > echo % $name file >- > test -f $name && cat $name >- > done >- % a file >- a >- % b1 file >- % b2 file >- b >- % c1 file >- c >- % c2 file >- c >- % d file >- $ cd .. >- >- >-Test importing a patch ending with a binary file removal >- >- $ hg init binaryremoval >- $ cd binaryremoval >- $ echo a > a >- $ python -c "file('b', 'wb').write('a\x00b')" >- $ hg ci -Am addall >- adding a >- adding b >- $ hg rm a >- $ hg rm b >- $ hg st >- R a >- R b >- $ hg ci -m remove >- $ hg export --git . > remove.diff >- $ cat remove.diff | grep git >- diff --git a/a b/a >- diff --git a/b b/b >- $ hg up -C 0 >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg import remove.diff >- applying remove.diff >- $ hg manifest >- $ cd .. >- >- >-Issue927: test update+rename with common name >- >- $ hg init t >- $ cd t >- $ touch a >- $ hg ci -Am t >- adding a >- $ echo a > a >- >-Here, bfile.startswith(afile) >- >- $ hg copy a a2 >- $ hg ci -m copya >- $ hg export --git tip > copy.diff >- $ hg up -C 0 >- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg import copy.diff >- applying copy.diff >- >-a should contain an 'a' >- >- $ cat a >- a >- >-and a2 should have duplicated it >- >- $ cat a2 >- a >- $ cd .. >- >- >-test -p0 >- >- $ hg init p0 >- $ cd p0 >- $ echo a > a >- $ hg ci -Am t >- adding a >- $ hg import -p0 - << EOF >- > foobar >- > --- a Sat Apr 12 22:43:58 2008 -0400 >- > +++ a Sat Apr 12 22:44:05 2008 -0400 >- > @@ -1,1 +1,1 @@ >- > -a >- > +bb >- > EOF >- applying patch from stdin >- $ hg status >- $ cat a >- bb >- $ cd .. >- >- >-test paths outside repo root >- >- $ mkdir outside >- $ touch outside/foo >- $ hg init inside >- $ cd inside >- $ hg import - <<EOF >- > diff --git a/a b/b >- > rename from ../outside/foo >- > rename to bar >- > EOF >- applying patch from stdin >- abort: ../outside/foo not under root >- [255] >- $ cd .. >- >- >-test import with similarity and git and strip (issue295 et al.) >- >- $ hg init sim >- $ cd sim >- $ echo 'this is a test' > a >- $ hg ci -Ama >- adding a >- $ cat > ../rename.diff <<EOF >- > diff --git a/foo/a b/foo/a >- > deleted file mode 100644 >- > --- a/foo/a >- > +++ /dev/null >- > @@ -1,1 +0,0 @@ >- > -this is a test >- > diff --git a/foo/b b/foo/b >- > new file mode 100644 >- > --- /dev/null >- > +++ b/foo/b >- > @@ -0,0 +1,2 @@ >- > +this is a test >- > +foo >- > EOF >- $ hg import --no-commit -v -s 1 ../rename.diff -p2 >- applying ../rename.diff >- patching file a >- patching file b >- removing a >- adding b >- recording removal of a as rename to b (88% similar) >- $ hg st -C >- A b >- a >- R a >- $ hg revert -a >- undeleting a >- forgetting b >- $ rm b >- $ hg import --no-commit -v -s 100 ../rename.diff -p2 >- applying ../rename.diff >- patching file a >- patching file b >- removing a >- adding b >- $ hg st -C >- A b >- R a >- $ cd .. >- >- >-Issue1495: add empty file from the end of patch >- >- $ hg init addemptyend >- $ cd addemptyend >- $ touch a >- $ hg addremove >- adding a >- $ hg ci -m "commit" >- $ cat > a.patch <<EOF >- > diff --git a/a b/a >- > --- a/a >- > +++ b/a >- > @@ -0,0 +1,1 @@ >- > +a >- > diff --git a/b b/b >- > new file mode 100644 >- > EOF >- $ hg import --no-commit a.patch >- applying a.patch >- $ cd .. >- >- >-create file when source is not /dev/null >- >- $ cat > create.patch <<EOF >- > diff -Naur proj-orig/foo proj-new/foo >- > --- proj-orig/foo 1969-12-31 16:00:00.000000000 -0800 >- > +++ proj-new/foo 2009-07-17 16:50:45.801368000 -0700 >- > @@ -0,0 +1,1 @@ >- > +a >- > EOF >- >-some people have patches like the following too >- >- $ cat > create2.patch <<EOF >- > diff -Naur proj-orig/foo proj-new/foo >- > --- proj-orig/foo.orig 1969-12-31 16:00:00.000000000 -0800 >- > +++ proj-new/foo 2009-07-17 16:50:45.801368000 -0700 >- > @@ -0,0 +1,1 @@ >- > +a >- > EOF >- $ hg init oddcreate >- $ cd oddcreate >- $ hg import --no-commit ../create.patch >- applying ../create.patch >- $ cat foo >- a >- $ rm foo >- $ hg revert foo >- $ hg import --no-commit ../create2.patch >- applying ../create2.patch >- $ cat foo >- a >- >- >-Issue1859: first line mistaken for email headers >- >- $ hg init emailconfusion >- $ cd emailconfusion >- $ cat > a.patch <<EOF >- > module: summary >- > >- > description >- > >- > >- > diff -r 000000000000 -r 9b4c1e343b55 test.txt >- > --- /dev/null >- > +++ b/a >- > @@ -0,0 +1,1 @@ >- > +a >- > EOF >- $ hg import -d '0 0' a.patch >- applying a.patch >- $ hg parents -v >- changeset: 0:5a681217c0ad >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- files: a >- description: >- module: summary >- >- description >- >- >- $ cd .. >- >- >---- in commit message >- >- $ hg init commitconfusion >- $ cd commitconfusion >- $ cat > a.patch <<EOF >- > module: summary >- > >- > --- description >- > >- > diff --git a/a b/a >- > new file mode 100644 >- > --- /dev/null >- > +++ b/a >- > @@ -0,0 +1,1 @@ >- > +a >- > EOF >- > hg import -d '0 0' a.patch >- > hg parents -v >- > cd .. >- > >- > echo '% tricky header splitting' >- > cat > trickyheaders.patch <<EOF >- > From: User A <user@a> >- > Subject: [PATCH] from: tricky! >- > >- > # HG changeset patch >- > # User User B >- > # Date 1266264441 18000 >- > # Branch stable >- > # Node ID f2be6a1170ac83bf31cb4ae0bad00d7678115bc0 >- > # Parent 0000000000000000000000000000000000000000 >- > from: tricky! >- > >- > That is not a header. >- > >- > diff -r 000000000000 -r f2be6a1170ac foo >- > --- /dev/null >- > +++ b/foo >- > @@ -0,0 +1,1 @@ >- > +foo >- > EOF >- applying a.patch >- changeset: 0:f34d9187897d >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- files: a >- description: >- module: summary >- >- >- % tricky header splitting >- >- $ hg init trickyheaders >- $ cd trickyheaders >- $ hg import -d '0 0' ../trickyheaders.patch >- applying ../trickyheaders.patch >- $ hg export --git tip >- # HG changeset patch >- # User User B >- # Date 0 0 >- # Node ID eb56ab91903632294ac504838508cb370c0901d2 >- # Parent 0000000000000000000000000000000000000000 >- from: tricky! >- >- That is not a header. >- >- diff --git a/foo b/foo >- new file mode 100644 >- --- /dev/null >- +++ b/foo >- @@ -0,0 +1,1 @@ >- +foo >- $ cd .. >- >- >-Issue2102: hg export and hg import speak different languages >- >- $ hg init issue2102 >- $ cd issue2102 >- $ mkdir -p src/cmd/gc >- $ touch src/cmd/gc/mksys.bash >- $ hg ci -Am init >- adding src/cmd/gc/mksys.bash >- $ hg import - <<EOF >- > # HG changeset patch >- > # User Rob Pike >- > # Date 1216685449 25200 >- > # Node ID 03aa2b206f499ad6eb50e6e207b9e710d6409c98 >- > # Parent 93d10138ad8df586827ca90b4ddb5033e21a3a84 >- > help management of empty pkg and lib directories in perforce >- > >- > R=gri >- > DELTA=4 (4 added, 0 deleted, 0 changed) >- > OCL=13328 >- > CL=13328 >- > >- > diff --git a/lib/place-holder b/lib/place-holder >- > new file mode 100644 >- > --- /dev/null >- > +++ b/lib/place-holder >- > @@ -0,0 +1,2 @@ >- > +perforce does not maintain empty directories. >- > +this file helps. >- > diff --git a/pkg/place-holder b/pkg/place-holder >- > new file mode 100644 >- > --- /dev/null >- > +++ b/pkg/place-holder >- > @@ -0,0 +1,2 @@ >- > +perforce does not maintain empty directories. >- > +this file helps. >- > diff --git a/src/cmd/gc/mksys.bash b/src/cmd/gc/mksys.bash >- > old mode 100644 >- > new mode 100755 >- > EOF >- applying patch from stdin >- $ hg sum >- parent: 1:d59915696727 tip >- help management of empty pkg and lib directories in perforce >- branch: default >- commit: (clean) >- update: (current) >- $ hg diff --git -c tip >- diff --git a/lib/place-holder b/lib/place-holder >- new file mode 100644 >- --- /dev/null >- +++ b/lib/place-holder >- @@ -0,0 +1,2 @@ >- +perforce does not maintain empty directories. >- +this file helps. >- diff --git a/pkg/place-holder b/pkg/place-holder >- new file mode 100644 >- --- /dev/null >- +++ b/pkg/place-holder >- @@ -0,0 +1,2 @@ >- +perforce does not maintain empty directories. >- +this file helps. >- diff --git a/src/cmd/gc/mksys.bash b/src/cmd/gc/mksys.bash >- old mode 100644 >- new mode 100755 >- $ cd .. >- >- >-diff lines looking like headers >- >- $ hg init difflineslikeheaders >- $ cd difflineslikeheaders >- $ echo a >a >- $ echo b >b >- $ echo c >c >- $ hg ci -Am1 >- adding a >- adding b >- adding c >- >- $ echo "key: value" >>a >- $ echo "key: value" >>b >- $ echo "foo" >>c >- $ hg ci -m2 >- >- $ hg up -C 0 >- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg diff --git -c1 >want >- $ hg diff -c1 | hg import --no-commit - >- applying patch from stdin >- $ hg diff --git >have >- $ diff want have >- $ cd .. >- >!.. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-https.t output changed >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-https.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-https.t.err >@@ -94,7 +94,12 @@ > adding foo.d/baR.d.hg/bAR > adding foo.d/foo > $ hg serve -p $HGPORT -d --pid-file=../hg0.pid --certificate=$PRIV >+ abort: cannot start server at ':$HGPORT': Address already in use >+ abort: child process failed to start >+ [255] > $ cat ../hg0.pid >> $DAEMON_PIDS >+ cat: ../hg0.pid: No such file or directory >+ [1] > > Test server address cannot be reused > >@@ -106,19 +111,11 @@ > clone via pull > > $ hg clone https://localhost:$HGPORT/ copy-pull >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 4 changes to 4 files >- updating to branch default >- 4 files updated, 0 files merged, 0 files removed, 0 files unresolved >+ abort: error: _ssl.c:490: error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol >+ [255] > $ hg verify -R copy-pull >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 4 files, 1 changesets, 4 total revisions >+ abort: repository copy-pull not found! >+ [255] > $ cd test > $ echo bar > bar > $ hg commit -A -d '1 0' -m 2 >@@ -128,44 +125,51 @@ > pull > > $ cd copy-pull >+ /var/tmp/portage/dev-vcs/mercurial-1.7/temp/tmpiRz816hg-tst: line 115: cd: copy-pull: No such file or directory >+ [1] > $ echo '[hooks]' >> .hg/hgrc >+ /var/tmp/portage/dev-vcs/mercurial-1.7/temp/tmpiRz816hg-tst: line 117: .hg/hgrc: No such file or directory >+ [1] > $ echo "changegroup = python '$TESTDIR'/printenv.py changegroup" >> .hg/hgrc >+ /var/tmp/portage/dev-vcs/mercurial-1.7/temp/tmpiRz816hg-tst: line 119: .hg/hgrc: No such file or directory >+ [1] > $ hg pull >- changegroup hook: HG_NODE=5fed3813f7f5e1824344fdc9cf8f63bb662c292d HG_SOURCE=pull HG_URL=https://localhost:$HGPORT/ >- pulling from https://localhost:$HGPORT/ >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- (run 'hg update' to get a working copy) >+ abort: There is no Mercurial repository here (.hg not found)! >+ [255] > $ cd .. > > cacert > > $ hg -R copy-pull pull --config web.cacerts=pub.pem >- pulling from https://localhost:$HGPORT/ >- searching for changes >- no changes found >+ abort: repository copy-pull not found! >+ [255] > $ hg -R copy-pull pull --config web.cacerts=pub.pem https://127.0.0.1:$HGPORT/ >- abort: 127.0.0.1 certificate error: certificate is for localhost >+ abort: repository copy-pull not found! > [255] > $ hg -R copy-pull pull --config web.cacerts=pub-other.pem >- abort: error: *:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed (glob) >+ abort: repository copy-pull not found! > [255] > > Test server cert which isn't valid yet > > $ hg -R test serve -p $HGPORT1 -d --pid-file=hg1.pid --certificate=server-not-yet.pem >+ abort: There is no Mercurial repository here (.hg not found)! >+ [255] > $ cat hg1.pid >> $DAEMON_PIDS >+ cat: hg1.pid: No such file or directory >+ [1] > $ hg -R copy-pull pull --config web.cacerts=pub-not-yet.pem https://localhost:$HGPORT1/ >- abort: error: *:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed (glob) >+ abort: repository copy-pull not found! > [255] > > Test server cert which no longer is valid > > $ hg -R test serve -p $HGPORT2 -d --pid-file=hg2.pid --certificate=server-expired.pem >+ abort: There is no Mercurial repository here (.hg not found)! >+ [255] > $ cat hg2.pid >> $DAEMON_PIDS >+ cat: hg2.pid: No such file or directory >+ [1] > $ hg -R copy-pull pull --config web.cacerts=pub-expired.pem https://localhost:$HGPORT2/ >- abort: error: *:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed (glob) >+ abort: repository copy-pull not found! > [255] >!.... >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-init.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-init.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-init.t.err >@@ -1,3 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > This test tries to exercise the ssh functionality with a dummy script > > $ cat <<EOF > dummyssh >@@ -20,182 +22,3 @@ > > r = os.system(sys.argv[2]) > > sys.exit(bool(r)) > > EOF >- >- $ checknewrepo() >- > { >- > name=$1 >- > if [ -d "$name"/.hg/store ]; then >- > echo store created >- > fi >- > if [ -f "$name"/.hg/00changelog.i ]; then >- > echo 00changelog.i created >- > fi >- > cat "$name"/.hg/requires >- > } >- >-creating 'local' >- >- $ hg init local >- $ checknewrepo local >- store created >- 00changelog.i created >- revlogv1 >- store >- fncache >- dotencode >- $ echo this > local/foo >- $ hg ci --cwd local -A -m "init" >- adding foo >- >-creating repo with format.usestore=false >- >- $ hg --config format.usestore=false init old >- $ checknewrepo old >- revlogv1 >- >-creating repo with format.usefncache=false >- >- $ hg --config format.usefncache=false init old2 >- $ checknewrepo old2 >- store created >- 00changelog.i created >- revlogv1 >- store >- >-creating repo with format.dotencode=false >- >- $ hg --config format.dotencode=false init old3 >- $ checknewrepo old3 >- store created >- 00changelog.i created >- revlogv1 >- store >- fncache >- >-test failure >- >- $ hg init local >- abort: repository local already exists! >- [255] >- >-init+push to remote2 >- >- $ hg init -e "python ./dummyssh" ssh://user@dummy/remote2 >- $ hg incoming -R remote2 local >- comparing with local >- changeset: 0:08b9e9f63b32 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: init >- >- >- $ hg push -R local -e "python ./dummyssh" ssh://user@dummy/remote2 >- pushing to ssh://user@dummy/remote2 >- searching for changes >- remote: adding changesets >- remote: adding manifests >- remote: adding file changes >- remote: added 1 changesets with 1 changes to 1 files >- >-clone to remote1 >- >- $ hg clone -e "python ./dummyssh" local ssh://user@dummy/remote1 >- searching for changes >- remote: adding changesets >- remote: adding manifests >- remote: adding file changes >- remote: added 1 changesets with 1 changes to 1 files >- >-init to existing repo >- >- $ hg init -e "python ./dummyssh" ssh://user@dummy/remote1 >- abort: repository remote1 already exists! >- abort: could not create remote repo! >- [255] >- >-clone to existing repo >- >- $ hg clone -e "python ./dummyssh" local ssh://user@dummy/remote1 >- abort: repository remote1 already exists! >- abort: could not create remote repo! >- [255] >- >-output of dummyssh >- >- $ cat dummylog >- Got arguments 1:user@dummy 2:hg init remote2 >- Got arguments 1:user@dummy 2:hg -R remote2 serve --stdio >- Got arguments 1:user@dummy 2:hg -R remote2 serve --stdio >- Got arguments 1:user@dummy 2:hg init remote1 >- Got arguments 1:user@dummy 2:hg -R remote1 serve --stdio >- Got arguments 1:user@dummy 2:hg init remote1 >- Got arguments 1:user@dummy 2:hg init remote1 >- >-comparing repositories >- >- $ hg tip -q -R local >- 0:08b9e9f63b32 >- $ hg tip -q -R remote1 >- 0:08b9e9f63b32 >- $ hg tip -q -R remote2 >- 0:08b9e9f63b32 >- >-check names for repositories (clashes with URL schemes, special chars) >- >- $ for i in bundle file hg http https old-http ssh static-http " " "with space"; do >- > printf "hg init \"$i\"... " >- > hg init "$i" >- > test -d "$i" -a -d "$i/.hg" && echo "ok" || echo "failed" >- > done >- hg init "bundle"... ok >- hg init "file"... ok >- hg init "hg"... ok >- hg init "http"... ok >- hg init "https"... ok >- hg init "old-http"... ok >- hg init "ssh"... ok >- hg init "static-http"... ok >- hg init " "... ok >- hg init "with space"... ok >- >-creating 'local/sub/repo' >- >- $ hg init local/sub/repo >- $ checknewrepo local/sub/repo >- store created >- 00changelog.i created >- revlogv1 >- store >- fncache >- dotencode >- >-prepare test of init of url configured from paths >- >- $ echo '[paths]' >> $HGRCPATH >- $ echo "somewhere = `pwd`/url from paths" >> $HGRCPATH >- $ echo "elsewhere = `pwd`/another paths url" >> $HGRCPATH >- >-init should (for consistency with clone) expand the url >- >- $ hg init somewhere >- $ checknewrepo "url from paths" >- store created >- 00changelog.i created >- revlogv1 >- store >- fncache >- dotencode >- >-verify that clone also expand urls >- >- $ hg clone somewhere elsewhere >- updating to branch default >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ checknewrepo "another paths url" >- store created >- 00changelog.i created >- revlogv1 >- store >- fncache >- dotencode >!........ >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-incoming-outgoing.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-incoming-outgoing.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-incoming-outgoing.t.err >@@ -1,468 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ mkdir test >- $ cd test >- $ hg init >- $ for i in 0 1 2 3 4 5 6 7 8; do >- > echo $i >> foo >- > hg commit -A -m $i >- > done >- adding foo >- $ hg verify >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 1 files, 9 changesets, 9 total revisions >- $ hg serve -p $HGPORT -d --pid-file=hg.pid >- $ cat hg.pid >> $DAEMON_PIDS >- $ cd .. >- >- $ hg init new >- >-http incoming >- >- $ hg -R new incoming http://localhost:$HGPORT/ >- comparing with http://localhost:$HGPORT/ >- changeset: 0:00a43fa82f62 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 0 >- >- changeset: 1:5460a410df01 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 1 >- >- changeset: 2:d9f42cd1a1ec >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 2 >- >- changeset: 3:376476025137 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 3 >- >- changeset: 4:70d7eb252d49 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 4 >- >- changeset: 5:ad284ee3b5ee >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 5 >- >- changeset: 6:e9229f2de384 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 6 >- >- changeset: 7:d152815bb8db >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 7 >- >- changeset: 8:e4feb4ac9035 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 8 >- >- $ hg -R new incoming -r 4 http://localhost:$HGPORT/ >- comparing with http://localhost:$HGPORT/ >- changeset: 0:00a43fa82f62 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 0 >- >- changeset: 1:5460a410df01 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 1 >- >- changeset: 2:d9f42cd1a1ec >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 2 >- >- changeset: 3:376476025137 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 3 >- >- changeset: 4:70d7eb252d49 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 4 >- >- >-local incoming >- >- $ hg -R new incoming test >- comparing with test >- changeset: 0:00a43fa82f62 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 0 >- >- changeset: 1:5460a410df01 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 1 >- >- changeset: 2:d9f42cd1a1ec >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 2 >- >- changeset: 3:376476025137 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 3 >- >- changeset: 4:70d7eb252d49 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 4 >- >- changeset: 5:ad284ee3b5ee >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 5 >- >- changeset: 6:e9229f2de384 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 6 >- >- changeset: 7:d152815bb8db >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 7 >- >- changeset: 8:e4feb4ac9035 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 8 >- >- $ hg -R new incoming -r 4 test >- comparing with test >- changeset: 0:00a43fa82f62 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 0 >- >- changeset: 1:5460a410df01 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 1 >- >- changeset: 2:d9f42cd1a1ec >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 2 >- >- changeset: 3:376476025137 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 3 >- >- changeset: 4:70d7eb252d49 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 4 >- >- >-limit to 2 changesets >- >- $ hg -R new incoming -l 2 test >- comparing with test >- changeset: 0:00a43fa82f62 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 0 >- >- changeset: 1:5460a410df01 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 1 >- >- >-limit to 2 changesets, test with -p --git >- >- $ hg -R new incoming -l 2 -p --git test >- comparing with test >- changeset: 0:00a43fa82f62 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 0 >- >- diff --git a/foo b/foo >- new file mode 100644 >- --- /dev/null >- +++ b/foo >- @@ -0,0 +1,1 @@ >- +0 >- >- changeset: 1:5460a410df01 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 1 >- >- diff --git a/foo b/foo >- --- a/foo >- +++ b/foo >- @@ -1,1 +1,2 @@ >- 0 >- +1 >- >- >-test with --bundle >- >- $ hg -R new incoming --bundle test.hg http://localhost:$HGPORT/ >- comparing with http://localhost:$HGPORT/ >- changeset: 0:00a43fa82f62 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 0 >- >- changeset: 1:5460a410df01 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 1 >- >- changeset: 2:d9f42cd1a1ec >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 2 >- >- changeset: 3:376476025137 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 3 >- >- changeset: 4:70d7eb252d49 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 4 >- >- changeset: 5:ad284ee3b5ee >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 5 >- >- changeset: 6:e9229f2de384 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 6 >- >- changeset: 7:d152815bb8db >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 7 >- >- changeset: 8:e4feb4ac9035 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 8 >- >- $ hg -R new incoming --bundle test2.hg test >- comparing with test >- changeset: 0:00a43fa82f62 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 0 >- >- changeset: 1:5460a410df01 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 1 >- >- changeset: 2:d9f42cd1a1ec >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 2 >- >- changeset: 3:376476025137 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 3 >- >- changeset: 4:70d7eb252d49 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 4 >- >- changeset: 5:ad284ee3b5ee >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 5 >- >- changeset: 6:e9229f2de384 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 6 >- >- changeset: 7:d152815bb8db >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 7 >- >- changeset: 8:e4feb4ac9035 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 8 >- >- >- >-test the resulting bundles >- >- $ hg init temp >- $ hg init temp2 >- $ hg -R temp unbundle test.hg >- adding changesets >- adding manifests >- adding file changes >- added 9 changesets with 9 changes to 1 files >- (run 'hg update' to get a working copy) >- $ hg -R temp2 unbundle test2.hg >- adding changesets >- adding manifests >- adding file changes >- added 9 changesets with 9 changes to 1 files >- (run 'hg update' to get a working copy) >- $ hg -R temp tip >- changeset: 8:e4feb4ac9035 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 8 >- >- $ hg -R temp2 tip >- changeset: 8:e4feb4ac9035 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 8 >- >- >- $ rm -r temp temp2 new >- >-test outgoing >- >- $ hg clone test test-dev >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ cd test-dev >- $ for i in 9 10 11 12 13; do >- > echo $i >> foo >- > hg commit -A -m $i >- > done >- $ hg verify >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 1 files, 14 changesets, 14 total revisions >- $ cd .. >- $ hg -R test-dev outgoing test >- comparing with test >- searching for changes >- changeset: 9:d89d4abea5bc >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 9 >- >- changeset: 10:820095aa7158 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 10 >- >- changeset: 11:09ede2f3a638 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 11 >- >- changeset: 12:e576b1bed305 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 12 >- >- changeset: 13:96bbff09a7cc >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 13 >- >- >-limit to 3 changesets >- >- $ hg -R test-dev outgoing -l 3 test >- comparing with test >- searching for changes >- changeset: 9:d89d4abea5bc >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 9 >- >- changeset: 10:820095aa7158 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 10 >- >- changeset: 11:09ede2f3a638 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 11 >- >- $ hg -R test-dev outgoing http://localhost:$HGPORT/ >- comparing with http://localhost:$HGPORT/ >- searching for changes >- changeset: 9:d89d4abea5bc >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 9 >- >- changeset: 10:820095aa7158 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 10 >- >- changeset: 11:09ede2f3a638 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 11 >- >- changeset: 12:e576b1bed305 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 12 >- >- changeset: 13:96bbff09a7cc >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 13 >- >- $ hg -R test-dev outgoing -r 11 http://localhost:$HGPORT/ >- comparing with http://localhost:$HGPORT/ >- searching for changes >- changeset: 9:d89d4abea5bc >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 9 >- >- changeset: 10:820095aa7158 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 10 >- >- changeset: 11:09ede2f3a638 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 11 >- >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-inotify.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-inotify.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-inotify.t.err >@@ -1,160 +1,4 @@ >+ >+ ### Abort: timeout after 180 seconds. > > $ "$TESTDIR/hghave" inotify || exit 80 >- $ hg init repo1 >- $ cd repo1 >- $ touch a b c d e >- $ mkdir dir >- $ mkdir dir/bar >- $ touch dir/x dir/y dir/bar/foo >- $ hg ci -Am m >- adding a >- adding b >- adding c >- adding d >- adding dir/bar/foo >- adding dir/x >- adding dir/y >- adding e >- $ cd .. >- $ hg clone repo1 repo2 >- updating to branch default >- 8 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo "[extensions]" >> $HGRCPATH >- $ echo "inotify=" >> $HGRCPATH >- $ cd repo2 >- $ echo b >> a >- >-check that daemon started automatically works correctly >-and make sure that inotify.pidfile works >- >- $ hg --config "inotify.pidfile=../hg2.pid" status >- M a >- >-make sure that pidfile worked. Output should be silent. >- >- $ kill `cat ../hg2.pid` >- $ cd ../repo1 >- >-inserve >- >- $ hg inserve -d --pid-file=hg.pid >- $ cat hg.pid >> "$DAEMON_PIDS" >- >-let the daemon finish its stuff >- >- $ sleep 1 >- >-cannot start, already bound >- >- $ hg inserve >- abort: inotify-server: cannot start: socket is already bound >- [255] >- >-issue907 >- >- $ hg status >- ? hg.pid >- >-clean >- >- $ hg status -c >- C a >- C b >- C c >- C d >- C dir/bar/foo >- C dir/x >- C dir/y >- C e >- >-all >- >- $ hg status -A >- ? hg.pid >- C a >- C b >- C c >- C d >- C dir/bar/foo >- C dir/x >- C dir/y >- C e >- >-path patterns >- >- $ echo x > dir/x >- $ hg status . >- M dir/x >- ? hg.pid >- $ hg status dir >- M dir/x >- $ cd dir >- $ hg status . >- M x >- $ cd .. >- >-issue 1375 >-testing that we can remove a folder and then add a file with the same name >-issue 1375 >- >- $ mkdir h >- $ echo h > h/h >- $ hg ci -Am t >- adding h/h >- adding hg.pid >- $ hg rm h >- removing h/h >- $ echo h >h >- $ hg add h >- $ hg status >- A h >- R h/h >- $ hg ci -m0 >- >-Test for issue1735: inotify watches files in .hg/merge >- >- $ hg st >- $ echo a > a >- $ hg ci -Am a >- $ hg st >- $ echo b >> a >- $ hg ci -m ab >- $ hg st >- $ echo c >> a >- $ hg st >- M a >- $ HGMERGE=internal:local hg up 0 >- 1 files updated, 1 files merged, 2 files removed, 0 files unresolved >- $ hg st >- M a >- $ HGMERGE=internal:local hg up >- 3 files updated, 1 files merged, 0 files removed, 0 files unresolved >- $ hg st >- M a >- >-Test for 1844: "hg ci folder" will not commit all changes beneath "folder" >- >- $ mkdir 1844 >- $ echo a > 1844/foo >- $ hg add 1844 >- adding 1844/foo >- $ hg ci -m 'working' >- $ echo b >> 1844/foo >- $ hg ci 1844 -m 'broken' >- >-Test for issue884: "Build products not ignored until .hgignore is touched" >- >- $ echo '^build$' > .hgignore >- $ hg add .hgignore >- $ hg ci .hgignore -m 'ignorelist' >- >-Now, lets add some build products... >- >- $ mkdir build >- $ touch build/x >- $ touch build/y >- >-build/x & build/y shouldn't appear in "hg st" >- >- $ hg st >- $ kill `cat hg.pid` >!. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-locate.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-locate.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-locate.t.err >@@ -1,121 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ mkdir t >- $ cd t >- $ hg init >- $ echo 0 > a >- $ echo 0 > b >- $ echo 0 > t.h >- $ mkdir t >- $ echo 0 > t/x >- $ echo 0 > t/b >- $ echo 0 > t/e.h >- $ mkdir dir.h >- $ echo 0 > dir.h/foo >- >- $ hg ci -A -m m >- adding a >- adding b >- adding dir.h/foo >- adding t.h >- adding t/b >- adding t/e.h >- adding t/x >- >- $ touch nottracked >- >- $ hg locate a >- a >- >- $ hg locate NONEXISTENT >- [1] >- >- $ hg locate >- a >- b >- dir.h/foo >- t.h >- t/b >- t/e.h >- t/x >- >- $ hg rm a >- $ hg ci -m m >- >- $ hg locate a >- [1] >- $ hg locate NONEXISTENT >- [1] >- $ hg locate relpath:NONEXISTENT >- [1] >- $ hg locate >- b >- dir.h/foo >- t.h >- t/b >- t/e.h >- t/x >- $ hg locate -r 0 a >- a >- $ hg locate -r 0 NONEXISTENT >- [1] >- $ hg locate -r 0 relpath:NONEXISTENT >- [1] >- $ hg locate -r 0 >- a >- b >- dir.h/foo >- t.h >- t/b >- t/e.h >- t/x >- >--I/-X with relative path should work: >- >- $ cd t >- $ hg locate >- b >- dir.h/foo >- t.h >- t/b >- t/e.h >- t/x >- $ hg locate -I ../t >- t/b >- t/e.h >- t/x >- >-Issue294: hg remove --after dir fails when dir.* also exists >- >- $ cd .. >- $ rm -r t >- >- $ hg locate 't/**' >- t/b >- t/e.h >- t/x >- >- $ mkdir otherdir >- $ cd otherdir >- >- $ hg locate b >- ../b >- ../t/b >- $ hg locate '*.h' >- ../t.h >- ../t/e.h >- $ hg locate path:t/x >- ../t/x >- $ hg locate 're:.*\.h$' >- ../t.h >- ../t/e.h >- $ hg locate -r 0 b >- ../b >- ../t/b >- $ hg locate -r 0 '*.h' >- ../t.h >- ../t/e.h >- $ hg locate -r 0 path:t/x >- ../t/x >- $ hg locate -r 0 're:.*\.h$' >- ../t.h >- ../t/e.h >- >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-log.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-log.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-log.t.err >@@ -1,1094 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ hg init a >- >- $ cd a >- $ echo a > a >- $ hg ci -Ama -d '1 0' >- adding a >- >- $ hg cp a b >- $ hg ci -mb -d '2 0' >- >- $ mkdir dir >- $ hg mv b dir >- $ hg ci -mc -d '3 0' >- >- $ hg mv a b >- $ echo a > d >- $ hg add d >- $ hg ci -md -d '4 0' >- >- $ hg mv dir/b e >- $ hg ci -me -d '5 0' >- >- $ hg log a >- changeset: 0:8580ff50825a >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: a >- >- >--f, directory >- >- $ hg log -f dir >- abort: cannot follow nonexistent file: "dir" >- [255] >- >--f, but no args >- >- $ hg log -f >- changeset: 4:66c1345dc4f9 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:05 1970 +0000 >- summary: e >- >- changeset: 3:7c6c671bb7cc >- user: test >- date: Thu Jan 01 00:00:04 1970 +0000 >- summary: d >- >- changeset: 2:41dd4284081e >- user: test >- date: Thu Jan 01 00:00:03 1970 +0000 >- summary: c >- >- changeset: 1:784de7cef101 >- user: test >- date: Thu Jan 01 00:00:02 1970 +0000 >- summary: b >- >- changeset: 0:8580ff50825a >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: a >- >- >-one rename >- >- $ hg log -vf a >- changeset: 0:8580ff50825a >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- files: a >- description: >- a >- >- >- >-many renames >- >- $ hg log -vf e >- changeset: 4:66c1345dc4f9 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:05 1970 +0000 >- files: dir/b e >- description: >- e >- >- >- changeset: 2:41dd4284081e >- user: test >- date: Thu Jan 01 00:00:03 1970 +0000 >- files: b dir/b >- description: >- c >- >- >- changeset: 1:784de7cef101 >- user: test >- date: Thu Jan 01 00:00:02 1970 +0000 >- files: b >- description: >- b >- >- >- changeset: 0:8580ff50825a >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- files: a >- description: >- a >- >- >- >- >-log -pf dir/b >- >- $ hg log -pf dir/b >- changeset: 2:41dd4284081e >- user: test >- date: Thu Jan 01 00:00:03 1970 +0000 >- summary: c >- >- diff -r 784de7cef101 -r 41dd4284081e dir/b >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/dir/b Thu Jan 01 00:00:03 1970 +0000 >- @@ -0,0 +1,1 @@ >- +a >- >- changeset: 1:784de7cef101 >- user: test >- date: Thu Jan 01 00:00:02 1970 +0000 >- summary: b >- >- diff -r 8580ff50825a -r 784de7cef101 b >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/b Thu Jan 01 00:00:02 1970 +0000 >- @@ -0,0 +1,1 @@ >- +a >- >- changeset: 0:8580ff50825a >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: a >- >- diff -r 000000000000 -r 8580ff50825a a >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/a Thu Jan 01 00:00:01 1970 +0000 >- @@ -0,0 +1,1 @@ >- +a >- >- >-log -vf dir/b >- >- $ hg log -vf dir/b >- changeset: 2:41dd4284081e >- user: test >- date: Thu Jan 01 00:00:03 1970 +0000 >- files: b dir/b >- description: >- c >- >- >- changeset: 1:784de7cef101 >- user: test >- date: Thu Jan 01 00:00:02 1970 +0000 >- files: b >- description: >- b >- >- >- changeset: 0:8580ff50825a >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- files: a >- description: >- a >- >- >- >- >-log copies with --copies >- >- $ hg log -vC --template '{rev} {file_copies}\n' >- 4 e (dir/b) >- 3 b (a) >- 2 dir/b (b) >- 1 b (a) >- 0 >- >-log copies switch without --copies, with old filecopy template >- >- $ hg log -v --template '{rev} {file_copies_switch%filecopy}\n' >- 4 >- 3 >- 2 >- 1 >- 0 >- >-log copies switch with --copies >- >- $ hg log -vC --template '{rev} {file_copies_switch}\n' >- 4 e (dir/b) >- 3 b (a) >- 2 dir/b (b) >- 1 b (a) >- 0 >- >- >-log copies with hardcoded style and with --style=default >- >- $ hg log -vC -r4 >- changeset: 4:66c1345dc4f9 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:05 1970 +0000 >- files: dir/b e >- copies: e (dir/b) >- description: >- e >- >- >- $ hg log -vC -r4 --style=default >- changeset: 4:66c1345dc4f9 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:05 1970 +0000 >- files: dir/b e >- copies: e (dir/b) >- description: >- e >- >- >- >- >-log copies, non-linear manifest >- >- $ hg up -C 3 >- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg mv dir/b e >- $ echo foo > foo >- $ hg ci -Ame2 -d '6 0' >- adding foo >- created new head >- $ hg log -v --template '{rev} {file_copies}\n' -r 5 >- 5 e (dir/b) >- >- >-log copies, execute bit set >- >- $ chmod +x e >- $ hg ci -me3 -d '7 0' >- $ hg log -v --template '{rev} {file_copies}\n' -r 6 >- 6 >- >- >-log -p d >- >- $ hg log -pv d >- changeset: 3:7c6c671bb7cc >- user: test >- date: Thu Jan 01 00:00:04 1970 +0000 >- files: a b d >- description: >- d >- >- >- diff -r 41dd4284081e -r 7c6c671bb7cc d >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/d Thu Jan 01 00:00:04 1970 +0000 >- @@ -0,0 +1,1 @@ >- +a >- >- >- >-log --removed file >- >- $ hg log --removed -v a >- changeset: 3:7c6c671bb7cc >- user: test >- date: Thu Jan 01 00:00:04 1970 +0000 >- files: a b d >- description: >- d >- >- >- changeset: 0:8580ff50825a >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- files: a >- description: >- a >- >- >- >-log --removed revrange file >- >- $ hg log --removed -v -r0:2 a >- changeset: 0:8580ff50825a >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- files: a >- description: >- a >- >- >- >- >-log --follow tests >- >- $ hg init ../follow >- $ cd ../follow >- >- $ echo base > base >- $ hg ci -Ambase -d '1 0' >- adding base >- >- $ echo r1 >> base >- $ hg ci -Amr1 -d '1 0' >- $ echo r2 >> base >- $ hg ci -Amr2 -d '1 0' >- >- $ hg up -C 1 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo b1 > b1 >- $ hg ci -Amb1 -d '1 0' >- adding b1 >- created new head >- >- >-log -f >- >- $ hg log -f >- changeset: 3:e62f78d544b4 >- tag: tip >- parent: 1:3d5bf5654eda >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: b1 >- >- changeset: 1:3d5bf5654eda >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: r1 >- >- changeset: 0:67e992f2c4f3 >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: base >- >- >- >-log -f -r 1:tip >- >- $ hg up -C 0 >- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ echo b2 > b2 >- $ hg ci -Amb2 -d '1 0' >- adding b2 >- created new head >- $ hg log -f -r 1:tip >- changeset: 1:3d5bf5654eda >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: r1 >- >- changeset: 2:60c670bf5b30 >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: r2 >- >- changeset: 3:e62f78d544b4 >- parent: 1:3d5bf5654eda >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: b1 >- >- >- >-log -r . with two parents >- >- $ hg up -C 3 >- 2 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg merge tip >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg log -r . >- changeset: 3:e62f78d544b4 >- parent: 1:3d5bf5654eda >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: b1 >- >- >- >-log -r . with one parent >- >- $ hg ci -mm12 -d '1 0' >- $ hg log -r . >- changeset: 5:302e9dd6890d >- tag: tip >- parent: 3:e62f78d544b4 >- parent: 4:ddb82e70d1a1 >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: m12 >- >- >- $ echo postm >> b1 >- $ hg ci -Amb1.1 -d'1 0' >- >- >-log --follow-first >- >- $ hg log --follow-first >- changeset: 6:2404bbcab562 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: b1.1 >- >- changeset: 5:302e9dd6890d >- parent: 3:e62f78d544b4 >- parent: 4:ddb82e70d1a1 >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: m12 >- >- changeset: 3:e62f78d544b4 >- parent: 1:3d5bf5654eda >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: b1 >- >- changeset: 1:3d5bf5654eda >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: r1 >- >- changeset: 0:67e992f2c4f3 >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: base >- >- >- >-log -P 2 >- >- $ hg log -P 2 >- changeset: 6:2404bbcab562 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: b1.1 >- >- changeset: 5:302e9dd6890d >- parent: 3:e62f78d544b4 >- parent: 4:ddb82e70d1a1 >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: m12 >- >- changeset: 4:ddb82e70d1a1 >- parent: 0:67e992f2c4f3 >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: b2 >- >- changeset: 3:e62f78d544b4 >- parent: 1:3d5bf5654eda >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: b1 >- >- >- >-log -r tip -p --git >- >- $ hg log -r tip -p --git >- changeset: 6:2404bbcab562 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: b1.1 >- >- diff --git a/b1 b/b1 >- --- a/b1 >- +++ b/b1 >- @@ -1,1 +1,2 @@ >- b1 >- +postm >- >- >- >-log -r "" >- >- $ hg log -r '' >- hg: parse error: empty query >- [255] >- >-log -r <some unknown node id> >- >- $ hg log -r 1000000000000000000000000000000000000000 >- abort: unknown revision '1000000000000000000000000000000000000000'! >- [255] >- >-log -k r1 >- >- $ hg log -k r1 >- changeset: 1:3d5bf5654eda >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: r1 >- >- >- >-log -d -1 >- >- $ hg log -d -1 >- >- >-log -p -l2 --color=always >- >- $ hg --config extensions.color= --config color.mode=ansi \ >- > log -p -l2 --color=always >- [0;33mchangeset: 6:2404bbcab562[0m >- tag: tip >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: b1.1 >- >- [0;1mdiff -r 302e9dd6890d -r 2404bbcab562 b1[0m >- [0;31;1m--- a/b1 Thu Jan 01 00:00:01 1970 +0000[0m >- [0;32;1m+++ b/b1 Thu Jan 01 00:00:01 1970 +0000[0m >- [0;35m@@ -1,1 +1,2 @@[0m >- b1 >- [0;32m+postm[0m >- >- [0;33mchangeset: 5:302e9dd6890d[0m >- parent: 3:e62f78d544b4 >- parent: 4:ddb82e70d1a1 >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: m12 >- >- [0;1mdiff -r e62f78d544b4 -r 302e9dd6890d b2[0m >- [0;31;1m--- /dev/null Thu Jan 01 00:00:00 1970 +0000[0m >- [0;32;1m+++ b/b2 Thu Jan 01 00:00:01 1970 +0000[0m >- [0;35m@@ -0,0 +1,1 @@[0m >- [0;32m+b2[0m >- >- >- >-log -r tip --stat >- >- $ hg log -r tip --stat >- changeset: 6:2404bbcab562 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: b1.1 >- >- b1 | 1 + >- 1 files changed, 1 insertions(+), 0 deletions(-) >- >- >- $ cd .. >- >- $ hg init usertest >- $ cd usertest >- >- $ echo a > a >- $ hg ci -A -m "a" -u "User One <user1@example.org>" >- adding a >- $ echo b > b >- $ hg ci -A -m "b" -u "User Two <user2@example.org>" >- adding b >- >- $ hg log -u "User One <user1@example.org>" >- changeset: 0:29a4c94f1924 >- user: User One <user1@example.org> >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: a >- >- $ hg log -u "user1" -u "user2" >- changeset: 1:e834b5e69c0e >- tag: tip >- user: User Two <user2@example.org> >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: b >- >- changeset: 0:29a4c94f1924 >- user: User One <user1@example.org> >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: a >- >- $ hg log -u "user3" >- >- $ cd .. >- >- $ hg init branches >- $ cd branches >- >- $ echo a > a >- $ hg ci -A -m "commit on default" >- adding a >- $ hg branch test >- marked working directory as branch test >- $ echo b > b >- $ hg ci -A -m "commit on test" >- adding b >- >- $ hg up default >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ echo c > c >- $ hg ci -A -m "commit on default" >- adding c >- $ hg up test >- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ echo c > c >- $ hg ci -A -m "commit on test" >- adding c >- >- >-log -b default >- >- $ hg log -b default >- changeset: 2:c3a4f03cc9a7 >- parent: 0:24427303d56f >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: commit on default >- >- changeset: 0:24427303d56f >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: commit on default >- >- >- >-log -b test >- >- $ hg log -b test >- changeset: 3:f5d8de11c2e2 >- branch: test >- tag: tip >- parent: 1:d32277701ccb >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: commit on test >- >- changeset: 1:d32277701ccb >- branch: test >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: commit on test >- >- >- >-log -b dummy >- >- $ hg log -b dummy >- abort: unknown revision 'dummy'! >- [255] >- >- >-log -b . >- >- $ hg log -b . >- changeset: 3:f5d8de11c2e2 >- branch: test >- tag: tip >- parent: 1:d32277701ccb >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: commit on test >- >- changeset: 1:d32277701ccb >- branch: test >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: commit on test >- >- >- >-log -b default -b test >- >- $ hg log -b default -b test >- changeset: 3:f5d8de11c2e2 >- branch: test >- tag: tip >- parent: 1:d32277701ccb >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: commit on test >- >- changeset: 2:c3a4f03cc9a7 >- parent: 0:24427303d56f >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: commit on default >- >- changeset: 1:d32277701ccb >- branch: test >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: commit on test >- >- changeset: 0:24427303d56f >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: commit on default >- >- >- >-log -b default -b . >- >- $ hg log -b default -b . >- changeset: 3:f5d8de11c2e2 >- branch: test >- tag: tip >- parent: 1:d32277701ccb >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: commit on test >- >- changeset: 2:c3a4f03cc9a7 >- parent: 0:24427303d56f >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: commit on default >- >- changeset: 1:d32277701ccb >- branch: test >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: commit on test >- >- changeset: 0:24427303d56f >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: commit on default >- >- >- >-log -b . -b test >- >- $ hg log -b . -b test >- changeset: 3:f5d8de11c2e2 >- branch: test >- tag: tip >- parent: 1:d32277701ccb >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: commit on test >- >- changeset: 1:d32277701ccb >- branch: test >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: commit on test >- >- >- >-log -b 2 >- >- $ hg log -b 2 >- changeset: 2:c3a4f03cc9a7 >- parent: 0:24427303d56f >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: commit on default >- >- changeset: 0:24427303d56f >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: commit on default >- >- >- >-log -p --cwd dir (in subdir) >- >- $ mkdir dir >- $ hg log -p --cwd dir >- changeset: 3:f5d8de11c2e2 >- branch: test >- tag: tip >- parent: 1:d32277701ccb >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: commit on test >- >- diff -r d32277701ccb -r f5d8de11c2e2 c >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/c Thu Jan 01 00:00:00 1970 +0000 >- @@ -0,0 +1,1 @@ >- +c >- >- changeset: 2:c3a4f03cc9a7 >- parent: 0:24427303d56f >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: commit on default >- >- diff -r 24427303d56f -r c3a4f03cc9a7 c >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/c Thu Jan 01 00:00:00 1970 +0000 >- @@ -0,0 +1,1 @@ >- +c >- >- changeset: 1:d32277701ccb >- branch: test >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: commit on test >- >- diff -r 24427303d56f -r d32277701ccb b >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/b Thu Jan 01 00:00:00 1970 +0000 >- @@ -0,0 +1,1 @@ >- +b >- >- changeset: 0:24427303d56f >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: commit on default >- >- diff -r 000000000000 -r 24427303d56f a >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/a Thu Jan 01 00:00:00 1970 +0000 >- @@ -0,0 +1,1 @@ >- +a >- >- >- >-log -p -R repo >- >- $ cd dir >- $ hg log -p -R .. ../a >- changeset: 0:24427303d56f >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: commit on default >- >- diff -r 000000000000 -r 24427303d56f a >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/a Thu Jan 01 00:00:00 1970 +0000 >- @@ -0,0 +1,1 @@ >- +a >- >- >- >- $ cd .. >- $ hg init follow2 >- $ cd follow2 >- >- >-# Build the following history: >-# tip - o - x - o - x - x >-# \ / >-# o - o - o - x >-# \ / >-# o >-# >-# Where "o" is a revision containing "foo" and >-# "x" is a revision without "foo" >- >- $ touch init >- $ hg ci -A -m "init, unrelated" >- adding init >- $ echo 'foo' > init >- $ hg ci -m "change, unrelated" >- $ echo 'foo' > foo >- $ hg ci -A -m "add unrelated old foo" >- adding foo >- $ hg rm foo >- $ hg ci -m "delete foo, unrelated" >- $ echo 'related' > foo >- $ hg ci -A -m "add foo, related" >- adding foo >- >- $ hg up 0 >- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ touch branch >- $ hg ci -A -m "first branch, unrelated" >- adding branch >- created new head >- $ touch foo >- $ hg ci -A -m "create foo, related" >- adding foo >- $ echo 'change' > foo >- $ hg ci -m "change foo, related" >- >- $ hg up 6 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo 'change foo in branch' > foo >- $ hg ci -m "change foo in branch, related" >- created new head >- $ hg merge 7 >- merging foo >- warning: conflicts during merge. >- merging foo failed! >- 0 files updated, 0 files merged, 0 files removed, 1 files unresolved >- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon >- [1] >- $ echo 'merge 1' > foo >- $ hg resolve -m foo >- $ hg ci -m "First merge, related" >- >- $ hg merge 4 >- merging foo >- warning: conflicts during merge. >- merging foo failed! >- 1 files updated, 0 files merged, 0 files removed, 1 files unresolved >- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon >- [1] >- $ echo 'merge 2' > foo >- $ hg resolve -m foo >- $ hg ci -m "Last merge, related" >- >- $ hg --config "extensions.graphlog=" glog >- @ changeset: 10:4dae8563d2c5 >- |\ tag: tip >- | | parent: 9:7b35701b003e >- | | parent: 4:88176d361b69 >- | | user: test >- | | date: Thu Jan 01 00:00:00 1970 +0000 >- | | summary: Last merge, related >- | | >- | o changeset: 9:7b35701b003e >- | |\ parent: 8:e5416ad8a855 >- | | | parent: 7:87fe3144dcfa >- | | | user: test >- | | | date: Thu Jan 01 00:00:00 1970 +0000 >- | | | summary: First merge, related >- | | | >- | | o changeset: 8:e5416ad8a855 >- | | | parent: 6:dc6c325fe5ee >- | | | user: test >- | | | date: Thu Jan 01 00:00:00 1970 +0000 >- | | | summary: change foo in branch, related >- | | | >- | o | changeset: 7:87fe3144dcfa >- | |/ user: test >- | | date: Thu Jan 01 00:00:00 1970 +0000 >- | | summary: change foo, related >- | | >- | o changeset: 6:dc6c325fe5ee >- | | user: test >- | | date: Thu Jan 01 00:00:00 1970 +0000 >- | | summary: create foo, related >- | | >- | o changeset: 5:73db34516eb9 >- | | parent: 0:e87515fd044a >- | | user: test >- | | date: Thu Jan 01 00:00:00 1970 +0000 >- | | summary: first branch, unrelated >- | | >- o | changeset: 4:88176d361b69 >- | | user: test >- | | date: Thu Jan 01 00:00:00 1970 +0000 >- | | summary: add foo, related >- | | >- o | changeset: 3:dd78ae4afb56 >- | | user: test >- | | date: Thu Jan 01 00:00:00 1970 +0000 >- | | summary: delete foo, unrelated >- | | >- o | changeset: 2:c4c64aedf0f7 >- | | user: test >- | | date: Thu Jan 01 00:00:00 1970 +0000 >- | | summary: add unrelated old foo >- | | >- o | changeset: 1:e5faa7440653 >- |/ user: test >- | date: Thu Jan 01 00:00:00 1970 +0000 >- | summary: change, unrelated >- | >- o changeset: 0:e87515fd044a >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: init, unrelated >- >- >- $ hg --traceback log -f foo >- changeset: 10:4dae8563d2c5 >- tag: tip >- parent: 9:7b35701b003e >- parent: 4:88176d361b69 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: Last merge, related >- >- changeset: 9:7b35701b003e >- parent: 8:e5416ad8a855 >- parent: 7:87fe3144dcfa >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: First merge, related >- >- changeset: 8:e5416ad8a855 >- parent: 6:dc6c325fe5ee >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: change foo in branch, related >- >- changeset: 7:87fe3144dcfa >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: change foo, related >- >- changeset: 6:dc6c325fe5ee >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: create foo, related >- >- changeset: 4:88176d361b69 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: add foo, related >- >- >-Issue2383: hg log showing _less_ differences than hg diff >- >- $ hg init issue2383 >- $ cd issue2383 >- >-Create a test repo: >- >- $ echo a > a >- $ hg ci -Am0 >- adding a >- $ echo b > b >- $ hg ci -Am1 >- adding b >- $ hg co 0 >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ echo b > a >- $ hg ci -m2 >- created new head >- >-Merge: >- >- $ hg merge >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- >-Make sure there's a file listed in the merge to trigger the bug: >- >- $ echo c > a >- $ hg ci -m3 >- >-Two files shown here in diff: >- >- $ hg diff --rev 2:3 >- diff -r b09be438c43a -r 8e07aafe1edc a >- --- a/a Thu Jan 01 00:00:00 1970 +0000 >- +++ b/a Thu Jan 01 00:00:00 1970 +0000 >- @@ -1,1 +1,1 @@ >- -b >- +c >- diff -r b09be438c43a -r 8e07aafe1edc b >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/b Thu Jan 01 00:00:00 1970 +0000 >- @@ -0,0 +1,1 @@ >- +b >- >-Diff here should be the same: >- >- $ hg log -vpr 3 >- changeset: 3:8e07aafe1edc >- tag: tip >- parent: 2:b09be438c43a >- parent: 1:925d80f479bb >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- files: a >- description: >- 3 >- >- >- diff -r b09be438c43a -r 8e07aafe1edc a >- --- a/a Thu Jan 01 00:00:00 1970 +0000 >- +++ b/a Thu Jan 01 00:00:00 1970 +0000 >- @@ -1,1 +1,1 @@ >- -b >- +c >- diff -r b09be438c43a -r 8e07aafe1edc b >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/b Thu Jan 01 00:00:00 1970 +0000 >- @@ -0,0 +1,1 @@ >- +b >- >- $ cd .. >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-inotify-dirty-dirstate.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-inotify-dirty-dirstate.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-inotify-dirty-dirstate.t.err >@@ -1,71 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > issues when status queries are issued when dirstate is dirty > > $ "$TESTDIR/hghave" inotify || exit 80 >- $ echo "[extensions]" >> $HGRCPATH >- $ echo "inotify=" >> $HGRCPATH >- $ echo "fetch=" >> $HGRCPATH >- >-issue1810: inotify and fetch >- >- $ mkdir test; cd test >- $ hg init >- $ hg inserve -d --pid-file=../hg.pid >- $ cat ../hg.pid >> "$DAEMON_PIDS" >- $ echo foo > foo >- $ hg add >- adding foo >- $ hg ci -m foo >- $ cd .. >- $ hg --config "inotify.pidfile=../hg2.pid" clone test test2 >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ cat ../hg2.pid >> "$DAEMON_PIDS" >- $ cd test2 >- $ echo bar > bar >- $ hg add >- adding bar >- $ hg ci -m bar >- $ cd ../test >- $ echo spam > spam >- $ hg add >- adding spam >- $ hg ci -m spam >- $ cd ../test2 >- $ hg st >- >-abort, outstanding changes >- >- $ hg fetch -q >- $ hg st >- $ cd .. >- >-issue1719: inotify and mq >- >- $ echo "mq=" >> $HGRCPATH >- $ hg init test-1719 >- $ cd test-1719 >- >-inserve >- >- $ hg inserve -d --pid-file=../hg-test-1719.pid >- $ cat ../hg-test-1719.pid >> "$DAEMON_PIDS" >- $ echo content > file >- $ hg add file >- $ hg qnew -f test.patch >- $ hg status >- $ hg qpop >- popping test.patch >- patch queue now empty >- >-st should not output anything >- >- $ hg status >- $ hg qpush >- applying test.patch >- now at: test.patch >- >-st should not output anything >- >- $ hg status >- $ hg qrefresh >- $ hg status >!... >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-interhg.t output changed >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-interhg.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-interhg.t.err >@@ -17,13 +17,20 @@ > $ hg commit -d '1 0' -m 'Issue123: fixed the bug!' > > $ hg serve -n test -p $HGPORT -d --pid-file=hg.pid -A access.log -E errors.log >+ abort: cannot start server at ':$HGPORT': Address already in use >+ abort: child process failed to start >+ [255] > $ cat hg.pid >> $DAEMON_PIDS >+ cat: hg.pid: No such file or directory >+ [1] > > log > > $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT '/' | grep bts >- <td class="description"><a href="/rev/1b0e7ece6bd6"><a href="http://bts.example.org/issue123">Issue123</a>: fixed the <i class="x">bug</i>!</a><span class="branchhead">default</span> <span class="tag">tip</span> </td> >+ [1] > > errors > > $ cat errors.log >+ cat: errors.log: No such file or directory >+ [1] >!. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-merge-closedheads.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-merge-closedheads.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-merge-closedheads.t.err >@@ -1,85 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ hgcommit() { > > hg commit -u user "$@" > > } >- >- $ hg init clhead >- $ cd clhead >- >- $ touch foo && hg add && hgcommit -m 'foo' >- adding foo >- $ touch bar && hg add && hgcommit -m 'bar' >- adding bar >- $ touch baz && hg add && hgcommit -m 'baz' >- adding baz >- >- $ echo "flub" > foo >- $ hgcommit -m "flub" >- $ echo "nub" > foo >- $ hgcommit -m "nub" >- >- $ hg up -C 2 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >- $ echo "c1" > c1 >- $ hg add c1 >- $ hgcommit -m "c1" >- created new head >- $ echo "c2" > c1 >- $ hgcommit -m "c2" >- >- $ hg up -C 2 >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- >- $ echo "d1" > d1 >- $ hg add d1 >- $ hgcommit -m "d1" >- created new head >- $ echo "d2" > d1 >- $ hgcommit -m "d2" >- $ hg tag -l good >- >-fail with three heads >- $ hg up -C good >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg merge >- abort: branch 'default' has 3 heads - please merge with an explicit rev >- (run 'hg heads .' to see heads) >- [255] >- >-close one of the heads >- $ hg up -C 6 >- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hgcommit -m 'close this head' --close-branch >- >-succeed with two open heads >- $ hg up -C good >- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg up -C good >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg merge >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hgcommit -m 'merged heads' >- >-hg update -C 8 >- $ hg update -C 8 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-hg branch some-branch >- $ hg branch some-branch >- marked working directory as branch some-branch >-hg commit >- $ hgcommit -m 'started some-branch' >-hg commit --close-branch >- $ hgcommit --close-branch -m 'closed some-branch' >- >-hg update default >- $ hg update default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >-hg merge some-branch >- $ hg merge some-branch >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >-hg commit (no reopening of some-branch) >- $ hgcommit -m 'merge with closed branch' >- >!.... >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-merge-default.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-merge-default.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-merge-default.t.err >@@ -1,109 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ hg init >- $ echo a > a >- $ hg commit -A -ma >- adding a >- >- $ echo b >> a >- $ hg commit -mb >- >- $ echo c >> a >- $ hg commit -mc >- >- $ hg up 1 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo d >> a >- $ hg commit -md >- created new head >- >- $ hg up 1 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo e >> a >- $ hg commit -me >- created new head >- >- $ hg up 1 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-Should fail because not at a head: >- >- $ hg merge >- abort: branch 'default' has 3 heads - please merge with an explicit rev >- (run 'hg heads .' to see heads) >- [255] >- >- $ hg up >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-Should fail because > 2 heads: >- >- $ HGMERGE=internal:other; export HGMERGE >- $ hg merge >- abort: branch 'default' has 3 heads - please merge with an explicit rev >- (run 'hg heads .' to see heads) >- [255] >- >-Should succeed: >- >- $ hg merge 2 >- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg commit -mm1 >- >-Should succeed - 2 heads: >- >- $ hg merge -P >- changeset: 3:ea9ff125ff88 >- parent: 1:1846eede8b68 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: d >- >- $ hg merge >- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg commit -mm2 >- >-Should fail because at tip: >- >- $ hg merge >- abort: there is nothing to merge >- [255] >- >- $ hg up 0 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-Should fail because there is only one head: >- >- $ hg merge >- abort: there is nothing to merge - use "hg update" instead >- [255] >- >- $ hg up 3 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >- $ echo f >> a >- $ hg branch foobranch >- marked working directory as branch foobranch >- $ hg commit -mf >- >-Should fail because merge with other branch: >- >- $ hg merge >- abort: branch 'foobranch' has one head - please merge with an explicit rev >- (run 'hg heads' to see all heads) >- [255] >- >- >-Test for issue2043: ensure that 'merge -P' shows ancestors of 6 that >-are not ancestors of 7, regardless of where their least common >-ancestor is. >- >-Merge preview not affected by common ancestor: >- >- $ hg up -q 7 >- $ hg merge -q -P 6 >- 2:2d95304fed5d >- 4:f25cbe84d8b3 >- 5:a431fabd6039 >- 6:e88e33f3bf62 >- >!.. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-issue660.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-issue660.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-issue660.t.err >@@ -1,144 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > http://mercurial.selenic.com/bts/issue660 > > $ hg init >- $ echo a > a >- $ mkdir b >- $ echo b > b/b >- $ hg commit -A -m "a is file, b is dir" >- adding a >- adding b/b >- >-File replaced with directory: >- >- $ rm a >- $ mkdir a >- $ echo a > a/a >- >-Should fail - would corrupt dirstate: >- >- $ hg add a/a >- abort: file 'a' in dirstate clashes with 'a/a' >- [255] >- >-Removing shadow: >- >- $ hg rm --after a >- >-Should succeed - shadow removed: >- >- $ hg add a/a >- >-Directory replaced with file: >- >- $ rm -r b >- $ echo b > b >- >-Should fail - would corrupt dirstate: >- >- $ hg add b >- abort: directory 'b' already in dirstate >- [255] >- >-Removing shadow: >- >- $ hg rm --after b/b >- >-Should succeed - shadow removed: >- >- $ hg add b >- >-Look what we got: >- >- $ hg st >- A a/a >- A b >- R a >- R b/b >- >-Revert reintroducing shadow - should fail: >- >- $ rm -r a b >- $ hg revert b/b >- abort: file 'b' in dirstate clashes with 'b/b' >- [255] >- >-Revert all - should succeed: >- >- $ hg revert --all >- undeleting a >- forgetting a/a >- forgetting b >- undeleting b/b >- >- $ hg st >- >-addremove: >- >- $ rm -r a b >- $ mkdir a >- $ echo a > a/a >- $ echo b > b >- >- $ hg addremove -s 0 >- removing a >- adding a/a >- adding b >- removing b/b >- >- $ hg st >- A a/a >- A b >- R a >- R b/b >- >-commit: >- >- $ hg ci -A -m "a is dir, b is file" >- $ hg st --all >- C a/a >- C b >- >-Long directory replaced with file: >- >- $ mkdir d >- $ mkdir d/d >- $ echo d > d/d/d >- $ hg commit -A -m "d is long directory" >- adding d/d/d >- >- $ rm -r d >- $ echo d > d >- >-Should fail - would corrupt dirstate: >- >- $ hg add d >- abort: directory 'd' already in dirstate >- [255] >- >-Removing shadow: >- >- $ hg rm --after d/d/d >- >-Should succeed - shadow removed: >- >- $ hg add d >- $ hg ci -md >- >-Update should work at least with clean working directory: >- >- $ rm -r a b d >- $ hg up -r 0 >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >- $ hg st --all >- C a >- C b/b >- >- $ rm -r a b >- $ hg up -r 1 >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >- $ hg st --all >- C a/a >- C b >- >!... >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-merge-revert.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-merge-revert.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-merge-revert.t.err >@@ -1,74 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ hg init >- >- $ echo "added file1" > file1 >- $ echo "added file2" > file2 >- $ hg add file1 file2 >- $ hg commit -m "added file1 and file2" >- >- $ echo "changed file1" >> file1 >- $ hg commit -m "changed file1" >- >- $ hg -q log >- 1:08a16e8e4408 >- 0:d29c767a4b52 >- $ hg id >- 08a16e8e4408 tip >- >- $ hg update -C 0 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg id >- d29c767a4b52 >- $ echo "changed file1" >> file1 >- $ hg id >- d29c767a4b52+ >- >- $ hg revert --all >- reverting file1 >- $ hg diff >- $ hg status >- ? file1.orig >- $ hg id >- d29c767a4b52 >- >- $ hg update >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg diff >- $ hg status >- ? file1.orig >- $ hg id >- 08a16e8e4408 tip >- >- $ hg update -C 0 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo "changed file1" >> file1 >- >- $ hg update >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg diff >- $ hg status >- ? file1.orig >- $ hg id >- 08a16e8e4408 tip >- >- $ hg revert --all >- $ hg diff >- $ hg status >- ? file1.orig >- $ hg id >- 08a16e8e4408 tip >- >- $ hg revert -r tip --all >- $ hg diff >- $ hg status >- ? file1.orig >- $ hg id >- 08a16e8e4408 tip >- >- $ hg update -C >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg diff >- $ hg status >- ? file1.orig >- $ hg id >- 08a16e8e4408 tip >- >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-keyword.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-keyword.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-keyword.t.err >@@ -1,3 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ cat <<EOF >> $HGRCPATH > > [extensions] > > keyword = >@@ -8,1032 +10,3 @@ > > [ui] > > interactive = true > > EOF >- >-Run kwdemo before [keyword] files are set up >-as it would succeed without uisetup otherwise >- >- $ hg --quiet kwdemo >- [extensions] >- keyword = >- [keyword] >- demo.txt = >- [keywordmaps] >- Author = {author|user} >- Date = {date|utcdate} >- Header = {root}/{file},v {node|short} {date|utcdate} {author|user} >- Id = {file|basename},v {node|short} {date|utcdate} {author|user} >- RCSFile = {file|basename},v >- RCSfile = {file|basename},v >- Revision = {node|short} >- Source = {root}/{file},v >- $Author: test $ >- $Date: ????/??/?? ??:??:?? $ (glob) >- $Header: */demo.txt,v ???????????? ????/??/?? ??:??:?? test $ (glob) >- $Id: demo.txt,v ???????????? ????/??/?? ??:??:?? test $ (glob) >- $RCSFile: demo.txt,v $ >- $RCSfile: demo.txt,v $ >- $Revision: ???????????? $ (glob) >- $Source: */demo.txt,v $ (glob) >- >- $ hg --quiet kwdemo "Branch = {branches}" >- [extensions] >- keyword = >- [keyword] >- demo.txt = >- [keywordmaps] >- Branch = {branches} >- $Branch: demobranch $ >- >- $ cat <<EOF >> $HGRCPATH >- > [keyword] >- > ** = >- > b = ignore >- > i = ignore >- > [hooks] >- > EOF >- $ cp $HGRCPATH $HGRCPATH.nohooks >- > cat <<EOF >> $HGRCPATH >- > commit= >- > commit.test=cp a hooktest >- > EOF >- >- $ hg init Test-bndl >- $ cd Test-bndl >- >-kwshrink should exit silently in empty/invalid repo >- >- $ hg kwshrink >- >-Symlinks cannot be created on Windows. >-A bundle to test this was made with: >- hg init t >- cd t >- echo a > a >- ln -s a sym >- hg add sym >- hg ci -m addsym -u mercurial >- hg bundle --base null ../test-keyword.hg >- >- $ hg pull -u "$TESTDIR"/test-keyword.hg >- pulling from *test-keyword.hg (glob) >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >- $ echo 'expand $Id$' > a >- $ echo 'do not process $Id:' >> a >- $ echo 'xxx $' >> a >- $ echo 'ignore $Id$' > b >- >-Output files as they were created >- >- $ cat a b >- expand $Id$ >- do not process $Id: >- xxx $ >- ignore $Id$ >- >-no kwfiles >- >- $ hg kwfiles >- >-untracked candidates >- >- $ hg -v kwfiles --unknown >- k a >- >-Add files and check status >- >- $ hg addremove >- adding a >- adding b >- $ hg status >- A a >- A b >- >- >-Default keyword expansion including commit hook >-Interrupted commit should not change state or run commit hook >- >- $ hg --debug commit >- abort: empty commit message >- [255] >- $ hg status >- A a >- A b >- >-Commit with several checks >- >- $ hg --debug commit -mabsym -u 'User Name <user@example.com>' >- a >- b >- overwriting a expanding keywords >- running hook commit.test: cp a hooktest >- committed changeset 1:ef63ca68695bc9495032c6fda1350c71e6d256e9 >- $ hg status >- ? hooktest >- $ hg debugrebuildstate >- $ hg --quiet identify >- ef63ca68695b >- >-cat files in working directory with keywords expanded >- >- $ cat a b >- expand $Id: a,v ef63ca68695b 1970/01/01 00:00:00 user $ >- do not process $Id: >- xxx $ >- ignore $Id$ >- >-hg cat files and symlink, no expansion >- >- $ hg cat sym a b && echo >- expand $Id: a,v ef63ca68695b 1970/01/01 00:00:00 user $ >- do not process $Id: >- xxx $ >- ignore $Id$ >- a >- >-Test hook execution >- >- $ diff a hooktest >- >- $ cp $HGRCPATH.nohooks $HGRCPATH >- $ rm hooktest >- >-bundle >- >- $ hg bundle --base null ../kw.hg >- 2 changesets found >- $ cd .. >- $ hg init Test >- $ cd Test >- >-Notify on pull to check whether keywords stay as is in email >-ie. if patch.diff wrapper acts as it should >- >- $ cat <<EOF >> $HGRCPATH >- > [hooks] >- > incoming.notify = python:hgext.notify.hook >- > [notify] >- > sources = pull >- > diffstat = False >- > maxsubject = 15 >- > [reposubs] >- > * = Test >- > EOF >- >-Pull from bundle and trigger notify >- >- $ hg pull -u ../kw.hg >- pulling from ../kw.hg >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 2 changesets with 3 changes to 3 files >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Date: * (glob) >- Subject: changeset in... >- From: mercurial >- X-Hg-Notification: changeset a2392c293916 >- Message-Id: <hg.a2392c293916*> (glob) >- To: Test >- >- changeset a2392c293916 in $TESTTMP/Test >- details: *cmd=changeset;node=a2392c293916 (glob) >- description: >- addsym >- >- diffs (6 lines): >- >- diff -r 000000000000 -r a2392c293916 sym >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/sym Sat Feb 09 20:25:47 2008 +0100 >- @@ -0,0 +1,1 @@ >- +a >- \ No newline at end of file >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Date:* (glob) >- Subject: changeset in... >- From: User Name <user@example.com> >- X-Hg-Notification: changeset ef63ca68695b >- Message-Id: <hg.ef63ca68695b*> (glob) >- To: Test >- >- changeset ef63ca68695b in $TESTTMP/Test >- details: $TESTTMP/Test?cmd=changeset;node=ef63ca68695b >- description: >- absym >- >- diffs (12 lines): >- >- diff -r a2392c293916 -r ef63ca68695b a >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/a Thu Jan 01 00:00:00 1970 +0000 >- @@ -0,0 +1,3 @@ >- +expand $Id$ >- +do not process $Id: >- +xxx $ >- diff -r a2392c293916 -r ef63ca68695b b >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/b Thu Jan 01 00:00:00 1970 +0000 >- @@ -0,0 +1,1 @@ >- +ignore $Id$ >- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >- $ cp $HGRCPATH.nohooks $HGRCPATH >- >-Touch files and check with status >- >- $ touch a b >- $ hg status >- >-Update and expand >- >- $ rm sym a b >- $ hg update -C >- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ cat a b >- expand $Id: a,v ef63ca68695b 1970/01/01 00:00:00 user $ >- do not process $Id: >- xxx $ >- ignore $Id$ >- >-Check whether expansion is filewise >- >- $ echo '$Id$' > c >- $ echo 'tests for different changenodes' >> c >- >-commit file c >- >- $ hg commit -A -mcndiff -d '1 0' -u 'User Name <user@example.com>' >- adding c >- >-force expansion >- >- $ hg -v kwexpand >- overwriting a expanding keywords >- overwriting c expanding keywords >- >-compare changenodes in a and c >- >- $ cat a c >- expand $Id: a,v ef63ca68695b 1970/01/01 00:00:00 user $ >- do not process $Id: >- xxx $ >- $Id: c,v 40a904bbbe4c 1970/01/01 00:00:01 user $ >- tests for different changenodes >- >-record >- >- $ echo '$Id$' > r >- $ hg add r >- >-record chunk >- >- $ python -c \ >- > 'l=open("a").readlines();l.insert(1,"foo\n");l.append("bar\n");open("a","w").writelines(l);' >- $ hg record -d '1 10' -m rectest a<<EOF >- > y >- > y >- > n >- > EOF >- diff --git a/a b/a >- 2 hunks, 2 lines changed >- examine changes to 'a'? [Ynsfdaq?] >- @@ -1,3 +1,4 @@ >- expand $Id$ >- +foo >- do not process $Id: >- xxx $ >- record change 1/2 to 'a'? [Ynsfdaq?] >- @@ -2,2 +3,3 @@ >- do not process $Id: >- xxx $ >- +bar >- record change 2/2 to 'a'? [Ynsfdaq?] >- >- $ hg identify >- d17e03c92c97+ tip >- $ hg status >- M a >- A r >- >-Cat modified file a >- >- $ cat a >- expand $Id: a,v d17e03c92c97 1970/01/01 00:00:01 test $ >- foo >- do not process $Id: >- xxx $ >- bar >- >-Diff remaining chunk >- >- $ hg diff a >- diff -r d17e03c92c97 a >- --- a/a Wed Dec 31 23:59:51 1969 -0000 >- +++ b/a * (glob) >- @@ -2,3 +2,4 @@ >- foo >- do not process $Id: >- xxx $ >- +bar >- >- $ hg rollback >- rolling back to revision 2 (undo commit) >- >-Record all chunks in file a >- >- $ echo foo > msg >- >- - do not use "hg record -m" here! >- >- $ hg record -l msg -d '1 11' a<<EOF >- > y >- > y >- > y >- > EOF >- diff --git a/a b/a >- 2 hunks, 2 lines changed >- examine changes to 'a'? [Ynsfdaq?] >- @@ -1,3 +1,4 @@ >- expand $Id$ >- +foo >- do not process $Id: >- xxx $ >- record change 1/2 to 'a'? [Ynsfdaq?] >- @@ -2,2 +3,3 @@ >- do not process $Id: >- xxx $ >- +bar >- record change 2/2 to 'a'? [Ynsfdaq?] >- >-File a should be clean >- >- $ hg status -A a >- C a >- >-rollback and revert expansion >- >- $ cat a >- expand $Id: a,v 59f969a3b52c 1970/01/01 00:00:01 test $ >- foo >- do not process $Id: >- xxx $ >- bar >- $ hg --verbose rollback >- rolling back to revision 2 (undo commit) >- overwriting a expanding keywords >- $ hg status a >- M a >- $ cat a >- expand $Id: a,v ef63ca68695b 1970/01/01 00:00:00 user $ >- foo >- do not process $Id: >- xxx $ >- bar >- $ echo '$Id$' > y >- $ echo '$Id$' > z >- $ hg add y >- $ hg commit -Am "rollback only" z >- $ cat z >- $Id: z,v 45a5d3adce53 1970/01/01 00:00:00 test $ >- $ hg --verbose rollback >- rolling back to revision 2 (undo commit) >- overwriting z shrinking keywords >- >-Only z should be overwritten >- >- $ hg status a y z >- M a >- A y >- A z >- $ cat z >- $Id$ >- $ hg forget y z >- $ rm y z >- >-record added file alone >- >- $ hg -v record -l msg -d '1 12' r<<EOF >- > y >- > EOF >- diff --git a/r b/r >- new file mode 100644 >- examine changes to 'r'? [Ynsfdaq?] >- r >- committed changeset 3:899491280810 >- overwriting r expanding keywords >- $ hg --verbose rollback >- rolling back to revision 2 (undo commit) >- overwriting r shrinking keywords >- $ hg forget r >- $ rm msg r >- $ hg update -C >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-record added keyword ignored file >- >- $ echo '$Id$' > i >- $ hg add i >- $ hg --verbose record -d '1 13' -m recignored<<EOF >- > y >- > EOF >- diff --git a/i b/i >- new file mode 100644 >- examine changes to 'i'? [Ynsfdaq?] >- i >- committed changeset 3:5f40fe93bbdc >- $ cat i >- $Id$ >- $ hg -q rollback >- $ hg forget i >- $ rm i >- >-Test patch queue repo >- >- $ hg init --mq >- $ hg qimport -r tip -n mqtest.diff >- $ hg commit --mq -m mqtest >- >-Keywords should not be expanded in patch >- >- $ cat .hg/patches/mqtest.diff >- # HG changeset patch >- # User User Name <user@example.com> >- # Date 1 0 >- # Node ID 40a904bbbe4cd4ab0a1f28411e35db26341a40ad >- # Parent ef63ca68695bc9495032c6fda1350c71e6d256e9 >- cndiff >- >- diff -r ef63ca68695b -r 40a904bbbe4c c >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/c Thu Jan 01 00:00:01 1970 +0000 >- @@ -0,0 +1,2 @@ >- +$Id$ >- +tests for different changenodes >- >- $ hg qpop >- popping mqtest.diff >- patch queue now empty >- >-qgoto, implying qpush, should expand >- >- $ hg qgoto mqtest.diff >- applying mqtest.diff >- now at: mqtest.diff >- $ cat c >- $Id: c,v 40a904bbbe4c 1970/01/01 00:00:01 user $ >- tests for different changenodes >- $ hg cat c >- $Id: c,v 40a904bbbe4c 1970/01/01 00:00:01 user $ >- tests for different changenodes >- >-Keywords should not be expanded in filelog >- >- $ hg --config 'extensions.keyword=!' cat c >- $Id$ >- tests for different changenodes >- >-qpop and move on >- >- $ hg qpop >- popping mqtest.diff >- patch queue now empty >- >-Copy and show added kwfiles >- >- $ hg cp a c >- $ hg kwfiles >- a >- c >- >-Commit and show expansion in original and copy >- >- $ hg --debug commit -ma2c -d '1 0' -u 'User Name <user@example.com>' >- c >- c: copy a:0045e12f6c5791aac80ca6cbfd97709a88307292 >- overwriting c expanding keywords >- committed changeset 2:25736cf2f5cbe41f6be4e6784ef6ecf9f3bbcc7d >- $ cat a c >- expand $Id: a,v ef63ca68695b 1970/01/01 00:00:00 user $ >- do not process $Id: >- xxx $ >- expand $Id: c,v 25736cf2f5cb 1970/01/01 00:00:01 user $ >- do not process $Id: >- xxx $ >- >-Touch copied c and check its status >- >- $ touch c >- $ hg status >- >-Copy kwfile to keyword ignored file unexpanding keywords >- >- $ hg --verbose copy a i >- copying a to i >- overwriting i shrinking keywords >- $ head -n 1 i >- expand $Id$ >- $ hg forget i >- $ rm i >- >-Copy ignored file to ignored file: no overwriting >- >- $ hg --verbose copy b i >- copying b to i >- $ hg forget i >- $ rm i >- >-cp symlink (becomes regular file), and hg copy after >- >- $ cp sym i >- $ ls -l i >- -rw-r--r--* (glob) >- $ head -1 i >- expand $Id: a,v ef63ca68695b 1970/01/01 00:00:00 user $ >- $ hg copy --after --verbose sym i >- copying sym to i >- overwriting i shrinking keywords >- $ head -1 i >- expand $Id$ >- $ hg forget i >- $ rm i >- >-Test different options of hg kwfiles >- >- $ hg kwfiles >- a >- c >- $ hg -v kwfiles --ignore >- I b >- I sym >- $ hg kwfiles --all >- K a >- K c >- I b >- I sym >- >-Diff specific revision >- >- $ hg diff --rev 1 >- diff -r ef63ca68695b c >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/c * (glob) >- @@ -0,0 +1,3 @@ >- +expand $Id$ >- +do not process $Id: >- +xxx $ >- >-Status after rollback: >- >- $ hg rollback >- rolling back to revision 1 (undo commit) >- $ hg status >- A c >- $ hg update --clean >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-Custom keywordmaps as argument to kwdemo >- >- $ hg --quiet kwdemo "Xinfo = {author}: {desc}" >- [extensions] >- keyword = >- [keyword] >- ** = >- b = ignore >- demo.txt = >- i = ignore >- [keywordmaps] >- Xinfo = {author}: {desc} >- $Xinfo: test: hg keyword configuration and expansion example $ >- >-Configure custom keywordmaps >- >- $ cat <<EOF >>$HGRCPATH >- > [keywordmaps] >- > Id = {file} {node|short} {date|rfc822date} {author|user} >- > Xinfo = {author}: {desc} >- > EOF >- >-Cat and hg cat files before custom expansion >- >- $ cat a b >- expand $Id: a,v ef63ca68695b 1970/01/01 00:00:00 user $ >- do not process $Id: >- xxx $ >- ignore $Id$ >- $ hg cat sym a b && echo >- expand $Id: a ef63ca68695b Thu, 01 Jan 1970 00:00:00 +0000 user $ >- do not process $Id: >- xxx $ >- ignore $Id$ >- a >- >-Write custom keyword and prepare multiline commit message >- >- $ echo '$Xinfo$' >> a >- $ cat <<EOF >> log >- > firstline >- > secondline >- > EOF >- >-Interrupted commit should not change state >- >- $ hg commit >- abort: empty commit message >- [255] >- $ hg status >- M a >- ? c >- ? log >- >-Commit with multiline message and custom expansion >- >- $ hg --debug commit -l log -d '2 0' -u 'User Name <user@example.com>' >- a >- overwriting a expanding keywords >- committed changeset 2:bb948857c743469b22bbf51f7ec8112279ca5d83 >- $ rm log >- >-Stat, verify and show custom expansion (firstline) >- >- $ hg status >- ? c >- $ hg verify >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 3 files, 3 changesets, 4 total revisions >- $ cat a b >- expand $Id: a bb948857c743 Thu, 01 Jan 1970 00:00:02 +0000 user $ >- do not process $Id: >- xxx $ >- $Xinfo: User Name <user@example.com>: firstline $ >- ignore $Id$ >- $ hg cat sym a b && echo >- expand $Id: a bb948857c743 Thu, 01 Jan 1970 00:00:02 +0000 user $ >- do not process $Id: >- xxx $ >- $Xinfo: User Name <user@example.com>: firstline $ >- ignore $Id$ >- a >- >-annotate >- >- $ hg annotate a >- 1: expand $Id$ >- 1: do not process $Id: >- 1: xxx $ >- 2: $Xinfo$ >- >-remove with status checks >- >- $ hg debugrebuildstate >- $ hg remove a >- $ hg --debug commit -m rma >- committed changeset 3:d14c712653769de926994cf7fbb06c8fbd68f012 >- $ hg status >- ? c >- >-Rollback, revert, and check expansion >- >- $ hg rollback >- rolling back to revision 2 (undo commit) >- $ hg status >- R a >- ? c >- $ hg revert --no-backup --rev tip a >- $ cat a >- expand $Id: a bb948857c743 Thu, 01 Jan 1970 00:00:02 +0000 user $ >- do not process $Id: >- xxx $ >- $Xinfo: User Name <user@example.com>: firstline $ >- >-Clone to test global and local configurations >- >- $ cd .. >- >-Expansion in destinaton with global configuration >- >- $ hg --quiet clone Test globalconf >- $ cat globalconf/a >- expand $Id: a bb948857c743 Thu, 01 Jan 1970 00:00:02 +0000 user $ >- do not process $Id: >- xxx $ >- $Xinfo: User Name <user@example.com>: firstline $ >- >-No expansion in destination with local configuration in origin only >- >- $ hg --quiet --config 'keyword.**=ignore' clone Test localconf >- $ cat localconf/a >- expand $Id$ >- do not process $Id: >- xxx $ >- $Xinfo$ >- >-Clone to test incoming >- >- $ hg clone -r1 Test Test-a >- adding changesets >- adding manifests >- adding file changes >- added 2 changesets with 3 changes to 3 files >- updating to branch default >- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ cd Test-a >- $ cat <<EOF >> .hg/hgrc >- > [paths] >- > default = ../Test >- > EOF >- $ hg incoming >- comparing with $TESTTMP/Test >- searching for changes >- changeset: 2:bb948857c743 >- tag: tip >- user: User Name <user@example.com> >- date: Thu Jan 01 00:00:02 1970 +0000 >- summary: firstline >- >-Imported patch should not be rejected >- >- $ python -c \ >- > 'import re; s=re.sub("(Id.*)","\\1 rejecttest",open("a").read()); open("a","wb").write(s);' >- $ hg --debug commit -m'rejects?' -d '3 0' -u 'User Name <user@example.com>' >- a >- overwriting a expanding keywords >- committed changeset 2:85e279d709ffc28c9fdd1b868570985fc3d87082 >- $ hg export -o ../rejecttest.diff tip >- $ cd ../Test >- $ hg import ../rejecttest.diff >- applying ../rejecttest.diff >- $ cat a b >- expand $Id: a 4e0994474d25 Thu, 01 Jan 1970 00:00:03 +0000 user $ rejecttest >- do not process $Id: rejecttest >- xxx $ >- $Xinfo: User Name <user@example.com>: rejects? $ >- ignore $Id$ >- >- $ hg rollback >- rolling back to revision 2 (undo commit) >- $ hg update --clean >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-kwexpand/kwshrink on selected files >- >- $ mkdir x >- $ hg copy a x/a >- $ hg --verbose kwshrink a >- overwriting a shrinking keywords >- $ hg status a >- $ hg --verbose kwexpand a >- overwriting a expanding keywords >- $ hg status a >- >-kwexpand x/a should abort >- >- $ hg --verbose kwexpand x/a >- abort: outstanding uncommitted changes >- [255] >- $ cd x >- $ hg --debug commit -m xa -d '3 0' -u 'User Name <user@example.com>' >- x/a >- x/a: copy a:779c764182ce5d43e2b1eb66ce06d7b47bfe342e >- overwriting x/a expanding keywords >- committed changeset 3:b4560182a3f9a358179fd2d835c15e9da379c1e4 >- $ cat a >- expand $Id: x/a b4560182a3f9 Thu, 01 Jan 1970 00:00:03 +0000 user $ >- do not process $Id: >- xxx $ >- $Xinfo: User Name <user@example.com>: xa $ >- >-kwshrink a inside directory x >- >- $ hg --verbose kwshrink a >- overwriting x/a shrinking keywords >- $ cat a >- expand $Id$ >- do not process $Id: >- xxx $ >- $Xinfo$ >- $ cd .. >- >-kwexpand nonexistent >- >- $ hg kwexpand nonexistent >- nonexistent:* (glob) >- >- >-hg serve >- - expand with hgweb file >- - no expansion with hgweb annotate/changeset/filediff >- - check errors >- >- $ hg serve -p $HGPORT -d --pid-file=hg.pid -A access.log -E errors.log >- $ cat hg.pid >> $DAEMON_PIDS >- $ $TESTDIR/get-with-headers.py localhost:$HGPORT '/file/tip/a/?style=raw' >- 200 Script output follows >- >- expand $Id: a bb948857c743 Thu, 01 Jan 1970 00:00:02 +0000 user $ >- do not process $Id: >- xxx $ >- $Xinfo: User Name <user@example.com>: firstline $ >- $ $TESTDIR/get-with-headers.py localhost:$HGPORT '/annotate/tip/a/?style=raw' >- 200 Script output follows >- >- >- user@1: expand $Id$ >- user@1: do not process $Id: >- user@1: xxx $ >- user@2: $Xinfo$ >- >- >- >- >- $ $TESTDIR/get-with-headers.py localhost:$HGPORT '/rev/tip/?style=raw' >- 200 Script output follows >- >- >- # HG changeset patch >- # User User Name <user@example.com> >- # Date 3 0 >- # Node ID b4560182a3f9a358179fd2d835c15e9da379c1e4 >- # Parent bb948857c743469b22bbf51f7ec8112279ca5d83 >- xa >- >- diff -r bb948857c743 -r b4560182a3f9 x/a >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/x/a Thu Jan 01 00:00:03 1970 +0000 >- @@ -0,0 +1,4 @@ >- +expand $Id$ >- +do not process $Id: >- +xxx $ >- +$Xinfo$ >- >- $ $TESTDIR/get-with-headers.py localhost:$HGPORT '/diff/bb948857c743/a?style=raw' >- 200 Script output follows >- >- >- diff -r ef63ca68695b -r bb948857c743 a >- --- a/a Thu Jan 01 00:00:00 1970 +0000 >- +++ b/a Thu Jan 01 00:00:02 1970 +0000 >- @@ -1,3 +1,4 @@ >- expand $Id$ >- do not process $Id: >- xxx $ >- +$Xinfo$ >- >- >- >- >- $ cat errors.log >- >-Prepare merge and resolve tests >- >- $ echo '$Id$' > m >- $ hg add m >- $ hg commit -m 4kw >- $ echo foo >> m >- $ hg commit -m 5foo >- >-simplemerge >- >- $ hg update 4 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo foo >> m >- $ hg commit -m 6foo >- created new head >- $ hg merge >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg commit -m simplemerge >- $ cat m >- $Id: m 27d48ee14f67 Thu, 01 Jan 1970 00:00:00 +0000 test $ >- foo >- >-conflict: keyword should stay outside conflict zone >- >- $ hg update 4 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo bar >> m >- $ hg commit -m 8bar >- created new head >- $ hg merge >- merging m >- warning: conflicts during merge. >- merging m failed! >- 0 files updated, 0 files merged, 0 files removed, 1 files unresolved >- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon >- [1] >- $ cat m >- $Id$ >- <<<<<<< local >- bar >- ======= >- foo >- >>>>>>> other >- >-resolve to local >- >- $ HGMERGE=internal:local hg resolve -a >- $ hg commit -m localresolve >- $ cat m >- $Id: m 41efa6d38e9b Thu, 01 Jan 1970 00:00:00 +0000 test $ >- bar >- >-Test restricted mode with transplant -b >- >- $ hg update 6 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg branch foo >- marked working directory as branch foo >- $ mv a a.bak >- $ echo foobranch > a >- $ cat a.bak >> a >- $ rm a.bak >- $ hg commit -m 9foobranch >- $ hg update default >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg -y transplant -b foo tip >- applying 4aa30d025d50 >- 4aa30d025d50 transplanted to 5a4da427c162 >- >-Expansion in changeset but not in file >- >- $ hg tip -p >- changeset: 11:5a4da427c162 >- tag: tip >- parent: 9:41efa6d38e9b >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 9foobranch >- >- diff -r 41efa6d38e9b -r 5a4da427c162 a >- --- a/a Thu Jan 01 00:00:00 1970 +0000 >- +++ b/a Thu Jan 01 00:00:00 1970 +0000 >- @@ -1,3 +1,4 @@ >- +foobranch >- expand $Id$ >- do not process $Id: >- xxx $ >- >- $ head -n 2 a >- foobranch >- expand $Id: a 5a4da427c162 Thu, 01 Jan 1970 00:00:00 +0000 test $ >- >-Turn off expansion >- >- $ hg -q rollback >- $ hg -q update -C >- >-kwshrink with unknown file u >- >- $ cp a u >- $ hg --verbose kwshrink >- overwriting a shrinking keywords >- overwriting m shrinking keywords >- overwriting x/a shrinking keywords >- >-Keywords shrunk in working directory, but not yet disabled >- - cat shows unexpanded keywords >- - hg cat shows expanded keywords >- >- $ cat a b >- expand $Id$ >- do not process $Id: >- xxx $ >- $Xinfo$ >- ignore $Id$ >- $ hg cat sym a b && echo >- expand $Id: a bb948857c743 Thu, 01 Jan 1970 00:00:02 +0000 user $ >- do not process $Id: >- xxx $ >- $Xinfo: User Name <user@example.com>: firstline $ >- ignore $Id$ >- a >- >-Now disable keyword expansion >- >- $ rm "$HGRCPATH" >- $ cat a b >- expand $Id$ >- do not process $Id: >- xxx $ >- $Xinfo$ >- ignore $Id$ >- $ hg cat sym a b && echo >- expand $Id$ >- do not process $Id: >- xxx $ >- $Xinfo$ >- ignore $Id$ >- a >!........ >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-merge-tools.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-merge-tools.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-merge-tools.t.err >@@ -1,778 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > test merge-tools configuration - mostly exercising filemerge.py > > $ unset HGMERGE # make sure HGMERGE doesn't interfere with the test >- $ hg init >- >-revision 0 >- >- $ echo "revision 0" > f >- $ echo "space" >> f >- $ hg commit -Am "revision 0" >- adding f >- >-revision 1 >- >- $ echo "revision 1" > f >- $ echo "space" >> f >- $ hg commit -Am "revision 1" >- $ hg update 0 > /dev/null >- >-revision 2 >- >- $ echo "revision 2" > f >- $ echo "space" >> f >- $ hg commit -Am "revision 2" >- created new head >- $ hg update 0 > /dev/null >- >-revision 3 - simple to merge >- >- $ echo "revision 3" >> f >- $ hg commit -Am "revision 3" >- created new head >- $ echo "[merge-tools]" > .hg/hgrc >- $ echo >- >- $ beforemerge() { >- > cat .hg/hgrc >- > echo "# hg update -C 1" >- > hg update -C 1 > /dev/null >- > } >- $ aftermerge() { >- > echo "# cat f" >- > cat f >- > echo "# hg stat" >- > hg stat >- > rm -f f.orig >- > echo >- > } >- $ domerge() { >- > beforemerge >- > echo "# hg merge $*" >- > hg merge $* >- > aftermerge >- > } >- $ echo >- >- >-Tool selection >- >- $ echo >- >- >-default is internal merge: >- >- $ beforemerge >- [merge-tools] >- # hg update -C 1 >- >-hg merge -r 2 >-override $PATH to ensure hgmerge not visible; use $PYTHON in case we're >-running from a devel copy, not a temp installation >- >- $ PATH="$BINDIR" $PYTHON "$BINDIR"/hg merge -r 2 >- merging f >- warning: conflicts during merge. >- merging f failed! >- 0 files updated, 0 files merged, 0 files removed, 1 files unresolved >- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon >- [1] >- $ aftermerge >- # cat f >- <<<<<<< local >- revision 1 >- ======= >- revision 2 >- >>>>>>> other >- space >- # hg stat >- M f >- ? f.orig >- >- >-simplest hgrc using false for merge: >- >- $ echo "false.whatever=" >> .hg/hgrc >- $ domerge -r 2 >- [merge-tools] >- false.whatever= >- # hg update -C 1 >- # hg merge -r 2 >- merging f >- merging f failed! >- 0 files updated, 0 files merged, 0 files removed, 1 files unresolved >- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon >- # cat f >- revision 1 >- space >- # hg stat >- M f >- ? f.orig >- >- >-true with higher .priority gets precedence: >- >- $ echo "true.priority=1" >> .hg/hgrc >- $ domerge -r 2 >- [merge-tools] >- false.whatever= >- true.priority=1 >- # hg update -C 1 >- # hg merge -r 2 >- merging f >- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- # cat f >- revision 1 >- space >- # hg stat >- M f >- >- >-unless lowered on command line: >- >- $ domerge -r 2 --config merge-tools.true.priority=-7 >- [merge-tools] >- false.whatever= >- true.priority=1 >- # hg update -C 1 >- # hg merge -r 2 --config merge-tools.true.priority=-7 >- merging f >- merging f failed! >- 0 files updated, 0 files merged, 0 files removed, 1 files unresolved >- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon >- # cat f >- revision 1 >- space >- # hg stat >- M f >- ? f.orig >- >- >-or false set higher on command line: >- >- $ domerge -r 2 --config merge-tools.false.priority=117 >- [merge-tools] >- false.whatever= >- true.priority=1 >- # hg update -C 1 >- # hg merge -r 2 --config merge-tools.false.priority=117 >- merging f >- merging f failed! >- 0 files updated, 0 files merged, 0 files removed, 1 files unresolved >- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon >- # cat f >- revision 1 >- space >- # hg stat >- M f >- ? f.orig >- >- >-or true.executable not found in PATH: >- >- $ domerge -r 2 --config merge-tools.true.executable=nonexistingmergetool >- [merge-tools] >- false.whatever= >- true.priority=1 >- # hg update -C 1 >- # hg merge -r 2 --config merge-tools.true.executable=nonexistingmergetool >- merging f >- merging f failed! >- 0 files updated, 0 files merged, 0 files removed, 1 files unresolved >- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon >- # cat f >- revision 1 >- space >- # hg stat >- M f >- ? f.orig >- >- >-or true.executable with bogus path: >- >- $ domerge -r 2 --config merge-tools.true.executable=/nonexisting/mergetool >- [merge-tools] >- false.whatever= >- true.priority=1 >- # hg update -C 1 >- # hg merge -r 2 --config merge-tools.true.executable=/nonexisting/mergetool >- merging f >- merging f failed! >- 0 files updated, 0 files merged, 0 files removed, 1 files unresolved >- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon >- # cat f >- revision 1 >- space >- # hg stat >- M f >- ? f.orig >- >- >-but true.executable set to cat found in PATH works: >- >- $ echo "true.executable=cat" >> .hg/hgrc >- $ domerge -r 2 >- [merge-tools] >- false.whatever= >- true.priority=1 >- true.executable=cat >- # hg update -C 1 >- # hg merge -r 2 >- revision 1 >- space >- revision 0 >- space >- revision 2 >- space >- merging f >- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- # cat f >- revision 1 >- space >- # hg stat >- M f >- >- >-and true.executable set to cat with path works: >- >- $ domerge -r 2 --config merge-tools.true.executable=cat >- [merge-tools] >- false.whatever= >- true.priority=1 >- true.executable=cat >- # hg update -C 1 >- # hg merge -r 2 --config merge-tools.true.executable=cat >- revision 1 >- space >- revision 0 >- space >- revision 2 >- space >- merging f >- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- # cat f >- revision 1 >- space >- # hg stat >- M f >- >- $ echo >- >- >-Tool selection and merge-patterns >- >- $ echo >- >- >-merge-patterns specifies new tool false: >- >- $ domerge -r 2 --config merge-patterns.f=false >- [merge-tools] >- false.whatever= >- true.priority=1 >- true.executable=cat >- # hg update -C 1 >- # hg merge -r 2 --config merge-patterns.f=false >- merging f >- merging f failed! >- 0 files updated, 0 files merged, 0 files removed, 1 files unresolved >- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon >- # cat f >- revision 1 >- space >- # hg stat >- M f >- ? f.orig >- >- >-merge-patterns specifies executable not found in PATH and gets warning: >- >- $ domerge -r 2 --config merge-patterns.f=true --config merge-tools.true.executable=nonexistingmergetool >- [merge-tools] >- false.whatever= >- true.priority=1 >- true.executable=cat >- # hg update -C 1 >- # hg merge -r 2 --config merge-patterns.f=true --config merge-tools.true.executable=nonexistingmergetool >- couldn't find merge tool true specified for f >- merging f >- merging f failed! >- 0 files updated, 0 files merged, 0 files removed, 1 files unresolved >- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon >- # cat f >- revision 1 >- space >- # hg stat >- M f >- ? f.orig >- >- >-merge-patterns specifies executable with bogus path and gets warning: >- >- $ domerge -r 2 --config merge-patterns.f=true --config merge-tools.true.executable=/nonexisting/mergetool >- [merge-tools] >- false.whatever= >- true.priority=1 >- true.executable=cat >- # hg update -C 1 >- # hg merge -r 2 --config merge-patterns.f=true --config merge-tools.true.executable=/nonexisting/mergetool >- couldn't find merge tool true specified for f >- merging f >- merging f failed! >- 0 files updated, 0 files merged, 0 files removed, 1 files unresolved >- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon >- # cat f >- revision 1 >- space >- # hg stat >- M f >- ? f.orig >- >- $ echo >- >- >-ui.merge overrules priority >- >- $ echo >- >- >-ui.merge specifies false: >- >- $ domerge -r 2 --config ui.merge=false >- [merge-tools] >- false.whatever= >- true.priority=1 >- true.executable=cat >- # hg update -C 1 >- # hg merge -r 2 --config ui.merge=false >- merging f >- merging f failed! >- 0 files updated, 0 files merged, 0 files removed, 1 files unresolved >- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon >- # cat f >- revision 1 >- space >- # hg stat >- M f >- ? f.orig >- >- >-ui.merge specifies internal:fail: >- >- $ domerge -r 2 --config ui.merge=internal:fail >- [merge-tools] >- false.whatever= >- true.priority=1 >- true.executable=cat >- # hg update -C 1 >- # hg merge -r 2 --config ui.merge=internal:fail >- 0 files updated, 0 files merged, 0 files removed, 1 files unresolved >- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon >- # cat f >- revision 1 >- space >- # hg stat >- M f >- >- >-ui.merge specifies internal:local: >- >- $ domerge -r 2 --config ui.merge=internal:local >- [merge-tools] >- false.whatever= >- true.priority=1 >- true.executable=cat >- # hg update -C 1 >- # hg merge -r 2 --config ui.merge=internal:local >- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- # cat f >- revision 1 >- space >- # hg stat >- M f >- >- >-ui.merge specifies internal:other: >- >- $ domerge -r 2 --config ui.merge=internal:other >- [merge-tools] >- false.whatever= >- true.priority=1 >- true.executable=cat >- # hg update -C 1 >- # hg merge -r 2 --config ui.merge=internal:other >- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- # cat f >- revision 2 >- space >- # hg stat >- M f >- >- >-ui.merge specifies internal:prompt: >- >- $ domerge -r 2 --config ui.merge=internal:prompt >- [merge-tools] >- false.whatever= >- true.priority=1 >- true.executable=cat >- # hg update -C 1 >- # hg merge -r 2 --config ui.merge=internal:prompt >- no tool found to merge f >- keep (l)ocal or take (o)ther? l >- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- # cat f >- revision 1 >- space >- # hg stat >- M f >- >- >-ui.merge specifies internal:dump: >- >- $ domerge -r 2 --config ui.merge=internal:dump >- [merge-tools] >- false.whatever= >- true.priority=1 >- true.executable=cat >- # hg update -C 1 >- # hg merge -r 2 --config ui.merge=internal:dump >- merging f >- 0 files updated, 0 files merged, 0 files removed, 1 files unresolved >- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon >- # cat f >- revision 1 >- space >- # hg stat >- M f >- ? f.base >- ? f.local >- ? f.orig >- ? f.other >- >- >-f.base: >- >- $ cat f.base >- revision 0 >- space >- >-f.local: >- >- $ cat f.local >- revision 1 >- space >- >-f.other: >- >- $ cat f.other >- revision 2 >- space >- $ rm f.base f.local f.other >- $ echo >- >- >-ui.merge specifies internal:other but is overruled by pattern for false: >- >- $ domerge -r 2 --config ui.merge=internal:other --config merge-patterns.f=false >- [merge-tools] >- false.whatever= >- true.priority=1 >- true.executable=cat >- # hg update -C 1 >- # hg merge -r 2 --config ui.merge=internal:other --config merge-patterns.f=false >- merging f >- merging f failed! >- 0 files updated, 0 files merged, 0 files removed, 1 files unresolved >- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon >- # cat f >- revision 1 >- space >- # hg stat >- M f >- ? f.orig >- >- $ echo >- >- >-Premerge >- >- $ echo >- >- >-ui.merge specifies internal:other but is overruled by --tool=false >- >- $ domerge -r 2 --config ui.merge=internal:other --tool=false >- [merge-tools] >- false.whatever= >- true.priority=1 >- true.executable=cat >- # hg update -C 1 >- # hg merge -r 2 --config ui.merge=internal:other --tool=false >- merging f >- merging f failed! >- 0 files updated, 0 files merged, 0 files removed, 1 files unresolved >- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon >- # cat f >- revision 1 >- space >- # hg stat >- M f >- ? f.orig >- >-HGMERGE specifies internal:other but is overruled by --tool=false >- >- $ HGMERGE=internal:other ; export HGMERGE >- $ domerge -r 2 --tool=false >- [merge-tools] >- false.whatever= >- true.priority=1 >- true.executable=cat >- # hg update -C 1 >- # hg merge -r 2 --tool=false >- merging f >- merging f failed! >- 0 files updated, 0 files merged, 0 files removed, 1 files unresolved >- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon >- # cat f >- revision 1 >- space >- # hg stat >- M f >- ? f.orig >- >- $ unset HGMERGE # make sure HGMERGE doesn't interfere with remaining tests >- >-Default is silent simplemerge: >- >- $ domerge -r 3 >- [merge-tools] >- false.whatever= >- true.priority=1 >- true.executable=cat >- # hg update -C 1 >- # hg merge -r 3 >- merging f >- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- # cat f >- revision 1 >- space >- revision 3 >- # hg stat >- M f >- >- >-.premerge=True is same: >- >- $ domerge -r 3 --config merge-tools.true.premerge=True >- [merge-tools] >- false.whatever= >- true.priority=1 >- true.executable=cat >- # hg update -C 1 >- # hg merge -r 3 --config merge-tools.true.premerge=True >- merging f >- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- # cat f >- revision 1 >- space >- revision 3 >- # hg stat >- M f >- >- >-.premerge=False executes merge-tool: >- >- $ domerge -r 3 --config merge-tools.true.premerge=False >- [merge-tools] >- false.whatever= >- true.priority=1 >- true.executable=cat >- # hg update -C 1 >- # hg merge -r 3 --config merge-tools.true.premerge=False >- revision 1 >- space >- revision 0 >- space >- revision 0 >- space >- revision 3 >- merging f >- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- # cat f >- revision 1 >- space >- # hg stat >- M f >- >- $ echo >- >- >-Tool execution >- >- $ echo >- >- $ echo '# set tools.args explicit to include $base $local $other $output:' # default '$local $base $other' >- # set tools.args explicit to include $base $local $other $output: >- $ beforemerge >- [merge-tools] >- false.whatever= >- true.priority=1 >- true.executable=cat >- # hg update -C 1 >- $ hg merge -r 2 --config merge-tools.true.executable=head --config merge-tools.true.args='$base $local $other $output' \ >- > | sed 's,==> .* <==,==> ... <==,g' >- ==> ... <== >- revision 0 >- space >- >- ==> ... <== >- revision 1 >- space >- >- ==> ... <== >- revision 2 >- space >- >- ==> ... <== >- revision 1 >- space >- merging f >- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ aftermerge >- # cat f >- revision 1 >- space >- # hg stat >- M f >- >- $ echo '# Merge with "echo mergeresult > $local":' >- # Merge with "echo mergeresult > $local": >- $ beforemerge >- [merge-tools] >- false.whatever= >- true.priority=1 >- true.executable=cat >- # hg update -C 1 >- $ hg merge -r 2 --config merge-tools.true.executable=echo --config merge-tools.true.args='mergeresult > $local' >- merging f >- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ aftermerge >- # cat f >- mergeresult >- # hg stat >- M f >- >- $ echo '# - and $local is the file f:' >- # - and $local is the file f: >- $ beforemerge >- [merge-tools] >- false.whatever= >- true.priority=1 >- true.executable=cat >- # hg update -C 1 >- $ hg merge -r 2 --config merge-tools.true.executable=echo --config merge-tools.true.args='mergeresult > f' >- merging f >- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ aftermerge >- # cat f >- mergeresult >- # hg stat >- M f >- >- $ echo '# Merge with "echo mergeresult > $output" - the variable is a bit magic:' >- # Merge with "echo mergeresult > $output" - the variable is a bit magic: >- $ beforemerge >- [merge-tools] >- false.whatever= >- true.priority=1 >- true.executable=cat >- # hg update -C 1 >- $ hg merge -r 2 --config merge-tools.true.executable=echo --config merge-tools.true.args='mergeresult > $output' >- merging f >- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ aftermerge >- # cat f >- mergeresult >- # hg stat >- M f >- >- >-Merge using tool with a path that must be quoted: >- >- $ beforemerge >- [merge-tools] >- false.whatever= >- true.priority=1 >- true.executable=cat >- # hg update -C 1 >- $ cat <<EOF > 'my merge tool' >- > #!/bin/sh >- > cat "\$1" "\$2" "\$3" > "\$4" >- > EOF >- $ chmod +x 'my merge tool' >- $ hg merge -r 2 --config merge-tools.true.executable='./my merge tool' --config merge-tools.true.args='$base $local $other $output' >- merging f >- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ rm -f 'my merge tool' >- $ aftermerge >- # cat f >- revision 0 >- space >- revision 1 >- space >- revision 2 >- space >- # hg stat >- M f >- >- $ echo >- >- >-Merge post-processing >- >- $ echo >- >- >-cat is a bad merge-tool and doesn't change: >- >- $ domerge -y -r 2 --config merge-tools.true.checkchanged=1 >- [merge-tools] >- false.whatever= >- true.priority=1 >- true.executable=cat >- # hg update -C 1 >- # hg merge -y -r 2 --config merge-tools.true.checkchanged=1 >- revision 1 >- space >- revision 0 >- space >- revision 2 >- space >- merging f >- output file f appears unchanged >- was merge successful (yn)? n >- merging f failed! >- 0 files updated, 0 files merged, 0 files removed, 1 files unresolved >- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon >- # cat f >- revision 1 >- space >- # hg stat >- M f >- ? f.orig >- >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-merge-commit.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-merge-commit.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-merge-commit.t.err >@@ -1,183 +1,7 @@ >+ >+ ### Abort: timeout after 180 seconds. > Check that renames are correctly saved by a commit after a merge > > Test with the merge on 3 having the rename on the local parent > > $ hg init a >- $ cd a >- >- $ echo line1 > foo >- $ hg add foo >- $ hg ci -m '0: add foo' >- >- $ echo line2 >> foo >- $ hg ci -m '1: change foo' >- >- $ hg up -C 0 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >- $ hg mv foo bar >- $ rm bar >- $ echo line0 > bar >- $ echo line1 >> bar >- $ hg ci -m '2: mv foo bar; change bar' >- created new head >- >- $ hg merge 1 >- merging bar and foo to bar >- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- >- $ cat bar >- line0 >- line1 >- line2 >- >- $ hg ci -m '3: merge with local rename' >- >- $ hg debugindex .hg/store/data/bar.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 77 0 2 d35118874825 000000000000 000000000000 >- 1 77 76 0 3 5345f5ab8abd 000000000000 d35118874825 >- >- $ hg debugrename bar >- bar renamed from foo:9e25c27b87571a1edee5ae4dddee5687746cc8e2 >- >- $ hg debugindex .hg/store/data/foo.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 7 0 0 690b295714ae 000000000000 000000000000 >- 1 7 13 1 1 9e25c27b8757 690b295714ae 000000000000 >- >- >-Revert the content change from rev 2: >- >- $ hg up -C 2 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm bar >- $ echo line1 > bar >- $ hg ci -m '4: revert content change from rev 2' >- created new head >- >- $ hg log --template '{rev}:{node|short} {parents}\n' >- 4:2263c1be0967 2:0f2ff26688b9 >- 3:0555950ead28 2:0f2ff26688b9 1:5cd961e4045d >- 2:0f2ff26688b9 0:2665aaee66e9 >- 1:5cd961e4045d >- 0:2665aaee66e9 >- >-This should use bar@rev2 as the ancestor: >- >- $ hg --debug merge 3 >- searching for copies back to rev 1 >- resolving manifests >- overwrite None partial False >- ancestor 0f2ff26688b9 local 2263c1be0967+ remote 0555950ead28 >- bar: versions differ -> m >- preserving bar for resolve of bar >- updating: bar 1/1 files (100.00%) >- picked tool 'internal:merge' for bar (binary False symlink False) >- merging bar >- my bar@2263c1be0967+ other bar@0555950ead28 ancestor bar@0f2ff26688b9 >- premerge successful >- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- >- $ cat bar >- line1 >- line2 >- >- $ hg ci -m '5: merge' >- >- $ hg debugindex .hg/store/data/bar.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 77 0 2 d35118874825 000000000000 000000000000 >- 1 77 76 0 3 5345f5ab8abd 000000000000 d35118874825 >- 2 153 7 2 4 ff4b45017382 d35118874825 000000000000 >- 3 160 13 3 5 3701b4893544 ff4b45017382 5345f5ab8abd >- >- >-Same thing, but with the merge on 3 having the rename >-on the remote parent: >- >- $ cd .. >- $ hg clone -U -r 1 -r 2 a b >- adding changesets >- adding manifests >- adding file changes >- added 3 changesets with 3 changes to 2 files (+1 heads) >- $ cd b >- >- $ hg up -C 1 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >- $ hg merge 2 >- merging foo and bar to bar >- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- >- $ cat bar >- line0 >- line1 >- line2 >- >- $ hg ci -m '3: merge with remote rename' >- >- $ hg debugindex .hg/store/data/bar.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 77 0 2 d35118874825 000000000000 000000000000 >- 1 77 76 0 3 5345f5ab8abd 000000000000 d35118874825 >- >- $ hg debugrename bar >- bar renamed from foo:9e25c27b87571a1edee5ae4dddee5687746cc8e2 >- >- $ hg debugindex .hg/store/data/foo.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 7 0 0 690b295714ae 000000000000 000000000000 >- 1 7 13 1 1 9e25c27b8757 690b295714ae 000000000000 >- >- >-Revert the content change from rev 2: >- >- $ hg up -C 2 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm bar >- $ echo line1 > bar >- $ hg ci -m '4: revert content change from rev 2' >- created new head >- >- $ hg log --template '{rev}:{node|short} {parents}\n' >- 4:2263c1be0967 2:0f2ff26688b9 >- 3:3ffa6b9e35f0 1:5cd961e4045d 2:0f2ff26688b9 >- 2:0f2ff26688b9 0:2665aaee66e9 >- 1:5cd961e4045d >- 0:2665aaee66e9 >- >-This should use bar@rev2 as the ancestor: >- >- $ hg --debug merge 3 >- searching for copies back to rev 1 >- resolving manifests >- overwrite None partial False >- ancestor 0f2ff26688b9 local 2263c1be0967+ remote 3ffa6b9e35f0 >- bar: versions differ -> m >- preserving bar for resolve of bar >- updating: bar 1/1 files (100.00%) >- picked tool 'internal:merge' for bar (binary False symlink False) >- merging bar >- my bar@2263c1be0967+ other bar@3ffa6b9e35f0 ancestor bar@0f2ff26688b9 >- premerge successful >- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- >- $ cat bar >- line1 >- line2 >- >- $ hg ci -m '5: merge' >- >- $ hg debugindex .hg/store/data/bar.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 77 0 2 d35118874825 000000000000 000000000000 >- 1 77 76 0 3 5345f5ab8abd 000000000000 d35118874825 >- 2 153 7 2 4 ff4b45017382 d35118874825 000000000000 >- 3 160 13 3 5 3701b4893544 ff4b45017382 5345f5ab8abd >- >!. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-guards.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-guards.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-guards.t.err >@@ -1,436 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ echo "[extensions]" >> $HGRCPATH >- $ echo "mq=" >> $HGRCPATH >- >- $ hg init >- $ hg qinit >- >- $ echo x > x >- $ hg ci -Ama >- adding x >- >- $ hg qnew a.patch >- $ echo a > a >- $ hg add a >- $ hg qrefresh >- >- $ hg qnew b.patch >- $ echo b > b >- $ hg add b >- $ hg qrefresh >- >- $ hg qnew c.patch >- $ echo c > c >- $ hg add c >- $ hg qrefresh >- >- $ hg qpop -a >- popping c.patch >- popping b.patch >- popping a.patch >- patch queue now empty >- >- >-should fail >- >- $ hg qguard does-not-exist.patch +bleh >- abort: no patch named does-not-exist.patch >- [255] >- >- >-should fail >- >- $ hg qguard +fail >- abort: no patches applied >- [255] >- >- $ hg qpush >- applying a.patch >- now at: a.patch >- >-should guard a.patch >- >- $ hg qguard +a >- >-should print +a >- >- $ hg qguard >- a.patch: +a >- $ hg qpop >- popping a.patch >- patch queue now empty >- >- >-should fail >- >- $ hg qpush a.patch >- cannot push 'a.patch' - guarded by ['+a'] >- [1] >- >- $ hg qguard a.patch >- a.patch: +a >- >-should push b.patch >- >- $ hg qpush >- applying b.patch >- now at: b.patch >- >- $ hg qpop >- popping b.patch >- patch queue now empty >- >-test selection of an empty guard >- >- $ hg qselect "" >- abort: guard cannot be an empty string >- [255] >- $ hg qselect a >- number of unguarded, unapplied patches has changed from 2 to 3 >- >-should push a.patch >- >- $ hg qpush >- applying a.patch >- now at: a.patch >- >- $ hg qguard -- c.patch -a >- >-should print -a >- >- $ hg qguard c.patch >- c.patch: -a >- >- >-should skip c.patch >- >- $ hg qpush -a >- applying b.patch >- skipping c.patch - guarded by '-a' >- now at: b.patch >- >-should display b.patch >- >- $ hg qtop >- b.patch >- >- $ hg qguard -n c.patch >- >-should push c.patch >- >- $ hg qpush -a >- applying c.patch >- now at: c.patch >- >- $ hg qpop -a >- popping c.patch >- popping b.patch >- popping a.patch >- patch queue now empty >- $ hg qselect -n >- guards deactivated >- number of unguarded, unapplied patches has changed from 3 to 2 >- >-should push all >- >- $ hg qpush -a >- applying b.patch >- applying c.patch >- now at: c.patch >- >- $ hg qpop -a >- popping c.patch >- popping b.patch >- patch queue now empty >- $ hg qguard a.patch +1 >- $ hg qguard b.patch +2 >- $ hg qselect 1 >- number of unguarded, unapplied patches has changed from 1 to 2 >- >-should push a.patch, not b.patch >- >- $ hg qpush >- applying a.patch >- now at: a.patch >- $ hg qpush >- applying c.patch >- now at: c.patch >- $ hg qpop -a >- popping c.patch >- popping a.patch >- patch queue now empty >- >- $ hg qselect 2 >- >-should push b.patch >- >- $ hg qpush >- applying b.patch >- now at: b.patch >- $ hg qpush -a >- applying c.patch >- now at: c.patch >- >-Used to be an issue with holes in the patch sequence >-So, put one hole on the base and ask for topmost patch. >- >- $ hg qtop >- c.patch >- $ hg qpop -a >- popping c.patch >- popping b.patch >- patch queue now empty >- >- $ hg qselect 1 2 >- number of unguarded, unapplied patches has changed from 2 to 3 >- >-should push a.patch, b.patch >- >- $ hg qpush >- applying a.patch >- now at: a.patch >- $ hg qpush >- applying b.patch >- now at: b.patch >- $ hg qpop -a >- popping b.patch >- popping a.patch >- patch queue now empty >- >- $ hg qguard -- a.patch +1 +2 -3 >- $ hg qselect 1 2 3 >- number of unguarded, unapplied patches has changed from 3 to 2 >- >- >-list patches and guards >- >- $ hg qguard -l >- a.patch: +1 +2 -3 >- b.patch: +2 >- c.patch: unguarded >- >-have at least one patch applied to test coloring >- >- $ hg qpush >- applying b.patch >- now at: b.patch >- >-list patches and guards with color >- >- $ hg --config extensions.color= qguard --config color.mode=ansi \ >- > -l --color=always >- [0;30;1ma.patch[0m: [0;33m+1[0m [0;33m+2[0m [0;31m-3[0m >- [0;34;1;4mb.patch[0m: [0;33m+2[0m >- [0;30;1mc.patch[0m: [0;32munguarded[0m >- >-should pop b.patch >- >- $ hg qpop >- popping b.patch >- patch queue now empty >- >-list series >- >- $ hg qseries -v >- 0 G a.patch >- 1 U b.patch >- 2 U c.patch >- >-list guards >- >- $ hg qselect >- 1 >- 2 >- 3 >- >-should push b.patch >- >- $ hg qpush >- applying b.patch >- now at: b.patch >- >- $ hg qpush -a >- applying c.patch >- now at: c.patch >- $ hg qselect -n --reapply >- guards deactivated >- popping guarded patches >- popping c.patch >- popping b.patch >- patch queue now empty >- reapplying unguarded patches >- applying c.patch >- now at: c.patch >- >-guards in series file: +1 +2 -3 >- >- $ hg qselect -s >- +1 >- +2 >- -3 >- >-should show c.patch >- >- $ hg qapplied >- c.patch >- >- $ hg qrename a.patch new.patch >- >-should show : >- >- >-new.patch: +1 +2 -3 >- >- >-b.patch: +2 >- >- >-c.patch: unguarded >- >- $ hg qguard -l >- new.patch: +1 +2 -3 >- b.patch: +2 >- c.patch: unguarded >- >- $ hg qnew d.patch >- $ hg qpop >- popping d.patch >- now at: c.patch >- >-should show new.patch and b.patch as Guarded, c.patch as Applied >- >- >-and d.patch as Unapplied >- >- $ hg qseries -v >- 0 G new.patch >- 1 G b.patch >- 2 A c.patch >- 3 U d.patch >- >-qseries again, but with color >- >- $ hg --config extensions.color= qseries -v --color=always >- 0 G [0;30;1mnew.patch[0m >- 1 G [0;30;1mb.patch[0m >- 2 A [0;34;1;4mc.patch[0m >- 3 U [0;30;1md.patch[0m >- >- $ hg qguard d.patch +2 >- >-new.patch, b.patch: Guarded. c.patch: Applied. d.patch: Guarded. >- >- $ hg qseries -v >- 0 G new.patch >- 1 G b.patch >- 2 A c.patch >- 3 G d.patch >- >- $ qappunappv() >- > { >- > for command in qapplied "qapplied -v" qunapplied "qunapplied -v"; do >- > echo % hg $command >- > hg $command >- > done >- > } >- >- $ hg qpop -a >- popping c.patch >- patch queue now empty >- $ hg qguard -l >- new.patch: +1 +2 -3 >- b.patch: +2 >- c.patch: unguarded >- d.patch: +2 >- $ qappunappv >- % hg qapplied >- % hg qapplied -v >- % hg qunapplied >- c.patch >- % hg qunapplied -v >- 0 G new.patch >- 1 G b.patch >- 2 U c.patch >- 3 G d.patch >- $ hg qselect 1 >- number of unguarded, unapplied patches has changed from 1 to 2 >- $ qappunappv >- % hg qapplied >- % hg qapplied -v >- % hg qunapplied >- new.patch >- c.patch >- % hg qunapplied -v >- 0 U new.patch >- 1 G b.patch >- 2 U c.patch >- 3 G d.patch >- $ hg qpush -a >- applying new.patch >- skipping b.patch - guarded by ['+2'] >- applying c.patch >- skipping d.patch - guarded by ['+2'] >- now at: c.patch >- $ qappunappv >- % hg qapplied >- new.patch >- c.patch >- % hg qapplied -v >- 0 A new.patch >- 1 G b.patch >- 2 A c.patch >- % hg qunapplied >- % hg qunapplied -v >- 3 G d.patch >- $ hg qselect 2 >- number of unguarded, unapplied patches has changed from 0 to 1 >- number of guarded, applied patches has changed from 1 to 0 >- $ qappunappv >- % hg qapplied >- new.patch >- c.patch >- % hg qapplied -v >- 0 A new.patch >- 1 U b.patch >- 2 A c.patch >- % hg qunapplied >- d.patch >- % hg qunapplied -v >- 3 U d.patch >- >- $ for patch in `hg qseries`; do >- > echo % hg qapplied $patch >- > hg qapplied $patch >- > echo % hg qunapplied $patch >- > hg qunapplied $patch >- > done >- % hg qapplied new.patch >- new.patch >- % hg qunapplied new.patch >- b.patch >- d.patch >- % hg qapplied b.patch >- new.patch >- % hg qunapplied b.patch >- d.patch >- % hg qapplied c.patch >- new.patch >- c.patch >- % hg qunapplied c.patch >- d.patch >- % hg qapplied d.patch >- new.patch >- c.patch >- % hg qunapplied d.patch >- >- >-hg qseries -m: only b.patch should be shown >-the guards file was not ignored in the past >- >- $ hg qdelete -k b.patch >- $ hg qseries -m >- b.patch >- >-hg qseries -m with color >- >- $ hg --config extensions.color= qseries -m --color=always >- [0;31;1mb.patch[0m >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-merge2.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-merge2.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-merge2.t.err >@@ -1,53 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ mkdir t >- $ cd t >- $ hg init >- $ echo This is file a1 > a >- $ hg add a >- $ hg commit -m "commit #0" >- $ echo This is file b1 > b >- $ hg add b >- $ hg commit -m "commit #1" >- $ rm b >- $ hg update 0 >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo This is file b2 > b >- $ hg add b >- $ hg commit -m "commit #2" >- created new head >- $ cd ..; rm -r t >- >- $ mkdir t >- $ cd t >- $ hg init >- $ echo This is file a1 > a >- $ hg add a >- $ hg commit -m "commit #0" >- $ echo This is file b1 > b >- $ hg add b >- $ hg commit -m "commit #1" >- $ rm b >- $ hg update 0 >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo This is file b2 > b >- $ hg commit -A -m "commit #2" >- adding b >- created new head >- $ cd ..; rm -r t >- >- $ mkdir t >- $ cd t >- $ hg init >- $ echo This is file a1 > a >- $ hg add a >- $ hg commit -m "commit #0" >- $ echo This is file b1 > b >- $ hg add b >- $ hg commit -m "commit #1" >- $ rm b >- $ hg remove b >- $ hg update 0 >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo This is file b2 > b >- $ hg commit -A -m "commit #2" >- adding b >- created new head >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-merge-local.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-merge-local.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-merge-local.t.err >@@ -1,138 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ hg init >- >-Revision 0: >- >- $ echo "unchanged" > unchanged >- $ echo "remove me" > remove >- $ echo "copy me" > copy >- $ echo "move me" > move >- $ for i in 1 2 3 4 5 6 7 8 9; do >- > echo "merge ok $i" >> zzz1_merge_ok >- > done >- $ echo "merge bad" > zzz2_merge_bad >- $ hg ci -Am "revision 0" >- adding copy >- adding move >- adding remove >- adding unchanged >- adding zzz1_merge_ok >- adding zzz2_merge_bad >- >-Revision 1: >- >- $ hg rm remove >- $ hg mv move moved >- $ hg cp copy copied >- $ echo "added" > added >- $ hg add added >- $ echo "new first line" > zzz1_merge_ok >- $ hg cat zzz1_merge_ok >> zzz1_merge_ok >- $ echo "new last line" >> zzz2_merge_bad >- $ hg ci -m "revision 1" >- >-Local changes to revision 0: >- >- $ hg co 0 >- 4 files updated, 0 files merged, 3 files removed, 0 files unresolved >- $ echo "new last line" >> zzz1_merge_ok >- $ echo "another last line" >> zzz2_merge_bad >- >- $ hg diff --nodates | grep "^[+-][^<>]" >- --- a/zzz1_merge_ok >- +++ b/zzz1_merge_ok >- +new last line >- --- a/zzz2_merge_bad >- +++ b/zzz2_merge_bad >- +another last line >- >- $ hg st >- M zzz1_merge_ok >- M zzz2_merge_bad >- >-Local merge with bad merge tool: >- >- $ HGMERGE=false hg co >- merging zzz1_merge_ok >- merging zzz2_merge_bad >- merging zzz2_merge_bad failed! >- 3 files updated, 1 files merged, 2 files removed, 1 files unresolved >- use 'hg resolve' to retry unresolved file merges >- [1] >- >- $ hg co 0 >- merging zzz1_merge_ok >- merging zzz2_merge_bad >- warning: conflicts during merge. >- merging zzz2_merge_bad failed! >- 2 files updated, 1 files merged, 3 files removed, 1 files unresolved >- use 'hg resolve' to retry unresolved file merges >- [1] >- >- $ hg diff --nodates | grep "^[+-][^<>]" >- --- a/zzz1_merge_ok >- +++ b/zzz1_merge_ok >- +new last line >- --- a/zzz2_merge_bad >- +++ b/zzz2_merge_bad >- +another last line >- +======= >- >- $ hg st >- M zzz1_merge_ok >- M zzz2_merge_bad >- ? zzz2_merge_bad.orig >- >-Local merge with conflicts: >- >- $ hg co >- merging zzz1_merge_ok >- merging zzz2_merge_bad >- warning: conflicts during merge. >- merging zzz2_merge_bad failed! >- 3 files updated, 1 files merged, 2 files removed, 1 files unresolved >- use 'hg resolve' to retry unresolved file merges >- [1] >- >- $ hg co 0 >- merging zzz1_merge_ok >- merging zzz2_merge_bad >- warning: conflicts during merge. >- merging zzz2_merge_bad failed! >- 2 files updated, 1 files merged, 3 files removed, 1 files unresolved >- use 'hg resolve' to retry unresolved file merges >- [1] >- >- $ hg diff --nodates | grep "^[+-][^<>]" >- --- a/zzz1_merge_ok >- +++ b/zzz1_merge_ok >- +new last line >- --- a/zzz2_merge_bad >- +++ b/zzz2_merge_bad >- +another last line >- +======= >- +======= >- +new last line >- +======= >- >- $ hg st >- M zzz1_merge_ok >- M zzz2_merge_bad >- ? zzz2_merge_bad.orig >- >-Local merge without conflicts: >- >- $ hg revert zzz2_merge_bad >- >- $ hg co >- merging zzz1_merge_ok >- 4 files updated, 1 files merged, 2 files removed, 0 files unresolved >- >- $ hg diff --nodates | grep "^[+-][^<>]" >- --- a/zzz1_merge_ok >- +++ b/zzz1_merge_ok >- +new last line >- >- $ hg st >- M zzz1_merge_ok >- ? zzz2_merge_bad.orig >- >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-header-from.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-header-from.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-header-from.t.err >@@ -1,969 +1,4 @@ >+ >+ ### Abort: timeout after 180 seconds. > > $ echo "[extensions]" >> $HGRCPATH >- $ echo "mq=" >> $HGRCPATH >- $ echo "[diff]" >> $HGRCPATH >- $ echo "nodates=true" >> $HGRCPATH >- $ catlog() { >- > cat .hg/patches/$1.patch | sed -e "s/^diff \-r [0-9a-f]* /diff -r ... /" \ >- > -e "s/^\(# Parent \).*/\1/" >- > hg log --template "{rev}: {desc} - {author}\n" >- > } >- $ runtest() { >- > echo ==== init >- > hg init a >- > cd a >- > hg qinit >- > >- > >- > echo ==== qnew -U >- > hg qnew -U 1.patch >- > catlog 1 >- > >- > echo ==== qref >- > echo "1" >1 >- > hg add >- > hg qref >- > catlog 1 >- > >- > echo ==== qref -u >- > hg qref -u mary >- > catlog 1 >- > >- > echo ==== qnew >- > hg qnew 2.patch >- > echo "2" >2 >- > hg add >- > hg qref >- > catlog 2 >- > >- > echo ==== qref -u >- > hg qref -u jane >- > catlog 2 >- > >- > >- > echo ==== qnew -U -m >- > hg qnew -U -m "Three" 3.patch >- > catlog 3 >- > >- > echo ==== qref >- > echo "3" >3 >- > hg add >- > hg qref >- > catlog 3 >- > >- > echo ==== qref -m >- > hg qref -m "Drei" >- > catlog 3 >- > >- > echo ==== qref -u >- > hg qref -u mary >- > catlog 3 >- > >- > echo ==== qref -u -m >- > hg qref -u maria -m "Three (again)" >- > catlog 3 >- > >- > echo ==== qnew -m >- > hg qnew -m "Four" 4.patch >- > echo "4" >4of t >- > hg add >- > hg qref >- > catlog 4 >- > >- > echo ==== qref -u >- > hg qref -u jane >- > catlog 4 >- > >- > >- > echo ==== qnew with HG header >- > hg qnew --config 'mq.plain=true' 5.patch >- > hg qpop >- > echo "# HG changeset patch" >>.hg/patches/5.patch >- > echo "# User johndoe" >>.hg/patches/5.patch >- > hg qpush 2>&1 | grep 'now at' >- > catlog 5 >- > >- > echo ==== hg qref >- > echo "5" >5 >- > hg add >- > hg qref >- > catlog 5 >- > >- > echo ==== hg qref -U >- > hg qref -U >- > catlog 5 >- > >- > echo ==== hg qref -u >- > hg qref -u johndeere >- > catlog 5 >- > >- > >- > echo ==== qnew with plain header >- > hg qnew --config 'mq.plain=true' -U 6.patch >- > hg qpop >- > hg qpush 2>&1 | grep 'now at' >- > catlog 6 >- > >- > echo ==== hg qref >- > echo "6" >6 >- > hg add >- > hg qref >- > catlog 6 >- > >- > echo ==== hg qref -U >- > hg qref -U >- > catlog 6 >- > >- > echo ==== hg qref -u >- > hg qref -u johndeere >- > catlog 6 >- > >- > >- > echo ==== "qpop -a / qpush -a" >- > hg qpop -a >- > hg qpush -a >- > hg log --template "{rev}: {desc} - {author}\n" >- > } >- >-======= plain headers >- >- $ echo "[mq]" >> $HGRCPATH >- $ echo "plain=true" >> $HGRCPATH >- $ mkdir sandbox >- $ (cd sandbox ; runtest) >- ==== init >- ==== qnew -U >- From: test >- >- 0: [mq]: 1.patch - test >- ==== qref >- adding 1 >- From: test >- >- diff -r ... 1 >- --- /dev/null >- +++ b/1 >- @@ -0,0 +1,1 @@ >- +1 >- 0: [mq]: 1.patch - test >- ==== qref -u >- From: mary >- >- diff -r ... 1 >- --- /dev/null >- +++ b/1 >- @@ -0,0 +1,1 @@ >- +1 >- 0: [mq]: 1.patch - mary >- ==== qnew >- adding 2 >- diff -r ... 2 >- --- /dev/null >- +++ b/2 >- @@ -0,0 +1,1 @@ >- +2 >- 1: [mq]: 2.patch - test >- 0: [mq]: 1.patch - mary >- ==== qref -u >- From: jane >- >- diff -r ... 2 >- --- /dev/null >- +++ b/2 >- @@ -0,0 +1,1 @@ >- +2 >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== qnew -U -m >- From: test >- >- Three >- >- 2: Three - test >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== qref >- adding 3 >- From: test >- >- Three >- >- diff -r ... 3 >- --- /dev/null >- +++ b/3 >- @@ -0,0 +1,1 @@ >- +3 >- 2: Three - test >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== qref -m >- From: test >- >- Drei >- >- diff -r ... 3 >- --- /dev/null >- +++ b/3 >- @@ -0,0 +1,1 @@ >- +3 >- 2: Drei - test >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== qref -u >- From: mary >- >- Drei >- >- diff -r ... 3 >- --- /dev/null >- +++ b/3 >- @@ -0,0 +1,1 @@ >- +3 >- 2: Drei - mary >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== qref -u -m >- From: maria >- >- Three (again) >- >- diff -r ... 3 >- --- /dev/null >- +++ b/3 >- @@ -0,0 +1,1 @@ >- +3 >- 2: Three (again) - maria >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== qnew -m >- adding 4of >- Four >- >- diff -r ... 4of >- --- /dev/null >- +++ b/4of >- @@ -0,0 +1,1 @@ >- +4 t >- 3: Four - test >- 2: Three (again) - maria >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== qref -u >- From: jane >- Four >- >- diff -r ... 4of >- --- /dev/null >- +++ b/4of >- @@ -0,0 +1,1 @@ >- +4 t >- 3: Four - jane >- 2: Three (again) - maria >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== qnew with HG header >- popping 5.patch >- now at: 4.patch >- now at: 5.patch >- # HG changeset patch >- # User johndoe >- 4: imported patch 5.patch - johndoe >- 3: Four - jane >- 2: Three (again) - maria >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== hg qref >- adding 5 >- # HG changeset patch >- # Parent >- # User johndoe >- >- diff -r ... 5 >- --- /dev/null >- +++ b/5 >- @@ -0,0 +1,1 @@ >- +5 >- 4: [mq]: 5.patch - johndoe >- 3: Four - jane >- 2: Three (again) - maria >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== hg qref -U >- # HG changeset patch >- # Parent >- # User test >- >- diff -r ... 5 >- --- /dev/null >- +++ b/5 >- @@ -0,0 +1,1 @@ >- +5 >- 4: [mq]: 5.patch - test >- 3: Four - jane >- 2: Three (again) - maria >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== hg qref -u >- # HG changeset patch >- # Parent >- # User johndeere >- >- diff -r ... 5 >- --- /dev/null >- +++ b/5 >- @@ -0,0 +1,1 @@ >- +5 >- 4: [mq]: 5.patch - johndeere >- 3: Four - jane >- 2: Three (again) - maria >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== qnew with plain header >- popping 6.patch >- now at: 5.patch >- now at: 6.patch >- From: test >- >- 5: imported patch 6.patch - test >- 4: [mq]: 5.patch - johndeere >- 3: Four - jane >- 2: Three (again) - maria >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== hg qref >- adding 6 >- From: test >- >- diff -r ... 6 >- --- /dev/null >- +++ b/6 >- @@ -0,0 +1,1 @@ >- +6 >- 5: [mq]: 6.patch - test >- 4: [mq]: 5.patch - johndeere >- 3: Four - jane >- 2: Three (again) - maria >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== hg qref -U >- From: test >- >- diff -r ... 6 >- --- /dev/null >- +++ b/6 >- @@ -0,0 +1,1 @@ >- +6 >- 5: [mq]: 6.patch - test >- 4: [mq]: 5.patch - johndeere >- 3: Four - jane >- 2: Three (again) - maria >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== hg qref -u >- From: johndeere >- >- diff -r ... 6 >- --- /dev/null >- +++ b/6 >- @@ -0,0 +1,1 @@ >- +6 >- 5: [mq]: 6.patch - johndeere >- 4: [mq]: 5.patch - johndeere >- 3: Four - jane >- 2: Three (again) - maria >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== qpop -a / qpush -a >- popping 6.patch >- popping 5.patch >- popping 4.patch >- popping 3.patch >- popping 2.patch >- popping 1.patch >- patch queue now empty >- applying 1.patch >- applying 2.patch >- applying 3.patch >- applying 4.patch >- applying 5.patch >- applying 6.patch >- now at: 6.patch >- 5: imported patch 6.patch - johndeere >- 4: imported patch 5.patch - johndeere >- 3: Four - jane >- 2: Three (again) - maria >- 1: imported patch 2.patch - jane >- 0: imported patch 1.patch - mary >- $ rm -r sandbox >- >-======= hg headers >- >- $ echo "plain=false" >> $HGRCPATH >- $ mkdir sandbox >- $ (cd sandbox ; runtest) >- ==== init >- ==== qnew -U >- # HG changeset patch >- # Parent >- # User test >- 0: [mq]: 1.patch - test >- ==== qref >- adding 1 >- # HG changeset patch >- # Parent >- # User test >- >- diff -r ... 1 >- --- /dev/null >- +++ b/1 >- @@ -0,0 +1,1 @@ >- +1 >- 0: [mq]: 1.patch - test >- ==== qref -u >- # HG changeset patch >- # Parent >- # User mary >- >- diff -r ... 1 >- --- /dev/null >- +++ b/1 >- @@ -0,0 +1,1 @@ >- +1 >- 0: [mq]: 1.patch - mary >- ==== qnew >- adding 2 >- # HG changeset patch >- # Parent >- >- diff -r ... 2 >- --- /dev/null >- +++ b/2 >- @@ -0,0 +1,1 @@ >- +2 >- 1: [mq]: 2.patch - test >- 0: [mq]: 1.patch - mary >- ==== qref -u >- # HG changeset patch >- # User jane >- # Parent >- >- diff -r ... 2 >- --- /dev/null >- +++ b/2 >- @@ -0,0 +1,1 @@ >- +2 >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== qnew -U -m >- # HG changeset patch >- # Parent >- # User test >- Three >- >- 2: Three - test >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== qref >- adding 3 >- # HG changeset patch >- # Parent >- # User test >- Three >- >- diff -r ... 3 >- --- /dev/null >- +++ b/3 >- @@ -0,0 +1,1 @@ >- +3 >- 2: Three - test >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== qref -m >- # HG changeset patch >- # Parent >- # User test >- Drei >- >- diff -r ... 3 >- --- /dev/null >- +++ b/3 >- @@ -0,0 +1,1 @@ >- +3 >- 2: Drei - test >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== qref -u >- # HG changeset patch >- # Parent >- # User mary >- Drei >- >- diff -r ... 3 >- --- /dev/null >- +++ b/3 >- @@ -0,0 +1,1 @@ >- +3 >- 2: Drei - mary >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== qref -u -m >- # HG changeset patch >- # Parent >- # User maria >- Three (again) >- >- diff -r ... 3 >- --- /dev/null >- +++ b/3 >- @@ -0,0 +1,1 @@ >- +3 >- 2: Three (again) - maria >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== qnew -m >- adding 4of >- # HG changeset patch >- # Parent >- Four >- >- diff -r ... 4of >- --- /dev/null >- +++ b/4of >- @@ -0,0 +1,1 @@ >- +4 t >- 3: Four - test >- 2: Three (again) - maria >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== qref -u >- # HG changeset patch >- # User jane >- # Parent >- Four >- >- diff -r ... 4of >- --- /dev/null >- +++ b/4of >- @@ -0,0 +1,1 @@ >- +4 t >- 3: Four - jane >- 2: Three (again) - maria >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== qnew with HG header >- popping 5.patch >- now at: 4.patch >- now at: 5.patch >- # HG changeset patch >- # User johndoe >- 4: imported patch 5.patch - johndoe >- 3: Four - jane >- 2: Three (again) - maria >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== hg qref >- adding 5 >- # HG changeset patch >- # Parent >- # User johndoe >- >- diff -r ... 5 >- --- /dev/null >- +++ b/5 >- @@ -0,0 +1,1 @@ >- +5 >- 4: [mq]: 5.patch - johndoe >- 3: Four - jane >- 2: Three (again) - maria >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== hg qref -U >- # HG changeset patch >- # Parent >- # User test >- >- diff -r ... 5 >- --- /dev/null >- +++ b/5 >- @@ -0,0 +1,1 @@ >- +5 >- 4: [mq]: 5.patch - test >- 3: Four - jane >- 2: Three (again) - maria >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== hg qref -u >- # HG changeset patch >- # Parent >- # User johndeere >- >- diff -r ... 5 >- --- /dev/null >- +++ b/5 >- @@ -0,0 +1,1 @@ >- +5 >- 4: [mq]: 5.patch - johndeere >- 3: Four - jane >- 2: Three (again) - maria >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== qnew with plain header >- popping 6.patch >- now at: 5.patch >- now at: 6.patch >- From: test >- >- 5: imported patch 6.patch - test >- 4: [mq]: 5.patch - johndeere >- 3: Four - jane >- 2: Three (again) - maria >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== hg qref >- adding 6 >- From: test >- >- diff -r ... 6 >- --- /dev/null >- +++ b/6 >- @@ -0,0 +1,1 @@ >- +6 >- 5: [mq]: 6.patch - test >- 4: [mq]: 5.patch - johndeere >- 3: Four - jane >- 2: Three (again) - maria >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== hg qref -U >- From: test >- >- diff -r ... 6 >- --- /dev/null >- +++ b/6 >- @@ -0,0 +1,1 @@ >- +6 >- 5: [mq]: 6.patch - test >- 4: [mq]: 5.patch - johndeere >- 3: Four - jane >- 2: Three (again) - maria >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== hg qref -u >- From: johndeere >- >- diff -r ... 6 >- --- /dev/null >- +++ b/6 >- @@ -0,0 +1,1 @@ >- +6 >- 5: [mq]: 6.patch - johndeere >- 4: [mq]: 5.patch - johndeere >- 3: Four - jane >- 2: Three (again) - maria >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== qpop -a / qpush -a >- popping 6.patch >- popping 5.patch >- popping 4.patch >- popping 3.patch >- popping 2.patch >- popping 1.patch >- patch queue now empty >- applying 1.patch >- applying 2.patch >- applying 3.patch >- applying 4.patch >- applying 5.patch >- applying 6.patch >- now at: 6.patch >- 5: imported patch 6.patch - johndeere >- 4: imported patch 5.patch - johndeere >- 3: Four - jane >- 2: Three (again) - maria >- 1: imported patch 2.patch - jane >- 0: imported patch 1.patch - mary >- $ rm -r sandbox >- $ runtest >- ==== init >- ==== qnew -U >- # HG changeset patch >- # Parent >- # User test >- 0: [mq]: 1.patch - test >- ==== qref >- adding 1 >- # HG changeset patch >- # Parent >- # User test >- >- diff -r ... 1 >- --- /dev/null >- +++ b/1 >- @@ -0,0 +1,1 @@ >- +1 >- 0: [mq]: 1.patch - test >- ==== qref -u >- # HG changeset patch >- # Parent >- # User mary >- >- diff -r ... 1 >- --- /dev/null >- +++ b/1 >- @@ -0,0 +1,1 @@ >- +1 >- 0: [mq]: 1.patch - mary >- ==== qnew >- adding 2 >- # HG changeset patch >- # Parent >- >- diff -r ... 2 >- --- /dev/null >- +++ b/2 >- @@ -0,0 +1,1 @@ >- +2 >- 1: [mq]: 2.patch - test >- 0: [mq]: 1.patch - mary >- ==== qref -u >- # HG changeset patch >- # User jane >- # Parent >- >- diff -r ... 2 >- --- /dev/null >- +++ b/2 >- @@ -0,0 +1,1 @@ >- +2 >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== qnew -U -m >- # HG changeset patch >- # Parent >- # User test >- Three >- >- 2: Three - test >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== qref >- adding 3 >- # HG changeset patch >- # Parent >- # User test >- Three >- >- diff -r ... 3 >- --- /dev/null >- +++ b/3 >- @@ -0,0 +1,1 @@ >- +3 >- 2: Three - test >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== qref -m >- # HG changeset patch >- # Parent >- # User test >- Drei >- >- diff -r ... 3 >- --- /dev/null >- +++ b/3 >- @@ -0,0 +1,1 @@ >- +3 >- 2: Drei - test >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== qref -u >- # HG changeset patch >- # Parent >- # User mary >- Drei >- >- diff -r ... 3 >- --- /dev/null >- +++ b/3 >- @@ -0,0 +1,1 @@ >- +3 >- 2: Drei - mary >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== qref -u -m >- # HG changeset patch >- # Parent >- # User maria >- Three (again) >- >- diff -r ... 3 >- --- /dev/null >- +++ b/3 >- @@ -0,0 +1,1 @@ >- +3 >- 2: Three (again) - maria >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== qnew -m >- adding 4of >- # HG changeset patch >- # Parent >- Four >- >- diff -r ... 4of >- --- /dev/null >- +++ b/4of >- @@ -0,0 +1,1 @@ >- +4 t >- 3: Four - test >- 2: Three (again) - maria >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== qref -u >- # HG changeset patch >- # User jane >- # Parent >- Four >- >- diff -r ... 4of >- --- /dev/null >- +++ b/4of >- @@ -0,0 +1,1 @@ >- +4 t >- 3: Four - jane >- 2: Three (again) - maria >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== qnew with HG header >- popping 5.patch >- now at: 4.patch >- now at: 5.patch >- # HG changeset patch >- # User johndoe >- 4: imported patch 5.patch - johndoe >- 3: Four - jane >- 2: Three (again) - maria >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== hg qref >- adding 5 >- # HG changeset patch >- # Parent >- # User johndoe >- >- diff -r ... 5 >- --- /dev/null >- +++ b/5 >- @@ -0,0 +1,1 @@ >- +5 >- 4: [mq]: 5.patch - johndoe >- 3: Four - jane >- 2: Three (again) - maria >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== hg qref -U >- # HG changeset patch >- # Parent >- # User test >- >- diff -r ... 5 >- --- /dev/null >- +++ b/5 >- @@ -0,0 +1,1 @@ >- +5 >- 4: [mq]: 5.patch - test >- 3: Four - jane >- 2: Three (again) - maria >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== hg qref -u >- # HG changeset patch >- # Parent >- # User johndeere >- >- diff -r ... 5 >- --- /dev/null >- +++ b/5 >- @@ -0,0 +1,1 @@ >- +5 >- 4: [mq]: 5.patch - johndeere >- 3: Four - jane >- 2: Three (again) - maria >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== qnew with plain header >- popping 6.patch >- now at: 5.patch >- now at: 6.patch >- From: test >- >- 5: imported patch 6.patch - test >- 4: [mq]: 5.patch - johndeere >- 3: Four - jane >- 2: Three (again) - maria >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== hg qref >- adding 6 >- From: test >- >- diff -r ... 6 >- --- /dev/null >- +++ b/6 >- @@ -0,0 +1,1 @@ >- +6 >- 5: [mq]: 6.patch - test >- 4: [mq]: 5.patch - johndeere >- 3: Four - jane >- 2: Three (again) - maria >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== hg qref -U >- From: test >- >- diff -r ... 6 >- --- /dev/null >- +++ b/6 >- @@ -0,0 +1,1 @@ >- +6 >- 5: [mq]: 6.patch - test >- 4: [mq]: 5.patch - johndeere >- 3: Four - jane >- 2: Three (again) - maria >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== hg qref -u >- From: johndeere >- >- diff -r ... 6 >- --- /dev/null >- +++ b/6 >- @@ -0,0 +1,1 @@ >- +6 >- 5: [mq]: 6.patch - johndeere >- 4: [mq]: 5.patch - johndeere >- 3: Four - jane >- 2: Three (again) - maria >- 1: [mq]: 2.patch - jane >- 0: [mq]: 1.patch - mary >- ==== qpop -a / qpush -a >- popping 6.patch >- popping 5.patch >- popping 4.patch >- popping 3.patch >- popping 2.patch >- popping 1.patch >- patch queue now empty >- applying 1.patch >- applying 2.patch >- applying 3.patch >- applying 4.patch >- applying 5.patch >- applying 6.patch >- now at: 6.patch >- 5: imported patch 6.patch - johndeere >- 4: imported patch 5.patch - johndeere >- 3: Four - jane >- 2: Three (again) - maria >- 1: imported patch 2.patch - jane >- 0: imported patch 1.patch - mary >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-missingfiles.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-missingfiles.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-missingfiles.t.err >@@ -1,3 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > > Issue835: qpush fails immediately when patching a missing file, but > remaining added files are still created empty which will trick a >@@ -17,133 +19,3 @@ > > f.write(s*count) > > f.close() > > EOF >- >- $ echo "[extensions]" >> $HGRCPATH >- $ echo "mq=" >> $HGRCPATH >- >- $ hg init normal >- $ cd normal >- $ python ../writelines.py b 10 'a\n' >- $ hg ci -Am addb >- adding b >- $ echo a > a >- $ python ../writelines.py b 2 'b\n' 10 'a\n' 2 'c\n' >- $ echo c > c >- $ hg add a c >- $ hg qnew -f changeb >- $ hg qpop >- popping changeb >- patch queue now empty >- $ hg rm b >- $ hg ci -Am rmb >- >-Push patch with missing target: >- >- $ hg qpush >- applying changeb >- unable to find 'b' for patching >- 2 out of 2 hunks FAILED -- saving rejects to file b.rej >- patch failed, unable to continue (try -v) >- patch failed, rejects left in working dir >- errors during apply, please fix and refresh changeb >- [2] >- >-Display added files: >- >- $ cat a >- a >- $ cat c >- c >- >-Display rejections: >- >- $ cat b.rej >- --- b >- +++ b >- @@ -1,3 +1,5 @@ >- +b >- +b >- a >- a >- a >- @@ -8,3 +10,5 @@ >- a >- a >- a >- +c >- +c >- >- $ cd .. >- >- >- $ echo "[diff]" >> $HGRCPATH >- $ echo "git=1" >> $HGRCPATH >- >- $ hg init git >- $ cd git >- $ python ../writelines.py b 1 '\x00' >- $ hg ci -Am addb >- adding b >- $ echo a > a >- $ python ../writelines.py b 1 '\x01' 1 '\x00' >- $ echo c > c >- $ hg add a c >- $ hg qnew -f changeb >- $ hg qpop >- popping changeb >- patch queue now empty >- $ hg rm b >- $ hg ci -Am rmb >- >-Push git patch with missing target: >- >- $ hg qpush >- applying changeb >- unable to find 'b' for patching >- 1 out of 1 hunks FAILED -- saving rejects to file b.rej >- patch failed, unable to continue (try -v) >- b: No such file or directory >- patch failed, rejects left in working dir >- errors during apply, please fix and refresh changeb >- [2] >- $ hg st >- ? b.rej >- >-Display added files: >- >- $ cat a >- a >- $ cat c >- c >- >-Display rejections: >- >- $ cat b.rej >- --- b >- +++ b >- GIT binary patch >- literal 2 >- Jc${No0000400IC2 >- >- $ cd .. >- >-Test push creating directory during git copy or rename: >- >- $ hg init missingdir >- $ cd missingdir >- $ echo a > a >- $ hg ci -Am adda >- adding a >- $ mkdir d >- $ hg copy a d/a2 >- $ hg mv a d/a >- $ hg qnew -g -f patch >- $ hg qpop >- popping patch >- patch queue now empty >- $ hg qpush >- applying patch >- now at: patch >- >- $ cd .. >- >!. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-merge-revert2.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-merge-revert2.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-merge-revert2.t.err >@@ -1,94 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ hg init >- >- $ echo "added file1" > file1 >- $ echo "another line of text" >> file1 >- $ echo "added file2" > file2 >- $ hg add file1 file2 >- $ hg commit -m "added file1 and file2" >- >- $ echo "changed file1" >> file1 >- $ hg commit -m "changed file1" >- >- $ hg -q log >- 1:dfab7f3c2efb >- 0:c3fa057dd86f >- $ hg id >- dfab7f3c2efb tip >- >- $ hg update -C 0 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg id >- c3fa057dd86f >- >- $ echo "changed file1" >> file1 >- $ hg id >- c3fa057dd86f+ >- >- $ hg revert --no-backup --all >- reverting file1 >- $ hg diff >- $ hg status >- $ hg id >- c3fa057dd86f >- >- $ hg update >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg diff >- $ hg status >- $ hg id >- dfab7f3c2efb tip >- >- $ hg update -C 0 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo "changed file1 different" >> file1 >- >- $ hg update >- merging file1 >- warning: conflicts during merge. >- merging file1 failed! >- 0 files updated, 0 files merged, 0 files removed, 1 files unresolved >- use 'hg resolve' to retry unresolved file merges >- [1] >- >- $ hg diff --nodates >- diff -r dfab7f3c2efb file1 >- --- a/file1 >- +++ b/file1 >- @@ -1,3 +1,7 @@ >- added file1 >- another line of text >- +<<<<<<< local >- +changed file1 different >- +======= >- changed file1 >- +>>>>>>> other >- >- $ hg status >- M file1 >- ? file1.orig >- $ hg id >- dfab7f3c2efb+ tip >- >- $ hg revert --no-backup --all >- reverting file1 >- $ hg diff >- $ hg status >- ? file1.orig >- $ hg id >- dfab7f3c2efb tip >- >- $ hg revert -r tip --no-backup --all >- $ hg diff >- $ hg status >- ? file1.orig >- $ hg id >- dfab7f3c2efb tip >- >- $ hg update -C >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg diff >- $ hg status >- ? file1.orig >- $ hg id >- dfab7f3c2efb tip >- >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-qclone-http.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-qclone-http.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-qclone-http.t.err >@@ -1,149 +1,4 @@ >+ >+ ### Abort: timeout after 180 seconds. > > $ echo "[extensions]" >> $HGRCPATH >- $ echo "mq=" >> $HGRCPATH >- $ mkdir webdir >- $ cd webdir >- $ hg init a >- $ hg --cwd a qinit -c >- $ echo a > a/a >- $ hg --cwd a ci -A -m a >- adding a >- $ echo b > a/b >- $ hg --cwd a addremove >- adding b >- $ hg --cwd a qnew -f b.patch >- $ hg --cwd a qcommit -m b.patch >- $ hg --cwd a log --template "{desc}\n" >- [mq]: b.patch >- a >- $ hg --cwd a/.hg/patches log --template "{desc}\n" >- b.patch >- $ root=`pwd` >- $ cd .. >- >-test with recursive collection >- >- $ cat > collections.conf <<EOF >- > [paths] >- > /=$root/** >- > EOF >- $ hg serve -p $HGPORT -d --pid-file=hg.pid --webdir-conf collections.conf \ >- > -A access-paths.log -E error-paths-1.log >- $ cat hg.pid >> $DAEMON_PIDS >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT '/?style=raw' >- 200 Script output follows >- >- >- /a/ >- /a/.hg/patches/ >- >- $ hg qclone http://localhost:$HGPORT/a b >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 2 changesets with 2 changes to 2 files >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 3 changes to 3 files >- updating to branch default >- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg --cwd b log --template "{desc}\n" >- a >- $ hg --cwd b qpush -a >- applying b.patch >- now at: b.patch >- $ hg --cwd b log --template "{desc}\n" >- imported patch b.patch >- a >- >-test with normal collection >- >- $ cat > collections1.conf <<EOF >- > [paths] >- > /=$root/* >- > EOF >- $ hg serve -p $HGPORT1 -d --pid-file=hg.pid --webdir-conf collections1.conf \ >- > -A access-paths.log -E error-paths-1.log >- $ cat hg.pid >> $DAEMON_PIDS >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT1 '/?style=raw' >- 200 Script output follows >- >- >- /a/ >- /a/.hg/patches/ >- >- $ hg qclone http://localhost:$HGPORT1/a c >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 2 changesets with 2 changes to 2 files >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 3 changes to 3 files >- updating to branch default >- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg --cwd c log --template "{desc}\n" >- a >- $ hg --cwd c qpush -a >- applying b.patch >- now at: b.patch >- $ hg --cwd c log --template "{desc}\n" >- imported patch b.patch >- a >- >-test with old-style collection >- >- $ cat > collections2.conf <<EOF >- > [collections] >- > $root=$root >- > EOF >- $ hg serve -p $HGPORT2 -d --pid-file=hg.pid --webdir-conf collections2.conf \ >- > -A access-paths.log -E error-paths-1.log >- $ cat hg.pid >> $DAEMON_PIDS >- $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT2 '/?style=raw' >- 200 Script output follows >- >- >- /a/ >- /a/.hg/patches/ >- >- $ hg qclone http://localhost:$HGPORT2/a d >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 2 changesets with 2 changes to 2 files >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 3 changes to 3 files >- updating to branch default >- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg --cwd d log --template "{desc}\n" >- a >- $ hg --cwd d qpush -a >- applying b.patch >- now at: b.patch >- $ hg --cwd d log --template "{desc}\n" >- imported patch b.patch >- a >- >-test --mq works and uses correct repository config >- >- $ hg --cwd d outgoing --mq >- comparing with http://localhost:$HGPORT2/a/.hg/patches >- searching for changes >- no changes found >- [1] >- $ hg --cwd d log --mq --template '{rev} {desc|firstline}\n' >- 0 b.patch >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-qdiff.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-qdiff.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-qdiff.t.err >@@ -1,166 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ echo "[extensions]" >> $HGRCPATH >- $ echo "mq=" >> $HGRCPATH >- $ echo "[mq]" >> $HGRCPATH >- $ echo "git=keep" >> $HGRCPATH >- >- $ hg init a >- $ cd a >- >- $ echo 'base' > base >- $ hg ci -Ambase >- adding base >- >- $ hg qnew -mmqbase mqbase >- >- $ echo 'patched' > base >- $ hg qrefresh >- >-qdiff: >- >- $ hg qdiff >- diff -r d20a80d4def3 base >- --- a/base Thu Jan 01 00:00:00 1970 +0000 >- +++ b/base* (glob) >- @@ -1,1 +1,1 @@ >- -base >- +patched >- >-qdiff dirname: >- >- $ hg qdiff --nodates . >- diff -r d20a80d4def3 base >- --- a/base >- +++ b/base >- @@ -1,1 +1,1 @@ >- -base >- +patched >- >-qdiff filename: >- >- $ hg qdiff --nodates base >- diff -r d20a80d4def3 base >- --- a/base >- +++ b/base >- @@ -1,1 +1,1 @@ >- -base >- +patched >- >- $ hg revert -a >- >- $ hg qpop >- popping mqbase >- patch queue now empty >- >- $ hg qdelete mqbase >- >- $ printf '1\n2\n3\n4\nhello world\ngoodbye world\n7\n8\n9\n' > lines >- $ hg ci -Amlines -d '2 0' >- adding lines >- >- $ hg qnew -mmqbase2 mqbase2 >- $ printf '\n\n1\n2\n3\n4\nhello world\n goodbye world\n7\n8\n9\n' > lines >- >- $ hg qdiff --nodates -U 1 >- diff -r b0c220e1cf43 lines >- --- a/lines >- +++ b/lines >- @@ -1,1 +1,3 @@ >- + >- + >- 1 >- @@ -4,4 +6,4 @@ >- 4 >- -hello world >- -goodbye world >- +hello world >- + goodbye world >- 7 >- >- $ hg qdiff --nodates -b >- diff -r b0c220e1cf43 lines >- --- a/lines >- +++ b/lines >- @@ -1,9 +1,11 @@ >- + >- + >- 1 >- 2 >- 3 >- 4 >- hello world >- -goodbye world >- + goodbye world >- 7 >- 8 >- 9 >- >- $ hg qdiff --nodates -U 1 -B >- diff -r b0c220e1cf43 lines >- --- a/lines >- +++ b/lines >- @@ -4,4 +6,4 @@ >- 4 >- -hello world >- -goodbye world >- +hello world >- + goodbye world >- 7 >- >- $ hg qdiff --nodates -w >- diff -r b0c220e1cf43 lines >- --- a/lines >- +++ b/lines >- @@ -1,3 +1,5 @@ >- + >- + >- 1 >- 2 >- 3 >- >- $ hg qdiff --nodates --reverse >- diff -r b0c220e1cf43 lines >- --- a/lines >- +++ b/lines >- @@ -1,11 +1,9 @@ >- - >- - >- 1 >- 2 >- 3 >- 4 >- -hello world >- - goodbye world >- +hello world >- +goodbye world >- 7 >- 8 >- 9 >- >-qdiff preserve existing git flag: >- >- $ hg qrefresh --git >- $ echo a >> lines >- $ hg qdiff >- diff --git a/lines b/lines >- --- a/lines >- +++ b/lines >- @@ -1,9 +1,12 @@ >- + >- + >- 1 >- 2 >- 3 >- 4 >- -hello world >- -goodbye world >- +hello world >- + goodbye world >- 7 >- 8 >- 9 >- +a >- >- $ hg qdiff --stat >- lines | 7 +++++-- >- 1 files changed, 5 insertions(+), 2 deletions(-) >- >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-caches.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-caches.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-caches.t.err >@@ -1,124 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ branches=.hg/branchheads.cache >- $ echo '[extensions]' >> $HGRCPATH >- $ echo 'mq =' >> $HGRCPATH >- >- $ show_branch_cache() >- > { >- > # force cache (re)generation >- > hg log -r does-not-exist 2> /dev/null >- > hg log -r tip --template 'tip: {rev}\n' >- > if [ -f $branches ]; then >- > sort $branches >- > else >- > echo No branch cache >- > fi >- > if [ "$1" = 1 ]; then >- > for b in foo bar; do >- > hg log -r $b --template "branch $b: "'{rev}\n' >- > done >- > fi >- > } >- >- $ hg init a >- $ cd a >- $ hg qinit -c >- >- >-mq patch on an empty repo >- >- $ hg qnew p1 >- $ show_branch_cache >- tip: 0 >- No branch cache >- >- $ echo > pfile >- $ hg add pfile >- $ hg qrefresh -m 'patch 1' >- $ show_branch_cache >- tip: 0 >- No branch cache >- >-some regular revisions >- >- $ hg qpop >- popping p1 >- patch queue now empty >- $ echo foo > foo >- $ hg add foo >- $ echo foo > .hg/branch >- $ hg ci -m 'branch foo' >- >- $ echo bar > bar >- $ hg add bar >- $ echo bar > .hg/branch >- $ hg ci -m 'branch bar' >- $ show_branch_cache >- tip: 1 >- c229711f16da3d7591f89b1b8d963b79bda22714 1 >- c229711f16da3d7591f89b1b8d963b79bda22714 bar >- dc25e3827021582e979f600811852e36cbe57341 foo >- >-add some mq patches >- >- $ hg qpush >- applying p1 >- now at: p1 >- $ show_branch_cache >- tip: 2 >- c229711f16da3d7591f89b1b8d963b79bda22714 1 >- c229711f16da3d7591f89b1b8d963b79bda22714 bar >- dc25e3827021582e979f600811852e36cbe57341 foo >- >- $ hg qnew p2 >- $ echo foo > .hg/branch >- $ echo foo2 >> foo >- $ hg qrefresh -m 'patch 2' >- $ show_branch_cache 1 >- tip: 3 >- c229711f16da3d7591f89b1b8d963b79bda22714 1 >- c229711f16da3d7591f89b1b8d963b79bda22714 bar >- dc25e3827021582e979f600811852e36cbe57341 foo >- branch foo: 3 >- branch bar: 2 >- >-removing the cache >- >- $ rm $branches >- $ show_branch_cache 1 >- tip: 3 >- c229711f16da3d7591f89b1b8d963b79bda22714 1 >- c229711f16da3d7591f89b1b8d963b79bda22714 bar >- dc25e3827021582e979f600811852e36cbe57341 foo >- branch foo: 3 >- branch bar: 2 >- >-importing rev 1 (the cache now ends in one of the patches) >- >- $ hg qimport -r 1 -n p0 >- $ show_branch_cache 1 >- tip: 3 >- c229711f16da3d7591f89b1b8d963b79bda22714 1 >- c229711f16da3d7591f89b1b8d963b79bda22714 bar >- dc25e3827021582e979f600811852e36cbe57341 foo >- branch foo: 3 >- branch bar: 2 >- $ hg log -r qbase --template 'qbase: {rev}\n' >- qbase: 1 >- >-detect an invalid cache >- >- $ hg qpop -a >- popping p2 >- popping p1 >- popping p0 >- patch queue now empty >- $ hg qpush -a >- applying p0 >- applying p1 >- applying p2 >- now at: p2 >- $ show_branch_cache >- tip: 3 >- dc25e3827021582e979f600811852e36cbe57341 0 >- dc25e3827021582e979f600811852e36cbe57341 foo >- >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-merge1.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-merge1.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-merge1.t.err >@@ -1,3 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ cat <<EOF > merge > > import sys, os > > >@@ -10,167 +12,3 @@ > > > > print "merging for", os.path.basename(sys.argv[1]) > > EOF >- $ HGMERGE="python ../merge"; export HGMERGE >- >- $ mkdir t >- $ cd t >- $ hg init >- $ echo This is file a1 > a >- $ hg add a >- $ hg commit -m "commit #0" >- $ echo This is file b1 > b >- $ hg add b >- $ hg commit -m "commit #1" >- >- $ hg update 0 >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ echo This is file c1 > c >- $ hg add c >- $ hg commit -m "commit #2" >- created new head >- $ echo This is file b1 > b >-no merges expected >- $ hg merge -P 1 >- changeset: 1:b8bb4a988f25 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: commit #1 >- >- $ hg merge 1 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg diff --nodates >- diff -r 49035e18a8e6 b >- --- /dev/null >- +++ b/b >- @@ -0,0 +1,1 @@ >- +This is file b1 >- $ hg status >- M b >- $ cd ..; rm -r t >- >- $ mkdir t >- $ cd t >- $ hg init >- $ echo This is file a1 > a >- $ hg add a >- $ hg commit -m "commit #0" >- $ echo This is file b1 > b >- $ hg add b >- $ hg commit -m "commit #1" >- >- $ hg update 0 >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ echo This is file c1 > c >- $ hg add c >- $ hg commit -m "commit #2" >- created new head >- $ echo This is file b2 > b >-merge should fail >- $ hg merge 1 >- abort: untracked file in working directory differs from file in requested revision: 'b' >- [255] >-merge of b expected >- $ hg merge -f 1 >- merging for b >- merging b >- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg diff --nodates >- diff -r 49035e18a8e6 b >- --- /dev/null >- +++ b/b >- @@ -0,0 +1,1 @@ >- +This is file b2 >- $ hg status >- M b >- $ cd ..; rm -r t >- >- $ mkdir t >- $ cd t >- $ hg init >- $ echo This is file a1 > a >- $ hg add a >- $ hg commit -m "commit #0" >- $ echo This is file b1 > b >- $ hg add b >- $ hg commit -m "commit #1" >- $ echo This is file b22 > b >- $ hg commit -m "commit #2" >- $ hg update 1 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo This is file c1 > c >- $ hg add c >- $ hg commit -m "commit #3" >- created new head >- >-Contents of b should be "this is file b1" >- $ cat b >- This is file b1 >- >- $ echo This is file b22 > b >-merge fails >- $ hg merge 2 >- abort: outstanding uncommitted changes (use 'hg status' to list changes) >- [255] >- $ echo %% merge expected! >- %% merge expected! >- $ hg merge -f 2 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg diff --nodates >- diff -r 85de557015a8 b >- --- a/b >- +++ b/b >- @@ -1,1 +1,1 @@ >- -This is file b1 >- +This is file b22 >- $ hg status >- M b >- $ cd ..; rm -r t >- >- $ mkdir t >- $ cd t >- $ hg init >- $ echo This is file a1 > a >- $ hg add a >- $ hg commit -m "commit #0" >- $ echo This is file b1 > b >- $ hg add b >- $ hg commit -m "commit #1" >- $ echo This is file b22 > b >- $ hg commit -m "commit #2" >- $ hg update 1 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo This is file c1 > c >- $ hg add c >- $ hg commit -m "commit #3" >- created new head >- $ echo This is file b33 > b >-merge of b should fail >- $ hg merge 2 >- abort: outstanding uncommitted changes (use 'hg status' to list changes) >- [255] >-merge of b expected >- $ hg merge -f 2 >- merging for b >- merging b >- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg diff --nodates >- diff -r 85de557015a8 b >- --- a/b >- +++ b/b >- @@ -1,1 +1,1 @@ >- -This is file b1 >- +This is file b33 >- $ hg status >- M b >- >-Test for issue2364 >- >- $ hg up -qC . >- $ hg rm b >- $ hg ci -md >- $ hg revert -r -2 b >- $ hg up -q -- -2 >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-qgoto.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-qgoto.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-qgoto.t.err >@@ -1,77 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ echo "[extensions]" >> $HGRCPATH >- $ echo "mq=" >> $HGRCPATH >- >- $ hg init a >- $ cd a >- $ echo a > a >- $ hg ci -Ama >- adding a >- >- $ hg qnew a.patch >- $ echo a >> a >- $ hg qrefresh >- >- $ hg qnew b.patch >- $ echo b > b >- $ hg add b >- $ hg qrefresh >- >- $ hg qnew c.patch >- $ echo c > c >- $ hg add c >- $ hg qrefresh >- >- $ hg qgoto a.patch >- popping c.patch >- popping b.patch >- now at: a.patch >- >- $ hg qgoto c.patch >- applying b.patch >- applying c.patch >- now at: c.patch >- >- $ hg qgoto b.patch >- popping c.patch >- now at: b.patch >- >-Using index: >- >- $ hg qgoto 0 >- popping b.patch >- now at: a.patch >- >- $ hg qgoto 2 >- applying b.patch >- applying c.patch >- now at: c.patch >- >-No warnings when using index: >- >- $ hg qnew bug314159 >- $ echo d >> c >- $ hg qrefresh >- $ hg qnew bug141421 >- $ echo e >> c >- $ hg qrefresh >- >- $ hg qgoto 1 >- popping bug141421 >- popping bug314159 >- popping c.patch >- now at: b.patch >- >- $ hg qgoto 3 >- applying c.patch >- applying bug314159 >- now at: bug314159 >- >-Detect ambiguous non-index: >- >- $ hg qgoto 14 >- patch name "14" is ambiguous: >- bug314159 >- bug141421 >- abort: patch 14 not in series >- [255] >- >!. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-qimport.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-qimport.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-qimport.t.err >@@ -1,3 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > > $ cat > writelines.py <<EOF > > import sys >@@ -14,191 +16,3 @@ > > f.close() > > > > EOF >- $ echo "[extensions]" >> $HGRCPATH >- $ echo "mq=" >> $HGRCPATH >- $ echo "[diff]" >> $HGRCPATH >- $ echo "git=1" >> $HGRCPATH >- $ hg init repo >- $ cd repo >- >-qimport non-existing-file >- >- $ hg qimport non-existing-file >- abort: unable to read file non-existing-file >- [255] >- >-import email >- >- $ hg qimport --push -n email - <<EOF >- > From: Username in email <test@example.net> >- > Subject: [PATCH] Message in email >- > Date: Fri, 02 Jan 1970 00:00:00 +0000 >- > >- > Text before patch. >- > >- > # HG changeset patch >- > # User Username in patch <test@example.net> >- > # Date 0 0 >- > # Node ID 1a706973a7d84cb549823634a821d9bdf21c6220 >- > # Parent 0000000000000000000000000000000000000000 >- > First line of commit message. >- > >- > More text in commit message. >- > --- confuse the diff detection >- > >- > diff --git a/x b/x >- > new file mode 100644 >- > --- /dev/null >- > +++ b/x >- > @@ -0,0 +1,1 @@ >- > +new file >- > Text after patch. >- > >- > EOF >- adding email to series file >- applying email >- now at: email >- >-hg tip -v >- >- $ hg tip -v >- changeset: 0:1a706973a7d8 >- tag: email >- tag: qbase >- tag: qtip >- tag: tip >- user: Username in patch <test@example.net> >- date: Thu Jan 01 00:00:00 1970 +0000 >- files: x >- description: >- First line of commit message. >- >- More text in commit message. >- >- >- $ hg qpop >- popping email >- patch queue now empty >- $ hg qdelete email >- >-import URL >- >- $ echo foo >> foo >- $ hg add foo >- $ hg diff > url.diff >- $ hg revert --no-backup foo >- $ rm foo >- >-Under unix: file:///foobar/blah >-Under windows: file:///c:/foobar/blah >- >- $ patchurl=`pwd | tr '\\\\' /`/url.diff >- $ expr "$patchurl" : "\/" > /dev/null || patchurl="/$patchurl" >- $ hg qimport file://"$patchurl" >- adding url.diff to series file >- $ rm url.diff >- $ hg qun >- url.diff >- >-import patch that already exists >- >- $ echo foo2 >> foo >- $ hg add foo >- $ hg diff > ../url.diff >- $ hg revert --no-backup foo >- $ rm foo >- $ hg qimport ../url.diff >- abort: patch "url.diff" already exists >- [255] >- $ hg qpush >- applying url.diff >- now at: url.diff >- $ cat foo >- foo >- $ hg qpop >- popping url.diff >- patch queue now empty >- >-qimport -f >- >- $ hg qimport -f ../url.diff >- adding url.diff to series file >- $ hg qpush >- applying url.diff >- now at: url.diff >- $ cat foo >- foo2 >- $ hg qpop >- popping url.diff >- patch queue now empty >- >-build diff with CRLF >- >- $ python ../writelines.py b 5 'a\n' 5 'a\r\n' >- $ hg ci -Am addb >- adding b >- $ python ../writelines.py b 2 'a\n' 10 'b\n' 2 'a\r\n' >- $ hg diff > b.diff >- $ hg up -C >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-qimport CRLF diff >- >- $ hg qimport b.diff >- adding b.diff to series file >- $ hg qpush >- applying b.diff >- now at: b.diff >- >-try to import --push >- >- $ echo another >> b >- $ hg diff > another.diff >- $ hg up -C >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg qimport --push another.diff >- adding another.diff to series file >- applying another.diff >- now at: another.diff >- $ hg qfin -a >- patch b.diff finalized without changeset message >- patch another.diff finalized without changeset message >- $ hg qimport -rtip -P >- $ hg qpop -a >- popping 2.diff >- patch queue now empty >- $ hg qdel -k 2.diff >- >-qimport -e >- >- $ hg qimport -e 2.diff >- adding 2.diff to series file >- $ hg qdel -k 2.diff >- >-qimport -e --name newname oldexisitingpatch >- >- $ hg qimport -e --name this-name-is-better 2.diff >- renaming 2.diff to this-name-is-better >- adding this-name-is-better to series file >- $ hg qser >- this-name-is-better >- url.diff >- >-qimport -e --name without --force >- >- $ cp .hg/patches/this-name-is-better .hg/patches/3.diff >- $ hg qimport -e --name this-name-is-better 3.diff >- abort: patch "this-name-is-better" already exists >- [255] >- $ hg qser >- this-name-is-better >- url.diff >- >-qimport -e --name with --force >- >- $ hg qimport --force -e --name this-name-is-better 3.diff >- renaming 3.diff to this-name-is-better >- adding this-name-is-better to series file >- $ hg qser >- this-name-is-better >- url.diff >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-header-date.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-header-date.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-header-date.t.err >@@ -1,902 +1,4 @@ >+ >+ ### Abort: timeout after 180 seconds. > > $ echo "[extensions]" >> $HGRCPATH >- $ echo "mq=" >> $HGRCPATH >- $ echo "[diff]" >> $HGRCPATH >- $ echo "nodates=true" >> $HGRCPATH >- $ catpatch() { >- > cat .hg/patches/$1.patch | sed -e "s/^diff \-r [0-9a-f]* /diff -r ... /" \ >- > -e "s/^\(# Parent \).*/\1/" >- > } >- $ catlog() { >- > catpatch $1 >- > hg log --template "{rev}: {desc} - {author}\n" >- > } >- $ catlogd() { >- > catpatch $1 >- > hg log --template "{rev}: {desc} - {author} - {date}\n" >- > } >- $ drop() { >- > hg qpop >- > hg qdel $1.patch >- > } >- $ runtest() { >- > echo ==== init >- > hg init a >- > cd a >- > hg qinit >- > >- > >- > echo ==== qnew -d >- > hg qnew -d '3 0' 1.patch >- > catlogd 1 >- > >- > echo ==== qref >- > echo "1" >1 >- > hg add >- > hg qref >- > catlogd 1 >- > >- > echo ==== qref -d >- > hg qref -d '4 0' >- > catlogd 1 >- > >- > >- > echo ==== qnew >- > hg qnew 2.patch >- > echo "2" >2 >- > hg add >- > hg qref >- > catlog 2 >- > >- > echo ==== qref -d >- > hg qref -d '5 0' >- > catlog 2 >- > >- > drop 2 >- > >- > >- > echo ==== qnew -d -m >- > hg qnew -d '6 0' -m "Three" 3.patch >- > catlogd 3 >- > >- > echo ==== qref >- > echo "3" >3 >- > hg add >- > hg qref >- > catlogd 3 >- > >- > echo ==== qref -m >- > hg qref -m "Drei" >- > catlogd 3 >- > >- > echo ==== qref -d >- > hg qref -d '7 0' >- > catlogd 3 >- > >- > echo ==== qref -d -m >- > hg qref -d '8 0' -m "Three (again)" >- > catlogd 3 >- > >- > >- > echo ==== qnew -m >- > hg qnew -m "Four" 4.patch >- > echo "4" >4 >- > hg add >- > hg qref >- > catlog 4 >- > >- > echo ==== qref -d >- > hg qref -d '9 0' >- > catlog 4 >- > >- > drop 4 >- > >- > >- > echo ==== qnew with HG header >- > hg qnew --config 'mq.plain=true' 5.patch >- > hg qpop >- > echo "# HG changeset patch" >>.hg/patches/5.patch >- > echo "# Date 10 0" >>.hg/patches/5.patch >- > hg qpush 2>&1 | grep 'Now at' >- > catlogd 5 >- > >- > echo ==== hg qref >- > echo "5" >5 >- > hg add >- > hg qref >- > catlogd 5 >- > >- > echo ==== hg qref -d >- > hg qref -d '11 0' >- > catlogd 5 >- > >- > >- > echo ==== qnew with plain header >- > hg qnew --config 'mq.plain=true' -d '12 0' 6.patch >- > hg qpop >- > hg qpush 2>&1 | grep 'now at' >- > catlog 6 >- > >- > echo ==== hg qref >- > echo "6" >6 >- > hg add >- > hg qref >- > catlogd 6 >- > >- > echo ==== hg qref -d >- > hg qref -d '13 0' >- > catlogd 6 >- > >- > drop 6 >- > >- > >- > echo ==== qnew -u >- > hg qnew -u jane 6.patch >- > echo "6" >6 >- > hg add >- > hg qref >- > catlog 6 >- > >- > echo ==== qref -d >- > hg qref -d '12 0' >- > catlog 6 >- > >- > drop 6 >- > >- > >- > echo ==== qnew -d >- > hg qnew -d '13 0' 7.patch >- > echo "7" >7 >- > hg add >- > hg qref >- > catlog 7 >- > >- > echo ==== qref -u >- > hg qref -u john >- > catlogd 7 >- > >- > >- > echo ==== qnew >- > hg qnew 8.patch >- > echo "8" >8 >- > hg add >- > hg qref >- > catlog 8 >- > >- > echo ==== qref -u -d >- > hg qref -u john -d '14 0' >- > catlog 8 >- > >- > drop 8 >- > >- > >- > echo ==== qnew -m >- > hg qnew -m "Nine" 9.patch >- > echo "9" >9 >- > hg add >- > hg qref >- > catlog 9 >- > >- > echo ==== qref -u -d >- > hg qref -u john -d '15 0' >- > catlog 9 >- > >- > drop 9 >- > >- > >- > echo ==== "qpop -a / qpush -a" >- > hg qpop -a >- > hg qpush -a >- > hg log --template "{rev}: {desc} - {author} - {date}\n" >- > } >- >-======= plain headers >- >- $ echo "[mq]" >> $HGRCPATH >- $ echo "plain=true" >> $HGRCPATH >- $ mkdir sandbox >- $ (cd sandbox ; runtest) >- ==== init >- ==== qnew -d >- Date: 3 0 >- >- 0: [mq]: 1.patch - test - 3.00 >- ==== qref >- adding 1 >- Date: 3 0 >- >- diff -r ... 1 >- --- /dev/null >- +++ b/1 >- @@ -0,0 +1,1 @@ >- +1 >- 0: [mq]: 1.patch - test - 3.00 >- ==== qref -d >- Date: 4 0 >- >- diff -r ... 1 >- --- /dev/null >- +++ b/1 >- @@ -0,0 +1,1 @@ >- +1 >- 0: [mq]: 1.patch - test - 4.00 >- ==== qnew >- adding 2 >- diff -r ... 2 >- --- /dev/null >- +++ b/2 >- @@ -0,0 +1,1 @@ >- +2 >- 1: [mq]: 2.patch - test >- 0: [mq]: 1.patch - test >- ==== qref -d >- Date: 5 0 >- >- diff -r ... 2 >- --- /dev/null >- +++ b/2 >- @@ -0,0 +1,1 @@ >- +2 >- 1: [mq]: 2.patch - test >- 0: [mq]: 1.patch - test >- popping 2.patch >- now at: 1.patch >- ==== qnew -d -m >- Date: 6 0 >- >- Three >- >- 1: Three - test - 6.00 >- 0: [mq]: 1.patch - test - 4.00 >- ==== qref >- adding 3 >- Date: 6 0 >- >- Three >- >- diff -r ... 3 >- --- /dev/null >- +++ b/3 >- @@ -0,0 +1,1 @@ >- +3 >- 1: Three - test - 6.00 >- 0: [mq]: 1.patch - test - 4.00 >- ==== qref -m >- Date: 6 0 >- >- Drei >- >- diff -r ... 3 >- --- /dev/null >- +++ b/3 >- @@ -0,0 +1,1 @@ >- +3 >- 1: Drei - test - 6.00 >- 0: [mq]: 1.patch - test - 4.00 >- ==== qref -d >- Date: 7 0 >- >- Drei >- >- diff -r ... 3 >- --- /dev/null >- +++ b/3 >- @@ -0,0 +1,1 @@ >- +3 >- 1: Drei - test - 7.00 >- 0: [mq]: 1.patch - test - 4.00 >- ==== qref -d -m >- Date: 8 0 >- >- Three (again) >- >- diff -r ... 3 >- --- /dev/null >- +++ b/3 >- @@ -0,0 +1,1 @@ >- +3 >- 1: Three (again) - test - 8.00 >- 0: [mq]: 1.patch - test - 4.00 >- ==== qnew -m >- adding 4 >- Four >- >- diff -r ... 4 >- --- /dev/null >- +++ b/4 >- @@ -0,0 +1,1 @@ >- +4 >- 2: Four - test >- 1: Three (again) - test >- 0: [mq]: 1.patch - test >- ==== qref -d >- Date: 9 0 >- Four >- >- diff -r ... 4 >- --- /dev/null >- +++ b/4 >- @@ -0,0 +1,1 @@ >- +4 >- 2: Four - test >- 1: Three (again) - test >- 0: [mq]: 1.patch - test >- popping 4.patch >- now at: 3.patch >- ==== qnew with HG header >- popping 5.patch >- now at: 3.patch >- # HG changeset patch >- # Date 10 0 >- 2: imported patch 5.patch - test - 10.00 >- 1: Three (again) - test - 8.00 >- 0: [mq]: 1.patch - test - 4.00 >- ==== hg qref >- adding 5 >- # HG changeset patch >- # Parent >- # Date 10 0 >- >- diff -r ... 5 >- --- /dev/null >- +++ b/5 >- @@ -0,0 +1,1 @@ >- +5 >- 2: [mq]: 5.patch - test - 10.00 >- 1: Three (again) - test - 8.00 >- 0: [mq]: 1.patch - test - 4.00 >- ==== hg qref -d >- # HG changeset patch >- # Parent >- # Date 11 0 >- >- diff -r ... 5 >- --- /dev/null >- +++ b/5 >- @@ -0,0 +1,1 @@ >- +5 >- 2: [mq]: 5.patch - test - 11.00 >- 1: Three (again) - test - 8.00 >- 0: [mq]: 1.patch - test - 4.00 >- ==== qnew with plain header >- popping 6.patch >- now at: 5.patch >- now at: 6.patch >- Date: 12 0 >- >- 3: imported patch 6.patch - test >- 2: [mq]: 5.patch - test >- 1: Three (again) - test >- 0: [mq]: 1.patch - test >- ==== hg qref >- adding 6 >- Date: 12 0 >- >- diff -r ... 6 >- --- /dev/null >- +++ b/6 >- @@ -0,0 +1,1 @@ >- +6 >- 3: [mq]: 6.patch - test - 12.00 >- 2: [mq]: 5.patch - test - 11.00 >- 1: Three (again) - test - 8.00 >- 0: [mq]: 1.patch - test - 4.00 >- ==== hg qref -d >- Date: 13 0 >- >- diff -r ... 6 >- --- /dev/null >- +++ b/6 >- @@ -0,0 +1,1 @@ >- +6 >- 3: [mq]: 6.patch - test - 13.00 >- 2: [mq]: 5.patch - test - 11.00 >- 1: Three (again) - test - 8.00 >- 0: [mq]: 1.patch - test - 4.00 >- popping 6.patch >- now at: 5.patch >- ==== qnew -u >- adding 6 >- From: jane >- >- diff -r ... 6 >- --- /dev/null >- +++ b/6 >- @@ -0,0 +1,1 @@ >- +6 >- 3: [mq]: 6.patch - jane >- 2: [mq]: 5.patch - test >- 1: Three (again) - test >- 0: [mq]: 1.patch - test >- ==== qref -d >- Date: 12 0 >- From: jane >- >- diff -r ... 6 >- --- /dev/null >- +++ b/6 >- @@ -0,0 +1,1 @@ >- +6 >- 3: [mq]: 6.patch - jane >- 2: [mq]: 5.patch - test >- 1: Three (again) - test >- 0: [mq]: 1.patch - test >- popping 6.patch >- now at: 5.patch >- ==== qnew -d >- adding 7 >- Date: 13 0 >- >- diff -r ... 7 >- --- /dev/null >- +++ b/7 >- @@ -0,0 +1,1 @@ >- +7 >- 3: [mq]: 7.patch - test >- 2: [mq]: 5.patch - test >- 1: Three (again) - test >- 0: [mq]: 1.patch - test >- ==== qref -u >- From: john >- Date: 13 0 >- >- diff -r ... 7 >- --- /dev/null >- +++ b/7 >- @@ -0,0 +1,1 @@ >- +7 >- 3: [mq]: 7.patch - john - 13.00 >- 2: [mq]: 5.patch - test - 11.00 >- 1: Three (again) - test - 8.00 >- 0: [mq]: 1.patch - test - 4.00 >- ==== qnew >- adding 8 >- diff -r ... 8 >- --- /dev/null >- +++ b/8 >- @@ -0,0 +1,1 @@ >- +8 >- 4: [mq]: 8.patch - test >- 3: [mq]: 7.patch - john >- 2: [mq]: 5.patch - test >- 1: Three (again) - test >- 0: [mq]: 1.patch - test >- ==== qref -u -d >- Date: 14 0 >- From: john >- >- diff -r ... 8 >- --- /dev/null >- +++ b/8 >- @@ -0,0 +1,1 @@ >- +8 >- 4: [mq]: 8.patch - john >- 3: [mq]: 7.patch - john >- 2: [mq]: 5.patch - test >- 1: Three (again) - test >- 0: [mq]: 1.patch - test >- popping 8.patch >- now at: 7.patch >- ==== qnew -m >- adding 9 >- Nine >- >- diff -r ... 9 >- --- /dev/null >- +++ b/9 >- @@ -0,0 +1,1 @@ >- +9 >- 4: Nine - test >- 3: [mq]: 7.patch - john >- 2: [mq]: 5.patch - test >- 1: Three (again) - test >- 0: [mq]: 1.patch - test >- ==== qref -u -d >- Date: 15 0 >- From: john >- Nine >- >- diff -r ... 9 >- --- /dev/null >- +++ b/9 >- @@ -0,0 +1,1 @@ >- +9 >- 4: Nine - john >- 3: [mq]: 7.patch - john >- 2: [mq]: 5.patch - test >- 1: Three (again) - test >- 0: [mq]: 1.patch - test >- popping 9.patch >- now at: 7.patch >- ==== qpop -a / qpush -a >- popping 7.patch >- popping 5.patch >- popping 3.patch >- popping 1.patch >- patch queue now empty >- applying 1.patch >- applying 3.patch >- applying 5.patch >- applying 7.patch >- now at: 7.patch >- 3: imported patch 7.patch - john - 13.00 >- 2: imported patch 5.patch - test - 11.00 >- 1: Three (again) - test - 8.00 >- 0: imported patch 1.patch - test - 4.00 >- $ rm -r sandbox >- >-======= hg headers >- >- $ echo "plain=false" >> $HGRCPATH >- $ mkdir sandbox >- $ (cd sandbox ; runtest) >- ==== init >- ==== qnew -d >- # HG changeset patch >- # Parent >- # Date 3 0 >- >- 0: [mq]: 1.patch - test - 3.00 >- ==== qref >- adding 1 >- # HG changeset patch >- # Parent >- # Date 3 0 >- >- diff -r ... 1 >- --- /dev/null >- +++ b/1 >- @@ -0,0 +1,1 @@ >- +1 >- 0: [mq]: 1.patch - test - 3.00 >- ==== qref -d >- # HG changeset patch >- # Parent >- # Date 4 0 >- >- diff -r ... 1 >- --- /dev/null >- +++ b/1 >- @@ -0,0 +1,1 @@ >- +1 >- 0: [mq]: 1.patch - test - 4.00 >- ==== qnew >- adding 2 >- # HG changeset patch >- # Parent >- >- diff -r ... 2 >- --- /dev/null >- +++ b/2 >- @@ -0,0 +1,1 @@ >- +2 >- 1: [mq]: 2.patch - test >- 0: [mq]: 1.patch - test >- ==== qref -d >- # HG changeset patch >- # Date 5 0 >- # Parent >- >- diff -r ... 2 >- --- /dev/null >- +++ b/2 >- @@ -0,0 +1,1 @@ >- +2 >- 1: [mq]: 2.patch - test >- 0: [mq]: 1.patch - test >- popping 2.patch >- now at: 1.patch >- ==== qnew -d -m >- # HG changeset patch >- # Parent >- # Date 6 0 >- >- Three >- >- 1: Three - test - 6.00 >- 0: [mq]: 1.patch - test - 4.00 >- ==== qref >- adding 3 >- # HG changeset patch >- # Parent >- # Date 6 0 >- >- Three >- >- diff -r ... 3 >- --- /dev/null >- +++ b/3 >- @@ -0,0 +1,1 @@ >- +3 >- 1: Three - test - 6.00 >- 0: [mq]: 1.patch - test - 4.00 >- ==== qref -m >- # HG changeset patch >- # Parent >- # Date 6 0 >- >- Drei >- >- diff -r ... 3 >- --- /dev/null >- +++ b/3 >- @@ -0,0 +1,1 @@ >- +3 >- 1: Drei - test - 6.00 >- 0: [mq]: 1.patch - test - 4.00 >- ==== qref -d >- # HG changeset patch >- # Parent >- # Date 7 0 >- >- Drei >- >- diff -r ... 3 >- --- /dev/null >- +++ b/3 >- @@ -0,0 +1,1 @@ >- +3 >- 1: Drei - test - 7.00 >- 0: [mq]: 1.patch - test - 4.00 >- ==== qref -d -m >- # HG changeset patch >- # Parent >- # Date 8 0 >- >- Three (again) >- >- diff -r ... 3 >- --- /dev/null >- +++ b/3 >- @@ -0,0 +1,1 @@ >- +3 >- 1: Three (again) - test - 8.00 >- 0: [mq]: 1.patch - test - 4.00 >- ==== qnew -m >- adding 4 >- # HG changeset patch >- # Parent >- Four >- >- diff -r ... 4 >- --- /dev/null >- +++ b/4 >- @@ -0,0 +1,1 @@ >- +4 >- 2: Four - test >- 1: Three (again) - test >- 0: [mq]: 1.patch - test >- ==== qref -d >- # HG changeset patch >- # Date 9 0 >- # Parent >- Four >- >- diff -r ... 4 >- --- /dev/null >- +++ b/4 >- @@ -0,0 +1,1 @@ >- +4 >- 2: Four - test >- 1: Three (again) - test >- 0: [mq]: 1.patch - test >- popping 4.patch >- now at: 3.patch >- ==== qnew with HG header >- popping 5.patch >- now at: 3.patch >- # HG changeset patch >- # Date 10 0 >- 2: imported patch 5.patch - test - 10.00 >- 1: Three (again) - test - 8.00 >- 0: [mq]: 1.patch - test - 4.00 >- ==== hg qref >- adding 5 >- # HG changeset patch >- # Parent >- # Date 10 0 >- >- diff -r ... 5 >- --- /dev/null >- +++ b/5 >- @@ -0,0 +1,1 @@ >- +5 >- 2: [mq]: 5.patch - test - 10.00 >- 1: Three (again) - test - 8.00 >- 0: [mq]: 1.patch - test - 4.00 >- ==== hg qref -d >- # HG changeset patch >- # Parent >- # Date 11 0 >- >- diff -r ... 5 >- --- /dev/null >- +++ b/5 >- @@ -0,0 +1,1 @@ >- +5 >- 2: [mq]: 5.patch - test - 11.00 >- 1: Three (again) - test - 8.00 >- 0: [mq]: 1.patch - test - 4.00 >- ==== qnew with plain header >- popping 6.patch >- now at: 5.patch >- now at: 6.patch >- Date: 12 0 >- >- 3: imported patch 6.patch - test >- 2: [mq]: 5.patch - test >- 1: Three (again) - test >- 0: [mq]: 1.patch - test >- ==== hg qref >- adding 6 >- Date: 12 0 >- >- diff -r ... 6 >- --- /dev/null >- +++ b/6 >- @@ -0,0 +1,1 @@ >- +6 >- 3: [mq]: 6.patch - test - 12.00 >- 2: [mq]: 5.patch - test - 11.00 >- 1: Three (again) - test - 8.00 >- 0: [mq]: 1.patch - test - 4.00 >- ==== hg qref -d >- Date: 13 0 >- >- diff -r ... 6 >- --- /dev/null >- +++ b/6 >- @@ -0,0 +1,1 @@ >- +6 >- 3: [mq]: 6.patch - test - 13.00 >- 2: [mq]: 5.patch - test - 11.00 >- 1: Three (again) - test - 8.00 >- 0: [mq]: 1.patch - test - 4.00 >- popping 6.patch >- now at: 5.patch >- ==== qnew -u >- adding 6 >- # HG changeset patch >- # Parent >- # User jane >- >- diff -r ... 6 >- --- /dev/null >- +++ b/6 >- @@ -0,0 +1,1 @@ >- +6 >- 3: [mq]: 6.patch - jane >- 2: [mq]: 5.patch - test >- 1: Three (again) - test >- 0: [mq]: 1.patch - test >- ==== qref -d >- # HG changeset patch >- # Date 12 0 >- # Parent >- # User jane >- >- diff -r ... 6 >- --- /dev/null >- +++ b/6 >- @@ -0,0 +1,1 @@ >- +6 >- 3: [mq]: 6.patch - jane >- 2: [mq]: 5.patch - test >- 1: Three (again) - test >- 0: [mq]: 1.patch - test >- popping 6.patch >- now at: 5.patch >- ==== qnew -d >- adding 7 >- # HG changeset patch >- # Parent >- # Date 13 0 >- >- diff -r ... 7 >- --- /dev/null >- +++ b/7 >- @@ -0,0 +1,1 @@ >- +7 >- 3: [mq]: 7.patch - test >- 2: [mq]: 5.patch - test >- 1: Three (again) - test >- 0: [mq]: 1.patch - test >- ==== qref -u >- # HG changeset patch >- # User john >- # Parent >- # Date 13 0 >- >- diff -r ... 7 >- --- /dev/null >- +++ b/7 >- @@ -0,0 +1,1 @@ >- +7 >- 3: [mq]: 7.patch - john - 13.00 >- 2: [mq]: 5.patch - test - 11.00 >- 1: Three (again) - test - 8.00 >- 0: [mq]: 1.patch - test - 4.00 >- ==== qnew >- adding 8 >- # HG changeset patch >- # Parent >- >- diff -r ... 8 >- --- /dev/null >- +++ b/8 >- @@ -0,0 +1,1 @@ >- +8 >- 4: [mq]: 8.patch - test >- 3: [mq]: 7.patch - john >- 2: [mq]: 5.patch - test >- 1: Three (again) - test >- 0: [mq]: 1.patch - test >- ==== qref -u -d >- # HG changeset patch >- # Date 14 0 >- # User john >- # Parent >- >- diff -r ... 8 >- --- /dev/null >- +++ b/8 >- @@ -0,0 +1,1 @@ >- +8 >- 4: [mq]: 8.patch - john >- 3: [mq]: 7.patch - john >- 2: [mq]: 5.patch - test >- 1: Three (again) - test >- 0: [mq]: 1.patch - test >- popping 8.patch >- now at: 7.patch >- ==== qnew -m >- adding 9 >- # HG changeset patch >- # Parent >- Nine >- >- diff -r ... 9 >- --- /dev/null >- +++ b/9 >- @@ -0,0 +1,1 @@ >- +9 >- 4: Nine - test >- 3: [mq]: 7.patch - john >- 2: [mq]: 5.patch - test >- 1: Three (again) - test >- 0: [mq]: 1.patch - test >- ==== qref -u -d >- # HG changeset patch >- # Date 15 0 >- # User john >- # Parent >- Nine >- >- diff -r ... 9 >- --- /dev/null >- +++ b/9 >- @@ -0,0 +1,1 @@ >- +9 >- 4: Nine - john >- 3: [mq]: 7.patch - john >- 2: [mq]: 5.patch - test >- 1: Three (again) - test >- 0: [mq]: 1.patch - test >- popping 9.patch >- now at: 7.patch >- ==== qpop -a / qpush -a >- popping 7.patch >- popping 5.patch >- popping 3.patch >- popping 1.patch >- patch queue now empty >- applying 1.patch >- applying 3.patch >- applying 5.patch >- applying 7.patch >- now at: 7.patch >- 3: imported patch 7.patch - john - 13.00 >- 2: imported patch 5.patch - test - 11.00 >- 1: Three (again) - test - 8.00 >- 0: imported patch 1.patch - test - 4.00 >- $ rm -r sandbox >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-qpush-fail.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-qpush-fail.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-qpush-fail.t.err >@@ -1,90 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > Test that qpush cleans things up if it doesn't complete > > $ echo "[extensions]" >> $HGRCPATH >- $ echo "mq=" >> $HGRCPATH >- $ hg init repo >- $ cd repo >- $ echo foo > foo >- $ hg ci -Am 'add foo' >- adding foo >- $ touch untracked-file >- $ echo 'syntax: glob' > .hgignore >- $ echo '.hgignore' >> .hgignore >- $ hg qinit >- >-test qpush on empty series >- >- $ hg qpush >- no patches in series >- $ hg qnew patch1 >- $ echo >> foo >- $ hg qrefresh -m 'patch 1' >- $ hg qnew patch2 >- $ echo bar > bar >- $ hg add bar >- $ hg qrefresh -m 'patch 2' >- $ hg qnew --config 'mq.plain=true' bad-patch >- $ echo >> foo >- $ hg qrefresh >- $ hg qpop -a >- popping bad-patch >- popping patch2 >- popping patch1 >- patch queue now empty >- $ python -c 'print "\xe9"' > message >- $ cat .hg/patches/bad-patch >> message >- $ mv message .hg/patches/bad-patch >- $ hg qpush -a && echo 'qpush succeded?!' >- applying patch1 >- applying patch2 >- applying bad-patch >- transaction abort! >- rollback completed >- cleaning up working directory...done >- abort: decoding near 'é': 'ascii' codec can't decode byte 0xe9 in position 0: ordinal not in range(128)! >- [255] >- $ hg parents >- changeset: 0:bbd179dfa0a7 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: add foo >- >- >-bar should be gone; other unknown/ignored files should still be around >- >- $ hg status -A >- ? untracked-file >- I .hgignore >- C foo >- >-preparing qpush of a missing patch >- >- $ hg qpop -a >- no patches applied >- $ hg qpush >- applying patch1 >- now at: patch1 >- $ rm .hg/patches/patch2 >- >-now we expect the push to fail, but it should NOT complain about patch1 >- >- $ hg qpush >- applying patch2 >- unable to read patch2 >- now at: patch1 >- [1] >- >-preparing qpush of missing patch with no patch applied >- >- $ hg qpop -a >- popping patch1 >- patch queue now empty >- $ rm .hg/patches/patch1 >- >-qpush should fail the same way as below >- >- $ hg qpush >- applying patch1 >- unable to read patch1 >- [1] >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-merge9.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-merge9.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-merge9.t.err >@@ -1,92 +1,6 @@ >+ >+ ### Abort: timeout after 180 seconds. > test that we don't interrupt the merge session if > a file-level merge failed > > $ hg init repo >- $ cd repo >- >- $ echo foo > foo >- $ echo a > bar >- $ hg ci -Am 'add foo' >- adding bar >- adding foo >- >- $ hg mv foo baz >- $ echo b >> bar >- $ echo quux > quux1 >- $ hg ci -Am 'mv foo baz' >- adding quux1 >- >- $ hg up -qC 0 >- $ echo >> foo >- $ echo c >> bar >- $ echo quux > quux2 >- $ hg ci -Am 'change foo' >- adding quux2 >- created new head >- >-test with the rename on the remote side >- $ HGMERGE=false hg merge >- merging bar >- merging bar failed! >- merging foo and baz to baz >- 1 files updated, 1 files merged, 0 files removed, 1 files unresolved >- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon >- [1] >- $ hg resolve -l >- U bar >- R baz >- >-test with the rename on the local side >- $ hg up -C 1 >- 3 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ HGMERGE=false hg merge >- merging bar >- merging bar failed! >- merging baz and foo to baz >- 1 files updated, 1 files merged, 0 files removed, 1 files unresolved >- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon >- [1] >- >-show unresolved >- $ hg resolve -l >- U bar >- R baz >- >-unmark baz >- $ hg resolve -u baz >- >-show >- $ hg resolve -l >- U bar >- U baz >- $ hg st >- M bar >- M baz >- M quux2 >- ? bar.orig >- >-re-resolve baz >- $ hg resolve baz >- merging baz and foo to baz >- >-after resolve >- $ hg resolve -l >- U bar >- R baz >- >-resolve all warning >- $ hg resolve >- abort: no files or directories specified; use --all to remerge all files >- [255] >- >-resolve all >- $ hg resolve -a >- merging bar >- warning: conflicts during merge. >- merging bar failed! >- [1] >- >-after >- $ hg resolve -l >- U bar >- R baz >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-qrefresh-replace-log-message.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-qrefresh-replace-log-message.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-qrefresh-replace-log-message.t.err >@@ -1,61 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > Environement setup for MQ > > $ echo "[extensions]" >> $HGRCPATH >- $ echo "mq=" >> $HGRCPATH >- $ hg init >- $ hg qinit >- >-Should fail if no patches applied >- >- $ hg qrefresh >- no patches applied >- [1] >- $ hg qrefresh -e >- no patches applied >- [1] >- $ hg qnew -m "First commit message" first-patch >- $ echo aaaa > file >- $ hg add file >- $ hg qrefresh >- >-Should display 'First commit message' >- >- $ hg log -l1 --template "{desc}\n" >- First commit message >- >-Testing changing message with -m >- >- $ echo bbbb > file >- $ hg qrefresh -m "Second commit message" >- >-Should display 'Second commit message' >- >- $ hg log -l1 --template "{desc}\n" >- Second commit message >- >-Testing changing message with -l >- >- $ echo "Third commit message" > logfile >- $ echo " This is the 3rd log message" >> logfile >- $ echo bbbb > file >- $ hg qrefresh -l logfile >- >-Should display 'Third commit message\\\n This is the 3rd log message' >- >- $ hg log -l1 --template "{desc}\n" >- Third commit message >- This is the 3rd log message >- >-Testing changing message with -l- >- >- $ hg qnew -m "First commit message" second-patch >- $ echo aaaa > file2 >- $ hg add file2 >- $ echo bbbb > file2 >- $ (echo "Fifth commit message"; echo " This is the 5th log message") | hg qrefresh -l- >- >-Should display 'Fifth commit message\\\n This is the 5th log message' >- >- $ hg log -l1 --template "{desc}\n" >- Fifth commit message >- This is the 5th log message >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-pull-from-bundle.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-pull-from-bundle.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-pull-from-bundle.t.err >@@ -1,3 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ cat <<EOF >> $HGRCPATH > > [extensions] > > mq= >@@ -6,126 +8,3 @@ > > theads = heads --template "{rev}: {desc}\\n" > > tincoming = incoming --template "{rev}: {desc}\\n" > > EOF >- >-Setup main: >- >- $ hg init base >- $ cd base >- $ echo "One" > one >- $ hg add >- adding one >- $ hg ci -m "main: one added" >- $ echo "++" >> one >- $ hg ci -m "main: one updated" >- >-Bundle main: >- >- $ hg bundle --base=null ../main.hg >- 2 changesets found >- >- $ cd .. >- >-Incoming to fresh repo: >- >- $ hg init fresh >- >- $ hg -R fresh tincoming main.hg >- comparing with main.hg >- 0: main: one added >- 1: main: one updated >- >- $ hg -R fresh tincoming bundle:fresh+main.hg >- comparing with bundle:fresh+main.hg >- 0: main: one added >- 1: main: one updated >- >- >-Setup queue: >- >- $ cd base >- $ hg qinit -c >- $ hg qnew -m "patch: two added" two.patch >- $ echo two > two >- $ hg add >- adding two >- $ hg qrefresh >- $ hg qcommit -m "queue: two.patch added" >- $ hg qpop -a >- popping two.patch >- patch queue now empty >- >-Bundle queue: >- >- $ hg -R .hg/patches bundle --base=null ../queue.hgq >- 1 changesets found >- >- $ cd .. >- >- >-Clone base: >- >- $ hg clone base copy >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ cd copy >- $ hg qinit -c >- >-Incoming queue bundle: >- >- $ hg -R .hg/patches tincoming ../queue.hgq >- comparing with ../queue.hgq >- 0: queue: two.patch added >- >-Pull queue bundle: >- >- $ hg -R .hg/patches pull --update ../queue.hgq >- pulling from ../queue.hgq >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 3 changes to 3 files >- merging series >- 2 files updated, 1 files merged, 0 files removed, 0 files unresolved >- >- $ hg -R .hg/patches theads >- 0: queue: two.patch added >- >- $ hg -R .hg/patches tlog >- 0: queue: two.patch added >- >- $ hg qseries >- two.patch >- >- $ cd .. >- >- >-Clone base again: >- >- $ hg clone base copy2 >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ cd copy2 >- $ hg qinit -c >- >-Unbundle queue bundle: >- >- $ hg -R .hg/patches unbundle --update ../queue.hgq >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 3 changes to 3 files >- merging series >- 2 files updated, 1 files merged, 0 files removed, 0 files unresolved >- >- $ hg -R .hg/patches theads >- 0: queue: two.patch added >- >- $ hg -R .hg/patches tlog >- 0: queue: two.patch added >- >- $ hg qseries >- two.patch >- >- $ cd .. >- >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-qrename.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-qrename.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-qrename.t.err >@@ -1,96 +1,4 @@ >+ >+ ### Abort: timeout after 180 seconds. > > $ echo "[extensions]" >> $HGRCPATH >- $ echo "mq=" >> $HGRCPATH >- >- $ hg init a >- $ cd a >- >- $ echo 'base' > base >- $ hg ci -Ambase >- adding base >- >- $ hg qnew -mmqbase mqbase >- >- $ hg qrename mqbase renamed >- $ mkdir .hg/patches/foo >- $ hg qrename renamed foo >- >- $ hg qseries >- foo/renamed >- >- $ ls .hg/patches/foo >- renamed >- >- $ mkdir .hg/patches/bar >- $ hg qrename foo/renamed bar >- >- $ hg qseries >- bar/renamed >- >- $ ls .hg/patches/bar >- renamed >- >- $ hg qrename bar/renamed baz >- >- $ hg qseries >- baz >- >- $ ls .hg/patches/baz >- .hg/patches/baz >- >- $ hg qrename baz new/dir >- >- $ hg qseries >- new/dir >- >- $ ls .hg/patches/new/dir >- .hg/patches/new/dir >- >- $ cd .. >- >-Test patch being renamed before committed: >- >- $ hg init b >- $ cd b >- $ hg qinit -c >- $ hg qnew x >- $ hg qrename y >- $ hg qcommit -m rename >- >- $ cd .. >- >-Test overlapping renames (issue2388) >- >- $ hg init c >- $ cd c >- $ hg qinit -c >- $ echo a > a >- $ hg add >- adding a >- $ hg qnew patcha >- $ echo b > b >- $ hg add >- adding b >- $ hg qnew patchb >- $ hg ci --mq -m c1 >- $ hg qrename patchb patchc >- $ hg qrename patcha patchb >- $ hg st --mq >- M patchb >- M series >- A patchc >- R patcha >- $ cd .. >- >-Test renames with mq repo (issue2097) >- >- $ hg init issue2097 >- $ cd issue2097 >- $ hg qnew p0 >- $ (cd .hg/patches && hg init) >- $ hg qren p0 p1 >- $ hg debugstate --mq >- $ hg ci --mq -mq0 >- nothing changed >- [1] >- $ cd .. >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-git.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-git.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-git.t.err >@@ -1,210 +1,6 @@ >+ >+ ### Abort: timeout after 180 seconds. > # Test the plumbing of mq.git option > # Automatic upgrade itself is tested elsewhere. > > $ echo "[extensions]" >> $HGRCPATH >- $ echo "mq=" >> $HGRCPATH >- $ echo "[diff]" >> $HGRCPATH >- $ echo "nodates=1" >> $HGRCPATH >- >- $ hg init repo-auto >- $ cd repo-auto >- >-git=auto: regular patch creation: >- >- $ echo a > a >- $ hg add a >- $ hg qnew -d '0 0' -f adda >- >- $ cat .hg/patches/adda >- # HG changeset patch >- # Parent 0000000000000000000000000000000000000000 >- # Date 0 0 >- >- diff -r 000000000000 -r ef8dafc9fa4c a >- --- /dev/null >- +++ b/a >- @@ -0,0 +1,1 @@ >- +a >- >-git=auto: git patch creation with copy: >- >- $ hg cp a b >- $ hg qnew -d '0 0' -f copy >- >- $ cat .hg/patches/copy >- # HG changeset patch >- # Parent ef8dafc9fa4caff80f6e243eb0171bcd60c455b4 >- # Date 0 0 >- >- diff --git a/a b/b >- copy from a >- copy to b >- >-git=auto: git patch when using --git: >- >- $ echo regular > regular >- $ hg add regular >- $ hg qnew -d '0 0' --git -f git >- >- $ cat .hg/patches/git >- # HG changeset patch >- # Parent 99586d5f048c399e20f81cee41fbb3809c0e735d >- # Date 0 0 >- >- diff --git a/regular b/regular >- new file mode 100644 >- --- /dev/null >- +++ b/regular >- @@ -0,0 +1,1 @@ >- +regular >- >-git=auto: regular patch after qrefresh without --git: >- >- $ hg qrefresh -d '0 0' >- >- $ cat .hg/patches/git >- # HG changeset patch >- # Parent 99586d5f048c399e20f81cee41fbb3809c0e735d >- # Date 0 0 >- >- diff -r 99586d5f048c regular >- --- /dev/null >- +++ b/regular >- @@ -0,0 +1,1 @@ >- +regular >- >- $ cd .. >- >- $ hg init repo-keep >- $ cd repo-keep >- $ echo '[mq]' > .hg/hgrc >- $ echo 'git = KEEP' >> .hg/hgrc >- >-git=keep: git patch with --git: >- >- $ echo a > a >- $ hg add a >- $ hg qnew -d '0 0' -f --git git >- >- $ cat .hg/patches/git >- # HG changeset patch >- # Parent 0000000000000000000000000000000000000000 >- # Date 0 0 >- >- diff --git a/a b/a >- new file mode 100644 >- --- /dev/null >- +++ b/a >- @@ -0,0 +1,1 @@ >- +a >- >-git=keep: git patch after qrefresh without --git: >- >- $ echo a >> a >- $ hg qrefresh -d '0 0' >- >- $ cat .hg/patches/git >- # HG changeset patch >- # Parent 0000000000000000000000000000000000000000 >- # Date 0 0 >- >- diff --git a/a b/a >- new file mode 100644 >- --- /dev/null >- +++ b/a >- @@ -0,0 +1,2 @@ >- +a >- +a >- $ cd .. >- >- $ hg init repo-yes >- $ cd repo-yes >- $ echo '[mq]' > .hg/hgrc >- $ echo 'git = yes' >> .hg/hgrc >- >-git=yes: git patch: >- >- $ echo a > a >- $ hg add a >- $ hg qnew -d '0 0' -f git >- >- $ cat .hg/patches/git >- # HG changeset patch >- # Parent 0000000000000000000000000000000000000000 >- # Date 0 0 >- >- diff --git a/a b/a >- new file mode 100644 >- --- /dev/null >- +++ b/a >- @@ -0,0 +1,1 @@ >- +a >- >-git=yes: git patch after qrefresh: >- >- $ echo a >> a >- $ hg qrefresh -d '0 0' >- >- $ cat .hg/patches/git >- # HG changeset patch >- # Parent 0000000000000000000000000000000000000000 >- # Date 0 0 >- >- diff --git a/a b/a >- new file mode 100644 >- --- /dev/null >- +++ b/a >- @@ -0,0 +1,2 @@ >- +a >- +a >- $ cd .. >- >- $ hg init repo-no >- $ cd repo-no >- $ echo '[diff]' > .hg/hgrc >- $ echo 'git = True' >> .hg/hgrc >- $ echo '[mq]' > .hg/hgrc >- $ echo 'git = False' >> .hg/hgrc >- >-git=no: regular patch with copy: >- >- $ echo a > a >- $ hg add a >- $ hg qnew -d '0 0' -f adda >- $ hg cp a b >- $ hg qnew -d '0 0' -f regular >- >- $ cat .hg/patches/regular >- # HG changeset patch >- # Parent ef8dafc9fa4caff80f6e243eb0171bcd60c455b4 >- # Date 0 0 >- >- diff -r ef8dafc9fa4c -r a70404f79ba3 b >- --- /dev/null >- +++ b/b >- @@ -0,0 +1,1 @@ >- +a >- >-git=no: regular patch after qrefresh with copy: >- >- $ hg cp a c >- $ hg qrefresh -d '0 0' >- >- $ cat .hg/patches/regular >- # HG changeset patch >- # Parent ef8dafc9fa4caff80f6e243eb0171bcd60c455b4 >- # Date 0 0 >- >- diff -r ef8dafc9fa4c b >- --- /dev/null >- +++ b/b >- @@ -0,0 +1,1 @@ >- +a >- diff -r ef8dafc9fa4c c >- --- /dev/null >- +++ b/c >- @@ -0,0 +1,1 @@ >- +a >- >- $ cd .. >- >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-safety.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-safety.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-safety.t.err >@@ -1,175 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ echo '[extensions]' >> $HGRCPATH >- $ echo 'mq =' >> $HGRCPATH >- >- $ hg init repo >- $ cd repo >- >- $ echo foo > foo >- $ hg ci -qAm 'add a file' >- >- $ hg qinit >- >- $ hg qnew foo >- $ echo foo >> foo >- $ hg qrefresh -m 'append foo' >- >- $ hg qnew bar >- $ echo bar >> foo >- $ hg qrefresh -m 'append bar' >- >- >-try to commit on top of a patch >- >- $ echo quux >> foo >- $ hg ci -m 'append quux' >- abort: cannot commit over an applied mq patch >- [255] >- >- >-cheat a bit... >- >- $ mv .hg/patches .hg/patches2 >- $ hg ci -m 'append quux' >- $ mv .hg/patches2 .hg/patches >- >- >-qpop/qrefresh on the wrong revision >- >- $ hg qpop >- abort: popping would remove a revision not managed by this patch queue >- [255] >- $ hg qpop -n patches >- using patch queue: $TESTTMP/repo/.hg/patches >- abort: popping would remove a revision not managed by this patch queue >- [255] >- $ hg qrefresh >- abort: working directory revision is not qtip >- [255] >- >- $ hg up -C qtip >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg qpop >- abort: popping would remove a revision not managed by this patch queue >- [255] >- $ hg qrefresh >- abort: cannot refresh a revision with children >- [255] >- $ hg tip --template '{rev} {desc}\n' >- 3 append quux >- >- >-qpush warning branchheads >- >- $ cd .. >- $ hg init branchy >- $ cd branchy >- $ echo q > q >- $ hg add q >- $ hg qnew -f qp >- $ hg qpop >- popping qp >- patch queue now empty >- $ echo a > a >- $ hg ci -Ama >- adding a >- $ hg up null >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg branch b >- marked working directory as branch b >- $ echo c > c >- $ hg ci -Amc >- adding c >- $ hg merge default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg ci -mmerge >- $ hg up default >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg log >- changeset: 2:65309210bf4e >- branch: b >- tag: tip >- parent: 1:707adb4c8ae1 >- parent: 0:cb9a9f314b8b >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: merge >- >- changeset: 1:707adb4c8ae1 >- branch: b >- parent: -1:000000000000 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: c >- >- changeset: 0:cb9a9f314b8b >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: a >- >- $ hg qpush >- applying qp >- now at: qp >- >-Testing applied patches, push and --force >- >- $ cd .. >- $ hg init forcepush >- $ cd forcepush >- $ echo a > a >- $ hg ci -Am adda >- adding a >- $ echo a >> a >- $ hg ci -m changea >- $ hg up 0 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg branch branch >- marked working directory as branch branch >- $ echo b > b >- $ hg ci -Am addb >- adding b >- $ hg up 0 >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg --cwd .. clone -r 0 forcepush forcepush2 >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo a >> a >- $ hg qnew patch >- >-Pushing applied patch with --rev without --force >- >- $ hg push -r default ../forcepush2 >- pushing to ../forcepush2 >- abort: source has mq patches applied >- [255] >- >-Pushing applied patch with branchhash, without --force >- >- $ hg push ../forcepush2#default >- pushing to ../forcepush2 >- abort: source has mq patches applied >- [255] >- >-Pushing revs excluding applied patch >- >- $ hg push --new-branch -r branch -r 2 ../forcepush2 >- pushing to ../forcepush2 >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- >-Pushing applied patch with --force >- >- $ hg push --force -r default ../forcepush2 >- pushing to ../forcepush2 >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files (+1 heads) >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-qfold.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-qfold.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-qfold.t.err >@@ -1,144 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ echo "[extensions]" >> $HGRCPATH >- $ echo "mq=" >> $HGRCPATH >- $ echo "[mq]" >> $HGRCPATH >- $ echo "git=keep" >> $HGRCPATH >- $ echo "[diff]" >> $HGRCPATH >- $ echo "nodates=1" >> $HGRCPATH >- >-init: >- >- $ hg init repo >- $ cd repo >- $ echo a > a >- $ hg ci -Am adda >- adding a >- $ echo a >> a >- $ hg qnew -f p1 >- $ echo b >> a >- $ hg qnew -f p2 >- $ echo c >> a >- $ hg qnew -f p3 >- >-Fold in the middle of the queue: >- >- $ hg qpop p1 >- popping p3 >- popping p2 >- now at: p1 >- >- $ hg qdiff >- diff -r 07f494440405 a >- --- a/a >- +++ b/a >- @@ -1,1 +1,2 @@ >- a >- +a >- >- $ hg qfold p2 >- $ grep git .hg/patches/p1 && echo 'git patch found!' >- [1] >- >- $ hg qser >- p1 >- p3 >- >- $ hg qdiff >- diff -r 07f494440405 a >- --- a/a >- +++ b/a >- @@ -1,1 +1,3 @@ >- a >- +a >- +b >- >-Fold with local changes: >- >- $ echo d >> a >- $ hg qfold p3 >- abort: local changes found, refresh first >- [255] >- >- $ hg diff -c . >- diff -r 07f494440405 -r ???????????? a (glob) >- --- a/a >- +++ b/a >- @@ -1,1 +1,3 @@ >- a >- +a >- +b >- >- $ hg revert -a --no-backup >- reverting a >- >-Fold git patch into a regular patch, expect git patch: >- >- $ echo a >> a >- $ hg qnew -f regular >- $ hg cp a aa >- $ hg qnew --git -f git >- >- $ hg qpop >- popping git >- now at: regular >- >- $ hg qfold git >- >- $ cat .hg/patches/regular >- # HG changeset patch >- # Parent ???????????????????????????????????????? (glob) >- >- diff --git a/a b/a >- --- a/a >- +++ b/a >- @@ -1,3 +1,4 @@ >- a >- a >- b >- +a >- diff --git a/a b/aa >- copy from a >- copy to aa >- --- a/a >- +++ b/aa >- @@ -1,3 +1,4 @@ >- a >- a >- b >- +a >- >- $ hg qpop >- popping regular >- now at: p1 >- >- $ hg qdel regular >- >-Fold regular patch into a git patch, expect git patch: >- >- $ hg cp a aa >- $ hg qnew --git -f git >- $ echo b >> aa >- $ hg qnew -f regular >- >- $ hg qpop >- popping regular >- now at: git >- >- $ hg qfold regular >- >- $ cat .hg/patches/git >- # HG changeset patch >- # Parent ???????????????????????????????????????? (glob) >- >- diff --git a/a b/aa >- copy from a >- copy to aa >- --- a/a >- +++ b/aa >- @@ -1,3 +1,4 @@ >- a >- a >- b >- +b >- >- $ cd .. >- >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-symlinks.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-symlinks.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-symlinks.t.err >@@ -1,121 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ "$TESTDIR/hghave" symlink || exit 80 >- >- $ echo "[extensions]" >> $HGRCPATH >- $ echo "mq=" >> $HGRCPATH >- >- $ hg init >- $ hg qinit >- $ hg qnew base.patch >- $ echo aaa > a >- $ echo bbb > b >- $ echo ccc > c >- $ hg add a b c >- $ hg qrefresh >- $ $TESTDIR/readlink.py a >- a -> a not a symlink >- >- >-test replacing a file with a symlink >- >- $ hg qnew symlink.patch >- $ rm a >- $ ln -s b a >- $ hg qrefresh --git >- $ $TESTDIR/readlink.py a >- a -> b >- >- $ hg qpop >- popping symlink.patch >- now at: base.patch >- $ hg qpush >- applying symlink.patch >- now at: symlink.patch >- $ $TESTDIR/readlink.py a >- a -> b >- >- >-test updating a symlink >- >- $ rm a >- $ ln -s c a >- $ hg qnew --git -f updatelink >- $ $TESTDIR/readlink.py a >- a -> c >- $ hg qpop >- popping updatelink >- now at: symlink.patch >- $ hg qpush --debug >- applying updatelink >- patching file a >- a >- now at: updatelink >- $ $TESTDIR/readlink.py a >- a -> c >- $ hg st >- >- >-test replacing a symlink with a file >- >- $ ln -s c s >- $ hg add s >- $ hg qnew --git -f addlink >- $ rm s >- $ echo sss > s >- $ hg qnew --git -f replacelinkwithfile >- $ hg qpop >- popping replacelinkwithfile >- now at: addlink >- $ hg qpush >- applying replacelinkwithfile >- now at: replacelinkwithfile >- $ cat s >- sss >- $ hg st >- >- >-test symlink removal >- >- $ hg qnew removesl.patch >- $ hg rm a >- $ hg qrefresh --git >- $ hg qpop >- popping removesl.patch >- now at: replacelinkwithfile >- $ hg qpush >- applying removesl.patch >- now at: removesl.patch >- $ hg st -c >- C b >- C c >- C s >- >-replace broken symlink with another broken symlink >- >- $ ln -s linka linka >- $ hg add linka >- $ hg qnew link >- $ hg mv linka linkb >- $ rm linkb >- $ ln -s linkb linkb >- $ hg qnew movelink >- $ hg qpop >- popping movelink >- now at: link >- $ hg qpush >- applying movelink >- now at: movelink >- $ $TESTDIR/readlink.py linkb >- linkb -> linkb >- >-check patch does not overwrite untracked symlinks >- >- $ hg qpop >- popping movelink >- now at: link >- $ ln -s linkbb linkb >- $ hg qpush >- applying movelink >- patch failed, unable to continue (try -v) >- patch failed, rejects left in working dir >- errors during apply, please fix and refresh movelink >- [2] >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-merge.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-merge.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-merge.t.err >@@ -1,3 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > Issue529: mq aborts when merging patch deleting files > > $ checkundo() >@@ -6,148 +8,3 @@ > > echo ".hg/store/undo still exists" > > fi > > } >- >- $ echo "[extensions]" >> $HGRCPATH >- $ echo "mq =" >> $HGRCPATH >- $ echo "[mq]" >> $HGRCPATH >- $ echo "git = keep" >> $HGRCPATH >- >-Commit two dummy files in "init" changeset: >- >- $ hg init t >- $ cd t >- $ echo a > a >- $ echo b > b >- $ hg ci -Am init >- adding a >- adding b >- $ hg tag -l init >- >-Create a patch removing a: >- >- $ hg qnew rm_a >- $ hg rm a >- $ hg qrefresh -m "rm a" >- >-Save the patch queue so we can merge it later: >- >- $ hg qsave -c -e >- copy $TESTTMP/t/.hg/patches to $TESTTMP/t/.hg/patches.1 >- $ checkundo >- >-Update b and commit in an "update" changeset: >- >- $ hg up -C init >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo b >> b >- $ hg st >- M b >- $ hg ci -m update >- created new head >- >-# Here, qpush used to abort with : >-# The system cannot find the file specified => a >- $ hg manifest >- a >- b >- >- $ hg qpush -a -m >- merging with queue at: $TESTTMP/t/.hg/patches.1 >- applying rm_a >- now at: rm_a >- >- $ checkundo >- $ hg manifest >- b >- >-Ensure status is correct after merge: >- >- $ hg qpop -a >- popping rm_a >- popping .hg.patches.merge.marker >- patch queue now empty >- >- $ cd .. >- >-Classic MQ merge sequence *with an explicit named queue*: >- >- $ hg init t2 >- $ cd t2 >- $ echo '[diff]' > .hg/hgrc >- $ echo 'nodates = 1' >> .hg/hgrc >- $ echo a > a >- $ hg ci -Am init >- adding a >- $ echo b > a >- $ hg ci -m changea >- $ hg up -C 0 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg cp a aa >- $ echo c >> a >- $ hg qnew --git -f -e patcha >- $ echo d >> a >- $ hg qnew -d '0 0' -f -e patcha2 >- >-Create the reference queue: >- >- $ hg qsave -c -e -n refqueue >- copy $TESTTMP/t2/.hg/patches to $TESTTMP/t2/.hg/refqueue >- $ hg up -C 1 >- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved >- >-Merge: >- >- $ HGMERGE=internal:other hg qpush -a -m -n refqueue >- merging with queue at: $TESTTMP/t2/.hg/refqueue >- applying patcha >- patching file a >- Hunk #1 FAILED at 0 >- 1 out of 1 hunks FAILED -- saving rejects to file a.rej >- patch failed, unable to continue (try -v) >- patch failed, rejects left in working dir >- patch didn't work out, merging patcha >- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved >- 0 files updated, 2 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- applying patcha2 >- now at: patcha2 >- >-Check patcha is still a git patch: >- >- $ cat .hg/patches/patcha >- # HG changeset patch >- # Parent d3873e73d99ef67873dac33fbcc66268d5d2b6f4 >- >- diff --git a/a b/a >- --- a/a >- +++ b/a >- @@ -1,1 +1,2 @@ >- -b >- +a >- +c >- diff --git a/a b/aa >- copy from a >- copy to aa >- --- a/a >- +++ b/aa >- @@ -1,1 +1,1 @@ >- -b >- +a >- >-Check patcha2 is still a regular patch: >- >- $ cat .hg/patches/patcha2 >- # HG changeset patch >- # Parent ???????????????????????????????????????? (glob) >- # Date 0 0 >- >- diff -r ???????????? -r ???????????? a (glob) >- --- a/a >- +++ b/a >- @@ -1,2 +1,3 @@ >- a >- c >- +d >- >- $ cd .. >- >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mv-cp-st-diff.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mv-cp-st-diff.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mv-cp-st-diff.t.err >@@ -1,1344 +1,7 @@ >+ >+ ### Abort: timeout after 180 seconds. > > $ add() > > { > > echo $2 >> $1 > > } >- $ hg init t >- $ cd t >- >-set up a boring main branch >- >- $ add a a >- $ hg add a >- $ mkdir x >- $ add x/x x >- $ hg add x/x >- $ hg ci -m0 >- $ add a m1 >- $ hg ci -m1 >- $ add a m2 >- $ add x/y y1 >- $ hg add x/y >- $ hg ci -m2 >- $ cd .. >- $ show() >- > { >- > echo "- $2: $1" >- > hg st -C $1 >- > echo >- > hg diff --git $1 >- > echo >- > } >- $ count=0 >- >-make a new branch and get diff/status output >-$1 - first commit >-$2 - second commit >-$3 - working dir action >-$4 - test description >- >- $ tb() >- > { >- > hg clone t t2 ; cd t2 >- > hg co -q -C 0 >- > >- > add a $count >- > count=`expr $count + 1` >- > hg ci -m "t0" >- > $1 >- > hg ci -m "t1" >- > $2 >- > hg ci -m "t2" >- > $3 >- > >- > echo "** $4 **" >- > echo "** $1 / $2 / $3" >- > show "" "working to parent" >- > show "--rev 0" "working to root" >- > show "--rev 2" "working to branch" >- > show "--rev 0 --rev ." "root to parent" >- > show "--rev . --rev 0" "parent to root" >- > show "--rev 2 --rev ." "branch to parent" >- > show "--rev . --rev 2" "parent to branch" >- > echo >- > cd .. >- > rm -rf t2 >- > } >- $ tb "add a a1" "add a a2" "hg mv a b" "rename in working dir" >- updating to branch default >- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved >- created new head >- ** rename in working dir ** >- ** add a a1 / add a a2 / hg mv a b >- - working to parent: >- A b >- a >- R a >- >- diff --git a/a b/b >- rename from a >- rename to b >- >- - working to root: --rev 0 >- A b >- a >- R a >- >- diff --git a/a b/b >- rename from a >- rename to b >- --- a/a >- +++ b/b >- @@ -1,1 +1,4 @@ >- a >- +0 >- +a1 >- +a2 >- >- - working to branch: --rev 2 >- A b >- a >- R a >- R x/y >- >- diff --git a/a b/b >- rename from a >- rename to b >- --- a/a >- +++ b/b >- @@ -1,3 +1,4 @@ >- a >- -m1 >- -m2 >- +0 >- +a1 >- +a2 >- diff --git a/x/y b/x/y >- deleted file mode 100644 >- --- a/x/y >- +++ /dev/null >- @@ -1,1 +0,0 @@ >- -y1 >- >- - root to parent: --rev 0 --rev . >- M a >- >- diff --git a/a b/a >- --- a/a >- +++ b/a >- @@ -1,1 +1,4 @@ >- a >- +0 >- +a1 >- +a2 >- >- - parent to root: --rev . --rev 0 >- M a >- >- diff --git a/a b/a >- --- a/a >- +++ b/a >- @@ -1,4 +1,1 @@ >- a >- -0 >- -a1 >- -a2 >- >- - branch to parent: --rev 2 --rev . >- M a >- R x/y >- >- diff --git a/a b/a >- --- a/a >- +++ b/a >- @@ -1,3 +1,4 @@ >- a >- -m1 >- -m2 >- +0 >- +a1 >- +a2 >- diff --git a/x/y b/x/y >- deleted file mode 100644 >- --- a/x/y >- +++ /dev/null >- @@ -1,1 +0,0 @@ >- -y1 >- >- - parent to branch: --rev . --rev 2 >- M a >- A x/y >- >- diff --git a/a b/a >- --- a/a >- +++ b/a >- @@ -1,4 +1,3 @@ >- a >- -0 >- -a1 >- -a2 >- +m1 >- +m2 >- diff --git a/x/y b/x/y >- new file mode 100644 >- --- /dev/null >- +++ b/x/y >- @@ -0,0 +1,1 @@ >- +y1 >- >- >- $ tb "add a a1" "add a a2" "hg cp a b" "copy in working dir" >- updating to branch default >- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved >- created new head >- ** copy in working dir ** >- ** add a a1 / add a a2 / hg cp a b >- - working to parent: >- A b >- a >- >- diff --git a/a b/b >- copy from a >- copy to b >- >- - working to root: --rev 0 >- M a >- A b >- a >- >- diff --git a/a b/a >- --- a/a >- +++ b/a >- @@ -1,1 +1,4 @@ >- a >- +1 >- +a1 >- +a2 >- diff --git a/a b/b >- copy from a >- copy to b >- --- a/a >- +++ b/b >- @@ -1,1 +1,4 @@ >- a >- +1 >- +a1 >- +a2 >- >- - working to branch: --rev 2 >- M a >- A b >- a >- R x/y >- >- diff --git a/a b/a >- --- a/a >- +++ b/a >- @@ -1,3 +1,4 @@ >- a >- -m1 >- -m2 >- +1 >- +a1 >- +a2 >- diff --git a/a b/b >- copy from a >- copy to b >- --- a/a >- +++ b/b >- @@ -1,3 +1,4 @@ >- a >- -m1 >- -m2 >- +1 >- +a1 >- +a2 >- diff --git a/x/y b/x/y >- deleted file mode 100644 >- --- a/x/y >- +++ /dev/null >- @@ -1,1 +0,0 @@ >- -y1 >- >- - root to parent: --rev 0 --rev . >- M a >- >- diff --git a/a b/a >- --- a/a >- +++ b/a >- @@ -1,1 +1,4 @@ >- a >- +1 >- +a1 >- +a2 >- >- - parent to root: --rev . --rev 0 >- M a >- >- diff --git a/a b/a >- --- a/a >- +++ b/a >- @@ -1,4 +1,1 @@ >- a >- -1 >- -a1 >- -a2 >- >- - branch to parent: --rev 2 --rev . >- M a >- R x/y >- >- diff --git a/a b/a >- --- a/a >- +++ b/a >- @@ -1,3 +1,4 @@ >- a >- -m1 >- -m2 >- +1 >- +a1 >- +a2 >- diff --git a/x/y b/x/y >- deleted file mode 100644 >- --- a/x/y >- +++ /dev/null >- @@ -1,1 +0,0 @@ >- -y1 >- >- - parent to branch: --rev . --rev 2 >- M a >- A x/y >- >- diff --git a/a b/a >- --- a/a >- +++ b/a >- @@ -1,4 +1,3 @@ >- a >- -1 >- -a1 >- -a2 >- +m1 >- +m2 >- diff --git a/x/y b/x/y >- new file mode 100644 >- --- /dev/null >- +++ b/x/y >- @@ -0,0 +1,1 @@ >- +y1 >- >- >- $ tb "hg mv a b" "add b b1" "add b w" "single rename" >- updating to branch default >- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved >- created new head >- ** single rename ** >- ** hg mv a b / add b b1 / add b w >- - working to parent: >- M b >- >- diff --git a/b b/b >- --- a/b >- +++ b/b >- @@ -1,3 +1,4 @@ >- a >- 2 >- b1 >- +w >- >- - working to root: --rev 0 >- A b >- a >- R a >- >- diff --git a/a b/b >- rename from a >- rename to b >- --- a/a >- +++ b/b >- @@ -1,1 +1,4 @@ >- a >- +2 >- +b1 >- +w >- >- - working to branch: --rev 2 >- A b >- a >- R a >- R x/y >- >- diff --git a/a b/b >- rename from a >- rename to b >- --- a/a >- +++ b/b >- @@ -1,3 +1,4 @@ >- a >- -m1 >- -m2 >- +2 >- +b1 >- +w >- diff --git a/x/y b/x/y >- deleted file mode 100644 >- --- a/x/y >- +++ /dev/null >- @@ -1,1 +0,0 @@ >- -y1 >- >- - root to parent: --rev 0 --rev . >- A b >- a >- R a >- >- diff --git a/a b/b >- rename from a >- rename to b >- --- a/a >- +++ b/b >- @@ -1,1 +1,3 @@ >- a >- +2 >- +b1 >- >- - parent to root: --rev . --rev 0 >- A a >- b >- R b >- >- diff --git a/b b/a >- rename from b >- rename to a >- --- a/b >- +++ b/a >- @@ -1,3 +1,1 @@ >- a >- -2 >- -b1 >- >- - branch to parent: --rev 2 --rev . >- A b >- a >- R a >- R x/y >- >- diff --git a/a b/b >- rename from a >- rename to b >- --- a/a >- +++ b/b >- @@ -1,3 +1,3 @@ >- a >- -m1 >- -m2 >- +2 >- +b1 >- diff --git a/x/y b/x/y >- deleted file mode 100644 >- --- a/x/y >- +++ /dev/null >- @@ -1,1 +0,0 @@ >- -y1 >- >- - parent to branch: --rev . --rev 2 >- A a >- b >- A x/y >- R b >- >- diff --git a/b b/a >- rename from b >- rename to a >- --- a/b >- +++ b/a >- @@ -1,3 +1,3 @@ >- a >- -2 >- -b1 >- +m1 >- +m2 >- diff --git a/x/y b/x/y >- new file mode 100644 >- --- /dev/null >- +++ b/x/y >- @@ -0,0 +1,1 @@ >- +y1 >- >- >- $ tb "hg cp a b" "add b b1" "add a w" "single copy" >- updating to branch default >- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved >- created new head >- ** single copy ** >- ** hg cp a b / add b b1 / add a w >- - working to parent: >- M a >- >- diff --git a/a b/a >- --- a/a >- +++ b/a >- @@ -1,2 +1,3 @@ >- a >- 3 >- +w >- >- - working to root: --rev 0 >- M a >- A b >- a >- >- diff --git a/a b/a >- --- a/a >- +++ b/a >- @@ -1,1 +1,3 @@ >- a >- +3 >- +w >- diff --git a/a b/b >- copy from a >- copy to b >- --- a/a >- +++ b/b >- @@ -1,1 +1,3 @@ >- a >- +3 >- +b1 >- >- - working to branch: --rev 2 >- M a >- A b >- a >- R x/y >- >- diff --git a/a b/a >- --- a/a >- +++ b/a >- @@ -1,3 +1,3 @@ >- a >- -m1 >- -m2 >- +3 >- +w >- diff --git a/a b/b >- copy from a >- copy to b >- --- a/a >- +++ b/b >- @@ -1,3 +1,3 @@ >- a >- -m1 >- -m2 >- +3 >- +b1 >- diff --git a/x/y b/x/y >- deleted file mode 100644 >- --- a/x/y >- +++ /dev/null >- @@ -1,1 +0,0 @@ >- -y1 >- >- - root to parent: --rev 0 --rev . >- M a >- A b >- a >- >- diff --git a/a b/a >- --- a/a >- +++ b/a >- @@ -1,1 +1,2 @@ >- a >- +3 >- diff --git a/a b/b >- copy from a >- copy to b >- --- a/a >- +++ b/b >- @@ -1,1 +1,3 @@ >- a >- +3 >- +b1 >- >- - parent to root: --rev . --rev 0 >- M a >- R b >- >- diff --git a/a b/a >- --- a/a >- +++ b/a >- @@ -1,2 +1,1 @@ >- a >- -3 >- diff --git a/b b/b >- deleted file mode 100644 >- --- a/b >- +++ /dev/null >- @@ -1,3 +0,0 @@ >- -a >- -3 >- -b1 >- >- - branch to parent: --rev 2 --rev . >- M a >- A b >- a >- R x/y >- >- diff --git a/a b/a >- --- a/a >- +++ b/a >- @@ -1,3 +1,2 @@ >- a >- -m1 >- -m2 >- +3 >- diff --git a/a b/b >- copy from a >- copy to b >- --- a/a >- +++ b/b >- @@ -1,3 +1,3 @@ >- a >- -m1 >- -m2 >- +3 >- +b1 >- diff --git a/x/y b/x/y >- deleted file mode 100644 >- --- a/x/y >- +++ /dev/null >- @@ -1,1 +0,0 @@ >- -y1 >- >- - parent to branch: --rev . --rev 2 >- M a >- A x/y >- R b >- >- diff --git a/a b/a >- --- a/a >- +++ b/a >- @@ -1,2 +1,3 @@ >- a >- -3 >- +m1 >- +m2 >- diff --git a/b b/b >- deleted file mode 100644 >- --- a/b >- +++ /dev/null >- @@ -1,3 +0,0 @@ >- -a >- -3 >- -b1 >- diff --git a/x/y b/x/y >- new file mode 100644 >- --- /dev/null >- +++ b/x/y >- @@ -0,0 +1,1 @@ >- +y1 >- >- >- $ tb "hg mv a b" "hg mv b c" "hg mv c d" "rename chain" >- updating to branch default >- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved >- created new head >- ** rename chain ** >- ** hg mv a b / hg mv b c / hg mv c d >- - working to parent: >- A d >- c >- R c >- >- diff --git a/c b/d >- rename from c >- rename to d >- >- - working to root: --rev 0 >- A d >- a >- R a >- >- diff --git a/a b/d >- rename from a >- rename to d >- --- a/a >- +++ b/d >- @@ -1,1 +1,2 @@ >- a >- +4 >- >- - working to branch: --rev 2 >- A d >- a >- R a >- R x/y >- >- diff --git a/a b/d >- rename from a >- rename to d >- --- a/a >- +++ b/d >- @@ -1,3 +1,2 @@ >- a >- -m1 >- -m2 >- +4 >- diff --git a/x/y b/x/y >- deleted file mode 100644 >- --- a/x/y >- +++ /dev/null >- @@ -1,1 +0,0 @@ >- -y1 >- >- - root to parent: --rev 0 --rev . >- A c >- a >- R a >- >- diff --git a/a b/c >- rename from a >- rename to c >- --- a/a >- +++ b/c >- @@ -1,1 +1,2 @@ >- a >- +4 >- >- - parent to root: --rev . --rev 0 >- A a >- c >- R c >- >- diff --git a/c b/a >- rename from c >- rename to a >- --- a/c >- +++ b/a >- @@ -1,2 +1,1 @@ >- a >- -4 >- >- - branch to parent: --rev 2 --rev . >- A c >- a >- R a >- R x/y >- >- diff --git a/a b/c >- rename from a >- rename to c >- --- a/a >- +++ b/c >- @@ -1,3 +1,2 @@ >- a >- -m1 >- -m2 >- +4 >- diff --git a/x/y b/x/y >- deleted file mode 100644 >- --- a/x/y >- +++ /dev/null >- @@ -1,1 +0,0 @@ >- -y1 >- >- - parent to branch: --rev . --rev 2 >- A a >- c >- A x/y >- R c >- >- diff --git a/c b/a >- rename from c >- rename to a >- --- a/c >- +++ b/a >- @@ -1,2 +1,3 @@ >- a >- -4 >- +m1 >- +m2 >- diff --git a/x/y b/x/y >- new file mode 100644 >- --- /dev/null >- +++ b/x/y >- @@ -0,0 +1,1 @@ >- +y1 >- >- >- $ tb "hg cp a b" "hg cp b c" "hg cp c d" "copy chain" >- updating to branch default >- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved >- created new head >- ** copy chain ** >- ** hg cp a b / hg cp b c / hg cp c d >- - working to parent: >- A d >- c >- >- diff --git a/c b/d >- copy from c >- copy to d >- >- - working to root: --rev 0 >- M a >- A b >- a >- A c >- a >- A d >- a >- >- diff --git a/a b/a >- --- a/a >- +++ b/a >- @@ -1,1 +1,2 @@ >- a >- +5 >- diff --git a/a b/b >- copy from a >- copy to b >- --- a/a >- +++ b/b >- @@ -1,1 +1,2 @@ >- a >- +5 >- diff --git a/a b/c >- copy from a >- copy to c >- --- a/a >- +++ b/c >- @@ -1,1 +1,2 @@ >- a >- +5 >- diff --git a/a b/d >- copy from a >- copy to d >- --- a/a >- +++ b/d >- @@ -1,1 +1,2 @@ >- a >- +5 >- >- - working to branch: --rev 2 >- M a >- A b >- a >- A c >- a >- A d >- a >- R x/y >- >- diff --git a/a b/a >- --- a/a >- +++ b/a >- @@ -1,3 +1,2 @@ >- a >- -m1 >- -m2 >- +5 >- diff --git a/a b/b >- copy from a >- copy to b >- --- a/a >- +++ b/b >- @@ -1,3 +1,2 @@ >- a >- -m1 >- -m2 >- +5 >- diff --git a/a b/c >- copy from a >- copy to c >- --- a/a >- +++ b/c >- @@ -1,3 +1,2 @@ >- a >- -m1 >- -m2 >- +5 >- diff --git a/a b/d >- copy from a >- copy to d >- --- a/a >- +++ b/d >- @@ -1,3 +1,2 @@ >- a >- -m1 >- -m2 >- +5 >- diff --git a/x/y b/x/y >- deleted file mode 100644 >- --- a/x/y >- +++ /dev/null >- @@ -1,1 +0,0 @@ >- -y1 >- >- - root to parent: --rev 0 --rev . >- M a >- A b >- a >- A c >- a >- >- diff --git a/a b/a >- --- a/a >- +++ b/a >- @@ -1,1 +1,2 @@ >- a >- +5 >- diff --git a/a b/b >- copy from a >- copy to b >- --- a/a >- +++ b/b >- @@ -1,1 +1,2 @@ >- a >- +5 >- diff --git a/a b/c >- copy from a >- copy to c >- --- a/a >- +++ b/c >- @@ -1,1 +1,2 @@ >- a >- +5 >- >- - parent to root: --rev . --rev 0 >- M a >- R b >- R c >- >- diff --git a/a b/a >- --- a/a >- +++ b/a >- @@ -1,2 +1,1 @@ >- a >- -5 >- diff --git a/b b/b >- deleted file mode 100644 >- --- a/b >- +++ /dev/null >- @@ -1,2 +0,0 @@ >- -a >- -5 >- diff --git a/c b/c >- deleted file mode 100644 >- --- a/c >- +++ /dev/null >- @@ -1,2 +0,0 @@ >- -a >- -5 >- >- - branch to parent: --rev 2 --rev . >- M a >- A b >- a >- A c >- a >- R x/y >- >- diff --git a/a b/a >- --- a/a >- +++ b/a >- @@ -1,3 +1,2 @@ >- a >- -m1 >- -m2 >- +5 >- diff --git a/a b/b >- copy from a >- copy to b >- --- a/a >- +++ b/b >- @@ -1,3 +1,2 @@ >- a >- -m1 >- -m2 >- +5 >- diff --git a/a b/c >- copy from a >- copy to c >- --- a/a >- +++ b/c >- @@ -1,3 +1,2 @@ >- a >- -m1 >- -m2 >- +5 >- diff --git a/x/y b/x/y >- deleted file mode 100644 >- --- a/x/y >- +++ /dev/null >- @@ -1,1 +0,0 @@ >- -y1 >- >- - parent to branch: --rev . --rev 2 >- M a >- A x/y >- R b >- R c >- >- diff --git a/a b/a >- --- a/a >- +++ b/a >- @@ -1,2 +1,3 @@ >- a >- -5 >- +m1 >- +m2 >- diff --git a/b b/b >- deleted file mode 100644 >- --- a/b >- +++ /dev/null >- @@ -1,2 +0,0 @@ >- -a >- -5 >- diff --git a/c b/c >- deleted file mode 100644 >- --- a/c >- +++ /dev/null >- @@ -1,2 +0,0 @@ >- -a >- -5 >- diff --git a/x/y b/x/y >- new file mode 100644 >- --- /dev/null >- +++ b/x/y >- @@ -0,0 +1,1 @@ >- +y1 >- >- >- $ tb "add a a1" "hg mv a b" "hg mv b a" "circular rename" >- updating to branch default >- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved >- created new head >- ** circular rename ** >- ** add a a1 / hg mv a b / hg mv b a >- - working to parent: >- A a >- b >- R b >- >- diff --git a/b b/a >- rename from b >- rename to a >- >- - working to root: --rev 0 >- M a >- >- diff --git a/a b/a >- --- a/a >- +++ b/a >- @@ -1,1 +1,3 @@ >- a >- +6 >- +a1 >- >- - working to branch: --rev 2 >- M a >- R x/y >- >- diff --git a/a b/a >- --- a/a >- +++ b/a >- @@ -1,3 +1,3 @@ >- a >- -m1 >- -m2 >- +6 >- +a1 >- diff --git a/x/y b/x/y >- deleted file mode 100644 >- --- a/x/y >- +++ /dev/null >- @@ -1,1 +0,0 @@ >- -y1 >- >- - root to parent: --rev 0 --rev . >- A b >- a >- R a >- >- diff --git a/a b/b >- rename from a >- rename to b >- --- a/a >- +++ b/b >- @@ -1,1 +1,3 @@ >- a >- +6 >- +a1 >- >- - parent to root: --rev . --rev 0 >- A a >- b >- R b >- >- diff --git a/b b/a >- rename from b >- rename to a >- --- a/b >- +++ b/a >- @@ -1,3 +1,1 @@ >- a >- -6 >- -a1 >- >- - branch to parent: --rev 2 --rev . >- A b >- a >- R a >- R x/y >- >- diff --git a/a b/b >- rename from a >- rename to b >- --- a/a >- +++ b/b >- @@ -1,3 +1,3 @@ >- a >- -m1 >- -m2 >- +6 >- +a1 >- diff --git a/x/y b/x/y >- deleted file mode 100644 >- --- a/x/y >- +++ /dev/null >- @@ -1,1 +0,0 @@ >- -y1 >- >- - parent to branch: --rev . --rev 2 >- A a >- b >- A x/y >- R b >- >- diff --git a/b b/a >- rename from b >- rename to a >- --- a/b >- +++ b/a >- @@ -1,3 +1,3 @@ >- a >- -6 >- -a1 >- +m1 >- +m2 >- diff --git a/x/y b/x/y >- new file mode 100644 >- --- /dev/null >- +++ b/x/y >- @@ -0,0 +1,1 @@ >- +y1 >- >- >- $ tb "hg mv x y" "add y/x x1" "add y/x x2" "directory move" >- updating to branch default >- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved >- created new head >- moving x/x to y/x >- ** directory move ** >- ** hg mv x y / add y/x x1 / add y/x x2 >- - working to parent: >- M y/x >- >- diff --git a/y/x b/y/x >- --- a/y/x >- +++ b/y/x >- @@ -1,2 +1,3 @@ >- x >- x1 >- +x2 >- >- - working to root: --rev 0 >- M a >- A y/x >- x/x >- R x/x >- >- diff --git a/a b/a >- --- a/a >- +++ b/a >- @@ -1,1 +1,2 @@ >- a >- +7 >- diff --git a/x/x b/y/x >- rename from x/x >- rename to y/x >- --- a/x/x >- +++ b/y/x >- @@ -1,1 +1,3 @@ >- x >- +x1 >- +x2 >- >- - working to branch: --rev 2 >- M a >- A y/x >- x/x >- R x/x >- R x/y >- >- diff --git a/a b/a >- --- a/a >- +++ b/a >- @@ -1,3 +1,2 @@ >- a >- -m1 >- -m2 >- +7 >- diff --git a/x/y b/x/y >- deleted file mode 100644 >- --- a/x/y >- +++ /dev/null >- @@ -1,1 +0,0 @@ >- -y1 >- diff --git a/x/x b/y/x >- rename from x/x >- rename to y/x >- --- a/x/x >- +++ b/y/x >- @@ -1,1 +1,3 @@ >- x >- +x1 >- +x2 >- >- - root to parent: --rev 0 --rev . >- M a >- A y/x >- x/x >- R x/x >- >- diff --git a/a b/a >- --- a/a >- +++ b/a >- @@ -1,1 +1,2 @@ >- a >- +7 >- diff --git a/x/x b/y/x >- rename from x/x >- rename to y/x >- --- a/x/x >- +++ b/y/x >- @@ -1,1 +1,2 @@ >- x >- +x1 >- >- - parent to root: --rev . --rev 0 >- M a >- A x/x >- y/x >- R y/x >- >- diff --git a/a b/a >- --- a/a >- +++ b/a >- @@ -1,2 +1,1 @@ >- a >- -7 >- diff --git a/y/x b/x/x >- rename from y/x >- rename to x/x >- --- a/y/x >- +++ b/x/x >- @@ -1,2 +1,1 @@ >- x >- -x1 >- >- - branch to parent: --rev 2 --rev . >- M a >- A y/x >- x/x >- R x/x >- R x/y >- >- diff --git a/a b/a >- --- a/a >- +++ b/a >- @@ -1,3 +1,2 @@ >- a >- -m1 >- -m2 >- +7 >- diff --git a/x/y b/x/y >- deleted file mode 100644 >- --- a/x/y >- +++ /dev/null >- @@ -1,1 +0,0 @@ >- -y1 >- diff --git a/x/x b/y/x >- rename from x/x >- rename to y/x >- --- a/x/x >- +++ b/y/x >- @@ -1,1 +1,2 @@ >- x >- +x1 >- >- - parent to branch: --rev . --rev 2 >- M a >- A x/x >- y/x >- A x/y >- R y/x >- >- diff --git a/a b/a >- --- a/a >- +++ b/a >- @@ -1,2 +1,3 @@ >- a >- -7 >- +m1 >- +m2 >- diff --git a/y/x b/x/x >- rename from y/x >- rename to x/x >- --- a/y/x >- +++ b/x/x >- @@ -1,2 +1,1 @@ >- x >- -x1 >- diff --git a/x/y b/x/y >- new file mode 100644 >- --- /dev/null >- +++ b/x/y >- @@ -0,0 +1,1 @@ >- +y1 >- >- >- >-Cannot implement unrelated branch with tb >-testing copies with unrelated branch >- >- $ hg init unrelated >- $ cd unrelated >- $ add a a >- $ hg ci -Am adda >- adding a >- $ hg mv a b >- $ hg ci -m movea >- $ hg up -C null >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ add a a >- $ hg ci -Am addunrelateda >- adding a >- created new head >- >-unrelated branch diff >- >- $ hg diff --git -r 2 -r 1 >- diff --git a/a b/a >- deleted file mode 100644 >- --- a/a >- +++ /dev/null >- @@ -1,1 +0,0 @@ >- -a >- diff --git a/b b/b >- new file mode 100644 >- --- /dev/null >- +++ b/b >- @@ -0,0 +1,1 @@ >- +a >- $ cd .. >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-qnew.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-qnew.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-qnew.t.err >@@ -1,229 +1,6 @@ >+ >+ ### Abort: timeout after 180 seconds. > > $ catpatch() { > > cat $1 | sed -e "s/^\(# Parent \).*/\1/" > > } >- $ echo "[extensions]" >> $HGRCPATH >- $ echo "mq=" >> $HGRCPATH >- $ runtest() { >- > hg init mq >- > cd mq >- > >- > echo a > a >- > hg ci -Ama >- > >- > echo '% qnew should refuse bad patch names' >- > hg qnew series >- > hg qnew status >- > hg qnew guards >- > hg qnew .hgignore >- > hg qnew .mqfoo >- > hg qnew 'foo#bar' >- > hg qnew 'foo:bar' >- > >- > hg qinit -c >- > >- > echo '% qnew with name containing slash' >- > hg qnew foo/ >- > hg qnew foo/bar.patch >- > hg qnew foo >- > hg qseries >- > hg qpop >- > hg qdelete foo/bar.patch >- > >- > echo '% qnew with uncommitted changes' >- > echo a > somefile >- > hg add somefile >- > hg qnew uncommitted.patch >- > hg st >- > hg qseries >- > >- > echo '% qnew implies add' >- > hg -R .hg/patches st >- > >- > echo '% qnew missing' >- > hg qnew missing.patch missing >- > >- > echo '% qnew -m' >- > hg qnew -m 'foo bar' mtest.patch >- > catpatch .hg/patches/mtest.patch >- > >- > echo '% qnew twice' >- > hg qnew first.patch >- > hg qnew first.patch >- > >- > touch ../first.patch >- > hg qimport ../first.patch >- > >- > echo '% qnew -f from a subdirectory' >- > hg qpop -a >- > mkdir d >- > cd d >- > echo b > b >- > hg ci -Am t >- > echo b >> b >- > hg st >- > hg qnew -g -f p >- > catpatch ../.hg/patches/p >- > >- > echo '% qnew -u with no username configured' >- > HGUSER= hg qnew -u blue red >- > catpatch ../.hg/patches/red >- > >- > echo '% qnew -e -u with no username configured' >- > HGUSER= hg qnew -e -u chartreuse fucsia >- > catpatch ../.hg/patches/fucsia >- > >- > echo '% fail when trying to import a merge' >- > hg init merge >- > cd merge >- > touch a >- > hg ci -Am null >- > echo a >> a >- > hg ci -m a >- > hg up -r 0 >- > echo b >> a >- > hg ci -m b >- > hg merge -f 1 >- > hg resolve --mark a >- > hg qnew -f merge >- > >- > cd ../../.. >- > rm -r mq >- > } >- >-plain headers >- >- $ echo "[mq]" >> $HGRCPATH >- $ echo "plain=true" >> $HGRCPATH >- $ mkdir sandbox >- $ (cd sandbox ; runtest) >- adding a >- % qnew should refuse bad patch names >- abort: "series" cannot be used as the name of a patch >- abort: "status" cannot be used as the name of a patch >- abort: "guards" cannot be used as the name of a patch >- abort: ".hgignore" cannot be used as the name of a patch >- abort: ".mqfoo" cannot be used as the name of a patch >- abort: "foo#bar" cannot be used as the name of a patch >- abort: "foo:bar" cannot be used as the name of a patch >- % qnew with name containing slash >- abort: cannot write patch "foo/": Is a directory >- abort: "foo" already exists as a directory >- foo/bar.patch >- popping foo/bar.patch >- patch queue now empty >- % qnew with uncommitted changes >- uncommitted.patch >- % qnew implies add >- A .hgignore >- A series >- A uncommitted.patch >- % qnew missing >- abort: missing: No such file or directory >- % qnew -m >- foo bar >- >- % qnew twice >- abort: patch "first.patch" already exists >- abort: patch "first.patch" already exists >- % qnew -f from a subdirectory >- popping first.patch >- popping mtest.patch >- popping uncommitted.patch >- patch queue now empty >- adding d/b >- M d/b >- diff --git a/d/b b/d/b >- --- a/d/b >- +++ b/d/b >- @@ -1,1 +1,2 @@ >- b >- +b >- % qnew -u with no username configured >- From: blue >- >- % qnew -e -u with no username configured >- From: chartreuse >- >- % fail when trying to import a merge >- adding a >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- created new head >- merging a >- warning: conflicts during merge. >- merging a failed! >- 0 files updated, 0 files merged, 0 files removed, 1 files unresolved >- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon >- abort: cannot manage merge changesets >- $ rm -r sandbox >- >-hg headers >- >- $ echo "plain=false" >> $HGRCPATH >- $ mkdir sandbox >- $ (cd sandbox ; runtest) >- adding a >- % qnew should refuse bad patch names >- abort: "series" cannot be used as the name of a patch >- abort: "status" cannot be used as the name of a patch >- abort: "guards" cannot be used as the name of a patch >- abort: ".hgignore" cannot be used as the name of a patch >- abort: ".mqfoo" cannot be used as the name of a patch >- abort: "foo#bar" cannot be used as the name of a patch >- abort: "foo:bar" cannot be used as the name of a patch >- % qnew with name containing slash >- abort: cannot write patch "foo/": Is a directory >- abort: "foo" already exists as a directory >- foo/bar.patch >- popping foo/bar.patch >- patch queue now empty >- % qnew with uncommitted changes >- uncommitted.patch >- % qnew implies add >- A .hgignore >- A series >- A uncommitted.patch >- % qnew missing >- abort: missing: No such file or directory >- % qnew -m >- # HG changeset patch >- # Parent >- foo bar >- >- % qnew twice >- abort: patch "first.patch" already exists >- abort: patch "first.patch" already exists >- % qnew -f from a subdirectory >- popping first.patch >- popping mtest.patch >- popping uncommitted.patch >- patch queue now empty >- adding d/b >- M d/b >- # HG changeset patch >- # Parent >- diff --git a/d/b b/d/b >- --- a/d/b >- +++ b/d/b >- @@ -1,1 +1,2 @@ >- b >- +b >- % qnew -u with no username configured >- # HG changeset patch >- # Parent >- # User blue >- % qnew -e -u with no username configured >- # HG changeset patch >- # Parent >- # User chartreuse >- % fail when trying to import a merge >- adding a >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- created new head >- merging a >- warning: conflicts during merge. >- merging a failed! >- 0 files updated, 0 files merged, 0 files removed, 1 files unresolved >- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon >- abort: cannot manage merge changesets >- $ rm -r sandbox >!.. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-newbranch.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-newbranch.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-newbranch.t.err >@@ -1,320 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ branchcache=.hg/branchheads.cache >- >- $ hg init t >- $ cd t >- >- $ hg branches >- $ echo foo > a >- $ hg add a >- $ hg ci -m "initial" >- $ hg branch foo >- marked working directory as branch foo >- $ hg branch >- foo >- $ hg ci -m "add branch name" >- $ hg branch bar >- marked working directory as branch bar >- $ hg ci -m "change branch name" >- >-Branch shadowing: >- >- $ hg branch default >- abort: a branch of the same name already exists (use 'hg update' to switch to it) >- [255] >- >- $ hg branch -f default >- marked working directory as branch default >- >- $ hg ci -m "clear branch name" >- created new head >- >-There should be only one default branch head >- >- $ hg heads . >- changeset: 3:9d567d0b51f9 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: clear branch name >- >- >- $ hg co foo >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg branch >- foo >- $ echo bleah > a >- $ hg ci -m "modify a branch" >- >- $ hg merge default >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- >- $ hg branch >- foo >- $ hg ci -m "merge" >- >- $ hg log >- changeset: 5:dc140083783b >- branch: foo >- tag: tip >- parent: 4:98d14f698afe >- parent: 3:9d567d0b51f9 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: merge >- >- changeset: 4:98d14f698afe >- branch: foo >- parent: 1:0079f24813e2 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: modify a branch >- >- changeset: 3:9d567d0b51f9 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: clear branch name >- >- changeset: 2:ed2bbf4e0102 >- branch: bar >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: change branch name >- >- changeset: 1:0079f24813e2 >- branch: foo >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: add branch name >- >- changeset: 0:db01e8ea3388 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: initial >- >- $ hg branches >- foo 5:dc140083783b >- default 3:9d567d0b51f9 (inactive) >- bar 2:ed2bbf4e0102 (inactive) >- >- $ hg branches -q >- foo >- default >- bar >- >-Test for invalid branch cache: >- >- $ hg rollback >- rolling back to revision 4 (undo commit) >- >- $ cp $branchcache .hg/bc-invalid >- >- $ hg log -r foo >- changeset: 4:98d14f698afe >- branch: foo >- tag: tip >- parent: 1:0079f24813e2 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: modify a branch >- >- $ cp .hg/bc-invalid $branchcache >- >- $ hg --debug log -r foo >- invalidating branch cache (tip differs) >- changeset: 4:98d14f698afeaff8cb612dcf215ce95e639effc3 >- branch: foo >- tag: tip >- parent: 1:0079f24813e2b73a891577c243684c5066347bc8 >- parent: -1:0000000000000000000000000000000000000000 >- manifest: 4:d01b250baaa05909152f7ae07d7a649deea0df9a >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- files: a >- extra: branch=foo >- description: >- modify a branch >- >- >- $ rm $branchcache >- $ echo corrupted > $branchcache >- >- $ hg log -qr foo >- 4:98d14f698afe >- >- $ cat $branchcache >- 98d14f698afeaff8cb612dcf215ce95e639effc3 4 >- 9d567d0b51f9e2068b054e1948e1a927f99b5874 default >- 98d14f698afeaff8cb612dcf215ce95e639effc3 foo >- ed2bbf4e01029020711be82ca905283e883f0e11 bar >- >-Push should update the branch cache: >- >- $ hg init ../target >- >-Pushing just rev 0: >- >- $ hg push -qr 0 ../target >- >- $ cat ../target/$branchcache >- db01e8ea3388fd3c7c94e1436ea2bd6a53d581c5 0 >- db01e8ea3388fd3c7c94e1436ea2bd6a53d581c5 default >- >-Pushing everything: >- >- $ hg push -qf ../target >- >- $ cat ../target/$branchcache >- 98d14f698afeaff8cb612dcf215ce95e639effc3 4 >- 9d567d0b51f9e2068b054e1948e1a927f99b5874 default >- 98d14f698afeaff8cb612dcf215ce95e639effc3 foo >- ed2bbf4e01029020711be82ca905283e883f0e11 bar >- >-Update with no arguments: tipmost revision of the current branch: >- >- $ hg up -q -C 0 >- $ hg up -q >- $ hg id >- 9d567d0b51f9 >- >- $ hg up -q 1 >- $ hg up -q >- $ hg id >- 98d14f698afe (foo) tip >- >- $ hg branch foobar >- marked working directory as branch foobar >- >- $ hg up >- abort: branch foobar not found >- [255] >- >-Fastforward merge: >- >- $ hg branch ff >- marked working directory as branch ff >- >- $ echo ff > ff >- $ hg ci -Am'fast forward' >- adding ff >- >- $ hg up foo >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- >- $ hg merge ff >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- >- $ hg branch >- foo >- $ hg commit -m'Merge ff into foo' >- $ hg parents >- changeset: 6:917eb54e1b4b >- branch: foo >- tag: tip >- parent: 4:98d14f698afe >- parent: 5:6683a60370cb >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: Merge ff into foo >- >- $ hg manifest >- a >- ff >- >- >-Test merging, add 3 default heads and one test head: >- >- $ cd .. >- $ hg init merges >- $ cd merges >- $ echo a > a >- $ hg ci -Ama >- adding a >- >- $ echo b > b >- $ hg ci -Amb >- adding b >- >- $ hg up 0 >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ echo c > c >- $ hg ci -Amc >- adding c >- created new head >- >- $ hg up 0 >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ echo d > d >- $ hg ci -Amd >- adding d >- created new head >- >- $ hg up 0 >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg branch test >- marked working directory as branch test >- $ echo e >> e >- $ hg ci -Ame >- adding e >- >- $ hg log >- changeset: 4:3a1e01ed1df4 >- branch: test >- tag: tip >- parent: 0:cb9a9f314b8b >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: e >- >- changeset: 3:980f7dc84c29 >- parent: 0:cb9a9f314b8b >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: d >- >- changeset: 2:d36c0562f908 >- parent: 0:cb9a9f314b8b >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: c >- >- changeset: 1:d2ae7f538514 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: b >- >- changeset: 0:cb9a9f314b8b >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: a >- >-Implicit merge with test branch as parent: >- >- $ hg merge >- abort: branch 'test' has one head - please merge with an explicit rev >- (run 'hg heads' to see all heads) >- [255] >- $ hg up -C default >- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved >- >-Implicit merge with default branch as parent: >- >- $ hg merge >- abort: branch 'default' has 3 heads - please merge with an explicit rev >- (run 'hg heads .' to see heads) >- [255] >- >-3 branch heads, explicit merge required: >- >- $ hg merge 2 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg ci -m merge >- >-2 branch heads, implicit merge works: >- >- $ hg merge >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-qdelete.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-qdelete.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-qdelete.t.err >@@ -1,164 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ echo "[extensions]" >> $HGRCPATH >- $ echo "mq=" >> $HGRCPATH >- >- $ hg init a >- $ cd a >- >- $ echo 'base' > base >- $ hg ci -Ambase -d '1 0' >- adding base >- >- $ hg qnew -d '1 0' a >- $ hg qnew -d '1 0' b >- $ hg qnew -d '1 0' c >- >- $ hg qdel >- abort: qdelete requires at least one revision or patch name >- [255] >- >- $ hg qdel c >- abort: cannot delete applied patch c >- [255] >- >- $ hg qpop >- popping c >- now at: b >- >-Delete the same patch twice in one command (issue2427) >- >- $ hg qdel c c >- >- $ hg qseries >- a >- b >- >- $ ls .hg/patches >- a >- b >- series >- status >- >- $ hg qpop >- popping b >- now at: a >- >- $ hg qdel -k 1 >- >- $ ls .hg/patches >- a >- b >- series >- status >- >- $ hg qdel -r a >- patch a finalized without changeset message >- >- $ hg qapplied >- >- $ hg log --template '{rev} {desc}\n' >- 1 [mq]: a >- 0 base >- >- $ hg qnew d >- $ hg qnew e >- $ hg qnew f >- >- $ hg qdel -r e >- abort: cannot delete revision 3 above applied patches >- [255] >- >- $ hg qdel -r qbase:e >- patch d finalized without changeset message >- patch e finalized without changeset message >- >- $ hg qapplied >- f >- >- $ hg log --template '{rev} {desc}\n' >- 4 [mq]: f >- 3 [mq]: e >- 2 [mq]: d >- 1 [mq]: a >- 0 base >- >- $ cd .. >- >- $ hg init b >- $ cd b >- >- $ echo 'base' > base >- $ hg ci -Ambase -d '1 0' >- adding base >- >- $ hg qfinish >- abort: no revisions specified >- [255] >- >- $ hg qfinish -a >- no patches applied >- >- $ hg qnew -d '1 0' a >- $ hg qnew -d '1 0' b >- $ hg qnew c # XXX fails to apply by /usr/bin/patch if we put a date >- >- $ hg qfinish 0 >- abort: revision 0 is not managed >- [255] >- >- $ hg qfinish b >- abort: cannot delete revision 2 above applied patches >- [255] >- >- $ hg qpop >- popping c >- now at: b >- >- $ hg qfinish -a c >- abort: unknown revision 'c'! >- [255] >- >- $ hg qpush >- applying c >- patch c is empty >- now at: c >- >- $ hg qfinish qbase:b >- patch a finalized without changeset message >- patch b finalized without changeset message >- >- $ hg qapplied >- c >- >- $ hg log --template '{rev} {desc}\n' >- 3 imported patch c >- 2 [mq]: b >- 1 [mq]: a >- 0 base >- >- $ hg qfinish -a c >- patch c finalized without changeset message >- >- $ hg qapplied >- >- $ hg log --template '{rev} {desc}\n' >- 3 imported patch c >- 2 [mq]: b >- 1 [mq]: a >- 0 base >- >- $ ls .hg/patches >- series >- status >- >-qdel -k X && hg qimp -e X used to trigger spurious output with versioned queues >- >- $ hg init --mq >- $ hg qimport -r 3 >- $ hg qpop >- popping 3.diff >- patch queue now empty >- $ hg qdel -k 3.diff >- $ hg qimp -e 3.diff >- adding 3.diff to series file >- $ hg qfinish -a >- no patches applied >!. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-qrefresh.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-qrefresh.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-qrefresh.t.err >@@ -1,489 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ echo "[extensions]" >> $HGRCPATH >- $ echo "mq=" >> $HGRCPATH >- $ echo "[diff]" >> $HGRCPATH >- $ echo "nodates=1" >> $HGRCPATH >- >- $ hg init a >- $ cd a >- >- $ mkdir 1 2 >- $ echo 'base' > 1/base >- $ echo 'base' > 2/base >- $ hg ci -Ambase >- adding 1/base >- adding 2/base >- >- $ hg qnew -mmqbase mqbase >- >- $ echo 'patched' > 1/base >- $ echo 'patched' > 2/base >- $ hg qrefresh >- >- $ hg qdiff >- diff -r e7af5904b465 1/base >- --- a/1/base >- +++ b/1/base >- @@ -1,1 +1,1 @@ >- -base >- +patched >- diff -r e7af5904b465 2/base >- --- a/2/base >- +++ b/2/base >- @@ -1,1 +1,1 @@ >- -base >- +patched >- >- $ hg qdiff . >- diff -r e7af5904b465 1/base >- --- a/1/base >- +++ b/1/base >- @@ -1,1 +1,1 @@ >- -base >- +patched >- diff -r e7af5904b465 2/base >- --- a/2/base >- +++ b/2/base >- @@ -1,1 +1,1 @@ >- -base >- +patched >- >- $ cat .hg/patches/mqbase >- # HG changeset patch >- # Parent e7af5904b465cd1f4f3cf6b26fe14e8db6f63eaa >- mqbase >- >- diff -r e7af5904b465 1/base >- --- a/1/base >- +++ b/1/base >- @@ -1,1 +1,1 @@ >- -base >- +patched >- diff -r e7af5904b465 2/base >- --- a/2/base >- +++ b/2/base >- @@ -1,1 +1,1 @@ >- -base >- +patched >- >- $ echo 'patched again' > base >- $ hg qrefresh 1 >- >- $ hg qdiff >- diff -r e7af5904b465 1/base >- --- a/1/base >- +++ b/1/base >- @@ -1,1 +1,1 @@ >- -base >- +patched >- diff -r e7af5904b465 2/base >- --- a/2/base >- +++ b/2/base >- @@ -1,1 +1,1 @@ >- -base >- +patched >- >- $ hg qdiff . >- diff -r e7af5904b465 1/base >- --- a/1/base >- +++ b/1/base >- @@ -1,1 +1,1 @@ >- -base >- +patched >- diff -r e7af5904b465 2/base >- --- a/2/base >- +++ b/2/base >- @@ -1,1 +1,1 @@ >- -base >- +patched >- >- $ cat .hg/patches/mqbase >- # HG changeset patch >- # Parent e7af5904b465cd1f4f3cf6b26fe14e8db6f63eaa >- mqbase >- >- diff -r e7af5904b465 1/base >- --- a/1/base >- +++ b/1/base >- @@ -1,1 +1,1 @@ >- -base >- +patched >- >-qrefresh . in subdir: >- >- $ ( cd 1 ; hg qrefresh . ) >- >- $ hg qdiff >- diff -r e7af5904b465 1/base >- --- a/1/base >- +++ b/1/base >- @@ -1,1 +1,1 @@ >- -base >- +patched >- diff -r e7af5904b465 2/base >- --- a/2/base >- +++ b/2/base >- @@ -1,1 +1,1 @@ >- -base >- +patched >- >- $ hg qdiff . >- diff -r e7af5904b465 1/base >- --- a/1/base >- +++ b/1/base >- @@ -1,1 +1,1 @@ >- -base >- +patched >- diff -r e7af5904b465 2/base >- --- a/2/base >- +++ b/2/base >- @@ -1,1 +1,1 @@ >- -base >- +patched >- >- $ cat .hg/patches/mqbase >- # HG changeset patch >- # Parent e7af5904b465cd1f4f3cf6b26fe14e8db6f63eaa >- mqbase >- >- diff -r e7af5904b465 1/base >- --- a/1/base >- +++ b/1/base >- @@ -1,1 +1,1 @@ >- -base >- +patched >- >-qrefresh in hg-root again: >- >- $ hg qrefresh >- >- $ hg qdiff >- diff -r e7af5904b465 1/base >- --- a/1/base >- +++ b/1/base >- @@ -1,1 +1,1 @@ >- -base >- +patched >- diff -r e7af5904b465 2/base >- --- a/2/base >- +++ b/2/base >- @@ -1,1 +1,1 @@ >- -base >- +patched >- >- $ hg qdiff . >- diff -r e7af5904b465 1/base >- --- a/1/base >- +++ b/1/base >- @@ -1,1 +1,1 @@ >- -base >- +patched >- diff -r e7af5904b465 2/base >- --- a/2/base >- +++ b/2/base >- @@ -1,1 +1,1 @@ >- -base >- +patched >- >- $ cat .hg/patches/mqbase >- # HG changeset patch >- # Parent e7af5904b465cd1f4f3cf6b26fe14e8db6f63eaa >- mqbase >- >- diff -r e7af5904b465 1/base >- --- a/1/base >- +++ b/1/base >- @@ -1,1 +1,1 @@ >- -base >- +patched >- diff -r e7af5904b465 2/base >- --- a/2/base >- +++ b/2/base >- @@ -1,1 +1,1 @@ >- -base >- +patched >- >- >-qrefresh --short tests: >- >- $ echo 'orphan' > orphanchild >- $ hg add orphanchild >- $ hg qrefresh nonexistingfilename # clear patch >- $ hg qrefresh --short 1/base >- $ hg qrefresh --short 2/base >- >- $ hg qdiff >- diff -r e7af5904b465 1/base >- --- a/1/base >- +++ b/1/base >- @@ -1,1 +1,1 @@ >- -base >- +patched >- diff -r e7af5904b465 2/base >- --- a/2/base >- +++ b/2/base >- @@ -1,1 +1,1 @@ >- -base >- +patched >- diff -r e7af5904b465 orphanchild >- --- /dev/null >- +++ b/orphanchild >- @@ -0,0 +1,1 @@ >- +orphan >- >- $ cat .hg/patches/mqbase >- # HG changeset patch >- # Parent e7af5904b465cd1f4f3cf6b26fe14e8db6f63eaa >- mqbase >- >- diff -r e7af5904b465 1/base >- --- a/1/base >- +++ b/1/base >- @@ -1,1 +1,1 @@ >- -base >- +patched >- diff -r e7af5904b465 2/base >- --- a/2/base >- +++ b/2/base >- @@ -1,1 +1,1 @@ >- -base >- +patched >- >- $ hg st >- A orphanchild >- ? base >- >-diff shows what is not in patch: >- >- $ hg diff >- diff -r ???????????? orphanchild (glob) >- --- /dev/null >- +++ b/orphanchild >- @@ -0,0 +1,1 @@ >- +orphan >- >-Before starting exclusive tests: >- >- $ cat .hg/patches/mqbase >- # HG changeset patch >- # Parent e7af5904b465cd1f4f3cf6b26fe14e8db6f63eaa >- mqbase >- >- diff -r e7af5904b465 1/base >- --- a/1/base >- +++ b/1/base >- @@ -1,1 +1,1 @@ >- -base >- +patched >- diff -r e7af5904b465 2/base >- --- a/2/base >- +++ b/2/base >- @@ -1,1 +1,1 @@ >- -base >- +patched >- >-Exclude 2/base: >- >- $ hg qref -s -X 2/base >- >- $ cat .hg/patches/mqbase >- # HG changeset patch >- # Parent e7af5904b465cd1f4f3cf6b26fe14e8db6f63eaa >- mqbase >- >- diff -r e7af5904b465 1/base >- --- a/1/base >- +++ b/1/base >- @@ -1,1 +1,1 @@ >- -base >- +patched >- >-status shows 2/base as dirty: >- >- $ hg status >- M 2/base >- A orphanchild >- ? base >- >-Remove 1/base and add 2/base again but not orphanchild: >- >- $ hg qref -s -X orphanchild -X 1/base 2/base orphanchild >- >- $ cat .hg/patches/mqbase >- # HG changeset patch >- # Parent e7af5904b465cd1f4f3cf6b26fe14e8db6f63eaa >- mqbase >- >- diff -r e7af5904b465 2/base >- --- a/2/base >- +++ b/2/base >- @@ -1,1 +1,1 @@ >- -base >- +patched >- >-Add 1/base with include filter - and thus remove 2/base from patch: >- >- $ hg qref -s -I 1/ o* */* >- >- $ cat .hg/patches/mqbase >- # HG changeset patch >- # Parent e7af5904b465cd1f4f3cf6b26fe14e8db6f63eaa >- mqbase >- >- diff -r e7af5904b465 1/base >- --- a/1/base >- +++ b/1/base >- @@ -1,1 +1,1 @@ >- -base >- +patched >- >- $ cd .. >- >- >-Test qrefresh --git losing copy metadata: >- >- $ hg init repo >- $ cd repo >- >- $ echo "[diff]" >> .hg/hgrc >- $ echo "git=True" >> .hg/hgrc >- $ echo a > a >- >- $ hg ci -Am adda >- adding a >- $ hg copy a ab >- $ echo b >> ab >- $ hg copy a ac >- $ echo c >> ac >- >-Capture changes: >- >- $ hg qnew -f p1 >- >- $ hg qdiff >- diff --git a/a b/ab >- copy from a >- copy to ab >- --- a/a >- +++ b/ab >- @@ -1,1 +1,2 @@ >- a >- +b >- diff --git a/a b/ac >- copy from a >- copy to ac >- --- a/a >- +++ b/ac >- @@ -1,1 +1,2 @@ >- a >- +c >- >-Refresh and check changes again: >- >- $ hg qrefresh >- >- $ hg qdiff >- diff --git a/a b/ab >- copy from a >- copy to ab >- --- a/a >- +++ b/ab >- @@ -1,1 +1,2 @@ >- a >- +b >- diff --git a/a b/ac >- copy from a >- copy to ac >- --- a/a >- +++ b/ac >- @@ -1,1 +1,2 @@ >- a >- +c >- >- $ cd .. >- >- >-Issue1441: qrefresh confused after hg rename: >- >- $ hg init repo-1441 >- $ cd repo-1441 >- $ echo a > a >- $ hg add a >- $ hg qnew -f p >- $ hg mv a b >- $ hg qrefresh >- >- $ hg qdiff >- diff -r 000000000000 b >- --- /dev/null >- +++ b/b >- @@ -0,0 +1,1 @@ >- +a >- >- $ cd .. >- >- >-Issue2025: qrefresh does not honor filtering options when tip != >-qtip: >- >- $ hg init repo-2025 >- $ cd repo-2025 >- $ echo a > a >- $ echo b > b >- $ hg ci -qAm addab >- $ echo a >> a >- $ echo b >> b >- $ hg qnew -f patch >- $ hg up -qC 0 >- $ echo c > c >- $ hg ci -qAm addc >- $ hg up -qC 1 >- >-refresh with tip != qtip: >- >- $ hg --config diff.nodates=1 qrefresh -I b >- >- $ hg st >- M a >- >- $ cat b >- b >- b >- >- $ cat .hg/patches/patch >- # HG changeset patch >- # Parent 1a60229be7ac3e4a7f647508e99b87bef1f03593 >- >- diff -r 1a60229be7ac b >- --- a/b >- +++ b/b >- @@ -1,1 +1,2 @@ >- b >- +b >- >- $ cd .. >- >- >-Issue1441 with git patches: >- >- $ hg init repo-1441-git >- $ cd repo-1441-git >- >- $ echo "[diff]" >> .hg/hgrc >- $ echo "git=True" >> .hg/hgrc >- >- $ echo a > a >- $ hg add a >- $ hg qnew -f p >- $ hg mv a b >- $ hg qrefresh >- >- $ hg qdiff --nodates >- diff --git a/b b/b >- new file mode 100644 >- --- /dev/null >- +++ b/b >- @@ -0,0 +1,1 @@ >- +a >- >- $ cd .. >- >!.. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-patchbomb.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-patchbomb.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-patchbomb.t.err >@@ -1,3 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ fixheaders() > > { > > sed -e 's/\(Message-Id:.*@\).*/\1/' \ >@@ -6,2148 +8,3 @@ > > -e 's/\(User-Agent:.*\)\/.*/\1/' \ > > -e 's/===.*/===/' > > } >- $ echo "[extensions]" >> $HGRCPATH >- $ echo "patchbomb=" >> $HGRCPATH >- >- $ hg init t >- $ cd t >- $ echo a > a >- $ hg commit -Ama -d '1 0' >- adding a >- >- $ hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar -r tip >- This patch series consists of 1 patches. >- >- >- Displaying [PATCH] a ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Subject: [PATCH] a >- X-Mercurial-Node: 8580ff50825a50c8f716709acdf8de0deddcd6ab >- Message-Id: <8580ff50825a50c8f716.60@* (glob) >- User-Agent: Mercurial-patchbomb/* (glob) >- Date: Thu, 01 Jan 1970 00:01:00 +0000 >- From: quux >- To: foo >- Cc: bar >- >- # HG changeset patch >- # User test >- # Date 1 0 >- # Node ID 8580ff50825a50c8f716709acdf8de0deddcd6ab >- # Parent 0000000000000000000000000000000000000000 >- a >- >- diff -r 000000000000 -r 8580ff50825a a >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/a Thu Jan 01 00:00:01 1970 +0000 >- @@ -0,0 +1,1 @@ >- +a >- >- >- $ hg --config ui.interactive=1 email --confirm -n -f quux -t foo -c bar -r tip<<EOF >- > n >- > EOF >- This patch series consists of 1 patches. >- >- >- Final summary: >- >- From: quux >- To: foo >- Cc: bar >- Subject: [PATCH] a >- a | 1 + >- 1 files changed, 1 insertions(+), 0 deletions(-) >- >- are you sure you want to send (yn)? abort: patchbomb canceled >- [255] >- >- $ echo b > b >- $ hg commit -Amb -d '2 0' >- adding b >- >- $ hg email --date '1970-1-1 0:2' -n -f quux -t foo -c bar -s test -r 0:tip >- This patch series consists of 2 patches. >- >- >- Write the introductory message for the patch series. >- >- >- Displaying [PATCH 0 of 2] test ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Subject: [PATCH 0 of 2] test >- Message-Id: <patchbomb\.120@[^>]*> (re) >- User-Agent: Mercurial-patchbomb/* (glob) >- Date: Thu, 01 Jan 1970 00:02:00 +0000 >- From: quux >- To: foo >- Cc: bar >- >- >- Displaying [PATCH 1 of 2] a ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Subject: [PATCH 1 of 2] a >- X-Mercurial-Node: 8580ff50825a50c8f716709acdf8de0deddcd6ab >- Message-Id: <8580ff50825a50c8f716\.121@[^>]*> (re) >- In-Reply-To: <patchbomb\.120@[^>]*> (re) >- References: <patchbomb\.120@[^>]*> (re) >- User-Agent: Mercurial-patchbomb/* (glob) >- Date: Thu, 01 Jan 1970 00:02:01 +0000 >- From: quux >- To: foo >- Cc: bar >- >- # HG changeset patch >- # User test >- # Date 1 0 >- # Node ID 8580ff50825a50c8f716709acdf8de0deddcd6ab >- # Parent 0000000000000000000000000000000000000000 >- a >- >- diff -r 000000000000 -r 8580ff50825a a >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/a Thu Jan 01 00:00:01 1970 +0000 >- @@ -0,0 +1,1 @@ >- +a >- >- Displaying [PATCH 2 of 2] b ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Subject: [PATCH 2 of 2] b >- X-Mercurial-Node: 97d72e5f12c7e84f85064aa72e5a297142c36ed9 >- Message-Id: <97d72e5f12c7e84f8506\.122@[^>]*> (re) >- In-Reply-To: <patchbomb\.120@[^>]*> (re) >- References: <patchbomb\.120@[^>]*> (re) >- User-Agent: Mercurial-patchbomb/* (glob) >- Date: Thu, 01 Jan 1970 00:02:02 +0000 >- From: quux >- To: foo >- Cc: bar >- >- # HG changeset patch >- # User test >- # Date 2 0 >- # Node ID 97d72e5f12c7e84f85064aa72e5a297142c36ed9 >- # Parent 8580ff50825a50c8f716709acdf8de0deddcd6ab >- b >- >- diff -r 8580ff50825a -r 97d72e5f12c7 b >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/b Thu Jan 01 00:00:02 1970 +0000 >- @@ -0,0 +1,1 @@ >- +b >- >- >- $ hg email -m test.mbox -f quux -t foo -c bar -s test 0:tip \ >- > --config extensions.progress= --config progress.assume-tty=1 \ >- > --config progress.delay=0 --config progress.refresh=0 >- \rwriting [ ] 0/3\rwriting [ ] 0/3\r \r\r \r\rwriting [====================> ] 1/3\rwriting [====================> ] 1/3\r \r\r \r\rwriting [==========================================> ] 2/3\rwriting [==========================================> ] 2/3\r \rThis patch series consists of 2 patches. >- >- >- Write the introductory message for the patch series. >- >- >- Writing [PATCH 0 of 2] test ... >- Writing [PATCH 1 of 2] a ... >- Writing [PATCH 2 of 2] b ... >- >- $ cd .. >- >- $ hg clone -q t t2 >- $ cd t2 >- $ echo c > c >- $ hg commit -Amc -d '3 0' >- adding c >- >- $ cat > description <<EOF >- > a multiline >- > >- > description >- > EOF >- >- >-test bundle and description: >- $ hg email --date '1970-1-1 0:3' -n -f quux -t foo \ >- > -c bar -s test -r tip -b --desc description | fixheaders >- searching for changes >- 1 changesets found >- >- Displaying test ... >- Content-Type: multipart/mixed; boundary="=== >- MIME-Version: 1.0 >- Subject: test >- Message-Id: <patchbomb.180@ >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:03:00 +0000 >- From: quux >- To: foo >- Cc: bar >- >- --=== >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- >- a multiline >- >- description >- >- --=== >- Content-Type: application/x-mercurial-bundle >- MIME-Version: 1.0 >- Content-Disposition: attachment; filename="bundle.hg" >- Content-Transfer-Encoding: base64 >- >- SEcxMEJaaDkxQVkmU1nvR7I3AAAN////lFYQWj1/4HwRkdC/AywIAk0E4pfoSIIIgQCgGEQOcLAA >- 2tA1VPyp4mkeoG0EaaPU0GTT1GjRiNPIg9CZGBqZ6UbU9J+KFU09DNUaGgAAAAAANAGgAAAAA1U8 >- oGgAADQGgAANNANAAAAAAZipFLz3XoakCEQB3PVPyHJVi1iYkAAKQAZQGpQGZESInRnCFMqLDla2 >- Bx3qfRQeA2N4lnzKkAmP8kR2asievLLXXebVU8Vg4iEBqcJNJAxIapSU6SM4888ZAciRG6MYAIEE >- SlIBpFisgGkyRjX//TMtfcUAEsGu56+YnE1OlTZmzKm8BSu2rvo4rHAYYaadIFFuTy0LYgIkgLVD >- sgVa2F19D1tx9+hgbAygLgQwaIqcDdgA4BjQgIiz/AEP72++llgDKhKducqodGE4B0ETqF3JFOFC >- Q70eyNw= >- --=== >- >-utf-8 patch: >- $ python -c 'fp = open("utf", "wb"); fp.write("h\xC3\xB6mma!\n"); fp.close();' >- $ hg commit -A -d '4 0' -m 'charset=utf-8; content-transfer-encoding: base64' >- adding description >- adding utf >- >-no mime encoding for email --test: >- $ hg email --date '1970-1-1 0:4' -f quux -t foo -c bar -r tip -n | fixheaders > mailtest >- >-md5sum of 8-bit output: >- $ $TESTDIR/md5sum.py mailtest >- e726c29b3008e77994c7572563e57c34 mailtest >- >- $ rm mailtest >- >-mime encoded mbox (base64): >- $ hg email --date '1970-1-1 0:4' -f quux -t foo -c bar -r tip -m mbox >- This patch series consists of 1 patches. >- >- >- Writing [PATCH] charset=utf-8; content-transfer-encoding: base64 ... >- >- $ cat mbox >- From quux Thu Jan 01 00:04:01 1970 >- Content-Type: text/plain; charset="utf-8" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: base64 >- Subject: [PATCH] charset=utf-8; content-transfer-encoding: base64 >- X-Mercurial-Node: c3c9e37db9f4fe4882cda39baf42fed6bad8b15a >- Message-Id: <c3c9e37db9f4fe4882cd.240@* (glob) >- User-Agent: Mercurial-patchbomb/* (glob) >- Date: Thu, 01 Jan 1970 00:04:00 +0000 >- From: quux >- To: foo >- Cc: bar >- >- IyBIRyBjaGFuZ2VzZXQgcGF0Y2gKIyBVc2VyIHRlc3QKIyBEYXRlIDQgMAojIE5vZGUgSUQgYzNj >- OWUzN2RiOWY0ZmU0ODgyY2RhMzliYWY0MmZlZDZiYWQ4YjE1YQojIFBhcmVudCAgZmYyYzlmYTIw >- MThiMTVmYTc0YjMzMzYzYmRhOTUyNzMyM2UyYTk5ZgpjaGFyc2V0PXV0Zi04OyBjb250ZW50LXRy >- YW5zZmVyLWVuY29kaW5nOiBiYXNlNjQKCmRpZmYgLXIgZmYyYzlmYTIwMThiIC1yIGMzYzllMzdk >- YjlmNCBkZXNjcmlwdGlvbgotLS0gL2Rldi9udWxsCVRodSBKYW4gMDEgMDA6MDA6MDAgMTk3MCAr >- MDAwMAorKysgYi9kZXNjcmlwdGlvbglUaHUgSmFuIDAxIDAwOjAwOjA0IDE5NzAgKzAwMDAKQEAg >- LTAsMCArMSwzIEBACithIG11bHRpbGluZQorCitkZXNjcmlwdGlvbgpkaWZmIC1yIGZmMmM5ZmEy >- MDE4YiAtciBjM2M5ZTM3ZGI5ZjQgdXRmCi0tLSAvZGV2L251bGwJVGh1IEphbiAwMSAwMDowMDow >- MCAxOTcwICswMDAwCisrKyBiL3V0ZglUaHUgSmFuIDAxIDAwOjAwOjA0IDE5NzAgKzAwMDAKQEAg >- LTAsMCArMSwxIEBACitow7ZtbWEhCg== >- >- >- $ rm mbox >- >-mime encoded mbox (quoted-printable): >- $ python -c 'fp = open("qp", "wb"); fp.write("%s\nfoo\n\nbar\n" % ("x" * 1024)); fp.close();' >- $ hg commit -A -d '4 0' -m 'charset=utf-8; content-transfer-encoding: quoted-printable' >- adding qp >- >-no mime encoding for email --test: >- $ hg email --date '1970-1-1 0:4' -f quux -t foo -c bar -r tip -n | \ >- > fixheaders > mailtest >-md5sum of qp output: >- $ $TESTDIR/md5sum.py mailtest >- 0402c7d033e04044e423bb04816f9dae mailtest >- $ rm mailtest >- >-mime encoded mbox (quoted-printable): >- $ hg email --date '1970-1-1 0:4' -f quux -t foo -c bar -r tip -m mbox >- This patch series consists of 1 patches. >- >- >- Writing [PATCH] charset=utf-8; content-transfer-encoding: quoted-printable ... >- $ cat mbox | fixheaders >- From quux Thu Jan 01 00:04:01 1970 >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: quoted-printable >- Subject: [PATCH] charset=utf-8; content-transfer-encoding: quoted-printable >- X-Mercurial-Node: c655633f8c87700bb38cc6a59a2753bdc5a6c376 >- Message-Id: <c655633f8c87700bb38c.240@ >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:04:00 +0000 >- From: quux >- To: foo >- Cc: bar >- >- # HG changeset patch >- # User test >- # Date 4 0 >- # Node ID c655633f8c87700bb38cc6a59a2753bdc5a6c376 >- # Parent c3c9e37db9f4fe4882cda39baf42fed6bad8b15a >- charset=3Dutf-8; content-transfer-encoding: quoted-printable >- >- diff -r c3c9e37db9f4 -r c655633f8c87 qp >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/qp Thu Jan 01 00:00:04 1970 +0000 >- @@ -0,0 +1,4 @@ >- +xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx >- +foo >- + >- +bar >- >- >- >- $ rm mbox >- >-iso-8859-1 patch: >- $ python -c 'fp = open("isolatin", "wb"); fp.write("h\xF6mma!\n"); fp.close();' >- $ hg commit -A -d '5 0' -m 'charset=us-ascii; content-transfer-encoding: 8bit' >- adding isolatin >- >-fake ascii mbox: >- $ hg email --date '1970-1-1 0:5' -f quux -t foo -c bar -r tip -m mbox >- This patch series consists of 1 patches. >- >- >- Writing [PATCH] charset=us-ascii; content-transfer-encoding: 8bit ... >- $ fixheaders < mbox > mboxfix >- >-md5sum of 8-bit output: >- $ $TESTDIR/md5sum.py mboxfix >- 9ea043d8fc43a71045114508baed144b mboxfix >- >-test diffstat for single patch: >- $ hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar -s test -d -y -r 2 | \ >- > fixheaders >- This patch series consists of 1 patches. >- >- >- Final summary: >- >- From: quux >- To: foo >- Cc: bar >- Subject: [PATCH] test >- c | 1 + >- 1 files changed, 1 insertions(+), 0 deletions(-) >- >- are you sure you want to send (yn)? y >- >- Displaying [PATCH] test ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Subject: [PATCH] test >- X-Mercurial-Node: ff2c9fa2018b15fa74b33363bda9527323e2a99f >- Message-Id: <ff2c9fa2018b15fa74b3.60@ >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:01:00 +0000 >- From: quux >- To: foo >- Cc: bar >- >- c | 1 + >- 1 files changed, 1 insertions(+), 0 deletions(-) >- >- >- # HG changeset patch >- # User test >- # Date 3 0 >- # Node ID ff2c9fa2018b15fa74b33363bda9527323e2a99f >- # Parent 97d72e5f12c7e84f85064aa72e5a297142c36ed9 >- c >- >- diff -r 97d72e5f12c7 -r ff2c9fa2018b c >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/c Thu Jan 01 00:00:03 1970 +0000 >- @@ -0,0 +1,1 @@ >- +c >- >- >-test diffstat for multiple patches: >- $ hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar -s test -d -y \ >- > -r 0:1 | fixheaders >- This patch series consists of 2 patches. >- >- >- Write the introductory message for the patch series. >- >- >- Final summary: >- >- From: quux >- To: foo >- Cc: bar >- Subject: [PATCH 0 of 2] test >- a | 1 + >- b | 1 + >- 2 files changed, 2 insertions(+), 0 deletions(-) >- Subject: [PATCH 1 of 2] a >- a | 1 + >- 1 files changed, 1 insertions(+), 0 deletions(-) >- Subject: [PATCH 2 of 2] b >- b | 1 + >- 1 files changed, 1 insertions(+), 0 deletions(-) >- >- are you sure you want to send (yn)? y >- >- Displaying [PATCH 0 of 2] test ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Subject: [PATCH 0 of 2] test >- Message-Id: <patchbomb.60@ >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:01:00 +0000 >- From: quux >- To: foo >- Cc: bar >- >- >- a | 1 + >- b | 1 + >- 2 files changed, 2 insertions(+), 0 deletions(-) >- >- Displaying [PATCH 1 of 2] a ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Subject: [PATCH 1 of 2] a >- X-Mercurial-Node: 8580ff50825a50c8f716709acdf8de0deddcd6ab >- Message-Id: <8580ff50825a50c8f716.61@ >- In-Reply-To: <patchbomb.60@ >- References: <patchbomb.60@ >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:01:01 +0000 >- From: quux >- To: foo >- Cc: bar >- >- a | 1 + >- 1 files changed, 1 insertions(+), 0 deletions(-) >- >- >- # HG changeset patch >- # User test >- # Date 1 0 >- # Node ID 8580ff50825a50c8f716709acdf8de0deddcd6ab >- # Parent 0000000000000000000000000000000000000000 >- a >- >- diff -r 000000000000 -r 8580ff50825a a >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/a Thu Jan 01 00:00:01 1970 +0000 >- @@ -0,0 +1,1 @@ >- +a >- >- Displaying [PATCH 2 of 2] b ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Subject: [PATCH 2 of 2] b >- X-Mercurial-Node: 97d72e5f12c7e84f85064aa72e5a297142c36ed9 >- Message-Id: <97d72e5f12c7e84f8506.62@ >- In-Reply-To: <patchbomb.60@ >- References: <patchbomb.60@ >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:01:02 +0000 >- From: quux >- To: foo >- Cc: bar >- >- b | 1 + >- 1 files changed, 1 insertions(+), 0 deletions(-) >- >- >- # HG changeset patch >- # User test >- # Date 2 0 >- # Node ID 97d72e5f12c7e84f85064aa72e5a297142c36ed9 >- # Parent 8580ff50825a50c8f716709acdf8de0deddcd6ab >- b >- >- diff -r 8580ff50825a -r 97d72e5f12c7 b >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/b Thu Jan 01 00:00:02 1970 +0000 >- @@ -0,0 +1,1 @@ >- +b >- >- >-test inline for single patch: >- $ hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar -s test -i -r 2 | \ >- > fixheaders >- This patch series consists of 1 patches. >- >- >- Displaying [PATCH] test ... >- Content-Type: multipart/mixed; boundary="=== >- MIME-Version: 1.0 >- Subject: [PATCH] test >- X-Mercurial-Node: ff2c9fa2018b15fa74b33363bda9527323e2a99f >- Message-Id: <ff2c9fa2018b15fa74b3.60@ >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:01:00 +0000 >- From: quux >- To: foo >- Cc: bar >- >- --=== >- Content-Type: text/x-patch; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Content-Disposition: inline; filename=t2.patch >- >- # HG changeset patch >- # User test >- # Date 3 0 >- # Node ID ff2c9fa2018b15fa74b33363bda9527323e2a99f >- # Parent 97d72e5f12c7e84f85064aa72e5a297142c36ed9 >- c >- >- diff -r 97d72e5f12c7 -r ff2c9fa2018b c >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/c Thu Jan 01 00:00:03 1970 +0000 >- @@ -0,0 +1,1 @@ >- +c >- >- --=== >- >- >-test inline for single patch (quoted-printable): >- $ hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar -s test -i -r 4 | \ >- > fixheaders >- This patch series consists of 1 patches. >- >- >- Displaying [PATCH] test ... >- Content-Type: multipart/mixed; boundary="=== >- MIME-Version: 1.0 >- Subject: [PATCH] test >- X-Mercurial-Node: c655633f8c87700bb38cc6a59a2753bdc5a6c376 >- Message-Id: <c655633f8c87700bb38c.60@ >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:01:00 +0000 >- From: quux >- To: foo >- Cc: bar >- >- --=== >- Content-Type: text/x-patch; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: quoted-printable >- Content-Disposition: inline; filename=t2.patch >- >- # HG changeset patch >- # User test >- # Date 4 0 >- # Node ID c655633f8c87700bb38cc6a59a2753bdc5a6c376 >- # Parent c3c9e37db9f4fe4882cda39baf42fed6bad8b15a >- charset=3Dutf-8; content-transfer-encoding: quoted-printable >- >- diff -r c3c9e37db9f4 -r c655633f8c87 qp >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/qp Thu Jan 01 00:00:04 1970 +0000 >- @@ -0,0 +1,4 @@ >- +xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx >- +foo >- + >- +bar >- >- --=== >- >-test inline for multiple patches: >- $ hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar -s test -i \ >- > -r 0:1 -r 4 | fixheaders >- This patch series consists of 3 patches. >- >- >- Write the introductory message for the patch series. >- >- >- Displaying [PATCH 0 of 3] test ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Subject: [PATCH 0 of 3] test >- Message-Id: <patchbomb.60@ >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:01:00 +0000 >- From: quux >- To: foo >- Cc: bar >- >- >- Displaying [PATCH 1 of 3] a ... >- Content-Type: multipart/mixed; boundary="=== >- MIME-Version: 1.0 >- Subject: [PATCH 1 of 3] a >- X-Mercurial-Node: 8580ff50825a50c8f716709acdf8de0deddcd6ab >- Message-Id: <8580ff50825a50c8f716.61@ >- In-Reply-To: <patchbomb.60@ >- References: <patchbomb.60@ >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:01:01 +0000 >- From: quux >- To: foo >- Cc: bar >- >- --=== >- Content-Type: text/x-patch; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Content-Disposition: inline; filename=t2-1.patch >- >- # HG changeset patch >- # User test >- # Date 1 0 >- # Node ID 8580ff50825a50c8f716709acdf8de0deddcd6ab >- # Parent 0000000000000000000000000000000000000000 >- a >- >- diff -r 000000000000 -r 8580ff50825a a >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/a Thu Jan 01 00:00:01 1970 +0000 >- @@ -0,0 +1,1 @@ >- +a >- >- --=== >- Displaying [PATCH 2 of 3] b ... >- Content-Type: multipart/mixed; boundary="=== >- MIME-Version: 1.0 >- Subject: [PATCH 2 of 3] b >- X-Mercurial-Node: 97d72e5f12c7e84f85064aa72e5a297142c36ed9 >- Message-Id: <97d72e5f12c7e84f8506.62@ >- In-Reply-To: <patchbomb.60@ >- References: <patchbomb.60@ >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:01:02 +0000 >- From: quux >- To: foo >- Cc: bar >- >- --=== >- Content-Type: text/x-patch; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Content-Disposition: inline; filename=t2-2.patch >- >- # HG changeset patch >- # User test >- # Date 2 0 >- # Node ID 97d72e5f12c7e84f85064aa72e5a297142c36ed9 >- # Parent 8580ff50825a50c8f716709acdf8de0deddcd6ab >- b >- >- diff -r 8580ff50825a -r 97d72e5f12c7 b >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/b Thu Jan 01 00:00:02 1970 +0000 >- @@ -0,0 +1,1 @@ >- +b >- >- --=== >- Displaying [PATCH 3 of 3] charset=utf-8; content-transfer-encoding: quoted-printable ... >- Content-Type: multipart/mixed; boundary="=== >- MIME-Version: 1.0 >- Subject: [PATCH 3 of 3] charset=utf-8; >- content-transfer-encoding: quoted-printable >- X-Mercurial-Node: c655633f8c87700bb38cc6a59a2753bdc5a6c376 >- Message-Id: <c655633f8c87700bb38c.63@ >- In-Reply-To: <patchbomb.60@ >- References: <patchbomb.60@ >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:01:03 +0000 >- From: quux >- To: foo >- Cc: bar >- >- --=== >- Content-Type: text/x-patch; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: quoted-printable >- Content-Disposition: inline; filename=t2-3.patch >- >- # HG changeset patch >- # User test >- # Date 4 0 >- # Node ID c655633f8c87700bb38cc6a59a2753bdc5a6c376 >- # Parent c3c9e37db9f4fe4882cda39baf42fed6bad8b15a >- charset=3Dutf-8; content-transfer-encoding: quoted-printable >- >- diff -r c3c9e37db9f4 -r c655633f8c87 qp >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/qp Thu Jan 01 00:00:04 1970 +0000 >- @@ -0,0 +1,4 @@ >- +xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx >- +foo >- + >- +bar >- >- --=== >- >-test attach for single patch: >- $ hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar -s test -a -r 2 | \ >- > fixheaders >- This patch series consists of 1 patches. >- >- >- Displaying [PATCH] test ... >- Content-Type: multipart/mixed; boundary="=== >- MIME-Version: 1.0 >- Subject: [PATCH] test >- X-Mercurial-Node: ff2c9fa2018b15fa74b33363bda9527323e2a99f >- Message-Id: <ff2c9fa2018b15fa74b3.60@ >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:01:00 +0000 >- From: quux >- To: foo >- Cc: bar >- >- --=== >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- >- Patch subject is complete summary. >- >- >- >- --=== >- Content-Type: text/x-patch; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Content-Disposition: attachment; filename=t2.patch >- >- # HG changeset patch >- # User test >- # Date 3 0 >- # Node ID ff2c9fa2018b15fa74b33363bda9527323e2a99f >- # Parent 97d72e5f12c7e84f85064aa72e5a297142c36ed9 >- c >- >- diff -r 97d72e5f12c7 -r ff2c9fa2018b c >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/c Thu Jan 01 00:00:03 1970 +0000 >- @@ -0,0 +1,1 @@ >- +c >- >- --=== >- >-test attach for single patch (quoted-printable): >- $ hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar -s test -a -r 4 | \ >- > fixheaders >- This patch series consists of 1 patches. >- >- >- Displaying [PATCH] test ... >- Content-Type: multipart/mixed; boundary="=== >- MIME-Version: 1.0 >- Subject: [PATCH] test >- X-Mercurial-Node: c655633f8c87700bb38cc6a59a2753bdc5a6c376 >- Message-Id: <c655633f8c87700bb38c.60@ >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:01:00 +0000 >- From: quux >- To: foo >- Cc: bar >- >- --=== >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- >- Patch subject is complete summary. >- >- >- >- --=== >- Content-Type: text/x-patch; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: quoted-printable >- Content-Disposition: attachment; filename=t2.patch >- >- # HG changeset patch >- # User test >- # Date 4 0 >- # Node ID c655633f8c87700bb38cc6a59a2753bdc5a6c376 >- # Parent c3c9e37db9f4fe4882cda39baf42fed6bad8b15a >- charset=3Dutf-8; content-transfer-encoding: quoted-printable >- >- diff -r c3c9e37db9f4 -r c655633f8c87 qp >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/qp Thu Jan 01 00:00:04 1970 +0000 >- @@ -0,0 +1,4 @@ >- +xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx >- +foo >- + >- +bar >- >- --=== >- >-test attach for multiple patches: >- $ hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar -s test -a \ >- > -r 0:1 -r 4 | fixheaders >- This patch series consists of 3 patches. >- >- >- Write the introductory message for the patch series. >- >- >- Displaying [PATCH 0 of 3] test ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Subject: [PATCH 0 of 3] test >- Message-Id: <patchbomb.60@ >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:01:00 +0000 >- From: quux >- To: foo >- Cc: bar >- >- >- Displaying [PATCH 1 of 3] a ... >- Content-Type: multipart/mixed; boundary="=== >- MIME-Version: 1.0 >- Subject: [PATCH 1 of 3] a >- X-Mercurial-Node: 8580ff50825a50c8f716709acdf8de0deddcd6ab >- Message-Id: <8580ff50825a50c8f716.61@ >- In-Reply-To: <patchbomb.60@ >- References: <patchbomb.60@ >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:01:01 +0000 >- From: quux >- To: foo >- Cc: bar >- >- --=== >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- >- Patch subject is complete summary. >- >- >- >- --=== >- Content-Type: text/x-patch; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Content-Disposition: attachment; filename=t2-1.patch >- >- # HG changeset patch >- # User test >- # Date 1 0 >- # Node ID 8580ff50825a50c8f716709acdf8de0deddcd6ab >- # Parent 0000000000000000000000000000000000000000 >- a >- >- diff -r 000000000000 -r 8580ff50825a a >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/a Thu Jan 01 00:00:01 1970 +0000 >- @@ -0,0 +1,1 @@ >- +a >- >- --=== >- Displaying [PATCH 2 of 3] b ... >- Content-Type: multipart/mixed; boundary="=== >- MIME-Version: 1.0 >- Subject: [PATCH 2 of 3] b >- X-Mercurial-Node: 97d72e5f12c7e84f85064aa72e5a297142c36ed9 >- Message-Id: <97d72e5f12c7e84f8506.62@ >- In-Reply-To: <patchbomb.60@ >- References: <patchbomb.60@ >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:01:02 +0000 >- From: quux >- To: foo >- Cc: bar >- >- --=== >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- >- Patch subject is complete summary. >- >- >- >- --=== >- Content-Type: text/x-patch; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Content-Disposition: attachment; filename=t2-2.patch >- >- # HG changeset patch >- # User test >- # Date 2 0 >- # Node ID 97d72e5f12c7e84f85064aa72e5a297142c36ed9 >- # Parent 8580ff50825a50c8f716709acdf8de0deddcd6ab >- b >- >- diff -r 8580ff50825a -r 97d72e5f12c7 b >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/b Thu Jan 01 00:00:02 1970 +0000 >- @@ -0,0 +1,1 @@ >- +b >- >- --=== >- Displaying [PATCH 3 of 3] charset=utf-8; content-transfer-encoding: quoted-printable ... >- Content-Type: multipart/mixed; boundary="=== >- MIME-Version: 1.0 >- Subject: [PATCH 3 of 3] charset=utf-8; >- content-transfer-encoding: quoted-printable >- X-Mercurial-Node: c655633f8c87700bb38cc6a59a2753bdc5a6c376 >- Message-Id: <c655633f8c87700bb38c.63@ >- In-Reply-To: <patchbomb.60@ >- References: <patchbomb.60@ >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:01:03 +0000 >- From: quux >- To: foo >- Cc: bar >- >- --=== >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- >- Patch subject is complete summary. >- >- >- >- --=== >- Content-Type: text/x-patch; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: quoted-printable >- Content-Disposition: attachment; filename=t2-3.patch >- >- # HG changeset patch >- # User test >- # Date 4 0 >- # Node ID c655633f8c87700bb38cc6a59a2753bdc5a6c376 >- # Parent c3c9e37db9f4fe4882cda39baf42fed6bad8b15a >- charset=3Dutf-8; content-transfer-encoding: quoted-printable >- >- diff -r c3c9e37db9f4 -r c655633f8c87 qp >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/qp Thu Jan 01 00:00:04 1970 +0000 >- @@ -0,0 +1,4 @@ >- +xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx >- +foo >- + >- +bar >- >- --=== >- >-test intro for single patch: >- $ hg email --date '1970-1-1 0:1' -n --intro -f quux -t foo -c bar -s test \ >- > -r 2 | fixheaders >- This patch series consists of 1 patches. >- >- >- Write the introductory message for the patch series. >- >- >- Displaying [PATCH 0 of 1] test ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Subject: [PATCH 0 of 1] test >- Message-Id: <patchbomb.60@ >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:01:00 +0000 >- From: quux >- To: foo >- Cc: bar >- >- >- Displaying [PATCH 1 of 1] c ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Subject: [PATCH 1 of 1] c >- X-Mercurial-Node: ff2c9fa2018b15fa74b33363bda9527323e2a99f >- Message-Id: <ff2c9fa2018b15fa74b3.61@ >- In-Reply-To: <patchbomb.60@ >- References: <patchbomb.60@ >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:01:01 +0000 >- From: quux >- To: foo >- Cc: bar >- >- # HG changeset patch >- # User test >- # Date 3 0 >- # Node ID ff2c9fa2018b15fa74b33363bda9527323e2a99f >- # Parent 97d72e5f12c7e84f85064aa72e5a297142c36ed9 >- c >- >- diff -r 97d72e5f12c7 -r ff2c9fa2018b c >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/c Thu Jan 01 00:00:03 1970 +0000 >- @@ -0,0 +1,1 @@ >- +c >- >- >-test --desc without --intro for a single patch: >- $ echo foo > intro.text >- $ hg email --date '1970-1-1 0:1' -n --desc intro.text -f quux -t foo -c bar \ >- > -s test -r 2 | fixheaders >- This patch series consists of 1 patches. >- >- >- Displaying [PATCH 0 of 1] test ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Subject: [PATCH 0 of 1] test >- Message-Id: <patchbomb.60@ >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:01:00 +0000 >- From: quux >- To: foo >- Cc: bar >- >- foo >- >- Displaying [PATCH 1 of 1] c ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Subject: [PATCH 1 of 1] c >- X-Mercurial-Node: ff2c9fa2018b15fa74b33363bda9527323e2a99f >- Message-Id: <ff2c9fa2018b15fa74b3.61@ >- In-Reply-To: <patchbomb.60@ >- References: <patchbomb.60@ >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:01:01 +0000 >- From: quux >- To: foo >- Cc: bar >- >- # HG changeset patch >- # User test >- # Date 3 0 >- # Node ID ff2c9fa2018b15fa74b33363bda9527323e2a99f >- # Parent 97d72e5f12c7e84f85064aa72e5a297142c36ed9 >- c >- >- diff -r 97d72e5f12c7 -r ff2c9fa2018b c >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/c Thu Jan 01 00:00:03 1970 +0000 >- @@ -0,0 +1,1 @@ >- +c >- >- >-test intro for multiple patches: >- $ hg email --date '1970-1-1 0:1' -n --intro -f quux -t foo -c bar -s test \ >- > -r 0:1 | fixheaders >- This patch series consists of 2 patches. >- >- >- Write the introductory message for the patch series. >- >- >- Displaying [PATCH 0 of 2] test ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Subject: [PATCH 0 of 2] test >- Message-Id: <patchbomb.60@ >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:01:00 +0000 >- From: quux >- To: foo >- Cc: bar >- >- >- Displaying [PATCH 1 of 2] a ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Subject: [PATCH 1 of 2] a >- X-Mercurial-Node: 8580ff50825a50c8f716709acdf8de0deddcd6ab >- Message-Id: <8580ff50825a50c8f716.61@ >- In-Reply-To: <patchbomb.60@ >- References: <patchbomb.60@ >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:01:01 +0000 >- From: quux >- To: foo >- Cc: bar >- >- # HG changeset patch >- # User test >- # Date 1 0 >- # Node ID 8580ff50825a50c8f716709acdf8de0deddcd6ab >- # Parent 0000000000000000000000000000000000000000 >- a >- >- diff -r 000000000000 -r 8580ff50825a a >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/a Thu Jan 01 00:00:01 1970 +0000 >- @@ -0,0 +1,1 @@ >- +a >- >- Displaying [PATCH 2 of 2] b ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Subject: [PATCH 2 of 2] b >- X-Mercurial-Node: 97d72e5f12c7e84f85064aa72e5a297142c36ed9 >- Message-Id: <97d72e5f12c7e84f8506.62@ >- In-Reply-To: <patchbomb.60@ >- References: <patchbomb.60@ >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:01:02 +0000 >- From: quux >- To: foo >- Cc: bar >- >- # HG changeset patch >- # User test >- # Date 2 0 >- # Node ID 97d72e5f12c7e84f85064aa72e5a297142c36ed9 >- # Parent 8580ff50825a50c8f716709acdf8de0deddcd6ab >- b >- >- diff -r 8580ff50825a -r 97d72e5f12c7 b >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/b Thu Jan 01 00:00:02 1970 +0000 >- @@ -0,0 +1,1 @@ >- +b >- >- >-test reply-to via config: >- $ hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar -s test -r 2 \ >- > --config patchbomb.reply-to='baz@example.com' | fixheaders >- This patch series consists of 1 patches. >- >- >- Displaying [PATCH] test ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Subject: [PATCH] test >- X-Mercurial-Node: ff2c9fa2018b15fa74b33363bda9527323e2a99f >- Message-Id: <ff2c9fa2018b15fa74b3.60@ >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:01:00 +0000 >- From: quux >- To: foo >- Cc: bar >- Reply-To: baz@example.com >- >- # HG changeset patch >- # User test >- # Date 3 0 >- # Node ID ff2c9fa2018b15fa74b33363bda9527323e2a99f >- # Parent 97d72e5f12c7e84f85064aa72e5a297142c36ed9 >- c >- >- diff -r 97d72e5f12c7 -r ff2c9fa2018b c >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/c Thu Jan 01 00:00:03 1970 +0000 >- @@ -0,0 +1,1 @@ >- +c >- >- >-test reply-to via command line: >- $ hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar -s test -r 2 \ >- > --reply-to baz --reply-to fred | fixheaders >- This patch series consists of 1 patches. >- >- >- Displaying [PATCH] test ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Subject: [PATCH] test >- X-Mercurial-Node: ff2c9fa2018b15fa74b33363bda9527323e2a99f >- Message-Id: <ff2c9fa2018b15fa74b3.60@ >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:01:00 +0000 >- From: quux >- To: foo >- Cc: bar >- Reply-To: baz, fred >- >- # HG changeset patch >- # User test >- # Date 3 0 >- # Node ID ff2c9fa2018b15fa74b33363bda9527323e2a99f >- # Parent 97d72e5f12c7e84f85064aa72e5a297142c36ed9 >- c >- >- diff -r 97d72e5f12c7 -r ff2c9fa2018b c >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/c Thu Jan 01 00:00:03 1970 +0000 >- @@ -0,0 +1,1 @@ >- +c >- >- >-tagging csets: >- $ hg tag -r0 zero zero.foo >- $ hg tag -r1 one one.patch >- $ hg tag -r2 two two.diff >- >-test inline for single named patch: >- $ hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar -s test -i -r 2 | \ >- > fixheaders >- This patch series consists of 1 patches. >- >- >- Displaying [PATCH] test ... >- Content-Type: multipart/mixed; boundary="=== >- MIME-Version: 1.0 >- Subject: [PATCH] test >- X-Mercurial-Node: ff2c9fa2018b15fa74b33363bda9527323e2a99f >- Message-Id: <ff2c9fa2018b15fa74b3.60@ >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:01:00 +0000 >- From: quux >- To: foo >- Cc: bar >- >- --=== >- Content-Type: text/x-patch; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Content-Disposition: inline; filename=two.diff >- >- # HG changeset patch >- # User test >- # Date 3 0 >- # Node ID ff2c9fa2018b15fa74b33363bda9527323e2a99f >- # Parent 97d72e5f12c7e84f85064aa72e5a297142c36ed9 >- c >- >- diff -r 97d72e5f12c7 -r ff2c9fa2018b c >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/c Thu Jan 01 00:00:03 1970 +0000 >- @@ -0,0 +1,1 @@ >- +c >- >- --=== >- >-test inline for multiple named/unnamed patches: >- $ hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar -s test -i -r 0:1 | \ >- > fixheaders >- This patch series consists of 2 patches. >- >- >- Write the introductory message for the patch series. >- >- >- Displaying [PATCH 0 of 2] test ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Subject: [PATCH 0 of 2] test >- Message-Id: <patchbomb.60@ >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:01:00 +0000 >- From: quux >- To: foo >- Cc: bar >- >- >- Displaying [PATCH 1 of 2] a ... >- Content-Type: multipart/mixed; boundary="=== >- MIME-Version: 1.0 >- Subject: [PATCH 1 of 2] a >- X-Mercurial-Node: 8580ff50825a50c8f716709acdf8de0deddcd6ab >- Message-Id: <8580ff50825a50c8f716.61@ >- In-Reply-To: <patchbomb.60@ >- References: <patchbomb.60@ >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:01:01 +0000 >- From: quux >- To: foo >- Cc: bar >- >- --=== >- Content-Type: text/x-patch; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Content-Disposition: inline; filename=t2-1.patch >- >- # HG changeset patch >- # User test >- # Date 1 0 >- # Node ID 8580ff50825a50c8f716709acdf8de0deddcd6ab >- # Parent 0000000000000000000000000000000000000000 >- a >- >- diff -r 000000000000 -r 8580ff50825a a >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/a Thu Jan 01 00:00:01 1970 +0000 >- @@ -0,0 +1,1 @@ >- +a >- >- --=== >- Displaying [PATCH 2 of 2] b ... >- Content-Type: multipart/mixed; boundary="=== >- MIME-Version: 1.0 >- Subject: [PATCH 2 of 2] b >- X-Mercurial-Node: 97d72e5f12c7e84f85064aa72e5a297142c36ed9 >- Message-Id: <97d72e5f12c7e84f8506.62@ >- In-Reply-To: <patchbomb.60@ >- References: <patchbomb.60@ >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:01:02 +0000 >- From: quux >- To: foo >- Cc: bar >- >- --=== >- Content-Type: text/x-patch; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Content-Disposition: inline; filename=one.patch >- >- # HG changeset patch >- # User test >- # Date 2 0 >- # Node ID 97d72e5f12c7e84f85064aa72e5a297142c36ed9 >- # Parent 8580ff50825a50c8f716709acdf8de0deddcd6ab >- b >- >- diff -r 8580ff50825a -r 97d72e5f12c7 b >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/b Thu Jan 01 00:00:02 1970 +0000 >- @@ -0,0 +1,1 @@ >- +b >- >- --=== >- >- >-test inreplyto: >- $ hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar --in-reply-to baz \ >- > -r tip | fixheaders >- This patch series consists of 1 patches. >- >- >- Displaying [PATCH] Added tag two, two.diff for changeset ff2c9fa2018b ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Subject: [PATCH] Added tag two, two.diff for changeset ff2c9fa2018b >- X-Mercurial-Node: e317db6a6f288748d1f6cb064f3810fcba66b1b6 >- Message-Id: <e317db6a6f288748d1f6.60@ >- In-Reply-To: <baz> >- References: <baz> >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:01:00 +0000 >- From: quux >- To: foo >- Cc: bar >- >- # HG changeset patch >- # User test >- # Date 0 0 >- # Node ID e317db6a6f288748d1f6cb064f3810fcba66b1b6 >- # Parent eae5fcf795eee29d0e45ffc9f519a91cd79fc9ff >- Added tag two, two.diff for changeset ff2c9fa2018b >- >- diff -r eae5fcf795ee -r e317db6a6f28 .hgtags >- --- a/.hgtags Thu Jan 01 00:00:00 1970 +0000 >- +++ b/.hgtags Thu Jan 01 00:00:00 1970 +0000 >- @@ -2,3 +2,5 @@ >- 8580ff50825a50c8f716709acdf8de0deddcd6ab zero.foo >- 97d72e5f12c7e84f85064aa72e5a297142c36ed9 one >- 97d72e5f12c7e84f85064aa72e5a297142c36ed9 one.patch >- +ff2c9fa2018b15fa74b33363bda9527323e2a99f two >- +ff2c9fa2018b15fa74b33363bda9527323e2a99f two.diff >- >- >- $ hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar --in-reply-to baz \ >- > -r 0:1 >- This patch series consists of 2 patches. >- >- abort: Subject: [PATCH 0 of 2] Please enter a valid value >- [255] >- >- $ hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar --in-reply-to baz \ >- > -s test -r 0:1 | fixheaders >- This patch series consists of 2 patches. >- >- >- Write the introductory message for the patch series. >- >- >- Displaying [PATCH 0 of 2] test ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Subject: [PATCH 0 of 2] test >- Message-Id: <patchbomb.60@ >- In-Reply-To: <baz> >- References: <baz> >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:01:00 +0000 >- From: quux >- To: foo >- Cc: bar >- >- >- Displaying [PATCH 1 of 2] a ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Subject: [PATCH 1 of 2] a >- X-Mercurial-Node: 8580ff50825a50c8f716709acdf8de0deddcd6ab >- Message-Id: <8580ff50825a50c8f716.61@ >- In-Reply-To: <patchbomb.60@ >- References: <patchbomb.60@ >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:01:01 +0000 >- From: quux >- To: foo >- Cc: bar >- >- # HG changeset patch >- # User test >- # Date 1 0 >- # Node ID 8580ff50825a50c8f716709acdf8de0deddcd6ab >- # Parent 0000000000000000000000000000000000000000 >- a >- >- diff -r 000000000000 -r 8580ff50825a a >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/a Thu Jan 01 00:00:01 1970 +0000 >- @@ -0,0 +1,1 @@ >- +a >- >- Displaying [PATCH 2 of 2] b ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Subject: [PATCH 2 of 2] b >- X-Mercurial-Node: 97d72e5f12c7e84f85064aa72e5a297142c36ed9 >- Message-Id: <97d72e5f12c7e84f8506.62@ >- In-Reply-To: <patchbomb.60@ >- References: <patchbomb.60@ >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:01:02 +0000 >- From: quux >- To: foo >- Cc: bar >- >- # HG changeset patch >- # User test >- # Date 2 0 >- # Node ID 97d72e5f12c7e84f85064aa72e5a297142c36ed9 >- # Parent 8580ff50825a50c8f716709acdf8de0deddcd6ab >- b >- >- diff -r 8580ff50825a -r 97d72e5f12c7 b >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/b Thu Jan 01 00:00:02 1970 +0000 >- @@ -0,0 +1,1 @@ >- +b >- >- >-test single flag for single patch: >- $ hg email --date '1970-1-1 0:1' -n --flag fooFlag -f quux -t foo -c bar -s test \ >- > -r 2 | fixheaders >- This patch series consists of 1 patches. >- >- >- Displaying [PATCH fooFlag] test ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Subject: [PATCH fooFlag] test >- X-Mercurial-Node: ff2c9fa2018b15fa74b33363bda9527323e2a99f >- Message-Id: <ff2c9fa2018b15fa74b3.60@ >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:01:00 +0000 >- From: quux >- To: foo >- Cc: bar >- >- # HG changeset patch >- # User test >- # Date 3 0 >- # Node ID ff2c9fa2018b15fa74b33363bda9527323e2a99f >- # Parent 97d72e5f12c7e84f85064aa72e5a297142c36ed9 >- c >- >- diff -r 97d72e5f12c7 -r ff2c9fa2018b c >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/c Thu Jan 01 00:00:03 1970 +0000 >- @@ -0,0 +1,1 @@ >- +c >- >- >-test single flag for multiple patches: >- $ hg email --date '1970-1-1 0:1' -n --flag fooFlag -f quux -t foo -c bar -s test \ >- > -r 0:1 | fixheaders >- This patch series consists of 2 patches. >- >- >- Write the introductory message for the patch series. >- >- >- Displaying [PATCH 0 of 2 fooFlag] test ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Subject: [PATCH 0 of 2 fooFlag] test >- Message-Id: <patchbomb.60@ >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:01:00 +0000 >- From: quux >- To: foo >- Cc: bar >- >- >- Displaying [PATCH 1 of 2 fooFlag] a ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Subject: [PATCH 1 of 2 fooFlag] a >- X-Mercurial-Node: 8580ff50825a50c8f716709acdf8de0deddcd6ab >- Message-Id: <8580ff50825a50c8f716.61@ >- In-Reply-To: <patchbomb.60@ >- References: <patchbomb.60@ >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:01:01 +0000 >- From: quux >- To: foo >- Cc: bar >- >- # HG changeset patch >- # User test >- # Date 1 0 >- # Node ID 8580ff50825a50c8f716709acdf8de0deddcd6ab >- # Parent 0000000000000000000000000000000000000000 >- a >- >- diff -r 000000000000 -r 8580ff50825a a >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/a Thu Jan 01 00:00:01 1970 +0000 >- @@ -0,0 +1,1 @@ >- +a >- >- Displaying [PATCH 2 of 2 fooFlag] b ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Subject: [PATCH 2 of 2 fooFlag] b >- X-Mercurial-Node: 97d72e5f12c7e84f85064aa72e5a297142c36ed9 >- Message-Id: <97d72e5f12c7e84f8506.62@ >- In-Reply-To: <patchbomb.60@ >- References: <patchbomb.60@ >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:01:02 +0000 >- From: quux >- To: foo >- Cc: bar >- >- # HG changeset patch >- # User test >- # Date 2 0 >- # Node ID 97d72e5f12c7e84f85064aa72e5a297142c36ed9 >- # Parent 8580ff50825a50c8f716709acdf8de0deddcd6ab >- b >- >- diff -r 8580ff50825a -r 97d72e5f12c7 b >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/b Thu Jan 01 00:00:02 1970 +0000 >- @@ -0,0 +1,1 @@ >- +b >- >- >-test mutiple flags for single patch: >- $ hg email --date '1970-1-1 0:1' -n --flag fooFlag --flag barFlag -f quux -t foo \ >- > -c bar -s test -r 2 | fixheaders >- This patch series consists of 1 patches. >- >- >- Displaying [PATCH fooFlag barFlag] test ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Subject: [PATCH fooFlag barFlag] test >- X-Mercurial-Node: ff2c9fa2018b15fa74b33363bda9527323e2a99f >- Message-Id: <ff2c9fa2018b15fa74b3.60@ >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:01:00 +0000 >- From: quux >- To: foo >- Cc: bar >- >- # HG changeset patch >- # User test >- # Date 3 0 >- # Node ID ff2c9fa2018b15fa74b33363bda9527323e2a99f >- # Parent 97d72e5f12c7e84f85064aa72e5a297142c36ed9 >- c >- >- diff -r 97d72e5f12c7 -r ff2c9fa2018b c >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/c Thu Jan 01 00:00:03 1970 +0000 >- @@ -0,0 +1,1 @@ >- +c >- >- >-test multiple flags for multiple patches: >- $ hg email --date '1970-1-1 0:1' -n --flag fooFlag --flag barFlag -f quux -t foo \ >- > -c bar -s test -r 0:1 | fixheaders >- This patch series consists of 2 patches. >- >- >- Write the introductory message for the patch series. >- >- >- Displaying [PATCH 0 of 2 fooFlag barFlag] test ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Subject: [PATCH 0 of 2 fooFlag barFlag] test >- Message-Id: <patchbomb.60@ >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:01:00 +0000 >- From: quux >- To: foo >- Cc: bar >- >- >- Displaying [PATCH 1 of 2 fooFlag barFlag] a ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Subject: [PATCH 1 of 2 fooFlag barFlag] a >- X-Mercurial-Node: 8580ff50825a50c8f716709acdf8de0deddcd6ab >- Message-Id: <8580ff50825a50c8f716.61@ >- In-Reply-To: <patchbomb.60@ >- References: <patchbomb.60@ >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:01:01 +0000 >- From: quux >- To: foo >- Cc: bar >- >- # HG changeset patch >- # User test >- # Date 1 0 >- # Node ID 8580ff50825a50c8f716709acdf8de0deddcd6ab >- # Parent 0000000000000000000000000000000000000000 >- a >- >- diff -r 000000000000 -r 8580ff50825a a >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/a Thu Jan 01 00:00:01 1970 +0000 >- @@ -0,0 +1,1 @@ >- +a >- >- Displaying [PATCH 2 of 2 fooFlag barFlag] b ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Subject: [PATCH 2 of 2 fooFlag barFlag] b >- X-Mercurial-Node: 97d72e5f12c7e84f85064aa72e5a297142c36ed9 >- Message-Id: <97d72e5f12c7e84f8506.62@ >- In-Reply-To: <patchbomb.60@ >- References: <patchbomb.60@ >- User-Agent: Mercurial-patchbomb >- Date: Thu, 01 Jan 1970 00:01:02 +0000 >- From: quux >- To: foo >- Cc: bar >- >- # HG changeset patch >- # User test >- # Date 2 0 >- # Node ID 97d72e5f12c7e84f85064aa72e5a297142c36ed9 >- # Parent 8580ff50825a50c8f716709acdf8de0deddcd6ab >- b >- >- diff -r 8580ff50825a -r 97d72e5f12c7 b >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/b Thu Jan 01 00:00:02 1970 +0000 >- @@ -0,0 +1,1 @@ >- +b >- >- >-test multi-address parsing: >- $ hg email --date '1980-1-1 0:1' -m tmp.mbox -f quux -t 'spam<spam><eggs>' \ >- > -t toast -c 'foo,bar@example.com' -c '"A, B <>" <a@example.com>' -s test -r 0 \ >- > --config email.bcc='"Quux, A." <quux>' >- This patch series consists of 1 patches. >- >- >- Writing [PATCH] test ... >- $ fixheaders < tmp.mbox >- From quux Tue Jan 01 00:01:01 1980 >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Subject: [PATCH] test >- X-Mercurial-Node: 8580ff50825a50c8f716709acdf8de0deddcd6ab >- Message-Id: <8580ff50825a50c8f716.315532860@ >- User-Agent: Mercurial-patchbomb >- Date: Tue, 01 Jan 1980 00:01:00 +0000 >- From: quux >- To: spam <spam>, eggs, toast >- Cc: foo, bar@example.com, "A, B <>" <a@example.com> >- Bcc: "Quux, A." <quux> >- >- # HG changeset patch >- # User test >- # Date 1 0 >- # Node ID 8580ff50825a50c8f716709acdf8de0deddcd6ab >- # Parent 0000000000000000000000000000000000000000 >- a >- >- diff -r 000000000000 -r 8580ff50825a a >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/a Thu Jan 01 00:00:01 1970 +0000 >- @@ -0,0 +1,1 @@ >- +a >- >- >- >-test multi-byte domain parsing: >- $ UUML=`python -c 'import sys; sys.stdout.write("\374")'` >- $ HGENCODING=iso-8859-1 >- $ export HGENCODING >- $ hg email --date '1980-1-1 0:1' -m tmp.mbox -f quux -t "bar@${UUML}nicode.com" -s test -r 0 >- This patch series consists of 1 patches. >- >- Cc: >- >- Writing [PATCH] test ... >- >- $ cat tmp.mbox >- From quux Tue Jan 01 00:01:01 1980 >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Subject: [PATCH] test >- X-Mercurial-Node: 8580ff50825a50c8f716709acdf8de0deddcd6ab >- Message-Id: <8580ff50825a50c8f716.315532860@* (glob) >- User-Agent: Mercurial-patchbomb/* (glob) >- Date: Tue, 01 Jan 1980 00:01:00 +0000 >- From: quux >- To: bar@xn--nicode-2ya.com >- >- # HG changeset patch >- # User test >- # Date 1 0 >- # Node ID 8580ff50825a50c8f716709acdf8de0deddcd6ab >- # Parent 0000000000000000000000000000000000000000 >- a >- >- diff -r 000000000000 -r 8580ff50825a a >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/a Thu Jan 01 00:00:01 1970 +0000 >- @@ -0,0 +1,1 @@ >- +a >- >- >- >-test outgoing: >- $ hg up 1 >- 0 files updated, 0 files merged, 6 files removed, 0 files unresolved >- >- $ hg branch test >- marked working directory as branch test >- >- $ echo d > d >- $ hg add d >- $ hg ci -md -d '4 0' >- $ hg email --date '1980-1-1 0:1' -n -t foo -s test -o ../t >- comparing with ../t >- searching for changes >- From [test]: test >- This patch series consists of 8 patches. >- >- >- Write the introductory message for the patch series. >- >- Cc: >- >- Displaying [PATCH 0 of 8] test ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Subject: [PATCH 0 of 8] test >- Message-Id: <patchbomb.315532860@* (glob) >- User-Agent: Mercurial-patchbomb/* (glob) >- Date: Tue, 01 Jan 1980 00:01:00 +0000 >- From: test >- To: foo >- >- >- Displaying [PATCH 1 of 8] c ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Subject: [PATCH 1 of 8] c >- X-Mercurial-Node: ff2c9fa2018b15fa74b33363bda9527323e2a99f >- Message-Id: <ff2c9fa2018b15fa74b3.315532861@* (glob) >- In-Reply-To: <patchbomb\.315532860@[^>]*> (re) >- References: <patchbomb\.315532860@[^>]*> (re) >- User-Agent: Mercurial-patchbomb/* (glob) >- Date: Tue, 01 Jan 1980 00:01:01 +0000 >- From: test >- To: foo >- >- # HG changeset patch >- # User test >- # Date 3 0 >- # Node ID ff2c9fa2018b15fa74b33363bda9527323e2a99f >- # Parent 97d72e5f12c7e84f85064aa72e5a297142c36ed9 >- c >- >- diff -r 97d72e5f12c7 -r ff2c9fa2018b c >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/c Thu Jan 01 00:00:03 1970 +0000 >- @@ -0,0 +1,1 @@ >- +c >- >- Displaying [PATCH 2 of 8] charset=utf-8; content-transfer-encoding: base64 ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 8bit >- Subject: [PATCH 2 of 8] charset=utf-8; content-transfer-encoding: base64 >- X-Mercurial-Node: c3c9e37db9f4fe4882cda39baf42fed6bad8b15a >- Message-Id: <c3c9e37db9f4fe4882cd.315532862@* (glob) >- In-Reply-To: <patchbomb\.315532860@[^>]*> (re) >- References: <patchbomb\.315532860@[^>]*> (re) >- User-Agent: Mercurial-patchbomb/* (glob) >- Date: Tue, 01 Jan 1980 00:01:02 +0000 >- From: test >- To: foo >- >- # HG changeset patch >- # User test >- # Date 4 0 >- # Node ID c3c9e37db9f4fe4882cda39baf42fed6bad8b15a >- # Parent ff2c9fa2018b15fa74b33363bda9527323e2a99f >- charset=utf-8; content-transfer-encoding: base64 >- >- diff -r ff2c9fa2018b -r c3c9e37db9f4 description >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/description Thu Jan 01 00:00:04 1970 +0000 >- @@ -0,0 +1,3 @@ >- +a multiline >- + >- +description >- diff -r ff2c9fa2018b -r c3c9e37db9f4 utf >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/utf Thu Jan 01 00:00:04 1970 +0000 >- @@ -0,0 +1,1 @@ >- +hömma! >- >- Displaying [PATCH 3 of 8] charset=utf-8; content-transfer-encoding: quoted-printable ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: quoted-printable >- Subject: [PATCH 3 of 8] charset=utf-8; >- content-transfer-encoding: quoted-printable >- X-Mercurial-Node: c655633f8c87700bb38cc6a59a2753bdc5a6c376 >- Message-Id: <c655633f8c87700bb38c.315532863@* (glob) >- In-Reply-To: <patchbomb\.315532860@[^>]*> (re) >- References: <patchbomb\.315532860@[^>]*> (re) >- User-Agent: Mercurial-patchbomb/* (glob) >- Date: Tue, 01 Jan 1980 00:01:03 +0000 >- From: test >- To: foo >- >- # HG changeset patch >- # User test >- # Date 4 0 >- # Node ID c655633f8c87700bb38cc6a59a2753bdc5a6c376 >- # Parent c3c9e37db9f4fe4882cda39baf42fed6bad8b15a >- charset=3Dutf-8; content-transfer-encoding: quoted-printable >- >- diff -r c3c9e37db9f4 -r c655633f8c87 qp >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/qp Thu Jan 01 00:00:04 1970 +0000 >- @@ -0,0 +1,4 @@ >- +xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= >- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx >- +foo >- + >- +bar >- >- Displaying [PATCH 4 of 8] charset=us-ascii; content-transfer-encoding: 8bit ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 8bit >- Subject: [PATCH 4 of 8] charset=us-ascii; content-transfer-encoding: 8bit >- X-Mercurial-Node: 22d0f96be12f5945fd67d101af58f7bc8263c835 >- Message-Id: <22d0f96be12f5945fd67.315532864@* (glob) >- In-Reply-To: <patchbomb\.315532860@[^>]*> (re) >- References: <patchbomb\.315532860@[^>]*> (re) >- User-Agent: Mercurial-patchbomb/* (glob) >- Date: Tue, 01 Jan 1980 00:01:04 +0000 >- From: test >- To: foo >- >- # HG changeset patch >- # User test >- # Date 5 0 >- # Node ID 22d0f96be12f5945fd67d101af58f7bc8263c835 >- # Parent c655633f8c87700bb38cc6a59a2753bdc5a6c376 >- charset=us-ascii; content-transfer-encoding: 8bit >- >- diff -r c655633f8c87 -r 22d0f96be12f isolatin >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/isolatin Thu Jan 01 00:00:05 1970 +0000 >- @@ -0,0 +1,1 @@ >- +hömma! >- >- Displaying [PATCH 5 of 8] Added tag zero, zero.foo for changeset 8580ff50825a ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Subject: [PATCH 5 of 8] Added tag zero, zero.foo for changeset 8580ff50825a >- X-Mercurial-Node: dd9c2b4b8a8a0934d5523c15f2c119b362360903 >- Message-Id: <dd9c2b4b8a8a0934d552.315532865@* (glob) >- In-Reply-To: <patchbomb\.315532860@[^>]*> (re) >- References: <patchbomb\.315532860@[^>]*> (re) >- User-Agent: Mercurial-patchbomb/* (glob) >- Date: Tue, 01 Jan 1980 00:01:05 +0000 >- From: test >- To: foo >- >- # HG changeset patch >- # User test >- # Date 0 0 >- # Node ID dd9c2b4b8a8a0934d5523c15f2c119b362360903 >- # Parent 22d0f96be12f5945fd67d101af58f7bc8263c835 >- Added tag zero, zero.foo for changeset 8580ff50825a >- >- diff -r 22d0f96be12f -r dd9c2b4b8a8a .hgtags >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/.hgtags Thu Jan 01 00:00:00 1970 +0000 >- @@ -0,0 +1,2 @@ >- +8580ff50825a50c8f716709acdf8de0deddcd6ab zero >- +8580ff50825a50c8f716709acdf8de0deddcd6ab zero.foo >- >- Displaying [PATCH 6 of 8] Added tag one, one.patch for changeset 97d72e5f12c7 ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Subject: [PATCH 6 of 8] Added tag one, one.patch for changeset 97d72e5f12c7 >- X-Mercurial-Node: eae5fcf795eee29d0e45ffc9f519a91cd79fc9ff >- Message-Id: <eae5fcf795eee29d0e45.315532866@* (glob) >- In-Reply-To: <patchbomb\.315532860@[^>]*> (re) >- References: <patchbomb\.315532860@[^>]*> (re) >- User-Agent: Mercurial-patchbomb/* (glob) >- Date: Tue, 01 Jan 1980 00:01:06 +0000 >- From: test >- To: foo >- >- # HG changeset patch >- # User test >- # Date 0 0 >- # Node ID eae5fcf795eee29d0e45ffc9f519a91cd79fc9ff >- # Parent dd9c2b4b8a8a0934d5523c15f2c119b362360903 >- Added tag one, one.patch for changeset 97d72e5f12c7 >- >- diff -r dd9c2b4b8a8a -r eae5fcf795ee .hgtags >- --- a/.hgtags Thu Jan 01 00:00:00 1970 +0000 >- +++ b/.hgtags Thu Jan 01 00:00:00 1970 +0000 >- @@ -1,2 +1,4 @@ >- 8580ff50825a50c8f716709acdf8de0deddcd6ab zero >- 8580ff50825a50c8f716709acdf8de0deddcd6ab zero.foo >- +97d72e5f12c7e84f85064aa72e5a297142c36ed9 one >- +97d72e5f12c7e84f85064aa72e5a297142c36ed9 one.patch >- >- Displaying [PATCH 7 of 8] Added tag two, two.diff for changeset ff2c9fa2018b ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Subject: [PATCH 7 of 8] Added tag two, two.diff for changeset ff2c9fa2018b >- X-Mercurial-Node: e317db6a6f288748d1f6cb064f3810fcba66b1b6 >- Message-Id: <e317db6a6f288748d1f6.315532867@* (glob) >- In-Reply-To: <patchbomb\.315532860@[^>]*> (re) >- References: <patchbomb\.315532860@[^>]*> (re) >- User-Agent: Mercurial-patchbomb/* (glob) >- Date: Tue, 01 Jan 1980 00:01:07 +0000 >- From: test >- To: foo >- >- # HG changeset patch >- # User test >- # Date 0 0 >- # Node ID e317db6a6f288748d1f6cb064f3810fcba66b1b6 >- # Parent eae5fcf795eee29d0e45ffc9f519a91cd79fc9ff >- Added tag two, two.diff for changeset ff2c9fa2018b >- >- diff -r eae5fcf795ee -r e317db6a6f28 .hgtags >- --- a/.hgtags Thu Jan 01 00:00:00 1970 +0000 >- +++ b/.hgtags Thu Jan 01 00:00:00 1970 +0000 >- @@ -2,3 +2,5 @@ >- 8580ff50825a50c8f716709acdf8de0deddcd6ab zero.foo >- 97d72e5f12c7e84f85064aa72e5a297142c36ed9 one >- 97d72e5f12c7e84f85064aa72e5a297142c36ed9 one.patch >- +ff2c9fa2018b15fa74b33363bda9527323e2a99f two >- +ff2c9fa2018b15fa74b33363bda9527323e2a99f two.diff >- >- Displaying [PATCH 8 of 8] d ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Subject: [PATCH 8 of 8] d >- X-Mercurial-Node: 2f9fa9b998c5fe3ac2bd9a2b14bfcbeecbc7c268 >- Message-Id: <2f9fa9b998c5fe3ac2bd\.315532868[^>]*> (re) >- In-Reply-To: <patchbomb\.315532860@[^>]*> (re) >- References: <patchbomb\.315532860@[^>]*> (re) >- User-Agent: Mercurial-patchbomb/* (glob) >- Date: Tue, 01 Jan 1980 00:01:08 +0000 >- From: test >- To: foo >- >- # HG changeset patch >- # User test >- # Date 4 0 >- # Branch test >- # Node ID 2f9fa9b998c5fe3ac2bd9a2b14bfcbeecbc7c268 >- # Parent 97d72e5f12c7e84f85064aa72e5a297142c36ed9 >- d >- >- diff -r 97d72e5f12c7 -r 2f9fa9b998c5 d >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/d Thu Jan 01 00:00:04 1970 +0000 >- @@ -0,0 +1,1 @@ >- +d >- >- >-dest#branch URIs: >- $ hg email --date '1980-1-1 0:1' -n -t foo -s test -o ../t#test >- comparing with ../t >- searching for changes >- From [test]: test >- This patch series consists of 1 patches. >- >- Cc: >- >- Displaying [PATCH] test ... >- Content-Type: text/plain; charset="us-ascii" >- MIME-Version: 1.0 >- Content-Transfer-Encoding: 7bit >- Subject: [PATCH] test >- X-Mercurial-Node: 2f9fa9b998c5fe3ac2bd9a2b14bfcbeecbc7c268 >- Message-Id: <2f9fa9b998c5fe3ac2bd.315532860@* (glob) >- User-Agent: Mercurial-patchbomb/* (glob) >- Date: Tue, 01 Jan 1980 00:01:00 +0000 >- From: test >- To: foo >- >- # HG changeset patch >- # User test >- # Date 4 0 >- # Branch test >- # Node ID 2f9fa9b998c5fe3ac2bd9a2b14bfcbeecbc7c268 >- # Parent 97d72e5f12c7e84f85064aa72e5a297142c36ed9 >- d >- >- diff -r 97d72e5f12c7 -r 2f9fa9b998c5 d >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/d Thu Jan 01 00:00:04 1970 +0000 >- @@ -0,0 +1,1 @@ >- +d >- >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-strip.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-strip.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-strip.t.err >@@ -1,423 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ echo "[extensions]" >> $HGRCPATH >- $ echo "mq=" >> $HGRCPATH >- $ echo "graphlog=" >> $HGRCPATH >- >- $ restore() { >- > hg unbundle -q .hg/strip-backup/* >- > rm .hg/strip-backup/* >- > } >- $ teststrip() { >- > hg up -C $1 >- > echo % before update $1, strip $2 >- > hg parents >- > hg --traceback strip $2 >- > echo % after update $1, strip $2 >- > hg parents >- > restore >- > } >- >- $ hg init test >- $ cd test >- >- $ echo foo > bar >- $ hg ci -Ama >- adding bar >- >- $ echo more >> bar >- $ hg ci -Amb >- >- $ echo blah >> bar >- $ hg ci -Amc >- >- $ hg up 1 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo blah >> bar >- $ hg ci -Amd >- created new head >- >- $ echo final >> bar >- $ hg ci -Ame >- >- $ hg log >- changeset: 4:443431ffac4f >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: e >- >- changeset: 3:65bd5f99a4a3 >- parent: 1:ef3a871183d7 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: d >- >- changeset: 2:264128213d29 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: c >- >- changeset: 1:ef3a871183d7 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: b >- >- changeset: 0:9ab35a2d17cb >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: a >- >- >- $ teststrip 4 4 >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- % before update 4, strip 4 >- changeset: 4:443431ffac4f >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: e >- >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob) >- % after update 4, strip 4 >- changeset: 3:65bd5f99a4a3 >- tag: tip >- parent: 1:ef3a871183d7 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: d >- >- $ teststrip 4 3 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- % before update 4, strip 3 >- changeset: 4:443431ffac4f >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: e >- >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob) >- % after update 4, strip 3 >- changeset: 1:ef3a871183d7 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: b >- >- $ teststrip 1 4 >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- % before update 1, strip 4 >- changeset: 1:ef3a871183d7 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: b >- >- saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob) >- % after update 1, strip 4 >- changeset: 1:ef3a871183d7 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: b >- >- $ teststrip 4 2 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- % before update 4, strip 2 >- changeset: 4:443431ffac4f >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: e >- >- saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob) >- % after update 4, strip 2 >- changeset: 3:443431ffac4f >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: e >- >- $ teststrip 4 1 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- % before update 4, strip 1 >- changeset: 4:264128213d29 >- tag: tip >- parent: 1:ef3a871183d7 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: c >- >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob) >- % after update 4, strip 1 >- changeset: 0:9ab35a2d17cb >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: a >- >- $ teststrip null 4 >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- % before update null, strip 4 >- saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob) >- % after update null, strip 4 >- >- $ hg log >- changeset: 4:264128213d29 >- tag: tip >- parent: 1:ef3a871183d7 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: c >- >- changeset: 3:443431ffac4f >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: e >- >- changeset: 2:65bd5f99a4a3 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: d >- >- changeset: 1:ef3a871183d7 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: b >- >- changeset: 0:9ab35a2d17cb >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: a >- >- >- $ hg up -C 2 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg merge 4 >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- >-before strip of merge parent >- >- $ hg parents >- changeset: 2:65bd5f99a4a3 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: d >- >- changeset: 4:264128213d29 >- tag: tip >- parent: 1:ef3a871183d7 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: c >- >- $ hg strip 4 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob) >- >-after strip of merge parent >- >- $ hg parents >- changeset: 1:ef3a871183d7 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: b >- >- $ restore >- >- $ hg up >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg glog >- @ changeset: 4:264128213d29 >- | tag: tip >- | parent: 1:ef3a871183d7 >- | user: test >- | date: Thu Jan 01 00:00:00 1970 +0000 >- | summary: c >- | >- | o changeset: 3:443431ffac4f >- | | user: test >- | | date: Thu Jan 01 00:00:00 1970 +0000 >- | | summary: e >- | | >- | o changeset: 2:65bd5f99a4a3 >- |/ user: test >- | date: Thu Jan 01 00:00:00 1970 +0000 >- | summary: d >- | >- o changeset: 1:ef3a871183d7 >- | user: test >- | date: Thu Jan 01 00:00:00 1970 +0000 >- | summary: b >- | >- o changeset: 0:9ab35a2d17cb >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: a >- >- >-2 is parent of 3, only one strip should happen >- >- $ hg strip "roots(2)" 3 >- saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob) >- $ hg glog >- @ changeset: 2:264128213d29 >- | tag: tip >- | user: test >- | date: Thu Jan 01 00:00:00 1970 +0000 >- | summary: c >- | >- o changeset: 1:ef3a871183d7 >- | user: test >- | date: Thu Jan 01 00:00:00 1970 +0000 >- | summary: b >- | >- o changeset: 0:9ab35a2d17cb >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: a >- >- $ restore >- $ hg glog >- o changeset: 4:443431ffac4f >- | tag: tip >- | user: test >- | date: Thu Jan 01 00:00:00 1970 +0000 >- | summary: e >- | >- o changeset: 3:65bd5f99a4a3 >- | parent: 1:ef3a871183d7 >- | user: test >- | date: Thu Jan 01 00:00:00 1970 +0000 >- | summary: d >- | >- | @ changeset: 2:264128213d29 >- |/ user: test >- | date: Thu Jan 01 00:00:00 1970 +0000 >- | summary: c >- | >- o changeset: 1:ef3a871183d7 >- | user: test >- | date: Thu Jan 01 00:00:00 1970 +0000 >- | summary: b >- | >- o changeset: 0:9ab35a2d17cb >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: a >- >- >-2 different branches: 2 strips >- >- $ hg strip 2 4 >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob) >- saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob) >- $ hg glog >- @ changeset: 2:65bd5f99a4a3 >- | tag: tip >- | user: test >- | date: Thu Jan 01 00:00:00 1970 +0000 >- | summary: d >- | >- o changeset: 1:ef3a871183d7 >- | user: test >- | date: Thu Jan 01 00:00:00 1970 +0000 >- | summary: b >- | >- o changeset: 0:9ab35a2d17cb >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: a >- >- $ restore >- >-2 different branches and a common ancestor: 1 strip >- >- $ hg strip 1 "2|4" >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob) >- $ restore >- >-stripping an empty revset >- >- $ hg strip "1 and not 1" >- abort: empty revision set >- [255] >- >-remove branchy history for qimport tests >- >- $ hg strip 3 >- saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob) >- >- >-strip of applied mq should cleanup status file >- >- $ hg up -C 3 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo fooagain >> bar >- $ hg ci -mf >- $ hg qimport -r tip:2 >- >-applied patches before strip >- >- $ hg qapplied >- 2.diff >- 3.diff >- 4.diff >- >-stripping revision in queue >- >- $ hg strip 3 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob) >- >-applied patches after stripping rev in queue >- >- $ hg qapplied >- 2.diff >- >-stripping ancestor of queue >- >- $ hg strip 1 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob) >- >-applied patches after stripping ancestor of queue >- >- $ hg qapplied >- >-Verify strip protects against stripping wc parent when there are uncommited mods >- >- $ echo b > b >- $ hg add b >- $ hg ci -m 'b' >- $ hg log --graph >- @ changeset: 1:7519abd79d14 >- | tag: tip >- | user: test >- | date: Thu Jan 01 00:00:00 1970 +0000 >- | summary: b >- | >- o changeset: 0:9ab35a2d17cb >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: a >- >- >- $ echo c > b >- $ echo c > bar >- $ hg strip tip >- abort: local changes found >- [255] >- $ hg strip tip --keep >- saved backup bundle to * (glob) >- $ hg log --graph >- @ changeset: 0:9ab35a2d17cb >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: a >- >- $ hg status >- M bar >- ? b >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-parents.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-parents.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-parents.t.err >@@ -1,152 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > test parents command > > $ hg init repo >- $ cd repo >- >-no working directory >- >- $ hg parents >- >- $ echo a > a >- $ echo b > b >- $ hg ci -Amab -d '0 0' >- adding a >- adding b >- $ echo a >> a >- $ hg ci -Ama -d '1 0' >- $ echo b >> b >- $ hg ci -Amb -d '2 0' >- $ echo c > c >- $ hg ci -Amc -d '3 0' >- adding c >- $ hg up -C 1 >- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ echo d > c >- $ hg ci -Amc2 -d '4 0' >- adding c >- created new head >- $ hg up -C 3 >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >- >- $ hg parents >- changeset: 3:02d851b7e549 >- user: test >- date: Thu Jan 01 00:00:03 1970 +0000 >- summary: c >- >- >- $ hg parents a >- changeset: 1:d786049f033a >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: a >- >- >-hg parents c, single revision >- >- $ hg parents c >- changeset: 3:02d851b7e549 >- user: test >- date: Thu Jan 01 00:00:03 1970 +0000 >- summary: c >- >- >- $ hg parents -r 3 c >- abort: 'c' not found in manifest! >- [255] >- >- $ hg parents -r 2 >- changeset: 1:d786049f033a >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: a >- >- >- $ hg parents -r 2 a >- changeset: 1:d786049f033a >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: a >- >- >- $ hg parents -r 2 ../a >- abort: ../a not under root >- [255] >- >- >-cd dir; hg parents -r 2 ../a >- >- $ mkdir dir >- $ cd dir >- $ hg parents -r 2 ../a >- changeset: 1:d786049f033a >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: a >- >- $ hg parents -r 2 path:a >- changeset: 1:d786049f033a >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: a >- >- $ cd .. >- >- $ hg parents -r 2 glob:a >- abort: can only specify an explicit filename >- [255] >- >- >-merge working dir with 2 parents, hg parents c >- >- $ HGMERGE=true hg merge >- merging c >- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg parents c >- changeset: 3:02d851b7e549 >- user: test >- date: Thu Jan 01 00:00:03 1970 +0000 >- summary: c >- >- changeset: 4:48cee28d4b4e >- tag: tip >- parent: 1:d786049f033a >- user: test >- date: Thu Jan 01 00:00:04 1970 +0000 >- summary: c2 >- >- >- >-merge working dir with 1 parent, hg parents >- >- $ hg up -C 2 >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ HGMERGE=true hg merge -r 4 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg parents >- changeset: 2:6cfac479f009 >- user: test >- date: Thu Jan 01 00:00:02 1970 +0000 >- summary: b >- >- changeset: 4:48cee28d4b4e >- tag: tip >- parent: 1:d786049f033a >- user: test >- date: Thu Jan 01 00:00:04 1970 +0000 >- summary: c2 >- >- >-merge working dir with 1 parent, hg parents c >- >- $ hg parents c >- changeset: 4:48cee28d4b4e >- tag: tip >- parent: 1:d786049f033a >- user: test >- date: Thu Jan 01 00:00:04 1970 +0000 >- summary: c2 >- >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-qqueue.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-qqueue.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq-qqueue.t.err >@@ -1,188 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ echo "[extensions]" >> $HGRCPATH >- $ echo "mq=" >> $HGRCPATH >- >- $ hg init foo >- $ cd foo >- $ echo a > a >- $ hg ci -qAm a >- >-Default queue: >- >- $ hg qqueue >- patches (active) >- >- $ echo b > a >- $ hg qnew -fgDU somestuff >- >-Applied patches in default queue: >- >- $ hg qap >- somestuff >- >-Try to change patch (create succeeds, switch fails): >- >- $ hg qqueue foo --create >- abort: patches applied - cannot set new queue active >- [255] >- >- $ hg qqueue >- foo >- patches (active) >- >-Empty default queue: >- >- $ hg qpop >- popping somestuff >- patch queue now empty >- >-Switch queue: >- >- $ hg qqueue foo >- $ hg qqueue >- foo (active) >- patches >- >-List queues, quiet: >- >- $ hg qqueue --quiet >- foo >- patches >- >-Fail creating queue with already existing name: >- >- $ hg qqueue --create foo >- abort: queue "foo" already exists >- [255] >- >- $ hg qqueue >- foo (active) >- patches >- >-Create new queue for rename: >- >- $ hg qqueue --create bar >- >- $ hg qqueue >- bar (active) >- foo >- patches >- >-Rename queue, same name: >- >- $ hg qqueue --rename bar >- abort: can't rename "bar" to its current name >- [255] >- >-Rename queue to existing: >- >- $ hg qqueue --rename foo >- abort: queue "foo" already exists >- [255] >- >-Rename queue: >- >- $ hg qqueue --rename buz >- >- $ hg qqueue >- buz (active) >- foo >- patches >- >-Switch back to previous queue: >- >- $ hg qqueue foo >- $ hg qqueue --delete buz >- >- $ hg qqueue >- foo (active) >- patches >- >-Create queue for purge: >- >- $ hg qqueue --create purge-me >- >- $ hg qqueue >- foo >- patches >- purge-me (active) >- >-Create patch for purge: >- >- $ hg qnew patch-purge-me >- >- $ ls -1d .hg/patches-purge-me 2>/dev/null || true >- .hg/patches-purge-me >- >- $ hg qpop -a >- popping patch-purge-me >- patch queue now empty >- >-Purge queue: >- >- $ hg qqueue foo >- $ hg qqueue --purge purge-me >- >- $ hg qqueue >- foo (active) >- patches >- >- $ ls -1d .hg/patches-purge-me 2>/dev/null || true >- >-Unapplied patches: >- >- $ hg qun >- $ echo c > a >- $ hg qnew -fgDU otherstuff >- >-Fail switching back: >- >- $ hg qqueue patches >- abort: patches applied - cannot set new queue active >- [255] >- >-Fail deleting current: >- >- $ hg qqueue foo --delete >- abort: cannot delete currently active queue >- [255] >- >-Switch back and delete foo: >- >- $ hg qpop -a >- popping otherstuff >- patch queue now empty >- >- $ hg qqueue patches >- $ hg qqueue foo --delete >- $ hg qqueue >- patches (active) >- >-Tricky cases: >- >- $ hg qqueue store --create >- $ hg qnew journal >- >- $ hg qqueue >- patches >- store (active) >- >- $ hg qpop -a >- popping journal >- patch queue now empty >- >- $ hg qqueue patches >- $ hg qun >- somestuff >- >-Invalid names: >- >- $ hg qqueue test/../../bar --create >- abort: invalid queue name, may not contain the characters ":\/." >- [255] >- >- $ hg qqueue . --create >- abort: invalid queue name, may not contain the characters ":\/." >- [255] >- >- $ cd .. >- >!....s. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-pull-pull-corruption.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-pull-pull-corruption.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-pull-pull-corruption.t.err >@@ -1,69 +1,6 @@ >+ >+ ### Abort: timeout after 180 seconds. > Corrupt an hg repo with two pulls. > create one repo with a long history > > $ hg init source1 >- $ cd source1 >- $ touch foo >- $ hg add foo >- $ for i in 1 2 3 4 5 6 7 8 9 10; do >- > echo $i >> foo >- > hg ci -m $i >- > done >- $ cd .. >- >-create one repo with a shorter history >- >- $ hg clone -r 0 source1 source2 >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ cd source2 >- $ echo a >> foo >- $ hg ci -m a >- $ cd .. >- >-create a third repo to pull both other repos into it >- >- $ hg init corrupted >- $ cd corrupted >- >-use a hook to make the second pull start while the first one is still running >- >- $ echo '[hooks]' >> .hg/hgrc >- $ echo 'prechangegroup = sleep 5' >> .hg/hgrc >- >-start a pull... >- >- $ hg pull ../source1 & >- >-... and start another pull before the first one has finished >- >- $ sleep 1 >- $ hg pull ../source2 2>/dev/null >- pulling from ../source2 >- pulling from ../source1 >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 10 changesets with 10 changes to 1 files >- (run 'hg update' to get a working copy) >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files (+1 heads) >- (run 'hg heads' to see heads, 'hg merge' to merge) >- >-see the result >- >- $ wait >- $ hg verify >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 1 files, 11 changesets, 11 total revisions >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-pull-http.t output changed >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-pull-http.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-pull-http.t.err >@@ -18,16 +18,27 @@ > $ echo '[web]' > .hg/hgrc > $ echo 'allowpull = false' >> .hg/hgrc > $ hg serve -p $HGPORT -d --pid-file=hg.pid -E errors.log >+ abort: cannot start server at ':$HGPORT': Address already in use >+ abort: child process failed to start >+ [255] > $ cat hg.pid >> $DAEMON_PIDS >+ cat: hg.pid: No such file or directory >+ [1] > $ hg clone http://localhost:$HGPORT/ test3 > requesting all changes >- abort: authorization failed >- [255] >+ adding changesets >+ adding manifests >+ adding file changes >+ added 2 changesets with 2 changes to 2 files >+ updating to branch default >+ 2 files updated, 0 files merged, 0 files removed, 0 files unresolved > $ "$TESTDIR/killdaemons.py" > > serve errors > > $ cat errors.log >+ cat: errors.log: No such file or directory >+ [1] > $ req() { > > hg serve -p $HGPORT -d --pid-file=hg.pid -E errors.log > > cat hg.pid >> $DAEMON_PIDS >@@ -40,7 +51,14 @@ > expect error, pulling not allowed > > $ req >+ abort: cannot start server at ':$HGPORT': Address already in use >+ abort: child process failed to start >+ cat: hg.pid: No such file or directory > pulling from http://localhost:$HGPORT/ > searching for changes >- abort: authorization failed >+ abort: repository is unrelated >+ cat: hg.pid: No such file or directory >+ kill: usage: kill [-s sigspec | -n signum | -sigspec] pid | jobspec ... or kill -l [sigspec] > % serve errors >+ cat: errors.log: No such file or directory >+ [1] >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-mq.t.err >@@ -1,1368 +1,8 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ checkundo() > > { > > if [ -f .hg/store/undo ]; then > > echo ".hg/store/undo still exists after $1" > > fi > > } >- >- $ echo "[extensions]" >> $HGRCPATH >- $ echo "mq=" >> $HGRCPATH >- >- $ echo "[mq]" >> $HGRCPATH >- $ echo "plain=true" >> $HGRCPATH >- >- >-help >- >- $ hg help mq >- mq extension - manage a stack of patches >- >- This extension lets you work with a stack of patches in a Mercurial >- repository. It manages two stacks of patches - all known patches, and applied >- patches (subset of known patches). >- >- Known patches are represented as patch files in the .hg/patches directory. >- Applied patches are both patch files and changesets. >- >- Common tasks (use "hg help command" for more details): >- >- create new patch qnew >- import existing patch qimport >- >- print patch series qseries >- print applied patches qapplied >- >- add known patch to applied stack qpush >- remove patch from applied stack qpop >- refresh contents of top applied patch qrefresh >- >- By default, mq will automatically use git patches when required to avoid >- losing file mode changes, copy records, binary files or empty files creations >- or deletions. This behaviour can be configured with: >- >- [mq] >- git = auto/keep/yes/no >- >- If set to 'keep', mq will obey the [diff] section configuration while >- preserving existing git patches upon qrefresh. If set to 'yes' or 'no', mq >- will override the [diff] section and always generate git or regular patches, >- possibly losing data in the second case. >- >- You will by default be managing a patch queue named "patches". You can create >- other, independent patch queues with the "hg qqueue" command. >- >- list of commands: >- >- qapplied print the patches already applied >- qclone clone main and patch repository at same time >- qdelete remove patches from queue >- qdiff diff of the current patch and subsequent modifications >- qfinish move applied patches into repository history >- qfold fold the named patches into the current patch >- qgoto push or pop patches until named patch is at top of stack >- qguard set or print guards for a patch >- qheader print the header of the topmost or specified patch >- qimport import a patch >- qnew create a new patch >- qnext print the name of the next patch >- qpop pop the current patch off the stack >- qprev print the name of the previous patch >- qpush push the next patch onto the stack >- qqueue manage multiple patch queues >- qrefresh update the current patch >- qrename rename a patch >- qselect set or print guarded patches to push >- qseries print the entire series file >- qtop print the name of the current patch >- qunapplied print the patches not yet applied >- strip strip changesets and all their descendants from the repository >- >- use "hg -v help mq" to show aliases and global options >- >- $ hg init a >- $ cd a >- $ echo a > a >- $ hg ci -Ama >- adding a >- >- $ hg clone . ../k >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >- $ mkdir b >- $ echo z > b/z >- $ hg ci -Ama >- adding b/z >- >- >-qinit >- >- $ hg qinit >- >- $ cd .. >- $ hg init b >- >- >--R qinit >- >- $ hg -R b qinit >- >- $ hg init c >- >- >-qinit -c >- >- $ hg --cwd c qinit -c >- $ hg -R c/.hg/patches st >- A .hgignore >- A series >- >- >-qinit; qinit -c >- >- $ hg init d >- $ cd d >- $ hg qinit >- $ hg qinit -c >- >-qinit -c should create both files if they don't exist >- >- $ cat .hg/patches/.hgignore >- ^\.hg >- ^\.mq >- syntax: glob >- status >- guards >- $ cat .hg/patches/series >- $ hg qinit -c >- abort: repository $TESTTMP/d/.hg/patches already exists! >- [255] >- $ cd .. >- >- $ echo '% qinit; <stuff>; qinit -c' >- % qinit; <stuff>; qinit -c >- $ hg init e >- $ cd e >- $ hg qnew A >- $ checkundo qnew >- $ echo foo > foo >- $ hg add foo >- $ hg qrefresh >- $ hg qnew B >- $ echo >> foo >- $ hg qrefresh >- $ echo status >> .hg/patches/.hgignore >- $ echo bleh >> .hg/patches/.hgignore >- $ hg qinit -c >- adding .hg/patches/A >- adding .hg/patches/B >- $ hg -R .hg/patches status >- A .hgignore >- A A >- A B >- A series >- >-qinit -c shouldn't touch these files if they already exist >- >- $ cat .hg/patches/.hgignore >- status >- bleh >- $ cat .hg/patches/series >- A >- B >- >-add an untracked file >- >- $ echo >> .hg/patches/flaf >- >-status --mq with color (issue2096) >- >- $ hg status --mq --config extensions.color= --color=always >- [0;32;1mA .hgignore[0m >- [0;32;1mA A[0m >- [0;32;1mA B[0m >- [0;32;1mA series[0m >- [0;35;1;4m? flaf[0m >- >-try the --mq option on a command provided by an extension >- >- $ hg purge --mq --verbose --config extensions.purge= >- Removing file flaf >- >- $ cd .. >- >-init --mq without repo >- >- $ mkdir f >- $ cd f >- $ hg init --mq >- abort: there is no Mercurial repository here (.hg not found) >- [255] >- $ cd .. >- >-init --mq with repo path >- >- $ hg init g >- $ hg init --mq g >- $ test -d g/.hg/patches/.hg >- >-init --mq with nonexistent directory >- >- $ hg init --mq nonexistentdir >- abort: repository nonexistentdir not found! >- [255] >- >- >-init --mq with bundle (non "local") >- >- $ hg -R a bundle --all a.bundle >/dev/null >- $ hg init --mq a.bundle >- abort: only a local queue repository may be initialized >- [255] >- >- $ cd a >- >- $ hg qnew -m 'foo bar' test.patch >- >- $ echo '# comment' > .hg/patches/series.tmp >- $ echo >> .hg/patches/series.tmp # empty line >- $ cat .hg/patches/series >> .hg/patches/series.tmp >- $ mv .hg/patches/series.tmp .hg/patches/series >- >- >-qrefresh >- >- $ echo a >> a >- $ hg qrefresh >- $ cat .hg/patches/test.patch >- foo bar >- >- diff -r [a-f0-9]* a (re) >- --- a/a\t(?P<date>.*) (re) >- \+\+\+ b/a\t(?P<date2>.*) (re) >- @@ -1,1 +1,2 @@ >- a >- +a >- >-empty qrefresh >- >- $ hg qrefresh -X a >- >-revision: >- >- $ hg diff -r -2 -r -1 >- >-patch: >- >- $ cat .hg/patches/test.patch >- foo bar >- >- >-working dir diff: >- >- $ hg diff --nodates -q >- --- a/a >- +++ b/a >- @@ -1,1 +1,2 @@ >- a >- +a >- >-restore things >- >- $ hg qrefresh >- $ checkundo qrefresh >- >- >-qpop >- >- $ hg qpop >- popping test.patch >- patch queue now empty >- $ checkundo qpop >- >- >-qpush with dump of tag cache >-Dump the tag cache to ensure that it has exactly one head after qpush. >- >- $ rm -f .hg/tags.cache >- $ hg tags > /dev/null >- >-.hg/tags.cache (pre qpush): >- >- $ cat .hg/tags.cache >- 1 [\da-f]{40} (re) >- >- $ hg qpush >- applying test.patch >- now at: test.patch >- $ hg tags > /dev/null >- >-.hg/tags.cache (post qpush): >- >- $ cat .hg/tags.cache >- 2 [\da-f]{40} (re) >- >- $ checkundo qpush >- $ cd .. >- >- >-pop/push outside repo >- $ hg -R a qpop >- popping test.patch >- patch queue now empty >- $ hg -R a qpush >- applying test.patch >- now at: test.patch >- >- $ cd a >- $ hg qnew test2.patch >- >-qrefresh in subdir >- >- $ cd b >- $ echo a > a >- $ hg add a >- $ hg qrefresh >- >-pop/push -a in subdir >- >- $ hg qpop -a >- popping test2.patch >- popping test.patch >- patch queue now empty >- $ hg --traceback qpush -a >- applying test.patch >- applying test2.patch >- now at: test2.patch >- >- >-setting columns & formatted tests truncating (issue1912) >- >- $ COLUMNS=4 hg qseries --config ui.formatted=true >- test.patch >- test2.patch >- $ COLUMNS=20 hg qseries --config ui.formatted=true -vs >- 0 A test.patch: f... >- 1 A test2.patch: >- $ hg qpop >- popping test2.patch >- now at: test.patch >- $ hg qseries -vs >- 0 A test.patch: foo bar >- 1 U test2.patch: >- $ hg sum | grep mq >- mq: 1 applied, 1 unapplied >- $ hg qpush >- applying test2.patch >- now at: test2.patch >- $ hg sum | grep mq >- mq: 2 applied >- $ hg qapplied >- test.patch >- test2.patch >- $ hg qtop >- test2.patch >- >- >-prev >- >- $ hg qapp -1 >- test.patch >- >-next >- >- $ hg qunapp -1 >- all patches applied >- [1] >- >- $ hg qpop >- popping test2.patch >- now at: test.patch >- >-commit should fail >- >- $ hg commit >- abort: cannot commit over an applied mq patch >- [255] >- >-push should fail >- >- $ hg push ../../k >- pushing to ../../k >- abort: source has mq patches applied >- [255] >- >- >-import should fail >- >- $ hg st . >- $ echo foo >> ../a >- $ hg diff > ../../import.diff >- $ hg revert --no-backup ../a >- $ hg import ../../import.diff >- abort: cannot import over an applied patch >- [255] >- $ hg st >- >-import --no-commit should succeed >- >- $ hg import --no-commit ../../import.diff >- applying ../../import.diff >- $ hg st >- M a >- $ hg revert --no-backup ../a >- >- >-qunapplied >- >- $ hg qunapplied >- test2.patch >- >- >-qpush/qpop with index >- >- $ hg qnew test1b.patch >- $ echo 1b > 1b >- $ hg add 1b >- $ hg qrefresh >- $ hg qpush 2 >- applying test2.patch >- now at: test2.patch >- $ hg qpop 0 >- popping test2.patch >- popping test1b.patch >- now at: test.patch >- $ hg qpush test.patch+1 >- applying test1b.patch >- now at: test1b.patch >- $ hg qpush test.patch+2 >- applying test2.patch >- now at: test2.patch >- $ hg qpop test2.patch-1 >- popping test2.patch >- now at: test1b.patch >- $ hg qpop test2.patch-2 >- popping test1b.patch >- now at: test.patch >- $ hg qpush test1b.patch+1 >- applying test1b.patch >- applying test2.patch >- now at: test2.patch >- >- >-qpush --move >- >- $ hg qpop -a >- popping test2.patch >- popping test1b.patch >- popping test.patch >- patch queue now empty >- $ hg qguard test1b.patch -- -negguard >- $ hg qguard test2.patch -- +posguard >- $ hg qpush --move test2.patch # can't move guarded patch >- cannot push 'test2.patch' - guarded by ['+posguard'] >- [1] >- $ hg qselect posguard >- number of unguarded, unapplied patches has changed from 2 to 3 >- $ hg qpush --move test2.patch # move to front >- applying test2.patch >- now at: test2.patch >- $ hg qpush --move test1b.patch # negative guard unselected >- applying test1b.patch >- now at: test1b.patch >- $ hg qpush --move test.patch # noop move >- applying test.patch >- now at: test.patch >- $ hg qseries -v >- 0 A test2.patch >- 1 A test1b.patch >- 2 A test.patch >- $ hg qpop -a >- popping test.patch >- popping test1b.patch >- popping test2.patch >- patch queue now empty >- >-cleaning up >- >- $ hg qselect --none >- guards deactivated >- number of unguarded, unapplied patches has changed from 3 to 2 >- $ hg qguard --none test1b.patch >- $ hg qguard --none test2.patch >- $ hg qpush --move test.patch >- applying test.patch >- now at: test.patch >- $ hg qpush --move test1b.patch >- applying test1b.patch >- now at: test1b.patch >- $ hg qpush --move bogus # nonexistent patch >- abort: patch bogus not in series >- [255] >- $ hg qpush --move # no patch >- abort: please specify the patch to move >- [255] >- $ hg qpush --move test.patch # already applied >- abort: cannot push to a previous patch: test.patch >- [255] >- $ hg qpush >- applying test2.patch >- now at: test2.patch >- >- >-series after move >- >- $ cat `hg root`/.hg/patches/series >- test.patch >- test1b.patch >- test2.patch >- # comment >- >- >- >-pop, qapplied, qunapplied >- >- $ hg qseries -v >- 0 A test.patch >- 1 A test1b.patch >- 2 A test2.patch >- >-qapplied -1 test.patch >- >- $ hg qapplied -1 test.patch >- only one patch applied >- [1] >- >-qapplied -1 test1b.patch >- >- $ hg qapplied -1 test1b.patch >- test.patch >- >-qapplied -1 test2.patch >- >- $ hg qapplied -1 test2.patch >- test1b.patch >- >-qapplied -1 >- >- $ hg qapplied -1 >- test1b.patch >- >-qapplied >- >- $ hg qapplied >- test.patch >- test1b.patch >- test2.patch >- >-qapplied test1b.patch >- >- $ hg qapplied test1b.patch >- test.patch >- test1b.patch >- >-qunapplied -1 >- >- $ hg qunapplied -1 >- all patches applied >- [1] >- >-qunapplied >- >- $ hg qunapplied >- >-popping >- >- $ hg qpop >- popping test2.patch >- now at: test1b.patch >- >-qunapplied -1 >- >- $ hg qunapplied -1 >- test2.patch >- >-qunapplied >- >- $ hg qunapplied >- test2.patch >- >-qunapplied test2.patch >- >- $ hg qunapplied test2.patch >- >-qunapplied -1 test2.patch >- >- $ hg qunapplied -1 test2.patch >- all patches applied >- [1] >- >-popping -a >- >- $ hg qpop -a >- popping test1b.patch >- popping test.patch >- patch queue now empty >- >-qapplied >- >- $ hg qapplied >- >-qapplied -1 >- >- $ hg qapplied -1 >- no patches applied >- [1] >- $ hg qpush >- applying test.patch >- now at: test.patch >- >- >-push should succeed >- >- $ hg qpop -a >- popping test.patch >- patch queue now empty >- $ hg push ../../k >- pushing to ../../k >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- >- >-we want to start with some patches applied >- >- $ hg qpush -a >- applying test.patch >- applying test1b.patch >- applying test2.patch >- now at: test2.patch >- >-% pops all patches and succeeds >- >- $ hg qpop -a >- popping test2.patch >- popping test1b.patch >- popping test.patch >- patch queue now empty >- >-% does nothing and succeeds >- >- $ hg qpop -a >- no patches applied >- >-% fails - nothing else to pop >- >- $ hg qpop >- no patches applied >- [1] >- >-% pushes a patch and succeeds >- >- $ hg qpush >- applying test.patch >- now at: test.patch >- >-% pops a patch and succeeds >- >- $ hg qpop >- popping test.patch >- patch queue now empty >- >-% pushes up to test1b.patch and succeeds >- >- $ hg qpush test1b.patch >- applying test.patch >- applying test1b.patch >- now at: test1b.patch >- >-% does nothing and succeeds >- >- $ hg qpush test1b.patch >- qpush: test1b.patch is already at the top >- >-% does nothing and succeeds >- >- $ hg qpop test1b.patch >- qpop: test1b.patch is already at the top >- >-% fails - can't push to this patch >- >- $ hg qpush test.patch >- abort: cannot push to a previous patch: test.patch >- [255] >- >-% fails - can't pop to this patch >- >- $ hg qpop test2.patch >- abort: patch test2.patch is not applied >- [255] >- >-% pops up to test.patch and succeeds >- >- $ hg qpop test.patch >- popping test1b.patch >- now at: test.patch >- >-% pushes all patches and succeeds >- >- $ hg qpush -a >- applying test1b.patch >- applying test2.patch >- now at: test2.patch >- >-% does nothing and succeeds >- >- $ hg qpush -a >- all patches are currently applied >- >-% fails - nothing else to push >- >- $ hg qpush >- patch series already fully applied >- [1] >- >-% does nothing and succeeds >- >- $ hg qpush test2.patch >- qpush: test2.patch is already at the top >- >-strip >- >- $ cd ../../b >- $ echo x>x >- $ hg ci -Ama >- adding x >- $ hg strip tip >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- saved backup bundle to $TESTTMP/b/.hg/strip-backup/*-backup.hg (glob) >- $ hg unbundle .hg/strip-backup/* >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- (run 'hg update' to get a working copy) >- >- >-strip with local changes, should complain >- >- $ hg up >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo y>y >- $ hg add y >- $ hg strip tip >- abort: local changes found >- [255] >- >---force strip with local changes >- >- $ hg strip -f tip >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- saved backup bundle to $TESTTMP/b/.hg/strip-backup/*-backup.hg (glob) >- >- >-cd b; hg qrefresh >- >- $ hg init refresh >- $ cd refresh >- $ echo a > a >- $ hg ci -Ama >- adding a >- $ hg qnew -mfoo foo >- $ echo a >> a >- $ hg qrefresh >- $ mkdir b >- $ cd b >- $ echo f > f >- $ hg add f >- $ hg qrefresh >- $ cat ../.hg/patches/foo >- foo >- >- diff -r cb9a9f314b8b a >- --- a/a\t(?P<date>.*) (re) >- \+\+\+ b/a\t(?P<date>.*) (re) >- @@ -1,1 +1,2 @@ >- a >- +a >- diff -r cb9a9f314b8b b/f >- --- /dev/null\t(?P<date>.*) (re) >- \+\+\+ b/b/f\t(?P<date>.*) (re) >- @@ -0,0 +1,1 @@ >- +f >- >-hg qrefresh . >- >- $ hg qrefresh . >- $ cat ../.hg/patches/foo >- foo >- >- diff -r cb9a9f314b8b b/f >- --- /dev/null\t(?P<date>.*) (re) >- \+\+\+ b/b/f\t(?P<date>.*) (re) >- @@ -0,0 +1,1 @@ >- +f >- $ hg status >- M a >- >- >-qpush failure >- >- $ cd .. >- $ hg qrefresh >- $ hg qnew -mbar bar >- $ echo foo > foo >- $ echo bar > bar >- $ hg add foo bar >- $ hg qrefresh >- $ hg qpop -a >- popping bar >- popping foo >- patch queue now empty >- $ echo bar > foo >- $ hg qpush -a >- applying foo >- applying bar >- file foo already exists >- 1 out of 1 hunks FAILED -- saving rejects to file foo.rej >- patch failed, unable to continue (try -v) >- patch failed, rejects left in working dir >- errors during apply, please fix and refresh bar >- [2] >- $ hg st >- ? foo >- ? foo.rej >- >- >-mq tags >- >- $ hg log --template '{rev} {tags}\n' -r qparent:qtip >- 0 qparent >- 1 foo qbase >- 2 bar qtip tip >- >- >-bad node in status >- >- $ hg qpop >- popping bar >- now at: foo >- $ hg strip -qn tip >- $ hg tip >- changeset: 0:cb9a9f314b8b >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: a >- >- $ hg branches >- default 0:cb9a9f314b8b >- $ hg qpop >- no patches applied >- [1] >- >- $ cat >>$HGRCPATH <<EOF >- > [diff] >- > git = True >- > EOF >- $ cd .. >- $ hg init git >- $ cd git >- $ hg qinit >- >- $ hg qnew -m'new file' new >- $ echo foo > new >- $ chmod +x new >- $ hg add new >- $ hg qrefresh >- $ cat .hg/patches/new >- new file >- >- diff --git a/new b/new >- new file mode 100755 >- --- /dev/null >- +++ b/new >- @@ -0,0 +1,1 @@ >- +foo >- >- $ hg qnew -m'copy file' copy >- $ hg cp new copy >- $ hg qrefresh >- $ cat .hg/patches/copy >- copy file >- >- diff --git a/new b/copy >- copy from new >- copy to copy >- >- $ hg qpop >- popping copy >- now at: new >- $ hg qpush >- applying copy >- now at: copy >- $ hg qdiff >- diff --git a/new b/copy >- copy from new >- copy to copy >- $ cat >>$HGRCPATH <<EOF >- > [diff] >- > git = False >- > EOF >- $ hg qdiff --git >- diff --git a/new b/copy >- copy from new >- copy to copy >- $ cd .. >- >- >-test file addition in slow path >- >- $ hg init slow >- $ cd slow >- $ hg qinit >- $ echo foo > foo >- $ hg add foo >- $ hg ci -m 'add foo' >- $ hg qnew bar >- $ echo bar > bar >- $ hg add bar >- $ hg mv foo baz >- $ hg qrefresh --git >- $ hg up -C 0 >- 1 files updated, 0 files merged, 2 files removed, 0 files unresolved >- $ echo >> foo >- $ hg ci -m 'change foo' >- created new head >- $ hg up -C 1 >- 2 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg qrefresh --git >- $ cat .hg/patches/bar >- diff --git a/bar b/bar >- new file mode 100644 >- --- /dev/null >- +++ b/bar >- @@ -0,0 +1,1 @@ >- +bar >- diff --git a/foo b/baz >- rename from foo >- rename to baz >- $ hg log -v --template '{rev} {file_copies}\n' -r . >- 2 baz (foo) >- $ hg qrefresh --git >- $ cat .hg/patches/bar >- diff --git a/bar b/bar >- new file mode 100644 >- --- /dev/null >- +++ b/bar >- @@ -0,0 +1,1 @@ >- +bar >- diff --git a/foo b/baz >- rename from foo >- rename to baz >- $ hg log -v --template '{rev} {file_copies}\n' -r . >- 2 baz (foo) >- $ hg qrefresh >- $ grep 'diff --git' .hg/patches/bar >- diff --git a/bar b/bar >- diff --git a/foo b/baz >- >- >-test file move chains in the slow path >- >- $ hg up -C 1 >- 1 files updated, 0 files merged, 2 files removed, 0 files unresolved >- $ echo >> foo >- $ hg ci -m 'change foo again' >- $ hg up -C 2 >- 2 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg mv bar quux >- $ hg mv baz bleh >- $ hg qrefresh --git >- $ cat .hg/patches/bar >- diff --git a/foo b/bleh >- rename from foo >- rename to bleh >- diff --git a/quux b/quux >- new file mode 100644 >- --- /dev/null >- +++ b/quux >- @@ -0,0 +1,1 @@ >- +bar >- $ hg log -v --template '{rev} {file_copies}\n' -r . >- 3 bleh (foo) >- $ hg mv quux fred >- $ hg mv bleh barney >- $ hg qrefresh --git >- $ cat .hg/patches/bar >- diff --git a/foo b/barney >- rename from foo >- rename to barney >- diff --git a/fred b/fred >- new file mode 100644 >- --- /dev/null >- +++ b/fred >- @@ -0,0 +1,1 @@ >- +bar >- $ hg log -v --template '{rev} {file_copies}\n' -r . >- 3 barney (foo) >- >- >-refresh omitting an added file >- >- $ hg qnew baz >- $ echo newfile > newfile >- $ hg add newfile >- $ hg qrefresh >- $ hg st -A newfile >- C newfile >- $ hg qrefresh -X newfile >- $ hg st -A newfile >- A newfile >- $ hg revert newfile >- $ rm newfile >- $ hg qpop >- popping baz >- now at: bar >- $ hg qdel baz >- >- >-create a git patch >- >- $ echo a > alexander >- $ hg add alexander >- $ hg qnew -f --git addalexander >- $ grep diff .hg/patches/addalexander >- diff --git a/alexander b/alexander >- >- >-create a git binary patch >- >- $ cat > writebin.py <<EOF >- > import sys >- > path = sys.argv[1] >- > open(path, 'wb').write('BIN\x00ARY') >- > EOF >- $ python writebin.py bucephalus >- >- $ python "$TESTDIR/md5sum.py" bucephalus >- 8ba2a2f3e77b55d03051ff9c24ad65e7 bucephalus >- $ hg add bucephalus >- $ hg qnew -f --git addbucephalus >- $ grep diff .hg/patches/addbucephalus >- diff --git a/bucephalus b/bucephalus >- >- >-check binary patches can be popped and pushed >- >- $ hg qpop >- popping addbucephalus >- now at: addalexander >- $ test -f bucephalus && echo % bucephalus should not be there >- [1] >- $ hg qpush >- applying addbucephalus >- now at: addbucephalus >- $ test -f bucephalus >- $ python "$TESTDIR/md5sum.py" bucephalus >- 8ba2a2f3e77b55d03051ff9c24ad65e7 bucephalus >- >- >- >-strip again >- >- $ cd .. >- $ hg init strip >- $ cd strip >- $ touch foo >- $ hg add foo >- $ hg ci -m 'add foo' >- $ echo >> foo >- $ hg ci -m 'change foo 1' >- $ hg up -C 0 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo 1 >> foo >- $ hg ci -m 'change foo 2' >- created new head >- $ HGMERGE=true hg merge >- merging foo >- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg ci -m merge >- $ hg log >- changeset: 3:99615015637b >- tag: tip >- parent: 2:20cbbe65cff7 >- parent: 1:d2871fc282d4 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: merge >- >- changeset: 2:20cbbe65cff7 >- parent: 0:53245c60e682 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: change foo 2 >- >- changeset: 1:d2871fc282d4 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: change foo 1 >- >- changeset: 0:53245c60e682 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: add foo >- >- $ hg strip 1 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- saved backup bundle to $TESTTMP/b/strip/.hg/strip-backup/*-backup.hg (glob) >- $ checkundo strip >- $ hg log >- changeset: 1:20cbbe65cff7 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: change foo 2 >- >- changeset: 0:53245c60e682 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: add foo >- >- $ cd .. >- >- >-qclone >- >- $ qlog() >- > { >- > echo 'main repo:' >- > hg log --template ' rev {rev}: {desc}\n' >- > echo 'patch repo:' >- > hg -R .hg/patches log --template ' rev {rev}: {desc}\n' >- > } >- $ hg init qclonesource >- $ cd qclonesource >- $ echo foo > foo >- $ hg add foo >- $ hg ci -m 'add foo' >- $ hg qinit >- $ hg qnew patch1 >- $ echo bar >> foo >- $ hg qrefresh -m 'change foo' >- $ cd .. >- >- >-repo with unversioned patch dir >- >- $ hg qclone qclonesource failure >- abort: versioned patch repository not found (see init --mq) >- [255] >- >- $ cd qclonesource >- $ hg qinit -c >- adding .hg/patches/patch1 >- $ hg qci -m checkpoint >- $ qlog >- main repo: >- rev 1: change foo >- rev 0: add foo >- patch repo: >- rev 0: checkpoint >- $ cd .. >- >- >-repo with patches applied >- >- $ hg qclone qclonesource qclonedest >- updating to branch default >- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ cd qclonedest >- $ qlog >- main repo: >- rev 0: add foo >- patch repo: >- rev 0: checkpoint >- $ cd .. >- >- >-repo with patches unapplied >- >- $ cd qclonesource >- $ hg qpop -a >- popping patch1 >- patch queue now empty >- $ qlog >- main repo: >- rev 0: add foo >- patch repo: >- rev 0: checkpoint >- $ cd .. >- $ hg qclone qclonesource qclonedest2 >- updating to branch default >- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ cd qclonedest2 >- $ qlog >- main repo: >- rev 0: add foo >- patch repo: >- rev 0: checkpoint >- $ cd .. >- >- >-Issue1033: test applying on an empty file >- >- $ hg init empty >- $ cd empty >- $ touch a >- $ hg ci -Am addempty >- adding a >- $ echo a > a >- $ hg qnew -f -e changea >- $ hg qpop >- popping changea >- patch queue now empty >- $ hg qpush >- applying changea >- now at: changea >- $ cd .. >- >- >-test qpush with --force, issue1087 >- >- $ hg init forcepush >- $ cd forcepush >- $ echo hello > hello.txt >- $ echo bye > bye.txt >- $ hg ci -Ama >- adding bye.txt >- adding hello.txt >- $ hg qnew -d '0 0' empty >- $ hg qpop >- popping empty >- patch queue now empty >- $ echo world >> hello.txt >- >- >-qpush should fail, local changes >- >- $ hg qpush >- abort: local changes found, refresh first >- [255] >- >- >-apply force, should not discard changes with empty patch >- >- $ hg qpush -f >- applying empty >- patch empty is empty >- now at: empty >- $ hg diff --config diff.nodates=True >- diff -r bf5fc3f07a0a hello.txt >- --- a/hello.txt >- +++ b/hello.txt >- @@ -1,1 +1,2 @@ >- hello >- +world >- $ hg qdiff --config diff.nodates=True >- diff -r 9ecee4f634e3 hello.txt >- --- a/hello.txt >- +++ b/hello.txt >- @@ -1,1 +1,2 @@ >- hello >- +world >- $ hg log -l1 -p >- changeset: 1:bf5fc3f07a0a >- tag: empty >- tag: qbase >- tag: qtip >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: imported patch empty >- >- >- $ hg qref -d '0 0' >- $ hg qpop >- popping empty >- patch queue now empty >- $ echo universe >> hello.txt >- $ echo universe >> bye.txt >- >- >-qpush should fail, local changes >- >- $ hg qpush >- abort: local changes found, refresh first >- [255] >- >- >-apply force, should discard changes in hello, but not bye >- >- $ hg qpush -f >- applying empty >- now at: empty >- $ hg st >- M bye.txt >- $ hg diff --config diff.nodates=True >- diff -r ba252371dbc1 bye.txt >- --- a/bye.txt >- +++ b/bye.txt >- @@ -1,1 +1,2 @@ >- bye >- +universe >- $ hg qdiff --config diff.nodates=True >- diff -r 9ecee4f634e3 bye.txt >- --- a/bye.txt >- +++ b/bye.txt >- @@ -1,1 +1,2 @@ >- bye >- +universe >- diff -r 9ecee4f634e3 hello.txt >- --- a/hello.txt >- +++ b/hello.txt >- @@ -1,1 +1,3 @@ >- hello >- +world >- +universe >- >- >-test popping revisions not in working dir ancestry >- >- $ hg qseries -v >- 0 A empty >- $ hg up qparent >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg qpop >- popping empty >- patch queue now empty >- >- $ cd .. >- $ hg init deletion-order >- $ cd deletion-order >- >- $ touch a >- $ hg ci -Aqm0 >- >- $ hg qnew rename-dir >- $ hg rm a >- $ hg qrefresh >- >- $ mkdir a b >- $ touch a/a b/b >- $ hg add -q a b >- $ hg qrefresh >- >- >-test popping must remove files added in subdirectories first >- >- $ hg qpop >- popping rename-dir >- patch queue now empty >- $ cd .. >- >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-parentrevspec.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-parentrevspec.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-parentrevspec.t.err >@@ -1,3 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > > $ commit() > > { >@@ -17,89 +19,3 @@ > > > > hg commit -qAm "$msg" > > } >- $ hg init repo >- $ cd repo >- $ echo '[extensions]' > .hg/hgrc >- $ echo 'parentrevspec =' >> .hg/hgrc >- $ commit '0: add foo' >- $ commit '1: change foo 1' >- $ commit '2: change foo 2a' >- $ commit '3: change foo 3a' >- $ commit '4: change foo 2b' 1 >- $ commit '5: merge' 3 4 >- $ commit '6: change foo again' >- $ hg log --template '{rev}:{node|short} {parents}\n' >- 6:755d1e0d79e9 >- 5:9ce2ce29723a 3:a3e00c7dbf11 4:bb4475edb621 >- 4:bb4475edb621 1:5d953a1917d1 >- 3:a3e00c7dbf11 >- 2:befc7d89d081 >- 1:5d953a1917d1 >- 0:837088b6e1d9 >- $ echo >- >- $ lookup() >- > { >- > for rev in "$@"; do >- > printf "$rev: " >- > hg id -nr $rev >- > done >- > true >- > } >- $ tipnode=`hg id -ir tip` >- >-should work with tag/branch/node/rev >- >- $ for r in tip default $tipnode 6; do >- > lookup "$r^" >- > done >- tip^: 5 >- default^: 5 >- 755d1e0d79e9^: 5 >- 6^: 5 >- $ echo >- >- >-some random lookups >- >- $ lookup "6^^" "6^^^" "6^^^^" "6^^^^^" "6^^^^^^" "6^1" "6^2" "6^^2" "6^1^2" "6^^3" >- 6^^: 3 >- 6^^^: 2 >- 6^^^^: 1 >- 6^^^^^: 0 >- 6^^^^^^: -1 >- 6^1: 5 >- 6^2: abort: unknown revision '6^2'! >- 6^^2: 4 >- 6^1^2: 4 >- 6^^3: abort: unknown revision '6^^3'! >- $ lookup "6~" "6~1" "6~2" "6~3" "6~4" "6~5" "6~42" "6~1^2" "6~1^2~2" >- 6~: abort: unknown revision '6~'! >- 6~1: 5 >- 6~2: 3 >- 6~3: 2 >- 6~4: 1 >- 6~5: 0 >- 6~42: -1 >- 6~1^2: 4 >- 6~1^2~2: 0 >- $ echo >- >- >-with a tag "6^" pointing to rev 1 >- >- $ hg tag -l -r 1 "6^" >- $ lookup "6^" "6^1" "6~1" "6^^" >- 6^: 1 >- 6^1: 5 >- 6~1: 5 >- 6^^: 3 >- $ echo >- >- >-with a tag "foo^bar" pointing to rev 2 >- >- $ hg tag -l -r 2 "foo^bar" >- $ lookup "foo^bar" "foo^bar^" >- foo^bar: 2 >- foo^bar^: abort: unknown revision 'foo^bar^'! >!....... >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-pull-branch.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-pull-branch.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-pull-branch.t.err >@@ -1,136 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ hg init t >- $ cd t >- $ echo 1 > foo >- $ hg ci -Am1 # 0 >- adding foo >- $ hg branch branchA >- marked working directory as branch branchA >- $ echo a1 > foo >- $ hg ci -ma1 # 1 >- >- $ cd .. >- $ hg init tt >- $ cd tt >- $ hg pull ../t >- pulling from ../t >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 2 changesets with 2 changes to 1 files >- (run 'hg update' to get a working copy) >- $ hg up branchA >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >- $ cd ../t >- $ echo a2 > foo >- $ hg ci -ma2 # 2 >- >-Create branch B: >- >- $ hg up 0 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg branch branchB >- marked working directory as branch branchB >- $ echo b1 > foo >- $ hg ci -mb1 # 3 >- >- $ cd ../tt >- >-A new branch is there >- >- $ hg pull -u ../t >- pulling from ../t >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 2 changesets with 2 changes to 1 files (+1 heads) >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-Develop both branches: >- >- $ cd ../t >- $ hg up branchA >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo a3 > foo >- $ hg ci -ma3 # 4 >- $ hg up branchB >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo b2 > foo >- $ hg ci -mb2 # 5 >- >- $ cd ../tt >- >-Should succeed, no new heads: >- >- $ hg pull -u ../t >- pulling from ../t >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 2 changesets with 2 changes to 1 files >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-Add a head on other branch: >- >- $ cd ../t >- $ hg up branchA >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo a4 > foo >- $ hg ci -ma4 # 6 >- $ hg up branchB >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo b3.1 > foo >- $ hg ci -m b3.1 # 7 >- $ hg up 5 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo b3.2 > foo >- $ hg ci -m b3.2 # 8 >- created new head >- >- $ cd ../tt >- >-Should succeed because there is only one head on our branch: >- >- $ hg pull -u ../t >- pulling from ../t >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 3 changesets with 3 changes to 1 files (+1 heads) >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >- $ cd ../t >- $ hg up -C branchA >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo a5.1 > foo >- $ hg ci -ma5.1 # 9 >- $ hg up 6 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo a5.2 > foo >- $ hg ci -ma5.2 # 10 >- created new head >- $ hg up 7 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo b4.1 > foo >- $ hg ci -m b4.1 # 11 >- $ hg up -C 8 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo b4.2 > foo >- $ hg ci -m b4.2 # 12 >- >- $ cd ../tt >- >- $ hg pull -u ../t >- pulling from ../t >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 4 changesets with 4 changes to 1 files (+1 heads) >- not updating, since new heads added >- (run 'hg heads' to see heads, 'hg merge' to merge) >- >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-push-r.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-push-r.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-push-r.t.err >@@ -1,230 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ hg init test >- $ cd test >- >- $ cat >>afile <<EOF >- > 0 >- > EOF >- $ hg add afile >- $ hg commit -m "0.0" >- >- $ cat >>afile <<EOF >- > 1 >- > EOF >- $ hg commit -m "0.1" >- >- $ cat >>afile <<EOF >- > 2 >- > EOF >- $ hg commit -m "0.2" >- >- $ cat >>afile <<EOF >- > 3 >- > EOF >- $ hg commit -m "0.3" >- >- $ hg update -C 0 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >- $ cat >>afile <<EOF >- > 1 >- > EOF >- $ hg commit -m "1.1" >- created new head >- >- $ cat >>afile <<EOF >- > 2 >- > EOF >- $ hg commit -m "1.2" >- >- $ cat >fred <<EOF >- > a line >- > EOF >- $ cat >>afile <<EOF >- > 3 >- > EOF >- $ hg add fred >- $ hg commit -m "1.3" >- >- $ hg mv afile adifferentfile >- $ hg commit -m "1.3m" >- >- $ hg update -C 3 >- 1 files updated, 0 files merged, 2 files removed, 0 files unresolved >- >- $ hg mv afile anotherfile >- $ hg commit -m "0.3m" >- >- $ hg debugindex .hg/store/data/afile.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 3 0 0 362fef284ce2 000000000000 000000000000 >- 1 3 5 1 1 125144f7e028 362fef284ce2 000000000000 >- 2 8 7 2 2 4c982badb186 125144f7e028 000000000000 >- 3 15 9 3 3 19b1fc555737 4c982badb186 000000000000 >- >- $ hg debugindex .hg/store/data/adifferentfile.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 75 0 7 2565f3199a74 000000000000 000000000000 >- >- $ hg debugindex .hg/store/data/anotherfile.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 75 0 8 2565f3199a74 000000000000 000000000000 >- >- $ hg debugindex .hg/store/data/fred.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 8 0 6 12ab3bcc5ea4 000000000000 000000000000 >- >- $ hg debugindex .hg/store/00manifest.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 48 0 0 43eadb1d2d06 000000000000 000000000000 >- 1 48 48 1 1 8b89697eba2c 43eadb1d2d06 000000000000 >- 2 96 48 2 2 626a32663c2f 8b89697eba2c 000000000000 >- 3 144 48 3 3 f54c32f13478 626a32663c2f 000000000000 >- 4 192 58 3 6 de68e904d169 626a32663c2f 000000000000 >- 5 250 68 3 7 09bb521d218d de68e904d169 000000000000 >- 6 318 54 6 8 1fde233dfb0f f54c32f13478 000000000000 >- >- $ hg verify >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 4 files, 9 changesets, 7 total revisions >- >- $ cd .. >- >- $ for i in 0 1 2 3 4 5 6 7 8; do >- > echo >- > mkdir test-"$i" >- > hg --cwd test-"$i" init >- > hg -R test push -r "$i" test-"$i" >- > cd test-"$i" >- > hg verify >- > cd .. >- > done >- >- pushing to test-0 >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 1 files, 1 changesets, 1 total revisions >- >- pushing to test-1 >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 2 changesets with 2 changes to 1 files >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 1 files, 2 changesets, 2 total revisions >- >- pushing to test-2 >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 3 changesets with 3 changes to 1 files >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 1 files, 3 changesets, 3 total revisions >- >- pushing to test-3 >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 4 changesets with 4 changes to 1 files >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 1 files, 4 changesets, 4 total revisions >- >- pushing to test-4 >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 2 changesets with 2 changes to 1 files >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 1 files, 2 changesets, 2 total revisions >- >- pushing to test-5 >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 3 changesets with 3 changes to 1 files >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 1 files, 3 changesets, 3 total revisions >- >- pushing to test-6 >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 4 changesets with 5 changes to 2 files >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 2 files, 4 changesets, 5 total revisions >- >- pushing to test-7 >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 5 changesets with 6 changes to 3 files >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 3 files, 5 changesets, 6 total revisions >- >- pushing to test-8 >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 5 changesets with 5 changes to 2 files >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 2 files, 5 changesets, 5 total revisions >- >- $ cd test-8 >- >- $ hg pull ../test-7 >- pulling from ../test-7 >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 4 changesets with 2 changes to 3 files (+1 heads) >- (run 'hg heads' to see heads, 'hg merge' to merge) >- >- $ hg verify >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 4 files, 9 changesets, 7 total revisions >- >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-parse-date.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-parse-date.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-parse-date.t.err >@@ -1,240 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > This runs with TZ="GMT" > > $ hg init >- $ echo "test-parse-date" > a >- $ hg add a >- $ hg ci -d "2006-02-01 13:00:30" -m "rev 0" >- $ echo "hi!" >> a >- $ hg ci -d "2006-02-01 13:00:30 -0500" -m "rev 1" >- $ hg tag -d "2006-04-15 13:30" "Hi" >- $ hg backout --merge -d "2006-04-15 13:30 +0200" -m "rev 3" 1 >- reverting a >- created new head >- changeset 3:107ce1ee2b43 backs out changeset 1:25a1420a55f8 >- merging with changeset 3:107ce1ee2b43 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg ci -d "1150000000 14400" -m "rev 4 (merge)" >- $ echo "fail" >> a >- $ hg ci -d "should fail" -m "fail" >- abort: invalid date: 'should fail' >- [255] >- $ hg ci -d "100000000000000000 1400" -m "fail" >- abort: date exceeds 32 bits: 100000000000000000 >- [255] >- $ hg ci -d "100000 1400000" -m "fail" >- abort: impossible time zone offset: 1400000 >- [255] >- >-Check with local timezone other than GMT and with DST >- >- $ TZ="PST+8PDT" >- $ export TZ >- >-PST=UTC-8 / PDT=UTC-7 >- >- $ hg debugrebuildstate >- $ echo "a" > a >- $ hg ci -d "2006-07-15 13:30" -m "summer@UTC-7" >- $ hg debugrebuildstate >- $ echo "b" > a >- $ hg ci -d "2006-07-15 13:30 +0500" -m "summer@UTC+5" >- $ hg debugrebuildstate >- $ echo "c" > a >- $ hg ci -d "2006-01-15 13:30" -m "winter@UTC-8" >- $ hg debugrebuildstate >- $ echo "d" > a >- $ hg ci -d "2006-01-15 13:30 +0500" -m "winter@UTC+5" >- $ hg log --template '{date|date}\n' >- Sun Jan 15 13:30:00 2006 +0500 >- Sun Jan 15 13:30:00 2006 -0800 >- Sat Jul 15 13:30:00 2006 +0500 >- Sat Jul 15 13:30:00 2006 -0700 >- Sun Jun 11 00:26:40 2006 -0400 >- Sat Apr 15 13:30:00 2006 +0200 >- Sat Apr 15 13:30:00 2006 +0000 >- Wed Feb 01 13:00:30 2006 -0500 >- Wed Feb 01 13:00:30 2006 +0000 >- >-Test issue1014 (fractional timezones) >- >- $ hg debugdate "1000000000 -16200" # 0430 >- internal: 1000000000 -16200 >- standard: Sun Sep 09 06:16:40 2001 +0430 >- $ hg debugdate "1000000000 -15300" # 0415 >- internal: 1000000000 -15300 >- standard: Sun Sep 09 06:01:40 2001 +0415 >- $ hg debugdate "1000000000 -14400" # 0400 >- internal: 1000000000 -14400 >- standard: Sun Sep 09 05:46:40 2001 +0400 >- $ hg debugdate "1000000000 0" # GMT >- internal: 1000000000 0 >- standard: Sun Sep 09 01:46:40 2001 +0000 >- $ hg debugdate "1000000000 14400" # -0400 >- internal: 1000000000 14400 >- standard: Sat Sep 08 21:46:40 2001 -0400 >- $ hg debugdate "1000000000 15300" # -0415 >- internal: 1000000000 15300 >- standard: Sat Sep 08 21:31:40 2001 -0415 >- $ hg debugdate "1000000000 16200" # -0430 >- internal: 1000000000 16200 >- standard: Sat Sep 08 21:16:40 2001 -0430 >- $ hg debugdate "Sat Sep 08 21:16:40 2001 +0430" >- internal: 999967600 -16200 >- standard: Sat Sep 08 21:16:40 2001 +0430 >- $ hg debugdate "Sat Sep 08 21:16:40 2001 -0430" >- internal: 1000000000 16200 >- standard: Sat Sep 08 21:16:40 2001 -0430 >- >-Test 12-hours times >- >- $ hg debugdate "2006-02-01 1:00:30PM +0000" >- internal: 1138798830 0 >- standard: Wed Feb 01 13:00:30 2006 +0000 >- $ hg debugdate "1:00:30PM" > /dev/null >- >-Test date formats with '>' or '<' accompanied by space characters >- >- $ hg log -d '>' --template '{date|date}\n' >- Sun Jan 15 13:30:00 2006 +0500 >- Sun Jan 15 13:30:00 2006 -0800 >- Sat Jul 15 13:30:00 2006 +0500 >- Sat Jul 15 13:30:00 2006 -0700 >- Sun Jun 11 00:26:40 2006 -0400 >- Sat Apr 15 13:30:00 2006 +0200 >- Sat Apr 15 13:30:00 2006 +0000 >- Wed Feb 01 13:00:30 2006 -0500 >- Wed Feb 01 13:00:30 2006 +0000 >- $ hg log -d '<' hg log -d '>' --template '{date|date}\n' >- >- $ hg log -d ' >' --template '{date|date}\n' >- Sun Jan 15 13:30:00 2006 +0500 >- Sun Jan 15 13:30:00 2006 -0800 >- Sat Jul 15 13:30:00 2006 +0500 >- Sat Jul 15 13:30:00 2006 -0700 >- Sun Jun 11 00:26:40 2006 -0400 >- Sat Apr 15 13:30:00 2006 +0200 >- Sat Apr 15 13:30:00 2006 +0000 >- Wed Feb 01 13:00:30 2006 -0500 >- Wed Feb 01 13:00:30 2006 +0000 >- $ hg log -d ' <' --template '{date|date}\n' >- >- $ hg log -d '> ' --template '{date|date}\n' >- Sun Jan 15 13:30:00 2006 +0500 >- Sun Jan 15 13:30:00 2006 -0800 >- Sat Jul 15 13:30:00 2006 +0500 >- Sat Jul 15 13:30:00 2006 -0700 >- Sun Jun 11 00:26:40 2006 -0400 >- Sat Apr 15 13:30:00 2006 +0200 >- Sat Apr 15 13:30:00 2006 +0000 >- Wed Feb 01 13:00:30 2006 -0500 >- Wed Feb 01 13:00:30 2006 +0000 >- $ hg log -d '< ' --template '{date|date}\n' >- >- $ hg log -d ' > ' --template '{date|date}\n' >- Sun Jan 15 13:30:00 2006 +0500 >- Sun Jan 15 13:30:00 2006 -0800 >- Sat Jul 15 13:30:00 2006 +0500 >- Sat Jul 15 13:30:00 2006 -0700 >- Sun Jun 11 00:26:40 2006 -0400 >- Sat Apr 15 13:30:00 2006 +0200 >- Sat Apr 15 13:30:00 2006 +0000 >- Wed Feb 01 13:00:30 2006 -0500 >- Wed Feb 01 13:00:30 2006 +0000 >- $ hg log -d ' < ' --template '{date|date}\n' >- >- $ hg log -d '>02/01' --template '{date|date}\n' >- $ hg log -d '<02/01' --template '{date|date}\n' >- Sun Jan 15 13:30:00 2006 +0500 >- Sun Jan 15 13:30:00 2006 -0800 >- Sat Jul 15 13:30:00 2006 +0500 >- Sat Jul 15 13:30:00 2006 -0700 >- Sun Jun 11 00:26:40 2006 -0400 >- Sat Apr 15 13:30:00 2006 +0200 >- Sat Apr 15 13:30:00 2006 +0000 >- Wed Feb 01 13:00:30 2006 -0500 >- Wed Feb 01 13:00:30 2006 +0000 >- >- $ hg log -d ' >02/01' --template '{date|date}\n' >- $ hg log -d ' <02/01' --template '{date|date}\n' >- Sun Jan 15 13:30:00 2006 +0500 >- Sun Jan 15 13:30:00 2006 -0800 >- Sat Jul 15 13:30:00 2006 +0500 >- Sat Jul 15 13:30:00 2006 -0700 >- Sun Jun 11 00:26:40 2006 -0400 >- Sat Apr 15 13:30:00 2006 +0200 >- Sat Apr 15 13:30:00 2006 +0000 >- Wed Feb 01 13:00:30 2006 -0500 >- Wed Feb 01 13:00:30 2006 +0000 >- >- $ hg log -d '> 02/01' --template '{date|date}\n' >- $ hg log -d '< 02/01' --template '{date|date}\n' >- Sun Jan 15 13:30:00 2006 +0500 >- Sun Jan 15 13:30:00 2006 -0800 >- Sat Jul 15 13:30:00 2006 +0500 >- Sat Jul 15 13:30:00 2006 -0700 >- Sun Jun 11 00:26:40 2006 -0400 >- Sat Apr 15 13:30:00 2006 +0200 >- Sat Apr 15 13:30:00 2006 +0000 >- Wed Feb 01 13:00:30 2006 -0500 >- Wed Feb 01 13:00:30 2006 +0000 >- >- $ hg log -d ' > 02/01' --template '{date|date}\n' >- $ hg log -d ' < 02/01' --template '{date|date}\n' >- Sun Jan 15 13:30:00 2006 +0500 >- Sun Jan 15 13:30:00 2006 -0800 >- Sat Jul 15 13:30:00 2006 +0500 >- Sat Jul 15 13:30:00 2006 -0700 >- Sun Jun 11 00:26:40 2006 -0400 >- Sat Apr 15 13:30:00 2006 +0200 >- Sat Apr 15 13:30:00 2006 +0000 >- Wed Feb 01 13:00:30 2006 -0500 >- Wed Feb 01 13:00:30 2006 +0000 >- >- $ hg log -d '>02/01 ' --template '{date|date}\n' >- $ hg log -d '<02/01 ' --template '{date|date}\n' >- Sun Jan 15 13:30:00 2006 +0500 >- Sun Jan 15 13:30:00 2006 -0800 >- Sat Jul 15 13:30:00 2006 +0500 >- Sat Jul 15 13:30:00 2006 -0700 >- Sun Jun 11 00:26:40 2006 -0400 >- Sat Apr 15 13:30:00 2006 +0200 >- Sat Apr 15 13:30:00 2006 +0000 >- Wed Feb 01 13:00:30 2006 -0500 >- Wed Feb 01 13:00:30 2006 +0000 >- >- $ hg log -d ' >02/01 ' --template '{date|date}\n' >- $ hg log -d ' <02/01 ' --template '{date|date}\n' >- Sun Jan 15 13:30:00 2006 +0500 >- Sun Jan 15 13:30:00 2006 -0800 >- Sat Jul 15 13:30:00 2006 +0500 >- Sat Jul 15 13:30:00 2006 -0700 >- Sun Jun 11 00:26:40 2006 -0400 >- Sat Apr 15 13:30:00 2006 +0200 >- Sat Apr 15 13:30:00 2006 +0000 >- Wed Feb 01 13:00:30 2006 -0500 >- Wed Feb 01 13:00:30 2006 +0000 >- >- $ hg log -d '> 02/01 ' --template '{date|date}\n' >- $ hg log -d '< 02/01 ' --template '{date|date}\n' >- Sun Jan 15 13:30:00 2006 +0500 >- Sun Jan 15 13:30:00 2006 -0800 >- Sat Jul 15 13:30:00 2006 +0500 >- Sat Jul 15 13:30:00 2006 -0700 >- Sun Jun 11 00:26:40 2006 -0400 >- Sat Apr 15 13:30:00 2006 +0200 >- Sat Apr 15 13:30:00 2006 +0000 >- Wed Feb 01 13:00:30 2006 -0500 >- Wed Feb 01 13:00:30 2006 +0000 >- >- $ hg log -d ' > 02/01 ' --template '{date|date}\n' >- $ hg log -d ' < 02/01 ' --template '{date|date}\n' >- Sun Jan 15 13:30:00 2006 +0500 >- Sun Jan 15 13:30:00 2006 -0800 >- Sat Jul 15 13:30:00 2006 +0500 >- Sat Jul 15 13:30:00 2006 -0700 >- Sun Jun 11 00:26:40 2006 -0400 >- Sat Apr 15 13:30:00 2006 +0200 >- Sat Apr 15 13:30:00 2006 +0000 >- Wed Feb 01 13:00:30 2006 -0500 >- Wed Feb 01 13:00:30 2006 +0000 >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-push-warn.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-push-warn.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-push-warn.t.err >@@ -1,701 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ echo "[extensions]" >> $HGRCPATH >- $ echo "graphlog=" >> $HGRCPATH >- >- $ mkdir a >- $ cd a >- $ hg init >- $ echo foo > t1 >- $ hg add t1 >- $ hg commit -m "1" >- >- $ cd .. >- $ hg clone a b >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >- $ cd a >- $ echo foo > t2 >- $ hg add t2 >- $ hg commit -m "2" >- >- $ cd ../b >- $ echo foo > t3 >- $ hg add t3 >- $ hg commit -m "3" >- >- $ hg push ../a >- pushing to ../a >- searching for changes >- abort: push creates new remote heads on branch 'default'! >- (you should pull and merge or use push -f to force) >- [255] >- >- $ hg pull ../a >- pulling from ../a >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files (+1 heads) >- (run 'hg heads' to see heads, 'hg merge' to merge) >- >- $ hg push ../a >- pushing to ../a >- searching for changes >- abort: push creates new remote heads on branch 'default'! >- (did you forget to merge? use push -f to force) >- [255] >- >- $ hg merge >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- >- $ hg commit -m "4" >- $ hg push ../a >- pushing to ../a >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 2 changesets with 1 changes to 1 files >- >- $ cd .. >- >- $ hg init c >- $ cd c >- $ for i in 0 1 2; do >- > echo $i >> foo >- > hg ci -Am $i >- > done >- adding foo >- $ cd .. >- >- $ hg clone c d >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >- $ cd d >- $ for i in 0 1; do >- > hg co -C $i >- > echo d-$i >> foo >- > hg ci -m d-$i >- > done >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- created new head >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- created new head >- >- $ HGMERGE=true hg merge 3 >- merging foo >- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- >- $ hg ci -m c-d >- >- $ hg push ../c >- pushing to ../c >- searching for changes >- abort: push creates new remote heads on branch 'default'! >- (did you forget to merge? use push -f to force) >- [255] >- >- $ hg push -r 2 ../c >- pushing to ../c >- searching for changes >- no changes found >- >- $ hg push -r 3 ../c >- pushing to ../c >- searching for changes >- abort: push creates new remote heads on branch 'default'! >- (did you forget to merge? use push -f to force) >- [255] >- >- $ hg push -r 3 -r 4 ../c >- pushing to ../c >- searching for changes >- abort: push creates new remote heads on branch 'default'! >- (did you forget to merge? use push -f to force) >- [255] >- >- $ hg push -f -r 3 -r 4 ../c >- pushing to ../c >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 2 changesets with 2 changes to 1 files (+2 heads) >- >- $ hg push -r 5 ../c >- pushing to ../c >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files (-1 heads) >- >- $ hg in ../c >- comparing with ../c >- searching for changes >- no changes found >- [1] >- >- >-Issue450: push -r warns about remote head creation even if no heads >-will be created >- >- $ hg init ../e >- $ hg push -r 0 ../e >- pushing to ../e >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- >- $ hg push -r 1 ../e >- pushing to ../e >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- >- $ cd .. >- >- >-Issue736: named branches are not considered for detection of >-unmerged heads in "hg push" >- >- $ hg init f >- $ cd f >- $ hg -q branch a >- $ echo 0 > foo >- $ hg -q ci -Am 0 >- $ echo 1 > foo >- $ hg -q ci -m 1 >- $ hg -q up 0 >- $ echo 2 > foo >- $ hg -q ci -m 2 >- $ hg -q up 0 >- $ hg -q branch b >- $ echo 3 > foo >- $ hg -q ci -m 3 >- $ cd .. >- >- $ hg -q clone f g >- $ cd g >- >-Push on existing branch and new branch: >- >- $ hg -q up 1 >- $ echo 4 > foo >- $ hg -q ci -m 4 >- $ hg -q up 0 >- $ echo 5 > foo >- $ hg -q branch c >- $ hg -q ci -m 5 >- >- $ hg push ../f >- pushing to ../f >- searching for changes >- abort: push creates new remote branches: c! >- (use 'hg push --new-branch' to create new remote branches) >- [255] >- >- $ hg push -r 4 -r 5 ../f >- pushing to ../f >- searching for changes >- abort: push creates new remote branches: c! >- (use 'hg push --new-branch' to create new remote branches) >- [255] >- >- >-Multiple new branches: >- >- $ hg -q branch d >- $ echo 6 > foo >- $ hg -q ci -m 6 >- >- $ hg push ../f >- pushing to ../f >- searching for changes >- abort: push creates new remote branches: c, d! >- (use 'hg push --new-branch' to create new remote branches) >- [255] >- >- $ hg push -r 4 -r 6 ../f >- pushing to ../f >- searching for changes >- abort: push creates new remote branches: c, d! >- (use 'hg push --new-branch' to create new remote branches) >- [255] >- >- $ cd ../g >- >- >-Fail on multiple head push: >- >- $ hg -q up 1 >- $ echo 7 > foo >- $ hg -q ci -m 7 >- >- $ hg push -r 4 -r 7 ../f >- pushing to ../f >- searching for changes >- abort: push creates new remote heads on branch 'a'! >- (did you forget to merge? use push -f to force) >- [255] >- >-Push replacement head on existing branches: >- >- $ hg -q up 3 >- $ echo 8 > foo >- $ hg -q ci -m 8 >- >- $ hg push -r 7 -r 8 ../f >- pushing to ../f >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 2 changesets with 2 changes to 1 files >- >- >-Merge of branch a to other branch b followed by unrelated push >-on branch a: >- >- $ hg -q up 7 >- $ HGMERGE=true hg -q merge 8 >- $ hg -q ci -m 9 >- $ hg -q up 8 >- $ echo 10 > foo >- $ hg -q ci -m 10 >- >- $ hg push -r 9 ../f >- pushing to ../f >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files (-1 heads) >- >- $ hg push -r 10 ../f >- pushing to ../f >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files (+1 heads) >- >- >-Cheating the counting algorithm: >- >- $ hg -q up 9 >- $ HGMERGE=true hg -q merge 2 >- $ hg -q ci -m 11 >- $ hg -q up 1 >- $ echo 12 > foo >- $ hg -q ci -m 12 >- >- $ hg push -r 11 -r 12 ../f >- pushing to ../f >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 2 changesets with 2 changes to 1 files >- >- >-Failed push of new named branch: >- >- $ echo 12 > foo >- $ hg -q ci -m 12a >- [1] >- $ hg -q up 11 >- $ echo 13 > foo >- $ hg -q branch e >- $ hg -q ci -m 13d >- >- $ hg push -r 12 -r 13 ../f >- pushing to ../f >- searching for changes >- abort: push creates new remote branches: e! >- (use 'hg push --new-branch' to create new remote branches) >- [255] >- >- >-Using --new-branch to push new named branch: >- >- $ hg push --new-branch -r 12 -r 13 ../f >- pushing to ../f >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- >- >-Checking prepush logic does not allow silently pushing >-multiple new heads: >- >- $ cd .. >- $ hg init h >- $ echo init > h/init >- $ hg -R h ci -Am init >- adding init >- $ echo a > h/a >- $ hg -R h ci -Am a >- adding a >- $ hg clone h i >- updating to branch default >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg -R h up 0 >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ echo b > h/b >- $ hg -R h ci -Am b >- adding b >- created new head >- $ hg -R i up 0 >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ echo c > i/c >- $ hg -R i ci -Am c >- adding c >- created new head >- >- $ hg -R i push h >- pushing to h >- searching for changes >- abort: push creates new remote heads on branch 'default'! >- (you should pull and merge or use push -f to force) >- [255] >- >- >-Check prepush logic with merged branches: >- >- $ hg init j >- $ hg -R j branch a >- marked working directory as branch a >- $ echo init > j/foo >- $ hg -R j ci -Am init >- adding foo >- $ hg clone j k >- updating to branch a >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo a1 > j/foo >- $ hg -R j ci -m a1 >- $ hg -R k branch b >- marked working directory as branch b >- $ echo b > k/foo >- $ hg -R k ci -m b >- $ hg -R k up 0 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >- $ hg -R k merge b >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- >- $ hg -R k ci -m merge >- >- $ hg -R k push -r a j >- pushing to j >- searching for changes >- abort: push creates new remote branches: b! >- (use 'hg push --new-branch' to create new remote branches) >- [255] >- >- >-Prepush -r should not allow you to sneak in new heads: >- >- $ hg init l >- $ cd l >- $ echo a >> foo >- $ hg -q add foo >- $ hg -q branch a >- $ hg -q ci -ma >- $ hg -q up null >- $ echo a >> foo >- $ hg -q add foo >- $ hg -q branch b >- $ hg -q ci -mb >- $ cd .. >- $ hg -q clone l m -u a >- $ cd m >- $ hg -q merge b >- $ hg -q ci -mmb >- $ hg -q up 0 >- $ echo a >> foo >- $ hg -q ci -ma2 >- $ hg -q up 2 >- $ echo a >> foo >- $ hg -q branch -f b >- $ hg -q ci -mb2 >- $ hg -q merge 3 >- $ hg -q ci -mma >- >- $ hg push ../l -b b >- pushing to ../l >- searching for changes >- abort: push creates new remote heads on branch 'a'! >- (did you forget to merge? use push -f to force) >- [255] >- >- $ cd .. >- >- >-Check prepush with new branch head on former topo non-head: >- >- $ hg init n >- $ cd n >- $ hg branch A >- marked working directory as branch A >- $ echo a >a >- $ hg ci -Ama >- adding a >- $ hg branch B >- marked working directory as branch B >- $ echo b >b >- $ hg ci -Amb >- adding b >- >-b is now branch head of B, and a topological head >-a is now branch head of A, but not a topological head >- >- $ hg clone . inner >- updating to branch B >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ cd inner >- $ hg up B >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo b1 >b1 >- $ hg ci -Amb1 >- adding b1 >- >-in the clone b1 is now the head of B >- >- $ cd .. >- $ hg up 0 >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ echo a2 >a2 >- $ hg ci -Ama2 >- adding a2 >- >-a2 is now the new branch head of A, and a new topological head >-it replaces a former inner branch head, so it should at most warn about >-A, not B >- >-glog of local: >- >- $ hg glog --template "{rev}: {branches} {desc}\n" >- @ 2: A a2 >- | >- | o 1: B b >- |/ >- o 0: A a >- >-glog of remote: >- >- $ hg glog -R inner --template "{rev}: {branches} {desc}\n" >- @ 2: B b1 >- | >- o 1: B b >- | >- o 0: A a >- >-outgoing: >- >- $ hg out inner --template "{rev}: {branches} {desc}\n" >- comparing with inner >- searching for changes >- 2: A a2 >- >- $ hg push inner >- pushing to inner >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files (+1 heads) >- >- $ cd .. >- >- >-Check prepush with new branch head on former topo head: >- >- $ hg init o >- $ cd o >- $ hg branch A >- marked working directory as branch A >- $ echo a >a >- $ hg ci -Ama >- adding a >- $ hg branch B >- marked working directory as branch B >- $ echo b >b >- $ hg ci -Amb >- adding b >- >-b is now branch head of B, and a topological head >- >- $ hg up 0 >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ echo a1 >a1 >- $ hg ci -Ama1 >- adding a1 >- >-a1 is now branch head of A, and a topological head >- >- $ hg clone . inner >- updating to branch A >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ cd inner >- $ hg up B >- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ echo b1 >b1 >- $ hg ci -Amb1 >- adding b1 >- >-in the clone b1 is now the head of B >- >- $ cd .. >- $ echo a2 >a2 >- $ hg ci -Ama2 >- adding a2 >- >-a2 is now the new branch head of A, and a topological head >-it replaces a former topological and branch head, so this should not warn >- >-glog of local: >- >- $ hg glog --template "{rev}: {branches} {desc}\n" >- @ 3: A a2 >- | >- o 2: A a1 >- | >- | o 1: B b >- |/ >- o 0: A a >- >-glog of remote: >- >- $ hg glog -R inner --template "{rev}: {branches} {desc}\n" >- @ 3: B b1 >- | >- | o 2: A a1 >- | | >- o | 1: B b >- |/ >- o 0: A a >- >-outgoing: >- >- $ hg out inner --template "{rev}: {branches} {desc}\n" >- comparing with inner >- searching for changes >- 3: A a2 >- >- $ hg push inner >- pushing to inner >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- >- $ cd .. >- >- >-Check prepush with new branch head and new child of former branch head >-but child is on different branch: >- >- $ hg init p >- $ cd p >- $ hg branch A >- marked working directory as branch A >- $ echo a0 >a >- $ hg ci -Ama0 >- adding a >- $ echo a1 >a >- $ hg ci -ma1 >- $ hg up null >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg branch B >- marked working directory as branch B >- $ echo b0 >b >- $ hg ci -Amb0 >- adding b >- $ echo b1 >b >- $ hg ci -mb1 >- >- $ hg clone . inner >- updating to branch B >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >- $ hg up A >- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg branch -f B >- marked working directory as branch B >- $ echo a3 >a >- $ hg ci -ma3 >- created new head >- $ hg up 3 >- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg branch -f A >- marked working directory as branch A >- $ echo b3 >b >- $ hg ci -mb3 >- created new head >- >-glog of local: >- >- $ hg glog --template "{rev}: {branches} {desc}\n" >- @ 5: A b3 >- | >- | o 4: B a3 >- | | >- o | 3: B b1 >- | | >- o | 2: B b0 >- / >- o 1: A a1 >- | >- o 0: A a0 >- >-glog of remote: >- >- $ hg glog -R inner --template "{rev}: {branches} {desc}\n" >- @ 3: B b1 >- | >- o 2: B b0 >- >- o 1: A a1 >- | >- o 0: A a0 >- >-outgoing: >- >- $ hg out inner --template "{rev}: {branches} {desc}\n" >- comparing with inner >- searching for changes >- 4: B a3 >- 5: A b3 >- >- $ hg push inner >- pushing to inner >- searching for changes >- abort: push creates new remote heads on branch 'A'! >- (did you forget to merge? use push -f to force) >- [255] >- >- $ hg push inner -r4 -r5 >- pushing to inner >- searching for changes >- abort: push creates new remote heads on branch 'A'! >- (did you forget to merge? use push -f to force) >- [255] >- >- $ hg in inner >- comparing with inner >- searching for changes >- no changes found >- [1] >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-pull-pull-corruption2.t output changed >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-pull-pull-corruption2.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-pull-pull-corruption2.t.err >@@ -16,6 +16,9 @@ > $ hg init version2 > $ hg -R version2 pull source1 & > $ sleep 1 >+ $ hg clone --pull -U version2 corrupted >+ no changes found >+ $ wait > pulling from source1 > requesting all changes > adding changesets >@@ -23,19 +26,12 @@ > adding file changes > added 10 changesets with 10 changes to 1 files > (run 'hg update' to get a working copy) >- $ hg clone --pull -U version2 corrupted >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 10 changesets with 10 changes to 1 files >- $ wait > $ hg -R corrupted verify > checking changesets > checking manifests > crosschecking files in changesets and manifests > checking files >- 1 files, 10 changesets, 10 total revisions >+ 0 files, 0 changesets, 0 total revisions > $ hg -R version2 verify > checking changesets > checking manifests >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rebase-abort.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rebase-abort.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rebase-abort.t.err >@@ -1,3 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ cat >> $HGRCPATH <<EOF > > [extensions] > > graphlog= >@@ -6,143 +8,3 @@ > > [alias] > > tglog = log -G --template "{rev}: '{desc}' {branches}\n" > > EOF >- >- >- $ hg init a >- $ cd a >- >- $ echo c1 > common >- $ hg add common >- $ hg ci -m C1 >- >- $ echo c2 >> common >- $ hg ci -m C2 >- >- $ echo c3 >> common >- $ hg ci -m C3 >- >- $ hg up -q -C 1 >- >- $ echo l1 >> extra >- $ hg add extra >- $ hg ci -m L1 >- created new head >- >- $ sed -e 's/c2/l2/' common > common.new >- $ mv common.new common >- $ hg ci -m L2 >- >- $ hg tglog >- @ 4: 'L2' >- | >- o 3: 'L1' >- | >- | o 2: 'C3' >- |/ >- o 1: 'C2' >- | >- o 0: 'C1' >- >- >-Conflicting rebase: >- >- $ hg rebase -s 3 -d 2 >- merging common >- warning: conflicts during merge. >- merging common failed! >- abort: unresolved conflicts (see hg resolve, then hg rebase --continue) >- [255] >- >-Abort: >- >- $ hg rebase --abort >- saved backup bundle to $TESTTMP/a/.hg/strip-backup/*-backup.hg (glob) >- rebase aborted >- >- $ hg tglog >- @ 4: 'L2' >- | >- o 3: 'L1' >- | >- | o 2: 'C3' >- |/ >- o 1: 'C2' >- | >- o 0: 'C1' >- >- $ cd .. >- >- >-Constrcut new repo: >- >- $ hg init b >- $ cd b >- >- $ echo a > a >- $ hg ci -Am A >- adding a >- >- $ echo b > b >- $ hg ci -Am B >- adding b >- >- $ echo c > c >- $ hg ci -Am C >- adding c >- >- $ hg up -q 0 >- >- $ echo b > b >- $ hg ci -Am 'B bis' >- adding b >- created new head >- >- $ echo c1 > c >- $ hg ci -Am C1 >- adding c >- >-Rebase and abort without generating new changesets: >- >- $ hg tglog >- @ 4: 'C1' >- | >- o 3: 'B bis' >- | >- | o 2: 'C' >- | | >- | o 1: 'B' >- |/ >- o 0: 'A' >- >- $ hg rebase -b 4 -d 2 >- merging c >- warning: conflicts during merge. >- merging c failed! >- abort: unresolved conflicts (see hg resolve, then hg rebase --continue) >- [255] >- >- $ hg tglog >- @ 4: 'C1' >- | >- o 3: 'B bis' >- | >- | @ 2: 'C' >- | | >- | o 1: 'B' >- |/ >- o 0: 'A' >- >- $ hg rebase -a >- rebase aborted >- >- $ hg tglog >- @ 4: 'C1' >- | >- o 3: 'B bis' >- | >- | o 2: 'C' >- | | >- | o 1: 'B' >- |/ >- o 0: 'A' >- >!.. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rebase-check-restore.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rebase-check-restore.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rebase-check-restore.t.err >@@ -1,3 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ cat >> $HGRCPATH <<EOF > > [extensions] > > graphlog= >@@ -6,137 +8,3 @@ > > [alias] > > tglog = log -G --template "{rev}: '{desc}' {branches}\n" > > EOF >- >- >- $ hg init a >- $ cd a >- >- $ echo A > A >- $ hg add A >- $ hg ci -m A >- >- $ echo 'B' > B >- $ hg add B >- $ hg ci -m B >- >- $ echo C >> A >- $ hg ci -m C >- >- $ hg up -q -C 0 >- >- $ echo D >> A >- $ hg ci -m D >- created new head >- >- $ echo E > E >- $ hg add E >- $ hg ci -m E >- >- $ hg up -q -C 0 >- >- $ hg branch 'notdefault' >- marked working directory as branch notdefault >- $ echo F >> A >- $ hg ci -m F >- >- $ cd .. >- >- >-Rebasing B onto E - check keep: >- >- $ hg clone -q -u . a a1 >- $ cd a1 >- >- $ hg tglog >- @ 5: 'F' notdefault >- | >- | o 4: 'E' >- | | >- | o 3: 'D' >- |/ >- | o 2: 'C' >- | | >- | o 1: 'B' >- |/ >- o 0: 'A' >- >- $ hg rebase -s 1 -d 4 --keep >- merging A >- warning: conflicts during merge. >- merging A failed! >- abort: unresolved conflicts (see hg resolve, then hg rebase --continue) >- [255] >- >-Solve the conflict and go on: >- >- $ echo 'conflict solved' > A >- $ rm A.orig >- $ hg resolve -m A >- $ hg rebase --continue >- >- $ hg tglog >- @ 7: 'C' >- | >- o 6: 'B' >- | >- | o 5: 'F' notdefault >- | | >- o | 4: 'E' >- | | >- o | 3: 'D' >- |/ >- | o 2: 'C' >- | | >- | o 1: 'B' >- |/ >- o 0: 'A' >- >- $ cd .. >- >- >-Rebase F onto E - check keepbranches: >- >- $ hg clone -q -u . a a2 >- $ cd a2 >- >- $ hg tglog >- @ 5: 'F' notdefault >- | >- | o 4: 'E' >- | | >- | o 3: 'D' >- |/ >- | o 2: 'C' >- | | >- | o 1: 'B' >- |/ >- o 0: 'A' >- >- $ hg rebase -s 5 -d 4 --keepbranches >- merging A >- warning: conflicts during merge. >- merging A failed! >- abort: unresolved conflicts (see hg resolve, then hg rebase --continue) >- [255] >- >-Solve the conflict and go on: >- >- $ echo 'conflict solved' > A >- $ rm A.orig >- $ hg resolve -m A >- $ hg rebase --continue >- saved backup bundle to $TESTTMP/a2/.hg/strip-backup/*-backup.hg (glob) >- >- $ hg tglog >- @ 5: 'F' notdefault >- | >- o 4: 'E' >- | >- o 3: 'D' >- | >- | o 2: 'C' >- | | >- | o 1: 'B' >- |/ >- o 0: 'A' >- >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-purge.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-purge.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-purge.t.err >@@ -1,216 +1,6 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ cat <<EOF >> $HGRCPATH > > [extensions] > > purge = > > EOF >- >-init >- >- $ hg init t >- $ cd t >- >-setup >- >- $ echo r1 > r1 >- $ hg ci -qAmr1 -d'0 0' >- $ mkdir directory >- $ echo r2 > directory/r2 >- $ hg ci -qAmr2 -d'1 0' >- $ echo 'ignored' > .hgignore >- $ hg ci -qAmr3 -d'2 0' >- >-delete an empty directory >- >- $ mkdir empty_dir >- $ hg purge -p >- empty_dir >- $ hg purge -v >- Removing directory empty_dir >- $ ls >- directory >- r1 >- >-delete an untracked directory >- >- $ mkdir untracked_dir >- $ touch untracked_dir/untracked_file1 >- $ touch untracked_dir/untracked_file2 >- $ hg purge -p >- untracked_dir/untracked_file1 >- untracked_dir/untracked_file2 >- $ hg purge -v >- Removing file untracked_dir/untracked_file1 >- Removing file untracked_dir/untracked_file2 >- Removing directory untracked_dir >- $ ls >- directory >- r1 >- >-delete an untracked file >- >- $ touch untracked_file >- $ touch untracked_file_readonly >- $ python <<EOF >- > import os, stat >- > f= 'untracked_file_readonly' >- > os.chmod(f, stat.S_IMODE(os.stat(f).st_mode) & ~stat.S_IWRITE) >- > EOF >- $ hg purge -p >- untracked_file >- untracked_file_readonly >- $ hg purge -v >- Removing file untracked_file >- Removing file untracked_file_readonly >- $ ls >- directory >- r1 >- >-delete an untracked file in a tracked directory >- >- $ touch directory/untracked_file >- $ hg purge -p >- directory/untracked_file >- $ hg purge -v >- Removing file directory/untracked_file >- $ ls >- directory >- r1 >- >-delete nested directories >- >- $ mkdir -p untracked_directory/nested_directory >- $ hg purge -p >- untracked_directory/nested_directory >- $ hg purge -v >- Removing directory untracked_directory/nested_directory >- Removing directory untracked_directory >- $ ls >- directory >- r1 >- >-delete nested directories from a subdir >- >- $ mkdir -p untracked_directory/nested_directory >- $ cd directory >- $ hg purge -p >- untracked_directory/nested_directory >- $ hg purge -v >- Removing directory untracked_directory/nested_directory >- Removing directory untracked_directory >- $ cd .. >- $ ls >- directory >- r1 >- >-delete only part of the tree >- >- $ mkdir -p untracked_directory/nested_directory >- $ touch directory/untracked_file >- $ cd directory >- $ hg purge -p ../untracked_directory >- untracked_directory/nested_directory >- $ hg purge -v ../untracked_directory >- Removing directory untracked_directory/nested_directory >- Removing directory untracked_directory >- $ cd .. >- $ ls >- directory >- r1 >- $ ls directory/untracked_file >- directory/untracked_file >- $ rm directory/untracked_file >- >-skip ignored files if --all not specified >- >- $ touch ignored >- $ hg purge -p >- $ hg purge -v >- $ ls >- directory >- ignored >- r1 >- $ hg purge -p --all >- ignored >- $ hg purge -v --all >- Removing file ignored >- $ ls >- directory >- r1 >- >-abort with missing files until we support name mangling filesystems >- >- $ touch untracked_file >- $ rm r1 >- >-hide error messages to avoid changing the output when the text changes >- >- $ hg purge -p 2> /dev/null >- untracked_file >- $ hg st >- ! r1 >- ? untracked_file >- >- $ hg purge -p >- untracked_file >- $ hg purge -v 2> /dev/null >- Removing file untracked_file >- $ hg st >- ! r1 >- >- $ hg purge -v >- $ hg revert --all --quiet >- $ hg st -a >- >-tracked file in ignored directory (issue621) >- >- $ echo directory >> .hgignore >- $ hg ci -m 'ignore directory' >- $ touch untracked_file >- $ hg purge -p >- untracked_file >- $ hg purge -v >- Removing file untracked_file >- >-skip excluded files >- >- $ touch excluded_file >- $ hg purge -p -X excluded_file >- $ hg purge -v -X excluded_file >- $ ls >- directory >- excluded_file >- r1 >- $ rm excluded_file >- >-skip files in excluded dirs >- >- $ mkdir excluded_dir >- $ touch excluded_dir/file >- $ hg purge -p -X excluded_dir >- $ hg purge -v -X excluded_dir >- $ ls >- directory >- excluded_dir >- r1 >- $ ls excluded_dir >- file >- $ rm -R excluded_dir >- >-skip excluded empty dirs >- >- $ mkdir excluded_dir >- $ hg purge -p -X excluded_dir >- $ hg purge -v -X excluded_dir >- $ ls >- directory >- excluded_dir >- r1 >- $ rmdir excluded_dir >- >-skip patterns >- >- $ mkdir .svn >- $ touch .svn/foo >- $ mkdir directory/.svn >- $ touch directory/.svn/foo >- $ hg purge -p -X .svn -X '*/.svn' >- $ hg purge -p -X re:.*.svn >!. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rebase-conflicts.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rebase-conflicts.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rebase-conflicts.t.err >@@ -1,3 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ cat >> $HGRCPATH <<EOF > > [extensions] > > graphlog= >@@ -6,110 +8,3 @@ > > [alias] > > tglog = log -G --template "{rev}: '{desc}' {branches}\n" > > EOF >- >- $ hg init a >- $ cd a >- $ echo c1 >common >- $ hg add common >- $ hg ci -m C1 >- >- $ echo c2 >>common >- $ hg ci -m C2 >- >- $ echo c3 >>common >- $ hg ci -m C3 >- >- $ hg up -q -C 1 >- >- $ echo l1 >>extra >- $ hg add extra >- $ hg ci -m L1 >- created new head >- >- $ sed -e 's/c2/l2/' common > common.new >- $ mv common.new common >- $ hg ci -m L2 >- >- $ echo l3 >> extra2 >- $ hg add extra2 >- $ hg ci -m L3 >- >- $ hg tglog >- @ 5: 'L3' >- | >- o 4: 'L2' >- | >- o 3: 'L1' >- | >- | o 2: 'C3' >- |/ >- o 1: 'C2' >- | >- o 0: 'C1' >- >-Try to call --continue: >- >- $ hg rebase --continue >- abort: no rebase in progress >- [255] >- >-Conflicting rebase: >- >- $ hg rebase -s 3 -d 2 >- merging common >- warning: conflicts during merge. >- merging common failed! >- abort: unresolved conflicts (see hg resolve, then hg rebase --continue) >- [255] >- >-Try to continue without solving the conflict: >- >- $ hg rebase --continue >- abort: unresolved merge conflicts (see hg resolve) >- [255] >- >-Conclude rebase: >- >- $ echo 'resolved merge' >common >- $ hg resolve -m common >- $ hg rebase --continue >- saved backup bundle to $TESTTMP/a/.hg/strip-backup/*-backup.hg (glob) >- >- $ hg tglog >- @ 5: 'L3' >- | >- o 4: 'L2' >- | >- o 3: 'L1' >- | >- o 2: 'C3' >- | >- o 1: 'C2' >- | >- o 0: 'C1' >- >-Check correctness: >- >- $ hg cat -r 0 common >- c1 >- >- $ hg cat -r 1 common >- c1 >- c2 >- >- $ hg cat -r 2 common >- c1 >- c2 >- c3 >- >- $ hg cat -r 3 common >- c1 >- c2 >- c3 >- >- $ hg cat -r 4 common >- resolved merge >- >- $ hg cat -r 5 common >- resolved merge >- >!.. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rebase-interruptions.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rebase-interruptions.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rebase-interruptions.t.err >@@ -1,3 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ cat >> $HGRCPATH <<EOF > > [extensions] > > graphlog= >@@ -6,189 +8,3 @@ > > [alias] > > tglog = log -G --template "{rev}: '{desc}' {branches}\n" > > EOF >- >- >- $ hg init a >- $ cd a >- >- $ echo A > A >- $ hg ci -Am A >- adding A >- >- $ echo B > B >- $ hg ci -Am B >- adding B >- >- $ echo C >> A >- $ hg ci -m C >- >- $ hg up -q -C 0 >- >- $ echo D >> A >- $ hg ci -m D >- created new head >- >- $ echo E > E >- $ hg ci -Am E >- adding E >- >- $ cd .. >- >- >-Changes during an interruption - continue: >- >- $ hg clone -q -u . a a1 >- $ cd a1 >- >- $ hg tglog >- @ 4: 'E' >- | >- o 3: 'D' >- | >- | o 2: 'C' >- | | >- | o 1: 'B' >- |/ >- o 0: 'A' >- >-Rebasing B onto E: >- >- $ hg rebase -s 1 -d 4 >- merging A >- warning: conflicts during merge. >- merging A failed! >- abort: unresolved conflicts (see hg resolve, then hg rebase --continue) >- [255] >- >-Force a commit on C during the interruption: >- >- $ hg up -q -C 2 >- >- $ echo 'Extra' > Extra >- $ hg add Extra >- $ hg ci -m 'Extra' >- >- $ hg tglog >- @ 6: 'Extra' >- | >- | o 5: 'B' >- | | >- | o 4: 'E' >- | | >- | o 3: 'D' >- | | >- o | 2: 'C' >- | | >- o | 1: 'B' >- |/ >- o 0: 'A' >- >-Resume the rebasing: >- >- $ hg rebase --continue >- merging A >- warning: conflicts during merge. >- merging A failed! >- abort: unresolved conflicts (see hg resolve, then hg rebase --continue) >- [255] >- >-Solve the conflict and go on: >- >- $ echo 'conflict solved' > A >- $ rm A.orig >- $ hg resolve -m A >- >- $ hg rebase --continue >- warning: new changesets detected on source branch, not stripping >- >- $ hg tglog >- @ 7: 'C' >- | >- | o 6: 'Extra' >- | | >- o | 5: 'B' >- | | >- o | 4: 'E' >- | | >- o | 3: 'D' >- | | >- | o 2: 'C' >- | | >- | o 1: 'B' >- |/ >- o 0: 'A' >- >- $ cd .. >- >- >-Changes during an interruption - abort: >- >- $ hg clone -q -u . a a2 >- $ cd a2 >- >- $ hg tglog >- @ 4: 'E' >- | >- o 3: 'D' >- | >- | o 2: 'C' >- | | >- | o 1: 'B' >- |/ >- o 0: 'A' >- >-Rebasing B onto E: >- >- $ hg rebase -s 1 -d 4 >- merging A >- warning: conflicts during merge. >- merging A failed! >- abort: unresolved conflicts (see hg resolve, then hg rebase --continue) >- [255] >- >-Force a commit on B' during the interruption: >- >- $ hg up -q -C 5 >- >- $ echo 'Extra' > Extra >- $ hg add Extra >- $ hg ci -m 'Extra' >- >- $ hg tglog >- @ 6: 'Extra' >- | >- o 5: 'B' >- | >- o 4: 'E' >- | >- o 3: 'D' >- | >- | o 2: 'C' >- | | >- | o 1: 'B' >- |/ >- o 0: 'A' >- >-Abort the rebasing: >- >- $ hg rebase --abort >- warning: new changesets detected on target branch, can't abort >- [255] >- >- $ hg tglog >- @ 6: 'Extra' >- | >- o 5: 'B' >- | >- o 4: 'E' >- | >- o 3: 'D' >- | >- | o 2: 'C' >- | | >- | o 1: 'B' >- |/ >- o 0: 'A' >- >- $ cd .. >- >!. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rebase-cache.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rebase-cache.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rebase-cache.t.err >@@ -1,3 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ cat >> $HGRCPATH <<EOF > > [extensions] > > graphlog= >@@ -7,251 +9,3 @@ > > tglog = log -G --template "{rev}: '{desc}' {branches}\n" > > theads = heads --template "{rev}: '{desc}' {branches}\n" > > EOF >- >- $ hg init a >- $ cd a >- >- $ echo a > a >- $ hg ci -Am A >- adding a >- >- $ hg branch branch1 >- marked working directory as branch branch1 >- $ hg ci -m 'branch1' >- >- $ echo b > b >- $ hg ci -Am B >- adding b >- >- $ hg up -q 0 >- >- $ hg branch branch2 >- marked working directory as branch branch2 >- $ hg ci -m 'branch2' >- >- $ echo c > C >- $ hg ci -Am C >- adding C >- >- $ hg up -q 2 >- >- $ hg branch -f branch2 >- marked working directory as branch branch2 >- $ echo d > d >- $ hg ci -Am D >- adding d >- created new head >- >- $ echo e > e >- $ hg ci -Am E >- adding e >- >- $ hg update default >- 0 files updated, 0 files merged, 3 files removed, 0 files unresolved >- >- $ hg branch branch3 >- marked working directory as branch branch3 >- $ hg ci -m 'branch3' >- >- $ echo f > f >- $ hg ci -Am F >- adding f >- >- $ cd .. >- >- >-Rebase part of branch2 (5-6) onto branch3 (8): >- >- $ hg clone -q -u . a a1 >- $ cd a1 >- >- $ hg tglog >- @ 8: 'F' branch3 >- | >- o 7: 'branch3' branch3 >- | >- | o 6: 'E' branch2 >- | | >- | o 5: 'D' branch2 >- | | >- | | o 4: 'C' branch2 >- | | | >- +---o 3: 'branch2' branch2 >- | | >- | o 2: 'B' branch1 >- | | >- | o 1: 'branch1' branch1 >- |/ >- o 0: 'A' >- >- $ hg branches >- branch3 8:05b64c4ca2d8 >- branch2 6:b410fbec727a >- branch1 2:9d931918fcf7 (inactive) >- default 0:1994f17a630e (inactive) >- >- $ hg theads >- 8: 'F' branch3 >- 6: 'E' branch2 >- 4: 'C' branch2 >- 2: 'B' branch1 >- 0: 'A' >- >- $ hg rebase --detach -s 5 -d 8 >- saved backup bundle to $TESTTMP/a1/.hg/strip-backup/*-backup.hg (glob) >- >- $ hg branches >- branch3 8:c1d4b9719987 >- branch2 4:1be2b203ae5e >- branch1 2:9d931918fcf7 >- default 0:1994f17a630e (inactive) >- >- $ hg theads >- 8: 'E' branch3 >- 4: 'C' branch2 >- 2: 'B' branch1 >- 0: 'A' >- >- $ hg tglog >- @ 8: 'E' branch3 >- | >- o 7: 'D' branch3 >- | >- o 6: 'F' branch3 >- | >- o 5: 'branch3' branch3 >- | >- | o 4: 'C' branch2 >- | | >- | o 3: 'branch2' branch2 >- |/ >- | o 2: 'B' branch1 >- | | >- | o 1: 'branch1' branch1 >- |/ >- o 0: 'A' >- >- $ cd .. >- >- >-Rebase head of branch3 (8) onto branch2 (6): >- >- $ hg clone -q -u . a a2 >- $ cd a2 >- >- $ hg tglog >- @ 8: 'F' branch3 >- | >- o 7: 'branch3' branch3 >- | >- | o 6: 'E' branch2 >- | | >- | o 5: 'D' branch2 >- | | >- | | o 4: 'C' branch2 >- | | | >- +---o 3: 'branch2' branch2 >- | | >- | o 2: 'B' branch1 >- | | >- | o 1: 'branch1' branch1 >- |/ >- o 0: 'A' >- >- $ hg rebase --detach -s 8 -d 6 >- saved backup bundle to $TESTTMP/a2/.hg/strip-backup/*-backup.hg (glob) >- >- $ hg branches >- branch2 8:e1e80ed73210 >- branch3 7:75fd7b643dce >- branch1 2:9d931918fcf7 (inactive) >- default 0:1994f17a630e (inactive) >- >- $ hg theads >- 8: 'F' branch2 >- 7: 'branch3' branch3 >- 4: 'C' branch2 >- 2: 'B' branch1 >- 0: 'A' >- >- $ hg tglog >- @ 8: 'F' branch2 >- | >- | o 7: 'branch3' branch3 >- | | >- o | 6: 'E' branch2 >- | | >- o | 5: 'D' branch2 >- | | >- | | o 4: 'C' branch2 >- | | | >- | | o 3: 'branch2' branch2 >- | |/ >- o | 2: 'B' branch1 >- | | >- o | 1: 'branch1' branch1 >- |/ >- o 0: 'A' >- >- $ hg verify -q >- >- $ cd .. >- >- >-Rebase entire branch3 (7-8) onto branch2 (6): >- >- $ hg clone -q -u . a a3 >- $ cd a3 >- >- $ hg tglog >- @ 8: 'F' branch3 >- | >- o 7: 'branch3' branch3 >- | >- | o 6: 'E' branch2 >- | | >- | o 5: 'D' branch2 >- | | >- | | o 4: 'C' branch2 >- | | | >- +---o 3: 'branch2' branch2 >- | | >- | o 2: 'B' branch1 >- | | >- | o 1: 'branch1' branch1 >- |/ >- o 0: 'A' >- >- $ hg rebase --detach -s 7 -d 6 >- saved backup bundle to $TESTTMP/a3/.hg/strip-backup/*-backup.hg (glob) >- >- $ hg branches >- branch2 7:e1e80ed73210 >- branch1 2:9d931918fcf7 (inactive) >- default 0:1994f17a630e (inactive) >- >- $ hg theads >- 7: 'F' branch2 >- 4: 'C' branch2 >- 2: 'B' branch1 >- 0: 'A' >- >- $ hg tglog >- @ 7: 'F' branch2 >- | >- o 6: 'E' branch2 >- | >- o 5: 'D' branch2 >- | >- | o 4: 'C' branch2 >- | | >- | o 3: 'branch2' branch2 >- | | >- o | 2: 'B' branch1 >- | | >- o | 1: 'branch1' branch1 >- |/ >- o 0: 'A' >- >- $ hg verify -q >- >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-push-http.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-push-http.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-push-http.t.err >@@ -1,87 +1,4 @@ >+ >+ ### Abort: timeout after 180 seconds. > > $ cp "$TESTDIR"/printenv.py . >- $ hg init test >- $ cd test >- $ echo a > a >- $ hg ci -Ama >- adding a >- $ cd .. >- $ hg clone test test2 >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ cd test2 >- $ echo a >> a >- $ hg ci -mb >- $ req() { >- > hg serve -p $HGPORT -d --pid-file=hg.pid -E errors.log >- > cat hg.pid >> $DAEMON_PIDS >- > hg --cwd ../test2 push http://localhost:$HGPORT/ >- > kill `cat hg.pid` >- > echo % serve errors >- > cat errors.log >- > } >- $ cd ../test >- >-expect ssl error >- >- $ req >- pushing to http://localhost:$HGPORT/ >- searching for changes >- remote: ssl required >- % serve errors >- >-expect authorization error >- >- $ echo '[web]' > .hg/hgrc >- $ echo 'push_ssl = false' >> .hg/hgrc >- $ req >- pushing to http://localhost:$HGPORT/ >- searching for changes >- abort: authorization failed >- % serve errors >- >-expect authorization error: must have authorized user >- >- $ echo 'allow_push = unperson' >> .hg/hgrc >- $ req >- pushing to http://localhost:$HGPORT/ >- searching for changes >- abort: authorization failed >- % serve errors >- >-expect success >- >- $ echo 'allow_push = *' >> .hg/hgrc >- $ echo '[hooks]' >> .hg/hgrc >- $ echo 'changegroup = python ../printenv.py changegroup 0' >> .hg/hgrc >- $ req >- pushing to http://localhost:$HGPORT/ >- searching for changes >- remote: adding changesets >- remote: adding manifests >- remote: adding file changes >- remote: added 1 changesets with 1 changes to 1 files >- remote: changegroup hook: HG_NODE=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_SOURCE=serve HG_URL=remote:http >- % serve errors >- $ hg rollback >- rolling back to revision 0 (undo serve) >- >-expect authorization error: all users denied >- >- $ echo '[web]' > .hg/hgrc >- $ echo 'push_ssl = false' >> .hg/hgrc >- $ echo 'deny_push = *' >> .hg/hgrc >- $ req >- pushing to http://localhost:$HGPORT/ >- searching for changes >- abort: authorization failed >- % serve errors >- >-expect authorization error: some users denied, users must be authenticated >- >- $ echo 'deny_push = unperson' >> .hg/hgrc >- $ req >- pushing to http://localhost:$HGPORT/ >- searching for changes >- abort: authorization failed >- % serve errors >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rebase-mq.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rebase-mq.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rebase-mq.t.err >@@ -1,3 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ cat >> $HGRCPATH <<EOF > > [extensions] > > graphlog= >@@ -10,228 +12,3 @@ > > [alias] > > tglog = log -G --template "{rev}: '{desc}' tags: {tags}\n" > > EOF >- >- >- $ hg init a >- $ cd a >- $ hg qinit -c >- >- $ echo c1 > f >- $ hg add f >- $ hg ci -m C1 >- >- $ echo r1 > f >- $ hg ci -m R1 >- >- $ hg up -q 0 >- >- $ hg qnew f.patch >- $ echo mq1 > f >- $ hg qref -m P0 >- >- $ hg qnew f2.patch >- $ echo mq2 > f >- $ hg qref -m P1 >- >- $ hg tglog >- @ 3: 'P1' tags: f2.patch qtip tip >- | >- o 2: 'P0' tags: f.patch qbase >- | >- | o 1: 'R1' tags: >- |/ >- o 0: 'C1' tags: qparent >- >- >-Rebase - try to rebase on an applied mq patch: >- >- $ hg rebase -s 1 -d 3 >- abort: cannot rebase onto an applied mq patch >- [255] >- >-Rebase - same thing, but mq patch is default dest: >- >- $ hg up -q 1 >- $ hg rebase >- abort: cannot rebase onto an applied mq patch >- [255] >- $ hg up -q qtip >- >-Rebase - generate a conflict: >- >- $ hg rebase -s 2 -d 1 >- merging f >- warning: conflicts during merge. >- merging f failed! >- abort: unresolved conflicts (see hg resolve, then hg rebase --continue) >- [255] >- >-Fix the 1st conflict: >- >- $ echo mq1r1 > f >- $ hg resolve -m f >- $ hg rebase -c >- merging f >- warning: conflicts during merge. >- merging f failed! >- abort: unresolved conflicts (see hg resolve, then hg rebase --continue) >- [255] >- >-Fix the 2nd conflict: >- >- $ echo mq1r1mq2 > f >- $ hg resolve -m f >- $ hg rebase -c >- saved backup bundle to $TESTTMP/a/.hg/strip-backup/*-backup.hg (glob) >- >- $ hg tglog >- @ 3: 'P1' tags: f2.patch qtip tip >- | >- o 2: 'P0' tags: f.patch qbase >- | >- o 1: 'R1' tags: qparent >- | >- o 0: 'C1' tags: >- >- $ hg up -q qbase >- >- $ cat f >- mq1r1 >- >- $ cat .hg/patches/f.patch >- # HG changeset patch >- # User test >- # Date ?????????? ? (glob) >- # Node ID ???????????????????????????????????????? (glob) >- # Parent bac9ed9960d8992bcad75864a879fa76cadaf1b0 >- P0 >- >- diff -r bac9ed9960d8 -r ???????????? f (glob) >- --- a/f Thu Jan 01 00:00:00 1970 +0000 >- +++ b/f ??? ??? ?? ??:??:?? ???? ????? (glob) >- @@ -1,1 +1,1 @@ >- -r1 >- +mq1r1 >- >-Update to qtip: >- >- $ hg up -q qtip >- >- $ cat f >- mq1r1mq2 >- >- $ cat .hg/patches/f2.patch >- # HG changeset patch >- # User test >- # Date ?????????? ? (glob) >- # Node ID ???????????????????????????????????????? (glob) >- # Parent ???????????????????????????????????????? (glob) >- P1 >- >- diff -r ???????????? -r ???????????? f (glob) >- --- a/f ??? ??? ?? ??:??:?? ???? ????? (glob) >- +++ b/f ??? ??? ?? ??:??:?? ???? ????? (glob) >- @@ -1,1 +1,1 @@ >- -mq1r1 >- +mq1r1mq2 >- >-Adding one git-style patch and one normal: >- >- $ hg qpop -a >- popping f2.patch >- popping f.patch >- patch queue now empty >- >- $ rm -fr .hg/patches >- $ hg qinit -c >- >- $ hg up -q 0 >- >- $ hg qnew --git f_git.patch >- $ echo mq1 > p >- $ hg add p >- $ hg qref --git -m 'P0 (git)' >- >- $ hg qnew f.patch >- $ echo mq2 > p >- $ hg qref -m P1 >- $ hg qci -m 'save patch state' >- >- $ hg qseries -s >- f_git.patch: P0 (git) >- f.patch: P1 >- >- $ hg -R .hg/patches manifest >- .hgignore >- f.patch >- f_git.patch >- series >- >- $ cat .hg/patches/f_git.patch >- P0 (git) >- >- diff --git a/p b/p >- new file mode 100644 >- --- /dev/null >- +++ b/p >- @@ -0,0 +1,1 @@ >- +mq1 >- >- $ cat .hg/patches/f.patch >- P1 >- >- diff -r ???????????? p (glob) >- --- a/p ??? ??? ?? ??:??:?? ???? ????? (glob) >- +++ b/p ??? ??? ?? ??:??:?? ???? ????? (glob) >- @@ -1,1 +1,1 @@ >- -mq1 >- +mq2 >- >- >-Rebase the applied mq patches: >- >- $ hg rebase -s 2 -d 1 >- saved backup bundle to $TESTTMP/a/.hg/strip-backup/*-backup.hg (glob) >- >- $ hg qci -m 'save patch state' >- >- $ hg qseries -s >- f_git.patch: P0 (git) >- f.patch: P1 >- >- $ hg -R .hg/patches manifest >- .hgignore >- f.patch >- f_git.patch >- series >- >- $ cat .hg/patches/f_git.patch >- # HG changeset patch >- # User test >- # Date ?????????? ? (glob) >- # Node ID ???????????????????????????????????????? (glob) >- # Parent bac9ed9960d8992bcad75864a879fa76cadaf1b0 >- P0 (git) >- >- diff --git a/p b/p >- new file mode 100644 >- --- /dev/null >- +++ b/p >- @@ -0,0 +1,1 @@ >- +mq1 >- >- $ cat .hg/patches/f.patch >- # HG changeset patch >- # User test >- # Date ?????????? ? (glob) >- # Node ID ???????????????????????????????????????? (glob) >- # Parent ???????????????????????????????????????? (glob) >- P1 >- >- diff -r ???????????? -r ???????????? p (glob) >- --- a/p ??? ??? ?? ??:??:?? ???? ????? (glob) >- +++ b/p ??? ??? ?? ??:??:?? ???? ????? (glob) >- @@ -1,1 +1,1 @@ >- -mq1 >- +mq2 >- >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rebase-parameters.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rebase-parameters.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rebase-parameters.t.err >@@ -1,3 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ cat >> $HGRCPATH <<EOF > > [extensions] > > graphlog= >@@ -6,327 +8,3 @@ > > [alias] > > tglog = log -G --template "{rev}: '{desc}' {branches}\n" > > EOF >- >- >- $ hg init a >- $ cd a >- >- $ echo c1 > c1 >- $ hg ci -Am c1 >- adding c1 >- >- $ echo c2 > c2 >- $ hg ci -Am c2 >- adding c2 >- >- $ echo c3 > c3 >- $ hg ci -Am c3 >- adding c3 >- >- $ hg up -q -C 1 >- >- $ echo l1 > l1 >- $ hg ci -Am l1 >- adding l1 >- created new head >- >- $ echo l2 > l2 >- $ hg ci -Am l2 >- adding l2 >- >- $ echo l3 > l3 >- $ hg ci -Am l3 >- adding l3 >- >- $ hg up -q -C 2 >- >- $ echo r1 > r1 >- $ hg ci -Am r1 >- adding r1 >- >- $ echo r2 > r2 >- $ hg ci -Am r2 >- adding r2 >- >- $ hg tglog >- @ 7: 'r2' >- | >- o 6: 'r1' >- | >- | o 5: 'l3' >- | | >- | o 4: 'l2' >- | | >- | o 3: 'l1' >- | | >- o | 2: 'c3' >- |/ >- o 1: 'c2' >- | >- o 0: 'c1' >- >- $ cd .. >- >- >-These fail: >- >- $ hg clone -q -u . a a1 >- $ cd a1 >- >- $ hg rebase --continue --abort >- abort: cannot use both abort and continue >- [255] >- >- $ hg rebase --continue --collapse >- abort: cannot use collapse with continue or abort >- [255] >- >- $ hg rebase --continue --dest 4 >- abort: abort and continue do not allow specifying revisions >- [255] >- >- $ hg rebase --base 5 --source 4 >- abort: cannot specify both a revision and a base >- [255] >- >- $ hg rebase >- nothing to rebase >- [1] >- >- $ hg up -q 6 >- >- $ hg rebase >- nothing to rebase >- [1] >- >- >-These work: >- >-Rebase with no arguments (from 3 onto 7): >- >- $ hg up -q -C 5 >- >- $ hg rebase >- saved backup bundle to $TESTTMP/a1/.hg/strip-backup/*-backup.hg (glob) >- >- $ hg tglog >- @ 7: 'l3' >- | >- o 6: 'l2' >- | >- o 5: 'l1' >- | >- o 4: 'r2' >- | >- o 3: 'r1' >- | >- o 2: 'c3' >- | >- o 1: 'c2' >- | >- o 0: 'c1' >- >-Try to rollback after a rebase (fail): >- >- $ hg rollback >- no rollback information available >- [1] >- >- $ cd .. >- >- >-Rebase with base == '.' => same as no arguments (from 3 onto 7): >- >- $ hg clone -q -u 5 a a2 >- $ cd a2 >- >- $ hg rebase --base . >- saved backup bundle to $TESTTMP/a2/.hg/strip-backup/*-backup.hg (glob) >- >- $ hg tglog >- @ 7: 'l3' >- | >- o 6: 'l2' >- | >- o 5: 'l1' >- | >- o 4: 'r2' >- | >- o 3: 'r1' >- | >- o 2: 'c3' >- | >- o 1: 'c2' >- | >- o 0: 'c1' >- >- $ cd .. >- >- >-Rebase with dest == `hg branch` => same as no arguments (from 3 onto 7): >- >- $ hg clone -q -u 5 a a3 >- $ cd a3 >- >- $ hg rebase --dest `hg branch` >- saved backup bundle to $TESTTMP/a3/.hg/strip-backup/*-backup.hg (glob) >- >- $ hg tglog >- @ 7: 'l3' >- | >- o 6: 'l2' >- | >- o 5: 'l1' >- | >- o 4: 'r2' >- | >- o 3: 'r1' >- | >- o 2: 'c3' >- | >- o 1: 'c2' >- | >- o 0: 'c1' >- >- $ cd .. >- >- >-Specify only source (from 4 onto 7): >- >- $ hg clone -q -u . a a4 >- $ cd a4 >- >- $ hg rebase --source 4 >- saved backup bundle to $TESTTMP/a4/.hg/strip-backup/*-backup.hg (glob) >- >- $ hg tglog >- @ 7: 'l3' >- | >- o 6: 'l2' >- |\ >- | o 5: 'r2' >- | | >- | o 4: 'r1' >- | | >- o | 3: 'l1' >- | | >- | o 2: 'c3' >- |/ >- o 1: 'c2' >- | >- o 0: 'c1' >- >- $ cd .. >- >- >-Specify only dest (from 3 onto 6): >- >- $ hg clone -q -u 5 a a5 >- $ cd a5 >- >- $ hg rebase --dest 6 >- saved backup bundle to $TESTTMP/a5/.hg/strip-backup/*-backup.hg (glob) >- >- $ hg tglog >- @ 7: 'l3' >- | >- o 6: 'l2' >- | >- o 5: 'l1' >- | >- | o 4: 'r2' >- |/ >- o 3: 'r1' >- | >- o 2: 'c3' >- | >- o 1: 'c2' >- | >- o 0: 'c1' >- >- $ cd .. >- >- >-Specify only base (from 3 onto 7): >- >- $ hg clone -q -u . a a6 >- $ cd a6 >- >- $ hg rebase --base 5 >- saved backup bundle to $TESTTMP/a6/.hg/strip-backup/*-backup.hg (glob) >- >- $ hg tglog >- @ 7: 'l3' >- | >- o 6: 'l2' >- | >- o 5: 'l1' >- | >- o 4: 'r2' >- | >- o 3: 'r1' >- | >- o 2: 'c3' >- | >- o 1: 'c2' >- | >- o 0: 'c1' >- >- $ cd .. >- >- >-Specify source and dest (from 4 onto 6): >- >- $ hg clone -q -u . a a7 >- $ cd a7 >- >- $ hg rebase --source 4 --dest 6 >- saved backup bundle to $TESTTMP/a7/.hg/strip-backup/*-backup.hg (glob) >- >- $ hg tglog >- @ 7: 'l3' >- | >- o 6: 'l2' >- |\ >- | | o 5: 'r2' >- | |/ >- | o 4: 'r1' >- | | >- o | 3: 'l1' >- | | >- | o 2: 'c3' >- |/ >- o 1: 'c2' >- | >- o 0: 'c1' >- >- $ cd .. >- >- >-Specify base and dest (from 3 onto 6): >- >- $ hg clone -q -u . a a8 >- $ cd a8 >- >- $ hg rebase --base 4 --dest 6 >- saved backup bundle to $TESTTMP/a8/.hg/strip-backup/*-backup.hg (glob) >- >- $ hg tglog >- @ 7: 'l3' >- | >- o 6: 'l2' >- | >- o 5: 'l1' >- | >- | o 4: 'r2' >- |/ >- o 3: 'r1' >- | >- o 2: 'c3' >- | >- o 1: 'c2' >- | >- o 0: 'c1' >- >- $ cd .. >- >!. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rebase-detach.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rebase-detach.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rebase-detach.t.err >@@ -1,3 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ cat >> $HGRCPATH <<EOF > > [extensions] > > graphlog= >@@ -6,188 +8,3 @@ > > [alias] > > tglog = log -G --template "{rev}: '{desc}' {branches}\n" > > EOF >- >- >- $ hg init a >- $ cd a >- >- $ echo A > A >- $ hg ci -Am A >- adding A >- >- $ echo B > B >- $ hg ci -Am B >- adding B >- >- $ echo C > C >- $ hg ci -Am C >- adding C >- >- $ echo D > D >- $ hg ci -Am D >- adding D >- >- $ hg up -q -C 0 >- >- $ echo E > E >- $ hg ci -Am E >- adding E >- created new head >- >- $ cd .. >- >- >-Rebasing D onto E detaching from C: >- >- $ hg clone -q -u . a a1 >- $ cd a1 >- >- $ hg tglog >- @ 4: 'E' >- | >- | o 3: 'D' >- | | >- | o 2: 'C' >- | | >- | o 1: 'B' >- |/ >- o 0: 'A' >- >- $ hg rebase --detach -s 3 -d 4 >- saved backup bundle to $TESTTMP/a1/.hg/strip-backup/*-backup.hg (glob) >- >- $ hg tglog >- @ 4: 'D' >- | >- o 3: 'E' >- | >- | o 2: 'C' >- | | >- | o 1: 'B' >- |/ >- o 0: 'A' >- >- $ hg manifest >- A >- D >- E >- >- $ cd .. >- >- >-Rebasing C onto E detaching from B: >- >- $ hg clone -q -u . a a2 >- $ cd a2 >- >- $ hg tglog >- @ 4: 'E' >- | >- | o 3: 'D' >- | | >- | o 2: 'C' >- | | >- | o 1: 'B' >- |/ >- o 0: 'A' >- >- $ hg rebase --detach -s 2 -d 4 >- saved backup bundle to $TESTTMP/a2/.hg/strip-backup/*-backup.hg (glob) >- >- $ hg tglog >- @ 4: 'D' >- | >- o 3: 'C' >- | >- o 2: 'E' >- | >- | o 1: 'B' >- |/ >- o 0: 'A' >- >- $ hg manifest >- A >- C >- D >- E >- >- $ cd .. >- >- >-Rebasing B onto E using detach (same as not using it): >- >- $ hg clone -q -u . a a3 >- $ cd a3 >- >- $ hg tglog >- @ 4: 'E' >- | >- | o 3: 'D' >- | | >- | o 2: 'C' >- | | >- | o 1: 'B' >- |/ >- o 0: 'A' >- >- $ hg rebase --detach -s 1 -d 4 >- saved backup bundle to $TESTTMP/a3/.hg/strip-backup/*-backup.hg (glob) >- >- $ hg tglog >- @ 4: 'D' >- | >- o 3: 'C' >- | >- o 2: 'B' >- | >- o 1: 'E' >- | >- o 0: 'A' >- >- $ hg manifest >- A >- B >- C >- D >- E >- >- $ cd .. >- >- >-Rebasing C onto E detaching from B and collapsing: >- >- $ hg clone -q -u . a a4 >- $ cd a4 >- >- $ hg tglog >- @ 4: 'E' >- | >- | o 3: 'D' >- | | >- | o 2: 'C' >- | | >- | o 1: 'B' >- |/ >- o 0: 'A' >- >- $ hg rebase --detach --collapse -s 2 -d 4 >- saved backup bundle to $TESTTMP/a4/.hg/strip-backup/*-backup.hg (glob) >- >- $ hg tglog >- @ 3: 'Collapsed revision >- | * C >- | * D' >- o 2: 'E' >- | >- | o 1: 'B' >- |/ >- o 0: 'A' >- >- $ hg manifest >- A >- C >- D >- E >- >- $ cd .. >- >!. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rebase-rename.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rebase-rename.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rebase-rename.t.err >@@ -1,3 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ cat >> $HGRCPATH <<EOF > > [extensions] > > graphlog= >@@ -7,115 +9,3 @@ > > tlog = log --template "{rev}: '{desc}' {branches}\n" > > tglog = tlog --graph > > EOF >- >- >- $ hg init a >- $ cd a >- >- $ echo a > a >- $ hg ci -Am A >- adding a >- >- $ echo b > b >- $ hg ci -Am B >- adding b >- >- $ hg up -q -C 0 >- >- $ hg mv a a-renamed >- >- $ hg ci -m 'rename A' >- created new head >- >- $ hg tglog >- @ 2: 'rename A' >- | >- | o 1: 'B' >- |/ >- o 0: 'A' >- >- >-Rename is tracked: >- >- $ hg tlog -p --git -r tip >- 2: 'rename A' >- diff --git a/a b/a-renamed >- rename from a >- rename to a-renamed >- >-Rebase the revision containing the rename: >- >- $ hg rebase -s 2 -d 1 >- saved backup bundle to $TESTTMP/a/.hg/strip-backup/*-backup.hg (glob) >- >- $ hg tglog >- @ 2: 'rename A' >- | >- o 1: 'B' >- | >- o 0: 'A' >- >- >-Rename is not lost: >- >- $ hg tlog -p --git -r tip >- 2: 'rename A' >- diff --git a/a b/a-renamed >- rename from a >- rename to a-renamed >- >- $ cd .. >- >- >- $ hg init b >- $ cd b >- >- $ echo a > a >- $ hg ci -Am A >- adding a >- >- $ echo b > b >- $ hg ci -Am B >- adding b >- >- $ hg up -q -C 0 >- >- $ hg cp a a-copied >- $ hg ci -m 'copy A' >- created new head >- >- $ hg tglog >- @ 2: 'copy A' >- | >- | o 1: 'B' >- |/ >- o 0: 'A' >- >-Copy is tracked: >- >- $ hg tlog -p --git -r tip >- 2: 'copy A' >- diff --git a/a b/a-copied >- copy from a >- copy to a-copied >- >-Rebase the revision containing the copy: >- >- $ hg rebase -s 2 -d 1 >- saved backup bundle to $TESTTMP/b/.hg/strip-backup/*-backup.hg (glob) >- >- $ hg tglog >- @ 2: 'copy A' >- | >- o 1: 'B' >- | >- o 0: 'A' >- >-Copy is not lost: >- >- $ hg tlog -p --git -r tip >- 2: 'copy A' >- diff --git a/a b/a-copied >- copy from a >- copy to a-copied >- >!. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-remove.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-remove.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-remove.t.err >@@ -1,3 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ remove() { > > hg rm $@ > > echo "exit code: $?" # no-check-code >@@ -6,251 +8,3 @@ > > find . -name .hg -prune -o -type f -print | sort > > hg up -C > > } >- >- $ hg init a >- $ cd a >- $ echo a > foo >- >-file not managed >- >- $ remove foo >- not removing foo: file is untracked >- exit code: 1 >- ? foo >- ./foo >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >- $ hg add foo >- $ hg commit -m1 >- >-the table cases >-00 state added, options none >- >- $ echo b > bar >- $ hg add bar >- $ remove bar >- not removing bar: file has been marked for add (use -f to force removal) >- exit code: 1 >- A bar >- ./bar >- ./foo >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-01 state clean, options none >- >- $ remove foo >- exit code: 0 >- R foo >- ? bar >- ./bar >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-02 state modified, options none >- >- $ echo b >> foo >- $ remove foo >- not removing foo: file is modified (use -f to force removal) >- exit code: 1 >- M foo >- ? bar >- ./bar >- ./foo >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-03 state missing, options none >- >- $ rm foo >- $ remove foo >- exit code: 0 >- R foo >- ? bar >- ./bar >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-10 state added, options -f >- >- $ echo b > bar >- $ hg add bar >- $ remove -f bar >- exit code: 0 >- ? bar >- ./bar >- ./foo >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm bar >- >-11 state clean, options -f >- >- $ remove -f foo >- exit code: 0 >- R foo >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-12 state modified, options -f >- >- $ echo b >> foo >- $ remove -f foo >- exit code: 0 >- R foo >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-13 state missing, options -f >- >- $ rm foo >- $ remove -f foo >- exit code: 0 >- R foo >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-20 state added, options -A >- >- $ echo b > bar >- $ hg add bar >- $ remove -A bar >- not removing bar: file still exists (use -f to force removal) >- exit code: 1 >- A bar >- ./bar >- ./foo >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-21 state clean, options -A >- >- $ remove -A foo >- not removing foo: file still exists (use -f to force removal) >- exit code: 1 >- ? bar >- ./bar >- ./foo >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-22 state modified, options -A >- >- $ echo b >> foo >- $ remove -A foo >- not removing foo: file still exists (use -f to force removal) >- exit code: 1 >- M foo >- ? bar >- ./bar >- ./foo >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-23 state missing, options -A >- >- $ rm foo >- $ remove -A foo >- exit code: 0 >- R foo >- ? bar >- ./bar >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-30 state added, options -Af >- >- $ echo b > bar >- $ hg add bar >- $ remove -Af bar >- exit code: 0 >- ? bar >- ./bar >- ./foo >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm bar >- >-31 state clean, options -Af >- >- $ remove -Af foo >- exit code: 0 >- R foo >- ./foo >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-32 state modified, options -Af >- >- $ echo b >> foo >- $ remove -Af foo >- exit code: 0 >- R foo >- ./foo >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-33 state missing, options -Af >- >- $ rm foo >- $ remove -Af foo >- exit code: 0 >- R foo >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-test some directory stuff >- >- $ mkdir test >- $ echo a > test/foo >- $ echo b > test/bar >- $ hg ci -Am2 >- adding test/bar >- adding test/foo >- >-dir, options none >- >- $ rm test/bar >- $ remove test >- removing test/bar >- removing test/foo >- exit code: 0 >- R test/bar >- R test/foo >- ./foo >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-dir, options -f >- >- $ rm test/bar >- $ remove -f test >- removing test/bar >- removing test/foo >- exit code: 0 >- R test/bar >- R test/foo >- ./foo >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-dir, options -A >- >- $ rm test/bar >- $ remove -A test >- not removing test/foo: file still exists (use -f to force removal) >- removing test/bar >- exit code: 1 >- R test/bar >- ./foo >- ./test/foo >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-dir, options -Af >- >- $ rm test/bar >- $ remove -Af test >- removing test/bar >- removing test/foo >- exit code: 0 >- R test/bar >- R test/foo >- ./foo >- ./test/foo >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-test remove dropping empty trees (issue1861) >- >- $ mkdir -p issue1861/b/c >- $ echo x > issue1861/x >- $ echo y > issue1861/b/c/y >- $ hg ci -Am add >- adding issue1861/b/c/y >- adding issue1861/x >- $ hg rm issue1861/b >- removing issue1861/b/c/y >- $ hg ci -m remove >- $ ls issue1861 >- x >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rebase-mq-skip.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rebase-mq-skip.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rebase-mq-skip.t.err >@@ -1,3 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > This emulates the effects of an hg pull --rebase in which the remote repo > already has one local mq patch > >@@ -10,127 +12,3 @@ > > [alias] > > tglog = log -G --template "{rev}: '{desc}' tags: {tags}\n" > > EOF >- >- >- $ hg init a >- $ cd a >- $ hg qinit -c >- >- $ echo c1 > c1 >- $ hg add c1 >- $ hg ci -m C1 >- >- $ echo r1 > r1 >- $ hg add r1 >- $ hg ci -m R1 >- >- $ hg up -q 0 >- >- $ hg qnew p0.patch >- $ echo p0 > p0 >- $ hg add p0 >- $ hg qref -m P0 >- >- $ hg qnew p1.patch >- $ echo p1 > p1 >- $ hg add p1 >- $ hg qref -m P1 >- >- $ hg export qtip > p1.patch >- >- $ hg up -q -C 1 >- >- $ hg import p1.patch >- applying p1.patch >- >- $ rm p1.patch >- >- $ hg up -q -C qtip >- >- $ hg rebase >- saved backup bundle to $TESTTMP/a/.hg/strip-backup/*-backup.hg (glob) >- >- $ hg tglog >- @ 3: 'P0' tags: p0.patch qbase qtip tip >- | >- o 2: 'P1' tags: qparent >- | >- o 1: 'R1' tags: >- | >- o 0: 'C1' tags: >- >- $ cd .. >- >- >- $ hg init b >- $ cd b >- $ hg qinit -c >- >- $ for i in r0 r1 r2 r3 r4 r5 r6; >- > do >- > echo $i > $i >- > hg ci -Am $i >- > done >- adding r0 >- adding r1 >- adding r2 >- adding r3 >- adding r4 >- adding r5 >- adding r6 >- >- $ hg qimport -r 1:tip >- >- $ hg up -q 0 >- >- $ for i in r1 r3 r7 r8; >- > do >- > echo $i > $i >- > hg ci -Am branch2-$i >- > done >- adding r1 >- created new head >- adding r3 >- adding r7 >- adding r8 >- >- $ echo somethingelse > r4 >- $ hg ci -Am branch2-r4 >- adding r4 >- >- $ echo r6 > r6 >- $ hg ci -Am branch2-r6 >- adding r6 >- >- $ hg up -q qtip >- >- $ HGMERGE=internal:fail hg rebase >- abort: unresolved conflicts (see hg resolve, then hg rebase --continue) >- [255] >- >- $ HGMERGE=internal:local hg resolve --all >- >- $ hg rebase --continue >- saved backup bundle to $TESTTMP/b/.hg/strip-backup/*-backup.hg (glob) >- >- $ hg tglog >- @ 9: 'r5' tags: 5.diff qtip tip >- | >- o 8: 'r4' tags: 4.diff >- | >- o 7: 'r2' tags: 2.diff qbase >- | >- o 6: 'branch2-r6' tags: qparent >- | >- o 5: 'branch2-r4' tags: >- | >- o 4: 'branch2-r8' tags: >- | >- o 3: 'branch2-r7' tags: >- | >- o 2: 'branch2-r3' tags: >- | >- o 1: 'branch2-r1' tags: >- | >- o 0: 'r0' tags: >- >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rebase-collapse.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rebase-collapse.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rebase-collapse.t.err >@@ -1,3 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ cat >> $HGRCPATH <<EOF > > [extensions] > > graphlog= >@@ -6,436 +8,3 @@ > > [alias] > > tglog = log -G --template "{rev}: '{desc}' {branches}\n" > > EOF >- >-Create repo a: >- >- $ hg init a >- $ cd a >- >- $ echo A > A >- $ hg ci -Am A >- adding A >- $ echo B > B >- $ hg ci -Am B >- adding B >- $ echo C > C >- $ hg ci -Am C >- adding C >- $ echo D > D >- $ hg ci -Am D >- adding D >- >- $ hg up -q -C 0 >- >- $ echo E > E >- $ hg ci -Am E >- adding E >- created new head >- >- $ hg up -q -C 0 >- >- $ echo F > F >- $ hg ci -Am F >- adding F >- created new head >- >- $ hg merge -r 4 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg ci -m G >- >- $ hg up -q -C 5 >- >- $ echo H > H >- $ hg ci -Am H >- adding H >- created new head >- >- $ hg tglog >- @ 7: 'H' >- | >- | o 6: 'G' >- |/| >- o | 5: 'F' >- | | >- | o 4: 'E' >- |/ >- | o 3: 'D' >- | | >- | o 2: 'C' >- | | >- | o 1: 'B' >- |/ >- o 0: 'A' >- >- $ cd .. >- >- >-Rebasing B onto H: >- >- $ hg clone -q -u 3 a a1 >- $ cd a1 >- >- $ hg rebase --collapse --keepbranches >- saved backup bundle to $TESTTMP/a1/.hg/strip-backup/*-backup.hg (glob) >- >- $ hg tglog >- @ 5: 'Collapsed revision >- | * B >- | * C >- | * D' >- o 4: 'H' >- | >- | o 3: 'G' >- |/| >- o | 2: 'F' >- | | >- | o 1: 'E' >- |/ >- o 0: 'A' >- >- $ hg manifest >- A >- B >- C >- D >- F >- H >- >- $ cd .. >- >- >-Rebasing G onto H: >- >- $ hg clone -q -u . a a2 >- $ cd a2 >- >- $ hg rebase --base 6 --collapse >- saved backup bundle to $TESTTMP/a2/.hg/strip-backup/*-backup.hg (glob) >- >- $ hg tglog >- @ 6: 'Collapsed revision >- | * E >- | * G' >- o 5: 'H' >- | >- o 4: 'F' >- | >- | o 3: 'D' >- | | >- | o 2: 'C' >- | | >- | o 1: 'B' >- |/ >- o 0: 'A' >- >- $ hg manifest >- A >- E >- F >- H >- >- $ cd .. >- >- >-Create repo b: >- >- $ hg init b >- $ cd b >- >- $ echo A > A >- $ hg ci -Am A >- adding A >- $ echo B > B >- $ hg ci -Am B >- adding B >- >- $ hg up -q 0 >- >- $ echo C > C >- $ hg ci -Am C >- adding C >- created new head >- >- $ hg merge >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- >- $ echo D > D >- $ hg ci -Am D >- adding D >- >- $ hg up -q 1 >- >- $ echo E > E >- $ hg ci -Am E >- adding E >- created new head >- >- $ echo F > F >- $ hg ci -Am F >- adding F >- >- $ hg merge >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg ci -m G >- >- $ hg up -q 0 >- >- $ echo H > H >- $ hg ci -Am H >- adding H >- created new head >- >- $ hg tglog >- @ 7: 'H' >- | >- | o 6: 'G' >- | |\ >- | | o 5: 'F' >- | | | >- | | o 4: 'E' >- | | | >- | o | 3: 'D' >- | |\| >- | o | 2: 'C' >- |/ / >- | o 1: 'B' >- |/ >- o 0: 'A' >- >- $ cd .. >- >- >-Rebase and collapse - more than one external (fail): >- >- $ hg clone -q -u . b b1 >- $ cd b1 >- >- $ hg rebase -s 2 --collapse >- abort: unable to collapse, there is more than one external parent >- [255] >- >-Rebase and collapse - E onto H: >- >- $ hg rebase -s 4 --collapse >- saved backup bundle to $TESTTMP/b1/.hg/strip-backup/*-backup.hg (glob) >- >- $ hg tglog >- @ 5: 'Collapsed revision >- |\ * E >- | | * F >- | | * G' >- | o 4: 'H' >- | | >- o | 3: 'D' >- |\ \ >- | o | 2: 'C' >- | |/ >- o / 1: 'B' >- |/ >- o 0: 'A' >- >- $ hg manifest >- A >- B >- C >- D >- E >- F >- H >- >- $ cd .. >- >- >-Create repo c: >- >- $ hg init c >- $ cd c >- >- $ echo A > A >- $ hg ci -Am A >- adding A >- $ echo B > B >- $ hg ci -Am B >- adding B >- >- $ hg up -q 0 >- >- $ echo C > C >- $ hg ci -Am C >- adding C >- created new head >- >- $ hg merge >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- >- $ echo D > D >- $ hg ci -Am D >- adding D >- >- $ hg up -q 1 >- >- $ echo E > E >- $ hg ci -Am E >- adding E >- created new head >- $ echo F > E >- $ hg ci -m 'F' >- >- $ echo G > G >- $ hg ci -Am G >- adding G >- >- $ hg merge >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- >- $ hg ci -m H >- >- $ hg up -q 0 >- >- $ echo I > I >- $ hg ci -Am I >- adding I >- created new head >- >- $ hg tglog >- @ 8: 'I' >- | >- | o 7: 'H' >- | |\ >- | | o 6: 'G' >- | | | >- | | o 5: 'F' >- | | | >- | | o 4: 'E' >- | | | >- | o | 3: 'D' >- | |\| >- | o | 2: 'C' >- |/ / >- | o 1: 'B' >- |/ >- o 0: 'A' >- >- $ cd .. >- >- >-Rebase and collapse - E onto I: >- >- $ hg clone -q -u . c c1 >- $ cd c1 >- >- $ hg rebase -s 4 --collapse >- merging E >- saved backup bundle to $TESTTMP/c1/.hg/strip-backup/*-backup.hg (glob) >- >- $ hg tglog >- @ 5: 'Collapsed revision >- |\ * E >- | | * F >- | | * G >- | | * H' >- | o 4: 'I' >- | | >- o | 3: 'D' >- |\ \ >- | o | 2: 'C' >- | |/ >- o / 1: 'B' >- |/ >- o 0: 'A' >- >- $ hg manifest >- A >- B >- C >- D >- E >- G >- I >- >- $ cat E >- F >- >- $ cd .. >- >- >-Create repo d: >- >- $ hg init d >- $ cd d >- >- $ echo A > A >- $ hg ci -Am A >- adding A >- $ echo B > B >- $ hg ci -Am B >- adding B >- $ echo C > C >- $ hg ci -Am C >- adding C >- >- $ hg up -q 1 >- >- $ echo D > D >- $ hg ci -Am D >- adding D >- created new head >- $ hg merge >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- >- $ hg ci -m E >- >- $ hg up -q 0 >- >- $ echo F > F >- $ hg ci -Am F >- adding F >- created new head >- >- $ hg tglog >- @ 5: 'F' >- | >- | o 4: 'E' >- | |\ >- | | o 3: 'D' >- | | | >- | o | 2: 'C' >- | |/ >- | o 1: 'B' >- |/ >- o 0: 'A' >- >- $ cd .. >- >- >-Rebase and collapse - B onto F: >- >- $ hg clone -q -u . d d1 >- $ cd d1 >- >- $ hg rebase -s 1 --collapse >- saved backup bundle to $TESTTMP/d1/.hg/strip-backup/*-backup.hg (glob) >- >- $ hg tglog >- @ 2: 'Collapsed revision >- | * B >- | * C >- | * D >- | * E' >- o 1: 'F' >- | >- o 0: 'A' >- >- $ hg manifest >- A >- B >- C >- D >- F >- >!. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rename-dir-merge.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rename-dir-merge.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rename-dir-merge.t.err >@@ -1,165 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ mkdir t >- $ cd t >- $ hg init >- >- $ mkdir a >- $ echo foo > a/a >- $ echo bar > a/b >- $ hg ci -Am "0" >- adding a/a >- adding a/b >- >- $ hg co -C 0 >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg mv a b >- moving a/a to b/a >- moving a/b to b/b >- $ hg ci -m "1 mv a/ b/" >- >- $ hg co -C 0 >- 2 files updated, 0 files merged, 2 files removed, 0 files unresolved >- $ echo baz > a/c >- $ echo quux > a/d >- $ hg add a/c >- $ hg ci -m "2 add a/c" >- created new head >- >- $ hg merge --debug 1 >- searching for copies back to rev 1 >- unmatched files in local: >- a/c >- a/d >- unmatched files in other: >- b/a >- b/b >- all copies found (* = to merge, ! = divergent): >- b/a -> a/a >- b/b -> a/b >- checking for directory renames >- dir a/ -> b/ >- file a/c -> b/c >- file a/d -> b/d >- resolving manifests >- overwrite None partial False >- ancestor f9b20c0d4c51 local ce36d17b18fb+ remote 397f8b00a740 >- a/d: remote renamed directory to b/d -> d >- a/c: remote renamed directory to b/c -> d >- a/b: other deleted -> r >- a/a: other deleted -> r >- b/a: remote created -> g >- b/b: remote created -> g >- updating: a/a 1/6 files (16.67%) >- removing a/a >- updating: a/b 2/6 files (33.33%) >- removing a/b >- updating: a/c 3/6 files (50.00%) >- moving a/c to b/c >- updating: a/d 4/6 files (66.67%) >- moving a/d to b/d >- updating: b/a 5/6 files (83.33%) >- getting b/a >- updating: b/b 6/6 files (100.00%) >- getting b/b >- 4 files updated, 0 files merged, 2 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- >- $ echo a/* b/* >- a/* b/a b/b b/c b/d >- $ hg st -C >- M b/a >- M b/b >- A b/c >- a/c >- R a/a >- R a/b >- R a/c >- ? b/d >- $ hg ci -m "3 merge 2+1" >- $ hg debugrename b/c >- b/c renamed from a/c:354ae8da6e890359ef49ade27b68bbc361f3ca88 >- >- $ hg co -C 1 >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg merge --debug 2 >- searching for copies back to rev 1 >- unmatched files in local: >- b/a >- b/b >- b/d >- unmatched files in other: >- a/c >- all copies found (* = to merge, ! = divergent): >- b/a -> a/a >- b/b -> a/b >- checking for directory renames >- dir a/ -> b/ >- file a/c -> b/c >- resolving manifests >- overwrite None partial False >- ancestor f9b20c0d4c51 local 397f8b00a740+ remote ce36d17b18fb >- None: local renamed directory to b/c -> d >- updating:None 1/1 files (100.00%) >- getting a/c to b/c >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- >- $ echo a/* b/* >- a/* b/a b/b b/c b/d >- $ hg st -C >- A b/c >- a/c >- ? b/d >- $ hg ci -m "4 merge 1+2" >- created new head >- $ hg debugrename b/c >- b/c renamed from a/c:354ae8da6e890359ef49ade27b68bbc361f3ca88 >- >- >-Second scenario with two repos: >- >- $ cd .. >- $ mkdir r1 >- $ cd r1 >- $ hg init >- $ mkdir a >- $ echo foo > a/f >- $ hg add a >- adding a/f >- $ hg ci -m "a/f == foo" >- $ cd .. >- >- $ hg clone r1 r2 >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ cd r2 >- $ hg mv a b >- moving a/f to b/f >- $ echo foo1 > b/f >- $ hg ci -m" a -> b, b/f == foo1" >- $ cd .. >- >- $ cd r1 >- $ mkdir a/aa >- $ echo bar > a/aa/g >- $ hg add a/aa >- adding a/aa/g >- $ hg ci -m "a/aa/g" >- $ hg pull ../r2 >- pulling from ../r2 >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files (+1 heads) >- (run 'hg heads' to see heads, 'hg merge' to merge) >- >- $ hg merge >- 2 files updated, 0 files merged, 1 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- >- $ hg st -C >- M b/f >- A b/aa/g >- a/aa/g >- R a/aa/g >- R a/f >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rename-merge2.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rename-merge2.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rename-merge2.t.err >@@ -1,753 +1,4 @@ >+ >+ ### Abort: timeout after 180 seconds. > > $ mkdir -p t >- $ cd t >- $ cat <<EOF > merge >- > import sys, os >- > f = open(sys.argv[1], "wb") >- > f.write("merge %s %s %s" % (sys.argv[1], sys.argv[2], sys.argv[3])) >- > f.close() >- > EOF >- >-perform a test merge with possible renaming >-args: >-$1 = action in local branch >-$2 = action in remote branch >-$3 = action in working dir >-$4 = expected result >- >- $ tm() >- > { >- > mkdir t >- > cd t >- > hg init >- > echo "[merge]" >> .hg/hgrc >- > echo "followcopies = 1" >> .hg/hgrc >- > >- > # base >- > echo base > a >- > echo base > rev # used to force commits >- > hg add a rev >- > hg ci -m "base" >- > >- > # remote >- > echo remote > rev >- > if [ "$2" != "" ] ; then $2 ; fi >- > hg ci -m "remote" >- > >- > # local >- > hg co -q 0 >- > echo local > rev >- > if [ "$1" != "" ] ; then $1 ; fi >- > hg ci -m "local" >- > >- > # working dir >- > echo local > rev >- > if [ "$3" != "" ] ; then $3 ; fi >- > >- > # merge >- > echo "--------------" >- > echo "test L:$1 R:$2 W:$3 - $4" >- > echo "--------------" >- > hg merge -y --debug --traceback --tool="python ../merge" >- > >- > echo "--------------" >- > hg status -camC -X rev >- > >- > hg ci -m "merge" >- > >- > echo "--------------" >- > echo >- > >- > cd .. >- > rm -r t >- > } >- $ up() { >- > cp rev $1 >- > hg add $1 2> /dev/null >- > if [ "$2" != "" ] ; then >- > cp rev $2 >- > hg add $2 2> /dev/null >- > fi >- > } >- $ uc() { up $1; hg cp $1 $2; } # update + copy >- $ um() { up $1; hg mv $1 $2; } >- $ nc() { hg cp $1 $2; } # just copy >- $ nm() { hg mv $1 $2; } # just move >- $ tm "up a " "nc a b" " " "1 get local a to b" >- created new head >- -------------- >- test L:up a R:nc a b W: - 1 get local a to b >- -------------- >- searching for copies back to rev 1 >- unmatched files in other: >- b >- all copies found (* = to merge, ! = divergent): >- b -> a * >- checking for directory renames >- resolving manifests >- overwrite None partial False >- ancestor 924404dff337 local e300d1c794ec+ remote 4ce40f5aca24 >- rev: versions differ -> m >- a: remote copied to b -> m >- preserving a for resolve of b >- preserving rev for resolve of rev >- updating: a 1/2 files (50.00%) >- picked tool 'python ../merge' for b (binary False symlink False) >- merging a and b to b >- my b@e300d1c794ec+ other b@4ce40f5aca24 ancestor a@924404dff337 >- premerge successful >- updating: rev 2/2 files (100.00%) >- picked tool 'python ../merge' for rev (binary False symlink False) >- merging rev >- my rev@e300d1c794ec+ other rev@4ce40f5aca24 ancestor rev@924404dff337 >- 0 files updated, 2 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- -------------- >- M b >- a >- C a >- -------------- >- >- $ tm "nc a b" "up a " " " "2 get rem change to a and b" >- created new head >- -------------- >- test L:nc a b R:up a W: - 2 get rem change to a and b >- -------------- >- searching for copies back to rev 1 >- unmatched files in local: >- b >- all copies found (* = to merge, ! = divergent): >- b -> a * >- checking for directory renames >- resolving manifests >- overwrite None partial False >- ancestor 924404dff337 local 86a2aa42fc76+ remote f4db7e329e71 >- a: remote is newer -> g >- b: local copied/moved to a -> m >- rev: versions differ -> m >- preserving b for resolve of b >- preserving rev for resolve of rev >- updating: a 1/3 files (33.33%) >- getting a >- updating: b 2/3 files (66.67%) >- picked tool 'python ../merge' for b (binary False symlink False) >- merging b and a to b >- my b@86a2aa42fc76+ other a@f4db7e329e71 ancestor a@924404dff337 >- premerge successful >- updating: rev 3/3 files (100.00%) >- picked tool 'python ../merge' for rev (binary False symlink False) >- merging rev >- my rev@86a2aa42fc76+ other rev@f4db7e329e71 ancestor rev@924404dff337 >- 1 files updated, 2 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- -------------- >- M a >- M b >- a >- -------------- >- >- $ tm "up a " "nm a b" " " "3 get local a change to b, remove a" >- created new head >- -------------- >- test L:up a R:nm a b W: - 3 get local a change to b, remove a >- -------------- >- searching for copies back to rev 1 >- unmatched files in other: >- b >- all copies found (* = to merge, ! = divergent): >- b -> a * >- checking for directory renames >- resolving manifests >- overwrite None partial False >- ancestor 924404dff337 local e300d1c794ec+ remote bdb19105162a >- rev: versions differ -> m >- a: remote moved to b -> m >- preserving a for resolve of b >- preserving rev for resolve of rev >- removing a >- updating: a 1/2 files (50.00%) >- picked tool 'python ../merge' for b (binary False symlink False) >- merging a and b to b >- my b@e300d1c794ec+ other b@bdb19105162a ancestor a@924404dff337 >- premerge successful >- updating: rev 2/2 files (100.00%) >- picked tool 'python ../merge' for rev (binary False symlink False) >- merging rev >- my rev@e300d1c794ec+ other rev@bdb19105162a ancestor rev@924404dff337 >- 0 files updated, 2 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- -------------- >- M b >- a >- -------------- >- >- $ tm "nm a b" "up a " " " "4 get remote change to b" >- created new head >- -------------- >- test L:nm a b R:up a W: - 4 get remote change to b >- -------------- >- searching for copies back to rev 1 >- unmatched files in local: >- b >- all copies found (* = to merge, ! = divergent): >- b -> a * >- checking for directory renames >- resolving manifests >- overwrite None partial False >- ancestor 924404dff337 local 02963e448370+ remote f4db7e329e71 >- b: local copied/moved to a -> m >- rev: versions differ -> m >- preserving b for resolve of b >- preserving rev for resolve of rev >- updating: b 1/2 files (50.00%) >- picked tool 'python ../merge' for b (binary False symlink False) >- merging b and a to b >- my b@02963e448370+ other a@f4db7e329e71 ancestor a@924404dff337 >- premerge successful >- updating: rev 2/2 files (100.00%) >- picked tool 'python ../merge' for rev (binary False symlink False) >- merging rev >- my rev@02963e448370+ other rev@f4db7e329e71 ancestor rev@924404dff337 >- 0 files updated, 2 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- -------------- >- M b >- a >- -------------- >- >- $ tm " " "nc a b" " " "5 get b" >- created new head >- -------------- >- test L: R:nc a b W: - 5 get b >- -------------- >- searching for copies back to rev 1 >- unmatched files in other: >- b >- all copies found (* = to merge, ! = divergent): >- b -> a >- checking for directory renames >- resolving manifests >- overwrite None partial False >- ancestor 924404dff337 local 94b33a1b7f2d+ remote 4ce40f5aca24 >- rev: versions differ -> m >- b: remote created -> g >- preserving rev for resolve of rev >- updating: b 1/2 files (50.00%) >- getting b >- updating: rev 2/2 files (100.00%) >- picked tool 'python ../merge' for rev (binary False symlink False) >- merging rev >- my rev@94b33a1b7f2d+ other rev@4ce40f5aca24 ancestor rev@924404dff337 >- 1 files updated, 1 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- -------------- >- M b >- C a >- -------------- >- >- $ tm "nc a b" " " " " "6 nothing" >- created new head >- -------------- >- test L:nc a b R: W: - 6 nothing >- -------------- >- searching for copies back to rev 1 >- unmatched files in local: >- b >- all copies found (* = to merge, ! = divergent): >- b -> a >- checking for directory renames >- resolving manifests >- overwrite None partial False >- ancestor 924404dff337 local 86a2aa42fc76+ remote 97c705ade336 >- rev: versions differ -> m >- preserving rev for resolve of rev >- updating: rev 1/1 files (100.00%) >- picked tool 'python ../merge' for rev (binary False symlink False) >- merging rev >- my rev@86a2aa42fc76+ other rev@97c705ade336 ancestor rev@924404dff337 >- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- -------------- >- C a >- C b >- -------------- >- >- $ tm " " "nm a b" " " "7 get b" >- created new head >- -------------- >- test L: R:nm a b W: - 7 get b >- -------------- >- searching for copies back to rev 1 >- unmatched files in other: >- b >- all copies found (* = to merge, ! = divergent): >- b -> a >- checking for directory renames >- resolving manifests >- overwrite None partial False >- ancestor 924404dff337 local 94b33a1b7f2d+ remote bdb19105162a >- a: other deleted -> r >- rev: versions differ -> m >- b: remote created -> g >- preserving rev for resolve of rev >- updating: a 1/3 files (33.33%) >- removing a >- updating: b 2/3 files (66.67%) >- getting b >- updating: rev 3/3 files (100.00%) >- picked tool 'python ../merge' for rev (binary False symlink False) >- merging rev >- my rev@94b33a1b7f2d+ other rev@bdb19105162a ancestor rev@924404dff337 >- 1 files updated, 1 files merged, 1 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- -------------- >- M b >- -------------- >- >- $ tm "nm a b" " " " " "8 nothing" >- created new head >- -------------- >- test L:nm a b R: W: - 8 nothing >- -------------- >- searching for copies back to rev 1 >- unmatched files in local: >- b >- all copies found (* = to merge, ! = divergent): >- b -> a >- checking for directory renames >- resolving manifests >- overwrite None partial False >- ancestor 924404dff337 local 02963e448370+ remote 97c705ade336 >- rev: versions differ -> m >- preserving rev for resolve of rev >- updating: rev 1/1 files (100.00%) >- picked tool 'python ../merge' for rev (binary False symlink False) >- merging rev >- my rev@02963e448370+ other rev@97c705ade336 ancestor rev@924404dff337 >- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- -------------- >- C b >- -------------- >- >- $ tm "um a b" "um a b" " " "9 do merge with ancestor in a" >- created new head >- -------------- >- test L:um a b R:um a b W: - 9 do merge with ancestor in a >- -------------- >- searching for copies back to rev 1 >- resolving manifests >- overwrite None partial False >- ancestor 924404dff337 local 62e7bf090eba+ remote 49b6d8032493 >- b: versions differ -> m >- rev: versions differ -> m >- preserving b for resolve of b >- preserving rev for resolve of rev >- updating: b 1/2 files (50.00%) >- picked tool 'python ../merge' for b (binary False symlink False) >- merging b >- my b@62e7bf090eba+ other b@49b6d8032493 ancestor a@924404dff337 >- updating: rev 2/2 files (100.00%) >- picked tool 'python ../merge' for rev (binary False symlink False) >- merging rev >- my rev@62e7bf090eba+ other rev@49b6d8032493 ancestor rev@924404dff337 >- 0 files updated, 2 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- -------------- >- M b >- -------------- >- >- >-m "um a c" "um x c" " " "10 do merge with no ancestor" >- >- $ tm "nm a b" "nm a c" " " "11 get c, keep b" >- created new head >- -------------- >- test L:nm a b R:nm a c W: - 11 get c, keep b >- -------------- >- searching for copies back to rev 1 >- unmatched files in local: >- b >- unmatched files in other: >- c >- all copies found (* = to merge, ! = divergent): >- c -> a ! >- b -> a ! >- checking for directory renames >- a: divergent renames -> dr >- resolving manifests >- overwrite None partial False >- ancestor 924404dff337 local 02963e448370+ remote fe905ef2c33e >- rev: versions differ -> m >- c: remote created -> g >- preserving rev for resolve of rev >- updating: a 1/3 files (33.33%) >- note: possible conflict - a was renamed multiple times to: >- b >- c >- updating: c 2/3 files (66.67%) >- getting c >- updating: rev 3/3 files (100.00%) >- picked tool 'python ../merge' for rev (binary False symlink False) >- merging rev >- my rev@02963e448370+ other rev@fe905ef2c33e ancestor rev@924404dff337 >- 1 files updated, 1 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- -------------- >- M c >- C b >- -------------- >- >- $ tm "nc a b" "up b " " " "12 merge b no ancestor" >- created new head >- -------------- >- test L:nc a b R:up b W: - 12 merge b no ancestor >- -------------- >- searching for copies back to rev 1 >- resolving manifests >- overwrite None partial False >- ancestor 924404dff337 local 86a2aa42fc76+ remote af30c7647fc7 >- b: versions differ -> m >- rev: versions differ -> m >- preserving b for resolve of b >- preserving rev for resolve of rev >- updating: b 1/2 files (50.00%) >- picked tool 'python ../merge' for b (binary False symlink False) >- merging b >- my b@86a2aa42fc76+ other b@af30c7647fc7 ancestor b@000000000000 >- updating: rev 2/2 files (100.00%) >- picked tool 'python ../merge' for rev (binary False symlink False) >- merging rev >- my rev@86a2aa42fc76+ other rev@af30c7647fc7 ancestor rev@924404dff337 >- 0 files updated, 2 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- -------------- >- M b >- C a >- -------------- >- >- $ tm "up b " "nm a b" " " "13 merge b no ancestor" >- created new head >- -------------- >- test L:up b R:nm a b W: - 13 merge b no ancestor >- -------------- >- searching for copies back to rev 1 >- resolving manifests >- overwrite None partial False >- ancestor 924404dff337 local 59318016310c+ remote bdb19105162a >- a: other deleted -> r >- b: versions differ -> m >- rev: versions differ -> m >- preserving b for resolve of b >- preserving rev for resolve of rev >- updating: a 1/3 files (33.33%) >- removing a >- updating: b 2/3 files (66.67%) >- picked tool 'python ../merge' for b (binary False symlink False) >- merging b >- my b@59318016310c+ other b@bdb19105162a ancestor b@000000000000 >- updating: rev 3/3 files (100.00%) >- picked tool 'python ../merge' for rev (binary False symlink False) >- merging rev >- my rev@59318016310c+ other rev@bdb19105162a ancestor rev@924404dff337 >- 0 files updated, 2 files merged, 1 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- -------------- >- M b >- -------------- >- >- $ tm "nc a b" "up a b" " " "14 merge b no ancestor" >- created new head >- -------------- >- test L:nc a b R:up a b W: - 14 merge b no ancestor >- -------------- >- searching for copies back to rev 1 >- resolving manifests >- overwrite None partial False >- ancestor 924404dff337 local 86a2aa42fc76+ remote 8dbce441892a >- a: remote is newer -> g >- b: versions differ -> m >- rev: versions differ -> m >- preserving b for resolve of b >- preserving rev for resolve of rev >- updating: a 1/3 files (33.33%) >- getting a >- updating: b 2/3 files (66.67%) >- picked tool 'python ../merge' for b (binary False symlink False) >- merging b >- my b@86a2aa42fc76+ other b@8dbce441892a ancestor b@000000000000 >- updating: rev 3/3 files (100.00%) >- picked tool 'python ../merge' for rev (binary False symlink False) >- merging rev >- my rev@86a2aa42fc76+ other rev@8dbce441892a ancestor rev@924404dff337 >- 1 files updated, 2 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- -------------- >- M a >- M b >- -------------- >- >- $ tm "up b " "nm a b" " " "15 merge b no ancestor, remove a" >- created new head >- -------------- >- test L:up b R:nm a b W: - 15 merge b no ancestor, remove a >- -------------- >- searching for copies back to rev 1 >- resolving manifests >- overwrite None partial False >- ancestor 924404dff337 local 59318016310c+ remote bdb19105162a >- a: other deleted -> r >- b: versions differ -> m >- rev: versions differ -> m >- preserving b for resolve of b >- preserving rev for resolve of rev >- updating: a 1/3 files (33.33%) >- removing a >- updating: b 2/3 files (66.67%) >- picked tool 'python ../merge' for b (binary False symlink False) >- merging b >- my b@59318016310c+ other b@bdb19105162a ancestor b@000000000000 >- updating: rev 3/3 files (100.00%) >- picked tool 'python ../merge' for rev (binary False symlink False) >- merging rev >- my rev@59318016310c+ other rev@bdb19105162a ancestor rev@924404dff337 >- 0 files updated, 2 files merged, 1 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- -------------- >- M b >- -------------- >- >- $ tm "nc a b" "up a b" " " "16 get a, merge b no ancestor" >- created new head >- -------------- >- test L:nc a b R:up a b W: - 16 get a, merge b no ancestor >- -------------- >- searching for copies back to rev 1 >- resolving manifests >- overwrite None partial False >- ancestor 924404dff337 local 86a2aa42fc76+ remote 8dbce441892a >- a: remote is newer -> g >- b: versions differ -> m >- rev: versions differ -> m >- preserving b for resolve of b >- preserving rev for resolve of rev >- updating: a 1/3 files (33.33%) >- getting a >- updating: b 2/3 files (66.67%) >- picked tool 'python ../merge' for b (binary False symlink False) >- merging b >- my b@86a2aa42fc76+ other b@8dbce441892a ancestor b@000000000000 >- updating: rev 3/3 files (100.00%) >- picked tool 'python ../merge' for rev (binary False symlink False) >- merging rev >- my rev@86a2aa42fc76+ other rev@8dbce441892a ancestor rev@924404dff337 >- 1 files updated, 2 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- -------------- >- M a >- M b >- -------------- >- >- $ tm "up a b" "nc a b" " " "17 keep a, merge b no ancestor" >- created new head >- -------------- >- test L:up a b R:nc a b W: - 17 keep a, merge b no ancestor >- -------------- >- searching for copies back to rev 1 >- resolving manifests >- overwrite None partial False >- ancestor 924404dff337 local 0b76e65c8289+ remote 4ce40f5aca24 >- b: versions differ -> m >- rev: versions differ -> m >- preserving b for resolve of b >- preserving rev for resolve of rev >- updating: b 1/2 files (50.00%) >- picked tool 'python ../merge' for b (binary False symlink False) >- merging b >- my b@0b76e65c8289+ other b@4ce40f5aca24 ancestor b@000000000000 >- updating: rev 2/2 files (100.00%) >- picked tool 'python ../merge' for rev (binary False symlink False) >- merging rev >- my rev@0b76e65c8289+ other rev@4ce40f5aca24 ancestor rev@924404dff337 >- 0 files updated, 2 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- -------------- >- M b >- C a >- -------------- >- >- $ tm "nm a b" "up a b" " " "18 merge b no ancestor" >- created new head >- -------------- >- test L:nm a b R:up a b W: - 18 merge b no ancestor >- -------------- >- searching for copies back to rev 1 >- resolving manifests >- overwrite None partial False >- ancestor 924404dff337 local 02963e448370+ remote 8dbce441892a >- b: versions differ -> m >- rev: versions differ -> m >- remote changed a which local deleted >- use (c)hanged version or leave (d)eleted? c >- a: prompt recreating -> g >- preserving b for resolve of b >- preserving rev for resolve of rev >- updating: a 1/3 files (33.33%) >- getting a >- updating: b 2/3 files (66.67%) >- picked tool 'python ../merge' for b (binary False symlink False) >- merging b >- my b@02963e448370+ other b@8dbce441892a ancestor b@000000000000 >- updating: rev 3/3 files (100.00%) >- picked tool 'python ../merge' for rev (binary False symlink False) >- merging rev >- my rev@02963e448370+ other rev@8dbce441892a ancestor rev@924404dff337 >- 1 files updated, 2 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- -------------- >- M a >- M b >- -------------- >- >- $ tm "up a b" "nm a b" " " "19 merge b no ancestor, prompt remove a" >- created new head >- -------------- >- test L:up a b R:nm a b W: - 19 merge b no ancestor, prompt remove a >- -------------- >- searching for copies back to rev 1 >- resolving manifests >- overwrite None partial False >- ancestor 924404dff337 local 0b76e65c8289+ remote bdb19105162a >- local changed a which remote deleted >- use (c)hanged version or (d)elete? c >- a: prompt keep -> a >- b: versions differ -> m >- rev: versions differ -> m >- preserving b for resolve of b >- preserving rev for resolve of rev >- updating: a 1/3 files (33.33%) >- updating: b 2/3 files (66.67%) >- picked tool 'python ../merge' for b (binary False symlink False) >- merging b >- my b@0b76e65c8289+ other b@bdb19105162a ancestor b@000000000000 >- updating: rev 3/3 files (100.00%) >- picked tool 'python ../merge' for rev (binary False symlink False) >- merging rev >- my rev@0b76e65c8289+ other rev@bdb19105162a ancestor rev@924404dff337 >- 0 files updated, 2 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- -------------- >- M b >- C a >- -------------- >- >- $ tm "up a " "um a b" " " "20 merge a and b to b, remove a" >- created new head >- -------------- >- test L:up a R:um a b W: - 20 merge a and b to b, remove a >- -------------- >- searching for copies back to rev 1 >- unmatched files in other: >- b >- all copies found (* = to merge, ! = divergent): >- b -> a * >- checking for directory renames >- resolving manifests >- overwrite None partial False >- ancestor 924404dff337 local e300d1c794ec+ remote 49b6d8032493 >- rev: versions differ -> m >- a: remote moved to b -> m >- preserving a for resolve of b >- preserving rev for resolve of rev >- removing a >- updating: a 1/2 files (50.00%) >- picked tool 'python ../merge' for b (binary False symlink False) >- merging a and b to b >- my b@e300d1c794ec+ other b@49b6d8032493 ancestor a@924404dff337 >- updating: rev 2/2 files (100.00%) >- picked tool 'python ../merge' for rev (binary False symlink False) >- merging rev >- my rev@e300d1c794ec+ other rev@49b6d8032493 ancestor rev@924404dff337 >- 0 files updated, 2 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- -------------- >- M b >- a >- -------------- >- >- $ tm "um a b" "up a " " " "21 merge a and b to b" >- created new head >- -------------- >- test L:um a b R:up a W: - 21 merge a and b to b >- -------------- >- searching for copies back to rev 1 >- unmatched files in local: >- b >- all copies found (* = to merge, ! = divergent): >- b -> a * >- checking for directory renames >- resolving manifests >- overwrite None partial False >- ancestor 924404dff337 local 62e7bf090eba+ remote f4db7e329e71 >- b: local copied/moved to a -> m >- rev: versions differ -> m >- preserving b for resolve of b >- preserving rev for resolve of rev >- updating: b 1/2 files (50.00%) >- picked tool 'python ../merge' for b (binary False symlink False) >- merging b and a to b >- my b@62e7bf090eba+ other a@f4db7e329e71 ancestor a@924404dff337 >- updating: rev 2/2 files (100.00%) >- picked tool 'python ../merge' for rev (binary False symlink False) >- merging rev >- my rev@62e7bf090eba+ other rev@f4db7e329e71 ancestor rev@924404dff337 >- 0 files updated, 2 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- -------------- >- M b >- a >- -------------- >- >- >-m "nm a b" "um x a" " " "22 get a, keep b" >- >- $ tm "nm a b" "up a c" " " "23 get c, keep b" >- created new head >- -------------- >- test L:nm a b R:up a c W: - 23 get c, keep b >- -------------- >- searching for copies back to rev 1 >- unmatched files in local: >- b >- unmatched files in other: >- c >- all copies found (* = to merge, ! = divergent): >- b -> a * >- checking for directory renames >- resolving manifests >- overwrite None partial False >- ancestor 924404dff337 local 02963e448370+ remote 2b958612230f >- b: local copied/moved to a -> m >- rev: versions differ -> m >- c: remote created -> g >- preserving b for resolve of b >- preserving rev for resolve of rev >- updating: b 1/3 files (33.33%) >- picked tool 'python ../merge' for b (binary False symlink False) >- merging b and a to b >- my b@02963e448370+ other a@2b958612230f ancestor a@924404dff337 >- premerge successful >- updating: c 2/3 files (66.67%) >- getting c >- updating: rev 3/3 files (100.00%) >- picked tool 'python ../merge' for rev (binary False symlink False) >- merging rev >- my rev@02963e448370+ other rev@2b958612230f ancestor rev@924404dff337 >- 1 files updated, 2 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- -------------- >- M b >- a >- M c >- -------------- >- >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rebase-issue-noparam-single-rev.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rebase-issue-noparam-single-rev.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rebase-issue-noparam-single-rev.t.err >@@ -1,3 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ cat >> $HGRCPATH <<EOF > > [extensions] > > graphlog= >@@ -6,118 +8,3 @@ > > [alias] > > tglog = log -G --template "{rev}: '{desc}' {branches}\n" > > EOF >- >- >- $ hg init a >- $ cd a >- >- $ echo c1 > c1 >- $ hg ci -Am c1 >- adding c1 >- >- $ echo c2 > c2 >- $ hg ci -Am c2 >- adding c2 >- >- $ echo l1 > l1 >- $ hg ci -Am l1 >- adding l1 >- >- $ hg up -q -C 1 >- >- $ echo r1 > r1 >- $ hg ci -Am r1 >- adding r1 >- created new head >- >- $ echo r2 > r2 >- $ hg ci -Am r2 >- adding r2 >- >- $ hg tglog >- @ 4: 'r2' >- | >- o 3: 'r1' >- | >- | o 2: 'l1' >- |/ >- o 1: 'c2' >- | >- o 0: 'c1' >- >-Rebase with no arguments - single revision in source branch: >- >- $ hg up -q -C 2 >- >- $ hg rebase >- saved backup bundle to $TESTTMP/a/.hg/strip-backup/*-backup.hg (glob) >- >- $ hg tglog >- @ 4: 'l1' >- | >- o 3: 'r2' >- | >- o 2: 'r1' >- | >- o 1: 'c2' >- | >- o 0: 'c1' >- >- $ cd .. >- >- >- $ hg init b >- $ cd b >- >- $ echo c1 > c1 >- $ hg ci -Am c1 >- adding c1 >- >- $ echo c2 > c2 >- $ hg ci -Am c2 >- adding c2 >- >- $ echo l1 > l1 >- $ hg ci -Am l1 >- adding l1 >- >- $ echo l2 > l2 >- $ hg ci -Am l2 >- adding l2 >- >- $ hg up -q -C 1 >- >- $ echo r1 > r1 >- $ hg ci -Am r1 >- adding r1 >- created new head >- >- $ hg tglog >- @ 4: 'r1' >- | >- | o 3: 'l2' >- | | >- | o 2: 'l1' >- |/ >- o 1: 'c2' >- | >- o 0: 'c1' >- >-Rebase with no arguments - single revision in target branch: >- >- $ hg up -q -C 3 >- >- $ hg rebase >- saved backup bundle to $TESTTMP/b/.hg/strip-backup/*-backup.hg (glob) >- >- $ hg tglog >- @ 4: 'l2' >- | >- o 3: 'l1' >- | >- o 2: 'r1' >- | >- o 1: 'c2' >- | >- o 0: 'c1' >- >!... >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-record.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-record.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-record.t.err >@@ -1,939 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > Set up a repo > > $ echo "[ui]" >> $HGRCPATH >- $ echo "interactive=true" >> $HGRCPATH >- $ echo "[extensions]" >> $HGRCPATH >- $ echo "record=" >> $HGRCPATH >- >- $ hg init a >- $ cd a >- >-Select no files >- >- $ touch empty-rw >- $ hg add empty-rw >- >- $ hg record empty-rw<<EOF >- > n >- > EOF >- diff --git a/empty-rw b/empty-rw >- new file mode 100644 >- examine changes to 'empty-rw'? [Ynsfdaq?] >- no changes to record >- >- $ hg tip -p >- changeset: -1:000000000000 >- tag: tip >- user: >- date: Thu Jan 01 00:00:00 1970 +0000 >- >- >- >-Select files but no hunks >- >- $ hg record empty-rw<<EOF >- > y >- > n >- > EOF >- diff --git a/empty-rw b/empty-rw >- new file mode 100644 >- examine changes to 'empty-rw'? [Ynsfdaq?] >- abort: empty commit message >- [255] >- >- $ hg tip -p >- changeset: -1:000000000000 >- tag: tip >- user: >- date: Thu Jan 01 00:00:00 1970 +0000 >- >- >- >-Record empty file >- >- $ hg record -d '0 0' -m empty empty-rw<<EOF >- > y >- > y >- > EOF >- diff --git a/empty-rw b/empty-rw >- new file mode 100644 >- examine changes to 'empty-rw'? [Ynsfdaq?] >- >- $ hg tip -p >- changeset: 0:c0708cf4e46e >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: empty >- >- >- >-Summary shows we updated to the new cset >- >- $ hg summary >- parent: 0:c0708cf4e46e tip >- empty >- branch: default >- commit: (clean) >- update: (current) >- >-Rename empty file >- >- $ hg mv empty-rw empty-rename >- $ hg record -d '1 0' -m rename<<EOF >- > y >- > EOF >- diff --git a/empty-rw b/empty-rename >- rename from empty-rw >- rename to empty-rename >- examine changes to 'empty-rw' and 'empty-rename'? [Ynsfdaq?] >- >- $ hg tip -p >- changeset: 1:d695e8dcb197 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:01 1970 +0000 >- summary: rename >- >- >- >-Copy empty file >- >- $ hg cp empty-rename empty-copy >- $ hg record -d '2 0' -m copy<<EOF >- > y >- > EOF >- diff --git a/empty-rename b/empty-copy >- copy from empty-rename >- copy to empty-copy >- examine changes to 'empty-rename' and 'empty-copy'? [Ynsfdaq?] >- >- $ hg tip -p >- changeset: 2:1d4b90bea524 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:02 1970 +0000 >- summary: copy >- >- >- >-Delete empty file >- >- $ hg rm empty-copy >- $ hg record -d '3 0' -m delete<<EOF >- > y >- > EOF >- diff --git a/empty-copy b/empty-copy >- deleted file mode 100644 >- examine changes to 'empty-copy'? [Ynsfdaq?] >- >- $ hg tip -p >- changeset: 3:b39a238f01a1 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:03 1970 +0000 >- summary: delete >- >- >- >-Add binary file >- >- $ hg bundle --base -2 tip.bundle >- 1 changesets found >- $ hg add tip.bundle >- $ hg record -d '4 0' -m binary<<EOF >- > y >- > EOF >- diff --git a/tip.bundle b/tip.bundle >- new file mode 100644 >- this is a binary file >- examine changes to 'tip.bundle'? [Ynsfdaq?] >- >- $ hg tip -p >- changeset: 4:ad816da3711e >- tag: tip >- user: test >- date: Thu Jan 01 00:00:04 1970 +0000 >- summary: binary >- >- diff -r b39a238f01a1 -r ad816da3711e tip.bundle >- Binary file tip.bundle has changed >- >- >-Change binary file >- >- $ hg bundle --base -2 tip.bundle >- 1 changesets found >- $ hg record -d '5 0' -m binary-change<<EOF >- > y >- > EOF >- diff --git a/tip.bundle b/tip.bundle >- this modifies a binary file (all or nothing) >- examine changes to 'tip.bundle'? [Ynsfdaq?] >- >- $ hg tip -p >- changeset: 5:dccd6f3eb485 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:05 1970 +0000 >- summary: binary-change >- >- diff -r ad816da3711e -r dccd6f3eb485 tip.bundle >- Binary file tip.bundle has changed >- >- >-Rename and change binary file >- >- $ hg mv tip.bundle top.bundle >- $ hg bundle --base -2 top.bundle >- 1 changesets found >- $ hg record -d '6 0' -m binary-change-rename<<EOF >- > y >- > EOF >- diff --git a/tip.bundle b/top.bundle >- rename from tip.bundle >- rename to top.bundle >- this modifies a binary file (all or nothing) >- examine changes to 'tip.bundle' and 'top.bundle'? [Ynsfdaq?] >- >- $ hg tip -p >- changeset: 6:7fa44105f5b3 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:06 1970 +0000 >- summary: binary-change-rename >- >- diff -r dccd6f3eb485 -r 7fa44105f5b3 tip.bundle >- Binary file tip.bundle has changed >- diff -r dccd6f3eb485 -r 7fa44105f5b3 top.bundle >- Binary file top.bundle has changed >- >- >-Add plain file >- >- $ for i in 1 2 3 4 5 6 7 8 9 10; do >- > echo $i >> plain >- > done >- >- $ hg add plain >- $ hg record -d '7 0' -m plain plain<<EOF >- > y >- > y >- > EOF >- diff --git a/plain b/plain >- new file mode 100644 >- examine changes to 'plain'? [Ynsfdaq?] >- >- $ hg tip -p >- changeset: 7:11fb457c1be4 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:07 1970 +0000 >- summary: plain >- >- diff -r 7fa44105f5b3 -r 11fb457c1be4 plain >- --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >- +++ b/plain Thu Jan 01 00:00:07 1970 +0000 >- @@ -0,0 +1,10 @@ >- +1 >- +2 >- +3 >- +4 >- +5 >- +6 >- +7 >- +8 >- +9 >- +10 >- >- >-Modify end of plain file >- >- $ echo 11 >> plain >- $ hg record -d '8 0' -m end plain <<EOF >- > y >- > y >- > EOF >- diff --git a/plain b/plain >- 1 hunks, 1 lines changed >- examine changes to 'plain'? [Ynsfdaq?] >- @@ -8,3 +8,4 @@ >- 8 >- 9 >- 10 >- +11 >- record this change to 'plain'? [Ynsfdaq?] >- >-Modify end of plain file, no EOL >- >- $ hg tip --template '{node}' >> plain >- $ hg record -d '9 0' -m noeol plain <<EOF >- > y >- > y >- > EOF >- diff --git a/plain b/plain >- 1 hunks, 1 lines changed >- examine changes to 'plain'? [Ynsfdaq?] >- @@ -9,3 +9,4 @@ >- 9 >- 10 >- 11 >- +7264f99c5f5ff3261504828afa4fb4d406c3af54 >- \ No newline at end of file >- record this change to 'plain'? [Ynsfdaq?] >- >-Modify end of plain file, add EOL >- >- $ echo >> plain >- $ hg record -d '10 0' -m eol plain <<EOF >- > y >- > y >- > y >- > EOF >- diff --git a/plain b/plain >- 1 hunks, 1 lines changed >- examine changes to 'plain'? [Ynsfdaq?] >- @@ -9,4 +9,4 @@ >- 9 >- 10 >- 11 >- -7264f99c5f5ff3261504828afa4fb4d406c3af54 >- \ No newline at end of file >- +7264f99c5f5ff3261504828afa4fb4d406c3af54 >- record this change to 'plain'? [Ynsfdaq?] >- >-Modify beginning, trim end, record both >- >- $ rm plain >- $ for i in 2 2 3 4 5 6 7 8 9 10; do >- > echo $i >> plain >- > done >- >- $ hg record -d '10 0' -m begin-and-end plain <<EOF >- > y >- > y >- > y >- > EOF >- diff --git a/plain b/plain >- 2 hunks, 3 lines changed >- examine changes to 'plain'? [Ynsfdaq?] >- @@ -1,4 +1,4 @@ >- -1 >- +2 >- 2 >- 3 >- 4 >- record change 1/2 to 'plain'? [Ynsfdaq?] >- @@ -8,5 +8,3 @@ >- 8 >- 9 >- 10 >- -11 >- -7264f99c5f5ff3261504828afa4fb4d406c3af54 >- record change 2/2 to 'plain'? [Ynsfdaq?] >- >- $ hg tip -p >- changeset: 11:efca65c9b09e >- tag: tip >- user: test >- date: Thu Jan 01 00:00:10 1970 +0000 >- summary: begin-and-end >- >- diff -r cd07d48e8cbe -r efca65c9b09e plain >- --- a/plain Thu Jan 01 00:00:10 1970 +0000 >- +++ b/plain Thu Jan 01 00:00:10 1970 +0000 >- @@ -1,4 +1,4 @@ >- -1 >- +2 >- 2 >- 3 >- 4 >- @@ -8,5 +8,3 @@ >- 8 >- 9 >- 10 >- -11 >- -7264f99c5f5ff3261504828afa4fb4d406c3af54 >- >- >-Trim beginning, modify end >- >- $ rm plain >- > for i in 4 5 6 7 8 9 10.new; do >- > echo $i >> plain >- > done >- >-Record end >- >- $ hg record -d '11 0' -m end-only plain <<EOF >- > y >- > n >- > y >- > EOF >- diff --git a/plain b/plain >- 2 hunks, 4 lines changed >- examine changes to 'plain'? [Ynsfdaq?] >- @@ -1,9 +1,6 @@ >- -2 >- -2 >- -3 >- 4 >- 5 >- 6 >- 7 >- 8 >- 9 >- record change 1/2 to 'plain'? [Ynsfdaq?] >- @@ -4,7 +1,7 @@ >- 4 >- 5 >- 6 >- 7 >- 8 >- 9 >- -10 >- +10.new >- record change 2/2 to 'plain'? [Ynsfdaq?] >- >- $ hg tip -p >- changeset: 12:7d1e66983c15 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:11 1970 +0000 >- summary: end-only >- >- diff -r efca65c9b09e -r 7d1e66983c15 plain >- --- a/plain Thu Jan 01 00:00:10 1970 +0000 >- +++ b/plain Thu Jan 01 00:00:11 1970 +0000 >- @@ -7,4 +7,4 @@ >- 7 >- 8 >- 9 >- -10 >- +10.new >- >- >-Record beginning >- >- $ hg record -d '12 0' -m begin-only plain <<EOF >- > y >- > y >- > EOF >- diff --git a/plain b/plain >- 1 hunks, 3 lines changed >- examine changes to 'plain'? [Ynsfdaq?] >- @@ -1,6 +1,3 @@ >- -2 >- -2 >- -3 >- 4 >- 5 >- 6 >- record this change to 'plain'? [Ynsfdaq?] >- >- $ hg tip -p >- changeset: 13:a09fc62a0e61 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:12 1970 +0000 >- summary: begin-only >- >- diff -r 7d1e66983c15 -r a09fc62a0e61 plain >- --- a/plain Thu Jan 01 00:00:11 1970 +0000 >- +++ b/plain Thu Jan 01 00:00:12 1970 +0000 >- @@ -1,6 +1,3 @@ >- -2 >- -2 >- -3 >- 4 >- 5 >- 6 >- >- >-Add to beginning, trim from end >- >- $ rm plain >- $ for i in 1 2 3 4 5 6 7 8 9; do >- > echo $i >> plain >- > done >- >-Record end >- >- $ hg record --traceback -d '13 0' -m end-again plain<<EOF >- > y >- > n >- > y >- > EOF >- diff --git a/plain b/plain >- 2 hunks, 4 lines changed >- examine changes to 'plain'? [Ynsfdaq?] >- @@ -1,6 +1,9 @@ >- +1 >- +2 >- +3 >- 4 >- 5 >- 6 >- 7 >- 8 >- 9 >- record change 1/2 to 'plain'? [Ynsfdaq?] >- @@ -1,7 +4,6 @@ >- 4 >- 5 >- 6 >- 7 >- 8 >- 9 >- -10.new >- record change 2/2 to 'plain'? [Ynsfdaq?] >- >-Add to beginning, middle, end >- >- $ rm plain >- $ for i in 1 2 3 4 5 5.new 5.reallynew 6 7 8 9 10 11; do >- > echo $i >> plain >- > done >- >-Record beginning, middle >- >- $ hg record -d '14 0' -m middle-only plain <<EOF >- > y >- > y >- > y >- > n >- > EOF >- diff --git a/plain b/plain >- 3 hunks, 7 lines changed >- examine changes to 'plain'? [Ynsfdaq?] >- @@ -1,2 +1,5 @@ >- +1 >- +2 >- +3 >- 4 >- 5 >- record change 1/3 to 'plain'? [Ynsfdaq?] >- @@ -1,6 +4,8 @@ >- 4 >- 5 >- +5.new >- +5.reallynew >- 6 >- 7 >- 8 >- 9 >- record change 2/3 to 'plain'? [Ynsfdaq?] >- @@ -3,4 +8,6 @@ >- 6 >- 7 >- 8 >- 9 >- +10 >- +11 >- record change 3/3 to 'plain'? [Ynsfdaq?] >- >- $ hg tip -p >- changeset: 15:7d137997f3a6 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:14 1970 +0000 >- summary: middle-only >- >- diff -r c0b8e5fb0be6 -r 7d137997f3a6 plain >- --- a/plain Thu Jan 01 00:00:13 1970 +0000 >- +++ b/plain Thu Jan 01 00:00:14 1970 +0000 >- @@ -1,5 +1,10 @@ >- +1 >- +2 >- +3 >- 4 >- 5 >- +5.new >- +5.reallynew >- 6 >- 7 >- 8 >- >- >-Record end >- >- $ hg record -d '15 0' -m end-only plain <<EOF >- > y >- > y >- > EOF >- diff --git a/plain b/plain >- 1 hunks, 2 lines changed >- examine changes to 'plain'? [Ynsfdaq?] >- @@ -9,3 +9,5 @@ >- 7 >- 8 >- 9 >- +10 >- +11 >- record this change to 'plain'? [Ynsfdaq?] >- >- $ hg tip -p >- changeset: 16:4959e3ff13eb >- tag: tip >- user: test >- date: Thu Jan 01 00:00:15 1970 +0000 >- summary: end-only >- >- diff -r 7d137997f3a6 -r 4959e3ff13eb plain >- --- a/plain Thu Jan 01 00:00:14 1970 +0000 >- +++ b/plain Thu Jan 01 00:00:15 1970 +0000 >- @@ -9,3 +9,5 @@ >- 7 >- 8 >- 9 >- +10 >- +11 >- >- >- $ mkdir subdir >- $ cd subdir >- $ echo a > a >- $ hg ci -d '16 0' -Amsubdir >- adding subdir/a >- >- $ echo a >> a >- $ hg record -d '16 0' -m subdir-change a <<EOF >- > y >- > y >- > EOF >- diff --git a/subdir/a b/subdir/a >- 1 hunks, 1 lines changed >- examine changes to 'subdir/a'? [Ynsfdaq?] >- @@ -1,1 +1,2 @@ >- a >- +a >- record this change to 'subdir/a'? [Ynsfdaq?] >- >- $ hg tip -p >- changeset: 18:40698cd490b2 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:16 1970 +0000 >- summary: subdir-change >- >- diff -r 661eacdc08b9 -r 40698cd490b2 subdir/a >- --- a/subdir/a Thu Jan 01 00:00:16 1970 +0000 >- +++ b/subdir/a Thu Jan 01 00:00:16 1970 +0000 >- @@ -1,1 +1,2 @@ >- a >- +a >- >- >- $ echo a > f1 >- $ echo b > f2 >- $ hg add f1 f2 >- >- $ hg ci -mz -d '17 0' >- >- $ echo a >> f1 >- $ echo b >> f2 >- >-Help, quit >- >- $ hg record <<EOF >- > ? >- > q >- > EOF >- diff --git a/subdir/f1 b/subdir/f1 >- 1 hunks, 1 lines changed >- examine changes to 'subdir/f1'? [Ynsfdaq?] >- y - record this change >- n - skip this change >- s - skip remaining changes to this file >- f - record remaining changes to this file >- d - done, skip remaining changes and files >- a - record all changes to all remaining files >- q - quit, recording no changes >- ? - display help >- examine changes to 'subdir/f1'? [Ynsfdaq?] >- abort: user quit >- [255] >- >-Skip >- >- $ hg record <<EOF >- > s >- > EOF >- diff --git a/subdir/f1 b/subdir/f1 >- 1 hunks, 1 lines changed >- examine changes to 'subdir/f1'? [Ynsfdaq?] >- diff --git a/subdir/f2 b/subdir/f2 >- 1 hunks, 1 lines changed >- examine changes to 'subdir/f2'? [Ynsfdaq?] abort: response expected >- [255] >- >-No >- >- $ hg record <<EOF >- > n >- > EOF >- diff --git a/subdir/f1 b/subdir/f1 >- 1 hunks, 1 lines changed >- examine changes to 'subdir/f1'? [Ynsfdaq?] >- diff --git a/subdir/f2 b/subdir/f2 >- 1 hunks, 1 lines changed >- examine changes to 'subdir/f2'? [Ynsfdaq?] abort: response expected >- [255] >- >-f, quit >- >- $ hg record <<EOF >- > f >- > q >- > EOF >- diff --git a/subdir/f1 b/subdir/f1 >- 1 hunks, 1 lines changed >- examine changes to 'subdir/f1'? [Ynsfdaq?] >- diff --git a/subdir/f2 b/subdir/f2 >- 1 hunks, 1 lines changed >- examine changes to 'subdir/f2'? [Ynsfdaq?] >- abort: user quit >- [255] >- >-s, all >- >- $ hg record -d '18 0' -mx <<EOF >- > s >- > a >- > EOF >- diff --git a/subdir/f1 b/subdir/f1 >- 1 hunks, 1 lines changed >- examine changes to 'subdir/f1'? [Ynsfdaq?] >- diff --git a/subdir/f2 b/subdir/f2 >- 1 hunks, 1 lines changed >- examine changes to 'subdir/f2'? [Ynsfdaq?] >- >- $ hg tip -p >- changeset: 20:d2d8c25276a8 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:18 1970 +0000 >- summary: x >- >- diff -r 25eb2a7694fb -r d2d8c25276a8 subdir/f2 >- --- a/subdir/f2 Thu Jan 01 00:00:17 1970 +0000 >- +++ b/subdir/f2 Thu Jan 01 00:00:18 1970 +0000 >- @@ -1,1 +1,2 @@ >- b >- +b >- >- >-f >- >- $ hg record -d '19 0' -my <<EOF >- > f >- > EOF >- diff --git a/subdir/f1 b/subdir/f1 >- 1 hunks, 1 lines changed >- examine changes to 'subdir/f1'? [Ynsfdaq?] >- >- $ hg tip -p >- changeset: 21:1013f51ce32f >- tag: tip >- user: test >- date: Thu Jan 01 00:00:19 1970 +0000 >- summary: y >- >- diff -r d2d8c25276a8 -r 1013f51ce32f subdir/f1 >- --- a/subdir/f1 Thu Jan 01 00:00:18 1970 +0000 >- +++ b/subdir/f1 Thu Jan 01 00:00:19 1970 +0000 >- @@ -1,1 +1,2 @@ >- a >- +a >- >- >-Preserve chmod +x >- >- $ chmod +x f1 >- $ echo a >> f1 >- $ hg record -d '20 0' -mz <<EOF >- > y >- > y >- > y >- > EOF >- diff --git a/subdir/f1 b/subdir/f1 >- old mode 100644 >- new mode 100755 >- 1 hunks, 1 lines changed >- examine changes to 'subdir/f1'? [Ynsfdaq?] >- @@ -1,2 +1,3 @@ >- a >- a >- +a >- record this change to 'subdir/f1'? [Ynsfdaq?] >- >- $ hg tip --config diff.git=True -p >- changeset: 22:5df857735621 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:20 1970 +0000 >- summary: z >- >- diff --git a/subdir/f1 b/subdir/f1 >- old mode 100644 >- new mode 100755 >- --- a/subdir/f1 >- +++ b/subdir/f1 >- @@ -1,2 +1,3 @@ >- a >- a >- +a >- >- >-Preserve execute permission on original >- >- $ echo b >> f1 >- $ hg record -d '21 0' -maa <<EOF >- > y >- > y >- > y >- > EOF >- diff --git a/subdir/f1 b/subdir/f1 >- 1 hunks, 1 lines changed >- examine changes to 'subdir/f1'? [Ynsfdaq?] >- @@ -1,3 +1,4 @@ >- a >- a >- a >- +b >- record this change to 'subdir/f1'? [Ynsfdaq?] >- >- $ hg tip --config diff.git=True -p >- changeset: 23:a4ae36a78715 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:21 1970 +0000 >- summary: aa >- >- diff --git a/subdir/f1 b/subdir/f1 >- --- a/subdir/f1 >- +++ b/subdir/f1 >- @@ -1,3 +1,4 @@ >- a >- a >- a >- +b >- >- >-Preserve chmod -x >- >- $ chmod -x f1 >- $ echo c >> f1 >- $ hg record -d '22 0' -mab <<EOF >- > y >- > y >- > y >- > EOF >- diff --git a/subdir/f1 b/subdir/f1 >- old mode 100755 >- new mode 100644 >- 1 hunks, 1 lines changed >- examine changes to 'subdir/f1'? [Ynsfdaq?] >- @@ -2,3 +2,4 @@ >- a >- a >- b >- +c >- record this change to 'subdir/f1'? [Ynsfdaq?] >- >- $ hg tip --config diff.git=True -p >- changeset: 24:1460f6e47966 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:22 1970 +0000 >- summary: ab >- >- diff --git a/subdir/f1 b/subdir/f1 >- old mode 100755 >- new mode 100644 >- --- a/subdir/f1 >- +++ b/subdir/f1 >- @@ -2,3 +2,4 @@ >- a >- a >- b >- +c >- >- >- $ cd .. >- >-Abort early when a merge is in progress >- >- $ hg up 4 >- 1 files updated, 0 files merged, 5 files removed, 0 files unresolved >- >- $ touch iwillmergethat >- $ hg add iwillmergethat >- >- $ hg branch thatbranch >- marked working directory as branch thatbranch >- >- $ hg ci -m'new head' >- >- $ hg up default >- 5 files updated, 0 files merged, 2 files removed, 0 files unresolved >- >- $ hg merge thatbranch >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- >- $ hg record -m'will abort' >- abort: cannot partially commit a merge (use hg commit instead) >- [255] >- >- $ hg up -C >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- >-With win32text >- >- $ echo '[extensions]' >> .hg/hgrc >- $ echo 'win32text = ' >> .hg/hgrc >- $ echo '[decode]' >> .hg/hgrc >- $ echo '** = cleverdecode:' >> .hg/hgrc >- $ echo '[encode]' >> .hg/hgrc >- $ echo '** = cleverencode:' >> .hg/hgrc >- $ echo '[patch]' >> .hg/hgrc >- $ echo 'eol = crlf' >> .hg/hgrc >- >-Ignore win32text deprecation warning for now: >- >- $ echo '[win32text]' >> .hg/hgrc >- $ echo 'warn = no' >> .hg/hgrc >- >- $ echo d >> subdir/f1 >- $ hg record -d '23 0' -mw1 <<EOF >- > y >- > y >- > EOF >- diff --git a/subdir/f1 b/subdir/f1 >- 1 hunks, 1 lines changed >- examine changes to 'subdir/f1'? [Ynsfdaq?] >- @@ -3,3 +3,4 @@ >- a >- b >- c >- +d >- record this change to 'subdir/f1'? [Ynsfdaq?] >- >- $ hg tip -p >- changeset: 26:5bacc1f6e9cf >- tag: tip >- parent: 24:1460f6e47966 >- user: test >- date: Thu Jan 01 00:00:23 1970 +0000 >- summary: w1 >- >- diff -r 1460f6e47966 -r 5bacc1f6e9cf subdir/f1 >- --- a/subdir/f1 Thu Jan 01 00:00:22 1970 +0000 >- +++ b/subdir/f1 Thu Jan 01 00:00:23 1970 +0000 >- @@ -3,3 +3,4 @@ >- a >- b >- c >- +d >- >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-repair-strip output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-repair-strip.out >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-repair-strip.err >@@ -1,92 +1,2 @@ >-% before update 0, strip 2 >-changeset: 0:cb9a9f314b8b >-user: test >-date: Thu Jan 01 00:00:00 1970 +0000 >-summary: a > >-saved backup bundle >-transaction abort! >-failed to truncate data/b.i >-rollback failed - please run hg recover >-strip failed, full bundle >-abort: Permission denied .hg/store/data/b.i >-% after update 0, strip 2 >-abandoned transaction found - run hg recover >-checking changesets >-checking manifests >-crosschecking files in changesets and manifests >-checking files >- b@?: rev 1 points to nonexistent changeset 2 >- (expected 1) >- b@?: 736c29771fba not in manifests >-warning: orphan revlog 'data/c.i' >-2 files, 2 changesets, 3 total revisions >-2 warnings encountered! >-2 integrity errors encountered! >-% journal contents >-00changelog.i >-00manifest.i >-data/b.i >-data/c.i >-rolling back interrupted transaction >-checking changesets >-checking manifests >-crosschecking files in changesets and manifests >-checking files >-2 files, 2 changesets, 2 total revisions >-% before update 0, strip 2 >-changeset: 0:cb9a9f314b8b >-user: test >-date: Thu Jan 01 00:00:00 1970 +0000 >-summary: a >- >-abort: Permission denied .hg/store/data/b.i >-% after update 0, strip 2 >-checking changesets >-checking manifests >-crosschecking files in changesets and manifests >-checking files >-3 files, 4 changesets, 4 total revisions >-% journal contents >-(no journal) >-% before update 0, strip 2 >-changeset: 0:cb9a9f314b8b >-user: test >-date: Thu Jan 01 00:00:00 1970 +0000 >-summary: a >- >-saved backup bundle >-transaction abort! >-failed to truncate 00manifest.i >-rollback failed - please run hg recover >-strip failed, full bundle >-abort: Permission denied .hg/store/00manifest.i >-% after update 0, strip 2 >-abandoned transaction found - run hg recover >-checking changesets >-checking manifests >- manifest@?: rev 2 points to nonexistent changeset 2 >- manifest@?: 3362547cdf64 not in changesets >- manifest@?: rev 3 points to nonexistent changeset 3 >- manifest@?: 265a85892ecb not in changesets >-crosschecking files in changesets and manifests >- c@3: in manifest but not in changeset >-checking files >- b@?: rev 1 points to nonexistent changeset 2 >- (expected 1) >- c@?: rev 0 points to nonexistent changeset 3 >-3 files, 2 changesets, 4 total revisions >-1 warnings encountered! >-7 integrity errors encountered! >-(first damaged changeset appears to be 3) >-% journal contents >-00changelog.i >-00manifest.i >-data/b.i >-data/c.i >-rolling back interrupted transaction >-checking changesets >-checking manifests >-crosschecking files in changesets and manifests >-checking files >-2 files, 2 changesets, 2 total revisions >+### Abort: timeout after 180 seconds. >!. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-revset.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-revset.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-revset.t.err >@@ -1,358 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ HGENCODING=utf-8 >- $ export HGENCODING >- >- $ try() { >- > hg debugrevspec --debug $@ >- > } >- >- $ log() { >- > hg log --template '{rev}\n' -r "$1" >- > } >- >- $ hg init repo >- $ cd repo >- >- $ echo a > a >- $ hg branch a >- marked working directory as branch a >- $ hg ci -Aqm0 >- >- $ echo b > b >- $ hg branch b >- marked working directory as branch b >- $ hg ci -Aqm1 >- >- $ rm a >- $ hg branch a-b-c- >- marked working directory as branch a-b-c- >- $ hg ci -Aqm2 -u Bob >- >- $ hg co 1 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg branch +a+b+c+ >- marked working directory as branch +a+b+c+ >- $ hg ci -Aqm3 >- >- $ hg co 2 # interleave >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ echo bb > b >- $ hg branch -- -a-b-c- >- marked working directory as branch -a-b-c- >- $ hg ci -Aqm4 -d "May 12 2005" >- >- $ hg co 3 >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg branch /a/b/c/ >- marked working directory as branch /a/b/c/ >- $ hg ci -Aqm"5 bug" >- >- $ hg merge 4 >- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg branch _a_b_c_ >- marked working directory as branch _a_b_c_ >- $ hg ci -Aqm"6 issue619" >- >- $ hg branch .a.b.c. >- marked working directory as branch .a.b.c. >- $ hg ci -Aqm7 >- >- $ hg branch all >- marked working directory as branch all >- $ hg ci --close-branch -Aqm8 >- abort: can only close branch heads >- [255] >- >- $ hg co 4 >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg branch é >- marked working directory as branch é >- $ hg ci -Aqm9 >- >- $ hg tag -r6 1.0 >- >- $ hg clone --quiet -U -r 7 . ../remote1 >- $ hg clone --quiet -U -r 8 . ../remote2 >- $ echo "[paths]" >> .hg/hgrc >- $ echo "default = ../remote1" >> .hg/hgrc >- >-names that should work without quoting >- >- $ try a >- ('symbol', 'a') >- 0 >- $ try b-a >- ('minus', ('symbol', 'b'), ('symbol', 'a')) >- 1 >- $ try _a_b_c_ >- ('symbol', '_a_b_c_') >- 6 >- $ try _a_b_c_-a >- ('minus', ('symbol', '_a_b_c_'), ('symbol', 'a')) >- 6 >- $ try .a.b.c. >- ('symbol', '.a.b.c.') >- 7 >- $ try .a.b.c.-a >- ('minus', ('symbol', '.a.b.c.'), ('symbol', 'a')) >- 7 >- $ try -- '-a-b-c-' # complains >- hg: parse error at 7: not a prefix: end >- [255] >- $ log -a-b-c- # succeeds with fallback >- 4 >- $ try -- -a-b-c--a # complains >- ('minus', ('minus', ('minus', ('negate', ('symbol', 'a')), ('symbol', 'b')), ('symbol', 'c')), ('negate', ('symbol', 'a'))) >- abort: unknown revision '-a'! >- [255] >- $ try é >- ('symbol', '\xc3\xa9') >- 9 >- >-quoting needed >- >- $ try '"-a-b-c-"-a' >- ('minus', ('string', '-a-b-c-'), ('symbol', 'a')) >- 4 >- >- $ log '1 or 2' >- 1 >- 2 >- $ log '1|2' >- 1 >- 2 >- $ log '1 and 2' >- $ log '1&2' >- $ try '1&2|3' # precedence - and is higher >- ('or', ('and', ('symbol', '1'), ('symbol', '2')), ('symbol', '3')) >- 3 >- $ try '1|2&3' >- ('or', ('symbol', '1'), ('and', ('symbol', '2'), ('symbol', '3'))) >- 1 >- $ try '1&2&3' # associativity >- ('and', ('and', ('symbol', '1'), ('symbol', '2')), ('symbol', '3')) >- $ try '1|(2|3)' >- ('or', ('symbol', '1'), ('group', ('or', ('symbol', '2'), ('symbol', '3')))) >- 1 >- 2 >- 3 >- $ log '1.0' # tag >- 6 >- $ log 'a' # branch >- 0 >- $ log '2785f51ee' >- 0 >- $ log 'date(2005)' >- 4 >- $ log 'date(this is a test)' >- hg: parse error at 10: unexpected token: symbol >- [255] >- $ log 'date()' >- hg: parse error: date requires a string >- [255] >- $ log 'date' >- hg: parse error: can't use date here >- [255] >- $ log 'date(' >- hg: parse error at 5: not a prefix: end >- [255] >- $ log 'date(tip)' >- abort: invalid date: 'tip' >- [255] >- $ log '"date"' >- abort: unknown revision 'date'! >- [255] >- $ log 'date(2005) and 1::' >- 4 >- >- $ log 'ancestor(1)' >- hg: parse error: ancestor requires two arguments >- [255] >- $ log 'ancestor(4,5)' >- 1 >- $ log 'ancestor(4,5) and 4' >- $ log 'ancestors(5)' >- 0 >- 1 >- 3 >- 5 >- $ log 'author(bob)' >- 2 >- $ log 'branch(é)' >- 8 >- 9 >- $ log 'children(ancestor(4,5))' >- 2 >- 3 >- $ log 'closed()' >- $ log 'contains(a)' >- 0 >- 1 >- 3 >- 5 >- $ log 'descendants(2 or 3)' >- 2 >- 3 >- 4 >- 5 >- 6 >- 7 >- 8 >- 9 >- $ log 'file(b)' >- 1 >- 4 >- $ log 'follow()' >- 0 >- 1 >- 2 >- 4 >- 8 >- 9 >- $ log 'grep("issue\d+")' >- 6 >- $ try 'grep("(")' # invalid regular expression >- ('func', ('symbol', 'grep'), ('string', '(')) >- hg: parse error: invalid match pattern: unbalanced parenthesis >- [255] >- $ try 'grep("\bissue\d+")' >- ('func', ('symbol', 'grep'), ('string', '\x08issue\\d+')) >- $ try 'grep(r"\bissue\d+")' >- ('func', ('symbol', 'grep'), ('string', '\\bissue\\d+')) >- 6 >- $ try 'grep(r"\")' >- hg: parse error at 7: unterminated string >- [255] >- $ log 'head()' >- 0 >- 1 >- 2 >- 3 >- 4 >- 5 >- 6 >- 7 >- 9 >- $ log 'heads(6::)' >- 7 >- $ log 'keyword(issue)' >- 6 >- $ log 'limit(head(), 1)' >- 0 >- $ log 'max(contains(a))' >- 5 >- $ log 'min(contains(a))' >- 0 >- $ log 'merge()' >- 6 >- $ log 'modifies(b)' >- 4 >- $ log 'id(5)' >- 2 >- $ log 'outgoing()' >- 8 >- 9 >- $ log 'outgoing("../remote1")' >- 8 >- 9 >- $ log 'outgoing("../remote2")' >- 3 >- 5 >- 6 >- 7 >- 9 >- $ log 'p1(merge())' >- 5 >- $ log 'p2(merge())' >- 4 >- $ log 'parents(merge())' >- 4 >- 5 >- $ log 'removes(a)' >- 2 >- 6 >- $ log 'roots(all())' >- 0 >- $ log 'reverse(2 or 3 or 4 or 5)' >- 5 >- 4 >- 3 >- 2 >- $ log 'rev(5)' >- 5 >- $ log 'sort(limit(reverse(all()), 3))' >- 7 >- 8 >- 9 >- $ log 'sort(2 or 3 or 4 or 5, date)' >- 2 >- 3 >- 5 >- 4 >- $ log 'tagged()' >- 6 >- $ log 'tag()' >- 6 >- $ log 'tag(1.0)' >- 6 >- $ log 'tag(tip)' >- 9 >- $ log 'user(bob)' >- 2 >- >- $ log '4::8' >- 4 >- 8 >- $ log '4:8' >- 4 >- 5 >- 6 >- 7 >- 8 >- >- $ log 'sort(!merge() & (modifies(b) | user(bob) | keyword(bug) | keyword(issue) & 1::9), "-date")' >- 4 >- 2 >- 5 >- >- $ log 'not 0 and 0:2' >- 1 >- 2 >- $ log 'not 1 and 0:2' >- 0 >- 2 >- $ log 'not 2 and 0:2' >- 0 >- 1 >- $ log '(1 and 2)::' >- $ log '(1 and 2):' >- $ log '(1 and 2):3' >- $ log 'sort(head(), -rev)' >- 9 >- 7 >- 6 >- 5 >- 4 >- 3 >- 2 >- 1 >- 0 >- $ log '4::8 - 8' >- 4 >- >-issue2437 >- >- $ log '3 and p1(5)' >- 3 >- $ log '4 and p2(6)' >- 4 >- $ log '1 and parents(:2)' >- 1 >- $ log '2 and children(1:)' >- 2 >- $ log 'roots(all()) or roots(all())' >- 0 >- $ log 'heads(branch(é)) or heads(branch(é))' >- 9 >- $ log 'ancestors(8) and (heads(branch("-a-b-c-")) or heads(branch(é)))' >- 4 >!.. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rebase-scenario-global.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rebase-scenario-global.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rebase-scenario-global.t.err >@@ -1,3 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ cat >> $HGRCPATH <<EOF > > [extensions] > > graphlog= >@@ -6,244 +8,3 @@ > > [alias] > > tglog = log -G --template "{rev}: '{desc}' {branches}\n" > > EOF >- >- >- $ hg init a >- $ cd a >- >- $ echo A > A >- $ hg ci -Am A >- adding A >- >- $ echo B > B >- $ hg ci -Am B >- adding B >- >- $ hg up -q -C 0 >- >- $ echo C > C >- $ hg ci -Am C >- adding C >- created new head >- >- $ hg up -q -C 0 >- >- $ echo D > D >- $ hg ci -Am D >- adding D >- created new head >- >- $ hg merge -r 2 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- >- $ hg ci -m E >- >- $ hg up -q -C 3 >- >- $ echo F > F >- $ hg ci -Am F >- adding F >- created new head >- >- $ cd .. >- >- >-Rebasing >-B onto F - simple rebase: >- >- $ hg clone -q -u . a a1 >- $ cd a1 >- >- $ hg tglog >- @ 5: 'F' >- | >- | o 4: 'E' >- |/| >- o | 3: 'D' >- | | >- | o 2: 'C' >- |/ >- | o 1: 'B' >- |/ >- o 0: 'A' >- >- $ hg rebase -s 1 -d 5 >- saved backup bundle to $TESTTMP/a1/.hg/strip-backup/*-backup.hg (glob) >- >- $ hg tglog >- @ 5: 'B' >- | >- o 4: 'F' >- | >- | o 3: 'E' >- |/| >- o | 2: 'D' >- | | >- | o 1: 'C' >- |/ >- o 0: 'A' >- >- $ cd .. >- >- >-B onto D - intermediate point: >- >- $ hg clone -q -u . a a2 >- $ cd a2 >- >- $ hg rebase -s 1 -d 3 >- saved backup bundle to $TESTTMP/a2/.hg/strip-backup/*-backup.hg (glob) >- >- $ hg tglog >- @ 5: 'B' >- | >- | o 4: 'F' >- |/ >- | o 3: 'E' >- |/| >- o | 2: 'D' >- | | >- | o 1: 'C' >- |/ >- o 0: 'A' >- >- $ cd .. >- >- >-C onto F - skip of E: >- >- $ hg clone -q -u . a a3 >- $ cd a3 >- >- $ hg rebase -s 2 -d 5 >- saved backup bundle to $TESTTMP/a3/.hg/strip-backup/*-backup.hg (glob) >- >- $ hg tglog >- @ 4: 'C' >- | >- o 3: 'F' >- | >- o 2: 'D' >- | >- | o 1: 'B' >- |/ >- o 0: 'A' >- >- $ cd .. >- >- >-D onto C - rebase of a branching point (skip E): >- >- $ hg clone -q -u . a a4 >- $ cd a4 >- >- $ hg rebase -s 3 -d 2 >- saved backup bundle to $TESTTMP/a4/.hg/strip-backup/*-backup.hg (glob) >- >- $ hg tglog >- @ 4: 'F' >- | >- o 3: 'D' >- | >- o 2: 'C' >- | >- | o 1: 'B' >- |/ >- o 0: 'A' >- >- $ cd .. >- >- >-E onto F - merged revision having a parent in ancestors of target: >- >- $ hg clone -q -u . a a5 >- $ cd a5 >- >- $ hg rebase -s 4 -d 5 >- saved backup bundle to $TESTTMP/a5/.hg/strip-backup/*-backup.hg (glob) >- >- $ hg tglog >- @ 5: 'E' >- |\ >- | o 4: 'F' >- | | >- | o 3: 'D' >- | | >- o | 2: 'C' >- |/ >- | o 1: 'B' >- |/ >- o 0: 'A' >- >- $ cd .. >- >- >-D onto B - E maintains C as parent: >- >- $ hg clone -q -u . a a6 >- $ cd a6 >- >- $ hg rebase -s 3 -d 1 >- saved backup bundle to $TESTTMP/a6/.hg/strip-backup/*-backup.hg (glob) >- >- $ hg tglog >- @ 5: 'F' >- | >- | o 4: 'E' >- |/| >- o | 3: 'D' >- | | >- | o 2: 'C' >- | | >- o | 1: 'B' >- |/ >- o 0: 'A' >- >- $ cd .. >- >- >-These will fail (using --source): >- >-E onto D - rebase onto an ancestor: >- >- $ hg clone -q -u . a a7 >- $ cd a7 >- >- $ hg rebase -s 4 -d 3 >- abort: source is descendant of destination >- [255] >- >-D onto E - rebase onto a descendant: >- >- $ hg rebase -s 3 -d 4 >- abort: source is ancestor of destination >- [255] >- >-E onto B - merge revision with both parents not in ancestors of target: >- >- $ hg rebase -s 4 -d 1 >- abort: cannot use revision 4 as base, result would have 3 parents >- [255] >- >- >-These will abort gracefully (using --base): >- >-E onto E - rebase onto same changeset: >- >- $ hg rebase -b 4 -d 4 >- nothing to rebase >- [1] >- >-E onto D - rebase onto an ancestor: >- >- $ hg rebase -b 4 -d 3 >- nothing to rebase >- [1] >- >-D onto E - rebase onto a descendant: >- >- $ hg rebase -b 3 -d 4 >- nothing to rebase >- [1] >- >!. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rename-after-merge.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rename-after-merge.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rename-after-merge.t.err >@@ -1,119 +1,8 @@ >+ >+ ### Abort: timeout after 180 seconds. > Issue746: renaming files brought by the second parent of a merge was > broken. > > Create source repository: > > $ hg init t >- $ cd t >- $ echo a > a >- $ hg ci -Am a >- adding a >- $ cd .. >- >-Fork source repository: >- >- $ hg clone t t2 >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ cd t2 >- $ echo b > b >- $ hg ci -Am b >- adding b >- >-Update source repository: >- >- $ cd ../t >- $ echo a >> a >- $ hg ci -m a2 >- >-Merge repositories: >- >- $ hg pull ../t2 >- pulling from ../t2 >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files (+1 heads) >- (run 'hg heads' to see heads, 'hg merge' to merge) >- >- $ hg merge >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- >- $ hg st >- M b >- >-Rename b as c: >- >- $ hg mv b c >- $ hg st >- A c >- R b >- >-Rename back c as b: >- >- $ hg mv c b >- $ hg st >- M b >- >- $ cd .. >- >-Issue 1476: renaming a first parent file into another first parent >-file while none of them belong to the second parent was broken >- >- $ hg init repo1476 >- $ cd repo1476 >- $ echo a > a >- $ hg ci -Am adda >- adding a >- $ echo b1 > b1 >- $ echo b2 > b2 >- $ hg ci -Am changea >- adding b1 >- adding b2 >- $ hg up -C 0 >- 0 files updated, 0 files merged, 2 files removed, 0 files unresolved >- $ echo c1 > c1 >- $ echo c2 > c2 >- $ hg ci -Am addcandd >- adding c1 >- adding c2 >- created new head >- >-Merge heads: >- >- $ hg merge >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- >- $ hg mv -Af c1 c2 >- >-Commit issue 1476: >- >- $ hg ci -m merge >- >- $ hg log -r tip -C -v | grep copies >- copies: c2 (c1) >- >- $ hg rollback >- rolling back to revision 2 (undo commit) >- >- $ hg up -C . >- 2 files updated, 0 files merged, 2 files removed, 0 files unresolved >- >-Merge heads again: >- >- $ hg merge >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- >- $ hg mv -Af b1 b2 >- >-Commit issue 1476 with a rename on the other side: >- >- $ hg ci -m merge >- >- $ hg log -r tip -C -v | grep copies >- copies: b2 (b1) >- >!... >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rename-merge1.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rename-merge1.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rename-merge1.t.err >@@ -1,101 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ hg init >- >- $ echo "[merge]" >> .hg/hgrc >- $ echo "followcopies = 1" >> .hg/hgrc >- >- $ echo foo > a >- $ echo foo > a2 >- $ hg add a a2 >- $ hg ci -m "start" >- >- $ hg mv a b >- $ hg mv a2 b2 >- $ hg ci -m "rename" >- >- $ hg co 0 >- 2 files updated, 0 files merged, 2 files removed, 0 files unresolved >- >- $ echo blahblah > a >- $ echo blahblah > a2 >- $ hg mv a2 c2 >- $ hg ci -m "modify" >- created new head >- >- $ hg merge -y --debug >- searching for copies back to rev 1 >- unmatched files in local: >- c2 >- unmatched files in other: >- b >- b2 >- all copies found (* = to merge, ! = divergent): >- c2 -> a2 ! >- b -> a * >- b2 -> a2 ! >- checking for directory renames >- a2: divergent renames -> dr >- resolving manifests >- overwrite None partial False >- ancestor af1939970a1c local 044f8520aeeb+ remote 85c198ef2f6c >- a: remote moved to b -> m >- b2: remote created -> g >- preserving a for resolve of b >- removing a >- updating: a 1/3 files (33.33%) >- picked tool 'internal:merge' for b (binary False symlink False) >- merging a and b to b >- my b@044f8520aeeb+ other b@85c198ef2f6c ancestor a@af1939970a1c >- premerge successful >- updating: a2 2/3 files (66.67%) >- note: possible conflict - a2 was renamed multiple times to: >- c2 >- b2 >- updating: b2 3/3 files (100.00%) >- getting b2 >- 1 files updated, 1 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- >- $ hg status -AC >- M b >- a >- M b2 >- R a >- C c2 >- >- $ cat b >- blahblah >- >- $ hg ci -m "merge" >- >- $ hg debugindex .hg/store/data/b.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 67 0 1 57eacc201a7f 000000000000 000000000000 >- 1 67 72 1 3 4727ba907962 000000000000 57eacc201a7f >- >- $ hg debugrename b >- b renamed from a:dd03b83622e78778b403775d0d074b9ac7387a66 >- >-This used to trigger a "divergent renames" warning, despite no renames >- >- $ hg cp b b3 >- $ hg cp b b4 >- $ hg ci -A -m 'copy b twice' >- $ hg up eb92d88a9712 >- 0 files updated, 0 files merged, 2 files removed, 0 files unresolved >- $ hg up >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg rm b3 b4 >- $ hg ci -m 'clean up a bit of our mess' >- >-We'd rather not warn on divergent renames done in the same changeset (issue2113) >- >- $ hg cp b b3 >- $ hg mv b b4 >- $ hg ci -A -m 'divergent renames in same changeset' >- $ hg up c761c6948de0 >- 1 files updated, 0 files merged, 2 files removed, 0 files unresolved >- $ hg up >- note: possible conflict - b was renamed multiple times to: >- b3 >- b4 >- 2 files updated, 0 files merged, 1 files removed, 0 files unresolved >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rename.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rename.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-rename.t.err >@@ -1,632 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ hg init >- $ mkdir d1 d1/d11 d2 >- $ echo d1/a > d1/a >- $ echo d1/ba > d1/ba >- $ echo d1/a1 > d1/d11/a1 >- $ echo d1/b > d1/b >- $ echo d2/b > d2/b >- $ hg add d1/a d1/b d1/ba d1/d11/a1 d2/b >- $ hg commit -m "1" >- >-rename a single file >- >- $ hg rename d1/d11/a1 d2/c >- $ hg sum >- parent: 0:9b4b6e7b2c26 tip >- 1 >- branch: default >- commit: 1 renamed >- update: (current) >- $ hg status -C >- A d2/c >- d1/d11/a1 >- R d1/d11/a1 >- $ hg update -C >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm d2/c >- >-rename a single file using absolute paths >- >- $ hg rename `pwd`/d1/d11/a1 `pwd`/d2/c >- $ hg status -C >- A d2/c >- d1/d11/a1 >- R d1/d11/a1 >- $ hg update -C >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm d2/c >- >-rename --after a single file >- >- $ mv d1/d11/a1 d2/c >- $ hg rename --after d1/d11/a1 d2/c >- $ hg status -C >- A d2/c >- d1/d11/a1 >- R d1/d11/a1 >- $ hg update -C >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm d2/c >- >-rename --after a single file when src and tgt already tracked >- >- $ mv d1/d11/a1 d2/c >- $ hg addrem -s 0 >- removing d1/d11/a1 >- adding d2/c >- $ hg rename --after d1/d11/a1 d2/c >- $ hg status -C >- A d2/c >- d1/d11/a1 >- R d1/d11/a1 >- $ hg update -C >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm d2/c >- >-rename --after a single file to a nonexistant target filename >- >- $ hg rename --after d1/a dummy >- d1/a: not recording move - dummy does not exist >- >-move a single file to an existing directory >- >- $ hg rename d1/d11/a1 d2 >- $ hg status -C >- A d2/a1 >- d1/d11/a1 >- R d1/d11/a1 >- $ hg update -C >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm d2/a1 >- >-move --after a single file to an existing directory >- >- $ mv d1/d11/a1 d2 >- $ hg rename --after d1/d11/a1 d2 >- $ hg status -C >- A d2/a1 >- d1/d11/a1 >- R d1/d11/a1 >- $ hg update -C >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm d2/a1 >- >-rename a file using a relative path >- >- $ (cd d1/d11; hg rename ../../d2/b e) >- $ hg status -C >- A d1/d11/e >- d2/b >- R d2/b >- $ hg update -C >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm d1/d11/e >- >-rename --after a file using a relative path >- >- $ (cd d1/d11; mv ../../d2/b e; hg rename --after ../../d2/b e) >- $ hg status -C >- A d1/d11/e >- d2/b >- R d2/b >- $ hg update -C >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm d1/d11/e >- >-rename directory d1 as d3 >- >- $ hg rename d1/ d3 >- moving d1/a to d3/a >- moving d1/b to d3/b >- moving d1/ba to d3/ba >- moving d1/d11/a1 to d3/d11/a1 >- $ hg status -C >- A d3/a >- d1/a >- A d3/b >- d1/b >- A d3/ba >- d1/ba >- A d3/d11/a1 >- d1/d11/a1 >- R d1/a >- R d1/b >- R d1/ba >- R d1/d11/a1 >- $ hg update -C >- 4 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm -rf d3 >- >-rename --after directory d1 as d3 >- >- $ mv d1 d3 >- $ hg rename --after d1 d3 >- moving d1/a to d3/a >- moving d1/b to d3/b >- moving d1/ba to d3/ba >- moving d1/d11/a1 to d3/d11/a1 >- $ hg status -C >- A d3/a >- d1/a >- A d3/b >- d1/b >- A d3/ba >- d1/ba >- A d3/d11/a1 >- d1/d11/a1 >- R d1/a >- R d1/b >- R d1/ba >- R d1/d11/a1 >- $ hg update -C >- 4 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm -rf d3 >- >-move a directory using a relative path >- >- $ (cd d2; mkdir d3; hg rename ../d1/d11 d3) >- moving ../d1/d11/a1 to d3/d11/a1 >- $ hg status -C >- A d2/d3/d11/a1 >- d1/d11/a1 >- R d1/d11/a1 >- $ hg update -C >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm -rf d2/d3 >- >-move --after a directory using a relative path >- >- $ (cd d2; mkdir d3; mv ../d1/d11 d3; hg rename --after ../d1/d11 d3) >- moving ../d1/d11/a1 to d3/d11/a1 >- $ hg status -C >- A d2/d3/d11/a1 >- d1/d11/a1 >- R d1/d11/a1 >- $ hg update -C >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm -rf d2/d3 >- >-move directory d1/d11 to an existing directory d2 (removes empty d1) >- >- $ hg rename d1/d11/ d2 >- moving d1/d11/a1 to d2/d11/a1 >- $ hg status -C >- A d2/d11/a1 >- d1/d11/a1 >- R d1/d11/a1 >- $ hg update -C >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm -rf d2/d11 >- >-move directories d1 and d2 to a new directory d3 >- >- $ mkdir d3 >- $ hg rename d1 d2 d3 >- moving d1/a to d3/d1/a >- moving d1/b to d3/d1/b >- moving d1/ba to d3/d1/ba >- moving d1/d11/a1 to d3/d1/d11/a1 >- moving d2/b to d3/d2/b >- $ hg status -C >- A d3/d1/a >- d1/a >- A d3/d1/b >- d1/b >- A d3/d1/ba >- d1/ba >- A d3/d1/d11/a1 >- d1/d11/a1 >- A d3/d2/b >- d2/b >- R d1/a >- R d1/b >- R d1/ba >- R d1/d11/a1 >- R d2/b >- $ hg update -C >- 5 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm -rf d3 >- >-move --after directories d1 and d2 to a new directory d3 >- >- $ mkdir d3 >- $ mv d1 d2 d3 >- $ hg rename --after d1 d2 d3 >- moving d1/a to d3/d1/a >- moving d1/b to d3/d1/b >- moving d1/ba to d3/d1/ba >- moving d1/d11/a1 to d3/d1/d11/a1 >- moving d2/b to d3/d2/b >- $ hg status -C >- A d3/d1/a >- d1/a >- A d3/d1/b >- d1/b >- A d3/d1/ba >- d1/ba >- A d3/d1/d11/a1 >- d1/d11/a1 >- A d3/d2/b >- d2/b >- R d1/a >- R d1/b >- R d1/ba >- R d1/d11/a1 >- R d2/b >- $ hg update -C >- 5 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm -rf d3 >- >-move everything under directory d1 to existing directory d2, do not >-overwrite existing files (d2/b) >- >- $ hg rename d1/* d2 >- d2/b: not overwriting - file exists >- moving d1/d11/a1 to d2/d11/a1 >- $ hg status -C >- A d2/a >- d1/a >- A d2/ba >- d1/ba >- A d2/d11/a1 >- d1/d11/a1 >- R d1/a >- R d1/ba >- R d1/d11/a1 >- $ diff -u d1/b d2/b >- --- d1/b * (glob) >- +++ d2/b * (glob) >- @@ * (glob) >- -d1/b >- +d2/b >- [1] >- $ hg update -C >- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm d2/a d2/ba d2/d11/a1 >- >-attempt to move one file into a non-existent directory >- >- $ hg rename d1/a dx/ >- abort: destination dx/ is not a directory >- [255] >- $ hg status -C >- $ hg update -C >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-attempt to move potentially more than one file into a non-existent directory >- >- $ hg rename 'glob:d1/**' dx >- abort: with multiple sources, destination must be an existing directory >- [255] >- >-move every file under d1 to d2/d21 (glob) >- >- $ mkdir d2/d21 >- $ hg rename 'glob:d1/**' d2/d21 >- moving d1/a to d2/d21/a >- moving d1/b to d2/d21/b >- moving d1/ba to d2/d21/ba >- moving d1/d11/a1 to d2/d21/a1 >- $ hg status -C >- A d2/d21/a >- d1/a >- A d2/d21/a1 >- d1/d11/a1 >- A d2/d21/b >- d1/b >- A d2/d21/ba >- d1/ba >- R d1/a >- R d1/b >- R d1/ba >- R d1/d11/a1 >- $ hg update -C >- 4 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm -rf d2/d21 >- >-move --after some files under d1 to d2/d21 (glob) >- >- $ mkdir d2/d21 >- $ mv d1/a d1/d11/a1 d2/d21 >- $ hg rename --after 'glob:d1/**' d2/d21 >- moving d1/a to d2/d21/a >- d1/b: not recording move - d2/d21/b does not exist >- d1/ba: not recording move - d2/d21/ba does not exist >- moving d1/d11/a1 to d2/d21/a1 >- $ hg status -C >- A d2/d21/a >- d1/a >- A d2/d21/a1 >- d1/d11/a1 >- R d1/a >- R d1/d11/a1 >- $ hg update -C >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm -rf d2/d21 >- >-move every file under d1 starting with an 'a' to d2/d21 (regexp) >- >- $ mkdir d2/d21 >- $ hg rename 're:d1/([^a][^/]*/)*a.*' d2/d21 >- moving d1/a to d2/d21/a >- moving d1/d11/a1 to d2/d21/a1 >- $ hg status -C >- A d2/d21/a >- d1/a >- A d2/d21/a1 >- d1/d11/a1 >- R d1/a >- R d1/d11/a1 >- $ hg update -C >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm -rf d2/d21 >- >-attempt to overwrite an existing file >- >- $ echo "ca" > d1/ca >- $ hg rename d1/ba d1/ca >- d1/ca: not overwriting - file exists >- $ hg status -C >- ? d1/ca >- $ hg update -C >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-forced overwrite of an existing file >- >- $ echo "ca" > d1/ca >- $ hg rename --force d1/ba d1/ca >- $ hg status -C >- A d1/ca >- d1/ba >- R d1/ba >- $ hg update -C >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm d1/ca >- >-attempt to overwrite an existing broken symlink >- >- $ ln -s ba d1/ca >- $ hg rename --traceback d1/ba d1/ca >- d1/ca: not overwriting - file exists >- $ hg status -C >- ? d1/ca >- $ hg update -C >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm d1/ca >- >-replace a symlink with a file >- >- $ ln -s ba d1/ca >- $ hg rename --force d1/ba d1/ca >- $ hg status -C >- A d1/ca >- d1/ba >- R d1/ba >- $ hg update -C >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm d1/ca >- >-do not copy more than one source file to the same destination file >- >- $ mkdir d3 >- $ hg rename d1/* d2/* d3 >- moving d1/d11/a1 to d3/d11/a1 >- d3/b: not overwriting - d2/b collides with d1/b >- $ hg status -C >- A d3/a >- d1/a >- A d3/b >- d1/b >- A d3/ba >- d1/ba >- A d3/d11/a1 >- d1/d11/a1 >- R d1/a >- R d1/b >- R d1/ba >- R d1/d11/a1 >- $ hg update -C >- 4 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm -rf d3 >- >-move a whole subtree with "hg rename ." >- >- $ mkdir d3 >- $ (cd d1; hg rename . ../d3) >- moving a to ../d3/d1/a >- moving b to ../d3/d1/b >- moving ba to ../d3/d1/ba >- moving d11/a1 to ../d3/d1/d11/a1 >- $ hg status -C >- A d3/d1/a >- d1/a >- A d3/d1/b >- d1/b >- A d3/d1/ba >- d1/ba >- A d3/d1/d11/a1 >- d1/d11/a1 >- R d1/a >- R d1/b >- R d1/ba >- R d1/d11/a1 >- $ hg update -C >- 4 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm -rf d3 >- >-move a whole subtree with "hg rename --after ." >- >- $ mkdir d3 >- $ mv d1/* d3 >- $ (cd d1; hg rename --after . ../d3) >- moving a to ../d3/a >- moving b to ../d3/b >- moving ba to ../d3/ba >- moving d11/a1 to ../d3/d11/a1 >- $ hg status -C >- A d3/a >- d1/a >- A d3/b >- d1/b >- A d3/ba >- d1/ba >- A d3/d11/a1 >- d1/d11/a1 >- R d1/a >- R d1/b >- R d1/ba >- R d1/d11/a1 >- $ hg update -C >- 4 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm -rf d3 >- >-move the parent tree with "hg rename .." >- >- $ (cd d1/d11; hg rename .. ../../d3) >- moving ../a to ../../d3/a >- moving ../b to ../../d3/b >- moving ../ba to ../../d3/ba >- moving a1 to ../../d3/d11/a1 >- $ hg status -C >- A d3/a >- d1/a >- A d3/b >- d1/b >- A d3/ba >- d1/ba >- A d3/d11/a1 >- d1/d11/a1 >- R d1/a >- R d1/b >- R d1/ba >- R d1/d11/a1 >- $ hg update -C >- 4 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm -rf d3 >- >-skip removed files >- >- $ hg remove d1/b >- $ hg rename d1 d3 >- moving d1/a to d3/a >- moving d1/ba to d3/ba >- moving d1/d11/a1 to d3/d11/a1 >- $ hg status -C >- A d3/a >- d1/a >- A d3/ba >- d1/ba >- A d3/d11/a1 >- d1/d11/a1 >- R d1/a >- R d1/b >- R d1/ba >- R d1/d11/a1 >- $ hg update -C >- 4 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm -rf d3 >- >-transitive rename >- >- $ hg rename d1/b d1/bb >- $ hg rename d1/bb d1/bc >- $ hg status -C >- A d1/bc >- d1/b >- R d1/b >- $ hg update -C >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm d1/bc >- >-transitive rename --after >- >- $ hg rename d1/b d1/bb >- $ mv d1/bb d1/bc >- $ hg rename --after d1/bb d1/bc >- $ hg status -C >- A d1/bc >- d1/b >- R d1/b >- $ hg update -C >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm d1/bc >- >- $ echo "# idempotent renames (d1/b -> d1/bb followed by d1/bb -> d1/b)" >- # idempotent renames (d1/b -> d1/bb followed by d1/bb -> d1/b) >- $ hg rename d1/b d1/bb >- $ echo "some stuff added to d1/bb" >> d1/bb >- $ hg rename d1/bb d1/b >- $ hg status -C >- M d1/b >- $ hg update -C >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-overwriting with renames (issue1959) >- >- $ hg rename d1/a d1/c >- $ hg rename d1/b d1/a >- $ hg status -C >- A d1/a >- d1/b >- A d1/c >- d1/a >- R d1/b >- $ hg diff --git >- diff --git a/d1/b b/d1/a >- rename from d1/b >- rename to d1/a >- diff --git a/d1/a b/d1/c >- copy from d1/a >- copy to d1/c >- $ hg update -C >- 2 files updated, 0 files merged, 1 files removed, 0 files unresolved >- >-check illegal path components >- >- $ hg rename d1/d11/a1 .hg/foo >- abort: path contains illegal component: .hg/foo >- [255] >- $ hg status -C >- $ hg rename d1/d11/a1 ../foo >- abort: ../foo not under root >- [255] >- $ hg status -C >- >- $ mv d1/d11/a1 .hg/foo >- $ hg rename --after d1/d11/a1 .hg/foo >- abort: path contains illegal component: .hg/foo >- [255] >- $ hg status -C >- ! d1/d11/a1 >- $ hg update -C >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm .hg/foo >- >- $ hg rename d1/d11/a1 .hg >- abort: path contains illegal component: .hg/a1 >- [255] >- $ hg status -C >- $ hg rename d1/d11/a1 .. >- abort: ../a1 not under root >- [255] >- $ hg status -C >- >- $ mv d1/d11/a1 .hg >- $ hg rename --after d1/d11/a1 .hg >- abort: path contains illegal component: .hg/a1 >- [255] >- $ hg status -C >- ! d1/d11/a1 >- $ hg update -C >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm .hg/a1 >- >- $ (cd d1/d11; hg rename ../../d2/b ../../.hg/foo) >- abort: path contains illegal component: .hg/foo >- [255] >- $ hg status -C >- $ (cd d1/d11; hg rename ../../d2/b ../../../foo) >- abort: ../../../foo not under root >- [255] >- $ hg status -C >- >!. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-ssh.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-ssh.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-ssh.t.err >@@ -1,233 +1,4 @@ >+ >+ ### Abort: timeout after 180 seconds. > > $ cp "$TESTDIR"/printenv.py . >- >-This test tries to exercise the ssh functionality with a dummy script >- >- $ cat <<EOF > dummyssh >- > import sys >- > import os >- > >- > os.chdir(os.path.dirname(sys.argv[0])) >- > if sys.argv[1] != "user@dummy": >- > sys.exit(-1) >- > >- > if not os.path.exists("dummyssh"): >- > sys.exit(-1) >- > >- > os.environ["SSH_CLIENT"] = "127.0.0.1 1 2" >- > >- > log = open("dummylog", "ab") >- > log.write("Got arguments") >- > for i, arg in enumerate(sys.argv[1:]): >- > log.write(" %d:%s" % (i+1, arg)) >- > log.write("\n") >- > log.close() >- > r = os.system(sys.argv[2]) >- > sys.exit(bool(r)) >- > EOF >- $ cat <<EOF > badhook >- > import sys >- > sys.stdout.write("KABOOM\n") >- > EOF >- >-creating 'remote >- >- $ hg init remote >- $ cd remote >- $ echo this > foo >- $ echo this > fooO >- $ hg ci -A -m "init" foo fooO >- $ echo '[server]' > .hg/hgrc >- $ echo 'uncompressed = True' >> .hg/hgrc >- $ echo '[hooks]' >> .hg/hgrc >- $ echo 'changegroup = python ../printenv.py changegroup-in-remote 0 ../dummylog' >> .hg/hgrc >- $ cd .. >- >-repo not found error >- >- $ hg clone -e "python ./dummyssh" ssh://user@dummy/nonexistent local >- remote: abort: There is no Mercurial repository here (.hg not found)! >- abort: no suitable response from remote hg! >- [255] >- >-non-existent absolute path >- >- $ hg clone -e "python ./dummyssh" ssh://user@dummy//`pwd`/nonexistent local >- remote: abort: There is no Mercurial repository here (.hg not found)! >- abort: no suitable response from remote hg! >- [255] >- >-clone remote via stream >- >- $ hg clone -e "python ./dummyssh" --uncompressed ssh://user@dummy/remote local-stream >- streaming all changes >- 4 files to transfer, 392 bytes of data >- transferred 392 bytes in * seconds (*/sec) (glob) >- updating to branch default >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ cd local-stream >- $ hg verify >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 2 files, 1 changesets, 2 total revisions >- $ cd .. >- >-clone remote via pull >- >- $ hg clone -e "python ./dummyssh" ssh://user@dummy/remote local >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 2 changes to 2 files >- updating to branch default >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-verify >- >- $ cd local >- $ hg verify >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 2 files, 1 changesets, 2 total revisions >- $ echo '[hooks]' >> .hg/hgrc >- $ echo 'changegroup = python ../printenv.py changegroup-in-local 0 ../dummylog' >> .hg/hgrc >- >-empty default pull >- >- $ hg paths >- default = ssh://user@dummy/remote >- $ hg pull -e "python ../dummyssh" >- pulling from ssh://user@dummy/remote >- searching for changes >- no changes found >- >-local change >- >- $ echo bleah > foo >- $ hg ci -m "add" >- >-updating rc >- >- $ echo "default-push = ssh://user@dummy/remote" >> .hg/hgrc >- $ echo "[ui]" >> .hg/hgrc >- $ echo "ssh = python ../dummyssh" >> .hg/hgrc >- >-find outgoing >- >- $ hg out ssh://user@dummy/remote >- comparing with ssh://user@dummy/remote >- searching for changes >- changeset: 1:a28a9d1a809c >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: add >- >- >-find incoming on the remote side >- >- $ hg incoming -R ../remote -e "python ../dummyssh" ssh://user@dummy/local >- comparing with ssh://user@dummy/local >- searching for changes >- changeset: 1:a28a9d1a809c >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: add >- >- >-find incoming on the remote side (using absolute path) >- >- $ hg incoming -R ../remote -e "python ../dummyssh" "ssh://user@dummy/`pwd`" >- comparing with ssh://user@dummy/$TESTTMP/local >- searching for changes >- changeset: 1:a28a9d1a809c >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: add >- >- >-push >- >- $ hg push >- pushing to ssh://user@dummy/remote >- searching for changes >- remote: adding changesets >- remote: adding manifests >- remote: adding file changes >- remote: added 1 changesets with 1 changes to 1 files >- $ cd ../remote >- >-check remote tip >- >- $ hg tip >- changeset: 1:a28a9d1a809c >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: add >- >- $ hg verify >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 2 files, 2 changesets, 3 total revisions >- $ hg cat -r tip foo >- bleah >- $ echo z > z >- $ hg ci -A -m z z >- created new head >- >-a bad, evil hook that prints to stdout >- >- $ echo 'changegroup.stdout = python ../badhook' >> .hg/hgrc >- $ cd ../local >- $ echo r > r >- $ hg ci -A -m z r >- >-push should succeed even though it has an unexpected response >- >- $ hg push >- pushing to ssh://user@dummy/remote >- searching for changes >- note: unsynced remote changes! >- remote: adding changesets >- remote: adding manifests >- remote: adding file changes >- remote: added 1 changesets with 1 changes to 1 files >- remote: KABOOM >- $ hg -R ../remote heads >- changeset: 3:1383141674ec >- tag: tip >- parent: 1:a28a9d1a809c >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: z >- >- changeset: 2:6c0482d977a3 >- parent: 0:1160648e36ce >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: z >- >- $ cd .. >- $ cat dummylog >- Got arguments 1:user@dummy 2:hg -R nonexistent serve --stdio >- Got arguments 1:user@dummy 2:hg -R /$TESTTMP/nonexistent serve --stdio >- Got arguments 1:user@dummy 2:hg -R remote serve --stdio >- Got arguments 1:user@dummy 2:hg -R remote serve --stdio >- Got arguments 1:user@dummy 2:hg -R remote serve --stdio >- Got arguments 1:user@dummy 2:hg -R remote serve --stdio >- Got arguments 1:user@dummy 2:hg -R local serve --stdio >- Got arguments 1:user@dummy 2:hg -R $TESTTMP/local serve --stdio >- Got arguments 1:user@dummy 2:hg -R remote serve --stdio >- changegroup-in-remote hook: HG_NODE=a28a9d1a809cab7d4e2fde4bee738a9ede948b60 HG_SOURCE=serve HG_URL=remote:ssh:127.0.0.1 >- Got arguments 1:user@dummy 2:hg -R remote serve --stdio >- changegroup-in-remote hook: HG_NODE=1383141674ec756a6056f6a9097618482fe0f4a6 HG_SOURCE=serve HG_URL=remote:ssh:127.0.0.1 >!. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-status-color.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-status-color.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-status-color.t.err >@@ -1,279 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ echo "[extensions]" >> $HGRCPATH >- $ echo "color=" >> $HGRCPATH >- $ echo "[color]" >> $HGRCPATH >- $ echo "mode=ansi" >> $HGRCPATH >- >- $ hg init repo1 >- $ cd repo1 >- $ mkdir a b a/1 b/1 b/2 >- $ touch in_root a/in_a b/in_b a/1/in_a_1 b/1/in_b_1 b/2/in_b_2 >- >-hg status in repo root: >- >- $ hg status --color=always >- [0;35;1;4m? a/1/in_a_1[0m >- [0;35;1;4m? a/in_a[0m >- [0;35;1;4m? b/1/in_b_1[0m >- [0;35;1;4m? b/2/in_b_2[0m >- [0;35;1;4m? b/in_b[0m >- [0;35;1;4m? in_root[0m >- >-hg status . in repo root: >- >- $ hg status --color=always . >- [0;35;1;4m? a/1/in_a_1[0m >- [0;35;1;4m? a/in_a[0m >- [0;35;1;4m? b/1/in_b_1[0m >- [0;35;1;4m? b/2/in_b_2[0m >- [0;35;1;4m? b/in_b[0m >- [0;35;1;4m? in_root[0m >- >- $ hg status --color=always --cwd a >- [0;35;1;4m? a/1/in_a_1[0m >- [0;35;1;4m? a/in_a[0m >- [0;35;1;4m? b/1/in_b_1[0m >- [0;35;1;4m? b/2/in_b_2[0m >- [0;35;1;4m? b/in_b[0m >- [0;35;1;4m? in_root[0m >- $ hg status --color=always --cwd a . >- [0;35;1;4m? 1/in_a_1[0m >- [0;35;1;4m? in_a[0m >- $ hg status --color=always --cwd a .. >- [0;35;1;4m? 1/in_a_1[0m >- [0;35;1;4m? in_a[0m >- [0;35;1;4m? ../b/1/in_b_1[0m >- [0;35;1;4m? ../b/2/in_b_2[0m >- [0;35;1;4m? ../b/in_b[0m >- [0;35;1;4m? ../in_root[0m >- >- $ hg status --color=always --cwd b >- [0;35;1;4m? a/1/in_a_1[0m >- [0;35;1;4m? a/in_a[0m >- [0;35;1;4m? b/1/in_b_1[0m >- [0;35;1;4m? b/2/in_b_2[0m >- [0;35;1;4m? b/in_b[0m >- [0;35;1;4m? in_root[0m >- $ hg status --color=always --cwd b . >- [0;35;1;4m? 1/in_b_1[0m >- [0;35;1;4m? 2/in_b_2[0m >- [0;35;1;4m? in_b[0m >- $ hg status --color=always --cwd b .. >- [0;35;1;4m? ../a/1/in_a_1[0m >- [0;35;1;4m? ../a/in_a[0m >- [0;35;1;4m? 1/in_b_1[0m >- [0;35;1;4m? 2/in_b_2[0m >- [0;35;1;4m? in_b[0m >- [0;35;1;4m? ../in_root[0m >- >- $ hg status --color=always --cwd a/1 >- [0;35;1;4m? a/1/in_a_1[0m >- [0;35;1;4m? a/in_a[0m >- [0;35;1;4m? b/1/in_b_1[0m >- [0;35;1;4m? b/2/in_b_2[0m >- [0;35;1;4m? b/in_b[0m >- [0;35;1;4m? in_root[0m >- $ hg status --color=always --cwd a/1 . >- [0;35;1;4m? in_a_1[0m >- $ hg status --color=always --cwd a/1 .. >- [0;35;1;4m? in_a_1[0m >- [0;35;1;4m? ../in_a[0m >- >- $ hg status --color=always --cwd b/1 >- [0;35;1;4m? a/1/in_a_1[0m >- [0;35;1;4m? a/in_a[0m >- [0;35;1;4m? b/1/in_b_1[0m >- [0;35;1;4m? b/2/in_b_2[0m >- [0;35;1;4m? b/in_b[0m >- [0;35;1;4m? in_root[0m >- $ hg status --color=always --cwd b/1 . >- [0;35;1;4m? in_b_1[0m >- $ hg status --color=always --cwd b/1 .. >- [0;35;1;4m? in_b_1[0m >- [0;35;1;4m? ../2/in_b_2[0m >- [0;35;1;4m? ../in_b[0m >- >- $ hg status --color=always --cwd b/2 >- [0;35;1;4m? a/1/in_a_1[0m >- [0;35;1;4m? a/in_a[0m >- [0;35;1;4m? b/1/in_b_1[0m >- [0;35;1;4m? b/2/in_b_2[0m >- [0;35;1;4m? b/in_b[0m >- [0;35;1;4m? in_root[0m >- $ hg status --color=always --cwd b/2 . >- [0;35;1;4m? in_b_2[0m >- $ hg status --color=always --cwd b/2 .. >- [0;35;1;4m? ../1/in_b_1[0m >- [0;35;1;4m? in_b_2[0m >- [0;35;1;4m? ../in_b[0m >- $ cd .. >- >- $ hg init repo2 >- $ cd repo2 >- $ touch modified removed deleted ignored >- $ echo "^ignored$" > .hgignore >- $ hg ci -A -m 'initial checkin' >- adding .hgignore >- adding deleted >- adding modified >- adding removed >- $ touch modified added unknown ignored >- $ hg add added >- $ hg remove removed >- $ rm deleted >- >-hg status: >- >- $ hg status --color=always >- [0;32;1mA added[0m >- [0;31;1mR removed[0m >- [0;36;1;4m! deleted[0m >- [0;35;1;4m? unknown[0m >- >-hg status modified added removed deleted unknown never-existed ignored: >- >- $ hg status --color=always modified added removed deleted unknown never-existed ignored >- never-existed: No such file or directory >- [0;32;1mA added[0m >- [0;31;1mR removed[0m >- [0;36;1;4m! deleted[0m >- [0;35;1;4m? unknown[0m >- >- $ hg copy modified copied >- >-hg status -C: >- >- $ hg status --color=always -C >- [0;32;1mA added[0m >- [0;32;1mA copied[0m >- [0;0m modified[0m >- [0;31;1mR removed[0m >- [0;36;1;4m! deleted[0m >- [0;35;1;4m? unknown[0m >- >-hg status -A: >- >- $ hg status --color=always -A >- [0;32;1mA added[0m >- [0;32;1mA copied[0m >- [0;0m modified[0m >- [0;31;1mR removed[0m >- [0;36;1;4m! deleted[0m >- [0;35;1;4m? unknown[0m >- [0;30;1mI ignored[0m >- [0;0mC .hgignore[0m >- [0;0mC modified[0m >- >- >- $ echo "^ignoreddir$" > .hgignore >- $ mkdir ignoreddir >- $ touch ignoreddir/file >- >-hg status ignoreddir/file: >- >- $ hg status --color=always ignoreddir/file >- >-hg status -i ignoreddir/file: >- >- $ hg status --color=always -i ignoreddir/file >- [0;30;1mI ignoreddir/file[0m >- $ cd .. >- >-check 'status -q' and some combinations >- >- $ hg init repo3 >- $ cd repo3 >- $ touch modified removed deleted ignored >- $ echo "^ignored$" > .hgignore >- $ hg commit -A -m 'initial checkin' >- adding .hgignore >- adding deleted >- adding modified >- adding removed >- $ touch added unknown ignored >- $ hg add added >- $ echo "test" >> modified >- $ hg remove removed >- $ rm deleted >- $ hg copy modified copied >- >-test unknown color >- >- $ hg --config color.status.modified=periwinkle status --color=always >- ignoring unknown color/effect 'periwinkle' (configured in color.status.modified) >- M modified >- [0;32;1mA added[0m >- [0;32;1mA copied[0m >- [0;31;1mR removed[0m >- [0;36;1;4m! deleted[0m >- [0;35;1;4m? unknown[0m >- >-Run status with 2 different flags. >-Check if result is the same or different. >-If result is not as expected, raise error >- >- $ assert() { >- > hg status --color=always $1 > ../a >- > hg status --color=always $2 > ../b >- > if diff ../a ../b > /dev/null; then >- > out=0 >- > else >- > out=1 >- > fi >- > if [ $3 -eq 0 ]; then >- > df="same" >- > else >- > df="different" >- > fi >- > if [ $out -ne $3 ]; then >- > echo "Error on $1 and $2, should be $df." >- > fi >- > } >- >-assert flag1 flag2 [0-same | 1-different] >- >- $ assert "-q" "-mard" 0 >- $ assert "-A" "-marduicC" 0 >- $ assert "-qA" "-mardcC" 0 >- $ assert "-qAui" "-A" 0 >- $ assert "-qAu" "-marducC" 0 >- $ assert "-qAi" "-mardicC" 0 >- $ assert "-qu" "-u" 0 >- $ assert "-q" "-u" 1 >- $ assert "-m" "-a" 1 >- $ assert "-r" "-d" 1 >- $ cd .. >- >-test 'resolve -l' >- >- $ hg init repo4 >- $ cd repo4 >- $ echo "file a" > a >- $ echo "file b" > b >- $ hg add a b >- $ hg commit -m "initial" >- $ echo "file a change 1" > a >- $ echo "file b change 1" > b >- $ hg commit -m "head 1" >- $ hg update 0 >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo "file a change 2" > a >- $ echo "file b change 2" > b >- $ hg commit -m "head 2" >- created new head >- $ hg merge >- merging a >- warning: conflicts during merge. >- merging a failed! >- merging b >- warning: conflicts during merge. >- merging b failed! >- 0 files updated, 0 files merged, 0 files removed, 2 files unresolved >- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon >- [1] >- $ hg resolve -m b >- >-hg resolve with one unresolved, one resolved: >- >- $ hg resolve --color=always -l >- [0;31;1mU a[0m >- [0;32;1mR b[0m >!. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-revert.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-revert.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-revert.t.err >@@ -1,264 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ hg init repo >- $ cd repo >- $ echo 123 > a >- $ echo 123 > c >- $ echo 123 > e >- $ hg add a c e >- $ hg commit -m "first" a c e >- $ echo 123 > b >- >-should show b unknown >- >- $ hg status >- ? b >- $ echo 12 > c >- >-should show b unknown and c modified >- >- $ hg status >- M c >- ? b >- $ hg add b >- >-should show b added and c modified >- >- $ hg status >- M c >- A b >- $ hg rm a >- >-should show a removed, b added and c modified >- >- $ hg status >- M c >- A b >- R a >- $ hg revert a >- >-should show b added, copy saved, and c modified >- >- $ hg status >- M c >- A b >- $ hg revert b >- >-should show b unknown, and c modified >- >- $ hg status >- M c >- ? b >- $ hg revert --no-backup c >- >-should show unknown: b >- >- $ hg status >- ? b >- $ hg add b >- >-should show b added >- >- $ hg status b >- A b >- $ rm b >- >-should show b deleted >- >- $ hg status b >- ! b >- $ hg revert -v b >- forgetting b >- >-should not find b >- >- $ hg status b >- b: No such file or directory >- >-should show a c e >- >- $ ls >- a >- c >- e >- >-should verbosely save backup to e.orig >- >- $ echo z > e >- $ hg revert --all -v >- saving current version of e as e.orig >- reverting e >- >-should say no changes needed >- >- $ hg revert a >- no changes needed to a >- >-should say file not managed >- >- $ echo q > q >- $ hg revert q >- file not managed: q >- $ rm q >- >-should say file not found >- >- $ hg revert notfound >- notfound: no such file in rev 334a9e57682c >- $ touch d >- $ hg add d >- $ hg rm a >- $ hg commit -m "second" >- $ echo z > z >- $ hg add z >- $ hg st >- A z >- ? e.orig >- >-should add a, remove d, forget z >- >- $ hg revert --all -r0 >- adding a >- removing d >- forgetting z >- >-should forget a, undelete d >- >- $ hg revert --all -rtip >- forgetting a >- undeleting d >- $ rm a *.orig >- >-should silently add a >- >- $ hg revert -r0 a >- $ hg st a >- A a >- $ hg rm d >- $ hg st d >- R d >- >-should silently keep d removed >- >- $ hg revert -r0 d >- $ hg st d >- R d >- >- $ hg update -C >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ chmod +x c >- $ hg revert --all >- reverting c >- >-should print non-executable >- >- $ test -x c || echo non-executable >- non-executable >- >- $ chmod +x c >- $ hg commit -m exe >- >- $ chmod -x c >- $ hg revert --all >- reverting c >- >-should print executable >- >- $ test -x c && echo executable >- executable >- >- $ cd .. >- >- >-Issue241: update and revert produces inconsistent repositories >- >- $ hg init a >- $ cd a >- $ echo a >> a >- $ hg commit -A -d '1 0' -m a >- adding a >- $ echo a >> a >- $ hg commit -d '2 0' -m a >- $ hg update 0 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ mkdir b >- $ echo b > b/b >- >-should fail - no arguments >- >- $ hg revert -rtip >- abort: no files or directories specified; use --all to revert the whole repo >- [255] >- >-should succeed >- >- $ hg revert --all -rtip >- reverting a >- >- >-Issue332: confusing message when reverting directory >- >- $ hg ci -A -m b >- adding b/b >- created new head >- $ echo foobar > b/b >- $ mkdir newdir >- $ echo foo > newdir/newfile >- $ hg add newdir/newfile >- $ hg revert b newdir >- reverting b/b >- forgetting newdir/newfile >- $ echo foobar > b/b >- $ hg revert . >- reverting b/b >- >- >-reverting a rename target should revert the source >- >- $ hg mv a newa >- $ hg revert newa >- $ hg st a newa >- ? newa >- >- $ cd .. >- >- $ hg init ignored >- $ cd ignored >- $ echo '^ignored$' > .hgignore >- $ echo '^ignoreddir$' >> .hgignore >- $ echo '^removed$' >> .hgignore >- >- $ mkdir ignoreddir >- $ touch ignoreddir/file >- $ touch ignoreddir/removed >- $ touch ignored >- $ touch removed >- >-4 ignored files (we will add/commit everything) >- >- $ hg st -A -X .hgignore >- I ignored >- I ignoreddir/file >- I ignoreddir/removed >- I removed >- $ hg ci -qAm 'add files' ignored ignoreddir/file ignoreddir/removed removed >- >- $ echo >> ignored >- $ echo >> ignoreddir/file >- $ hg rm removed ignoreddir/removed >- >-should revert ignored* and undelete *removed >- >- $ hg revert -a --no-backup >- reverting ignored >- reverting ignoreddir/file >- undeleting ignoreddir/removed >- undeleting removed >- $ hg st -mardi >- >- $ hg up -qC >- $ echo >> ignored >- $ hg rm removed >- >-should silently revert the named files >- >- $ hg revert --no-backup ignored removed >- $ hg st -mardi >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-status.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-status.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-status.t.err >@@ -1,274 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ hg init repo1 >- $ cd repo1 >- $ mkdir a b a/1 b/1 b/2 >- $ touch in_root a/in_a b/in_b a/1/in_a_1 b/1/in_b_1 b/2/in_b_2 >- >-hg status in repo root: >- >- $ hg status >- ? a/1/in_a_1 >- ? a/in_a >- ? b/1/in_b_1 >- ? b/2/in_b_2 >- ? b/in_b >- ? in_root >- >-hg status . in repo root: >- >- $ hg status . >- ? a/1/in_a_1 >- ? a/in_a >- ? b/1/in_b_1 >- ? b/2/in_b_2 >- ? b/in_b >- ? in_root >- >- $ hg status --cwd a >- ? a/1/in_a_1 >- ? a/in_a >- ? b/1/in_b_1 >- ? b/2/in_b_2 >- ? b/in_b >- ? in_root >- $ hg status --cwd a . >- ? 1/in_a_1 >- ? in_a >- $ hg status --cwd a .. >- ? 1/in_a_1 >- ? in_a >- ? ../b/1/in_b_1 >- ? ../b/2/in_b_2 >- ? ../b/in_b >- ? ../in_root >- >- $ hg status --cwd b >- ? a/1/in_a_1 >- ? a/in_a >- ? b/1/in_b_1 >- ? b/2/in_b_2 >- ? b/in_b >- ? in_root >- $ hg status --cwd b . >- ? 1/in_b_1 >- ? 2/in_b_2 >- ? in_b >- $ hg status --cwd b .. >- ? ../a/1/in_a_1 >- ? ../a/in_a >- ? 1/in_b_1 >- ? 2/in_b_2 >- ? in_b >- ? ../in_root >- >- $ hg status --cwd a/1 >- ? a/1/in_a_1 >- ? a/in_a >- ? b/1/in_b_1 >- ? b/2/in_b_2 >- ? b/in_b >- ? in_root >- $ hg status --cwd a/1 . >- ? in_a_1 >- $ hg status --cwd a/1 .. >- ? in_a_1 >- ? ../in_a >- >- $ hg status --cwd b/1 >- ? a/1/in_a_1 >- ? a/in_a >- ? b/1/in_b_1 >- ? b/2/in_b_2 >- ? b/in_b >- ? in_root >- $ hg status --cwd b/1 . >- ? in_b_1 >- $ hg status --cwd b/1 .. >- ? in_b_1 >- ? ../2/in_b_2 >- ? ../in_b >- >- $ hg status --cwd b/2 >- ? a/1/in_a_1 >- ? a/in_a >- ? b/1/in_b_1 >- ? b/2/in_b_2 >- ? b/in_b >- ? in_root >- $ hg status --cwd b/2 . >- ? in_b_2 >- $ hg status --cwd b/2 .. >- ? ../1/in_b_1 >- ? in_b_2 >- ? ../in_b >- $ cd .. >- >- $ hg init repo2 >- $ cd repo2 >- $ touch modified removed deleted ignored >- $ echo "^ignored$" > .hgignore >- $ hg ci -A -m 'initial checkin' >- adding .hgignore >- adding deleted >- adding modified >- adding removed >- $ touch modified added unknown ignored >- $ hg add added >- $ hg remove removed >- $ rm deleted >- >-hg status: >- >- $ hg status >- A added >- R removed >- ! deleted >- ? unknown >- >-hg status modified added removed deleted unknown never-existed ignored: >- >- $ hg status modified added removed deleted unknown never-existed ignored >- never-existed: No such file or directory >- A added >- R removed >- ! deleted >- ? unknown >- >- $ hg copy modified copied >- >-hg status -C: >- >- $ hg status -C >- A added >- A copied >- modified >- R removed >- ! deleted >- ? unknown >- >-hg status -A: >- >- $ hg status -A >- A added >- A copied >- modified >- R removed >- ! deleted >- ? unknown >- I ignored >- C .hgignore >- C modified >- >- >- $ echo "^ignoreddir$" > .hgignore >- $ mkdir ignoreddir >- $ touch ignoreddir/file >- >-hg status ignoreddir/file: >- >- $ hg status ignoreddir/file >- >-hg status -i ignoreddir/file: >- >- $ hg status -i ignoreddir/file >- I ignoreddir/file >- $ cd .. >- >-Check 'status -q' and some combinations >- >- $ hg init repo3 >- $ cd repo3 >- $ touch modified removed deleted ignored >- $ echo "^ignored$" > .hgignore >- $ hg commit -A -m 'initial checkin' >- adding .hgignore >- adding deleted >- adding modified >- adding removed >- $ touch added unknown ignored >- $ hg add added >- $ echo "test" >> modified >- $ hg remove removed >- $ rm deleted >- $ hg copy modified copied >- >-Run status with 2 different flags. >-Check if result is the same or different. >-If result is not as expected, raise error >- >- $ assert() { >- > hg status $1 > ../a >- > hg status $2 > ../b >- > if diff ../a ../b > /dev/null; then >- > out=0 >- > else >- > out=1 >- > fi >- > if [ $3 -eq 0 ]; then >- > df="same" >- > else >- > df="different" >- > fi >- > if [ $out -ne $3 ]; then >- > echo "Error on $1 and $2, should be $df." >- > fi >- > } >- >-Assert flag1 flag2 [0-same | 1-different] >- >- $ assert "-q" "-mard" 0 >- $ assert "-A" "-marduicC" 0 >- $ assert "-qA" "-mardcC" 0 >- $ assert "-qAui" "-A" 0 >- $ assert "-qAu" "-marducC" 0 >- $ assert "-qAi" "-mardicC" 0 >- $ assert "-qu" "-u" 0 >- $ assert "-q" "-u" 1 >- $ assert "-m" "-a" 1 >- $ assert "-r" "-d" 1 >- $ cd .. >- >- $ hg init repo4 >- $ cd repo4 >- $ touch modified removed deleted >- $ hg ci -q -A -m 'initial checkin' >- $ touch added unknown >- $ hg add added >- $ hg remove removed >- $ rm deleted >- $ echo x > modified >- $ hg copy modified copied >- $ hg ci -m 'test checkin' -d "1000001 0" >- $ rm * >- $ touch unrelated >- $ hg ci -q -A -m 'unrelated checkin' -d "1000002 0" >- >-hg status --change 1: >- >- $ hg status --change 1 >- M modified >- A added >- A copied >- R removed >- >-hg status --change 1 unrelated: >- >- $ hg status --change 1 unrelated >- >-hg status -C --change 1 added modified copied removed deleted: >- >- $ hg status -C --change 1 added modified copied removed deleted >- M modified >- A added >- A copied >- modified >- R removed >- >-hg status -A --change 1: >- >- $ hg status -A --change 1 >- M modified >- A added >- A copied >- modified >- R removed >- C deleted >!. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-strip-cross.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-strip-cross.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-strip-cross.t.err >@@ -1,141 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > test stripping of filelogs where the linkrev doesn't always increase > > $ echo '[extensions]' >> $HGRCPATH >- $ echo 'hgext.mq =' >> $HGRCPATH >- $ hg init orig >- $ cd orig >- $ commit() >- > { >- > hg up -qC null >- > count=1 >- > for i in "$@"; do >- > for f in $i; do >- > echo $count > $f >- > done >- > count=`expr $count + 1` >- > done >- > hg commit -qAm "$*" >- > } >- >-2 1 0 2 0 1 2 >- >- $ commit '201 210' >- $ commit '102 120' '210' >- $ commit '021' >- $ commit '201' '021 120' >- $ commit '012 021' '102 201' '120 210' >- $ commit 'manifest-file' >- $ commit '102 120' '012 210' '021 201' >- $ commit '201 210' '021 120' '012 102' >- $ HGUSER=another-user; export HGUSER >- $ commit 'manifest-file' >- $ commit '012' 'manifest-file' >- $ cd .. >- $ hg clone -q -U -r -1 -r -2 -r -3 -r -4 -r -6 orig crossed >- $ for i in crossed/.hg/store/00manifest.i crossed/.hg/store/data/*.i; do >- > echo $i >- > hg debugindex $i >- > echo >- > done >- crossed/.hg/store/00manifest.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 112 0 0 6f105cbb914d 000000000000 000000000000 >- 1 112 56 1 3 1b55917b3699 000000000000 000000000000 >- 2 168 123 1 1 8f3d04e263e5 000000000000 000000000000 >- 3 291 122 1 2 f0ef8726ac4f 000000000000 000000000000 >- 4 413 87 4 4 0b76e38b4070 000000000000 000000000000 >- >- crossed/.hg/store/data/012.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 3 0 0 b8e02f643373 000000000000 000000000000 >- 1 3 3 1 1 5d9299349fc0 000000000000 000000000000 >- 2 6 3 2 2 2661d26c6496 000000000000 000000000000 >- >- crossed/.hg/store/data/021.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 3 0 0 b8e02f643373 000000000000 000000000000 >- 1 3 3 1 2 5d9299349fc0 000000000000 000000000000 >- 2 6 3 2 1 2661d26c6496 000000000000 000000000000 >- >- crossed/.hg/store/data/102.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 3 0 1 b8e02f643373 000000000000 000000000000 >- 1 3 3 1 0 5d9299349fc0 000000000000 000000000000 >- 2 6 3 2 2 2661d26c6496 000000000000 000000000000 >- >- crossed/.hg/store/data/120.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 3 0 1 b8e02f643373 000000000000 000000000000 >- 1 3 3 1 2 5d9299349fc0 000000000000 000000000000 >- 2 6 3 2 0 2661d26c6496 000000000000 000000000000 >- >- crossed/.hg/store/data/201.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 3 0 2 b8e02f643373 000000000000 000000000000 >- 1 3 3 1 0 5d9299349fc0 000000000000 000000000000 >- 2 6 3 2 1 2661d26c6496 000000000000 000000000000 >- >- crossed/.hg/store/data/210.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 3 0 2 b8e02f643373 000000000000 000000000000 >- 1 3 3 1 1 5d9299349fc0 000000000000 000000000000 >- 2 6 3 2 0 2661d26c6496 000000000000 000000000000 >- >- crossed/.hg/store/data/manifest-file.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 3 0 3 b8e02f643373 000000000000 000000000000 >- 1 3 3 1 4 5d9299349fc0 000000000000 000000000000 >- >- $ for i in 0 1 2 3 4; do >- > hg clone -q -U --pull crossed $i >- > echo "% Trying to strip revision $i" >- > hg --cwd $i strip $i >- > echo "% Verifying" >- > hg --cwd $i verify >- > echo >- > done >- % Trying to strip revision 0 >- saved backup bundle to $TESTTMP/0/.hg/strip-backup/*-backup.hg (glob) >- % Verifying >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 7 files, 4 changesets, 15 total revisions >- >- % Trying to strip revision 1 >- saved backup bundle to $TESTTMP/1/.hg/strip-backup/*-backup.hg (glob) >- % Verifying >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 7 files, 4 changesets, 14 total revisions >- >- % Trying to strip revision 2 >- saved backup bundle to $TESTTMP/2/.hg/strip-backup/*-backup.hg (glob) >- % Verifying >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 7 files, 4 changesets, 14 total revisions >- >- % Trying to strip revision 3 >- saved backup bundle to $TESTTMP/3/.hg/strip-backup/*-backup.hg (glob) >- % Verifying >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 7 files, 4 changesets, 19 total revisions >- >- % Trying to strip revision 4 >- saved backup bundle to $TESTTMP/4/.hg/strip-backup/*-backup.hg (glob) >- % Verifying >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 7 files, 4 changesets, 19 total revisions >- >!.... >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-share.t output changed >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-share.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-share.t.err >@@ -88,12 +88,16 @@ > hg serve shared clone > > $ hg serve -n test -p $HGPORT -d --pid-file=hg.pid >+ abort: cannot start server at ':$HGPORT': Address already in use >+ abort: child process failed to start >+ [255] > $ cat hg.pid >> $DAEMON_PIDS >+ cat: hg.pid: No such file or directory >+ [1] > $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT '/raw-file/' > 200 Script output follows > > >- -rw-r--r-- 4 a >- -rw-r--r-- 2 b >+ -rw-r--r-- 3 eucjp.txt > > >!.. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-schemes.t output changed >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-schemes.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-schemes.t.err >@@ -14,12 +14,17 @@ > $ hg ci -Am initial > adding a > $ hg serve -n test -p $HGPORT -d --pid-file=hg.pid -A access.log -E errors.log >+ abort: cannot start server at ':$HGPORT': Address already in use >+ abort: child process failed to start >+ [255] > $ cat hg.pid >> $DAEMON_PIDS >+ cat: hg.pid: No such file or directory >+ [1] > $ hg incoming l:// > comparing with l:// > searching for changes >- no changes found >- [1] >+ abort: repository is unrelated >+ [255] > > check that {1} syntax works > >@@ -29,8 +34,11 @@ > comparing with parts://localhost > sending heads command > searching for changes >- no changes found >- [1] >+ sending branches command >+ examining 2c0277f05ed4:daa7f7c60e0a >+ found new changeset daa7f7c60e0a >+ abort: repository is unrelated >+ [255] > > check that paths are expanded > >@@ -43,3 +51,5 @@ > errors > > $ cat errors.log >+ cat: errors.log: No such file or directory >+ [1] >!. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-update-branches.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-update-branches.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-update-branches.t.err >@@ -1,3 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > # Construct the following history tree: > # > # @ 5:e1bb631146ca b1 >@@ -13,118 +15,3 @@ > # o 0:b608b9236435 > > $ hg init >- $ echo foo > foo >- $ echo zero > a >- $ hg ci -qAm0 >- $ echo one > a ; hg ci -m1 >- $ echo two > a ; hg ci -m2 >- $ hg up -q 1 >- $ echo three > a ; hg ci -qm3 >- $ hg up -q 0 >- $ hg branch -q b1 >- $ echo four > a ; hg ci -qm4 >- $ echo five > a ; hg ci -qm5 >- >-Initial repo state: >- >- $ hg --config 'extensions.graphlog=' \ >- > glog --template '{rev}:{node|short} {parents} {branches}\n' >- @ 5:e1bb631146ca b1 >- | >- o 4:a4fdb3b883c4 0:b608b9236435 b1 >- | >- | o 3:4b57d2520816 1:44592833ba9f >- | | >- | | o 2:063f31070f65 >- | |/ >- | o 1:44592833ba9f >- |/ >- o 0:b608b9236435 >- >- >-Test helper functions: >- >- $ revtest () { >- > msg=$1 >- > dirtyflag=$2 # 'clean' or 'dirty' >- > startrev=$3 >- > targetrev=$4 >- > opt=$5 >- > hg up -qC $startrev >- > test $dirtyflag = dirty && echo dirty > foo >- > hg up $opt $targetrev >- > hg parent --template 'parent={rev}\n' >- > hg stat >- > } >- >- $ norevtest () { >- > msg=$1 >- > dirtyflag=$2 # 'clean' or 'dirty' >- > startrev=$3 >- > opt=$4 >- > hg up -qC $startrev >- > test $dirtyflag = dirty && echo dirty > foo >- > hg up $opt >- > hg parent --template 'parent={rev}\n' >- > hg stat >- > } >- >-Test cases are documented in a table in the update function of merge.py. >-Cases are run as shown in that table, row by row. >- >- $ norevtest 'none clean linear' clean 4 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- parent=5 >- >- $ norevtest 'none clean same' clean 2 >- abort: crosses branches (merge branches or use --check to force update) >- parent=2 >- >- >- $ revtest 'none clean linear' clean 1 2 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- parent=2 >- >- $ revtest 'none clean same' clean 2 3 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- parent=3 >- >- $ revtest 'none clean cross' clean 3 4 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- parent=4 >- >- >- $ revtest 'none dirty linear' dirty 1 2 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- parent=2 >- M foo >- >- $ revtest 'none dirty same' dirty 2 3 >- abort: crosses branches (merge branches or use --clean to discard changes) >- parent=2 >- M foo >- >- $ revtest 'none dirty cross' dirty 3 4 >- abort: crosses branches (merge branches or use --clean to discard changes) >- parent=3 >- M foo >- >- >- $ revtest '-C dirty linear' dirty 1 2 -C >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- parent=2 >- >- $ revtest '-c dirty linear' dirty 1 2 -c >- abort: uncommitted local changes >- parent=1 >- M foo >- >- $ norevtest '-c clean same' clean 2 -c >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- parent=3 >- >- $ revtest '-cC dirty linear' dirty 1 2 -cC >- abort: cannot specify both -c/--check and -C/--clean >- parent=1 >- M foo >- >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-ssh-clone-r.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-ssh-clone-r.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-ssh-clone-r.t.err >@@ -1,3 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > This test tries to exercise the ssh functionality with a dummy script > > $ cat <<EOF > dummyssh >@@ -22,259 +24,3 @@ > > r = os.system(sys.argv[2]) > > sys.exit(bool(r)) > > EOF >- $ hg init remote >- $ cd remote >- >-creating 'remote >- >- $ cat >>afile <<EOF >- > 0 >- > EOF >- $ hg add afile >- $ hg commit -m "0.0" >- $ cat >>afile <<EOF >- > 1 >- > EOF >- $ hg commit -m "0.1" >- $ cat >>afile <<EOF >- > 2 >- > EOF >- $ hg commit -m "0.2" >- $ cat >>afile <<EOF >- > 3 >- > EOF >- $ hg commit -m "0.3" >- $ hg update -C 0 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ cat >>afile <<EOF >- > 1 >- > EOF >- $ hg commit -m "1.1" >- created new head >- $ cat >>afile <<EOF >- > 2 >- > EOF >- $ hg commit -m "1.2" >- $ cat >fred <<EOF >- > a line >- > EOF >- $ cat >>afile <<EOF >- > 3 >- > EOF >- $ hg add fred >- $ hg commit -m "1.3" >- $ hg mv afile adifferentfile >- $ hg commit -m "1.3m" >- $ hg update -C 3 >- 1 files updated, 0 files merged, 2 files removed, 0 files unresolved >- $ hg mv afile anotherfile >- $ hg commit -m "0.3m" >- $ hg debugindex .hg/store/data/afile.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 3 0 0 362fef284ce2 000000000000 000000000000 >- 1 3 5 1 1 125144f7e028 362fef284ce2 000000000000 >- 2 8 7 2 2 4c982badb186 125144f7e028 000000000000 >- 3 15 9 3 3 19b1fc555737 4c982badb186 000000000000 >- $ hg debugindex .hg/store/data/adifferentfile.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 75 0 7 2565f3199a74 000000000000 000000000000 >- $ hg debugindex .hg/store/data/anotherfile.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 75 0 8 2565f3199a74 000000000000 000000000000 >- $ hg debugindex .hg/store/data/fred.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 8 0 6 12ab3bcc5ea4 000000000000 000000000000 >- $ hg debugindex .hg/store/00manifest.i >- rev offset length base linkrev nodeid p1 p2 >- 0 0 48 0 0 43eadb1d2d06 000000000000 000000000000 >- 1 48 48 1 1 8b89697eba2c 43eadb1d2d06 000000000000 >- 2 96 48 2 2 626a32663c2f 8b89697eba2c 000000000000 >- 3 144 48 3 3 f54c32f13478 626a32663c2f 000000000000 >- 4 192 58 3 6 de68e904d169 626a32663c2f 000000000000 >- 5 250 68 3 7 09bb521d218d de68e904d169 000000000000 >- 6 318 54 6 8 1fde233dfb0f f54c32f13478 000000000000 >- $ hg verify >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 4 files, 9 changesets, 7 total revisions >- $ cd .. >- >-clone remote via stream >- >- $ for i in 0 1 2 3 4 5 6 7 8; do >- > hg clone -e "python ./dummyssh" --uncompressed -r "$i" ssh://user@dummy/remote test-"$i" >- > if cd test-"$i"; then >- > hg verify >- > cd .. >- > fi >- > done >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 1 files, 1 changesets, 1 total revisions >- adding changesets >- adding manifests >- adding file changes >- added 2 changesets with 2 changes to 1 files >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 1 files, 2 changesets, 2 total revisions >- adding changesets >- adding manifests >- adding file changes >- added 3 changesets with 3 changes to 1 files >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 1 files, 3 changesets, 3 total revisions >- adding changesets >- adding manifests >- adding file changes >- added 4 changesets with 4 changes to 1 files >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 1 files, 4 changesets, 4 total revisions >- adding changesets >- adding manifests >- adding file changes >- added 2 changesets with 2 changes to 1 files >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 1 files, 2 changesets, 2 total revisions >- adding changesets >- adding manifests >- adding file changes >- added 3 changesets with 3 changes to 1 files >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 1 files, 3 changesets, 3 total revisions >- adding changesets >- adding manifests >- adding file changes >- added 4 changesets with 5 changes to 2 files >- updating to branch default >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 2 files, 4 changesets, 5 total revisions >- adding changesets >- adding manifests >- adding file changes >- added 5 changesets with 6 changes to 3 files >- updating to branch default >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 3 files, 5 changesets, 6 total revisions >- adding changesets >- adding manifests >- adding file changes >- added 5 changesets with 5 changes to 2 files >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 2 files, 5 changesets, 5 total revisions >- $ cd test-8 >- $ hg pull ../test-7 >- pulling from ../test-7 >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 4 changesets with 2 changes to 3 files (+1 heads) >- (run 'hg heads' to see heads, 'hg merge' to merge) >- $ hg verify >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 4 files, 9 changesets, 7 total revisions >- $ cd .. >- $ cd test-1 >- $ hg pull -e "python ../dummyssh" -r 4 ssh://user@dummy/remote >- pulling from ssh://user@dummy/remote >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 0 changes to 1 files (+1 heads) >- (run 'hg heads' to see heads, 'hg merge' to merge) >- $ hg verify >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 1 files, 3 changesets, 2 total revisions >- $ hg pull -e "python ../dummyssh" ssh://user@dummy/remote >- pulling from ssh://user@dummy/remote >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 6 changesets with 5 changes to 4 files >- (run 'hg update' to get a working copy) >- $ cd .. >- $ cd test-2 >- $ hg pull -e "python ../dummyssh" -r 5 ssh://user@dummy/remote >- pulling from ssh://user@dummy/remote >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 2 changesets with 0 changes to 1 files (+1 heads) >- (run 'hg heads' to see heads, 'hg merge' to merge) >- $ hg verify >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 1 files, 5 changesets, 3 total revisions >- $ hg pull -e "python ../dummyssh" ssh://user@dummy/remote >- pulling from ssh://user@dummy/remote >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 4 changesets with 4 changes to 4 files >- (run 'hg update' to get a working copy) >- $ hg verify >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 4 files, 9 changesets, 7 total revisions >!. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-tag.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-tag.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-tag.t.err >@@ -1,198 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ hg init test >- $ cd test >- >- $ echo a > a >- $ hg add a >- $ hg commit -m "test" >- $ hg history >- changeset: 0:acb14030fe0a >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: test >- >- >- $ hg tag ' ' >- abort: tag names cannot consist entirely of whitespace >- [255] >- >- $ hg tag "bleah" >- $ hg history >- changeset: 1:d4f0d2909abc >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: Added tag bleah for changeset acb14030fe0a >- >- changeset: 0:acb14030fe0a >- tag: bleah >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: test >- >- >- $ echo foo >> .hgtags >- $ hg tag "bleah2" >- abort: working copy of .hgtags is changed (please commit .hgtags manually) >- [255] >- >- $ hg revert .hgtags >- $ hg tag -r 0 x y z y y z >- abort: tag names must be unique >- [255] >- $ hg tag tap nada dot tip null . >- abort: the name 'tip' is reserved >- [255] >- $ hg tag "bleah" >- abort: tag 'bleah' already exists (use -f to force) >- [255] >- $ hg tag "blecch" "bleah" >- abort: tag 'bleah' already exists (use -f to force) >- [255] >- >- $ hg tag --remove "blecch" >- abort: tag 'blecch' does not exist >- [255] >- $ hg tag --remove "bleah" "blecch" "blough" >- abort: tag 'blecch' does not exist >- [255] >- >- $ hg tag -r 0 "bleah0" >- $ hg tag -l -r 1 "bleah1" >- $ hg tag gack gawk gorp >- $ hg tag -f gack >- $ hg tag --remove gack gorp >- >- $ cat .hgtags >- acb14030fe0a21b60322c440ad2d20cf7685a376 bleah >- acb14030fe0a21b60322c440ad2d20cf7685a376 bleah0 >- 336fccc858a4eb69609a291105009e484a6b6b8d gack >- 336fccc858a4eb69609a291105009e484a6b6b8d gawk >- 336fccc858a4eb69609a291105009e484a6b6b8d gorp >- 336fccc858a4eb69609a291105009e484a6b6b8d gack >- 799667b6f2d9b957f73fa644a918c2df22bab58f gack >- 799667b6f2d9b957f73fa644a918c2df22bab58f gack >- 0000000000000000000000000000000000000000 gack >- 336fccc858a4eb69609a291105009e484a6b6b8d gorp >- 0000000000000000000000000000000000000000 gorp >- $ cat .hg/localtags >- d4f0d2909abc9290e2773c08837d70c1794e3f5a bleah1 >- >- $ hg update 0 >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg tag "foobar" >- $ cat .hgtags >- acb14030fe0a21b60322c440ad2d20cf7685a376 foobar >- $ cat .hg/localtags >- d4f0d2909abc9290e2773c08837d70c1794e3f5a bleah1 >- >- $ hg tag -l 'xx >- > newline' >- abort: '\n' cannot be used in a tag name >- [255] >- $ hg tag -l 'xx:xx' >- abort: ':' cannot be used in a tag name >- [255] >- >-cloning local tags >- >- $ cd .. >- $ hg -R test log -r0:5 >- changeset: 0:acb14030fe0a >- tag: bleah >- tag: bleah0 >- tag: foobar >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: test >- >- changeset: 1:d4f0d2909abc >- tag: bleah1 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: Added tag bleah for changeset acb14030fe0a >- >- changeset: 2:336fccc858a4 >- tag: gawk >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: Added tag bleah0 for changeset acb14030fe0a >- >- changeset: 3:799667b6f2d9 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: Added tag gack, gawk, gorp for changeset 336fccc858a4 >- >- changeset: 4:154eeb7c0138 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: Added tag gack for changeset 799667b6f2d9 >- >- changeset: 5:b4bb47aaff09 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: Removed tag gack, gorp >- >- $ hg clone -q -rbleah1 test test1 >- $ hg -R test1 parents --style=compact >- 1[tip] d4f0d2909abc 1970-01-01 00:00 +0000 test >- Added tag bleah for changeset acb14030fe0a >- >- $ hg clone -q -r5 test#bleah1 test2 >- $ hg -R test2 parents --style=compact >- 5[tip] b4bb47aaff09 1970-01-01 00:00 +0000 test >- Removed tag gack, gorp >- >- $ hg clone -q -U test#bleah1 test3 >- $ hg -R test3 parents --style=compact >- >- $ cd test >- >-Issue601: hg tag doesn't do the right thing if .hgtags or localtags >-doesn't end with EOL >- >- $ python << EOF >- > f = file('.hg/localtags'); last = f.readlines()[-1][:-1]; f.close() >- > f = file('.hg/localtags', 'w'); f.write(last); f.close() >- > EOF >- $ cat .hg/localtags; echo >- d4f0d2909abc9290e2773c08837d70c1794e3f5a bleah1 >- $ hg tag -l localnewline >- $ cat .hg/localtags; echo >- d4f0d2909abc9290e2773c08837d70c1794e3f5a bleah1 >- c2899151f4e76890c602a2597a650a72666681bf localnewline >- >- >- $ python << EOF >- > f = file('.hgtags'); last = f.readlines()[-1][:-1]; f.close() >- > f = file('.hgtags', 'w'); f.write(last); f.close() >- > EOF >- $ hg ci -m'broken manual edit of .hgtags' >- $ cat .hgtags; echo >- acb14030fe0a21b60322c440ad2d20cf7685a376 foobar >- $ hg tag newline >- $ cat .hgtags; echo >- acb14030fe0a21b60322c440ad2d20cf7685a376 foobar >- a0eea09de1eeec777b46f2085260a373b2fbc293 newline >- >- >-tag and branch using same name >- >- $ hg branch tag-and-branch-same-name >- marked working directory as branch tag-and-branch-same-name >- $ hg ci -m"discouraged" >- $ hg tag tag-and-branch-same-name >- warning: tag tag-and-branch-same-name conflicts with existing branch name >- >-test custom commit messages >- >- $ cat > editor << '__EOF__' >- > #!/bin/sh >- > echo "custom tag message" > "$1" >- > echo "second line" >> "$1" >- > __EOF__ >- $ chmod +x editor >- $ HGEDITOR="'`pwd`'"/editor hg tag custom-tag -e >- $ hg log -l1 --template "{desc}\n" >- custom tag message >- second line >!. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-static-http.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-static-http.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-static-http.t.err >@@ -1,154 +1,4 @@ >+ >+ ### Abort: timeout after 180 seconds. > > $ cp "$TESTDIR"/printenv.py . >- $ hg clone http://localhost:$HGPORT/ copy >- abort: error: Connection refused >- [255] >- $ test -d copy >- [1] >- >-This server doesn't do range requests so it's basically only good for >-one pull >- >- $ cat > dumb.py <<EOF >- > import BaseHTTPServer, SimpleHTTPServer, os, signal >- > >- > def run(server_class=BaseHTTPServer.HTTPServer, >- > handler_class=SimpleHTTPServer.SimpleHTTPRequestHandler): >- > server_address = ('localhost', int(os.environ['HGPORT'])) >- > httpd = server_class(server_address, handler_class) >- > httpd.serve_forever() >- > >- > signal.signal(signal.SIGTERM, lambda x: sys.exit(0)) >- > run() >- > EOF >- $ python dumb.py 2>/dev/null & >- $ echo $! >> $DAEMON_PIDS >- $ mkdir remote >- $ cd remote >- $ hg init >- $ echo foo > bar >- $ hg add bar >- $ hg commit -m"test" >- $ hg tip >- changeset: 0:61c9426e69fe >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: test >- >- $ cd .. >- $ hg clone static-http://localhost:$HGPORT/remote local >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ cd local >- $ hg verify >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 1 files, 1 changesets, 1 total revisions >- $ cat bar >- foo >- $ cd ../remote >- $ echo baz > quux >- $ hg commit -A -mtest2 >- adding quux >- >-check for HTTP opener failures when cachefile does not exist >- >- $ rm .hg/*.cache >- $ cd ../local >- $ echo '[hooks]' >> .hg/hgrc >- $ echo 'changegroup = python ../printenv.py changegroup' >> .hg/hgrc >- $ hg pull >- changegroup hook: HG_NODE=822d6e31f08b9d6e3b898ce5e52efc0a4bf4905a HG_SOURCE=pull HG_URL=http://localhost:$HGPORT/remote >- pulling from static-http://localhost:$HGPORT/remote >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- (run 'hg update' to get a working copy) >- >-trying to push >- >- $ hg update >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo more foo >> bar >- $ hg commit -m"test" >- $ hg push >- pushing to static-http://localhost:$HGPORT/remote >- abort: cannot lock static-http repository >- [255] >- >-trying clone -r >- >- $ cd .. >- $ hg clone -r donotexist static-http://localhost:$HGPORT/remote local0 >- abort: unknown revision 'donotexist'! >- [255] >- $ hg clone -r 0 static-http://localhost:$HGPORT/remote local0 >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-test with "/" URI (issue 747) >- >- $ hg init >- $ echo a > a >- $ hg add a >- $ hg ci -ma >- $ hg clone static-http://localhost:$HGPORT/ local2 >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ cd local2 >- $ hg verify >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 1 files, 1 changesets, 1 total revisions >- $ cat a >- a >- $ hg paths >- default = static-http://localhost:$HGPORT/ >- >-test with empty repo (issue965) >- >- $ cd .. >- $ hg init remotempty >- $ hg clone static-http://localhost:$HGPORT/remotempty local3 >- no changes found >- updating to branch default >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ cd local3 >- $ hg verify >- checking changesets >- checking manifests >- crosschecking files in changesets and manifests >- checking files >- 0 files, 0 changesets, 0 total revisions >- $ hg paths >- default = static-http://localhost:$HGPORT/remotempty >- >-test with non-repo >- >- $ cd .. >- $ mkdir notarepo >- $ hg clone static-http://localhost:$HGPORT/notarepo local3 >- abort: 'http://localhost:$HGPORT/notarepo' does not appear to be an hg repository! >- [255] >- $ kill $! >!. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-url-rev.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-url-rev.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-url-rev.t.err >@@ -1,205 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > Test basic functionality of url#rev syntax > > $ hg init repo >- $ cd repo >- $ echo a > a >- $ hg ci -qAm 'add a' >- $ hg branch foo >- marked working directory as branch foo >- $ echo >> a >- $ hg ci -m 'change a' >- $ cd .. >- >- $ hg clone 'repo#foo' clone >- adding changesets >- adding manifests >- adding file changes >- added 2 changesets with 2 changes to 1 files >- updating to branch foo >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >- $ hg --cwd clone heads >- changeset: 1:cd2a86ecc814 >- branch: foo >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: change a >- >- changeset: 0:1f0dee641bb7 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: add a >- >- $ hg --cwd clone parents >- changeset: 1:cd2a86ecc814 >- branch: foo >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: change a >- >- $ cat clone/.hg/hgrc >- [paths] >- default = $TESTTMP/repo#foo >- >-Changing original repo: >- >- $ cd repo >- >- $ echo >> a >- $ hg ci -m 'new head of branch foo' >- >- $ hg up -qC default >- $ echo bar > bar >- $ hg ci -qAm 'add bar' >- >- $ hg log >- changeset: 3:4cd725637392 >- tag: tip >- parent: 0:1f0dee641bb7 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: add bar >- >- changeset: 2:faba9097cad4 >- branch: foo >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: new head of branch foo >- >- changeset: 1:cd2a86ecc814 >- branch: foo >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: change a >- >- changeset: 0:1f0dee641bb7 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: add a >- >- $ hg -q outgoing '../clone#foo' >- 2:faba9097cad4 >- >- $ hg -q push '../clone#foo' >- >- $ hg --cwd ../clone heads >- changeset: 2:faba9097cad4 >- branch: foo >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: new head of branch foo >- >- changeset: 0:1f0dee641bb7 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: add a >- >- $ cd .. >- >- $ cd clone >- $ hg rollback >- rolling back to revision 1 (undo push) >- >- $ hg -q incoming >- 2:faba9097cad4 >- >- $ hg -q pull >- >- $ hg heads >- changeset: 2:faba9097cad4 >- branch: foo >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: new head of branch foo >- >- changeset: 0:1f0dee641bb7 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: add a >- >-Pull should not have updated: >- >- $ hg parents -q >- 1:cd2a86ecc814 >- >-Going back to the default branch: >- >- $ hg up -C 0 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >- $ hg parents >- changeset: 0:1f0dee641bb7 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: add a >- >-No new revs, no update: >- >- $ hg pull -qu >- >- $ hg parents -q >- 0:1f0dee641bb7 >- >- $ hg rollback >- rolling back to revision 1 (undo pull) >- >- $ hg up -C 0 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >- $ hg parents -q >- 0:1f0dee641bb7 >- >-Pull -u takes us back to branch foo: >- >- $ hg pull -qu >- >- $ hg parents >- changeset: 2:faba9097cad4 >- branch: foo >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: new head of branch foo >- >- $ hg rollback >- rolling back to revision 1 (undo pull) >- >- $ hg up -C 0 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >- $ hg parents -q >- 0:1f0dee641bb7 >- >- $ hg heads -q >- 1:cd2a86ecc814 >- 0:1f0dee641bb7 >- >- $ hg pull -qur default default >- >- $ hg parents >- changeset: 3:4cd725637392 >- tag: tip >- parent: 0:1f0dee641bb7 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: add bar >- >- $ hg heads >- changeset: 3:4cd725637392 >- tag: tip >- parent: 0:1f0dee641bb7 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: add bar >- >- changeset: 2:faba9097cad4 >- branch: foo >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: new head of branch foo >- >- >!.. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-subrepo-deep-nested-change.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-subrepo-deep-nested-change.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-subrepo-deep-nested-change.t.err >@@ -1,117 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > Preparing the subrepository 'sub2' > > $ hg init sub2 >- $ echo sub2 > sub2/sub2 >- $ hg add -R sub2 >- adding sub2/sub2 >- $ hg commit -R sub2 -m "sub2 import" >- >-Preparing the 'sub1' repo which depends on the subrepo 'sub2' >- >- $ hg init sub1 >- $ echo sub1 > sub1/sub1 >- $ echo "sub2 = ../sub2" > sub1/.hgsub >- $ hg clone sub2 sub1/sub2 >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg add -R sub1 >- adding sub1/.hgsub >- adding sub1/sub1 >- $ hg commit -R sub1 -m "sub1 import" >- committing subrepository sub2 >- >-Preparing the 'main' repo which depends on the subrepo 'sub1' >- >- $ hg init main >- $ echo main > main/main >- $ echo "sub1 = ../sub1" > main/.hgsub >- $ hg clone sub1 main/sub1 >- updating to branch default >- pulling subrepo sub2 from $TESTTMP/sub2 >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg add -R main >- adding main/.hgsub >- adding main/main >- $ hg commit -R main -m "main import" >- committing subrepository sub1 >- >-Cleaning both repositories, just as a clone -U >- >- $ hg up -C -R sub2 null >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg up -C -R sub1 null >- 0 files updated, 0 files merged, 3 files removed, 0 files unresolved >- $ hg up -C -R main null >- 0 files updated, 0 files merged, 3 files removed, 0 files unresolved >- $ rm -rf main/sub1 >- $ rm -rf sub1/sub2 >- >-Clone main >- >- $ hg clone main cloned >- updating to branch default >- pulling subrepo sub1 from $TESTTMP/sub1 >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 3 changes to 3 files >- pulling subrepo sub1/sub2 from $TESTTMP/sub2 >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-Checking cloned repo ids >- >- $ printf "cloned " ; hg id -R cloned >- cloned 7f491f53a367 tip >- $ printf "cloned/sub1 " ; hg id -R cloned/sub1 >- cloned/sub1 fc3b4ce2696f tip >- $ printf "cloned/sub1/sub2 " ; hg id -R cloned/sub1/sub2 >- cloned/sub1/sub2 c57a0840e3ba tip >- >-debugsub output for main and sub1 >- >- $ hg debugsub -R cloned >- path sub1 >- source ../sub1 >- revision fc3b4ce2696f7741438c79207583768f2ce6b0dd >- $ hg debugsub -R cloned/sub1 >- path sub2 >- source ../sub2 >- revision c57a0840e3badd667ef3c3ef65471609acb2ba3c >- >-Modifying deeply nested 'sub2' >- >- $ echo modified > cloned/sub1/sub2/sub2 >- $ hg commit -m "deep nested modif should trigger a commit" -R cloned >- committing subrepository sub1 >- committing subrepository sub1/sub2 >- >-Checking modified node ids >- >- $ printf "cloned " ; hg id -R cloned >- cloned ffe6649062fe tip >- $ printf "cloned/sub1 " ; hg id -R cloned/sub1 >- cloned/sub1 2ecb03bf44a9 tip >- $ printf "cloned/sub1/sub2 " ; hg id -R cloned/sub1/sub2 >- cloned/sub1/sub2 53dd3430bcaf tip >- >-debugsub output for main and sub1 >- >- $ hg debugsub -R cloned >- path sub1 >- source ../sub1 >- revision 2ecb03bf44a94e749e8669481dd9069526ce7cb9 >- $ hg debugsub -R cloned/sub1 >- path sub2 >- source ../sub2 >- revision 53dd3430bcaf5ab4a7c48262bcad6d441f510487 >!. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-walk.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-walk.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-walk.t.err >@@ -1,306 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ mkdir t >- $ cd t >- $ hg init >- $ mkdir -p beans >- $ for b in kidney navy turtle borlotti black pinto; do >- > echo $b > beans/$b >- $ done >- $ mkdir -p mammals/Procyonidae >- $ for m in cacomistle coatimundi raccoon; do >- > echo $m > mammals/Procyonidae/$m >- $ done >- $ echo skunk > mammals/skunk >- $ echo fennel > fennel >- $ echo fenugreek > fenugreek >- $ echo fiddlehead > fiddlehead >- $ echo glob:glob > glob:glob >- $ hg addremove >- adding beans/black >- adding beans/borlotti >- adding beans/kidney >- adding beans/navy >- adding beans/pinto >- adding beans/turtle >- adding fennel >- adding fenugreek >- adding fiddlehead >- adding glob:glob >- adding mammals/Procyonidae/cacomistle >- adding mammals/Procyonidae/coatimundi >- adding mammals/Procyonidae/raccoon >- adding mammals/skunk >- $ hg commit -m "commit #0" >- >- $ hg debugwalk >- f beans/black beans/black >- f beans/borlotti beans/borlotti >- f beans/kidney beans/kidney >- f beans/navy beans/navy >- f beans/pinto beans/pinto >- f beans/turtle beans/turtle >- f fennel fennel >- f fenugreek fenugreek >- f fiddlehead fiddlehead >- f glob:glob glob:glob >- f mammals/Procyonidae/cacomistle mammals/Procyonidae/cacomistle >- f mammals/Procyonidae/coatimundi mammals/Procyonidae/coatimundi >- f mammals/Procyonidae/raccoon mammals/Procyonidae/raccoon >- f mammals/skunk mammals/skunk >- $ hg debugwalk -I. >- f beans/black beans/black >- f beans/borlotti beans/borlotti >- f beans/kidney beans/kidney >- f beans/navy beans/navy >- f beans/pinto beans/pinto >- f beans/turtle beans/turtle >- f fennel fennel >- f fenugreek fenugreek >- f fiddlehead fiddlehead >- f glob:glob glob:glob >- f mammals/Procyonidae/cacomistle mammals/Procyonidae/cacomistle >- f mammals/Procyonidae/coatimundi mammals/Procyonidae/coatimundi >- f mammals/Procyonidae/raccoon mammals/Procyonidae/raccoon >- f mammals/skunk mammals/skunk >- >- $ cd mammals >- $ hg debugwalk >- f beans/black ../beans/black >- f beans/borlotti ../beans/borlotti >- f beans/kidney ../beans/kidney >- f beans/navy ../beans/navy >- f beans/pinto ../beans/pinto >- f beans/turtle ../beans/turtle >- f fennel ../fennel >- f fenugreek ../fenugreek >- f fiddlehead ../fiddlehead >- f glob:glob ../glob:glob >- f mammals/Procyonidae/cacomistle Procyonidae/cacomistle >- f mammals/Procyonidae/coatimundi Procyonidae/coatimundi >- f mammals/Procyonidae/raccoon Procyonidae/raccoon >- f mammals/skunk skunk >- $ hg debugwalk -X ../beans >- f fennel ../fennel >- f fenugreek ../fenugreek >- f fiddlehead ../fiddlehead >- f glob:glob ../glob:glob >- f mammals/Procyonidae/cacomistle Procyonidae/cacomistle >- f mammals/Procyonidae/coatimundi Procyonidae/coatimundi >- f mammals/Procyonidae/raccoon Procyonidae/raccoon >- f mammals/skunk skunk >- $ hg debugwalk -I '*k' >- f mammals/skunk skunk >- $ hg debugwalk -I 'glob:*k' >- f mammals/skunk skunk >- $ hg debugwalk -I 'relglob:*k' >- f beans/black ../beans/black >- f fenugreek ../fenugreek >- f mammals/skunk skunk >- $ hg debugwalk -I 'relglob:*k' . >- f mammals/skunk skunk >- $ hg debugwalk -I 're:.*k$' >- f beans/black ../beans/black >- f fenugreek ../fenugreek >- f mammals/skunk skunk >- $ hg debugwalk -I 'relre:.*k$' >- f beans/black ../beans/black >- f fenugreek ../fenugreek >- f mammals/skunk skunk >- $ hg debugwalk -I 'path:beans' >- f beans/black ../beans/black >- f beans/borlotti ../beans/borlotti >- f beans/kidney ../beans/kidney >- f beans/navy ../beans/navy >- f beans/pinto ../beans/pinto >- f beans/turtle ../beans/turtle >- $ hg debugwalk -I 'relpath:../beans' >- f beans/black ../beans/black >- f beans/borlotti ../beans/borlotti >- f beans/kidney ../beans/kidney >- f beans/navy ../beans/navy >- f beans/pinto ../beans/pinto >- f beans/turtle ../beans/turtle >- $ hg debugwalk . >- f mammals/Procyonidae/cacomistle Procyonidae/cacomistle >- f mammals/Procyonidae/coatimundi Procyonidae/coatimundi >- f mammals/Procyonidae/raccoon Procyonidae/raccoon >- f mammals/skunk skunk >- $ hg debugwalk -I. >- f mammals/Procyonidae/cacomistle Procyonidae/cacomistle >- f mammals/Procyonidae/coatimundi Procyonidae/coatimundi >- f mammals/Procyonidae/raccoon Procyonidae/raccoon >- f mammals/skunk skunk >- $ hg debugwalk Procyonidae >- f mammals/Procyonidae/cacomistle Procyonidae/cacomistle >- f mammals/Procyonidae/coatimundi Procyonidae/coatimundi >- f mammals/Procyonidae/raccoon Procyonidae/raccoon >- >- $ cd Procyonidae >- $ hg debugwalk . >- f mammals/Procyonidae/cacomistle cacomistle >- f mammals/Procyonidae/coatimundi coatimundi >- f mammals/Procyonidae/raccoon raccoon >- $ hg debugwalk .. >- f mammals/Procyonidae/cacomistle cacomistle >- f mammals/Procyonidae/coatimundi coatimundi >- f mammals/Procyonidae/raccoon raccoon >- f mammals/skunk ../skunk >- $ cd .. >- >- $ hg debugwalk ../beans >- f beans/black ../beans/black >- f beans/borlotti ../beans/borlotti >- f beans/kidney ../beans/kidney >- f beans/navy ../beans/navy >- f beans/pinto ../beans/pinto >- f beans/turtle ../beans/turtle >- $ hg debugwalk . >- f mammals/Procyonidae/cacomistle Procyonidae/cacomistle >- f mammals/Procyonidae/coatimundi Procyonidae/coatimundi >- f mammals/Procyonidae/raccoon Procyonidae/raccoon >- f mammals/skunk skunk >- $ hg debugwalk .hg >- abort: path 'mammals/.hg' is inside repo 'mammals' >- [255] >- $ hg debugwalk ../.hg >- abort: path contains illegal component: .hg >- [255] >- $ cd .. >- >- $ hg debugwalk -Ibeans >- f beans/black beans/black >- f beans/borlotti beans/borlotti >- f beans/kidney beans/kidney >- f beans/navy beans/navy >- f beans/pinto beans/pinto >- f beans/turtle beans/turtle >- $ hg debugwalk -I '{*,{b,m}*/*}k' >- f beans/black beans/black >- f fenugreek fenugreek >- f mammals/skunk mammals/skunk >- $ hg debugwalk 'glob:mammals/../beans/b*' >- f beans/black beans/black >- f beans/borlotti beans/borlotti >- $ hg debugwalk '-X*/Procyonidae' mammals >- f mammals/skunk mammals/skunk >- $ hg debugwalk path:mammals >- f mammals/Procyonidae/cacomistle mammals/Procyonidae/cacomistle >- f mammals/Procyonidae/coatimundi mammals/Procyonidae/coatimundi >- f mammals/Procyonidae/raccoon mammals/Procyonidae/raccoon >- f mammals/skunk mammals/skunk >- $ hg debugwalk .. >- abort: .. not under root >- [255] >- $ hg debugwalk beans/../.. >- abort: beans/../.. not under root >- [255] >- $ hg debugwalk .hg >- abort: path contains illegal component: .hg >- [255] >- $ hg debugwalk beans/../.hg >- abort: path contains illegal component: .hg >- [255] >- $ hg debugwalk beans/../.hg/data >- abort: path contains illegal component: .hg/data >- [255] >- $ hg debugwalk beans/.hg >- abort: path 'beans/.hg' is inside repo 'beans' >- [255] >- >-Test absolute paths: >- >- $ hg debugwalk `pwd`/beans >- f beans/black beans/black >- f beans/borlotti beans/borlotti >- f beans/kidney beans/kidney >- f beans/navy beans/navy >- f beans/pinto beans/pinto >- f beans/turtle beans/turtle >- $ hg debugwalk `pwd`/.. >- abort: $TESTTMP/t/.. not under root >- [255] >- >-Test patterns: >- >- $ hg debugwalk glob:\* >- f fennel fennel >- f fenugreek fenugreek >- f fiddlehead fiddlehead >- f glob:glob glob:glob >- >- $ hg debugwalk 'glob:**e' >- f beans/turtle beans/turtle >- f mammals/Procyonidae/cacomistle mammals/Procyonidae/cacomistle >- >- $ hg debugwalk 're:.*[kb]$' >- f beans/black beans/black >- f fenugreek fenugreek >- f glob:glob glob:glob >- f mammals/skunk mammals/skunk >- >- $ hg debugwalk path:beans/black >- f beans/black beans/black exact >- $ hg debugwalk path:beans//black >- f beans/black beans/black exact >- >- $ hg debugwalk relglob:Procyonidae >- $ hg debugwalk 'relglob:Procyonidae/**' >- f mammals/Procyonidae/cacomistle mammals/Procyonidae/cacomistle >- f mammals/Procyonidae/coatimundi mammals/Procyonidae/coatimundi >- f mammals/Procyonidae/raccoon mammals/Procyonidae/raccoon >- $ hg debugwalk 'relglob:Procyonidae/**' fennel >- f fennel fennel exact >- f mammals/Procyonidae/cacomistle mammals/Procyonidae/cacomistle >- f mammals/Procyonidae/coatimundi mammals/Procyonidae/coatimundi >- f mammals/Procyonidae/raccoon mammals/Procyonidae/raccoon >- $ hg debugwalk beans 'glob:beans/*' >- f beans/black beans/black >- f beans/borlotti beans/borlotti >- f beans/kidney beans/kidney >- f beans/navy beans/navy >- f beans/pinto beans/pinto >- f beans/turtle beans/turtle >- $ hg debugwalk 'glob:mamm**' >- f mammals/Procyonidae/cacomistle mammals/Procyonidae/cacomistle >- f mammals/Procyonidae/coatimundi mammals/Procyonidae/coatimundi >- f mammals/Procyonidae/raccoon mammals/Procyonidae/raccoon >- f mammals/skunk mammals/skunk >- $ hg debugwalk 'glob:mamm**' fennel >- f fennel fennel exact >- f mammals/Procyonidae/cacomistle mammals/Procyonidae/cacomistle >- f mammals/Procyonidae/coatimundi mammals/Procyonidae/coatimundi >- f mammals/Procyonidae/raccoon mammals/Procyonidae/raccoon >- f mammals/skunk mammals/skunk >- $ hg debugwalk 'glob:j*' >- $ hg debugwalk NOEXIST >- NOEXIST: No such file or directory >- >- $ mkfifo fifo >- $ hg debugwalk fifo >- fifo: unsupported file type (type is fifo) >- >- $ rm fenugreek >- $ hg debugwalk fenugreek >- f fenugreek fenugreek exact >- $ hg rm fenugreek >- $ hg debugwalk fenugreek >- f fenugreek fenugreek exact >- $ touch new >- $ hg debugwalk new >- f new new exact >- >- $ mkdir ignored >- $ touch ignored/file >- $ echo '^ignored$' > .hgignore >- $ hg debugwalk ignored >- $ hg debugwalk ignored/file >- f ignored/file ignored/file exact >- >- $ cd .. >- $ hg debugwalk -R t t/mammals/skunk >- f mammals/skunk t/mammals/skunk exact >- $ mkdir t2 >- $ cd t2 >- $ hg debugwalk -R ../t ../t/mammals/skunk >- f mammals/skunk ../t/mammals/skunk exact >- $ hg debugwalk --cwd ../t mammals/skunk >- f mammals/skunk mammals/skunk exact >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-subrepo-recursion.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-subrepo-recursion.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-subrepo-recursion.t.err >@@ -1,348 +1,5 @@ >+ >+ ### Abort: timeout after 180 seconds. > Create test repository: > > $ hg init repo >- $ cd repo >- $ echo x1 > x.txt >- >- $ hg init foo >- $ cd foo >- $ echo y1 > y.txt >- >- $ hg init bar >- $ cd bar >- $ echo z1 > z.txt >- >- $ cd .. >- $ echo 'bar = bar' > .hgsub >- >- $ cd .. >- $ echo 'foo = foo' > .hgsub >- >-Add files --- .hgsub files must go first to trigger subrepos: >- >- $ hg add -S .hgsub >- $ hg add -S foo/.hgsub >- $ hg add -S foo/bar >- adding foo/bar/z.txt >- $ hg add -S >- adding x.txt >- adding foo/y.txt >- >-Test recursive status without committing anything: >- >- $ hg status -S >- A .hgsub >- A foo/.hgsub >- A foo/bar/z.txt >- A foo/y.txt >- A x.txt >- >-Test recursive diff without committing anything: >- >- $ hg diff --nodates -S foo >- diff -r 000000000000 foo/.hgsub >- --- /dev/null >- +++ b/foo/.hgsub >- @@ -0,0 +1,1 @@ >- +bar = bar >- diff -r 000000000000 foo/y.txt >- --- /dev/null >- +++ b/foo/y.txt >- @@ -0,0 +1,1 @@ >- +y1 >- diff -r 000000000000 foo/bar/z.txt >- --- /dev/null >- +++ b/foo/bar/z.txt >- @@ -0,0 +1,1 @@ >- +z1 >- >-Commits: >- >- $ hg commit -m 0-0-0 >- committing subrepository foo >- committing subrepository foo/bar >- >- $ cd foo >- $ echo y2 >> y.txt >- $ hg commit -m 0-1-0 >- >- $ cd bar >- $ echo z2 >> z.txt >- $ hg commit -m 0-1-1 >- >- $ cd .. >- $ hg commit -m 0-2-1 >- committing subrepository bar >- >- $ cd .. >- $ hg commit -m 1-2-1 >- committing subrepository foo >- >-Change working directory: >- >- $ echo y3 >> foo/y.txt >- $ echo z3 >> foo/bar/z.txt >- $ hg status -S >- M foo/bar/z.txt >- M foo/y.txt >- $ hg diff --nodates -S >- diff -r d254738c5f5e foo/y.txt >- --- a/foo/y.txt >- +++ b/foo/y.txt >- @@ -1,2 +1,3 @@ >- y1 >- y2 >- +y3 >- diff -r 9647f22de499 foo/bar/z.txt >- --- a/foo/bar/z.txt >- +++ b/foo/bar/z.txt >- @@ -1,2 +1,3 @@ >- z1 >- z2 >- +z3 >- >-Status call crossing repository boundaries: >- >- $ hg status -S foo/bar/z.txt >- M foo/bar/z.txt >- $ hg status -S -I 'foo/?.txt' >- M foo/y.txt >- $ hg status -S -I '**/?.txt' >- M foo/bar/z.txt >- M foo/y.txt >- $ hg diff --nodates -S -I '**/?.txt' >- diff -r d254738c5f5e foo/y.txt >- --- a/foo/y.txt >- +++ b/foo/y.txt >- @@ -1,2 +1,3 @@ >- y1 >- y2 >- +y3 >- diff -r 9647f22de499 foo/bar/z.txt >- --- a/foo/bar/z.txt >- +++ b/foo/bar/z.txt >- @@ -1,2 +1,3 @@ >- z1 >- z2 >- +z3 >- >-Status from within a subdirectory: >- >- $ mkdir dir >- $ cd dir >- $ echo a1 > a.txt >- $ hg status -S >- M foo/bar/z.txt >- M foo/y.txt >- ? dir/a.txt >- $ hg diff --nodates -S >- diff -r d254738c5f5e foo/y.txt >- --- a/foo/y.txt >- +++ b/foo/y.txt >- @@ -1,2 +1,3 @@ >- y1 >- y2 >- +y3 >- diff -r 9647f22de499 foo/bar/z.txt >- --- a/foo/bar/z.txt >- +++ b/foo/bar/z.txt >- @@ -1,2 +1,3 @@ >- z1 >- z2 >- +z3 >- >-Status with relative path: >- >- $ hg status -S .. >- M ../foo/bar/z.txt >- M ../foo/y.txt >- ? a.txt >- $ hg diff --nodates -S .. >- diff -r d254738c5f5e foo/y.txt >- --- a/foo/y.txt >- +++ b/foo/y.txt >- @@ -1,2 +1,3 @@ >- y1 >- y2 >- +y3 >- diff -r 9647f22de499 foo/bar/z.txt >- --- a/foo/bar/z.txt >- +++ b/foo/bar/z.txt >- @@ -1,2 +1,3 @@ >- z1 >- z2 >- +z3 >- $ cd .. >- >-Cleanup and final commit: >- >- $ rm -r dir >- $ hg commit -m 2-3-2 >- committing subrepository foo >- committing subrepository foo/bar >- >-Log with the relationships between repo and its subrepo: >- >- $ hg log --template '{rev}:{node|short} {desc}\n' >- 2:1326fa26d0c0 2-3-2 >- 1:4b3c9ff4f66b 1-2-1 >- 0:23376cbba0d8 0-0-0 >- >- $ hg -R foo log --template '{rev}:{node|short} {desc}\n' >- 3:65903cebad86 2-3-2 >- 2:d254738c5f5e 0-2-1 >- 1:8629ce7dcc39 0-1-0 >- 0:af048e97ade2 0-0-0 >- >- $ hg -R foo/bar log --template '{rev}:{node|short} {desc}\n' >- 2:31ecbdafd357 2-3-2 >- 1:9647f22de499 0-1-1 >- 0:4904098473f9 0-0-0 >- >-Status between revisions: >- >- $ hg status -S >- $ hg status -S --rev 0:1 >- M .hgsubstate >- M foo/.hgsubstate >- M foo/bar/z.txt >- M foo/y.txt >- $ hg diff --nodates -S -I '**/?.txt' --rev 0:1 >- diff -r af048e97ade2 -r d254738c5f5e foo/y.txt >- --- a/foo/y.txt >- +++ b/foo/y.txt >- @@ -1,1 +1,2 @@ >- y1 >- +y2 >- diff -r 4904098473f9 -r 9647f22de499 foo/bar/z.txt >- --- a/foo/bar/z.txt >- +++ b/foo/bar/z.txt >- @@ -1,1 +1,2 @@ >- z1 >- +z2 >- >-Test archiving to a directory tree: >- >- $ hg archive --subrepos ../archive >- $ find ../archive | sort >- ../archive >- ../archive/.hg_archival.txt >- ../archive/.hgsub >- ../archive/.hgsubstate >- ../archive/foo >- ../archive/foo/.hgsub >- ../archive/foo/.hgsubstate >- ../archive/foo/bar >- ../archive/foo/bar/z.txt >- ../archive/foo/y.txt >- ../archive/x.txt >- >-Test archiving to zip file (unzip output is unstable): >- >- $ hg archive --subrepos ../archive.zip >- >-Clone and test outgoing: >- >- $ cd .. >- $ hg clone repo repo2 >- updating to branch default >- pulling subrepo foo from $TESTTMP/repo/foo >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 4 changesets with 7 changes to 3 files >- pulling subrepo foo/bar from $TESTTMP/repo/foo/bar >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 3 changesets with 3 changes to 1 files >- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ cd repo2 >- $ hg outgoing -S >- comparing with $TESTTMP/repo >- searching for changes >- no changes found >- comparing with $TESTTMP/repo/foo >- searching for changes >- no changes found >- comparing with $TESTTMP/repo/foo/bar >- searching for changes >- no changes found >- [1] >- >-Make nested change: >- >- $ echo y4 >> foo/y.txt >- $ hg diff --nodates -S >- diff -r 65903cebad86 foo/y.txt >- --- a/foo/y.txt >- +++ b/foo/y.txt >- @@ -1,3 +1,4 @@ >- y1 >- y2 >- y3 >- +y4 >- $ hg commit -m 3-4-2 >- committing subrepository foo >- $ hg outgoing -S >- comparing with $TESTTMP/repo >- searching for changes >- changeset: 3:2655b8ecc4ee >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 3-4-2 >- >- comparing with $TESTTMP/repo/foo >- searching for changes >- changeset: 4:e96193d6cb36 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 3-4-2 >- >- comparing with $TESTTMP/repo/foo/bar >- searching for changes >- no changes found >- >- >-Switch to original repo and setup default path: >- >- $ cd ../repo >- $ echo '[paths]' >> .hg/hgrc >- $ echo 'default = ../repo2' >> .hg/hgrc >- >-Test incoming: >- >- $ hg incoming -S >- comparing with $TESTTMP/repo2 >- searching for changes >- changeset: 3:2655b8ecc4ee >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 3-4-2 >- >- comparing with $TESTTMP/repo2/foo >- searching for changes >- changeset: 4:e96193d6cb36 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 3-4-2 >- >- comparing with $TESTTMP/repo2/foo/bar >- searching for changes >- no changes found >- >- $ hg incoming -S --bundle incoming.hg >- abort: cannot combine --bundle and --subrepos >- [255] >- >-Test missing subrepo: >- >- $ rm -r foo >- $ hg status -S >- warning: error "unknown revision '65903cebad86f1a84bd4f1134f62fa7dcb7a1c98'" in subrepository "foo" >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-subrepo.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-subrepo.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-subrepo.t.err >@@ -1,658 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ rm -rf sub >- $ mkdir sub >- $ cd sub >- $ hg init t >- $ cd t >- >-first revision, no sub >- >- $ echo a > a >- $ hg ci -Am0 >- adding a >- >-add first sub >- >- $ echo s = s > .hgsub >- $ hg add .hgsub >- $ hg init s >- $ echo a > s/a >- >-Issue2232: committing a subrepo without .hgsub >- >- $ hg ci -mbad s >- abort: can't commit subrepos without .hgsub >- [255] >- >- $ hg -R s ci -Ams0 >- adding a >- $ hg sum >- parent: 0:f7b1eb17ad24 tip >- 0 >- branch: default >- commit: 1 added, 1 subrepos >- update: (current) >- $ hg ci -m1 >- committing subrepository s >- >-Issue2022: update -C >- >- $ echo b > s/a >- $ hg sum >- parent: 1:7cf8cfea66e4 tip >- 1 >- branch: default >- commit: 1 subrepos >- update: (current) >- $ hg co -C 1 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg sum >- parent: 1:7cf8cfea66e4 tip >- 1 >- branch: default >- commit: (clean) >- update: (current) >- >-add sub sub >- >- $ echo ss = ss > s/.hgsub >- $ hg init s/ss >- $ echo a > s/ss/a >- $ hg -R s add s/.hgsub >- $ hg -R s/ss add s/ss/a >- $ hg sum >- parent: 1:7cf8cfea66e4 tip >- 1 >- branch: default >- commit: 1 subrepos >- update: (current) >- $ hg ci -m2 >- committing subrepository s >- committing subrepository s/ss >- $ hg sum >- parent: 2:df30734270ae tip >- 2 >- branch: default >- commit: (clean) >- update: (current) >- >-bump sub rev >- >- $ echo b > s/a >- $ hg -R s ci -ms1 >- $ hg ci -m3 >- committing subrepository s >- >-leave sub dirty >- >- $ echo c > s/a >- $ hg ci -m4 >- committing subrepository s >- $ hg tip -R s >- changeset: 3:1c833a7a9e3a >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: 4 >- >- >-check caching >- >- $ hg co 0 >- 0 files updated, 0 files merged, 2 files removed, 0 files unresolved >- $ hg debugsub >- >-restore >- >- $ hg co >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg debugsub >- path s >- source s >- revision 1c833a7a9e3a4445c711aaf0f012379cd0d4034e >- >-new branch for merge tests >- >- $ hg co 1 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo t = t >> .hgsub >- $ hg init t >- $ echo t > t/t >- $ hg -R t add t >- adding t/t >- >-5 >- >- $ hg ci -m5 # add sub >- committing subrepository t >- created new head >- $ echo t2 > t/t >- >-6 >- >- $ hg st -R s >- $ hg ci -m6 # change sub >- committing subrepository t >- $ hg debugsub >- path s >- source s >- revision e4ece1bf43360ddc8f6a96432201a37b7cd27ae4 >- path t >- source t >- revision 6747d179aa9a688023c4b0cad32e4c92bb7f34ad >- $ echo t3 > t/t >- >-7 >- >- $ hg ci -m7 # change sub again for conflict test >- committing subrepository t >- $ hg rm .hgsub >- >-8 >- >- $ hg ci -m8 # remove sub >- >-merge tests >- >- $ hg co -C 3 >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg merge 5 # test adding >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg debugsub >- path s >- source s >- revision fc627a69481fcbe5f1135069e8a3881c023e4cf5 >- path t >- source t >- revision 60ca1237c19474e7a3978b0dc1ca4e6f36d51382 >- $ hg ci -m9 >- created new head >- $ hg merge 6 --debug # test change >- searching for copies back to rev 2 >- resolving manifests >- overwrite None partial False >- ancestor 1f14a2e2d3ec local f0d2028bf86d+ remote 1831e14459c4 >- .hgsubstate: versions differ -> m >- updating: .hgsubstate 1/1 files (100.00%) >- subrepo merge f0d2028bf86d+ 1831e14459c4 1f14a2e2d3ec >- subrepo t: other changed, get t:6747d179aa9a688023c4b0cad32e4c92bb7f34ad:hg >- getting subrepo t >- resolving manifests >- overwrite True partial False >- ancestor 60ca1237c194+ local 60ca1237c194+ remote 6747d179aa9a >- t: remote is newer -> g >- updating: t 1/1 files (100.00%) >- getting t >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg debugsub >- path s >- source s >- revision fc627a69481fcbe5f1135069e8a3881c023e4cf5 >- path t >- source t >- revision 6747d179aa9a688023c4b0cad32e4c92bb7f34ad >- $ echo conflict > t/t >- $ hg ci -m10 >- committing subrepository t >- $ HGMERGE=internal:merge hg merge --debug 7 # test conflict >- searching for copies back to rev 2 >- resolving manifests >- overwrite None partial False >- ancestor 1831e14459c4 local e45c8b14af55+ remote f94576341bcf >- .hgsubstate: versions differ -> m >- updating: .hgsubstate 1/1 files (100.00%) >- subrepo merge e45c8b14af55+ f94576341bcf 1831e14459c4 >- subrepo t: both sides changed, merge with t:7af322bc1198a32402fe903e0b7ebcfc5c9bf8f4:hg >- merging subrepo t >- searching for copies back to rev 2 >- resolving manifests >- overwrite None partial False >- ancestor 6747d179aa9a local 20a0db6fbf6c+ remote 7af322bc1198 >- t: versions differ -> m >- preserving t for resolve of t >- updating: t 1/1 files (100.00%) >- picked tool 'internal:merge' for t (binary False symlink False) >- merging t >- my t@20a0db6fbf6c+ other t@7af322bc1198 ancestor t@6747d179aa9a >- warning: conflicts during merge. >- merging t failed! >- 0 files updated, 0 files merged, 0 files removed, 1 files unresolved >- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- >-should conflict >- >- $ cat t/t >- <<<<<<< local >- conflict >- ======= >- t3 >- >>>>>>> other >- >-clone >- >- $ cd .. >- $ hg clone t tc >- updating to branch default >- pulling subrepo s from $TESTTMP/sub/t/s >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 4 changesets with 5 changes to 3 files >- pulling subrepo s/ss from $TESTTMP/sub/t/s/ss >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- pulling subrepo t from $TESTTMP/sub/t/t >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 4 changesets with 4 changes to 1 files (+1 heads) >- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ cd tc >- $ hg debugsub >- path s >- source s >- revision fc627a69481fcbe5f1135069e8a3881c023e4cf5 >- path t >- source t >- revision 20a0db6fbf6c3d2836e6519a642ae929bfc67c0e >- >-push >- >- $ echo bah > t/t >- $ hg ci -m11 >- committing subrepository t >- $ hg push >- pushing to $TESTTMP/sub/t >- pushing subrepo s/ss to $TESTTMP/sub/t/s/ss >- searching for changes >- no changes found >- pushing subrepo s to $TESTTMP/sub/t/s >- searching for changes >- no changes found >- pushing subrepo t to $TESTTMP/sub/t/t >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- >-push -f >- >- $ echo bah > s/a >- $ hg ci -m12 >- committing subrepository s >- $ hg push >- pushing to $TESTTMP/sub/t >- pushing subrepo s/ss to $TESTTMP/sub/t/s/ss >- searching for changes >- no changes found >- pushing subrepo s to $TESTTMP/sub/t/s >- searching for changes >- abort: push creates new remote heads on branch 'default'! >- (did you forget to merge? use push -f to force) >- [255] >- $ hg push -f >- pushing to $TESTTMP/sub/t >- pushing subrepo s/ss to $TESTTMP/sub/t/s/ss >- searching for changes >- no changes found >- pushing subrepo s to $TESTTMP/sub/t/s >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files (+1 heads) >- pushing subrepo t to $TESTTMP/sub/t/t >- searching for changes >- no changes found >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- >-update >- >- $ cd ../t >- $ hg up -C # discard our earlier merge >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo blah > t/t >- $ hg ci -m13 >- committing subrepository t >- >-pull >- >- $ cd ../tc >- $ hg pull >- pulling from $TESTTMP/sub/t >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- (run 'hg update' to get a working copy) >- >-should pull t >- >- $ hg up >- pulling subrepo t from $TESTTMP/sub/t/t >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ cat t/t >- blah >- >-bogus subrepo path aborts >- >- $ echo 'bogus=[boguspath' >> .hgsub >- $ hg ci -m 'bogus subrepo path' >- abort: missing ] in subrepo source >- [255] >- >-Issue1986: merge aborts when trying to merge a subrepo that >-shouldn't need merging >- >-# subrepo layout >-# >-# o 5 br >-# /| >-# o | 4 default >-# | | >-# | o 3 br >-# |/| >-# o | 2 default >-# | | >-# | o 1 br >-# |/ >-# o 0 default >- >- $ cd .. >- $ rm -rf sub >- $ hg init main >- $ cd main >- $ hg init s >- $ cd s >- $ echo a > a >- $ hg ci -Am1 >- adding a >- $ hg branch br >- marked working directory as branch br >- $ echo a >> a >- $ hg ci -m1 >- $ hg up default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo b > b >- $ hg ci -Am1 >- adding b >- $ hg up br >- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg merge tip >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg ci -m1 >- $ hg up 2 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo c > c >- $ hg ci -Am1 >- adding c >- $ hg up 3 >- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg merge 4 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg ci -m1 >- >-# main repo layout: >-# >-# * <-- try to merge default into br again >-# .`| >-# . o 5 br --> substate = 5 >-# . | >-# o | 4 default --> substate = 4 >-# | | >-# | o 3 br --> substate = 2 >-# |/| >-# o | 2 default --> substate = 2 >-# | | >-# | o 1 br --> substate = 3 >-# |/ >-# o 0 default --> substate = 2 >- >- $ cd .. >- $ echo 's = s' > .hgsub >- $ hg -R s up 2 >- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg ci -Am1 >- adding .hgsub >- committing subrepository s >- $ hg branch br >- marked working directory as branch br >- $ echo b > b >- $ hg -R s up 3 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg ci -Am1 >- adding b >- committing subrepository s >- $ hg up default >- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ echo c > c >- $ hg ci -Am1 >- adding c >- $ hg up 1 >- 2 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg merge 2 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg ci -m1 >- $ hg up 2 >- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg -R s up 4 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo d > d >- $ hg ci -Am1 >- adding d >- committing subrepository s >- $ hg up 3 >- 2 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg -R s up 5 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo e > e >- $ hg ci -Am1 >- adding e >- committing subrepository s >- >- $ hg up 5 >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg merge 4 # try to merge default into br again >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ cd .. >- >-test subrepo delete from .hgsubstate >- >- $ hg init testdelete >- $ mkdir testdelete/nested testdelete/nested2 >- $ hg init testdelete/nested >- $ hg init testdelete/nested2 >- $ echo test > testdelete/nested/foo >- $ echo test > testdelete/nested2/foo >- $ hg -R testdelete/nested add >- adding testdelete/nested/foo >- $ hg -R testdelete/nested2 add >- adding testdelete/nested2/foo >- $ hg -R testdelete/nested ci -m test >- $ hg -R testdelete/nested2 ci -m test >- $ echo nested = nested > testdelete/.hgsub >- $ echo nested2 = nested2 >> testdelete/.hgsub >- $ hg -R testdelete add >- adding testdelete/.hgsub >- $ hg -R testdelete ci -m "nested 1 & 2 added" >- committing subrepository nested >- committing subrepository nested2 >- $ echo nested = nested > testdelete/.hgsub >- $ hg -R testdelete ci -m "nested 2 deleted" >- $ cat testdelete/.hgsubstate >- bdf5c9a3103743d900b12ae0db3ffdcfd7b0d878 nested >- $ hg -R testdelete remove testdelete/.hgsub >- $ hg -R testdelete ci -m ".hgsub deleted" >- $ cat testdelete/.hgsubstate >- >-test repository cloning >- >- $ mkdir mercurial mercurial2 >- $ hg init nested_absolute >- $ echo test > nested_absolute/foo >- $ hg -R nested_absolute add >- adding nested_absolute/foo >- $ hg -R nested_absolute ci -mtest >- $ cd mercurial >- $ hg init nested_relative >- $ echo test2 > nested_relative/foo2 >- $ hg -R nested_relative add >- adding nested_relative/foo2 >- $ hg -R nested_relative ci -mtest2 >- $ hg init main >- $ echo "nested_relative = ../nested_relative" > main/.hgsub >- $ echo "nested_absolute = `pwd`/nested_absolute" >> main/.hgsub >- $ hg -R main add >- adding main/.hgsub >- $ hg -R main ci -m "add subrepos" >- committing subrepository nested_absolute >- committing subrepository nested_relative >- $ cd .. >- $ hg clone mercurial/main mercurial2/main >- updating to branch default >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ cat mercurial2/main/nested_absolute/.hg/hgrc \ >- > mercurial2/main/nested_relative/.hg/hgrc >- [paths] >- default = $TESTTMP/sub/mercurial/nested_absolute >- [paths] >- default = $TESTTMP/sub/mercurial/nested_relative >- $ rm -rf mercurial mercurial2 >- >-Issue1977: multirepo push should fail if subrepo push fails >- >- $ hg init repo >- $ hg init repo/s >- $ echo a > repo/s/a >- $ hg -R repo/s ci -Am0 >- adding a >- $ echo s = s > repo/.hgsub >- $ hg -R repo ci -Am1 >- adding .hgsub >- committing subrepository s >- $ hg clone repo repo2 >- updating to branch default >- pulling subrepo s from $TESTTMP/sub/repo/s >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg -q -R repo2 pull -u >- $ echo 1 > repo2/s/a >- $ hg -R repo2/s ci -m2 >- $ hg -q -R repo2/s push >- $ hg -R repo2/s up -C 0 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo 2 > repo2/s/a >- $ hg -R repo2/s ci -m3 >- created new head >- $ hg -R repo2 ci -m3 >- committing subrepository s >- $ hg -q -R repo2 push >- abort: push creates new remote heads on branch 'default'! >- (did you forget to merge? use push -f to force) >- [255] >- $ hg -R repo update >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm -rf repo2 repo >- >- >-Issue1852 subrepos with relative paths always push/pull relative to default >- >-Prepare a repo with subrepo >- >- $ hg init issue1852a >- $ cd issue1852a >- $ hg init sub/repo >- $ echo test > sub/repo/foo >- $ hg -R sub/repo add sub/repo/foo >- $ echo sub/repo = sub/repo > .hgsub >- $ hg add .hgsub >- $ hg ci -mtest >- committing subrepository sub/repo >- $ echo test >> sub/repo/foo >- $ hg ci -mtest >- committing subrepository sub/repo >- $ cd .. >- >-Create repo without default path, pull top repo, and see what happens on update >- >- $ hg init issue1852b >- $ hg -R issue1852b pull issue1852a >- pulling from issue1852a >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 2 changesets with 3 changes to 2 files >- (run 'hg update' to get a working copy) >- $ hg -R issue1852b update >- abort: default path for subrepository sub/repo not found >- [255] >- >-Pull -u now doesn't help >- >- $ hg -R issue1852b pull -u issue1852a >- pulling from issue1852a >- searching for changes >- no changes found >- >-Try the same, but with pull -u >- >- $ hg init issue1852c >- $ hg -R issue1852c pull -r0 -u issue1852a >- pulling from issue1852a >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 2 changes to 2 files >- pulling subrepo sub/repo from issue1852a/sub/repo >- requesting all changes >- adding changesets >- adding manifests >- adding file changes >- added 2 changesets with 2 changes to 1 files >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-Try to push from the other side >- >- $ hg -R issue1852a push `pwd`/issue1852c >- pushing to $TESTTMP/sub/issue1852c >- pushing subrepo sub/repo to $TESTTMP/sub/issue1852c/sub/repo >- searching for changes >- no changes found >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-win32text.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-win32text.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-win32text.t.err >@@ -1,448 +1,4 @@ >+ >+ ### Abort: timeout after 180 seconds. > > $ hg init t >- $ cd t >- $ cat > unix2dos.py <<EOF >- > import sys >- > >- > for path in sys.argv[1:]: >- > data = file(path, 'rb').read() >- > data = data.replace('\n', '\r\n') >- > file(path, 'wb').write(data) >- > EOF >- $ cat > print.py <<EOF >- > import sys >- > print(sys.stdin.read().replace('\n', '<LF>').replace('\r', '<CR>').replace('\0', '<NUL>')) >- > EOF >- $ echo '[hooks]' >> .hg/hgrc >- $ echo 'pretxncommit.crlf = python:hgext.win32text.forbidcrlf' >> .hg/hgrc >- $ echo 'pretxnchangegroup.crlf = python:hgext.win32text.forbidcrlf' >> .hg/hgrc >- $ cat .hg/hgrc >- [hooks] >- pretxncommit.crlf = python:hgext.win32text.forbidcrlf >- pretxnchangegroup.crlf = python:hgext.win32text.forbidcrlf >- $ echo >- >- $ echo hello > f >- $ hg add f >- >-commit should succeed >- >- $ hg ci -m 1 >- $ echo >- >- $ hg clone . ../zoz >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ cp .hg/hgrc ../zoz/.hg >- $ python unix2dos.py f >- >-commit should fail >- >- $ hg ci -m 2.1 >- Attempt to commit or push text file(s) using CRLF line endings >- in f583ea08d42a: f >- transaction abort! >- rollback completed >- abort: pretxncommit.crlf hook failed >- [255] >- $ echo >- >- $ mv .hg/hgrc .hg/hgrc.bak >- >-commits should succeed >- >- $ hg ci -m 2 >- $ hg cp f g >- $ hg ci -m 2.2 >- $ echo >- >- >-push should fail >- >- $ hg push ../zoz >- pushing to ../zoz >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 2 changesets with 2 changes to 2 files >- Attempt to commit or push text file(s) using CRLF line endings >- in bc2d09796734: g >- in b1aa5cde7ff4: f >- >- To prevent this mistake in your local repository, >- add to Mercurial.ini or .hg/hgrc: >- >- [hooks] >- pretxncommit.crlf = python:hgext.win32text.forbidcrlf >- >- and also consider adding: >- >- [extensions] >- win32text = >- [encode] >- ** = cleverencode: >- [decode] >- ** = cleverdecode: >- transaction abort! >- rollback completed >- abort: pretxnchangegroup.crlf hook failed >- [255] >- $ echo >- >- $ mv .hg/hgrc.bak .hg/hgrc >- $ echo hello > f >- $ hg rm g >- >-commit should succeed >- >- $ hg ci -m 2.3 >- $ echo >- >- >-push should succeed >- >- $ hg push ../zoz >- pushing to ../zoz >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 3 changesets with 3 changes to 2 files >- $ echo >- >- >-and now for something completely different >- >- $ mkdir d >- $ echo hello > d/f2 >- $ python unix2dos.py d/f2 >- $ hg add d/f2 >- $ hg ci -m 3 >- Attempt to commit or push text file(s) using CRLF line endings >- in 053ba1a3035a: d/f2 >- transaction abort! >- rollback completed >- abort: pretxncommit.crlf hook failed >- [255] >- $ hg revert -a >- forgetting d/f2 >- $ rm d/f2 >- $ echo >- >- $ hg rem f >- $ hg ci -m 4 >- $ echo >- >- $ python -c 'file("bin", "wb").write("hello\x00\x0D\x0A")' >- $ hg add bin >- $ hg ci -m 5 >- $ hg log -v >- changeset: 5:f0b1c8d75fce >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- files: bin >- description: >- 5 >- >- >- changeset: 4:77796dbcd4ad >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- files: f >- description: >- 4 >- >- >- changeset: 3:7c1b5430b350 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- files: f g >- description: >- 2.3 >- >- >- changeset: 2:bc2d09796734 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- files: g >- description: >- 2.2 >- >- >- changeset: 1:b1aa5cde7ff4 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- files: f >- description: >- 2 >- >- >- changeset: 0:fcf06d5c4e1d >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- files: f >- description: >- 1 >- >- >- $ echo >- >- $ hg clone . dupe >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo >- >- $ for x in a b c d; do echo content > dupe/$x; done >- $ hg -R dupe add >- adding dupe/a >- adding dupe/b >- adding dupe/c >- adding dupe/d >- $ python unix2dos.py dupe/b dupe/c dupe/d >- $ hg -R dupe ci -m a dupe/a >- $ hg -R dupe ci -m b/c dupe/[bc] >- $ hg -R dupe ci -m d dupe/d >- $ hg -R dupe log -v >- changeset: 8:67ac5962ab43 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- files: d >- description: >- d >- >- >- changeset: 7:68c127d1834e >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- files: b c >- description: >- b/c >- >- >- changeset: 6:adbf8bf7f31d >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- files: a >- description: >- a >- >- >- changeset: 5:f0b1c8d75fce >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- files: bin >- description: >- 5 >- >- >- changeset: 4:77796dbcd4ad >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- files: f >- description: >- 4 >- >- >- changeset: 3:7c1b5430b350 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- files: f g >- description: >- 2.3 >- >- >- changeset: 2:bc2d09796734 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- files: g >- description: >- 2.2 >- >- >- changeset: 1:b1aa5cde7ff4 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- files: f >- description: >- 2 >- >- >- changeset: 0:fcf06d5c4e1d >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- files: f >- description: >- 1 >- >- >- $ echo >- >- $ hg pull dupe >- pulling from dupe >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 3 changesets with 4 changes to 4 files >- Attempt to commit or push text file(s) using CRLF line endings >- in 67ac5962ab43: d >- in 68c127d1834e: b >- in 68c127d1834e: c >- >- To prevent this mistake in your local repository, >- add to Mercurial.ini or .hg/hgrc: >- >- [hooks] >- pretxncommit.crlf = python:hgext.win32text.forbidcrlf >- >- and also consider adding: >- >- [extensions] >- win32text = >- [encode] >- ** = cleverencode: >- [decode] >- ** = cleverdecode: >- transaction abort! >- rollback completed >- abort: pretxnchangegroup.crlf hook failed >- [255] >- $ echo >- >- $ hg log -v >- changeset: 5:f0b1c8d75fce >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- files: bin >- description: >- 5 >- >- >- changeset: 4:77796dbcd4ad >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- files: f >- description: >- 4 >- >- >- changeset: 3:7c1b5430b350 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- files: f g >- description: >- 2.3 >- >- >- changeset: 2:bc2d09796734 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- files: g >- description: >- 2.2 >- >- >- changeset: 1:b1aa5cde7ff4 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- files: f >- description: >- 2 >- >- >- changeset: 0:fcf06d5c4e1d >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- files: f >- description: >- 1 >- >- >- $ echo >- >- $ rm .hg/hgrc >- $ (echo some; echo text) > f3 >- $ python -c 'file("f4.bat", "wb").write("rem empty\x0D\x0A")' >- $ hg add f3 f4.bat >- $ hg ci -m 6 >- $ python print.py < bin >- hello<NUL><CR><LF> >- $ python print.py < f3 >- some<LF>text<LF> >- $ python print.py < f4.bat >- rem empty<CR><LF> >- $ echo >- >- $ echo '[extensions]' >> .hg/hgrc >- $ echo 'win32text = ' >> .hg/hgrc >- $ echo '[decode]' >> .hg/hgrc >- $ echo '** = cleverdecode:' >> .hg/hgrc >- $ echo '[encode]' >> .hg/hgrc >- $ echo '** = cleverencode:' >> .hg/hgrc >- $ cat .hg/hgrc >- [extensions] >- win32text = >- [decode] >- ** = cleverdecode: >- [encode] >- ** = cleverencode: >- >-Trigger deprecation warning: >- >- $ hg id -t >- win32text is deprecated: http://mercurial.selenic.com/wiki/Win32TextExtension >- tip >- >-Disable warning: >- >- $ echo '[win32text]' >> .hg/hgrc >- $ echo 'warn = no' >> .hg/hgrc >- $ hg id -t >- tip >- >- $ rm f3 f4.bat bin >- $ hg co -C 2>&1 | python -c 'import sys, os; sys.stdout.write(sys.stdin.read().replace(os.getcwd(), "...."))' >- WARNING: f4.bat already has CRLF line endings >- and does not need EOL conversion by the win32text plugin. >- Before your next commit, please reconsider your encode/decode settings in >- Mercurial.ini or ..../.hg/hgrc. >- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ python print.py < bin >- hello<NUL><CR><LF> >- $ python print.py < f3 >- some<CR><LF>text<CR><LF> >- $ python print.py < f4.bat >- rem empty<CR><LF> >- $ echo >- >- $ python -c 'file("f5.sh", "wb").write("# empty\x0D\x0A")' >- $ hg add f5.sh >- $ hg ci -m 7 >- $ python print.py < f5.sh >- # empty<CR><LF> >- $ hg cat f5.sh | python print.py >- # empty<LF> >- $ echo '% just linefeed' > linefeed >- $ hg ci -qAm 8 linefeed >- $ python print.py < linefeed >- % just linefeed<LF> >- $ hg cat linefeed | python print.py >- % just linefeed<LF> >- $ hg st -q >- $ hg revert -a linefeed >- no changes needed to linefeed >- $ python print.py < linefeed >- % just linefeed<LF> >- $ hg st -q >- $ echo modified >> linefeed >- $ hg st -q >- M linefeed >- $ hg revert -a >- reverting linefeed >- $ hg st -q >- $ python print.py < linefeed >- % just linefeed<CR><LF> >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-symlinks.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-symlinks.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-symlinks.t.err >@@ -1,254 +1,3 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ "$TESTDIR/hghave" symlink || exit 80 >- >-== tests added in 0.7 == >- >- $ hg init test-symlinks-0.7; cd test-symlinks-0.7; >- $ touch foo; ln -s foo bar; >- >-import with addremove -- symlink walking should _not_ screwup. >- >- $ hg addremove >- adding bar >- adding foo >- >-commit -- the symlink should _not_ appear added to dir state >- >- $ hg commit -m 'initial' >- >- $ touch bomb >- >-again, symlink should _not_ show up on dir state >- >- $ hg addremove >- adding bomb >- >-Assert screamed here before, should go by without consequence >- >- $ hg commit -m 'is there a bug?' >- $ cd .. >- >- >-== fifo & ignore == >- >- $ hg init test; cd test; >- >- $ mkdir dir >- $ touch a.c dir/a.o dir/b.o >- >-test what happens if we want to trick hg >- >- $ hg commit -A -m 0 >- adding a.c >- adding dir/a.o >- adding dir/b.o >- $ echo "relglob:*.o" > .hgignore >- $ rm a.c >- $ rm dir/a.o >- $ rm dir/b.o >- $ mkdir dir/a.o >- $ ln -s nonexist dir/b.o >- $ mkfifo a.c >- >-it should show a.c, dir/a.o and dir/b.o deleted >- >- $ hg status >- M dir/b.o >- ! a.c >- ! dir/a.o >- ? .hgignore >- $ hg status a.c >- a.c: unsupported file type (type is fifo) >- ! a.c >- $ cd .. >- >- >-== symlinks from outside the tree == >- >-test absolute path through symlink outside repo >- >- $ p=`pwd` >- $ hg init x >- $ ln -s x y >- $ cd x >- $ touch f >- $ hg add f >- $ hg status "$p"/y/f >- A f >- >-try symlink outside repo to file inside >- >- $ ln -s x/f ../z >- >-this should fail >- >- $ hg status ../z && { echo hg mistakenly exited with status 0; exit 1; } || : >- abort: ../z not under root >- $ cd .. >- >- >-== cloning symlinks == >- $ hg init clone; cd clone; >- >-try cloning symlink in a subdir >-1. commit a symlink >- >- $ mkdir -p a/b/c >- $ cd a/b/c >- $ ln -s /path/to/symlink/source demo >- $ cd ../../.. >- $ hg stat >- ? a/b/c/demo >- $ hg commit -A -m 'add symlink in a/b/c subdir' >- adding a/b/c/demo >- >-2. clone it >- >- $ cd .. >- $ hg clone clone clonedest >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >- >-== symlink and git diffs == >- >-git symlink diff >- >- $ cd clonedest >- $ hg diff --git -r null:tip >- diff --git a/a/b/c/demo b/a/b/c/demo >- new file mode 120000 >- --- /dev/null >- +++ b/a/b/c/demo >- @@ -0,0 +1,1 @@ >- +/path/to/symlink/source >- \ No newline at end of file >- $ hg export --git tip > ../sl.diff >- >-import git symlink diff >- >- $ hg rm a/b/c/demo >- $ hg commit -m'remove link' >- $ hg import ../sl.diff >- applying ../sl.diff >- $ hg diff --git -r 1:tip >- diff --git a/a/b/c/demo b/a/b/c/demo >- new file mode 120000 >- --- /dev/null >- +++ b/a/b/c/demo >- @@ -0,0 +1,1 @@ >- +/path/to/symlink/source >- \ No newline at end of file >- >-== symlinks and addremove == >- >-directory moved and symlinked >- >- $ mkdir foo >- $ touch foo/a >- $ hg ci -Ama >- adding foo/a >- $ mv foo bar >- $ ln -s bar foo >- >-now addremove should remove old files >- >- $ hg addremove >- adding bar/a >- adding foo >- removing foo/a >- $ cd .. >- >-== root of repository is symlinked == >- >- $ hg init root >- $ ln -s root link >- $ cd root >- $ echo foo > foo >- $ hg status >- ? foo >- $ hg status ../link >- ? foo >- $ cd .. >- >- >- >- >- $ hg init b >- $ cd b >- $ ln -s nothing dangling >- $ hg commit -m 'commit symlink without adding' dangling >- abort: dangling: file not tracked! >- [255] >- $ hg add dangling >- $ hg commit -m 'add symlink' >- >- $ hg tip -v >- changeset: 0:cabd88b706fc >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- files: dangling >- description: >- add symlink >- >- >- $ hg manifest --debug >- 2564acbe54bbbedfbf608479340b359f04597f80 644 @ dangling >- $ $TESTDIR/readlink.py dangling >- dangling -> nothing >- >- $ rm dangling >- $ ln -s void dangling >- $ hg commit -m 'change symlink' >- $ $TESTDIR/readlink.py dangling >- dangling -> void >- >- >-modifying link >- >- $ rm dangling >- $ ln -s empty dangling >- $ $TESTDIR/readlink.py dangling >- dangling -> empty >- >- >-reverting to rev 0: >- >- $ hg revert -r 0 -a >- reverting dangling >- $ $TESTDIR/readlink.py dangling >- dangling -> nothing >- >- >-backups: >- >- $ $TESTDIR/readlink.py *.orig >- dangling.orig -> empty >- $ rm *.orig >- $ hg up -C >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- >-copies >- >- $ hg cp -v dangling dangling2 >- copying dangling to dangling2 >- $ hg st -Cmard >- A dangling2 >- dangling >- $ $TESTDIR/readlink.py dangling dangling2 >- dangling -> void >- dangling2 -> void >- >- >-Issue995: hg copy -A incorrectly handles symbolic links >- >- $ hg up -C >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ mkdir dir >- $ ln -s dir dirlink >- $ hg ci -qAm 'add dirlink' >- $ mkdir newdir >- $ mv dir newdir/dir >- $ mv dirlink newdir/dirlink >- $ hg mv -A dirlink newdir/dirlink >- >! >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-tags.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-tags.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-tags.t.err >@@ -1,381 +1,7 @@ >+ >+ ### Abort: timeout after 180 seconds. > Helper functions: > > $ cacheexists() { > > [ -f .hg/tags.cache ] && echo "tag cache exists" || echo "no tag cache" > > } >- >- $ dumptags() { >- > rev=$1 >- > echo "rev $rev: .hgtags:" >- > hg cat -r$rev .hgtags >- > } >- >-# XXX need to test that the tag cache works when we strip an old head >-# and add a new one rooted off non-tip: i.e. node and rev of tip are the >-# same, but stuff has changed behind tip. >- >-Setup: >- >- $ hg init t >- $ cd t >- $ cacheexists >- no tag cache >- $ hg id >- 000000000000 tip >- $ cacheexists >- no tag cache >- $ echo a > a >- $ hg add a >- $ hg commit -m "test" >- $ hg co >- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg identify >- acb14030fe0a tip >- $ cacheexists >- tag cache exists >- >-Try corrupting the cache >- >- $ printf 'a b' > .hg/tags.cache >- $ hg identify >- .hg/tags.cache is corrupt, rebuilding it >- acb14030fe0a tip >- $ cacheexists >- tag cache exists >- $ hg identify >- acb14030fe0a tip >- >-Create local tag with long name: >- >- $ T=`hg identify --debug --id` >- $ hg tag -l "This is a local tag with a really long name!" >- $ hg tags >- tip 0:acb14030fe0a >- This is a local tag with a really long name! 0:acb14030fe0a >- $ rm .hg/localtags >- >-Create a tag behind hg's back: >- >- $ echo "$T first" > .hgtags >- $ cat .hgtags >- acb14030fe0a21b60322c440ad2d20cf7685a376 first >- $ hg add .hgtags >- $ hg commit -m "add tags" >- $ hg tags >- tip 1:b9154636be93 >- first 0:acb14030fe0a >- $ hg identify >- b9154636be93 tip >- >-Repeat with cold tag cache: >- >- $ rm -f .hg/tags.cache >- $ hg identify >- b9154636be93 tip >- >-And again, but now unable to write tag cache: >- >- $ rm -f .hg/tags.cache >- $ chmod 555 .hg >- $ hg identify >- b9154636be93 tip >- $ chmod 755 .hg >- >-Create a branch: >- >- $ echo bb > a >- $ hg status >- M a >- $ hg identify >- b9154636be93+ tip >- $ hg co first >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- $ hg id >- acb14030fe0a+ first >- $ hg -v id >- acb14030fe0a+ first >- $ hg status >- M a >- $ echo 1 > b >- $ hg add b >- $ hg commit -m "branch" >- created new head >- $ hg id >- c8edf04160c7 tip >- >-Merge the two heads: >- >- $ hg merge 1 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- (branch merge, don't forget to commit) >- $ hg id >- c8edf04160c7+b9154636be93+ tip >- $ hg status >- M .hgtags >- $ hg commit -m "merge" >- >-Create a fake head, make sure tag not visible afterwards: >- >- $ cp .hgtags tags >- $ hg tag last >- $ hg rm .hgtags >- $ hg commit -m "remove" >- >- $ mv tags .hgtags >- $ hg add .hgtags >- $ hg commit -m "readd" >- $ >- $ hg tags >- tip 6:35ff301afafe >- first 0:acb14030fe0a >- >-Add invalid tags: >- >- $ echo "spam" >> .hgtags >- $ echo >> .hgtags >- $ echo "foo bar" >> .hgtags >- $ echo "a5a5 invalid" >> .hg/localtags >- $ echo "committing .hgtags:" >- committing .hgtags: >- $ cat .hgtags >- acb14030fe0a21b60322c440ad2d20cf7685a376 first >- spam >- >- foo bar >- $ hg commit -m "tags" >- >-Report tag parse error on other head: >- >- $ hg up 3 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo 'x y' >> .hgtags >- $ hg commit -m "head" >- created new head >- >- $ hg tags >- .hgtags@75d9f02dfe28, line 2: cannot parse entry >- .hgtags@75d9f02dfe28, line 4: node 'foo' is not well formed >- .hgtags@c4be69a18c11, line 2: node 'x' is not well formed >- tip 8:c4be69a18c11 >- first 0:acb14030fe0a >- $ hg tip >- changeset: 8:c4be69a18c11 >- tag: tip >- parent: 3:ac5e980c4dc0 >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: head >- >- >-Test tag precedence rules: >- >- $ cd .. >- $ hg init t2 >- $ cd t2 >- $ echo foo > foo >- $ hg add foo >- $ hg ci -m 'add foo' # rev 0 >- $ hg tag bar # rev 1 >- $ echo >> foo >- $ hg ci -m 'change foo 1' # rev 2 >- $ hg up -C 1 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ hg tag -r 1 -f bar # rev 3 >- $ hg up -C 1 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo >> foo >- $ hg ci -m 'change foo 2' # rev 4 >- created new head >- $ hg tags >- tip 4:0c192d7d5e6b >- bar 1:78391a272241 >- >-Repeat in case of cache effects: >- >- $ hg tags >- tip 4:0c192d7d5e6b >- bar 1:78391a272241 >- >-Detailed dump of tag info: >- >- $ hg heads -q # expect 4, 3, 2 >- 4:0c192d7d5e6b >- 3:6fa450212aeb >- 2:7a94127795a3 >- $ dumptags 2 >- rev 2: .hgtags: >- bbd179dfa0a71671c253b3ae0aa1513b60d199fa bar >- $ dumptags 3 >- rev 3: .hgtags: >- bbd179dfa0a71671c253b3ae0aa1513b60d199fa bar >- bbd179dfa0a71671c253b3ae0aa1513b60d199fa bar >- 78391a272241d70354aa14c874552cad6b51bb42 bar >- $ dumptags 4 >- rev 4: .hgtags: >- bbd179dfa0a71671c253b3ae0aa1513b60d199fa bar >- >-Dump cache: >- >- $ cat .hg/tags.cache >- 4 0c192d7d5e6b78a714de54a2e9627952a877e25a 0c04f2a8af31de17fab7422878ee5a2dadbc943d >- 3 6fa450212aeb2a21ed616a54aea39a4a27894cd7 7d3b718c964ef37b89e550ebdafd5789e76ce1b0 >- 2 7a94127795a33c10a370c93f731fd9fea0b79af6 0c04f2a8af31de17fab7422878ee5a2dadbc943d >- >- 78391a272241d70354aa14c874552cad6b51bb42 bar >- >-Test tag removal: >- >- $ hg tag --remove bar # rev 5 >- $ hg tip -vp >- changeset: 5:5f6e8655b1c7 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- files: .hgtags >- description: >- Removed tag bar >- >- >- diff -r 0c192d7d5e6b -r 5f6e8655b1c7 .hgtags >- --- a/.hgtags Thu Jan 01 00:00:00 1970 +0000 >- +++ b/.hgtags Thu Jan 01 00:00:00 1970 +0000 >- @@ -1,1 +1,3 @@ >- bbd179dfa0a71671c253b3ae0aa1513b60d199fa bar >- +78391a272241d70354aa14c874552cad6b51bb42 bar >- +0000000000000000000000000000000000000000 bar >- >- $ hg tags >- tip 5:5f6e8655b1c7 >- $ hg tags # again, try to expose cache bugs >- tip 5:5f6e8655b1c7 >- >-Remove nonexistent tag: >- >- $ hg tag --remove foobar >- abort: tag 'foobar' does not exist >- [255] >- $ hg tip >- changeset: 5:5f6e8655b1c7 >- tag: tip >- user: test >- date: Thu Jan 01 00:00:00 1970 +0000 >- summary: Removed tag bar >- >- >-Undo a tag with rollback: >- >- $ hg rollback # destroy rev 5 (restore bar) >- rolling back to revision 4 (undo commit) >- $ hg tags >- tip 4:0c192d7d5e6b >- bar 1:78391a272241 >- $ hg tags >- tip 4:0c192d7d5e6b >- bar 1:78391a272241 >- >-Test tag rank: >- >- $ cd .. >- $ hg init t3 >- $ cd t3 >- $ echo foo > foo >- $ hg add foo >- $ hg ci -m 'add foo' # rev 0 >- $ hg tag -f bar # rev 1 bar -> 0 >- $ hg tag -f bar # rev 2 bar -> 1 >- $ hg tag -fr 0 bar # rev 3 bar -> 0 >- $ hg tag -fr 1 bar # rev 4 bar -> 1 >- $ hg tag -fr 0 bar # rev 5 bar -> 0 >- $ hg tags >- tip 5:85f05169d91d >- bar 0:bbd179dfa0a7 >- $ hg co 3 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo barbar > foo >- $ hg ci -m 'change foo' # rev 6 >- created new head >- $ hg tags >- tip 6:735c3ca72986 >- bar 0:bbd179dfa0a7 >- >-Don't allow moving tag without -f: >- >- $ hg tag -r 3 bar >- abort: tag 'bar' already exists (use -f to force) >- [255] >- $ hg tags >- tip 6:735c3ca72986 >- bar 0:bbd179dfa0a7 >- >-Strip 1: expose an old head: >- >- $ hg --config extensions.mq= strip 5 >- saved backup bundle to $TESTTMP/t3/.hg/strip-backup/*-backup.hg (glob) >- $ hg tags # partly stale cache >- tip 5:735c3ca72986 >- bar 1:78391a272241 >- $ hg tags # up-to-date cache >- tip 5:735c3ca72986 >- bar 1:78391a272241 >- >-Strip 2: destroy whole branch, no old head exposed >- >- $ hg --config extensions.mq= strip 4 >- saved backup bundle to $TESTTMP/t3/.hg/strip-backup/*-backup.hg (glob) >- $ hg tags # partly stale >- tip 4:735c3ca72986 >- bar 0:bbd179dfa0a7 >- $ rm -f .hg/tags.cache >- $ hg tags # cold cache >- tip 4:735c3ca72986 >- bar 0:bbd179dfa0a7 >- >-Test tag rank with 3 heads: >- >- $ cd .. >- $ hg init t4 >- $ cd t4 >- $ echo foo > foo >- $ hg add >- adding foo >- $ hg ci -m 'add foo' # rev 0 >- $ hg tag bar # rev 1 bar -> 0 >- $ hg tag -f bar # rev 2 bar -> 1 >- $ hg up -qC 0 >- $ hg tag -fr 2 bar # rev 3 bar -> 2 >- $ hg tags >- tip 3:197c21bbbf2c >- bar 2:6fa450212aeb >- $ hg up -qC 0 >- $ hg tag -m 'retag rev 0' -fr 0 bar # rev 4 bar -> 0, but bar stays at 2 >- >-Bar should still point to rev 2: >- >- $ hg tags >- tip 4:3b4b14ed0202 >- bar 2:6fa450212aeb >- >-Test that removing global/local tags does not get confused when trying >-to remove a tag of type X which actually only exists as a type Y: >- >- $ cd .. >- $ hg init t5 >- $ cd t5 >- $ echo foo > foo >- $ hg add >- adding foo >- $ hg ci -m 'add foo' # rev 0 >- >- $ hg tag -r 0 -l localtag >- $ hg tag --remove localtag >- abort: tag 'localtag' is not a global tag >- [255] >- $ >- $ hg tag -r 0 globaltag >- $ hg tag --remove -l globaltag >- abort: tag 'globaltag' is not a local tag >- [255] >- $ hg tags -v >- tip 1:a0b6fe111088 >- localtag 0:bbd179dfa0a7 local >- globaltag 0:bbd179dfa0a7 >!. >ERROR: /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-transplant.t output changed and returned error code -15 >--- /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-transplant.t >+++ /var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7/tests/test-transplant.t.err >@@ -1,362 +1,6 @@ >+ >+ ### Abort: timeout after 180 seconds. > $ cat <<EOF >> $HGRCPATH > > [extensions] > > transplant= > > EOF >- >- $ hg init t >- $ cd t >- $ echo r1 > r1 >- $ hg ci -Amr1 -d'0 0' >- adding r1 >- $ echo r2 > r2 >- $ hg ci -Amr2 -d'1 0' >- adding r2 >- $ hg up 0 >- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved >- >- $ echo b1 > b1 >- $ hg ci -Amb1 -d '0 0' >- adding b1 >- created new head >- $ echo b2 > b2 >- $ hg ci -Amb2 -d '1 0' >- adding b2 >- $ echo b3 > b3 >- $ hg ci -Amb3 -d '2 0' >- adding b3 >- >- $ hg log --template '{rev} {parents} {desc}\n' >- 4 b3 >- 3 b2 >- 2 0:17ab29e464c6 b1 >- 1 r2 >- 0 r1 >- >- $ hg clone . ../rebase >- updating to branch default >- 4 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ cd ../rebase >- >- $ hg up -C 1 >- 1 files updated, 0 files merged, 3 files removed, 0 files unresolved >- >-rebase b onto r1 >- >- $ hg transplant -a -b tip >- applying 37a1297eb21b >- 37a1297eb21b transplanted to e234d668f844 >- applying 722f4667af76 >- 722f4667af76 transplanted to 539f377d78df >- applying a53251cdf717 >- a53251cdf717 transplanted to ffd6818a3975 >- $ hg log --template '{rev} {parents} {desc}\n' >- 7 b3 >- 6 b2 >- 5 1:d11e3596cc1a b1 >- 4 b3 >- 3 b2 >- 2 0:17ab29e464c6 b1 >- 1 r2 >- 0 r1 >- >-test transplanted revset >- >- $ hg log -r 'transplanted()' --template '{rev} {parents} {desc}\n' >- 5 1:d11e3596cc1a b1 >- 6 b2 >- 7 b3 >- $ hg help revsets | grep transplanted >- "transplanted(set)" >- >- $ hg clone ../t ../prune >- updating to branch default >- 4 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ cd ../prune >- >- $ hg up -C 1 >- 1 files updated, 0 files merged, 3 files removed, 0 files unresolved >- >-rebase b onto r1, skipping b2 >- >- $ hg transplant -a -b tip -p 3 >- applying 37a1297eb21b >- 37a1297eb21b transplanted to e234d668f844 >- applying a53251cdf717 >- a53251cdf717 transplanted to 7275fda4d04f >- $ hg log --template '{rev} {parents} {desc}\n' >- 6 b3 >- 5 1:d11e3596cc1a b1 >- 4 b3 >- 3 b2 >- 2 0:17ab29e464c6 b1 >- 1 r2 >- 0 r1 >- >- >-remote transplant >- >- $ hg clone -r 1 ../t ../remote >- adding changesets >- adding manifests >- adding file changes >- added 2 changesets with 2 changes to 2 files >- updating to branch default >- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ cd ../remote >- $ hg transplant --log -s ../t 2 4 >- searching for changes >- applying 37a1297eb21b >- 37a1297eb21b transplanted to c19cf0ccb069 >- applying a53251cdf717 >- a53251cdf717 transplanted to f7fe5bf98525 >- $ hg log --template '{rev} {parents} {desc}\n' >- 3 b3 >- (transplanted from a53251cdf717679d1907b289f991534be05c997a) >- 2 b1 >- (transplanted from 37a1297eb21b3ef5c5d2ffac22121a0988ed9f21) >- 1 r2 >- 0 r1 >- >-skip previous transplants >- >- $ hg transplant -s ../t -a -b 4 >- searching for changes >- applying 722f4667af76 >- 722f4667af76 transplanted to 47156cd86c0b >- $ hg log --template '{rev} {parents} {desc}\n' >- 4 b2 >- 3 b3 >- (transplanted from a53251cdf717679d1907b289f991534be05c997a) >- 2 b1 >- (transplanted from 37a1297eb21b3ef5c5d2ffac22121a0988ed9f21) >- 1 r2 >- 0 r1 >- >-skip local changes transplanted to the source >- >- $ echo b4 > b4 >- $ hg ci -Amb4 -d '3 0' >- adding b4 >- $ hg clone ../t ../pullback >- updating to branch default >- 4 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ cd ../pullback >- $ hg transplant -s ../remote -a -b tip >- searching for changes >- applying 4333daefcb15 >- 4333daefcb15 transplanted to 5f42c04e07cc >- >- >-remote transplant with pull >- >- $ hg -R ../t serve -p $HGPORT -d --pid-file=../t.pid >- $ cat ../t.pid >> $DAEMON_PIDS >- >- $ hg clone -r 0 ../t ../rp >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- updating to branch default >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ cd ../rp >- $ hg transplant -s http://localhost:$HGPORT/ 2 4 >- searching for changes >- searching for changes >- adding changesets >- adding manifests >- adding file changes >- added 1 changesets with 1 changes to 1 files >- applying a53251cdf717 >- a53251cdf717 transplanted to 8d9279348abb >- $ hg log --template '{rev} {parents} {desc}\n' >- 2 b3 >- 1 b1 >- 0 r1 >- >-transplant --continue >- >- $ hg init ../tc >- $ cd ../tc >- $ cat <<EOF > foo >- > foo >- > bar >- > baz >- > EOF >- $ echo toremove > toremove >- $ hg ci -Amfoo >- adding foo >- adding toremove >- $ cat <<EOF > foo >- > foo2 >- > bar2 >- > baz2 >- > EOF >- $ rm toremove >- $ echo added > added >- $ hg ci -Amfoo2 >- adding added >- removing toremove >- $ echo bar > bar >- $ hg ci -Ambar >- adding bar >- $ echo bar2 >> bar >- $ hg ci -mbar2 >- $ hg up 0 >- 2 files updated, 0 files merged, 2 files removed, 0 files unresolved >- $ echo foobar > foo >- $ hg ci -mfoobar >- created new head >- $ hg transplant 1:3 >- applying a1e30dd1b8e7 >- patching file foo >- Hunk #1 FAILED at 0 >- 1 out of 1 hunks FAILED -- saving rejects to file foo.rej >- patch failed to apply >- abort: fix up the merge and run hg transplant --continue >- [255] >- >-transplant -c shouldn't use an old changeset >- >- $ hg up -C >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ rm added >- $ hg transplant 1 >- applying a1e30dd1b8e7 >- patching file foo >- Hunk #1 FAILED at 0 >- 1 out of 1 hunks FAILED -- saving rejects to file foo.rej >- patch failed to apply >- abort: fix up the merge and run hg transplant --continue >- [255] >- $ hg transplant --continue >- a1e30dd1b8e7 transplanted as f1563cf27039 >- $ hg transplant 1:3 >- skipping already applied revision 1:a1e30dd1b8e7 >- applying 1739ac5f6139 >- 1739ac5f6139 transplanted to d649c221319f >- applying 0282d5fbbe02 >- 0282d5fbbe02 transplanted to 77418277ccb3 >- $ hg locate >- added >- bar >- foo >- $ cd .. >- >-Issue1111: Test transplant --merge >- >- $ hg init t1111 >- $ cd t1111 >- $ echo a > a >- $ hg ci -Am adda >- adding a >- $ echo b >> a >- $ hg ci -m appendb >- $ echo c >> a >- $ hg ci -m appendc >- $ hg up -C 0 >- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved >- $ echo d >> a >- $ hg ci -m appendd >- created new head >- >-tranplant >- >- $ hg transplant -m 1 >- applying 42dc4432fd35 >- 1:42dc4432fd35 merged at a9f4acbac129 >- $ cd .. >- >-test transplant into empty repository >- >- $ hg init empty >- $ cd empty >- $ hg transplant -s ../t -b tip -a >- adding changesets >- adding manifests >- adding file changes >- added 4 changesets with 4 changes to 4 files >- $ cd .. >- >- >-test filter >- >- $ hg init filter >- $ cd filter >- $ cat <<'EOF' >test-filter >- > #!/bin/sh >- > sed 's/r1/r2/' $1 > $1.new >- > mv $1.new $1 >- > EOF >- $ chmod +x test-filter >- $ hg transplant -s ../t -b tip -a --filter ./test-filter >- filtering * (glob) >- applying 17ab29e464c6 >- 17ab29e464c6 transplanted to e9ffc54ea104 >- filtering * (glob) >- applying 37a1297eb21b >- 37a1297eb21b transplanted to 348b36d0b6a5 >- filtering * (glob) >- applying 722f4667af76 >- 722f4667af76 transplanted to 0aa6979afb95 >- filtering * (glob) >- applying a53251cdf717 >- a53251cdf717 transplanted to 14f8512272b5 >- $ hg log --template '{rev} {parents} {desc}\n' >- 3 b3 >- 2 b2 >- 1 b1 >- 0 r2 >- $ cd .. >- >- >-test filter with failed patch >- >- $ cd filter >- $ hg up 0 >- 0 files updated, 0 files merged, 3 files removed, 0 files unresolved >- $ echo foo > b1 >- $ hg ci -Am foo >- adding b1 >- adding test-filter >- created new head >- $ hg transplant 1 --filter ./test-filter >- filtering * (glob) >- applying 348b36d0b6a5 >- file b1 already exists >- 1 out of 1 hunks FAILED -- saving rejects to file b1.rej >- patch failed to apply >- abort: fix up the merge and run hg transplant --continue >- [255] >- $ cd .. >- >- >-test with a win32ext like setup (differing EOLs) >- >- $ hg init twin1 >- $ cd twin1 >- $ echo a > a >- $ echo b > b >- $ echo b >> b >- $ hg ci -Am t >- adding a >- adding b >- $ echo a > b >- $ echo b >> b >- $ hg ci -m changeb >- $ cd .. >- >- $ hg init twin2 >- $ cd twin2 >- $ echo '[patch]' >> .hg/hgrc >- $ echo 'eol = crlf' >> .hg/hgrc >- $ python -c "file('b', 'wb').write('b\r\nb\r\n')" >- $ hg ci -m addb >- nothing changed >- [1] >- $ hg transplant -s ../twin1 tip >- applying 2e849d776c17 >- 2e849d776c17 transplanted to 589cea8ba85b >- $ python -c "print repr(file('b', 'rb').read())" >- 'a\r\nb\r\n' >- $ cd .. >!....... >Skipped test-convert-bzr-ghosts.t: missing feature: Canonical's Bazaar client >Skipped test-check-code-hg.py: cannot check code on non-repository sources >Skipped test-convert-bzr-114.t: missing feature: Canonical's Bazaar client >= 1.14 >Skipped test-convert-bzr-treeroot.t: missing feature: Canonical's Bazaar client >Skipped test-convert-p4: missing feature: Perforce server and client >Skipped test-convert-bzr-merges.t: missing feature: Canonical's Bazaar client >Skipped test-casefolding.t: missing feature: case insensitive file system >Skipped test-convert-bzr-directories.t: missing feature: Canonical's Bazaar client >Skipped test-convert-bzr.t: missing feature: Canonical's Bazaar client >Skipped test-convert-p4-filetypes: missing feature: Perforce server and client >Skipped test-no-symlinks: system supports symbolic links >Failed test-586.t: output changed and returned error code -15 >Failed test-addremove-similar.t: output changed and returned error code -15 >Failed test-bookmarks.t: output changed and returned error code -15 >Failed test-bundle-type.t: output changed and returned error code -15 >Failed test-children.t: output changed and returned error code -15 >Failed test-clone-pull-corruption.t: output changed >Failed test-command-template.t: output changed and returned error code -15 >Failed test-convert-clonebranches.t: output changed and returned error code -15 >Failed test-convert-hg-source.t: output changed and returned error code -15 >Failed test-eol.t: output changed and returned error code -15 >Failed test-export.t: output changed and returned error code -15 >Failed test-fetch.t: output changed and returned error code -15 >Failed test-globalopts.t: output changed and returned error code -15 >Failed test-hgweb-empty.t: output changed >Failed test-hook.t: output changed and returned error code -15 >Failed test-http.t: output changed >Failed test-import.t: output changed and returned error code -15 >Failed test-log.t: output changed and returned error code -15 >Failed test-merge-closedheads.t: output changed and returned error code -15 >Failed test-merge-revert.t: output changed and returned error code -15 >Failed test-mq-header-from.t: output changed and returned error code -15 >Failed test-mq-qclone-http.t: output changed and returned error code -15 >Failed test-mq-qgoto.t: output changed and returned error code -15 >Failed test-mq-qpush-fail.t: output changed and returned error code -15 >Failed test-mq-qrename.t: output changed and returned error code -15 >Failed test-mq-symlinks.t: output changed and returned error code -15 >Failed test-newbranch.t: output changed and returned error code -15 >Failed test-parents.t: output changed and returned error code -15 >Failed test-pull-http.t: output changed >Failed test-push-warn.t: output changed and returned error code -15 >Failed test-rebase-check-restore.t: output changed and returned error code -15 >Failed test-rebase-interruptions.t: output changed and returned error code -15 >Failed test-rebase-mq.t: output changed and returned error code -15 >Failed test-rebase-rename.t: output changed and returned error code -15 >Failed test-rename-dir-merge.t: output changed and returned error code -15 >Failed test-repair-strip: output changed and returned error code -15 >Failed test-ssh.t: output changed and returned error code -15 >Failed test-status.t: output changed and returned error code -15 >Failed test-update-branches.t: output changed and returned error code -15 >Failed test-url-rev.t: output changed and returned error code -15 >Failed test-walk.t: output changed and returned error code -15 >Failed test-acl.t: output changed and returned error code -15 >Failed test-alias.t: output changed and returned error code -15 >Failed test-bisect.t: output changed and returned error code -15 >Failed test-branches.t: output changed and returned error code -15 >Failed test-bundle.t: output changed and returned error code -15 >Failed test-clone-update-order.t: output changed and returned error code -15 >Failed test-convert-filemap.t: output changed and returned error code -15 >Failed test-convert.t: output changed and returned error code -15 >Failed test-diff-ignore-whitespace.t: output changed and returned error code -15 >Failed test-dirstate-race.t: output changed and returned error code -15 >Failed test-encoding.t: output changed and returned error code -15 >Failed test-eol-patch.t: output changed and returned error code -15 >Failed test-extension.t: output changed and returned error code -15 >Failed test-git-export.t: output changed and returned error code -15 >Failed test-http-clone-r.t: output changed and returned error code -15 >Failed test-hup.t: output changed >Failed test-locate.t: output changed and returned error code -15 >Failed test-merge-default.t: output changed and returned error code -15 >Failed test-mq-guards.t: output changed and returned error code -15 >Failed test-mq-missingfiles.t: output changed and returned error code -15 >Failed test-mq-qdiff.t: output changed and returned error code -15 >Failed test-mq-qimport.t: output changed and returned error code -15 >Failed test-mq-qrefresh-replace-log-message.t: output changed and returned error code -15 >Failed test-mq-safety.t: output changed and returned error code -15 >Failed test-mv-cp-st-diff.t: output changed and returned error code -15 >Failed test-patchbomb.t: output changed and returned error code -15 >Failed test-pull-pull-corruption.t: output changed and returned error code -15 >Failed test-push-r.t: output changed and returned error code -15 >Failed test-rebase-abort.t: output changed and returned error code -15 >Failed test-rebase-conflicts.t: output changed and returned error code -15 >Failed test-rebase-parameters.t: output changed and returned error code -15 >Failed test-remove.t: output changed and returned error code -15 >Failed test-rename-merge2.t: output changed and returned error code -15 >Failed test-revset.t: output changed and returned error code -15 >Failed test-status-color.t: output changed and returned error code -15 >Failed test-strip-cross.t: output changed and returned error code -15 >Failed test-tag.t: output changed and returned error code -15 >Failed test-win32text.t: output changed and returned error code -15 >Failed test-archive.t: output changed and returned error code -15 >Failed test-bheads.t: output changed and returned error code -15 >Failed test-branch-option.t: output changed and returned error code -15 >Failed test-churn.t: output changed and returned error code -15 >Failed test-clone-r.t: output changed and returned error code -15 >Failed test-convert-datesort.t: output changed and returned error code -15 >Failed test-convert-hg-startrev.t: output changed and returned error code -15 >Failed test-copy2.t: output changed and returned error code -15 >Failed test-extdiff.t: output changed and returned error code -15 >Failed test-gendoc.t: output changed and returned error code -15 >Failed test-glog.t: output changed and returned error code -15 >Failed test-hgweb-commands.t: output changed >Failed test-hgweb-filelog.t: output changed >Failed test-hgweb-raw.t: output changed >Failed test-hgwebdir.t: output changed and returned error code -15 >Failed test-http-branchmap.t: output changed >Failed test-https.t: output changed >Failed test-incoming-outgoing.t: output changed and returned error code -15 >Failed test-inotify-dirty-dirstate.t: output changed and returned error code -15 >Failed test-interhg.t: output changed >Failed test-issue660.t: output changed and returned error code -15 >Failed test-keyword.t: output changed and returned error code -15 >Failed test-merge-commit.t: output changed and returned error code -15 >Failed test-merge-local.t: output changed and returned error code -15 >Failed test-merge-revert2.t: output changed and returned error code -15 >Failed test-merge1.t: output changed and returned error code -15 >Failed test-merge9.t: output changed and returned error code -15 >Failed test-mq-git.t: output changed and returned error code -15 >Failed test-mq-merge.t: output changed and returned error code -15 >Failed test-mq-qdelete.t: output changed and returned error code -15 >Failed test-mq-qqueue.t: output changed and returned error code -15 >Failed test-mq.t: output changed and returned error code -15 >Failed test-parse-date.t: output changed and returned error code -15 >Failed test-push-http.t: output changed and returned error code -15 >Failed test-rebase-collapse.t: output changed and returned error code -15 >Failed test-rebase-issue-noparam-single-rev.t: output changed and returned error code -15 >Failed test-rebase-scenario-global.t: output changed and returned error code -15 >Failed test-rename-merge1.t: output changed and returned error code -15 >Failed test-revert.t: output changed and returned error code -15 >Failed test-schemes.t: output changed >Failed test-static-http.t: output changed and returned error code -15 >Failed test-subrepo-recursion.t: output changed and returned error code -15 >Failed test-symlinks.t: output changed and returned error code -15 >Failed test-transplant.t: output changed and returned error code -15 >Failed test-add.t: output changed and returned error code -15 >Failed test-annotate.t: output changed and returned error code -15 >Failed test-backout.t: output changed and returned error code -15 >Failed test-bisect2.t: output changed and returned error code -15 >Failed test-bookmarks-strip.t: output changed and returned error code -15 >Failed test-bundle-r.t: output changed and returned error code -15 >Failed test-clone.t: output changed and returned error code -15 >Failed test-commit.t: output changed and returned error code -15 >Failed test-convert-hg-sink.t: output changed and returned error code -15 >Failed test-debugbuilddag.t: output changed and returned error code -15 >Failed test-flags.t: output changed and returned error code -15 >Failed test-git-import.t: output changed and returned error code -15 >Failed test-grep.t: output changed and returned error code -15 >Failed test-hgweb-diffs.t: output changed >Failed test-hgweb.t: output changed >Failed test-highlight.t: output changed >Failed test-http-proxy.t: output changed >Failed test-import-eol.t: output changed and returned error code -15 >Failed test-init.t: output changed and returned error code -15 >Failed test-inotify.t: output changed and returned error code -15 >Failed test-merge-tools.t: output changed and returned error code -15 >Failed test-merge2.t: output changed and returned error code -15 >Failed test-mq-caches.t: output changed and returned error code -15 >Failed test-mq-header-date.t: output changed and returned error code -15 >Failed test-mq-pull-from-bundle.t: output changed and returned error code -15 >Failed test-mq-qfold.t: output changed and returned error code -15 >Failed test-mq-qnew.t: output changed and returned error code -15 >Failed test-mq-qrefresh.t: output changed and returned error code -15 >Failed test-mq-strip.t: output changed and returned error code -15 >Failed test-parentrevspec.t: output changed and returned error code -15 >Failed test-pull-branch.t: output changed and returned error code -15 >Failed test-pull-pull-corruption2.t: output changed >Failed test-purge.t: output changed and returned error code -15 >Failed test-rebase-cache.t: output changed and returned error code -15 >Failed test-rebase-detach.t: output changed and returned error code -15 >Failed test-rebase-mq-skip.t: output changed and returned error code -15 >Failed test-record.t: output changed and returned error code -15 >Failed test-rename-after-merge.t: output changed and returned error code -15 >Failed test-rename.t: output changed and returned error code -15 >Failed test-share.t: output changed >Failed test-ssh-clone-r.t: output changed and returned error code -15 >Failed test-subrepo-deep-nested-change.t: output changed and returned error code -15 >Failed test-subrepo.t: output changed and returned error code -15 >Failed test-tags.t: output changed and returned error code -15 ># Ran 373 tests, 11 skipped, 167 failed. > [31;01m*[0m ERROR: dev-vcs/mercurial-1.7 failed: > [31;01m*[0m Testing failed with CPython 2.6 in testing() function > [31;01m*[0m > [31;01m*[0m Call stack: > [31;01m*[0m ebuild.sh, line 56: Called src_test > [31;01m*[0m environment, line 4957: Called python_execute_function 'testing' > [31;01m*[0m environment, line 3633: Called die > [31;01m*[0m The specific snippet of code: > [31;01m*[0m die "${failure_message}"; > [31;01m*[0m > [31;01m*[0m If you need support, post the output of 'emerge --info =dev-vcs/mercurial-1.7', > [31;01m*[0m the complete build log and the output of 'emerge -pqv =dev-vcs/mercurial-1.7'. > [31;01m*[0m The complete build log is located at '/var/log/portage/dev-vcs:mercurial-1.7:20101223-190044.log'. > [31;01m*[0m The ebuild environment file is located at '/var/tmp/portage/dev-vcs/mercurial-1.7/temp/environment'. > [31;01m*[0m S: '/var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7'
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 348499
:
257341
|
257531
| 258017