<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mailman.git/src/mailman/runners/docs/command.rst, branch pluggable-workflows</title>
<subtitle>The GNU Mailing List manager.</subtitle>
<id>https://git.neuromancer.sk/mailman.git/atom/src/mailman/runners/docs/command.rst?h=pluggable-workflows</id>
<link rel='self' href='https://git.neuromancer.sk/mailman.git/atom/src/mailman/runners/docs/command.rst?h=pluggable-workflows'/>
<link rel='alternate' type='text/html' href='https://git.neuromancer.sk/mailman.git/'/>
<updated>2017-08-30T11:18:40Z</updated>
<entry>
<title>Migrate the [un]subscription_policy attribute.</title>
<updated>2017-08-30T11:18:40Z</updated>
<author>
<name>J08nY</name>
</author>
<published>2017-07-04T23:07:37Z</published>
<link rel='alternate' type='text/html' href='https://git.neuromancer.sk/mailman.git/commit/?id=d173b42e5ff5d90167091e6a015d394c2ddd8678'/>
<id>urn:sha1:d173b42e5ff5d90167091e6a015d394c2ddd8678</id>
<content type='text'>
 - This is quite a huge commit, since it changes the type of the
   MailingList.subscription_policy and unsubscription_policy
   attributes to the new names of pluggable workflows, in all
   occurences.
 - Also adds a migration to migrate the attributes to the new types.
 - Adds tests for the migration.
</content>
</entry>
<entry>
<title>Fix doctests to properly set unsubscription_policy = SubscriptionPolicy.open</title>
<updated>2016-10-26T03:15:31Z</updated>
<author>
<name>Mark Sapiro</name>
</author>
<published>2016-10-26T03:15:31Z</published>
<link rel='alternate' type='text/html' href='https://git.neuromancer.sk/mailman.git/commit/?id=6c1e74d93212ee6922ea8500dbecb4cf2eff1114'/>
<id>urn:sha1:6c1e74d93212ee6922ea8500dbecb4cf2eff1114</id>
<content type='text'>
where needed.
</content>
</entry>
<entry>
<title>Simplify the implementation.</title>
<updated>2016-10-17T13:13:32Z</updated>
<author>
<name>Barry Warsaw</name>
</author>
<published>2016-10-17T13:13:32Z</published>
<link rel='alternate' type='text/html' href='https://git.neuromancer.sk/mailman.git/commit/?id=d45af03c4f2a560d51631fdfa7c55cd1a98e722c'/>
<id>urn:sha1:d45af03c4f2a560d51631fdfa7c55cd1a98e722c</id>
<content type='text'>
This merges the SubscriptionManager and UnsubscriptionManager into a
single SubscriptionManager implementation that handles both register()
and unregister().  This allows us to use direct class-based adaptation
instead of the more clunky getAdapter() API.  We can also eliminate the
funky _get_workflow() implementation detail.

This has a couple of side-effects.  .confirm() must lookup the token in
the pendings database and pull out the pending type, dispatching to the
proper class depending on the type, or raising a LookupError if the
token is None or there is no pendable associated with the given token.
This feels like an acceptable trade-off.

However, this *also* means that IWorkflowStateManager must lose its
'name' argument in its methods.  That's because we won't actually know
the name until its too late.  Honestly, the name wasn't providing much
value anyway (it was always the subclass's name), so losing that seems
fine too.  The complication here is that the name was a primary key in
the 'workflowstate' table, so we need to add its removal in the database
migration.
</content>
</entry>
<entry>
<title>Another test fix.</title>
<updated>2016-09-15T20:51:01Z</updated>
<author>
<name>Barry Warsaw</name>
</author>
<published>2016-09-15T20:51:01Z</published>
<link rel='alternate' type='text/html' href='https://git.neuromancer.sk/mailman.git/commit/?id=172d94710296873a9aa69c15fd71b4e4feba515e'/>
<id>urn:sha1:172d94710296873a9aa69c15fd71b4e4feba515e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>A few more changes.</title>
<updated>2016-09-08T09:14:48Z</updated>
<author>
<name>Barry Warsaw</name>
</author>
<published>2016-09-08T09:14:48Z</published>
<link rel='alternate' type='text/html' href='https://git.neuromancer.sk/mailman.git/commit/?id=655e04a60c0745664a4b33274f6c8b380428a88f'/>
<id>urn:sha1:655e04a60c0745664a4b33274f6c8b380428a88f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Plumb the subscription policy through the REST API.</title>
<updated>2015-04-16T02:51:39Z</updated>
<author>
<name>Barry Warsaw</name>
</author>
<published>2015-04-16T02:51:39Z</published>
<link rel='alternate' type='text/html' href='https://git.neuromancer.sk/mailman.git/commit/?id=08f457799cd36349a4fd22642f4c05b4eabb306d'/>
<id>urn:sha1:08f457799cd36349a4fd22642f4c05b4eabb306d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Prevent replay attacks with the confirmation token.</title>
<updated>2015-04-15T04:14:41Z</updated>
<author>
<name>Barry Warsaw</name>
</author>
<published>2015-04-15T04:14:41Z</published>
<link rel='alternate' type='text/html' href='https://git.neuromancer.sk/mailman.git/commit/?id=3e7dffa750a3e7bb15ac10b711832696554ba03a'/>
<id>urn:sha1:3e7dffa750a3e7bb15ac10b711832696554ba03a</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Full test suite passes.</title>
<updated>2015-04-14T22:54:05Z</updated>
<author>
<name>Barry Warsaw</name>
</author>
<published>2015-04-14T22:54:05Z</published>
<link rel='alternate' type='text/html' href='https://git.neuromancer.sk/mailman.git/commit/?id=a9a9fd2c778aa8cfde5f244420602a70dab44cfa'/>
<id>urn:sha1:a9a9fd2c778aa8cfde5f244420602a70dab44cfa</id>
<content type='text'>
* Make sure Registrar.discard() removces any workflow state manager state
  associated with the token, and that this is flushed to SA.

* Adjust the email commands to the new IRegistrar API.

* Update the IRegistrar interface.

* Add IWorkflowStateManager.discard() and make `count` an attribute/property.

* Mark two tests as expected failures due to LP: #1444184.
</content>
</entry>
<entry>
<title>Checkpointing.</title>
<updated>2015-04-14T16:46:11Z</updated>
<author>
<name>Barry Warsaw</name>
</author>
<published>2015-04-14T16:46:11Z</published>
<link rel='alternate' type='text/html' href='https://git.neuromancer.sk/mailman.git/commit/?id=2787473f0bd4ca3efeadb7f44c8f61c3695e7ecd'/>
<id>urn:sha1:2787473f0bd4ca3efeadb7f44c8f61c3695e7ecd</id>
<content type='text'>
</content>
</entry>
<entry>
<title> * ``$cwd`` is now an additional substitution variable for the ``mailman.cfg``</title>
<updated>2015-01-03T05:06:17Z</updated>
<author>
<name>Barry Warsaw</name>
</author>
<published>2015-01-03T05:06:17Z</published>
<link rel='alternate' type='text/html' href='https://git.neuromancer.sk/mailman.git/commit/?id=de181c1a40965a3a7deedd56a034a946f45b6984'/>
<id>urn:sha1:de181c1a40965a3a7deedd56a034a946f45b6984</id>
<content type='text'>
   file's ``[paths.*]`` sections.  A new ``[paths.here]`` section is added,
   which puts the ``var_dir`` in ``$cwd``.  It is made the default layout.

 * You can now view the contents of, inject messages into, and delete messages
   from the various queue directories via the ``&lt;api&gt;/queues`` resource.

Also:

inject_message() and inject_text() now return the filebase of the file
injected into the queue directory.
</content>
</entry>
</feed>
