Posted by: Josh | April 26, 2010

Mercurial 1.5.1 Shared Server Upgrade Available

This release is a replacement to my previous distribution of pre-compiled Hg 1.3.1 scripts. Official Selenic Mercurial changelog here.

Mercurial 1.5.1 64-bit
Python 2.4 | Python 2.5

Mercurial 1.5.1 32-bit
Python 2.4 | Python 2.5

All packages contain these extensions.

*Picking the wrong version will lead to an error which should give you a hint to which is the correct version.

Upgrade Instructions

* Note: the following will momentarily disrupt service to your Mercurial server *

  1. Navigate to where your current Mercurial Python libraries reside. Mine is /home/jcarrier/python (from previous setup).
  2. Rename the python folder to python_1-3-1 (so it’s out of the way, but not deleted)
  3. Upload the python folder extracted from one of the above archives, making this the new python folder.
  4. Verify system is functional. Optionally delete python_1-3-1, or keep it around for nostalgic value. Done!

The .cgi script in your web directory doesn’t need to be replaced in this upgrade.

Installation Instructions

Follow my previous guide, but use this file in place of the one referenced.


  1. Great stuff here and at too

    I got it working, however your Mercurial 1.5.1 32-bit Python 2.4 is missing the *.so from the c libs used.. I pulled them from Python 2.5 and everything worked fine.

  2. Any chance you can provide new versions of these? I really appreciate your guide for hg on a shared host.

  3. I have an ifastnet shared hosting account.
    They say they have python installed.
    But there is no Shell Access to the host (I dont’t know how to test the python versión or if it is installed at all).
    I have followed your instructions.

    When I tried to Access the mercurial web site, I have this error:
    Do you know what is going on?
    Thanks for any help

    Traceback (most recent call last):
    File “hgwebdir.cgi”, line 66, in
    application = hgwebdir(‘hgweb.config’)
    File “../python/mercurial/hgweb/”, line 52, in __init__
    File “../python/mercurial/hgweb/”, line 61, in refresh
    self.ui = ui.ui()
    File “../python/mercurial/”, line 38, in __init__
    for f in util.rcpath():
    File “../python/mercurial/”, line 1200, in rcpath
    _rcpath = os_rcpath()
    File “../python/mercurial/”, line 1174, in os_rcpath
    path = system_rcpath()
    File “../python/mercurial/”, line 42, in system_rcpath
    File “../python/mercurial/”, line 31, in rcfiles
    for f, kind in osutil.listdir(rcdir)
    File “../python/mercurial/”, line 75, in __getattribute__
    File “../python/mercurial/”, line 47, in _load
    mod = _origimport(head, globals, locals)
    ImportError: ../python/mercurial/ undefined symbol: Py_InitModule4

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s


%d bloggers like this: