)]}'
{
  "log": [
    {
      "commit": "160491d0384285698d726b1af21277f336107f51",
      "tree": "eac4e643847865508bdf7ff2db51525650a2530e",
      "parents": [
        "836982b46ab9e1e60b12009aa5abab384131c697"
      ],
      "author": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Fri Nov 16 19:17:52 2012"
      },
      "committer": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Fri Nov 16 19:17:52 2012"
      },
      "message": "Patch for Issue #47, provided by gps@google.com\n\n\n\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@75 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "836982b46ab9e1e60b12009aa5abab384131c697",
      "tree": "8102e18c439ad857f56775b3c5cec30f2a189765",
      "parents": [
        "4b5f8e08a18b21d9488d4061abeebaabcc62ad08"
      ],
      "author": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Mon Nov 12 18:59:51 2012"
      },
      "committer": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Mon Nov 12 18:59:51 2012"
      },
      "message": "Patch for Issue 51, contributed by matt@ihavethememo.net\n\n\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@74 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "4b5f8e08a18b21d9488d4061abeebaabcc62ad08",
      "tree": "3938f020ab35bcfbe5dbda7a8f04963837534a96",
      "parents": [
        "f2b16354e6fd07044d86149fb2f2e7f321574c65"
      ],
      "author": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Tue May 01 21:27:35 2012"
      },
      "committer": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Tue May 01 21:27:35 2012"
      },
      "message": "Patch for Issue 42 (Allow MoxMetaTestBase to be used with other metaclasses).\nThanks dbronner@google.com\n\n\n\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@73 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "f2b16354e6fd07044d86149fb2f2e7f321574c65",
      "tree": "b9325ac91f6635d0635b98551770d1f3239b03f2",
      "parents": [
        "df220ffcc57380c3823aae52cdea0d7bb6f2b145"
      ],
      "author": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Tue May 01 20:43:51 2012"
      },
      "committer": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Tue May 01 20:43:51 2012"
      },
      "message": "\nPatch for Issue 16 from Ben Love.  Thanks!\n\n\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@72 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "df220ffcc57380c3823aae52cdea0d7bb6f2b145",
      "tree": "6f61e060cbd67250ebe11b1ae12d5ac10ad7489f",
      "parents": [
        "367d3cce17112d73abf71f3aea25221a4ee9adf5"
      ],
      "author": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Mon Nov 28 18:27:06 2011"
      },
      "committer": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Mon Nov 28 18:27:06 2011"
      },
      "message": "Patch for Issue 5438051\n\n\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@70 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "367d3cce17112d73abf71f3aea25221a4ee9adf5",
      "tree": "137cabada24c0fd176d05820354732fb8ac1a12e",
      "parents": [
        "eb3a1a971937497f6980495e7f4ff65403b78d13"
      ],
      "author": {
        "name": "stevepm@google.com",
        "email": "stevepm@google.com@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Tue Jun 28 14:27:07 2011"
      },
      "committer": {
        "name": "stevepm@google.com",
        "email": "stevepm@google.com@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Tue Jun 28 14:27:07 2011"
      },
      "message": "Fix for broken logic when doing method signature matching and the\nfirst argument is a Comparator.  The Comparator may raise an exception\n(which is expected), and since exceptions aren\u0027t caught, this will\nbreak well formed tests.\n\n\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@66 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "eb3a1a971937497f6980495e7f4ff65403b78d13",
      "tree": "0322c9266a8cab5f2e1d6f396b6ee0fe8ef34d0b",
      "parents": [
        "61f1f11648e177602162680fc1bf0f203b4bd522"
      ],
      "author": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Mon Jun 06 19:13:18 2011"
      },
      "committer": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Mon Jun 06 19:13:18 2011"
      },
      "message": "Patch for adding a Comparator that can remember values from liulk@google.com.\nhttp://codereview.appspot.com/4527043/\n\n\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@65 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "61f1f11648e177602162680fc1bf0f203b4bd522",
      "tree": "164757bb6d6e31e6d67189fd3583bc325761a0ff",
      "parents": [
        "92434725a4a4d09f7492eab6fa5d262e0339e361"
      ],
      "author": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Mon Jun 06 18:56:52 2011"
      },
      "committer": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Mon Jun 06 18:56:52 2011"
      },
      "message": "Patch for Issue 30.\n\n\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@64 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "92434725a4a4d09f7492eab6fa5d262e0339e361",
      "tree": "431b3ae249ca58b378e83714d9e619d338a9e500",
      "parents": [
        "6014b468c07df11d7f44840e8322c06fc1e46d8b"
      ],
      "author": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Mon Jun 06 18:43:05 2011"
      },
      "committer": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Mon Jun 06 18:43:05 2011"
      },
      "message": "Patch for Issue 35.\n\n\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@63 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "6014b468c07df11d7f44840e8322c06fc1e46d8b",
      "tree": "8f5c2c91806bcd14245f8d408a7c7f5c13f28d01",
      "parents": [
        "9011fcf628196660fda01dc4d1ffc23b5315dfe0"
      ],
      "author": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Mon Jun 06 18:36:37 2011"
      },
      "committer": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Mon Jun 06 18:36:37 2011"
      },
      "message": "\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@62 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "9011fcf628196660fda01dc4d1ffc23b5315dfe0",
      "tree": "a3f91860e9e00750248e9e1294aa7efb7f39eab9",
      "parents": [
        "aed51a5f2e536a19caa69e390778c20be9c3b593"
      ],
      "author": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Wed Oct 20 18:35:14 2010"
      },
      "committer": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Wed Oct 20 18:35:14 2010"
      },
      "message": "Clean up missed conversion from _expected_seq to _expected_list\n\n\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@61 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "aed51a5f2e536a19caa69e390778c20be9c3b593",
      "tree": "e6818d8bd6b44e3c498e0e5b129d17fbbf44eab0",
      "parents": [
        "7e11553765c3963683387c5f9011ad17000711a4"
      ],
      "author": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Fri Sep 03 17:00:55 2010"
      },
      "committer": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Fri Sep 03 17:00:55 2010"
      },
      "message": "+ Fix for checking the method signature of unbound functions when keyword args\n  are passed as positional.  With tests.\n+ Made the comparator more robust by catching exceptions and returning False\n\n\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@60 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "7e11553765c3963683387c5f9011ad17000711a4",
      "tree": "6dd8a26f81a16e1fa619487870cd5dc7296a284b",
      "parents": [
        "9309ca2fc71396135fb801db7a062327b376c0d0"
      ],
      "author": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Mon Aug 23 17:20:31 2010"
      },
      "committer": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Mon Aug 23 17:20:31 2010"
      },
      "message": "Fix for Issue 19 by greatred\n\n\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@59 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "9309ca2fc71396135fb801db7a062327b376c0d0",
      "tree": "5e211c69419529e9b1df505d6e78b4eb0f7659c4",
      "parents": [
        "9751c637d6a58fe38a85668993f7c0079181fd0e"
      ],
      "author": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Mon Aug 23 00:26:30 2010"
      },
      "committer": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Mon Aug 23 00:26:30 2010"
      },
      "message": "Patch from Matt Brown (mdbrown@google) to make SameElementsAs more robust\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@58 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "9751c637d6a58fe38a85668993f7c0079181fd0e",
      "tree": "3e5426f781de4b173fc149c6d28aad74ced645df",
      "parents": [
        "abe12ce857c5978226b3d0549dceea2ab797df8a"
      ],
      "author": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Thu Aug 19 17:29:46 2010"
      },
      "committer": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Thu Aug 19 17:29:46 2010"
      },
      "message": "MockObject should have the __name__ param by default.\nWhen stubbing with MockAnything, force the __name__ param\n\n\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@57 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "abe12ce857c5978226b3d0549dceea2ab797df8a",
      "tree": "08b182f1ebe265de63ac741a43cf4dcaee92d7fd",
      "parents": [
        "994820b0d3ac0b0f93249177ab90010d26d3c292"
      ],
      "author": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Thu Aug 19 13:02:12 2010"
      },
      "committer": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Thu Aug 19 13:02:12 2010"
      },
      "message": "\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@56 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "994820b0d3ac0b0f93249177ab90010d26d3c292",
      "tree": "440f7c5d7f3ad97401d87533016bc45a4c277f48",
      "parents": [
        "4821b508508bc99a47eb2826bd1eacd94f1274ed"
      ],
      "author": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Wed Aug 18 21:18:37 2010"
      },
      "committer": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Wed Aug 18 21:18:37 2010"
      },
      "message": "Fix for issue #27 by stevepm@google.com / steve.middlekauff@gmail.com\n\n\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@55 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "4821b508508bc99a47eb2826bd1eacd94f1274ed",
      "tree": "85e36943aa5e63e17f22ea4505f1c1e5c1d0f193",
      "parents": [
        "0351c33996da073395f5af405f3cb36d800839ac"
      ],
      "author": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Sat Jul 10 18:29:52 2010"
      },
      "committer": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Sat Jul 10 18:29:52 2010"
      },
      "message": "Fix for issue 21:\n\n + Add str() before assuming that types are strings in comparator\n    __repr__ functions.\n + Add some doc and formatting to the Is() comparator.\n + Add some tests that In() works properly when the key is a tuple.\n\n\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@54 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "0351c33996da073395f5af405f3cb36d800839ac",
      "tree": "e4077f9a36719544baa61db054299eaf8328b59f",
      "parents": [
        "f8770adb29be14845b407494cc0e3e1b98ce75e3"
      ],
      "author": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Wed Jul 07 17:48:13 2010"
      },
      "committer": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Wed Jul 07 17:48:13 2010"
      },
      "message": "Add an Is() comparator for checking identity, instead of equality.\nBy: vmalloc\n\n\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@53 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "f8770adb29be14845b407494cc0e3e1b98ce75e3",
      "tree": "aded93a6aaeb8638d12c36664f195f6dbfd06c7e",
      "parents": [
        "04786f376e2bebe44fc19422bbadaa3d68de2138"
      ],
      "author": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Wed Jul 07 17:43:04 2010"
      },
      "committer": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Wed Jul 07 17:43:04 2010"
      },
      "message": "Adding a \"fix\" (cough, hack!) for method signature validation when\ncalling an unbound method with the instance as the first arg.\nBy Steve Middlekauff\n\n\n\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@52 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "04786f376e2bebe44fc19422bbadaa3d68de2138",
      "tree": "1ad470d13436db08c0c8083f5d0ac917bb3d5998",
      "parents": [
        "ec82e83379b172f4794b85b4fc40a2be43493f9e"
      ],
      "author": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Thu Jun 17 19:54:28 2010"
      },
      "committer": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Thu Jun 17 19:54:28 2010"
      },
      "message": "Added column to AttributeError string to delimt error from\narguments, per issue 20.\n\n\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@51 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "ec82e83379b172f4794b85b4fc40a2be43493f9e",
      "tree": "43f2c21751c5aba0c9ed8cb53d4842ee81482bb1",
      "parents": [
        "45c697579174ee064c750fe53f0ab2947e984fe4"
      ],
      "author": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Thu Jun 17 19:45:51 2010"
      },
      "committer": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Thu Jun 17 19:45:51 2010"
      },
      "message": "Allow methods that are stubbed out on class instances to have their\nsignatures verified.\n\nInitial patch submitted by vmalloc.\nSlight modificants to tests by steve.middlekauff.\n\n\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@50 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "45c697579174ee064c750fe53f0ab2947e984fe4",
      "tree": "fe1f9a30e66f456e38171b5feac14f37f6fec13d",
      "parents": [
        "66e31ed3e080e833de08135cc6cfeb74e58452fe"
      ],
      "author": {
        "name": "dglasser",
        "email": "dglasser@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Tue May 18 17:48:59 2010"
      },
      "committer": {
        "name": "dglasser",
        "email": "dglasser@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Tue May 18 17:48:59 2010"
      },
      "message": "Give MockAnything a more useful __repr__.\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@49 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "66e31ed3e080e833de08135cc6cfeb74e58452fe",
      "tree": "4dc6a889d7a622705a31573504158b3871420d79",
      "parents": [
        "18af5e8f19ae7fe604b00bd2e1441290b899f6f4"
      ],
      "author": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Wed May 12 18:19:01 2010"
      },
      "committer": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Wed May 12 18:19:01 2010"
      },
      "message": "MoxAnything should not implement the method __str__, otherwise callers won\u0027t be\nable to mock __str__ calls.\n\n\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@48 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "18af5e8f19ae7fe604b00bd2e1441290b899f6f4",
      "tree": "23906137b516e822ea6efbb40be4f99c9a35c96a",
      "parents": [
        "e8c41069cf916370be709dbfc537405c6f9eb372"
      ],
      "author": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Tue May 04 19:50:58 2010"
      },
      "committer": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Tue May 04 19:50:58 2010"
      },
      "message": "\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@45 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "e8c41069cf916370be709dbfc537405c6f9eb372",
      "tree": "b2c178f09b989c2aae0c05ef9e95049d81ad0214",
      "parents": [
        "94032a42fc75209b55608059c7707dd4e7ea1ba0"
      ],
      "author": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Fri Apr 30 20:59:35 2010"
      },
      "committer": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Fri Apr 30 20:59:35 2010"
      },
      "message": " Add StubOutClassWithMocks, which acts as a \"generator\" for mock\n objects.  This is useful for testing classes that directly\n instantiate their dependencies.  Previously, one would create yet\n another mock that would act as a generator (effectively mocking\n __init__ and returning an instance of a MockObject).\n\n StubOutClassWithMocks handles the \"generator\" mock for you.\n\n Example:\n   mox.StubOutClassWithMocks(my_import, \u0027FooClass\u0027)\n   mock1 \u003d my_import.FooClass(1, 2)   # Returns a new mock of FooClass\n   mock2 \u003d my_import.FooClass(9, 10)  # Returns another mock instance\n   mox.ReplayAll()\n\n   my_import.FooClass(1, 2)   # Returns mock1 again.\n   my_import.FooClass(9, 10)  # Returns mock2 again.\n   mox.VerifyAll()\n\n\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@44 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "94032a42fc75209b55608059c7707dd4e7ea1ba0",
      "tree": "dab8425771f082bfed893a07511251f357376492",
      "parents": [
        "680c81d422098470fae59273a56fc3f155514456"
      ],
      "author": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Thu Apr 22 23:05:27 2010"
      },
      "committer": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Thu Apr 22 23:05:27 2010"
      },
      "message": "Fix a bug where the interface is not enforced when stubbing out a first order method,\nor on the __call__ function of a callable object.\n\n\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@43 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "680c81d422098470fae59273a56fc3f155514456",
      "tree": "67976559e88bb5033459481a13791b19ae98ab66",
      "parents": [
        "0ab49537a5ee5cae80d7447e8a787eee734b02cc"
      ],
      "author": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Tue Apr 20 23:47:16 2010"
      },
      "committer": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Tue Apr 20 23:47:16 2010"
      },
      "message": "Long over due patch from alan.franzoni for better property support (Issue 11).\nI\u0027m very sorry about the delay.\n\n\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@42 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "0ab49537a5ee5cae80d7447e8a787eee734b02cc",
      "tree": "fe1d6be10988c7e8ca81bdaa86429fd74da1b471",
      "parents": [
        "33f2e36889a478ee5c26a56625f8505c72a9772d"
      ],
      "author": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Tue Apr 06 19:52:13 2010"
      },
      "committer": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Tue Apr 06 19:52:13 2010"
      },
      "message": "Increment version number to 0.5.2 for new release.\n\n\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@41 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "33f2e36889a478ee5c26a56625f8505c72a9772d",
      "tree": "7a7de76107fe914cfd47ac667d8ff4ce9608fed6",
      "parents": [
        "8d018291d83381d57fe40305ee504861d44f8bcc"
      ],
      "author": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Thu Mar 18 17:04:35 2010"
      },
      "committer": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Thu Mar 18 17:04:35 2010"
      },
      "message": "Thanks to matthew.blain@google.com for ContainsAttributeValue comparator\nand Adeodato Simo for adding stubs to the MoxTestBase and fixing up some\nof the tests.\n\n\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@40 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "8d018291d83381d57fe40305ee504861d44f8bcc",
      "tree": "507d6e06bac408483a50ef228cb6da8100d1258e",
      "parents": [
        "7e0f63eb5f3e955acc0e5d9a228ab932b4a8519b"
      ],
      "author": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Fri Jan 08 23:55:35 2010"
      },
      "committer": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Fri Jan 08 23:55:35 2010"
      },
      "message": "Slightly modified (for style) patch submitted by alan.franzoni to\nsupport setting attributes on a MockObject from a dict supplied to the\nconstructor.  This is more efficient than setting attrs by hand.  Only\npublic attributes may be set.\n\n\n\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@39 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "7e0f63eb5f3e955acc0e5d9a228ab932b4a8519b",
      "tree": "1e7014958e541e2bacb04871c0c5151f99a6fe3c",
      "parents": [
        "e01718f94ebbbe8f3197eac58b005dccb1191231"
      ],
      "author": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Fri Sep 11 19:57:51 2009"
      },
      "committer": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Fri Sep 11 19:57:51 2009"
      },
      "message": "Numerous fixes from Google:\n\n * Added warning the Mox is not thread-safe - Steve Middlekauff\n * Fix bug in MultipleTimes group where if a Func is used it is called\n   unnecessarily, due to re-comparing to see if the group has been\n   satisfied - Steve Middlekauff\n * Use difflib for exceptions - Matt Brown\n * Add support for mocking iterators - Adam Nadolski\n * Make __getitem__, __setitem__, and __iter__ work with subclasses of\n   new style clases - Antoine Picard\n\n\n\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@38 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "e01718f94ebbbe8f3197eac58b005dccb1191231",
      "tree": "c32eb78eaf2adecdc8403ad24248e6585abd2014",
      "parents": [
        "7671c9a9432698f1879540621e68bfa335f95f10"
      ],
      "author": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Tue May 05 23:22:21 2009"
      },
      "committer": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Tue May 05 23:22:21 2009"
      },
      "message": "Mox release 0.5.1, which includes some bug fixes and tests for stubout.\n\n\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@30 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "7671c9a9432698f1879540621e68bfa335f95f10",
      "tree": "8cf710f95053ad40fba33d4701de16f69a8fa468",
      "parents": [
        "a1c509d6722daa1163441cc545a79248d811e41e"
      ],
      "author": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Tue May 05 22:54:33 2009"
      },
      "committer": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Tue May 05 22:54:33 2009"
      },
      "message": "Fix for Issue 3, submitted by a...@therobots.org.\n\n\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@29 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "a1c509d6722daa1163441cc545a79248d811e41e",
      "tree": "e89b513f88a0890bf8657ba85d7b400717d2c13e",
      "parents": [
        "3394b66def83f9779150ba53f8d462300d7b279a"
      ],
      "author": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Fri Mar 20 17:03:34 2009"
      },
      "committer": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Fri Mar 20 17:03:34 2009"
      },
      "message": "Fix for Issue 5, submitted by agoratim.\n\n\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@28 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "3394b66def83f9779150ba53f8d462300d7b279a",
      "tree": "48fe326d2c57c5129fd52c20ca57b3905dadb33f",
      "parents": [
        "5ac2e500588d617b2b18777d202b5fd36081adb3"
      ],
      "author": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Wed Nov 12 19:01:43 2008"
      },
      "committer": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Wed Nov 12 19:01:43 2008"
      },
      "message": "Patch from Matt Brown (mdbrow@gmail.com) to inspect the arguments of mocked methods.  Alright! :)\n\n\n\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@26 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "5ac2e500588d617b2b18777d202b5fd36081adb3",
      "tree": "9b196f23984a15e84a443b992b89c42f0e27871f",
      "parents": [
        "448a1affa21e96e1f5edeb8ad7f1dd74d8fdf247"
      ],
      "author": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Fri Oct 24 00:51:29 2008"
      },
      "committer": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Fri Oct 24 00:51:29 2008"
      },
      "message": "Added support for __contains__, thanks to Adam Lowry.\n\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@25 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "448a1affa21e96e1f5edeb8ad7f1dd74d8fdf247",
      "tree": "74b8ff190d3882de369b286d229fd1dfb49fd30f",
      "parents": [
        "b67bfae5dd594cda5cfc986fc7bea5ee19906b40"
      ],
      "author": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Tue Aug 19 21:29:14 2008"
      },
      "committer": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Tue Aug 19 21:29:14 2008"
      },
      "message": "\nAdded import for inspect, and tests for stubout.  Patch by Manuel Holtgrewe.\n\nA    stubout_testee.py\nA    stubout_test.py\nM    stubout.py\n\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@24 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "b67bfae5dd594cda5cfc986fc7bea5ee19906b40",
      "tree": "9b16322d94fd730bb71a7ff9d11220d4376d8631",
      "parents": [
        "981e2eb43edcec55b62ac38fc58b01f9e9dfdc80"
      ],
      "author": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Tue Jul 01 21:24:54 2008"
      },
      "committer": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Tue Jul 01 21:24:54 2008"
      },
      "message": "Remove duplicate NotTest.  Bad patch.\n\n\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@19 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "981e2eb43edcec55b62ac38fc58b01f9e9dfdc80",
      "tree": "8953500bb91571ccce00698c7a1ae3ab1dad4ec1",
      "parents": [
        "1c502e37d1243faa8678f7c35943fd89ab2102f9"
      ],
      "author": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Tue Jul 01 20:47:46 2008"
      },
      "committer": {
        "name": "smiddlek",
        "email": "smiddlek@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Tue Jul 01 20:47:46 2008"
      },
      "message": "Add a Not comparator to compose with other comparators.\n\nPatch by: Benoit Sigoure \u003cbenoits@google.com\u003e\n\n\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@18 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "1c502e37d1243faa8678f7c35943fd89ab2102f9",
      "tree": "fd45b7575ba3caa42a345752e2c5881e123c84cb",
      "parents": [
        "7f2c742a739a4a81009d0be82d29bbde0cecd222"
      ],
      "author": {
        "name": "dglasser",
        "email": "dglasser@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Tue Jul 01 01:43:55 2008"
      },
      "committer": {
        "name": "dglasser",
        "email": "dglasser@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Tue Jul 01 01:43:55 2008"
      },
      "message": "Fix MoxTestBase to be usable with multiple-inheritance.\n\nMoxTestBase was redefining setUp() but it didn\u0027t use super() to\ncall setUp recursively on the other parent classes defined in MRO.\n\nPatch by: Benoit Sigoure \u003ctsuna@lrde.epita.fr\u003e\n\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@17 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "7f2c742a739a4a81009d0be82d29bbde0cecd222",
      "tree": "44814b08390ef0853611cb749678e480712d4317",
      "parents": [
        "2e0f37c942510f734cbd29b27275f1676c595506"
      ],
      "author": {
        "name": "dglasser",
        "email": "dglasser@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Wed Jun 18 23:30:15 2008"
      },
      "committer": {
        "name": "dglasser",
        "email": "dglasser@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Wed Jun 18 23:30:15 2008"
      },
      "message": "Write a README.\n\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@12 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "2e0f37c942510f734cbd29b27275f1676c595506",
      "tree": "c6e6ad55d18d9c019cabe97f9b8ff4a216fee607",
      "parents": [
        "c2104d07ae4df6c4fd0553c401b4c920939ce1d8"
      ],
      "author": {
        "name": "dglasser",
        "email": "dglasser@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Tue Jun 17 05:59:15 2008"
      },
      "committer": {
        "name": "dglasser",
        "email": "dglasser@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Tue Jun 17 05:59:15 2008"
      },
      "message": "Start our first release at 0.5.0, not 1.0.0.\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@11 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "c2104d07ae4df6c4fd0553c401b4c920939ce1d8",
      "tree": "8155d90ef6e1eb2f4c7d538dde06120e48e0d558",
      "parents": [
        "421cceb4c0588bcbf5b843f8c0e7de4912924204"
      ],
      "author": {
        "name": "dglasser",
        "email": "dglasser@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Mon Jun 16 21:30:12 2008"
      },
      "committer": {
        "name": "dglasser",
        "email": "dglasser@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Mon Jun 16 21:30:12 2008"
      },
      "message": "Include the mox_test_helper.py in the distribution.\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@10 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "421cceb4c0588bcbf5b843f8c0e7de4912924204",
      "tree": "8cd4224a34d04bbd1be834fab8d517a033b5e8dd",
      "parents": [
        "8689cfa340245a0ac04e5b04f2eca94303f01ee2"
      ],
      "author": {
        "name": "dglasser",
        "email": "dglasser@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Mon Jun 16 21:04:49 2008"
      },
      "committer": {
        "name": "dglasser",
        "email": "dglasser@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Mon Jun 16 21:04:49 2008"
      },
      "message": "Fix mailing list address.\n\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@8 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "8689cfa340245a0ac04e5b04f2eca94303f01ee2",
      "tree": "50d272351c5fcec38d4fda8c3022c3186f27329c",
      "parents": [
        "2f8a16fe0037bf288bca6934680cd0eeb12172b6"
      ],
      "author": {
        "name": "dglasser",
        "email": "dglasser@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Fri Jun 13 23:00:27 2008"
      },
      "committer": {
        "name": "dglasser",
        "email": "dglasser@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Fri Jun 13 23:00:27 2008"
      },
      "message": "Initial import of mox (originally an internal Google project).\n\nIt\u0027s not quite ready for release yet, but it\u0027s been appropriately\nscrubbed and relicensed.\n\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@7 b1010a0a-674b-0410-b734-77272b80c875\n"
    },
    {
      "commit": "2f8a16fe0037bf288bca6934680cd0eeb12172b6",
      "tree": "4b825dc642cb6eb9a060e54bf8d69288fbee4904",
      "parents": [],
      "author": {
        "name": "(no author)",
        "email": "(no author)@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Mon Apr 21 19:23:49 2008"
      },
      "committer": {
        "name": "(no author)",
        "email": "(no author)@b1010a0a-674b-0410-b734-77272b80c875",
        "time": "Mon Apr 21 19:23:49 2008"
      },
      "message": "Initial directory structure.\n\ngit-svn-id: http://pymox.googlecode.com/svn/trunk@1 b1010a0a-674b-0410-b734-77272b80c875\n"
    }
  ]
}
