osutil.c: Support for py3k added.
This patch adds support for py3k in osutil.c. This is accomplished by including
a header file responsible for abstracting the API differences between python 2
and python 3.
listdir_stat_type is also changed in the following way: A previous call to
PyObject_HEAD_INIT is substituted to a call to PyVarObject_HEAD_INIT, which
makes the object buildable in both python 2.x and 3.x without weird warnings.
After testing on windows, some modifications were also made in the posixfile
function, as it calls PyFile_FromFile and PyFile_SetBufSize, which are gone in
py3k. In py3k the PyFile_* API is, actually a wrapper over the io module, and
code has been adapted accordingly to fit py3k.
### --- User interface
[ui]
### show changed files and be a bit more verbose if True
# verbose = True
### username data to appear in comits
### it usually takes the form: Joe User <joe.user@host.com>
# username = Joe User <j.user@example.com>
### --- Extensions
[extensions]
### each extension has its own 'extension_name=path' line
### the default python library path is used when path is left blank
### the hgext dir is used when 'hgext.extension_name=' is written
### acl - Access control lists
### hg help acl
# hgext.acl =
### bisect - binary search changesets to detect bugs
### hg help bisect
# hgext.hbisect =
### bugzilla - update bugzilla bugs when changesets mention them
### hg help bugzilla
# hgext.bugzilla =
### extdiff - Use external diff application instead of builtin one
# hgext.extdiff =
### gpg - GPG checks and signing
### hg help gpg
# hgext.gpg =
### graphlog - ASCII graph log
### hg help glog
# hgext.graphlog =
### hgk - GUI repository browser
### hg help view
# hgext.hgk =
### mq - Mercurial patch queues
### hg help mq
# hgext.mq =
### notify - Template driven e-mail notifications
### hg help notify
# hgext.notify =
### patchbomb - send changesets as a series of patch emails
### hg help email
# hgext.patchbomb =
### churn - create a graph showing who changed the most lines
### hg help churn
# hgext.churn = /home/user/hg/hg/contrib/churn.py
### eol - automatic management of line endings
# hgext.eol =
### --- hgk additional configuration
[hgk]
### set executable path
# path = /home/user/hg/hg/contrib/hgk
### --- Hook to Mercurial actions - See hgrc man page for avaliable hooks
[hooks]
### Example notify hooks (load hgext.notify extension before use)
# incoming.notify = python:hgext.notify.hook
# changegroup.notify = python:hgext.notify.hook
### Email configuration for the notify and patchbomb extensions
[email]
### Your email address
# from = user@example.com
### Method to send email - smtp or /usr/sbin/sendmail or other program name
# method = smtp
### smtp server to send email to
[smtp]
# host = mail
# port = 25
# tls = false
# username = user
# password = blivet
# local_hostname = myhost
### --- Email notification hook for server
[notify]
### multiple sources can be specified as a whitespace or comma separated list
# sources = serve push pull bundle
### set this to False when you're ready for mail to start sending
# test = True
### path to config file with names of subscribers
# config = /path/to/subscription/file