)]}'
{
  "commit": "66caa0b5305a4aca24b846a325c3d38b74a2d26a",
  "tree": "0dddf15a4e9c9d31cb66677ea7f8746e9402f4c7",
  "parents": [
    "eedaa3ea74edc8ad6fd870324a9c54b220e29830"
  ],
  "author": {
    "name": "Maxim Dounin",
    "email": "mdounin@mdounin.ru",
    "time": "Thu Apr 08 00:15:48 2021 +0300"
  },
  "committer": {
    "name": "Maxim Dounin",
    "email": "mdounin@mdounin.ru",
    "time": "Thu Apr 08 00:15:48 2021 +0300"
  },
  "message": "Introduced the \"keepalive_time\" directive.\n\nSimilar to lingering_time, it limits total connection lifetime before\nkeepalive is switched off.  The default is 1 hour, which is close to\nthe total maximum connection lifetime possible with default\nkeepalive_requests and keepalive_timeout.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "9d8ac46d26830b974f470fbd9e685ab4931a3f60",
      "old_mode": 33188,
      "old_path": "src/core/ngx_connection.h",
      "new_id": "4716da492e90bcaf54a4ddb79e95bfd9b1253f93",
      "new_mode": 33188,
      "new_path": "src/core/ngx_connection.h"
    },
    {
      "type": "modify",
      "old_id": "49616b77632fcee0c5e1a55461f1c55f0e3e286a",
      "old_mode": 33188,
      "old_path": "src/core/ngx_resolver.c",
      "new_id": "7939070102782c0ac1bb11d9ccd54b954e54139b",
      "new_mode": 33188,
      "new_path": "src/core/ngx_resolver.c"
    },
    {
      "type": "modify",
      "old_id": "4364240938fa7a3d10808956fe6cd25bd85674c9",
      "old_mode": 33188,
      "old_path": "src/event/ngx_event_accept.c",
      "new_id": "b05666c76f4dc289bca783c8451781d36f76797a",
      "new_mode": 33188,
      "new_path": "src/event/ngx_event_accept.c"
    },
    {
      "type": "modify",
      "old_id": "1999faf209fa076e7a0adb1ad8520ae277b25b96",
      "old_mode": 33188,
      "old_path": "src/event/ngx_event_acceptex.c",
      "new_id": "f4a1c4b2b9733b47c749f6aab0c4ce2d506b841e",
      "new_mode": 33188,
      "new_path": "src/event/ngx_event_acceptex.c"
    },
    {
      "type": "modify",
      "old_id": "1ffa7984cfb01c5cd5133291e3e322f49036c5d5",
      "old_mode": 33188,
      "old_path": "src/event/ngx_event_connect.c",
      "new_id": "adbbde6336e9c021f71791fb016b3c84df273150",
      "new_mode": 33188,
      "new_path": "src/event/ngx_event_connect.c"
    },
    {
      "type": "modify",
      "old_id": "55728305035eb8c31c86854292b9afed0da7dc1e",
      "old_mode": 33188,
      "old_path": "src/event/ngx_event_udp.c",
      "new_id": "a524ae04d752c311b86eb49f7816202da1ee90cc",
      "new_mode": 33188,
      "new_path": "src/event/ngx_event_udp.c"
    },
    {
      "type": "modify",
      "old_id": "1560807c660715c31bee6f37c0c3bc61eff3cfde",
      "old_mode": 33188,
      "old_path": "src/http/modules/ngx_http_upstream_keepalive_module.c",
      "new_id": "bbd650b791bed65da99c58c0a371050005b221d6",
      "new_mode": 33188,
      "new_path": "src/http/modules/ngx_http_upstream_keepalive_module.c"
    },
    {
      "type": "modify",
      "old_id": "9b94b328e9d8708854c07ab413ce9f4310ac89f6",
      "old_mode": 33188,
      "old_path": "src/http/ngx_http_core_module.c",
      "new_id": "9dda27a104c6e7954f9df7badd3c90f41650bb75",
      "new_mode": 33188,
      "new_path": "src/http/ngx_http_core_module.c"
    },
    {
      "type": "modify",
      "old_id": "2aadae7ff06a8d1abd11fb8ba68f9acf125a21bd",
      "old_mode": 33188,
      "old_path": "src/http/ngx_http_core_module.h",
      "new_id": "2341fd463510f0b7ebaba0e6c92752786f956a2c",
      "new_mode": 33188,
      "new_path": "src/http/ngx_http_core_module.h"
    },
    {
      "type": "modify",
      "old_id": "69a94b6eeffe39cacddf31a34a9d980038eb649a",
      "old_mode": 33188,
      "old_path": "src/http/v2/ngx_http_v2.c",
      "new_id": "3611a2e5022c0f1e4574a2043a00cb048fd58933",
      "new_mode": 33188,
      "new_path": "src/http/v2/ngx_http_v2.c"
    }
  ]
}
