)]}'
{
  "commit": "411501423307c29a160affef03485fd8000b3c1d",
  "tree": "b61560bf074f80ddfc201ced730052175b1bfc1a",
  "parents": [
    "07b89888f5174bbb2af0365b5d4f392fb290eb54"
  ],
  "author": {
    "name": "Jiyong Park",
    "email": "jiyong@google.com",
    "time": "Sun Mar 04 09:40:04 2018 +0900"
  },
  "committer": {
    "name": "Jiyong Park",
    "email": "jiyong@google.com",
    "time": "Wed Mar 07 18:05:18 2018 +0900"
  },
  "message": "Build libprotobuf-java-lite only using core Java SDK APIs\n\nlibprotobuf-java-lite is now built against core Java APIs which excludes\nAndroid-only APIs (classes under android.* packages) and private APIs.\n\"core_current\" is a pseudo SDK which is a core Java subset of Android\nSDK.\n\nHowever, this lib has been using sun.misc.Unsafe which is a hidden API\nand dependency to the class doesn\u0027t seem to be able to be cut easily in\nthe near future. In order to make it possible to build the lib with the\nSDK only, a stubs library called libcore_private.stubs is defined to\nprovide build-time only information on the hidden APIs exclusively to\nprotobuf.\n\nAt runtime, the Unsafe class is provide by the OS and protobuf is linked\nto the class loaded there.\n\nBug: 73204840\nTest: m -j libprotobuf-java-lite is successful and does not show any\nlink-type check warning\n\nMerged-In: I2fce2662cc65d4e57fc75bbf30ebf9f7d47c6775\n(cherry picked from commit dc08924dc7262e5c06c1108f67f66e82598af806)\n\nlibcore_private.stubs cannot be built with JDK9\n\nThe package sun.misc in the stubs library is causing module name\nconflict when building with JDK9.\n\nerror: package exists in another module: jdk.unsupported\n\nFixing the error by setting java_version to 1.7 so that modules are not\nused when building the stubs lib.\n\nBug: 74211600\nTest: EXPERIMENTAL_USE_OPENJDK9\u003dtrue m -j libcore_private.stubs\n\nMerged-In: Ifa709bef2dc8e2b11048ef96fc7517d8c25e8a7f\n(cherry picked from commit 0e4379e7504849d7a2755b9a0264cd7901accc88)\n\nlibcore_private.stubs is uninstallable\n\nMake sure that libcore_private.stubs isn\u0027t installed to the device as a\nstandalone jar library. The lib is meant to provide build-time only\nsymbol information to protobuf and thus is not runnable.\n\nBug: 73204840\nTest: m -j libcore_private.stubs does not create\nlibcore_private.stubs.jar in /system/framework\n\nMerged-In: I7c661211161937dba5ee71fdc4bb8b9f101c5a59\n(cherry picked from commit 6297aad4d72232863366d62ae8799ce9cf492a43)\n\nDon\u0027t force libcore_private.stubs to be built with java 1.7\n\nWe no longer need to build libcore_private.stubs with java 1.7, because\nthe library is only built for target and not for host, where it\nconflicts with the module jdk.unsupported.\n\nBug: 74211600\nTest: m -j libprotobuf-java-lite is successful. both host and target\nvariant of the lib is generated.\nTest: EXPERIMENTAL_USE_OPENJDK9\u003dtrue m -j libprotobuf-java-lite is also\nsuccessful.\n\nMerged-In: I61a49d537ee6abad29e5661944ffc612a94465b8\n(cherry picked from commit ed6d68ed9747c96d54d6773af40060e780443b1a)\n\nChange-Id: I256652071b8a11cfbebcf6a4906546e6434f7372\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "6f9f7cb9504a6424c4f6ee665d6ce6726a91159c",
      "old_mode": 33188,
      "old_path": "Android.bp",
      "new_id": "84b10229bde7943b9ef982916a701bc110a77f34",
      "new_mode": 33188,
      "new_path": "Android.bp"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "fa66e4873db9e69a6bfaf5b957610d6ca50a6f8a",
      "new_mode": 33188,
      "new_path": "java/core/src/stubs/sun/misc/Unsafe.java"
    }
  ]
}
