)]}'
{
  "log": [
    {
      "commit": "b15e8797d2ca6fb480a940887c66dd2aae7c9065",
      "tree": "23bd6e44c31b45fde7d92bbe7620329a61c1fcf5",
      "parents": [
        "79bf0b8e9c704e63029bb3badf9c4872484a827b"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Oct 28 12:20:59 2020 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Tue Nov 10 09:46:01 2020 +0000"
      },
      "message": "Verify ART run-tests\u0027 standard output and standard error separately.\n\nIntroduce expected standard error files for ART run-tests. Collect\ntests\u0027 standard output and standard error separately and check them\nagainst the corresponding expectation file.\n\nTest: Run ART run-tests on host and device using `testrunner.py`.\nTest: atest --test-mapping art:all\nTest: atest --test-mapping cts/hostsidetests/jvmti:all\nBug: 171865375\nBug: 147812905\nChange-Id: Ie95bec4a4684ff6791d464124ce8976339432d1f\n"
    },
    {
      "commit": "a073f46104fbce0482fb759d5ccfb32ee39cc973",
      "tree": "985538ce69fa4d9253725cddaca936ddc3eaea86",
      "parents": [
        "5a19854c682a994729f704806d6c0de1de349631"
      ],
      "author": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Wed Oct 28 12:48:24 2020 +0000"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Thu Nov 05 18:15:49 2020 +0000"
      },
      "message": "Rename ART run-tests `expected.txt` files as `expected-stdout.txt`.\n\nThis is in preparation for the addition of `expected-stderr.txt` files\nin all ART run-test directories, which will record the expected\nstandard error for each of these tests, and which will be verified\nalong with `expected-stdout.txt`.\n\nTest: Run ART run-tests on host and device using `testrunner.py`.\nTest: atest --test-mapping art:all\nBug: 171865375\nBug: 147812905\nChange-Id: I37e3c4b8409475790e2fc63514cdf57156d47ff4\n"
    },
    {
      "commit": "64fe3be84105db1a8f35550ae0a3c06f1092d436",
      "tree": "22f91ab45b3c8b1d940e83a0fd24b851be32949c",
      "parents": [
        "cca7cb9ffa56d8ab8fd0c5997c8bfd965d7426c1"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Fri Jun 15 12:50:22 2018 +0100"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Tue Jun 26 14:08:29 2018 +0000"
      },
      "message": "ART: Retire desugar and dx in run-tests\n\nRun-tests now use d8 for desugaring and dexing.\n\nBuild scripts no longer have hand written dexer invocations.\n\nBug: 110150973\nBug: 73711890\nTest: art/test.py --host --64 -r\nTest: art/test.py --target --prebuild --optimizing -r\nChange-Id: Iae2199cf756624c1f045de7777c5ee6432398bd2\n"
    },
    {
      "commit": "e2b18893e4c22cbf7cbaa294b7a6feaea91f4313",
      "tree": "76f3b15944b787cf879c8a6eccc1241d2b13911b",
      "parents": [
        "50b179ccf01be26f5d56402355b7b4d0f791d8e2"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Fri Jun 15 08:58:22 2018 +0100"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Fri Jun 15 13:29:02 2018 +0100"
      },
      "message": "ART: Remove DX listing flags from test scripts\n\nBug: 110150973\nTest: art/test.py --host -r\nChange-Id: I25da0018ea21727dd85d82fe0840c0ab806e3d3d\n"
    },
    {
      "commit": "4a1cac420b34cc23458742e0deb67116b69b93eb",
      "tree": "9f8cde8c7b94b14b5597a3c8e7b9a0e641437201",
      "parents": [
        "d804b76c0b8f9d2c94f3a8648aba26254742a1e2"
      ],
      "author": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Wed May 23 16:23:27 2018 +0100"
      },
      "committer": {
        "name": "Orion Hodson",
        "email": "oth@google.com",
        "time": "Thu May 24 09:54:59 2018 +0100"
      },
      "message": "ART: Remove jack from test\n\nTest: art/test.py --host\nChange-Id: I31b0c0d57d344f54a8c0545fd32c81a893b4ec75\n"
    },
    {
      "commit": "620d0a51b7ef079176a7cff6fe03c60ef3a3e3af",
      "tree": "4d3c55e2ee856319f2ece1fbde9e63266d8bb6e9",
      "parents": [
        "a5d718a9f8ef51e41a1485a0f6ab201aec4c0c82"
      ],
      "author": {
        "name": "Søren Gjesse",
        "email": "sgjesse@google.com",
        "time": "Mon Sep 19 11:12:51 2016 +0200"
      },
      "committer": {
        "name": "Søren Gjesse",
        "email": "sgjesse@google.com",
        "time": "Tue Sep 20 11:01:32 2016 +0200"
      },
      "message": "Make javac always use Java 7 when running tests using javac and dx\n\nThis adds \"-source 1.7 -target 1.7\" to JAVAC when --build-with-javac-dx\nis specified.\n\nAlso make sure that dx is not run when --jvm is passed.\n\nTest: art/test/run-test --host --build-with-javac-dx 003-omnibus-opcodes\nTest: art/test/run-test --host --build-with-javac-dx 005-annotations\nTest: art/test/run-test --host --build-with-javac-dx 023-many-interfaces\nTest: art/test/run-test --host --build-with-javac-dx 056-const-string-jumbo\nTest: art/test/run-test --host --build-with-javac-dx 091-override-package-private-method\nTest: art/test/run-test --host --build-with-javac-dx 111-unresolvable-exception\nTest: art/test/run-test --host --build-with-javac-dx 113-multidex\nTest: art/test/run-test --host --build-with-javac-dx 124-missing-classes\nTest: art/test/run-test --host --build-with-javac-dx 126-miranda-multidex\nTest: art/test/run-test --host --build-with-javac-dx 127-checker-secondarydex\nTest: art/test/run-test --host --build-with-javac-dx 131-structural-change\nTest: art/test/run-test --host --build-with-javac-dx 138-duplicate-classes-check2\nTest: art/test/run-test --host --build-with-javac-dx 303-verification-stress\nTest: art/test/run-test --host --build-with-javac-dx 551-checker-shifter-operand\nTest: art/test/run-test --host --build-with-javac-dx 555-checker-regression-x86const\n\nTest: art/test/run-test --host 003-omnibus-opcodes\nTest: art/test/run-test --host 005-annotations\nTest: art/test/run-test --host 023-many-interfaces\nTest: art/test/run-test --host 056-const-string-jumbo\nTest: art/test/run-test --host 091-override-package-private-method\nTest: art/test/run-test --host 111-unresolvable-exception\nTest: art/test/run-test --host 113-multidex\nTest: art/test/run-test --host 124-missing-classes\nTest: art/test/run-test --host 126-miranda-multidex\nTest: art/test/run-test --host 127-checker-secondarydex\nTest: art/test/run-test --host 131-structural-change\nTest: art/test/run-test --host 138-duplicate-classes-check2\nTest: art/test/run-test --host 303-verification-stress\nTest: art/test/run-test --host 551-checker-shifter-operand\nTest: art/test/run-test --host 555-checker-regression-x86const\n\nTest: art/test/run-test --jvm 003-omnibus-opcodes\nTest: art/test/run-test --jvm 005-annotations\nTest: art/test/run-test --jvm 023-many-interfaces\nTest: art/test/run-test --jvm 056-const-string-jumbo\nTest: art/test/run-test --jvm 091-override-package-private-method\nTest: art/test/run-test --jvm 111-unresolvable-exception\nTest: art/test/run-test --jvm 113-multidex\nTest: art/test/run-test --jvm 124-missing-classes\nTest: art/test/run-test --jvm 126-miranda-multidex\nTest: art/test/run-test --jvm 127-checker-secondarydex\nTest: art/test/run-test --jvm 131-structural-change\nTest: art/test/run-test --jvm 138-duplicate-classes-check2\nTest: art/test/run-test --jvm 303-verification-stress\nTest: art/test/run-test --jvm 551-checker-shifter-operand\nTest: art/test/run-test --jvm 555-checker-regression-x86const\n\nChange-Id: I60f8a973c0dd425988abe55223bdef426c772b97\n"
    },
    {
      "commit": "5527ea823585aa61d12c8226ec131d7962d3d1c1",
      "tree": "442bed54b77a8923edd3af0f919c3c9d6dc9c88a",
      "parents": [
        "51e4d44178919bf717e58365ce52a3c852d28465"
      ],
      "author": {
        "name": "Yohann Roussel",
        "email": "yroussel@google.com",
        "time": "Tue Feb 16 16:25:09 2016 +0100"
      },
      "committer": {
        "name": "Yohann Roussel",
        "email": "yroussel@google.com",
        "time": "Tue Feb 16 16:37:37 2016 +0100"
      },
      "message": "Remove some outdated comments in art tests\n\n(cherry picked from commit 6b9508d537560ed41d91879839d2ec90945eca99)\n\nChange-Id: I354c45ad56d3f4b66ed55e6effccb0be6f1fc994\n"
    },
    {
      "commit": "51e4d44178919bf717e58365ce52a3c852d28465",
      "tree": "4adb86e08dc0987bfec101a50d38ad29aedec9ca",
      "parents": [
        "df3a54bf63597095f2fac3d13b22a112eb6dcd6b"
      ],
      "author": {
        "name": "Yohann Roussel",
        "email": "yroussel@google.com",
        "time": "Tue Jan 19 17:07:18 2016 +0100"
      },
      "committer": {
        "name": "Yohann Roussel",
        "email": "yroussel@google.com",
        "time": "Tue Feb 16 15:32:00 2016 +0100"
      },
      "message": "Remove usages of jill.jar, use jack instead\n\n(cherry picked from commit aaa779a0a5f7afc23814728de68c6fe3ae1450bf)\n\nChange-Id: I87fc0cdd34cf8107601af38f2559597200908173\n"
    },
    {
      "commit": "19ac0276208f0afef6ba8a4ab34b74a59b8d11d7",
      "tree": "f8947b62f0d500e2ff5fef8edb5fb61abd21fc82",
      "parents": [
        "30502f1fc8357bdaf11b70e6fc8f5311c6237194"
      ],
      "author": {
        "name": "Sebastien Hertz",
        "email": "shertz@google.com",
        "time": "Tue Feb 24 17:39:50 2015 +0100"
      },
      "committer": {
        "name": "Sebastien Hertz",
        "email": "shertz@google.com",
        "time": "Wed Jul 08 17:20:35 2015 +0200"
      },
      "message": "Support compiling run-tests with jack\n\nThis CL adds support to compile run-test source files with jack. When\na test needs to rely on class files, we use jill to convert them to a\njack library.\n\nWe need to pass the full classpath to jack containing at least core\nclasses (like java.lang.Object). This means the Android tree must\nhave been compiled with jack first so we find all the necessary\nclasses.jack files.\n\nSome tests still rely on dex files generated with the old toolchain.\nWe keep building them this way for the moment and will update them\nlater, when they get ready for Jack.\n\nAlso updates a few tests dealing with garbage collection to avoid a\nsituation where a reference can be retained by a local DEX register.\n\nBug: 19467889\nChange-Id: I9eedd0705d1186d28a2acd37ea42a1762cd0ace2\n"
    },
    {
      "commit": "833a48501d560c9fa7fc78ef619888138c2d374f",
      "tree": "add308298a5486d44caddea120cc9200dd70c38a",
      "parents": [
        "b849f6dd638fd1246724160cd5c01ab1a5ff33bd"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed May 21 18:46:59 2014 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Jun 25 19:34:58 2014 -0700"
      },
      "message": "ART: Native support for multidex\n\nNative support for zip files with multiple classesX.dex.\n\nWorks by explicitly looking for those files in ascending order. As\nthese files have no file system representation for themselves,\nintroduce synthetic dex locations: the name of the originating file\nplus a colon plus the name of the dex file, e.g., test.jar:classes2.dex.\n\nOpening a zip dex file will return all dex files in this way. This\nkeeps the changes to dex2oat minimal.\n\nTo hide multidex/synthetic names from the Java layer, let the handle\nof dalvik.system.DexFile refer to a vector of DexFile objects. When\nopening a location, test possible synthetic names and add them to the\nvector. Thus, the original multidex jar in the classpath will be\nassociated with all embedded dex files.\n\nChange-Id: I0de107e1369cbc94416c544aca3b17525c9eac8b\n"
    }
  ]
}
