)]}'
{
  "log": [
    {
      "commit": "84a40fb6c08e7b502e37576325bb19cd8f8af230",
      "tree": "ba4b7fdd9bf1ce44bbc67c78c0f3ee2f63a59dac",
      "parents": [
        "0059853aea7df052581802756e7df5a40c7aab4d"
      ],
      "author": {
        "name": "Ben Chan",
        "email": "benchan@chromium.org",
        "time": "Sat Aug 18 03:51:48 2018"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Thu Aug 23 14:37:23 2018"
      },
      "message": "libbrillo: add support for \"a(ubay)\" D-Bus type\n\nThe \"a(ubay)\" D-Bus type is needed by shill to handle the Pco property\nof the org.freedesktop.ModemManager1.Modem3gpp interface exposed by\nModemManager.\n\nBUG\u003db:112664666\nTEST\u003dRun unit tests.\n\nChange-Id: Ia4ca839c6c8b77ed552f379f9144dd4c8bfc2d11\nReviewed-on: https://chromium-review.googlesource.com/1181529\nCommit-Ready: Ben Chan \u003cbenchan@chromium.org\u003e\nTested-by: Ben Chan \u003cbenchan@chromium.org\u003e\nReviewed-by: Dan Erat \u003cderat@chromium.org\u003e\nReviewed-by: Mike Frysinger \u003cvapier@chromium.org\u003e\n"
    },
    {
      "commit": "0059853aea7df052581802756e7df5a40c7aab4d",
      "tree": "357ec1917edd7a6976b843ea39f014d0e3848458",
      "parents": [
        "904c2c9cd8d5ff06783030fb27ee23dcff743035"
      ],
      "author": {
        "name": "Adolfo Victoria",
        "email": "adokar@google.com",
        "time": "Mon Aug 06 21:02:31 2018"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Fri Aug 10 05:04:39 2018"
      },
      "message": "libpolicy: Add checks for consumer devices in autoupdate policies\n\nMake policies that affect autoupdate behavior check if the device is a\nconsumer device or an enterprise device. Consumer devices should not\nbe able to have those settings set. The following changes were made:\n* Add IsEnterprisedEnrolled function to device policy.\n* Add unit tests to check that policies return false when used in\nconsumer devices\n\nBUG\u003dchromium:871164\nTEST\u003dcros_workon_make libbrillo --test\n\nChange-Id: I48fb72ac730e2285431a9548872c68124833a677\nReviewed-on: https://chromium-review.googlesource.com/1164561\nCommit-Ready: Adolfo Higueros \u003cadokar@google.com\u003e\nTested-by: Adolfo Higueros \u003cadokar@google.com\u003e\nReviewed-by: Dan Erat \u003cderat@chromium.org\u003e\n"
    },
    {
      "commit": "904c2c9cd8d5ff06783030fb27ee23dcff743035",
      "tree": "3aa04fc8f64c05a925250881c2291561f8447533",
      "parents": [
        "d88bc3e668d298b215c48fd45cff96901cb6bd85"
      ],
      "author": {
        "name": "Adolfo Victoria",
        "email": "adokar@google.com",
        "time": "Thu Jul 12 23:57:49 2018"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Fri Aug 03 13:29:11 2018"
      },
      "message": "libbrillo: policy: Modify UpdateStaging policy due to change in design\n\nModify the DeviceUpdateStagingSchedule policy code to account for the\nchanges to use JSON strings. Add JSONToListValue to remove repeated\nlogic between new JSON based policies.\n\nBUG\u003dchromium:858621\nTEST\u003dcros_workon_make libbrillo --test\nCQ-DEPEND\u003dCL:1158225\n\nChange-Id: I01f73980c5309d77bfe04861255d6665cb7e2e11\nReviewed-on: https://chromium-review.googlesource.com/1142480\nCommit-Ready: Lutz Justen \u003cljusten@chromium.org\u003e\nTested-by: Lutz Justen \u003cljusten@chromium.org\u003e\nTested-by: Adolfo Higueros \u003cadokar@google.com\u003e\nReviewed-by: Dan Erat \u003cderat@chromium.org\u003e\n"
    },
    {
      "commit": "d88bc3e668d298b215c48fd45cff96901cb6bd85",
      "tree": "6a63a817c581549143346d96551c45ac27f9a7bd",
      "parents": [
        "a722b427ac5223635eafde4551dbb2db749ce252"
      ],
      "author": {
        "name": "Xiaochu Liu",
        "email": "xiaochu@chromium.org",
        "time": "Mon Jul 23 18:54:02 2018"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Wed Aug 01 07:05:33 2018"
      },
      "message": "move manifest* from imageloader to libbrillo\n\nWe move them to libbrillo so it could be shared by\nimageloader\u0026dlcservice.\n\nBUG\u003dchromium:866203\nTEST\u003dunittest\n\nChange-Id: Id6e1f898d69c5cb1d4d291147482248ee3578f03\nReviewed-on: https://chromium-review.googlesource.com/1147249\nCommit-Ready: Xiaochu Liu \u003cxiaochu@chromium.org\u003e\nTested-by: Xiaochu Liu \u003cxiaochu@chromium.org\u003e\nReviewed-by: Xiaochu Liu \u003cxiaochu@chromium.org\u003e\n"
    },
    {
      "commit": "a722b427ac5223635eafde4551dbb2db749ce252",
      "tree": "2b654481d6cd84c1240d96cd40b243875d4bb3fd",
      "parents": [
        "2d3967d969318f3041c766f377eed2ef88a613af"
      ],
      "author": {
        "name": "May Lippert",
        "email": "maybelle@chromium.org",
        "time": "Mon Jul 02 23:45:13 2018"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Fri Jul 20 12:31:18 2018"
      },
      "message": "libbrillo: Add new policy (DeviceUpdateStagingSchedule) for staging updates.\n\nAdd a new device policy that will allow administrators to specify a schedule\nfor rolling out updates to an organizational unit.\n\nBUG\u003dchromium:858621\nTEST\u003dUsed YAPS as DM server, verified that the new policy is parsed correctly.\nCQ-DEPEND\u003dCL:1119162\n\nChange-Id: I72852ddf86e6c7e432aea38a33c6fb3be4c7f315\nReviewed-on: https://chromium-review.googlesource.com/1123683\nCommit-Ready: ChromeOS CL Exonerator Bot \u003cchromiumos-cl-exonerator@appspot.gserviceaccount.com\u003e\nTested-by: May Lippert \u003cmaybelle@chromium.org\u003e\nReviewed-by: Dan Erat \u003cderat@chromium.org\u003e\n"
    },
    {
      "commit": "2d3967d969318f3041c766f377eed2ef88a613af",
      "tree": "e219722c6223e9d2e9e4e65f961af58ff1da25a8",
      "parents": [
        "4f500daeeff106af163421a2c13f7f33fe627393"
      ],
      "author": {
        "name": "Adolfo Victoria",
        "email": "adokar@google.com",
        "time": "Tue Jun 12 23:28:36 2018"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Thu Jul 19 01:15:27 2018"
      },
      "message": "libbrillo: policy: Add new update time restrictions policy\n\nAdd a new device policy from chrome_device_policy.proto:\nDeviceAutoUpdateTimeRestrictions\n\nBUG\u003dchromium:852860\nTEST\u003dlibpolicy unit tests\nCQ-DEPEND\u003dCL:1136538\nChange-Id: Iaef8791f683af00668dcd4041282758cc26b8fbf\nReviewed-on: https://chromium-review.googlesource.com/1101707\nCommit-Ready: Adolfo Higueros \u003cadokar@google.com\u003e\nTested-by: Adolfo Higueros \u003cadokar@google.com\u003e\nReviewed-by: Dan Erat \u003cderat@chromium.org\u003e\n"
    },
    {
      "commit": "4f500daeeff106af163421a2c13f7f33fe627393",
      "tree": "8976aeac5f72d157b1cbacdd8a2975296dc37428",
      "parents": [
        "c2514025e026b78318ca3a9cd36af973ac0780c7"
      ],
      "author": {
        "name": "Jorge Lucangeli Obes",
        "email": "jorgelo@chromium.org",
        "time": "Tue Jun 26 14:31:32 2018"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Thu Jun 28 07:58:05 2018"
      },
      "message": "Add SecureBlob::HexStringToSecureBlob.\n\nPolymorphic usage of SecureBlob is problematic (see crbug.com/728047).\nIn some cases we\u0027re unnecessarily passing plain Blobs into functions\nthat take SecureBlobs because we don\u0027t have code to create a SecureBlob\nfrom a hex string, so we use base::HexStringToBytes to create a Blob\ninstead.\n\nThis CL does attempt to use HexStringToBytes and then zero out the\nmemory. As long as we still have polymorphic usage of SecureBlobs,\nthis is not a big deal. Once we decouple SecureBlob from Blob, we can\nimprove this implementation.\n\nBUG\u003dchromium:728047\nTEST\u003dNew unit tests.\n\nChange-Id: Iad94cbd8f574dd35730cb2d68b6ae39798b03ef6\nReviewed-on: https://chromium-review.googlesource.com/1114919\nCommit-Ready: Jorge Lucangeli Obes \u003cjorgelo@chromium.org\u003e\nTested-by: Jorge Lucangeli Obes \u003cjorgelo@chromium.org\u003e\nReviewed-by: Jorge Lucangeli Obes \u003cjorgelo@chromium.org\u003e\n"
    },
    {
      "commit": "c2514025e026b78318ca3a9cd36af973ac0780c7",
      "tree": "d1d49bffd5fbaeee592f44257cbcf90f363927c6",
      "parents": [
        "aeb7bb4b05662d0ccd8a6104414dbc5af71f6ad5"
      ],
      "author": {
        "name": "Jorge Lucangeli Obes",
        "email": "jorgelo@chromium.org",
        "time": "Thu Jun 21 15:33:16 2018"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Thu Jun 21 23:31:52 2018"
      },
      "message": "SecureBlob: Improve unit tests.\n\nWhen SecureBlob stops inheriting from Blob we\u0027ll want to make sure that\nfunctionality continues to work.\n\nBUG\u003dchromium:728047\nTEST\u003dNew unit tests pass.\n\nChange-Id: I23bbbc37287046ad48ad3b234d752fba934d8d9e\nReviewed-on: https://chromium-review.googlesource.com/1110150\nCommit-Ready: Jorge Lucangeli Obes \u003cjorgelo@chromium.org\u003e\nTested-by: Jorge Lucangeli Obes \u003cjorgelo@chromium.org\u003e\nReviewed-by: Dan Erat \u003cderat@chromium.org\u003e\n"
    },
    {
      "commit": "aeb7bb4b05662d0ccd8a6104414dbc5af71f6ad5",
      "tree": "3ad3b48829e37573f8d2ef436b043b446014d529",
      "parents": [
        "30b3a16baa5859ac5934f81c385ded0c84a68525"
      ],
      "author": {
        "name": "Maksim Ivanov",
        "email": "emaxx@google.com",
        "time": "Wed Jun 06 22:01:08 2018"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Fri Jun 08 06:33:43 2018"
      },
      "message": "libbrillo: Blob combining utility\n\nAdd a function that concatenates given Blob\u0027s.\n\nThis provides analogous functionality of SecureBlob::Combine()\nto Blob.\n\nBUG\u003dchromium:728047\nTEST\u003dnew unit test (BlobTest.CombineBlobs)\n\nChange-Id: I33218bd81a49a265d021e7afdcf438b7fc70921d\nReviewed-on: https://chromium-review.googlesource.com/1089338\nCommit-Ready: ChromeOS CL Exonerator Bot \u003cchromiumos-cl-exonerator@appspot.gserviceaccount.com\u003e\nTested-by: Maksim Ivanov \u003cemaxx@chromium.org\u003e\nReviewed-by: Jorge Lucangeli Obes \u003cjorgelo@chromium.org\u003e\n"
    },
    {
      "commit": "30b3a16baa5859ac5934f81c385ded0c84a68525",
      "tree": "67268ede60dcce966f61cfa65fc4b67a3def74e5",
      "parents": [
        "ce194b9773af8bdbf6f5c8f8ee244786a07952bb"
      ],
      "author": {
        "name": "Maksim Ivanov",
        "email": "emaxx@google.com",
        "time": "Tue May 29 18:48:26 2018"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Tue Jun 05 22:59:43 2018"
      },
      "message": "libbrillo: Blob to/from std::string conversions\n\nAdd routines that allow dumping Blob contents into an\nstd::string, and, vice versa, constructing Blob from\nsuch a string.\n\nThese helpers should simplify writing code that works\nwith Blob\u0027s, and consequently help transitioning away from\nSecureBlob (as the latter provides the same capabilities).\n\nBUG\u003dchromium:728047\nTEST\u003dnew unit test (BlobTest.StringConversions)\n\nChange-Id: I18223a99899216fe07cbf948bef86dce86777f69\nReviewed-on: https://chromium-review.googlesource.com/1076629\nCommit-Ready: Maksim Ivanov \u003cemaxx@chromium.org\u003e\nTested-by: Maksim Ivanov \u003cemaxx@chromium.org\u003e\nReviewed-by: Jorge Lucangeli Obes \u003cjorgelo@chromium.org\u003e\n"
    },
    {
      "commit": "ce194b9773af8bdbf6f5c8f8ee244786a07952bb",
      "tree": "77f002be8d4c23445c28ebefc3b6b8ba227311e4",
      "parents": [
        "d7220e5c8555ebae190362b554973e7458eff13c"
      ],
      "author": {
        "name": "Sonny Sasaka",
        "email": "sonnysasaka@chromium.org",
        "time": "Tue May 08 06:52:27 2018"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Tue Jun 05 22:59:33 2018"
      },
      "message": "dbus: Fix Properties.Set handler to also emit PropertiesChanged\n\nWhen a D-Bus property value is changed, it should emit PropertiesChanged\nsignal.\n\nBUG\u003dchromium:840517\nTEST\u003dNone\n\nChange-Id: I414a62b04f4fb1383152375e1efae434c114e2be\nReviewed-on: https://chromium-review.googlesource.com/1049169\nCommit-Ready: Sonny Sasaka \u003csonnysasaka@chromium.org\u003e\nTested-by: Sonny Sasaka \u003csonnysasaka@chromium.org\u003e\nReviewed-by: Dan Erat \u003cderat@chromium.org\u003e\nReviewed-by: Ben Chan \u003cbenchan@chromium.org\u003e\n"
    },
    {
      "commit": "d7220e5c8555ebae190362b554973e7458eff13c",
      "tree": "5dfb0f5017eb3b67b36d89fdea49af87de2dad88",
      "parents": [
        "6bc9c1d7fe169e5e8ceb294e0b8a6cd5cadbbec5"
      ],
      "author": {
        "name": "Marton Hunyady",
        "email": "hunyadym@chromium.org",
        "time": "Wed May 30 10:58:29 2018"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Thu May 31 19:26:16 2018"
      },
      "message": "libbrillo: Set RollbackAllowedMilestones enterprise default to 0\n\nChanging the default value of RollbackAllowedMilestones policy\nfrom 4 to 0 for enterprises (already 0 for consumer devices).\n\nUntil the kernel and firmware key versions can be set properly\nfrom Omaha, we don\u0027t freeze key rolls by default, only if it\u0027s\nexplicitly specified using enterprise policy.\n\nBUG\u003dchromium:847226\nTEST\u003d\u0027cros_run_unit_tests --board\u003dcaroline --packages libbrillo\u0027\n\nChange-Id: I4451a4e31f475a8b7557fea4f44dc35afe95ef0b\nReviewed-on: https://chromium-review.googlesource.com/1078811\nCommit-Ready: Marton Hunyady \u003chunyadym@chromium.org\u003e\nTested-by: Marton Hunyady \u003chunyadym@chromium.org\u003e\nReviewed-by: Mattias Nissler \u003cmnissler@chromium.org\u003e\nReviewed-by: Dan Erat \u003cderat@chromium.org\u003e\n"
    },
    {
      "commit": "6bc9c1d7fe169e5e8ceb294e0b8a6cd5cadbbec5",
      "tree": "193334b93651097ae73c93b93e92c06f7c3835ed",
      "parents": [
        "c4075810a258bbc60c7bcf0617c1dcb995edc8a8"
      ],
      "author": {
        "name": "Maksim Ivanov",
        "email": "emaxx@google.com",
        "time": "Tue May 29 19:02:42 2018"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Thu May 31 19:26:11 2018"
      },
      "message": "libbrillo: Add SecureBlob constructor from Blob\n\nAdd an explicit constructor that allows to convert Blob\ninto SecureBlob.\n\nThis should be useful during the transition period while\nmoving away from SecureBlob - if some code has mixed use\nof Blob\u0027s and SecureBlob\u0027s, then the new constructor will\nallow to avoid typing long iterator-based conversions.\n\nBUG\u003dchromium:728047\nTEST\u003dnew unit test (SecureBlobTest.BlobConstructorTest)\n\nChange-Id: Icad5f0817174f9ec671580dce402a7c361113b6a\nReviewed-on: https://chromium-review.googlesource.com/1076631\nCommit-Ready: Maksim Ivanov \u003cemaxx@chromium.org\u003e\nTested-by: Maksim Ivanov \u003cemaxx@chromium.org\u003e\nReviewed-by: Dan Erat \u003cderat@chromium.org\u003e\nReviewed-by: Jorge Lucangeli Obes \u003cjorgelo@chromium.org\u003e\n"
    },
    {
      "commit": "c4075810a258bbc60c7bcf0617c1dcb995edc8a8",
      "tree": "4abd34e63480b78cfeea7d7c0aa5056cd80164d9",
      "parents": [
        "514938dc6cc0ebcbd397764b2a59c9eec796cb97"
      ],
      "author": {
        "name": "Eric Caruso",
        "email": "ejcaruso@chromium.org",
        "time": "Thu May 17 20:15:14 2018"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Sat May 19 00:20:00 2018"
      },
      "message": "libbrillo: avoid double-binding callbacks and operator()\n\nThe second bind is a no-op since it doesn\u0027t provide any extra\narguments, so it\u0027s just an unnecessary allocation. Also, it looks\nlike new versions of base::Bind don\u0027t like functor objects, so\ninstead of packaging the callback\u0027s environment as part of an\nenclosing object we should just bind in the bits we need as\narguments.\n\nBUG\u003db:37434548\nTEST\u003dunit tests\n\nChange-Id: I4bed9857655958f300bc99fa9508f2e940fc4a9a\nReviewed-on: https://chromium-review.googlesource.com/1064880\nCommit-Ready: Eric Caruso \u003cejcaruso@chromium.org\u003e\nTested-by: Eric Caruso \u003cejcaruso@chromium.org\u003e\nReviewed-by: Eric Caruso \u003cejcaruso@chromium.org\u003e\n"
    },
    {
      "commit": "514938dc6cc0ebcbd397764b2a59c9eec796cb97",
      "tree": "a15d46c0743eb1c322d0a014de6244800ae3e432",
      "parents": [
        "a1880bb77cc066656d60af99bf1ba44eb522f08a"
      ],
      "author": {
        "name": "Daniel Erat",
        "email": "derat@chromium.org",
        "time": "Tue Apr 24 20:49:35 2018"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Thu May 03 05:21:13 2018"
      },
      "message": "libbrillo: Delete GlibMessageLoop.\n\nThis class is no longer used.\n\nBUG\u003dchromium:361635\nTEST\u003dbuilt with FEATURES\u003dtest, both with and without dbus\n     USE flag\n\nChange-Id: I6f96848ba1d137c62396ab2a32b35152ef79040c\nReviewed-on: https://chromium-review.googlesource.com/1026843\nCommit-Ready: Dan Erat \u003cderat@chromium.org\u003e\nTested-by: Dan Erat \u003cderat@chromium.org\u003e\nReviewed-by: Eric Caruso \u003cejcaruso@chromium.org\u003e\nReviewed-by: Alex Deymo \u003cdeymo@google.com\u003e\n"
    },
    {
      "commit": "a1880bb77cc066656d60af99bf1ba44eb522f08a",
      "tree": "9ef13f6a5917503e43c4cc1dcaa5c6dbad87382a",
      "parents": [
        "7859c4ff82e9e42eeb59ff000c379e293a721ed7"
      ],
      "author": {
        "name": "Ryo Hashimoto",
        "email": "hashimoto@google.com",
        "time": "Tue Apr 24 10:45:11 2018"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Wed Apr 25 21:40:49 2018"
      },
      "message": "libbrillo: Add a way to construct FileDescriptor without duping FD\n\nAdd FileDescriptor(base::ScopedFD\u0026\u0026) and operator\u003d(base::ScopedFD\u0026\u0026) to\ncreate FileDescriptor without calling dup().\nAlso add release() to take the ownership of the FD without calling\ndup().\n\nBUG\u003dNone\nTEST\u003dbuild\nChange-Id: Id96c3dc76e180bf11b674ad08d7d19f75f854c98\nReviewed-on: https://chromium-review.googlesource.com/1025332\nCommit-Ready: Ryo Hashimoto \u003chashimoto@chromium.org\u003e\nTested-by: Ryo Hashimoto \u003chashimoto@chromium.org\u003e\nReviewed-by: Dan Erat \u003cderat@chromium.org\u003e\n"
    },
    {
      "commit": "7859c4ff82e9e42eeb59ff000c379e293a721ed7",
      "tree": "80cb41fd8434f6222164fe16264a2c45d3a404df",
      "parents": [
        "a9d8279bc8e9fb387f2b0ab2b62821d57706696e"
      ],
      "author": {
        "name": "Marton Hunyady",
        "email": "hunyadym@chromium.org",
        "time": "Mon Apr 16 18:04:21 2018"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Fri Apr 20 02:29:05 2018"
      },
      "message": "libbrillo: Set default values for RollbackAllowedMilestones policy.\n\nRollbackAllowedMilestones policy values must be between 0 and 4.\nDefault for enterprise devices is 4, for consumer devices the\nvalue is always 0.\n\nBecause DevicePolicy is not available for consumer devices, this\nCL adds IsConsumerDevice to PolicyProvider, so update_engine can\ncheck whether it should use the consumer 0 or not set anything if\nthe policy is not yet loaded.\n\nNot setting anything in the case when the device is still in\nOOBE is important because setting a smaller value can permanently\ndisable rollback to an older version.\n\nBUG\u003dchromium:813036\nTEST\u003d\u0027cros_run_unit_tests --board\u003dcyan --packages libbrillo\u0027\n\nChange-Id: I228b12ddf3ba05f3230d111ac05d74c0330999c4\nReviewed-on: https://chromium-review.googlesource.com/1013461\nCommit-Ready: Marton Hunyady \u003chunyadym@chromium.org\u003e\nTested-by: Marton Hunyady \u003chunyadym@chromium.org\u003e\nReviewed-by: Dan Erat \u003cderat@chromium.org\u003e\n"
    },
    {
      "commit": "a9d8279bc8e9fb387f2b0ab2b62821d57706696e",
      "tree": "129eb76c8d4afec925dcd0fe1363d10925a1c50f",
      "parents": [
        "c452c4cea981f4741cc28368caf94acf89768255"
      ],
      "author": {
        "name": "Marton Hunyady",
        "email": "hunyadym@chromium.org",
        "time": "Mon Apr 16 16:17:25 2018"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Wed Apr 18 09:08:05 2018"
      },
      "message": "libbrillo: Fix DCHECK in PolicyProvider::GetDevicePolicy\n\nBUG\u003dNone\nTEST\u003d\u0027cros_run_unit_tests --board\u003dcyan --packages libbrillo\u0027\n\nChange-Id: Id5f30575268a3e9851fcfdfbab9ae7c887877a8c\nReviewed-on: https://chromium-review.googlesource.com/1013485\nCommit-Ready: Marton Hunyady \u003chunyadym@chromium.org\u003e\nTested-by: Marton Hunyady \u003chunyadym@chromium.org\u003e\nReviewed-by: Dan Erat \u003cderat@chromium.org\u003e\n"
    },
    {
      "commit": "c452c4cea981f4741cc28368caf94acf89768255",
      "tree": "abfee3f05c4ea49b03a10a9141d699d944b7f163",
      "parents": [
        "69df7cbdda2e7878f6e217670741bf54857baab1"
      ],
      "author": {
        "name": "Eric Caruso",
        "email": "ejcaruso@chromium.org",
        "time": "Tue Apr 10 00:48:19 2018"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Thu Apr 12 03:28:19 2018"
      },
      "message": "libbrillo: use bound arguments rather than capture-by-ref\n\nIn future libchrome we will have the ability to bind lambdas but\nit\u0027s considered unacceptable to bind lambdas that carry an\nenvironment. To prepare for this, explicitly state the environment\nas bound bare pointers to local variables.\n\nBUG\u003db:37434548\nTEST\u003dunit tests\n\nChange-Id: Id6cd318077de9b5ad253731a107d2cb418323de6\nReviewed-on: https://chromium-review.googlesource.com/1003892\nCommit-Ready: Eric Caruso \u003cejcaruso@chromium.org\u003e\nTested-by: Eric Caruso \u003cejcaruso@chromium.org\u003e\nReviewed-by: Eric Caruso \u003cejcaruso@chromium.org\u003e\n"
    },
    {
      "commit": "69df7cbdda2e7878f6e217670741bf54857baab1",
      "tree": "5c2099706cf16f32c01f10af78c137612c17754d",
      "parents": [
        "895aba997ff7ce020bdf1823d87fa5b0cbfe58b8"
      ],
      "author": {
        "name": "Eric Caruso",
        "email": "ejcaruso@chromium.org",
        "time": "Mon Apr 09 23:29:33 2018"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Wed Apr 11 21:55:45 2018"
      },
      "message": "libbrillo: use task runners instead of message loops\n\nThe PostTask, PostDelayedTask, and DeleteSoon methods on message\nloops are gone in the new libchrome, so use the task runner API\ninstead.\n\nBUG\u003db:37434548\nTEST\u003demerge\n\nChange-Id: I5a5de39e8a496fb1bed9f0f8c82f06d19a436125\nReviewed-on: https://chromium-review.googlesource.com/1003593\nCommit-Ready: Eric Caruso \u003cejcaruso@chromium.org\u003e\nTested-by: Eric Caruso \u003cejcaruso@chromium.org\u003e\nReviewed-by: Dan Erat \u003cderat@chromium.org\u003e\n"
    },
    {
      "commit": "895aba997ff7ce020bdf1823d87fa5b0cbfe58b8",
      "tree": "a81022262a69c2a0db4030c932a616bed6c93738",
      "parents": [
        "21ae3c1399e1bd2ec9d25c372fdd83d1770b2c89"
      ],
      "author": {
        "name": "Eric Caruso",
        "email": "ejcaruso@chromium.org",
        "time": "Mon Apr 09 23:43:09 2018"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Wed Apr 11 02:13:33 2018"
      },
      "message": "libbrillo: remove unused header\n\nThis header is gone in future libchromes and we removed all of\nthe references to dbus::FileDescriptor in previous CLs.\n\nBUG\u003db:37434548\nTEST\u003demerge\n\nChange-Id: I0034a1fea6c07ce2a3f95702f363d528662e8225\nReviewed-on: https://chromium-review.googlesource.com/1003595\nCommit-Ready: Eric Caruso \u003cejcaruso@chromium.org\u003e\nTested-by: Eric Caruso \u003cejcaruso@chromium.org\u003e\nReviewed-by: Dan Erat \u003cderat@chromium.org\u003e\n"
    },
    {
      "commit": "21ae3c1399e1bd2ec9d25c372fdd83d1770b2c89",
      "tree": "6f691f7e914e6d1ff6646878619f304a7db9ec7e",
      "parents": [
        "f02fd73fffe7a2dd848abe2b4ac5070f7261af7a"
      ],
      "author": {
        "name": "Eric Caruso",
        "email": "ejcaruso@chromium.org",
        "time": "Mon Apr 09 23:24:05 2018"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Wed Apr 11 02:13:00 2018"
      },
      "message": "libbrillo: use DCHECK_IS_ON() rather than DEBUG_MODE\n\nThe DEBUG_MODE symbol is gone in the new libchrome.\n\nBUG\u003db:37434548\nTEST\u003demerge\n\nChange-Id: Ic31ca0eb9f9ee78ead1d66ec8f08edbd994e6b3a\nReviewed-on: https://chromium-review.googlesource.com/1003517\nCommit-Ready: Eric Caruso \u003cejcaruso@chromium.org\u003e\nTested-by: Eric Caruso \u003cejcaruso@chromium.org\u003e\nReviewed-by: Dan Erat \u003cderat@chromium.org\u003e\n"
    },
    {
      "commit": "f02fd73fffe7a2dd848abe2b4ac5070f7261af7a",
      "tree": "059bf7e6ce0907e9130b879304ff85ca9c246ddc",
      "parents": [
        "75578a94f0a03ccd33fca12aacd5d1507444c0c8"
      ],
      "author": {
        "name": "Eric Caruso",
        "email": "ejcaruso@chromium.org",
        "time": "Fri Apr 06 23:29:23 2018"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Sat Apr 07 05:00:01 2018"
      },
      "message": "libbrillo: remove all uses of dbus::FileDescriptor\n\nWe don\u0027t support this anymore and we have to remove it for the\nlibchrome uprev anyway.\n\ndbus::FileDescriptor is now dead.\n\nCQ-DEPEND\u003dCL:1000494\nBUG\u003db:37434548\nTEST\u003dunit tests, build_packages\n\nChange-Id: I1ca743a2b6f2875eb97c6c95faf4b2717a21e9d1\nReviewed-on: https://chromium-review.googlesource.com/1000725\nCommit-Ready: Eric Caruso \u003cejcaruso@chromium.org\u003e\nTested-by: Eric Caruso \u003cejcaruso@chromium.org\u003e\nReviewed-by: Dan Erat \u003cderat@chromium.org\u003e\n"
    },
    {
      "commit": "75578a94f0a03ccd33fca12aacd5d1507444c0c8",
      "tree": "734d9107311bb3e2392a9d981772f40cbd67073f",
      "parents": [
        "c879ed39a320c7e245355d81bc31d837bdda24c0"
      ],
      "author": {
        "name": "Eric Caruso",
        "email": "ejcaruso@chromium.org",
        "time": "Thu Mar 29 18:33:59 2018"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Wed Apr 04 01:46:57 2018"
      },
      "message": "libbrillo: dup and scope file descriptor\n\nbrillo::dbus_utils::FileDescriptor may be used to pass FDs\nback out of adaptor code into D-Bus bindings, in which case the\nadaptor code does not pass ownership of the FDs to the D-Bus\nbindings but the D-Bus FD will probably outlive the lifetime of\nthe FD in the adaptor code.\n\nTo deal with this, we use brillo::dbus_utils::FileDescriptor as a\nwrapper around a ScopedFD which dups file descriptors that are\nput in. This means adaptor code can pass FDs without having to\ngive up ownership or manually try to mitigate leaks later, and\ndoes not have to deal with e.g. duping into a ScopedFD at all\ncallsites.\n\nBUG\u003db:37434548\nTEST\u003dunit tests, use in permission_broker/session_manager/etc\n\nChange-Id: Ic3f139d4af817bb0bbe975cec3855e44a09bcda9\nReviewed-on: https://chromium-review.googlesource.com/987197\nCommit-Ready: Eric Caruso \u003cejcaruso@chromium.org\u003e\nTested-by: Eric Caruso \u003cejcaruso@chromium.org\u003e\nReviewed-by: Dan Erat \u003cderat@chromium.org\u003e\n"
    },
    {
      "commit": "c879ed39a320c7e245355d81bc31d837bdda24c0",
      "tree": "0cc7cc44e47f3757aa1f9f520e96aed059715be5",
      "parents": [
        "2b61f16f86b773f88ba69a7a15b6a33e132c3a58"
      ],
      "author": {
        "name": "Sonny Sasaka",
        "email": "sonnysasaka@chromium.org",
        "time": "Thu Mar 22 07:21:58 2018"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Sat Mar 24 19:31:30 2018"
      },
      "message": "libbrillo: Resets property update callback on UnregisterProperty\n\nBUG\u003dchromium:812468\nTEST\u003dUnit test added\n\nChange-Id: I797852ffc456894d845b388feff1de56b922e49b\nReviewed-on: https://chromium-review.googlesource.com/974907\nCommit-Ready: Sonny Sasaka \u003csonnysasaka@chromium.org\u003e\nTested-by: Sonny Sasaka \u003csonnysasaka@chromium.org\u003e\nReviewed-by: Ben Chan \u003cbenchan@chromium.org\u003e\n"
    },
    {
      "commit": "2b61f16f86b773f88ba69a7a15b6a33e132c3a58",
      "tree": "cc147fba4838ab6a469a2570ffdf710217b8dfb1",
      "parents": [
        "7b0a8b2186435c96e8e88a648d57378a21940645"
      ],
      "author": {
        "name": "Eric Caruso",
        "email": "ejcaruso@chromium.org",
        "time": "Thu Mar 22 22:45:01 2018"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Fri Mar 23 03:53:33 2018"
      },
      "message": "libbrillo: add default constructor for FileDescriptor\n\nThis allows us to default-construct the struct so a pointer to\none can be passed to D-Bus callers as an out-argument.\n\nBUG\u003dchromium:821633\nTEST\u003dcompile new bindings with permission_broker\n\nChange-Id: I1c94d66c24d493a8e35c23724c316cb17bd22fa2\nReviewed-on: https://chromium-review.googlesource.com/976870\nCommit-Ready: Eric Caruso \u003cejcaruso@chromium.org\u003e\nTested-by: Eric Caruso \u003cejcaruso@chromium.org\u003e\nReviewed-by: Dan Erat \u003cderat@chromium.org\u003e\n"
    },
    {
      "commit": "7b0a8b2186435c96e8e88a648d57378a21940645",
      "tree": "b8a53960118d368c223851b6cb17a15722adcedb",
      "parents": [
        "b10d41fb816f35a4df9a4aea2acad6981bc322b9"
      ],
      "author": {
        "name": "Marton Hunyady",
        "email": "hunyadym@chromium.org",
        "time": "Mon Feb 19 15:52:27 2018"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Mon Mar 19 21:18:58 2018"
      },
      "message": "libbrillo: policy: Add new rollback device policies.\n\nAdd two new device policies from the chrome_device_policy.proto:\n- rollback_to_target_version\n- rollback_allowed_milestones\n\nBUG\u003dchromium:813036\nTEST\u003d\u0027FEATURES\u003dtest emerge-cyan protofiles libbrillo\u0027 and \u0027cros_run_unit_tests --board\u003dcyan --packages libbrillo\u0027\nCQ-DEPEND\u003dCL:960382\n\nChange-Id: Ie408ed993fe02f904c511a35837804ac9ff518f9\nReviewed-on: https://chromium-review.googlesource.com/923971\nCommit-Ready: Marton Hunyady \u003chunyadym@chromium.org\u003e\nTested-by: Marton Hunyady \u003chunyadym@chromium.org\u003e\nReviewed-by: Pavol Marko \u003cpmarko@chromium.org\u003e\nReviewed-by: Mike Frysinger \u003cvapier@chromium.org\u003e\n"
    },
    {
      "commit": "b10d41fb816f35a4df9a4aea2acad6981bc322b9",
      "tree": "667794c07f8dcc63027c936ae299e7e957515f20",
      "parents": [
        "50228d6f8d28b6c5802b0b8ef462a7a5e5d1bac0"
      ],
      "author": {
        "name": "Eric Caruso",
        "email": "ejcaruso@chromium.org",
        "time": "Wed Mar 07 21:31:18 2018"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Fri Mar 16 22:56:27 2018"
      },
      "message": "libbrillo: use base::Value instead of StringValue\n\nStringValue is type aliased to base::Value now, so we should\nmove to explicit base::Value to avoid breaking when we uprev\nlibchrome.\n\nBUG\u003db:37434548\nTEST\u003dunit tests\n\nChange-Id: I77b4354ff63d71186c74deb5a5b0bc925a577653\nReviewed-on: https://chromium-review.googlesource.com/953648\nCommit-Ready: Eric Caruso \u003cejcaruso@chromium.org\u003e\nTested-by: Eric Caruso \u003cejcaruso@chromium.org\u003e\nReviewed-by: Dan Erat \u003cderat@chromium.org\u003e\n"
    },
    {
      "commit": "50228d6f8d28b6c5802b0b8ef462a7a5e5d1bac0",
      "tree": "aff4b670c3c635f479871eae25c72aad0d71b947",
      "parents": [
        "0a5aff886985c2687ccd789a6def7e47c34cd1ac"
      ],
      "author": {
        "name": "Sonny Sasaka",
        "email": "sonnysasaka@chromium.org",
        "time": "Sat Mar 10 09:41:12 2018"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Fri Mar 16 20:30:01 2018"
      },
      "message": "libbrillo: Expose DBusObject of ExportedObjectManager.\n\nExportedObjectManager subscribes to signals on interface\norg.freedesktop.DBus.ObjectManager. In D-Bus forwarding case, it may\nreceive expected signals from the forwarded service about\nInterfacesAdded and InterfacesRemoved but it would be logged as\nunexpected method calls and pollute the logs. There needs to be a way to\nfreely attach method handlers to the expected methods so we can handle\nthem instead of unnecessarily polluting the logs.\n\nBUG\u003dchromium:812468\nTEST\u003dTested with Bluetooth daemon D-Bus forwarding\n\nChange-Id: Ifb26a2d7ce800fde4311b18efe36ab5110f0dae4\nReviewed-on: https://chromium-review.googlesource.com/958325\nCommit-Ready: Sonny Sasaka \u003csonnysasaka@chromium.org\u003e\nTested-by: Sonny Sasaka \u003csonnysasaka@chromium.org\u003e\nReviewed-by: Ben Chan \u003cbenchan@chromium.org\u003e\n"
    },
    {
      "commit": "0a5aff886985c2687ccd789a6def7e47c34cd1ac",
      "tree": "c1911592c4382bd1025ede8572e646d4aaa283fc",
      "parents": [
        "91b37e06780bea8aaa7e80299683460db1b64f55"
      ],
      "author": {
        "name": "Eric Caruso",
        "email": "ejcaruso@chromium.org",
        "time": "Tue Mar 13 01:00:45 2018"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Wed Mar 14 02:00:17 2018"
      },
      "message": "libbrillo: provide Daemon method to do init on message loop\n\nIn OnInit the message loop may not be instantiated yet, so if\nsome initialization has to happen asynchronously it might have\nany task runner to post tasks to. Allow subclasses of Daemon to\nprovide a method implementation with initialization that must\ntake place when the message loop has started and is the current\nmessage loop.\n\nBUG\u003db:74250103\nTEST\u003dwith modemfwd\n\nChange-Id: I4c9a35934681a24730b01b60e9bca5e853e104ef\nReviewed-on: https://chromium-review.googlesource.com/959524\nCommit-Ready: Eric Caruso \u003cejcaruso@chromium.org\u003e\nTested-by: Eric Caruso \u003cejcaruso@chromium.org\u003e\nReviewed-by: Dan Erat \u003cderat@chromium.org\u003e\n"
    },
    {
      "commit": "91b37e06780bea8aaa7e80299683460db1b64f55",
      "tree": "0f31b7e94390982eec3d224c0d0e3845c336c0ff",
      "parents": [
        "627d2c4dc33b64d91c06b9a90ce4ea7e17391d57"
      ],
      "author": {
        "name": "Sonny Sasaka",
        "email": "sonnysasaka@chromium.org",
        "time": "Fri Mar 09 00:45:26 2018"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Sat Mar 10 04:05:30 2018"
      },
      "message": "libbrillo: Support adding/removing interfaces and their properties.\n\nD-Bus specification allows interfaces to be added or removed even after\nan object is exported. This CL adds the support to libbrillo\u0027s D-Bus\nlibrary to do this.\n\nThis is needed by the new Bluetooth daemon which is going to impersonate\nBlueZ\u0027s ObjectManager and BlueZ may add/remove interfaces of an object\ndynamically.\n\nBUG\u003dchromium:812468\nTEST\u003dTested with Bluetooth daemon\n\nChange-Id: Ia72735bfd28082cf6c43d1e774beb912fa60ec2d\nReviewed-on: https://chromium-review.googlesource.com/956745\nCommit-Ready: Sonny Sasaka \u003csonnysasaka@chromium.org\u003e\nTested-by: Sonny Sasaka \u003csonnysasaka@chromium.org\u003e\nReviewed-by: Ben Chan \u003cbenchan@chromium.org\u003e\n"
    },
    {
      "commit": "627d2c4dc33b64d91c06b9a90ce4ea7e17391d57",
      "tree": "5393c9d31253ce4f349265c7029f1f259dd236f6",
      "parents": [
        "918c24d85d1b22844b3cc11adacc358bb3d5559c"
      ],
      "author": {
        "name": "Eric Caruso",
        "email": "ejcaruso@chromium.org",
        "time": "Thu Mar 08 22:46:35 2018"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Sat Mar 10 01:38:52 2018"
      },
      "message": "libbrillo: add new FD D-Bus bindings\n\nAdd serialization and deserialization for the FD types used by\nthe new libchrome D-Bus bindings, and plumb those through the\nmethod invoker as well.\n\nCQ-DEPEND\u003dCL:956622\nBUG\u003db:37434548\nTEST\u003dunit tests\n\nChange-Id: Ice58ecd307da253cd073be83c7805e68fb9c6edf\nReviewed-on: https://chromium-review.googlesource.com/956623\nCommit-Ready: Eric Caruso \u003cejcaruso@chromium.org\u003e\nTested-by: Eric Caruso \u003cejcaruso@chromium.org\u003e\nReviewed-by: Eric Caruso \u003cejcaruso@chromium.org\u003e\n"
    },
    {
      "commit": "918c24d85d1b22844b3cc11adacc358bb3d5559c",
      "tree": "39eb2a86fb0b19fb9f46c54c142187b0c5ce1ae9",
      "parents": [
        "bdfc8281d8e94e47bddf2f9f7401bcdb3beb80ad"
      ],
      "author": {
        "name": "Eric Caruso",
        "email": "ejcaruso@chromium.org",
        "time": "Mon Mar 05 19:52:41 2018"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Tue Mar 06 02:34:36 2018"
      },
      "message": "libbrillo: use std::make_unique in Value construction\n\nYou can return std::unique_ptr\u003cDerived\u003e when the return value is\ndeclared as std::unique_ptr\u003cBase\u003e if Derived \u003c: Base, so there is\nno reason not to use std::make_unique here. Also, since libchrome\ninlined FundamentalValue into Value, we can explicitly use those\nconstructors instead.\n\nBUG\u003db:37434548\nTEST\u003demerge\n\nChange-Id: Ia30bcec79c7b618d0051bf7c054858684327685f\nReviewed-on: https://chromium-review.googlesource.com/949663\nCommit-Ready: Eric Caruso \u003cejcaruso@chromium.org\u003e\nTested-by: Eric Caruso \u003cejcaruso@chromium.org\u003e\nReviewed-by: Dan Erat \u003cderat@chromium.org\u003e\n"
    },
    {
      "commit": "bdfc8281d8e94e47bddf2f9f7401bcdb3beb80ad",
      "tree": "150a94353cb564a7abb3aec21ee0058859aebeec",
      "parents": [
        "037e08dae3b6c1b288ac35b35245c7d8bed84a58"
      ],
      "author": {
        "name": "Aaron Wood",
        "email": "aaronwood@google.com",
        "time": "Tue Oct 31 17:49:01 2017"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Fri Mar 02 21:25:19 2018"
      },
      "message": "libbrillo: Bitwise operator templates for enums\n\nWhen an enum is used to define bitwise flags that are meant to be\ncombined (FLAG_ONE | FLAG_TWO), the resultant value needs to be cast\nback to the enum type in order to be stored in a variable of the same\ntype as the enum (as the result is a value of underlying_type of the\nenum).\n\nThis adds a macro that allows templated bitwise operators to be defined\nso that the enumerators can be used more cleanly in code, while\npreserving type-safety.\n\nBUG\u003db:37434548\nBUG\u003dchromium:815356\nTEST\u003dunittests\n(cherry picked from commit 1d20c7da0b8833ffda7dfff2066205ea1af7e771)\n\nChange-Id: I35b2a5b99fe87d63f1d0a0c01fba03e7b2f9a58b\nReviewed-on: https://chromium-review.googlesource.com/941982\nCommit-Ready: Amin Hassani \u003cahassani@chromium.org\u003e\nTested-by: Amin Hassani \u003cahassani@chromium.org\u003e\nReviewed-by: Amin Hassani \u003cahassani@chromium.org\u003e\n"
    },
    {
      "commit": "037e08dae3b6c1b288ac35b35245c7d8bed84a58",
      "tree": "46e4776e36f8c1661668366375a6919f9ce3e6a8",
      "parents": [
        "f122936f24dd1f536ac1ec33415d2e929d2ff4aa"
      ],
      "author": {
        "name": "Sonny Sasaka",
        "email": "sonnysasaka@chromium.org",
        "time": "Tue Feb 27 08:22:54 2018"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Fri Mar 02 21:25:17 2018"
      },
      "message": "libbrillo: Support custom D-Bus property handlers\n\nThis CL is to allow clients of DBusObject to implement their own custom\nproperty method handlers (GetAll/Get/Set). Possible use cases include:\n* handling Set method call to be forwarded to another D-Bus service\n* handling Set method call to trigger some operation other than setting\n  the property value itself.\n* handling Get method call to return a value which is a function of\n  other properties\u0027 values.\n\nBUG\u003dchromium:812468\nTEST\u003dTested with Bluetooth daemon that forwards Set method call.\n\nChange-Id: I8294dc46885b2105adceb9c144f4d603185e49ff\nReviewed-on: https://chromium-review.googlesource.com/939263\nCommit-Ready: Sonny Sasaka \u003csonnysasaka@chromium.org\u003e\nTested-by: Sonny Sasaka \u003csonnysasaka@chromium.org\u003e\nReviewed-by: Ben Chan \u003cbenchan@chromium.org\u003e\n"
    },
    {
      "commit": "f122936f24dd1f536ac1ec33415d2e929d2ff4aa",
      "tree": "9920d7ff157d6bc52ffede6bac64c19dbc5f27bf",
      "parents": [
        "c1f7f7c6368b36b6632a9c353673f6a0f9b816bb"
      ],
      "author": {
        "name": "Eric Caruso",
        "email": "ejcaruso@chromium.org",
        "time": "Thu Mar 01 17:47:56 2018"
      },
      "committer": {
        "name": "Eric Caruso",
        "email": "ejcaruso@chromium.org",
        "time": "Thu Mar 01 17:47:56 2018"
      },
      "message": "libbrillo: add self to OWNERS\n\nBUG\u003dNone\nTEST\u003dNone\n\nChange-Id: Ic3d325a5747afdf0f88ea4da399b910dbf60c35e\n"
    },
    {
      "commit": "c1f7f7c6368b36b6632a9c353673f6a0f9b816bb",
      "tree": "1cc97340571c9508d5f03bfa3224c3c7ae7f358f",
      "parents": [
        "48386c33c7caaf1015d7c4b15991ace455eb3fa2"
      ],
      "author": {
        "name": "Eric Caruso",
        "email": "ejcaruso@chromium.org",
        "time": "Wed Feb 07 00:26:54 2018"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Fri Feb 09 03:43:52 2018"
      },
      "message": "libbrillo: use ScopedTempDir::GetPath\n\nUpstream versions of libchrome have gotten rid of ScopedTempDir\u0027s\ninline path method because they wanted to introduce a DCHECK that\nhelps make sure people create the temp directory before using it.\nTo avoid introducing a header dependency on the logging header\nthey took this method out of the header so it wouldn\u0027t be inlined.\n\nBUG\u003db:37434548\nTEST\u003dunit tests\n\nChange-Id: Ic83227a7ddbbad32a1df1f9554d29470c1a2dd42\nReviewed-on: https://chromium-review.googlesource.com/905784\nCommit-Ready: Eric Caruso \u003cejcaruso@chromium.org\u003e\nTested-by: Eric Caruso \u003cejcaruso@chromium.org\u003e\nReviewed-by: Dan Erat \u003cderat@chromium.org\u003e\n"
    },
    {
      "commit": "48386c33c7caaf1015d7c4b15991ace455eb3fa2",
      "tree": "e11fe922d3e711d01a4eea852a0dcab6438b1b5e",
      "parents": [
        "91944f28f4685f6fcf46720339b1834717b8a23e"
      ],
      "author": {
        "name": "Eric Caruso",
        "email": "ejcaruso@chromium.org",
        "time": "Wed Feb 07 00:39:50 2018"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Fri Feb 09 03:43:51 2018"
      },
      "message": "libbrillo: add location to FileDescriptorWatcher constructor\n\nThe constructor for this upstream takes a Location object. We\u0027ve\nadded this as a transparent wrapper around the current nullary\nconstructor so we can move to the new API without changing the\nclient code.\n\nBUG\u003db:37434548\nTEST\u003dunit tests\n\nChange-Id: I3889a74e8561a9e5c77a05bc938745cac2d01661\nReviewed-on: https://chromium-review.googlesource.com/905510\nCommit-Ready: Eric Caruso \u003cejcaruso@chromium.org\u003e\nTested-by: Eric Caruso \u003cejcaruso@chromium.org\u003e\nReviewed-by: Dan Erat \u003cderat@chromium.org\u003e\n"
    },
    {
      "commit": "91944f28f4685f6fcf46720339b1834717b8a23e",
      "tree": "77fb7a5599e4b9ccbcd4db9dad0d23bcead27e1c",
      "parents": [
        "c794a05538bb87a9e18f744d893475ded1b973e2"
      ],
      "author": {
        "name": "Manoj Gupta",
        "email": "manojgupta@google.com",
        "time": "Fri Feb 02 03:23:22 2018"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Fri Feb 02 21:19:23 2018"
      },
      "message": "libbrillo: Disable asan on SecureMemset.\n\nSecureMemset is used to overwrite beyond string size() but not\nbeyond capacity().\nAs this behavior is intentional, disable it from asan analysis.\n\nAlso provide a new asan.h header file to hold all asan specific\ndefinitions.\n\nBUG\u003dchromium:808243\nTEST\u003dlibbrillo/cryptohome unit tests pass with asan.\n\nChange-Id: Idfabe15614299312be35beb64eae10e5acb07e1b\nReviewed-on: https://chromium-review.googlesource.com/898605\nCommit-Ready: Manoj Gupta \u003cmanojgupta@chromium.org\u003e\nTested-by: Manoj Gupta \u003cmanojgupta@chromium.org\u003e\nReviewed-by: Mike Frysinger \u003cvapier@chromium.org\u003e\n"
    },
    {
      "commit": "c794a05538bb87a9e18f744d893475ded1b973e2",
      "tree": "0c57b9b973fb717a2f9ff6a3d293a1fe54642ce1",
      "parents": [
        "cd5ebb24e6c74e3f64eb0d3877ecb75473b2e96f"
      ],
      "author": {
        "name": "Lutz Justen",
        "email": "ljusten@chromium.org",
        "time": "Mon Jan 29 13:46:42 2018"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Fri Feb 02 11:40:35 2018"
      },
      "message": "libpolicy: Add getter for ChromeDeviceSettingsProto\n\nAdds a getter for ChromeDeviceSettingsProto in DevicePolicyImpl. This\nprevents a lot of boilerplate code when used by classes that deal with\ndevice policy, anyway, like authpolicyd.\n\nAlso adds a way to disable validation to be used for authpolicyd unit\ntests.\n\nBUG\u003dchromium:801704\nTEST\u003dcros_run_unit_tests --board\u003damd64-generic --packages libbrillo\n\nChange-Id: Ide9e8f87c9798c6d482e9d88bb7e2f909b1ff02e\nReviewed-on: https://chromium-review.googlesource.com/893180\nCommit-Ready: Lutz Justen \u003cljusten@chromium.org\u003e\nTested-by: Lutz Justen \u003cljusten@chromium.org\u003e\nReviewed-by: Lutz Justen \u003cljusten@chromium.org\u003e\nReviewed-by: Dan Erat \u003cderat@chromium.org\u003e\n"
    },
    {
      "commit": "cd5ebb24e6c74e3f64eb0d3877ecb75473b2e96f",
      "tree": "867a9c061f6997accc724d6c9d13216ec2fc6ab0",
      "parents": [
        "58e79baef59eb99bf2139ef4021308f36f8164a1"
      ],
      "author": {
        "name": "Manoj Gupta",
        "email": "manojgupta@google.com",
        "time": "Fri Jan 26 20:13:31 2018"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Sat Jan 27 04:54:13 2018"
      },
      "message": "libbrillo: Disable ResizeTest when asan is used.\n\nResizeTest intentationally does an oob access in vector.\nAsan complains about this so just disable the test when\nasan is used.\n\nBUG\u003dchromium:806013\nTEST\u003dlibbrillo unit tests pass with asan.\n\nChange-Id: I6abc2ffa30f8ffc6ecb64d89c7857f584d0ec9af\nReviewed-on: https://chromium-review.googlesource.com/889659\nCommit-Ready: Manoj Gupta \u003cmanojgupta@chromium.org\u003e\nTested-by: Manoj Gupta \u003cmanojgupta@chromium.org\u003e\nReviewed-by: Mike Frysinger \u003cvapier@chromium.org\u003e\n"
    },
    {
      "commit": "58e79baef59eb99bf2139ef4021308f36f8164a1",
      "tree": "f6c3e807390ed556e0b09e0ba675eeeb6b1fa613",
      "parents": [
        "d213a401f639649b3e38f6def5782ae2f1322fce"
      ],
      "author": {
        "name": "Denis Kuznetsov",
        "email": "antrim@google.com",
        "time": "Tue Dec 12 20:38:55 2017"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Mon Dec 18 20:01:04 2017"
      },
      "message": "Make session_manager use proper synchronization primitives.\n\nMoved a bunch of file utils from cryptohome::Platform to\nlibbrillo/file_utils.\n\nBUG\u003dchromium:557833\nTEST\u003dcros_workon_make cryptohome --test\nTEST\u003dcros_workon_make libbrillo --test\nChange-Id: Ia5ee99a790ea010fc2cd0cac37bb100c81b3ca8c\nReviewed-on: https://chromium-review.googlesource.com/822614\nCommit-Ready: Denis Kuznetsov \u003cantrim@chromium.org\u003e\nTested-by: Denis Kuznetsov \u003cantrim@chromium.org\u003e\nReviewed-by: Dan Erat \u003cderat@chromium.org\u003e\n"
    },
    {
      "commit": "d213a401f639649b3e38f6def5782ae2f1322fce",
      "tree": "50e45e79dc93b62e6d9788be3e94c9d1ef7227fb",
      "parents": [
        "62b7538a31c4c5a88dcd2ef4d8a60a783ec6b6f7"
      ],
      "author": {
        "name": "Igor",
        "email": "igorcov@chromium.org",
        "time": "Wed Sep 20 13:56:08 2017"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Thu Dec 14 18:18:21 2017"
      },
      "message": "libbrillo: policy: Increase resilience for policy read\n\nThe policy files will be stored with indexes as suffix to improve\nresilience to disk corruptions. This change makes it possible to\nread the policy data from new files and validate them.\n\nDesign doc:\nhttps://docs.google.com/document/d/1RdUKb-deQCBiyc6Dpdf4RDBEPV-feb5WHu7uzY1YozQ/edit#heading\u003dh.h0q5njx6l4xf\n\nBUG\u003dchromium:764337\nTEST\u003dManual\nCQ-DEPEND\u003dCL:681939, CL:819250, CL:819353, CL:819412\n\nChange-Id: I10f31d307925c6ccef3cfd0887a71b7c774139e2\nReviewed-on: https://chromium-review.googlesource.com/674935\nCommit-Ready: Igor \u003cigorcov@chromium.org\u003e\nTested-by: Igor \u003cigorcov@chromium.org\u003e\nReviewed-by: Maksim Ivanov \u003cemaxx@chromium.org\u003e\nReviewed-by: Dan Erat \u003cderat@chromium.org\u003e\n"
    },
    {
      "commit": "62b7538a31c4c5a88dcd2ef4d8a60a783ec6b6f7",
      "tree": "0c2aca9211a622d718bfa2e469ff5276a0ef7cd9",
      "parents": [
        "de7f50dfda51d534cb8bd23e73c2354925b2099a"
      ],
      "author": {
        "name": "Raju Konduru",
        "email": "raju.konduru@globaledgesoft.com",
        "time": "Thu Oct 12 15:40:59 2017"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Fri Oct 13 21:45:18 2017"
      },
      "message": "libbrillo: Log Cleanup\n\n1)Print curl request log only for failure case\n2)Removed excess log\n\nBUG\u003db:65480079\nTEST\u003dcros_workon_make --test --board\u003dgale libbrillo\n\nChange-Id: I7e9ef0fb43cb97506043d1c1e2b324facc132a85\nReviewed-on: https://chromium-review.googlesource.com/716437\nCommit-Ready: jr.shashidhar jr.shashidhar \u003cjr.shashidhar@globaledgesoftware.corp-partner.google.com\u003e\nTested-by: jr.shashidhar jr.shashidhar \u003cjr.shashidhar@globaledgesoftware.corp-partner.google.com\u003e\nReviewed-by: Julan Hsu \u003cjulanhsu@google.com\u003e\n"
    },
    {
      "commit": "de7f50dfda51d534cb8bd23e73c2354925b2099a",
      "tree": "8961267b70398da6a41e0325c552cdea3ce8c649",
      "parents": [
        "bb9dbcba19220d47baafd089b84de2b20b4aeae6"
      ],
      "author": {
        "name": "Ben Chan",
        "email": "benchan@chromium.org",
        "time": "Fri Oct 06 00:04:24 2017"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Fri Oct 06 10:57:47 2017"
      },
      "message": "libbrillo: migrate from base::MakeUnique to std::make_unique\n\nbase::MakeUnique is being deprecated as we can now use std::make_unique\nwhen compiling code in the C++14 mode.\n\nBUG\u003dchromium:769107\nTEST\u003dRun unit tests.\n\nChange-Id: Ia3eb683524064888a1c4a29d3ba3e5124c3c9331\nReviewed-on: https://chromium-review.googlesource.com/703881\nCommit-Ready: Ben Chan \u003cbenchan@chromium.org\u003e\nTested-by: Ben Chan \u003cbenchan@chromium.org\u003e\nReviewed-by: Mike Frysinger \u003cvapier@chromium.org\u003e\n"
    },
    {
      "commit": "bb9dbcba19220d47baafd089b84de2b20b4aeae6",
      "tree": "f2a3d747d0ba1993a19e0dc5498649d587cafe4f",
      "parents": [
        "84b910fe90e91ef14e6ddec7c7f0a869e1ae5ec6"
      ],
      "author": {
        "name": "Jeffrey Kardatzke",
        "email": "jkardatzke@google.com",
        "time": "Wed Sep 27 23:28:57 2017"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Fri Sep 29 06:26:39 2017"
      },
      "message": "Added getting proxy config from Chrome and default proxy transport\n\nThis adds methods for getting the proxy settings from Chrome in either a\nsynchronous or asynchronous way. It also then adds a method to\nhttp_transport for creating a Transport based off the proxy settings\nrather than having to call into the curl specific methods.\n\nBUG\u003dNone\nTEST\u003dUnit tests pass\n\nChange-Id: I4f3df09740e4f3a78563fbb1987928bd794fd3c5\nReviewed-on: https://chromium-review.googlesource.com/687830\nCommit-Ready: Jeffrey Kardatzke \u003cjkardatzke@google.com\u003e\nTested-by: Jeffrey Kardatzke \u003cjkardatzke@google.com\u003e\nReviewed-by: Dan Erat \u003cderat@chromium.org\u003e\n"
    },
    {
      "commit": "84b910fe90e91ef14e6ddec7c7f0a869e1ae5ec6",
      "tree": "eb2c4c8b72b2f2472d3edf6eddec5d53a16ff46a",
      "parents": [
        "35dcdc75d8e20ebe9ab68b8b8eafe6fb11817d69"
      ],
      "author": {
        "name": "Stephen Barber",
        "email": "smbarber@chromium.org",
        "time": "Tue Sep 19 18:22:24 2017"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Sat Sep 23 00:55:28 2017"
      },
      "message": "libbrillo: allow redirecting process input\n\nAdd a RedirectInput method to Process that allows redirecting\nstdin to read from a file.\n\nBUG\u003dchromium:767088\nTEST\u003dunittests\n\nChange-Id: Id3d440048792a9c89e1ffb3b59ba26f888191678\nReviewed-on: https://chromium-review.googlesource.com/673355\nCommit-Ready: Stephen Barber \u003csmbarber@chromium.org\u003e\nTested-by: Stephen Barber \u003csmbarber@chromium.org\u003e\nReviewed-by: Mike Frysinger \u003cvapier@chromium.org\u003e\n"
    },
    {
      "commit": "35dcdc75d8e20ebe9ab68b8b8eafe6fb11817d69",
      "tree": "55019e8ebb26aff2fc19d3666fc3004dbee4561e",
      "parents": [
        "c5bf48bbc85f034f9e4dfa67348840082d5f7d41"
      ],
      "author": {
        "name": "Daniel Erat",
        "email": "derat@chromium.org",
        "time": "Thu Aug 24 21:29:49 2017"
      },
      "committer": {
        "name": "Dan Erat",
        "email": "derat@chromium.org",
        "time": "Fri Aug 25 13:46:30 2017"
      },
      "message": "libbrillo: Steer people away from GLib.\n\nAdd a brillo/glib/README.md file and some comments warning\npeople away from dbus-glib and GLib.\n\nBUG\u003dnone\nTEST\u003dnone\n\nChange-Id: Iee63ae626fbd630be4d224be47a3d6401ba63902\n"
    },
    {
      "commit": "c5bf48bbc85f034f9e4dfa67348840082d5f7d41",
      "tree": "c1535342456e2f036732ed0149da5afc927b8753",
      "parents": [
        "a1a7e930ebd75e82668f7868fa7cb9fdcb2a043d"
      ],
      "author": {
        "name": "Ben Chan",
        "email": "benchan@chromium.org",
        "time": "Thu Aug 24 05:44:30 2017"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Thu Aug 24 22:15:04 2017"
      },
      "message": "Remove inclusion of brillo/daemons/daemon.h in process_reaper.*\n\nThis CL removes the unnecesary inclusion of brillo/daemons/daemon.h in\nprocess_reaper.*, which don\u0027t use anything from daemons/daemons.h.\n\nBUG\u003dNone\nTEST\u003dRemote trybot runs.\n\nChange-Id: I424df0a2b5895d6a9d33be295a46eed018254bd9\nReviewed-on: https://chromium-review.googlesource.com/631616\nCommit-Ready: Ben Chan \u003cbenchan@chromium.org\u003e\nTested-by: Ben Chan \u003cbenchan@chromium.org\u003e\nReviewed-by: Dan Erat \u003cderat@chromium.org\u003e\n"
    },
    {
      "commit": "a1a7e930ebd75e82668f7868fa7cb9fdcb2a043d",
      "tree": "4ec9d280ac3cf16034fd45ae8fe7ee5e6005ed9d",
      "parents": [
        "9f21d7d47a8af692ccf19714ca59af873003434a"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Wed Aug 16 03:49:40 2017"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Thu Aug 17 18:31:50 2017"
      },
      "message": "syslog: new option to log in interactive sessions\n\nDevelopers often want to run programs that log to stderr when they run\nthem by hand, but use syslog when run as a daemon.  Add a new flag that\nturns on stderr logging only when stdin is a tty.\n\nBUG\u003dNone\nTEST\u003dunittests pass\n\nChange-Id: I8086a4613099c873800188415b97cc7b241ab847\nReviewed-on: https://chromium-review.googlesource.com/616449\nCommit-Ready: Mike Frysinger \u003cvapier@chromium.org\u003e\nTested-by: Mike Frysinger \u003cvapier@chromium.org\u003e\nReviewed-by: Dan Erat \u003cderat@chromium.org\u003e\n"
    },
    {
      "commit": "9f21d7d47a8af692ccf19714ca59af873003434a",
      "tree": "a31f8490683d151d2f8d5e745f0e579a24998605",
      "parents": [
        "070af5efe6be713dc10310405c3951939fda828a"
      ],
      "author": {
        "name": "Pavol Marko",
        "email": "pmarko@chromium.org",
        "time": "Fri Jun 30 14:41:55 2017"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Mon Jul 17 17:28:24 2017"
      },
      "message": "libbrillo: Add GetDaemonPathForTemporaryUserHome to cryptohome utilities\n\nSimilar to GetDaemonPath, GetDaemonPathForTemporaryUserHome returns\nthe directory where the passed daemon should store its data for a\ntemporary user home mount.\n\nBUG\u003dchromium:722371\nTEST\u003dTests still pass, actual functionality tested by CL\nhttps://chromium-review.googlesource.com/c/562158/\n\nChange-Id: I06efeed13bc611bab9baa542de47d9f7112e792e\nReviewed-on: https://chromium-review.googlesource.com/562277\nCommit-Ready: Pavol Marko \u003cpmarko@chromium.org\u003e\nTested-by: Pavol Marko \u003cpmarko@chromium.org\u003e\nReviewed-by: Dan Erat \u003cderat@chromium.org\u003e\n"
    },
    {
      "commit": "070af5efe6be713dc10310405c3951939fda828a",
      "tree": "cdf674e93655aba9495971675cc2f93049c8c901",
      "parents": [
        "7a0a61f2e3ae80b7edd5e774b8b3318f81e7c3c6"
      ],
      "author": {
        "name": "Ben Chan",
        "email": "benchan@chromium.org",
        "time": "Sat Jul 01 00:03:45 2017"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Thu Jul 06 08:33:12 2017"
      },
      "message": "Remove brillo::make_unique_ptr.\n\nbase::MakeUnique mimics std::make_unique and is preferred over\nbrillo::make_unique_ptr (which is identical to base::WrapUnique).\nDependents of brillo::make_unique_ptr have been migrated to use\nbase::MakeUnique and base::WrapUnique. This CL removes\nbrillo::make_unique_ptr from libbrillo.\n\nBUG\u003dchromium:704644\nTEST\u003dRun unit tests.\n\nChange-Id: I8e034988149f465e12114d4568367022f1e21d6d\nReviewed-on: https://chromium-review.googlesource.com/558379\nCommit-Ready: Ben Chan \u003cbenchan@chromium.org\u003e\nTested-by: Ben Chan \u003cbenchan@chromium.org\u003e\nReviewed-by: Dan Erat \u003cderat@chromium.org\u003e\nReviewed-by: Mike Frysinger \u003cvapier@chromium.org\u003e\n"
    },
    {
      "commit": "7a0a61f2e3ae80b7edd5e774b8b3318f81e7c3c6",
      "tree": "f91033fc40538a548bff24baf3bf75f1f776abc1",
      "parents": [
        "d710b3bbaf7a8253830cbe9d2e720ac8bde16251"
      ],
      "author": {
        "name": "Vincent Palatin",
        "email": "vpalatin@chromium.org",
        "time": "Mon Jun 26 13:42:21 2017"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Wed Jun 28 10:09:46 2017"
      },
      "message": "libbrillo: policy: Add GetSecondFactorAuthenticationMode for new device policy\n\nAdd a new helper function and the matching unit-tests for the the new\ndevice_second_factor_authentication device policy/proto used to control\nhow the machine secure element hardware can be used to provide a\nsecond-factor authentication in addition to the TPM functionality.\n\nBUG\u003db:35545754\nTEST\u003d\u0027FEATURES\u003dtest emerge-eve protofiles libbrillo\u0027\nCQ-DEPEND\u003dCL:548356\n\nChange-Id: I9568067a7530c9c0c84142714eb7a67d13e3e45b\nReviewed-on: https://chromium-review.googlesource.com/548559\nCommit-Ready: Vincent Palatin \u003cvpalatin@chromium.org\u003e\nTested-by: Vincent Palatin \u003cvpalatin@chromium.org\u003e\nReviewed-by: Dan Erat \u003cderat@chromium.org\u003e\n"
    },
    {
      "commit": "d710b3bbaf7a8253830cbe9d2e720ac8bde16251",
      "tree": "c8c426ea175cd9cec301a889ec38c16c88666286",
      "parents": [
        "b93979c05d099d54f997720190e5b7b4f84b5366"
      ],
      "author": {
        "name": "Thiemo Nagel",
        "email": "tnagel@chromium.org",
        "time": "Mon May 29 10:32:06 2017"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Wed May 31 19:38:39 2017"
      },
      "message": "libbrillo: Add DevicePolicy::IsEnterpriseManaged()\n\nUse management_mode to determine whether device is managed and only\nfall back to DM token in case the former doesn\u0027t exist.  This is\nrequired to properly support Chromad, but should have no effect on\nother types of management (including local ownership).\n\nBUG\u003dchromium:722799\nTEST\u003dunit tests added\n\nChange-Id: Ifa8bc6bf616dc23eb767c97934fe4cdb77a3451a\nReviewed-on: https://chromium-review.googlesource.com/518045\nCommit-Ready: Thiemo Nagel \u003ctnagel@chromium.org\u003e\nTested-by: Thiemo Nagel \u003ctnagel@chromium.org\u003e\nReviewed-by: Dan Erat \u003cderat@chromium.org\u003e\n"
    },
    {
      "commit": "b93979c05d099d54f997720190e5b7b4f84b5366",
      "tree": "ffd8bdcf77e2b47a205ba3f0ede518600babd826",
      "parents": [
        "d6d6f31b3988e21d0a5b50977ef7befedf339b55"
      ],
      "author": {
        "name": "Eric Caruso",
        "email": "ejcaruso@chromium.org",
        "time": "Tue May 23 18:21:35 2017"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Wed May 24 06:59:25 2017"
      },
      "message": "libbrillo: factor out Properties interface setup\n\nThis code is copy-pasted in the async and sync init functions.\nFactor it out into its own function for brevity.\n\nBUG\u003dNone\nTEST\u003dunit tests\n\nChange-Id: I2c3c4f18df708065bebf77792a9d2d4c85022de4\nReviewed-on: https://chromium-review.googlesource.com/512984\nCommit-Ready: Eric Caruso \u003cejcaruso@chromium.org\u003e\nTested-by: Eric Caruso \u003cejcaruso@chromium.org\u003e\nReviewed-by: Dan Erat \u003cderat@chromium.org\u003e\n"
    },
    {
      "commit": "d6d6f31b3988e21d0a5b50977ef7befedf339b55",
      "tree": "afc644842a5f3afca34a5b2a80ac3087533e3a9c",
      "parents": [
        "fe43ad060c55dbfae08d455765b3f8b3fb030576"
      ],
      "author": {
        "name": "Rahul Chaturvedi",
        "email": "rkc@google.com",
        "time": "Fri Apr 21 22:21:23 2017"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Tue Apr 25 23:32:51 2017"
      },
      "message": "libbrillo: Add functionality to get the app id of a kiosk app.\n\nThis CL adds the functionality to libpolicy to return the ID of the\nauto-launched kiosk app, if one exists in the device policy.\n\nBUG\u003dchromium:707892\nTEST\u003dautomated\n\nChange-Id: Ia8fd1836c288be8a12a7b3fbd2e064e71cd118fe\nReviewed-on: https://chromium-review.googlesource.com/486241\nCommit-Ready: Rahul Chaturvedi \u003crkc@chromium.org\u003e\nTested-by: Rahul Chaturvedi \u003crkc@chromium.org\u003e\nReviewed-by: Rahul Chaturvedi \u003crkc@chromium.org\u003e\n"
    },
    {
      "commit": "fe43ad060c55dbfae08d455765b3f8b3fb030576",
      "tree": "6d6b573efaac14af128d31b9248ce427d5169e1b",
      "parents": [
        "c648bf03b3fa8b05cd381a6a06bdb8b82b0e8a48"
      ],
      "author": {
        "name": "Justin TerAvest",
        "email": "teravest@chromium.org",
        "time": "Tue Apr 25 16:03:39 2017"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Tue Apr 25 23:32:50 2017"
      },
      "message": "libbrillo: Add daemon logging util functions.\n\nThese functions are duplicated today between power_manager and biod in\nChromeOS platform2. I\u0027d like to use these for metrics_daemon as well,\nand copying and pasting these again seemed wrong.\n\nBUG\u003dNone\nTEST\u003dBuilt metrics_daemon using these functions.\n\nChange-Id: I3cd46dc7f1f5543ac3bd4cf24420d468bb13ff98\nReviewed-on: https://chromium-review.googlesource.com/486090\nCommit-Ready: Justin TerAvest \u003cteravest@chromium.org\u003e\nTested-by: Justin TerAvest \u003cteravest@chromium.org\u003e\nReviewed-by: Dan Erat \u003cderat@chromium.org\u003e\n"
    },
    {
      "commit": "c648bf03b3fa8b05cd381a6a06bdb8b82b0e8a48",
      "tree": "ed8018f4913534649529fbb09a4ceec71502f9c9",
      "parents": [
        "e1c1af0a5e6fc82cdfdecbda718db23c0135c66d"
      ],
      "author": {
        "name": "Stephen Barber",
        "email": "smbarber@chromium.org",
        "time": "Thu Apr 13 21:03:41 2017"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Fri Apr 14 06:54:16 2017"
      },
      "message": "libbrillo: make type_name_undecorate_unittest depend on dbus\n\ntype_name_undecorate_unittest fails to build with USE\u003d-dbus due to a transitive\ndependency, so move it to the list of tests that depend on dbus.\n\nIn file included from libbrillo/brillo/type_name_undecorate_unittest.cc:7:\nIn file included from libbrillo/brillo/variant_dictionary.h:11:\nIn file included from libbrillo/brillo/any.h:26:\nIn file included from libbrillo/brillo/any_internal_impl.h:15:\nlibbrillo/brillo/dbus/data_serialization.h:63:10: fatal error: \u0027dbus/message.h\u0027 file not found\n#include \u003cdbus/message.h\u003e\n         ^~~~~~~~~~~~~~~~\n1 error generated.\n\nBUG\u003dnone\nTEST\u003dunittests build with USE\u003d-dbus\n\nChange-Id: I8919781cb0d4b4a9dcfc94988e302e96afbe5ac8\nReviewed-on: https://chromium-review.googlesource.com/477392\nCommit-Ready: Stephen Barber \u003csmbarber@chromium.org\u003e\nTested-by: Stephen Barber \u003csmbarber@chromium.org\u003e\nReviewed-by: Chirantan Ekbote \u003cchirantan@chromium.org\u003e\n"
    },
    {
      "commit": "e1c1af0a5e6fc82cdfdecbda718db23c0135c66d",
      "tree": "46b2c2070710f2a3bc4da26bf373c360fed4e546",
      "parents": [
        "1c8c1f93cff10c5a9b6fe396b6d3b739c2380792"
      ],
      "author": {
        "name": "Chirantan Ekbote",
        "email": "chirantan@chromium.org",
        "time": "Wed Mar 15 01:32:26 2017"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Thu Apr 13 05:41:52 2017"
      },
      "message": "Make dbus code optional\n\nThe dbus code is pretty self-contained and the Android.mk already allows\nyou to skip the dbus library if you don\u0027t want it.  Also make it\noptional in the gyp file based on a USE flag.  The USE flag is set / not\nset with a corresponding change in the ebuild.\n\nBUG\u003dnone\nTEST\u003demerge-$BOARD libbrillo with and without the USE flag set and see\nthat the dbus library is present / not present.\nCQ-DEPEND\u003dCL:455269\n\nChange-Id: Ibfb46ebe400973dad9b3f2e3ac072b27cc86edcb\nSigned-off-by: Chirantan Ekbote \u003cchirantan@chromium.org\u003e\nReviewed-on: https://chromium-review.googlesource.com/455548\nCommit-Ready: Stephen Barber \u003csmbarber@chromium.org\u003e\nReviewed-by: Mike Frysinger \u003cvapier@chromium.org\u003e\n"
    },
    {
      "commit": "1c8c1f93cff10c5a9b6fe396b6d3b739c2380792",
      "tree": "68bf2141dba6a3abfb4a530502bd46ebc1c0ade3",
      "parents": [
        "ed1860174cf5d78821ed6fc9ee0906ce6cdfb300"
      ],
      "author": {
        "name": "Ben Chan",
        "email": "benchan@chromium.org",
        "time": "Tue Feb 07 22:35:38 2017"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Wed Feb 08 06:27:05 2017"
      },
      "message": "libbrillo: migrate usage of deprecated base::Value methods\n\nbase::ListValue::DeepCopy() and base::DictionaryValue::DeepCopy() have\nbeen deprecated and will eventually be removed from libchrome. This CL\nmigrates the usage of these deprecated methods in the libbrillo code to\nthe equivalent base::ListValue::CreateDeepCopy() and\nbase::DictionaryValue::CreateDeepCopy().\n\nBUG\u003dchromium:689697\nTEST\u003dRun unit tests.\n\nChange-Id: If8fa22c5830ffbd885d66bf63e7afaf662fd1ec3\nReviewed-on: https://chromium-review.googlesource.com/438798\nCommit-Ready: Ben Chan \u003cbenchan@chromium.org\u003e\nTested-by: Ben Chan \u003cbenchan@chromium.org\u003e\nReviewed-by: Dan Erat \u003cderat@chromium.org\u003e\n"
    },
    {
      "commit": "ed1860174cf5d78821ed6fc9ee0906ce6cdfb300",
      "tree": "f6f61c931e0d2058266f874283a3a65fa2b50240",
      "parents": [
        "2a5afe35a39f9ca98480da2f8584179e6b62d8fd"
      ],
      "author": {
        "name": "Ben Chan",
        "email": "benchan@chromium.org",
        "time": "Thu Feb 02 20:26:22 2017"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Fri Feb 03 13:15:04 2017"
      },
      "message": "libbrillo: remove invocation of g_type_init()\n\ng_type_init() has been deprecated (and also marked with the attribute\n\u0027deprecated\u0027) since glib 2.36 as the glib type system is now\nautomatically initialized. This CL removes unnecessary invocations of\ng_type_init() and related comments in the code.\n\nBUG\u003dchromium:680616\nCQ-DEPEND\u003dCL:436384\nTEST\u003dRan libbrillo unit tests.\nTEST\u003dVerified that CrOS DBus daemons based on libbrillo worked.\n\nChange-Id: Iac630d3d0b75f47e3d54826bd5ac0bb2e91c79c9\nReviewed-on: https://chromium-review.googlesource.com/436584\nCommit-Ready: Ben Chan \u003cbenchan@chromium.org\u003e\nTested-by: Ben Chan \u003cbenchan@chromium.org\u003e\nReviewed-by: Dan Erat \u003cderat@chromium.org\u003e\n"
    },
    {
      "commit": "2a5afe35a39f9ca98480da2f8584179e6b62d8fd",
      "tree": "7ea4c73b9f1571bb454a550ef75ba5fdd13490c4",
      "parents": [
        "e2743693963e3e5d79bb44951eb9cbc1a99233a1"
      ],
      "author": {
        "name": "Julan Hsu",
        "email": "julanhsu@google.com",
        "time": "Thu Jan 26 18:52:55 2017"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Thu Feb 02 20:29:26 2017"
      },
      "message": "http_transport_curl: add an API to bind IP address\n\nGale mesh child devices change IP address during the GrOOBE setup phase.\nThis causes buffet to lose connection to cloud for sometime. This CL\nallows buffet to bind the curl requests to the new IP address.\n\nBUG\u003db:32510317\nTEST\u003dmanually on gale. Groobe test from App.\nCQ-DEPEND\u003dCL:*322183\n\nChange-Id: I84ac5f92bcad0190a30afc2b547280debc31d8e3\nReviewed-on: https://chromium-review.googlesource.com/433462\nCommit-Ready: Julan Hsu \u003cjulanhsu@google.com\u003e\nTested-by: Julan Hsu \u003cjulanhsu@google.com\u003e\nReviewed-by: Srinivasa duvvuri \u003csduvvuri@chromium.org\u003e\nReviewed-by: Alex Vakulenko \u003cavakulenko@chromium.org\u003e\n"
    },
    {
      "commit": "e2743693963e3e5d79bb44951eb9cbc1a99233a1",
      "tree": "fd3d983b9a5ca86d096d9c168b226ff90ecf6d66",
      "parents": [
        "ce533da748d089c6f1cbd8a0b3b22713a5e229a6"
      ],
      "author": {
        "name": "Manoj Gupta",
        "email": "manojgupta@google.com",
        "time": "Thu Jan 26 09:52:10 2017"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Sat Jan 28 09:52:16 2017"
      },
      "message": "Fix libbrillo warnings to make it build with llvm-next on chromeos.\n\nFix the warnings [-Wunused-lambda-capture] in libbrillo.\n\nBug\u003dchromium:685430\nTEST\u003dlibbrillo compiles\n\nChange-Id: Icb01a91f37b955cdf1e7beb93301951bd8385537\nReviewed-on: https://chromium-review.googlesource.com/433339\nCommit-Ready: Manoj Gupta \u003cmanojgupta@chromium.org\u003e\nTested-by: Manoj Gupta \u003cmanojgupta@chromium.org\u003e\nReviewed-by: Luis Lozano \u003cllozano@chromium.org\u003e\nReviewed-by: Alex Deymo \u003cdeymo@chromium.org\u003e\nReviewed-by: Alex Vakulenko \u003cavakulenko@chromium.org\u003e\n"
    },
    {
      "commit": "ce533da748d089c6f1cbd8a0b3b22713a5e229a6",
      "tree": "66e67b33136448c304027332946864fba3fe0d79",
      "parents": [
        "16c285d16813172eaacd12d3396df90a3894cbc5"
      ],
      "author": {
        "name": "Thiemo Nagel",
        "email": "tnagel@chromium.org",
        "time": "Mon Oct 24 12:53:14 2016"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Sat Oct 29 11:47:22 2016"
      },
      "message": "libbrillo: Add new install attributes library.\n\nBased on that new library, waive signature verification in libpolicy\nwhen verified install attributes device mode is enterprise_ad.\n\nBUG\u003dchromium:658713\nTEST\u003dunittests\nCQ-DEPEND\u003dCL:400820\n\nChange-Id: I650913c6faf48f215cc28b147175d37f0651cb1a\nReviewed-on: https://chromium-review.googlesource.com/402148\nCommit-Ready: Roman Sorokin \u003crsorokin@chromium.org\u003e\nTested-by: Thiemo Nagel \u003ctnagel@chromium.org\u003e\nTested-by: Roman Sorokin \u003crsorokin@chromium.org\u003e\nReviewed-by: Mattias Nissler \u003cmnissler@chromium.org\u003e\nReviewed-by: Roman Sorokin \u003crsorokin@chromium.org\u003e\n"
    },
    {
      "commit": "16c285d16813172eaacd12d3396df90a3894cbc5",
      "tree": "9903be936e3eb7975bd81a59f2406ccba8f82a11",
      "parents": [
        "605f5a1218d61339df2b4a0ddda3ecea402ab856"
      ],
      "author": {
        "name": "Luis Hector Chavez",
        "email": "lhchavez@google.com",
        "time": "Sat May 21 06:07:35 2016"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Thu Jun 23 17:37:16 2016"
      },
      "message": "libbrillo: Update libchrome APIs to r395517\n\nThe new libchrome has been ported from Chromium and some APIs have\nchanged. Make necessary changes at call sites.\n\nBUG: 28985443\nTEST: All tests in libbrillo_test pass on dragonboard-eng build\nCQ-DEPEND\u003dCL:346457\n\nChange-Id: Ie9343893a77b3638e03e89e3090ef61868d43c3b\n(cherry picked from commit 4ec4c4d2e4f8ac46ea8e767c1ed88242811a8f4d)\nReviewed-on: https://chromium-review.googlesource.com/349110\nCommit-Ready: Heng-ruey Hsu \u003chenryhsu@google.com\u003e\nTested-by: Heng-ruey Hsu \u003chenryhsu@google.com\u003e\nReviewed-by: Luis Hector Chavez \u003clhchavez@google.com\u003e\n"
    },
    {
      "commit": "605f5a1218d61339df2b4a0ddda3ecea402ab856",
      "tree": "d4d7ae5b4b6e49f8a54ec2aeaf72846137bb9412",
      "parents": [
        "ed104e9c878bb5e1441a4a10eb00825270f8bd2e"
      ],
      "author": {
        "name": "Alex Deymo",
        "email": "deymo@chromium.org",
        "time": "Thu May 12 19:57:46 2016"
      },
      "committer": {
        "name": "chrome-bot",
        "email": "chrome-bot@chromium.org",
        "time": "Wed May 18 01:35:32 2016"
      },
      "message": "Disable SimpleProcess.BindFdToSameFd test\n\nThis test is flaky in the Chromium OS builders since it fails when a\nfile descriptor number is big enough.\n\nBUG\u003dNone\nTEST\u003dFEATURES\u003dtest emerge-link libbrillo\n\n(cherry picked from commit ae40d5e67c6686d02918ba42686f94d45ac92f86)\n\nChange-Id: If85de274539d379d39f0cb831361432ffd981876\nReviewed-on: https://chromium-review.googlesource.com/344601\nCommit-Ready: Alex Deymo \u003cdeymo@chromium.org\u003e\nTested-by: Alex Deymo \u003cdeymo@chromium.org\u003e\nReviewed-by: Daniel Colish \u003ccolish@chromium.org\u003e\n"
    },
    {
      "commit": "ed104e9c878bb5e1441a4a10eb00825270f8bd2e",
      "tree": "019219b02728d5d4fd96ee85b28b5bf8a55971ec",
      "parents": [
        "8c0f19284a22373b42e16d1422c48988c9ea71dc"
      ],
      "author": {
        "name": "Dan Colish",
        "email": "colish@google.com",
        "time": "Wed Apr 27 17:09:21 2016"
      },
      "committer": {
        "name": "Dan Colish",
        "email": "colish@google.com",
        "time": "Wed Apr 27 20:19:45 2016"
      },
      "message": "libbrillo: Add curl_multi_perform, curl_multi_wait wrappers.\n\nThese methods allow polling of multi handle when there is not a managed\nsocket in the application driving the handle. This is useful for\ntransfering memory only payloads.\n\nBUG: None\nTEST\u003demerge\n\nChange-Id: I2be2de7ae3bd5dbfd81a1eccbc3da60a19e7a3a6\n"
    },
    {
      "commit": "8c0f19284a22373b42e16d1422c48988c9ea71dc",
      "tree": "ecfdbf1063411f0d090baf5c1c170d46af931c76",
      "parents": [
        "476d59a8142cd756de99f8811124ea00f333eafc"
      ],
      "author": {
        "name": "Alex Vakulenko",
        "email": "avakulenko@google.com",
        "time": "Fri Apr 08 15:56:24 2016"
      },
      "committer": {
        "name": "Alex Vakulenko",
        "email": "avakulenko@google.com",
        "time": "Fri Apr 08 16:59:24 2016"
      },
      "message": "libbrillo: Remove release/aquire semantic from scoped_ptr/unique_ptr\n\nNow that scoped_ptr is just a type alias to unique_ptr, there is no\nlonger a need to convert between the two by using .release() and\nconstructing the other with a raw pointer.\n\nBUG: None\nTEST: Built for dragonboard, all unit tests pass (except for update_engine,\n      but those tests failed before these changes too).\n\nChange-Id: I93819e9243e925ced3a7a221217838af75c4d82c\n"
    },
    {
      "commit": "476d59a8142cd756de99f8811124ea00f333eafc",
      "tree": "44f49ea682b827363c38b8724136cd73b5cbc187",
      "parents": [
        "37827b65c4434124ae79cd3f4dba39cc46aa9e37"
      ],
      "author": {
        "name": "Alex Deymo",
        "email": "deymo@google.com",
        "time": "Wed Mar 30 00:10:10 2016"
      },
      "committer": {
        "name": "Alex Deymo",
        "email": "deymo@google.com",
        "time": "Wed Mar 30 22:52:02 2016"
      },
      "message": "Fix Process::BindFd when passing the same fd to the child.\n\nProcess::BindFd() allows to map a file descriptor in the parent to a\nfile descriptor in the child. This was normally used to redirect the\nchild\u0027s stdout or stderr to a given file descriptor in the parent, like\nan open file or a pipe. This didn\u0027t work when binding a file descriptor\nin the parent to the same number in the child, used for example to make\navailable to the child a file descriptor opened in the parent, but\nclose all the other file descriptors with SetCloseUnusedFileDescriptors.\n\nBug: 27880754\nTEST\u003dAdded unittests for that case.\n\nChange-Id: I5e4545936a36d7d6eaa0f7b68c6033b3ce6182da\n"
    },
    {
      "commit": "37827b65c4434124ae79cd3f4dba39cc46aa9e37",
      "tree": "cf6cdd508aadb557b00a6b88521ac53f87551880",
      "parents": [
        "0274f77475e79545f318abd1c28fedaf269f095c"
      ],
      "author": {
        "name": "Alex Deymo",
        "email": "deymo@google.com",
        "time": "Tue Mar 29 22:56:29 2016"
      },
      "committer": {
        "name": "Alex Deymo",
        "email": "deymo@google.com",
        "time": "Wed Mar 30 22:51:33 2016"
      },
      "message": "Export brillo unittest_utils in the libbrillo-test module.\n\nThis module contains simple classes that can be usefull when writting\nunittests in other projects.\n\nBug: None\nTEST\u003dmmma external/libbrillo; Used it from update_engine_unittests.\n\nChange-Id: I4b5e576854c1a98a73c3581065a6cc35926f5db0\n"
    },
    {
      "commit": "0274f77475e79545f318abd1c28fedaf269f095c",
      "tree": "bdfe0395504161c896959c473a7462465691f72a",
      "parents": [
        "f151b2be0e50d44871444598fd910d3710eb5bee"
      ],
      "author": {
        "name": "Timothy Jennison",
        "email": "tjennison@google.com",
        "time": "Fri Mar 18 16:24:34 2016"
      },
      "committer": {
        "name": "Alex Vakulenko",
        "email": "avakulenko@google.com",
        "time": "Wed Mar 23 18:51:49 2016"
      },
      "message": "brillo: handle arrays of string maps in dbus serialization\n\nBug: 26778228\nTEST\u003dcompiles on chromeos, manual testing of dbus serialization\n\nChange-Id: I3876c4f0263add5d06732af2dc0c05d1b9f4dd54\n"
    },
    {
      "commit": "f151b2be0e50d44871444598fd910d3710eb5bee",
      "tree": "4dddb45794f5bae4e6fa56974956fee9e3603055",
      "parents": [
        "c90f92364e42ccd196574ddcbb4d0b252880a1b5"
      ],
      "author": {
        "name": "Alex Vakulenko",
        "email": "avakulenko@google.com",
        "time": "Fri Mar 18 15:32:07 2016"
      },
      "committer": {
        "name": "Alex Vakulenko",
        "email": "avakulenko@google.com",
        "time": "Fri Mar 18 22:36:20 2016"
      },
      "message": "libbrillo: Update Chrome OS gyp files to refer to new libchrome revision\n\nlibchrome has been updated to r381699, so update references to the\nnew revision number to libbrillo.\n\nAlso minor fixes to make it compile with the new libchrome.\n\nChange-Id: I7bd0fad9a33955c61ed99b0271f76a207bbd5055\n"
    },
    {
      "commit": "c90f92364e42ccd196574ddcbb4d0b252880a1b5",
      "tree": "acbd49e94127829b6db71c0a397c748c1c20d985",
      "parents": [
        "b5011d0ef197981f84e75d34b14e87f9dcdd3f85"
      ],
      "author": {
        "name": "Alex Deymo",
        "email": "deymo@google.com",
        "time": "Thu Mar 17 21:58:05 2016"
      },
      "committer": {
        "name": "Alex Deymo",
        "email": "deymo@google.com",
        "time": "Thu Mar 17 21:59:30 2016"
      },
      "message": "Use PLOG() to log the error message in process.cc\n\nBug: None\nTEST\u003dError log shows the error string instead of the number.\n\nChange-Id: I47e07755b9bb88fbd8c7cb5f80e4c39de44abd97\n"
    },
    {
      "commit": "b5011d0ef197981f84e75d34b14e87f9dcdd3f85",
      "tree": "ed9d9786d8a79c373015e6b1bc83281f99496ede",
      "parents": [
        "31dae171b3ce58d168e91294c3daca70198ba732"
      ],
      "author": {
        "name": "Vincent Palatin",
        "email": "vpalatin@google.com",
        "time": "Tue Mar 15 20:07:33 2016"
      },
      "committer": {
        "name": "Vincent Palatin",
        "email": "vpalatin@google.com",
        "time": "Tue Mar 15 20:07:33 2016"
      },
      "message": "libbrillo: policy: fix libpolicy unittest\n\nThe chrome_device_policy.proto numbering has changed between when CL 31dae17\nwas written/tested and when it was submitted.\nUpdate the policy_all file with the correct proto numbers, in order to get\nPolicyTest.DevicePolicyAllSetTest to pass again.\n\nBUG\u003dchrome-os-partner:50249\nTEST\u003d`FEATURES\u003dtest emerge-samus libbrillo`\n\nChange-Id: I7b3a89e4355c4e4ed48301413e3f162c7fbc158d\n"
    },
    {
      "commit": "31dae171b3ce58d168e91294c3daca70198ba732",
      "tree": "07c917f39b9ffe943f0a3e402b2a729203be7687",
      "parents": [
        "59a597a4c5322bce1dfc9925f3d5b9d4c3831866"
      ],
      "author": {
        "name": "Vincent Palatin",
        "email": "vpalatin@google.com",
        "time": "Thu Feb 18 17:46:55 2016"
      },
      "committer": {
        "name": "Vincent Palatin",
        "email": "vpalatin@google.com",
        "time": "Wed Feb 24 18:50:40 2016"
      },
      "message": "libbrillo: policy: Add GetUsbDetachableWhitelist for new USB policy\n\nThe newly added device policy setting |usb_detachable_whitelist| contains\na list of USB devices (identified by their USB VID:PID pairs) which can be\ndetached from the kernel drivers in order to use them in web application.\nAdd a GetUsbDetachableWhitelist method to retrieve this list of devices.\n(as used by the permission_broker daemon)\n\nThe policy_all file was updated to include a usb_detachable_whitelist\npolicy with a couple of USB devices with VID:PID 0403:6001 and\n413c:2105.\n\nBUG\u003dchrome-os-partner:50249\nTEST\u003d`FEATURES\u003dtest emerge-samus libbrillo permission_broker`\n\nChange-Id: If4b06a85ab0b9641e615692449d434e41bd457e6\n"
    },
    {
      "commit": "59a597a4c5322bce1dfc9925f3d5b9d4c3831866",
      "tree": "84f686cf40bc53f4000493a19eac3c43ae59e4bd",
      "parents": [
        "ef47c404abf9c2e482c2381d991f45ca23d62bee"
      ],
      "author": {
        "name": "Alex Deymo",
        "email": "deymo@google.com",
        "time": "Tue Feb 16 22:37:49 2016"
      },
      "committer": {
        "name": "Alex Deymo",
        "email": "deymo@google.com",
        "time": "Tue Feb 16 22:42:37 2016"
      },
      "message": "Add .clang-format symlink to Brillo\u0027s clang-format.\n\nBug: 27121653\nTEST\u003dRan clang-format.\n\nChange-Id: Ic367c3bcbf6db158963b6f8652039b23c9de0279\n"
    },
    {
      "commit": "ef47c404abf9c2e482c2381d991f45ca23d62bee",
      "tree": "428f86ba48fcc4f04cfb63e90a60e0385b8e03bf",
      "parents": [
        "b2f006fbe5e66bfb135383b6d72b441934913b83"
      ],
      "author": {
        "name": "Alex Deymo",
        "email": "deymo@google.com",
        "time": "Tue Feb 16 20:45:49 2016"
      },
      "committer": {
        "name": "Alex Deymo",
        "email": "deymo@google.com",
        "time": "Tue Feb 16 20:52:49 2016"
      },
      "message": "Call MessageLoop::current() to detect if a message loop was created.\n\nMessageLoopForIO::current() and MessageLoop::current() are very similar\nfunctions, except that the former will crash when no message loop was\ncreated *and* we are compiling with debug check due to a pointer\ndereference in a DCHECK(). While we can make this failure explicit in\nlibchrome, this patch avoids the issue by calling\nMessageLoop::current() instead.\n\nBug: None\nTEST\u003dFEATURES\u003dtest emerge-link libbrillo metrics\n\nChange-Id: I5f446ac55b6459d460fffdc47316cdf2c588c1d8\n"
    },
    {
      "commit": "b2f006fbe5e66bfb135383b6d72b441934913b83",
      "tree": "8dceaf76bd8cd79c8c84828652fa324437571b95",
      "parents": [
        "922d235dca34496fd30e1b15b2bf24b4a6949288"
      ],
      "author": {
        "name": "Xiyuan Xia",
        "email": "xiyuan@google.com",
        "time": "Thu Feb 04 16:55:21 2016"
      },
      "committer": {
        "name": "Xiyuan Xia",
        "email": "xiyuan@google.com",
        "time": "Thu Feb 11 18:23:06 2016"
      },
      "message": "policy: Expose allow_kiosk_app_control_chrome_version policy\n\nExpose allow_kiosk_app_control_chrome_version policy. Kiosk apps\ncan declare a \"required_platform_version\" manifest key. The policy\ncontrols whether the value of the key should be used.  When the\npolicy is set to true, the value is used as target version prefix\nin the AU ping. When the policy is not configured or set to false,\nthe manifest key is ignored and AU works as normal. The policy\ndefaults to false.\n\nBUG\u003dchromium:577765\nTEST\u003dlibpolicy_unittest\n\nChange-Id: I8889f27497e806cdc71e7da743474d402a89efd5\n"
    },
    {
      "commit": "922d235dca34496fd30e1b15b2bf24b4a6949288",
      "tree": "8793839ae529127e15b0bfef7f69688b07e4b71a",
      "parents": [
        "ba882304e0dee418bb05fa19b6cf8c30cecb59d0"
      ],
      "author": {
        "name": "Alex Deymo",
        "email": "deymo@google.com",
        "time": "Tue Feb 09 00:33:07 2016"
      },
      "committer": {
        "name": "Alex Deymo",
        "email": "deymo@google.com",
        "time": "Tue Feb 09 23:44:58 2016"
      },
      "message": "Drop the required base::MessageLoopForIO when creating a BaseMessageLoop.\n\nThis patch adds a new default constructor to brillo::BaseMessageLoop\ndropping the requirement to create and pass a base::MessageLoopForIO.\nInstead, the default constructor will create and keep its own copy.\n\nBug: 26987669\nTEST\u003d`m` on edison-eng\n\nChange-Id: Ibd8a1d98cbbc1cc1d39f5e90412902edd6840a45\n"
    },
    {
      "commit": "ba882304e0dee418bb05fa19b6cf8c30cecb59d0",
      "tree": "c1c06906eceed5752ef7e3479a0752541a429d81",
      "parents": [
        "2a6e3f7c9dfe0ed3c3be143d97588ac8ea9c898a"
      ],
      "author": {
        "name": "Alex Deymo",
        "email": "deymo@google.com",
        "time": "Thu Feb 04 01:16:57 2016"
      },
      "committer": {
        "name": "Alex Deymo",
        "email": "deymo@google.com",
        "time": "Thu Feb 04 23:38:54 2016"
      },
      "message": "Make BinderWatcher use brillo::MessageLoop.\n\nThis patch breaks the dependency between the BinderWatcher and the\nbase::MessageLoopForIO implementation, making it use the\nbrillo::MessageLoop class instead.\n\nBug: 26356682\nTEST\u003dBinder based `update_engine_client` still works.\n\nChange-Id: I46a8a9c8d00d536c2d54889017f109c581eb0bc7\n"
    },
    {
      "commit": "2a6e3f7c9dfe0ed3c3be143d97588ac8ea9c898a",
      "tree": "73e1f4cfb348d1e648c171ba475b75bb6b5b0fc4",
      "parents": [
        "dd1c7d7bd4362917884f5871f9dedb8428652338"
      ],
      "author": {
        "name": "Jorge Lucangeli Obes",
        "email": "jorgelo@google.com",
        "time": "Thu Feb 04 22:03:17 2016"
      },
      "committer": {
        "name": "Jorge Lucangeli Obes",
        "email": "jorgelo@google.com",
        "time": "Thu Feb 04 22:03:44 2016"
      },
      "message": "libbrillo_test: Compile only on \u0027eng\u0027 builds.\n\nBug: 26967770\nChange-Id: Ic35850cbf1672fc69310b0da64557dbc9a1d9e51\n"
    },
    {
      "commit": "dd1c7d7bd4362917884f5871f9dedb8428652338",
      "tree": "cc542e296e6189f26a2def069c096be4c59c24fc",
      "parents": [
        "b2e83208f8e974ad7ee726332fd471c8852057a3"
      ],
      "author": {
        "name": "Alex Deymo",
        "email": "deymo@google.com",
        "time": "Tue Feb 02 05:05:57 2016"
      },
      "committer": {
        "name": "Alex Deymo",
        "email": "deymo@google.com",
        "time": "Tue Feb 02 05:05:57 2016"
      },
      "message": "policy: Fix unittests.\n\nPrevious CL deprecating some policy fields missed fixes in the\nunit tests.\n\nBug: None\nTEST\u003dFEATURES\u003dtest emerge-link libbrillo\n\nChange-Id: I6212e9ef27c2cdd99a4209ff062a6e2e6885246d\n"
    },
    {
      "commit": "b2e83208f8e974ad7ee726332fd471c8852057a3",
      "tree": "62f9c23c11a62653441cd1aa3f4fe9a67712fb32",
      "parents": [
        "b57ecfa6fbbb44522b404b13fe1e364366d5ba74"
      ],
      "author": {
        "name": "Xiyuan Xia",
        "email": "xiyuan@google.com",
        "time": "Thu Jan 28 23:44:57 2016"
      },
      "committer": {
        "name": "Xiyuan Xia",
        "email": "xiyuan@google.com",
        "time": "Fri Jan 29 22:29:18 2016"
      },
      "message": "Remove deprecated policy DeviceProxySettingsProto\n\nBUG\u003dchromium:442466\nTEST\u003dnone\n\nChange-Id: I39f474bc5a53f0a9b199ea557924726bb988e58a\n"
    },
    {
      "commit": "b57ecfa6fbbb44522b404b13fe1e364366d5ba74",
      "tree": "3e5d469764697c79d5e53758851a29b8d8bab1f4",
      "parents": [
        "eb350bccd25b686cd669f54ca0abbcd595557a3e"
      ],
      "author": {
        "name": "Alex Vakulenko",
        "email": "avakulenko@google.com",
        "time": "Thu Jan 28 22:41:20 2016"
      },
      "committer": {
        "name": "Alex Vakulenko",
        "email": "avakulenko@google.com",
        "time": "Thu Jan 28 22:48:39 2016"
      },
      "message": "libbrillo: Add base::Value conversion functions\n\nThis makes using base::Value less painful of an experience.\n\nBUG: 26558300\nChange-Id: I6e202b863e049f33643c6547f9710991f2c56240\n"
    },
    {
      "commit": "eb350bccd25b686cd669f54ca0abbcd595557a3e",
      "tree": "5e7e38e19c985dd8493e5ee2fbfc2d7a7fa94da1",
      "parents": [
        "b137dc9b98e6200ed955ab1290df711a4b2c144a"
      ],
      "author": {
        "name": "Darren Krahn",
        "email": "dkrahn@google.com",
        "time": "Sat Dec 12 01:02:34 2015"
      },
      "committer": {
        "name": "Darren Krahn",
        "email": "dkrahn@google.com",
        "time": "Tue Jan 26 03:31:26 2016"
      },
      "message": "Add userdb_utils.\n\nBUG\u003d25746269\n\nChange-Id: Idfc0e0f83c3ad0724bff01765ee7ae62045f2a30\n"
    },
    {
      "commit": "b137dc9b98e6200ed955ab1290df711a4b2c144a",
      "tree": "1e7301898363f1b469ef81f667689b66db6e9271",
      "parents": [
        "2a25190ea741023a3753e7f381a8a2b1465c43c1"
      ],
      "author": {
        "name": "Alex Deymo",
        "email": "deymo@google.com",
        "time": "Fri Jan 22 04:47:11 2016"
      },
      "committer": {
        "name": "Alex Deymo",
        "email": "deymo@google.com",
        "time": "Fri Jan 22 04:47:11 2016"
      },
      "message": "Set default USE flags values as local variables.\n\nSetting variables such as BRILLO_USE_FOO can leak to other makefiles,\nso the local default value set by another project can affect the\ndefault behavior. This patch defines local variables with the local\ndefault value for the USE flags.\n\nBug: None\nTEST\u003dmmma external/libbrillo\n\nChange-Id: Iefca0c4de48d7bd09d41b06ca18f1c95716f6fce\n"
    },
    {
      "commit": "2a25190ea741023a3753e7f381a8a2b1465c43c1",
      "tree": "03b3f32aead9095c2b8e07997a947c57d72d90b2",
      "parents": [
        "037abdbfc6e180b0db2624c958000ea9388516c0"
      ],
      "author": {
        "name": "Alex Deymo",
        "email": "deymo@google.com",
        "time": "Thu Jan 21 01:04:51 2016"
      },
      "committer": {
        "name": "Alex Deymo",
        "email": "deymo@google.com",
        "time": "Thu Jan 21 22:58:16 2016"
      },
      "message": "Add DBusConnection helper class to use instead of DBusDaemon.\n\nThis CL moves the logic in DBusDaemon to a helper class that can be\nincluded in another class inheriting from Daemon without needed to use\nmultiple inheritance nor forcing a DBus connection to succeed.\nDBusDaemon was modified to re-use this class without changing its\nbehaviour to be compatible with existing code.\n\nBug: 26690086\nTEST\u003dmm; Update update_engine to use this class and tested it on edison.\n\nChange-Id: If05a5582158552b6aeebf86dbde2aaa161f5a29f\n"
    },
    {
      "commit": "037abdbfc6e180b0db2624c958000ea9388516c0",
      "tree": "4ca3b87844a972c3c457caaaa084b788a9f9dd2b",
      "parents": [
        "80b7ee94e36e2d25a97a262d3b558bbf130c2a01"
      ],
      "author": {
        "name": "Alex Vakulenko",
        "email": "avakulenko@google.com",
        "time": "Wed Jan 20 23:37:02 2016"
      },
      "committer": {
        "name": "Alex Vakulenko",
        "email": "avakulenko@google.com",
        "time": "Wed Jan 20 23:37:02 2016"
      },
      "message": "libbrillo: Update BASE_VERS to 369476\n\nThis is needed to uprev everything on ChromeOS side.\n\nChange-Id: Ibc67cea6d3d64825db24cb0a9f2fcae0e1399298\n"
    },
    {
      "commit": "80b7ee94e36e2d25a97a262d3b558bbf130c2a01",
      "tree": "eca0962a89677999c64e0362789da44fbdedea35",
      "parents": [
        "77edc5357e1ff2c507a07d4c97f943910609ee44"
      ],
      "author": {
        "name": "Alex Vakulenko",
        "email": "avakulenko@google.com",
        "time": "Wed Jan 20 15:51:11 2016"
      },
      "committer": {
        "name": "Alex Vakulenko",
        "email": "avakulenko@google.com",
        "time": "Wed Jan 20 17:06:29 2016"
      },
      "message": "libbrillo: Update libchrome APIs to r369476\n\nThe new libchrome has been ported from Chromium and some APIs have\nchanged. Make necessary changes at call sites.\n\nChange-Id: If39615b805ec50b9487b6327702c4cdbbd21b7ee\n"
    },
    {
      "commit": "77edc5357e1ff2c507a07d4c97f943910609ee44",
      "tree": "d7333405c45a0a0faf3a4de5be107202e7407b14",
      "parents": [
        "d671746a66d87edf9598cfbe077b3430e50a09d3"
      ],
      "author": {
        "name": "Alex Deymo",
        "email": "deymo@google.com",
        "time": "Wed Jan 20 01:59:14 2016"
      },
      "committer": {
        "name": "Alex Deymo",
        "email": "deymo@google.com",
        "time": "Wed Jan 20 01:59:14 2016"
      },
      "message": "Disable binder detection for the host.\n\nWhen building for the host, disable the binder file descriptor\ndetection workaround since we don\u0027t use binder on the host and the\nrequired modules are not always available.\n\nBug: None\nTEST\u003d`mmma external/libbrillo` on linux and mac.\n\nChange-Id: I36e2786ff036bc3cd01780ae50c242baf407a0a8\n"
    },
    {
      "commit": "d671746a66d87edf9598cfbe077b3430e50a09d3",
      "tree": "6e86a87909732122850f65473055c8b75dbe6344",
      "parents": [
        "27f8f9440e012927c1ff2831da1a0d7478559c5c"
      ],
      "author": {
        "name": "Alex Deymo",
        "email": "deymo@google.com",
        "time": "Thu Jan 14 18:50:16 2016"
      },
      "committer": {
        "name": "Alex Deymo",
        "email": "deymo@google.com",
        "time": "Tue Jan 19 19:57:51 2016"
      },
      "message": "Don\u0027t delete and add the binder fd in BaseMessageLoop.\n\nThe binder driver polling mechanism doesn\u0027t work well with epoll. In\nparticular, you can\u0027t add the binder file descriptor to epoll (with\nEPOLL_CTL_ADD) when there\u0027s work to do in the binder driver, then\nwait for it when there isn\u0027t any more work to do.\n\nTo avoid this situation, we only add the binder file descriptor at the\nbeginning and never try to remove and add it back when running\ncallbacks for it.\n\nBug: 26524111\nTEST\u003dunittests for parsing.\nTEST\u003dTested with an example service, strace shows the binder fd is not added/removed each time.\n\nChange-Id: I11d6af5593fa78631f80e9ba09d933f4b8ef70df\n"
    },
    {
      "commit": "27f8f9440e012927c1ff2831da1a0d7478559c5c",
      "tree": "d1a9a7eee79ca5289d44ef8a17175f03d7d97566",
      "parents": [
        "f68e898423cfeeb6fc5efdd2af2a9b2d19a9d2ff"
      ],
      "author": {
        "name": "Alex Deymo",
        "email": "deymo@google.com",
        "time": "Wed Jan 06 19:54:03 2016"
      },
      "committer": {
        "name": "Alex Deymo",
        "email": "deymo@google.com",
        "time": "Wed Jan 06 19:54:03 2016"
      },
      "message": "Disable TypeTag tests when USE_RTTI_FOR_TYPE_TAGS is defined.\n\nTests using tags from the __PRETTY_FUNCTION__ don\u0027t work when using\nRTTI to get the type name since the format is different.\n\nThis CL disables those tests as they check the proper parsing of a\nfunction not used when USE_RTTI_FOR_TYPE_TAGS is defined.\n\nBug: 26292405\nTEST\u003dFEATURES\u003dtest emerge-link libbrillog\n\nChange-Id: I7c3383359bc16faebd493f3da003663916be390d\n"
    },
    {
      "commit": "f68e898423cfeeb6fc5efdd2af2a9b2d19a9d2ff",
      "tree": "37243e23a83916454143889d66db700fac23dbb9",
      "parents": [
        "4d8501c1f9689c833d38c9087df28b971a6ebe42"
      ],
      "author": {
        "name": "Alex Deymo",
        "email": "deymo@google.com",
        "time": "Wed Jan 06 05:20:10 2016"
      },
      "committer": {
        "name": "Alex Deymo",
        "email": "deymo@google.com",
        "time": "Wed Jan 06 05:20:10 2016"
      },
      "message": "Enable USE_RTTI_FOR_TYPE_TAGS in Chrome OS.\n\nChrome OS doesn\u0027t compile with clang by default, so we need to enable\nthis define and use rtti information.\n\nBug: None\nTEST\u003demerge-link libbrillo update_engine\n\nChange-Id: I258813f483cf37914b7631a45a05b5acbb3c144c\n"
    },
    {
      "commit": "4d8501c1f9689c833d38c9087df28b971a6ebe42",
      "tree": "02dc0e9696579855b42296d94aaee90f1ea896f1",
      "parents": [
        "2fd46ba1458275cd16b0949675bff70cc8abcdad"
      ],
      "author": {
        "name": "Alex Vakulenko",
        "email": "avakulenko@google.com",
        "time": "Mon Dec 21 20:05:41 2015"
      },
      "committer": {
        "name": "Alex Vakulenko",
        "email": "avakulenko@google.com",
        "time": "Mon Jan 04 19:12:48 2016"
      },
      "message": "libbrillo: Remove RTTI from the library\n\nThe main reason why we needed run-time type information is so that\nwe can get a type name string for a particular type T. This string\nwas used in type comparisons in brillo::Any as the only reliable way\nof determining if two Any instances have values of the same type.\n\nFor this typeid(T).name() was used which requires RTTI to be enabled.\n\nHowever using RTTI causes issues when linking to libraries with RTTI\ndisabled. To resolve this issue, stop relying on RTTI in libbrillo\nand throughout the rest of Brillo code.\n\nA special work-around was implemented to obtain a type name for\na given type, which relies on the fact that __PRETTY_FUNCTION__ macro\non GCC/clang includes the full signature of a method, including any\ntemplate parameters.\n\nFor example, brillo::GetTypeTag\u003cdouble\u003e() would return\n\n  const char *brillo::GetTypeTag() [T \u003d double]\n\nand extracting the type name (\"double\") is just a matter of simple\nstring manipulations.\n\nTo speed up the code at run-time, we don\u0027t really need to extract\nthe type name from this function name when comparing two types, but\nrather compare the two function names directly. This function name\nwith embedded type is called \"type tag\" in the code.\n\nUnfortunately GCC and CLANG handle __PRETTY_FUNCTION__ differently\nfor certain template types, so added #error statement to force\ncompiling using clang only (since this is the compiler used most\noften for Brillo targets).\n\nBUG: 26292405\nChange-Id: Ie70012b62f66911ee7787e5cf7eeab88359bd959\n"
    },
    {
      "commit": "2fd46ba1458275cd16b0949675bff70cc8abcdad",
      "tree": "ea8b5c0f5114a86f0bfa53cc00deb292bee5772d",
      "parents": [
        "d6720ce258a19c08fd2cfe6ea61b5eeefcfb9582"
      ],
      "author": {
        "name": "Christopher Wiley",
        "email": "wiley@google.com",
        "time": "Mon Jan 04 16:59:09 2016"
      },
      "committer": {
        "name": "Christopher Wiley",
        "email": "wiley@google.com",
        "time": "Mon Jan 04 17:17:51 2016"
      },
      "message": "Fix compiler warnings in libbrillo\n\nBug: 26379664\nTest: Compiles\n\nChange-Id: I67658ba9ceb8b769c97f0c345f7711bc96d27a84\n"
    },
    {
      "commit": "d6720ce258a19c08fd2cfe6ea61b5eeefcfb9582",
      "tree": "170f773957a8c6e5d57e8ff2a5c3fa1055774133",
      "parents": [
        "7a8c2c1f3b25446cec0e7e897f74c9769f4fb6be"
      ],
      "author": {
        "name": "Samuel Tan",
        "email": "samueltan@google.com",
        "time": "Mon Dec 14 22:49:09 2015"
      },
      "committer": {
        "name": "Samuel Tan",
        "email": "samueltan@google.com",
        "time": "Fri Dec 18 22:28:48 2015"
      },
      "message": "libbrillo: extend Process API to support sandboxing\n\nExtend the brillo::Process API to support some sandboxing\noptions.\n\nBUG: 26190154\nChange-Id: I6d657ee2afda20d18d6286b132c9143dce0ffc9d\n"
    },
    {
      "commit": "7a8c2c1f3b25446cec0e7e897f74c9769f4fb6be",
      "tree": "ba7a2c16fad611f6d0dec76c9371d0b74e72b4af",
      "parents": [
        "21cfdb8e751c4d24d7d274dd48946eb0112006ad"
      ],
      "author": {
        "name": "Peter Qiu",
        "email": "zqiu@google.com",
        "time": "Wed Dec 16 23:30:45 2015"
      },
      "committer": {
        "name": "Peter Qiu",
        "email": "zqiu@google.com",
        "time": "Wed Dec 16 23:30:45 2015"
      },
      "message": "minijail: add support for resetting child process\u0027s signal mask\n\nThis allows the caller to specify whether the child process\nshould reset its signal mask or not.\n\nBug: None\nBUG\u003dchrome-os-partner:47785\nTEST\u003dManual test using shill\n\nChange-Id: I584c4790fc402624345b39fb6fa78308d6897c85\n"
    },
    {
      "commit": "21cfdb8e751c4d24d7d274dd48946eb0112006ad",
      "tree": "5cca22e4567c57a769e3e7a44fe03402de1c6ef6",
      "parents": [
        "88a74f9b14726d6192b69fe64bb8dd6301b6125e"
      ],
      "author": {
        "name": "Bertrand SIMONNET",
        "email": "bsimonnet@google.com",
        "time": "Mon Dec 14 23:55:49 2015"
      },
      "committer": {
        "name": "Bertrand SIMONNET",
        "email": "bsimonnet@google.com",
        "time": "Mon Dec 14 23:58:23 2015"
      },
      "message": "libbrillo: Fix unit tests.\n\nWe are using stat in the unit tests which is available under two\ndifferent path on Chromium OS (/usr/bin/stat) and Android\n(/system/bin/stat).\n\nBug: 26181888\nTest: unit tests pass on Android.\nTest: unit tests pass on Chromium OS.\n\nChange-Id: I9374e1d8b962b7cf310bbba15adab9d99804c5a5\n"
    },
    {
      "commit": "88a74f9b14726d6192b69fe64bb8dd6301b6125e",
      "tree": "d9fa9c5e9d14050af3bdd5fff448b70cea42fad3",
      "parents": [
        "992e42977bb39c34360e5224a85115a1a9f834dc"
      ],
      "author": {
        "name": "Samuel Tan",
        "email": "samueltan@google.com",
        "time": "Mon Dec 14 22:24:24 2015"
      },
      "committer": {
        "name": "Samuel Tan",
        "email": "samueltan@google.com",
        "time": "Mon Dec 14 22:24:24 2015"
      },
      "message": "libbrillo: add brillo/unittest_utils to Android.mk\n\nAdd brillo/unittest_utils.mk so that process_unittest.cc can\nbe built on Android builds.\n\nBUG: None\nChange-Id: I3f84c8d30dd5953dbdefd41ebd72615a2ae84651\nTEST: \u0027mma -j32\u0027 in external/libbrillo succeeds.\n"
    },
    {
      "commit": "992e42977bb39c34360e5224a85115a1a9f834dc",
      "tree": "a082519d722f234211b4825e9a292ddc7a573c30",
      "parents": [
        "866e2e53338b17e8a3f646c85174437c75ec568f"
      ],
      "author": {
        "name": "Alex Deymo",
        "email": "deymo@google.com",
        "time": "Sat Dec 12 03:42:09 2015"
      },
      "committer": {
        "name": "Alex Deymo",
        "email": "deymo@google.com",
        "time": "Sat Dec 12 03:42:09 2015"
      },
      "message": "Fix Process unittests.\n\nThe unused file descriptor tests were flaky because they had a 10ms\nsleep were the child process was supposed to run. While 10ms is\ntypically enough for that, our builders run at a high load at 10ms\ncould not be enough.\n\nThis patch uses a different approach to test the same behavior by\nchecking if the file descriptors are available from the same child\nprocess. It also fixes a fd leak by used a ScopedPipe.\n\nBug: None\nTEST\u003dFEATURES\u003dtest emerge-link libbrillo\n\nChange-Id: I53d529c5dbebbfa1af4cc858d76a200d3344d3ff\n"
    }
  ],
  "next": "866e2e53338b17e8a3f646c85174437c75ec568f"
}
