Commit: runtime(doc): Create Changelog until v9.0.2175 (#13728)

76 views
Skip to first unread message

Christian Brabandt

unread,
Dec 19, 2023, 2:15:13 PM12/19/23
to vim...@googlegroups.com
runtime(doc): Create Changelog until v9.0.2175 (#13728)

Commit: https://github.com/vim/vim/commit/5872bcb6e8dfc15d7a5c0aaaf94d8029f3a1fa3f
Author: Christian Brabandt <c...@256bit.org>
Date: Tue Dec 19 20:10:43 2023 +0100

runtime(doc): Create Changelog until v9.0.2175 (https://github.com/vim/vim/issues/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 <c...@256bit.org>

diff --git a/runtime/doc/version9.txt b/runtime/doc/version9.txt
index 09d6b3b7e..ea3fc611c 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: <cmod> 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 <Key> 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 <Nop> mapping properly.
+Solution: Use an empty string for <Nop>. (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 <ScriptCmd> mapping does not use the right script
+ context.
+Solution: When using a mapping put <SID>{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)
+ Add a test to check the list of modifiers.
+
+Patch 9.0.0424
+Problem: gitattributes files are not recognized.
+Solution: Add patterns to match gitattributes files. (closes #11085)
+
+Patch 9.0.0425
+Problem: Autocmd test is a bit flaky on MS-Windows.
+Solution: Add a bit more sleeping. (Ken Takata, closes #11095)
+
+Patch 9.0.0426
+Problem: Failed flaky tests reports only start time.
+Solution: Also report the end time.
+
+Patch 9.0.0427
+Problem: Drupal theme files are not recognized.
+Solution: Use php filetype for Drupl theme files. Remove trailing spaces.
+ (Rodrigo Aguilera, closes #11096)
+
+Patch 9.0.0428
+Problem: Autocmd test uses common file name.
+Solution: Use unique name to reduce flakiness.
+
+Patch 9.0.0429
+Problem: Not all keys are tested for the MS-Windows GUI.
+Solution: Add more key codes to the list. (Yegappan Lakshmanan,
+ closes #11097)
+
+Patch 9.0.0430
+Problem: Cannot use repeat() with a blob.
+Solution: Implement blob repeat. (closes #11090)
+
+Patch 9.0.0431
+Problem: Current mode shows in message window.
+Solution: Reset in_echowindow before redrawing. (issue #11094)
+
+Patch 9.0.0432
+Problem: Crash when using for loop variable in closure.
+Solution: Check that the variable wasn't deleted. (issue #11094)
+
+Patch 9.0.0433
+Problem: Coverity warns for not checking allocation failure.
+Solution: Check that allocating a list or blob succeeded.
+
+Patch 9.0.0434
+Problem: gitignore files are not recognized.
+Solution: Add patterns for the gitignore filetype. (closes #11102)
+
+Patch 9.0.0435
+Problem: Compiler warning for uninitialized variable.
+Solution: Initialize it.
+
+Patch 9.0.0436
+Problem: CI: running tests in parallel causes flakiness.
+Solution: Reorganize the MS-Windows runs. (Ken Takata, closes #11101)
+
+Patch 9.0.0437
+Problem: No error when a custom completion function returns something else
+ than the expected list.
+Solution: Give an error. (closes #11100)
+
+Patch 9.0.0438
+Problem: Cannot put virtual text above a line.
+Solution: Add the "above" value for "text_align".
+
+Patch 9.0.0439
+Problem: Cursor wrong if inserting before line with virtual text above.
+Solution: Add the width of the "above" virtual text to the cursor position.
+ (issue #11084)
+
+Patch 9.0.0440
+Problem: Crash when using mkdir() with "R" flag in compiled function.
+Solution: Reserve a variable for deferred function calls. Handle more than
+ one argument.
+
+Patch 9.0.0441
+Problem: Closure in for loop test fails on some systems.
+Solution: Do not wait for the ruler to show up. (issue #11106)
+
+Patch 9.0.0442
+Problem: Virtual text "above" doesn't handel line numbers.
+Solution: Take the left column offset into account. (issue #11084)
+ Also make padding work.
+
+Patch 9.0.0443
+Problem: Blueprint files are not recognized.
+Solution: Add a pattern for blueprint files. (Gabriele Musco, closes #11107)
+
+Patch 9.0.0444
+Problem: Trying to declare g:variable gives confusing error.
+Solution: Give a better error message. (closes #11108)
+
+Patch 9.0.0445
+Problem: When opening/closing window text moves up/down.
+Solution: Add the 'splitscroll' option. When off text will keep its
+ position as much as possible.
+
+Patch 9.0.0446
+Problem: Message window may be positioned too low.
+Solution: Compute cmdline_row before computing the position.
+
+Patch 9.0.0447
+Problem: Using :echowin while at the hit-enter prompt causes problems.
+Solution: Do not prompt for :echowin. Postpone showing the message window.
+ Start the timer when the window is displayed.
+
+Patch 9.0.0448
+Problem: SubRip files are not recognized.
+Solution: Add a pattern for SubRip. (closes #11113)
+
+Patch 9.0.0449
+Problem: There is no easy way to translate a string with a key code into a
+ readable string.
+Solution: Add the keytrans() function. (closes #11114)
+
+Patch 9.0.0450
+Problem: Return value of argument check functions is inconsistent.
+Solution: Return OK/FAIL instead of TRUE/FALSE. (closes #11112)
+
+Patch 9.0.0451
+Problem: Virtual text "above" does not work with 'nowrap'.
+Solution: Do wrap the line after. (closes #11084)
+
+Patch 9.0.0452
+Problem: Visual highlighting extends into virtual text prop.
+Solution: Do not highlight what isn't actually selected. Fix ordering of
+ stored text props.
+
+Patch 9.0.0453
+Problem: On an AZERTY keyboard digit keys get the shift modifier.
+Solution: Remove the shift modifier from digit keys. (closes #11109)
+
+Patch 9.0.0454
+Problem: Incorrect color for modeless selection with GTK.
+Solution: Use simple inversion instead of XOR. (closes #11111)
+
+Patch 9.0.0455
+Problem: A few problems with 'splitscroll'.
+Solution: Fix 'splitscroll' problems. (Luuk van Baal, closes #11117)
+
+Patch 9.0.0456
+Problem: Function called at debug prompt is also debugged.
+Solution: Reset the debug level while entering the debug command.
+ (closes #11118)
+
+Patch 9.0.0457
+Problem: Substitute prompt does not highlight an empty match.
+Solution: Highlight at least one character.
+
+Patch 9.0.0458
+Problem: Splitting a line with a text prop "above" moves it to a new line
+ below.
+Solution: Keep an "above" text prop above the first line.
+
+Patch 9.0.0459
+Problem: Vim9: block in for loop doesn't behave like a code block.
+Solution: Use a new block ID for each loop at the script level.
+
+Patch 9.0.0460
+Problem: Loop variable can't be found.
+Solution: Adjust block_id of the loop variable each round.
+
+Patch 9.0.0461
+Problem: 'scroll' is not always updated.
+Solution: Call win_init_size() at the right place.
+
+Patch 9.0.0462
+Problem: ASAN warning for integer overflow.
+Solution: Check for tp_col to be MAXCOL.
+
+Patch 9.0.0463
+Problem: Command line test leaves directory behind.
+Solution: Use the "R" flag on the first mkdir(). (Dominique Pellé,
+ closes #11127)
+
+Patch 9.0.0464
+Problem: With virtual text "above" indenting doesn't work well.
+Solution: Ignore text properties while adjusting indent. (issue #11084)
+
+Patch 9.0.0465
+Problem: Cursor moves when cmdwin is closed when 'splitscroll' is off.
+Solution: Temporarily set 'splitscroll' when jumping back to the original
+ window. (closes #11128)
+
+Patch 9.0.0466
+Problem: Virtual text wrong after adding line break after line.
+Solution: Pass an "eol" flag to where text properties are adjusted.
+ (closes #11131)
+
+Patch 9.0.0467
+Problem: Build failure.
+Solution: Add missing change.
+
+Patch 9.0.0468
+Problem: Exectution stack underflow without the +eval feature. (Dominique
+ Pellé)
+Solution: Add to execution stack without FEAT_EVAL. (closes #11135)
+
+Patch 9.0.0469
+Problem: Cursor moves if cmdwin is closed when 'splitscroll' is off.
+Solution: Skip win_fix_cursor if called when cmdwin is open or closing.
+ (Luuk van Baal, closes #11134)
+
+Patch 9.0.0470
+Problem: In a :def function all closures in a loop get the same variables.
+Solution: When in a loop and a closure refers to a variable declared in the
+ loop, prepare for making a copy of variables for each closure.
+
+Patch 9.0.0471
+Problem: No test for what patch 9.0.0469 fixes.
+Solution: Add a test. (closes #11140)
+
+Patch 9.0.0472
+Problem: Virtual text "below" doesn't show in list mode.
+Solution: Reset lcs_eol_one when displaying text property.
+
+Patch 9.0.0473
+Problem: fullcommand() only works for the current script version.
+Solution: Add an optional argument for the script version.
+
+Patch 9.0.0474
+Problem: fullcommand() test failure.
+Solution: Update function table.
+
+Patch 9.0.0475
+Problem: Not using deferred delete in tests.
+Solution: Use deferred delete more often.
+
+Patch 9.0.0476
+Problem: Varargs does not work for replacement function of substitute().
+Solution: Check the varargs flag of the function. (closes #11142)
+
+Patch 9.0.0477
+Problem: Missing dependency may cause crashes on incomplete build.
+Solution: Add dependency.
+
+Patch 9.0.0478
+Problem: Test for 'splitscroll' takes too much time.
+Solution: Only test some of the combinations. (Luuk van Baal, closes #11139)
+
+Patch 9.0.0479
+Problem: In a :def function all closures in a loop get the same variables.
+Solution: Use a separate list of variables for LOADOUTER and SAVEOUTER.
+
+Patch 9.0.0480
+Problem: Cannot use a :def varargs function with substitute().
+Solution: Use has_varargs(). (closes #11146)
+
+Patch 9.0.0481
+Problem: In a :def function all closures in a loop get the same variables.
+Solution: Use a separate list of variables for LOADOUTER and STOREOUTER.
+ Not copied at end of loop yet.
+
+Patch 9.0.0482
+Problem: "g0" moves to wrong location with virtual text "above".
+Solution: Compensate for the extra columns. (closes #11141) Also fix "g$"
+
+Patch 9.0.0483
+Problem: Illegal memory access when replacing in virtualedit mode.
+Solution: Check for replacing NUL after Tab.
+
+Patch 9.0.0484
+Problem: In a :def function all closures in a loop get the same variables.
+Solution: Add ENDLOOP at break, continue and return if needed.
+
+Patch 9.0.0485
+Problem: In a :def function all closures in a loop get the same variables.
+Solution: Make a copy of loop variables used in a closure.
+
+Patch 9.0.0486
+Problem: Text scrolled with 'nosplitscroll', autocmd win opened and help
+ window closed.
+Solution: Skip win_fix_scroll() in more situations. (Luuk van Baal,
+ closes #11150)
+
+Patch 9.0.0487
+Problem: Using freed memory with combination of closures.
+Solution: Do not use a partial after it has been freed through the
+ funcstack.
+
+Patch 9.0.0488
+Problem: Cursor in wrong position with virtual text "above" and
+ 'showbreak'.
+Solution: Take the first character column into account. (closes #11149)
+
+Patch 9.0.0489
+Problem: Using "end_lnum" with virtual text causes problems.
+Solution: Disallow using "end_lnum" with virtual text. (closes #11151)
+ Also disallow "end_col" and "length".
+
+Patch 9.0.0490
+Problem: Using freed memory with cmdwin and BufEnter autocmd.
+Solution: Make sure pointer to b_p_iminsert is still valid.
+
+Patch 9.0.0491
+Problem: No good reason to build without the float feature.
+Solution: Remove configure check for float and "#ifdef FEAT_FLOAT".
+
+Patch 9.0.0492
+Problem: Cmdwin test fails on MS-Windows.
+Solution: Skip test on MS-Windows.
+
+Patch 9.0.0493
+Problem: Perl test fails.
+Solution: Remove remaining FEAT_EVAL.
+
+Patch 9.0.0494
+Problem: Small build misses float function declaraitons.
+Solution: Adjust #ifdefs.
+
+Patch 9.0.0495
+Problem: Closure doesn't work properly in nested loop.
+Solution: Save variables up to the outer loop.
+
+Patch 9.0.0496
+Problem: No good reason to keep supporting Windows-XP.
+Solution: Drop Windows-XP support. (Ken Takata, closes #11089)
+
+Patch 9.0.0497
+Problem: LyRiCs files are not recognized.
+Solution: Add a pattern to detect LyRiCs files. (closes #11155)
+
+Patch 9.0.0498
+Problem: Various small issues.
+Solution: Various small fixes.
+
+Patch 9.0.0499
+Problem: In :def function list created after const is locked.
+Solution: Reset v_lock. (closes #11154)
+
+Patch 9.0.0500
+Problem: When quitting the cmdline window with CTRL-C it remains visible.
+Solution: Redraw to avoid confusion. Adjust the error message.
+ (closes #11152) Adjust the cursor position after CTRL-C.
+
+Patch 9.0.0501
+Problem: Warning for using uninitialized value in mouse test.
+Solution: Clear ScreenCols when allocating it. (Dominique Pellé)
+
+Patch 9.0.0502
+Problem: A closure in a nested loop in a :def function does not work.
+Solution: Use an array of loopvars, one per loop level.
+
+Patch 9.0.0503
+Problem: Build failure.
+Solution: Add missing changes.
+
+Patch 9.0.0504
+Problem: still a Build failure.
+Solution: Add another missing changes. Avoid compiler warning.
+
+Patch 9.0.0505
+Problem: Various problems with 'nosplitscroll'.
+Solution: Fix 'nosplitscroll' problems. (Luuk van Baal, closes #11166)
+
+Patch 9.0.0506
+Problem: Line number argument for :badd does not work.
+Solution: Set the last cursor position in the new buffer. (closes #11161)
+
+Patch 9.0.0507
+Problem: Command line cleared when using :redrawstatus in CmdlineChanged
+ autocommand event.
+Solution: Postpone the redraw. (closes #11162)
+
+Patch 9.0.0508
+Problem: When the channel test fails there is no clue why.
+Solution: Add info about the job status. (Ken Takata, closes #11175)
+
+Patch 9.0.0509
+Problem: Confusing error for "saveas" command with "nofile" buffer.
+Solution: Give a clearer error message. (closes #11171)
+
+Patch 9.0.0510
+Problem: Chatito files are not recognized.
+Solution: Add a pattern for Chatito files. (closes #11174)
+
+Patch 9.0.0511
+Problem: Unnecessary scrolling for message of only one line.
+Solution: Only set msg_scroll when needed. (closes #11178)
+
+Patch 9.0.0512
+Problem: Cannot redraw the status lines when editing a command.
+Solution: Only postpone the redraw when messages have scrolled.
+ (closes #11170)
+
+Patch 9.0.0513
+Problem: May not be able to use a pattern ad the debug prompt.
+Solution: Temporarily disable the timeout. (closes #11164)
+
+Patch 9.0.0514
+Problem: Terminal test sometimes hangs.
+Solution: Add a bit more information to the test output. (issue #11179)
+
+Patch 9.0.0515
+Problem: Virtual text highlight starts too early when 'number' is set.
+Solution: Set column offset when wrapping. (issue #11138)
+
+Patch 9.0.0516
+Problem: Virtual text "above" highlights gap after it.
+Solution: Do not highlight the gap. (closes #11138)
+
+Patch 9.0.0517
+Problem: When at the command line :redrawstatus does not work well.
+Solution: Only update the statuslines instead of the screen. (closes #11180)
+
+Patch 9.0.0518
+Problem: Virtual text highlight starts too early with 'nowrap' and 'number'
+ set.
+Solution: Add the offset to the attribute skip count. (issue #11138)
+
+Patch 9.0.0519
+Problem: The win_line() function is much too long.
+Solution: Move the code to draw the line number to a separate function.
+
+Patch 9.0.0520
+Problem: Declaring a loop variable at the start of a block is clumsy.
+Solution: Declare the variable inside the loop in a few places to see if
+ this works.
+
+Patch 9.0.0521
+Problem: Compiler warns for unused argument in small version.
+Solution: Add UNUSED.
+
+Patch 9.0.0522
+Problem: Build fails on Appveyor.
+Solution: Select Visual Studio 2015 for the build tools.
+
+Patch 9.0.0523
+Problem: more compiler warnings for arguments in small version
+Solution: Adjust #ifdefs.
+
+Patch 9.0.0524
+Problem: Build instructions for MS-Windows are outdated.
+Solution: Remove instructions for old MSVC versions.
+
+Patch 9.0.0525
+Problem: Manually deleting temp test files.
+Solution: Add the 'D' flag to writefile().
+
+Patch 9.0.0526
+Problem: MS-Windows: still some support for XP and old compilers.
+Solution: Remove XP support and mention of old compilers. (Ken Takata,
+ closes #11183)
+
+Patch 9.0.0527
+Problem: Long sign text may overflow buffer.
+Solution: Use a larger buffer. Prevent for overflow.
+
+Patch 9.0.0528
+Problem: MS-Windows: no batch files for more recent MSVC versions.
+Solution: Add batch files for 2017, 2019 and 2022. (Ken Takata,
+ closes #11184)
+
+Patch 9.0.0529
+Problem: Appveyor setup contains outdated lines.
+Solution: Remove outdated lines. (Ken Takata, closes #11182)
+
+Patch 9.0.0530
+Problem: Using freed memory when autocmd changes mark.
+Solution: Copy the mark before editing another buffer.
+
+Patch 9.0.0531
+Problem: The win_line() function is much too long.
+Solution: Move code to separate functions.
+
+Patch 9.0.0532
+Problem: Edit test is flaky when run under valgrind.
+Solution: Send some text to the terminal to trigger a redraw.
+
+Patch 9.0.0533
+Problem: The win_line() function is much too long.
+Solution: Move code to separate functions.
+
+Patch 9.0.0534
+Problem: Line number is displayed at virtual text "above".
+Solution: Show the line number at the text line.
+
+Patch 9.0.0535
+Problem: Closure gets wrong value in for loop with two loop variables.
+Solution: Correctly compute the number of loop variables to clear.
+
+Patch 9.0.0536
+Problem: CI: codecov action update available.
+Solution: Update Codecov 3.1.0 to 3.3.1. (closes #11188)
+
+Patch 9.0.0537
+Problem: The do_set() function is much too long.
+Solution: Move setting of a string option to a separate function.
+
+Patch 9.0.0538
+Problem: Manually deleting test temp files.
+Solution: Add the 'D' flag to writefile().
+
+Patch 9.0.0539
+Problem: Long message test can be flaky.
+Solution: Wait for more prompt instead of ruler.
+
+Patch 9.0.0540
+Problem: Assigning stack variable to argument confuses Coverity.
+Solution: Use a local pointer, also makes the code simpler.
+
+Patch 9.0.0541
+Problem: Terminal pwd test fails with a very long path name.
+Solution: Join two lines.
+
+Patch 9.0.0542
+Problem: MSVC build still has support for 2012 edition.
+Solution: Drop MSVC 2012 support. (Ken Takata, closes #11191)
+
+Patch 9.0.0543
+Problem: Insufficient testing for assert and test functions.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #11190)
+
+Patch 9.0.0544
+Problem: Minor issues with setting a string option.
+Solution: Adjust the code, add a test. (closes #11192)
+
+Patch 9.0.0545
+Problem: When a test is slow and CI times out there is no time info.
+Solution: Add the elapsed time to the "Executing" message.
+
+Patch 9.0.0546
+Problem: Supporting Ruby 1.8 makes code complicated.
+Solution: Drop Ruby 1.8 support, it is ancient. (Ken Takata, closes #11195)
+
+Patch 9.0.0547
+Problem: Looping over empty out_loop[] entries.
+Solution: Store the array size.
+
+Patch 9.0.0548
+Problem: reduce() with a compiled lambda could be faster.
+Solution: Call eval_expr_typval() instead of call_func() directly.
+
+Patch 9.0.0549
+Problem: Duplicated code in calling a :def function.
+Solution: Simplify the code.
+
+Patch 9.0.0550
+Problem: Crash when closing a tabpage and buffer is NULL.
+Solution: Adjust how autocommands are triggered when closing a window.
+ (closes #11198, closes #11197)
+
+Patch 9.0.0551
+Problem: Mode message is delayed when :echowin was used. (Maxim Kim)
+Solution: Save and restore msg_didout in :echowin. (closes #11193)
+
+Patch 9.0.0552
+Problem: Crash when using NUL in buffer that uses :source.
+Solution: Don't get a next line when skipping over NL.
+
+Patch 9.0.0553
+Problem: No error for "|" after "{" in lamda.
+Solution: Check for invalid "|". (closes #11199)
+
+Patch 9.0.0554
+Problem: Using freed memory when command follows lambda.
+Solution: Don't free what is still in use. (closes #11201)
+
+Patch 9.0.0555
+Problem: Scrolling with 'nosplitscroll' in callback changing curwin.
+Solution: Invalidate w_cline_row in the right place. (Luuk van Baal,
+ closes #11185)
+
+Patch 9.0.0556
+Problem: Leaking memory with nested functions.
+Solution: Free saved pointer.
+
+Patch 9.0.0557
+Problem: Valgrind reports possibly leaked memory.
+Solution: Move the problematic test function to the "fails" test file to
+ avoid obscuring real memory leaks.
+
+Patch 9.0.0558
+Problem: Coverity warns for possibly using NULL pointer.
+Solution: Only use "evalarg" when not NULL.
+
+Patch 9.0.0559
+Problem: Timer test may get stuck at hit-enter prompt.
+Solution: Feed some more characters.
+
+Patch 9.0.0560
+Problem: Elapsed time since testing started is not visible.
+Solution: Show the elapsed time while running tests.
+
+Patch 9.0.0561
+Problem: When a test gets stuck it just hangs forever.
+Solution: Set a timeout of 30 seconds.
+
+Patch 9.0.0562
+Problem: HSL playlist files are not recognized.
+Solution: Add a pattern to recognize HSL palylist files. (Benoît Ryder,
+ closes #11204)
+
+Patch 9.0.0563
+Problem: Timer_info() test fails.
+Solution: Ignore test timeout timer. Don't use test_null_job() when not
+ available.
+
+Patch 9.0.0564
+Problem: A few tests keep failing on MacOS M1.
+Solution: Add a test check CheckNotMacM1. Fix timer tests.
+
+Patch 9.0.0565
+Problem: Cscope test causes problems when code for test timeout timer is
+ included (even when commented out).
+Solution: Disable part of the cscope test for now.
+
+Patch 9.0.0566
+Problem: Nim files are not recognized.
+Solution: Add patterns for Nim files. (Nbiba Bedis, closes #11205)
+
+Patch 9.0.0567
+Problem: 'completeopt' "longest" is not used for complete().
+Solution: Also use "longest" for complete(). (Bjorn Linse, closes #11206)
+
+Patch 9.0.0568
+Problem: Autocmd code is indented more than needed.
+Solution: Break out sooner. (Yegappan Lakshmanan, closes #11208)
+ Also in user function code.
+
+Patch 9.0.0569
+Problem: Cannot easily get out when using "vim file | grep word".
+Solution: Without changes let CTRL-C exit Vim. Otherwise give a message on
+ stderr. (closes #11209)
+
+Patch 9.0.0570
+Problem: CI for Windows is still using codecov action 3.1.0.
+Solution: Use action 3.1.1. (closes #11212)
+
+Patch 9.0.0571
+Problem: MS-Windows: CTRL-C can make Vim exit.
+Solution: Check the not-a-term argument.
+
+Patch 9.0.0572
+Problem: Insert complete tests leave a mapping behind.
+Solution: Use a buffer-local mapping. (closes #11211)
+
+Patch 9.0.0573
+Problem: Outdated dependencies go unnoticed.
+Solution: Use github Dependabot. (closes #11213)
+
+Patch 9.0.0574
+Problem: Timer garbage collect test hangs on Mac M1.
+Solution: Properly check for Mac M1 and skip the test.
+
+Patch 9.0.0575
+Problem: The getchar() function behaves strangely with bracketed paste.
+Solution: Do not handle paste-start in getchar(). (issue #11172)
+
+Patch 9.0.0576
+Problem: Unused loop variables.
+Solution: Use a while loop instead. (closes #11214)
+
+Patch 9.0.0577
+Problem: Buffer underflow with unexpected :finally.
+Solution: Check CSF_TRY can be found.
+
+Patch 9.0.0578
+Problem: One timer test fails on Mac M1.
+Solution: Skip the test on Mac M1.
+
+Patch 9.0.0579
+Problem: Using freed memory when 'tagfunc' wipes out buffer that holds
+ 'complete'.
+Solution: Make a copy of the option. Make sure cursor position is valid.
+
+Patch 9.0.0580
+Problem: No CI running for MacOS on M1.
+Solution: Add a cirrus CI task. (closes #11203)
+
+Patch 9.0.0581
+Problem: Adding a character for incsearch fails at end of line.
+Solution: Only check cursor line number.
+
+Patch 9.0.0582
+Problem: Channel cwd test fails on Cirrus CI.
+Solution: Also remove /private from the expected directory.
+
+Patch 9.0.0583
+Problem: Only recognizing .m3u8 files is inconsistent.
+Solution: Also matc .m3u files. (issue #11204)
+
+Patch 9.0.0584
+Problem: Cscope test with wrong executable name fails.
+Solution: Use /bin/sh to execute the command. (Yegappan Lakshmanan)
+
+Patch 9.0.0585
+Problem: When long message test fails the error message is not visible.
+Solution: Dump more lines.
+
+Patch 9.0.0586
+Problem: Missing change in test.
+Solution: Add the test change.
+
+Patch 9.0.0587
+Problem: Unicode tables are outdated.
+Solution: Update to Unicode release 15. (Christian Brabandt, closes #11220)
+
+Patch 9.0.0588
+Problem: MorphOS build is broken.
+Solution: Add "-lm" to LDFLAGS and "-noixemul" to CFLAGS. (Ola Söder,
+ closes #11222)
+
+Patch 9.0.0589
+Problem: On AmigaOS4 the pid is available but the task address is used.
+Solution: Use getpid(). (Ola Söder, closes #11224)
+
+Patch 9.0.0590
+Problem: After exiting Insert mode spelling is not checked in the next
+ line.
+Solution: When spelling is enabled redraw the next line after exiting Insert
+ mode in case the spell highlight needs updating.
+
+Patch 9.0.0591
+Problem: Message window popup shows on only one tab page. (Naruhiko
+ Nishino)
+Solution: Show the message window popup on all tab pages. (closes #11231)
+
+Patch 9.0.0592
+Problem: Display not cleared when scrolling back in messages, a background
+ color is set and t_ut is empty.
+Solution: Clear to the end of the display if needed. (closes #8973)
+
+Patch 9.0.0593
+Problem: CI actions have too many permissions.
+Solution: Restrict permissions to what is required. (closes #11223)
+
+Patch 9.0.0594
+Problem: Makefile error message causes a shell error.
+Solution: Put the message in single quotes. (closes #11232)
+
+Patch 9.0.0595
+Problem: Extra newline in messages after a verbose shell message.
+Solution: Output the newline with msg_putchar_attr(). (closes #11233)
+ Make it possible to filter a screendump before comparing it.
+
+Patch 9.0.0596
+Problem: CI on Mac M1 has the channel feature disabled.
+Solution: Include the channel feature.
+
+Patch 9.0.0597
+Problem: Cannot close a tab page with the middle mouse button.
+Solution: Support closing a tab page with the middle mouse button, like many
+ other programs. (closes #10746)
+
+Patch 9.0.0598
+Problem: Using negative array index with negative width window.
+Solution: Make sure the window width does not become negative.
+
+Patch 9.0.0599
+Problem: Latexmkrc files are not recognized.
+Solution: Use Perl filetype for latexmkrc files. (closes #11241)
+
+Patch 9.0.0600
+Problem: GYP files are not recognized.
+Solution: Recognize GYP files. (closes #11242)
+
+Patch 9.0.0601
+Problem: Too much indent.
+Solution: Return out early from a funtion. (Yegappan Lakshmanan,
+ close #11238)
+
+Patch 9.0.0602
+Problem: New TypeScript extensions are not recognized.
+Solution: Recognize .mts and .cts files. (closes #11237)
+
+Patch 9.0.0603
+Problem: With 'nosplitscroll' folds are not handled correctly.
+Solution: Take care of closed folds when moving the cursor. (Luuk van Baal,
+ closes #11234)
+
+Patch 9.0.0604
+Problem: Luacheckrc file is not recognized.
+Solution: Use lua filetype for luacheckrc. (closes #11236)
+
+Patch 9.0.0605
+Problem: Dump file missing.
+Solution: Add the missing dump file. (issue #11234)
+
+Patch 9.0.0606
+Problem: system() opens a terminal window when using the GUI and "!" is in
+ 'guioptions'.
+Solution: Do not use a terminal window when the SHELL_SILENT flag is used.
+ (closes #11202)
+
+Patch 9.0.0607
+Problem: Verbose echo message test fails on Mac OS.
+Solution: Skip the test on Mac OS.
+
+Patch 9.0.0608
+Problem: With spell checking, deleting a full stop at the end of a line
+ does not update SpellCap at the start of the next line.
+Solution: Update the next line when characters have been deleted. Also when
+ using undo.
+
+Patch 9.0.0609
+Problem: Blockedit test fails because of wrong indent.
+Solution: Adjust the expected text temporarily
+
+Patch 9.0.0610
+Problem: Global interrupt test fails when run under valgrind.
+Solution: Use TermWait().
+
+Patch 9.0.0611
+Problem: Tests delete files with a separate delete() call.
+Solution: Use deferred delete.
+
+Patch 9.0.0612
+Problem: Blockedit test passes with wrong result.
+Solution: Add a "vim9script" line to make indenting work.
+
+Patch 9.0.0613
+Problem: Running source tests leaves file behind.
+Solution: Add the "D" flag to writefile(). (Dominique Pellé, closes #11243)
+ Also do this for other writefile() calls and drop delete().
+
+Patch 9.0.0614
+Problem: SpellFileMissing autocmd may delete buffer.
+Solution: Disallow deleting the current buffer to avoid using freed memory.
+
+Patch 9.0.0615
+Problem: Using reduce() on a list from range() is a bit slow.
+Solution: Avoid materializing the list.
+
+Patch 9.0.0616
+Problem: Spell test fails because error message changed.
+Solution: Adjust expected error message.
+
+Patch 9.0.0617
+Problem: Calling function for reduce() has too much overhead.
+Solution: Only call clear_tv() when needed.
+
+Patch 9.0.0618
+Problem: Calling function for reduce() has too much overhead.
+Solution: Do not create a funccall_T every time.
+
+Patch 9.0.0619
+Problem: Too many delete() calls in tests.
+Solution: Use deferred delete where possible.
+
+Patch 9.0.0620
+Problem: matchaddpos() can only add up to 8 matches.
+Solution: Allocate the array of positions. (closes #11248)
+
+Patch 9.0.0621
+Problem: Filetype test leaves file behind.
+Solution: Add deferred delete flag to writefile(). (Dominique Pellé,
+ closes #11249)
+
+Patch 9.0.0622
+Problem: matchaddpos() can get slow when adding many matches.
+Solution: Update the next available match ID when manually picking an ID and
+ remove check if the available ID can be used. (idea by Rick Howe)
+
+Patch 9.0.0623
+Problem: Error for modifying a const is not detected at compile time.
+Solution: Add TTFLAG_CONST and check for it in add() and extend().
+
+Patch 9.0.0624
+Problem: Leaking argument type array.
+Solution: Add allocated memory to type_gap.
+
+Patch 9.0.0625
+Problem: Too many delete() calls in tests.
+Solution: Use deferred delete where possible.
+
+Patch 9.0.0626
+Problem: Too many delete() calls in tests.
+Solution: Use deferred delete where possible.
+
+Patch 9.0.0627
+Problem: "const" and "final" both make the type a constant. (Daniel
+ Steinberg)
+Solution: Only have "const" make the type a constant.
+
+Patch 9.0.0628
+Problem: Coverity warns for not checking return value.
+Solution: Check the return value and simplify the code.
+
+Patch 9.0.0629
+Problem: Get an error for using const only when executing.
+Solution: Check for const at compile time for filter(), map(), remove(),
+ reverse(), sort() and uniq().
+
+Patch 9.0.0630
+Problem: In Vim9 script a numbered function cannot be called.
+Solution: Do not require "g:" before a numbered function name.
+ (closes #11254)
+
+Patch 9.0.0631
+Problem: Too many delete() calls in tests.
+Solution: Use deferred delete where possible.
+
+Patch 9.0.0632
+Problem: Calling a function from an "expr" option has too much overhead.
+Solution: Add call_simple_func() and use it for 'foldexpr'
+
+Patch 9.0.0633
+Problem: FEAT_TITLE was removed but is still used.
+Solution: Remove FEAT_TITLE. (Naruhiko Nishino, closes #11256)
+
+Patch 9.0.0634
+Problem: Evaluating "expr" options has more overhead than needed.
+Solution: Use call_simple_func() for 'foldtext', 'includeexpr', 'printexpr',
+ "expr" of 'spellsuggest', 'diffexpr', 'patchexpr', 'balloonexpr',
+ 'formatexpr', 'indentexpr' and 'charconvert'.
+
+Patch 9.0.0635
+Problem: Build error and compiler warnings.
+Solution: Add missing change. Add type casts.
+
+Patch 9.0.0636
+Problem: Underline color does not work in terminals that don't send a
+ termresponse.
+Solution: Do output t_8u if it was set explicitly. (closes #11253)
+
+Patch 9.0.0637
+Problem: Syntax of commands in Vim9 script depends on +eval feature.
+Solution: Use same syntax with and without the +eval feature.
+
+Patch 9.0.0638
+Problem: Popup menu highlight wrong on top of preview popup. (Yegappan
+ Lakshmanan)
+Solution: Also check for the popup menu in screen_line().
+
+Patch 9.0.0639
+Problem: Checking for popup in screen_char() is too late, the attribute has
+ already been changed.
+Solution: Move check for popup to where screen_char() is called.
+
+Patch 9.0.0640
+Problem: Cannot scroll by screen line if a line wraps.
+Solution: Add the 'smoothscroll' option. Only works for CTRL-E and CTRL-Y
+ so far.
+
+Patch 9.0.0641
+Problem: Missing part of the new option code.
+Solution: Add missing WV_SMS.
+
+Patch 9.0.0642
+Problem: Breakindent test fails.
+Solution: Correct logic for resetting need_showbreak.
+
+Patch 9.0.0643
+Problem: Smoothscroll test fails.
+Solution: Check if skipcol changed.
+
+Patch 9.0.0644
+Problem: 'smoothscroll' is not copied to a new window on :split.
+Solution: Copy the option value. Add a test.
+
+Patch 9.0.0645
+Problem: CTRL-Y does not stop at line 1. (John Marriott)
+Solution: Stop at line 1 when 'smoothscroll' is not set. (closes #11261)
+
+Patch 9.0.0646
+Problem: with 'smoothscroll' set CTRL-E does not work properly when
+ 'foldmethod' is set to "indent". (Yee Cheng Chin)
+Solution: Merge the code for scroling with folds and 'smoothscroll'.
+ (closes #11262)
+
+Patch 9.0.0647
+Problem: The 'splitscroll' option is not a good name.
+Solution: Rename 'splitscroll' to 'splitkeep' and make it a string option,
+ also supporting "topline". (Luuk van Baal, closes #11258)
+
+Patch 9.0.0648
+Problem: When using powershell input redirection does not work.
+Solution: Use a different shell command for powershell. (Yegappan
+ Lakshmanan, closes #11257)
+
+Patch 9.0.0649
+Problem: No indication when the first line is broken for 'smoothscroll'.
+Solution: Show "<<<" in the first line.
+
+Patch 9.0.0650
+Problem: Some tests are failing.
+Solution: Adjust for "<<<" showing up.
+
+Patch 9.0.0651
+Problem: Build fails without the +conceal feature.
+Solution: Rename called function.
+
+Patch 9.0.0652
+Problem: 'smoothscroll' not tested with 'number' and "n" in 'cpo'.
+Solution: Add tests, fix uncovered problem.
+
+Patch 9.0.0653
+Problem: BS and DEL do not work properly in an interacive shell. (Gary
+ Johnson)
+Solution: Adjust the length for replaced codes.
+
+Patch 9.0.0654
+Problem: Breakindent test fails.
+Solution: Temporarily accept wrong result.
+
+Patch 9.0.0655
+Problem: passing modifier codes to a shell running in the GUI. (Gary
+ Johnson)
+Solution: Include modifier codes into the key and drop the modifiers.
+
+Patch 9.0.0656
+Problem: Cannot specify another character to use instead of '@' at the end
+ of the window.
+Solution: Add "lastline" to 'fillchars'. (Martin Tournoij, closes #11264,
+ closes #10963)
+
+Patch 9.0.0657
+Problem: Too many #ifdefs.
+Solution: Graduate the +cmdwin feature. Now the tiny and small builds are
+ equal, drop the small build. (Martin Tournoij, closes #11268)
+
+Patch 9.0.0658
+Problem: Tiny build fails on Mac OS.
+Solution: Define FEAT_CLIPBOARD only for normal build.
+
+Patch 9.0.0659
+Problem: Wrong type of comment in SetSyn() function.
+Solution: Use Vim9 comment. (closes #11278)
+
+Patch 9.0.0660
+Problem: Mapping with CTRL keys does not work in the GUI.
+Solution: Recognize CSI next to K_SPECIAL. (closes #11275, closes #11270)
+
+Patch 9.0.0661
+Problem: Multi-byte "lastline" item in 'fillchars' does not work properly
+ when the window is two columns wide.
+Solution: Compute the text length correctly. (closes #11280)
+
+Patch 9.0.0662
+Problem: Concealed characters do not work correctly.
+Solution: Subtract boguscols instead of adding them. (closes #11273)
+
+Patch 9.0.0663
+Problem: Tests check for +cmdwin feature which is always present.
+Solution: Remove the checks. (closes #11287)
+
+Patch 9.0.0664
+Problem: Bad redrawing with spell checking, using "C" and "$" in 'cpo'.
+Solution: Do not redraw the next line when "$" is in 'cpo'. (closes #11285)
+
+Patch 9.0.0665
+Problem: Setting 'cmdheight' has no effect if last window was resized.
+Solution: Do apply 'cmdheight' when told to. Use the frame height instead
+ of the cmdline_row. (closes #11286)
+
+Patch 9.0.0666
+Problem: Spacing-combining characters handled as composing, causing text to
+ take more space than expected.
+Solution: Handle characters marked with "Mc" not as composing.
+ (closes #11282
+
+Patch 9.0.0667
+Problem: ml_get error when 'splitkeep' is "screen". (Marius Gedminas)
+Solution: Check the botline is not too large. (Luuk van Baal,
+ closes #11293, closes #11292)
+
+Patch 9.0.0668
+Problem: CI on Mac M1 only uses clang
+Solution: Also run with gcc. (closes #11263)
+
+Patch 9.0.0669
+Problem: Too many delete() calls in tests.
+Solution: Use deferred delete where possible.
+
+Patch 9.0.0670
+Problem: No space for command line when there is a tabline.
+Solution: Correct computation of where the command line should be.
+ (closes #11295)
+
+Patch 9.0.0671
+Problem: Negative topline using CTRL-Y with 'smoothscroll' and 'diff'.
+ (Ernie Rael)
+Solution: Only use 'smoothscroll' when 'wrap' is set.
+
+Patch 9.0.0672
+Problem: Cursor line only partly shows with 'smoothscroll' and 'scrolloff'
+ zero.
+Solution: Do not use 'smoothscroll' when adjusting the bottom of the window.
+ (closes #11269)
+
+Patch 9.0.0673
+Problem: First line not scrolled properly with 'smoothscroll' and
+ 'scrolloff' zero and using "k".
+Solution: Make sure the cursor position is visible.
+
+Patch 9.0.0674
+Problem: Build error with tiny version.
+Solution: Use PLINES_NOFILL macro.
+
+Patch 9.0.0675
+Problem: Search test screendump is outdated.
+Solution: Update the screendump for improved display.
+
+Patch 9.0.0676
+Problem: CI on Mac M1 with gcc actually uses clang.
+Solution: Remove the gcc task. (Ozaki Kiichi, closes #11297)
+
+Patch 9.0.0677
+Problem: Breakindent test accepts wrong result.
+Solution: Fix the number column and adjust the expected text.
+
+Patch 9.0.0678
+Problem: Using exclamation marks on :function.
+Solution: Use :func and :endfunc as usual.
+
+Patch 9.0.0679
+Problem: Tests failing with 'smoothscroll', 'number' and "n" in 'cpo'.
+Solution: Do not count number column in topline if columns are skipped.
+
+Patch 9.0.0680
+Problem: Tests failing with 'breakindent', 'number' and "n" in 'cpo'.
+Solution: Do count the number column in topline if 'breakindent' is set.
+
+Patch 9.0.0681
+Problem: "<<<" shows for 'smoothscroll' even when 'showbreak is set.
+Solution: When 'showbreak' is set do not display "<<<".
+
+Patch 9.0.0682
+Problem: Crash when popup with deleted timer is closed. (Igbanam
+ Ogbuluijah)
+Solution: Check the timer still exists. (closes #11301)
+
+Patch 9.0.0683
+Problem: Cannot specify a time for :echowindow.
+Solution: A count can be used to specify the display time. Add
+ popup_findecho().
+
+Patch 9.0.0684
+Problem: Skipped :exe command fails compilation on MS-Windows.
+Solution: Adjust return value when skipping.
+
+Patch 9.0.0685
+Problem: FORTIFY_SOURCE causes a crash in Vim9 script.
+Solution: Use a pointer to the first char. (Yee Cheng Chin, closes #11302)
+
+Patch 9.0.0686
+Problem: The right ALT key does not work on some MS-Windows keyboards.
+Solution: Adjust the modifiers based on GetKeyState(). (Anoton Sharonov,
+ closes #11300)
+
+Patch 9.0.0687
+Problem: "export def" does not work in a nested block.
+Solution: Do not handle "export" with a separate function but in the same
+ command stack. (closes #11304)
+
+Patch 9.0.0688
+Problem: Debugger does not display the whole command.
+Solution: Set ea.cmd before checking for a breakpoint.
+
+Patch 9.0.0689
+Problem: Compiler warning for unused function.
+Solution: Add #ifdef. (John Marriott)
+
+Patch 9.0.0690
+Problem: Buffer size for expanding tab not correctly computed.
+Solution: Correctly use size of end character.
+
+Patch 9.0.0691
+Problem: lalloc(0) error in listchars test.
+Solution: Skip generating text for tab if tab_len is zero.
+
+Patch 9.0.0692
+Problem: PoE filter files are not recognized.
+Solution: Add a pattern to detect PoE filter files. (closes #11305)
+
+Patch 9.0.0693
+Problem: browse() first argument cannot be a bool.
+Solution: Use tv_get_bool_chk() instead of tv_get_number_chk().
+ (closes #11308)
+
+Patch 9.0.0694
+Problem: No native sound support on Mac OS.
+Solution: Add sound support for Mac OS. (Yee Cheng Chin, closes #11274)
+
+Patch 9.0.0695
+Problem: Failing check for dictionary type for const any.
+Solution: Check for any type properly. (closes #11310)
+
+Patch 9.0.0696
+Problem: It is unclear if the +rightleft and +arabic features are actively
+ being used.
+Solution: Disable the features, await feedback.
+
+Patch 9.0.0697
+Problem: Cursor in wrong position with Visual substitute.
+Solution: When restoring 'linebreak' mark the virtual column as invalid.
+ (closes #11309, closes #11311)
+
+Patch 9.0.0698
+Problem: VisVim is outdated, does not work with current Visual Studio.
+Solution: Remove VisVim. (Martin Tournoij)
+
+Patch 9.0.0699
+Problem: Tiny build fails.
+Solution: Add #ifdef.
+
+Patch 9.0.0700
+Problem: There is no real need for a "big" build.
+Solution: Move common features to "normal" build, less often used features
+ to the "huge" build. (Martin Tournoij, closes #11283)
+
+Patch 9.0.0701
+Problem: With 'smoothscroll' the cursor position s not adjusted in a long
+ line.
+Solution: Move the cursor further up or down in the line.
+
+Patch 9.0.0702
+Problem: Incomplete testing cursor position after change with 'linebreak'
+ set.
+Solution: Add a test and move test cases together. (closes #11313)
+
+Patch 9.0.0703
+Problem: Failing check for argument type for const any.
+Solution: Check for any type properly. (closes #11316)
+
+Patch 9.0.0704
+Problem: CI runs "tiny" and "small" builds, which are the same.
+Solution: Remove the "small" build. (Naruhiko Nishino, closes #11315)
+
+Patch 9.0.0705
+Problem: Virtual text truncation does not take padding into account.
+Solution: Subtract the padding from the available space. (closes #11318)
+
+Patch 9.0.0706
+Problem: :help in a narrow window always opens at the top.
+Solution: Respect 'splitbelow'. (closes #11319)
+
+Patch 9.0.0707
+Problem: With 'smoothscroll' and 'scrolloff' non-zero the cursor position
+ is not properly adjusted in a long line.
+Solution: Move the cursor further up or down in the line.
+
+Patch 9.0.0708
+Problem: :confirm does not work properly for a terminal buffer.
+Solution: Handle :confirm for a terminal buffer differently. (Yee Cheng
+ Chin, closes #11312)
+
+Patch 9.0.0709
+Problem: Virtual text "after" not correct with 'nowrap'.
+Solution: Do not display "after" text prop on the next line when 'wrap' is
+ off.
+
+Patch 9.0.0710
+Problem: Quitting/unloading/hiding a terminal buffer does not always work
+ properly.
+Solution: Avoid that ":q!" leaves an empty buffer behind. ":bunload!" also
+ kills the job and unloads the buffer. ":hide" does not unload the
+ buffer. (Yee Cheng Chin, closes #11323)
+
+Patch 9.0.0711
+Problem: SubStation Alpha files are not recognized.
+Solution: Add patterns for SubStation Alpha files. (closes #11332)
+
+Patch 9.0.0712
+Problem: Wrong column when calling setcursorcharpos() with zero lnum.
+Solution: Set the line number before calling buf_charidx_to_byteidx().
+ (closes #11329)
+
+Patch 9.0.0713
+Problem: <amatch> of MenuPopup event is expanded like a file name.
+Solution: Do not expand <amatch> for MenuPopup. (closes #11328)
+
+Patch 9.0.0714
+Problem: With 'nowrap' two virtual text below not displayed correctly.
+Solution: Set text_prop_follows before continuing. Correct for number
+ column. (closes #11333)
+
+Patch 9.0.0715
+Problem: Wrong argument for append() gives two error messages.
+Solution: When getting an error for a number argument don't try using it as
+ a string. (closes #11335)
+
+Patch 9.0.0716
+Problem: With 'nowrap' virtual text "after" does not scroll left.
+Solution: Skip part of the virtual text that is left of the window.
+ (closes #11320) Fix going beyond the last column of the window.
+
+Patch 9.0.0717
+Problem: Compiler warning for unused variable in tiny build.
+Solution: Add #ifdefs.
+
+Patch 9.0.0718
+Problem: Extra empty line between two virtual text "below" when 'wrap' and
+ 'number' are set.
+Solution: Reset "before" when there is no text in the screen line.
+ (closes #11334)
+
+Patch 9.0.0719
+Problem: Too many delete() calls in tests.
+Solution: Use deferred delete where possible.
+
+Patch 9.0.0720
+Problem: MS-Windows GUI may have pixel dust from antialiasing.
+Solution: When a character changes also redraw the next one. (issue #8532)
+
+Patch 9.0.0721
+Problem: Virtual text "above" with padding not displayed correctly.
+Solution: Take padding into account when truncating. (closes #11340)
+
+Patch 9.0.0722
+Problem: Virtual text "after" does not show with 'list' set.
+Solution: Do not break out of the loop when another text prop follows.
+ (closes #11337)
+
+Patch 9.0.0723
+Problem: Extra empty line below virtual text when 'list' is set.
+Solution: Do not reset lcs_eol_one but set text_prop_follows. (closes #11339)
+
+Patch 9.0.0724
+Problem: Closure in compiled function gets same variable in block.
+Solution: At the end of a block to not always reset the variable count.
+ (issue #11094)
+
+Patch 9.0.0725
+Problem: Virtual text "after" wraps to next line even when 'wrap' is off
+ and 'list' is set.
+Solution: Do not use the minimum width when 'wrap' is off. (issue #11336)
+
+Patch 9.0.0726
+Problem: Looping over list of lists and changing the list contents works in
+ Vim9 script, not in a compiled function.
+Solution: Mark the loop variable final instead of const. (closes #11347)
+
+Patch 9.0.0727
+Problem: Help in the repository differs from patched version too much.
+Solution: Make a patch for a few help files.
+
+Patch 9.0.0728
+Problem: extend() test fails.
+Solution: Item is final, not const.
+
+Patch 9.0.0729
+Problem: The rightleft and arabic features are disabled.
+Solution: Re-enable the features, some users want to use the functionality.
+
+Patch 9.0.0730
+Problem: Startup test fails with right-left feature.
+Solution: Do not delete test file too early.
+
+Patch 9.0.0731
+Problem: clang-tidy configuration files are not recognized.
+Solution: Recognize clang-tidy files as yaml. (closes #11350)
+
+Patch 9.0.0732
+Problem: No check for white space before and after "=<<". (Doug Kearns)
+Solution: Check for white space in Vim9 script. (closes #11351)
+
+Patch 9.0.0733
+Problem: Use of strftime() is not safe.
+Solution: Check the return value of strftime(). Use a larger buffer and
+ correctly pass the available space. (Dominique Pellé, closes
+ #11348)
+
+Patch 9.0.0734
+Problem: Cursor position invalid when scrolling with 'smoothscroll' set.
+ (Ernie Rael)
+Solution: Add w_valid_skipcol and clear flags when it changes. Adjust
+ w_skipcol after moving the cursor.
+
+Patch 9.0.0735
+Problem: Breakindent and scrolloff tests fail.
+Solution: Temporarily skip the assertions.
+
+Patch 9.0.0736
+Problem: Quickfix listing does not handle very long messages.
+Solution: Use a growarray instead of a fixed size buffer. (Yegappan
+ Lakshmanan, closes #11357)
+
+Patch 9.0.0737
+Problem: Lisp word only recognized when a space follows.
+Solution: Also match a word at the end of a line. Rename the test. Use a
+ compiled function to avoid backslashes.
+
+Patch 9.0.0738
+Problem: Cannot suppress completion "scanning" messages.
+Solution: Add the "C" flag in 'shortmess'. (Bjorn Linse, closes #11354)
+
+Patch 9.0.0739
+Problem: Mouse column not correctly used for popup_setpos.
+Solution: Adjust off-by-one error and handle Visual line selection properly.
+ (Yee Cheng Chin, closes #11356)
+
+Patch 9.0.0740
+Problem: prop_add_list() gives multiple errors for invalid argument.
+Solution: Only give one error message.
+
+Patch 9.0.0741
+Problem: Cannot specify an ID for each item with prop_add_list(). (Sergey
+ Vlasov)
+Solution: Add an optional fifth number to the item. (closes #11360)
+
+Patch 9.0.0742
+Problem: Reading past end of the line when compiling a function with
+ errors.
+Solution: Do not return an invalid pointer. Fix skipping redirection.
+
+Patch 9.0.0743
+Problem: Starting cscope on Unix does not quote the arguments correctly.
+ (Gary Johnson)
+Solution: Move the final quote after the arguments.
+
+Patch 9.0.0744
+Problem: In script in autoload dir exported variable is not found. (Doug
+ Kearns)
+Solution: Find the variable with the "script#" prefix. (closes #11361)
+
+Patch 9.0.0745
+Problem: Wrong cursor position when using "gj" and "gk" in a long line.
+Solution: Adjust computations for the cursor position and skipcol. Re-enable
+ tests that pass now, disable failing breakindent test.
+
+Patch 9.0.0746
+Problem: Breakindent test cases are commented out.
+Solution: Adjust expected result to slightly different behavior. Correct
+ computations for cursor position.
+
+Patch 9.0.0747
+Problem: Too many #ifdefs.
+Solution: Gradudate the +cmdline_info feature. (Martin Tournoij,
+ closes #11330)
+
+Patch 9.0.0748
+Problem: Kitty may send key without modifiers with CSI u code.
+Solution: Handle CSI u code without modifiers. (Trygve Aaberge,
+ closes #11364)
+
+Patch 9.0.0749
+Problem: Alloc/free of buffer for each quickfix entry is inefficient.
+Solution: Use a shared grow array. (Yegappan Lakshmanan, closes #11365)
+
+Patch 9.0.0750
+Problem: Crash when popup closed in callback. (Maxim Kim)
+Solution: In syntax_end_parsing() check that syn_block is valid.
+
+Patch 9.0.0751
+Problem: 'scrolloff' does not work well with 'smoothscroll'.
+Solution: Make positioning the cursor a bit better. Rename functions.
+
+Patch 9.0.0752
+Problem: Rprofile files are not recognized.
+Solution: Recognize Rprofile files as "r". (closes #11369)
+
+Patch 9.0.0753
+Problem: Some Ex commands are not in the help index.
+Solution: Add the missing commands. Add a script to check all Ex commands
+ are in the help index. (Yee Cheng Chin, closes #11371)
+
+Patch 9.0.0754
+Problem: 'indentexpr' overrules lisp indenting in one situation.
+Solution: Add "else" to keep the lisp indent. (issue #11327)
+
+Patch 9.0.0755
+Problem: Huge build on macos always fails on CI.
+Solution: Temporarily disable the perl interface.
+
+Patch 9.0.0756
+Problem: No autocmd event for changing text in a terminal window.
+Solution: Add TextChangedT. (Shougo Matsushita, closes #11366)
+
+Patch 9.0.0757
+Problem: Line number not visisble with 'smoothscroll', 'nu' and 'rnu'.
+Solution: Put the ">>>" after the line number instead of on top.
+
+Patch 9.0.0758
+Problem: "precedes" from 'listchars' overwritten by <<< for 'smoothscroll'.
+Solution: Keep the "precedes" character.
+
+Patch 9.0.0759
+Problem: Huge build on macos does not use Perl.
+Solution: Re-enable the Perl interface using "dynamic". (closes #11375)
+
+Patch 9.0.0760
+Problem: Display test for 'listchars' "precedes" fails.
+Solution: Correct the expected result.
+
+Patch 9.0.0761
+Problem: Cannot use 'indentexpr' for Lisp indenting.
+Solution: Add the 'lispoptions' option.
+
+Patch 9.0.0762
+Problem: Build failure.
+Solution: Add missing change.
+
+Patch 9.0.0763
+Problem: MS-Windows: warning for using int for size_t.
+Solution: Declare variable as size_t.
+
+Patch 9.0.0764
+Problem: Indent and option tests fail.
+Solution: Change OP_INDENT. Add entry to options test table.
+
+Patch 9.0.0765
+Problem: With a Visual block a put command column may go negative.
+Solution: Check that the column does not become negative.
+
+Patch 9.0.0766
+Problem: Too many delete() calls in tests.
+Solution: Use deferred delete where possible.
+
+Patch 9.0.0767
+Problem: Too many delete() calls in tests.
+Solution: Use deferred delete where possible.
+
+Patch 9.0.0768
+Problem: Too many delete() calls in tests.
+Solution: Use deferred delete where possible.
+
+Patch 9.0.0769
+Problem: Too many delete() calls in tests.
+Solution: Use deferred delete where possible.
+
+Patch 9.0.0770
+Problem: Quickfix commands may keep memory allocated.
+Solution: Free memory when it's a bit much. (Yegappan Lakshmanan,
+ closes #11379)
+
+Patch 9.0.0771
+Problem: Cannot always tell the difference beween tex and rexx files.
+Solution: Recognize tex by a leading backslash. (Martin Tournoij,
+ closes #11380)
+
+Patch 9.0.0772
+Problem: The libvterm code is outdated.
+Solution: Include libvterm changes from revision 790 to 801.
+
+Patch 9.0.0773
+Problem: Huge build on macos uses dynamic Perl.
+Solution: Use built-in Perl, uninstall the brew one. (closes #11382)
+
+Patch 9.0.0774
+Problem: The libvterm code is outdated.
+Solution: Include libvterm changes from revision 802 to 817. Revert some
+ changes made for C89.
+
+Patch 9.0.0775
+Problem: MS-Windows: mouse scrolling not supported in the console.
+Solution: Add event handling for mouse scroll events. (Christopher
+ Plewright, closes #11374)
+
+Patch 9.0.0776
+Problem: MSVC can't have field name "small".
+Solution: Rename small to smallfont.
+
+Patch 9.0.0777
+Problem: Code is indented too much.
+Solution: Use an early return. (Yegappan Lakshmanan, closes #11386)
+
+Patch 9.0.0778
+Problem: Indexing of unknown const type fails during compilation.
+Solution: Check for "any" properly. (closes #11389)
+
+Patch 9.0.0779
+Problem: lsl and lm3 file extensions are not recognized.
+Solution: Add *.lsl and *.lm3 patterns. (Doug Kearns, closes #11384)
+
+Patch 9.0.0780
+Problem: 'scroll' value computed in unexpected location.
+Solution: Compute 'scroll' when the window height is changed. (Luuk van
+ Baal, closes #11387)
+
+Patch 9.0.0781
+Problem: Workaround to rename "small" to "smallfont" is clumsy.
+Solution: Undefine "small" after including windows.h. (Ken Takata)
+
+Patch 9.0.0782
+Problem: OpenVPN files are not recognized.
+Solution: Add patterns for OpenVPN files. (closes #11391)
+
+Patch 9.0.0783
+Problem: ":!" doesn't do anything but does update the previous command.
+Solution: Do not have ":!" change the previous command. (Martin Tournoij,
+ closes #11372)
+
+Patch 9.0.0784
+Problem: Text prop "above" not displayed correctly with 'number' and "n" in
+ 'cpo'.
+Solution: Draw the line number column until the line text is reached.
+
+Patch 9.0.0785
+Problem: Memory leak with empty shell command.
+Solution: Free the allocated memory when bailing out.
+
+Patch 9.0.0786
+Problem: User command does not get number from :tab modifier.
+Solution: Include the number. (closes #11393, closes #6801)
+
+Patch 9.0.0787
+Problem: MS-Windows: mouse scrolling in terminal misbehaves without dll.
+Solution: Add #ifdef as a temporary solution. (Christopher Plewright,
+ closes #11392)
+
+Patch 9.0.0788
+Problem: ModeChanged autocmd not executed when Visual mode is ended with
+ CTRL-C.
+Solution: Do not trigger the autocmd when got_int is set. (closes #11394)
+
+Patch 9.0.0789
+Problem: Dummy buffer ends up in a window.
+Solution: Disallow navigating to a dummy buffer.
+
+Patch 9.0.0790
+Problem: Test for dummy buffer does not always produce the E86 error.
+Solution: Do not check if the error is produced.
+
+Patch 9.0.0791
+Problem: At the hit-Enter prompt the End and Home keys may not work.
+Solution: Use the special "@" code for End and Home, like it was done for
+ the cursor keys in patch 8.2.2246. (Trygve Aaberge, closes #11396)
+
+Patch 9.0.0792
+Problem: MS-Windows: compiler complains about unused function.
+Solution: Add #ifdef. (John Marriott)
+
+Patch 9.0.0793
+Problem: MS-Windows: mouse scroll events only work with the dll.
+Solution: Accept CSI codes for MS-Windows without the GUI. (Christopher
+ Plewright, closes #11401)
+
+Patch 9.0.0794
+Problem: There is no way to find out if an escape sequence with
+ modifyOtherKeys has been seen.
+Solution: Add a notice with ":verbose map".
+
+Patch 9.0.0795
+Problem: readblob() always reads the whole file.
+Solution: Add arguments to read part of the file. (Ken Takata,
+ closes #11402)
+
+Patch 9.0.0796
+Problem: Mapping test fails in some situations.
+Solution: Find the line with the verbose information.
+
+Patch 9.0.0797
+Problem: Order of assert function arguments is reverted.
+Solution: Swap the arguments. (closes #11399)
+
+Patch 9.0.0798
+Problem: Clang format configuration files are not recognized.
+Solution: Use yaml for Clang format configuration files. (Marwin Glaser,
+ closes #11398)
+
+Patch 9.0.0799
+Problem: In compiled function ->() on next line not recognized.
+Solution: Also check for "(". (closes #11405)
+
+Patch 9.0.0800
+Problem: Compiler complains about repeated typedef.
+Solution: Remove one typedef.
+
+Patch 9.0.0801
+Problem: The modifyOtherKeys flag is set when it should not.
+Solution: Do not handle special key codes with a modifer value above 16 as a
+ modifyOtherKeys value. (issue #11403)
+
+Patch 9.0.0802
+Problem: MS-Windows: cannot map console mouse scroll events.
+Solution: Change CSI to K_SPECIAL when checking for a mapping. (Christopher
+ Plewright, closes #11410)
+
+Patch 9.0.0803
+Problem: readblob() cannot read from character device.
+Solution: Use S_ISCHR() to not check the size. (Ken Takata, closes #11407)
+
+Patch 9.0.0804
+Problem: Crash when trying to divice the largest negative number by -1.
+Solution: Handle this case specifically.
+
+Patch 9.0.0805
+Problem: Filetype autocmd may cause freed memory access.
+Solution: Set the quickfix-busy flag while filling the buffer.
+
+Patch 9.0.0806
+Problem: 'langmap' works differently when there are modifiers.
+Solution: Only apply 'langmap' to a character where modifiers have no
+ effect. (closes #11395, closes #11404)
+
+Patch 9.0.0807
+Problem: With 'smoothscroll' typing "0" may not go to the first column.
+Solution: Recompute w_cline_height when needed. Do not scroll up when it
+ would move the cursor.
+
+Patch 9.0.0808
+Problem: jsonnet filetype detection has a typo.
+Solution: Change "libjsonnet" to "libsonnet". (Maxime Brunet, closes #11412)
+
+Patch 9.0.0809
+Problem: Test for job writing to buffer fails.
+Solution: Correct w_topline when deleting a buffer line.
+
+Patch 9.0.0810
+Problem: readblob() returns empty when trying to read too much.
+Solution: Return what is available.
+
+Patch 9.0.0811
+Problem: Error if :echowin is preceded by a command modifier.
+Solution: Do not give an error for range when there is a modifier.
+ (closes #11414)
+
+Patch 9.0.0812
+Problem: GUI mouse scrollwheel mappings don't work.
+Solution: Add check for "gui.in_use". (Christopher Plewright, closes #11418)
+
+Patch 9.0.0813
+Problem: Kitty terminal is not recognized.
+Solution: Recognize Kitty by the termresponse and then do not set
+ seenModifyOtherKeys, since Kitty doesn't support that.
+ (issue #11413)
+
+Patch 9.0.0814
+Problem: Aws config files are not recognized.
+Solution: Use "confini" for aws config files. (Justin M. Keyes,
+ closes #11416)
+
+Patch 9.0.0815
+Problem: ":!" does not switch to the alternate screen.
+Solution: For ":!" don't clear the previous command. (closes #11420,
+ closes #11409)
+
+Patch 9.0.0816
+Problem: CTRL-Z at end of file is always dropped.
+Solution: Add the 'endoffile' option, like the 'endofline' option.
+ (closes #11408, closes #11397)
+
+Patch 9.0.0817
+Problem: Build error.
+Solution: correct variable name.
+
+Patch 9.0.0818
+Problem: "!ls" does not work.
+Solution: Do not free memory that is in use.
+
+Patch 9.0.0819
+Problem: Still a build error, tests are failing.
+Solution: Correct recent changes. Add missing init for 'eof'.
+
+Patch 9.0.0820
+Problem: Memory leak with empty shell command.
+Solution: Free the empty string.
+
+Patch 9.0.0821
+Problem: Memory leak with empty shell command.
+Solution: Free the empty string.
+
+Patch 9.0.0822
+Problem: Crash when dragging the statusline with a mapping.
+Solution: Check for valid window pointer. (issue #11427)
+
+Patch 9.0.0823
+Problem: Mouse drag test fails.
+Solution: Only reset the mouse click flag when actually switching to another
+ tab page. Disable test that keeps failing.
+
+Patch 9.0.0824
+Problem: Crash when using win_move_separator() in other tab page.
+Solution: Check for valid window in current tab page.
+ (closes #11479, closes #11427)

-Patches *patches-9.1*
--------
+Patch 9.0.0825
+Problem: Cannot drag an entry in the tabpage line.
+Solution: Clear dragwin instead of got_click. (closes #11483,
+ closes #11482)
+
+Patch 9.0.0826
+Problem: If 'endofline' is set the CTRL-Z may be written in the wrong
+ place.
+Solution: Write CTRL-Z at the end of the file. Update the help to explain
+ the possibilities better. (Ken Takata, closes #11486)
+
+Patch 9.0.0827
+Problem: The <Home> key in tmux doesn't work when 'term' is set to "xterm".
+ (Dominique Pellé)
+Solution: Only use '@' in a termcap key entry for "1" when ";" follows.
+ (closes #11429)
+
+Patch 9.0.0828
+Problem: Various typos.
+Solution: Correct typos. (closes #11432)
+
+Patch 9.0.0829
+Problem: Wrong counts in macro comment.
+Solution: Update the value counts. (closes #11480)
+
+Patch 9.0.0830
+Problem: Compiling with Perl on Mac 12 fails.
+Solution: Suppress infinite warnings. (closes #11499)
+
+Patch 9.0.0831
+Problem: Compiler warning for redefining HAVE_DUP.
+Solution: Undefine HAVE_DUP if needed. (Ozaki Kiichi, closes #11484)
+
+Patch 9.0.0832
+Problem: Deprecation warning causes build failure.
+Solution: Suppress deprecation warning. (closes #11503)
+
+Patch 9.0.0833
+Problem: Mac: no +sound feature in huge build.
+Solution: Enable +sound in Mac huge build. (closes #11497)
+
+Patch 9.0.0834
+Problem: Warning for missing return type.
+Solution: Add "int". (San James, closes #11496)
+
+Patch 9.0.0835
+Problem: The window title is not redrawn when 'endoffile' changes.
+Solution: redraw the window title when 'endoffile' is changed. (Ken Takata,
+ closes #11488)
+
+Patch 9.0.0836
+Problem: Wrong error when using extend() with funcref.
+Solution: Better check the variable type. (closes #11468, closes #11455)
+
+Patch 9.0.0837
+Problem: append() reports failure when not appending anything.
+Solution: Only report failure when appending something. (closes #11498)
+
+Patch 9.0.0838
+Problem: Compiler warnings for unused variables.
+Solution: Addjust #ifdef and remove unused variables. (John Marriott)
+
+Patch 9.0.0839
+Problem: Test may fail depending on sequence of events.
+Solution: Accept error codes in either order. (Yee Cheng Chin,
+ closes #11510)
+
+Patch 9.0.0840
+Problem: Cannot change a slice of a const list. (Takumi KAGIYAMA)
+Solution: Remove the const flag from the slice type. (closes #11490)
+
+Patch 9.0.0841
+Problem: deletebufline() does not always return 1 on failure.
+Solution: Refactor the code to make it work more predictable. (closes #11511)
+
+Patch 9.0.0842
+Problem: Unicode range for Apple SF symbols is outdated.
+Solution: Update to SF Symbols 4. (Yee Cheng Chin, closes #11474)
+
+Patch 9.0.0843
+Problem: VHS tape files are not recognized.
+Solution: Add a filetype pattern. (Carlos Alexandro Becker, closes #11452)
+
+Patch 9.0.0844
+Problem: Handling 'statusline' errors is spread out.
+Solution: Pass the option name to the lower levels so the option can be
+ reset there when an error is encountered. (Luuk van Baal,
+ closes #11467)
+
+Patch 9.0.0845
+Problem: Shell command with just space gives strange error.
+Solution: Skip white space at start of the argument. (Christian Brabandt,
+ Shane-XB-Qian, closes #11515, closes #11495)
+
+Patch 9.0.0846
+Problem: Using assert_fails() may cause hit-enter prompt.
+Solution: Set no_wait_return. (closes #11522)
+
+Patch 9.0.0847
+Problem: CI: not totally clear what MS-Windows version is used.
+Solution: Show the Windows version. (Ken Takata, closes #11524)
+
+Patch 9.0.0848
+Problem: Help item for --log argument is not aligned nicely.
+Solution: Add a Tab. (Ken Takata, closes #11521)
+
+Patch 9.0.0849
+Problem: Terminal mouse test is a bit flaky.
+Solution: Add WaitFor() calls. (James McCoy closes #11519) Tune wait times
+ to reduce flakiness.
+
+Patch 9.0.0850
+Problem: MS-Windows Terminal has unstable color control.
+Solution: Do not try to read the old command prompt colortable, use modern
+ VT sequences. (Christopher Plewright, closes #11450,
+ closes #11373)
+
+Patch 9.0.0851
+Problem: Terminal mouse test is still flaky.
+Solution: Also use WaitForAssert().
+
+Patch 9.0.0852
+Problem: Crypt test is skipped if xxd is not found.
+Solution: Find xxd where it was supposed to be build.
+
+Patch 9.0.0853
+Problem: Terminal mouse test is still flaky on MacOS M1.
+Solution: Also wait for the file to have some contents.
+
+Patch 9.0.0854
+Problem: No proper test for what 9.0.0846 fixes.
+Solution: Run test in a terminal so that the hit-enter prompt can show up.
+ (closes #11523)
+
+Patch 9.0.0855
+Problem: Comment not located above the code it refers to.
+Solution: Move the comment. (closes #11527)
+
+Patch 9.0.0856
+Problem: MS-Windows: executable not found when running individual test.
+Solution: Also look for vimd.exe. (Christopher Plewright, closes #11525)
+
+Patch 9.0.0857
+Problem: Selecting MSVC 2017 does not set $PLATFORM.
+Solution: Use $VSCMD_ARG_TGT_ARCH. (Ken Takata, closes #11485)
+
+Patch 9.0.0858
+Problem: "!!sort" in a closed fold sorts too many lines.
+Solution: Round to end of fold after adding the line count. (closes #11487)
+
+Patch 9.0.0859
+Problem: Compiler warning for unused variable.
+Solution: Add #ifdef.
+
+Patch 9.0.0860
+Problem: MS-Windows: windres fails with clang 15.0.4.
+Solution: Use llvm-windres. (John Marriott)
+
+Patch 9.0.0861
+Problem: Solution for "!!sort" in closed fold is not optimal.
+Solution: Use a different range instead of the subtle difference in handling
+ a range with an offset. (issue #11487)
+
+Patch 9.0.0862
+Problem: Default value of 'endoffile' is wrong.
+Solution: The default must be 'noendoffile'.
+
+Patch 9.0.0863
+Problem: col() and charcol() only work for the current window.
+Solution: Add an optional winid argument. (Yegappan Lakshmanan,
+ closes #11466, closes #11461)
+
+Patch 9.0.0864
+Problem: Crash when using "!!" without a previous shell command.
+Solution: Check "prevcmd" is not NULL. (closes #11487)
+
+Patch 9.0.0865
+Problem: Duplicate arguments are not always detected.
+Solution: Expand to full path before comparing arguments. (Nir Lichtman,
+ closes #11505, closes #9402)
+
+Patch 9.0.0866
+Problem: No test for what patch 8.2.2207 fixes.
+Solution: Add a test case. (closes #11531)
+
+Patch 9.0.0867
+Problem: Wildmenu redrawing code is spread out.
+Solution: Refactor to move code together. (closes #11528)
+
+Patch 9.0.0868
+Problem: MS-Windows: after Vim exits console resizing does not work
+ properly.
+Solution: Restore screen behavior checks for various WT and VTP
+ combinations. (Christopher Plewright, closes #11526,
+ closes #11507)
+
+Patch 9.0.0869
+Problem: Bogus error when string used after :elseif.
+Solution: Do not consider a double quote the start of a comment.
+ (closes #11534)
+
+Patch 9.0.0870
+Problem: Get E967 when using text property in quickfix window. (Sergey
+ Vlasov)
+Solution: Do not add an extra NUL and compute the text length correctly.
+ (closes #11513)
+
+Patch 9.0.0871
+Problem: Using freed memory when clearing augroup at more prompt.
+Solution: Delay clearing augroup until it's safe. (closes #11441)
+
+Patch 9.0.0872
+Problem: Code is indented more than needed.
+Solution: Return early. (Yegappan Lakshmanan, closes #11538)
+
+Patch 9.0.0873
+Problem: Using freed memory when executing mapclear at the more prompt.
+Solution: Do not clear mappings while listing them. (closes #11438)
+
+Patch 9.0.0874
+Problem: Using freed memory when executing unmenu at the more prompt.
+Solution: Do not clear menus while listing them. (closes #11439)
+
+Patch 9.0.0875
+Problem: Using freed memory when executing delfunc at the more prompt.
+Solution: Check function list not changed in another place. (closes #11437)
+
+Patch 9.0.0876
+Problem: Code is indented more than needed.
+Solution: Split ExpandEscape() in two. (Yegappan Lakshmanan, closes #11539)
+
+Patch 9.0.0877
+Problem: Using freed memory with :comclear while listing commands.
+Solution: Bail out when the command list has changed. (closes #11440)
+
+Patch 9.0.0878
+Problem: Coverity warns for dead code.
+Solution: Remove the dead code.
+
+Patch 9.0.0879
+Problem: Unnecessary nesting in makefile.
+Solution: Join "else" and "ifeq". (Ken Takata, closes #11547)
+
+Patch 9.0.0880
+Problem: Preprocessor indenting is off.
+Solution: Adjust preprocessor indentation. (Ken Takata, closes #11546)
+
+Patch 9.0.0881
+Problem: Cannot get the currently showing mouse shape.
+Solution: Add getmouseshape().
+
+Patch 9.0.0882
+Problem: Using freed memory after SpellFileMissing autocmd uses bwipe.
+Solution: Bail out if the window no longer exists.
+
+Patch 9.0.0883
+Problem: A silent mapping may cause dots on the command line.
+Solution: Don't show dots for completion if they are not going to be removed
+ again. (closes #11501)
+
+Patch 9.0.0884
+Problem: Mouse shape remains in op-pending mode after failed change.
+Solution: Reset finish_op and restore it. (closes #11545)
+
+Patch 9.0.0885
+Problem: Informational message has an error message number.
+Solution: Use a message without an error number. (closes #11530)
+
+Patch 9.0.0886
+Problem: Horizontal mouse scroll only works in the GUI.
+Solution: Make horizontal mouse scroll also work in a terminal.
+ (Christopher Plewright, closes #11448)
+
+Patch 9.0.0887
+Problem: Cannot easily try out what codes various keys produce.
+Solution: Add a script to gather key code information, with an initial list
+ of codes to compare with.
+
+Patch 9.0.0888
+Problem: MS-Windows GUI: CTRL-] does not work on Swiss keyboard.
+Solution: Check the key code and don't consider it as a dead key. (Aedin
+ Louis Xavier, closes #11556)
+
+Patch 9.0.0889
+Problem: Keycode check script has a few flaws.
+Solution: Sort on terminal name. Ignore XTGETTCAP responses. Check for
+ version and status response. Update entries.
+
+Patch 9.0.0890
+Problem: No test for what patch 9.0.0827 fixes.
+Solution: Add a test (still doesn't fail when fix is reverted).
+
+Patch 9.0.0891
+Problem: Virtual text below after match has wrong highlight.
+Solution: Restore search_attr only after the virtual text.
+ (closes #11446)
+
+Patch 9.0.0892
+Problem: May redraw when not needed, causing slow scrolling.
+Solution: Do not redraw when w_skipcol doesn't change. When w_skipcol
+ changes only redraw from the top. (issue #11559)
+
+Patch 9.0.0893
+Problem: 'smoothscroll' cursor calculations wrong when 'number' is set.
+Solution: Correct the code that computes the width. (closes #11492)
+
+Patch 9.0.0894
+Problem: Virtual text property highlight ignores window background.
+Solution: Combine text prop attribute with win_attr into extra_attr.
+ (closes #11462)
+
+Patch 9.0.0895
+Problem: File renamed twice in test; missing feature check.
+Solution: Remove a rename() call. Add check for cryptv feature.
+ (closes #11564)
+
+Patch 9.0.0896
+Problem: Test for home key fails when 'term' is "tmux".
+Solution: Only save termcap entries that exist. Adjust code for xHome to
+ what xterm uses. (closes #11566)
+
+Patch 9.0.0897
+Problem: Clinical Quality Language files are not recognized.
+Solution: Add the "*.cql" pattern. (Matthew Gramigna, closes #11452)
+
+Patch 9.0.0898
+Problem: With 'smoothscroll' cursor is one screen line too far down. (Ernie
+ Rael)
+Solution: Add a test that currently has the wrong result so that a fix can
+ be made. (issue #11436)
+
+Patch 9.0.0899
+Problem: The builtin terminals are in one long list.
+Solution: Refactor into multiple lists and an index of the lists.
+
+Patch 9.0.0900
+Problem: Cursor moves too far with 'smoothscroll'.
+Solution: Only move as far as really needed. (Yee Cheng Chin, closes #11504)
+
+Patch 9.0.0901
+Problem: Setting w_leftcol and handling side effects is confusing.
+Solution: Use a function to set w_leftcol() and handle side effects.
+
+Patch 9.0.0902
+Problem: Some mouse scroll code is not in a good place.
+Solution: Refactor the code. (Christopher Plewright, closes #11561)
+
+Patch 9.0.0903
+Problem: Key code checker doesn't check modifyOtherKeys resource.
+Solution: Request the modifyOtherKeys resource value. Drop resource DCS
+ responses.
+
+Patch 9.0.0904
+Problem: Various comment and indent flaws.
+Solution: Improve comments and indenting.
+
+Patch 9.0.0905
+Problem: Virtual text after the line wraps when 'wrap' is off.
+Solution: Only set text_prop_follows when wrapping. (closes #11463)
+
+Patch 9.0.0906
+Problem: Mouse scroll code is not optimal.
+Solution: Properly organise Normal mode, Insert mode and common code.
+ (Christopher Plewright, closes #11572)
+
+Patch 9.0.0907
+Problem: Restoring window after WinScrolled may fail.
+Solution: Lock the window layout when triggering WinScrolled.
+
+Patch 9.0.0908
+Problem: With 'smoothscroll' cursor may end up in wrong position.
+Solution: Correct the computation of screen lines. (Yee Cheng Chin,
+ closes #11502)
+
+Patch 9.0.0909
+Problem: Error message for layout change does not match action.
+Solution: Pass the command to where the error is given. (closes #11573)
+
+Patch 9.0.0910
+Problem: Setting lines in another buffer may not work well.
+Solution: Make sure the buffer being changed has a window. (issue #11558)
+
+Patch 9.0.0911
+Problem: With 'smoothscroll' set mouse click position may be wrong.
+Solution: Adjust computations for w_skipcol. (Yee Cheng Chin, closes #11514)
+
+Patch 9.0.0912
+Problem: libvterm with modifyOtherKeys level 2 does not match xterm.
+Solution: Adjust key code escape sequences to be the same as what xterm
+ sends in modifyOtherKeys level 2 mode. Check the value of
+ no_reduce_keys before using it.
+
+Patch 9.0.0913
+Problem: Only a change in the current window triggers the WinScrolled
+ event.
+Solution: Trigger WinScrolled if any window scrolled or changed size.
+ (issue #11576)
+
+Patch 9.0.0914
+Problem: deletebufline() may move marks in the wrong window.
+Solution: Find a window for the buffer being changed. (closes #11583)
+
+Patch 9.0.0915
+Problem: WinScrolled may trigger immediately when defined.
+Solution: Initialize the fields in all windows. (closes #11582)
+
+Patch 9.0.0916
+Problem: getbufline() is inefficient for getting a single line.
+Solution: Add getbufoneline().
+
+Patch 9.0.0917
+Problem: The WinScrolled autocommand event is not enough.
+Solution: Add WinResized and provide information about what changed.
+ (closes #11576)
+
+Patch 9.0.0918
+Problem: MS-Windows: modifier keys do not work with mouse scroll events.
+Solution: Use K_SPECIAL instead of CSI for the modifier keys. (Christopher
+ Plewright, closes #11587)
+
+Patch 9.0.0919
+Problem: Build failure with tiny features.
+Solution: Adjust #ifdef's.
+
+Patch 9.0.0920
+Problem: Cannot find an import prefixed with "s:". (Doug Kearns)
+Solution: Skip over the "s:". (closes #11585)
+
+Patch 9.0.0921
+Problem: Missing defined(PROTO) in #ifdef.
+Solution: Adjust #ifdef so that proto works with different features.
+ Clean up some preprocessor indenting.
+
+Patch 9.0.0922
+Problem: Mermaid files are not recognized.
+Solution: Add patterns for Mermaid. (Crag MacEachern)
+
+Patch 9.0.0923
+Problem: Second SIGWINCH signal may be ignored.
+Solution: When set_shellsize() is busy when called then run the inner code
+ again when it's done. (issue #424)
+
+Patch 9.0.0924
+Problem: The first termcap entry of a builtin termcap is not used.
+Solution: Remove increment that was previously skipping the KS_NAME entry.
+
+Patch 9.0.0925
+Problem: Two conditions are always false.
+Solution: Remove the conditions. Update return value types to make clear
+ what could be returned. (closes #11593)
+
+Patch 9.0.0926
+Problem: Coverity warns for not using return value of dict_add().
+Solution: When dict_add() fails then don't call hash_remove().
+
+Patch 9.0.0927
+Problem: Coverity warns for using a NULL pointer.
+Solution: Check for memory allocaion failure.
+
+Patch 9.0.0928
+Problem: Using Ruby LDFLAGS may cause build problems.
+Solution: Do not add Ruby LDFLAGS to Vim's LDFLAGS. (Zdenek Dohnal,
+ closes #11592)
+
+Patch 9.0.0929
+Problem: Build failure with tiny version. (Tony Mechelynck)
+Solution: Add #ifdef.
+
+Patch 9.0.0930
+Problem: Cannot debug the Kitty keyboard protocol with TermDebug.
+Solution: Add Kitty keyboard protocol support to the libvterm fork.
+ Recognize the escape sequences that the protocol generates. Add
+ the 'keyprotocol' option to allow the user to specify for which
+ terminal what protocol is to be used, instead of hard-coding this.
+ Add recognizing the kitty keyboard protocol status.
+
+Patch 9.0.0931
+Problem: MS-Windows: mouse column limited to 223.
+Solution: Use two bytes for each mouse coordinate. Add the mouse position
+ to scroll events. (Christopher Plewright, closes #11597)
+
+Patch 9.0.0932
+Problem: Oblivion files are not recognized.
+Solution: Recognize Oblivion files and alike as "obse". (closes #11540)
+
+Patch 9.0.0933
+Problem: Kitty shows "already at oldest change" on startup.
+Solution: When receiving the keyboard protocol state return the ignore key.
+ (closes #11601)
+
+Patch 9.0.0934
+Problem: Various code formatting issues.
+Solution: Improve code formatting.
+
+Patch 9.0.0935
+Problem: When using dash it may not be recognize as filetype "sh".
+Solution: Add checks for "dash". (Eisuke Kawashima,closes #11600)
+
+Patch 9.0.0936
+Problem: Wrong type for "isunnamed" returned by getreginfo().
+Solution: Use VAR_BOOL instead of VAR_SPECIAL. (closes #11598)
+
+Patch 9.0.0937
+Problem: Forked repositories send out useless email.
+Solution: When Coverity fails to run just ignore it. (Shane-XB-Qian,
+ closes #11604)
+
+Patch 9.0.0938
+Problem: MS-Windows: debug executable not found when running test.
+Solution: Look for vimd.exe. (Christopher Plewright, closes #11602)
+
+Patch 9.0.0939
+Problem: Still using simplified mappings when using the kitty keyboard
+ protocol.
+Solution: Use the kitty_protocol_state value to decide whether to use
+ simplified mappings. Improve how seenModifyOtherKeys is set and
+ reset.
+
+Patch 9.0.0940
+Problem: Crash when typing a letter in a terminal window. (Shane-XB-Qian)
+Solution: Use the "vterm" variable instead of getting the terminal pointer
+ from the current buffer. (closes #11608)
+
+Patch 9.0.0941
+Problem: CI failures in sound dummy.
+Solution: Temporarily disable building sound dummy. (closes #11610)
+
+Patch 9.0.0942
+Problem: Workflow Description Language files are not recognized.
+Solution: Add a pattern for the "wdl" filetype. (Matt Dunford,
+ closes #11611)
+
+Patch 9.0.0943
+Problem: Pretending to go out of Insert mode when Esc is received has side
+ effects.
+Solution: When the kitty keyboard protocol is enabled expect Esc to always
+ be the start of an escape sequence.
+
+Patch 9.0.0944
+Problem: 'cursorline' causes virtual text highlight to continue.
+Solution: Save and restore line_attr. (closes #11588)
+
+Patch 9.0.0945
+Problem: Failures in the cursorline test.
+Solution: Reset extra_attr only after a text property.
+
+Patch 9.0.0946
+Problem: CI: Error in Coverity flow is not reported.
+Solution: Use another way to avoid errors in a forked repository. (Ken
+ Takata, closes #11609)
+
+Patch 9.0.0947
+Problem: Invalid memory access in substitute with function that goes to
+ another file.
+Solution: Check for text locked in CTRL-W gf.
+
+Patch 9.0.0948
+Problem: 'ttyfast' is set for arbitrary terminals.
+Solution: Always set 'ttyfast'. (closes #11549)
+
+Patch 9.0.0949
+Problem: Crash when unletting a variable while listing variables.
+Solution: Disallow changing a hashtable while going over the entries.
+ (closes #11435)
+
+Patch 9.0.0950
+Problem: The pattern "\_s\zs" matches at EOL.
+Solution: Make the pattern "\_s\zs" match at the start of the next line.
+ (closes #11617)
+
+Patch 9.0.0951
+Problem: Trying every character position for a match is inefficient.
+Solution: Use the start position of the match ignoring "\zs".
+
+Patch 9.0.0952
+Problem: Eclipse preference files are not recognized.
+Solution: Add a pattern to use "jproperties" for Eclipse preference files.
+ (closes #11618)
+
+Patch 9.0.0953
+Problem: Part of making search more efficient is missing.
+Solution: Add the change in searchit().
+
+Patch 9.0.0954
+Problem: Cannot detect whether modifyOtherKeys is enabled.
+Solution: Use XTQMODKEYS introduced by xterm version 377 to request the
+ modifyOtherKeys level. Update the keycode check results.
+
+Patch 9.0.0955
+Problem: Libvterm does not support the XTQMODKEYS request.
+Solution: Implement the XTQMODKEYS request and response. Update the keycode
+ check results.
+
+Patch 9.0.0956
+Problem: Terminal tests fail when using key with modifier.
+Solution: Use the modifyOtherKeys encoding when using RunVimInTerminal().
+
+Patch 9.0.0957
+Problem: Tests fail without the terminal feature.
+Solution: Move functions to another utility script.
+
+Patch 9.0.0958
+Problem: Messages test is flaky.
+Solution: Add a short delay.
+
+Patch 9.0.0959
+Problem: Error when using the "File Settings / Text Width" menu.
+Solution: Use str2nr(). (closes #11624)
+
+Patch 9.0.0960
+Problem: Error when using the "Tools / Spelling / Find More Languages"
+ menu.
+Solution: Remove "<SID>". Reset "g:menutrans_set_lang_to" when 'encoding'
+ changes. (closes #11625)
+
+Patch 9.0.0961
+Problem: Using deletebufline() may jump to another window.
+Solution: Do not use a window where the buffer was only in the past.
+ (closes #11594)
+
+Patch 9.0.0962
+Problem: Virtual text below cannot be placed below empty lines.
+Solution: Add one character. (James Alvarado, closes #11606, closes #11520)
+
+Patch 9.0.0963
+Problem: Function name does not match autocmd event name.
+Solution: Rename "optionsset" to "optionset". (closes #11630)
+
+Patch 9.0.0964
+Problem: Status line of other window not redrawn when dragging it when
+ 'splitkeep' is set to "screen".
+Solution: Set w_redr_status earlier. (Luuk van Baal, closes #11635,
+ closes #11632)
+
+Patch 9.0.0965
+Problem: Using one window for executing autocommands is insufficient.
+Solution: Use up to five windows for executing autocommands.
+
+Patch 9.0.0966
+Problem: Some compilers don't allow a declaration after a label.
+Solution: Move the declaration to the start of the block. (John Marriott)
+
+Patch 9.0.0967
+Problem: Leaking memory from autocmd windows.
+Solution: Free window when auc_win is not NULL.
+
+Patch 9.0.0968
+Problem: GUI mouse event test is a bit flaky.
+Solution: Mark the test case as flaky. Move test function failure checks to
+ a separate test function.
+
+Patch 9.0.0969
+Problem: Matchparen highlight is not updated when switching buffers.
+Solution: Listen to the BufLeave and the BufWinEnter autocmd events.
+ (closes #11626)
+
+Patch 9.0.0970
+Problem: Coverity warns for uninitialized variable.
+Solution: Initialize "ren_ret".
+
+Patch 9.0.0971
+Problem: Escape sequences not recognized without the termresponse feature.
+Solution: Recognize escape sequences to avoid display mess up.
+
+Patch 9.0.0972
+Problem: Build failure on some systems.
+Solution: Adjust #ifdefs related to the termresponse feature.
+
+Patch 9.0.0973
+Problem: Kitty keyboard protocol key not decoded when it has an unsupported
+ modifier, such as NumLock.
+Solution: Accept a key with any modifier. (closes #11638)
+
+Patch 9.0.0974
+Problem: Even when Esc is encoded a timeout is used.
+Solution: Use K_ESC when an encoded Esc is found.
+
+Patch 9.0.0975
+Problem: Virtual text below an empty line is misplaced when 'number' is
+ set.
+Solution: Adjust the computations. (closes #11629)
+
+Patch 9.0.0976
+Problem: Enabling the kitty keyboard protocol uses push/pop.
+Solution: Use the start/stop codes to avoid unpredictable behavior.
+
+Patch 9.0.0977
+Problem: It is not easy to see what client-server commands are doing.
+Solution: Add channel log messages if ch_log() is available. Move the
+ channel logging and make it available with the +eval feature.
+
+Patch 9.0.0978
+Problem: Build errors without the +channel feature. (John Marriott)
+Solution: Adjust #ifdefs.
+
+Patch 9.0.0979
+Problem: ch_log() text can be hard to find in the log file.
+Solution: Prepend "ch_log()" to the text.
+
+Patch 9.0.0980
+Problem: The keyboard state response may end up in a shell command.
+Solution: Only request the keyboard protocol state when the typeahead is
+ empty, no more commands are following and not exiting. Add the
+ t_RK termcap entry for this.
+
+Patch 9.0.0981
+Problem: Build error in tiny version.
+Solution: Add #ifdef.
+
+Patch 9.0.0982
+Problem: 'cursorline' not drawn before virtual text below.
+Solution: Add the 'cursorline' attribute to the empty space. (closes #11647)
+
+Patch 9.0.0983
+Problem: Stray characters displayed when starting the GUI.
+Solution: Add t_RK to the list of terminal options.
+
+Patch 9.0.0984
+Problem: GUI: remote_foreground() does not always work. (Ron Aaron)
+Solution: For GTK use gtk_window_set_keep_above(). (issue #11641)
+
+Patch 9.0.0985
+Problem: When using kitty keyboard protocol function keys may not work.
+ (Kovid Goyal)
+Solution: Recognize CSI ending in [ABCDEFHPQRS] also when the termcap
+ entries are not specified. (closes #11648)
+
+Patch 9.0.0986
+Problem: Build failure with tiny version.
+Solution: Add #ifdef.
+
+Patch 9.0.0987
+Problem: File missing from list of distributed files.
+Solution: Add logfile.pro to list of distributed files.
+
+Patch 9.0.0988
+Problem: Using feedkeys() does not show up in a channel log.
+Solution: Add ch_log() calls and clean up the code.
+
+Patch 9.0.0989
+Problem: Popupwin test is more flaky on MacOS.
+Solution: Use a longer wait time.
+
+Patch 9.0.0990
+Problem: Callback name argument is changed by setqflist().
+Solution: Use the expanded function name for the callback, do not store it
+ in the argument. (closes #11653)
+
+Patch 9.0.0991
+Problem: Crash when reading help index with various options set. (Marius
+ Gedminas)
+Solution: Do not set wlv.c_extra to NUL when wlv.p_extra is NULL.
+ (closes #11651)
+
+Patch 9.0.0992
+Problem: Vim9 script: get E1096 when comment follows return.
+Solution: Adjust condition for return without expression. (closes #11654)
+
+Patch 9.0.0993
+Problem: Display errors when adding or removing text property type.
+Solution: Perform a full redraw. Only use text properties for which the
+ type is defined. (closes #11655)
+
+Patch 9.0.0994
+Problem: Tests for empty prop type name fail.
+Solution: Correct the error number.
+
+Patch 9.0.0995
+Problem: Padding before virtual text below is highlighted when 'number' and
+ 'nowrap' are set.
+Solution: Save and restore n_attr_skip. (closes #11643)
+
+Patch 9.0.0996
+Problem: If 'keyprotocol' is empty "xterm" still uses modifyOtherKeys.
+Solution: Remove t_TI, t_RK and t_TE from the "xterm" builtin termcap and
+ let the default value of 'keyprotocol' add those.
+
+Patch 9.0.0997
+Problem: Coverity warns for dead code.
+Solution: Don't use ASCII_ISUPPER() for a negative value.
+
+Patch 9.0.0998
+Problem: "gk" may reset skipcol when not needed.
+Solution: Only reset skipcol if the cursor column is less.
+
+Patch 9.0.0999
+Problem: Memory may leak.
+Solution: Free the sound callback function name if it was allocated.
+
+Patch 9.0.1000
+Problem: With 'smoothscroll' skipcol may be reset unnecessarily.
+Solution: Check the line does actually fit in the window.
+
+Patch 9.0.1001
+Problem: Classes are not documented or implemented yet.
+Solution: Make the first steps at documenting Vim9 objects, classes and
+ interfaces. Make initial choices for the syntax. Add a skeleton
+ implementation. Add "public" and "this" in the command table.
+
+Patch 9.0.1002
+Problem: Command list test fails.
+Solution: Add commands added to the list.
+
+Patch 9.0.1003
+Problem: Tiny build fails.
+Solution: Remove #ifdef from error message.
+
+Patch 9.0.1004
+Problem: Suspend test sometimes fails on MacOS.
+Solution: Wait a short while for terminal responses.
+
+Patch 9.0.1005
+Problem: A failed test may leave a swap file behind.
+Solution: Delete the swap file to avoid another test to fail. Use another
+ file name.
+
+Patch 9.0.1006
+Problem: Suspend test still sometimes fails on MacOS.
+Solution: Wait a little while for terminal responses.
+
+Patch 9.0.1007
+Problem: There is no way to get a list of swap file names.
+Solution: Add the swapfilelist() function. Use it in the test script to
+ clean up. Remove deleting individual swap files.
+
+Patch 9.0.1008
+Problem: Test for swapfilelist() fails on MS-Windows.
+Solution: Only check the tail of the path. Mark a test as flaky.
+
+Patch 9.0.1009
+Problem: Test for catch after interrupt is flaky on MS-Windows.
+Solution: Mark the test as flaky.
+
+Patch 9.0.1010
+Problem: Stray warnings for existing swap files.
+Solution: Wipe out the buffer until it has no name and no swap file.
+
+Patch 9.0.1011
+Problem: ml_get error when using screenpos().
+Solution: Give an error for the line number. (closes #11661)
+
+Patch 9.0.1012
+Problem: Tests may get stuck in buffer with swap file.
+Solution: Bail out when bwipe! doesn't get another buffer.
+
+Patch 9.0.1013
+Problem: Suspend test often fails on Mac OS.
+Solution: Make t_RP empty.
+
+Patch 9.0.1014
+Problem: Zir files are not recognized.
+Solution: Add a pattern for Zir files. (closes #11664)
+
+Patch 9.0.1015
+Problem: Without /dev/urandom srand() seed is too predictable.
+Solution: Use micro seconds and XOR with process ID. (Yasuhiro Matsumoto,
+ closes #11656)
+
+Patch 9.0.1016
+Problem: screenpos() does not count filler lines for diff mode.
+Solution: Add filler lines. (closes 11658)
+
+Patch 9.0.1017
+Problem: Test for srand() fails on MS-Windows.
+Solution: Do not expect the same result a second time.
+
+Patch 9.0.1018
+Problem: Suspend test still fails on Mac OS.
+Solution: Make 'keyprotocol' empty.
+
+Patch 9.0.1019
+Problem: 'smoothscroll' and virtual text above don't work together.
+ (Yee Cheng Chin)
+Solution: Skip virtual text above when w_skipcol is non-zero.
+ (closes #11665)
+
+Patch 9.0.1020
+Problem: Tests call GetSwapFileList() before it is defined.
+Solution: Move the call to after defining the function. (Christopher
+ Plewright)
+
+Patch 9.0.1021
+Problem: Test trips over g:name.
+Solution: Delete g:name after using it.
+
+Patch 9.0.1022
+Problem: Suspend test fails on Mac OS when suspending Vim.
+Solution: Make 'keyprotocol' empty.
+
+Patch 9.0.1023
+Problem: MS-Windows: dynamic loading of libsodium doesn't work.
+Solution: Add "randombytes_random". (Ken Takata, closes #11667)
+
+Patch 9.0.1024
+Problem: CI doesn't use the latest FreeBSD version.
+Solution: Go from 12.3 to 12.4. (closes #11423)
+
+Patch 9.0.1025
+Problem: WinScrolled is not triggered when filler lines change.
+Solution: Add "topfill" to the values that WinScrolled triggers on.
+ (closes #11668)
+
+Patch 9.0.1026
+Problem: type of w_last_topfill is wrong.
+Solution: Use "int" instead of "linenr_T". (closes #11670)
+
+Patch 9.0.1027
+Problem: LGTM is soon shutting down.
+Solution: Remove LGTM from CI. (closes #11671)
+
+Patch 9.0.1028
+Problem: Mouse shape test is flaky, especially on Mac OS.
+Solution: Instead of starting all timers at the same time, start the next
+ one in the callback of the previous one. (Yee Cheng Chin,
+ closes #11673) Also use "bwipe!" instead of "close!" to avoid
+ swap files remaining.
+
+Patch 9.0.1029
+Problem: Autoload directory missing from distribution.
+Solution: Add the autoload/zig directory to the list of distributed files.
+
+Patch 9.0.1030
+Problem: Using freed memory with the cmdline popup menu.
+Solution: Clear the popup menu when clearing the matches. (closes #11677)
+
+Patch 9.0.1031
+Problem: Vim9 class is not implemented yet.
+Solution: Add very basic class support.
+
+Patch 9.0.1032
+Problem: Test fails when terminal feature is missing.
+Solution: Use CheckRunVimInTerminal.
+
+Patch 9.0.1033
+Problem: Tiny build fails because of conflicting typedef.
+Solution: Remove one typedef.
+
+Patch 9.0.1034
+Problem: Reporting swap file when windows are split.
+Solution: Close extra windows after running a test.
+
+Patch 9.0.1035
+Problem: Object members are not being marked as used, garbage collection
+ may free them.
+Solution: Mark object members as used. Fix reference counting.
+
+Patch 9.0.1036
+Problem: Undo misbehaves when writing from an insert mode mapping.
+Solution: Sync undo when writing. (closes #11674)
+
+Patch 9.0.1037
+Problem: lalloc(0) error for a class without members.
+Solution: Don't allocate room for members if there aren't any.
+ Don't create the class if there was an error.
+
+Patch 9.0.1038
+Problem: Function name does not match what it is used for.
+Solution: Include the modifier in the name. (closes #11679)
+
+Patch 9.0.1039
+Problem: Using a <Cmd> mapping CmdlineChanged may be triggered twice.
+Solution: Count the number of times CmdlineChanged is triggered and avoid
+ doing it twice. (closes #116820
+
+Patch 9.0.1040
+Problem: Test for <Cmd> mapping with CmdlineChanged fails.
+Solution: Put back the check for the cmdline length not changing.
+
+Patch 9.0.1041
+Problem: Cannot define a method in a class.
+Solution: Implement defining an object method. Make calling an object
+ method work.
+
+Patch 9.0.1042
+Problem: ASAN gives false alarm about array access.
+Solution: Use an intermediate pointer.
+
+Patch 9.0.1043
+Problem: Macro has confusing name and is duplicated.
+Solution: Use one macro with an understandable name. (closes #11686)
+
+Patch 9.0.1044
+Problem: Setting window height using Python may cause errors.
+Solution: When setting "curwin" also set "curbuf". (closes #11687)
+
+Patch 9.0.1045
+Problem: In a class object members cannot be initialized.
+Solution: Support initializing object members. Make "dissassemble" work on
+ an object method.
+
+Patch 9.0.1046
+Problem: Class method disassemble test fails on MS-Windows.
+Solution: Do not match with a specific size.
+
+Patch 9.0.1047
+Problem: Matchparen is slow.
+Solution: Actually use the position where the match started, not the
+ position where the search started. (closes #11644)
+
+Patch 9.0.1048
+Problem: With "screenline" in 'culopt' cursorline highlight is wrong.
+Solution: Apply the priority logic also when "screenline is in 'culopt'.
+ (closes #11696)
+
+Patch 9.0.1049
+Problem: Crash when opening a very small terminal window.
+Solution: Instead of crashing fix the cursor position. (closes #11697)
+
+Patch 9.0.1050
+Problem: Using freed memory when assigning to variable twice.
+Solution: Make copy of the list type. (closes #11691)
+
+Patch 9.0.1051
+Problem: After a failed CTRL-W ] next command splits window.
+Solution: Reset postponed_split. (Rob Pilling, closes #11698)
+
+Patch 9.0.1052
+Problem: Using freed memory on exit when EXITFREE is defined.
+Solution: Make a deep copy of the type. Make sure TTFLAG_STATIC is not set
+ in the copy.
+
+Patch 9.0.1053
+Problem: Default constructor arguments are not optional.
+Solution: Use "= v:none" to make constructor arguments optional.
+
+Patch 9.0.1054
+Problem: Object member can't get type from initializer.
+Solution: If there is no type specified try to use the type of the
+ initializer. Check for a valid type.
+
+Patch 9.0.1055
+Problem: Coverity warns for using uninitialized memory.
+Solution: Clear the "lhs" field earlier.
+
+Patch 9.0.1056
+Problem: Leaking memory when disassembling an object method.
+Solution: Free the typval of the class.
+
+Patch 9.0.1057
+Problem: Conflict between supercollider and scala filetype detection.
+Solution: Do not check for "Class : Method", it can appear in both
+ filetypes. (Chris Kipp, closes #11699)
+
+Patch 9.0.1058
+Problem: String value of class and object do not have useful information.
+Solution: Add the class name and for the object the member values.
+
+Patch 9.0.1059
+Problem: Build failure with some compilers that can't handle a
+ declaration directly after a "case" statement.
+Solution: Add a block to put the declarations in.
+
+Patch 9.0.1060
+problem: Private and public object members are not implemented yet.
+Solution: Implement private and public object members.
+
+Patch 9.0.1061
+Problem: Cannot display 'showcmd' somewhere else.
+Solution: Add the 'showcmdloc' option. (Luuk van Baal, closes #11684)
+
+Patch 9.0.1062
+Problem: Some test function names do not match what they are doing.
+Solution: Leave out user data for the test that is called "NoUserData".
+ (closes #11703)
+
+Patch 9.0.1063
+Problem: When using Kitty a shell command may mess up the key protocol
+ state.
+Solution: Output t_te before t_TE. If t_te switches between the main and
+ the alternate screen then deactivating the key protocol by t_TE
+ should happen after switching screen. (issue #11705)
+
+Patch 9.0.1064
+Problem: Code for making 'shortmess' temporarily empty is repeated.
+Solution: Add functions for making 'shortmess' empty and restoring it.
+ (Christian Brabandt, closes #11709)
+
+Patch 9.0.1065
+Problem: A shell command switching screens may still have a problem with
+ the kitty keyboard protocol.
+Solution: Disable the kitty keyboard protocol both in the current and the
+ alternate screen, if there are indications it might be needed.
+ (issue #11705) Also fix naming.
+
+Patch 9.0.1066
+Problem: Test function name is wrong.
+Solution: Rename to what is actually being tested. (closes #11712)
+
+Patch 9.0.1067
+Problem: In diff mode virtual text is highlighted incorrectly. (Rick Howe)
+Solution: Do not use diff attributes for virtual text. (closes #11714)
+
+Patch 9.0.1068
+Problem: No information about whether requesting term codes has an effect.
+Solution: Add ch_log() calls to report the effect of term code responses.
+ Avoid deleting an entry and then adding back the same one.
+
+Patch 9.0.1069
+Problem: Diff mode highlight fails for special characters.
+Solution: Adjust condition for setting "diff_hlf".
+
+Patch 9.0.1070
+Problem: Reading beyond array size.
+Solution: Only use name[0] and name[1], do not use "name" as a string.
+
+Patch 9.0.1071
+Problem: Codecov action version is too specific.
+Solution: Only use "v3" to automatically use the latest stable version.
+ (closes #11720)
+
+Patch 9.0.1072
+Problem: screenpos() column result in fold may be too small.
+Solution: Add space of 'number', sign column, etc. (closes #11715)
+
+Patch 9.0.1073
+Problem: Using "xterm-kitty" for 'term' causes problems.
+Solution: Remove the "xterm-" part when 'term' is set from $TERM. Detect a
+ few kitty-specific properties based on the version response
+ instead of the terminal name.
+
+Patch 9.0.1074
+Problem: Class members are not supported yet.
+Solution: Add initial support for class members.
+
+Patch 9.0.1075
+Problem: build fails if the compiler doesn't allow for a declaration right
+ after "case".
+Solution: Add a block.
+
+Patch 9.0.1076
+Problem: ASAN complains about NULL argument.
+Solution: Skip memmove() when there is nothing to move.
+
+Patch 9.0.1077
+Problem: Can add text property with negative ID before virtual text
+ property.
+Solution: Remember that a text property with a negative ID was used and give
+ an appropriate error message. (closes #11725)
+ Fix index computation.
+
+Patch 9.0.1078
+Problem: With the +vartabs feature indent folding may use wrong 'tabstop'.
+Solution: Use the "buf" argument instead of "curbuf".
+
+Patch 9.0.1079
+Problem: Leaking memory when defining a user command fails.
+Solution: Free "compl_arg" when needed. (closes #11726)
+
+Patch 9.0.1080
+Problem: The "kitty" terminfo entry is not widespread, resulting in the
+ kitty terminal not working properly.
+Solution: Go back to using "xterm-kitty" and avoid the problems it causes in
+ another way.
+
+Patch 9.0.1081
+Problem: Using "->" with split lines does not always work.
+Solution: Avoid trying to get another line. (closes #11723)
+
+Patch 9.0.1082
+Problem: Some jsonc files are not recognized.
+Solution: Add patterns for jsonc and move some from json to jsonc.
+ (closes #11711)
+
+Patch 9.0.1083
+Problem: Empty and comment lines in a class cause an error.
+Solution: Skip empty and comment lines. (closes #11734)
+
+Patch 9.0.1084
+Problem: Code handling low level MS-Windows events cannot be tested.
+Solution: Add test_mswin_event() and tests using it. (Christopher Plewright,
+ closes #11622)
+
+Patch 9.0.1085
+Problem: Compiler warns for uninitialized variable.
+Solution: Initialize the variable. Remove unused function. (John Marriott)
+
+Patch 9.0.1086
+Problem: Display wrong in Windows terminal after exiting Vim.
+Solution: Apply screen restore fix for Windows 11 also to Windows 10 builds.
+ (Christopher Plewright, closes #11713, closes #11706)
+
+Patch 9.0.1087
+Problem: Autocommand test sometimes fails.
+Solution: Add a short delay. (James McCoy, closes #11737)
+
+Patch 9.0.1088
+Problem: Clang warns for unused variable.
+Solution: Adjust #ifdef. (John Marriott)
+
+Patch 9.0.1089
+Problem: unnessary assignment
+Solution: Remove the assignment. (Luuk van Baal, closes #1136)
+
+Patch 9.0.1090
+Problem: FHIR Shorthand files are not recognized.
+Solution: Add a pattern to detect FSH files. (Matthew Gramigna,
+ closes #11738)
+
+Patch 9.0.1091
+Problem: Assignment to non-existing member causes a crash. (Yegappan
+ Lakshmanan)
+Solution: Give an error message and bail out when a member cannot be found.
+
+Patch 9.0.1092
+Problem: Search error message doesn't show used pattern.
+Solution: Pass the actually used pattern to where the error message is
+ given. (Rob Pilling, closes #11742)
+
+Patch 9.0.1093
+Problem: Using freed memory of object member. (Yegappan Lakshmanan)
+Solution: Make a copy of the object member when getting it.
+
+Patch 9.0.1094
+Problem: Compiler warning when HAS_MESSAGE_WINDOW is not defined.
+Solution: Add UNUSED.
+
+Patch 9.0.1095
+Problem: Using freed memory when declaration fails. (Yegappan Lakshmanan)
+Solution: After unreferencing an object set the reference to NULL.
+
+Patch 9.0.1096
+Problem: Reallocating hashtab when the size didn't change.
+Solution: Bail out when the hashtab is already the desired size.
+
+Patch 9.0.1097
+Problem: Tests are failing.
+Solution: Do clean up a hashtab when at the initial size.
+
+Patch 9.0.1098
+Problem: Code uses too much indent.
+Solution: Use an early return. (Yegappan Lakshmanan, closes #11747)
+
+Patch 9.0.1099
+Problem: Trying to resize a hashtab may cause a problem.
+Solution: Do not try to resize a hashtab before adding an item.
+
+Patch 9.0.1100
+Problem: A hashtab with many removed items is not cleaned up.
+Solution: Re-hash a hashtab even when the size didn't change if too many
+ items were removed.
+
+Patch 9.0.1101
+Problem: Unused global variable.
+Solution: Remove the variable. (closes #11752)
+
+Patch 9.0.1102
+Problem: Complicated use of #ifdef.
+Solution: Simplify #ifdef use. (Ken Takata, closes #11745)
+
+Patch 9.0.1103
+Problem: jq files are not recognized.
+Solution: Add detection of Jq files. (David McDonald, closes #11743)
+
+Patch 9.0.1104
+Problem: Invalid memory access when checking function argument types.
+Solution: Do not check beyond the number of arguments. (closes #11755)
+
+Patch 9.0.1105
+Problem: Code is indented too much.
+Solution: Use an early return. (Yegappan Lakshmanan, closes #11756)
+
+Patch 9.0.1106
+Problem: Not all postfix files are recognized.
+Solution: Recognize main.cf.proto files. (closes #11732)
+
+Patch 9.0.1107
+Problem: Float constant not recognized as float.
+Solution: Check the vartype instead of comparing with t_float.
+ (closes #11754)
+
+Patch 9.0.1108
+Problem: Type error when using "any" type and adding a number to a float.
+Solution: Accept both a number and a float. (closes #11753)
+
+Patch 9.0.1109
+Problem: Leaking allocated type.
+Solution: Reset the "static" flag in the allocated type copy.
+
+Patch 9.0.1110
+Problem: Build fails on Mac OS X 10.4/10.5 .
+Solution: Check if the dispatch/dispatch.h header exists. (Evan Miller,
+ closes #11746)
+
+Patch 9.0.1111
+Problem: Termcap entries for RGB colors are not set automatically.
+Solution: Always set the termcap entries when +termguicolors is enabled.
+
+Patch 9.0.1112
+Problem: test_mswin_event() can hang.
+Solution: Add the "execute" argument to process events right away.
+ (Christopher Plewright, closes #11760)
+
+Patch 9.0.1113
+Problem: Users cannot easily try out a PR.
+Solution: Add an "artifacts" section to the AppVeyor CI config. (Christian
+ Brabandt, closes #11762)
+
+Patch 9.0.1114
+Problem: CI does not use the latest Python version.
+Solution: Switch from Python 3.10 to 3.11. (closes #11761)
+
+Patch 9.0.1115
+Problem: Code is indented more than needed.
+Solution: Use an early return to reduce indenting. (Yegappan Lakshmanan,
+ closes #11758)
+
+Patch 9.0.1116
+Problem: Compiler may complain about an unused function.
+Solution: Add #ifdef. (John Marriott)
+
+Patch 9.0.1117
+Problem: Terminfo entries for bracketed paste are not used.
+Solution: Use the newly added terminfo entries for bracketed paste.
+ Correct mixup of output strings and key codes.
+
+Patch 9.0.1118
+Problem: Sporadic test failures when using a terminal window.
+Solution: Adjust waiting times. (James McCoy, closes #11763)
+
+Patch 9.0.1119
+Problem: Type of arguments not checked when calling a partial.
+Solution: Give an error for a wrong argument type. (closes #11753)
+
+Patch 9.0.1120
+Problem: Tex filetype detection not sufficiently tested.
+Solution: Add more test cases for "tex" detection. (Jonas Strittmatter,
+ closes #11765)
+
+Patch 9.0.1121
+Problem: Cursor positioning and display problems with 'smoothscroll' and
+ using "zt", "zb" or "zz".
+Solution: Adjust computations and conditions. (Yee Cheng Chin,
+ closes #11764)
+
+Patch 9.0.1122
+Problem: Class member access is not fully tested yet.
+Solution: Add more tests.
+
+Patch 9.0.1123
+Problem: Class function not implemented yet.
+Solution: Implement defining and calling a class function.
+
+Patch 9.0.1124
+Problem: Virtual text at a column position is truncated at the window edge.
+ (Yegappan Lakshmanan)
+Solution: Do not truncated virtual text that is placed at a column.
+
+Patch 9.0.1125
+Problem: Memory leak when using class functions.
+Solution: Clear and free the array with class functions.
+
+Patch 9.0.1126
+Problem: Bracketed paste can be enabled when pasted text is not recognized.
+Solution: Output t_BE only when t_PS and t_PE are set.
+
+Patch 9.0.1127
+Problem: No error if function argument shadows class member.
+Solution: Give an error for shadowing a class member.
+
+Patch 9.0.1128
+Problem: Build failure.
+Solution: Add type cast. Add missing error messages.
+
+Patch 9.0.1129
+Problem: Sporadic Test_range() failure.
+Solution: Clear typeahead. Move to a separate function. (issue #22771)
+
+Patch 9.0.1130
+Problem: Unexpected output when autoloading a script for an interactive
+ operation.
+Solution: Reset "KeyTyped" while loading a script and when handling a nested
+ function. (closes #11773)
+
+Patch 9.0.1131
+Problem: Build failure without the +eval feature.
+Solution: Move code inside #ifdef.
+
+Patch 9.0.1132
+Problem: Code is indented more than needed.
+Solution: Use an early return to reduce indentation. (Yegappan Lakshmanan,
+ closes #11769)
+
+Patch 9.0.1133
+Problem: Error message names do not match the items.
+Solution: Add "_str" when the text contains "%s".
+
+Patch 9.0.1134
+Problem: Comparing objects uses identity instead of equality.
+Solution: Compare the object values.
+
+Patch 9.0.1135
+Problem: Missing function argument.
+Solution: Add ignore case flag.
+
+Patch 9.0.1136
+Problem: Memory leak when getting class member type from expr.
+Solution: Clear the expression result.
+
+Patch 9.0.1137
+Problem: Some conditions are always false.
+Solution: Remove the useless conditions. (closes #11776)
+
+Patch 9.0.1138
+Problem: Crash when expecting varargs but it is something else.
+Solution: Only use the member when the type is a list. (closes #11774)
+
+Patch 9.0.1139
+Problem: Cannot create a new object in a compiled function.
+Solution: Compile the instructins to create a new object.
+
+Patch 9.0.1140
+Problem: Cannot call an object method in a compiled function.
+Solution: Compile the instructins to invoke an object method.
+
+Patch 9.0.1141
+Problem: 'cursorcolumn' and 'colorcolumn' wrong after concealing and
+ wrapping line.
+Solution: Reset "wlv.vcol_off" after each screen line. (Alexey Radkov,
+ closes #11777)
+
+Patch 9.0.1142
+Problem: Crash and/or memory leak when redefining function after error.
+Solution: Clear pointer after making a copy. Clear arrays on failure.
+ (closes #11774)
+
+Patch 9.0.1143
+Problem: Invalid memory access with bad 'statusline' value.
+Solution: Avoid going over the NUL at the end.
+
+Patch 9.0.1144
+Problem: Reading beyond text.
+Solution: Add strlen_maxlen() and use it.
+
+Patch 9.0.1145
+Problem: Invalid memory access with recursive substitute expression.
+Solution: Check the return value of vim_regsub().
+
+Patch 9.0.1146
+Problem: MS-Windows: various special keys and modifiers are not mappable.
+Solution: Adjust the handling of keys with modifiers. (Christian Plewright,
+ closes #11768)
+
+Patch 9.0.1147
+Problem: Cannot access a class member in a compiled function.
+Solution: Implement looking up a class member.
+
+Patch 9.0.1148
+Problem: Cmdline test fails in the GUI.
+Solution: Skip the test when running in the GUI.
+
+Patch 9.0.1149
+Problem: Class members may be garbage collected.
+Solution: Mark class members as being in use.
+
+Patch 9.0.1150
+Problem: :interface is not implemented yet.
+Solution: Implement the basics of :interface.
+
+Patch 9.0.1151
+Problem: Build failure.
+Solution: Add missing part of :interface change.
+
+Patch 9.0.1152
+Problem: Class "implements" argument not implemented.
+Solution: Implement "implements" argument. Add basic checks for when a
+ class implements an interface.
+
+Patch 9.0.1153
+Problem: Build error with some compilers.
+Solution: Clear pointer the right way.
+
+Patch 9.0.1154
+Problem: Coverity warns for dead code.
+Solution: Remove condition that is always true.
+
+Patch 9.0.1155
+Problem: Cannot use a class as a type.
+Solution: Accept a class and interface name as a type.
+
+Patch 9.0.1156
+Problem: Tests fail because of a different error message.
+Solution: Don't give an error if a type name can't be found.
+
+Patch 9.0.1157
+Problem: "implements" only handles one interface name.
+Solution: Handle a comma separated list of names. Check for duplicate
+ names.
+
+Patch 9.0.1158
+Problem: Code is indented more than necessary.
+Solution: Use an early return where it makes sense. (Yegappan Lakshmanan,
+ closes #11787)
+
+Patch 9.0.1159
+Problem: Extends argument for class not implemented yet.
+Solution: Basic implementation of "extends".
+
+Patch 9.0.1160
+Problem: ASAN error for ufunc_T allocated with wrong size.
+Solution: Make sure the size can always fit the struct.
+
+Patch 9.0.1161
+Problem: Coverity warns for using strcpy().
+Solution: Call a function to set the function name.
+
+Patch 9.0.1162
+Problem: Configure does not handle all FORTIFY_SOURCE variants.
+Solution: Also handle Fedora's default FORTIFY_SOURCE flags. (Zdenek Dohnal,
+ closes #11794)
+
+Patch 9.0.1163
+Problem: Compiler warning for implicit size_t/int conversion.
+Solution: Add a type cast. (Mike Williams, closes #11795)
+
+Patch 9.0.1164
+Problem: Evaluating string expression advances function line.
+Solution: Disable function lines while parsing a string expression.
+ (Hirohito Higashi, closes #11796)
+
+Patch 9.0.1165
+Problem: Tests using IPv6 sometimes fail.
+Solution: Use getaddrinfo() and use try/catch. (James McCoy,
+ closes #11783)
+
+Patch 9.0.1166
+Problem: Code is indented more than necessary.
+Solution: Use an early return where it makes sense. (Yegappan Lakshmanan,
+ closes #11792)
+
+Patch 9.0.1167
+Problem: EditorConfig files do not have their own filetype.
+Solution: Add the "editorconfig" filetype. (Gregory Anders, closes #11779)
+
+Patch 9.0.1168
+Problem: Code to enable/disable mouse is not from terminfo/termcap.
+Solution: Request the "XM" entry and use it to set 'ttymouse' if possible.
+
+Patch 9.0.1169
+Problem: Some key+modifier tests fail on some AppVeyor images.
+Solution: Adjust the tests for key movements and fix the revealed bugs.
+ (Christopher Plewright, closes #11798)
+
+Patch 9.0.1170
+Problem: LGTM badge no longer works.
+Solution: Remove the LGTM badge. (closes #11799)
+
+Patch 9.0.1171
+Problem: Screen is not redrawn after using setcellwidths().
+Solution: Redraw the screen when the cell widths have changed. (Yasuhiro
+ Matsumoto, closes #11800)
+
+Patch 9.0.1172
+Problem: When 'selection' is "exclusive" then "1v" is one char short.
+Solution: Add one character when 'selection' is "exclusive. (closes #11791)
+
+Patch 9.0.1173
+Problem: Compiler warning for unused variable on non-Unix systems.
+Solution: Move #ifdef. (John Marriott)
+
+Patch 9.0.1174
+Problem: Smali files are not recognized.
+Solution: Add a pattern for Smali files. (Amaan Qureshi, closes #11801)
+
+Patch 9.0.1175
+Problem: The set_ref_in_item() function is too long.
+Solution: Use a separate function for more complicated types. (Yegappan
+ Lakshmanan, closes #11802)
+
+Patch 9.0.1176
+Problem: smithy files are not recognized.
+Solution: Add a pattern for Smithy files. (Chris Kipp, closes #11804)
+
+Patch 9.0.1177
+Problem: AppVeyor uses some older tools.
+Solution: Switch to Visual Studio 2022 and Python 3.11. (Christopher
+ Plewright, closes #11793)
+
+Patch 9.0.1178
+Problem: A child class cannot override functions from a base class.
+Solution: Allow overriding and implement "super".
+
+Patch 9.0.1179
+Problem: Not all errors around inheritance are tested.
+Solution: Add more tests. Fix uncovered problems.
+
+Patch 9.0.1180
+Problem: Compiler warnings without the +job feature.
+Solution: Adjust #ifdefs. (John Marriott)
+
+Patch 9.0.1181
+Problem: Class inheritance and typing insufficiently tested.
+Solution: Add more tests. Implement missing behavior.
+
+Patch 9.0.1182
+Problem: go checksum files are not recognized.
+Solution: Add the name of go checksum files. (Amaan Qureshi, closes #11803)
+
+Patch 9.0.1183
+Problem: Code is indented more than necessary.
+Solution: Use an early return where it makes sense. (Yegappan Lakshmanan,
+ closes #11805)
+
+Patch 9.0.1184
+Problem: Interface of an object is not recognized when checking type.
+Solution: Use the interface implemented by an object.
+
+Patch 9.0.1185
+Problem: Using class from imported script not tested.
+Solution: Add tests. Implement what is missing.
+
+Patch 9.0.1186
+Problem: Imported class does not work when used twice in a line.
+Solution: Fix the type parsing.
+
+Patch 9.0.1187
+Problem: Test for using imported class fails.
+Solution: Skip over rest of type.
+
+Patch 9.0.1188
+Problem: Return value of type() for class and object unclear.
+Solution: Add v:t_object and v:t_class.
+
+Patch 9.0.1189
+Problem: Invalid memory access with folding and using "L".
+Solution: Prevent the cursor from moving to line zero.
+
+Patch 9.0.1190
+Problem: AppVeyor runs much slower with MSVC 2022.
+Solution: Go back to MSVC 2015. (Christopher Plewright, closes #11810)
+
+Patch 9.0.1191
+Problem: Some Bazel files are not recognized.
+Solution: Add an extra Bazel pattern. (Keith Smily, closes #11807)
+
+Patch 9.0.1192
+Problem: No error when class function argument shadows a member.
+Solution: Check for shadowing.
+
+Patch 9.0.1193
+Problem: Cannot map <Esc> when using the Kitty key protocol.
+Solution: Add a non-simplified mapping for K_ESC. (closes #11811)
+
+Patch 9.0.1194
+Problem: Compiler warning for comparing pointer with int.
+Solution: Change NULL to zero.
+
+Patch 9.0.1195
+Problem: Restoring KeyTyped when building statusline not tested.
+Solution: Add a test. Clean up and fix other tests. (closes #11815)
+
+Patch 9.0.1196
+Problem: Code is indented more than necessary.
+Solution: Use an early return where it makes sense. (Yegappan Lakshmanan,
+ closes #11813)
+
+Patch 9.0.1197
+Problem: Dump file missing from patch.
+Solution: Add missing dump file.
+
+Patch 9.0.1198
+Problem: Abstract class not supported yet.
+Solution: Implement abstract class and add tests.
+
+Patch 9.0.1199
+Problem: Crash when using kitty and using a mapping with <Esc>.
+Solution: Do not try setting did_simplify when it is NULL. (closes #11817)
+
+Patch 9.0.1200
+Problem: AppVeyor builds with an old Python version.
+Solution: Switch from Python 3.8 to 3.11. (Christopher Plewright,
+ closes #11814)
+
+Patch 9.0.1201
+Problem: Assignment with operator doesn't work in object method.
+Solution: Handle loading the object member. (closes #11820) Add a few more
+ tests.
+
+Patch 9.0.1202
+Problem: Crash when iterating over list of objects.
+Solution: Do not make a copy of tt_member for object or class.
+ (closes #11823)
+
+Patch 9.0.1203
+Problem: Return type of values() is always list<any>.
+Solution: Use the member type if possible. (issue #11822)
+
+Patch 9.0.1204
+Problem: Expression compiled the wrong way after using an object.
+Solution: Generate constants before getting the type.
+
+Patch 9.0.1205
+Problem: Crash when handling class that extends another class with more
+ than one object members.
+Solution: Correct pointer computations. (closes #11824)
+
+Patch 9.0.1206
+Problem: Testing with Python on AppVeyor does not work properly.
+Solution: Fix typo. Move most lines to the .bat file. (Christopher
+ Plewright, closes #11828)
+
+Patch 9.0.1207
+Problem: Error when object type is expected but getting "any".
+Solution: When actual type is "any" use a runtime type check.
+ (closes #11826)
+
+Patch 9.0.1208
+Problem: Code is indented more than necessary.
+Solution: Use an early return where it makes sense. (Yegappan Lakshmanan,
+ closes #11819)
+
+Patch 9.0.1209
+Problem: Getting interface member does not always work.
+Solution: Convert the index on the interface to the index on the object.
+ (closes #11825)
+
+Patch 9.0.1210
+Problem: Compiler complains about declaration after label.
+Solution: Move declaration to beginning of block (John Marriott)
+
+Patch 9.0.1211
+Problem: Storing value in interface member does not always work.
+Solution: Convert the index on the interface to the index on the object.
+
+Patch 9.0.1212
+Problem: Cannot read back what setcellwidths() has done.
+Solution: Add getcellwidths(). (Kota Kato, closes #11837)
+
+Patch 9.0.1213
+Problem: Adding a line below the last one does not expand fold.
+Solution: Do not skip mark_adjust() when adding lines below the last one.
+ (Brandon Simmons, closes #11832, closes #10698)
+
+Patch 9.0.1214
+Problem: File left behind after running tests.
+Solution: Delete the file. (Dominique Pellé, closes #11839)
+
+Patch 9.0.1215
+Problem: Using isalpha() adds dependency on current locale.
+Solution: Do not use isalpha() for recognizing a URL or the end of an Ex
+ command. (closes #11835)
+
+Patch 9.0.1216
+Problem: Coverity warns for ignoring return value.
+Solution: Break out of loop if function fails.
+
+Patch 9.0.1217
+Problem: Using an object member in a closure doesn't work.
+Solution: Initialize lv_loop_depth. (closes #11840)
+
+Patch 9.0.1218
+Problem: Completion includes functions that don't work.
+Solution: Skip functions that are not implemented. (Kota Kato,
+ closes #11845)
+
+Patch 9.0.1219
+Problem: Handling of FORTIFY_SOURCE flags doesn't match Fedora usage.
+Solution: Adjust the "sed" patterns. (Zdenek Dohnal, closes #11847)
+
+Patch 9.0.1220
+Problem: Termcap/terminfo entries do not indicate where modifiers might
+ appear.
+Solution: Add ";*" for function keys where modifiers are likely to be used.
+
+Patch 9.0.1221
+Problem: Code is indented more than necessary.
+Solution: Use an early return where it makes sense. (Yegappan Lakshmanan,
+ closes #11833)
+
+Patch 9.0.1222
+Problem: Terminal tests are flaky on MacOS.
+Solution: Add TermWait() calls. (Yegappan Lakshmanan, closes #11852)
+
+Patch 9.0.1223
+Problem: Cannot use setcellwidths() below 0x100.
+Solution: Also accept characters between 0x80 and 0x100. (Ken Takata,
+ closes #11834)
+
+Patch 9.0.1224
+Problem: Cannot call a :def function with a number for a float argument.
+Solution: Accept a number as well, convert it to a float.
+
+Patch 9.0.1225
+Problem: Reading past the end of a line when formatting text.
+Solution: Check for not going over the end of the line.
+
+Patch 9.0.1226
+Problem: Spurious empty line when using text propertie and virtual text.
+Solution: Do not set "text_prop_follows" when the other text property is not
+ virtual text. (closes #11846)
+
+Patch 9.0.1227
+Problem: No cmdline completion for :runtime.
+Solution: Add completion for :runtime. (closes #11853, closes #11447)
+ Improve the resulting matches.
+
+Patch 9.0.1228
+Problem: Fuzzy menu completion is only tested in the GUI.
+Solution: Make fuzzy menu completion test work without GUI.
+ (closes #11861)
+
+Patch 9.0.1229
+Problem: Cap'n Proto files are not recognized.
+Solution: Add a pattern and the "capnp" filetype. (Amaan Qureshi,
+ closes #11862)
+
+Patch 9.0.1230
+Problem: Apache thrift files are not recognized.
+Solution: Add a pattern for thrift files. (Amaan Qureshi, closes #11859)
+
+Patch 9.0.1231
+Problem: Completion of :runtime does not handle {where} argument.
+Solution: Parse the {where} argument. (closes #11863)
+
+Patch 9.0.1232
+Problem: ColorTable saving and restoring does not work properly.
+Solution: Restore ColorTable[16] usage. (Christopher Plewright,
+ closes #11836)
+
+Patch 9.0.1233
+Problem: search() loops forever if "skip" is TRUE for all matches.
+Solution: Keep the position of the first match.
+
+Patch 9.0.1234
+Problem: The code style has to be checked manually.
+Solution: Add basic code style checks in a test. Fix or avoid uncovered
+ problems.
+
+Patch 9.0.1235
+Problem: MS-Windows console: not flushing termguicolors.
+Solution: Flush termguicolors. (Christopher Plewright, closes #11871)
+
+Patch 9.0.1236
+Problem: Code in same_leader() can be simplified.
+Solution: Simplify code that is executed only once. (closes #11867)
+
+Patch 9.0.1237
+Problem: Code is indented more than necessary.
+Solution: Use an early return where it makes sense. (Yegappan Lakshmanan,
+ closes #11858)
+
+Patch 9.0.1238
+Problem: :runtime completion can be further improved.
+Solution: Also complete the {where} argument values and adjust the
+ completion for that. (closes #11874)
+
+Patch 9.0.1239
+Problem: Cannot have a line break before an object member access.
+Solution: Check for "." in next line. (closes #11864)
+
+Patch 9.0.1240
+Problem: Cannot access a private object member in a lambda defined inside
+ the class.
+Solution: Go up the context stack to find the class. (closes #11866)
+
+Patch 9.0.1241
+Problem: Coverity warns for not checking function return value.
+Solution: Explicitly ignore the return value.
+
+Patch 9.0.1242
+Problem: Code for :runtime completion is not consistent.
+Solution: Make code for cmdline expansion more consistent. (closes #11875)
+
+Patch 9.0.1243
+Problem: :setglobal cannot use script-local function for "expr" option.
+Solution: Use the pointer to the option value properly. (closes #11883)
+
+Patch 9.0.1244
+Problem: Cursor briefly displayed in a wrong position when pressing Esc in
+ Insert mode after autoindent was used.
+Solution: Do not adjust the cursor position for assumed deleted white space
+ if text is following. (closes #11877)
+
+Patch 9.0.1245
+Problem: Code is indented more than necessary.
+Solution: Use an early return where it makes sense. (Yegappan Lakshmanan,
+ closes #11879)
+
+Patch 9.0.1246
+Problem: Code is indented more than necessary.
+Solution: Use an early return where it makes sense. (Yegappan Lakshmanan,
+ closes #11887)
+
+Patch 9.0.1247
+Problem: Divide by zero with 'smoothscroll' set and a narrow window.
+Solution: Bail out when the window is too narrow.
+
+Patch 9.0.1248
+Problem: Cannot export an interface. (Ernie Rael)
+Solution: Add the EX_EXPORT flag to :interface. (closes #11884)
+
+Patch 9.0.1249
+Problem: Cannot export an abstract class. (Ernie Rael)
+Solution: Add the EX_EXPORT flag to :abstract. (closes #11884)
+
+Patch 9.0.1250
+Problem: Cannot use an object method with :defer. (Ernie Rael)
+Solution: Find the object method and generate code to call it.
+ (closes #11886)
+
+Patch 9.0.1251
+Problem: Checking returned value of ga_grow() is inconsistent.
+Solution: Check for FAIL instaed of "not OK". (Yegappan Lakshmanan,
+ closes #11897)
+
+Patch 9.0.1252
+Problem: MS-Windows: scrollback cropped off on Vim exit.
+Solution: Don't call SetConsoleScreenBufferInfoEx when using the alternate
+ screen buffer. (Christopher Plewright, closes #11882)
+
+Patch 9.0.1253
+Problem: CI adds repository unnecessarily.
+Solution: Remove the line from the workflow. (closes #11900)
+
+Patch 9.0.1254
+Problem: Calling a method on an interface does not work.
+Solution: At runtime figure out what method to call. (closes #11901)
+
+Patch 9.0.1255
+Problem: Changing 'virtualedit' does not have immediate effect.
+Solution: Correct how is checked for a changed value. (closes #11878)
+
+Patch 9.0.1256
+Problem: NetworkManager connection files are not recognized.
+Solution: Add a pattern for NetworkManager connection files. (closes #11893)
+
+Patch 9.0.1257
+Problem: Code style is not check in test scripts.
+Solution: Add basic code style check for test files.
+
+Patch 9.0.1258
+Problem: Code style test fails.
+Solution: Adjust test files.
+
+Patch 9.0.1259
+Problem: Diffmode test fails.
+Solution: Adjust expected result for adjusted indenting.
+
+Patch 9.0.1260
+Problem: Coverity warns for possible NULL pointer usage.
+Solution: Change the condition.
+
+Patch 9.0.1261
+Problem: Elsa files are not recognized.
+Solution: Add a pattern for Elsa files. (Amaan Qureshi, closes #11908)
+
+Patch 9.0.1262
+Problem: The did_set_string_option function is too long.
+Solution: Split off functionality to individual functions. (Yegappan
+ Lakshmanan, Lewis Russell, closes #11904)
+
+Patch 9.0.1263
+Problem: KDL files are not recognized.
+Solution: Add a pattern for KDL files. (Amaan Qureshi, closes #11898)
+
+Patch 9.0.1264
+Problem: Motif: compiler warning for unused argument.
+Solution: Add "UNUSED".
+
+Patch 9.0.1265
+Problem: Using an interface method may give a compilation error.
+Solution: Do not try to compile the body of a method of an interface.
+ (closes #11885)
+
+Patch 9.0.1266
+Problem: Error for space before ": type" is inconsistent.
+Solution: Give E1059 in more places. (closes #11868)
+
+Patch 9.0.1267
+Problem: The did_set_string_option function is too long.
+Solution: Further cleanup of handling string options. (Yegappan Lakshmanan,
+ Lewis Russell, closes #11920)
+
+Patch 9.0.1268
+Problem: .clangd and .stylelintrc files don't get a filetype.
+Solution: Use yaml for .clangd and json for .stylelintrc files. (Mark
+ Skelton, closes #11916)
+
+Patch 9.0.1269
+Problem: Channel test often fails on Mac OS.
+Solution: Increase the wait time from one to 15 milliseconds. (D. Ben
+ Knoble, closes #11894)
+
+Patch 9.0.1270
+Problem: Crash when using search stat in narrow screen.
+Solution: Check length of message. (closes #11921)
+
+Patch 9.0.1271
+Problem: Using sizeof() and subtract array size is tricky.
+Solution: Use offsetof() instead. (closes #11926)
+
+Patch 9.0.1272
+Problem: Typo in pattern for filetype detection.
+Solution: Fix the typo. (closes #11924)
+
+Patch 9.0.1273
+Problem: "1v" may select block with wrong size. (Evgeni Chasnovski)
+Solution: Compute "curswant" in the right line. (closes #11925)
+
+Patch 9.0.1274
+Problem: FIRRTL files are not recognized.
+Solution: Add a pattern for FIRRTL files. (Amaan Qureshi, closes #11931)
+
+Patch 9.0.1275
+Problem: The code for setting options is too complicated.
+Solution: Refactor the do_set() function. (Yegappan Lakshmanan, Lewis
+ Russell, closes #11932)
+
+Patch 9.0.1276
+Problem: Some mappings with Meta and Shift do not work.
+Solution: Apply the Shift modifier to the key. (issue #11913)
+
+Patch 9.0.1277
+Problem: Cursor may move with autocmd in Visual mode.
+Solution: Restore "VIsual_active" before calling check_cursor().
+ (closes #11939)
+
+Patch 9.0.1278
+Problem: go.work.sum files are not recognized.
+Solution: Recognize go.work.sum files as the gosum filetype. (Amaan Qureshi,
+ closes #11940)
+
+Patch 9.0.1279
+Problem: Display shows lines scrolled down erroneously. (Yishai Lerner)
+Solution: Do not change "wl_lnum" at index zero. (closes #11938)
+
+Patch 9.0.1280
+Problem: Inssufficient testing for what 9.0.1265 fixes.
+Solution: Add a couple of test cases. (issue #11885)
+
+Patch 9.0.1281
+Problem: Cadence files are not recognized.
+Solution: Recognize Cadence files. (Janez Podhostnik, closes #11951)
+
+Patch 9.0.1282
+Problem: Ron files are not recognized.
+Solution: Recognize Ron files. (Amaan Qureshi, closes #11948)
+
+Patch 9.0.1283
+Problem: The code for setting options is too complicated.
+Solution: Refactor the do_set() function. (Yegappan Lakshmanan, Lewis
+ Russell, closes #11945)
+
+Patch 9.0.1284
+Problem: Compiler warnings for uninitialized variables. (Tony Mechelynck)
+Solution: Add variable initializations.
+
+Patch 9.0.1285
+Problem: Various small problems.
+Solution: Adjust white space and comments.
+
+Patch 9.0.1286
+Problem: Coverity warns for using a NULL pointer.
+Solution: Bail out whan "varp" is NULL.
+
+Patch 9.0.1287
+Problem: With the Kitty key protocl Esc with NumLock cannot be mapped.
+Solution: Also use K_ESC when there is a modifier. (closes #11811)
+
+Patch 9.0.1288
+Problem: FunC files are not recognized.
+Solution: Recognize FunC files. (Amaan Qureshi, closes #11949)
+
+Patch 9.0.1289
+Problem: A newer version of clang can be used for CI.
+Solution: Switch from clang-15 to clang-16. (closes #11577)
+
+Patch 9.0.1290
+Problem: CTRL-N and -P on cmdline don't trigger CmdlineChanged.
+Solution: Jump to cmdline_changed instead of cmdline_not_changed.
+ (closes #11956)
+
+Patch 9.0.1291
+Problem: Move language files are not recognized.
+Solution: Recognize Move language files. (Amaan Qureshi, closes #11947)
+
+Patch 9.0.1292
+Problem: :defer may call the wrong method for an object. (Ernie Rael)
+Solution: When en object is from a class that extends or implements, figure
+ out the method to call at runtime. (closes #11910)
+
+Patch 9.0.1293
+Problem: The set_num_option() is too long.
+Solution: Move code to separate functions. (Yegappan Lakshmanan,
+ closes #11954)
+
+Patch 9.0.1294
+Problem: The set_bool_option() function is too long.
+Solution: Move code to separate functions. (Yegappan Lakshmanan,
+ closes #11964)
+
+Patch 9.0.1295
+Problem: The option initialization function is too long.
+Solution: Move code to separate functions. (Yegappan Lakshmanan,
+ closes #11966)
+
+Patch 9.0.1296
+Problem: Calling an object method with arguments does not work. (Ernie
+ Rael)
+Solution: Take the argument count into account when looking up the object.
+ (closes #11911)
+
+Patch 9.0.1297
+Problem: Wrong value for $LC_CTYPE makes the environ test fail.
+Solution: Unset $LC_CTYPE when running tests. (closes #11963)
+
+Patch 9.0.1298
+Problem: Inserting a register on the command line does not trigger
+ incsearch or update hlsearch.
+Solution: Have cmdline_insert_reg() return CMDLINE_CHANGED when appropriate
+ and handle it correctly. (Ken Takata, closes #11960)
+
+Patch 9.0.1299
+Problem: Change for triggering incsearch not sufficiently tested.
+Solution: Add a test case. Simplify the code. (closes #11971)
+
+Patch 9.0.1300
+Problem: 'statusline' only supports one "%=" item.
+Solution: Add support for multiple "%=" items. (TJ DeVries, Yegappan
+ Lakshmanan, closes #11970, closes #11965)
+
+Patch 9.0.1301
+Problem: Virtual text below empty line not displayed.
+Solution: Adjust flags and computations. (closes #11959)
+
+Patch 9.0.1302
+Problem: On a Belgian keyboard CTRL-] does not work.
+Solution: Translate CTRL-$ into CTRL-]. (closes #11831)
+
+Patch 9.0.1303
+Problem: Motif: scrollbar width/height wrong when maximized.
+Solution: Set the width/height when creating the scrollbar. (closes #11946)
+
+Patch 9.0.1304
+Problem: "$" for 'list' option displayed in wrong position when there are
+ text properties.
+Solution: Adjust logic for order of displayed items. (closes #11959)
+
+Patch 9.0.1305
+Problem: Cursor in wrong line with virtual text above.
+Solution: Count extra line for text property above/below. (closes #11959)
+
+Patch 9.0.1306
+Problem: No regression test for solved problem of #11959.
+Solution: Add a test, also with 'list' set. (closes #11959)
+
+Patch 9.0.1307
+Problem: Setting 'formatoptions' with :let doesn't check for errors.
+Solution: Pass "errbuf" to set_string_option(). (Yegappan Lakshmanan,
+ closes #11974, closes #11972)
+
+Patch 9.0.1308
+Problem: The code for setting options is too complicated.
+Solution: Refactor the code for setting options. (Yegappan Lakshmanan,
+ closes #11989)
+
+Patch 9.0.1309
+Problem: Scrolling two lines with even line count and 'scrolloff' set.
+Solution: Adjust how the topline is computed. (closes #10545)
+
+Patch 9.0.1310
+Problem: 'splitkeep' test has failures.
+Solution: Adjust expected cursor line position.
+
+Patch 9.0.1311
+Problem: Coverity warns for using a NULL pointer.
+Solution: Use "empty_option" instead of NULL.
+
+Patch 9.0.1312
+Problem: Cursor position wrong when splitting window in insert mode.
+Solution: Pass the actual mode to win_fix_cursor(). (Luuk van Baal,
+ closes #11999,
+
+Patch 9.0.1313
+Problem: Some settings use the current codepage instead of 'encoding'.
+Solution: Adjust how options are initialized. (Ken Takata, closes #11992)
+
+Patch 9.0.1314
+Problem: :messages behavior depends on 'fileformat' of current buffer.
+Solution: Pass the buffer pointer to where it is used. (Mirko Ceroni,
+ closes #11995)
+
+Patch 9.0.1315
+Problem: Escaping for completion of map command not properly tested.
+Solution: Add a few test cases. (closes #12009)
+
+Patch 9.0.1316
+Problem: MS-Windows: vimfiles dir created with admin group.
+Solution: Use ShellExecAsUser to create the vimfiles directory. (Christopher
+ Plewright, Ken Takata, closes #12000, closes #11888)
+
+Patch 9.0.1317
+Problem: Crash when using an unset object variable.
+Solution: Give an error instead. (closes #12005)
+
+Patch 9.0.1318
+Problem: Code style test fails.
+Solution: Remove trailing white space.
+
+Patch 9.0.1319
+Problem: PRQL files are not recognized.
+Solution: Add a filetype pattern for PRQL files. (Matthias Queitsch,
+ closes #12018)
+
+Patch 9.0.1320
+Problem: Checking the type of a null object causes a crash.
+Solution: Don't try to get the class of a null object. (closes #12005)
+ Handle error from calling a user function better.
+
+Patch 9.0.1321
+Problem: vimscript test fails where using {expr} syntax.
+Solution: Only return FCERR_FAILED in call_user_func() for Vim9 script.
+
+Patch 9.0.1322
+Problem: Crash when indexing "any" which is an object.
+Solution: Check the index is a number. Do not check the member type of an
+ object. (closes #12019)
+
+Patch 9.0.1323
+Problem: Build failure with +eval feature.
+Solution: Add missing part for using funcerror_T.
+
+Patch 9.0.1324
+Problem: "gj" and "gk" do not move correctly over a closed fold.
+Solution: Use the same code as used for "j"/"k" to go to the next/previous
+ line. (Luuk van Baal, closes #12007)
+
+Patch 9.0.1325
+Problem: 'colorcolumn' highlight wrong with virtual text above.
+Solution: Adjust column of 'colorcolumn' for text propertly. (closes #12004)
+
+Patch 9.0.1326
+Problem: Relative line number not updated with virtual text above.
+Solution: Adjust the row for the line number for virtual text above.
+ (closes #12004)
+
+Patch 9.0.1327
+Problem: Cursor in wrong position below line with virtual text below ending
+ in multi-byte character.
+Solution: When checking for last character take care of multi-byte
+ character.
+
+Patch 9.0.1328
+Problem: Error when using "none" for GUI color is confusing.
+Solution: Mention that the name should perhaps be "NONE". (closes #1400)
+
+Patch 9.0.1329
+Problem: Completion of map includes simplified ones.
+Solution: Do not complete simplified mappings. (closes #12013)
+
+Patch 9.0.1330
+Problem: Handling new value of an option has a long "else if" chain.
+Solution: Use a function pointer. (Yegappan Lakshmanan, closes #12015)
+
+Patch 9.0.1331
+Problem: Illegal memory access when using :ball in Visual mode.
+Solution: Stop Visual mode when using :ball. (Pavel Mayorov, closes #11923)
+
+Patch 9.0.1332
+Problem: Crash when using buffer-local user command in cmdline window.
+ (Karl Yngve Lervåg)
+Solution: Use the right buffer to find the user command. (closes #12030,
+ closes #12029)
+
+Patch 9.0.1333
+Problem: When redo'ing twice <ScriptCmd> may not get the script ID.
+Solution: When "last_used_map" map is not set use "last_used_sid".
+ (closes #11930)
+
+Patch 9.0.1334
+Problem: Using tt_member for the class leads to mistakes.
+Solution: Add a separate tt_class field.
+
+Patch 9.0.1335
+Problem: No test for bad use of spaces in help files.
+Solution: Add checks for use of spaces in help files. Ignore intentional
+ spaces. (Hirohito Higashi, closes #11952)
+
+Patch 9.0.1336
+Problem: Functions without arguments are not always declared properly.
+Solution: Use "(void)" instead of "()". (Yegappan Lakshmanan, closes #12031)
+
+Patch 9.0.1337
+Problem: Yuck files are not recognized.
+Solution: Add a filetype pattern for yuck files. (Amaan Qureshi,
+ closes #12033)
+
+Patch 9.0.1338
+Problem: :defcompile and :disassemble can't find class method. (Ernie Rael)
+Solution: Make a class name and class.method name work. (closes #11984)
+
+Patch 9.0.1339
+Problem: No test for :disassemble with class function.
+Solution: Add a test.
+
+Patch 9.0.1340
+Problem: Coverity warns for using NULL pointer.
+Solution: Check that lhs_type is not NULL.
+
+Patch 9.0.1341
+Problem: Build error with mzscheme but without GUI.
+Solution: Adjust #ifdefs. (Ken Takata, closes #12042) Also fix function
+ argument.
+
+Patch 9.0.1342
+Problem: MS-Windows: linking may fail with space in directory name.
+Solution: Add quotes. (closes #12050)
+
+Patch 9.0.1343
+Problem: Check for OSC escape sequence doesn't work.
+Solution: Move square bracket to the right place. (Johan Mattsson,
+ closes #12048)
+
+Patch 9.0.1344
+Problem: Check for OSC escape sequence doesn't work.
+Solution: Fix typo in index.
+
+Patch 9.0.1345
+Problem: Too many "else if" statements for handling options.
+Solution: Add more functions to handle options. (Yegappan Lakshmanan,
+ closes #12051)
+
+Patch 9.0.1346
+Problem: Starlark files are not recognized.
+Solution: Add patterns for Starlark files. (Amaan Qureshi, closes #12049)
+
+Patch 9.0.1347
+Problem: "gr CTRL-O" stays in Insert mode. (Pierre Ganty)
+Solution: Do not set restart_edit when "cmdchar" is 'v'. (closes #12045)
+
+Patch 9.0.1348
+Problem: Un-grammar files are not recognized.
+Solution: Add patterns for Un-grammar files. (Amaan Qureshi, closes #12034)
+
+Patch 9.0.1349
+Problem: "gr" with a count fails.
+Solution: Break out of the loop only after using the count.
+
+Patch 9.0.1350
+Problem: CPON files are not recognized.
+Solution: Add patterns for CPON files. (Amaan Qureshi, closes #12053)
+
+Patch 9.0.1351
+Problem: Dhall files are not recognized.
+Solution: Add patterns for Dhall files. (Amaan Qureshi, closes #12052)
+
+Patch 9.0.1352
+Problem: "ignore" files are outdated.
+Solution: Update "ignore" files. (Ken Takata, closes #12056)
+
+Patch 9.0.1353
+Problem: Too many "else if" statements to handle option values.
+Solution: Add more functions to handle option value changes. (Yegappan
+ Lakshmanan, closes #12058)
+
+Patch 9.0.1354
+Problem: "gr CTRL-G" stays in virtual replace mode. (Pierre Ganty)
+Solution: Prepend CTRL-V before control characters. (closes #12045)
+
+Patch 9.0.1355
+Problem: No error when declaring a class twice. (Ernie Rael)
+Solution: Pass different flags when declaring the class. (closes #12057)
+
+Patch 9.0.1356
+Problem: Cannot cancel "gr" with Esc.
+Solution: Make "gr<Esc>" do nothing. (closes #12064)
+
+Patch 9.0.1357
+Problem: Using null_object results in an internal error. (Ernie Rael)
+Solution: Add instructions for pushing an object and class. (closes #12044)
+
+Patch 9.0.1358
+Problem: Compilation error with some compilers.
+Solution: Avoid using "class" as member name.
+
+Patch 9.0.1359
+Problem: Too many "else if" statements in handling options.
+Solution: Add more functions for handling option changes. (Yegappan
+ Lakshmanan, closes #12060)
+
+Patch 9.0.1360
+Problem: Cue files are not recognized.
+Solution: Add patterns for Cue files. (Amaan Qureshi, closes #12067)
+
+Patch 9.0.1361
+Problem: extendnew() not sufficiently tested.
+Solution: Add a few more test cases for extendnew(). (closes #12075)
+
+Patch 9.0.1362
+Problem: ml_get error when going to another tab. (Daniel J. Perry)
+Solution: Do not call update_topline() if "curwin" is invalid.
+ (closes #11907)
+
+Patch 9.0.1363
+Problem: Crash when :def function has :break in skipped block. (Ernie Rael)
+Solution: Don't generate a jump for a skipped :break. (closes #12077)
+
+Patch 9.0.1364
+Problem: Build error with older Mac OS.
+Solution: Adjust #ifdef. (Yee Cheng Chin, closes #12074)
+
+Patch 9.0.1365
+Problem: Dead test code.
+Solution: Remove code that depends on Farsi, which has been removed.
+ (closes #12084)
+
+Patch 9.0.1366
+Problem: Functions for setting options are in random order.
+Solution: Sort functions alphabetically. (Yegappan Lakshmanan,
+ closes #12082)
+
+Patch 9.0.1367
+Problem: Divide by zero in zero-width window.
+Solution: Check the width is positive.
+
+Patch 9.0.1368
+Problem: Bass files are not recognized.
+Solution: Add patterns for Bass files. (Amaan Qureshi, closes #12088)
+
+Patch 9.0.1369
+Problem: Still some "else if" constructs for setting options.
+Solution: Add a few more functions for handling options. (Yegappan
+ Lakshmanan, closes #12090)
+
+Patch 9.0.1370
+Problem: Crash when using a NULL object. (Ernie Rael)
+Solution: Check for NULL and give an error message. (closes #12083)
+
+Patch 9.0.1371
+Problem: Ballooneval interferes with Insert completion.
+Solution: Ignore mouse-move events when completing. (closes #12094,
+ closes #12092)
+
+Patch 9.0.1372
+Problem: Test for 'toolbariconsize' may fail.
+Solution: Only test 'toolbariconsize' when it is supported. (James McCoy,
+ closes #12095)
+
+Patch 9.0.1373
+Problem: Wrong text displayed when using both 'linebreak' and 'list'.
+Solution: Only set "c_extra" to NUL when "p_extra" is not empty. (Hirohito
+ Higashi, closes #12065)
+
+Patch 9.0.1374
+Problem: Function for setting options not used consistently.
+Solution: Use a function for 'encoding' and terminal options. (Yegappan
+ Lakshmanan, closes #12099)
+
+Patch 9.0.1375
+Problem: Crash when getting member of obj of unknown class.
+Solution: Check for NULL class and give an error message. (Ernie Rael,
+ closes #12096)
+
+Patch 9.0.1376
+Problem: Accessing invalid memory with put in Visual block mode.
+Solution: Adjust the cursor column if needed.
+
+Patch 9.0.1377
+Problem: job_status() may return "dead" if the process parent changed.
+Solution: Call mch_process_running() to check if the job is still alive.
+
+Patch 9.0.1378
+Problem: Illegal memory access when using virtual editing.
+Solution: Make sure "startspaces" is not negative.
+
+Patch 9.0.1379
+Problem: Functions for handling options are not ordered.
+Solution: Put functions in alphabetical order. (Yegappan Lakshmanan,
+ closes #12101)
+
+Patch 9.0.1380
+Problem: CTRL-X on 2**64 subtracts two. (James McCoy)
+Solution: Correct computation for large number. (closes #12103)
+
+Patch 9.0.1381
+Problem: ACCESS_ names have a conflict with on some systems.
+Solution: Rename by prepending VIM_. (Ola Söder, closes #12105)
+
+Patch 9.0.1382
+Problem: Failing test for strptime() doesn't show returned value.
+Solution: Use assert_equal() instead of assert_true().
+
+Patch 9.0.1383
+Problem: xxd: combination of little endian and cols fails. (Aapo
+ Rantalainen)
+Solution: Round up the space taken by the hex output. (closes #12097)
+
+Patch 9.0.1384
+Problem: Setting HOMEBREW_NO_AUTO_UPDATE is not needed with Homebew version
+ 4.
+Solution: Remove setting HOMEBREW_NO_AUTO_UPDATE. (closes #12008)
+
+Patch 9.0.1385
+Problem: g'Esc is considered an error.
+Solution: Make g'Esc silently abandon the command. (closes #12110)
+
+Patch 9.0.1386
+Problem: Options test fails with some window width.
+Solution: Adjust what text the test checks with. (closes #12111)
+
+Patch 9.0.1387
+Problem: Scrollbar test sporadically fails.
+Solution: Mark the scrollbar test as flaky. (Christian Brabandt,
+ closes #12113)
+
+Patch 9.0.1388
+Problem: Amiga: not all builds use gethostname().
+Solution: Use gethostname() for all builds except AROS. (Ola Söder,
+ closes #12107)
+
+Patch 9.0.1389
+Problem: Amiga: a couple of include files are included twice.
+Solution: Remove duplicate includes. (Ola Söder, closes #12106)
+
+Patch 9.0.1390
+Problem: FOR_ALL_ macros are defined in an unexpected file.
+Solution: Move FOR_ALL_ macros to macros.h. Add FOR_ALL_HASHTAB_ITEMS.
+ (Yegappan Lakshmanan, closes #12109)
+
+Patch 9.0.1391
+Problem: "clear" macros are not always used.
+Solution: Use ALLOC_ONE, VIM_CLEAR, CLEAR_POINTER and CLEAR_FIELD in more
+ places. (Yegappan Lakshmanan, closes #12104)
+
+Patch 9.0.1392
+Problem: Using NULL pointer with nested :open command.
+Solution: Check that ccline.cmdbuff is not NULL.
+
+Patch 9.0.1393
+Problem: Cairo files are not recognized.
+Solution: Add a pattern for Cairo files. (Amaan Qureshi, closes #12118)
+
+Patch 9.0.1394
+Problem: Unx Tal files are not recognized.
+Solution: Add a pattern for Unx Tal files. (Amaan Qureshi, closes #12117)
+
+Patch 9.0.1395
+Problem: Odin files are not recognized.
+Solution: Add a pattern for Odin files. (Amaan Qureshi, closes #12122)
+
+Patch 9.0.1396
+Problem: sort(list, 'N') does not work in Vim9 script context.
+Solution: Convert string to number without giving an error. (closes #12061)
+
+Patch 9.0.1397
+Problem: Highlight for popupmenu kind and extra cannot be set.
+Solution: Add PmenuKind, PmenuKindSel, PmenuExtra and PmenuExtraSel
+ highlight groups and use them. (Gianmaria Bajo, closes #12114)
+
+Patch 9.0.1398
+Problem: Profile test repeats the headers many times.
+Solution: Put the headers in script variables.
+
+Patch 9.0.1399
+Problem: Highlight test script has a few problems.
+Solution: Rewrite the script in Vim9 syntax. (closes #10379)
+
+Patch 9.0.1400
+Problem: find_file_in_path() is not reentrant.
+Solution: Instead of global variables pass pointers to the functions.
+ (closes #12093)
+
+Patch 9.0.1401
+Problem: Condition is always true.
+Solution: Remove the condition. (closes #12139)
+
+Patch 9.0.1402
+Problem: Crash when using null_class.
+Solution: Give an error when trying to use a null class.
+
+Patch 9.0.1403
+Problem: Unused variables and functions.
+Solution: Delete items and adjust #ifdefs. (Dominique Pellé, closes #12145)
+
+Patch 9.0.1404
+Problem: Compilation error with some compilers.
+Solution: Adjust array initialization. (John Marriott)
+
+Patch 9.0.1405
+Problem: Missing check for out-of-memory.
+Solution: Check for alloc() returning NULL pointer. (closes #12149)
+
+Patch 9.0.1406
+Problem: ILE RPG files are not recognized.
+Solution: Add patterns for ILE RPG files. (Andreas Louv, issue #12152)
+
+Patch 9.0.1407
+Problem: TableGen files are not recognized.
+Solution: Add a pattern for TableGen files. (Amaan Qureshi, closes #12156)
+
+Patch 9.0.1408
+Problem: QMLdir files are not recognized.
+Solution: Add a pattern for QMLdir files. (Amaan Qureshi, closes #12161)
+
+Patch 9.0.1409
+Problem: Racket files are recognized as scheme.
+Solution: Recognize rackets files separately. (Gabriel Kakizaki,
+ closes #12164, closes #12162)
+
+Patch 9.0.1410
+Problem: MacOS: sed fails on .po files.
+Solution: Set $LANG to "C". (Yee Cheng Chin, closes #12153)
+
+Patch 9.0.1411
+Problem: Accuracy of profiling is not optimal.
+Solution: Use CLOCK_MONOTONIC if possible. (Ernie Rael, closes #12129)
+
+Patch 9.0.1412
+Problem: Pony files are not recognized.
+Solution: Add a pattern for Pony files. (Amaan Qureshi, closes #12155)
+
+Patch 9.0.1413
+Problem: Compiler warning for unused variable.
+Solution: Move variable declaration. (John Marriott)
+
+Patch 9.0.1414
+Problem: <M-S-x> in Kitty does not use the Shift modifier.
+Solution: Apply the Shift modifier to ASCII letters. (closes #11913)
+
+Patch 9.0.1415
+Problem: Crystal files are not recognized.
+Solution: Add a pattern for Crystal files. (Amaan Qureshi, closes #12175)
+
+Patch 9.0.1416
+Problem: Crash when collection is modified when using filter().
+Solution: Lock the list/dict/blob. (Ernie Rael, closes #12183)
+
+Patch 9.0.1417
+Problem: ESDL files are not recognized.
+Solution: Add a pattern for ESDL files. (Amaan Qureshi, closes #12174)
+
+Patch 9.0.1418
+Problem: The included xdiff code is a bit outdated.
+Solution: Sync with the latest git xdiff code. (Yee Cheng Chin,
+ closes #12181)
+
+Patch 9.0.1419
+Problem: Lean files are not recognized.
+Solution: Add a pattern for Lean files. (Amaan Qureshi, closes #12177)
+
+Patch 9.0.1420
+Problem: Build failure because SIZE_MAX is not defined.
+Solution: Define SIZE_MAX when missing. (John Marriott)
+
+Patch 9.0.1421
+Problem: Nu files are not recognized.
+Solution: Add a pattern for Nu files. (Amaan Qureshi, closes #12172)
+
+Patch 9.0.1422
+Problem: Sage files are not recognized.
+Solution: Add a pattern for Sage files. (Amaan Qureshi, closes #12176)
+
+Patch 9.0.1423
+Problem: WebAssembly Interface Type files are not recognized.
+Solution: Add a pattern for WIT files. (Amaan Qureshi, closes #12173)
+
+Patch 9.0.1424
+Problem: Unused macros are defined.
+Solution: Remove the unused macros.
+
+Patch 9.0.1425
+Problem: "wat" and "wast" files are one filetype.
+Solution: Add a separate filetype for "wat" files. (Amaan Qureshi,
+ closes #12165)
+
+Patch 9.0.1426
+Problem: Indent wrong after "export namespace" in C++.
+Solution: Skip over "inline" and "export" in any order. (Virginia Senioria,
+ closes #12134, closes #12133)
+
+Patch 9.0.1427
+Problem: Warning for uninitialized variable. (Tony Mechelynck)
+Solution: Add #ifdef.
+
+Patch 9.0.1428
+Problem: Cursor in wrong position when leaving insert mode.
+Solution: Update the w_valid flags. Position the cursor also when not
+ redrawing. (closes #12137)
+
+Patch 9.0.1429
+Problem: Invalid memory access when ending insert mode.
+Solution: Check if the insert_skip value is valid.
+
+Patch 9.0.1430
+Problem: Livebook files are not recognized.
+Solution: Add a pattern for Livebook files. (Mathias Jean Johansen,
+ closes #12203)
+
+Patch 9.0.1431
+Problem: getscriptinfo() loops even when specific SID is given.
+Solution: Only loop when needed. Give a clearer error message.
+ (closes #12207)
+
+Patch 9.0.1432
+Problem: Completion popup in wrong position with virtual text "above".
+Solution: Adjust the column. (closes #12210)
+
+Patch 9.0.1433
+Problem: On some systems the Lua library is not found.
+Solution: Check if a subdirectory for Lua exists. (closes #4475)
+
+Patch 9.0.1434
+Problem: Crash when adding package already in 'runtimepath'.
+Solution: Change order for using 'runtimepath' entries. (closes #12215)
+
+Patch 9.0.1435
+Problem: Scrolling too many lines when 'wrap' and 'diff' are set.
+Solution: Only scroll by screenlines for 'diff' when 'wrap' is not set.
+ (closes #12211)
+
+Patch 9.0.1436
+Problem: Cannot compare a typed variable with v:none.
+Solution: Allow for "x is v:none" and "x isnot v:none". (issue #12194)
+
+Patch 9.0.1437
+Problem: Test fails with different error number.
+Solution: Adjust the expected error.
+
+Patch 9.0.1438
+Problem: .fs files are falsely recognized as forth files.
+Solution: Check 100 lines for something that looks like forth. (Johan
+ Kotlinski, closes #12219, closes #11988)
+
+Patch 9.0.1439
+Problem: Start Insert mode when accessing a hidden prompt buffer.
+Solution: Call leaving_window() in aucmd_restbuf(). (Thorben Tröbst,
+ closes #12148, closes #12147)
+
+Patch 9.0.1440
+Problem: "rvim" can execute a shell through :diffpatch.
+Solution: Disallow the shell "patch" command.
+
+Patch 9.0.1441
+Problem: MacOS: Python 3 using framework do not set dll name properly.
+Solution: Use the framework prefix. (Yee Cheng Chin, closes #12189)
+
+Patch 9.0.1442
+Problem: mapset() does not restore non-script context.
+Solution: Also accept negative sid. (closes #12132)
+
+Patch 9.0.1443
+Problem: Ending Insert mode when accessing a hidden prompt buffer.
+Solution: Don't stop Insert mode when it was active before. (closes #12237)
+
+Patch 9.0.1444
+Problem: Crash when passing NULL to setcmdline(). (Andreas Louv)
+Solution: Use tv_get_string() instead of using v_string directly.
+ (closes #12231, closes #12227)
+
+Patch 9.0.1445
+Problem: openSUSE: configure doesn't find the Motif library. (Tony
+ Mechelynck)
+Solution: Also search in /usr/lib64.
+
+Patch 9.0.1446
+Problem: Unnecessary checks for the "skip" flag when skipping.
+Solution: Remove the unnecessary checks. (closes #12254)
+
+Patch 9.0.1447
+Problem: Condition is always true.
+Solution: Remove the useless condition. (closes #12253)
+
+Patch 9.0.1448
+Problem: Diff test fails on MacOS 13.
+Solution: Install GNU diffutils. (Ozaki Kiichi, closes #12258)
+
+Patch 9.0.1449
+Problem: Test for prompt buffer is flaky.
+Solution: Use WaitForAssert() instead of TermWait(). (Ozaki Kiichi,
+ closes #12247)
+
+Patch 9.0.1450
+Problem: MacOS: building fails if clock_gettime() is not available.
+Solution: Add a configure check for clock_gettime(). (closes #12242)
+
+Patch 9.0.1451
+Problem: Unnecessary redrawing when 'showcmdloc' is not "last".
+Solution: Redraw later when "showcmd_is_clear" is set. (Luuk van Baal,
+ closes #12260)
+
+Patch 9.0.1452
+Problem: Code using EVAL_CONSTANT is dead, it is never set.
+Solution: Remove EVAL_CONSTANT. (closes #12252)
+
+Patch 9.0.1453
+Problem: Typos in source code and tests.
+Solution: Fi the typos. (Dominique Pellé, closes #12217)
+
+Patch 9.0.1454
+Problem: Code indenting is confused by macros.
+Solution: Put semicolon after the macros instead of inside. (Ozaki Kiichi,
+ closes #12257)
+
+Patch 9.0.1455
+Problem: C++ 20 modules are not recognized.
+Solution: Add patterns to recognize C++ 20 modules as "cpp". (Ben Jackson,
+ closes #12261)
+
+Patch 9.0.1456
+Problem: Shortmess test depends on order of test execution.
+Solution: Clear messages. (closes #12264)
+
+Patch 9.0.1457
+Problem: No regression test for what patch 9.0.1333 fixes.
+Solution: Extend existing test to cover the fixed problem. (issue #11930)
+
+Patch 9.0.1458
+Problem: Buffer overflow when expanding long file name.
+Solution: Use a larger buffer and avoid overflowing it. (Yee Cheng Chin,
+ closes #12201)
+
+Patch 9.0.1459
+Problem: Typo in name of type.
+Solution: Change funccal_T to funccall_T. (closes #12265)
+
+Patch 9.0.1460
+Problem: Insufficient testing for getcmdcompltype().
+Solution: Add a few more test cases. (closes #12268)
+
+Patch 9.0.1461
+Problem: Ruler not drawn correctly when using 'rulerformat'.
+Solution: Adjust formatting depending on whether the ruler is drawn in the
+ statusline or the command line. (Sean Dewar, closes #12246)
+
+Patch 9.0.1462
+Problem: Recursively calling :defer function if it does :qa.
+Solution: Clear the defer entry before calling the function. (closes #12266)
+
+Patch 9.0.1463
+Problem: Virtual text truncation only works with Unicode 'encoding'.
+Solution: Convert the ellipsis character to 'encoding' if needed. (Hirohito
+ Higashi, closes #12233)
+
+Patch 9.0.1464
+Problem: Strace filetype detection is expensive.
+Solution: Match with a cheap pattern first. (Federico Mengozzi,
+ closes #12220)
+
+Patch 9.0.1465
+Problem: Haiku build fails.
+Solution: Do not include globals.h and proto.h twice. (Ozaki Kiichi,
+ closes #12273)
+
+Patch 9.0.1466
+Problem: Cannot use an object member name as a method argument.
+Solution: Do not give an error for using an object member name for a method
+ argument. (Hirohito Higashi, closes #12241, closes #12225)
+ Fix line number for other argument error.
+
+Patch 9.0.1467
+Problem: Jenkinsfiles are not recognized as groovy.
+Solution: Add a pattern for Jenkinsfiles. (closes #12236)
+
+Patch 9.0.1468
+Problem: Recursively calling :defer function if it does :qa in a compiled
+ function.
+Solution: Clear the defer entry before calling the function. (closes #12271)
+
+Patch 9.0.1469
+Problem: Deferred functions not called from autocommands.
+Solution: Also go through the funccal_stack. (closes #12267)
+
+Patch 9.0.1470
+Problem: Deferred functions invoked in unexpected order when using :qa and
+ autocommands.
+Solution: Call deferred functions for the current funccal before using the
+ stack. (closes #12278)
+
+Patch 9.0.1471
+Problem: Warnings for function declarations.
+Solution: Add argument types. (Michael Jarvis, closes #12277)
+
+Patch 9.0.1472
+Problem: ":drop fname" may change the last used tab page.
+Solution: Restore the last used tab page when :drop has changed it.
+ (closes #12087)
+
+Patch 9.0.1473
+Problem: CI does not run sound tests.
+Solution: Re-enable sound tests. Use "apt-get" instead of "apt". (Ozaki
+ Kiichi, closes #12280)
+
+Patch 9.0.1474
+Problem: CI runs with old version of Ubuntu and tools.
+Solution: Update CI to more recent versions. (closes #11092)
+
+Patch 9.0.1475
+Problem: Busted configuration files are not recognized.
+Solution: Recognize busted configuration files as Lua. (Craig MacEachern,
+ closes #12209)
+
+Patch 9.0.1476
+Problem: Lines put in non-current window are not displayed. (Marius
+ Gedminas)
+Solution: Don't increment the topline when inserting just above it.
+ (closes #12212)
+
+Patch 9.0.1477
+Problem: Crash when recovering from corrupted swap file.
+Solution: Check for a valid page count. (closes #12275)
+
+Patch 9.0.1478
+Problem: Filetypes for *.v files not detected properly.
+Solution: Use the file contents to detect the filetype. (Turiiya,
+ closes #12281)
+
+Patch 9.0.1479
+Problem: Small source file problems; outdated list of distributed files.
+Solution: Small updates to source files and list of distributed files.
+
+Patch 9.0.1480
+Problem: Using popup menu may leave text in the command line.
+Solution: Clear the command line if the popup menu covered it. (Luuk van
+ Baal, closes #12286)
+
+Patch 9.0.1481
+Problem: Decrypting with libsodium may fail if the library changes.
+Solution: Add parameters used to the encrypted file header. (Christian
+ Brabandt, closes #12279)
+
+Patch 9.0.1482
+Problem: Crash when textprop has a very large "padding" value. (Yegappan
+ Lakshmanan)
+Solution: Avoid the "after" count to go negative.
+
+Patch 9.0.1483
+Problem: += operator does not work on class member.
+Solution: Do not skip as if "this." was used. (Christian Brabandt,
+ closes #12263)
+
+Patch 9.0.1484
+Problem: Coverity warns for using invalid array index.
+Solution: Add entry for Xchacha, even though it is not used.
+
+Patch 9.0.1485
+Problem: no functions for converting from/to UTF-16 index.
+Solution: Add UTF-16 flag to existing funtions and add strutf16len() and
+ utf16idx(). (Yegappan Lakshmanan, closes #12216)
+
+Patch 9.0.1486
+Problem: Parallel make might not work.
+Solution: Add missing dependencies. (Samuel Dionne-Riel, closes #12288)
+
+Patch 9.0.1487
+Problem: Content-type header for LSP channel not according to spec.
+Solution: Use "vscode-jsonrpc" instead of "vim-jsonrpc". (Yegappan
+ Lakshmanan, closes #12295)
+
+Patch 9.0.1488
+Problem: xchacha20v2 crypt header is platform dependent.
+Solution: Avoid using "size_t". (Ozaki Kiichi, closses #12296)
+
+Patch 9.0.1489
+Problem: Crypt with libsodium is not tested on CI.
+Solution: Configure testing with libsodium. (Ozaki Kiichi, closes #12297)
+
+Patch 9.0.1490
+Problem: The ModeChanged event may be triggered too often.
+Solution: Only trigger ModeChanged when no operator is pending.
+ (closes #12298)
+
+Patch 9.0.1491
+Problem: Wrong scrolling with ls=0 and :botright split.
+Solution: Add statusline before calling frame_new_height(). (closes #12299)
+
+Patch 9.0.1492
+Problem: Using uninitialized memory when argument is missing.
+Solution: Check there are sufficient arguments before the base.
+ (closes #12302)
+
+Patch 9.0.1493
+Problem: Popup menu position wrong in window with toolbar.
+Solution: Take the window toolbar into account when positioning the popup
+ menu. (closes #12308)
+
+Patch 9.0.1494
+Problem: Crash when recovering from corrupted swap file.
+Solution: Bail out when the line index looks wrong. (closes #12276)
+
+Patch 9.0.1495
+Problem: GTK3: hiding the mouse pointer does not work. (Rory O’Kane)
+Solution: Set alpha level to zero. (Kenny Stauffer, closes #12293,
+ closes #3256)
+
+Patch 9.0.1496
+Problem: Test restoring register with wrong value.
+Solution: Correct name of variable. (closes #12310)
+
+Patch 9.0.1497
+Problem: The ruler percentage can't be localized.
+Solution: Use a string that can be translated. (Emir Sari, closes #12311)
+
+Patch 9.0.1498
+Problem: In a terminal window the cursor may jump around. (Kenny Stauffer)
+Solution: Do not move the cursor to the position for terminal-normal mode.
+ (closes #12312)
+
+Patch 9.0.1499
+Problem: Using uninitialized memory with fuzzy matching.
+Solution: Initialize the arrays used to store match positions.
+
+Patch 9.0.1500
+Problem: The falsy operator is not tested properly.
+Solution: Add a few more test cases. (closes #12319)
+
+Patch 9.0.1501
+Problem: Crash with nested :try and :throw in catch block.
+Solution: Jump to :endtry before returning from function. (closes #12245)
+
+Patch 9.0.1502
+Problem: No test for deleting the end of a long wrapped line.
+Solution: Add a test to check the right text is displayed. (Luuk van Baal,
+ closes #12318)
+
+Patch 9.0.1503
+Problem: Luau files are not recognized.
+Solution: Add a patter for Luau files. (Amaan Qureshi, closes #12317)
+
+Patch 9.0.1504
+Problem: No error when calling remote_startserver() with an empty string.
+Solution: Give an error for an empty string. (Hirohito Higashi,
+ closes #12327)
+
+Patch 9.0.1505
+Problem: Error when heredoc content looks like heredoc.
+Solution: Handle curly expressions. (closes #12325)
+
+Patch 9.0.1506
+Problem: Line number not displayed when using 'smoothscroll'.
+Solution: Adjust condition for showing the line number. (closes #12333)
+
+Patch 9.0.1507
+Problem: Assert message is confusing with boolean result. assert_inrange()
+ replaces message instead of adding it.
+Solution: Don't put quotes around expected boolean value. Append message
+ for assert_inrange(). (closes #12342, closes #12341)
+
+Patch 9.0.1508
+Problem: Catch does not work when lines are joined with a newline.
+Solution: Set "nextcmd" appropriately. (closes #12348)
+
+Patch 9.0.1509
+Problem: Error message lacks mentioning the erroneous argument.
+Solution: Specify the argument that the error is for.
+
+Patch 9.0.1510
+Problem: Misleading variable name for error message.
+Solution: Change "name" to "number". (closes #12345)
+
+Patch 9.0.1511
+Problem: Crash when using wrong arg types to assert_match().
+Solution: Check for NULL pointer. (closes #12349)
+
+Patch 9.0.1512
+Problem: Inserting lines when scrolling with 'smoothscroll' set.
+Solution: Adjust line height computation for w_skipcol. (Luuk van Baal,
+ closes #12350)
+
+Patch 9.0.1513
+Problem: Text scrolls unnecessarily when splitting and 'splitkeep' is not
+ "cursor".
+Solution: Avoid resetting w_skipcol. (Luuk van Baal, closes #12334)
+
+Patch 9.0.1514
+Problem: Test waits unnecessarily long before checking screendump.
+Solution: Remove TermWait() call.
+
+Patch 9.0.1515
+Problem: reverse() does not work for a String.
+Solution: Implement reverse() for a String. (Yegappan Lakshmanan,
+ closes #12179)
+
+Patch 9.0.1516
+Problem: Cannot use special keys in <Cmd> mapping.
+Solution: Do allow for special keys in <Cmd> and <ScriptCmd> mappings.
+ (closes #12326)
+
+Patch 9.0.1517
+Problem: MacOS: configure removes -O2 from $CFLAGS.
+Solution: Only adjust $CFLAGS for gcc. (closes #12351)
+
+Patch 9.0.1518
+Problem: Search stats not always visible when searching backwards.
+Solution: Do not display the top/bot message on top of the search stats.
+ (Christian Brabandt, closes #12322, closes #12222)
+
+Patch 9.0.1519
+Problem: Global 'filetype' is set when it is detected from the file content.
+Solution: Set the local 'filetype' option value.
+
+Patch 9.0.1520
+Problem: Completion for option name includes all bool options.
+Solution: Do not recognize the "noinv" prefix. Prefix "no" or "inv" when
+ appropriate.
+
+Patch 9.0.1521
+Problem: Failing redo of command with control characters.
+Solution: Use AppendToRedobuffLit() for colon commands. (closes #12354)
+
+Patch 9.0.1522
+Problem: Some functions give two error messages.
+Solution: Do not give a second error message. (closes #12352)
+
+Patch 9.0.1523
+Problem: Some error messages are not marked for translation.
+Solution: Surround the messages in _(). (closes #12356)
+
+Patch 9.0.1524
+Problem: Passing -1 for bool is not always rejected.
+Solution: Check for error in a better way. (closes #12358)
+
+Patch 9.0.1525
+Problem: 'smoothscroll' does not always work properly.
+Solution: Do not reset w_skipcol after it was intentionally set. (Luuk van
+ Baal, closes #12360, closes #12199, closes #12323)
+
+Patch 9.0.1526
+Problem: Condition is always true.
+Solution: Remove unnecessary condition. (closes #12359)
+
+Patch 9.0.1527
+Problem: Crash when using negative value for term_cols.
+Solution: Check for invalid term_cols value. (Kenta Sato, closes #12362)
+
+Patch 9.0.1528
+Problem: Libsodium encryption is only used with "huge" features, even when
+ manually enabled through configure. (Tony Mechelynck)
+Solution: Remove the condition on FEAT_HUGE.
+
+Patch 9.0.1529
+Problem: Code style test doesn't check for space after "if".
+Solution: Add a test for space.
+
+Patch 9.0.1530
+Problem: Cursor moves to wrong line when 'foldmethod' is "diff". (Rick
+ Howe)
+Solution: Adjust logic for scrolling. (Luuk van Baal, closes #12364,
+ closes #12218)
+
+Patch 9.0.1531
+Problem: Crash when register contents ends up being invalid.
+Solution: Check "y_array" is not NULL.
+
+Patch 9.0.1532
+Problem: Crash when expanding "~" in substitute causes very long text.
+Solution: Limit the text length to MAXCOL.
+
+Patch 9.0.1533
+Problem: Test for 'smoothscroll' is ineffective.
+Solution: Change the order of testing "zb" and "zt". (Luuk van Baal,
+ closes #12366)
+
+Patch 9.0.1534
+Problem: Test for expanding "~" in substitute takes too long.
+Solution: Disable the test for now.
+
+Patch 9.0.1535
+Problem: Test commented out in a wrong way.
+Solution: Use legacy script comment character.
+
+Patch 9.0.1536
+Problem: CI: sound dummy stopped working.
+Solution: Temporarily stop using sound dummy.
+
+Patch 9.0.1537
+Problem: Message for opening the cmdline window is not translated.
+Solution: Add gettext() and scan the defaults script for text to be
+ translated. (closes #12371)
+
+Patch 9.0.1538
+Problem: :wqall does not trigger ExitPre. (Bart Libert)
+Solution: Move preparations for :qall to a common function. (closes #12374)
+
+Patch 9.0.1539
+Problem: Typst filetype is not recognized.
+Solution: Distinguish between sql and typst. (Gaetan Lepage, closes #12363)
+
+Patch 9.0.1540
+Problem: reverse() on string doesn't work in compiled function.
+Solution: Accept string in argument type check. (Yegappan Lakshmanan,
+ closes #12377)
+
+Patch 9.0.1541
+Problem: CI: sound dummy is disabled.
+Solution: Make sound dummy work again. (closes #12380)
+
+Patch 9.0.1542
+Problem: Line not fully displayed if it doesn't fit in the screen.
+Solution: Do not reset s_skipcol if not needed. (Luuk van Baal,
+ closes #12376)
+
+Patch 9.0.1543
+Problem: Display errors when making topline shorter and 'smoothscroll' is
+ set.
+Solution: Reset w_skipcol when the topline becomes shorter than its current
+ value. (Luuk van Baal, closes #12367)
+
+Patch 9.0.1544
+Problem: Recent glibc marks sigset() as a deprecated.
+Solution: Use sigaction() in mch_signal() if possible. (Ozaki Kiichi,
+ closes #12373)
+
+Patch 9.0.1545
+Problem: Text not scrolled when cursor moved with "g0" and "h".
+Solution: Adjust w_skipcol when needed. (Luuk van Baal, closes #12387)
+
+Patch 9.0.1546
+Problem: Some commands for opening a file don't use 'switchbuf'.
+Solution: Use 'switchbuf' for more commands. (Yegappan Lakshmanan,
+ closes #12383, closes #12381)
+
+Patch 9.0.1547
+Problem: Coveralls workflow on CI is commented out.
+Solution: Remove the Coveralls workflow. (closes #12389)
+
+Patch 9.0.1548
+Problem: CI: check in sound-dummy module may throw an error.
+Solution: Check whether apt-cache can show the package description.
+ (Christian Brabandt, closes #12390)
+
+Patch 9.0.1549
+Problem: USD filetype is not recognized.
+Solution: Add patterns for USD filetype. (Colin Kennedy, closes #12370)
+
+Patch 9.0.1550
+Problem: In cmdline window S-Tab does not select previous completion.
+ (Maxim Kim)
+Solution: Add a mappint for S-Tab. (closes #12116)
+
+Patch 9.0.1551
+Problem: Position of marker for 'smoothscroll' not computed correctly.
+Solution: Take 'list' and other options into account. (Luuk van Baal,
+ closes #12393)
+
+Patch 9.0.1552
+Problem: CI: sound-dummy module is not installed.
+Solution: Invert using the result of the condition. (closes #12394)
+
+Patch 9.0.1553
+Problem: CI: using slightly outdated gcc version.
+Solution: Use "brew" to get a more recent gcc version. (closes #12391)
+
+Patch 9.0.1554
+Problem: Code for handling 'switchbuf' is repeated.
+Solution: Add a function to handle 'switchbuf'. (Yegappan Lakshmanan,
+ closes #12397)
+
+Patch 9.0.1555
+Problem: setcharsearch() does not clear last searched char properly.
+Solution: Do not accept lastc_bytelen smaller than one. (closes #12398)
+
+Patch 9.0.1556
+Problem: Vim9: error for missing "return" after "throw".
+Solution: Set had_return flag for "throw". (closes #12262)
+
+Patch 9.0.1557
+Problem: Test failures for unreachable code.
+Solution: Add a test override to ignore unreachable code.
+
+Patch 9.0.1558
+Problem: Wrong error for unreachable code after :throw.
+Solution: Adjust the error message.
+
+Patch 9.0.1559
+Problem: Function argument types not always checked and using v:none may
+ cause an error.
+Solution: Check argument types once the function type is known. Do not give
+ an error for using v:none as an argument. (closes #12200)
+
+Patch 9.0.1560
+Problem: Win32: When 'encoding' is set $PATH has duplicate entries.
+Solution: Only append the directory if it is not there yet. (Ken Takata,
+ closes #12400, closes #12372)
+
+Patch 9.0.1561
+Problem: Display wrong when moving cursor to above the top line and
+ 'smoothscroll' is set.
+Solution: Call adjust_skipcol() in more places and make it work better.
+ (Luuk van Baal, closes #12395)
+
+Patch 9.0.1562
+Problem: Mixing package managers is not a good idea.
+Solution: Install gcc 13 with apt-get. (closes #12405)
+
+Patch 9.0.1563
+Problem: GTK3: window manager resize hints are incomplete.
+Solution: Use NULL for second argument of gtk_window_set_geometry_hints().
+ (Kenny Stauffer closes #11055)
+
+Patch 9.0.1564
+Problem: Display moves up and down with 'incsearch' and 'smoothscroll'.
+Solution: Do not check if w_skipcol changed. (Luuk van Baal, closes #12410,
+ closes #12409)
+
+Patch 9.0.1565
+Problem: Json lines files are not recognized.
+Solution: Add a pattern to detect "jsonl" files. (issue #7520)
+
+Patch 9.0.1566
+Problem: Motif: GUI scrollbar test fails in 24 lines terminal.
+Solution: Skip the part of the test that fails for now.
+
+Patch 9.0.1567
+Problem: Profiler calculation may be wrong on 32 bit builds.
+Solution: Use 64 bit variable if possible. (Isao Sato, closes #12412)
+
+Patch 9.0.1568
+Problem: With 'smoothscroll' cursor may move below botline.
+Solution: Call redraw_later() if needed, Compute cursor row with adjusted
+ condition. (Luuk van Baal, closes #12415)
+
+Patch 9.0.1569
+Problem: Cannot use "this.member" in lambda in class method.
+Solution: Adjust check for reserved keyword. (Hirohito Higashi,
+ closes #12416, closes #12076, closes #12336)
+
+Patch 9.0.1570
+Problem: Some tests are slow.
+Solution: Make a few test cases faster.
+
+Patch 9.0.1571
+Problem: RedrawingDisabled not used consistently.
+Solution: Avoid RedrawingDisabled going negative. Set RedrawingDisabled in
+ win_split_ins(). (closes #11961)
+
+Patch 9.0.1572
+Problem: Error messages are not translated.
+Solution: Add _().
+
+Patch 9.0.1573
+Problem: Error for function name has wrong line number.
+Solution: Set the line number before giving the error.
+
+Patch 9.0.1574
+Problem: MS-Windows: list of translation input files incomplete.
+Solution: Move the list of files to a common file. (closes #12426)
+
+Patch 9.0.1575
+Problem: "file N of M" message is not translated.
+Solution: Make argument count message translatable. (close #12429)
+
+Patch 9.0.1576
+Problem: Users may not know what to do with an internal error.
+Solution: Add a translated message with instructions.
+
+Patch 9.0.1577
+Problem: MS-Windows: context menu translations may be wrong.
+Solution: Set the encoding before using gettext(). (Ken Takata,
+ closes #12441, closes #12431)
+
+Patch 9.0.1578
+Problem: SpellCap highlight not always updated when needed.
+Solution: Handle updating line below closed fold and other situations where
+ only part of the window is redrawn. (Luuk van Baal, closes #12428,
+ closes #12420)
+
+Patch 9.0.1579
+Problem: Some error messages are not translated.
+Solution: Add the N_() marker on messages. (closes #12427)
+
+Patch 9.0.1580
+Problem: CI: indent test hangs on FreeBSD.
+Solution: Set 'nomore' when running the indent tests. (Ozaki Kiichi,
+ closes #12446)
+
+Patch 9.0.1581
+Problem: Translation does not work for plural argument.
+Solution: Use PLURAL_MSG() for errors and with xgettext. (closes #12443)
+
+Patch 9.0.1582
+Problem: :stopinsert may not work in a popup close handler. (Ben Jackson)
+Solution: Restore stop_insert_mode when appropriate. (closes #12452,
+ closes #12434)
+
+Patch 9.0.1583
+Problem: Get E304 when using 'cryptmethod' "xchacha20v2". (Steve Mynott)
+Solution: Add 4th crypt method to block zero ID check. Avoid syncing a swap
+ file before reading the file. (closes #12433)
+
+Patch 9.0.1584
+Problem: Not all meson files are recognized.
+Solution: Add "meson.options". (Liam Beguin, closes #12444)
+
+Patch 9.0.1585
+Problem: Weird use of static variables for spell checking.
+Solution: Move the variables to a structure and pass them from win_update()
+ to win_line(). (Luuk van Baal, closes #12448)
+
+Patch 9.0.1586
+Problem: Checking translations gives an error for using two messages with
+ ngettext() that differ in "%" items.
+Solution: Adjust the check script to tolerate omitting one "%" item.
+
+Patch 9.0.1587
+Problem: Corn config files are not recognized.
+Solution: Add a pattern for Corn config files. (Jake Stanger, closes #12449)
+
+Patch 9.0.1588
+Problem: Incsearch not triggered when pasting clipboard register on the
+ command line.
+Solution: Also set "literally" when using a clipboard register. (Ken Takata,
+ closes #12460)
+
+Patch 9.0.1589
+Problem: Filetype test contains too many special characters.
+Solution: Use Vim9 syntax for a few things.
+
+Patch 9.0.1590
+Problem: Filetype test has trailing white space.
+Solution: Remove trailing white space.
+
+Patch 9.0.1591
+Problem: Some "gomod" files are not recognized.
+Solution: Check for "go.mod" file name before checking out the contents.
+ (Omar El Halabi, closes #12462)
+
+Patch 9.0.1592
+Problem: Not all timer tests are marked as flaky.
+Solution: Set the flaky flag for all timer tests. (closes #12355)
+
+Patch 9.0.1593
+Problem: MS-Windows: assert error when compiled with debug mode.
+Solution: Adjust arguments to setvbuf(). (Ken Takata, closes #12467)
+
+Patch 9.0.1594
+Problem: Some internal error messages are translated.
+Solution: Consistently do not translate internal error messages.
+ (closes #12459)
+
+Patch 9.0.1595
+Problem: Line pointer becomes invalid when using spell checking.
+Solution: Call ml_get() at the right places. (Luuk van Baal, closes #12456)
+
+Patch 9.0.1596
+Problem: :registers command does not work in sandbox.
+Solution: Add flag to the command. (closes #12473)
+
+Patch 9.0.1597
+Problem: Cursor ends up below the window after a put.
+Solution: Mark w_crow and w_botline invalid when changing the cursor line.
+ (closes #12465)
+
+Patch 9.0.1598
+Problem: screenchar(), screenchars() and screenstring() do not work
+ properly when 'encoding' is set to a double-byte encoding.
+Solution: Fix the way the bytes of the characters are obtained.
+ (issue #12469)
+
+Patch 9.0.1599
+Problem: Cursor not adjusted when near top or bottom of window and
+ 'splitkeep' is not "cursor".
+Solution: Move boundary checks to outer cursor move functions, inner
+ functions should only return valid cursor positions. (Luuk van
+ Baal, closes #12480)
+
+Patch 9.0.1600
+Problem: screenpos() does not take w_skipcol into account.
+Solution: Subtract w_skipcol from column. (closes #12486, closes #12476)
+
+Patch 9.0.1601
+Problem: Filetype detection fails for *.conf file without comments.
+ (Dmitrii Tcyganok)
+Solution: Use "conf" filetype as a fallback for an empty .conf file.
+ (closes #12487, closes #12483)
+
+Patch 9.0.1602
+Problem: Stray character is visible if 'smoothscroll' marker is displayed
+ on top of a double-wide character.
+Solution: When overwriting a double-width character with the 'smoothscroll'
+ marker clear the second half. (closes #12469)
+
+Patch 9.0.1603
+Problem: Display wrong when scrolling multiple lines with 'smoothscroll'
+ set.
+Solution: Redraw when w_skipcol changed. (closes #12477, closes #12468)
+
+Patch 9.0.1604
+Problem: Errors from the codestyle test are a bit confusing.
+Solution: Use assert_report() with a clearer message. Avoid a warning for
+ an existing swap file.
+
+Patch 9.0.1605
+Problem: Crash when calling method on super in child constructor. (Israel
+ Chauca Fuentes)
+Solution: Clear the type list. (Ernie Rael, closes #12489, closes #12471)
+
+Patch 9.0.1606
+Problem: Using freed memory when 'foldcolumn' is set.
+Solution: Save extra pointer to free it later. (closes #12492)
+
+Patch 9.0.1607
+Problem: screenpos() returns wrong row with diff filler lines.
+Solution: Only add filler lines when appropriate. Also don't add the
+ 'smoothscroll' marker when w_skipcol is zero. (closes #12485,
+ closes #12484)
+
+Patch 9.0.1608
+Problem: update_topline() is called twice.
+Solution: Do not call update_topline() before curs_columns(). (Luuk van
+ Baal, closes #12495)
+
+Patch 9.0.1609
+Problem: Crash when an object indirectly references itself.
+Solution: Avoid clearing an object while it is already being cleared.
+ (closes #12494)
+
+Patch 9.0.1610
+Problem: Display is wrong when 'smoothscroll' is set and scrolling multiple
+ lines.
+Solution: Redraw with UPD_NOT_VALID when "skipcol" is or was set.
+ (closes #12490, closes #12468)
+
+Patch 9.0.1611
+Problem: v:maxcol can be changed in a :for loop.
+Solution: Check for read-only loop variable. (closes #12470)
+
+Patch 9.0.1612
+Problem: "skipcol" not reset when using multi-byte characters.
+Solution: Compare with w_virtcol instead of w_cursor.col. (closes #12457)
+
+Patch 9.0.1613
+Problem: Some make output gets picked up by 'errorformat'.
+Solution: Ignore make output by default. (Gregory Anders, closes #12481)
+
+Patch 9.0.1614
+Problem: strlen() called too often for :spellrepall.
+Solution: Store the result in a variable. (closes #12497)
+
+Patch 9.0.1615
+Problem: URL shortcut files are not recognized.
+Solution: Add a pattern for URL shortcut files. (closes #12474)
+
+Patch 9.0.1616
+Problem: Quickfix text field is truncated.
+Solution: Fix output of text field after pattern field in quickfix buffer.
+ (Shane Harper, closes #12498)
+
+Patch 9.0.1617
+Problem: charidx() and utf16idx() result is not consistent with byteidx().
+Solution: When the index is equal to the length of the text return the
+ lenght of the text instead of -1. (Yegappan Lakshmanan,
+ closes #12503)
+
+Patch 9.0.1618
+Problem: Trace32 files are not recognized.
+Solution: Add patterns for the t32 filetype. (Christoph Sax, closes #12505)
+
+Patch 9.0.1619
+Problem: The focus gained/lost escape sequences cause trouble for a
+ terminal where Vim does not expect them.
+Solution: Always recognize the codes for focus gained/lost. (closes #12499)
+
+Patch 9.0.1620
+Problem: Nix files are not recognized from the hashbang line.
+Solution: Add a hashbang check. (issue #12507)
+
+Patch 9.0.1621
+Problem: FILETYPE_FILE is defined to the same value multiple times. Same
+ for a few similar macros.
+Solution: Define FILETYPE_FILE and others in feature.h only
+
+Patch 9.0.1622
+Problem: Filetype name t32 is a bit obscure.
+Solution: Rename t32 to trace32. (Christoph Sax, closes #12512)
+
+Patch 9.0.1623
+Problem: The program to filetype translation is not exported.
+Solution: Export Exe2filetype().
+
+Patch 9.0.1624
+Problem: Crash when calling object constructor from legacy script. (Israel
+ Chauca Fuentes)
+Solution: Pass a pointer for "ufunc". (closes #12502)
+
+Patch 9.0.1625
+Problem: "super" is not considered a reserved name.
+Solution: Add "super" to the list of reserved names. (closes #12515)
+
+Patch 9.0.1626
+Problem: Visual area not shown when using 'showbreak' and start of line is
+ not visible. (Jaehwang Jung)
+Solution: Adjust "fromcol" for the space taken by 'showbreak'.
+ (closes #12514)
+
+Patch 9.0.1627
+Problem: No generic mechanism to test syntax plugins.
+Solution: Add a syntax plugin test mechanism, using screendumps. Add a
+ simple test for "c".
+
+Patch 9.0.1628
+Problem: Syntax tests fail on FreeBSD.
+Solution: Pass the Vim executable path with VIMPROG. (Ken Takata,
+ closes #12535) Adjust the paths.
+
+Patch 9.0.1629
+Problem: Having utf16idx() rounding up is inconvenient.
+Solution: Make utf16idx() round down. (Yegappan Lakshmanan, closes #12523)
+
+Patch 9.0.1630
+Problem: "make clean" at the toplevel fails.
+Solution: Clean the indent and syntax directories in a sub-shell. (Ben
+ Jackson, closes #12536, closes #12526)
+
+Patch 9.0.1631
+Problem: Passing a wrong variable type to an option gives multiple errors.
+Solution: Bail out early on failure. (closes #12504)
+
+Patch 9.0.1632
+Problem: Not all cabal config files are recognized.
+Solution: Add a couple of patterns. (Marcin Szamotulski, closes #12463)
+
+Patch 9.0.1633
+Problem: Duplicate code for converting float to string.
+Solution: Use tv_get_string(). (closes #12521)
+
+Patch 9.0.1634
+Problem: Message is cleared when removing mode message (Gary Johnson).
+Solution: Do not clear the command line after displaying a message.
+
+Patch 9.0.1635
+Problem: Error message is cleared when removing mode message.
+Solution: Also reset flags when the message is further down.
+
+Patch 9.0.1636
+Problem: Expanding a pattern interferes with command line completion.
+Solution: Set the file index only when appropriate. (closes #12519)
+
+Patch 9.0.1637
+Problem: Compiler warning for uninitialized variable.
+Solution: Move the variable to an inner block and initialize it. (Christian
+ Brabandt, closes #12549)
+
+Patch 9.0.1638
+Problem: crypt tests hang and cause memory errors
+Solution: Move variable to start of function.
+
+Patch 9.0.1639
+Problem: Build failure without the crypt feature.
+Solution: Adjust #ifdefs
+
+Patch 9.0.1640
+Problem: Compiler warning for unused variables without the crypt feature.
+Solution: Adjust #ifdefs
+
+Patch 9.0.1641
+Problem: The log file does not give information about window sizes.
+Solution: Add a few log messages about obtaining the window size.
+
+Patch 9.0.1642
+Problem: Build failure with tiny features.
+Solution: Add #ifdef's.
+
+Patch 9.0.1643
+Problem: Filetype detection fails if file name ends in many '~'.
+Solution: Strip multiple '~' at the same time. (closes #12553)
+
+Patch 9.0.1644
+Problem: Not all filetype file name matches are tested.
+Solution: Add more file names to test with. (Jonas Strittmatter,
+ closes #12569)
+
+Patch 9.0.1645
+Problem: zserio files are not recognized.
+Solution: Add a pattern for zserio files. (Dominique Pellé,
+ closes #12544)
+
+Patch 9.0.1646
+Problem: CI: codecov may take a very long time to run.
+Solution: Add a timeout. (Philip Heiduck, closes #12559)
+
+Patch 9.0.1647
+Problem: Insufficient testing for syntax plugins.
+Solution: Add shell file examples. (Charles Campbell) Create a messages
+ file for easier debugging and reporting the test results.
+
+Patch 9.0.1648
+Problem: Result of syntax tests is hard to see.
+Solution: List the failed tests.
+
+Patch 9.0.1649
+Problem: Syntax test failure causes script to abort.
+Solution: Fix appending string to list.
+
+Patch 9.0.1650
+Problem: MS-Windows: default 'viewdir' may include read-only directory.
+Solution: Use $HOME instead of $VIM for 'viewdir' default. (closes #12119)
+
+Patch 9.0.1651
+Problem: Unclear why syntax test fails on Mac.
+Solution: Temporarily show the whole "messages" file.
+
+Patch 9.0.1652
+Problem: Unclear why syntax test fails on Mac.
+Solution: Echo v:errors when it's not empty.
+
+Patch 9.0.1653
+Problem: Amiga: default 'viewdir' may not work.
+Solution: Use "home:" instead of "$VIM". Add a test. (Christian Brabandt,
+ closes #12576)
+
+Patch 9.0.1654
+Problem: MS-Windows: test for default 'viewdir' fails.
+Solution: Escape the pattern.
+
+Patch 9.0.1655
+Problem: Syntax test fails when Vim window is not tall enough.
+Solution: Make sure each terminal window is closed.
+
+Patch 9.0.1656
+Problem: Syntax test fails when detected shell type differs.
+Solution: Avoid using "/bin/sh", it depends on the system. Add a check that
+ the shell type detection is correct.
+
+Patch 9.0.1657
+Problem: One more syntax test depends on the system.
+Solution: Use "dash" instead of "sh".
+
+Patch 9.0.1658
+Problem: Autoload files for "zig" are not installed.
+Solution: Add install and uninstall rules in the makefile. (Christian
+ Brabandt, closes #12577, closes #12567)
+
+Patch 9.0.1659
+Problem: Termdebug: default highlight cleared when changing colorscheme.
+Solution: Use a ColorScheme autocommand. (Christian Brabandt, closes #12566,
+ closes #12555)
+
+Patch 9.0.1660
+Problem: Error for using matchfuzzy() in Vim9 script returning a list of
+ dicts.
+Solution: Make return type of matchfuzzy() list<any>. (Yegappan Lakshmanan,
+ closes #12574)
+
+Patch 9.0.1661
+Problem: BUCK files are not recognized.
+Solution: Recognize BUCK files as "bzl". (Son Luong Ngoc, closes #12564)
+
+Patch 9.0.1662
+Problem: Crash when using a class member twice. (Christian J. Robinson)
+Solution: Make a copy of the value.
+
+Patch 9.0.1663
+Problem: Termdebug on MS-Windows: some file names are not recognized.
+Solution: Do not always change and
. (Christian Brabandt,
+ closes #12565, closes #12560, closes #12550)
+
+Patch 9.0.1664
+Problem: Divide by zero when scrolling with 'smoothscroll' set.
+Solution: Avoid using a negative width. (closes #12540, closes #12528)
+
+Patch 9.0.1665
+Problem: Empty CmdlineEnter autocommand causes errors in Ex mode.
+Solution: Save and restore ex_pressedreturn. (Christian Brabandt,
+ closes # 12581, closes #12578)
+
+Patch 9.0.1666
+Problem: Compiler may warn for uninitialized variable.
+Solution: Initialize this_props_len. (Christian Brabandt, closes #12599)
+
+Patch 9.0.1667
+Problem: Regression test doesn't fail when fix is reverted.
+Solution: Add "n" to 'cpoptions' instead of using :winsize. (closes #12587,
+ issue #12528)
+
+Patch 9.0.1668
+Problem: PEM files are not recognized.
+Solution: Add patterns to match PEM files. (closes #12582)
+
+Patch 9.0.1669
+Problem: Crash syncing swapfile in new buffer when using sodium crypt.
+ (James McCoy)
+Solution: Add checks for sodium encryption. (Christian Brabandt,
+ closes #12591, closes #12585)
+
+Patch 9.0.1670
+Problem: Resetting local option to global value is inconsistent.
+Solution: Handle "<" specifically for 'scrolloff' and 'sidescrolloff'.
+ (closes #12594)
+
+Patch 9.0.1671
+Problem: Termdebug: error with more than 99 breakpoints.
+Solution: Use a different sign for breakpoint 100 and over. (closes #12589,
+ closes #12588)
+
+Patch 9.0.1672
+Problem: Tabline highlight wrong after truncated double width label.
+Solution: Fill up half a double width character later. (closes #12614)
+
+Patch 9.0.1673
+Problem: Cannot produce a status 418 or 503 message.
+Solution: Add err_teapot().
+
+Patch 9.0.1674
+Problem: Help for builtin functions is not sorted properly.
+Solution: Put err_teapot() help in the right position.
+
+Patch 9.0.1675
+Problem: Test may run into timeout when using valgrind.
+Solution: Use a longer timeout when using valgrind.
+
+Patch 9.0.1676
+Problem: Warning for buffer in use when exiting early.
+Solution: Change file names to be able to see what buffer is in use when
+ exiting.
+
+Patch 9.0.1677
+Problem: Typo in syntax test input file.
+Solution: Fix the typo and the expected dump files. (THARAK HEGDE,
+ closes #12635)
+
+Patch 9.0.1678
+Problem: Blade files are not recognized.
+Solution: Add a pattern for Blade files. (closes #12650)
+
+Patch 9.0.1679
+Problem: Tests may leave leftover files around
+Solution: Clean up tests and remove files
+
+Patch 9.0.1680
+Problem: sodium test fails in Github CI
+Solution: Catch sodium_mlock() errors and do not error out
+
+Patch 9.0.1681
+Problem: Build Failure with Perl 5.38
+Solution: Fix Build Failure
+
+Patch 9.0.1682
+Problem: crypt: sodium encryption is not portable
+Solution: use little-endian byte order for sodium encrypted files
+
+Patch 9.0.1683
+Problem: need runtime files updated
+Solution: merge various github PRs
+
+Patch 9.0.1684
+Problem: libvterm slightly outdated
+Solution: Update libvterm from rev 818 to rev 839
+
+Patch 9.0.1685
+Problem: Python 3.11 interface throws deprecation warnings
+Solution: ignore those warnings for gcc and clang
+
+Patch 9.0.1686
+Problem: undotree() only works for the current buffer
+Solution: Add an optional "buffer number" parameter to undotree(). If
+ omitted, use the current buffer for backwards compatibility.
+
+Patch 9.0.1687
+Problem: mapset() not properly handling script ID
+Solution: replace_termcodes() may accept a script ID
+
+Patch 9.0.1688
+Problem: cannot store custom data in quickfix list
+Solution: add `user_data` field for the quickfix list
+
+Patch 9.0.1689
+Problem: python 3.12 produces warnings and fails test
+Solution: Make use of raw strings in python3 tests
+
+Patch 9.0.1690
+Problem: popup_create() not aborting on errors
+Solution: check for errors in arguments given and abort if an error
+ occurred
+
+Patch 9.0.1691
+Problem: wrong viewport restored for incsearch and smoothscroll
+Solution: Save and restore skipcol as well
+
+Patch 9.0.1692
+Problem: Android not handling AI_V4MAPPED ai_flag
+Solution: don't set AI_V4MAPPED flag when on Android, since
+ Android's getaddrinfo returns EAI_BADFLAGS if ai_flags
+ contains it
+
+Patch 9.0.1693
+Problem: Ctrl-Q not handled like Ctrl-V in replace mode
+Solution: Handle Ctrl-Q like Ctrl-V
+
+Patch 9.0.1694
+Problem: wrong mapping applied when replaying a char search
+Solution: Store a NOP after the ESC
+
+Patch 9.0.1695
+Problem: Crash with overlong textprop above
+Solution: Consider only positive padding
+
+Patch 9.0.1696
+Problem: sodium_mlock may still fail in CI
+Solution: Catch E1230 in testscript and skip test
+
+Patch 9.0.1697
+Problem: incsearch test not sufficient (after 9.0.1691)
+Solution: add an additional test
+
+Patch 9.0.1698
+Problem: Test_map_restore_sid fails in GUI
+Solution: Feed an unsimplified Ctrl-B
+
+Patch 9.0.1699
+Problem: compile warning for xdiff/xutils on MS-Windows
+Solution: add explicit type cast from size_t to long
+
+Patch 9.0.1700
+Problem: Cannot compile with dynamic perl < 5.38 (after 9.0.1681)
+Solution: Fix if_perl/dyn from perl 5.32 to 5.38
+
+Patch 9.0.1701
+Problem: vim9 crash when class member overridden
+Solution: Use method_count field instead
+
+Patch 9.0.1702
+Problem: Undo test is flaky.
+Solution: Apply filter and change time to "1 second ago" in both dumps.
+
+Patch 9.0.1703
+Problem: Vim9 Calling a method in an extended class fails
+Solution: use method index directly
+
+Patch 9.0.1704
+Problem: Cannot use positional arguments for printf()
+Solution: Support positional arguments in string formatting
+
+Patch 9.0.1705
+Problem: cursor position wrong when clicking on an unprintable char
+Solution: Don't update prev_ptr when wlv.n_extra is not zero.
+
+Patch 9.0.1706
+Problem: typos in the xxd manpage
+Solution: Fix typos and formatting
+
+Patch 9.0.1707
+Problem: Cannot wrap around in popup_filter_menu()
+Solution: Allow to wrap around by default
+
+Patch 9.0.1708
+Problem: getcompletion() failes for user-defined commands
+Solution: set context for completion function
+
+Patch 9.0.1709
+Problem: dynamic build with python 3.12 breaks
+Solution: if_python3.c: Fix building dynamic Python3 interpreter
+
+Patch 9.0.1710
+Problem: sidescrolloff and scrolloff options work slightly
+ different than other global-local options
+Solution: Make it behave consistent for all global-local options
+
+Patch 9.0.1711
+Problem: dead code in charset.c
+Solution: remove it
+
+Patch 9.0.1712
+Problem: missing null check in object_clear()
+Solution: Add null check of cl
+
+Patch 9.0.1713
+Problem: Github CI fails to load snd-dummy kernel module
+Solution: Make installation of linux-modules-extra optional
+
+Patch 9.0.1714
+Problem: getcompletion() "cmdline" fails after :autocmd
+Solution: Use set_cmd_context() instead of set_one_cmd_context().
+
+Patch 9.0.1715
+Problem: duplicate test in message_test.c
+Solution: Remove duplicate test and make functions static
+
+Patch 9.0.1716
+Problem: Windows build with python 3.12 and clang fails
+Solution: Remove the PyBool_Type function pointer for python 3.12
+
+Patch 9.0.1717
+Problem: virtcol2col returns last byte of a multi-byte char
+Solution: Make it return the first byte for a multi-byte char
+
+Patch 9.0.1718
+Problem: dict-completion does not respect region
+Solution: respect selected region in dict completion
+
+Patch 9.0.1719
+Problem: if_lua: crash for Lua functions invoked via Vim callbacks
+Solution: Use Lua registry rather than upvalues for udata cache
+
+Patch 9.0.1720
+Problem: Vim9 class using wrong index for overridden method
+Solution: Use correct index for overridden method
+
+Patch 9.0.1721
+Problem: Build failure on Windows with dynamic lua (after 9.0.1719)
+Solution: move definition further down in if_lua
+
+Patch 9.0.1722
+Problem: wrong error messages when passing wrong types to count()
+Solution: fix it
+
+Patch 9.0.1723
+Problem: Fix regression in {func} argument of reduce()
+Solution: pass function name as string again
+
+Patch 9.0.1724
+Problem: vim9class constructor argument type checking bug
+Solution: fix it
+
+Patch 9.0.1725
+Problem: Wrong cursor position when clicking after concealed text
+ with 'virtualedit'.
+Solution: Store virtual columns in ScreenCols[] instead of text
+ columns, and always use coladvance() when clicking.
+
+Patch 9.0.1726
+Problem: incorrect heights in win_size_restore()
+Solution: avoid restoring incorrect heights in win_size_restore()
+
+Patch 9.0.1727
+Problem: minor problems with the teapot()
+Solution: remove the null check, update documentation
+
+Patch 9.0.1728
+Problem: missing winid argument for virtcol()
+Solution: Add a {winid} argument to virtcol()
+
+Patch 9.0.1729
+Problem: screenpos() wrong result with w_skipcol and cpoptions+=n
+Solution: Use adjust_plines_for_skipcol() instead of subtracting
+ w_skipcol.
+
+Patch 9.0.1730
+Problem: passing multiple patterns to runtime not working
+Solution: prepend prefix to each argument separately
+
+Patch 9.0.1731
+Problem: blockwise Visual highlight not working with virtual text
+Solution: Reset the correct variable at the end of virtual selection and
+ Check for double-width char inside virtual text.
+
+Patch 9.0.1732
+Problem: vimexpr: shadowing variable
+Solution: Rename local variable
+
+Patch 9.0.1733
+Problem: CI: cannot cache linux-modules-extra
+Solution: Enable caching and reduce failed downloads
+
+Patch 9.0.1734
+Problem: runtime completion fails for multiple args
+Solution: Make it work
+
+Patch 9.0.1735
+Problem: Rename completion specific findex var
+Solution: Move "findex" static variable to xp_selected in expand_T
+
+Patch 9.0.1736
+Problem: Github Actions times out after 20 minutes
+Solution: Increase the timeout to 25 minutes
+
+Patch 9.0.1737
+Problem: Calling a base class method through an extended class fails
+Solution: Create lookup table for member index in the interface to
+ to the member class implementing the interface
+
+Patch 9.0.1738
+Problem: Duplicate code to reverse a string
+Solution: Move reverse_text() to strings.c and remove string_reverse().
+
+Patch 9.0.1739
+Problem: leftover files in libvterm
+Solution: Fix cleaning of libvterm directory
+
+Patch 9.0.1740
+Problem: segfault when reading invalid viminfo file
+Solution: Check the expected type in the viminfo file
+
+Patch 9.0.1741
+Problem: No type checking in interfaces
+Solution: Implement member type check in vim9 interfaces
+
+Patch 9.0.1742
+Problem: Wrong curswant when clicking and the second cell of a
+ double-width char.
+Solution: Don't copy virtcol of the first char to the second one.
+
+Patch 9.0.1743
+Problem: Parameter of gui_gtk:gui_mch_browse incorrectly marked as
+ UNUSED.
+Solution: Remove UNUSED flag.
+
+Patch 9.0.1744
+Problem: Dead code in open_cmdwin()
+Solution: Remove it
+
+Patch 9.0.1745
+Problem: Missing test coverage for blockwise Visual highlight with
+ virtual that starts with a double-width char.
+Solution: Add a new virtual text to the test. Some other small fixes.
+
+Patch 9.0.1746
+Problem: vim9class compile error for char/char_u conversion
+Solution: Correctly cast to (char *)
+
+Patch 9.0.1747
+Problem: screenpos() may cause unnecessary redraw.
+Solution: Don't unnecessarily reset VALID_WROW flag.
+
+Patch 9.0.1748
+Problem: CI: cannot label issues automatically
+Solution: Create CI labeler
+
+Patch 9.0.1749
+Problem: Text property highlight doesn't override a sign highlight over
+ a tab character
+Solution: Let text_property override tab highlighting
+
+Patch 9.0.1750
+Problem: CI: fails because of changed error messages
+ (after: 9.0.1741)
+Solution: Adjust expected error messages
+
+Patch 9.0.1751
+Problem: CI: labeler configuration not found
+ (after 9.0.1748)
+Solution: set configuration path
+
+Patch 9.0.1752
+Problem: CI: Coveralls is no longer used
+Solution: Remove .coveralls.yml
+
+Patch 9.0.1753
+Problem: can't move to last non-blank char
+Solution: Make g<end> behave like that
+
+Patch 9.0.1754
+Problem: still ci breakage (after 9.0.1741)
+Solution: fix remaining issue
+
+Patch 9.0.1755
+Problem: CI still fails with sodium mlock error
+Solution: catch mlock failure
+
+Patch 9.0.1756
+Problem: failing cursorline sign test
+Solution: only reset char attr, if cursorline
+ option is not set
+
+Patch 9.0.1757
+Problem: ex_class() function is too long
+Solution: refactor it
+
+Patch 9.0.1758
+Problem: vim9 no class identifiers in stack dumps
+Solution: Prefix class members in stack traces with the class name
+ followed by a dot.
+
+Patch 9.0.1759
+Problem: Visual highlight not working with cursor at end of screen line
+ and 'showbreak'.
+Solution: Only update "vcol_prev" when drawing buffer text.
+
+Patch 9.0.1760
+Problem: vim9 class problem with new() constructor
+Solution: Don't allow a return type for the new() class constructor.
+
+Patch 9.0.1761
+Problem: g<kEnd> behaves different from g<end>
+Solution: Make g<kEnd> behave like g<End>
+
+Patch 9.0.1762
+Problem: Not able to get the virtual text property
+Solution: Make prop_list() return virtual text and alignment
+
+Patch 9.0.1763
+Problem: crash when passing invalid buffer to undotree()
+Solution: Use get_buf_arg() instead of tv_get_buf_from_arg().
+
+Patch 9.0.1764
+Problem: CI: label should not be set on all yml files
+Solution: only set it for specific yml files in .github
+
+Patch 9.0.1765
+Problem: Error when cross-compiling Vim
+Solution: use AC_CHECK_SIZEOF to find sizeof(wchar_t)
+
+Patch 9.0.1766
+Problem: Runtime: Missing QML support
+Solution: Add QML support to Vim
+
+Patch 9.0.1767
+Problem: '.-' no allowed in highlight group names
+Solution: Allow dot and hyphen characters in highlight group names
+
+Patch 9.0.1768
+Problem: Runtime: no support for bicep files
+Solution: Add filetype support for bicepparam
+
+Patch 9.0.1769
+Problem: executable() ignoring symlinks on Windows
+Solution: resolve reparse points
+
+Patch 9.0.1770
+Problem: lines disappear when modifying chars before virt text
+Solution: take virtual text property length into account
+
+Patch 9.0.1771
+Problem: regex: combining chars in collections not handled
+Solution: Check for following combining characters for NFA and BT engine
+
+Patch 9.0.1772
+Problem: Cursor is adjusted in window that did not change in size by
+ 'splitkeep'.
+Solution: Only check that cursor position is valid in a window that
+ has changed in size.
+
+Patch 9.0.1773
+Problem: cannot distinguish Forth and Fortran *.f files
+Solution: Add Filetype detection Code
+
+Patch 9.0.1774
+Problem: no support for custom cmdline completion
+Solution: Add new vimscript functions
+
+Patch 9.0.1775
+Problem: Wrong comparison in vim9type.c
+Solution: Change condition to false
+
+Patch 9.0.1776
+Problem: No support for stable Python 3 ABI
+Solution: Support Python 3 stable ABI
+
+Patch 9.0.1777
+Problem: patch 9.0.1771 causes problems
+Solution: revert it
+
+Patch 9.0.1778
+Problem: if_py_both: code-style issue
+Solution: add space
+
+Patch 9.0.1779
+Problem: Need more state() tests
+Solution: Add a few more tests for operater pending mode and register
+ yank command
+
+Patch 9.0.1780
+Problem: Vim9 type not defined during object creation
+Solution: Define type during object creation and not during class
+ definition, parse mulit-line member initializers, fix lock
+ initialization
+
+Patch 9.0.1781
+Problem: Problems when setting bin/paste option
+Solution: When setting binary/paste, remember that this also affects
+ depending options, so that :verbose set returns the right
+ location.
+
+Patch 9.0.1782
+Problem: prop_list() does not return text_padding_left
+Solution: Store and return the text_padding_left value for text
+ properties
+
+Patch 9.0.1783
+Problem: Wrong display with wrapping virtual text or unprintable chars,
+ 'showbreak' and 'smoothscroll'.
+Solution: Don't skip cells taken by 'showbreak' in screen lines before
+ "w_skipcol". Combined "n_skip" and "skip_cells".
+
+Patch 9.0.1784
+Problem: redundant else in pum_set_selected()
+Solution: Remove it
+
+Patch 9.0.1785
+Problem: wrong cursor position with 'showbreak' and lcs-eol
+Solution: Add size of 'showbreak' before when 'listchars' "eol" is used.
+ Also fix wrong cursor position with wrapping virtual text on
+ empty line and 'showbreak'.
+
+Patch 9.0.1786
+Problem: Vim9: need instanceof() function
+Solution: Implement instanceof() builtin
+
+Patch 9.0.1787
+Problem: Cannot build with latest luajit
+Solution: adjust sed regexp and don't expect '-' in version output
+
+Patch 9.0.1788
+Problem: C4090 warnings in strings.c
+Solution: Add type casts
+
+Patch 9.0.1789
+Problem: too early declaration of variable in pum_set_selected()
+Solution: Move declaration to where it is actually used
+
+Patch 9.0.1790
+Problem: The Content-Type header is an optional header that some LSP
+ servers struggle with and may crash when encountering it.
+Solution: Drop the Content-Type header from all messages, because we use
+ the default value anyway.
+
+Patch 9.0.1791
+Problem: No tests for the termdebug plugin
+Solution: Add some simple tests for the termdebug plugin
+
+Patch 9.0.1792
+Problem: Normal mode "gM", "gj", "gk" commands behave incorrectly with
+ virtual text.
+Solution: Use linetabsize() instead of linetabsize_str().
+
+Patch 9.0.1793
+Problem: obsolete macros in configure script
+Solution: Remove those and start moving to autoconf 2.71
+
+Patch 9.0.1794
+Problem: autoconf: not correctly detecing include dirs
+Solution: make use of python3 to generate includedirs
+
+Patch 9.0.1795
+Problem: Indentation issues
+Solution: Fix code indentation issues.
+
+Patch 9.0.1796
+Problem: Vim9 problems with null_objects
+Solution: Vim9 improve null_object usage
+
+Patch 9.0.1797
+Problem: Vimball/Visual Basic filetype detection conflict
+Solution: runtime(vb): Improve Vimball and Visual Basic detection logic
+
+Patch 9.0.1798
+Problem: The 'syntax' option has no completion.
+Solution: Add syntax option completion.
+
+Patch 9.0.1799
+Problem: Russian menu translation can be improved
+Solution: update the Russian menu files
+
+Patch 9.0.1800
+Problem: Cursor position still wrong with 'showbreak' and virtual text
+ after last character or 'listchars' "eol".
+Solution: Remove unnecessary w_wcol adjustment in curs_columns(). Also
+ fix first char of virtual text not shown at the start of a screen
+ line.
+
+Patch 9.0.1801
+Problem: Vim9 instanceof() fails in a def func
+Solution: allow Objects in compile time check
+
+Patch 9.0.1802
+Problem: Multiline regex with Visual selection fails when Visual
+ selection contains virtual text after last char.
+Solution: Only include virtual text after last char when getting full
+ line length.
+
+Patch 9.0.1803
+Problem: Cannot detect norg markup files
+Solution: Add norg markup language detection
+
+Patch 9.0.1804
+Problem: Vim9: no support for private object methods
+Solution: Add support for private object/class methods
+
+Patch 9.0.1805
+Problem: Vim9: problem compiling object method as function call arg
+Solution: After a object/class method call, remove the object/class from
+ the stack.
+
+Patch 9.0.1806
+Problem: Vim9: bogus error on export
+Solution: Don't error out when the export command is not executed
+
+Patch 9.0.1807
+Problem: runtime: crystal scripts not recognised
+Solution: Filetype detect Crystal scripts by shebang line
+
+Patch 9.0.1808
+Problem: termdebug: Typo in termdebug test
+Solution: fix the typos
+
+Patch 9.0.1809
+Problem: termdebug test flayk
+Solution: wait slightly longer
+
+Patch 9.0.1810
+Problem: camel-case spelling has issues with digits
+Solution: Improve the camCase spell checking by taking digits
+ and caps into account
+
+Patch 9.0.1811
+Problem: still some issues with term_debug test
+Solution: Use WaitForAssert()
+
+Patch 9.0.1812
+Problem: CI still fails with sodium_mlock error()
+Solution: Catch and ignore E1230 error in test_crypt
+
+Patch 9.0.1813
+Problem: 'linebreak' is incorrectly drawn after 'breakindent'.
+Solution: Don't include 'breakindent' size when already after it.
+
+Patch 9.0.1814
+Problem: Vim9 no error on duplicate object member var
+Solution: detect duplicate members and error out
+
+Patch 9.0.1815
+Problem: pango_coverage_unref() deprecated in pango > 1.51
+Solution: use g_object_unref() instead
+
+Patch 9.0.1816
+Problem: configure: sed uses non-portable regex
+Solution: use '*' modifier instead of '\?' in regex
+ for luajit version detection
+
+Patch 9.0.1817
+Problem: configure: using obsolete AC_HEADER_STDC
+Solution: Remove it and re-create configure
+
+Patch 9.0.1818
+Problem: dynamically linking perl is broken
+Solution: Fix all issues
+
+Patch 9.0.1819
+Problem: Github CI too complex
+Solution: CI: Tidy up matrix
+
+Patch 9.0.1820
+Problem: Rexx files may not be recognised
+Solution: Add shebang detection and improve disambiguation of *.cls
+ files
+
+Patch 9.0.1821
+Problem: Vim9 constructors are always static
+Solution: make the "static" keyword an error
+
+Patch 9.0.1822
+Problem: Vim9: no check for duplicate members in extended classes
+Solution: Check for duplicate members in extended classes.
+ Fix memory leak.
+
+Patch 9.0.1823
+Problem: Autoconf 2.69 too old
+Solution: Migrate to Autoconf 2.71
+
+Patch 9.0.1824
+Problem: Vim9: private members may be modifiable
+Solution: prevent modification for def function
+
+Patch 9.0.1825
+Problem: Wrong cursor position with virtual text before a whitespace
+ character and 'linebreak'.
+Solution: Always set "col_adj" to "size - 1" and apply 'linebreak' after
+ adding the size of 'breakindent' and 'showbreak'.
+
+Patch 9.0.1826
+Problem: keytrans() doesn't translate recorded key typed in a GUI
+Solution: Handle CSI like K_SPECIAL, like in mb_unescape()
+
+Patch 9.0.1827
+Problem: xxd: no color support
+Solution: Add color support using xxd -R
+
+Patch 9.0.1828
+Problem: Wrong cursor position with virtual text before double-width
+ char at window edge.
+Solution: Check for double-width char before adding virtual text size.
+
+Patch 9.0.1829
+Problem: Vim9 missing access-checks for private vars
+Solution: Use the proper check for private/readonly variable. Access
+ level for a member cannot be changed in a class implementing an
+ interface. Update the code indentation
+
+Patch 9.0.1830
+Problem: Vim9: crash when accessing a null object
+Solution: Check accessing a NULL object in def function
+
+Patch 9.0.1831
+Problem: Vim9: failing null test
+Solution: Use required public keyword
+
+Patch 9.0.1832
+Problem: xxd: reporting wrong version (after 9.0.1827)
+Solution: Update version string
+
+Patch 9.0.1833
+Problem: runtime files may execute code in current dir
+Solution: only execute, if not run from current directory
+
+Patch 9.0.1834
+Problem: Some problems with xxd coloring
+Solution: Fix the following problems:
+
+Patch 9.0.1835
+Problem: Perl interface has problems with load PL_current_context
+Solution: Fix Perl interface to load PL_current_context from library
+
+Patch 9.0.1836
+Problem: Wrong display with "above" virtual text and 'linebreak' or
+ 'breakindent' and 'showbreak'.
+Solution: Exclude size of "above" virtual text when calculating them.
+
+Patch 9.0.1837
+Problem: Vim9: class_member_type() can be optimized
+Solution: class_member_type() provides more information;
+ safe an additional alloc()/free()
+
+Patch 9.0.1838
+Problem: Vim9: Cannot modify class member vars from def function
+Solution: Add support for modifying class member variables from a def
+ function
+
+Patch 9.0.1839
+Problem: No Makefile rule to build cscope database
+Solution: Add rule
+
+Patch 9.0.1840
+Problem: use-after-free in do_ecmd
+Solution: Verify oldwin pointer after reset_VIsual()
+
+Patch 9.0.1841
+Problem: style: trailing whitespace in ex_cmds.c
+Solution: remove it
+
+Patch 9.0.1842
+Problem: Need more accurate profiling
+Solution: Improve profiling results
+
+Patch 9.0.1843
+Problem: xxd color test flaky
+Solution: Filter unneeded lines
+
+Patch 9.0.1844
+Problem: doc helptags may not be up to date
+Solution: Add CI jobs to verify helptags are updated
+
+Patch 9.0.1845
+Problem: xxd: Test_xxd_color start failing
+Solution: Revert changes to dump file
+
+Patch 9.0.1846
+Problem: crash in fullcommand
+Solution: Check for typeval correctly
+
+Patch 9.0.1847
+Problem: potential oob write in do_addsub()
+Solution: don't overflow buf2, check size in for loop()
+
+Patch 9.0.1848
+Problem: buffer-overflow in vim_regsub_both()
+Solution: Check remaining space
+
+Patch 9.0.1849
+Problem: CI error on different signedness
+Solution: cast unsigned to int
+
+Patch 9.0.1850
+Problem: Vim9: wrong line number where options set
+Solution: Set source line number earlier
+
+Patch 9.0.1851
+Problem: Virtual text at a column causes 'breakindent' and 'showbreak'
+ to be missing (after patch 9.0.1124).
+Solution: Add check for "tp_col" in another place where TP_FLAG_WRAP is
+ checked.
+
+Patch 9.0.1852
+Problem: i_CTRL-O does not reset Select Mode
+Solution: Reset select mode on CTRL-O in insert mode
+
+Patch 9.0.1853
+Problem: CI error on different signedness in regexp.c
+ (after patch 9.0.1848)
+Solution: Cast strlen() call to int
+
+Patch 9.0.1854
+Problem: test_crash1() fails on CI
+Solution: don't run Screendump test, verify that it doesn't crash
+ by running it through a shell command line, testing
+ the exit value and concatenating success cmd using '&&'
+
+Patch 9.0.1855
+Problem: mode() doesn't indicate command line for terminal
+Solution: make it return 'ct' for command-line from Terminal mode
+
+Patch 9.0.1856
+Problem: issues with formatting positional arguments
+Solution: fix them, add tests and documentation
+
+Patch 9.0.1857
+Problem: heap-use-after-free in is_qf_win()
+Solution: Check buffer is valid before accessing it
+
+Patch 9.0.1858
+Problem: heap use after free in ins_compl_get_exp()
+Solution: validate buffer before accessing it
+
+Patch 9.0.1859
+Problem: heap-use-after-free in bt_normal()
+Solution: check that buffer is still valid
+
+Patch 9.0.1860
+Problem: CI: test_crash1() is flaky
+Solution: Wait a bit longer
+
+Patch 9.0.1861
+Problem: xxd: issue when -R is specified several times
+Solution: Fix command line parsing
+
+Patch 9.0.1862
+Problem: Vim9 Garbage Collection issues
+Solution: Class members are garbage collected early leading to
+ use-after-free problems. Handle the garbage
+ collection of classes properly.
+
+Patch 9.0.1863
+Problem: wrong format specifiers in e_aptypes_is_null_str_nr
+Solution: Fix the wrong format specifier
+
+Patch 9.0.1864
+Problem: crash with bt_quickfix1_poc when cleaning up
+ and EXITFREE is defined
+Solution: Test if buffer is valid in a window, else close
+ window directly, don't try to access buffer properties
+
+Patch 9.0.1865
+Problem: Vim9: garbage collection may cause crash
+Solution: validate that class members typeval is not null
+
+Patch 9.0.1866
+Problem: Undo is synced after character find.
+Solution: Set no_u_sync when calling gotchars_nop().
+
+Patch 9.0.1867
+Problem: Vim9: access to interface statics possible
+Solution: Prevent direct access to interface statics
+
+Patch 9.0.1868
+Problem: test_crash still fails for circle ci
+Solution: give even more time to complete
+
+Patch 9.0.1869
+Problem: Coverity warns about unitialized var
+Solution: initialize it
+
+Patch 9.0.1870
+Problem: Vim9: disassamble does not show static
+Solution: Show static flag
+
+Patch 9.0.1871
+Problem: Github CI does not run i386 job
+Solution: Add a i386 architecture
+
+Patch 9.0.1872
+Problem: CI: test_crash() fails on CI
+Solution: Skip test on BSD
+
+Patch 9.0.1873
+Problem: heap-buffer-overflow in vim_regsub_both
+Solution: Disallow exchanging windows when textlock is active
+
+Patch 9.0.1874
+Problem: CI may fail in test_recover_empty_swap
+Solution: Set directory option
+
+Patch 9.0.1875
+Problem: Vim9: improve test for disassemble + static
+Solution: Add a Vim9 script disassemble test for an interface with
+ static members
+
+Patch 9.0.1876
+Problem: Vim9: parsing commands with newlines wrong
+Solution: Accept a '
' for parsing lists and command arguments
+
+Patch 9.0.1877
+Problem: missing test for patch 9.0.1873
+Solution: add a test trying to exchange windows
+
+Patch 9.0.1878
+Problem: tests running sh have problems
+Solution: Check that dash is installed
+
+Patch 9.0.1879
+Problem: Vim9: incorrect duplicate class member detection
+Solution: Incorrect duplicate class member detection when variable names
+ have the same prefix. Not able to access class member variables
+ using an object. Fix coding style issues
+
+Patch 9.0.1880
+Problem: Vim9: Need more tests for inheritance
+Solution: Add access tests and fixes.
+
+Patch 9.0.1881
+Problem: Test_crash fails on Mac
+Solution: Skip test on Mac
+
+Patch 9.0.1882
+Problem: Trailing white space in tests
+Solution: Delete it
+
+Patch 9.0.1883
+Problem: Vim9: Calling an interface method using a child object fails
+Solution: Search methods of parent class
+
+Patch 9.0.1884
+Problem: Wrong order of arguments for error messages
+Solution: Reverse order or arguments for e_aptypes_is_null_nr_str
+
+Patch 9.0.1885
+Problem: Vim9: no support for abstract methods
+Solution: Add support for defining abstract methods in an abstract class
+
+Patch 9.0.1886
+Problem: Various Typos
+Solution: Fix Typos
+
+Patch 9.0.1887
+Problem: Vim9: class members are accessible via object
+Solution: Disable class member variable access using an object
+
+Patch 9.0.1888
+Problem: Vim9: Problem trying to invoke class method
+Solution: Lookup the class method insider other classes
+
+Patch 9.0.1889
+Problem: Vim9 static tests fail
+Solution: Fix tests, make CI happy ;)
+
+Patch 9.0.1890
+Problem: Vim9: lookup code for class/object repaeated
+Solution: Refactor and make use of lookup functions
+
+Patch 9.0.1891
+Problem: No runtime support for Mojo
+Solution: Add basic filetype and syntax plugins
+
+Patch 9.0.1892
+Problem: CI: no FreeBSD 14 support
+Solution: Drop support for FreeBSD 12, add FreeBSD 14
+
+Patch 9.0.1893
+Problem: CI: strptime test fails on BSD14
+Solution: Skip the test
+
+Patch 9.0.1894
+Problem: CI: trailing white space in tests
+Solution: clean up the trailing white space
+
+Patch 9.0.1895
+Problem: Vim9: finding method/member is inefficient
+Solution: Use lookups
+
+Patch 9.0.1896
+Problem: "below" virtual text doesn't work with 'rightleft'.
+Solution: Use column from right border with 'rightleft'.
+
+Patch 9.0.1897
+Problem: Vim9: confusing error with .= in compiled functions
+Solution: Check in error condition, if .= was attempted and in that case
+ give a different error message.
+
+Patch 9.0.1898
+Problem: Vim9: restrict access to static vars and methods
+Solution: Class members are accesible only from the class where they are
+ defined.
+
+Patch 9.0.1899
+Problem: potential buffer overflow in PBYTE macro
+Solution: Check returned memline length
+
+Patch 9.0.1900
+Problem: Configure script uses non-portable == comparison
+Solution: Use the standard and portable "=" instead
+
+Patch 9.0.1901
+Problem: win32: not correctly freeing environment
+Solution: After we call GetEnvironmentStringsW, we should call
+ FreeEnvironmentStringsW
+
+Patch 9.0.1902
+Problem: Vim9: Coverity complains about dead code
+Solution: Copy only object methods from the super class
+ to a subclass when extending a class. Fix
+ Coverity warning.
+
+Patch 9.0.1903
+Problem: Github Actions fails because snd-dummy modules missing
+ in current runner images
+Solution: ignore modprobe error
+
+Patch 9.0.1904
+Problem: Cirrus-CI fails because we have used all credits
+Solution: Remove FreeBSD 13.1 and MacOS M1
+
+Patch 9.0.1905
+Problem: FEAT_FLOAT no longer defined
+Solution: Remove last existing FEAT_FLOAT ifdefs in
+ message_test
+
+Patch 9.0.1906
+Problem: Vim9: Interfaces should not support class methods and
+ variables
+Solution: Make sure interface follow the interface specification
+
+Patch 9.0.1907
+Problem: No support for liquidsoap filetypes
+Solution: Add liquidsoap filetype detection code
+
+Patch 9.0.1908
+Problem: undefined behaviour upper/lower function ptrs
+Solution: Fix UBSAN error in regexp and simplify upper/lowercase
+ modifier code
+
+Patch 9.0.1909
+Problem: Vim9: problem calling class method from other class
+Solution: Fix this problem, fix readonly object access, update error
+ messages.
+
+Patch 9.0.1910
+Problem: Mac OS X: missing sound support on older versions
+Solution: Check Macro MAC_OS_X_VERSION_MIN_REQUIRED
+
+Patch 9.0.1911
+Problem: Vim9: segfault with null object and instanceof()
+Solution: return early
+
+Patch 9.0.1912
+Problem: Cirrus-CI running out of credits
+Solution: disable Cirrus-CI for now
+
+Patch 9.0.1913
+Problem: if_python: undefined behaviour for function pointers
+Solution: Fix if_python undefined behavior for function pointer casts
+
+Patch 9.0.1914
+Problem: Vim9: few issues when accessing object members
+Solution: When calling an object method, check for null object.
+ Accessing a Dict object member doesn't work.
+
+Patch 9.0.1915
+Problem: r_CTRL-C works differently in visual mode
+Solution: Make r_CTRL-C behave consistent in visual mode
+ in terminal and Windows GUI
+
+Patch 9.0.1916
+Problem: Crash when allocating large terminal screen
+Solution: Don't allow values > 1000 for terminal
+ screen columns and rows
+
+Patch 9.0.1917
+Problem: undefined behaviour with python function pointer
+Solution: correctly cast function pointers from void
+
+Patch 9.0.1918
+Problem: No filetype detection for Authzed filetypes
+Solution: Detect the *.zed file extension as authzed filetype
+
+Patch 9.0.1919
+Problem: Wrong curswant when clicking on empty line or with vsplits.
+Solution: Don't check for ScreenCols[] before the start of the window
+ and handle empty line properly.
+
+Patch 9.0.1920
+Problem: Vim9: cannot write public var in nested object
+Solution: Write variable in nested read-only object reference.
+ Also test write fails.
+
+Patch 9.0.1921
+Problem: not possible to use the jumplist like a stack
+Solution: Add the 'jumpoptions' setting to make the jumplist
+ a stack.
+
+Patch 9.0.1922
+Problem: LSP server request message is misinterpreted as a response message
+Solution: Check that the message does not have the "message" field
+
+Patch 9.0.1923
+Problem: curswant wrong on click with 've' and 'wrap' set
+Solution: Add w_leftcol to mouse click column.
+
+Patch 9.0.1924
+Problem: LSP server message still wrongly handled (after 9.0.1922)
+Solution: Handle 'method' messages properly, don't discard them, add
+ tests.
+
+Patch 9.0.1925
+Problem: if_python: still undefined behaviour with function pointer
+Solution: fix remaining problems
+
+Patch 9.0.1926
+Problem: Vim9: not enough info in error message
+Solution: Add class name, change member to variable, quote names
+
+Patch 9.0.1927
+Problem: patch 1916 (fixed terminal size) not optimal
+Solution: Add defines to make it easier changeable later
+
+Patch 9.0.1928
+Problem: Vim9: constructor type checking bug
+Solution: Fix class constructor regression
+
+Patch 9.0.1929
+Problem: runtime tests fail with tiny vim
+Solution: check for tiny vim, run runtime tests in CI
+ even for tiny version
+
+Patch 9.0.1930
+Problem: compiler warnings with clang-17
+Solution: Fix function prototypes and function pointer
+
+Patch 9.0.1931
+Problem: make test_compilers fails on ubuntu
+Solution: set LC_ALL=C
+
+Patch 9.0.1932
+Problem: Vim9: error when using null object constructor
+Solution: Check for a null object only when calling an object method
+
+Patch 9.0.1933
+Problem: Can change the type of a v: variable using if_lua.
+Solution: Add additional handling of v: variables like :let.
+
+Patch 9.0.1934
+Problem: bwipe fails after switching window from aucmd_win.
+Solution: Decrement b_nwindows after switching back to aucmd_win.
+
+Patch 9.0.1935
+Problem: Vim9: not consistent error messages
+Solution: Make error messages more consistent. Use "variable" for
+ (object/class) member
+
+Patch 9.0.1936
+Problem: test: using wrong expected message in test_crypt
+Solution: make use of single quotes
+
+Patch 9.0.1937
+Problem: missing test for mouse click + 'virtedit'
+Solution: Add test for clicking after eol with 'virtualedit' and wrapped
+ line
+
+Patch 9.0.1938
+Problem: multispace wrong when scrolling horizontally
+Solution: Update position in "multispace" or "leadmultispace" also in
+ skipped chars. Reorder conditions to be more consistent.
+
+Patch 9.0.1939
+Problem: still a problem when processing LSP RPC requests
+Solution: When processing async LSP RPC requests, compare sequence
+ numbers only in response messages
+
+Patch 9.0.1940
+Problem: wrong upstream version in libvterm README
+Solution: correct version to 839
+
+Patch 9.0.1941
+Problem: Memory leak detected (after 9.0.1928)
+Solution: Free arg_objm in get_lambda_tv()
+
+Patch 9.0.1942
+Problem: Vim9: execution stack invalidated with null object
+Solution: Check for a null object before adjusting the execution stack
+
+Patch 9.0.1943
+Problem: CI not run with clang-17
+Solution: Update CI to use clang-17
+
+Patch 9.0.1944
+Problem: Vim9: function instruction pointer invalidated
+Solution: Use the funcref index instead of the instruction pointer
+
+Patch 9.0.1945
+Problem: Vim9: missing support for ro-vars in interface
+Solution: Support only read-only object variables in an interface,
+ add additional checks when parsing class definitions.
+
+Patch 9.0.1946
+Problem: filename expansion using ** in bash may fail
+Solution: Try to enable the globstar setting
+
+Patch 9.0.1947
+Problem: Bash Expansion test fails on Windows/MacOS
+Solution: Disable Test_glob_extended_bash for now
+
+Patch 9.0.1948
+Problem: Vim9: object variable "this." should only be used in
+ constructor
+Solution: Disallow to this in normal object methods (other than
+ constructors)
+
+Patch 9.0.1949
+Problem: Vim9: allows reserved keywords as members
+Solution: Disallow reserved keywords, disallow
+ duplicate object and class variables
+
+Patch 9.0.1950
+Problem: Vim9: error codes spread out
+Solution: group them together and reserve 100
+ more for future use
+
+Patch 9.0.1951
+Problem: Vim9: hard to debug vim9_class errors from CI
+Solution: Include the line number in assert_xxx() calls. Include the
+ entire error message in the tests. Fix the indentation in the
+ test file. Add tags for new error codes.
+
+Patch 9.0.1952
+Problem: Vim9: unused static field
+Solution: remove it and simplify code
+
+Patch 9.0.1953
+Problem: Misplaced comment in errors.h
+Solution: Move it up
+
+Patch 9.0.1954
+Problem: CI: change netrw label in labeller bot
+Solution: Rename it to 'plugin-netrw'
+
+Patch 9.0.1955
+Problem: Vim9: lockvar issues with objects/classes
+Solution: fix `get_lhs()` object/class access and avoid `SEGV`,
+ make error messages more accurate.
+
+Patch 9.0.1956
+Problem: Custom cmdline completion skips original cmdline when pressing
+ Ctrl-P at first match if completion function invokes glob().
+Solution: Move orig_save into struct expand_T.
+
+Patch 9.0.1957
+Problem: termcap options should change on keyprotocol setting
+Solution: Apply termcap entries when 'keyprotocol' changes
+
+Patch 9.0.1958
+Problem: cannot complete option values
+Solution: Add completion functions for several options
+
+Patch 9.0.1959
+Problem: Vim9: methods parameters and types are covariant
+Solution: Support contra-variant type check for object method arguments
+ (similar to Dart).
+
+Patch 9.0.1960
+Problem: Make CI checks more strict
+Solution: Add -Wstrict-prototypes -Wmissing-prototypes to CI,
+ fix uncovered problems
+
+Patch 9.0.1961
+Problem: Cmdline completion for 'listchars' fields doesn't include
+ "multispace" and "leadmultispace" (after 9.0.1958).
+Solution: Include "multispace" and "leadmultispace" in lcstab.
+
+Patch 9.0.1962
+Problem: No support for writing extended attributes
+Solution: Add extended attribute support for linux
+
+Patch 9.0.1963
+Problem: Configure script may not detect xattr correctly
+Solution: include sys/xattr instead of attr/xattr,
+ make Test_write_with_xattr_support() test
+ xattr feature correctly
+
+Patch 9.0.1964
+Problem: xattr support fails to build on MacOS X
+Solution: Disable xattr support for MacOS X
+
+Patch 9.0.1965
+Problem: wrong auto/configure script
+Solution: regenerate with autoconf 2.71
+
+Patch 9.0.1966
+Problem: configure prints stray 6 when checking libruby
+Solution: redirect stdout to dev/null
+
+Patch 9.0.1967
+Problem: xattr errors not translated
+Solution: mark for translation, consistently capitalize
+ first letter.
+
+Patch 9.0.1968
+Problem: cmdline completion should consider key option
+Solution: Disable cmdline completion for key option, slightly
+ refactor how P_NO_CMD_EXPAND is handled
+
+Patch 9.0.1969
+Problem: buffer-overflow in trunc_string()
+Solution: Add NULL at end of buffer
+
+Patch 9.0.1970
+Problem: win32: high-dpi support can be improved
+Solution: implement WM_GETDPISCALEDSIZE
+
+Patch 9.0.1971
+Problem: macOS: FEAT_SOUND guard too restrictive
+Solution: check for older macOS support properly
+
+Patch 9.0.1972
+Problem: win32: missing '**' expansion test (after v9.0.1947)
+Solution: Add test for MS-Windows
+
+Patch 9.0.1973
+Problem: Clean up cmdline option completion code
+Solution: Fix various minor problems
+
+Patch 9.0.1974
+Problem: vim9: using contra-variant type-checks (after v9.0.1959)
+Solution: Use invariant type checking instead
+
+Patch 9.0.1975
+Problem: xattr: permission-denied errors on write
+Solution: ignore those errors
+
+Patch 9.0.1976
+Problem: style: space before tab in optionstr.c
+Solution: remove the space
+
+Patch 9.0.1977
+Problem: Vim9: object members can change type
+Solution: Check type during assignment to object/class var
+
+Patch 9.0.1978
+Problem: No filetype detection for just files
+Solution: Detect just files (*.just, justfile, etc)
+
+Patch 9.0.1979
+Problem: Cirrus CI disabled
+Solution: re-enable Cirrus CI
+
+Patch 9.0.1980
+Problem: win32: issues with stable python ABI
+Solution: if_python3,win32: Fix Python3 stable ABI
+
+Patch 9.0.1981
+Problem: Cannot scroll up in diff mode with many filler lines and zero
+ 'scrolloff'.
+Solution: Invalidate w_cline_row before calling comp_botline().
+
+Patch 9.0.1982
+Problem: vim9: clean up from v9.0.1955
+Solution: Fix a few remaining issues, improve error message
+
+Patch 9.0.1983
+Problem: Scrolling non-current window using mouse is inconsistent
+ depending on 'scrollbind'/'scrolloff' and different from GUI
+ vertical scrollbar when 'cursorbind' is set.
+Solution: Don't move cursor in non-current windows for 'cursorbind' if
+ cursor in the current window didn't move.
+
+Patch 9.0.1984
+Problem: CI: Test_open_delay*() fails on FreeBSD 14
+Solution: Skip it on BSD
+
+Patch 9.0.1985
+Problem: CI: codecov is intrusive
+Solution: disable codecov comments
+
+Patch 9.0.1986
+Problem: Vim9: accepting type-annotations
+Solution: Reject type annotations outside of declarations.
+
+Patch 9.0.1987
+Problem: win32: font-size calculation can be improved
+Solution: calculate font size before the window size
+
+Patch 9.0.1988
+Problem: Vim9: potential use-after-free for class members
+Solution: Use the class-related grow array for storing the
+ member type instead of using a temporary type
+ list grow array
+
+Patch 9.0.1989
+Problem: Vim9: double error message given
+Solution: Only give second error message, if ther
+ wasn't one given before
+
+Patch 9.0.1990
+Problem: strange error number
+Solution: change error number,
+ add doc tag for E1507
+
+Patch 9.0.1991
+Problem: no cmdline completion for setting the font
+Solution: enable it on Win32 and GTK builds
+
+Patch 9.0.1992
+Problem: segfault in exmode when redrawing
+Solution: skip gui_scroll when exmode_active
+
+Patch 9.0.1993
+Problem: warning about unused function definition
+Solution: add ifdefs
+
+Patch 9.0.1994
+Problem: inconsistent feature description
+Solution: delete old mentioned feature sets small and big
+
+Patch 9.0.1995
+Problem: Invalid memory access when 'foldexpr' returns empty string.
+Solution: Check for NUL.
+
+Patch 9.0.1996
+Problem: Cannot build with python312
+Solution: Define wrapper types and functions for python 3.12
+
+Patch 9.0.1997
+Problem: Some unused code in move.c and string.c
+Solution: Remove it
+
+Patch 9.0.1998
+Problem: xxd: cannot reverse a bit dump
+Solution: implement reversing the bit dump using -b -r
+
+Patch 9.0.1999
+Problem: Vim9: some error messages can be improved
+Solution: Mention the defining class for variable access error message
+
+Patch 9.0.2000
+Problem: Vim9: use-after-free in deep call stack
+Solution: Get the objct pointer from execution stack
+
+Patch 9.0.2001
+Problem: Vim9: segfault with islocked()
+Solution: Check that the lval pointer is not null for objects and
+ class variables
+
+Patch 9.0.2002
+Problem: Vim9: need cleanup of class related interface code
+Solution: Remove the unused class variable and class method related code
+ for interfaces.
+
+Patch 9.0.2003
+Problem: xxd: compilation warning
+Solution: initialize variables
+
+Patch 9.0.2004
+Problem: Missing test file
+Solution: git-add the file to the repo
+
+Patch 9.0.2005
+Problem: partially revert patch v9.0.1997
+Solution: add a comment, to make clear it's not used
+
+Patch 9.0.2006
+Problem: Vim9: need more tests
+Solution: add additional disassembly tests
+
+Patch 9.0.2007
+Problem: Vim9: covariant parameter types allowed when assigning
+ functions
+Solution: Enforce invariant type check for arguments and return value
+ when assigning a funcref
+
+Patch 9.0.2008
+Problem: test: undofile left behind
+Solution: cleanup undofile
+
+Patch 9.0.2009
+Problem: cmdline-completion for comma-separated options wrong
+Solution: Fix command-line expansions for options with filenames with
+ commas
+
+Patch 9.0.2010
+Problem: [security] use-after-free from buf_contents_changed()
+Solution: block autocommands
+
+Patch 9.0.2011
+Problem: INI files not detected
+Solution: detect uppercase .INI as dosini files
+
+Patch 9.0.2012
+Problem: Vim9: error message can be more accurate
+Solution: Fix the error messages
+
+Patch 9.0.2013
+Problem: Unicode tables outdated
+Solution: Update Unicode tables to v15.1 (released 23.09.2023)
+
+Patch 9.0.2014
+Problem: confusing ifdefs in if_<lang>.c
+Solution: refactor ifndefs to #ifdefs
+
+Patch 9.0.2015
+Problem: Vim9: does not handle islocked() from a method correctly
+Solution: Handle islocked() builtin from a method.
+
+Patch 9.0.2016
+Problem: Vim9: assignment operators don't work for class vars
+Solution: implement it
+
+Patch 9.0.2017
+Problem: linebreak applies for leading whitespace
+Solution: only apply linebreak, once we have found non-breakat chars in
+ the line
+
+Patch 9.0.2018
+Problem: complete_info() returns wrong index
+Solution: Make order of 'info' in completion_info consistent
+
+Patch 9.0.2019
+Problem: Vim9: no support for funcrefs
+Solution: Add support for object/class funcref members
+
+Patch 9.0.2020
+Problem: Vim9: islocked() needs more work
+Solution: rework islocked() and remove sync_root
+ from get_lval()
+
+Patch 9.0.2021
+Problem: Coverity complains about change in charset (after v9.0.2017)
+Solution: check pointer t at index 0
+
+Patch 9.0.2022
+Problem: When clicking in the middle of a TAB, getmousepos() returns
+ the column of the next char instead of the TAB.
+Solution: Break out of the loop when the vcol to find is inside current
+ char. Fix invalid memory access when calling virtcol2col() on
+ an empty line.
+
+Patch 9.0.2023
+Problem: need more tests for :cq
+Solution: Add more tests, including wraparound on linux
+
+Patch 9.0.2024
+Problem: no filetype detection for Debian sources
+Solution: Add new deb822sources filetype
+
+Patch 9.0.2025
+Problem: no cmdline completion for ++opt args
+Solution: Add cmdline completion for :e ++opt=arg and :terminal
+ [++options]
+
+Patch 9.0.2026
+Problem: win32: python3 dll loading can be improved
+Solution: Load DLL from registry path
+
+Patch 9.0.2027
+Problem: Vim9: no support for bitwise operators in lambda funcs
+Solution: move "evaluate" assignment a bit up in order to decide
+ to perform bitwise operations
+
+Patch 9.0.2028
+Problem: confusing build dependencies
+Solution: clean them up, make them parallelizable
+
+Patch 9.0.2029
+Problem: Vim9: no support for partials using call()
+Solution: Add support
+
+Patch 9.0.2030
+Problem: no max callback recursion limit
+Solution: bail out, if max call recursion for callback functions
+ has been reached.
+
+Patch 9.0.2031
+Problem: `TextChangedI` can trigger on entering Insert mode if there
+ was previously a change not in Insert mode.
+Solution: Make it trigger only when text is actually changed in Insert
+ mode.

+Patch 9.0.2032
+Problem: Cannot accurately get mouse clicking position when clicking on
+ a TAB or with virtual text.
+Solution: Add a "coladd" field to getmousepos() result.
+
+Patch 9.0.2033
+Problem: gcc overflow-warning for f_resolve
+Solution: use pointer p instead of pointer q[-1]
+
+Patch 9.0.2034
+Problem: don't try to copy SMACK attribute, when none exist
+Solution: return early if SMACK extended attributes do not exist or
+ if they are not supported
+
+Patch 9.0.2035
+Problem: [security] use-after-free with wildmenu
+Solution: properly clean up the wildmenu when exiting
+
+Patch 9.0.2036
+Problem: if_python: rework python3.12 build dependency
+ (after 9.0.1996)
+Solution: use PyTuple_Size instead of inlining the Py_SIZE
+ into the Vim code base
+
+Patch 9.0.2037
+Problem: A few remaining cmdline completion issues with C-E/Y
+Solution: Fix cmdline completion fuzzy/Ctrl-E/Ctrl-Y/options when not
+ used at the end
+
+Patch 9.0.2038
+Problem: Vim9: object method funcref not cleaned up after use
+Solution: Clean up type stack after using object method funcref,
+ remove now longer used ISN_DEFEROBJ instrunction
+
+Patch 9.0.2039
+Problem: completion shows current word after completion restart
+Solution: remove the word being completed after completion restart
+
+Patch 9.0.2040
+Problem: trim(): hard to use default mask
+Solution: Use default 'mask' when it is v:none
+
+Patch 9.0.2041
+Problem: trim(): hard to use default mask (partly revert v9.0.2040)
+Solution: use default mask when it is empty
+
+Patch 9.0.2042
+Problem: Test_cq_zero_exmode fails without channel feature
+Solution: Make the test check the channel feature
+
+Patch 9.0.2043
+Problem: Vim9: issue with funcref assignmentand varargs
+Solution: Fix funcref type checking
+
+Patch 9.0.2044
+Problem: Vim9: exceptions confuse defered functions
+Solution: save and restore exception state when calling defered
+ functions
+
+Patch 9.0.2045
+Problem: tests: checking for swap files takes time
+Solution: don't check for swap files when test has been skipped
+
+Patch 9.0.2046
+Problem: win32,python: warning that MS_WIN64 got re-defined
+Solution: Do not define MS_WIN64, as it is no longer used
+
+Patch 9.0.2047
+Problem: perl: warning about inconsistent dll linkage
+Solution: suppress warning
+
+Patch 9.0.2048
+Problem: python: uninitialized warning
+Solution: initialize 'minor' always
+
+Patch 9.0.2049
+Problem: Vim9: not recognizing qualified class vars for infix ops
+Solution: Drop the class type from the stack before generating the
+ CLASSMEMBER instruction
+
+Patch 9.0.2050
+Problem: Vim9: crash with deferred function call and exception
+Solution: Save and restore exception state
+
+Patch 9.0.2051
+Problem: Vim9: wrong error for non-existing object var
+Solution: mention object or class depending on whether
+ the var is an object or class variable.
+
+Patch 9.0.2052
+Problem: win32: using deprecated wsock32 api
+Solution: Use winsock2 (ws2_32) consistently
+
+Patch 9.0.2053
+Problem: zig filetype detection test wrong
+Solution: Remove .zir pattern, add new test for .zon pattern
+
+Patch 9.0.2054
+Problem: win32: iscygpty needs update
+Solution: Update iscygpty to the latest version, make use iswascii()
+ API function
+
+Patch 9.0.2055
+Problem: Vim9: non-consistent error messages
+Solution: make error messages more consistent with common structure
+
+Patch 9.0.2056
+Problem: no digraph for quadruple prime
+Solution: add quadruple prime digraph using 4'
+
+Patch 9.0.2057
+Problem: Vim9: no strict type checks for funcrefs varargs
+Solution: Perform strict type checking when declaring funcrefs
+ with vararg declaration, add tests
+
+Patch 9.0.2058
+Problem: tests: avoid error when no swap files exist
+Solution: use unlet! so that no error message is reported
+ in case the variable does not exists
+
+Patch 9.0.2059
+Problem: outstanding exceptions may be skipped
+Solution: When restoring exception state, process remaining outstanding
+ exceptions
+
+Patch 9.0.2060
+Problem: *.{gn,gni} files are not recognized
+Solution: Detect some as gn filetype (without adding an extra filetype)
+
+Patch 9.0.2061
+Problem: not able to detect xkb filetypes
+Solution: Detect files below /u/s/X11/xkb as xkb files (without adding
+ an extra filetype)
+
+Patch 9.0.2062
+Problem: Janet files are not recognised
+Solution: Add filename and shebang detection (without
+ adding an extra filetype plugin)
+
+Patch 9.0.2063
+Problem: pacman hooks are detected as conf filetype
+Solution: make it consistent to pacman.conf and detect those
+ hooks as confini
+
+Patch 9.0.2064
+Problem: cannot use buffer-number for errorformat
+Solution: add support for parsing a buffer number using '%b' in
+ 'errorformat'
+
+Patch 9.0.2065
+Problem: EXPAND flag set for filetype option
+Solution: Remove P_EXPAND flag from the 'filetype' option
+
+Patch 9.0.2066
+Problem: xxd: corrupting files when reversing bit dumps
+Solution: handle reversing bit dump slightly differently
+
+Patch 9.0.2067
+Problem: xxd: coloring was disabled on Cygwin
+Solution: don't include WIN32
+
+Patch 9.0.2068
+Problem: [security] overflow in :history
+Solution: Check that value fits into int
+
+Patch 9.0.2069
+Problem: possible to escape bracketed paste mode with Ctrl-C
+Solution: Do not handle Ctrl-C specially when key_protocol
+ is in use, makes bracketed paste mode more robust
+
+Patch 9.0.2070
+Problem: [security] disallow setting env in restricted mode
+Solution: Setting environment variables in restricted mode could
+ potentially be used to execute shell commands. Disallow this.
+
+Patch 9.0.2071
+Problem: objdump files not recognized
+Solution: detect *.objdump files, add a filetype plugin
+
+Patch 9.0.2072
+Problem: Vim9: no nr2str conversion in list-unpack
+Solution: Generate 2STRING instruction to convert dict index to string
+
+Patch 9.0.2073
+Problem: typo in quickfix.c comments
+Solution: fix them
+
+Patch 9.0.2074
+Problem: Completion menu may be wrong
+Solution: Check for the original direction of the completion menu,
+ add more tests, make it work with 'noselect'
+
+Patch 9.0.2075
+Problem: TextChangedI may not always trigger
+Solution: trigger it in more cases: for insert/
+ append/change operations, and when
+ opening a new line,
+
+Patch 9.0.2076
+Problem: Vim9: No support for type aliases
+Solution: Implement :type command
+
+Patch 9.0.2077
+Problem: CI fails because of trailing whitespace in test
+Solution: Remove it
+
+Patch 9.0.2078
+Problem: several problems with type aliases
+Solution: Check for more error conditions, add tests,
+ fix issues
+
+Patch 9.0.2079
+Problem: Not all Dart files detected
+Solution: Add shebang filetype detection for Dart
+
+Patch 9.0.2080
+Problem: vim9_script test too large
+Solution: split vim9 type alias test into
+ separate test file
+
+Patch 9.0.2081
+Problem: With 'smoothscroll' set, "w_skipcol" is not reset when unsetting
+ 'wrap'. Resulting in incorrect calculation of the cursor position.
+Solution: Reset "w_skipcol" when unsetting 'wrap'.
+
+Patch 9.0.2082
+Problem: test_channel may fail because of IPv6 config issues
+Solution: Catch and skip the test, if getaddrinfo() fails with
+ 'Address family not supported'
+
+Patch 9.0.2083
+Problem: Perl: xsubpp may be in non-standard location
+Solution: Add --with-subpp configure option
+
+Patch 9.0.2084
+Problem: Vim9: abstract static methods are possible
+Solution: Disallow abstract static methods
+
+Patch 9.0.2085
+Problem: Vim9: abstract can be used in interface
+Solution: Disallow the use of abstract in an interface
+
+Patch 9.0.2086
+Problem: code cleanup for option callbacks needed
+Solution: remove flag os_doskip, it's not necessary, as we can check,
+ whether an error message was returned
+
+Patch 9.0.2087
+Problem: build-failure in vim9class
+Solution: reference correct error message,
+ disable non-failing test
+
+Patch 9.0.2088
+Problem: Vim9: still allows abstract static methods
+ (after v9.0.2084, v9.0.2085 and v9.0.2087)
+Solution: Disallow abstract static methods
+
+Patch 9.0.2089
+Problem: sound_playfile() fails when using powershell
+Solution: quote filename using doublequotes, don't escape filename,
+ because it doesn't use the shell
+
+Patch 9.0.2090
+Problem: complete_info() skips entries with 'noselect'
+Solution: Check, if first entry is at original text state
+
+Patch 9.0.2091
+Problem: Vim9: cannot convert list to string using +=
+ (after 9.0.2072)
+Solution: convert dict index to string later in compile_member()
+
+Patch 9.0.2092
+Problem: tests: failure in test_arabic
+Solution: adjust the test for the changed arabic keymap
+
+Patch 9.0.2093
+Problem: Unsupported option causes rest of modeline test to be skipped.
+Solution: Revert the change from patch 8.2.1432.
+
+Patch 9.0.2094
+Problem: Vim9: need more assignment tests
+Solution: Add test for using different types in assignment, function
+ arguments and return values
+
+Patch 9.0.2095
+Problem: statusline may look different than expected
+Solution: do not check for highlighting of stl and stlnc characters
+
+Patch 9.0.2096
+Problem: Vim9: confusing usage of private
+Solution: clarify and use protected keyword instead
+
+Patch 9.0.2097
+Problem: No support for cypher files
+Solution: Add cypher filetype detection
+
+Patch 9.0.2098
+Problem: No filetype support for xcompose files
+Solution: Add filetype detection
+
+Patch 9.0.2099
+Problem: Terminal control codes¹ are sent even when silent
+ mode is on, causing the terminal to clear up
+Solution: Block any terminal codes when silent mode is on
+
+Patch 9.0.2100
+Problem: CI: test_termdebug fails
+Solution: only test for a changed winlayout, if the window
+ width actually changed
+
+Patch 9.0.2101
+Problem: CI: test_termdebug may still fail
+Solution: use term_wait() to make it more robust
+
+Patch 9.0.2102
+Problem: matchparen highlight not cleared in completion mode
+Solution: Clear matchparen highlighting in completion mode
+
+Patch 9.0.2103
+Problem: recursive callback may cause issues on some archs
+Solution: Decrease the limit drastically to 20
+
+Patch 9.0.2104
+Problem: wast filetype should be replaced by wat filetype
+Solution: start using the official wat filetype name
+
+Patch 9.0.2105
+Problem: Skipcol is not reset when topline changed scrolling cursor to top
+Solution: reset skipcol
+
+Patch 9.0.2106
+Problem: [security]: Use-after-free in win_close()
+Solution: Check window is valid, before accessing it
+
+Patch 9.0.2107
+Problem: [security]: FPE in adjust_plines_for_skipcol
+Solution: don't divide by zero, return zero
+
+Patch 9.0.2108
+Problem: [security]: overflow with count for :s command
+Solution: Abort the :s command if the count is too large
+
+Patch 9.0.2109
+Problem: [security]: overflow in nv_z_get_count
+Solution: break out, if count is too large
+
+Patch 9.0.2110
+Problem: [security]: overflow in ex address parsing
+Solution: Verify that lnum is positive, before substracting from
+ LONG_MAX
+
+Patch 9.0.2111
+Problem: [security]: overflow in get_number
+Solution: Return 0 when the count gets too large
+
+Patch 9.0.2112
+Problem: [security]: overflow in shift_line
+Solution: allow a max indent of INT_MAX
+
+Patch 9.0.2113
+Problem: Coverity warns for another overflow in shift_line()
+Solution: Test for INT_MAX after the if condition, cast integer values
+ to (long long) before multiplying.
+
+Patch 9.0.2114
+Problem: overflow detection not accurate when adding digits
+Solution: Use a helper function
+
+Patch 9.0.2115
+Problem: crash when callback function aborts because of recursiveness
+Solution: correctly initialize rettv
+
+Patch 9.0.2116
+Problem: No test for defining sign without attribute
+Solution: Add test for defining sign without attributes
+
+Patch 9.0.2117
+Problem: [security] use-after-free in qf_free_items
+Solution: only access qfpnext, if it hasn't been freed
+
+Patch 9.0.2118
+Problem: [security]: avoid double-free
+Solution: Only fee plain_font, when it is not the same as bold_font
+
+Patch 9.0.2119
+Problem: remove dead-condition in ex_class()
+Solution: remove the extra condition
+
+Patch 9.0.2120
+Problem: un-used assignment in do_source_buffer_init
+Solution: Remove it
+
+Patch 9.0.2121
+Problem: [security]: use-after-free in ex_substitute
+Solution: always allocate memory
+
+Patch 9.0.2122
+Problem: [security]: prevent overflow in indenting
+Solution: use long long and remove cast to (int)
+
+Patch 9.0.2123
+Problem: Problem with initializing the length of range() lists
+Solution: Set length explicitly when it shouldn't contain any items
+
+Patch 9.0.2124
+Problem: INT overflow logic can be simplified
+Solution: introduce trim_to_int() function
+
+Patch 9.0.2125
+Problem: File info disappears immediately when 'cmdheight' has just
+ decreased due to switching tabpage and 'shortmess' doesn't
+ contain 'o' or 'O'.
+Solution: Make sure msg_row isn't smaller than cmdline_row.
+
+Patch 9.0.2126
+Problem: Unused assignments when checking the value of 'listchars'.
+Solution: Loop only once when just checking the value. Add a test to
+ check that this change doesn't cause double-free.
+
+Patch 9.0.2127
+Problem: translation Makefiles can be improved
+Solution: Modified and extended po-related Makefiles and
+ related files
+
+Patch 9.0.2128
+Problem: No runtime files for SWIG filetypes
+Solution: Add syntax and filetype plugins for SWIG (Simplified Wrapper
+ Interface Generator) description files.
+
+Patch 9.0.2129
+Problem: [security]: use-after-free in call_dfunc()
+Solution: Refresh dfunc pointer
+
+Patch 9.0.2130
+Problem: some errors with translation Makefiles
+Solution: fix issues
+
+Patch 9.0.2131
+Problem: not all nushell files detected
+Solution: use *.nu to detect nushell files
+
+Patch 9.0.2132
+Problem: Duplicate Netbeans Error Message
+Solution: Remove duplicate message
+
+Patch 9.0.2133
+Problem: Cannot detect overstrike mode in Cmdline mode
+Solution: Make mode() return "cr" for overstrike
+
+Patch 9.0.2134
+Problem: ml_get error when scrolling after delete
+Solution: mark topline to be validated in main_loop
+ if it is larger than current buffers line
+ count
+
+Patch 9.0.2135
+Problem: No test for mode() when executing Ex commands
+Solution: Add some test cases and simplify several other test cases.
+ Also add a few more test cases for ModeChanged.
+
+Patch 9.0.2136
+Problem: MSVC errorformat can be improved
+Solution: parse error type and column number in MSVC errorformat
+
+Patch 9.0.2137
+Problem: Can't detect angular & mustache filetypes
+Solution: Detect *.mustache as Mustache filetype;
+ detect *.component.html as html.angular filetype
+
+Patch 9.0.2138
+Problem: Overflow logic requires long long
+Solution: Define vimlong_T data type to make life easier
+ for porters
+
+Patch 9.0.2139
+Problem: html.angular ft is problematic
+Solution: partly revert v9.0.2137
+
+Patch 9.0.2140
+Problem: [security]: use-after-free in win-enter
+Solution: validate window pointer before calling win_enter()
+
+Patch 9.0.2141
+Problem: [security]: buffer-overflow in suggest_trie_walk
+Solution: Check n before using it as index into byts array
+
+Patch 9.0.2142
+Problem: [security]: stack-buffer-overflow in option callback functions
+Solution: pass size of errbuf down the call stack, use snprintf()
+ instead of sprintf()
+
+Patch 9.0.2143
+Problem: [security]: buffer-overflow in ex_substitute
+Solution: clear memory after allocating
+
+Patch 9.0.2144
+Problem: Text properties causes wrong line wrapping to be drawn.
+Solution: Find the index of the last text property that inserts text.
+
+Patch 9.0.2145
+Problem: Wrong scrolling in Insert mode with 'smoothscroll' at the
+ bottom of the window.
+Solution: Don't use set_topline() when 'smoothscroll' is set.
+
+Patch 9.0.2146
+Problem: text-property without type errors when joining
+Solution: count all text-properties, with or without type
+ before joining lines
+
+Patch 9.0.2147
+Problem: Type check tests fail without the channel feature
+Solution: only run tests, when Vim was build with +channel
+
+Patch 9.0.2148
+Problem: Vim does not detect pacman.log file
+Solution: Detect pacmanlogs and add syntax highlighting
+
+Patch 9.0.2149
+Problem: [security]: use-after-free in exec_instructions()
+Solution: get tv pointer again
+
+Patch 9.0.2150
+Problem: Using int for errbuflen in option funcs
+Solution: Use size_t for errbuflen in string option functions
+
+Patch 9.0.2151
+Problem: 'breakindent' is not drawn after diff filler lines.
+Solution: Correct check for whether 'breakindent' should be drawn.
+
+Patch 9.0.2152
+Problem: Using type unknown for List/Dict containers
+Solution: Use 'any' instead
+
+Patch 9.0.2153
+Problem: no support to build on OpenVMS
+Solution: Add OpenVMS X86_64 platform port
+
+Patch 9.0.2154
+Problem: The options[] array is not sorted alphabetically.
+Solution: Sort it alphabetically. Add a test. Avoid unnecessary loop
+ iterations in findoption().
+
+Patch 9.0.2155
+Problem: Vim9: type not kept when assigning vars
+Solution: When assigning a List or a Dict value to a variable of type
+ 'any', keep the type
+
+Patch 9.0.2156
+Problem: Vim9: can use typealias in an assignment
+Solution: Generate errors when class/typealias involved in the rhs of an
+ assignment
+
+Patch 9.0.2157
+Problem: Vim9: incorrectly parses :def func definitions
+Solution: check for more context when parsing function args
+
+Patch 9.0.2158
+Problem: [security]: use-after-free in check_argument_type
+Solution: Reset function type pointer when freeing the function type
+ list
+
+Patch 9.0.2159
+Problem: screenpos() may crash with neg. column
+Solution: validate and correct column
+
+Patch 9.0.2160
+Problem: instanceof() should use varargs as second arg
+Solution: Modify `instanceof()` to use varargs instead of list
+
+Patch 9.0.2161
+Problem: Vim9: not able to use imported interfaces and classes
+Solution: Detect imported class/interfaces names correclty
+
+Patch 9.0.2162
+Problem: Vim9: type documentation out-dated
+Solution: Update documentation, fix typo in type alias
+ definition
+
+Patch 9.0.2163
+Problem: Vim9: type can be assigned to list/dict
+Solution: Prevent assigning a `type` to a `list` or `dict`
+
+Patch 9.0.2164
+Problem: Vim9: can use type a func arg/return value
+Solution: Check if using type as function argument or return value
+
+Patch 9.0.2165
+Problem: Vim9: can simplify arg type checking code
+Solution: In `f_argcheck` array use `arg_any`, instead of NULL
+
+Patch 9.0.2166
+Problem: Memory leak in Configure Script when checking GTK
+Solution: Free the allocated memory
+
+Patch 9.0.2167
+Problem: Vim9-script object/class variable declarations use syntax
+ that is inconsistent with the rest of the language.
+Solution: Use :var to declare object and class variables.
+
+Patch 9.0.2168
+Problem: Moving tabpages on :drop may cause an endless loop
+Solution: Disallow moving tabpages on :drop when cleaning up the arglist
+ first
+
+Patch 9.0.2169
+Problem: Vim9: builtin funcs may accept a non-value
+Solution: Restrict builtin functions that accept `type`
+
+Patch 9.0.2170
+Problem: Vim9: no support for const/final class/objects vars
+Solution: Support final and const object and class variables
+
+Patch 9.0.2171
+Problem: The options[] array is still not sorted alphabetically
+ (after: v9.0.2154), causing test failures
+Solution: Sort the remaining items
+
+Patch 9.0.2172
+Problem: Vim9: compiling :defer may fail
+Solution: compile defer, when ctx_skip is not SKIP_YES
+
+Patch 9.0.2173
+Problem: Vim9: Vim crashes when compiling a for statement with a
+ non-existing type
+Solution: Error out when lhs_type is not null
+
+Patch 9.0.2174
+Problem: Vim9: segfault when assigning to type
+Solution: do not clear typeval, add missing patch number
+
+Patch 9.0.2175
+Problem: Compiler warning for uninitialized var
+Solution: initialize variable to NULL

vim:tw=78:ts=8:noet:ft=help:norl:

Yegappan Lakshmanan

unread,
Dec 19, 2023, 11:11:12 PM12/19/23
to Christian Brabandt, vim_dev
Hi Christian,

On Tue, Dec 19, 2023 at 11:15 AM Christian Brabandt <cbl...@256bit.org> wrote:
runtime(doc): Create Changelog until v9.0.2175 (#13728)

Commit: https://github.com/vim/vim/commit/5872bcb6e8dfc15d7a5c0aaaf94d8029f3a1fa3f
Author: Christian Brabandt <c...@256bit.org>
Date:   Tue Dec 19 20:10:43 2023 +0100

    runtime(doc): Create Changelog until v9.0.2175 (https://github.com/vim/vim/issues/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 <c...@256bit.org>

diff --git a/runtime/doc/version9.txt b/runtime/doc/version9.txt
index 09d6b3b7e..ea3fc611c 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


+Problem:    The options[] array is still not sorted alphabetically
+            (after: v9.0.2154), causing test failures
+Solution:   Sort the remaining items
+
+Patch 9.0.2172
+Problem:    Vim9: compiling :defer may fail
+Solution:   compile defer, when ctx_skip is not SKIP_YES
+
+Patch 9.0.2173
+Problem:    Vim9: Vim crashes when compiling a for statement with a
+            non-existing type
+Solution:   Error out when  lhs_type is not null
+
+Patch 9.0.2174
+Problem:    Vim9: segfault when assigning to type
+Solution:   do not clear typeval, add missing patch number
+


The patch information for the previous releases included the author name
and the name of the person who reported the problem.  The 9.0.x patches
don't have the author name.  Going forward, can we include the author name
in the commit solution text, so that it is easy to get this information?

Regards,
Yegappan

Christian Brabandt

unread,
Dec 20, 2023, 2:50:54 AM12/20/23
to vim_dev

On Di, 19 Dez 2023, Yegappan Lakshmanan wrote:

> On Tue, Dec 19, 2023 at 11:15 AM Christian Brabandt <cbl...@256bit.org> wrote:
>
> runtime(doc): Create Changelog until v9.0.2175 (#13728)
>
> Commit: https://github.com/vim/vim/commit/5872bcb6e8dfc15d7a5c0aaaf94d8029f3a1fa3f
> Author: Christian Brabandt <c...@256bit.org>
> Date: Tue Dec 19 20:10:43 2023 +0100
>
>
> The patch information for the previous releases included the author name
> and the name of the person who reported the problem. The 9.0.x patches
> don't have the author name. Going forward, can we include the author name
> in the commit solution text, so that it is easy to get this information?

I can try to add them of of course (I need to be very careful not to
forget anything when creating those patches, it's amazing that Bram was
able to do so without problems).

I should also mention, that the full log (including diff and changed
files, which I also left out) is available using git log. Gathering all
that information for more than 2000 patches is ... well time consuming.

Thanks,
Christian
--
Yow! Am I having fun yet?
Reply all
Reply to author
Forward
0 new messages