)]}'
{
  "log": [
    {
      "commit": "848da229e87300a67ea21f0e9782d3c1352f8558",
      "tree": "c5266ab676cfab65fda8fdd411c594903e7ccb66",
      "parents": [
        "2b9640ed5ccf3921a8292408cbcd7664260eed7d"
      ],
      "author": {
        "name": "Vadim Shtayura",
        "email": "vadimsh@google.com",
        "time": "Mon Sep 30 16:40:17 2024"
      },
      "committer": {
        "name": "Vadim Shtayura",
        "email": "vadimsh@google.com",
        "time": "Mon Sep 30 16:40:17 2024"
      },
      "message": "Empty the repository.\n\nIt is no longer used. Its presence triggers security scanners.\nPreserve its history, since it was referenced in Chromium DEPS file.\n\nBUG\u003db/367653456\n"
    },
    {
      "commit": "2b9640ed5ccf3921a8292408cbcd7664260eed7d",
      "tree": "99a0ac032aacb03b413506a1631d26d419904947",
      "parents": [
        "73aac697f47c5ce30c60dc0251461d1600191d71"
      ],
      "author": {
        "name": "Takuto Ikuta",
        "email": "tikuta@chromium.org",
        "time": "Wed Jun 19 00:53:23 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Wed Jun 19 00:53:23 2019"
      },
      "message": "client: use Counter to calculate stats collectly\n\nWe should not uniquefy each elements in the lists.\n\nChange-Id: I70e5e0719c247c638a59fb6d7343658581d520cc\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1664193\nCommit-Queue: Takuto Ikuta \u003ctikuta@chromium.org\u003e\nAuto-Submit: Takuto Ikuta \u003ctikuta@chromium.org\u003e\nReviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 098ad59e700b9f0701cd71a6a5c07a45b58ecb62\n"
    },
    {
      "commit": "73aac697f47c5ce30c60dc0251461d1600191d71",
      "tree": "ce49b74468c2f15cb4e5bfa00cff9056b8d7a3b2",
      "parents": [
        "a0de185b1b120220a95d6b84b2a1b9e39e95396d"
      ],
      "author": {
        "name": "Lei Lei",
        "email": "leilei@chromium.org",
        "time": "Mon Jun 17 14:13:49 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Mon Jun 17 14:13:49 2019"
      },
      "message": "[client]Update utils/tools.py to make it python3 compatible.\n\nIt was missing in crrev.com/c/1637369.\n\nChange-Id: I2b07fe7ca99ee82ab044a6dae3b2d9b20314a7f3\nBug: 942720\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1661146\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nReviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: f8ab799f09a8152e3d276ba85f394e90d0fdc079\n"
    },
    {
      "commit": "a0de185b1b120220a95d6b84b2a1b9e39e95396d",
      "tree": "6633345988e3679c185030c173771ccec1afe608",
      "parents": [
        "ca30e31ee571cfa0658eb7347365f115351dc734"
      ],
      "author": {
        "name": "Lei Lei",
        "email": "leilei@chromium.org",
        "time": "Fri Jun 14 20:53:53 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Fri Jun 14 20:53:53 2019"
      },
      "message": "Reland \"[client] Rename third_party/pyasn1-modules to third_party/pyasn1_modules\"\n\nThis reverts commit bf6abb217a664f0a0d93b25639a1dc48e1c78d0c.\n\nReason for revert: Reland the changes to rename pyasn1-modules to pyasn1_modules, and will fix the issue, which caused severe outage.\n\nOriginal change\u0027s description:\n\u003e Revert \"[client] Rename third_party/pyasn1-modules to third_party/pyasn1_modules\"\n\u003e\n\u003e This reverts commit 1341b4f0cad1d767ed7b51c9380072c50cd1949f.\n\u003e\n\u003e Reason for revert: caused severe outage\n\u003e\n\u003e I suspect it happened to work on the CI because pyasn1_modules\n\u003e happens to be installed on the machine.\n\u003e\n\u003e Bug: 970342\n\u003e\n\u003e Original change\u0027s description:\n\u003e \u003e [client] Rename third_party/pyasn1-modules to third_party/pyasn1_modules\n\u003e \u003e\n\u003e \u003e There is a compile error when \u0027-\u0027 in file path on python3.\n\u003e \u003e\n\u003e \u003e Bug: 942720\n\u003e \u003e Change-Id: Id6ddedcc1469db8014499520015c28ebc9a0945a\n\u003e \u003e Reviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1637363\n\u003e \u003e Reviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\n\u003e \u003e Commit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\n\u003e\n\u003e TBR\u003dmaruel@chromium.org,leilei@chromium.org\n\u003e\n\u003e # Not skipping CQ checks because original CL landed \u003e 1 day ago.\n\u003e\n\u003e Bug: 942720\n\u003e Change-Id: I0c57dbafe81d68c7d283d517f0a8afc41c1348a1\n\u003e Reviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1642224\n\u003e Reviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\n\u003e Commit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\n\nTBR\u003dmaruel@chromium.org,leilei@chromium.org\n\nBug: 970342, 942720\nChange-Id: I2c34f0da62cebc990dd83f161bb9527f49880830\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1656512\nReviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCommit-Queue: Lei Lei \u003cleilei@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 96e160e4a0ac74dbe5019b16dd38eb7dc472aaea\n"
    },
    {
      "commit": "ca30e31ee571cfa0658eb7347365f115351dc734",
      "tree": "b51b97286febc8e62882bfecae7a9ffccc1f6fde",
      "parents": [
        "fe202dfb3887fc5b099b037ffa0337a7d654758e"
      ],
      "author": {
        "name": "Lei Lei",
        "email": "leilei@chromium.org",
        "time": "Fri Jun 14 17:50:18 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Fri Jun 14 17:50:18 2019"
      },
      "message": "[client] Update httplib2 to include both python2 and python3 versions.\n\nBug: 942720\nChange-Id: I0766398a29c127cddab070cef6d8a769647624c4\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1637362\nCommit-Queue: Lei Lei \u003cleilei@chromium.org\u003e\nReviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 5d4cdf0e3f104d0d9c311bb201f09445f4260f99\n"
    },
    {
      "commit": "fe202dfb3887fc5b099b037ffa0337a7d654758e",
      "tree": "4e085f819caa3d254ab65b4a94fd769c598af829",
      "parents": [
        "c398f09f0a06f0d7e68f5d420ea0066e79c1d26e"
      ],
      "author": {
        "name": "Lei Lei",
        "email": "leilei@chromium.org",
        "time": "Tue Jun 11 17:33:34 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Tue Jun 11 17:33:34 2019"
      },
      "message": "[client] Update client code to make it compatible with python3\n\nI also updated utils/tools.py to use different way to get absolute\npath to client folder when it is not running from a zip file,\notherwise unit tests will be failed, since it will be failed to\nfind six module in third_party folder.\n\nBug: 942720\nChange-Id: Id414f10f1f417240c0b59b882364c56eab9f3a72\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1637369\nCommit-Queue: Lei Lei \u003cleilei@chromium.org\u003e\nReviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 7c5a5879d897dbe828854184db609dbe630a1407\n"
    },
    {
      "commit": "c398f09f0a06f0d7e68f5d420ea0066e79c1d26e",
      "tree": "b54cd3a268c523556a113a0ff6d19c627799d02d",
      "parents": [
        "f0a6ed44c7b56f717ed1650185b2508ad190c26e"
      ],
      "author": {
        "name": "John Budorick",
        "email": "jbudorick@chromium.org",
        "time": "Mon Jun 10 22:49:44 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Mon Jun 10 22:49:44 2019"
      },
      "message": "Revert \"run_isolated: sleep for 1s while waiting for subprocess completion.\"\n\nThis reverts commit 4d4216e3f5093b2da29a75546728b298698425f8.\n\nReason for revert: does not appear to have had any effect. Back to the drawing board.\n\nOriginal change\u0027s description:\n\u003e run_isolated: sleep for 1s while waiting for subprocess completion.\n\u003e \n\u003e Bug: 731375\n\u003e Change-Id: I5c5f1036613aae9a3d3d1850d5dde30529ba73ae\n\u003e Reviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1648932\n\u003e Commit-Queue: John Budorick \u003cjbudorick@chromium.org\u003e\n\u003e Reviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\n\nTBR\u003dmaruel@chromium.org,estaab@chromium.org,jbudorick@chromium.org\n\n# Not skipping CQ checks because original CL landed \u003e 1 day ago.\n\nBug: 731375\nChange-Id: Id86c02e6361b7ee883101bbd5cc15442fe9affa3\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1652489\nReviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCommit-Queue: John Budorick \u003cjbudorick@chromium.org\u003e\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nAuto-Submit: John Budorick \u003cjbudorick@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 4b5d7e3c24aedfdd771ef2b115c8943f77518d57\n"
    },
    {
      "commit": "f0a6ed44c7b56f717ed1650185b2508ad190c26e",
      "tree": "f39aacefd192ef90eac8ae0c883f848bc14d0d79",
      "parents": [
        "96f125709acfd0b48fc1e5dae7d6ea42291726ac"
      ],
      "author": {
        "name": "John Budorick",
        "email": "jbudorick@chromium.org",
        "time": "Fri Jun 07 18:24:13 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Fri Jun 07 18:24:13 2019"
      },
      "message": "run_isolated: sleep for 1s while waiting for subprocess completion.\n\nBug: 731375\nChange-Id: I5c5f1036613aae9a3d3d1850d5dde30529ba73ae\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1648932\nCommit-Queue: John Budorick \u003cjbudorick@chromium.org\u003e\nReviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 4d4216e3f5093b2da29a75546728b298698425f8\n"
    },
    {
      "commit": "96f125709acfd0b48fc1e5dae7d6ea42291726ac",
      "tree": "b54cd3a268c523556a113a0ff6d19c627799d02d",
      "parents": [
        "96cafe19f4395f4667df4a83ea6df341691256b4"
      ],
      "author": {
        "name": "Ben Pastene",
        "email": "bpastene@chromium.org",
        "time": "Fri Jun 07 18:02:33 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Fri Jun 07 18:02:33 2019"
      },
      "message": "Revert \"Fix logdog client library on windows.\"\n\nThis reverts commit 90b6d0451314bb57c1e5e45f924478cc34c7f3cc.\n\nReason for revert: Suspected to be causing frozen windows builds\nSee crbug.com/971224#c7\n\nOriginal change\u0027s description:\n\u003e Fix logdog client library on windows.\n\u003e \n\u003e LOGDOG_STREAM_SERVER_PATH is set to e.g. `net.pipe:LUCILogDogKitchen_1176`\n\u003e on bots, but the file to open is \u0027\\\\.\\pipe\\LUCILogDogKitchen_1176\u0027.\n\u003e \n\u003e Additionally, specify no-buffering and \u0027+\u0027 mode to prevent python from\n\u003e hanging onto bytes it shouldn\u0027t keep and allow the pipe to be re-opened\n\u003e for multiple streams in the same python process.\n\u003e \n\u003e R\u003d​tandrii@chromium.org\n\u003e \n\u003e Bug: 959887\n\u003e Change-Id: Iff15fb9de9e39552fc7b063c66e6fbeb6f677d61\n\u003e Reviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1642342\n\u003e Auto-Submit: Robbie Iannucci \u003ciannucci@chromium.org\u003e\n\u003e Commit-Queue: Andrii Shyshkalov \u003ctandrii@chromium.org\u003e\n\u003e Reviewed-by: Andrii Shyshkalov \u003ctandrii@chromium.org\u003e\n\nTBR\u003diannucci@chromium.org,tandrii@chromium.org\n\n# Not skipping CQ checks because original CL landed \u003e 1 day ago.\n\nBug: 959887, 971224\nChange-Id: Ib84744a6c370916199cce3f3f9e1e0e06defeba0\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1650143\nReviewed-by: Ben Pastene \u003cbpastene@chromium.org\u003e\nCommit-Queue: Ben Pastene \u003cbpastene@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 2f8e5320de58739c4b8a5a6606746e377f148416\n"
    },
    {
      "commit": "96cafe19f4395f4667df4a83ea6df341691256b4",
      "tree": "b3f1f5ad4bd88d585d1b5aa20ecf86e617653a3d",
      "parents": [
        "3190e3f43b048bc684c6ba7a07fc6eb1cc6f65d9"
      ],
      "author": {
        "name": "John Budorick",
        "email": "jbudorick@chromium.org",
        "time": "Fri Jun 07 17:44:03 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Fri Jun 07 17:44:03 2019"
      },
      "message": "subprocess42: allow configurable sleep duration in wait().\n\nBug: 731375\nChange-Id: Ia62fb121109bda6f1315e2e6e3f98c620dab5210\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1648931\nReviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: b86acab6a22e170a2a905552e81e1c40fa31ff91\n"
    },
    {
      "commit": "3190e3f43b048bc684c6ba7a07fc6eb1cc6f65d9",
      "tree": "5c59dd86e4a55f54d91f0352ccfef42aed7efcf3",
      "parents": [
        "9b1b0ed1f31dd42b128ae88ce50c2ab1f87ebaeb"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Tue Jun 04 21:48:14 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Tue Jun 04 21:48:14 2019"
      },
      "message": "Revert \"[client] Rename third_party/pyasn1-modules to third_party/pyasn1_modules\"\n\nThis reverts commit 1341b4f0cad1d767ed7b51c9380072c50cd1949f.\n\nReason for revert: caused severe outage\n\nI suspect it happened to work on the CI because pyasn1_modules\nhappens to be installed on the machine.\n\nBug: 970342\n\nOriginal change\u0027s description:\n\u003e [client] Rename third_party/pyasn1-modules to third_party/pyasn1_modules\n\u003e \n\u003e There is a compile error when \u0027-\u0027 in file path on python3.\n\u003e \n\u003e Bug: 942720\n\u003e Change-Id: Id6ddedcc1469db8014499520015c28ebc9a0945a\n\u003e Reviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1637363\n\u003e Reviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\n\u003e Commit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\n\nTBR\u003dmaruel@chromium.org,leilei@chromium.org\n\n# Not skipping CQ checks because original CL landed \u003e 1 day ago.\n\nBug: 942720\nChange-Id: I0c57dbafe81d68c7d283d517f0a8afc41c1348a1\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1642224\nReviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: bf6abb217a664f0a0d93b25639a1dc48e1c78d0c\n"
    },
    {
      "commit": "9b1b0ed1f31dd42b128ae88ce50c2ab1f87ebaeb",
      "tree": "cda0119472bcebc21fc8a1d82e51836d9327ff89",
      "parents": [
        "7d52675c0ce937eeede6a962cd996e2d0484e54a"
      ],
      "author": {
        "name": "Robert Iannucci",
        "email": "iannucci@chromium.org",
        "time": "Tue Jun 04 01:19:23 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Tue Jun 04 01:19:23 2019"
      },
      "message": "Fix logdog client library on windows.\n\nLOGDOG_STREAM_SERVER_PATH is set to e.g. `net.pipe:LUCILogDogKitchen_1176`\non bots, but the file to open is \u0027\\\\.\\pipe\\LUCILogDogKitchen_1176\u0027.\n\nAdditionally, specify no-buffering and \u0027+\u0027 mode to prevent python from\nhanging onto bytes it shouldn\u0027t keep and allow the pipe to be re-opened\nfor multiple streams in the same python process.\n\nR\u003dtandrii@chromium.org\n\nBug: 959887\nChange-Id: Iff15fb9de9e39552fc7b063c66e6fbeb6f677d61\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1642342\nAuto-Submit: Robbie Iannucci \u003ciannucci@chromium.org\u003e\nCommit-Queue: Andrii Shyshkalov \u003ctandrii@chromium.org\u003e\nReviewed-by: Andrii Shyshkalov \u003ctandrii@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 90b6d0451314bb57c1e5e45f924478cc34c7f3cc\n"
    },
    {
      "commit": "7d52675c0ce937eeede6a962cd996e2d0484e54a",
      "tree": "d64d5defb720e23670d4a2409203288c696ed795",
      "parents": [
        "9b206a8cf955b4173bc2ab67dd00ab7d98f1112b"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Fri May 31 20:00:49 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Fri May 31 20:00:49 2019"
      },
      "message": "[client] Throw a proper failure instead of crashing on failure\n\nThis can happen with transparent but flaky proxy.\n\nR\u003djchinlee@chromium.org\n\nBug: 968782\nChange-Id: Ia756390c7da5137fab6d63ab82fce66b22bc24b0\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1638700\nReviewed-by: Jao-ke Chin-Lee \u003cjchinlee@chromium.org\u003e\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: feb3a059770e9dc70e2b6958efeb284adc3550a5\n"
    },
    {
      "commit": "9b206a8cf955b4173bc2ab67dd00ab7d98f1112b",
      "tree": "2cc7803d3ffda17885909ea5bb2fc52acfe704de",
      "parents": [
        "fc961033d9b1b61ef0ddbc4a2d5629d8f42a47c1"
      ],
      "author": {
        "name": "Lei Lei",
        "email": "leilei@chromium.org",
        "time": "Thu May 30 20:54:11 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Thu May 30 20:54:11 2019"
      },
      "message": "[client] Rename third_party/pyasn1-modules to third_party/pyasn1_modules\n\nThere is a compile error when \u0027-\u0027 in file path on python3.\n\nBug: 942720\nChange-Id: Id6ddedcc1469db8014499520015c28ebc9a0945a\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1637363\nReviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 1341b4f0cad1d767ed7b51c9380072c50cd1949f\n"
    },
    {
      "commit": "fc961033d9b1b61ef0ddbc4a2d5629d8f42a47c1",
      "tree": "834cc89ee61c47bb2e1dee43bcade9e3d6381fec",
      "parents": [
        "31f9fcd92bc95ce9ebb429907bade1deccbbbbb2"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Tue May 28 23:04:18 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Tue May 28 23:04:18 2019"
      },
      "message": "[swarming] Assume creationflags is never None\n\nFollow up from https://chromium-review.googlesource.com/1632787\n\nBug: 939029\nChange-Id: Ie7f7431a83a2a6724c7b9e90856e3dcd7bc57be2\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1633027\nAuto-Submit: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCommit-Queue: Takuto Ikuta \u003ctikuta@chromium.org\u003e\nReviewed-by: Takuto Ikuta \u003ctikuta@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: effbcfcafa96e0840189a98ac485586ba2c2ceb6\n"
    },
    {
      "commit": "31f9fcd92bc95ce9ebb429907bade1deccbbbbb2",
      "tree": "65591b272b3a0e6bc36b49233772fc7cd6c2139d",
      "parents": [
        "779c4f0f8488c64587b75dbb001d18c3c0c4cda9"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Tue May 28 22:39:28 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Tue May 28 22:39:28 2019"
      },
      "message": "[swarming_bot] Make it use its own console\n\nThis could help with processes that send CTRL_C_EVENT to processes. I couldn\u0027t\nmanually reproduce the issue we\u0027re seeing on the fleet.\n\nBug: 939029\nChange-Id: If8c496a74a2c964f4c286271510a6db6979189d9\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1632787\nCommit-Queue: Jao-ke Chin-Lee \u003cjchinlee@chromium.org\u003e\nReviewed-by: Jao-ke Chin-Lee \u003cjchinlee@chromium.org\u003e\nAuto-Submit: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 1dcb82d758b0436de044d081698a90956e4d0cb9\n"
    },
    {
      "commit": "779c4f0f8488c64587b75dbb001d18c3c0c4cda9",
      "tree": "c93392220ee91ba85c1efc4e8a0690856e1026a1",
      "parents": [
        "7f61a4d5d6522eff953c7e5f69784fce816bc29b"
      ],
      "author": {
        "name": "Caleb Rouleau",
        "email": "crouleau@chromium.org",
        "time": "Wed May 22 21:18:49 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Wed May 22 21:18:49 2019"
      },
      "message": "[Swarming Client] Print links to tasks after they are triggered.\n\nThis change, plus\nhttps://chromium-review.googlesource.com/c/chromium/src/+/1623745\nmeans that users of src/tools/mb can find the UI tasks that they\ntrigger using mb. It should also help people using swarming natively.\n\nChange-Id: I6f3c85b4638d8bfeb9be663b4295cbf81abe701c\nBug: 966175\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1625780\nCommit-Queue: Caleb Rouleau \u003ccrouleau@chromium.org\u003e\nAuto-Submit: Caleb Rouleau \u003ccrouleau@chromium.org\u003e\nReviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 4c96e6cb8b76c7d0cf5b3da18497e2864c182a83\n"
    },
    {
      "commit": "7f61a4d5d6522eff953c7e5f69784fce816bc29b",
      "tree": "dacd779639262dc8ea4b6b415e62b8896099d62c",
      "parents": [
        "6460ffb9739538b9d103e9802033a0c7bf85e94d"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Wed May 22 20:10:07 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Wed May 22 20:10:07 2019"
      },
      "message": "[client] Enable specifying containment-type for trigger\n\nBug: 808836\nChange-Id: Ib68f7035dbc46a774301636e1d52d067663d0252\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1623501\nReviewed-by: Jao-ke Chin-Lee \u003cjchinlee@chromium.org\u003e\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: c72baded50cc24646a03b96782046466c4ac4885\n"
    },
    {
      "commit": "6460ffb9739538b9d103e9802033a0c7bf85e94d",
      "tree": "2d8695d908d258945d003d751b7acaaea4c967ff",
      "parents": [
        "37be6aa6dfb642c5bb5c175b2038f091a2e05c43"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Tue May 14 20:50:56 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Tue May 14 20:50:56 2019"
      },
      "message": "[client] Disable ssl platform warning\n\nIt\u0027s unfortunate but nothing changed in practice.\nIt\u0027ll be subsummed by migrating to Go.\n\nR\u003djchinlee@chromium.org\n\nBug: 958933\nChange-Id: I938ae37833a646df1f4b1a2bd44ad3fca09002fc\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1610948\nReviewed-by: Jao-ke Chin-Lee \u003cjchinlee@chromium.org\u003e\nReviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: a0fe907934f279439da24d6ba9a55b653c25a5f5\n"
    },
    {
      "commit": "37be6aa6dfb642c5bb5c175b2038f091a2e05c43",
      "tree": "15cd7c0923e70c90a0e2dfb4e93df19c402ab5fb",
      "parents": [
        "735070f0a0e6337a417f7a6d17311e8842980dce"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Tue May 07 15:44:03 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Tue May 07 15:44:03 2019"
      },
      "message": "Update client/third_party/depot_tools\n\nInclude auto_stub fix and python3 compatibility changes.\n\nThis should help unblock the roll of luci-py into infra.\n\nChange-Id: I56c1f106ee623cd2b89ca065a2554e254572d563\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1599249\nAuto-Submit: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nReviewed-by: Nodir Turakulov \u003cnodir@chromium.org\u003e\nCommit-Queue: Nodir Turakulov \u003cnodir@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: fed355224b4742cfba34fc5df27213ad20d88193\n"
    },
    {
      "commit": "735070f0a0e6337a417f7a6d17311e8842980dce",
      "tree": "504a08e81c1ffacd1e9a36dcd9e7f8260061b07d",
      "parents": [
        "1b65f4e862045f3ba430a4cbd0643f5b1b66c230"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Tue May 07 00:34:29 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Tue May 07 00:34:29 2019"
      },
      "message": "Revert \"[client] Clean up stale cacert.pem and cacerts.txt and use the one in certifi\"\n\nThis reverts commit ce028d2dc532b2ba22d09356f5799420b7057ffb.\n\nReason for revert: Potentially broke Windows 7 and 10 bots.\nWill try to revert and make this live to see if it helps.\n\nBug: 960152\n\nOriginal change\u0027s description:\n\u003e [client] Clean up stale cacert.pem and cacerts.txt and use the one in certifi\n\u003e \n\u003e - This will significantly reduce the size of swarming_bot.zip by removing\n\u003e   2 nearly duplicate large files!\n\u003e - Simplify zip_package.extract_resource() to be more content addressed,\n\u003e   reducing spam.\n\u003e - Fix a file handle temporal leak which could be more of an issue on\n\u003e   Windows.\n\u003e - Fix a leak as shown in task_runner_test.py.\n\u003e \n\u003e Bug: 944944\n\u003e Change-Id: I37d96ad0b02cdac066268a9f9cb6bf75c9ab05e7\n\u003e Reviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1591470\n\u003e Commit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\n\u003e Reviewed-by: Jao-ke Chin-Lee \u003cjchinlee@chromium.org\u003e\n\nTBR\u003dmaruel@chromium.org,jchinlee@chromium.org\n\n# Not skipping CQ checks because original CL landed \u003e 1 day ago.\n\nBug: 944944\nChange-Id: I643feca207d33a013468d00bc584446c4e9e6096\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1596889\nReviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nReviewed-by: Jao-ke Chin-Lee \u003cjchinlee@chromium.org\u003e\nReviewed-by: smut \u003csmut@google.com\u003e\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: d9451386793e63982cd890ec5310f3129f841156\n"
    },
    {
      "commit": "1b65f4e862045f3ba430a4cbd0643f5b1b66c230",
      "tree": "d802fd7c7ff350a0b08dda805b1d92255a4831cb",
      "parents": [
        "8a36a5344c347f427d7d42660b866f7d522fd135"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Thu May 02 21:56:58 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Thu May 02 21:56:58 2019"
      },
      "message": "[client] Add containment support in run_isolated\n\nSeparating from the server side containment API because it was already large\nenough and required careful testing on Windows.\n\n- Enable job object support on Windows.\n- Manually tested to work on Windows 7.\n- Exposing the API on the server is done as a follow up.\n- Rename subprocess42.Containment.DISABLED to NONE.\n\nBug: 732818, 808836\nChange-Id: I2918f5737fe7544aeefd4f3397879fd3c9d6058c\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1592600\nReviewed-by: Jao-ke Chin-Lee \u003cjchinlee@chromium.org\u003e\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: a0264980989b586ad89839ffdbb89d0aca109294\n"
    },
    {
      "commit": "8a36a5344c347f427d7d42660b866f7d522fd135",
      "tree": "1d1475a6f3cd6d8eab469bed388b5e9d3c1a7184",
      "parents": [
        "d75c702c71a72aa1433a0c2f017f5671d2a7eb48"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Thu May 02 19:46:28 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Thu May 02 19:46:28 2019"
      },
      "message": "[client] Make run_isolated_test pass on Windows\n\nIt was broken.\n\nTest only change.\n\nChange-Id: I30008a8b65ad634e4e27d7c0f7b4710539a54185\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1592050\nReviewed-by: Jao-ke Chin-Lee \u003cjchinlee@chromium.org\u003e\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 419127bc49da2c2e8fd65858bcf5dbaa1cf857e6\n"
    },
    {
      "commit": "d75c702c71a72aa1433a0c2f017f5671d2a7eb48",
      "tree": "1956d93a951d78e52fa8486dd0b12604e36d0120",
      "parents": [
        "8df159fec587663debf1c1c12aee261709d19eaf"
      ],
      "author": {
        "name": "Raul Tambre",
        "email": "raul@tambre.ee",
        "time": "Thu May 02 15:21:17 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Thu May 02 15:21:17 2019"
      },
      "message": "Update colorama to 0.4.1\n\nThis includes many bug fixes.\n\nChange-Id: Iea14c39753af43637f9f3414110fd6c715416796\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1591592\nReviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nAuto-Submit: Raul Tambre \u003craul@tambre.ee\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: fd5e65bd266ae961ad85f52a3b1d49c1f1f030d7\n"
    },
    {
      "commit": "8df159fec587663debf1c1c12aee261709d19eaf",
      "tree": "5a130ec0a368c53d65ef5e8af4edf69a304eef02",
      "parents": [
        "89669dcc0188385edcc132d8ecf9a34b8ea886f6"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Thu May 02 15:13:57 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Thu May 02 15:13:57 2019"
      },
      "message": "[client] Clean up stale cacert.pem and cacerts.txt and use the one in certifi\n\n- This will significantly reduce the size of swarming_bot.zip by removing\n  2 nearly duplicate large files!\n- Simplify zip_package.extract_resource() to be more content addressed,\n  reducing spam.\n- Fix a file handle temporal leak which could be more of an issue on\n  Windows.\n- Fix a leak as shown in task_runner_test.py.\n\nBug: 944944\nChange-Id: I37d96ad0b02cdac066268a9f9cb6bf75c9ab05e7\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1591470\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nReviewed-by: Jao-ke Chin-Lee \u003cjchinlee@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: ce028d2dc532b2ba22d09356f5799420b7057ffb\n"
    },
    {
      "commit": "89669dcc0188385edcc132d8ecf9a34b8ea886f6",
      "tree": "1631fcd12f08759842d769808fd1131623a9d46c",
      "parents": [
        "b1e8d343400c6f58056bccf0d4a3355e1a6b9cc3"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Wed May 01 14:01:08 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Wed May 01 14:01:08 2019"
      },
      "message": "[swarming] add TaskProperties containment.lower_priority\n\nThis \u0027containment\u0027 is trivial to implement (at least compared to the rest like\ncgroups and job objects) and is a good way to start doing the containment API.\n\nThis requires to update:\n- Cloud Endpoints API\n- Datastore schema\n- protobuf definition\n\nOnce we migrate to prpc, we won\u0027t have to touch endpoints.\n\nSince this commit changes the DB schema, the side effect is that the properties\nhash used for deduplication is now changed too.\n\nBug: 808836, 952099, 948845\nChange-Id: Ib5e3df89f112407fd3adea33058f86a1ecd70d9b\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1588326\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nReviewed-by: Jao-ke Chin-Lee \u003cjchinlee@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: c170fa606c93f3eb46866a61b8398a5bde318af5\n"
    },
    {
      "commit": "b1e8d343400c6f58056bccf0d4a3355e1a6b9cc3",
      "tree": "7a9282974dc21c3462d1e6fae511cf5daeee3f83",
      "parents": [
        "03c6fd1ff1ff78a1720209b0252ba4dd3e5417c9"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Wed May 01 01:09:17 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Wed May 01 01:09:17 2019"
      },
      "message": "[client] Implement job object support on Windows in subprocess42\n\n- Define subprocess42.Containment as a generic containment API in python. A\n  similar API will be created in Swarming.\n- Stop waiting for __del__() to close the children process handle, this can\n  cause issues like file locking, especially on Windows...\n- Implement Job Object on Windows. Implement limit_processes and\n  limit_total_committed_memory.\n- Include unit tests to ensure that both limit_processes and\n  limit_total_committed_memory actually work.\n- Manually tested on Windows 7.\n\nThis is not accessible via the Swarming containment API yet, this will be done\nin a follow up.\n\nBug: 732818\nChange-Id: I755f9d356a00bb3cea747df142d3936120c42b21\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1589624\nReviewed-by: Jao-ke Chin-Lee \u003cjchinlee@chromium.org\u003e\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 3bddeb6661d795681fa9e17faebefab1e3fef916\n"
    },
    {
      "commit": "03c6fd1ff1ff78a1720209b0252ba4dd3e5417c9",
      "tree": "4498b3b4bb2acf80c60eee8ef9bcdeac94545781",
      "parents": [
        "bcb919aceee50eae2dbdfc1627f4c07d2c23aba1"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Tue Apr 30 12:12:55 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Tue Apr 30 12:12:55 2019"
      },
      "message": "[client] Add run_isolated.py --lower-priority\n\ntask_runner.py will use this flag when task is created with the\nlower_priority containment flag.\n\n- Implement subprocess42.Popen(lower_priority\u003dTrue).\n- Include smoke test.\n- Fix run_isolated_smoke_test.py to pass on Windows again.\n- Manually tested on macOS and Windows 7.\n- Update subprocess42 to allow both creationflags and preexec_fn.\n\nLower task process priority will be the first \u0027containment\u0027. It\u0027s done\nbecause it\u0027s trivial to do and should help with heavy workload.\n\nBug: 808836, 952099, 948845\nChange-Id: I3974898a453c0885f5441af79420607c57d91a06\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1588329\nReviewed-by: Jao-ke Chin-Lee \u003cjchinlee@chromium.org\u003e\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 86bd5a38baa8373ab6fcf5ddc18ee124ee5f569e\n"
    },
    {
      "commit": "bcb919aceee50eae2dbdfc1627f4c07d2c23aba1",
      "tree": "6cdeb249242f463c6166c4438517e671a15ad655",
      "parents": [
        "793bff3110e3c27bb46d614019cfca70db2d9a26"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Thu Apr 18 18:31:01 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Thu Apr 18 18:31:01 2019"
      },
      "message": "[third_party] emulate a bit more of idna\n\nFix another regression in 690b8ae29be2ca3b4782fa6ad0e7f2454443c38d that\nbdc0466c63347280fbd8bc8c30fb07f294200194 didn\u0027t resolve.\n\nIt\u0027s for both requests and pyopenssl in urllib3.\n\nBug: 916644\nChange-Id: I9451c2337ecd307cd6f1e7efba67ea3b0fb0dbd6\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1574258\nReviewed-by: Jao-ke Chin-Lee \u003cjchinlee@chromium.org\u003e\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 53b17d54b93e6527b37414aafbd7f60af62202d6\n"
    },
    {
      "commit": "793bff3110e3c27bb46d614019cfca70db2d9a26",
      "tree": "78cf64ea735faed43e8011ab23b7cd2b92fe2b2d",
      "parents": [
        "e27283d0e6a9faf2888f7ee9c298a8fb60585942"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Thu Apr 18 17:50:48 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Thu Apr 18 17:50:48 2019"
      },
      "message": "[client] pylint and spell cleanup\n\nShould have no functional change.\n\nChange-Id: I8bda6f1750652daf214535a96c6aec65762e9960\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1532600\nReviewed-by: Jao-ke Chin-Lee \u003cjchinlee@chromium.org\u003e\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 4e2fb89c1f9a71c90b209bfa8b3a8a096c5515ea\n"
    },
    {
      "commit": "e27283d0e6a9faf2888f7ee9c298a8fb60585942",
      "tree": "5ad0bfc84fa705a14835e81c9a1a9e314595a288",
      "parents": [
        "86dd2fac0e741601d9e898b497ed28a5a2dbc9eb"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Thu Apr 18 14:10:15 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Thu Apr 18 14:10:15 2019"
      },
      "message": "[client] Change idna stub to use python\u0027s default\n\nFix a regression from 690b8ae29be2ca3b4782fa6ad0e7f2454443c38d which broke\nselect bots running inside docker.\n\nThe new stub is still simpler than https://pypi.org/project/idna/ and lighter\nweight but much better than ignoring the \"xn-\" encoding as this was done\npreviously. As per the project home page:\n\n  This acts as a suitable replacement for the “encodings.idna” module that comes\n  with the Python standard library, but only supports the old, deprecated IDNA\n  specification (RFC 3490).\n\nIn practice, we don\u0027t expect to use non-ASCII hostnames, so it\u0027s not a big deal\nfor us.\n\ndecode() is required by openssl/x509.py.\n\nTBR\u003djchinlee@chromium.org\nBug: 916644\nChange-Id: Ia999a56b981d943e2f3d942f83e40d40e1bb805b\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1573244\nReviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\n\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: bdc0466c63347280fbd8bc8c30fb07f294200194\n"
    },
    {
      "commit": "86dd2fac0e741601d9e898b497ed28a5a2dbc9eb",
      "tree": "a124e007092a5c8deec6c8caa09e68951a8052c2",
      "parents": [
        "921efa6aab2637b5df780b4a30896709e1845f3c"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Thu Apr 18 12:09:35 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Thu Apr 18 12:09:35 2019"
      },
      "message": "[client] Update requests; add certifi, urllib3; stub chardet, idna\n\n- Include fix in net.py; it was passing a int instead of a str for an http\n  header.\n- Roll requests from 2.9.1 to 2.21.0\n- Unpackage urllib3 from requests.\n- Roll urllib3 from packaged version at 1.13.1 to 1.24.1\n- Add certifi 2018.11.29\n- Add stubs for idna and chardet, the bot doesn\u0027t need these. This enables\n  removing the local modification to requests.\n\nBug: 916644\nChange-Id: I1aa1fb6fdf5d35e0d1c4805e4bdcebfe614e4ebd\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1531099\nReviewed-by: Jao-ke Chin-Lee \u003cjchinlee@chromium.org\u003e\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 690b8ae29be2ca3b4782fa6ad0e7f2454443c38d\n"
    },
    {
      "commit": "921efa6aab2637b5df780b4a30896709e1845f3c",
      "tree": "3184486d0e654435752aaf68dbb9fdfdf95bc315",
      "parents": [
        "bfd8fe3149eb23abfe7b4dca5d856c6b6fe20438"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Wed Apr 17 20:14:59 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Wed Apr 17 20:14:59 2019"
      },
      "message": "client: Zap out third_party/__init__.py; stop including client\n\n- Reduce the size of the uploaded code to App Engine by\n  selectively including files from client/ and removing duplicate\n  infra_libs/.\n- Remove client/third_party/__init__.py. This forces stopping from using\n  \u0027from third_party\u0027, which is necessary to update requests later.\n\nBug: 916644\nChange-Id: I3f2c1f93869d3b6982a71aa032764871904c6ac4\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1534038\nReviewed-by: Jao-ke Chin-Lee \u003cjchinlee@chromium.org\u003e\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 9a2cf4d5f6381903fd3c1e6efb48861e7f57ac0f\n"
    },
    {
      "commit": "bfd8fe3149eb23abfe7b4dca5d856c6b6fe20438",
      "tree": "e770772e09cd0398d323e82abd33fcff249c35cd",
      "parents": [
        "deba39d3f61b2775a4ddb1fda22446057334aea2"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Wed Apr 17 17:42:39 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Wed Apr 17 17:42:39 2019"
      },
      "message": "[third_party] update depot_tools\n\n- Update client/third_party/depot_tools and include files that were in\n  appengine/third_party_local/depot_tools.\n- Remove appengine/third_party_local/depot_tools.\n- Reduce \u0027from third_party\u0027 import, need to get rid of this.\n\nBug: 916644\nChange-Id: I162cffbe109a9a2209d14a5b7b18e8f7024a221d\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1532610\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nReviewed-by: Jao-ke Chin-Lee \u003cjchinlee@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: f1c3148461f356e93d43760102c4ece31ee91885\n"
    },
    {
      "commit": "deba39d3f61b2775a4ddb1fda22446057334aea2",
      "tree": "3b14fdef8c6acbfd6def39d628df23912aac0946",
      "parents": [
        "e3f7038fddcc14c84d524075bbc3c3c22d675b57"
      ],
      "author": {
        "name": "Takuto Ikuta",
        "email": "tikuta@chromium.org",
        "time": "Thu Apr 04 12:18:39 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Thu Apr 04 12:18:39 2019"
      },
      "message": "Reland \"Reland \"[isolated] use ThreadPool to write downloaded file\"\"\n\nThis is a reland of 21e91807dcc818d6a947cd24354e07b9268cd6be\nFix for previous breakage is landed (crubg.com/947096)\n\nOriginal change\u0027s description:\n\u003e Reland \"[isolated] use ThreadPool to write downloaded file\"\n\u003e\n\u003e This is a reland of fa1f8ebf0aae66231bcde7b9f70ec86306ad1720\n\u003e\n\u003e Call join before close.\n\u003e\n\u003e Original change\u0027s description:\n\u003e \u003e [isolated] use ThreadPool to write downloaded file\n\u003e \u003e\n\u003e \u003e Putting files with multiple threads reduces overhead of\n\u003e \u003e webkit_layout_tests on windows.\n\u003e \u003e\n\u003e \u003e With this CL, downloading isolate input for webkit_layout_tests took\n\u003e \u003e 180 seconds improved from 405 seconds without this CL on my z840\n\u003e \u003e Windows 10.\n\u003e \u003e\n\u003e \u003e Stats are taken from isolated input of\n\u003e \u003e https://chromium-swarm.appspot.com/task?id\u003d4308c9ee376f0610\n\u003e \u003e\n\u003e \u003e Bug: 908483\n\u003e \u003e Change-Id: Id618d8642b8fccdd36c3f28bff44d336773dd3df\n\u003e \u003e Reviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1535935\n\u003e \u003e Commit-Queue: Takuto Ikuta \u003ctikuta@chromium.org\u003e\n\u003e \u003e Reviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\n\u003e \u003e Auto-Submit: Takuto Ikuta \u003ctikuta@chromium.org\u003e\n\u003e\n\u003e Bug: 908483\n\u003e Change-Id: I4d0f21212387ad8884206b3607a9f8ac72e56b0e\n\u003e Reviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1538166\n\u003e Reviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\n\u003e Auto-Submit: Takuto Ikuta \u003ctikuta@chromium.org\u003e\n\u003e Commit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\n\nBug: 908483\nChange-Id: I7a33f0431911db96aa320a03d2a82e7898635560\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1551039\nReviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nAuto-Submit: Takuto Ikuta \u003ctikuta@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 4f93bc3301874923a740f45ccb8df561a58f608e\n"
    },
    {
      "commit": "e3f7038fddcc14c84d524075bbc3c3c22d675b57",
      "tree": "a1df47d058b571cc143d73f6957adb592e69bc09",
      "parents": [
        "016c760a60238d0615bdc50f0192f7086b253aed"
      ],
      "author": {
        "name": "Takuto Ikuta",
        "email": "tikuta@chromium.org",
        "time": "Wed Apr 03 14:52:06 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Wed Apr 03 14:52:06 2019"
      },
      "message": "[file_path] do not raise if directory exists when ensure_tree\n\nThis is to prevent file exists error when I re-land multi threaded\nputfile CL.\n\ne.g. https://chromium-swarm.appspot.com/task?id\u003d43de12864dae2b10\n\nBug: 947096\nChange-Id: I72cfcb48c642c48745fb2f695efbd6d3e9a93d78\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1545611\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nReviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nAuto-Submit: Takuto Ikuta \u003ctikuta@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: c9c218d0919fd2ed8a095c393cdfe7f81201b421\n"
    },
    {
      "commit": "016c760a60238d0615bdc50f0192f7086b253aed",
      "tree": "381ceeca78a21e0e78fc1a6f48ae592d46ed226b",
      "parents": [
        "76cfceea4b99aaf3e95cff2ba79f313aa786e113"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Tue Apr 02 18:31:13 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Tue Apr 02 18:31:13 2019"
      },
      "message": "[client] Make third_party/ transparent\n\nThis is needed because otherwise the next version of requests search for\nunpackage urllib3 and can\u0027t find it.\n\nChange-Id: I717b32428050089dd3fe0f3d5fc8ceb1b1c54e07\nBug: 916644\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1531491\nCommit-Queue: Jao-ke Chin-Lee \u003cjchinlee@chromium.org\u003e\nReviewed-by: Jao-ke Chin-Lee \u003cjchinlee@chromium.org\u003e\nAuto-Submit: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: a5bdaf4b27e0e0d7627ad114ee535e14585f4634\n"
    },
    {
      "commit": "76cfceea4b99aaf3e95cff2ba79f313aa786e113",
      "tree": "94b11ac1d81da79e3cd074b46d587c26c7b245c5",
      "parents": [
        "34b20305c7a69eb89e1abd5e2a94708db999f0a9"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Mon Apr 01 23:16:36 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Mon Apr 01 23:16:36 2019"
      },
      "message": "[client] Clean up tests\n\n- This removes nearly 200 lines.\n- Fix some tests that were re-entrant, make stand alone executables\n  instead.\n- Fix a leak from isolateserver_smoke_test.py, which leaked cache/.\n- Cleanup pylint.\n- Remove swarming_smoke_test.py, it didn\u0027t work.\n- Improve spelling.\n\nThis is in preparation for changing the way third_party/ is imported.\n\nSince the modification is fairly involved for tests, do it first\nseparately to simplify reviewing the code.\n\nTest only change, no functional change.\n\nBug: 916644\nChange-Id: I797af616773c55c389535482fd02885837e1dc9c\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1529995\nCommit-Queue: Jao-ke Chin-Lee \u003cjchinlee@chromium.org\u003e\nReviewed-by: Jao-ke Chin-Lee \u003cjchinlee@chromium.org\u003e\nAuto-Submit: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 15ecc6149a9ea966be9f15d85e126f455b1af4da\n"
    },
    {
      "commit": "34b20305c7a69eb89e1abd5e2a94708db999f0a9",
      "tree": "5e4ac6e2e160dfb8e0578d956539c769447ee931",
      "parents": [
        "9d35e9ba7151ba75ea045e0334145c84b8c2611f"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Thu Mar 28 17:32:54 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Thu Mar 28 17:32:54 2019"
      },
      "message": "Revert \"Reland \"[isolated] use ThreadPool to write downloaded file\"\"\n\nThis reverts commit 21e91807dcc818d6a947cd24354e07b9268cd6be.\n\nReason for revert: This caused internal failures while mapping inputs\n\nBug: 947096\n\nOriginal change\u0027s description:\n\u003e Reland \"[isolated] use ThreadPool to write downloaded file\"\n\u003e \n\u003e This is a reland of fa1f8ebf0aae66231bcde7b9f70ec86306ad1720\n\u003e \n\u003e Call join before close.\n\u003e \n\u003e Original change\u0027s description:\n\u003e \u003e [isolated] use ThreadPool to write downloaded file\n\u003e \u003e\n\u003e \u003e Putting files with multiple threads reduces overhead of\n\u003e \u003e webkit_layout_tests on windows.\n\u003e \u003e\n\u003e \u003e With this CL, downloading isolate input for webkit_layout_tests took\n\u003e \u003e 180 seconds improved from 405 seconds without this CL on my z840\n\u003e \u003e Windows 10.\n\u003e \u003e\n\u003e \u003e Stats are taken from isolated input of\n\u003e \u003e https://chromium-swarm.appspot.com/task?id\u003d4308c9ee376f0610\n\u003e \u003e\n\u003e \u003e Bug: 908483\n\u003e \u003e Change-Id: Id618d8642b8fccdd36c3f28bff44d336773dd3df\n\u003e \u003e Reviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1535935\n\u003e \u003e Commit-Queue: Takuto Ikuta \u003ctikuta@chromium.org\u003e\n\u003e \u003e Reviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\n\u003e \u003e Auto-Submit: Takuto Ikuta \u003ctikuta@chromium.org\u003e\n\u003e \n\u003e Bug: 908483\n\u003e Change-Id: I4d0f21212387ad8884206b3607a9f8ac72e56b0e\n\u003e Reviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1538166\n\u003e Reviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\n\u003e Auto-Submit: Takuto Ikuta \u003ctikuta@chromium.org\u003e\n\u003e Commit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\n\nTBR\u003dmaruel@chromium.org,iannucci@chromium.org,tikuta@chromium.org\n\nChange-Id: Id2e4395e6a5289d229d650ee913b3790bf1e30a8\nNo-Presubmit: true\nNo-Tree-Checks: true\nNo-Try: true\nBug: 908483\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1543950\nReviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 3288d1cbd4c409840e0cdc3840eab4acd4c955ff\n"
    },
    {
      "commit": "9d35e9ba7151ba75ea045e0334145c84b8c2611f",
      "tree": "8b32a0e6a1b2aebbce31cd2f0a355cd0b8342081",
      "parents": [
        "6e55f8f3442d5bb87cef3be5e1bc9583a2ebc071"
      ],
      "author": {
        "name": "Takuto Ikuta",
        "email": "tikuta@chromium.org",
        "time": "Thu Mar 28 14:42:46 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Thu Mar 28 14:42:46 2019"
      },
      "message": "Reland \"[isolated] use ThreadPool to write downloaded file\"\n\nThis is a reland of fa1f8ebf0aae66231bcde7b9f70ec86306ad1720\n\nCall join before close.\n\nOriginal change\u0027s description:\n\u003e [isolated] use ThreadPool to write downloaded file\n\u003e\n\u003e Putting files with multiple threads reduces overhead of\n\u003e webkit_layout_tests on windows.\n\u003e\n\u003e With this CL, downloading isolate input for webkit_layout_tests took\n\u003e 180 seconds improved from 405 seconds without this CL on my z840\n\u003e Windows 10.\n\u003e\n\u003e Stats are taken from isolated input of\n\u003e https://chromium-swarm.appspot.com/task?id\u003d4308c9ee376f0610\n\u003e\n\u003e Bug: 908483\n\u003e Change-Id: Id618d8642b8fccdd36c3f28bff44d336773dd3df\n\u003e Reviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1535935\n\u003e Commit-Queue: Takuto Ikuta \u003ctikuta@chromium.org\u003e\n\u003e Reviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\n\u003e Auto-Submit: Takuto Ikuta \u003ctikuta@chromium.org\u003e\n\nBug: 908483\nChange-Id: I4d0f21212387ad8884206b3607a9f8ac72e56b0e\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1538166\nReviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nAuto-Submit: Takuto Ikuta \u003ctikuta@chromium.org\u003e\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 21e91807dcc818d6a947cd24354e07b9268cd6be\n"
    },
    {
      "commit": "6e55f8f3442d5bb87cef3be5e1bc9583a2ebc071",
      "tree": "5e4ac6e2e160dfb8e0578d956539c769447ee931",
      "parents": [
        "106356ff8defd8d5c86e6620c47f01ef19f06aa4"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Tue Mar 26 18:39:29 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Tue Mar 26 18:39:29 2019"
      },
      "message": "Revert \"[isolated] use ThreadPool to write downloaded file\"\n\nThis reverts commit fa1f8ebf0aae66231bcde7b9f70ec86306ad1720.\n\nReason for revert: I suspect this is causing missing files\n\nPreemptively reverting since the timing is extremely suspicious; it\u0027s when I made 4220-fa1f8eb live.\n\nBug: 945955\n\nOriginal change\u0027s description:\n\u003e [isolated] use ThreadPool to write downloaded file\n\u003e \n\u003e Putting files with multiple threads reduces overhead of\n\u003e webkit_layout_tests on windows.\n\u003e \n\u003e With this CL, downloading isolate input for webkit_layout_tests took\n\u003e 180 seconds improved from 405 seconds without this CL on my z840\n\u003e Windows 10.\n\u003e \n\u003e Stats are taken from isolated input of\n\u003e https://chromium-swarm.appspot.com/task?id\u003d4308c9ee376f0610\n\u003e \n\u003e Bug: 908483\n\u003e Change-Id: Id618d8642b8fccdd36c3f28bff44d336773dd3df\n\u003e Reviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1535935\n\u003e Commit-Queue: Takuto Ikuta \u003ctikuta@chromium.org\u003e\n\u003e Reviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\n\u003e Auto-Submit: Takuto Ikuta \u003ctikuta@chromium.org\u003e\n\nTBR\u003dmaruel@chromium.org,iannucci@chromium.org,tikuta@chromium.org\n\nChange-Id: Ie7a4fdaee62e38bdbc556ce5ec681aecd9a24993\nNo-Presubmit: true\nNo-Tree-Checks: true\nNo-Try: true\nBug: 908483\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1538828\nReviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 9c50278d60f65125b16b7da855b070cccb246e66\n"
    },
    {
      "commit": "106356ff8defd8d5c86e6620c47f01ef19f06aa4",
      "tree": "6d88969645f0f7cbce9d97dbd71191c655b4e2f4",
      "parents": [
        "aa60736aded9fc32a0e21a81f5fc51f6009d01f3"
      ],
      "author": {
        "name": "Takuto Ikuta",
        "email": "tikuta@chromium.org",
        "time": "Tue Mar 26 02:33:45 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Tue Mar 26 02:33:45 2019"
      },
      "message": "[isolated] use ThreadPool to write downloaded file\n\nPutting files with multiple threads reduces overhead of\nwebkit_layout_tests on windows.\n\nWith this CL, downloading isolate input for webkit_layout_tests took\n180 seconds improved from 405 seconds without this CL on my z840\nWindows 10.\n\nStats are taken from isolated input of\nhttps://chromium-swarm.appspot.com/task?id\u003d4308c9ee376f0610\n\nBug: 908483\nChange-Id: Id618d8642b8fccdd36c3f28bff44d336773dd3df\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1535935\nCommit-Queue: Takuto Ikuta \u003ctikuta@chromium.org\u003e\nReviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nAuto-Submit: Takuto Ikuta \u003ctikuta@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: fa1f8ebf0aae66231bcde7b9f70ec86306ad1720\n"
    },
    {
      "commit": "aa60736aded9fc32a0e21a81f5fc51f6009d01f3",
      "tree": "5e4ac6e2e160dfb8e0578d956539c769447ee931",
      "parents": [
        "eed2f3ae0107e91c97111a2cec8c23fe9a4f1974"
      ],
      "author": {
        "name": "Robert Iannucci",
        "email": "iannucci@chromium.org",
        "time": "Thu Mar 14 16:00:53 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Thu Mar 14 16:00:53 2019"
      },
      "message": "[libs/logdog] Small tweaks and add fileno to BasicStream.\n\nThis allows basic logdog streams to operate as filehandles to subprocess.\n\nAlso fixes a bug in normalize and improves an exception message.\n\nR\u003dhinoka@chromium.org, martiniss@chromium.org\n\nBug: 909848\nChange-Id: I4d34a910d83db51123f700b837141157d8dbe39c\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1512953\nCommit-Queue: Robbie Iannucci \u003ciannucci@chromium.org\u003e\nReviewed-by: Ryan Tseng \u003chinoka@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 932668421dd720a45b863f997091938ababdd387\n"
    },
    {
      "commit": "eed2f3ae0107e91c97111a2cec8c23fe9a4f1974",
      "tree": "ff6e0fa9f6c7a7daa776931af2fe4f172e2c77d3",
      "parents": [
        "026a5bafefebfa13fb4d14b06e30024e24d764a5"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Thu Mar 14 00:00:40 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Thu Mar 14 00:00:40 2019"
      },
      "message": "[client] Delete run_isolated.zip support\n\nIt stopped being useful when we started using run_isolated through\nswarming_bot.zip, so it\u0027s effectively dead code.\n\nBump run_isolated version to 1.0.0, because why not.\n\nChange-Id: Ic8a40e654c795559d5a2fdab44b13dc3b009a0e4\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1521049\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nAuto-Submit: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nReviewed-by: Quinten Yearsley \u003cqyearsley@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: a038c7e1537433978149edd46afda483d3ce00ed\n"
    },
    {
      "commit": "026a5bafefebfa13fb4d14b06e30024e24d764a5",
      "tree": "119bc106defa6539097225b5108c3478c52309f5",
      "parents": [
        "7a61cf37d6a0163f0ec02d495289a1d038e62457"
      ],
      "author": {
        "name": "Robert Iannucci",
        "email": "iannucci@chromium.org",
        "time": "Mon Mar 04 21:14:57 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Mon Mar 04 21:14:57 2019"
      },
      "message": "[logdog_client] Add $LOGDOG_NAMESPACE to allow transparent logdog client\nnesting.\n\nR\u003dmartiniss@chromium.org, nodir@chromium.org, tandrii@chromium.org\n\nBug: 909848\nChange-Id: Ia3d8de73e0c39aa97852e6abe006cf296a12b93d\nReviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/1497446\nAuto-Submit: Robbie Iannucci \u003ciannucci@chromium.org\u003e\nReviewed-by: Andrii Shyshkalov \u003ctandrii@chromium.org\u003e\nCommit-Queue: Robbie Iannucci \u003ciannucci@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: c4fb24fd9aac900b9f44d1829e9dc9dbd52cf2b0\n"
    },
    {
      "commit": "7a61cf37d6a0163f0ec02d495289a1d038e62457",
      "tree": "b75bca50dbae30339938b293e625386b9570f525",
      "parents": [
        "d50a88f50782ba29076061b94c7b9d08a6c7e424"
      ],
      "author": {
        "name": "Vadim Shtayura",
        "email": "vadimsh@chromium.org",
        "time": "Sat Feb 23 00:43:28 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Sat Feb 23 00:43:28 2019"
      },
      "message": "Update httplib2 0.9.2 -\u003e 0.12.1.\n\nThere are some weird SSL certificate errors on some machines (but not all).\nThere\u0027s hope that updating httplib2 will get rid of them per\nhttps://bugs.debian.org/cgi-bin/bugreport.cgi?bug\u003d907278\n\nNote that updating cacerts.txt alone didn\u0027t help.\n\nAlso stop modifying it. I couldn\u0027t figure out why the modification was needed.\n\nR\u003dmaruel@chromium.org\n\nChange-Id: Ib77eda1957ac8c254cea1ca6463315d4b9e45c31\nReviewed-on: https://chromium-review.googlesource.com/c/1484752\nCommit-Queue: Vadim Shtayura \u003cvadimsh@chromium.org\u003e\nReviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nReviewed-by: Michael Moss \u003cmmoss@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 6645e76b3dbf19645374d7af7ae2203e685526fc\n"
    },
    {
      "commit": "d50a88f50782ba29076061b94c7b9d08a6c7e424",
      "tree": "08dd32e5a48b525b5d4ac2780756b988ecb1f475",
      "parents": [
        "30b80fe759e1c691fdb093f211297f0f58c43a2f"
      ],
      "author": {
        "name": "Erik Chen",
        "email": "erikchen@chromium.org",
        "time": "Sat Feb 16 01:22:07 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Sat Feb 16 01:22:07 2019"
      },
      "message": "Update swarming.py to emit correct shard index.\n\nWhen shard index is specified via GTEST_SHARD_INDEX and GTEST_TOTAL_SHARDS, the\noutput JSON should also emit that same shard index.\n\nBug: 926987\nChange-Id: I50133725e520c7e8c740aaa198c48d3d41c72ff7\nReviewed-on: https://chromium-review.googlesource.com/c/1474616\nReviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCommit-Queue: Erik Chen \u003cerikchen@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 6831440d8b3dd34fc0865399d6973798804e018f\n"
    },
    {
      "commit": "30b80fe759e1c691fdb093f211297f0f58c43a2f",
      "tree": "a449fe098ee97270867270b9701fb146b8e0541e",
      "parents": [
        "91e0250f4c39cc54e09f7514bfa72b453ba0ea59"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Fri Feb 08 13:51:31 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Fri Feb 08 13:51:31 2019"
      },
      "message": "[client] run_isolated closes file handles before starting task process\n\nThis changes the behavior of the Swarming bot to stop leaking processes\ninto the task.\n\nThis works *because* run_isolated.py doesn\u0027t redirect any of stdin, stdout nor\nstderr; it\u0027s task_runner.py that has this responsibility. close_fds\u003dTrue is not\nsupported on Windows when standard input or outputs are redirected.\n\nBug: 929965\nChange-Id: Ibf338852aa838ff66964d035af1c449f8acf236f\nReviewed-on: https://chromium-review.googlesource.com/c/1459561\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nReviewed-by: Robbie Iannucci \u003ciannucci@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: aefdee5cf1d5b2aa572717c2f2ef594dc56fa65f\n"
    },
    {
      "commit": "91e0250f4c39cc54e09f7514bfa72b453ba0ea59",
      "tree": "2a555afe9702cc9da23987a7f82c429660e5e01b",
      "parents": [
        "79d4219567ec9c0d1638046a6a1b43497ec6146a"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Wed Feb 06 19:48:26 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Wed Feb 06 19:48:26 2019"
      },
      "message": "[client] upgrade third party pyasn1 and pyasn1-modules\n\npyasn1 from 0.1.9 to 0.4.5\npyasn1-modules from 0.0.5 to 0.2.4\n\nThese were horribly old. 😬\n\nBug: 924627\nChange-Id: Ibe878cf93ef7c6bce740b88439514a054c28cf94\nReviewed-on: https://chromium-review.googlesource.com/c/1454828\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nReviewed-by: Quinten Yearsley \u003cqyearsley@chromium.org\u003e\nAuto-Submit: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: e27dbc2ae8d434b43b90a3db0c45e294dc848e8f\n"
    },
    {
      "commit": "79d4219567ec9c0d1638046a6a1b43497ec6146a",
      "tree": "453442890a2b85b13b09bf464121bba92dadfc33",
      "parents": [
        "a274ffbe0ba956856655aee9fe684efb1c02d8f3"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Wed Feb 06 19:24:16 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Wed Feb 06 19:24:16 2019"
      },
      "message": "[swarming] Continue SHA-256 support\n\nIt\u0027s now good enough that the smoke test passes with namespace\n\u0027sha256-deflate\u0027. \\o/\n\nThis should now be good enough for live experimentation, albeit it cannot be\nused for production because the Go code is not fully compliant yet.\n\nBug: 787113\nChange-Id: Id3159944eb9be00ea920d4b320eb51057b3ff3a8\nReviewed-on: https://chromium-review.googlesource.com/c/1454825\nReviewed-by: Quinten Yearsley \u003cqyearsley@chromium.org\u003e\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nAuto-Submit: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 0a701d19798bfa586840d1f8e67642e61306825f\n"
    },
    {
      "commit": "a274ffbe0ba956856655aee9fe684efb1c02d8f3",
      "tree": "484e4931793db14660d052964b0bf0ba0faa05ad",
      "parents": [
        "bb6f4e315c4ca1da4ee4d7a7b611904cf6a4b7e5"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Tue Feb 05 23:38:41 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Tue Feb 05 23:38:41 2019"
      },
      "message": "[isolate] Add partial SHA256 and SHA512 support.\n\n- Add unit test to do end-to-end test for different configurations.\n- Change swarming smoke test to use a non-default namespace with the Swarming\n  server. Do not use sha256 yet, as it\u0027s not yet working.\n- Fix incorrect documentation, the supported suffixes for compression are -gzip\n  and -deflate, but not -flate. (Oops)\n- Remove the one place where -flate was supported in the python code, because it\n  was inconsistent with the rest.\n\nBug: 787113\nChange-Id: I2209ffd902f347862c4613d50bcd93e760288a21\nReviewed-on: https://chromium-review.googlesource.com/c/1453045\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nReviewed-by: Quinten Yearsley \u003cqyearsley@chromium.org\u003e\nAuto-Submit: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 3b5d5f3ffb9ec68a9cbd3089eec9d83796f4c122\n"
    },
    {
      "commit": "bb6f4e315c4ca1da4ee4d7a7b611904cf6a4b7e5",
      "tree": "b31916fdbf2b64ecd666c1260684836a901770df",
      "parents": [
        "1d3eea78fb2946a5122b15b91daed1640ecfff44"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Sat Feb 02 00:02:59 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Sat Feb 02 00:02:59 2019"
      },
      "message": "Fix typo in README\n\nR\u003dnodir@chromium.org\n\nChange-Id: Ibad95223eda69404f359266efe067b9d33760f7c\nReviewed-on: https://chromium-review.googlesource.com/c/1450064\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nReviewed-by: Nodir Turakulov \u003cnodir@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 721ffb48bae7ea0c4d3e5080536009549aa02f7c\n"
    },
    {
      "commit": "1d3eea78fb2946a5122b15b91daed1640ecfff44",
      "tree": "580a4b72abed9b1b63c96b66365b228ef026154a",
      "parents": [
        "a6bd3f436edb6793df24d477e135211f2dc7bb92"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Fri Feb 01 22:24:02 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Fri Feb 01 22:24:02 2019"
      },
      "message": "[client] Change support for SHA-256 and SHA-512\n\n- The way it\u0027s encoded in the namespace is now saner, a \u0027sha256-\u0027 prefix\n  instead of \u0027sha-256-\u0027 which is trickier to parse.\n- This now match with a recent server-side change.\n- SHA-256 will be used for RBE CAS support.\n- Update isolate_storage_test.py to at least run one test case even if\n  gRPC is not usable.\n\nBug: 787113, 924625\nChange-Id: I5c2cbc6502873d922013571882ce7e0fb25bb12b\nReviewed-on: https://chromium-review.googlesource.com/c/1450061\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nAuto-Submit: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nReviewed-by: Quinten Yearsley \u003cqyearsley@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 671be2c7a52ef1760c828237429bcf1383765e27\n"
    },
    {
      "commit": "a6bd3f436edb6793df24d477e135211f2dc7bb92",
      "tree": "3884065600c17cd83df79412b9f981e1ad3a8c8a",
      "parents": [
        "f391c7794cd15b58462e5bad9aa09bf48071b69a"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Fri Feb 01 22:09:21 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Fri Feb 01 22:09:21 2019"
      },
      "message": "[client] Update swarming bot load test\n\nIt\u0027s still very much broken, but at least it uses the new terminology.\n\nChange-Id: I5acde0e850786efae98fb11ef677dd32276303e7\nReviewed-on: https://chromium-review.googlesource.com/c/1450059\nCommit-Queue: Quinten Yearsley \u003cqyearsley@chromium.org\u003e\nReviewed-by: Quinten Yearsley \u003cqyearsley@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 4ba50a1271c448528220eda80fe4f75e850643f6\n"
    },
    {
      "commit": "f391c7794cd15b58462e5bad9aa09bf48071b69a",
      "tree": "9e6fe76c0c448fd30a45a70a3c06485fdfccbe1e",
      "parents": [
        "799bc4f107596dbe2ab7203f96d4ee3b32cc1995"
      ],
      "author": {
        "name": "Stephen Martinis",
        "email": "martiniss@google.com",
        "time": "Fri Feb 01 01:22:12 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Fri Feb 01 01:22:12 2019"
      },
      "message": "Fix typo in command line argument\n\nChange-Id: I30c8ea6316b4bc2fa6a4fbd080b0b42dcd8ba400\nReviewed-on: https://chromium-review.googlesource.com/c/1443814\nReviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: b805ab8110acd3d3e98fcf1a92f694b0b73419e5\n"
    },
    {
      "commit": "799bc4f107596dbe2ab7203f96d4ee3b32cc1995",
      "tree": "d841392c9b319eae2d52b6980e4799a88e65ffbc",
      "parents": [
        "0eb2eb2ac2bac32fc9585971c112405954454378"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Wed Jan 30 22:54:47 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Wed Jan 30 22:54:47 2019"
      },
      "message": "[client] fs.walk() now implements followlinks\u003dFalse; fix fs.remove()\n\n- Add unit test to fs_test.py to confirm walk() now ignores symlinks on Windows.\n- Fix remove() on Windows, it was aliased by accident.\n- These two fixes fix problems that surfaced in local_caching due to the walk\n  going through directory symlinks, deleting too much.\n- local_caching.NamedCache: Raise exception reusing the previous traceback.\n  Otherwise it\u0027s impossible to know which line had failed. This way, we know\n  which operation failed.\n- local_caching.NamedCache: fix cleanup() on Windows to check symlinks the same\n  way it\u0027s done on posix.\n- Update local_caching_test.py to use package fs.\n- Make local_caching_test.py pass on Windows.\n\nRan fs_test.py and local_caching_test.py on macOS and Windows.\n\nChange-Id: Id26effd1b52a81986f4f22036e3d1a5a6765e822\nBug: 853721\nReviewed-on: https://chromium-review.googlesource.com/c/1443917\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nReviewed-by: Quinten Yearsley \u003cqyearsley@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 28ba10a22b771271620ee84a819286c8b81f3d2f\n"
    },
    {
      "commit": "0eb2eb2ac2bac32fc9585971c112405954454378",
      "tree": "95050db9613f0c7fcf23dc293d7d5fe264a15119",
      "parents": [
        "957c7c27d8e1dbf6e320ff240d847b6c52456361"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Tue Jan 29 21:00:16 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Tue Jan 29 21:00:16 2019"
      },
      "message": "[client] Implement fs.readlink(); Fix fs.symlink()\n\n- fs.symlink() did not work with relative paths on Windows. This\n  limitation was overlooked, causing failure at runtime on Windows.\n- Add readlink() for completeness.\n- With both supported, add unit tests to ensure they work as expected.\n- Improve ctypes typing.\n- Fix file_path_test.py to pass on Windows.\n\nRan manually file_path_test.py and fs_test.py on macOS, Ubuntu, and Windows7 as\nan administrator.\n\nBug: 853721\nChange-Id: I5acc5b3a02864fff82fd29ea9cd47783f7123d22\nReviewed-on: https://chromium-review.googlesource.com/c/1440361\nReviewed-by: Quinten Yearsley \u003cqyearsley@chromium.org\u003e\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 87e679e3959c911955d9d61ccae6d7339b11e93d\n"
    },
    {
      "commit": "957c7c27d8e1dbf6e320ff240d847b6c52456361",
      "tree": "f045e578022fe9f6f9d6868b7c6283c781d68448",
      "parents": [
        "97430be1c5b23b564246ecd81124a18328651d73"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Fri Jan 25 22:21:05 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Fri Jan 25 22:21:05 2019"
      },
      "message": "[client] Fix regression in named cache symlink handling\n\n- Fix invalid variable in failure path.\n- Add unit tests for the failure paths in install() and uninstall().\n- Stop allocating before ensuring the directory is not empty.\n- Make named cache symlinks relative instead of absolute.\n- Update cleanup() expectation.\n- Migrate all calls to use fs, which handles long paths on Windows.\n- Make install() and uninstall() return the cache size, to improve the\n  test expectations.\n- Fix a typo left in bd2a81bbd3a1c96392edce9f.\n\nChange-Id: I04a5e561548a9412909a5cf82f00c62ae93e22a7\nReviewed-on: https://chromium-review.googlesource.com/c/1436119\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nReviewed-by: Quinten Yearsley \u003cqyearsley@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 5807903d5d0a93786bd0c6c6d04c0c84cec683aa\n"
    },
    {
      "commit": "97430be1c5b23b564246ecd81124a18328651d73",
      "tree": "ff7fcd3856b269b8c582e772bc3ffea2b3091220",
      "parents": [
        "404e55bd12966da324c28ae1f3cecce381a77248"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Fri Jan 25 18:26:34 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Fri Jan 25 18:26:34 2019"
      },
      "message": "[client] Fix bug in NamedCache.install()\n\nWe weren\u0027t hit by this bug before just by chance.\n\nThe bug happened on Fuchsia fleet because they started using a two\nletter named cache.\nThe bug is that it looked for the wrong place to delete a stale symlink,\nand it hit an random two letters previous named cache and deleted it,\ncausing internal inconsistency.\n\nRename variables to help with clarity, \u0027path\u0027 is quite generic.\n\nImprove comments.\n\nInclude whitespace change in swarming to ensure its tests run too.\n\nTBR\u003dqyearsley@chromium.org\n\nChange-Id: I96e26205b75043a3505d6aefb4fc697e82e1e07f\nReviewed-on: https://chromium-review.googlesource.com/c/1436115\nReviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: bd2a81bbd3a1c96392edce9f85604215a77e9d5f\n"
    },
    {
      "commit": "404e55bd12966da324c28ae1f3cecce381a77248",
      "tree": "fdb55f5203f243691130d81b6f16f1cdbb063c38",
      "parents": [
        "5a02427dabd3d91fd59e30b6ec6f0b89170ae9cc"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Mon Jan 21 19:02:09 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Mon Jan 21 19:02:09 2019"
      },
      "message": "[infra_libs] Update bqh.py to infra_libs v2.0.0\n\nTBR\u0027ed because I want to push this live to the services while the US is on an\nholiday, as this CL requires recreating the BigQuery tables, and to make it\nviable, I need to disable the cron jobs temporarily.\n\nTBR\u003dqyearsley@chromium.org\n\nBug: 765435, 923324\nChange-Id: Iba2a6b70cbd73534b91a7bdfa77da2a49342e209\nReviewed-on: https://chromium-review.googlesource.com/c/1425777\nReviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 9647885b80a223b42262e9f0d73e9fdf083dd346\n"
    },
    {
      "commit": "5a02427dabd3d91fd59e30b6ec6f0b89170ae9cc",
      "tree": "cf258c72a4b231db30d1edc901f074263699509e",
      "parents": [
        "1905d1b03490e369525db9ea387ee819ea27a743"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Tue Jan 15 20:11:16 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Tue Jan 15 20:11:16 2019"
      },
      "message": "client: lower symlink message to warning\n\nWhen it is logged as an error on Windows, it shows up in the task\u0027s stdout and\nbreaks many task_runner_test.py test cases on Windows.\n\nThese failures make it hard to add more test cases.\n\nBug: 921842\nChange-Id: I2304ab8bf4955b9332f8bb3c0a1e737a9c039b4a\nReviewed-on: https://chromium-review.googlesource.com/c/1412256\nAuto-Submit: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nReviewed-by: Quinten Yearsley \u003cqyearsley@chromium.org\u003e\nCommit-Queue: Quinten Yearsley \u003cqyearsley@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 55f70ce5ad7eec605742927318868e99245aff2e\n"
    },
    {
      "commit": "1905d1b03490e369525db9ea387ee819ea27a743",
      "tree": "dbaf53caa7f4198361addd6380a03789162391c8",
      "parents": [
        "0aa7ebfdbde020770ab8225c30cf58bed934a2d7"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Tue Jan 15 20:01:06 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Tue Jan 15 20:01:06 2019"
      },
      "message": "client: rename mock to fake; move swarming fake into its own file\n\nTest only change; no functional change.\n\nThese (CIPD, Isolate, Swarming) are fakes, not mocks.\n\nThis is purely a cosmetical change, but I want to expand on the swarming fake to\nfix task_runner_test, and the incorrect wording was confusing.\n\nChange-Id: I84b48cb417980af5ae0cdc4038cae6e055cc2478\nBug: 921842\nReviewed-on: https://chromium-review.googlesource.com/c/1412254\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCommit-Queue: Quinten Yearsley \u003cqyearsley@chromium.org\u003e\nReviewed-by: Quinten Yearsley \u003cqyearsley@chromium.org\u003e\nAuto-Submit: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 8c73c4599f067823097e2d33f5c8f3d8afaba27b\n"
    },
    {
      "commit": "0aa7ebfdbde020770ab8225c30cf58bed934a2d7",
      "tree": "3749f5721ec679353df5fb9cba6c4f23ed8707cf",
      "parents": [
        "743a3115ead8968c1a70dd964f96872b69733132"
      ],
      "author": {
        "name": "Ben Pastene",
        "email": "bpastene@chromium.org",
        "time": "Tue Jan 08 15:18:52 2019"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Tue Jan 08 15:18:52 2019"
      },
      "message": "swarming: Remove sticky bits from caches when calling make_tree_deleteable().\n\nIf a file/dir is owned by root and has the sticky bit set, only root can\nremove it. If such a file is present in a bot\u0027s cache, the bot is unable\nto delete that cache if the bot runs as non-root.\n\nThis change will remove all sticky bits from caches when the bot tries\ndeleting things, which should allow it to do so.\n\nR\u003dmaruel\n\nBug: 919599\nChange-Id: Iba741fc7a2935d092dbed7b1de6d8bb1b578a04b\nReviewed-on: https://chromium-review.googlesource.com/c/1399144\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nReviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: bfe82ee618c49228ce6c6c3035973da47d783d0a\n"
    },
    {
      "commit": "743a3115ead8968c1a70dd964f96872b69733132",
      "tree": "337b6af1a61156ca0fae33922f328ba975a1f776",
      "parents": [
        "440eee6b1066a4785194f008217130d4c0b1aec4"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Mon Dec 10 14:46:52 2018"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Mon Dec 10 14:46:52 2018"
      },
      "message": "[isolate] Add bigquery exporter\n\n- Adds cron job to export the statistics to BigQuery.\n- Include unit test.\n- Include setup_bigquery.sh to automate the ACL. This is important because I\n  don\u0027t want to do it manually for each individual instance. This is a first\n  step towards eventually making the deployment more automated.\n- Include bigquery/helper.py -\u003e bqh.py rename that is still in-progress in\n  infra_libs. This is needed because for an unknown reason, a symlink in a\n  directory that is also referenced via a symlink causes the code to not be\n  uploaded in appcfg.py.\n- Blacklist bqh.py from PRESUBMIT otherwise it get caught in the license header\n  check.\n- Stop packaging bigquery/helper in the Swarming bot, it\u0027s not used.\n\nChange-Id: Idb90c87b59ab49a1b0199b3f0c038f210c30c470\nReviewed-on: https://chromium-review.googlesource.com/c/1366636\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nReviewed-by: Quinten Yearsley \u003cqyearsley@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 02a8a2ddad3e13eebf19b4a572fbba50e2eea6fa\n"
    },
    {
      "commit": "440eee6b1066a4785194f008217130d4c0b1aec4",
      "tree": "3901adc7a9c7852fe3ff9086f6820d780f5894af",
      "parents": [
        "1b2885dd0b4fa957e747cd0f19868f8505b049fe"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Tue Dec 04 22:37:05 2018"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Tue Dec 04 22:37:05 2018"
      },
      "message": "[client] Add tarring code but keep it disabled\n\nAdd new code to generate tar balls but do not enable the code. This is because\nthe Go client can upload tarballs but cannot download (!!) them. Sigh.\n\n- Only do it for directory upload, not for individual files. This is similar to\n  how the Go code does.\n- Only batch if a minimum of 5 files can be batched.\n- Batch up to 100,000 of data.\n- Use threaded tar file content generator, because there\u0027s no other way to do in\n  python.\n- Add a unit test.\n\nBug: 825418\nChange-Id: Ic8cf089d0c3c65610aa67d0893eab087ffe158d8\nReviewed-on: https://chromium-review.googlesource.com/c/1357020\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nReviewed-by: Robbie Iannucci \u003ciannucci@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 61640467dea4aff6609f5aa121f7b92c62c527e1\n"
    },
    {
      "commit": "1b2885dd0b4fa957e747cd0f19868f8505b049fe",
      "tree": "0dc5b2a490b4fa68e04aadaa0f62473f1378f0a3",
      "parents": [
        "13554fd6a0280b77cd3cdcf9c73ab890ae15fe92"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Tue Dec 04 18:30:33 2018"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Tue Dec 04 18:30:33 2018"
      },
      "message": "[client] lazy hash and improve symlink processing\n\n- Stop hashing in file_to_metadata(). The hashing must be delayed for\n  tarballs, as only the hash of the whole tarball is needed, not the\n  hash of each of its individual files.\n- Small performance improvement for symlinks, to not call stat() twice\n  on them. This is still the case for other files. :/\n- Make isolate_storage.Item more \u0027immutable\u0027. This is to help with data\n  flow.\n- Make isolate_storage.Item know how to calculate its own digest. This\n  is needed for tarfiles, as they won\u0027t be written to disk, nor be fully\n  kept in memory. This removes the need for prepare().\n- As a small performance improvement, do not saves isolated files\n  created for directory to disk anymore. This should be fine even on\n  32-bit process, as the size and number of isolated files is generally\n  small.\n\nThis code is the final (!) preparation for adding tarball support to\npython isolated upload.\n\nBug: 825418\nChange-Id: I9e68cb2b2b9cf7bd9c3d099c32168f0414b3c14a\nReviewed-on: https://chromium-review.googlesource.com/c/1358673\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nReviewed-by: Quinten Yearsley \u003cqyearsley@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 7560565e15538cfca0387172aeb4123110cc20a1\n"
    },
    {
      "commit": "13554fd6a0280b77cd3cdcf9c73ab890ae15fe92",
      "tree": "0c20fe50f54c9388af201eaedeef76ca3c4b416b",
      "parents": [
        "1a1405fc0f654367c7c57e7c21020b01e2343fbb"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Tue Dec 04 18:01:05 2018"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Tue Dec 04 18:01:05 2018"
      },
      "message": "[client] Remove timestamp from file metadata\n\nRemove the \u0027prev_dict\u0027 from isolated_format.py file_to_metadata().\n\nThis existed to accelerate isolate.py archival. The problem is that it\nwas done at the wrong layer! The performance optimization should have\nbeen done at the isolated layer, not isolate (which is too high). In\npractice almost no client use isolate.py archive, and this tool is going\naway. Since isolated doesn\u0027t have this performance optimization, this is\nnot a regression.\n\nThe other reason for this to be done is that hashing will be done\nlazily in a follow up CL, as when the file is included in a tarball, it\nis completely useless to hash individual files.\n\nThis CL is split to simplify reviewability.\n\nBug: 825418\nChange-Id: Ic033dace3244b470f722b119eefec6088ea16a19\nReviewed-on: https://chromium-review.googlesource.com/c/1358672\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nReviewed-by: Quinten Yearsley \u003cqyearsley@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 07a3f1459c75ecc31c978ab8a8db7ecff6cb1700\n"
    },
    {
      "commit": "1a1405fc0f654367c7c57e7c21020b01e2343fbb",
      "tree": "7308f3089a8b53e5f50aafe79a10b60b71474c58",
      "parents": [
        "dcff6469acb7936071eb1b0cbf02d9a41e63d1b2"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Tue Dec 04 17:39:22 2018"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Tue Dec 04 17:39:22 2018"
      },
      "message": "[client] Move expand_directories_and_symlinks()\n\nMove it from isolated_format.py to isolate.py as it\u0027s the only place it\u0027s used.\n\nNo functional change, splitting in a separate CL to ease reviewing.\n\nBug: 825418\nChange-Id: I446ba5deed84a4ef1ee2b2d96e15ae76f66ac5ab\nReviewed-on: https://chromium-review.googlesource.com/c/1358671\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nReviewed-by: Quinten Yearsley \u003cqyearsley@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 36c824fc898f61fbe127b54897df1d329060e0ef\n"
    },
    {
      "commit": "dcff6469acb7936071eb1b0cbf02d9a41e63d1b2",
      "tree": "ca3a51c8afd2816938b92922bac979c3ccc5c3cb",
      "parents": [
        "af45155fcaae6b8e6ab6693e44817768716e82d9"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Tue Dec 04 16:35:18 2018"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Tue Dec 04 16:35:18 2018"
      },
      "message": "[client] Small improvements\n\nNo real functional change.\n\n- save_isolated() doesn\u0027t return anything. This was done this way because it was\n  thought that eventually it would split automatically in isolated layers as a\n  performance optimization. In practice we used tarring instead.\n- Make expand_symlinks() private.\n- Make create_symlinks() and get_zip_compression_level() private.\n- Change some tests to use package \u0027fs\u0027 instead of \u0027os\u0027.\n- Prepare the replacement of FakeItem with BufferItem in isolateserver_test.py.\n\nBug: 825418\nChange-Id: I095ede8ae43a550848c85c3f7ea2b3a48b11503b\nReviewed-on: https://chromium-review.googlesource.com/c/1358571\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nReviewed-by: Quinten Yearsley \u003cqyearsley@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: ebc22e5559fe0fe0f6268baf851ad5bf5aeb7fb0\n"
    },
    {
      "commit": "af45155fcaae6b8e6ab6693e44817768716e82d9",
      "tree": "be87b9226141e8b35af1dce26aba09625df51249",
      "parents": [
        "73c0ae7f15b2991e34e3e368eb906a3f9cfbff36"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Fri Nov 30 18:53:21 2018"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Fri Nov 30 18:53:21 2018"
      },
      "message": "[client] Add unit test for symlink bug\n\nA fix was added to 1b757e2e26f97ea01ae893588c0f0ae84baff11f but no unit test was\nadded. Add one so this doesn\u0027t regress.\n\nTest only change.\n\nR\u003dqyearsley@chromium.org\n\nBug: 825418\nChange-Id: Ib5571c57d297f211e29509ab0b351996b7aeba19\nReviewed-on: https://chromium-review.googlesource.com/c/1357019\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nReviewed-by: Quinten Yearsley \u003cqyearsley@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 1c28ee319deefabdc27364b5223198e492647782\n"
    },
    {
      "commit": "73c0ae7f15b2991e34e3e368eb906a3f9cfbff36",
      "tree": "b34fe8f62c1e41fcc3829bda0cdf5533c47e2bd7",
      "parents": [
        "9cd5ef0825c3ce9fd3b51505ac68a82b8c008713"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Fri Nov 30 14:05:45 2018"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Fri Nov 30 14:05:45 2018"
      },
      "message": "[client] Fix a crash when no entry was processed\n\nPreviously upload_items() would early exit if there is no item to upload. Now\nthat items is a python generator instead of a list, there\u0027s no way to easily\ndetermine if the generator is going to be empty (it could be done but it\u0027s not\nworth the trouble).\n\nWhen there\u0027s no item, it causes a divide by zero. Oops.\n\nInclude unit test to confirm the fix.\n\nTBR\u0027ing because the breakage is live on production.\n\nTBR\u003dqyearsley@chromium.org\n\nBug: 825418\nChange-Id: If35bb30bd4eed14c95005bb965e60e365ca408bf\nReviewed-on: https://chromium-review.googlesource.com/c/1355725\nReviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 0f56bf605063abd99898e162cdf3db5f08b1be9b\n"
    },
    {
      "commit": "9cd5ef0825c3ce9fd3b51505ac68a82b8c008713",
      "tree": "8bb4905ab27a824c548efefd8926e88cf8074de7",
      "parents": [
        "0e3e1c4dc4e79f25a5b58fcbc135dc93183c0c54"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Thu Nov 29 23:47:34 2018"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Thu Nov 29 23:47:34 2018"
      },
      "message": "[client] Fix symlink bug\n\nThat happens only on task output with a symlink.\n\nBug: 825418\nChange-Id: I0412d7c2438b3a14a19712709c1f98ccab5109a5\nReviewed-on: https://chromium-review.googlesource.com/c/1355723\nReviewed-by: Quinten Yearsley \u003cqyearsley@chromium.org\u003e\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 1b757e2e26f97ea01ae893588c0f0ae84baff11f\n"
    },
    {
      "commit": "0e3e1c4dc4e79f25a5b58fcbc135dc93183c0c54",
      "tree": "6c65e8d5debf2d18d5d03de997180583db84844e",
      "parents": [
        "cc802b024af4995e7f1b008ae58c21e33c808c35"
      ],
      "author": {
        "name": "Takuto Ikuta",
        "email": "tikuta@chromium.org",
        "time": "Thu Nov 29 14:21:06 2018"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Thu Nov 29 14:21:06 2018"
      },
      "message": "[client] do not convert json format from new api to old api\n\nThis is preparation of migration to go client.\nI will drop support for old api in swarming recipe module.\nThis allows to simplify swarming recipe module too.\n\nBug: 894045\nChange-Id: I1dc9e2402e4e2cfed09c178f8e426a44970706be\nReviewed-on: https://chromium-review.googlesource.com/c/1354845\nCommit-Queue: Takuto Ikuta \u003ctikuta@chromium.org\u003e\nAuto-Submit: Takuto Ikuta \u003ctikuta@chromium.org\u003e\nReviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 35b19ce7634469a5af1012b4160b7de6841494a5\n"
    },
    {
      "commit": "cc802b024af4995e7f1b008ae58c21e33c808c35",
      "tree": "d0362f9c4d6c2453d1bcb7dfd94590d3989d23a2",
      "parents": [
        "4494b6cfc9c2a639c23000cd483478598e2d1850"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Wed Nov 28 21:05:01 2018"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Wed Nov 28 21:05:01 2018"
      },
      "message": "[client] Further use generator during enumeration\n\nLeverage that TaskChannel can now be used as a multithreaded python generator.\n\nThis permits to send inputs to /contains RPC before the full isolated is\nrasterized, which helps with reducing overall latency.\n\nThis change, coupled with the 3 previous ones results in 10 seconds saving on a\nWindows 7 VM on a 2658 files/639MiB dataset.\n\nThe tarring should live between expand_directories_and_symlinks() and\n_directory_to_metadata().\n\nBug: 825418\nChange-Id: I9321250ade2a3838a7009351fc06295ad1e23399\nReviewed-on: https://chromium-review.googlesource.com/c/1349376\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nReviewed-by: Quinten Yearsley \u003cqyearsley@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 637736ab96e7bc28d3f8bcce4e96a291869a03fc\n"
    },
    {
      "commit": "4494b6cfc9c2a639c23000cd483478598e2d1850",
      "tree": "7b712ad78472975d27c4f48f3a1939e7d5a08b4b",
      "parents": [
        "b69069bbbdd8b75b0a4b8dce29ab076b6b094f06"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Wed Nov 28 21:00:41 2018"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Wed Nov 28 21:00:41 2018"
      },
      "message": "[client] Make TaskChannel usable as a generator\n\nFor a class to be usable as a python generator, it must have:\n- __iter__()\n- next()\n\nI added __iter__() and renamed pull() to next().\n\nThis will be useful as a multithreaded python generator.\n\nSplitting as a separate CL to make it easier to review.\n\nIncludes relevant unit test.\n\nBug: 825418\nChange-Id: Ic2e8a288a991dc214dea59e9533010679d0fde21\nReviewed-on: https://chromium-review.googlesource.com/c/1349377\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nReviewed-by: Quinten Yearsley \u003cqyearsley@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: df4bf3d52e3911f5415bf9613735b4811ef94fff\n"
    },
    {
      "commit": "b69069bbbdd8b75b0a4b8dce29ab076b6b094f06",
      "tree": "052bb3025edd04cfb6c8e8f62ed2e09b64f6301b",
      "parents": [
        "d0868ecd372c4f6c8f045f1aaca78df4c2f95771"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Wed Nov 28 20:50:40 2018"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Wed Nov 28 20:50:40 2018"
      },
      "message": "[client] Convert the upload to be pipelined; various performance tuning\n\nOriginally the full \u0027items\u0027 list had to be materialized before\nuploading. upload_items() now starts the lookup as items are processed,\nwhich will reduce the overall latency.\n\nComment out logging and asserts in deep functions to help with performance.\nIntentionally leave the logging lines in, as this could be useful for follow up\ndebugging. I do expect a significant performance boost by this CL, but not on\nthe order of magnitude that tarring will do. But both will combine, so this is\nfor the best.\n\nMark many functions as private.\n\nAfter this the tarring will be much more efficient.\n\nBug: 825418\nChange-Id: I7a470ae96b2b93c46459cf96e919b814ba264baf\nReviewed-on: https://chromium-review.googlesource.com/c/1348810\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nReviewed-by: Quinten Yearsley \u003cqyearsley@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: e61b23263a39b569cd655ff2a915d85d2b0d4bed\n"
    },
    {
      "commit": "d0868ecd372c4f6c8f045f1aaca78df4c2f95771",
      "tree": "421218c1dcf8b0af6d9585653492e3fc064f7778",
      "parents": [
        "33d198cadeed6782ff6d7941f51ad12a189a0699"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Wed Nov 28 20:47:29 2018"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Wed Nov 28 20:47:29 2018"
      },
      "message": "[client] reduce the duplication of logic in isolateserver.py\n\nSplitting this as a separate CL because this is fairly tricky code:\n- To be able to add automatic tarring, I need to first reduce the\n  duplicate code inside the uploading paths.\n- To accelerate the processing, we need to stop serializing the list and instead\n  switch the inputs to be processed as a generator.\n\nChanges:\n- upload_tree() was removed, relevant parts pushed to isolate.py as\n  _process_infiles().\n- archive_files_to_storage() is now the base function.\n- Make archive_files_to_storage() accept an iterator and work with duplicates.\n- Extract directory logic from archive_files_to_storage() into _enqueue_dir(),\n  that\u0027s likely where the tarring will be done.\n- inline archive().\n\nBug: 825418\nChange-Id: I462a7f433ca013428fe377b4ca4d23cf8ad5d85b\nReviewed-on: https://chromium-review.googlesource.com/c/1345190\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nReviewed-by: Quinten Yearsley \u003cqyearsley@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 55064a029241876f089b3f7b813c5899e95981c6\n"
    },
    {
      "commit": "33d198cadeed6782ff6d7941f51ad12a189a0699",
      "tree": "81c4be01995a923fb7176d0a1c4196d574496812",
      "parents": [
        "157bec8a25cc4ebd6a16052510d08b05b6102aad"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Tue Nov 27 21:12:16 2018"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Tue Nov 27 21:12:16 2018"
      },
      "message": "[client] check upfront for \u0027pool\u0027 dimension to be specified\n\nOtherwise the error message is really crappy.\n\nR\u003dqyearsley@chromium.org\n\nChange-Id: I681733c0ea6d0b9b0948c3251326f36952562c3a\nReviewed-on: https://chromium-review.googlesource.com/c/1349372\nReviewed-by: Quinten Yearsley \u003cqyearsley@chromium.org\u003e\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: c3b934388a68f4fb61704c5a096d4870075f9c61\n"
    },
    {
      "commit": "157bec8a25cc4ebd6a16052510d08b05b6102aad",
      "tree": "ccd5bca306685c3f6ecc34c18efb192b30eba859",
      "parents": [
        "f8803b6579edb32c5a87eb657fe9194146121f5e"
      ],
      "author": {
        "name": "Brad Hall",
        "email": "bradhall@google.com",
        "time": "Mon Nov 26 22:15:38 2018"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Mon Nov 26 22:15:38 2018"
      },
      "message": "Make sure to setup_googletest on all slices\n\nIf we don\u0027t do this then GTEST_SHARD_* env variables won\u0027t be set\n\nBug: 871453, 908551\nChange-Id: Id11b140294906cadd2c9ca7c39e0aab2fda0c0af\nReviewed-on: https://chromium-review.googlesource.com/c/1351358\nReviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCommit-Queue: Brad Hall \u003cbradhall@google.com\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: d07efe857282aaa2ccd332eb974308be66c8393a\n"
    },
    {
      "commit": "f8803b6579edb32c5a87eb657fe9194146121f5e",
      "tree": "5843b62b55bcebcf2af805dd595f4143c341d024",
      "parents": [
        "8c7a07638b04e047c18794cd6a3449683c2996e5"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Mon Nov 26 21:31:47 2018"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Mon Nov 26 21:31:47 2018"
      },
      "message": "[client] Add warning about variable flags\n\nR\u003dqyearsley@chromium.org\n\nBug: 907880\nChange-Id: I4d097a78c2af97a71dd539f37a912514e9f83772\nReviewed-on: https://chromium-review.googlesource.com/c/1347671\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nReviewed-by: Quinten Yearsley \u003cqyearsley@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 8b7f24eff3ec0998fef52b568fba9bc5e53aa495\n"
    },
    {
      "commit": "8c7a07638b04e047c18794cd6a3449683c2996e5",
      "tree": "0021d93679989f34dc6252b2fbe2454bbcc344d5",
      "parents": [
        "b851313287e772f3baa892854d9663c844e74dd1"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Wed Nov 21 19:10:02 2018"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Wed Nov 21 19:10:02 2018"
      },
      "message": "[client] Stop leaking dir \u0027cache\u0027 when running isolateserver_test.py\n\n- The \u0027cache/\u0027 leak was an oversight.\n- Remove spurious log output.\n\nTest only change, no behavior change.\n\nR\u003dqyearsley@chromium.org\n\nChange-Id: Ic48f31b4c796a4562602a4a24f1060d52d9f2124\nReviewed-on: https://chromium-review.googlesource.com/c/1346549\nReviewed-by: Quinten Yearsley \u003cqyearsley@chromium.org\u003e\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: e90571ebc90c88a16ec8f09a80b45a8ab86cd996\n"
    },
    {
      "commit": "b851313287e772f3baa892854d9663c844e74dd1",
      "tree": "bb4abe117e8c4de197fdfd73985cf53b655e75fd",
      "parents": [
        "b6e9e23e4e79249bd4f95735205ffb7c3f9f0912"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Tue Nov 20 19:48:53 2018"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Tue Nov 20 19:48:53 2018"
      },
      "message": "[client] internal refactoring adding ServerRef\n\n- Create isolate_storage.ServerRef instead of passing the isolate server base\n  URL and its namespace, then make assumptions based on that.\n  - This causes a fair amount of churn in the unit tests due to mocks but there\n    shouldn\u0027t be externally visible impact.\n- Reduce usage of isolated_format.SUPPORTED_ALGOS_REVERSE.\n- Touch appengine/swarming/README.md to force the unit tests there to run.\n- Fix macOS failure in isolate_test.py and swarming_test.py due to python\n  symlink (unrelated with the rest).\n\nChange-Id: Ice201231aa1959043dd816256f88b16ba323ec2d\nBug: 825418\nReviewed-on: https://chromium-review.googlesource.com/c/1343298\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nReviewed-by: Quinten Yearsley \u003cqyearsley@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 20f418d883556f6089d4f280cf38febfabea066f\n"
    },
    {
      "commit": "b6e9e23e4e79249bd4f95735205ffb7c3f9f0912",
      "tree": "85b3f92172b8eb8fc2beca16ecbb00e20b3a7548",
      "parents": [
        "eb400be1ceec64e24c9c86be20e6e16274020e90"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Tue Nov 20 00:12:33 2018"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Tue Nov 20 00:12:33 2018"
      },
      "message": "[client]: fix undefined class reference\n\nI made an error in 98e957c3aa3d12352bdbb0fdbd8305537b5d034c.\nNotFoundError never existed. Oops.\n\nR\u003dqyearsley@chromium.org\n\nChange-Id: Ie63ea89ffd3bb59f963e24fae1f3e4dca3dd82a7\nReviewed-on: https://chromium-review.googlesource.com/c/1343299\nReviewed-by: Quinten Yearsley \u003cqyearsley@chromium.org\u003e\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 19926ce956da49d811481a433c1d149a80ddbd47\n"
    },
    {
      "commit": "eb400be1ceec64e24c9c86be20e6e16274020e90",
      "tree": "f028e6013cf40afda59bc7dd4f6a3d50271c5874",
      "parents": [
        "a3ca89e076515f4ad65b317c2352e35cc08bd98b"
      ],
      "author": {
        "name": "Vadim Shtayura",
        "email": "vadimsh@chromium.org",
        "time": "Mon Nov 19 23:14:38 2018"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Mon Nov 19 23:14:38 2018"
      },
      "message": "[proto] Fix google/rpc/*_pb2.py, it has wrong proto paths in it.\n\nstatus.proto should be added to the registry as google/rpc/status.proto,\notherwise importing modules (which import it as \u0027google/rpc/status.proto\u0027) can\u0027t\nfind it.\n\nR\u003dnodir@chromium.org, iannucci@chromium.org, maruel@chromium.org\nBUG\u003d906761\n\nChange-Id: I22781b3745937ddc451d02341cb03cba64493a16\nReviewed-on: https://chromium-review.googlesource.com/c/1342945\nAuto-Submit: Vadim Shtayura \u003cvadimsh@chromium.org\u003e\nCommit-Queue: Robbie Iannucci \u003ciannucci@chromium.org\u003e\nReviewed-by: Robbie Iannucci \u003ciannucci@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 430746cae9ef8c19c80fbe684be4d3b0ded41a3f\n"
    },
    {
      "commit": "a3ca89e076515f4ad65b317c2352e35cc08bd98b",
      "tree": "257cf0b103b2eb83ebf10a1d4068ba7b2378ea11",
      "parents": [
        "ba184e69ab8604290a47c8ddfafa6f7906748b2a"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Mon Nov 19 19:25:03 2018"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Mon Nov 19 19:25:03 2018"
      },
      "message": "protobuf: upgrade to 3.6.1 from 3.5.1\n\nUpdate instructions to be easier to follow.\n\nR\u003dkjlubick@chromium.org\n\nChange-Id: Ic527aa12c12101e7c48c509c739fa4bff59a6afe\nReviewed-on: https://chromium-review.googlesource.com/c/1323309\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nReviewed-by: Kevin Lubick \u003ckjlubick@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: af1fb93ece58778a41232d1d4f371604ebbc4e6d\n"
    },
    {
      "commit": "ba184e69ab8604290a47c8ddfafa6f7906748b2a",
      "tree": "aeed5ca31542565cd7a305c9c7f4ad350e7fc588",
      "parents": [
        "7f463e66e1c4bb830ef3de9d046aa227d28e1b00"
      ],
      "author": {
        "name": "Jao-ke Chin-Lee",
        "email": "jchinlee@chromium.org",
        "time": "Mon Nov 19 17:04:41 2018"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Mon Nov 19 17:04:41 2018"
      },
      "message": "[client] Print time with tasks update message. Also increase frequency.\n\nBUG\u003d905012\n\nChange-Id: Id8349367695baaf204ce7c2489be44f32dd8fffb\nReviewed-on: https://chromium-review.googlesource.com/c/1340660\nCommit-Queue: Jao-ke Chin-Lee \u003cjchinlee@chromium.org\u003e\nReviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: fa7445abcb3a53e2bddb60a2656582c5b34fcd8e\n"
    },
    {
      "commit": "7f463e66e1c4bb830ef3de9d046aa227d28e1b00",
      "tree": "6d516ae96a06267e325fcf884c16089860992fa5",
      "parents": [
        "1e6072c2793303d283a1680caf0e04678c24bb50"
      ],
      "author": {
        "name": "Brad Hall",
        "email": "bradhall@google.com",
        "time": "Fri Nov 16 16:13:30 2018"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Fri Nov 16 16:13:30 2018"
      },
      "message": "Only allow repeated dimensions for \u0027caches\u0027\n\nThe others (e.g. os, cpu, etc) shouldn\u0027t be repeated so we\nwill replace the base dimensions with the specified optional\ndimensions in those cases.\n\nBug: 871453\nChange-Id: I93a2e97a3bef3af2457748172091e3a1d20327d6\nTBR: maruel@chromium.org\nReviewed-on: https://chromium-review.googlesource.com/c/1335801\nCommit-Queue: Brad Hall \u003cbradhall@google.com\u003e\nReviewed-by: Brad Hall \u003cbradhall@google.com\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 6d802af70ecc71a52ed3bff325b813c3b13833ea\n"
    },
    {
      "commit": "1e6072c2793303d283a1680caf0e04678c24bb50",
      "tree": "44bdb2b9c4853ab1b99244e68c299b038626c61e",
      "parents": [
        "85a65870a3297860e9d0c6814aef70d5f4741e7a"
      ],
      "author": {
        "name": "Takuto Ikuta",
        "email": "tikuta@chromium.org",
        "time": "Tue Nov 06 20:42:43 2018"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Tue Nov 06 20:42:43 2018"
      },
      "message": "[client] Add --filepath-filter option to choose download files from isolate\n\nIf I use this option like below, downloading subset files of\nwebkit_layout_tests become 3 seconds.\nThat is much faster than 9 min to download all isolate outputs.\n\n$ time tools/swarming_client/swarming.py collect -S\nhttps://chromium-swarm.appspot.com --json task.json\n--task-output-dir\u003dtmp --task-summary-json\u003dsummary.json\n--task-output-stdout\u003dnone --filepath-filter\u003d\u0027^output.json$\u0027\nvm78-m9: 40e16cc5f27bcf10 0\nvm222-m9: 40e16cb0049b4510 0\nvm419-m1: 40e16cabf8539210 0\nvm1405-m4: 40e16cae4b766f10 0\nvm1456-m4: 40e16cb5e008a610 0\nvm311-m4: 40e16cba51a68b10 0\nvm180-m9: 40e16caa5ed5e210 0\nvm131-m4: 40e16cb895348610 0\nvm458-m4: 40e16cbda53f2910 0\nvm91-m4: 40e16cc0a9655a10 0\nvm449-m4: 40e16cc986923010 0\nvm49-m4: 40e16cc43c95f010 0\n\nreal    0m3.497s\nuser    0m1.549s\nsys     0m0.592s\n\nBug: 868878, 898216\nChange-Id: I8f264bd263373241e48438426b623e89b3cf544e\nReviewed-on: https://chromium-review.googlesource.com/c/1309855\nReviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCommit-Queue: Takuto Ikuta \u003ctikuta@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 8c72886a52713f1b46f6e672be984d6d7411ef75\n"
    },
    {
      "commit": "85a65870a3297860e9d0c6814aef70d5f4741e7a",
      "tree": "7830818e4d44eddccd8540ca73fe28dcf859a26d",
      "parents": [
        "37bb0078bacc9bed5f99616c7fc6f1c0746d6247"
      ],
      "author": {
        "name": "Takuto Ikuta",
        "email": "tikuta@chromium.org",
        "time": "Fri Nov 02 04:13:49 2018"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Fri Nov 02 04:13:49 2018"
      },
      "message": "Revert \"[client] Increase worker to download isolate files faster\"\n\nThis reverts commit f4db0c40df7d6e6670e8cf754e463796474bfb8d.\n\nReason for revert: This looks not improve the performance on bots.\n\nOriginal change\u0027s description:\n\u003e [client] Increase worker to download isolate files faster\n\u003e \n\u003e By increasing parallelism of file download, downloading\n\u003e webkit_layout_tests task outputs improved from 9 minutes to 3 minutes on\n\u003e my Z840 Linux.\n\u003e \n\u003e I hope this does some mitigation for slow webkit_layout_tests step.\n\u003e \n\u003e If this made performance bad on bots, I will revert this patch.\n\u003e \n\u003e Bug: 868878\n\u003e Change-Id: I89cdc48bb3c5b4184699f041f1d037963090cd49\n\u003e Reviewed-on: https://chromium-review.googlesource.com/c/1309854\n\u003e Reviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\n\u003e Reviewed-by: Stephen Martinis \u003cmartiniss@chromium.org\u003e\n\u003e Commit-Queue: Takuto Ikuta \u003ctikuta@chromium.org\u003e\n\nTBR\u003dmaruel@chromium.org,martiniss@chromium.org,tikuta@chromium.org\n\nChange-Id: I9e49166b9a69bbdfdc35d54f6847b2ef8a7e58d1\nNo-Presubmit: true\nNo-Tree-Checks: true\nNo-Try: true\nBug: 868878\nReviewed-on: https://chromium-review.googlesource.com/c/1314228\nReviewed-by: Takuto Ikuta \u003ctikuta@chromium.org\u003e\nCommit-Queue: Takuto Ikuta \u003ctikuta@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 91d859f8648e71ca272b2454276fe4667cf11ecc\n"
    },
    {
      "commit": "37bb0078bacc9bed5f99616c7fc6f1c0746d6247",
      "tree": "049ca4cbc2cc550d1f6a5eb991ed157f3c6cc595",
      "parents": [
        "33054fa0bd3a95e0a76a2679f535c03f0273cee5"
      ],
      "author": {
        "name": "Takuto Ikuta",
        "email": "tikuta@chromium.org",
        "time": "Thu Nov 01 21:03:42 2018"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Thu Nov 01 21:03:42 2018"
      },
      "message": "[client] Increase worker to download isolate files faster\n\nBy increasing parallelism of file download, downloading\nwebkit_layout_tests task outputs improved from 9 minutes to 3 minutes on\nmy Z840 Linux.\n\nI hope this does some mitigation for slow webkit_layout_tests step.\n\nIf this made performance bad on bots, I will revert this patch.\n\nBug: 868878\nChange-Id: I89cdc48bb3c5b4184699f041f1d037963090cd49\nReviewed-on: https://chromium-review.googlesource.com/c/1309854\nReviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nReviewed-by: Stephen Martinis \u003cmartiniss@chromium.org\u003e\nCommit-Queue: Takuto Ikuta \u003ctikuta@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: f4db0c40df7d6e6670e8cf754e463796474bfb8d\n"
    },
    {
      "commit": "33054fa0bd3a95e0a76a2679f535c03f0273cee5",
      "tree": "7830818e4d44eddccd8540ca73fe28dcf859a26d",
      "parents": [
        "f78187ab77127de42555afe0ad410bebde6ac6a5"
      ],
      "author": {
        "name": "Vadim Shtayura",
        "email": "vadimsh@chromium.org",
        "time": "Thu Nov 01 12:47:59 2018"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Thu Nov 01 12:47:59 2018"
      },
      "message": "[isolate] Don\u0027t unexpectedly raise KeyError if the cache state file was lost.\n\nR\u003dmaruel@chromium.org\nBUG\u003d900742\n\nChange-Id: I2254d04f47070d65426322c81939a17c756856c7\nReviewed-on: https://chromium-review.googlesource.com/c/1311234\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nReviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 1cca77ee3766762cea81d1c1cf27899fa2c6661b\n"
    },
    {
      "commit": "f78187ab77127de42555afe0ad410bebde6ac6a5",
      "tree": "4791ce54ca90dd68611d7e266575ab36ad8c19e2",
      "parents": [
        "71ade6d0fc1bb91878ca38f9ec1120d766a36b23"
      ],
      "author": {
        "name": "Brad Hall",
        "email": "bradhall@google.com",
        "time": "Fri Oct 19 17:08:55 2018"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Fri Oct 19 17:08:55 2018"
      },
      "message": "Add optional-dimension argument to swarming\n\nThis adds an optional argument to swarming.py (--optional-dimension)\nwhich takes the form \"key value expiration\".  If any optional dimension\nentries are specified we will create additional task slices for them\nusing (key, value) as the dimension and expiration as the task\nexpiration value.\n\n\nBug: 871453\nChange-Id: I17607786809d725341596b9c531dc1f6ee9ee689\nReviewed-on: https://chromium-review.googlesource.com/c/1269156\nCommit-Queue: Brad Hall \u003cbradhall@google.com\u003e\nReviewed-by: Nodir Turakulov \u003cnodir@chromium.org\u003e\nReviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 6ddde54621fa69282036b1fbca6dc33d73bc6296\n"
    },
    {
      "commit": "71ade6d0fc1bb91878ca38f9ec1120d766a36b23",
      "tree": "1b5ce90e691f0221315fdd73bfe242d91c4b68be",
      "parents": [
        "4989baa408c9dd9d20062dd5fd13ad451c4f6960"
      ],
      "author": {
        "name": "Roberto Carrillo",
        "email": "robertocn@google.com",
        "time": "Mon Oct 08 22:30:24 2018"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Mon Oct 08 22:30:24 2018"
      },
      "message": "[run_isolated] Replace parameters in environment variables.\n\nEnvironment variables specified in a swarming request may need to refer\nto the isolated out directory, just like parameters to the command do.\n\nThis change applies to env variable values the same logic used to inject\nto the command the values of isolated out directory, executable\nextension, etc.\n\nBug: 892348\nChange-Id: I8507f0c96b723ae2eb32afef2a43e58e5bb5f509\nR\u003dmaruel,vadimsh,stgao\nReviewed-on: https://chromium-review.googlesource.com/c/1265140\nCommit-Queue: Roberto Carrillo \u003crobertocn@chromium.org\u003e\nReviewed-by: Vadim Shtayura \u003cvadimsh@chromium.org\u003e\nReviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\n\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 656db1ac23505b56f46a64fbb1b2e82b76ce41c6\n"
    },
    {
      "commit": "4989baa408c9dd9d20062dd5fd13ad451c4f6960",
      "tree": "773b853922611ed44085a2af385fbf0fa2474769",
      "parents": [
        "44699b3e7b2e66bed286d9d7bf6da3b25aaf7e4e"
      ],
      "author": {
        "name": "Eric Boren",
        "email": "borenet@google.com",
        "time": "Fri Sep 28 14:09:11 2018"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Fri Sep 28 14:09:11 2018"
      },
      "message": "Fix symlink bug in file_path.set_read_only()\n\nIf read_only is True, then we modify the mode, which makes stat.S_ISLNK()\nreturn False, which causes an error in fs.chmod for symlinks. Store the\noriginal mode and check that instead.\n\nChange-Id: I0dcb896ef3a4bc0316ee3cbacf717578a32f9d99\nReviewed-on: https://chromium-review.googlesource.com/1251661\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nReviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 173e75863489c2c58ff3e41a7425b56efc4af9fb\n"
    },
    {
      "commit": "44699b3e7b2e66bed286d9d7bf6da3b25aaf7e4e",
      "tree": "f06bb18bf80bc3ecc47587ca4bbc14d61273706e",
      "parents": [
        "f2a3f632285d4f51acedd2b5f3b66ca7ed8edc1e"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Mon Sep 24 23:31:50 2018"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Mon Sep 24 23:31:50 2018"
      },
      "message": "[client] improve NamedCache logging\n\nBefore this change it\u0027s impossible to track the lifetime of named cache entries.\n\nNo functional change (beside more logs).\n\nBug: 888223\nChange-Id: Ie13544bec45fe619453073e51ac7a0bdaa49500b\nReviewed-on: https://chromium-review.googlesource.com/1241253\nAuto-Submit: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nReviewed-by: Andrii Shyshkalov \u003ctandrii@chromium.org\u003e\nReviewed-by: Jao-ke Chin-Lee \u003cjchinlee@chromium.org\u003e\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 2d540eca902e5b070fa05109555bd39fd1848b46\n"
    },
    {
      "commit": "f2a3f632285d4f51acedd2b5f3b66ca7ed8edc1e",
      "tree": "782a2f936e4c806db554ecd00e00a0aa8e9bb5ca",
      "parents": [
        "0d8b0f69e60dc0337242f7065139c36f07f11282"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Mon Sep 24 21:30:05 2018"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Mon Sep 24 21:30:05 2018"
      },
      "message": "[client] fix unit test on macOS\n\nTest only change.\n\nI decided to not change the behavior, and instead use an approximation for\nthe expectations.\n\nR\u003djchinlee@chromium.org\n\nChange-Id: I0a9bcb5406cbadf847ae7639d489ab8ab4a0e14f\nReviewed-on: https://chromium-review.googlesource.com/1241019\nReviewed-by: Jao-ke Chin-Lee \u003cjchinlee@chromium.org\u003e\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 4fd90593f7636440489af3fbd54ab53eb8cfb4af\n"
    },
    {
      "commit": "0d8b0f69e60dc0337242f7065139c36f07f11282",
      "tree": "1a0273c5b3abc65603ef33580efcd0167799754a",
      "parents": [
        "f0a5ae4bb9c0958435c88cf56ebb047441369736"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Mon Sep 10 14:40:35 2018"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Mon Sep 10 14:40:35 2018"
      },
      "message": "[client] Enforce missing named cache hints\n\nThis will impact the free disk space created on the bots, but the end goal is to\nreduce the values in bot_config for minimum free disk space, which should enable\nkeeping more caches locally.\n\nBug: 873736\nChange-Id: I4434225e823ddb4a66ad99d7ad853b4f1657deeb\nReviewed-on: https://chromium-review.googlesource.com/1178325\nReviewed-by: Jao-ke Chin-Lee \u003cjchinlee@chromium.org\u003e\nReviewed-by: Quinten Yearsley \u003cqyearsley@chromium.org\u003e\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: 2abfc04c5e1dcb846e1fbb7ae882a8a11f01220f\n"
    },
    {
      "commit": "f0a5ae4bb9c0958435c88cf56ebb047441369736",
      "tree": "6a230ae407a3eb1bdf154fc292fb3b7a7597257f",
      "parents": [
        "6c3be5ab0ee0ea06a2c4d1ee9564867fd05b87ca"
      ],
      "author": {
        "name": "Bruce Dawson",
        "email": "brucedawson@chromium.org",
        "time": "Tue Sep 04 20:06:46 2018"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Tue Sep 04 20:06:46 2018"
      },
      "message": "Print precise instructions on collecting swarming results\n\nThe isolate/swarming instructions generally give a relative path to the\npython scripts such as swarming.py. Therefore for consistency and ease\nof use those scripts should also print relative paths to themselves.\nThis makes copy/paste of the collect commands easier.\n\nChange-Id: I849d0472a3be833c63673349a015b1044dc39f85\nReviewed-on: https://chromium-review.googlesource.com/1199712\nReviewed-by: Robbie Iannucci \u003ciannucci@chromium.org\u003e\nReviewed-by: Stephen Martinis \u003cmartiniss@chromium.org\u003e\nCommit-Queue: Bruce Dawson \u003cbrucedawson@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: e240b50f8e4d1febe5329746c057eff164ce64f9\n"
    },
    {
      "commit": "6c3be5ab0ee0ea06a2c4d1ee9564867fd05b87ca",
      "tree": "147861c37db9512908293834629d55c49882fde2",
      "parents": [
        "2c0d3521a803e4729880a9bb4dcdd9cc92f567fc"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Tue Sep 04 17:19:59 2018"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Tue Sep 04 17:19:59 2018"
      },
      "message": "[client] fix condition for object\n\nThe shorthand \u0027if foo:\u0027 would not work for empty caches, as when\n__nonzero__ is not implemented, python calls __len__.\n\nThis means that an empty cache is False, but that\u0027s not the expected behavior.\n\nBug: 873736\nChange-Id: I4e9558fe5d199a85acbc79edfac44f8be64edf0d\nReviewed-on: https://chromium-review.googlesource.com/1203632\nReviewed-by: Jao-ke Chin-Lee \u003cjchinlee@chromium.org\u003e\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: a3738d4338b910c0ad615d1ac41c09762dd977e2\n"
    },
    {
      "commit": "2c0d3521a803e4729880a9bb4dcdd9cc92f567fc",
      "tree": "bd4a7ef4dc4b0be6781bdb2328385357d6903725",
      "parents": [
        "c069267fa362dedbc1e86f5670670a6934ef7de0"
      ],
      "author": {
        "name": "Bruce Dawson",
        "email": "brucedawson@chromium.org",
        "time": "Fri Aug 31 20:08:11 2018"
      },
      "committer": {
        "name": "Commit Bot",
        "email": "commit-bot@chromium.org",
        "time": "Fri Aug 31 20:08:11 2018"
      },
      "message": "Update README.md with contribution instructions\n\nChange-Id: Ied06ca3ac0b96e0bebdfde540c728368489b4ec0\nReviewed-on: https://chromium-review.googlesource.com/1199711\nCommit-Queue: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nReviewed-by: Marc-Antoine Ruel \u003cmaruel@chromium.org\u003e\nCr-Mirrored-From: https://chromium.googlesource.com/infra/luci/luci-py\nCr-Mirrored-Commit: a461cb167730049bf5434cc2dccaedb58ccf432a\n"
    }
  ],
  "next": "c069267fa362dedbc1e86f5670670a6934ef7de0"
}
