| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |/
|
|
|
|
|
|
|
|
| |
By using `six` I think I have most of the imports squared away. There's
probably still uses of `unicode` built-ins that need fixing.
The idea is to first get the test suite running (which it doesn't yet), and
then to fix tests.
There's a bug in lazr.config which requires us to patch it for now.
|
| |\ |
|
| | |
| |
| |
| |
| |
| |
| |
| | |
While I'm shipping a tox.ini, do not yet use tox to run the tests, unless you
want to help fix the randomizations.
In the meantime, I'm also adding a few randomization fixes, and updating to
the latest falcon git trunk.
|
| | | |
|
| | |\ |
|
| | | |
| | |
| | |
| | | |
REST tests pass. This requires an as yet unmerged internal change to falcon.
|
| | | | |
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | | |
Currently, only /<api>/system and its subpaths work, but basic auth does work
too. Requires a refactoring modification to falcon.
|
| | |/
|/|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
To do this, we have to handle random test ordering, since tox explicitly sets
PYTHONHASHSEED. That's a good thing for the future Python 3 port.
Removed `mailman conf -t/--sort`; now the output is always sorted.
RFC 2369 headers are now sorted before being added.
etag repr dicts are sorted using pprint.pformat().
|
| |/ |
|
| |
|
|
|
|
|
|
| |
reflect this.
Also, mock out sys.stderr on some tests so that their nose2 output is quieter.
A few other minor coding style consistencies.
|
| |
|
|
|
|
|
|
| |
``/find`` which we've never seen before, because those members only have an
address record, not a user record. This requires a small change in the API
where the JSON response's ``address`` key now contains the URL to the
address resource, the new ``email`` key contains the email address as a
string, and the ``user`` key is optional.
|
| |\ |
|
| | |
| |
| |
| | |
* Updated docs.
|
| |\| |
|
| | | |
|
| | | |
|
| | |
| |
| |
| |
| |
| | |
We won't set archivers in the list's configuration.
Add doctests and unittests for archivers.
|
| |/ |
|
| |
|
|
| |
by Sneha Priscilla.
|
| | |
|
| |\ |
|
| | |
| |
| |
| | |
This is related to LP: #1156529.
|
| |/
|
|
|
|
|
|
| |
attributes of a mailing list's configuration. (LP: #1157881)
Also:
- template.py should only include 2013 for new copyright years.
- Move some bad-path tests in configuration.rst to test_configuration.py
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
| |
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)
|
| |
|
|
|
|
|
| |
* 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.
|
| | |
|
| |\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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.
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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.
|
| | |
| |
| |
| |
| |
| | |
* 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().
|
| |\ \
| |/
|/|
| | |
(given by Terri Oda). (LP: #1062893)
|
| |/ |
|
| |
|
|
|
|
| |
addresses and memberships. (LP: #1074374)
Also: Clean up pyflakes warning by removing an obsolete __all__ entry.
|
| |
|
|
|
|
|
| |
POST to .../addresses/<email>/verify and .../addresses/<email>/unverify
respectively. The POST data is ignored. It is not an error to verify or
unverify an address more than once, but verifying an already verified
address does not change its `.verified_on` date. (LP: #1054730)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
name or password. For passwords, you pass in the clear text password and
Mailman will hash it before storing.
Also:
* Major refactoring of validators for PUT and PATCH. Pull the common logic
out of configuration.py and put it in a PatchValidator class in
helpers.py. Also move GetterSetter to helpers.py
* Add new exception classes RESTError, UnknownPATCHRequestError,
ReadOnlyPATCHRequestError. These are used in the PatchValidator.
* Added Validator.update() which works nicely for PATCH and PUT.
|
| |\
| |
| |
| |
| |
| |
| |
| | |
Bergman).
* The canonical resource for a mailing list (and thus its self_link) is now
the URL with the list-id. To reference a mailing list, the list-id url is
preferred, but for backward compatibility, the posting address is still
accepted.
|
| |/ |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
now via the RFC 2369 `list_id` instead of the fqdn listname (i.e. posting
address). This is because while the posting address can change if the
mailing list is moved to a new server, the list id is fixed.
(LP: #1024509)
+ IListManager.get_by_list_id() added.
+ IListManager.list_ids added.
+ IMailingList.list_id added.
+ Several internal APIs that accepted fqdn list names now require list ids,
e.g. ISubscriptionService.join() and .find_members().
+ IMember.list_id attribute added; .mailing_list is now an alias that
retrieves and returns the IMailingList.
- list_id added (LP: #1024509)
|
| |
|
|
| |
Sulfrian. (LP: #1039129)
|
| |
|
|
| |
(LP: #975696)
|
| |
|
|
|
|
| |
include_list_post_header -> allow_list_posts
Also add a bunch more migration tests.
|
| | |
|
| |\
| |
| |
| | |
number of subscribed members. Given by Toshio Kuratomi.
|
| | |
| |
| |
| | |
lists
|
| |/
|
|
|
|
|
|
|
|
|
| |
"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)
|
| |
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
|
|
| |
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.
|