summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
| * changeSandesh Kumar Agrawal2013-01-171-1/+0
| |
| * Comment fixedSandesh Kumar Agrawal2013-01-171-1/+1
| |
| * Test added to non_queue_runner bugSandesh Kumar Agrawal2013-01-178-17/+40
| |
| * LMTP runner will reject message with duplicate idsSandesh Kumar Agrawal2013-01-111-0/+5
| |
| * Final changes to non-queue runner bugSandesh Kumar Agrawal2013-01-111-1/+1
| |
| * Fixed formation of /var/queue/* for non-queue runnersSandesh Kumar Agrawal2013-01-111-7/+6
| |
| * non-queue runner should not create var/tmp/* directorySandesh Kumar Agrawal2013-01-101-7/+16
| |
| * first bug fixSandesh Kumar Agrawal2013-01-101-1/+1
| |
* | Whitespace.Barry Warsaw2013-01-201-1/+1
|/
* Bump copyright years.Barry Warsaw2013-01-01306-307/+307
|
* Bump version numbers.Barry Warsaw2012-12-312-3/+8
|
* Bump the version number.Barry Warsaw2012-12-311-1/+1
|
* Update some documentation and add a DEVELOP.rst overview.Barry Warsaw2012-12-305-48/+240
|
* Let's release 3.0b3Barry Warsaw2012-12-301-1/+1
|
* * List styles are supported through the REST API. Get the list of availableBarry Warsaw2012-12-307-107/+167
| | | | | | | | | | | styles (by name) via `.../lists/styles`. Create a list in a specific style by using POST data `style_name=<style>`. (LP: #975692) Also: * Rewrite list.rst and some of configuration.rst to be more readable as documentation. Bad-path tests are moved to unittests. * Some improvements to printing lists as part of REST responses. This eliminates the ugly u''-prefixes on strings.
* * The default list style is renamed to `legacy-default` and a newBarry Warsaw2012-12-306-182/+321
| | | | | | | | `legacy-announce` style is added. This is similar to the `legacy-default` except set up for announce-only lists. Also, major refactoring of the default style into (hopefully) smaller composable units.
* Remove mailinglist.admin_member_chunksize.Barry Warsaw2012-12-306-7/+9
|
* Remove mailinglist.private_roster.Barry Warsaw2012-12-306-6/+8
|
* Remove unused columns mailinglist.subscribe_policy,Barry Warsaw2012-12-306-16/+17
| | | | mailinglist.unsubscribe_policy, mailinglist.subscribe_auto_approval.
* Remove mailinglist.send_reminders column too.Barry Warsaw2012-12-306-11/+12
|
* * The column `mailinglist.new_member_options` was unused, and has beenBarry Warsaw2012-12-307-5/+231
| | | | removed.
* Remove some leftovers.Barry Warsaw2012-12-291-3/+0
|
* Revert the addition of the mailinglist.style_name column, as well as theBarry Warsaw2012-12-298-36/+18
| | | | | | | | | | | | IMailingList.style_name attribute. The problem is, there's nothing to guarantee that only one style will get run, and there's no sense in keeping track of the last style applied. Also: * Remove ListManager.create()'s setting of .personalize and .display_name. These should be left to the styles. (There's no reason why only these two would be set here.) * Fix some typos.
* LP: #975692 phase 1Barry Warsaw2012-12-2822-365/+293
| | | | | | | | | | | | | | | | | * Rework list style management. No more style priorities or matching.. Now, you name a style explicitly to apply and that's it. * create_list() now takes a `style` argument. * config file now names both a default style to use, and a set of paths to scan for IStyle instances. (This could be a model for other plugins.) * added IMailingList.style_name to record the last style applied, but this is going to be removed in subsequent revisions. Also: * Move find_components() and scan_module() from app/finder.py to utilities/modules.py * Cleaned up lifecycle.rst for better documentation. Some tests moved to test_lifecycle.py. * Remove some unnecessary test tearDown() code.
* Remove commented out pdb call.Barry Warsaw2012-12-261-1/+0
|
* * A user's password can be verified by POSTing to .../user/<id>/login. TheBarry Warsaw2012-12-266-3/+164
| | | | | | data must contain a single parameter `cleartext_password` and if this matches, a 204 (No Content) will be returned, otherwise a 403 (Forbidden) is returned. (LP: #1065447)
* * Finish rewrite of users.rst doctest.Barry Warsaw2012-12-263-134/+210
| | | | | | | * Migrate non-doctests to the test_users.py unittest. * Add more corner cases to the unittest. * Be sure to return a 404 when trying to get the address records of a non-existant user.
* initial refactoringBarry Warsaw2012-12-251-13/+12
|
* mergeBarry Warsaw2012-12-257-12/+80
|\
| * * Improve the --help text for the `start`, `stop`, `restart`, and `reopen`Barry Warsaw2012-12-233-4/+8
| | | | | | | | subcommands. (LP: #1035033)
| * * Two new events are triggered on membership changes: `SubscriptionEvent`Barry Warsaw2012-12-235-8/+72
| | | | | | | | | | when a new member joins a mailing list, and an `UnsubscriptionEvent` when a member leaves a mailing list. (LP: #1047286)
* | Fix the order of PasswordContext.verify() to match that of passlib.Barry Warsaw2012-12-252-5/+24
|/
* More NEWS.Barry Warsaw2012-12-171-0/+13
|
* Flesh out a few more tests.Barry Warsaw2012-12-171-2/+34
|
* * Expose a REST API for membership change (subscriptions and unsubscriptions)Barry Warsaw2012-12-1713-900/+1090
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | moderation. (LP: #1090753) * Fixed `send_goodbye_message()`. (LP: #1091321) Also: * Rewrite and refactor request.rst into better documentation, moving non-good-path tests into unittests. This doctest now only describes the IRequests API, while the bulk of the moderation documentation now lives in moderator.rst. * When a subscription request is pended, the `delivery_mode` key is now just the enum item's name, instead of the str() of the enum (which would include the class name). We know it's always going to be a DeliveryMode enum. * Refactor out the welcome_message calculation from the welcome_message_uri, since the same algorithm can apply to goodbye_message_uri. * When a _Request is retrieved, include the RequestType enum name in the data dictionary (if there is one) under the `_request_type` key. Some APIs find this useful, but it's not directly returned otherwise. * For held messages via the REST API, flatten the `data` key into the top-level JSON representation, exposing some of the _mod_* keys under their non-_mod_* equivalent. Ignore _mod_* keys we don't care about. This is an API change.
| * * Fill out the documentation on moderation notifications.Barry Warsaw2012-12-173-106/+195
| | | | | | | | * Fix LP: 1091321; typo in send_goodbye_message().
| * Fix cross-references.Barry Warsaw2012-12-172-3/+3
| |
| * * Simplify moderator.rst and requests.rst so they serve a better purpose asBarry Warsaw2012-12-177-824/+603
| | | | | | | | | | | | | | | | | | | | documentation. Move non-documentation tests into a separate unittest file. * Separate out the doctests for IRequest from the doctests for app/moderator.py and place the latter in a separate file. * Fix typo in app/membership.py (s/send_goodbye_msg/send_goodbye_message), but LP: #1091321 tracks more needed fixes in this area.
| * Complete the exposure of subscription request moderation via REST (still needsBarry Warsaw2012-12-163-75/+253
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a clean up pass and thorough unit testing). * Insert the RequestType enum name into the data dictionary returned by get_request(). Otherwise, there's really no good way to get that information, which several APIs need. * Flatten the data dictionary returned by held message JSON representations, into the JSON dictionary itself. Do a filtering and rename pass on the keys. - rename 'id' to 'request_id' - remove the redundant 'key' * Refactor some common stuff into _ModerationBase, although more refactoring is coming.
| * Expose held subscription/unsubscription requests via the API.Barry Warsaw2012-12-155-12/+156
| | | | | | | | | | | | * hold_subscription(): Don't str(mode) to get a string representation, just mode.name since we know it is a DeliveryMode. This means we don't need to split the value later in handle_subscription().
* | * Allow the getting/setting of IMailingList.subject_prefix via the REST APIBarry Warsaw2012-12-173-0/+11
|\ \ | |/ |/| | | (given by Terri Oda). (LP: #1062893)
| * Adding subject_prefix to the api (and updating the docs to include it)Terri Oda2012-12-152-0/+9
|/
* * Deleting a user through the REST API also deletes all the user's linkedBarry Warsaw2012-11-055-3/+103
| | | | | | addresses and memberships. (LP: #1074374) Also: Clean up pyflakes warning by removing an obsolete __all__ entry.
* Merge Aurélien Bompard's branch to factor our archiver-specific configurationsBarry Warsaw2012-11-049-37/+104
|\ | | | | | | | | into their own configuration files. Reworked by Barry to use the new external configuration file support, and to make test suite succeed.
| * Allow archivers to use their own configuration fileAurélien Bompard2012-09-176-31/+111
| | | | | | | | | | | | | | | | | | | | | | | | There's a new "configure" entry in the archiver's section, which can point to an ini-compatible configuration file (ConfigParser is used) for additional archiver-specific configuration. The existing archiver config have been split off schema.cfg to their own configuration files. These shipped files can be overridden by a conf file of the same name in $ext_dir. The ini-file loading method should be rather generic, in case we want the same feature somewhere else.
* | ConfigurationBarry Warsaw2012-11-0422-69/+193
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ------------- * `[passlib]path` configuration variable renamed to `[passlib]configuration`. * Postfix-specific configurations in the `[mta]` section are moved to a separate file, named by the `[mta]configuration` variable. * In the new `postfix.cfg` file, `postfix_map_cmd` is renamed to `postmap_command`. Also: * More Python 2.7-isms, use assertMultiLineEqual() directly. * Added external_configuration() and load_external() to mailman.config.config * ConfigLayer does a blanket set of [postfix]postmap_command so subtests generally won't have to.
* | A couple of minor code cleanups.Barry Warsaw2012-10-311-3/+2
| |
* | Better NEWS entryBarry Warsaw2012-10-311-1/+2
|\ \
| * | Better NEWS entryBarry Warsaw2012-10-311-1/+2
| | |
* | | merge trunkBarry Warsaw2012-10-312-3/+9
|\ \ \ | |/ / |/| |