-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On May 17, 2007, at 8:39 AM, Ben Sims wrote:
> With regards to Mailman 3, from my reading I understand that this > will implement SQL-type storage for all configuration and list > data. This would completely take care of my needs in this case I > think; would you perhaps be able to give us a rough idea of progress? Things are moving along well. My work these days has been to complete the data model using Elixir and SQLAlchemy. I had a breakthrough with Elixir a few days ago, so now I'm just working on completing the model, related interfaces, and doctests. My plan is to have a working database backend asap so I can unbreak all the higher level stuff that depends on the data model. Right now I'm working in a branch, but I am going to very soon merge this back to the trunk, even though it will break the trunk. I speak more about this in some later postings. I'm trying to be very diligent about writing interfaces to describe how Mailman interacts with the data model, so you could potentially back it with different storage mechanisms. The idea is that you might want to put your list data in Mailman's default SQLite database, but you might want to get your user data out of your enterprise database. By writing your own implementations of Mailman's interfaces, you should be able to do that. > As a garden-variety PHP developer and Mailman rookie, I doubt how > far I am capable of going deep into Mailman itself to implement a > solution for this. I would be happy to do the research before > dismissing the idea though, if you could point me in the direction > of some bedtime reading on the subject. Given the time I have > available and the limited functionality required, I'm very much > leaning towards the cheapest hack option - which seems likely to be > simply executing command line commands. I wonder if there isn't a cleaner way to integrate PHP and Python. Does anybody know? Or is some form of IPC really the only way to go? Writing command line interfaces to provide the functionality you want should not be difficult at all, if you are comfortable writing Python. > Regarding your questions: > > -- What functionality do you want to expose? > > Not much. To start with, creating and removing lists and adding and > deleting subscribers would probably be enough. Creating and removing lists are a bit hackish now because the logic to do so is spread out in a couple of places. However see the bin/ newlist script or Mailman/Cgi/newlist.py module for examples. The former may already do what you need here. This will get much easier in MM3. Likewise for adding and deleting subscribers. > -- How would you handle security? > > To be honest, I hadn't even got as far as thinking about that, > since I'm not really clear on the mechanisms involved. > > - - Will you have to re-implement much of the CGI logic? > > Again, I haven't gone through closely enough to give a decent > answer. If I was hacking something up which did use the Web > Interface as a gateway, I would be more likely to use Mechanize to > fake a browser and do the intereacting. Ugly I know, but I'm > familiar with that so I could get it to work. Probably much easier to use the existing command line scripts, augmenting or writing your own as needed. Remember you can also do a lot with bin/withlist scripts. Cheers, - -Barry -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.7 (Darwin) iQCVAwUBRk4hh3EjvBPtnXfVAQIQ+AP9HupG3WJ9X8hD+vsowrLCq5FwWlw194P9 iB2qHhTbafFlURf/7dXt+JLfX7UjTchydsBPaNR00UwBUZcMohTXCbJJSEi+kMwg 7p32bknigvmC/3qujLzkZz08lwUo86mK6e7q/w55O6fb1DAXVfYiw+1LpBJagZ7h E/iTlLiJHOI= =yIkR -----END PGP SIGNATURE----- _______________________________________________ Mailman-Developers mailing list [email protected] http://mail.python.org/mailman/listinfo/mailman-developers Mailman FAQ: http://www.python.org/cgi-bin/faqw-mm.py Searchable Archives: http://www.mail-archive.com/mailman-developers%40python.org/ Unsubscribe: http://mail.python.org/mailman/options/mailman-developers/archive%40jab.org Security Policy: http://www.python.org/cgi-bin/faqw-mm.py?req=show&file=faq01.027.htp
