Help with mailman 3, attempting to build branch
Hi,
This is a newbie question, I realise, but I'm trying to get a branch of mailman 3 working, so that I can add in some support for LDAP/mailAlternateAddress lookups, which I know will be useful for our site, and hopefully useful for others.
I've worked through the bzr install[0] and finally have my own separate install of Python 2.7 with bzr2.3, just for mailman. However, 2.7 doesn't appear to work - should I be using Python 2.6 instead? Is there a way to get it working with 2.7? [1]
Incidentally, are there plans to allow installs to a different location? If you specify a prefix to install under, it checks for the presence of the Python site-packages and fails if they're not present. Is it going to be a requirement to install under the Python tree, or is this just for development?
Thanks, Simon.
[0] Debian/lenny has Python 2.5, which is too old. It does have bzr 2.0, which is apparently recent enough, however each installation of Python expects bzr to be in the same bin/ directory as the python binary, so one must build bzr independantly for each Python install. This isn't very intuitive for someone new to this tool.
[1] "python-2.7 setup.py build" produces: Traceback (most recent call last): File "setup.py", line 112, in <module> docs=['Sphinx', 'z3c.recipe.sphinxdoc'], <... whole lot of lines about run_command...> File "/$PYTHON_HOME/lib/python2.7/site-packages/setuptools_bzr-2.0-py2.7.egg/setuptools_bzr/__init__.py", line 50, in bzrlib_get_children inv = branch.repository.get_revision_inventory(branch.last_revision()) AttributeError: 'CHKInventoryRepository' object has no attribute 'get_revision_inventory'
-- The Wellcome Trust Sanger Institute is operated by Genome Research Limited, a charity registered in England with number 1021457 and a company registered in England with number 2742969, whose registered office is 215 Euston Road, London, NW1 2BE.
On Oct 27, 2010, at 11:02 AM, Simon Fraser wrote:
I've worked through the bzr install[0] and finally have my own separate install of Python 2.7 with bzr2.3, just for mailman. However, 2.7 doesn't appear to work - should I be using Python 2.6 instead? Is there a way to get it working with 2.7? [1]
Hi Simon. I can reproduce this with Python2.7 on Ubuntu 10.10. This is caused by the locknix package, which depends on setuptools_bzr. The issues you've identified with bzr on Python2.7 are causing the setuptools_bzr dependency to fail.
The upstream fix is to remove this dependency from the locknix setup.py file. I'll try to do that in the next day or so. Once I release a new locknix package, it should work again. (Side note: I want to move locknix into the flufl namespace package, so things will change a bit more at some point in the future, but I won't block a quick fix on that reorganization.)
Incidentally, are there plans to allow installs to a different location? If you specify a prefix to install under, it checks for the presence of the Python site-packages and fails if they're not present. Is it going to be a requirement to install under the Python tree, or is this just for development?
Can you provide the commands that failed for you? I'd like to try to reproduce this. If you can, submit a bug report.
Ideally, the 'mailman' package will be installed under site-packages (or dist-packages for the Debuntudes in the audience ;) and you'll have access to just the few command line scripts in /usr/bin.
Alternatively, it should be possible to build Mailman 3 in a virtualenv to stick it anywhere you want, though I haven't tried that in a while.
-Barry
The upstream fix is to remove this dependency from the locknix setup.py file. I'll try to do that in the next day or so. Once I release a new locknix package, it should work again. (Side note: I want to move locknix into the flufl namespace package, so things will change a bit more at some point in the future, but I won't block a quick fix on that reorganization.)
Thanks for the quick response. I'll use Python 2.6.3 until it changes.
Incidentally, are there plans to allow installs to a different location?
Can you provide the commands that failed for you? I'd like to try to reproduce this. If you can, submit a bug report.
Submitted, as #667252
Ideally, the 'mailman' package will be installed under site-packages (or dist-packages for the Debuntudes in the audience ;) and you'll have access to just the few command line scripts in /usr/bin.
I think the options for me will be "Build a .deb" or "Install Python & Mailman in their own environment." I asked because our current Mailman installation is on its own partition, replicated with DRBD, and I was concerned about being able to continue doing that.
Thanks, Simon.
-- The Wellcome Trust Sanger Institute is operated by Genome Research Limited, a charity registered in England with number 1021457 and a company registered in England with number 2742969, whose registered office is 215 Euston Road, London, NW1 2BE.
On Oct 27, 2010, at 01:33 PM, Simon Fraser wrote:
I think the options for me will be "Build a .deb" or "Install Python & Mailman in their own environment." I asked because our current Mailman installation is on its own partition, replicated with DRBD, and I was concerned about being able to continue doing that.
I'll likely start building packages of this once we get to beta. I'll probably also build it in my PPA for Ubuntu. You're use cases are important so thanks for submitting the bug report, and if you have time and motivation, patches are welcome. :)
-Barry
On Oct 27, 2010, at 08:09 AM, Barry Warsaw wrote:
Hi Simon. I can reproduce this with Python2.7 on Ubuntu 10.10. This is caused by the locknix package, which depends on setuptools_bzr. The issues you've identified with bzr on Python2.7 are causing the setuptools_bzr dependency to fail.
FWIW, the Mailman 3 bzr trunk should now work fine[*] with Python 2.7 (without breaking Python 2.6 :). I fixed both the locknix problem, and two minor Python 2.7 compatibility problems.
-Barry
[*] in the sense that the full test suite passes.
participants (2)
-
Barry Warsaw
-
Simon Fraser