commit 73a3a601fa82c0d0182ce0e15b1b8b0dae847c4d
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Mon Jan 27 17:23:20 2014 -0500

    Fix the test manager implementation
    
    Partial-bug: #1273455
    
    Change-Id: I5402d71197979e579a2145f7f775b3e693dccfcc

commit ed280dab97a645ad2d48587ec12a39e09fc5d9b5
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Mon Jan 27 15:33:23 2014 -0500

    prep history for 0.14 release
    
    Change-Id: Ie871fdd8ee4917f3d628913baff742f7a92d92fa

commit 79c405923440ae23c3c1324e36f4e117dac2ff96
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Sat Jan 25 12:05:55 2014 -0500

    Make requirements checking optional
    
    Commit 3c2b1df85a88162e086d4f62bf99079432851ba8 hard-coded requirements
    checking when a plugin is loaded to be turned off (the previous default
    was turned on). This commit adds a parameter so the caller can decide.
    
    Change-Id: I639c1fed7231b8adeab1e3ef9c863763a60bfd0d

commit 8c31425bba88c9aa753fcbfa76aecb5ae7b3a680
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Sat Jan 25 12:04:22 2014 -0500

    Update docstrings
    
    A previous change added an argument to several methods without
    updating their docstrings to describe it.
    
    Change-Id: I10c753a2d935c0a4ae87ff9258c91f1530d398db

commit 8a67d41e7a75da37fb5b37571833218c8ce5de53
Merge: 3c2b1df 3eccd4b
Author: Jenkins <jenkins@review.openstack.org>
Date:   Wed Jan 22 18:39:16 2014 +0000

    Merge "Allow a on_load_failure_callback to be provided"

commit 3c2b1df85a88162e086d4f62bf99079432851ba8
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Fri Jan 17 17:17:29 2014 -0500

    Remove requirements checking for dependencies
    
    Change-Id: I4128994554a9291d5629e20774b1c5a91c4a58cc

commit 7d1d283c7348f96c13d5c9ffdc1101e7f36ff09e
Merge: f675a2b 7fc49b6
Author: Jenkins <jenkins@review.openstack.org>
Date:   Tue Jan 7 19:09:25 2014 +0000

    Merge "Add venv environment to tox"

commit f675a2b1b08230e09fedc704487bca63e37a83ec
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Fri Dec 20 22:57:40 2013 +0000

    fix typo in contrib docs
    
    Change-Id: Iae9aa84f48092b1c0d19d7271f049a9ff786996f

commit d18038bb1d5552963b9761b4b1de9c05fa5f1b74
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Fri Dec 20 22:51:40 2013 +0000

    Add contributing instructions for github mirrors
    
    Change-Id: I78ae4977b7f005e4b47aa736ed4594cd994fd3ca

commit 3eccd4baade927a5c2fb41ab52efed6950742a4c
Author: Joshua Harlow <harlowja@yahoo-inc.com>
Date:   Mon Dec 16 14:02:02 2013 -0800

    Allow a on_load_failure_callback to be provided
    
    When entrypoints are loaded it is sometimes useful
    to be able to do more than LOG the failure that could
    be emitted from the plugin failing to be constructed,
    allowing the manager classes to be provided a callback
    that can be called when such extension fails to load
    is useful to track these types of failures.
    
    Change-Id: Idc7e55ade6b3f80c348123fbceea64425d7d3508

commit 7fc49b69ebf2a486581b83318058e7acb48092ed
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Wed Dec 18 16:42:37 2013 +0000

    Add venv environment to tox
    
    Some of the stackforge jobs use an environment "venv" to run
    commands, like packaging a release.
    
    Change-Id: I3453aaa0c7201d780301447936d26aca8ecfb91f

commit 88391bb1646278ab5f3029e29a092e187648d137
Author: Julien Danjou <julien@danjou.info>
Date:   Tue Nov 26 12:46:46 2013 +0100

    driver: remove useless arg propagate_map_exceptions
    
    Change-Id: Id3cc95ebe26b10d4da1aa978c2c818e199be316e

commit 1ace033015bdef6d5217a190b7394430c9ac566e
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Wed Dec 11 15:27:20 2013 -0500

    Move to stackforge
    
    Update URLs in the documentation for the source and
    bug tracker.
    
    Add a .gitreview file to make reviews work.
    
    Change the "style" tox env to "pep8" to be consistent with
    the check job expectations.
    
    Change-Id: I5dd1e157e11ef597dd22ab2e3f5d1219f0489a7e

commit 6911bd26eade403b43e42415ef7abafd804f638c
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Mon Nov 25 11:21:15 2013 -0500

    update release announcement file
    
    Change-Id: I474f1b3a47e0e118f5bd0a55866f6ed30e6b09c4

commit 854ee1d15e3f0d62e70df375bc727a62b69396f2
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Mon Nov 25 11:20:03 2013 -0500

    update release number in history
    
    Change-Id: Ibc6f88ffc1dd375d40b15e3c8c0bb51b6cd44f53

commit fc897f28ed0ae592c5a4df3646e47829934e4d81
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Mon Nov 25 16:11:27 2013 +0000

    update history file before release

commit f3de811157c7535c0bb052473ef9641ea2fa2072
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Mon Nov 25 11:03:28 2013 -0500

    deprecate TestExtensionManager
    
    Change-Id: I3b319dc88edac538ebbba1102935d426b8dd5780

commit cb5db9fb2d98b1a866a9011444a365a738c7d369
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Mon Nov 25 11:03:24 2013 -0500

    clean up docs for DriverManager
    
    Change-Id: I71d96a5feb308efe3803899b1ee7954444dd7761

commit 3e5c24f83aa4085b791bce0f336553f1a6029b5e
Merge: cc4e5c1 e2d86a8
Author: Doug Hellmann <doug.hellmann@gmail.com>
Date:   Mon Nov 25 07:45:09 2013 -0800

    Merge pull request #29 from drocco-007/master
    
    Test instance factories

commit e2d86a8a0901e30db3697e6a71bc191a8cec4cbd
Author: Daniel Rocco <drocco@thebrightlink.com>
Date:   Sat Nov 23 23:07:07 2013 -0500

    simplify test instance factory contract
    
    After some discussion, the make_test_instance factories expect a final
    list of extensions, which simplifies creation and keeps responsibilities
    better focused.  Users who wish to test their check functions should do
    so separately.

commit 9c7558aeef8fcafca4b45d2c5bcf88e5a4e36790
Author: Daniel Rocco <drocco@thebrightlink.com>
Date:   Sat Aug 24 16:03:22 2013 -0400

    driver extension manager test instance factory

commit 86f6ba332bb09d9a5a4f24112c0db3474cb1b139
Author: Daniel Rocco <drocco@thebrightlink.com>
Date:   Sat Aug 24 15:55:48 2013 -0400

    enabled extension manager test instance factory

commit a8150369a045f08f86db00e49a45bda4594fd2d5
Author: Daniel Rocco <drocco@thebrightlink.com>
Date:   Sat Aug 24 14:02:15 2013 -0400

    make Extension responsible for formatting its target name

commit acaf47782e25b1a4eb6056e72034335d03e00e3b
Author: Daniel Rocco <drocco@thebrightlink.com>
Date:   Sun Jun 30 08:52:14 2013 -0400

    add test instance factory for the base, named, and hook managers
    
    The class method make_test_instance constructs manager instances using a
    predefined list of extensions, rather than loading from entry points.

commit fdde242a8ebf655e3bc81d753dc9d8b9869ed29e
Author: Daniel Rocco <drocco@thebrightlink.com>
Date:   Sun Jun 30 07:39:13 2013 -0400

    use item access instead of temporary dict when ordering extensions

commit cc4e5c18dc5bc9d39adc2107342002c7239e14ae
Merge: a8b00d7 74a719b
Author: Doug Hellmann <doug.hellmann@gmail.com>
Date:   Wed Nov 13 08:10:11 2013 -0800

    Merge pull request #30 from philiptzou/patch-1
    
    a work-around to avoid cpython bug with atexit (15881)

commit a8b00d7c2b11516cc86da94ec35c5576bc767220
Merge: 08e6991 3ff1663
Author: Doug Hellmann <doug.hellmann@gmail.com>
Date:   Wed Nov 13 07:55:47 2013 -0800

    Merge pull request #31 from westurner/patch-1
    
    DOC: Updated index.rst: distribute -> setuptools

commit 3ff16632cf0ea20668128ca3a226badc2d7a6451
Author: Wes Turner <wes.turner@gmail.com>
Date:   Sun Nov 10 13:04:18 2013 -0600

    DOC: Updated index.rst: distribute -> setuptools
    
    http://pythonhosted.org/setuptools/merge.html

commit 74a719b11781cc93d60cff1b0a01de3e4e780a1d
Author: Philip Tzou <philip.npc@gmail.com>
Date:   Thu Oct 24 13:43:09 2013 +0800

    a work-around to avoid cpython bug (15881)
    
    In python < 2.7.4, a lazy loading of package `pbr` will break setuptools if some other modules registered functions in `atexit`.
    solution from: http://bugs.python.org/issue15881#msg170215

commit 08e69916977659259fcb8721d296fda862dae75f
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Sun Sep 22 10:19:25 2013 -0400

    add pypy to travis config
    
    Change-Id: Ib4b9b5a91b7cfce8241b7ad641bb0b959344dc2a

commit c019a1fa444dee9f0cd69691fe5b2566293c2130
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Sun Sep 22 10:17:28 2013 -0400

    add pypy to default test env list
    
    Change-Id: I1fba36e54850c18fdb2720377566ad43ee5b8661

commit fc458a58c4b27e98c044084c4b79898e3ba6fb9f
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Wed Sep 18 15:08:01 2013 -0500

    Fix pip call in tox config
    
    Tox passes --pre to pip, which means we get pre-release
    versions of stuff. That breaks the docs build, but is
    just a bad idea anyway, so override the setting so we
    don't do it.
    
    Change-Id: Iec89b12a969f34486005e8dc41cb189438b38959

commit 2fb70e3fa8fee6697f280df20d5f077b82974b9d
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Wed Sep 18 12:07:50 2013 -0500

    fix version number in blog announcement file
    
    Change-Id: Ieac1a09728f2a62d5c5c372b78bf6ad480688eb9

commit a12411ada5031f4ac3e6ea87c24af9b0e27ef944
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Wed Sep 18 12:05:27 2013 -0500

    update history and announce file for release
    
    Change-Id: I830d1755c9ed8dbf356edaf68243a01b1d6eb6ac

commit a0efc3b814c54f00026d6424e00bb198f61f3c47
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Wed Sep 18 11:45:03 2013 -0500

    remove version from setup.cfg and rely on git tag
    
    Change-Id: Ib30d0538f4d17a8890a0001a4d0116b08dd74868

commit f4c43cca33b9186bc503a3b0e67a777b3c3deddd
Merge: 4b3f616 35d4423
Author: Doug Hellmann <doug.hellmann@gmail.com>
Date:   Wed Sep 18 09:36:46 2013 -0700

    Merge pull request #28 from jd/jd/pbr
    
    Switch to pbr

commit 35d442370c3007ab18f18d66280d0d8c0b354b02
Author: Julien Danjou <julien@danjou.info>
Date:   Tue Sep 17 14:16:32 2013 +0200

    Switch to pbr
    
    Resolves issue #16

commit 4b3f616eb43bc5cc60cadccd2779aa16d1115239
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Wed Sep 18 09:43:03 2013 -0500

    Fix flake8 failures from pull/27
    
    Fix a few formatting issues from within the
    previous pull request.
    
    Change-Id: Iadb0d5d4bfa1ac460c730e8af0cfec9386a4c066

commit 974f4fbc5a706ea6e19def0e9822496d3e5555cf
Merge: 7ab52e5 1482cf2
Author: Doug Hellmann <doug.hellmann@gmail.com>
Date:   Wed Sep 18 07:39:04 2013 -0700

    Merge pull request #27 from jd/master
    
    Add map_method function to managers

commit 1482cf264f598e30127088bb011be5d31e4fa514
Author: Julien Danjou <julien@danjou.info>
Date:   Tue Sep 17 13:52:03 2013 +0200

    Add map_method function to managers
    
    This allows to use map() directly over some extension method in a more
    convenient way. It's a pattern we often need, so let's built it directly
    in Stevedore.

commit 7ab52e5475bff0c3b12388b14c772fce0cf2f43a
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Thu Aug 29 14:53:55 2013 -0400

    Fixes reporting the error when drivers have the same name
    
    Resolves issue #25
    
    Change-Id: I944800fc2da0018b5b3bb076d296c38126fe97bf

commit 5b22dba30a0167c1beae037ec65fd0684056ef64
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Thu Aug 29 12:29:45 2013 -0400

    prep for release 0.11
    
    Change-Id: If291824f46cf8ab48c25cca54fbb072aad65cf4c

commit ea9266836eae7182a7daadb3cca4e9671450ade6
Merge: 4326707 a3eb460
Author: Ryan Petrello <lists@ryanpetrello.com>
Date:   Wed Aug 28 08:43:32 2013 -0700

    Merge pull request #26 from dhellmann/bug/logging-py26
    
    Update null log handling for py26

commit a3eb4602aa5ec87e6f78477c4789ed2fbde1cf93
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Wed Aug 28 11:30:20 2013 -0400

    Update null log handling for py26
    
    Python 2.6 does not have a NullHandler in the logging
    module, so introduce a little class that does the same
    work.
    
    Also add __all__ to the package init so extra names are
    not exported.
    
    Resolves issue #2
    
    Change-Id: Id59d394cd02372e2c31de336894f06653cb1e22d

commit 4326707104403d92d6028fd0e8db2ae0384e3107
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Mon Jul 8 09:25:42 2013 -0400

    prep for 0.10 release
    
    Change-Id: Ifce736e14ac1f6721b2188b4bcb8f78534faffd9
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 83946513116a9cc1c6e99e6976e82af3fff5da2b
Merge: 6608290 e015bf5
Author: Doug Hellmann <doug.hellmann@gmail.com>
Date:   Sun Jun 30 06:32:45 2013 -0700

    Merge pull request #24 from drocco-007/master
    
    Fixed a bug in the test for propagating map exceptions

commit e015bf53b0e2c9bc6e232b08fd18d55bd5c3da33
Author: Daniel Rocco <drocco@thebrightlink.com>
Date:   Sat Jun 29 23:16:50 2013 -0400

    fixed a bug in the test for propagating map exceptions
    
    A too-broad except clause caused the test to always pass by trapping the assertion error designed to trigger test failure.

commit 6608290ceb4cb66f5751872acda9c9a48be0c3fa
Merge: f9c18f6 c1a58e2
Author: Doug Hellmann <doug.hellmann@gmail.com>
Date:   Fri Jun 21 09:18:44 2013 -0700

    Merge pull request #23 from dirkmueller/python26x
    
    Fix doc build with Python 2.6.x

commit f9c18f68574f17849815f60f63fe4e033a9408b5
Merge: 1decfbe b617873
Author: Doug Hellmann <doug.hellmann@gmail.com>
Date:   Fri Jun 21 09:18:27 2013 -0700

    Merge pull request #22 from cyeoh/propogate_exceptions
    
    Propogate exceptions

commit c1a58e234b837eeecac8922d60d13f1bcc2d77f0
Author: Dirk Mueller <dirk@dmllr.de>
Date:   Fri Jun 21 09:54:49 2013 +0200

    Fix doc build with Python 2.6.x
    
    subprocess.check_output was new in Python 2.7.
    Use an alternative construct via subprocess.Popen
    which works on Python 2.6 as well.

commit b617873a991d7989f06694de3596911d6fdac4a8
Author: Chris Yeoh <cyeoh@au1.ibm.com>
Date:   Fri Jun 21 13:55:00 2013 +0930

    Update docstrings for map exception propagation
    
    Updates docstrings related to map exception propagation
    and the history.rst file

commit 9e950a24b64042df83089d016de5ce7281d3f79d
Author: Chris Yeoh <cyeoh@au1.ibm.com>
Date:   Thu Jun 20 13:38:00 2013 +0930

    Formatting fix
    
    Fixes too many blank lines in test_extension.py

commit 9f2adb4d593f58c92e73e33c0305a679eaf6b819
Author: Chris Yeoh <cyeoh@au1.ibm.com>
Date:   Thu Jun 20 13:32:52 2013 +0930

    Adds ability to propogate exceptions within map
    
    Adds init variable for extension managers to specify whether
    or not exceptions are propated up by map or are logged and supressed

commit 1decfbe7304d22bfb977885aa158c44ddaa8c159
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Wed Jun 12 14:06:18 2013 -0400

    prep for 0.9.1 release
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit f945a560b4bc1ce1439e0d4ed6ba3e6ba962df96
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Wed Jun 12 14:03:31 2013 -0400

    Include all images from docs in sdist
    
    Include the JPEG images under the docs directory
    when creating the sdist.
    
    Resolves issue #20
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 63122bdcd59e3993d379062ffc518e48e41900ab
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Wed Jun 12 11:02:50 2013 -0400

    prep for 0.9 release
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 5def42927198c079489b4a3d7d5cf3d212c217f2
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Wed Jun 12 11:02:33 2013 -0400

    add docs to default tox suite
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit f6cba1b72c07751b2130499d6eee57705742bb78
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Wed Jun 12 10:35:08 2013 -0400

    Remove reliance on distribute
    
    Assume setuptools is present and do not try to install
    distribute.
    
    Fixes issue #19
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit a4f94792f3c09bb21a84ea74992e7b544c4a0f98
Merge: 0015cbf 9065ff5
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Wed Jun 5 18:48:57 2013 -0400

    Merge branch 'add-tutorial'

commit 9065ff56233cbd1be312b116ea94a7a474a61361
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Wed Jun 5 18:48:40 2013 -0400

    doc cleanup
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit c40941e741c7102b07f90c9f96cc37dc17131b87
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Wed Jun 5 18:45:13 2013 -0400

    add reference to test class
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 6535133e88fb0e65ce8616c61614b2e4ebafff38
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Wed Jun 5 18:45:00 2013 -0400

    finish tutorial section on loading plugins
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 712877f3cc0568e3519a68592d632bffdb01b546
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Wed Jun 5 18:15:19 2013 -0400

    remove line number references
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 48c8393c5eedd030909aa7902d9704c7109eece0
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Wed Jun 5 18:02:12 2013 -0400

    Add example of loading as a driver
    
    Create an example program to load the formatters
    from the tutorial as a driver and print some data.
    
    Update run_sphinx to watch .txt files.
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit fd4e42f0fec5173b6998e01c4ab6004796107bcd
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Wed Jun 5 17:10:26 2013 -0400

    Add tutorial section on creating plugins
    
    Expand and reorg the naming discussion.
    
    Add a section on the mechanics of creating plugins,
    with some tested example code.
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 6acd86a66607616cbd09b64d83be2782e2ccd391
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Tue Jun 4 17:15:24 2013 -0400

    add docs about names and namespaces
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 0015cbffb95e65d08e92d721d840476a13b9768e
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Mon Jun 3 17:47:13 2013 -0400

    touch up ceilometer design diagram
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 3682eabc20191c9210a215a94114050cbf85f964
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Mon Jun 3 17:38:56 2013 -0400

    add tox env for building docs
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 7943bb202983cb1ac850803a3c320ae65c391fe3
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Sat Sep 15 16:26:24 2012 -0400

    Add structure for tutorial
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 913693976094fe128e57a6bbd11b9be9960ac251
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Mon Jun 3 17:20:18 2013 -0400

    Add PyCon 2013 essay
    
    Add an essay based on my PyCon 2013 presentation.
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 7e7f9c7c5f227df786e8ec91ad8226acb9ec9ca6
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Mon Jun 3 10:59:47 2013 -0400

    Update docs for NameDispatchExtensionManager
    
    Add missing parameter to the table.
    
    Resolves issue #13
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit fd365c497a883e8b6aa1d138ebc03324efa8ea3f
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Mon Jun 3 10:56:04 2013 -0400

    Clean up autodoc for manager classes
    
    Use default settings instead of repeating the options
    for each class.
    
    Add docstrings for special methods that do not have them
    so they appear in the output.
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 69e17801a3f0cf37257069da7dc83e2608f31aa5
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Mon Jun 3 10:54:49 2013 -0400

    Add ExtensionManager.__getitem__
    
    Allow extensions to be accessed directly by name.
    
    Fixes issue #15
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 52572efd4a223722822c0dba4aee1b210a7df2cc
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Mon Jun 3 10:02:53 2013 -0400

    Change sort for NamedExtensionManager
    
    Use a less expensive algorithm for ordering the
    extensions.
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit c334f4981be66e424e9a9347267e150a5e9ba537
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Mon Jun 3 09:54:19 2013 -0400

    Ignore missing extensions in named dispatch
    
    If the NamedDispatchExtensionManager is told to invoke
    and extension that it has not loaded, log the condition
    but otherwise ignore it.
    
    Resolves issue #14
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 7e967386c491bc8f75e7d02bfe89da60ac5bfb80
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Mon Jun 3 09:53:34 2013 -0400

    Set up extlinks extension
    
    Configure the extlinks extension to make it easy to link
    to issues from the documentation.
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit ae2d9addea15d241ec3767f44805dacf3902064d
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Sun May 19 12:25:08 2013 -0400

    document new name_order param in history
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit abf23bc0e973f1458a92bb8e391b6b187dd096fc
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Sun May 19 12:22:48 2013 -0400

    Correct argument types in name sort tests
    
    The "names" argument is supposed to be a list, not a
    single string.
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 8f111e02353ee0a77477a709f499736ed7f6c257
Merge: 5b937bc 41388cd
Author: Doug Hellmann <doug.hellmann@gmail.com>
Date:   Sun May 19 09:21:43 2013 -0700

    Merge pull request #12 from drocco-007/master
    
    NamedExtensionManager can optionally order loaded extensions to match the names parameter.

commit 5b937bc89c4444fd075762ec80cf3399e494ae8b
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Sat May 18 13:46:26 2013 -0400

    fix type definition of names parameter
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 41388cd0709f227e7fb2b4a37f5afc7842be3478
Author: Daniel Rocco <drocco@thebrightlink.com>
Date:   Fri May 17 23:25:22 2013 -0400

    optionally sort named extensions
    
    NamedExtensionManager can optionally order loaded extensions to match the
    names parameter.

commit ab58eaa0a4fd752ec5801e1955ead7fe36649dca
Merge: 0c356d2 8040e76
Author: Doug Hellmann <doug.hellmann@gmail.com>
Date:   Sun May 5 08:55:06 2013 -0700

    Merge pull request #11 from dhellmann/travis-config
    
    Add travis-ci configuration file

commit 8040e7617bbb9e26786fc123aa52690c61753611
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Sun May 5 11:52:40 2013 -0400

    flake8 fixes
    
    Minor style changes to make flake8 pass.
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit d05bcea552ffd479bcb9c2ea42d15f4d1de1c915
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Sun May 5 11:36:07 2013 -0400

    Add travis-ci configuration file
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 0c356d215f2d5836a511624174fcd5fafe188235
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Tue Mar 26 16:58:56 2013 -0400

    add python 3.3 support tag
    
    Change-Id: I463dbfb0c861da9d4226bdc760164a2f482e51fe
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit c3e3002f8b77616d35a8ab9afbc1d51b6e48fad5
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Tue Mar 26 16:46:49 2013 -0400

    add python 3.3 setup to tox
    
    Change-Id: Ida90b57d4dd6464bde38b08362d40488669b76ab
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 5eea466dcaf426983ec7bc6ee45d5752ec348419
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Mon Feb 18 17:18:30 2013 -0500

    link to docs from README
    
    Addresses #7
    
    Change-Id: I0c96eb8a26e0c3acb771efc1a70e20b3539c3387
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit fb5e8cc2fead00034f11e7147405e3512a697b65
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Fri Jan 4 19:17:11 2013 -0500

    update settings for 0.8 release
    
    Change-Id: I15c465d1c4883d6db08638bbe5ed1f83a82477b5
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 83098c78d0b296b5d5212033a1ab41886aac298a
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Fri Jan 4 19:14:21 2013 -0500

    Check the names of plugins before importing them
    
    Update NamedExtensionManager to check the names of the plugins
    before loading any code to avoid importing anything we are not going
    to use.
    
    Fixes issue #4
    
    Change-Id: I27b19cb42ca3d165ce45953281b82e394c4539a2
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 42fbe31c4fa2133ad7b77f45294085cddb84745f
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Fri Jan 4 19:14:00 2013 -0500

    fix typo in docstring
    
    Change-Id: Ide52b81d292e16ab086acf7d5f93b579bf233b1d
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit c89446fbdc10198fb8e3ae86f44c92ef3dba8e00
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Fri Jan 4 19:09:40 2013 -0500

    Let AssertionErrors bubble up
    
    Sometimes we want to use AssertionError to cause test
    failures, and it is unlikely to be used in real code,
    so just let the error bubble up if it is encountered
    while loading a plugin.
    
    Change-Id: I7ad20b0796c1a02427d324aa7f35bb238013c425
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 0a51bfd00882512e1fa950c0038ee09f3bb9dea8
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Wed Nov 28 06:23:18 2012 -0500

    prep for release 0.7.2
    
    Change-Id: I2ea8d2443860c64bc5f8e9474b9326e1d3dac39c
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit e7259f89ad7e2e199c4f6709265349b9c5ab215d
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Wed Nov 28 06:22:50 2012 -0500

    fix logging support under python 2.6
    
    Change-Id: I2badb7a5a8f8f2c49eb29ced5ce2e6c745f20af1
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 13d4b5697040d114eaeaab50da7eb4a6be2a0d42
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Wed Nov 28 06:21:48 2012 -0500

    Run tests under python 2.6
    
    Change-Id: I7efd7f3c014159b513db52467175b25d473c4fdf
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 1a88f60328b6931cf21eb0d5f8cdc92e2ad4ef1b
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Tue Nov 27 14:32:44 2012 -0500

    Fix logging configuration
    
    Set up a NullHandler to avoid warnings when applications
    do not configure a root logger.
    
    Change-Id: I6cd957396c5e3ad706aea812874ab43fdd9e8aea
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 589dd73fc7e5018a9bb150c7d65b5448743e926f
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Mon Nov 26 12:44:41 2012 -0500

    prepare release 0.7
    
    Change-Id: Ic9c619a2cbcdb1cef52fedbf18f677377fbdd212
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 2106ab5e26a502971a4d5166b273fb52fb53f20c
Merge: b01eb69 7bdc14c
Author: markmcclain <mark@four-m.org>
Date:   Mon Nov 26 09:26:21 2012 -0800

    Merge pull request #3 from dhellmann/feature/cache-entry-points
    
    Cache the entry points discovered within a namespace

commit 7bdc14c62059a50fedb6c385ed8e7c57fc4bb135
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Mon Nov 26 12:13:37 2012 -0500

    Cache the entry points discovered within a namespace
    
    Scanning the entry point registry is relatively expensive
    and causes performance issues with unit tests of code
    depending on stevedore. This change addresses the
    performance issues by caching the entry points as
    they are loaded from pkg_resources in a class attribute
    in the base class of the extension managesr so they can
    be reused by other instances.
    
    Change-Id: Iba7bee6790cdedc94cb537e2ed6e12219c85f26a
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit b01eb699157fb59680b09ef6050978cc95d60243
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Mon Oct 29 11:38:27 2012 -0400

    Bump version to 0.6
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 3c64c7b71a7bc87d2717f278dc4cf5d9e2c67973
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Mon Oct 29 10:47:43 2012 -0400

    Load extensions before checking enabled status
    
    Go ahead and load the extension entry point so the
    check function can interrogate it about whether it
    should be enabled or not.
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 1ffbe0c6bb8cff9b7052e1b79f84f7a9e28ddb0b
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Mon Oct 29 10:46:30 2012 -0400

    Fix line lengths for pep8
    
    Re-enable the line limit checking in pep8 and then fix the
    issues with modules that had long lines.
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 502f552849cdeb6d15fda3678e1b5fe53f4abdd0
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Mon Oct 29 09:27:43 2012 -0400

    Prepare for 0.5 release
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 9090fa09eab53c7bcd6243398a52aecd35087c85
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Mon Oct 29 09:23:35 2012 -0400

    Add TestExtensionManager
    
    Create a special extension manager class that uses pre-configured
    extension instances instead of loading them from a plugin set.
    This makes setting up controlled environments for testing much
    easier.
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 90314340fdfaab25b29c077f8ed72c9c42900269
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Sat Sep 15 16:25:22 2012 -0400

    Add driver property to DriverManager
    
    Provide an easy way to get direct access to the driver
    that was loaded for callers that don't want to use
    the __call__() API, or who need richer access to the
    object.
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 1e21f320b2bc45bd3b10bc80ffc895af0157ade0
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Sat Sep 15 16:10:28 2012 -0400

    Prepare release 0.4
    
    Update the history file and version number.
    
    Change-Id: Ia09d4a9316dcc77775124f298ddde535707cfa0c
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 8b0e71d3a9fbbf7e1709ab9dee01866e32b75cf5
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Sat Sep 15 16:06:34 2012 -0400

    Remove the name argument to extension constructors.
    
    Do not force plugins to take an argument with their name.
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit d32fa18efe7528cb2ff779081303ff240bb47209
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Thu Sep 13 07:21:24 2012 -0400

    fix inheritence hierarchy of DriverManager
    
    Change-Id: I4c85d42a800186da4beeac13acd7a07d4223fa90
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit cfb1f11ea7a1748ab85769e13abcbcea4ae81a67
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Thu Sep 13 07:20:08 2012 -0400

    Set up logging in enabled module
    
    Change-Id: Id2fc37942a32ab7b43c32b834e50940594f12e38
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 55ce6e4261e31d8b4ad18d27a8d9d8a25178738c
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Thu Sep 13 07:19:20 2012 -0400

    Log the full exception when plugin load fails
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 401a1e404c1c565f8ec3ceff0aba29ccdea7a90f
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Tue Aug 21 11:36:57 2012 -0400

    Optimize implementation of NameDispatchExtensionManager
    
    Create a dictionary mapping names to extensions so the
    NameDispatchExtensionManager can just iterate over the
    ones that will be invoked instead of all of the loaded
    plugins.
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit a9de3ecc559f1bd7c16b64728940e9215c4fcec3
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Tue Aug 21 11:35:05 2012 -0400

    Add response callback to _invoke_one_plugin().
    
    Change the response list argument to _invoke_one_plugin()
    to a callback that accepts the response value.
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 79bd21f43df752fcdbff10ff40e8b1f78bb592b8
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Tue Aug 21 11:29:38 2012 -0400

    Refactor code for invoking plugins from map().
    
    Create a method _invoke_one_plugin() to call the plugin and
    append the results to a list to be returned.
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 60c88f6cf2acbc387d1c04ad4b6fcf8bb26b267c
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Wed Aug 15 07:36:42 2012 -0400

    clean up formatting
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 633e75758efd4ef12bcb207d8d958ec4b427ba0a
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Wed Aug 15 07:27:54 2012 -0400

    make DriverManager callable
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit a40785c915a0e4a35b401e244aece4d8b5572266
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Wed Aug 15 07:21:43 2012 -0400

    add download link
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit d3ee2254d62e9aae79097cd7956e8cac9e6b1d2b
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Wed Aug 15 07:21:34 2012 -0400

    clean up announcement text
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 761e9cde267c57cdb0ea925b81126dd2a8590717
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Wed Aug 15 07:18:33 2012 -0400

    add installation instructions
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 90823ebcf424c417886a8021e25929230d45ebb3
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Wed Aug 15 07:18:15 2012 -0400

    update history for 0.3 release
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 4883901c532a33b9fa9f44c38701596f39e50ed8
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Wed Aug 15 07:10:46 2012 -0400

    add dispatch managers
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 33fe817f79d34e7167cd9fca22a87acff177dc50
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Wed Aug 15 06:37:17 2012 -0400

    documentation touch-up
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 87011073c0f2207e7c8e0e114225fa335aabbba8
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Sun Jul 22 17:01:37 2012 -0400

    release 0.2 with docs

commit 7ebec93a95c2b4ab3212d29abc442a29ec14eecd
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Sun Jul 22 17:01:27 2012 -0400

    finish first draft of documentation

commit 2e7e0ab61e943b6e346353ee6161c1908c30e1c0
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Sun Jul 22 16:54:13 2012 -0400

    add API documentation

commit 9a47b1c407e4bf64c9a8713180772724857f2053
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Sun Jul 22 16:31:31 2012 -0400

    rename loading; add enabling patterns

commit a2887fd1fd79023a14b03a20234a37bc1a4d5019
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Sun Jul 22 15:43:31 2012 -0400

    add diagrams to illustrate the loading patterns

commit 5b6f2416e21af44a560971894ea8082aae8f45c6
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Sun Jul 22 15:19:15 2012 -0400

    Add descriptions of loading patterns.
    
    Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>

commit 685fd4c827a7989c040f41da91fd4d7deb981618
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Sun Jul 22 14:41:18 2012 -0400

    add script for running sphinx as I edit

commit ed654179da0f23b6823eb3e329d62c2621885af7
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Sun Jul 22 14:13:54 2012 -0400

    add history file

commit f4df0e8223a4f67a33c73efc1d618693c4fd9922
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Sun Jul 22 14:03:51 2012 -0400

    get the version from setup.py and always use today's date

commit 66aea3f2e1e11b79a60879f618773c07c1d5e415
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Sun Jul 22 14:01:53 2012 -0400

    doc files created by sphinx-quickstart

commit d48017c6e896ad266c9dfe2d5b92f6f4edeb4972
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Tue Jun 19 17:22:41 2012 -0400

    logging tweak

commit f0da043cb82ad73b4f0c057549f97045b35d2710
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Tue Jun 19 16:14:31 2012 -0400

    add DriverManager

commit b3293b9d9243406a8415f74474c5ba49a78a0fa4
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Tue Jun 19 16:04:28 2012 -0400

    add hook manager

commit 6af087440ba4fce38096b87be9edab0252f4d2d8
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Tue Jun 19 15:59:07 2012 -0400

    break up monolithic module

commit abeae9ef53930e9e05b8712e42921efbb682b5a3
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Tue Jun 19 15:53:23 2012 -0400

    add EnabledExtensionManager and NamedExtensionManager

commit dabad0bf41c6edcfc20a26abe51634b97473169b
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Tue Jun 19 15:37:25 2012 -0400

    add docstring gs

commit 81435d790dec25b4d8087cf123f8a3bf69666ee7
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Tue Jun 19 15:30:03 2012 -0400

    make ExtensionManager iterable

commit d07e2eabefca31e516fb66df793d574b1b2daf09
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Tue Jun 19 15:24:08 2012 -0400

    error when no extensions to map()

commit 713412ededc6fee3be47954c4802753cbb6528de
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Tue Jun 19 15:18:32 2012 -0400

    add map method

commit a4ad1e1074fac3a88e4d167a534ed768d554ae8d
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Tue Jun 19 15:05:03 2012 -0400

    basic ExtensionManager implementation

commit ea49b6a9e1814cfd6a97eef44b1eee3328a7237d
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Tue Jun 19 14:33:24 2012 -0400

    add license

commit 5fc07810f9436dce79dd4a6102c2cd41c5f82197
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Tue Jun 19 14:24:20 2012 -0400

    set up tox and fix packaging

commit 297158f6dd539e0d01bc302d8cc8b794e2d7c995
Author: Doug Hellmann <doug.hellmann@dreamhost.com>
Date:   Tue Jun 19 14:12:49 2012 -0400

    create setup.py

commit 03116cf7f4de77f35e922daad409779035553293
Author: Doug Hellmann <doug.hellmann@gmail.com>
Date:   Tue Jun 19 10:49:13 2012 -0700

    Initial commit