)]}'
{
  "commit": "4e6581b231f2fc49f6a7f5e72b0eb17408997958",
  "tree": "2ac67a198959d1bf38efc6179bebee93f8b627e6",
  "parents": [
    "a93847dff2de71c03511712e6449cb4235516d28"
  ],
  "author": {
    "name": "Maxim Dounin",
    "email": "mdounin@mdounin.ru",
    "time": "Sat Dec 25 01:07:15 2021 +0300"
  },
  "committer": {
    "name": "Maxim Dounin",
    "email": "mdounin@mdounin.ru",
    "time": "Sat Dec 25 01:07:15 2021 +0300"
  },
  "message": "PCRE2 library support.\n\nThe PCRE2 library is now used by default if found, instead of the\noriginal PCRE library.  If needed for some reason, this can be disabled\nwith the --without-pcre2 configure option.\n\nTo make it possible to specify paths to the library and include files\nvia --with-cc-opt / --with-ld-opt, the library is first tested without\nany additional paths and options.  If this fails, the pcre2-config script\nis used.\n\nSimilarly to the original PCRE library, it is now possible to build PCRE2\nfrom sources with nginx configure, by using the --with-pcre\u003d option.\nIt automatically detects if PCRE or PCRE2 sources are provided.\n\nNote that compiling PCRE2 10.33 and later requires inttypes.h.  When\ncompiling on Windows with MSVC, inttypes.h is only available starting\nwith MSVC 2013.  In older versions some replacement needs to be provided\n(\"echo \u0027#include \u003cstdint.h\u003e\u0027 \u003e pcre2-10.xx/src/inttypes.h\" is good enough\nfor MSVC 2010).\n\nThe interface on nginx side remains unchanged.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "ab13bf70fd61541a191afaf289b07b63a9083bf6",
      "old_mode": 33188,
      "old_path": "auto/lib/pcre/conf",
      "new_id": "20c1cafbe5492fabdf4914f63598cae11f455a0b",
      "new_mode": 33188,
      "new_path": "auto/lib/pcre/conf"
    },
    {
      "type": "modify",
      "old_id": "97c9f3ba0214ee33858ac84a9707f30b231331e9",
      "old_mode": 33188,
      "old_path": "auto/lib/pcre/make",
      "new_id": "839ef294bb3e140020573309fbe9391b8be74e0f",
      "new_mode": 33188,
      "new_path": "auto/lib/pcre/make"
    },
    {
      "type": "modify",
      "old_id": "80be906e10ca40e46cc790ef01ac7a5ef282ae3d",
      "old_mode": 33188,
      "old_path": "auto/options",
      "new_id": "48f3a1a4251b4523dd27d3c4227994adad350bab",
      "new_mode": 33188,
      "new_path": "auto/options"
    },
    {
      "type": "modify",
      "old_id": "9aa776edf46bd977856983d0fdbbc815bfe8beeb",
      "old_mode": 33188,
      "old_path": "auto/summary",
      "new_id": "b3c07eedc2bab135acbd40e43cfc57f3c6f735da",
      "new_mode": 33188,
      "new_path": "auto/summary"
    },
    {
      "type": "modify",
      "old_id": "461b4be8297117e180850b7a83d7a25a5acb5e4b",
      "old_mode": 33188,
      "old_path": "src/core/ngx_regex.c",
      "new_id": "5ae4f780b205f1de84d1b9d4b0facd4e840cd357",
      "new_mode": 33188,
      "new_path": "src/core/ngx_regex.c"
    },
    {
      "type": "modify",
      "old_id": "680486c816fe0df244c9f97da5b1df9a42c4e0bc",
      "old_mode": 33188,
      "old_path": "src/core/ngx_regex.h",
      "new_id": "70bd1db9f9272d4fc828147334c25a5327870042",
      "new_mode": 33188,
      "new_path": "src/core/ngx_regex.h"
    }
  ]
}
