Skip to main content

A monkey patch to send MailHost messages to standard out

Project description

PrintingMailHost

This is a hack. :)

This product, when installed, will check if Zope is running in debug mode, and if so, monkey patch (that is, grab the internals of, squeeze tight, then rip hard, just like monkeys do) Zope’s MailHost class, meaning that any and all uses of a MailHost will be “fixed” so that instead of sending mail, it prints messages to the standard output.

This is useful if you don’t have a local mailhost for testing, or if you prefer not to spam the crap out of yourself whilst finding out if your bulk mail script is working.

If Zope is not running in debug mode, it will not install itself. However, I wouldn’t recommend putting it on a production site. You never know what those monkeys may get up to…

You can optionally enable the PrintingMailHost with an environment variable as of version 0.3. See the installation instructions for more information about how to use it.

Author

Martin Aspeli <optilude (AT) gmx (DOT) net>

Initial idea, release management

Contributors

Dorneles Tremea <deo (AT) plonesolutions (DOT) com>

Fixed to work both with old-style and new-style classes. Extended to also patch SecureMailBase from SecureMailHost, if available.

Clayton Parker <clayton (AT) sixfeetup (DOT) com>

Products.PrintingMailHost Installation

To install Products.PrintingMailHost into the global Python environment (or a workingenv), using a traditional Zope 2 instance, you can do this:

Alternatively, if you are using zc.buildout and the plone.recipe.zope2instance recipe to manage your project, you can do this:

  • Add Products.PrintingMailHost to the list of eggs to install, e.g.:

    [buildout]
    ...
    eggs =
        ...
        Products.PrintingMailHost
  • If you want to enable PrintingMailHost when debug-mode is off:

    [instance]
    ...
    environment-vars =
        ...
        ENABLE_PRINTING_MAILHOST True
  • If you want to disable PrintingMailHost when debug-mode is on:

    [instance]
    ...
    environment-vars =
        ...
        ENABLE_PRINTING_MAILHOST False
  • Re-run buildout in order to make any of the above changes active:

    $ ./bin/buildout

Changelog

0.4 (2009-07-24)

  • Rough support for multipart email messages [iElectric]

0.3 (2009-03-22)

  • Decode base64 encoded email messages [claytron]

  • Added environment variable (ENABLE_PRINTING_MAILHOST) to enable or disable PrintingMailHost [claytron]

  • Update README and HISTORY.txt [claytron]

0.2 (2008-08-20)

  • Release as an egg to PyPi [claytron]

0.1

  • Updated to use the new standard log mechanism: logging.getLogger. Reformated messages/docstrings. [dtremea] (2006-03-17)

  • Extended to also patch SecureMailBase from SecureMailHost, if available. [dtremea] (2005-10-23)

  • Fixed to work both with old-style and new-style classes, as in the later, dict is a ‘dictproxy’ instance, which doesn’t have the setitem method. Bumpped version. Noted changes. And clean up whitespaces, of course… ;-) [dtremea] (2005-10-23)

  • Initial creation/release [optilude] (2005-04-05)

Download

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

Products.PrintingMailHost-0.4.tar.gz (10.0 kB view details)

Uploaded Source

File details

Details for the file Products.PrintingMailHost-0.4.tar.gz.

File metadata

File hashes

Hashes for Products.PrintingMailHost-0.4.tar.gz
Algorithm Hash digest
SHA256 e6708480aeb6c14f7749609f8526d8f1e3006eb37e0d752ca3c27510b202d89a
MD5 8dad95b39873b1ea48cf67f6290ca35b
BLAKE2b-256 5942ef798c28c1a018cb70accd857c52d2f8782d3dc6501d1544269a5f68b20f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page