| Commit message (Collapse) | Author | Age | Files | Lines |
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
allowing a client to cull all orphaned UIDs via ``DELETE`` on
``<api>/reserved/uids/orphans``. Note that *no guarantees* of API
stability will ever be made for resources under ``reserved``.
(LP: #1420083)
Also:
- Allow @dbconnection methods to be @staticmethods taking only one argument,
the store to perform the query on.
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
| |
reflect this.
Also, mock out sys.stderr on some tests so that their nose2 output is quieter.
A few other minor coding style consistencies.
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
| |
automatically do the right thing in most cases. Keep test_suite() in
test_documentation.py since these dynamically set up docs tests properly.
Refactor test_passwords.py so that base class tests aren't bogusly run. Also,
remove test_membership.py which was essentially disabled because it was
testing the MM2 membership API.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
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
|