This cleans up code and allows specification of values more globally. For
example, it's now possible to specify web.contact in webdir-conf for all
repositories without a specified contact set.
Currently, Watcher is a class in inotify.linux.watcher, but it's also a class
in inotify.server . To complicate things further more, the latter has a
'watcher' attribute, an instance of the former class.
When it comes to the 'watcher' attribute of the Server class in inotify.server,
one can get quite confused: is it a Watcher object from inotify.server, or from
inotify.linux.watcher?
Changes:
* in inotify.linux.watcher : nothing
* in inotify.server :
** Watcher class is renamed to RepoWatcher
** server.watcher is renamed to server.repowatcher
RfC2822 mandates a line length limit of 998 byte + CRLF.
Python mail tools break lines at 990 byte. To prevent
that, we quoted-printable encode overly long lines.
The posixfile_nt code hits the win32 file API directly, which
essentially amounts to performing a system call for every read and
write. This is slow.
We add a C extension that lets us use a Python file object instead,
but preserve our desired POSIX-like semantics (the ability to rename
or delete a file that is being accessed).
If the C extension is not available (e.g. in a VPS environment
without a compiler), we fall back to the posixfile_nt code.
Remove hginside var and the test it relates to:
not( top or not hginside ) == (not top) and hginside, so the only case
when nothing will be yielded is when hginside is True and top is False.
Because of the returns placed upstream, this case will not happen anymore.
We can then safely remove hginside and the (if)s
When not in root repo, if we meet a .hg, bail out.
break was used, but return can be safely used instead: if we go through break
then (top or not hginside) == False -> nothing is done after the for loop
Do not yield (bool, tuple) in a subfunction and check later:
'if not bool: yield tuple'.
Instead simplify so the tuple doesnt get yielded on the first time, to avoid
systematic checks.
When we try to build manpages with xmlto and sed, but xmlto is
missing fail at the xmlto stage. Otherwise, one may run `cd doc;
make' and miss the warnings like:
xmlto: not found
sed: hg.1: No such file or directory
and end up with empty files installed as manpages.