)]}'
{
  "log": [
    {
      "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": "101d57b34b72f4fbc7df1b6edfd64c64a6be14fc",
      "tree": "246feb7236973fb7a526652ab5795f49a808e553",
      "parents": [
        "c146d974f13450453a7c1f5ab10b105c515f0ccb"
      ],
      "author": {
        "name": "zeertzjq",
        "email": "zeertzjq@outlook.com",
        "time": "Sun Jul 31 18:34:32 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jul 31 18:34:32 2022 +0100"
      },
      "message": "patch 9.0.0124: code has more indent than needed\n\nProblem:    Code has more indent than needed.\nSolution:   Use continue and return statements. (closes #10824)\n"
    },
    {
      "commit": "4e677b9c40ccbc5f090971b31dc2fe07bf05541d",
      "tree": "80c6f0dd96f2d82b5ebb9fe0b2e36d1fc5a6c1af",
      "parents": [
        "cb5ed4d6252a7c76c2f85ae95cb1e4e2bccc41fc"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jul 28 18:44:27 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jul 28 18:44:27 2022 +0100"
      },
      "message": "patch 9.0.0101: invalid memory access in diff mode with \"dp\" and undo\n\nProblem:    Invalid memory access in diff mode with \"dp\" and undo.\nSolution:   Make sure the line number does not go below one.\n"
    },
    {
      "commit": "c5274dd12224421f2430b30c53b881b9403d649e",
      "tree": "5877c6122e443a0ffe127bc39ea13f356fc00cf8",
      "parents": [
        "c6fdb15d423df22e1776844811d082322475e48a"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jul 02 15:10:00 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jul 02 15:10:00 2022 +0100"
      },
      "message": "patch 9.0.0026: accessing freed memory with diff put\n\nProblem:    Accessing freed memory with diff put.\nSolution:   Bail out when diff pointer is no longer valid.\n"
    },
    {
      "commit": "c101abff4c6756db4f5e740fde289decb9452efa",
      "tree": "26385200c1dd4f3cc47f708d63a897514bc8795e",
      "parents": [
        "cd38bb4d83c942c4bad596835c6766cbf32e5195"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 26 16:53:34 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 26 16:53:34 2022 +0100"
      },
      "message": "patch 8.2.5164: invalid memory access after diff buffer manipulations\n\nProblem:    Invalid memory access after diff buffer manipulations.\nSolution:   Use zero offset when change removes all lines in a diff block.\n"
    },
    {
      "commit": "cd38bb4d83c942c4bad596835c6766cbf32e5195",
      "tree": "c6244fcf54ffc400bcfb6be4337e280ff53cba6f",
      "parents": [
        "0971c7a4e537ea120a6bb2195960be8d0815e97b"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 26 14:04:07 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 26 14:04:07 2022 +0100"
      },
      "message": "patch 8.2.5163: crash when deleting buffers in diff mode\n\nProblem:    Crash when deleting buffers in diff mode.\nSolution:   Recompute diffs later.  Skip window without a valid buffer.\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": "5d46dcfeed4fcbbab371e17e1072b0cc9abe5217",
      "tree": "5d7ffba43376d501d33898ddf3b8672d9c6cfcd8",
      "parents": [
        "03a297c63f1512ba9783104a343dc7e2024e0bb0"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Mar 25 14:46:47 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Mar 25 14:46:47 2022 +0000"
      },
      "message": "patch 8.2.4624: old Coverity warning for resource leak\n\nProblem:    Old Coverity warning for resource leak.\nSolution:   Close the file if memory allocation fails.\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": "9d00e4a8146862c17ed429dc6b1b43349acb2b5f",
      "tree": "79a1e0d0a738940dba6a9a86936376bd62e04ca3",
      "parents": [
        "d3a117814d6acbf0dca3eff1a7626843b9b3734a"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jan 05 17:49:15 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jan 05 17:49:15 2022 +0000"
      },
      "message": "patch 8.2.4010: error messages are spread out\n\nProblem:    Error messages are spread out.\nSolution:   Move more 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": "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": "491669701c72578f273db53e579d8a03a9deac0c",
      "tree": "3e3dd9f83004d9b1747b7a863f0052eb09d84ca3",
      "parents": [
        "8e7cc6b920ddea37deaa5e6b7b3bdfff2222d137"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Dec 30 10:51:45 2021 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Dec 30 10:51:45 2021 +0000"
      },
      "message": "patch 8.2.3943: compiler warning from gcc for uninitialized variable\n\nProblem:    Compiler warning from gcc for uninitialized variable.\nSolution:   Initialize variable. (closes #9429)\n"
    },
    {
      "commit": "febb78fa1798e0f95983b3f7881419a754886df5",
      "tree": "dc127471312decf514a729a7d1cfb028f39e690d",
      "parents": [
        "c97f9a55bd020b94d92c392516d763ed5e43d872"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Dec 29 11:59:53 2021 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Dec 29 11:59:53 2021 +0000"
      },
      "message": "patch 8.2.3931: Coverity reports a memory leak\n\nProblem:    Coverity reports a memory leak.\nSolution:   Free memory in case of failure.\n"
    },
    {
      "commit": "06f6095623cfcc72da08748c058d13b465652fd4",
      "tree": "383d299d0fdfe09e47d7268aa64b67057225c0b6",
      "parents": [
        "7473a84cf935f64ddd4ea7fe7eee0f9c51c50b60"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Dec 28 18:30:05 2021 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Dec 28 18:30:05 2021 +0000"
      },
      "message": "patch 8.2.3925: diff mode confused by NUL bytes\n\nProblem:    Diff mode confused by NUL bytes.\nSolution:   Handle NUL bytes differently. (Christian Brabandt, closes #9421,\n            closes #9418)\n"
    },
    {
      "commit": "d9da86e94ea8dbaa056270a666892945c40a6674",
      "tree": "a27cfef25062c933996cad8c6ca9dab6462a8512",
      "parents": [
        "90c317f2246a7fb4bd4e3feb0778b53627bc9fad"
      ],
      "author": {
        "name": "Lewis Russell",
        "email": "lewis6991@gmail.com",
        "time": "Tue Dec 28 13:54:41 2021 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Dec 28 13:54:41 2021 +0000"
      },
      "message": "patch 8.2.3921: the way xdiff is used is inefficient\n\nProblem:    The way xdiff is used is inefficient.\nSolution:   Use hunk_func instead of the out_line callback. (Lewis Russell,\n            closes #9344)\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": "841c225b9ef8c5bdf5e02968a0bd62521fff6ca8",
      "tree": "05e85434a0e81ecede802cf640547dfe2f5e7486",
      "parents": [
        "25def2c8b8bd7b0c3d5f020207c717a880b05d50"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Oct 22 20:56:55 2021 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Oct 22 20:56:55 2021 +0100"
      },
      "message": "patch 8.2.3556: filler lines are incorrect for other window in diff mode\n\nProblem:    Filler lines are incorrect for other window in diff mode after\n            making a change.\nSolution:   Copy filler lines from the current window. (closes #8809)\n"
    },
    {
      "commit": "04626c243c47af91c2580eaf23e12286180e0e81",
      "tree": "0d4a090980e722abfb0cccbc1ea2e3cb0317ee3c",
      "parents": [
        "6631597452d4644f485a09e4036d117e5f91de70"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Sep 01 16:02:07 2021 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Sep 01 16:02:07 2021 +0200"
      },
      "message": "patch 8.2.3394: filler lines are wrong when changing text in diff mode\n\nProblem:    Filler lines are wrong when changing text in diff mode.\nSolution:   Don\u0027t change the filler lines on every change.  Check\n            scrollbinding when updating the filler lines. (closes #8809)\n"
    },
    {
      "commit": "ba02e4720f863fdb456e7023520f0a354eec0dcf",
      "tree": "84db07f22b6ef54c238bc462823703ad11ff3872",
      "parents": [
        "dca29d9cf46cd1d4d4519211c7af78b6b1c56960"
      ],
      "author": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Tue Aug 31 20:46:39 2021 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Aug 31 20:46:39 2021 +0200"
      },
      "message": "patch 8.2.3390: included xdiff code is outdated\n\nProblem:    Included xdiff code is outdated.\nSolution:   Sync with xdiff in git 2.33. (Christian Brabandt, closes #8431)\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": "cd9172077bc8c0aafddf2e5367cc0ae2c00c8ff7",
      "tree": "d460cabb1f58286f763089e7a9552be6c21059f3",
      "parents": [
        "189663bdac1156237c49925f77bd197c1bdea12c"
      ],
      "author": {
        "name": "Yegappan Lakshmanan",
        "email": "yegappan@yahoo.com",
        "time": "Wed Jul 21 19:09:09 2021 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jul 21 19:09:09 2021 +0200"
      },
      "message": "patch 8.2.3194: 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, simplify some. (Yegappan\n            Lakshmanan, closes #8598)\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": "a9a7c0c602b231dc37c4b0f62ade0421c84fca03",
      "tree": "a7e6e2dcad98c9dd2244cf9c368360b71abf61a6",
      "parents": [
        "20c370d9f2ee89cb854054edf71f5004f6efff77"
      ],
      "author": {
        "name": "Yegappan Lakshmanan",
        "email": "yegappan@yahoo.com",
        "time": "Sat Jul 17 19:11:07 2021 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jul 17 19:11:07 2021 +0200"
      },
      "message": "patch 8.2.3173: Vim9: argument types are not checked at compile time\n\nProblem:    Vim9: argument types are not checked at compile time.\nSolution:   Add more type checks. (Yegappan Lakshmanan, closes #8581)\n"
    },
    {
      "commit": "ad5c178a191cf2cf37a27c2a789d7afda3879831",
      "tree": "6ad25f075155d0a6b88064d749f87c763679b382",
      "parents": [
        "f5409dbf66f4e4a0461d3f2079c1bffacbf12392"
      ],
      "author": {
        "name": "glacambre",
        "email": "code@lacamb.re",
        "time": "Mon May 24 14:20:53 2021 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon May 24 14:20:53 2021 +0200"
      },
      "message": "patch 8.2.2880: unified diff fails if actually used\n\nProblem:    Unified diff fails if actually used.\nSolution:   Invoke :diffupdate in the test.  Fix the check for working external\n            diff. (Ghjuvan Lacambre, Christian Brabandt, closes #8197)\n"
    },
    {
      "commit": "4223d43c0fb6ead1e611e4469a1680a9228b6015",
      "tree": "0eb28a94ec186e4f0306f6aaae79743bd6e9b99d",
      "parents": [
        "963ffa0a5a6091655ed72b4590ec5d5a1653bce8"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Feb 10 13:18:17 2021 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Feb 10 13:18:17 2021 +0100"
      },
      "message": "patch 8.2.2490: \u0027wrap\u0027 option is always reset when starting diff mode\n\nProblem:    \u0027wrap\u0027 option is always reset when starting diff mode.\nSolution:   Add the \"followwrap\" item in \u0027diffopt\u0027. (Rick Howe, closes #7797)\n"
    },
    {
      "commit": "e10044015841711b989f9a898d427bcc1fdb4c32",
      "tree": "256dbf4f826bbc408bb1eca2b381c4dc4f953eb6",
      "parents": [
        "5661ed6c833e05467cab33cb9b1c535e7e5cc570"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Oct 24 20:49:43 2020 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Oct 24 20:49:43 2020 +0200"
      },
      "message": "patch 8.2.1898: command modifier parsing always uses global cmdmod\n\nProblem:    Command modifier parsing always uses global cmdmod.\nSolution:   Pass in cmdmod_T to use.  Rename struct fields consistently.\n"
    },
    {
      "commit": "59de417b904bbd204e313f015839317b577bd124",
      "tree": "4ebd73ce6e4ccd65b8a595f388c4535d81387319",
      "parents": [
        "dcf59c37d0e1517439c4c0c4a6a5ca09c90157ad"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jun 09 19:34:54 2020 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jun 09 19:34:54 2020 +0200"
      },
      "message": "patch 8.2.0938: NFA regexp uses tolower ()to compare ignore-case\n\nProblem:    NFA regexp uses tolower() to compare ignore-case. (Thayne McCombs)\nSolution:   Use utf_fold() when possible. (ref. neovim #12456)\n"
    },
    {
      "commit": "df44a27b53586fccfc6a3aedc89061fdd9a515ff",
      "tree": "2d0ca2790b3e106a7d8f059951160789167a17a1",
      "parents": [
        "da84ac2a6f467d0b9eddcc8709433cda75d16a41"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 07 20:49:05 2020 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 07 20:49:05 2020 +0200"
      },
      "message": "patch 8.2.0928: many type casts are used for vim_strnsave()\n\nProblem:    Many type casts are used for vim_strnsave().\nSolution:   Make the length argument size_t instead of int. (Ken Takata,\n            closes #5633)  Remove some type casts.\n"
    },
    {
      "commit": "ca70c07b72c24aae3d141e67d08f50361f051af5",
      "tree": "98b26c267d6924c2a7464e08dc9fcacdd94d771f",
      "parents": [
        "d6cd5ffade84a1054fed23079133af3b837033bf"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat May 30 20:30:46 2020 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat May 30 20:30:46 2020 +0200"
      },
      "message": "patch 8.2.0853: ml_delete() often called with FALSE argument\n\nProblem:    ml_delete() often called with FALSE argument.\nSolution:   Use ml_delete_flags(x, ML_DEL_MESSAGE) when argument is TRUE.\n"
    },
    {
      "commit": "a80faa8930ed5a554beeb2727762538873135e83",
      "tree": "e797605e0c781214543fcba103cffede7af611cd",
      "parents": [
        "82de464f763d6e6d89229be03ce7c6d02fd5fb59"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Apr 12 19:37:17 2020 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Apr 12 19:37:17 2020 +0200"
      },
      "message": "patch 8.2.0559: clearing a struct is verbose\n\nProblem:    Clearing a struct is verbose.\nSolution:   Define and use CLEAR_FIELD() and CLEAR_POINTER().\n"
    },
    {
      "commit": "aeea72151c31d686bcbb7b06d895006d7363585c",
      "tree": "500d487503a1a82cecc8f2a3e9bf89b50638fe5a",
      "parents": [
        "f10806b25090879fdc1a86cc0da2f4f34fd21921"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Apr 02 18:50:46 2020 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Apr 02 18:50:46 2020 +0200"
      },
      "message": "patch 8.2.0500: using the same loop in many places\n\nProblem:    Using the same loop in many places.\nSolution:   Define more FOR_ALL macros. (Yegappan Lakshmanan, closes #5339)\n"
    },
    {
      "commit": "5d18efecfd6c45d69f55268948a22cd0465bb955",
      "tree": "409afa09cb7fb8f4684e0399f2597ba5d16edbfa",
      "parents": [
        "fa5612c7d836eb789e0f8ff4b10461b8640a14b2"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Dec 01 21:11:22 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Dec 01 21:11:22 2019 +0100"
      },
      "message": "patch 8.1.2378: using old C style comments\n\nProblem:    Using old C style comments.\nSolution:   Use // comments where appropriate.\n"
    },
    {
      "commit": "f4a1d1c0542df151bc59ac3b798ed198b5c71ccc",
      "tree": "9f6051c5c5e75c7f113a923f7888f0f272ddee9e",
      "parents": [
        "ab85ca4e6a40b2998db7b00896505486f5c16b41"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Nov 16 13:50:25 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Nov 16 13:50:25 2019 +0100"
      },
      "message": "patch 8.1.2302: :lockmarks does not work for \u0027[ and \u0027]\n\nProblem:    :lockmarks does not work for \u0027[ and \u0027].\nSolution:   save and restore \u0027[ and \u0027] marks. (James McCoy, closes #5222)\n"
    },
    {
      "commit": "c8234779790dd873acb88331c50988adf94cc383",
      "tree": "d3e58b31d9e4593956cd028e4468051ce3d79dfc",
      "parents": [
        "5c6b6187ac51a4d8545e823c1be6cdf70cac8a57"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Nov 10 21:00:27 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Nov 10 21:00:27 2019 +0100"
      },
      "message": "patch 8.1.2289: after :diffsplit closing the window does not disable diff\n\nProblem:    After :diffsplit closing the window does not disable diff.\nSolution:   Add \"closeoff\" to \u0027diffopt\u0027 and add it to the default.\n"
    },
    {
      "commit": "32aa10203bd0b4b270def03311a4599f9ffdecc4",
      "tree": "4c0188d20dcc6873e6d96f5a28b59bedcb8ebb0c",
      "parents": [
        "70def98a957620cc325d1ab6ee35f13187598693"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Nov 02 22:54:41 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Nov 02 22:54:41 2019 +0100"
      },
      "message": "patch 8.1.2243: typos in comments\n\nProblem:    Typos in comments.\nSolution:   Fix the typos. (Dominique Pelle, closes #5160)  Also adjust\n            formatting a bit.\n"
    },
    {
      "commit": "1614a14901558ca091329315d14a7d5e1b53aa47",
      "tree": "324ceeba0f8d5bda2f270b591a1beeed8e74125d",
      "parents": [
        "524f3b19ae16e08350010b5effe38d0637349285"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Oct 06 22:00:13 2019 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Oct 06 22:00:13 2019 +0200"
      },
      "message": "patch 8.1.2120: some MB_ macros are more complicated than necessary\n\nProblem:    Some MB_ macros are more complicated than necessary. (Dominique\n            Pelle)\nSolution:   Simplify the macros.  Expand inline.\n"
    },
    {
      "commit": "af7645d3733fdd3cd2df03ec7b653601d26969ef",
      "tree": "1b3c3d1d0d6428c33026693a5086910cca8b3078",
      "parents": [
        "8d3b51084a5bdcd2ee9e31bc03cba0d16c43d428"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Sep 05 22:33:28 2019 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Sep 05 22:33:28 2019 +0200"
      },
      "message": "patch 8.1.1989: the evalfunc.c file is still too big\n\nProblem:    The evalfunc.c file is still too big.\nSolution:   Move f_pathshorten() to filepath.c.  Move f_cscope_connection() to\n            if_cscope.c.  Move diff_ functions to diff.c.  Move timer_\n            functions to ex_cmds2.c.  move callback functions to evalvars.c.\n"
    },
    {
      "commit": "4f57eefe1e84b5a90e08474092ea6fc8825ad5c9",
      "tree": "5afd78a40e21a0375a423acbf3ef990e32ac0cd6",
      "parents": [
        "a4208966fb289a505ebdef62bbc37c214069bab4"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Aug 24 20:54:19 2019 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Aug 24 20:54:19 2019 +0200"
      },
      "message": "patch 8.1.1922: in diff mode global operations can be very slow\n\nProblem:    In diff mode global operations can be very slow.\nSolution:   Do not call diff_redraw() many times, call it once when redrawing.\n            And also don\u0027t update folds multiple times.\n"
    },
    {
      "commit": "c799fe206e61f2e2c1231bc46cbe4bb354f3da69",
      "tree": "68b3d2a8bb82519e29fc95f317d2ee02b07f95fa",
      "parents": [
        "b58a4b938c4bc7e0499700859bd7abba9acc5b11"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue May 28 23:08:19 2019 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue May 28 23:08:19 2019 +0200"
      },
      "message": "patch 8.1.1414: alloc() returning \"char_u *\" causes a lot of type casts\n\nProblem:    Alloc() returning \"char_u *\" causes a lot of type casts.\nSolution:   Have it return \"void *\". (Mike Williams)  Define ALLOC_ONE() to\n            check the simple allocations.\n"
    },
    {
      "commit": "20c023aee0ceafac9431fb8ab8d169747b5140dd",
      "tree": "479954fa4e6886dbc3bef40cb00569ae6cf440dc",
      "parents": [
        "9d591525a5d7a693aa47b4a87c5f53c503500c1c"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun May 26 21:03:24 2019 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun May 26 21:03:24 2019 +0200"
      },
      "message": "patch 8.1.1405: \"highlight\" option of popup windows not supported\n\nProblem:    \"highlight\" option of popup windows not supported.\nSolution:   Implement the \"highlight\" option.\n"
    },
    {
      "commit": "18a4ba29aeccb9841d5bfdd2eaaffdfae2f15ced",
      "tree": "408ad339f6b34876d2fa481ac61568c7739b1160",
      "parents": [
        "71de720c2c117137185a6fc233b35aab37f0d4bc"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri May 24 19:39:03 2019 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri May 24 19:39:03 2019 +0200"
      },
      "message": "patch 8.1.1386: unessesary type casts for lalloc()\n\nProblem:    Unessesary type casts for lalloc().\nSolution:   Remove type casts.  Change lalloc(size, TRUE) to alloc(size).\n"
    },
    {
      "commit": "964b3746b9c81e65887e2ac9a335f181db2bb592",
      "tree": "9afaaac41a1c4f71b359fd6706b88df00e22e7a1",
      "parents": [
        "d33a764123a8aedb20cd84aeff3b94810ee67c4c"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri May 24 18:54:09 2019 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri May 24 18:54:09 2019 +0200"
      },
      "message": "patch 8.1.1384: using \"int\" for alloc() often results in compiler warnings\n\nProblem:    Using \"int\" for alloc() often results in compiler warnings.\nSolution:   Use \"size_t\" and remove type casts.  Remove alloc_check(), Vim\n            only works with 32 bit ints anyway.\n"
    },
    {
      "commit": "975880b6e6de473b512995ef87ce072aaca934cf",
      "tree": "d13ee3177bfa632013b01ff00c93315f8dbbb2ce",
      "parents": [
        "e21c1580b7acb598a6e3c38565434fe5d0e2ad7a"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Mar 03 14:42:11 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Mar 03 14:42:11 2019 +0100"
      },
      "message": "patch 8.1.0991: cannot build with a mix of features\n\nProblem:    Cannot build with FEAT_EVAL defined and FEAT_SEARCH_EXTRA\n            undefined, and with FEAT_DIFF defined and FEAT_EVAL undefined.\nSolution:   Add a couple of #ifdefs. (closes #4067)\n"
    },
    {
      "commit": "b9ddda6c2d98d99c09d58145c1b5b4042a8fd92c",
      "tree": "b9ad408dfdd16ffd01276e8b583ff208133bf153",
      "parents": [
        "66ae3d199fdcd732eb79266e913e4e6d2e82ee76"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Feb 19 23:00:50 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Feb 19 23:00:50 2019 +0100"
      },
      "message": "patch 8.1.0956: using context:0 in \u0027diffopt\u0027 does not work well\n\nProblem:    Using context:0 in \u0027diffopt\u0027 does not work well.\nSolution:   Make zero context do the same as one line context. (closes #4005)\n"
    },
    {
      "commit": "00590740081489db69f43d9f1c0e3f70e29ce6da",
      "tree": "5200046e5c39885c50b5057cca9110975a629eb5",
      "parents": [
        "e93e5a504f481bd0dad9c504d5fcf0e5f0dfc6e6"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Feb 15 21:06:09 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Feb 15 21:06:09 2019 +0100"
      },
      "message": "patch 8.1.0927: USE_CR is never defined\n\nProblem:    USE_CR is never defined.\nSolution:   Remove usage of USE_CR. (Ken Takata, closes #3958)\n"
    },
    {
      "commit": "135059724f140ceac889c9f8136bd1bf5c41d49d",
      "tree": "64a9fc867701c8cdd596130cdab2d92129920bd7",
      "parents": [
        "4b9e91f0ba02192e4592a5c4a9bdcdd6e9efeb5e"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jan 24 15:04:48 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jan 24 15:04:48 2019 +0100"
      },
      "message": "patch 8.1.0805: too many #ifdefs\n\nProblem:    Too many #ifdefs.\nSolution:   Graduate FEAT_MBYTE, part 1.\n"
    },
    {
      "commit": "b5443cc46dd1485d6c785dd8c65a2c07bd5a17f3",
      "tree": "0d666a666cf4f5bea6b3afdf8a60059e5991ab8c",
      "parents": [
        "8e481e8dfe0b82930faf005c7e840c49cbcf4511"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jan 15 20:19:40 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jan 15 20:19:40 2019 +0100"
      },
      "message": "patch 8.1.0753: printf format not checked for semsg()\n\nProblem:    printf format not checked for semsg().\nSolution:   Add GNUC attribute and fix reported problems. (Dominique Pelle,\n            closes #3805)\n"
    },
    {
      "commit": "f9e3e09fdc93be9f0d47afbc6c7df1188c2a5a0d",
      "tree": "a6b07005c19279a4f5d01be14f14861c2657fa95",
      "parents": [
        "05500ece6282407f9f7227aaf564e24147326863"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jan 13 23:38:42 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jan 13 23:38:42 2019 +0100"
      },
      "message": "patch 8.1.0743: giving error messages is not flexible\n\nProblem:    Giving error messages is not flexible.\nSolution:   Add semsg().  Change argument from \"char_u *\" to \"char *\", also\n            for msg() and get rid of most MSG macros. (Ozaki Kiichi, closes\n            #3302)  Also make emsg() accept a \"char *\" argument.  Get rid of\n            an enormous number of type casts.\n"
    },
    {
      "commit": "b6fc72851c45a36a370f9516c68508e47b41c4c1",
      "tree": "7da05b1356fc904ee84d4a41f894d84b9fa1689e",
      "parents": [
        "97195685334c800c5ad1328d957d1bf21f5fa1fa"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Dec 04 22:24:16 2018 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Dec 04 22:24:16 2018 +0100"
      },
      "message": "patch 8.1.0562: parsing of \u0027diffopt\u0027 is slightly wrong\n\nProblem:    Parsing of \u0027diffopt\u0027 is slightly wrong.\nSolution:   Fix the parsing and add a test. (Jason Franklin, Christian\n            Brabandt)\n"
    },
    {
      "commit": "d0721058f494143186f66a60151c9634031a8c96",
      "tree": "3c47ba880d622c5571b370bbbe7923f44c91b485",
      "parents": [
        "389ab7122bec99c11ad4ce6d87cc6f38a21e4e40"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Nov 05 21:21:33 2018 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Nov 05 21:21:33 2018 +0100"
      },
      "message": "patch 8.1.0513: no error for set diffopt+\u003dalgorithm:\n\nProblem:    No error for set diffopt+\u003dalgorithm:.\nSolution:   Check for missing argument. (Hirohito Higashi, closes #3598)\n"
    },
    {
      "commit": "f080d70a82f3a4477f346d9efcdfaec1bc1e1d58",
      "tree": "026984ece20253103637569f07b3f8f1e8d23895",
      "parents": [
        "a9a8e04eab106c1d21381f79f8965fe50b94e235"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Oct 31 22:57:26 2018 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Oct 31 22:57:26 2018 +0100"
      },
      "message": "patch 8.1.0502: internal diff fails when diffing a context diff\n\nProblem:    Internal diff fails when diffing a context diff. (Hirohito Higashi)\nSolution:   Only use callback calls with one line. (closes #3581)\n"
    },
    {
      "commit": "5f57bdcab77bc417ae0357fe8ad6c7259b6d25df",
      "tree": "f05f00dee1abb6472935bddc2adcfd74a3ec14ed",
      "parents": [
        "c0fe4978f2311be9a0221d4c2369251c719b399a"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Oct 25 17:52:23 2018 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Oct 25 17:52:23 2018 +0200"
      },
      "message": "patch 8.1.0497: :%diffput changes order of lines\n\nProblem:    :%diffput changes order of lines. (Markus Braun)\nSolution:   Do adjust marks when using internal diff.\n"
    },
    {
      "commit": "df77cef92ec034796723ffa3adb12e8b46daa98e",
      "tree": "b7106c402d4d687ede7623fcb1b954e5b879f8c4",
      "parents": [
        "0cc7b2d6ccc79d6ce69f5405f9914a42cb4f615e"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Oct 07 17:46:42 2018 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Oct 07 17:46:42 2018 +0200"
      },
      "message": "patch 8.1.0458: ml_get error and crash when using \"do\"\n\nProblem:    Ml_get error and crash when using \"do\".\nSolution:   Adjust cursor position also when diffupdate is not needed.\n            (Hirohito Higashi)\n"
    },
    {
      "commit": "198fa066b2ec011e91012c1a3d85a73df7b93f31",
      "tree": "c6d89bae21680e07f70a481f8cc1d0860add4e4e",
      "parents": [
        "110bd60985c31e8978e9b071e2179f4233ef8557"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Sep 18 21:20:26 2018 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Sep 18 21:20:26 2018 +0200"
      },
      "message": "patch 8.1.0402: the DiffUpdate event isn\u0027t triggered for :diffput\n\nProblem:    The DiffUpdate event isn\u0027t triggered for :diffput.\nSolution:   Also trigger DiffUpdate for :diffget and :diffput.\n"
    },
    {
      "commit": "d2b58c0a2c665075a8cfef57db6e1b37d4523e02",
      "tree": "afabdf9dd96f05d7d4ac008929846d1f09f6721f",
      "parents": [
        "65985ac998713dfe0f0ff1dd49c5e3e8f17f4870"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Sep 16 18:10:48 2018 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Sep 16 18:10:48 2018 +0200"
      },
      "message": "patch 8.1.0400: using freed memory with :diffget\n\nProblem:    Using freed memory with :diffget.\nSolution:   Skip ex_diffupdate() while updating diffs. (closes #3442)\n"
    },
    {
      "commit": "e8fa05b5bc2d6d76bf5af50176a63655d00d1110",
      "tree": "f044f8dd892e26a8edec54754043668b64b512ca",
      "parents": [
        "42c63356d774bbfe91712197e8969f60de828a32"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Sep 16 15:48:06 2018 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Sep 16 15:48:06 2018 +0200"
      },
      "message": "patch 8.1.0397: no event triggered after updating diffs\n\nProblem:    No event triggered after updating diffs.\nSolution:   Add the DiffUpdated event.\n"
    },
    {
      "commit": "6e272acc82af900318017061f923e7f66dc7ee7a",
      "tree": "dccedf1934e5471fa11b0b49496eadef886789d5",
      "parents": [
        "e3521d9cbb786806eaff106707851d37d2c0ecef"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Sep 16 14:51:36 2018 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Sep 16 14:51:36 2018 +0200"
      },
      "message": "patch 8.1.0395: compiler warning on 64-bit MS-Windows\n\nProblem:    Compiler warning on 64-bit MS-Windows.\nSolution:   Add type cast. (Mike Williams)\n"
    },
    {
      "commit": "e3521d9cbb786806eaff106707851d37d2c0ecef",
      "tree": "37457955339b93a9bd1410491b2a1f1e9bea2b72",
      "parents": [
        "785fc6567f572b8caefbc89ec29bbd8b801464ae"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Sep 16 14:10:31 2018 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Sep 16 14:10:31 2018 +0200"
      },
      "message": "patch 8.1.0394: diffs are not always updated correctly\n\nProblem:    Diffs are not always updated correctly.\nSolution:   When using internal diff update for any changes properly.\n"
    },
    {
      "commit": "785fc6567f572b8caefbc89ec29bbd8b801464ae",
      "tree": "6a8199c4bbc17a5cc65e4c4dfebded963a146fc7",
      "parents": [
        "50eb16c3b23235b21ce4494673a7741a9a196176"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Sep 15 19:17:38 2018 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Sep 15 19:17:38 2018 +0200"
      },
      "message": "patch 8.1.0393: not all white space difference options available\n\nProblem:    Not all white space difference options available.\nSolution:   Add \"iblank\", \"iwhiteall\" and \"iwhiteeol\" to \u0027diffopt\u0027.\n"
    },
    {
      "commit": "42335f50bc6fac444a8af74c81df8369d722a6fb",
      "tree": "fc6596503a515a25a7c2a046321108642848b935",
      "parents": [
        "c787539747f6bb2510a56aa14dbf6808aff5681a"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Sep 13 15:33:43 2018 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Sep 13 15:33:43 2018 +0200"
      },
      "message": "patch 8.1.0377: xdiff doesn\u0027t use the Vim memory allocation functions\n\nProblem:    Xdiff doesn\u0027t use the Vim memory allocation functions.\nSolution:   Change the xdl_ defines.  Check for out-of-memory.  Rename\n            \"ignored\" to \"vim_ignored\".\n"
    },
    {
      "commit": "3b8defd0a52fc1276816608e7bb24b628ab14c2e",
      "tree": "51274af65eed16671abb4eceb00a7949c6f16699",
      "parents": [
        "bd9a53c06c8869ad811cb3dd01a309c9be7d7a63"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Sep 13 13:03:11 2018 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Sep 13 13:03:11 2018 +0200"
      },
      "message": "patch 8.1.0375: cannot use diff mode with Cygwin diff.exe\n\nProblem:    Cannot use diff mode with Cygwin diff.exe. (Igor Forca)\nSolution:   Skip over unrecognized lines in the diff output.\n"
    },
    {
      "commit": "274cea35c6d409cfb16862ff24e789b2d3ea3ee3",
      "tree": "10455d79ab477a8c61a51a6116b0f0077aba2806",
      "parents": [
        "67f8ab829911c7901c534ef2bf19cc34b622936f"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Sep 12 18:00:12 2018 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Sep 12 18:00:12 2018 +0200"
      },
      "message": "patch 8.1.0370: not using internal diff if \u0027diffopt\u0027 is not changed\n\nProblem:    Not using internal diff if \u0027diffopt\u0027 is not changed.\nSolution:   Correct initialization of diff_flags. (Christian Brabandt)\n"
    },
    {
      "commit": "e828b7621cf9065a3582be0c4dd1e0e846e335bf",
      "tree": "79cf05b6295837108fb6edbbc154e333c940698a",
      "parents": [
        "93a1df2c205c8399d96c172d9483e0793d32892a"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Sep 10 17:51:58 2018 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Sep 10 17:51:58 2018 +0200"
      },
      "message": "patch 8.1.0360: using an external diff program is slow and inflexible\n\nProblem:    Using an external diff program is slow and inflexible.\nSolution:   Include the xdiff library. (Christian Brabandt, closes #2732)\n            Use it by default.\n"
    },
    {
      "commit": "f273245f6433d5d43a5671306b520a3230c35787",
      "tree": "958293fed4c59ee0cb91a491c8c0e32aa0e618c2",
      "parents": [
        "33c5e9fa7af935c61a8aac461b9664c501003440"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 03 14:47:35 2018 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 03 14:47:35 2018 +0200"
      },
      "message": "patch 8.1.0027: difficult to make a plugin that feeds a line to a job\n\nProblem:    Difficult to make a plugin that feeds a line to a job.\nSolution:   Add the nitial code for the \"prompt\" buftype.\n"
    },
    {
      "commit": "c36651b4b946333dce0a916326d821d2562cf39d",
      "tree": "9bda30e7d6d0719595e66c123985c6d064fef793",
      "parents": [
        "29ce409bfca52bb8a07e2975d06fd788458e9861"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Apr 29 12:22:56 2018 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Apr 29 12:22:56 2018 +0200"
      },
      "message": "patch 8.0.1773: dialog messages are not translated\n\nProblem:    Dialog messages are not translated.\nSolution:   Add N_() and _() where needed. (Sergey Alyoshin)\n"
    },
    {
      "commit": "8a3bb56230d220b8e1b4dcca517ed95f5341b8c7",
      "tree": "e1d195050f92f44fc1993ca016c07611cb6faaa7",
      "parents": [
        "107279c17b3a21899e0a9d0293ada040216539ba"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Mar 04 20:14:14 2018 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Mar 04 20:14:14 2018 +0100"
      },
      "message": "patch 8.0.1566: too many #ifdefs\n\nProblem:    Too many #ifdefs.\nSolution:   Graduate FEAT_SCROLLBIND and FEAT_CURSORBIND.\n"
    },
    {
      "commit": "f2bd8ef2b4507d02c6043affff8f7e85e3414d5f",
      "tree": "f14cb8e7ff09975920f3a813d7de4851a2972661",
      "parents": [
        "3f54fd319f6641b4bed478bcc90cdb39ede68e31"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Mar 04 18:08:14 2018 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Mar 04 18:08:14 2018 +0100"
      },
      "message": "patch 8.0.1564: too many #ifdefs\n\nProblem:    Too many #ifdefs.\nSolution:   Graduate the +autocmd feature. Takes away 450 #ifdefs and\n            increases code size of tiny Vim by only 40 Kbyte.\n"
    },
    {
      "commit": "97ce419201421f65f4764549ed80307a7ef9c7a6",
      "tree": "0ba380c7872e3fed3b109a4af087b7c3b4417e73",
      "parents": [
        "76bb7196f5102c9929959d710e8ed97a19affa4d"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Dec 01 20:35:58 2017 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Dec 01 20:35:58 2017 +0100"
      },
      "message": "patch 8.0.1361: some users don\u0027t want to diff with hidden buffers\n\nProblem:    Some users don\u0027t want to diff with hidden buffers.\nSolution:   Add the \"hiddenoff\" item to \u0027diffopt\u0027. (Alisue, closes #2394)\n"
    },
    {
      "commit": "6e32f615eb824048a98666d1da4416bbeb7b2bed",
      "tree": "17b9847dfa5048b9f5d7c0a848ba5765dda54868",
      "parents": [
        "11aa62f8f949bb590b4d7792a334885fba5e4137"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Sep 04 23:21:07 2017 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Sep 04 23:21:07 2017 +0200"
      },
      "message": "patch 8.0.1056: cannot build with +diff but without +multi_byte\n\nProblem:    Cannot build with the diff feature but without the mutli-byte\n            feature.\nSolution:   Remove #ifdefs. (John Marriott)\n"
    },
    {
      "commit": "ae96b8d058cffd9d07b78cb7a9ccd382185b9dd6",
      "tree": "883e83fc0f48ff9f51819d773d0abb948ccdcc43",
      "parents": [
        "6a8691d483914606213a24356a9124fa41c93b69"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Sep 03 15:04:21 2017 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Sep 03 15:04:21 2017 +0200"
      },
      "message": "patch 8.0.1046: code duplication in diff mode\n\nProblem:    Code duplication in diff mode.\nSolution:   Use diff_equal_char() also in diff_cmp(). (Rick Howe)\n"
    },
    {
      "commit": "da22b8cc8b1b96fabd5a4c35c57b04a351340fb1",
      "tree": "1f3b1aa24674d76a16b03c3d12d447d1c2b9cb25",
      "parents": [
        "dada6d2a8e887309e88cb126f1251d81f91b4b9d"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Sep 02 18:01:50 2017 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Sep 02 18:01:50 2017 +0200"
      },
      "message": "patch 8.0.1037: \"icase\" of \u0027diffopt\u0027 is not used for highlighting\n\nProblem:    \"icase\" of \u0027diffopt\u0027 is not used for highlighting differences.\nSolution:   Also use \"icase\". (Rick Howe)\n"
    },
    {
      "commit": "04f62f881c5743d2fdaf7324f6a715381f0d5fcf",
      "tree": "f2db897422696463e859521127d9a6878f354efe",
      "parents": [
        "a8788f4d0b991f466b607c2c5bc6fd600bc78a97"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jul 19 18:18:39 2017 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jul 19 18:18:39 2017 +0200"
      },
      "message": "patch 8.0.0736: OptionSet not triggered when entering diff mode\n\nProblem:    The OptionSet autocommand event is not triggered when entering\n            diff mode.\nSolution:   use set_option_value() instead of setting the option directly.\n            Change the tests from old to new style. (Christian Brabandt)\n"
    },
    {
      "commit": "79a213d6a4e909703524a7f1ad985c7bd40650a6",
      "tree": "0bfee87d433fa76ec2ec876c402f97ebc2bc8006",
      "parents": [
        "9e0f6ec0762575d229b86798b284ca4876bc3d73"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue May 16 13:15:18 2017 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue May 16 13:15:18 2017 +0200"
      },
      "message": "patch 8.0.0599: diff mode is insufficiently tested\n\nProblem:    diff mode is insufficiently tested\nSolution:   Add more test cases. (Dominique Pelle, closes #1685)\n"
    },
    {
      "commit": "1c46544412382db8b3203d6c78e550df885540bd",
      "tree": "d4dc51020d3ebdbee4548b0d5628221f921af2f3",
      "parents": [
        "91acfffc1e6c0d8c2abfb186a0e79a5bf19c3f3f"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Mar 12 20:10:05 2017 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Mar 12 20:10:05 2017 +0100"
      },
      "message": "patch 8.0.0452: some macros are in lower case\n\nProblem:    Some macros are in lower case.\nSolution:   Make a few more macros upper case.\n"
    },
    {
      "commit": "b5aedf3e228d35821591da9ae8501b61cf2e264c",
      "tree": "39cdf29566db1e5ed8b2235d2b0240c859163bd8",
      "parents": [
        "8774845ce1a7def122ea07c057a79417f3be3d17"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Mar 12 18:23:53 2017 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Mar 12 18:23:53 2017 +0100"
      },
      "message": "patch 8.0.0448: some macros are in lower case\n\nProblem:    Some macros are in lower case, which can be confusing.\nSolution:   Make a few lower case macros upper case.\n"
    },
    {
      "commit": "a95ab321200f0239991bf53756b17cd7b90745f9",
      "tree": "6485aa8f07294fdda7cc42dff6fb948cbff23a0e",
      "parents": [
        "38a3d6c9601b637a28f399059263300e9f65eba4"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Mar 11 19:21:53 2017 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Mar 11 19:21:53 2017 +0100"
      },
      "message": "patch 8.0.0444: diffpatch fails when the file name has a quote\n\nProblem:    Diffpatch fails when the file name has a quote.\nSolution:   Escape the name properly. (zetzei)\n"
    },
    {
      "commit": "1ef73e33c9414eb02c229d8234aafd9d481a8856",
      "tree": "ea8c934b8f2e1d109ab7bce70074bf0bde5dda09",
      "parents": [
        "ad2cfb54b78523435b31de7234081ff70a53e736"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Mar 09 19:21:30 2017 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Mar 09 19:21:30 2017 +0100"
      },
      "message": "patch 8.0.0442: patch shell command not well escaped\n\nProblem:    Patch shell command uses double quotes around the argument, which\n            allows for $HOME to be expanded. (Etienne)\nSolution:   Use single quotes on Unix. (closes #1543)\n"
    },
    {
      "commit": "a6c07603ca2fa98a4184f5fd5ab021adcf5156b2",
      "tree": "fd78ab3e8ea373d8bf6b3f4e398e71f03681fee9",
      "parents": [
        "f7e894dfb60b6fd8f426aa3da1452803f8de010c"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Mar 05 21:18:27 2017 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Mar 05 21:18:27 2017 +0100"
      },
      "message": "patch 8.0.0425: build errors when building without folding\n\nProblem:    Build errors when building without folding.\nSolution:   Add #ifdefs. (John Marriott)\n"
    },
    {
      "commit": "25ea0544587dd45088512fec9d7a685e35fea679",
      "tree": "0038abd019ded330eb77ba548b1bbd24a343f1b3",
      "parents": [
        "6b40f303291be6b2fe524b5708e089773048c269"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Feb 03 23:16:28 2017 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Feb 03 23:16:28 2017 +0100"
      },
      "message": "patch 8.0.0300: cannot stop diffing hidden buffers\n\nProblem:    Cannot stop diffing hidden buffers. (Daniel Hahler)\nSolution:   When using :diffoff! make the whole list if diffed buffers empty.\n            (closes #736)\n"
    },
    {
      "commit": "025e3e0bafbc85cc4e365145af711edf99d0a90d",
      "tree": "0bbd3a565a44576e714d9f8c7c85fd5e6255ad9b",
      "parents": [
        "9ec7fa82a2c4f0283862ed704c2940959e6130ee"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Oct 18 14:50:18 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Oct 18 14:50:18 2016 +0200"
      },
      "message": "patch 8.0.0044\nProblem:    In diff mode the cursor may end up below the last line, resulting\n            in an ml_get error.\nSolution:   Check the line to be valid.\n"
    },
    {
      "commit": "edf3f97ae2af024708ebb4ac614227327033ca47",
      "tree": "82fed9ebfc85a69d3cff613f9dab11c8750fad8b",
      "parents": [
        "965ed14973fd3f1b2aace7bae4d4722b71ca04f9"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Aug 29 22:49:24 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Aug 29 22:49:24 2016 +0200"
      },
      "message": "patch 7.4.2293\nProblem:    Modelines in source code are inconsistant.\nSolution:   Use the same line in most files.  Add \u0027noet\u0027.  (Naruhiko Nishino)\n"
    },
    {
      "commit": "46328f9a1cc8047d1e05095bc9f531038c5a4028",
      "tree": "6c304ad0ec0fdaafa7e4e490681a959f36ad46f2",
      "parents": [
        "4427db9bb2f4b4587559eac18cc7ba10c52c6e8b"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Aug 28 15:39:57 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Aug 28 15:39:57 2016 +0200"
      },
      "message": "patch 7.4.2279\nProblem:    Starting diff mode with the cursor in the last line might end up\n            only showing one closed fold. (John Beckett)\nSolution:   Scroll the window to show the same relative cursor position.\n"
    },
    {
      "commit": "e67d546f3c691139e6d3d33f36724d98aec04c14",
      "tree": "8d990c67d29e4085dcb259b43dad3bf76833b05c",
      "parents": [
        "818078ddfbb8cc2546f697c5675a251d095722ec"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Aug 27 22:40:42 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Aug 27 22:40:42 2016 +0200"
      },
      "message": "patch 7.4.2275\nProblem:    \":diffoff!\" does not remove filler lines.\nSolution:   Force a redraw and invalidate the cursor. (closes #1014)\n"
    },
    {
      "commit": "89eaa4185efacab253b23a182c1c8a7bbf1096c9",
      "tree": "cb8ed611f3dfdd5bf9687cd89b2bd3ab91dad5ef",
      "parents": [
        "b54c3ff3174dbb5dfbfcabdf95200b047beaa644"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jul 31 14:17:27 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jul 31 14:17:27 2016 +0200"
      },
      "message": "patch 7.4.2135\nProblem:    Various tiny issues.\nSolution:   Update comments, white space, etc.\n"
    },
    {
      "commit": "2932359000b2f918d5fade79ea4d124d5943cd07",
      "tree": "1ca4fa98569a4d20ce066c7d6254404bcf431b47",
      "parents": [
        "6835dc61aebca2b602d85a9d63c449ace58683b4"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jul 24 22:04:11 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jul 24 22:04:11 2016 +0200"
      },
      "message": "patch 7.4.2101\nProblem:    Looping over windows, buffers and tab pages is inconsistant.\nSolution:   Use FOR_ALL_ macros everywhere. (Yegappan Lakshmanan)\n"
    },
    {
      "commit": "7c0a2f367f2507669560b1a66423155c70d2e75b",
      "tree": "7cd0523311a25f653497197abc1fa86ed62bcc79",
      "parents": [
        "ea3f2e7be447a8f0c4436869620f908de5e8ef1e"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jul 10 22:11:16 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jul 10 22:11:16 2016 +0200"
      },
      "message": "patch 7.4.2024\nProblem:    More buf_valid() calls can be optimized.\nSolution:   Use bufref_valid() instead.\n"
    },
    {
      "commit": "8767f52fbfd4f053ce00a978227c95f1d7d323fe",
      "tree": "ac0cb33815d6e9d41f9b7a6b4ee4335e6076feaa",
      "parents": [
        "4a6c670b844a3ef9aec865a8216eaf363bab8721"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jul 01 17:17:39 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jul 01 17:17:39 2016 +0200"
      },
      "message": "patch 7.4.1975\nProblem:    On MS-Windows large files (\u003e 2Gbyte) cause problems.\nSolution:   Use \"off_T\" instead of \"off_t\".  Use \"stat_T\" instead of \"struct\n            stat\".  Use 64 bit system functions if available.  (Ken Takata)\n"
    },
    {
      "commit": "f1d2501ebe33e148886c2914acd33140e20ee222",
      "tree": "49e0f2df5cf7358f4bbd4f5ec25a2359753ca671",
      "parents": [
        "00ded43a5a85df57abb74f9e3a38a401f6fbd8fd"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Mar 03 12:22:53 2016 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Mar 03 12:22:53 2016 +0100"
      },
      "message": "patch 7.4.1476\nProblem:    Function arguments marked as unused while they are not.\nSolution:   Remove UNUSED. (Yegappan Lakshmanan)\n"
    },
    {
      "commit": "48e330aff911be1c798c88a973af6437a8141fce",
      "tree": "4945b46753c6220ae5e8cd406d139e5640bd39c4",
      "parents": [
        "4e221c99e85ed40c98892068a01270b9e7492d98"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Feb 23 14:53:34 2016 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Feb 23 14:53:34 2016 +0100"
      },
      "message": "patch 7.4.1399\nProblem:    The MS-DOS code does not build.\nSolution:   Remove the old MS-DOS code.\n"
    },
    {
      "commit": "7454a06e2642d2b37afad1c5e71cec68081ca4ff",
      "tree": "8b38e652321d9591a2f57e44b9bdc1f590837f7b",
      "parents": [
        "305598b71261265994e2846b4ff4a4d8efade280"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jan 30 15:14:10 2016 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jan 30 15:14:10 2016 +0100"
      },
      "message": "patch 7.4.1205\nProblem:    Using old style function declarations.\nSolution:   Change to new style function declarations. (script by Hirohito\n            Higashi)\n"
    },
    {
      "commit": "f28dbcea371b3a35727d91afc90fb90e0527d78a",
      "tree": "df3ced3771c8d6900fc2e65ffa37e89566f215ba",
      "parents": [
        "f12d983deab06b0408781d7a6c2f8970d765b723"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jan 29 22:03:47 2016 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jan 29 22:03:47 2016 +0100"
      },
      "message": "patch 7.4.1196\nProblem:    Still using __ARGS.\nSolution:   Remove __ARGS in several files. (script by Hirohito Higashi)\n"
    },
    {
      "commit": "f29a82dcd0914c76f595d475ddac4517371fab2b",
      "tree": "56510dfbae677368f53d127e5c83438e2ac1a699",
      "parents": [
        "6f62fed349bf829da2adb02619dc9acba13c8ab6"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Dec 17 15:03:55 2015 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Dec 17 15:03:55 2015 +0100"
      },
      "message": "patch 7.4.974\nProblem:    When using :diffsplit the cursor jumps to the first line.\nSolution:   Put the cursor on the line related to where the cursor was before\n            the split.\n"
    },
    {
      "commit": "9dd33af4baf5fd7d3a7a779d8363834b38804946",
      "tree": "c0854f3a0b36a0cd358b475bc94471171ab3859f",
      "parents": [
        "75e641354645b62fbf171231ebf71f046489cf17"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Aug 04 21:51:25 2015 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Aug 04 21:51:25 2015 +0200"
      },
      "message": "patch 7.4.810\nProblem:    With a sequence of commands using buffers in diff mode E749 is\n            given. (itchyny)\nSolution:   Skip unloaded buffer. (Hirohito Higashi)\n"
    },
    {
      "commit": "4392996461f56803d5c4a4919ba6dc509434bef5",
      "tree": "f0a9f18bcd765e675550da74858ac2b1f7a3ad3c",
      "parents": [
        "fafeee6b9e4b1a295001ed2139f9c5bc81eab836"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jul 03 15:06:56 2015 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jul 03 15:06:56 2015 +0200"
      },
      "message": "patch 7.4.768\nProblem:    :diffoff only works properly once.\nSolution:   Also make :diffoff work when used a second time. (Olaf Dabrunz)\n"
    },
    {
      "commit": "e5c421cfd70a4d864faa0fac4e9f2dd6cdf5881d",
      "tree": "77b845e567cd28c87bf4e9226384cccf04ab645b",
      "parents": [
        "1ca2e361a869c58a775b5fabb2aaf4e2675ea7ba"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Mar 31 13:33:08 2015 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Mar 31 13:33:08 2015 +0200"
      },
      "message": "updated for version 7.4.684\nProblem:    When starting several Vim instances in diff mode, the temp files\n            used may not be unique. (Issue 353)\nSolution:   Add an argument to vim_tempname() to keep the file.\n"
    },
    {
      "commit": "6a64365c952895ecc2219b303d9bf64dabf8f2e7",
      "tree": "24cdbbf8fd4c44e442c18f519ecb488dfee4f97e",
      "parents": [
        "fe3c41009887331dc9fee2bedf457728117be544"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Oct 31 13:54:25 2014 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Oct 31 13:54:25 2014 +0100"
      },
      "message": "updated for version 7.4.490\nProblem:    Cannot specify the buffer to use for \"do\" and \"dp\", making them\n            useless for three-way diff.\nSolution:   Use the count as the buffer number. (James McCoy)\n"
    },
    {
      "commit": "e962c6795be76884f3683d93487fb59d3dae9b0a",
      "tree": "ec6ad032001f3cb44774b0212fe9fedc08a52e72",
      "parents": [
        "dcc1ce2f5a640df9aca9122ecf145a1e95257cf4"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Oct 15 12:56:49 2014 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Oct 15 12:56:49 2014 +0200"
      },
      "message": "updated for version 7.4.477\nProblem:    When using \":%diffput\" and the other file is empty an extra empty\n            line remains.\nSolution:   Set the buf_empty flag.\n"
    },
    {
      "commit": "846a2ff5f3a006fb612d1ece1962cb75ca06d0fe",
      "tree": "64acc0eee444d20847081ae2e7ef93673b53aa7e",
      "parents": [
        "cbc17d66be624d911354ef7a6f18a9c903e80731"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 28 11:35:37 2014 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 28 11:35:37 2014 +0200"
      },
      "message": "updated for version 7.4.308\nProblem:    When using \":diffsplit\" on an empty file the cursor is displayed\n            on the command line.\nSolution:   Limit the value of w_topfill.\n"
    }
  ],
  "next": "00462ffb7d0fc6448eb5d10681ef4e1f812c7310"
}
