summaryrefslogtreecommitdiff
path: root/src/mailman/rest/docs
Commit message (Collapse)AuthorAgeFilesLines
...
* * Removed obsolete `IMailingList` attribute `generic_nonmember_action.Barry Warsaw2012-08-191-3/+0
| | | | (LP: #975696)
* Working for SQLite:Barry Warsaw2012-07-251-8/+8
| | | | | | include_list_post_header -> allow_list_posts Also add a bunch more migration tests.
* Replace flufl.password with passlib, albeit with a wrapper.Barry Warsaw2012-06-271-7/+7
|
* * Mailing list resources now have a `member_count` attribute which gives theBarry Warsaw2012-03-152-0/+8
|\ | | | | | | number of subscribed members. Given by Toshio Kuratomi.
| * Fix up doctests for the addition of volume and member_count to the rest api ↵toshio2012-03-152-1/+7
| | | | | | | | lists
* | Schema change. After discussion at Pycon, we decided to change "real_name" toBarry Warsaw2012-03-156-30/+31
|/ | | | | | | | | | | "display_name" across the board. * `IMailingList.real_name` -> `IMailingList.display_name` * `IUser.real_name` -> `IUser.display_name` * `IAddress.real_name` -> `IAddress.display_name` * Schema changes: - real_name -> display_name (mailinglist, user, address)
* * Mailing lists get multiple chains and pipelines. For example, normalBarry Warsaw2012-03-071-10/+9
| | | | | | | | | | | postings go through the `posting_chain` while messages to owners to through `owners_chain`. The default `built-in` chain is renamed to `default-posting-chain` while the `built-in` pipeline is renamed `default-posting-pipeline`. * Schema changes: - start_chain -> posting_chain - pipeline -> posting_pipeline
* * A welcome message is sent when the user confirms their subscription viaBarry Warsaw2012-03-041-1/+1
| | | | | | | | | | email. Also: - The user's Full Name is included on the To line of a welcome message. - Clean up some tests. - The welcome_message_uri for lists using the default style is set to mailman:///welcome.txt so a welcome message is sent by default.
* - Test welcome message notifications.Barry Warsaw2012-03-041-2/+2
| | | | | - welcome.txt is no longer inserted into subscribeack.txt. This latter is renamed to welcome.txt as the default welcome message.
* * Support downloading templates by URI, including mailman:// URIs. This isBarry Warsaw2012-03-031-8/+8
| | | | | | | | | | | | | used in welcome and goodbye messages, and supports both language and mailing list specifications. E.g. mailman:///test@example.com/it/welc.txt * Schema changes: - welcome_msg -> welcome_message_uri - goodbye_msg -> goodbye_message_uri - send_welcome_msg -> send_welcome_message - send_goodbye_msg -> send_goodbye_message * New `ITemplateLoader` utility.
* Flesh out the moderation doctest.Barry Warsaw2012-01-301-9/+66
|
* * Held messages can now be moderated through the REST API. Mailing listBarry Warsaw2012-01-301-0/+131
| | | | | | | | | | | | | | | resources now accept a `held` path component. GETing this returns all held messages for the mailing list. POSTing to a specific request id under this url can dispose of the message using `Action` enums. * `IRequests` interface is removed. Now just use adaptation from `IListRequests` directly (which takes an `IMailingList` object). * `handle_message()` now allows for `Action.hold` which is synonymous with `Action.defer` (since the message is already being held). * `IListRequests.get_request()` now takes an optional `request_type` argument to narrow the search for the given request. - also, print_function is now a standard __future__ import. The template has been updated, but add this to modules as you edit them.
* copybumpBarry Warsaw2012-01-011-1/+1
|
* Replace the password stuff with flufl.password.Barry Warsaw2012-01-011-1/+1
|
* * Stop adding the X-BeenThere header.Barry Warsaw2011-11-061-1/+0
| | | | | | | * Separate out the RFC 2369 header adding handler. * Dynamically calculate the `List-Id` header instead of storing it in the database. This means it cannot be changed. * Be sure to clean out any digest .mmdf files when the world is reset.
* Finally, all doctests are named .rstBarry Warsaw2011-09-232-0/+0
|
* * Preferences for addresses, users, and members can be accessed, changed, andBarry Warsaw2011-09-231-0/+233
| | | | | | deleted through the REST interface. Hierarchical, combined preferences for members, and system preferences can be read through the REST interface. (LP: #821438)
* * You can now query or change a member's `delivery_mode` attribute throughBarry Warsaw2011-09-012-1/+101
|\ | | | | | | the REST API (LP: #833132). Given by Stephen A. Goss.
| * LP 833132: add delivery_mode to member info in REST API, and make PATCHable ↵Stephen A. Goss2011-08-242-1/+108
| | | | | | | | with tests
* | * New REST resource http://.../<domain>/lists can be GETed in order to findBarry Warsaw2011-08-302-0/+54
|\ \ | | | | | | | | | | | | all the mailing lists in a specific domain (LP: #829765). Given by Stephen A. Goss.
| * | merged changes to main branchStephen A. Goss2011-08-231-9/+9
| |\|
| * | some tweaks to fix for LP: 829765 based on feedbackStephen A. Goss2011-08-232-4/+48
| | |
| * | REST API: add listing of mailing lists per domainStephen A. Goss2011-08-191-0/+18
| | |
* | | * User and Member ids are now proper UUIDs. The UUIDs are pended as unicodes,Barry Warsaw2011-08-302-5/+27
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | and exposed to the REST API as their integer equivalents. They are stored in the database using Storm's UUID type. - ISubscriptionService.get_member() now takes a UUID - IUserManager.get_user_by_id() now takes a UUID * Moderators and owners can be added via REST (LP: #834130). Given by Stephen A. Goss. - add_member() grows a `role` parameter. - ISubscriptionService.join() grows a `role` parameter. * InvalidEmailAddressError no longer repr()'s its value. * `address` -> `email` for consistency - delete_member() - ISubscriptionService.leave() * Fixed typo in app/subscriptions.py __all__ * AlreadySubscribedError: attributes are now public. * More .txt -> .rst renames.
| * | LP: #834130 add moderators and owners through REST API w/testsStephen A. Goss2011-08-251-2/+21
|/ /
* / Rename IDomain.email_host to .mail_host for consistency. Similarly in theBarry Warsaw2011-08-221-9/+9
|/ | | | REST API. (LP: #831660)
* Basic infrastructure for fixing bug 827036.Barry Warsaw2011-08-171-0/+37
| | | | | | | | | * Use zope.events to signal when a mailing list has been created or deleted. * Register a handler for the ListDeletedEvent which cleans up member subscriptions. * Relax the criteria for find_members(), both internally and in the REST API, so that the subscriber is not required. E.g. you can now find all members of a mailing list.
* * DELETE users via the REST API. (LP: #820660)Barry Warsaw2011-08-141-3/+20
|
* Remove role plurals from /lists/<fqdn_listname/rosters/<role>Barry Warsaw2011-08-141-2/+17
|
* Fixed broken API for getting a membership via role and email from a mailingBarry Warsaw2011-08-141-0/+11
| | | | | | list. (LP: #825570) Untested code is broken code.
* * New REST resource http://.../members/find can be POSTed to in order to findBarry Warsaw2011-08-131-0/+95
| | | | | | member records. Arguments are `subscriber` (email address to search for - required), `fqdn_listname` (optional), and `role` (i.e. MemberRole - optional). (LP: #799612)
* * The IMailingList attribute ``host_name`` has been renamed to ``mail_host``Barry Warsaw2011-06-162-3/+3
| | | | | for consistency. This changes the REST API for mailing list resources. (LP: #787599)
* Complete the ability to change a subscription address, both internally and viaBarry Warsaw2011-04-253-50/+264
| | | | | | | | | | | | | | the REST API. (LP: #643949) * New resource path in REST API: /addresses/<email>/memberships gets all the memberships for a given email address. * In the REST API, PUTting or PATCHing a list configuration now returns a 204 (No Content) success code instead of a 200 success code with an empty body. * When a user is subscribed with their preferred address, changing the preferred address also changes all subscriptions. * When a user is subscribed with a specific address, their subscription can be changed to any verified address they control. * Use a new naming scheme for doctests with multiple mailing lists.
* Allow users to subscribe to mailing lists through the REST API.Barry Warsaw2011-04-241-7/+67
| | | | | | | | * ISubscriptionService.join(): address -> subscriber. This is not backward compatible with the previous API! * Add get_user_by_id() to the IUserManager interface. It was already implemented, but the interface was missing the definition. * MissingUserError: new exception, purely for the REST API.
* Give IMembers a unique member id. We have to do this in order to give them aBarry Warsaw2011-04-221-31/+85
| | | | | | | | | | | | | | | | | | | | | | | path at the root of the resource tree (i.e. /members/X) and because when members can be subscribed by their IUser record (for preferred address), their canonical location cannot contain the address they are subscribed with. When their preferred address changes (without otherwise touching their membership), this address will change and that's not good for a canonical location. Other changes: * Added IMember.member_id attribute * Added ISubscriptionService.get_member() so member records can be retrieve by member id. * We can now get individual members by id via the REST API. * Extend the UniqueIDFactory so that it can take a 'context' (defaulting to None). The context is only used in the testing infrastructure so that separate files can be used for user ids and member ids. Otherwise, we'd have gaps in those sequences. * When *not* in testing mode, ensure that UIDs cannot be reused by keeping a table of all UIDs ever handed out. We *should* never get collisions, but this ensures it. * Clean up mailman.sql
* Clean up.Barry Warsaw2011-04-201-6/+0
|
* * Move members.txt corner cases to unittests.Barry Warsaw2011-04-202-78/+6
| | | | | | | * Fix a case in a list's /members API where the listname is bogus. * Catch NotAMemberError form delete_member() and return not_found. * Refactor REST helpers so that call_api() can be used in unittests without doing any prints to stdout.
* Add REST API for addresses, and change the user REST API to use it whereBarry Warsaw2011-04-192-34/+181
| | | | | | | | | | appropriate. Also: * When an Address instance is created, set its registered_on attribute. * Users may not have a password or real_name, so only include those attributes in the REST API for Users if they are set.
* Give user resources and user address resources a self_link.Barry Warsaw2011-04-191-31/+44
|
* Add REST API for removing a domain.Barry Warsaw2011-04-191-0/+21
|
* Add a test for retrieval by case-preserved address.Barry Warsaw2011-04-091-0/+7
|
* Add /users/<uid>/addresses to get all the addresses registered to a user.Barry Warsaw2011-04-091-1/+77
|
* Hook in initial password setting to user creation via API.Barry Warsaw2011-04-081-2/+25
|
* Move missing users test, and add a test for bogus email address.Barry Warsaw2011-04-061-7/+21
|
* Get users via email address through the REST API.Barry Warsaw2011-04-051-0/+9
|
* More fleshing out of the users REST API.Barry Warsaw2011-04-041-0/+68
| | | | | | | | | | | | | | * Add a 'uid factory' which allows us to return predictable unique ids for various testing purposes, e.g. user ids. This should work even in the case of cross-subprocess uid generation. * REST access to individual users, or the set of all users. * User objects now have a created_on attribute. * Users can be created through the web, but must have an email address. * Add a [devmode] 'testing' variable for communicating to qrunner subprocesses that we're running in testing mode. This allows us to coordinate factories and such in the qrunner processes. * layers.is_testing() for more consistent API. * Give AddressError a .address attribute for better diagnostics.
* Merge users into restBarry Warsaw2011-03-181-1/+1
|\
| * * Give users a unique, random, immutable user id.Barry Warsaw2011-03-181-1/+1
| | | | | | | | | | * Find users by user_id via the user manager. * Extend the repr of users to include the user id.
* | * Start fleshing out the REST API for users.Barry Warsaw2011-03-181-0/+16
|/ | | | * Remove mmsitepass.py - there is no more site password.
* Happy New Year.Barry Warsaw2011-01-011-1/+1
|