)]}'
{
  "commit": "062a9ea3e552e031a76054a2d8bbcde68d2ed3d3",
  "tree": "cda979741d9e898eccbccf3f4f506947bbbd35bf",
  "parents": [
    "153dafa19ec6aa465e997e4f366e625414a18938"
  ],
  "author": {
    "name": "haoyuewang",
    "email": "haoyuewang@google.com",
    "time": "Wed Sep 29 11:34:55 2021 -0700"
  },
  "committer": {
    "name": "Copybara-Service",
    "email": "copybara-worker@google.com",
    "time": "Wed Sep 29 11:35:46 2021 -0700"
  },
  "message": "Add bidirectional support to PendingStream and enable QuicSession to buffer both unidirectional-read/bidirectional streams.\n\nCompared to the unidirectional counterpart:\n(1) STREAM frame is processed by the PendingStream.\n(2) WINDOW_UPDATE/STOP_SENDING/RST_STREAM are recorded by PendingStream but only processed by QuicStream. E.g., RST_STREAM will not close a bidirectional PendingStream.\n(3) BLOCKED_FRAME is informationally and thus is ignored.\n\nPiperOrigin-RevId: 399735001\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "309f92f5cb94b254478569727264aa59ad90f97d",
      "old_mode": 33188,
      "old_path": "quic/core/quic_session.cc",
      "new_id": "e2677377846f561c8e9b3fef939209c4a401485c",
      "new_mode": 33188,
      "new_path": "quic/core/quic_session.cc"
    },
    {
      "type": "modify",
      "old_id": "9e3762a9a70a395d796b38103e22e6ad4ee12d46",
      "old_mode": 33188,
      "old_path": "quic/core/quic_session.h",
      "new_id": "8789526e6d4014d40c7752c418f310e092b7ebf3",
      "new_mode": 33188,
      "new_path": "quic/core/quic_session.h"
    },
    {
      "type": "modify",
      "old_id": "19df04457aed219901c0170e092cf78fc06506b1",
      "old_mode": 33188,
      "old_path": "quic/core/quic_session_test.cc",
      "new_id": "7980256e3e8224ec96e610e426aa439b5179c8a2",
      "new_mode": 33188,
      "new_path": "quic/core/quic_session_test.cc"
    },
    {
      "type": "modify",
      "old_id": "08c0358b150a1df996b6c5f1fec2fb1ad620a03f",
      "old_mode": 33188,
      "old_path": "quic/core/quic_stream.cc",
      "new_id": "74a5d4512574102d799c6431671a24e8e45b4928",
      "new_mode": 33188,
      "new_path": "quic/core/quic_stream.cc"
    },
    {
      "type": "modify",
      "old_id": "fcc7fe55aaea2e6e87d0ddc4af3518c48ec84f9f",
      "old_mode": 33188,
      "old_path": "quic/core/quic_stream.h",
      "new_id": "f2485b91e95530554f00954129900d7f797649d8",
      "new_mode": 33188,
      "new_path": "quic/core/quic_stream.h"
    },
    {
      "type": "modify",
      "old_id": "5d3b84f38c3dfa972fb4ba40bcfd94f90d930812",
      "old_mode": 33188,
      "old_path": "quic/core/quic_stream_test.cc",
      "new_id": "9d48b1fa2952e2843fcfc572afecb181dcb9a650",
      "new_mode": 33188,
      "new_path": "quic/core/quic_stream_test.cc"
    }
  ]
}
