)]}'
{
  "log": [
    {
      "commit": "2c82b4ff12b2ea5d1ac23e49281d496997370841",
      "tree": "c53cef17a87b9af1c789592e8ca5d6fd881949eb",
      "parents": [
        "0405b6860df562d06be4f60ca69e64743aaec03f"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Fri Mar 15 23:56:35 2019"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Fri Mar 15 23:56:35 2019"
      },
      "message": "Use 10 (not 6) bits in source version fields B-E.\n"
    },
    {
      "commit": "0405b6860df562d06be4f60ca69e64743aaec03f",
      "tree": "275bd95b44ef39ade7ab31ba8afb18823d57b14a",
      "parents": [
        "45b7e017a894364c415978e31df1ca9db450f189"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Fri Mar 15 20:51:02 2019"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Fri Mar 15 20:51:02 2019"
      },
      "message": "Fix build tool version output.\n"
    },
    {
      "commit": "45b7e017a894364c415978e31df1ca9db450f189",
      "tree": "d5db22aa848cdb972e3ae11f19c688b393df584e",
      "parents": [
        "af6c3b71dbef90901bbd2c55506063b04d9eaff6"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Wed Mar 13 10:31:44 2019"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Wed Mar 13 10:31:44 2019"
      },
      "message": "The _Atomic types don\u0027t need ().\n"
    },
    {
      "commit": "af6c3b71dbef90901bbd2c55506063b04d9eaff6",
      "tree": "fb9d397fe061fb35e68d060e8fe422b593fd3253",
      "parents": [
        "910eabf9cebc468f0486701b0f53d843ab01b8d4"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Tue Mar 12 18:00:17 2019"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Tue Mar 12 18:00:17 2019"
      },
      "message": "Remove Frameworks group.  This does not exist in new projects.\n"
    },
    {
      "commit": "910eabf9cebc468f0486701b0f53d843ab01b8d4",
      "tree": "190c9947abfaad309df65a0eb5b9ca8823c45fa0",
      "parents": [
        "d1fec2c076dadd1578bfdf98c8eae867cbdabd4a"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Tue Mar 12 17:55:30 2019"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Tue Mar 12 17:55:30 2019"
      },
      "message": "Remove the STRIP_INSTALLED_PRODUCT \u003d NO that got added to all target from previous merge.\n"
    },
    {
      "commit": "d1fec2c076dadd1578bfdf98c8eae867cbdabd4a",
      "tree": "84df0ced07f53042a5fd85ffea0b9e4f4bc45bb7",
      "parents": [
        "1f15e74917846b2469f057b6d6f2636900a57630",
        "69293a7cdd934a67a36ba1cfc68b5e5ea4a5bee1"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Tue Mar 12 17:47:28 2019"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Mar 12 17:47:28 2019"
      },
      "message": "Merge pull request #58 from apjanke/remove-openssl-reference\n\nRemove framework reference to OpenSSL\u0027s libcrypto"
    },
    {
      "commit": "1f15e74917846b2469f057b6d6f2636900a57630",
      "tree": "b96b7d8c05435cbc6cc1a1ec8186d3c252fd0d4c",
      "parents": [
        "58d6825c5b08ee4cfb7252b1c54776a3d0c5072a",
        "48c261b9f3800180aac107e8d7cd43f54b12b4b1"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Tue Mar 12 17:26:23 2019"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Tue Mar 12 17:26:23 2019"
      },
      "message": "Merge remote-tracking branch \u0027sdefresne/master\u0027\n"
    },
    {
      "commit": "58d6825c5b08ee4cfb7252b1c54776a3d0c5072a",
      "tree": "84dd7e34580af3596450cb12104672c71f4255b5",
      "parents": [
        "c79ed7e2166e17fc0bb054a3312b030f6d4028a9"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Mon Mar 04 06:48:55 2019"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Tue Mar 12 15:21:53 2019"
      },
      "message": "Add a few notes.\n"
    },
    {
      "commit": "c79ed7e2166e17fc0bb054a3312b030f6d4028a9",
      "tree": "eae9164e6eb0c02ad10a533eed289485d6a0a749",
      "parents": [
        "c348a452becd27d38c452f6ca74cd61fb52d8ca8"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Mon Mar 04 06:39:41 2019"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Tue Mar 12 15:21:48 2019"
      },
      "message": "Create a placeholder type if the type is missing.\n\nThis fixes most of the remaining parse errors.\n"
    },
    {
      "commit": "c348a452becd27d38c452f6ca74cd61fb52d8ca8",
      "tree": "35aee3015ffc8799215766c86767100d6040eeab",
      "parents": [
        "26f6c0099a0af3cf3b800c3ed0f332f374200694"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Mon Mar 04 06:38:41 2019"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Tue Mar 12 15:18:59 2019"
      },
      "message": "Change error message to distinguish between blank types and other parsing errors.\n"
    },
    {
      "commit": "26f6c0099a0af3cf3b800c3ed0f332f374200694",
      "tree": "778dce3bc48c572fbeeb8f8d8325a0c06d0a5111",
      "parents": [
        "8d8ebfef8a45b9e830c2a0d91961a40c43885ec3"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Mon Mar 04 04:49:09 2019"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Tue Mar 12 15:18:59 2019"
      },
      "message": "Exclude app from tests.\n"
    },
    {
      "commit": "8d8ebfef8a45b9e830c2a0d91961a40c43885ec3",
      "tree": "362a53298bc9d6d5c82b1047ffc0c52f230b2958",
      "parents": [
        "b5f8a4598440241024d420bb168607828ea391e2"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Sun Mar 03 07:53:35 2019"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Tue Mar 12 15:18:32 2019"
      },
      "message": "Add placeholder for types that start with A, for _Atomic() types.\n"
    },
    {
      "commit": "b5f8a4598440241024d420bb168607828ea391e2",
      "tree": "59737aaee2175500003c5ab029a52948eb712f35",
      "parents": [
        "7e8a9f622882657db4d653a75702d93d15cdda45"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Sun Mar 03 07:10:45 2019"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Sun Mar 03 07:10:45 2019"
      },
      "message": "Do comparisons against version 3.5.\n"
    },
    {
      "commit": "7e8a9f622882657db4d653a75702d93d15cdda45",
      "tree": "0bbf8ec5dc65556323a590e0fea70313dedae0f9",
      "parents": [
        "1e821e3f7286da498ab53748d4c0190dd23939a9"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Sun Mar 03 07:09:53 2019"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Sun Mar 03 07:10:29 2019"
      },
      "message": "Add more platform descriptions.\n"
    },
    {
      "commit": "1e821e3f7286da498ab53748d4c0190dd23939a9",
      "tree": "08ac8476c52ba8fddf859928a3b64c4844ed00dc",
      "parents": [
        "4fa517775c63bf97d36a8d920b5cc2d8c040b7b8"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Sat Mar 02 22:51:24 2019"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Sat Mar 02 22:51:24 2019"
      },
      "message": "Add Dock and Finder to command line args for testing.\n"
    },
    {
      "commit": "4fa517775c63bf97d36a8d920b5cc2d8c040b7b8",
      "tree": "55c9fe204a467c31d2ed04851d9fdcc05caac3a2",
      "parents": [
        "63b4c27a77f85cad0b75f63fe13772fb25b02064"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Sat Mar 02 20:26:17 2019"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Sat Mar 02 22:50:58 2019"
      },
      "message": "Replace CommonCrypto Blowfish decryption with a simple C implementation.\n\nCommonCrypto on OS X 10.11.5 started enforcing limits on the keysize which\nare too small, and so this couldn\u0027t dump Finder and Dock after that.\n"
    },
    {
      "commit": "63b4c27a77f85cad0b75f63fe13772fb25b02064",
      "tree": "9fe50c748f424aa6fce4efa2b37f1cf571cf8f5f",
      "parents": [
        "0970c7297d31396cda01a12bac3a4a2020a1118f"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Sat Mar 02 09:39:51 2019"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Sat Mar 02 09:39:51 2019"
      },
      "message": "Add a third-party Blowfish implementation.\n"
    },
    {
      "commit": "0970c7297d31396cda01a12bac3a4a2020a1118f",
      "tree": "3905a29669abc81f8761bb70e0008e1e25fbadbb",
      "parents": [
        "272d65e90160ddd163c1a7bec5e1b0888bfe284c"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Sat Mar 02 06:56:10 2019"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Sat Mar 02 06:58:53 2019"
      },
      "message": "Update copyrights.\n"
    },
    {
      "commit": "272d65e90160ddd163c1a7bec5e1b0888bfe284c",
      "tree": "a89b5351ebfd31d111a42ce4b1d52f37cd2720ce",
      "parents": [
        "beda6d135869b11e721c7664b8ed0b23232f941f"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Sat Mar 02 06:49:59 2019"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Sat Mar 02 06:49:59 2019"
      },
      "message": "Recognize the Build Version load command.\n"
    },
    {
      "commit": "beda6d135869b11e721c7664b8ed0b23232f941f",
      "tree": "29ec03ba1e12ecc4d19091ff51ff8a445d6adef9",
      "parents": [
        "d82a2ea0aa5ee0b11e841b09b380640f0e96427b"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Thu Oct 25 02:55:20 2018"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Thu Oct 25 02:55:20 2018"
      },
      "message": "Apply Xcode 10 recommended settings.\n"
    },
    {
      "commit": "d82a2ea0aa5ee0b11e841b09b380640f0e96427b",
      "tree": "f788253757c1b0db3a824bd2c0e34ccb21299b70",
      "parents": [
        "f18d9bfbcfd6a3ed01f7dfcec69feacbd8c9cc4d"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Tue Jun 06 05:27:03 2017"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Tue Jun 06 05:27:03 2017"
      },
      "message": "Apply Xcode 9 beta recommended settings.\n"
    },
    {
      "commit": "f18d9bfbcfd6a3ed01f7dfcec69feacbd8c9cc4d",
      "tree": "945da8d9840d37c57040236c3ebd0703cdeb6e69",
      "parents": [
        "7acf1f00a03a219388a1d19d66edaa954c0be3a5"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Mon Jun 05 20:48:13 2017"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Mon Jun 05 20:48:13 2017"
      },
      "message": "Don\u0027t link against libcrypto.\n"
    },
    {
      "commit": "48c261b9f3800180aac107e8d7cd43f54b12b4b1",
      "tree": "6330681a88368bb9e059ed36207299c8c0836d84",
      "parents": [
        "7acf1f00a03a219388a1d19d66edaa954c0be3a5"
      ],
      "author": {
        "name": "Sylvain Defresne",
        "email": "sdefresne@google.com",
        "time": "Thu Apr 14 12:54:13 2016"
      },
      "committer": {
        "name": "Sylvain Defresne",
        "email": "sdefresne@google.com",
        "time": "Thu Apr 14 13:09:11 2016"
      },
      "message": "Fix READ heap-buffer-overflow errors reported by ASan.\n\nWhen initializing fixed size structure fields from strings, the number\nof bytes copied needs to be the minimum of the structure field and the\nstring byte count.\n\nFixes the following class of errors found when running a version of\nclass-dump build with ASan (Address Sanitizer):\n\n\u003d\u003d67822\u003d\u003dERROR: AddressSanitizer: heap-buffer-overflow on address 0x6030000095a0 at pc 0x0001068b4d2d bp 0x7fff595270b0 sp 0x7fff59526860\nREAD of size 16 at 0x6030000095a0 thread T0\n    #0 0x1068b4d2c in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib+0x40d2c)\n    #1 0x106716ed4 in -[CDLCSegment initWithDataCursor:] (class-dump+0x100040ed4)\n    #2 0x10672d82b in +[CDLoadCommand loadCommandWithDataCursor:] (class-dump+0x10005782b)\n    ...\n"
    },
    {
      "commit": "7acf1f00a03a219388a1d19d66edaa954c0be3a5",
      "tree": "2016700c24b44a41dd56d4beb53f6e80a29e9566",
      "parents": [
        "978d177ca6f0d2e5e34acf3e8dadc63e3140ebbc"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Thu Oct 01 23:26:39 2015"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Thu Oct 01 23:26:39 2015"
      },
      "message": "Recognize the low bit of the data pointer as marking a Swift class.\n"
    },
    {
      "commit": "69293a7cdd934a67a36ba1cfc68b5e5ea4a5bee1",
      "tree": "39412667aaec33f904352970b8475c155700bc8c",
      "parents": [
        "978d177ca6f0d2e5e34acf3e8dadc63e3140ebbc"
      ],
      "author": {
        "name": "Andrew Janke",
        "email": "andrew@apjanke.net",
        "time": "Sun Sep 27 17:39:28 2015"
      },
      "committer": {
        "name": "Andrew Janke",
        "email": "andrew@apjanke.net",
        "time": "Sun Sep 27 17:39:28 2015"
      },
      "message": "Remove framework reference to OpenSSL\u0027s libcrypto\n\nLooks like this was left over from #3.\n"
    },
    {
      "commit": "978d177ca6f0d2e5e34acf3e8dadc63e3140ebbc",
      "tree": "6a4a0727846745be1f57385fe88a1f2047b0dfbe",
      "parents": [
        "2707d03d1333f86ebdfd287b4133431d96c3fae5"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Fri Aug 07 19:54:12 2015"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Fri Aug 07 19:54:12 2015"
      },
      "message": "Validate project settings with Xcode 6.4.\n"
    },
    {
      "commit": "2707d03d1333f86ebdfd287b4133431d96c3fae5",
      "tree": "ed05522fd4b9721d6b5dc2b11e5c0f664e2c17af",
      "parents": [
        "9a805ca9db81648e45aff4ef6b0523cf680d9528"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Fri Aug 07 19:49:45 2015"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Fri Aug 07 19:49:45 2015"
      },
      "message": "Switch from OpenSSL to CommonCrypto for decryption.\n\nOpenSSL was deprecated in 10.7, and isn\u0027t available in 10.11.\n"
    },
    {
      "commit": "9a805ca9db81648e45aff4ef6b0523cf680d9528",
      "tree": "22947c9359515f8fd35b3e2744bbe3f49224c582",
      "parents": [
        "2daa8824063c984dd6babe8fccecdb9d1fb67719",
        "e128b63c6d6c5009f3af7327f18f443592e29e3e"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Fri Jul 10 01:43:15 2015"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Fri Jul 10 01:43:15 2015"
      },
      "message": "Merge branch \u0027master\u0027 of https://github.com/emonti/class-dump into emonti-master\n"
    },
    {
      "commit": "e128b63c6d6c5009f3af7327f18f443592e29e3e",
      "tree": "5975663303446acd5b1eb2712b9c7eff4872c672",
      "parents": [
        "cce181fd9c1f1bb31d73b5ab59998ac21bc92c7e"
      ],
      "author": {
        "name": "Eric Monti",
        "email": "em@squareup.com",
        "time": "Thu Jun 11 20:56:18 2015"
      },
      "committer": {
        "name": "Eric Monti",
        "email": "em@squareup.com",
        "time": "Thu Jun 11 21:14:04 2015"
      },
      "message": "support new __DATA_CONST segment in ios 9 binaries\n"
    },
    {
      "commit": "2daa8824063c984dd6babe8fccecdb9d1fb67719",
      "tree": "83d21e0317f86d24d1b5315b4f4ef74008ea3946",
      "parents": [
        "69d1f19afbc775e0c414cb43662f078f08d06db1"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Wed Jun 03 01:12:07 2015"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Wed Jun 03 01:12:07 2015"
      },
      "message": "Replace opendiff with ksdiff.\n"
    },
    {
      "commit": "69d1f19afbc775e0c414cb43662f078f08d06db1",
      "tree": "296d899852760f096da9f37b8c335a5a01562afb",
      "parents": [
        "cce181fd9c1f1bb31d73b5ab59998ac21bc92c7e"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Wed Apr 22 03:19:12 2015"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Wed Apr 22 03:19:12 2015"
      },
      "message": "Update copyrights for 2015.\n"
    },
    {
      "commit": "cce181fd9c1f1bb31d73b5ab59998ac21bc92c7e",
      "tree": "71c914a33e02e66c9705f640cca151da94504c2c",
      "parents": [
        "71b75185529cf4afc19790837e6e77fe0811f936",
        "1dc12202f19d17bdd7b5773afdff41a96852d18e"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Sat Oct 18 00:55:16 2014"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Sat Oct 18 00:55:16 2014"
      },
      "message": "Merge pull request #47 from OleksiyA/seg-fault-fix\n\nCorrected set-fault when self.name is nil and componentsJoinedByString failing to join such nil components."
    },
    {
      "commit": "1dc12202f19d17bdd7b5773afdff41a96852d18e",
      "tree": "71c914a33e02e66c9705f640cca151da94504c2c",
      "parents": [
        "71b75185529cf4afc19790837e6e77fe0811f936"
      ],
      "author": {
        "name": "Oleksiy Ivanov",
        "email": "oleksiy@fb.com",
        "time": "Fri Oct 17 23:49:53 2014"
      },
      "committer": {
        "name": "Oleksiy Ivanov",
        "email": "oleksiy@fb.com",
        "time": "Fri Oct 17 23:49:53 2014"
      },
      "message": "Corrected set-fault when self.name is nil and componentsJoinedByString failing to join such nil components.\n"
    },
    {
      "commit": "71b75185529cf4afc19790837e6e77fe0811f936",
      "tree": "9ea84a803039bb8c37e9e3d12cf3ab5a755b7b22",
      "parents": [
        "3ef4b07f305a5466842d67cb59cccd5b0dd2931f",
        "055f8b8d923820b1069f6b98b9e4671b36805c61"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Fri Mar 28 01:46:24 2014"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Fri Mar 28 01:46:24 2014"
      },
      "message": "Merge pull request #42 from 0xced/fix-section-offset\n\nFix invalid section offsets"
    },
    {
      "commit": "055f8b8d923820b1069f6b98b9e4671b36805c61",
      "tree": "9ea84a803039bb8c37e9e3d12cf3ab5a755b7b22",
      "parents": [
        "3ef4b07f305a5466842d67cb59cccd5b0dd2931f"
      ],
      "author": {
        "name": "Cédric Luthi",
        "email": "cedric.luthi@gmail.com",
        "time": "Wed Mar 12 16:25:53 2014"
      },
      "committer": {
        "name": "Cédric Luthi",
        "email": "cedric.luthi@gmail.com",
        "time": "Thu Mar 27 20:17:01 2014"
      },
      "message": "Fix invalid section offsets\n\nHopper v3 (http://www.hopperapp.com) has invalid section offsets in order to trick reverse engineering tools such as class-dump. Since dyld doesn\u0027t actually read those section offsets when loading binaries, it\u0027s safe to compute them and fix them.\n"
    },
    {
      "commit": "3ef4b07f305a5466842d67cb59cccd5b0dd2931f",
      "tree": "edac66cb4b13be7266881b87a1fda7a315e3530d",
      "parents": [
        "d19f77eb0ae516e602e16d2eeff01d32a6e37042",
        "e9783824da109268dce56ded0cb3755a79b8e66b"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Sat Mar 22 02:16:46 2014"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Sat Mar 22 02:16:46 2014"
      },
      "message": "Merge pull request #41 from 0xced/sdk-10.9\n\nUse the encryption info for 64-bits goodies available in the 10.9 SDK"
    },
    {
      "commit": "e9783824da109268dce56ded0cb3755a79b8e66b",
      "tree": "5bffa39ab0771097a5bb3caaf290914d038ebc22",
      "parents": [
        "606ad2cf2b4565efe69e0321ed4886840eabfdab"
      ],
      "author": {
        "name": "Cédric Luthi",
        "email": "cedric.luthi@gmail.com",
        "time": "Fri Dec 06 16:30:20 2013"
      },
      "committer": {
        "name": "Cédric Luthi",
        "email": "cedric.luthi@gmail.com",
        "time": "Fri Mar 14 12:56:31 2014"
      },
      "message": "Use the encryption info for 64-bits goodies available in the 10.9 SDK\n"
    },
    {
      "commit": "d19f77eb0ae516e602e16d2eeff01d32a6e37042",
      "tree": "8abcfcf291d5bf0878f99a99e1e0aaa0abf6ce6e",
      "parents": [
        "dbc8e49bd6a4337b25535f0a67f144b3d222d0ca"
      ],
      "author": {
        "name": "Cédric Luthi",
        "email": "cedric.luthi@gmail.com",
        "time": "Wed Mar 12 15:40:29 2014"
      },
      "committer": {
        "name": "Cédric Luthi",
        "email": "cedric.luthi@gmail.com",
        "time": "Wed Mar 12 15:47:25 2014"
      },
      "message": "Merge CDLCSegment32 and CDLCSegment64 into CDLCSegment\n"
    },
    {
      "commit": "dbc8e49bd6a4337b25535f0a67f144b3d222d0ca",
      "tree": "ad1399d4fd82847af419c6ee200ef59629456690",
      "parents": [
        "508209071fc6abed1205d27598dd9559d55ed382"
      ],
      "author": {
        "name": "Cédric Luthi",
        "email": "cedric.luthi@gmail.com",
        "time": "Mon Mar 10 19:32:56 2014"
      },
      "committer": {
        "name": "Cédric Luthi",
        "email": "cedric.luthi@gmail.com",
        "time": "Wed Mar 12 15:09:14 2014"
      },
      "message": "Simplify reading of section name and segment name\n"
    },
    {
      "commit": "508209071fc6abed1205d27598dd9559d55ed382",
      "tree": "4e0df2193f9c26ea2c920f3d3cfccb96f271e7e6",
      "parents": [
        "606ad2cf2b4565efe69e0321ed4886840eabfdab"
      ],
      "author": {
        "name": "Cédric Luthi",
        "email": "cedric.luthi@gmail.com",
        "time": "Mon Mar 10 14:11:50 2014"
      },
      "committer": {
        "name": "Cédric Luthi",
        "email": "cedric.luthi@gmail.com",
        "time": "Wed Mar 12 15:09:13 2014"
      },
      "message": "Merge CDSection32 and CDSection64 into CDSection\n"
    },
    {
      "commit": "606ad2cf2b4565efe69e0321ed4886840eabfdab",
      "tree": "bbeb87d7e36f97c523b3ce00fb77edd05c1ccbf9",
      "parents": [
        "e79d0ad486b8a4f0e586827357a05750f67af421",
        "85781476c296f46e68e3351943184892e5d40f0b"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Tue Feb 11 03:13:00 2014"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Tue Feb 11 03:13:00 2014"
      },
      "message": "Merge branch \u00270xced-optimizations\u0027\n"
    },
    {
      "commit": "85781476c296f46e68e3351943184892e5d40f0b",
      "tree": "bbeb87d7e36f97c523b3ce00fb77edd05c1ccbf9",
      "parents": [
        "e79d0ad486b8a4f0e586827357a05750f67af421",
        "3ac813a71920a232bcb57e674308e462c6c07355"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Tue Feb 11 01:57:35 2014"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Tue Feb 11 01:57:35 2014"
      },
      "message": "Merge branch \u0027optimizations\u0027 of git://github.com/0xced/class-dump into 0xced-optimizations\n\nConflicts:\n\tSource/CDType.m\n"
    },
    {
      "commit": "e79d0ad486b8a4f0e586827357a05750f67af421",
      "tree": "05fb2d787e3fc287e4aae3a7decda759f4675293",
      "parents": [
        "c99d07cb00f21ec6475054109771a637cdfddea7"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Tue Feb 11 01:51:06 2014"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Tue Feb 11 01:51:06 2014"
      },
      "message": "Don\u0027t need to initialize str to nil.\n"
    },
    {
      "commit": "c99d07cb00f21ec6475054109771a637cdfddea7",
      "tree": "569cfd1b34a20ba6e6ddf688f1a40457c781f432",
      "parents": [
        "2f4b6c186756d13c5b30db78368b707049a7cb04",
        "f12b727a25f25d8a6681e1f5c21b4dfc53824438"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Tue Feb 11 01:47:45 2014"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Tue Feb 11 01:47:45 2014"
      },
      "message": "Merge pull request #38 from rodionovd/patch-1\n\nChoose custom root SDK path depending on an Xcode location"
    },
    {
      "commit": "2f4b6c186756d13c5b30db78368b707049a7cb04",
      "tree": "e6591fb8cca44a5f640b51eeaf24a5438dd50b7e",
      "parents": [
        "de6c6a805efd1c82d4a51f0c3b2a53523ddf4730"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Mon Feb 10 22:45:29 2014"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Tue Feb 11 00:39:58 2014"
      },
      "message": "Fix warning: Don\u0027t try to link static library with libcrypto.\n"
    },
    {
      "commit": "de6c6a805efd1c82d4a51f0c3b2a53523ddf4730",
      "tree": "bb8b91e6fa26442f4fcf81d6dd4608629de72dfd",
      "parents": [
        "f16b2199d64767d2c4b2380de6f9c375845421bc"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Mon Feb 10 22:43:46 2014"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Tue Feb 11 00:39:58 2014"
      },
      "message": "Remove -Wno-readonly-setter-attrs, which is no longer recognized.\n"
    },
    {
      "commit": "f16b2199d64767d2c4b2380de6f9c375845421bc",
      "tree": "dee705a8d38623d569bf03390244968e915ec721",
      "parents": [
        "5dae84a50a13f2f4c752390d05e58ba6c6ca780f"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Mon Feb 10 22:41:58 2014"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Tue Feb 11 00:39:58 2014"
      },
      "message": "Validate project settings with Xcode 5.1dp5.\n"
    },
    {
      "commit": "5dae84a50a13f2f4c752390d05e58ba6c6ca780f",
      "tree": "961b8e829e1ca4bb295c94405db4d9252b3d02d5",
      "parents": [
        "a0a82849246fadeb7e57c204b4e92b276825152c"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Tue Feb 11 00:39:41 2014"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Tue Feb 11 00:39:41 2014"
      },
      "message": "Update copyrights for 2014.\n"
    },
    {
      "commit": "a0a82849246fadeb7e57c204b4e92b276825152c",
      "tree": "f53d0b19edc3eb11c777eb5c1a40a5601756facb",
      "parents": [
        "c3aed96426efa5c3b2c9a88ecff3368db0d5e578"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Tue Feb 11 00:33:46 2014"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Tue Feb 11 00:33:46 2014"
      },
      "message": "Update bits of code style.\n"
    },
    {
      "commit": "c3aed96426efa5c3b2c9a88ecff3368db0d5e578",
      "tree": "ba9009643ea42413f4b4d97db86d7584537ab2b7",
      "parents": [
        "50387628b5e3bbd40d8b040bdc8e361c61a837bc"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Mon Feb 10 23:41:22 2014"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Tue Feb 11 00:11:01 2014"
      },
      "message": "Add space between class name and protocols, to match earlier versions.\n\nThis makes searching for other differences easier.\n\nOther differences in output from 3.5:\nFinder: TNSRef, NSObject\u003cNSCopying\u003e *fRef -\u003e NSObject *fRef\niMovie: FFProcrastinatedDispatch_t, NSObject\u003cOS_dispatch_queue\u003e *queue -\u003e NSObject *queue\n"
    },
    {
      "commit": "50387628b5e3bbd40d8b040bdc8e361c61a837bc",
      "tree": "5723edbab5997481fa741e446ff4a85f507cf1c8",
      "parents": [
        "f7c4e0a85ee12dcc2331e11e17ad105333da2e54",
        "ef5465fca77a8094a7ce239c42dd40985ec96f80"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Tue Feb 11 00:07:37 2014"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Tue Feb 11 00:07:37 2014"
      },
      "message": "Merge pull request #39 from aricha/master\n\nImproved header import generation and forward declaration for classes, protocols, and categories"
    },
    {
      "commit": "ef5465fca77a8094a7ce239c42dd40985ec96f80",
      "tree": "5723edbab5997481fa741e446ff4a85f507cf1c8",
      "parents": [
        "5f1e0e3e292f918a9029e634a2700e1e4b6828ed"
      ],
      "author": {
        "name": "Andrew Richardson",
        "email": "andrewr114@gmail.com",
        "time": "Wed Jan 08 02:46:45 2014"
      },
      "committer": {
        "name": "Andrew Richardson",
        "email": "andrewr114@gmail.com",
        "time": "Wed Jan 08 02:46:45 2014"
      },
      "message": "-For external classes, use the class name as a fallback if the symbol can’t be found (for some strange reason)\n-OCD cleanup\n"
    },
    {
      "commit": "5f1e0e3e292f918a9029e634a2700e1e4b6828ed",
      "tree": "521ee5f2e3a78348421878bde1cfc8147f0711a0",
      "parents": [
        "1e70fe55cf25fb62f99140ef1eae000fe44b8fa6"
      ],
      "author": {
        "name": "Andrew Richardson",
        "email": "andrewr114@gmail.com",
        "time": "Tue Jan 07 05:34:46 2014"
      },
      "committer": {
        "name": "Andrew Richardson",
        "email": "andrewr114@gmail.com",
        "time": "Tue Jan 07 05:35:21 2014"
      },
      "message": "-Added CDOCClassReference to wrap any of a CDOCClass, CDSymbol, or NSString (class name) and use that to infer the class name and whether or not the class is external\n-Use that class instead of a weakly typed property for CDOCClass’s superClassRef and CDOCCategory’s classRef\n"
    },
    {
      "commit": "1e70fe55cf25fb62f99140ef1eae000fe44b8fa6",
      "tree": "e6753a92bed428b389c7ddcfa59dd9a488c320c5",
      "parents": [
        "ddc7ec661f01bfc7e75dcf365f5ba381e91b4fa1"
      ],
      "author": {
        "name": "Andrew Richardson",
        "email": "andrewr114@gmail.com",
        "time": "Mon Jan 06 05:27:26 2014"
      },
      "committer": {
        "name": "Andrew Richardson",
        "email": "andrewr114@gmail.com",
        "time": "Mon Jan 06 05:27:26 2014"
      },
      "message": "Remove all extensions when parsing a framework name from its path\n"
    },
    {
      "commit": "ddc7ec661f01bfc7e75dcf365f5ba381e91b4fa1",
      "tree": "147bdd04a40375efff0a810b0a69a6bd32a9954a",
      "parents": [
        "bc7d56f64e6de647ad2e453dda803cf96f92eaab"
      ],
      "author": {
        "name": "Andrew Richardson",
        "email": "andrewr114@gmail.com",
        "time": "Mon Jan 06 04:50:36 2014"
      },
      "committer": {
        "name": "Andrew Richardson",
        "email": "andrewr114@gmail.com",
        "time": "Mon Jan 06 04:50:36 2014"
      },
      "message": "Renamed CDOCClass’s superClass property to superClassRef, for consistency with CDOCCategory, and to avoid confusion with -superclass (all lowercase)\n"
    },
    {
      "commit": "bc7d56f64e6de647ad2e453dda803cf96f92eaab",
      "tree": "451f683dc0e07e4ca53498aa7fdd0f13e20315c8",
      "parents": [
        "af5d37bcfa61dc4c208f349c4b0e34c318b1229b"
      ],
      "author": {
        "name": "Andrew Richardson",
        "email": "andrewr114@gmail.com",
        "time": "Mon Jan 06 04:47:12 2014"
      },
      "committer": {
        "name": "Andrew Richardson",
        "email": "andrewr114@gmail.com",
        "time": "Mon Jan 06 04:47:12 2014"
      },
      "message": "-Replaced CDOCCategory’s className property with classRef, which can handle a CDOCClass, CDSymbol, or NSString, and infer the class name based on that\n-When a category class is external (ie. the classRef property is a CDSymbol), use the symbol’s source dylib path to import the source framework correctly\n-Reverted ObjC1 processor to use its existing behaviour for handling superclasses (just use the raw string), and added the ability for CDOCClass to handle an NSString for superClass to return the correct superClassName\n"
    },
    {
      "commit": "af5d37bcfa61dc4c208f349c4b0e34c318b1229b",
      "tree": "cdf7d85b6b60f693431eb9a343f4e607e2a4ebc7",
      "parents": [
        "a31314f061e970cabf03e390fcf5bb6fdc31c543"
      ],
      "author": {
        "name": "Andrew Richardson",
        "email": "andrewr114@gmail.com",
        "time": "Mon Jan 06 04:04:03 2014"
      },
      "committer": {
        "name": "Andrew Richardson",
        "email": "andrewr114@gmail.com",
        "time": "Mon Jan 06 04:04:03 2014"
      },
      "message": "-Fixed a check for id types in protocol type string\n-Nitpicking protocol type styling (removed the space between the type and the protocol)\n"
    },
    {
      "commit": "a31314f061e970cabf03e390fcf5bb6fdc31c543",
      "tree": "93ddab769a857755bd64358dc1ca53efa6dfd714",
      "parents": [
        "397cb4564c6a38e0a96dafa90c52bcf59213b32d"
      ],
      "author": {
        "name": "Andrew Richardson",
        "email": "andrewr114@gmail.com",
        "time": "Mon Jan 06 03:09:24 2014"
      },
      "committer": {
        "name": "Andrew Richardson",
        "email": "andrewr114@gmail.com",
        "time": "Mon Jan 06 03:09:24 2014"
      },
      "message": "Forward-declare protocols instead of importing them when possible\n"
    },
    {
      "commit": "397cb4564c6a38e0a96dafa90c52bcf59213b32d",
      "tree": "940fd37fcddc5279d8c3514adbb8a9ffef49a723",
      "parents": [
        "7cd199dec9cc576af97a3455eef3aa8089ea49fd"
      ],
      "author": {
        "name": "Andrew Richardson",
        "email": "andrewr114@gmail.com",
        "time": "Mon Jan 06 02:58:49 2014"
      },
      "committer": {
        "name": "Andrew Richardson",
        "email": "andrewr114@gmail.com",
        "time": "Mon Jan 06 02:58:49 2014"
      },
      "message": "-Correctly handle object types with both a class name and a protocol (ie. NSObject\u003cNSCopying\u003e *) referenced in methods and ivars\n-Add imports for protocols referenced in types\n"
    },
    {
      "commit": "7cd199dec9cc576af97a3455eef3aa8089ea49fd",
      "tree": "16ea28d29c34ae1e27dbdc3bb789eb6e459d213d",
      "parents": [
        "60aa5002a503b47a3547552b88b30a3b7fb496b5"
      ],
      "author": {
        "name": "Andrew Richardson",
        "email": "andrewr114@gmail.com",
        "time": "Mon Jan 06 00:19:24 2014"
      },
      "committer": {
        "name": "Andrew Richardson",
        "email": "andrewr114@gmail.com",
        "time": "Mon Jan 06 00:19:24 2014"
      },
      "message": "Use current framework for protocol imports (since they’re currently all declared in the dump for that framework, rather than attempting to infer their real source framework)\n"
    },
    {
      "commit": "60aa5002a503b47a3547552b88b30a3b7fb496b5",
      "tree": "0c199dd54daaa2954627cd22765e26ed21d761c8",
      "parents": [
        "a50af909551cac1472a27acaa9d0b326d52105e1"
      ],
      "author": {
        "name": "Andrew Richardson",
        "email": "andrewr114@gmail.com",
        "time": "Sun Jan 05 23:48:22 2014"
      },
      "committer": {
        "name": "Andrew Richardson",
        "email": "andrewr114@gmail.com",
        "time": "Sun Jan 05 23:48:22 2014"
      },
      "message": "-Append “-Protocol” to protocol imports to match the behaviour of class-dump’s exporting of protocol headers\n-Map CoreFoundation NS* classes to Foundation imports, so imports for NSObject, NSArray, etc use the public headers by default\n"
    },
    {
      "commit": "a50af909551cac1472a27acaa9d0b326d52105e1",
      "tree": "357822e102bf9be93c8d6b14ff7d44de6ceccda1",
      "parents": [
        "f7c4e0a85ee12dcc2331e11e17ad105333da2e54"
      ],
      "author": {
        "name": "Andrew Richardson",
        "email": "andrewr114@gmail.com",
        "time": "Sun Jan 05 23:46:25 2014"
      },
      "committer": {
        "name": "Andrew Richardson",
        "email": "andrewr114@gmail.com",
        "time": "Sun Jan 05 23:46:25 2014"
      },
      "message": "Correctly resolve imports for external classes:\n-Replaced CDOCClass’s superClassName with a superClass object that can be either a reference to an internal class (CDOCClass instance) or a symbol representing an external class (CDSymbol instance)\n-Map external class symbols in CDLCSymbolTable\n-Fixed some bugs with mapping library ordinals to symbols\n"
    },
    {
      "commit": "3ac813a71920a232bcb57e674308e462c6c07355",
      "tree": "897e5628429ae58db61c2bd72fc1049c4346813a",
      "parents": [
        "ddea5942721243e99143f2b5ee721e5384daa434"
      ],
      "author": {
        "name": "Cédric Luthi",
        "email": "cedric.luthi@gmail.com",
        "time": "Sun Mar 17 19:24:15 2013"
      },
      "committer": {
        "name": "Cédric Luthi",
        "email": "cedric.luthi@gmail.com",
        "time": "Tue Dec 10 23:04:51 2013"
      },
      "message": "Optimization: access ivars directly in CDTypeLexer\n"
    },
    {
      "commit": "ddea5942721243e99143f2b5ee721e5384daa434",
      "tree": "e191d9a391466dc640da0093fbeb5d7f5026ca55",
      "parents": [
        "68a6e412266e76df79e1b144681f7411a492f349"
      ],
      "author": {
        "name": "Cédric Luthi",
        "email": "cedric.luthi@gmail.com",
        "time": "Sun Mar 17 19:23:30 2013"
      },
      "committer": {
        "name": "Cédric Luthi",
        "email": "cedric.luthi@gmail.com",
        "time": "Tue Dec 10 23:04:51 2013"
      },
      "message": "Optimization: access ivars directly in CDType\n"
    },
    {
      "commit": "68a6e412266e76df79e1b144681f7411a492f349",
      "tree": "b9e509d9a4aa25a62d32d3b299ba6407fa3fdaea",
      "parents": [
        "f7c1da88cd7fc8d6929f3277ed7748c5db14f036"
      ],
      "author": {
        "name": "Cédric Luthi",
        "email": "cedric.luthi@gmail.com",
        "time": "Fri Mar 15 13:45:43 2013"
      },
      "committer": {
        "name": "Cédric Luthi",
        "email": "cedric.luthi@gmail.com",
        "time": "Tue Dec 10 23:04:51 2013"
      },
      "message": "Return cached class when available\n"
    },
    {
      "commit": "f7c1da88cd7fc8d6929f3277ed7748c5db14f036",
      "tree": "adc2b0b9b85b651a696116181400c26d12d14d13",
      "parents": [
        "50159e5c3f92ab53d49dacca92775f930f4d5b9a"
      ],
      "author": {
        "name": "Cédric Luthi",
        "email": "cedric.luthi@gmail.com",
        "time": "Fri Mar 15 13:36:48 2013"
      },
      "committer": {
        "name": "Cédric Luthi",
        "email": "cedric.luthi@gmail.com",
        "time": "Tue Dec 10 23:04:51 2013"
      },
      "message": "Optimization: delete -[CDType init] method that does nothing useful\n"
    },
    {
      "commit": "50159e5c3f92ab53d49dacca92775f930f4d5b9a",
      "tree": "f412660e5f684a3b7217e35f8c5d0a4b201bb74e",
      "parents": [
        "50738a087e81de84e2fd311e9704420374c4de2d"
      ],
      "author": {
        "name": "Cédric Luthi",
        "email": "cedric.luthi@gmail.com",
        "time": "Fri Mar 15 13:35:04 2013"
      },
      "committer": {
        "name": "Cédric Luthi",
        "email": "cedric.luthi@gmail.com",
        "time": "Tue Dec 10 23:04:51 2013"
      },
      "message": "Optimization: access ivars directly in CDMachOFileDataCursor\n"
    },
    {
      "commit": "50738a087e81de84e2fd311e9704420374c4de2d",
      "tree": "1e9ee2c4ea9cb9bd3315cab25d7dbf2949ecd7b0",
      "parents": [
        "5d96c952a6f2875aaf8b4eab26c75eaa12e17c2f"
      ],
      "author": {
        "name": "Cédric Luthi",
        "email": "cedric.luthi@gmail.com",
        "time": "Fri Mar 15 13:04:50 2013"
      },
      "committer": {
        "name": "Cédric Luthi",
        "email": "cedric.luthi@gmail.com",
        "time": "Tue Dec 10 23:04:51 2013"
      },
      "message": "Optimization: access ivars directly in CDDataCursor\n"
    },
    {
      "commit": "5d96c952a6f2875aaf8b4eab26c75eaa12e17c2f",
      "tree": "0e6e05daaaf48150a82b4f9ec60290db70429c88",
      "parents": [
        "f7c4e0a85ee12dcc2331e11e17ad105333da2e54"
      ],
      "author": {
        "name": "Cédric Luthi",
        "email": "cedric.luthi@gmail.com",
        "time": "Fri Mar 15 12:56:28 2013"
      },
      "committer": {
        "name": "Cédric Luthi",
        "email": "cedric.luthi@gmail.com",
        "time": "Tue Dec 10 23:04:51 2013"
      },
      "message": "Avoid costly autorelease pool drain\n"
    },
    {
      "commit": "f12b727a25f25d8a6681e1f5c21b4dfc53824438",
      "tree": "b4fb861b61db4eaceccc51d88a9d7cbfe54facd6",
      "parents": [
        "b67d6ee30635bd1be1cf4cc89f91bdcfa60ed4a2"
      ],
      "author": {
        "name": "rodionovd",
        "email": "i.am.rodionovd@gmail.com",
        "time": "Mon Dec 09 07:39:06 2013"
      },
      "committer": {
        "name": "rodionovd",
        "email": "i.am.rodionovd@gmail.com",
        "time": "Mon Dec 09 07:39:06 2013"
      },
      "message": "Update usage info according to a new `--sdk-ios`/`--sdk-mac` behaviour"
    },
    {
      "commit": "b67d6ee30635bd1be1cf4cc89f91bdcfa60ed4a2",
      "tree": "db23ba4c85607bbdb86385b42f13e28db2add0cc",
      "parents": [
        "f7c4e0a85ee12dcc2331e11e17ad105333da2e54"
      ],
      "author": {
        "name": "rodionovd",
        "email": "i.am.rodionovd@gmail.com",
        "time": "Sun Dec 08 17:17:52 2013"
      },
      "committer": {
        "name": "rodionovd",
        "email": "i.am.rodionovd@gmail.com",
        "time": "Sun Dec 08 17:17:52 2013"
      },
      "message": "Choose custom root SDK path depending on an Xcode location\n\nSet custom root SDK path (using `--sdk-ios` \u0026 `--sdk-mac` command line args) to be based on current Xcode location.\r\n\r\nThe behaviour is from `xcode-select` utility: if there is an `/Applications/Xcode.app`, we choose it. If not — we check for `/Developer`."
    },
    {
      "commit": "f7c4e0a85ee12dcc2331e11e17ad105333da2e54",
      "tree": "078c8a11e1045584dfb62deb807b17d7da91267a",
      "parents": [
        "5369b246d8d3e4f64d25468cdfe16ec7f2465c25",
        "e006f98dfd8f1ef9fee7b3752db7d6db4685854a"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Sun Dec 08 00:57:10 2013"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Sun Dec 08 00:57:10 2013"
      },
      "message": "Merge pull request #27 from 0xced/feature/NSUUID\n\nUse NSUUID instead of CFUUIDRef"
    },
    {
      "commit": "e006f98dfd8f1ef9fee7b3752db7d6db4685854a",
      "tree": "078c8a11e1045584dfb62deb807b17d7da91267a",
      "parents": [
        "5f49c3813d0c0b058d8321f751ab3611348c64f3"
      ],
      "author": {
        "name": "Cédric Luthi",
        "email": "cedric.luthi@gmail.com",
        "time": "Thu Jan 24 15:15:08 2013"
      },
      "committer": {
        "name": "Cédric Luthi",
        "email": "cedric.luthi@gmail.com",
        "time": "Fri Dec 06 16:33:54 2013"
      },
      "message": "Implement -[CDLCUUID extraDescription] for easier debugging\n"
    },
    {
      "commit": "5f49c3813d0c0b058d8321f751ab3611348c64f3",
      "tree": "31e6b968112ea1c57be5fdb09b78bcc5810728c1",
      "parents": [
        "8589b96db706ed50d79fe24d8952b90b4525e83f"
      ],
      "author": {
        "name": "Cédric Luthi",
        "email": "cedric.luthi@gmail.com",
        "time": "Thu Jan 24 15:13:48 2013"
      },
      "committer": {
        "name": "Cédric Luthi",
        "email": "cedric.luthi@gmail.com",
        "time": "Fri Dec 06 16:33:53 2013"
      },
      "message": "Do not hardcode the uuid length\n"
    },
    {
      "commit": "8589b96db706ed50d79fe24d8952b90b4525e83f",
      "tree": "e99a9df627b08fa1b042249274cfa6481934daf8",
      "parents": [
        "5369b246d8d3e4f64d25468cdfe16ec7f2465c25"
      ],
      "author": {
        "name": "Cédric Luthi",
        "email": "cedric.luthi@gmail.com",
        "time": "Thu Jan 24 15:12:50 2013"
      },
      "committer": {
        "name": "Cédric Luthi",
        "email": "cedric.luthi@gmail.com",
        "time": "Fri Dec 06 16:33:53 2013"
      },
      "message": "Use NSUUID instead of CFUUIDRef\n"
    },
    {
      "commit": "5369b246d8d3e4f64d25468cdfe16ec7f2465c25",
      "tree": "739c2ede52ba7bf79a9b5470fcff3bc9d68a3637",
      "parents": [
        "2418858ffba73100783007c23a0a4b18dc3335ba"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Sat Nov 16 19:21:53 2013"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Sat Nov 16 19:21:53 2013"
      },
      "message": "Update version.\n"
    },
    {
      "commit": "2418858ffba73100783007c23a0a4b18dc3335ba",
      "tree": "c178bf43f6a73fa31fa9a561870f0e6f4463f32e",
      "parents": [
        "5c9dae2a8f3513174c3086fb4e7310097f51c926"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Sat Nov 16 19:17:06 2013"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Sat Nov 16 19:17:06 2013"
      },
      "message": "Update release date.\n"
    },
    {
      "commit": "5c9dae2a8f3513174c3086fb4e7310097f51c926",
      "tree": "f6c4a3cba1d79d9809ad4b2851383f9a8a107a65",
      "parents": [
        "7763d75ca4132915cffed877e84c417c183825a5"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Sun Nov 03 23:27:28 2013"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Sat Nov 16 19:11:28 2013"
      },
      "message": "Convert to XCTest.\n"
    },
    {
      "commit": "7763d75ca4132915cffed877e84c417c183825a5",
      "tree": "931b25058069d74cda0315e95fa09fbbf344da0f",
      "parents": [
        "e6ef6516ea77bd798f84734e36f805cf42a47bc1"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Sun Nov 03 22:58:51 2013"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Sun Nov 03 22:58:51 2013"
      },
      "message": "Fix some spelling.  Add note about 10.8 minimum deployment target.\n\nRemove note about optimizations, I don\u0027t think they have been merged\nyet.\n"
    },
    {
      "commit": "e6ef6516ea77bd798f84734e36f805cf42a47bc1",
      "tree": "0dbeadc9a333f31506f82b1771b9df4c8c6845b3",
      "parents": [
        "034a53dc19feab87b4af42d8ceb0da92efbbd3f9"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Sun Nov 03 21:57:26 2013"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Sun Nov 03 21:59:09 2013"
      },
      "message": "Update version to 3.5.\n"
    },
    {
      "commit": "034a53dc19feab87b4af42d8ceb0da92efbbd3f9",
      "tree": "30a5f7efc19f96d3297f1e7457e23aee7033b0e4",
      "parents": [
        "4b5513b91b368a80e3ec37ffe119027c0a1b20cf"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Sun Nov 03 21:54:44 2013"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Sun Nov 03 21:59:08 2013"
      },
      "message": "Update deployment target to 10.8.\n"
    },
    {
      "commit": "4b5513b91b368a80e3ec37ffe119027c0a1b20cf",
      "tree": "f1afa40f4185a5ad2601c2cfc1ace2c160eaad75",
      "parents": [
        "490b1f756765eb60b17305a7ca350d0ebaa5a6eb"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Sun Nov 03 21:47:51 2013"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Sun Nov 03 21:58:48 2013"
      },
      "message": "Use version 3.4 as previous class-dump version, for comparison.\n"
    },
    {
      "commit": "490b1f756765eb60b17305a7ca350d0ebaa5a6eb",
      "tree": "913e9586e2ec1e78c13653063797b6cc81afecdd",
      "parents": [
        "3e144aa4adb4fbc6576bc1c9da12991f7f4fad63"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Mon Sep 30 05:42:53 2013"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Mon Sep 30 05:42:53 2013"
      },
      "message": "Update copyrights for 2013.\n"
    },
    {
      "commit": "3e144aa4adb4fbc6576bc1c9da12991f7f4fad63",
      "tree": "f3816f668196881f3c023c2c1cf255fd66bbb91f",
      "parents": [
        "59aa1ea39c169e5232e1bd2f18f66e0a4e04b834"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Mon Sep 30 05:30:50 2013"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Mon Sep 30 05:30:50 2013"
      },
      "message": "Change project architecture to 64-bit Intel so this works with both Xcode 4.6.2 and Xcode 5.\n\nXcode 4.6.2 default is NATIVE_ARCH, which seems to be 32-bit Intel.\nXcode 5 default is Standard Architectures (64-bit Intel).\n"
    },
    {
      "commit": "59aa1ea39c169e5232e1bd2f18f66e0a4e04b834",
      "tree": "6671186fe3d1677385ffdf5de8ffaaa325aeb5e7",
      "parents": [
        "51f27470ddd24c09148c16e8ffc483e8b99becd8"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Fri Sep 20 07:14:48 2013"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Mon Sep 30 05:22:11 2013"
      },
      "message": "Fix three static analyzer warnings.\n\nRemove canBeCombined, and just check the combined pointer instead.\n"
    },
    {
      "commit": "51f27470ddd24c09148c16e8ffc483e8b99becd8",
      "tree": "c5827a0a46ca3ef46a1f7b338cad0d89f11bd5bf",
      "parents": [
        "52cc8d5dc4254fbb34400756bb8c6dc66dc3136a"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Fri Sep 20 05:06:21 2013"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Mon Sep 30 05:22:11 2013"
      },
      "message": "Disable the unused functions warning.\n"
    },
    {
      "commit": "52cc8d5dc4254fbb34400756bb8c6dc66dc3136a",
      "tree": "271d1b36f1ff958aa33c348919d9682aae49a829",
      "parents": [
        "6d6dd2253cc59810aed0fbcc39de515c1ea812b2"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Fri Sep 20 05:05:38 2013"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Mon Sep 30 05:22:10 2013"
      },
      "message": "Upgrade project settings with Xcode 5.\n"
    },
    {
      "commit": "6d6dd2253cc59810aed0fbcc39de515c1ea812b2",
      "tree": "495b328d2684b651d06e1bd19ee4e9785df8ae43",
      "parents": [
        "33bd7657b4de77d80482d925a8a1334890671a9b"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Fri Sep 20 04:46:04 2013"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Mon Sep 30 05:21:54 2013"
      },
      "message": "Align values.\n"
    },
    {
      "commit": "33bd7657b4de77d80482d925a8a1334890671a9b",
      "tree": "f48eb7534456d4a3fb3a7af1ef1fb5fc10f65fb4",
      "parents": [
        "3d8c23da3689d8daa0dfabf6977c148e3cc867dc"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Fri Sep 20 04:45:37 2013"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Mon Sep 30 05:21:54 2013"
      },
      "message": "Add missing semicolon.\n"
    },
    {
      "commit": "3d8c23da3689d8daa0dfabf6977c148e3cc867dc",
      "tree": "b21a8b0b562f3b0b57d7ea40693bb5bbaa91204f",
      "parents": [
        "defb9a98c4e582af07336c1dc250b2d7708c1a23",
        "496d41d1648bd0bcd97018f80c914cbf04034d84"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Mon Sep 30 05:17:27 2013"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Mon Sep 30 05:17:27 2013"
      },
      "message": "Merge pull request #36 from 0xced/changelog\n\nChangelog"
    },
    {
      "commit": "496d41d1648bd0bcd97018f80c914cbf04034d84",
      "tree": "b21a8b0b562f3b0b57d7ea40693bb5bbaa91204f",
      "parents": [
        "0be9ccb41faab2060674ec2541bd533bb129bd8f"
      ],
      "author": {
        "name": "Cédric Luthi",
        "email": "cedric.luthi@gmail.com",
        "time": "Fri Sep 20 23:25:22 2013"
      },
      "committer": {
        "name": "Cédric Luthi",
        "email": "cedric.luthi@gmail.com",
        "time": "Fri Sep 20 23:25:22 2013"
      },
      "message": "Add release notes for the next version\n"
    },
    {
      "commit": "0be9ccb41faab2060674ec2541bd533bb129bd8f",
      "tree": "43247173b69799487827cc7e5938f2de98743fba",
      "parents": [
        "defb9a98c4e582af07336c1dc250b2d7708c1a23"
      ],
      "author": {
        "name": "Cédric Luthi",
        "email": "cedric.luthi@gmail.com",
        "time": "Fri Sep 20 22:04:11 2013"
      },
      "committer": {
        "name": "Cédric Luthi",
        "email": "cedric.luthi@gmail.com",
        "time": "Fri Sep 20 23:13:40 2013"
      },
      "message": "Add CHANGELOG.md file\n"
    },
    {
      "commit": "defb9a98c4e582af07336c1dc250b2d7708c1a23",
      "tree": "166c4441e7f34d2bc8c28f1304ce40022b493a61",
      "parents": [
        "49b0f997360a0b82e4a13bcf15a7b137aa692822",
        "071a7cce8a24a9fc06d1607c6c32f75e4653ad41"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Fri Sep 20 00:12:27 2013"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Fri Sep 20 00:12:27 2013"
      },
      "message": "Merge pull request #35 from 0xced/arm64\n\nNew `arm64` architecture support"
    },
    {
      "commit": "49b0f997360a0b82e4a13bcf15a7b137aa692822",
      "tree": "59267483f84ed79cabe49dc7b7dbda6c86e80f30",
      "parents": [
        "b6fa0ec8de36039ea9d8ed19de455faceb3c1217",
        "0897935f8a9480b68f429de58f343a18ee26ac56"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Fri Sep 20 00:06:09 2013"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Fri Sep 20 00:06:09 2013"
      },
      "message": "Merge branch \u0027function-starts\u0027 of git://github.com/0xced/class-dump into 0xced-function-starts\n\nConflicts:\n\tclass-dump.xcodeproj/project.pbxproj\n"
    },
    {
      "commit": "b6fa0ec8de36039ea9d8ed19de455faceb3c1217",
      "tree": "10987a4e3d9704e57d173ac41dc6f43bf1f03c36",
      "parents": [
        "9bf7037e4595b2202a801ca27cf8963a3af7f052",
        "9fd3de59a5d3a5b63f48984b8fea4eeb7e8d8a00"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Thu Sep 19 23:34:44 2013"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Thu Sep 19 23:34:44 2013"
      },
      "message": "Merge pull request #31 from 0xced/better-error-message\n\nBetter error message when running class-dump on a static library"
    },
    {
      "commit": "9bf7037e4595b2202a801ca27cf8963a3af7f052",
      "tree": "ae81f0389751b3140e711fe32e879cba27c1b42f",
      "parents": [
        "c224e2f583c97a3ffee02fa89cad1061420d5165",
        "e59495b2bf2a70d7e56afcd129ceebe2e00526c6"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Thu Sep 19 23:25:51 2013"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Thu Sep 19 23:25:51 2013"
      },
      "message": "Merge pull request #32 from 0xced/blocks-function-pointers\n\nSupport for blocks and function pointers (better version of #28)"
    },
    {
      "commit": "c224e2f583c97a3ffee02fa89cad1061420d5165",
      "tree": "e0fe9baff76afcae74b26fa540a886d757332ca4",
      "parents": [
        "2cc18bfafdc85bd2eb1c5aa6be1f7afb19f6a801",
        "e4fc432d13b12bda9081fbc6fdff49174340f424"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Thu Sep 19 23:22:48 2013"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Thu Sep 19 23:22:48 2013"
      },
      "message": "Merge pull request #30 from 0xced/extended-method-types\n\nParse extended method types for protocols"
    },
    {
      "commit": "2cc18bfafdc85bd2eb1c5aa6be1f7afb19f6a801",
      "tree": "cdaab0ddfad381f337f0cfad40ad8d0a8051e838",
      "parents": [
        "a49b034b6eb7afc79afab4fbcca1ce83646e11d6",
        "e81a1740582ac2a192b0baadf68f2d6d93ac4733"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Thu Sep 19 23:14:34 2013"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Thu Sep 19 23:14:34 2013"
      },
      "message": "Merge pull request #34 from 0xced/entsize\n\nSmall fixes to list header entsize"
    },
    {
      "commit": "a49b034b6eb7afc79afab4fbcca1ce83646e11d6",
      "tree": "9ae3a2c6004fcaf1b2d11b77bc5624c49ca6ccf3",
      "parents": [
        "bd19f01ef995c16f01b6d329a3821bf1ad85b728",
        "07f812188aeb68600fa6f9a0028be92753f91cb2"
      ],
      "author": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Thu Sep 19 23:10:20 2013"
      },
      "committer": {
        "name": "Steve Nygard",
        "email": "nygard@gmail.com",
        "time": "Thu Sep 19 23:10:20 2013"
      },
      "message": "Merge pull request #33 from 0xced/fix-warnings\n\nFix new Xcode 4.6 warnings"
    },
    {
      "commit": "9fd3de59a5d3a5b63f48984b8fea4eeb7e8d8a00",
      "tree": "b0a4136dcc8bdaeb26cfbf7836b0a25350b61d02",
      "parents": [
        "a3100234e23a437cb3b00cca5c885dd8eaaa56cd"
      ],
      "author": {
        "name": "Cédric Luthi",
        "email": "cedric.luthi@gmail.com",
        "time": "Wed Sep 11 13:30:51 2013"
      },
      "committer": {
        "name": "Cédric Luthi",
        "email": "cedric.luthi@gmail.com",
        "time": "Wed Sep 11 13:30:51 2013"
      },
      "message": "Add arm64 in class-dump and deprotect usage\n"
    }
  ],
  "next": "071a7cce8a24a9fc06d1607c6c32f75e4653ad41"
}
