)]}'
{
  "log": [
    {
      "commit": "5199567fd0c9792827287bbd719c69cfd323ecb4",
      "tree": "9f21a3f35aeea8bb1141865bd8b0ddd0ffe1e8bf",
      "parents": [
        "49864aecd0d23676e202b30bc8705c78ae52d680"
      ],
      "author": {
        "name": "Drew Vogel",
        "email": "dvogel@github",
        "time": "Wed May 28 21:13:52 2025 +0200"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Wed May 28 21:17:15 2025 +0200"
      },
      "message": "patch 9.1.1418: configures GUI auto detection favors GTK2\n\nProblem:  configures GUI auto detection favors GTK2\nSolution: make configure favor GTK3 over GTK2 for the GUI\n          when auto detecting the gui toolkit (Drew Vogel).\n\nPrior to these changes if the dev packages for both GTK2 and GTK3 were\ninstalled, the `--enable-gui\u003dauto` would used GTK2. After these changes\nit will use GTK3. Users can still use `--enable-gui\u003dgtk2` to\nspecifically select GTK2.\n\nIn addition to the prioritization change, this also brings some cleanups\nto the GTK autoconf code:\n\n* The `AM_PATH_GTK` macro had an unused third argument that has been\n  removed.\n* The `AM_PATH_GTK` macro checked the `SKIP_GTK2` \u0026 `SKIP_GTK3`\n  variables but the code that decided whether to call it also checked\n  those. Now just the calling code does so.\n* The `AM_PATH_GTK` macro set a default minimum version based on\n  `SKIP_GTK2` and `SKIP_GTK3` but the calling code was also expected to\n  pass a version. Now the calling code _must_ pass a version.\n* The GTK test program previous used `gtk_(major|minor|micro)_version`\n  as all of: a C variable name, a C macro provided only by GTK2, and an\n  autoconf variable name. It also needlessly parsed a `x.y.z` version\n  string when the same string was already parsed by autoconf + sed. Now\n  the parsed values are used directly in the test program.\n* The GTK test program previous created a test program `conf.gtktest`\n  which was cleaned up by the autoconf script. This appeared to be a\n  crude way to debug whether an erroring configure run had actually run\n  the test program. Instead the autoconf script now outputs more messaging\n  and the user can check `config.log` to determine the status of the\n  configure script.\n\nI\u0027m not an autoconf expert and I don\u0027t have access to some of the older\nsystems we try to support with gvim. So I would very much appreciate if\nanyone could run this on their systems to ensure it doesn\u0027t misbehave.\n\nWhile my motivation here is mainly to further establish GTK3 as the\nprimary GUI mode, this should at least partially address the concern\ndescribed in #15437.\n\nHere are a few test runs with both GTK 2 and GTK 3 installed:\n\n```\n    --with-features\u003dhuge \\\n    --enable-gui \\\n    --enable-gtk3-check\u003dno \\\n    --enable-gtktest \\\n```\n\n```\nchecking --enable-gui argument... yes/auto - automatic GUI support\nchecking whether or not to look for GTK+ 2... yes\nchecking whether or not to look for GNOME... no\nchecking whether or not to look for GTK+ 3... no\nchecking whether or not to look for Motif... yes\nchecking for pkg-config... /usr/bin/pkg-config\nchecking --disable-gtktest argument... gtk test enabled\nchecking for pkg-config gtk+-2.0... found\nchecking for GTK - version \u003e\u003d 2.2.0... yes; found version 2.24.33\nchecking ability to compile GTK test program... yes\n```\n\n```\n    --with-features\u003dhuge \\\n    --enable-gui \\\n    --enable-gtk2-check\u003dno \\\n    --enable-gtktest \\\n```\n\n```\nchecking --enable-gui argument... yes/auto - automatic GUI support\nchecking whether or not to look for GTK+ 2... no\nchecking whether or not to look for GTK+ 3... yes\nchecking whether or not to look for Motif... yes\nchecking for pkg-config... /usr/bin/pkg-config\nchecking --disable-gtktest argument... gtk test enabled\nchecking for pkg-config gtk+-3.0... found\nchecking for GTK - version \u003e\u003d 3.0.0... yes; found version 3.24.49\nchecking ability to compile GTK test program... yes\n```\n\n```\n    --with-features\u003dhuge \\\n```\n\n```\nchecking --enable-gui argument... yes/auto - automatic GUI support\nchecking whether or not to look for GTK+ 2... yes\nchecking whether or not to look for GNOME... no\nchecking whether or not to look for GTK+ 3... yes\nchecking whether or not to look for Motif... yes\nchecking for pkg-config... /usr/bin/pkg-config\nchecking --disable-gtktest argument... gtk test enabled\nchecking for pkg-config gtk+-3.0... found\nchecking for GTK - version \u003e\u003d 3.0.0... yes; found version 3.24.49\nchecking ability to compile GTK test program... yes\n```\n\n```\n    --with-features\u003dhuge \\\n    --disable-gtktest \\\n```\n\n```\nchecking --enable-gui argument... yes/auto - automatic GUI support\nchecking whether or not to look for GTK+ 2... yes\nchecking whether or not to look for GNOME... no\nchecking whether or not to look for GTK+ 3... yes\nchecking whether or not to look for Motif... yes\nchecking for pkg-config... /usr/bin/pkg-config\nchecking --disable-gtktest argument... gtk test disabled\nchecking for pkg-config gtk+-3.0... found\nchecking for GTK - version \u003e\u003d 3.0.0... yes; found version 3.24.49\n```\n\n```\n    --with-features\u003dhuge \\\n    --enable-gui\u003dgtk2 \\\n```\n\n```\nchecking --enable-gui argument... GTK+ 2.x GUI support\nchecking for pkg-config... /usr/bin/pkg-config\nchecking --disable-gtktest argument... gtk test enabled\nchecking for pkg-config gtk+-2.0... found\nchecking for GTK - version \u003e\u003d 2.2.0... yes; found version 2.24.33\nchecking ability to compile GTK test program... yes\n```\n\n```\n    --with-features\u003dhuge \\\n    --enable-gui\u003dgtk3 \\\n```\n\n```\nchecking --enable-gui argument... GTK+ 3.x GUI support\nchecking for pkg-config... /usr/bin/pkg-config\nchecking --disable-gtktest argument... gtk test enabled\nchecking for pkg-config gtk+-3.0... found\nchecking for GTK - version \u003e\u003d 3.0.0... yes; found version 3.24.49\nchecking ability to compile GTK test program... yes\n```\n\nAnd here is a similar run with the GTK 3 dev package removed:\n\n```\n    --with-features\u003dhuge \\\n    --enable-gui\u003dgtk3 \\\n    --enable-fail-if-missing \\\n```\n\n```\nchecking --disable-gtktest argument... gtk test enabled\nchecking for pkg-config gtk+-3.0... no; consider installing your distro\nGTK -dev package\nconfigure: error: pkg-config could not find gtk+-3.0\n```\n\ncloses: #17369\n\nSigned-off-by: Drew Vogel \u003cdvogel@github\u003e\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "9670f61d4680bd54f5e055b75b00b56c119f9ae6",
      "tree": "efbd865fa53ef87e4bacabf46a80259b7bee42c1",
      "parents": [
        "48b19b29eef4a05df6d0f87e7f87b5d4db5e87df"
      ],
      "author": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Wed May 07 21:44:33 2025 +0200"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Wed May 07 21:44:33 2025 +0200"
      },
      "message": "patch 9.1.1369: configure still using autoconf 2.71\n\nProblem:  configure still using autoconf 2.71\nSolution: regenerate with autoconf 2.72\n\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "c078675ac768eb54388a8e4c6cab0214ef02ba7b",
      "tree": "2276f30c11c03b1993db6c24a5f1ef2206ca03f9",
      "parents": [
        "b32800f7c51c866dc0e87244eb4902540982309d"
      ],
      "author": {
        "name": "Christ van Willegen",
        "email": "cvwillegen@gmail.com",
        "time": "Sat Feb 01 15:42:16 2025 +0100"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Sat Feb 01 15:47:51 2025 +0100"
      },
      "message": "patch 9.1.1064: not possible to use plural forms with gettext()\n\nProblem:  not possible to use plural forms with gettext()\nSolution: implement ngettext() Vim script function (Christ van Willegen)\n\ncloses: #16561\n\nSigned-off-by: Christ van Willegen \u003ccvwillegen@gmail.com\u003e\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "cbdc3c1f7a534ca845675544f88021ed7b1af52c",
      "tree": "0ec0e4b7a6f629bfa87e63d395cbaff56378b70f",
      "parents": [
        "f25d8f9312a24da2727671560a865888812ab8d9"
      ],
      "author": {
        "name": "Brandon Maier",
        "email": "brandon.maier@gmail.com",
        "time": "Wed Dec 18 21:18:01 2024 +0100"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Wed Dec 18 21:18:01 2024 +0100"
      },
      "message": "patch 9.1.0946: cross-compiling fails on osx-arm64\n\nProblem:  cross-compiling fails on osx-arm64\nSolution: use vim_cv_timer_create_with_lrt() instead of\n          vim_cv_timer_create_works() (Brandon Maier)\n\nCross-compiling to osx-arm64 fails with the following\n\n  In file included from json.c:17:\n  In file included from ./vim.h:457:\n  ./macros.h:304:24: error: expected identifier or \u0027(\u0027\n    304 |      static inline int isnan(double x)\n        |                        ^\n  .../MacOSX11.0.sdk/usr/include/math.h:165:7: note: expanded from macro \u0027isnan\u0027\n    165 |     ( sizeof(x) \u003d\u003d sizeof(float)  ? __inline_isnanf((float)(x))\n        |       ^\n\nThis can be traced back to ./configure incorrectly detecting the\ncompiler support for `isnan()`, from the config.log:\n\n  configure:14567: checking for isnan()\n  configure:14588: arm64-apple-darwin20.0.0-clang \u003c...\u003e -L$PREFIX/lib conftest.c  -lncurses -ltinfo -lrt \u003e\u00265\n  ld: library not found for -lrt\n  arm64-apple-darwin20.0: error: linker command failed with exit code 1 (use -v to see invocation)\n\nThe `-lrt` linking is added by ./configure script when it detects\ncompiler support for `timer_create()`. On the osx-arm64 platform\n`timer_create()` works but does not link with `-lrt`. This results in\nthe following settings from config.log:\n\n  vim_cv_timer_create\u003dyes\n  vim_cv_timer_create_with_lrt\u003dno\n  vim_cv_timer_create_works\u003dyes\n\nBut the configure.ac incorrectly uses `timer_create_works` to add\n`-lrt`, instead of using `timer_create_with_lrt`.\n\nfixes: https://github.com/conda-forge/vim-feedstock/pull/1664\ncloses: #16242\n\nSigned-off-by: Brandon Maier \u003cbrandon.maier@gmail.com\u003e\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "8bb5eaf019bc46e3b20e1509d88c07655f1632cd",
      "tree": "3f103db3804c6c387fba8484bcbffee229c58b8f",
      "parents": [
        "cef8ab2c75841cee1cd72266aa662fbe54fc0acc"
      ],
      "author": {
        "name": "Jonas Sortie Termansen",
        "email": "sortie@maxsi.org",
        "time": "Mon Nov 04 20:32:27 2024 +0100"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Mon Nov 04 20:36:41 2024 +0100"
      },
      "message": "patch 9.1.0842: not checking for the sync() systemcall\n\nProblem:  not checking for the sync() systemcall\nSolution: check for sync in configure script, fix related #ifdefs\n          (Jonas Termansen)\n\nIt\u0027s better to check for features directly rather than maintaining a\ndenylist of operating systems without them.\n\ncloses: #15985\n\nSigned-off-by: Jonas \u0027Sortie\u0027 Termansen \u003csortie@maxsi.org\u003e\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "2cf145b78b888fa03d3b26280fcd405b3c946bef",
      "tree": "ab1b09cbe155d782a62ac7faf27ce7c7ea237585",
      "parents": [
        "17c71daf83f45c3ee81a33716e56e1b485e76a8b"
      ],
      "author": {
        "name": "Jonas Sortie Termansen",
        "email": "sortie@maxsi.org",
        "time": "Sun Nov 03 20:58:21 2024 +0100"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Sun Nov 03 20:58:21 2024 +0100"
      },
      "message": "patch 9.1.0837: cross-compiling has some issues\n\nProblem:  Cross-compiling to good modern operating systems is difficult as\n          configure assumes obscure bugs are present by default. However,\n          most core autoconf-based packages today assume features work\n          when in doubt, making cross-compilation easier.\nSolution: Assume features work by default and continue to issue a warning\n          with the appropriate cache variable. This solution shifts the\n          burden onto the users of rare buggy operating systems and\n          makes cross-compilation work out of the box for everyone else.\n\nThe vim_cv_terminfo test was accidentally negated, where the yes case\nwas in the error handler, leading to false positives if the test program\nfailed to compile.\n\nSplit the timer_create detection into two phases: First locating the\nthe library containing timer_create, and then another check to check\nif timer_create works to properly support cross-compilation.\n\nSigned-off-by: Jonas \u0027Sortie\u0027 Termansen \u003csortie@maxsi.org\u003e\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "dc2c75c6b58ed1532c906ddf6b9ce70ad0804079",
      "tree": "05b28230e5e2c4166f29b8680d999454fe8e545a",
      "parents": [
        "d1c8d2de4b9fa44b3d2b39b7ed8b92846c5502b7"
      ],
      "author": {
        "name": "Ken Takata",
        "email": "kentkt@csc.jp",
        "time": "Sat Aug 24 16:27:50 2024 +0200"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Sat Aug 24 16:27:50 2024 +0200"
      },
      "message": "patch 9.1.0693: Configure doesn\u0027t show result when not using python3 stable abi\n\nProblem:  Configure doesn\u0027t show result when not using python3 stable\n          abi (after v9.1.0691)\nSolution: Add back AC_MSG_RESULT() (Ken Takata)\n\nrelated: #15555\n\nSigned-off-by: Ken Takata \u003ckentkt@csc.jp\u003e\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "3f7024cf865bb9790988e24909ec3e37427555e7",
      "tree": "eceff5e3572b7837057c8e3887cb32b43c7a8eb2",
      "parents": [
        "7866d54ecc7ff47d5f3c48bc389dfd85759b9b65"
      ],
      "author": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Fri Aug 23 18:39:08 2024 +0200"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Fri Aug 23 18:39:08 2024 +0200"
      },
      "message": "patch 9.1.0691: python3: stable-abi may cause segfault on Python 3.11\n\nProblem:  python3: stable-abi may cause segfault on Python 3.11\n          (Audrius Kažukauskas, after v9.1.0668)\nSolution: do not enable the stable Python ABI by default, only when used\n          with --with-python3-stable-abi argument is given\n\nrelated: #15543\n\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "1c032e36a689932e58a2b3f0b0c890c773ca00d8",
      "tree": "a5e80c7a13b7e4856c484ec8cbba6abbd43e491a",
      "parents": [
        "3383ed7e2446a4d977250360c45c568296110615"
      ],
      "author": {
        "name": "Ken Takata",
        "email": "kentkt@csc.jp",
        "time": "Sun Aug 11 18:41:41 2024 +0200"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Sun Aug 11 18:41:41 2024 +0200"
      },
      "message": "patch 9.1.0669: if_python: stable python ABI not used by default\n\nProblem:  stable python ABI not used by default\nSolution: Enable stable python ABI v3.8 when building with python3/dyn\n          by default, update the default Python3 version to 3.8 for\n          MS-Windows (Ken Takata)\n\ncloses: #15470\nrelated: #15457\n\nSigned-off-by: Ken Takata \u003ckentkt@csc.jp\u003e\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "ce0ef910df837b9b961f007a0a35064cad85188b",
      "tree": "bd8b18ad704b6166904c78b706b1a4e359e3124b",
      "parents": [
        "f7f8f0b76dc6a3bf5d51825db65245221e5d265e"
      ],
      "author": {
        "name": "Christ van Willegen",
        "email": "cvwillegen@gmail.com",
        "time": "Thu Jun 20 23:41:59 2024 +0200"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Thu Jun 20 23:41:59 2024 +0200"
      },
      "message": "patch 9.1.0509: not possible to translate Vim script messages\n\nProblem:  not possible to translate Vim script messages\n          (RestorerZ)\nSolution: implement bindtextdomain() and gettext() to support Vim script\n          message translations (Christ van Willegen)\n\nfixes: #11637\ncloses: #12447\n\nSigned-off-by: Christ van Willegen \u003ccvwillegen@gmail.com\u003e\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "1acc67ac4412aa9a75d1c58ebf93f2b29585a960",
      "tree": "f86da5e0f9e888563b452ae5a93457bfc15af5d0",
      "parents": [
        "88c8c547d5fc380e5685c2b01ec564ccdf9b259a"
      ],
      "author": {
        "name": "youcai",
        "email": "omegacoleman@gmail.com",
        "time": "Thu May 30 19:31:36 2024 +0200"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Thu May 30 19:31:36 2024 +0200"
      },
      "message": "patch 9.1.0452: Configure checks for libelf unnecessarily\n\nProblem:  Configure checks for libelf unnecessarily\nSolution: Remove configure check (youcai)\n\ncloses: #14879\n\nSigned-off-by: youcai \u003comegacoleman@gmail.com\u003e\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "9c0ff47098ac20a8c93e8f91c0c8c72f9add3ce8",
      "tree": "81615ce160d9defa0054b0fae1b9ee2f1ca36cf1",
      "parents": [
        "58448e09be497a8abb595ae309b6edfbc8e0e05a"
      ],
      "author": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Sat May 11 20:18:21 2024 +0200"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Sat May 11 20:22:32 2024 +0200"
      },
      "message": "patch 9.1.0408: configure fails on Fedora when including perl\n\nProblem:  configure fails on Fedora when including perl\n          (chesheer-smile)\nSolution: Filter out -spec\u003d\u003cpath\u003e from $LIBS and $LDFLAGS to avoid\n          linking relocation errors for unrelated autoconf tests.\n\ncloses: #14526\n\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "87319173baf7b60b2e21e7d254a46623c53c5899",
      "tree": "57ef4b30c8fcb09ff8b400c42852a21d023014de",
      "parents": [
        "fcbefe74f1619dfd925033d83a6d233c686409d4"
      ],
      "author": {
        "name": "Vladimír Marek",
        "email": "vlmarek13@gmail.com",
        "time": "Thu Apr 11 21:54:34 2024 +0200"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Thu Apr 11 21:57:02 2024 +0200"
      },
      "message": "patch 9.1.0308: configure: msgfmt hardcoded\n\nProblem:  configure: msgfmt hardcoded (after v9.1.0173)\nSolution: use $MSGFMT instead of msgfmt in configure script,\n          regenerate the configure script\n          (Vladimír Marek)\n\nfixes: #14515\n\nSigned-off-by: Vladimír Marek \u003cvlmarek13@gmail.com\u003e\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "e498cafe74e9073a9f8134f04c22b61d7bc68894",
      "tree": "33fd95ffb3a3027e87e3913e2a6b47418b7febb5",
      "parents": [
        "9a660d2883f92b3a3761c964dc14363a8f70c8d8"
      ],
      "author": {
        "name": "RestorerZ",
        "email": "restorer@mail2k.ru",
        "time": "Tue Mar 12 22:11:36 2024 +0100"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Tue Mar 12 22:14:39 2024 +0100"
      },
      "message": "patch 9.1.0173: msgfmt ver. 0.22 forcibly converts text to UTF-8\n\nProblem:  msgfmt ver. 0.22 forcibly converts text to UTF-8\nSolution: use \u0027--no-convert\u0027 if msgfmt supports it. Add a configure\n          check for the msgfmt version (RestorerZ).\n\ncloses: #14163\n\nCo-authored-by: Christian Brabandt \u003ccb@256bit.org\u003e\nSigned-off-by: RestorerZ \u003crestorer@mail2k.ru\u003e\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "2f9aef42af94f6d68f37f6e9b8cb878e88ed12bf",
      "tree": "257b645217b37e1f1f830afbfd7c0a76e686f503",
      "parents": [
        "f0a9d65e0a1d693cdfa964aa72de5b93b4cacdea"
      ],
      "author": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Mon Feb 12 23:12:26 2024 +0100"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Mon Feb 12 23:14:19 2024 +0100"
      },
      "message": "patch 9.1.0104: Linking fails with -lto because of PERL_CFLAGS\n\nProblem:  Linking fails with -lto because of PERL_CFLAGS\n          (Zoltan Toth)\nSolution: Filter out -flto argument from Perl CFLAGS.\n\nfixes: #14012\n\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "549f8c0b4ebe47168c98f46c8b62b1eb33da7c9c",
      "tree": "8fbe7df196dc9bec4fe42256fea527805076c7c9",
      "parents": [
        "a8f7f92b56b42ea6a568eca889c48091f47fb429"
      ],
      "author": {
        "name": "Zdenek Dohnal",
        "email": "zdohnal@redhat.com",
        "time": "Thu Dec 14 20:22:49 2023 +0100"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Thu Dec 14 20:22:49 2023 +0100"
      },
      "message": "patch 9.0.2166: Memory leak in Configure Script when checking GTK\n\nProblem:  Memory leak in Configure Script when checking GTK\nSolution: Free the allocated memory\n\nIf the memory is not freed, GTK GUI VIM cannot be build with address\nsanitizer for debugging purposes - configure script will report missing\nGTK, because the testing file compilation fails due reported memory\nleak.\n\ncloses: #13672\n\nSigned-off-by: Zdenek Dohnal \u003czdohnal@redhat.com\u003e\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "1b1c9f272ddfa5f1d7d903cd9d59320cb97bfd4b",
      "tree": "c45b37137bc868a0b6f161f35bc0c047c5dccbd7",
      "parents": [
        "2b89afd5eb63864154d973e7991a56a53b87a767"
      ],
      "author": {
        "name": "Zdenek Dohnal",
        "email": "zdohnal@redhat.com",
        "time": "Thu Nov 02 20:19:06 2023 +0100"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Thu Nov 02 20:19:06 2023 +0100"
      },
      "message": "patch 9.0.2083: Perl: xsubpp may be in non-standard location\n\nProblem:  Perl: xsubpp may be in non-standard location\nSolution: Add --with-subpp configure option\n\nconfigure.ac: Add --with-xsubpp configure option\n\nSome environments (such as flatpaks) cannot count on xsubpp being\nin the common Perl directory, so a configure option should be used for\nclean solution.\n\ncloses: #13470\n\nSigned-off-by: Zdenek Dohnal \u003czdohnal@redhat.com\u003e\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "e379e21ddc2dc12abea9dcfd0708e27788bb568c",
      "tree": "f28aecdd9d8c462c21d4d73d482d06e5ba2b0b03",
      "parents": [
        "8c358e024fbc11895efec4b3e0e3777a6b88eba7"
      ],
      "author": {
        "name": "Illia Bobyr",
        "email": "illia.bobyr@gmail.com",
        "time": "Sat Sep 30 22:59:27 2023 +0200"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Sat Sep 30 22:59:27 2023 +0200"
      },
      "message": "patch 9.0.1966: configure prints stray 6 when checking libruby\n\nProblem:  configure prints stray 6 when checking libruby\nSolution: redirect stdout to dev/null\n\nconfigure: Do not print \"6\" when checking for libruby\n\n`expr` will print the matched string length to the standard output.\nCurrent `configure` output looks like this:\n\n```\nchecking Ruby header files...  /usr/include/ruby-3.1.0\n6\n```\n\nThe script really only cares about `expr` exit code.\n\ncloses: #13234\n\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\nCo-authored-by: Illia Bobyr \u003cillia.bobyr@gmail.com\u003e\n"
    },
    {
      "commit": "8c358e024fbc11895efec4b3e0e3777a6b88eba7",
      "tree": "c1aa0c69e58c7e8da222e507a93de26b844ad096",
      "parents": [
        "a4dfbfed89e26a766e30cca62c18e710eec81c3f"
      ],
      "author": {
        "name": "Illia Bobyr",
        "email": "illia.bobyr@gmail.com",
        "time": "Sat Sep 30 22:57:19 2023 +0200"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Sat Sep 30 22:57:19 2023 +0200"
      },
      "message": "patch 9.0.1965: wrong auto/configure script\n\nProblem:  wrong auto/configure script\nSolution: regenerate with autoconf 2.71\n\nconfigure: sys/xattr.hs: Regenerate with autoconf 2.71\n\nIt seems that `auto/configure` update in\n\n  commit 6de4e58cf27a3bb6e81653ca63b77e29d1bb46f2 (tag: v9.0.1963)\n  Author: zeertzjq \u003czeertzjq@outlook.com\u003e\n  Date:   Sat Sep 30 14:19:14 2023 +0200\n\n      patch 9.0.1963: Configure script may not detect xattr\n\n      Problem:  Configure script may not detect xattr correctly\n      Solution: include sys/xattr instead of attr/xattr,\n                make Test_write_with_xattr_support() test\n                xattr feature correctly\n\n      This also applies to the Smack security feature, so change the include\n      and configure script for it as well.\n\n      closes: #13229\n\n      Signed-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n      Co-authored-by: zeertzjq \u003czeertzjq@outlook.com\u003e\n\nwas done manually, and missed an update to the generated variable name.\n\ncloses: #13235\n\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\nCo-authored-by: Illia Bobyr \u003cillia.bobyr@gmail.com\u003e\n"
    },
    {
      "commit": "6de4e58cf27a3bb6e81653ca63b77e29d1bb46f2",
      "tree": "f888ce152822399935cdc31dc1fe5eed594a9769",
      "parents": [
        "e085dfda5d8dde064b0332464040959479696d1c"
      ],
      "author": {
        "name": "zeertzjq",
        "email": "zeertzjq@outlook.com",
        "time": "Sat Sep 30 14:19:14 2023 +0200"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Sat Sep 30 14:22:07 2023 +0200"
      },
      "message": "patch 9.0.1963: Configure script may not detect xattr\n\nProblem:  Configure script may not detect xattr correctly\nSolution: include sys/xattr instead of attr/xattr,\n          make Test_write_with_xattr_support() test\n          xattr feature correctly\n\nThis also applies to the Smack security feature, so change the include\nand configure script for it as well.\n\ncloses: #13229\n\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\nCo-authored-by: zeertzjq \u003czeertzjq@outlook.com\u003e\n"
    },
    {
      "commit": "e085dfda5d8dde064b0332464040959479696d1c",
      "tree": "b9d30e78eb9335de6f2db790f888f0a9bd9514d7",
      "parents": [
        "1f025b01e29be6fce907d0379602b45031d6998f"
      ],
      "author": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Sat Sep 30 12:49:18 2023 +0200"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Sat Sep 30 12:49:18 2023 +0200"
      },
      "message": "patch 9.0.1962: No support for writing extended attributes\n\nProblem:  No support for writing extended attributes\nSolution: Add extended attribute support for linux\n\nIt\u0027s been a long standing issue, that if you write a file with extended\nattributes and backupcopy is set to no, the file will loose the extended\nattributes.\n\nSo this patch adds support for retrieving the extended attributes and\ncopying it to the new file. It currently only works on linux, mainly\nbecause I don\u0027t know the different APIs for other systems (BSD, MacOSX and\nSolaris).  On linux, this should be supported since Kernel 2.4 or\nsomething, so this should be pretty safe to use now.\n\nEnable the extended attribute support with normal builds.\n\nI also added it explicitly to the :version output as well as make it\nable to check using `:echo has(\"xattr\")`, to have users easily check\nthat this is available.\n\nIn contrast to the similar support for SELINUX and SMACK support (which\nalso internally uses extended attributes), I have made this a FEAT_XATTR\ndefine, instead of the similar HAVE_XATTR.\n\nAdd a test and change CI to include relevant packages so that CI can\ntest that extended attributes are correctly written.\n\ncloses: #306\ncloses: #13203\n\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "e7d79eb98a30c529cf53fb4852a71b9fd1336c41",
      "tree": "4cae8697f68ddc6222ed6e652727c6fbbd8ac0e7",
      "parents": [
        "ffb13674d1af1c90beb229867ec989e4fb232df3"
      ],
      "author": {
        "name": "Yee Cheng Chin",
        "email": "ychin.git@gmail.com",
        "time": "Sat Sep 16 13:38:26 2023 +0200"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Sat Sep 16 13:38:26 2023 +0200"
      },
      "message": "patch 9.0.1900: Configure script uses non-portable \u003d\u003d comparison\n\nProblem:  Configure script uses non-portable \u003d\u003d comparison\nSolution: Use the standard and portable \"\u003d\" instead\n\ncloses: #13095\ncloses: #13099\n\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\nCo-authored-by: Yee Cheng Chin \u003cychin.git@gmail.com\u003e\n"
    },
    {
      "commit": "a96d544bc355b1a6021feccf5fa2bd5659bc5269",
      "tree": "77f479636a2c2c6a95ce167175b443c40674cedc",
      "parents": [
        "e3b6c78ddc4acf238af35d7fac585e7ead27392f"
      ],
      "author": {
        "name": "Illia Bobyr",
        "email": "illia.bobyr@gmail.com",
        "time": "Wed Aug 30 16:30:15 2023 +0200"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Wed Aug 30 16:30:15 2023 +0200"
      },
      "message": "patch 9.0.1823: Autoconf 2.69 too old\n\nProblem:  Autoconf 2.69 too old\nSolution: Migrate to Autoconf 2.71\n\nAutoconf 2.69 is almost 10 years old.  And 2.71 is also a few years old\nas well.  Should be pretty well tested by now.  It brings a lot of\nimprovements and there seems to be an ongoing work on autoconf 2.72\nalready.\n\nThis change just addresses two minor changes `autoupdate` suggested, and\nthen `src/auto/configure` is regenerated by running\n\n  cd src\n  make AUTOCONF\u003dautoconf2.71 autoconf\n\ncloses: #12958\n\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\nCo-authored-by: Illia Bobyr \u003cillia.bobyr@gmail.com\u003e\n"
    },
    {
      "commit": "55460da26c2756ec057c03c7d8641eda861bfcd2",
      "tree": "1cd5571d754155ed894666f7f27ef421ba6f8df9",
      "parents": [
        "0e82b59df3fc12dc006e45e17222bcbb0462903f"
      ],
      "author": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Tue Aug 29 21:31:28 2023 +0200"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Tue Aug 29 21:31:28 2023 +0200"
      },
      "message": "patch 9.0.1818: dynamically linking perl is broken\n\nProblem:  dynamically linking perl is broken\nSolution: Fix all issues\n\nThis is a combination of several commits:\n\n1) Fix if_perl.xs not being able to build on all versions of Perl (5.30)\n\nThis fixes the dynamic builds of Perl interface. The Perl interface file\npreviously had to manually copy and paste misc inline functions verbatim\nfrom the Perl headers, because we defined `PERL_NO_INLINE_FUNCTIONS`\nwhich prevents us form getting some function definitions. The original\nreason we defined it was because those inline functions would reference\nPerl functions that would cause linkage errors.\n\nThis is a little fragile as every time a new version of Perl comes out,\nwe inevitably have to copy over new versions of inline functions to our\nfile, and it\u0027s also easy to miss updates to existing functions.\n\nInstead, remove the `PERL_NO_INLINE_FUNCTIONS` define, remove the manual\ncopy-pasted inline functions. Simply add stub implementations of the\nmissing linked functions like `Perl_sv_free2` and forward them to the\nDLL version of the function at runtime. There are only a few functions\nthat need this treatment, and it\u0027s a simple stub so there is very low\nupkeep compared to copying whole implementations to the file.\n\nAlso, fix the configure script so that if we are using dynamic linkage,\nwe don\u0027t pass `-lperl` to the build flags, to avoid accidental external\nlinkage while using dynamic builds. This is similar to how Python\nintegration works.\n\n2) Fix GIMME_V deprecation warnings in Perl 5.38\n\nJust use GIMME_V, and only use GIMME when using 5.30 to avoid needing to\nlink Perl_block_gimme. We could provide a stub like the other linked\nfunctions like Perl_sv_free2, but simply using GIMME is the simplest and\nit has always worked before.\n\n3) Fix Perl 5.38 issues\n\nFix two issues:\n\n3.1. Perl 5.38 links against more functions in their inline headers, so we\n   need to stub them too.\n\n3.2. Perl 5.38 made Perl_get_context an inline function, but *only* for\n   non-Windows build. Fix that. Note that this was happening in Vim\n   currently, as it would build, but fail to run Perl code at runtime.\n\n4) Fix Perl 5.36/5.38 when thread local is used\n\nPerl 5.36 introduced using `_Thread_local` for the current context,\nwhich causes inline functions to fail. Create a stub\n`PL_current_context` thread local variable to satisfy the linker for\ninlined functions. Note that this is going to result in a different\n`PL_current_context` being used than the one used in the library, but so\nfar from testing it seems to work.\n\n5) Add docs for how to build Perl for dynamic linking to work\n\ncloses: #12827\ncloses: #12914\n\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\nCo-authored-by: Yee Cheng Chin \u003cychin.git@gmail.com\u003e\n"
    },
    {
      "commit": "0e82b59df3fc12dc006e45e17222bcbb0462903f",
      "tree": "c0291d677190ba3ed35085bf719e094ad1021206",
      "parents": [
        "bddc6adca647f7f20ff6e1b7913e394d09c5eb23"
      ],
      "author": {
        "name": "Illia Bobyr",
        "email": "illia.bobyr@gmail.com",
        "time": "Tue Aug 29 21:16:29 2023 +0200"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Tue Aug 29 21:17:50 2023 +0200"
      },
      "message": "patch 9.0.1817: configure: using obsolete AC_HEADER_STDC\n\nProblem:  configure: using obsolete AC_HEADER_STDC\nSolution: Remove it and re-create configure\n\ncloses: #12949\n\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\nCo-authored-by: Illia Bobyr \u003cillia.bobyr@gmail.com\u003e\n"
    },
    {
      "commit": "bddc6adca647f7f20ff6e1b7913e394d09c5eb23",
      "tree": "f70c92dd5239c466e3255d036e36b9169286cc15",
      "parents": [
        "a5eb6785efcc36a97e071722408acc20d6c6e606"
      ],
      "author": {
        "name": "ichizok",
        "email": "gclient.gaap@gmail.com",
        "time": "Tue Aug 29 20:54:32 2023 +0200"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Tue Aug 29 20:54:32 2023 +0200"
      },
      "message": "patch 9.0.1816: configure: sed uses non-portable regex\n\nProblem:  configure: sed uses non-portable regex\nSolution: use \u0027*\u0027 modifier instead of \u0027\\?\u0027 in regex\n          for luajit version detection\n\ncloses: #12954\n\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\nCo-authored-by: ichizok \u003cgclient.gaap@gmail.com\u003e\n"
    },
    {
      "commit": "74e1dada4199b2d9e68ccaafdb7895c85b4b08f1",
      "tree": "0f6e566de334ebcb26182c6c9c73773f8a483fa4",
      "parents": [
        "f39842f148c9a8112432644b7f4a0129315de771"
      ],
      "author": {
        "name": "Illia Bobyr",
        "email": "illia.bobyr@gmail.com",
        "time": "Sun Aug 27 18:26:54 2023 +0200"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Sun Aug 27 18:26:54 2023 +0200"
      },
      "message": "patch 9.0.1794: autoconf: not correctly detecing include dirs\n\nProblem:  autoconf: not correctly detecing include dirs\nSolution: make use of python3 to generate includedirs\n\nconfigure: Python3: Use sysconfig for -I\n\nIt seems better to use tools provided by Python for determining the\ninclude directories, rather than construct them \"manually\".\n\nCurrent system is broken when using virtual environments for python\n3.11.4.  It used to work before, but now it detects a incorrect value\nfor `-I`.\n\nIt would probably make sense to switch to a similar logic for lib\nfolders, that is for the `-l` switch.  There are also\n`sysconfig.get_config_h_filename()` and\n`sysconfig.get_makefile_filename()`, that could replace more Python\nspecific logic in the current `configure{.ac,}`.\n\nsysconfig provides the necessary tools since Python 2.7.\n\ncloses: #12889\n\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\nCo-authored-by: Illia Bobyr \u003cillia.bobyr@gmail.com\u003e\n"
    },
    {
      "commit": "f39842f148c9a8112432644b7f4a0129315de771",
      "tree": "f62d5bad57fd1a73cdc4e2532656896ef5ab1b1c",
      "parents": [
        "d809c0a90387a23aed21ba37d0b65332fb5dafe7"
      ],
      "author": {
        "name": "Illia Bobyr",
        "email": "illia.bobyr@gmail.com",
        "time": "Sun Aug 27 18:21:23 2023 +0200"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Sun Aug 27 18:24:59 2023 +0200"
      },
      "message": "patch 9.0.1793: obsolete macros in configure script\n\nProblem:  obsolete macros in configure script\nSolution: Remove those and start moving to autoconf 2.71\n\nsrc/configure.ac: Remove obsolete macros\n\nThese macros are declared obsolete in autoconf 2.69, which is almost 10\nyears old by now:\n\n  https://www.gnu.org/software/autoconf/manual/autoconf-2.69/html_node/Obsolete-Macros.html\n\nThey generate warnings when in a subsequent upgrade to autoconf 2.71.\n\n`autoupdate` from autoupdate 2.71 suggests most of these changes, except\nthat it also adds obsolete warnings, that where individually checked and\nremoved.\n\nRegenerated `src/auto/configure` by running:\n\n  cd src\n  autoconf2.69 --output\u003dauto/configure configure.ac\n  sed --in-place --expression\u003d\u0027s@\u003econfig.log@\u003eauto/config.log@g\u0027 auto/configure\n\ncloses: #12888\n\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\nCo-authored-by: Illia Bobyr \u003cillia.bobyr@gmail.com\u003e\n"
    },
    {
      "commit": "d42f95bbfb5abcc78a0cc99f326691f328a2f33e",
      "tree": "1d4d1c8b4f6e53187deca55fb1cf4607c737f171",
      "parents": [
        "2f25e40b1f545f4aa38377f0c25effb112b5d1ef"
      ],
      "author": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Thu Aug 24 08:15:38 2023 +0200"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Thu Aug 24 08:15:38 2023 +0200"
      },
      "message": "patch 9.0.1787: Cannot build with latest luajit\n\nProblem:  Cannot build with latest luajit\nSolution: adjust sed regexp and don\u0027t expect \u0027-\u0027 in version output\n\ncloses: #12896\n\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "c13b3d1350b60b94fe87f0761ea31c0e7fb6ebf3",
      "tree": "1f412e31f87c23aa12978d1d03d01e40495567d7",
      "parents": [
        "20cd8699acf6dc1071ee1bf0686bccba7df2c57c"
      ],
      "author": {
        "name": "Yee Cheng Chin",
        "email": "ychin.git@gmail.com",
        "time": "Sun Aug 20 21:18:38 2023 +0200"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Sun Aug 20 21:18:38 2023 +0200"
      },
      "message": "patch 9.0.1776: No support for stable Python 3 ABI\n\nProblem:  No support for stable Python 3 ABI\nSolution: Support Python 3 stable ABI\n\nCommits:\n1) Support Python 3 stable ABI to allow mixed version interoperatbility\n\nVim currently supports embedding Python for use with plugins, and the\n\"dynamic\" linking option allows the user to specify a locally installed\nversion of Python by setting `pythonthreedll`. However, one caveat is\nthat the Python 3 libs are not binary compatible across minor versions,\nand mixing versions can potentially be dangerous (e.g. let\u0027s say Vim was\nlinked against the Python 3.10 SDK, but the user sets `pythonthreedll`\nto a 3.11 lib). Usually, nothing bad happens, but in theory this could\nlead to crashes, memory corruption, and other unpredictable behaviors.\nIt\u0027s also difficult for the user to tell something is wrong because Vim\nhas no way of reporting what Python 3 version Vim was linked with.\n\nFor Vim installed via a package manager, this usually isn\u0027t an issue\nbecause all the dependencies would already be figured out. For prebuilt\nVim binaries like MacVim (my motivation for working on this), AppImage,\nand Win32 installer this could potentially be an issue as usually a\nsingle binary is distributed. This is more tricky when a new Python\nversion is released, as there\u0027s a chicken-and-egg issue with deciding\nwhat Python version to build against and hard to keep in sync when a new\nPython version just drops and we have a mix of users of different Python\nversions, and a user just blindly upgrading to a new Python could lead to\nbad interactions with Vim.\n\nPython 3 does have a solution for this problem: stable ABI / limited API\n(see https://docs.python.org/3/c-api/stable.html). The C SDK limits the\nAPI to a set of functions that are promised to be stable across\nversions. This pull request adds an ifdef config that allows us to turn\nit on when building Vim. Vim binaries built with this option should be\nsafe to freely link with any Python 3 libraies without having the\nconstraint of having to use the same minor version.\n\nNote: Python 2 has no such concept and this doesn\u0027t change how Python 2\nintegration works (not that there is going to be a new version of Python\n2 that would cause compatibility issues in the future anyway).\n\n---\n\nTechnical details:\n\u003d\u003d\u003d\u003d\u003d\u003d\n\nThe stable ABI can be accessed when we compile with the Python 3 limited\nAPI (by defining `Py_LIMITED_API`). The Python 3 code (in `if_python3.c`\nand `if_py_both.h`) would now handle this and switch to limited API\nmode. Without it set, Vim will still use the full API as before so this\nis an opt-in change.\n\nThe main difference is that `PyType_Object` is now an opaque struct that\nwe can\u0027t directly create \"static types\" out of, and we have to create\ntype objects as \"heap types\" instead. This is because the struct is not\nstable and changes from version to version (e.g. 3.8 added a\n`tp_vectorcall` field to it). I had to change all the types to be\nallocated on the heap instead with just a pointer to them.\n\nOther functions are also simply missing in limited API, or they are\nintroduced too late (e.g. `PyUnicode_AsUTF8AndSize` in 3.10) to it that\nwe need some other ways to do the same thing, so I had to abstract a few\nthings into macros, and sometimes re-implement functions like\n`PyObject_NEW`.\n\nOne caveat is that in limited API, `OutputType` (used for replacing\n`sys.stdout`) no longer inherits from `PyStdPrinter_Type` which I don\u0027t\nthink has any real issue other than minor differences in how they\nconvert to a string and missing a couple functions like `mode()` and\n`fileno()`.\n\nAlso fixed an existing bug where `tp_basicsize` was set incorrectly for\n`BufferObject`, `TabListObject, `WinListObject`.\n\nTechnically, there could be a small performance drop, there is a little\nmore indirection with accessing type objects, and some APIs like\n`PyUnicode_AsUTF8AndSize` are missing, but in practice I didn\u0027t see any\ndifference, and any well-written Python plugin should try to avoid\nexcessing callbacks to the `vim` module in Python anyway.\n\nI only tested limited API mode down to Python 3.7, which seemes to\ncompile and work fine. I haven\u0027t tried earlier Python versions.\n\n2) Fix PyIter_Check on older Python vers / type##Ptr unused warning\n\nFor PyIter_Check, older versions exposed them as either macros (used in\nfull API), or a function (for use in limited API). A previous change\nexposed PyIter_Check to the dynamic build because Python just moved it\nto function-only in 3.10 anyway. Because of that, just make sure we\nalways grab the function in dynamic builds in earlier versions since\nthat\u0027s what Python eventually did anyway.\n\n3) Move Py_LIMITED_API define to configure script\n\nCan now use --with-python-stable-abi flag to customize what stable ABI\nversion to target. Can also use an env var to do so as well.\n\n4) Show +python/dyn-stable in :version, and allow has() feature query\n\nNot sure if the \"/dyn-stable\" suffix would break things, or whether we\nshould do it another way. Or just don\u0027t show it in version and rely on\nhas() feature checking.\n\n5) Documentation first draft. Still need to implement v:python3_version\n\n6) Fix PyIter_Check build breaks when compiling against Python 3.8\n\n7) Add CI coverage stable ABI on Linux/Windows / make configurable on Windows\n\nThis adds configurable options for Windows make files (both MinGW and\nMSVC). CI will also now exercise both traditional full API and stable\nABI for Linux and Windows in the matrix for coverage.\n\nAlso added a \"dynamic\" option to Linux matrix as a drive-by change to\nmake other scripting languages like Ruby / Perl testable under both\nstatic and dynamic builds.\n\n8) Fix inaccuracy in Windows docs\n\nPython\u0027s own docs are confusing but you don\u0027t actually want to use\n`python3.dll` for the dynamic linkage.\n\n9) Add generated autoconf file\n\n10) Add v:python3_version support\n\nThis variable indicates the version of Python3 that Vim was built\nagainst (PY_VERSION_HEX), and will be useful to check whether the Python\nlibrary you are loading in dynamically actually fits it. When built with\nstable ABI, it will be the limited ABI version instead\n(`Py_LIMITED_API`), which indicates the minimum version of Python 3 the\nuser should have, rather than the exact match. When stable ABI is used,\nwe won\u0027t be exposing PY_VERSION_HEX in this var because it just doesn\u0027t\nseem necessary to do so (the whole point of stable ABI is the promise\nthat it will work across versions), and I don\u0027t want to confuse the user\nwith too many variables.\n\nAlso, cleaned up some documentation, and added help tags.\n\n11) Fix Python 3.7 compat issues\n\nFix a couple issues when using limited API \u003c 3.8\n\n- Crash on exit: In Python 3.7, if a heap-allocated type is destroyed\n  before all instances are, it would cause a crash later. This happens\n  when we destroyed `OptionsType` before calling `Py_Finalize` when\n  using the limited API. To make it worse, later versions changed the\n  semantics and now each instance has a strong reference to its own type\n  and the recommendation has changed to have each instance de-ref its\n  own type and have its type in GC traversal. To avoid dealing with\n  these cross-version variations, we just don\u0027t free the heap type. They\n  are static types in non-limited-API anyway and are designed to last\n  through the entirety of the app, and we also don\u0027t restart the Python\n  runtime and therefore do not need it to have absolutely 0 leaks.\n\n  See:\n  - https://docs.python.org/3/whatsnew/3.8.html#changes-in-the-c-api\n  - https://docs.python.org/3/whatsnew/3.9.html#changes-in-the-c-api\n\n- PyIter_Check: This function is not provided in limited APIs older than\n  3.8. Previously I was trying to mock it out using manual\n  PyType_GetSlot() but it was brittle and also does not actually work\n  properly for static types (it will generate a Python error). Just\n  return false. It does mean using limited API \u003c 3.8 is not recommended\n  as you lose the functionality to handle iterators, but from playing\n  with plugins I couldn\u0027t find it to be an issue.\n\n- Fix loading of PyIter_Check so it will be done when limited API \u003c 3.8.\n  Otherwise loading a 3.7 Python lib will fail even if limited API was\n  specified to use it.\n\n12) Make sure to only load `PyUnicode_AsUTF8AndSize` in needed in limited API\n\nWe don\u0027t use this function unless limited API \u003e\u003d 3.10, but we were\nloading it regardless. Usually it\u0027s ok in Unix-like systems where Python\njust has a single lib that we load from, but in Windows where there is a\nseparate python3.dll this would not work as the symbol would not have\nbeen exposed in this more limited DLL file. This makes it much clearer\nunder what condition is this function needed.\n\ncloses: #12032\n\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\nCo-authored-by: Yee Cheng Chin \u003cychin.git@gmail.com\u003e\n"
    },
    {
      "commit": "a055b441f556e4814a1838db687ac50f48617154",
      "tree": "58202df20b143c1c9f8d2a955ce1f8040991eb43",
      "parents": [
        "4924ad099f6b40505ebbd1a4a4056e9915d70141"
      ],
      "author": {
        "name": "Mike Gilbert",
        "email": "floppym@gentoo.org",
        "time": "Sun Aug 20 19:01:41 2023 +0200"
      },
      "committer": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Sun Aug 20 19:01:41 2023 +0200"
      },
      "message": "patch 9.0.1765: Error when cross-compiling Vim\n\nProblem:  Error when cross-compiling Vim\nSolution: use AC_CHECK_SIZEOF to find sizeof(wchar_t)\n\nThis fixes an error when cross compiling.\n\ncloses: #12828\n\nBug: https://bugs.gentoo.org/889430\nSigned-off-by: Mike Gilbert \u003cfloppym@gentoo.org\u003e\nSigned-off-by: Christian Brabandt \u003ccb@256bit.org\u003e\n"
    },
    {
      "commit": "00d07e7682d289c3afee9df557ae909b9b403f9c",
      "tree": "0844f7c818889c4d1d59ec8baa09fdf81af775a1",
      "parents": [
        "3ab3a864814f903da8a158c01820e4fbe1013c08"
      ],
      "author": {
        "name": "Rose",
        "email": "83477269+AtariDreams@users.noreply.github.com",
        "time": "Sat May 06 18:07:14 2023 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat May 06 18:07:14 2023 +0100"
      },
      "message": "patch 9.0.1517: MacOS: configure removes -O2 from $CFLAGS\n\nProblem:    MacOS: configure removes -O2 from $CFLAGS.\nSolution:   Only adjust $CFLAGS for gcc. (closes #12351)\n"
    },
    {
      "commit": "08210f8def4886b0cd04dd4bbebed719f0512315",
      "tree": "c04723d037a434c24ce1480a30f9ede304616f7a",
      "parents": [
        "ff6c230051ed2a2dbbbd517f51fe00c8ea27961b"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Apr 13 19:15:54 2023 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Apr 13 19:15:54 2023 +0100"
      },
      "message": "patch 9.0.1450: MacOS: building fails if clock_gettime() is not available\n\nProblem:    MacOS: building fails if clock_gettime() is not available.\nSolution:   Add a configure check for clock_gettime(). (closes #12242)\n"
    },
    {
      "commit": "01967f5b1042b375b38098eceaf31671902c8dbb",
      "tree": "fb0f636a7310e4028e22049158b54b87cf96c86d",
      "parents": [
        "ac6cd31afcbdd08bfa92ca33f7d4ce5773ba4353"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Apr 12 16:24:03 2023 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Apr 12 16:24:03 2023 +0100"
      },
      "message": "patch 9.0.1445: openSUSE: configure doesn\u0027t find the Motif library\n\nProblem:    openSUSE: configure doesn\u0027t find the Motif library. (Tony\n            Mechelynck)\nSolution:   Also search in /usr/lib64.\n"
    },
    {
      "commit": "b6ebe5af74a965d703eb8ee66a07c97b0bbe6e58",
      "tree": "2206b7d36e29e5c055e1852288077e28d6ae5f99",
      "parents": [
        "23a971da506249fc8388f06cd5c011b83406ac5c"
      ],
      "author": {
        "name": "Yee Cheng Chin",
        "email": "ychin.git@gmail.com",
        "time": "Wed Apr 05 18:24:50 2023 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Apr 05 18:24:50 2023 +0100"
      },
      "message": "patch 9.0.1441: MacOS: Python 3 using framework do not set dll name properly\n\nProblem:    MacOS: Python 3 using framework do not set dll name properly.\nSolution:   Use the framework prefix. (Yee Cheng Chin, closes #12189)\n"
    },
    {
      "commit": "869113f3765d51fc822a61b2ba53d339797c1231",
      "tree": "1065e50878d5828e5a12a4b8df649ed49d0ff68b",
      "parents": [
        "6ac2e4392a9d8b89c8824bf94a9da24a6f07c74f"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Mar 31 21:29:00 2023 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Mar 31 21:29:00 2023 +0100"
      },
      "message": "patch 9.0.1433: on some systems the Lua library is not found\n\nProblem:    On some systems the Lua library is not found.\nSolution:   Check if a subdirectory for Lua exists.  (closes #4475)\n"
    },
    {
      "commit": "4219698603f45bb710435f4c4fd8e03428aa2380",
      "tree": "099f137b05656d4fb7786708a9c50acc5abb8da1",
      "parents": [
        "90c2353365c5da40dec01b09e1f482983cf7f55d"
      ],
      "author": {
        "name": "Zdenek Dohnal",
        "email": "zdohnal@redhat.com",
        "time": "Wed Jan 18 16:09:51 2023 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jan 18 16:09:51 2023 +0000"
      },
      "message": "patch 9.0.1219: handling of FORTIFY_SOURCE flags doesn\u0027t match Fedora usage\n\nProblem:    Handling of FORTIFY_SOURCE flags doesn\u0027t match Fedora usage.\nSolution:   Adjust the \"sed\" patterns. (Zdenek Dohnal, closes #11847)\n"
    },
    {
      "commit": "870cd76283e003a0fa57449aa077f0d01a6a2d80",
      "tree": "88f568d87dce80823f06d5abe81944762c8a048b",
      "parents": [
        "c8ab30a349ee45ef6c3b6af8ee5ff53d2f7bf891"
      ],
      "author": {
        "name": "Zdenek Dohnal",
        "email": "zdohnal@redhat.com",
        "time": "Mon Jan 09 13:18:08 2023 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Jan 09 13:18:08 2023 +0000"
      },
      "message": "patch 9.0.1162: configure does not handle all FORTIFY_SOURCE variants\n\nProblem:    Configure does not handle all FORTIFY_SOURCE variants.\nSolution:   Also handle Fedora\u0027s default FORTIFY_SOURCE flags. (Zdenek Dohnal,\n            closes #11794)\n"
    },
    {
      "commit": "254480736f7db3667c7b84873efb49c2cb1d385f",
      "tree": "bb553eea78434d15a688dd3c6321b81f13e9f4a2",
      "parents": [
        "c4b3f6477c4956c49da1277d55e6915ea7e6a39e"
      ],
      "author": {
        "name": "Evan Miller",
        "email": "emmiller@gmail.com",
        "time": "Fri Dec 30 10:42:23 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Dec 30 10:42:23 2022 +0000"
      },
      "message": "patch 9.0.1110: build fails on Mac OS X 10.4/10.5\n\nProblem:    Build fails on Mac OS X 10.4/10.5 .\nSolution:   Check if the dispatch/dispatch.h header exists. (Evan Miller,\n            closes #11746)\n"
    },
    {
      "commit": "1d822afaf66a84fab71c84521fd92db11d2c8925",
      "tree": "622070ab8e435d4cd4556d473a6a782f2a530668",
      "parents": [
        "96cbbe29debba25d7eec8d01955c5ac01f5c420d"
      ],
      "author": {
        "name": "Zdenek Dohnal",
        "email": "zdohnal@redhat.com",
        "time": "Wed Nov 23 12:06:08 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Nov 23 12:06:08 2022 +0000"
      },
      "message": "patch 9.0.0928: using Ruby LDFLAGS may cause build problems\n\nProblem:    Using Ruby LDFLAGS may cause build problems.\nSolution:   Do not add Ruby LDFLAGS to Vim\u0027s LDFLAGS. (Zdenek Dohnal,\n            closes #11592)\n"
    },
    {
      "commit": "f8ea10677d007befbb6f24cd20f35c3bf71c1296",
      "tree": "d1efff11952a2e2904c64513b87dc4422d807612",
      "parents": [
        "25b8420c2b4c65f8e0292fbc006db1ea12d4b1c6"
      ],
      "author": {
        "name": "Sam James",
        "email": "sam@gentoo.org",
        "time": "Sat Nov 05 15:13:50 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Nov 05 15:13:50 2022 +0000"
      },
      "message": "patch 9.0.0834: warning for missing return type\n\nProblem:    Warning for missing return type.\nSolution:   Add \"int\". (San James, closes #11496)\n"
    },
    {
      "commit": "25f3a146a0e4c731b8608f4cfbbfdf7a71b2d05e",
      "tree": "cad6a29143eba1f1245e3e74a85813e1a44741f5",
      "parents": [
        "bf499c0e6f30a94fe062f83ea0190f93178d0d74"
      ],
      "author": {
        "name": "Martin Tournoij",
        "email": "martin@arp242.net",
        "time": "Sat Oct 08 19:26:41 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Oct 08 19:26:41 2022 +0100"
      },
      "message": "patch 9.0.0700: there is no real need for a \"big\" build\n\nProblem:    There is no real need for a \"big\" build.\nSolution:   Move common features to \"normal\" build, less often used features\n            to the \"huge\" build. (Martin Tournoij, closes #11283)\n"
    },
    {
      "commit": "7904fa420eb577274c4c3711295240100167d495",
      "tree": "a38ab30cb4c947c2ebba45cd7ed711ffd2e719a7",
      "parents": [
        "4ba5f1dab656103e8f4a4505452d1816b9e83c1e"
      ],
      "author": {
        "name": "Martin Tournoij",
        "email": "martin@arp242.net",
        "time": "Tue Oct 04 16:28:45 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Oct 04 16:28:45 2022 +0100"
      },
      "message": "patch 9.0.0657: too many #ifdefs\n\nProblem:    Too many #ifdefs.\nSolution:   Graduate the +cmdwin feature.  Now the tiny and small builds are\n            equal, drop the small build.  (Martin Tournoij, closes #11268)\n"
    },
    {
      "commit": "236ccbf6f8a671a45b773de4b34558ecfdf9ac02",
      "tree": "fac31b8fb9058b835b5bcbcbe6a82b59fa608f92",
      "parents": [
        "daaa3d9965d74faf1f75aea218822bfb7ba687a7"
      ],
      "author": {
        "name": "K.Takata",
        "email": "kentkt@csc.jp",
        "time": "Thu Sep 22 16:12:06 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Sep 22 16:12:06 2022 +0100"
      },
      "message": "patch 9.0.0546: supporting Ruby 1.8 makes code complicated\n\nProblem:    Supporting Ruby 1.8 makes code complicated.\nSolution:   Drop Ruby 1.8 support, it is ancient. (Ken Takata, closes #11195)\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": "5f6cae8b8a49c435556e32f84d067cd0b4d28e4c",
      "tree": "afbbc0a280a61666137fdb031f71e69f339d6a37",
      "parents": [
        "2ecbe53f452e92e941aff623f6a0b72f80e43d07"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jul 30 11:00:50 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jul 30 11:00:50 2022 +0100"
      },
      "message": "patch 9.0.0108: configure check for timer_create may give wrong error\n\nProblem:    Configure check for timer_create may give wrong error.\nSolution:   Give a warning instead of an error.\n"
    },
    {
      "commit": "efffa5360ebb2b6919c5eb1998c5df4c8849a407",
      "tree": "37f292fbd4b5edf02bc1d65e5ca4ade5f02cb5ac",
      "parents": [
        "a6f9e300161f4cb54713da22f65b261595e8e614"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jul 28 22:39:54 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jul 28 22:39:54 2022 +0100"
      },
      "message": "patch 9.0.0103: if running configure with cached results -lrt may be missing\n\nProblem:    If running configure with cached results -lrt may be missing.\nSolution:   Use two cache variables, one without and one with -lrt.\n            (closes #10799)  Swap checks to avoid adding -lrt unnecessarily.\n"
    },
    {
      "commit": "5748b7f2c8a8e8e6d12b3e2531df5c0261fd8f3b",
      "tree": "eee4fa7fd4a72d8c407f3c4e9cdae99437084b8c",
      "parents": [
        "5f30e26f6946f0d0396499f91fbcfaa9d1f8acf7"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jul 28 12:09:04 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jul 28 12:09:04 2022 +0100"
      },
      "message": "patch 9.0.0098: missing include file in timer_create configure check\n\nProblem:    missing include file in timer_create configure check.\nSolution:   Inlucde stdlib.h.\n"
    },
    {
      "commit": "509695c1c3f5c94bf4b1de5dd0fc11202804f638",
      "tree": "4f5aa1c4f20d6e2fd2bf6fe7d1f3459a2553f0a4",
      "parents": [
        "c963ec31a0c293d629e40cb082d4bfb1651def49"
      ],
      "author": {
        "name": "Richard Purdie",
        "email": "richard.purdie@linuxfoundation.org",
        "time": "Sun Jul 24 20:48:00 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jul 24 20:48:00 2022 +0100"
      },
      "message": "patch 9.0.0065: cross-compiling doesn\u0027t work because of timer_create check\n\nProblem:    Cross-compiling doesn\u0027t work because of timer_create check.\nSolution:   Use AC_CACHE_CHECK(). (Richard Purdie, closes #10777)\n"
    },
    {
      "commit": "f2ce76a8c0290af35e434e38cfe889ed0fec4c6a",
      "tree": "5f8578842b58e81a7ced9adbf27259d344adbd88",
      "parents": [
        "95afae6d1760b2efcc4968dbd3784799d24e9fdf"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jul 02 11:40:40 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jul 02 11:40:40 2022 +0100"
      },
      "message": "patch 9.0.0023: on Solaris timer_create() exists but does not work\n\nProblem:    On Solaris timer_create() exists but does not work.\nSolution:   Adjust the configure check to run the test program.\n            (closes #10647)\n"
    },
    {
      "commit": "0f0d3a7fb6473760b6f6679e3c8a81376220c869",
      "tree": "12d171efbb65972a7283cee80fc8a10124c9fd39",
      "parents": [
        "3efd65c55710cbd2db7569096554bc92f4a66a43"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 19 18:02:05 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 19 18:02:05 2022 +0100"
      },
      "message": "patch 8.2.5135: running configure gives warnings for main() return type\n\nProblem:    Running configure gives warnings for main() return type.\nSolution:   Specify \"int\" return type.  Avoid a few more warnings.\n"
    },
    {
      "commit": "e530395c2cd261d598094dc9ea785e90a753c5f1",
      "tree": "63ae1125e87818c6c3bdba7e349d270f34bcd6ce",
      "parents": [
        "c5382b667ac4b69ddff5b5bc562386843bc9c07b"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 19 17:05:47 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 19 17:05:47 2022 +0100"
      },
      "message": "patch 8.2.5131: timeout implementation is not optimal\n\nProblem:    Timeout implementation is not optimal.\nSolution:   Further improvements for timeouts.  Add a test for searchpair()\n            timeout. (partly by Paul Ollis)\n"
    },
    {
      "commit": "99c48fe9974b8d70ca33674658a3da722b0d6466",
      "tree": "dffbad61a62ddf128e2c258fc24bd96c5ccaf4bb",
      "parents": [
        "de1d7343794a950bd624043901ce7b3caca3c49b"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 05 22:05:19 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 05 22:05:19 2022 +0100"
      },
      "message": "patch 8.2.5061: C89 requires signal handlers to return void\n\nProblem:    C89 requires signal handlers to return void.\nSolution:   Drop RETSIGTYPE and hard-code a void return value.\n"
    },
    {
      "commit": "de1d7343794a950bd624043901ce7b3caca3c49b",
      "tree": "9fdb236b5d26ee67f441cc87af14d4a290361bca",
      "parents": [
        "1004b3d970f19964816eedf89d3ba7aa9416ed24"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 05 20:03:17 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 05 20:03:17 2022 +0100"
      },
      "message": "patch 8.2.5060: running configure fails\n\nProblem:    Running configure fails.\nSolution:   Remove line break.\n"
    },
    {
      "commit": "1004b3d970f19964816eedf89d3ba7aa9416ed24",
      "tree": "743c94d1bf5c379c8d9aca21e22336f04797dd60",
      "parents": [
        "e3a529bc877909a9eccf792461050b4f6737ed33"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 05 19:51:55 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 05 19:51:55 2022 +0100"
      },
      "message": "patch 8.2.5059: autoconf 2.71 produces many obsolete warnings\n\nProblem:    Autoconf 2.71 produces many obsolete warnings.\nSolution:   Replace obsolete macros with non-obsolete ones, where the\n            functionality does not change. (issue #10528)\n"
    },
    {
      "commit": "6574577cacd393ab7591fc776ea060eebc939e55",
      "tree": "f583ca9957280e7086b8d14ef44127302829fd40",
      "parents": [
        "1d97db3d987c05af88c30ad20f537bcf3024f9c1"
      ],
      "author": {
        "name": "Paul Ollis",
        "email": "paul@cleversheep.org",
        "time": "Sun Jun 05 16:55:54 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 05 16:55:54 2022 +0100"
      },
      "message": "patch 8.2.5057: using gettimeofday() for timeout is very inefficient\n\nProblem:    Using gettimeofday() for timeout is very inefficient.\nSolution:   Set a platform dependent timer. (Paul Ollis, closes #10505)\n"
    },
    {
      "commit": "b471690fad5f40f74aca488b13669641fb2b9de1",
      "tree": "798a6e73aa2dc40e44e357d2a736639731809a3e",
      "parents": [
        "188639d75c363dffaf813e8e2209f7350ad1e871"
      ],
      "author": {
        "name": "Kelvin Lee",
        "email": "kiyolee@gmail.com",
        "time": "Mon Apr 04 17:20:01 2022 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Apr 04 17:20:01 2022 +0100"
      },
      "message": "patch 8.2.4686: configure doesn\u0027t find the Motif library with Cygwin\n\nProblem:    Configure doesn\u0027t find the Motif library with Cygwin.\nSolution:   Check for libXm.dll.a. (Kelvin Lee, closes #10077)\n"
    },
    {
      "commit": "e2adcf397421d47440d135a97765e1dbe7f824fe",
      "tree": "62e54238c6a23b2f932fc9dd4e3c071219cc4bf7",
      "parents": [
        "fb43cfc2c6a003b850343bfd27cb3059c734d7d4"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Mar 12 11:57:25 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Mar 12 11:57:25 2022 +0000"
      },
      "message": "patch 8.2.4549: cannot build with Motif and editres\n\nProblem:    Cannot build with Motif and editres. (Tony Mechelynck)\nSolution:   Fix configure mistake.\n"
    },
    {
      "commit": "f52fac2ed94e6acc9612103c6c6f55660cc695c8",
      "tree": "1b31f05c3621579b0f47e4d4b95183bce02de345",
      "parents": [
        "0a4e098f32f3c83273ff63c02c8d0d5cdd7c897c"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Mar 11 16:01:26 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Mar 11 16:01:26 2022 +0000"
      },
      "message": "patch 8.2.4547: the neXTaw GUI is old and does not work well\n\nProblem:    The neXTaw GUI is old and does not work well.\nSolution:   Remove the neXTaw GUI from configure to find out who still wants\n            support for this GUI.\n"
    },
    {
      "commit": "0b40d086b337f14fdd0dbc035988ffb0aec8ce5f",
      "tree": "e20ea72f531fcef293dcddd49a2756e1a5d25ff9",
      "parents": [
        "8acb9cc6209768ca7ec75c9f7af8c389312ea8d6"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Mar 08 13:32:37 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Mar 08 13:32:37 2022 +0000"
      },
      "message": "patch 8.2.4527: the Athena GUI is old and does not work well\n\nProblem:    The Athena GUI is old and does not work well.\nSolution:   Remove the Athena GUI from configure to find out who still wants\n            support for this GUI.\n"
    },
    {
      "commit": "1247126956c2ba666048b2bf99630eef7495e98e",
      "tree": "0611422f3cba2c572e92efb3661925b32d7ccfbb",
      "parents": [
        "64283d5e1f5487e2dbaa17d478e6eae040daa064"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jan 18 11:11:25 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jan 18 11:11:25 2022 +0000"
      },
      "message": "patch 8.2.4129: building with +sound but without +eval fails\n\nProblem:    Building with +sound but without +eval fails. (Dominique Pellé)\nSolution:   Disable canberra in tiny and small build. (closes #9548)\n"
    },
    {
      "commit": "67ffb417861a90fd2c1b215a42fd230272ed94cb",
      "tree": "25b56d4048bbabe4d6c4aef70517d686985718ac",
      "parents": [
        "748b308eebe8d8860888eb27da08333f175d547d"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jan 08 13:36:57 2022 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jan 08 13:36:57 2022 +0000"
      },
      "message": "patch 8.2.4039: the xdiff library is linked in even when not used\n\nProblem:    The xdiff library is linked in even when not used.\nSolution:   Use configure to decide whether xdiff object files are included.\n"
    },
    {
      "commit": "8bb3fe4d4dcd27c02e903f6772fdc8fe2e9eba70",
      "tree": "8580fd12601cf226570353cd10d9f2ab2e24abc5",
      "parents": [
        "d9da86e94ea8dbaa056270a666892945c40a6674"
      ],
      "author": {
        "name": "ichizok",
        "email": "gclient.gaap@gmail.com",
        "time": "Tue Dec 28 15:51:45 2021 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Dec 28 15:51:45 2021 +0000"
      },
      "message": "patch 8.2.3922: cannot build with dynamic Ruby 3.1\n\nProblem:    Cannot build with dynamic Ruby 3.1.\nSolution:   Add \"_EXTRA\" variables for CI.  Add missing functions. (Ozaki\n            Kiichi, closes #9420)\n"
    },
    {
      "commit": "6840a0ffe8d27a8773a500ba17550cdf2ad12cbc",
      "tree": "4a6a52260c5f7a9a3915312bedf2bc619fe2d5f4",
      "parents": [
        "80d60910ff493f7b8ea52156e4c7df7e70a348c6"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Dec 13 20:37:59 2021 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Dec 13 20:37:59 2021 +0000"
      },
      "message": "patch 8.2.3800: when cross compiling the output of \"uname\" cannot be set\n\nProblem:    When cross compiling the output of \"uname\" cannot be set. (Ben\n            Reeves)\nSolution:   Use cache variables. (closes #9338)\n"
    },
    {
      "commit": "b3a29558eedac9979f5276ae914934b7b7cbe06b",
      "tree": "574ec81a2f889213a6d049e5a6726ac8f30185fb",
      "parents": [
        "777175b0df8c5ec3cd30d19a2e887e661ac209c8"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Nov 19 11:28:04 2021 +0000"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Nov 19 11:28:04 2021 +0000"
      },
      "message": "patch 8.2.3620: memory leak reported in libtlib\n\nProblem:    Memory leak reported in libtlib.\nSolution:   Call del_curterm() when cleaning up memory.  Rename term.h to\n            termdefs.h to avoid a name clash.\n"
    },
    {
      "commit": "0a7984af5601323fae7b3398f05a48087db7b767",
      "tree": "22efd296a4db294d3e9288c5d2085c1a5679ae82",
      "parents": [
        "340dd0fbe462a15a9678cfba02085b4adcc45f02"
      ],
      "author": {
        "name": "Leah Neukirchen",
        "email": "leah@vuxu.org",
        "time": "Thu Oct 14 21:27:55 2021 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Oct 14 21:27:55 2021 +0100"
      },
      "message": "patch 8.2.3510: changes are only detected with one second accuracy\n\nProblem:    Changes are only detected with one second accuracy.\nSolution:   Use the nanosecond time if possible.  (Leah Neukirchen,\n            closes #8873, closes #8875)\n"
    },
    {
      "commit": "e2982d691186c8a9b16ecc8d831d2472088c8ed8",
      "tree": "233a1c1a37dd0bab076f4adac3bb7d2f5dd98cf1",
      "parents": [
        "78e0fa4cf4fcd563c0bc8c87afa54d4f5dc22020"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Oct 06 11:27:21 2021 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Oct 06 11:27:21 2021 +0100"
      },
      "message": "patch 8.2.3483: #ifdef for using sysinfo() is incomplete\n\nProblem:    #ifdef for using sysinfo() is incomplete.\nSolution:   Also check for HAVE_SYSINFO. Make autoconf check use TRY_LINK.\n            (closes #8952)\n"
    },
    {
      "commit": "6b9efdde7828b3317b64f38bd90fb5a784a654c0",
      "tree": "ad79a11d3cd6a743b93f638bdea1972ac874717d",
      "parents": [
        "0325d3967ce7d0fd35bc1472fd476b911b895b76"
      ],
      "author": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Thu Sep 09 17:14:50 2021 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Sep 09 17:14:50 2021 +0200"
      },
      "message": "patch 8.2.3420: _REENTRANT defined more than once\n\nProblem:    _REENTRANT defined more than once.\nSolution:   Fix configure script. (Christian Brabandt, closes #8852)\n"
    },
    {
      "commit": "3ae5fc9a6a881e0be381e4cc70080ac5908d7520",
      "tree": "df2029485a6aedd48af0565556cd95d7e1eb3b3b",
      "parents": [
        "ec1b0968aa90d408a79b5b5dca465f65e69753a1"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Sep 06 18:57:30 2021 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Sep 06 18:57:30 2021 +0200"
      },
      "message": "patch 8.2.3406: on some systems tests fail without _REENTRANT\n\nProblem:    On some systems tests fail without _REENTRANT. (Elimar\n            Riesebieter)\nSolution:   Add -D_REENTRANT in configure. (closes #7402)\n"
    },
    {
      "commit": "8ce3ca8961c5968a02de0a0b98f906695331f254",
      "tree": "ef8addee5f72349ad815b8412e958065892decc3",
      "parents": [
        "7237cab8f1d1a4391372cafdb57f2d97f3b32d05"
      ],
      "author": {
        "name": "ichizok",
        "email": "gclient.gaap@gmail.com",
        "time": "Wed Jun 23 15:41:52 2021 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jun 23 15:41:52 2021 +0200"
      },
      "message": "patch 8.2.3037: configure reports libcanberra when checking for libsodium\n\nProblem:    Configure reports libcanberra when checking for libsodium.\nSolution:   Adjust the message. (Ozaki Kiichi, closes #8435)\n"
    },
    {
      "commit": "f573c6e1ed58d46d694c802eaf5ae3662a952744",
      "tree": "9d3ccf4402f322b9d1baf130696a6b0e600ae693",
      "parents": [
        "208f0b48b2c616b29f377a1408290111ed2663f7"
      ],
      "author": {
        "name": "Christian Brabandt",
        "email": "cb@256bit.org",
        "time": "Sun Jun 20 14:02:16 2021 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 20 14:02:16 2021 +0200"
      },
      "message": "patch 8.2.3022: available encryption methods are not strong enough\n\nProblem:    Available encryption methods are not strong enough.\nSolution:   Add initial support for xchaha20. (Christian Brabandt,\n            closes #8394)\n"
    },
    {
      "commit": "31e299c08f250b126b2c2c0ecce12ee563b70fdc",
      "tree": "c6a5e5a7b431892a7f9cdefcb50b647ad13971c5",
      "parents": [
        "a42e6e0082a6d564dbfa55317d4a698ac12ae898"
      ],
      "author": {
        "name": "Zdenek Dohnal",
        "email": "zdohnal@redhat.com",
        "time": "Thu Jun 10 18:50:55 2021 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jun 10 18:50:55 2021 +0200"
      },
      "message": "patch 8.2.2970: Python configure check uses deprecated command\n\nProblem:    Python configure check uses deprecated command.\nSolution:   Use sysconfig instead of distutils if possible. (Zdenek Dohnal,\n            closes #8354)\n"
    },
    {
      "commit": "23c0192166760b0d73bd39252ca72e3cfe596f6e",
      "tree": "ed5100072cc4bc2f498bf0de571c49e65f31ec8a",
      "parents": [
        "5cf94577cf2045fec87344d7d89422fe6dfce62f"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri May 21 11:43:58 2021 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri May 21 11:43:58 2021 +0200"
      },
      "message": "patch 8.2.2876: configure cannot detect Python 3.10\n\nProblem:    Configure cannot detect Python 3.10.\nSolution:   Use sys.version_info. (closes #8233)\n"
    },
    {
      "commit": "761ead497feff5fd259c9f6ca76d184bb8755373",
      "tree": "52091b74397d9fb4e6fceb85154b26093f51e89a",
      "parents": [
        "847fe7d750001a46a09b97ad57286612d0be8100"
      ],
      "author": {
        "name": "Natanael Copa",
        "email": "ncopa@alpinelinux.org",
        "time": "Sat May 15 14:25:37 2021 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat May 15 14:25:37 2021 +0200"
      },
      "message": "patch 8.2.2852: configure can add --as-needed a second time\n\nProblem:    Configure can add --as-needed a second time.\nSolution:   Only add --as-needed if not already there.  (Natanael Copa,\n            closes #8189, closes #8181)\n"
    },
    {
      "commit": "16678eb50f7fcb7138600bd0364edb2c9def8cb8",
      "tree": "588cbbf5d817c9b8c8853f3d0014168f4c3666e9",
      "parents": [
        "d23f8bde5cd16b7752cc4a73da106673839ed824"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Apr 21 11:57:59 2021 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Apr 21 11:57:59 2021 +0200"
      },
      "message": "patch 8.2.2794: Linux users don\u0027t know how to get ncurses\n\nProblem:    Linux users don\u0027t know how to get ncurses.\nSolution:   Add the name of the package. (closes #8132)\n"
    },
    {
      "commit": "26f201345dadef2a048db5aea804f6c1b54f1a0b",
      "tree": "eb70595d25c390bacd9646302d277597043fc04c",
      "parents": [
        "6437475ffb421d6ac35572aa779ff24b70c5206b"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Apr 03 17:33:52 2021 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Apr 03 17:33:52 2021 +0200"
      },
      "message": "patch 8.2.2701: order of removing FORTIFY_SOURCE is wrong\n\nProblem:    Order of removing FORTIFY_SOURCE is wrong.\nSolution:   Use the more specific pattern first.\n"
    },
    {
      "commit": "3fa5e64e0ed55de718e48d0268edc360b2352bc1",
      "tree": "01208e9281aee3638b855dd495daa3a9ccb59727",
      "parents": [
        "ef38bcf05196ad7e795dd77b4922fa9db58fc310"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Apr 02 13:30:59 2021 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Apr 02 13:30:59 2021 +0200"
      },
      "message": "patch 8.2.2691: autoconf may mess up compiler flags\n\nProblem:    Autoconf may mess up compiler flags.\nSolution:   Handle removing FORTIFY_SOURCE a bit better. (Vladimir Lomov,\n            closes #8049)\n"
    },
    {
      "commit": "f52f0606ed9ea19bcfc3a8343af9958f2d99eaf7",
      "tree": "1fd2ccebf68aca966d10acdacf36a99badea66c5",
      "parents": [
        "c23555de346c53f8f6c478635c2d9e5f2992dd7f"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Mar 10 21:26:37 2021 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Mar 10 21:26:37 2021 +0100"
      },
      "message": "patch 8.2.2586: process id may be invalid\n\nProblem:    Process id may be invalid.\nSolution:   Use sysinfo.uptime to check for recent reboot. (suggested by Hugo\n            van der Sanden, closes #7947)\n"
    },
    {
      "commit": "0e62a6742bca186624e97e2121c98ada30e009a0",
      "tree": "563c0f5cfa22a827bc37c5ef37c0d34863da9da1",
      "parents": [
        "1bd3cb201983859d86d644eef9e98cd3e9de7261"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Feb 25 17:17:56 2021 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Feb 25 17:17:56 2021 +0100"
      },
      "message": "patch 8.2.2550: signal stack size is wrong with latest glibc 2.34\n\nProblem:    Signal stack size is wrong with latest glibc 2.34.\nSolution:   Use sysconf(_SC_SIGSTKSZ) if available. (Zdenek Dohnal, closes\n            #7895)\n"
    },
    {
      "commit": "f272ae12ac064856b710046393d5bf9b1670076d",
      "tree": "e487bc36460d011a505d4772a23194d3317225bf",
      "parents": [
        "c03f5c677a1fba99d2379550ccf2391eaa43e2ac"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jan 31 19:52:50 2021 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jan 31 19:52:50 2021 +0100"
      },
      "message": "patch 8.2.2442: automatic GUI selection does not check for GTK 3\n\nProblem:    Automatic GUI selection does not check for GTK 3.\nSolution:   Make SKIP_GTK3 empty for automatic GUI support.  Set SKIP_GTK3 to\n            YES when checking for GTK2.\n"
    },
    {
      "commit": "4d8479b335e92a95b09fdee09309ea0df934cb9e",
      "tree": "5f5ac3dba1b0604f44646be4fdaa5ba3282167df",
      "parents": [
        "206c2a6e19475ab664ca4cea3df8e42313d3a4c5"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jan 31 14:36:06 2021 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jan 31 14:36:06 2021 +0100"
      },
      "message": "patch 8.2.2437: deprecation warnings with default configuration\n\nProblem:    Deprecation warnings with default configuration.\nSolution:   Add -Wno-deprecated-declarations.\n"
    },
    {
      "commit": "ebd211c8a39871c88189c8cda9e624eb30b300b3",
      "tree": "7ad76c97dc7154e476c8fc20e972eac48091b367",
      "parents": [
        "f8c6a1718007432812184c28495e8d27ee6c0395"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jan 30 19:33:36 2021 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jan 30 19:33:36 2021 +0100"
      },
      "message": "patch 8.2.2431: warning for -fno-strength-reduce with Clang 11\n\nProblem:    Warning for -fno-strength-reduce with Clang 11.\nSolution:   Adjust check for clang version number.\n"
    },
    {
      "commit": "67876de7bbc4254268d8180d68203b965e25ed95",
      "tree": "6448d5d04e0254aa3ac76779f1ac3e51a3f1831d",
      "parents": [
        "b0e6b513648db7035046613431a4aa9d71ef4653"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jan 12 20:51:24 2021 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jan 12 20:51:24 2021 +0100"
      },
      "message": "patch 8.2.2337: configure test for GTK only says \"no\"\n\nProblem:    Configure test for GTK only says \"no\". (Harm te Hennepe)\nSolution:   Hint that a -def package is needed. (closes #5229)\n"
    },
    {
      "commit": "864a28b6a6ae4f1a56e230be26bc6d13e3f8b3d9",
      "tree": "c1002abbe3cdce8579ff2a192ef46a0ee43ddbc3",
      "parents": [
        "41a834d1e3dbf9c8759737bcd6524159a9b93d2a"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Dec 28 21:36:56 2020 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Dec 28 21:36:56 2020 +0100"
      },
      "message": "patch 8.2.2241: Build with Ruby and clang may fail\n\nProblem:    Build with Ruby and clang may fail.\nSolution:   Adjust congigure and sed script. (Ozaki Kiichi, closes #7566)\n"
    },
    {
      "commit": "abcbb0e9ad43fc25077e1681528e72ddcbeed300",
      "tree": "7eee7ed7987bae4ae6697accbafdd2bb5218795c",
      "parents": [
        "1dcf55d4f1aa34b6d22001038d43f3e46407fa2e"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Dec 23 12:33:42 2020 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Dec 23 12:33:42 2020 +0100"
      },
      "message": "patch 8.2.2196: :version output has extra spaces in compile and link command\n\nProblem:    :version output has extra spaces in compile and link command.\nSolution:   Adjust QUOTESED. (closes #7505)\n"
    },
    {
      "commit": "a79a8944dade9115ccaa5a06a076dfb257e56c62",
      "tree": "c9fb0d221cb756bfd84f0427cb618ec5e7034fd2",
      "parents": [
        "8ea05de6aa1d133cba3381bcc36adf1736b08e00"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Dec 17 20:50:25 2020 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Dec 17 20:50:25 2020 +0100"
      },
      "message": "patch 8.2.2151: $dir not expanded when configure checks for moonjit\n\nProblem:    $dir not expanded when configure checks for moonjit.\nSolution:   Use double quotes instead of single quotes. (closes #7478)\n"
    },
    {
      "commit": "d5a986f460019a924627d79350552f446505cffb",
      "tree": "96feeb0596dd12fbbd41a0abe6d2a1e949e8c46f",
      "parents": [
        "41d6196e302af5f1a99aeeac587b5c662c410166"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Dec 06 21:11:31 2020 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Dec 06 21:11:31 2020 +0100"
      },
      "message": "patch 8.2.2104: build problem with Ruby 2.7\n\nProblem:    Build problem with Ruby 2.7.\nSolution:   Adjust function declarations. (Ozaki Kiichi, closes #7430)\n"
    },
    {
      "commit": "6cd42db9dc1251b052b97d47bafc063eacac1b3e",
      "tree": "c1702b00dc85a1303183f7136e098a346594c44f",
      "parents": [
        "f6c177ab3acda131d693f2cab0796df16da5b732"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Dec 04 18:09:54 2020 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Dec 04 18:09:54 2020 +0100"
      },
      "message": "patch 8.2.2089: libvterm test fails to build on Mac\n\nProblem:    Libvterm test fails to build on Mac.\nSolution:   Adjust configure to remove a space between -L and the path that\n            follows.\n"
    },
    {
      "commit": "ce7be3a0e6f19bc85990bb8fcfe5e208944777b4",
      "tree": "05f693e575be40068c6ced92e0fd72f8e2e49264",
      "parents": [
        "2472a74be4dedfeaff22314f31cf9787618163d1"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Nov 26 20:11:11 2020 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Nov 26 20:11:11 2020 +0100"
      },
      "message": "patch 8.2.2056: configure fails when building with implicit-function-declaration\n\nProblem:    Configure fails when building with the\n            \"implicit-function-declaration\" error enabled, specifically on Mac.\nSolution:   Declear the functions like in the source code. (suggestion by\n            Clemens Lang, closes #7380)\n"
    },
    {
      "commit": "588d241d44fc25ad4c5a635ee4fdeafdfcee0fde",
      "tree": "f8749347e00d7e05a1a8230fdab96e76f0ac8d6c",
      "parents": [
        "1bdae4032359081325578cc74739a0a097e008ff"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Oct 03 14:24:19 2020 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Oct 03 14:24:19 2020 +0200"
      },
      "message": "patch 8.2.1792: Configure does not recognize Racket 6.1+\n\nProblem:    Configure does not recognize Racket 6.1+.\nSolution:   Add a check for \"rktio\". (closes #7062)\n"
    },
    {
      "commit": "8b5866ded6036f7adece26b6d16962bbd2d47842",
      "tree": "a473e6759fd5a5dc6436a6502c0d51ddb077805a",
      "parents": [
        "7dfc5ce7cf4a7f63370d7dce2e13f7410ca0230a"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Sep 05 15:48:51 2020 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Sep 05 15:48:51 2020 +0200"
      },
      "message": "patch 8.2.1597: the channel source file is too big\n\nProblem:    The channel source file is too big.\nSolution:   Move job related code to a new source file.\n"
    },
    {
      "commit": "9d8bfae50fdaf5f5ec6307c60ebd1fad0927c6be",
      "tree": "18088c1843a58322b1295a226ad60c8fef88190f",
      "parents": [
        "a5d3841177e0b3545381c875d0b4b442f38784bd"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Sep 02 21:21:35 2020 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Sep 02 21:21:35 2020 +0200"
      },
      "message": "patch 8.2.1570: configure check for dirfd() does not work on HPUX\n\nProblem:    Configure check for dirfd() does not work on HPUX. (Michael Osipov)\nSolution:   Use AC_TRY_LINK instead of AC_TRY_COMPILE. (closes #6838)\n"
    },
    {
      "commit": "be7529e8890f6e8a656efee8bc60c125dc8c2002",
      "tree": "19b18027d96dc5692a7615070e28b943cbd80d94",
      "parents": [
        "c771908681bc9ee7689d83e09104cf4c6f984326"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Aug 13 21:05:39 2020 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Aug 13 21:05:39 2020 +0200"
      },
      "message": "patch 8.2.1442: outdated references to the Mac Carbon GUI\n\nProblem:    Outdated references to the Mac Carbon GUI.\nSolution:   Remove or update references. (Yee Cheng Chin, closes #6703)\n"
    },
    {
      "commit": "040f975fc1de14ada5e0a7324bb5e51e461be2dd",
      "tree": "9d768b3c622d6806853b7d884792788dba36d1d7",
      "parents": [
        "035d6e91bd83574cab5a913c5c3a924d9011696b"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Aug 11 23:08:48 2020 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Aug 11 23:08:48 2020 +0200"
      },
      "message": "patch 8.2.1424: Mac build fails\n\nProblem:    Mac build fails.\nSolution:   Adjust configure to not fall back to Athena.  Adjust some other\n            files.\n"
    },
    {
      "commit": "097148e849136b49052b1b5123c714fb1d74db9b",
      "tree": "d5b0bf4ce9b435be94de3ff7b87e85ae99c1e484",
      "parents": [
        "4301a729eabafee388aaf8465cf780d3f84cec95"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Aug 11 21:58:20 2020 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Aug 11 21:58:20 2020 +0200"
      },
      "message": "patch 8.2.1422: the Mac GUI implementation is outdated\n\nProblem:    The Mac GUI implementation is outdated and probably doesn\u0027t even\n            work.\nSolution:   Remove the Mac GUI code.  The MacVim project provides the\n            supported Vim GUI version.\n"
    },
    {
      "commit": "f4ee528086dcff2b8744544c440853f177956261",
      "tree": "3662005de667b49daabd017ae6aaf90364e1f049",
      "parents": [
        "9d489566815d7913afc5dfc2a772bacede3970fb"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jul 30 20:18:08 2020 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jul 30 20:18:08 2020 +0200"
      },
      "message": "patch 8.2.1327: Mac: configure can\u0027t find Tcl libraries\n\nProblem:    Mac: configure can\u0027t find Tcl libraries.\nSolution:   Adjust configure check. (closes #6575)\n"
    },
    {
      "commit": "bd7f7c123db58dd7f50f4d1391577686d2f1bcc6",
      "tree": "4e7a5662cd144de1f49cf9a012e7b469428c9466",
      "parents": [
        "461f21242a8fc7f2fe9d1c723741eeda45f0ac72"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jul 28 21:03:37 2020 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jul 28 21:03:37 2020 +0200"
      },
      "message": "patch 8.2.1310: configure with Xcode 12 fails to check for tgetent\n\nProblem:    Configure with Xcode 12 fails to check for tgetent.\nSolution:   Declare tgetent(). (Ozaki Kiichi, closes #6558)\n"
    },
    {
      "commit": "5289783e0b07cfc3f92ee933261ca4c4acdca007",
      "tree": "bc7ed964d15c31e956628af851194908a48686a2",
      "parents": [
        "810af5ea460eab820cc5899892067d8c242be688"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jul 02 22:50:37 2020 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jul 02 22:50:37 2020 +0200"
      },
      "message": "patch 8.2.1119: configure fails with Xcode 12 beta\n\nProblem:    Configure fails with Xcode 12 beta.\nSolution:   use \"return\" instead of \"exit()\". (Nico Weber, closes #6381)\n"
    },
    {
      "commit": "84cf6bd81bec93b49166cd48fccc7087fdbaa6fc",
      "tree": "63d744fbf9ac7db5246a60b48aa0396aaaa22c18",
      "parents": [
        "9af78769eeae0318e07aa8b6af4d6e2244481ca7"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jun 16 20:03:43 2020 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jun 16 20:03:43 2020 +0200"
      },
      "message": "patch 8.2.0988: getting directory contents is always case sorted\n\nProblem:    Getting directory contents is always case sorted.\nSolution:   Add sort options and v:collate. (Christian Brabandt, closes #6229)\n"
    },
    {
      "commit": "8f1dde5021d9623a951d1ccbc78cf1b1a55ccd7a",
      "tree": "1a2a9aee6f224db95e60a7ba401b2087cdbdb661",
      "parents": [
        "002bc79991286934a9593b80635c27d4238cdfc4"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jun 05 23:16:29 2020 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jun 05 23:16:29 2020 +0200"
      },
      "message": "patch 8.2.0910: Vim is not reproducibly buildable\n\nProblem:    Vim is not reproducibly buildable.\nSolution:   Use the $SOURCE_DATE_EPOCH environment variable in configure.\n            (James McCoy, closes #513)  Give a warning about using it.\n"
    }
  ],
  "next": "041c7107f23d3b49ab62c1d7e36af90421db8b63"
}
