)]}'
{
  "log": [
    {
      "commit": "36818a9daafbcb8e3b06be7b07f52b2d00a61746",
      "tree": "36946401734f25b5a814e2b1d83b3f68587c8cee",
      "parents": [
        "ea720aea851e645f4c8ec3b20afb27c7ca38184c"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jan 03 12:33:26 2023 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jan 03 12:33:26 2023 +0000"
      },
      "message": "patch 9.0.1138: crash when expecting varargs but it is something else\n\nProblem:    Crash when expecting varargs but it is something else.\nSolution:   Only use the member when the type is a list. (closes #11774)\n"
    },
    {
      "commit": "bcf31ec36b4b056bf06d21036640c6f0235e9c2b",
      "tree": "770b7eb39ad0fd3e9095703773474cda107a44e9",
      "parents": [
        "a9fa8c58fbcc5cf8850f6963c509de272f4d4bbf"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Jan 02 20:32:24 2023 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Jan 02 20:32:24 2023 +0000"
      },
      "message": "patch 9.0.1134: comparing objects uses identity instead of equality\n\nProblem:    Comparing objects uses identity instead of equality.\nSolution:   Compare the object values.\n"
    },
    {
      "commit": "c4b3f6477c4956c49da1277d55e6915ea7e6a39e",
      "tree": "860fdc4bd5ae0ed882dfdf286cda348226c86aa4",
      "parents": [
        "c6951a76a58663ef8a773d340f2260da7455643c"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Dec 30 10:36:34 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Dec 30 10:36:34 2022 +0000"
      },
      "message": "patch 9.0.1109: leaking allocated type\n\nProblem:    Leaking allocated type.\nSolution:   Reset the \"static\" flag in the allocated type copy.\n"
    },
    {
      "commit": "c6951a76a58663ef8a773d340f2260da7455643c",
      "tree": "85498d64d07c8c65919d0938494a754a213e21c4",
      "parents": [
        "73ade49c4b692e77d2c0b2ef0afbedbf55c5f946"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Dec 29 20:56:24 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Dec 29 20:56:24 2022 +0000"
      },
      "message": "patch 9.0.1108: type error when using \"any\" type and adding to float\n\nProblem:    Type error when using \"any\" type and adding a number to a float.\nSolution:   Accept both a number and a float. (closes #11753)\n"
    },
    {
      "commit": "c336ae3ce60a2f047b72344ac827568606c5aa15",
      "tree": "566f7dc81a43c0c983cfe65740058ea621543fe3",
      "parents": [
        "d505d178858434e1afef0363a9fce4bcb1bc3d06"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Dec 18 22:01:42 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Dec 18 22:01:42 2022 +0000"
      },
      "message": "patch 9.0.1075: build fails if compiler doesn\u0027t allow declaration after case\n\nProblem:    build fails if the compiler doesn\u0027t allow for a declaration right\n            after \"case\".\nSolution:   Add a block.\n"
    },
    {
      "commit": "d505d178858434e1afef0363a9fce4bcb1bc3d06",
      "tree": "358c5f600112605517bb4b92ab155ce2e55e7123",
      "parents": [
        "731d00770d9006e7dab6a66e2ea86603ed5ef212"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Dec 18 21:42:55 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Dec 18 21:42:55 2022 +0000"
      },
      "message": "patch 9.0.1074: class members are not supported yet\n\nProblem:    Class members are not supported yet.\nSolution:   Add initial support for class members.\n"
    },
    {
      "commit": "65b0d1676814ee08fb58ef8d64dd342d1d883192",
      "tree": "4fbd70e4211e702a5212c717fe09636222f23026",
      "parents": [
        "692fe0889c44d97c4a1cc822bc8de189859c51cb"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Dec 13 18:43:22 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Dec 13 18:43:22 2022 +0000"
      },
      "message": "patch 9.0.1053: default constructor arguments are not optional\n\nProblem:    Default constructor arguments are not optional.\nSolution:   Use \"\u003d v:none\" to make constructor arguments optional.\n"
    },
    {
      "commit": "7ce7daf6cd6a7ed27eac060699026640b4b239a8",
      "tree": "bb6ddd44c1e6133c82ce791d9568405723f251af",
      "parents": [
        "6c87bbb4e45515e70ac1728cabd1451063bf427d"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Dec 10 18:42:12 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Dec 10 18:42:12 2022 +0000"
      },
      "message": "patch 9.0.1045: in a class object members cannot be initialized\n\nProblem:    In a class object members cannot be initialized.\nSolution:   Support initializing object members. Make \"dissassemble\" work on\n            an object method.\n"
    },
    {
      "commit": "ffdaca9e6f3d39af6857ac52ced9385df203a152",
      "tree": "04ed8cbe05e072413dd394828d7661167ad63b6c",
      "parents": [
        "148bcd361097f85a1a51c408e7412d60c76df14d"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Dec 09 21:41:48 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Dec 09 21:41:48 2022 +0000"
      },
      "message": "patch 9.0.1041: cannot define a method in a class\n\nProblem:    Cannot define a method in a class.\nSolution:   Implement defining an object method.  Make calling an object\n            method work.\n"
    },
    {
      "commit": "00b28d6c23d8e662cab27e461825777c0a2e387a",
      "tree": "ba11ed85b20cf03491e0f24b6d5bf348d2c19388",
      "parents": [
        "038e6d20e680ce8c850d07f6b035c4e1904c1201"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Dec 08 15:32:33 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Dec 08 15:32:33 2022 +0000"
      },
      "message": "patch 9.0.1031: Vim9 class is not implemented yet\n\nProblem:    Vim9 class is not implemented yet.\nSolution:   Add very basic class support.\n"
    },
    {
      "commit": "0089ce293f885afc2b77f12aa110f33b2101973a",
      "tree": "2f3bcd5088b4eba7d16466e5d25b3a1699604864",
      "parents": [
        "4314e4f7da4db5d85f63cdf43b73be3689502c93"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Oct 08 14:39:36 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Oct 08 14:39:36 2022 +0100"
      },
      "message": "patch 9.0.0695: failing check for dictionary type for const any\n\nProblem:    Failing check for dictionary type for const any.\nSolution:   Check for any type properly. (closes #11310)\n"
    },
    {
      "commit": "2eae3d24d7fe8beed64652bc5c1cbddd09dafc9a",
      "tree": "1c1189201bed6f74ce02ee2ffdb46d698b405b84",
      "parents": [
        "bdc09a18fca32715687d9911a431da69186528cc"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Oct 07 15:09:27 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Oct 07 15:09:27 2022 +0100"
      },
      "message": "patch 9.0.0684: skipped :exe command fails compilation on MS-Windows\n\nProblem:    Skipped :exe command fails compilation on MS-Windows.\nSolution:   Adjust return value when skipping.\n"
    },
    {
      "commit": "bdc09a18fca32715687d9911a431da69186528cc",
      "tree": "9d27853365bffdc04e51cfe7fc6cb75dafc8a0b0",
      "parents": [
        "cf3d0eaf47a56a52b355d8faf4e59685396f9c05"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Oct 07 14:31:45 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Oct 07 14:31:45 2022 +0100"
      },
      "message": "patch 9.0.0683: cannot specify a time for :echowindow\n\nProblem:    Cannot specify a time for :echowindow.\nSolution:   A count can be used to specify the display time. Add\n            popup_findecho().\n"
    },
    {
      "commit": "fa1039760e8c1a0c7a2a722160bd3d71a4736e61",
      "tree": "3749fc4f1e8e0cdccdde2c131dfca30b3b07917c",
      "parents": [
        "9f573a8df02d9f699a43d2afbd1d2841d700b9ad"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Sep 29 19:14:42 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Sep 29 19:14:42 2022 +0100"
      },
      "message": "patch 9.0.0623: error for modifying a const is not detected at compile time\n\nProblem:    Error for modifying a const is not detected at compile time.\nSolution:   Add TTFLAG_CONST and check for it in add() and extend().\n"
    },
    {
      "commit": "cc34181f9994d64f8c8fa2f5845eaf0cc963067f",
      "tree": "2909cd6f0d4d5f7e20b7daa76855c25fdef5dcb9",
      "parents": [
        "18ee0feb5dfbe51993dc715d24cf419ac92ebf92"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Sep 19 15:54:34 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Sep 19 15:54:34 2022 +0100"
      },
      "message": "patch 9.0.0502: a closure in a nested loop in a :def function does not work\n\nProblem:    A closure in a nested loop in a :def function does not work.\nSolution:   Use an array of loopvars, one per loop level.\n"
    },
    {
      "commit": "73e28dcc6125f616cf1f2d56443d22428a79e434",
      "tree": "bc26b3d1bb2e1675b7dae14b6c9cda1cd42c90d6",
      "parents": [
        "1c3dd8ddcba63c1af5112e567215b3cec2de11d0"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Sep 17 21:08:33 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Sep 17 21:08:33 2022 +0100"
      },
      "message": "patch 9.0.0491: no good reason to build without the float feature\n\nProblem:    No good reason to build without the float feature.\nSolution:   Remove configure check for float and \"#ifdef FEAT_FLOAT\".\n"
    },
    {
      "commit": "8fa745e7be3a791ac25f93ef0227bbc48ade8a37",
      "tree": "2784f5de78824527acc5d31f3eb96fd4264ac989",
      "parents": [
        "abd58d8aee7fec2b9e07c829eb925b0a1f7118db"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Sep 16 19:04:24 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Sep 16 19:04:24 2022 +0100"
      },
      "message": "patch 9.0.0481: in :def function all closures in loop get the same variables\n\nProblem:    In a :def function all closures in a loop get the same variables.\nSolution:   Use a separate list of variables for LOADOUTER and STOREOUTER.\n            Not copied at end of loop yet.\n"
    },
    {
      "commit": "b46c083a5ed9e0c4ac5f3aec577946dcbe8c9dc5",
      "tree": "f91c0168ac87183c5df558840b9cf920d18df558",
      "parents": [
        "3735f11050616652525bf80b4fbcb2b3bfeab113"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Sep 15 17:19:37 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Sep 15 17:19:37 2022 +0100"
      },
      "message": "patch 9.0.0470: in :def function all closures in loop get the same variables\n\nProblem:    In a :def function all closures in a loop get the same variables.\nSolution:   When in a loop and a closure refers to a variable declared in the\n            loop, prepare for making a copy of variables for each closure.\n"
    },
    {
      "commit": "169003289fb4b2ad18fd7f5807e0d05efff0be85",
      "tree": "50602045f6b4e7ed30d2498bef163412839c8776",
      "parents": [
        "45bbaef0382c5468d9fac511775bd99ea7bf5b84"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Sep 08 19:51:45 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Sep 08 19:51:45 2022 +0100"
      },
      "message": "patch 9.0.0419: the :defer command does not check the function arguments\n\nProblem:    The :defer command does not check the function argument count and\n            types.\nSolution:   Check the function arguments when adding a deferred function.\n"
    },
    {
      "commit": "6b085b9d7367e077ca69f4f82ba0f92cc6b6e443",
      "tree": "24a71b96fa92cd775faba432e659cd5a23d8ed0d",
      "parents": [
        "c8ac3a072f18d4b250e55e91f610fe517e218777"
      ],
      "author": {
        "name": "Yegappan Lakshmanan",
        "email": "yegappan@yahoo.com",
        "time": "Sun Sep 04 12:47:21 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Sep 04 12:47:21 2022 +0100"
      },
      "message": "patch 9.0.0376: clang warns for dead assignments\n\nProblem:    Clang warns for dead assignments.\nSolution:   Adjust the code. (Yegappan Lakshmanan, closes #11048)\n"
    },
    {
      "commit": "1d84f7608f1e41dad03b8cc7925895437775f7c0",
      "tree": "cc276825566021a35b96f93e178e5f2ac621a84b",
      "parents": [
        "06d32a0c177e4166ff0491668cd459464bc2ef45"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Sep 03 21:35:53 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Sep 03 21:35:53 2022 +0100"
      },
      "message": "patch 9.0.0370: cleaning up afterwards can make a function messy\n\nProblem:    Cleaning up afterwards can make a function messy.\nSolution:   Add the :defer command.\n"
    },
    {
      "commit": "68a635a80a4cccf5b4b7235d886159d52b08f04c",
      "tree": "0752e4b1ade6be47d3ecea8bef6ab32b263a9914",
      "parents": [
        "3b474dcd30ea188124f5ad766f5096f9a0cef895"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Sep 01 17:26:17 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Sep 01 17:26:17 2022 +0100"
      },
      "message": "patch 9.0.0353: missing entry in switch\n\nProblem:    Missing entry in switch.\nSolution:   Add ISN_ECHOWINDOW.\n"
    },
    {
      "commit": "c3caa7f78808e405b7cdbcdf89c9d35a43d2c3eb",
      "tree": "2a72f4fea5880062e727dd0469bdb3b07f8a2ba7",
      "parents": [
        "8be36eecdc6728021f9c384c2305f114e671ec32"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 25 19:15:10 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 25 19:15:10 2022 +0100"
      },
      "message": "patch 8.2.5018: Vim9: some code is not covered by tests\n\nProblem:    Vim9: some code is not covered by tests.\nSolution:   Delete dead code.\n"
    },
    {
      "commit": "bd3a9d2c946bae0427d7c9b9249716064935fb4e",
      "tree": "34f288f3fb505817dfc7fa31e1ac7a1a5986852d",
      "parents": [
        "1ff9c44267ce487145d22d75a96370d7f96ae8dd"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue May 17 16:12:39 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue May 17 16:12:39 2022 +0100"
      },
      "message": "patch 8.2.4973: Vim9: type error for list unpack mentions argument\n\nProblem:    Vim9: type error for list unpack mentions argument.\nSolution:   Mention variable. (close #10435)\n"
    },
    {
      "commit": "0abc2871c105882ed1c1effb9a7757fad8a395bd",
      "tree": "0377e3f47b0fda6713cc0e8b6426616457e07912",
      "parents": [
        "57ff52677bf5ba1651281ffe40505df8feba4a36"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue May 10 13:24:30 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue May 10 13:24:30 2022 +0100"
      },
      "message": "patch 8.2.4930: interpolated string expression requires escaping\n\nProblem:    Interpolated string expression requires escaping.\nSolution:   Do not require escaping in the expression.\n"
    },
    {
      "commit": "c9af617ac62b15bfcbbfe8c54071146e2af01f65",
      "tree": "d0eb268898ca64788550bf8ef728bf0ee5637ebb",
      "parents": [
        "23d44493f1e82365f0a1dbd372fc2546811942f4"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 04 16:46:54 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 04 16:46:54 2022 +0100"
      },
      "message": "patch 8.2.4863: accessing freed memory in test without the +channel feature\n\nProblem:    Accessing freed memory in test without the +channel feature.\n            (Dominique Pellé)\nSolution:   Do not generted PUSHCHANNEL or PUSHJOB if they are not\n            implemented. (closes #10350)\n"
    },
    {
      "commit": "06651630ee35111839e627e1bcbac94b86347883",
      "tree": "51c24c575c9d85cd173a1019901868904fe7c53e",
      "parents": [
        "ce001a337e28fa368f40ac6422835d730fb8ebb1"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Apr 27 17:54:25 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Apr 27 17:54:25 2022 +0100"
      },
      "message": "patch 8.2.4834: Vim9: some lines not covered by tests\n\nProblem:    Vim9: some lines not covered by tests.\nSolution:   Add a few more tests.  Remove dead code.\n"
    },
    {
      "commit": "372bcceeee8012ef3fb2f3dbc8132c3a33cb84fc",
      "tree": "fd5e5a86cf23a018f653097a7c7477c532316a36",
      "parents": [
        "af59e34f1bf214ec6f2d0304c1c5b11ecda25a83"
      ],
      "author": {
        "name": "LemonBoy",
        "email": "thatlemon@gmail.com",
        "time": "Mon Apr 25 12:43:20 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Apr 25 12:43:20 2022 +0100"
      },
      "message": "patch 8.2.4823: concat more than 2 strings in :def function is inefficient\n\nProblem:    Concatenating more than 2 strings in a :def function is\n            inefficient.\nSolution:   Add a count to the CONCAT instruction. (closes #10276)\n"
    },
    {
      "commit": "a6c18d38ca2df0a92403f2265a480d9dba08290f",
      "tree": "ac3af2c88f7576100428d53d3b9aae6bbf993f8c",
      "parents": [
        "ccbfd4883f0385a1d84cc87785ddcc86185b4ad9"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Mar 31 20:02:56 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Mar 31 20:02:56 2022 +0100"
      },
      "message": "patch 8.2.4657: errors for functions are sometimes hard to read\n\nProblem:    Errors for functions are sometimes hard to read.\nSolution:   Use printable_func_name() in more places.\n"
    },
    {
      "commit": "ccbfd4883f0385a1d84cc87785ddcc86185b4ad9",
      "tree": "65f63c71b3792956985261e7ae0e4a02df0e9884",
      "parents": [
        "1104a6d0c2004d39e9b6cb8f804d12b628a69869"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Mar 31 16:18:23 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Mar 31 16:18:23 2022 +0100"
      },
      "message": "patch 8.2.4656: Vim9: can\u0027t use item from \"import autoload\" with autoload dir\n\nProblem:    Vim9: can\u0027t use items from \"import autoload\" with autoload\n            directory name.\nSolution:   Let sn_autoload_prefix overrule sn_import_autoload.\n            (closes #10054)\n"
    },
    {
      "commit": "c0ceeeb839b8c6bebd3a2abd1c07d40ec3c6edca",
      "tree": "2f51e084f45dbe3437520d32f83e67fb9704aa6b",
      "parents": [
        "b4ad3b0deac12674a7773311890b48fd39c6807c"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Mar 30 21:12:27 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Mar 30 21:12:27 2022 +0100"
      },
      "message": "patch 8.2.4650: \"import autoload\" only works with using \u0027runtimepath\u0027\n\nProblem:    \"import autoload\" only works with using \u0027runtimepath\u0027.\nSolution:   Also support a relative and absolute file name.\n"
    },
    {
      "commit": "ec15b1cfdc5faadb529dedda58adf7fc98c839ed",
      "tree": "cdcf7ffa3e2ed7de3fc890f6415a0be84ad1e490",
      "parents": [
        "c75bca3ee955ff36ece99a42041733ddea5f45a7"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Mar 27 16:29:53 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Mar 27 16:29:53 2022 +0100"
      },
      "message": "patch 8.2.4634: Vim9: cannot initialize a variable to null_list\n\nProblem:    Vim9: cannot initialize a variable to null_list.\nSolution:   Give negative count to NEWLIST. (closes #10027)\n            Also fix inconsistencies in comparing with null values.\n"
    },
    {
      "commit": "a915fa010330ee7212e06d3511acd363d04d2d28",
      "tree": "632c812369ceff7cfb07ea46358ebfb010868943",
      "parents": [
        "81b573d7e55bd48988f298ce8e652d902e9bdeba"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Mar 23 11:29:15 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Mar 23 11:29:15 2022 +0000"
      },
      "message": "patch 8.2.4612: Vim9: cannot use a recursive call in a nested function\n\nProblem:    Vim9: cannot use a recursive call in a nested function. (Sergey\n            Vlasov)\nSolution:   Define the funcref before compiling the function. (closes #9989)\n"
    },
    {
      "commit": "397a87ac1c9857eb0d5ec3add69e3b9ab6b0c77c",
      "tree": "63860de699019af670a438af1145ff9bda9e795c",
      "parents": [
        "efd73ae5d2a533670f562b6df5be2ffeb091185d"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Mar 20 21:14:15 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Mar 20 21:14:15 2022 +0000"
      },
      "message": "patch 8.2.4602: Vim9: not enough test coverage for executing :def function\n\nProblem:    Vim9: not enough test coverage for executing :def function.\nSolution:   Add a few more tests.  Fix uncovered problem.  Remove dead code.\n"
    },
    {
      "commit": "056678184f679c2989b73bd48eda112f3c79a62f",
      "tree": "6c07b21e0c06adbf8672e3aa25ae912cc82fd2f1",
      "parents": [
        "139575de6653e7fd5807cb036dfb3684b815c519"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Mar 15 20:21:33 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Mar 15 20:21:33 2022 +0000"
      },
      "message": "patch 8.2.4576: Vim9: error for comparing with null can be annoying\n\nProblem:    Vim9: error for comparing with null can be annoying.\nSolution:   Allow comparing anything with null. (closes #9948)\n"
    },
    {
      "commit": "139575de6653e7fd5807cb036dfb3684b815c519",
      "tree": "55a74125f139573cb1839c3b78cac73d3640f82c",
      "parents": [
        "48f69cdfa401999ac5ff8cef6d8dcabe3f93e284"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Mar 15 19:29:30 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Mar 15 19:29:30 2022 +0000"
      },
      "message": "patch 8.2.4575: Vim9: test for profiling still fails\n\nProblem:    Vim9: test for profiling still fails.\nSolution:   Update flags for profiling and breakpoints when obtaining the\n            compile type.  Do not set the FC_CLOSURE flag for a toplevel\n            function.\n"
    },
    {
      "commit": "53ba6ca5b27248680e368340707ad4b32a82591f",
      "tree": "11bb97a5a313ac3abebcf96862c5d630e07a6e14",
      "parents": [
        "bf40e90dfeb1d3d0280077e65782beb3fee31c9f"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Mar 10 19:23:28 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Mar 10 19:23:28 2022 +0000"
      },
      "message": "patch 8.2.4539: when comparing special v:none and v:null are handled the same\n\nProblem:    When comparing special v:none and v:null are handled the same when\n            compiling.\nSolution:   Pass more information so that v:none can be handled differently at\n            compile time.  (issue #9923)\n"
    },
    {
      "commit": "ed0c62e7b16b62655824df28cdd6bd75aadbb8fc",
      "tree": "2d912c33146a6ddd65d7877ac8cc9339c9fb953f",
      "parents": [
        "673bcb10ebe87ccf6954dd342d0143eb88cdfbcb"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Mar 08 19:43:55 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Mar 08 19:43:55 2022 +0000"
      },
      "message": "patch 8.2.4529: Vim9: comparing partial with function fails\n\nProblem:    Vim9: comparing partial with function fails.\nSolution:   Support this comparison.  Avoid a crash. (closes #9909)\n            Add more test cases.\n"
    },
    {
      "commit": "8acb9cc6209768ca7ec75c9f7af8c389312ea8d6",
      "tree": "8a5f92b1b10f53f7a3f0e95ffbdcb519ce9ecb09",
      "parents": [
        "08238045e769fce2d5bf1e17167e26eafc3d72b8"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Mar 08 13:18:55 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Mar 08 13:18:55 2022 +0000"
      },
      "message": "patch 8.2.4526: Vim9: cannot set variables to a null value\n\nProblem:    Vim9: cannot set variables to a null value.\nSolution:   Add null_list, null_job, etc.\n"
    },
    {
      "commit": "7a2222487507eb13cccdb9a66397092775d62b8c",
      "tree": "c5878917461a22b48ec7a38cb6356352b8e57895",
      "parents": [
        "f01af9c4e6f1438cd1112cfff42f3837028c7846"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Mar 01 19:23:24 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Mar 01 19:23:24 2022 +0000"
      },
      "message": "patch 8.2.4487: Vim9: cannot compare with v:null\n\nProblem:    Vim9: cannot compare with v:null.\nSolution:   Allow comparing anything with v:null. (closes #9866)\n"
    },
    {
      "commit": "160afdb1850b8cf56dc8e94acee7a04bc2113992",
      "tree": "d34b0cb67df71e50f3443b5218a71bdd98de53c6",
      "parents": [
        "2626d6a71ca616bd91d4ee2c27bd76a78a00d412"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Feb 06 17:17:02 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Feb 06 17:17:02 2022 +0000"
      },
      "message": "patch 8.2.4311: Vim9: changing script variable type not caught compile time\n\nProblem:    Vim9: changing script variable type not caught at compile time.\nSolution:   Set the declared type.\n"
    },
    {
      "commit": "2626d6a71ca616bd91d4ee2c27bd76a78a00d412",
      "tree": "c95b2cbe59caeb449cd551f22e286f906d69a905",
      "parents": [
        "fe1bfc9b267fffedac6b5224d7aa6cc5d9d15f64"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Feb 06 15:49:35 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Feb 06 15:49:35 2022 +0000"
      },
      "message": "patch 8.2.4310: Vim9: constant list and dict get a declaration type\n\nProblem:    Vim9: constant list and dict get a declaration type other than\n            \"any\".\nSolution:   A constant list and dict have a declared member type \"any\".\n            (closes #9701)\n"
    },
    {
      "commit": "8133018f50bc447570825801e93d5ed67e8dac90",
      "tree": "b59670eb8f761b319fad4ead8098674f603cede5",
      "parents": [
        "4e3b3182307444f205a5f35e257c651f0f3717ad"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Feb 01 12:11:58 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Feb 01 12:11:58 2022 +0000"
      },
      "message": "patch 8.2.4279: Vim9: cannot change item type with map() after range()\n\nProblem:    Vim9: cannot change item type with map() after range().\nSolution:   Split the return type in current type and declared type.\n            (closes #9665)\n"
    },
    {
      "commit": "35c807df1f5774f09612d756ddc3cd5c44eacaca",
      "tree": "5f591a6dd01925947e2e3c6e9c6e5a5ae8c3dc77",
      "parents": [
        "94373c48e7e438e5b924b34ce820e9b2eb9f810c"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jan 27 16:36:29 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jan 27 16:36:29 2022 +0000"
      },
      "message": "patch 8.2.4231: Vim9: map() gives type error when type was not declared\n\nProblem:    Vim9: map() gives type error when type was not declared.\nSolution:   Only check the type when it was declared, like extend() does.\n            (closes #9635)\n"
    },
    {
      "commit": "06b77229ca704d00c4f138ed0377556e54d5851f",
      "tree": "6b24e9838841943803574a424599d687be2c05f1",
      "parents": [
        "dc5490e2cbc8c16022a23b449b48c1bd0083f366"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jan 25 15:51:56 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jan 25 15:51:56 2022 +0000"
      },
      "message": "patch 8.2.4216: Vim9: cannot use a function from an autoload import directly\n\nProblem:    Vim9: cannot use a function from an autoload import directly.\nSolution:   Add the AUTOLOAD instruction to figure out at runtime.\n            (closes #9620)\n"
    },
    {
      "commit": "acc4b5648b49ec13c4f35ee0bf552eda71b0c372",
      "tree": "1d39323dfdfb6cec204d7a342dc6a70bf010fb91",
      "parents": [
        "8e4af851fd3eff4b22fca962e5be783742e8f1bb"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Jan 24 13:54:45 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Jan 24 13:54:45 2022 +0000"
      },
      "message": "patch 8.2.4202: Vim9: cannot export function that exists globally\n\nProblem:    Vim9: cannot export function that exists globally.\nSolution:   When checking if a function already exists only check for\n            script-local functions. (closes #9615)\n"
    },
    {
      "commit": "38ecd9722664049d636f4fba759b3ebbfd34e97d",
      "tree": "9c21a2fbb6312962d1531bc721fa5253eedbd7ca",
      "parents": [
        "857c8bb1bbe754cf2c5b709703d2eb848c800285"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jan 15 21:44:44 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jan 15 21:44:44 2022 +0000"
      },
      "message": "patch 8.2.4103: Vim9: variable declared in for loop not initialzed\n\nProblem:    Vim9: variable declared in for loop not initialzed.\nSolution:   Always initialze the variable. (closes #9535)\n"
    },
    {
      "commit": "d9d2fd0aa33dd9f7460d6f1e403505a60f7ce2fc",
      "tree": "ce93edde74aa48c017e39bd350b79a7955d89b22",
      "parents": [
        "c43e6235c7b3e64f81c6a4e294e4e47abf7a869a"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jan 13 21:15:21 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jan 13 21:15:21 2022 +0000"
      },
      "message": "patch 8.2.4086: \"cctx\" argument of find_func_even_dead() is unused\n\nProblem:    \"cctx\" argument of find_func_even_dead() is unused.\nSolution:   Remove the argument.\n"
    },
    {
      "commit": "d041f4208b0a2149e9d41f6443aa1c14c076a411",
      "tree": "2fed762d017d9bae0177f03d021964b321db35f5",
      "parents": [
        "53c296112edd8471eb63afbca03f96bad164c813"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jan 12 19:54:00 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jan 12 19:54:00 2022 +0000"
      },
      "message": "patch 8.2.4072: Vim9: compiling function fails when autoload is not loaded\n\nProblem:    Vim9: compiling function fails when autoload script is not loaded\n            yet.\nSolution:   Depend on runtime loading.\n"
    },
    {
      "commit": "782b43d89473dac00e3a8e02224a8330b88dbfef",
      "tree": "4309b548ce74ff64dccec70435826e602d3b21e8",
      "parents": [
        "7c24dfddc28776eeff7464982ae5b94e187b6135"
      ],
      "author": {
        "name": "Yegappan Lakshmanan",
        "email": "yegappan@yahoo.com",
        "time": "Sat Jan 08 18:43:40 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jan 08 18:43:40 2022 +0000"
      },
      "message": "patch 8.2.4045: some global functions are only used in one file\n\nProblem:    Some global functions are only used in one file.\nSolution:   Make the functions static. (Yegappan Lakshmanan, closes #9492)\n"
    },
    {
      "commit": "078a46161e8b1b30bf306d6c1f4f0af7c616a989",
      "tree": "334c2fa968e1641524028ac18afedf5980446e64",
      "parents": [
        "9acf2d8be93f3b50607279e7f3484b019675d0a7"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jan 04 15:17:03 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jan 04 15:17:03 2022 +0000"
      },
      "message": "patch 8.2.3996: Vim9: type checking lacks information about declared type\n\nProblem:    Vim9: type checking for list and dict lacks information about\n            declared type.\nSolution:   Add dv_decl_type and lv_decl_type.  Refactor the type stack to\n            store two types in each entry.\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": "5cd647935d0834b3064aa36384b8f6730fadadd6",
      "tree": "d0b40261ac7160d723f5bca46cf57d43641e9aed",
      "parents": [
        "35cfd793aad7c4bfba4a9bedf5c435c44e4293d0"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Dec 25 18:23:24 2021 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Dec 25 18:23:24 2021 +0000"
      },
      "message": "patch 8.2.3893: Vim9: many local variables are initialized with an instruction\n\nProblem:    Vim9: many local variables are initialized with an instruction.\nSolution:   Initialize local variables to zero to avoid the instructions.\n"
    },
    {
      "commit": "d787e40fdbe6f4d8bf47d36186c1d9d51c29b853",
      "tree": "7d55c1381d9d0ab309fec50c463e33b281c05d1e",
      "parents": [
        "e7f4abd38b6e05100c699900c8f87281e363beb2"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Dec 24 21:36:12 2021 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Dec 24 21:36:12 2021 +0000"
      },
      "message": "patch 8.2.3890: Vim9: type check for using v: variables is basic\n\nProblem:    Vim9: type check for using v: variables is basic.\nSolution:   Specify a more precise type.\n"
    },
    {
      "commit": "59618fed4ce118d12686c2e5c7c09601c8177817",
      "tree": "452cda2940d810a2b346826c09b8bd6c23952c6e",
      "parents": [
        "0d807107b66e0d30d4f338c272962af5714c400e"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Dec 21 12:32:17 2021 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Dec 21 12:32:17 2021 +0000"
      },
      "message": "patch 8.2.3866: Vim9: type checking global variables is inconsistent\n\nProblem:    Vim9: type checking global variables is inconsistent.\nSolution:   Use the \"unknown\" type in more places.\n"
    },
    {
      "commit": "0d807107b66e0d30d4f338c272962af5714c400e",
      "tree": "08f92991f2306d674e5bf4f9993ee666fda2b71d",
      "parents": [
        "6f79e614b25caebd35cf0d82b6f3b7e0733849ec"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Dec 21 09:42:09 2021 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Dec 21 09:42:09 2021 +0000"
      },
      "message": "patch 8.2.3865: Vim9: compiler complains about using \"try\" as a struct member\n\nProblem:    Vim9: compiler complains about using \"try\" as a struct member.\nSolution:   Rename \"try\" to \"tryref\".\n"
    },
    {
      "commit": "dc7c366f3aae65ee691010b08f37acfb26e0742b",
      "tree": "90d12bd3030048100a9c5084474aef484f6fc58f",
      "parents": [
        "a99fb23842f055c511bfe1b62de7bbd14d5a99c0"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Dec 20 15:04:29 2021 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Dec 20 15:04:29 2021 +0000"
      },
      "message": "patch 8.2.3860: Vim9: codecov struggles with the file size\n\nProblem:    Vim9: codecov struggles with the file size.\nSolution:   Split vim9compile.c into four files.\n"
    }
  ]
}
