)]}'
{
  "commit": "b28f5c26d16a516068435394fadfbbedb97a5cf3",
  "tree": "96097d30c93cb341033a71164caf41d6cfee4149",
  "parents": [
    "b126ffc3b5ad3f924087f7b0628c034fc223a679"
  ],
  "author": {
    "name": "Ruslan Ermilov",
    "email": "ru@nginx.com",
    "time": "Thu Dec 08 17:51:49 2016 +0300"
  },
  "committer": {
    "name": "Ruslan Ermilov",
    "email": "ru@nginx.com",
    "time": "Thu Dec 08 17:51:49 2016 +0300"
  },
  "message": "Map: the \"volatile\" parameter.\n\nBy default, \"map\" creates cacheable variables [1].  With this\nparameter it creates a non-cacheable variable.\n\nAn original idea was to deduce the cacheability of the \"map\"\nvariable by checking the cacheability of variables specified\nin source and resulting values, but it turned to be too hard.\nFor example, a cacheable variable can be overridden with the\n\"set\" directive or with the SSI \"set\" command.  Also, keeping\n\"map\" variables cacheable by default is good for performance\nreasons.  This required adding a new parameter.\n\n[1] Before db699978a33f (1.11.0), the cacheability of the\n\"map\" variable could vary depending on the cacheability of\nvariables specified in resulting values (ticket #1090).\nThis is believed to be a bug rather than a feature.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "32393436b5ff7a1444f970b632a3ff090945679b",
      "old_mode": 33188,
      "old_path": "src/http/modules/ngx_http_map_module.c",
      "new_id": "2fc9be90b7ae98c8299831d866ea525db814dc21",
      "new_mode": 33188,
      "new_path": "src/http/modules/ngx_http_map_module.c"
    },
    {
      "type": "modify",
      "old_id": "e65c70ca04d2d95b7a8615dba532aeaebf768a98",
      "old_mode": 33188,
      "old_path": "src/stream/ngx_stream_map_module.c",
      "new_id": "ef06b2de872810fb04bb1e700fea1aeb8c4cb07e",
      "new_mode": 33188,
      "new_path": "src/stream/ngx_stream_map_module.c"
    }
  ]
}
