)]}'
{
  "log": [
    {
      "commit": "39910dcd1d68987ccee7c3031dc269233a8490bb",
      "tree": "b7569d7ff83b001d244eda59bb2efdee9a6f15ec",
      "parents": [
        "82352f97b4621dbf6af8308ff0b0b17b0968b53a"
      ],
      "author": {
        "name": "Alex Deymo",
        "email": "deymo@google.com",
        "time": "Mon Nov 09 17:04:30 2015 -0800"
      },
      "committer": {
        "name": "Alex Deymo",
        "email": "deymo@google.com",
        "time": "Thu Nov 12 02:17:50 2015 +0000"
      },
      "message": "Split payload application code into a subdirectory.\n\nThis patch splits from the main libupdate_engine code the part that\nis strictly used to download and apply a payload into a new static\nlibrary, moving the code to subdirectories. The new library is divided\nin two subdirectories: common/ and payload_consumer/, and should not\ndepend on other update_engine files outside those two subdirectories.\nThe main difference between those two is that the common/ tools are more\ngeneric and not tied to the payload consumer process, but otherwise they\nare both compiled together.\n\nThere are still dependencies from the new libpayload_consumer library\ninto the main directory files and DBus generated files. Those will be\naddressed in follow up CLs.\n\nBug: 25197634\nTest: FEATURES\u003dtest emerge-link update_engine; `mm` on Brillo.\n\nChange-Id: Id8d0204ea573627e6e26ca9ea17b9592ca95bc23\n"
    },
    {
      "commit": "3f39d5cc753905874d8d93bef94f857b8808f19e",
      "tree": "09c75380469065d508a1a59e27e4a4dd5b28763d",
      "parents": [
        "25fbdf83064c78dfb4d9143be25f080ee2c56730"
      ],
      "author": {
        "name": "Alex Vakulenko",
        "email": "avakulenko@google.com",
        "time": "Tue Oct 13 09:27:13 2015 -0700"
      },
      "committer": {
        "name": "Alex Vakulenko",
        "email": "avakulenko@google.com",
        "time": "Tue Oct 13 09:44:07 2015 -0700"
      },
      "message": "update_engine: Rename \"chromeos\" -\u003e \"brillo\" in include paths and namespaces\n\nlibchromeos is transitioning to libbrillo and chromeos namespaces\nand include directory is changing to brillo.\n\nBug: 24872993\nChange-Id: I770659a95be380a50fe3b2ba9f91d65818f40945\n"
    },
    {
      "commit": "aea4c1cea20dda7ae7e85fc8924a2d784f70d806",
      "tree": "a8934ac4c258cf942ecc2423fe94f1458acfa64f",
      "parents": [
        "d2956cc4b5c60d3d670eb7bf0f1ba800c8a16d62"
      ],
      "author": {
        "name": "Alex Deymo",
        "email": "deymo@google.com",
        "time": "Wed Aug 19 20:24:43 2015 -0700"
      },
      "committer": {
        "name": "Alex Deymo",
        "email": "deymo@google.com",
        "time": "Wed Aug 19 20:24:43 2015 -0700"
      },
      "message": "Re-license update_engine to Apache2\n\nThis patch automatically replaced the license on all text files from\nChromium OS (BSD style) to AOSP (Apache2), keeping the original year as\na reference.\n\nThe license header was added to .gyp and .gypi files, the NOTICE was\nreplaced with a copy of the Apache2 license and MODULE_LICENSE_* file\nwas updated.\n\nBUG\u003db/23084294\nTEST\u003dgrep \u0027Chromium OS Authors\u0027 doesn\u0027t find anything.\n\nChange-Id: Ie5083750755f5180a8a785b24fe67dbf9195cd10\n"
    },
    {
      "commit": "0b3db6b6040f53eb9859e614f7fe4c681213d33a",
      "tree": "3617cac41c1a518db08491667856e79bd0733bc0",
      "parents": [
        "305345001d85ca2282112c2a30fe75c7a4773491"
      ],
      "author": {
        "name": "Alex Deymo",
        "email": "deymo@chromium.org",
        "time": "Mon Aug 10 15:19:37 2015 -0700"
      },
      "committer": {
        "name": "ChromeOS Commit Bot",
        "email": "chromeos-commit-bot@chromium.org",
        "time": "Fri Aug 14 02:26:00 2015 +0000"
      },
      "message": "update_engine: Remove all references to glib.\n\nThe message loop in production code switched from\nchromeos::GlibMessageLoop to chromeos::BaseMessageLoop used in\nchromeos::Dameon. This patch moves all the unittests also to use\nchromeos::BaseMessageLoop or chromeos::FakeMessageLoop when I/O is not\nrequired.\n\nThis patch removes all (now unused) references to glib.\n\nBUG\u003dchromium:499886\nTEST\u003d`grep glib[^c] . -R` return no results. Also, unittests work.\n\nChange-Id: Iddfb17def501829d932ed1f70faad3e00268898e\nReviewed-on: https://chromium-review.googlesource.com/292157\nTested-by: Alex Deymo \u003cdeymo@chromium.org\u003e\nReviewed-by: Alex Deymo \u003cdeymo@chromium.org\u003e\nCommit-Queue: Alex Deymo \u003cdeymo@chromium.org\u003e\nTrybot-Ready: Alex Deymo \u003cdeymo@chromium.org\u003e\n"
    },
    {
      "commit": "b7ca096f98a43ebbf412f1b2d3d15bb184f871f8",
      "tree": "ecf4d15bb7139f455a879cecd81f57c4c0c50988",
      "parents": [
        "8cc502dacbccdab96824d42287f230ce04004784"
      ],
      "author": {
        "name": "Alex Deymo",
        "email": "deymo@chromium.org",
        "time": "Wed Oct 01 17:58:07 2014 -0700"
      },
      "committer": {
        "name": "ChromeOS Commit Bot",
        "email": "chromeos-commit-bot@chromium.org",
        "time": "Fri Aug 14 02:25:47 2015 +0000"
      },
      "message": "update_engine: Migrate UE DBus service to chrome DBus bindings.\n\nchromeos-dbus-bindings now generates the adaptor interface that\nupdate_engine exposes over DBus. This interface is implemented in\ndbus_service.{h,cc}, which now has a UpdateEngineService class\nencapsulating all the service methods implementation.\n\nThis allows to write unit test for those methods, which are included\nin this CL for all the non-trivial methods.\n\nThis CL now uses chrome\u0027s DBus bindings for the update_engine serive,\nbut the proxy interaction is still done using dbus-glib. The main loop\nin the main.cc file is now replaced with the chromeos::Dameon, which\nuses a chromeos::BaseMessageLoop instead of a GlibMessageLoop. This\ncauses the asynchronous interactions in the proxy side to not work,\nwhich will be fixed in the next CL.\n\nCQ-DEPEND\u003dCL:290990,CL:291092,CL:293334\nBUG\u003dchromium:419827\nTEST\u003dAdded unittest for all dbus_service methods. deployed and tested manually that update_engine dbus interface works.\n\nChange-Id: I6a6d142b2ac1a61a4c3abcb927665b26114abe5c\nReviewed-on: https://chromium-review.googlesource.com/225324\nReviewed-by: Gilad Arnold \u003cgarnold@chromium.org\u003e\nReviewed-by: Alex Deymo \u003cdeymo@chromium.org\u003e\nCommit-Queue: Alex Deymo \u003cdeymo@chromium.org\u003e\nTrybot-Ready: Alex Deymo \u003cdeymo@chromium.org\u003e\nTested-by: Alex Deymo \u003cdeymo@chromium.org\u003e\n"
    },
    {
      "commit": "ea4444d674a022d0b3f95c1e50f76dc0ba6a4531",
      "tree": "d4038bc18f6cae70a5b9a84d4aeb798dfab223d2",
      "parents": [
        "b9e8e26f843bc66d862c8b1a86be4475cbecbc8c"
      ],
      "author": {
        "name": "Alex Deymo",
        "email": "deymo@chromium.org",
        "time": "Fri Aug 07 10:51:18 2015 -0700"
      },
      "committer": {
        "name": "ChromeOS Commit Bot",
        "email": "chromeos-commit-bot@chromium.org",
        "time": "Sat Aug 08 04:26:40 2015 +0000"
      },
      "message": "update_engine: Replace g_usleep() with usleep().\n\nWe use g_usleep() to wait 100ms delay in unittests. This patch uses\ndirectly usleep() for that purpose since the delay is less than one\nsecond.\n\nBUG\u003dchromium:499886\nTEST\u003dUnittets still pass.\n\nChange-Id: I7fee3d6709791dd80432dbecf6f119df22b0ec7d\nReviewed-on: https://chromium-review.googlesource.com/291459\nReviewed-by: Gilad Arnold \u003cgarnold@chromium.org\u003e\nTested-by: Alex Deymo \u003cdeymo@chromium.org\u003e\nCommit-Queue: Alex Deymo \u003cdeymo@chromium.org\u003e\n"
    },
    {
      "commit": "461b259af8815d782200782c5ba3599d8de4a66c",
      "tree": "328c5f5a2cfd0ac76ae0eff35c6402a0c0d126d2",
      "parents": [
        "7fad7b7d3d7dcdaa7b17855fe333fcc4da000b46"
      ],
      "author": {
        "name": "Alex Deymo",
        "email": "deymo@chromium.org",
        "time": "Fri Jul 24 20:10:52 2015 -0700"
      },
      "committer": {
        "name": "ChromeOS Commit Bot",
        "email": "chromeos-commit-bot@chromium.org",
        "time": "Wed Jul 29 21:18:40 2015 +0000"
      },
      "message": "update_engine: Use libchromeos to launch subprocesses.\n\nThe Subprocess class handles the execution of suprocesses in the\nupdate_engine such as the post-install script and bspatch operations.\n\nThis patch migrates this class from using glib functions to use\nlibchromeos classes with equivalent functionality.\n\nCallsites and unittests were updated to match the new interface.\n\nBUG\u003dchromium:499886\nTEST\u003dUnittest still pass. Deployed on link and cros flash another image\nusing a delta payload.\n\nChange-Id: Ia64d39734e220675113f393a6049e9a9b0fe8409\nReviewed-on: https://chromium-review.googlesource.com/288837\nTrybot-Ready: Alex Deymo \u003cdeymo@chromium.org\u003e\nTested-by: Alex Deymo \u003cdeymo@chromium.org\u003e\nReviewed-by: Alex Vakulenko \u003cavakulenko@chromium.org\u003e\nCommit-Queue: Alex Deymo \u003cdeymo@chromium.org\u003e\n"
    },
    {
      "commit": "29b815316519829f133b39dd1cae7ab6224c9da2",
      "tree": "aab17873b017008d3c2f777017d70d696e656f58",
      "parents": [
        "b42b98db059a12c44110588fc0b3d5f82d32a2f8"
      ],
      "author": {
        "name": "Alex Deymo",
        "email": "deymo@chromium.org",
        "time": "Thu Jul 09 11:51:49 2015 -0700"
      },
      "committer": {
        "name": "ChromeOS Commit Bot",
        "email": "chromeos-commit-bot@chromium.org",
        "time": "Sat Jul 11 09:33:04 2015 +0000"
      },
      "message": "update_engine: Watch file descriptors using chromeos::MessageLoop.\n\nThis patch removes all the calls to g_io_*() functions used to create\nio_channels from a file descriptor and watch for them in the main loop.\nInstead, we use the chromeos::MessageLoop backed with the glib\nimplementation.\n\nThis patch also removes the duplicated process handling work done in\nP2PManager and uses the common Subprocess class instead.\n\nBUG\u003dchromium:499886\nTEST\u003dAdded and updated unittests.\n\nChange-Id: Ia093b060d2396325fce69b2bbdb62957ba7bfbc6\nReviewed-on: https://chromium-review.googlesource.com/284593\nTested-by: Alex Deymo \u003cdeymo@chromium.org\u003e\nReviewed-by: Alex Vakulenko \u003cavakulenko@chromium.org\u003e\nCommit-Queue: Alex Deymo \u003cdeymo@chromium.org\u003e\nTrybot-Ready: Alex Deymo \u003cdeymo@chromium.org\u003e\n"
    },
    {
      "commit": "60ca1a7bca7cc804ec80b510483081ef894de4cd",
      "tree": "cc171d9ad62e77b76106ab1863d880f52b431e65",
      "parents": [
        "72aa0029bcdaf0169ea5c0ace5d224bdc28fcad8"
      ],
      "author": {
        "name": "Alex Deymo",
        "email": "deymo@chromium.org",
        "time": "Thu Jun 18 18:19:15 2015 -0700"
      },
      "committer": {
        "name": "ChromeOS Commit Bot",
        "email": "chromeos-commit-bot@chromium.org",
        "time": "Fri Jun 26 01:47:39 2015 +0000"
      },
      "message": "update_engine: Migrate time-based glib main loop calls to MessageLoop.\n\nThis patch replaces most calls to g_idle_add* and g_timeout_add* with\nthe equivalent MessageLoop::Post*Task(). To maintain compatibility with\nunittests running the main loop and doing I/O we instantiate a\nGlibMessageLoop for those tests.\n\nBUG\u003dchromium:499886\nTEST\u003dunittests still pass.\n\nChange-Id: Ic87ba69bc47391ac3c36d1bfc3ca28d069666af1\nReviewed-on: https://chromium-review.googlesource.com/281197\nReviewed-by: Alex Vakulenko \u003cavakulenko@chromium.org\u003e\nTested-by: Alex Deymo \u003cdeymo@chromium.org\u003e\nCommit-Queue: Alex Deymo \u003cdeymo@chromium.org\u003e\nTrybot-Ready: Alex Deymo \u003cdeymo@chromium.org\u003e\n"
    },
    {
      "commit": "aab50e31f0b80ed53a9b8d5dbabcf943974bd32c",
      "tree": "df2ac7ac92e6eb5dfc24c87af119eb6cb3ee65fb",
      "parents": [
        "e89487039d0eca8130d822cabf75a729609509e0"
      ],
      "author": {
        "name": "Alex Deymo",
        "email": "deymo@chromium.org",
        "time": "Mon Nov 10 19:55:35 2014 -0800"
      },
      "committer": {
        "name": "chrome-internal-fetch",
        "email": "chrome-internal-fetch@google.com",
        "time": "Wed Nov 12 19:56:58 2014 +0000"
      },
      "message": "Include the implemented header first in all projects.\n\nThe Google C++ style guide dictates that foo.cc and foo_unittest.cc\nshould include foo.h in the first place, so missing headers in foo.h\nare detected with a compile error of the module implementing them and\nnot when another module uses them.\n\nThis CL sweeps across all the .cc file in platform2 enforcing this.\n\nBUG\u003dNone\nTEST\u003dcbuildbot amd64-generic\n\nChange-Id: I41835835caba13f54c3c844ecf552eb0e47efa9d\nReviewed-on: https://chromium-review.googlesource.com/228894\nTested-by: Alex Deymo \u003cdeymo@chromium.org\u003e\nReviewed-by: Alex Deymo \u003cdeymo@chromium.org\u003e\nCommit-Queue: Alex Vakulenko \u003cavakulenko@chromium.org\u003e\n"
    },
    {
      "commit": "10875d90cf67f883ba7c9ed13bc8d706aa8c6fbc",
      "tree": "97effd2a6cce73cbb6f131df93284d4fb5efc345",
      "parents": [
        "192393ba515e917d06248b6459b20b6547ef496d"
      ],
      "author": {
        "name": "Alex Deymo",
        "email": "deymo@chromium.org",
        "time": "Mon Nov 10 21:52:57 2014 -0800"
      },
      "committer": {
        "name": "chrome-internal-fetch",
        "email": "chrome-internal-fetch@google.com",
        "time": "Wed Nov 12 19:56:39 2014 +0000"
      },
      "message": "update_engine: Move test-only utils to test_utils.{h,cc}.\n\nutils.{h,cc} contains a collections of basic or small functions used\nin different parts of the codebase. The test_utils.{h,cc} instead\ncontains functions only required during testing split out to a\nseparated file to be reused in different tests.\n\nThis CL moves without changes some functions defined in utils.h that\nwere only used during unittests. Two other basic functions were replaced\nby the same function already present in base/ (StringHasSuffix and\nStringHasPrefix). The functions in test_utils.h now have their own\nnamespace chromeos_update_engine::test_utils so is clear they come\nfrom the test_utils file, in the same way the ones from utils are\nin their own namespace.\n\nSome othe minor linter fixes included here.\n\nBUG\u003dchromium:351429\nTEST\u003dUnittest still pass.\n\nChange-Id: I73ab72a14158cb21c8e1f404cbc728423bc8f34f\nReviewed-on: https://chromium-review.googlesource.com/229021\nReviewed-by: Alex Deymo \u003cdeymo@chromium.org\u003e\nCommit-Queue: Alex Deymo \u003cdeymo@chromium.org\u003e\nTested-by: Alex Deymo \u003cdeymo@chromium.org\u003e\n"
    },
    {
      "commit": "88b591f24cb3f94f982d7024c2e8ed25c2cc26a2",
      "tree": "d49741d0b0926c4c387e9d618b990ae89e6d2f8e",
      "parents": [
        "f3e2801f18bae14e41099e007de7c9a019735556"
      ],
      "author": {
        "name": "Alex Vakulenko",
        "email": "avakulenko@chromium.org",
        "time": "Thu Aug 28 16:48:57 2014 -0700"
      },
      "committer": {
        "name": "chrome-internal-fetch",
        "email": "chrome-internal-fetch@google.com",
        "time": "Mon Sep 01 11:05:16 2014 +0000"
      },
      "message": "update_engine: Replace NULL with nullptr\n\nReplaced the usage of NULL with nullptr. This also makes it possible to\nuse standard gtest macros to compare pointers in Update Manager\u0027s unit tests.\nSo, there is no need in custom UMTEST_... macros which are replaced with the\ngtest macros (see change in update_engine/update_manager/umtest_utils.h):\n\nUMTEST_ASSERT_NULL(p)      \u003d\u003e ASSERT_EQ(nullptr, p)\nUMTEST_ASSERT_NOT_NULL(p)  \u003d\u003e ASSERT_NE(nullptr, p)\nUMTEST_EXPECT_NULL(p)      \u003d\u003e EXPECT_EQ(nullptr, p)\nUMTEST_EXPECT_NOT_NULL(p)  \u003d\u003e EXPECT_NE(nullptr, p)\n\nBUG\u003dNone\nTEST\u003dFEATURES\u003dtest emerge-link update_engine\n     USE\u003d\"clang asan\" FEATURES\u003dtest emerge-link update_engine\n\nChange-Id: I77a42a1e9ce992bb2f9f263db5cf75fe6110a4ec\nReviewed-on: https://chromium-review.googlesource.com/215136\nTested-by: Alex Vakulenko \u003cavakulenko@chromium.org\u003e\nReviewed-by: Alex Deymo \u003cdeymo@chromium.org\u003e\nCommit-Queue: Alex Vakulenko \u003cavakulenko@chromium.org\u003e\n"
    },
    {
      "commit": "5d5278068a007fc090368fba664fe130645880f7",
      "tree": "7d5024a6ea4c02092e4b66627acd53ef6557a036",
      "parents": [
        "7504e5fe6fa3d8ac60186e0fd41bbb6ca3971cf3"
      ],
      "author": {
        "name": "Alex Deymo",
        "email": "deymo@chromium.org",
        "time": "Fri Jul 18 14:24:13 2014 -0700"
      },
      "committer": {
        "name": "Alex Deymo",
        "email": "deymo@chromium.org",
        "time": "Sat Jul 19 01:27:40 2014 +0000"
      },
      "message": "update_engine: Move ext2 tools to its own file in payload_generator.\n\nupdate_engine doesn\u0027t need to understand about the rootfs filesystem\nformat, just how to apply the defined operations. This patch moves\nthe few ext2fs specific code the payload_generator and removes the\ndependency on ext2fs from update_engine.\n\nBUG\u003dchromium:394184\nTEST\u003dFEATURES\u003d\"test\" emerge-link update_engine; sudo emerge update_engine\n\nChange-Id: If750e4834d42bbeaeddc6eff7c4690dd916c73bf\nReviewed-on: https://chromium-review.googlesource.com/208992\nTested-by: Alex Deymo \u003cdeymo@chromium.org\u003e\nReviewed-by: Alex Vakulenko \u003cavakulenko@chromium.org\u003e\nCommit-Queue: Alex Deymo \u003cdeymo@chromium.org\u003e\n"
    },
    {
      "commit": "d2779df63aaad8b65fc5d4badee7dbc9bed7f2b6",
      "tree": "e34a511ee4068d8d9cd46a992a4e147f3afbd351",
      "parents": [
        "b683327ed3f50ef89324069fc87ee076b65bee46"
      ],
      "author": {
        "name": "Alex Vakulenko",
        "email": "avakulenko@chromium.org",
        "time": "Mon Jun 16 13:19:00 2014 -0700"
      },
      "committer": {
        "name": "chrome-internal-fetch",
        "email": "chrome-internal-fetch@google.com",
        "time": "Wed Jun 18 01:39:59 2014 +0000"
      },
      "message": "update_engine: fixed warnings from cpplint\n\nFixed all the cpplint warnings in update engine.\n\nBUG\u003dNone\nTEST\u003dUnit tests still pass.\n\nChange-Id: I285ae858eec8abe0b26ff203b99a42a200ceb71c\nReviewed-on: https://chromium-review.googlesource.com/204027\nReviewed-by: Alex Vakulenko \u003cavakulenko@chromium.org\u003e\nTested-by: Alex Vakulenko \u003cavakulenko@chromium.org\u003e\nCommit-Queue: Alex Vakulenko \u003cavakulenko@chromium.org\u003e\n"
    },
    {
      "commit": "75039d7397f03dff77bdf4e26398049ff88edc4c",
      "tree": "a1403721dd45f801d8d95bbbcc612a71bdbb4483",
      "parents": [
        "032e772f76a6cd0b4caf1af7bd02dd81af2dc7dd"
      ],
      "author": {
        "name": "Alex Vakulenko",
        "email": "avakulenko@chromium.org",
        "time": "Tue Mar 25 12:36:28 2014 -0700"
      },
      "committer": {
        "name": "chrome-internal-fetch",
        "email": "chrome-internal-fetch@google.com",
        "time": "Thu Mar 27 18:45:11 2014 +0000"
      },
      "message": "update_engine: update to libbase 242728\n\nMade update_engine link with libchrome-242728 and fixed compile\nissues due to changes in namespaces and include file layout.\n\nAlso removed some of suppressed compiler warnings and fixed the\nissues masked by them (e.g. mismatched printf-like specifiers).\n\nAdded -Wextra compiler option to enable additional useful warnings\nto ensure more strict checking... Had to disable \"unused-parameter\"\nthough since we have a lot of functions (mainly in fakes) that do\nnot use all of their parameters.\n\nBUG\u003dchromium:351593\nTEST\u003dUnit tests passed.\nCQ-DEPEND\u003dCL:191721\n\nChange-Id: I1aa63a48d5f1f4ea75ba6b00aec7aa5f3bad15c4\nReviewed-on: https://chromium-review.googlesource.com/191510\nReviewed-by: Alex Vakulenko \u003cavakulenko@chromium.org\u003e\nCommit-Queue: Alex Vakulenko \u003cavakulenko@chromium.org\u003e\nTested-by: Alex Vakulenko \u003cavakulenko@chromium.org\u003e\n"
    },
    {
      "commit": "b6c562adec6e9491712f156f8fd50e2b807ff302",
      "tree": "0323b5331f782f0827456495d7623c0c774c89a3",
      "parents": [
        "2c2b884a4547407759e50681bb7bc49e3589d4fe"
      ],
      "author": {
        "name": "Gilad Arnold",
        "email": "garnold@chromium.org",
        "time": "Mon Jul 01 02:19:26 2013 -0700"
      },
      "committer": {
        "name": "ChromeBot",
        "email": "chrome-bot@google.com",
        "time": "Mon Jul 22 18:51:03 2013 -0700"
      },
      "message": "AU/unittest: test code spawns local HTTP server with unique port\n\nWith this change, unit testing code spawns a local (test) HTTP server\nthat listens on a unique TCP port. It is up to the server to allocate an\navailable port number (we use auto-allocation via bind) and report it\nback (by default, via its stdout), which the unit test process parses.\nAlso part of this CL:\n\n- Made the port a property of the server object, rather than a global\n  value. This makes more sense in general and may lend itself better to\n  future testing scenarios, such as running multiple servers in\n  parallel.\n\n- Removed a redundant field (validate_quit) from PythonHttpServer and\n  simplified/robustified its shutdown procedure: if the server is known\n  to be responsive, a graceful signal is sent (via wget); otherwise, or\n  if the former failed, a more brutral signal(SIGKILL) is used.\n\n- http_fetcher_unittest code now properly kills test_http_server if the\n  latter is unresponsive.\n\nBUG\u003dchromium:236465\nTEST\u003dTest server spawned with unique port\n\nChange-Id: I699cd5019e4bd860f38205d84e5403cfb9b39f81\nReviewed-on: https://gerrit.chromium.org/gerrit/60637\nCommit-Queue: Gilad Arnold \u003cgarnold@chromium.org\u003e\nReviewed-by: Gilad Arnold \u003cgarnold@chromium.org\u003e\nTested-by: Gilad Arnold \u003cgarnold@chromium.org\u003e\n"
    },
    {
      "commit": "97bdb3f6b2288e2fda623fdcbafd2cb3a9e7539a",
      "tree": "fd079d57c1ed18b22c0f1c7a243fa8e1e02800e1",
      "parents": [
        "1c656c48886cf5054b526ed7e95b05903d7644db"
      ],
      "author": {
        "name": "Gilad Arnold",
        "email": "garnold@chromium.org",
        "time": "Sun Jun 30 23:05:50 2013 -0700"
      },
      "committer": {
        "name": "ChromeBot",
        "email": "chrome-bot@google.com",
        "time": "Tue Jul 02 09:33:02 2013 -0700"
      },
      "message": "AU/unittest: parameterize test_http_server port\n\nThis eliminates the constant definition of the test HTTP server port,\nreplacing it with a command-line parameter (which defaults to 8080, the\nwell-known userland HTTP port). This is needed for allowing parallel\ninvocations of unit tests.\n\nBUG\u003dchromium:236465\nTEST\u003dPasses unit tests\n\nChange-Id: I91904dc360ec1b993cbaae93554fb0dd9e5adaad\nReviewed-on: https://gerrit.chromium.org/gerrit/60626\nTested-by: Gilad Arnold \u003cgarnold@chromium.org\u003e\nReviewed-by: Don Garrett \u003cdgarrett@chromium.org\u003e\nCommit-Queue: Gilad Arnold \u003cgarnold@chromium.org\u003e\n"
    },
    {
      "commit": "8e3f1263218c5046d2281c1d1d3c886acda85b47",
      "tree": "55d2348084f8f60e142fe13b75b49553e70153d4",
      "parents": [
        "bf7919ba5ecd58a6a03afdca8ff88caebd25581d"
      ],
      "author": {
        "name": "Gilad Arnold",
        "email": "garnold@chromium.org",
        "time": "Tue Jan 08 14:59:54 2013 -0800"
      },
      "committer": {
        "name": "ChromeBot",
        "email": "chrome-bot@google.com",
        "time": "Wed Jan 09 19:01:48 2013 -0800"
      },
      "message": "AU: replace sleep/usleep with g_usleep\n\nAlso deploying \u0027using base::TimeDelta\u0027 where it is useful.\n\nBUG\u003dchromium-os:33541\nTEST\u003dPasses unit tests; update runs on x86-alex\n\nChange-Id: I9478d46d0796b13789878393e3a4086564124d33\nReviewed-on: https://gerrit.chromium.org/gerrit/40904\nCommit-Queue: Gilad Arnold \u003cgarnold@chromium.org\u003e\nReviewed-by: Gilad Arnold \u003cgarnold@chromium.org\u003e\nTested-by: Gilad Arnold \u003cgarnold@chromium.org\u003e\n"
    },
    {
      "commit": "8155d081dc729d407f8ff9e95b4ef91ae14281ce",
      "tree": "2f964e6bf20f0fe0bd22779a8b7c8de977a097a8",
      "parents": [
        "a8a3a878bf8cac959428af8a807e9b5ec4a9a302"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Fri Apr 06 15:23:18 2012 -0400"
      },
      "committer": {
        "name": "Gerrit",
        "email": "chrome-bot@google.com",
        "time": "Wed Apr 11 08:56:24 2012 -0700"
      },
      "message": "pull in base/stringprintf.h explicitly\n\nNewer libbase no longer implicitly includes the stringprintf.h header,\nso building against it fails with missing StringPrintf definitions.\n\nBUG\u003dchromium-os:25872\nTEST\u003d`emerge-x86-alex update_engine` works with old \u0026 new libbase\n\nChange-Id: Ia1ea842449c0382ee4c8e5abd3ddfb3012c3ff2f\nReviewed-on: https://gerrit.chromium.org/gerrit/19774\nCommit-Ready: Mike Frysinger \u003cvapier@chromium.org\u003e\nReviewed-by: Mike Frysinger \u003cvapier@chromium.org\u003e\nTested-by: Mike Frysinger \u003cvapier@chromium.org\u003e\n"
    },
    {
      "commit": "85d02b7a8593f662818b3fe5f31281c443574654",
      "tree": "10800241eef6b7003fb6ff872937e8ccd7340b93",
      "parents": [
        "478435e384d8b129c3c932356dbad073333ca1b1"
      ],
      "author": {
        "name": "Darin Petkov",
        "email": "petkov@chromium.org",
        "time": "Tue May 17 13:25:51 2011 -0700"
      },
      "committer": {
        "name": "Darin Petkov",
        "email": "petkov@chromium.org",
        "time": "Tue May 17 15:05:03 2011 -0700"
      },
      "message": "AU: Add support for reading the output of synchronous exec calls.\n\nThis will be used in a subsequent patch to invoke \u0027crossystem hwid\u0027 to read the\nHWID.\n\nBUG\u003dchromium-os:15255\nTEST\u003dunit tests, tested AU on device\n\nChange-Id: Ie26bae3621626d40f92f08e8549eefda77151102\nReviewed-on: http://gerrit.chromium.org/gerrit/1047\nReviewed-by: Thieu Le \u003cthieule@chromium.org\u003e\nTested-by: Darin Petkov \u003cpetkov@chromium.org\u003e\n"
    },
    {
      "commit": "c1d5c93ddf56e193fd501e5f8fc3fc45efdc560f",
      "tree": "f328b488f08c1d9e639097dfc3ae04a176499a45",
      "parents": [
        "e72f9c028fe41052cc18c95411fc1cd21d5029a3"
      ],
      "author": {
        "name": "Andrew de los Reyes",
        "email": "adlr@chromium.org",
        "time": "Wed Apr 20 17:15:47 2011 -0700"
      },
      "committer": {
        "name": "Andrew de los Reyes",
        "email": "adlr@chromium.org",
        "time": "Wed Apr 20 17:15:47 2011 -0700"
      },
      "message": "AU: Handle firmware update failure when booted from FW slot B.\n\nThe firmware updater will fail if we are booted into FW slot B and we\ntry to update firmware. We shouldn\u0027t treat this like a usual update\nfailure because trying again won\u0027t help until we reboot. Thus, with\nthis CL, we detect this case and request a reboot from the\nuser. Technically this request is a lie, b/c we are reusing the reboot\nrequest mechanism which tells the user an update has been applied and\nthus must be rebooted. We accept this fib since this situation is very\nrare: use would have to have 2 FW update updates in a row w/o any\nextra boots between.\n\nAlso, fix error code in subprocess.\n\nAlso, remove execute permissions on a bunch of source files.\n\nBUG\u003dchromium-os:14343\nTEST\u003dunittests, tested updates on machine that success, fail, have FW B failure\n\nReview URL: http://codereview.chromium.org/6880077\n\nChange-Id: I2509c6e1c9c9da3ff1ea27da4861c4850bd4d000\n"
    },
    {
      "commit": "6f03a3b868d4b632931400628763036f79c449f7",
      "tree": "f59fc81a187fbce5fb1b21d0a8dc431e0b022620",
      "parents": [
        "4b8740f07e4b22f1be6e349b12d8a1126f97a871"
      ],
      "author": {
        "name": "Darin Petkov",
        "email": "petkov@chromium.org",
        "time": "Wed Nov 10 14:27:14 2010 -0800"
      },
      "committer": {
        "name": "Darin Petkov",
        "email": "petkov@chromium.org",
        "time": "Wed Nov 10 14:27:14 2010 -0800"
      },
      "message": "AU: Execute postinst asynchronously so that the D-Bus service is not blocked.\n\nThis CL also cleans up Subprocess memory handling a bit and extends it to\ncapture the output of asynchronous subprocesses. Also adds a scoped temp mount\nunmounter utility class.\n\nBUG\u003d8937\nTEST\u003dunit tests, tested on the device -- making sure no D-Bus calls timeou\nduring postinstall.\n\nChange-Id: I219dda3dc98d875ff05050f1a32ffcc925db1d53\n\nReview URL: http://codereview.chromium.org/4690006\n"
    },
    {
      "commit": "f67bb1f187d7fcea38a33badf4bc619fc2e5c0fc",
      "tree": "3c491fa1388c9f5509867c15c4119079bb71743f",
      "parents": [
        "6d5dbf6458d55db480ebaa1b6fc3152631f722ad"
      ],
      "author": {
        "name": "Darin Petkov",
        "email": "petkov@chromium.org",
        "time": "Mon Nov 08 16:10:26 2010 -0800"
      },
      "committer": {
        "name": "Darin Petkov",
        "email": "petkov@chromium.org",
        "time": "Mon Nov 08 16:10:26 2010 -0800"
      },
      "message": "AU: Change test http server port from 8080 to 8088.\n\nThis allows developers to run unit tests while the dev server is running. Also\nremove obsole test_http_server.py.\n\nBUG\u003d8889\nTEST\u003dunit tests while dev server is running.\n\nChange-Id: Iaf0ff92edbb959d93bd206c0007455f637682e2c\n\nReview URL: http://codereview.chromium.org/4667002\n"
    },
    {
      "commit": "b7de1d59f52f0b97b0bdc23bf1d8286630d7e70c",
      "tree": "47411eddeb09607367b493c19b2393d69597704d",
      "parents": [
        "b9bd856ac050a0916643ff50f9a2c30ec21542a6"
      ],
      "author": {
        "name": "Darin Petkov",
        "email": "petkov@chromium.org",
        "time": "Tue Aug 24 13:38:33 2010 -0700"
      },
      "committer": {
        "name": "Darin Petkov",
        "email": "petkov@chromium.org",
        "time": "Tue Aug 24 13:38:33 2010 -0700"
      },
      "message": "Don\u0027t generate quitquitquit files when running unit tests.\n\nBUG\u003dnone\nTEST\u003dunit tests\n\nChange-Id: I6eb69fcac53c257390b640767a3f547478f792b2\n\nReview URL: http://codereview.chromium.org/3199015\n"
    },
    {
      "commit": "27fa9c5f029c9bd2fc9452d6525facc5b7775da1",
      "tree": "f7d9a651d66ffac6e913513317864dd44cdf9e1b",
      "parents": [
        "0dc8e9a73fc3179a67a72ab72ceb2bc6540949bf"
      ],
      "author": {
        "name": "Darin Petkov",
        "email": "petkov@chromium.org",
        "time": "Thu Jul 15 15:11:55 2010 -0700"
      },
      "committer": {
        "name": "Darin Petkov",
        "email": "petkov@chromium.org",
        "time": "Thu Jul 15 15:11:55 2010 -0700"
      },
      "message": "Don\u0027t wait for the http server forever.\n\nThis prevents the unit tests from going into an infinite loop\nif the HTTP server fails to start (for example, because the dev\nserver is already running).\n\nBUG\u003dnone\nTEST\u003dran unit tests with and without dev server running\n\nReview URL: http://codereview.chromium.org/3005003\n"
    },
    {
      "commit": "09e56d64202d2148b95008c5bd18cf719ec0f40c",
      "tree": "97804e4562fd9df05031d3c42bfa3dbb3d4c99dc",
      "parents": [
        "08c4e27baaa7b40732b99642e1f21bf889d022ef"
      ],
      "author": {
        "name": "Andrew de los Reyes",
        "email": "adlr@chromium.org",
        "time": "Fri Apr 23 13:45:53 2010 -0700"
      },
      "committer": {
        "name": "Andrew de los Reyes",
        "email": "adlr@chromium.org",
        "time": "Fri Apr 23 13:45:53 2010 -0700"
      },
      "message": "AU: Class to perform delta updates.\n\nA class to perform delta updates and the associated unittests. Also,\nchange the delta diff generator executable to be able to apply a\ndelta, which is handy for debugging.\n\nTEST\u003dAttached unit test, hand-tested on real build images\nBUG\u003d552\n\nReview URL: http://codereview.chromium.org/1718001\n"
    },
    {
      "commit": "3defe6acb3609e70e851a6eff062577d25a2af9d",
      "tree": "341e979027fde117dd8906483db7a5c703a2e1cf",
      "parents": [
        "c98a7edf648aad88b3f66df3b5a7d43d6a6d7fa9"
      ],
      "author": {
        "name": "adlr@google.com",
        "email": "adlr@google.com@06c00378-0e64-4dae-be16-12b19f9950a1",
        "time": "Fri Dec 04 20:57:17 2009 +0000"
      },
      "committer": {
        "name": "adlr@google.com",
        "email": "adlr@google.com@06c00378-0e64-4dae-be16-12b19f9950a1",
        "time": "Fri Dec 04 20:57:17 2009 +0000"
      },
      "message": "Missed new files in last commit\n\nReview URL: http://codereview.chromium.org/465067\n\n\ngit-svn-id: svn://chrome-svn/chromeos/trunk@336 06c00378-0e64-4dae-be16-12b19f9950a1\n"
    }
  ]
}
