From sonali.ellath95 at gmail.com Mon Feb 1 20:39:28 2016 From: sonali.ellath95 at gmail.com (Sonali Ellath) Date: Tue, 2 Feb 2016 07:09:28 +0530 Subject: [Mailman-Developers] Error creating new list Message-ID: Hi, I built mailman-bundler using the guidelines found here . Server started successfully and and I created few domains. It worked well but when I tried to create a list, I received HTTP Error 500: A server error occurred. Please contact the administrator. Traceback: Traceback (most recent call last): File "/usr/lib/python3.4/wsgiref/handlers.py", line 137, in run self.result = application(self.environ, self.start_response) File "github/mailman/mailman-bundler/venv-3.4/lib/python3.4/site-packages/mailman/database/transaction.py", line 57, in wrapper rtn = function(*args, **kws) File "github/mailman/mailman-bundler/venv-3.4/lib/python3.4/site-packages/mailman/rest/wsgiapp.py", line 65, in __call__ environ, start_response) File "github/mailman/mailman-bundler/venv-3.4/lib/python3.4/site-packages/falcon/api.py", line 182, in __call__ responder(req, resp, **params) File "github/mailman/mailman-bundler/venv-3.4/lib/python3.4/site-packages/mailman/rest/lists.py", line 206, in on_post mlist = create_list(**validator(request)) File "github/mailman/mailman-bundler/venv-3.4/lib/python3.4/site-packages/mailman/app/lifecycle.py", line 81, in create_list call_name(config.mta.incoming).create(mlist) File "github/mailman/mailman-bundler/venv-3.4/lib/python3.4/site-packages/mailman/mta/postfix.py", line 69, in create self.regenerate() File "github/mailman/mailman-bundler/venv-3.4/lib/python3.4/site-packages/mailman/mta/postfix.py", line 104, in regenerate raise RuntimeError(NL.join(errors)) RuntimeError: command failure: /usr/sbin/postmap github/mailman/mailman-bundler/var/data/postfix_lmtp, 127, Key has expired command failure: /usr/sbin/postmap github/mailman/mailman-bundler/var/data/postfix_domains, 127, Key has expired Domain Details: Mail Host: lists.example.com URL Host: http://lists.example.com Please Help! Thanks, Sonali From mark at msapiro.net Mon Feb 1 20:52:57 2016 From: mark at msapiro.net (Mark Sapiro) Date: Mon, 1 Feb 2016 17:52:57 -0800 Subject: [Mailman-Developers] Error creating new list In-Reply-To: References: Message-ID: <56B00BF9.9010307@msapiro.net> On 02/01/2016 05:39 PM, Sonali Ellath wrote: > RuntimeError: command failure: /usr/sbin/postmap > github/mailman/mailman-bundler/var/data/postfix_lmtp, 127, Key has expired > command failure: /usr/sbin/postmap > github/mailman/mailman-bundler/var/data/postfix_domains, 127, Key has > expired Is Postfix installed? Can you run /usr/sbin/postmap manually? -- Mark Sapiro The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan From sonali.ellath95 at gmail.com Mon Feb 1 21:24:48 2016 From: sonali.ellath95 at gmail.com (Sonali Ellath) Date: Tue, 2 Feb 2016 07:54:48 +0530 Subject: [Mailman-Developers] Error creating new list In-Reply-To: <56B00BF9.9010307@msapiro.net> References: <56B00BF9.9010307@msapiro.net> Message-ID: Postfix was not installed. I installed it, and it works works now. Thanks On Tue, Feb 2, 2016 at 7:22 AM, Mark Sapiro wrote: > On 02/01/2016 05:39 PM, Sonali Ellath wrote: > > > RuntimeError: command failure: /usr/sbin/postmap > > github/mailman/mailman-bundler/var/data/postfix_lmtp, 127, Key has > expired > > command failure: /usr/sbin/postmap > > github/mailman/mailman-bundler/var/data/postfix_domains, 127, Key has > > expired > > > Is Postfix installed? Can you run /usr/sbin/postmap manually? > > -- > Mark Sapiro The highway is for gamblers, > San Francisco Bay Area, California better use your sense - B. Dylan > _______________________________________________ > Mailman-Developers mailing list > Mailman-Developers at python.org > https://mail.python.org/mailman/listinfo/mailman-developers > Mailman FAQ: http://wiki.list.org/x/AgA3 > Searchable Archives: > http://www.mail-archive.com/mailman-developers%40python.org/ > Unsubscribe: > https://mail.python.org/mailman/options/mailman-developers/sonali.ellath95%40gmail.com > > Security Policy: http://wiki.list.org/x/QIA9 > From sonali.ellath95 at gmail.com Mon Feb 1 22:43:51 2016 From: sonali.ellath95 at gmail.com (Sonali Ellath) Date: Tue, 2 Feb 2016 09:13:51 +0530 Subject: [Mailman-Developers] Changes not getting reflected in Postorius Message-ID: Hi, I made some simple UI changes (remove a entry from ChoiceField) but when I build the project using buildout, and run the server, my changes are not getting reflected. I doubt that I am not making the build properly. The process I followed: ./bin/buildout ./bin/mailman stop ./bin/mailman start ./bin/mailman-web-django-admin runserver The changes don't get reflected at 127.0.0.1:8000/mailman3 Thanks, Sonali From fsantiago at garbage-juice.com Tue Feb 2 11:17:51 2016 From: fsantiago at garbage-juice.com (fsantiago at garbage-juice.com) Date: Tue, 02 Feb 2016 11:17:51 -0500 Subject: [Mailman-Developers] 500 internal server error when accessing /postorius/ Message-ID: <66317a3c97781583feb1649a395a4a67@garbage-juice.com> Hello, I've installed mailman3, postorius, and hyperkitty from the repo: http://repos.fedorapeople.org/repos/abompard/hyperkitty/stable/fedora-$releasever/$basearch/ on centos 7. i have python 2.7 & 3.4 installed as well. mailman3 server starts fine (seemingly). But in apache i'm receiving the following error logs: Tue Feb 02 11:08:37.673184 2016] [:error] [pid 12349] [remote 69.122.57.26:200] mod_wsgi (pid=12349): Exception occurred processing WSGI script '/etc/postorius/sites/default/srv/postorius.wsgi'. [Tue Feb 02 11:08:37.673315 2016] [:error] [pid 12349] [remote 69.122.57.26:200] Traceback (most recent call last): [Tue Feb 02 11:08:37.673362 2016] [:error] [pid 12349] [remote 69.122.57.26:200] File "/usr/lib/python2.7/site-packages/django/core/handlers/wsgi.py", line 170, in __call__ [Tue Feb 02 11:08:37.673509 2016] [:error] [pid 12349] [remote 69.122.57.26:200] self.load_middleware() [Tue Feb 02 11:08:37.673561 2016] [:error] [pid 12349] [remote 69.122.57.26:200] File "/usr/lib/python2.7/site-packages/django/core/handlers/base.py", line 52, in load_middleware [Tue Feb 02 11:08:37.673679 2016] [:error] [pid 12349] [remote 69.122.57.26:200] mw_instance = mw_class() [Tue Feb 02 11:08:37.673709 2016] [:error] [pid 12349] [remote 69.122.57.26:200] File "/usr/lib/python2.7/site-packages/django/middleware/locale.py", line 24, in __init__ [Tue Feb 02 11:08:37.673790 2016] [:error] [pid 12349] [remote 69.122.57.26:200] for url_pattern in get_resolver(None).url_patterns: [Tue Feb 02 11:08:37.673834 2016] [:error] [pid 12349] [remote 69.122.57.26:200] File "/usr/lib/python2.7/site-packages/django/core/urlresolvers.py", line 401, in url_patterns [Tue Feb 02 11:08:37.674029 2016] [:error] [pid 12349] [remote 69.122.57.26:200] patterns = getattr(self.urlconf_module, "urlpatterns", self.urlconf_module) [Tue Feb 02 11:08:37.674120 2016] [:error] [pid 12349] [remote 69.122.57.26:200] File "/usr/lib/python2.7/site-packages/django/core/urlresolvers.py", line 395, in urlconf_module [Tue Feb 02 11:08:37.674162 2016] [:error] [pid 12349] [remote 69.122.57.26:200] self._urlconf_module = import_module(self.urlconf_name) [Tue Feb 02 11:08:37.674190 2016] [:error] [pid 12349] [remote 69.122.57.26:200] File "/usr/lib64/python2.7/importlib/__init__.py", line 37, in import_module [Tue Feb 02 11:08:37.674249 2016] [:error] [pid 12349] [remote 69.122.57.26:200] __import__(name) [Tue Feb 02 11:08:37.674276 2016] [:error] [pid 12349] [remote 69.122.57.26:200] File "/etc/postorius/sites/default/urls.py", line 26, in [Tue Feb 02 11:08:37.674337 2016] [:error] [pid 12349] [remote 69.122.57.26:200] admin.autodiscover() [Tue Feb 02 11:08:37.674363 2016] [:error] [pid 12349] [remote 69.122.57.26:200] File "/usr/lib/python2.7/site-packages/django/contrib/admin/__init__.py", line 24, in autodiscover [Tue Feb 02 11:08:37.674416 2016] [:error] [pid 12349] [remote 69.122.57.26:200] autodiscover_modules('admin', register_to=site) [Tue Feb 02 11:08:37.674442 2016] [:error] [pid 12349] [remote 69.122.57.26:200] File "/usr/lib/python2.7/site-packages/django/utils/module_loading.py", line 67, in autodiscover_modules [Tue Feb 02 11:08:37.674526 2016] [:error] [pid 12349] [remote 69.122.57.26:200] for app_config in apps.get_app_configs(): [Tue Feb 02 11:08:37.674560 2016] [:error] [pid 12349] [remote 69.122.57.26:200] File "/usr/lib/python2.7/site-packages/django/apps/registry.py", line 137, in get_app_configs [Tue Feb 02 11:08:37.674711 2016] [:error] [pid 12349] [remote 69.122.57.26:200] self.check_apps_ready() [Tue Feb 02 11:08:37.674747 2016] [:error] [pid 12349] [remote 69.122.57.26:200] File "/usr/lib/python2.7/site-packages/django/apps/registry.py", line 124, in check_apps_ready [Tue Feb 02 11:08:37.674781 2016] [:error] [pid 12349] [remote 69.122.57.26:200] raise AppRegistryNotReady("Apps aren't loaded yet.") [Tue Feb 02 11:08:37.674829 2016] [:error] [pid 12349] [remote 69.122.57.26:200] AppRegistryNotReady: Apps aren't loaded yet. my browser reports: Internal Server Error The server encountered an internal error or misconfiguration and was unable to complete your request. Please contact the server administrator at root at localhost to inform them of the time this error occurred, and the actions you performed just before this error. More information about this error may be available in the server error log. what have i missed? Thanks. - Fabian S. From raunaq.abhyankar at gmail.com Tue Feb 2 13:40:37 2016 From: raunaq.abhyankar at gmail.com (Raunaq Abhyankar) Date: Wed, 3 Feb 2016 00:10:37 +0530 Subject: [Mailman-Developers] GSOC 2016 Message-ID: Dear Developers, Hi! I am Raunaq Abhyankar from Mumbai, India. I am a Third Year Computer Engg student from Mumbai University. I would like to work on the following project ideas: 1. Dashboard for Admins/Owners/Moderators 2. Anonymous lists What is the procedure for applying to the given projects? Are any preGSOC activities (bug fixes / enhancements et al) supposed to be performed? Thanks and Regards, RAunaq Abhyankar From f at florianfuchs.com Tue Feb 2 17:50:11 2016 From: f at florianfuchs.com (f at florianfuchs.com) Date: Tue, 02 Feb 2016 23:50:11 +0100 Subject: [Mailman-Developers] RELEASED: Postorius 1.0.3 Message-ID: <1659f9af984ce823b2b0c5cbaf9261cc@florianfuchs.com> I'm announcing the release of Postorius 1.0.3. It contains an important security fix[1], so we strongly recommend that all sites running Mailman 3.0 in combination with Postorius update their instances to this version. The easiest way to upgrade is via pip: pip install --upgrade postorius The latest tarball is also available on https://pypi.python.org/pypi/postorius. Florian [1] http://wiki.list.org/SEC/Unauthorized-Domain-Deletion/ From mark at msapiro.net Tue Feb 2 22:29:42 2016 From: mark at msapiro.net (Mark Sapiro) Date: Tue, 2 Feb 2016 19:29:42 -0800 Subject: [Mailman-Developers] Mailman 2.1.21 release Message-ID: <56B17426.6020207@msapiro.net> I am pleased to announce the first release candidate for Mailman 2.1.21. Python 2.4 is the minimum supported, but Python 2.7 is strongly recommended. This release includes a few new features and several bug fixes. See the attached README for details. Associated with these changes are six new and two modified strings in the i18n message catalogs. I strongly encourage anyone with an interest in translations of Mailman to get this release and help with updating the translations for the final 2.1.21 release which is planned for the end of February. This candidate is expected to be quite stable. All the changes since 2.1.20 have been installed in the python.org Mailman as they were developed and are running without known issues. The only reason why this is a candidate and not a final release is to allow time for i18n updates to be in the final. Mailman is free software for managing email mailing lists and e-newsletters. Mailman is used for all the python.org and SourceForge.net mailing lists, as well as at hundreds of other sites. For more information, please see our web site at one of: http://www.list.org http://www.gnu.org/software/mailman http://mailman.sourceforge.net/ http://mirror.list.org/ Mailman 2.1.21rc1 can be downloaded from https://launchpad.net/mailman/2.1/ http://ftp.gnu.org/gnu/mailman/ https://sourceforge.net/projects/mailman/ -- Mark Sapiro The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan -------------- next part -------------- 2.1.21rc1 (03-Feb-2016) New Features - There is a new dmarc_none_moderation_action list setting and a DEFAULT_DMARC_NONE_MODERATION_ACTION mm_cfg.py setting to optionally apply Munge From or Wrap Message actions to posts From: domains that publish DMARC p=none. The intent is to eliminate failure reports to the domain owner for messages that would be munged or wrapped if the domain published a stronger DMARC policy. See the descriptions in Defaults.py, the web UI and the bug report for more. (LP: #1539384) - Thanks to Jim Popovitch there is now a feature to automatically turn on moderation for a malicious list member who attempts to flood a list with spam. See the details for the Privacy options ... -> Sender filters -> member_verbosity_threshold and member_verbosity_interval settings in the web admin UI and the documentation in Defaults.py for the DEFAULT_MEMBER_VERBOSITY_* and VERBOSE_CLEAN_LIMIT settings for information. - bin/list_members now has options to display all moderated or all non-moderated members. - There is now a mm_cfg.py setting GLOBAL_BAN_LIST which is like the individual list's ban_list but applies globally to all subscribe requests. See the description in Defaults.py for more details. i18n - Several Galician templates that were improperly encoded as iso-8859-1 have been fixed. (LP: #1532504) - The German translation has been updated by Mirian Margiani. - The Brazilian Portugese translation has been updated by Emerson Ribeiro de Mello. Bug fixes and other patches - Modified contrib/mmdsr to report held and banned subscriptions and DMARC lookups in their own categories. - Fixed a bug that could create a garbled From: header with certain DMARC mitigation actions. (LP: #1536816) - Treat a poster's address which matches an equivalent_domains address as a list member for the regular_exclude_ignore check. (LP: #1526550) - Fixed an issue that sometimes left no white space following subject_prefix. (LP: #1525954) - Vette log entries for banned subscriptions now include the source of the request if available. (LP: #1525733) - Submitting the user options form for a user who was asynchronously unsubscribed would throw an uncaught NotAMemberError. (LP: #1523273) - It was possible under some circumstances for a message to be shunted after a handler rejected or discarded it, and the handler would be skipped upon unshunting and the message accepted. (LP: #1519062) - Posts gated to usenet will no longer have other than the target group in the Newsgroups: header. (LP: #1512866) - Invalid regexps in *_these_nonmembers, subscribe_auto_approval and ban_list are now logged. (LP: #1507241) - Refactored the GetPattern list method to simplify extending @listname syntax to new attributes in the future. Changed Moderate.py to use the GetPattern method to process the *_these_nonmembers lists. - Changed CookHeaders to default to using space rather than tab as continuation_ws when folding headers. (LP: #1505878) - Fixed the 'pidfile' path in the sample init.d script. (LP: # 1503422) - Subject prefixing could fail to collapse multiple 'Re:' in an incomming message if they all came after the list's subject_prefix. This is now fixed. (LP: #1496620) - Defended against a user submitting URLs with query fragments or POST data containing multiple occurrences of the same variable. (LP: #1496632) - Fixed bin/mailmanctl to check its effective rather than real uid. (LP: #1491187) - Fixed cron/gate_news to catch EOFError on opening the newsgroup. (LP: #1486263) - Fixed a bug where a delayed probe bounce can throw an AttributeError. (LP: #1482940) - If a list is not digestable an the user is not currently set to receive digests, the digest options will not be shown on the user's options page. (LP: #1476298) - Improved identification of remote clients for logging and subscribe form checking in cases where access is via a proxy server. Thanks to Jim Popovitch. Also updated contrib/mmdsr for log change. - Fixed an issue with shunted messages on a list where the charset for the list's preferred_language had been changed from iso-8859-1 to utf-8 without recoding the list's description. (LP: #1462755) - Mailman-Postfix integration will now add mailman at domain entries in data/virtual-mailman for each domain in POSTFIX_STYLE_VIRTUAL_DOMAINS which is a host_name of a list. This is so the addresses which are exposed on admin and listinfo overview pages of virtual domains will be deliverable. (LP: #1459236) - The vette log entry for DMARC policy hits now contains the list name. (LP: #1450826) - If SUBSCRIBE_FORM_SECRET is enabled and a user's network has a load balancer or similar in use the POSTing IP might not exactly match the GETting IP. This is now accounted for by not requiring the last octet (16 bits for ipV6) to match. (LP: #1447445) - DKIM-Signature:, DomainKey-Signature: and Authentication-Results: headers are now removed by default from posts to anonymous lists. (LP: #1444673) - The list admin web UI Mambership List search function often doesn't return correct results for search strings (regexps) that contain non-ascii characters. This is partially fixed. (LP: #1442298) -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 181 bytes Desc: OpenPGP digital signature URL: From programo.sapien at gmail.com Tue Feb 2 23:37:22 2016 From: programo.sapien at gmail.com (Aswin kumar) Date: Tue, 2 Feb 2016 22:37:22 -0600 Subject: [Mailman-Developers] =?utf-8?q?Regarding_Issue_=23126_=C2=B7?= Message-ID: Hi , I would like to know if this Issue #126 ? is still open? Is it related to the merge request Merge Request #51 ? Regards, Aswin From nickbarnett at onetel.com Wed Feb 3 12:57:20 2016 From: nickbarnett at onetel.com (Nicholas Barnett) Date: Wed, 3 Feb 2016 17:57:20 +0000 Subject: [Mailman-Developers] a suggestion Message-ID: <5EA8585D-65D1-47F0-86FD-EBE461D14F2F@onetel.com> Dear Mail men (wait a minute, wait a minute --- oh no, that was Post Man, wasn't it), We have over 480 email lists, and about 60,000 members. Many members of the organisation are members of more than one list. If one posts to two lists, other members reading the post will be divided into three, those in list A, in list B, in both. If someone in both reply to it and create a thread, well, it becomes very tangled as B people don't see A messages and vice versa, but sometimes they see messages from AB people responding to stuff they haven't seen. B-listers may respond along the lines of a response already made on list A. Confusing! I apologise if this has been brought up before, but I couldn't find it. One of our 60,000 has proposed that the original poster should post to the two lists in two separate emails, but could there be an option for each list moderator to select whereby if one addressee of a post is a list, then other addressees may not be? It would be bounced! (And the option should be the default, of course, so you'd need to opt out to allow multiple lists as addressees, and create tangled threads)? Yours sincerely Nicholas Barnett From mark at msapiro.net Wed Feb 3 13:50:17 2016 From: mark at msapiro.net (Mark Sapiro) Date: Wed, 3 Feb 2016 10:50:17 -0800 Subject: [Mailman-Developers] a suggestion In-Reply-To: <5EA8585D-65D1-47F0-86FD-EBE461D14F2F@onetel.com> References: <5EA8585D-65D1-47F0-86FD-EBE461D14F2F@onetel.com> Message-ID: <56B24BE9.5080301@msapiro.net> On 02/03/2016 09:57 AM, Nicholas Barnett wrote: > > If someone in both reply to it and create a thread, well, it becomes > very tangled as B people don't see A messages and vice versa, but > sometimes they see messages from AB people responding to stuff they > haven't seen. B-listers may respond along the lines of a response > already made on list A. Confusing! (see note below) Cross posting is an issue that will always cause problems because there is no single, right way to handle it. Consider an announcement to listA and listB with ListB in ListA's regular_exclude_lists. You want this to be a single post so members of both lists don't get duplicates. Yet, if people receiving the post who are members of only one of the lists reply-all their replies to the other list are non-member posts which may be an issue. This is in addition to the confusion that you mention. > One of our 60,000 has proposed that the original poster should post to > the two lists in two separate emails, but could there be an option for > each list moderator to select whereby if one addressee of a post is a > list, then other addressees may not be? It would be bounced! (And the > option should be the default, of course, so you'd need to opt out to > allow multiple lists as addressees, and create tangled threads)? Not allowing cross posting is a social issue. It can be enforced partially, but not completely reliably within Mailman. First of all, Cross posting with many of the issues you raise occurs with posts to lists that may be in different Mailman installations or even among lists not all of which are Mailman managed lists. Also, even with posts to multiple lists in the same installation, if Bcc's and aliases are allowed, Mailman can't always know if another list in the installation is a recipient of the post or not. I think you can do as well as can be done with the following settings in current Mailman 2.1. In Privacy options... -> Recipient filters for each list, set require_explicit_destination to Yes (this is already the distribution default) and set max_num_recipients to 2 (you can make this the default by setting DEFAULT_MAX_NUM_RECIPIENTS = 2 in mm_cfg.py). This will say that for a post to this list to not be held for moderation, it must explicitly address this list and must have no other explicit addressees (i.e. total addressees < 2). Of course, this will preclude addressing other, non-list recipients in list posts unless they are Bcc'd, and will undoubtedly cause confusion of a different kind. If you post this to the mailman-users at python.org list, you will reach a wider audience and may get more information about how other installations deal with this issue. note: For the lists that I'm on, I see the opposite problem. People top post and quote entire threads, so the issue isn't people seeing replies to stuff they haven't seen, it's digests and archives being polluted with multiple copies of quoted and requoted material. -- Mark Sapiro The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan From raj.abhilash1 at gmail.com Wed Feb 3 15:06:48 2016 From: raj.abhilash1 at gmail.com (Abhilash Raj) Date: Wed, 3 Feb 2016 12:06:48 -0800 Subject: [Mailman-Developers] GSOC 2016 In-Reply-To: References: <56B1311C.5010200@gmail.com> Message-ID: <56B25DD8.4090705@gmail.com> Hi Raunaq, On 02/03/2016 03:51 AM, Raunaq Abhyankar wrote: > Hey! I would like to work on the following ideas: I think three of them are too much for one summer. Try choosing one and then clearly defining what do you want to do with these ideas. > 1.Preset list settings template. There is an active discussion going on this topic with another student on -developers list. Try to look through the archives and see if can understand the idea behind this and then maybe come up with a good solution/proposal on how to do this. > 2.Gitlab integration This probably was rejected as a good idea for a GSoC project in itself. The reason being you can always add the list's mailing list to the list of subscribers on any of the code sharing sites which would send in the updates. Although, I think the current setup to subscribe to events individually is much better and fine grained as per individual's choices. I am open if you want to do some other kind of "integration" that would really help people. > 3.Shared bookmarks toolkit This looks like a small project but can be added along with small projects to create a summer of code proposal. You can expand more on what this toolkit will do and how and look for another one or two easy tasks. > > How do I go about the same. > > Regards, > Raunaq Abhyankar > > On Feb 3, 2016 4:13 AM, "Abhilash Raj" > wrote: > > Hi Raunaq, > > On 02/02/2016 10:40 AM, Raunaq Abhyankar wrote: > > Dear Developers, > > Hi! I am Raunaq Abhyankar from Mumbai, India. I am a Third Year > Computer > > Engg student from Mumbai University. > > > > I would like to work on the following project ideas: > > 1. Dashboard for Admins/Owners/Moderators > > 2. Anonymous lists > > I think you visited the old GSoC page. Please read > http://wiki.list.org/x/17891941 for the latest information on GSoC 2016 > and in general about the application process. > > > > What is the procedure for applying to the given projects? > > Are any preGSOC activities (bug fixes / enhancements et al) > supposed to be > > performed? > > > > Thanks and Regards, > > RAunaq Abhyankar > > _______________________________________________ > > Mailman-Developers mailing list > > Mailman-Developers at python.org > > https://mail.python.org/mailman/listinfo/mailman-developers > > Mailman FAQ: http://wiki.list.org/x/AgA3 > > Searchable Archives: > http://www.mail-archive.com/mailman-developers%40python.org/ > > Unsubscribe: > https://mail.python.org/mailman/options/mailman-developers/raj.abhilash1%40gmail.com > > > > Security Policy: http://wiki.list.org/x/QIA9 > > > > -- > thanks, > Abhilash Raj > -- thanks, Abhilash Raj -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 819 bytes Desc: OpenPGP digital signature URL: From stephen at xemacs.org Wed Feb 3 21:34:38 2016 From: stephen at xemacs.org (Stephen J. Turnbull) Date: Thu, 4 Feb 2016 11:34:38 +0900 Subject: [Mailman-Developers] [Mailman-Users] RELEASED: Postorius 1.0.3 In-Reply-To: <1659f9af984ce823b2b0c5cbaf9261cc@florianfuchs.com> References: <1659f9af984ce823b2b0c5cbaf9261cc@florianfuchs.com> Message-ID: <22194.47294.536544.713741@turnbull.sk.tsukuba.ac.jp> Thanks, Florian! f at florianfuchs.com writes: > I'm announcing the release of Postorius 1.0.3. From adityadivekar03 at gmail.com Thu Feb 4 10:44:28 2016 From: adityadivekar03 at gmail.com (Aditya Divekar) Date: Thu, 4 Feb 2016 21:14:28 +0530 Subject: [Mailman-Developers] GSOC 2016 Message-ID: Hi everyone, My name is Aditya Divekar. I am a sophomore from IIT Guwahati. I have recently gotten involved with the mailman project, and gained familiarity with postorius and mailman core. I want to work on the project "Implement module to process ARC headers". I have begun reading about RFC a bit. Please help me get started in the right direction and if possible share some timeline goals. Thanks. Aditya. From stephen at xemacs.org Thu Feb 4 22:50:26 2016 From: stephen at xemacs.org (Stephen J. Turnbull) Date: Fri, 5 Feb 2016 12:50:26 +0900 Subject: [Mailman-Developers] GSOC 2016 In-Reply-To: References: Message-ID: <22196.7170.187271.561289@turnbull.sk.tsukuba.ac.jp> Aditya Divekar writes: > My name is Aditya Divekar. I am a sophomore from IIT Guwahati. Nice to meet you, Aditya! I'm the main DMARC/IETF wrangler for Mailman, and I would be the main mentor for the ARC project. > I want to work on the project "Implement module to process ARC > headers". I have begun reading about RFC a bit. That's a good start. If you have questions, feel free to ask. For general questions that are mostly about "how do I hook code into Mailman" or about GSoC, please ask on this list. Not only will you get better and quicker answers, but the questions and answers will benefit other developers too. For questions about ARC, you can write me directly or the list, as you feel comfortable. Or once you start to get the feel of things you may try to ask on the ARC list. However, IEFT lists are probably very different from anything you've participated in before. High stakes are involved (there are people with millions of dollars invested in servers there) and people can be a little terse. Not to mention the vocabulary will likely be new to you. The next thing to do would be to join the ARC mailing list and lurk: To subscribe or unsubscribe via the World Wide Web, visit http://lists.dmarc.org/mailman/listinfo/arc-discuss or, via email, send a message with subject or body 'help' to arc-discuss-request at dmarc.org Right now it's low-traffic. It's a Mailman list. I subscribed with the digest, and get maybe one a week. > Please help me get started in the right direction and if possible > share some timeline goals. Well, the main timeline goal would be to get done in time for the live test of implementations being held by the DMARC folks -- on Feb 19. So I guess that's not going to happen! It is my belief that a full implementation (with bugs still in it) can easily be done in a summer starting from a reasonable amount of programming skill in Python. If you're better than average it will probably be integratable into Mailman and ready for participating with other implementations on the Internet at the end of the summer. With that in mind, please read How to SPAM (http://turnbull.sk.tsukuba.ac.jp/Blog/SPAM.txt) and other general information about GSoC proposals at http://wiki.list.org/DEV/Google%20Summer%20of%20Code%202016. Then write something up. Pretty much anything. It doesn't have to be complete, it just needs to demonstrate you've thought for a few minutes about what you think you need to do. Yes, this is pretty sketchy. If you're going to work with me, you need to accept that I'm going expect you to try something plausible before I tell you what I expect. I'm not a complete curmudgeon about it, but I have found that it is a good way to work for me. Regards, and happy hacking! Steve From mark at msapiro.net Fri Feb 5 01:45:28 2016 From: mark at msapiro.net (Mark Sapiro) Date: Thu, 4 Feb 2016 22:45:28 -0800 Subject: [Mailman-Developers] Mailman 2.1.21 release - IMPORTANT update Message-ID: <56B44508.4020808@msapiro.net> I am pleased to announce the second release candidate for Mailman 2.1.21. This fixes a serious bug in the first release candidate in that the few new list attributes weren't initialized for new lists. 2.1.21rc1 would work with lists migrated from older releases but lists created under that release were unusable. If you installed 2.1.21rc1, you should upgrade to 2.1.21rc2, and if you created new lists under 2.1.21rc1, see the attached fix_list procedure. Python 2.4 is the minimum supported, but Python 2.7 is strongly recommended. This release includes a few new features and several bug fixes. See the attached README for details. Associated with these changes are six new and two modified strings in the i18n message catalogs. I strongly encourage anyone with an interest in translations of Mailman to get this release and help with updating the translations for the final 2.1.21 release which is planned for the end of February. This candidate is expected to be quite stable. All the changes since 2.1.20 have been installed in the python.org Mailman as they were developed and are running without known issues. The only reason why this is a candidate and not a final release is to allow time for i18n updates to be in the final. Mailman is free software for managing email mailing lists and e-newsletters. Mailman is used for all the python.org and SourceForge.net mailing lists, as well as at hundreds of other sites. For more information, please see our web site at one of: http://www.list.org http://www.gnu.org/software/mailman http://mailman.sourceforge.net/ http://mirror.list.org/ Mailman 2.1.21rc2 can be downloaded from https://launchpad.net/mailman/2.1/ http://ftp.gnu.org/gnu/mailman/ https://sourceforge.net/projects/mailman/ -- Mark Sapiro The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan -------------- next part -------------- 2.1.21rc2 (05-Feb-2016) New Features - There is a new dmarc_none_moderation_action list setting and a DEFAULT_DMARC_NONE_MODERATION_ACTION mm_cfg.py setting to optionally apply Munge From or Wrap Message actions to posts From: domains that publish DMARC p=none. The intent is to eliminate failure reports to the domain owner for messages that would be munged or wrapped if the domain published a stronger DMARC policy. See the descriptions in Defaults.py, the web UI and the bug report for more. (LP: #1539384) - Thanks to Jim Popovitch there is now a feature to automatically turn on moderation for a malicious list member who attempts to flood a list with spam. See the details for the Privacy options ... -> Sender filters -> member_verbosity_threshold and member_verbosity_interval settings in the web admin UI and the documentation in Defaults.py for the DEFAULT_MEMBER_VERBOSITY_* and VERBOSE_CLEAN_LIMIT settings for information. - bin/list_members now has options to display all moderated or all non-moderated members. - There is now a mm_cfg.py setting GLOBAL_BAN_LIST which is like the individual list's ban_list but applies globally to all subscribe requests. See the description in Defaults.py for more details. i18n - Several Galician templates that were improperly encoded as iso-8859-1 have been fixed. (LP: #1532504) - The German translation has been updated by Mirian Margiani. - The Brazilian Portugese translation has been updated by Emerson Ribeiro de Mello. Bug fixes and other patches - Modified contrib/mmdsr to report held and banned subscriptions and DMARC lookups in their own categories. - Fixed a bug that could create a garbled From: header with certain DMARC mitigation actions. (LP: #1536816) - Treat a poster's address which matches an equivalent_domains address as a list member for the regular_exclude_ignore check. (LP: #1526550) - Fixed an issue that sometimes left no white space following subject_prefix. (LP: #1525954) - Vette log entries for banned subscriptions now include the source of the request if available. (LP: #1525733) - Submitting the user options form for a user who was asynchronously unsubscribed would throw an uncaught NotAMemberError. (LP: #1523273) - It was possible under some circumstances for a message to be shunted after a handler rejected or discarded it, and the handler would be skipped upon unshunting and the message accepted. (LP: #1519062) - Posts gated to usenet will no longer have other than the target group in the Newsgroups: header. (LP: #1512866) - Invalid regexps in *_these_nonmembers, subscribe_auto_approval and ban_list are now logged. (LP: #1507241) - Refactored the GetPattern list method to simplify extending @listname syntax to new attributes in the future. Changed Moderate.py to use the GetPattern method to process the *_these_nonmembers lists. - Changed CookHeaders to default to using space rather than tab as continuation_ws when folding headers. (LP: #1505878) - Fixed the 'pidfile' path in the sample init.d script. (LP: # 1503422) - Subject prefixing could fail to collapse multiple 'Re:' in an incomming message if they all came after the list's subject_prefix. This is now fixed. (LP: #1496620) - Defended against a user submitting URLs with query fragments or POST data containing multiple occurrences of the same variable. (LP: #1496632) - Fixed bin/mailmanctl to check its effective rather than real uid. (LP: #1491187) - Fixed cron/gate_news to catch EOFError on opening the newsgroup. (LP: #1486263) - Fixed a bug where a delayed probe bounce can throw an AttributeError. (LP: #1482940) - If a list is not digestable an the user is not currently set to receive digests, the digest options will not be shown on the user's options page. (LP: #1476298) - Improved identification of remote clients for logging and subscribe form checking in cases where access is via a proxy server. Thanks to Jim Popovitch. Also updated contrib/mmdsr for log change. - Fixed an issue with shunted messages on a list where the charset for the list's preferred_language had been changed from iso-8859-1 to utf-8 without recoding the list's description. (LP: #1462755) - Mailman-Postfix integration will now add mailman at domain entries in data/virtual-mailman for each domain in POSTFIX_STYLE_VIRTUAL_DOMAINS which is a host_name of a list. This is so the addresses which are exposed on admin and listinfo overview pages of virtual domains will be deliverable. (LP: #1459236) - The vette log entry for DMARC policy hits now contains the list name. (LP: #1450826) - If SUBSCRIBE_FORM_SECRET is enabled and a user's network has a load balancer or similar in use the POSTing IP might not exactly match the GETting IP. This is now accounted for by not requiring the last octet (16 bits for ipV6) to match. (LP: #1447445) - DKIM-Signature:, DomainKey-Signature: and Authentication-Results: headers are now removed by default from posts to anonymous lists. (LP: #1444673) - The list admin web UI Mambership List search function often doesn't return correct results for search strings (regexps) that contain non-ascii characters. This is partially fixed. (LP: #1442298) -------------- next part -------------- The following is a transcript of a withlist session that fixes a list without new attributes. It invokes withlist on 'listname' looks at the lists dmarc_none_moderation_action which throws an AttributeError looks at the lists data_version which is 110. sets it to 109. saves and reloads the list. verifies the data_version is now 110 again and dmarc_none_moderation_action exists. Wnlocks the list and exits. msapiro at mail:~/mm$ bin/withlist -l listname Loading list listname (locked) The variable `m' is the listname MailList instance >>> m.dmarc_none_moderation_action Traceback (most recent call last): File "", line 1, in File "/srv/mailman/Mailman/MailList.py", line 147, in __getattr__ raise AttributeError, name AttributeError: dmarc_none_moderation_action >>> m.data_version 110 >>> m.data_version = 109 >>> m.Save() >>> m.data_version 109 >>> m.Load() >>> m.data_version 110 >>> m.dmarc_none_moderation_action False >>> m.Unlock() >>> Finalizing Another way is to run bin/config_list on the list with an input file containing the single line mlist.data_version = 109 -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 181 bytes Desc: OpenPGP digital signature URL: From raj.abhilash1 at gmail.com Sun Feb 7 01:37:50 2016 From: raj.abhilash1 at gmail.com (Abhilash Raj) Date: Sat, 6 Feb 2016 22:37:50 -0800 Subject: [Mailman-Developers] GSOC 2016 In-Reply-To: References: <56B1311C.5010200@gmail.com> <56B25DD8.4090705@gmail.com> Message-ID: <56B6E63E.3080006@gmail.com> Hi Raunaq, Please always include the -developers list when sending a mail related to GSoC. CC'ing the list here. On 02/04/2016 04:20 AM, Raunaq Abhyankar wrote: > Dear Abhilash, > In that case, could u please suggest some other integration solution > possibilities that I can work on? (Idea 2) I think it would be your job to think about the possible ways to integrate Gitlab with Mailman. Other might be able to help with it, but I myself don't have any pointers as to how to help you. > > And in the shared bookmarks toolkit (idea3), what small tasks are u > looking for? Again, *I* am not the one who will be choosing the tasks to complete the application. I am sorry, but I can not help you find a right sized project for the summer other than the ones listed on the GSoC ideas page. I can certainly tell if you if the project you chose is good enough for a summer. You are free to ask the general developer list for more brainstorming over some ideas/pointers that you have. > > And pls provide the link to setting up the codebase. If you read the GSoC wiki page carefully, I am sure you will find all the links to setup your development environment. You can refer to gnu-mailman.rtfd.org and list.org too! > > On Feb 4, 2016 1:36 AM, "Abhilash Raj" > wrote: > > Hi Raunaq, > > On 02/03/2016 03:51 AM, Raunaq Abhyankar wrote: > > Hey! I would like to work on the following ideas: > > I think three of them are too much for one summer. Try choosing one and > then clearly defining what do you want to do with these ideas. > > > 1.Preset list settings template. > > There is an active discussion going on this topic with another student > on -developers list. Try to look through the archives and see if can > understand the idea behind this and then maybe come up with a good > solution/proposal on how to do this. > > > 2.Gitlab integration > > This probably was rejected as a good idea for a GSoC project in itself. > The reason being you can always add the list's mailing list to the list > of subscribers on any of the code sharing sites which would send in the > updates. Although, I think the current setup to subscribe to events > individually is much better and fine grained as per individual's > choices. > > I am open if you want to do some other kind of "integration" that would > really help people. > > > > 3.Shared bookmarks toolkit > > This looks like a small project but can be added along with small > projects to create a summer of code proposal. You can expand more on > what this toolkit will do and how and look for another one or two easy > tasks. > > > > > > > How do I go about the same. > > > > Regards, > > Raunaq Abhyankar > > > > On Feb 3, 2016 4:13 AM, "Abhilash Raj" > > >> > wrote: > > > > Hi Raunaq, > > > > On 02/02/2016 10:40 AM, Raunaq Abhyankar wrote: > > > Dear Developers, > > > Hi! I am Raunaq Abhyankar from Mumbai, India. I am a Third Year > > Computer > > > Engg student from Mumbai University. > > > > > > I would like to work on the following project ideas: > > > 1. Dashboard for Admins/Owners/Moderators > > > 2. Anonymous lists > > > > I think you visited the old GSoC page. Please read > > http://wiki.list.org/x/17891941 for the latest information on > GSoC 2016 > > and in general about the application process. > > > > > > What is the procedure for applying to the given projects? > > > Are any preGSOC activities (bug fixes / enhancements et al) > > supposed to be > > > performed? > > > > > > Thanks and Regards, > > > RAunaq Abhyankar > > > _______________________________________________ > > > Mailman-Developers mailing list > > > Mailman-Developers at python.org > > > > > > https://mail.python.org/mailman/listinfo/mailman-developers > > > Mailman FAQ: http://wiki.list.org/x/AgA3 > > > Searchable Archives: > > http://www.mail-archive.com/mailman-developers%40python.org/ > > > Unsubscribe: > > > https://mail.python.org/mailman/options/mailman-developers/raj.abhilash1%40gmail.com > > > > > > Security Policy: http://wiki.list.org/x/QIA9 > > > > > > > -- > > thanks, > > Abhilash Raj > > > > -- > thanks, > Abhilash Raj > -- thanks, Abhilash Raj -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 819 bytes Desc: OpenPGP digital signature URL: From fsantiago at garbage-juice.com Sun Feb 7 13:31:36 2016 From: fsantiago at garbage-juice.com (fsantiago at garbage-juice.com) Date: Sun, 07 Feb 2016 13:31:36 -0500 Subject: [Mailman-Developers] MM3 errors when attempting to view messages held for moderation Message-ID: <4794b5f4572b0c7d8827486e8f4a012e@garbage-juice.com> see my error output from django: http://pastebin.com/6LX76ya8 i suspect there's many messages held for moderation as I've been playing around with my testing, mailman-bundler setup for mm3 but now i cannot access the held for moderation list. any clues out there? Thanks. - Fabian S. From adityadivekar03 at gmail.com Mon Feb 8 03:56:56 2016 From: adityadivekar03 at gmail.com (Aditya Divekar) Date: Mon, 8 Feb 2016 14:26:56 +0530 Subject: [Mailman-Developers] GSOC 2016 In-Reply-To: <22196.7170.187271.561289@turnbull.sk.tsukuba.ac.jp> References: <22196.7170.187271.561289@turnbull.sk.tsukuba.ac.jp> Message-ID: Hello Stephen, I had earlier contacted you on the developer mailing list regarding the gsoc project. I have started reading about ARC as you suggested and have thought about a few things. When we use mailman, the mailing list service adds an extra phrase in the subject - [Mailman-Developers] and an extra footer in the mail giving links about the FAQ, archives and the security policy. This alters the original subject and the body of the mail that the sender sent in the first place. According to my knowledge, this is what might cause the mail to be rejected by yahoo, aol, or other p=reject policy domains. Thus implementing ARC would involve including the ARC authentication result header, the signature and the seal in every mail that Mailman receives before it forwards it in the mailing list. This would probably involve using the pydkim, gs.dmarc and pyspf libraries for verification before we generate the ARC authentication results. As a starter I think I should understand how the dkim,dmarc and spf authentication processes are coded. could you tell me how to find existing code where I can read and understand how the authentication methods are implemented? Thanks! Aditya. On Fri, Feb 5, 2016 at 9:20 AM, Stephen J. Turnbull wrote: > Aditya Divekar writes: > > > My name is Aditya Divekar. I am a sophomore from IIT Guwahati. > > Nice to meet you, Aditya! I'm the main DMARC/IETF wrangler for > Mailman, and I would be the main mentor for the ARC project. > > > I want to work on the project "Implement module to process ARC > > headers". I have begun reading about RFC a bit. > > That's a good start. If you have questions, feel free to ask. For > general questions that are mostly about "how do I hook code into > Mailman" or about GSoC, please ask on this list. Not only will you > get better and quicker answers, but the questions and answers will > benefit other developers too. For questions about ARC, you can write > me directly or the list, as you feel comfortable. > > Or once you start to get the feel of things you may try to ask on the > ARC list. However, IEFT lists are probably very different from > anything you've participated in before. High stakes are involved > (there are people with millions of dollars invested in servers there) > and people can be a little terse. Not to mention the vocabulary will > likely be new to you. > > The next thing to do would be to join the ARC mailing list and lurk: > > To subscribe or unsubscribe via the World Wide Web, visit > http://lists.dmarc.org/mailman/listinfo/arc-discuss > or, via email, send a message with subject or body 'help' to > arc-discuss-request at dmarc.org > > Right now it's low-traffic. It's a Mailman list. I subscribed with > the digest, and get maybe one a week. > > > Please help me get started in the right direction and if possible > > share some timeline goals. > > Well, the main timeline goal would be to get done in time for the live > test of implementations being held by the DMARC folks -- on Feb 19. > So I guess that's not going to happen! > > It is my belief that a full implementation (with bugs still in it) can > easily be done in a summer starting from a reasonable amount of > programming skill in Python. If you're better than average it will > probably be integratable into Mailman and ready for participating with > other implementations on the Internet at the end of the summer. > > With that in mind, please read How to SPAM > (http://turnbull.sk.tsukuba.ac.jp/Blog/SPAM.txt) and other general > information about GSoC proposals at > http://wiki.list.org/DEV/Google%20Summer%20of%20Code%202016. > Then write something up. Pretty much anything. It doesn't have to be > complete, it just needs to demonstrate you've thought for a few > minutes about what you think you need to do. > > Yes, this is pretty sketchy. If you're going to work with me, you > need to accept that I'm going expect you to try something plausible > before I tell you what I expect. I'm not a complete curmudgeon about > it, but I have found that it is a good way to work for me. > > Regards, and happy hacking! > > Steve > From adityadivekar03 at gmail.com Mon Feb 8 04:02:19 2016 From: adityadivekar03 at gmail.com (Aditya Divekar) Date: Mon, 8 Feb 2016 14:32:19 +0530 Subject: [Mailman-Developers] GSOC 2016 In-Reply-To: References: <22196.7170.187271.561289@turnbull.sk.tsukuba.ac.jp> Message-ID: And I had previously mailed you directly, but I think I missed you there. So I mailed it again here. Sorry if I caused any inconvenience. On Mon, Feb 8, 2016 at 2:26 PM, Aditya Divekar wrote: > Hello Stephen, > I had earlier contacted you on the developer > mailing list regarding the gsoc project. > I have started reading about ARC as you suggested and have thought > about a few things. > When we use mailman, the mailing list service adds an extra phrase in > the subject - [Mailman-Developers] and an extra footer in the mail > giving links about the FAQ, archives and the security policy. This > alters the original subject and the body of the mail that the sender > sent in the first place. According to my knowledge, this is what might > cause the mail to be rejected by yahoo, aol, or other p=reject policy > domains. > Thus implementing ARC would involve including the ARC authentication > result header, the signature and the seal in every mail that Mailman > receives before it forwards it in the mailing list. This would > probably involve using the pydkim, gs.dmarc and pyspf libraries for > verification before we generate the ARC authentication results. > As a starter I think I should understand how the dkim,dmarc and spf > authentication processes are coded. > could you tell me how to find existing code where I can read and > understand how the authentication methods are implemented? > Thanks! > > > Aditya. > > On Fri, Feb 5, 2016 at 9:20 AM, Stephen J. Turnbull wrote: >> Aditya Divekar writes: >> >> > My name is Aditya Divekar. I am a sophomore from IIT Guwahati. >> >> Nice to meet you, Aditya! I'm the main DMARC/IETF wrangler for >> Mailman, and I would be the main mentor for the ARC project. >> >> > I want to work on the project "Implement module to process ARC >> > headers". I have begun reading about RFC a bit. >> >> That's a good start. If you have questions, feel free to ask. For >> general questions that are mostly about "how do I hook code into >> Mailman" or about GSoC, please ask on this list. Not only will you >> get better and quicker answers, but the questions and answers will >> benefit other developers too. For questions about ARC, you can write >> me directly or the list, as you feel comfortable. >> >> Or once you start to get the feel of things you may try to ask on the >> ARC list. However, IEFT lists are probably very different from >> anything you've participated in before. High stakes are involved >> (there are people with millions of dollars invested in servers there) >> and people can be a little terse. Not to mention the vocabulary will >> likely be new to you. >> >> The next thing to do would be to join the ARC mailing list and lurk: >> >> To subscribe or unsubscribe via the World Wide Web, visit >> http://lists.dmarc.org/mailman/listinfo/arc-discuss >> or, via email, send a message with subject or body 'help' to >> arc-discuss-request at dmarc.org >> >> Right now it's low-traffic. It's a Mailman list. I subscribed with >> the digest, and get maybe one a week. >> >> > Please help me get started in the right direction and if possible >> > share some timeline goals. >> >> Well, the main timeline goal would be to get done in time for the live >> test of implementations being held by the DMARC folks -- on Feb 19. >> So I guess that's not going to happen! >> >> It is my belief that a full implementation (with bugs still in it) can >> easily be done in a summer starting from a reasonable amount of >> programming skill in Python. If you're better than average it will >> probably be integratable into Mailman and ready for participating with >> other implementations on the Internet at the end of the summer. >> >> With that in mind, please read How to SPAM >> (http://turnbull.sk.tsukuba.ac.jp/Blog/SPAM.txt) and other general >> information about GSoC proposals at >> http://wiki.list.org/DEV/Google%20Summer%20of%20Code%202016. >> Then write something up. Pretty much anything. It doesn't have to be >> complete, it just needs to demonstrate you've thought for a few >> minutes about what you think you need to do. >> >> Yes, this is pretty sketchy. If you're going to work with me, you >> need to accept that I'm going expect you to try something plausible >> before I tell you what I expect. I'm not a complete curmudgeon about >> it, but I have found that it is a good way to work for me. >> >> Regards, and happy hacking! >> >> Steve >> From adityadivekar03 at gmail.com Mon Feb 8 11:42:51 2016 From: adityadivekar03 at gmail.com (Aditya Divekar) Date: Mon, 8 Feb 2016 22:12:51 +0530 Subject: [Mailman-Developers] Error in starting mailman Message-ID: I got the following error when I was trying to start the mailman service today - master: error: The master lock could not be acquired. It appears as though there is a stale master lock It first printed a long script regarding the Master subprocess watcher and then threw the above error. It was working completely fine just a day back. Any help would be appreciated. From mark at msapiro.net Mon Feb 8 12:10:20 2016 From: mark at msapiro.net (Mark Sapiro) Date: Mon, 8 Feb 2016 09:10:20 -0800 Subject: [Mailman-Developers] Error in starting mailman In-Reply-To: References: Message-ID: <56B8CBFC.2040805@msapiro.net> On 02/08/2016 08:42 AM, Aditya Divekar wrote: > I got the following error when I was trying to start the mailman service today - > > master: error: The master lock could not be acquired. It appears as > though there is a stale master lock The service was not gracefully stopped the last time it was running and left the master lock behind. The FAQ at describes how locks are implemented in Mailman 2.1, but Mailman 3 is similar. There is a var/locks/ directory in your Mailman hierarchy. In it you will see two files. in MM 2.1, they would be named master-qrunner and master-qrunner.hostname.pid. In MM 3 they will be similar. Assuming there is no process with PID = pid running on hostname, you can safely remove those files. -- Mark Sapiro The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan From stephen at xemacs.org Mon Feb 8 12:20:13 2016 From: stephen at xemacs.org (Stephen J. Turnbull) Date: Tue, 9 Feb 2016 02:20:13 +0900 Subject: [Mailman-Developers] GSOC 2016 In-Reply-To: References: <22196.7170.187271.561289@turnbull.sk.tsukuba.ac.jp> Message-ID: <22200.52813.314187.803348@turnbull.sk.tsukuba.ac.jp> Aditya Divekar writes: > And I had previously mailed you directly, but I think I missed you > there. So I mailed it again here. No, I've just been really busy with work, and a very bad cold, sleeping about 2 hours/day more than usual. I'll get back to you tomorrow evening my time (it's 2am here now, and in the morning I have other promises to keep). You really should be a little more patient. You don't have any deadlines to meet this week (things would be way different if it were 48 hours to final proposal submission or 168 hours to a Google "payday" deadline). Also, in this community, if you wait a bit and I don't answer, somebody else will step up. And don't forget -- you get paid kilodollars if you get accepted. All we get is a T-shirt (and last year mine got lost in the mail ;-). From adityadivekar03 at gmail.com Mon Feb 8 12:24:47 2016 From: adityadivekar03 at gmail.com (Aditya Divekar) Date: Mon, 8 Feb 2016 22:54:47 +0530 Subject: [Mailman-Developers] Error in starting mailman In-Reply-To: <56B8CBFC.2040805@msapiro.net> References: <56B8CBFC.2040805@msapiro.net> Message-ID: @ Abhilash Raj - Thanks for your swift reply. It worked. I terminated it wrongly last time I suppose. @ Mark Sapiro - Yes, there was a stale lock file not associated with any process. Removed it. And I'll go through the FAQ. Thanks! On Mon, Feb 8, 2016 at 10:40 PM, Mark Sapiro wrote: > On 02/08/2016 08:42 AM, Aditya Divekar wrote: >> I got the following error when I was trying to start the mailman service today - >> >> master: error: The master lock could not be acquired. It appears as >> though there is a stale master lock > > > The service was not gracefully stopped the last time it was running and > left the master lock behind. The FAQ at > describes how locks are implemented in > Mailman 2.1, but Mailman 3 is similar. > > There is a var/locks/ directory in your Mailman hierarchy. In it you > will see two files. in MM 2.1, they would be named master-qrunner and > master-qrunner.hostname.pid. In MM 3 they will be similar. Assuming > there is no process with PID = pid running on hostname, you can safely > remove those files. > > -- > Mark Sapiro The highway is for gamblers, > San Francisco Bay Area, California better use your sense - B. Dylan > _______________________________________________ > Mailman-Developers mailing list > Mailman-Developers at python.org > https://mail.python.org/mailman/listinfo/mailman-developers > Mailman FAQ: http://wiki.list.org/x/AgA3 > Searchable Archives: http://www.mail-archive.com/mailman-developers%40python.org/ > Unsubscribe: https://mail.python.org/mailman/options/mailman-developers/adityadivekar03%40gmail.com > > Security Policy: http://wiki.list.org/x/QIA9 From stephen at xemacs.org Tue Feb 9 14:31:22 2016 From: stephen at xemacs.org (Stephen J. Turnbull) Date: Wed, 10 Feb 2016 04:31:22 +0900 Subject: [Mailman-Developers] Refried "SPAM" for GSoC 2016 Message-ID: <22202.16010.455812.379332@turnbull.sk.tsukuba.ac.jp> The classic article on writing GSoC proposals, updated a bit for 2016, refactored for Moin (does Moin do ReST? the biggest annoyance was repeating links in several places) and moved to the Wiki. http://wiki.list.org/DEV/SPAM, reviews welcome. Or just fix what's broke. ;-) Steve From mark at msapiro.net Tue Feb 9 15:40:52 2016 From: mark at msapiro.net (Mark Sapiro) Date: Tue, 9 Feb 2016 12:40:52 -0800 Subject: [Mailman-Developers] Refried "SPAM" for GSoC 2016 In-Reply-To: <22202.16010.455812.379332@turnbull.sk.tsukuba.ac.jp> References: <22202.16010.455812.379332@turnbull.sk.tsukuba.ac.jp> Message-ID: <56BA4ED4.5080605@msapiro.net> On 02/09/2016 11:31 AM, Stephen J. Turnbull wrote: > (does Moin do ReST? the biggest annoyance was > repeating links in several places) Yes it does. You can specify that the markup for an entire page is ReST by putting a #format rst line at the top of the page. You can embed ReST sections with the notation {{{#!rst ReST markup ... }}} See and -- Mark Sapiro The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan From barry at list.org Tue Feb 9 20:02:51 2016 From: barry at list.org (Barry Warsaw) Date: Tue, 9 Feb 2016 20:02:51 -0500 Subject: [Mailman-Developers] =?utf-8?q?Regarding_Issue_=23126_=C2=B7?= In-Reply-To: References: Message-ID: <20160209200251.5203cd98@subdivisions.wooz.org> On Feb 02, 2016, at 10:37 PM, Aswin kumar wrote: >I would like to know if this Issue #126 ? is still open? Is it related to the >merge request Merge Request #51 ? Yes. MR#51 is still labeled WIP (work-in-progress) so I haven't considered merging it yet. It also has some merge conflicts; it probably needs to be rebased. This is Abhilash's work, so I defer to him as to how close it is to being mergeable. Cheers, -Barry From stephen at xemacs.org Tue Feb 9 21:45:16 2016 From: stephen at xemacs.org (Stephen J. Turnbull) Date: Wed, 10 Feb 2016 11:45:16 +0900 Subject: [Mailman-Developers] Refried "SPAM" for GSoC 2016 In-Reply-To: <56BA4ED4.5080605@msapiro.net> References: <22202.16010.455812.379332@turnbull.sk.tsukuba.ac.jp> <56BA4ED4.5080605@msapiro.net> Message-ID: <22202.42044.306770.512950@turnbull.sk.tsukuba.ac.jp> Mark Sapiro writes: > On 02/09/2016 11:31 AM, Stephen J. Turnbull wrote: > > (does Moin do ReST? the biggest annoyance was > > repeating links in several places) > > Yes it does. Thanks for the confirmation! I should have guessed that (and figured out where to look for docs, it's in the editor's hints :-). The more important questions are "would anybody be hindered in editing pages if some pages were in ReST syntax and others in Moin?" and "is there a significant constituency for ReST?" I do think ReST is both more readable and more powerful, especially at the scale of something like DEV/SPAM. But the difference is negligible for me for all other pages where I've looked at source (so far). From barry at list.org Tue Feb 9 21:50:08 2016 From: barry at list.org (Barry Warsaw) Date: Tue, 9 Feb 2016 21:50:08 -0500 Subject: [Mailman-Developers] Refried "SPAM" for GSoC 2016 In-Reply-To: <22202.42044.306770.512950@turnbull.sk.tsukuba.ac.jp> References: <22202.16010.455812.379332@turnbull.sk.tsukuba.ac.jp> <56BA4ED4.5080605@msapiro.net> <22202.42044.306770.512950@turnbull.sk.tsukuba.ac.jp> Message-ID: <20160209215008.3293a82a@subdivisions.wooz.org> On Feb 10, 2016, at 11:45 AM, Stephen J. Turnbull wrote: >The more important questions are "would anybody be hindered in editing >pages if some pages were in ReST syntax and others in Moin?" and "is >there a significant constituency for ReST?" > >I do think ReST is both more readable and more powerful, especially at >the scale of something like DEV/SPAM. But the difference is negligible >for me for all other pages where I've looked at source (so far). I also like ReST format, but I might be biased because all the doctests are written in it. ;) It doesn't bother me that wiki pages are in a mix. Use whatever feels most useful. Cheers, -Barry From adityadivekar03 at gmail.com Tue Feb 9 22:47:58 2016 From: adityadivekar03 at gmail.com (Aditya Divekar) Date: Wed, 10 Feb 2016 09:17:58 +0530 Subject: [Mailman-Developers] GSOC 2016 In-Reply-To: <22200.52813.314187.803348@turnbull.sk.tsukuba.ac.jp> References: <22196.7170.187271.561289@turnbull.sk.tsukuba.ac.jp> <22200.52813.314187.803348@turnbull.sk.tsukuba.ac.jp> Message-ID: On Mon, Feb 8, 2016 at 10:50 PM, Stephen J. Turnbull wrote: > Aditya Divekar writes: > > > And I had previously mailed you directly, but I think I missed you > > there. So I mailed it again here. > > No, I've just been really busy with work, and a very bad cold, > sleeping about 2 hours/day more than usual. I'll get back to you > tomorrow evening my time (it's 2am here now, and in the morning I have > other promises to keep). > > You really should be a little more patient. You don't have any > deadlines to meet this week (things would be way different if it were > 48 hours to final proposal submission or 168 hours to a Google > "payday" deadline). Also, in this community, if you wait a bit and I > don't answer, somebody else will step up. > > And don't forget -- you get paid kilodollars if you get accepted. All > we get is a T-shirt (and last year mine got lost in the mail ;-). > Sorry about the double mails. And sure, I'll wait :) From stephen at xemacs.org Wed Feb 10 04:49:23 2016 From: stephen at xemacs.org (Stephen J. Turnbull) Date: Wed, 10 Feb 2016 18:49:23 +0900 Subject: [Mailman-Developers] GSOC 2016 In-Reply-To: References: <22196.7170.187271.561289@turnbull.sk.tsukuba.ac.jp> Message-ID: <22203.1955.778022.464138@turnbull.sk.tsukuba.ac.jp> Hi, Aditya! I've had a chance to read your mail and review the I-D (Internet Draft) and relevant RFCs a bit, and can now make a few comments. First, your understanding is a little bit shallow. You should get yourself a "canvas" and draw a detailed flowchart of what's going on here. I don't mean to be harsh. There's an important (especially to you! ;-) principle here: you're volunteering for *too* *much* work. Another point is that you're not giving the I-D authors enough credit for caring about you and the end users. Homework: how do these principles apply in the comments below? :-) Aditya Divekar writes: > When we use mailman, the mailing list service adds an extra phrase in > the subject - [Mailman-Developers] and an extra footer in the mail > giving links about the FAQ, archives and the security policy. This > alters the original subject and the body of the mail that the sender > sent in the first place. According to my knowledge, this is what might > cause the mail to be rejected by yahoo, aol, or other p=reject policy > domains. Close enough for our purposes. - If you get interested in doing more mail authentication stuff you'll need the more accurate story. > Thus implementing ARC would involve including the ARC > authentication result header, the signature and the seal in every > mail that Mailman receives before it forwards it in the mailing > list. Yes. > This would probably involve using the pydkim, gs.dmarc and pyspf > libraries for verification before we generate the ARC > authentication results. Here's where you start doing too much work. - You can (for GSoC) assume that the original authentication results should already be available. - For the common MTAs used with Mailman, the Authentication-Results (A-R) header should be available, it should have been added by *your* MTA (otherwise it was added by someone you shouldn't trust!), and you can detect that. (This may not be verifiable -- need to check, and it's another case to deal with later.) The ARC-Authentication-Results is a *copy* of this header (see 5.1.3 in the I-D). (This is the "DRY" principle at work.) - The A-R header already contains SPF and DKIM results, and maybe DMARC (that's cheap to check, though). Thus for verification you don't need to do any work! (First draft -- pragmatically, some Mailman sites may not implement A-R, and as mentioned you may not be able to trust A-R. That's why we're doing this anyway -- it's really an MTA function, but some sites won't implement.) - "For GSoC" is important -- as an extension it's desirable that you handle the case where they're *not* available. But that comes later. - But you do absolutely need to sign things (ARC-Message-Signature, ARC-Seal) with new signatures, and that uses DKIM (modified somewhat, don't know yet if you'll need to modify package code). Having implemented that much, you now know a lot about how the DKIM module (eg, pydkim) works. - Learning DKIM verification is probably easier (the relevant header field should tell the module everything about what it needs to do!) - SPF and DMARC are different modules, but again, you've learned a lot. In general, sequence your plans to learn things that will make later work easier. (This tends to happen naturally as you do the work, but you can often buy 10%-25% by planning it in advance.) > As a starter I think I should understand how the dkim,dmarc and spf > authentication processes are coded. > could you tell me how to find existing code where I can read and > understand how the authentication methods are implemented? On PyPI. It's all open source (at least these modules will surely be -- IETF people are real sticklers for open source). If you need/want VCS checkouts, you can get them later. Here's complete (enough) list. DKIM ---- dkimpy by Scott Kitterman = frequent DMARC/IETF poster, that's a +1 pydkim by Greg Hewgill = dunno authres by Scott Kitterman et al (A-R header up to RFC 7001, current is RFC 7601, may need work?), same author is good sign (he cares, also multiple modules in same author's style are easier to understand, and if you're lucky, they'll already have compatible APIs) BTW, you missed this one. :-) gs.dmarc by Michael JasonSmith = dunno emailprotectionslib by Alex DeFreese = dunno DMARC ----- + same list as DKIM, basically SPF --- pypolicyd-spf by Scott Kitterman pyspf by Stuart Gathman = dunno sikwan.spfcheck by Francois Vanderkelen = dunno hydrate-spf by James Pearson = dunno python-slimta-spf by Ian Good = dunno pysrs by Stuart Gathman = second package, +0.5 + most of the DKIM packages Where I wrote "dunno", I don't know the author offhand. I'd need to Google a bit to decide whether I trust him. In several cases, my guess is that they are not protocol hackers, but rather implementing a messaging system that may or may not have email at its center. Need extra attention to auditing accuracy of protocol implementation unless they're verified to be IETF contributors. In any case, code needs to be reviewed for quality (accuracy of implementation -- high-quality email posts are no guarantee :-) -- and coding technique) and style (if a modified version is needed, you might need to distribute with Mailman). Gotta go, but that should get you started. Steve From harshitbansal2015 at gmail.com Wed Feb 10 13:03:34 2016 From: harshitbansal2015 at gmail.com (Harshit Bansal) Date: Wed, 10 Feb 2016 23:33:34 +0530 Subject: [Mailman-Developers] Discussion On Project Idea "Preset List Settings Templates" . In-Reply-To: <56AD3D56.6020208@gmail.com> References: <569BF632.3010906@gmail.com> <22184.4775.708220.823578@turnbull.sk.tsukuba.ac.jp> <56AD3D56.6020208@gmail.com> Message-ID: Hi Abhilash, In our previous discussion you mentioned that : > Permissions should also consider if the user wants to make his new style > public or keep it private. And should public styles be editable by > anyone or just read-only? I am unable to think of a use case in which it will be useful to have private styles.. Can you please suggest a suitable use case? Thanks, Harshit Bansal. From raj.abhilash1 at gmail.com Wed Feb 10 15:17:52 2016 From: raj.abhilash1 at gmail.com (Abhilash Raj) Date: Wed, 10 Feb 2016 12:17:52 -0800 Subject: [Mailman-Developers] Discussion On Project Idea "Preset List Settings Templates" . In-Reply-To: References: <569BF632.3010906@gmail.com> <22184.4775.708220.823578@turnbull.sk.tsukuba.ac.jp> <56AD3D56.6020208@gmail.com> Message-ID: <56BB9AF0.6010701@gmail.com> On 02/10/2016 10:03 AM, Harshit Bansal wrote: > Hi Abhilash, > In our previous discussion you mentioned that : > >> Permissions should also consider if the user wants to make his new style >> public or keep it private. And should public styles be editable by >> anyone or just read-only? > > I am unable to think of a use case in which it will be useful to have > private styles.. Can you please suggest a suitable use case? Well, i agree there is nothing "private" in list styles. We could just make all styles read-only for everyone. But if someone wants to use the style created by other users, it would be better idea to first make them copy the style so that the behavior or their list doesn't change when the owner changes the style. Barry: If you have some time, I would like to hear some of your thoughts on this thread? I believe you have some ideas of your own on how this is supposed to work. > > Thanks, > Harshit Bansal. > -- thanks, Abhilash Raj -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 819 bytes Desc: OpenPGP digital signature URL: From barry at list.org Fri Feb 12 10:11:36 2016 From: barry at list.org (Barry Warsaw) Date: Fri, 12 Feb 2016 10:11:36 -0500 Subject: [Mailman-Developers] ANNOUNCE: Mailman Core 3.0.2 Message-ID: <20160212101136.7a101020@subdivisions.wooz.org> Hello Mailmanatees! I'm happy to announce Mailman Core 3.0.2 which fixes a number of bugs, including most importantly #190, which can affect membership searches. https://gitlab.com/mailman/mailman/milestones/3 More information on version compatibility is available here: http://wiki.list.org/Mailman3 As usual, you can download it from PyPI: https://pypi.python.org/pypi/mailman/3.0.2 view the documentation: http://mailman.readthedocs.org/en/release-3.0/ Enjoy, -Barry (on behalf of the Mailman development team) -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 819 bytes Desc: OpenPGP digital signature URL: From tom.browder at gmail.com Fri Feb 12 11:39:14 2016 From: tom.browder at gmail.com (Tom Browder) Date: Fri, 12 Feb 2016 10:39:14 -0600 Subject: [Mailman-Developers] Django Message-ID: Does anyone know if one can use one Django instance to serve multiple virtual servers (servers are running under one Apache instance on one reasonably powerful host)? Thanks. Cheers! -Tom From adityadivekar03 at gmail.com Fri Feb 12 15:13:26 2016 From: adityadivekar03 at gmail.com (Aditya Divekar) Date: Sat, 13 Feb 2016 01:43:26 +0530 Subject: [Mailman-Developers] GSOC 2016 In-Reply-To: <22203.1955.778022.464138@turnbull.sk.tsukuba.ac.jp> References: <22196.7170.187271.561289@turnbull.sk.tsukuba.ac.jp> <22203.1955.778022.464138@turnbull.sk.tsukuba.ac.jp> Message-ID: Hi Stephen! Thanks a lot for your previous mail. It was pretty much everything that I required to start. I had a doubt regarding the signing in ARC-Seal that I hope you could clear. According to the draft, here , the ARC-Seal header is constructed from the referenced message signatures given by the "k" tag. I didn't understand this part clearly. Do we need to specify the headers (i.e. the ARC-Message signature and ARC-authentication results) that we want to seal in the "k" tag just how we would use the "h" tag in the DKIM signature? (The usage of the "k" tag isn't clear to me.) Thanks! On Wed, Feb 10, 2016 at 3:19 PM, Stephen J. Turnbull wrote: > Hi, Aditya! > > I've had a chance to read your mail and review the I-D (Internet > Draft) and relevant RFCs a bit, and can now make a few comments. > > First, your understanding is a little bit shallow. You should get > yourself a "canvas" and draw a detailed flowchart of what's going on > here. I don't mean to be harsh. There's an important (especially to > you! ;-) principle here: you're volunteering for *too* *much* work. > Another point is that you're not giving the I-D authors enough credit > for caring about you and the end users. Homework: how do these > principles apply in the comments below? :-) > > Aditya Divekar writes: > > > When we use mailman, the mailing list service adds an extra phrase in > > the subject - [Mailman-Developers] and an extra footer in the mail > > giving links about the FAQ, archives and the security policy. This > > alters the original subject and the body of the mail that the sender > > sent in the first place. According to my knowledge, this is what might > > cause the mail to be rejected by yahoo, aol, or other p=reject policy > > domains. > > Close enough for our purposes. > > - If you get interested in doing more mail authentication stuff > you'll need the more accurate story. > > > Thus implementing ARC would involve including the ARC > > authentication result header, the signature and the seal in every > > mail that Mailman receives before it forwards it in the mailing > > list. > > Yes. > > > This would probably involve using the pydkim, gs.dmarc and pyspf > > libraries for verification before we generate the ARC > > authentication results. > > Here's where you start doing too much work. > > - You can (for GSoC) assume that the original authentication results > should already be available. > > - For the common MTAs used with Mailman, the > Authentication-Results (A-R) header should be available, it > should have been added by *your* MTA (otherwise it was added by > someone you shouldn't trust!), and you can detect that. (This > may not be verifiable -- need to check, and it's another case to > deal with later.) The ARC-Authentication-Results is a *copy* of > this header (see 5.1.3 in the I-D). (This is the "DRY" > principle at work.) > > - The A-R header already contains SPF and DKIM results, and maybe > DMARC (that's cheap to check, though). Thus for verification > you don't need to do any work! (First draft -- pragmatically, > some Mailman sites may not implement A-R, and as mentioned you > may not be able to trust A-R. That's why we're doing this > anyway -- it's really an MTA function, but some sites won't > implement.) > > - "For GSoC" is important -- as an extension it's desirable that > you handle the case where they're *not* available. But that > comes later. > > - But you do absolutely need to sign things (ARC-Message-Signature, > ARC-Seal) with new signatures, and that uses DKIM (modified > somewhat, don't know yet if you'll need to modify package code). > > Having implemented that much, you now know a lot about how the > DKIM module (eg, pydkim) works. > > - Learning DKIM verification is probably easier (the relevant header > field should tell the module everything about what it needs to > do!) > > - SPF and DMARC are different modules, but again, you've learned a > lot. > > In general, sequence your plans to learn things that will make later > work easier. (This tends to happen naturally as you do the work, but > you can often buy 10%-25% by planning it in advance.) > > > As a starter I think I should understand how the dkim,dmarc and spf > > authentication processes are coded. > > could you tell me how to find existing code where I can read and > > understand how the authentication methods are implemented? > > On PyPI. It's all open source (at least these modules will surely be > -- IETF people are real sticklers for open source). If you need/want > VCS checkouts, you can get them later. Here's complete (enough) list. > > DKIM > ---- > dkimpy by Scott Kitterman = frequent DMARC/IETF poster, that's a +1 > pydkim by Greg Hewgill = dunno > authres by Scott Kitterman et al (A-R header up to RFC 7001, current > is RFC 7601, may need work?), same author is good sign (he cares, > also multiple modules in same author's style are easier to > understand, and if you're lucky, they'll already have compatible > APIs) > BTW, you missed this one. :-) > gs.dmarc by Michael JasonSmith = dunno > emailprotectionslib by Alex DeFreese = dunno > > DMARC > ----- > + same list as DKIM, basically > > SPF > --- > pypolicyd-spf by Scott Kitterman > pyspf by Stuart Gathman = dunno > sikwan.spfcheck by Francois Vanderkelen = dunno > hydrate-spf by James Pearson = dunno > python-slimta-spf by Ian Good = dunno > pysrs by Stuart Gathman = second package, +0.5 > + most of the DKIM packages > > Where I wrote "dunno", I don't know the author offhand. I'd need to > Google a bit to decide whether I trust him. In several cases, my > guess is that they are not protocol hackers, but rather implementing a > messaging system that may or may not have email at its center. Need > extra attention to auditing accuracy of protocol implementation unless > they're verified to be IETF contributors. > > In any case, code needs to be reviewed for quality (accuracy of > implementation -- high-quality email posts are no guarantee :-) -- and > coding technique) and style (if a modified version is needed, you > might need to distribute with Mailman). > > Gotta go, but that should get you started. > > Steve > From mark at msapiro.net Sat Feb 13 14:47:18 2016 From: mark at msapiro.net (Mark Sapiro) Date: Sat, 13 Feb 2016 11:47:18 -0800 Subject: [Mailman-Developers] [Mailman-Users] trouble with multipart and moderation In-Reply-To: <20160213161924.5804110.59593.3149@forcedexposure.com> References: <5FF61BBEB7BE3A4295C35F3B8C0E9D7E2BC9F4@ROLLINS.ForcedExposure.local> <56BE7EEC.8080700@msapiro.net> <20160213161924.5804110.59593.3149@forcedexposure.com> Message-ID: <56BF8846.6090801@msapiro.net> On 02/13/2016 08:19 AM, Shea Alterio wrote to mailman-users: > Thanks a bunch for your response, it was very helpful. > >> ?Are you sure your script is generating the >> multipart/alternative mail correctly? What happens if you sen such a >> message from your MUA as opposed to your script? Is the problem with all >> such mail or just mail generated by your script? > > If I send it from a MUA, the text/plain+text/html is delivered > without issue if sent directly to other accounts. It is properly > formatted and looks as it should. If I send it into Mailman I get > just a text/html+text/plain email, but all the html etc. Is shown as > raw code, as if you were to paste html code into a word processor. I'm copying this to mailman-developers at python.org and requesting replies to go there. What you see should obviously not be happening, but a cursory inspection of the doc tests which the code passes seems to show this situation is covered. In the message received from Mailman, do you also see MIME headers and boundaries (i.e. headers such as Content-Type:) preceding the text/plain and text/html content, or do you just see the plain and html text? Also, what is the python3 version that Mailman is using? For further analysis of this can you create a very simple test message in an MUA and send it to a list? The body can be a simple line or two. Than can you post the entire, raw message source of the sent message and of the message as received back from the list. -- Mark Sapiro The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan From stephen at xemacs.org Sun Feb 14 02:31:24 2016 From: stephen at xemacs.org (Stephen J. Turnbull) Date: Sun, 14 Feb 2016 16:31:24 +0900 Subject: [Mailman-Developers] ARC module implementation [was: GSOC 2016] In-Reply-To: References: <22196.7170.187271.561289@turnbull.sk.tsukuba.ac.jp> <22203.1955.778022.464138@turnbull.sk.tsukuba.ac.jp> Message-ID: <22208.11596.382963.821315@turnbull.sk.tsukuba.ac.jp> Aditya Divekar writes: > According to the draft, here > , > the ARC-Seal header is constructed from the referenced message > signatures given by the "k" tag. I didn't understand this part > clearly. The "k" tag has been removed from the most recent version 02 (2016/02/08). Note: although I-Ds expire automatically after 6 months, they can be superseded by new versions at any time. Always check for a more recent version. The tools.ietf.org site is very nice because you can also get diffs to see what you missed (note that many URLs reference less fancy archives, so if you bookmark one of those it's useful to edit it to refer to a full-service site such as tools). > Do we need to specify the headers (i.e. the ARC-Message signature > and ARC-authentication results) that we want to seal in the "k" tag > just how we would use the "h" tag in the DKIM signature? Earlier drafts of the I-D were more than a little confusing here. I think it's much better now, but feel free to ask questions. The fields added by a particular mediator will be linked by the "i" tag, see I-D sec. 5.1.1.1.1, 5.1.2.2.3, and 5.1.3.1. Also, ARC signatures use the "h" tag in the same way as DKIM, except that the requirements for exactly which headers are are different. (This is intended to ensure that ARC headers, which by definition are *not* authorized by the sending domain, are not mistakenly used as DKIM signatures, which by definition *are* authorized by the sending domain. I'm not sure whether this makes sense, but OTOH I don't see how it can hurt.) Exactly which headers are signed in an ARC-Seal are fully specified by the protocol. > (The usage of the "k" tag isn't clear to me.) Mostly the protocol syntax and semantics of ARC are specified in RFC 6376 (see section 5.4 of the I-D). Selectors are defined in section 3.1. In the I-D, only the new ARC-Seal field is described in full. ARC-Message-Signature and ARC-Authentication-Results are described in terms of differences from the normative RFCs (RFC 6376 for signatures and RFC 7601 for authentication results). By the way, top-posting (especially without trimming) should be avoided in technical discussion. See http://turnbull.sk.tsukuba.ac.jp/Teach/ESES/socsys-1.html for the technical advantages and disadvantages of top-posting and interlinear styles. Also, note that in mature projects (and specifically Mailman and Python) most of the senior developers will be old enough to have been trained in and developed a preference for interlinear posting, and especially trimming. Nowadays untrimmed top-posts are hard to avoid so people are building up tolerance for them, but you can make friends by taking care with your posting style. Steve From sumanah at panix.com Sun Feb 14 21:32:58 2016 From: sumanah at panix.com (Sumana Harihareswara) Date: Sun, 14 Feb 2016 21:32:58 -0500 Subject: [Mailman-Developers] Dropping Persona In-Reply-To: <20160129100031.305b6809@subdivisions.wooz.org> References: <56AB5370.3030205@serve-me.info> <20160129100031.305b6809@subdivisions.wooz.org> Message-ID: <56C138DA.60803@panix.com> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On 29/01/16 10:00, Barry Warsaw wrote: > The big feature for 3.1 from the core's perspective is reliable > upgrades from MM2.1. I know that Aurelien has been working hard on > that, and that there's still one MR to deal with (#32), but I am > thinking out loud that if not before, the Pycon 2016 sprints would > be a good time to release 3.1. > > Cheers, -Barry I added that idea to https://us.pycon.org/2016/community/sprints/ . - -- Sumana Harihareswara http://brainwane.net -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.22 (GNU/Linux) iQIcBAEBAgAGBQJWwTjaAAoJECR5sh+1fa+cmUYQALI8fnL9fnVQYXpIwVxDROsK ot/PwAnYzu4pFEU9hUeipz4tfO6X2BtgIBHfnR09tWUrAAy4UqHN33zKPqsSS8eq coqTbL0uYLrU51C7Lht0Bp6ZJufioTCtjSW41x5t0U3sVjrqIr8ICLasgJfee5i0 xS9jKmG/sGs1rnAFz/uUMNqEP0siy5REh8WvLrgEUNSLf/5wtGwz2nCrAIMeTk3W J8Cy4eg9qNa/mBjuqgObtRIErUbqqaCc5Rdq5BSUXsAltR3G+UOsuEgP9tuobGwl 76tCqdFEniy7wA2TOrsqDmei6WiffmIFS9Z6JC2Zn7FUxGjIP9gmjZMoNPXa99tY tt2ACzM/5sdITQhzjhtc4eQLe0pYeCbXkc7Xxam8JOl+jzgzs39iNK156H9OpJI1 pwYGFRlaDJPdSYC+tZzfhtXkLYm42Vz5YZtihyTG4XXdbTXeXG7zx0lASMGybfe/ 1OnSCgaTYPvuOzpPLZqQd7OykfhrozFenY4dytbgj0VZ4CQHtXUMybR7AAC5APjB Yf5Hn0IxgNX7KcLNW4NF5vU1wyrlzVY4UhS5fhu0yk9aaEfSdkeUzwmX53z1HpCa RdqEoQJctOGMds6fLe3XT9DIcX+1xYOJ+QYFeFrayqxEIOROynA1z12ezTIRNeo3 8EBTLftoTlZbmrf1cokA =FIoI -----END PGP SIGNATURE----- From tarunjit.singh.cs at gmail.com Tue Feb 16 17:26:30 2016 From: tarunjit.singh.cs at gmail.com (Tarunjit Singh) Date: Tue, 16 Feb 2016 17:26:30 -0500 Subject: [Mailman-Developers] Yet another newbie to the "Mailman" In-Reply-To: <56A6CA96.50107@gmail.com> References: <56A6CA96.50107@gmail.com> Message-ID: Thanks Abhilash, I have just finished going through the Architecture of mailman and was looking into the GSOC projects for 2016. I saw from the mailing list that some students have already started reading on 2 of the projects, so I think I can start on GitLab/development tool integration. I am going to start the research on the integration from tonight. If you have any pointers to share regrading this project please let me know. Thanks Tarunjit Singh On Mon, Jan 25, 2016 at 8:23 PM, Abhilash Raj wrote: > Hi Tarunjit, > > On 01/24/2016 08:38 PM, Tarunjit Singh wrote: > > Hi Fellow Developers, > > > > I am a graduate student at University of Toronto, Canada who likes to > code > > (mainly in python). > > I just started to get to know the Mailman product by studying its > > architecture available on Aosabook < > http://www.aosabook.org/en/mailman.html> > > Awesome! That particular article really sums up the architecture of > Mailman. If you want to know more, look at Barry's talk/notes from PyCon > 2012. > > > and I am looking forward to contribute to the organization. After reading > > some of the email chains, I am assuming the best place to start is by > > looking into issues available here > > once I have a better > > understanding on the product but any newbie advice/guidance is welcome. > > Yes, you are on the right track. Try looking for issues that are marked > "easy" or "beginner-friendly", though there aren't many. You can look > for bugs in Postorius[1] or Hyperkitty[2] too if you like. They feed > upon the REST API from the core and are Django based front-end and > archiver respectively. > > Also, instead of solving some random bugs, you can also find a > particular project from the ideas page that interests you and try > solving some easy but small "parts" of the project that you can submit > as an independent patch. Even if you don't end up working on that > project, it would help you to know the wiring[*] inside mailman a lot > better. > > > [1]: https://gitlab.com/mailman/postorius/issues > [2]: https://gitlab.com/mailman/hyperkitty/issues > > [*]: There is a lot of wiring and moving parts in mailman. So feel free > about asking about anything that don't understand, even if its very > trivial. > > > > Thanks > > Tarunjit Singh > > _______________________________________________ > > Mailman-Developers mailing list > > Mailman-Developers at python.org > > https://mail.python.org/mailman/listinfo/mailman-developers > > Mailman FAQ: http://wiki.list.org/x/AgA3 > > Searchable Archives: > http://www.mail-archive.com/mailman-developers%40python.org/ > > Unsubscribe: > https://mail.python.org/mailman/options/mailman-developers/raj.abhilash1%40gmail.com > > > > Security Policy: http://wiki.list.org/x/QIA9 > > > > -- > thanks, > Abhilash Raj > > From danil at smirnov.la Wed Feb 17 04:55:39 2016 From: danil at smirnov.la (Danil Smirnov) Date: Wed, 17 Feb 2016 11:55:39 +0200 Subject: [Mailman-Developers] OfflineGenerationError after mailman-bundler install Message-ID: Hi everybody! After installing last mailman-bundler I've got the following in the Hyperkitty logs: ERROR 2016-02-17 03:42:03,804 base 1762 140633939375872 Internal Server Error: /archives/ Traceback (most recent call last): File "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/core/handlers/base.py", line 132, in get_response response = wrapped_callback(request, *callback_args, **callback_kwargs) File "/usr/local/src/venv/lib/python2.7/site-packages/hyperkitty/views/index.py", line 76, in index return render(request, "hyperkitty/index.html", context) File "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/shortcuts.py", line 67, in render template_name, context, request=request, using=using) File "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/template/loader.py", line 99, in render_to_string return template.render(context, request) File "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/template/backends/django.py", line 74, in render return self.template.render(context) File "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/template/base.py", line 210, in render return self._render(context) File "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/template/base.py", line 202, in _render return self.nodelist.render(context) File "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/template/base.py", line 905, in render bit = self.render_node(node, context) File "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/template/base.py", line 919, in render_node return node.render(context) File "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/template/loader_tags.py", line 135, in render return compiled_parent._render(context) File "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/template/base.py", line 202, in _render return self.nodelist.render(context) File "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/template/base.py", line 905, in render bit = self.render_node(node, context) File "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/template/base.py", line 919, in render_node return node.render(context) File "/usr/local/src/venv/lib/python2.7/site-packages/compressor/templatetags/compress.py", line 127, in render return self.render_compressed(context, self.kind, self.mode, forced=forced) File "/usr/local/src/venv/lib/python2.7/site-packages/compressor/templatetags/compress.py", line 86, in render_compressed return self.render_offline(context) File "/usr/local/src/venv/lib/python2.7/site-packages/compressor/templatetags/compress.py", line 71, in render_offline 'You may need to run "python manage.py compress".' % key) OfflineGenerationError: You have offline compression enabled but key "57d3e0fcad3f7e67ac65637e9475af43" is missing from offline manifest. You may need to run "python manage.py compress". Please advice how to fix this error properly. Danil From danil at smirnov.la Wed Feb 17 05:12:06 2016 From: danil at smirnov.la (Danil Smirnov) Date: Wed, 17 Feb 2016 12:12:06 +0200 Subject: [Mailman-Developers] OfflineGenerationError after mailman-bundler install In-Reply-To: References: Message-ID: The error was fixed by bin/mailman-post-update, sorry. 2016-02-17 11:55 GMT+02:00 Danil Smirnov : > Hi everybody! > > After installing last mailman-bundler I've got the following in the > Hyperkitty logs: > > ERROR 2016-02-17 03:42:03,804 base 1762 140633939375872 Internal Server > Error: /archives/ > Traceback (most recent call last): > File > "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/core/handlers/base.py", > line 132, in get_response > response = wrapped_callback(request, *callback_args, **callback_kwargs) > File > "/usr/local/src/venv/lib/python2.7/site-packages/hyperkitty/views/index.py", > line 76, in index > return render(request, "hyperkitty/index.html", context) > File > "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/shortcuts.py", > line 67, in render > template_name, context, request=request, using=using) > File > "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/template/loader.py", > line 99, in render_to_string > return template.render(context, request) > File > "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/template/backends/django.py", > line 74, in render > return self.template.render(context) > File > "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/template/base.py", > line 210, in render > return self._render(context) > File > "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/template/base.py", > line 202, in _render > return self.nodelist.render(context) > File > "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/template/base.py", > line 905, in render > bit = self.render_node(node, context) > File > "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/template/base.py", > line 919, in render_node > return node.render(context) > File > "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/template/loader_tags.py", > line 135, in render > return compiled_parent._render(context) > File > "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/template/base.py", > line 202, in _render > return self.nodelist.render(context) > File > "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/template/base.py", > line 905, in render > bit = self.render_node(node, context) > File > "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/template/base.py", > line 919, in render_node > return node.render(context) > File > "/usr/local/src/venv/lib/python2.7/site-packages/compressor/templatetags/compress.py", > line 127, in render > return self.render_compressed(context, self.kind, self.mode, > forced=forced) > File > "/usr/local/src/venv/lib/python2.7/site-packages/compressor/templatetags/compress.py", > line 86, in render_compressed > return self.render_offline(context) > File > "/usr/local/src/venv/lib/python2.7/site-packages/compressor/templatetags/compress.py", > line 71, in render_offline > 'You may need to run "python manage.py compress".' % key) > OfflineGenerationError: You have offline compression enabled but key > "57d3e0fcad3f7e67ac65637e9475af43" is missing from offline manifest. You > may need to run "python manage.py compress". > > Please advice how to fix this error properly. > > Danil > From danil at smirnov.la Wed Feb 17 05:22:37 2016 From: danil at smirnov.la (Danil Smirnov) Date: Wed, 17 Feb 2016 12:22:37 +0200 Subject: [Mailman-Developers] OfflineGenerationError after mailman-bundler install In-Reply-To: References: Message-ID: Sorry again, but the error returns after several page refresh - weird, but it looks like not every opening of the page cause the error! 2016-02-17 12:12 GMT+02:00 Danil Smirnov : > The error was fixed by bin/mailman-post-update, sorry. > > 2016-02-17 11:55 GMT+02:00 Danil Smirnov : > >> Hi everybody! >> >> After installing last mailman-bundler I've got the following in the >> Hyperkitty logs: >> >> ERROR 2016-02-17 03:42:03,804 base 1762 140633939375872 Internal Server >> Error: /archives/ >> Traceback (most recent call last): >> File >> "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/core/handlers/base.py", >> line 132, in get_response >> response = wrapped_callback(request, *callback_args, >> **callback_kwargs) >> File >> "/usr/local/src/venv/lib/python2.7/site-packages/hyperkitty/views/index.py", >> line 76, in index >> return render(request, "hyperkitty/index.html", context) >> File >> "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/shortcuts.py", >> line 67, in render >> template_name, context, request=request, using=using) >> File >> "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/template/loader.py", >> line 99, in render_to_string >> return template.render(context, request) >> File >> "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/template/backends/django.py", >> line 74, in render >> return self.template.render(context) >> File >> "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/template/base.py", >> line 210, in render >> return self._render(context) >> File >> "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/template/base.py", >> line 202, in _render >> return self.nodelist.render(context) >> File >> "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/template/base.py", >> line 905, in render >> bit = self.render_node(node, context) >> File >> "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/template/base.py", >> line 919, in render_node >> return node.render(context) >> File >> "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/template/loader_tags.py", >> line 135, in render >> return compiled_parent._render(context) >> File >> "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/template/base.py", >> line 202, in _render >> return self.nodelist.render(context) >> File >> "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/template/base.py", >> line 905, in render >> bit = self.render_node(node, context) >> File >> "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/template/base.py", >> line 919, in render_node >> return node.render(context) >> File >> "/usr/local/src/venv/lib/python2.7/site-packages/compressor/templatetags/compress.py", >> line 127, in render >> return self.render_compressed(context, self.kind, self.mode, >> forced=forced) >> File >> "/usr/local/src/venv/lib/python2.7/site-packages/compressor/templatetags/compress.py", >> line 86, in render_compressed >> return self.render_offline(context) >> File >> "/usr/local/src/venv/lib/python2.7/site-packages/compressor/templatetags/compress.py", >> line 71, in render_offline >> 'You may need to run "python manage.py compress".' % key) >> OfflineGenerationError: You have offline compression enabled but key >> "57d3e0fcad3f7e67ac65637e9475af43" is missing from offline manifest. You >> may need to run "python manage.py compress". >> >> Please advice how to fix this error properly. >> >> Danil >> > > From adityadivekar03 at gmail.com Wed Feb 17 06:29:57 2016 From: adityadivekar03 at gmail.com (Aditya Divekar) Date: Wed, 17 Feb 2016 16:59:57 +0530 Subject: [Mailman-Developers] ARC module implementation [was: GSOC 2016] In-Reply-To: <22208.11596.382963.821315@turnbull.sk.tsukuba.ac.jp> References: <22196.7170.187271.561289@turnbull.sk.tsukuba.ac.jp> <22203.1955.778022.464138@turnbull.sk.tsukuba.ac.jp> <22208.11596.382963.821315@turnbull.sk.tsukuba.ac.jp> Message-ID: Hi Steve, I have read through the dkimpy library functions and it seems that the code needs to be modified to generate the ARC headers, and I have started making some changes. I'm making these changes in view of generating the AMS for now using the sign(...) method of the library that is by default used for generating the dkim signature. Since the AAR is simply a copy, it can be picked up using a separate method and appended at the end of the AMS later. I have hosted the code at github here. , and will keep posting the changes there as I proceed. Any input from your side would be great :) Thanks! Aditya From danil at smirnov.la Wed Feb 17 06:33:04 2016 From: danil at smirnov.la (Danil Smirnov) Date: Wed, 17 Feb 2016 13:33:04 +0200 Subject: [Mailman-Developers] OfflineGenerationError after mailman-bundler install In-Reply-To: References: Message-ID: The error was gone after several reconfigurations/reboots. Still have no idea what it was... 2016-02-17 12:22 GMT+02:00 Danil Smirnov : > Sorry again, but the error returns after several page refresh - weird, but > it looks like not every opening of the page cause the error! > > 2016-02-17 12:12 GMT+02:00 Danil Smirnov : > >> The error was fixed by bin/mailman-post-update, sorry. >> >> 2016-02-17 11:55 GMT+02:00 Danil Smirnov : >> >>> Hi everybody! >>> >>> After installing last mailman-bundler I've got the following in the >>> Hyperkitty logs: >>> >>> ERROR 2016-02-17 03:42:03,804 base 1762 140633939375872 Internal Server >>> Error: /archives/ >>> Traceback (most recent call last): >>> File >>> "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/core/handlers/base.py", >>> line 132, in get_response >>> response = wrapped_callback(request, *callback_args, >>> **callback_kwargs) >>> File >>> "/usr/local/src/venv/lib/python2.7/site-packages/hyperkitty/views/index.py", >>> line 76, in index >>> return render(request, "hyperkitty/index.html", context) >>> File >>> "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/shortcuts.py", >>> line 67, in render >>> template_name, context, request=request, using=using) >>> File >>> "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/template/loader.py", >>> line 99, in render_to_string >>> return template.render(context, request) >>> File >>> "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/template/backends/django.py", >>> line 74, in render >>> return self.template.render(context) >>> File >>> "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/template/base.py", >>> line 210, in render >>> return self._render(context) >>> File >>> "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/template/base.py", >>> line 202, in _render >>> return self.nodelist.render(context) >>> File >>> "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/template/base.py", >>> line 905, in render >>> bit = self.render_node(node, context) >>> File >>> "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/template/base.py", >>> line 919, in render_node >>> return node.render(context) >>> File >>> "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/template/loader_tags.py", >>> line 135, in render >>> return compiled_parent._render(context) >>> File >>> "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/template/base.py", >>> line 202, in _render >>> return self.nodelist.render(context) >>> File >>> "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/template/base.py", >>> line 905, in render >>> bit = self.render_node(node, context) >>> File >>> "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/template/base.py", >>> line 919, in render_node >>> return node.render(context) >>> File >>> "/usr/local/src/venv/lib/python2.7/site-packages/compressor/templatetags/compress.py", >>> line 127, in render >>> return self.render_compressed(context, self.kind, self.mode, >>> forced=forced) >>> File >>> "/usr/local/src/venv/lib/python2.7/site-packages/compressor/templatetags/compress.py", >>> line 86, in render_compressed >>> return self.render_offline(context) >>> File >>> "/usr/local/src/venv/lib/python2.7/site-packages/compressor/templatetags/compress.py", >>> line 71, in render_offline >>> 'You may need to run "python manage.py compress".' % key) >>> OfflineGenerationError: You have offline compression enabled but key >>> "57d3e0fcad3f7e67ac65637e9475af43" is missing from offline manifest. You >>> may need to run "python manage.py compress". >>> >>> Please advice how to fix this error properly. >>> >>> Danil >>> >> >> > From danil at smirnov.la Wed Feb 17 06:48:55 2016 From: danil at smirnov.la (Danil Smirnov) Date: Wed, 17 Feb 2016 13:48:55 +0200 Subject: [Mailman-Developers] can't login with Google/Yahoo (last mailman-bundler) Message-ID: Hi devs! I'm still need your advices... Now I have the following errors when trying to authenticate with Google or Yahoo: --- ERROR 2016-02-17 05:40:44,363 base 1690 139772999759616 Internal Server Error: /login/google/ Traceback (most recent call last): File "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/core/handlers/base.py", line 132, in get_response response = wrapped_callback(request, *callback_args, **callback_kwargs) File "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/views/decorators/cache.py", line 57, in _wrapped_view_func response = view_func(request, *args, **kwargs) File "/usr/local/src/venv/lib/python2.7/site-packages/social/apps/django_app/utils.py", line 51, in wrapper return func(request, backend, *args, **kwargs) TypeError: auth() got an unexpected keyword argument 'SSL' --- Please advice how to manage this... Danil From danil at smirnov.la Wed Feb 17 07:36:40 2016 From: danil at smirnov.la (Danil Smirnov) Date: Wed, 17 Feb 2016 14:36:40 +0200 Subject: [Mailman-Developers] can't login with Google/Yahoo (last mailman-bundler) In-Reply-To: References: Message-ID: I suspect I need to add my httpd configuration: --- SuexecUserGroup "#500" "#500" ServerName lists.domain.tld ServerAlias www.lists.domain.tld ServerAlias webmail.lists.domain.tld ServerAlias admin.lists.domain.tld DocumentRoot /home/mailman3/domains/lists.domain.tld/public_html ErrorLog /var/log/virtualmin/lists.domain.tld_error_log CustomLog /var/log/virtualmin/lists.domain.tld_access_log combined ScriptAlias /cgi-bin/ /home/mailman3/domains/lists.domain.tld/cgi-bin/ ScriptAlias /awstats/ /home/mailman3/domains/lists.domain.tld/cgi-bin/ DirectoryIndex index.html index.htm index.php index.php4 index.php5 Options -Indexes +IncludesNOEXEC +SymLinksIfOwnerMatch +ExecCGI allow from all AllowOverride All Options=ExecCGI,Includes,IncludesNOEXEC,Indexes,MultiViews,SymLinksIfOwnerMatch Require all granted AddType application/x-httpd-php .php AddHandler fcgid-script .php AddHandler fcgid-script .php5 FCGIWrapper /home/mailman3/domains/lists.domain.tld/fcgi-bin/php5.fcgi .php FCGIWrapper /home/mailman3/domains/lists.domain.tld/fcgi-bin/php5.fcgi .php5 allow from all AllowOverride All Options=ExecCGI,Includes,IncludesNOEXEC,Indexes,MultiViews,SymLinksIfOwnerMatch Require all granted RewriteEngine on RewriteCond %{HTTP_HOST} =webmail.lists.domain.tld RewriteRule ^(.*) https://lists.domain.tld:20000/ [R] RewriteCond %{HTTP_HOST} =admin.lists.domain.tld RewriteRule ^(.*) https://lists.domain.tld:10000/ [R] RemoveHandler .php RemoveHandler .php5 php_admin_value engine Off IPCCommTimeout 31 FcgidMaxRequestLen 1073741824 AuthName "lists.domain.tld statistics" AuthType Basic AuthUserFile /home/mailman3/domains/lists.domain.tld/.awstats-htpasswd require valid-user # Here, use the value of the STATIC_ROOT variable in your Django configuration file (production.py) Alias /robots.txt /var/spool/mailman-web/static/hyperkitty/robots.txt Alias /favicon.ico /var/spool/mailman-web/static/hyperkitty/favicon.ico Alias /static /var/spool/mailman-web/static Order deny,allow Allow from all Require all granted #ErrorLog /var/log/httpd/mailman-web_error.log #CustomLog /var/log/httpd/mailman-web_access.log combined WSGIScriptAlias / /usr/local/src/mailman-bundler/bin/mailman-web.wsgi WSGIDaemonProcess mailman-web display-name=mailman-web maximum-requests=1000 processes=4 threads=4 python-path=/usr/local/src/venv/lib/python2.7/site-packages Order deny,allow Allow from all Require all granted WSGIProcessGroup mailman-web --- 2016-02-17 13:48 GMT+02:00 Danil Smirnov : > Hi devs! > > I'm still need your advices... > Now I have the following errors when trying to authenticate with Google or > Yahoo: > > --- > ERROR 2016-02-17 05:40:44,363 base 1690 139772999759616 Internal Server > Error: /login/google/ > Traceback (most recent call last): > File > "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/core/handlers/base.py", > line 132, in get_response > response = wrapped_callback(request, *callback_args, **callback_kwargs) > File > "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/views/decorators/cache.py", > line 57, in _wrapped_view_func > response = view_func(request, *args, **kwargs) > File > "/usr/local/src/venv/lib/python2.7/site-packages/social/apps/django_app/utils.py", > line 51, in wrapper > return func(request, backend, *args, **kwargs) > TypeError: auth() got an unexpected keyword argument 'SSL' > --- > > Please advice how to manage this... > > Danil > From stephen at xemacs.org Wed Feb 17 08:35:36 2016 From: stephen at xemacs.org (Stephen J. Turnbull) Date: Wed, 17 Feb 2016 22:35:36 +0900 Subject: [Mailman-Developers] ARC module implementation [was: GSOC 2016] In-Reply-To: References: <22196.7170.187271.561289@turnbull.sk.tsukuba.ac.jp> <22203.1955.778022.464138@turnbull.sk.tsukuba.ac.jp> <22208.11596.382963.821315@turnbull.sk.tsukuba.ac.jp> Message-ID: <22212.30504.386549.259204@turnbull.sk.tsukuba.ac.jp> Aditya Divekar writes: > I have read through the dkimpy library functions and it seems that the code > needs to be modified to generate the ARC headers, and I have started making > some changes. I don't think it's a great idea to change the dkimpy library if you can avoid it. The design I had in mind would add a file for performing ARC operations such as generating fields, and for dkimpy to simply provide the functions for generating the signatures. This probably requires some refactoring of dkimpy. It might also require generalizing the canonicalization functions to handle the ARC-specific field sets if there are any hard-coded headers in the DKIM code. You might also look at the alternatives to see if they are better factored for this purpose. > I have hosted the code at github here. > , I haven't done cross-host work before, but you will surely need a gitlab account eventually to file the merge request. I will try to take a look at the code over the weekend. I did want to make the comments on the factoring of the code ASAP, before you do too much work. From simon.hanna at serve-me.info Wed Feb 17 13:02:16 2016 From: simon.hanna at serve-me.info (Simon Hanna) Date: Wed, 17 Feb 2016 19:02:16 +0100 Subject: [Mailman-Developers] Dropping Persona In-Reply-To: <56AC9C6F.4080609@serve-me.info> References: <56AB5370.3030205@serve-me.info> <20160129100031.305b6809@subdivisions.wooz.org> <62a8d6f2d4e70d5401f7ef404f6e782f@florianfuchs.com> <56AC9C6F.4080609@serve-me.info> Message-ID: <56C4B5A8.8080902@serve-me.info> > I just found another solution: django-allauth > http://www.intenct.nl/projects/django-allauth/ > http://django-allauth.readthedocs.org/en/latest/overview.html > https://github.com/pennersr/django-allauth > > It's a relatively large project. It has 2000+ stars and about 800 forks on github. The other two I > introduced can't get these values when adding them together. > > About their functionalit quoting from their docs: > * Signup of both local and social accounts > * Connecting more than one social account to a local account > * Disconnecting a social account ? requires setting a password if only the local account remains > * Optional instant-signup for social accounts ? no questions asked > * E-mail address management (multiple e-mail addresses, setting a primary) > * Password forgotten flow > * E-mail address verification flow > > They are basically supporting every OAuth provider out there > > They have more signals than the other two projects I introduced. Some of them are: > * when a user signs up > * when a user adds an email > * when the user removes an email > > I didn't look at the code yet but I think they are only using emails and not usernames. I just opened a merge request over at postorius https://gitlab.com/mailman/postorius/merge_requests/91 It includes basic functionality for django-allauth. All the included code should work, the merge request contains info about what still needs to be done. What do you think? From danil at smirnov.la Thu Feb 18 04:06:11 2016 From: danil at smirnov.la (Danil Smirnov) Date: Thu, 18 Feb 2016 11:06:11 +0200 Subject: [Mailman-Developers] can't login with Google/Yahoo (last mailman-bundler) In-Reply-To: References: Message-ID: I'm sorry if it's not right place to ask for the support but there is no information regarding the issue in Google as well as mailman-dev/mailman-user lists. So I'm stale in the issue and have no idea what to do. If you can give me just a direction to dig, it would be very helpful... 2016-02-17 14:36 GMT+02:00 Danil Smirnov : > I suspect I need to add my httpd configuration: > > --- > > > SuexecUserGroup "#500" "#500" > ServerName lists.domain.tld > ServerAlias www.lists.domain.tld > ServerAlias webmail.lists.domain.tld > ServerAlias admin.lists.domain.tld > DocumentRoot /home/mailman3/domains/lists.domain.tld/public_html > ErrorLog /var/log/virtualmin/lists.domain.tld_error_log > CustomLog /var/log/virtualmin/lists.domain.tld_access_log combined > ScriptAlias /cgi-bin/ /home/mailman3/domains/lists.domain.tld/cgi-bin/ > ScriptAlias /awstats/ /home/mailman3/domains/lists.domain.tld/cgi-bin/ > DirectoryIndex index.html index.htm index.php index.php4 index.php5 > > Options -Indexes +IncludesNOEXEC +SymLinksIfOwnerMatch +ExecCGI > allow from all > AllowOverride All > Options=ExecCGI,Includes,IncludesNOEXEC,Indexes,MultiViews,SymLinksIfOwnerMatch > Require all granted > AddType application/x-httpd-php .php > AddHandler fcgid-script .php > AddHandler fcgid-script .php5 > FCGIWrapper /home/mailman3/domains/lists.domain.tld/fcgi-bin/php5.fcgi .php > FCGIWrapper /home/mailman3/domains/lists.domain.tld/fcgi-bin/php5.fcgi > .php5 > > > allow from all > AllowOverride All > Options=ExecCGI,Includes,IncludesNOEXEC,Indexes,MultiViews,SymLinksIfOwnerMatch > Require all granted > > RewriteEngine on > RewriteCond %{HTTP_HOST} =webmail.lists.domain.tld > RewriteRule ^(.*) https://lists.domain.tld:20000/ [R] > RewriteCond %{HTTP_HOST} =admin.lists.domain.tld > RewriteRule ^(.*) https://lists.domain.tld:10000/ [R] > RemoveHandler .php > RemoveHandler .php5 > php_admin_value engine Off > IPCCommTimeout 31 > FcgidMaxRequestLen 1073741824 > > AuthName "lists.domain.tld statistics" > AuthType Basic > AuthUserFile /home/mailman3/domains/lists.domain.tld/.awstats-htpasswd > require valid-user > > > # Here, use the value of the STATIC_ROOT variable in your Django > configuration file (production.py) > Alias /robots.txt /var/spool/mailman-web/static/hyperkitty/robots.txt > Alias /favicon.ico /var/spool/mailman-web/static/hyperkitty/favicon.ico > Alias /static /var/spool/mailman-web/static > > Order deny,allow > Allow from all > Require all granted > > > #ErrorLog /var/log/httpd/mailman-web_error.log > #CustomLog /var/log/httpd/mailman-web_access.log combined > > WSGIScriptAlias / /usr/local/src/mailman-bundler/bin/mailman-web.wsgi > WSGIDaemonProcess mailman-web display-name=mailman-web > maximum-requests=1000 processes=4 threads=4 > python-path=/usr/local/src/venv/lib/python2.7/site-packages > > > > Order deny,allow > Allow from all > Require all granted > > WSGIProcessGroup mailman-web > > > > --- > > 2016-02-17 13:48 GMT+02:00 Danil Smirnov : > >> Hi devs! >> >> I'm still need your advices... >> Now I have the following errors when trying to authenticate with Google >> or Yahoo: >> >> --- >> ERROR 2016-02-17 05:40:44,363 base 1690 139772999759616 Internal Server >> Error: /login/google/ >> Traceback (most recent call last): >> File >> "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/core/handlers/base.py", >> line 132, in get_response >> response = wrapped_callback(request, *callback_args, >> **callback_kwargs) >> File >> "/usr/local/src/mailman-bundler/eggs/Django-1.8.9-py2.7.egg/django/views/decorators/cache.py", >> line 57, in _wrapped_view_func >> response = view_func(request, *args, **kwargs) >> File >> "/usr/local/src/venv/lib/python2.7/site-packages/social/apps/django_app/utils.py", >> line 51, in wrapper >> return func(request, backend, *args, **kwargs) >> TypeError: auth() got an unexpected keyword argument 'SSL' >> --- >> >> Please advice how to manage this... >> >> Danil >> > > From becue at crans.org Fri Feb 19 05:26:15 2016 From: becue at crans.org (Pierre-Elliott =?iso-8859-1?Q?B=E9cue?=) Date: Fri, 19 Feb 2016 11:26:15 +0100 Subject: [Mailman-Developers] Let's try to package mailman3 in Debian! In-Reply-To: <20151214160157.GF25749@crans.org> References: <20150910224944.GM8564@crans.org> <20151123015627.GB10971@crans.org> <20151214160157.GF25749@crans.org> Message-ID: <20160219102615.GM25992@crans.org> Le lundi 14 d?cembre 2015 ? 17:01:57+0100, Pierre-Elliott B?cue a ?crit?: > Le lundi 23 novembre 2015 ? 02:56:27+0100, Pierre-Elliott B?cue a ?crit?: > > Le vendredi 11 septembre 2015 ? 00:49:44+0200, Pierre-Elliott B?cue a ?crit?: > > > [packaging mailman3] > > > > Hey, > > > > Here is an update. > > > > For now on, I focused on mailman3-core package in order to get good > > practices working. > > > > One can find my work here : https://github.com/P-EB/mailman3-core > > > > I'm working on having working systemd/sysv services and after that it'll be > > a good idea to try installing the package and see how it goes. > > > > I also have to design a good config file for debian, (see > > debian/contrib/mailman.cfg in master branch). Any suggestion is welcome! > > > > Cheers > > Small bump here, I'd appreciate if somebody finds the time to tell me two > things: > > * Is my config file enough for a start?? > * Is my systemd service good to have mailman started properly?? > > I'd rather be sure it's okay before writing a sysv service. > > You can find contrib files in debian/contrib. Hello! Before requesting for sponsorship, and packaging officially the other components of mailman3, I'd like some "testers" for the core package I built, in order to be sure that it works, and that I will not introduce some stupid caveats on the packaging of the other components. .deb can be found here: http://peb.pimeys.fr/mailman/mailman3-core/ git repo can be found there: https://gitlab.pimeys.fr/PEB/mailman3-core and there: https://github.com/P-EB/mailman3-core Any volunteer welcome! Please, I need your help, I cannot review my work alone! :) -- PEB From adityadivekar03 at gmail.com Fri Feb 19 14:57:29 2016 From: adityadivekar03 at gmail.com (Aditya Divekar) Date: Sat, 20 Feb 2016 01:27:29 +0530 Subject: [Mailman-Developers] ARC module implementation [was: GSOC 2016] In-Reply-To: <22212.30504.386549.259204@turnbull.sk.tsukuba.ac.jp> References: <22196.7170.187271.561289@turnbull.sk.tsukuba.ac.jp> <22203.1955.778022.464138@turnbull.sk.tsukuba.ac.jp> <22208.11596.382963.821315@turnbull.sk.tsukuba.ac.jp> <22212.30504.386549.259204@turnbull.sk.tsukuba.ac.jp> Message-ID: Hi Stephen, Stephen J. Turnbull wrote: > > I don't think it's a great idea to change the dkimpy library if you > can avoid it. The design I had in mind would add a file for > performing ARC operations such as generating fields, and for dkimpy to > simply provide the functions for generating the signatures. > > I have taken your suggestion, and started working on a separate branch to generate the ams from the original dkimpy package. I've created a directory where I can add all the files to generate (or edit) the signature from the dkim library. This probably requires some refactoring of dkimpy. It might also > require generalizing the canonicalization functions to handle the > ARC-specific field sets if there are any hard-coded headers in the > DKIM code. You might also look at the alternatives to see if they are > better factored for this purpose. Yes, some minor changes will be required I believe, like changing the default frozen headers to be signed or the tags to be added in the sign. Still, some of them can be circumvented by editing the generated signature in a separate file. And yes, I'll go through the other packages you suggested before to see if I am able to read them better than dkimpy. > > I haven't done cross-host work before, but you will surely need a > gitlab account eventually to file the merge request. > > I will try to take a look at the code over the weekend. I did want to > make the comments on the factoring of the code ASAP, before you do too > much work. > > I have actually just started working on the repo, and hence there are only a couple of files that I have committed now. And yes, I've just pushed the files to github as of now, so that I am able to get your insight in the proceedings. I'll start working in gitlab soon once I'm able to come up with a sketch of things. Thanks! Aditya From stephen at xemacs.org Sat Feb 20 03:13:58 2016 From: stephen at xemacs.org (Stephen J. Turnbull) Date: Sat, 20 Feb 2016 17:13:58 +0900 Subject: [Mailman-Developers] ARC module implementation [was: GSOC 2016] In-Reply-To: References: <22196.7170.187271.561289@turnbull.sk.tsukuba.ac.jp> <22203.1955.778022.464138@turnbull.sk.tsukuba.ac.jp> <22208.11596.382963.821315@turnbull.sk.tsukuba.ac.jp> <22212.30504.386549.259204@turnbull.sk.tsukuba.ac.jp> Message-ID: <22216.8262.735974.257856@turnbull.sk.tsukuba.ac.jp> Aditya Divekar writes: > I have taken your suggestion, and started working on a separate > branch to generate the ams from the original dkimpy package. Student applications will be opening shortly. You should finish up anything that is in your head but not in a file soon, and start preparing your application. We will want to see a reviewable patch on the tracker as part of that application (it can be something trivial like a doc patch). Exactly what is required isn't set yet (most of us are also busy with PSF org admin details as well as Mailman stuff), but it won't be related to this project because this project is "too big" to seriously consider reviewing soon. And you don't have to worry about whether we get around to actually merging it; it just has to be in good enough shape to review. The scheduling part is important, and you probably haven't done anything like it before (scheduling a project you design is very different from picking classes from a course catalog!) Steve From berni at birkenwald.de Sat Feb 20 14:52:49 2016 From: berni at birkenwald.de (Bernhard Schmidt) Date: Sat, 20 Feb 2016 19:52:49 +0000 (UTC) Subject: [Mailman-Developers] Let's try to package mailman3 in Debian! References: <20150910224944.GM8564@crans.org> <20151123015627.GB10971@crans.org> <20151214160157.GF25749@crans.org> <20160219102615.GM25992@crans.org> Message-ID: Pierre-Elliott B?cue wrote: Hi Pierre, > Before requesting for sponsorship, and packaging officially the other > components of mailman3, I'd like some "testers" for the core package I > built, in order to be sure that it works, and that I will not introduce some > stupid caveats on the packaging of the other components. > > .deb can be found here: http://peb.pimeys.fr/mailman/mailman3-core/ > git repo can be found there: https://gitlab.pimeys.fr/PEB/mailman3-core > and there: https://github.com/P-EB/mailman3-core > > Any volunteer welcome! Please, I need your help, I cannot review my work > alone! :) I just tried to have a look in a stretch docker image. - There are three .deb files on your webserver mailman3-core_3.0.0-1_all.deb mailman3-core_3.0.0-3_all.deb mailman3-core_3.0.0-3_amd64.deb It is not immediately obvious which one to test, since -1 has actually a newer timestamp. - Mailman Core 3.0.1 and 3.0.2 have been released in the meantime - it does not work on stretch/sid because it is not compatible with Python 3.5, see https://gitlab.com/mailman/mailman/issues/181 - it does not install on Jessie (even with jessie-backports because of missing dependencies) (just a note because of not working on stretch either) - The systemd unit won't work because the parameter for the configuration file is '-C', not '-c' - installing python3.4 and changing the shebang in /usr/bin/mailman leads to the following error root at 4ca9477a166c:~# /usr/bin/mailman -C /etc/mailman3/mailman.cfg start Starting Mailman's master runner /usr/bin/python3.4: can't open file '/var/lib/mailman/bin/master': [Errno 2] No such file or directory The files are installed in /var/lib/mailman3/bin, but bin_dir in /etc/mailman3/mailman.cfg points to /var/lib/mailman/bin ... both directories are wrong from my POV, it should probably be /usr/lib/mailman3 or something like that - Fixing this up leads to root at 4ca9477a166c:~# /usr/bin/mailman -C /etc/mailman3/mailman.cfg start Starting Mailman's master runner Traceback (most recent call last): File "/var/lib/mailman3/bin/master", line 9, in load_entry_point('mailman==3.0.0', 'console_scripts', 'master')() File "/usr/lib/python3/dist-packages/mailman/bin/master.py", line 536, in main with open(config.PID_FILE, 'w') as fp: FileNotFoundError: [Errno 2] No such file or directory: '/run/mailman3/master.pid' because the directory does not exist. Since you are shipping a systemd unit only you should probably ship a .tmpfile as well. I now have a running daemon. I haven't done anything with Mailman3 so far, so I need to read up on that first. Bernhard From becue at crans.org Sun Feb 21 22:33:04 2016 From: becue at crans.org (Pierre-Elliott =?iso-8859-1?Q?B=E9cue?=) Date: Mon, 22 Feb 2016 04:33:04 +0100 Subject: [Mailman-Developers] Let's try to package mailman3 in Debian! In-Reply-To: References: <20150910224944.GM8564@crans.org> <20151123015627.GB10971@crans.org> <20151214160157.GF25749@crans.org> <20160219102615.GM25992@crans.org> Message-ID: <20160222033304.GN25992@crans.org> Le samedi 20 f?vrier 2016 ? 19:52:49+0000, Bernhard Schmidt a ?crit?: > Pierre-Elliott B?cue wrote: > > Hi Pierre, > > > Before requesting for sponsorship, and packaging officially the other > > components of mailman3, I'd like some "testers" for the core package I > > built, in order to be sure that it works, and that I will not introduce some > > stupid caveats on the packaging of the other components. > > > > .deb can be found here: http://peb.pimeys.fr/mailman/mailman3-core/ > > git repo can be found there: https://gitlab.pimeys.fr/PEB/mailman3-core > > and there: https://github.com/P-EB/mailman3-core > > > > Any volunteer welcome! Please, I need your help, I cannot review my work > > alone! :) > > I just tried to have a look in a stretch docker image. > > - There are three .deb files on your webserver > > mailman3-core_3.0.0-1_all.deb > mailman3-core_3.0.0-3_all.deb > mailman3-core_3.0.0-3_amd64.deb > > It is not immediately obvious which one to test, since -1 has actually > a newer timestamp. The good version is actually the 3.0.0-1, sorry for the remaining stuff, I removed it. > - Mailman Core 3.0.1 and 3.0.2 have been released in the meantime Yes, I'll ask to mailman devels how clever it'd be to take 3.0.2 for packaging now. > - it does not work on stretch/sid because it is not compatible with > Python 3.5, see https://gitlab.com/mailman/mailman/issues/181 Yeah, during my tries I didn't met this issue. I guess it's because 3.5 wasn't in. I'll work on it as I'm not fully aware of how to enforce 3.4. > - it does not install on Jessie (even with jessie-backports because of > missing dependencies) (just a note because of not working on stretch > either) Backporting all mailman3 suite will not be simple I guess, but I intend doing so when and if my packaging for sid succeeds. > - The systemd unit won't work because the parameter for the > configuration file is '-C', not '-c' My bad, I really thought I've fixed it before sending this email. > - installing python3.4 and changing the shebang in /usr/bin/mailman > leads to the following error > > root at 4ca9477a166c:~# /usr/bin/mailman -C /etc/mailman3/mailman.cfg start > Starting Mailman's master runner > /usr/bin/python3.4: can't open file '/var/lib/mailman/bin/master': > [Errno 2] No such file or directory > > The files are installed in /var/lib/mailman3/bin, but bin_dir in > /etc/mailman3/mailman.cfg points to /var/lib/mailman/bin ... both > directories are wrong from my POV, it should probably be > /usr/lib/mailman3 or something like that During my discussions with Barry Warsaw, we agreed that except the mail binary, the others shouldn't be in /usr/bin as their name is "too generic". This error is mailman3.cfg was in the same stack of patches that should have been committed before my email (with -C option) > - Fixing this up leads to > > root at 4ca9477a166c:~# /usr/bin/mailman -C /etc/mailman3/mailman.cfg start > Starting Mailman's master runner > Traceback (most recent call last): > File "/var/lib/mailman3/bin/master", line 9, in > load_entry_point('mailman==3.0.0', 'console_scripts', 'master')() > File "/usr/lib/python3/dist-packages/mailman/bin/master.py", line 536, > in main > with open(config.PID_FILE, 'w') as fp: > FileNotFoundError: [Errno 2] No such file or directory: > '/run/mailman3/master.pid' > > because the directory does not exist. Since you are shipping a systemd > unit only you should probably ship a .tmpfile as well. During my initial test, I tried to run mailman3 standalone, and the directory stayed, so I never met the error. Fix committed. Thanks. > I now have a running daemon. I haven't done anything with Mailman3 so > far, so I need to read up on that first. Thanks for reviewing, sorry for the loss of time I induced. -- PEB From adityadivekar03 at gmail.com Tue Feb 23 10:44:14 2016 From: adityadivekar03 at gmail.com (Aditya Divekar) Date: Tue, 23 Feb 2016 21:14:14 +0530 Subject: [Mailman-Developers] Accessing the members of a list Message-ID: Hi, This is in regard to postorius. Is there a way by which I can access all the members of a list using its 'list_id' in the list.py file with/without creating a new client? The approach I tried was creating a client in the list.py file for this purpose and calling on the 'members()' function from the Client class defined in client.py. The doubt I had here is that the members() function uses the self parameter to decide which list is being referred to. For this, I think I need to pass the exact url to the list I wish to search for as a parameter while creating the client and then call on the members() function on it. Here, how do I figure out the url for this purpose? Thanks! Aditya From harshitbansal2015 at gmail.com Tue Feb 23 12:40:52 2016 From: harshitbansal2015 at gmail.com (Harshit Bansal) Date: Tue, 23 Feb 2016 23:10:52 +0530 Subject: [Mailman-Developers] Accessing the members of a list Message-ID: > Hi, > > This is in regard to postorius. Is there a way by which I can access all > the members of a list using its 'list_id' in the list.py file with/without > creating a new client? > > The approach I tried was creating a client in the list.py file for this > purpose and calling on the 'members()' function from the Client class > defined in client.py. The doubt I had here is that the members() function > uses the self parameter to decide which list is being referred to. For > this, I think I need to pass the exact url to the list I wish to search for > as a parameter while creating the client and then call on the members() > function on it. Here, how do I figure out the url for this purpose? > > Thanks! > > Aditya > I think this approach can be used for getting all members without creating a new client : m_list = List.objects.get_or_404(fqdn_listname=list_id) Then mlist.members can be used to access all the members of the mailing list. If you want to use the client then the exact url of the list would be lists/fqdn_listname. Hope this helps. Thanks and regards, Harshit Bansal HBTI, KANPUR From adityadivekar03 at gmail.com Wed Feb 24 08:39:27 2016 From: adityadivekar03 at gmail.com (Aditya Divekar) Date: Wed, 24 Feb 2016 19:09:27 +0530 Subject: [Mailman-Developers] Accessing the members of a list In-Reply-To: References: Message-ID: Thanks for the help Harshit! But I realized that I framed my question improperly. I used the above command before too, but it raises an error - CannotOverwriteExistingCassetteException: No match for the request () was found. Can't overwrite existing cassette ('/home/hp/postorius_aditya/src/postorius/tests/fixtures/vcr_cassettes/ListMembersTest.test_search_members_1.yaml') in your current record mode ('once'). Is this error because the request is not present in test cases or is it some other error? Also, if it is a test case problem, can anyone suggest me how to change the test case (or where I could read about how to go about it) to make the build pass? Thanks, Aditya. From harshitbansal2015 at gmail.com Wed Feb 24 09:33:30 2016 From: harshitbansal2015 at gmail.com (Harshit Bansal) Date: Wed, 24 Feb 2016 20:03:30 +0530 Subject: [Mailman-Developers] Accessing the members of a list In-Reply-To: References: Message-ID: Hi Aditya, Since a lot of Postorius code involves calls to Mailman's REST API and running these tests against a real instance would be painfully slow, hence ''vcrpy'' cassettess are used. These files contain pre-recorded HTTP responses. If you write new tests, it's advisable to add a separate fixture file for each test case. Considering your test, the fixture file that your test uses contains the following pre-recorded responses for the following POST requests : request: body: mail_host=example.com headers: accept-encoding: ['gzip, deflate'] !!python/unicode content-type: [!!python/unicode application/x-www-form-urlencoded] method: !!python/unicode POST uri: http://localhost:9001/3.0/domains request: body: fqdn_listname=foo%40example.com headers: accept-encoding: ['gzip, deflate'] !!python/unicode content-type: [!!python/unicode application/x-www-form-urlencoded] method: !!python/unicode POST uri: http://localhost:9001/3.0/lists request: body: display_name=None&list_id=foo.example.com&pre_approved=True&pre_confirmed=True&pre_verified=True&subscriber=member-1%40example.com headers: accept-encoding: ['gzip, deflate'] !!python/unicode content-type: [!!python/unicode application/x-www-form-urlencoded] method: !!python/unicode POST uri: http://localhost:9001/3.0/members request: body: display_name=None&list_id=foo.example.com&pre_approved=True&pre_confirmed=True&pre_verified=True&subscriber=member-2%40example.com headers: accept-encoding: ['gzip, deflate'] !!python/unicode content-type: [!!python/unicode application/x-www-form-urlencoded] method: !!python/unicode POST uri: http://localhost:9001/3.0/members So only these request formats can be used in your test. If you want to use other request formats then probably you have to record them in the following fixture file: src/postorius/tests/fixtures/vcr_cassettes/ListMembersTest.test_search_members_1.yaml You can also refer to ''vcrpy'' documentation for more information. Hope this helps. Regards, Harshit Bansal. On 2/24/16, Aditya Divekar wrote: > Thanks for the help Harshit! > But I realized that I framed my question improperly. I used the above > command before too, but it raises an error - > > CannotOverwriteExistingCassetteException: No match for the request > ( http://localhost:9001/3.0/members/find?subscriber=%2Aexample.com%2A&list_id=foo.example.com&role=member>) > was found. Can't overwrite existing cassette > ('/home/hp/postorius_aditya/src/postorius/tests/fixtures/vcr_cassettes/ListMembersTest.test_search_members_1.yaml') > in your current record mode ('once'). > > Is this error because the request is not present in test cases or is it > some other error? > Also, if it is a test case problem, can anyone suggest me how to change the > test case (or where I could read about how to go about it) to make the > build pass? > > Thanks, > Aditya. > From simon.hanna at serve-me.info Wed Feb 24 10:48:42 2016 From: simon.hanna at serve-me.info (Simon Hanna) Date: Wed, 24 Feb 2016 16:48:42 +0100 Subject: [Mailman-Developers] Accessing the members of a list In-Reply-To: References: Message-ID: <56CDD0DA.3060206@serve-me.info> I just realized I didn't reply to the list but to the OP only. Here is my reply: > CannotOverwriteExistingCassetteException: No match for the request > ( http://localhost:9001/3.0/members/find?subscriber=%2Aexample.com%2A&list_id=foo.example.com&role=member>) > was found. Can't overwrite existing cassette > ('/home/hp/postorius_aditya/src/postorius/tests/fixtures/vcr_cassettes/ListMembersTest.test_search_members_1.yaml') > in your current record mode ('once'). > > Is this error because the request is not present in test cases or is it > some other error? > Also, if it is a test case problem, can anyone suggest me how to change the > test case (or where I could read about how to go about it) to make the > build pass? It's because the request is not recorded in the mentioned yaml file. In order to record tapes, you will have to have a running mailman instance. The config file for mailman can be found in the testing directory of postorius. 1. Make sure you have an empty mailman database (just remove everything that mailman creates ^^). 2. You will want to delete the yaml file you want to overwrite. 3. run `tox -e record` in postorius. Repeat steps 1-3 as long as you get errors (you will have to fix the errors of course) 4. confirm that everything works by running `tox` commit the yaml file you wanted to overwrite. Sidenote: You might not have to rerecord the yaml file over and over if you are only fixing things that don't result in new/changed requests. From trealtv at yandex.com Thu Feb 25 14:36:49 2016 From: trealtv at yandex.com (treal tv) Date: Thu, 25 Feb 2016 14:36:49 -0500 Subject: [Mailman-Developers] Mailman 3 custom footer Message-ID: <56CF57D1.4040203@yandex.com> I saw an older message where someone was asking how to customize the footer for mailman 3. https://mail.python.org/pipermail/mailman-users/2015-October/079965.html It didn't seem to ever be answered, and I couldn't find any follow up in this list's archives. This is a problem I'm struggling with now - I also found the footer-generic.txt from the source where the exact footer I'm seeing is coming from. https://gitlab.com/mailman/mailman/blob/master/src/mailman/templates/en/footer-generic.txt I'm looking to modify the contents of this footer so it says something slightly different. However, I can't find anywhere with Mailman 3 to change anything about the footer. Any help is greatly appreciated! Thank you! From adityadivekar03 at gmail.com Fri Feb 26 01:21:38 2016 From: adityadivekar03 at gmail.com (Aditya Divekar) Date: Fri, 26 Feb 2016 11:51:38 +0530 Subject: [Mailman-Developers] Accessing the members of a list In-Reply-To: <56CDD0DA.3060206@serve-me.info> References: <56CDD0DA.3060206@serve-me.info> Message-ID: Thanks again Harshit! And, @Simon, thanks for the input. Also I apologize for dragging the issue #88 for so long. I am currently facing problems with my system python3 due to some bad changes. As a result I'm not able to run mailman3.0 now. I planned on running it and recording a new request in the vcrpy cassette for the fix, but currently I'm not able to. I will look into getting the python3 fixed at the earliest, and close the issue for once. Thanks for the patience! Aditya From barry at list.org Fri Feb 26 19:24:05 2016 From: barry at list.org (Barry Warsaw) Date: Fri, 26 Feb 2016 19:24:05 -0500 Subject: [Mailman-Developers] Mailman 3 custom footer In-Reply-To: <56CF57D1.4040203@yandex.com> References: <56CF57D1.4040203@yandex.com> Message-ID: <20160226192405.465401bb@subdivisions.wooz.org> On Feb 25, 2016, at 02:36 PM, treal tv wrote: >I'm looking to modify the contents of this footer so it says something >slightly different. However, I can't find anywhere with Mailman 3 to change >anything about the footer. I'll describe what you have today, but it's likely the exact details will change at some point (maybe for 3.1 if my ideas pan out). Still, how it works today still contains the basic scheme for how I want it to work in the future. The thing to remember is that while Core needs to send out emails with various templates, it can't make any assumptions about what is on the web front-end, so text like footers can't contain URLs and such by default. Yes, this is a bit of a mess right now because you'll still see substitutions like $listinfo_url in some templates, even though these can't be correctly filled in. So there are two parts to this answer. The first is finding the template to use for the footer[*], and then filling in all the placeholders. You've found the footer-generic.txt template, but how is this used? Every mailing list currently has an attribute called `footer_uri`, and this is set in the list style. I've previously described how style works so I won't go down that detour here. Suffice to say that the default style sets footer_uri to `mailman:///$listname/$language/footer-generic.txt`. Notice two things about this uri. * It has a `mailman:` scheme. * It has some $-placeholders. What happens is that in the decorate handler, when the footer is put on the outgoing message, we first substitute some useful information into the uri's placeholders. The values should be obvious: $listname gets the fqdn_listname value and $language gets the preferred_language.code. So for mailing list alpha at example.com using Italian as its preferred language, the footer_uri gets transformed into mailman:///alpha at example.com/it/footer-generic.txt. Now we start to look that up. Of course, if the scheme were http: or https:, we'd just issue a request to that url and use whatever we find. The intent is that in Postorius or some other CMS or web resource repository, you'd be able to define a custom template appropriate for your site. You'd set the list's footer_uri to something like https://my.cms.example.com/footer.txt and since there are no placeholders, Mailman just grabs the text at that url and viola! you've got your footer. Supporting the placeholders allows your CMS to provide different footers for different lists, and of course you'll want to provide different footers for different human languages. But okay, now we have mailman:///alpha at example.com/it/footer-generic.txt and we have to look that up. What are the rules for mailman: urls? mailman: urls are shorthand for internal resources, homed in the source code directory on the file system. The search order is well documented, but not easily discovered so here's the documentation: https://gitlab.com/mailman/mailman/blob/master/src/mailman/utilities/i18n.py#L53 You can see how there's a search hierarchy, such that if you only want a single template for all your lists on the site, you can define it once on the file system, and Mailman will just find that one. Similarly, you could have a template that applies to all lists within the same domain, or have list specific templates. So, bottom line is, drop a file in the template_dir defined in your mailman.cfg and set your list's footer_uri to a mailman: url that points here, and Bob's your uncle. Now the second step alluded to earlier. Once you've located the template, the template *itself* can have substitution placeholders, and for message headers and footers (i.e. message decorations) they get filled in here: https://gitlab.com/mailman/mailman/blob/master/src/mailman/handlers/decorate.py#L228 So you can see how your template can contain information about the mailing list's name, hostname, description, etc. `extradict` comes into play (or at least *should* ) when messages are personalized, such that some information specific to the user could be added, e.g. their unsubscribe link. This may not be fully plumbed out right now though. Briefly then, how will this be different in the future? I'm still working out the design, but roughly, there will be a new ITemplateManager that holds mappings between template names, a context (e.g. mailing list, domain, or site), URIs, and "resource dictionaries". This ITemplateManager would be a top-level REST resource so Postorius and other REST clients could directly manipulate these mappings. Then you'd be able to say, through REST, "set the footer template, for all mailing lists on example.com, to https://my.cms.example.com/footer.txt`. When needed, the core delivery engine would then ask the template manager for the contents of the footer template for a given mailing list, and it would get back a bunch of text (appropriately cached, with various cache management knobs for efficiency). Mailman would then fill in substitution variables in this footer template as before, but it would *also* do a query for the "resource dictionary" which would be e.g. a JSON mapping keys to values. This would then let your CMS also define additional bits of data to shove into the footer when it gets sent out. Cheers, -Barry [*] and when you read "footer", think "just about any template eventually". From stephen at xemacs.org Sat Feb 27 00:02:49 2016 From: stephen at xemacs.org (Stephen J. Turnbull) Date: Sat, 27 Feb 2016 14:02:49 +0900 Subject: [Mailman-Developers] Regexp filtering In-Reply-To: <56D0A6DC.2000903@msapiro.net> References: <22224.34168.628954.746288@turnbull.sk.tsukuba.ac.jp> <56D0A6DC.2000903@msapiro.net> Message-ID: <22225.11769.251788.350761@turnbull.sk.tsukuba.ac.jp> On Mailman-Users, Mark Sapiro writes: > Further, in the ban_list (and many other places in Mailman) if an > address is intended to be a regular expression pattern, it must begin > with '^', so you really want > > ^.*@domain\.com$ > > to match any_address at domain.com. I hope we haven't propagated this rather user-unfriendly interface (the convention of accepting both regexps and literals, distinguishing by "^" in column 0) to Mailman 3. Even as a Python programmer, I find Mark's post somewhat confusing: I would design filters using re.search, so that the above would actually be equivalent as a Python regular expression to r"@domain\.com$". OTOH, if the implementation uses re.match, the "^" is redundant, so I have a "say what?!" event. If we have, I propose changing it to Ban these addresses, one entry per line: [ ] [ ] Entries are regular expressions. or something like that. We also ought to have a "Python features for Mailman administrators" section of the FAQ, starting with "what is a regular expression", and giving examples of how to accomplish common tasks like banning a whole domain with regular expressions. Typical regexp FAQs are hard for non-programmers (and even beginning programmers) to grasp. I don't have time to actually work on these now, but if there's uptake on the suggestion ("let's think about it" at +0 or above :-) I'll file issues. From mark at msapiro.net Sat Feb 27 00:20:01 2016 From: mark at msapiro.net (Mark Sapiro) Date: Fri, 26 Feb 2016 21:20:01 -0800 Subject: [Mailman-Developers] Regexp filtering In-Reply-To: <22225.11769.251788.350761@turnbull.sk.tsukuba.ac.jp> References: <22224.34168.628954.746288@turnbull.sk.tsukuba.ac.jp> <56D0A6DC.2000903@msapiro.net> <22225.11769.251788.350761@turnbull.sk.tsukuba.ac.jp> Message-ID: <56D13201.7090608@msapiro.net> On 02/26/2016 09:02 PM, Stephen J. Turnbull wrote: > On Mailman-Users, Mark Sapiro writes: > > > Further, in the ban_list (and many other places in Mailman) if an > > address is intended to be a regular expression pattern, it must begin > > with '^', so you really want > > > > ^.*@domain\.com$ > > > > to match any_address at domain.com. > > I hope we haven't propagated this rather user-unfriendly interface > (the convention of accepting both regexps and literals, distinguishing > by "^" in column 0) to Mailman 3. Even as a Python programmer, I find > Mark's post somewhat confusing: I would design filters using > re.search, so that the above would actually be equivalent as a Python > regular expression to r"@domain\.com$". OTOH, if the implementation > uses re.match, the "^" is redundant, so I have a "say what?!" event. I agree it's confusing, and I've been caught in this confusion myself and neglected to put the leading ^ in what I clearly intended to be a regexp, but the convention goes back a long way in MM2. > If we have, I propose changing it to > > Ban these addresses, one entry per line: [ ] > [ ] Entries are regular expressions. > > or something like that. We also ought to have a "Python features for > Mailman administrators" section of the FAQ, starting with "what is a > regular expression", and giving examples of how to accomplish common > tasks like banning a whole domain with regular expressions. Typical > regexp FAQs are hard for non-programmers (and even beginning > programmers) to grasp. > > I don't have time to actually work on these now, but if there's uptake > on the suggestion ("let's think about it" at +0 or above :-) I'll file > issues. I'm not sure what the MM3 story is at this point, but +1 for Steve's idea. -- Mark Sapiro The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan From jarifibrahim at gmail.com Sat Feb 27 00:36:51 2016 From: jarifibrahim at gmail.com (Ibrahim Jarif) Date: Sat, 27 Feb 2016 11:06:51 +0530 Subject: [Mailman-Developers] GSoC'16 Contribution Message-ID: Hello Developer, I'm Ibrahim Jarif. I'm studying computer engineering (3rd year). I wish to apply for GSoC'16 with the mailman Project. I have some experience with python programming. I am not an expert in programming or software development but I wish to learn and contribute to the project. I'm willing to put in as much effort as it takes. You can find some of my work here . I'd really appreciate if someone could guide me and get me started with the project. Thank you From stephen at xemacs.org Sat Feb 27 04:21:07 2016 From: stephen at xemacs.org (Stephen J. Turnbull) Date: Sat, 27 Feb 2016 18:21:07 +0900 Subject: [Mailman-Developers] GSoC'16 Contribution In-Reply-To: References: Message-ID: <22225.27267.196943.770655@turnbull.sk.tsukuba.ac.jp> Ibrahim Jarif writes: > I'm Ibrahim Jarif. I'm studying computer engineering (3rd year). I wish to > apply for GSoC'16 with the mailman Project. Welcome! > I'd really appreciate if someone could guide me and get me started with the > project. The place to start is by bookmarking the GSoC 2016 page at http://wiki.list.org/DEV/Google%20Summer%20of%20Code%202016 and the DEV page itself at http://wiki.list.org/DEV/ If you haven't already checked Google's rules, do so at the "new GSoC page" at https://summerofcode.withgoogle.com/ (note that it's not "google-melange.com" any more!) If you have a "Mailman itch" you need to "scratch", please let us know about it. It might make a good GSoC project. If not, check the ideas page (the first link above). Finally, once you've got yourself a bit oriented, you should get yourself a gitlab account[1], and check the issues at https://gitlab.com/groups/mailman/issues for something easy (like a doc fix), and start working toward a merge request. We want you to have at least one under your belt before starting the summer. (It doesn't have to be approved and merged for you to qualify -- it's just proof that you're ready to deal with the mechanics of contributing to Mailman.) Footnotes: [1] Not github, nothing against github personally but since we're a GNU project, our Fearless Leader gets annoyed by RMS if we use non-free resources, and that is pretty fearsomely annoying. :-) From stephen at xemacs.org Sat Feb 27 04:21:33 2016 From: stephen at xemacs.org (Stephen J. Turnbull) Date: Sat, 27 Feb 2016 18:21:33 +0900 Subject: [Mailman-Developers] [Mailman-Users] Help with installation In-Reply-To: References: <22224.1398.812724.541209@turnbull.sk.tsukuba.ac.jp> Message-ID: <22225.27293.866076.34357@turnbull.sk.tsukuba.ac.jp> First, please make sure you direct replies to the list. If you don't understand why that is appropriate, read Eric Raymond's "How to Ask Questions the Smart Way" (www.catb.org/esr/faqs/smart-questions.html). Redirecting to list is not automatic because we occasionally handle sensitive topics in private mail, and it would be a Bad Thing if a list administrator posted personal or system details to a public list by accident. Ibrahim Jarif writes: > I guess the content filter removed the attachment. > > I ran ``django-admin migrate --pythonpath hyperkitty_standalone --settings > settings ``. I get the following error [traceback details omitted] > ImportError: No module named settings Is there a hyperkitty_standalone directory in the current directory when you run that command? Is there a settings.py file in that directory? Is the venv active when you run it? I would guess that you are running the command from the wrong current directory. From stephen at xemacs.org Sat Feb 27 04:21:51 2016 From: stephen at xemacs.org (Stephen J. Turnbull) Date: Sat, 27 Feb 2016 18:21:51 +0900 Subject: [Mailman-Developers] Regexp filtering In-Reply-To: <56D13201.7090608@msapiro.net> References: <22224.34168.628954.746288@turnbull.sk.tsukuba.ac.jp> <56D0A6DC.2000903@msapiro.net> <22225.11769.251788.350761@turnbull.sk.tsukuba.ac.jp> <56D13201.7090608@msapiro.net> Message-ID: <22225.27311.762558.316013@turnbull.sk.tsukuba.ac.jp> Mark Sapiro writes: > I agree it's confusing, and I've been caught in this confusion myself > and neglected to put the leading ^ in what I clearly intended to be a > regexp, but the convention goes back a long way in MM2. Oh, of course I'm -1 on changing "regexps start with '^'" convention in Mailman 2 myself! From jarifibrahim at gmail.com Sat Feb 27 06:57:35 2016 From: jarifibrahim at gmail.com (Ibrahim Jarif) Date: Sat, 27 Feb 2016 17:27:35 +0530 Subject: [Mailman-Developers] [Mailman-Users] Help with installation In-Reply-To: <22225.27293.866076.34357@turnbull.sk.tsukuba.ac.jp> References: <22224.1398.812724.541209@turnbull.sk.tsukuba.ac.jp> <22225.27293.866076.34357@turnbull.sk.tsukuba.ac.jp> Message-ID: Hi, Thank you for the reply. I solved the issue. The documentation at https://hyperkitty.readthedocs.org/en/latest/development.html was written for older version of Django (I guess Django-1.6). A lot has changed in Django-1.9. The latest version has different commands than those mentioned on the page. I've created an issue about the documentation here Thanks -Ibrahim On Sat, Feb 27, 2016 at 2:51 PM, Stephen J. Turnbull wrote: > First, please make sure you direct replies to the list. If you don't > understand why that is appropriate, read Eric Raymond's "How to Ask > Questions the Smart Way" (www.catb.org/esr/faqs/smart-questions.html). > > Redirecting to list is not automatic because we occasionally handle > sensitive topics in private mail, and it would be a Bad Thing if a > list administrator posted personal or system details to a public list > by accident. > > Ibrahim Jarif writes: > > I guess the content filter removed the attachment. > > > > I ran ``django-admin migrate --pythonpath hyperkitty_standalone > --settings > > settings ``. I get the following error > > [traceback details omitted] > > ImportError: No module named settings > > Is there a hyperkitty_standalone directory in the current directory > when you run that command? Is there a settings.py file in that > directory? Is the venv active when you run it? > > I would guess that you are running the command from the wrong current > directory. > > > > From stephen at xemacs.org Sat Feb 27 10:08:54 2016 From: stephen at xemacs.org (Stephen J. Turnbull) Date: Sun, 28 Feb 2016 00:08:54 +0900 Subject: [Mailman-Developers] [Mailman-Users] Help with installation In-Reply-To: References: <22224.1398.812724.541209@turnbull.sk.tsukuba.ac.jp> <22225.27293.866076.34357@turnbull.sk.tsukuba.ac.jp> Message-ID: <22225.48134.21179.757889@turnbull.sk.tsukuba.ac.jp> Ibrahim Jarif writes: > https://hyperkitty.readthedocs.org/en/latest/development.html was > written for older version of Django (I guess Django-1.6). I first used HK with Django 1.5 I think. HK docs potentially go way back in Django history, and I know we've had backward compatibility issues with Django (to be fair, you expect those when going from x.y to x.(y+3) or so). Beta testers, beware! Those =version requirements do matter with Django. > A lot has changed in Django-1.9. The latest version has different > commands than those mentioned on the page. > > I've created an issue about the documentation here > Elsewhere I mentioned fixing an easy issue to qualify for GSoC. This sounds like a perfect one to me! From jarifibrahim at gmail.com Sat Feb 27 11:00:48 2016 From: jarifibrahim at gmail.com (Ibrahim Jarif) Date: Sat, 27 Feb 2016 21:30:48 +0530 Subject: [Mailman-Developers] [Mailman-Users] Help with installation In-Reply-To: <22225.48134.21179.757889@turnbull.sk.tsukuba.ac.jp> References: <22224.1398.812724.541209@turnbull.sk.tsukuba.ac.jp> <22225.27293.866076.34357@turnbull.sk.tsukuba.ac.jp> <22225.48134.21179.757889@turnbull.sk.tsukuba.ac.jp> Message-ID: Yes. I can surely do that. Could you tell me how do I edit the pages? I can't find the wiki.list.org source code. On Sat, Feb 27, 2016 at 8:38 PM, Stephen J. Turnbull wrote: > Ibrahim Jarif writes: > > > https://hyperkitty.readthedocs.org/en/latest/development.html was > > written for older version of Django (I guess Django-1.6). > > I first used HK with Django 1.5 I think. HK docs potentially go way > back in Django history, and I know we've had backward compatibility > issues with Django (to be fair, you expect those when going from x.y > to x.(y+3) or so). Beta testers, beware! Those =version requirements > do matter with Django. > > > A lot has changed in Django-1.9. The latest version has different > > commands than those mentioned on the page. > > > > I've created an issue about the documentation here > > > > Elsewhere I mentioned fixing an easy issue to qualify for GSoC. This > sounds like a perfect one to me! > > From mark at msapiro.net Sat Feb 27 13:28:47 2016 From: mark at msapiro.net (Mark Sapiro) Date: Sat, 27 Feb 2016 10:28:47 -0800 Subject: [Mailman-Developers] Help with installation In-Reply-To: References: <22224.1398.812724.541209@turnbull.sk.tsukuba.ac.jp> <22225.27293.866076.34357@turnbull.sk.tsukuba.ac.jp> <22225.48134.21179.757889@turnbull.sk.tsukuba.ac.jp> Message-ID: <56D1EADF.1030605@msapiro.net> On 02/27/2016 08:00 AM, Ibrahim Jarif wrote: > Yes. I can surely do that. Could you tell me how do I edit the pages? I > can't find the wiki.list.org source code. Pages at wiki.list.org are edited via the wiki itself. There is an edit action near the top of the left sidebar. There is extensive help - start with HelpContents (also linked from the left sidebar. Step 1 is to read and follow the first paragraph at . -- Mark Sapiro The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan From lakshmanan.meiyappan at gmail.com Sat Feb 27 13:52:11 2016 From: lakshmanan.meiyappan at gmail.com (Lakshmanan Meiyappan) Date: Sun, 28 Feb 2016 00:22:11 +0530 Subject: [Mailman-Developers] GSoC 2016 Contribution Message-ID: Hi, I'm Lakshmanan, sophomore in Computer science and engineering. I love programming, and I love python and I would like to contribute to mailman project in this GSoC 16. I would be grateful if someone could guide me, as I'm a beginner. I'm hard worker and I can invest most of my time into this. It would be helpful if someone could help me in the process. Thank you, Lakshmanan meiyappan From raj.abhilash1 at gmail.com Sat Feb 27 14:05:29 2016 From: raj.abhilash1 at gmail.com (Abhilash Raj) Date: Sat, 27 Feb 2016 11:05:29 -0800 Subject: [Mailman-Developers] GSoC 2016 Contribution In-Reply-To: References: Message-ID: <56D1F379.1040104@gmail.com> Hi Lakshman, On 02/27/2016 10:52 AM, Lakshmanan Meiyappan wrote: > Hi, I'm Lakshmanan, sophomore in Computer science and engineering. I love > programming, and I love python and I would like to contribute to mailman > project in this GSoC 16. I would be grateful if someone could guide me, as > I'm a beginner. I'm hard worker and I can invest most of my time into this. > It would be helpful if someone could help me in the process. Welcome! Stephen very recently answered this question on the list that you can find here[1] in archives. You will also find link to the GSoC 2016 wiki page in there where all the resources and getting started guides are linked. [1]: http://www.mail-archive.com/mailman-developers%40python.org/msg16122.html > Thank you, > > Lakshmanan meiyappan > _______________________________________________ > Mailman-Developers mailing list > Mailman-Developers at python.org > https://mail.python.org/mailman/listinfo/mailman-developers > Mailman FAQ: http://wiki.list.org/x/AgA3 > Searchable Archives: http://www.mail-archive.com/mailman-developers%40python.org/ > Unsubscribe: https://mail.python.org/mailman/options/mailman-developers/raj.abhilash1%40gmail.com > > Security Policy: http://wiki.list.org/x/QIA9 > -- thanks, Abhilash Raj From jonax at openmailbox.org Sat Feb 27 13:35:01 2016 From: jonax at openmailbox.org (Jonas) Date: Sat, 27 Feb 2016 19:35:01 +0100 Subject: [Mailman-Developers] GSoC Project: pgp plugin Message-ID: <56D1EC55.60909@openmailbox.org> Hello Mailman developers, I was planning to write a pgp-encryption plugin for Mailman 3 that manages one keypair per list and pubkeys of the subscribers. I'm considering to do it as my first-time Google Summer of Code project. I have read the GSoC 2016 rules and the Mailman wiki GSoC 2016 pages. I will try to work myself more into the mailman-core sources the next few days and try to make an improvement (eg bugfix). About me: I have been studying computer science in germany for two and a half years. I have sent patches to some libre, mainly C and C++, projects. I have only minor experience in Python but I'm used to learning by reading documentation and sources. Feel free to mail me if you have questions. The Project Idea: Encrypted malinglists have been been a much-requested feature in mailman 2 and I would like to run some encrypted mailinglists myself. There is no stable pgp-aware mailserver at this time but there has been an unstable patch for mailman 2.1.5[1] and some other unstable encrypted list servers [2][3]). This Project could also help to evaluate the Mailman 3 plugin system. Some features could be: 1. Automatic pubkey collection from inbound mail 2. Outbound mail encryption and signature validation 3. Automatic keypair generation for pgp-aware lists 4. Inbound mail decryption and outbound mail signature 5. A mailinterface for organizing the encrypted lists, subscribers public keys and trust levels 6. A webinterface 7. PGP Information in the messages (e.g. was the incoming mail signed by a trusted subscriber?) 8. Optionally forced encryption (such a list never sends mail to an adress to which it can't encrypt with a pubkey that has a certain level of trust and/or won't accept inbound mail in plaintext) 9. Optionally forced signature (inbound mail to the list has to be signed with a key that has a certain level of trust in order to be published) 10. pgp-aware command system. (eg optionally only accept admin mail commands from signature-verified mail admins) Features 1.-5. are essential. Thoughts on Implementation: pygpgme could be used for encryption which might easily enable S/MIME as well. Keys could be stored in the filesystem or in databases using SQLAlchemy. The encryption step could be implemented as a pipeline. Encrypted lists in mailman would be great, I think I can implement the plugin myself but I will need help to ensure the reliability and security of the plugin. What are your thoughts on pgp in Mailman 3? Is this a suitable Project for the Google Summer of Code 2016? Would anyone be interested in becoming my mentor for this project? Thank you, Jonas [1]: https://non-gnu.uvt.nl/mailman-pgp-smime/ [2]: http://schleuder2.nadir.org/ [3]: http://schleuder2.nadir.org/documentation/v2.2/faq.html#index2h3 From raj.abhilash1 at gmail.com Sat Feb 27 22:48:36 2016 From: raj.abhilash1 at gmail.com (Abhilash Raj) Date: Sat, 27 Feb 2016 19:48:36 -0800 Subject: [Mailman-Developers] GSoC Project: pgp plugin In-Reply-To: <56D1EC55.60909@openmailbox.org> References: <56D1EC55.60909@openmailbox.org> Message-ID: Hi Jonas, On 27 February 2016 at 10:35, Jonas wrote: > Hello Mailman developers, > > I was planning to write a pgp-encryption plugin for Mailman 3 that > manages one keypair per list and pubkeys of the subscribers. > I'm considering to do it as my first-time Google Summer of Code project. > Welcome! > > I have read the GSoC 2016 rules and the Mailman wiki GSoC 2016 pages. > I will try to work myself more into the mailman-core sources the next > few days and try to make an improvement (eg bugfix). > > About me: > I have been studying computer science in germany for two and a half > years. I have sent patches to some libre, mainly C and C++, projects. I > have only minor experience in Python but I'm used to learning by reading > documentation and sources. > Feel free to mail me if you have questions. > > The Project Idea: > Encrypted malinglists have been been a much-requested feature in mailman > 2 and I would like to run some encrypted mailinglists myself. > There is no stable pgp-aware mailserver at this time but there has been > an unstable patch for mailman 2.1.5[1] and some other unstable encrypted > list servers [2][3]). This Project could also help to evaluate the > Mailman 3 plugin system. > > If you don't know, I worked on this project some time back in GSoC 2013. The current state of that project is not very good and probably needs a *lot* of rebasing to do. I have been thinking about revisiting the project, but haven't been able to. I don't mind another GSoC for the same project if you can put up a proposal that would land the project in a better end state than I did ;-). Here is a link[1] to discussions that have already been done before on this idea. Please read it carefully as there has been a pretty extensive discussion on the security model and usability of such an implementation. I have a few small questions doubts about your features below... > Some features could be: > 1. Automatic pubkey collection from inbound mail > What happens if I send a forged email with some user's email address as FROM and use a fake key? Automatic public key collection isn't a very good idea, you should be *very* careful about how you handle public keys. > 2. Outbound mail encryption and signature validation > I would suggest you keep encryption as a part of extended goals in case of GSoC. You'd be surprised how many students are not able to finish their proposal in time. I don't say they did not do good work, just that they did not make a good estimate of their time which is a good skill one should have. > 3. Automatic keypair generation for pgp-aware lists > Just to let you know, generating keys in virtual environments is not that easy due to less available randomness as compared to PCs. > 4. Inbound mail decryption and outbound mail signature > Can you elaborate on this? Shouldn't both be working differently? Encrypted emails distributed as encrypted email and signed email distributed as signed. > 5. A mailinterface for organizing the encrypted lists, subscribers > public keys and trust levels I would like to know more on how you plan to do this. > 6. A webinterface > Can be integrated in Postorius (Mailman 3's default web UI) > 7. PGP Information in the messages (e.g. was the incoming mail signed > by a trusted subscriber?) > 8. Optionally forced encryption (such a list never sends mail to an > adress to which it can't encrypt with a pubkey that has a certain > level of trust and/or won't accept inbound mail in plaintext) > 9. Optionally forced signature (inbound mail to the list has to be > signed with a key that has a certain level of trust in order to be > published) > 10. pgp-aware command system. (eg optionally only accept admin mail > commands from signature-verified mail admins) > > Features 1.-5. are essential. > > Thoughts on Implementation: > pygpgme could be used for encryption which might easily enable S/MIME as > well. Keys could be stored in the filesystem or in databases using > SQLAlchemy. The encryption step could be implemented as a pipeline. > > > Encrypted lists in mailman would be great, I think I can implement the > plugin myself but I will need help to ensure the reliability and > security of the plugin. > > What are your thoughts on pgp in Mailman 3? > > Is this a suitable Project for the Google Summer of Code 2016? > I think so. > Would anyone be interested in becoming my mentor for this project? > I can, depending on your application. > > > Thank you, > Jonas > > > [1]: https://non-gnu.uvt.nl/mailman-pgp-smime/ > [2]: http://schleuder2.nadir.org/ > [3]: http://schleuder2.nadir.org/documentation/v2.2/faq.html#index2h3 > _______________________________________________ > Mailman-Developers mailing list > Mailman-Developers at python.org > https://mail.python.org/mailman/listinfo/mailman-developers > Mailman FAQ: http://wiki.list.org/x/AgA3 > Searchable Archives: > http://www.mail-archive.com/mailman-developers%40python.org/ > Unsubscribe: > https://mail.python.org/mailman/options/mailman-developers/raj.abhilash1%40gmail.com > > Security Policy: http://wiki.list.org/x/QIA9 > -- thanks, Abhilash Raj From stephen at xemacs.org Sun Feb 28 04:30:33 2016 From: stephen at xemacs.org (Stephen J. Turnbull) Date: Sun, 28 Feb 2016 18:30:33 +0900 Subject: [Mailman-Developers] GSoC Project: pgp plugin In-Reply-To: <56D1EC55.60909@openmailbox.org> References: <56D1EC55.60909@openmailbox.org> Message-ID: <22226.48697.41484.315892@turnbull.sk.tsukuba.ac.jp> Jonas writes: > The Project Idea: > Encrypted malinglists have been been a much-requested feature in mailman > 2 and I would like to run some encrypted mailinglists myself. I see Abhilash has already mentioned that he has done some work on crypto (PGP) in Mailman 3. I'll let him explain that. I agree that this capability is very desirable for some use cases, so I too welcome your application. > There is no stable pgp-aware mailserver Please be careful about terminology. In software, the suffix "-aware" is pretty weak. It could mean as little as "oh, this MIME body has a signature, so we should not touch the MIME body" (eg, to add the usual footer). I'm not sure what would be appropriate terminology here (the problem is that requirements are completely undefined, but in security applications requirements must be precisely specified -- if somebody uses your application inappropriately because you built something other than what they need, "I'm sorry" doesn't begin to cover the damage). "PGP-enabled" will do for now. > Some features could be: > 1. Automatic pubkey collection from inbound mail Collect, maybe, but enable, no. Mail as such cannot be trusted. You would basically need to do a triple handshake with the address to confirm that that address indeed has access to that key and the key's owner has the right to use that address. > 2. Outbound mail encryption and signature validation > 4. Inbound mail decryption and outbound mail signature I don't understand these pairs. Why encrypt mail *to* the server if it's only going to be decrypted on the way out? Why encrypt outgoing posts if they might have been read in the clear before being received? End-to-end encryption or signature or both seems to be the right thing. > 3. Automatic keypair generation for pgp-aware lists Out of scope for one summer IMHO. It's not obvious what the security implications are. Better to do key generation off-line. > 5. A mailinterface for organizing the encrypted lists, subscribers > public keys and trust levels > 6. A webinterface These too are out of scope. Again, security implications are unclear. > 7. PGP Information in the messages (e.g. was the incoming mail signed > by a trusted subscriber?) What does "trusted" mean? > 8. Optionally forced encryption (such a list never sends mail to an > adress to which it can't encrypt with a pubkey that has a certain > level of trust and/or won't accept inbound mail in plaintext) > 9. Optionally forced signature (inbound mail to the list has to be > signed with a key that has a certain level of trust in order to be > published) I don't understand how you propose to manage "trust levels". And "optional", if you want it optional, why are you bothering in the first place? That just makes the whole list unreliable as far as security goes, because you never know what's going to happen. > 10. pgp-aware command system. (eg optionally only accept admin mail > commands from signature-verified mail admins) I don't understand this. Mailman doesn't actually have that many admin mail commands, and the signature requirement is easily bypassed by doing the same operations from the web. > What are your thoughts on pgp in Mailman 3? My thought is "what is your threat model"? > Is this a suitable Project for the Google Summer of Code 2016? Yes, crypto support (both encryption and signatures) are a FAQ. However, nobody has ever really provided specific requirements (ie, the threat model to defend against), so it's very hard to decide what to do, and documentation of whatever is done would be impossible. > Would anyone be interested in becoming my mentor for this project? Subject to acceptance, I can be a co-mentor (I was Abhilash's mentor) but probably cannot be primary (I have another proposed project where I'm the obvious primary since I'm the only one who currently has the relevant knowledge). As far as acceptance goes, please see http://wiki.list.org/DEV/Google_Summer_of_Code_2016 for information about our requirements and procedures for student applications. Regards, Steve From saurav24007 at gmail.com Sun Feb 28 02:04:59 2016 From: saurav24007 at gmail.com (Saurav Kumar) Date: Sun, 28 Feb 2016 07:04:59 +0000 Subject: [Mailman-Developers] Hi Message-ID: Hi, I'm Saurav Kumar, sophomore at Indian Institute of Technology (BHU) Varanasi. I have deep interest in contributing to open source software though i have no prior experience. I would love to have some one to guide me, I'm am very comfortable using Pyhton3 and thus wish to contribute to mailman-core. I have done a minor project on Flask and know a bit about using Django. Thank You Saurav Kumar -- Saurav Kumar Sophomore IIT BHU Varanasi From raj.abhilash1 at gmail.com Sun Feb 28 12:15:50 2016 From: raj.abhilash1 at gmail.com (Abhilash Raj) Date: Sun, 28 Feb 2016 09:15:50 -0800 Subject: [Mailman-Developers] Hi In-Reply-To: References: Message-ID: <56D32B46.9060901@gmail.com> Hi Saurav, On 02/27/2016 11:04 PM, Saurav Kumar wrote: > Hi, > I'm Saurav Kumar, sophomore at Indian Institute of Technology (BHU) > Varanasi. I have deep interest in contributing to open source software > though i have no prior experience. I would love to have some one to guide > me, I'm am very comfortable using Pyhton3 and thus wish to contribute to > mailman-core. I have done a minor project on Flask and know a bit about > using Django. Welcome! Stephen very recently answered this question on the list that you can find here[1] in archives. You will also find link to the GSoC 2016 wiki page in there where all the resources and getting started guides are linked. If you have any more questions regarding setting up the dev environment or anything else, please don't hesitate to ask questions here or our IRC channel #mailman at freenode. [1]: http://www.mail-archive.com/mailman-developers%40python.org/msg16122.html > > Thank You > Saurav Kumar > -- thanks, Abhilash Raj From saurav24007 at gmail.com Sun Feb 28 16:42:21 2016 From: saurav24007 at gmail.com (Saurav Kumar) Date: Sun, 28 Feb 2016 21:42:21 +0000 Subject: [Mailman-Developers] Need help in installing Mailman3 Message-ID: I? want to install Mailman in a custom directory, rather than using ? ?"user ? ?site-package" directory which is default when using install without any extra parameter. I'm not able to use the -d and install-dir parameter. Please guide me what i'm doing wrong Thanks Saurav From aahanbhatt.stkabir at gmail.com Sun Feb 28 16:34:42 2016 From: aahanbhatt.stkabir at gmail.com (aahan bhatt) Date: Mon, 29 Feb 2016 03:04:42 +0530 Subject: [Mailman-Developers] Gitlab integration, GSOC'16 Message-ID: Please explain about the gitlab integration in layman terms. I would like to contribute to the project. From mark at msapiro.net Sun Feb 28 18:20:57 2016 From: mark at msapiro.net (Mark Sapiro) Date: Sun, 28 Feb 2016 15:20:57 -0800 Subject: [Mailman-Developers] [Mailman-Announce] Mailman 2.1.21 release - IMPORTANT update Message-ID: <56D380D9.1070808@msapiro.net> This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --j6S4w6u3IBpq2Lhw4NRnht7WOGMvBbU6R Content-Type: multipart/mixed; boundary="------------060207060504090803080503" This is a multi-part message in MIME format. --------------060207060504090803080503 Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable I am pleased to announce the second release candidate for Mailman 2.1.21. This fixes a serious bug in the first release candidate in that the few new list attributes weren't initialized for new lists. 2.1.21rc1 would work with lists migrated from older releases but lists created under that release were unusable. If you installed 2.1.21rc1, you should upgrade to 2.1.21rc2, and if you created new lists under 2.1.21rc1, see the attached fix_list procedure. Python 2.4 is the minimum supported, but Python 2.7 is strongly recommend= ed. This release includes a few new features and several bug fixes. See the attached README for details. Associated with these changes are six new and two modified strings in the i18n message catalogs. I strongly encourage anyone with an interest in translations of Mailman to get this release and help with updating the translations for the final 2.1.21 release which is planned for the end of February. This candidate is expected to be quite stable. All the changes since 2.1.20 have been installed in the python.org Mailman as they were developed and are running without known issues. The only reason why this is a candidate and not a final release is to allow time for i18n updates to be in the final. Mailman is free software for managing email mailing lists and e-newsletters. Mailman is used for all the python.org and SourceForge.net mailing lists, as well as at hundreds of other sites. For more information, please see our web site at one of: http://www.list.org http://www.gnu.org/software/mailman http://mailman.sourceforge.net/ http://mirror.list.org/ Mailman 2.1.21rc2 can be downloaded from https://launchpad.net/mailman/2.1/ http://ftp.gnu.org/gnu/mailman/ https://sourceforge.net/projects/mailman/ --=20 Mark Sapiro The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan --------------060207060504090803080503 Content-Type: text/plain; charset=UTF-8; name="README" Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename="README" 2.1.21rc2 (05-Feb-2016) New Features - There is a new dmarc_none_moderation_action list setting and a DEFAULT_DMARC_NONE_MODERATION_ACTION mm_cfg.py setting to optionall= y apply Munge From or Wrap Message actions to posts From: domains tha= t publish DMARC p=3Dnone. The intent is to eliminate failure reports= to the domain owner for messages that would be munged or wrapped if th= e domain published a stronger DMARC policy. See the descriptions in Defaults.py, the web UI and the bug report for more. (LP: #1539384= ) - Thanks to Jim Popovitch there is now a feature to automatically tur= n on moderation for a malicious list member who attempts to flood a l= ist with spam. See the details for the Privacy options ... -> Sender filters -> member_verbosity_threshold and member_verbosity_interval= settings in the web admin UI and the documentation in Defaults.py f= or the DEFAULT_MEMBER_VERBOSITY_* and VERBOSE_CLEAN_LIMIT settings for= information. - bin/list_members now has options to display all moderated or all non-moderated members. - There is now a mm_cfg.py setting GLOBAL_BAN_LIST which is like the individual list's ban_list but applies globally to all subscribe requests. See the description in Defaults.py for more details. i18n - Several Galician templates that were improperly encoded as iso-8859= -1 have been fixed. (LP: #1532504) - The German translation has been updated by Mirian Margiani. - The Brazilian Portugese translation has been updated by Emerson Rib= eiro de Mello. Bug fixes and other patches - Modified contrib/mmdsr to report held and banned subscriptions and = DMARC lookups in their own categories. - Fixed a bug that could create a garbled From: header with certain D= MARC mitigation actions. (LP: #1536816) - Treat a poster's address which matches an equivalent_domains addres= s as a list member for the regular_exclude_ignore check. (LP: #1526550)= - Fixed an issue that sometimes left no white space following subject_prefix. (LP: #1525954) - Vette log entries for banned subscriptions now include the source o= f the request if available. (LP: #1525733) - Submitting the user options form for a user who was asynchronously unsubscribed would throw an uncaught NotAMemberError. (LP: #152327= 3) - It was possible under some circumstances for a message to be shunte= d after a handler rejected or discarded it, and the handler would be skipped upon unshunting and the message accepted. (LP: #1519062) - Posts gated to usenet will no longer have other than the target gro= up in the Newsgroups: header. (LP: #1512866) - Invalid regexps in *_these_nonmembers, subscribe_auto_approval and ban_list are now logged. (LP: #1507241) - Refactored the GetPattern list method to simplify extending @listna= me syntax to new attributes in the future. Changed Moderate.py to use= the GetPattern method to process the *_these_nonmembers lists. - Changed CookHeaders to default to using space rather than tab as continuation_ws when folding headers. (LP: #1505878) - Fixed the 'pidfile' path in the sample init.d script. (LP: # 15034= 22) - Subject prefixing could fail to collapse multiple 'Re:' in an incom= ming message if they all came after the list's subject_prefix. This is = now fixed. (LP: #1496620) - Defended against a user submitting URLs with query fragments or POS= T data containing multiple occurrences of the same variable. (LP: #1496632) - Fixed bin/mailmanctl to check its effective rather than real uid. (LP: #1491187) - Fixed cron/gate_news to catch EOFError on opening the newsgroup. (LP: #1486263) - Fixed a bug where a delayed probe bounce can throw an AttributeErro= r. (LP: #1482940) - If a list is not digestable an the user is not currently set to receive digests, the digest options will not be shown on the user's= options page. (LP: #1476298) - Improved identification of remote clients for logging and subscribe= form checking in cases where access is via a proxy server. Thanks = to Jim Popovitch. Also updated contrib/mmdsr for log change. - Fixed an issue with shunted messages on a list where the charset fo= r the list's preferred_language had been changed from iso-8859-1 to utf-8 without recoding the list's description. (LP: #1462755) - Mailman-Postfix integration will now add mailman at domain entries in data/virtual-mailman for each domain in POSTFIX_STYLE_VIRTUAL_DOMAI= NS which is a host_name of a list. This is so the addresses which are= exposed on admin and listinfo overview pages of virtual domains wil= l be deliverable. (LP: #1459236) - The vette log entry for DMARC policy hits now contains the list nam= e. (LP: #1450826) - If SUBSCRIBE_FORM_SECRET is enabled and a user's network has a load= balancer or similar in use the POSTing IP might not exactly match t= he GETting IP. This is now accounted for by not requiring the last octet (16 bits for ipV6) to match. (LP: #1447445) - DKIM-Signature:, DomainKey-Signature: and Authentication-Results: headers are now removed by default from posts to anonymous lists. (LP: #1444673) - The list admin web UI Mambership List search function often doesn't= return correct results for search strings (regexps) that contain non-ascii characters. This is partially fixed. (LP: #1442298) --------------060207060504090803080503 Content-Type: text/plain; charset=UTF-8; name="fix_list" Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename="fix_list" The following is a transcript of a withlist session that fixes a list without new attributes. It invokes withlist on 'listname' looks at the lists dmarc_none_moderation_action which throws an Attribute= Error looks at the lists data_version which is 110. sets it to 109. saves and reloads the list. verifies the data_version is now 110 again and dmarc_none_moderation_acti= on exists. Wnlocks the list and exits. msapiro at mail:~/mm$ bin/withlist -l listname Loading list listname (locked) The variable `m' is the listname MailList instance >>> m.dmarc_none_moderation_action Traceback (most recent call last): File "", line 1, in File "/srv/mailman/Mailman/MailList.py", line 147, in __getattr__ raise AttributeError, name AttributeError: dmarc_none_moderation_action >>> m.data_version 110 >>> m.data_version =3D 109 >>> m.Save() >>> m.data_version 109 >>> m.Load() >>> m.data_version 110 >>> m.dmarc_none_moderation_action False >>> m.Unlock() >>>=20 Finalizing Another way is to run bin/config_list on the list with an input file cont= aining the single line mlist.data_version =3D 109 --------------060207060504090803080503-- --j6S4w6u3IBpq2Lhw4NRnht7WOGMvBbU6R Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iEYEARECAAYFAla0RQgACgkQVVuXXpU7hpOFaQCeMErj6sUikNgEPuMQ/ArRfxGG fi4AoKbzrE+yTSA9NTtS6DVjRFtsGf80 =ovSj -----END PGP SIGNATURE----- --j6S4w6u3IBpq2Lhw4NRnht7WOGMvBbU6R-- -------------- next part -------------- _______________________________________________ Mailman-announce mailing list Mailman-announce at python.org https://mail.python.org/mailman/listinfo/mailman-announce Member address: mark at msapiro.net Unsubscribe: https://mail.python.org/mailman/options/mailman-announce/mark%40msapiro.net From mark at msapiro.net Sun Feb 28 18:32:00 2016 From: mark at msapiro.net (Mark Sapiro) Date: Sun, 28 Feb 2016 15:32:00 -0800 Subject: [Mailman-Developers] Mailman 2.1.21 Final Release Message-ID: <56D38370.6060602@msapiro.net> Please ignore the spurious, fumble fingered post of a few minutes ago. I am pleased to announce the release of Mailman 2.1.21. Python 2.4 is the minimum supported, but Python 2.7 is strongly recommended. This release includes a few new features and several bug fixes. Most of the changes since the second release candidate are i18n updates, but there are a few more bug fixes. See the attached README for details. Mailman is free software for managing email mailing lists and e-newsletters. Mailman is used for all the python.org and SourceForge.net mailing lists, as well as at hundreds of other sites. For more information, please see our web site at one of: http://www.list.org http://www.gnu.org/software/mailman http://mailman.sourceforge.net/ http://mirror.list.org/ Mailman 2.1.21 can be downloaded from https://launchpad.net/mailman/2.1/ http://ftp.gnu.org/gnu/mailman/ https://sourceforge.net/projects/mailman/ -- Mark Sapiro The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan -------------- next part -------------- 2.1.21 (28-Feb-2016) New Features - There is a new dmarc_none_moderation_action list setting and a DEFAULT_DMARC_NONE_MODERATION_ACTION mm_cfg.py setting to optionally apply Munge From or Wrap Message actions to posts From: domains that publish DMARC p=none. The intent is to eliminate failure reports to the domain owner for messages that would be munged or wrapped if the domain published a stronger DMARC policy. See the descriptions in Defaults.py, the web UI and the bug report for more. (LP: #1539384) - Thanks to Jim Popovitch there is now a feature to automatically turn on moderation for a malicious list member who attempts to flood a list with spam. See the details for the Privacy options ... -> Sender filters -> member_verbosity_threshold and member_verbosity_interval settings in the web admin UI and the documentation in Defaults.py for the DEFAULT_MEMBER_VERBOSITY_* and VERBOSE_CLEAN_LIMIT settings for information. - bin/list_members now has options to display all moderated or all non-moderated members. - There is now a mm_cfg.py setting GLOBAL_BAN_LIST which is like the individual list's ban_list but applies globally to all subscribe requests. See the description in Defaults.py for more details. i18n - The Japanese translation has been updated by Yasuhito FUTATSUKI. - Also thanks to Miloslav Trmac and Yasuhito FUTATSUKI, the l10n for Mailman's bin/ commands has been fixed to display using the character set of the user's work station even when Mailman's character set for the language is different. Because this has not been tested over a wide set of locales, there is an mm_cfg.py switch DISABLE_COMMAND_LOCALE_CSET to disable it if it causes problems. (LP: #558167) - The Polish translation has been updated by Stefan Plewako. - The German translation has been updated by Mirian Margiani and Bernhard Schmidt. - The Russian translation has been updated by Danil Smirnov. - Several Galician templates that were improperly encoded as iso-8859-1 have been fixed. (LP: #1532504) - The Brazilian Portugese translation has been updated by Emerson Ribeiro de Mello. Bug fixes and other patches - If DMARC lookup fails to find a policy, also try the Organizational Domain. Associated with this is a new mm_cfg.py setting DMARC_ORGANIZATIONAL_DOMAIN_DATA_URL which sets the URL used to retrieve the data for the algorithm that computes the Organizational Domain. See https://publicsuffix.org/list/ for info. (LP: #1549420) - Modified contrib/mmdsr to correctly report No such list names that contain ". - User's "Acknowledge" option will now be honored for posts to anonymous lists. (LP: #1546679) - Fixed a typo in the Non-digest options regular_exclude_ignore description thanks to Yasuhito FUTATSUKI. - DEFAULT_PASS_MIME_TYPES has been changed to accept text/plain sub-parts from message/rfc822 parts and multipart parts other than mixed and alternative and also accept pgp signatures. This only applies to newly created lists and other than pgp signatures, still only accepts text/plain. (LP: #1517446) - Modified contrib/mmdsr to report held and banned subscriptions and DMARC lookups in their own categories. - Fixed a bug that could create a garbled From: header with certain DMARC mitigation actions. (LP: #1536816) - Treat a poster's address which matches an equivalent_domains address as a list member for the regular_exclude_ignore check. (LP: #1526550) - Fixed an issue that sometimes left no white space following subject_prefix. (LP: #1525954) - Vette log entries for banned subscriptions now include the source of the request if available. (LP: #1525733) - Submitting the user options form for a user who was asynchronously unsubscribed would throw an uncaught NotAMemberError. (LP: #1523273) - It was possible under some circumstances for a message to be shunted after a handler rejected or discarded it, and the handler would be skipped upon unshunting and the message accepted. (LP: #1519062) - Posts gated to usenet will no longer have other than the target group in the Newsgroups: header. (LP: #1512866) - Invalid regexps in *_these_nonmembers, subscribe_auto_approval and ban_list are now logged. (LP: #1507241) - Refactored the GetPattern list method to simplify extending @listname syntax to new attributes in the future. Changed Moderate.py to use the GetPattern method to process the *_these_nonmembers lists. - Changed CookHeaders to default to using space rather than tab as continuation_ws when folding headers. (LP: #1505878) - Fixed the 'pidfile' path in the sample init.d script. (LP: # 1503422) - Subject prefixing could fail to collapse multiple 'Re:' in an incomming message if they all came after the list's subject_prefix. This is now fixed. (LP: #1496620) - Defended against a user submitting URLs with query fragments or POST data containing multiple occurrences of the same variable. (LP: #1496632) - Fixed bin/mailmanctl to check its effective rather than real uid. (LP: #1491187) - Fixed cron/gate_news to catch EOFError on opening the newsgroup. (LP: #1486263) - Fixed a bug where a delayed probe bounce can throw an AttributeError. (LP: #1482940) - If a list is not digestable an the user is not currently set to receive digests, the digest options will not be shown on the user's options page. (LP: #1476298) - Improved identification of remote clients for logging and subscribe form checking in cases where access is via a proxy server. Thanks to Jim Popovitch. Also updated contrib/mmdsr for log change. - Fixed an issue with shunted messages on a list where the charset for the list's preferred_language had been changed from iso-8859-1 to utf-8 without recoding the list's description. (LP: #1462755) - Mailman-Postfix integration will now add mailman at domain entries in data/virtual-mailman for each domain in POSTFIX_STYLE_VIRTUAL_DOMAINS which is a host_name of a list. This is so the addresses which are exposed on admin and listinfo overview pages of virtual domains will be deliverable. (LP: #1459236) - The vette log entry for DMARC policy hits now contains the list name. (LP: #1450826) - If SUBSCRIBE_FORM_SECRET is enabled and a user's network has a load balancer or similar in use the POSTing IP might not exactly match the GETting IP. This is now accounted for by not requiring the last octet (16 bits for ipV6) to match. (LP: #1447445) - DKIM-Signature:, DomainKey-Signature: and Authentication-Results: headers are now removed by default from posts to anonymous lists. (LP: #1444673) - The list admin web UI Mambership List search function often doesn't return correct results for search strings (regexps) that contain non-ascii characters. This is partially fixed. (LP: #1442298) -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 181 bytes Desc: OpenPGP digital signature URL: From raj.abhilash1 at gmail.com Sun Feb 28 18:45:36 2016 From: raj.abhilash1 at gmail.com (Abhilash Raj) Date: Sun, 28 Feb 2016 15:45:36 -0800 Subject: [Mailman-Developers] Need help in installing Mailman3 In-Reply-To: References: Message-ID: <56D386A0.3050100@gmail.com> Hi Sourav, On 02/28/2016 01:42 PM, Saurav Kumar wrote: > I? want to install Mailman in a custom directory, rather than using ? > ?"user ? > ?site-package" directory which is default when using install without any > extra parameter. > I'm not able to use the -d and install-dir parameter. Please guide me what > i'm doing wrong What do you mean by a custom directory? By default, setuptools is configured to install packages in a particular directory on each linux distribution (probably on OSX and Windows too, not sure about that. However, if you want to setup mailman (or any python package) for development, you can try 'python setup.py develop' instead of install. > > Thanks > Saurav > _______________________________________________ > Mailman-Developers mailing list > Mailman-Developers at python.org > https://mail.python.org/mailman/listinfo/mailman-developers > Mailman FAQ: http://wiki.list.org/x/AgA3 > Searchable Archives: http://www.mail-archive.com/mailman-developers%40python.org/ > Unsubscribe: https://mail.python.org/mailman/options/mailman-developers/raj.abhilash1%40gmail.com > > Security Policy: http://wiki.list.org/x/QIA9 > -- thanks, Abhilash Raj From stephen at xemacs.org Sun Feb 28 22:08:50 2016 From: stephen at xemacs.org (Stephen J. Turnbull) Date: Mon, 29 Feb 2016 12:08:50 +0900 Subject: [Mailman-Developers] ARC module implementation [was: GSOC 2016] In-Reply-To: References: <22196.7170.187271.561289@turnbull.sk.tsukuba.ac.jp> <22203.1955.778022.464138@turnbull.sk.tsukuba.ac.jp> <22208.11596.382963.821315@turnbull.sk.tsukuba.ac.jp> <22212.30504.386549.259204@turnbull.sk.tsukuba.ac.jp> <22216.8262.735974.257856@turnbull.sk.tsukuba.ac.jp> <22218.23918.598335.172841@turnbull.sk.tsukuba.ac.jp> Message-ID: <22227.46658.971187.15287@turnbull.sk.tsukuba.ac.jp> [Aside @Barry: what's the current state of DMARC handling in Mailman 3? (I assume below that there isn't any yet.) I guess porting some or all of the Mailman 2 facilities be a good GSoC project?] Please keep GSoC traffic on Mailman-Developers. Other developers have need-to-know, as do other students. Also, there's a good chance one of the other developers will get around to answering before I do, especially as I just got a pile of work dumped on me at work (one of our adjunct faculty got suddenly recalled to the Bank of Japan, leaving 8 units of courses unstaffed from April 1). I'll stay current with Mailman as much as a I can, but for the next few weeks that means responding to non-work mail in 48 hours. > The deliver method in deliver.py is responsible for sending the > messages, and the errors are caught here and then classified as > permanent or temporary. So currently, if I am not wrong, all the > rejections that Mailman faces due to the dmarc reject policy of > some domains, permanent error 550 I think, are caught here if there > are any. I don't think so. You'll not catch them in mta.deliver.py, which talks to your outgoing SMTP gateway, which normally does not do DMARC processing. On the other hand, the outgoing gateway doesn't make Mailman wait until it knows what its remote peer will do; it queues the message. So any rejections you see in mta.deliver.deliver() are a local matter. Permanent failures likely indicate a configuration problem, while temporary failures are probably due to maintenance on the MTA or network problems or the like. It's the final recipient MTA[1] that does DMARC processing, perhaps hours or days after deliver() has returned :-). At that point a (new!) bounce message is created and sent back through the mail system to Sender or Errors-To, which is -bounces. So this is handled by the bounce runner, not the outgoing runner. > I was curious to know how this specific problem is being handled by > mailman right now. As in, how are the cases of subscribers of yahoo > using mailman currently being handled? First, subscribers using Yahoo! are not the problem. The DMARC problem is that when anybody from Yahoo! posts, *all* subscribers are at risk[2] of having their service bounce the post. If it was just Yahoo! subscribers, we wouldn't have to do anything except tell them that their mail service is deliberately sabotaged by Yahoo! It's the collateral damage to well-behaved third parties that makes DMARC abuse by AOL and Yahoo! so horrible. Second, in Mailman 3, currently nothing is done AFAIK. The first patch was submitted against Mailman 2 before release of Mailman 3.0. People using Mailman 3 at this point are unlikely to have large populations of p=reject posters. In Mailman 2, there are a number of options. The one I recommend is adding aol.com and yahoo.com to the subscription and poster ban lists.<0.7 wink/> This has the advantage (?) of also being usable in Mailman 3. A second is to configure the list without transforming the message at all (no Subject tags, header, or footer), thus preserving any valid DKIM signature. This also works in Mailman 3. These are standard configuration options which you might use anyway for completely different reasons. However, they sort undermine the argument for using Mailman in the first place for many sites. The third, more pleasant, alternative is to configure the list to transform the message by changing the *address* in RFC5322.From to the list, and putting some amount of user identity in the display name of the RFC5322.From (eg, "From Aditya Divekar (adityadivekar03 at gmail.com) via Mailman-Users") of all messages. A fourth is to treat the message as a literal forward by including the message as a message/rfc822 part. These transformations are done by Mailman Handlers. Each has disadvantages. From-munging basically prevents the recipient from filtering on From. Few MUAs know how to handle a message "wrapped" in a MIME part pleasantly, and some (especially AppleMail on iPhone) choke badly. Finally, the most sophisticated alternative is to parse the address out of From, and do the DMARC DNS dance to determine if the sending domain has a p=reject or p=quarantine policy. If so, use either the From-munging strategy or the MIME-wrapping strategy. These still have the disadvantages described above, but they only apply to posts From domains abusing DMARC. I don't think any of these would be that hard to port to Mailman 3, it just hasn't been done yet. Footnotes: [1] This concept is a little ambiguous, in the case of things like .forward files that point to another mail server. [2] If their mail service participates in DMARC (there's no way of knowing that unless you're a user there), and if they don't do their own mitigation (eg, GMail treats many messages from p=reject domains as p=quarantine). From saurav24007 at gmail.com Mon Feb 29 03:02:55 2016 From: saurav24007 at gmail.com (Saurav Kumar) Date: Mon, 29 Feb 2016 08:02:55 +0000 Subject: [Mailman-Developers] Need help in installing Mailman3 In-Reply-To: <56D386A0.3050100@gmail.com> References: <56D386A0.3050100@gmail.com> Message-ID: I wanted to install the new packages in a virtualenv On Mon, 29 Feb 2016, 05:15 Abhilash Raj, wrote: > Hi Sourav, > > On 02/28/2016 01:42 PM, Saurav Kumar wrote: > > I? want to install Mailman in a custom directory, rather than using ? > > ?"user ? > > ?site-package" directory which is default when using install without any > > extra parameter. > > I'm not able to use the -d and install-dir parameter. Please guide me > what > > i'm doing wrong > > What do you mean by a custom directory? By default, setuptools is > configured to install packages in a particular directory on each linux > distribution (probably on OSX and Windows too, not sure about that. > > However, if you want to setup mailman (or any python package) for > development, you can try 'python setup.py develop' instead of install. > > > > > Thanks > > Saurav > > _______________________________________________ > > Mailman-Developers mailing list > > Mailman-Developers at python.org > > https://mail.python.org/mailman/listinfo/mailman-developers > > Mailman FAQ: http://wiki.list.org/x/AgA3 > > Searchable Archives: > http://www.mail-archive.com/mailman-developers%40python.org/ > > Unsubscribe: > https://mail.python.org/mailman/options/mailman-developers/raj.abhilash1%40gmail.com > > > > Security Policy: http://wiki.list.org/x/QIA9 > > > > -- > thanks, > Abhilash Raj > -- Saurav Kumar Sophomore IIT BHU Varanasi From raj.abhilash1 at gmail.com Mon Feb 29 04:36:25 2016 From: raj.abhilash1 at gmail.com (Abhilash Raj) Date: Mon, 29 Feb 2016 01:36:25 -0800 Subject: [Mailman-Developers] Need help in installing Mailman3 In-Reply-To: References: <56D386A0.3050100@gmail.com> Message-ID: <56D41119.7030905@gmail.com> On 02/29/2016 12:02 AM, Saurav Kumar wrote: > I wanted to install the new packages in a virtualenv Then, just running 'python setup.py install' from the source or 'pip install ' when the the virtualenv is activated should install the package inside the virtualenv. Notice that you *don't*[1] have to use sudo, using sudo will install it globally. Footnotes: 1. Here I am assuming that you( the user) own the directory where the virtualenv is. > > > On Mon, 29 Feb 2016, 05:15 Abhilash Raj, > wrote: > > Hi Sourav, > > On 02/28/2016 01:42 PM, Saurav Kumar wrote: > > I? want to install Mailman in a custom directory, rather than using ? > > ?"user ? > > ?site-package" directory which is default when using install > without any > > extra parameter. > > I'm not able to use the -d and install-dir parameter. Please guide > me what > > i'm doing wrong > > What do you mean by a custom directory? By default, setuptools is > configured to install packages in a particular directory on each linux > distribution (probably on OSX and Windows too, not sure about that. > > However, if you want to setup mailman (or any python package) for > development, you can try 'python setup.py develop' instead of install. > > > > > Thanks > > Saurav > > _______________________________________________ > > Mailman-Developers mailing list > > Mailman-Developers at python.org > > https://mail.python.org/mailman/listinfo/mailman-developers > > Mailman FAQ: http://wiki.list.org/x/AgA3 > > Searchable Archives: > http://www.mail-archive.com/mailman-developers%40python.org/ > > Unsubscribe: > https://mail.python.org/mailman/options/mailman-developers/raj.abhilash1%40gmail.com > > > > Security Policy: http://wiki.list.org/x/QIA9 > > > > -- > thanks, > Abhilash Raj > > -- > > Saurav Kumar > Sophomore > IIT BHU Varanasi > -- thanks, Abhilash Raj From jonax at openmailbox.org Mon Feb 29 06:02:49 2016 From: jonax at openmailbox.org (Jonas) Date: Mon, 29 Feb 2016 12:02:49 +0100 Subject: [Mailman-Developers] GSoC Project: pgp plugin In-Reply-To: References: <56D1EC55.60909@openmailbox.org> Message-ID: <56D42559.5010202@openmailbox.org> Hi Abhilash Raj, Hi Steve Thank you both for taking the time and considering to mentor me. On 28.02.2016 04:48, Abhilash Raj wrote: > If you don't know, I worked on this project some time back in GSoC 2013. > The current state of that project is not very good and probably needs a > *lot* of rebasing to do. I did not know that. What were the problems? On 28.02.2016 04:48, Abhilash Raj wrote: > Here is a link[1] to discussions that have already been done before on this I think that link is missing, I'm very interested in looking into this. First of all, if this wasn't clear, my plan was to make a re-encryption gateway. Messages are encrypted to the listservers keypair and re-encrypted there for each of the recipients. How did your implementation work, Abhilash Raj? I had two modes of Operation in mind: (a) One that doesn't encrypt all of the mail but gives users the option to send and recieve pgp encrypted mails. This might be useful for very small private lists where some communication is protected against eavesdropping in other ways, when a list is in the progress of introducing encrypted communication or for (other) testing purposes. (b) A strict mode that keeps all the communication encrypted and won't ever send out mail without encrypting it. The strict (b) mode should certainly be default, and > 8. Optionally forced encryption (such a list never sends mail to an > adress to which it can't encrypt with a pubkey that has a certain > level of trust and/or won't accept inbound mail in plaintext) is in fact essential for the application to make sense. By Optionally, I meant that it should be possible to not force encryption which would be the (a) mode of operation. On 28.02.2016 04:48, Abhilash Raj wrote: > > I have a few small questions doubts about your features below... > > >> Some features could be: >> 1. Automatic pubkey collection from inbound mail >> > > What happens if I send a forged email with some user's email address as > FROM and use a fake key? Automatic public key collection isn't a very good > idea, you should be *very* careful about how you handle public keys. The idea was to collect the public keys so an authority (list admin) could manually set their trust levels which would be necessary in strict (b) mode in order to use a key at all. On 28.02.2016 04:48, Abhilash Raj wrote: >> 2. Outbound mail encryption and signature validation >> > > I would suggest you keep encryption as a part of extended goals in case of > GSoC. You'd be surprised how many students are not able to finish their > proposal in time. I will try to make a realistic evaluation of what's possible in my GSoC before i apply. On 28.02.2016 10:30, Stephen J. Turnbull wrote: > > 2. Outbound mail encryption and signature validation > > 4. Inbound mail decryption and outbound mail signature > > I don't understand these pairs. Why encrypt mail *to* the server if > it's only going to be decrypted on the way out? Why encrypt outgoing > posts if they might have been read in the clear before being received? On 28.02.2016 04:48, Abhilash Raj wrote: > Shouldn't both be working differently? Encrypted > emails distributed as encrypted email and signed email distributed as > signed. I paired them this way because outbound encryption and inbound signature validation requires the application to manage the subscribers public keys and inbound encryption requires the application to manage the lists keypair so I would probably implement 1. and 2. as well as 3. and 4. at the same time. 1-4 are part of the core functionality. My list is badly structured. On 28.02.2016 10:30, Stephen J. Turnbull wrote: > End-to-end encryption or signature or both seems to be the right > thing. The concept of a mailserver doesn't allow real end-to-end encryption if each recipient uses a different keypair. A user would have to have the public keys of all the subscribers at the time of sending a mail to the list and encrypt the mail for each of them. This would require modification to the client software for this to behave like a mailinglist, especially if subscribers join or leave the list. A method for real end-to-end mailinglists is described in Practical Encrypted Mailing Lists by Neal H. Walfield, feb 2016 [1] but this is not what I want to do. Another alternative would be to have a pgp proxy outside the list server that does the re-encryption but this would not be as convenient as having a re-encrypting listserver. Considering that all subscribers recieve the mail and usually listserver admins are subscribers theirselves, I think than an implementation where the listserver recieves a copy as well definitly has some uses. Users would have to be aware that the privacy of communication relies on the protection of the listserver and listserver admins would have to be aware that they need to protect the lists keypair. On 28.02.2016 10:30, Stephen J. Turnbull wrote: > Out of scope for one summer IMHO. It's not obvious what the security > implications are. Better to do key generation off-line. What security implications are you refering to? Some servers have true hardware rngs. If there isn't enough entropy, no keys should generate with /dev/random as entropy source. Having the proper crypto libraries and random number sources is in the responsibility of the user. With this concept, there will be a private key on the listserver and this should be clear to the users. It has security implications but I think they are admissible. On 28.02.2016 10:30, Stephen J. Turnbull wrote: > > 5. A mailinterface for organizing the encrypted lists, subscribers > > public keys and trust levels > > 6. A webinterface > > These too are out of scope. Again, security implications are unclear. > > > 7. PGP Information in the messages (e.g. was the incoming mail signed > > by a trusted subscriber?) > > What does "trusted" mean? Trusted means that the key has been marked as trusted by an authority (list admin). The authority has to decide what actions have to be taken to mark a key as trusted. This could be exchanging fingerprints in real life or fingerprints could be confirmed by a trusted third party (eg a list member that already knows that public key). On 28.02.2016 04:48, Abhilash Raj wrote: >> 5. A mailinterface for organizing the encrypted lists, subscribers >> public keys and trust levels > > > I would like to know more on how you plan to do this. It could be one command to list all the pubkey fingerprints along with the corresponding subscriber email adress, the trust level and another command to set the trust level of a pubkey (by its fingerprint). This would require the list admin to securely identify, for example by pgp signing command mails. I did not yet research how to implement mail commands. On 28.02.2016 10:30, Stephen J. Turnbull wrote: > Yes, crypto support (both encryption and signatures) are a FAQ. > However, nobody has ever really provided specific requirements (ie, > the threat model to defend against), so it's very hard to decide what > to do, and documentation of whatever is done would be impossible. I'm not exactly sure what a threat model is. But a scenario this would protect from is eavesdropping on list communication by a mailserver ? or anyone in case inter-mailserver communication or access to a mailbox isn't properly secured. A scenario where privacy could still be violated is when an eavesdropper gains access to the mailserver or any subscribers private key. I don't understand, why would documentation be impossible? [1]: http://hssl.cs.jhu.edu/~neal/encrypted-mailing-lists.pdf Jonas From raj.abhilash1 at gmail.com Mon Feb 29 06:32:18 2016 From: raj.abhilash1 at gmail.com (Abhilash Raj) Date: Mon, 29 Feb 2016 03:32:18 -0800 Subject: [Mailman-Developers] GSoC Project: pgp plugin In-Reply-To: <56D42559.5010202@openmailbox.org> References: <56D1EC55.60909@openmailbox.org> <56D42559.5010202@openmailbox.org> Message-ID: <56D42C42.3010201@gmail.com> On 02/29/2016 03:02 AM, Jonas wrote: > Hi Abhilash Raj, Hi Steve > > Thank you both for taking the time and considering to mentor me. > > On 28.02.2016 04:48, Abhilash Raj wrote: >> If you don't know, I worked on this project some time back in GSoC 2013. >> The current state of that project is not very good and probably needs a >> *lot* of rebasing to do. > > I did not know that. What were the problems? I did implement the signature verification for the application/pgp-signed emails and was able to get everything working too. There was some plumbing left that I never went back to finish. > > On 28.02.2016 04:48, Abhilash Raj wrote: >> Here is a link[1] to discussions that have already been done before on this > > I think that link is missing, I'm very interested in looking into this. Sorry about that, here it is http://www.mail-archive.com/mailman-developers%40python.org/msg13413.html. > > First of all, if this wasn't clear, my plan was to make a re-encryption > gateway. Messages are encrypted to the listservers keypair and > re-encrypted there for each of the recipients. > How did your implementation work, Abhilash Raj? Kinda similar, just that I mostly focused on just implementing the key management and verifying digital signatures and figuring out a message structure that would let us retain signatures from both list and original sender. > > I had two modes of Operation in mind: > (a) One that doesn't encrypt all of the mail but gives users the option > to send and recieve pgp encrypted mails. This might be useful for very > small private lists where some communication is protected against > eavesdropping in other ways, when a list is in the progress of > introducing encrypted communication or for (other) testing purposes. > (b) A strict mode that keeps all the communication encrypted and won't > ever send out mail without encrypting it. > > The strict (b) mode should certainly be default, and >> 8. Optionally forced encryption (such a list never sends mail to an >> adress to which it can't encrypt with a pubkey that has a certain >> level of trust and/or won't accept inbound mail in plaintext) > is in fact essential for the application to make sense. By Optionally, I > meant that it should be possible to not force encryption which would be > the (a) mode of operation. > > On 28.02.2016 04:48, Abhilash Raj wrote: >> >> I have a few small questions doubts about your features below... >> >> >>> Some features could be: >>> 1. Automatic pubkey collection from inbound mail >>> >> >> What happens if I send a forged email with some user's email address as >> FROM and use a fake key? Automatic public key collection isn't a very good >> idea, you should be *very* careful about how you handle public keys. > > The idea was to collect the public keys so an authority (list admin) > could manually set their trust levels which would be necessary in strict > (b) mode in order to use a key at all. > > On 28.02.2016 04:48, Abhilash Raj wrote: >>> 2. Outbound mail encryption and signature validation >>> >> >> I would suggest you keep encryption as a part of extended goals in case of >> GSoC. You'd be surprised how many students are not able to finish their >> proposal in time. > > I will try to make a realistic evaluation of what's possible in my GSoC > before i apply. > > On 28.02.2016 10:30, Stephen J. Turnbull wrote: >> > 2. Outbound mail encryption and signature validation >> > 4. Inbound mail decryption and outbound mail signature >> >> I don't understand these pairs. Why encrypt mail *to* the server if >> it's only going to be decrypted on the way out? Why encrypt outgoing >> posts if they might have been read in the clear before being received? > > On 28.02.2016 04:48, Abhilash Raj wrote: >> Shouldn't both be working differently? Encrypted >> emails distributed as encrypted email and signed email distributed as >> signed. > > I paired them this way because outbound encryption and inbound signature > validation requires the application to manage the subscribers public > keys and inbound encryption requires the application to manage the lists > keypair so I would probably implement 1. and 2. as well as 3. and 4. at > the same time. 1-4 are part of the core functionality. > My list is badly structured. > > > On 28.02.2016 10:30, Stephen J. Turnbull wrote: >> End-to-end encryption or signature or both seems to be the right >> thing. > > The concept of a mailserver doesn't allow real end-to-end encryption if > each recipient uses a different keypair. > A user would have to have the public keys of all the subscribers at the > time of sending a mail to the list and encrypt the mail for each of > them. This would require modification to the client software for this to > behave like a mailinglist, especially if subscribers join or leave the list. > > A method for real end-to-end mailinglists is described in > Practical Encrypted Mailing Lists by Neal H. Walfield, feb 2016 [1] > but this is not what I want to do. > Another alternative would be to have a pgp proxy outside the list server > that does the re-encryption but this would not be as convenient as > having a re-encrypting listserver. > > Considering that all subscribers recieve the mail and usually listserver > admins are subscribers theirselves, I think than an implementation where > the listserver recieves a copy as well definitly has some uses. > Users would have to be aware that the privacy of communication relies on > the protection of the listserver and listserver admins would have to be > aware that they need to protect the lists keypair. > > On 28.02.2016 10:30, Stephen J. Turnbull wrote: >> Out of scope for one summer IMHO. It's not obvious what the security >> implications are. Better to do key generation off-line. > > What security implications are you refering to? Some servers have true > hardware rngs. If there isn't enough entropy, no keys should generate > with /dev/random as entropy source. Having the proper crypto libraries > and random number sources is in the responsibility of the user. > With this concept, there will be a private key on the listserver and > this should be clear to the users. It has security implications but I > think they are admissible. > > On 28.02.2016 10:30, Stephen J. Turnbull wrote: >> > 5. A mailinterface for organizing the encrypted lists, subscribers >> > public keys and trust levels >> > 6. A webinterface >> >> These too are out of scope. Again, security implications are unclear. >> >> > 7. PGP Information in the messages (e.g. was the incoming mail signed >> > by a trusted subscriber?) >> >> What does "trusted" mean? > Trusted means that the key has been marked as trusted by an authority > (list admin). The authority has to decide what actions have to be taken > to mark a key as trusted. This could be exchanging fingerprints in real > life or fingerprints could be confirmed by a trusted third party (eg a > list member that already knows that public key). > > On 28.02.2016 04:48, Abhilash Raj wrote: >>> 5. A mailinterface for organizing the encrypted lists, subscribers >>> public keys and trust levels >> >> >> I would like to know more on how you plan to do this. > It could be one command to list all the pubkey fingerprints along with > the corresponding subscriber email adress, the trust level and another > command to set the trust level of a pubkey (by its fingerprint). > This would require the list admin to securely identify, for example > by pgp signing command mails. > > I did not yet research how to implement mail commands. > > On 28.02.2016 10:30, Stephen J. Turnbull wrote: >> Yes, crypto support (both encryption and signatures) are a FAQ. >> However, nobody has ever really provided specific requirements (ie, >> the threat model to defend against), so it's very hard to decide what >> to do, and documentation of whatever is done would be impossible. > > I'm not exactly sure what a threat model is. But a scenario this would > protect from is eavesdropping on list communication by a mailserver ? or > anyone in case inter-mailserver communication or access to a mailbox > isn't properly secured. A scenario where privacy could still be violated > is when an eavesdropper gains access to the mailserver or any > subscribers private key. > > I don't understand, why would documentation be impossible? > > [1]: http://hssl.cs.jhu.edu/~neal/encrypted-mailing-lists.pdf > > Jonas > _______________________________________________ > Mailman-Developers mailing list > Mailman-Developers at python.org > https://mail.python.org/mailman/listinfo/mailman-developers > Mailman FAQ: http://wiki.list.org/x/AgA3 > Searchable Archives: http://www.mail-archive.com/mailman-developers%40python.org/ > Unsubscribe: https://mail.python.org/mailman/options/mailman-developers/raj.abhilash1%40gmail.com > > Security Policy: http://wiki.list.org/x/QIA9 > -- thanks, Abhilash Raj From terri at toybox.ca Mon Feb 29 08:53:13 2016 From: terri at toybox.ca (Terri Oda) Date: Mon, 29 Feb 2016 05:53:13 -0800 Subject: [Mailman-Developers] Fwd: [Python-Dev] [ANNOUNCE] fuzzpy In-Reply-To: References: Message-ID: <56D44D49.4080607@toybox.ca> I know I was talking to someone a while ago about maybe doing some fuzz testing on Mailman. If anyone's interested, this might be a tool worth trying out: -------- Forwarded Message -------- Subject: [Python-Dev] [ANNOUNCE] fuzzpy Date: Sun, 28 Feb 2016 21:44:39 -0600 From: Brian Cain To: python-dev at python.org ################################################################## ? ? *---------------------------------------------------* ? ? * ? ? fuzzpy: CPython fuzz tester is now available ? * ? ? * ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? * ? ? * ? ? ? ? ? ? ? ? ? Version 0.8 ? ? ? ? ? ? ? ? ? ? * ? ? * ? ? ? ? https://bitbucket.org/ebadf/fuzzpy/ ? ? ? ? * ? ? *---------------------------------------------------* I am pleased to announce the creation of a coverage-guided fuzz tester for CPython.? It's a pretty small wrapper around LLVM's libFuzzer that enables some powerful testing logic.? AFL (American Fuzzy Lop) is another popular fuzzer lately -- libFuzzer is very similar in concept to AFL.? From what I've read on list archives, Victor Stinner had previously done some good fuzz testing on CPython using fusil.? This project should expand on that concept. I'd love to get feedback, suggestions, patches and anything else the list can offer. Q: What is fuzzpy for? A: It's primarily for testing CPython itself, but could also be used for individual python projects too.? Pure-python projects will be the simplest to integrate at this point.? Also, interesting test cases output by fuzzpy may end up being useful in testing others such as pypy, pyston, etc. Q: What is a fuzz tester? A: It modifies inputs to a test case in order to find unique/rare failures. Q: What does "coverage-guided" mean? A: It means that libFuzzer is able to witness the specific code executed as a result of a given test case.? It feeds this information back into an engine to modify the test cases to optimize for coverage. Q: How can I help? A1: donate cycles: build the project and crank away on one of the existing tests.? Relative to other common fuzzing, it's awfully slow, so consider throwing as many cycles as you can afford to. A2: contribute tests: write a ~10-line python script that exercises a feature that you think could benefit from fuzz testing. A3: if there's interest, I can accept cryptocoin donations to purchase cycles on a cloud server. ################################################################## -- -Brian -------------- next part -------------- _______________________________________________ Python-Dev mailing list Python-Dev at python.org https://mail.python.org/mailman/listinfo/python-dev Unsubscribe: https://mail.python.org/mailman/options/python-dev/terri%40toybox.ca From terri at toybox.ca Mon Feb 29 08:41:27 2016 From: terri at toybox.ca (Terri Oda) Date: Mon, 29 Feb 2016 05:41:27 -0800 Subject: [Mailman-Developers] Gitlab integration, GSOC'16 In-Reply-To: References: Message-ID: <56D44A87.2090302@toybox.ca> On 2016-02-28 1:34 PM, aahan bhatt wrote: > Please explain about the gitlab integration in layman terms. I would like > to contribute to the project. Gitlab integration can mean a lot of things, and we've left this particular project pretty open to see what people will suggest. The tweet linked talks about moving a discussion from a mailing list to a bug tracker. So imagine that you have a bunch of people discussing an issue on a mailing list and after a few posts someone says "hm, that configuration didn't work the way I expected, this sounds like a bug, maybe we should file it" -- we want a way to dump the whole discussion into a bug so when someone goes to fix it they have all the information. You'd need to think a bit about privacy (were the mailing list posts public? what about the bug tracker?) and relevance of information (what if I only want some of the posts? what if I want to link the discussion but only provide a summary?) to go from the idea of "make it easier to file bugs using information from a mailing list discussion" to an actual workable interface for doing that, but that's the core of it. If you want to understand the whole gitlab integration idea better beyond that one use case, try brainstorming a little bit about how the pieces could work together. How could a mailing list integrate better with a bug tracker? How could it integrate better with merge requests? What information would people want to pass from one system to the other and why? For an example you might want to take a look at idea #27 on this page: http://blog.linuxgrrl.com/2012/03/14/mailman-brainstorm-2/ From trealtv at yandex.com Mon Feb 29 10:54:28 2016 From: trealtv at yandex.com (treal tv) Date: Mon, 29 Feb 2016 10:54:28 -0500 Subject: [Mailman-Developers] Mailman 3 custom footer In-Reply-To: <20160226192405.465401bb@subdivisions.wooz.org> References: <56CF57D1.4040203@yandex.com> <20160226192405.465401bb@subdivisions.wooz.org> Message-ID: <56D469B4.30504@yandex.com> Hey Barry! I'm a few days late to respond to this, but I just wanted to let you know I found this immensely useful, and my footer looks just like how I want it to be :) We are using Mailman 3 in production in a corporate environment. I'm willing to deal with the re-structuring of Mailman when 3.1 comes around :) Thanks again Barry. On 02/26/2016 07:24 PM, Barry Warsaw wrote: > On Feb 25, 2016, at 02:36 PM, treal tv wrote: > >> I'm looking to modify the contents of this footer so it says something >> slightly different. However, I can't find anywhere with Mailman 3 to change >> anything about the footer. > I'll describe what you have today, but it's likely the exact details will > change at some point (maybe for 3.1 if my ideas pan out). Still, how it works > today still contains the basic scheme for how I want it to work in the future. > > The thing to remember is that while Core needs to send out emails with various > templates, it can't make any assumptions about what is on the web front-end, > so text like footers can't contain URLs and such by default. Yes, this is a > bit of a mess right now because you'll still see substitutions like > $listinfo_url in some templates, even though these can't be correctly filled > in. > > So there are two parts to this answer. The first is finding the template to > use for the footer[*], and then filling in all the placeholders. > > You've found the footer-generic.txt template, but how is this used? Every > mailing list currently has an attribute called `footer_uri`, and this is set > in the list style. I've previously described how style works so I won't go > down that detour here. Suffice to say that the default style sets footer_uri > to `mailman:///$listname/$language/footer-generic.txt`. > > Notice two things about this uri. > > * It has a `mailman:` scheme. > * It has some $-placeholders. > > What happens is that in the decorate handler, when the footer is put on the > outgoing message, we first substitute some useful information into the uri's > placeholders. The values should be obvious: $listname gets the fqdn_listname > value and $language gets the preferred_language.code. So for mailing list > alpha at example.com using Italian as its preferred language, the footer_uri > gets transformed into mailman:///alpha at example.com/it/footer-generic.txt. > > Now we start to look that up. Of course, if the scheme were http: or https:, > we'd just issue a request to that url and use whatever we find. The intent is > that in Postorius or some other CMS or web resource repository, you'd be able > to define a custom template appropriate for your site. You'd set the list's > footer_uri to something like https://my.cms.example.com/footer.txt and since > there are no placeholders, Mailman just grabs the text at that url and viola! > you've got your footer. Supporting the placeholders allows your CMS to > provide different footers for different lists, and of course you'll want to > provide different footers for different human languages. > > But okay, now we have mailman:///alpha at example.com/it/footer-generic.txt and > we have to look that up. What are the rules for mailman: urls? > > mailman: urls are shorthand for internal resources, homed in the source code > directory on the file system. The search order is well documented, but not > easily discovered so here's the documentation: > > https://gitlab.com/mailman/mailman/blob/master/src/mailman/utilities/i18n.py#L53 > > You can see how there's a search hierarchy, such that if you only want a > single template for all your lists on the site, you can define it once on the > file system, and Mailman will just find that one. Similarly, you could have a > template that applies to all lists within the same domain, or have list > specific templates. So, bottom line is, drop a file in the template_dir > defined in your mailman.cfg and set your list's footer_uri to a mailman: url > that points here, and Bob's your uncle. > > Now the second step alluded to earlier. Once you've located the template, the > template *itself* can have substitution placeholders, and for message headers > and footers (i.e. message decorations) they get filled in here: > > https://gitlab.com/mailman/mailman/blob/master/src/mailman/handlers/decorate.py#L228 > > So you can see how your template can contain information about the mailing > list's name, hostname, description, etc. `extradict` comes into play (or at > least *should* ) when messages are personalized, such that some > information specific to the user could be added, e.g. their unsubscribe link. > This may not be fully plumbed out right now though. > > Briefly then, how will this be different in the future? I'm still working out > the design, but roughly, there will be a new ITemplateManager that holds > mappings between template names, a context (e.g. mailing list, domain, or > site), URIs, and "resource dictionaries". This ITemplateManager would be a > top-level REST resource so Postorius and other REST clients could directly > manipulate these mappings. > > Then you'd be able to say, through REST, "set the footer template, for all > mailing lists on example.com, to https://my.cms.example.com/footer.txt`. When > needed, the core delivery engine would then ask the template manager for the > contents of the footer template for a given mailing list, and it would get > back a bunch of text (appropriately cached, with various cache management > knobs for efficiency). Mailman would then fill in substitution variables in > this footer template as before, but it would *also* do a query for the > "resource dictionary" which would be e.g. a JSON mapping keys to values. This > would then let your CMS also define additional bits of data to shove into the > footer when it gets sent out. > > Cheers, > -Barry > > [*] and when you read "footer", think "just about any template eventually". > _______________________________________________ > Mailman-Developers mailing list > Mailman-Developers at python.org > https://mail.python.org/mailman/listinfo/mailman-developers > Mailman FAQ: http://wiki.list.org/x/AgA3 > Searchable Archives: http://www.mail-archive.com/mailman-developers%40python.org/ > Unsubscribe: https://mail.python.org/mailman/options/mailman-developers/trealtv%40yandex.com > > Security Policy: http://wiki.list.org/x/QIA9 From barry at list.org Mon Feb 29 13:09:04 2016 From: barry at list.org (Barry Warsaw) Date: Mon, 29 Feb 2016 13:09:04 -0500 Subject: [Mailman-Developers] ARC module implementation [was: GSOC 2016] In-Reply-To: <22227.46658.971187.15287@turnbull.sk.tsukuba.ac.jp> References: <22196.7170.187271.561289@turnbull.sk.tsukuba.ac.jp> <22203.1955.778022.464138@turnbull.sk.tsukuba.ac.jp> <22208.11596.382963.821315@turnbull.sk.tsukuba.ac.jp> <22212.30504.386549.259204@turnbull.sk.tsukuba.ac.jp> <22216.8262.735974.257856@turnbull.sk.tsukuba.ac.jp> <22218.23918.598335.172841@turnbull.sk.tsukuba.ac.jp> <22227.46658.971187.15287@turnbull.sk.tsukuba.ac.jp> Message-ID: <20160229130904.34c02910@subdivisions.wooz.org> On Feb 29, 2016, at 12:08 PM, Stephen J. Turnbull wrote: >[Aside @Barry: what's the current state of DMARC handling in Mailman >3? (I assume below that there isn't any yet.) I guess porting some >or all of the Mailman 2 facilities be a good GSoC project?] Correct! Cheers, -Barry -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 819 bytes Desc: OpenPGP digital signature URL: From manish.bisht490 at gmail.com Mon Feb 29 13:25:45 2016 From: manish.bisht490 at gmail.com (Manish Bisht) Date: Mon, 29 Feb 2016 23:55:45 +0530 Subject: [Mailman-Developers] GSOC 16 Message-ID: Hello devs, Google is announcing the list of selected organisation for GSOC 16 in few hours. Hope you all will like to join. Mentor are welcome as they are needed to guide the students and students are also welcome who would like to contribute. Think about the project idea and post it to mailing list for suggestions. Or choose the projects from the list. Hope we will got selected (fingers crossed) :) From barry at list.org Mon Feb 29 13:41:12 2016 From: barry at list.org (Barry Warsaw) Date: Mon, 29 Feb 2016 13:41:12 -0500 Subject: [Mailman-Developers] Regexp filtering In-Reply-To: <22225.11769.251788.350761@turnbull.sk.tsukuba.ac.jp> References: <22224.34168.628954.746288@turnbull.sk.tsukuba.ac.jp> <56D0A6DC.2000903@msapiro.net> <22225.11769.251788.350761@turnbull.sk.tsukuba.ac.jp> Message-ID: <20160229134112.3f41793e@subdivisions.wooz.org> On Feb 27, 2016, at 02:02 PM, Stephen J. Turnbull wrote: >I hope we haven't propagated this rather user-unfriendly interface >(the convention of accepting both regexps and literals, distinguishing >by "^" in column 0) to Mailman 3. Sadly, it's true. Mostly this is historical since we've essentially just ported the data and code from Mailman 2. It was implemented this way because of the limitations for data modeling, and the unsophisticated web ui in MM2. We could do better in MM3, both because we can model the data better, we can expose the distinction in REST, and Postorius could expose the difference in a much better web ui. Here's a rough sketch of what you'd have to do in the core to make this change. As always merge requests are welcome! IBan would need to have a flag which indicate whether the `email` is a literal address or a pattern. I don't think it's worth having two separate interfaces/models, but we might want to rename `email` to something more generic (`pattern` would be fine, with the understanding that is_regexp=False means the pattern is a literal). You'll need to change a bunch of checks and what-not in the ban management code. This also shows up in AcceptableAliases, so a similar change would have to be made to IAcceptableAlias, the various model implementation bits of that interface, and the implicit_dest.py rule. The REST API for these would probably need some additional work, but that can't easily be done. The trickiest part would be if IBan.email is renamed, in which case you'd probably want to continue to accept the old data format for the 3.0 API (and translate it into the new model layer), but only accept the new data format in the 3.1 API. There are examples of how to do API-version differentiation. It's still used in the *_these_nonmember checks (moderation.py rule), but as these are legacy facilities from Mailman 2, I'm not sure they need to change. Eventually, we want to remove these settings anyway, since all the functionality is implemented differently and better in MM3 already. Another odd use of this is in the `withlist` subcommand. (It's also used in the wsgiref/falcon plumbing layer, but since that's all internal implementation details, nothing here needs to change.) You'd need to handle database migrations and documentation updates too, along with a robust test suite, but there's nothing intractable about any of this. Cheers, -Barry From barry at list.org Mon Feb 29 13:48:16 2016 From: barry at list.org (Barry Warsaw) Date: Mon, 29 Feb 2016 13:48:16 -0500 Subject: [Mailman-Developers] Mailman 3 custom footer In-Reply-To: <56D469B4.30504@yandex.com> References: <56CF57D1.4040203@yandex.com> <20160226192405.465401bb@subdivisions.wooz.org> <56D469B4.30504@yandex.com> Message-ID: <20160229134816.5dd5c3e7@subdivisions.wooz.org> On Feb 29, 2016, at 10:54 AM, treal tv wrote: >We are using Mailman 3 in production in a corporate environment. I'm willing >to deal with the re-structuring of Mailman when 3.1 comes around :) Nice! Cheers, -Barry From stephen at xemacs.org Mon Feb 29 14:37:16 2016 From: stephen at xemacs.org (Stephen J. Turnbull) Date: Tue, 1 Mar 2016 04:37:16 +0900 Subject: [Mailman-Developers] Regexp filtering In-Reply-To: <20160229134112.3f41793e@subdivisions.wooz.org> References: <22224.34168.628954.746288@turnbull.sk.tsukuba.ac.jp> <56D0A6DC.2000903@msapiro.net> <22225.11769.251788.350761@turnbull.sk.tsukuba.ac.jp> <20160229134112.3f41793e@subdivisions.wooz.org> Message-ID: <22228.40428.554323.692451@turnbull.sk.tsukuba.ac.jp> Barry Warsaw writes: > IBan would need to have a flag which indicate whether the `email` > is a literal address or a pattern. I don't think it's worth having > two separate interfaces/models, but we might want to rename `email` > to something more generic (`pattern` would be fine, with the > understanding that is_regexp=False means the pattern is a literal). Are regexps sufficiently slow that *always* using a regexp would hurt performance?[1] The model I really had in mind was to always use regexps, and have a flag in the UI (Postorius) to regexp-quote when the user wants a literal. Or we could continue to have the core representation be "leading '^' iff regexp", and once again have Postorius prepend "^.*" or whatever. Footnotes: [1] XEmacs actually checks whether a regexp contains any regexp operators and automatically switches to a very fast literal search if not. From jassigrewal91 at gmail.com Mon Feb 29 14:25:06 2016 From: jassigrewal91 at gmail.com (Jasvir Singh) Date: Mon, 29 Feb 2016 11:25:06 -0800 Subject: [Mailman-Developers] Introduction Message-ID: Hello everyone. I am Jasvir Singh Grewal, a graduate student from CSU Long Beach. I am feeling very excited to introduce myself on this mailing list. I have been working on open source technologies since 3 years. Last 2 years I have spent primarily working on Django and Python and it'll be a pleasure for me if I can use my skills for Mailman. Thank You -- Jasvir Singh Grewal https://github.com/jasvir99 From stephen at xemacs.org Mon Feb 29 15:49:19 2016 From: stephen at xemacs.org (Stephen J. Turnbull) Date: Tue, 1 Mar 2016 05:49:19 +0900 Subject: [Mailman-Developers] GSoC Project: pgp plugin In-Reply-To: <56D42559.5010202@openmailbox.org> References: <56D1EC55.60909@openmailbox.org> <56D42559.5010202@openmailbox.org> Message-ID: <22228.44751.314201.936153@turnbull.sk.tsukuba.ac.jp> Jonas writes: > On 28.02.2016 10:30, Stephen J. Turnbull wrote: > > End-to-end encryption or signature or both seems to be the right > > thing. > > The concept of a mailserver doesn't allow real end-to-end encryption if > each recipient uses a different keypair. It's true that keeping things secret from the server would be hard, but at least in theory it would be possible to avoid decryption in normal operation by having the originator use a "session key" and a symmetric algorithm to do the actual encryption, and then using the user's PGP key to encrypt the session key. Then all you need to do is decrypt the session key and reencrypt it with the user's (or users') key(s). If possible (I mean I suspect it requires privacy software that doesn't currently exist) this would be nice because you don't have to worry about having copies of decrypted text in memory, in swap, and in temporary files.[1] Of course this would mean that such an MLM could not decorate the mail with header or footer, but you probably should not do that anyway because of limitations of MUAs and users in displaying/interpreting indications of what portions of a message are secure. > Considering that all subscribers recieve the mail and usually > listserver admins are subscribers theirselves, In security, you either need to take care of the unusual case, or document that the case is not covered. Wouldn't you rather have a short list of "you can't use my software in these cases: ..."? > I think than an implementation where the listserver recieves a copy > as well definitly has some uses. Copy of the encrypted message, maybe, although I would argue that archiving should default to off for an encrypted list. But decrypted, I disagree strongly, and would do my best to block integration of such a feature (it's Barry's call in the end, not mine). If you really want the server to have a decrypted copy, that is easily enough accomplished by subscribing a decryption program to the list. Our goal should be to do our best to reduce the additional attack surface presented by the MLM by default, and leave the users to their own devices in reducing security and increasing risk. > Users would have to be aware that the privacy of communication > relies on the protection of the listserver and listserver admins > would have to be aware that they need to protect the lists keypair. If there's anything we know about users, it's that they only learn about security when they experience harm from lack of it, and even then few actually do anything effective about it.[2] Admins have enough to worry about without drawing an arrow labeled "attack here" on their system (running an encrypted list already paints a bullseye on it). Whenever possible, we want random clueless behavior to *not* result in a security hole. So yes, the private keys must be protected. But as much as possible we should try to ensure that if the list server is compromised, the communications are not. >> [Automated key generation is out] of scope for one summer IMHO. >> It's not obvious what the security implications are. Better to do >> key generation off-line. > What security implications are you refering to? Some servers have > true hardware rngs. If there isn't enough entropy, no keys should > generate with /dev/random as entropy source. Having the proper > crypto libraries and random number sources is in the responsibility > of the user. I'm not talking about the availability of these basic facilities. If the system doesn't have them, none of the necessary crypto facilities will be available from Python anyway. I'm talking about the introduction of unnecessary complexity. I don't know offhand how to attack it. I'm saying that before we introduce additional complexity we need to be pretty sure that it's hard to attack. If you want to do this, you need to learn the security mindset[3]. Otherwise, you're very likely going to leave behind bugs that someday will bite somebody who is earnestly trying to do the right thing. Back in the day, I set the config on Smail 3.1.0.99 to block outside- to-outside relays, as recommended by the documentation. I was shocked to be informed a few weeks later that my box was being used as an open relay. Guess what? They documented that feature, but the implementation was a stub until 3.1.0.101. > With this concept, there will be a private key on the listserver and > this should be clear to the users. It has security implications but I > think they are admissible. Of course there has to be a private key usable by the list server because the whole purpose of the exercise is to avoid distribution of all keys to all subscribers. But stealing the keys is only one of the many ways to get past a lock. We need to protect the hinges on the other side of the door, too. The most effective way to do that is to ensure they're not exposed in the first place. > > What does "trusted" mean? > Trusted means that the key has been marked as trusted by an authority > (list admin). OK. > I'm not exactly sure what a threat model is. Find out! It's more than just a few random scenarios, I'll tell you that much. > But a scenario this would protect from is eavesdropping on list > communication by a mailserver How about one run by a subscriber? > ? or anyone in case inter-mailserver communication or access to a > mailbox isn't properly secured. You can assume that SMTP is unlikely to be secured. TLS is more common nowadays but hardly universal. What makes you think that users won't save decrypted messages? You need to document that as a threat and exclude it from those you can protect against. > I don't understand, why would documentation be impossible? Users have a habit of assuming that "secure" (or whatever favorable adjective is involved) applies to their use case. You need to be able to describe the threats that are and are not defended against in detail and very clearly. For example, one use case that has been brought up in the past is a mailing list that contains private conversations among a group of patients and the group therapist. But you can expect that in the case of a multi-therapist clinic, they will want to share a single server with a professional administrator. That server's admin presumably has access to the list keys, but you don't want that in this use case, not even if she is one of the therapists. Thus, you need to make it clear that this scenario (a server admin who should not have access to the privileged conversations) is *not* included in *your* threat model. Server admins are necessarily trusted, and excluded as sources of security breaches. If you don't clearly specify that threat model in your design, you're not going to be able to document it well enough for users to understand. Footnotes: [1] Think "the disk was stolen". Private keys on that disk? Not necessarily. What? That wasn't part of your threat model? Better say so! [2] Consider how many people continue to use Windows! [3] https://www.schneier.com/blog/archives/2008/03/the_security_mi_1.html From barry at list.org Mon Feb 29 16:16:49 2016 From: barry at list.org (Barry Warsaw) Date: Mon, 29 Feb 2016 16:16:49 -0500 Subject: [Mailman-Developers] Regexp filtering In-Reply-To: <22228.40428.554323.692451@turnbull.sk.tsukuba.ac.jp> References: <22224.34168.628954.746288@turnbull.sk.tsukuba.ac.jp> <56D0A6DC.2000903@msapiro.net> <22225.11769.251788.350761@turnbull.sk.tsukuba.ac.jp> <20160229134112.3f41793e@subdivisions.wooz.org> <22228.40428.554323.692451@turnbull.sk.tsukuba.ac.jp> Message-ID: <20160229161649.7d55d484@subdivisions.wooz.org> On Mar 01, 2016, at 04:37 AM, Stephen J. Turnbull wrote: >Are regexps sufficiently slow that *always* using a regexp would hurt >performance?[1] The model I really had in mind was to always use >regexps, and have a flag in the UI (Postorius) to regexp-quote when >the user wants a literal. I think it's less about performance and more about being explicit. My own sense is that literals are more common than regexps, and that in general regexps are more difficult to understand, but I don't have a lot of data points to back that up. >Or we could continue to have the core representation be "leading '^' >iff regexp", and once again have Postorius prepend "^.*" or whatever. In which case, the core's model wouldn't have to change, right? I really want to avoid regexp-quoted strings for literals in the model. I'm fine if the core model doesn't change but Postorius makes things nicer for the user. Cheers, -Barry -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 819 bytes Desc: OpenPGP digital signature URL: From stephen at xemacs.org Mon Feb 29 20:01:36 2016 From: stephen at xemacs.org (Stephen J. Turnbull) Date: Tue, 1 Mar 2016 10:01:36 +0900 Subject: [Mailman-Developers] Regexp filtering In-Reply-To: <20160229161649.7d55d484@subdivisions.wooz.org> References: <22224.34168.628954.746288@turnbull.sk.tsukuba.ac.jp> <56D0A6DC.2000903@msapiro.net> <22225.11769.251788.350761@turnbull.sk.tsukuba.ac.jp> <20160229134112.3f41793e@subdivisions.wooz.org> <22228.40428.554323.692451@turnbull.sk.tsukuba.ac.jp> <20160229161649.7d55d484@subdivisions.wooz.org> Message-ID: <22228.59888.504287.52585@turnbull.sk.tsukuba.ac.jp> Barry Warsaw writes: > On Mar 01, 2016, at 04:37 AM, Stephen J. Turnbull wrote: > >Or we could continue to have the core representation be "leading '^' > >iff regexp", and once again have Postorius prepend "^.*" or whatever. > > In which case, the core's model wouldn't have to change, right? That's the point, yes! > I really want to avoid regexp-quoted strings for literals in the > model. I'm fine if the core model doesn't change but Postorius > makes things nicer for the user. OK on avoidance, you're the FLUFL after all! If Terri or Florian doesn't pipe up with total hate soon (== by the time I getta round tuit), I'll file a feature request. Steve