)]}'
{
  "log": [
    {
      "commit": "270124f46ae6266ac7eee871e28d3072dd7d5a92",
      "tree": "77a4877548b1913bde550980eba799fec4942f9e",
      "parents": [
        "b4074ead5cd8751f0460e157471028dbb77ca1e9"
      ],
      "author": {
        "name": "Sean Dewar",
        "email": "6256228+seandewar@users.noreply.github.com",
        "time": "Sat May 10 14:33:28 2025 +0200"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Sat May 10 14:33:28 2025 +0200"
      },
      "message": "patch 9.1.1376: quickfix dummy buffer may remain as dummy buffer\n\nProblem:  when failing to wipeout a quickfix dummy buffer, it will\n          remain as a dummy buffer, despite being kept.\nSolution: clear its dummy BF_DUMMY flag in this case (Sean Dewar).\n\ncloses: #17283\n\nSigned-off-by: Sean Dewar \u003c6256228+seandewar@users.noreply.github.com\u003e\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "b4074ead5cd8751f0460e157471028dbb77ca1e9",
      "tree": "d242de77149f09fb65a8c2bef372594f1b26f44f",
      "parents": [
        "9955c125fa1ef4273faa5760c3bb957aabdbfc28"
      ],
      "author": {
        "name": "Sean Dewar",
        "email": "6256228+seandewar@users.noreply.github.com",
        "time": "Sat May 10 14:30:36 2025 +0200"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Sat May 10 14:30:36 2025 +0200"
      },
      "message": "patch 9.1.1375: [security]: possible heap UAF with quickfix dummy buffer\n\nProblem:  heap use-after-free possible when autocommands switch away from the\n          quickfix dummy buffer, but leave it open in a window.\nSolution: close its windows first before attempting the wipe.\n          (Sean Dewar)\n\nrelated: #17283\n\nSigned-off-by: Sean Dewar \u003c6256228+seandewar@users.noreply.github.com\u003e\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "c2a9000bc1b4a2cbcfeef55450c184b16906d910",
      "tree": "da4d2ac828d42d5005272335670ebbc368b3f7dd",
      "parents": [
        "41cddfa177096168ea7f7c4f2a2857c0d76ce5d8"
      ],
      "author": {
        "name": "Naruhiko Nishino",
        "email": "naru123456789@gmail.com",
        "time": "Sun May 04 20:05:47 2025 +0200"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Sun May 04 20:05:47 2025 +0200"
      },
      "message": "patch 9.1.1363: style: inconsistent indentation in various files\n\nProblem:  style: inconsistent indentation in various files\nSolution: fix style, updated codestyle test\n          (Naruhiko Nishino)\n\ncloses: #17254\n\nSigned-off-by: Naruhiko Nishino \u003cnaru123456789@gmail.com\u003e\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "98800979dc109e03f390a0472b14ed89189e02fe",
      "tree": "851b43a7e842fd42e9bd97eebfdcbbba9157c36e",
      "parents": [
        "e9a27ef37395a0130f99e21b288b7765f0e38236"
      ],
      "author": {
        "name": "zeertzjq",
        "email": "zeertzjq@outlook.com",
        "time": "Fri Apr 18 10:57:33 2025 +0200"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Fri Apr 18 10:57:33 2025 +0200"
      },
      "message": "patch 9.1.1319: Various typos in the code, issue with test_inst_complete.vim\n\nProblem:  Various typos in the code, redundant and strange use of\n          :execute in test_ins_complete.vim (after 9.1.1315).\nSolution: Fix typos in the code and in the documentation, use the\n          executed command directly (zeertzjq).\n\ncloses: #17143\n\nCo-authored-by: Christ van Willegen \u003ccvwillegen@gmail.com\u003e\nSigned-off-by: zeertzjq \u003czeertzjq@outlook.com\u003e\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "b71f1309a210bf8f61a24f4eda336de64c6f0a07",
      "tree": "c93b2c116b5fa9731e14dcfdc05499c2f28945d7",
      "parents": [
        "2525573de71a432d73247366c6e6bf0b9567ce22"
      ],
      "author": {
        "name": "zeertzjq",
        "email": "zeertzjq@outlook.com",
        "time": "Tue Apr 08 20:29:40 2025 +0200"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Tue Apr 08 20:31:21 2025 +0200"
      },
      "message": "patch 9.1.1288: Using wrong window in ll_resize_stack()\n\nProblem:  Using wrong window in ll_resize_stack()\n          (after v9.1.1287)\nSolution: Use \"wp\" instead of \"curwin\", even though they are always the\n          same value.  Fix typos in documentation (zeertzjq).\n\ncloses: #17080\n\nSigned-off-by: zeertzjq \u003czeertzjq@outlook.com\u003e\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "adcfb6caeb1c9c54448fff8d5812c3dca2ba0d03",
      "tree": "380877d9329f1c0882abe6e98e873b6b308044ce",
      "parents": [
        "e370141bf41919642061ee2e78340dca84678712"
      ],
      "author": {
        "name": "Hirohito Higashi",
        "email": "h.east.727@gmail.com",
        "time": "Mon Apr 07 21:19:07 2025 +0200"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Mon Apr 07 21:19:07 2025 +0200"
      },
      "message": "patch 9.1.1287: quickfix code can be further improved\n\nProblem:  quickfix code can be further improved (after v9.1.1283)\nSolution: slightly refactor quickfix.c (Hirohito Higashi)\n\n- remove error message output\n- adjust comments\n- rename functions:\n  - qf_init_quickfix_stack() --\u003e qf_init_stack()\n  - qf_resize_quickfix_stack() --\u003e qf_resize_stack()\n  - qf_resize_stack() --\u003e qf_resize_stack_base()\n\nNow qf_alloc_stack() can handle both quickfix/location lists.\n\ncloses: #17068\n\nSigned-off-by: Hirohito Higashi \u003ch.east.727@gmail.com\u003e\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "88d41ab270a8390a43da97a903b1a4d76b89d330",
      "tree": "b530f9031cc767ec68e9e2293e412ddebdcb01f8",
      "parents": [
        "c54a8eb258ddc4dfc79f668a2d0c0a3c16abc8c4"
      ],
      "author": {
        "name": "64-bitman",
        "email": "60551350+64-bitman@users.noreply.github.com",
        "time": "Sun Apr 06 17:20:39 2025 +0200"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Sun Apr 06 17:20:39 2025 +0200"
      },
      "message": "patch 9.1.1283: quickfix stack is limited to 10 items\n\nProblem:  quickfix and location-list stack is limited to 10 items\nSolution: add the \u0027chistory\u0027 and \u0027lhistory\u0027 options to configure a\n          larger quickfix/location list stack\n          (64-bitman)\n\ncloses: #16920\n\nCo-authored-by: Hirohito Higashi \u003ch.east.727@gmail.com\u003e\nSigned-off-by: 64-bitman \u003c60551350+64-bitman@users.noreply.github.com\u003e\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "ce80c59bfd3c0087a354ee549639ca60fa192fba",
      "tree": "4d4dfc1a5379aeac572ceaea558ee14f5c3da41f",
      "parents": [
        "c5aad6cca534fe3c4e0f3105f172d43d0852ea27"
      ],
      "author": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Fri Mar 28 19:13:32 2025 +0100"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Fri Mar 28 19:13:32 2025 +0100"
      },
      "message": "patch 9.1.1253: abort when closing window with attached quickfix data\n\nProblem:  If win_close() is called with a window that has quickfix stack\n          attached to it, the corresponding quickfix buffer will be\n          closed and freed after the buffer was already closed. At that\n          time curwin-\u003ew_buffer points to NULL, which the CHECK_CURBUF\n          will catch and abort if ABORT_ON_ERROR is defined\nSolution: in wipe_qf_buffer() temporarily point curwin-\u003ew_buffer back to\n          curbuf, the window will be closed anyhow, so it shouldn\u0027t\n          matter that curbuf-\u003eb_nwindows isn\u0027t incremented.\n\ncloses: #16993\ncloses: #16985\n\nCo-authored-by: Hirohito Higashi \u003ch.east.727@gmail.com\u003e\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "9cb865e95bba333fa7b47c39c2729c125b911e36",
      "tree": "8198980af22ec50d7a84262c3b583da809900e01",
      "parents": [
        "adb703e1b98b71f2908ecc7b7d4180f586caafb8"
      ],
      "author": {
        "name": "Yegappan Lakshmanan",
        "email": "yegappan@yahoo.com",
        "time": "Sun Mar 23 16:42:16 2025 +0100"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Sun Mar 23 16:42:16 2025 +0100"
      },
      "message": "patch 9.1.1232: Vim script is missing the tuple data type\n\nProblem:  Vim script is missing the tuple data type\nSolution: Add support for the tuple data type\n          (Yegappan Lakshmanan)\n\ncloses: #16776\n\nSigned-off-by: Yegappan Lakshmanan \u003cyegappan@yahoo.com\u003e\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "28e40a7b55ce471656cccc2260c11a29d5da447e",
      "tree": "ca68b25dd93c9596706fdadbf72f671d54abf323",
      "parents": [
        "250739d442b51ba76589d6eb67672d95645527ec"
      ],
      "author": {
        "name": "glepnir",
        "email": "glephunter@gmail.com",
        "time": "Sun Mar 16 21:24:22 2025 +0100"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Sun Mar 16 21:29:19 2025 +0100"
      },
      "message": "patch 9.1.1214: matchfuzzy() can be improved for camel case matches\n\nProblem:  When searching for \"Cur\", CamelCase matches like \"lCursor\" score\n          higher than exact prefix matches like Cursor, which is\n          counter-intuitive (Maxim Kim).\nSolution: Add a \u0027camelcase\u0027 option to matchfuzzy() that lets users disable\n          CamelCase bonuses when needed, making prefix matches rank higher.\n          (glepnir)\n\nfixes: #16504\ncloses: #16797\n\nSigned-off-by: glepnir \u003cglephunter@gmail.com\u003e\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "27fbf6e5e8bee5c6b61819a5e82a0b50b265f0b0",
      "tree": "5ba529b666979e2e5d61c7e138ad03302e8f31da",
      "parents": [
        "83a06705dcfb10e13a75eace6319cb77b6af4d29"
      ],
      "author": {
        "name": "Jeremy Fleischman",
        "email": "jeremyfleischman@gmail.com",
        "time": "Mon Oct 14 20:46:27 2024 +0200"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Mon Oct 14 20:53:07 2024 +0200"
      },
      "message": "patch 9.1.0785: cannot preserve error position when setting quickfix list\n\nProblem:  cannot preserve error position when setting quickfix lists\nSolution: Add the \u0027u\u0027 action for setqflist()/setloclist() and try\n          to keep the closes target position (Jeremy Fleischman)\n\nfixes: #15839\ncloses: #15841\n\nSigned-off-by: Jeremy Fleischman \u003cjeremyfleischman@gmail.com\u003e\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "29822996996550f68a781e85753ebd4d177f22da",
      "tree": "8974bc824615cce4c8e2bbe86655a07e5d9e5af1",
      "parents": [
        "ae62fe5c289e148b92b1d0bb912dcce7ebe14602"
      ],
      "author": {
        "name": "Austin Chang",
        "email": "austin880625@gmail.com",
        "time": "Thu Oct 03 10:50:05 2024 +0200"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Thu Oct 03 10:56:31 2024 +0200"
      },
      "message": "patch 9.1.0755: quickfix list does not handle hardlinks well\n\nProblem:  quickfix list does not handle hardlinks well\nSolution: store original file name with quickfix entry\n          (Austin Chang)\n\nQuickfix list shows entries with duplicate name if the file is opened\nwith the path of hard links.\n\nThe major cause is that qflist assumed that the filename passed into\n`qf_add_entry` matches the filename opened with the buffer.\n\nThis patch handles this case by introduce a `qf_fname` into `qfline_S`\nstructure. It stores the filename from `qf_add_entry` for each quickfix\nline.\n\ncloses: #15687\n\nSigned-off-by: Austin Chang \u003caustin880625@gmail.com\u003e\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "be4bd189d23854ddf1d85ad291d8f7ad3f22b7a0",
      "tree": "a96d7982ce3ae6c7bbd66317aa8644e89de3b880",
      "parents": [
        "d657d3d8fd635dbd78402358788dc58a96d04117"
      ],
      "author": {
        "name": "zeertzjq",
        "email": "zeertzjq@outlook.com",
        "time": "Sat Sep 14 10:32:31 2024 +0200"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Sat Sep 14 10:34:53 2024 +0200"
      },
      "message": "patch 9.1.0728: [security]: heap-use-after-free in garbage collection with location list user data\n\nProblem:  heap-use-after-free in garbage collection with location list\n          user data.\nSolution: Mark user data as in use when no other window is referencing\n          the location list (zeertzjq)\n\nfixes: neovim/neovim#30371\ncloses: #15683\n\nSigned-off-by: zeertzjq \u003czeertzjq@outlook.com\u003e\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "8c85a2a49acf80e4f53ec51e6ff2a5f3830eeddb",
      "tree": "d6554cf3c98aeef4af872d35ded945933bf911f8",
      "parents": [
        "69dff00dfb37077f4a80fd9635ea963889ad4b49"
      ],
      "author": {
        "name": "John Marriott",
        "email": "basilisk@internode.on.net",
        "time": "Mon May 20 19:18:26 2024 +0200"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Mon May 20 19:18:26 2024 +0200"
      },
      "message": "patch 9.1.0426: too many strlen() calls in search.c\n\nProblem:  too many strlen() calls in search.c\nSolution: refactor code and remove more strlen() calls,\n          use explicit variable to remember strlen\n          (John Marriott)\n\ncloses: #14796\n\nSigned-off-by: John Marriott \u003cbasilisk@internode.on.net\u003e\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "c7a8eb5ff2ddd919e6f39faec93d81c52874695a",
      "tree": "5d0eb6f422022642697fa5a181b299b8b9fe2b63",
      "parents": [
        "6a4ea471d28107c4078e106ace1bdc0c54bf946b"
      ],
      "author": {
        "name": "zeertzjq",
        "email": "zeertzjq@outlook.com",
        "time": "Wed May 08 20:22:40 2024 +0200"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Wed May 08 20:22:40 2024 +0200"
      },
      "message": "patch 9.1.0397: Wrong display with \u0027smoothscroll\u0027 when changing quickfix list\n\nProblem:  Wrong display with \u0027smoothscroll\u0027 when changing quickfix list.\nSolution: Reset w_skipcol when replacing quickfix list (zeertzjq).\n\ncloses: #14730\n\nSigned-off-by: zeertzjq \u003czeertzjq@outlook.com\u003e\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "5bf6c2117fcef85fcf046c098dd3eb72a0147859",
      "tree": "32804af25b55ac2859188f9bc0771a38d078862c",
      "parents": [
        "86032702932995db74fed265ba99ae0c823cb75d"
      ],
      "author": {
        "name": "zeertzjq",
        "email": "zeertzjq@outlook.com",
        "time": "Sun Mar 31 18:41:27 2024 +0200"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Sun Mar 31 18:41:27 2024 +0200"
      },
      "message": "patch 9.1.0231: Filetype may be undetected when SwapExists sets ft in other buf\n\nProblem:  Filetype may be undetected when a SwapExists autocommand sets\n          filetype in another buffer.\nSolution: Make filetype detection state buffer-specific.  Also fix a\n          similar problem for \u0027modified\u0027 (zeertzjq).\n\ncloses: #14344\n\nSigned-off-by: zeertzjq \u003czeertzjq@outlook.com\u003e\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "8c55d60658b7ee3458dca57fc5eec90ca9bb9bf3",
      "tree": "dddeb0a5cbbbf48122ed92f5ee1ab512d852ac22",
      "parents": [
        "253ff4dece4e6cc4a9ff3ed935bc78f832b6fb7c"
      ],
      "author": {
        "name": "zeertzjq",
        "email": "zeertzjq@outlook.com",
        "time": "Wed Mar 13 20:42:26 2024 +0100"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Wed Mar 13 20:42:26 2024 +0100"
      },
      "message": "patch 9.1.0177: Coverity reports dead code\n\nProblem:  Coverity reports dead code.\nSolution: Remove the dead code. Also fix a mistake in ml_get_pos_len()\n          and update some comments (zeertzjq).\n\ncloses: #14189\n\nSigned-off-by: zeertzjq \u003czeertzjq@outlook.com\u003e\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "94b7c3233ef534acc669b3083ed1fe59cf3a090b",
      "tree": "b7d882e3b2cf90034e730023c01214b7b17294af",
      "parents": [
        "5cac1a9bee0798d70a7fd80363a1f697759638e8"
      ],
      "author": {
        "name": "zeertzjq",
        "email": "zeertzjq@outlook.com",
        "time": "Tue Mar 12 21:50:32 2024 +0100"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Tue Mar 12 21:50:32 2024 +0100"
      },
      "message": "patch 9.1.0172: More code can use ml_get_buf_len() instead of STRLEN()\n\nProblem:  More code can use ml_get_buf_len() instead of STRLEN().\nSolution: Change more STRLEN() calls to ml_get_buf_len().  Also do not\n          set ml_line_textlen in ml_replace_len() if \"has_props\" is set,\n          because \"len_arg\" also includes the size of text properties in\n          that case. (zeertzjq)\n\ncloses: #14183\n\nSigned-off-by: zeertzjq \u003czeertzjq@outlook.com\u003e\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "769eb2d0c3614f9ea6fffa82329558f1a4af384f",
      "tree": "3df9b0c6745a0a8d622f1b6bcf77e290e7290476",
      "parents": [
        "64de03a22bcb3ea15a215673c08390e6babcc03f"
      ],
      "author": {
        "name": "Sean Dewar",
        "email": "6256228+seandewar@users.noreply.github.com",
        "time": "Thu Mar 07 21:37:50 2024 +0100"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Thu Mar 07 21:38:21 2024 +0100"
      },
      "message": "patch 9.1.0156: Make \u0027wfb\u0027 failing to split still report E1513\n\nProblem:  may not be clear why failing to split causes an \":Xdo\" command\n          to abort if \u0027wfb\u0027 is set.\nSolution: do not return immediately if win_split fails, so E1513 is\n          still given. Expect both errors in the test. Also fix tests to\n          pass CI.\n          (Sean Dewar)\n\ncloses: #14152\n\nSigned-off-by: Sean Dewar \u003c6256228+seandewar@users.noreply.github.com\u003e\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "4bb505e28cac0389561fff78d8bbe0319c2bcf2f",
      "tree": "f99457a9745c01a0a6edc83121431a681aae6716",
      "parents": [
        "e1051924c7ca1f9f9346daef756619d4e7fb7a83"
      ],
      "author": {
        "name": "Sean Dewar",
        "email": "6256228+seandewar@users.noreply.github.com",
        "time": "Tue Mar 05 20:39:07 2024 +0100"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Tue Mar 05 20:39:07 2024 +0100"
      },
      "message": "patch 9.1.0150: Several minor \u0027winfixbuf\u0027 issues\n\nProblem:  several minor \u0027winfixbuf\u0027 issues exist, mostly relating to the\n          quickfix list\nSolution: address them and adjust tests. Retab and reflow a few things too.\n          (Sean Dewar)\n\nThings touched include:\n\n- Replace the semsgs with gettext\u0027d emsgs.\n\n- Handle window switching in ex_listdo properly, so curbuf and curwin\n  are kept in-sync and trigger autocommands; handle those properly.\n\n- Don\u0027t change the list entry index in qf_jump_edit_buffer if we fail\n  due to \u0027wfb\u0027 (achieved by returning FAIL; QF_ABORT should only be used\n  if the list was changed).\n\n- Make qf_jump_edit_buffer actually switch to prevwin when using `:cXX`\n  commands **outside** of the list window if \u0027wfb\u0027 is set in curwin.\n  Handle autocommands properly in case they mess with the list.\n\n  NOTE: previously, it seemed to split if \u0027wfb\u0027 was set, but do nothing\n  and fail if prevwin is *valid*. This behaviour seemed strange, and maybe\n  unintentional? Now it aligns more with what\u0027s described for the `:cXX`\n  commands in the original PR description when used outside a list window,\n  I think.\n\n- In both functions, only consider prevwin if \u0027wfb\u0027 isn\u0027t set for it;\n  fallback to splitting otherwise.\n\n- Use win_split to split. Not sure if there was a specific reason for\n  using ex_splitview. win_split is simpler and respects modifiers like\n  :vertical that may have been used. Plus, its return value can be checked\n  for setting opened_window in qf code (technically win_split_ins autocmds\n  could immediately close it or change windows, in which the qf code might\n  close some other window on failure; it\u0027s already the case elsewhere,\n  though).\n\ncloses: #14142\n\nSigned-off-by: Sean Dewar \u003c6256228+seandewar@users.noreply.github.com\u003e\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "5131f224da93f2e042a4b22545ef62b1b2ab8460",
      "tree": "e67aba1ca25efe3b2aeba9c54423742044f5c0f4",
      "parents": [
        "e84490311ba32cb258cc738bc3caa8b448c84c8b"
      ],
      "author": {
        "name": "Sean Dewar",
        "email": "6256228+seandewar@users.noreply.github.com",
        "time": "Mon Mar 04 19:09:26 2024 +0100"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Mon Mar 04 19:09:26 2024 +0100"
      },
      "message": "patch 9.1.0149: null pointer member access when accessing \u0027winfixbuf\u0027 property\n\nProblem:  qf_goto_win_with_qfl_file may check if prevwin has \u0027winfixbuf\u0027\n          set without checking if it\u0027s valid first.\nSolution: Reverse the condition. Add a test, a modeline, and a missing\n          CheckFeature. (Searn Dewar)\n\ncloses: #14140\n\nSigned-off-by: Sean Dewar \u003c6256228+seandewar@users.noreply.github.com\u003e\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "215703563757a4464907ead6fb9edaeb7f430bea",
      "tree": "380d7492e2fc174d13a073c6fd4e8dae6714030f",
      "parents": [
        "353faa373eb132987a1985cf3abe18c006f8cdf0"
      ],
      "author": {
        "name": "Colin Kennedy",
        "email": "colinvfx@gmail.com",
        "time": "Sun Mar 03 16:16:47 2024 +0100"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Sun Mar 03 16:16:47 2024 +0100"
      },
      "message": "patch 9.1.0147: Cannot keep a buffer focused in a window\n\nProblem:  Cannot keep a buffer focused in a window\n          (Amit Levy)\nSolution: Add the \u0027winfixbuf\u0027 window-local option\n          (Colin Kennedy)\n\nfixes:  #6445\ncloses: #13903\n\nSigned-off-by: Colin Kennedy \u003ccolinvfx@gmail.com\u003e\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "9071ed8107244e0c56a16b77d1c28e975cb21dd2",
      "tree": "81dbf77196eba6af7b99de1785d7e2b5b4dfda68",
      "parents": [
        "f0d3d4a42657dca996e790aa829de3c6be7fdb63"
      ],
      "author": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Thu Feb 15 20:17:37 2024 +0100"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Thu Feb 15 20:17:37 2024 +0100"
      },
      "message": "patch 9.1.0113: duplicate code when cleaning undo stack\n\nProblem:  duplicate code when cleaning undo stack\nSolution: refactor undo cleanup into a single public function\n\nrelated: #13928\n\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "f0d3d4a42657dca996e790aa829de3c6be7fdb63",
      "tree": "1e380271778190d857c437bd89123ad8d82562cf",
      "parents": [
        "d00fb4b3a237b375de5a1f453c8453b8b3797d51"
      ],
      "author": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Thu Feb 15 20:15:04 2024 +0100"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Thu Feb 15 20:15:04 2024 +0100"
      },
      "message": "patch 9.1.0112: Remove undo information, when cleaning quickfix buffer\n\nProblem:  When the quickfix buffer has been modified an autocommand\n          may invalidate the undo stack (kawarimidoll)\nSolution: When clearing the quickfix buffer, also wipe the undo stack\n\nfixes: #13905\ncloses: #13928\n\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "567cae2630a51efddc07eacff3b38a295e1f5671",
      "tree": "0b28c67873be22d270ca7e0a977f47148c99645b",
      "parents": [
        "cb0c113ddc0101b05a27c040774cb7106fc74cd4"
      ],
      "author": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Sun Nov 19 16:19:27 2023 +0100"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Tue Nov 21 19:52:12 2023 +0100"
      },
      "message": "patch 9.0.2117: [security] use-after-free in qf_free_items\n\nProblem:  [security] use-after-free in qf_free_items\nSolution: only access qfpnext, if it hasn\u0027t been freed\n\nCoverity discovered a possible use-after-free in qf_free_items. When\nfreeing the qfline items, we may access freed memory, when qfp \u003d\u003d\nqfpnext.\n\nSo only access qfpnext, when it hasn\u0027t been freed.\n\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "b0221819f3f7cf5cd526338070ea30b59d69315b",
      "tree": "c5dbe21d75479f349297efdef9d5749db026ed98",
      "parents": [
        "7b7cda67a1246874520b280277d9b1447e1a7ef5"
      ],
      "author": {
        "name": "zeertzjq",
        "email": "zeertzjq@outlook.com",
        "time": "Thu Oct 26 23:15:44 2023 +0200"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Thu Oct 26 23:15:44 2023 +0200"
      },
      "message": "patch 9.0.2073: typo in quickfix.c comments\n\nProblem:  typo in quickfix.c comments\nSolution: fix them\n\ncloses: #13422\n\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\nCo-authored-by: zeertzjq \u003czeertzjq@outlook.com\u003e\n"
    },
    {
      "commit": "b731800522af00fd348814d33a065b92e698afc3",
      "tree": "7607eb64e4a8475a13341590ac6cd7bd7f2f499d",
      "parents": [
        "5985879e3c36383155f84649fa42d06813a1893e"
      ],
      "author": {
        "name": "Yegappan Lakshmanan",
        "email": "yegappan@yahoo.com",
        "time": "Wed Oct 25 20:50:28 2023 +0200"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Wed Oct 25 20:50:28 2023 +0200"
      },
      "message": "patch 9.0.2064: cannot use buffer-number for errorformat\n\nProblem:  cannot use buffer-number for errorformat\nSolution: add support for parsing a buffer number using \u0027%b\u0027 in\n          \u0027errorformat\u0027\n\ncloses: #13419\n\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\nCo-authored-by: Yegappan Lakshmanan \u003cyegappan@yahoo.com\u003e\n"
    },
    {
      "commit": "fc68299d436cf87453e432daa77b6d545df4d7ed",
      "tree": "de179fbfbc61e6d9f59d2343f777f2cb83c55fff",
      "parents": [
        "aa90d4f031f73a34aaef5746931ea746849a2231"
      ],
      "author": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Sun Sep 03 20:20:52 2023 +0200"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Sun Sep 03 20:20:52 2023 +0200"
      },
      "message": "patch 9.0.1857: [security] heap-use-after-free in is_qf_win()\n\nProblem:  heap-use-after-free in is_qf_win()\nSolution: Check buffer is valid before accessing it\n\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "d4e4ecbb3793cd45b645471966c1ac703be52f4a",
      "tree": "21dc9d7421f7016bdeb0d3f5875e36251795d38c",
      "parents": [
        "74e1dada4199b2d9e68ccaafdb7895c85b4b08f1"
      ],
      "author": {
        "name": "Yegappan Lakshmanan",
        "email": "yegappan@yahoo.com",
        "time": "Sun Aug 27 18:35:45 2023 +0200"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Sun Aug 27 18:35:45 2023 +0200"
      },
      "message": "patch 9.0.1795: Indentation issues\n\nProblem:  Indentation issues\nSolution: Fix code indentation issues.\n\ncloses: #12906\n\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\nCo-authored-by: Yegappan Lakshmanan \u003cyegappan@yahoo.com\u003e\n"
    },
    {
      "commit": "ca6ac99077d2e6d020a34267aa5e0fbc4d23dc38",
      "tree": "e45ca226cd32378ba5d4b4a1565d15f163ae461b",
      "parents": [
        "7e0bae024d4c1673cff31763227ad52b936fa56f"
      ],
      "author": {
        "name": "Tom Praschan",
        "email": "13141438+tom-anders@users.noreply.github.com",
        "time": "Fri Aug 11 23:26:12 2023 +0200"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Fri Aug 11 23:26:12 2023 +0200"
      },
      "message": "patch 9.0.1688: cannot store custom data in quickfix list\n\nProblem: cannot store custom data in quickfix list\nSolution: add `user_data` field for the quickfix list\n\ncloses: #11818\n\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\nCo-authored-by: Tom Praschan \u003c13141438+tom-anders@users.noreply.github.com\u003e\n"
    },
    {
      "commit": "5bf042810b19a627eda2f170624a0cfd7b4f6ed6",
      "tree": "96c07672ce59f762ba9270e8b3b3ffbd41b0675f",
      "parents": [
        "cdb7b4c50826df254d2e5ba8abd211e49b7a9784"
      ],
      "author": {
        "name": "Shane Harper",
        "email": "shane@shaneharper.net",
        "time": "Wed Jun 07 19:09:57 2023 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jun 07 19:09:57 2023 +0100"
      },
      "message": "patch 9.0.1616: quickfix text field is truncated\n\nProblem:    Quickfix text field is truncated.\nSolution:   Fix output of text field after pattern field in quickfix buffer.\n            (Shane Harper, closes #12498)\n"
    },
    {
      "commit": "caf642c25de526229264cab9425e7c9979f3509b",
      "tree": "dd6a1a9602b5e1adf9f939e28e13f9e33dbe6c51",
      "parents": [
        "58806c1553afa2924377f6445ac6ed8cb852f9ca"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Apr 29 21:38:04 2023 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Apr 29 21:38:04 2023 +0100"
      },
      "message": "patch 9.0.1499: using uninitialized memory with fuzzy matching\n\nProblem:    Using uninitialized memory with fuzzy matching.\nSolution:   Initialize the arrays used to store match positions.\n"
    },
    {
      "commit": "960dcbd098c761dd623bec9492d5391ff6e8dceb",
      "tree": "df2abb6d73be0c31de679fa00251e133a0e99ab6",
      "parents": [
        "14113fdf9cb3d588c0d1c3a210246b981cf5aad3"
      ],
      "author": {
        "name": "Yegappan Lakshmanan",
        "email": "yegappan@yahoo.com",
        "time": "Tue Mar 07 17:45:11 2023 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Mar 07 17:45:11 2023 +0000"
      },
      "message": "patch 9.0.1391: \"clear\" macros are not always used\n\nProblem:    \"clear\" macros are not always used.\nSolution:   Use ALLOC_ONE, VIM_CLEAR, CLEAR_POINTER and CLEAR_FIELD in more\n            places. (Yegappan Lakshmanan, closes #12104)\n"
    },
    {
      "commit": "a23a11b5bf03454b71fdb5deac0d5f641e222160",
      "tree": "5ce9eb5b9668eb891072ee7e03823b1c68214656",
      "parents": [
        "d950984489e50b12d87c85f0cce1d672c880aa23"
      ],
      "author": {
        "name": "Yegappan Lakshmanan",
        "email": "yegappan@yahoo.com",
        "time": "Tue Feb 21 14:27:41 2023 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Feb 21 14:27:41 2023 +0000"
      },
      "message": "patch 9.0.1336: functions without arguments are not always declared properly\n\nProblem:    Functions without arguments are not always declared properly.\nSolution:   Use \"(void)\" instead of \"()\". (Yegappan Lakshmanan, closes #12031)\n"
    },
    {
      "commit": "af93691b53f38784efce0b93fe7644c44a7e382e",
      "tree": "74e8f31e222aed907e80c4dc5b0bded5f7400537",
      "parents": [
        "997b8a015cd39141866e953651d55c705275cbd6"
      ],
      "author": {
        "name": "Yegappan Lakshmanan",
        "email": "yegappan@yahoo.com",
        "time": "Mon Feb 20 12:16:39 2023 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Feb 20 12:16:39 2023 +0000"
      },
      "message": "patch 9.0.1330: handling new value of an option has a long \"else if\" chain\n\nProblem:    Handling new value of an option has a long \"else if\" chain.\nSolution:   Use a function pointer. (Yegappan Lakshmanan, closes #12015)\n"
    },
    {
      "commit": "f2e30d0c448b9754d0d4daa901b51fbbf4c30747",
      "tree": "06e9f4c86a67ae8004ce6527cc0c7e2841e04c1a",
      "parents": [
        "2a99fe6c41efcd5d1eb47823e7e73cf391e230ba"
      ],
      "author": {
        "name": "Yegappan Lakshmanan",
        "email": "yegappan@yahoo.com",
        "time": "Mon Jan 30 13:04:42 2023 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Jan 30 13:04:42 2023 +0000"
      },
      "message": "patch 9.0.1262: the did_set_string_option function is too long\n\nProblem:    The did_set_string_option function is too long.\nSolution:   Split off functionality to individual functions.  (Yegappan\n            Lakshmanan, Lewis Russell, closes #11904)\n"
    },
    {
      "commit": "ebfec1c531f32d424bb2aca6e7391ef3bfcbfe20",
      "tree": "d017ab5fcc15f2eef851de089c3b2aef39d7a387",
      "parents": [
        "3d79f0a4309995956bd8889940cca22f7a15881d"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jan 22 21:14:53 2023 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jan 22 21:14:53 2023 +0000"
      },
      "message": "patch 9.0.1234: the code style has to be checked manually\n\nProblem:    The code style has to be checked manually.\nSolution:   Add basic code style checks in a test.  Fix or avoid uncovered\n            problems.\n"
    },
    {
      "commit": "f97a295ccaa9803367f3714cdefce4e2283c771d",
      "tree": "a5e4d3b6f9b6b5b8a123857d13aa3b423494c01f",
      "parents": [
        "4aecaa168e90cf28da7a6facea6b11ae250a8a18"
      ],
      "author": {
        "name": "Yegappan Lakshmanan",
        "email": "yegappan@yahoo.com",
        "time": "Wed Jan 18 18:17:48 2023 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jan 18 18:17:48 2023 +0000"
      },
      "message": "patch 9.0.1221: code is indented more than necessary\n\nProblem:    Code is indented more than necessary.\nSolution:   Use an early return where it makes sense. (Yegappan Lakshmanan,\n            closes #11833)\n"
    },
    {
      "commit": "c96b7f5d2af241c5eb1589e9da3dc09e45355e65",
      "tree": "ef26f1475c713f971de88df0f7eec925c5822aca",
      "parents": [
        "9c8d12c8115640927823919001a03c79d4118063"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Dec 02 15:58:38 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Dec 02 15:58:38 2022 +0000"
      },
      "message": "patch 9.0.0990: callback name argument is changed by setqflist()\n\nProblem:    Callback name argument is changed by setqflist().\nSolution:   Use the expanded function name for the callback, do not store it\n            in the argument. (closes #11653)\n"
    },
    {
      "commit": "84497cd06f06516f6ce727ea00c47792ce16dc70",
      "tree": "5cba204eafbd2506cc306d610f646f23d65a2d9b",
      "parents": [
        "f86490ed4fdab213a28f667abd055c023a73d645"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Nov 28 20:34:52 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Nov 28 20:34:52 2022 +0000"
      },
      "message": "patch 9.0.0967: leaking memory from autocmd windows\n\nProblem:    Leaking memory from autocmd windows.\nSolution:   Free window when auc_win is not NULL.\n"
    },
    {
      "commit": "e76062c078debed0df818f70e4db14ad7a7cb53a",
      "tree": "e43b3b076fdea909c460219e896237a8924ccb6b",
      "parents": [
        "74a694dbe20bb7dea4e06f474cf62e20f9c92f1d"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Nov 28 18:51:43 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Nov 28 18:51:43 2022 +0000"
      },
      "message": "patch 9.0.0965: using one window for executing autocommands is insufficient\n\nProblem:    Using one window for executing autocommands is insufficient.\nSolution:   Use up to five windows for executing autocommands.\n"
    },
    {
      "commit": "2f7bfe66a1373051792f2ecaeefb66049825221d",
      "tree": "a01ffdeb5ba2e585050981645c4473e9b87fea46",
      "parents": [
        "28c56d501352bd98472d23667bade683877cadcc"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Nov 13 12:54:50 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Nov 13 12:54:50 2022 +0000"
      },
      "message": "patch 9.0.0870: get E967 when using text property in quickfix window\n\nProblem:    Get E967 when using text property in quickfix window. (Sergey\n            Vlasov)\nSolution:   Do not add an extra NUL and compute the text length correctly.\n            (closes #11513)\n"
    },
    {
      "commit": "d0fab10ed2a86698937e3c3fed2f10bd9bb5e731",
      "tree": "0e8f7a829236eea0654dfb8c1e4de131a05a3fa9",
      "parents": [
        "cdef1cefa2a440911c727558562f83ed9b00e16b"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Oct 20 16:03:33 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Oct 20 16:03:33 2022 +0100"
      },
      "message": "patch 9.0.0805: filetype autocmd may cause freed memory access\n\nProblem:    Filetype autocmd may cause freed memory access.\nSolution:   Set the quickfix-busy flag while filling the buffer.\n"
    },
    {
      "commit": "d8cd6f7427bc89aa38f42cc44f58bf5fb5f0f972",
      "tree": "96c67b433df5321a288a133f89e3998a2bf92977",
      "parents": [
        "db4c94788ad70118fa1ccc5fbc821757350ac771"
      ],
      "author": {
        "name": "Yegappan Lakshmanan",
        "email": "yegappan@yahoo.com",
        "time": "Sun Oct 16 11:30:48 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Oct 16 11:30:48 2022 +0100"
      },
      "message": "patch 9.0.0770: quickfix commands may keep memory allocated\n\nProblem:    Quickfix commands may keep memory allocated.\nSolution:   Free memory when it\u0027s a bit much. (Yegappan Lakshmanan,\n            closes #11379)\n"
    },
    {
      "commit": "975a665d4811649a51e2c6a97a6ce096290d87ae",
      "tree": "aa34659fe233d4c0f5080d7ecf3b3bb19eb44193",
      "parents": [
        "b9c09c118e951bc6ea2059941101939dc572b4ce"
      ],
      "author": {
        "name": "Yegappan Lakshmanan",
        "email": "yegappan@yahoo.com",
        "time": "Fri Oct 14 13:11:13 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Oct 14 13:11:13 2022 +0100"
      },
      "message": "patch 9.0.0749: alloc/free of buffer for each quickfix entry is inefficient\n\nProblem:    Alloc/free of buffer for each quickfix entry is inefficient.\nSolution:   Use a shared grow array. (Yegappan Lakshmanan, closes #11365)\n"
    },
    {
      "commit": "f8412c9d7cc487dacf47a217ae947da68a525c53",
      "tree": "bba062ffddbdd37e7caedd586c3bc7ddbc92919e",
      "parents": [
        "e42033e735febb163fdc57aadbc11787ca611ba9"
      ],
      "author": {
        "name": "Yegappan Lakshmanan",
        "email": "yegappan@yahoo.com",
        "time": "Thu Oct 13 11:59:22 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Oct 13 11:59:22 2022 +0100"
      },
      "message": "patch 9.0.0736: quickfix listing does not handle very long messages\n\nProblem:    Quickfix listing does not handle very long messages.\nSolution:   Use a growarray instead of a fixed size buffer. (Yegappan\n            Lakshmanan, closes #11357)\n"
    },
    {
      "commit": "4f1b083be43f351bc107541e7b0c9655a5d2c0bb",
      "tree": "dc39650176462f3bcd38f7d789d3f8c6b22c3dd0",
      "parents": [
        "37fef16c225eabed28a3c7a0542d2eeef30d812b"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Aug 29 20:45:16 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Aug 29 20:45:16 2022 +0100"
      },
      "message": "patch 9.0.0322: crash when no errors and \u0027quickfixtextfunc\u0027 is set\n\nProblem:    Crash when no errors and \u0027quickfixtextfunc\u0027 is set.\nSolution:   Do not handle errors if there aren\u0027t any.\n"
    },
    {
      "commit": "6d24a51b94beb1991cddce221f90b455e2d50db7",
      "tree": "e9379865255d99e36675221bc1f39af42c92bd8a",
      "parents": [
        "07ea5f1509fe8dafe3262ed2702b4d0fc99e288b"
      ],
      "author": {
        "name": "Yegappan Lakshmanan",
        "email": "yegappan@yahoo.com",
        "time": "Sat Aug 27 20:59:57 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Aug 27 20:59:57 2022 +0100"
      },
      "message": "patch 9.0.0286: using freed memory when location list changed in autocmd\n\nProblem:    Using freed memory when location list changed in autocmd.\nSolution:   Return QF_ABORT and handle it. (Yegappan Lakshmanan,\n            closes #10993)\n"
    },
    {
      "commit": "d6c67629ed05aae436164eec474832daf8ba7420",
      "tree": "7a2edf894153bc5e71d0213a7501ff858941b467",
      "parents": [
        "80525751c5ce9ed82c41d83faf9ef38667bf61b1"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Aug 24 20:07:22 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Aug 24 20:07:22 2022 +0100"
      },
      "message": "patch 9.0.0260: using freed memory when using \u0027quickfixtextfunc\u0027 recursively\n\nProblem:    Using freed memory when using \u0027quickfixtextfunc\u0027 recursively.\nSolution:   Do not allow for recursion.\n"
    },
    {
      "commit": "a4d158b3c839e96ed98ff87c7b7124ff4518c4ff",
      "tree": "42d3a6b65d4ae53a6e078c8f24a5ee9960e3ad24",
      "parents": [
        "28c9f895716cfa8f1220bc41b72a534c0e10cabe"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Aug 14 14:17:45 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Aug 14 14:17:45 2022 +0100"
      },
      "message": "patch 9.0.0206: redraw flags are not named specifically\n\nProblem:    Redraw flags are not named specifically.\nSolution:   Prefix \"UPD_\" to the flags, for UPDate_screen().\n"
    },
    {
      "commit": "ab146dac6b4148e770eb2bf61c72ef62d3ecfc65",
      "tree": "426786abb6dddef714bccab611be0a79f29704ef",
      "parents": [
        "3f79b61288bf528b9a848af9e4c849c35c1df0bf"
      ],
      "author": {
        "name": "Mike Williams",
        "email": "mikew@globalgraphics.com",
        "time": "Mon Aug 01 14:00:31 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Aug 01 14:00:31 2022 +0100"
      },
      "message": "patch 9.0.0129: compiler warning for int/size_t usage\n\nProblem:    Compiler warning for int/size_t usage.\nSolution:   Add a type cast. (Mike Williams, closes #10830)\n"
    },
    {
      "commit": "5f30e26f6946f0d0396499f91fbcfaa9d1f8acf7",
      "tree": "f03f65ea914cec1bec389ca1e51f3bd6612061b4",
      "parents": [
        "f6782732ab4acd02211923fbdccb457dacaf277e"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jul 28 11:56:01 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jul 28 11:56:01 2022 +0100"
      },
      "message": "patch 9.0.0097: long quickfix line is truncated for :clist\n\nProblem:    Long quickfix line is truncated for :clist.\nSolution:   Allocate a buffer if needed.\n"
    },
    {
      "commit": "d61efa50f8f5b9d9dcbc136705cc33874f0fdcb3",
      "tree": "7ca7416ffda546d9f45ba93d3c93f3418bd6bcd0",
      "parents": [
        "5ac50de83f1b4136f903c51a1d4e7d84a26c2271"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jul 23 09:52:04 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jul 23 09:52:04 2022 +0100"
      },
      "message": "patch 9.0.0063: too many type casts for dict_get functions\n\nProblem:    Too many type casts for dict_get functions.\nSolution:   Change the key argument from \"char_u *\" to \"char *\".\n"
    },
    {
      "commit": "6574577cacd393ab7591fc776ea060eebc939e55",
      "tree": "f583ca9957280e7086b8d14ef44127302829fd40",
      "parents": [
        "1d97db3d987c05af88c30ad20f537bcf3024f9c1"
      ],
      "author": {
        "name": "Paul Ollis",
        "email": "paul@cleversheep.org",
        "time": "Sun Jun 05 16:55:54 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 05 16:55:54 2022 +0100"
      },
      "message": "patch 8.2.5057: using gettimeofday() for timeout is very inefficient\n\nProblem:    Using gettimeofday() for timeout is very inefficient.\nSolution:   Set a platform dependent timer. (Paul Ollis, closes #10505)\n"
    },
    {
      "commit": "dd41037552c1be3548d2ce34bb1c889f14edb553",
      "tree": "92d4352bf89c6918c9c7e5254c438bc183997bfb",
      "parents": [
        "b559b302e0ecc6fced03d5201dc30f10cff7af0a"
      ],
      "author": {
        "name": "\u003d?UTF-8?q?Dundar\u003d20G\u003dC3\u003dB6c?\u003d",
        "email": "gocdundar@gmail.com",
        "time": "Sun May 15 13:59:11 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun May 15 13:59:11 2022 +0100"
      },
      "message": "patch 8.2.4958: a couple conditions are always true\n\nProblem:    A couple conditions are always true.\nSolution:   Remove the conditions. (Goc Dundar, closes #10428)\n"
    },
    {
      "commit": "31e5c60a682840959cae6273ccadd9aae48c928d",
      "tree": "a72168baa32f1899937f3937a41b0832eac66b8f",
      "parents": [
        "5dc294a7b63ed0e508dd360bc4d98173f1a1aeec"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Apr 15 13:53:33 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Apr 15 13:53:33 2022 +0100"
      },
      "message": "patch 8.2.4753: error from setting an option is silently ignored\n\nProblem:    Error from setting an option is silently ignored.\nSolution:   Handle option value errors better.  Fix uses of N_().\n"
    },
    {
      "commit": "b836658a04ee5456deca2ee523de9efe51252da3",
      "tree": "d2cbeafd920a3ed6a81196788e83a8e708d99c48",
      "parents": [
        "eca7c60d68e63001dbe3c8e5d240b0895e607fc3"
      ],
      "author": {
        "name": "\u003d?UTF-8?q?Dundar\u003d20G\u003dC3\u003dB6c?\u003d",
        "email": "gocdundar@gmail.com",
        "time": "Thu Apr 14 20:43:56 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Apr 14 20:43:56 2022 +0100"
      },
      "message": "patch 8.2.4750: small pieces of dead code\n\nProblem:    Small pieces of dead code.\nSolution:   Remove the dead code. (Goc Dundar, closes #10190) Rename the\n            qftf_cb struct member to avoid confusion.\n"
    },
    {
      "commit": "4829c1c9e9095a3303caec9af7d02f6547f6df0e",
      "tree": "2b3819cd2ea17b652ba29f3a8a6ea9945ec6c4bb",
      "parents": [
        "7a411a306f90339d8686e42ac16e1ae4fc7533c5"
      ],
      "author": {
        "name": "Yegappan Lakshmanan",
        "email": "yegappan@yahoo.com",
        "time": "Mon Apr 04 15:16:54 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Apr 04 15:16:54 2022 +0100"
      },
      "message": "patch 8.2.4683: verbose check with dict_find() to see if a key is present\n\nProblem:    Verbose check with dict_find() to see if a key is present.\nSolution:   Add dict_has_key(). (Yegappan Lakshmanan, closes #10074)\n"
    },
    {
      "commit": "b4ad3b0deac12674a7773311890b48fd39c6807c",
      "tree": "d5060ac163343dcbf75d07f32083405afb876dd9",
      "parents": [
        "46eea444d992c2ae985cabb775a5d283f8e16df3"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Mar 30 10:57:45 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Mar 30 10:57:45 2022 +0100"
      },
      "message": "patch 8.2.4649: various formatting problems\n\nProblem:    Various formatting problems.\nSolution:   Improve the code formatting.\n"
    },
    {
      "commit": "df1bbea436636ac227d33dd79f77e07f4fffb028",
      "tree": "1fe4acce1bba5825b1c33b5c7a022d6db9dc6a51",
      "parents": [
        "c12dc47b8f80c02e4fdcdb38b8217e1c06a11368"
      ],
      "author": {
        "name": "Yegappan Lakshmanan",
        "email": "yegappan@yahoo.com",
        "time": "Sat Mar 05 14:35:12 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Mar 05 14:35:12 2022 +0000"
      },
      "message": "patch 8.2.4512: the find_tags_in_file() function is much too long\n\nProblem:    The find_tags_in_file() function is much too long.\nSolution:   Refactor into multiple smaller functions. (Yegappan Lakshmanan,\n            closes #9892)\n"
    },
    {
      "commit": "2f87a99b6e9b559d51e130769e7f8377db6749f8",
      "tree": "4ff6e8dd85f95d613d7c1f1fe9efb248f59e0a07",
      "parents": [
        "b9c510859360595c046b8b7c1d6828125525e967"
      ],
      "author": {
        "name": "Yegappan Lakshmanan",
        "email": "yegappan@yahoo.com",
        "time": "Wed Mar 02 20:29:35 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Mar 02 20:29:35 2022 +0000"
      },
      "message": "patch 8.2.4494: the find_tags() function is much too long\n\nProblem:    The find_tags() function is much too long.\nSolution:   Refactor the function. (Yegappan Lakshmanan, closes #9869)\n"
    },
    {
      "commit": "5a2d4a3ecb67942d47615507a163ffcd5863c073",
      "tree": "ef0b0a114205abb53a1d5e64ab520381c8ff006f",
      "parents": [
        "416b5f4894196947ea87eea2ed4fda3504674f72"
      ],
      "author": {
        "name": "Yegappan Lakshmanan",
        "email": "yegappan@yahoo.com",
        "time": "Sat Feb 26 10:31:32 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Feb 26 10:31:32 2022 +0000"
      },
      "message": "patch 8.2.4474: memory allocation failures not tested in quickfix code\n\nProblem:    Memory allocation failures not tested in quickfix code.\nSolution:   Add alloc IDs and tests. (Yegappan Lakshmanan, closes #9848)\n"
    },
    {
      "commit": "9c9be05b17ececb1515a2f41a4dedbf848d3d8b6",
      "tree": "0f210dbd1a17a837409a004951b7a4d8b655961d",
      "parents": [
        "3c620b0c0394b754597f68fdd9da5de76156f3ce"
      ],
      "author": {
        "name": "Yegappan Lakshmanan",
        "email": "yegappan@yahoo.com",
        "time": "Thu Feb 24 12:33:17 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Feb 24 12:33:17 2022 +0000"
      },
      "message": "patch 8.2.4462: not enough testing for quickfix code\n\nProblem:    Not enough testing for quickfix code.\nSolution:   Add more tests. Fix uncovered problem. (Yegappan Lakshmanan,\n            closes #9839)\n"
    },
    {
      "commit": "4791fcd82565adcc60b86830e0bb6cd5b6eea0a6",
      "tree": "8d9a1ba4631efb742ea1617c99b61e0c3f85322c",
      "parents": [
        "2dada73a4ebffe2582af472ce362abd3116b58c9"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Feb 23 12:06:00 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Feb 23 12:06:00 2022 +0000"
      },
      "message": "patch 8.2.4453: :helpgrep may free an option that was not allocated\n\nProblem:    :helpgrep may free an option that was not allocated. (Yegappan\n            Lakshmanan)\nSolution:   Check if the value was allocated.\n"
    },
    {
      "commit": "ae6f1d8b14c2f63811ee83ef14e32086fb3e9b83",
      "tree": "4982335c2afa3ef8515860dabea038acbc2af406",
      "parents": [
        "d288eaad846f0e07e0141226f97d858dcf96cb78"
      ],
      "author": {
        "name": "kylo252",
        "email": "59826753+kylo252@users.noreply.github.com",
        "time": "Wed Feb 16 19:24:07 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Feb 16 19:24:07 2022 +0000"
      },
      "message": "patch 8.2.4402: missing parenthesis may cause unexpected problems\n\nProblem:    Missing parenthesis may cause unexpected problems.\nSolution:   Add more parenthesis is macros. (closes #9788)\n"
    },
    {
      "commit": "e023d499378942a6c3a3855cbe461ec2cb570f63",
      "tree": "08453c4abfe7323c723b23dc7ad1a5b9453a2208",
      "parents": [
        "73a16c22a4703cb9a7becdf459ce62bd894980d7"
      ],
      "author": {
        "name": "haya14busa",
        "email": "haya14busa@gmail.com",
        "time": "Tue Feb 08 18:09:29 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Feb 08 18:09:29 2022 +0000"
      },
      "message": "patch 8.2.4329: no support for end line number and column in \u0027errorformat\u0027\n\nProblem:    No support for end line number and column in \u0027errorformat\u0027.\nSolution:   Add %e and %k. (closes #9624)\n"
    },
    {
      "commit": "d82a47dd0493ee976aa3f15ecdc9aea7da6ad5bf",
      "tree": "604109254c7057942fce5c1af26fdd1bc36c066f",
      "parents": [
        "bb8cac56d9c398a2b546d9c81c15e8c3d8fd811e"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jan 05 20:24:39 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jan 05 20:24:39 2022 +0000"
      },
      "message": "patch 8.2.4012: error messages are spread out\n\nProblem:    Error messages are spread out.\nSolution:   Move the last error messages to errors.h.\n"
    },
    {
      "commit": "677658ae49de31fe2e5b1fa6d93fdfab85a4362e",
      "tree": "f5f0bbdda081ce1dad3bcaf7f4e6cf3281774cac",
      "parents": [
        "8e7d9db32b53ca2b1cb7570d2042860bcd1e943f"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jan 05 16:09:06 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jan 05 16:09:06 2022 +0000"
      },
      "message": "patch 8.2.4008: error messages are spread out\n\nProblem:    Error messages are spread out.\nSolution:   Move more error messages to errors.h.\n"
    },
    {
      "commit": "a6f7929e62c19a6a2418a016b4c59b83eb1887ac",
      "tree": "dff539628404695bd64e68602c8f7f62d9dd12f7",
      "parents": [
        "548911ee145cdd166f20e46aa720d1631e66f64e"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jan 04 21:30:47 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jan 04 21:30:47 2022 +0000"
      },
      "message": "patch 8.2.4005: error messages are spread out\n\nProblem:    Error messages are spread out.\nSolution:   Move more error messages to errors.h.\n"
    },
    {
      "commit": "1d423ef75fc8bce2edfd2aab61cc9beaa63e31aa",
      "tree": "6db703ecd2dc317aa69c9c03f3130002a857e4af",
      "parents": [
        "b09feaa86ecc53b9b953710082496951776dc5c6"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jan 02 21:26:16 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jan 02 21:26:16 2022 +0000"
      },
      "message": "patch 8.2.3987: error messages are spread out\n\nProblem:    Error messages are spread out.\nSolution:   Move more error messages to errors.h.\n"
    },
    {
      "commit": "ac78dd4a352196ca4e6640f8e4caaf126afd49e3",
      "tree": "c741cbf5a8f33503e42af2294afdbd4bf15b0ae9",
      "parents": [
        "3d0da09bb2d31afc611bf1c4b35796739d87ed63"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jan 02 19:25:26 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jan 02 19:25:26 2022 +0000"
      },
      "message": "patch 8.2.3985: error messages are spread out\n\nProblem:    Error messages are spread out.\nSolution:   Move more error messages to errors.h.\n"
    },
    {
      "commit": "74409f62790a93daf0965c71da01ff76aa0fa5a5",
      "tree": "ece55c806dc6fe451d24af66008ae1444d81d73d",
      "parents": [
        "56200eed62e59ad831f6564dcafe346e6f97ac20"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jan 01 15:58:22 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jan 01 15:58:22 2022 +0000"
      },
      "message": "patch 8.2.3970: error messages are spread out\n\nProblem:    Error messages are spread out.\nSolution:   Move more errors to errors.h.\n"
    },
    {
      "commit": "460ae5dfca31fa627531c263184849976755cf6b",
      "tree": "d94de6a24285bc10fd62ad4ae9aecb53f9a7e913",
      "parents": [
        "b37a65e4bf08c4eec4fa5b81a5efc3945fca44de"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jan 01 14:19:49 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jan 01 14:19:49 2022 +0000"
      },
      "message": "patch 8.2.3967: error messages are spread out\n\nProblem:    Error messages are spread out.\nSolution:   Move more errors to errors.h.\n"
    },
    {
      "commit": "436b5adc9770a2568209dd5ab1f98bd1afc91898",
      "tree": "623dc85ee9a396b16f939f44d38138f882edc229",
      "parents": [
        "f1474d801bbdb73406dd3d1f931f515f99e86dfa"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Dec 31 22:49:24 2021 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Dec 31 22:49:24 2021 +0000"
      },
      "message": "patch 8.2.3961: error messages are spread out\n\nProblem:    Error messages are spread out.\nSolution:   Move more errors to errors.h.\n"
    },
    {
      "commit": "af4a61a85d6e8cacc35324f266934bc463a21673",
      "tree": "3b2e75b8a36bc8e79d2bc407d929a84b69fd0e0c",
      "parents": [
        "5da36052a4bb0f3a9747ec3a8ab9d85e058e39fa"
      ],
      "author": {
        "name": "Dominique Pelle",
        "email": "dominique.pelle@gmail.com",
        "time": "Mon Dec 27 17:21:41 2021 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Dec 27 17:21:41 2021 +0000"
      },
      "message": "patch 8.2.3914: various spelling mistakes in comments\n\nProblem:    Various spelling mistakes in comments.\nSolution:   Fix the mistakes. (Dominique Pellé, closes #9416)\n"
    },
    {
      "commit": "e124204c4f8ea8b4fe5357b7613092a7acb5feb8",
      "tree": "8a049a292b17314710048a1b17625416c2bfc8d6",
      "parents": [
        "94c785d235dccacf6cdf38c5903115b61ca8a981"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Dec 16 20:56:57 2021 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Dec 16 20:56:57 2021 +0000"
      },
      "message": "patch 8.2.3830: error messages are spread out\n\nProblem:    Error messages are spread out.\nSolution:   Move more error messages to errors.h.\n"
    },
    {
      "commit": "6ae8fae8696623b527c7fb22567f6a3705b2f0dd",
      "tree": "5013ad6590516571ae06f992906c4270d7f03b45",
      "parents": [
        "6e371ecb27227ff8fedd8561d0f3880a17576848"
      ],
      "author": {
        "name": "Yegappan Lakshmanan",
        "email": "yegappan@yahoo.com",
        "time": "Sun Dec 12 16:26:44 2021 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Dec 12 16:26:44 2021 +0000"
      },
      "message": "patch 8.2.3788: lambda for option that is a function may be freed\n\nProblem:    Lambda for option that is a function may be garbage collected.\nSolution:   Set a reference in the funcref. (Yegappan Lakshmanan,\n            closes #9330)\n"
    },
    {
      "commit": "56150da6879a96db1c84c7ec4ceedeb84969f606",
      "tree": "165896a3fa2c84c3517c8aad24a74ddd50c92f01",
      "parents": [
        "a48d4e44a24191f5495e17d7616771c20ae3e3c1"
      ],
      "author": {
        "name": "Yegappan Lakshmanan",
        "email": "yegappan@yahoo.com",
        "time": "Thu Dec 09 09:27:06 2021 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Dec 09 09:27:06 2021 +0000"
      },
      "message": "patch 8.2.3762: if quickfix buffer is wiped out getqflist() still returns it\n\nProblem:    If the quickfix buffer is wiped out getqflist() still returns its\n            number.\nSolution:   Use zero if the buffer is no longer present. (Yegappan Lakshmanan,\n            closes #9306)\n"
    },
    {
      "commit": "78a61068cf2c83e611d954a0fb413a09ad59dc07",
      "tree": "bc57cdc4b0fdf24746f4e2e6bb91a3dc609d29a0",
      "parents": [
        "2172bff36417ddd90653531edc65897411c83b3f"
      ],
      "author": {
        "name": "Yegappan Lakshmanan",
        "email": "yegappan@yahoo.com",
        "time": "Wed Dec 08 20:03:31 2021 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Dec 08 20:03:31 2021 +0000"
      },
      "message": "patch 8.2.3759: quickfix buffer becomes hidden while still in a window\n\nProblem:    Quickfix buffer becomes hidden while still in a window.\nSolution:   Check if the closed window is the last window showing the quickfix\n            buffer. (Yegappan Lakshmanan, closes #9303, closes #9300)\n"
    },
    {
      "commit": "0b226f60be5c30c32fb01fc0b6dc11286e7e2313",
      "tree": "6274052c2c2956101bcb8203b50bad184fc7c289",
      "parents": [
        "05e59e3a9ffddbf93c7af02cd2ba1d0f822d4625"
      ],
      "author": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Wed Dec 01 10:54:24 2021 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Dec 01 10:54:24 2021 +0000"
      },
      "message": "patch 8.2.3713: MS-Windows: no error if vimgrep pattern is not matching\n\nProblem:    MS-Windows: No error message if vimgrep pattern is not matching.\nSolution:   Give an error message. (Christian Brabandt, closes #9245,\n            closes #8762)\n"
    },
    {
      "commit": "777175b0df8c5ec3cd30d19a2e887e661ac209c8",
      "tree": "58806429ad4998391464a42f4f4321779642bd2a",
      "parents": [
        "851c7a699ae00bdc14a4db874cf722b7b7393b53"
      ],
      "author": {
        "name": "Yegappan Lakshmanan",
        "email": "yegappan@yahoo.com",
        "time": "Thu Nov 18 22:08:57 2021 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Nov 18 22:08:57 2021 +0000"
      },
      "message": "patch 8.2.3619: cannot use a lambda for \u0027operatorfunc\u0027\n\nProblem:    Cannot use a lambda for \u0027operatorfunc\u0027.\nSolution:   Support using a lambda or partial. (Yegappan Lakshmanan,\n            closes #8775)\n"
    },
    {
      "commit": "1d30fde3c989a962e0e1af4cbcf90e1ea483f1f4",
      "tree": "138c81443921e31b93299222af015755ed61404e",
      "parents": [
        "09f7723d5a8694889350b13e3f6b4a9c3ed4c41f"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Oct 20 21:58:42 2021 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Oct 20 21:58:42 2021 +0100"
      },
      "message": "patch 8.2.3547: opening the quickfix window triggers BufWinEnter twice\n\nProblem:    Opening the quickfix window triggers BufWinEnter twice. (Yorick\n            Peterse)\nSolution:   Only trigger BufWinEnter with \"quickfix\". (closes #9022)\n"
    },
    {
      "commit": "4490ec4e839e45a2e6923c265c7e9e64c240b805",
      "tree": "3ef2dc127890ac6a644f38ae7932b7e70071544a",
      "parents": [
        "5d7c2df536c17db4a9c61e0760bdcf78d0db7330"
      ],
      "author": {
        "name": "Yegappan Lakshmanan",
        "email": "yegappan@yahoo.com",
        "time": "Tue Jul 27 22:00:44 2021 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jul 27 22:00:44 2021 +0200"
      },
      "message": "patch 8.2.3229: Vim9: runtime and compile time type checks are not the same\n\nProblem:    Vim9: runtime and compile time type checks are not the same.\nSolution:   Add more runtime type checks for builtin functions. (Yegappan\n            Lakshmanan, closes #8646)\n"
    },
    {
      "commit": "d8e44476d84b5f0cc8c4de080a47a3a9af547028",
      "tree": "c45296f474fb015dc94cedc81238377efc8e55b0",
      "parents": [
        "05bd9785fd0fd0102ab64554307bff0ec0ae34c1"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jul 21 22:20:33 2021 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jul 21 22:20:33 2021 +0200"
      },
      "message": "patch 8.2.3197: error messages are spread out\n\nProblem:    Error messages are spread out.\nSolution:   Move a few more error messages to errors.h.\n"
    },
    {
      "commit": "e29a27f6f8eef8f00d3c2d4cd9811d81cf3026b3",
      "tree": "eb8bd787e936db02a1617fb033aed2e224b3bbd3",
      "parents": [
        "9fa5dabedc4ed5af85773413e91c2fdbe4cb9f0a"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jul 20 21:07:36 2021 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jul 20 21:07:36 2021 +0200"
      },
      "message": "patch 8.2.3190: error messages are spread out\n\nProblem:    Error messages are spread out.\nSolution:   Move error messages to errors.h and give them a clear name.\n"
    },
    {
      "commit": "83494b4ac61898f687d6ef9dce4bad5802fb8e51",
      "tree": "36f06f4a70bd9a515527064cd8985029ab27c6a6",
      "parents": [
        "9bb0dad0d8283c86fddf5b950f4fbb6fb8f12741"
      ],
      "author": {
        "name": "Yegappan Lakshmanan",
        "email": "yegappan@yahoo.com",
        "time": "Tue Jul 20 17:51:51 2021 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jul 20 17:51:51 2021 +0200"
      },
      "message": "patch 8.2.3188: Vim9: argument types are not checked at compile time\n\nProblem:    Vim9: argument types are not checked at compile time.\nSolution:   Add several more type checks, also at runtime. (Yegappan\n            Lakshmanan, closes #8587)\n"
    },
    {
      "commit": "1557b16dad2b1a3466a93d015575cd7fdb4661c9",
      "tree": "958c6b32a7a66e5afb8949e3763dd5fa639ee208",
      "parents": [
        "1a71d31bf34b0b2b08517903826004ec6fd440e5"
      ],
      "author": {
        "name": "Wei-Chung Wen",
        "email": "morisato3711@gmail.com",
        "time": "Thu Jul 15 13:13:39 2021 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jul 15 13:13:39 2021 +0200"
      },
      "message": "patch 8.2.3163: location list window may open a wrong file\n\nProblem:    Location list window may open a wrong file.\nSolution:   Also update the qf_ptr field. (Wei-Chung Wen, closes #8565,\n            closes #8566)\n"
    },
    {
      "commit": "108010aa4720ef023a8ac59004fc0f2bc11125af",
      "tree": "831741a42644a86ee0d74679361f74cc27861eaa",
      "parents": [
        "d887297ad0164516dd52cdab0308c3626337d124"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 27 22:03:33 2021 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 27 22:03:33 2021 +0200"
      },
      "message": "patch 8.2.3069: error messages are spread out\n\nProblem:    Error messages are spread out.\nSolution:   Move some error messages to errors.h.  Use clearer names.\n"
    },
    {
      "commit": "6864efa59636ccede2af24e3f5f92d78d210d77b",
      "tree": "0d17b8f331e5db8e69554a8cd60e0e3acee0c888",
      "parents": [
        "ad52f96a2d3169cb1b915c1d4a6ba26ba6e5bd0a"
      ],
      "author": {
        "name": "thinca",
        "email": "thinca@gmail.com",
        "time": "Sat Jun 19 20:45:20 2021 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jun 19 20:45:20 2021 +0200"
      },
      "message": "patch 8.2.3019: location list only has the start position.\n\nProblem:    Location list only has the start position.\nSolution:   Make it possible to add an end position. (Shane-XB-Qian,\n            closes #8393)\n"
    },
    {
      "commit": "ad52f96a2d3169cb1b915c1d4a6ba26ba6e5bd0a",
      "tree": "380b4c8907b1b63688cca8714914d5e5c2d24950",
      "parents": [
        "59b50c3bee908694ae4ac10b26bfebf99d09d466"
      ],
      "author": {
        "name": "Yegappan Lakshmanan",
        "email": "yegappan@yahoo.com",
        "time": "Sat Jun 19 18:22:53 2021 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jun 19 18:22:53 2021 +0200"
      },
      "message": "patch 8.2.3018: \u0027quickfixtextfunc\u0027 formatting is lost when switching buffers\n\nProblem:    Formatting using quickfixtextfunc is lost when updating location\n            lists for different buffers.  (Yorick Peterse)\nSolution:   Use the right window for the locaiton list. (Yegappan Lakshmanan,\n            closes #8400, closes #8403)\n"
    },
    {
      "commit": "eeec2548785b2dd245a31ab25d7bde0f88ea1a6d",
      "tree": "533236c436888fd7a072c4d94a75279158f9c8a5",
      "parents": [
        "b54abeeafb074248597878a874fed9a66b114c06"
      ],
      "author": {
        "name": "K.Takata",
        "email": "kentkt@csc.jp",
        "time": "Wed Jun 02 13:28:16 2021 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jun 02 13:28:16 2021 +0200"
      },
      "message": "patch 8.2.2922: computing array length is done in various ways\n\nProblem:    Computing array length is done in various ways.\nSolution:   Use ARRAY_LENGTH everywhere. (Ken Takata, closes #8305)\n"
    },
    {
      "commit": "5f7d4c049e934dbc8d2c3f2720797c10ee3c55c2",
      "tree": "8cec3547676e6a7264b99df6e598445b9fb6ec2c",
      "parents": [
        "3a00659db740ebcf0be6153b47a5734eea4a18ba"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 05 21:31:39 2021 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 05 21:31:39 2021 +0200"
      },
      "message": "patch 8.2.2834: Vim9: :cexpr does not work with local variables\n\nProblem:    Vim9: :cexpr does not work with local variables.\nSolution:   Compile :cexpr.\n"
    },
    {
      "commit": "551c1aed65817558ac1ece541c246ea585645807",
      "tree": "347fa3f99a9a053c0c1715778df5e7d022de4511",
      "parents": [
        "2bf6034e5caf36b319148f46ba9a12e36c3bd41d"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon May 03 18:57:05 2021 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon May 03 18:57:05 2021 +0200"
      },
      "message": "patch 8.2.2826: compiler warnings for int to size_t conversion\n\nProblem:    Compiler warnings for int to size_t conversion. (Randall W.\n            Morris)\nSolution:   Add type casts.\n"
    },
    {
      "commit": "bb01a1ef3a093cdb36877ba73474719c531dc8cb",
      "tree": "46d75e2ab284ea6e579e7066edbd3315293f8add",
      "parents": [
        "5930ddcd25c3c31a323cdb1b74c228958e124527"
      ],
      "author": {
        "name": "Yegappan Lakshmanan",
        "email": "yegappan@yahoo.com",
        "time": "Mon Apr 26 21:17:52 2021 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Apr 26 21:17:52 2021 +0200"
      },
      "message": "patch 8.2.2813: cannot grep using fuzzy matching\n\nProblem:    Cannot grep using fuzzy matching.\nSolution:   Add the \"f\" flag to :vimgrep. (Yegappan Lakshmanan, closes #8152)\n"
    },
    {
      "commit": "2c7080bf1ceef4a7779644fd428b2386a0676794",
      "tree": "cf62c06da02ed3c688e3e8258191f5f61df1b8d8",
      "parents": [
        "8c6951fa2836a1ae3257770e7b927a9380439912"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Feb 06 19:19:42 2021 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Feb 06 19:19:42 2021 +0100"
      },
      "message": "patch 8.2.2474: using freed memory when window is closed by autocommand\n\nProblem:    Using freed memory when window is closed by autocommand.\n            (houyunsong)\nSolution:   Check the window pointer is still valid.\n"
    },
    {
      "commit": "f8c6a1718007432812184c28495e8d27ee6c0395",
      "tree": "301e5a7b0b80b406610881f02be24c3460674d5b",
      "parents": [
        "59ff64079b4fcf0393a7413e3242a8b58c2ceadb"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jan 30 18:09:06 2021 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jan 30 18:09:06 2021 +0100"
      },
      "message": "patch 8.2.2430: :vimgrep expands wildcards twice\n\nProblem:    :vimgrep expands wildcards twice.\nSolution:   Do not expand wildcards a second time.\n"
    },
    {
      "commit": "e5a2dc87fd9d63dfd0d9c379e363ee8b8c05b14c",
      "tree": "715a114546d458acfe85c5d0fe94fed963842ce9",
      "parents": [
        "5afd081cd3d0f3dfbc7f6b157a8caad0ce6394ee"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jan 03 19:52:05 2021 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jan 03 19:52:05 2021 +0100"
      },
      "message": "patch 8.2.2289: Vim9: \u0027cpo\u0027 can become empty\n\nProblem:    Vim9: \u0027cpo\u0027 can become empty.\nSolution:   Use empty_option instead of an empty string.  Update quickfix\n            buffer after restoring \u0027cpo\u0027.  (closes #7608)\n"
    },
    {
      "commit": "1cfb9bb5c06c07f14475f39c4eb57fea1f0dfb69",
      "tree": "24c412e276933d9b6df4340586a97aa416c74987",
      "parents": [
        "9a963377b4811e4e0419ec8825856ff4b01331ac"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Dec 22 11:40:45 2020 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Dec 22 11:40:45 2020 +0100"
      },
      "message": "patch 8.2.2185: BufUnload is not triggered for the quickfix dummy buffer\n\nProblem:    BufUnload is not triggered for the quickfix dummy buffer.\nSolution:   Do trigger BufUnload. (Pontus Leitzler,closes #7518, closes #7517)\n            Fix white space around \"\u003d\".\n"
    },
    {
      "commit": "530bed993e41bda6f717a8ddd0acb39464f95336",
      "tree": "a1aa53e764388f4248465001970b13e50f5e6111",
      "parents": [
        "9987fb0b4b591e6450fb1dfbe8f615f365057f2a"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Dec 16 21:02:56 2020 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Dec 16 21:02:56 2020 +0100"
      },
      "message": "patch 8.2.2147: quickfix window title not updated in all tab pages\n\nProblem:    Quickfix window title not updated in all tab pages.\nSolution:   Update the quickfix window title in all tab pages. (Yegappan\n            Lakshmanan, closes #7481, closes #7466)\n"
    },
    {
      "commit": "287153c5d481a09ffe98a95ad78390ff580bb557",
      "tree": "99819d5461273342402b66cb44f1934093fbb2da",
      "parents": [
        "b46f57e87b3706a8c4b97d8e03f7853a7938b061"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Nov 29 14:20:27 2020 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Nov 29 14:20:27 2020 +0100"
      },
      "message": "patch 8.2.2069: the quickfix window is not updated after setqflist()\n\nProblem:    The quickfix window is not updated after setqflist().\nSolution:   Update the quickfix buffer. (Yegappan Lakshmanan, closes #7390,\n            closes #7385)\n"
    }
  ],
  "next": "9e40c4b15ebfbc84947a3f34b1bd53e397b57f51"
}
