)]}'
{
  "commit": "1aa1b74de42aa04830ae1569b54ba8bfc9956955",
  "tree": "c2b839f6caf8157484d18d7f3e76eca9062f8eaf",
  "parents": [
    "66bac42eeac50dd5316c1f3e3b74e490f64e6c13"
  ],
  "author": {
    "name": "Roman Arutyunyan",
    "email": "arut@nginx.com",
    "time": "Wed Jul 29 13:28:04 2020 +0300"
  },
  "committer": {
    "name": "Roman Arutyunyan",
    "email": "arut@nginx.com",
    "time": "Wed Jul 29 13:28:04 2020 +0300"
  },
  "message": "Cache: ignore stale-if-error for 4xx and 5xx codes.\n\nPreviously the stale-if-error extension of the Cache-Control upstream header\ntriggered the return of a stale response for all error conditions that can be\nspecified in the proxy_cache_use_stale directive.  The list of these errors\nincludes both network/timeout/format errors, as well as some HTTP codes like\n503, 504, 403, 429 etc.  The latter prevented a cache entry from being updated\nby a response with any of these HTTP codes during the stale-if-error period.\n\nNow stale-if-error only works for network/timeout/format errors and ignores\nthe upstream HTTP code.  The return of a stale response for certain HTTP codes\nis still possible using the proxy_cache_use_stale directive.\n\nThis change also applies to the stale-while-revalidate extension of the\nCache-Control header, which triggers stale-if-error if it is missing.\n\nReported at\nhttp://mailman.nginx.org/pipermail/nginx/2020-July/059723.html.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "47f98ccb290f8587194b8ed566faafc9deaeb9da",
      "old_mode": 33188,
      "old_path": "src/http/ngx_http_upstream.c",
      "new_id": "dda4046be8a116f7179f5af3cb5368949c8d3c5d",
      "new_mode": 33188,
      "new_path": "src/http/ngx_http_upstream.c"
    }
  ]
}
