)]}'
{
  "commit": "e2970972c24a1258079d97e3dc556e368c8b9eda",
  "tree": "c98c6fdc6ec800192e5746d2c702c76dd47c6d96",
  "parents": [
    "f1e270a6d2a7f3a5cee678d1358d1b8dd755063e"
  ],
  "author": {
    "name": "Andy Zhao",
    "email": "andyzhao@google.com",
    "time": "Fri Feb 14 14:44:26 2020 -0800"
  },
  "committer": {
    "name": "Chris Broadfoot",
    "email": "cbro@google.com",
    "time": "Mon Feb 24 21:11:22 2020 +0000"
  },
  "message": "transport/http: add Application Default Credentials support for DCA/mTLS\n\nThe overall ADC logic for mTLS is as follows:\n1. If both endpoint override and client certificate are specified, use them as is.\n2. If user does not specify client certificate, we will attempt to use default\n   client certificate.\n3. If user does not specify endpoint override, we will use defaultMtlsEndpoint if\n   client certificate is available and defaultEndpoint otherwise.\n\nImplications of the above logic:\n1. If the user specifies a non-mTLS endpoint override but client certificate is\n   available, we will pass along the cert anyway and let the server decide what to do.\n2. If the user specifies an mTLS endpoint override but client certificate is not\n   available, we will not fail-fast, but let backend throw error when connecting.\n\nWe would like to avoid introducing client-side logic that parses whether the\nendpoint override is an mTLS url, since the url pattern may change at anytime.\n\nChange-Id: Ic0492ae2a8d96a775add1bfbebfa228b3193a560\nReviewed-on: https://code-review.googlesource.com/c/google-api-go-client/+/52010\nReviewed-by: kokoro \u003cnoreply+kokoro@google.com\u003e\nReviewed-by: Chris Broadfoot \u003ccbro@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "874a5cff0b2d7185e0f4d171fe1f805df916acdc",
      "old_mode": 33188,
      "old_path": "transport/http/dial.go",
      "new_id": "d0dcc75c109e5f9e89da54ff3e0fe5e42cdfaddc",
      "new_mode": 33188,
      "new_path": "transport/http/dial.go"
    },
    {
      "type": "modify",
      "old_id": "f8de30d9c4b83bda36afd4e3611cad7cec98abce",
      "old_mode": 33188,
      "old_path": "transport/http/dial_test.go",
      "new_id": "ab4369d891247010d0d487fe5521e611f9a870c9",
      "new_mode": 33188,
      "new_path": "transport/http/dial_test.go"
    }
  ]
}
