)]}'
{
  "log": [
    {
      "commit": "8e9a24a127c4ef8833fdc3986623f96c7d04210f",
      "tree": "d1aee2626ace3749ccbac2766ee158037b43bf2a",
      "parents": [
        "828bff1f9b4847da79abd7a97ddc48687e257d6c"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Mar 19 22:22:55 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Mar 19 22:22:55 2019 +0100"
      },
      "message": "patch 8.1.1021: pyeval() and py3eval() leak memory\n\nProblem:    pyeval() and py3eval() leak memory.\nSolution:   Do not increase the reference count twice. (Ozaki Kiichi,\n            closes #4129)\n"
    },
    {
      "commit": "14816ad6e58336773443f5ee2e4aa9e384af65d2",
      "tree": "f53327ad0ffed33997cf4bbe9ce4725cb2221980",
      "parents": [
        "0472b6d149445579e3a63519b15f099f9adda3f7"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Feb 18 22:04:56 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Feb 18 22:04:56 2019 +0100"
      },
      "message": "patch 8.1.0950: using :python sets \u0027pyxversion\u0027 even when not executed\n\nProblem:    Using :python sets \u0027pyxversion\u0027 even when not executed.\nSolution:   Check the \"skip\" flag. (Shane Harper, closes #3995)\n"
    },
    {
      "commit": "4f97475d326c2773a78561fb874e4f23c25cbcd9",
      "tree": "7e066bc70556dfbb415ddb9f364e8432e8aaf189",
      "parents": [
        "78d21dae9c3a39efb30316d3e38dce120bc1abbd"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Feb 17 17:44:42 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Feb 17 17:44:42 2019 +0100"
      },
      "message": "patch 8.1.0941: macros for MS-Windows are inconsistent\n\nProblem:    Macros for MS-Windows are inconsistent, using \"32\", \"3264 and\n            others.\nSolution:   Use MSWIN for all MS-Windows builds.  Use FEAT_GUI_MSWIN for the\n            GUI build. (Hirohito Higashi, closes #3932)\n"
    },
    {
      "commit": "65951258d65b71581aeb117dbb7defa8a87ce38f",
      "tree": "3252de27de59fb9a8df766a9c1f77ecfe13f81fc",
      "parents": [
        "1c321dcee966b82a527cb34bbadd5874d6bc454a"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Feb 01 22:10:16 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Feb 01 22:10:16 2019 +0100"
      },
      "message": "patch 8.1.0867: cannot build Python interface with Python 2.4\n\nProblem:    Cannot build Python interface with Python 2.4. (Tom G. Christensen)\nSolution:   Define PyBytes_FromStringAndSize. (Ken Takata, closes #3888)\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": "6e5ea8d2a995b32bbc5972edc4f827b959f2702f",
      "tree": "b1ad7d6a83f53220227122719d5eb97dd32ff1e6",
      "parents": [
        "e3c74d249ac36404d8af25f74baf335d143b30e3"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jan 12 22:47:31 2019 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jan 12 22:47:31 2019 +0100"
      },
      "message": "patch 8.1.0735: cannot handle binary data\n\nProblem:    Cannot handle binary data.\nSolution:   Add the Blob type. (Yasuhiro Matsumoto, closes #3638)\n"
    },
    {
      "commit": "d4a8c98ef6b294d605c5f93309509a944dc97a79",
      "tree": "4af02ac4a3d6f880ce362789d9f845255499604d",
      "parents": [
        "259f26ac2d41ecfb28b82c651b2bfc1edc7c3e29"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue May 15 22:31:18 2018 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue May 15 22:31:18 2018 +0200"
      },
      "message": "patch 8.0.1846: Python interface is incompatible with lldb\n\nProblem:    Python interface is incompatible with lldb.\nSolution:   For OutputType set the base to be PyFile_Type. (Boxu Zhang)\n            Partly disabled to avoid a crash.\n"
    },
    {
      "commit": "7b24ce08fe99345cac035215fca29c7e174a6456",
      "tree": "9e4b16243f3c4eb9906a6e35950b8f14c994999a",
      "parents": [
        "1834d37396e046ccbc4aa2678ba16a38197da6b4"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Mar 29 18:15:26 2018 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Mar 29 18:15:26 2018 +0200"
      },
      "message": "patch 8.0.1654: warnings for conversion of void to function pointer\n\nProblem:    Warnings for conversion of void to function pointer.\nSolution:   Use a temp variable that is a function pointer.\n"
    },
    {
      "commit": "792f0e36593d1ec13ccb8a622ca5542c500577b4",
      "tree": "34a6e9340f01bc14adda8f1f286ab56788b06de0",
      "parents": [
        "5d7ead3bc85eefd0929bfcbb579510c8164ea1be"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Feb 27 17:27:13 2018 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Feb 27 17:27:13 2018 +0100"
      },
      "message": "patch 8.0.1550: various small problems in source files\n\nProblem:    Various small problems in source files.\nSolution:   Fix the problems.\n"
    },
    {
      "commit": "94073167e3aa8cbe18380e93a2fc8e8165438cc8",
      "tree": "2e7c3078ffc53518b95979a118b16403699381ae",
      "parents": [
        "1dd45fb4f3371f0256653b2186c8b4b3d26b3f41"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jan 31 21:49:05 2018 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jan 31 21:49:05 2018 +0100"
      },
      "message": "patch 8.0.1451: difficult to set the python home directories properly\n\nProblem:    It is difficult to set the python home directory properly for\n            Python 2.7 and 3.5 since both use $PYTHONHOME.\nSolution:   Add the \u0027pythonhome\u0027 and \u0027pythonthreehome\u0027 options. (Kazuki\n            Sakamoto, closes #1266)\n"
    },
    {
      "commit": "d057301b1f28736f094affa17b190244ad56e8d9",
      "tree": "ae20801354321a5ff0d7d23b04d8d6018c57645a",
      "parents": [
        "ef83956e1e67736b4c6b886d897b74f022622a74"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Oct 28 21:11:06 2017 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Oct 28 21:11:06 2017 +0200"
      },
      "message": "patch 8.0.1236: Mac features are confusing\n\nProblem:    Mac features are confusing.\nSolution:   Make feature names more consistent, add \"osxdarwin\". Rename\n            feature flags, cleanup Mac code. (Kazunobu Kuriyama, closes #2178)\n"
    },
    {
      "commit": "4033c55eca575777718c0701e26635a0cc47d907",
      "tree": "8dc460ad495106198a9119b52f6505033f7a75b3",
      "parents": [
        "e738a1a033cd31cd2568ba99a9e2dca1e65b45ea"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Sep 16 20:54:51 2017 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Sep 16 20:54:51 2017 +0200"
      },
      "message": "patch 8.0.1118: FEAT_WINDOWS adds a lot of #ifdefs\n\nProblem:    FEAT_WINDOWS adds a lot of #ifdefs while it is nearly always\n            enabled and only adds 7% to the binary size of the tiny build.\nSolution:   Graduate FEAT_WINDOWS.\n"
    },
    {
      "commit": "c4f833808af930505017c9389d44a828601e247c",
      "tree": "577f9425a910a666e2d6d8cad51a411460ec8cca",
      "parents": [
        "8858498516108432453526f07783f14c9196e112"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jul 07 14:50:44 2017 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jul 07 14:50:44 2017 +0200"
      },
      "message": "patch 8.0.0698: crash on exit when using Python function in timer.\n\nProblem:    When a timer uses \":pyeval\" or another Python command and it\n            happens to be triggered while exiting a Crash may happen.\n            (Ricky Zhou)\nSolution:   Avoid running a Python command after python_end() was called.\n            Do not trigger timers while exiting.  (closes #1824)\n"
    },
    {
      "commit": "f42dd3c3901ea0ba38e67a616aea9953cae81b8d",
      "tree": "3626ca40161dbfaa5e72a4dbeaa46b24480ddc8c",
      "parents": [
        "0c0590d9827cb07a33c1552cb3558b94bddcb4dc"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jan 28 16:06:38 2017 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jan 28 16:06:38 2017 +0100"
      },
      "message": "patch 8.0.0251: not easy to select Python 2 or 3\n\nProblem:    It is not so easy to write a script that works with both Python 2\n            and Python 3, even when the Python code works with both.\nSolution:   Add \u0027pyxversion\u0027, :pyx, etc. (Marc Weber, Ken Takata)\n"
    },
    {
      "commit": "6d4431e7b675ba7a0194c0b8eb84b7d92e4e7953",
      "tree": "ff1a1467afecfc2a5a630e20cf3b0756834519f3",
      "parents": [
        "d106e5ba7f10f0d2a14eaefe5d78405044416cb9"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Apr 21 20:00:56 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Apr 21 20:00:56 2016 +0200"
      },
      "message": "patch 7.4.1769\nProblem:    No \"closed\", \"errors\" and \"encoding\" attribute on Python output.\nSolution:   Add attributes and more tests. (Roland Puntaier, closes #622)\n"
    },
    {
      "commit": "8110a091bc749d8748a20807a724a3af3ca6d509",
      "tree": "87a81daf5175f9c892e6eca0e36f64a6400a1cb6",
      "parents": [
        "58de0e2dcc1f2d251b74892a06d71a14973f3187"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Apr 14 15:56:09 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Apr 14 15:56:09 2016 +0200"
      },
      "message": "patch 7.4.1731\nProblem:    Python: turns partial into simple funcref.\nSolution:   Use partials like partials. (Nikolai Pavlov, closes #734)\n"
    },
    {
      "commit": "1735bc988c546cc962c5f94792815b4d7cb79710",
      "tree": "5d1fcc3e5d0f0d37fa33097c2eacff4cbc2317d4",
      "parents": [
        "9cdf86b86f5fdb5a45b682f336846f9d9a9c6f1f"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Mar 14 23:05:14 2016 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Mar 14 23:05:14 2016 +0100"
      },
      "message": "patch 7.4.1559\nProblem:    Passing cookie to a callback is clumsy.\nSolution:   Change function() to take arguments and return a partial.\n"
    },
    {
      "commit": "6aa2cd4be287f35f95f35c2cec6d5a24f53c4d3c",
      "tree": "d2277cebb1354524326ac1333b3bd47f7453c456",
      "parents": [
        "f8df7addc5f741c16fa2a458f8777ac1fdf2e01e"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Feb 16 15:06:59 2016 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Feb 16 15:06:59 2016 +0100"
      },
      "message": "patch 7.4.1334\nProblem:    Many compiler warnings with MingW.\nSolution:   Add type casts. (Yasuhiro Matsumoto)\n"
    },
    {
      "commit": "7707344ddec9069b495b2a5ed41f2104466fc88b",
      "tree": "9c6b21f811c7c38a89daf010c61453d7d6eaa8da",
      "parents": [
        "e516c39ee97cb85fa230fbb1b1f54ad1346920d9"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Feb 13 23:23:53 2016 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Feb 13 23:23:53 2016 +0100"
      },
      "message": "patch 7.4.1315\nProblem:    Using a channel handle does not allow for freeing it when unused.\nSolution:   Add the Channel variable type.\n"
    },
    {
      "commit": "eba6d8c66c3511a5e1bfe6ffa30c8bea47d129ad",
      "tree": "27d8583580f559176697b41838b9f7715b642fb0",
      "parents": [
        "595e64e259faefb330866852e1b9f6168544572a"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Feb 07 19:25:51 2016 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Feb 07 19:25:51 2016 +0100"
      },
      "message": "patch 7.4.1280\nProblem:    Missing case value.\nSolution:   Add VAR_JOB.\n"
    },
    {
      "commit": "1701481c53f4e6756038c9c00d51d491a8f42c65",
      "tree": "76b2d1c8bfb703e961555f0505b02c8ec5bc20bf",
      "parents": [
        "3712792637516aea7acf76a11533be1066952820"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Feb 06 20:32:25 2016 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Feb 06 20:32:25 2016 +0100"
      },
      "message": "patch 7.4.1272\nProblem:    Using future enum value.\nSolution:   Remove it.\n"
    },
    {
      "commit": "81e7a9c3fb37cad46c8f04a5ce871fb06819a371",
      "tree": "137d60842f9637b69037c043e9e5f6e6215d3402",
      "parents": [
        "4f8b8faec31a934920a723053e8dcf47b6fac08c"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Feb 06 19:57:20 2016 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Feb 06 19:57:20 2016 +0100"
      },
      "message": "patch 7.4.1270\nProblem:    Warnings for missing values in switch.\nSolution:   Change switch to if-else or add values.\n"
    },
    {
      "commit": "68c2f638e65d914dc6e84eb7ce2624f08af525c0",
      "tree": "051b6b7500c6ac80c45cdeff26296c5b7acb88ff",
      "parents": [
        "66f948e928d5e0cd3123af902aa8ac1613534c94"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jan 30 17:24:07 2016 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jan 30 17:24:07 2016 +0100"
      },
      "message": "patch 7.4.1208\nProblem:    Using old style function declarations.\nSolution:   Change to new style function declarations. (script by Hirohito\n            Higashi)\n"
    },
    {
      "commit": "25e4fcde767084d1a79e0926bc301c92987c0cce",
      "tree": "2e2196f2e782cd2bd143b8ed1187697774f4a3ad",
      "parents": [
        "7b877b360532713dc21a0ff3d55a76ac02eaf573"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jan 09 14:57:47 2016 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jan 09 14:57:47 2016 +0100"
      },
      "message": "patch 7.4.1065\nProblem:    Cannot use the \"dll\" options on MS-Windows.\nSolution:   Support the options on all platforms.  Use the built-in name as\n            the default, so that it\u0027s clear what Vim is looking for.\n"
    },
    {
      "commit": "1000565c3a2439c9a7c9759284814dbf3b8bc20d",
      "tree": "357f2fbcb81da653f6786b30175f13e3882361b7",
      "parents": [
        "2bf2417612879de627dcea1dbb22ee2199b16963"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Dec 31 21:03:23 2015 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Dec 31 21:03:23 2015 +0100"
      },
      "message": "patch 7.4.1012\nProblem:    Vim overwrites the value of $PYTHONHOME.\nSolution:   Do not set $PYTHONHOME if it is already set. (Kazuki Sakamoto,\n            closes #500)\n"
    },
    {
      "commit": "d94464ee294a351ce7b6ba18e8bd3f24f1bef920",
      "tree": "8c3e98bb5e0f82995a6ee8e7a0729a9ec788265c",
      "parents": [
        "8a52ba791893fd55c5bdf98825c5b3e8892eaa62"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Nov 02 15:28:18 2015 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Nov 02 15:28:18 2015 +0100"
      },
      "message": "patch 7.4.907\nProblem:    Libraries for dynamically loading interfaces can only be defined\n            at compile time.\nSolution:   Add options to specify the dll names. (Kazuki Sakamoto,\n            closes #452)\n"
    },
    {
      "commit": "2459a5ecaa43c8549ea53e9364253ff891676da5",
      "tree": "b503323856e11d0e1e47e6c81875d32b1541ee04",
      "parents": [
        "4ac163ae5f137af236931e778660cf7878d70c25"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Feb 03 12:55:18 2015 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Feb 03 12:55:18 2015 +0100"
      },
      "message": "updated for version 7.4.609\nProblem:    For complicated list and dict use the garbage collector can run\n            out of stack space.\nSolution:   Use a stack of dicts and lists to be marked, thus making it\n            iterative instead of recursive. (Ben Fritz)\n"
    },
    {
      "commit": "12a28d4b29f1b8a42d9fb994f1d2c9cb717564ab",
      "tree": "f54eac4b354924ed4b79c405033ec6503e5c8503",
      "parents": [
        "158a1b074828341767ad4ce912b346bf14189605"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jul 23 16:57:00 2014 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jul 23 16:57:00 2014 +0200"
      },
      "message": "updated for version 7.4.380\nProblem:    Loading python may cause Vim to exit.\nSolution:   Avoid loading the \"site\" module. (Taro Muraoka)\n"
    },
    {
      "commit": "922a4664fe51662a24097b8e74e5f716beef12f4",
      "tree": "50014c90eafda31e97acc98fe6e750570f70c391",
      "parents": [
        "498af70e066c66b66f1737b553287c1339846842"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Mar 30 16:11:43 2014 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Mar 30 16:11:43 2014 +0200"
      },
      "message": "updated for version 7.4.228\nProblem:    Compiler warnings when building with Python 3.2.\nSolution:   Make type cast depend on Python version. (Ken Takata)\n"
    },
    {
      "commit": "a2aa31a9269641839178b0c0663dc67405c33d3e",
      "tree": "fba5b26febe0f352a4ad0a9cace397f479ced86c",
      "parents": [
        "7d311c52ce2859f67532e0a4b604eb8147473c01"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Feb 23 22:52:40 2014 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Feb 23 22:52:40 2014 +0100"
      },
      "message": "updated for version 7.4.188\nProblem:    SIZEOF_LONG clashes with similar defines in header files.\nSolution:   Rename to a name starting with VIM_.  Also for SIZEOF_INT.\n"
    },
    {
      "commit": "5395e7afe93d38793dcd6520b277ec0d3b1882ac",
      "tree": "fadf9ada5e4b1e29d938d8bf765ffcebcf292643",
      "parents": [
        "1028f4d75ee04261f1338620c22f388a05098bb0"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jan 14 19:35:56 2014 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jan 14 19:35:56 2014 +0100"
      },
      "message": "updated for version 7.4.153\nProblem:    Compiler warning for pointer type.\nSolution:   Add type cast.\n"
    },
    {
      "commit": "063a46ba77c3251f0b5245e872dcbad003c71024",
      "tree": "e85d7ca1c040ef4ecbef8f7bbbf7d92fe4ce823c",
      "parents": [
        "14177b77bf7bb9c3f1c7c8805bc6cff1b651c136"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jan 14 16:36:51 2014 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jan 14 16:36:51 2014 +0100"
      },
      "message": "updated for version 7.4.151\nProblem:    Python: slices with steps are not supported.\nSolution:   Support slices in Python vim.List. (ZyX)\n"
    },
    {
      "commit": "0b400087d076ba1a476d753c019fbfd96d8ae58e",
      "tree": "0cc81dc7cdb88fdb263cefb6b1bad70c2138d41c",
      "parents": [
        "9db1293317abd1aca101bf2d35caef0354f66e8b"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Nov 03 00:28:25 2013 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Nov 03 00:28:25 2013 +0100"
      },
      "message": "updated for version 7.4.060\nProblem:    Declaration has wrong return type for PyObject_SetAttrString().\nSolution:   Use int instead of PyObject. (Andreas Schwab)\n"
    },
    {
      "commit": "41009374747d68a12d043bcca0ae649d0c18daf4",
      "tree": "e05985bb9262965f6c4ea9a4ddde724be7b89084",
      "parents": [
        "c33916a6e06db94ea1a3dfd35eee32ca80787ec5"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Jul 01 22:03:04 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Jul 01 22:03:04 2013 +0200"
      },
      "message": "updated for version 7.3.1287\nProblem:    Python SystemExit exception is not handled properly.\nSolution:   Catch the exception and give an error. (Yasuhiro Matsumoto, Ken\n            Takata)\n"
    },
    {
      "commit": "d5e376eb3b11dbeca5478724731399d6c23c74a6",
      "tree": "b614ecd186f340cba53dda2de4cccb43770d24ec",
      "parents": [
        "7e85d3d432e799fc56126f6e3867b52539978343"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Jun 24 20:32:57 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Jun 24 20:32:57 2013 +0200"
      },
      "message": "updated for version 7.3.1238\nProblem:    Crash in Python interface on 64 bit machines.\nSolution:   Change argument type of PyString_AsStringAndSize. (Taro Muraoka,\n            Jun Takimoto)\n"
    },
    {
      "commit": "dee2e315d786cbe9d5bba2d388fb72d96ad1a846",
      "tree": "3a8548edebc6f07c6b08a3d2017dcb877f351bb4",
      "parents": [
        "ede3e6383d0bc86c13f039e9013ff72e307937d2"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 23 16:35:47 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 23 16:35:47 2013 +0200"
      },
      "message": "updated for version 7.3.1236\nProblem:    Python: WindowSetattr() missing support for NUMBER_UNSIGNED.\nSolution:   Add NUMBER_UNSIGNED, add more tests. Various fixes. (ZyX)\n"
    },
    {
      "commit": "141be8a585145d2217fb425739ccc121aed4a8d4",
      "tree": "1fbdd6ad7db5cc23313f05d9ef8f4f1aaa0772f1",
      "parents": [
        "c476e52fcaf9e1ad779add6368e4f46b2c0d881c"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 23 14:16:57 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 23 14:16:57 2013 +0200"
      },
      "message": "updated for version 7.3.1231\nProblem:    Python: use of numbers not consistent.\nSolution:   Add support for Number protocol. (ZyX)\n"
    },
    {
      "commit": "c476e52fcaf9e1ad779add6368e4f46b2c0d881c",
      "tree": "dc1d97fee9e56a07f4f1475ef938245a419c72ae",
      "parents": [
        "0bd80ccd853ddfa4cc2385b6ceb3b2610245a9ed"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 23 13:46:40 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 23 13:46:40 2013 +0200"
      },
      "message": "updated for version 7.3.1230\nProblem:    Python: Exception messages are not clear.\nSolution:   Make exception messages more verbose. (ZyX)\n"
    },
    {
      "commit": "808c2bc8bf435917b792e172a22dc5f8c0e7066a",
      "tree": "84a7b5846ce850af47f3bf8358818d46470e97d4",
      "parents": [
        "389a1793f40b149ed8553fb75e7ee40bc684d8c5"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 23 13:11:18 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 23 13:11:18 2013 +0200"
      },
      "message": "updated for version 7.3.1228\nProblem:    Python: various inconsistencies and problems.\nSolution:   StringToLine now supports both bytes() and unicode() objects.\n            Make function names consistant.  Fix memory leak fixed in\n            StringToLine. (ZyX)\n"
    },
    {
      "commit": "81c40c507c69ab0c3aede3ee14a2ba76c20c4595",
      "tree": "21bb9f8a713de4a223ab7b581c90207a79cfdb97",
      "parents": [
        "27610ed76c500cf680fdbac000d269e30dcba54c"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jun 12 14:41:04 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jun 12 14:41:04 2013 +0200"
      },
      "message": "updated for version 7.3.1174\nProblem:    Python 2 and 3 use different ways to load modules.\nSolution:   Use the same method. (ZyX)\n"
    },
    {
      "commit": "9f3685a527c9293b05c8ad7a6a4a7c2fa8b3b8b8",
      "tree": "4a01e3e62a1ecc504d835720319f0a26f71c041c",
      "parents": [
        "0ea4a6b94b6f7a13ef5027b43c36bda0836b51af"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jun 12 14:20:36 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jun 12 14:20:36 2013 +0200"
      },
      "message": "updated for version 7.3.1172\nProblem:    Python 2: loading modules doesn\u0027t work well.\nSolution:   Fix the code. Add more tests. (ZyX)\n"
    },
    {
      "commit": "c09a6d6c0c9d0e9056816f518171864158c72076",
      "tree": "d40e772fb06ab3fc2fee71c87c0d84ba819ed3d2",
      "parents": [
        "f9c9b32bd124235136980749bee754cae99e164a"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Jun 10 21:27:29 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Jun 10 21:27:29 2013 +0200"
      },
      "message": "updated for version 7.3.1163\nProblem:    Not easy to load Python modules.\nSolution:   Search \"python2\", \"python3\" and \"pythonx\" directories in\n            \u0027runtimepath\u0027 for Python modules. (ZyX)\n"
    },
    {
      "commit": "f9c9b32bd124235136980749bee754cae99e164a",
      "tree": "c10aac1a4002c1bccedd888418f577d23c33c19c",
      "parents": [
        "c1ba10c7f63d65cb7ec3eb11932feb0ee636a033"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Jun 10 20:47:36 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Jun 10 20:47:36 2013 +0200"
      },
      "message": "updated for version 7.3.1162\nProblem:    Python: Memory leaks\nSolution:   Add more Py_DECREF(). (ZyX)\n"
    },
    {
      "commit": "0bdda37fb4b8118ec4bd797eddca9eaf5d3b381d",
      "tree": "9037d905c68c34ad25a203757d62c20cee526b47",
      "parents": [
        "bcf4d178abef9336709b53516fbf0164ce5ebe09"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Jun 10 18:36:24 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Jun 10 18:36:24 2013 +0200"
      },
      "message": "updated for version 7.3.1158\nProblem:    Crash when running test 86. (Jun Takimoto)\nSolution:   Define PY_SSIZE_T_CLEAN early. (Elimar Riesebieter)\n"
    },
    {
      "commit": "f4258308e288c82c30d35cb2d0e045e60bfdb21c",
      "tree": "ae6e0e2a854864471d8d6478b53f8fa0e14ea556",
      "parents": [
        "4f2109d782f91f7341a51644e3629ad1cbaea991"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 02 18:20:17 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 02 18:20:17 2013 +0200"
      },
      "message": "updated for version 7.3.1099\nProblem:    Python: Changing directory with os.chdir() causes problems for\n            Vim\u0027s notion of directories.\nSolution:   Add vim.chdir() and vim.fchdir(). (ZyX)\n"
    },
    {
      "commit": "fdde880b0288fd9624352aa7ee5c04eefbdff9df",
      "tree": "35eb921887946e22fe77042cd41c1ada2a3019b3",
      "parents": [
        "fc714b35c6dd691adfc15782d663c0a1a07a0da8"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu May 30 15:38:24 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu May 30 15:38:24 2013 +0200"
      },
      "message": "updated for version 7.3.1070\nProblem:    Vim crashes in Python tests. Compiler warning for unused function.\nSolution:   Disable the tests for now. Move the function.\n"
    },
    {
      "commit": "bcb40977c3e71461f52ef5201cf55c5d427fc738",
      "tree": "d0289b4b72bb90b50574c8adda059e3f38d3e23b",
      "parents": [
        "494ff7e85033e233620ba7fec42156745758f5dc"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu May 30 13:22:13 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu May 30 13:22:13 2013 +0200"
      },
      "message": "updated for version 7.3.1065\nProblem:    Python: key mapping is not standard.\nSolution:   Puthon patch 24: use PyMapping_Keys. (ZyX)\n"
    },
    {
      "commit": "a9922d62e60142f1cb9889626e82e8cc7126be1a",
      "tree": "6d2281fef42af5d2e2351d8eb8166445478930c4",
      "parents": [
        "a5b725c3f67f1c98d99fec71a3cbaad502a02291"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu May 30 13:01:18 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu May 30 13:01:18 2013 +0200"
      },
      "message": "updated for version 7.3.1061\nProblem:    Python: Dictionary is not standard.\nSolution:   Python patch 20: Add standard methods and fields. (ZyX)\n"
    },
    {
      "commit": "1a3b56953e22f9e50d34c50edb5c24292741eb3d",
      "tree": "087d4952781c37f686e0a0586b327c71260af5f9",
      "parents": [
        "a1544c00c8ace9b74714b609b5079ae61faa20b5"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu May 30 12:40:39 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu May 30 12:40:39 2013 +0200"
      },
      "message": "updated for version 7.3.1059\nProblem:    Python: Using fixed size buffers.\nSolution:   Python patch 18: Use python\u0027s own formatter. (ZyX)\n"
    },
    {
      "commit": "dd8aca664d9768614d18cebec84badc3ecad3af5",
      "tree": "6002f0821e725f7829f73bc05336f4fc4ca376a3",
      "parents": [
        "432b09c84dc6daf0b7ca8dac986bc0b1faf899d7"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 29 22:36:10 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 29 22:36:10 2013 +0200"
      },
      "message": "updated for version 7.3.1047\nProblem:    Python: dir() does not work properly.\nSolution:   Python patch 8.  Add __dir__ method to all objects with custom\n            tp_getattr supplemented by __members__ attribute for at least\n            python-2* versions.  __members__ is not mentioned in python-3*\n            dir() output even if it is accessible. (ZyX)\n"
    },
    {
      "commit": "9e822c00b1fdf3e0604dbb520f593d8de6c15098",
      "tree": "2bfb2b78ea873331cc74f1d32183114b391c9aaf",
      "parents": [
        "3e734ea2c7d6bc78cf5d2851c1e4ddbad2e028d1"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 29 22:15:30 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 29 22:15:30 2013 +0200"
      },
      "message": "updated for version 7.3.1044\nProblem:    Python: No {Buffer,TabPage,Window}.valid attributes.\nSolution:   Python patch 5: add .valid (ZyX)\n"
    },
    {
      "commit": "3e734ea2c7d6bc78cf5d2851c1e4ddbad2e028d1",
      "tree": "5683e59afc05fb203e8d2ace044dd475a6b95048",
      "parents": [
        "e9ba516be2873b80e51aa24cd6c25f9b29612695"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 29 22:05:55 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 29 22:05:55 2013 +0200"
      },
      "message": "updated for version 7.3.1043\nProblem:    Python: Dynamic compilation with 2.3 fails.\nSolution:   Python patch 4. (ZyX)\n"
    },
    {
      "commit": "e9ba516be2873b80e51aa24cd6c25f9b29612695",
      "tree": "620ac235a6fe7dab512cfc871b7e63ba99bba761",
      "parents": [
        "1bc2428e1f7782870ae9e304f0db2388fe4a5a14"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 29 22:02:22 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 29 22:02:22 2013 +0200"
      },
      "message": "updated for version 7.3.1042\nProblem:    Python: can\u0027t assign to vim.Buffer.name.\nSolution:   Python patch 3. (ZyX)\n"
    },
    {
      "commit": "0014a53ad18c7e8aeeb33b6e68c120fdbcead177",
      "tree": "cd751064f92a4cdfae273b26056a547889dec616",
      "parents": [
        "423532e10d7335750afbace57ba65c0b6f138756"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 29 21:33:39 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 29 21:33:39 2013 +0200"
      },
      "message": "updated for version 7.3.1040\nProblem:    Python: Problems with debugging dynamic build.\nSolution:   Python patch 1. (ZyX)\n"
    },
    {
      "commit": "2a0f3d3fb2a7e26d47810098894f8e615571afe3",
      "tree": "e402ca98134661b2a3f133083adf18bdc66151b6",
      "parents": [
        "0b9aecc3a5020a3f3714bf4e58046321b46632fb"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue May 21 22:23:56 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue May 21 22:23:56 2013 +0200"
      },
      "message": "updated for version 7.3.1003\nProblem:    Python interface does not compile with Python 2.2\nSolution:   Fix thread issues and True/False. (ZyX)\n"
    },
    {
      "commit": "774267bbb9ac66c89e6e1781c19730a58c772752",
      "tree": "b284bdfe40281a035956ac88f732e7976714da8d",
      "parents": [
        "a7b64ce74e857d4516b87ca80c850e5ef6324ba6"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue May 21 20:51:59 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue May 21 20:51:59 2013 +0200"
      },
      "message": "updated for version 7.3.998\nProblem:    Python: garbage collection issues.\nSolution:   Fix the GC issues: Use proper DESTRUCTOR_FINISH: avoids negative\n            refcounts, use PyObject_GC_* for objects with tp_traverse and\n            tp_clear, add RangeTraverse and RangeClear, use Py_XDECREF in some\n            places. (ZyX)\n"
    },
    {
      "commit": "1dc28783fa3f5946238b4c8020aea460db80269b",
      "tree": "c3243d73c10b228f11915f20951046bfc9d4dda4",
      "parents": [
        "182dc4f2abe6ae6fd20a6c089c3adf45c8b1334d"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue May 21 19:11:01 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue May 21 19:11:01 2013 +0200"
      },
      "message": "updated for version 7.3.995\nProblem:    Python: Module initialization is duplicated.\nSolution:   Move to shared file. (ZyX)\n"
    },
    {
      "commit": "d6e391862c58d7c7494b8c4cc65a4b745d7eafe1",
      "tree": "119591b06dd9f58ab03dee643459635649440202",
      "parents": [
        "b52f4c02e63a76b933b48026687b322ee2353f11"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue May 21 18:30:34 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue May 21 18:30:34 2013 +0200"
      },
      "message": "updated for version 7.3.992\nProblem:    Python: Too many type casts.\nSolution:   Change argument types. (ZyX)\n"
    },
    {
      "commit": "b52f4c02e63a76b933b48026687b322ee2353f11",
      "tree": "ab489346c0966c67e62ca6176e0edc6d588202db",
      "parents": [
        "b09d983c78b27362a662ea9ce40e9092d5678bd0"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue May 21 18:19:38 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue May 21 18:19:38 2013 +0200"
      },
      "message": "updated for version 7.3.991\nProblem:    More can be shared by Python 2 and 3.\nSolution:   Move more stuff to if_py_both. (ZyX)\n"
    },
    {
      "commit": "d620aa9be4d574627c020dedd39313f8482ab216",
      "tree": "624b63e85141e01e5ac4c3b200a842f4719e6d6e",
      "parents": [
        "cfef5ff23ea09b17203d9f466f6f3526c76a8b99"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri May 17 16:40:06 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri May 17 16:40:06 2013 +0200"
      },
      "message": "updated for version 7.3.966\nProblem:    There is \":py3do\" but no \":pydo\".\nSolution:   Add the \":pydo\" command. (Lilydjwg)\n"
    },
    {
      "commit": "cabf80ff2f20ff6e7da237daf8c2a0cc358592eb",
      "tree": "55c18c253da96281fc7a8612e349094facb300b8",
      "parents": [
        "105bc355a6713b5c09b52776bf8f92a15a81f49c"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri May 17 16:18:33 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri May 17 16:18:33 2013 +0200"
      },
      "message": "updated for version 7.3.964\nProblem:    Python: not so easy to access tab pages.\nSolution:   Add window.tabpage, make window.number work with non-current tab\n            pages. (ZyX)\n"
    },
    {
      "commit": "71700b8903a8ccd172ae739f53520b59fc153bca",
      "tree": "962e55687d43f70d0f5c4b0f226db3cb523f4d8c",
      "parents": [
        "a4720019cfca02fa0c04358daa562334bb716d57"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 15 17:49:05 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 15 17:49:05 2013 +0200"
      },
      "message": "updated for version 7.3.956\nProblem:    Python vim.bindeval() causes SIGABRT.\nSolution:   Make pygilstate a local variable. (Yukihiro Nakadaira)\n"
    },
    {
      "commit": "d5f729cada4129ceb8296b86390c38021684c75f",
      "tree": "a970a59306199cd8d205ee490e01d3f7e3172fac",
      "parents": [
        "e761459eb69597ee4099cf384b69d6f94b2ab8f0"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 15 16:04:40 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 15 16:04:40 2013 +0200"
      },
      "message": "updated for version 7.3.953\nProblem:    Python: string exceptions are deprecated.\nSolution:   Make vim.error an Exception subclass. (ZyX)\n"
    },
    {
      "commit": "8661b17843d95866dedfa0f4fbfec2278ee010be",
      "tree": "e0de67a475e37adf3254859a9b3e870970ce50ec",
      "parents": [
        "4d188da22bc42b58ed66746c8d6235616214e55f"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 15 15:44:28 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 15 15:44:28 2013 +0200"
      },
      "message": "updated for version 7.3.951\nProblem:    Python exceptions have problems.\nSolution:   Change some IndexErrors to TypeErrors. Make “line number out of\n            range” an IndexError.  Make “unable to get option value” a\n            RuntimeError. Make all PyErr_SetString messages start with\n            lowercase letter and use _(). (ZyX)\n"
    },
    {
      "commit": "4d188da22bc42b58ed66746c8d6235616214e55f",
      "tree": "e8c93bef490ad575b47925682fc16a1b46a34855",
      "parents": [
        "5e538ecd5e68b90f630be7bb177ab64e1285e40b"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 15 15:35:09 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 15 15:35:09 2013 +0200"
      },
      "message": "updated for version 7.3.950\nProblem:    Python: Stack trace printer can\u0027t handle messages.\nSolution:   Make KeyErrors use PyErr_SetObject. (ZyX)\n"
    },
    {
      "commit": "5e538ecd5e68b90f630be7bb177ab64e1285e40b",
      "tree": "a2de7e503d39d22f9edb40253bb8cfb15d6f9a8e",
      "parents": [
        "03db85b398746a252345ed8a7da69f0f2591e932"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 15 15:12:29 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 15 15:12:29 2013 +0200"
      },
      "message": "updated for version 7.3.949\nProblem:    Python: no easy access to tabpages.\nSolution:   Add vim.tabpages and vim.current.tabpage. (ZyX)\n"
    },
    {
      "commit": "03db85b398746a252345ed8a7da69f0f2591e932",
      "tree": "7ed0344aa301a35ff620990e64264250182e06fd",
      "parents": [
        "b6c589a529bc8c5720477494696c6f69fe457475"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 15 14:51:35 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 15 14:51:35 2013 +0200"
      },
      "message": "updated for version 7.3.948\nProblem:    Cannot build with Python 2.2\nSolution:   Make Python interface work with Python 2.2\n            Make 2.2 the first supported version. (ZyX)\n"
    },
    {
      "commit": "b6c589a529bc8c5720477494696c6f69fe457475",
      "tree": "fa6f512190cb15fa5a0a3186312ede6115881e61",
      "parents": [
        "46a7561f3a151fefc469225d41822dd0be292f98"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 15 14:39:52 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 15 14:39:52 2013 +0200"
      },
      "message": "updated for version 7.3.947\nProblem:    Python: No iterator for vim.list and vim.bufferlist.\nSolution:   Add the iterators. Also fix name of FunctionType. Add tests for\n            vim.buffers.  (ZyX)\n"
    },
    {
      "commit": "dfa38d4e45a4a64c6b2a84c1d4c91b153f43a86d",
      "tree": "a60f495de869a13fde8cdf7cabd2ad977f9da521",
      "parents": [
        "29607acff640183682cd4ecb6c65985a7897bd51"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 15 13:38:47 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 15 13:38:47 2013 +0200"
      },
      "message": "updated for version 7.3.945\nProblem:    Python: List of buffers is not very useful.\nSolution:   Make vim.buffers a map. No iterator yet. (ZyX)\n"
    },
    {
      "commit": "8f1723de4735e437b4ced3be95d6582e713c3d7d",
      "tree": "b8e71cbe3ac73cc19ceee047a8bdd3d10d37b1a3",
      "parents": [
        "3d0c52db9c3e2019bc5fe84debe59c042c3da20b"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun May 12 20:36:14 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun May 12 20:36:14 2013 +0200"
      },
      "message": "updated for version 7.3.942\nProblem:    Python: SEGV in Buffer functions.\nSolution:   Call CheckBuffer() at the right time. (ZyX)\n"
    },
    {
      "commit": "3d0c52db9c3e2019bc5fe84debe59c042c3da20b",
      "tree": "b6e0c7cedc241b822a9aedd044ed3c0ba9cf1d62",
      "parents": [
        "4e5dfb57002513735b771942492d6b03e137605a"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun May 12 19:45:35 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun May 12 19:45:35 2013 +0200"
      },
      "message": "updated for version 7.3.941\nProblem:    Stuff in if_py_both.h is ordered badly.\nSolution:   Reorder by type. (ZyX)\n"
    },
    {
      "commit": "971db4679940fd2f06733e8a1513215f9e1943a4",
      "tree": "566ecdc2f8d5cb86bc82160c190c20765da589ee",
      "parents": [
        "3b9abb6cc20d3077b6fd239fb59dee8c75fa599b"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun May 12 18:44:48 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun May 12 18:44:48 2013 +0200"
      },
      "message": "updated for version 7.3.937\nProblem:    More can be shared between Python 2 and 3.\nSolution:   Move code to if_py_both.h. (ZyX)\n"
    },
    {
      "commit": "84a05acc8c341c2be383198496764992ae971a46",
      "tree": "061887e2e1327a2d0c688cba306b8ec66b3f8477",
      "parents": [
        "84e0f6ca9adcbdca254060713878ebc29faaaa65"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon May 06 04:24:17 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon May 06 04:24:17 2013 +0200"
      },
      "message": "updated for version 7.3.925\nProblem:    Typos in source files.\nSolution:   Fix the typos. (Ken Takata)\n"
    },
    {
      "commit": "84e0f6ca9adcbdca254060713878ebc29faaaa65",
      "tree": "3025211efa4e5c1d9f48e9f369ecd786713b6c69",
      "parents": [
        "d1864597a0d87fa9b3fbd09fc022b3405be7f274"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon May 06 03:52:55 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon May 06 03:52:55 2013 +0200"
      },
      "message": "updated for version 7.3.924\nProblem:    Python interface can\u0027t easily access options.\nSolution:   Add vim.options, vim.window.options and vim.buffer.options. (ZyX)\n"
    },
    {
      "commit": "230bb3f09d1661cb8da3ef64406270bd3e61aae3",
      "tree": "9c493ef3d30ffc39af2a540fa14bd64b563351b3",
      "parents": [
        "335e0b69744ededb907fb9167f72ac84e37e1304"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Apr 24 14:07:45 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Apr 24 14:07:45 2013 +0200"
      },
      "message": "updated for version 7.3.911\nProblem:    Python: Access to Vim variables is not so easy.\nSolution:   Define vim.vars and vim.vvars. (ZyX)\n"
    },
    {
      "commit": "335e0b69744ededb907fb9167f72ac84e37e1304",
      "tree": "32bfacea7b64cb829c456f1ad1eebe4efbee985c",
      "parents": [
        "4d1da49cfe2528474dafb0535dd0cab19c3c3579"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Apr 24 13:47:45 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Apr 24 13:47:45 2013 +0200"
      },
      "message": "updated for version 7.3.910\nProblem:    Python code in #ifdef branches with only minor differences.\nSolution:   Merge the #ifdef branches. (ZyX)\n"
    },
    {
      "commit": "4d1da49cfe2528474dafb0535dd0cab19c3c3579",
      "tree": "17059da73c94d39ff40c2b826dcbde03ff3eabdb",
      "parents": [
        "7a26dd860a1c666233574edc1b96f721f214067f"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Apr 24 13:39:15 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Apr 24 13:39:15 2013 +0200"
      },
      "message": "updated for version 7.3.909\nProblem:    Duplicate Python code.\nSolution:   Move more items to if_py_both.h. (ZyX)  Also avoid compiler\n            warnings for missing initializers.\n"
    },
    {
      "commit": "af6abb9d93959d801d40a2d77a96962cef2335fc",
      "tree": "2a4c39066970fd372b41b351535429df0f6e3b31",
      "parents": [
        "3f99152276def2b8f88a3dd5f87f645e9e875da2"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Apr 24 13:04:26 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Apr 24 13:04:26 2013 +0200"
      },
      "message": "updated for version 7.3.907\nProblem:    Python uses IndexError when a dict key is not found.\nSolution:   Use KeyError instead. (ZyX)\n"
    },
    {
      "commit": "4d36987c254b820ebfaf98957c0ae5182db0508e",
      "tree": "fd782ba208cffa25589f4614a0252445517096f9",
      "parents": [
        "2142e5d85112f37e68374c81612d6277c6aaaf0b"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Feb 20 16:09:43 2013 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Feb 20 16:09:43 2013 +0100"
      },
      "message": "updated for version 7.3.825\nProblem:    With Python errors are not always clear.\nSolution:   Print the stack trace, unless :silent is used. (ZyX)\n"
    },
    {
      "commit": "76d711c3b5397b749a67d229150d3c1ff3f33add",
      "tree": "ca5c0745ab1f3995faacee77be1bf4369ae4765d",
      "parents": [
        "51971b33988e590901b9f6ad14a5a36f276afd0b"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Feb 13 14:17:08 2013 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Feb 13 14:17:08 2013 +0100"
      },
      "message": "updated for version 7.3.808\nProblem:    Python threads still do not work properly.\nSolution:   Fix both Python 2 and 3.  Add tests. (Ken Takata)\n"
    },
    {
      "commit": "02366255c9bd16120c5025106f7ac5d5a06774d7",
      "tree": "0f2da4133e8b3544143630621bf1fc84d387a735",
      "parents": [
        "2f315ab7bec2713d2fb986c5d863f15ab9949166"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jan 30 11:44:39 2013 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jan 30 11:44:39 2013 +0100"
      },
      "message": "updated for version 7.3.786\nProblem:    Python threads don\u0027t run in the background (issue 103).\nSolution:   Move the statements to manipulate thread state.\n"
    },
    {
      "commit": "003d14a26771bf7d2c05013cd2fd9d2622f373b9",
      "tree": "45e175aff33fa0eefe1aeded6b75c37abccbf4b4",
      "parents": [
        "c4b98fbb3ea881621d051f84d67609f6789880bc"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Oct 21 01:47:00 2012 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Oct 21 01:47:00 2012 +0200"
      },
      "message": "updated for version 7.3.698\nProblem:    Python 3 does not preserve state beween commands.\nSolution:   Preserve the state. (Paul Ollis)\n"
    },
    {
      "commit": "b88adbf844612281d3ed11166bbf03368f7ed704",
      "tree": "d6d9dacf4d3451f85c7ad6bfe667c843900111be",
      "parents": [
        "dac7569612d4088084ef81dfc32c3bb86aec090f"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Oct 14 05:20:12 2012 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Oct 14 05:20:12 2012 +0200"
      },
      "message": "updated for version 7.3.691\nProblem:    State specific to the Python thread is discarded.\nSolution:   Keep state between threads. (Paul)\n"
    },
    {
      "commit": "66b7985ec9e4924abc370636077ed33114d0327d",
      "tree": "d3fc6e02af7989af008caade8eff1eb53e5ad52c",
      "parents": [
        "770456589e5e53507fcd32013a190b520f4fc688"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Sep 21 14:00:35 2012 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Sep 21 14:00:35 2012 +0200"
      },
      "message": "updated for version 7.3.672\nProblem:    Not possible to lock/unlock lists in Python interface.\nSolution:   Add .locked and .scope attributes. (ZyX)\n"
    },
    {
      "commit": "770456589e5e53507fcd32013a190b520f4fc688",
      "tree": "1bacd8f17ef1a832cd781507aa469d67b2520573",
      "parents": [
        "696c2116dc5e5403644d7f7dcaea49b83cf5a8f5"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Sep 21 13:46:06 2012 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Sep 21 13:46:06 2012 +0200"
      },
      "message": "updated for version 7.3.671\nProblem:    More Python code can be shared between Python 2 and 3.\nSolution:   Move code to if_py_both.h. (ZyX)\n"
    },
    {
      "commit": "e8cdcef87575cacbc9dd977de076af76e4405410",
      "tree": "fad755d283aa655a961f5c9a7ec76b5fe56d0533",
      "parents": [
        "fca93c093e0ec86331171ca4e169f73aa81ebfef"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Sep 12 20:21:43 2012 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Sep 12 20:21:43 2012 +0200"
      },
      "message": "updated for version 7.3.661\nProblem:    SEGV in Python code.\nSolution:   Initialize len to zero.  Use the right function depending on\n            version. (Maxim Philippov)\n"
    },
    {
      "commit": "cdab9051368a6437b7e40df673594147425df751",
      "tree": "79288319fdc749ff595b899a882caeeebf98c474",
      "parents": [
        "77fceb890851e8c97c9d4bbe521dff165455d371"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Sep 05 19:03:56 2012 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Sep 05 19:03:56 2012 +0200"
      },
      "message": "updated for version 7.3.657\nProblem:    Python bindings silently truncate string values containing NUL.\nSolution:   Fail when a string contains NUL. (ZyX)\n"
    },
    {
      "commit": "77fceb890851e8c97c9d4bbe521dff165455d371",
      "tree": "e5f5d88afd7d31aa822a4bd7436ee8feae8df874",
      "parents": [
        "e48a2dd3af920d712305e4225454cb2940fb3312"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Sep 05 18:54:48 2012 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Sep 05 18:54:48 2012 +0200"
      },
      "message": "updated for version 7.3.656\nProblem:    Internal error in :pyeval.\nSolution:   Handle failed object conversion. (ZyX)\n"
    },
    {
      "commit": "221d6872c432842534b302da4670014c29588566",
      "tree": "1abdf0dd64086b45df075e573229fe54c04436e6",
      "parents": [
        "e721122b792698096b1c7fd5641e61fa37231408"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jun 30 13:34:34 2012 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jun 30 13:34:34 2012 +0200"
      },
      "message": "updated for version 7.3.584\nProblem:    PyCObject is not always defined.\nSolution:   Use PyObject instead.\n"
    },
    {
      "commit": "e721122b792698096b1c7fd5641e61fa37231408",
      "tree": "4ad8c02ce39acb473dea2e25f54368efb682ed89",
      "parents": [
        "49346f4155b01a3d73f575f49359dd108eda939f"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jun 30 13:21:08 2012 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jun 30 13:21:08 2012 +0200"
      },
      "message": "updated for version 7.3.583\nProblem:    PyObject_NextNotImplemented is not defined before Python 2.7.\n            (Danek Duvall)\nSolution:   Add #ifdefs.\n"
    },
    {
      "commit": "cc3e85f169ba44a6ac4b66c6fbb1774f7f7ae0db",
      "tree": "ec60db35fdb000f32648cc45dfea8ee629332666",
      "parents": [
        "3cd3e7ab17535f48969b7e5467d5bbdebbecebed"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jun 29 19:14:52 2012 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jun 29 19:14:52 2012 +0200"
      },
      "message": "updated for version 7.3.581\nProblem:    Problems compiling with Python.\nSolution:   Pick UCS2 or UCS4 function at runtime. (lilydjwg)\n"
    },
    {
      "commit": "2afa3238a13fe3f4769fa777ada34ec0d1ea5548",
      "tree": "69ba4e6054ddaed3f15e58f52445f5153cce9989",
      "parents": [
        "f27839c1a9e7390bb850d768e1146014b221cc43"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jun 29 16:28:28 2012 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jun 29 16:28:28 2012 +0200"
      },
      "message": "updated for version 7.3.579\nProblem:    Can\u0027t compile with Python 2.5.\nSolution:   Use PyCObject when Capsules are not available.\n"
    },
    {
      "commit": "db91395312a02527ed973c8376d8e26e5b63ff53",
      "tree": "90f069389936dc2f2c8eb9ae8885ed68d1c336fb",
      "parents": [
        "a7014df97532a4171276aa7e3b878e80e88e513c"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jun 29 12:54:53 2012 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jun 29 12:54:53 2012 +0200"
      },
      "message": "updated for version 7.3.569\nProblem:    Evaluating Vim expression in Python is insufficient.\nSolution:   Add vim.bindeval().  Also add pyeval() and py3eval(). (ZyX)\n"
    },
    {
      "commit": "9dc93ae43e392d0de3cb3b2a0080c4dd29995c26",
      "tree": "e7f9ce8060eb9fd48ae9cfdb91c41e6dbaaf243b",
      "parents": [
        "2eba18255ea36927ea0acc6d45b7be03ca94a139"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Aug 28 16:00:19 2011 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Aug 28 16:00:19 2011 +0200"
      },
      "message": "updated for version 7.3.288\nProblem:    has(\u0027python\u0027) may give an error message for not being able to load\n            the library after using python3.\nSolution:   Only give the error when the verbose argument is true.\n"
    },
    {
      "commit": "19e609437873594b8b08aaceafbe81ef235044bf",
      "tree": "7267281ba8360c116e6def0f1c626c2d66421d37",
      "parents": [
        "f85dae3c34065244f701e44c21a4e828566c63f1"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 19 00:27:51 2011 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 19 00:27:51 2011 +0200"
      },
      "message": "updated for version 7.3.220\nProblem:    Python 3: vim.error is a \u0027str\u0027 instead of an \u0027Exception\u0027 object,\n            so \u0027except\u0027 or \u0027raise\u0027 it causes a \u0027SystemError\u0027 exception.\n            Buffer objects do not support slice assignment.\n            When exchanging text between Vim and Python, multibyte texts become\n            gabage or cause Unicode Expceptions, etc.\n            \u0027py3file\u0027 tries to read in the file as Unicode, sometimes causes\n            UnicodeDecodeException\nSolution:   Fix the problems. (lilydjwg)\n"
    },
    {
      "commit": "30fec7bc7fbc9c1b7d45b4616c5187fc63652eb2",
      "tree": "d4d7030246278cc445c1b65fd3e24dd38d95ba39",
      "parents": [
        "21377c8d5ff60a94c76e5fb3b32f462cc2880290"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Mar 26 18:32:05 2011 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Mar 26 18:32:05 2011 +0100"
      },
      "message": "updated for version 7.3.145\nProblem:    Can\u0027t build with Python dynamically loading.\nSolution:   Add dll_PyType_Ready.\n"
    },
    {
      "commit": "21377c8d5ff60a94c76e5fb3b32f462cc2880290",
      "tree": "f5f464d126c9498544dabd33b7f83fb848735964",
      "parents": [
        "b3c5284c5b228794bd17f63bb5fa8d78e5d22ecd"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Mar 26 13:56:48 2011 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Mar 26 13:56:48 2011 +0100"
      },
      "message": "updated for version 7.3.144\nProblem:    Crash with \":python help(dir)\". (Kearn Holliday)\nSolution:   Fix the way the type is set on objects. (Tobias Columbus)\n"
    },
    {
      "commit": "644d37b84d8f520f807ef665b476c47b72862eff",
      "tree": "ab5ea0c766b10f74514876e10c50daa61ea8f919",
      "parents": [
        "00b78c17b24e61b73f8ecf8fa3e5154d396c1d1a"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Nov 16 19:26:02 2010 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Nov 16 19:26:02 2010 +0100"
      },
      "message": "updated for version 7.3.062\nProblem:    Python doesn\u0027t work properly when installed in another directory\n            than expected.\nSolution:   Figure out home directory in configure and use Py_SetPythonHome()\n            at runtime. (Roland Puntaier)\n"
    },
    {
      "commit": "ebbcb824baf770e42ad53c532905a329d762e94e",
      "tree": "103c8a111f4c16c2a619f66127708e24d28d39b9",
      "parents": [
        "b8e86705ca09deeee5044af6e3afb4e9999eceb5"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Oct 23 14:02:54 2010 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Oct 23 14:02:54 2010 +0200"
      },
      "message": "updated for version 7.3.034\nProblem:    Win32: may be loading .dll from the wrong directory.\nSolution:   Go to the Vim executable directory when opening a library.\n"
    },
    {
      "commit": "b744b2fa3216740c74d74bd62b26b6a539f026d1",
      "tree": "1ca653eec27c5356fb60be2873c7dab0137cd639",
      "parents": [
        "2a988a162c85df0092eca6b23eff9cd0fcd7de9a"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Aug 13 16:22:57 2010 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Aug 13 16:22:57 2010 +0200"
      },
      "message": "Add a configure check for RTLD_GLOBAL. (James Vega, Roland Puntaier)\n"
    }
  ],
  "next": "b61f95c31f37ae3c5daef6596b55e4b9dec62eb8"
}
