From 5872bcb6e8dfc15d7a5c0aaaf94d8029f3a1fa3f Mon Sep 17 00:00:00 2001 From: Christian Brabandt Date: Tue, 19 Dec 2023 20:10:43 +0100 Subject: runtime(doc): Create Changelog until v9.0.2175 (#13728) Patch list created using: ``` git log --grep='^patch' --reverse --pretty='format:%D%gs%n%b' "v9.0.0000~1"..master |sed -e '/^Signed-off-by:.*/d' -e '/^\(closes\|fixes\)/d' -e 's/^tag: v/Patch /' ``` and then post-processed using vim. Signed-off-by: Christian Brabandt --- runtime/doc/version9.txt | 9590 +++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 9587 insertions(+), 3 deletions(-) diff --git a/runtime/doc/version9.txt b/runtime/doc/version9.txt index 09d6b3b7e3..ea3fc611cf 100644 --- a/runtime/doc/version9.txt +++ b/runtime/doc/version9.txt @@ -1,4 +1,4 @@ -*version9.txt* For Vim version 9.0. Last change: 2023 Aug 09 +*version9.txt* For Vim version 9.0. Last change: 2023 Dec 19 VIM REFERENCE MANUAL by Bram Moolenaar @@ -31755,9 +31755,9593 @@ Options: ~ 'smoothscroll' scroll by screen lines when 'wrap' is set 'splitkeep' determines scroll behavior for split windows +============================================================================== +PATCHES *patches-9.1* *bug-fixes-9.1* + *patches-after-9.0* + +The list of patches that got included since 9.0.0. This includes all the new +features, but does not include runtime file changes (syntax, indent, ftplugin, +documentation, etc.) + +Patch 9.0.0001 +Problem: Travis CI is no longer used. +Solution: Delete the Travis CI configuration. (Hugo Osvaldo Barrera, + closes #10636) + +Patch 9.0.0002 +Problem: Map functionality outside of map.c. +Solution: Move f_hasmapto() to map.c. Rename a function. (closes #10611) + +Patch 9.0.0003 +Problem: Functions are global while they could be local. +Solution: Add "static". Add a few tests. (Yegappan Lakshmanan, + closes #10612) + +Patch 9.0.0004 +Problem: Plural messages not translated properly. +Solution: Use ngettext() in a few more places. (Matvey Tarasov, + closes #10606) + +Patch 9.0.0005 +Problem: Hare files are not recognized. +Solution: Add a filetype pattern. (Hugo Osvaldo Barrera, closes #10630) + +Patch 9.0.0006 +Problem: Not all Visual Basic files are recognized. +Solution: Change detection of *.cls files. (Doug Kearns) + +Patch 9.0.0007 +Problem: No support for double, dotted and dashed underlines. +Solution: Add the termcap entries and highlight modes. (closes #9553) + +Patch 9.0.0008 +Problem: Cannot specify the variable name for "xxd -i". +Solution: Add the "-name" argument. (David Gow, closes #10599) + +Patch 9.0.0009 +Problem: Going past the end of a menu item with only modifier. +Solution: Check for NUL. + +Patch 9.0.0010 +Problem: Returning 0 for has('patch-9.0.0') is inconsistent. +Solution: Make it return 1. (closes #10640) + +Patch 9.0.0011 +Problem: Reading beyond the end of the line with put command. +Solution: Adjust the end mark position. + +Patch 9.0.0012 +Problem: Signature files not detected properly. +Solution: Add a function to better detect signature files. (Doug Kearns) + +Patch 9.0.0013 +Problem: Reproducing memory access errors can be difficult. +Solution: When testing, copy each line to allocated memory, so that valgrind + can detect accessing memory before and/or after it. Fix uncovered + problems. + +Patch 9.0.0014 +Problem: Missing part of the test override change. +Solution: Add the missing part. + +Patch 9.0.0015 +Problem: With EXITFREE defined terminal menus are not cleared. +Solution: Also clear terminal menus. Remove condition that is always true. + (closes #10641) + +Patch 9.0.0016 +Problem: Comparing line pointer for 'breakindent' is not reliable. +Solution: Make a copy of the line. + +Patch 9.0.0017 +Problem: Accessing memory beyond the end of the line. +Solution: Stop Visual mode when closing a window. + +Patch 9.0.0018 +Problem: Going over the end of the typahead. +Solution: Put a NUL after the typeahead. + +Patch 9.0.0019 +Problem: Timers test not run where possible. +Solution: Adjust platform checks. (closes #10645) + +Patch 9.0.0020 +Problem: With some completion reading past end of string. +Solution: Check the length of the string. + +Patch 9.0.0021 +Problem: Invalid memory access when adding word with a control character to + the internal spell word list. +Solution: Disallow adding a word with control characters or a trailing + slash. + +Patch 9.0.0022 +Problem: Spell test fails. +Solution: Expect new error is given. + +Patch 9.0.0023 +Problem: On Solaris timer_create() exists but does not work. +Solution: Adjust the configure check to run the test program. + (closes #10647) + +Patch 9.0.0024 +Problem: May access part of typeahead buf that isn't filled. +Solution: Check length of typeahead. + +Patch 9.0.0025 +Problem: Accessing beyond allocated memory when using the cmdline window in + Ex mode. +Solution: Use "*" instead of "'<,'>" for Visual mode. + +Patch 9.0.0026 +Problem: Accessing freed memory with diff put. +Solution: Bail out when diff pointer is no longer valid. + +Patch 9.0.0027 +Problem: The command line test is getting quite big. +Solution: Move command line window tests to a separate file. + +Patch 9.0.0028 +Problem: MS-Windows: tests fail if there is a stray "runtime" directory. +Solution: Only use a "runtime" directory if it contains "defaults.vim". + +Patch 9.0.0029 +Problem: The bitmaps/vim.ico file is not in the distribution. +Solution: Add it back to the distribution. Adjust the build rules to have + it end up in the right place. + +Patch 9.0.0030 +Problem: Matchfuzzy test depends on path of current directory. +Solution: Use fnamemodify() to remove the path. (Robin Becker, + closes #10650) + +Patch 9.0.0031 +Problem: of user command does not have correct verbose value. +Solution: Use the value from the command modifier. (closes #10651) + +Patch 9.0.0032 +Problem: In the quickfix window 'cursorline' overrules QuickFixLine + highlighting. +Solution: Combine the attributes. Add a test. (closes #10654) + +Patch 9.0.0033 +Problem: On a Belgian keyboard CTRL-[ does not work. +Solution: Handle GDK_KEY_dead_circumflex. (Anton Sharonov, closes #10658) + +Patch 9.0.0034 +Problem: Spell tests do not always clear the word list. +Solution: Clear the word list in TearDown(). (closes #10659) + +Patch 9.0.0035 +Problem: Spell dump may go beyond end of an array. +Solution: Limit the word length. + +Patch 9.0.0036 +Problem: 'fillchars' cannot have window-local values. +Solution: Make 'fillchars' global-local. (closes #5206) + +Patch 9.0.0037 +Problem: Build error. +Solution: Add missing change. + +Patch 9.0.0038 +Problem: 'listchars' test fails. +Solution: Use window-local value after setting the global value + +Patch 9.0.0039 +Problem: Not all systems have GDK_KEY_dead_circumflex. (Hisashi T Fujinaka) +Solution: Add an #ifdef. + +Patch 9.0.0040 +Problem: Use of set_chars_option() is confusing. +Solution: Add "apply" argument to store the result or not. Merge similar + code. + +Patch 9.0.0041 +Problem: A couple of filetype patterns do not have "*" before "/etc". +Solution: Add the star. (Jonas Strittmatter, closes #10662) + +Patch 9.0.0042 +Problem: Missing change for filetype detection. +Solution: Include change to detect guile from shebang line. + +Patch 9.0.0043 +Problem: Insufficient testing for bracket commands. +Solution: Add a few more tests. (closes #10668) + +Patch 9.0.0044 +Problem: Typos in comments, wrapping lines. +Solution: Adjust comments. Wrap lines. + +Patch 9.0.0045 +Problem: Reading past end of completion with a long line and 'infercase' + set. +Solution: Allocate the string if needed. + +Patch 9.0.0046 +Problem: Reading past end of completion with duplicate match. +Solution: Check string length + +Patch 9.0.0047 +Problem: Using freed memory with recursive substitute. +Solution: Always make a copy for reg_prev_sub. + +Patch 9.0.0048 +Problem: Cursor in wrong column with mouse click after concealed text. +Solution: Store the text column when drawing text. + +Patch 9.0.0049 +Problem: Csv and tsv files are not recognized. +Solution: Add patterns fo csv and tsv files. (Leandro Lourenci, + closes #10680) + +Patch 9.0.0050 +Problem: Split else-of is confusing. +Solution: Join the lines. (closes #10696) + +Patch 9.0.0051 +Problem: Using CTRL-C wih :append may hang Vim. +Solution: Reset got_int. (closes #10729, closes #10728) + +Patch 9.0.0052 +Problem: "zG" may throw an error if invalid character follows. +Solution: Pass the word length to valid_spell_word(). (Ken Takata, + closes #10737) + +Patch 9.0.0053 +Problem: E1281 not tested with the old regexp engine. +Solution: Loop over the values of 'regexp'. (Dominique Pellé, closes #10695) + +Patch 9.0.0054 +Problem: Compiler warning for size_t to int conversion. +Solution: Add type cast. (Mike Williams, closes #10741) + +Patch 9.0.0055 +Problem: Bitbake files are not detected. +Solution: Add bitbake filetype detection by file name and contents. (Gregory + Anders, closes #10697) + +Patch 9.0.0056 +Problem: Wrong line number reported when :cexpr fails in :def function. +Solution: Set line_number before executing :cexpr. (closes #10735) + +Patch 9.0.0057 +Problem: has('patch-xxx') returns true. +Solution: Check for digit. (closes #10751) + +Patch 9.0.0058 +Problem: Win32: cannot test low level events. +Solution: Add "sendevent" to test_gui_event(). (Yegappan Lakshmanan, + closes #10679) + +Patch 9.0.0059 +Problem: Test file has wrong name. +Solution: Rename the file. Various small fixes. (closes #10674) + +Patch 9.0.0060 +Problem: Accessing uninitialized memory when completing long line. +Solution: Terminate string with NUL. + +Patch 9.0.0061 +Problem: ml_get error with nested autocommand. +Solution: Also check line numbers for a nested autocommand. (closes #10761) + +Patch 9.0.0062 +Problem: Compiler warnings for signed/unsigned char. +Solution: Add type casts. (John Marriott) + +Patch 9.0.0063 +Problem: Too many type casts for dict_get functions. +Solution: Change the key argument from "char_u *" to "char *". + +Patch 9.0.0064 +Problem: Confusing error when using "q:" in command line window. +Solution: Check for the situation and give a better error message. + (closes #10756) + +Patch 9.0.0065 +Problem: Cross-compiling doesn't work because of timer_create check. +Solution: Use AC_CACHE_CHECK(). (Richard Purdie, closes #10777) + +Patch 9.0.0066 +Problem: Switching window uneccarily when getting buffer options. +Solution: Do not switch window when getting buffer options. (closes #10767) + +Patch 9.0.0067 +Problem: Cannot show virtual text. +Solution: Initial changes for virtual text support, using text properties. + +Patch 9.0.0068 +Problem: Build fails with tiny features. +Solution: Add #ifdef. + +Patch 9.0.0069 +Problem: Leaking memory when using text prop with inserted text. +Solution: Clear the growarray with text. + +Patch 9.0.0070 +Problem: Using utfc_ptr2char_len() when length is negative. +Solution: Check value of length. (closes #10760) + +Patch 9.0.0071 +Problem: Command overlaps with printed text in scrollback. +Solution: Clear until end-of-line and use correct message chunk. + (closes #10765, closes #10764) + +Patch 9.0.0072 +Problem: Compiler warning for uninitialized variable. +Solution: Initialize it. (John Marriott) + +Patch 9.0.0073 +Problem: Too many files recognized as bsdl. +Solution: Use pattern "*.bsd" instead of "*bsd". (Martin Tournoij, + closes #10783) + +Patch 9.0.0074 +Problem: Coverity warns for double free. +Solution: Reset cts_text_prop_count when freeing cts_text_props. + +Patch 9.0.0075 +Problem: Some compilers warn for using an uninitialized variable. (Tony + Mechelynck) +Solution: Initialize the variable. + +Patch 9.0.0076 +Problem: No test for what patch 8.1.1424 fixes. +Solution: Add a test. (closes #10789) + +Patch 9.0.0077 +Problem: When switching window in autocmd the restored cursor position may + be wrong. +Solution: Do not restore the cursor if it was not set. (closes #10775) + +Patch 9.0.0078 +Problem: Star register is changed when deleting and both "unnamed" and + "unnamedplus" are in 'clipboard'. +Solution: Make the use of the star register work as documented. (Ernie Rael, + closes #10669) + +Patch 9.0.0079 +Problem: Error in autoload script not reported for 'foldexpr'. +Solution: Reset "emsg_off" when auto-loading a script. (closes #10685) + +Patch 9.0.0080 +Problem: Compiler warning for size_t to int conversion. +Solution: Add type casts. (Mike Williams, closes #10795) + +Patch 9.0.0081 +Problem: Command line completion of user command may have duplicates. + (Dani Dickstein) +Solution: Skip global user command if an identical buffer-local one is + defined. (closes #10797) + +Patch 9.0.0082 +Problem: Cannot interrupt global command from command line. +Solution: Reset got_int in another place. (closes #10739) + +Patch 9.0.0083 +Problem: ModeChanged event not triggered when leaving the cmdline window. +Solution: Call may_trigger_modechanged(). (closes #10791) + +Patch 9.0.0084 +Problem: Using "terraform" filetype for .tfvars file is bad. +Solution: use "terraform-vars", so that different completion and other + mechanisms can be used. (Radek Simko, closes #10755) + +Patch 9.0.0085 +Problem: ":write" fails after ":file name" and the ":edit". +Solution: Reset BF_NOTEDITED when using ":edit". (closes #10790) + +Patch 9.0.0086 +Problem: Tabline is not redrawn when entering command line. +Solution: Set "redraw_tabline". (closes #10771) + +Patch 9.0.0087 +Problem: MS-Windows: CTRL-[ on Belgian keyboard does not work like Esc. +Solution: Figure out what the key code means. (Anton Sharonov, + closes #10687, closes #10454) + +Patch 9.0.0088 +Problem: Pattern for detecting bitbake files is not sufficient. +Solution: Adjust the pattern. (Gregory Anders, closes #10743) + +Patch 9.0.0089 +Problem: Fuzzy argument completion doesn't work for shell commands. +Solution: Check for cmdidx not being CMD_bang. (Yegappan Lakshmanan, + closes #10769) + +Patch 9.0.0090 +Problem: No error when assigning bool to a string option with setwinvar(). +Solution: Give an error (closes #10766) + +Patch 9.0.0091 +Problem: Duplicate error number. +Solution: Use unique error number. + +Patch 9.0.0092 +Problem: Plugins cannot change v:completed_item. +Solution: Make v:completed_item writeable. (Shougo Matsushita, + closes #10801) + +Patch 9.0.0093 +Problem: Sway config files are recognized as i3config. +Solution: Recognize swayconfig separately. (James Eapen, closes #10672) + +Patch 9.0.0094 +Problem: Cursor restored unexpected with nested autocommand. +Solution: Do not restore the cursor when it was moved intentionally. + (closes #10780) + +Patch 9.0.0095 +Problem: Conditions are always true. +Solution: Remove useless conditions. (closes #10802) + +Patch 9.0.0096 +Problem: Flag "new_value_alloced" is always true. +Solution: Remove "new_value_alloced". (closes #10792) + +Patch 9.0.0097 +Problem: Long quickfix line is truncated for :clist. +Solution: Allocate a buffer if needed. + +Patch 9.0.0098 +Problem: missing include file in timer_create configure check. +Solution: Inlucde stdlib.h. + +Patch 9.0.0099 +Problem: Scrollback can be wrong after redrawing the command line. +Solution: Clear unfinished scrollback when redrawing. (closes #10807) + +Patch 9.0.0100 +Problem: Get hit-enter prompt for system() when '!' is in 'guioptions'. +Solution: Do not call wait_return() when not redrawing. (closes #3327) + +Patch 9.0.0101 +Problem: Invalid memory access in diff mode with "dp" and undo. +Solution: Make sure the line number does not go below one. + +Patch 9.0.0102 +Problem: Reading past end of line with insert mode completion. +Solution: Check text length. + +Patch 9.0.0103 +Problem: If running configure with cached results -lrt may be missing. +Solution: Use two cache variables, one without and one with -lrt. + (closes #10799) Swap checks to avoid adding -lrt unnecessarily. + +Patch 9.0.0104 +Problem: Going beyond allocated memory when evaluating string constant. +Solution: Properly skip over form. + +Patch 9.0.0105 +Problem: Illegal memory access when pattern starts with illegal byte. +Solution: Do not match a character with an illegal byte. + +Patch 9.0.0106 +Problem: Illegal byte regexp test doesn't fail when fix is reversed. +Solution: Make sure illegal bytes end up in sourced script file. + +Patch 9.0.0107 +Problem: Condition always has the same value. +Solution: Remove the condition. + +Patch 9.0.0108 +Problem: Configure check for timer_create may give wrong error. +Solution: Give a warning instead of an error. + +Patch 9.0.0109 +Problem: Writing over the end of a buffer on stack when making list of + spell suggestions. +Solution: Make sure suggested word is not too long. (closes #10812) + +Patch 9.0.0110 +Problem: Help tag generation picks up words in code examples. +Solution: Skip over examples. (Carlo Teubner, closes #10813) + +Patch 9.0.0111 +Problem: "nocombine" is missing from synIDattr(). +Solution: Add "nocombine". (Muni Tanjim, closes #10816) + +Patch 9.0.0112 +Problem: MS-Windows: test fails because file already exists. +Solution: Wait a little while until the file is gone. + +Patch 9.0.0113 +Problem: has() is not strict about parsing the patch version. +Solution: Check the version more strictly. (Ken Takata, closes #10752) + +Patch 9.0.0114 +Problem: The command line takes up space even when not used. +Solution: Allow for 'cmdheight' to be set to zero. (Shougo Matsushita, + closes #10675, closes #940) + +Patch 9.0.0115 +Problem: When 'cmdheight' is zero pressing ':' may scroll a window. +Solution: Add the made_cmdheight_nonzero flag and set 'scrolloff' to zero. + +Patch 9.0.0116 +Problem: Virtual text not displayed if 'signcolumn' is "yes". +Solution: Set c_extra and c_final to NUL. + +Patch 9.0.0117 +Problem: Text of removed textprop with text is not freed. +Solution: Free the text when the property is removed. Reduce the array size + to ignore NULLs at the end. + +Patch 9.0.0118 +Problem: No test for what patch 9.0.0155 fixes. +Solution: Add a test. Fix typos. (closes #10822) + +Patch 9.0.0119 +Problem: Tiny chance that creating a backup file fails. +Solution: Check for EEXIST error. (Ken Takata, closes #10821) + +Patch 9.0.0120 +Problem: MS-Windows GUI: cannot use AltGr + Space. +Solution: Check for VK_MENU instead of VK_LMENU. (Anton Sharonov, + closes #10820, closes #10753) + +Patch 9.0.0121 +Problem: Cannot put virtual text after or below a line. +Solution: Add "text_align" and "text_wrap" arguments. + +Patch 9.0.0122 +Problem: Breakindent test fails. +Solution: Fix condition. + +Patch 9.0.0123 +Problem: Cannot build with small features. +Solution: Add #ifdef. + +Patch 9.0.0124 +Problem: Code has more indent than needed. +Solution: Use continue and return statements. (closes #10824) + +Patch 9.0.0125 +Problem: Cursor positioned wrong with virtual text after the line. +Solution: Clear cts_with_trailing. + +Patch 9.0.0126 +Problem: Expanding file names fails in directory with more than 255 + entries. +Solution: Use an int instead of char_u to count. (John Drouhard, + closes #10818) + +Patch 9.0.0127 +Problem: Unused variable. +Solution: Remove the variable. (closes #10829) + +Patch 9.0.0128 +Problem: Coverity complains about possible double free. +Solution: Clear the pointer to avoid warnings. + +Patch 9.0.0129 +Problem: Compiler warning for int/size_t usage. +Solution: Add a type cast. (Mike Williams, closes #10830) + +Patch 9.0.0130 +Problem: Cursor position wrong when inserting around virtual text. +Solution: Update the cursor position properly. + +Patch 9.0.0131 +Problem: Virtual text with Tab is not displayed correctly. +Solution: Change any Tab to a space. + +Patch 9.0.0132 +Problem: Multi-byte characters in virtual text not handled correctly. +Solution: Count screen cells instead of bytes. + +Patch 9.0.0133 +Problem: Virtual text after line moves to joined line. (Yegappan + Lakshmanan) +Solution: When joining lines only keep virtual text after the last line. + +Patch 9.0.0134 +Problem: No test for text property with column zero. +Solution: Add a test. Add message to assert for no open popups. + +Patch 9.0.0135 +Problem: Comment about tabpage line above the wrong code. +Solution: Move the comment. (closes #10836) + +Patch 9.0.0136 +Problem: After CTRL-Left-mouse click a mouse scroll also has CTRL. +Solution: Reset orig_mouse_code also for wheel events. (closes #10840) + +Patch 9.0.0137 +Problem: Debugger test may fail when $CWD is very long. +Solution: Skip the test if the directory name is too long. (James McCoy, + closes #10837) + +Patch 9.0.0138 +Problem: Not enough characters accepted for 'spellfile'. +Solution: Add vim_is_fname_char() and use it for 'spellfile'. + +Patch 9.0.0139 +Problem: Truncating virtual text after a line not implemented. + Cursor positioning wrong with Newline in the text. +Solution: Implement truncating. Disallow control characters in the text. + (closes #10842) + +Patch 9.0.0140 +Problem: execute() does not use the "legacy" command modifier. +Solution: pass the command modifier in sticky_cmdmod_flags. (Kota Kato, + closes #10845) + +Patch 9.0.0141 +Problem: "delmenu" does not remove autocmmands. Running menu test function + alone fails. +Solution: Delete autocommands Make sure there is at least one menu. + (closes #10848) + +Patch 9.0.0142 +Problem: Crash when adding and removing virtual text. (Ben Jackson) +Solution: Check that the text of the text property still exists. + +Patch 9.0.0143 +Problem: Cursor positioned after virtual text in empty line. +Solution: Keep cursor in the first column. (closes #10786) + +Patch 9.0.0144 +Problem: Text property cannot override 'cursorline' highlight. +Solution: Add the "override" flag to prop_type_add(). (closes #5533, + closes #8225). + +Patch 9.0.0145 +Problem: Substitute that joins lines drops text properties. +Solution: Move text properties of the last line to the new line. + +Patch 9.0.0146 +Problem: Missing part of change for "override" flag. +Solution: Add the missing change. + +Patch 9.0.0147 +Problem: Cursor positioned wrong after two text properties with virtual + text and "below" alignment. (Tim Pope) +Solution: Do not stop after a text property using MAXCOL. (closes #10849) + +Patch 9.0.0148 +Problem: A "below" aligned text property gets 'showbreak' displayed. +Solution: Do not use 'showbreak' before or in virtual text. (issue #10851) + +Patch 9.0.0149 +Problem: Test for fuzzy completion fails sometimes. +Solution: Use a more specific file name to minimize the chance of matching a + random directory name. (closes #10854) + +Patch 9.0.0150 +Problem: Error for using #{ in an expression is a bit confusing. +Solution: Mention that this error is only given for an expression. + Avoid giving the error more than once. (closes #10855) + +Patch 9.0.0151 +Problem: A "below" aligned text property does not work with 'nowrap'. +Solution: Start a new screen line to display the virtual text. + (closes #10851) + +Patch 9.0.0152 +Problem: Warning for unused argument in small build. +Solution: Add "UNUSED". + +Patch 9.0.0153 +Problem: No fold and sign column for virtual text with "below" align and + 'nowrap'. +Solution: Go back to draw state WL_START when moving to the next line. + (closes #10851) + +Patch 9.0.0154 +Problem: Text properties wrong after splitting a line. +Solution: Check for text properties after the line. (closes #10857) + +Patch 9.0.0155 + +Patch 9.0.0156 +Problem: Giving E1170 only in an expression is confusing. +Solution: Give E1170 for any "#{ comment". (closes #10855) + +Patch 9.0.0157 +Problem: 'showbreak' displayed below truncated "after" text prop. +Solution: Suppress 'showbreak' when "after" prop doesn't wrap. + +Patch 9.0.0158 +Problem: With 'nowrap' "below" property not displayed correctly. +Solution: Adjust virtual text with 'nowrap', do not truncate. + +Patch 9.0.0159 +Problem: Cannot build with small features. +Solution: Check for E1170 only with FEAT_EVAL. + +Patch 9.0.0160 +Problem: Some diff mode tests fail. +Solution: Only advance "ptr" when a text property follows. + +Patch 9.0.0161 +Problem: Warning for uninitialized variable. (Tony Mechelynck) +Solution: Initialize line_attr_save. + +Patch 9.0.0162 +Problem: Text property "below" gets indent if 'breakindent' is set. (Tim + Pope) +Solution: Do not put indent before text property. (closes #10859) + +Patch 9.0.0163 +Problem: Text property not adjusted for text inserted with "p". +Solution: Adjust column and length of text properties. + +Patch 9.0.0164 +Problem: Using freed memory with put command. +Solution: Get byte offset before replacing the line. + +Patch 9.0.0165 +Problem: Looking up a text property type by ID is slow. +Solution: Keep an array of property types sorted on ID. + +Patch 9.0.0166 +Problem: When using text properties the line text length is computed twice. +Solution: If the text lenght was already computed don't do it again. + +Patch 9.0.0167 +Problem: Checking for text properties could be a bit more efficient. +Solution: Return early when there are no text properties. Update TODO + items. + +Patch 9.0.0168 +Problem: Cursor positioned wrong with two virtual text properties close + together. (Ben Jackson) +Solution: Add the original size, not the computed one. (closes #10864) + +Patch 9.0.0169 +Problem: Insufficient testing for line2byte() with text properties. +Solution: Add tests with a lot of text. + +Patch 9.0.0170 +Problem: Various minor code formatting issues. +Solution: Improve code formatting. + +Patch 9.0.0171 +Problem: Quickfix line highlight is overruled by 'cursorline'. +Solution: Reverse the combination of attributes. (closes #10654) + +Patch 9.0.0172 +Problem: Trying to allocate zero bytes. +Solution: Do not allocate the proptype array when there are none. + (closes #10867) + +Patch 9.0.0173 +Problem: Assert fails only on MS-Windows. +Solution: Disable the assert for now. + +Patch 9.0.0174 +Problem: No error for using "#{ comment" in a compiled function. +Solution: Make error checking for "#{" consistent. (closes #10855) + +Patch 9.0.0175 +Problem: Spell checking for capital not working with trailing space. +Solution: Do not calculate cap_col at the end of the line. (Christian + Brabandt, closes #10870, issue #10838) + +Patch 9.0.0176 +Problem: Checking character options is duplicated and incomplete. +Solution: Move checking to check_chars_options(). (closes #10863) + +Patch 9.0.0177 +Problem: Cursor position wrong with 'virtualedit' and mouse click after end + of the line. (Hermann Mayer) +Solution: Do not use ScreenCols[] when 'virtualedit' is active. + (closes #10868) + +Patch 9.0.0178 +Problem: Cursor position wrong with virtual text before Tab. +Solution: Use the byte length, not the cell with, to compare the column. + Correct tab size after text prop. (closes #10866) + +Patch 9.0.0179 +Problem: Cursor position wrong with wrapping virtual text in empty line. +Solution: Adjust handling of an empty line. (closes #10875) + +Patch 9.0.0180 +Problem: Stray logfile appears when running tests. +Solution: Remove ch_logfile() calls. + +Patch 9.0.0181 +Problem: Textprop test with line2byte() fails on MS-Windows. +Solution: Fix updating chuncks in ml_delete_int(). + +Patch 9.0.0182 +Problem: Quarto files are not recognized. +Solution: Recognize quarto files by the extension. (Jonas Strittmatter, + closes #10880) + +Patch 9.0.0183 +Problem: Extra space after virtual text when 'linebreak' is set. +Solution: Do not count virtual text when getting linebreak value. + (closes #10884) + +Patch 9.0.0184 +Problem: Virtual text prop highlight continues after truncation. +Solution: Recompute the length of attributes. + +Patch 9.0.0185 +Problem: Virtual text does not show if tehre is a text prop at same + position. (Ben Jackson) +Solution: Fix the sorting of properties. (closes #10879) + +Patch 9.0.0186 +Problem: Virtual text without highlighting does not show. (Ben Jackson) +Solution: Use a text property when it has highlighting or when it has text. + (closes #10878) + +Patch 9.0.0187 +Problem: Command line height changes when maximizing window height. +Solution: Do not change the command line height. (closes #10885) + +Patch 9.0.0188 +Problem: Strange effects when using virtual text with "text_align" and + non-zero column. (Martin Tournoij) +Solution: Give an error. (closes #10888) + +Patch 9.0.0189 +Problem: Invalid memory access for text prop without highlight. +Solution: Check for a valid highlight ID. + +Patch 9.0.0190 +Problem: The way 'cmdheight' can be made zero is inconsistent. +Solution: Only make 'cmdheight' zero when setting it explicitly, not when + resizing windows. (closes #10890) + +Patch 9.0.0191 +Problem: Messages test fails; window size incorrect when 'cmdheight' is + made smaller. +Solution: Properly cleanup after test with cmdheight zero. Resize windows + correctly when 'cmdheight' gets smaller. + +Patch 9.0.0192 +Problem: Possible invalid memory access when 'cmdheight' is zero. (Martin + Tournoij) +Solution: Avoid going over the end of w_lines[] when w_height is Rows. + (closes #10882) + +Patch 9.0.0193 +Problem: Search and match highlight interfere with virtual text highlight. + (Ben Jackson) +Solution: Check for match highlight after text properties. Reset and + restore search highlight when showing virtual text. + (closes #10892) + +Patch 9.0.0194 +Problem: Cursor displayed in wrong position after removing text prop. (Ben + Jackson) +Solution: Invalidate the cursor position. (closes #10898) + +Patch 9.0.0195 +Problem: Metafun files are not recogized. +Solution: Add filetype detection patterns. + +Patch 9.0.0196 +Problem: Finding value in list may require a for loop. +Solution: Add indexof(). (Yegappan Lakshmanan, closes #10903) + +Patch 9.0.0197 +Problem: Astro files are not detected. +Solution: Add a pattern to match Astro files. (Emilia Zapata, closes #10904) + +Patch 9.0.0198 +Problem: ml_get error when switching buffer in Visual mode. +Solution: End Visual mode when switching buffer. (closes #10902) + +Patch 9.0.0199 +Problem: Cursor position wrong with two right-aligned virtual texts. +Solution: Add the padding for right-alignment. (issue #10906) + +Patch 9.0.0200 +Problem: cursor in a wrong positoin if 'wrap' is off and using two right + aligned text props in one line. +Solution: Count an extra line for a right aligned text property after a + below or right aligned text property. (issue #10909) + +Patch 9.0.0201 +Problem: CursorLine highlight overrules virtual text highlight. +Solution: Let extra attribute overrule line attribute. (closes #10909) + +Patch 9.0.0202 +Problem: Code and help for indexof() is not ideal. +Solution: Refactor the code, improve the help. (Yegappan Lakshmanan, + closes #10908) + +Patch 9.0.0203 +Problem: Confusing variable name. +Solution: Use "prim_aep" instead of "spell_aep". + +Patch 9.0.0204 +Problem: indexof() may leak memory. +Solution: Free allocated values. (Yegappan Lakshmanan, closes #10916) + +Patch 9.0.0205 +Problem: Cursor in wrong position when inserting after virtual text. (Ben + Jackson) +Solution: Put the cursor after the virtual text, where the text will be + inserted. (closes #10914) + +Patch 9.0.0206 +Problem: Redraw flags are not named specifically. +Solution: Prefix "UPD_" to the flags, for UPDate_screen(). + +Patch 9.0.0207 +Problem: Stacktrace not shown when debugging. +Solution: Set msg_scroll in msg_source(). (closes #10917) + +Patch 9.0.0208 +Problem: The override flag has no effect for virtual text. (Ben Jackson) +Solution: Make the override flag work. (closes #10915) + +Patch 9.0.0209 +Problem: Build error with small features. +Solution: Add #ifdef. + +Patch 9.0.0210 +Problem: 'list' mode does not work properly with virtual text. +Solution: Show the "$" at the right position. (closes #10913) + +Patch 9.0.0211 +Problem: Invalid memory access when compiling :lockvar. +Solution: Don't read past the end of the line. + +Patch 9.0.0212 +Problem: Invalid memory access when compiling :unlet. +Solution: Don't read past the end of the line. + +Patch 9.0.0213 +Problem: Using freed memory with error in assert argument. +Solution: Make a copy of the error. + +Patch 9.0.0214 +Problem: Splitting a line may duplicate virtual text. (Ben Jackson) +Solution: Don't duplicate a text property with virtual text. Make + auto-indenting work better. (closes #10919) + +Patch 9.0.0215 +Problem: Not passing APC_INDENT flag. +Solution: Pass the flag where it's needed. + +Patch 9.0.0216 +Problem: Undo earlier test sometimes fails on MS-Windows. +Solution: Use another file name. + +Patch 9.0.0217 +Problem: 'shellslash' works differently when sourcing a script again. +Solution: Use the name from the script item. (closes #10920) + +Patch 9.0.0218 +Problem: Reading before the start of the line. +Solution: When displaying "$" check the column is not negative. + +Patch 9.0.0219 +Problem: Cannot make a funcref with "s:func" in a def function in legacy + script. +Solution: Allow for using a lower case function name after "s:". (Kota Kato, + closes #10926) + +Patch 9.0.0220 +Problem: Invalid memory access with for loop over NULL string. +Solution: Make sure mb_ptr2len() consistently returns zero for NUL. + +Patch 9.0.0221 +Problem: Accessing freed memory if compiling nested function fails. +Solution: Mess up the variable name so that it won't be found. + +Patch 9.0.0222 +Problem: No good reason why text objects are only in larger builds. +Solution: Graduate +textobjects. + +Patch 9.0.0223 +Problem: Typo in diffmode test. +Solution: Fix the typo. (closes #10932) + +Patch 9.0.0224 +Problem: Using NULL pointer when skipping compiled code. +Solution: Check for skipping. + +Patch 9.0.0225 +Problem: Using freed memory with multiple line breaks in expression. +Solution: Free eval_tofree later. + +Patch 9.0.0226 +Problem: job_start() test may fail under valgrind. +Solution: Wait until the job is running. + +Patch 9.0.0227 +Problem: Cannot read error message when abort() is called. +Solution: Output a newline before calling abort(). + +Patch 9.0.0228 +Problem: Crash when pattern looks below the last line. +Solution: Consider invalid lines to be empty. (closes #10938) + +Patch 9.0.0229 +Problem: Vim9: error message for missing type is not clear. +Solution: Mention the context. (issue #10944) + +Patch 9.0.0230 +Problem: No error for comma missing in list in :def function. +Solution: Check for missing comma. (closes #10943) + +Patch 9.0.0231 +Problem: Expanding "**" may loop forever with directory links. +Solution: Check for being interrupted. (closes #10946) + +Patch 9.0.0232 +Problem: Test with BufNewFile autocmd is flaky. +Solution: Use another file name. + +Patch 9.0.0233 +Problem: Removing multiple text properties takes many calls. +Solution: Pass a list to prop_remove(). (Ben Jackson, closes #10945) + +Patch 9.0.0234 +Problem: Cannot make difference between the end of :normal and a character + in its argument. +Solution: Add the "typebuf_was_empty" flag. (closes #10950) + +Patch 9.0.0235 +Problem: 'autoshelldir' does not work with chunked respose. +Solution: Collect chunks before parsing OSC 7. (closes #10949) + +Patch 9.0.0236 +Problem: Popup menu not removed when 'wildmenu' reset while it is visible. +Solution: Do not check p_wmnu, only pum_visible(). (closes #10953) + +Patch 9.0.0237 +Problem: Mac: cannot build if dispatch.h is not available. +Solution: Add #ifdef. (Evan Miller, closes #10954) + +Patch 9.0.0238 +Problem: Shift-Tab shows matches on cmdline when 'wildmenu' is off. +Solution: Only show matches when 'wildmode' contains "list". (closes #10951) + +Patch 9.0.0239 +Problem: Build failure without the +wildmenu feature. +Solution: Move parenthesis. + +Patch 9.0.0240 +Problem: Crash when using ":mkspell" with an empty .dic file. +Solution: Check for an empty word tree. + +Patch 9.0.0241 +Problem: "make install" does not install shared syntax file. (James McCoy) +Solution: Install and uninstall the shared syntax files. (closes #10956) + +Patch 9.0.0242 +Problem: "make install" still fails. (Wilhelm Payne) +Solution: Also add the directory to installrtbase. (Dominique Pellé) + +Patch 9.0.0243 +Problem: Text properties "below" sort differently on MS-Windows. +Solution: Use the ID as a tie breaker. (closes #10958) + +Patch 9.0.0244 +Problem: Cannot easily get the list of sourced scripts. +Solution: Add the getscriptinfo() function. (Yegappan Lakshmanan, + closes #10957) + +Patch 9.0.0245 +Problem: Mechanism to prevent recursive screen updating is incomplete. +Solution: Add "redraw_not_allowed" and set it in build_stl_str_hl(). + (issue #10952) + +Patch 9.0.0246 +Problem: Using freed memory when 'tagfunc' deletes the buffer. +Solution: Make a copy of the tag name. + +Patch 9.0.0247 +Problem: Cannot add padding to virtual text without highlight. +Solution: Add the "text_padding_left" argument. (issue #10906) + +Patch 9.0.0248 +Problem: Duplicate code in finding a script in the execution stack. +Solution: Reduce duplicate code. (closes #10961) + +Patch 9.0.0249 +Problem: No test for what 9.0.0234 fixes. +Solution: Add a test. (issue #10950) + +Patch 9.0.0250 +Problem: Slightly inconsistent error messages. +Solution: Make it "Using a Float". (closes #10959) + +Patch 9.0.0251 +Problem: Test output shows up in git. +Solution: Ignore the "failed" directory. (Yao-Ching Huang, closes #10969) + +Patch 9.0.0252 +Problem: Cursor in wrong place after virtual text. +Solution: Do not change the length of a virtual text property. + (closes #10964) + +Patch 9.0.0253 +Problem: A symlink to an autoload script results in two entries in the list + of scripts, items expected in one are actually in the other. +Solution: Have one script item refer to the actually sourced one. + (closes #10960) + +Patch 9.0.0254 +Problem: Typo in function name. +Solution: Rename the function. (closes #10971) + +Patch 9.0.0255 +Problem: Build failure without the eval feature. +Solution: Add #ifdef. + +Patch 9.0.0256 +Problem: Compiler warning for uninitialized variables. +Solution: Initilize the variables. + +Patch 9.0.0257 +Problem: "->" in ":scriptnames" output not tested yet. +Solution: Add a check. + +Patch 9.0.0258 +Problem: MS-Windows installer skips syntax/shared. +Solution: Use "File /r" in the installer script. (Ken Takata, closes #10972) + +Patch 9.0.0259 +Problem: Crash with mouse click when not initialized. +Solution: Check TabPageIdxs[] is not NULL. + +Patch 9.0.0260 +Problem: Using freed memory when using 'quickfixtextfunc' recursively. +Solution: Do not allow for recursion. + +Patch 9.0.0261 +Problem: bufload() reads a file even if the name is not a file name. (Cyker + Way) +Solution: Do not read the file when the buffer name is not a file name. + (closes #10975) + +Patch 9.0.0262 +Problem: Build failure without the +quickfix feature. +Solution: Add #ifdef. + +Patch 9.0.0263 +Problem: Too many #ifdefs. +Solution: Make some functions always available. + +Patch 9.0.0264 +Problem: CI still runs on Ubuntu 18.04. +Solution: Run CI on Ubuntu 20.04. (closes #10582) + +Patch 9.0.0265 +Problem: No good reason why the "gf" command is not in the tiny version. +Solution: Graduate the file_in_path feature. + +Patch 9.0.0266 +Problem: Compiler warning for unused argument. +Solution: Add UNUSED. + +Patch 9.0.0267 +Problem: Coverity workflow still uses Ubuntu 18.04. +Solution: Use Ubuntu 20.04 + +Patch 9.0.0268 +Problem: Build error without the +eval feature. +Solution: Remove #ifdef. + +Patch 9.0.0269 +Problem: getscriptinfo() does not include the version. Cannot select + entries by script name. +Solution: Add the "version" item and the "name" argument. (Yegappan + Lakshmanan, closes #10962) + +Patch 9.0.0270 +Problem: Some values of 'path' and 'tags' do not work in the tiny version. +Solution: Graduate the +path_extra feature. + +Patch 9.0.0271 +Problem: Using INIT() in non-header files. +Solution: Remove INIT(). (closes #10981) + +Patch 9.0.0272 +Problem: BufReadCmd not triggered when loading a "nofile" buffer. (Maxim + Kim) +Solution: Call readfile() but bail out before reading a file. + (closes #10983) + +Patch 9.0.0273 +Problem: Konsole termresponse not recognized. +Solution: Handle Konsole like libvterm, set 'ttymouse' to "sgr". + (closes #10990) + +Patch 9.0.0274 +Problem: Netrw plugin does not show remote files. +Solution: Do read a file when 'buftype' is "acwrite". (closes #10983) + +Patch 9.0.0275 +Problem: BufEnter not triggered when using ":edit" in "nofile" buffer. +Solution: Let readfile() return NOTDONE. (closes #10986) + +Patch 9.0.0276 +Problem: 'buftype' values not sufficiently tested. +Solution: Add and extend tests with 'buftype' values. (closes #10988) + +Patch 9.0.0277 +Problem: Coverity CI: update-alternatives not needed with Ubuntu 20.04. +Solution: Remove update-alternatives for Lua. (closes #10987) + +Patch 9.0.0278 +Problem: The +wildignore feature is nearly always available. +Solution: Graduate +wildignore for consistency. + +Patch 9.0.0279 +Problem: The tiny version has the popup menu but not 'wildmenu'. +Solution: Graduate the wildmenu feature. + +Patch 9.0.0280 +Problem: The builtin termcap list depends on the version. +Solution: Always include all termcap entries. Remove duplicate lines. + +Patch 9.0.0281 +Problem: Build failure without the +eval feature. +Solution: Add #ifdef. + +Patch 9.0.0282 +Problem: A nested timout stops the previous timeout. +Solution: Ignore any nested timeout. + +Patch 9.0.0283 +Problem: Cannot complete "syn list @cluster". +Solution: Recognize and handle "list @". (Björn Linse, closes #10990) + +Patch 9.0.0284 +Problem: Using static buffer for multiple completion functions. +Solution: Use one buffer in expand_T. + +Patch 9.0.0285 +Problem: It is not easy to change the command line from a plugin. +Solution: Add setcmdline(). (Shougo Matsushita, closes #10869) + +Patch 9.0.0286 +Problem: Using freed memory when location list changed in autocmd. +Solution: Return QF_ABORT and handle it. (Yegappan Lakshmanan, + closes #10993) + +Patch 9.0.0287 +Problem: Irix systems no longer exist. +Solution: Remove references to Irix. (Yegappan Lakshmanan, closes #10994) + +Patch 9.0.0288 +Problem: When 'cmdheight' is zero some messages are not displayed. +Solution: Use a popup notification window. + +Patch 9.0.0289 +Problem: Invalid memory write. +Solution: Do not put NUL in a static string. + +Patch 9.0.0290 +Problem: Compiler warning for variable set but not used. +Solution: Add #ifdef. + +Patch 9.0.0291 +Problem: Test failing. +Solution: Run test with cmdheight=0 last. + +Patch 9.0.0292 +Problem: Test causes another test to fail. +Solution: Redraw to remove the popup window + +Patch 9.0.0293 +Problem: Messages window not hidden when starting a command line. +Solution: Hide the messages window. (closes #10996) + +Patch 9.0.0294 +Problem: Crash when 'cmdheight' is 0 and popup_clear() used. +Solution: Reset "message_win" when the message popup is cleared. Close the + popup when 'cmdheight' is non-zero. Add a screendump test. + +Patch 9.0.0295 +Problem: GUI drop files test sometimes fails. +Solution: Mark the test as flaky. + +Patch 9.0.0296 +Problem: Message in popup is shortened unnecessary. +Solution: Do not use 'showcmd' and 'ruler' for a message in the popup. + Set the timer when unhiding the message popup. + +Patch 9.0.0297 +Problem: Cursor position wrong after right aligned virtual text. (Iizuka + Masashi) +Solution: Take the width of the column offset into account. (closes #10997) + Also fix virtual text positioning. + +Patch 9.0.0298 +Problem: Compiler warning for size_t to int conversion. +Solution: Add a type cast. (Wilhelm Payne, closes #11000) + +Patch 9.0.0299 +Problem: Error messages for setcmdline() could be better. +Solution: Use more specific error messages. (Yegappan Lakshmanan, + closes #10995) + +Patch 9.0.0300 +Problem: 'cpoptions' tests are flaky. +Solution: Use a different file name for each test. + +Patch 9.0.0301 +Problem: The message window popup is delayed after an error message. +Solution: Do not set emsg_on_display when using the message window. + +Patch 9.0.0302 +Problem: CI for Coverity is bothered by deprecation warnings. +Solution: Ignore deprecation warnings. (closes #11002) + +Patch 9.0.0303 +Problem: It is not easy to get information about a script. +Solution: Make getscriptinf() return the version. When selecting a specific + script return functions and variables. (Yegappan Lakshmanan, + closes #10991) + +Patch 9.0.0304 +Problem: WinScrolled is not triggered when only skipcol changes. +Solution: Add w_last_skipcol and use it. (closes #10998) + +Patch 9.0.0305 +Problem: CI lists useless deprecation warnings. +Solution: Ignore deprecation warnings. (closes #11003) + +Patch 9.0.0306 +Problem: Buffer write message is two lines in message popup window. +Solution: Overwrite message if "msg_scroll" is off. + +Patch 9.0.0307 +Problem: :echomsg doesn't work properly with cmdheight=0. +Solution: Improve scrolling and displaying. + +Patch 9.0.0308 +Problem: When cmdheight is zero the attention prompt doesn't show. +Solution: Do not use the message window for a prompt. + +Patch 9.0.0309 +Problem: Invalid memory access when cmdheight is zero. +Solution: Check index in w_lines is smaller than Rows. + +Patch 9.0.0310 +Problem: Output of :messages dissappears when cmdheight is zero. +Solution: Do not use the messages window for :messages. Make Esc close the + messages window. + +Patch 9.0.0311 +Problem: Test for hit-Enter prompt fails. +Solution: Only reset cmdline_row when 'cmdheight' is zero. + +Patch 9.0.0312 +Problem: Test for cmdheight zero fails. +Solution: Do not close the messages window for CTRL-C. + +Patch 9.0.0313 +Problem: Using common name in tests leads to flaky tests. +Solution: Rename files and directories to be more specific. + +Patch 9.0.0314 +Problem: VDM files are not recognized. +Solution: Add patterns for VDM files. (Alessandro Pezzoni, closes #11004) + +Patch 9.0.0315 +Problem: Shell command is displayed in message window. +Solution: Do not echo the shell command in the message window. + +Patch 9.0.0316 +Problem: Screen flickers when 'cmdheight' is zero. +Solution: Redraw over existing text instead of clearing. + +Patch 9.0.0317 +Problem: When updating the whole screen a popup may not be redrawn. +Solution: Mark the screen and windows for redraw also when not clearing. + Also mark popup windows for redraw. + +Patch 9.0.0318 +Problem: Clearing screen causes flicker. +Solution: Do not clear but redraw in more cases. Add () to "wait_return". + +Patch 9.0.0319 +Problem: Godot shader files are not recognized. +Solution: Add patterns for "gdshader". (Maxim Kim, closes #11006) + +Patch 9.0.0320 +Problem: Command line type of CmdlineChange differs from getcmdtype(). +Solution: Use the same type. (closes #11005) + +Patch 9.0.0321 +Problem: Cannot use the message popup window directly. +Solution: Add ":echowindow". + +Patch 9.0.0322 +Problem: Crash when no errors and 'quickfixtextfunc' is set. +Solution: Do not handle errors if there aren't any. + +Patch 9.0.0323 +Problem: Using common name in tests leads to flaky tests. +Solution: Rename files and directories to be more specific. + +Patch 9.0.0324 +Problem: MS-Windows: resolve() test fails. +Solution: Revert renaming the directory. + +Patch 9.0.0325 +Problem: MS-Windows: completion test fails. +Solution: Adjust directory prefix. + +Patch 9.0.0326 +Problem: Some changes for cmdheight=0 are not needed. +Solution: Revert resize behavior if height is greater than the available + space. (Shougo Matsushita, closes #11008) + +Patch 9.0.0327 +Problem: items() does not work on a list. (Sergey Vlasov) +Solution: Make items() work on a list. (closes #11013) + +Patch 9.0.0328 +Problem: OLD_DIGRAPHS is unused. +Solution: Remove OLD_DIGRAPHS. Also drop HPUX_DIGRAPHS. + +Patch 9.0.0329 +Problem: ":highlight" hangs when 'cmdheight' is zero. +Solution: Add to msg_col when using the message window. (closes #11014) + +Patch 9.0.0330 +Problem: Method tests fail. +Solution: Adjust for change of items(). + +Patch 9.0.0331 +Problem: Cannot use items() on a string. +Solution: Make items() work on a string. (closes #11016) + +Patch 9.0.0332 +Problem: Overwrite check may block BufWriteCmd. +Solution: Do not use overwrite check when 'buftype' is "acwrite". + (closes #11011) + +Patch 9.0.0333 +Problem: Method test fails. +Solution: Adjust test for items() now working on string. + +Patch 9.0.0334 +Problem: Test does not properly clean up. +Solution: Fix typo in argument of delete(). (Dominique Pellé, closes #11010) + +Patch 9.0.0335 +Problem: Checks for Dictionary argument often give a vague error message. +Solution: Give a useful error message. (Yegappan Lakshmanan, closes #11009) + +Patch 9.0.0336 +Problem: Tests are flaky because of using a common file name. +Solution: Rename files and directories to be more unique. + +Patch 9.0.0337 +Problem: Flicker when resetting cmdline_row after updating the screen. +Solution: Do not update cmdline_row. (issue #11017) + +Patch 9.0.0338 +Problem: Return value of list_append_list() not always checked. +Solution: Check return value and handle failure. + +Patch 9.0.0339 +Problem: No check if the return value of XChangeGC() is NULL. +Solution: Only use the return value when it is not NULL. (closes #11020) + +Patch 9.0.0340 +Problem: The 'cmdheight' zero support causes too much trouble. +Solution: Revert support for 'cmdheight' being zero. + +Patch 9.0.0341 +Problem: mapset() does not restore mapping properly. +Solution: Use an empty string for . (closes #11022) + +Patch 9.0.0342 +Problem: ":wincmd =" equalizes in two directions. +Solution: Make ":vertical wincmd =" equalize vertically only and + ":horizontal wincmd =" equalize horizontally only. + +Patch 9.0.0343 +Problem: ColorScheme autocommand triggered when colorscheme is not found. + (Romain Lafourcade) +Solution: Only trigger ColorScheme when loading the colorscheme succeeds. + (closes #11024) + +Patch 9.0.0344 +Problem: MS-Windows: background color wrong in Console. +Solution: Figure out the default console background color. (Yasuhiro + Matsumoto, issue #10310) + +Patch 9.0.0345 +Problem: Error message for list argument could be clearer. +Solution: Include the argument number. (Yegappan Lakshmanan, closes #11027) + +Patch 9.0.0346 +Problem: :horizontal modifier not fully supported. +Solution: Also use :horizontal for completion and user commands. + (closes #11025) + +Patch 9.0.0347 +Problem: MS-Windows: cannot set cursor shape in Windows Terminal. +Solution: Make cursor shape work with Windows Terminal. (Ken Takata, + closes #11028, closes #6576) + +Patch 9.0.0348 +Problem: MS-Windows: GUI mouse move event test is flaky. +Solution: Wait for a little while for the first move event. + +Patch 9.0.0349 +Problem: Filetype of *.sil files not well detected. +Solution: Inspect the file contents to guess the filetype. + +Patch 9.0.0350 +Problem: :echowindow does not work in a compiled function. +Solution: Handle the expression at compile time. + +Patch 9.0.0351 +Problem: Message window may obscure the command line. +Solution: Reduce the maximum height of the message window. + +Patch 9.0.0352 +Problem: using :echowindow in a timer clears part of message +Solution: Do not use msg_clr_eos(). + +Patch 9.0.0353 +Problem: Missing entry in switch. +Solution: Add ISN_ECHOWINDOW. + +Patch 9.0.0354 +Problem: MS-Windows: starting a python server for test sometimes fails. +Solution: Increase the waiting time for the port. + +Patch 9.0.0355 +Problem: Check for uppercase char in autoload name is wrong, it checks the + name of the script. +Solution: Remove the check. (closes #11031) + +Patch 9.0.0356 +Problem: :echowindow sets the in_echowindow flag too early. +Solution: Set in_echowindow only when outputting the text. (Yasuhiro + Matsumoto, closes #11033) + +Patch 9.0.0357 +Problem: 'linebreak' interferes with text property highlight if there is + syntax highlighting. +Solution: Check the text prop attributes after combining with syntax + attributes. (closes #11035) + +Patch 9.0.0358 +Problem: 'breakindent' does not indent non-lists with + "breakindentopt=list:-1". +Solution: Adjust indent computation. (Maxim Kim, closes #11038) + +Patch 9.0.0359 +Problem: Error message for wrong argument type is not specific. +Solution: Include more information in the error. (Yegappan Lakshmanan, + closes #11037) + +Patch 9.0.0360 +Problem: Crash when invalid line number on :for is ignored. +Solution: Do not check breakpoint for non-existing line. + +Patch 9.0.0361 +Problem: Removing a listener may result in a memory leak and remove + subsequent listerns. +Solution: Init the "prev" pointer only once. (Yegappan Lakshmanan, + closes #11039) + +Patch 9.0.0362 +Problem: Expanding ":e %" does not work for remote files. +Solution: If the "%" or "#" file does not exist add the expansion anyway. + +Patch 9.0.0363 +Problem: Common names in test files causes tests to be flaky. +Solution: Use more specific names. + +Patch 9.0.0364 +Problem: Clang static analyzer gives warnings. +Solution: Avoid the warnings. (Yegappan Lakshmanan, closes #11043) + +Patch 9.0.0365 +Problem: File name used in test is unusual. +Solution: Rename it. (Dominique Pellé, closes #11044) + +Patch 9.0.0366 +Problem: Cannot use import->Func() in lambda. (Israel Chauca Fuentes) +Solution: Adjust how an expression in a lambda is parsed. (closes #11042) + +Patch 9.0.0367 +Problem: Coverity complains about dropping sign of character. +Solution: Add explicit type cast. + +Patch 9.0.0368 +Problem: Old Coverity warning for using NULL pointer. +Solution: Bail out if dictionary allocation fails. + +Patch 9.0.0369 +Problem: A failing flaky test doesn't mention the time. +Solution: Add the time for debugging. Improve error message. + +Patch 9.0.0370 +Problem: Cleaning up afterwards can make a function messy. +Solution: Add the :defer command. + +Patch 9.0.0371 +Problem: Compiler warning for uninitialized variable. +Solution: Initialize the variable. (John Marriott) + +Patch 9.0.0372 +Problem: MS-Windows: "%T" time format does not appear to work. +Solution: Use "%H:%M:%S" instead. + +Patch 9.0.0373 +Problem: Coverity warns for NULL check and unused return value. +Solution: Remove the NULL check, it was already checked earlier. Add (void) + to ignore the return value. + +Patch 9.0.0374 +Problem: Coverity still complains about dropping sign of character. +Solution: Add intermediate variable. + +Patch 9.0.0375 +Problem: The footer feature is unused. +Solution: Remove FEAT_FOOTER and code. + +Patch 9.0.0376 +Problem: Clang warns for dead assignments. +Solution: Adjust the code. (Yegappan Lakshmanan, closes #11048) + +Patch 9.0.0377 +Problem: Argument assignment does not work. +Solution: Skip over "=". + +Patch 9.0.0378 +Problem: Compiler warning for uninitialized variable. (Tony Mechelynck) +Solution: Initialize it. + +Patch 9.0.0379 +Problem: Cleaning up after writefile() is a hassle. +Solution: Add the 'D' flag to defer deleting the written file. Very useful + in tests. + +Patch 9.0.0380 +Problem: Deleting files in tests is a hassle. +Solution: Use the new 'D' flag of writefile(). + + +Problem: Deleting files in tests is a hassle. +Solution: Use the new 'D' flag of writefile(). + +Patch 9.0.0381 +Problem: Writefile test leaves files behind. +Solution: Fix the file names of files to be deleted. (Dominique Pellé, + closes #11056) + +Patch 9.0.0382 +Problem: Freeing the wrong string on failure. +Solution: Adjust the argument. Reorder the code. + +Patch 9.0.0383 +Problem: Coverity complains about unused value. +Solution: Use the value. + +Patch 9.0.0384 +Problem: Covertity still complains about using return value of getc(). +Solution: Check for EOF. + +Patch 9.0.0385 +Problem: GUI: when CTRL-D is mapped in Insert mode it gets inserted. + (Yasuhiro Matsumoto) +Solution: Also recognize modifier starting with CSI. (closes #11057) + +Patch 9.0.0386 +Problem: Some code blocks are nested too deep. +Solution: Bail out earlier. (Yegappan Lakshmanan, closes #11058) + +Patch 9.0.0387 +Problem: repeating a mapping does not use the right script + context. +Solution: When using a mapping put {sid}; in the redo buffer. + (closes #11049) + +Patch 9.0.0388 +Problem: The do_arg_all() function is too long. +Solution: Split the function in smaller parts. (Yegappan Lakshmanan, + closes #11062) + +Patch 9.0.0389 +Problem: Crash when 'tagfunc' closes the window. +Solution: Bail out when the window was closed. + +Patch 9.0.0390 +Problem: Cannot use a partial with :defer. +Solution: Add the partial arguments before the other arguments. Disallow + using a dictionary. + +Patch 9.0.0391 +Problem: Using separate delete() call instead of writefile() 'D' flag. +Solution: Use the writefile 'D' flag. + +Patch 9.0.0392 +Problem: Inverted condition is a bit confusing. +Solution: Remove the "!" and swap the blocks. (Ken Takata) + +Patch 9.0.0393 +Problem: Signals test often fails on FreeBSD. +Solution: Use separate files for Suspend and Resume. (Ken Takata, + closes #11065) + +Patch 9.0.0394 +Problem: Cygwin: multibyte characters may be broken in terminal window. +Solution: Adjust how to read and write on the channel. (Ken Takata, + closes #11063) + +Patch 9.0.0395 +Problem: Clang warnings for function prototypes. +Solution: Remove incomplete function prototypes. (closes #11068) + +Patch 9.0.0396 +Problem: :findrepl does not escape '&' and '~' properly. +Solution: Escape depending on the value of 'magic'. (closes #11067) + +Patch 9.0.0397 +Problem: :defer not tested with exceptions and ":qa!". +Solution: Test :defer works when exceptions are thrown and when ":qa!" is + used. Invoke the deferred calls on exit. + +Patch 9.0.0398 +Problem: Members of funccall_T are inconsistently named. +Solution: Use the "fc_" prefix for all members. + +Patch 9.0.0399 +Problem: Using :defer in expression funcref not tested. +Solution: Add a test. Fix uncovered problems. + +Patch 9.0.0400 +Problem: GUI test sometimes hangs on CI. +Solution: Delete a test file explicitly. (Ken Takata, closes #11072) + +Patch 9.0.0401 +Problem: CI uses older clang version. +Solution: Switch from clang 14 to 15. (closes #11066) + +Patch 9.0.0402 +Problem: Javascript module files are not recoginzed. +Solution: Recognize "*.jsm" files as Javascript. (Brett Holman, + closes #11069) + +Patch 9.0.0403 +Problem: 'equalalways' may be off when 'laststatus' is zero. +Solution: call last_status() before win_equal(). (Luuk van Baal, + closes #11070) + +Patch 9.0.0404 +Problem: Crash when passing invalid arguments to assert_fails(). +Solution: Check for NULL string. + +Patch 9.0.0405 +Problem: Arguments in a partial not used by a :def function. +Solution: Put the partial arguments on the stack. + +Patch 9.0.0406 +Problem: Deferred functions not invoked when partial func exits. +Solution: Create a funccall_T when calling a :def function. + +Patch 9.0.0407 +Problem: matchstr() does match column offset. (Yasuhiro Matsumoto) +Solution: Accept line number zero. (closes #10938) + +Patch 9.0.0408 +Problem: GUI test sometimes fails on MS-Windows. +Solution: Make sure Vim is the foreground window. (Ken Takata, closes #11077) + +Patch 9.0.0409 +Problem: #{g:x} was seen as a curly-braces expression. +Solution: Do never see #{} as a curly-braces expression. (closes #11075) + +Patch 9.0.0410 +Problem: Struct member cts_lnum is unused. +Solution: Delete it. + +Patch 9.0.0411 +Problem: Only created files can be cleaned up with one call. +Solution: Add flags to mkdir() to delete with a deferred function. + Expand the writefile() name to a full path to handle changing + directory. + +Patch 9.0.0412 +Problem: Compiler warning for unused argument. +Solution: Add UNUSED. + +Patch 9.0.0413 +Problem: ASAN reports a memory leak. +Solution: Free the string received from the server. (Ken Takata, + closes #11080) + +Patch 9.0.0414 +Problem: matchstr() still does not match column offset when done after a + text search. +Solution: Only use the line number for a multi-line search. Fix the test. + (closes #10938) + +Patch 9.0.0415 +Problem: On MS-Windows some tests are flaky. +Solution: Add sleeps, disable swapfile, mark test as flaky. (Ken Takata, + closes #11082) + +Patch 9.0.0416 +Problem: ml_get error when appending lines in popup window. +Solution: Only update w_topline when w_buffer matches curbuf. + (closes #11074) + +Patch 9.0.0417 +Problem: Jsonnet files are not recognized. +Solution: Add a pattern for Jsonnet files. (Cezary Drożak, closes #11073, + closes #11081) + +Patch 9.0.0418 +Problem: Manually deleting temp test files. +Solution: Use the 'D' flag of writefile() and mkdir(). + +Patch 9.0.0419 +Problem: The :defer command does not check the function argument count and + types. +Solution: Check the function arguments when adding a deferred function. + +Patch 9.0.0420 +Problem: Function went missing. +Solution: Add the function back. + +Patch 9.0.0421 +Problem: MS-Windows makefiles are inconsistently named. +Solution: Use consistent names. (Ken Takata, closes #11088) + +Patch 9.0.0422 +Problem: Not enough testing of the :all command. +Solution: Add more testing. (Yegappan Lakshmanan, closes #11091) + +Patch 9.0.0423 +Problem: "for" and "while" not recognized after :vim9cmd and :legacy. + (Emanuele Torre) +Solution: Recognize all the command modifiers. (closes #11087) +