summaryrefslogtreecommitdiff
path: root/src/mailman/utilities/uid.py (unfollow)
Commit message (Collapse)AuthorFilesLines
2011-04-08add_member()Barry Warsaw7-14/+44
- As the most common interface for adding new members (and users), adapt the password storing bit to storing only encrypted passwords in the database. schema.cfg: - Remove the creator_pw_file and site_pw_file as they are obsolete. - Add password_schema key for defining the default password encryption scheme. mailman.sql, user.py: - Store the password as a binary blob instead of as unicode text.
2011-04-08Add an attribute for getting the IUser record from an IMember record. This isBarry Warsaw3-1/+15
pure convenience by way of an IUserManager lookup.
2011-04-07make_user_friendly_password(): Ported from Mailman 2.1.Barry Warsaw4-4/+77
2011-04-06Move missing users test, and add a test for bogus email address.Barry Warsaw1-7/+21
2011-04-05Get users via email address through the REST API.Barry Warsaw2-2/+24
2011-04-04Removing debugging printBarry Warsaw1-1/+0
2011-04-04More fleshing out of the users REST API.Barry Warsaw9-18/+180
* 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.
2011-04-01* Re-organize the interface between buildout.cfg and the zope.testing layerBarry Warsaw11-35/+161
initialization. buildout.cfg is now really simple; it calls one method. That method does all the relevant layer initializations. This better localizes what has to be set up before testing can even begin. * IUsers now have a created_on property which contains the datetime at which the user record was created. * Rework the date and uid factories so that they consult the MockAndMonkeyLayer for the current testing flag. Also, those factories register themselves with the layer so that they'll get automatically reset between tests, without the layer actually having to know about them. * Move the User model object initialization into User.__init__() from the user manager. The User now also adds itself to the store. * Add a 'uid factory' for unique id creation, which is test suite aware.
2011-03-18Basic REST users URL.Barry Warsaw1-0/+41
2011-03-18* Give users a unique, random, immutable user id.Barry Warsaw11-21/+79
* Find users by user_id via the user manager. * Extend the repr of users to include the user id.
2011-03-18* Start fleshing out the REST API for users.Barry Warsaw4-113/+62
* Remove mmsitepass.py - there is no more site password.
2011-03-17Reimplement wrap() using modern techniques, and finally get rid of Utils.py!Barry Warsaw19-173/+263
2011-03-16Update comment.Barry Warsaw1-1/+5
2011-03-16Utils.maketext() and Utils.findtext() are gone.Barry Warsaw13-222/+100
2011-03-16make() and some tests.Barry Warsaw2-4/+113
2011-03-16Checkpointing migration of findtext() and maketext() out of Utils.py. TestsBarry Warsaw2-15/+254
added. TODO: flesh out make().
2011-03-15Basic tests for Utils.py findtext(). This will go away, but for now it'sBarry Warsaw5-3/+157
useful for ensuring current functionality.
2011-02-26More eradication of Utils.py.Barry Warsaw3-42/+43
2011-02-25Cue Freddy Mercury. Another one bites the dust.Barry Warsaw4-10/+11
2011-02-25nntpsplit() is replaced by lazr.config.as_host_port().Barry Warsaw3-16/+6
2011-02-25Two more unused functions removed. Utils.py, your days are numbered.Barry Warsaw1-20/+0
2011-02-25Move oneline() out of Utils.py.Barry Warsaw8-24/+46
2011-02-25Remove an unused function from Utils.py.Barry Warsaw1-55/+0
2011-02-25Eliminate Utils.get_pattern() and in the process, completely revampBarry Warsaw12-39/+462
subscription bans so as not to have to rely on BLOBS or pickles in the database. Also, be sure to include .rst files in both doctests and in the packaged tarballs. With the now awesome reST mode for Emacs, I plan to rename all .txt doctest files to .rst.
2011-02-25Move passwords module to the utilities subpackage.Barry Warsaw4-6/+2
2011-01-31Fixed a typo in add_member() which prevented subscribing an email address thatBarry Warsaw6-16/+110
was already linked to a user. Found by Florian Fuchs who also provided the fix, though I implemented the test differently. LP: #710182 Also, refactor the "reset the world" functionality ConfigLayer.testTearDown() so that it could be used by other test code.
2011-01-06Implement the email address validator as a utility for easier pluggability.Barry Warsaw7-42/+72
2011-01-04Remove some unused/untested stuff regarding password creation from Utils.py.Barry Warsaw3-355/+1
Also, remove a obsolete test.
2011-01-03Better wording given by Patrick Ben Koetter.Barry Warsaw1-2/+14
2011-01-03Catch up on news for 3.0.0a7.Barry Warsaw1-4/+42
2011-01-02LP: #490044 - Support SMTP AUTH.Barry Warsaw7-3/+160
Added smtp_user and smtp_pass options to the [mta] section to support logging into the SMTP server. All the underlying support is in Python's smtplib.
2011-01-02Make sure all documentation is included in the toctree.Barry Warsaw1-0/+1
2011-01-02Split member and nonmember moderation.Barry Warsaw15-230/+363
* member-moderation happens at the same place in the built-in chain that the previously named moderation rule happens. nonmember-moderation happens after all the other normal moderation rules. * Handle unsubscribed nonmember posts. Other changes: * Message.senders now filters out Nones and empty strings. * Various test cleanups and simplifications. * More `address` -> `email` fixes. * Give Link class a useful repr. * Fix a potential UnboundLocalError. * Various other small changes.
2011-01-01Happy New Year.Barry Warsaw260-261/+261
2011-01-01Because it was just to damn confusing, rename IAddress.address toBarry Warsaw33-352/+429
IAddress.email and IAddress.original_address to IAddress.original_email. From now on we'll use "address" to talk about the IAddress object and "email" to talk about the textual email address.
2010-12-31* Simplify the membership.txt doctest.Barry Warsaw6-156/+176
* Add test to show that the incoming runner adds all sender addresses to the global user manager. * New doctest helper: dump_list() * Other random cleanups.
2010-12-29Fairly significant change to the way member and nonmember moderation occurs.Barry Warsaw21-437/+397
Now, nonmembers are represented by a separate roster of IMembers, the latter which has grown a `moderation_action` enum. When that action is `defer`, then the normal processing rules apply. Anything else and the `moderation` chain is jumped to for a shortcut to moderation (which may include immediate acceptance). TODO: handle unregistered nonmembers. Details: * The member-moderation rule is renamed to just moderation, and handles both members and nonmembers (though the latter must currently be registered). * The moderation rule is moved up in the builtin chain. It is now checked after `approved`, `emergency`, and `loop`, but before the normal moderation checks. This means that nonmember postings will be (by default) held much earlier. * IMember.is_moderated is removed. * IMember.moderation_action is added. * IMailingList.default_member_moderation is removed. * IMailingList.default_member_action and IMailingList.default_nonmember_action are added. * MemberRole.nonmember is added.
2010-12-28Clean up from the previous commit.Barry Warsaw3-3/+14
* member_moderation_action exposed in IMailingList * REST configuration test for member_moderation_action, send_welcome_msg, and welcome_msg.
2010-12-26In the REST API, include the fqdn_listname and email address in the member'sBarry Warsaw2-0/+44
JSON representation.
2010-12-22Insulate the test environment from the running environment. Sadly, the testBarry Warsaw11-93/+105
ports are still hard coded. Also, 'bin/mailman info' dumps the REST root url and credentials.
2010-12-22* Start to get rid of pylint; it's more trouble than it's worth and pyflakesBarry Warsaw7-52/+245
does a pretty good job anyway. * Remove master.get_lock_data() now that flufl.lock 2.1 provides the same detailed information. * Add WatcherState.none to indicate that the master is not running. * Instrument master_state() and acquire_lock_1() for testing, and add unittests. * LBYL for 'bin/mailman start' so that the error message when the master is already running happens in the foreground process and is more user friendly. * Add 'bin/mailman status' to provide master queue runner status on the command line.
2010-11-27Upgrade from using the locknix package to using flufl.lock.Barry Warsaw11-23/+22
2010-10-27Support Python 2.7. (LP: 667472)Barry Warsaw3-6/+12
2010-10-13Add reply_goes_to_list, send_welcome_msg, welcome_msg, ↵root2-0/+29
member_moderation_action, default_member_moderation and generic_nonmember_action to the writable attributes in the REST service
2010-10-12* We now have to disable site-packages because of LP: #659231Barry Warsaw2-6/+28
* Provide a better example of how to use basic auth in the rest api call
2010-10-08Fix the obvious errors identified by pyflakes. Skip false positives (mostlyBarry Warsaw69-119/+59
due to _() interpolation) and a few other problems that did not have immediately obvious fixes.
2010-10-08Don't include the eggs/ or parts/ directory in the tarball, otherwise theBarry Warsaw1-1/+3
build fails.
2010-09-29Add doctest for connecting using invalid credentials and some documentation ↵root3-8/+33
regarding the basic auth for the REST server.
2010-09-28Add HTTP authentication to the REST APIroot2-2/+19
2010-09-23Fix typo in scan_message(). (LP: #645897)Barry Warsaw3-9/+51