* Package: dev-vcs/mercurial-1.7  * Repository: gentoo  * Maintainer: nelchael@gentoo.org djc@gentoo.org  * USE: elibc_glibc kernel_linux multilib sparc test userland_GNU * When migrating to the new sparc mutlilib profile please keep in mind that it * is still in an experimental state. Also note that you need to follow the * migration guide [0], otherwise important packages such as gcc or glibc will * fail to compile and most other packages will be installed incorrectly. * * [0] http://sparc.gentoo.org/multilib.xml >>> 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/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/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/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/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. 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/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/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/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/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/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. running build_py creating build-2.6 creating build-2.6/lib.linux-sparc64-2.6 creating build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/byterange.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/bundlerepo.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/keepalive.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/windows.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/templatefilters.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/manifest.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/discovery.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/parser.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/sshrepo.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/dispatch.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/changelog.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/templater.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/lsprof.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/wireproto.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/encoding.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/localrepo.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/hook.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/config.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/simplemerge.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/changegroup.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/match.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/url.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/tags.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/hbisect.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/ignore.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/similar.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/patch.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/verify.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/dagparser.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/extensions.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/mail.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/repair.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/fancyopts.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/mdiff.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/graphmod.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/i18n.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/archival.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/repo.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/pushkey.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/subrepo.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/sshserver.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/win32.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/cmdutil.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/commands.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/strutil.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/store.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/merge.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/filemerge.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/error.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/__version__.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/minirst.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/hg.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/posix.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/transaction.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/demandimport.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/copies.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/revset.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/filelog.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/httprepo.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/ancestor.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/node.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/templatekw.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/lsprofcalltree.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/py3kcompat.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/context.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/lock.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/help.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/statichttprepo.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/dirstate.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/revlog.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/util.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/ui.py -> build-2.6/lib.linux-sparc64-2.6/mercurial copying mercurial/__init__.py -> build-2.6/lib.linux-sparc64-2.6/mercurial creating build-2.6/lib.linux-sparc64-2.6/mercurial/hgweb copying mercurial/hgweb/request.py -> build-2.6/lib.linux-sparc64-2.6/mercurial/hgweb copying mercurial/hgweb/protocol.py -> build-2.6/lib.linux-sparc64-2.6/mercurial/hgweb copying mercurial/hgweb/webutil.py -> build-2.6/lib.linux-sparc64-2.6/mercurial/hgweb copying mercurial/hgweb/hgweb_mod.py -> build-2.6/lib.linux-sparc64-2.6/mercurial/hgweb copying mercurial/hgweb/server.py -> build-2.6/lib.linux-sparc64-2.6/mercurial/hgweb copying mercurial/hgweb/wsgicgi.py -> build-2.6/lib.linux-sparc64-2.6/mercurial/hgweb copying mercurial/hgweb/webcommands.py -> build-2.6/lib.linux-sparc64-2.6/mercurial/hgweb copying mercurial/hgweb/hgwebdir_mod.py -> build-2.6/lib.linux-sparc64-2.6/mercurial/hgweb copying mercurial/hgweb/common.py -> build-2.6/lib.linux-sparc64-2.6/mercurial/hgweb copying mercurial/hgweb/__init__.py -> build-2.6/lib.linux-sparc64-2.6/mercurial/hgweb creating build-2.6/lib.linux-sparc64-2.6/hgext copying hgext/bookmarks.py -> build-2.6/lib.linux-sparc64-2.6/hgext copying hgext/children.py -> build-2.6/lib.linux-sparc64-2.6/hgext copying hgext/hgk.py -> build-2.6/lib.linux-sparc64-2.6/hgext copying hgext/transplant.py -> build-2.6/lib.linux-sparc64-2.6/hgext copying hgext/schemes.py -> build-2.6/lib.linux-sparc64-2.6/hgext copying hgext/mq.py -> build-2.6/lib.linux-sparc64-2.6/hgext copying hgext/hgcia.py -> build-2.6/lib.linux-sparc64-2.6/hgext copying hgext/rebase.py -> build-2.6/lib.linux-sparc64-2.6/hgext copying hgext/graphlog.py -> build-2.6/lib.linux-sparc64-2.6/hgext copying hgext/interhg.py -> build-2.6/lib.linux-sparc64-2.6/hgext copying hgext/bugzilla.py -> build-2.6/lib.linux-sparc64-2.6/hgext copying hgext/patchbomb.py -> build-2.6/lib.linux-sparc64-2.6/hgext copying hgext/eol.py -> build-2.6/lib.linux-sparc64-2.6/hgext copying hgext/win32text.py -> build-2.6/lib.linux-sparc64-2.6/hgext copying hgext/churn.py -> build-2.6/lib.linux-sparc64-2.6/hgext copying hgext/progress.py -> build-2.6/lib.linux-sparc64-2.6/hgext copying hgext/win32mbcs.py -> build-2.6/lib.linux-sparc64-2.6/hgext copying hgext/pager.py -> build-2.6/lib.linux-sparc64-2.6/hgext copying hgext/parentrevspec.py -> build-2.6/lib.linux-sparc64-2.6/hgext copying hgext/keyword.py -> build-2.6/lib.linux-sparc64-2.6/hgext copying hgext/record.py -> build-2.6/lib.linux-sparc64-2.6/hgext copying hgext/notify.py -> build-2.6/lib.linux-sparc64-2.6/hgext copying hgext/gpg.py -> build-2.6/lib.linux-sparc64-2.6/hgext copying hgext/relink.py -> build-2.6/lib.linux-sparc64-2.6/hgext copying hgext/fetch.py -> build-2.6/lib.linux-sparc64-2.6/hgext copying hgext/purge.py -> build-2.6/lib.linux-sparc64-2.6/hgext copying hgext/acl.py -> build-2.6/lib.linux-sparc64-2.6/hgext copying hgext/share.py -> build-2.6/lib.linux-sparc64-2.6/hgext copying hgext/extdiff.py -> build-2.6/lib.linux-sparc64-2.6/hgext copying hgext/color.py -> build-2.6/lib.linux-sparc64-2.6/hgext copying hgext/__init__.py -> build-2.6/lib.linux-sparc64-2.6/hgext creating build-2.6/lib.linux-sparc64-2.6/hgext/convert copying hgext/convert/bzr.py -> build-2.6/lib.linux-sparc64-2.6/hgext/convert copying hgext/convert/cvs.py -> build-2.6/lib.linux-sparc64-2.6/hgext/convert copying hgext/convert/subversion.py -> build-2.6/lib.linux-sparc64-2.6/hgext/convert copying hgext/convert/convcmd.py -> build-2.6/lib.linux-sparc64-2.6/hgext/convert copying hgext/convert/p4.py -> build-2.6/lib.linux-sparc64-2.6/hgext/convert copying hgext/convert/cvsps.py -> build-2.6/lib.linux-sparc64-2.6/hgext/convert copying hgext/convert/transport.py -> build-2.6/lib.linux-sparc64-2.6/hgext/convert copying hgext/convert/monotone.py -> build-2.6/lib.linux-sparc64-2.6/hgext/convert copying hgext/convert/darcs.py -> build-2.6/lib.linux-sparc64-2.6/hgext/convert copying hgext/convert/gnuarch.py -> build-2.6/lib.linux-sparc64-2.6/hgext/convert copying hgext/convert/git.py -> build-2.6/lib.linux-sparc64-2.6/hgext/convert copying hgext/convert/hg.py -> build-2.6/lib.linux-sparc64-2.6/hgext/convert copying hgext/convert/filemap.py -> build-2.6/lib.linux-sparc64-2.6/hgext/convert copying hgext/convert/common.py -> build-2.6/lib.linux-sparc64-2.6/hgext/convert copying hgext/convert/__init__.py -> build-2.6/lib.linux-sparc64-2.6/hgext/convert creating build-2.6/lib.linux-sparc64-2.6/hgext/highlight copying hgext/highlight/highlight.py -> build-2.6/lib.linux-sparc64-2.6/hgext/highlight copying hgext/highlight/__init__.py -> build-2.6/lib.linux-sparc64-2.6/hgext/highlight creating build-2.6/lib.linux-sparc64-2.6/hgext/zeroconf copying hgext/zeroconf/Zeroconf.py -> build-2.6/lib.linux-sparc64-2.6/hgext/zeroconf copying hgext/zeroconf/__init__.py -> build-2.6/lib.linux-sparc64-2.6/hgext/zeroconf creating build-2.6/lib.linux-sparc64-2.6/hgext/inotify copying hgext/inotify/client.py -> build-2.6/lib.linux-sparc64-2.6/hgext/inotify copying hgext/inotify/server.py -> build-2.6/lib.linux-sparc64-2.6/hgext/inotify copying hgext/inotify/linuxserver.py -> build-2.6/lib.linux-sparc64-2.6/hgext/inotify copying hgext/inotify/common.py -> build-2.6/lib.linux-sparc64-2.6/hgext/inotify copying hgext/inotify/__init__.py -> build-2.6/lib.linux-sparc64-2.6/hgext/inotify creating build-2.6/lib.linux-sparc64-2.6/hgext/inotify/linux copying hgext/inotify/linux/watcher.py -> build-2.6/lib.linux-sparc64-2.6/hgext/inotify/linux copying hgext/inotify/linux/__init__.py -> build-2.6/lib.linux-sparc64-2.6/hgext/inotify/linux creating build-2.6/lib.linux-sparc64-2.6/mercurial/locale creating build-2.6/lib.linux-sparc64-2.6/mercurial/locale/da creating build-2.6/lib.linux-sparc64-2.6/mercurial/locale/da/LC_MESSAGES copying mercurial/locale/da/LC_MESSAGES/hg.mo -> build-2.6/lib.linux-sparc64-2.6/mercurial/locale/da/LC_MESSAGES creating build-2.6/lib.linux-sparc64-2.6/mercurial/locale/fr creating build-2.6/lib.linux-sparc64-2.6/mercurial/locale/fr/LC_MESSAGES copying mercurial/locale/fr/LC_MESSAGES/hg.mo -> build-2.6/lib.linux-sparc64-2.6/mercurial/locale/fr/LC_MESSAGES creating build-2.6/lib.linux-sparc64-2.6/mercurial/locale/ro creating build-2.6/lib.linux-sparc64-2.6/mercurial/locale/ro/LC_MESSAGES copying mercurial/locale/ro/LC_MESSAGES/hg.mo -> build-2.6/lib.linux-sparc64-2.6/mercurial/locale/ro/LC_MESSAGES creating build-2.6/lib.linux-sparc64-2.6/mercurial/locale/el creating build-2.6/lib.linux-sparc64-2.6/mercurial/locale/el/LC_MESSAGES copying mercurial/locale/el/LC_MESSAGES/hg.mo -> build-2.6/lib.linux-sparc64-2.6/mercurial/locale/el/LC_MESSAGES creating build-2.6/lib.linux-sparc64-2.6/mercurial/locale/pt_BR creating build-2.6/lib.linux-sparc64-2.6/mercurial/locale/pt_BR/LC_MESSAGES copying mercurial/locale/pt_BR/LC_MESSAGES/hg.mo -> build-2.6/lib.linux-sparc64-2.6/mercurial/locale/pt_BR/LC_MESSAGES creating build-2.6/lib.linux-sparc64-2.6/mercurial/locale/zh_TW creating build-2.6/lib.linux-sparc64-2.6/mercurial/locale/zh_TW/LC_MESSAGES copying mercurial/locale/zh_TW/LC_MESSAGES/hg.mo -> build-2.6/lib.linux-sparc64-2.6/mercurial/locale/zh_TW/LC_MESSAGES creating build-2.6/lib.linux-sparc64-2.6/mercurial/locale/zh_CN creating build-2.6/lib.linux-sparc64-2.6/mercurial/locale/zh_CN/LC_MESSAGES copying mercurial/locale/zh_CN/LC_MESSAGES/hg.mo -> build-2.6/lib.linux-sparc64-2.6/mercurial/locale/zh_CN/LC_MESSAGES creating build-2.6/lib.linux-sparc64-2.6/mercurial/locale/it creating build-2.6/lib.linux-sparc64-2.6/mercurial/locale/it/LC_MESSAGES copying mercurial/locale/it/LC_MESSAGES/hg.mo -> build-2.6/lib.linux-sparc64-2.6/mercurial/locale/it/LC_MESSAGES creating build-2.6/lib.linux-sparc64-2.6/mercurial/locale/ja creating build-2.6/lib.linux-sparc64-2.6/mercurial/locale/ja/LC_MESSAGES copying mercurial/locale/ja/LC_MESSAGES/hg.mo -> build-2.6/lib.linux-sparc64-2.6/mercurial/locale/ja/LC_MESSAGES creating build-2.6/lib.linux-sparc64-2.6/mercurial/locale/de creating build-2.6/lib.linux-sparc64-2.6/mercurial/locale/de/LC_MESSAGES copying mercurial/locale/de/LC_MESSAGES/hg.mo -> build-2.6/lib.linux-sparc64-2.6/mercurial/locale/de/LC_MESSAGES creating build-2.6/lib.linux-sparc64-2.6/mercurial/locale/sv creating build-2.6/lib.linux-sparc64-2.6/mercurial/locale/sv/LC_MESSAGES copying mercurial/locale/sv/LC_MESSAGES/hg.mo -> build-2.6/lib.linux-sparc64-2.6/mercurial/locale/sv/LC_MESSAGES creating build-2.6/lib.linux-sparc64-2.6/mercurial/help copying mercurial/help/revsets.txt -> build-2.6/lib.linux-sparc64-2.6/mercurial/help copying mercurial/help/subrepos.txt -> build-2.6/lib.linux-sparc64-2.6/mercurial/help copying mercurial/help/glossary.txt -> build-2.6/lib.linux-sparc64-2.6/mercurial/help copying mercurial/help/merge-tools.txt -> build-2.6/lib.linux-sparc64-2.6/mercurial/help copying mercurial/help/templates.txt -> build-2.6/lib.linux-sparc64-2.6/mercurial/help copying mercurial/help/environment.txt -> build-2.6/lib.linux-sparc64-2.6/mercurial/help copying mercurial/help/hgweb.txt -> build-2.6/lib.linux-sparc64-2.6/mercurial/help copying mercurial/help/config.txt -> build-2.6/lib.linux-sparc64-2.6/mercurial/help copying mercurial/help/extensions.txt -> build-2.6/lib.linux-sparc64-2.6/mercurial/help copying mercurial/help/diffs.txt -> build-2.6/lib.linux-sparc64-2.6/mercurial/help copying mercurial/help/revisions.txt -> build-2.6/lib.linux-sparc64-2.6/mercurial/help copying mercurial/help/patterns.txt -> build-2.6/lib.linux-sparc64-2.6/mercurial/help copying mercurial/help/multirevs.txt -> build-2.6/lib.linux-sparc64-2.6/mercurial/help copying mercurial/help/urls.txt -> build-2.6/lib.linux-sparc64-2.6/mercurial/help copying mercurial/help/dates.txt -> build-2.6/lib.linux-sparc64-2.6/mercurial/help creating build-2.6/lib.linux-sparc64-2.6/mercurial/templates copying mercurial/templates/map-cmdline.default -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates copying mercurial/templates/map-cmdline.xml -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates copying mercurial/templates/map-cmdline.changelog -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates copying mercurial/templates/map-cmdline.compact -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates copying mercurial/templates/template-vars.txt -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates creating build-2.6/lib.linux-sparc64-2.6/mercurial/templates/atom copying mercurial/templates/atom/filelog.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/atom copying mercurial/templates/atom/error.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/atom copying mercurial/templates/atom/changelogentry.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/atom copying mercurial/templates/atom/tags.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/atom copying mercurial/templates/atom/map -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/atom copying mercurial/templates/atom/changelog.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/atom copying mercurial/templates/atom/tagentry.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/atom copying mercurial/templates/atom/header.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/atom creating build-2.6/lib.linux-sparc64-2.6/mercurial/templates/static copying mercurial/templates/static/coal-file.png -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/static copying mercurial/templates/static/background.png -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/static copying mercurial/templates/static/graph.js -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/static copying mercurial/templates/static/hglogo.png -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/static copying mercurial/templates/static/excanvas.js -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/static copying mercurial/templates/static/hgicon.png -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/static copying mercurial/templates/static/style.css -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/static copying mercurial/templates/static/style-gitweb.css -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/static copying mercurial/templates/static/style-monoblue.css -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/static copying mercurial/templates/static/style-coal.css -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/static copying mercurial/templates/static/style-paper.css -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/static copying mercurial/templates/static/coal-folder.png -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/static creating build-2.6/lib.linux-sparc64-2.6/mercurial/templates/gitweb copying mercurial/templates/gitweb/filelog.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/gitweb copying mercurial/templates/gitweb/error.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/gitweb copying mercurial/templates/gitweb/changelogentry.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/gitweb copying mercurial/templates/gitweb/shortlog.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/gitweb copying mercurial/templates/gitweb/tags.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/gitweb copying mercurial/templates/gitweb/graph.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/gitweb copying mercurial/templates/gitweb/index.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/gitweb copying mercurial/templates/gitweb/filediff.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/gitweb copying mercurial/templates/gitweb/help.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/gitweb copying mercurial/templates/gitweb/summary.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/gitweb copying mercurial/templates/gitweb/map -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/gitweb copying mercurial/templates/gitweb/branches.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/gitweb copying mercurial/templates/gitweb/helptopics.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/gitweb copying mercurial/templates/gitweb/fileannotate.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/gitweb copying mercurial/templates/gitweb/changeset.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/gitweb copying mercurial/templates/gitweb/filerevision.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/gitweb copying mercurial/templates/gitweb/manifest.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/gitweb copying mercurial/templates/gitweb/footer.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/gitweb copying mercurial/templates/gitweb/changelog.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/gitweb copying mercurial/templates/gitweb/search.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/gitweb copying mercurial/templates/gitweb/notfound.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/gitweb copying mercurial/templates/gitweb/header.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/gitweb creating build-2.6/lib.linux-sparc64-2.6/mercurial/templates/paper copying mercurial/templates/paper/filelog.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/paper copying mercurial/templates/paper/error.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/paper copying mercurial/templates/paper/shortlog.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/paper copying mercurial/templates/paper/tags.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/paper copying mercurial/templates/paper/graph.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/paper copying mercurial/templates/paper/index.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/paper copying mercurial/templates/paper/filediff.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/paper copying mercurial/templates/paper/help.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/paper copying mercurial/templates/paper/map -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/paper copying mercurial/templates/paper/branches.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/paper copying mercurial/templates/paper/helptopics.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/paper copying mercurial/templates/paper/shortlogentry.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/paper copying mercurial/templates/paper/fileannotate.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/paper copying mercurial/templates/paper/changeset.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/paper copying mercurial/templates/paper/filerevision.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/paper copying mercurial/templates/paper/manifest.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/paper copying mercurial/templates/paper/footer.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/paper copying mercurial/templates/paper/search.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/paper copying mercurial/templates/paper/notfound.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/paper copying mercurial/templates/paper/filelogentry.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/paper copying mercurial/templates/paper/header.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/paper creating build-2.6/lib.linux-sparc64-2.6/mercurial/templates/coal copying mercurial/templates/coal/map -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/coal copying mercurial/templates/coal/header.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/coal creating build-2.6/lib.linux-sparc64-2.6/mercurial/templates/monoblue copying mercurial/templates/monoblue/filelog.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/monoblue copying mercurial/templates/monoblue/error.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/monoblue copying mercurial/templates/monoblue/changelogentry.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/monoblue copying mercurial/templates/monoblue/shortlog.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/monoblue copying mercurial/templates/monoblue/tags.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/monoblue copying mercurial/templates/monoblue/graph.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/monoblue copying mercurial/templates/monoblue/index.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/monoblue copying mercurial/templates/monoblue/filediff.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/monoblue copying mercurial/templates/monoblue/help.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/monoblue copying mercurial/templates/monoblue/summary.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/monoblue copying mercurial/templates/monoblue/map -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/monoblue copying mercurial/templates/monoblue/branches.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/monoblue copying mercurial/templates/monoblue/helptopics.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/monoblue copying mercurial/templates/monoblue/fileannotate.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/monoblue copying mercurial/templates/monoblue/changeset.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/monoblue copying mercurial/templates/monoblue/filerevision.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/monoblue copying mercurial/templates/monoblue/manifest.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/monoblue copying mercurial/templates/monoblue/footer.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/monoblue copying mercurial/templates/monoblue/changelog.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/monoblue copying mercurial/templates/monoblue/search.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/monoblue copying mercurial/templates/monoblue/notfound.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/monoblue copying mercurial/templates/monoblue/header.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/monoblue creating build-2.6/lib.linux-sparc64-2.6/mercurial/templates/spartan copying mercurial/templates/spartan/filelog.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/spartan copying mercurial/templates/spartan/error.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/spartan copying mercurial/templates/spartan/changelogentry.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/spartan copying mercurial/templates/spartan/shortlog.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/spartan copying mercurial/templates/spartan/tags.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/spartan copying mercurial/templates/spartan/graph.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/spartan copying mercurial/templates/spartan/index.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/spartan copying mercurial/templates/spartan/filediff.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/spartan copying mercurial/templates/spartan/map -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/spartan copying mercurial/templates/spartan/branches.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/spartan copying mercurial/templates/spartan/shortlogentry.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/spartan copying mercurial/templates/spartan/fileannotate.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/spartan copying mercurial/templates/spartan/changeset.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/spartan copying mercurial/templates/spartan/filerevision.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/spartan copying mercurial/templates/spartan/manifest.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/spartan copying mercurial/templates/spartan/footer.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/spartan copying mercurial/templates/spartan/changelog.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/spartan copying mercurial/templates/spartan/search.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/spartan copying mercurial/templates/spartan/notfound.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/spartan copying mercurial/templates/spartan/filelogentry.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/spartan copying mercurial/templates/spartan/header.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/spartan creating build-2.6/lib.linux-sparc64-2.6/mercurial/templates/rss copying mercurial/templates/rss/filelog.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/rss copying mercurial/templates/rss/error.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/rss copying mercurial/templates/rss/changelogentry.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/rss copying mercurial/templates/rss/tags.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/rss copying mercurial/templates/rss/map -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/rss copying mercurial/templates/rss/changelog.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/rss copying mercurial/templates/rss/tagentry.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/rss copying mercurial/templates/rss/filelogentry.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/rss copying mercurial/templates/rss/header.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/rss creating build-2.6/lib.linux-sparc64-2.6/mercurial/templates/raw copying mercurial/templates/raw/error.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/raw copying mercurial/templates/raw/index.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/raw copying mercurial/templates/raw/filediff.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/raw copying mercurial/templates/raw/map -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/raw copying mercurial/templates/raw/fileannotate.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/raw copying mercurial/templates/raw/changeset.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/raw copying mercurial/templates/raw/manifest.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/raw copying mercurial/templates/raw/notfound.tmpl -> build-2.6/lib.linux-sparc64-2.6/mercurial/templates/raw warning: hgbuildpy: byte-compiling is disabled, skipping. running build_ext building 'mercurial.base85' extension creating build-2.6/temp.linux-sparc64-2.6 creating build-2.6/temp.linux-sparc64-2.6/mercurial sparc-unknown-linux-gnu-gcc -pthread -O2 -mcpu=ultrasparc -pipe -ggdb -fno-strict-aliasing -fPIC -I/usr/include/python2.6 -c mercurial/base85.c -o build-2.6/temp.linux-sparc64-2.6/mercurial/base85.o sparc-unknown-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,--as-needed -O2 -mcpu=ultrasparc -pipe -ggdb -fno-strict-aliasing build-2.6/temp.linux-sparc64-2.6/mercurial/base85.o -L/usr/lib32 -lpython2.6 -o build-2.6/lib.linux-sparc64-2.6/mercurial/base85.so building 'mercurial.bdiff' extension sparc-unknown-linux-gnu-gcc -pthread -O2 -mcpu=ultrasparc -pipe -ggdb -fno-strict-aliasing -fPIC -I/usr/include/python2.6 -c mercurial/bdiff.c -o build-2.6/temp.linux-sparc64-2.6/mercurial/bdiff.o sparc-unknown-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,--as-needed -O2 -mcpu=ultrasparc -pipe -ggdb -fno-strict-aliasing build-2.6/temp.linux-sparc64-2.6/mercurial/bdiff.o -L/usr/lib32 -lpython2.6 -o build-2.6/lib.linux-sparc64-2.6/mercurial/bdiff.so building 'mercurial.diffhelpers' extension sparc-unknown-linux-gnu-gcc -pthread -O2 -mcpu=ultrasparc -pipe -ggdb -fno-strict-aliasing -fPIC -I/usr/include/python2.6 -c mercurial/diffhelpers.c -o build-2.6/temp.linux-sparc64-2.6/mercurial/diffhelpers.o sparc-unknown-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,--as-needed -O2 -mcpu=ultrasparc -pipe -ggdb -fno-strict-aliasing build-2.6/temp.linux-sparc64-2.6/mercurial/diffhelpers.o -L/usr/lib32 -lpython2.6 -o build-2.6/lib.linux-sparc64-2.6/mercurial/diffhelpers.so building 'mercurial.mpatch' extension sparc-unknown-linux-gnu-gcc -pthread -O2 -mcpu=ultrasparc -pipe -ggdb -fno-strict-aliasing -fPIC -I/usr/include/python2.6 -c mercurial/mpatch.c -o build-2.6/temp.linux-sparc64-2.6/mercurial/mpatch.o sparc-unknown-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,--as-needed -O2 -mcpu=ultrasparc -pipe -ggdb -fno-strict-aliasing build-2.6/temp.linux-sparc64-2.6/mercurial/mpatch.o -L/usr/lib32 -lpython2.6 -o build-2.6/lib.linux-sparc64-2.6/mercurial/mpatch.so building 'mercurial.parsers' extension sparc-unknown-linux-gnu-gcc -pthread -O2 -mcpu=ultrasparc -pipe -ggdb -fno-strict-aliasing -fPIC -I/usr/include/python2.6 -c mercurial/parsers.c -o build-2.6/temp.linux-sparc64-2.6/mercurial/parsers.o sparc-unknown-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,--as-needed -O2 -mcpu=ultrasparc -pipe -ggdb -fno-strict-aliasing build-2.6/temp.linux-sparc64-2.6/mercurial/parsers.o -L/usr/lib32 -lpython2.6 -o build-2.6/lib.linux-sparc64-2.6/mercurial/parsers.so building 'mercurial.osutil' extension sparc-unknown-linux-gnu-gcc -pthread -O2 -mcpu=ultrasparc -pipe -ggdb -fno-strict-aliasing -fPIC -I/usr/include/python2.6 -c mercurial/osutil.c -o build-2.6/temp.linux-sparc64-2.6/mercurial/osutil.o sparc-unknown-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,--as-needed -O2 -mcpu=ultrasparc -pipe -ggdb -fno-strict-aliasing build-2.6/temp.linux-sparc64-2.6/mercurial/osutil.o -L/usr/lib32 -lpython2.6 -o build-2.6/lib.linux-sparc64-2.6/mercurial/osutil.so building 'hgext.inotify.linux._inotify' extension creating build-2.6/temp.linux-sparc64-2.6/hgext creating build-2.6/temp.linux-sparc64-2.6/hgext/inotify creating build-2.6/temp.linux-sparc64-2.6/hgext/inotify/linux sparc-unknown-linux-gnu-gcc -pthread -O2 -mcpu=ultrasparc -pipe -ggdb -fno-strict-aliasing -fPIC -Imercurial -I/usr/include/python2.6 -c hgext/inotify/linux/_inotify.c -o build-2.6/temp.linux-sparc64-2.6/hgext/inotify/linux/_inotify.o sparc-unknown-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,--as-needed -O2 -mcpu=ultrasparc -pipe -ggdb -fno-strict-aliasing build-2.6/temp.linux-sparc64-2.6/hgext/inotify/linux/_inotify.o -L/usr/lib32 -lpython2.6 -o build-2.6/lib.linux-sparc64-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-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-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 ' - - $ 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 ' - - $ 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 ' - 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 - 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 1 - other 2 - - other 3 - - 0 1e4e1b8f71e0 1970-01-12 13:46 +0000 User Name - 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 - 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 1 - other 2 - - other 3 - - 0:-1,-1 1e4e1b8f71e0 1970-01-12 13:46 +0000 User Name - line 1 - line 2 - - -Test xml styles: - - $ hg log --style xml - - - - tip - test - 2020-01-01T10:01:00+00:00 - third - - - - User Name - 1970-01-12T13:46:40+00:00 - second - - - - - person - 1970-01-18T08:40:01+00:00 - merge - - - - person - 1970-01-18T08:40:00+00:00 - new head - - - foo - person - 1970-01-17T04:53:20+00:00 - new branch - - - person - 1970-01-16T01:06:40+00:00 - no user, no domain - - - other - 1970-01-14T21:20:00+00:00 - no person - - - A. N. Other - 1970-01-13T17:33:20+00:00 - other 1 - other 2 - - other 3 - - - User Name - 1970-01-12T13:46:40+00:00 - line 1 - line 2 - - - - $ hg log -v --style xml - - - - tip - test - 2020-01-01T10:01:00+00:00 - third - - fourth - third - second - - - fourth - - - - - User Name - 1970-01-12T13:46:40+00:00 - second - - second - - - - - - person - 1970-01-18T08:40:01+00:00 - merge - - - - - - person - 1970-01-18T08:40:00+00:00 - new head - - d - - - - foo - person - 1970-01-17T04:53:20+00:00 - new branch - - - - - person - 1970-01-16T01:06:40+00:00 - no user, no domain - - c - - - - other - 1970-01-14T21:20:00+00:00 - no person - - c - - - - A. N. Other - 1970-01-13T17:33:20+00:00 - other 1 - other 2 - - other 3 - - b - - - - User Name - 1970-01-12T13:46:40+00:00 - line 1 - line 2 - - a - - - - - $ hg log --debug --style xml - - - - tip - - - test - 2020-01-01T10:01:00+00:00 - third - - fourth - third - second - - - fourth - - default - - - - - User Name - 1970-01-12T13:46:40+00:00 - second - - second - - default - - - - - person - 1970-01-18T08:40:01+00:00 - merge - - - default - - - - - person - 1970-01-18T08:40:00+00:00 - new head - - d - - default - - - foo - - - person - 1970-01-17T04:53:20+00:00 - new branch - - - foo - - - - - person - 1970-01-16T01:06:40+00:00 - no user, no domain - - c - - default - - - - - other - 1970-01-14T21:20:00+00:00 - no person - - c - - default - - - - - A. N. Other - 1970-01-13T17:33:20+00:00 - other 1 - other 2 - - other 3 - - b - - default - - - - - User Name - 1970-01-12T13:46:40+00:00 - line 1 - line 2 - - a - - default - - - - -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 - - * fourth, second, third: - third - [95c24699272e] [tip] - - 1970-01-12 User Name - - * second: - second - [29114dbae42b] - - 1970-01-18 person - - * merge - [c7b487c6c50e] - - * d: - new head - [13207e5a10d9] - - 1970-01-17 person - - * new branch - [32a18f097fcc] - - 1970-01-16 person - - * c: - no user, no domain - [10e46f2dcbf4] - - 1970-01-14 other - - * c: - no person - [97054abb4ab8] - - 1970-01-13 A. N. Other - - * b: - other 1 other 2 - - other 3 - [b608e9d1a3f0] - - 1970-01-12 User Name - - * a: - line 1 line 2 - [1e4e1b8f71e0] - - -Issue2130: xml output for 'hg heads' is malformed - - $ hg heads --style changelog - 2020-01-01 test - - * fourth, second, third: - third - [95c24699272e] [tip] - - 1970-01-18 person - - * merge - [c7b487c6c50e] - - 1970-01-17 person - - * new branch - [32a18f097fcc] - - -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 - author: person - author: person - author: person - author: person - author: other@place - author: A. N. Other - author: User Name - author--verbose: test - author--verbose: User Name - author--verbose: person - author--verbose: person - author--verbose: person - author--verbose: person - author--verbose: other@place - author--verbose: A. N. Other - author--verbose: User Name - author--debug: test - author--debug: User Name - author--debug: person - author--debug: person - author--debug: person - author--debug: person - author--debug: other@place - author--debug: A. N. Other - author--debug: User Name - 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 '\n' - - - - - - - - - - - $ 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 < changeset = 'test {rev}:{node|short}\n' - > EOF - - $ HOME=`pwd`/home; export HOME - - $ cat > latesttag/.hg/hgrc < [ui] - > style = ~/styles/teststyle - > EOF - - $ hg -R latesttag tip - test 10:dee8f28249af - -Test recursive showlist template (issue1989): - - $ cat > style1989 < 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.............ss..............s.ss..s........s............. 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-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 < 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 < 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 < 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 - < 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 < 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 < 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 < 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 < 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 < 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 < 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 < From: 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 - < # 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-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 <> $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 <> $HGRCPATH - > [keyword] - > ** = - > b = ignore - > i = ignore - > [hooks] - > EOF - $ cp $HGRCPATH $HGRCPATH.nohooks - > cat <> $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 ' - 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 <> $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: (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 - X-Hg-Notification: changeset ef63ca68695b - Message-Id: (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 ' - 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< 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< 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< 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< 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 - # 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 ' - 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 <>$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 <> 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 ' - 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 : 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 : 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 : 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 : 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 <> .hg/hgrc - > [paths] - > default = ../Test - > EOF - $ hg incoming - comparing with $TESTTMP/Test - searching for changes - changeset: 2:bb948857c743 - tag: tip - user: User Name - 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 ' - 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 : 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 ' - 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 : 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 : 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 - # 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 : 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-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 - - $ 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 - changeset: 6:2404bbcab562 - tag: tip - user: test - date: Thu Jan 01 00:00:01 1970 +0000 - summary: b1.1 - - diff -r 302e9dd6890d -r 2404bbcab562 b1 - --- a/b1 Thu Jan 01 00:00:01 1970 +0000 - +++ b/b1 Thu Jan 01 00:00:01 1970 +0000 - @@ -1,1 +1,2 @@ - b1 - +postm - - changeset: 5:302e9dd6890d - parent: 3:e62f78d544b4 - parent: 4:ddb82e70d1a1 - user: test - date: Thu Jan 01 00:00:01 1970 +0000 - summary: m12 - - diff -r e62f78d544b4 -r 302e9dd6890d b2 - --- /dev/null Thu Jan 01 00:00:00 1970 +0000 - +++ b/b2 Thu Jan 01 00:00:01 1970 +0000 - @@ -0,0 +1,1 @@ - +b2 - - - -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 " - adding a - $ echo b > b - $ hg ci -A -m "b" -u "User Two " - adding b - - $ hg log -u "User One " - changeset: 0:29a4c94f1924 - user: User One - 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 - date: Thu Jan 01 00:00:00 1970 +0000 - summary: b - - changeset: 0:29a4c94f1924 - user: User One - 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-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 < '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-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 - a.patch: +1 +2 -3 - b.patch: +2 - c.patch: unguarded - -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 new.patch - 1 G b.patch - 2 A c.patch - 3 U d.patch - - $ 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 - b.patch !.... 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-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.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; ; qinit -c' - % qinit; ; 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 - A .hgignore - A A - A B - A series - ? flaf - -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.*) (re) - \+\+\+ b/a\t(?P.*) (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.*) (re) - \+\+\+ b/a\t(?P.*) (re) - @@ -1,1 +1,2 @@ - a - +a - diff -r cb9a9f314b8b b/f - --- /dev/null\t(?P.*) (re) - \+\+\+ b/b/f\t(?P.*) (re) - @@ -0,0 +1,1 @@ - +f - -hg qrefresh . - - $ hg qrefresh . - $ cat ../.hg/patches/foo - foo - - diff -r cb9a9f314b8b b/f - --- /dev/null\t(?P.*) (re) - \+\+\+ b/b/f\t(?P.*) (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 < [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 < [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 < 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-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 .. !.........................s...... 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,7 @@ $ hg init version2 $ hg -R version2 pull source1 & $ sleep 1 + $ hg clone --pull -U version2 corrupted pulling from source1 requesting all changes adding changesets @@ -23,7 +24,6 @@ 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 !.............................. 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 < 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-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 !................................. Skipped test-convert-bzr-merges.t: missing feature: Canonical's Bazaar client Skipped test-gendoc.t: missing feature: Docutils text processing library 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-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-bheads.t: output changed and returned error code -15 Failed test-keyword.t: output changed and returned error code -15 Failed test-mq.t: output changed and returned error code -15 Failed test-command-template.t: output changed and returned error code -15 Failed test-fetch.t: output changed and returned error code -15 Failed test-import.t: output changed and returned error code -15 Failed test-log.t: output changed and returned error code -15 Failed test-mq-header-from.t: output changed and returned error code -15 Failed test-push-warn.t: output changed and returned error code -15 Failed test-mq-guards.t: output changed and returned error code -15 Failed test-mv-cp-st-diff.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-merge-tools.t: output changed and returned error code -15 Failed test-mq-header-date.t: output changed and returned error code -15 Failed test-pull-pull-corruption2.t: output changed # Ran 373 tests, 12 skipped, 16 failed. * ERROR: dev-vcs/mercurial-1.7 failed: * Testing failed with CPython 2.6 in testing() function * * Call stack: * ebuild.sh, line 56: Called src_test * environment, line 4986: Called python_execute_function 'testing' * environment, line 3662: Called die * The specific snippet of code: * die "${failure_message}"; * * If you need support, post the output of 'emerge --info =dev-vcs/mercurial-1.7', * the complete build log and the output of 'emerge -pqv =dev-vcs/mercurial-1.7'. * The complete build log is located at '/var/tmp/portage/dev-vcs/mercurial-1.7/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/dev-vcs/mercurial-1.7/temp/environment'. * S: '/var/tmp/portage/dev-vcs/mercurial-1.7/work/mercurial-1.7'