)]}'
{
  "commit": "dfc915d910fe0b9d55a0ccd612a719f918db281b",
  "tree": "1981caf094981a837779ef9b0151016fc0ce1f75",
  "parents": [
    "be8fe12ae55d7ce4a5db2325abf0d3c832f699ed"
  ],
  "author": {
    "name": "ericorth",
    "email": "ericorth@google.com",
    "time": "Fri Sep 02 13:53:35 2022 -0700"
  },
  "committer": {
    "name": "Copybara-Service",
    "email": "copybara-worker@google.com",
    "time": "Fri Sep 02 13:55:34 2022 -0700"
  },
  "message": "Simplify higher-level socket interfaces\n\nWhere we previously had StreamClientSocket (with connect/disconnect) built on top of Socket (with receive/send), merge into a single ConnectingClientSocket.  I think this works better for two reasons:\n1) Nothing in StreamClientSocket was particular to a streaming protocol.  The interface is just as applicable for stuff like \"connected\" UDP sockets.\n2) The undirected Send/Receive previously in Socket make more sense for a connected socket whereas an unconnected socket is more likely to make use of SendTo/ReceiveFrom.  Maybe undirected Receive is useful for both, but that\u0027s an issue that can be figured out if/when we ever add unconnected socket support in these interfaces.\n\nNaming note: My initial instinct is to call a connection-oriented client socket `ConnectedClientSocket`, but I decided to go with `ConnectingClientSocket` instead to avoid confusion with it referring to a socket that has already been connected.\n\nPiperOrigin-RevId: 471878943\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "55336fa88fb782bf99e0b79d7fa996868d9e8f8a",
      "old_mode": 33188,
      "old_path": "build/source_list.bzl",
      "new_id": "f65202077673aa928e4e7009e48845d0e06e4a99",
      "new_mode": 33188,
      "new_path": "build/source_list.bzl"
    },
    {
      "type": "modify",
      "old_id": "802b49347d89c4f79b48d9e379577a7fd721598e",
      "old_mode": 33188,
      "old_path": "build/source_list.gni",
      "new_id": "0b8adf201a62afd46b205394f331e436a4d6badb",
      "new_mode": 33188,
      "new_path": "build/source_list.gni"
    },
    {
      "type": "modify",
      "old_id": "ea2cf5e3173880b4285da9471266166c1d9ad5e2",
      "old_mode": 33188,
      "old_path": "build/source_list.json",
      "new_id": "1b2e8e48d277d612069599fc25beb0407945ac62",
      "new_mode": 33188,
      "new_path": "build/source_list.json"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "930300b95d3497a5d419a7bff8346cc85cd34232",
      "new_mode": 33188,
      "new_path": "quiche/quic/core/io/connecting_client_socket.h"
    },
    {
      "type": "modify",
      "old_id": "4d2508e4f4f3672d7c790687f6d0ae89f68834ab",
      "old_mode": 33188,
      "old_path": "quiche/quic/core/io/event_loop_socket_factory.cc",
      "new_id": "b403c6bc026b7c3a1362a8cca6b5d184580e2c27",
      "new_mode": 33188,
      "new_path": "quiche/quic/core/io/event_loop_socket_factory.cc"
    },
    {
      "type": "modify",
      "old_id": "6882e808797cc6b495f41813307ce9a4ad2472c9",
      "old_mode": 33188,
      "old_path": "quiche/quic/core/io/event_loop_socket_factory.h",
      "new_id": "03ab856ef3e1ddd0e330d28e2a0b64c555d3e654",
      "new_mode": 33188,
      "new_path": "quiche/quic/core/io/event_loop_socket_factory.h"
    },
    {
      "type": "modify",
      "old_id": "2d50087a5e8202e0491bb50bfd2f51609a76ef59",
      "old_mode": 33188,
      "old_path": "quiche/quic/core/io/event_loop_tcp_client_socket.h",
      "new_id": "4d4e51535965e73dbcb8664ef080889d4e1441b0",
      "new_mode": 33188,
      "new_path": "quiche/quic/core/io/event_loop_tcp_client_socket.h"
    },
    {
      "type": "modify",
      "old_id": "f3c0800457afe72fbed89505dcc8072ceabdeade",
      "old_mode": 33188,
      "old_path": "quiche/quic/core/io/event_loop_tcp_client_socket_test.cc",
      "new_id": "cbf724e0c5fab383885fa191e64d0f4f39a1759f",
      "new_mode": 33188,
      "new_path": "quiche/quic/core/io/event_loop_tcp_client_socket_test.cc"
    },
    {
      "type": "modify",
      "old_id": "fcc6418ac495584b26f12e5be9b9dcb045be6e73",
      "old_mode": 33188,
      "old_path": "quiche/quic/core/io/socket.h",
      "new_id": "a59172399400d2e73a45833fab5e5546f6b8e61f",
      "new_mode": 33188,
      "new_path": "quiche/quic/core/io/socket.h"
    },
    {
      "type": "modify",
      "old_id": "39102f1c870e0de47487630383924b40180ec0cd",
      "old_mode": 33188,
      "old_path": "quiche/quic/core/io/socket_factory.h",
      "new_id": "36ea666a62c91ec1f21bdbff652241428db876a4",
      "new_mode": 33188,
      "new_path": "quiche/quic/core/io/socket_factory.h"
    },
    {
      "type": "delete",
      "old_id": "00f9a42a5ad2485346a837c839b8fff8d7d1cf10",
      "old_mode": 33188,
      "old_path": "quiche/quic/core/io/stream_client_socket.h",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "modify",
      "old_id": "357a9d09cf661ab8dd280bf8105f194301bac116",
      "old_mode": 33188,
      "old_path": "quiche/quic/tools/connect_tunnel.h",
      "new_id": "7cc9bbfaf8f90168d65041ab7be0d883547bba61",
      "new_mode": 33188,
      "new_path": "quiche/quic/tools/connect_tunnel.h"
    },
    {
      "type": "modify",
      "old_id": "de569f3dcbb4ff8eac4d2ce49b2788939bc75bbe",
      "old_mode": 33188,
      "old_path": "quiche/quic/tools/connect_tunnel_test.cc",
      "new_id": "4492c7a6d0959da44fbe811c6ae65a6ae33e4c9a",
      "new_mode": 33188,
      "new_path": "quiche/quic/tools/connect_tunnel_test.cc"
    }
  ]
}
