--- a/README Tue Jun 30 23:16:38 2009 +0200
+++ b/README Tue Jun 30 23:17:57 2009 +0200
@@ -5,6 +5,6 @@
$ hg debuginstall # sanity-check setup
$ hg # see help
-See http://www.selenic.com/mercurial/ for detailed installation
+See http://mercurial.selenic.com/ for detailed installation
instructions, platform-specific notes, and Mercurial user information.
--- a/contrib/macosx/Readme.html Tue Jun 30 23:16:38 2009 +0200
+++ b/contrib/macosx/Readme.html Tue Jun 30 23:17:57 2009 +0200
@@ -25,13 +25,13 @@
<p class="p2"><br></p>
<p class="p1"><b>Documentation</b></p>
<p class="p2"><br></p>
-<p class="p3">Visit the <a href="http://www.selenic.com/mercurial">Mercurial web site and wiki</a></p>
+<p class="p3">Visit the <a href="http://mercurial.selenic.com/">Mercurial web site and wiki</a></p>
<p class="p2"><br></p>
<p class="p3">There's also a free book, <a href="http://hgbook.red-bean.com/">Distributed revision control with Mercurial</a></p>
<p class="p2"><br></p>
<p class="p1"><b>Reporting problems</b></p>
<p class="p2"><br></p>
<p class="p3">If you run into any problems, please file a bug online:</p>
-<p class="p3"><a href="http://www.selenic.com/mercurial/bts">http://www.selenic.com/mercurial/bts</a></p>
+<p class="p3"><a href="http://mercurial.selenic.com/bts/">http://mercurial.selenic.com/bts/</a></p>
</body>
</html>
--- a/contrib/macosx/Welcome.html Tue Jun 30 23:16:38 2009 +0200
+++ b/contrib/macosx/Welcome.html Tue Jun 30 23:17:57 2009 +0200
@@ -11,10 +11,10 @@
</style>
</head>
<body>
-<p class="p1">This is a prepackaged release of <a href="http://www.selenic.com/mercurial">Mercurial</a> for Mac OS X.</p>
+<p class="p1">This is a prepackaged release of <a href="http://mercurial.selenic.com/">Mercurial</a> for Mac OS X.</p>
<p class="p2"><br></p>
<br>
<p>
-Please be sure to read the latest <a href="http://www.selenic.com/mercurial/wiki/index.cgi/WhatsNew">release notes</a>.</p>
+Please be sure to read the latest <a href="http://mercurial.selenic.com/wiki/WhatsNew">release notes</a>.</p>
</body>
</html>
--- a/contrib/mercurial.spec Tue Jun 30 23:16:38 2009 +0200
+++ b/contrib/mercurial.spec Tue Jun 30 23:17:57 2009 +0200
@@ -2,10 +2,10 @@
Name: mercurial
Version: snapshot
Release: 0
-License: GPL
+License: GPLv2
Group: Development/Tools
-Source: http://www.selenic.com/mercurial/release/%{name}-%{version}.tar.gz
-URL: http://www.selenic.com/mercurial
+URL: http://mercurial.selenic.com/
+Source0: http://mercurial.selenic.com/release/%{name}-%{version}.tar.gz
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
# From the README:
@@ -18,10 +18,10 @@
# run-time dependency.
#
BuildRequires: python >= 2.4, python-devel, make, gcc, asciidoc, xmlto
+Provides: hg = %{version}-%{release}
%define pythonver %(python -c 'import sys;print ".".join(map(str, sys.version_info[:2]))')
-%define pythonlib %{_libdir}/python%{pythonver}/site-packages/%{name}
-%define hgext %{_libdir}/python%{pythonver}/site-packages/hgext
+%define emacs_lispdir %{_datadir}/emacs/site-lisp
%description
Mercurial is a fast, lightweight source control management system designed
@@ -45,23 +45,26 @@
bash_completion_dir=$RPM_BUILD_ROOT%{_sysconfdir}/bash_completion.d
mkdir -p $bash_completion_dir
-install contrib/bash_completion $bash_completion_dir/mercurial.sh
+install -m 644 contrib/bash_completion $bash_completion_dir/mercurial.sh
zsh_completion_dir=$RPM_BUILD_ROOT%{_datadir}/zsh/site-functions
mkdir -p $zsh_completion_dir
-install contrib/zsh_completion $zsh_completion_dir/_mercurial
+install -m 644 contrib/zsh_completion $zsh_completion_dir/_mercurial
-lisp_dir=$RPM_BUILD_ROOT%{_datadir}/emacs/site-lisp
-mkdir -p $lisp_dir
-install contrib/mercurial.el $lisp_dir
+mkdir -p $RPM_BUILD_ROOT%{emacs_lispdir}
+install contrib/mercurial.el $RPM_BUILD_ROOT%{emacs_lispdir}
+
+mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/mercurial/hgrc.d
+install contrib/mergetools.hgrc $RPM_BUILD_ROOT%{_sysconfdir}/mercurial/hgrc.d/mergetools.rc
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(-,root,root,-)
-%doc CONTRIBUTORS COPYING doc/README doc/hg*.txt doc/hg*.html doc/ja *.cgi
-%{_mandir}/man?/hg*.gz
+%doc CONTRIBUTORS COPYING doc/README doc/hg*.txt doc/hg*.html doc/ja *.cgi contrib/*.fcgi
+%doc %attr(644,root,root) %{_mandir}/man?/hg*.gz
+%doc %attr(644,root,root) contrib/*.svg contrib/sample.hgrc
%{_sysconfdir}/bash_completion.d/mercurial.sh
%{_datadir}/zsh/site-functions/_mercurial
%{_datadir}/emacs/site-lisp/mercurial.el
@@ -71,8 +74,13 @@
%{_bindir}/hg-viz
%{_bindir}/git-rev-tree
%{_bindir}/mercurial-convert-repo
+%dir %{_sysconfdir}/bash_completion.d/
+%dir %{_datadir}/zsh/site-functions/
+%dir %{_sysconfdir}/mercurial
+%dir %{_sysconfdir}/mercurial/hgrc.d
+%config(noreplace) %{_sysconfdir}/mercurial/hgrc.d/mergetools.rc
%if "%{?pythonver}" != "2.4"
%{_libdir}/python%{pythonver}/site-packages/%{name}-*-py%{pythonver}.egg-info
%endif
-%{pythonlib}
-%{hgext}
+%{_libdir}/python%{pythonver}/site-packages/%{name}
+%{_libdir}/python%{pythonver}/site-packages/hgext
--- a/contrib/vim/hgcommand.vim Tue Jun 30 23:16:38 2009 +0200
+++ b/contrib/vim/hgcommand.vim Tue Jun 30 23:17:57 2009 +0200
@@ -1226,7 +1226,7 @@
Author: Mathieu Clabaut <mathieu.clabaut@gmail.com>
Credits: Bob Hiestand <bob.hiestand@gmail.com>
-Mercurial: http://www.selenic.com/mercurial
+Mercurial: http://mercurial.selenic.com/
Mercurial (noted Hg) is a fast, lightweight Source Control Management
system designed for efficient handling of very large distributed projects.
--- a/contrib/win32/ReadMe.html Tue Jun 30 23:16:38 2009 +0200
+++ b/contrib/win32/ReadMe.html Tue Jun 30 23:17:57 2009 +0200
@@ -49,7 +49,7 @@
<p>
For documentation, please visit the <a
- href="http://www.selenic.com/mercurial">Mercurial web site</a>.
+ href="http://mercurial.selenic.com/">Mercurial web site</a>.
You can also download a free book, <a
href="http://hgbook.red-bean.com/">Mercurial: The Definitive
Guide</a>.
@@ -100,7 +100,7 @@
By default, Mercurial will use the merge program defined by the
<tt>HGMERGE</tt> environment variable, or uses the one defined
in the <tt>mercurial.ini</tt> file. (see <a
- href="http://www.selenic.com/mercurial/wiki/index.cgi/MergeProgram">MergeProgram</a>
+ href="http://mercurial.selenic.com/wiki/MergeProgram">MergeProgram</a>
on the Mercurial Wiki for more information)
</p>
@@ -108,9 +108,9 @@
<p>
Before you report any problems, please consult the <a
- href="http://www.selenic.com/mercurial">Mercurial web site</a>
+ href="http://mercurial.selenic.com/">Mercurial web site</a>
and see if your question is already in our list of <a
- href="http://www.selenic.com/mercurial/wiki/index.cgi/FAQ">Frequently
+ href="http://mercurial.selenic.com/wiki/FAQ">Frequently
Answered Questions</a> (the "FAQ").
</p>
--- a/contrib/win32/mercurial.iss Tue Jun 30 23:16:38 2009 +0200
+++ b/contrib/win32/mercurial.iss Tue Jun 30 23:17:57 2009 +0200
@@ -8,9 +8,9 @@
LicenseFile=COPYING
ShowLanguageDialog=yes
AppPublisher=Matt Mackall and others
-AppPublisherURL=http://www.selenic.com/mercurial
-AppSupportURL=http://www.selenic.com/mercurial
-AppUpdatesURL=http://www.selenic.com/mercurial
+AppPublisherURL=http://mercurial.selenic.com/
+AppSupportURL=http://mercurial.selenic.com/
+AppUpdatesURL=http://mercurial.selenic.com/
AppID={{4B95A5F1-EF59-4B08-BED8-C891C46121B3}
AppContact=mercurial@selenic.com
OutputBaseFilename=Mercurial-snapshot
@@ -51,7 +51,7 @@
Source: COPYING; DestDir: {app}; DestName: Copying.txt
[INI]
-Filename: {app}\Mercurial.url; Section: InternetShortcut; Key: URL; String: http://www.selenic.com/mercurial/
+Filename: {app}\Mercurial.url; Section: InternetShortcut; Key: URL; String: http://mercurial.selenic.com/
[UninstallDelete]
Type: files; Name: {app}\Mercurial.url
--- a/contrib/win32/postinstall.txt Tue Jun 30 23:16:38 2009 +0200
+++ b/contrib/win32/postinstall.txt Tue Jun 30 23:17:57 2009 +0200
@@ -6,4 +6,4 @@
Also check the release notes at:
- http://www.selenic.com/mercurial/wiki/index.cgi/WhatsNew
+ http://mercurial.selenic.com/wiki/WhatsNew
--- a/contrib/zsh_completion Tue Jun 30 23:16:38 2009 +0200
+++ b/contrib/zsh_completion Tue Jun 30 23:17:57 2009 +0200
@@ -13,13 +13,25 @@
# autoload -U compinit
# compinit
#
-# Copyright (C) 2005-6 Steve Borho
-# Copyright (C) 2006-8 Brendan Cully <brendan@kublai.com>
+# Copyright (C) 2005, 2006 Steve Borho <steve@borho.org>
+# Copyright (C) 2006, 2007, 2008 Brendan Cully <brendan@kublai.com>
+#
+# Permission is hereby granted, without written agreement and without
+# licence or royalty fees, to use, copy, modify, and distribute this
+# software and to distribute modified versions of this software for any
+# purpose, provided that the above copyright notice and the following
+# two paragraphs appear in all copies of this software.
#
-# This is free software; you can redistribute it and/or modify it under
-# the terms of the GNU General Public License as published by the Free
-# Software Foundation; either version 2 of the License, or (at your
-# option) any later version.
+# In no event shall the authors be liable to any party for direct,
+# indirect, special, incidental, or consequential damages arising out of
+# the use of this software and its documentation, even if the authors
+# have been advised of the possibility of such damage.
+#
+# The authors specifically disclaim any warranties, including, but not
+# limited to, the implied warranties of merchantability and fitness for
+# a particular purpose. The software provided hereunder is on an "as
+# is" basis, and the authors have no obligation to provide maintenance,
+# support, updates, enhancements, or modifications.
emulate -LR zsh
setopt extendedglob
--- a/doc/hg.1.txt Tue Jun 30 23:16:38 2009 +0200
+++ b/doc/hg.1.txt Tue Jun 30 23:17:57 2009 +0200
@@ -75,7 +75,7 @@
RESOURCES
---------
-http://selenic.com/mercurial[Main Web Site]
+http://mercurial.selenic.com/[Main Web Site]
http://selenic.com/hg[Source code repository]
--- a/doc/ja/hg.1.ja.txt Tue Jun 30 23:16:38 2009 +0200
+++ b/doc/ja/hg.1.ja.txt Tue Jun 30 23:17:57 2009 +0200
@@ -852,7 +852,7 @@
情報源
---
-http://selenic.com/mercurial[主なウェブサイト]
+http://mercurial.selenic.com/[主なウェブサイト]
http://www.serpentine.com/mercurial[Wiki サイト]
--- a/hgext/acl.py Tue Jun 30 23:16:38 2009 +0200
+++ b/hgext/acl.py Tue Jun 30 23:17:57 2009 +0200
@@ -6,7 +6,7 @@
# GNU General Public License version 2, incorporated herein by reference.
#
-'''control access to a repository using simple hooks
+'''hooks for controlling repository access
This hook makes it possible to allow or deny write access to portions
of a repository when receiving incoming changesets.
--- a/hgext/bookmarks.py Tue Jun 30 23:16:38 2009 +0200
+++ b/hgext/bookmarks.py Tue Jun 30 23:17:57 2009 +0200
@@ -257,14 +257,14 @@
node = super(bookmark_repo, self).commit(*k, **kw)
if node is None:
return None
- parents = repo.changelog.parents(node)
+ parents = self.changelog.parents(node)
if parents[1] == nullid:
parents = (parents[0],)
- marks = parse(repo)
+ marks = parse(self)
update = False
for mark, n in marks.items():
if ui.configbool('bookmarks', 'track.current'):
- if mark == current(repo) and n in parents:
+ if mark == current(self) and n in parents:
marks[mark] = node
update = True
else:
@@ -272,28 +272,28 @@
marks[mark] = node
update = True
if update:
- write(repo, marks)
+ write(self, marks)
return node
finally:
wlock.release()
def addchangegroup(self, source, srctype, url, emptyok=False):
- parents = repo.dirstate.parents()
+ parents = self.dirstate.parents()
result = super(bookmark_repo, self).addchangegroup(
source, srctype, url, emptyok)
if result > 1:
# We have more heads than before
return result
- node = repo.changelog.tip()
- marks = parse(repo)
+ node = self.changelog.tip()
+ marks = parse(self)
update = False
for mark, n in marks.items():
if n in parents:
marks[mark] = node
update = True
if update:
- write(repo, marks)
+ write(self, marks)
return result
def tags(self):
@@ -302,7 +302,7 @@
return self.tagscache
tagscache = super(bookmark_repo, self).tags()
- tagscache.update(parse(repo))
+ tagscache.update(parse(self))
return tagscache
repo.__class__ = bookmark_repo
--- a/hgext/bugzilla.py Tue Jun 30 23:16:38 2009 +0200
+++ b/hgext/bugzilla.py Tue Jun 30 23:17:57 2009 +0200
@@ -5,7 +5,7 @@
# This software may be used and distributed according to the terms of the
# GNU General Public License version 2, incorporated herein by reference.
-'''integrate Mercurial with a Bugzilla bug tracker
+'''hooks for integrating with the Bugzilla bug tracker
This hook extension adds comments on bugs in Bugzilla when changesets
that refer to bugs by Bugzilla ID are seen. The hook does not change
--- a/hgext/children.py Tue Jun 30 23:16:38 2009 +0200
+++ b/hgext/children.py Tue Jun 30 23:17:57 2009 +0200
@@ -8,7 +8,7 @@
# This software may be used and distributed according to the terms of the
# GNU General Public License version 2, incorporated herein by reference.
-'''display children changesets'''
+'''command to display child changesets'''
from mercurial import cmdutil
from mercurial.commands import templateopts
--- a/hgext/churn.py Tue Jun 30 23:16:38 2009 +0200
+++ b/hgext/churn.py Tue Jun 30 23:17:57 2009 +0200
@@ -6,7 +6,7 @@
# This software may be used and distributed according to the terms of the
# GNU General Public License version 2, incorporated herein by reference.
-'''display statistics about repository history'''
+'''command to display statistics about repository history'''
from mercurial.i18n import _
from mercurial import patch, cmdutil, util, templater
--- a/hgext/color.py Tue Jun 30 23:16:38 2009 +0200
+++ b/hgext/color.py Tue Jun 30 23:17:57 2009 +0200
@@ -60,7 +60,7 @@
import os, sys
-from mercurial import cmdutil, commands, extensions
+from mercurial import cmdutil, commands, extensions, error
from mercurial.i18n import _
# start and stop parameters for effects
@@ -220,18 +220,30 @@
'changed': ['white'],
'trailingwhitespace': ['bold', 'red_background']}
+_ui = None
+
def uisetup(ui):
'''Initialize the extension.'''
+ global _ui
+ _ui = ui
_setupcmd(ui, 'diff', commands.table, colordiff, _diff_effects)
_setupcmd(ui, 'incoming', commands.table, None, _diff_effects)
_setupcmd(ui, 'log', commands.table, None, _diff_effects)
_setupcmd(ui, 'outgoing', commands.table, None, _diff_effects)
_setupcmd(ui, 'tip', commands.table, None, _diff_effects)
_setupcmd(ui, 'status', commands.table, colorstatus, _status_effects)
+
+def extsetup():
try:
mq = extensions.find('mq')
- _setupcmd(ui, 'qdiff', mq.cmdtable, colordiff, _diff_effects)
- _setupcmd(ui, 'qseries', mq.cmdtable, colorqseries, _patch_effects)
+ try:
+ # If we are loaded after mq, we must wrap commands.table
+ _setupcmd(_ui, 'qdiff', commands.table, colordiff, _diff_effects)
+ _setupcmd(_ui, 'qseries', commands.table, colorqseries, _patch_effects)
+ except error.UnknownCommand:
+ # Otherwise we wrap mq.cmdtable
+ _setupcmd(_ui, 'qdiff', mq.cmdtable, colordiff, _diff_effects)
+ _setupcmd(_ui, 'qseries', mq.cmdtable, colorqseries, _patch_effects)
except KeyError:
# The mq extension is not enabled
pass
@@ -261,6 +273,15 @@
])
for status in effectsmap:
- effects = ui.configlist('color', cmd + '.' + status)
+ configkey = cmd + '.' + status
+ effects = ui.configlist('color', configkey)
if effects:
- effectsmap[status] = effects
+ good = []
+ for e in effects:
+ if e in _effect_params:
+ good.append(e)
+ else:
+ ui.warn(_("ignoring unknown color/effect %r "
+ "(configured in color.%s)\n")
+ % (e, configkey))
+ effectsmap[status] = good
--- a/hgext/convert/__init__.py Tue Jun 30 23:16:38 2009 +0200
+++ b/hgext/convert/__init__.py Tue Jun 30 23:17:57 2009 +0200
@@ -5,7 +5,7 @@
# This software may be used and distributed according to the terms of the
# GNU General Public License version 2, incorporated herein by reference.
-'''import from foreign VCS repositories into Mercurial'''
+'''import revisions from foreign VCS repositories into Mercurial'''
import convcmd
import cvsps
--- a/hgext/extdiff.py Tue Jun 30 23:16:38 2009 +0200
+++ b/hgext/extdiff.py Tue Jun 30 23:17:57 2009 +0200
@@ -5,7 +5,7 @@
# This software may be used and distributed according to the terms of the
# GNU General Public License version 2, incorporated herein by reference.
-'''allow external programs to compare revisions
+'''command to allow external programs to compare revisions
The `extdiff' Mercurial extension allows you to use external programs
to compare revisions, or revision with working directory. The external diff
--- a/hgext/gpg.py Tue Jun 30 23:16:38 2009 +0200
+++ b/hgext/gpg.py Tue Jun 30 23:17:57 2009 +0200
@@ -3,7 +3,7 @@
# This software may be used and distributed according to the terms of the
# GNU General Public License version 2, incorporated herein by reference.
-'''sign and verify changesets'''
+'''commands to sign and verify changesets'''
import os, tempfile, binascii
from mercurial import util, commands, match
--- a/hgext/graphlog.py Tue Jun 30 23:16:38 2009 +0200
+++ b/hgext/graphlog.py Tue Jun 30 23:17:57 2009 +0200
@@ -5,7 +5,7 @@
# This software may be used and distributed according to the terms of the
# GNU General Public License version 2, incorporated herein by reference.
-'''show revision graphs in terminals
+'''command to view revision graphs from a shell
This extension adds a --graph option to the incoming, outgoing and log
commands. When this options is given, an ASCII representation of the
--- a/hgext/hgcia.py Tue Jun 30 23:16:38 2009 +0200
+++ b/hgext/hgcia.py Tue Jun 30 23:17:57 2009 +0200
@@ -1,7 +1,7 @@
# Copyright (C) 2007-8 Brendan Cully <brendan@kublai.com>
# Published under the GNU GPL
-"""integrate Mercurial with a CIA notification service
+"""hooks for integrating with the CIA.vc notification service
This is meant to be run as a changegroup or incoming hook.
To configure it, set the following options in your hgrc:
--- a/hgext/hgk.py Tue Jun 30 23:16:38 2009 +0200
+++ b/hgext/hgk.py Tue Jun 30 23:17:57 2009 +0200
@@ -331,7 +331,7 @@
"debug-config":
(config, [], _('hg debug-config')),
"debug-merge-base":
- (base, [], _('hg debug-merge-base node node')),
+ (base, [], _('hg debug-merge-base REV REV')),
"debug-rev-parse":
(revparse,
[('', 'default', '', _('ignored'))],
@@ -342,5 +342,5 @@
('t', 'topo-order', None, _('topo-order')),
('p', 'parents', None, _('parents')),
('n', 'max-count', 0, _('max-count'))],
- _('hg debug-rev-list [options] revs')),
+ _('hg debug-rev-list [OPTION]... REV...')),
}
--- a/hgext/highlight/__init__.py Tue Jun 30 23:16:38 2009 +0200
+++ b/hgext/highlight/__init__.py Tue Jun 30 23:17:57 2009 +0200
@@ -8,7 +8,7 @@
# The original module was split in an interface and an implementation
# file to defer pygments loading and speedup extension setup.
-"""syntax highlighting for hgweb
+"""syntax highlighting for hgweb (requires Pygments)
It depends on the Pygments syntax highlighting library:
http://pygments.org/
@@ -19,8 +19,6 @@
pygments_style = <style>
The default is 'colorful'.
-
--- Adam Hupp <adam@hupp.org>
"""
import highlight
--- a/hgext/inotify/__init__.py Tue Jun 30 23:16:38 2009 +0200
+++ b/hgext/inotify/__init__.py Tue Jun 30 23:17:57 2009 +0200
@@ -6,7 +6,7 @@
# This software may be used and distributed according to the terms of the
# GNU General Public License version 2, incorporated herein by reference.
-'''accelerate status report using system level services'''
+'''accelerate status report using Linux's inotify service'''
# todo: socket permissions
@@ -107,5 +107,5 @@
('', 'daemon-pipefds', '', _('used internally by daemon mode')),
('t', 'idle-timeout', '', _('minutes to sit idle before exiting')),
('', 'pid-file', '', _('name of file to write process ID to'))],
- _('hg inserve [OPT]...')),
+ _('hg inserve [OPTION]...')),
}
--- a/hgext/inotify/server.py Tue Jun 30 23:16:38 2009 +0200
+++ b/hgext/inotify/server.py Tue Jun 30 23:17:57 2009 +0200
@@ -288,14 +288,6 @@
self.add_watch(self.repo.path, inotify.IN_DELETE)
self.check_dirstate()
- def wpath(self, evt):
- path = evt.fullpath
- if path == self.repo.root:
- return ''
- if path.startswith(self.wprefix):
- return path[len(self.wprefix):]
- raise 'wtf? ' + path
-
def dir(self, tree, path):
if path:
for name in path.split('/'):
@@ -585,7 +577,9 @@
self.ui.note(_('%s reading %d events\n') %
(self.event_time(), len(events)))
for evt in events:
- wpath = self.wpath(evt)
+ assert evt.fullpath.startswith(self.wprefix)
+ wpath = evt.fullpath[len(self.wprefix):]
+
if evt.mask & inotify.IN_UNMOUNT:
self.process_unmount(wpath, evt)
elif evt.mask & (inotify.IN_MODIFY | inotify.IN_ATTRIB):
@@ -717,6 +711,12 @@
if version != common.version:
self.ui.warn(_('received query from incompatible client '
'version %d\n') % version)
+ try:
+ # try to send back our version to the client
+ # this way, the client too is informed of the mismatch
+ sock.sendall(chr(common.version))
+ except:
+ pass
return
type = cs.read(4)
--- a/hgext/keyword.py Tue Jun 30 23:16:38 2009 +0200
+++ b/hgext/keyword.py Tue Jun 30 23:17:57 2009 +0200
@@ -15,7 +15,7 @@
# audience not running a version control system.
#
# For in-depth discussion refer to
-# <http://www.selenic.com/mercurial/wiki/index.cgi/KeywordPlan>.
+# <http://mercurial.selenic.com/wiki/KeywordPlan>.
#
# Keyword expansion is based on Mercurial's changeset template mappings.
#
@@ -281,9 +281,6 @@
Override current keyword template maps with "default" option.
'''
- def demostatus(stat):
- ui.status(_('\n\t%s\n') % stat)
-
def demoitems(section, items):
ui.write('[%s]\n' % section)
for k, v in items:
@@ -323,7 +320,7 @@
if k.endswith('keyword'):
extension = '%s = %s' % (k, v)
break
- demostatus('config using %s keyword template maps' % kwstatus)
+ ui.status(_('\n\tconfig using %s keyword template maps\n') % kwstatus)
ui.write('[extensions]\n%s\n' % extension)
demoitems('keyword', ui.configitems('keyword'))
demoitems('keywordmaps', kwmaps.iteritems())
@@ -346,7 +343,7 @@
ui.note('hg -R "%s" ci -m "%s"\n' % (tmpdir, msg))
repo.commit(text=msg)
fmt = ui.verbose and ' in %s' % path or ''
- demostatus('%s keywords expanded%s' % (kwstatus, fmt))
+ ui.status(_('\n\t%s keywords expanded%s\n') % (kwstatus, fmt))
ui.write(repo.wread(fn))
ui.debug(_('\nremoving temporary repository %s\n') % tmpdir)
shutil.rmtree(tmpdir, ignore_errors=True)
@@ -362,22 +359,40 @@
_kwfwrite(ui, repo, True, *pats, **opts)
def files(ui, repo, *pats, **opts):
- '''print files currently configured for keyword expansion
+ '''show files configured for keyword expansion
+
+ List which files in the working directory are matched by the
+ [keyword] configuration patterns.
+
+ Useful to prevent inadvertent keyword expansion and to speed up
+ execution by including only files that are actual candidates
+ for expansion.
- Crosscheck which files in working directory are potential targets
- for keyword expansion. That is, files matched by [keyword] config
- patterns but not symlinks.
+ See "hg help keyword" on how to construct patterns both for
+ inclusion and exclusion of files.
+
+ Use -u/--untracked to list untracked files as well.
+
+ With -a/--all and -v/--verbose the codes used to show the status
+ of files are:
+ K = keyword expansion candidate
+ k = keyword expansion candidate (untracked)
+ I = ignored
+ i = ignored (untracked)
'''
kwt = kwtools['templater']
status = _status(ui, repo, kwt, opts.get('untracked'), *pats, **opts)
modified, added, removed, deleted, unknown, ignored, clean = status
- files = sorted(modified + added + clean + unknown)
+ files = sorted(modified + added + clean)
wctx = repo[None]
kwfiles = [f for f in files if kwt.iskwfile(f, wctx.flags)]
+ kwuntracked = [f for f in unknown if kwt.iskwfile(f, wctx.flags)]
cwd = pats and repo.getcwd() or ''
- kwfstats = not opts.get('ignore') and (('K', kwfiles),) or ()
+ kwfstats = (not opts.get('ignore') and
+ (('K', kwfiles), ('k', kwuntracked),) or ())
if opts.get('all') or opts.get('ignore'):
- kwfstats += (('I', [f for f in files if f not in kwfiles]),)
+ kwfstats += (('I', [f for f in files if f not in kwfiles]),
+ ('i', [f for f in unknown if f not in kwuntracked]),)
for char, filenames in kwfstats:
fmt = (opts.get('all') or ui.verbose) and '%s %%s\n' % char or '%s\n'
for f in filenames:
--- a/hgext/mq.py Tue Jun 30 23:16:38 2009 +0200
+++ b/hgext/mq.py Tue Jun 30 23:17:57 2009 +0200
@@ -5,7 +5,7 @@
# This software may be used and distributed according to the terms of the
# GNU General Public License version 2, incorporated herein by reference.
-'''work with a stack of patches
+'''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
@@ -1641,11 +1641,8 @@
def delete(ui, repo, *patches, **opts):
"""remove patches from queue
- The patches must not be applied, and at least one patch is
- required.
-
- With -k/--keep, the patch files are preserved in the patch
- directory.
+ The patches must not be applied, and at least one patch is required. With
+ -k/--keep, the patch files are preserved in the patch directory.
To stop managing a patch and move it into permanent history,
use the qfinish command."""
@@ -2624,5 +2621,5 @@
"qfinish":
(finish,
[('a', 'applied', None, _('finish all applied changesets'))],
- _('hg qfinish [-a] [REV...]')),
+ _('hg qfinish [-a] [REV]...')),
}
--- a/hgext/notify.py Tue Jun 30 23:16:38 2009 +0200
+++ b/hgext/notify.py Tue Jun 30 23:17:57 2009 +0200
@@ -5,7 +5,7 @@
# This software may be used and distributed according to the terms of the
# GNU General Public License version 2, incorporated herein by reference.
-'''send e-mail notifications for commits/pushes
+'''hooks for sending email notifications at commit/push time
Subscriptions can be managed through hgrc. Default mode is to print
messages to stdout, for testing and configuring.
--- a/hgext/patchbomb.py Tue Jun 30 23:16:38 2009 +0200
+++ b/hgext/patchbomb.py Tue Jun 30 23:17:57 2009 +0200
@@ -5,7 +5,7 @@
# This software may be used and distributed according to the terms of the
# GNU General Public License version 2, incorporated herein by reference.
-'''send Mercurial changesets as a series of patch e-mails
+'''command to send changesets as (a series of) patch emails
The series is started off with a "[PATCH 0 of N]" introduction, which
describes the series as a whole.
--- a/hgext/purge.py Tue Jun 30 23:16:38 2009 +0200
+++ b/hgext/purge.py Tue Jun 30 23:17:57 2009 +0200
@@ -1,6 +1,6 @@
# Copyright (C) 2006 - Marco Barisione <marco@barisione.org>
#
-# This is a small extension for Mercurial (http://www.selenic.com/mercurial)
+# This is a small extension for Mercurial (http://mercurial.selenic.com/)
# that removes files not known to mercurial
#
# This program was inspired by the "cvspurge" script contained in CVS utilities
@@ -23,7 +23,7 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-'''delete files not tracked from the working directory'''
+'''command to delete untracked files from the working directory'''
from mercurial import util, commands, cmdutil
from mercurial.i18n import _
--- a/hgext/rebase.py Tue Jun 30 23:16:38 2009 +0200
+++ b/hgext/rebase.py Tue Jun 30 23:17:57 2009 +0200
@@ -5,13 +5,13 @@
# This software may be used and distributed according to the terms of the
# GNU General Public License version 2, incorporated herein by reference.
-'''move sets of revisions to a different ancestor
+'''command to move sets of revisions to a different ancestor
This extension lets you rebase changesets in an existing Mercurial
repository.
For more information:
-http://www.selenic.com/mercurial/wiki/index.cgi/RebaseProject
+http://mercurial.selenic.com/wiki/RebaseProject
'''
from mercurial import util, repair, merge, cmdutil, commands, error
--- a/hgext/record.py Tue Jun 30 23:16:38 2009 +0200
+++ b/hgext/record.py Tue Jun 30 23:17:57 2009 +0200
@@ -5,7 +5,7 @@
# This software may be used and distributed according to the terms of the
# GNU General Public License version 2, incorporated herein by reference.
-'''interactively select which sets of changes to commit/qrefresh'''
+'''commands to interactively select changes for commit/qrefresh'''
from mercurial.i18n import gettext, _
from mercurial import cmdutil, commands, extensions, hg, mdiff, patch
--- a/hgext/transplant.py Tue Jun 30 23:16:38 2009 +0200
+++ b/hgext/transplant.py Tue Jun 30 23:17:57 2009 +0200
@@ -5,7 +5,7 @@
# This software may be used and distributed according to the terms of the
# GNU General Public License version 2, incorporated herein by reference.
-'''transplant changesets from another branch
+'''command to transplant changesets from another branch
This extension allows you to transplant patches from another branch.
--- a/hgext/win32mbcs.py Tue Jun 30 23:16:38 2009 +0200
+++ b/hgext/win32mbcs.py Tue Jun 30 23:17:57 2009 +0200
@@ -9,7 +9,7 @@
# GNU General Public License version 2, incorporated herein by reference.
#
-'''allow the use of MBCS paths with problematic encoding
+'''allow the use of MBCS paths with problematic encodings
Some MBCS encodings are not good for some path operations (i.e.
splitting path, case conversion, etc.) with its encoded bytes. We call
--- a/hgext/win32text.py Tue Jun 30 23:16:38 2009 +0200
+++ b/hgext/win32text.py Tue Jun 30 23:17:57 2009 +0200
@@ -48,7 +48,7 @@
# warn if already has 'newline' in repository.
# it might cause unexpected eol conversion.
# see issue 302:
- # http://www.selenic.com/mercurial/bts/issue302
+ # http://mercurial.selenic.com/bts/issue302
if newline in s and ui and filename and repo:
ui.warn(_('WARNING: %s already has %s line endings\n'
'and does not need EOL conversion by the win32text plugin.\n'
--- a/mercurial/cmdutil.py Tue Jun 30 23:16:38 2009 +0200
+++ b/mercurial/cmdutil.py Tue Jun 30 23:17:57 2009 +0200
@@ -323,12 +323,10 @@
repo.add(add)
if similarity > 0:
for old, new, score in findrenames(repo, m, similarity):
- oldexact, newexact = m.exact(old), m.exact(new)
- if repo.ui.verbose or not oldexact or not newexact:
- oldrel, newrel = m.rel(old), m.rel(new)
+ if repo.ui.verbose or not m.exact(old) or not m.exact(new):
repo.ui.status(_('recording removal of %s as rename to %s '
'(%d%% similar)\n') %
- (oldrel, newrel, score * 100))
+ (m.rel(old), m.rel(new), score * 100))
if not dry_run:
repo.copy(old, new)
--- a/mercurial/commands.py Tue Jun 30 23:16:38 2009 +0200
+++ b/mercurial/commands.py Tue Jun 30 23:17:57 2009 +0200
@@ -8,7 +8,7 @@
from node import hex, nullid, nullrev, short
from lock import release
from i18n import _, gettext
-import os, re, sys, textwrap, subprocess, difflib, time
+import os, re, sys, subprocess, difflib, time
import hg, util, revlog, bundlerepo, extensions, copies, context, error
import patch, help, mdiff, tempfile, url, encoding
import archival, changegroup, cmdutil, sshserver, hbisect
@@ -440,7 +440,7 @@
"""list repository named branches
List the repository's named branches, indicating which ones are
- inactive. If active is specified, only show active branches.
+ inactive. If -a/--active is specified, only show active branches.
A branch is considered active if it contains repository heads.
@@ -484,8 +484,8 @@
parameters. To create a bundle containing all changesets, use
-a/--all (or --base null).
- To change the compression method applied, use the -t/--type
- option. The available compression methods are: none, bzip2, and
+ You can change compression method with the -t/--type option.
+ The available compression methods are: none, bzip2, and
gzip (by default, bundles are compressed using bzip2).
The bundle file can then be transferred using conventional means
@@ -987,7 +987,7 @@
" or misconfigured. Please check your .hgrc file)\n"))
else:
ui.write(_(" Internal patcher failure, please report this error"
- " to http://www.selenic.com/mercurial/bts\n"))
+ " to http://mercurial.selenic.com/bts/\n"))
problems += patchproblems
os.unlink(fa)
@@ -1368,7 +1368,7 @@
branch is called the revision's branch tag.
Branch heads are revisions on a given named branch that do not have
- any children on the same branch. A branch head could be a true head
+ any descendants on the same branch. A branch head could be a true head
or it could be the last changeset on a branch before a new branch
was created. If none of the branch heads are true heads, the branch
is considered inactive.
@@ -1514,7 +1514,7 @@
commands = cmds[f].replace("|",", ")
ui.write(" %s:\n %s\n"%(commands, h[f]))
else:
- ui.write(' %-*s %s\n' % (m, f, h[f]))
+ ui.write(' %-*s %s\n' % (m, f, util.wrap(h[f], m + 4)))
if name != 'shortlist':
exts, maxlength = extensions.enabled()
@@ -1617,11 +1617,8 @@
opts_len = max([len(line[0]) for line in opt_output if line[1]] or [0])
for first, second in opt_output:
if second:
- # wrap descriptions at 70 characters, just like the
- # main help texts
- second = textwrap.wrap(second, width=70 - opts_len - 3)
- pad = '\n' + ' ' * (opts_len + 3)
- ui.write(" %-*s %s\n" % (opts_len, first, pad.join(second)))
+ second = util.wrap(second, opts_len + 3)
+ ui.write(" %-*s %s\n" % (opts_len, first, second))
else:
ui.write("%s\n" % first)
@@ -1729,7 +1726,8 @@
With -s/--similarity, hg will attempt to discover renames and
copies in the patch in the same way as 'addremove'.
- To read a patch from standard input, use "-" as the patch name.
+ To read a patch from standard input, use "-" as the patch name. If
+ a URL is specified, the patch will be downloaded from it.
See 'hg help dates' for a list of formats valid for -d/--date.
"""
patches = (patch1,) + patches
--- a/mercurial/dispatch.py Tue Jun 30 23:16:38 2009 +0200
+++ b/mercurial/dispatch.py Tue Jun 30 23:17:57 2009 +0200
@@ -143,7 +143,7 @@
except:
ui.warn(_("** unknown exception encountered, details follow\n"))
ui.warn(_("** report bug details to "
- "http://www.selenic.com/mercurial/bts\n"))
+ "http://mercurial.selenic.com/bts/\n"))
ui.warn(_("** or mercurial@selenic.com\n"))
ui.warn(_("** Mercurial Distributed SCM (version %s)\n")
% util.version())
--- a/mercurial/extensions.py Tue Jun 30 23:16:38 2009 +0200
+++ b/mercurial/extensions.py Tue Jun 30 23:17:57 2009 +0200
@@ -125,9 +125,14 @@
import hgext
extpath = os.path.dirname(os.path.abspath(hgext.__file__))
+ try: # might not be a filesystem path
+ files = os.listdir(extpath)
+ except OSError:
+ return None, 0
+
exts = {}
maxlength = 0
- for e in os.listdir(extpath):
+ for e in files:
if e.endswith('.py'):
name = e.rsplit('.', 1)[0]
--- a/mercurial/help.py Tue Jun 30 23:16:38 2009 +0200
+++ b/mercurial/help.py Tue Jun 30 23:17:57 2009 +0200
@@ -5,9 +5,8 @@
# This software may be used and distributed according to the terms of the
# GNU General Public License version 2, incorporated herein by reference.
-import textwrap
from i18n import _
-import extensions
+import extensions, util
def moduledoc(file):
@@ -46,11 +45,8 @@
return ''
result = '\n%s\n\n' % header
for name, desc in sorted(exts.iteritems()):
- # wrap desc at 70 characters, just like the main help texts
- desc = textwrap.wrap(desc, width=70 - maxlength - 4)
- pad = '\n' + ' ' * (maxlength + 4)
- result += ' %s %s\n' % (name.ljust(maxlength),
- pad.join(desc))
+ desc = util.wrap(desc, maxlength + 4)
+ result += ' %s %s\n' % (name.ljust(maxlength), desc)
return result
def extshelp():
--- a/mercurial/localrepo.py Tue Jun 30 23:16:38 2009 +0200
+++ b/mercurial/localrepo.py Tue Jun 30 23:17:57 2009 +0200
@@ -454,15 +454,30 @@
pass
def _updatebranchcache(self, partial, start, end):
+ # collect new branch entries
+ newbranches = {}
for r in xrange(start, end):
c = self[r]
- b = c.branch()
- bheads = partial.setdefault(b, [])
- bheads.append(c.node())
- for p in c.parents():
- pn = p.node()
- if pn in bheads:
- bheads.remove(pn)
+ newbranches.setdefault(c.branch(), []).append(c.node())
+ # if older branchheads are reachable from new ones, they aren't
+ # really branchheads. Note checking parents is insufficient:
+ # 1 (branch a) -> 2 (branch b) -> 3 (branch a)
+ for branch, newnodes in newbranches.iteritems():
+ bheads = partial.setdefault(branch, [])
+ bheads.extend(newnodes)
+ if len(bheads) < 2:
+ continue
+ newbheads = []
+ # starting from tip means fewer passes over reachable
+ while newnodes:
+ latest = newnodes.pop()
+ if latest not in bheads:
+ continue
+ reachable = self.changelog.reachable(latest, bheads[0])
+ bheads = [b for b in bheads if b not in reachable]
+ newbheads.insert(0, latest)
+ bheads.extend(newbheads)
+ partial[branch] = bheads
def lookup(self, key):
if isinstance(key, int):
--- a/mercurial/ui.py Tue Jun 30 23:16:38 2009 +0200
+++ b/mercurial/ui.py Tue Jun 30 23:17:57 2009 +0200
@@ -277,7 +277,7 @@
insensitive. If ui is not interactive, the default is returned.
"""
if not self.interactive():
- self.note(msg, ' ', default, "\n")
+ self.write(msg, ' ', default, "\n")
return default
while True:
try:
--- a/mercurial/util.py Tue Jun 30 23:16:38 2009 +0200
+++ b/mercurial/util.py Tue Jun 30 23:17:57 2009 +0200
@@ -16,7 +16,7 @@
from i18n import _
import error, osutil
import cStringIO, errno, re, shutil, sys, tempfile, traceback
-import os, stat, time, calendar, random
+import os, stat, time, calendar, random, textwrap
import imp
# Python compatibility
@@ -1242,6 +1242,10 @@
pass
return 80
+def wrap(line, hangindent, width=78):
+ padding = '\n' + ' ' * hangindent
+ return padding.join(textwrap.wrap(line, width=width - hangindent))
+
def iterlines(iterator):
for chunk in iterator:
for line in chunk.splitlines():
--- a/mercurial/win32.py Tue Jun 30 23:16:38 2009 +0200
+++ b/mercurial/win32.py Tue Jun 30 23:17:57 2009 +0200
@@ -20,139 +20,6 @@
import osutil, encoding
from win32com.shell import shell,shellcon
-class WinError(Exception):
- winerror_map = {
- winerror.ERROR_ACCESS_DENIED: errno.EACCES,
- winerror.ERROR_ACCOUNT_DISABLED: errno.EACCES,
- winerror.ERROR_ACCOUNT_RESTRICTION: errno.EACCES,
- winerror.ERROR_ALREADY_ASSIGNED: errno.EBUSY,
- winerror.ERROR_ALREADY_EXISTS: errno.EEXIST,
- winerror.ERROR_ARITHMETIC_OVERFLOW: errno.ERANGE,
- winerror.ERROR_BAD_COMMAND: errno.EIO,
- winerror.ERROR_BAD_DEVICE: errno.ENODEV,
- winerror.ERROR_BAD_DRIVER_LEVEL: errno.ENXIO,
- winerror.ERROR_BAD_EXE_FORMAT: errno.ENOEXEC,
- winerror.ERROR_BAD_FORMAT: errno.ENOEXEC,
- winerror.ERROR_BAD_LENGTH: errno.EINVAL,
- winerror.ERROR_BAD_PATHNAME: errno.ENOENT,
- winerror.ERROR_BAD_PIPE: errno.EPIPE,
- winerror.ERROR_BAD_UNIT: errno.ENODEV,
- winerror.ERROR_BAD_USERNAME: errno.EINVAL,
- winerror.ERROR_BROKEN_PIPE: errno.EPIPE,
- winerror.ERROR_BUFFER_OVERFLOW: errno.ENAMETOOLONG,
- winerror.ERROR_BUSY: errno.EBUSY,
- winerror.ERROR_BUSY_DRIVE: errno.EBUSY,
- winerror.ERROR_CALL_NOT_IMPLEMENTED: errno.ENOSYS,
- winerror.ERROR_CANNOT_MAKE: errno.EACCES,
- winerror.ERROR_CANTOPEN: errno.EIO,
- winerror.ERROR_CANTREAD: errno.EIO,
- winerror.ERROR_CANTWRITE: errno.EIO,
- winerror.ERROR_CRC: errno.EIO,
- winerror.ERROR_CURRENT_DIRECTORY: errno.EACCES,
- winerror.ERROR_DEVICE_IN_USE: errno.EBUSY,
- winerror.ERROR_DEV_NOT_EXIST: errno.ENODEV,
- winerror.ERROR_DIRECTORY: errno.EINVAL,
- winerror.ERROR_DIR_NOT_EMPTY: errno.ENOTEMPTY,
- winerror.ERROR_DISK_CHANGE: errno.EIO,
- winerror.ERROR_DISK_FULL: errno.ENOSPC,
- winerror.ERROR_DRIVE_LOCKED: errno.EBUSY,
- winerror.ERROR_ENVVAR_NOT_FOUND: errno.EINVAL,
- winerror.ERROR_EXE_MARKED_INVALID: errno.ENOEXEC,
- winerror.ERROR_FILENAME_EXCED_RANGE: errno.ENAMETOOLONG,
- winerror.ERROR_FILE_EXISTS: errno.EEXIST,
- winerror.ERROR_FILE_INVALID: errno.ENODEV,
- winerror.ERROR_FILE_NOT_FOUND: errno.ENOENT,
- winerror.ERROR_GEN_FAILURE: errno.EIO,
- winerror.ERROR_HANDLE_DISK_FULL: errno.ENOSPC,
- winerror.ERROR_INSUFFICIENT_BUFFER: errno.ENOMEM,
- winerror.ERROR_INVALID_ACCESS: errno.EACCES,
- winerror.ERROR_INVALID_ADDRESS: errno.EFAULT,
- winerror.ERROR_INVALID_BLOCK: errno.EFAULT,
- winerror.ERROR_INVALID_DATA: errno.EINVAL,
- winerror.ERROR_INVALID_DRIVE: errno.ENODEV,
- winerror.ERROR_INVALID_EXE_SIGNATURE: errno.ENOEXEC,
- winerror.ERROR_INVALID_FLAGS: errno.EINVAL,
- winerror.ERROR_INVALID_FUNCTION: errno.ENOSYS,
- winerror.ERROR_INVALID_HANDLE: errno.EBADF,
- winerror.ERROR_INVALID_LOGON_HOURS: errno.EACCES,
- winerror.ERROR_INVALID_NAME: errno.EINVAL,
- winerror.ERROR_INVALID_OWNER: errno.EINVAL,
- winerror.ERROR_INVALID_PARAMETER: errno.EINVAL,
- winerror.ERROR_INVALID_PASSWORD: errno.EPERM,
- winerror.ERROR_INVALID_PRIMARY_GROUP: errno.EINVAL,
- winerror.ERROR_INVALID_SIGNAL_NUMBER: errno.EINVAL,
- winerror.ERROR_INVALID_TARGET_HANDLE: errno.EIO,
- winerror.ERROR_INVALID_WORKSTATION: errno.EACCES,
- winerror.ERROR_IO_DEVICE: errno.EIO,
- winerror.ERROR_IO_INCOMPLETE: errno.EINTR,
- winerror.ERROR_LOCKED: errno.EBUSY,
- winerror.ERROR_LOCK_VIOLATION: errno.EACCES,
- winerror.ERROR_LOGON_FAILURE: errno.EACCES,
- winerror.ERROR_MAPPED_ALIGNMENT: errno.EINVAL,
- winerror.ERROR_META_EXPANSION_TOO_LONG: errno.E2BIG,
- winerror.ERROR_MORE_DATA: errno.EPIPE,
- winerror.ERROR_NEGATIVE_SEEK: errno.ESPIPE,
- winerror.ERROR_NOACCESS: errno.EFAULT,
- winerror.ERROR_NONE_MAPPED: errno.EINVAL,
- winerror.ERROR_NOT_ENOUGH_MEMORY: errno.ENOMEM,
- winerror.ERROR_NOT_READY: errno.EAGAIN,
- winerror.ERROR_NOT_SAME_DEVICE: errno.EXDEV,
- winerror.ERROR_NO_DATA: errno.EPIPE,
- winerror.ERROR_NO_MORE_SEARCH_HANDLES: errno.EIO,
- winerror.ERROR_NO_PROC_SLOTS: errno.EAGAIN,
- winerror.ERROR_NO_SUCH_PRIVILEGE: errno.EACCES,
- winerror.ERROR_OPEN_FAILED: errno.EIO,
- winerror.ERROR_OPEN_FILES: errno.EBUSY,
- winerror.ERROR_OPERATION_ABORTED: errno.EINTR,
- winerror.ERROR_OUTOFMEMORY: errno.ENOMEM,
- winerror.ERROR_PASSWORD_EXPIRED: errno.EACCES,
- winerror.ERROR_PATH_BUSY: errno.EBUSY,
- winerror.ERROR_PATH_NOT_FOUND: errno.ENOENT,
- winerror.ERROR_PIPE_BUSY: errno.EBUSY,
- winerror.ERROR_PIPE_CONNECTED: errno.EPIPE,
- winerror.ERROR_PIPE_LISTENING: errno.EPIPE,
- winerror.ERROR_PIPE_NOT_CONNECTED: errno.EPIPE,
- winerror.ERROR_PRIVILEGE_NOT_HELD: errno.EACCES,
- winerror.ERROR_READ_FAULT: errno.EIO,
- winerror.ERROR_SEEK: errno.EIO,
- winerror.ERROR_SEEK_ON_DEVICE: errno.ESPIPE,
- winerror.ERROR_SHARING_BUFFER_EXCEEDED: errno.ENFILE,
- winerror.ERROR_SHARING_VIOLATION: errno.EACCES,
- winerror.ERROR_STACK_OVERFLOW: errno.ENOMEM,
- winerror.ERROR_SWAPERROR: errno.ENOENT,
- winerror.ERROR_TOO_MANY_MODULES: errno.EMFILE,
- winerror.ERROR_TOO_MANY_OPEN_FILES: errno.EMFILE,
- winerror.ERROR_UNRECOGNIZED_MEDIA: errno.ENXIO,
- winerror.ERROR_UNRECOGNIZED_VOLUME: errno.ENODEV,
- winerror.ERROR_WAIT_NO_CHILDREN: errno.ECHILD,
- winerror.ERROR_WRITE_FAULT: errno.EIO,
- winerror.ERROR_WRITE_PROTECT: errno.EROFS,
- }
-
- def __init__(self, err):
- try:
- # unpack a pywintypes.error tuple
- self.win_errno, self.win_function, self.win_strerror = err
- except ValueError:
- # get attributes from a WindowsError
- self.win_errno = err.winerror
- self.win_function = None
- self.win_strerror = err.strerror
- self.win_strerror = self.win_strerror.rstrip('.')
-
-class WinIOError(WinError, IOError):
- def __init__(self, err, filename=None):
- WinError.__init__(self, err)
- IOError.__init__(self, self.winerror_map.get(self.win_errno, 0),
- self.win_strerror)
- self.filename = filename
-
-class WinOSError(WinError, OSError):
- def __init__(self, err):
- WinError.__init__(self, err)
- OSError.__init__(self, self.winerror_map.get(self.win_errno, 0),
- self.win_strerror)
-
def os_link(src, dst):
try:
win32file.CreateHardLink(dst, src)
@@ -164,12 +31,11 @@
except:
pass
# Fake hardlinking error
- raise WinOSError((18, 'CreateHardLink', 'The system cannot '
- 'move the file to a different disk drive'))
+ raise OSError(errno.EINVAL, 'Hardlinking not supported')
except pywintypes.error, details:
- raise WinOSError(details)
+ raise OSError(errno.EINVAL, 'target implements hardlinks improperly')
except NotImplementedError: # Another fake error win Win98
- raise WinOSError((18, 'CreateHardLink', 'Hardlinking not supported'))
+ raise OSError(errno.EINVAL, 'Hardlinking not supported')
def nlinks(pathname):
"""Return number of hardlinks for the given file."""
--- a/mercurial/windows.py Tue Jun 30 23:16:38 2009 +0200
+++ b/mercurial/windows.py Tue Jun 30 23:17:57 2009 +0200
@@ -17,7 +17,7 @@
try:
return osutil.posixfile(name, mode, buffering)
except WindowsError, err:
- raise WinIOError(err)
+ raise IOError(err.errno, err.strerror)
posixfile.__doc__ = osutil.posixfile.__doc__
class winstdout(object):
--- a/setup.py Tue Jun 30 23:16:38 2009 +0200
+++ b/setup.py Tue Jun 30 23:17:57 2009 +0200
@@ -255,7 +255,7 @@
version=version,
author='Matt Mackall',
author_email='mpm@selenic.com',
- url='http://selenic.com/mercurial',
+ url='http://mercurial.selenic.com/',
description='Scalable distributed SCM',
license='GNU GPL',
scripts=scripts,
--- a/templates/atom/error.tmpl Tue Jun 30 23:16:38 2009 +0200
+++ b/templates/atom/error.tmpl Tue Jun 30 23:17:57 2009 +0200
@@ -7,7 +7,7 @@
<updated>1970-01-01T00:00:00+00:00</updated>
<entry>
<title>Error</title>
- <id>http://www.selenic.com/mercurial/#error</id>
+ <id>http://mercurial.selenic.com/#error</id>
<author>
<name>mercurial</name>
</author>
--- a/templates/atom/filelog.tmpl Tue Jun 30 23:16:38 2009 +0200
+++ b/templates/atom/filelog.tmpl Tue Jun 30 23:17:57 2009 +0200
@@ -1,6 +1,6 @@
{header}
<id>{urlbase}{url}atom-log/tip/{file|escape}</id>
- <link rel="self" href="{urlbase}{url}atom-log/tip/{file|escape}"/>
+ <link rel="self" href="{urlbase}{url}atom-log/tip/{file|urlescape}"/>
<title>{repo|escape}: {file|escape} history</title>
{latestentry%feedupdated}
--- a/templates/gitweb/branches.tmpl Tue Jun 30 23:16:38 2009 +0200
+++ b/templates/gitweb/branches.tmpl Tue Jun 30 23:17:57 2009 +0200
@@ -8,7 +8,7 @@
<body>
<div class="page_header">
-<a href="http://www.selenic.com/mercurial/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / branches
+<a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / branches
</div>
<div class="page_nav">
--- a/templates/gitweb/changelog.tmpl Tue Jun 30 23:16:38 2009 +0200
+++ b/templates/gitweb/changelog.tmpl Tue Jun 30 23:17:57 2009 +0200
@@ -8,7 +8,7 @@
<body>
<div class="page_header">
-<a href="http://www.selenic.com/mercurial/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / changelog
+<a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / changelog
</div>
<form action="{url}log">
--- a/templates/gitweb/changeset.tmpl Tue Jun 30 23:16:38 2009 +0200
+++ b/templates/gitweb/changeset.tmpl Tue Jun 30 23:17:57 2009 +0200
@@ -8,7 +8,7 @@
<body>
<div class="page_header">
-<a href="http://www.selenic.com/mercurial/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / changeset
+<a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / changeset
</div>
<div class="page_nav">
--- a/templates/gitweb/error.tmpl Tue Jun 30 23:16:38 2009 +0200
+++ b/templates/gitweb/error.tmpl Tue Jun 30 23:17:57 2009 +0200
@@ -8,7 +8,7 @@
<body>
<div class="page_header">
-<a href="http://www.selenic.com/mercurial/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / error
+<a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / error
</div>
<div class="page_nav">
--- a/templates/gitweb/fileannotate.tmpl Tue Jun 30 23:16:38 2009 +0200
+++ b/templates/gitweb/fileannotate.tmpl Tue Jun 30 23:17:57 2009 +0200
@@ -8,7 +8,7 @@
<body>
<div class="page_header">
-<a href="http://www.selenic.com/mercurial/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / annotate
+<a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / annotate
</div>
<div class="page_nav">
--- a/templates/gitweb/filediff.tmpl Tue Jun 30 23:16:38 2009 +0200
+++ b/templates/gitweb/filediff.tmpl Tue Jun 30 23:17:57 2009 +0200
@@ -8,7 +8,7 @@
<body>
<div class="page_header">
-<a href="http://www.selenic.com/mercurial/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / diff
+<a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / diff
</div>
<div class="page_nav">
--- a/templates/gitweb/filelog.tmpl Tue Jun 30 23:16:38 2009 +0200
+++ b/templates/gitweb/filelog.tmpl Tue Jun 30 23:17:57 2009 +0200
@@ -8,7 +8,7 @@
<body>
<div class="page_header">
-<a href="http://www.selenic.com/mercurial/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / file revisions
+<a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / file revisions
</div>
<div class="page_nav">
--- a/templates/gitweb/filerevision.tmpl Tue Jun 30 23:16:38 2009 +0200
+++ b/templates/gitweb/filerevision.tmpl Tue Jun 30 23:17:57 2009 +0200
@@ -8,7 +8,7 @@
<body>
<div class="page_header">
-<a href="http://www.selenic.com/mercurial/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / file revision
+<a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / file revision
</div>
<div class="page_nav">
--- a/templates/gitweb/graph.tmpl Tue Jun 30 23:16:38 2009 +0200
+++ b/templates/gitweb/graph.tmpl Tue Jun 30 23:17:57 2009 +0200
@@ -9,7 +9,7 @@
<body>
<div class="page_header">
-<a href="http://www.selenic.com/mercurial/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / graph
+<a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / graph
</div>
<form action="{url}log">
--- a/templates/gitweb/index.tmpl Tue Jun 30 23:16:38 2009 +0200
+++ b/templates/gitweb/index.tmpl Tue Jun 30 23:17:57 2009 +0200
@@ -4,7 +4,7 @@
<body>
<div class="page_header">
- <a href="http://www.selenic.com/mercurial/" title="Mercurial" style="float: right;">Mercurial</a>
+ <a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a>
Repositories list
</div>
--- a/templates/gitweb/manifest.tmpl Tue Jun 30 23:16:38 2009 +0200
+++ b/templates/gitweb/manifest.tmpl Tue Jun 30 23:17:57 2009 +0200
@@ -8,7 +8,7 @@
<body>
<div class="page_header">
-<a href="http://www.selenic.com/mercurial/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / files
+<a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / files
</div>
<div class="page_nav">
--- a/templates/gitweb/notfound.tmpl Tue Jun 30 23:16:38 2009 +0200
+++ b/templates/gitweb/notfound.tmpl Tue Jun 30 23:17:57 2009 +0200
@@ -5,7 +5,7 @@
<body>
<div class="page_header">
-<a href="http://www.selenic.com/mercurial/" title="Mercurial" style="float: right;">Mercurial</a> Not found: {repo|escape}
+<a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a> Not found: {repo|escape}
</div>
<div class="page_body">
--- a/templates/gitweb/search.tmpl Tue Jun 30 23:16:38 2009 +0200
+++ b/templates/gitweb/search.tmpl Tue Jun 30 23:17:57 2009 +0200
@@ -8,7 +8,7 @@
<body>
<div class="page_header">
-<a href="http://www.selenic.com/mercurial/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / search
+<a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / search
<form action="{url}log">
{sessionvars%hiddenformentry}
--- a/templates/gitweb/shortlog.tmpl Tue Jun 30 23:16:38 2009 +0200
+++ b/templates/gitweb/shortlog.tmpl Tue Jun 30 23:17:57 2009 +0200
@@ -8,7 +8,7 @@
<body>
<div class="page_header">
-<a href="http://www.selenic.com/mercurial/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / shortlog
+<a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / shortlog
</div>
<form action="{url}log">
--- a/templates/gitweb/summary.tmpl Tue Jun 30 23:16:38 2009 +0200
+++ b/templates/gitweb/summary.tmpl Tue Jun 30 23:17:57 2009 +0200
@@ -8,7 +8,7 @@
<body>
<div class="page_header">
-<a href="http://www.selenic.com/mercurial/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / summary
+<a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / summary
<form action="{url}log">
{sessionvars%hiddenformentry}
--- a/templates/gitweb/tags.tmpl Tue Jun 30 23:16:38 2009 +0200
+++ b/templates/gitweb/tags.tmpl Tue Jun 30 23:17:57 2009 +0200
@@ -8,7 +8,7 @@
<body>
<div class="page_header">
-<a href="http://www.selenic.com/mercurial/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / tags
+<a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / tags
</div>
<div class="page_nav">
--- a/templates/monoblue/footer.tmpl Tue Jun 30 23:16:38 2009 +0200
+++ b/templates/monoblue/footer.tmpl Tue Jun 30 23:17:57 2009 +0200
@@ -8,7 +8,7 @@
</div>
<div id="powered-by">
- <p><a href="http://www.selenic.com/mercurial/" title="Mercurial"><img src="{staticurl}hglogo.png" width=75 height=90 border=0 alt="mercurial"></a></p>
+ <p><a href="http://mercurial.selenic.com/" title="Mercurial"><img src="{staticurl}hglogo.png" width=75 height=90 border=0 alt="mercurial"></a></p>
</div>
<div id="corner-top-left"></div>
--- a/templates/monoblue/index.tmpl Tue Jun 30 23:16:38 2009 +0200
+++ b/templates/monoblue/index.tmpl Tue Jun 30 23:17:57 2009 +0200
@@ -26,7 +26,7 @@
</div>
<div id="powered-by">
- <p><a href="http://www.selenic.com/mercurial/" title="Mercurial"><img src="{staticurl}hglogo.png" width=75 height=90 border=0 alt="mercurial"></a></p>
+ <p><a href="http://mercurial.selenic.com/" title="Mercurial"><img src="{staticurl}hglogo.png" width=75 height=90 border=0 alt="mercurial"></a></p>
</div>
<div id="corner-top-left"></div>
--- a/templates/paper/branches.tmpl Tue Jun 30 23:16:38 2009 +0200
+++ b/templates/paper/branches.tmpl Tue Jun 30 23:17:57 2009 +0200
@@ -10,7 +10,7 @@
<div class="container">
<div class="menu">
<div class="logo">
-<a href="http://www.selenic.com/mercurial/">
+<a href="http://mercurial.selenic.com/">
<img src="{staticurl}hglogo.png" alt="mercurial" /></a>
</div>
<ul>
--- a/templates/paper/changeset.tmpl Tue Jun 30 23:16:38 2009 +0200
+++ b/templates/paper/changeset.tmpl Tue Jun 30 23:17:57 2009 +0200
@@ -5,7 +5,7 @@
<div class="container">
<div class="menu">
<div class="logo">
-<a href="http://www.selenic.com/mercurial/">
+<a href="http://mercurial.selenic.com/">
<img src="{staticurl}hglogo.png" alt="mercurial" /></a>
</div>
<ul>
--- a/templates/paper/error.tmpl Tue Jun 30 23:16:38 2009 +0200
+++ b/templates/paper/error.tmpl Tue Jun 30 23:17:57 2009 +0200
@@ -6,7 +6,7 @@
<div class="container">
<div class="menu">
<div class="logo">
-<a href="http://www.selenic.com/mercurial/">
+<a href="http://mercurial.selenic.com/">
<img src="{staticurl}hglogo.png" width=75 height=90 border=0 alt="mercurial" /></a>
</div>
<ul>
--- a/templates/paper/fileannotate.tmpl Tue Jun 30 23:16:38 2009 +0200
+++ b/templates/paper/fileannotate.tmpl Tue Jun 30 23:17:57 2009 +0200
@@ -6,7 +6,7 @@
<div class="container">
<div class="menu">
<div class="logo">
-<a href="http://www.selenic.com/mercurial/">
+<a href="http://mercurial.selenic.com/">
<img src="{staticurl}hglogo.png" alt="mercurial" /></a>
</div>
<ul>
--- a/templates/paper/filediff.tmpl Tue Jun 30 23:16:38 2009 +0200
+++ b/templates/paper/filediff.tmpl Tue Jun 30 23:17:57 2009 +0200
@@ -6,7 +6,7 @@
<div class="container">
<div class="menu">
<div class="logo">
-<a href="http://www.selenic.com/mercurial/">
+<a href="http://mercurial.selenic.com/">
<img src="{staticurl}hglogo.png" alt="mercurial" /></a>
</div>
<ul>
--- a/templates/paper/filelog.tmpl Tue Jun 30 23:16:38 2009 +0200
+++ b/templates/paper/filelog.tmpl Tue Jun 30 23:17:57 2009 +0200
@@ -10,7 +10,7 @@
<div class="container">
<div class="menu">
<div class="logo">
-<a href="http://www.selenic.com/mercurial/">
+<a href="http://mercurial.selenic.com/">
<img src="{staticurl}hglogo.png" alt="mercurial" /></a>
</div>
<ul>
--- a/templates/paper/filerevision.tmpl Tue Jun 30 23:16:38 2009 +0200
+++ b/templates/paper/filerevision.tmpl Tue Jun 30 23:17:57 2009 +0200
@@ -6,7 +6,7 @@
<div class="container">
<div class="menu">
<div class="logo">
-<a href="http://www.selenic.com/mercurial/">
+<a href="http://mercurial.selenic.com/">
<img src="{staticurl}hglogo.png" alt="mercurial" /></a>
</div>
<ul>
--- a/templates/paper/graph.tmpl Tue Jun 30 23:16:38 2009 +0200
+++ b/templates/paper/graph.tmpl Tue Jun 30 23:17:57 2009 +0200
@@ -11,7 +11,7 @@
<div class="container">
<div class="menu">
<div class="logo">
-<a href="http://www.selenic.com/mercurial/">
+<a href="http://mercurial.selenic.com/">
<img src="{staticurl}hglogo.png" alt="mercurial" /></a>
</div>
<ul>
--- a/templates/paper/index.tmpl Tue Jun 30 23:16:38 2009 +0200
+++ b/templates/paper/index.tmpl Tue Jun 30 23:17:57 2009 +0200
@@ -5,7 +5,7 @@
<div class="container">
<div class="menu">
-<a href="http://www.selenic.com/mercurial/">
+<a href="http://mercurial.selenic.com/">
<img src="{staticurl}hglogo.png" width=75 height=90 border=0 alt="mercurial" /></a>
</div>
<div class="main">
--- a/templates/paper/manifest.tmpl Tue Jun 30 23:16:38 2009 +0200
+++ b/templates/paper/manifest.tmpl Tue Jun 30 23:17:57 2009 +0200
@@ -6,7 +6,7 @@
<div class="container">
<div class="menu">
<div class="logo">
-<a href="http://www.selenic.com/mercurial/">
+<a href="http://mercurial.selenic.com/">
<img src="{staticurl}hglogo.png" alt="mercurial" /></a>
</div>
<ul>
--- a/templates/paper/search.tmpl Tue Jun 30 23:16:38 2009 +0200
+++ b/templates/paper/search.tmpl Tue Jun 30 23:17:57 2009 +0200
@@ -6,7 +6,7 @@
<div class="container">
<div class="menu">
<div class="logo">
-<a href="http://www.selenic.com/mercurial/">
+<a href="http://mercurial.selenic.com/">
<img src="{staticurl}hglogo.png" width=75 height=90 border=0 alt="mercurial"></a>
</div>
<ul>
--- a/templates/paper/shortlog.tmpl Tue Jun 30 23:16:38 2009 +0200
+++ b/templates/paper/shortlog.tmpl Tue Jun 30 23:17:57 2009 +0200
@@ -10,7 +10,7 @@
<div class="container">
<div class="menu">
<div class="logo">
-<a href="http://www.selenic.com/mercurial/">
+<a href="http://mercurial.selenic.com/">
<img src="{staticurl}hglogo.png" alt="mercurial" /></a>
</div>
<ul>
--- a/templates/paper/tags.tmpl Tue Jun 30 23:16:38 2009 +0200
+++ b/templates/paper/tags.tmpl Tue Jun 30 23:17:57 2009 +0200
@@ -10,7 +10,7 @@
<div class="container">
<div class="menu">
<div class="logo">
-<a href="http://www.selenic.com/mercurial/">
+<a href="http://mercurial.selenic.com/">
<img src="{staticurl}hglogo.png" alt="mercurial" /></a>
</div>
<ul>
--- a/templates/rss/error.tmpl Tue Jun 30 23:16:38 2009 +0200
+++ b/templates/rss/error.tmpl Tue Jun 30 23:17:57 2009 +0200
@@ -4,7 +4,7 @@
<item>
<title>Error</title>
<description>{error|escape}</description>
- <guid>http://www.selenic.com/mercurial/#error</guid>
+ <guid>http://mercurial.selenic.com/#error</guid>
</item>
</channel>
</rss>
--- a/templates/spartan/footer.tmpl Tue Jun 30 23:16:38 2009 +0200
+++ b/templates/spartan/footer.tmpl Tue Jun 30 23:17:57 2009 +0200
@@ -1,6 +1,6 @@
{motd}
<div class="logo">
-<a href="http://www.selenic.com/mercurial/">
+<a href="http://mercurial.selenic.com/">
<img src="{staticurl}hglogo.png" width=75 height=90 border=0 alt="mercurial"></a>
</div>
--- a/tests/README Tue Jun 30 23:16:38 2009 +0200
+++ b/tests/README Tue Jun 30 23:17:57 2009 +0200
@@ -3,5 +3,5 @@
cd tests/
python run-tests.py
-See http://www.selenic.com/mercurial/wiki/index.cgi/WritingTests for
+See http://mercurial.selenic.com/wiki/WritingTests for
more information on writing tests.
--- a/tests/run-tests.py Tue Jun 30 23:16:38 2009 +0200
+++ b/tests/run-tests.py Tue Jun 30 23:17:57 2009 +0200
@@ -266,7 +266,9 @@
pure = options.pure and "--pure" or ""
# Run installer in hg root
- os.chdir(os.path.join(os.path.dirname(sys.argv[0]), '..'))
+ script = os.path.realpath(sys.argv[0])
+ hgroot = os.path.dirname(os.path.dirname(script))
+ os.chdir(hgroot)
cmd = ('%s setup.py %s clean --all'
' install --force --prefix="%s" --install-lib="%s"'
' --install-scripts="%s" >%s 2>&1'
--- a/tests/test-bundle Tue Jun 30 23:16:38 2009 +0200
+++ b/tests/test-bundle Tue Jun 30 23:17:57 2009 +0200
@@ -103,7 +103,7 @@
hg -R full-clone heads
rm -r full-clone
-# test for http://www.selenic.com/mercurial/bts/issue216
+# test for http://mercurial.selenic.com/bts/issue216
echo "====== Unbundle incremental bundles into fresh empty in one go"
rm -r empty
hg init empty
@@ -131,7 +131,7 @@
hg incoming ../bundle.hg
cd ..
-# test for http://www.selenic.com/mercurial/bts/issue1144
+# test for http://mercurial.selenic.com/bts/issue1144
echo "===== test that verify bundle does not traceback"
# partial history bundle, fails w/ unkown parent
hg -R bundle.hg verify
--- a/tests/test-convert-cvs-branch Tue Jun 30 23:16:38 2009 +0200
+++ b/tests/test-convert-cvs-branch Tue Jun 30 23:17:57 2009 +0200
@@ -1,7 +1,7 @@
#!/bin/sh
-# This is http://www.selenic.com/mercurial/bts/issue1148
-# and http://www.selenic.com/mercurial/bts/issue1447
+# This is http://mercurial.selenic.com/bts/issue1148
+# and http://mercurial.selenic.com/bts/issue1447
"$TESTDIR/hghave" cvs || exit 80
--- a/tests/test-extension.out Tue Jun 30 23:16:38 2009 +0200
+++ b/tests/test-extension.out Tue Jun 30 23:17:57 2009 +0200
@@ -36,8 +36,7 @@
global options:
-R --repository repository root directory or symbolic path name
--cwd change working directory
- -y --noninteractive do not prompt, assume 'yes' for any required
- answers
+ -y --noninteractive do not prompt, assume 'yes' for any required answers
-q --quiet suppress output
-v --verbose enable additional output
--config set/override config option
--- a/tests/test-globalopts.out Tue Jun 30 23:16:38 2009 +0200
+++ b/tests/test-globalopts.out Tue Jun 30 23:17:57 2009 +0200
@@ -58,10 +58,10 @@
%% earlygetopt with illegal abbreviations
abort: Option --config may not be abbreviated!
abort: Option --cwd may not be abbreviated!
-abort: Option -R has to be separated from other options (i.e. not -qR) and --repository may only be abbreviated as --repo!
-abort: Option -R has to be separated from other options (i.e. not -qR) and --repository may only be abbreviated as --repo!
-abort: Option -R has to be separated from other options (i.e. not -qR) and --repository may only be abbreviated as --repo!
-abort: Option -R has to be separated from other options (i.e. not -qR) and --repository may only be abbreviated as --repo!
+abort: Option -R has to be separated from other options (e.g. not -qR) and --repository may only be abbreviated as --repo!
+abort: Option -R has to be separated from other options (e.g. not -qR) and --repository may only be abbreviated as --repo!
+abort: Option -R has to be separated from other options (e.g. not -qR) and --repository may only be abbreviated as --repo!
+abort: Option -R has to be separated from other options (e.g. not -qR) and --repository may only be abbreviated as --repo!
%% --cwd
changeset: 0:8580ff50825a
tag: tip
--- a/tests/test-hgweb-commands.out Tue Jun 30 23:16:38 2009 +0200
+++ b/tests/test-hgweb-commands.out Tue Jun 30 23:17:57 2009 +0200
@@ -172,7 +172,7 @@
<div class="container">
<div class="menu">
<div class="logo">
-<a href="http://www.selenic.com/mercurial/">
+<a href="http://mercurial.selenic.com/">
<img src="/static/hglogo.png" alt="mercurial" /></a>
</div>
<ul>
@@ -251,7 +251,7 @@
<div class="container">
<div class="menu">
<div class="logo">
-<a href="http://www.selenic.com/mercurial/">
+<a href="http://mercurial.selenic.com/">
<img src="/static/hglogo.png" alt="mercurial" /></a>
</div>
<ul>
@@ -378,7 +378,7 @@
<div class="container">
<div class="menu">
<div class="logo">
-<a href="http://www.selenic.com/mercurial/">
+<a href="http://mercurial.selenic.com/">
<img src="/static/hglogo.png" alt="mercurial" /></a>
</div>
<ul>
@@ -502,7 +502,7 @@
<body>
<div class="page_header">
-<a href="http://127.0.0.1/mercurial/" title="Mercurial" style="float: right;">Mercurial</a><a href="/summary?style=gitweb">test</a> / branches
+<a href="http://127.0.0.1/" title="Mercurial" style="float: right;">Mercurial</a><a href="/summary?style=gitweb">test</a> / branches
</div>
<div class="page_nav">
@@ -573,7 +573,7 @@
<body>
<div class="page_header">
-<a href="http://www.selenic.com/mercurial/" title="Mercurial" style="float: right;">Mercurial</a><a href="/summary?style=gitweb">test</a> / summary
+<a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="/summary?style=gitweb">test</a> / summary
<form action="/log">
<input type="hidden" name="style" value="gitweb" />
@@ -724,7 +724,7 @@
<body>
<div class="page_header">
-<a href="http://www.selenic.com/mercurial/" title="Mercurial" style="float: right;">Mercurial</a><a href="/summary?style=gitweb">test</a> / graph
+<a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="/summary?style=gitweb">test</a> / graph
</div>
<form action="/log">
--- a/tests/test-hgweb-descend-empties.out Tue Jun 30 23:16:38 2009 +0200
+++ b/tests/test-hgweb-descend-empties.out Tue Jun 30 23:17:57 2009 +0200
@@ -21,7 +21,7 @@
<div class="container">
<div class="menu">
<div class="logo">
-<a href="http://www.selenic.com/mercurial/">
+<a href="http://mercurial.selenic.com/">
<img src="/static/hglogo.png" alt="mercurial" /></a>
</div>
<ul>
--- a/tests/test-hgweb-diffs.out Tue Jun 30 23:16:38 2009 +0200
+++ b/tests/test-hgweb-diffs.out Tue Jun 30 23:17:57 2009 +0200
@@ -19,7 +19,7 @@
<div class="container">
<div class="menu">
<div class="logo">
-<a href="http://www.selenic.com/mercurial/">
+<a href="http://mercurial.selenic.com/">
<img src="/static/hglogo.png" alt="mercurial" /></a>
</div>
<ul>
@@ -112,7 +112,7 @@
<div class="container">
<div class="menu">
<div class="logo">
-<a href="http://www.selenic.com/mercurial/">
+<a href="http://mercurial.selenic.com/">
<img src="/static/hglogo.png" alt="mercurial" /></a>
</div>
<ul>
@@ -201,7 +201,7 @@
<div class="container">
<div class="menu">
<div class="logo">
-<a href="http://www.selenic.com/mercurial/">
+<a href="http://mercurial.selenic.com/">
<img src="/static/hglogo.png" alt="mercurial" /></a>
</div>
<ul>
@@ -296,7 +296,7 @@
<div class="container">
<div class="menu">
<div class="logo">
-<a href="http://www.selenic.com/mercurial/">
+<a href="http://mercurial.selenic.com/">
<img src="/static/hglogo.png" alt="mercurial" /></a>
</div>
<ul>
--- a/tests/test-hgweb-empty.out Tue Jun 30 23:16:38 2009 +0200
+++ b/tests/test-hgweb-empty.out Tue Jun 30 23:17:57 2009 +0200
@@ -18,7 +18,7 @@
<div class="container">
<div class="menu">
<div class="logo">
-<a href="http://www.selenic.com/mercurial/">
+<a href="http://mercurial.selenic.com/">
<img src="/static/hglogo.png" alt="mercurial" /></a>
</div>
<ul>
@@ -87,7 +87,7 @@
<div class="container">
<div class="menu">
<div class="logo">
-<a href="http://www.selenic.com/mercurial/">
+<a href="http://mercurial.selenic.com/">
<img src="/static/hglogo.png" alt="mercurial" /></a>
</div>
<ul>
@@ -157,7 +157,7 @@
<div class="container">
<div class="menu">
<div class="logo">
-<a href="http://www.selenic.com/mercurial/">
+<a href="http://mercurial.selenic.com/">
<img src="/static/hglogo.png" alt="mercurial" /></a>
</div>
<ul>
@@ -296,7 +296,7 @@
<div class="container">
<div class="menu">
<div class="logo">
-<a href="http://www.selenic.com/mercurial/">
+<a href="http://mercurial.selenic.com/">
<img src="/static/hglogo.png" alt="mercurial" /></a>
</div>
<ul>
--- a/tests/test-hgweb-filelog.out Tue Jun 30 23:16:38 2009 +0200
+++ b/tests/test-hgweb-filelog.out Tue Jun 30 23:17:57 2009 +0200
@@ -106,7 +106,7 @@
<div class="container">
<div class="menu">
<div class="logo">
-<a href="http://www.selenic.com/mercurial/">
+<a href="http://mercurial.selenic.com/">
<img src="/static/hglogo.png" alt="mercurial" /></a>
</div>
<ul>
@@ -189,7 +189,7 @@
<div class="container">
<div class="menu">
<div class="logo">
-<a href="http://www.selenic.com/mercurial/">
+<a href="http://mercurial.selenic.com/">
<img src="/static/hglogo.png" alt="mercurial" /></a>
</div>
<ul>
@@ -272,7 +272,7 @@
<div class="container">
<div class="menu">
<div class="logo">
-<a href="http://www.selenic.com/mercurial/">
+<a href="http://mercurial.selenic.com/">
<img src="/static/hglogo.png" alt="mercurial" /></a>
</div>
<ul>
@@ -350,7 +350,7 @@
<div class="container">
<div class="menu">
<div class="logo">
-<a href="http://www.selenic.com/mercurial/">
+<a href="http://mercurial.selenic.com/">
<img src="/static/hglogo.png" alt="mercurial" /></a>
</div>
<ul>
@@ -424,7 +424,7 @@
<div class="container">
<div class="menu">
<div class="logo">
-<a href="http://www.selenic.com/mercurial/">
+<a href="http://mercurial.selenic.com/">
<img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial" /></a>
</div>
<ul>
@@ -559,7 +559,7 @@
<div class="logo">
-<a href="http://www.selenic.com/mercurial/">
+<a href="http://mercurial.selenic.com/">
<img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial"></a>
</div>
--- a/tests/test-hgweb-removed.out Tue Jun 30 23:16:38 2009 +0200
+++ b/tests/test-hgweb-removed.out Tue Jun 30 23:17:57 2009 +0200
@@ -17,7 +17,7 @@
<div class="container">
<div class="menu">
<div class="logo">
-<a href="http://www.selenic.com/mercurial/">
+<a href="http://mercurial.selenic.com/">
<img src="/static/hglogo.png" alt="mercurial" /></a>
</div>
<ul>
@@ -106,7 +106,7 @@
<div class="container">
<div class="menu">
<div class="logo">
-<a href="http://www.selenic.com/mercurial/">
+<a href="http://mercurial.selenic.com/">
<img src="/static/hglogo.png" alt="mercurial" /></a>
</div>
<ul>
--- a/tests/test-hgweb.out Tue Jun 30 23:16:38 2009 +0200
+++ b/tests/test-hgweb.out Tue Jun 30 23:17:57 2009 +0200
@@ -35,7 +35,7 @@
<div class="container">
<div class="menu">
<div class="logo">
-<a href="http://www.selenic.com/mercurial/">
+<a href="http://mercurial.selenic.com/">
<img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial" /></a>
</div>
<ul>
@@ -105,7 +105,7 @@
<div class="container">
<div class="menu">
<div class="logo">
-<a href="http://www.selenic.com/mercurial/">
+<a href="http://mercurial.selenic.com/">
<img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial" /></a>
</div>
<ul>
--- a/tests/test-hgwebdir.out Tue Jun 30 23:16:38 2009 +0200
+++ b/tests/test-hgwebdir.out Tue Jun 30 23:17:57 2009 +0200
@@ -56,7 +56,7 @@
<div class="container">
<div class="menu">
-<a href="http://www.selenic.com/mercurial/">
+<a href="http://mercurial.selenic.com/">
<img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial" /></a>
</div>
<div class="main">
@@ -192,7 +192,7 @@
<div class="container">
<div class="menu">
-<a href="http://www.selenic.com/mercurial/">
+<a href="http://mercurial.selenic.com/">
<img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial" /></a>
</div>
<div class="main">
--- a/tests/test-highlight.out Tue Jun 30 23:16:38 2009 +0200
+++ b/tests/test-highlight.out Tue Jun 30 23:17:57 2009 +0200
@@ -19,7 +19,7 @@
<div class="container">
<div class="menu">
<div class="logo">
-<a href="http://www.selenic.com/mercurial/">
+<a href="http://mercurial.selenic.com/">
<img src="/static/hglogo.png" alt="mercurial" /></a>
</div>
<ul>
@@ -137,7 +137,7 @@
<div class="container">
<div class="menu">
<div class="logo">
-<a href="http://www.selenic.com/mercurial/">
+<a href="http://mercurial.selenic.com/">
<img src="/static/hglogo.png" alt="mercurial" /></a>
</div>
<ul>
@@ -224,7 +224,7 @@
<div class="container">
<div class="menu">
<div class="logo">
-<a href="http://www.selenic.com/mercurial/">
+<a href="http://mercurial.selenic.com/">
<img src="/static/hglogo.png" alt="mercurial" /></a>
</div>
<ul>
--- a/tests/test-issue322 Tue Jun 30 23:16:38 2009 +0200
+++ b/tests/test-issue322 Tue Jun 30 23:17:57 2009 +0200
@@ -1,5 +1,5 @@
#!/bin/sh
-# http://www.selenic.com/mercurial/bts/issue322
+# http://mercurial.selenic.com/bts/issue322
echo % file replaced with directory
--- a/tests/test-issue352 Tue Jun 30 23:16:38 2009 +0200
+++ b/tests/test-issue352 Tue Jun 30 23:17:57 2009 +0200
@@ -1,5 +1,5 @@
#!/bin/sh
-# http://www.selenic.com/mercurial/bts/issue352
+# http://mercurial.selenic.com/bts/issue352
"$TESTDIR/hghave" eol-in-paths || exit 80
--- a/tests/test-issue433 Tue Jun 30 23:16:38 2009 +0200
+++ b/tests/test-issue433 Tue Jun 30 23:17:57 2009 +0200
@@ -1,5 +1,5 @@
#!/bin/sh
-# http://www.selenic.com/mercurial/bts/issue433
+# http://mercurial.selenic.com/bts/issue433
hg init a
cd a
--- a/tests/test-issue660 Tue Jun 30 23:16:38 2009 +0200
+++ b/tests/test-issue660 Tue Jun 30 23:17:57 2009 +0200
@@ -1,5 +1,5 @@
#!/bin/sh
-# http://www.selenic.com/mercurial/bts/issue660
+# http://mercurial.selenic.com/bts/issue660
hg init a
--- a/tests/test-keyword.out Tue Jun 30 23:16:38 2009 +0200
+++ b/tests/test-keyword.out Tue Jun 30 23:17:57 2009 +0200
@@ -50,14 +50,14 @@
kwdemo print [keywordmaps] configuration and an expansion example
kwexpand expand keywords in the working directory
- kwfiles print files currently configured for keyword expansion
+ kwfiles show files configured for keyword expansion
kwshrink revert expanded keywords in the working directory
enabled extensions:
keyword expand keywords in tracked files
- mq work with a stack of patches
- notify send e-mail notifications for commits/pushes
+ mq manage a stack of patches
+ notify hooks for sending email notifications at commit/push time
use "hg -v help keyword" to show aliases and global options
% hg kwdemo
--- a/tests/test-merge-prompt.out Tue Jun 30 23:16:38 2009 +0200
+++ b/tests/test-merge-prompt.out Tue Jun 30 23:17:57 2009 +0200
@@ -4,6 +4,10 @@
created new head
# non-interactive merge
+ local changed file1 which remote deleted
+use (c)hanged version or (d)elete? c
+remote changed file2 which local deleted
+use (c)hanged version or leave (d)eleted? c
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
status:
--- a/tests/test-merge-tools.out Tue Jun 30 23:16:38 2009 +0200
+++ b/tests/test-merge-tools.out Tue Jun 30 23:17:57 2009 +0200
@@ -304,6 +304,8 @@
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
@@ -512,6 +514,8 @@
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 up --clean' to abandon
--- a/tests/test-mq.out Tue Jun 30 23:16:38 2009 +0200
+++ b/tests/test-mq.out Tue Jun 30 23:17:57 2009 +0200
@@ -1,5 +1,5 @@
% help
-mq extension - work with a stack of patches
+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
@@ -53,7 +53,7 @@
enabled extensions:
- mq work with a stack of patches
+ mq manage a stack of patches
use "hg -v help mq" to show aliases and global options
adding a
--- a/tests/test-newbranch Tue Jun 30 23:16:38 2009 +0200
+++ b/tests/test-newbranch Tue Jun 30 23:17:57 2009 +0200
@@ -19,6 +19,9 @@
hg branch -f default
hg ci -m "clear branch name" -d "1000000 0"
+echo % there should be only one default branch head
+hg heads .
+
hg co foo
hg branch
echo bleah > a
--- a/tests/test-newbranch.out Tue Jun 30 23:16:38 2009 +0200
+++ b/tests/test-newbranch.out Tue Jun 30 23:17:57 2009 +0200
@@ -4,6 +4,13 @@
% branch shadowing
abort: a branch of the same name already exists (use --force to override)
marked working directory as branch default
+% there should be only one default branch head
+changeset: 3:bf1bc2f45e83
+tag: tip
+user: test
+date: Mon Jan 12 13:46:40 1970 +0000
+summary: clear branch name
+
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
foo
created new head
@@ -81,7 +88,6 @@
4:4909a3732169
4909a3732169c0c20011c4f4b8fdff4e3d89b23f 4
-be8523e69bf892e25817fc97187516b3c0804ae4 default
bf1bc2f45e834c75404d0ddab57d53beab56e2f8 default
4909a3732169c0c20011c4f4b8fdff4e3d89b23f foo
67ec16bde7f1575d523313b9bca000f6a6f12dca bar
@@ -91,7 +97,6 @@
be8523e69bf892e25817fc97187516b3c0804ae4 default
% pushing everything
4909a3732169c0c20011c4f4b8fdff4e3d89b23f 4
-be8523e69bf892e25817fc97187516b3c0804ae4 default
bf1bc2f45e834c75404d0ddab57d53beab56e2f8 default
4909a3732169c0c20011c4f4b8fdff4e3d89b23f foo
67ec16bde7f1575d523313b9bca000f6a6f12dca bar
--- a/tests/test-notify.out Tue Jun 30 23:16:38 2009 +0200
+++ b/tests/test-notify.out Tue Jun 30 23:17:57 2009 +0200
@@ -1,4 +1,4 @@
-notify extension - send e-mail notifications for commits/pushes
+notify extension - hooks for sending email notifications at commit/push time
Subscriptions can be managed through hgrc. Default mode is to print
messages to stdout, for testing and configuring.
--- a/tests/test-record.out Tue Jun 30 23:16:38 2009 +0200
+++ b/tests/test-record.out Tue Jun 30 23:17:57 2009 +0200
@@ -27,10 +27,8 @@
options:
- -A --addremove mark new/missing files as added/removed before
- committing
- --close-branch mark a branch as closed, hiding it from the branch
- list
+ -A --addremove mark new/missing files as added/removed before committing
+ --close-branch mark a branch as closed, hiding it from the branch list
-I --include include names matching the given patterns
-X --exclude exclude names matching the given patterns
-m --message use <text> as commit message
--- a/tests/test-status-color Tue Jun 30 23:16:38 2009 +0200
+++ b/tests/test-status-color Tue Jun 30 23:17:57 2009 +0200
@@ -61,6 +61,9 @@
rm deleted
hg copy modified copied
+echo "% test unknown color"
+hg --config color.status.modified=periwinkle status --color=always
+
# Run status with 2 different flags.
# Check if result is the same or different.
# If result is not as expected, raise error
--- a/tests/test-status-color.out Tue Jun 30 23:16:38 2009 +0200
+++ b/tests/test-status-color.out Tue Jun 30 23:17:57 2009 +0200
@@ -124,3 +124,11 @@
adding deleted
adding modified
adding removed
+% test unknown color
+ignoring unknown color/effect 'periwinkle' (configured in color.status.modified)
+M modified
+[0;32;1mA added[0m
+[0;32;1mA copied[0m
+[0;31;1mR removed[0m
+[0;36;1;4m! deleted[0m
+[0;35;1;4m? unknown[0m