)]}'
{
  "log": [
    {
      "commit": "297912b6c9046ac3a00acc2dfd9389c6feb557ad",
      "tree": "94386f5070738c78c84f2ec54f970f8cbd6eea73",
      "parents": [
        "6b98328f14468a56d8534f7fa4a790d575fc5c95"
      ],
      "author": {
        "name": "Jerry Zhang",
        "email": "zhangjerry@google.com",
        "time": "Fri May 11 11:29:54 2018 -0700"
      },
      "committer": {
        "name": "Jerry Zhang",
        "email": "zhangjerry@google.com",
        "time": "Tue May 15 21:43:45 2018 +0000"
      },
      "message": "Remove limitation on read/write size\n\nPreviously ios called through read write\nwere limited to 16kb because read packets\nare very small. However, write packets can\nbe greater than that amount in cases where\na folder contains over 4k items. Thus,\nremove the limitation.\n\nAdd corresponding ReadLarge and WriteLarge\ntests as well.\n\nBug: 79214960\nTest: mtp_ffs_handle_test passes, Mtp works\nwith large folders\n\nChange-Id: I8a980612c3eb941552ff4dd11ac631d1dc5d3347\n"
    },
    {
      "commit": "bc1d4b41f4df1b6dd04801ea5a526d23f5321340",
      "tree": "9c40c27d4c306658b10f622f5a32f111e2623c68",
      "parents": [
        "e1d2f7dd9b8f153fc581144ab4d4a77c6241918a"
      ],
      "author": {
        "name": "Jerry Zhang",
        "email": "zhangjerry@google.com",
        "time": "Tue Mar 27 15:25:03 2018 -0700"
      },
      "committer": {
        "name": "Jerry Zhang",
        "email": "zhangjerry@google.com",
        "time": "Tue Mar 27 17:32:27 2018 -0700"
      },
      "message": "Fix Unicode string handling\n\nLinux uses UTF8 but java and MTP both\nuse UTF16. In a few places, this results\nin the top byte of a UTF16 string being\ntruncated on conversion to UTF8.\n\nAlso, the hardcoded UTF to byte serialization\nin MtpStringBuffer is incorrect.\nReplace it with conversions from std, and\nreplace usages of MtpString with MtpStringBuffer.\n\nRemove any remaining usages of libutils\nand replace them with corresponding std\nlibraries.\n\nBug: 70546563\nTest: Mtp works, tests pass\nTest: file/folder names containing emoji can be transferred to/from\nwindows\nChange-Id: Idbcb73f1beac17ce8a90843fa254e759dd1a6369\n"
    },
    {
      "commit": "63dac45aa868b9048c028967e9865c90a9ba544d",
      "tree": "b21d37631cde212935b35cb8109ee333b69d97c6",
      "parents": [
        "b95a5989190a427a7ea092dc18741af524009bdb"
      ],
      "author": {
        "name": "Jerry Zhang",
        "email": "zhangjerry@google.com",
        "time": "Wed Dec 06 15:19:36 2017 -0800"
      },
      "committer": {
        "name": "Jerry Zhang",
        "email": "zhangjerry@google.com",
        "time": "Mon Mar 05 13:44:25 2018 -0800"
      },
      "message": "Remove configure() from Mtp\n\nInstead of configuring the server each\ntime the connection happens, UsbService\nwill now pass in the control fd with the\ndescriptors already written. Also, PTP\nendpoints have been moved to their own\ndirectory at /dev/usb-ffs/ptp rather than\nusing the same ones as mtp.\n\nBug: 72877174\nTest: Verify PTP and MTP config changes work\nChange-Id: I9a0336afd610aa397c9947568c308afb89b27c08\n"
    },
    {
      "commit": "87ecf3ae39362f1ca3f9432034b7c04e088d92d7",
      "tree": "76fab23b1f3ac93b81260eb0870c2f5828078041",
      "parents": [
        "1e216bc835a9e8d0336272ecdb5a398718a8f1db",
        "729f6f601822ae012e8cbbe813c3aa97060b1a8a"
      ],
      "author": {
        "name": "Jerry Zhang",
        "email": "zhangjerry@google.com",
        "time": "Tue Oct 24 01:30:47 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Oct 24 01:30:47 2017 +0000"
      },
      "message": "Merge \"Move mtp descriptors into separate source, add tests\"\nam: 729f6f6018\n\nChange-Id: I61ee4b4da3bc4b971f5786fb84794b94fae5421d\n"
    },
    {
      "commit": "69b74506f9d658fd9ed18676eb75b86fdb7d7d73",
      "tree": "0d33726bbdb700379bd4016e4b0579b0447af820",
      "parents": [
        "5617fb288bc3f8335273f526a5ca7c18d67076cf"
      ],
      "author": {
        "name": "Jerry Zhang",
        "email": "zhangjerry@google.com",
        "time": "Mon Oct 02 16:26:37 2017 -0700"
      },
      "committer": {
        "name": "Jerry Zhang",
        "email": "zhangjerry@google.com",
        "time": "Mon Oct 23 15:21:11 2017 -0700"
      },
      "message": "Move mtp descriptors into separate source, add tests\n\nFunctionfs descriptors are moved into MtpDescriptors.cpp.\nAdded assertions and tests to ensure that descriptors aren\u0027t\nunintentionally changed, and bug numbers in comments for\nfuture context.\n\nTest: updated MtpFfsHandle_test passes\nBug: 67367056\nChange-Id: I90eb5e48a687f366b8919621718e976e83b5b064\n"
    },
    {
      "commit": "68ce743ef9ad6b1f37bfdf55eb67d836696bd422",
      "tree": "0d9a5921801fcc73535dfbf0f6409d87b5059262",
      "parents": [
        "64dd76afd8027ec7edcf9bb7a40afd024cfc10f6",
        "82651d413eb66978f2020058235811c0f5bb2094"
      ],
      "author": {
        "name": "Jerry Zhang",
        "email": "zhangjerry@google.com",
        "time": "Tue Aug 29 03:38:18 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Aug 29 03:38:18 2017 +0000"
      },
      "message": "Merge \"Switch MtpFfsHandle to aio, add control functions.\"\nam: 82651d413e\n\nChange-Id: I622346740d9310c9c9569ed5feb463f51cab6b5e\n"
    },
    {
      "commit": "df69dd33b4d8a2f9926b5eaccbf53ee7f67475c2",
      "tree": "15e227b89c1c6a9877b7e37269cdb63b1ffaac90",
      "parents": [
        "0fdeb09e898c39d9e353311577b72f1a53bc11f3"
      ],
      "author": {
        "name": "Jerry Zhang",
        "email": "zhangjerry@google.com",
        "time": "Wed May 03 17:17:49 2017 -0700"
      },
      "committer": {
        "name": "Jerry Zhang",
        "email": "zhangjerry@google.com",
        "time": "Tue Aug 22 20:47:04 2017 +0000"
      },
      "message": "Switch MtpFfsHandle to aio, add control functions.\n\nMtpFfsHandle now uses kaio to handle usb data.\nThis achieves better performance without using\nthe endpoint alloc ioctl.\n\nThis also allows ep0 events to be handled without\nrace conditions. Events will also include control\nrequests, which will allow both host and device\ninitiated cancellation.\n\nBug: 37916658\nBug: 36802721\nTest: Transfer various size files, run MtpFfsHandleTest\nTest: Cancel transfer on Windows\nTest: Allow device to cancel transfer on Windows\nChange-Id: Ib3ce996f00782ce7f68f29b2510dbc17f09fdf14\n"
    },
    {
      "commit": "c9589bb0c2f6197c98edd2a47fcd4e8e85cc397b",
      "tree": "995380adda5da11b26257a5f10163e6ad6d9a765",
      "parents": [
        "07def20c4082b831ce5678959ef6a034674b808d",
        "aef8eb866df8b6b681422801fb2b44ba29953370"
      ],
      "author": {
        "name": "Jerry Zhang",
        "email": "zhangjerry@google.com",
        "time": "Tue May 16 01:48:18 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue May 16 01:48:18 2017 +0000"
      },
      "message": "Merge \"Fix file transfer corner cases.\" into oc-dev am: 922669e81c\nam: aef8eb866d\n\nChange-Id: I5a838ba9fdbc481674eb4c6638d1221a7027f205\n"
    },
    {
      "commit": "aef8eb866df8b6b681422801fb2b44ba29953370",
      "tree": "c54293216cbbea020dc8f4132276727a47c6a8dc",
      "parents": [
        "86a0b96ddca0a657eeb1ba95ded957ba79c07c23",
        "922669e81c23ea3a400879dd7cb5f222b5e48e67"
      ],
      "author": {
        "name": "Jerry Zhang",
        "email": "zhangjerry@google.com",
        "time": "Tue May 16 00:19:58 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue May 16 00:19:58 2017 +0000"
      },
      "message": "Merge \"Fix file transfer corner cases.\" into oc-dev\nam: 922669e81c\n\nChange-Id: Idf99f296e03b2e35b6140d5650147a7dcb3cbc8f\n"
    },
    {
      "commit": "5410756e75fb7567540f13d3813f42f4ac3838a0",
      "tree": "9c43426b3e7ec072dff9a54b795757566f389673",
      "parents": [
        "77994d70fe8d4805126361bbd0afbcac1cd1d2f0"
      ],
      "author": {
        "name": "Jerry Zhang",
        "email": "zhangjerry@google.com",
        "time": "Mon May 15 11:54:19 2017 -0700"
      },
      "committer": {
        "name": "Jerry Zhang",
        "email": "zhangjerry@google.com",
        "time": "Mon May 15 13:21:46 2017 -0700"
      },
      "message": "Fix file transfer corner cases.\n\nFix zero packet read/write in corner cases\nwith initial read/writes. This affects transfers\nof 16372 bytes to the device and transfers of\n1012 bytes (or packet size - 12) from the device.\n\nTest: Transfer various length files\nBug: 37175601\nChange-Id: Ic1281e8757d1a33d78c66d2c57319b5ee38d6a46\n"
    },
    {
      "commit": "e997c143b86082d1426f8d3d755b7aeaaa7c3dc3",
      "tree": "05d208c9f1cccadbba54491eee4da0de5bc33787",
      "parents": [
        "a33999bab96f0ee1f44816cb3b5c1312bc2a4f91"
      ],
      "author": {
        "name": "Tomasz Wasilczyk",
        "email": "twasilczyk@google.com",
        "time": "Fri May 05 09:51:37 2017 -0700"
      },
      "committer": {
        "name": "Tomasz Wasilczyk",
        "email": "twasilczyk@google.com",
        "time": "Fri May 05 09:51:37 2017 -0700"
      },
      "message": "Convert libmtp to soong.\n\nBug: 37512442\nTest: native test\nChange-Id: Idf0e96a206faadc5a3179f0df564ab1d4daacda2\n"
    },
    {
      "commit": "777449ca7d0a4c8ca97da6097198e868a93b50cc",
      "tree": "6f3d5da570234851c040671ef873ba3c7a8fa564",
      "parents": [
        "3243d43c0596c18845781607bae6ef8995ea624d"
      ],
      "author": {
        "name": "Tomasz Wasilczyk",
        "email": "twasilczyk@google.com",
        "time": "Wed May 03 14:58:13 2017 -0700"
      },
      "committer": {
        "name": "Tomasz Wasilczyk",
        "email": "twasilczyk@google.com",
        "time": "Thu May 04 08:31:09 2017 -0700"
      },
      "message": "Convert libmtp to soong.\n\nBug: 37512442\nTest: native test\nChange-Id: Idf0e96a206faadc5a3179f0df564ab1d4daacda2\n"
    },
    {
      "commit": "53f2ecaa60aea710d803ee94bbf398c50892c1a1",
      "tree": "ea8db11ae098b0e876414f01bddc41a7af3e9402",
      "parents": [
        "5f8beee0ea76ffe5cc40a517e8db43dbd64fbeff"
      ],
      "author": {
        "name": "Dan Shi",
        "email": "dshi@google.com",
        "time": "Tue Mar 28 16:13:37 2017 -0700"
      },
      "committer": {
        "name": "Dan Shi",
        "email": "dshi@google.com",
        "time": "Tue Mar 28 16:13:37 2017 -0700"
      },
      "message": "Add test config to mtp_ffs_handle_test\n\nDesign doc:\nGeneralized Suites \u0026 the Unification of APCT \u0026 CTS Workflows Design/Roadmap\nhttps://docs.google.com/document/d/1eabK3srlBLouMiBMrNP3xJPiRRdcoCquNxC8gBWPvx8/edit#heading\u003dh.78vup5eivwzo\n\nDetails about test configs changes are tracked in doc\nhttps://docs.google.com/document/d/1EWUjJ7fjy8ge_Nk0YQbFdRp8DSHo3z6GU0R8jLgrAcw/edit#\n\nBug: 35882476\nTest: local test\nChange-Id: I740caff88234fb986ca03553ab28c519cfe6aa18\n"
    },
    {
      "commit": "8542feecf7842746d3a5e3cb113ac7269f7a296f",
      "tree": "d71eee5e0cb7c04baf10321dbde941e12d2afcf4",
      "parents": [
        "9064b2d12a572cb53469883a595eed6360b49cd8"
      ],
      "author": {
        "name": "Jerry Zhang",
        "email": "zhangjerry@google.com",
        "time": "Mon Feb 06 15:12:17 2017 -0800"
      },
      "committer": {
        "name": "Jerry Zhang",
        "email": "zhangjerry@google.com",
        "time": "Thu Feb 09 11:02:06 2017 -0800"
      },
      "message": "Update MtpFfsHandle tests, add new tests for small and partial files\n\nTest: Build and run 32 and 64 bit tests\nBug: 34822471\nChange-Id: I812e4f27464e385c219c42bf7a76fa702f295f41\n"
    },
    {
      "commit": "487be61fb0a38873aec1d12da92437fba5e728f2",
      "tree": "29bfa5273c091b25b31ac5353580f67229a8b07c",
      "parents": [
        "b985e3c6bab78c60ef53164f157dd5bccf3045f9"
      ],
      "author": {
        "name": "Jerry Zhang",
        "email": "zhangjerry@google.com",
        "time": "Mon Oct 24 12:10:41 2016 -0700"
      },
      "committer": {
        "name": "Jerry Zhang",
        "email": "zhangjerry@google.com",
        "time": "Mon Dec 12 14:36:06 2016 -0800"
      },
      "message": "Refactored Mtp driver interface into multiple classes.\n\nAdded new interface for FunctionFS. This allows most of\nthe driver code to exist in userspace. The driver will\nautomatically use FunctionFS if it is enabled for that\ndevice, otherwise it will default to the kernel driver.\n\nThe intention is to eventually deprecate the kernel driver.\n\nBug: 30976142\nChange-Id: I36b8d16ca254fddd995b3ea1bd3d37b0ff4a28f7\nTest: New automated tests for MtpFfsHandle, AsyncIO.\nManual testing on each device.\n"
    }
  ]
}
