)]}'
{
  "log": [
    {
      "commit": "ee4e0c1e9a81cb5d96e0060203a9033c2f28588e",
      "tree": "b58b410eb33044a0dadc1838e32de62ceb650e5c",
      "parents": [
        "15352dc6ec43fd50cc3be4f4fd1ad74d5619da20"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Apr 06 21:35:05 2020 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Apr 06 21:35:05 2020 +0200"
      },
      "message": "patch 8.2.0522: several errors are not tested for\n\nProblem:    Several errors are not tested for.\nSolution:   Add tests. (Yegappan Lakshmanan, closes #5892)\n"
    },
    {
      "commit": "0e05de46226eb4e5ea580beefa71831f92d613d3",
      "tree": "4ae0b308520e7dfe603d78dc0ab540998eb69bbe",
      "parents": [
        "bfcfd5784a2fe950d8e58d1d534bbbb4824524eb"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Mar 25 22:23:46 2020 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Mar 25 22:23:46 2020 +0100"
      },
      "message": "patch 8.2.0448: various functions not properly tested\n\nProblem:    Various functions not properly tested.\nSolution:   Add more tests, especially for failures. (Yegappan Lakshmanan,\n            closes #5843)\n"
    },
    {
      "commit": "8b633135106dda8605463b780573c45b00c22afe",
      "tree": "522098c1530def5515e3647660108ced67d7b258",
      "parents": [
        "98be7fecac80b30c5a323b67903eb1d0094007ea"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Mar 20 18:20:51 2020 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Mar 20 18:20:51 2020 +0100"
      },
      "message": "patch 8.2.0418: code in eval.c not sufficiently covered by tests\n\nProblem:    Code in eval.c not sufficiently covered by tests.\nSolution:   Add more tests. (Yegappan Lakshmanan, closes #5815)\n"
    },
    {
      "commit": "82f654e092ac5b86316bc1b30c0b07a849813186",
      "tree": "8a6ba00df3ea0f536d4fe559f0f6093146466062",
      "parents": [
        "bc2b71d44a0b90b6aeb3534a76912fccbe5577df"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Feb 17 22:12:50 2020 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Feb 17 22:12:50 2020 +0100"
      },
      "message": "patch 8.2.0271: the \"num64\" feature is available everywhere\n\nProblem:    The \"num64\" feature is available everywhere and building without\n            it causes problems.\nSolution:   Graduage the \"num64\" feature. (James McCoy, closes #5650)\n"
    },
    {
      "commit": "a76b31542e1d83b7d2fe7378439912e800a4d0f6",
      "tree": "fc21552fe944ef502c71d083fa15602180b49c7c",
      "parents": [
        "a36c830a32f439b862ffb85d4c4b4799ee5ea2f9"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Feb 16 16:20:21 2020 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Feb 16 16:20:21 2020 +0100"
      },
      "message": "patch 8.2.0265: \"eval\" after \"if 0\" doesn\u0027t check for following command\n\nProblem:    \"eval\" after \"if 0\" doesn\u0027t check for following command.\nSolution:   Add \"eval\" to list of commands that check for a following command.\n            (closes #5640)\n"
    },
    {
      "commit": "5feabe00c47fa66d5f4c95213f150488433f78e3",
      "tree": "9e9e980d294d8a3cc5c004f2733538cabef16d86",
      "parents": [
        "9f2d020d396132ecbc0be6faa1de29c7078bb5ac"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jan 30 18:24:53 2020 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jan 30 18:24:53 2020 +0100"
      },
      "message": "patch 8.2.0183: tests fail when the float feature is disabled\n\nProblem:    Tests fail when the float feature is disabled.\nSolution:   Skip tests that don\u0027t work without float support.\n"
    },
    {
      "commit": "4c054e9fb23027b55a09ee647a3a2c91936aeb1b",
      "tree": "d82b63c1d746e94f9f6ae1a8083fbdbd60f79612",
      "parents": [
        "ee85702c10495041791f728e977b86005c4496e8"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Nov 10 00:13:50 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Nov 10 00:13:50 2019 +0100"
      },
      "message": "patch 8.1.2282: crash when passing many arguments through a partial\n\nProblem:    Crash when passing many arguments through a partial. (Andy\n            Massimino)\nSolution:   Check the number of arguments. (closes #5186)\n"
    },
    {
      "commit": "ce0fac28977af31f1dec411d3535b4de2c3169b3",
      "tree": "bacf6049681872b54c347a76ea5f6f5073dd262f",
      "parents": [
        "30e8e73506e4522ef4aebf7d525c0e6ffe8805fd"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Sep 27 13:32:06 2019 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Sep 27 13:32:06 2019 +0200"
      },
      "message": "patch 8.1.2083: multi-byte chars do not work properly with \"%.*S\" in printf()\n\nProblem:    Multi-byte chars do not work properly with \"%.*S\" in printf().\nSolution:   Use mb_ptr2cells(). Daniel Hahler, closes #4989)\n"
    },
    {
      "commit": "f6ed61e1489e40eada55a4f1782e1ed82bcad7d9",
      "tree": "59c67f3a73489d4536e741b883a9ad5f45c3cc2f",
      "parents": [
        "30e9b3c4256710781c3bd64efb33f138e4e074b3"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Sep 07 19:05:09 2019 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Sep 07 19:05:09 2019 +0200"
      },
      "message": "patch 8.1.2004: more functions can be used as methods\n\nProblem:    More functions can be used as methods.\nSolution:   Make various functions usable as a method.\n"
    },
    {
      "commit": "aad222c9c9a1e4fe6ae5a1fe95bb084619be0e65",
      "tree": "e889d984a59e0e3f88be9e7bc4bed27b233c0442",
      "parents": [
        "93476fd6343ef40d088e064289cc279659d03953"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Sep 06 22:46:09 2019 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Sep 06 22:46:09 2019 +0200"
      },
      "message": "patch 8.1.1996: more functions can be used as methods\n\nProblem:    More functions can be used as methods.\nSolution:   Make various functions usable as a method.\n"
    },
    {
      "commit": "a4208966fb289a505ebdef62bbc37c214069bab4",
      "tree": "97ec3983559c99f47bdb9213f96a95f403af35f0",
      "parents": [
        "f63962378dc32c7253e4825b4b0f414a81c1dd3e"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Aug 24 20:50:19 2019 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Aug 24 20:50:19 2019 +0200"
      },
      "message": "patch 8.1.1921: more functions can be used as methods\n\nProblem:    More functions can be used as methods.\nSolution:   Make various functions usable as a method.\n"
    },
    {
      "commit": "16e9b85113e0b354ece1cb4f5fcc7866850f3685",
      "tree": "2abe4e3cffe8b0281f0690e5570a47eb2198a826",
      "parents": [
        "f5842c5a533346c4ff41ff666e465c85f1de35d5"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun May 19 19:59:35 2019 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun May 19 19:59:35 2019 +0200"
      },
      "message": "patch 8.1.1355: obvious mistakes are accepted as valid expressions\n\nProblem:    Obvious mistakes are accepted as valid expressions.\nSolution:   Be more strict about parsing numbers. (Yasuhiro Matsumoto,\n            closes #3981)\n"
    },
    {
      "commit": "21e551cce26ea6ff389b6c90f1945facf1a8a066",
      "tree": "80588221ad797d6d72ef2dfe9826dcee8d0fcd52",
      "parents": [
        "a9659e0da41388f2c7aedccf016c2fe2eeec6a82"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Dec 15 16:08:56 2018 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Dec 15 16:08:56 2018 +0100"
      },
      "message": "patch 8.1.0596: not all parts of printf() are tested\n\nProblem:    Not all parts of printf() are tested.\nSolution:   Add a few more test cases. (Dominique Pelle, closes #3691)\n"
    },
    {
      "commit": "c71807db9c1821baf86796cd76952df36ff1a29a",
      "tree": "da3e80c8b182e69e254044783949078388676161",
      "parents": [
        "590ec878a52b3b3d4453475f1eb4899f2b37969f"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Mar 03 15:06:52 2018 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Mar 03 15:06:52 2018 +0100"
      },
      "message": "patch 8.0.1557: printf() does not work with only one argument\n\nProblem:    printf() does not work with only one argument. (Daniel Hahler)\nSolution:   Allow using just the format. (Ken Takata, closes #2687)\n"
    },
    {
      "commit": "37175409d766ce67f2548dffa6d73451379b5737",
      "tree": "2e8e01db9672be9049ed94a1ed3192356441d628",
      "parents": [
        "42205551b140bee8b419b24abe210f56bb80b35e"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Mar 18 20:18:45 2017 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Mar 18 20:18:45 2017 +0100"
      },
      "message": "patch 8.0.0478: tests use assert_true(0) and assert_false(1) to report errors\n\nProblem:    Tests use assert_true(0) and assert_false(1) to report errors.\nSolution:   Use assert_report().\n"
    },
    {
      "commit": "218426896cbb2129aa4e85803ea97c5b57df1eaa",
      "tree": "0ce0e802eedf00927b221f7915b0836023347ccb",
      "parents": [
        "ae177b716626c8d517b7c6c7d77f8b1aec6ba5f9"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Feb 23 13:50:38 2017 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Feb 23 13:50:38 2017 +0100"
      },
      "message": "patch 8.0.0351: no test for concatenating an empty string\n\nProblem:    No test for concatenating an empty string that results from out of\n            bounds indexing.\nSolution:   Add a simple test.\n"
    },
    {
      "commit": "6100d02aab7c8294b581cb299250eea164b50e9d",
      "tree": "753bb02aa6aa2b9121a640b343f5c0a220bfd40e",
      "parents": [
        "2ec618c9feac4573b154510236ad8121c77d0eca"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Oct 02 16:51:57 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Oct 02 16:51:57 2016 +0200"
      },
      "message": "patch 8.0.0020\nProblem:    The regexp engines are not reentrant.\nSolution:   Add regexec_T and save/restore the state when needed.\n"
    },
    {
      "commit": "5582ef14384525e8cec86016876d97a6b32dd548",
      "tree": "df821155d69edf17b04df6a131d25f7fd1f1a03e",
      "parents": [
        "789a5c0e3d27f09456678f0cfb6c1bd2d8ab4a35"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Sep 14 22:16:13 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Sep 14 22:16:13 2016 +0200"
      },
      "message": "patch 8.0.0004\nProblem:    A string argument for function() that is not a function name\n            results in an error message with NULL. (Christian Brabandt)\nSolution:   Use the argument for the error message.\n"
    },
    {
      "commit": "26b84339fd8766898bcf6a259cbc2e0c38689726",
      "tree": "f273eb017b4f89484ecc35ff8f4f4a346ad23559",
      "parents": [
        "f9e687e0681a250e1549ab27b6c7ef2c500395e3"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Sep 04 21:42:36 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Sep 04 21:42:36 2016 +0200"
      },
      "message": "patch 7.4.2329\nProblem:    Error for min() and max() contains %s. (Nikolay Pavlov)\nSolution:   Pass the function name. (closes #1040)\n"
    },
    {
      "commit": "04186095346daa60e82e981dad114de2b641d672",
      "tree": "0026222b735297b056c4961160b9940ef72cd3b7",
      "parents": [
        "7f7bd297d6d989254f71c694f1c72d07cbc5c306"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Aug 29 21:55:35 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Aug 29 21:55:35 2016 +0200"
      },
      "message": "patch 7.4.2291\nProblem:    printf() handles floats wrong when there is a sign.\nSolution:   Fix placing the sign.  Add tests. (Dominique Pelle)\n"
    },
    {
      "commit": "e999782e369999539a1783a7ebe4eadcc6da28a8",
      "tree": "408ae82bd87804915887ae839627b1f434a3ef79",
      "parents": [
        "46328f9a1cc8047d1e05095bc9f531038c5a4028"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Aug 28 16:03:38 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Aug 28 16:03:38 2016 +0200"
      },
      "message": "patch 7.4.2280\nProblem:    printf() doesn\u0027t handle infinity float values correctly.\nSolution:   Add a table with possible infinity values. (Dominique Pelle)\n"
    },
    {
      "commit": "9992237a3e791fbc0c1ebf743ece1b75e1488410",
      "tree": "1016f2132eb5318b0136ce8ad71921177322a5fb",
      "parents": [
        "76efafba2af36ae5f6c7b79b56c537fcbcdb386c"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Aug 27 15:26:35 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Aug 27 15:26:35 2016 +0200"
      },
      "message": "patch 7.4.2266\nProblem:    printf() test fails on Windows. \"-inf\" is not used.\nSolution:   Check for Windows-specific values for \"nan\".  Add sign to \"inf\"\n            when appropriate.\n"
    },
    {
      "commit": "76efafba2af36ae5f6c7b79b56c537fcbcdb386c",
      "tree": "8b8793c31801fc05d1c5595f14a79261417e86b6",
      "parents": [
        "2b529bb6260b52246e92429375d995b9b5ce76b6"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Aug 27 14:21:21 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Aug 27 14:21:21 2016 +0200"
      },
      "message": "patch 7.4.2265\nProblem:    printf() isn\u0027t tested much.\nSolution:   Add more tests for printf(). (Dominique Pelle)\n"
    },
    {
      "commit": "989f592f7ffcbafdc4ec35cee4dc65bd053e2077",
      "tree": "122c18af5dbbd1b69e025a7d0293ff0b55e4a93b",
      "parents": [
        "dd1248143e56b1450903fe40813e40c63691b071"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Aug 21 15:26:54 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Aug 21 15:26:54 2016 +0200"
      },
      "message": "patch 7.4.2235\nProblem:    submatch() does not check for a valid argument.\nSolution:   Give an error if the argument is out of range. (Dominique Pelle)\n"
    },
    {
      "commit": "843b884461de1c79a1d2748549776fb13fc94360",
      "tree": "6c51e94545370536734e3033f67b19e5c23cbb49",
      "parents": [
        "e07e797db0c5ef1aafc650d8bb0d39fb052cf1e1"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Aug 21 14:36:15 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Aug 21 14:36:15 2016 +0200"
      },
      "message": "patch 7.4.2233\nProblem:    Crash when using funcref() with invalid name. (Dominique Pelle)\nSolution:   Check for NULL translated name.\n"
    },
    {
      "commit": "91984b9034d3b698459622be277d963e0c6df60e",
      "tree": "329479725a833a6bc5ae7b42cf7c1686c6542597",
      "parents": [
        "e5a8f35b4286135f3469f3b00a6c2220553d9658"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Aug 16 21:58:41 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Aug 16 21:58:41 2016 +0200"
      },
      "message": "patch 7.4.2221\nProblem:    printf() does not support binary format.\nSolution:   Add %b and %B. (Ozaki Kiichi)\n"
    },
    {
      "commit": "e5a8f35b4286135f3469f3b00a6c2220553d9658",
      "tree": "a7505fde61e414d9664d99be9136677584277521",
      "parents": [
        "f5a39447a8ebe162ee62caa2ee502cd0e65eecaa"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Aug 16 21:30:54 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Aug 16 21:30:54 2016 +0200"
      },
      "message": "patch 7.4.2220\nProblem:    printf() gives an error when the argument for %s is not a string.\n            (Ozaki Kiichi)\nSolution:   Behave like invoking string() on the argument. (Ken Takata)\n"
    },
    {
      "commit": "7ab6defcafe017a3ad58580a3e56dab705b1ed8b",
      "tree": "cbb3ca004311c7e7ed9aced83886e3804eac9035",
      "parents": [
        "7dc5e2e486fe0287601968e535902a41a39f65bb"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Aug 05 22:51:13 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Aug 05 22:51:13 2016 +0200"
      },
      "message": "patch 7.4.2161\nProblem:    Expression test fails without conceal feature.\nSolution:   Only check \"conceal\" with the conceal feature.\n"
    },
    {
      "commit": "7dc5e2e486fe0287601968e535902a41a39f65bb",
      "tree": "7dae219602d36900e7c309d44a17f4e800bf90aa",
      "parents": [
        "5971dab1126d6279c6e523f4fedc2f1e6fb9b4c9"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Aug 05 22:22:06 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Aug 05 22:22:06 2016 +0200"
      },
      "message": "patch 7.4.2160\nProblem:    setmatches() mixes up values. (Nikolai Pavlov)\nSolution:   Save the string instead of reusing a shared buffer.\n"
    },
    {
      "commit": "437bafe4c8a83ed71ee006eda7f54b65a90f0d4c",
      "tree": "dac9426b1bafe44f050bbb13c027de31117c089d",
      "parents": [
        "580164481924ed8611eb79f0247a0eb1ca0b3b9a"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Aug 01 15:40:54 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Aug 01 15:40:54 2016 +0200"
      },
      "message": "patch 7.4.2137\nProblem:    Using function() with a name will find another function when it is\n            redefined.\nSolution:   Add funcref().  Refer to lambda using a partial.  Fix several\n            reference counting issues.\n"
    },
    {
      "commit": "b54c3ff3174dbb5dfbfcabdf95200b047beaa644",
      "tree": "a230032c07f9373c65ca64e4b9c237e70b4d6a54",
      "parents": [
        "fc1f2015e833e69b89b994faf4b2c4fc1e09220f"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jul 31 14:11:58 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jul 31 14:11:58 2016 +0200"
      },
      "message": "patch 7.4.2134\nProblem:    No error for using function() badly.\nSolution:   Check for passing wrong function name. (Ken Takata)\n"
    },
    {
      "commit": "df48fb456fb6bf63d94cad9b302ff01d8ee8d311",
      "tree": "e40ac7facad1b205bf5990a535c8c1686fbeb05b",
      "parents": [
        "36edf0685c8b55ee3ce709058d83ada8027fec1e"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jul 22 21:50:18 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jul 22 21:50:18 2016 +0200"
      },
      "message": "patch 7.4.2090\nProblem:    Using submatch() in a lambda passed to substitute() is verbose.\nSolution:   Use a static list and pass it as an optional argument to the\n            function.  Fix memory leak.\n"
    },
    {
      "commit": "72ab729c3dcdea0fba44d8e676602c847e841bcd",
      "tree": "82fb5790a50f308a743f4a58c9bdf5d83bcbc5a1",
      "parents": [
        "f562e72df726c6191fa305e1c0a113f1cfb87f76"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jul 19 19:10:51 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jul 19 19:10:51 2016 +0200"
      },
      "message": "patch 7.4.2072\nProblem:    substitute() does not support a Funcref argument.\nSolution:   Support a Funcref like it supports  a string starting with \"\\\u003d\".\n"
    },
    {
      "commit": "38ee6b041e73ad31c3b6b99d56d20833b59b2b57",
      "tree": "e53ca4b85111a162ad9a68280c761d6226e7395b",
      "parents": [
        "5498a41f5a62c3877fee0185adf3bf7245a9a547"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jul 12 21:11:33 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jul 12 21:11:33 2016 +0200"
      },
      "message": "patch 7.4.2029\nProblem:    printf() does not work with 64 bit numbers.\nSolution:   use the \"L\" length modifier. (Ken Takata)\n"
    },
    {
      "commit": "2acfbed9dbea990f129535de7ff3df360365130b",
      "tree": "a7a0be95e7ed13ae5450de39b948a1ef34d318c0",
      "parents": [
        "c5af40ae646ceda817eff93b4f9ba274f031bea6"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jul 01 23:14:02 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jul 01 23:14:02 2016 +0200"
      },
      "message": "patch 7.4.1979\nProblem:    Getting value of binary option is wrong. (Kent Sibilev)\nSolution:   Fix type cast.  Add a test.\n"
    },
    {
      "commit": "1d90a5a5af84250e226f8a9121e771f7b72aa894",
      "tree": "a389742a425e6f06966959bd744c96c3a4f296a3",
      "parents": [
        "6747fabc7348bf5f41ccfe851e2be3e900ec8ee0"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jul 01 11:59:47 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jul 01 11:59:47 2016 +0200"
      },
      "message": "patch 7.4.1968\nProblem:    Invalid memory access with \"\\\u003cC-\"\u003e.\nSolution:   Do not recognize this as a special character. (Dominique Pelle)\n"
    },
    {
      "commit": "13ddc5c35921efa69e980284117b6db6465e019c",
      "tree": "2095963774e746cecb256591e4c4f02feeb8b08c",
      "parents": [
        "54c10ccf9274880e83093a99690e7bfa9a2d2fa8"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 25 22:51:17 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 25 22:51:17 2016 +0200"
      },
      "message": "patch 7.4.1847\nProblem:    Getting an item from a NULL dict crashes.  Setting a register to a\n            NULL list crashes. (Nikolai Pavlov, issue #768)  Comparing a NULL\n            dict with a NULL dict fails.\nSolution:   Properly check for NULL.\n"
    },
    {
      "commit": "574860b5ee9da281c875dad07a607454e135eaee",
      "tree": "c4eed36a67682b8fb209142b3f7081e11fee7f8b",
      "parents": [
        "c67e89213476b5f4756d92208b57ce9ef4a4cf24"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue May 24 17:33:34 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue May 24 17:33:34 2016 +0200"
      },
      "message": "patch 7.4.1838\nProblem:    Functions specifically for testing do not sort together.\nSolution:   Rename garbagecollect_for_testing() to test_garbagecollect_now().\n            Add test_null_list(), test_null_dict(), etc.\n"
    },
    {
      "commit": "d8585eded6359f1d7e1981e96ae775efd077c638",
      "tree": "38d8334bedc5b982160b8a4d55e35805a2b64010",
      "parents": [
        "9a3b3311d26c990208150255ad65472bb4eefaa4"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun May 01 23:05:53 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun May 01 23:05:53 2016 +0200"
      },
      "message": "patch 7.4.1816\nProblem:    Looping over a null list throws an error.\nSolution:   Skip over the for loop.\n"
    },
    {
      "commit": "517ffbee0d5b7b46320726faaa330b61f54e867c",
      "tree": "9ca3dee43fb4353bdf64586d12a55ab731be7656",
      "parents": [
        "c3691332f72169c486066200c0f3935418364900"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Apr 20 14:59:29 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Apr 20 14:59:29 2016 +0200"
      },
      "message": "patch 7.4.1755\nProblem:    When using getreg() on a non-existing register a NULL list is\n            returned. (Bjorn Linse)\nSolution:   Allocate an empty list. Add a test.\n"
    },
    {
      "commit": "0f518a8f4d4be4cac10389680f6bd5e3781f94b0",
      "tree": "03e73f418451f8a7019a60fae27ccf5561529467",
      "parents": [
        "839e954aaa72ef62f65416d177f829e681c15466"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Apr 14 16:57:10 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Apr 14 16:57:10 2016 +0200"
      },
      "message": "patch 7.4.1734\nProblem:    Test fails when not using utf-8.\nSolution:   Split test in regularand utf-8 part.\n"
    },
    {
      "commit": "58de0e2dcc1f2d251b74892a06d71a14973f3187",
      "tree": "73357af1942325ac46de5990a06d872d1e626118",
      "parents": [
        "6244a0fc29163ba1c734f92b55a89e01e6cf2a67"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Apr 14 15:13:46 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Apr 14 15:13:46 2016 +0200"
      },
      "message": "patch 7.4.1730\nProblem:    It is not easy to get a character out of a string.\nSolution:   Add strgetchar() and strcharpart().\n"
    },
    {
      "commit": "0921ecff1c5a74541bad6c073e8ade32247403d8",
      "tree": "b35a348a88d035fbb75131cbfee3bdcb7809ac40",
      "parents": [
        "e185c1efba3cb2611ac303c39a08e908497cbac4"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Apr 03 22:44:36 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Apr 03 22:44:36 2016 +0200"
      },
      "message": "patch 7.4.1707\nProblem:    Cannot use empty dictionary key, even though it can be useful.\nSolution:   Allow using an empty dictionary key.\n"
    },
    {
      "commit": "819821c5a95fc60797ecbb5e5ca1302e397e3d9a",
      "tree": "0d38f7806dc07d66132078c1e5f6d13ebe6bdc9a",
      "parents": [
        "e1581307d281ceb35726e1b4ca30ef773a2ef23e"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Mar 26 21:24:14 2016 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Mar 26 21:24:14 2016 +0100"
      },
      "message": "patch 7.4.1660\nProblem:    has(\u0027patch-7.4.1\u0027) doesn\u0027t work.\nSolution:   Fix off-by-one error. (Thinca)\n"
    },
    {
      "commit": "f0e86a0dbddc18568910e9e4aaae0cd88ca8087a",
      "tree": "cd3a18a36ff0037bfc7f47c83ed2e4c66967cb8e",
      "parents": [
        "953cc7fb139dc2ba8590f8b03a095b63f4e1208f"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Mar 19 19:38:12 2016 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Mar 19 19:38:12 2016 +0100"
      },
      "message": "patch 7.4.1607\nProblem:    Comparing a function that exists on two dicts is not backwards\n            compatible. (Thinca)\nSolution:   Only compare the function, not what the partial adds.\n"
    }
  ]
}
