From stephen at xemacs.org Tue Sep 1 04:53:45 2009 From: stephen at xemacs.org (Stephen J. Turnbull) Date: Tue, 01 Sep 2009 11:53:45 +0900 Subject: [Mailman-Developers] Proposed: remove address-obfuscation code from Mailman 3 In-Reply-To: References: <20090824143731.GA1949@gsp.org> <8763cc316y.fsf@uwakimon.sk.tsukuba.ac.jp> <87ws4s13fe.fsf@uwakimon.sk.tsukuba.ac.jp> <1166767B-B4CB-4329-9424-D9FA44E2A7F5@list.org> <87praft86p.fsf@uwakimon.sk.tsukuba.ac.jp> Message-ID: <871vmrv0hy.fsf@uwakimon.sk.tsukuba.ac.jp> Barry Warsaw writes: > Let's say I just joined the XEmacs development mailing list after a > long absence. Hey, welcome back! Do you plan to return to Supercite maintenance? > I find a message in the archive from two years ago that is relevant > to an issue I'm having. I'd like to follow up to that message > using my normal mail toolchain, but I found the archive page > through Google. Sure, that's a valid use case. I'm not sure that it couldn't be handled by an appropriate mailto URL, though. And I suspect it's less common than the case of private messages (no evidence, just introspection). From iane at sussex.ac.uk Tue Sep 1 11:02:26 2009 From: iane at sussex.ac.uk (Ian Eiloart) Date: Tue, 01 Sep 2009 10:02:26 +0100 Subject: [Mailman-Developers] Proposed: remove address-obfuscation code from Mailman 3 In-Reply-To: <200908290420.04618.julian@mehnle.net> References: <20090824143731.GA1949@gsp.org> <8BF2AC28-BFCD-4F0B-AB28-CA6D47B863C2@python.org> <20090829020752.M10054@nleaudio.com> <200908290420.04618.julian@mehnle.net> Message-ID: <17AA4F93E23A1D6497AD7F7C@lewes.staff.uscs.susx.ac.uk> --On 29 August 2009 04:19:58 +0000 Julian Mehnle wrote: > Bob Puff wrote: > >> That's the logical progression of that argument, and is the good reason >> why obfuscation or even removal of parts is not only a good idea, its a >> necessity. Exposing raw email addresses in their normal form is real >> low-hanging fruit. >> >> Regardless of what I think, my clients will cry bloody murder if emails >> leak out. I had one person recently google their email address, and >> found a link to an archive file that should have been private. I had >> removed all links to the archives, but somehow Google found it, indexed >> it, and the guy threatened me with bloody murder if I didn't take it >> down. Sheesh. > > There's robots.txt, you know? If this is just about user outcry, then > robots.txt will fix it (since all legitimate search engines honor it). But, the legitimate search engines aren't the problem. It's the harvesters, which probably don't honour robots.txt. If you prevent Google from indexing the archive, then you just hide the problem. > -Julian -- Ian Eiloart IT Services, University of Sussex 01273-873148 x3148 For new support requests, see http://www.sussex.ac.uk/its/help/ From iane at sussex.ac.uk Tue Sep 1 11:08:01 2009 From: iane at sussex.ac.uk (Ian Eiloart) Date: Tue, 01 Sep 2009 10:08:01 +0100 Subject: [Mailman-Developers] Proposed: remove address-obfuscation code from Mailman 3 In-Reply-To: <4A9C053F.9080501@scu.edu> References: <20090824143731.GA1949@gsp.org> <8BF2AC28-BFCD-4F0B-AB28-CA6D47B863C2@python.org> <20090829020752.M10054@nleaudio.com> <200908290420.04618.julian@mehnle.net> <4A9C053F.9080501@scu.edu> Message-ID: <9B923857FE2EB4207A15C55D@lewes.staff.uscs.susx.ac.uk> --On 31 August 2009 10:15:43 -0700 C Nulk wrote: > I am pretty sure allowing the raw email addresses to be available is > going to go over like a lead balloon here. Here, too. Our site would probably deploy some other mailing list software. > Anything (however minor) to > help protect the users/clients email addresses is helpful despite what > others think. All the published research evidence is that email address obfuscation helps a lot. At a University site, most student email addresses won't be published anywhere EXCEPT in our mailing list archives. That means that the best way for spammers to acquire student email addresses is to harvest their addresses from our list archives. Students get a lot less spam than academic staff whose addresses appear all over the place. So much so that everyone who's ever fallen foul of phishing here has been a staff member, despite being outnumbered 10:1 by students. -- Ian Eiloart IT Services, University of Sussex 01273-873148 x3148 For new support requests, see http://www.sussex.ac.uk/its/help/ From justinlong at gmail.com Tue Sep 1 17:20:14 2009 From: justinlong at gmail.com (Justin Long) Date: Tue, 1 Sep 2009 10:20:14 -0500 Subject: [Mailman-Developers] A couple of functions it would be nice to have from the command line Message-ID: <876ecebe0909010820l7ddcb3dbl6f5b429816c415f2@mail.gmail.com> I moderate a mailman installation at http://www.strategicnetwork.org that has over 120,000 subscribers to various lists. Here are some functions that would be nice:' 1) the ability to add a new subscription to a given list without importing a text file. Right now it seems to be impossible to add a single address to a single list in the same way you can remove an address. This would be useful for adding a one-off email address change. adduser -l /list/thelist johndoe at gmail.com 2) the ability to change an email address en masse in all lists. At least once or twice a month I have people who write in who want to have their email address changed and they aren't technically minded enough to do this on their own. As a customer service issue it would be nice to simply accomodate them, e.g. changeuser johndoe at gmail.com johndoe at smith.com Cordially, Justin Long -- -- Justin D. Long Swarming: building high-impact decentralized networks to reach the unreached Through: 1-day Swarm Schools, multiday Swarm Labs, yearlong Swarm Coaching ------- Email justinlong at gmail.com Skype nsmjustinlong OR call/SMS 757-559-1515 http://www.strategicnetwork.org - magazine, e-groups, knowledgebase http://www.google.com/reader/shared/justinlong - shared annotated bloglinks http://www.twitter.com/nsmjustinlong - daily activities, swarming notes http://www.facebook.com/justindavidlong - Facebook page http://www.accessofevil.org - if a demon could blog, it might look like this ------- Consider sponsoring our ministries: one-time and monthly gifts appreciated! Postal mail: RUN Ministries, PO Box 6543, Virginia Beach, VA 23456, USA Contribute online: http://www.strategicnetwork.org/contribute ------- Never retreat. Never surrender. Never cut a deal with a dragon. No armor? Unclean life? Then do not meddle in the affairs of dragons, for you are crunchy and taste good with ketchup. From adam-mailman at amyl.org.uk Tue Sep 1 18:06:56 2009 From: adam-mailman at amyl.org.uk (Adam McGreggor) Date: Tue, 1 Sep 2009 17:06:56 +0100 Subject: [Mailman-Developers] A couple of functions it would be nice to have from the command line In-Reply-To: <876ecebe0909010820l7ddcb3dbl6f5b429816c415f2@mail.gmail.com> References: <876ecebe0909010820l7ddcb3dbl6f5b429816c415f2@mail.gmail.com> Message-ID: <20090901160656.GY30597@amyl.org.uk> On Tue, Sep 01, 2009 at 10:20:14AM -0500, Justin Long wrote: > I moderate a mailman installation at http://www.strategicnetwork.org that > has over 120,000 subscribers to various lists. Here are some functions that > would be nice:' > 1) the ability to add a new subscription to a given list without importing a > text file. Right now it seems to be impossible to add a single address to a > single list in the same way you can remove an address. This would be useful > for adding a one-off email address change. > > adduser -l /list/thelist johndoe at gmail.com add_members -r- listname ^d > 2) the ability to change an email address en masse in all lists. At least > once or twice a month I have people who write in who want to have their > email address changed and they aren't technically minded enough to do this > on their own. As a customer service issue it would be nice to simply > accomodate them, e.g. > > changeuser johndoe at gmail.com johndoe at smith.com clone_member -r old at example.org new at example.org -- ``Sitting in a church doesn't make you a Christian, any more than sitting in a garage makes you a car.'' (spotted in Strasbourg) From justinlong at gmail.com Tue Sep 1 18:15:58 2009 From: justinlong at gmail.com (Justin Long) Date: Tue, 1 Sep 2009 11:15:58 -0500 Subject: [Mailman-Developers] A couple of functions it would be nice to have from the command line In-Reply-To: <20090901160656.GY30597@amyl.org.uk> References: <876ecebe0909010820l7ddcb3dbl6f5b429816c415f2@mail.gmail.com> <20090901160656.GY30597@amyl.org.uk> Message-ID: <876ecebe0909010915m1d6c407ei36ff267c01064396@mail.gmail.com> Thanks. Guess I should investigate some of these functions a little more closely! I appreciate the quick feedback from the community. Another method for adding a single address that I received was echo 'johndoe at gmail.com' | add_members -r - listname Wouldn't it be nice to simply add this as a function somehow to the existing add_members routine? :) Cordially, Justin Long On Tue, Sep 1, 2009 at 11:06 AM, Adam McGreggor wrote: > On Tue, Sep 01, 2009 at 10:20:14AM -0500, Justin Long wrote: > > I moderate a mailman installation at http://www.strategicnetwork.orgthat > > has over 120,000 subscribers to various lists. Here are some functions > that > > would be nice:' > > 1) the ability to add a new subscription to a given list without > importing a > > text file. Right now it seems to be impossible to add a single address to > a > > single list in the same way you can remove an address. This would be > useful > > for adding a one-off email address change. > > > > adduser -l /list/thelist johndoe at gmail.com > > add_members -r- listname > > ^d > > > 2) the ability to change an email address en masse in all lists. At least > > once or twice a month I have people who write in who want to have their > > email address changed and they aren't technically minded enough to do > this > > on their own. As a customer service issue it would be nice to simply > > accomodate them, e.g. > > > > changeuser johndoe at gmail.com johndoe at smith.com > > clone_member -r old at example.org new at example.org > > > -- > ``Sitting in a church doesn't make you a Christian, > any more than sitting in a garage makes you a car.'' (spotted in > Strasbourg) > -- -- Justin D. Long Swarming: building high-impact decentralized networks to reach the unreached Through: 1-day Swarm Schools, multiday Swarm Labs, yearlong Swarm Coaching ------- Email justinlong at gmail.com Skype nsmjustinlong OR call/SMS 757-559-1515 http://www.strategicnetwork.org - magazine, e-groups, knowledgebase http://www.google.com/reader/shared/justinlong - shared annotated bloglinks http://www.twitter.com/nsmjustinlong - daily activities, swarming notes http://www.facebook.com/justindavidlong - Facebook page http://www.accessofevil.org - if a demon could blog, it might look like this ------- Consider sponsoring our ministries: one-time and monthly gifts appreciated! Postal mail: RUN Ministries, PO Box 6543, Virginia Beach, VA 23456, USA Contribute online: http://www.strategicnetwork.org/contribute ------- Never retreat. Never surrender. Never cut a deal with a dragon. No armor? Unclean life? Then do not meddle in the affairs of dragons, for you are crunchy and taste good with ketchup. From mark at msapiro.net Tue Sep 1 18:43:05 2009 From: mark at msapiro.net (Mark Sapiro) Date: Tue, 1 Sep 2009 09:43:05 -0700 Subject: [Mailman-Developers] A couple of functions it would be nice to have from the command line In-Reply-To: <876ecebe0909010820l7ddcb3dbl6f5b429816c415f2@mail.gmail.com> Message-ID: Justin Long wrote: >1) the ability to add a new subscription to a given list without importing a >text file. Right now it seems to be impossible to add a single address to a >single list in the same way you can remove an address. This would be useful >for adding a one-off email address change. > >adduser -l /list/thelist johndoe at gmail.com It's awkward, but echo johndoe at gmail.com | bin/add_members -r - thelist will do it or you could make an adduser shell script to parse your arguments and call add_members appropriately >2) the ability to change an email address en masse in all lists. At least >once or twice a month I have people who write in who want to have their >email address changed and they aren't technically minded enough to do this >on their own. As a customer service issue it would be nice to simply >accomodate them, e.g. > >changeuser johndoe at gmail.com johndoe at smith.com See -- Mark Sapiro The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan From max at jcp.org Mon Sep 21 20:58:37 2009 From: max at jcp.org (Max Lanfranconi) Date: Mon, 21 Sep 2009 11:58:37 -0700 Subject: [Mailman-Developers] Failed bin/test for mailman 3.0 alpha3 Message-ID: <4AB7CCDD.2020406@jcp.org> Hi, After installing Python 2.6 as required, I downloaded and installed mailman3.0 a3 on a Solaris 10 server with the following commands: % python bootstrap.py Downloading http://pypi.python.org/packages/2.6/s/setuptools/setuptools-0.6c9-py2.6.egg Creating directory '/export/home/bogart/mailman-3.0.0a3/bin'. Creating directory '/export/home/bogart/mailman-3.0.0a3/parts'. Creating directory '/export/home/bogart/mailman-3.0.0a3/eggs'. Creating directory '/export/home/bogart/mailman-3.0.0a3/develop-eggs'. Generated script '/export/home/bogart/mailman-3.0.0a3/bin/buildout'. % bin/buildout Develop: '/export/home/bogart/mailman-3.0.0a3/.' The python package 'Pyrex' is not available. If the .c files are available, they will be built, but modifying the .pyx files will not rebuild them. bzrlib/_annotator_pyx.c:1414: warning: '__Pyx_SetItemInt' defined but not used bzrlib/_bencode_pyx.c: In function `__pyx_f_12_bencode_pyx_7Encoder_process': bzrlib/_bencode_pyx.c:1772: warning: '__pyx_exc_lineno' might be used uninitialized in this function bzrlib/_bencode_pyx.c: In function `__pyx_f_12_bencode_pyx_7Decoder__decode_int': bzrlib/_bencode_pyx.c:563: warning: '__pyx_exc_lineno' might be used uninitialized in this function bzrlib/_bencode_pyx.c: In function `__pyx_f_12_bencode_pyx_7Decoder__decode_object': bzrlib/_bencode_pyx.c:291: warning: '__pyx_r' might be used uninitialized in this function bzrlib/_bencode_pyx.c:402: warning: '__pyx_exc_lineno' might be used uninitialized in this function bzrlib/_bencode_pyx.c: At top level: bzrlib/_bencode_pyx.c:2414: warning: '__Pyx_GetItemInt' defined but not used bzrlib/_bencode_pyx.c:2429: warning: '__Pyx_SetItemInt' defined but not used bzrlib/_btree_serializer_pyx.c:1607: warning: '__Pyx_GetItemInt' defined but not used bzrlib/_btree_serializer_pyx.c:1685: warning: '__Pyx_SetItemInt' defined but not used bzrlib/_groupcompress_pyx.c:2136: warning: '__Pyx_GetItemInt' defined but not used bzrlib/_groupcompress_pyx.c:2151: warning: '__Pyx_SetItemInt' defined but not used bzrlib/_knit_load_data_pyx.c:1229: warning: '__Pyx_SetItemInt' defined but not used bzrlib/_knit_load_data_pyx.c:1318: warning: '__Pyx_GetItemInt' defined but not used bzrlib/_rio_pyx.c: In function `__pyx_f_8_rio_pyx__read_stanza_unicode': bzrlib/_rio_pyx.c:686: warning: '__pyx_r' might be used uninitialized in this function bzrlib/_rio_pyx.c:940: warning: '__pyx_exc_lineno' might be used uninitialized in this function bzrlib/_rio_pyx.c: In function `__pyx_f_8_rio_pyx__read_stanza_utf8': bzrlib/_rio_pyx.c:364: warning: '__pyx_r' might be used uninitialized in this function bzrlib/_rio_pyx.c:621: warning: '__pyx_exc_lineno' might be used uninitialized in this function bzrlib/_rio_pyx.c: At top level: bzrlib/_rio_pyx.c:1155: warning: '__Pyx_GetItemInt' defined but not used bzrlib/_rio_pyx.c:1170: warning: '__Pyx_SetItemInt' defined but not used bzrlib/_readdir_pyx.c: In function `__pyx_f_12_readdir_pyx_13UTF8DirReader_read_dir': bzrlib/_readdir_pyx.c:1086: warning: '__pyx_exc_lineno' might be used uninitialized in this function bzrlib/_readdir_pyx.c:1145: warning: '__pyx_exc_lineno' might be used uninitialized in this function bzrlib/_readdir_pyx.c: At top level: bzrlib/_readdir_pyx.c:1906: warning: '__Pyx_GetItemInt' defined but not used bzrlib/_chk_map_pyx.c:1779: warning: '__Pyx_SetItemInt' defined but not used In file included from /usr/local/include/python2.6/Python.h:8, from bzrlib/_patiencediff_c.c:28: /usr/local/include/python2.6/pyconfig.h:1004:1: warning: "_FILE_OFFSET_BITS" redefined In file included from /usr/include/iso/stdlib_iso.h:30, from /usr/include/stdlib.h:18, from bzrlib/_patiencediff_c.c:26: /usr/include/sys/feature_tests.h:188:1: warning: this is the location of the previous definition zip_safe flag not set; analyzing archive contents... bzrlib.osutils: module references __file__ bzrlib.lsprof: module references __file__ bzrlib.commands: module MAY be using inspect.stack bzrlib.commands: module MAY be using inspect.trace bzrlib.plugin: module references __file__ bzrlib.plugin: module references __path__ bzrlib.version: module references __file__ bzrlib.version: module references __path__ bzrlib.doc.api.__init__: module references __file__ /export/home/bogart/mailman-3.0.0a3/eggs/setuptools-0.6c9-py2.6.egg/setuptools/command/bdist_egg.py:422: UnicodeWarning: Unicode equal comparison failed to convert both arguments to Unicode - interpreting them as being unequal bzrlib.tests.test_setup: module references __file__ bzrlib.tests.test_patches: module references __file__ bzrlib.tests.test_source: module references __file__ bzrlib.tests.__init__: module references __file__ bzrlib.tests.__init__: module references __path__ bzrlib.tests.test_plugins: module references __path__ bzrlib.tests.ssl_certs.__init__: module references __file__ Installed /export/home/bogart/mailman-3.0.0a3/bzr-2.0rc2-py2.6-solaris-2.10-i86pc.egg /export/home/bogart/mailman-3.0.0a3/eggs/setuptools-0.6c9-py2.6.egg/setuptools/dist.py:245: UserWarning: Module bzrlib was already imported from /tmp/easy_install-AaJ9Ay/bzr-2.0rc2/bzrlib/__init__.py, but /export/home/bogart/mailman-3.0.0a3/bzr-2.0rc2-py2.6-solaris-2.10-i86pc.egg is being added to sys.path Getting distribution for 'z3c.recipe.sphinxdoc'. Got z3c.recipe.sphinxdoc 0.0.8. Getting distribution for 'Sphinx'. Got Sphinx 0.6.3. Getting distribution for 'docutils'. "optparse" module already present; ignoring extras/optparse.py. "textwrap" module already present; ignoring extras/textwrap.py. zip_safe flag not set; analyzing archive contents... docutils.parsers.rst.directives.misc: module references __file__ docutils.writers.html4css1.__init__: module references __file__ docutils.writers.pep_html.__init__: module references __file__ docutils.writers.s5_html.__init__: module references __file__ docutils.writers.newlatex2e.__init__: module references __file__ Got docutils 0.5. Getting distribution for 'zc.recipe.egg'. Got zc.recipe.egg 1.2.2. Getting distribution for 'Jinja2>=2.1'. warning: no files found matching 'ez_setup.py' warning: no previously-included files matching '*' found under directory 'docs/_build/doctrees' Got Jinja2 2.2.1. Getting distribution for 'Pygments>=0.8'. Got Pygments 1.1.1. Getting distribution for 'z3c.recipe.filetemplate'. Got z3c.recipe.filetemplate 2.0.3. Getting distribution for 'zope.interface'. Got zope.interface 3.5.2. Getting distribution for 'zope.schema'. Got zope.schema 3.5.4. Getting distribution for 'storm'. Got storm 0.15. Getting distribution for 'munepy'. /usr/local/lib/python2.6/distutils/dist.py:266: UserWarning: Unknown distribution option: 'summary' warnings.warn(msg) zip_safe flag not set; analyzing archive contents... Got munepy 1.4.1. Getting distribution for 'locknix'. /usr/local/lib/python2.6/distutils/dist.py:266: UserWarning: Unknown distribution option: 'summary' warnings.warn(msg) zip_safe flag not set; analyzing archive contents... Got locknix 1.0.2. Getting distribution for 'lazr.restful'. Got lazr.restful 0.9.6. Getting distribution for 'lazr.delegates'. Got lazr.delegates 1.1.0. Getting distribution for 'lazr.config'. Got lazr.config 1.1.3. Page at http://pypi.python.org/simple/argparse/ links to .py file(s) without version info; an index scan is required. Getting distribution for 'argparse'. zip_safe flag not set; analyzing archive contents... Got argparse 1.0.1. Getting distribution for 'zope.event'. Got zope.event 3.4.1. Getting distribution for 'zope.i18nmessageid'. Got zope.i18nmessageid 3.5.0. Getting distribution for 'zope.traversing'. Got zope.traversing 3.7.2. Getting distribution for 'zope.security'. Got zope.security 3.7.1. Getting distribution for 'zope.publisher'. Got zope.publisher 3.9.1. Getting distribution for 'zope.proxy'. Got zope.proxy 3.5.0. Getting distribution for 'zope.pagetemplate'. Got zope.pagetemplate 3.5.0. Getting distribution for 'zope.configuration'. Got zope.configuration 3.6.0. Getting distribution for 'zope.component[zcml]'. Got zope.component 3.7.1. Getting distribution for 'zope.app.pagetemplate'. Got zope.app.pagetemplate 3.7.1. Getting distribution for 'van.testing'. Got van.testing 2.0.1. Getting distribution for 'simplejson'. simplejson/_speedups.c: In function `encoder_encode_float': simplejson/_speedups.c:1871: warning: implicit declaration of function `finite' Got simplejson 2.0.9. Getting distribution for 'martian==0.11'. Got martian 0.11. Getting distribution for 'lazr.uri'. Got lazr.uri 1.0.2. Getting distribution for 'lazr.lifecycle'. Installed /tmp/easy_install-wRV1jq/lazr.lifecycle-0.1/eggtestinfo-0.2.2-py2.6.egg Got lazr.lifecycle 0.1. Getting distribution for 'lazr.enum'. Got lazr.enum 1.1.2. Getting distribution for 'lazr.batchnavigator'. Got lazr.batchnavigator 1.1. Getting distribution for 'grokcore.component==1.6'. Got grokcore.component 1.6. Getting distribution for 'epydoc'. zip_safe flag not set; analyzing archive contents... epydoc.apidoc: module references __path__ epydoc.docintrospecter: module references __file__ epydoc.docintrospecter: module references __path__ epydoc.docintrospecter: module MAY be using inspect.findsource epydoc.docparser: module references __path__ epydoc.test.__init__: module references __file__ Got epydoc 3.0.1. Getting distribution for 'zope.location>=3.5.2'. Got zope.location 3.6.0. Getting distribution for 'zope.i18n'. Got zope.i18n 3.7.1. Getting distribution for 'zope.exceptions'. Got zope.exceptions 3.5.2. Getting distribution for 'zope.browser'. Got zope.browser 1.2. Getting distribution for 'zope.authentication'. Got zope.authentication 3.7.0. Getting distribution for 'zope.tal'. Got zope.tal 3.5.1. Getting distribution for 'zope.tales'. Got zope.tales 3.4.0. Getting distribution for 'zope.size'. Got zope.size 3.4.1. Getting distribution for 'zope.dublincore'. Got zope.dublincore 3.5.0. Getting distribution for 'zope.testing'. Got zope.testing 3.8.3. Getting distribution for 'wsgi-intercept'. zip_safe flag not set; analyzing archive contents... wsgi_intercept.mechanoid_intercept.wsgi_browser: module references __file__ Got wsgi-intercept 0.4. Getting distribution for 'zope.lifecycleevent'. Got zope.lifecycleevent 3.5.2. Getting distribution for 'zope.cachedescriptors'. Got zope.cachedescriptors 3.5.0. Getting distribution for 'zope.copy'. Got zope.copy 3.5.0. Getting distribution for 'pytz'. Got pytz 2009l. Getting distribution for 'RestrictedPython'. Got RestrictedPython 3.5.1. Getting distribution for 'zope.datetime'. Got zope.datetime 3.4.0. Getting distribution for 'zope.annotation'. Got zope.annotation 3.5.0. Getting distribution for 'zope.hookable'. Got zope.hookable 3.4.1. Getting distribution for 'ZODB3'. Got ZODB3 3.9.0. Getting distribution for 'zdaemon'. Got zdaemon 2.0.4. Getting distribution for 'ZConfig'. Got ZConfig 2.7.1. Getting distribution for 'zc.lockfile'. Got zc.lockfile 1.0.0. Getting distribution for 'transaction'. Got transaction 1.0.0. Getting distribution for 'z3c.recipe.tag'. Got z3c.recipe.tag 0.3.0. Getting distribution for 'zc.recipe.testrunner'. zip_safe flag not set; analyzing archive contents... Got zc.recipe.testrunner 1.2.0. Installing docs. Generated script '/export/home/bogart/mailman-3.0.0a3/bin/docs'. Installing filetemplates. Installing interpreter. Generated script '/export/home/bogart/mailman-3.0.0a3/bin/mailmanctl'. Generated script '/export/home/bogart/mailman-3.0.0a3/bin/qrunner'. Generated script '/export/home/bogart/mailman-3.0.0a3/bin/master'. Generated script '/export/home/bogart/mailman-3.0.0a3/bin/mailman'. Generated interpreter '/export/home/bogart/mailman-3.0.0a3/bin/py'. Installing pylint. Getting distribution for 'logilab.pylintinstaller'. Got logilab.pylintinstaller 0.15.2. Getting distribution for 'pylint==0.15.2'. package init file './test/__init__.py' not found (or not a regular file) SyntaxError: ('unknown encoding: IBO-8859-1', ('build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_unknown_encoding.py', 0, 0, None)) SyntaxError: ('invalid syntax', ('build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_syntax_error.py', 1, 9, 'def toto\n')) SyntaxError: ("'return' with argument inside generator",) SyntaxError: ('from __future__ imports must occur at the beginning of the file', ('build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func___future___import_not_first_stmt.py', 4, None, 'from __future__ import generators\n')) SyntaxError: ("'continue' not properly in loop", ('build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_continue_not_in_loop.py', 8, None, 'continue\n')) SyntaxError: ("'return' with argument inside generator",) SyntaxError: ("'return' outside function", ('build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_return_outside_func.py', 3, None, 'return\n')) SyntaxError: ("default 'except:' must be last", ('build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_w0705.py', 28, None, '__revision__ += 1\n')) SyntaxError: ("'yield' outside function", ('build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_yield_outside_func.py', 3, None, 'yield 1\n')) test/input/func_w0703.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_w0703.py test/input/func_w0109.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_w0109.py test/input/w0401_cycle.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/w0401_cycle.py test/input/func_noerror_nonregr.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_noerror_nonregr.py test/input/func_w0402.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_w0402.py test/input/func_e0214.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_e0214.py test/input/func_noerror_classes_meth_signature.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_noerror_classes_meth_signature.py test/input/func_e0203.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_e0203.py test/input/func_e0012.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_e0012.py test/input/func_unknown_encoding.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_unknown_encoding.py test/input/similar2 -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/similar2 test/input/func_w0202.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_w0202.py test/input/func_w0401.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_w0401.py test/input/func_w0331.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_w0331.py test/input/func_syntax_error.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_syntax_error.py test/input/func_i0010.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_i0010.py test/input/__init__.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/__init__.py test/input/func_noerror_classes_protected_member_access.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_noerror_classes_protected_member_access.py test/input/func_r0904.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_r0904.py test/input/func_indent.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_indent.py test/input/func_names_imported_from_module.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_names_imported_from_module.py test/input/func_noerror_mcs_attr_access.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_noerror_mcs_attr_access.py test/input/func_e0204.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_e0204.py test/input/func_i0012.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_i0012.py test/input/func_noerror_object_as_class_attribute.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_noerror_object_as_class_attribute.py test/input/func_use_for_or_listcomp_var.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_use_for_or_listcomp_var.py test/input/func_w0704.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_w0704.py test/input/func_toolonglines.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_toolonglines.py test/input/func_nonascii_noencoding.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_nonascii_noencoding.py test/input/func_exceptions_raise_type_error.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_exceptions_raise_type_error.py test/input/func_w0103.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_w0103.py test/input/func_noerror_yield_return_mix.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_noerror_yield_return_mix.py test/input/func_f0401.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_f0401.py test/input/func_r0923.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_r0923.py test/input/func_w0110.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_w0110.py test/input/func_dangerous_default.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_dangerous_default.py test/input/func_r0903.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_r0903.py test/input/func_noerror_indirect_interface.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_noerror_indirect_interface.py test/input/func_w0231.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_w0231.py test/input/func_noerror_access_attr_before_def_false_positive.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_noerror_access_attr_before_def_false_positive.py test/input/indirect2.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/indirect2.py test/input/func_newstyle_exceptions.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_newstyle_exceptions.py test/input/func_empty_module.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_empty_module.py test/input/func_scope_regrtest.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_scope_regrtest.py test/input/func_w0122.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_w0122.py test/input/func_method_without_self_but_self_assignment.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_method_without_self_but_self_assignment.py test/input/func_w0152.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_w0152.py test/input/func_noerror_defined_and_used_on_same_line_py24.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_noerror_defined_and_used_on_same_line_py24.py test/input/func_noerror_factory_method.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_noerror_factory_method.py test/input/func_w0233.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_w0233.py test/input/func_noerror_staticmethod_as_decorator.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_noerror_staticmethod_as_decorator.py test/input/func_w0205.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_w0205.py test/input/func_typecheck_non_callable_call.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_typecheck_non_callable_call.py test/input/func_newstyle_property.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_newstyle_property.py test/input/func_noerror___init___return_from_inner_function.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_noerror___init___return_from_inner_function.py test/input/func_fixme.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_fixme.py test/input/func_i0013.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_i0013.py test/input/func_e0601.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_e0601.py test/input/func_w0404.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_w0404.py test/input/func_return_yield_mix.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_return_yield_mix.py test/input/func_w0104.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_w0104.py test/input/func_w0102.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_w0102.py test/input/func_noerror_static_method.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_noerror_static_method.py test/input/func_newstyle___slots__.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_newstyle___slots__.py test/input/func_format.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_format.py test/input/func_base_useless_pass.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_base_useless_pass.py test/input/func_w0611.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_w0611.py test/input/func_w0801.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_w0801.py test/input/func___future___import_not_first_stmt.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func___future___import_not_first_stmt.py test/input/func_w0112.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_w0112.py test/input/func_dotted_ancestor.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_dotted_ancestor.py test/input/func_r0902.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_r0902.py test/input/indirect3.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/indirect3.py test/input/func_r0901.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_r0901.py test/input/func_e0101.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_e0101.py test/input/func_continue_not_in_loop.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_continue_not_in_loop.py test/input/func_noerror_w0232.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_noerror_w0232.py test/input/func_noerror_e1101_but_getattr.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_noerror_e1101_but_getattr.py test/input/func_w0332.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_w0332.py test/input/func_noerror_builtin_module_test.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_noerror_builtin_module_test.py test/input/func_i0011.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_i0011.py test/input/func_globals.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_globals.py test/input/func_e0205.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_e0205.py test/input/func_w0133.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_w0133.py test/input/func_unreachable.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_unreachable.py test/input/func_noerror_base_init_vars.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_noerror_base_init_vars.py test/input/func_genexpr_var_scope_py24.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_genexpr_var_scope_py24.py test/input/func_w0702.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_w0702.py test/input/func_base_stmt_without_effect.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_base_stmt_without_effect.py test/input/func_method_could_be_function.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_method_could_be_function.py test/input/func_noerror_nested_classes.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_noerror_nested_classes.py test/input/func_r0921.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_r0921.py test/input/func_e0206.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_e0206.py test/input/func_w0612.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_w0612.py test/input/func_return_yield_mix2.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_return_yield_mix2.py test/input/func_w0613.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_w0613.py test/input/func_wrong_encoding.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_wrong_encoding.py test/input/func_class_access_protected_members.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_class_access_protected_members.py test/input/func_docstring.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_docstring.py test/input/func_noerror_socket_member.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_noerror_socket_member.py test/input/func_noerror_classes_meth_could_be_a_function.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_noerror_classes_meth_could_be_a_function.py test/input/func_method_missing_self.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_method_missing_self.py test/input/func_noerror_defined_and_used_on_same_line.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_noerror_defined_and_used_on_same_line.py test/input/similar1 -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/similar1 test/input/func_noerror_raise_return_self.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_noerror_raise_return_self.py test/input/func_w0312.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_w0312.py test/input/func_e0011.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_e0011.py test/input/func_w0701.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_w0701.py test/input/func_noerror___future___import.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_noerror___future___import.py test/input/func_w0406.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_w0406.py test/input/func_noerror_exception.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_noerror_exception.py test/input/func_noerror_except_pass.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_noerror_except_pass.py test/input/func_noerror_external_classmethod_crash.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_noerror_external_classmethod_crash.py test/input/func_noerror_inner_classes.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_noerror_inner_classes.py test/input/func_noerror_encoding.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_noerror_encoding.py test/input/func_interfaces.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_interfaces.py test/input/func_w0111.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_w0111.py test/input/func___name___access.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func___name___access.py test/input/func_return_outside_func.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_return_outside_func.py test/input/func_attrs_definition_order.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_attrs_definition_order.py test/input/func_w0705.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_w0705.py test/input/func_newstyle_super.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_newstyle_super.py test/input/func_nameerror_on_string_substitution.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_nameerror_on_string_substitution.py test/input/func_w0151.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_w0151.py test/input/func_bad_assigment_to_exception_var.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_bad_assigment_to_exception_var.py test/input/w0801_same.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/w0801_same.py test/input/func_typecheck_getattr.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_typecheck_getattr.py test/input/func_w0622.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_w0622.py test/input/func_r0922.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_r0922.py test/input/func_reqattrs.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_reqattrs.py test/input/func_noerror_new_style_class.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_noerror_new_style_class.py test/input/func_noerror_overloaded_operator.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_noerror_overloaded_operator.py test/input/func_w0105.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_w0105.py test/input/func_typecheck_callfunc_assigment.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_typecheck_callfunc_assigment.py test/input/func_yield_outside_func.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_yield_outside_func.py test/input/func_w0405.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_w0405.py test/input/func_noerror_e1101_13784.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_noerror_e1101_13784.py test/input/func_backtick_deprecated.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_backtick_deprecated.py test/input/func_f0001.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_f0001.py test/input/func_w0403.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_w0403.py test/input/func_init_vars.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_init_vars.py test/input/func_w0223.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_w0223.py test/input/noext -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/noext test/input/func_class_members.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_class_members.py test/input/func_w0302.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_w0302.py test/input/func_variables_unused_name_from_wilcard_import.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_variables_unused_name_from_wilcard_import.py test/input/func_undefined_var.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_undefined_var.py test/input/func_block_disable_msg.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_block_disable_msg.py test/input/func_w0101.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/func_w0101.py test/input/indirect1.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/input/indirect1.py test/messages/func_newstyle___slots__.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_newstyle___slots__.txt test/messages/func_w0622.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_w0622.txt test/messages/func_yield_outside_func.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_yield_outside_func.txt test/messages/func_w0801.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_w0801.txt test/messages/func_typecheck_getattr.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_typecheck_getattr.txt test/messages/func_attrs_definition_order.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_attrs_definition_order.txt test/messages/func_nameerror_on_string_substitution.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_nameerror_on_string_substitution.txt test/messages/func_newstyle_super.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_newstyle_super.txt test/messages/func_w0112.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_w0112.txt test/messages/func___future___import_not_first_stmt.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func___future___import_not_first_stmt.txt test/messages/func_w0122.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_w0122.txt test/messages/func_globals.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_globals.txt test/messages/func_w0109.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_w0109.txt test/messages/func_continue_not_in_loop.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_continue_not_in_loop.txt test/messages/func_return_outside_func.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_return_outside_func.txt test/messages/func_base_useless_pass.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_base_useless_pass.txt test/messages/func_e0205.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_e0205.txt test/messages/nonexistant.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/nonexistant.txt test/messages/func_w0202.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_w0202.txt test/messages/func_r0923.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_r0923.txt test/messages/func_w0101.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_w0101.txt test/messages/func_reqattrs.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_reqattrs.txt test/messages/func_nonascii_noencoding.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_nonascii_noencoding.txt test/messages/func___name___access.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func___name___access.txt test/messages/func_toolonglines.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_toolonglines.txt test/messages/func_backtick_deprecated.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_backtick_deprecated.txt test/messages/func_class_members.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_class_members.txt test/messages/func_method_missing_self.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_method_missing_self.txt test/messages/func_w0111.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_w0111.txt test/messages/func_docstring.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_docstring.txt test/messages/func_dangerous_default.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_dangerous_default.txt test/messages/func_e0206.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_e0206.txt test/messages/func_init_vars.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_init_vars.txt test/messages/func_w0704.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_w0704.txt test/messages/func_w0701.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_w0701.txt test/messages/func_format.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_format.txt test/messages/func_r0903.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_r0903.txt test/messages/builtin_module.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/builtin_module.txt test/messages/func_w0105.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_w0105.txt test/messages/func_w0223.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_w0223.txt test/messages/func_w0702.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_w0702.txt test/messages/func_wrong_encoding.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_wrong_encoding.txt test/messages/func_i0013.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_i0013.txt test/messages/func_dotted_ancestor.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_dotted_ancestor.txt test/messages/func_r0921.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_r0921.txt test/messages/func_w0331.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_w0331.txt test/messages/func_typecheck_non_callable_call.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_typecheck_non_callable_call.txt test/messages/func_method_without_self_but_self_assignment.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_method_without_self_but_self_assignment.txt test/messages/2.5_func_newstyle_exceptions.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/2.5_func_newstyle_exceptions.txt test/messages/func_names_imported_from_module.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_names_imported_from_module.txt test/messages/func_w0110.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_w0110.txt test/messages/func_w0312.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_w0312.txt test/messages/func_w0405.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_w0405.txt test/messages/func_w0231.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_w0231.txt test/messages/func_w0205.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_w0205.txt test/messages/func_w0102.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_w0102.txt test/messages/func_newstyle_exceptions.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_newstyle_exceptions.txt test/messages/nonexistant.txt2 -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/nonexistant.txt2 test/messages/func_undefined_var.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_undefined_var.txt test/messages/func_w0302.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_w0302.txt test/messages/func_base_stmt_without_effect.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_base_stmt_without_effect.txt test/messages/func_exceptions_raise_type_error.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_exceptions_raise_type_error.txt test/messages/func_w0612.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_w0612.txt test/messages/func_w0401.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_w0401.txt test/messages/func_w0104.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_w0104.txt test/messages/func_r0904.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_r0904.txt test/messages/func_w0103.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_w0103.txt test/messages/func_empty_module.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_empty_module.txt test/messages/func_e0204.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_e0204.txt test/messages/func_i0011.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_i0011.txt test/messages/func_e0101.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_e0101.txt test/messages/func_method_could_be_function.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_method_could_be_function.txt test/messages/func_r0922.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_r0922.txt test/messages/func_f0401.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_f0401.txt test/messages/func_f0001.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_f0001.txt test/messages/func_typecheck_callfunc_assigment.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_typecheck_callfunc_assigment.txt test/messages/func_e0011.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_e0011.txt test/messages/func_interfaces.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_interfaces.txt test/messages/func_e0601.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_e0601.txt test/messages/func_variables_unused_name_from_wilcard_import.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_variables_unused_name_from_wilcard_import.txt test/messages/func_w0406.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_w0406.txt test/messages/func_newstyle_property.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_newstyle_property.txt test/messages/func_i0012.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_i0012.txt test/messages/func_class_access_protected_members.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_class_access_protected_members.txt test/messages/func_w0133.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_w0133.txt test/messages/func_i0010.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_i0010.txt test/messages/func_return_yield_mix.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_return_yield_mix.txt test/messages/func_e0203.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_e0203.txt test/messages/func_use_for_or_listcomp_var.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_use_for_or_listcomp_var.txt test/messages/func_e0012.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_e0012.txt test/messages/func_bad_assigment_to_exception_var.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_bad_assigment_to_exception_var.txt test/messages/func_w0402.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_w0402.txt test/messages/func_w0152.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_w0152.txt test/messages/func_w0703.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_w0703.txt test/messages/func_w0403.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_w0403.txt test/messages/func_w0611.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_w0611.txt test/messages/func_w0332.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_w0332.txt test/messages/func_indent.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_indent.txt test/messages/func_scope_regrtest.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_scope_regrtest.txt test/messages/func_unreachable.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_unreachable.txt test/messages/func_w0404.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_w0404.txt test/messages/func_r0901.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_r0901.txt test/messages/func_return_yield_mix2.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_return_yield_mix2.txt test/messages/func_syntax_error.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_syntax_error.txt test/messages/func_r0902.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_r0902.txt test/messages/func_block_disable_msg.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_block_disable_msg.txt test/messages/func_w0705.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_w0705.txt test/messages/func_fixme.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_fixme.txt test/messages/func_w0151.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_w0151.txt test/messages/func_e0214.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_e0214.txt test/messages/func_w0233.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_w0233.txt test/messages/func_unknown_encoding.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_unknown_encoding.txt test/messages/func_genexpr_var_scope_py24.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_genexpr_var_scope_py24.txt test/messages/func_w0613.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/messages/func_w0613.txt test/rpythonmessages/func_noyield.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_noyield.txt test/rpythonmessages/func_nobuiltin_iter.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_nobuiltin_iter.txt test/rpythonmessages/func_nobuiltin_dir.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_nobuiltin_dir.txt test/rpythonmessages/func_slice_negative_index.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_slice_negative_index.txt test/rpythonmessages/func_nobuiltin_open.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_nobuiltin_open.txt test/rpythonmessages/func_nobuiltin_super.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_nobuiltin_super.txt test/rpythonmessages/func_nobuiltin_reversed.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_nobuiltin_reversed.txt test/rpythonmessages/func_nobuiltin_buffer.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_nobuiltin_buffer.txt test/rpythonmessages/func_nobuiltin_staticmethod.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_nobuiltin_staticmethod.txt test/rpythonmessages/func_nobuiltin_sum.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_nobuiltin_sum.txt test/rpythonmessages/func_multiple_types_assignment.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_multiple_types_assignment.txt test/rpythonmessages/func_nobuiltin_file.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_nobuiltin_file.txt test/rpythonmessages/func_nobuiltin_delattr.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_nobuiltin_delattr.txt test/rpythonmessages/func_nobuiltin_vars.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_nobuiltin_vars.txt test/rpythonmessages/func_nobuiltin_id.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_nobuiltin_id.txt test/rpythonmessages/func_immutable_global1.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_immutable_global1.txt test/rpythonmessages/func_nobuiltin_input.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_nobuiltin_input.txt test/rpythonmessages/func_nobuiltin_eval.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_nobuiltin_eval.txt test/rpythonmessages/func_slice_non_constant_step.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_slice_non_constant_step.txt test/rpythonmessages/func_immutable_global.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_immutable_global.txt test/rpythonmessages/func_nobuiltin_map.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_nobuiltin_map.txt test/rpythonmessages/func_nobuiltin_intern.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_nobuiltin_intern.txt test/rpythonmessages/func_nobuiltin_set.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_nobuiltin_set.txt test/rpythonmessages/func_nobuiltin_getattr.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_nobuiltin_getattr.txt test/rpythonmessages/func_nobuiltin_execfile.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_nobuiltin_execfile.txt test/rpythonmessages/func_multiple_inheritance2.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_multiple_inheritance2.txt test/rpythonmessages/func_nobuiltin_round.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_nobuiltin_round.txt test/rpythonmessages/func_nobuiltin_enumerate.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_nobuiltin_enumerate.txt test/rpythonmessages/func_nobuiltin_locals.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_nobuiltin_locals.txt test/rpythonmessages/func_nobuiltin_setattr.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_nobuiltin_setattr.txt test/rpythonmessages/func_nobuiltin_complex.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_nobuiltin_complex.txt test/rpythonmessages/func_nobuiltin_filter.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_nobuiltin_filter.txt test/rpythonmessages/func_repr_format_string.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_repr_format_string.txt test/rpythonmessages/func_nobuiltin_reload.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_nobuiltin_reload.txt test/rpythonmessages/func_immutable_global3.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_immutable_global3.txt test/rpythonmessages/func_genexpr.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_genexpr.txt test/rpythonmessages/func_nobuiltin_callable.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_nobuiltin_callable.txt test/rpythonmessages/func_nobuiltin_classmethod.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_nobuiltin_classmethod.txt test/rpythonmessages/func_nobuiltin_reduce.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_nobuiltin_reduce.txt test/rpythonmessages/func_multiple_inheritance.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_multiple_inheritance.txt test/rpythonmessages/func_nobuiltin_globals.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_nobuiltin_globals.txt test/rpythonmessages/func_nobuiltin_object.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_nobuiltin_object.txt test/rpythonmessages/func_nobuiltin_frozenset.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_nobuiltin_frozenset.txt test/rpythonmessages/func_nobuiltin_issubclass.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_nobuiltin_issubclass.txt test/rpythonmessages/func_immutable_global2.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_immutable_global2.txt test/rpythonmessages/func_nobuiltin_property.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_nobuiltin_property.txt test/rpythonmessages/func_unsupported_protocol.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_unsupported_protocol.txt test/rpythonmessages/func_non_homogeneous_list.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_non_homogeneous_list.txt test/rpythonmessages/func_nobuiltin_help.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_nobuiltin_help.txt test/rpythonmessages/func_nobuiltin_unicode.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_nobuiltin_unicode.txt test/rpythonmessages/func_nobuiltin_compile.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_nobuiltin_compile.txt test/rpythonmessages/func_nobuiltin_raw_input.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_nobuiltin_raw_input.txt test/rpythonmessages/func_nobuiltin_dict.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_nobuiltin_dict.txt test/rpythonmessages/func_nobuiltin_sorted.txt -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/rpythonmessages/func_nobuiltin_sorted.txt test/regrtest_data/descriptor_crash.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/regrtest_data/descriptor_crash.py test/regrtest_data/application_crash.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/regrtest_data/application_crash.py test/regrtest_data/pygtk_import.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/regrtest_data/pygtk_import.py test/regrtest_data/numarray_import.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/regrtest_data/numarray_import.py test/regrtest_data/import_package_subpackage_module.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/regrtest_data/import_package_subpackage_module.py test/regrtest_data/precedence_test.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/regrtest_data/precedence_test.py test/regrtest_data/classdoc_usage.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/regrtest_data/classdoc_usage.py test/regrtest_data/numarray_inf.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/regrtest_data/numarray_inf.py test/regrtest_data/module_global.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/regrtest_data/module_global.py test/regrtest_data/decimal_inference.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/regrtest_data/decimal_inference.py test/regrtest_data/package -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/regrtest_data/package test/regrtest_data/try_finally_disable_msg_crash.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/regrtest_data/try_finally_disable_msg_crash.py test/regrtest_data/socketerror_import.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/regrtest_data/socketerror_import.py test/regrtest_data/package/__init__.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/regrtest_data/package/__init__.py test/regrtest_data/package/subpackage -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/regrtest_data/package/subpackage test/regrtest_data/package/AudioTime.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/regrtest_data/package/AudioTime.py test/regrtest_data/package/subpackage/__init__.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/regrtest_data/package/subpackage/__init__.py test/regrtest_data/package/subpackage/module.py -> build/bdist.solaris-2.10-i86pc/egg/pylint/test/regrtest_data/package/subpackage/module.py Creating missing __init__.py for pylint.test zip_safe flag not set; analyzing archive contents... pylint.test.test_func_sample_config: module references __path__ pylint.test.utils: module references __file__ pylint.test.unittest_lint: module references __file__ pylint.test.unittest_checkers_utils: module references __file__ pylint.test.unittest_checkers_utils: module references __path__ pylint.checkers.__init__: module references __path__ pylint.checkers.variables: module references __file__ pylint.checkers.variables: module references __path__ SyntaxError: ('unknown encoding: IBO-8859-1', ('/export/home/bogart/mailman-3.0.0a3/eggs/tmpxybBbV/pylint-0.15.2-py2.6.egg/pylint/test/input/func_unknown_encoding.py', 0, 0, None)) SyntaxError: ('invalid syntax', ('/export/home/bogart/mailman-3.0.0a3/eggs/tmpxybBbV/pylint-0.15.2-py2.6.egg/pylint/test/input/func_syntax_error.py', 1, 9, 'def toto\n')) SyntaxError: ("'return' with argument inside generator",) SyntaxError: ('from __future__ imports must occur at the beginning of the file', ('/export/home/bogart/mailman-3.0.0a3/eggs/tmpxybBbV/pylint-0.15.2-py2.6.egg/pylint/test/input/func___future___import_not_first_stmt.py', 4, None, 'from __future__ import generators\n')) SyntaxError: ("'continue' not properly in loop", ('/export/home/bogart/mailman-3.0.0a3/eggs/tmpxybBbV/pylint-0.15.2-py2.6.egg/pylint/test/input/func_continue_not_in_loop.py', 8, None, 'continue\n')) SyntaxError: ("'return' with argument inside generator",) SyntaxError: ("'return' outside function", ('/export/home/bogart/mailman-3.0.0a3/eggs/tmpxybBbV/pylint-0.15.2-py2.6.egg/pylint/test/input/func_return_outside_func.py', 3, None, 'return\n')) SyntaxError: ("default 'except:' must be last", ('/export/home/bogart/mailman-3.0.0a3/eggs/tmpxybBbV/pylint-0.15.2-py2.6.egg/pylint/test/input/func_w0705.py', 28, None, '__revision__ += 1\n')) SyntaxError: ("'yield' outside function", ('/export/home/bogart/mailman-3.0.0a3/eggs/tmpxybBbV/pylint-0.15.2-py2.6.egg/pylint/test/input/func_yield_outside_func.py', 3, None, 'yield 1\n')) Got pylint 0.15.2. Generated script '/export/home/bogart/mailman-3.0.0a3/bin/pylint'. Installing tags. Generated script '/export/home/bogart/mailman-3.0.0a3/bin/tags'. Installing test. Generated script '/export/home/bogart/mailman-3.0.0a3/bin/test'. % bin/test Running mailman.testing.layers.ConfigLayer tests: Set up mailman.testing.layers.MockAndMonkeyLayer in 0.000 seconds. Set up mailman.testing.layers.ConfigLayer Traceback (most recent call last): File "/export/home/bogart/mailman-3.0.0a3/eggs/zope.testing-3.8.3-py2.6.egg/zope/testing/testrunner/runner.py", line 364, in run_layer setup_layer(options, layer, setup_layers) File "/export/home/bogart/mailman-3.0.0a3/eggs/zope.testing-3.8.3-py2.6.egg/zope/testing/testrunner/runner.py", line 629, in setup_layer layer.setUp() File "/export/home/bogart/mailman-3.0.0a3/src/mailman/testing/layers.py", line 105, in setUp initialize.initialize_2() File "/export/home/bogart/mailman-3.0.0a3/src/mailman/core/initialize.py", line 104, in initialize_2 database.initialize(debug) File "/export/home/bogart/mailman-3.0.0a3/src/mailman/database/__init__.py", line 70, in initialize self._create(debug) File "/export/home/bogart/mailman-3.0.0a3/src/mailman/database/__init__.py", line 109, in _create database = create_database(url) File "/export/home/bogart/mailman-3.0.0a3/eggs/storm-0.15-py2.6-solaris-2.10-i86pc.egg/storm/database.py", line 436, in create_database return factory(uri) File "/export/home/bogart/mailman-3.0.0a3/eggs/storm-0.15-py2.6-solaris-2.10-i86pc.egg/storm/databases/sqlite.py", line 176, in __init__ raise DatabaseModuleError("'pysqlite2' module not found") DatabaseModuleError: 'pysqlite2' module not found Running mailman.testing.layers.SMTPLayer tests: Set up mailman.testing.layers.ConfigLayer Traceback (most recent call last): File "/export/home/bogart/mailman-3.0.0a3/eggs/zope.testing-3.8.3-py2.6.egg/zope/testing/testrunner/runner.py", line 364, in run_layer setup_layer(options, layer, setup_layers) File "/export/home/bogart/mailman-3.0.0a3/eggs/zope.testing-3.8.3-py2.6.egg/zope/testing/testrunner/runner.py", line 624, in setup_layer setup_layer(options, base, setup_layers) File "/export/home/bogart/mailman-3.0.0a3/eggs/zope.testing-3.8.3-py2.6.egg/zope/testing/testrunner/runner.py", line 629, in setup_layer layer.setUp() File "/export/home/bogart/mailman-3.0.0a3/src/mailman/testing/layers.py", line 83, in setUp initialize.initialize_1() File "/export/home/bogart/mailman-3.0.0a3/src/mailman/core/initialize.py", line 77, in initialize_1 mailman.config.config.load(config_path) File "/export/home/bogart/mailman-3.0.0a3/src/mailman/config/config.py", line 102, in load self._post_process() File "/export/home/bogart/mailman-3.0.0a3/src/mailman/config/config.py", line 143, in _post_process Switchboard.initialize() File "/export/home/bogart/mailman-3.0.0a3/src/mailman/queue/__init__.py", line 88, in initialize 'Duplicate qrunner name: {0}'.format(name)) AssertionError: Duplicate qrunner name: retry Running mailman.testing.layers.RESTLayer tests: Set up mailman.testing.layers.ConfigLayer Traceback (most recent call last): File "/export/home/bogart/mailman-3.0.0a3/eggs/zope.testing-3.8.3-py2.6.egg/zope/testing/testrunner/runner.py", line 364, in run_layer setup_layer(options, layer, setup_layers) File "/export/home/bogart/mailman-3.0.0a3/eggs/zope.testing-3.8.3-py2.6.egg/zope/testing/testrunner/runner.py", line 624, in setup_layer setup_layer(options, base, setup_layers) File "/export/home/bogart/mailman-3.0.0a3/eggs/zope.testing-3.8.3-py2.6.egg/zope/testing/testrunner/runner.py", line 624, in setup_layer setup_layer(options, base, setup_layers) File "/export/home/bogart/mailman-3.0.0a3/eggs/zope.testing-3.8.3-py2.6.egg/zope/testing/testrunner/runner.py", line 629, in setup_layer layer.setUp() File "/export/home/bogart/mailman-3.0.0a3/src/mailman/testing/layers.py", line 83, in setUp initialize.initialize_1() File "/export/home/bogart/mailman-3.0.0a3/src/mailman/core/initialize.py", line 77, in initialize_1 mailman.config.config.load(config_path) File "/export/home/bogart/mailman-3.0.0a3/src/mailman/config/config.py", line 102, in load self._post_process() File "/export/home/bogart/mailman-3.0.0a3/src/mailman/config/config.py", line 143, in _post_process Switchboard.initialize() File "/export/home/bogart/mailman-3.0.0a3/src/mailman/queue/__init__.py", line 88, in initialize 'Duplicate qrunner name: {0}'.format(name)) AssertionError: Duplicate qrunner name: retry Running zope.testing.testrunner.layer.UnitTests tests: Tear down mailman.testing.layers.MockAndMonkeyLayer in 0.000 seconds. Set up zope.testing.testrunner.layer.UnitTests in 0.000 seconds. Ran 23 tests with 0 failures and 0 errors in 0.425 seconds. Tearing down left over layers: Tear down zope.testing.testrunner.layer.UnitTests in 0.000 seconds. Total: 23 tests, 0 failures, 3 errors in 0.616 seconds. I do not have enough skills to understand why I get 3 errors. Do I need to be worried about those ? Any hint, pointer to RTFM will be gretly appreciated. Thanks in advance, Regards, Max From barry at python.org Thu Sep 24 19:41:06 2009 From: barry at python.org (Barry Warsaw) Date: Thu, 24 Sep 2009 13:41:06 -0400 Subject: [Mailman-Developers] Failed bin/test for mailman 3.0 alpha3 In-Reply-To: <4AB7CCDD.2020406@jcp.org> References: <4AB7CCDD.2020406@jcp.org> Message-ID: <77CBECD4-B1E9-4130-8E67-365FD7C457E9@python.org> On Sep 21, 2009, at 2:58 PM, Max Lanfranconi wrote: > After installing Python 2.6 as required, I downloaded and installed > mailman3.0 a3 on a Solaris 10 server with the following commands: Hi Max, > Running mailman.testing.layers.ConfigLayer tests: > Set up mailman.testing.layers.MockAndMonkeyLayer in 0.000 seconds. > Set up mailman.testing.layers.ConfigLayer Traceback (most recent > call last): > File "/export/home/bogart/mailman-3.0.0a3/eggs/zope.testing-3.8.3- > py2.6.egg/zope/testing/testrunner/runner.py", line 364, in run_layer > setup_layer(options, layer, setup_layers) > File "/export/home/bogart/mailman-3.0.0a3/eggs/zope.testing-3.8.3- > py2.6.egg/zope/testing/testrunner/runner.py", line 629, in setup_layer > layer.setUp() > File "/export/home/bogart/mailman-3.0.0a3/src/mailman/testing/ > layers.py", line 105, in setUp > initialize.initialize_2() > File "/export/home/bogart/mailman-3.0.0a3/src/mailman/core/ > initialize.py", line 104, in initialize_2 > database.initialize(debug) > File "/export/home/bogart/mailman-3.0.0a3/src/mailman/database/ > __init__.py", line 70, in initialize > self._create(debug) > File "/export/home/bogart/mailman-3.0.0a3/src/mailman/database/ > __init__.py", line 109, in _create > database = create_database(url) > File "/export/home/bogart/mailman-3.0.0a3/eggs/storm-0.15-py2.6- > solaris-2.10-i86pc.egg/storm/database.py", line 436, in > create_database > return factory(uri) > File "/export/home/bogart/mailman-3.0.0a3/eggs/storm-0.15-py2.6- > solaris-2.10-i86pc.egg/storm/databases/sqlite.py", line 176, in > __init__ > raise DatabaseModuleError("'pysqlite2' module not found") > DatabaseModuleError: 'pysqlite2' module not found This is really the core problem; the other two are likely cascade failures. My guess is that your Solaris box does not have the sqlite3 library installed. You can test this by firing up Python 2.6 and doing: >>> import sqlite3 if that gives you an import error, you'll need to find and install the sqlite3 libraries and headers, then re-build Python. Hope that helps, -Barry -------------- next part -------------- A non-text attachment was scrubbed... Name: PGP.sig Type: application/pgp-signature Size: 832 bytes Desc: This is a digitally signed message part URL: From terri at zone12.com Fri Sep 25 17:54:42 2009 From: terri at zone12.com (Terri Oda) Date: Fri, 25 Sep 2009 11:54:42 -0400 Subject: [Mailman-Developers] [Fwd: [Systers-dev] Systers Code Sprint at GHC09 - Logistics Update] Message-ID: <4ABCE7C2.1080509@zone12.com> Systers has been doing mailman development as part of their Google Summer of Code work, so I expect there'll be some work on Mailman happening at this sprint. I'm going to go represent Mailman developers as it were, and if any of you are going to be in the Tuscon area next week (even if you're not at GHC), feel free to contact Jennifer and see about also coming out to help! -------- Original Message -------- Subject: [Systers-dev] Systers Code Sprint at GHC09 - Logistics Update Date: Thu, 24 Sep 2009 10:50:06 -0700 From: Jennifer Redman To: systers-dev+codesprint at systers.org, systers+codesprint at systers.org Please feel free to share this information off-list and repeat in any public forum. It is also posted here: http://systers.org/systers-dev/doku.php/code_sprint_logistics Systers Code Sprint at GHC09 Time: 16:00-20:00 - AST, Thursday, October 01, 2009 Where: GHC09 - Room: Tucson A Additional information on the Systers wiki - http://systers.org/wiki - including a task-list and some "Before you Sprint" information that covers development environment setup. The task list is likely to change -- there are a few additional items that will be added. Please feel free to add yourself to the list under each task if you are interested in working on that item. You do need to create an account to edit the wiki. We have one final very pesky bug that is preventing us from rolling out some of our new features developed this summer by our GSoC students. Looking forward to some additional eyes on the code! I still need to go through and update some bug reports but there will be an additional task dedicated to squashing a couple of bugs. What about food? 16:15-16:30 - The room for the Code Sprint is directly across from the Ania Pavilion - which is where the Thursday afternoon break is scheduled. You should feel free to grab some snacks and bring them along with you to the Code Sprint. 18:15-19:15 - The General Reception -- with, to quote Deanna K from the ABI, "massive amounts of food and beverage" is scheduled to take place in the Arizona and Tucson Foyers -- right outside the door of the room where we are holding the Code Sprint. This will be a good time for a break to grab some additional fuel to fortify ourselves for the next few hours. Who should come? If you look at the task list there are items that should appeal to a large range of skillsets. Please don't worry about being new at code-sprinting or Open Source development. We are all very kind and understanding when it comes to beginner-type questions. Please stop in if you are interested in getting more involved in the Systers development effort (we need your help), would like to learn more about our Google Summer of Code Projects and our future plans (we need more mentors, and students this is a great way to get involved before next year). If you are running or contributing to another Open Source Project, please stop by the Code Sprint to introduce yourself and talk about your community with other potential contributors. This is an excellent opportunity to do some networking while writing code (or contributing in other ways that are equally important). You don't need to be a current Syster (we'd love it if you joined after). What if I don't have a laptop*?* We are going to be pair-programming, so those of you who don't have a laptop to bring along we'll just match you up with someone who does. What if I'm not coming to GHC09 can I still be involved? Sure. Join the irc channel (irc.freenode.net #systers-dev) and we'll see if we can include you via irc. Let me know if you have any additional questions. Hope to see you at the Sprint! Thanks, Jen To unsubscribe from this conversation, send email to or visit To contribute to this conversation, use your mailer's reply-all or reply-group command or send your message to systers-dev+codesprint at systers.org To start a new conversation, send email to To unsubscribe entirely from systers-dev, send email to with subject unsubscribe. From barry at python.org Fri Sep 25 19:40:46 2009 From: barry at python.org (Barry Warsaw) Date: Fri, 25 Sep 2009 13:40:46 -0400 Subject: [Mailman-Developers] [Fwd: [Systers-dev] Systers Code Sprint at GHC09 - Logistics Update] In-Reply-To: <4ABCE7C2.1080509@zone12.com> References: <4ABCE7C2.1080509@zone12.com> Message-ID: <4104F290-B3BC-47C1-9728-B840FCC3797A@python.org> On Sep 25, 2009, at 11:54 AM, Terri Oda wrote: > Systers has been doing mailman development as part of their Google > Summer of Code work, so I expect there'll be some work on Mailman > happening at this sprint. I'm going to go represent Mailman > developers as it were, and if any of you are going to be in the > Tuscon area next week (even if you're not at GHC), feel free to > contact Jennifer and see about also coming out to help! Sounds like fun, and thanks for representin' Terri! :) I won't be able to make it, but feel free to ping me on irc if I can help in any way. -Barry -------------- next part -------------- A non-text attachment was scrubbed... Name: PGP.sig Type: application/pgp-signature Size: 832 bytes Desc: This is a digitally signed message part URL: From CNulk at scu.edu Mon Sep 28 19:02:26 2009 From: CNulk at scu.edu (Chris Nulk) Date: Mon, 28 Sep 2009 10:02:26 -0700 Subject: [Mailman-Developers] Problem with Moderate.py Message-ID: <4AC089B2.C780.0050.0@scu.edu> Hello all, I am using Mailman v2.1.9 with the LDAPMembership adapter (v 0.6). Mailman has been patched to all me to specify lists in the 'accept_these_nonmembers', 'hold_these_nonmembers', etc. using the @listname notation. Due to the circumstances here, I need to modify the Moderate.py to allow me add an additional list attribute which enables addresses in that attribute to always send to the list. I think I have a handle on that part of the modification. The problem I am having is if I specify a list with statically defined addresses in the 'accept_these_nonmembers' and the others, messages sent to the list go through with no problems. However, if the list I specify is dynamically built via the LDAPMembership adapter, messages are held for moderation (the generic default action). I put the same people on list whether statically defined or dynamically defined. I believe I have narrowed down the problem to the 'matches_p' function in Moderate.py. Anyone feeling lucky enough to answer my questions about Moderate.py and the LDAPMembership adapter. Thanks, Chris From mark at msapiro.net Mon Sep 28 20:39:55 2009 From: mark at msapiro.net (Mark Sapiro) Date: Mon, 28 Sep 2009 11:39:55 -0700 Subject: [Mailman-Developers] Problem with Moderate.py In-Reply-To: <4AC089B2.C780.0050.0@scu.edu> Message-ID: Chris Nulk wrote: > >I believe I have narrowed down the problem to the 'matches_p' function in Moderate.py. Can you post your matches_p definitiopn? -- Mark Sapiro The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan From CNulk at scu.edu Mon Sep 28 22:33:12 2009 From: CNulk at scu.edu (C Nulk) Date: Mon, 28 Sep 2009 13:33:12 -0700 Subject: [Mailman-Developers] Problem with Moderate.py In-Reply-To: References: Message-ID: <4AC11D88.3090602@scu.edu> Hello Mark, I am posting the matches_p function below. I believe the problem is an off-shoot of the lce/cpe problem with the LDAPMembership adapter you helped me with earlier. I did get it to work by changing the condition in matches_p from if mother.members.has_key(sender): to if mother.isMember(sender): It works for both statically created lists and the ldap dynamically created lists. Here is the complete matches_p function (from Mailman v2.1.9 with the @list patch applied and my changes): def matches_p(sender, nonmembers): # First strip out all the regular expressions plainaddrs = [addr for addr in nonmembers if not addr.startswith('^')] addrdict = Utils.List2Dict(plainaddrs, foldcase=1) if addrdict.has_key(sender): return 1 # Now do the regular expression matches for are in nonmembers: if are.startswith('^'): try: cre = re.compile(are, re.IGNORECASE) except re.error: continue if cre.search(sender): return 1 elif are.startswith('@'): try: mother = MailList(are[1:], lock=0) # Changed the condition to use the list's isMember method --CN 28-Sep-2009 # if mother.members.has_key(sender.lower()): if mother.isMember(sender): return 1 except Errors.MMUnknownListError: syslog('error', 'filter references non-existent list %s', are[1:]) return 0 Is the change I made the correct way of fixing the problem? If so, should other places where 'mlist.members.has_key(variable)' also be changed? I have also added the 'accept_special_posters' attribute I mentioned on the Mailman-users list. Can you take at least a quick look at the changes to make sure I didn't mess things up to bad? I have the diffs for MailList.py, versions.py, Version.py, Gui/Privacy.py and Handler/Moderate.py. Thanks for your help, Mark. Chris Mark Sapiro wrote: > Chris Nulk wrote: > >> I believe I have narrowed down the problem to the 'matches_p' function in Moderate.py. >> > > Can you post your matches_p definitiopn? > > From mark at msapiro.net Tue Sep 29 00:30:14 2009 From: mark at msapiro.net (Mark Sapiro) Date: Mon, 28 Sep 2009 15:30:14 -0700 Subject: [Mailman-Developers] Problem with Moderate.py In-Reply-To: <4AC11D88.3090602@scu.edu> Message-ID: C Nulk wrote: > >I am posting the matches_p function below. I believe the problem is an >off-shoot of the lce/cpe problem with the LDAPMembership adapter you >helped me with earlier. I did get it to work by changing the condition >in matches_p from > > if mother.members.has_key(sender): >to > if mother.isMember(sender): The change you made is correct. The problem is I think I referred you to the original listinclusion.patch from , and that patch has problems when the MemberAdaptor is other than the default OldStyleMemberships.py. The current Moderate.matches_p() is attached as matches_p.txt for your reference. [...] >Is the change I made the correct way of fixing the problem? If so, >should other places where 'mlist.members.has_key(variable)' also be changed? I don't know where else you are seeing mlist.members.has_key(variable), but the only place anything like that should be referenced is in OldStyleMemberships.py. Anywhere in the code at large where there is a membership test it should be via the list's isMember() method which will determine membership via the appropriate MemberAdaptor. >I have also added the 'accept_special_posters' attribute I mentioned on >the Mailman-users list. Can you take at least a quick look at the >changes to make sure I didn't mess things up to bad? I have the diffs >for MailList.py, versions.py, Version.py, Gui/Privacy.py and >Handler/Moderate.py. Yes, I can look at them. -- Mark Sapiro The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: matches_p.txt URL: From barry at list.org Tue Sep 29 04:55:03 2009 From: barry at list.org (Barry Warsaw) Date: Mon, 28 Sep 2009 22:55:03 -0400 Subject: [Mailman-Developers] Upgrading lp:mailman Message-ID: <91DCCE5D-1013-4097-86CF-A0FF9CFD5B6E@list.org> I'm in the process of upgrading lp:mailman, or better known as lp:~mailman-coders/mailman/3.0 to bzr format 2a. It's best not to create branches of this locally for right now, and you will eventually have to update your own local branches if you want to push a stacked branch to Launchpad. Right now, Stephen's got the only stacked branch on Launchpad that I can tell. This will not affect Mailman 2.1 or 2.2 branches, only Mailman 3.0 branches. You will need bzr 1.17 at least, though the just released bzr 2.0.0 is best. MacPorts has 1.17. Ping me with any questions (though I'm still trying to figure out a few things myself ;). This should be the last branch update for a long while. The bzr folks tell me that 2a is long term supported. -Barry -------------- next part -------------- A non-text attachment was scrubbed... Name: PGP.sig Type: application/pgp-signature Size: 832 bytes Desc: This is a digitally signed message part URL: From justinlong at gmail.com Wed Sep 30 16:05:59 2009 From: justinlong at gmail.com (Justin Long) Date: Wed, 30 Sep 2009 10:05:59 -0400 Subject: [Mailman-Developers] Bug report in Membership Management system on Web Interface Message-ID: <876ecebe0909300705n2e2b4942i582e9684b48dfb09@mail.gmail.com> Greetings, There appears to be a bug in version 2.1.5 of the Membership Management panel of the Web Interface for Mailman: I try to change the name (or add a name where the name is blank) for a specific email address, and the change does not save. Is this a known bug? Is there a fix for it? If this is not the right place to post this, please let me know where I should send it. Cordially, Justin Long -- -- Justin D. Long Swarming: building high-impact decentralized networks to reach the unreached Through: 1-day Swarm Schools, multiday Swarm Labs, yearlong Swarm Coaching ------- Email justinlong at gmail.com Skype nsmjustinlong OR call/SMS 757-559-1515 http://www.strategicnetwork.org - magazine, e-groups, knowledgebase http://www.google.com/reader/shared/justinlong - shared annotated bloglinks http://www.twitter.com/nsmjustinlong - daily activities, swarming notes http://www.facebook.com/justindavidlong - Facebook page http://www.accessofevil.org - if a demon could blog, it might look like this ------- Consider sponsoring our ministries: one-time and monthly gifts appreciated! Postal mail: RUN Ministries, PO Box 6543, Virginia Beach, VA 23456, USA Contribute online: http://www.strategicnetwork.org/contribute ------- Never retreat. Never surrender. Never cut a deal with a dragon. No armor? Unclean life? Then do not meddle in the affairs of dragons, for you are crunchy and taste good with ketchup. From barry at python.org Wed Sep 30 16:21:36 2009 From: barry at python.org (Barry Warsaw) Date: Wed, 30 Sep 2009 10:21:36 -0400 Subject: [Mailman-Developers] Bug report in Membership Management system on Web Interface In-Reply-To: <876ecebe0909300705n2e2b4942i582e9684b48dfb09@mail.gmail.com> References: <876ecebe0909300705n2e2b4942i582e9684b48dfb09@mail.gmail.com> Message-ID: <6C182935-10FF-4913-B81D-1073093DF756@python.org> On Sep 30, 2009, at 10:05 AM, Justin Long wrote: > Greetings, > There appears to be a bug in version 2.1.5 of the Membership > Management > panel of the Web Interface for Mailman: > > I try to change the name (or add a name where the name is blank) for a > specific email address, and the change does not save. > > Is this a known bug? Is there a fix for it? > > If this is not the right place to post this, please let me know > where I > should send it. For problems and questions using Mailman, mailman-users at python.org is the better place to post. This mailing list is about developing Mailman. However, 2.1.5 is really old so you should at least upgrade to 2.1.12 before going any farther. -Barry -------------- next part -------------- A non-text attachment was scrubbed... Name: PGP.sig Type: application/pgp-signature Size: 832 bytes Desc: This is a digitally signed message part URL: From mark at msapiro.net Wed Sep 30 16:27:59 2009 From: mark at msapiro.net (Mark Sapiro) Date: Wed, 30 Sep 2009 07:27:59 -0700 Subject: [Mailman-Developers] Bug report in Membership Management system onWeb Interface In-Reply-To: <876ecebe0909300705n2e2b4942i582e9684b48dfb09@mail.gmail.com> Message-ID: Justin Long wrote: >There appears to be a bug in version 2.1.5 of the Membership Management >panel of the Web Interface for Mailman: > >I try to change the name (or add a name where the name is blank) for a >specific email address, and the change does not save. > >Is this a known bug? Is there a fix for it? As far as I know, this is the first report of any such issue. It worked for me in 2.1.5 and it works for me in current Mailman. Is this the only thing you can't change via the web admin interface? I.e. can you mass subscribe or invite? Can you change other settings? If not, see the FAQ at . There was a bug fixed in Mailman 2.1.10 that would not allow any changes to a member's settings from the admin Membership List page, but it only affected member addresses that contained a double quote (") character. If this is your issue, see the changes to Mailman/Cgi/admin.py at for a fix. >If this is not the right place to post this, please let me know where I >should send it. Bugs should be reported at . -- Mark Sapiro The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan From daniel at cacert.org Tue Sep 29 04:13:03 2009 From: daniel at cacert.org (Daniel Black) Date: Tue, 29 Sep 2009 12:13:03 +1000 Subject: [Mailman-Developers] dkim and email list software - potential solution Message-ID: <200909291213.07631.daniel@cacert.org> Folks, Please excuse the massive cross post and reply to the dkim-dev list if possible and it is of collective interest to many email list software implementers. I've put together a paper on DKIM that I've just put out for review. It is available here[1] if anyone would like to review it. Feedback can still be incorporated. As you may know ([2] and others), DKIM has an incompatibility with email list software message modification and ADSP verification (RFC5617). The incompatibility is as follows: 1. An author emails to a mailing list. 2. The author's email infrastructure DKIM signs the email message and publishes a ADSP dkim record saying 'I sign all messages for this domain' 3. The message is received by the email list 4. the email list software removes the DKIM-signature or, though message modification, invalidates the signature 5. the email list subscriber receivers the email and attempts a DKIM-signature validation. If the signature did not exist it will validate ok. 6. the email list subscriber attempts to validated the DKIM-ADSP. The author domain, taken from the From: address, has a DKIM-ADSP record saying "all" (meaning I sign all messages) or "discard" (discard if the author domain signature is invalid or missing). 7. email gets dropped due to ADSP The ways email list software can deal with this is (from [2]): 1. ignore the problem - not really friendly given social demand for antispoofing 2. Parse DKIM-Signature and don't do transforms that break this - will end up lots of exception handling code and an inconstant emails to the subscriber that may not meet the list owner's policy. 3. remove DKIM-Signature conditionally - fails ADSP really badly 4. sign list-ID headers and ask verifiers to check for list-id tags in a spamyness way - complicates verification, provides spoofing loophole as DKIM is antispoofing more that anitspam 5. remove DKIM-Signature always - fails ADSP really badly As we can see none of these are ideal. What I propose as a solution is: 1. rewrite the From: address of the email to include the domain of the email address. and one or both of: 2. make "sender" or "reply-to" email headers contain the original sender 3. make the mail list contain a delivery from the rewitten address in#1 to the original sender. Rational: For #1: Rewriting the From address immediately makes the Author domain the email list. As such the ADSP verification by the receiver immediately looks to the email list domain for signatures. The original DKIM-signature is there and should not be removed despite being invalid (as recommended in one of the RFC), however as it is no longer the Author Domain Signature its criticality is not as important. Having a From domain here makes it easy for DKIM signing software to sign all email for the for email list. Some signing software says sign only "From:. *@mydomain.com". I discarded the idea of adding a From address as sender-id verification will fail if two (or more) from addresses though earlier versions do and DKIM supports it. For #2: Having a reply-to and sender (RFC5322 3.6.2) gives the MUA the hint as to where to send the reply now that we have altered the from address. I acknowledge that email lists already mundge this sometimes hence option #3. For #3: Taking care of those cases where the MUA or user just copies the from address or where option #2 is not considered, it would be just polite to deliver the munged email address of the email list domain back to the author. Careful consideration here needs to take care of the transformation. Relaying through a mail server should require some checks and here it is particular important. Mutilating an address to sympa-dev+daniel_cacert.org at cru.fr without checks would just encourage spammers to send email to sympa- dev+(arbitaryemailaddress)@cru.fr and the email list would become effectively an open relay. Some kind of check to make sure the arbitaryemailaddress is a subscriber of the list would be a primary check though other encrypted/signed addresses are also possible here. I see this as the solution that requires the least amount of code changes, preserves most existing behaviour, and becomes it becomes DKIM friendly. I'm keen to know if you agree or think otherwise. I don't know how IETF authors feel about this but I'll also find out fairly soon :-) The referenced paper[1] contains some guidelines for DKIM signing list messages too. Feedback on that also welcome. [1] https://community.cacert.org/dkim/ - dkim paper talking about email lists [2] http://wiki.list.org/display/DEV/DKIM Cheers, -- Daniel Black Infrastructure Administrator CAcert -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 198 bytes Desc: This is a digitally signed message part. URL: From dhc at dcrocker.net Tue Sep 29 21:10:50 2009 From: dhc at dcrocker.net (Dave CROCKER) Date: Tue, 29 Sep 2009 12:10:50 -0700 Subject: [Mailman-Developers] [dkim-dev] dkim and email list software - potential solution In-Reply-To: <200909291213.07631.daniel@cacert.org> References: <200909291213.07631.daniel@cacert.org> Message-ID: <4AC25BBA.3080500@dcrocker.net> wow. more than 16 hours and no one has posted anything. Daniel Black wrote: > 2. The author's email infrastructure DKIM signs the email message and > publishes a ADSP dkim record saying 'I sign all messages for this domain' > 3. The message is received by the email list I'm going to respond without getting into any of the ADSP emotional debate. ADSP is what it is. DKIM is what it is. You are asking a legitimate question about a potential scenario that seems likely to occur. If someone registers an ADSP record that says that any failed or absent signatures should cause the message to be dropped, they are responsible for making the assertion and for its consequences. The presumption behind this bit of mechanism is that the ADSP registrant knows enough, and can control enough, to produce the desired outcome. The scenario you are exploring demonstrates a case in which they were wrong. I think it a mistake to ask intermediaries to fix the effects of their own legitimate actions, really caused by inappropriate policy choices of an organization earlier in the handling sequence. The core problem, here, is that the signing organization asserted a generality that was incorrect. It's not your job to hack your system or the messages you process to try to fix their mistaken generality. d/ ps. There are cases of SPF -a being set incorrectly, and it didn't even take a mailing list to create undelivered mail. The solution is to change the -a setting, rather than try to hack around it. -- Dave Crocker Brandenburg InternetWorking bbiw.net From dotis at mail-abuse.org Wed Sep 30 03:00:26 2009 From: dotis at mail-abuse.org (Douglas Otis) Date: Tue, 29 Sep 2009 18:00:26 -0700 Subject: [Mailman-Developers] [dkim-dev] dkim and email list software - potential solution In-Reply-To: <4AC25BBA.3080500@dcrocker.net> References: <200909291213.07631.daniel@cacert.org> <4AC25BBA.3080500@dcrocker.net> Message-ID: <4AC2ADAA.1040308@mail-abuse.org> On 9/29/09 12:10 PM, Dave CROCKER wrote: > wow. more than 16 hours and no one has posted anything. There are no good solutions. This feature was intended to cause messages with their signatures damaged or missing to not end up in someone's mailbox. Any domain making an ADSP discard assertion should expect the domain will become usable on mailing lists. Such domains should be limited to handling transactional emails. Unfortunately, this view might lead to more phishing exploits whenever alternative domains are then used by the same organization. When there is nothing good to be said, perhaps the better choice is to say nothing. Perhaps there should be a standardization for transactional sub-domains and stringent requirements where ADSP transactions then become superfluous. Where subdomains like secure, or signed.somedomain.com versus somedomain.com might be used as a way to establish a visual convention. -Doug From marcjc at gmail.com Tue Sep 29 22:14:25 2009 From: marcjc at gmail.com (Marc Juul) Date: Tue, 29 Sep 2009 22:14:25 +0200 Subject: [Mailman-Developers] Script to change a member's password Message-ID: <4AC26AA1.9090003@labitat.dk> Hello. I'm running mailman 2.1.11 and i wrote a script to change a user's password, but it doesn't change anything and i can't seem to find the problem. My other "withlist" scripts work fine. I'm using: mlist.setMemberPassword(member, password) and then mlist.Save() called using "withlist -l -r" I have attached my script. Thanks in advance. Marc Juul -------------- next part -------------- A non-text attachment was scrubbed... Name: change_password.py Type: text/x-python Size: 1523 bytes Desc: not available URL: