[Bug 975668] [NEW] mailman.client conflicts with mailman installation

Public bug reported: If mailman.client is loaded as a separate module (as instructed), then mailman cannot exist in the same environment because there are two "mailman" modules to search. I found this when I tried to generate sphinx documentation for mailman after I had installed protorious. To reproduce: mkvirtualenv BUG bzr branch lp:mailman.client cd mailman.client/ python setup.py develop easy_install sphinx cd .. bzr branch lp:mailman cd mailman python bootstrap.py bin/buildout python setup.py build_sphinx Results in: Running Sphinx v1.1.3 Traceback (most recent call last): File "setup.py", line 112, in <module> 'zope.testing<4', File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/core.py", line 152, in setup dist.run_commands() File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 953, in run_commands self.run_command(cmd) File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 972, in run_command cmd_obj.run() File "/Volumes/UserSpace/rkw/.virtualenvs/BUG/lib/python2.7/site-packages/Sphinx-1.1.3-py2.7.egg/sphinx/setup_command.py", line 140, in run freshenv=self.fresh_env) File "/Volumes/UserSpace/rkw/.virtualenvs/BUG/lib/python2.7/site-packages/Sphinx-1.1.3-py2.7.egg/sphinx/application.py", line 102, in __init__ confoverrides or {}, self.tags) File "/Volumes/UserSpace/rkw/.virtualenvs/BUG/lib/python2.7/site-packages/Sphinx-1.1.3-py2.7.egg/sphinx/config.py", line 216, in __init__ exec code in config File "/Volumes/UserSpace/rkw/.virtualenvs/BUG/mailman/conf.py", line 54, in <module> from mailman.version import VERSION ImportError: No module named version ** Affects: mailman Importance: Undecided Status: New ** Tags: mailman3 -- You received this bug notification because you are a member of Mailman Coders, which is subscribed to GNU Mailman. https://bugs.launchpad.net/bugs/975668 Title: mailman.client conflicts with mailman installation To manage notifications about this bug go to: https://bugs.launchpad.net/mailman/+bug/975668/+subscriptions

** Changed in: mailman Status: New => Triaged ** Changed in: mailman Importance: Undecided => Low -- You received this bug notification because you are a member of Mailman Coders, which is subscribed to GNU Mailman. https://bugs.launchpad.net/bugs/975668 Title: mailman.client conflicts with mailman installation To manage notifications about this bug go to: https://bugs.launchpad.net/mailman/+bug/975668/+subscriptions

I tried to reproduce this bug on mailman3, I created the virtualenvironment using pyvenv-3.4 venv-3.4 --without-pip and then manually installing pip and setuptools inside venv-3.4 cd venv-3.4 source bin/activate cd .. bzr branch lp:mailman.client cd mailman.client/ python setup.py develop easy_install sphinx cd .. bzr branch lp:mailman cd mailman python setup.py build_sphinx As bootstrap.py is no longer present I omitted that step also I omitted the bin/buildout step Resulted in: running build_sphinx creating /home/pkoli/Desktop/BUG/mailman/build creating /home/pkoli/Desktop/BUG/mailman/build/sphinx creating /home/pkoli/Desktop/BUG/mailman/build/sphinx/doctrees creating /home/pkoli/Desktop/BUG/mailman/build/sphinx/html Running Sphinx v1.3 loading pickled environment... not yet created WARNING: 'default' html theme has been renamed to 'classic'. Please change your html_theme setting either to the new 'alabaster' default theme, or to 'classic' to keep using the old default. building [mo]: targets for 0 po files that are out of date building [html]: targets for 122 source files that are out of date updating environment: 122 added, 0 changed, 0 removed reading sources... [100%] src/mailman/styles/docs/styles looking for now-outdated files... none found pickling environment... done checking consistency... done preparing documents... done WARNING: dot command 'dot' cannot be run (needed for graphviz output), check the graphviz_dot setting writing output... [100%] src/mailman/styles/docs/styles generating indices... genindex writing additional pages... search copying static files... done copying extra files... done dumping search index in English (code: en) ... done dumping object inventory... done build succeeded, 2 warnings. index.html -> README.html I am interested in fixing this bug, can someone assign it to me, I'll start by first testing different cases that can be used to reproduce it and then find a possible solution. -- You received this bug notification because you are a member of Mailman Coders, which is subscribed to GNU Mailman. https://bugs.launchpad.net/bugs/975668 Title: mailman.client conflicts with mailman installation To manage notifications about this bug go to: https://bugs.launchpad.net/mailman/+bug/975668/+subscriptions

** Description changed: If mailman.client is loaded as a separate module (as instructed), then mailman cannot exist in the same environment because there are two "mailman" modules to search. I found this when I tried to generate sphinx documentation for mailman - after I had installed protorious. + after I had installed postorius. To reproduce: mkvirtualenv BUG bzr branch lp:mailman.client cd mailman.client/ python setup.py develop easy_install sphinx cd .. bzr branch lp:mailman cd mailman python bootstrap.py bin/buildout python setup.py build_sphinx - Results in: Running Sphinx v1.1.3 Traceback (most recent call last): - File "setup.py", line 112, in <module> - 'zope.testing<4', - File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/core.py", line 152, in setup - dist.run_commands() - File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 953, in run_commands - self.run_command(cmd) - File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 972, in run_command - cmd_obj.run() - File "/Volumes/UserSpace/rkw/.virtualenvs/BUG/lib/python2.7/site-packages/Sphinx-1.1.3-py2.7.egg/sphinx/setup_command.py", line 140, in run - freshenv=self.fresh_env) - File "/Volumes/UserSpace/rkw/.virtualenvs/BUG/lib/python2.7/site-packages/Sphinx-1.1.3-py2.7.egg/sphinx/application.py", line 102, in __init__ - confoverrides or {}, self.tags) - File "/Volumes/UserSpace/rkw/.virtualenvs/BUG/lib/python2.7/site-packages/Sphinx-1.1.3-py2.7.egg/sphinx/config.py", line 216, in __init__ - exec code in config - File "/Volumes/UserSpace/rkw/.virtualenvs/BUG/mailman/conf.py", line 54, in <module> - from mailman.version import VERSION + File "setup.py", line 112, in <module> + 'zope.testing<4', + File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/core.py", line 152, in setup + dist.run_commands() + File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 953, in run_commands + self.run_command(cmd) + File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 972, in run_command + cmd_obj.run() + File "/Volumes/UserSpace/rkw/.virtualenvs/BUG/lib/python2.7/site-packages/Sphinx-1.1.3-py2.7.egg/sphinx/setup_command.py", line 140, in run + freshenv=self.fresh_env) + File "/Volumes/UserSpace/rkw/.virtualenvs/BUG/lib/python2.7/site-packages/Sphinx-1.1.3-py2.7.egg/sphinx/application.py", line 102, in __init__ + confoverrides or {}, self.tags) + File "/Volumes/UserSpace/rkw/.virtualenvs/BUG/lib/python2.7/site-packages/Sphinx-1.1.3-py2.7.egg/sphinx/config.py", line 216, in __init__ + exec code in config + File "/Volumes/UserSpace/rkw/.virtualenvs/BUG/mailman/conf.py", line 54, in <module> + from mailman.version import VERSION ImportError: No module named version ** Changed in: mailman Assignee: (unassigned) => Pavan Koli (pskoli93) -- You received this bug notification because you are a member of Mailman Coders, which is subscribed to GNU Mailman. https://bugs.launchpad.net/bugs/975668 Title: mailman.client conflicts with mailman installation To manage notifications about this bug go to: https://bugs.launchpad.net/mailman/+bug/975668/+subscriptions

On Mar 14, 2015, at 01:29 PM, Pavan Koli wrote:
If mailman.client is loaded as a separate module (as instructed), then mailman cannot exist in the same environment because there are two "mailman" modules to search.
Use mailman.client with Python 3 and install them both using namespace packages. I haven't actually tried this, but it's (perhaps) how it should work. -- You received this bug notification because you are a member of Mailman Coders, which is subscribed to GNU Mailman. https://bugs.launchpad.net/bugs/975668 Title: mailman.client conflicts with mailman installation To manage notifications about this bug go to: https://bugs.launchpad.net/mailman/+bug/975668/+subscriptions

I followed the steps as mentioned to reproduce the error. mkvirtualenv BUGS bzr branch lp:mailman.client cd mailman.client/ python setup.py develop easy_install sphinx cd .. bzr branch lp:mailman cd mailman python setup.py develop python setup.py build_sphinx The build succeeds with no warnings. I ran through this documentation PEP420 (https://www.python.org/dev/peps/pep-0420/) to check about namespace packages, as I thought the error may be associated with it. Checking the output error which Richard has got-
File "/Volumes/UserSpace/rkw/.virtualenvs/BUG/mailman/conf.py", line 54, in <module> No conf.py file present now, instead I looked in options.py
from mailman.version import VERSION The above line no longer exists, now the line given below exists. from mailman.version import MAILMAN_VERSION(http://bazaar.launchpad.net/~mailman-coders/mailman/3.0/view/head:/src/mailm...)
ImportError: No module named version I think it was caused due to some namespace package and modules issues which were present and were resolved using PEP 420.
As this bug was reported on 2012-04-07 and the PEP 420 was created on 2012-04-19, maybe the BUG has been resolved by applying changes as recommended in PEP 420. Further trying to confirm whether the issue has been resolved, I checked the file __init__.py(http://bazaar.launchpad.net/~mailman- coders/mailman/3.0/view/head:/src/mailman/__init__.py) According to this post(http://stackoverflow.com/questions/1675734/how- do-i-create-a-namespace-package-in-python/27586272#27586272) the code given in __init__.py , is sufficient to handle the different modules and namespace packages issues. So ideally we should be able to run import mailman.version without any errors, and the successful build which I got at the end confirms that the BUG has been resolved. -- You received this bug notification because you are a member of Mailman Coders, which is subscribed to GNU Mailman. https://bugs.launchpad.net/bugs/975668 Title: mailman.client conflicts with mailman installation To manage notifications about this bug go to: https://bugs.launchpad.net/mailman/+bug/975668/+subscriptions

** Changed in: mailman Status: Triaged => Fix Released -- You received this bug notification because you are a member of Mailman Coders, which is subscribed to GNU Mailman. https://bugs.launchpad.net/bugs/975668 Title: mailman.client conflicts with mailman installation To manage notifications about this bug go to: https://bugs.launchpad.net/mailman/+bug/975668/+subscriptions

Some observations-
Checking the output error which Richard has got-
File "/Volumes/UserSpace/rkw/.virtualenvs/BUG/mailman/conf.py", line 54, in <module> No conf.py file present now, instead I looked in options.py
from mailman.version import VERSION The above line no longer exists, now the line given below exists. from mailman.version import MAILMAN_VERSION(http://bazaar.launchpad.net/~mailman->coders/mailman/3.0/view/head:/src/mailman/options.py#L34)
The file conf.py is present in mailman folder, I was looking for it in src/mailman folder.
from mailman.version import VERSION The above line no longer exists, now the line given below exists. from mailman.version import MAILMAN_VERSION(http://bazaar.launchpad.net/~mailman->coders/mailman/3.0/view/head:/src/mailman/options.py#L34)
The line exists at (http://bazaar.launchpad.net/~mailman- coders/mailman/3.0/view/head:/conf.py#L54) Submitting a minor patch for print statement. ** Patch added: "Minor change to print statement" https://bugs.launchpad.net/mailman/+bug/975668/+attachment/4354856/+files/co... -- You received this bug notification because you are a member of Mailman Coders, which is subscribed to GNU Mailman. https://bugs.launchpad.net/bugs/975668 Title: mailman.client conflicts with mailman installation To manage notifications about this bug go to: https://bugs.launchpad.net/mailman/+bug/975668/+subscriptions
participants (3)
-
Barry Warsaw
-
Pavan Koli
-
Richard Wackerbarth