)]}'
{
  "log": [
    {
      "commit": "643eff1ba0a50eeb5756078c98a156e3212f550f",
      "tree": "3971e88326d54270bed01049758bd7ef01eeefd2",
      "parents": [
        "fd9ce6e67cdddf5573bf081bd2e8cb952253e7fb"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Wed May 01 09:28:04 2019"
      },
      "committer": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Fri Sep 06 09:06:39 2019"
      },
      "message": "README: update URIs to https sites\n\nChange-Id: I9f4b82fa3b17350ee5ea2af9adc661b811e318b2\nReviewed-on: https://chromium-review.googlesource.com/c/apps/unpacker/+/1591652\nReviewed-by: Joel Hockey \u003cjoelhockey@chromium.org\u003e\nTested-by: Mike Frysinger \u003cvapier@chromium.org\u003e\n"
    },
    {
      "commit": "fd9ce6e67cdddf5573bf081bd2e8cb952253e7fb",
      "tree": "05b55cdeb6240cf1db0db6cb21c82ba315787b4a",
      "parents": [
        "d3e5632ddaa81eba0ff7c43a1530c47b04854a92"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Thu Dec 21 07:53:41 2017"
      },
      "committer": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Sat May 04 11:02:01 2019"
      },
      "message": "normalize archive paths\n\nSome archive formats allow names to include \"./\" prefixes.  These confuse\nthe FSP layer and make it list a \".\" directory.  Attempting to descend it\nthough fail as the FSP layer requests \"./\" which libarchive returns which\nis the same directory it was already in.\n\nLets change the unpacker layer to just skip any leading ./ components it\ncomes across.  The FSP layer can then display it fine while the libarchive\nlayer knows how to look up the path even with the ./ omitted.\n\nAn example using a tar file:\n$ touch foo\n$ tar cf foo.tar ./foo\nOpening it in the FSP layer shows a hidden \".\" directory, and going into\nit leads to an infinite ./././././ chain that never reaches \"foo\".\n\nWe can also confuse it with runs of // or /./ in dirpaths, so normalize\nthose too.\n\nBug: https://github.com/vapier/chrome-ext-wicked-good-unarchiver/issues/7\nChange-Id: Ieefd9a769dd840b1029e5c1d773db2eec1cc74ca\nReviewed-on: https://chromium-review.googlesource.com/c/apps/unpacker/+/838627\nReviewed-by: Joel Hockey \u003cjoelhockey@chromium.org\u003e\nTested-by: Mike Frysinger \u003cvapier@chromium.org\u003e\n"
    },
    {
      "commit": "d3e5632ddaa81eba0ff7c43a1530c47b04854a92",
      "tree": "da2e626cef612ab9f861f039d923e925142b858b",
      "parents": [
        "a0255140d0f116637e8c5e8b527cc6d8bdaa0dd1",
        "ca767d44fd31a9486bfdbea51dff5f95f47ee559"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Wed May 01 09:35:29 2019"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed May 01 09:35:29 2019"
      },
      "message": "Merge \"unpacker: drop stub close callback\""
    },
    {
      "commit": "a0255140d0f116637e8c5e8b527cc6d8bdaa0dd1",
      "tree": "f0072ffab0c55a5829c5f865197797898b67f736",
      "parents": [
        "fd5ab5cd3ceef9845968c019d397fb77fa4ffcfc"
      ],
      "author": {
        "name": "Tatsuhisa Yamaguchi",
        "email": "yamaguchi@chromium.org",
        "time": "Mon Dec 04 07:30:53 2017"
      },
      "committer": {
        "name": "Tatsuhisa Yamaguchi",
        "email": "yamaguchi@chromium.org",
        "time": "Mon Dec 04 09:25:44 2017"
      },
      "message": "Prevent mounting the volume after sign out and signing in again.\n\n\u0027persistent\u0027 parameter is added by\nhttps://chromium-review.googlesource.com/c/chromium/src/+/792692\nand will be available from Chrome version 64.\n\nBUG\u003dchromium:789073\nTEST\u003dConfirmed that zip files mounted in the prev session was not mounted after restart.\nChange-Id: Ib255fd364a714947da54ba7e1e2a3d9785d22b94\n"
    },
    {
      "commit": "fd5ab5cd3ceef9845968c019d397fb77fa4ffcfc",
      "tree": "33e535965eb1e32d2389bb18a9d416d6ae303d7c",
      "parents": [
        "f1869ab91ef91aa47adaf3c452d41adbd5c1a137"
      ],
      "author": {
        "name": "Naoki Fukino",
        "email": "fukino@chromium.org",
        "time": "Wed Nov 22 05:44:59 2017"
      },
      "committer": {
        "name": "Naoki Fukino",
        "email": "fukino@chromium.org",
        "time": "Fri Dec 01 06:10:12 2017"
      },
      "message": "Upgrade Polymer to 1.9.1.\n\nAn old Polymer version (0.5) is used to implement the password dialog.\nThis old version is not supported anymore and stop working on M64.\nThis patch updates the version to 1.9.1. The Chrome Web UI uses the\nsame version of Polymer.\n\nBUG\u003dchromium:780381\nTEST\u003dComfirmed that an encrypted zip file was unpacked with this patch.\nChange-Id: Ibee537daedac7e9141b3be4ae0aed951555fbb78\n"
    },
    {
      "commit": "f1869ab91ef91aa47adaf3c452d41adbd5c1a137",
      "tree": "f6d9b3420274c16f13a84e4b09241ed297ad5728",
      "parents": [
        "f92d858537346a95e9665251c8cc0f4ee060fe51",
        "5030cf65e2fdbf17bf8fce8b098fd7fb663db08f"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Fri Oct 27 21:47:42 2017"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Oct 27 21:47:42 2017"
      },
      "message": "Merge \"update virtual test stubs\""
    },
    {
      "commit": "5030cf65e2fdbf17bf8fce8b098fd7fb663db08f",
      "tree": "80573f9c20d8fa66319f0013da88672ffaa7748f",
      "parents": [
        "cb7e2354a03636e4e893e84b58d7532887788c88"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Thu Oct 26 22:04:56 2017"
      },
      "committer": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Thu Oct 26 22:16:54 2017"
      },
      "message": "update virtual test stubs\n\nRecent commits:\n- 3843bfe8f1e (add console log callbacks to the NaCl plugin for debugging)\n- cb7e2354a03 (Add components for zip packing.)\n\nAdded new methods that need to be stubbed out in the tests.\n\nChange-Id: Ie98a4aaba81fec97408737fe61a2dfd1ea5194e7\n"
    },
    {
      "commit": "f92d858537346a95e9665251c8cc0f4ee060fe51",
      "tree": "540603adcaf950c55cd6d8e4286767086c2c0cae",
      "parents": [
        "cb7e2354a03636e4e893e84b58d7532887788c88"
      ],
      "author": {
        "name": "Naoki Fukino",
        "email": "fukino@chromium.org",
        "time": "Thu Oct 26 04:08:20 2017"
      },
      "committer": {
        "name": "Naoki Fukino",
        "email": "fukino@chromium.org",
        "time": "Thu Oct 26 04:25:57 2017"
      },
      "message": "Always update buffer and send signal when ReadChunk is done.\n\nThere is a chance that VolumeReaderJavaScriptStream::Read() waits a response of\nReadChunk forever.\nThe problematic scenario is illustrated in\nhttps://bugs.chromium.org/p/chromium/issues/detail?id\u003d457448#c28\n\nVolumeReaderJavaScriptStream can request ReadChunk without a client\u0027s request to\nread ahead.\nIt expects a response through VolumeReaderJavaScriptStream::SetBufferAndSignal,\nbut a response can be ignored in Volume::Volume::ReadChunkDone() if the file for\nprevious Read request is already closed. This can cause Read() to be hanged.\n\nConsidering the case of reading ahead (without explicit Read requests from\nclient), I think we should always set buffer and signal\nVolumeReaderJavaScriptStream when ReadChunk is done.\n\nBUG\u003dchromium:457448\nTEST\u003dOpen a zip file which contains 1000 photos, and browse photos by\nscrolling randomly.\nChange-Id: I4850b89ee6d5f8e808e0c94f76aabb4a3eda35b7\n"
    },
    {
      "commit": "ca767d44fd31a9486bfdbea51dff5f95f47ee559",
      "tree": "290b86de951e379239945e8a5bdd5573d75540f9",
      "parents": [
        "cb7e2354a03636e4e893e84b58d7532887788c88"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Sun Apr 02 04:13:07 2017"
      },
      "committer": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Sat May 06 19:05:44 2017"
      },
      "message": "unpacker: drop stub close callback\n\nChange-Id: I6f2f56447c90d030863b70cf5fabd9f0c70c985f\n"
    },
    {
      "commit": "cb7e2354a03636e4e893e84b58d7532887788c88",
      "tree": "5f16c0710a4892b26ad438370127bbf47f68cdea",
      "parents": [
        "0c2f07a24a3e4acbbbf0a6b747a0123c2c1b6bca"
      ],
      "author": {
        "name": "Kazuki Takise",
        "email": "takise@google.com",
        "time": "Tue Mar 28 08:50:17 2017"
      },
      "committer": {
        "name": "Kazuki Takise",
        "email": "takise@google.com",
        "time": "Tue Mar 28 08:50:17 2017"
      },
      "message": "Add components for zip packing.\n\nThis is the changes to add packing feature in zip unpacker.\nDesign doc (now writing) can be found in the following link.\n\nhttps://docs.google.com/a/google.com/document/d/1eQQEkkwdEPfVANnlaJxIP12MZjaAcJ22ziIiuj0DMIw/edit?usp\u003dsharing\n\nBUG\u003d359837\nTEST\u003dmanually tested(test components will be added later.)\n\nChange-Id: Ia0ad78050a58053aa09e268f25ac6f064cbb9aac\n"
    },
    {
      "commit": "0c2f07a24a3e4acbbbf0a6b747a0123c2c1b6bca",
      "tree": "2d4a16b4eb10c55cd227beb5f12ddbd7566a54e6",
      "parents": [
        "b75e3933ff89244880d7cf5ac8a41a6654fc3bce",
        "3843bfe8f1eb9c16236aff7805bcd67e47ae24be"
      ],
      "author": {
        "name": "Kazuki Takise",
        "email": "takise@google.com",
        "time": "Tue Mar 28 05:34:58 2017"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Mar 28 05:34:59 2017"
      },
      "message": "Merge \"add console log callbacks to the NaCl plugin for debugging\""
    },
    {
      "commit": "b75e3933ff89244880d7cf5ac8a41a6654fc3bce",
      "tree": "cbfce28eb95291392155e3d23375076454daf47b",
      "parents": [
        "2332b5011c3d5399ae92f0188607e54ed3b4cdfa",
        "ae1158a591139d4fd8eae59b15783e5ba17b0419"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Tue Mar 28 04:23:58 2017"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Mar 28 04:23:58 2017"
      },
      "message": "Merge \"expand GetNextHeader return value\""
    },
    {
      "commit": "ae1158a591139d4fd8eae59b15783e5ba17b0419",
      "tree": "a5b1a0a515c2458163f7c291d88891bf111c5101",
      "parents": [
        "7b86d75c83a11dd9d2c11decf591926714a95797"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Fri Mar 24 05:36:07 2017"
      },
      "committer": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Tue Mar 28 04:21:28 2017"
      },
      "message": "expand GetNextHeader return value\n\nInstead of using pathname as a weird side-band signal of \"we hit EOF\",\nadd a proper enum and multiple return values so the caller can cleanly\ndetect this behavior.\n\nChange-Id: I7ad559ee063bb9d3a4b25155fe8d2fcfdd35febf\n"
    },
    {
      "commit": "2332b5011c3d5399ae92f0188607e54ed3b4cdfa",
      "tree": "48025418718f953141470418a2096fb269b64ec6",
      "parents": [
        "7b86d75c83a11dd9d2c11decf591926714a95797",
        "4f6e19c78906298f79f9fb29362389f23110ca71"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Tue Mar 28 03:01:56 2017"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Mar 28 03:01:56 2017"
      },
      "message": "Merge \"do not rely on file size if it isn\u0027t available\""
    },
    {
      "commit": "7b86d75c83a11dd9d2c11decf591926714a95797",
      "tree": "9dabf761f887ee712cab39f706c62b57fec96f9e",
      "parents": [
        "6d2fe427ed8473c0fbcc9e957a375def6f0aca0d"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Thu Mar 23 20:57:47 2017"
      },
      "committer": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Fri Mar 24 08:53:25 2017"
      },
      "message": "README: document the source \u0026 layout\n\nChange-Id: I866ac10eb746ba5538eb7c483cbf058ce2e7b286\n"
    },
    {
      "commit": "3843bfe8f1eb9c16236aff7805bcd67e47ae24be",
      "tree": "dcc19b9fd5cc83eb1b69048bfd47d2a2d96c5aeb",
      "parents": [
        "6d2fe427ed8473c0fbcc9e957a375def6f0aca0d"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Fri Mar 24 03:52:24 2017"
      },
      "committer": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Fri Mar 24 07:39:54 2017"
      },
      "message": "add console log callbacks to the NaCl plugin for debugging\n\nThis just plumbs through console.log \u0026 console.debug for the NaCl plugin.\n\nChange-Id: I3e92d29e6e1408a473eeecfa8d8fd195685a228e\n"
    },
    {
      "commit": "4f6e19c78906298f79f9fb29362389f23110ca71",
      "tree": "39a0f63a53ee8c9c215adbc54512d244d163ee0f",
      "parents": [
        "6d2fe427ed8473c0fbcc9e957a375def6f0aca0d"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Fri Mar 24 07:19:54 2017"
      },
      "committer": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Fri Mar 24 07:19:56 2017"
      },
      "message": "do not rely on file size if it isn\u0027t available\n\nIn some cases, libarchive might not have been able to set the file size\nfor the current entry.  If it couldn\u0027t, we get a default of 0 bytes, and\nthis reading code would return early.\n\nInstead, if the size isn\u0027t available, just rely on the libarchive layers\nreturning EOF on the current member once we read to the end of it.\n\nChange-Id: I89d223c1d68dd7d6bd05335dd76a3490eb0ffdef\n"
    },
    {
      "commit": "6d2fe427ed8473c0fbcc9e957a375def6f0aca0d",
      "tree": "8b6e35ac35e3bff15a17121b0bf4cef906bdb339",
      "parents": [
        "7396d6c655120ca71303605015113540f4dd83a0"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Fri Mar 24 05:13:59 2017"
      },
      "committer": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Fri Mar 24 06:35:51 2017"
      },
      "message": "add a GetNextHeader that returns no args\n\nThis simplifies the caller in Volume so we don\u0027t have to declare or\ninitialize variables that never get used.\n\nChange-Id: Icd583fbeaf2b512a3bfbf978e473cc96ece464e3\n"
    },
    {
      "commit": "7396d6c655120ca71303605015113540f4dd83a0",
      "tree": "8a12990b976748a7d26c2216738a76d195b5ed63",
      "parents": [
        "39a372ada5f411d21eee8a94ab7d053e0e8a3b6b"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Fri Mar 24 06:11:34 2017"
      },
      "committer": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Fri Mar 24 06:11:34 2017"
      },
      "message": "third-party: re-order targets\n\nMake sure the local libarchive-fork \u0026 polymer targets come first so\na plain `make` defaults to them still and not the new nacl code.\n\nChange-Id: Id20aca85a6f22fc4ed88efe6a1cb65f530669261\n"
    },
    {
      "commit": "39a372ada5f411d21eee8a94ab7d053e0e8a3b6b",
      "tree": "8703105028ee57f1d4c67c6b51a4e774c36805cf",
      "parents": [
        "1d57e79b57b407aaf45b81eec64594547306b84e",
        "32790394240bb9fcfb101f5c72821bc35c10ec94"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Fri Mar 24 06:09:42 2017"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Mar 24 06:09:42 2017"
      },
      "message": "Merge \"add make targets to third-party for NaCl \u0026 webports\""
    },
    {
      "commit": "1d57e79b57b407aaf45b81eec64594547306b84e",
      "tree": "b80fedaa3ad41b26e29872645664bf44de557ec3",
      "parents": [
        "3878e753aefb54de4a53fbafe31f2b5a5f819364"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Fri Mar 24 03:50:53 2017"
      },
      "committer": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Fri Mar 24 03:54:31 2017"
      },
      "message": "fix thinko in assert statement\n\nMake sure we use string concatenation for the message to console.assert\nand not pass extra args which will simply be ignored.\n\nChange-Id: I5b182fdab9f604436788eed4d981fe4be7555789\n"
    },
    {
      "commit": "3878e753aefb54de4a53fbafe31f2b5a5f819364",
      "tree": "8892121dcc39c4037236c7cdcfa04437b2d86187",
      "parents": [
        "1ea9a144dd92c4b06d90525b92eba95fb61ed304"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Thu Mar 23 22:11:39 2017"
      },
      "committer": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Fri Mar 24 02:33:37 2017"
      },
      "message": "tidy up redundant clean targets\n\nWe\u0027re running `rm -rf release debug` twice, so do it just once in\nthe package file.  Also add the new zip files to the clean output.\n\nChange-Id: I16927ef130b60e7e868948196b405c6bd1f0875e\n"
    },
    {
      "commit": "1ea9a144dd92c4b06d90525b92eba95fb61ed304",
      "tree": "1f95cdbd458fa27f73614d05c88517f585ce623d",
      "parents": [
        "c5111ddd01b80ad5adddc621b605c6c805cc3af6"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Thu Mar 23 17:37:25 2017"
      },
      "committer": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Thu Mar 23 22:12:40 2017"
      },
      "message": "fix directory checking\n\nThe libarchive code explicitly documents that the filetype constants\nmight be diff values from the host system\u0027s stat constants.  i.e. We\ncannot assume that AE_IFDIR \u003d\u003d S_IFDIR.  That means we can\u0027t use the\nhost\u0027s S_ISDIR helper.  Do the constant test directly instead.\n\nChange-Id: Ib9188e1f6847766dc58266fe0bc1bcc1cd9c918e\n"
    },
    {
      "commit": "32790394240bb9fcfb101f5c72821bc35c10ec94",
      "tree": "a0f6c84b1a5c7f49c93606740257f8ecd928f143",
      "parents": [
        "c5111ddd01b80ad5adddc621b605c6c805cc3af6"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Mon Mar 20 10:23:44 2017"
      },
      "committer": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Thu Mar 23 05:38:37 2017"
      },
      "message": "add make targets to third-party for NaCl \u0026 webports\n\nThis way people don\u0027t have to manually run all the steps themselves.\nWe\u0027ll just have helpers under third-party/ like other targets.\n\nChange-Id: Ibcef47981ebe0c8d77183dd624dd4abeacb4524a\n"
    },
    {
      "commit": "c5111ddd01b80ad5adddc621b605c6c805cc3af6",
      "tree": "eb6ed0a090688c1d3789c63cb3656e04a89b8cdc",
      "parents": [
        "3bd2ba4330b3d66acf947a19023406c36477d200",
        "6e638c40bc22ddd1f896bf998c0b659ed0d8306a"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Thu Mar 23 05:38:22 2017"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Mar 23 05:38:22 2017"
      },
      "message": "Merge \"check_js_for_errors: bump to es6\""
    },
    {
      "commit": "3bd2ba4330b3d66acf947a19023406c36477d200",
      "tree": "ace8568a81253686e4a57f26a1d422cde24aea7e",
      "parents": [
        "d8aa446515f11e3fabc8e6bb20a52bef58de0193"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Thu Mar 23 03:09:06 2017"
      },
      "committer": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Thu Mar 23 04:30:24 2017"
      },
      "message": "tests: build with -j by default\n\nUse all available cpus by default rather than just one.\n\nChange-Id: Ie4e3565b55c54bff0f4912a15012f761317c2ba5\n"
    },
    {
      "commit": "6e638c40bc22ddd1f896bf998c0b659ed0d8306a",
      "tree": "8dba88d45ec35de07552345e720fb4bef54cc7b6",
      "parents": [
        "d8aa446515f11e3fabc8e6bb20a52bef58de0193"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Thu Mar 23 03:35:01 2017"
      },
      "committer": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Thu Mar 23 04:30:05 2017"
      },
      "message": "check_js_for_errors: bump to es6\n\nSome new code is complaining about being valid in es6 and not es5.\nSince we only care about this extension in Chrome, there shouldn\u0027t\nbe a problem allowing es6 features.\n\nChange-Id: I2c82065cfaca8077720b54811f73a1004c367fc0\n"
    },
    {
      "commit": "d8aa446515f11e3fabc8e6bb20a52bef58de0193",
      "tree": "d8ef8b9354d7d850225a790bf7216992e0dc8c44",
      "parents": [
        "3d5444c448f244f98a752fb65c0d2e5c469bbfe3",
        "c5a6fea58da670c36b21bffbf28fcbdb34f51fa9"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Thu Mar 23 04:29:47 2017"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Mar 23 04:29:48 2017"
      },
      "message": "Merge \"tests: link to gtest source files directly\""
    },
    {
      "commit": "3d5444c448f244f98a752fb65c0d2e5c469bbfe3",
      "tree": "3d2cd75e9ae82a8a9027f9ffcbf515f3096e49eb",
      "parents": [
        "16eb2a0bfb52dbc2168cbc9f25a60e8da81f063b",
        "40f0dec7cf8c723f73a3a0391e2b6b6913aac7f6"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Thu Mar 23 04:29:14 2017"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Mar 23 04:29:14 2017"
      },
      "message": "Merge \"tests: update docs \u0026 avoid global installs\""
    },
    {
      "commit": "16eb2a0bfb52dbc2168cbc9f25a60e8da81f063b",
      "tree": "97b87b405a94cce58ad539ebb6ef460e6bdda266",
      "parents": [
        "35042f3dd78401b48b098864418b9275df8e26f6"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Thu Mar 23 03:28:59 2017"
      },
      "committer": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Thu Mar 23 03:37:58 2017"
      },
      "message": "check_js_for_errors: find the closure-compiler automatically\n\nWe can use npm to locate the right root path to find the closure\nfiles.  This way we can use the one installed in the top level.\n\nChange-Id: I4be890dfa44c9dff38f8c0f877aff9e3bcdaae90\n"
    },
    {
      "commit": "35042f3dd78401b48b098864418b9275df8e26f6",
      "tree": "3b6341ec3b5bf1438c846936087a84bdd898cb39",
      "parents": [
        "62e6d1af50e4bf33dde8ccc0d68d9a978df42ece"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Thu Mar 23 03:27:11 2017"
      },
      "committer": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Thu Mar 23 03:37:01 2017"
      },
      "message": "suppress closure warning about unused value\n\nThe compiler is correct in that we aren\u0027t using the return value,\nbut it\u0027s still what we want to do since it\u0027s a workaround.\n\nChange-Id: I50c5c3e69d776d6b900430d1a69f711525a48e20\n"
    },
    {
      "commit": "c5a6fea58da670c36b21bffbf28fcbdb34f51fa9",
      "tree": "1ccdc65aab3d530fe94834389d35a0db106670a9",
      "parents": [
        "62e6d1af50e4bf33dde8ccc0d68d9a978df42ece"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Thu Mar 23 02:59:44 2017"
      },
      "committer": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Thu Mar 23 03:02:19 2017"
      },
      "message": "tests: link to gtest source files directly\n\nUpstream gtest does not provide a libgtest.a anymore to link against.\nInstead, they want you to compile it from source all the time when you\nuse them with your own projects.\n\nAdapt the test makefile to use the gtest source in the NaCl SDK, and\nhave it build gtest-all.cc directly instead of using libgtest.a.\n\nChange-Id: I0aa087c35d32a6446402a5d33f487c6877471c84\n"
    },
    {
      "commit": "40f0dec7cf8c723f73a3a0391e2b6b6913aac7f6",
      "tree": "412ed94d40084e5edf6c6c8d4b8774bc12772ec5",
      "parents": [
        "62e6d1af50e4bf33dde8ccc0d68d9a978df42ece"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Thu Mar 23 02:41:41 2017"
      },
      "committer": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Thu Mar 23 02:58:00 2017"
      },
      "message": "tests: update docs \u0026 avoid global installs\n\nSince we install all the npm modules in the top level, we can\nuse the tools installed directly in that rather than having to\ninstall tools into the host OS.\n\nWe also simplify the test docs to use a single npm install.\nWith current versions, we also have to manually install the\nchai and sinon packages, so add them to the list.\n\nChange-Id: Ib197ba15f26c46d62513f5c36f54621c5d636b6f\n"
    },
    {
      "commit": "62e6d1af50e4bf33dde8ccc0d68d9a978df42ece",
      "tree": "836d3dbe0debc78c1f3c9d2e853d621f9157e1c4",
      "parents": [
        "ca3dacbe00e0d9ab8fa68d448eebf54079d15d62",
        "ba63d3d4a65b158a0a44e45fbc93c5a0966edb84"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Thu Mar 23 02:18:28 2017"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Mar 23 02:18:28 2017"
      },
      "message": "Merge \"create the zip file automatically\""
    },
    {
      "commit": "ca3dacbe00e0d9ab8fa68d448eebf54079d15d62",
      "tree": "d0423b3bd5cc244f13fb132bff66f0d128be8991",
      "parents": [
        "dca26b55bf898be6e2d6d0b539d5b738b6e6acfc",
        "df40349c29b393543289c9332738c49efc4c2cba"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Wed Mar 22 06:32:33 2017"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Mar 22 06:32:34 2017"
      },
      "message": "Merge \"update gitignore files\""
    },
    {
      "commit": "dca26b55bf898be6e2d6d0b539d5b738b6e6acfc",
      "tree": "8939dc2abbd8d92069060dd81371e10a9786f715",
      "parents": [
        "4af81491760eac832f5d693ab696e54d891becf5"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Wed Mar 22 04:32:37 2017"
      },
      "committer": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Wed Mar 22 04:32:37 2017"
      },
      "message": "ignore direct launch requests\n\nIf we get launched by something other than the files app, ignore it\nand log a note for developers.  Otherwise we\u0027d throw random errors.\n\nChange-Id: Ife1497383e07924ef6daf25a8d6eaf121ab5277f\n"
    },
    {
      "commit": "4af81491760eac832f5d693ab696e54d891becf5",
      "tree": "098849c0c0e9f51c8d2f5716afb435a4dd0c2865",
      "parents": [
        "17f8da6cf2652f1c2556f0ed3d185e9698156516"
      ],
      "author": {
        "name": "Kazuki Takise",
        "email": "takise@google.com",
        "time": "Tue Mar 21 05:56:19 2017"
      },
      "committer": {
        "name": "Kazuki Takise",
        "email": "takise@google.com",
        "time": "Tue Mar 21 05:56:19 2017"
      },
      "message": "Unload NaCL module when it\u0027s not necessary.\n\nUnload the NaCL module when there is no mounted volume and no ongoing\nmounting process. To check whether a mounting process is going on,\nthe counter is added that represents the number of mounting process.\nThis counter is incremented and decremented in EnsureVolumeLoaded()\nand onLaunched(), which are the start points of mounting process.\n\nBUG\u003d517741\nTEST\u003dmanually tested\n\nChange-Id: I9274d445cd36bfd4c0fe551641cecf4fbbf09c9d\n"
    },
    {
      "commit": "ba63d3d4a65b158a0a44e45fbc93c5a0966edb84",
      "tree": "332a79cdeed1ad9fa7a3186495e1fdba07810a99",
      "parents": [
        "17f8da6cf2652f1c2556f0ed3d185e9698156516"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Mon Mar 20 22:22:18 2017"
      },
      "committer": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Mon Mar 20 22:31:03 2017"
      },
      "message": "create the zip file automatically\n\nChange-Id: I96bb6edc689f707d87fc3ef576a7099155d72c8d\n"
    },
    {
      "commit": "df40349c29b393543289c9332738c49efc4c2cba",
      "tree": "ab5f1127bc9446c97e8dcbae765474a50824d997",
      "parents": [
        "17f8da6cf2652f1c2556f0ed3d185e9698156516"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Mon Mar 20 10:18:26 2017"
      },
      "committer": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Mon Mar 20 10:18:26 2017"
      },
      "message": "update gitignore files\n\nChange-Id: I98b6b8d788bef77d60b2b06e3a46dc363017d5c6\n"
    },
    {
      "commit": "17f8da6cf2652f1c2556f0ed3d185e9698156516",
      "tree": "a276bae724b04b3daa5da0f83ca862b82a82f809",
      "parents": [
        "3ee5d5ab27f339c812cdd6049ba2c971849801f5"
      ],
      "author": {
        "name": "Kazuki Takise",
        "email": "takise@google.com",
        "time": "Tue Jan 17 05:20:05 2017"
      },
      "committer": {
        "name": "Kazuki Takise",
        "email": "takise@google.com",
        "time": "Tue Jan 17 05:20:05 2017"
      },
      "message": "double-clicking an already-mounted .zip file should open the archive\n\nPreviously, when .zip file that was already mounted was double-clicked,\nzip unpacker just showed an error message. We want to avoid showing the\nerror and file manager to navigate to the volume already mounted.\n\nBUG\u003d647985\nTEST\u003dmanually tested as the issue describes\n\nChange-Id: I20faba9bc4049fcb821e7608ffb628f11e39282f\n"
    },
    {
      "commit": "3ee5d5ab27f339c812cdd6049ba2c971849801f5",
      "tree": "fc8f0dfa64974d3e4fa6db6292a54765d65957fb",
      "parents": [
        "7c41f947d28f78122fd4cdd995d101b29c43a471"
      ],
      "author": {
        "name": "Mihail Costea",
        "email": "cmihail@chromium.org",
        "time": "Fri Aug 05 01:17:58 2016"
      },
      "committer": {
        "name": "Mihail Costea",
        "email": "cmihail@chromium.org",
        "time": "Fri Aug 05 01:17:58 2016"
      },
      "message": "Fix libarchive build as naclports was moved to webports.\n\nBUG\u003d\n\nChange-Id: I8a369abf399471b8366442e12edf71d486bd6c23\n"
    },
    {
      "commit": "7c41f947d28f78122fd4cdd995d101b29c43a471",
      "tree": "a5754cd4ef43780526acf845f0b75c272e00a7fb",
      "parents": [
        "61d2406cf5caf3a8d7bd9e7c0f432e78516aa2da"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Wed Mar 16 03:22:20 2016"
      },
      "committer": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Thu Mar 17 04:24:44 2016"
      },
      "message": "Update code.google.com URLs\n\nChange-Id: Ib662549029cd4d65d172e4f46dbea2c8e653c468\n"
    },
    {
      "commit": "61d2406cf5caf3a8d7bd9e7c0f432e78516aa2da",
      "tree": "cd1f4efc8b4e80eb1cd61ab42d90033ea5e959ec",
      "parents": [
        "adf6924bb0ae66971e9ec6999e6ea7e832e445d9",
        "eb175aa312db2b870dbd761d74159116f57674bb"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Wed Mar 02 05:53:05 2016"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Mar 02 05:53:05 2016"
      },
      "message": "Merge \"libarchive-fork: pass explicit disable flags for libs\""
    },
    {
      "commit": "adf6924bb0ae66971e9ec6999e6ea7e832e445d9",
      "tree": "fa9305bbe662b12a24fd8644ddc3a74433a21c7b",
      "parents": [
        "32cc1caa80b844c70741633ea5e7f9e197634bad",
        "df60e3aaa1fc79d1e77f77c29df43b94b725bfc6"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Wed Mar 02 05:52:25 2016"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Mar 02 05:52:25 2016"
      },
      "message": "Merge \"README: improve build insns\""
    },
    {
      "commit": "df60e3aaa1fc79d1e77f77c29df43b94b725bfc6",
      "tree": "9b5b24b41e56ecc82ec5228bd1b5fca2a7b0a265",
      "parents": [
        "57af26ba120914d80c6a61288c0e4808d9b0381a"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Sat Feb 27 21:00:17 2016"
      },
      "committer": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Tue Mar 01 17:51:05 2016"
      },
      "message": "README: improve build insns\n\nChange-Id: I469c95eb64882ac487526b9a5d7e4a76859b4da0\n"
    },
    {
      "commit": "eb175aa312db2b870dbd761d74159116f57674bb",
      "tree": "0f657e340e46a7624f22be9a7b945317bcc962cf",
      "parents": [
        "57af26ba120914d80c6a61288c0e4808d9b0381a"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Tue Mar 01 06:22:29 2016"
      },
      "committer": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Tue Mar 01 06:22:29 2016"
      },
      "message": "libarchive-fork: pass explicit disable flags for libs\n\nIf you build more libs with your NaCl toolchain, the libarchive build\nwill autodetect those libraries and automatically enable support for\nthem.  The link will fail later on because it expects things like bz2\nand lzma, but we didn\u0027t add those -l libs.  It also increases size.\nAdd explicit disable flags for all the features we don\u0027t use.\n\nChange-Id: I7a1cba846127018cccf112790d8c979b0dce31e5\n"
    },
    {
      "commit": "32cc1caa80b844c70741633ea5e7f9e197634bad",
      "tree": "62558e05de342c8e693f4efe33af9b66aeaae796",
      "parents": [
        "57af26ba120914d80c6a61288c0e4808d9b0381a"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Sun Feb 28 18:17:27 2016"
      },
      "committer": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Tue Mar 01 04:37:23 2016"
      },
      "message": "polymer: update bower in package list\n\nChange-Id: Iaa79c18a89ceecfd5fb8bb8af35bfc2d449a7dae\n"
    },
    {
      "commit": "57af26ba120914d80c6a61288c0e4808d9b0381a",
      "tree": "c951d64b0ae88969aed6393a4db89733c7930e3a",
      "parents": [
        "8ab441d58316a715a651b1f3e9da019262331c96",
        "2d4e0cd6624b7a41fcedeab39adc2e21f6b3167d"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Tue Mar 01 04:24:59 2016"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Mar 01 04:24:59 2016"
      },
      "message": "Merge \"use local npm installs\""
    },
    {
      "commit": "8ab441d58316a715a651b1f3e9da019262331c96",
      "tree": "d91bc5a7fcec75c4d5a23e94b616b0440d46eaf9",
      "parents": [
        "bb74ba6a1e23e8bbb6cd18a6b9e4f06d31bdddd9",
        "bc6bfc38123d21d04f7f40105327e5804dc40bfd"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Tue Mar 01 04:24:49 2016"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Mar 01 04:24:49 2016"
      },
      "message": "Merge \"libarchive-fork: add some more fixes\""
    },
    {
      "commit": "bc6bfc38123d21d04f7f40105327e5804dc40bfd",
      "tree": "f1de19bbb00f67819ffb6ad292ea16d07aa95f62",
      "parents": [
        "ff5718f78fc0e8b32252ca2f506730c2fe12cc57"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Sun Feb 28 18:13:14 2016"
      },
      "committer": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Mon Feb 29 04:27:43 2016"
      },
      "message": "libarchive-fork: add some more fixes\n\nSome of these are upstream already.  Each hunk is documented.\n\nChange-Id: Iaff73daa780b5d893ee2802bb28927036db4ac4e\n"
    },
    {
      "commit": "bb74ba6a1e23e8bbb6cd18a6b9e4f06d31bdddd9",
      "tree": "78f7d42f5375c998ca87a56dcf3d8aa74e7fc6f7",
      "parents": [
        "ff5718f78fc0e8b32252ca2f506730c2fe12cc57"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Sat Feb 27 20:42:33 2016"
      },
      "committer": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Mon Feb 29 04:27:21 2016"
      },
      "message": "README: convert to markdown\n\nNow that we use gitiles, convert the README to markdown so it renders\nnicely as the homepage.\n\nChange-Id: Ia3ae542e03606e54cf8fb4a6b03026c0397070c4\n"
    },
    {
      "commit": "2d4e0cd6624b7a41fcedeab39adc2e21f6b3167d",
      "tree": "61e259739ffdb049eb7da1abce32a80e9e7f65e1",
      "parents": [
        "ff5718f78fc0e8b32252ca2f506730c2fe12cc57"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Sat Feb 27 20:23:21 2016"
      },
      "committer": {
        "name": "Mike Frysinger",
        "email": "vapier@chromium.org",
        "time": "Sat Feb 27 20:56:10 2016"
      },
      "message": "use local npm installs\n\nThe current build implicitly requires bower/vulcanize to be installed\nglobally.  This can cause issues due to version skews with other pkgs\ninstalled on the system.  This is especially true as unpacker currently\nrequires old versions of vulcanize.\n\nWe already do this with bower packages too.\n\nChange-Id: Ice00625e7ca586c806c072abcb468518b69f5c70\n"
    },
    {
      "commit": "ff5718f78fc0e8b32252ca2f506730c2fe12cc57",
      "tree": "abde177fbf3e594d57f0e8f4cc73f33b2bd81288",
      "parents": [
        "a1c3d938ba8c6c3fecb9d6d5c7ae2ed20a6fc8ad"
      ],
      "author": {
        "name": "Mihail Costea",
        "email": "cmihail@chromium.org",
        "time": "Fri Sep 04 01:09:47 2015"
      },
      "committer": {
        "name": "Mihail Costea",
        "email": "cmihail@chromium.org",
        "time": "Fri Sep 04 01:09:54 2015"
      },
      "message": "Solve remaining warnings related to the closure compiler, like\npassphrase dialog warnings about global this and undefined properties\non this (i.e. $) and the chrome.app.window.create type check.\n\nAlso use non-null Objects on custom defined types that should not\nsupport null Objects.\n\nChange-Id: I3582a2539e43eb144b5ba0df9d2700a95f21b0e8\n"
    },
    {
      "commit": "a1c3d938ba8c6c3fecb9d6d5c7ae2ed20a6fc8ad",
      "tree": "c56a7153c2d5d8db2e40a6923456fdd5f93978e9",
      "parents": [
        "e4901d7475b6531c5740ee8952cf61be73cd9fcc",
        "a049f5bf0ed4ec10f5cddbae5b667334fee09edd"
      ],
      "author": {
        "name": "Mihail Costea",
        "email": "cmihail@chromium.org",
        "time": "Fri Aug 28 01:11:01 2015"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Aug 28 01:11:01 2015"
      },
      "message": "Merge \"Add JS compiler for checking types.\""
    },
    {
      "commit": "a049f5bf0ed4ec10f5cddbae5b667334fee09edd",
      "tree": "daa34228aed7c885485dd889bae5d7c13f77f66b",
      "parents": [
        "f4b9ee17f1e2f8f8b15ae8d73f7c3847e47c693a"
      ],
      "author": {
        "name": "Mihail Costea",
        "email": "cmihail@chromium.org",
        "time": "Fri Aug 21 06:30:26 2015"
      },
      "committer": {
        "name": "Mihail Costea",
        "email": "cmihail@chromium.org",
        "time": "Thu Aug 27 01:27:07 2015"
      },
      "message": "Add JS compiler for checking types.\n\nAdd external dependencies to js/externs.js so that JS compiler checks\nwork correctly.\n\nStill need to fix warnings regarding Polymer.\n\nChange-Id: I9accec1d62f9e98f950ce30aa2cc5f38c63d09cb\nBUG\u003dNone\n"
    },
    {
      "commit": "e4901d7475b6531c5740ee8952cf61be73cd9fcc",
      "tree": "91c6456a48a135c7d7cb592fe7b17ddb428cc0af",
      "parents": [
        "f4b9ee17f1e2f8f8b15ae8d73f7c3847e47c693a"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@google.com",
        "time": "Tue Aug 18 07:42:11 2015"
      },
      "committer": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@google.com",
        "time": "Fri Aug 21 07:57:51 2015"
      },
      "message": "Fix unmounting archives when the source file is gone.\n\nThe previous logic worked if the extension was restoring. However if it\u0027s\nalready loaded, then reading would fail without unmounting.\n\nThis CL fixes the issue by adding an unmounting call when reading a chunk\nfails due to a (possibly) missing file.\n\nAlso, startup logic is removed, as it\u0027s not needed to be handled anymore.\nSome remaining code caused a JS error on startup, as the registered method\nwas undefined.\n\nTEST\u003dTested manually.\nBUG\u003dNone\n\nChange-Id: I0339abe6e338afdb3a1b08b88ff8f765a86467ef\n"
    },
    {
      "commit": "f4b9ee17f1e2f8f8b15ae8d73f7c3847e47c693a",
      "tree": "9cf95368573ee254c506dcae169ce4756e4ad76d",
      "parents": [
        "fee93edb40cad35838e11ba3205233df3475dde8"
      ],
      "author": {
        "name": "Mihail Costea",
        "email": "cmihail@chromium.org",
        "time": "Tue Aug 04 21:44:18 2015"
      },
      "committer": {
        "name": "Mihail Costea",
        "email": "cmihail@chromium.org",
        "time": "Wed Aug 05 17:35:12 2015"
      },
      "message": "Fix JS readability issues.\n\n- introduce a global namespace for the project\n- introduce custom types for fileSystemId and requestId\n- mark most classes as non-nulable (i.e. !Object instead of Object\n- reintend some lines in order to improve readability (i.e. reintend of\n  Promise then and catch methods)\n\nAlso fix JS tests related to passphrase.\n\nChange-Id: Iaad22ac2923c57490ead36d16951cbece800dce6\n"
    },
    {
      "commit": "fee93edb40cad35838e11ba3205233df3475dde8",
      "tree": "fcbdd486c9ca2be1f7aa2de0071ccbf7d6e99721",
      "parents": [
        "0f0133265bdc19701c4740deb151ac976f6766a1",
        "e3ea4a657ea4196812b325c94fc37808f6c1e319"
      ],
      "author": {
        "name": "Daichi Hirono",
        "email": "hirono@chromium.org",
        "time": "Mon Jun 22 02:22:42 2015"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jun 22 02:22:43 2015"
      },
      "message": "Merge \"Add .gitignore for generated files.\""
    },
    {
      "commit": "e3ea4a657ea4196812b325c94fc37808f6c1e319",
      "tree": "26c6af6693917f714d44d0f88504a63f26791884",
      "parents": [
        "3001238554a988ed3e8e627efe2da1f9e4c8d8ef"
      ],
      "author": {
        "name": "Daichi Hirono",
        "email": "hirono@chromium.org",
        "time": "Fri Jun 19 01:41:09 2015"
      },
      "committer": {
        "name": "Daichi Hirono",
        "email": "hirono@chromium.org",
        "time": "Fri Jun 19 01:41:09 2015"
      },
      "message": "Add .gitignore for generated files.\n\nBUG\u003dNone\n\nChange-Id: I29938d3976302ebe9e20f995e1613b0fd69fbc3e\n"
    },
    {
      "commit": "0f0133265bdc19701c4740deb151ac976f6766a1",
      "tree": "9844e9dd06f8661daae663afb8b65665267a9916",
      "parents": [
        "3001238554a988ed3e8e627efe2da1f9e4c8d8ef"
      ],
      "author": {
        "name": "Daichi Hirono",
        "email": "hirono@chromium.org",
        "time": "Thu Jun 18 09:07:21 2015"
      },
      "committer": {
        "name": "Daichi Hirono",
        "email": "hirono@chromium.org",
        "time": "Fri Jun 19 01:25:43 2015"
      },
      "message": "Add missing error callback.\n\nPreviously it does not pass a error callback to FileEntry#file, so if it raises\nan error, the promise returned by loadVolume_ is never fulfilled / rejected.\n\nBUG\u003dNone\n\nChange-Id: I029a0f273083bfdc177a784b6d2602dfa6e1b953\n"
    },
    {
      "commit": "3001238554a988ed3e8e627efe2da1f9e4c8d8ef",
      "tree": "584f19faaf72b0395975e2d3eed3d636eaadf3ee",
      "parents": [
        "f718b27c78a86fa6dc8258c45178d4d4a39ffe8b"
      ],
      "author": {
        "name": "Daichi Hirono",
        "email": "hirono@google.com",
        "time": "Mon Jun 15 02:34:30 2015"
      },
      "committer": {
        "name": "Daichi Hirono",
        "email": "hirono@google.com",
        "time": "Mon Jun 15 02:38:56 2015"
      },
      "message": "Add codereview settings.\n\nChange-Id: Ie80e8cff25b6dcea0161b234d84fb2f1e4824071\n"
    },
    {
      "commit": "f718b27c78a86fa6dc8258c45178d4d4a39ffe8b",
      "tree": "e5f26b8ed3a33f0067bf2f26e29e2e8e56dd86ad",
      "parents": [
        "a4d5e2cd838bacbd39e358e5fd7764d51d0881e3"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@google.com",
        "time": "Thu May 28 06:56:03 2015"
      },
      "committer": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@google.com",
        "time": "Thu May 28 08:20:57 2015"
      },
      "message": "Roll out new libarchive.\n\nThis CL fixes opening encrypted archives for same cases by rolling the new\nfixed libarchive version.\n\nAlong the way the test\u0027s make file have been updated to work with the ppapi\nin version 43.\n\nTEST\u003dTested manually on a compressed with AES pdf file.\nBUG\u003dchromium:465912\n\nChange-Id: Ic44d7fa29a8e192125bb37f05d1062af9ede071f\n"
    },
    {
      "commit": "a4d5e2cd838bacbd39e358e5fd7764d51d0881e3",
      "tree": "86f3c01c4ef4423a485648db16ad531247dfb033",
      "parents": [
        "73cd1435e9927c9c013281bc86b70cc5e17bdd6f"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@google.com",
        "time": "Fri May 15 06:31:35 2015"
      },
      "committer": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@google.com",
        "time": "Fri May 15 06:31:35 2015"
      },
      "message": "Update the extension icons.\n\nTEST\u003dTested manually by installing it.\nBUG\u003dchromium:460336\n\nChange-Id: Ibc25d95e0b43b2d3999a5dc4ad5b1e44b6ed5cbe\n"
    },
    {
      "commit": "73cd1435e9927c9c013281bc86b70cc5e17bdd6f",
      "tree": "da2637e56522ec99cfaf8991def8f47026869425",
      "parents": [
        "2dbe697e6ef8d01d873673b26b55a7796f3880bc"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@google.com",
        "time": "Thu May 14 02:36:45 2015"
      },
      "committer": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@google.com",
        "time": "Thu May 14 02:43:33 2015"
      },
      "message": "Update the manfiest.\n\nThis CL updates the manifest to work with the newest version of the File System\nProvider API.\n\nTEST\u003dTested manually on Chrome 44.0.2400.0.\nBUG\u003dNone\n\nChange-Id: I5fe2d9616b0c74917f9784bf1c126ec421ffd0ce\n"
    },
    {
      "commit": "2dbe697e6ef8d01d873673b26b55a7796f3880bc",
      "tree": "4f774903d858c0ec805b13cc996741b18fd23656",
      "parents": [
        "aaa9b41392332c97e5fdb45ff9bf23a435319f3c",
        "a26d07b0bb7687d155e816e3b71635196ea4f981"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Mon Feb 16 07:25:17 2015"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Feb 16 07:25:18 2015"
      },
      "message": "Merge \"Enable AES decryption.\""
    },
    {
      "commit": "a26d07b0bb7687d155e816e3b71635196ea4f981",
      "tree": "12f1f2c9c5a1d235f04572f790e15b54a7fe2c0a",
      "parents": [
        "58b8374afd732f5f8adaf3f867a5cc012b911a57"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Mon Feb 16 07:19:18 2015"
      },
      "committer": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Mon Feb 16 07:21:23 2015"
      },
      "message": "Enable AES decryption.\n\nTEST\u003dTested manually with a AES and legacy encryptions.\nBUG\u003dchromium:167686\n\nChange-Id: I15e7b70aabec13c9c04c82421b7468f8dd3b5c59\n"
    },
    {
      "commit": "aaa9b41392332c97e5fdb45ff9bf23a435319f3c",
      "tree": "cf32a7ec00d4a062ce2753787f0da17ee20d3f10",
      "parents": [
        "a0d597701fe07924ffea2aed88edb3684f0f733c",
        "58b8374afd732f5f8adaf3f867a5cc012b911a57"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Mon Feb 16 05:39:14 2015"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Feb 16 05:39:15 2015"
      },
      "message": "Merge \"Update Chrome version requirements for the newest unpacker.\""
    },
    {
      "commit": "58b8374afd732f5f8adaf3f867a5cc012b911a57",
      "tree": "45447b9841082e1c78a8e0bdd9acb10ef7a2e2e9",
      "parents": [
        "24fb4593eb9ea605c8b83c70227c5930bbf58bad"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Mon Feb 16 05:01:56 2015"
      },
      "committer": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Mon Feb 16 05:03:46 2015"
      },
      "message": "Update Chrome version requirements for the newest unpacker.\n\nThe new code relies on some recent changes in FSP API.\n\nTEST\u003dChecked with git tag --contains for branches which contain required\n    changes.\nBUG\u003dchromium:167686\n\nChange-Id: I31b780300dc0c812df65d54de88d288325024706\n"
    },
    {
      "commit": "a0d597701fe07924ffea2aed88edb3684f0f733c",
      "tree": "c05a910578a23fe8803a5c3db7d45935fbd7bf09",
      "parents": [
        "24fb4593eb9ea605c8b83c70227c5930bbf58bad"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Mon Feb 16 02:45:34 2015"
      },
      "committer": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Mon Feb 16 02:46:46 2015"
      },
      "message": "Add translations for password support.\n\nTEST\u003dNot related.\nBUG\u003dchromium:167686\n\nChange-Id: I6b1d61bcc2a851f6a670383c17372fb732bc95e4\n"
    },
    {
      "commit": "24fb4593eb9ea605c8b83c70227c5930bbf58bad",
      "tree": "a0ba92601e6f3e5527ae4ab0dc9207d01b26a101",
      "parents": [
        "176279a0e9839f81a9ea4f178d57f4cdb550a8db"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Tue Feb 10 08:01:20 2015"
      },
      "committer": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Tue Feb 10 08:07:56 2015"
      },
      "message": "Unmount on passphrase failure.\n\nIf a passphrase dialog is cancelled, then unmount the archive, as otherwise\nit becomes unusable (accessing files causes errors).\n\nNote, that ideally cancelling a passphrase dialog should only cancel it for the\nfile being accessed, and accessing other files should invoke the dialog again.\nThis is however impossible for now due to a bug in libarchive.\n\nTEST\u003dTested manually.\nBUG\u003dNone\n\nChange-Id: Ia72d5044ac18f66180e4a064e0f64031809c33a9\n"
    },
    {
      "commit": "176279a0e9839f81a9ea4f178d57f4cdb550a8db",
      "tree": "c1fb7f321ce7acf5f0958b7c6bfd766213fff71c",
      "parents": [
        "f4d0fd3cd2c314be555c9ba44a3cb95a6650790a"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Tue Feb 10 04:46:40 2015"
      },
      "committer": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Tue Feb 10 05:09:16 2015"
      },
      "message": "Update strings for passprases.\n\nTEST\u003dTested manually.\nBUG\u003dchromium:167686\n\nChange-Id: Ice7b7b1249d2104698484de60330804421ae9187\n"
    },
    {
      "commit": "f4d0fd3cd2c314be555c9ba44a3cb95a6650790a",
      "tree": "7f91729e75874c067c3bee6c83e318b5222395c3",
      "parents": [
        "410b4dd93a346b2f82db6939f0d53bd20430a078"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Fri Feb 06 07:05:04 2015"
      },
      "committer": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Tue Feb 10 05:04:23 2015"
      },
      "message": "Implement the PassphraseManager class.\n\nThis CL cleans up the previous initial code for handling passphrases by\nextracting the code to a separate class and adding tests.\n\nTEST\u003dAll js tests pass, especially passphrase_manager_test.js.\nBUG\u003dchromium:167686\n\nChange-Id: I65b35d07f87bb550319168b20dcb979b126b8067\n"
    },
    {
      "commit": "410b4dd93a346b2f82db6939f0d53bd20430a078",
      "tree": "d9181510cc6f16203043d09c4948860e0789a438",
      "parents": [
        "2ed15338bbb5932ce2c67e9d758ee49b13e98e46"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Fri Feb 06 07:56:28 2015"
      },
      "committer": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Mon Feb 09 04:01:30 2015"
      },
      "message": "Wire the new make files.\n\nStart using the make files created with the previous CL. Also, run tests only\nwith Debug build.\n\nTEST\u003dAll tests pass.\nBUG\u003dNone\n\nChange-Id: Ibbe4fb88613354e9dec1a695c5b479d16ff4c3b4\n"
    },
    {
      "commit": "2ed15338bbb5932ce2c67e9d758ee49b13e98e46",
      "tree": "70b52ebd74089af96d349de8b1e26c4c6d50cd8c",
      "parents": [
        "3296f4cfff69da4505a388ae1edb60722961dc94"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Mon Feb 09 01:57:08 2015"
      },
      "committer": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Mon Feb 09 03:15:57 2015"
      },
      "message": "Clean up makefiles.\n\nBefore, js tests were run against an extension which partly build (eg. Polymer\nnot vulcanized). As a result it was impossible to use the Polymer part.\n\nThis patch cleans up the process of building the extension. First of all, the\nrelease.sh script has been moved to make files. Secondly, extensions are always\nbuilt to either release or debug directory. Unused gdb targets were removed,\nbut clean targets were added.\n\nFinally, tests started using the fully built extension, including a vulcanized\npolymer.\n\nTEST\u003dAll current tests pass.\nBUG\u003dNone\n\nChange-Id: I84d24287dc195d8cb7adbcc64a8d7a8bd526a9f5\n"
    },
    {
      "commit": "3296f4cfff69da4505a388ae1edb60722961dc94",
      "tree": "77ff37d8552ec2e3edfa52bce890280d410a8a66",
      "parents": [
        "363ec685a10a4993018fd4ce85501743c88b8a0c",
        "76eaaa5f8971a78ff9bbbceff0631bdb60af7b43"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Fri Feb 06 07:07:00 2015"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 06 07:07:01 2015"
      },
      "message": "Merge \"Remember password.\""
    },
    {
      "commit": "76eaaa5f8971a78ff9bbbceff0631bdb60af7b43",
      "tree": "3152ba21b90ab80efdb9bcb3453fee2ad9d95e14",
      "parents": [
        "0b74d9cfcb1649ce697590b72fc26f8c398b0f16"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Thu Feb 05 07:09:41 2015"
      },
      "committer": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Fri Feb 06 07:06:09 2015"
      },
      "message": "Remember password.\n\nThis CL adds a basic support for remembering the password.\n\nTEST\u003dAll js tests pass.\nBUG\u003dchromium:167686\n\nChange-Id: I36af6506ee9fb4b69a5e33ca55a9c03371dcfd05\n"
    },
    {
      "commit": "363ec685a10a4993018fd4ce85501743c88b8a0c",
      "tree": "31c122e3546e43747c00a801e2427c7da49b5f67",
      "parents": [
        "0b74d9cfcb1649ce697590b72fc26f8c398b0f16",
        "ce7d66f9bff16d95928742a28bb300d9d5180cbb"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Fri Feb 06 03:32:19 2015"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 06 03:32:19 2015"
      },
      "message": "Merge \"Make the password dialog draggable.\""
    },
    {
      "commit": "ce7d66f9bff16d95928742a28bb300d9d5180cbb",
      "tree": "15fd702728a77c1b46ee849479027037fcf9b027",
      "parents": [
        "e178a50caea5445684f00d41ade6607d2013a77f"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Fri Feb 06 02:16:36 2015"
      },
      "committer": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Fri Feb 06 03:28:45 2015"
      },
      "message": "Make the password dialog draggable.\n\nTEST\u003dTested manually by invoking the password dialog.\nBUG\u003dchromium:449962\n\nChange-Id: I2771795c49981e0086f4e0d750edd0f21ce55078\n"
    },
    {
      "commit": "0b74d9cfcb1649ce697590b72fc26f8c398b0f16",
      "tree": "281948955bd9a9f1a93b7324d9c55131c78429c1",
      "parents": [
        "e178a50caea5445684f00d41ade6607d2013a77f"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Thu Feb 05 02:42:04 2015"
      },
      "committer": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Fri Feb 06 02:03:44 2015"
      },
      "message": "Stop remembering opened files in local storage.\n\nWe can get the list of opened files from get().\n\nTEST\u003dAll js tests pass.\nBUG\u003dNone\n\nChange-Id: Ia41772ccaf068cc95eae9022fc944c5962c6de33\n"
    },
    {
      "commit": "e178a50caea5445684f00d41ade6607d2013a77f",
      "tree": "1ea56f1ed9710180e1b4f433304359955c7b6718",
      "parents": [
        "2b6c34e2d475966264da35b23e2725d33b537a6e"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Thu Feb 05 02:12:21 2015"
      },
      "committer": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Thu Feb 05 02:29:10 2015"
      },
      "message": "Migrate from getAll() to get().\n\nUse the new method for better performance.\n\nTEST\u003dAll automated tests pass.\nBUG\u003dNone\n\nChange-Id: I470859c6929b9500e40e1f3333cca053ba0c0487\n"
    },
    {
      "commit": "2b6c34e2d475966264da35b23e2725d33b537a6e",
      "tree": "4f269492051a81c688271a4cbd647b192e882820",
      "parents": [
        "c761916a444d48d485b6a8d7d54309a0c2b55791"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Wed Jan 14 02:01:50 2015"
      },
      "committer": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Thu Jan 15 05:02:12 2015"
      },
      "message": "Remove pending opened files queue.\n\nSince the feature is moved to FSP API, there it no need to keep the queue\nin the extension.\n\nTEST\u003drun_js_tests.sh + tested manually with suspending/resuming.\nBUG\u003dNone\n\nChange-Id: Ia2356a1360304ea25e451f22f1b5387082e975ab\n"
    },
    {
      "commit": "c761916a444d48d485b6a8d7d54309a0c2b55791",
      "tree": "8a81966259ca41dbb9739f678237e737d659dc50",
      "parents": [
        "28430d61c64bb15c67d64e76522c0dc86e774fe6"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Tue Jan 13 08:09:16 2015"
      },
      "committer": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Tue Jan 13 11:07:44 2015"
      },
      "message": "Fix name of the root metadata.\n\nRecently the FSP API started checking for invalid names in the file name.\nThis patch renames the root entry name from \u0027/\u0027 to \u0027\u0027.\n\nTEST\u003drun_js_tests.sh + manually testsed.\nBUG\u003dchromium:448300\n\nChange-Id: Ie62fe0bb802dfd3fc77777036dfc015566a5e193\n"
    },
    {
      "commit": "28430d61c64bb15c67d64e76522c0dc86e774fe6",
      "tree": "7fc90086d6efa24fc9f1a012372a85cd71f965aa",
      "parents": [
        "a6c1c67de4cce8545f7393f9b2e97d49cf273308"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Fri Nov 28 08:25:33 2014"
      },
      "committer": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Fri Dec 26 00:26:42 2014"
      },
      "message": "Add support for passphrases.\n\nThis patch adds support for encrypted archives. Note, that remembering\npassphrases is not implemented yet.\n\nTEST\u003dPartly tested by integration tests.\nBUG\u003dchromium:167686\n\nChange-Id: I9c521b61f67c36a7596aab6961f837dc501c022e\n"
    },
    {
      "commit": "a6c1c67de4cce8545f7393f9b2e97d49cf273308",
      "tree": "610c221e1745cc489cde8cf645fbdba5ff1ba9f9",
      "parents": [
        "ba1fff3f10eedd643d77e54e7cddc9df435458aa"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Thu Dec 25 08:19:02 2014"
      },
      "committer": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Thu Dec 25 08:19:02 2014"
      },
      "message": "Fix license headers.\n\nThe extension lives in Chromium OS repos, so the header should be Chrome OS,\nespecially to pass the presubmit checks which used to be skipped until now.\n\nTEST\u003dPresubmit checks pass.\nBUG\u003dNone\n\nChange-Id: I634ac8c2accde48c1961c6df4d48d36eabc65012\n"
    },
    {
      "commit": "ba1fff3f10eedd643d77e54e7cddc9df435458aa",
      "tree": "db22c7ae5a2cd183bb03bc8bb3f809c400156a03",
      "parents": [
        "ef4a2e9a5e542e5e61d6f5b28a0f2c496c8086b9"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Thu Dec 18 01:44:19 2014"
      },
      "committer": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Thu Dec 18 02:29:55 2014"
      },
      "message": "Roll out new libarchive-fork version with the better EOCD detection.\n\nThis CL updates the third party pkg_info to include the recent fix in the\nlibarchive\u0027s fork.\n\nTEST\u003dTested on an archive with double EOCD.\nBUG\u003dchromium:435384\n\nChange-Id: If666f7a39c7d2eb2757b393b088f87f613f365b6\n"
    },
    {
      "commit": "ef4a2e9a5e542e5e61d6f5b28a0f2c496c8086b9",
      "tree": "81e254250f14d99905dd6782a0057100d4211ca9",
      "parents": [
        "26818adbd2183606b6f31cd027659ad27fb69c3a"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Thu Dec 18 01:08:45 2014"
      },
      "committer": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Thu Dec 18 01:08:45 2014"
      },
      "message": "Upload the newest Italian strings.\n\nOther ones were uploaded earlier.\n\nTEST\u003dNone. Strings only.\nBUG\u003dNone\n\nChange-Id: I271270942872f31b14da5bfc5e5263965452e68b\n"
    },
    {
      "commit": "26818adbd2183606b6f31cd027659ad27fb69c3a",
      "tree": "8e66a10734d3edb147cddca9e8e4b3b05d2f3d67",
      "parents": [
        "8a45c90f0dcd2b39037d3dbd8aec894f37e48d40"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Mon Dec 15 02:34:07 2014"
      },
      "committer": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Mon Dec 15 02:36:30 2014"
      },
      "message": "Update strings.\n\nThis CL updates strings with the newest versions. Note, that the Italian new\nstrings will be added in a separate patch, as they are not available yet.\n\nTEST\u003dCompiles and the extension mounts without warnings.\nBUG\u003dNone\n\nChange-Id: I3d929b72d57b652cfbd24523edd916ecbd07af4b\n"
    },
    {
      "commit": "8a45c90f0dcd2b39037d3dbd8aec894f37e48d40",
      "tree": "88479a92eb75e16b7c106219f74ef7d97ef64e9c",
      "parents": [
        "fa11dfce5c1095e90c54b4904a341afc118fa517"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Wed Dec 10 06:13:41 2014"
      },
      "committer": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Wed Dec 10 06:13:41 2014"
      },
      "message": "Add missing libiconv dependency for libarchive.\n\nTEST\u003dVerified manually that now everything compiles.\nBUG\u003dNone\n\nChange-Id: I14cb90420fce08d4bbfd9e4bd459bc1803af692d\n"
    },
    {
      "commit": "fa11dfce5c1095e90c54b4904a341afc118fa517",
      "tree": "6be40f8f907f3aa8d2a83d812f6c389aaff5c490",
      "parents": [
        "bfe642832a6a758aea0aadf03528d6af8cb31ae3"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Mon Dec 08 06:32:29 2014"
      },
      "committer": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Mon Dec 08 06:32:29 2014"
      },
      "message": "Update version.\n\nChange-Id: I5fb4cc5c73f90012048967c79629210105dfed84\n"
    },
    {
      "commit": "bfe642832a6a758aea0aadf03528d6af8cb31ae3",
      "tree": "81ab5cdf6ef0e4b08711175a1e13dc76cced5879",
      "parents": [
        "5300407e161411c9dd91c4618e857252b83e4cb8"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Fri Nov 14 02:49:58 2014"
      },
      "committer": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Mon Dec 08 06:07:26 2014"
      },
      "message": "Reuse libarchive instances.\n\nBefore, libarchive instance was created per each operation. That caused\nloading the entire archive for each operation, which was very slow for large\narchives.\n\nThis CL reuses one libarchive instance between operations for better\nperformance. However, to do so a limitation is added to run at most only one\noperation at once, as we have only one libarchive instance.\n\nAlso, support for seeking between headers was added to avoid scanning a lot\nof headers for each operation.\n\nTEST\u003dTested manually.\nBUG\u003dchromium:432759\n\nChange-Id: I1db63ee3ab6e73cf74c34d6ae6924b2cd5f4f146\n"
    },
    {
      "commit": "5300407e161411c9dd91c4618e857252b83e4cb8",
      "tree": "87430067ca83d1c15aa64e5573c8479225536e77",
      "parents": [
        "791d1f8ba08d2b7acea13da5a81c7dafdf26bd08"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Mon Dec 01 06:47:33 2014"
      },
      "committer": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Wed Dec 03 09:39:34 2014"
      },
      "message": "Add default encoding depending on the current display language.\n\nThis patch sets the default header encoding depending on the current display\nlanguage. Note, that UTF-8 will be still used if it\u0027s available in ZIP headers.\n\nNote, that to open eg. Japanese archives encoded with SHIFT-JIS, the UI must\nbe set to Japanese. Otherwise, opening such archive would fail.\n\nTEST\u003dTested manually with Japanese (SHIFT-JIS encoded) archives.\nBUG\u003dchromium:429987\n\nChange-Id: Iec8d76c2964bd7481605d1551e499c779e284f84\n"
    },
    {
      "commit": "791d1f8ba08d2b7acea13da5a81c7dafdf26bd08",
      "tree": "371fe0ab8a7e4acd50aac7a093e11756ba11c40e",
      "parents": [
        "468dbc992c889790b904e4a06cb9cfeb358364a0"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Wed Dec 03 07:22:41 2014"
      },
      "committer": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Wed Dec 03 07:55:14 2014"
      },
      "message": "Use the forked libarchive.\n\nAs not all of the patches are upstreamed, use the forked libarchive.\n\nTEST\u003dTested manually.\nBUG\u003dNone\n\nChange-Id: Ibf525fd1a01b7506139c06778de319606761f105\n"
    },
    {
      "commit": "468dbc992c889790b904e4a06cb9cfeb358364a0",
      "tree": "b0d21dd8eb7224519c471ea3fff3d1306d5a6346",
      "parents": [
        "8957c5cc272de75c84f5e7ba4b89ff59ec85a502"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Tue Dec 02 03:39:48 2014"
      },
      "committer": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Tue Dec 02 03:41:26 2014"
      },
      "message": "Fix JS tests.\n\nRecently added notifications use the notifications API, which needs to be\nstubbed in the integration tests.\n\nTEST\u003dJS tests.\nBUG\u003dNone\n\nChange-Id: I3618f24ebb348f7a2191406ea79bc5cbb92a2e69\n"
    },
    {
      "commit": "8957c5cc272de75c84f5e7ba4b89ff59ec85a502",
      "tree": "ad023890c357d36e9573b4e2ce28f640d97a1986",
      "parents": [
        "b7215a3b8fd46e838ea39012bf547ae3a823c505",
        "dce6ae9f10a09176773d8b7005ccbc29fb93f289"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Mon Dec 01 08:33:31 2014"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Dec 01 08:33:31 2014"
      },
      "message": "Merge \"Add a notification when loading an archive takes long time.\""
    },
    {
      "commit": "dce6ae9f10a09176773d8b7005ccbc29fb93f289",
      "tree": "cc2d94f8e7c262216f461824d0032076d2840220",
      "parents": [
        "5e96a3812ec287f98e353223638e41debfd4dd8b"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Mon Dec 01 04:33:59 2014"
      },
      "committer": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Mon Dec 01 08:26:08 2014"
      },
      "message": "Add a notification when loading an archive takes long time.\n\nThis patch adds a notification telling a user that an archive is being scanned\nif it takes more than one second.\n\nTEST\u003dTested manually on large archives.\nBUG\u003dchromium:432759\n\nChange-Id: I3548be61ad6db9b74215ff1bdedc1d1fa7f57165\n"
    },
    {
      "commit": "b7215a3b8fd46e838ea39012bf547ae3a823c505",
      "tree": "0083bf4624fef54c315b9281d4db645b3f34b492",
      "parents": [
        "5e96a3812ec287f98e353223638e41debfd4dd8b"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Mon Dec 01 02:21:11 2014"
      },
      "committer": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Mon Dec 01 07:52:48 2014"
      },
      "message": "Fix tests.\n\nThis patch fixes the tests so they pass. Two fixes are applied by this CL:\n1. Increase the timeout to 15 seconds, and loading the PNaCL module takes\n   significant time.\n2. Update tests to use the seekable mode for ZIP archives.\n\nTEST\u003dAll C++ and JS tests pass.\nBUG\u003dNone\n\nChange-Id: I98364b47dfead77656a6ad4297536b140bdb464b\n"
    },
    {
      "commit": "5e96a3812ec287f98e353223638e41debfd4dd8b",
      "tree": "78f84ddf2f55c18e6c49735684593dea66adbb36",
      "parents": [
        "52013bbb0c8223f19640c62552f45c1fc3d28ad6"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Mon Dec 01 00:54:31 2014"
      },
      "committer": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Mon Dec 01 00:55:04 2014"
      },
      "message": "Add translations.\n\nThis CL adds translations to multiple languages.\n\nTEST\u003dNone\nBUG\u003dNone\n\nChange-Id: Iecf149a82dcdd952cdf1d366c4ef049fdc89fa63\n"
    },
    {
      "commit": "52013bbb0c8223f19640c62552f45c1fc3d28ad6",
      "tree": "642063c66c2e3cfe58124ab5158cda20b8859f42",
      "parents": [
        "e4f0e9db0f9a4abbed7239640bbf4a6f2f7171fe",
        "40c11a9b8c8ebe1357d594e7aa319f4307ec11bb"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Thu Nov 27 08:54:49 2014"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Nov 27 08:54:50 2014"
      },
      "message": "Merge \"Set the locale to UTF-8.\""
    },
    {
      "commit": "40c11a9b8c8ebe1357d594e7aa319f4307ec11bb",
      "tree": "ad102d932e98c96ba162de69c9e8c879cc65b506",
      "parents": [
        "70618d14c053806048e982f79537a551628c4c82"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Wed Nov 26 02:07:13 2014"
      },
      "committer": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Wed Nov 26 02:07:13 2014"
      },
      "message": "Set the locale to UTF-8.\n\nIn order to make the libarchive conversions in libarchive work correctly,\nwe need to set the current locale to UTF-8.\n\nBUG\u003dchromium:429987\n\nChange-Id: Ieb1530e5fbba280fd8101260e07ae00b22c44bdb\n"
    },
    {
      "commit": "e4f0e9db0f9a4abbed7239640bbf4a6f2f7171fe",
      "tree": "1856d08ea87b20cf864e5bdd47c82fb65db0ce0f",
      "parents": [
        "70618d14c053806048e982f79537a551628c4c82"
      ],
      "author": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Wed Nov 26 01:28:30 2014"
      },
      "committer": {
        "name": "Tomasz Mikolajewski",
        "email": "mtomasz@chromium.org",
        "time": "Wed Nov 26 01:28:30 2014"
      },
      "message": "Fix a typo in strings.\n\nThe typo was in the already mounted message.\n\nBUG\u003d433976\n\nChange-Id: I4eac4d8bf2db713437937e30f85d2d8ac3742c2b\n"
    }
  ],
  "next": "70618d14c053806048e982f79537a551628c4c82"
}
