summaryrefslogtreecommitdiff
path: root/mnv/runtime/doc/version9.txt
diff options
context:
space:
mode:
authorMehmet Samet Duman <yongdohyun@projecttick.org>2026-04-04 12:41:27 +0300
committerMehmet Samet Duman <yongdohyun@projecttick.org>2026-04-04 12:41:27 +0300
commit4f2d36194b4f299aa7509d815c07121039ea833b (patch)
treef3ded014bad3a4c76ff6a22b8726ebaab68c3d13 /mnv/runtime/doc/version9.txt
parent5b578e70c314723a3cde5c9bfc2be0bf1dadc93b (diff)
downloadProject-Tick-4f2d36194b4f299aa7509d815c07121039ea833b.tar.gz
Project-Tick-4f2d36194b4f299aa7509d815c07121039ea833b.zip
NOISSUE change uvim folder name to mnv
Signed-off-by: Mehmet Samet Duman <yongdohyun@projecttick.org>
Diffstat (limited to 'mnv/runtime/doc/version9.txt')
-rw-r--r--mnv/runtime/doc/version9.txt52656
1 files changed, 52656 insertions, 0 deletions
diff --git a/mnv/runtime/doc/version9.txt b/mnv/runtime/doc/version9.txt
new file mode 100644
index 0000000000..da79cdfcd1
--- /dev/null
+++ b/mnv/runtime/doc/version9.txt
@@ -0,0 +1,52656 @@
+*version9.txt* For MNV version 10.0. Last change: 2026 Mar 25
+
+
+ MNV REFERENCE MANUAL by Bram Moolenaar
+
+
+ *mnv-9.0* *mnv-9* *version-9.0* *version9.0*
+Welcome to MNV 9! Several years have passed since the previous release.
+A large number of bugs have been fixed, many nice features have been added
+and the MNV9 script syntax is here! This file mentions all the new things and
+changes to existing features since MNV 8.2.0. The patches up to MNV 8.2 can be
+found here: |mnv-8.2|.
+
+Use this command to see the full version and features information of the MNV
+program you are using: >
+ :version
+
+NEW FEATURES |new-9|
+ MNV script enhancements |new-mnv-script-9|
+ Command line completion in a popup menu |new-popup-compl|
+ Updated colorschemes |new-colorschemes-9|
+ Various new items |new-items-9|
+
+INCOMPATIBLE CHANGES |incompatible-9|
+
+IMPROVEMENTS |improvements-9|
+
+COMPILE TIME CHANGES |compile-changes-9|
+
+PATCHES |patches-9|
+
+VERSION 9.1 |version-9.1|
+ Changed |changed-9.1|
+ Added |added-9.1|
+ Patches |patches-9.1|
+
+VERSION 9.2 |version-9.2|
+ Changed |changed-9.2|
+ Added |added-9.2|
+ Patches |patches-9.2|
+
+VERSION 9.3 |version-9.3|
+ Changed |changed-9.3|
+ Added |added-9.3|
+ Patches |patches-9.3|
+
+
+See |vi_diff.txt| for an overview of differences between Vi and MNV 9.0.
+See |version4.txt|, |version5.txt|, |version6.txt|, |version7.txt| and
+|version8.txt| for differences between MNV versions.
+
+You can find an overview of the most important changes (according to Martin
+Tournoij) on this site: https://www.arp242.net/mnvlog/
+
+ *Sven-Guckes*
+MNV version 9.0 is dedicated to Sven Guckes, who passed away in February 2022
+when the release was being prepared. Sven was a long time supporter of MNV.
+He registered the mnv.org domain and created the first MNV website. We will
+remember him!
+
+ *Bram* *Moolenaar* *Bram-Moolenaar*
+MNV version 9.1 is dedicated to Bram Moolenaar, who passed away on August 3rd
+2023 while still working full-time on MNV. The MNV project would not exist
+without his ongoing passion to lead and develop MNV and the community for more
+than 30 years. Bram was also passionate about his ICCF foundation to help
+children in Uganda. If you enjoy using MNV, please consider donating! We will
+miss his guidance, passion and leadership.
+
+Obituary Articles: https://github.com/Project-Tick/Project-Tick/discussions/12742
+Say Farewell: https://github.com/Project-Tick/Project-Tick/discussions/12737
+
+==============================================================================
+NEW FEATURES *new-9*
+
+First an overview of the more interesting new features. A comprehensive list
+is below.
+
+
+MNV9 script ~
+ *new-mnv-script-9*
+The MNV script language has been changed step by step over many years,
+preserving backwards compatibility. Several choices made in the early days
+got in the way of making it work better. At the same time, MNV script is
+being used much more often, since there are so many plugins being used.
+
+MNV9 script provides a syntax that is much more similar to other languages.
+In other words: "less weird". Compiled functions are introduced which allow
+for a large speed improvement. You can expect around ten times faster
+execution, or even more. The price to pay is that MNV9 script is not
+backwards compatible. But don't worry, you can still use your old scripts,
+the new script language is added, it does not replace the legacy script.
+
+Information about MNV9 script can be found in the |MNV9| help file.
+
+
+Command line completion in a popup menu ~
+ *new-popup-compl*
+Before there was the 'wildmenu' option, which uses the space of one line above
+the statusline to show matches. Only a few matches fit there.
+
+Now a popup menu can be used by setting 'wildoptions' to "pum". This allows
+for showing many more matches. This requires redrawing more of the display,
+but since computers are fast enough that is not a problem.
+
+
+Updated colorschemes ~
+ *new-colorschemes-9*
+Colorschemes from https://github.com/mnv/colorschemes have been included.
+They were made to work consistently across many types of terminals. Although
+generally an improvement, a lot of personal preference is involved. You can
+always get the old version if you prefer it, look here:
+https://github.com/mnv/colorschemes/blob/master/legacy_colors/
+
+
+Various new items ~
+ *new-items-9*
+Options: ~
+
+'autoshelldir' change directory to the shell's current directory
+'cdhome' change directory to the home directory by ":cd"
+'cinscopedecls' words that are recognized by 'cino-g'
+'guiligatures' GTK GUI: ASCII characters that can form shapes
+'mousemoveevent' report mouse moves with <MouseMove>
+'quickfixtextfunc' function for the text in the quickfix window
+'spelloptions' options for spell checking
+'thesaurusfunc' function to be used for thesaurus completion
+'xtermcodes' request terminal codes from an xterm
+
+
+Ex commands: ~
+
+|:abstract| (reserved for future use)
+|:argdedupe| remove duplicates from the argument list
+|:balt| like ":badd" but also set the alternate file
+|:class| (reserved for future use)
+|:def| define a MNV9 user function
+|:defcompile| compile MNV9 user functions in current script
+|:disassemble| disassemble MNV9 user function
+|:echoconsole| like :echomsg but write to stdout
+|:endinterface| (reserved for future use)
+|:endclass| (reserved for future use)
+|:enddef| end of a user function started with :def
+|:endenum| (reserved for future use)
+|:enum| (reserved for future use)
+|:eval| evaluate an expression and discard the result
+|:export| MNV9: export an item from a script
+|:final| declare an immutable variable in MNV9
+|:import| MNV9: import an item from another script
+|:interface| (reserved for future use)
+|:static| (reserved for future use)
+|:type| (reserved for future use)
+|:var| variable declaration in MNV9
+|:mnv9script| indicates MNV9 script file
+
+
+Ex command modifiers: ~
+
+|:legacy| make following command use legacy script syntax
+|:mnv9cmd| make following command use MNV9 script syntax
+
+
+New and extended functions: ~
+
+|assert_nobeep()| assert that a command does not cause a beep
+|autocmd_add()| add a list of autocmds and groups
+|autocmd_delete()| delete a list of autocmds and groups
+|autocmd_get()| return a list of autocmds
+|blob2list()| get a list of numbers from a blob
+|charclass()| class of a character
+|charcol()| character number of the cursor or a mark
+|charidx()| character index of a byte in a string
+|digraph_get()| get digraph
+|digraph_getlist()| get all digraphs
+|digraph_set()| register digraph
+|digraph_setlist()| register multiple digraphs
+|echoraw()| output characters as-is
+|exists_compiled()| like exists() but check at compile time
+|extendnew()| make a new Dictionary and append items
+|flatten()| flatten a List
+|flattennew()| flatten a copy of a List
+|fullcommand()| get full command name
+|getcharpos()| get character position of cursor, mark, etc.
+|getcharstr()| get a character from the user as a string
+|getcmdcompltype()| return current cmdline completion type
+|getcmdscreenpos()| return the current cursor position in the cmdline
+|getcursorcharpos()| get character position of the cursor
+|getmarklist()| list of global/local marks
+|getreginfo()| get information about a register
+|gettext()| lookup message translation
+|hlget()| get highlight group attributes
+|hlset()| set highlight group attributes
+|isabsolutepath()| check if a path is absolute
+|list2blob()| get a blob from a list of numbers
+|maplist()| list of all mappings, a dict for each
+|mapnew()| make a new List with changed items
+|mapset()| restore a mapping
+|matchfuzzy()| fuzzy matches a string in a list of strings
+|matchfuzzypos()| fuzzy matches a string in a list of strings
+|menu_info()| get information about a menu item
+|popup_list()| get list of all popup window IDs
+|prompt_getprompt()| get the effective prompt text for a buffer
+|prop_add_list()| attach a property at multiple positions
+|prop_find()| search for a property
+|readblob()| read a file into a Blob
+|readdirex()| get a List of file information in a directory
+|reduce()| reduce a List to a value
+|searchcount()| get number of matches before/after the cursor
+|setcellwidths()| set character cell width overrides
+|setcharpos()| set character position of cursor, mark, etc.
+|setcursorcharpos()| set character position of the cursor
+|slice()| take a slice of a List
+|strcharlen()| length of a string in characters
+|terminalprops()| properties of the terminal
+|test_gui_event()| generate a GUI event for testing
+|test_null_function()| return a null Funcref
+|test_srand_seed()| set the seed value for srand()
+|test_unknown()| return a value with unknown type
+|test_void()| return a value with void type
+|typename()| type of a variable as text
+|virtcol2col()| byte index of a character on screen
+|win_gettype()| get type of window
+|win_move_separator()| move window vertical separator
+|win_move_statusline()| move window status line
+|windowsversion()| get MS-Windows version
+
+
+New MNV variables: ~
+
+|v:numbermax| maximum value of a number
+|v:numbermin| minimum value of a number (negative)
+|v:numbersize| number of bits in a Number
+|v:collate| current locale setting for collation order
+|v:exiting| mnv exit code
+|v:colornames| dictionary that maps color names to hex color strings
+|v:sizeofint| number of bytes in an int
+|v:sizeoflong| number of bytes in a long
+|v:sizeofpointer| number of bytes in a pointer
+|v:maxcol| maximum line length
+
+
+New autocommand events: ~
+
+|CompleteDonePre| after Insert mode completion done, before clearing info
+|DirChangedPre| before the working directory will change
+|InsertLeavePre| just before leaving Insert mode
+|ModeChanged| after changing the mode
+|SigUSR1| after the SIGUSR1 signal has been detected
+|WinClosed| after closing a window
+|WinScrolled| after scrolling or resizing a window
+|MNVSuspend| when suspending MNV
+|MNVResume| when MNV is resumed after being suspended
+
+
+New operators: ~
+
+|>>| bitwise right shift
+|<<| bitwise left shift
+|??| falsy operator
+
+New runtime files: ~
+
+Too many to list here.
+
+==============================================================================
+INCOMPATIBLE CHANGES *incompatible-9*
+
+There is only one change that is incompatible with previous releases:
+
+- Lua arrays are now one-based, they used to be zero-based.
+
+Note that when using |MNV9| script several things work differently, see
+|mnv9-differences|.
+
+==============================================================================
+IMPROVEMENTS *improvements-9*
+
+Various small and useful improvements have been made since MNV 8.2, here is a
+summary.
+
+Many memory leaks, invalid memory accesses and crashes have been fixed.
+See the list of patches below: |bug-fixes-9|.
+
+Support for MNV expression evaluation in a string. |interpolated-string|
+Support for evaluating MNV expressions in a heredoc. |:let-heredoc|
+
+Support for fuzzy matching:
+- a string in a List of strings. |fuzzy-matching|
+- completion support for command line completion using 'wildoptions'.
+- for |:mnvgrep|.
+
+Added support for the |Haiku| OS.
+
+Support for "lsp" channel mode to simplify LSP server RPC communication
+|language-server-protocol|. Support for using a Unix domain socket with a
+|channel|. IPv6 support in channels |channel-address|.
+
+Support for sourcing lines from the current buffer. |:source-range|
+
+Terminal window improvements:
+- Support for opening a terminal in a popup window. |popup-terminal|
+- Allow setting underline color in terminal.
+- Detect focus events in terminal (|FocusGained| and |FocusLost|).
+- Add bell support for the terminal window. ('belloff')
+- Support mouse left-right scrolling in a terminal window.
+
+Support for stopping profiling a MNV script: `:profile stop` and dumping the
+report to a file: `:profile dump` . |:profile|
+
+Completion improvements:
+- Argument completion support for the |:breakadd|, |:breakdel|, |:diffget|,
+ |:diffput|, |:profile|, |:profdel| and |:scriptnames| commands.
+- Support using any MNV type for user_data with the completion functions
+ (|complete-items|).
+- Stop insert mode completion without changing text (|i_CTRL-X_CTRL-Z|).
+- Add the "cmdline" option to |getcompletion()| to return the command line
+ arguments.
+
+Support for setting the 'foldtext', 'completefunc', 'omnifunc',
+'operatorfunc', 'thesaurusfunc', 'quickfixtextfunc', 'tagfunc',
+'imactivatefunc' and 'imstatusfunc' options to a function reference or a
+lambda function or a script-local function.
+
+Support directly setting the 'balloonexpr', 'charconvert' 'foldexpr',
+'formatexpr', 'includeexpr', 'printexpr', 'patchexpr', 'indentexpr',
+'modelineexpr', 'diffexpr' and 'printexpr' options to a script-local function.
+
+Improvements in 'fillchars':
+- Support for configuring the character used to mark the beginning of a fold,
+ show a closed fold and show a fold separator using "foldopen", "foldclose"
+ and "foldsep" respectively in 'fillchars'.
+- Support for configuring the character displayed in non existing lines using
+ "eob" in 'fillchars'.
+- Support for using multibyte items with the "stl", "stlnc", "foldopen",
+ "foldclose" and "foldsep" items in the 'fillchars' option.
+
+Support for the XChaCha20 encryption method. 'cryptmethod'
+
+Spell checking:
+- Spell check current word with |z=| even when 'spell' is off.
+- Add "timeout" to 'spellsuggest' to limit the searching time for spell
+ suggestions.
+- Add support for spell checking CamelCased words by adding "camel" to
+ 'spelloptions'.
+
+Support for executing Ex commands in a map without changing the current mode
+|<Cmd>| and |<ScriptCmd>|.
+
+Add optional error code to |:cquit|.
+
+Recognize numbers as unsigned when "unsigned" is set in 'nrformats'.
+
+Expand script ID using expand('<SID>') and script name using
+expand('<script>'). |expand()|
+
+Jump to the last accessed tab page using |g<Tab>| and support using the
+last accessed tab page in |:tabnext| et al.
+
+Locale aware sorting using |:sort| and |sort()|.
+
+Hide cursor when sleeping using |:sleep!|.
+
+Add "multispace" to 'listchars' to show two or more spaces no matter where
+they appear. Add "leadmultispace" to 'listchars' to show two or more leading
+spaces. Add "lead" to 'listchars' to set the character used to show leading
+spaces. Support specifying a character using the hexadecimal notation in
+'listchars' (\x, \u and \U).
+
+Make 'listchars', 'virtualedit' and 'thesaurusfunc' global-local options.
+
+Support for looping over a string using `:for`.
+
+Don't reset 'wrap' for diff windows when "followwrap" is set in 'diffopt'.
+
+Support for re-evaluating the 'statusline' expression as a statusline format
+string (%{% expr %})
+
+Add |zp| and |zP| to paste in block mode without adding trailing white space.
+Add |zy| to yank without trailing white space in block mode.
+
+Add the 'P' command in visual mode to paste text in Visual mode without
+yanking the deleted text to the unnamed register. |put-Visual-mode|
+
+Add \%.l, \%<.l and \%>.l atoms to match the line the cursor is currently on.
+See |/\%l| for more information.
+
+Add "list" to 'breakindentopt' to add additional indent for lines that match
+a numbered or bulleted list. Add "column" to 'breakindentopt' to indent
+soft-wrapped lines at a specific column.
+
+Add the |hl-CursorLineSign| and |hl-CursorLineFold| default highlight groups to
+adjust sign highlighting for 'cursorline'.
+
+Add the |hl-CurSearch| default highlight group for the current search match.
+
+Add support for logging on MNV startup (|--log|).
+
+Add support for customizing the quickfix buffer contents using
+'quickfixtextfunc'. Support for the "note" error type (%t) in |errorformat|.
+Add support for parsing the end line number (%e) and end column number (%k)
+using 'errorformat'.
+
+Support truncating the tag stack using |settagstack()|.
+
+Display every option in a separate line when "!" is used with |:set|.
+
+Add "nostop" to 'backspace' to allow backspacing over the start of insert for
+|CTRL-W| and |CTRL-U| also.
+
+Sync the undo file if 'fsync' is set.
+
+Support excluding the 'runtimepath' and 'packpath' options from a session file
+using "skiprtp" in 'sessionoptions'.
+
+Support for getting the number of lines (line count) in a buffer using
+|getbufinfo()|.
+
+Support |filter()| and |map()| for blob and string types.
+
+Support for using a multi-byte character for the tag kind. |tags-file-format|
+
+Add support for checking whether a function name is valid using |exists()|.
+
+Update xdiff to version 2.33. Update libvterm to revision 789.
+
+Support 'trim' for Python/Lua/Perl/Tcl/Ruby/MzScheme interface heredoc.
+
+Add the |t_AU| and |t_8u| termcap codes for underline and undercurl. Add the
+t_fd and t_fe termcap codes for detecting focus events.
+
+Support for indenting C pragmas like normal code. (|cino-P|)
+
+Add support for defining the syntax fold level. (|:syn-foldlevel|)
+
+Add support for using \<*xxx> in a string to prepend a modifier to a
+character. (|expr-quote|)
+
+Add support trimming characters at the beginning or end of a string using
+|trim()|.
+
+Make ":verbose pwd" show the scope of the directory. |:pwd-verbose|
+
+Add the "0o" notation for specifying octal numbers. |scriptversion-4|
+
+Support for changing to the previous tab-local and window-local directories
+using the "tcd -" and "lcd -" commands. (|:tcd-| and |:lcd-|)
+
+Add support for skipping an expression using |search()|.
+
+Add support for sorting the directory contents returned by the |readdir()|
+and |readdirex()| functions by case.
+
+Add support for executing (|:@|) a register containing line continuation.
+
+Lua support:
+- Call MNV functions from Lua (mnv.call() and mnv.fn()).
+- Convert a Lua function and a closure to a MNV funcref so that it can be
+ accessed in a MNV script (|lua-funcref|).
+- Not backwards compatible: Make Lua arrays one based.
+- Add support for using table.insert() and table.remove() functions with MNV
+ lists.
+- Support for running multiple Ex-mode commands using mnv.command().
+- Add mnv.lua_version to get the Lua version.
+- Add support for accessing MNV namespace dictionaries from Lua
+ (|lua-mnv-variables|).
+
+Support for new UTF-8 characters from Unicode release 13.
+
+Support for using a command block (|:command-repl|) when defining a |:command|
+or an |:autocmd|.
+
+Support for using |:z!| to use the MNV display height instead of the current
+window height.
+
+Support for deleting a buffer-local command using ":delcommand -buffer {cmd}".
+
+When formatting a // comment after a statement, find the start of the line
+comment, insert the comment leader and indent the comment properly (|fo-/|).
+
+Add the "numhl" argument to `:sign define` to use a separate highlight group
+for the line number on a line where a sign is placed. |:sign-define|
+
+When $SHELL ends in "nologin" or "false", start MNV in restricted mode.
+
+TermDebug enhancements:
+- Support for showing the disassembled code in a separate window.
+- Support for the GDB until command.
+- Use a separate group for the signs.
+
+xxd: Support for showing offset as a decimal number (-d).
+
+The C omni-complete plugin (|ft-c-omni|), the file type detection script
+(ft.mnv) and the syntax menu generation script (makemenu.mnv) have been
+rewritten using the MNV9 script syntax.
+
+A large number of tests have been added to verify the MNV functionality. Most
+of the old style tests have been converted to new style tests using the new
+style assert_* functions.
+
+Many Coverity static analysis warnings have been fixed.
+
+==============================================================================
+COMPILE TIME CHANGES *compile-changes-9*
+
+The following features are now enabled in all the builds:
+ |+cindent|
+ |+jumplist|
+ |+lispindent|
+ |+num64|
+ |+smartindent|
+ |+tag_binary|
+ |+title|
+
+The following features have been removed. They are either obsolete or didn't
+work properly:
+ - Athena and neXTaw GUI support (use Motif instead)
+ - EBCDIC support
+ - Atari MiNT and BeOS
+ - Mac Carbon GUI (use MacMNV instead)
+
+The rgb.txt file is no longer included, use colors/lists/default.mnv instead.
+
+Several large source files were split, mainly to make it easier to inspect
+code coverage information. Source files have also been refactored for
+maintainability.
+
+Support for building MNV with Mingw64 clang compiler on MS-Windows.
+
+Support for building MNV with Python 3.10, Lua 5.4.4, Perl 5.34 and
+Ruby 3.1.0.
+
+==============================================================================
+PATCHES *patches-9* *bug-fixes-9*
+ *patches-after-8.2*
+
+The list of patches that got included since 8.2.0. This includes all the new
+features, but does not include runtime file changes (syntax, indent, help,
+etc.)
+
+Patch 8.2.0001
+Problem: #endif comments do not reflect corresponding #ifdef.
+Solution: Update the comments. (Rene Nyffenegger, closes #5351)
+Files: src/ui.c
+
+Patch 8.2.0002
+Problem: "dj" only deletes first line of closed fold.
+Solution: Adjust last line of operator for linewise motion. (closes #5354)
+Files: src/ops.c, src/testdir/test_fold.mnv
+
+Patch 8.2.0003
+Problem: Build file dependencies are incomplete.
+Solution: Fix the dependencies. (Ken Takata, closes #5356)
+Files: src/Make_cyg_ming.mak, src/Make_mvc.mak, src/Make_vms.mms,
+ src/Makefile
+
+Patch 8.2.0004
+Problem: Get E685 and E931 if buffer reload is interrupted.
+Solution: Do not abort deleting a dummy buffer. (closes #5361)
+Files: src/buffer.c, src/proto/buffer.pro, src/testdir/test_trycatch.mnv,
+ src/ex_cmds.c, src/ex_getln.c, src/misc2.c, src/quickfix.c,
+ src/window.c, src/mnv.h
+
+Patch 8.2.0005
+Problem: Duplication in version info.
+Solution: Use preprocessor string concatenation. (Ken Takata, closes #5357)
+Files: src/version.h
+
+Patch 8.2.0006
+Problem: Test using long file name may fail. (Vladimir Lomov)
+Solution: Limit the name length. (Christian Brabandt, closes #5358)
+Files: src/testdir/test_display.mnv
+
+Patch 8.2.0007
+Problem: Popup menu positioned wrong with folding in two tabs.
+Solution: Update the cursor line height. (closes #5353)
+Files: src/move.c, src/proto/move.pro, src/popupmenu.c,
+ src/testdir/test_ins_complete.mnv,
+ src/testdir/dumps/Test_pum_with_folds_two_tabs.dump
+
+Patch 8.2.0008
+Problem: Test72 is old style.
+Solution: Convert to new style test. (Yegappan Lakshmanan, closes #5362)
+Files: src/Makefile, src/testdir/Make_all.mak, src/testdir/Make_vms.mms,
+ src/testdir/test72.in, src/testdir/test72.ok,
+ src/testdir/test_undo.mnv
+
+Patch 8.2.0009
+Problem: VMS: terminal version doesn't build.
+Solution: Move MIN definition. Adjust #ifdefs. (Zoltan Arpadffy)
+Files: src/bufwrite.c, src/fileio.c, src/ui.c, src/xxd/Make_vms.mms
+
+Patch 8.2.0010
+Problem: Test64 is old style.
+Solution: Convert to new style test. (Yegappan Lakshmanan, closes #5363)
+Files: src/Makefile, src/testdir/Make_all.mak, src/testdir/Make_vms.mms,
+ src/testdir/test64.in, src/testdir/test64.ok,
+ src/testdir/test95.in, src/testdir/test_regexp_latin.mnv
+
+Patch 8.2.0011
+Problem: Screen updating wrong when opening preview window.
+Solution: Redraw the window when the preview window opens.
+Files: src/popupmenu.c, src/testdir/test_ins_complete.mnv,
+ src/testdir/dumps/Test_pum_with_preview_win.dump
+
+Patch 8.2.0012
+Problem: Some undo functionality is not tested.
+Solution: Add a few more test cases. (Dominique Pellé, closes #5364)
+Files: src/testdir/test_undo.mnv
+
+Patch 8.2.0013
+Problem: Not using a typedef for condstack.
+Solution: Add a typedef.
+Files: src/structs.h, src/ex_docmd.c, src/ex_eval.c, src/userfunc.c,
+ src/ex_cmds.h, src/proto/ex_eval.pro
+
+Patch 8.2.0014
+Problem: Test69 and test95 are old style.
+Solution: Convert to new style tests. (Yegappan Lakshmanan, closes #5365)
+Files: src/Makefile, src/testdir/Make_all.mak, src/testdir/Make_vms.mms,
+ src/testdir/test69.in, src/testdir/test69.ok,
+ src/testdir/test95.in, src/testdir/test95.ok,
+ src/testdir/test_regexp_utf8.mnv, src/testdir/test_textformat.mnv
+
+Patch 8.2.0015
+Problem: Not all modeline variants are tested.
+Solution: Add modeline tests. (Dominique Pellé, closes #5369)
+Files: src/testdir/test_modeline.mnv
+
+Patch 8.2.0016
+Problem: Test name used twice, option not restored properly.
+Solution: Rename function, restore option with "&".
+Files: src/testdir/test_textformat.mnv
+
+Patch 8.2.0017
+Problem: OS/2 and MS-DOS are still mentioned, even though support was
+ removed long ago.
+Solution: Update documentation. (Yegappan Lakshmanan, closes #5368)
+Files: runtime/doc/autocmd.txt, runtime/doc/change.txt,
+ runtime/doc/cmdline.txt, runtime/doc/editing.txt,
+ runtime/doc/eval.txt, runtime/doc/gui.txt, runtime/doc/insert.txt,
+ runtime/doc/options.txt, runtime/doc/print.txt,
+ runtime/doc/quickfix.txt, runtime/doc/repeat.txt,
+ runtime/doc/starting.txt, runtime/doc/usr_01.txt,
+ runtime/doc/usr_05.txt, runtime/doc/usr_41.txt,
+ runtime/doc/vi_diff.txt, runtime/gmnvrc_example.mnv,
+ runtime/tools/README.txt, runtime/mnvrc_example.mnv, src/feature.h
+
+Patch 8.2.0018
+Problem: :join does not add white space where it should. (Zdenek Dohnal)
+Solution: Handle joining multiple lines properly.
+Files: src/ops.c, src/testdir/test_join.mnv
+
+Patch 8.2.0019
+Problem: Cannot get number of lines of another buffer.
+Solution: Add "linecount" to getbufinfo(). (Yasuhiro Matsumoto,
+ closes #5370)
+Files: src/evalbuffer.c, src/testdir/test_bufwintabinfo.mnv,
+ runtime/doc/eval.txt
+
+Patch 8.2.0020
+Problem: Mouse clicks in the command line not tested.
+Solution: Add tests. (Dominique Pellé, closes #5366)
+Files: src/testdir/test_termcodes.mnv
+
+Patch 8.2.0021
+Problem: Timer test fails too often on Travis with macOS.
+Solution: Be less strict with the time.
+Files: src/testdir/test_timers.mnv
+
+Patch 8.2.0022
+Problem: Click in popup window doesn't close it in the GUI. (Sergey Vlasov)
+Solution: When processing the selection also send a button release event.
+ (closes #5367)
+Files: src/gui.c
+
+Patch 8.2.0023
+Problem: Command line editing not sufficiently tested.
+Solution: Add more tests. (Dominique Pellé, closes #5374)
+Files: src/testdir/Make_all.mak, src/testdir/test_alot.mnv,
+ src/testdir/test_cmdline.mnv, src/testdir/test_ex_mode.mnv
+
+Patch 8.2.0024
+Problem: Filetype Rego not recognized.
+Solution: Add *.rego. (Matt Dunford, closes #5376)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.0025
+Problem: Repeated word in comment.
+Solution: Remove one. (Rene Nyffenegger, closes #5384)
+Files: src/structs.h
+
+Patch 8.2.0026
+Problem: Still some /* */ comments.
+Solution: Convert to // comments.
+Files: src/message.c, src/message_test.c, src/misc1.c, src/misc2.c,
+ src/move.c
+
+Patch 8.2.0027
+Problem: Still some /* */ comments.
+Solution: Convert to // comments.
+Files: src/iid_ole.c, src/indent.c, src/insexpand.c, src/iscygpty.c,
+ src/version.c
+
+Patch 8.2.0028
+Problem: Searchpairpos() is not tested.
+Solution: Add tests. Also improve searchpair() testing. (Dominique Pellé,
+ closes #5388)
+Files: src/testdir/test_search.mnv
+
+Patch 8.2.0029
+Problem: MS-Windows: crash with empty job command.
+Solution: Check for NULL result. (Yasuhiro Matsumoto, closes #5390)
+Files: src/channel.c, src/testdir/test_channel.mnv
+
+Patch 8.2.0030
+Problem: "gF" does not work on output of "verbose command".
+Solution: Recognize " line " and translations. (closes #5391)
+Files: src/globals.h, src/eval.c, src/findfile.c, src/testdir/test_gf.mnv
+
+Patch 8.2.0031 (after 8.2.0029)
+Problem: MS-Windows: test for empty job fails
+Solution: Check for error message, make it also fail on Unix.
+Files: src/channel.c, src/testdir/test_channel.mnv
+
+Patch 8.2.0032 (after 8.2.0031)
+Problem: MS-Windows: test for blank job fails
+Solution: Check before escaping.
+Files: src/channel.c, src/testdir/test_channel.mnv
+
+Patch 8.2.0033
+Problem: Crash when make_extmatch() runs out of memory.
+Solution: Check for NULL. (Dominique Pellé, closes #5392)
+Files: src/regexp_bt.c, src/regexp_nfa.c
+
+Patch 8.2.0034
+Problem: Missing check for out of memory.
+Solution: Check for NULL after mnv_strsave(). (Dominique Pellé,
+ closes #5393)
+Files: src/filepath.c
+
+Patch 8.2.0035
+Problem: Saving and restoring called_emsg is clumsy.
+Solution: Count the number of error messages.
+Files: src/message.c, src/buffer.c, src/channel.c, src/drawscreen.c,
+ src/ex_cmds2.c, src/gui.c, src/highlight.c, src/main.c,
+ src/regexp.c, src/search.c, src/testing.c, src/globals.h
+
+Patch 8.2.0036
+Problem: Not enough test coverage for match functions.
+Solution: Add a few more test cases. (Dominique Pellé, closes #5394)
+ Add error number.
+Files: src/testdir/test_match.mnv
+
+Patch 8.2.0037
+Problem: Missing renamed message.
+Solution: Now really add the error number.
+Files: src/highlight.c
+
+Patch 8.2.0038
+Problem: Spell suggestions insufficiently tested.
+Solution: Add spell suggestion tests. (Dominique Pellé, closes #5398)
+Files: src/testdir/test_spell.mnv
+
+Patch 8.2.0039
+Problem: Memory access error when "z=" has no suggestions.
+Solution: Check for negative index.
+Files: src/testdir/test_spell.mnv, src/spellsuggest.c
+
+Patch 8.2.0040
+Problem: Timers test is still flaky on Travis for Mac.
+Solution: Run separately instead of as part of test_alot.
+Files: src/testdir/Make_all.mak, src/testdir/test_alot.mnv
+
+Patch 8.2.0041
+Problem: Leaking memory when selecting spell suggestion.
+Solution: Free previous value at the right time.
+Files: src/spellsuggest.c
+
+Patch 8.2.0042
+Problem: Clearing funccal values twice.
+Solution: Remove clearing individual fields.
+Files: src/userfunc.c
+
+Patch 8.2.0043
+Problem: Timers test is still flaky on Travis for Mac.
+Solution: Increase maximum expected time.
+Files: src/testdir/test_timers.mnv
+
+Patch 8.2.0044
+Problem: Expression type is used inconsistently.
+Solution: Add "ETYPE_IS" and "ETYPE_ISNOT" as separate enum values. Rename
+ "TYPE_" to "ETYPE_" to avoid confusion.
+Files: src/structs.h, src/eval.c, src/proto/eval.pro, src/debugger.c
+
+Patch 8.2.0045 (after 8.2.0044)
+Problem: Script test fails.
+Solution: For numbers "is" and "isnot" work like "==" and "!=".
+Files: src/eval.c
+
+Patch 8.2.0046
+Problem: Tests for spell suggestions are slow.
+Solution: Use shorter words. Test with latin1 and utf-8 to cover more code.
+ (Dominique Pellé, closes #5399)
+Files: src/testdir/test_spell.mnv
+
+Patch 8.2.0047
+Problem: Cannot skip tests for specific MS-Windows platform.
+Solution: Add windowsversion().
+Files: src/os_win32.c, src/globals.h, src/evalfunc.c,
+ runtime/doc/eval.txt, src/testdir/gen_opt_test.mnv,
+ src/testdir/test_options.mnv
+
+Patch 8.2.0048
+Problem: Another timers test is flaky on Travis for Mac.
+Solution: Increase maximum expected time.
+Files: src/testdir/test_timers.mnv
+
+Patch 8.2.0049
+Problem: Command line completion not fully tested.
+Solution: Add more test cases. Make help sorting stable. (Dominique Pellé,
+ closes #5402)
+Files: src/ex_cmds.c, src/testdir/test_cd.mnv,
+ src/testdir/test_cmdline.mnv, src/testdir/test_help.mnv,
+ src/testdir/test_menu.mnv, src/testdir/test_options.mnv,
+ src/testdir/test_syntax.mnv
+
+Patch 8.2.0050
+Problem: After deleting a file mark it is still in mnvinfo.
+Solution: When a file mark was deleted more recently than the mark in the
+ merged mnvinfo file was updated, do not store the mark. (Pavol
+ Juhas, closes #5401, closes #1339)
+Files: src/mark.c, src/testdir/test_marks.mnv,
+ src/testdir/test_mnvinfo.mnv, src/mnvinfo.c
+
+Patch 8.2.0051 (after 8.2.0049)
+Problem: Command line completion test skipped. (Christian Brabandt)
+Solution: Invert condition.
+Files: src/testdir/test_cmdline.mnv
+
+Patch 8.2.0052
+Problem: More-prompt not properly tested.
+Solution: Add a test case. (Dominique Pellé, closes #5404)
+Files: src/testdir/test_messages.mnv
+
+Patch 8.2.0053
+Problem: windowsversion() does not always return the right value.
+Solution: Add a compatibility section in the manifest. (Ken Takata,
+ closes #5407)
+Files: src/gmnv.exe.mnf
+
+Patch 8.2.0054
+Problem: :diffget and :diffput don't have good completion.
+Solution: Add proper completion. (Dominique Pellé, closes #5409)
+Files: runtime/doc/eval.txt, src/buffer.c, src/cmdexpand.c,
+ src/testdir/test_diffmode.mnv, src/usercmd.c, src/mnv.h
+
+Patch 8.2.0055
+Problem: Cannot use ":gui" in mnvrc with MNVDLL enabled.
+Solution: Change the logic, check "gui.starting". (Ken Takata, closes #5408)
+Files: src/gui.c
+
+Patch 8.2.0056
+Problem: Execution stack is incomplete and inefficient.
+Solution: Introduce a proper execution stack and use it instead of
+ sourcing_name/sourcing_lnum. Create a string only when used.
+Files: src/structs.h, src/globals.h, src/autocmd.c, src/buffer.c
+ src/debugger.c, src/ex_docmd.c, src/ex_eval.c, src/highlight.c,
+ src/main.c, src/map.c, src/message.c, src/proto/scriptfile.pro,
+ src/scriptfile.c, src/option.c, src/profiler.c, src/spellfile.c,
+ src/term.c, src/testing.c, src/usercmd.c, src/userfunc.c,
+ src/kword_test.c, src/testdir/test_debugger.mnv
+
+Patch 8.2.0057 (after 8.2.0056)
+Problem: Cannot build with small features.
+Solution: Add #ifdefs.
+Files: src/scriptfile.c
+
+Patch 8.2.0058
+Problem: Running tests changes ~/.mnvinfo.
+Solution: Make 'mnvinfo' empty when summarizing tests results. (closes #5414)
+Files: src/testdir/summarize.mnv
+
+Patch 8.2.0059
+Problem: Compiler warnings for unused variables in small build. (Tony
+ Mechelynck)
+Solution: Add #ifdef.
+Files: src/scriptfile.c
+
+Patch 8.2.0060
+Problem: Message test only runs with one encoding. (Dominique Pellé)
+Solution: Run the test with "utf-8" and "latin1". Fix underflow. (related
+ to #5410)
+Files: src/message_test.c, src/message.c
+
+Patch 8.2.0061
+Problem: The execute stack can grow big and never shrinks.
+Solution: Reduce the size in garbage collect.
+Files: src/eval.c
+
+Patch 8.2.0062
+Problem: Memory test is flaky on FreeBSD.
+Solution: Add a short sleep before getting the first size.
+Files: src/testdir/test_memory_usage.mnv
+
+Patch 8.2.0063
+Problem: Wrong size argument to mnv_snprintf(). (Dominique Pellé)
+Solution: Reduce the size by the length. (related to #5410)
+Files: src/ops.c
+
+Patch 8.2.0064
+Problem: Diffmode completion doesn't use per-window setting.
+Solution: Check if a window is in diff mode. (Dominique Pellé, closes #5419)
+Files: src/buffer.c, src/testdir/test_diffmode.mnv
+
+Patch 8.2.0065
+Problem: Amiga and alikes: autoopen only used on Amiga OS4.
+Solution: Adjust #ifdefs. (Ola Söder, closes #5413)
+Files: src/os_amiga.c
+
+Patch 8.2.0066
+Problem: Some corners of mnv_snprintf() are not tested.
+Solution: Add a test in C. (Dominique Pellé, closes #5422)
+Files: src/message_test.c
+
+Patch 8.2.0067
+Problem: ERROR_UNKNOWN clashes on some systems.
+Solution: Rename ERROR_ to FCERR_. (Ola Söder, closes #5415)
+Files: src/evalfunc.c, src/userfunc.c, src/mnv.h
+
+Patch 8.2.0068
+Problem: Crash when using Python 3 with "utf32" encoding. (Dominique Pellé)
+Solution: Use "utf-8" whenever enc_utf8 is set. (closes #5423)
+Files: src/testdir/test_python3.mnv, src/if_py_both.h
+
+Patch 8.2.0069
+Problem: ETYPE_ is used for two different enums.
+Solution: Rename one to use EXPR_.
+Files: src/structs.h, src/eval.c, src/debugger.c
+
+Patch 8.2.0070
+Problem: Crash when using Python 3 with "debug" encoding. (Dominique Pellé)
+Solution: Use "euc-jp" whenever enc_dbcs is set.
+Files: src/testdir/test_python3.mnv, src/if_py_both.h
+
+Patch 8.2.0071
+Problem: Memory test often fails on Cirrus CI.
+Solution: Allow for more tolerance in the upper limit. Remove sleep.
+Files: src/testdir/test_memory_usage.mnv
+
+Patch 8.2.0072 (after 8.2.0071)
+Problem: Memory test still fails on Cirrus CI.
+Solution: Allow for a tiny bit more tolerance in the upper limit.
+Files: src/testdir/test_memory_usage.mnv
+
+Patch 8.2.0073
+Problem: Initializing globals with COMMA is clumsy.
+Solution: Use INIT2(), INIT3(), etc.
+Files: src/mnv.h, src/globals.h
+
+Patch 8.2.0074
+Problem: Python 3 unicode test sometimes fails.
+Solution: Make 'termencoding' empty. Correct number of error message.
+Files: src/change.c, runtime/doc/options.txt, runtime/doc/message.txt,
+ src/testdir/test_python3.mnv
+
+Patch 8.2.0075
+Problem: Python 3 unicode test still sometimes fails.
+Solution: Skip the test when 'termencoding' is not empty.
+Files: src/testdir/test_python3.mnv
+
+Patch 8.2.0076
+Problem: Python 3 unicode test fails on MS-Windows.
+Solution: Do not set 'encoding' to "debug" on MS-Windows.
+Files: src/testdir/test_python3.mnv
+
+Patch 8.2.0077
+Problem: settagstack() cannot truncate at current index.
+Solution: Add the "t" action. (Yegappan Lakshmanan, closes #5417)
+Files: runtime/doc/eval.txt, src/evalfunc.c, src/tag.c,
+ src/testdir/test_tagjump.mnv
+
+Patch 8.2.0078
+Problem: Expanding <sfile> works differently the second time.
+Solution: Keep the expanded name when redefining a function. (closes #5425)
+Files: src/testdir/test_mnvscript.mnv, src/userfunc.c
+
+Patch 8.2.0079
+Problem: Python 3 unicode test still fails on MS-Windows.
+Solution: Do not set 'encoding' to "euc-tw" on MS-Windows.
+Files: src/testdir/test_python3.mnv
+
+Patch 8.2.0080
+Problem: Globals using INIT4() are not in the tags file.
+Solution: Adjust the tags command.
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.0081
+Problem: MS-Windows also need the change to support INIT4().
+Solution: Add the ctags arguments. (Ken Takata)
+Files: src/Make_cyg_ming.mak, src/Make_mvc.mak
+
+Patch 8.2.0082
+Problem: When reusing a buffer listeners are not cleared. (Axel Forsman)
+Solution: Clear listeners when reusing a buffer. (closes #5431)
+Files: src/testdir/test_listener.mnv, src/buffer.c
+
+Patch 8.2.0083
+Problem: Text properties wrong when tabs and spaces are exchanged.
+Solution: Take text properties into account. (Nobuhiro Takasaki,
+ closes #5427)
+Files: src/edit.c, src/testdir/test_textprop.mnv
+
+Patch 8.2.0084
+Problem: Complete item "user_data" can only be a string.
+Solution: Accept any type of variable. (closes #5412)
+Files: src/testdir/test_ins_complete.mnv, src/insexpand.c, src/dict.c,
+ src/proto/dict.pro, src/eval.c, runtime/doc/insert.txt
+
+Patch 8.2.0085
+Problem: Dead code in builtin functions.
+Solution: Clean up the code.
+Files: src/evalvars.c, src/sound.c, src/textprop.c
+
+Patch 8.2.0086 (after 8.2.0084)
+Problem: Build error for small version. (Tony Mechelynck)
+Solution: Only use "user_data" with the +eval feature. Remove unused
+ variable.
+Files: src/insexpand.c, src/dict.c
+
+Patch 8.2.0087
+Problem: Crash in command line expansion when out of memory.
+Solution: Check for NULL pointer. Also make ExpandGeneric() static.
+ (Dominique Pellé, closes #5437)
+Files: src/cmdexpand.c, src/proto/cmdexpand.pro
+
+Patch 8.2.0088
+Problem: Insufficient tests for tags; bug in using extra tag field when
+ using an ex command to position the cursor.
+Solution: Fix the bug, add more tests. (Yegappan Lakshmanan, closes #5439)
+Files: runtime/doc/tagsrch.txt, src/tag.c,
+ src/testdir/test_ins_complete.mnv, src/testdir/test_tagfunc.mnv,
+ src/testdir/test_tagjump.mnv, src/testdir/test_taglist.mnv
+
+Patch 8.2.0089
+Problem: Crash when running out of memory in :setfiletype completion.
+Solution: Do not allocate memory. (Dominique Pellé, closes #5438)
+Files: src/cmdexpand.c
+
+Patch 8.2.0090
+Problem: Generated files show up in git status.
+Solution: Ignore a few more files.
+Files: .gitignore
+
+Patch 8.2.0091
+Problem: Compiler warnings for size_t / int types.
+Solution: Change type to size_t. (Mike Williams)
+Files: src/scriptfile.c
+
+Patch 8.2.0092
+Problem: Tags functionality insufficiently tested.
+Solution: Add more tags tests. (Yegappan Lakshmanan, closes #5446)
+Files: src/testdir/test_tagjump.mnv
+
+Patch 8.2.0093
+Problem: win_splitmove() can make MNV hang.
+Solution: Check windows exists in the current tab page. (closes #5444)
+Files: src/testdir/test_window_cmd.mnv, src/evalwindow.c
+
+Patch 8.2.0094
+Problem: MS-Windows: cannot build with Strawberry Perl 5.30.
+Solution: Define __builtin_expect() as a workaround. (Ken Takata,
+ closes #5267)
+Files: src/if_perl.xs
+
+Patch 8.2.0095
+Problem: Cannot specify exit code for :cquit.
+Solution: Add optional argument. (Thinca, Yegappan Lakshmanan, closes #5442)
+Files: runtime/doc/quickfix.txt, src/ex_cmds.h, src/ex_docmd.c,
+ src/testdir/test_quickfix.mnv
+
+Patch 8.2.0096
+Problem: Cannot create tiny popup window in last column. (Daniel Steinberg)
+Solution: Remove position limit. (closes #5447)
+Files: src/popupwin.c, src/testdir/test_popupwin.mnv,
+ src/testdir/dumps/Test_popupwin_20.dump,
+ src/testdir/dumps/Test_popupwin_21.dump
+
+Patch 8.2.0097
+Problem: Crash with autocommand and spellfile. (Tim Pope)
+Solution: Do not pop exestack when not pushed. (closes #5450)
+Files: src/testdir/test_autocmd.mnv, src/spellfile.c
+
+Patch 8.2.0098
+Problem: Exe stack length can be wrong without being detected.
+Solution: Add a check when ABORT_ON_INTERNAL_ERROR is defined.
+Files: src/macros.h, src/autocmd.c, src/buffer.c, src/ex_docmd.c,
+ src/main.c, src/map.c, src/scriptfile.c, src/spellfile.c,
+ src/userfunc.c
+
+Patch 8.2.0099
+Problem: Use of NULL pointer when out of memory.
+Solution: Check for NULL pointer. (Dominique Pellé, closes #5449)
+Files: src/cmdexpand.c
+
+Patch 8.2.0100
+Problem: Macros for Ruby are too complicated.
+Solution: Do not use DYNAMIC_RUBY_VER, use RUBY_VERSION. (Ken Takata,
+ closes #5452)
+Files: src/Make_cyg_ming.mak, src/Make_mvc.mak, src/auto/configure,
+ src/configure.ac, src/if_ruby.c
+
+Patch 8.2.0101
+Problem: Crash when passing null object to ":echomsg".
+Solution: Check for NULL pointer. (Yasuhiro Matsumoto, closes #5460)
+Files: src/eval.c, src/testdir/test_messages.mnv
+
+Patch 8.2.0102
+Problem: Messages test fails in small version.
+Solution: Only use test_null_job() when available.
+Files: src/testdir/test_messages.mnv
+
+Patch 8.2.0103
+Problem: Using null object with execute() has strange effects.
+Solution: Give an error message for Job and Channel.
+Files: src/testdir/test_execute_func.mnv, src/globals.h, src/eval.c,
+ src/evalfunc.c
+
+Patch 8.2.0104
+Problem: Using channel or job with ":execute" has strange effects.
+Solution: Give an error message for Job and Channel.
+Files: src/testdir/test_eval_stuff.mnv, src/eval.c
+
+Patch 8.2.0105
+Problem: MNV license not easy to find on github.
+Solution: Add a separate LICENCE file. (closes #5458)
+Files: LICENSE, Filelist
+
+Patch 8.2.0106
+Problem: Printf formats are not exactly right.
+Solution: Adjust signed/unsigned conversions. (Frazer Clews, closes #5456)
+Files: runtime/tools/ccfilter.c, src/libvterm/src/parser.c,
+ src/libvterm/src/pen.c, src/ui.c
+
+Patch 8.2.0107
+Problem: Hgignore is out of sync from gitignore.
+Solution: Add lines to hgignore. (Ken Takata)
+Files: .hgignore
+
+Patch 8.2.0108
+Problem: When sign text is changed a manual redraw is needed. (Pontus
+ Lietzler)
+Solution: Redraw automatically. (closes #5455)
+Files: src/testdir/test_signs.mnv, src/sign.c,
+ src/testdir/dumps/Test_sign_cursor_1.dump,
+ src/testdir/dumps/Test_sign_cursor_2.dump,
+ src/testdir/dumps/Test_sign_cursor_3.dump,
+ src/testdir/dumps/Test_sign_cursor_01.dump,
+ src/testdir/dumps/Test_sign_cursor_02.dump
+
+Patch 8.2.0109
+Problem: Corrupted text properties when expanding spaces.
+Solution: Reallocate the line. (Nobuhiro Takasaki, closes #5457)
+Files: src/edit.c, src/testdir/test_textprop.mnv
+
+Patch 8.2.0110
+Problem: prop_find() is not implemented.
+Solution: Implement prop_find(). (Ryan Hackett, closes #5421, closes #4970)
+Files: src/evalfunc.c, src/proto/textprop.pro,
+ src/testdir/test_textprop.mnv, src/textprop.c,
+ runtime/doc/textprop.txt
+
+Patch 8.2.0111
+Problem: VAR_SPECIAL is also used for booleans.
+Solution: Add VAR_BOOL for better type checking.
+Files: src/structs.h, src/dict.c, src/eval.c, src/evalfunc.c,
+ src/evalvars.c, src/if_lua.c, src/if_mzsch.c, src/if_py_both.h,
+ src/if_ruby.c, src/json.c, src/popupmenu.c, src/proto/dict.pro,
+ src/testing.c, src/mnv.h, src/mnvinfo.c
+
+Patch 8.2.0112
+Problem: Illegal memory access when using 'cindent'.
+Solution: Check for NUL byte. (Dominique Pellé, closes #5470)
+Files: src/cindent.c, src/testdir/test_cindent.mnv
+
+Patch 8.2.0113 (after 8.2.0095)
+Problem: "make cmdidxs" fails.
+Solution: Allow address for ":cquit". Add --not-a-term to avoid a delay.
+Files: src/ex_cmds.h, src/Makefile, src/Make_cyg_ming.mak,
+ src/Make_mvc.mak
+
+Patch 8.2.0114
+Problem: Info about sourced scripts is scattered.
+Solution: Use scriptitem_T for info about a script, including s: variables.
+ Drop ga_scripts.
+Files: src/structs.h, src/evalvars.c, src/scriptfile.c, src/eval.c
+
+Patch 8.2.0115
+Problem: Byte2line() does not work correctly with text properties. (Billie
+ Cleek)
+Solution: Take the bytes of the text properties into account.
+ (closes #5334)
+Files: src/testdir/test_textprop.mnv, src/memline.c
+
+Patch 8.2.0116
+Problem: BufEnter autocmd not triggered on ":tab drop". (Andy Stewart)
+Solution: Decrement autocmd_no_enter for the last file. (closes #1660,
+ closes #5473)
+Files: src/arglist.c, src/testdir/test_tabpage.mnv
+
+Patch 8.2.0117
+Problem: Crash when using gettabwinvar() with invalid arguments. (Yilin
+ Yang)
+Solution: Use "curtab" if "tp" is NULL. (closes #5475)
+Files: src/evalwindow.c, src/testdir/test_getvar.mnv
+
+Patch 8.2.0118
+Problem: Crash when cycling to buffers involving popup window.
+Solution: Do not decrement buffer reference count.
+Files: src/popupwin.c, src/testdir/test_popupwin.mnv,
+ src/testdir/dumps/Test_popupwin_infopopup_7.dump
+
+Patch 8.2.0119
+Problem: Message test fails on some platforms. (Elimar Riesebieter)
+Solution: Add type cast to mnv_snprintf() argument. (Dominique Pellé)
+Files: src/message_test.c
+
+Patch 8.2.0120
+Problem: virtcol() does not check arguments to be valid, which may lead to
+ a crash.
+Solution: Check the column to be valid. Do not decrement MAXCOL.
+ (closes #5480)
+Files: src/evalfunc.c, src/testdir/test_marks.mnv
+
+Patch 8.2.0121
+Problem: filter() and map() on blob don't work.
+Solution: Correct the code. (closes #5483)
+Files: src/list.c, src/testdir/test_blob.mnv
+
+Patch 8.2.0122
+Problem: Readme files still mention MS-DOS.
+Solution: Update readme files. (Ken Takata, closes #5486)
+Files: README.md, README.txt, READMEdir/README_dos.txt,
+ READMEdir/README_srcdos.txt, READMEdir/README_w32s.txt,
+ runtime/doc/os_win32.txt
+
+Patch 8.2.0123
+Problem: complete_info() does not work when CompleteDone is triggered.
+Solution: Trigger CompleteDone before clearing the info.
+Files: src/insexpand.c, runtime/doc/autocmd.txt,
+ src/testdir/test_ins_complete.mnv
+
+Patch 8.2.0124
+Problem: Compiler warnings for variable types.
+Solution: Change type, add type cast. (Mike Williams)
+Files: src/memline.c
+
+Patch 8.2.0125
+Problem: :mode no longer works for any system.
+Solution: Always give an error message.
+Files: src/ex_docmd.c, runtime/doc/quickref.txt, src/os_amiga.c,
+ src/proto/os_amiga.pro, src/os_mswin.c, src/proto/os_mswin.pro,
+ src/os_unix.c, src/proto/os_unix.pro
+
+Patch 8.2.0126 (after 8.2.0124)
+Problem: Textprop test fails.
+Solution: Fix sign in computation.
+Files: src/memline.c
+
+Patch 8.2.0127
+Problem: Some buffer commands work in a popup window.
+Solution: Disallow :bnext, :bprev, etc. (Naruhiko Nishino, closes #5494)
+Files: src/ex_docmd.c, src/testdir/test_popupwin.mnv
+
+Patch 8.2.0128
+Problem: Cannot list options one per line.
+Solution: Use ":set!" to list one option per line.
+Files: src/ex_docmd.c, src/option.c, src/proto/option.pro, src/mnv.h,
+ src/ex_cmds.h, src/optiondefs.h, src/testdir/test_options.mnv,
+ runtime/doc/options.txt
+
+Patch 8.2.0129
+Problem: MS-Windows installer doesn't use Turkish translations.
+Solution: Enable the Turkish translations and fix a few. (Emir Sarı,
+ closes #5493)
+Files: nsis/gmnv.nsi, nsis/lang/turkish.nsi
+
+Patch 8.2.0130
+Problem: Python3 ranges are not tested.
+Solution: Add test. (Dominique Pellé, closes #5498)
+Files: src/testdir/test_python3.mnv
+
+Patch 8.2.0131
+Problem: Command line is not cleared when switching tabs and the command
+ line height differs.
+Solution: Set the "clear_cmdline" flag when needed. (Naruhiko Nishino,
+ closes #5495)
+Files: src/testdir/dumps/Test_cmdlineclear_tabenter.dump,
+ src/testdir/test_cmdline.mnv, src/window.c
+
+Patch 8.2.0132
+Problem: Script may be re-used when deleting and creating a new one.
+Solution: When the inode matches, also check the file name.
+Files: src/scriptfile.c, src/testdir/test_source.mnv
+
+Patch 8.2.0133
+Problem: Invalid memory access with search command.
+Solution: When :normal runs out of characters in bracketed paste mode break
+ out of the loop.(closes #5511)
+Files: src/testdir/test_search.mnv, src/edit.c
+
+Patch 8.2.0134
+Problem: Some map functionality not covered by tests.
+Solution: Add tests. (Yegappan Lakshmanan, closes #5504)
+Files: src/testdir/test_maparg.mnv, src/testdir/test_mapping.mnv
+
+Patch 8.2.0135 (after 8.2.0133)
+Problem: Bracketed paste can still cause invalid memory access. (Dominique
+ Pellé)
+Solution: Check for NULL pointer.
+Files: src/edit.c, src/testdir/test_search.mnv
+
+Patch 8.2.0136
+Problem: Stray ch_logfile() call.
+Solution: Remove it. (closes #5503)
+Files: src/testdir/test_source.mnv
+
+Patch 8.2.0137
+Problem: Crash when using win_execute() from a new tab.
+Solution: Set the tp_*win pointers. (Ozaki Kiichi, closes #5512)
+Files: src/testdir/test_winbuf_close.mnv, src/window.c
+
+Patch 8.2.0138
+Problem: Memory leak when starting a job fails.
+Solution: Free the list of arguments. (Ozaki Kiichi, closes #5510)
+Files: src/channel.c, src/testdir/test_channel.mnv
+
+Patch 8.2.0139
+Problem: MS-Windows: default for IME is inconsistent.
+Solution: Also make IME default enabled with MVC. (Ken Takata, closes #5508)
+Files: src/Make_mvc.mak
+
+Patch 8.2.0140
+Problem: CI does not test building doc tags.
+Solution: Add the mnvtags/gcc build. Cleanup showing version. (Ozaki Kiichi,
+ closes #5513)
+Files: .travis.yml, Filelist, ci/if_ver-1.mnv, ci/if_ver-2.mnv,
+ ci/if_ver-cmd.mnv, runtime/doc/Makefile, runtime/doc/doctags.mnv,
+ src/testdir/if_ver-1.mnv, src/testdir/if_ver-2.mnv
+
+Patch 8.2.0141
+Problem: No swift filetype detection.
+Solution: Add swift, swiftgyb and sil. (Emir Sarı, closes #5517)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.0142
+Problem: Possible to enter popup window with CTRL-W p. (John Devin)
+Solution: Check entered window is not a popup window. (closes #5515)
+Files: src/window.c, src/popupwin.c, src/testdir/test_popupwin.mnv,
+ src/testdir/dumps/Test_popupwin_previewpopup_9.dump,
+ src/testdir/dumps/Test_popupwin_previewpopup_10.dump
+
+Patch 8.2.0143
+Problem: Coverity warning for possible use of NULL pointer.
+Solution: Check argv is not NULL.
+Files: src/channel.c
+
+Patch 8.2.0144
+Problem: Some mapping code is not fully tested.
+Solution: Add more test cases. (Yegappan Lakshmanan, closes #5519)
+Files: src/testdir/test_langmap.mnv, src/testdir/test_maparg.mnv,
+ src/testdir/test_mapping.mnv
+
+Patch 8.2.0145
+Problem: Using #error for compilation errors should be OK now.
+Solution: Use #error. (Ken Takata, closes #5299)
+Files: src/blowfish.c, src/mnv.h
+
+Patch 8.2.0146
+Problem: Wrong indent when 'showbreak' and 'breakindent' are set and
+ 'briopt' includes "sbr".
+Solution: Reset "need_showbreak" where needed. (Ken Takata, closes #5523)
+Files: src/drawline.c, src/testdir/test_breakindent.mnv
+
+Patch 8.2.0147
+Problem: Block Visual mode operators not correct when 'linebreak' set.
+Solution: Set w_p_lbr to lbr_saved more often. (Ken Takata, closes #5524)
+Files: src/ops.c, src/testdir/test_listlbr.mnv
+
+Patch 8.2.0148
+Problem: Mapping related function in wrong source file.
+Solution: Move the function. Add a few more test cases. (Yegappan
+ Lakshmanan, closes #5528)
+Files: src/map.c, src/proto/term.pro, src/term.c,
+ src/testdir/test_mapping.mnv
+
+Patch 8.2.0149
+Problem: Maintaining a MNV9 branch separately is more work.
+Solution: Merge the MNV9 script changes.
+Files: README.md, README_MNV9.md, runtime/doc/Makefile,
+ runtime/doc/eval.txt, runtime/doc/options.txt, runtime/doc/tags,
+ runtime/doc/mnv9.txt, runtime/ftplugin/mnv.mnv,
+ runtime/indent/mnv.mnv, runtime/syntax/mnv.mnv,
+ src/Make_cyg_ming.mak, src/Make_mvc.mak, src/Makefile, src/blob.c,
+ src/channel.c, src/dict.c, src/eval.c, src/evalbuffer.c,
+ src/evalfunc.c, src/evalvars.c, src/ex_cmdidxs.h, src/ex_cmds.h,
+ src/ex_docmd.c, src/ex_eval.c, src/filepath.c, src/globals.h,
+ src/gui.c, src/if_lua.c, src/if_py_both.h, src/insexpand.c,
+ src/json.c, src/list.c, src/macros.h, src/main.c, src/message.c,
+ src/misc1.c, src/proto.h, src/proto/blob.pro, src/proto/eval.pro,
+ src/proto/evalfunc.pro, src/proto/evalvars.pro,
+ src/proto/ex_docmd.pro, src/proto/ex_eval.pro, src/proto/list.pro,
+ src/proto/message.pro, src/proto/scriptfile.pro,
+ src/proto/userfunc.pro, src/proto/mnv9compile.pro,
+ src/proto/mnv9execute.pro, src/proto/mnv9script.pro,
+ src/scriptfile.c, src/session.c, src/structs.h, src/syntax.c,
+ src/testdir/Make_all.mak, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_script.mnv, src/testing.c, src/userfunc.c,
+ src/mnv.h, src/mnv9.h, src/mnv9compile.c, src/mnv9execute.c,
+ src/mnv9script.c, src/mnvinfo.c
+
+Patch 8.2.0150
+Problem: Cannot define python function when using :execute. (Yasuhiro
+ Matsumoto)
+Solution: Do not recognize "def" inside "function.
+Files: src/testdir/test_mnv9_script.mnv, src/userfunc.c
+
+Patch 8.2.0151
+Problem: Detecting a script was already sourced is unreliable.
+Solution: Do not use the inode number.
+Files: src/scriptfile.c, src/structs.h, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0152
+Problem: Restoring ctrl_x_mode is not needed.
+Solution: Remove restoring the old value, it's changed again soon.
+Files: src/insexpand.c
+
+Patch 8.2.0153
+Problem: Warning shows when listing version info.
+Solution: Use "-u NONE". (Ozaki Kiichi, closes #5534)
+Files: .travis.yml
+
+Patch 8.2.0154
+Problem: Reallocating the list of scripts is inefficient.
+Solution: Instead of using a growarray of scriptitem_T, store pointers and
+ allocate each scriptitem_T separately. Also avoids that the
+ growarray pointers change when sourcing a new script.
+Files: src/globals.h, src/eval.c, src/evalvars.c, src/ex_docmd.c,
+ src/profiler.c, src/scriptfile.c, src/mnv9compile.c,
+ src/mnv9execute.c, src/mnv9script.c
+
+Patch 8.2.0155
+Problem: Warnings from MinGW compiler. (John Marriott) Json test fails when
+ building without +float feature.
+Solution: Init variables. Fix Json parsing. Skip a few tests that require
+ the +float feature.
+Files: src/mnv9script.c, src/mnv9compile.c, src/mnv9execute.c,
+ src/if_py_both.h, src/json.c, src/testdir/test_method.mnv
+
+Patch 8.2.0156
+Problem: Various typos in source files and tests.
+Solution: Fix the typos. (Emir Sarı, closes #5532)
+Files: Makefile, src/INSTALLvms.txt, src/Make_vms.mms, src/beval.h,
+ src/buffer.c, src/charset.c, src/evalvars.c, src/ex_cmds.c,
+ src/ex_docmd.c, src/getchar.c, src/gui.c, src/gui_mac.c,
+ src/gui_photon.c, src/if_perl.xs,
+ src/libvterm/t/11state_movecursor.test,
+ src/libvterm/t/41screen_unicode.test, src/mbyte.c, src/memline.c,
+ src/normal.c, src/ops.c, src/option.c, src/option.h,
+ src/os_unix.c, src/os_win32.c, src/quickfix.c, src/register.c,
+ src/spell.c, src/tag.c, src/term.c,
+ src/testdir/test_breakindent.mnv, src/testdir/test_channel.mnv,
+ src/testdir/test_cindent.mnv, src/testdir/test_digraph.mnv,
+ src/testdir/test_edit.mnv, src/testdir/test_netbeans.mnv,
+ src/testdir/test_quickfix.mnv, src/testdir/test_registers.mnv,
+ src/testdir/test_stat.mnv, src/ui.c, src/xxd/xxd.c
+
+Patch 8.2.0157
+Problem: MNV9 script files not in list of distributed files.
+Solution: Add the entries.
+Files: Filelist
+
+Patch 8.2.0158 (after 8.2.0123)
+Problem: Triggering CompleteDone earlier is not backwards compatible.
+ (Daniel Hahler)
+Solution: Add CompleteDonePre instead.
+Files: src/insexpand.c, runtime/doc/autocmd.txt, src/autocmd.c,
+ src/mnv.h, src/testdir/test_ins_complete.mnv
+
+Patch 8.2.0159
+Problem: Non-materialized range() list causes problems. (Fujiwara Takuya)
+Solution: Materialize the list where needed.
+Files: src/testdir/test_functions.mnv, src/testdir/test_python3.mnv,
+ src/userfunc.c, src/evalfunc.c, src/highlight.c, src/evalvars.c,
+ src/popupmenu.c, src/insexpand.c, src/json.c, src/channel.c,
+ src/eval.c
+
+Patch 8.2.0160 (after 8.2.0159)
+Problem: Range test fails.
+Solution: Include change in list code. (#5541)
+Files: src/list.c
+
+Patch 8.2.0161
+Problem: Not recognizing .gv file as dot filetype.
+Solution: Add *.gv to dot pattern. (closes #5544)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.0162
+Problem: Balloon test fails in the GUI.
+Solution: Skip test in the GUI.
+Files: src/testdir/test_functions.mnv
+
+Patch 8.2.0163
+Problem: Test hangs on MS-Windows console.
+Solution: use feedkeys() instead of test_feedinput(). (Ken Takata)
+Files: src/testdir/test_functions.mnv, src/testing.c
+
+Patch 8.2.0164
+Problem: Test_alot takes too long.
+Solution: Run several tests individually.
+Files: src/testdir/test_alot.mnv, src/testdir/Make_all.mak
+
+Patch 8.2.0165
+Problem: Coverity warning for using NULL pointer.
+Solution: Add missing "else".
+Files: src/mnv9compile.c
+
+Patch 8.2.0166
+Problem: Coverity warning for using uninitialized variable.
+Solution: Check for failure.
+Files: src/mnv9execute.c
+
+Patch 8.2.0167
+Problem: Coverity warning for ignoring return value.
+Solution: Check the return value and jump if failed.
+Files: src/mnv9execute.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.0168
+Problem: Coverity warning for assigning NULL to an option.
+Solution: Use empty string instead of NULL.
+Files: src/mnv9execute.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.0169
+Problem: Coverity warning for dead code.
+Solution: Check if inside try-finally.
+Files: src/mnv9execute.c
+
+Patch 8.2.0170
+Problem: Coverity warning for ignoring return value.
+Solution: Check the return value and return if failed.
+Files: src/mnv9compile.c
+
+Patch 8.2.0171
+Problem: Coverity warning for using uninitialized buffer.
+Solution: Check the skip flag.
+Files: src/userfunc.c
+
+Patch 8.2.0172
+Problem: Coverity warning for not restoring character.
+Solution: Restore the character also in case of failure.
+Files: src/mnv9script.c
+
+Patch 8.2.0173
+Problem: Build fails with old compiler.
+Solution: Do not use anonymous unions. (John Marriott)
+Files: src/mnv9compile.c, src/evalvars.c, src/list.c, src/structs.h,
+ src/evalfunc.c, src/channel.c, src/if_mzsch.c, src/if_py_both.h
+
+Patch 8.2.0174
+Problem: Various commands not completely tested.
+Solution: Add more test cases. (Yegappan Lakshmanan, closes #5551)
+Files: src/testdir/test_excmd.mnv, src/testdir/test_fnameescape.mnv,
+ src/testdir/test_ga.mnv, src/testdir/test_global.mnv,
+ src/testdir/test_move.mnv, src/testdir/test_options.mnv,
+ src/testdir/test_packadd.mnv, src/testdir/test_sort.mnv,
+ src/testdir/test_substitute.mnv, src/testdir/test_textformat.mnv,
+ src/testdir/test_writefile.mnv
+
+Patch 8.2.0175
+Problem: Crash when removing list element in map().
+Solution: Lock the list. (closes #2652)
+Files: src/testdir/test_filter_map.mnv, src/list.c
+
+Patch 8.2.0176
+Problem: Generating os headers does not work for Swedish.
+Solution: Set the locale to C. (Christian Brabandt, closes #5258)
+Files: src/osdef.sh
+
+Patch 8.2.0177
+Problem: Memory leak in get_tags().
+Solution: Free matches when finding a pseudo-tag line. (Dominique Pellé,
+ closes #5553)
+Files: src/tag.c
+
+Patch 8.2.0178
+Problem: With VTP the screen may not be restored properly.
+Solution: Add another set of saved RGB values. (Nobuhiro Takasaki,
+ closes #5548)
+Files: src/os_win32.c
+
+Patch 8.2.0179
+Problem: Still a few places where range() does not work.
+Solution: Fix using range() causing problems.
+Files: src/terminal.c, src/testdir/test_functions.mnv,
+ src/testdir/test_popupwin.mnv, src/popupwin.c, src/tag.c,
+ src/testdir/dumps/Test_popupwin_20.dump,
+ src/testdir/dumps/Test_popupwin_21.dump,
+ src/testdir/dumps/Test_popup_settext_07.dump, src/globals.h
+
+Patch 8.2.0180
+Problem: Test for wrapmargin fails if terminal is not 80 columns.
+Solution: Vertical split the window. (Ken Takata, closes #5554)
+Files: src/testdir/test_textformat.mnv
+
+Patch 8.2.0181
+Problem: Problems parsing :term arguments.
+Solution: Improve parsing, fix memory leak, add tests. (Ozaki Kiichi,
+ closes #5536)
+Files: src/channel.c, src/proto/channel.pro, src/structs.h,
+ src/terminal.c, src/testdir/test_terminal.mnv
+
+Patch 8.2.0182
+Problem: Min() and max() materialize a range() list.
+Solution: Compute the result without materializing the list. (#5541)
+Files: src/evalfunc.c
+
+Patch 8.2.0183
+Problem: Tests fail when the float feature is disabled.
+Solution: Skip tests that don't work without float support.
+Files: src/testdir/shared.mnv, src/testdir/test_blob.mnv,
+ src/testdir/test_channel.mnv, src/testdir/test_cscope.mnv,
+ src/testdir/test_execute_func.mnv, src/testdir/test_expr.mnv,
+ src/testdir/test_functions.mnv, src/testdir/test_lambda.mnv,
+ src/testdir/test_listdict.mnv, src/testdir/test_lua.mnv,
+ src/testdir/test_options.mnv, src/testdir/test_partial.mnv,
+ src/testdir/test_ruby.mnv, src/testdir/test_sort.mnv,
+ src/testdir/test_timers.mnv, src/testdir/test_true_false.mnv,
+ src/testdir/test_user_func.mnv, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnvscript.mnv, src/testdir/test_regexp_latin.mnv,
+ src/testdir/test_glob2regpat.mnv
+
+Patch 8.2.0184
+Problem: Blob test fails.
+Solution: Check for different error when float feature is missing.
+Files: src/testdir/test_blob.mnv
+
+Patch 8.2.0185
+Problem: MNV9 script: cannot use "if has()" to skip lines.
+Solution: Evaluate constant expression at runtime.
+Files: src/mnv9compile.c, src/evalfunc.c, src/proto/evalfunc.pro,
+ src/userfunc.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0186
+Problem: A couple of tests may fail when features are missing.
+Solution: Check for features. (Dominique Pellé, closes #5561)
+Files: src/testdir/test_functions.mnv, src/testdir/test_highlight.mnv
+
+Patch 8.2.0187
+Problem: Redundant code.
+Solution: Remove unused assignments. (Dominique Pellé, closes #5557)
+Files: src/mnv9compile.c
+
+Patch 8.2.0188
+Problem: Check commands don't work well with MNV9 script.
+Solution: Improve constant expression handling.
+Files: src/mnv9compile.c, src/testdir/check.mnv,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.0189
+Problem: cd() with NULL argument crashes.
+Solution: Check for NULL. (Ken Takata, closes #5558)
+Files: src/testdir/test_cd.mnv, src/ex_docmd.c
+
+Patch 8.2.0190
+Problem: Kotlin files are not recognized.
+Solution: Detect Kotlin files. (Alkeryn, closes #5560)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.0191
+Problem: Cannot put a terminal in a popup window.
+Solution: Allow opening a terminal in a popup window. It will always have
+ keyboard focus until closed.
+Files: src/popupwin.c, src/proto/popupwin.pro, src/terminal.c,
+ src/proto/terminal.pro, src/macros.h, src/mouse.c,
+ src/highlight.c, src/drawline.c, src/optionstr.c, src/window.c,
+ src/testdir/test_terminal.mnv,
+ src/testdir/dumps/Test_terminal_popup_1.dump,
+ src/testdir/dumps/Test_terminal_popup_2.dump,
+ src/testdir/dumps/Test_terminal_popup_3.dump
+
+Patch 8.2.0192 (after 8.2.0191)
+Problem: Build failure without +terminal feature.
+Solution: Add #ifdefs.
+Files: src/popupwin.c
+
+Patch 8.2.0193 (after 8.2.0191)
+Problem: Still build failure without +terminal feature.
+Solution: Add more #ifdefs.
+Files: src/macros.h
+
+Patch 8.2.0194 (after 8.2.0193)
+Problem: Some commands can cause problems in terminal popup.
+Solution: Disallow more commands.
+Files: src/macros.h, src/popupwin.c, src/proto/popupwin.pro,
+ src/arglist.c, src/ex_docmd.c, src/window.c,
+ src/testdir/test_terminal.mnv
+
+Patch 8.2.0195
+Problem: Some tests fail when run in the GUI.
+Solution: Make sure the window width is enough. In the GUI run terminal MNV
+ in the terminal, if possible.
+Files: src/testdir/test_highlight.mnv, src/testdir/check.mnv,
+ src/testdir/test_terminal.mnv
+
+Patch 8.2.0196
+Problem: Blocking commands for a finished job in a popup window.
+Solution: Do not block commands if the job has finished. Adjust test.
+Files: src/popupwin.c, src/testdir/test_popupwin.mnv, src/window.c,
+ src/terminal.c, src/proto/terminal.pro
+
+Patch 8.2.0197
+Problem: Some Ex commands not sufficiently tested.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #5565)
+Files: src/testdir/test_global.mnv, src/testdir/test_help.mnv,
+ src/testdir/test_help_tagjump.mnv, src/testdir/test_options.mnv,
+ src/testdir/test_substitute.mnv, src/testdir/test_textformat.mnv,
+ src/testdir/test_writefile.mnv
+
+Patch 8.2.0198
+Problem: No tests for y/n prompt.
+Solution: Add tests. (Dominique Pellé, closes #5564)
+Files: src/testdir/test_messages.mnv
+
+Patch 8.2.0199
+Problem: MNV9 script commands not sufficiently tested.
+Solution: Add more tests. Fix script-local function use.
+Files: src/mnv9execute.c, src/testdir/test_mnv9_script.mnv,
+ src/userfunc.c
+
+Patch 8.2.0200
+Problem: MNV9 script commands not sufficiently tested.
+Solution: Add more tests. Fix storing global variable. Make script
+ variables work.
+Files: src/mnv9compile.c, src/mnv9execute.c, src/mnv9.h, src/evalvars.c,
+ src/proto/evalvars.pro, src/testdir/test_mnv9_script.mnv,
+ src/misc1.c, src/proto/misc1.pro
+
+Patch 8.2.0201
+Problem: Cannot assign to an imported variable.
+Solution: Make it work.
+Files: src/evalvars.c, src/mnv9compile.c, src/proto/mnv9compile.pro,
+ src/userfunc.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0202
+Problem: When 'lazyredraw' is set the window title may not be updated.
+Solution: Set "do_redraw" before entering the main loop. (Jason Franklin)
+Files: src/main.c
+
+Patch 8.2.0203
+Problem: :helptags and some other functionality not tested.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #5567)
+Files: src/testdir/test_compiler.mnv, src/testdir/test_ex_mode.mnv,
+ src/testdir/test_excmd.mnv, src/testdir/test_filechanged.mnv,
+ src/testdir/test_help.mnv, src/testdir/test_help_tagjump.mnv,
+ src/testdir/test_timers.mnv, src/testdir/test_window_cmd.mnv
+
+Patch 8.2.0204
+Problem: Crash when using winnr('j') in a popup window.
+Solution: Do not search for neighbors in a popup window. (closes #5568)
+Files: src/window.c, src/testdir/test_popupwin.mnv, src/evalwindow.c
+
+Patch 8.2.0205
+Problem: Error code E899 used twice.
+Solution: Use E863 for the terminal in popup error.
+Files: src/popupwin.c
+
+Patch 8.2.0206
+Problem: Calling MNV9 function using default argument fails.
+Solution: Give an appropriate error. (closes #5572)
+Files: src/testdir/test_mnv9_script.mnv, src/mnv9compile.c,
+ src/mnv9execute.c
+
+Patch 8.2.0207
+Problem: Crash when missing member type on list argument.
+Solution: Check for invalid type. (closes #5572)
+Files: src/userfunc.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0208
+Problem: Fnamemodify() does not apply ":~" when followed by ":.".
+Solution: Don't let a failing ":." cause the ":~" to be skipped. (Yasuhiro
+ Matsumoto, closes #5577)
+Files: runtime/doc/cmdline.txt, src/filepath.c,
+ src/testdir/test_fnamemodify.mnv
+
+Patch 8.2.0209
+Problem: Function a bit far away from where it's used.
+Solution: Move function close to where it's used. (Ken Takata, closes #5569)
+Files: src/fileio.c, src/filepath.c
+
+Patch 8.2.0210
+Problem: Coverity complains about uninitialized field.
+Solution: Initialize the field.
+Files: src/mnv9compile.c
+
+Patch 8.2.0211
+Problem: Test for ANSI colors fails without an "ls" command.
+Solution: Use "dir". (Ken Takata, closes #5582)
+Files: src/testdir/test_functions.mnv
+
+Patch 8.2.0212
+Problem: Missing search/substitute pattern hardly tested.
+Solution: Add test_clear_search_pat() and tests. (Yegappan Lakshmanan,
+ closes #5579)
+Files: runtime/doc/eval.txt, runtime/doc/testing.txt,
+ runtime/doc/usr_41.txt, src/evalfunc.c, src/proto/regexp.pro,
+ src/proto/search.pro, src/proto/testing.pro, src/regexp.c,
+ src/search.c, src/testdir/test_quickfix.mnv,
+ src/testdir/test_search.mnv, src/testdir/test_sort.mnv,
+ src/testdir/test_substitute.mnv, src/testing.c
+
+Patch 8.2.0213
+Problem: Configure does not recognize gcc 10.0 and later.
+Solution: Adjust the pattern matching the version number. (Sergei
+ Trofimovich, closes #5580)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.0214
+Problem: A popup window with a terminal can be made hidden.
+Solution: Disallow hiding a terminal popup.
+Files: src/testdir/test_terminal.mnv, src/popupwin.c,
+ src/testdir/dumps/Test_terminal_popup_4.dump
+
+Patch 8.2.0215 (after 8.2.0208)
+Problem: Wrong file name shortening. (Ingo Karkat)
+Solution: Better check for path separator. (Yasuhiro Matsumoto,
+ closes #5583, closes #5584)
+Files: src/filepath.c, src/testdir/test_fnamemodify.mnv
+
+Patch 8.2.0216
+Problem: Several MNV9 instructions are not tested.
+Solution: Add more tests. Fix :disassemble output. Make catch with pattern
+ work.
+Files: src/testdir/test_mnv9_script.mnv, src/mnv9execute.c,
+ src/mnv9compile.c
+
+Patch 8.2.0217 (after 8.2.0214)
+Problem: Terminal test fails on Mac.
+Solution: Add a short wait.
+Files: src/testdir/test_terminal.mnv
+
+Patch 8.2.0218
+Problem: Several MNV9 instructions are not tested.
+Solution: Add more tests.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0219 (after 8.2.0217)
+Problem: Terminal test still fails on Mac.
+Solution: Skip part of the test on Mac.
+Files: src/testdir/test_terminal.mnv
+
+Patch 8.2.0220
+Problem: Terminal test did pass on Mac.
+Solution: Remove the skip again.
+Files: src/testdir/test_terminal.mnv
+
+Patch 8.2.0221
+Problem: No test for MNV9 += and ..=.
+Solution: Add tests.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0222
+Problem: MNV9: optional function arguments don't work yet.
+Solution: Implement optional function arguments.
+Files: src/userfunc.c, src/mnv9compile.c, src/mnv9execute.c,
+ src/structs.h, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0223
+Problem: Some instructions not yet tested.
+Solution: Disassemble more instructions. Move tests to a new file. Compile
+ call to s:function().
+Files: src/testdir/test_mnv9_script.mnv, src/testdir/Make_all.mak,
+ src/testdir/test_mnv9_disassemble.mnv, src/mnv9compile.c,
+ src/userfunc.c, src/proto/userfunc.pro, src/mnv.h
+
+Patch 8.2.0224
+Problem: compiling :elseif not tested yet.
+Solution: Add test for :elseif. Fix generating jumps.
+Files: src/testdir/test_mnv9_script.mnv, src/mnv9compile.c,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.0225
+Problem: compiling lambda not tested yet.
+Solution: Add test for lambda and funcref. Drop unused instruction arg.
+Files: src/testdir/test_mnv9_disassemble.mnv, src/mnv9.h,
+ src/mnv9execute.c
+
+Patch 8.2.0226
+Problem: Compiling for loop not tested.
+Solution: Add a test. Make variable initialization work for more types.
+Files: src/testdir/test_mnv9_disassemble.mnv, src/mnv9compile.c
+
+Patch 8.2.0227
+Problem: Compiling a few instructions not tested.
+Solution: Add more test cases.
+Files: src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.0228
+Problem: Configure does not recognize gcc version on BSD.
+Solution: Do not use "\+" in the pattern matching the version number. (Ozaki
+ Kiichi, closes #5590)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.0229
+Problem: Compare instructions not tested.
+Solution: Add test cases. Fix disassemble with line continuation.
+Files: src/testdir/test_mnv9_disassemble.mnv, src/mnv9execute.c,
+ src/mnv9compile.c
+
+Patch 8.2.0230
+Problem: Terminal popup test is flaky.
+Solution: Increase wait time a bit.
+Files: src/testdir/test_terminal.mnv
+
+Patch 8.2.0231
+Problem: Silent system command may clear the screen.
+Solution: Do not clear the screen in t_te.
+Files: src/term.c
+
+Patch 8.2.0232
+Problem: The :compiler command causes a crash. (Daniel Steinberg)
+Solution: Do not use the script index if it isn't set.
+Files: src/ex_docmd.c, src/testdir/test_compiler.mnv
+
+Patch 8.2.0233
+Problem: Crash when using garbagecollect() in between rand().
+Solution: Redesign the rand() and srand() implementation. (Yasuhiro
+ Matsumoto, closes #5587, closes #5588)
+Files: src/evalfunc.c, src/testdir/test_random.mnv,
+ runtime/doc/testing.txt, runtime/doc/eval.txt
+
+Patch 8.2.0234
+Problem: Message test fails on SunOS.
+Solution: Adjust expectation for printf "%p". (Ozaki Kiichi, closes #5595)
+Files: src/message_test.c
+
+Patch 8.2.0235
+Problem: Draw error when an empty group is removed from 'statusline'.
+Solution: Do not use highlighting from a removed group.
+Files: src/buffer.c, src/testdir/test_statusline.mnv,
+ src/testdir/dumps/Test_statusline_1.dump
+
+Patch 8.2.0236
+Problem: MS-Windows uninstall doesn't delete mnvtutor.bat.
+Solution: Change directory before deletion. (Ken Takata, closes #5603)
+Files: src/uninstall.c
+
+Patch 8.2.0237
+Problem: Crash when setting 'wincolor' on finished terminal window.
+ (Bakudankun)
+Solution: Check that the vterm is not NULL. (Yasuhiro Matsumoto, closes
+ #5607, closes #5610)
+Files: src/terminal.c, src/testdir/test_terminal.mnv
+
+Patch 8.2.0238
+Problem: MS-Windows: job_stop() results in exit value zero.
+Solution: Call TerminateJobObject() with -1 instead of 0. (Yasuhiro
+ Matsumoto, closes #5150, closes #5614)
+Files: src/os_win32.c, src/testdir/test_channel.mnv
+
+Patch 8.2.0239
+Problem: MS-Windows: 'env' job option does not override existing
+ environment variables. (Tim Pope)
+Solution: Set the environment variables later. (Yasuhiro Matsumoto,
+ closes #5485, closes #5608)
+Files: src/os_win32.c, src/testdir/test_channel.mnv
+
+Patch 8.2.0240
+Problem: Using memory after it was freed. (Dominique Pellé)
+Solution: Do not mix conversion buffer with other buffer.
+Files: src/mnvinfo.c, src/mnv.h
+
+Patch 8.2.0241
+Problem: Crash when setting 'buftype' to "quickfix".
+Solution: Check that error list is not NULL. (closes #5613)
+Files: src/quickfix.c, src/testdir/test_quickfix.mnv
+
+Patch 8.2.0242
+Problem: Preview popup window test fails with long directory name. (Jakub
+ Kądziołka)
+Solution: Use "silent cd". (closes #5615)
+Files: src/testdir/test_popupwin.mnv
+
+Patch 8.2.0243
+Problem: Insufficient code coverage for ex_docmd.c functions.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #5618)
+Files: src/testdir/Make_all.mak, src/testdir/test_arglist.mnv,
+ src/testdir/test_buffer.mnv, src/testdir/test_cd.mnv,
+ src/testdir/test_cmdline.mnv, src/testdir/test_ex_mode.mnv,
+ src/testdir/test_excmd.mnv, src/testdir/test_mapping.mnv,
+ src/testdir/test_quickfix.mnv, src/testdir/test_search.mnv,
+ src/testdir/test_sort.mnv, src/testdir/test_source.mnv,
+ src/testdir/test_substitute.mnv, src/testdir/test_undo.mnv,
+ src/testdir/test_mnvscript.mnv, src/testdir/test_window_cmd.mnv,
+ src/testdir/test_writefile.mnv
+
+Patch 8.2.0244
+Problem: Compiler warning in Lua interface.
+Solution: Add type cast. (Ken Takata, closes #5621)
+Files: src/if_lua.c
+
+Patch 8.2.0245
+Problem: MSVC: error message if the auto directory already exists.
+Solution: Add "if not exists". (Ken Takata, closes #5620)
+Files: src/Make_mvc.mak
+
+Patch 8.2.0246
+Problem: MSVC: deprecation warnings with Ruby.
+Solution: Move _CRT_SECURE_NO_DEPRECATE to build file. (Ken Takata,
+ closes #5622)
+Files: src/Make_mvc.mak, src/if_ruby.c, src/os_win32.h, src/mnv.h,
+ src/mnvio.h
+
+Patch 8.2.0247
+Problem: Misleading comment in NSIS installer script.
+Solution: Negate the meaning of the comment. (Ken Takata, closes #5627)
+Files: nsis/gmnv.nsi
+
+Patch 8.2.0248
+Problem: MS-Windows: dealing with deprecation is too complicated.
+Solution: Use io.h directly. Move _CRT_SECURE_NO_DEPRECATE to the build
+ file. Suppress C4091 warning by setting "_WIN32_WINNT". (Ken
+ Takata, closes #5626)
+Files: src/Make_mvc.mak, src/dosinst.h, src/mnv.h, src/mnvio.h,
+ src/winclip.c, Filelist
+
+Patch 8.2.0249
+Problem: MS-Windows: various warnings.
+Solution: Set the charset to utf-8. Add _WIN32_WINNT and _USING_V110_SDK71_.
+ (Ken Takata, closes #5625)
+Files: src/GmnvExt/Makefile, src/Make_mvc.mak
+
+Patch 8.2.0250
+Problem: test_clear_search_pat() is unused.
+Solution: Remove the function. (Yegappan Lakshmanan, closes #5624)
+Files: runtime/doc/eval.txt, runtime/doc/testing.txt,
+ runtime/doc/usr_41.txt, src/evalfunc.c, src/proto/regexp.pro,
+ src/proto/search.pro, src/proto/testing.pro, src/regexp.c,
+ src/search.c, src/testdir/test_writefile.mnv, src/testing.c
+
+Patch 8.2.0251
+Problem: A couple of function return types can be more specific.
+Solution: Use a better return type. (Ken Takata, closes #5629)
+Files: src/evalfunc.c, src/globals.h
+
+Patch 8.2.0252
+Problem: Windows compiler warns for using size_t.
+Solution: Change to int. (Mike Williams)
+Files: src/mnv9compile.c
+
+Patch 8.2.0253
+Problem: Crash when using :disassemble without argument. (Dhiraj Mishra)
+Solution: Check for missing argument. (Dominique Pellé, closes #5635,
+ closes #5637)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_disassemble.mnv,
+ src/ex_cmds.h
+
+Patch 8.2.0254
+Problem: Compiler warning for checking size_t to be negative.
+Solution: Only check for zero. (Zoltan Arpadffy)
+Files: src/mnv9compile.c
+
+Patch 8.2.0255
+Problem: VMS: missing files in build.
+Solution: Add the files. (Zoltan Arpadffy)
+Files: src/Make_vms.mms
+
+Patch 8.2.0256
+Problem: Time and timer related code is spread out.
+Solution: Move time and timer related code to a new file. (Yegappan
+ Lakshmanan, closes #5604)
+Files: Filelist, src/Make_cyg_ming.mak, src/Make_morph.mak,
+ src/Make_mvc.mak, src/Make_vms.mms, src/Makefile, src/README.md,
+ src/evalfunc.c, src/ex_cmds.c, src/ex_cmds2.c, src/main.c,
+ src/memline.c, src/misc1.c, src/misc2.c, src/proto.h,
+ src/proto/ex_cmds.pro, src/proto/ex_cmds2.pro, src/proto/main.pro,
+ src/proto/memline.pro, src/proto/misc1.pro, src/proto/misc2.pro,
+ src/proto/time.pro, src/time.c
+
+Patch 8.2.0257
+Problem: Cannot recognize a terminal in a popup window.
+Solution: Add the win_gettype() function.
+Files: runtime/doc/eval.txt, src/evalfunc.c, src/evalwindow.c,
+ src/proto/evalwindow.pro, src/testdir/test_cmdline.mnv,
+ src/testdir/test_terminal.mnv,
+ src/testdir/dumps/Test_terminal_popup_1.dump
+
+Patch 8.2.0258
+Problem: ModifyOtherKeys cannot be temporarily disabled.
+Solution: Add echoraw() with an example for modifyOtherKeys.
+Files: runtime/doc/eval.txt, src/evalfunc.c,
+ src/testdir/test_functions.mnv,
+ src/testdir/dumps/Test_functions_echoraw.dump
+
+Patch 8.2.0259
+Problem: Terminal in popup test sometimes fails.
+Solution: Clear the command line.
+Files: src/testdir/test_terminal.mnv,
+ src/testdir/dumps/Test_terminal_popup_1.dump
+
+Patch 8.2.0260
+Problem: Several lines of code are duplicated.
+Solution: Move duplicated code to a function. (Yegappan Lakshmanan,
+ closes #5330)
+Files: src/option.c, src/os_unix.c, src/os_win32.c, src/proto/term.pro,
+ src/quickfix.c, src/regexp.c, src/regexp_bt.c, src/regexp_nfa.c,
+ src/term.c
+
+Patch 8.2.0261
+Problem: Some code not covered by tests.
+Solution: Add test cases. (Yegappan Lakshmanan, closes #5645)
+Files: src/testdir/test_buffer.mnv, src/testdir/test_cmdline.mnv,
+ src/testdir/test_exists.mnv, src/testdir/test_filechanged.mnv,
+ src/testdir/test_fileformat.mnv, src/testdir/test_mapping.mnv,
+ src/testdir/test_marks.mnv, src/testdir/test_normal.mnv,
+ src/testdir/test_plus_arg_edit.mnv, src/testdir/test_quickfix.mnv,
+ src/testdir/test_tabpage.mnv, src/testdir/test_visual.mnv,
+ src/testdir/test_window_cmd.mnv, src/testdir/test_writefile.mnv
+
+Patch 8.2.0262 (after 8.2.0261)
+Problem: Fileformat test fails on MS-Windows.
+Solution: Set fileformat of buffer.
+Files: src/testdir/test_fileformat.mnv
+
+Patch 8.2.0263
+Problem: A few new MNV9 messages are not localized.
+Solution: Add the gettext wrapper. (Dominique Pellé, closes #5647)
+Files: src/mnv9compile.c, src/mnv9execute.c
+
+Patch 8.2.0264 (after 8.2.0262)
+Problem: Fileformat test still fails on MS-Windows.
+Solution: Set fileformat of buffer in the right place.
+Files: src/testdir/test_fileformat.mnv
+
+Patch 8.2.0265
+Problem: "eval" after "if 0" doesn't check for following command.
+Solution: Add "eval" to list of commands that check for a following command.
+ (closes #5640)
+Files: src/ex_docmd.c, src/testdir/test_expr.mnv
+
+Patch 8.2.0266
+Problem: Terminal in popup test sometimes fails on Mac.
+Solution: Add a short delay.
+Files: src/testdir/test_terminal.mnv
+
+Patch 8.2.0267
+Problem: No check for a following command when calling a function fails.
+Solution: Also check for a following command when inside a try block.
+ (closes #5642)
+Files: src/userfunc.c, src/testdir/test_user_func.mnv
+
+Patch 8.2.0268 (after 8.2.0267)
+Problem: Trycatch test fails.
+Solution: When calling function fails only check for following command, do
+ not give another error.
+Files: src/userfunc.c
+
+Patch 8.2.0269
+Problem: MNV9: operator after list index does not work. (Yasuhiro
+ Matsumoto)
+Solution: After indexing a list change the type to the list member type.
+ (closes #5651)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.0270
+Problem: Some code not covered by tests.
+Solution: Add test cases. (Yegappan Lakshmanan, closes #5649)
+Files: src/testdir/test_autocmd.mnv, src/testdir/test_buffer.mnv,
+ src/testdir/test_edit.mnv, src/testdir/test_ex_mode.mnv,
+ src/testdir/test_excmd.mnv, src/testdir/test_expand.mnv,
+ src/testdir/test_filetype.mnv, src/testdir/test_findfile.mnv,
+ src/testdir/test_join.mnv, src/testdir/test_move.mnv,
+ src/testdir/test_normal.mnv, src/testdir/test_registers.mnv,
+ src/testdir/test_source.mnv, src/testdir/test_tabpage.mnv,
+ src/testdir/test_tagjump.mnv, src/testdir/test_mnvscript.mnv,
+ src/testdir/test_visual.mnv, src/testdir/test_window_cmd.mnv,
+ src/testdir/test_writefile.mnv
+
+Patch 8.2.0271
+Problem: The "num64" feature is available everywhere and building without
+ it causes problems.
+Solution: Graduate the "num64" feature. (James McCoy, closes #5650)
+Files: src/evalfunc.c, src/feature.h, src/message.c, src/structs.h,
+ src/testdir/test_expr.mnv, src/testdir/test_largefile.mnv,
+ src/testdir/test_sort.mnv, src/testdir/test_mnvscript.mnv,
+ src/version.c
+
+Patch 8.2.0272
+Problem: ":helptags ALL" gives error for directories without write
+ permission. (Matěj Cepl)
+Solution: Ignore errors for ":helptags ALL". (Ken Takata, closes #5026,
+ closes #5652)
+Files: src/ex_cmds.c, src/testdir/test_help.mnv
+
+Patch 8.2.0273
+Problem: MS-Windows uninstall may delete wrong batch file.
+Solution: Add specific marker in the generated batch file. (Ken Takata,
+ closes #5654)
+Files: src/Make_mvc.mak, src/dosinst.c, src/dosinst.h, src/uninstall.c
+
+Patch 8.2.0274
+Problem: Hang with combination of feedkeys(), Ex mode and :global.
+ (Yegappan Lakshmanan)
+Solution: Add the pending_exmode_active flag.
+Files: src/ex_docmd.c, src/globals.h, src/getchar.c,
+ src/testdir/test_ex_mode.mnv
+
+Patch 8.2.0275
+Problem: Some Ex code not covered by tests.
+Solution: Add test cases. (Yegappan Lakshmanan, closes #5659)
+Files: src/testdir/test_arglist.mnv, src/testdir/test_autocmd.mnv,
+ src/testdir/test_excmd.mnv, src/testdir/test_quickfix.mnv,
+ src/testdir/test_search.mnv, src/testdir/test_swap.mnv,
+ src/testdir/test_window_cmd.mnv
+
+Patch 8.2.0276
+Problem: MNV9: not allowing space before ")" in function call is too
+ restrictive. (Ben Jackson)
+Solution: Skip space before the ")". Adjust other space checks.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.0277
+Problem: MNV9: not all instructions covered by tests.
+Solution: Add more test cases.
+Files: src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.0278
+Problem: Channel test is flaky on Mac.
+Solution: Reset variable before sending message.
+Files: src/testdir/test_channel.mnv
+
+Patch 8.2.0279
+Problem: MNV9: no test for deleted :def function.
+Solution: Add a test. Clear uf_cleared flag when redefining a function.
+Files: src/userfunc.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0280
+Problem: MNV9: throw in :def function not caught higher up.
+Solution: Set "need_rethrow".
+Files: src/mnv9execute.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0281
+Problem: Two placed signs in the same line are not combined. E.g. in the
+ terminal debugger a breakpoint and the PC cannot be both be
+ displayed.
+Solution: Combine the sign column and line highlight attributes.
+Files: src/sign.c, src/testdir/test_signs.mnv,
+ src/testdir/dumps/Test_sign_cursor_3.dump,
+ src/testdir/dumps/Test_sign_cursor_4.dump
+
+Patch 8.2.0282
+Problem: MNV9: setting number option not tested.
+Solution: Add more tests. Fix assigning to global variable.
+Files: src/testdir/test_mnv9_expr.mnv, src/testdir/test_mnv9_script.mnv,
+ src/mnv9execute.c
+
+Patch 8.2.0283
+Problem: MNV9: failing to load script var not tested.
+Solution: Add more tests. Fix using s: in old script.
+Files: src/testdir/test_mnv9_expr.mnv, src/mnv9compile.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0284
+Problem: MNV9: assignment test fails.
+Solution: Avoid duplicating "s:".
+Files: src/mnv9compile.c
+
+Patch 8.2.0285
+Problem: Unused error message. Cannot create s:var.
+Solution: Remove the error message. Make assignment to s:var work.
+Files: src/mnv9compile.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0286
+Problem: Cannot use popup_close() for a terminal popup.
+Solution: Allow using popup_close(). (closes #5666)
+Files: src/popupwin.c, runtime/doc/popup.txt,
+ src/testdir/test_terminal.mnv,
+ src/testdir/dumps/Test_terminal_popup_5.dump,
+ src/testdir/dumps/Test_terminal_popup_6.dump
+
+Patch 8.2.0287
+Problem: MNV9: return in try block not tested; catch with pattern not
+ tested.
+Solution: Add tests. Make it work.
+Files: src/mnv9execute.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0288
+Problem: MNV9: some float and blob operators not tested.
+Solution: Add float and blob tests. Fix addition.
+Files: src/testdir/test_mnv9_expr.mnv, src/mnv9compile.c
+
+Patch 8.2.0289
+Problem: MNV9: :echo did not clear the rest of the line.
+Solution: Call msg_clr_eos(). (Ken Takata, closes #5668)
+Files: src/mnv9execute.c
+
+Patch 8.2.0290
+Problem: Running individual test differs from all tests.
+Solution: Pass on environment variables. (Yee Cheng Chin, closes #5672)
+Files: src/testdir/Makefile, src/testdir/README.txt
+
+Patch 8.2.0291
+Problem: MNV9: assigning [] to list<string> doesn't work.
+Solution: Use void for empty list and dict. (Ken Takata, closes #5669)
+Files: src/mnv9compile.c, src/globals.h, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0292
+Problem: MNV9: CHECKNR and CHECKTYPE instructions not tested.
+Solution: Add tests.
+Files: src/testdir/test_mnv9_expr.mnv, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0293
+Problem: Various Ex commands not sufficiently tested.
+Solution: Add more test cases. (Yegappan Lakshmanan, closes #5673)
+Files: src/testdir/test_arglist.mnv, src/testdir/test_cmdline.mnv,
+ src/testdir/test_ex_mode.mnv, src/testdir/test_excmd.mnv,
+ src/testdir/test_expand.mnv, src/testdir/test_filetype.mnv,
+ src/testdir/test_filter_cmd.mnv, src/testdir/test_global.mnv,
+ src/testdir/test_normal.mnv, src/testdir/test_plus_arg_edit.mnv,
+ src/testdir/test_quickfix.mnv, src/testdir/test_trycatch.mnv,
+ src/testdir/test_mnvscript.mnv
+
+Patch 8.2.0294
+Problem: Cannot use Ex command that is also a function name.
+Solution: Recognize an Ex command by a colon prefix.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv,
+ runtime/doc/mnv9.txt
+
+Patch 8.2.0295
+Problem: Highlighting for :s wrong when using different separator.
+Solution: Use separate argument for search direction and separator. (Rob
+ Pilling, closes #5665)
+Files: src/ex_docmd.c, src/ex_getln.c, src/gui.c, src/normal.c,
+ src/proto/search.pro, src/quickfix.c, src/search.c, src/spell.c,
+ src/tag.c, src/testdir/dumps/Test_incsearch_substitute_15.dump,
+ src/testdir/test_search.mnv
+
+Patch 8.2.0296
+Problem: Mixing up "long long" and __int64 may cause problems. (John
+ Marriott)
+Solution: Pass varnumber_T to mnv_snprintf(). Add v:numbersize.
+Files: src/message.c, src/eval.c, src/fileio.c, src/json.c, src/ops.c,
+ src/mnv.h, src/structs.h, src/evalvars.c, runtime/doc/eval.txt,
+ runtime/doc/various.txt, src/testdir/test_eval_stuff.mnv
+
+Patch 8.2.0297
+Problem: Compiler warnings for the Ruby interface.
+Solution: Undefine a few macros, fix initialization. (Ozaki Kiichi,
+ closes #5677)
+Files: src/if_ruby.c
+
+Patch 8.2.0298
+Problem: MNV9 script: cannot start command with a string constant.
+Solution: Recognize expression starting with '('.
+Files: src/ex_docmd.c, src/mnv9compile.c,
+ src/testdir/test_mnv9_script.mnv, runtime/doc/mnv9.txt
+
+Patch 8.2.0299
+Problem: MNV9: ISN_STORE with argument not tested. Some cases in tv2bool()
+ not tested.
+Solution: Add tests. Add test_unknown() and test_void().
+Files: src/testing.c, src/proto/testing.pro, src/evalfunc.c,
+ src/testdir/test_mnv9_disassemble.mnv,
+ src/testdir/test_mnv9_expr.mnv, runtime/doc/eval.txt,
+ runtime/doc/testing.txt
+
+Patch 8.2.0300
+Problem: MNV9: expression test fails without channel support.
+Solution: Add has('channel') check.
+Files: src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.0301
+Problem: Insufficient testing for exception handling and the "attention"
+ prompt.
+Solution: Add test cases. (Yegappan Lakshmanan, closes #5681)
+Files: src/testdir/test_swap.mnv, src/testdir/test_trycatch.mnv
+
+Patch 8.2.0302
+Problem: Setting 'term' may cause error in TermChanged autocommand.
+Solution: Use aucmd_prepbuf() to switch to the buffer where the autocommand
+ is to be executed. (closes #5682)
+Files: src/term.c, src/testdir/test_autocmd.mnv
+
+Patch 8.2.0303
+Problem: TermChanged test fails in the GUI.
+Solution: Skip the test when running the GUI.
+Files: src/testdir/test_autocmd.mnv
+
+Patch 8.2.0304
+Problem: Terminal test if failing on some systems.
+Solution: Wait for the job to finish. (James McCoy)
+Files: src/testdir/test_terminal.mnv
+
+Patch 8.2.0305
+Problem: Relativenumber test fails on some systems. (James McCoy)
+Solution: Clear the command line.
+Files: src/testdir/test_number.mnv,
+ src/testdir/dumps/Test_relnr_colors_2.dump,
+ src/testdir/dumps/Test_relnr_colors_3.dump
+
+Patch 8.2.0306
+Problem: MNV9: :substitute(pat(repl does not work in MNV9 script.
+Solution: Remember starting with a colon. (closes #5676)
+Files: src/ex_docmd.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0307
+Problem: Python 3 mnv.eval not well tested.
+Solution: Add a test. (Dominique Pellé, closes #5680)
+Files: src/testdir/test_python3.mnv
+
+Patch 8.2.0308
+Problem: 'showbreak' does not work for a very long line. (John Little)
+Solution: Check whether 'briopt' contains "sbr". (Ken Takata, closes #5523,
+ closes #5684)
+Files: src/drawline.c, src/testdir/test_breakindent.mnv
+
+Patch 8.2.0309
+Problem: Window-local values have confusing name.
+Solution: Rename w_p_bri* to w_briopt_*.
+Files: src/structs.h, src/indent.c, src/drawline.c
+
+Patch 8.2.0310
+Problem: Autocmd test fails on a slow system.
+Solution: Adjust the expectations. (James McCoy, closes #5685)
+Files: src/testdir/test_autocmd.mnv
+
+Patch 8.2.0311
+Problem: MNV9: insufficient script tests.
+Solution: Add tests. Free imports when re-using a script.
+Files: src/testdir/test_mnv9_script.mnv, src/scriptfile.c
+
+Patch 8.2.0312
+Problem: MNV9: insufficient script tests.
+Solution: Add more tests. Make "import * as Name" work.
+Files: src/testdir/test_mnv9_script.mnv, src/mnv9script.c,
+ src/proto/mnv9script.pro, src/mnv9compile.c
+
+Patch 8.2.0313
+Problem: MNV9: insufficient script tests.
+Solution: Add tests. Make import of alphanumeric name work.
+Files: src/testdir/test_mnv9_script.mnv, src/mnv9script.c
+
+Patch 8.2.0314
+Problem: Short name not set for terminal buffer.
+Solution: Set the short name. (closes #5687)
+Files: src/terminal.c, src/testdir/test_terminal.mnv
+
+Patch 8.2.0315
+Problem: Build failure on HP-UX system.
+Solution: Use LONG_LONG_MIN instead of LLONG_MIN. Add type casts for switch
+ statement. (John Marriott)
+Files: src/structs.h, src/json.c
+
+Patch 8.2.0316
+Problem: ex_getln.c code has insufficient test coverage.
+Solution: Add more tests. Fix a problem. (Yegappan Lakshmanan, closes #5693)
+Files: src/cmdhist.c, src/testdir/test_cmdline.mnv,
+ src/testdir/test_functions.mnv, src/testdir/test_history.mnv,
+ src/testdir/test_menu.mnv
+
+Patch 8.2.0317
+Problem: MSVC: _CRT_SECURE_NO_DEPRECATE not defined on DEBUG build.
+Solution: Move where CFLAGS is updated. (Ken Takata, closes #5692)
+Files: src/Make_mvc.mak
+
+Patch 8.2.0318
+Problem: MNV9: types not sufficiently tested.
+Solution: Add tests with more types.
+Files: src/globals.h, src/mnv9compile.c,
+ src/testdir/test_mnv9_script.mnv, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.0319
+Problem: File missing in distribution, comments outdated.
+Solution: Correct path of README file. Update comments.
+Files: Filelist, src/evalvars.c, src/register.c, src/if_python3.c
+
+Patch 8.2.0320
+Problem: No Haiku support.
+Solution: Add support for Haiku. (Emir Sarı, closes #5605)
+Files: Filelist, runtime/doc/Makefile, runtime/doc/eval.txt,
+ runtime/doc/gui.txt, runtime/doc/help.txt,
+ runtime/doc/options.txt, runtime/doc/os_haiku.txt,
+ runtime/doc/starting.txt, runtime/doc/tags,
+ runtime/gmnvrc_example.mnv, runtime/mnvrc_example.mnv,
+ src/INSTALL, src/Makefile, src/auto/configure, src/configure.ac,
+ src/evalfunc.c, src/feature.h, src/fileio.c, src/globals.h,
+ src/gui.c, src/gui.h, src/gui_haiku.cc, src/gui_haiku.h,
+ src/mbyte.c, src/menu.c, src/misc1.c, src/mouse.c, src/option.h,
+ src/os_haiku.h, src/os_haiku.rdef, src/os_unix.c, src/os_unix.h,
+ src/osdef1.h.in, src/proto.h, src/proto/gui_haiku.pro, src/pty.c,
+ src/screen.c, src/structs.h, src/term.c, src/version.c, src/mnv.h
+
+Patch 8.2.0321
+Problem: MNV9: ":execute" does not work yet.
+Solution: Add ISN_EXECUTE. (closes #5699) Also make :echo work with more
+ than one argument.
+Files: src/mnv9.h, src/mnv9compile.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_disassemble.mnv,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0322
+Problem: MNV9: error checks not tested.
+Solution: Add more test cases. Avoid error for function loaded later.
+Files: src/mnv9compile.c, src/evalvars.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0323
+Problem: MNV9: calling a function that is defined later is slow.
+Solution: Once the function is found update the instruction so it can be
+ called directly.
+Files: src/mnv9execute.c, src/testdir/test_mnv9_script.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.0324
+Problem: Text property not updated correctly when inserting/deleting.
+Solution: Use the right column when deleting. Make zero-width text
+ properties respect start_incl and end_incl. (Axel Forsman,
+ closes #5696, closes #5679)
+Files: src/change.c, src/textprop.c, src/testdir/test_listener.mnv,
+ src/testdir/test_textprop.mnv
+
+Patch 8.2.0325
+Problem: Ex_getln.c code not covered by tests.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #5702)
+Files: src/testdir/test_cmdline.mnv, src/testdir/test_ex_mode.mnv,
+ src/testdir/test_functions.mnv, src/testdir/test_history.mnv,
+ src/testdir/test_options.mnv
+
+Patch 8.2.0326
+Problem: Compiler warning for using uninitialized variable. (Yegappan
+ Lakshmanan)
+Solution: Do not jump to failed but return.
+Files: src/mnv9execute.c
+
+Patch 8.2.0327
+Problem: Crash when opening and closing two popup terminal windows.
+Solution: Check that prevwin is valid. (closes #5707)
+Files: src/popupwin.c, src/testdir/test_terminal.mnv
+
+Patch 8.2.0328
+Problem: No redraw when leaving terminal-normal mode in a terminal popup
+ window.
+Solution: Redraw the popup window. (closes #5708)
+Files: src/macros.h, src/mnv.h, src/terminal.c, src/drawscreen.c,
+ src/move.c, src/popupwin.c, src/testdir/test_terminal.mnv,
+ src/testdir/dumps/Test_terminal_popup_7.dump,
+ src/testdir/dumps/Test_terminal_popup_8.dump
+
+Patch 8.2.0329
+Problem: Popup filter converts 0x80 bytes.
+Solution: Keep 0x80 bytes as-is. (Ozaki Kiichi, closes #5706)
+Files: src/popupwin.c, src/testdir/test_popupwin.mnv
+
+Patch 8.2.0330
+Problem: Build error with popup window but without terminal.
+Solution: Add #ifdef.
+Files: src/popupwin.c
+
+Patch 8.2.0331
+Problem: Internal error when using test_void() and test_unknown().
+ (Dominique Pellé)
+Solution: Give a normal error.
+Files: src/evalfunc.c, src/testdir/test_functions.mnv,
+ src/testdir/test_mnvscript.mnv
+
+Patch 8.2.0332
+Problem: Some code in ex_getln.c not covered by tests.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #5710)
+Files: src/testdir/test_arabic.mnv, src/testdir/test_cmdline.mnv
+
+Patch 8.2.0333
+Problem: Terminal in popup test is flaky.
+Solution: Make sure redraw is done before opening the popup.
+Files: src/testdir/test_terminal.mnv,
+ src/testdir/dumps/Test_terminal_popup_1.dump
+
+Patch 8.2.0334
+Problem: Abort called when using test_void(). (Dominique Pellé)
+Solution: Only give an error, don't abort.
+Files: src/message.c, src/proto/message.pro, src/evalfunc.c,
+ src/eval.c, src/json.c, src/testdir/test_functions.mnv
+
+Patch 8.2.0335
+Problem: No completion for :disassemble.
+Solution: Make completion work. Also complete script-local functions if the
+ name starts with "s:".
+Files: src/cmdexpand.c, src/testdir/test_cmdline.mnv,
+ runtime/doc/mnv9.txt
+
+Patch 8.2.0336
+Problem: MNV9: insufficient test coverage for compiling.
+Solution: Add more tests.
+Files: src/testdir/test_mnv9_expr.mnv, src/testdir/test_mnv9_script.mnv,
+ src/mnv9.h, src/mnv9compile.c, src/mnv9execute.c
+
+Patch 8.2.0337
+Problem: Build fails on a few systems.
+Solution: Use mnv_snprintf() instead of snprintf().
+Files: src/cmdexpand.c
+
+Patch 8.2.0338
+Problem: Build failure without the channel feature.
+Solution: Add #ifdef
+Files: src/mnv9compile.c
+
+Patch 8.2.0339
+Problem: MNV9: function return type may depend on arguments.
+Solution: Instead of a fixed return type use a function to figure out the
+ return type.
+Files: src/evalfunc.c, src/proto/evalfunc.pro, src/mnv9compile.c,
+ src/evalbuffer.c, src/proto/evalbuffer.pro,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0340
+Problem: MNV9: function and partial types not tested.
+Solution: Support more for partial, add tests.
+Files: src/mnv9.h, src/mnv9compile.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0341
+Problem: Using ":for" in MNV9 script gives an error.
+Solution: Pass the LET_NO_COMMAND flag. (closes #5715)
+Files: src/eval.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0342
+Problem: Some code in ex_getln.c not covered by tests.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #5717)
+Files: src/testdir/test_cmdline.mnv, src/testdir/test_ex_mode.mnv,
+ src/testdir/test_history.mnv, src/testdir/test_iminsert.mnv
+
+Patch 8.2.0343
+Problem: MNV9: using wrong instruction, limited test coverage.
+Solution: Use ISN_PUSHJOB. Add a few more tests.
+Files: src/mnv9compile.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_script.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.0344
+Problem: ":def" not skipped properly.
+Solution: Add CMD_def to list of commands the require evaluation even when
+ not being executed.
+Files: src/ex_docmd.c
+
+Patch 8.2.0345
+Problem: Compiler warning when building without the float feature.
+Solution: Add #ifdef. (John Marriott)
+Files: src/evalfunc.c
+
+Patch 8.2.0346
+Problem: MNV9: finding common list type not tested.
+Solution: Add more tests. Fix listing function. Fix overwriting type.
+Files: src/mnv9compile.c, src/userfunc.c,
+ src/testdir/test_mnv9_script.mnv, src/testdir/runtest.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.0347
+Problem: Various code not covered by tests.
+Solution: Add more test coverage. (Yegappan Lakshmanan, closes #5720)
+Files: src/testdir/gen_opt_test.mnv, src/testdir/test86.in,
+ src/testdir/test_cmdline.mnv, src/testdir/test_digraph.mnv,
+ src/testdir/test_ex_mode.mnv, src/testdir/test_history.mnv
+
+Patch 8.2.0348
+Problem: MNV9: not all code tested.
+Solution: Add a few more tests. fix using "b:" in literal dictionary.
+Files: src/testdir/test_mnv9_expr.mnv, src/mnv9compile.c,
+ src/proto/mnv9compile.pro, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0349
+Problem: MNV9: constant expression not well tested.
+Solution: Add tests for "if" with constant expression.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0350
+Problem: MNV9: expression tests don't use recognized constants.
+Solution: Recognize "true" and "false" as constants. Make skipping work for
+ assignment and expression evaluation.
+Files: src/mnv9compile.c
+
+Patch 8.2.0351
+Problem: Terminal in popup test is still a bit flaky.
+Solution: Clear and redraw before opening the popup.
+Files: src/testdir/test_terminal.mnv
+
+Patch 8.2.0352
+Problem: FreeBSD: test for sourcing utf-8 is skipped.
+Solution: Run the matchadd_conceal test separately to avoid that setting
+ 'term' to "ansi" causes problems for other tests. (Ozaki Kiichi,
+ closes #5721)
+Files: src/testdir/Make_all.mak, src/testdir/test_alot_utf8.mnv,
+ src/testdir/test_source_utf8.mnv
+
+Patch 8.2.0353
+Problem: MNV9: while loop not tested.
+Solution: Add test with "while", "break" and "continue"
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0354
+Problem: Python 3.9 does not define _Py_DEC_REFTOTAL. (Zdenek Dohnal)
+Solution: Remove it, it was only for debugging.
+Files: src/if_python3.c
+
+Patch 8.2.0355
+Problem: MNV9: str_val is confusing, it's a number
+Solution: Rename to stnr_val.
+Files: src/mnv9.h, src/mnv9compile.c, src/mnv9execute.c
+
+Patch 8.2.0356
+Problem: MS-Windows: feedkeys() with MNVDLL cannot handle CSI correctly.
+Solution: Modify mch_inchar() to encode CSI bytes. (Ozaki Kiichi, Ken
+ Takata, closes #5726)
+Files: src/getchar.c, src/os_win32.c, src/testdir/test_popupwin.mnv
+
+Patch 8.2.0357
+Problem: Cannot delete a text property matching both id and type. (Axel
+ Forsman)
+Solution: Add the "both" argument.
+Files: src/textprop.c, runtime/doc/textprop.txt,
+ src/testdir/test_textprop.mnv
+
+Patch 8.2.0358
+Problem: Insufficient testing for indent.c.
+Solution: Add indent tests. (Yegappan Lakshmanan, closes #5736)
+Files: src/testdir/Make_all.mak, src/testdir/test_ex_mode.mnv,
+ src/testdir/test_expand_func.mnv, src/testdir/test_indent.mnv,
+ src/testdir/test_lispwords.mnv, src/testdir/test_smartindent.mnv,
+ src/testdir/test_vartabs.mnv
+
+Patch 8.2.0359
+Problem: popup_atcursor() may hang. (Yasuhiro Matsumoto)
+Solution: Take the decoration into account. (closes #5728)
+Files: src/popupwin.c, src/testdir/test_popupwin.mnv
+
+Patch 8.2.0360
+Problem: Yaml files are only recognized by the file extension.
+Solution: Check for a line starting with "%YAML". (Jason Franklin)
+Files: runtime/scripts.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.0361
+Problem: Internal error when using "0" for a callback.
+Solution: Give a normal error. (closes #5743)
+Files: src/evalvars.c, src/testdir/test_timers.mnv
+
+Patch 8.2.0362
+Problem: MS-Windows: channel test fails if grep is not available.
+Solution: Use another command. (Ken Takata, closes #5739)
+Files: src/testdir/test_channel.mnv
+
+Patch 8.2.0363
+Problem: Some Normal mode commands not tested.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #5746)
+Files: src/testdir/test_cindent.mnv, src/testdir/test_cmdline.mnv,
+ src/testdir/test_edit.mnv, src/testdir/test_indent.mnv,
+ src/testdir/test_normal.mnv, src/testdir/test_prompt_buffer.mnv,
+ src/testdir/test_virtualedit.mnv, src/testdir/test_visual.mnv
+
+Patch 8.2.0364
+Problem: Printf test failing on Haiku.
+Solution: Make a difference between int and short. (Dominique Pellé,
+ closes #5749)
+Files: src/message.c
+
+Patch 8.2.0365
+Problem: Tag kind can't be a multibyte character. (Marcin Szamotulski)
+Solution: Recognize multibyte character. (closes #5724)
+Files: src/tag.c, src/testdir/test_taglist.mnv
+
+Patch 8.2.0366
+Problem: Hardcopy command not tested enough.
+Solution: Add tests for printing. (Dominique Pellé, closes #5748)
+Files: src/testdir/test_hardcopy.mnv
+
+Patch 8.2.0367
+Problem: Can use :pedit in a popup window.
+Solution: Disallow it.
+Files: src/ex_docmd.c, src/testdir/test_popupwin.mnv
+
+Patch 8.2.0368
+Problem: MNV9: import that redefines local variable does not fail.
+Solution: Check for already defined symbols.
+Files: src/mnv9script.c, src/proto/mnv9script.pro, src/mnv9compile.c,
+ src/proto/mnv9compile.pro, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0369
+Problem: Various Normal mode commands not fully tested.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #5751)
+Files: src/testdir/test_arglist.mnv, src/testdir/test_changelist.mnv,
+ src/testdir/test_charsearch.mnv, src/testdir/test_cmdline.mnv,
+ src/testdir/test_edit.mnv, src/testdir/test_ex_mode.mnv,
+ src/testdir/test_excmd.mnv, src/testdir/test_gf.mnv,
+ src/testdir/test_iminsert.mnv, src/testdir/test_increment.mnv,
+ src/testdir/test_marks.mnv, src/testdir/test_normal.mnv,
+ src/testdir/test_prompt_buffer.mnv, src/testdir/test_put.mnv,
+ src/testdir/test_registers.mnv, src/testdir/test_tagjump.mnv,
+ src/testdir/test_visual.mnv
+
+Patch 8.2.0370
+Problem: The typebuf_was_filled flag is sometimes not reset, which may
+ cause a hang.
+Solution: Make sure typebuf_was_filled is reset when the typeahead buffer is
+ empty.
+Files: src/edit.c, src/getchar.c,
+
+Patch 8.2.0371
+Problem: Crash with combination of terminal popup and autocmd.
+Solution: Disallow closing a popup that is the current window. Add a check
+ that the current buffer is valid. (closes #5754)
+Files: src/macros.h, src/buffer.c, src/popupwin.c, src/terminal.c,
+ src/testdir/test_terminal.mnv
+
+Patch 8.2.0372
+Problem: Prop_find() may not find text property at start of the line.
+Solution: Adjust the loop to find properties. (Axel Forsman, closes #5761,
+ closes #5663)
+Files: src/textprop.c, src/testdir/test_textprop.mnv
+
+Patch 8.2.0373
+Problem: Type of term_sendkeys() is unknown.
+Solution: Just return zero. (closes #5762)
+Files: src/terminal.c, src/testdir/test_terminal.mnv
+
+Patch 8.2.0374
+Problem: Using wrong printf directive for jump location.
+Solution: Change "%lld" to "%d". (James McCoy, closes #5773)
+Files: src/mnv9execute.c
+
+Patch 8.2.0375
+Problem: Coverity warning for not using return value.
+Solution: Move error message to separate function.
+Files: src/popupwin.c
+
+Patch 8.2.0376
+Problem: Nasty callback test fails on some systems.
+Solution: Increase the sleep time.
+Files: src/testdir/test_terminal.mnv
+
+Patch 8.2.0377
+Problem: No CI test for a big-endian system.
+Solution: Test with s390x. (James McCoy, closes #5772)
+Files: .travis.yml
+
+Patch 8.2.0378
+Problem: prop_find() does not find all props.
+Solution: Check being in the start line. (Axel Forsman, closes #5776)
+Files: src/textprop.c, src/testdir/test_textprop.mnv
+
+Patch 8.2.0379
+Problem: Gcc warns for ambiguous else.
+Solution: Add braces. (Dominique Pellé, closes #5778)
+Files: src/textprop.c
+
+Patch 8.2.0380
+Problem: Tiny popup when creating a terminal popup without minwidth.
+Solution: Use a default minimum size of 5 lines of 20 characters.
+Files: src/popupwin.c, src/testdir/test_terminal.mnv,
+ src/testdir/dumps/Test_terminal_popup_m1.dump
+
+Patch 8.2.0381
+Problem: Using freed memory with :lmnvgrep and autocommand. (extracted from
+ POC by Dominique Pellé)
+Solution: Avoid deleting a dummy buffer used in a window. (closes #5777)
+Files: src/quickfix.c, src/testdir/test_quickfix.mnv
+
+Patch 8.2.0382
+Problem: Some tests fail when run under valgrind.
+Solution: Increase timeouts.
+Files: src/testdir/test_autocmd.mnv, src/testdir/test_debugger.mnv,
+ src/testdir/test_channel.mnv, src/testdir/test_ins_complete.mnv,
+ src/testdir/test_terminal.mnv,
+ src/testdir/dumps/Test_terminal_popup_1.dump,
+ src/testdir/dumps/Test_terminal_popup_2.dump,
+ src/testdir/dumps/Test_terminal_popup_3.dump,
+ src/testdir/dumps/Test_terminal_popup_5.dump,
+ src/testdir/dumps/Test_terminal_popup_6.dump,
+ src/testdir/dumps/Test_terminal_popup_7.dump,
+ src/testdir/dumps/Test_terminal_popup_8.dump,
+ src/testdir/dumps/Test_terminal_popup_m1.dump
+
+Patch 8.2.0383
+Problem: Wrong feature check causes test not to be run.
+Solution: Use CheckFunction instead of CheckFeature. (Ozaki Kiichi,
+ closes #5781)
+Files: src/testdir/test_channel.mnv
+
+Patch 8.2.0384
+Problem: Travis CI has warnings.
+Solution: Avoid warnings, clean up the config. (Ozaki Kiichi, closes #5779)
+Files: .travis.yml
+
+Patch 8.2.0385
+Problem: Menu functionality insufficiently tested.
+Solution: Add tests. Add menu_info(). (Yegappan Lakshmanan, closes #5760)
+Files: runtime/doc/eval.txt, runtime/doc/gui.txt, runtime/doc/usr_41.txt,
+ src/evalfunc.c, src/menu.c, src/proto/menu.pro,
+ src/testdir/test_menu.mnv, src/testdir/test_popup.mnv,
+ src/testdir/test_termcodes.mnv
+
+Patch 8.2.0386 (after 8.2.0385)
+Problem: Part from unfinished patch got included.
+Solution: Undo that part.
+Files: src/evalfunc.c
+
+Patch 8.2.0387
+Problem: Error for possible NULL argument to qsort().
+Solution: Don't call qsort() when there is nothing to sort. (Dominique
+ Pellé, closes #5780)
+Files: src/spellsuggest.c
+
+Patch 8.2.0388
+Problem: Printmbcharset option not tested.
+Solution: Add a test. Enable PostScript for AppVeyor build. (Dominique
+ Pellé, closes #5783)
+Files: appveyor.yml, src/testdir/test_hardcopy.mnv
+
+Patch 8.2.0389
+Problem: Delayed redraw when shifting text from Insert mode.
+Solution: Use msg_attr_keep() instead of msg(). (closes #5782)
+Files: src/ops.c
+
+Patch 8.2.0390
+Problem: Terminal postponed scrollback test is flaky.
+Solution: Add delay in between sending keys. Rename dump files.
+Files: src/testdir/test_terminal.mnv,
+ src/testdir/dumps/Test_terminal_01.dump,
+ src/testdir/dumps/Test_terminal_02.dump,
+ src/testdir/dumps/Test_terminal_03.dump,
+ src/testdir/dumps/Test_terminal_scrollback_1.dump,
+ src/testdir/dumps/Test_terminal_scrollback_2.dump,
+ src/testdir/dumps/Test_terminal_scrollback_3.dump
+
+Patch 8.2.0391 (after 8.2.0377)
+Problem: CI test coverage dropped.
+Solution: Set $DISPLAY also for non-GUI builds. (James McCoy, closes #5788)
+Files: .travis.yml
+
+Patch 8.2.0392
+Problem: Coverity warns for using array index out of range.
+Solution: Add extra "if" to avoid warning.
+Files: src/menu.c
+
+Patch 8.2.0393
+Problem: Coverity warns for not using return value.
+Solution: Add (void).
+Files: src/popupmenu.c
+
+Patch 8.2.0394
+Problem: Coverity complains about using NULL pointer.
+Solution: Use empty string when option value is NULL.
+Files: src/optionstr.c
+
+Patch 8.2.0395
+Problem: Build fails with FEAT_EVAL but without FEAT_MENU.
+Solution: Add #ifdef. (John Marriott)
+Files: src/evalfunc.c
+
+Patch 8.2.0396
+Problem: Cmdexpand.c insufficiently tested.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #5789)
+Files: src/testdir/test_cmdline.mnv, src/testdir/test_taglist.mnv,
+ src/testdir/test_terminal.mnv, src/testdir/test_usercommands.mnv
+
+Patch 8.2.0397
+Problem: Delayed screen update when using undo from Insert mode.
+Solution: Update w_topline and cursor shape before sleeping. (closes #5790)
+Files: src/normal.c
+
+Patch 8.2.0398
+Problem: Profile test fails when two functions take same time.
+Solution: Add a short sleep in once function. (closes #5797)
+Files: src/testdir/test_profile.mnv
+
+Patch 8.2.0399
+Problem: Various memory leaks.
+Solution: Avoid the leaks. (Ozaki Kiichi, closes #5803)
+Files: src/ex_docmd.c, src/ex_getln.c, src/menu.c, src/message.c,
+ src/scriptfile.c, src/userfunc.c
+
+Patch 8.2.0400
+Problem: Not all tests using a terminal are in the list of flaky tests.
+Solution: Introduce the test_is_flaky flag.
+Files: src/testdir/runtest.mnv, src/testdir/term_util.mnv,
+ src/testdir/screendump.mnv, src/testdir/test_autocmd.mnv
+
+Patch 8.2.0401
+Problem: Not enough test coverage for evalvars.c.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #5804)
+Files: src/testdir/test_cmdline.mnv, src/testdir/test_const.mnv,
+ src/testdir/test_diffmode.mnv, src/testdir/test_excmd.mnv,
+ src/testdir/test_functions.mnv, src/testdir/test_let.mnv,
+ src/testdir/test_listdict.mnv, src/testdir/test_spell.mnv,
+ src/testdir/test_unlet.mnv, src/testdir/test_user_func.mnv,
+ src/testdir/test_mnvscript.mnv
+
+Patch 8.2.0402 (after 8.2.0401)
+Problem: Setting local instead of global flag.
+Solution: Prepend "g:" to "test_is_flaky".
+Files: src/testdir/term_util.mnv, src/testdir/screendump.mnv,
+ src/testdir/test_autocmd.mnv
+
+Patch 8.2.0403
+Problem: When 'buftype' is "nofile" there is no overwrite check.
+Solution: Also check for existing file when 'buftype' is set.
+ (closes #5807)
+Files: src/ex_cmds.c, src/testdir/test_options.mnv
+
+Patch 8.2.0404
+Problem: Writefile() error does not give a hint.
+Solution: Add remark about first argument.
+Files: src/filepath.c, src/testdir/test_writefile.mnv
+
+Patch 8.2.0405
+Problem: MSVC: build fails with some combination of features.
+Solution: Enable CHANNEL if TERMINAL is enabled. (Mike Williams)
+Files: src/Make_mvc.mak
+
+Patch 8.2.0406
+Problem: FileReadCmd event not well tested.
+Solution: Add a test.
+Files: src/testdir/test_autocmd.mnv
+
+Patch 8.2.0407
+Problem: No early check if :find and :sfind have an argument.
+Solution: Add EX_NEEDARG.
+Files: src/ex_cmds.h, src/testdir/test_findfile.mnv,
+ src/testdir/test_find_complete.mnv
+
+Patch 8.2.0408
+Problem: Delete() commented out for testing.
+Solution: Undo commenting-out.
+Files: src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.0409
+Problem: Search test leaves file behind.
+Solution: Delete the file. Also use Check commands.
+Files: src/testdir/test_search.mnv
+
+Patch 8.2.0410
+Problem: Channel test fails too often on slow Mac.
+Solution: Increase waiting time to 10 seconds.
+Files: src/testdir/test_channel.mnv
+
+Patch 8.2.0411
+Problem: Mac: breakcheck is using a value from the stone ages.
+Solution: Delete BREAKCHECK_SKIP from the Mac header file. (Ben Jackson)
+Files: src/os_mac.h
+
+Patch 8.2.0412
+Problem: MS-Windows: cannot use mnvtutor from the start menu.
+Solution: Better check for writable directory. Use the right path for the
+ executable. (Wu Yongwei, closes #5774, closes #5756)
+Files: mnvtutor.bat
+
+Patch 8.2.0413
+Problem: Buffer menu does not handle special buffers properly.
+Solution: Keep a dictionary with buffer names to reliably keep track of
+ entries.
+ Also trigger BufFilePre and BufFilePost for command-line and
+ terminal buffers when the name changes.
+Files: src/testdir/test_alot.mnv, src/testdir/Make_all.mak,
+ runtime/menu.mnv, src/ex_getln.c, src/terminal.c,
+ src/testdir/test_menu.mnv
+
+Patch 8.2.0414
+Problem: Channel connect_waittime() test is flaky.
+Solution: Set the test_is_flaky flag. Use test_is_flaky for more tests.
+Files: src/testdir/test_channel.mnv, src/testdir/test_terminal.mnv,
+ src/testdir/runtest.mnv
+
+Patch 8.2.0415
+Problem: Bsdl filetype is not detected.
+Solution: Add an entry in the filetype list. (Daniel Kho, closes #5810)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.0416
+Problem: Test leaves file behind.
+Solution: Delete the file.
+Files: src/testdir/test_indent.mnv
+
+Patch 8.2.0417
+Problem: Travis CI config can be improved.
+Solution: Remove COVERAGE variable. Add load-snd-dummy script. add "-i NONE"
+ to avoid messages about mnvinfo. (Ozaki Kiichi, closes #5813)
+Files: .travis.yml, ci/load-snd-dummy.sh
+
+Patch 8.2.0418
+Problem: Code in eval.c not sufficiently covered by tests.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #5815)
+Files: src/testdir/test_blob.mnv, src/testdir/test_channel.mnv,
+ src/testdir/test_cmdline.mnv, src/testdir/test_eval_stuff.mnv,
+ src/testdir/test_expr.mnv, src/testdir/test_functions.mnv,
+ src/testdir/test_job_fails.mnv, src/testdir/test_lambda.mnv,
+ src/testdir/test_let.mnv, src/testdir/test_listdict.mnv,
+ src/testdir/test_marks.mnv, src/testdir/test_method.mnv,
+ src/testdir/test_normal.mnv, src/testdir/test_unlet.mnv,
+ src/testdir/test_usercommands.mnv, src/testdir/test_mnvscript.mnv,
+ src/testdir/test_window_cmd.mnv
+
+Patch 8.2.0419
+Problem: Various memory leaks in MNV9 script code.
+Solution: Fix the leaks. (Ozaki Kiichi, closes #5814)
+Files: src/proto/mnv9compile.pro, src/scriptfile.c, src/structs.h,
+ src/testdir/test_mnv9_script.mnv, src/mnv9.h, src/mnv9compile.c,
+ src/mnv9execute.c, src/mnv9script.c
+
+Patch 8.2.0420
+Problem: MNV9: cannot interrupt a loop with CTRL-C.
+Solution: Check for CTRL-C once in a while. Doesn't fully work yet.
+Files: src/misc1.c, src/proto/misc1.pro,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0421
+Problem: Interrupting with CTRL-C does not always work.
+Solution: Recognize CTRL-C while modifyOtherKeys is set.
+Files: src/ui.c, src/testdir/test_mnv9_script.mnv, src/evalfunc.c
+
+Patch 8.2.0422
+Problem: Crash when passing popup window to win_splitmove(). (john Devin)
+Solution: Disallow moving a popup window. (closes #5816)
+Files: src/testdir/test_popupwin.mnv, src/evalwindow.c
+
+Patch 8.2.0423
+Problem: In some environments a few tests are expected to fail.
+Solution: Add $TEST_MAY_FAIL to list tests that should not cause make to
+ fail.
+Files: src/testdir/runtest.mnv
+
+Patch 8.2.0424
+Problem: Checking for wrong return value. (Tom)
+Solution: Invert the check and fix the test.
+Files: src/mnv9execute.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0425
+Problem: Code for modeless selection not sufficiently tested.
+Solution: Add tests. Move mouse code functionality to a common script file.
+ (Yegappan Lakshmanan, closes #5821)
+Files: src/testdir/Make_all.mak, src/testdir/gen_opt_test.mnv,
+ src/testdir/mouse.mnv, src/testdir/test_edit.mnv,
+ src/testdir/test_global.mnv, src/testdir/test_modeless.mnv,
+ src/testdir/test_normal.mnv, src/testdir/test_selectmode.mnv,
+ src/testdir/test_termcodes.mnv, src/testdir/test_visual.mnv,
+ src/ui.c
+
+Patch 8.2.0426
+Problem: Some errors were not tested for.
+Solution: Add tests. (Dominique Pellé, closes #5824)
+Files: src/testdir/test_buffer.mnv, src/testdir/test_options.mnv,
+ src/testdir/test_tcl.mnv, src/testdir/test_terminal.mnv,
+ src/testdir/test_window_cmd.mnv
+
+Patch 8.2.0427
+Problem: It is not possible to check for a typo in a feature name.
+Solution: Add an extra argument to has().
+Files: runtime/doc/eval.txt, src/evalfunc.c, src/testdir/check.mnv,
+ src/testdir/test_functions.mnv
+
+Patch 8.2.0428
+Problem: Buffer name may leak.
+Solution: Free the buffer name before overwriting it.
+Files: src/terminal.c
+
+Patch 8.2.0429
+Problem: No warning when test checks for option that never exists.
+Solution: In tests check that the option can exist.
+Files: src/testdir/check.mnv
+
+Patch 8.2.0430
+Problem: Window creation failure not properly tested.
+Solution: Improve the test. (Yegappan Lakshmanan, closes #5826)
+Files: src/testdir/test_cmdline.mnv, src/testdir/test_window_cmd.mnv
+
+Patch 8.2.0431
+Problem: Some compilers don't support using \e for Esc. (Yegappan
+ Lakshmanan)
+Solution: use \033 instead.
+Files: src/ui.c
+
+Patch 8.2.0432
+Problem: A few tests fail in a huge terminal.
+Solution: Make the tests pass. (Dominique Pellé, closes #5829)
+Files: src/testdir/test_autocmd.mnv, src/testdir/test_options.mnv,
+ src/testdir/test_termcodes.mnv, src/testdir/test_terminal.mnv,
+ src/testdir/test_window_cmd.mnv
+
+Patch 8.2.0433
+Problem: INT signal not properly tested.
+Solution: Add a test. Also clean up some unnecessary lines. (Dominique
+ Pellé, closes #5828)
+Files: src/testdir/test_display.mnv, src/testdir/test_ex_mode.mnv,
+ src/testdir/test_excmd.mnv, src/testdir/test_messages.mnv,
+ src/testdir/test_signals.mnv
+
+Patch 8.2.0434
+Problem: MS-Windows with VTP: Normal color not working.
+Solution: After changing the Normal color update the VTP console color.
+ (Nobuhiro Takasaki, closes #5836)
+Files: src/highlight.c
+
+Patch 8.2.0435
+Problem: Channel contents might be freed twice.
+Solution: Call either channel_free_channel() or channel_free(), not both.
+ (Nobuhiro Takasaki, closes #5835)
+Files: src/channel.c
+
+Patch 8.2.0436
+Problem: No warnings for incorrect printf arguments.
+Solution: Fix attribute in declaration. Fix uncovered mistakes. (Dominique
+ Pellé, closes #5834)
+Files: src/proto.h, src/eval.c, src/ops.c, src/spellfile.c,
+ src/mnv9compile.c, src/mnv9execute.c, src/mnvinfo.c, src/gui.c
+
+Patch 8.2.0437
+Problem: MS-Windows installer contains old stuff.
+Solution: Rely on Windows NT. (Ken Takata, closes #5832)
+Files: src/dosinst.c
+
+Patch 8.2.0438
+Problem: Terminal noblock test is very flaky on BSD.
+Solution: Change WaitFor() to WaitForAssert() to be able to see why it
+ failed. Add a short wait in between sending keys.
+Files: src/testdir/test_terminal.mnv
+
+Patch 8.2.0439
+Problem: :disassemble has minor flaws.
+Solution: Format the code. Use (int) instead of (char) for %c.
+ (also by James McCoy, closes #5831)
+Files: src/mnv9execute.c
+
+Patch 8.2.0440
+Problem: Terminal noblock test is still very flaky on BSD.
+Solution: Increase the waiting time.
+Files: src/testdir/test_terminal.mnv
+
+Patch 8.2.0441
+Problem: Terminal noblock test is still failing on BSD.
+Solution: Reduce the amount of text.
+Files: src/testdir/test_terminal.mnv
+
+Patch 8.2.0442
+Problem: Channel contents might be used after being freed.
+Solution: Reset the job channel before freeing the channel.
+Files: src/channel.c
+
+Patch 8.2.0443
+Problem: Clipboard code is spread out.
+Solution: Move clipboard code to its own file. (Yegappan Lakshmanan,
+ closes #5827)
+Files: Filelist, src/Make_cyg_ming.mak, src/Make_morph.mak,
+ src/Make_mvc.mak, src/Make_vms.mms, src/Makefile, src/README.md,
+ src/clipboard.c, src/ops.c, src/proto.h, src/proto/clipboard.pro,
+ src/proto/ops.pro, src/proto/register.pro, src/proto/ui.pro,
+ src/register.c, src/ui.c
+
+Patch 8.2.0444
+Problem: Swap file test fails on some systems.
+Solution: Preserve the swap file. Send NL terminated keys.
+Files: src/testdir/test_swap.mnv
+
+Patch 8.2.0445
+Problem: Png and xpm files not in MS-Windows zip file.
+Solution: Move files to shared between Unix and Windows target.
+Files: Filelist
+
+Patch 8.2.0446
+Problem: Listener with undo of deleting all lines not tested.
+Solution: Add a test.
+Files: src/testdir/test_listener.mnv
+
+Patch 8.2.0447
+Problem: Terminal scroll tests fails on some systems.
+Solution: Remove the fixed 100msec wait for Win32. Add a loop to wait until
+ scrolling has finished. (James McCoy, closes #5842)
+Files: src/testdir/test_terminal.mnv
+
+Patch 8.2.0448
+Problem: Various functions not properly tested.
+Solution: Add more tests, especially for failures. (Yegappan Lakshmanan,
+ closes #5843)
+Files: runtime/doc/eval.txt, src/testdir/test_blob.mnv,
+ src/testdir/test_breakindent.mnv, src/testdir/test_charsearch.mnv,
+ src/testdir/test_clientserver.mnv, src/testdir/test_cmdline.mnv,
+ src/testdir/test_exists.mnv, src/testdir/test_expand_func.mnv,
+ src/testdir/test_expr.mnv, src/testdir/test_file_perm.mnv,
+ src/testdir/test_functions.mnv, src/testdir/test_gui.mnv,
+ src/testdir/test_listdict.mnv, src/testdir/test_marks.mnv,
+ src/testdir/test_partial.mnv, src/testdir/test_registers.mnv,
+ src/testdir/test_search.mnv, src/testdir/test_spell.mnv,
+ src/testdir/test_substitute.mnv, src/testdir/test_syn_attr.mnv,
+ src/testdir/test_syntax.mnv, src/testdir/test_taglist.mnv,
+ src/testdir/test_utf8.mnv, src/testdir/test_vartabs.mnv,
+ src/testdir/test_window_cmd.mnv
+
+Patch 8.2.0449
+Problem: MNV9: crash if return type is invalid. (Yegappan Lakshmanan)
+Solution: Always return some type, not NULL.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0450
+Problem: Not enough testing for restricted mode and function calls.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #5847)
+Files: src/testdir/test_method.mnv, src/testdir/test_restricted.mnv,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0451
+Problem: Win32: double-width character displayed incorrectly.
+Solution: First move the cursor to the first column. (Nobuhiro Takasaki,
+ closes #5848)
+Files: src/os_win32.c
+
+Patch 8.2.0452
+Problem: channel_parse_messages() fails when called recursively.
+Solution: Return for a recursive call. (closes #5835)
+Files: src/channel.c
+
+Patch 8.2.0453
+Problem: Trailing space in job_start() command causes empty argument.
+Solution: Ignore trailing space. (closes #5851)
+Files: src/misc2.c, src/testdir/test_channel.mnv
+
+Patch 8.2.0454
+Problem: Some tests fail when the system is slow.
+Solution: Make the run number global, use in the test to increase the
+ waiting time. (closes #5841)
+Files: src/testdir/runtest.mnv, src/testdir/test_functions.mnv
+
+Patch 8.2.0455
+Problem: Cannot set the highlight group for a specific terminal.
+Solution: Add the "highlight" option to term_start(). (closes #5818)
+Files: src/terminal.c, src/structs.h, src/channel.c,
+ src/testdir/test_terminal.mnv, runtime/doc/terminal.txt,
+ src/testdir/dumps/Test_terminal_popup_Terminal.dump,
+ src/testdir/dumps/Test_terminal_popup_MyTermCol.dump
+
+Patch 8.2.0456
+Problem: Test_confirm_cmd is flaky.
+Solution: Add a term_wait() call. (closes #5854)
+Files: src/testdir/test_excmd.mnv
+
+Patch 8.2.0457
+Problem: Test_quotestar() often fails when run under valgrind.
+Solution: Wait longer for the GUI to start.
+Files: src/testdir/test_quotestar.mnv
+
+Patch 8.2.0458
+Problem: Missing feature check in test function.
+Solution: Add check commands.
+Files: src/testdir/test_excmd.mnv
+
+Patch 8.2.0459
+Problem: Cannot check if a function name is correct.
+Solution: Add "?funcname" to exists().
+Files: runtime/doc/eval.txt, src/evalfunc.c, src/testdir/test_exists.mnv,
+ src/testdir/check.mnv
+
+Patch 8.2.0460 (after 8.2.0459)
+Problem: Build failure because of wrong feature name.
+Solution: Correct feature name.
+Files: src/evalfunc.c
+
+Patch 8.2.0461
+Problem: Confirm test fails on amd64 system. (Alimar Riesebieter)
+Solution: Add an extra WaitForAssert(). (Dominique Pellé)
+Files: src/testdir/test_excmd.mnv
+
+Patch 8.2.0462
+Problem: Previewwindow test fails on some systems. (James McCoy)
+Solution: Wait a bit after sending the "o". (closes #5849)
+Files: src/testdir/test_popup.mnv,
+ src/testdir/dumps/Test_popup_and_previewwindow_01.dump
+
+Patch 8.2.0463
+Problem: Build error without float and channel feature. (John Marriott)
+Solution: Define return types always.
+Files: src/globals.h, src/evalfunc.c
+
+Patch 8.2.0464
+Problem: Typos and other small problems.
+Solution: Fix the typos. Add missing files to the distribution.
+Files: Filelist, src/buffer.c, src/drawline.c, src/gui_gtk_x11.c,
+ src/os_unixx.h, src/proto/popupwin.pro
+
+Patch 8.2.0465
+Problem: MNV9: dead code and wrong return type.
+Solution: Remove dead code. Fix return type. Add more tests.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0466 (after 8.2.0452)
+Problem: Not parsing messages recursively breaks the gomnv plugin.
+Solution: When called recursively do handle messages but do not close
+ channels.
+Files: src/channel.c
+
+Patch 8.2.0467
+Problem: MNV9: some errors are not tested
+Solution: Add more tests. Fix that MNV9 script flag is not reset.
+Files: src/mnv9compile.c, src/scriptfile.c, src/dict.c,
+ src/testdir/test_mnv9_expr.mnv, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0468
+Problem: GUI: pixel dust with some fonts and characters.
+Solution: Always redraw the character before the cursor. (Nir Lichtman,
+ closes #5549, closes #5856)
+Files: src/gui.c, src/proto/gui.pro, src/screen.c
+
+Patch 8.2.0469
+Problem: MNV9: no error for missing ] after list.
+Solution: Add error message. Add more tests.
+Files: src/globals.h, src/list.c, src/userfunc.c,
+ src/testdir/test_mnv9_expr.mnv, src/testdir/test_lambda.mnv
+
+Patch 8.2.0470
+Problem: Test_confirm_cmd_cancel() can fail on a slow system.
+Solution: Use WaitForAssert(). (Ozaki Kiichi, closes #5861)
+Files: src/testdir/test_excmd.mnv
+
+Patch 8.2.0471
+Problem: Missing change to compile_list().
+Solution: Add error message.
+Files: src/mnv9compile.c
+
+Patch 8.2.0472
+Problem: Terminal highlight name is set twice, leaking memory.
+Solution: Delete one.
+Files: src/terminal.c
+
+Patch 8.2.0473
+Problem: Variables declared in an outer scope.
+Solution: Declare variables only in the scope where they are used.
+Files: src/evalvars.c
+
+Patch 8.2.0474 (after 8.2.0403)
+Problem: Cannot use :write when using a plugin with BufWriteCmd.
+Solution: Reset BF_NOTEDITED after BufWriteCmd. (closes #5807)
+Files: src/fileio.c, src/testdir/test_autocmd.mnv
+
+Patch 8.2.0475
+Problem: Channel out_cb test still fails sometimes on Mac.
+Solution: Use an even longer timeout.
+Files: src/testdir/test_channel.mnv
+
+Patch 8.2.0476
+Problem: Terminal nasty callback test fails sometimes.
+Solution: use term_wait() instead of a sleep. (Yee Cheng Chin, closes #5865)
+Files: src/testdir/test_terminal.mnv
+
+Patch 8.2.0477
+Problem: MNV9: error messages not tested.
+Solution: Add more tests.
+Files: src/testdir/test_mnv9_expr.mnv, src/mnv9execute.c
+
+Patch 8.2.0478
+Problem: New buffers are not added to the Buffers menu.
+Solution: Turn number into string. (Yee Cheng Chin, closes #5864)
+Files: runtime/menu.mnv, src/testdir/test_menu.mnv
+
+Patch 8.2.0479
+Problem: Unloading shared libraries on exit has no purpose.
+Solution: Do not unload shared libraries on exit.
+Files: src/if_lua.c, src/if_perl.xs, src/if_python.c, src/if_python3.c,
+ src/if_ruby.c, src/if_tcl.c
+
+Patch 8.2.0480
+Problem: MNV9: some code is not tested.
+Solution: Add more tests.
+Files: src/testdir/test_mnv9_expr.mnv, src/mnv9compile.c
+
+Patch 8.2.0481
+Problem: Travis is still using trusty.
+Solution: Adjust config to use bionic. (Ozaki Kiichi, closes #5868)
+Files: .travis.yml, src/testdir/lsan-suppress.txt
+
+Patch 8.2.0482
+Problem: Channel and sandbox code not sufficiently tested.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #5855)
+Files: src/option.h, src/testdir/test_channel.mnv,
+ src/testdir/test_clientserver.mnv, src/testdir/test_cmdline.mnv,
+ src/testdir/test_edit.mnv, src/testdir/test_excmd.mnv,
+ src/testdir/test_normal.mnv, src/testdir/test_prompt_buffer.mnv,
+ src/testdir/test_restricted.mnv, src/testdir/test_smartindent.mnv,
+ src/testdir/test_substitute.mnv, src/testdir/test_terminal.mnv,
+ src/testdir/test_textformat.mnv, src/testdir/test_visual.mnv
+
+Patch 8.2.0483
+Problem: MNV9: "let x = x + 1" does not give an error.
+Solution: Hide the variable when compiling the expression.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.0484
+Problem: MNV9: some error messages not tested.
+Solution: Add more tests.
+Files: src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.0485 (after 8.2.0483)
+Problem: MNV9 script test fails.
+Solution: Stricter condition for adding new local variable.
+Files: Stricter condition for adding new local variable.
+
+Patch 8.2.0486
+Problem: MNV9: some code and error messages not tested.
+Solution: Add more tests.
+Files: src/mnv9compile.c, src/evalvars.c, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0487
+Problem: MNV9: compiling not sufficiently tested.
+Solution: Add more tests. Fix bug with PCALL.
+Files: src/mnv9compile.c, src/mnv9execute.c, src/mnv9.h,
+ src/testdir/test_mnv9_script.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.0488
+Problem: MNV9: Compiling can break when using a lambda inside :def.
+Solution: Do not keep a pointer to the dfunc_T for longer time.
+Files: src/mnv9compile.c, src/mnv9.h
+
+Patch 8.2.0489
+Problem: MNV9: memory leaks.
+Solution: Free memory in the right place. Add hints for using asan.
+Files: src/mnv9compile.c, src/testdir/lsan-suppress.txt, src/Makefile
+
+Patch 8.2.0490
+Problem: Win32: VTP doesn't respect 'restorescreen'.
+Solution: Use escape codes to switch to alternate screen. (Nobuhiro
+ Takasaki, closes #5872)
+Files: src/os_win32.c
+
+Patch 8.2.0491
+Problem: Cannot recognize a <script> mapping using maparg().
+Solution: Add the "script" key. (closes #5873)
+Files: src/map.c, runtime/doc/eval.txt, src/testdir/test_maparg.mnv
+
+Patch 8.2.0492
+Problem: MNV9: some error messages not tested.
+Solution: Add more tests. Remove dead code. Fix uncovered bugs.
+Files: src/mnv9compile.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_expr.mnv, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0493
+Problem: MNV9: some error messages not tested.
+Solution: Add more tests. Fix uncovered bugs.
+Files: src/mnv9compile.c, src/mnv9execute.c, src/testing.c, src/eval.c,
+ src/proto/testing.pro, src/evalfunc.c, runtime/doc/eval.txt,
+ runtime/doc/testing.txt, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0494
+Problem: MNV9: asan error.
+Solution: Only get the type when there is one.
+Files: src/mnv9compile.c
+
+Patch 8.2.0495
+Problem: MNV9: some code not tested.
+Solution: Add more tests. Support more const expressions.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0496
+Problem: MNV9: disassemble test fails.
+Solution: Separate test cases with recognized constant expressions.
+Files: src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.0497
+Problem: Too verbose output from the asan build in Travis.
+Solution: Filter out suppression messages. (Ozaki Kiichi, closes #5874)
+Files: .travis.yml
+
+Patch 8.2.0498
+Problem: Coverity complains about uninitialized field.
+Solution: Initialize the whole typval_T.
+Files: src/mnv9compile.c
+
+Patch 8.2.0499
+Problem: Calling a lambda is slower than evaluating a string.
+Solution: Make calling a lambda faster. (Ken Takata, closes #5727)
+Files: src/userfunc.c
+
+Patch 8.2.0500
+Problem: Using the same loop in many places.
+Solution: Define more FOR_ALL macros. (Yegappan Lakshmanan, closes #5339)
+Files: src/arglist.c, src/autocmd.c, src/buffer.c, src/change.c,
+ src/channel.c, src/cmdexpand.c, src/diff.c, src/eval.c,
+ src/evalbuffer.c, src/evalfunc.c, src/evalvars.c,
+ src/evalwindow.c, src/ex_cmds2.c, src/filepath.c, src/globals.h,
+ src/gui.c, src/if_py_both.h, src/if_ruby.c, src/insexpand.c,
+ src/list.c, src/misc2.c, src/netbeans.c, src/popupwin.c,
+ src/quickfix.c, src/screen.c, src/sign.c, src/spell.c,
+ src/spellfile.c, src/spellsuggest.c, src/tag.c, src/terminal.c,
+ src/userfunc.c, src/window.c
+
+Patch 8.2.0501
+Problem: MNV9: script test fails when channel feature is missing.
+Solution: Add a has() condition.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0502
+Problem: MNV9: some code is not tested.
+Solution: Add more tests. Fix uncovered problems.
+Files: src/mnv9compile.c, src/regexp.c, src/proto/regexp.pro,
+ src/cmdexpand.c, src/ex_cmds.c, src/ex_docmd.c, src/ex_eval.c,
+ src/ex_getln.c, src/highlight.c, src/search.c, src/syntax.c,
+ src/tag.c, src/userfunc.c, src/testdir/test_mnv9_script.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.0503
+Problem: MNV9: some code is not tested.
+Solution: Add tests. Fix uncovered problems.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0504
+Problem: MNV9: leaking scope memory when compilation fails.
+Solution: Cleanup the scope list.
+Files: src/mnv9compile.c
+
+Patch 8.2.0505
+Problem: term_gettty() not sufficiently tested.
+Solution: Add more asserts. (Dominique Pellé, closes #5877)
+Files: src/testdir/test_terminal.mnv
+
+Patch 8.2.0506
+Problem: Coverity complains about ignoring return value.
+Solution: Add (void).
+Files: src/userfunc.c
+
+Patch 8.2.0507 (after 8.2.0472)
+Problem: Getbufvar() may get the wrong dictionary. (David le Blanc)
+Solution: Check for empty name. (closes #5878)
+Files: src/evalvars.c, src/testdir/test_functions.mnv
+
+Patch 8.2.0508
+Problem: MNV9: func and partial types not done yet
+Solution: Fill in details about func declaration, drop a separate partial
+ declaration.
+Files: runtime/doc/mnv9.txt, src/mnv9compile.c, src/globals.h,
+ src/structs.h, src/evalfunc.c, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_script.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.0509
+Problem: various code is not properly tested.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #5871)
+Files: src/main.c, src/testdir/check.mnv, src/testdir/shared.mnv,
+ src/testdir/term_util.mnv, src/testdir/test_clientserver.mnv,
+ src/testdir/test_ex_mode.mnv, src/testdir/test_expand.mnv,
+ src/testdir/test_functions.mnv, src/testdir/test_options.mnv,
+ src/testdir/test_startup.mnv, src/testdir/test_textformat.mnv,
+ src/testdir/test_trycatch.mnv, src/testdir/test_mnvinfo.mnv
+
+Patch 8.2.0510
+Problem: Coverity complains about using uninitialized variable.
+Solution: Assign a value to "scol". Move code inside NULL check.
+Files: src/beval.c, src/popupwin.c
+
+Patch 8.2.0511
+Problem: Cscope code not fully tested.
+Solution: Add more test cases. (Dominique Pellé, closes #5886)
+Files: src/testdir/test_cscope.mnv
+
+Patch 8.2.0512
+Problem: MNV9: no optional arguments in func type.
+Solution: Check for question mark after type. Find function reference
+ without function().
+Files: src/mnv9compile.c, src/mnv9execute.c, src/structs.h,
+ src/globals.h, src/mnv.h, src/mnv9.h, src/userfunc.c,
+ src/testdir/Make_all.mak, src/testdir/test_mnv9_script.mnv,
+ src/testdir/test_mnv9_expr.mnv, src/testdir/test_mnv9_func.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.0513
+Problem: Reading past allocated memory when using varargs.
+Solution: Fix copying function argument types.
+Files: src/mnv9compile.c
+
+Patch 8.2.0514
+Problem: Several global functions are used in only one file.
+Solution: Make the functions static. (Yegappan Lakshmanan, closes #5884)
+Files: src/drawscreen.c, src/evalvars.c, src/getchar.c, src/list.c,
+ src/proto/drawscreen.pro, src/proto/evalvars.pro,
+ src/proto/getchar.pro, src/proto/list.pro, src/proto/version.pro,
+ src/version.c
+
+Patch 8.2.0515
+Problem: Some compilers cannot add to "void *".
+Solution: Cast to "char *".
+Files: src/mnv9compile.c
+
+Patch 8.2.0516
+Problem: Client-server code is spread out.
+Solution: Move client-server code to a new file. (Yegappan Lakshmanan,
+ closes #5885)
+Files: Filelist, src/Make_cyg_ming.mak, src/Make_morph.mak,
+ src/Make_mvc.mak, src/Make_vms.mms, src/Makefile, src/README.md,
+ src/clientserver.c, src/evalfunc.c, src/main.c, src/proto.h,
+ src/proto/clientserver.pro, src/proto/main.pro
+
+Patch 8.2.0517
+Problem: MNV9: cannot separate "func" and "func(): void".
+Solution: Use VAR_ANY for "any" and VAR_UNKNOWN for "no type".
+Files: src/structs.h, src/globals.h, src/eval.c, src/evalfunc.c,
+ src/evalvars.c, src/testing.c, src/mnv9compile.c,
+ src/mnv9execute.c, src/mnvinfo.c, src/if_py_both.h, src/json.c,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.0518
+Problem: A terminal falls back to setting $TERM to "xterm".
+Solution: Use "xterm-color" if more than 16 colors are supported and
+ "xterm-256color" if at least 256 colors are supported.
+ (closes #5887)
+Files: src/os_unix.c
+
+Patch 8.2.0519
+Problem: MNV9: return type not properly checked.
+Solution: Check type properly, also at runtime.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.0520
+Problem: Tests are not listed in sorted order.
+Solution: Move test_ex_mode. (Doug Richardson, closes #5889)
+Files: src/testdir/Make_all.mak
+
+Patch 8.2.0521
+Problem: Crash when reading a blob fails.
+Solution: Avoid keeping a pointer to a freed blob object. (Dominique Pellé,
+ closes #5890) Adjust error messages.
+Files: src/filepath.c, src/testdir/test_blob.mnv
+
+Patch 8.2.0522
+Problem: Several errors are not tested for.
+Solution: Add tests. (Yegappan Lakshmanan, closes #5892)
+Files: src/testdir/test_autocmd.mnv, src/testdir/test_clientserver.mnv,
+ src/testdir/test_digraph.mnv, src/testdir/test_expand.mnv,
+ src/testdir/test_expr.mnv, src/testdir/test_functions.mnv,
+ src/testdir/test_gui.mnv, src/testdir/test_highlight.mnv,
+ src/testdir/test_ins_complete.mnv, src/testdir/test_lambda.mnv,
+ src/testdir/test_listdict.mnv, src/testdir/test_normal.mnv,
+ src/testdir/test_options.mnv, src/testdir/test_preview.mnv,
+ src/testdir/test_user_func.mnv, src/testdir/test_mnv9_func.mnv,
+ src/testdir/test_mnv9_script.mnv, src/testdir/test_mnvinfo.mnv,
+ src/testdir/test_mnvscript.mnv, src/testdir/test_window_cmd.mnv
+
+Patch 8.2.0523
+Problem: Loops are repeated.
+Solution: Use FOR_ALL_ macros. (Yegappan Lakshmanan, closes #5882)
+Files: src/buffer.c, src/drawscreen.c, src/evalfunc.c, src/evalwindow.c,
+ src/globals.h, src/gui_athena.c, src/gui_gtk.c, src/gui_motif.c,
+ src/gui_w32.c, src/list.c, src/menu.c, src/popupmenu.c,
+ src/popupwin.c, src/quickfix.c, src/syntax.c, src/time.c,
+ src/userfunc.c, src/mnv9compile.c
+
+Patch 8.2.0524
+Problem: Win32: searching for file matches is slow.
+Solution: Instead of making another round to find any short filename, check
+ for the short name right away. Avoid using an ordinary file like a
+ directory. (Nir Lichtman, closes #5883)
+Files: src/filepath.c
+
+Patch 8.2.0525 (after 8.2.0524)
+Problem: Win32: typo in assignment and misplaced paren.
+Solution: Fix the syntax.
+Files: src/filepath.c
+
+Patch 8.2.0526
+Problem: Gcc 9 complains about empty statement.
+Solution: Add {}. (Dominique Pellé, closes #5894)
+Files: src/evalfunc.c
+
+Patch 8.2.0527
+Problem: MNV9: function types insufficiently tested.
+Solution: Add more tests. Fix white space check. Add "test_mnv9" target.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv, src/Makefile,
+ src/testdir/Makefile, src/testdir/Make_all.mak
+
+Patch 8.2.0528
+Problem: MNV9: function arguments insufficiently tested.
+Solution: Check types. Add more tests. Fix function with varargs only.
+Files: src/mnv9compile.c, src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.0529
+Problem: MNV9: function argument with default not checked.
+Solution: Check type of argument with default value.
+Files: src/mnv9compile.c, src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.0530
+Problem: Test crashes on s390. (James McCoy)
+Solution: Explicitly define an 8 big signed type. (closes #5897)
+Files: src/structs.h
+
+Patch 8.2.0531
+Problem: Various errors not tested.
+Solution: Add tests. (Yegappan Lakshmanan, closes #5895)
+Files: src/testdir/test_search.mnv, src/testdir/test_source.mnv,
+ src/testdir/test_syntax.mnv, src/testdir/test_user_func.mnv,
+ src/testdir/test_mnvscript.mnv
+
+Patch 8.2.0532
+Problem: Cannot use simplify() as a method.
+Solution: Add FEARG_1. (closes #5896)
+Files: runtime/doc/eval.txt, src/evalfunc.c,
+ src/testdir/test_functions.mnv
+
+Patch 8.2.0533
+Problem: Tests using term_wait() can still be flaky.
+Solution: Increase the wait time when rerunning a test. (James McCoy,
+ closes #5899) Halve the initial times to make tests run faster
+ when there is no rerun.
+Files: src/testdir/term_util.mnv, src/testdir/test_arglist.mnv,
+ src/testdir/test_autocmd.mnv, src/testdir/test_balloon.mnv,
+ src/testdir/test_bufline.mnv, src/testdir/test_channel.mnv,
+ src/testdir/test_cmdline.mnv, src/testdir/test_conceal.mnv,
+ src/testdir/test_cursorline.mnv, src/testdir/test_debugger.mnv,
+ src/testdir/test_diffmode.mnv, src/testdir/test_display.mnv,
+ src/testdir/test_functions.mnv, src/testdir/test_highlight.mnv,
+ src/testdir/test_ins_complete.mnv, src/testdir/test_mapping.mnv,
+ src/testdir/test_match.mnv, src/testdir/test_matchadd_conceal.mnv,
+ src/testdir/test_messages.mnv, src/testdir/test_number.mnv,
+ src/testdir/test_popup.mnv, src/testdir/test_popupwin.mnv,
+ src/testdir/test_profile.mnv, src/testdir/test_search.mnv,
+ src/testdir/test_search_stat.mnv, src/testdir/test_startup.mnv,
+ src/testdir/test_startup_utf8.mnv,
+ src/testdir/test_statusline.mnv, src/testdir/test_suspend.mnv,
+ src/testdir/test_swap.mnv, src/testdir/test_tagjump.mnv,
+ src/testdir/test_terminal.mnv, src/testdir/test_terminal_fail.mnv,
+ src/testdir/test_timers.mnv, src/testdir/test_mnvscript.mnv
+
+Patch 8.2.0534
+Problem: Client-server test fails under valgrind.
+Solution: Use WaitForAssert().
+Files: src/testdir/test_clientserver.mnv
+
+Patch 8.2.0535
+Problem: Regexp patterns not fully tested.
+Solution: Add more regexp tests and others. (Yegappan Lakshmanan,
+ closes #5901)
+Files: src/testdir/test_marks.mnv, src/testdir/test_options.mnv,
+ src/testdir/test_regexp_latin.mnv, src/testdir/test_search.mnv
+
+Patch 8.2.0536
+Problem: MNV9: some compilation code not tested.
+Solution: Add more test cases.
+Files: src/evalvars.c, src/proto/evalvars.pro, src/mnv9compile.c,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.0537
+Problem: MNV9: no check for sandbox when setting v:var.
+Solution: Check for sandbox.
+Files: src/evalvars.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0538
+Problem: MNV9: VAR_PARTIAL is not used during compilation.
+Solution: Remove VAR_PARTIAL.
+Files: src/mnv9.h, src/mnv9compile.c, src/mnv9execute.c
+
+Patch 8.2.0539
+Problem: Comparing two NULL list fails.
+Solution: Change the order of comparing two lists.
+Files: src/list.c, src/testdir/test_assert.mnv
+
+Patch 8.2.0540
+Problem: Regexp and other code not tested.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #5904)
+Files: src/testdir/test_backspace_opt.mnv, src/testdir/test_expr.mnv,
+ src/testdir/test_increment.mnv, src/testdir/test_normal.mnv,
+ src/testdir/test_options.mnv, src/testdir/test_regexp_latin.mnv,
+ src/testdir/test_search.mnv, src/testdir/test_substitute.mnv,
+ src/testdir/test_terminal.mnv, src/testdir/test_virtualedit.mnv
+
+Patch 8.2.0541
+Problem: Travis CI does not give compiler warnings.
+Solution: Add flags for warnings. Fix uncovered problems. (Ozaki Kiichi,
+ closes #5898)
+Files: .travis.yml, ci/config.mk.clang.sed, ci/config.mk.gcc.sed,
+ ci/config.mk.sed, src/if_perl.xs, src/if_ruby.c,
+ src/libvterm/t/harness.c
+
+Patch 8.2.0542
+Problem: No test for E386.
+Solution: Add a test. (Dominique Pellé, closes #5911)
+Files: src/testdir/test_search.mnv
+
+Patch 8.2.0543
+Problem: MNV9: function with varargs does not work properly.
+Solution: Improve function type spec and add tests. Fix bugs.
+Files: runtime/doc/mnv9.txt, src/mnv9compile.c, src/mnv9execute.c,
+ src/structs.h, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.0544
+Problem: Memory leak in search test.
+Solution: Free msgbuf. (Dominique Pellé, closes #5912)
+Files: src/search.c
+
+Patch 8.2.0545
+Problem: Unused arguments ignored in non-standard way.
+Solution: Add UNUSED instead of (void).
+Files: src/libvterm/t/harness.c
+
+Patch 8.2.0546
+Problem: MNV9: varargs implementation is inefficient.
+Solution: Create list without moving the arguments.
+Files: src/mnv9compile.c, src/mnv9execute.c
+
+Patch 8.2.0547
+Problem: Win32: restoring screen not always done right.
+Solution: Use a more appropriate method. (Nobuhiro Takasaki, closes #5909)
+Files: src/os_win32.c
+
+Patch 8.2.0548
+Problem: MNV9: not all possible func type errors tested.
+Solution: Add more tests.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.0549
+Problem: User systemd files not recognized.
+Solution: Add filetype patterns. (Kevin Locke, closes #5914)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.0550
+Problem: Some changes in the libvterm upstream code.
+Solution: Include some changes.
+Files: src/libvterm/t/harness.c
+
+Patch 8.2.0551
+Problem: Not all code for options is tested.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #5913)
+Files: src/testdir/test_options.mnv, src/testdir/test_python3.mnv,
+ src/testdir/test_undo.mnv, src/testdir/test_mnvscript.mnv
+
+Patch 8.2.0552
+Problem: MNV9: some errors not covered by tests.
+Solution: Add more tests. Check Funcref argument types.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.0553 (after 8.2.0550)
+Problem: Error for unused argument.
+Solution: Add UNUSED.
+Files: src/libvterm/t/harness.c
+
+Patch 8.2.0554
+Problem: The GUI doesn't set t_Co.
+Solution: In the GUI set t_Co to 256 * 256 * 256. (closes #5903)
+Files: src/term.c, src/proto/term.pro, src/gui.c,
+ src/testdir/test_gui.mnv
+
+Patch 8.2.0555
+Problem: MNV9: line continuation is not always needed.
+Solution: Recognize continuation lines automatically in list and dict.
+Files: runtime/doc/mnv9.txt, src/mnv9compile.c,
+ src/testdir/test_mnv9_expr.mnv, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0556
+Problem: MNV9: memory leak when finding common type.
+Solution: Store allocated memory in type growarray.
+Files: src/mnv9compile.c
+
+Patch 8.2.0557
+Problem: No IPv6 support for channels.
+Solution: Add IPv6 support. (Ozaki Kiichi, closes #5893)
+Files: .travis.yml, runtime/doc/channel.txt, runtime/doc/various.txt,
+ src/Make_cyg_ming.mak, src/Make_mvc.mak, src/auto/configure,
+ src/channel.c, src/config.h.in, src/configure.ac, src/evalfunc.c,
+ src/proto/channel.pro, src/testdir/check.mnv,
+ src/testdir/runtest.mnv, src/testdir/test_cdo.mnv,
+ src/testdir/test_channel.py, src/testdir/test_channel.mnv,
+ src/testdir/test_channel_6.py, src/testdir/test_escaped_glob.mnv,
+ src/testdir/test_getcwd.mnv, src/testdir/test_hide.mnv
+
+Patch 8.2.0558
+Problem: MNV9: dict code not covered by tests.
+Solution: Remove dead code, adjust test case.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.0559
+Problem: Clearing a struct is verbose.
+Solution: Define and use CLEAR_FIELD() and CLEAR_POINTER().
+Files: src/mnv.h, src/blowfish.c, src/channel.c, src/charset.c,
+ src/clipboard.c, src/diff.c, src/eval.c, src/evalfunc.c,
+ src/ex_cmds2.c, src/ex_docmd.c, src/ex_getln.c, src/findfile.c,
+ src/gui_gtk_f.c, src/gui_mac.c, src/gui_motif.c, src/gui_w32.c,
+ src/gui_x11.c, src/hardcopy.c, src/hashtab.c, src/highlight.c,
+ src/if_mzsch.c, src/insexpand.c, src/kword_test.c, src/list.c,
+ src/main.c, src/map.c, src/memfile.c, src/message_test.c,
+ src/misc1.c, src/netbeans.c, src/normal.c, src/ops.c,
+ src/option.c, src/os_mswin.c, src/os_win32.c, src/popupmenu.c,
+ src/quickfix.c, src/regexp.c, src/regexp_bt.c, src/regexp_nfa.c,
+ src/search.c, src/sign.c, src/spell.c, src/spellfile.c,
+ src/spellsuggest.c, src/syntax.c, src/tag.c, src/terminal.c,
+ src/time.c, src/undo.c, src/userfunc.c, src/mnv9compile.c,
+ src/mnv9execute.c, src/if_py_both.h
+
+Patch 8.2.0560
+Problem: Compiler warning in tiny build.
+Solution: Move declaration inside #ifdef. (Dominique Pellé, closes #5915)
+Files: src/ex_docmd.c
+
+Patch 8.2.0561
+Problem: MNV9: cannot split function call in multiple lines.
+Solution: Find more arguments in following lines.
+Files: runtime/doc/mnv9.txt, src/mnv9compile.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0562
+Problem: MNV9: cannot split an expression into multiple lines.
+Solution: Continue in next line after an operator.
+Files: runtime/doc/mnv9.txt, src/macros.h, src/mnv9compile.c,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.0563
+Problem: MNV9: cannot split a function line.
+Solution: Continue in next line so long as the function isn't done.
+Files: runtime/doc/mnv9.txt, src/userfunc.c, src/proto/userfunc.pro,
+ src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.0564
+Problem: MNV9: calling a def function from non-mnv9 may fail.
+Solution: Convert varargs to a list.
+Files: src/testdir/test_mnv9_func.mnv, src/mnv9execute.c
+
+Patch 8.2.0565
+Problem: MNV9: tests contain superfluous line continuation.
+Solution: Remove line continuation no longer needed. Skip empty lines.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.0566
+Problem: MNV9: variable can be used uninitialized.
+Solution: Jump to after where variable is used.
+Files: src/mnv9execute.c
+
+Patch 8.2.0567
+Problem: MNV9: cannot put comments halfway expressions.
+Solution: Support # comments in many places.
+Files: runtime/doc/mnv9.txt, src/mnv9compile.c, src/userfunc.c,
+ src/ex_docmd.c, src/testdir/test_mnv9_func.mnv,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0568
+Problem: The man filetype plugin overwrites the unnamed register.
+Solution: Use the black hole register. (Jason Franklin)
+Files: runtime/ftplugin/man.mnv, src/testdir/test_man.mnv
+
+Patch 8.2.0569
+Problem: Build failure with tiny version.
+Solution: Add #ifdef.
+Files: src/ex_docmd.c
+
+Patch 8.2.0570
+Problem: MNV9: no error when omitting type from argument.
+Solution: Enforce specifying argument types.
+Files: src/userfunc.c, src/ex_eval.c, src/testdir/test_mnv9_script.mnv,
+ src/testdir/test_mnv9_func.mnv, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.0571
+Problem: Double free when passing invalid argument to job_start().
+Solution: Clear the argument when freed. (Masato Nishihata, closes #5926)
+Files: src/misc2.c, src/testdir/test_channel.mnv
+
+Patch 8.2.0572 (after 8.2.0571)
+Problem: Using two lines for free and reset.
+Solution: Use MNV_CLEAR() instead. (Yegappan Lakshmanan)
+Files: src/misc2.c
+
+Patch 8.2.0573
+Problem: using :version twice leaks memory
+Solution: Only initialize variables once. (Dominique Pellé, closes #5917)
+Files: src/testdir/Make_all.mak, src/testdir/test_alot.mnv,
+ src/testdir/test_version.mnv, src/version.c, src/globals.h
+
+Patch 8.2.0574
+Problem: Ipv6 feature not shown in :version output.
+Solution: Add ipv6 in :version output. (Ozaki Kiichi, closes #5924)
+Files: runtime/doc/eval.txt, src/version.c
+
+Patch 8.2.0575
+Problem: :digraph! not tested.
+Solution: Add a test. (Dominique Pellé, closes #5925)
+Files: src/testdir/test_digraph.mnv
+
+Patch 8.2.0576
+Problem: Some errors are not covered by tests.
+Solution: Add a few more tests. (Dominique Pellé, closes #5920)
+Files: src/testdir/test_buffer.mnv, src/testdir/test_digraph.mnv,
+ src/testdir/test_expr.mnv, src/testdir/test_messages.mnv
+
+Patch 8.2.0577
+Problem: Not all modifiers supported for :options.
+Solution: Use all cmdmod.split flags. (closes #4401)
+Files: src/usercmd.c, src/proto/usercmd.pro, src/scriptfile.c,
+ src/testdir/test_options.mnv, src/testdir/test_usercommands.mnv
+
+Patch 8.2.0578
+Problem: Heredoc for interfaces does not support "trim".
+Solution: Update the script heredoc support to be same as the :let command.
+ (Yegappan Lakshmanan, closes #5916)
+Files: runtime/doc/if_lua.txt, runtime/doc/if_mzsch.txt,
+ runtime/doc/if_perl.txt, runtime/doc/if_pyth.txt,
+ runtime/doc/if_ruby.txt, runtime/doc/if_tcl.txt, src/evalvars.c,
+ src/ex_getln.c, src/proto/evalvars.pro, src/testdir/test86.in,
+ src/testdir/test87.in, src/testdir/test_lua.mnv,
+ src/testdir/test_perl.mnv, src/testdir/test_python2.mnv,
+ src/testdir/test_python3.mnv, src/testdir/test_pyx2.mnv,
+ src/testdir/test_pyx3.mnv, src/testdir/test_ruby.mnv,
+ src/testdir/test_tcl.mnv, src/userfunc.c, src/mnv9compile.c
+
+Patch 8.2.0579
+Problem: Coverity warns for unused value.
+Solution: Change order and use "else if".
+Files: src/os_unix.c
+
+Patch 8.2.0580
+Problem: Window size wrong if 'ea' is off and 'splitright' is on and
+ splitting then closing a window.
+Solution: Put abandoned window space in the right place. (Mark Waggoner)
+Files: src/testdir/test_winbuf_close.mnv, src/window.c
+
+Patch 8.2.0581 (after 8.2.0547)
+Problem: Win32 console: the cursor position is always top-left.
+Solution: Revert the patch for restoring screen.
+Files: src/os_win32.c
+
+Patch 8.2.0582
+Problem: Color ramp test does not show text colors.
+Solution: Add a row of 16 text colors and 16 bold text colors.
+Files: src/testdir/color_ramp.mnv
+
+Patch 8.2.0583
+Problem: MNV9: # comment not recognized in :def function.
+Solution: Recognize and skip # comment.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0584
+Problem: MNVinfo file uses obsolete function file_readable().
+Solution: Use filereadable(). (closes #5934)
+Files: src/session.c
+
+Patch 8.2.0585
+Problem: MNV9: # comment not recognized after :mnv9script.
+Solution: Check script type. Make comment after ":echo" work. And in
+ several other places.
+Files: src/ex_docmd.c, src/proto/ex_docmd.pro, src/eval.c,
+ src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0586
+Problem: MNV9: # comment not sufficiently tested
+Solution: Check for preceding white space.
+Files: src/eval.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0587
+Problem: Compiler warning for unused variable.
+Solution: Add UNUSED.
+Files: src/ex_docmd.c
+
+Patch 8.2.0588
+Problem: Putty does not use "sgr" 'ttymouse' by default.
+Solution: Make "sgr" the default for Putty. (Christian Brabandt,
+ closes #5942)
+Files: src/term.c
+
+Patch 8.2.0589
+Problem: .bsd file type not recognized.
+Solution: Recognize .bsd as BSDL. (Daniel Kho, closes #5945)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.0590
+Problem: No 'backspace' value allows ignoring the insertion point.
+Solution: Add the "nostop" and 3 values. (Christian Brabandt, closes #5940)
+Files: runtime/doc/options.txt, src/edit.c, src/option.c, src/option.h,
+ src/optionstr.c, src/testdir/gen_opt_test.mnv,
+ src/testdir/test_backspace_opt.mnv
+
+Patch 8.2.0591
+Problem: MS-Windows: should always support IPv6
+Solution: Add build flag. (Ozaki Kiichi, closes #5944)
+Files: src/Make_cyg_ming.mak, src/Make_mvc.mak
+
+Patch 8.2.0592
+Problem: MS-Windows with VTP: cursor is not made invisible.
+Solution: Output the code to make the cursor visible or invisible. (Nobuhiro
+ Takasaki, closes #5941)
+Files: src/os_win32.c
+
+Patch 8.2.0593
+Problem: Finding a user command is not optimal.
+Solution: Start further down in the list of commands.
+Files: src/ex_cmds.h, src/ex_docmd.c
+
+Patch 8.2.0594
+Problem: MS-Windows: cannot build with WINVER set to 0x0501.
+Solution: Only use inet_ntop() when available. (Ozaki Kiichi, closes #5946)
+Files: src/Make_cyg_ming.mak, src/Make_mvc.mak, src/auto/configure,
+ src/channel.c, src/config.h.in, src/configure.ac
+
+Patch 8.2.0595
+Problem: MNV9: not all commands using ends_excmd() tested.
+Solution: Find # comment after regular commands. Add more tests. Report
+ error for where it was caused.
+Files: src/ex_docmd.c, src/mnv9compile.c, src/mnv9execute.c, src/usercmd.c,
+ src/evalfunc.c, src/userfunc.c, src/proto/userfunc.pro,
+ src/testdir/test_mnv9_script.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.0596
+Problem: Crash in test49.
+Solution: Check the right pointer.
+Files: src/userfunc.c, src/testdir/test_eval.ok
+
+Patch 8.2.0597
+Problem: Test_eval is old style.
+Solution: Change some tests to a new style test.
+Files: src/testdir/test_eval.in, src/testdir/test_eval.ok,
+ src/testdir/test_eval_stuff.mnv
+
+Patch 8.2.0598
+Problem: Test_eval_stuff fails in normal terminal.
+Solution: Close the new window.
+Files: src/testdir/test_eval_stuff.mnv
+
+Patch 8.2.0599
+Problem: Netbeans interface insufficiently tested.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #5921)
+Files: runtime/doc/netbeans.txt, src/netbeans.c, src/os_win32.c,
+ src/testdir/runtest.mnv, src/testdir/test_netbeans.py,
+ src/testdir/test_netbeans.mnv
+
+Patch 8.2.0600
+Problem: MNV9: cannot read or write w:, t: and b: variables.
+Solution: Implement load and store for w:, t: and b: variables.
+ (closes #5950)
+Files: src/testdir/test_mnv9_disassemble.mnv,
+ src/testdir/test_mnv9_expr.mnv, src/testdir/test_mnv9_script.mnv,
+ src/mnv9.h, src/mnv9compile.c, src/mnv9execute.c
+
+Patch 8.2.0601
+Problem: MNV9: :unlet is not compiled.
+Solution: Implement :unlet instruction and check for errors.
+Files: src/mnv9compile.c, src/proto/mnv9compile.pro, src/mnv9.h,
+ src/mnv9execute.c, src/evalvars.c, src/proto/evalvars.pro,
+ src/eval.c, src/testdir/test_mnv9_script.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.0602
+Problem: :unlet $VAR does not work properly.
+Solution: Make ":lockvar $VAR" fail. Check the "skip" flag.
+Files: src/evalvars.c, src/globals.h, src/testdir/test_mnvscript.mnv
+
+Patch 8.2.0603
+Problem: Configure does not detect moonjit.
+Solution: Add check for moonjit. (Shlomi Fish, closes #5947)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.0604
+Problem: :startinsert in a terminal window used later.
+Solution: Ignore :startinsert in a terminal window. (closes #5952)
+Files: src/ex_docmd.c, src/testdir/test_terminal.mnv
+
+Patch 8.2.0605
+Problem: MNV9: cannot unlet an environment variable.
+Solution: Implement unlet for $VAR.
+Files: src/mnv9.h, src/mnv9compile.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_script.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.0606
+Problem: Several syntax HL errors not checked.
+Solution: Add tests. (Yegappan Lakshmanan, closes #5954)
+Files: src/testdir/test_syntax.mnv
+
+Patch 8.2.0607
+Problem: Gcc warns for using uninitialized variable. (John Marriott)
+Solution: Set name_end also for environment variables.
+Files: src/evalvars.c
+
+Patch 8.2.0608
+Problem: Warning from clang when building message test.
+Solution: Use a void pointer. (Dominique Pellé, closes #5958)
+Files: src/message_test.c
+
+Patch 8.2.0609
+Problem: Configure does not detect moonjit correctly.
+Solution: Double the brackets. (Ozaki Kiichi)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.0610
+Problem: Some tests are still old style.
+Solution: Convert to new style tests. (Yegappan Lakshmanan, closes #5957)
+Files: src/testdir/test_blob.mnv, src/testdir/test_cursor_func.mnv,
+ src/testdir/test_eval.in, src/testdir/test_eval.ok,
+ src/testdir/test_eval_func.mnv, src/testdir/test_eval_stuff.mnv,
+ src/testdir/test_expr.mnv, src/testdir/test_filter_map.mnv,
+ src/testdir/test_functions.mnv, src/testdir/test_listdict.mnv,
+ src/testdir/test_sort.mnv, src/testdir/test_syntax.mnv,
+ src/testdir/test_utf8.mnv, src/testdir/test_mnvscript.mnv
+
+Patch 8.2.0611
+Problem: MNV9: no check for space before #comment.
+Solution: Add space checks.
+Files: src/eval.c, src/evalvars.c, src/ex_docmd.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0612
+Problem: MNV9: no check for space before #comment.
+Solution: Add space checks.
+Files: src/ex_eval.c, src/ex_cmds.c, src/regexp.c, src/proto/regexp.pro,
+ src/gui.c, src/highlight.c, src/testdir/test_mnv9_script.mnv,
+ src/testdir/test_sort.mnv
+
+Patch 8.2.0613
+Problem: MNV9: no check for space before #comment.
+Solution: Add space checks.
+Files: src/highlight.c, src/menu.c, src/syntax.c,
+ src/testdir/test_mnv9_script.mnv,
+ runtime/lang/menu_de_de.latin1.mnv
+
+Patch 8.2.0614
+Problem: Get ml_get error when deleting a line in 'completefunc'. (Yegappan
+ Lakshmanan)
+Solution: Lock the text while evaluating 'completefunc'.
+Files: src/insexpand.c, src/globals.h, src/edit.c, src/ex_getln.c,
+ src/undo.c, src/testdir/test_edit.mnv, src/testdir/test_excmd.mnv,
+ src/testdir/test_gf.mnv, src/testdir/test_popup.mnv,
+ src/testdir/test_ex_mode.mnv, runtime/doc/insert.txt
+
+Patch 8.2.0615
+Problem: Regexp benchmark test is old style.
+Solution: Make it a new style test. Fix using a NULL list. Add more tests.
+ (Yegappan Lakshmanan, closes #5963)
+Files: src/evalbuffer.c, src/testdir/Make_dos.mak,
+ src/testdir/Make_ming.mak, src/testdir/Makefile,
+ src/testdir/bench_re_freeze.in, src/testdir/bench_re_freeze.mnv,
+ src/testdir/test_autocmd.mnv, src/testdir/test_bench_regexp.mnv,
+ src/testdir/test_blob.mnv, src/testdir/test_bufline.mnv,
+ src/testdir/test_channel.mnv, src/testdir/test_cmdline.mnv,
+ src/testdir/test_functions.mnv, src/testdir/test_ins_complete.mnv,
+ src/testdir/test_popupwin.mnv, src/testdir/test_prompt_buffer.mnv,
+ src/testdir/test_tagjump.mnv, src/testdir/test_window_cmd.mnv
+
+Patch 8.2.0616
+Problem: Build error when disabling the diff feature.
+Solution: Move parenthesis outside of #ifdef. (Tom Ryder)
+Files: src/drawline.c
+
+Patch 8.2.0617
+Problem: New error check triggers in Swedish menu.
+Solution: Insert backslash. (Mats Tegner, closes #5966)
+Files: runtime/lang/menu_sv_se.latin1.mnv
+
+Patch 8.2.0618
+Problem: Echoing a null list results in no output. (Yegappan Lakshmanan)
+Solution: Return "[]" instead of NULL in echo_string_core().
+Files: src/eval.c, src/testdir/test_messages.mnv
+
+Patch 8.2.0619
+Problem: Null dict is not handled like an empty dict.
+Solution: Fix the code and add tests. (Yegappan Lakshmanan, closes #5968)
+Files: src/dict.c, src/eval.c, src/testdir/test_blob.mnv,
+ src/testdir/test_expr.mnv, src/testdir/test_filter_map.mnv,
+ src/testdir/test_let.mnv, src/testdir/test_listdict.mnv,
+ src/testdir/test_search.mnv, src/testdir/test_unlet.mnv,
+ src/testdir/test_usercommands.mnv, src/testdir/test_mnvscript.mnv
+
+Patch 8.2.0620
+Problem: Error in menu translations.
+Solution: Insert a backslash before a space.
+Files: runtime/lang/menu_it_it.latin1.mnv,
+ runtime/lang/menu_chinese_gb.936.mnv
+
+Patch 8.2.0621
+Problem: After running tests asan files may remain.
+Solution: Clean up asan files with "make testclean".
+Files: src/testdir/Makefile, src/Makefile
+
+Patch 8.2.0622
+Problem: Haiku: GUI does not compile.
+Solution: Various fixes. (Emir Sarı, closes #5961)
+Files: Filelist, README.md, READMEdir/README_haiku.txt,
+ runtime/doc/os_haiku.txt, src/Makefile, src/beval.h,
+ src/gui_haiku.cc, src/proto/gui_haiku.pro
+
+Patch 8.2.0623
+Problem: Typo in test comment. (Christ van Willegen)
+Solution: Avoid mixing up a data structure with a body part.
+Files: src/testdir/test_listdict.mnv
+
+Patch 8.2.0624
+Problem: MNV9: no check for space before #comment.
+Solution: Add space checks. Fix :throw with double quoted string.
+Files: src/usercmd.c, src/userfunc.c, src/mnv9compile.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0625
+Problem: MNV9: confusing error when calling unknown function.
+Solution: Give error while compiling.
+Files: src/mnv9compile.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.0626
+Problem: MNV9: wrong syntax of function in MNV9 script.
+Solution: Give error for missing space. Implement :echomsg and :echoerr.
+ (closes #5670)
+Files: src/mnv9compile.c, src/mnv9execute.c, src/mnv9.h, src/userfunc.c,
+ src/eval.c, src/globals.h, src/testdir/test_mnv9_func.mnv,
+ src/testdir/test_mnv9_disassemble.mnv,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0627
+Problem: MNV9: error message does not work. (Yegappan Lakshmanan)
+Solution: Swap lines.
+Files: src/userfunc.c
+
+Patch 8.2.0628
+Problem: Error in menu translations.
+Solution: Insert a backslash before a space in one more file. (Shun Bai,
+ Emir Sarı)
+Files: runtime/lang/menu_zh_cn.utf-8.mnv,
+ runtime/lang/menu_ca_es.latin1.mnv,
+ runtime/lang/menu_cs_cz.iso_8859-2.mnv,
+ runtime/lang/menu_cs_cz.utf-8.mnv,
+ runtime/lang/menu_czech_czech_republic.1250.mnv,
+ runtime/lang/menu_czech_czech_republic.ascii.mnv,
+ runtime/lang/menu_da.utf-8.mnv,
+ runtime/lang/menu_fi_fi.latin1.mnv,
+ runtime/lang/menu_hu_hu.iso_8859-2.mnv,
+ runtime/lang/menu_hu_hu.utf-8.mnv,
+ runtime/lang/menu_is_is.latin1.mnv,
+ runtime/lang/menu_no_no.latin1.mnv, runtime/lang/menu_pt_br.mnv,
+ runtime/lang/menu_pt_pt.mnv,
+ runtime/lang/menu_sk_sk.iso_8859-2.mnv,
+ runtime/lang/menu_sl_si.latin2.mnv,
+ runtime/lang/menu_slovak_slovak_republic.1250.mnv,
+ runtime/lang/menu_tr_tr.cp1254.mnv,
+ runtime/lang/menu_tr_tr.iso_8859-9.mnv,
+ runtime/lang/menu_tr_tr.utf-8.mnv, runtime/lang/menu_vi_vn.mnv
+
+Patch 8.2.0629
+Problem: Setting a boolean option to v:false does not work.
+Solution: Do not use the string representation of the value. (Christian
+ Brabandt, closes #5974)
+Files: src/evalvars.c, src/testdir/test_options.mnv
+
+Patch 8.2.0630
+Problem: "make tags" does not cover Haiku GUI file.
+Solution: Add *.cc files.
+Files: src/Make_all.mak
+
+Patch 8.2.0631
+Problem: Haiku file formatted with wrong tabstop.
+Solution: Use normal tabstop. Fix white space.
+Files: src/gui_haiku.cc
+
+Patch 8.2.0632
+Problem: Crash when using Haiku.
+Solution: Lock the screen. (closes #5975, closes #5973)
+Files: src/screen.c
+
+Patch 8.2.0633
+Problem: Crash when using null partial in filter().
+Solution: Fix crash. Add more tests. (Yegappan Lakshmanan, closes #5976)
+Files: src/eval.c, src/testdir/test_blob.mnv,
+ src/testdir/test_channel.mnv, src/testdir/test_eval_stuff.mnv,
+ src/testdir/test_execute_func.mnv, src/testdir/test_expr.mnv,
+ src/testdir/test_filter_map.mnv, src/testdir/test_fold.mnv,
+ src/testdir/test_functions.mnv, src/testdir/test_let.mnv,
+ src/testdir/test_listdict.mnv, src/testdir/test_partial.mnv,
+ src/testdir/test_usercommands.mnv
+
+Patch 8.2.0634
+Problem: Crash with null partial and blob.
+Solution: Check for NULL pointer. Add more tests. (Yegappan Lakshmanan,
+ closes #5984)
+Files: src/eval.c, src/list.c, src/testdir/test_blob.mnv,
+ src/testdir/test_bufwintabinfo.mnv, src/testdir/test_cd.mnv,
+ src/testdir/test_channel.mnv, src/testdir/test_cursor_func.mnv,
+ src/testdir/test_eval_stuff.mnv, src/testdir/test_expr.mnv,
+ src/testdir/test_filter_map.mnv, src/testdir/test_fnamemodify.mnv,
+ src/testdir/test_functions.mnv, src/testdir/test_getvar.mnv,
+ src/testdir/test_listdict.mnv, src/testdir/test_messages.mnv,
+ src/testdir/test_partial.mnv, src/testdir/test_quickfix.mnv,
+ src/testdir/test_tabpage.mnv, src/testdir/test_mnvscript.mnv,
+ src/testdir/test_window_cmd.mnv, src/testdir/test_window_id.mnv,
+ src/testdir/test_writefile.mnv
+
+Patch 8.2.0635
+Problem: When using 256 colors DarkYellow does not show expected color.
+Solution: Use color 3 instead of 130. (Romain Lafourcade, closes #5985)
+Files: src/highlight.c
+
+Patch 8.2.0636
+Problem: :messages does not show the maintainer when $LANG is unset.
+Solution: Call get_mess_lang() if available. (closes #5978)
+Files: src/message.c
+
+Patch 8.2.0637
+Problem: Incsearch highlighting does not work for ":sort!".
+Solution: Skip over the exclamation point. (closes #5983)
+Files: src/ex_getln.c, src/testdir/test_search.mnv,
+ src/testdir/dumps/Test_incsearch_sort_02.dump
+
+Patch 8.2.0638
+Problem: MS-Windows: messages test fails.
+Solution: Clear environment variables.
+Files: src/testdir/test_messages.mnv
+
+Patch 8.2.0639
+Problem: MS-Windows: messages test still fails.
+Solution: Filter out the maintainer message.
+Files: src/testdir/test_messages.mnv
+
+Patch 8.2.0640
+Problem: MNV9: expanding `=expr` does not work.
+Solution: Find wildcards in not compiled commands. Reorganize test files.
+Files: Filelist, src/mnv9.h, src/mnv9compile.c, src/mnv9execute.c,
+ src/testdir/mnv9.mnv, src/testdir/test_mnv9_cmd.mnv,
+ src/testdir/test_mnv9_disassemble.mnv,
+ src/testdir/test_mnv9_expr.mnv, src/testdir/test_mnv9_script.mnv,
+ src/testdir/Make_all.mak
+
+Patch 8.2.0641
+Problem: MNV9: `=expr` not expanded in :hardcopy and "syntax include".
+Solution: Add the EX_EXPAND flag. Expend "syntax include".
+Files: src/ex_cmds.h, src/mnv9compile.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.0642
+Problem: MNV9: using invalid index.
+Solution: Check index for being valid. Fix memory leak.
+Files: src/mnv9compile.c, src/clientserver.c
+
+Patch 8.2.0643 (after 8.2.0635)
+Problem: Terminal uses brown instead of dark yellow. (Romain Lafourcade)
+Solution: Use color index 3 instead of 130. (closes #5993)
+Files: src/terminal.c
+
+Patch 8.2.0644
+Problem: Insufficient testing for invalid function arguments.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #5988)
+Files: runtime/doc/eval.txt, src/testdir/test_bufline.mnv,
+ src/testdir/test_channel.mnv, src/testdir/test_clientserver.mnv,
+ src/testdir/test_expr.mnv, src/testdir/test_functions.mnv,
+ src/testdir/test_listener.mnv, src/testdir/test_match.mnv,
+ src/testdir/test_menu.mnv, src/testdir/test_quickfix.mnv,
+ src/testdir/test_registers.mnv, src/testdir/test_reltime.mnv,
+ src/testdir/test_terminal.mnv, src/testdir/test_textprop.mnv,
+ src/testdir/test_window_cmd.mnv, src/testdir/test_window_id.mnv,
+ src/testdir/test_writefile.mnv
+
+Patch 8.2.0645
+Problem: MS-Windows terminal: CTRL-C does not get to child job.
+Solution: Remove CREATE_NEW_PROCESS_GROUP from CreateProcessW(). (Nobuhiro
+ Takasaki, closes #5987)
+Files: src/terminal.c
+
+Patch 8.2.0646
+Problem: t_Co uses the value of $COLORS in the GUI. (Masato Nishihata)
+Solution: Ignore $COLORS for the GUI. (closes #5992)
+Files: src/os_unix.c, src/term.c
+
+Patch 8.2.0647
+Problem: MS-Windows: repeat count for events was not used.
+Solution: Check the repeat count. (Nobuhiro Takasaki, closes #5989)
+Files: src/os_win32.c
+
+Patch 8.2.0648
+Problem: Semicolon search does not work in first line.
+Solution: Allow the cursor to be in line zero. (Christian Brabandt,
+ closes #5996)
+Files: src/ex_docmd.c, src/testdir/test_cmdline.mnv
+
+Patch 8.2.0649
+Problem: Undo problem when an InsertLeave autocommand resets undo. (Kutsan
+ Kaplan)
+Solution: Do not create a new undo block when leaving Insert mode.
+Files: src/edit.c, src/testdir/test_edit.mnv
+
+Patch 8.2.0650
+Problem: MNV9: script function can be deleted.
+Solution: Disallow deleting script function. Delete functions when sourcing
+ a script again.
+Files: src/userfunc.c, src/proto/userfunc.pro, src/evalfunc.c,
+ src/mnv9compile.c, src/mnv9execute.c, src/mnv9script.c,
+ src/scriptfile.c, src/testing.c, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_func.mnv, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0651
+Problem: Old style benchmark test still in list of distributed files.
+Solution: Remove the files from the list.
+Files: Filelist
+
+Patch 8.2.0652 (after 8.2.0650)
+Problem: Compiler warning for char conversion.
+Solution: Use unsigned char buffer.
+Files: src/userfunc.c
+
+Patch 8.2.0653 (after 8.2.0650)
+Problem: using uninitialized pointer.
+Solution: Move assignment up. (John Marriott)
+Files: src/userfunc.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0654
+Problem: Building with Python fails.
+Solution: Add missing argument.
+Files: src/if_py_both.h
+
+Patch 8.2.0655
+Problem: Search code not sufficiently tested.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #5999)
+Files: src/testdir/test_charsearch.mnv, src/testdir/test_gn.mnv,
+ src/testdir/test_goto.mnv, src/testdir/test_ins_complete.mnv,
+ src/testdir/test_normal.mnv, src/testdir/test_search.mnv,
+ src/testdir/test_textformat.mnv, src/testdir/test_textobjects.mnv,
+ src/testdir/test_visual.mnv
+
+Patch 8.2.0656
+Problem: MS-Windows: redrawing right screen edge may not be needed.
+Solution: Check the build version. (Nobuhiro Takasaki, closes #6002)
+Files: src/drawscreen.c, src/os_win32.c, src/proto/os_win32.pro
+
+Patch 8.2.0657
+Problem: MNV9: no check if called variable is a FuncRef.
+Solution: Add a type check.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.0658 (after 8.2.0646)
+Problem: HP-UX build fails when setenv() is not defined.
+Solution: Change "colors" to "t_colors". (John Marriott)
+Files: src/os_unix.c
+
+Patch 8.2.0659
+Problem: MNV9: no test for equal func type.
+Solution: Add a test. Improve type check.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.0660
+Problem: The search.c file is a bit big.
+Solution: Split off the text object code to a separate file. (Yegappan
+ Lakshmanan, closes #6007)
+Files: Filelist, src/Make_cyg_ming.mak, src/Make_morph.mak,
+ src/Make_mvc.mak, src/Make_vms.mms, src/Makefile, src/README.md,
+ src/proto.h, src/proto/search.pro, src/proto/textobject.pro,
+ src/search.c, src/textobject.c
+
+Patch 8.2.0661
+Problem: Eval test is still old style.
+Solution: Change into new style tests. (Yegappan Lakshmanan, closes #6009)
+Files: src/Makefile, src/testdir/Make_all.mak, src/testdir/Make_vms.mms,
+ src/testdir/test_eval.in, src/testdir/test_eval.ok,
+ src/testdir/test_eval_stuff.mnv
+
+Patch 8.2.0662
+Problem: Cannot use input() in a channel callback.
+Solution: Reset vgetc_busy. (closes #6010)
+Files: src/globals.h, src/ex_getln.c, src/evalfunc.c,
+ src/testdir/test_channel.mnv
+
+Patch 8.2.0663
+Problem: Not all systemd temp files are recognized.
+Solution: Add two more patterns. (Jamie Macdonald, closes #6003)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.0664
+Problem: Included undesired changes in Makefile.
+Solution: Revert the changes.
+Files: src/Makefile
+
+Patch 8.2.0665
+Problem: Wrongly assuming Python executable is called "python".
+Solution: Use detected python command. (Ken Takata, closes #6016)
+ Also use CheckFunction if possible.
+Files: src/testdir/test_terminal.mnv, src/testdir/check.mnv
+
+Patch 8.2.0666
+Problem: Ruby test fails on MS-Windows.
+Solution: Remove the "maintainer" line. (Ken Takata, closes #6015)
+Files: src/testdir/shared.mnv, src/testdir/test_messages.mnv,
+ src/testdir/test_ruby.mnv
+
+Patch 8.2.0667
+Problem: Cannot install Haiku version from source.
+Solution: Update Makefile and rdef file. (Emir Sarı, closes #6013)
+Files: Filelist, READMEdir/README_haiku.txt, runtime/doc/os_haiku.txt,
+ src/Makefile, src/os_haiku.rdef.in, src/os_haiku.rdef
+
+Patch 8.2.0668
+Problem: Compiler warning for int/size_t usage.
+Solution: Change "int" to "size_t". (Mike Williams)
+Files: src/mnv9execute.c
+
+Patch 8.2.0669
+Problem: MS-Windows: display in VTP is a bit slow.
+Solution: Optimize the code. (Nobuhiro Takasaki, closes #6014)
+Files: src/os_win32.c, src/screen.c
+
+Patch 8.2.0670
+Problem: Cannot change window when evaluating 'completefunc'.
+Solution: Make a difference between not changing text or buffers and also
+ not changing window.
+Files: src/ex_getln.c, src/beval.c, src/change.c, src/edit.c, src/eval.c,
+ src/ex_docmd.c, src/insexpand.c, src/globals.h, src/indent.c,
+ src/map.c, src/window.c, src/proto/ex_getln.pro, src/register.c,
+ src/undo.c, src/testdir/test_edit.mnv,
+ src/testdir/test_ins_complete.mnv, src/testdir/test_popup.mnv
+
+Patch 8.2.0671
+Problem: Haiku: compiler warnings.
+Solution: Avoid the warnings. Drop display_errors() copy. (Emir Sarı,
+ closes #6018)
+Files: .gitignore, src/gui.c, src/gui_haiku.cc
+
+Patch 8.2.0672
+Problem: Heredoc in scripts does not accept lower case marker.
+Solution: Allow lower case only in non-MNV scripts. (Ken Takata,
+ closes #6019)
+Files: src/evalvars.c, src/testdir/test_lua.mnv,
+ src/testdir/test_perl.mnv, src/testdir/test_python2.mnv,
+ src/testdir/test_python3.mnv, src/testdir/test_pyx2.mnv,
+ src/testdir/test_pyx3.mnv, src/testdir/test_ruby.mnv
+
+Patch 8.2.0673
+Problem: Cannot build Haiku in shadow directory.
+Solution: Add symlink. (Ozaki Kiichi, closes #6023)
+Files: src/Makefile
+
+Patch 8.2.0674
+Problem: Some source files are too big.
+Solution: Move text formatting functions to a new file. (Yegappan
+ Lakshmanan, closes #6021)
+Files: Filelist, src/Make_cyg_ming.mak, src/Make_morph.mak,
+ src/Make_mvc.mak, src/Make_vms.mms, src/Makefile, src/README.md,
+ src/edit.c, src/getchar.c, src/ops.c, src/option.c, src/proto.h,
+ src/proto/edit.pro, src/proto/getchar.pro, src/proto/ops.pro,
+ src/proto/option.pro, src/proto/textformat.pro, src/textformat.c
+
+Patch 8.2.0675
+Problem: MNV9: no support for closures.
+Solution: Do not re-use stack entries.
+Files: src/mnv9compile.c, src/ex_docmd.c, src/proto/ex_docmd.pro,
+ src/evalvars.c, src/proto/evalvars.pro
+
+Patch 8.2.0676
+Problem: Pattern in list of distributed files does not match.
+Solution: Drop "testdir/test_[a-z]*.ok". Add CI sed files.
+Files: Filelist
+
+Patch 8.2.0677
+Problem: MNV9: no support for closures.
+Solution: Find variables in the outer function scope, so long as the scope
+ exists.
+Files: src/mnv9compile.c, src/proto/mnv9compile.pro, src/userfunc.c,
+ src/mnv9execute.c, src/structs.h, src/mnv9.h,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.0678
+Problem: Rare crash for popup menu.
+Solution: Check for NULL pointer. (Nobuhiro Takasaki, closes #6027)
+Files: src/popupmenu.c
+
+Patch 8.2.0679
+Problem: MNV9: incomplete support for closures.
+Solution: At the end of a function copy arguments and local variables if
+ they are still used by a referenced closure.
+Files: src/structs.h, src/mnv9.h, src/mnv9compile.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.0680
+Problem: PTYGROUP and PTYMODE are unused.
+Solution: Remove from autoconf. (closes #6024)
+Files: src/configure.ac, src/auto/configure, src/config.h.in
+
+Patch 8.2.0681
+Problem: Pattern for 'hlsearch' highlighting may leak. (Dominique Pellé)
+Solution: Call end_search_hl() to make sure the previous pattern is freed.
+ (closes #6028)
+Files: src/screen.c
+
+Patch 8.2.0682
+Problem: MNV9: parsing function argument type can get stuck.
+Solution: Bail out when not making progress.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.0683
+Problem: MNV9: parsing type does not always work.
+Solution: Handle func type without return value. Test more closures.
+ Fix type check offset. Fix garbage collection.
+Files: src/mnv9compile.c, src/mnv9execute.c, src/proto/mnv9execute.pro,
+ src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.0684
+Problem: MNV9: memory leak when using lambda.
+Solution: Move the funccal context to the partial. Free the function when
+ exiting.
+Files: src/mnv9.h, src/structs.h, src/mnv9execute.c, src/userfunc.c,
+ src/eval.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.0685 (after 8.2.0684)
+Problem: Build failure.
+Solution: Include missing changes.
+Files: src/mnv9compile.c
+
+Patch 8.2.0686
+Problem: Formatoptions not sufficiently tested.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #6031)
+Files: src/testdir/test_normal.mnv, src/testdir/test_textformat.mnv
+
+Patch 8.2.0687
+Problem: Some tests do not work on FreeBSD.
+Solution: Enable modeline. Use WaitFor() in more cases. (Ozaki Kiichi,
+ closes #6036)
+Files: src/testdir/test_quickfix.mnv, src/testdir/test_terminal.mnv
+
+Patch 8.2.0688
+Problem: Output clobbered if setting 'verbose' to see shell commands.
+Solution: Only output "Searching for" when 'verbose' is 11 or higher.
+Files: src/scriptfile.c, runtime/doc/options.txt
+
+Patch 8.2.0689
+Problem: When using getaddrinfo() the error message is unclear.
+Solution: Use gai_strerror() to get the message. (Ozaki Kiichi,
+ closes #6034)
+Files: src/channel.c
+
+Patch 8.2.0690
+Problem: Line number of option set by modeline is wrong.
+Solution: Do not double the line number. (Ozaki Kiichi, closes #6035)
+Files: src/option.c, src/testdir/test_modeline.mnv
+
+Patch 8.2.0691
+Problem: Startup test fails.
+Solution: Adjust expected output from -V2 argument.
+Files: src/testdir/test_startup.mnv
+
+Patch 8.2.0692
+Problem: Startup test fails on MS-Windows.
+Solution: Allow for any path.
+Files: src/testdir/test_startup.mnv
+
+Patch 8.2.0693
+Problem: Closure using argument not tested.
+Solution: Add a test, make it work.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.0694
+Problem: Haiku: channel and terminal do not work.
+Solution: Close files when the job has finished. (Ozaki Kiichi,
+ closes #6039)
+Files: src/channel.c, src/getchar.c, src/gui_haiku.cc, src/misc1.c
+
+Patch 8.2.0695
+Problem: MNV9: cannot define a function inside a function.
+Solution: Initial support for :def inside :def.
+Files: src/userfunc.c, src/proto/userfunc.pro, src/mnv9compile.c,
+ src/mnv9execute.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.0696
+Problem: MNV9: nested function does not work properly
+Solution: Create a function reference. Check argument count.
+Files: src/mnv9compile.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.0697
+Problem: MNV9: memory leak when using nested function.
+Solution: Unreference function when deleting instructions. Adjust reference
+ count for local variables.
+Files: src/mnv9compile.c, src/mnv9execute.c
+
+Patch 8.2.0698
+Problem: Insert mode completion not fully tested.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #6041)
+Files: src/testdir/test_edit.mnv, src/testdir/test_ins_complete.mnv,
+ src/testdir/test_textformat.mnv
+
+Patch 8.2.0699
+Problem: MNV9: not all errors tested.
+Solution: Add test for deleted function. Bail out on first error.
+Files: src/mnv9execute.c, src/testdir/test_mnv9_func.mnv,
+ src/testdir/test_mnv9_expr.mnv, src/testdir/mnv9.mnv
+
+Patch 8.2.0700
+Problem: MNV9: converting error message to exception not tested.
+Solution: Test exception from error. Do not continue after :echoerr.
+Files: src/mnv9execute.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0701
+Problem: MNV9 test fails without job feature.
+Solution: Add feature check.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0702
+Problem: Running channel tests may leave running process behind.
+Solution: Make Python client exit when running into EOF. (Kurtis Rader,
+ part of #6046)
+Files: src/testdir/test_channel_pipe.py
+
+Patch 8.2.0703
+Problem: MNV9: closure cannot store value in outer context.
+Solution: Make storing value in outer context work. Make :disassemble
+ accept a function reference.
+Files: src/mnv9compile.c, src/mnv9execute.c, src/mnv9.h, src/eval.c,
+ src/structs.h, src/testdir/test_mnv9_disassemble.mnv,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.0704
+Problem: MNV9: memory leak in disassemble test.
+Solution: Decrement refcount when creating funccal.
+Files: src/mnv9execute.c
+
+Patch 8.2.0705
+Problem: Indent tests don't run on CI for FreeBSD.
+Solution: Set modeline. (Ozaki Kiichi, closes #6048)
+Files: .cirrus.yml, runtime/indent/testdir/runtest.mnv
+
+Patch 8.2.0706
+Problem: MNV9: using assert_fails() causes function to finish.
+Solution: Check did_emsg instead of called_emsg.
+Files: src/mnv9execute.c, src/testdir/test_mnv9_disassemble.mnv,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0707
+Problem: MNV9 function test fails.
+Solution: Adjust expected error code.
+Files: src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.0708
+Problem: MNV9: constant expressions are not simplified.
+Solution: Simplify string concatenation.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_disassemble.mnv,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.0709
+Problem: MS-Windows: compiler warning for int vs size_t.
+Solution: Add type cast. (Mike Williams)
+Files: src/channel.c
+
+Patch 8.2.0710
+Problem: Netbeans test sometimes fails.
+Solution: Mark any test using an external command as flaky.
+Files: src/testdir/shared.mnv
+
+Patch 8.2.0711
+Problem: With a long running MNV the temp directory might be cleared on
+ some systems.
+Solution: Lock the temp directory. (closes #6044)
+Files: src/config.h.in, src/configure.ac, src/auto/configure,
+ src/fileio.c, src/globals.h, src/os_unix.h
+
+Patch 8.2.0712
+Problem: Various code not fully tested.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #6049)
+Files: src/testdir/test_functions.mnv, src/testdir/test_options.mnv,
+ src/testdir/test_system.mnv, src/testdir/test_termcodes.mnv
+
+Patch 8.2.0713
+Problem: The pam_environment file is not recognized.
+Solution: Add a filetype pattern for pamenv. (closes #6051)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.0714
+Problem: MNV9: handling constant expression does not scale.
+Solution: Use another solution, passing typval_T.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.0715
+Problem: MNV9: leaking memory.
+Solution: Free strings after concatenating them.
+Files: src/mnv9compile.c
+
+Patch 8.2.0716
+Problem: MNV9: another memory leak.
+Solution: Clear typval when failing.
+Files: src/mnv9compile.c
+
+Patch 8.2.0717
+Problem: MNV9: postponed constant expressions does not scale.
+Solution: Add a structure to pass around postponed constants.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.0718
+Problem: Gcc warning for returning pointer to local variable. (John
+ Marriott)
+Solution: Return another pointer.
+Files: src/evalvars.c
+
+Patch 8.2.0719
+Problem: MNV9: more expressions can be evaluated at compile time
+Solution: Recognize has('name').
+Files: src/mnv9compile.c, src/testdir/test_mnv9_disassemble.mnv,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.0720
+Problem: Occasional exit when encountering an X error. (Manfred Lotz)
+Solution: On an X error do not exit, do preserve files.
+Files: src/os_unix.c
+
+Patch 8.2.0721
+Problem: MNV9: leaking memory when skipping.
+Solution: Disable skipping in generate_ppconst().
+Files: src/mnv9compile.c
+
+Patch 8.2.0722
+Problem: MNV9: not handling constant expression for elseif.
+Solution: Use postponed constants. Delete the code for evaluating a
+ constant expression.
+Files: src/mnv9compile.c
+
+Patch 8.2.0723
+Problem: MNV9: nested constant expression not evaluated compile time.
+Solution: Use compile_expr1() for parenthesis.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.0724
+Problem: MNV9: appending to buffer/window/tab variable not tested
+Solution: Add a test.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0725
+Problem: MNV9: cannot call a function declared later in MNV9 script.
+Solution: Make two passes through the script file.
+Files: src/scriptfile.c, src/proto/scriptfile.pro, src/mnv9script.c,
+ src/mnv9compile.c, src/mnv9execute.c, src/proto/mnv9compile.pro,
+ src/userfunc.c, src/proto/userfunc.pro, src/evalvars.c,
+ src/proto/evalvars.pro, src/mnv.h,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.0726
+Problem: MNV9: leaking memory when calling not compiled :def function.
+Solution: Check if function is compiled earlier.
+Files: src/mnv9execute.c
+
+Patch 8.2.0727
+Problem: MS-Windows: new gcc compiler does not support scanf format.
+Solution: Use "%ll" instead of "%I". (Ken Takata)
+Files: src/mnv.h
+
+Patch 8.2.0728
+Problem: Messages about a deadly signal are not left aligned.
+Solution: Output a CR before the NL. (Dominique Pellé, #6055)
+Files: src/misc1.c, src/os_unix.c
+
+Patch 8.2.0729
+Problem: MNV9: When reloading a script variables are not cleared.
+Solution: When sourcing a script again clear all script-local variables.
+Files: src/dict.c, src/proto/dict.pro, src/scriptfile.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0730
+Problem: MNV9: Assignment to dict member does not work.
+Solution: Parse dict assignment. Implement getting dict member.
+Files: src/mnv9.h, src/mnv9compile.c, src/mnv9execute.c, src/globals.h,
+ src/testdir/test_mnv9_expr.mnv, src/testdir/test_mnv9_cmd.mnv,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0731
+Problem: MNV9: parsing declarations continues after :finish.
+Solution: Bail out when encountering :finish.
+Files: src/mnv9script.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0732
+Problem: MNV9: storing value in dict messes up stack.
+Solution: Correct item count of stack.
+Files: src/mnv9execute.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.0733
+Problem: MNV9: assigning to dict or list argument does not work.
+Solution: Recognize an argument as assignment target.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.0734
+Problem: MNV9: leaking memory when using :finish.
+Solution: Do not check for next line in third pass.
+Files: src/scriptfile.c
+
+Patch 8.2.0735
+Problem: MNV9: using uninitialized memory.
+Solution: Clear the arg_lvar field.
+Files: src/mnv9compile.c
+
+Patch 8.2.0736
+Problem: Some files not recognized as pamenv.
+Solution: Add pam_inv.conf. (closes #6065)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.0737
+Problem: When shell doesn't support CTRL-Z MNV still handles it.
+Solution: Ignore the STOP signal if it was ignored on startup.
+ (Kurtis Rader, closes #5990, closes #6058)
+Files: src/os_unix.c
+
+Patch 8.2.0738
+Problem: Mouse handling in a terminal window not well tested.
+Solution: Add tests. (Yegappan Lakshmanan, closes #6052)
+Files: src/testdir/term_util.mnv, src/testdir/test_gui.mnv,
+ src/testdir/test_modeless.mnv, src/testdir/test_terminal.mnv
+
+Patch 8.2.0739
+Problem: Incomplete profiling when exiting because of a deadly signal.
+Solution: Call __gcov_flush() if available.
+Files: src/os_unix.c, src/Makefile, .travis.yml
+
+Patch 8.2.0740
+Problem: Minor message mistakes.
+Solution: Change mnv to MNV and other fixes.
+Files: src/if_py_both.h, src/if_tcl.c, src/main.c
+
+Patch 8.2.0741
+Problem: Python tests fail because of changed message.
+Solution: Adjust the expected messages (Dominique Pellé, closes #6066)
+Files: src/testdir/test86.ok, src/testdir/test87.ok
+
+Patch 8.2.0742
+Problem: Handling of a TERM signal not tested.
+Solution: Add a test for SIGTERM. (Dominique Pellé, closes #6055)
+Files: src/testdir/test_signals.mnv
+
+Patch 8.2.0743
+Problem: Can move to another buffer from a terminal in popup window.
+Solution: Do not allow "gf" or editing a file. (closes #6072)
+Files: src/normal.c, src/ex_cmds.c, src/testdir/test_popupwin.mnv
+
+Patch 8.2.0744
+Problem: The name mnv is not capitalized in a message.
+Solution: Use "MNV" instead of "mnv".
+Files: src/main.c
+
+Patch 8.2.0745
+Problem: Crash on exit when not all popups are closed.
+Solution: Close popups when freeing all memory. Disable checking for popup
+ when editing a file for now.
+Files: src/misc2.c, src/ex_cmds.c
+
+Patch 8.2.0746
+Problem: popup_clear() hangs when a popup can't be closed.
+Solution: Bail out when a popup can't be closed.
+Files: src/popupwin.c, src/proto/popupwin.pro
+
+Patch 8.2.0747
+Problem: Cannot forcefully close all popups.
+Solution: Add the "force" argument to popup_clear(). Use it after running a
+ test. Put back the check for a popup when editing a file.
+Files: runtime/doc/popup.txt, src/evalfunc.c, src/popupwin.c,
+ src/proto/popupwin.pro, src/tag.c, src/window.c, src/misc2.c,
+ src/ex_cmds.c, src/channel.c, src/testdir/runtest.mnv,
+ src/testdir/test_terminal.mnv
+
+Patch 8.2.0748
+Problem: Cannot get a list of all popups.
+Solution: Add popup_list(). Use it in the test runner.
+Files: runtime/doc/eval.txt, runtime/doc/popup.txt, src/popupwin.c,
+ src/proto/popupwin.pro, src/evalfunc.c,
+ src/testdir/test_popupwin.mnv, src/testdir/runtest.mnv
+
+Patch 8.2.0749
+Problem: TERM signal test fails on FreeBSD.
+Solution: Do not check the messages, the may appear anywhere. (Dominique
+ Pellé, closes #6075)
+Files: src/testdir/test_signals.mnv
+
+Patch 8.2.0750
+Problem: Netbeans test is a bit flaky.
+Solution: Allow for standard sign to be defined. Use WaitForAssert().
+Files: src/testdir/test_netbeans.mnv
+
+Patch 8.2.0751
+Problem: MNV9: performance can be improved.
+Solution: Don't call break. Inline check for list materialize. Make an
+ inline version of ga_grow().
+Files: src/macros.h, src/evalfunc.c, src/misc2.c,
+ src/proto/misc2.pro, src/channel.c, src/eval.c, src/evalbuffer.c,
+ src/evalvars.c, src/filepath.c, src/highlight.c, src/insexpand.c,
+ src/json.c, src/list.c, src/popupmenu.c, src/popupwin.c,
+ src/userfunc.c, src/if_py_both.h
+
+Patch 8.2.0752
+Problem: Terminal in popup window test is a bit flaky.
+Solution: Wait for shell job status to be "run". Mark as flaky test.
+Files: src/testdir/test_popupwin.mnv
+
+Patch 8.2.0753
+Problem: MNV9: expressions are evaluated in the discovery phase.
+Solution: Bail out if an expression is not a constant. Require a type for
+ declared constants.
+Files: src/mnv.h, src/evalvars.c, src/eval.c, src/ex_eval.c,
+ src/evalfunc.c, src/userfunc.c, src/dict.c, src/list.c,
+ src/mnv9compile.c, src/testdir/test_mnv9_script.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.0754
+Problem: MNV9: No test for forward declaration.
+Solution: Add a test.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0755
+Problem: MNV9: No error when variable initializer is not a constant.
+Solution: Return FAIL when trying to get a variable value. Do not execute a
+ script when an error is detected in the first or second phase.
+Files: src/eval.c, src/mnv9script.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0756 (after 8.2.0249)
+Problem: MS-Windows: still a compiler warning.
+Solution: Move flag to another place in the Makefile. (Ken Takata,
+ closes #6083)
+Files: src/Make_mvc.mak
+
+Patch 8.2.0757
+Problem: MNV9: no test for MEMBER instruction.
+Solution: Add a test. Make matches stricter.
+Files: src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.0758
+Problem: MNV9: no test for STORELIST and STOREDICT.
+Solution: Add a test. Make matches stricter.
+Files: src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.0759 (after 8.2.0751)
+Problem: MNV9: missing changes for performance improvements
+Solution: Use GA_GROW(). Don't call breakcheck so often.
+Files: src/mnv9execute.c
+
+Patch 8.2.0760
+Problem: MNV9: dict member errors not tested.
+Solution: Delete unreachable error. Add tests.
+Files: src/mnv9execute.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.0761
+Problem: MNV9: instructions not tested
+Solution: Use a variable instead of a constant.
+Files: src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.0762
+Problem: Buffer is not considered modified after setting crypt key.
+Solution: Set the modified flag. (Christian Brabandt, closes #6082)
+Files: src/optionstr.c, src/testdir/test_crypt.mnv
+
+Patch 8.2.0763
+Problem: GUI test fails without the terminal feature.
+Solution: Check the terminal feature is supported. (Ken Takata,
+ closes #6084)
+Files: src/testdir/test_gui.mnv
+
+Patch 8.2.0764
+Problem: MNV9: assigning to option not fully tested.
+Solution: Add more test cases. Allow using any type for assignment.
+Files: src/mnv9compile.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0765
+Problem: In the GUI can't use all the modifiers. (Andri Möll)
+Solution: Do not apply Alt/Meta early, do it later like with the terminal.
+ Avoid the Motif test from crashing.
+Files: src/gui_gtk_x11.c, src/gui_x11.c, src/gui_mac.c, src/gui_w32.c,
+ src/gui_motif.c
+
+Patch 8.2.0766
+Problem: Display error when using 'number' and 'breakindent'.
+Solution: Adjust extra spaces in the first row. (Ken Takata, closes #6089,
+ closes #5986)
+Files: src/drawline.c, src/testdir/test_breakindent.mnv
+
+Patch 8.2.0767
+Problem: ModifyOtherKeys active when using a shell command in autocmd.
+Solution: Output T_CTE when going to cooked mode. (closes 5617)
+Files: src/term.c
+
+Patch 8.2.0768
+Problem: MNV9: memory leak in script test.
+Solution: Clear typval before giving an error message.
+Files: src/mnv9execute.c
+
+Patch 8.2.0769
+Problem: MNVLeavePre not triggered when MNV is terminated.
+Solution: Unblock autocommands.
+Files: src/main.c, src/testdir/test_signals.mnv
+
+Patch 8.2.0770
+Problem: Cannot map CTRL-B when using the GUI.
+Solution: Reset the CTRL modifier when used. (closes #6092)
+Files: src/gui_gtk_x11.c
+
+Patch 8.2.0771
+Problem: MNV9: cannot call a compiled closure from not compiled code.
+Solution: Pass funcexe to call_user_func().
+Files: src/userfunc.c, src/mnv9execute.c, src/proto/mnv9execute.pro,
+ src/eval.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.0772
+Problem: MNV9: some variable initializations not tested.
+Solution: Add a few more tests
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0773
+Problem: Switching to raw mode every time ":" is used.
+Solution: When executing a shell set cur_tmode to TMODE_UNKNOWN, so that the
+ next time TMODE_RAW is used it is set, but not every time.
+Files: src/term.h, src/os_unix.c, src/term.c, src/os_amiga.c,
+ src/os_win32.c
+
+Patch 8.2.0774
+Problem: t_TI and t_TE are output when using 'visualbell'. (Dominique
+ Pellé)
+Solution: Do not change the terminal mode for a short sleep. Do not output
+ t_TI and t_TE when switching to/from TMODE_SLEEP. Make tmode an
+ enum.
+Files: src/os_unix.c, src/proto/os_unix.pro, src/os_amiga.c,
+ src/proto/os_amiga.pro, src/os_mswin.c, src/proto/os_mswin.pro,
+ src/os_vms.c, src/proto/os_vms.pro, src/os_win32.c,
+ src/proto/os_win32.pro, src/term.c, src/term.h, src/globals.h
+
+Patch 8.2.0775
+Problem: Not easy to call a MNV function from Lua.
+Solution: Add mnv.call() and mnv.fn(). (Prabir Shrestha, closes #6063)
+Files: runtime/doc/if_lua.txt, src/if_lua.c, src/testdir/test_lua.mnv
+
+Patch 8.2.0776
+Problem: Libvterm code lags behind the upstream version.
+Solution: Include revision 719.
+Files: Filelist, src/libvterm/README, src/libvterm/Makefile,
+ src/libvterm/find-wide-chars.pl, src/libvterm/src/fullwidth.inc,
+ src/libvterm/src/unicode.c
+
+Patch 8.2.0777 (after 8.2.0776)
+Problem: Terminal test fails.
+Solution: Adjust character position for double-wide characters.
+Files: src/testdir/test_terminal.mnv
+
+Patch 8.2.0778
+Problem: Libvterm code lags behind the upstream version.
+Solution: Include revisions 720 - 723.
+Files: src/libvterm/t/10state_putglyph.test, src/libvterm/Makefile,
+ src/libvterm/t/run-test.pl, src/libvterm/src/state.c,
+ src/libvterm/t/92lp1805050.test
+
+Patch 8.2.0779
+Problem: Tmode_T not used everywhere.
+Solution: Also use tmode_T for settmode().
+Files: src/term.c, src/proto/term.pro
+
+Patch 8.2.0780
+Problem: Libvterm code lags behind the upstream version.
+Solution: Include revisions 724 - 726.
+Files: Filelist, src/libvterm/t/40screen_ascii.test,
+ src/libvterm/t/60screen_ascii.test,
+ src/libvterm/t/41screen_unicode.test,
+ src/libvterm/t/61screen_unicode.test,
+ src/libvterm/t/42screen_damage.test,
+ src/libvterm/t/62screen_damage.test,
+ src/libvterm/t/43screen_resize.test,
+ src/libvterm/t/63screen_resize.test,
+ src/libvterm/t/44screen_pen.test,
+ src/libvterm/t/64screen_pen.test,
+ src/libvterm/t/45screen_protect.test,
+ src/libvterm/t/65screen_protect.test,
+ src/libvterm/t/46screen_extent.test,
+ src/libvterm/t/66screen_extent.test,
+ src/libvterm/t/47screen_dbl_wh.test,
+ src/libvterm/t/67screen_dbl_wh.test,
+ src/libvterm/t/48screen_termprops.test,
+ src/libvterm/t/68screen_termprops.test, src/libvterm/t/30pen.test,
+ src/libvterm/t/30state_pen.test, src/libvterm/t/92lp1805050.test,
+ src/libvterm/t/31state_rep.test, src/libvterm/doc/seqs.txt
+
+Patch 8.2.0781 (after 8.2.0775)
+Problem: Compiler warning for not using value in Lua.
+Solution: Add "(void)".
+Files: src/if_lua.c
+
+Patch 8.2.0782
+Problem: Cannot build with Lua on MS-Windows.
+Solution: Add DLL symbol for luaL_Loadstring. (Ken Takata)
+Files: src/if_lua.c
+
+Patch 8.2.0783
+Problem: Libvterm code lags behind the upstream version.
+Solution: Include revisions 728 - 729.
+Files: src/Make_cyg_ming.mak, src/Make_mvc.mak, src/Makefile,
+ src/libvterm/src/keyboard.c, src/libvterm/t/25state_input.test,
+ src/libvterm/t/harness.c, src/libvterm/src/vterm.c,
+ src/libvterm/src/vterm_internal.h,
+ src/libvterm/t/26state_query.test
+
+Patch 8.2.0784
+Problem: Libvterm code lags behind the upstream version.
+Solution: Include revisions 730 - 733.
+Files: src/libvterm/src/vterm.c, src/libvterm/src/state.c,
+ src/libvterm/include/vterm.h, src/libvterm/src/vterm_internal.h,
+ src/libvterm/t/harness.c
+
+Patch 8.2.0785
+Problem: Libvterm code lags behind the upstream version.
+Solution: Include revisions 734 - 740.
+Files: src/libvterm/include/vterm.h, src/libvterm/src/pen.c,
+ src/libvterm/src/vterm.c, src/libvterm/doc/seqs.txt,
+ src/libvterm/t/30state_pen.test, src/libvterm/t/run-test.pl,
+ src/libvterm/Makefile, src/libvterm/CONTRIBUTING
+
+Patch 8.2.0786
+Problem: Channel test is flaky on FreeBSD.
+Solution: Set the socket TCP_NODELAY option. Adjust expected line count in
+ netbeans test. (Ozaki Kiichi, closes #6097)
+Files: src/testdir/test_channel.py, src/testdir/test_netbeans.mnv
+
+Patch 8.2.0787
+Problem: Libvterm code lags behind the upstream version.
+Solution: Include revisions 741 - 742.
+Files: Filelist, src/libvterm/src/screen.c
+
+Patch 8.2.0788
+Problem: Memory leak in libvterm.
+Solution: free tmpbuffer.
+Files: src/libvterm/src/vterm.c
+
+Patch 8.2.0789
+Problem: MNV9: expression testing lost coverage using constants.
+Solution: Use a few variables instead of constants.
+Files: src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.0790
+Problem: MNV9: list index not well tested.
+Solution: Add a few more tests.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0791
+Problem: A second popup window with terminal causes trouble.
+Solution: Disallow opening a second terminal-popup window. (closes #6101,
+ closes #6103) Avoid defaulting to an invalid line number.
+Files: runtime/doc/popup.txt, src/popupwin.c, src/ex_docmd.c,
+ src/testdir/test_popupwin.mnv, src/testdir/test_terminal.mnv
+
+Patch 8.2.0792
+Problem: Build failure with small features.
+Solution: Add #ifdef.
+Files: src/popupwin.c
+
+Patch 8.2.0793
+Problem: MS-Windows: cannot build GUI with small features. (Michael Soyka)
+Solution: Add #ifdef around use of windowsVersion. (Ken Takata)
+Files: src/os_win32.c
+
+Patch 8.2.0794
+Problem: Libvterm code lags behind the upstream version.
+Solution: Include revisions 743 - 747.
+Files: src/libvterm/src/state.c, src/libvterm/src/screen.c,
+ src/libvterm/src/vterm_internal.h, src/libvterm/include/vterm.h,
+ src/libvterm/t/67screen_dbl_wh.test, src/libvterm/t/run-test.pl
+
+Patch 8.2.0795
+Problem: Libvterm code lags behind the upstream version.
+Solution: Include revisions 748 - 754.
+Files: src/libvterm/include/vterm.h, src/libvterm/src/screen.c,
+ src/libvterm/src/state.c, src/libvterm/t/32state_flow.test,
+ src/libvterm/t/60screen_ascii.test,
+ src/libvterm/t/62screen_damage.test,
+ src/libvterm/t/63screen_resize.test, src/libvterm/t/harness.c,
+ src/libvterm/t/run-test.pl
+
+Patch 8.2.0796
+Problem: MS-Windows: compiler can't handle C99 construct in libvterm.
+Solution: Change to C90 construct.
+Files: src/libvterm/src/state.c
+
+Patch 8.2.0797
+Problem: MS-Windows: compiler still can't handle C99 construct.
+Solution: Change to C90 construct. (Dominique Pellé, closes #6106)
+Files: src/libvterm/src/state.c
+
+Patch 8.2.0798
+Problem: Libvterm code lags behind the upstream version.
+Solution: Include revisions 755 - 758.
+Files: src/libvterm/t/run-test.pl, src/libvterm/src/screen.c,
+ src/libvterm/t/harness.c, src/libvterm/include/vterm.h,
+ src/libvterm/src/parser.c, src/libvterm/src/state.c,
+ src/libvterm/src/vterm.c, src/libvterm/src/vterm_internal.h,
+ src/libvterm/t/02parser.test,
+ src/libvterm/t/18state_termprops.test,
+ src/libvterm/t/29state_fallback.test,
+ src/libvterm/t/68screen_termprops.test, src/terminal.c
+
+Patch 8.2.0799
+Problem: Build fails if snprintf is not available.
+Solution: Use mnv_snprintf().
+Files: src/libvterm/src/state.c
+
+Patch 8.2.0800
+Problem: Errors from failing test are unclear.
+Solution: Include text where parsing failed.
+Files: src/json.c, src/testdir/test_json.mnv
+
+Patch 8.2.0801
+Problem: Terminal test fails on Mac.
+Solution: Concatenate OSC pieces.
+Files: src/terminal.c
+
+Patch 8.2.0802
+Problem: Libvterm code lags behind the upstream version.
+Solution: Include revisions 759 - 762.
+Files: src/terminal.c, src/libvterm/doc/seqs.txt,
+ src/libvterm/include/vterm.h, src/libvterm/src/pen.c,
+ src/libvterm/src/screen.c, src/libvterm/src/state.c,
+ src/libvterm/src/vterm.c, src/libvterm/src/vterm_internal.h,
+ src/libvterm/t/harness.c, src/libvterm/t/12state_scroll.test
+
+Patch 8.2.0803
+Problem: Libvterm code lags behind the upstream version.
+Solution: Include revisions 764 - 767
+Files: src/Makefile, src/libvterm/src/parser.c,
+ src/libvterm/src/vterm_internal.h, src/libvterm/t/02parser.test,
+ src/libvterm/t/run-test.pl, src/libvterm/find-wide-chars.pl,
+ src/libvterm/src/fullwidth.inc
+
+Patch 8.2.0804
+Problem: Libvterm code lags behind the upstream version.
+Solution: Include revision 727, but add the index instead of switching
+ between RGB and indexed.
+Files: src/terminal.c, src/term.c, src/libvterm/include/vterm.h,
+ src/libvterm/src/pen.c, src/libvterm/src/screen.c,
+ src/libvterm/src/vterm_internal.h,
+ src/libvterm/t/30state_pen.test,
+ src/libvterm/t/harness.c, src/libvterm/src/state.c,
+ src/libvterm/t/26state_query.test,
+ src/libvterm/t/64screen_pen.test
+
+Patch 8.2.0805
+Problem: Terminal key codes test fails on some systems.
+Solution: Skip keypad 3 and 9. (Yegappan Lakshmanan, closes #6070)
+Files: src/testdir/test_terminal.mnv
+
+Patch 8.2.0806
+Problem: using "func!" after mnv9script gives confusing error.
+Solution: Give E477. (closes #6107)
+Files: src/mnv9script.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0807
+Problem: Cannot easily restore a mapping.
+Solution: Add mapset().
+Files: runtime/doc/eval.txt, src/map.c, src/proto/map.pro, src/evalfunc.c
+ src/testdir/test_maparg.mnv
+
+Patch 8.2.0808
+Problem: Not enough testing for the terminal window.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #6069) Fix memory
+ leak.
+Files: src/testdir/test_gui.mnv, src/testdir/test_terminal.mnv,
+ src/terminal.c
+
+Patch 8.2.0809
+Problem: Build failure with small features. (Tony Mechelynck)
+Solution: Move "expr" inside #ifdef.
+Files: src/map.c
+
+Patch 8.2.0810
+Problem: Error when appending "tagfile" to 'wildoptions'.
+Solution: use flags P_ONECOMMA and P_NODUP. (Dmitri Vereshchagin,
+ closes #6105)
+Files: src/optiondefs.h, src/testdir/test_options.mnv
+
+Patch 8.2.0811
+Problem: Terminal keycode test is flaky.
+Solution: Use WaitForAssert()
+Files: src/testdir/test_terminal.mnv
+
+Patch 8.2.0812
+Problem: mapset() does not properly handle <> notation.
+Solution: Convert <> codes. (closes #6116)
+Files: src/map.c, src/testdir/test_maparg.mnv
+
+Patch 8.2.0813
+Problem: libvterm code is slightly different from upstream.
+Solution: Use upstream text to avoid future merge problems. Mainly comment
+ style changes.
+Files: src/libvterm/include/vterm.h, src/libvterm/src/rect.h,
+ src/libvterm/src/utf8.h, src/libvterm/src/vterm_internal.h,
+ src/libvterm/src/encoding.c, src/libvterm/src/keyboard.c,
+ src/libvterm/src/mouse.c, src/libvterm/src/parser.c,
+ src/libvterm/src/pen.c, src/libvterm/src/screen.c,
+ src/libvterm/src/state.c, src/libvterm/src/unicode.c,
+ src/libvterm/src/vterm.c
+
+Patch 8.2.0814
+Problem: Clang warning for implicit conversion.
+Solution: Add type cast. (Dominique Pellé, closes #6124)
+Files: src/evalfunc.c
+
+Patch 8.2.0815
+Problem: maparg() does not provide enough information for mapset().
+Solution: Add "lhsraw" and "lhsrawalt" items. Drop "simplified"
+Files: src/map.c, runtime/doc/eval.txt, src/testdir/test_maparg.mnv
+
+Patch 8.2.0816
+Problem: Terminal test fails when compiled with Athena.
+Solution: Do give an error when the GUI is not running. (hint by Dominique
+ Pellé, closes #5928, closes #6132)
+Files: src/globals.h, src/gui.c, src/term.c, src/channel.c,
+ src/testdir/test_terminal.mnv
+
+Patch 8.2.0817
+Problem: Not enough memory allocated when converting string with special
+ character.
+Solution: Reserve space for modifier code. (closes #6130)
+Files: src/eval.c, src/testdir/test_functions.mnv
+
+Patch 8.2.0818
+Problem: MNV9: using a discovery phase doesn't work well.
+Solution: Remove the discovery phase, instead compile a function only when
+ it is used. Add :defcompile to compile def functions earlier.
+Files: runtime/doc/mnv9.txt, src/mnv9script.c, src/structs.h,
+ src/userfunc.c, src/proto/userfunc.pro, src/eval.c,
+ src/evalvars.c, src/proto/evalvars.pro, src/mnv9compile.c,
+ src/proto/mnv9compile.pro, src/mnv9execute.c, src/ex_cmds.h,
+ src/ex_docmd.c, src/ex_cmdidxs.h, src/mnv.h, src/testdir/mnv9.mnv,
+ src/testdir/test_mnv9_disassemble.mnv,
+ src/testdir/test_mnv9_func.mnv, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0819
+Problem: Compiler warning for unused variable.
+Solution: Remove the variable.
+Files: src/evalvars.c
+
+Patch 8.2.0820
+Problem: MNV9: function type isn't set until compiled.
+Solution: Set function type early.
+Files: src/mnv9compile.c, src/proto/mnv9compile.pro, src/userfunc.c,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.0821
+Problem: MNV9: memory leak in expr test.
+Solution: Do not decrement the length of the list of functions if the
+ current function is not at the end.
+Files: src/mnv9compile.c
+
+Patch 8.2.0822
+Problem: MNV9: code left over from discovery phase.
+Solution: Remove the dead code.
+Files: src/scriptfile.c, src/proto/scriptfile.pro, src/ex_cmds.h,
+ src/evalvars.c, src/proto/evalvars.pro, src/ex_docmd.c
+
+Patch 8.2.0823
+Problem: MNV9: script reload test is disabled.
+Solution: Compile a function in the context of the script where it was
+ defined. Set execution stack for compiled function. Add a test
+ that an error is reported for the right file/function.
+Files: src/mnv9compile.c, src/mnv9execute.c, src/scriptfile.c,
+ src/proto/scriptfile.pro, src/userfunc.c, src/globals.h,
+ src/structs.h, src/ex_docmd.c, src/ex_eval.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0824 (after 8.2.0817)
+Problem: Still not enough memory allocated when converting string with
+ special character.
+Solution: Reserve space for expanding K_SPECIAL. (closes #6130)
+Files: src/eval.c, src/testdir/test_functions.mnv
+
+Patch 8.2.0825
+Problem: def_function() may return pointer that was freed.
+Solution: Set "fp" to NULL after freeing it.
+Files: src/userfunc.c
+
+Patch 8.2.0826
+Problem: MNV9: crash in :defcompile.
+Solution: Restart the loop after a call to compile_def_function() caused the
+ hash table to resize.
+Files: src/userfunc.c
+
+Patch 8.2.0827
+Problem: MNV9: crash in :defcompile.
+Solution: Fix off-by-one error.
+Files: src/userfunc.c
+
+Patch 8.2.0828
+Problem: Travis: regexp pattern doesn't work everywhere.
+Solution: Use [:blank:] instead of \b. (Ozaki Kiichi, closes #6146)
+Files: .travis.yml, ci/config.mk.clang.sed, ci/config.mk.gcc.sed,
+ ci/config.mk.sed, src/if_ruby.c
+
+Patch 8.2.0829
+Problem: filter() may give misleading error message.
+Solution: Also mention Blob as an allowed argument.
+Files: src/list.c, src/testdir/test_filter_map.mnv
+
+Patch 8.2.0830
+Problem: Motif: can't map "!". (Ben Jackson)
+Solution: Remove the shift modifier if it's already included in the key.
+ (closes #6147)
+Files: src/gui_x11.c
+
+Patch 8.2.0831
+Problem: Compiler warnings for integer sizes.
+Solution: Add type casts. (Mike Williams)
+Files: src/libvterm/src/pen.c, src/terminal.c
+
+Patch 8.2.0832
+Problem: Compiler warning for uninitialized variable. (Tony Mechelynck)
+Solution: Add initial value.
+Files: src/map.c
+
+Patch 8.2.0833
+Problem: Mapping <C-bslash> doesn't work in the GUI.
+Solution: Reset seenModifyOtherKeys when starting the GUI. (closes #6150)
+Files: src/gui.c
+
+Patch 8.2.0834
+Problem: :drop command in terminal popup causes problems.
+Solution: Check for using a popup window. (closes #6151)
+Files: src/ex_cmds.c, src/testdir/test_popupwin.mnv
+
+Patch 8.2.0835
+Problem: Motif: mapping <C-bslash> still doesn't work.
+Solution: Accept CSI for K_SPECIAL. Do not apply CTRL to the character
+ early. (closes #6150)
+Files: src/getchar.c, src/gui_x11.c
+
+Patch 8.2.0836
+Problem: Not all :cdo output is visible.
+Solution: Reset 'shortmess' temporarily. (Yegappan Lakshmanan, closes #6155)
+Files: src/ex_cmds2.c, src/testdir/test_cdo.mnv
+
+Patch 8.2.0837
+Problem: Compiler warning for value set but not used.
+Solution: Move variable inside #ifdef.
+Files: src/channel.c
+
+Patch 8.2.0838
+Problem: MS-Windows: compiler warning for uninitialized variables.
+Solution: Initialize variables.
+Files: src/screen.c
+
+Patch 8.2.0839
+Problem: Dropping modifier when putting a character back in typeahead.
+Solution: Add modifier to ins_char_typebuf(). (closes #6158)
+Files: src/getchar.c, src/proto/getchar.pro, src/message.c, src/normal.c,
+ src/terminal.c, src/globals.h, src/testdir/test_messages.mnv
+
+Patch 8.2.0840
+Problem: Search match count wrong when only match is in fold.
+Solution: Update search stats when in a closed fold. (Christian Brabandt,
+ closes #6160, closes #6152)
+Files: src/search.c, src/testdir/dumps/Test_searchstat_3.dump,
+ src/testdir/test_search_stat.mnv
+
+Patch 8.2.0841
+Problem: 'verbose' value 16 causes duplicate output.
+Solution: Combine levels 15 and 16 into one message. (Christian Brabandt,
+ closes #6153)
+Files: runtime/doc/options.txt, src/ex_docmd.c
+
+Patch 8.2.0842 (after 8.2.0837)
+Problem: MS-Windows: channel tests fail.
+Solution: Adjust #ifdefs. (closes #6162)
+Files: src/channel.c
+
+Patch 8.2.0843
+Problem: Filetype elm not detected.
+Solution: Recognize *.elm files. (closes #6157)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.0844
+Problem: Text properties crossing lines not handled correctly.
+Solution: When saving for undo include an extra line when needed and do not
+ adjust properties when undoing. (Axel Forsman, closes #5875)
+Files: src/memline.c, src/proto/memline.pro, src/undo.c, src/structs.h
+
+Patch 8.2.0845
+Problem: Text properties crossing lines not handled correctly.
+Solution: When joining lines merge text properties if possible.
+ (Axel Forsman, closes #5839, closes #5683)
+Files: src/testdir/test_textprop.mnv, src/memline.c, src/ops.c,
+ src/proto/textprop.pro, src/textprop.c,
+ src/testdir/dumps/Test_textprop_01.dump
+
+Patch 8.2.0846
+Problem: Build failure with small features.
+Solution: Add #ifdef.
+Files: src/undo.c
+
+Patch 8.2.0847
+Problem: Typval related code is spread out.
+Solution: Move code to new typval.c file. (Yegappan Lakshmanan, closes #6093)
+Files: Filelist, src/Make_cyg_ming.mak, src/Make_morph.mak,
+ src/Make_mvc.mak, src/Make_vms.mms, src/Makefile, src/README.md,
+ src/eval.c, src/evalfunc.c, src/globals.h, src/proto.h,
+ src/proto/eval.pro, src/proto/evalfunc.pro, src/proto/typval.pro,
+ src/typval.c
+
+Patch 8.2.0848
+Problem: MS-Windows: the Windows terminal code has some flaws.
+Solution: Do not redraw the right edge of the screen. Remove the background
+ color trick. Flush the screen output buffer often. (Nobuhiro
+ Takasaki, #5546)
+Files: src/os_win32.c, src/proto/os_win32.pro, src/term.c
+
+Patch 8.2.0849
+Problem: BeOS code is not maintained and probably unused.
+Solution: Remove the BeOS code. (Emir Sarı, closes #5817)
+Files: Filelist, src/Makefile, src/configure.ac, src/auto/configure,
+ src/evalfunc.c, src/normal.c, src/os_beos.c, src/os_beos.h,
+ src/os_beos.rsrc, src/os_unix.c, src/proto.h,
+ src/proto/os_beos.pro, src/pty.c, src/screen.c, src/term.c,
+ src/testdir/test_functions.mnv, src/ui.c, src/mnv.h
+
+Patch 8.2.0850
+Problem: MS-Windows: exepath() works differently from cmd.exe.
+Solution: Make exepath() work better on MS-Windows. (closes #6115)
+Files: runtime/doc/eval.txt, src/os_win32.c,
+ src/testdir/test_functions.mnv
+
+Patch 8.2.0851 (after 8.2.0833)
+Problem: Can't distinguish <M-a> from accented "a" in the GUI.
+Solution: Use another way to make mapping <C-bslash> work. (closes #6163)
+Files: src/gui.c, src/gui_gtk_x11.c, src/getchar.c
+
+Patch 8.2.0852
+Problem: Cannot map CTRL-S on some systems.
+Solution: Do not use CTRL-S for flow control.
+Files: src/os_unix.c
+
+Patch 8.2.0853
+Problem: ml_delete() often called with FALSE argument.
+Solution: Use ml_delete_flags(x, ML_DEL_MESSAGE) when argument is TRUE.
+Files: src/buffer.c, src/change.c, src/diff.c, src/evalbuffer.c,
+ src/ex_cmds.c, src/ex_docmd.c, src/fileio.c, src/if_lua.c,
+ src/if_mzsch.c, src/if_ruby.c, src/if_tcl.c, src/normal.c,
+ src/popupmenu.c, src/popupwin.c, src/quickfix.c, src/spell.c,
+ src/terminal.c, src/if_perl.xs, src/if_py_both.h, src/memline.c,
+ src/proto/memline.pro
+
+Patch 8.2.0854
+Problem: Xxd cannot show offset as a decimal number.
+Solution: Add the "-d" flag. (Aapo Rantalainen, closes #5616)
+Files: src/testdir/test_xxd.mnv, src/xxd/xxd.c
+
+Patch 8.2.0855
+Problem: GUI tests fail because the test doesn't use a modifier.
+Solution: Add "\{xxx}" to be able to encode a modifier.
+Files: runtime/doc/eval.txt, src/typval.c, src/misc2.c, src/mnv.h,
+ src/proto/misc2.pro, src/gui_mac.c, src/option.c, src/highlight.c,
+ src/term.c, src/testdir/test_backspace_opt.mnv,
+ src/testdir/test_mapping.mnv, src/testdir/test_messages.mnv
+
+Patch 8.2.0856 (after 8.2.0852)
+Problem: CTRL-S stops output.
+Solution: Invert the IXON flag. (closes #6166)
+Files: src/os_unix.c
+
+Patch 8.2.0857
+Problem: GTK cell height can be a pixel too much.
+Solution: Subtract 3 instead of 1 when rounding. (closes #6168)
+Files: src/gui_gtk_x11.c
+
+Patch 8.2.0858
+Problem: Not easy to require Lua modules.
+Solution: Improve use of Lua path. (Prabir Shrestha, closes #6098)
+Files: Filelist, src/if_lua.c, src/optionstr.c, src/proto/if_lua.pro,
+ src/testdir/test_lua.mnv,
+ src/testdir/testluaplugin/lua/testluaplugin/hello.lua,
+ src/testdir/testluaplugin/lua/testluaplugin/init.lua
+
+Patch 8.2.0859
+Problem: No Turkish translation of the manual.
+Solution: Add Turkish translations. (Emir Sarı, closes #5641)
+Files: Filelist, runtime/doc/Makefile, runtime/doc/emnv-tr.1,
+ runtime/doc/emnv-tr.UTF-8.1, runtime/doc/mnv-tr.1,
+ runtime/doc/mnv-tr.UTF-8.1, runtime/doc/mnvdiff-tr.1,
+ runtime/doc/mnvdiff-tr.UTF-8.1, runtime/doc/mnvtutor-tr.1,
+ runtime/doc/mnvtutor-tr.UTF-8.1, src/Makefile
+
+Patch 8.2.0860
+Problem: Cannot use CTRL-A and CTRL-X on unsigned numbers.
+Solution: Add "unsigned" to 'nrformats'. (Naruhiko Nishino, closes #6144)
+Files: runtime/doc/options.txt, src/ops.c, src/optionstr.c,
+ src/testdir/test_increment.mnv
+
+Patch 8.2.0861
+Problem: Cannot easily get all the current marks.
+Solution: Add getmarklist(). (Yegappan Lakshmanan, closes #6032)
+Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/mark.c, src/proto/mark.pro, src/testdir/test_marks.mnv
+
+Patch 8.2.0862
+Problem: ":term ++curwin" makes the current buffer hidden. (Harm te
+ Hennepe)
+Solution: Do not hide the current buffer. (closes #6170)
+Files: src/terminal.c, src/testdir/test_terminal.mnv
+
+Patch 8.2.0863
+Problem: Cannot set a separate color for underline/undercurl.
+Solution: Add the t_AU and t_8u termcap codes. (Timur Celik, closes #6011)
+Files: runtime/doc/syntax.txt, runtime/doc/term.txt, src/globals.h,
+ src/highlight.c, src/optiondefs.h, src/proto/term.pro,
+ src/screen.c, src/structs.h, src/term.c, src/term.h,
+ src/testdir/test_options.mnv
+
+Patch 8.2.0864
+Problem: Pragmas are indented all the way to the left.
+Solution: Add an option to indent pragmas like normal code. (Max Rumpf,
+ closes #5468)
+Files: runtime/doc/indent.txt, src/cindent.c, src/structs.h,
+ src/testdir/test_cindent.mnv
+
+Patch 8.2.0865
+Problem: Syntax foldlevel is taken from the start of the line.
+Solution: Add ":syn foldlevel" to be able to use the minimal foldlevel in
+ the line. (Brad King, closes #6087)
+Files: runtime/doc/syntax.txt, src/structs.h, src/syntax.c,
+ src/testdir/test_syntax.mnv
+
+Patch 8.2.0866
+Problem: Not enough tests for buffer writing.
+Solution: Add more tests. Use CheckRunMNVInTerminal in more places.
+ (Yegappan Lakshmanan, closes #6167)
+Files: src/testdir/test_arglist.mnv, src/testdir/test_match.mnv,
+ src/testdir/test_messages.mnv, src/testdir/test_netbeans.py,
+ src/testdir/test_netbeans.mnv, src/testdir/test_search.mnv,
+ src/testdir/test_signals.mnv, src/testdir/test_signs.mnv,
+ src/testdir/test_startup.mnv, src/testdir/test_startup_utf8.mnv,
+ src/testdir/test_syntax.mnv, src/testdir/test_tabpage.mnv,
+ src/testdir/test_timers.mnv, src/testdir/test_mnvscript.mnv,
+ src/testdir/test_writefile.mnv
+
+Patch 8.2.0867
+Problem: Using \{xxx} for encoding a modifier is not nice.
+Solution: Use \<*xxx> instead, since it's the same as \<xxx> but producing a
+ different code.
+Files: runtime/doc/eval.txt, src/typval.c, src/misc2.c, src/mnv.h,
+ src/testdir/test_backspace_opt.mnv, src/testdir/test_mapping.mnv,
+ src/testdir/test_messages.mnv
+
+Patch 8.2.0868
+Problem: trim() always trims both ends.
+Solution: Add an argument to only trim the beginning or end. (Yegappan
+ Lakshmanan, closes #6126)
+Files: runtime/doc/eval.txt, src/evalfunc.c,
+ src/testdir/test_functions.mnv
+
+Patch 8.2.0869
+Problem: It is not possible to customize the quickfix window contents.
+Solution: Add 'quickfixtextfunc'. (Yegappan Lakshmanan, closes #5465)
+Files: runtime/doc/eval.txt, runtime/doc/options.txt,
+ runtime/doc/quickfix.txt, src/option.h, src/optiondefs.h,
+ src/quickfix.c, src/testdir/test_quickfix.mnv
+
+Patch 8.2.0870
+Problem: MS-Windows: Control keys don't work in the GUI.
+Solution: Don't set seenModifyOtherKeys for now. (Yasuhiro Matsumoto,
+ closes #6175)
+Files: src/gui.c
+
+Patch 8.2.0871
+Problem: Cannot use getmarklist() as a method.
+Solution: Make getmarklist() work as a method. Add one to the column
+ number to match getpos(). (Yegappan Lakshmanan, closes #6176)
+Files: runtime/doc/eval.txt, src/evalfunc.c, src/mark.c,
+ src/testdir/test_marks.mnv
+
+Patch 8.2.0872
+Problem: XIM code is mixed with multibyte code.
+Solution: Move the XIM code to a separate file. (Yegappan Lakshmanan,
+ closes #6177)
+Files: Filelist, src/Make_cyg_ming.mak, src/Make_morph.mak,
+ src/Make_mvc.mak, src/Make_vms.mms, src/Makefile, src/gui_xim.c,
+ src/mbyte.c, src/proto.h, src/proto/gui_xim.pro,
+ src/proto/mbyte.pro
+
+Patch 8.2.0873
+Problem: A .jl file can be sawfish (lisp) or Julia.
+Solution: Do not recognize *.jl as lisp, since it might be Julia.
+ (closes #6178)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.0874
+Problem: Signals test is a bit flaky.
+Solution: Flush the XautoOut file. Delete files that may be left behind
+ from a failure. (Dominique Pellé, closes #6179)
+Files: src/testdir/test_signals.mnv
+
+Patch 8.2.0875
+Problem: Getting attributes for directory entries is slow.
+Solution: Add readdirex(). (Ken Takata, closes #5619)
+Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/fileio.c, src/filepath.c, src/proto/fileio.pro,
+ src/proto/filepath.pro, src/testdir/test_functions.mnv
+
+Patch 8.2.0876
+Problem: :pwd does not give a hint about the scope of the directory
+Solution: Make ":verbose pwd" show the scope. (Takuya Fujiwara, closes #5469)
+Files: runtime/doc/editing.txt, src/ex_docmd.c, src/testdir/test_cd.mnv
+
+Patch 8.2.0877
+Problem: Cannot get the search statistics.
+Solution: Add the searchcount() function. (Fujiwara Takuya, closes #4446)
+Files: runtime/doc/eval.txt, src/evalfunc.c, src/macros.h,
+ src/proto/search.pro, src/search.c,
+ src/testdir/test_search_stat.mnv
+
+Patch 8.2.0878
+Problem: No reduce() function.
+Solution: Add a reduce() function. (closes #5481)
+Files: runtime/doc/eval.txt, src/evalfunc.c, src/globals.h, src/list.c,
+ src/proto/list.pro, src/testdir/test_listdict.mnv
+
+Patch 8.2.0879
+Problem: Compiler warning for unused function argument.
+Solution: Add UNUSED.
+Files: src/search.c
+
+Patch 8.2.0880 (after 8.2.0877)
+Problem: Leaking memory when using searchcount().
+Solution: Free the last used search pattern.
+Files: src/search.c
+
+Patch 8.2.0881
+Problem: Compiler warning for argument type.
+Solution: Add type cast. (Mike Williams)
+Files: src/ops.c
+
+Patch 8.2.0882
+Problem: Leaking memory when using reduce().
+Solution: Free the intermediate value.
+Files: src/list.c
+
+Patch 8.2.0883
+Problem: Memory leak in test 49.
+Solution: Free "sfile" from the exception.
+Files: src/ex_docmd.c
+
+Patch 8.2.0884
+Problem: Searchcount() test fails on slower systems.
+Solution: Set a longer timeout.
+Files: src/search.c, src/testdir/test_search_stat.mnv
+
+Patch 8.2.0885
+Problem: "make shadow" does not link new lua test dir.
+Solution: Also link testdir/testluaplugin. (Elimar Riesebieter)
+Files: src/Makefile
+
+Patch 8.2.0886
+Problem: Cannot use octal numbers in scriptversion 4.
+Solution: Add the "0o" notation. (Ken Takata, closes #5304)
+Files: runtime/doc/eval.txt, src/charset.c, src/evalfunc.c,
+ src/testdir/test_eval_stuff.mnv, src/testdir/test_functions.mnv,
+ src/mnv.h
+
+Patch 8.2.0887
+Problem: Searchcount().exact_match is 1 right after a match.
+Solution: Use LT_POS() instead of LTOREQ_POS(). (closes #6189)
+Files: src/search.c, src/testdir/test_search_stat.mnv
+
+Patch 8.2.0888
+Problem: Readdirex() returns size -2 for a directory.
+Solution: Add missing "else". (Ken Takata, closes #6185)
+Files: src/fileio.c, src/testdir/test_functions.mnv
+
+Patch 8.2.0889
+Problem: Using old style comments.
+Solution: Use // comments. (Yegappan Lakshmanan, closes #6190)
+Files: src/gui_xim.c
+
+Patch 8.2.0890
+Problem: No color in terminal window when 'termguicolors' is set.
+Solution: Clear the underline color. (closes #6186)
+Files: src/highlight.c
+
+Patch 8.2.0891
+Problem: Clang warns for invalid conversion.
+Solution: Use zero instead of INVALCOLOR.
+Files: src/highlight.c
+
+Patch 8.2.0892
+Problem: Ubsan warns for undefined behavior.
+Solution: Use unsigned instead of signed variable. (Dominique Pellé,
+ closes #6193)
+Files: src/regexp_nfa.c
+
+Patch 8.2.0893
+Problem: Assert_equalfile() does not take a third argument.
+Solution: Implement the third argument. (Gary Johnson)
+Files: runtime/doc/eval.txt, runtime/doc/testing.txt, src/evalfunc.c,
+ src/testdir/test_assert.mnv, src/testing.c
+
+Patch 8.2.0894
+Problem: :mkspell can take very long if the word count is high.
+Solution: Use long to avoid negative numbers. Increase the limits by 20% if
+ the compression did not have effect.
+Files: src/spellfile.c
+
+Patch 8.2.0895
+Problem: :mkspell output does not mention the tree type.
+Solution: Back out increasing the limits, it has no effect. Mention the
+ tree being compressed. Only give a message once per second.
+Files: src/spellfile.c
+
+Patch 8.2.0896
+Problem: Crash when calling searchcount() with a string.
+Solution: Check the argument is a dict. (closes #6192)
+Files: src/search.c, src/testdir/test_search_stat.mnv
+
+Patch 8.2.0897
+Problem: List of functions in patched version is outdated.
+Solution: Update the function lists only.
+Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt
+
+Patch 8.2.0898
+Problem: Missing help for a function goes unnoticed.
+Solution: Add a test. (Gary Johnson)
+Files: src/testdir/test_function_lists.mnv, src/testdir/Make_all.mak
+
+Patch 8.2.0899
+Problem: Assert_equalfile() does not give a hint about the difference.
+Solution: Display the last seen text.
+Files: src/testing.c, src/testdir/test_assert.mnv
+
+Patch 8.2.0900
+Problem: Function list test fails on MS-Windows.
+Solution: Make sure the fileformat is "unix"
+Files: src/testdir/test_function_lists.mnv
+
+Patch 8.2.0901
+Problem: Formatting CJK text isn't optimal.
+Solution: Properly break CJK lines. (closes #3875)
+Files: runtime/doc/change.txt, src/mbyte.c, src/ops.c, src/option.h,
+ src/proto/mbyte.pro, src/testdir/Make_all.mak, src/textformat.c,
+ src/testdir/test_cjk_linebreak.mnv
+
+Patch 8.2.0902
+Problem: Using searchcount() in 'statusline' causes an error.
+Solution: Avoid saving/restoring the search pattern recursively.
+ (closes #6194)
+Files: src/search.c, src/testdir/test_search_stat.mnv,
+ src/testdir/dumps/Test_searchstat_4.dump
+
+Patch 8.2.0903
+Problem: comparing WINVER does not work correctly.
+Solution: Use arithmetic expansion. (Ozaki Kiichi, closes #6197)
+Files: src/Make_cyg_ming.mak
+
+Patch 8.2.0904
+Problem: Assuming modifyOtherKeys for rhs of mapping.
+Solution: Ignore seenModifyOtherKeys for mapped characters. (closes #6200)
+Files: src/getchar.c, src/testdir/test_gui.mnv
+
+Patch 8.2.0905
+Problem: Test coverage could be better.
+Solution: Add a couple of tests. (Dominique Pellé, closes #6202)
+Files: src/testdir/test_cmdline.mnv, src/testdir/test_ga.mnv
+
+Patch 8.2.0906
+Problem: When setting 'termguicolors' SpellBad is no longer red.
+Solution: Only use the RGB guisp color for cterm when using the "underline"
+ or "undercurl" attributes to avoid the background color to be
+ cleared. Also make t_8u empty when the termresponse indicates a
+ real xterm. (closes #6207)
+Files: src/highlight.c, src/term.c
+
+Patch 8.2.0907
+Problem: When using :global clipboard isn't set correctly.
+Solution: Set "clip_unnamed_saved" instead of "clip_unnamed". (Christian
+ Brabandt, closes #6203, closes #6198)
+Files: src/clipboard.c, src/testdir/test_global.mnv
+
+Patch 8.2.0908
+Problem: Crash when changing the function table while listing it.
+Solution: Bail out when the function table changes. (closes #6209)
+Files: src/userfunc.c, src/testdir/test_timers.mnv
+
+Patch 8.2.0909
+Problem: Cannot go back to the previous local directory.
+Solution: Add "tcd -" and "lcd -". (Yegappan Lakshmanan, closes #4362)
+Files: runtime/doc/editing.txt, src/filepath.c, src/ex_docmd.c,
+ src/structs.h, src/testdir/test_cd.mnv, src/window.c
+
+Patch 8.2.0910
+Problem: MNV is not reproducibly buildable.
+Solution: Use the $SOURCE_DATE_EPOCH environment variable in configure.
+ (James McCoy, closes #513) Give a warning about using it.
+Files: src/config.h.in, src/config.mk.in, src/configure.ac,
+ src/auto/configure, src/version.c, src/Makefile
+
+Patch 8.2.0911
+Problem: Crash when opening a buffer for the cmdline window fails. (Chris
+ Barber)
+Solution: Check do_ecmd() succeeds. Reset got_int if "q" was used at the
+ more prompt. (closes #6211)
+Files: src/ex_getln.c, src/testdir/test_cmdline.mnv,
+ src/testdir/dumps/Test_cmdwin_interrupted.dump
+
+Patch 8.2.0912
+Problem: A few test cases for CJK formatting are disabled.
+Solution: Fix the tests and enable them. (closes #6212)
+Files: src/testdir/test_cjk_linebreak.mnv
+
+Patch 8.2.0913
+Problem: Code for resetting v:register is duplicated.
+Solution: Add reset_reg_var().
+Files: src/evalvars.c, src/proto/evalvars.pro, src/main.c, src/normal.c
+
+Patch 8.2.0914
+Problem: MS-Windows: cannot specify a "modified by" text.
+Solution: Add MODIFIED_BY in the MSVC build file. (Chen Lei, closes #1275)
+Files: src/Make_mvc.mak
+
+Patch 8.2.0915
+Problem: Search() cannot skip over matches like searchpair() can.
+Solution: Add an optional "skip" argument. (Christian Brabandt, closes #861)
+Files: runtime/doc/eval.txt, src/evalfunc.c, src/testdir/test_syntax.mnv,
+ src/structs.h, src/evalvars.c, src/proto/evalvars.pro
+
+Patch 8.2.0916
+Problem: Mapping with partly modifyOtherKeys code does not work.
+Solution: If there is no mapping with a separate modifier include the
+ modifier in the key and then try mapping again. (closes #6200)
+Files: src/getchar.c, src/proto/getchar.pro, src/edit.c, src/term.c,
+ src/proto/term.pro, src/testdir/test_termcodes.mnv
+
+Patch 8.2.0917
+Problem: Quickfix entries do not support a "note" type.
+Solution: Add support for "note". (partly by Yegappan Lakshmanan,
+ closes #5527, closes #6216)
+Files: runtime/doc/quickfix.txt, src/quickfix.c,
+ src/testdir/test_quickfix.mnv
+
+Patch 8.2.0918
+Problem: Duplicate code for evaluating expression argument.
+Solution: Merge the code and make the use more flexible.
+Files: src/evalfunc.c, src/eval.c, src/proto/eval.pro, src/evalvars.c,
+ src/proto/evalvars.pro, src/structs.h
+
+Patch 8.2.0919
+Problem: Merging modifier for modifyOtherKeys is done twice.
+Solution: Remove the merging done in vgetc().
+Files: src/getchar.c, src/ex_getln.c
+
+Patch 8.2.0920
+Problem: Writing mnvinfo fails with a circular reference.
+Solution: Use copyID to detect the cycle. (closes #6217)
+Files: src/testdir/test_mnvinfo.mnv, src/mnvinfo.c
+
+Patch 8.2.0921
+Problem: CTRL-W T in cmdline window causes trouble.
+Solution: Disallow CTRL-W T in the cmdline window. Add more tests.
+ (Naruhiko Nishino, closes #6219)
+Files: src/testdir/test_cmdline.mnv, src/window.c
+
+Patch 8.2.0922
+Problem: Search test fails.
+Solution: Remove failure tests for calls that no longer fail.
+Files: src/testdir/test_search.mnv
+
+Patch 8.2.0923
+Problem: Cmdline test is slow.
+Solution: Use WaitForAssert().
+Files: src/testdir/test_cmdline.mnv
+
+Patch 8.2.0924
+Problem: Cannot save and restore a register properly.
+Solution: Add getreginfo() and make setreg() accept a dictionary. (Andy
+ Massimino, closes #3370)
+Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/proto/register.pro, src/register.c,
+ src/testdir/test_eval_stuff.mnv, src/testdir/test_registers.mnv
+
+Patch 8.2.0925
+Problem: Getcompletion() does not return command line arguments.
+Solution: Add the "cmdline" option. (Shougo, closes #1140)
+Files: runtime/doc/eval.txt, src/cmdexpand.c,
+ src/testdir/test_cmdline.mnv
+
+Patch 8.2.0926
+Problem: Cmdline test fails on Appveyor.
+Solution: Add CR to the commands. (Naruhiko Nishino, closes #6220)
+Files: src/testdir/test_cmdline.mnv
+
+Patch 8.2.0927
+Problem: Some sshconfig and ssdhconfig files are not recognized.
+Solution: Add filetype patterns.
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.0928
+Problem: Many type casts are used for mnv_strnsave().
+Solution: Make the length argument size_t instead of int. (Ken Takata,
+ closes #5633) Remove some type casts.
+Files: src/misc2.c, src/proto/misc2.pro, src/autocmd.c, src/channel.c,
+ src/cmdexpand.c, src/dict.c, src/diff.c, src/digraph.c,
+ src/eval.c, src/evalfunc.c, src/highlight.c, src/syntax.c
+
+Patch 8.2.0929
+Problem: v:register is not cleared after an operator was executed.
+Solution: Clear v:register after finishing an operator (Andy Massimino,
+ closes #5305)
+Files: src/normal.c, src/testdir/test_registers.mnv
+
+Patch 8.2.0930
+Problem: Script filetype detection trips over env -S argument.
+Solution: Remove "-S" and "--ignore-environment". (closes #5013)
+ Add tests.
+Files: runtime/scripts.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.0931
+Problem: Some remarks about BeOS remain.
+Solution: Remove BeOS remarks from the help and other files. (Emir Sarı,
+ closes #6221)
+Files: READMEdir/README_extra.txt, runtime/doc/options.txt,
+ runtime/doc/os_beos.txt, runtime/doc/os_vms.txt,
+ runtime/doc/vi_diff.txt, src/INSTALL
+
+Patch 8.2.0932
+Problem: Misspelling spelllang.
+Solution: Add an "l". (Dominique Pellé)
+Files: src/optionstr.c, src/proto/spell.pro, src/spell.c
+
+Patch 8.2.0933
+Problem: 'quickfixtextfunc' does not get window ID of location list.
+Solution: Add "winid" to the dict argument. (Yegappan Lakshmanan,
+ closes #6222)
+Files: runtime/doc/quickfix.txt, src/quickfix.c,
+ src/testdir/test_quickfix.mnv
+
+Patch 8.2.0934
+Problem: Running lhelpgrep twice in a help window doesn't jump to the help
+ topic.
+Solution: Check whether any window with the location list is present.
+ (Yegappan Lakshmanan, closes #6215)
+Files: src/quickfix.c, src/testdir/test_quickfix.mnv
+
+Patch 8.2.0935
+Problem: Flattening a list with existing code is slow.
+Solution: Add flatten(). (Mopp, closes #3676)
+Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/list.c, src/proto/list.pro, src/testdir/Make_all.mak,
+ src/testdir/test_flatten.mnv
+
+Patch 8.2.0936
+Problem: Some terminals misinterpret the code for getting cursor style.
+Solution: Send a sequence to the terminal and check the result. (IWAMOTO
+ Kouichi, closes #2126) Merged with current code.
+Files: src/main.c, src/term.c, src/proto/term.pro,
+ src/testdir/term_util.mnv, src/testdir/test_quickfix.mnv,
+ src/testdir/test_terminal.mnv, src/testdir/test_startup_utf8.mnv,
+ src/testdir/dumps/Test_balloon_eval_term_01.dump,
+ src/testdir/dumps/Test_balloon_eval_term_01a.dump,
+ src/testdir/dumps/Test_balloon_eval_term_02.dump,
+ src/testdir/dumps/Test_terminal_all_ansi_colors.dump
+
+Patch 8.2.0937
+Problem: Asan failure in the flatten() test.
+Solution: Free the flattened list.
+Files: src/list.c
+
+Patch 8.2.0938
+Problem: NFA regexp uses tolower() to compare ignore-case. (Thayne McCombs)
+Solution: Use utf_fold() when possible. (ref. neomnv #12456)
+Files: src/macros.h, src/diff.c, src/regexp_nfa.c,
+ src/testdir/test_regexp_utf8.mnv
+
+Patch 8.2.0939
+Problem: checking for term escape sequences is long and confusing
+Solution: Refactor code into separate functions.
+Files: src/term.c
+
+Patch 8.2.0940 (after 8.2.0939)
+Problem: Build failure with tiny features.
+Solution: Add #ifdef. Add UNUSED. A bit more cleaning up.
+Files: src/term.c
+
+Patch 8.2.0941
+Problem: Detecting terminal properties is unstructured.
+Solution: Add a table with terminal properties. Set properties when a
+ terminal is detected.
+Files: src/term.c
+
+Patch 8.2.0942
+Problem: Expanding to local dir after homedir keeps "~/".
+Solution: Adjust modify_fname(). (Christian Brabandt, closes #6205,
+ closes #5979)
+Files: src/filepath.c, src/testdir/test_fnamemodify.mnv
+
+Patch 8.2.0943
+Problem: Displaying ^M or ^J depends on current buffer.
+Solution: Pass the displayed buffer to transchar(). (closes #6225)
+Files: src/drawline.c, src/charset.c, src/proto/charset.pro,
+ src/ex_cmds.c, src/gui_beval.c, src/message.c,
+ src/testdir/test_display.mnv,
+ src/testdir/dumps/Test_display_unprintable_01.dump,
+ src/testdir/dumps/Test_display_unprintable_02.dump
+
+Patch 8.2.0944
+Problem: Xxd test leaves file behind.
+Solution: Delete the file "XXDfile". (Christian Brabandt, closes #6228)
+Files: src/testdir/test_xxd.mnv
+
+Patch 8.2.0945
+Problem: Cannot use "z=" when 'spell' is off.
+Solution: Make "z=" work even when 'spell' is off. (Christian Brabandt,
+ Gary Johnson, closes #6227)
+Files: runtime/doc/eval.txt, src/evalfunc.c, src/spell.c,
+ src/spellsuggest.c, src/testdir/test_spell.mnv, src/globals.h
+
+Patch 8.2.0946
+Problem: Cannot use "q" to cancel a number prompt.
+Solution: Recognize "q" instead of ignoring it.
+Files: src/misc1.c, src/testdir/test_functions.mnv
+
+Patch 8.2.0947
+Problem: Readdirex() doesn't handle broken link properly.
+Solution: Small fixes to readdirex(). (Christian Brabandt, closes #6226,
+ closes #6213)
+Files: src/fileio.c, src/testdir/test_functions.mnv
+
+Patch 8.2.0948
+Problem: Spell test fails.
+Solution: Adjust expected text of the prompt.
+Files: src/testdir/test_spell.mnv
+
+Patch 8.2.0949
+Problem: Strptime() does not use DST.
+Solution: Set the tm_isdst field to -1. (Tomáš Janoušek, closes #6230)
+Files: src/time.c, src/testdir/test_functions.mnv
+
+Patch 8.2.0950
+Problem: Tagjump test fails.
+Solution: Adjust expected text of the prompt.
+Files: src/testdir/test_tagjump.mnv
+
+Patch 8.2.0951
+Problem: Search stat test has leftover from debugging.
+Solution: Remove line that writes a file. (Christian Brabandt, closes #6224)
+Files: src/testdir/test_search_stat.mnv
+
+Patch 8.2.0952
+Problem: No simple way to interrupt MNV.
+Solution: Add the SigUSR1 autocommand, triggered by SIGUSR1. (Jacob Hayes,
+ closes #1718)
+Files: runtime/doc/autocmd.txt, src/mnv.h, src/autocmd.c, src/getchar.c,
+ src/globals.h, src/os_unix.c, src/testdir/test_autocmd.mnv
+
+Patch 8.2.0953
+Problem: Spell checking doesn't work for CamelCased words.
+Solution: Add the "camel" value in the new option 'spelloptions'.
+ (closes #1235)
+Files: runtime/doc/options.txt, runtime/doc/spell.txt, src/optiondefs.h,
+ src/option.h, src/option.c, src/buffer.c, src/optionstr.c,
+ src/testdir/gen_opt_test.mnv, src/testdir/test_spell.mnv
+
+Patch 8.2.0954
+Problem: Not all desktop files are recognized.
+Solution: Add the *.directory pattern. (Eisuke Kawashima, closes #3317)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.0955 (after 8.2.0953)
+Problem: Build fails.
+Solution: Add missing struct change.
+Files: src/structs.h
+
+Patch 8.2.0956 (after 8.2.0953)
+Problem: Spell test fails.
+Solution: Add missing change the spell checking.
+Files: src/spell.c
+
+Patch 8.2.0957
+Problem: Compiler warning for uninitialized variable. (Tony Mechelynck)
+Solution: Initialize one variable.
+Files: src/spell.c
+
+Patch 8.2.0958
+Problem: Not sufficient testing for buffer writing.
+Solution: Add a few tests. (Yegappan Lakshmanan, closes #6238)
+Files: src/testdir/test_backup.mnv, src/testdir/test_writefile.mnv
+
+Patch 8.2.0959
+Problem: Using 'quickfixtextfunc' is a bit slow.
+Solution: Process a list of entries. (Yegappan Lakshmanan, closes #6234)
+Files: runtime/doc/quickfix.txt, src/quickfix.c,
+ src/testdir/test_quickfix.mnv
+
+Patch 8.2.0960
+Problem: Cannot use :import in legacy MNV script.
+Solution: Support :import in any MNV script.
+Files: src/mnv9script.c, src/evalvars.c, src/userfunc.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0961
+Problem: MS-Windows: no completion for locales.
+Solution: Use the directories in $MNVRUNTIME/lang to complete locales.
+ (Christian Brabandt, closes 36248)
+Files: src/cmdexpand.c, src/ex_cmds2.c, src/testdir/test_cmdline.mnv
+
+Patch 8.2.0962
+Problem: Terminal test sometimes hangs on Travis.
+Solution: Do show output for this test temporarily.
+Files: src/testdir/Makefile
+
+Patch 8.2.0963
+Problem: Number increment/decrement does not work with 'virtualedit'.
+Solution: Handle coladd changing. (Christian Brabandt, closes #6240,
+ closes #923)
+Files: runtime/doc/options.txt, runtime/doc/various.txt, src/ops.c,
+ src/testdir/test_increment.mnv
+
+Patch 8.2.0964
+Problem: TextYankPost does not provide info about Visual selection.
+Solution: Add the 'visual' key in v:event. (closes #6249)
+Files: runtime/doc/autocmd.txt, src/register.c,
+ src/testdir/test_autocmd.mnv
+
+Patch 8.2.0965
+Problem: Has_funcundefined() is not used.
+Solution: Delete the function. (Dominique Pellé, closes #6242)
+Files: src/autocmd.c, src/proto/autocmd.pro
+
+Patch 8.2.0966
+Problem: 'shortmess' flag "n" not used in two places.
+Solution: Make use of the "n" flag consistent. (Nick Jensen, closes #6245,
+ closes #6244)
+Files: src/bufwrite.c, src/proto/bufwrite.pro, src/buffer.c,
+ src/fileio.c, src/testdir/dumps/Test_popup_textprop_corn_5.dump,
+ src/testdir/dumps/Test_start_with_tabs.dump
+
+Patch 8.2.0967
+Problem: Unnecessary type casts for mnv_strnsave().
+Solution: Remove the type casts.
+Files: src/evalvars.c, src/ex_cmds.c, src/ex_eval.c, src/fileio.c,
+ src/filepath.c, src/findfile.c, src/highlight.c, src/if_ruby.c,
+ src/insexpand.c, src/json.c, src/mark.c, src/memline.c,
+ src/menu.c, src/misc1.c, src/ops.c, src/os_win32.c, src/regexp.c,
+ src/regexp_bt.c, src/regexp_nfa.c, src/register.c, src/search.c,
+ src/sign.c, src/syntax.c, src/term.c, src/terminal.c, src/undo.c,
+ src/usercmd.c, src/userfunc.c, src/mnv9compile.c, src/if_perl.xs
+
+Patch 8.2.0968
+Problem: No proper testing of the 'cpoptions' flags.
+Solution: Add tests. (Yegappan Lakshmanan, closes #6251)
+Files: src/testdir/Make_all.mak, src/testdir/test_cpoptions.mnv,
+ src/testdir/test_edit.mnv, src/testdir/test_normal.mnv
+
+Patch 8.2.0969
+Problem: Assert_equal() output for dicts is hard to figure out.
+Solution: Only show the different items.
+Files: src/testing.c, src/testdir/test_assert.mnv
+
+Patch 8.2.0970
+Problem: Terminal properties are not available in MNV script.
+Solution: Add the terminalprops() function.
+Files: src/term.c, src/proto/term.pro, src/evalfunc.c, src/main.c,
+ src/testing.c, src/globals.h, src/testdir/test_termcodes.mnv,
+ runtime/doc/usr_41.txt, runtime/doc/eval.txt,
+ runtime/doc/testing.txt
+
+Patch 8.2.0971
+Problem: Build with tiny features fails.
+Solution: Add #ifdef.
+Files: src/term.c
+
+Patch 8.2.0972
+Problem: MNV9 script variable declarations need a type.
+Solution: Make "let var: type" declare a script-local variable.
+Files: src/evalvars.c, src/mnv9script.c, src/proto/mnv9script.pro,
+ src/globals.h, src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0973
+Problem: MNV9: type is not checked when assigning to a script variable.
+Solution: Check the type.
+Files: src/evalvars.c, src/mnv9script.c, src/proto/mnv9script.pro,
+ src/mnv9compile.c, src/proto/mnv9compile.pro,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0974
+Problem: MNV9: memory leak when script var has wrong type.
+Solution: Free the variable name.
+Files: src/mnv9script.mnv
+
+Patch 8.2.0975
+Problem: MNV9: script variable does not accept optional s: prefix.
+Solution: Adjust the accepted syntax.
+Files: src/mnv9script.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0976
+Problem: Some 'cpoptions' not tested.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #6253)
+Files: src/testdir/test_cd.mnv, src/testdir/test_charsearch.mnv,
+ src/testdir/test_cpoptions.mnv, src/testdir/test_normal.mnv
+
+Patch 8.2.0977
+Problem: t_8u is made empty for the wrong terminals. (Dominique Pelle)
+Solution: Invert the check for TPR_YES. (closes #6254)
+Files: src/term.c, src/testdir/test_termcodes.mnv
+
+Patch 8.2.0978
+Problem: Leaking memory in termcodes test.
+Solution: Set t_8u with set_option_value().
+Files: src/term.c
+
+Patch 8.2.0979
+Problem: A couple of screendump tests fail.
+Solution: Do not redraw when clearing t_8u.
+Files: src/term.c
+
+Patch 8.2.0980
+Problem: Raku file extension not recognized. (Steven Penny)
+Solution: Recognize .raku and .rakumod. (closes #6255)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.0981
+Problem: MNV9: cannot compile "[var, var] = list".
+Solution: Implement list assignment.
+Files: src/mnv9compile.c, src/mnv9.h, src/mnv9execute.c, src/evalvars.c,
+ src/proto/evalvars.pro, src/eval.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0982
+Problem: Insufficient testing for reading/writing files.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #6257)
+ Add "ui_delay" to test_override() and use it for the CTRL-O test.
+Files: src/testing.c, src/globals.h, src/ui.c, runtime/doc/testing.txt,
+ src/testdir/test_autocmd.mnv, src/testdir/test_edit.mnv,
+ src/testdir/test_filechanged.mnv, src/testdir/test_writefile.mnv
+
+Patch 8.2.0983
+Problem: SConstruct file type not recognized.
+Solution: Use python for SConstruct files. (Roland Hieber)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.0984
+Problem: Not using previous window when closing a shell popup window.
+Solution: Use "prevwin" if it was set. (closes #6267)
+Files: src/popupwin.c, src/testdir/test_popupwin.mnv
+
+Patch 8.2.0985
+Problem: Simplify() does not remove slashes from "///path".
+Solution: Reduce > 2 slashes to one. (closes #6263)
+Files: src/findfile.c, src/testdir/test_functions.mnv
+
+Patch 8.2.0986 (after 8.2.0985)
+Problem: MS-Windows: functions test fails.
+Solution: Only simplify ///path on Unix.
+Files: src/testdir/test_functions.mnv
+
+Patch 8.2.0987
+Problem: MNV9: cannot assign to [var; var].
+Solution: Assign rest of items to a list.
+Files: src/mnv9.h, src/mnv9compile.c, src/mnv9execute.c, src/list.c,
+ src/proto/list.pro, src/eval.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0988
+Problem: Getting directory contents is always case sorted.
+Solution: Add sort options and v:collate. (Christian Brabandt, closes #6229)
+Files: runtime/doc/eval.txt, runtime/doc/mlang.txt, src/auto/configure,
+ src/cmdexpand.c, src/config.h.in, src/configure.ac,
+ src/evalfunc.c, src/evalvars.c, src/ex_cmds2.c, src/fileio.c,
+ src/filepath.c, src/globals.h, src/proto/fileio.pro,
+ src/testdir/test_cmdline.mnv, src/testdir/test_functions.mnv,
+ src/mnv.h
+
+Patch 8.2.0989
+Problem: Crash after resizing a terminal window. (August Masquelier)
+Solution: Add check for valid row in libvterm. (closes #6273)
+Files: src/libvterm/src/state.c, src/libvterm/src/screen.c
+
+Patch 8.2.0990 (after 8.2.0988)
+Problem: Using duplicate error number.
+Solution: Use an unused error number. Add a test for it.
+Files: src/globals.h, src/testdir/test_functions.mnv
+
+Patch 8.2.0991
+Problem: Cannot get window type for autocmd and preview window.
+Solution: Add types to win_gettype(). (Yegappan Lakshmanan, closes #6277)
+Files: runtime/doc/eval.txt, src/evalwindow.c,
+ src/testdir/test_autocmd.mnv, src/testdir/test_preview.mnv
+
+Patch 8.2.0992
+Problem: MNV9: crash when using :import in the MNV command.
+Solution: Give an error when using :import outside of a script.
+ (closes #6271)
+Files: src/mnv9script.c, src/testdir/test_mnv9_script.mnv,
+ src/testdir/term_util.mnv
+
+Patch 8.2.0993
+Problem: MNV9 script test fails with normal features.
+Solution: Use :func instead of :def for now.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0994
+Problem: MNV9: missing function causes compilation error.
+Solution: Call test function indirectly.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.0995
+Problem: Insufficient testing for the readdir() sort option.
+Solution: Add a few more tests. (Christian Brabandt, closes #6278)
+Files: src/testdir/test_functions.mnv
+
+Patch 8.2.0996
+Problem: Using "aucmdwin" in win_gettype() is not ideal.
+Solution: Rename to "autocmd".
+Files: runtime/doc/eval.txt, src/evalwindow.c,
+ src/testdir/test_autocmd.mnv
+
+Patch 8.2.0997
+Problem: Cannot execute a register containing line continuation.
+Solution: Concatenate lines where needed. (Yegappan Lakshmanan,
+ closes #6272)
+Files: runtime/doc/repeat.txt, src/register.c,
+ src/testdir/test_registers.mnv
+
+Patch 8.2.0998
+Problem: Not all tag code is tested.
+Solution: Add a few more test cases. (Yegappan Lakshmanan, closes #6284)
+Files: src/testdir/test_tagjump.mnv
+
+Patch 8.2.0999
+Problem: Moving to next sentence gets stuck on quote.
+Solution: When moving to the next sentence doesn't result in moving, advance
+ a character and try again. (closes #6291)
+Files: src/textobject.c, src/testdir/test_textobjects.mnv
+
+Patch 8.2.1000
+Problem: Get error when leaving Ex mode with :visual and a CmdLineEnter
+ autocommand was used.
+Solution: Reset ex_pressedreturn. (closes #6293)
+Files: src/ex_docmd.c, src/testdir/test_ex_mode.mnv
+
+Patch 8.2.1001
+Problem: MNV9: crash with nested "if" and assignment.
+Solution: Skip more of the assignment. Do not set ctx_skip when code is
+ reachable.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1002
+Problem: Test may fail when run directly.
+Solution: Check if g:run_nr exists. (Christian Brabandt, closes #6285)
+Files: src/testdir/term_util.mnv
+
+Patch 8.2.1003
+Problem: MNV9: return type of sort() is too generic.
+Solution: Get type from the first argument. (closes #6292)
+Files: src/evalfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1004
+Problem: Line numbers below filler lines not always updated.
+Solution: Don't break out of the win_line() loop too early. (Christian
+ Brabandt, closes #6294, closes #6138)
+Files: src/drawline.c, src/testdir/dumps/Test_diff_rnu_01.dump,
+ src/testdir/dumps/Test_diff_rnu_02.dump,
+ src/testdir/dumps/Test_diff_rnu_03.dump,
+ src/testdir/test_diffmode.mnv
+
+Patch 8.2.1005
+Problem: MNV9: using TRUE/FALSE/MAYBE for ctx_skip is confusing.
+Solution: Use an enum value.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.1006
+Problem: MNV9: require unnecessary return statement.
+Solution: Improve the use of the had_return flag. (closes #6270)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_disassemble.mnv,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1007
+Problem: Completion doesn't work after ":r ++arg !".
+Solution: Skip over "++arg". (Christian Brabandt, closes #6275,
+ closes #6258)
+Files: src/cmdexpand.c, src/testdir/test_cmdline.mnv
+
+Patch 8.2.1008
+Problem: MNV9: no test for disassembling newly added instructions.
+Solution: Add a function and check disassembly.
+Files: src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.1009
+Problem: MNV9: some failures not checked for.
+Solution: Add test cases. Remove unused code.
+Files: src/testdir/test_mnv9_script.mnv, src/mnv9execute.c
+
+Patch 8.2.1010
+Problem: Build failure in libvterm with debug enabled. (John Little)
+Solution: Use "->" instead of ".".
+Files: src/libvterm/src/state.c
+
+Patch 8.2.1011
+Problem: MNV9: some code not tested.
+Solution: Add a few more test cases. Reorder checks for clearer error.
+ Remove unreachable code.
+Files: src/evalvars.c, src/mnv9script.c, src/mnv9execute.c,
+ src/proto/mnv9script.pro, src/testdir/test_mnv9_script.mnv,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1012
+Problem: MNV9: cannot declare single character script variables.
+Solution: Don't see "b:", "s:", etc. as namespace. Fix item size of
+ sn_var_vals.
+Files: src/mnv9script.c, src/scriptfile.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1013
+Problem: Channel tests can be a bit flaky.
+Solution: Set the g:test_is_flaky flag in SetUp().
+Files: src/testdir/test_channel.mnv
+
+Patch 8.2.1014
+Problem: Using "name" for a string result is confusing.
+Solution: Rename to "end".
+Files: src/typval.c
+
+Patch 8.2.1015
+Problem: Popup filter gets key with modifier prepended when using
+ modifyOtherKeys.
+Solution: Remove the shift modifier when it is included in the key, also
+ when the Alt or Meta modifier is used.
+Files: src/term.c, src/misc2.c, src/testdir/test_popupwin.mnv
+
+Patch 8.2.1016
+Problem: MNV9: test fails when channel feature is missing.
+Solution: Process an :if command when skipping
+Files: src/mnv9compile.c
+
+Patch 8.2.1017
+Problem: Appveyor output doesn't show MinGW console features.
+Solution: List the features of the console build.
+Files: ci/appveyor.bat
+
+Patch 8.2.1018
+Problem: Typo in enum value. (James McCoy)
+Solution: Fix the typo.
+Files: src/mnv9compile.c
+
+Patch 8.2.1019
+Problem: Mapping <M-S-a> does not work in the GUI.
+Solution: Move the logic to remove the shift modifier to
+ may_remove_shift_modifier() and also use it in the GUI.
+Files: src/gui_gtk_x11.c, src/misc2.c, src/proto/misc2.pro, src/term.c
+
+Patch 8.2.1020
+Problem: Popupwin test fails in the GUI.
+Solution: Send GUI byte sequence for <C-S-a>.
+Files: src/testdir/test_popupwin.mnv
+
+Patch 8.2.1021
+Problem: Ruby interface not tested enough.
+Solution: Add a couple more tests. (Dominique Pellé, closes #6301)
+Files: src/testdir/test_ruby.mnv
+
+Patch 8.2.1022
+Problem: Various parts of code not covered by tests.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #6300)
+Files: src/testdir/test_blob.mnv, src/testdir/test_cpoptions.mnv,
+ src/testdir/test_digraph.mnv, src/testdir/test_edit.mnv,
+ src/testdir/test_iminsert.mnv, src/testdir/test_paste.mnv,
+ src/testdir/test_prompt_buffer.mnv,
+ src/testdir/test_selectmode.mnv, src/testdir/test_tabpage.mnv,
+ src/testdir/test_tagjump.mnv, src/testdir/test_textformat.mnv,
+ src/testdir/test_mnvinfo.mnv, src/testdir/test_virtualedit.mnv,
+ src/testdir/test_visual.mnv
+
+Patch 8.2.1023
+Problem: MNV9: redefining a function uses a new index every time.
+Solution: When redefining a function clear the contents and re-use the
+ index.
+Files: src/mnv9compile.c, src/proto/mnv9compile.pro, src/userfunc.c,
+ src/structs.h, src/eval.c, src/evalvars.c, src/mnv9execute.c
+
+Patch 8.2.1024
+Problem: MNV9: no error for using "let g:var = val".
+Solution: Add an error.
+Files: src/evalvars.c, src/globals.h, src/structs.h, src/mnv9compile.c,
+ src/scriptfile.c, src/userfunc.c, src/testdir/test_mnv9_script.mnv,
+ src/testdir/test_mnv9_disassemble.mnv,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1025
+Problem: Tabpage menu and tabline not sufficiently tested.
+Solution: Add tests. (Yegappan Lakshmanan, closes #6307)
+Files: src/testdir/test_digraph.mnv, src/testdir/test_tabpage.mnv
+
+Patch 8.2.1026
+Problem: MNV9: cannot break the line after "->".
+Solution: Check for a continuation line after "->", "[" and ".". Ignore
+ trailing white space.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1027
+Problem: GUI: multibyte characters do not work in a terminal.
+Solution: Do not assume a key is one byte. (closes #6304)
+Files: src/gui_gtk_x11.c, src/gui_x11.c
+
+Patch 8.2.1028
+Problem: MNV9: no error for declaring buffer, window, etc. variable.
+Solution: Give an error. Unify the error messages.
+Files: src/evalvars.c, src/globals.h, src/mnv9compile.c,
+ src/proto/mnv9compile.pro, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1029
+Problem: MNV9: cannot chain function calls with -> at line start.
+Solution: Peek ahead for a following line starting with "->". (closes #6306)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1030
+Problem: Reducing size of a terminal window may cause a crash.
+Solution: Make sure the row and column don't become negative. (closes #6273)
+Files: src/libvterm/src/state.c, src/libvterm/src/screen.c
+
+Patch 8.2.1031
+Problem: Build failure with Perl5.32.
+Solution: Define a few more functions. (Felix Yan, closes #6310)
+Files: src/if_perl.xs
+
+Patch 8.2.1032
+Problem: Error message for declaring a variable cannot be translated.
+Solution: Enclose in _(). Make environment variable a separate message.
+Files: src/globals.h, src/mnv9compile.c
+
+Patch 8.2.1033
+Problem: Not easy to read the test time in the test output.
+Solution: Align the times. Make slow tests bold.
+Files: src/testdir/runtest.mnv
+
+Patch 8.2.1034
+Problem: Compiler warning for uninitialized variables.
+Solution: Add initializations. (John Marriott)
+Files: src/mnv9compile.c
+
+Patch 8.2.1035
+Problem: setreg() does not always clear the register.
+Solution: Clear the register if the dict argument is empty. (Andy Massimino,
+ closes #3370)
+Files: src/evalfunc.c, src/testdir/test_registers.mnv
+
+Patch 8.2.1036
+Problem: Popupwin test fails sometimes.
+Solution: Use WaitForAssert() instead of a sleep.
+Files: src/testdir/test_popupwin.mnv
+
+Patch 8.2.1037
+Problem: MNV9: crash when using line continuation inside :def.
+Solution: Check for no more lines available.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1038
+Problem: Popupwin test fails.
+Solution: Fix WaitForAssert() argument.
+Files: src/testdir/test_popupwin.mnv
+
+Patch 8.2.1039
+Problem: Cannot put NUL byte on clipboard.
+Solution: Use the text length. (Christian Brabandt, closes #6312,
+ closes #6149)
+Files: src/winclip.c, src/testdir/test_registers.mnv
+
+Patch 8.2.1040
+Problem: Not enough testing for movement commands.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #6313)
+Files: src/testdir/test_cursor_func.mnv, src/testdir/test_functions.mnv,
+ src/testdir/test_gf.mnv, src/testdir/test_normal.mnv,
+ src/testdir/test_options.mnv, src/testdir/test_quickfix.mnv
+
+Patch 8.2.1041
+Problem: Test summary is missing executed count.
+Solution: Adjust pattern used for counting.
+Files: src/testdir/summarize.mnv
+
+Patch 8.2.1042
+Problem: MNV9: cannot put an operator on the next line.
+Solution: Require a colon before a range to see if that causes problems.
+Files: runtime/doc/mnv9.txt, src/mnv9compile.c, src/ex_docmd.c,
+ src/globals.h, src/testdir/test_mnv9_script.mnv,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1043
+Problem: %a item in 'statusline' not tested.
+Solution: Add a test. (Dominique Pellé, closes #6318)
+Files: src/testdir/test_statusline.mnv
+
+Patch 8.2.1044
+Problem: Not all systemd file types are recognized.
+Solution: Match several more files. (Guido Cella, closes #6319)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.1045
+Problem: MNV9: line break before operator does not work.
+Solution: Peek the next line for an operator.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1046
+Problem: Insufficient tests for src/buffer.c.
+Solution: Add more tests. Move comments related tests to a separate file.
+ (Yegappan Lakshmanan, closes #6325)
+Files: src/testdir/Make_all.mak, src/testdir/test_buffer.mnv,
+ src/testdir/test_cmdline.mnv, src/testdir/test_comments.mnv,
+ src/testdir/test_normal.mnv, src/testdir/test_textformat.mnv
+
+Patch 8.2.1047
+Problem: MNV9: script cannot use line continuation like in a :def function.
+Solution: Pass the getline function pointer to the eval() functions. Use it
+ for addition and multiplication operators.
+Files: src/mnv.h, src/structs.h, src/globals.h, src/ex_eval.c,
+ src/eval.c, src/proto/eval.pro, src/dict.c, src/evalfunc.c,
+ src/evalvars.c, src/list.c, src/userfunc.c, src/scriptfile.c,
+ src/proto/scriptfile.pro, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1048 (after 8.2.1047)
+Problem: Build failure without the eval feature.
+Solution: Add dummy typedef.
+Files: src/structs.h
+
+Patch 8.2.1049 (after 8.2.1047)
+Problem: MNV9: leaking memory when using continuation line.
+Solution: Keep a pointer to the continuation line in evalarg_T. Centralize
+ checking for a next command.
+Files: src/structs.h, src/eval.c, src/proto/eval.pro, src/beval.c,
+ src/buffer.c, src/clientserver.c, src/evalvars.c, src/ex_docmd.c,
+ src/ex_eval.c, src/filepath.c, src/findfile.c, src/fold.c,
+ src/globals.h, src/if_ole.cpp, src/if_perl.xs, src/if_tcl.c,
+ src/map.c, src/quickfix.c, src/regexp.c, src/register.c,
+ src/screen.c, src/userfunc.c
+
+Patch 8.2.1050 (after 8.2.1049)
+Problem: Missing change in struct.
+Solution: Add missing change.
+Files: src/ex_cmds.h
+
+Patch 8.2.1051
+Problem: Crash when changing a list while using reduce() on it.
+Solution: Lock the list. (closes #6330)
+Files: src/list.c, src/testdir/test_listdict.mnv
+
+Patch 8.2.1052
+Problem: Build failure with older compilers.
+Solution: Move declaration to start of block.
+Files: src/eval.c
+
+Patch 8.2.1053
+Problem: Insufficient testing for 'statusline' and 'tabline'.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #6333)
+Files: src/testdir/test_autocmd.mnv, src/testdir/test_statusline.mnv,
+ src/testdir/test_tabline.mnv
+
+Patch 8.2.1054
+Problem: Not so easy to pass a lua function to MNV.
+Solution: Convert a Lua function and closure to a MNV funcref. (Prabir
+ Shrestha, closes #6246)
+Files: runtime/doc/if_lua.txt, src/if_lua.c, src/proto/userfunc.pro,
+ src/structs.h, src/testdir/test_lua.mnv, src/userfunc.c
+
+Patch 8.2.1055
+Problem: No filetype set for pacman config files.
+Solution: Recognize pacman.conf and *.hook. (Guido Cella, closes #6335)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.1056
+Problem: Wrong display when mixing match conceal and syntax conceal.
+Solution: Adjust how conceal flags are used. (closes #6327, closes #6303)
+Files: src/drawline.c, src/highlight.c,
+ src/testdir/test_matchadd_conceal.mnv
+
+Patch 8.2.1057 (after 8.2.1054)
+Problem: Cannot build with dynamic Lua.
+Solution: Add dll variables.
+Files: src/if_lua.c
+
+Patch 8.2.1058
+Problem: Multiline conceal causes display errors.
+Solution: Do not allow conceal cross over EOL. (closes #6326, closes #4854,
+ closes #6302)
+Files: src/drawline.c, src/testdir/test_conceal.mnv,
+ src/testdir/test_diffmode.mnv
+
+Patch 8.2.1059
+Problem: Crash when using :tabonly in an autocommand. (Yegappan Lakshmanan)
+Solution: Do not allow the autocommand window to be closed.
+Files: src/ex_docmd.c, src/window.c, src/globals.h,
+ src/testdir/test_autocmd.mnv
+
+Patch 8.2.1060
+Problem: Not all elinks files are recognized.
+Solution: Just check for "elinks.conf". (Guido Cella, closes #6337)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.1061
+Problem: Insufficient testing for src/window.c.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #6345)
+Files: src/testdir/test_excmd.mnv, src/testdir/test_gf.mnv,
+ src/testdir/test_options.mnv, src/testdir/test_popupwin.mnv,
+ src/testdir/test_quickfix.mnv, src/testdir/test_tabpage.mnv,
+ src/testdir/test_tagjump.mnv, src/testdir/test_window_cmd.mnv,
+ src/window.c
+
+Patch 8.2.1062
+Problem: MNV9: no line break allowed inside "cond ? val1 : val2".
+Solution: Check for operator after line break.
+Files: src/eval.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1063
+Problem: MNV9: no line break allowed before || or &&.
+Solution: Check for operator after line break.
+Files: src/eval.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1064
+Problem: MNV9: no line break allowed before comparators.
+Solution: Check for comparator after line break.
+Files: src/eval.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1065
+Problem: MNV9: no line break allowed inside a list.
+Solution: Handle line break inside a list in MNV9 script.
+Files: src/eval.c, src/proto/eval.pro, src/list.c, src/proto/list.pro,
+ src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_arglist.mnv
+
+Patch 8.2.1066
+Problem: Lua arrays are zero based.
+Solution: Make Lua arrays one based. (Prabir Shrestha, closes #6347)
+ Note: this is not backwards compatible.
+Files: runtime/doc/if_lua.txt, src/if_lua.c, src/testdir/test_lua.mnv
+
+Patch 8.2.1067
+Problem: Expression "!expr->func()" does not work.
+Solution: Apply plus and minus earlier. (closes #6348)
+Files: src/eval.c, src/proto/eval.pro, src/evalvars.c, src/userfunc.c,
+ src/testdir/test_expr.mnv, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1068
+Problem: MNV9: no line break allowed inside a dict.
+Solution: Handle line break inside a dict in MNV9 script.
+Files: src/eval.c, src/dict.c, src/proto/dict.pro,
+ src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1069
+Problem: MNV9: fail to check for white space in list.
+Solution: Add check for white space.
+Files: src/list.c
+
+Patch 8.2.1070
+Problem: MNV9: leaking memory when lacking white space in dict.
+Solution: Clear the typval.
+Files: src/dict.c
+
+Patch 8.2.1071
+Problem: MNV9: no line break allowed inside a lambda.
+Solution: Handle line break inside a lambda in MNV9 script.
+Files: src/eval.c, src/proto/eval.pro, src/evalvars.c, src/userfunc.c,
+ src/proto/userfunc.pro, src/popupwin.c, src/mnv9compile.c,
+ src/ex_eval.c, src/globals.h, src/structs.h,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1072
+Problem: Missing libvterm test.
+Solution: Sync with libvterm revision 768.
+Files: src/libvterm/src/state.c, src/libvterm/t/63screen_resize.test
+
+Patch 8.2.1073
+Problem: MNV9: no line break allowed in () expression.
+Solution: Skip a line break.
+Files: src/eval.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1074
+Problem: MNV9: no line break allowed after some operators.
+Solution: Skip a line break after the operator. Add
+ eval_may_get_next_line() to simplify checking for a line break.
+Files: src/eval.c, src/proto/eval.pro, src/dict.c, src/list.c,
+ src/userfunc.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1075
+Problem: MNV9: no line break allowed in :echo expression.
+Solution: Skip linebreak.
+Files: src/eval.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.1076
+Problem: MNV9: no line break allowed in :if expression.
+Solution: Skip linebreak.
+Files: src/eval.c, src/proto/eval.pro, src/evalvars.c,
+ src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.1077
+Problem: No enough test coverage for highlighting.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #6351)
+Files: runtime/doc/syntax.txt, src/testdir/test_cmdline.mnv,
+ src/testdir/test_highlight.mnv, src/testdir/test_match.mnv
+
+Patch 8.2.1078
+Problem: Highlight and match functionality together in one file.
+Solution: Move match functionality to a separate file. (Yegappan Lakshmanan,
+ closes #6352)
+Files: Filelist, src/Make_cyg_ming.mak, src/Make_morph.mak,
+ src/Make_mvc.mak, src/Make_vms.mms, src/Makefile, src/README.md,
+ src/highlight.c, src/match.c, src/proto.h,
+ src/proto/highlight.pro, src/proto/match.pro
+
+Patch 8.2.1079
+Problem: MNV9: no line break allowed in a while loop.
+Solution: Update stored loop lines when finding line breaks.
+Files: src/structs.h, src/globals.h, src/eval.c, src/evalvars.c,
+ src/ex_docmd.c, src/proto/ex_docmd.pro,
+ src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.1080
+Problem: MNV9: no line break allowed in a for loop.
+Solution: Skip line breaks in for command.
+Files: src/eval.c, src/ex_eval.c, src/proto/eval.pro, src/userfunc.c,
+ src/structs.h, src/globals.h, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.1081
+Problem: Lua: cannot use table.insert() and table.remove().
+Solution: Add the list functions. (Prabir Shrestha, closes #6353)
+Files: runtime/doc/if_lua.txt, src/if_lua.c, src/testdir/test_lua.mnv
+
+Patch 8.2.1082
+Problem: Coverity complains about ignoring dict_add() return value.
+Solution: Add (void).
+Files: src/evalfunc.c
+
+Patch 8.2.1083
+Problem: Crash when using reduce() on a NULL list.
+Solution: Only access the list when not NULL.
+Files: src/list.c, src/testdir/test_listdict.mnv
+
+Patch 8.2.1084
+Problem: Lua: registering function has useless code.
+Solution: Remove clearing grow arrays.
+Files: src/userfunc.c
+
+Patch 8.2.1085
+Problem: Coverity complains about ignoring dict_add() return value.
+Solution: Add (void).
+Files: src/register.c
+
+Patch 8.2.1086
+Problem: Possibly using freed memory when text properties used when
+ changing indent of a line.
+Solution: Compute the offset before calling ml_replace().
+Files: src/indent.c
+
+Patch 8.2.1087
+Problem: Possible memory leak when file expansion fails.
+Solution: Clear the grow array when returning FAIL. Use an error message
+ instead of an empty string.
+Files: src/filepath.c
+
+Patch 8.2.1088
+Problem: A very long translation might cause a buffer overflow.
+Solution: Truncate the message if needed.
+Files: src/fileio.c
+
+Patch 8.2.1089
+Problem: Coverity warns for pointer computation.
+Solution: Avoid computing a pointer to invalid memory.
+Files: src/spellfile.c
+
+Patch 8.2.1090
+Problem: May use NULL pointer when skipping over name.
+Solution: Always set ll_name_end.
+Files: src/eval.c
+
+Patch 8.2.1091
+Problem: No check if opening a pty works.
+Solution: Check for invalid file descriptor.
+Files: src/os_unix.c
+
+Patch 8.2.1092
+Problem: Not checking if saving for undo succeeds.
+Solution: Bail out if u_savesub() returns FAIL.
+Files: src/textprop.c
+
+Patch 8.2.1093
+Problem: Python: double free when adding item to dict fails.
+Solution: Remove mnv_free() call.
+Files: src/if_py_both.h
+
+Patch 8.2.1094
+Problem: Dead code in libvterm.
+Solution: Remove condition that is always true.
+Files: src/libvterm/src/pen.c
+
+Patch 8.2.1095
+Problem: May use pointer after freeing it when text properties are used.
+Solution: Update redo buffer before calling ml_replace().
+Files: src/spellsuggest.c
+
+Patch 8.2.1096
+Problem: MNV9: return type of getqflist() is wrong.
+Solution: Let the return type depend on the arguments. Also for
+ getloclist(). (closes #6357)
+Files: src/evalfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1097
+Problem: Highlight code not sufficiently tested.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #6359)
+Files: src/testdir/test_filter_cmd.mnv, src/testdir/test_highlight.mnv
+
+Patch 8.2.1098
+Problem: MNV9: cannot use line break in :throw argument.
+Solution: Check for line break.
+Files: src/eval.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1099
+Problem: MNV9: cannot use line break in :cexpr argument.
+Solution: Check for line break.
+Files: src/eval.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1100
+Problem: MNV9: cannot use line break in :execute, :echomsg and :echoerr
+ argument.
+Solution: Check for line break.
+Files: src/eval.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1101
+Problem: No error when using wrong arguments for setqflist() or
+ setloclist().
+Solution: Check for the error.
+Files: src/quickfix.c, src/testdir/test_quickfix.mnv
+
+Patch 8.2.1102
+Problem: Coverity gets confused by an unnecessary NULL check.
+Solution: Remove the check for NULL.
+Files: src/quickfix.c
+
+Patch 8.2.1103
+Problem: Coverity reports an unnecessary NULL check.
+Solution: Remove the check for NULL.
+Files: src/eval.c
+
+Patch 8.2.1104
+Problem: Coverity warns for possible NULL pointer use.
+Solution: Check "pbyts" is not NULL.
+Files: src/spellsuggest.c
+
+Patch 8.2.1105
+Problem: Insufficient test coverage for Lua.
+Solution: Add tests. (Yegappan Lakshmanan, closes #6368) Fix uncovered
+ memory leak. Avoid unnecessary copy/free.
+Files: src/if_lua.c, src/testdir/test_lua.mnv
+
+Patch 8.2.1106
+Problem: Crash when trying to use s: variable in typed command.
+Solution: Don't use the script index when not set. (Ken Takata,
+ closes #6366)
+Files: src/mnv9compile.c, src/testdir/test_mnvscript.mnv
+
+Patch 8.2.1107
+Problem: 'imactivatefunc' and 'imstatusfunc' are not used in the GUI.
+Solution: Adjust the #ifdefs. (closes #6367)
+Files: runtime/doc/options.txt, src/gui_xim.c,
+ src/testdir/test_iminsert.mnv
+
+Patch 8.2.1108
+Problem: Mouse left-right scroll is not supported in terminal window.
+Solution: Implement mouse codes 6 and 7. (Trygve Aaberge, closes #6363)
+Files: src/libvterm/src/mouse.c, src/mouse.c, src/terminal.c,
+ src/testdir/mouse.mnv, src/testdir/test_termcodes.mnv
+
+Patch 8.2.1109 (after 8.2.1106)
+Problem: Still crashing when using s:variable.
+Solution: Remove assignment. (Ken Takata)
+Files: src/mnv9compile.c
+
+Patch 8.2.1110
+Problem: MNV9: line continuation does not work in function arguments.
+Solution: Pass "evalarg" to get_func_tv(). Fix seeing double quoted string
+ as comment.
+Files: src/userfunc.c, src/proto/userfunc.pro, src/eval.c, src/ex_eval.c,
+ src/list.c, src/dict.c, src/proto/eval.pro,
+ src/testdir/test_mnv9_expr.mnv, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1111
+Problem: Inconsistent naming of get_list_tv() and eval_dict().
+Solution: Rename get_list_tv() to eval_list(). Similarly for eval_number(),
+ eval_string(), eval_lit_string() and a few others.
+Files: src/eval.c, src/list.c, src/proto/list.pro, src/mnv9compile.c,
+ src/typval.c, src/proto/typval.pro, src/mnv9script.c,
+ src/evalfunc.c, src/evalvars.c, src/proto/evalvars.pro,
+ src/mnv9execute.c
+
+Patch 8.2.1112
+Problem: MNV9: no line continuation allowed in method call.
+Solution: Handle line continuation in expression before method call.
+Files: src/ex_docmd.c, src/testdir/test_mnv9_cmd.mnv,
+ src/testdir/test_mnv9_script.mnv,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1113
+Problem: No test for verbose output of :call.
+Solution: Add a test.
+Files: src/testdir/test_user_func.mnv
+
+Patch 8.2.1114
+Problem: Terminal test sometimes times out.
+Solution: Split the test in two parts.
+Files: src/testdir/Makefile, src/testdir/Make_all.mak,
+ src/testdir/term_util.mnv, src/testdir/test_terminal.mnv,
+ src/testdir/test_terminal2.mnv
+
+Patch 8.2.1115
+Problem: Iminsert test fails when compiled with MNVDLL.
+Solution: Change condition. (Ken Takata, closes #6376)
+Files: src/testdir/test_iminsert.mnv
+
+Patch 8.2.1116
+Problem: MNV9: parsing command checks for list twice.
+Solution: Adjust how a command is parsed.
+Files: src/ex_docmd.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.1117
+Problem: Coverity warns for using uninitialized field.
+Solution: Initialize v_lock.
+Files: src/if_lua.c
+
+Patch 8.2.1118
+Problem: Condition can never be true, dead code.
+Solution: Remove the dead code.
+Files: src/move.c
+
+Patch 8.2.1119
+Problem: Configure fails with Xcode 12 beta.
+Solution: use "return" instead of "exit()". (Nico Weber, closes #6381)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.1120
+Problem: Python code not tested properly.
+Solution: Add more tests and convert old-style test into new-style test.
+ (Yegappan Lakshmanan, closes #6370)
+Files: src/Makefile, src/testdir/Make_all.mak, src/testdir/Make_vms.mms,
+ src/testdir/test86.in, src/testdir/test86.ok,
+ src/testdir/test_python2.mnv
+
+Patch 8.2.1121
+Problem: Command completion not working after ++arg.
+Solution: Move skipping up. (Christian Brabandt, closes #6382)
+Files: src/cmdexpand.c, src/testdir/test_cmdline.mnv
+
+Patch 8.2.1122
+Problem: MNV9: line continuation in dict member not recognized.
+Solution: Check for line continuation.
+Files: src/eval.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1123
+Problem: Python 3 test is old style.
+Solution: Turn into new style test. (Yegappan Lakshmanan, closes #6385)
+Files: src/Makefile, src/testdir/Make_all.mak, src/testdir/Make_vms.mms,
+ src/testdir/test87.in, src/testdir/test87.ok,
+ src/testdir/test_python2.mnv, src/testdir/test_python3.mnv
+
+Patch 8.2.1124
+Problem: MNV9: no line break allowed in :import command.
+Solution: Skip over line breaks.
+Files: src/mnv9script.c, src/proto/mnv9script.pro, src/mnv9compile.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1125
+Problem: MNV9: double quote can be a string or a comment.
+Solution: Only support comments starting with # to avoid confusion.
+Files: src/eval.c, src/proto/eval.pro, src/dict.c, src/list.c,
+ src/mnv9script.c
+
+Patch 8.2.1126
+Problem: MNV9: using :copen causes an error.
+Solution: Add flag LET_NO_COMMAND in set_var().
+Files: src/evalvars.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1127
+Problem: MNV9: getting a dict member may not work.
+Solution: Clear the dict only after copying the item. (closes #6390)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1128
+Problem: The write message mentions characters, but it's actually bytes.
+Solution: Change "C" to "B" and "characters" to "bytes".
+Files: runtime/doc/options.txt, src/fileio.c,
+ src/testdir/test_cscope.mnv, src/testdir/test_netbeans.mnv,
+ src/testdir/dumps/Test_diff_syntax_1.dump,
+ src/testdir/dumps/Test_long_file_name_1.dump,
+ src/testdir/dumps/Test_display_unprintable_01.dump,
+ src/testdir/dumps/Test_tselect_1.dump
+
+Patch 8.2.1129
+Problem: MNV9: bar not recognized after not compiled command.
+Solution: Check for bar for commands where this is possible. (closes #6391)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.1130
+Problem: MNV9: bar not recognized after function call
+Solution: Skip whitespace. (closes #6391)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.1131
+Problem: MNV9: error message for returning a value in a function that does
+ not return anything is not clear.
+Solution: Add a specific message.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1132
+Problem: MNV9: return type of repeat() is not specific enough.
+Solution: Return the type of the first argument. (closes #6395)
+Files: src/evalfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1133
+Problem: MNV9: return type of add() is not specific enough.
+Solution: Return the type of the first argument. (closes #6395)
+Files: src/evalfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1134
+Problem: MNV9: getting a list member may not work.
+Solution: Clear the list only after copying the item. (closes #6393)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1135
+Problem: MNV9: getting a dict member may not work.
+Solution: Clear the dict only after copying the item.
+Files: src/mnv9execute.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1136
+Problem: MNV9: return type of argv() is always any.
+Solution: Use list<string> if there is no argument.
+Files: src/evalfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1137
+Problem: MNV9: modifiers not cleared after compiling function.
+Solution: Clear command modifiers. (closes #6396)
+Files: src/mnv9compile.c, src/ex_docmd.c, src/proto/ex_docmd.pro,
+ src/testdir/test_mnv9_func.mnv,
+ src/testdir/dumps/Test_mnv9_silent_echo.dump
+
+Patch 8.2.1138
+Problem: MNV9: return type of copy() and deepcopy() is any.
+Solution: Use type of the argument.
+Files: src/evalfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1139 (after 8.2.1137)
+Problem: MNV9: test for silent echo fails in some environments.
+Solution: Use :function instead of :def.
+Files: src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1140
+Problem: MNV9: return type of extend() is any.
+Solution: Use type of the argument.
+Files: src/evalfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1141
+Problem: MNV9: return type of filter() is any.
+Solution: Use type of the argument.
+Files: src/evalfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1142
+Problem: MNV9: return type of insert() is any.
+Solution: Use type of the first argument.
+Files: src/evalfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1143
+Problem: MNV9: return type of remove() is any.
+Solution: Use the member type of the first argument, if known.
+Files: src/evalfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1144
+Problem: MNV9: return type of reverse() is any.
+Solution: Use the type of the first argument.
+Files: src/evalfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1145
+Problem: MNV9: "for" only accepts a list at compile time.
+Solution: Also accept a list at runtime.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.1146
+Problem: Not enough testing for Python.
+Solution: Add more tests. Fix uncovered problems. (Yegappan Lakshmanan,
+ closes #6392)
+Files: src/if_py_both.h, src/if_python3.c, src/testdir/shared.mnv,
+ src/testdir/test_python2.mnv, src/testdir/test_python3.mnv
+
+Patch 8.2.1147
+Problem: :confirm may happen in cooked mode. (Jason Franklin)
+Solution: Switch to raw mode before prompting. (Brandon Pfeifer)
+Files: src/message.c, src/testdir/test_excmd.mnv
+
+Patch 8.2.1148
+Problem: Warning for using int instead of size_t.
+Solution: Change "len" argument to size_t. (Mike Williams)
+Files: src/mnv9compile.c, src/proto/mnv9compile.pro, src/mnv9script.c
+
+Patch 8.2.1149
+Problem: MNV9: :eval command not handled properly.
+Solution: Compile the :eval command. (closes #6408)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.1150
+Problem: ml_get error when using Python. (Yegappan Lakshmanan)
+Solution: Check the line number is not out of range. Call "Check" with
+ "fromObj" instead of "from".
+Files: src/if_py_both.h, src/testdir/test_python2.mnv,
+ src/testdir/test_python3.mnv
+
+Patch 8.2.1151
+Problem: Insufficient test coverage for Python.
+Solution: Add more test cases. (Yegappan Lakshmanan, closes #6415)
+Files: src/testdir/test_python2.mnv, src/testdir/test_python3.mnv
+
+Patch 8.2.1152
+Problem: MNV9: function reference is missing script prefix.
+Solution: Use the actual function name instead of the name searched for in
+ the script context. (closes #6412)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1153
+Problem: MNV9: script test fails on some systems.
+Solution: Return proper value from Compare().
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1154
+Problem: MNV9: crash when using imported function.
+Solution: Check for a function type. Set the script context when calling a
+ function. (closes #6412)
+Files: src/evalvars.c, src/scriptfile.c, src/proto/scriptfile.pro,
+ src/mnv9execute.c, src/structs.h, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1155
+Problem: MNV9: cannot handle line break inside lambda.
+Solution: Pass the compilation context through. (closes #6407, closes #6409)
+Files: src/structs.h, src/mnv9compile.c, src/proto/mnv9compile.pro,
+ src/eval.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1156
+Problem: MNV9: No error for invalid command in compiled function.
+Solution: Handle CMD_SIZE.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1157
+Problem: MNV9: dict.name is not recognized as an expression.
+Solution: Recognize ".name". (closes #6418)
+Files: src/ex_docmd.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.1158 (after 8.2.1155)
+Problem: Build error.
+Solution: Add missing change to globals.
+Files: src/globals.h
+
+Patch 8.2.1159
+Problem: MNV9: no error for missing space after a comma.
+Solution: Check for white space.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1160
+Problem: MNV9: memory leak in allocated types.
+Solution: Free the type pointers.
+Files: src/mnv9script.c, src/userfunc.c, src/mnv9compile.c,
+ src/proto/mnv9compile.pro
+
+Patch 8.2.1161
+Problem: MNV9: using freed memory.
+Solution: Put pointer back in evalarg instead of freeing it.
+Files: src/userfunc.c, src/mnv9compile.c, src/eval.c, src/proto/eval.pro,
+ src/structs.h
+
+Patch 8.2.1162
+Problem: Crash when using a lambda.
+Solution: Check for evalarg to be NULL.
+Files: src/userfunc.c
+
+Patch 8.2.1163 (after 8.2.1161)
+Problem: Build error.
+Solution: Add missing change to globals.
+Files: src/globals.h
+
+Patch 8.2.1164
+Problem: Text cleared by checking terminal properties not redrawn. (Alexey
+ Radkov)
+Solution: Mark the screen characters as invalid. (closes #6422)
+Files: src/screen.c, src/proto/screen.pro, src/term.c
+
+Patch 8.2.1165
+Problem: Insufficient testing for the Tcl interface.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #6423)
+Files: src/testdir/test_tcl.mnv
+
+Patch 8.2.1166
+Problem: Once mouse move events are enabled getchar() returns them.
+Solution: Ignore K_MOUSEMOVE in getchar(). (closes #6424)
+Files: runtime/doc/eval.txt, src/getchar.c
+
+Patch 8.2.1167
+Problem: MNV9: builtin function method call only supports first argument.
+Solution: Shift arguments when needed. (closes #6305, closes #6419)
+Files: src/evalfunc.c, src/mnv9compile.c, src/mnv9execute.c,
+ src/mnv9.h, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.1168
+Problem: Wrong method argument for appendbufline().
+Solution: Use FEARG_3.
+Files: src/evalfunc.c
+
+Patch 8.2.1169
+Problem: Write NUL past allocated space using corrupted spell file.
+ (Markus Vervier)
+Solution: Init "c" every time.
+Files: src/spellfile.c
+
+Patch 8.2.1170
+Problem: Cursor off by one with block paste while 'virtualedit' is "all".
+Solution: Adjust condition. (Hugo Gualandi, closes #6430)
+Files: src/register.c, src/testdir/test_registers.mnv
+
+Patch 8.2.1171
+Problem: Possible crash when out of memory.
+Solution: Check for NULL pointer. (Dominique Pellé, closes #6432)
+Files: src/syntax.c
+
+Patch 8.2.1172
+Problem: Error messages when doing "make clean" in the runtime/doc or
+ src/tee directories.
+Solution: Use "rm -f".
+Files: runtime/doc/Makefile, src/tee/Makefile
+
+Patch 8.2.1173
+Problem: Tee doesn't build on some systems.
+Solution: Include header files. (Dominique Pelle, closes #6431)
+Files: src/tee/tee.c
+
+Patch 8.2.1174
+Problem: No test for the "recording @x" message.
+Solution: Add a test. (Dominique Pellé, closes #6427)
+Files: src/testdir/test_registers.mnv
+
+Patch 8.2.1175
+Problem: MNV9: Cannot split a line before ".member".
+Solution: Check for ".member" after line break.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1176
+Problem: MNV9: not enough type checking in MNV9 script.
+Solution: Use same type checking as in a :def function.
+Files: src/mnv9compile.c, src/proto/mnv9compile.pro,
+ src/eval.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1177
+Problem: Terminal2 test sometimes hangs in the GUI.
+Solution: Move some tests to other files to further locate the problem.
+ Set the GUI to a fixed screen size.
+Files: src/testdir/test_terminal.mnv, src/testdir/test_terminal2.mnv,
+ src/testdir/test_terminal3.mnv, src/testdir/Make_all.mak,
+ src/testdir/runtest.mnv
+
+Patch 8.2.1178
+Problem: MNV9: filter function recognized as command modifier, leading to a
+ crash.
+Solution: Clear cmdmod after freeing items. Do not recognize a command
+ modifier followed by non-white space. (closes #6434)
+Files: src/ex_docmd.c, src/mnv9compile.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.1179
+Problem: Test_termwinscroll() sometimes hangs in the GUI.
+Solution: Skip the test in the GUI.
+Files: src/testdir/test_terminal2.mnv
+
+Patch 8.2.1180
+Problem: Build failure in small version.
+Solution: Add #ifdef.
+Files: src/ex_docmd.c
+
+Patch 8.2.1181
+Problem: Json code not fully tested.
+Solution: Add more test coverage. (Dominique Pellé, closes #6433)
+Files: src/testdir/test_json.mnv
+
+Patch 8.2.1182
+Problem: MNV9: no check for whitespace after comma in lambda.
+Solution: Give error if white space is missing.
+Files: src/userfunc.c, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1183
+Problem: assert_fails() checks the last error message.
+Solution: Check the first error, it is more relevant. Fix all the tests
+ that rely on the old behavior.
+Files: runtime/doc/testing.txt, src/message.c, src/globals.h,
+ src/testing.c, src/testdir/test_autocmd.mnv,
+ src/testdir/test_buffer.mnv, src/testdir/test_cd.mnv,
+ src/testdir/test_channel.mnv, src/testdir/test_clientserver.mnv,
+ src/testdir/test_cmdline.mnv, src/testdir/test_cpoptions.mnv,
+ src/testdir/test_cscope.mnv, src/if_cscope.c,
+ src/testdir/test_excmd.mnv, src/evalvars.c,
+ src/testdir/test_expr.mnv, src/testdir/test_functions.mnv,
+ src/testdir/test_json.mnv, src/testdir/test_let.mnv,
+ src/testdir/test_listdict.mnv, src/testdir/test_listener.mnv,
+ src/testdir/test_match.mnv, src/testdir/test_menu.mnv,
+ src/testdir/test_method.mnv, src/testdir/test_normal.mnv,
+ src/testdir/test_popup.mnv, src/testdir/test_python2.mnv,
+ src/testdir/test_python3.mnv, src/testdir/test_quickfix.mnv,
+ src/testdir/test_random.mnv, src/testdir/test_search.mnv,
+ src/testdir/test_signs.mnv, src/testdir/test_spell.mnv,
+ src/testdir/test_substitute.mnv, src/testdir/test_syntax.mnv,
+ src/testdir/test_tagjump.mnv, src/testdir/test_taglist.mnv,
+ src/testdir/test_terminal.mnv, src/testdir/test_textprop.mnv,
+ src/testdir/test_trycatch.mnv,
+ src/testdir/test_mnv9_disassemble.mnv,
+ src/testdir/test_mnv9_func.mnv, src/mnv9compile.c,
+ src/testdir/test_mnv9_script.mnv, src/testdir/test_mnvinfo.mnv,
+ src/testdir/test_winbuf_close.mnv,
+ src/testdir/test_window_cmd.mnv, src/testdir/test_writefile.mnv,
+ src/testdir/test_regexp_latin.mnv, src/testdir/test_utf8.mnv,
+ src/testdir/test_global.mnv, src/testdir/test_tagfunc.mnv
+
+Patch 8.2.1184 (after 8.2.1183)
+Problem: Some tests fail.
+Solution: Adjust tests for different assert_fails() behavior. Remove unused
+ variable.
+Files: src/testdir/test_assert.mnv, src/testdir/test_eval_stuff.mnv,
+ src/evalvars.c
+
+Patch 8.2.1185 (after 8.2.1183)
+Problem: Some other tests fail.
+Solution: Adjust tests for different assert_fails() behavior.
+Files: src/testdir/test_lua.mnv, src/testdir/test_tcl.mnv
+
+Patch 8.2.1186
+Problem: With SGR mouse codes balloon doesn't show up after click.
+Solution: Add the MOUSE_RELEASE bits to mouse_code.
+Files: src/mouse.c
+
+Patch 8.2.1187
+Problem: Terminal2 test sometimes hangs in the GUI on Travis.
+Solution: Disable Test_zz2_terminal_guioptions_bang() for now.
+Files: src/testdir/test_terminal2.mnv
+
+Patch 8.2.1188
+Problem: Memory leak with invalid json input.
+Solution: Free all keys at the end. (Dominique Pellé, closes #6443,
+ closes #6442)
+Files: src/json.c, src/testdir/test_json.mnv
+
+Patch 8.2.1189
+Problem: MNV9: line continuation in lambda doesn't always work.
+Solution: Do not use a local evalarg unless there isn't one. (closes #6439)
+Files: src/eval.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1190
+Problem: MNV9: checking for MNV9 syntax is spread out.
+Solution: Use in_mnv9script().
+Files: src/mnv9script.c, src/dict.c, src/eval.c, src/evalvars.c,
+ src/ex_docmd.c, src/list.c, src/scriptfile.c, src/userfunc.c
+
+Patch 8.2.1191
+Problem: MNV9: crash when function calls itself.
+Solution: Add status UF_COMPILING. (closes #6441)
+Files: src/structs.h, src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1192
+Problem: Lua test fails with older Lua version.
+Solution: Adjust expected error messages. (closes #6444)
+Files: src/testdir/test_lua.mnv
+
+Patch 8.2.1193
+Problem: Terminal window not redrawn when dragging a popup window over it.
+Solution: Redraw terminal window. (fixes #6438)
+Files: src/popupwin.c, src/testdir/test_popupwin.mnv,
+ src/testdir/dumps/Test_popupwin_term_01.dump,
+ src/testdir/dumps/Test_popupwin_term_02.dump
+
+Patch 8.2.1194
+Problem: Test failure because shell prompt differs.
+Solution: Set the shell prompt.
+Files: src/testdir/test_popupwin.mnv,
+ src/testdir/dumps/Test_popupwin_term_01.dump,
+ src/testdir/dumps/Test_popupwin_term_02.dump
+
+Patch 8.2.1195
+Problem: Clientserver test fails on MS-Windows.
+Solution: Expect a different error message.
+Files: src/testdir/test_clientserver.mnv
+
+Patch 8.2.1196
+Problem: Build failure with normal features.
+Solution: Add #ifdef.
+Files: src/popupwin.c
+
+Patch 8.2.1197
+Problem: Clientserver test still fails on MS-Windows.
+Solution: Expect a different error message.
+Files: src/testdir/test_clientserver.mnv
+
+Patch 8.2.1198
+Problem: Terminal2 test sometimes hangs in the GUI on Travis.
+Solution: Move test function to terminal3 to see if the problem moves too.
+Files: src/testdir/test_terminal2.mnv, src/testdir/test_terminal3.mnv
+
+Patch 8.2.1199
+Problem: Not all assert functions are fully tested.
+Solution: Test more assert functions.
+Files: src/testing.c, src/testdir/test_assert.mnv
+
+Patch 8.2.1200
+Problem: MNV9: cannot disassemble a lambda function.
+Solution: Recognize "<lambda>123" as a function name.
+Files: src/mnv9execute.c, src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.1201
+Problem: MNV9: crash when passing number as dict key.
+Solution: Check key type to be string. (closes #6449)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1202
+Problem: MNV9: crash when calling a closure from a builtin function.
+Solution: Use the current execution context. (closes #6441)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1203
+Problem: Unused assignments in expression evaluation.
+Solution: Move declarations and assignments to inner blocks where possible.
+Files: src/eval.c
+
+Patch 8.2.1204
+Problem: MNV9: true and false not recognized in MNV9 script.
+Solution: Recognize true and false.
+Files: src/eval.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1205
+Problem: MNV9: && and || work differently when not compiled.
+Solution: Keep the value.
+Files: src/eval.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1206
+Problem: MNV9: crash in expr test when run in the GUI.
+Solution: Temporarily comment out two test lines.
+Files: src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1207
+Problem: MNV9: crash in expr test when run in the GUI.
+Solution: Break out of loop over hashtab also when function got removed and
+ added.
+Files: src/userfunc.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1208
+Problem: Build failure.
+Solution: Add missing change.
+Files: src/structs.h
+
+Patch 8.2.1209
+Problem: MNV9: test failure.
+Solution: Add missing changes to hashtab.
+Files: src/hashtab.c
+
+Patch 8.2.1210
+Problem: Using ht_used when looping through a hashtab is less reliable.
+Solution: Use ht_changed in a few more places.
+Files: src/userfunc.c, src/if_py_both.h
+
+Patch 8.2.1211 (after 8.2.1118)
+Problem: Removed more than dead code.
+Solution: Put back the decrement.
+Files: src/move.c, src/testdir/test_diffmode.mnv
+
+Patch 8.2.1212
+Problem: Cannot build with Lua 5.4.
+Solution: Use luaL_typeerror instead defining it. (closes #6454)
+Files: src/if_lua.c
+
+Patch 8.2.1213
+Problem: Mouse codes not tested sufficiently.
+Solution: Add more tests for mouse codes. (closes #6436)
+Files: src/testdir/test_termcodes.mnv
+
+Patch 8.2.1214
+Problem: MS-Windows: default _mnvrc not correct in silent install mode.
+Solution: Add the LoadDefaultMNVrc macro. (Ken Takata, closes #6451)
+Files: nsis/gmnv.nsi
+
+Patch 8.2.1215
+Problem: Atari MiNT support is outdated.
+Solution: Nobody responded this code is still useful, so let's delete it.
+Files: Filelist, src/os_mint.h, src/mnv.h, src/Make_mint.mak,
+ src/digraph.c, src/fileio.c, src/memfile.c, src/os_unix.c,
+ src/term.c, READMEdir/README_extra.txt, runtime/doc/os_mint.txt,
+ src/INSTALL
+
+Patch 8.2.1216
+Problem: Startup test fails.
+Solution: Adjust expected values for deleted lines.
+Files: src/testdir/test_startup.mnv
+
+Patch 8.2.1217
+Problem: Startup test depends on random source file.
+Solution: Write a test file to find quickfix errors in.
+Files: src/testdir/test_startup.mnv
+
+Patch 8.2.1218
+Problem: MNV9: cannot use 'text'->func().
+Solution: Recognize string at start of command.
+Files: src/mnv9compile.c, src/ex_docmd.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1219
+Problem: Symlink not followed if dirname ends in //.
+Solution: Resolve symlink earlier. (Tomáš Janoušek, closes #6454)
+Files: src/memline.c, src/testdir/test_swap.mnv
+
+Patch 8.2.1220
+Problem: memory access error when dragging a popup window over a buffer
+ with folding.
+Solution: Avoid going over the end of the cache. (closes #6438)
+Files: src/mouse.c, src/testdir/test_popupwin.mnv,
+ src/testdir/dumps/Test_popupwin_term_01.dump,
+ src/testdir/dumps/Test_popupwin_term_02.dump,
+ src/testdir/dumps/Test_popupwin_term_03.dump,
+ src/testdir/dumps/Test_popupwin_term_04.dump
+
+Patch 8.2.1221
+Problem: Memory leak when updating popup window.
+Solution: Clear search highlighting.
+Files: src/popupwin.c
+
+Patch 8.2.1222
+Problem: When using valgrind a MNV command started by a test uses the same
+ log file name which gets overwritten.
+Solution: Fix regexp to rename the log file.
+Files: src/testdir/shared.mnv
+
+Patch 8.2.1223
+Problem: MNV9: invalid type error for function default value.
+Solution: Use right argument index. (closes #6458)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1224
+Problem: MNV9: arguments from partial are not used.
+Solution: Put the partial arguments on the stack. (closes #6460)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1225
+Problem: Linker errors when building with dynamic Python 3.9.
+Solution: Add #defined items. (closes #6461)
+Files: src/if_python3.c
+
+Patch 8.2.1226
+Problem: MS-Windows: windows positioning wrong when the taskbar is placed
+ at the top or left of the screen.
+Solution: Use GetWindowRect and MoveWindow APIs. (Yukihiro Nakadaira,
+ Ken Takata, closes #6455)
+Files: src/gui_w32.c
+
+Patch 8.2.1227
+Problem: MNV9: allowing both quoted and # comments is confusing.
+Solution: Only support # comments in MNV9 script.
+Files: runtime/doc/mnv9.txt, src/ex_docmd.c, src/proto/ex_docmd.pro,
+ src/mnv9compile.c, src/testdir/test_mnv9_disassemble.mnv,
+ src/testdir/test_mnv9_expr.mnv, src/testdir/test_mnv9_func.mnv,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1228
+Problem: Scrollbars not flush against the window edges when maximised.
+Solution: Add padding. (Ken Takata, closes #5602, closes #6466)
+Files: src/gui.c, src/gui_athena.c, src/gui_gtk.c, src/gui_haiku.cc,
+ src/gui_mac.c, src/gui_motif.c, src/gui_photon.c, src/gui_w32.c,
+ src/proto/gui_athena.pro, src/proto/gui_gtk.pro,
+ src/proto/gui_haiku.pro, src/proto/gui_mac.pro,
+ src/proto/gui_motif.pro, src/proto/gui_photon.pro,
+ src/proto/gui_w32.pro
+
+Patch 8.2.1229
+Problem: Build error without the eval feature.
+Solution: Declare starts_with_colon. Make function local.
+Files: src/ex_docmd.c, src/proto/ex_docmd.pro
+
+Patch 8.2.1230
+Problem: MNV9: list index error not caught by try/catch.
+Solution: Do not bail out if an error is inside try/catch. (closes #6462)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1231
+Problem: MS-Windows: GUI code can be cleaned up.
+Solution: Do a bit of cleaning up. (Ken Takata, closes #6465)
+Files: src/gui_w32.c, src/proto/gui_w32.pro
+
+Patch 8.2.1232
+Problem: MS-Windows GUI: Snap cancelled by split command.
+Solution: Do not cancel Snap when splitting a window. (Ken Takata,
+ closes #6467)
+Files: src/gui_w32.c
+
+Patch 8.2.1233
+Problem: MNV9: various errors not caught by try/catch.
+Solution: Do not bail out if an error is inside try/catch.
+Files: src/mnv9execute.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1234
+Problem: Lua build problem with old compiler.
+Solution: Move declarations to start of the block. (Taro Muraoka,
+ closes #6477)
+Files: src/if_lua.c
+
+Patch 8.2.1235
+Problem: Not all mouse codes covered by tests.
+Solution: Add more tests for the mouse. (Yegappan Lakshmanan, closes #6472)
+Files: src/testdir/mouse.mnv, src/testdir/test_termcodes.mnv
+
+Patch 8.2.1236
+Problem: MNV9: a few errors not caught by try/catch.
+Solution: Do not bail out if an error is inside try/catch. Fix that a not
+ matching catch doesn't jump to :endtry.
+Files: src/mnv9compile.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1237
+Problem: Changing 'completepopup' after opening a popup has no effect. (Jay
+ Sitter)
+Solution: Close the popup when the options are changed. (closes #6471)
+Files: runtime/doc/options.txt, src/popupwin.c, src/proto/popupwin.pro,
+ src/optionstr.c, src/testdir/test_popupwin.mnv,
+ src/testdir/dumps/Test_popupwin_infopopup_8.dump
+
+Patch 8.2.1238
+Problem: MNV9: a few remaining errors not caught by try/catch.
+Solution: Do not bail out if an error is inside try/catch.
+Files: src/mnv9execute.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1239
+Problem: "maxwidth" in 'completepopup' not obeyed. (Jay Sitter)
+Solution: Add separate field for value from option. (closes #6470)
+Files: src/structs.h, src/popupwin.c, src/popupmenu.c,
+ src/testdir/dumps/Test_popupwin_infopopup_9.dump
+
+Patch 8.2.1240
+Problem: GUI tests sometimes fail because of translations.
+Solution: Reload the menus without translation. (Taro Muraoka, closes #6486)
+Files: src/testdir/runtest.mnv
+
+Patch 8.2.1241
+Problem: Cannot use getbufinfo() as a method.
+Solution: Support using getbufinfo() as a method. (closes #6458)
+Files: runtime/doc/eval.txt, src/evalfunc.c,
+ src/testdir/test_bufwintabinfo.mnv
+
+Patch 8.2.1242
+Problem: MNV9: no error if calling a function with wrong argument type.
+Solution: Check types of arguments. (closes #6469)
+Files: src/mnv9compile.c, src/proto/mnv9compile.pro, src/mnv9execute.c,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1243
+Problem: MNV9: cannot have a comment or empty line halfway a list at script
+ level.
+Solution: Skip more than one line if needed.
+Files: src/mnv9compile.c, src/proto/mnv9compile.pro, src/eval.c,
+ src/scriptfile.c
+
+Patch 8.2.1244
+Problem: MNV9: in lambda index assumes a list.
+Solution: Use the value type to decide about list or dict. (closes #6479)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1245
+Problem: Build failure in tiny version.
+Solution: Add #ifdef.
+Files: src/scriptfile.c
+
+Patch 8.2.1246
+Problem: MNV9: comment after assignment doesn't work.
+Solution: Skip over white space. (closes #6481)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1247
+Problem: MNV9: cannot index a character in a string.
+Solution: Add ISN_STRINDEX instruction. (closes #6478)
+Files: src/mnv9.h, src/mnv9compile.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1248
+Problem: Netbeans test is flaky in the GUI.
+Solution: Filter out geometry messages. (Taro Muraoka, closes #6487)
+Files: src/testdir/test_netbeans.mnv
+
+Patch 8.2.1249
+Problem: MNV9: disassemble test fails.
+Solution: Change INDEX to LISTINDEX. Add test for STRINDEX.
+Files: src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.1250
+Problem: MNV9: cannot use the g:, b:, t: and w: namespaces.
+Solution: Add instructions to push a dict for the namespaces. (closes #6480)
+Files: src/mnv9.h, src/mnv9compile.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_disassemble.mnv,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1251
+Problem: MNV9: warning for pointer usage, test failure undetected.
+Solution: Fix pointer indirection. Give error when executing function
+ failed for any reason. Fix instruction names.
+Files: src/mnv9execute.c, src/userfunc.c, src/proto/userfunc.pro
+
+Patch 8.2.1252
+Problem: ":marks" may show '< and '> mixed up.
+Solution: Show the mark position as where '< and '> would jump.
+Files: src/mark.c, src/testdir/test_marks.mnv
+
+Patch 8.2.1253
+Problem: CTRL-K in Insert mode gets <CursorHold> inserted. (Roland
+ Puntaier)
+Solution: Do not reset did_cursorhold, restore it. (closes #6447)
+Files: src/normal.c
+
+Patch 8.2.1254
+Problem: MS-Windows: regexp test may fail if 'iskeyword' set wrongly.
+Solution: Override the 'iskeyword' value. (Taro Muraoka, closes #6502)
+Files: src/testdir/test_regexp_utf8.mnv
+
+Patch 8.2.1255
+Problem: Cannot use a lambda with quickfix functions.
+Solution: Add support for lambda. (Yegappan Lakshmanan, closes #6499)
+Files: runtime/doc/eval.txt, runtime/doc/options.txt,
+ runtime/doc/quickfix.txt, src/channel.c, src/evalvars.c,
+ src/optionstr.c, src/proto/evalvars.pro, src/proto/quickfix.pro,
+ src/quickfix.c, src/testdir/test_quickfix.mnv
+
+Patch 8.2.1256
+Problem: MNV9: type wrong after getting dict item in lambda.
+Solution: Set the type to "any" after enforcing dict type. (closes #6491)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1257
+Problem: MNV9: list unpack doesn't work at the script level.
+Solution: Detect unpack assignment better. (closes #6494)
+Files: src/ex_docmd.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1258 (after 8.2.1253)
+Problem: CursorHold does not work well.a (Shane-XB-Qian)
+Solution: Only restore did_cursorhold when using :normal.
+Files: src/normal.c
+
+Patch 8.2.1259
+Problem: Empty group in 'tabline' may cause using an invalid pointer.
+Solution: Set the group start position. (closes #6505)
+Files: src/buffer.c, src/testdir/test_tabline.mnv
+
+Patch 8.2.1260
+Problem: There is no good test for CursorHold.
+Solution: Add a test. Remove duplicated test. (Yegappan Lakshmanan,
+ closes #6503)
+Files: src/testdir/test_autocmd.mnv, src/testdir/test_buffer.mnv,
+ src/testdir/test_normal.mnv
+
+Patch 8.2.1261
+Problem: MNV9: common type of function not tested.
+Solution: Add a test. Fix uncovered problems.
+Files: src/mnv9compile.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1262
+Problem: src/ex_cmds.c file is too big.
+Solution: Move help related code to src/help.c. (Yegappan Lakshmanan,
+ closes #6506)
+Files: Filelist, src/Make_cyg_ming.mak, src/Make_morph.mak,
+ src/Make_mvc.mak, src/Make_vms.mms, src/Makefile, src/README.md,
+ src/cmdexpand.c, src/ex_cmds.c, src/help.c, src/proto.h,
+ src/proto/ex_cmds.pro, src/proto/help.pro
+
+Patch 8.2.1263
+Problem: MNV9: comparators use 'ignorecase' in MNV9 script.
+Solution: Ignore 'ignorecase'. Use true and false instead of 1 and 0.
+ (closes #6497)
+Files: src/eval.c, src/typval.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1264
+Problem: Terminal getwinpos() test is a bit flaky.
+Solution: Call getwinpos() a bit later.
+Files: src/testdir/test_terminal3.mnv
+
+Patch 8.2.1265
+Problem: Crash with EXITFREE when split() fails.
+Solution: Restore 'cpoptions'.
+Files: src/evalfunc.c
+
+Patch 8.2.1266 (after 8.2.1262)
+Problem: Makefile preference were accidentally included.
+Solution: Revert the Makefile changes.
+Files: src/Makefile
+
+Patch 8.2.1267
+Problem: MS-Windows: tests may fail due to $PROMPT value.
+Solution: Set $PROMPT for testing. (Taro Muraoka, closes #6510)
+Files: src/testdir/runtest/mnv
+
+Patch 8.2.1268
+Problem: MNV9: no error for using double quote comment after :func or :def.
+Solution: Only accept double quote when not in MNV9 script and not after
+ :def. (closes #6483)
+Files: src/userfunc.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1269
+Problem: Language and locale code spread out.
+Solution: Move relevant code to src/locale.c. (Yegappan Lakshmanan,
+ closes #6509)
+Files: Filelist, src/Make_cyg_ming.mak, src/Make_morph.mak,
+ src/Make_mvc.mak, src/Make_vms.mms, src/Makefile, src/README.md,
+ src/ex_cmds2.c, src/locale.c, src/main.c, src/proto.h,
+ src/proto/ex_cmds2.pro, src/proto/locale.pro
+
+Patch 8.2.1270
+Problem: MNV9: not skipping over function type declaration with only a
+ return type.
+Solution: Skip over the return type. (issue #6507)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1271
+Problem: MNV9: Error for Funcref function argument type.
+Solution: Find the actual function type if possible. (issue #6507)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1272
+Problem: MNV9: type not checked if declaration also assigns value.
+Solution: Check the type. (issue #6507)
+Files: src/eval.c, src/mnv9compile.c, src/proto/mnv9compile.pro,
+ src/mnv9script.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1273
+Problem: MS-Windows: terminal test may leave file behind.
+Solution: Wait a moment for process to end before deleting the file.
+ (Taro Muraoka, closes #6513)
+Files: src/testdir/test_terminal.mnv
+
+Patch 8.2.1274
+Problem: MNV9: no error for missing white space in assignment at script
+ level.
+Solution: Check for white space. (closes #6495)
+Files: src/eval.c, src/evalvars.c, src/testdir/test_mnv9_script.mnv,
+ src/testdir/test_let.mnv
+
+Patch 8.2.1275
+Problem: MNV9: compiler warning for buffer size.
+Solution: Change the offset from 10 to 15. (Dominique Pellé, closes #6518)
+Files: src/mnv9script.c
+
+Patch 8.2.1276
+Problem: MS-Windows: system test may fail if more.exe is installed.
+Solution: Explicitly use more.com. (Taro Muraoka, Ken Takata, closes #6517)
+Files: src/testdir/test_system.mnv
+
+Patch 8.2.1277
+Problem: Tests on Travis do not run with EXITFREE.
+Solution: Add EXITFREE to all builds to uncover any mistakes.
+Files: .travis.yml
+
+Patch 8.2.1278
+Problem: MNV9: line break after "->" only allowed in :def function.
+Solution: Only allow line break after "->". (closes #6492)
+Files: src/mnv9compile.c, src/globals.h, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1279
+Problem: Some tests on Travis have EXITFREE duplicated.
+Solution: Remove EXITFREE from shadowopt. Add "shadow" to job name.
+Files: .travis.yml
+
+Patch 8.2.1280
+Problem: Ex command error cannot contain an argument.
+Solution: Add ex_errmsg() and translate earlier. Use e_trailing_arg where
+ possible.
+Files: src/ex_docmd.c, src/proto/ex_docmd.pro, src/buffer.c,
+ src/ex_eval.c, src/match.c, src/testdir/test_tabpage.mnv
+
+Patch 8.2.1281
+Problem: The "trailing characters" error can be hard to understand.
+Solution: Add the trailing characters to the message.
+Files: src/cmdhist.c, src/eval.c, src/evalfunc.c, src/evalvars.c,
+ src/ex_cmds.c, src/ex_docmd.c, src/ex_eval.c, src/json.c,
+ src/menu.c, src/quickfix.c, src/sign.c, src/userfunc.c
+
+Patch 8.2.1282
+Problem: MNV9: crash when using CheckScriptFailure() in
+ Test_mnv9script_call_fail_decl().
+Solution: Do not decrement the def_functions len unless the function was
+ newly added.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1283
+Problem: MNV9: error for misplaced -> lacks argument.
+Solution: Use the pointer before it was advanced.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1284
+Problem: MNV9: skipping over type includes following white space, leading
+ to an error for missing white space.
+Solution: Do not skip over white space after the type.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1285
+Problem: MNV9: argument types are not checked on assignment.
+Solution: Check function argument types. (issue #6507)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1286
+Problem: MNV9: No error when using a type on a window variable
+Solution: Recognize the syntax and give an error. (closes #6521)
+Files: src/ex_docmd.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1287
+Problem: MNV9: crash when using an imported function.
+Solution: Add the function type to the imported entry. (closes #6522)
+Files: src/mnv9script.c, src/mnv9compile.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1288
+Problem: MNV9: cannot use mark in range.
+Solution: Use the flag that a colon was seen. (closes #6528)
+Files: src/ex_docmd.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1289
+Problem: Crash when using a custom completion function.
+Solution: Initialize all of the expand_T. (closes #6532)
+Files: src/cmdexpand.c
+
+Patch 8.2.1290
+Problem: MNV9: cannot replace a global function.
+Solution: Allow for "!" on a global function. (closes #6524) Also fix that
+ :delfunc on a :def function only made it empty.
+Files: src/userfunc.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1291
+Problem: MNV9: type of varargs items is not checked.
+Solution: Check the list item types. (closes #6523)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1292
+Problem: AIDL filetype not recognized.
+Solution: Add filetype detection. (Dominique Pellé, closes #6533)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.1293
+Problem: MNV9: :execute mixes up () expression and function call.
+Solution: Do not skip white space when looking for the "(". (closes #6531)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1294
+Problem: MNV9: error when using mnv9script in TextYankPost.
+Solution: Use EX_LOCKOK instead of the EX_CMDWIN flag for command that can
+ be used when text is locked. (closes #6529)
+Files: src/ex_cmds.h, src/ex_docmd.c
+
+Patch 8.2.1295
+Problem: Tests 44 and 99 are old style.
+Solution: Convert to new style tests. (Yegappan Lakshmanan, closes #6536)
+Files: src/Makefile, src/testdir/Make_all.mak, src/testdir/Make_vms.mms,
+ src/testdir/test44.in, src/testdir/test44.ok,
+ src/testdir/test99.in, src/testdir/test99.ok,
+ src/testdir/test_regexp_utf8.mnv
+
+Patch 8.2.1296
+Problem: Some part of using 'smartcase' was not tested.
+Solution: Add more tests. (Dominique Pellé, closes #6538)
+Files: src/testdir/test_search.mnv
+
+Patch 8.2.1297
+Problem: When a test fails it's often not easy to see what the call stack
+ is.
+Solution: Add more entries from the call stack in the exception message.
+Files: runtime/doc/cmdline.txt, src/scriptfile.c,
+ src/proto/scriptfile.pro, src/debugger.c, src/ex_docmd.c,
+ src/ex_eval.c, src/message.c, src/testing.c,
+ src/testdir/test_expand_func.mnv
+
+Patch 8.2.1298
+Problem: Compiler warning for unused argument in small version.
+Solution: Add UNUSED.
+Files: src/scriptfile.c
+
+Patch 8.2.1299
+Problem: Compiler warning for using size_t for int and void pointer.
+Solution: Add type casts.
+Files: src/scriptfile.c
+
+Patch 8.2.1300
+Problem: MNV9: optional argument type not parsed properly.
+Solution: Skip over the "?". (issue #6507)
+Files: src/mnv9compile.c, src/proto/mnv9compile.pro, src/evalvars.c,
+ src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1301
+Problem: MNV9: varargs argument type not parsed properly.
+Solution: Skip over the "...". (issue #6507)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1302
+Problem: MNV9: varargs arg after optional arg does not work
+Solution: Check for the "..." first. (issue #6507)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1303
+Problem: Calling popup_setoptions() resets 'signcolumn'.
+Solution: Only set 'signcolumn' when creating the popup. (closes #6542)
+Files: src/popupwin.c, src/testdir/test_popupwin.mnv
+
+Patch 8.2.1304
+Problem: Debug backtrace isn't tested much.
+Solution: Add more specific tests. (Ben Jackson, closes #6540)
+Files: src/testdir/runtest.mnv, src/testdir/test_debugger.mnv
+
+Patch 8.2.1305
+Problem: Some tests are still old style.
+Solution: Convert tests 52 and 70 to new style. (Yegappan Lakshmanan,
+ closes #6544) Fix error in FinishTesting().
+Files: src/testdir/runtest.mnv, src/Makefile, src/testdir/Make_all.mak,
+ src/testdir/Make_amiga.mak, src/testdir/Make_vms.mms,
+ src/testdir/test52.in, src/testdir/test52.ok,
+ src/testdir/test70.in, src/testdir/test70.ok,
+ src/testdir/test_mzscheme.mnv, src/testdir/test_writefile.mnv
+
+Patch 8.2.1306
+Problem: Checking for first character of dict key is inconsistent.
+Solution: Add eval_isdictc(). (closes #6546)
+Files: src/eval.c, src/proto/eval.pro, src/mnv9compile.c,
+ src/testdir/test_listdict.mnv, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_let.mnv
+
+Patch 8.2.1307
+Problem: popup window width does not include number, fold of sign column
+ width.
+Solution: Take number, fold and sign column with into account.
+Files: src/popupwin.c, src/testdir/test_popupwin.mnv,
+ src/testdir/dumps/Test_popupwin_sign_2.dump
+
+Patch 8.2.1308
+Problem: MNV9: accidentally using "x" causes MNV to exit.
+Solution: Disallow using ":x" or "xit" in MNV9 script. (closes #6399)
+Files: runtime/doc/mnv9.txt, src/mnv9compile.c, src/mnv9script.c,
+ src/proto/mnv9script.pro, src/ex_docmd.c, src/ex_cmds.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1309
+Problem: Build failure with tiny version.
+Solution: Add #ifdef.
+Files: src/ex_cmds.c, src/ex_docmd.c
+
+Patch 8.2.1310
+Problem: Configure with Xcode 12 fails to check for tgetent.
+Solution: Declare tgetent(). (Ozaki Kiichi, closes #6558)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.1311
+Problem: Test failures with legacy MNV script.
+Solution: Actually check for MNV9 script.
+Files: src/mnv9script.c
+
+Patch 8.2.1312
+Problem: MS-Windows: terminal test may fail if dir.exe exists.
+Solution: Use dir.com. (Ken Takata, closes #6557)
+Files: src/testdir/test_terminal3.mnv
+
+Patch 8.2.1313
+Problem: MNV9 script: cannot assign to environment variable.
+Solution: Recognize environment variable assignment. (closes #6548)
+ Also options and registers.
+Files: src/ex_docmd.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1314
+Problem: MNV9: rule for comment after :function is confusing.
+Solution: Allow double quoted comment after :function in mnv9script.
+ (closes #6556)
+Files: src/userfunc.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1315
+Problem: MS-Windows: test log contains escape sequences.
+Solution: Do not use t_md and t_me but ANSI escape sequences. (Ken Takata,
+ closes #6559)
+Files: src/testdir/runtest.mnv
+
+Patch 8.2.1316
+Problem: Test 42 is still old style.
+Solution: Turn it into a new style test. (Yegappan Lakshmanan, closes #6561)
+Files: src/Makefile, src/testdir/Make_all.mak, src/testdir/Make_dos.mak,
+ src/testdir/Make_ming.mak, src/testdir/Make_vms.mms,
+ src/testdir/test42.in, src/testdir/test42.ok,
+ src/testdir/test_writefile.mnv
+
+Patch 8.2.1317
+Problem: MS-Windows tests on AppVeyor are slow.
+Solution: Use GitHub Actions. (Ken Takata, closes #6569)
+Files: Filelist, .github/workflows/ci-windows.yaml, appveyor.yml,
+ ci/appveyor.bat
+
+Patch 8.2.1318
+Problem: No status badge for Github CI.
+Solution: Add a badge.
+Files: README.md
+
+Patch 8.2.1319
+Problem: Status badge for Github CI has wrong link.
+Solution: Rename and use the right link
+Files: README.md, .github/workflows/ci-windows.yaml
+
+Patch 8.2.1320
+Problem: MNV9: cannot declare some single letter variables.
+Solution: Do not recognize a colon for a namespace for single letter
+ variables. (closes #6547)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1321
+Problem: GitHub CI also runs on tag push.
+Solution: Skip CI on push. (Ken Takata, closes #6571)
+Files: .github/workflows/ci-windows.yaml
+
+Patch 8.2.1322
+Problem: MNV9: method on double quoted string doesn't work.
+Solution: Recognize double quoted string. (closes #6562)
+Files: src/ex_docmd.c, src/testdir/test_mnv9_func.mnv,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1323
+Problem: MNV9: invalid operators only rejected in :def function.
+Solution: Also reject them at script level. (closes #6564)
+Files: src/eval.c, src/mnv9compile.c, src/proto/mnv9compile.pro,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1324
+Problem: MNV9: line break after "=" does not work.
+Solution: Also allow for NUL after "=". (closes #6549)
+Files: src/evalvars.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1325
+Problem: MNV9: using MNV9 script for autoload not tested.
+Solution: Add a test. Update help.
+Files: runtime/doc/mnv9.txt, src/testdir/test_autoload.mnv,
+ src/testdir/sautest/autoload/auto9.mnv
+
+Patch 8.2.1326
+Problem: MNV9: skipping over white space after list.
+Solution: Do not skip white space, a following [] would be misinterpreted.
+ (closes #6552) Fix a few side effects.
+Files: src/list.c, src/dict.c, src/eval.c, src/userfunc.c,
+ src/testdir/test_functions.mnv, src/testdir/test_gn.mnv,
+ src/testdir/test_popupwin.mnv, src/testdir/test_tabpage.mnv,
+ src/testdir/test_textprop.mnv, src/testdir/test_textobjects.mnv
+
+Patch 8.2.1327
+Problem: Mac: configure can't find Tcl libraries.
+Solution: Adjust configure check. (closes #6575)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.1328
+Problem: No space allowed before comma in list.
+Solution: Legacy MNV script allows it. (closes #6577)
+Files: src/dict.c, src/list.c, src/testdir/test_listdict.mnv
+
+Patch 8.2.1329
+Problem: MNV9: cannot define global function inside :def function.
+Solution: Assign to global variable instead of local. (closes #6584)
+Files: src/mnv9compile.c, src/userfunc.c, src/proto/userfunc.pro,
+ src/mnv9.h, src/mnv9execute.c, src/structs.h,
+ src/misc2.c, src/proto/misc2.pro, src/testdir/test_mnv9_func.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.1330
+Problem: Github workflow takes longer than needed.
+Solution: Do two test runs in parallel instead of sequentially. (Ken Takata,
+ closes #6579)
+Files: .github/workflows/ci-windows.yaml
+
+Patch 8.2.1331
+Problem: MNV9: :echo with two lists doesn't work.
+Solution: Do not skip white space before []. (closes #6552)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1332
+Problem: MNV9: memory leak when using nested global function.
+Solution: Delete the function when deleting the instruction. Disable test
+ that still causes a leak.
+Files: src/mnv9compile.c, src/userfunc.c, src/proto/userfunc.pro,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1333
+Problem: MNV9: memory leak when using nested global function.
+Solution: Swap from and to when copying the lines.
+Files: src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1334
+Problem: Github workflow timeout needs tuning
+Solution: Use a 10 minute timeout. Fail when timing out. (Ken Takata,
+ closes #6590)
+Files: .github/workflows/ci-windows.yaml
+
+Patch 8.2.1335
+Problem: CTRL-C in the GUI doesn't interrupt. (Sergey Vlasov)
+Solution: Recognize "C" with CTRL modifier as CTRL-C. (issue #6565)
+Files: src/gui.c, src/proto/gui.pro, src/gui_gtk_x11.c, src/gui_x11.c,
+ src/gui_photon.c
+
+Patch 8.2.1336 (after 8.2.1335)
+Problem: Build failure on non-Unix systems.
+Solution: Add #ifdef.
+Files: src/gui.c
+
+Patch 8.2.1337
+Problem: MNV9: cannot use empty key in dict assignment.
+Solution: Allow empty key. (closes #6591)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1338
+Problem: MNV9: assigning to script-local variable doesn't check type.
+Solution: Use the type. (issue #6591)
+Files: src/mnv9compile.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1339
+Problem: MNV9: assigning to global dict variable doesn't work.
+Solution: Guess variable type based in index type. (issue #6591)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1340
+Problem: Some tests fail on Cirrus CI and/or with FreeBSD.
+Solution: Make 'backupskip' empty. Do not run tests as root. Check for
+ directory when using mnvinfo. (Ozaki Kiichi, closes #6596)
+Files: .cirrus.yml, src/testdir/test_backup.mnv,
+ src/testdir/test_edit.mnv, src/testdir/test_mnvinfo.mnv,
+ src/testdir/test_writefile.mnv, src/mnvinfo.c
+
+Patch 8.2.1341
+Problem: Build failures.
+Solution: Add missing error message.
+Files: src/globals.h
+
+Patch 8.2.1342
+Problem: MNV9: accidentally using "x" gives a confusing error.
+Solution: Disallow using ":t" in MNV9 script. (issue #6399)
+Files: runtime/doc/mnv9.txt, src/mnv9compile.c, src/mnv9script.c,
+ src/ex_docmd.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1343
+Problem: MNV9: cannot find global function when using g: when local
+ function with the same name exists.
+Solution: Find global function when using g:.
+Files: src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1344
+Problem: MNV9: No test for trying to redefine global function.
+Solution: Add a test.
+Files: src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1345
+Problem: Redraw error when using visual block and scroll.
+Solution: Add check for w_topline. (closes #6597)
+Files: src/drawscreen.c, src/testdir/test_display.mnv,
+ src/testdir/dumps/Test_display_visual_block_scroll.dump
+
+Patch 8.2.1346
+Problem: Small build fails.
+Solution: Add #ifdef.
+Files: src/ex_docmd.c
+
+Patch 8.2.1347
+Problem: Cannot easily get the script ID.
+Solution: Support expand('<SID>').
+Files: runtime/doc/map.txt, src/ex_docmd.c,
+ src/testdir/test_expand_func.mnv
+
+Patch 8.2.1348
+Problem: Build failure without the eval feature.
+Solution: Add #ifdef.
+Files: src/ex_docmd.c
+
+Patch 8.2.1349
+Problem: MNV9: can define a function with the name of an import.
+Solution: Disallow using an existing name. (closes #6585)
+Files: src/userfunc.c, src/mnv9compile.c, src/globals.h,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1350
+Problem: MNV9: no test for error message when redefining function.
+Solution: Add a test.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1351
+Problem: MNV9: no proper error if using namespace for nested function.
+Solution: Specifically check for a namespace. (closes #6582)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1352
+Problem: MNV9: no error for shadowing a script-local function by a nested
+ function.
+Solution: Check for script-local function. (closes #6586)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1353
+Problem: Crash when drawing double-wide character in terminal window.
+ (Masato Nishihata)
+Solution: Check getcell() returning NULL. (issue #6141)
+Files: src/libvterm/src/screen.c, src/testdir/test_terminal.mnv
+
+Patch 8.2.1354
+Problem: Test 59 is old style.
+Solution: Convert into a new style test. (Yegappan Lakshmanan, closes #6604)
+Files: runtime/doc/eval.txt, src/Makefile, src/testdir/Make_all.mak,
+ src/testdir/Make_vms.mms, src/testdir/test59.in,
+ src/testdir/test59.ok, src/testdir/test_spell_utf8.mnv
+
+Patch 8.2.1355
+Problem: MNV9: no error using :let for options and registers.
+Solution: Give an error. (closes #6568)
+Files: src/evalvars.c, src/mnv9compile.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1356
+Problem: MNV9: cannot get the percent register.
+Solution: Check for readable registers instead of writable. (closes #6566)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1357
+Problem: MNV9: cannot assign to / register.
+Solution: Adjust check for assignment. (issue #6566)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1358
+Problem: MNV9: test fails with +dnd is not available.
+Solution: Add condition.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1359
+Problem: MNV9: cannot assign to / register in MNV9 script.
+Solution: Adjust check for assignment in MNV9 script. (closes #6567)
+Files: src/ex_docmd.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1360
+Problem: Stray error for white space after expression.
+Solution: Ignore trailing white space. (closes #6608)
+Files: src/eval.c, src/testdir/test_filter_map.mnv
+
+Patch 8.2.1361
+Problem: Error for white space after expression in assignment.
+Solution: Skip over white space. (closes #6617)
+Files: src/eval.c, src/testdir/test_expr.mnv
+
+Patch 8.2.1362
+Problem: Last entry of ":set term=xxx" overwritten by error message when
+ 'cmdheight' is two or more. (Tony Mechelynck)
+Solution: Output extra line breaks.
+Files: src/term.c, src/testdir/test_termcodes.mnv
+
+Patch 8.2.1363
+Problem: Test trying to run terminal when it is not supported.
+Solution: Check if MNV can be run in a terminal.
+Files: src/testdir/test_termcodes.mnv
+
+Patch 8.2.1364
+Problem: Invalid memory access when searching for raw string.
+Solution: Check for delimiter match before following quote. (closes #6578)
+Files: src/search.c
+
+Patch 8.2.1365
+Problem: MNV9: no error for missing white space around operator.
+Solution: Check for white space. (closes #6618)
+Files: src/eval.c, src/mnv9compile.c, src/proto/mnv9compile.pro,
+ src/evalvars.c, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1366
+Problem: Test 49 is old style.
+Solution: Convert several tests to new style. (Yegappan Lakshmanan,
+ closes #6629)
+Files: src/testdir/script_util.mnv, src/testdir/test49.ok,
+ src/testdir/test49.mnv, src/testdir/test_mnvscript.mnv
+
+Patch 8.2.1367
+Problem: MNV9: no error for missing white space around operator.
+Solution: Check for white space around *, / and %.
+Files: src/eval.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1368
+Problem: MNV9: no error for missing white space around operator.
+Solution: Check for white space around <, !=, etc.
+Files: src/eval.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1369
+Problem: MS-Windows: autocommand test sometimes fails.
+Solution: Do not rely on the cat command.
+Files: src/testdir/test_autocmd.mnv
+
+Patch 8.2.1370
+Problem: MS-Windows: warning for using fstat() with stat_T.
+Solution: use _fstat64() if available. (Naruhiko Nishino, closes #6625)
+Files: src/macros.h
+
+Patch 8.2.1371
+Problem: MNV9: no error for missing white space around operator.
+Solution: Check for white space around && and ||.
+Files: src/eval.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1372
+Problem: MNV9: no error for missing white space around operator.
+Solution: Check for white space around ? and :.
+Files: src/eval.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1373
+Problem: MNV9: no error for assigning to non-existing script var.
+Solution: Check that in MNV9 script the variable was defined. (closes #6630)
+Files: src/mnv9compile.c, src/userfunc.c, src/structs.h,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1374
+Problem: MNV9: error for assigning empty list to script variable.
+Solution: Use t_unknown for empty list member. (closes #6595)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1375
+Problem: MNV9: method name with digit not accepted.
+Solution: Use eval_isnamec() instead of eval_isnamec1(). (closes #6613)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1376
+Problem: MNV9: expression mapping causes error for using :import.
+Solution: Add EX_LOCK_OK to :import and :export. (closes #6606)
+Files: src/ex_cmds.h, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1377
+Problem: Triggering the ATTENTION prompt causes typeahead to be messed up.
+Solution: Increment tb_change_cnt. (closes #6541)
+Files: src/getchar.c
+
+Patch 8.2.1378
+Problem: Cannot put space between function name and paren.
+Solution: Allow this for backwards compatibility.
+Files: src/eval.c, src/testdir/test_expr.mnv,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1379
+Problem: Curly braces expression ending in " }" does not work.
+Solution: Skip over white space when checking for "}". (closes #6634)
+Files: src/dict.c, src/testdir/test_eval_stuff.mnv
+
+Patch 8.2.1380
+Problem: MNV9: return type of getreg() is always a string.
+Solution: Use list of strings when there are three arguments. (closes #6633)
+Files: src/evalfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1381
+Problem: MS-Windows: crash with Python 3.5 when stdin is redirected.
+Solution: Reconnect stdin. (Yasuhiro Matsumoto, Ken Takata, closes #6641)
+Files: src/Make_cyg_ming.mak, src/Make_mvc.mak, src/if_python3.c
+
+Patch 8.2.1382
+Problem: MNV9: using :import in filetype plugin gives an error.
+Solution: Allow commands with the EX_LOCK_OK flag. (closes #6636)
+Files: src/ex_docmd.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1383
+Problem: Test 49 is old style.
+Solution: Convert test cases to new style. (Yegappan Lakshmanan,
+ closes #6638)
+Files: src/testdir/test49.ok, src/testdir/test49.mnv,
+ src/testdir/test_mnvscript.mnv
+
+Patch 8.2.1384
+Problem: No ATTENTION prompt for :mnvgrep first match file.
+Solution: When there is an existing swap file do not keep the dummy buffer.
+ (closes #6649)
+Files: src/quickfix.c, src/testdir/runtest.mnv,
+ src/testdir/test_quickfix.mnv
+
+Patch 8.2.1385
+Problem: No testing on ARM.
+Solution: Add a test on Travis for ARM. (Ozaki Kiichi, closes #6615)
+Files: .travis.yml
+
+Patch 8.2.1386
+Problem: Backslash not removed after space in option with space in
+ 'isfname'.
+Solution: Do remove backslash before space, also when it is in 'isfname'.
+ (Yasuhiro Matsumoto, closes #6651)
+Files: src/option.c, src/testdir/test_options.mnv
+
+Patch 8.2.1387
+Problem: MNV9: cannot assign to single letter variable with type.
+Solution: Exclude the colon from the variable name. (closes #6647)
+Files: src/eval.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1388
+Problem: MNV9: += only works for numbers.
+Solution: Use += as concatenate for a list. (closes #6646)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1389
+Problem: File missing from the distribution.
+Solution: Add script_util.mnv to the list of distributes files.
+Files: Filelist
+
+Patch 8.2.1390
+Problem: MNV9: type error after storing an option value.
+Solution: Drop the type after a STOREOPT instruction. (closes #6632)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1391
+Problem: MNV9: no error for shadowing a script function.
+Solution: Check for already defined items. (closes #6652)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1392
+Problem: MNV9: error line number incorrect after skipping over comment
+ lines.
+Solution: Insert empty lines for skipped lines.
+Files: src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1393
+Problem: Insufficient testing for script debugging.
+Solution: Add more tests. (Ben Jackson)
+Files: src/testdir/test_debugger.mnv
+
+Patch 8.2.1394
+Problem: MNV9: compiling a function interferes with command modifiers.
+Solution: Save and restore command modifiers. (closes #6658)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1395
+Problem: MNV9: no error if declaring a funcref with a lower case letter.
+Solution: Check the name after the type is inferred. Fix confusing name.
+Files: src/mnv9compile.c, src/dict.c, src/eval.c, src/evalvars.c,
+ src/proto/evalvars.pro, src/testdir/test_mnv9_script.mnv,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1396
+Problem: MNV9: no error for unexpectedly returning a value.
+Solution: Only set the return type for lambda's. Make using function type
+ in a function reference work.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1397
+Problem: MNV9: return type of maparg() not adjusted for fourth argument.
+Solution: Check if fourth argument is present. (closes #6645)
+Files: src/evalfunc.c, src/testdir/test_maparg.mnv
+
+Patch 8.2.1398
+Problem: Autoload script sourced twice if sourced directly.
+Solution: Do not source an autoload script again. (issue #6644)
+Files: src/scriptfile.c, src/testdir/sautest/autoload/sourced.mnv
+
+Patch 8.2.1399
+Problem: MNV9: may find imported item in wrong script.
+Solution: When looking up script-local function use the embedded script ID.
+ (issue #6644)
+Files: src/mnv9compile.c, src/proto/mnv9compile.pro, src/userfunc.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1400
+Problem: MNV9: test does not delete written files.
+Solution: Correct file names.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1401
+Problem: Cannot jump to the last used tabpage.
+Solution: Add g<Tab> and tabpagnr('#'). (Yegappan Lakshmanan, closes #6661,
+ neomnv #11626)
+Files: runtime/doc/eval.txt, runtime/doc/index.txt,
+ runtime/doc/tabpage.txt, src/evalwindow.c, src/globals.h,
+ src/normal.c, src/proto/window.pro, src/testdir/test_tabpage.mnv,
+ src/window.c
+
+Patch 8.2.1402
+Problem: s390x tests always fail.
+Solution: Temporarily disable s390x tests.
+Files: .travis.yml
+
+Patch 8.2.1403
+Problem: MNV9: MNV highlighting fails in cmdline window if it uses MNV9
+ commands.
+Solution: Allow using :mnv9script, :import and :export while in the cmdline
+ window. (closes #6656)
+Files: src/ex_cmds.h, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1404
+Problem: MNV9: script test fails in the GUI.
+Solution: Use another key to map. Improve cleanup.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1405
+Problem: MNV9: mnv9compile.c is getting too big.
+Solution: Split off type code to mnv9type.c.
+Files: Filelist, src/mnv9compile.c, src/proto/mnv9compile.pro,
+ src/mnv9type.c, src/proto/mnv9type.pro, src/proto.h,
+ src/Make_cyg_ming.mak, src/Make_mvc.mak, src/Makefile
+
+Patch 8.2.1406
+Problem: Popupwindow lacks scrollbar if no "maxheight" is used.
+Solution: Compute the max height depending on the position. (closes #6664)
+Files: src/popupwin.c, src/testdir/test_popupwin.mnv,
+ src/testdir/dumps/Test_popupwin_toohigh_1.dump,
+ src/testdir/dumps/Test_popupwin_toohigh_2.dump
+
+Patch 8.2.1407
+Problem: MNV9: type of list and dict only depends on first item.
+Solution: Use all items to decide about the type.
+Files: src/mnv9compile.c, src/mnv9type.c, src/proto/mnv9type.pro,
+ src/testdir/test_mnv9_expr.mnv, runtime/doc/mnv9.txt
+
+Patch 8.2.1408
+Problem: MNV9: type casting not supported.
+Solution: Introduce type casting.
+Files: runtime/doc/mnv9.txt, src/mnv9compile.c,
+ src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.1409
+Problem: Npmrc and php.ini filetypes not recognized.
+Solution: Add filetype detection. (Doug Kearns)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.1410
+Problem: Adding compiler plugin requires test change.
+Solution: Include compiler plugin and adjust test.
+Files: src/testdir/test_compiler.mnv, runtime/compiler/xo.mnv
+
+Patch 8.2.1411
+Problem: when splitting a window localdir is copied but prevdir is not.
+Solution: Also copy prevdir. (closes #6667)
+Files: src/window.c, src/testdir/test_cd.mnv
+
+Patch 8.2.1412
+Problem: MNV: not operator does not result in boolean.
+Solution: Make type depend on operator. (issue 6678) Fix using "false" and
+ "true" in MNV9 script.
+Files: src/eval.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1413 (after 8.2.1401)
+Problem: Previous tab page not usable from an Ex command.
+Solution: Add the "#" argument for :tabnext et al. (Yegappan Lakshmanan,
+ closes #6677)
+Files: runtime/doc/tabpage.txt, src/ex_docmd.c, src/window.c,
+ src/testdir/test_tabpage.mnv
+
+Patch 8.2.1414
+Problem: Popupwindow missing last couple of lines when cursor is in the
+ first line.
+Solution: Compute the max height also when top aligned. (closes #6664)
+Files: src/popupwin.c, src/testdir/test_popupwin.mnv,
+ src/testdir/dumps/Test_popupwin_toohigh_3.dump,
+ src/testdir/dumps/Test_popupwin_nospace.dump
+
+Patch 8.2.1415
+Problem: Closing a popup window with CTRL-C interrupts 'statusline' if it
+ calls a function.
+Solution: Reset got_int while redrawing. (closes #6675)
+Files: src/popupwin.c, src/testdir/test_popupwin.mnv,
+ src/testdir/dumps/Test_popupwin_ctrl_c.dump
+
+Patch 8.2.1416
+Problem: MNV9: boolean evaluation does not work as intended.
+Solution: Use tv2bool() in MNV9 script. (closes #6681)
+Files: src/eval.c, src/testdir/test_mnv9_expr.mnv, src/testdir/mnv9.mnv
+
+Patch 8.2.1417
+Problem: Test 49 is old style.
+Solution: Convert more parts to new style test. (Yegappan Lakshmanan,
+ closes #6682)
+Files: src/testdir/test49.ok, src/testdir/test49.mnv,
+ src/testdir/test_mnvscript.mnv
+
+Patch 8.2.1418
+Problem: MNV9: invalid error for missing white space after function.
+Solution: Do not skip over white space. (closes #6679)
+Files: src/userfunc.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1419
+Problem: MNV9: not operator applied too early.
+Solution: Implement the "numeric_only" argument. (closes #6680)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1420
+Problem: Test 49 is old style.
+Solution: Convert remaining parts to new style. Remove obsolete items.
+ (Yegappan Lakshmanan, closes #6683)
+Files: Filelist, runtime/doc/testing.txt, src/Make_mvc.mak, src/Makefile,
+ src/testdir/Make_all.mak, src/testdir/Make_amiga.mak,
+ src/testdir/Make_dos.mak, src/testdir/Make_ming.mak,
+ src/testdir/Make_vms.mms, src/testdir/Makefile,
+ src/testdir/README.txt, src/testdir/test49.in,
+ src/testdir/test49.ok, src/testdir/test49.mnv,
+ src/testdir/test_quickfix.mnv, src/testdir/test_mnvscript.mnv
+
+Patch 8.2.1421
+Problem: MNV9: handling "+" and "-" before number differs from MNV script.
+Solution: Use the same sequence of commands.
+Files: src/mnv9compile.c
+
+Patch 8.2.1422
+Problem: The Mac GUI implementation is outdated and probably doesn't even
+ work.
+Solution: Remove the Mac GUI code. The MacMNV project provides the
+ supported MNV GUI version.
+Files: Filelist, src/gui_mac.c, src/proto/gui_mac.pro, src/proto.h,
+ src/Makefile, src/configure.ac, src/auto/configure,
+ src/evalfunc.c, src/fileio.c, src/gui.c, src/if_mzsch.c,
+ src/main.c, src/misc2.c, src/mouse.c, src/os_mac_conv.c,
+ src/os_unix.c, src/feature.h, src/globals.h, src/gui.h,
+ src/option.h, src/optiondefs.h, src/os_mac.h, src/structs.h,
+ src/mnv.h, src/INSTALLmac.txt
+
+Patch 8.2.1423
+Problem: MNV9: find global function when looking for script-local.
+Solution: Don't strip prefix if name starts with "s:". (closes #6688)
+Files: src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1424 (after 8.2.1422)
+Problem: Mac build fails.
+Solution: Adjust configure to not fall back to Athena. Adjust some other
+ files.
+Files: src/configure.ac, src/auto/configure, src/os_macosx.m,
+ src/version.c
+
+Patch 8.2.1425
+Problem: MNV9: cannot use call() without :call.
+Solution: Do not skip over "call(". (closes #6689)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1426
+Problem: MNV9: cannot call autoload function in :def function.
+Solution: Load the autoload script. (closes #6690)
+Files: src/mnv9execute.c, src/mnv9compile.c, src/scriptfile.c,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1427
+Problem: MNV9: cannot use a range with marks in :def function.
+Solution: Parse range after colon. (closes #6686)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.1428
+Problem: MNV9: :def function does not abort on nested function error.
+Solution: Check whether an error message was given. (closes #6691)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1429
+Problem: MNV9: no error for missing white after : in dict.
+Solution: Check for white space. (closes #6671) Also check that there is no
+ white before the :.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1430
+Problem: MNV9: error for missing comma instead of extra white space.
+Solution: Check if comma can be found after white space. (closes #6668)
+ Also check for extra white space in literal dict. (closes #6670)
+Files: src/list.c, src/dict.c, src/mnv9compile.c,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1431
+Problem: MNV9: no error for white space before comma in dict.
+Solution: Check for extra white space. (closes #6674)
+Files: src/mnv9compile.c, src/dict.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1432
+Problem: Various inconsistencies in test files.
+Solution: Add modelines where they were missing. Use Check commands instead
+ of silently skipping over tests. Adjust indents and comments.
+ (Ken Takata, closes #6695)
+Files: src/testdir/test_arglist.mnv, src/testdir/test_assert.mnv,
+ src/testdir/test_autochdir.mnv, src/testdir/test_autocmd.mnv,
+ src/testdir/test_autoload.mnv, src/testdir/test_balloon.mnv,
+ src/testdir/test_balloon_gui.mnv, src/testdir/test_behave.mnv,
+ src/testdir/test_blockedit.mnv, src/testdir/test_breakindent.mnv,
+ src/testdir/test_bufline.mnv, src/testdir/test_bufwintabinfo.mnv,
+ src/testdir/test_cd.mnv, src/testdir/test_changedtick.mnv,
+ src/testdir/test_changelist.mnv, src/testdir/test_channel.mnv,
+ src/testdir/test_checkpath.mnv, src/testdir/test_cindent.mnv,
+ src/testdir/test_cjk_linebreak.mnv,
+ src/testdir/test_clientserver.mnv,
+ src/testdir/test_close_count.mnv, src/testdir/test_cmdline.mnv,
+ src/testdir/test_command_count.mnv,
+ src/testdir/test_comparators.mnv, src/testdir/test_compiler.mnv,
+ src/testdir/test_crypt.mnv, src/testdir/test_cursorline.mnv,
+ src/testdir/test_curswant.mnv, src/testdir/test_debugger.mnv,
+ src/testdir/test_delete.mnv, src/testdir/test_diffmode.mnv,
+ src/testdir/test_digraph.mnv, src/testdir/test_display.mnv,
+ src/testdir/test_edit.mnv, src/testdir/test_environ.mnv,
+ src/testdir/test_erasebackword.mnv,
+ src/testdir/test_escaped_glob.mnv, src/testdir/test_ex_equal.mnv,
+ src/testdir/test_ex_undo.mnv, src/testdir/test_ex_z.mnv,
+ src/testdir/test_exec_while_if.mnv, src/testdir/test_exists.mnv,
+ src/testdir/test_exists_autocmd.mnv, src/testdir/test_exit.mnv,
+ src/testdir/test_expand_dllpath.mnv,
+ src/testdir/test_expr_utf8.mnv, src/testdir/test_feedkeys.mnv,
+ src/testdir/test_file_size.mnv, src/testdir/test_fileformat.mnv,
+ src/testdir/test_filter_cmd.mnv,
+ src/testdir/test_find_complete.mnv, src/testdir/test_findfile.mnv,
+ src/testdir/test_fixeol.mnv, src/testdir/test_flatten.mnv,
+ src/testdir/test_fnameescape.mnv, src/testdir/test_fold.mnv,
+ src/testdir/test_functions.mnv, src/testdir/test_ga.mnv,
+ src/testdir/test_getcwd.mnv, src/testdir/test_getvar.mnv,
+ src/testdir/test_glob2regpat.mnv, src/testdir/test_global.mnv,
+ src/testdir/test_gui.mnv, src/testdir/test_gui_init.mnv,
+ src/testdir/test_highlight.mnv, src/testdir/test_hlsearch.mnv,
+ src/testdir/test_iminsert.mnv,
+ src/testdir/test_increment_dbcs.mnv,
+ src/testdir/test_ins_complete.mnv, src/testdir/test_interrupt.mnv,
+ src/testdir/test_job_fails.mnv, src/testdir/test_join.mnv,
+ src/testdir/test_json.mnv, src/testdir/test_jumplist.mnv,
+ src/testdir/test_jumps.mnv, src/testdir/test_lambda.mnv,
+ src/testdir/test_langmap.mnv, src/testdir/test_largefile.mnv,
+ src/testdir/test_lineending.mnv, src/testdir/test_listchars.mnv,
+ src/testdir/test_listener.mnv, src/testdir/test_listlbr.mnv,
+ src/testdir/test_listlbr_utf8.mnv,
+ src/testdir/test_makeencoding.mnv, src/testdir/test_man.mnv,
+ src/testdir/test_mapping.mnv, src/testdir/test_marks.mnv,
+ src/testdir/test_matchadd_conceal.mnv,
+ src/testdir/test_matchadd_conceal_utf8.mnv,
+ src/testdir/test_memory_usage.mnv, src/testdir/test_menu.mnv,
+ src/testdir/test_messages.mnv, src/testdir/test_mksession.mnv,
+ src/testdir/test_modeline.mnv,
+ src/testdir/test_nested_function.mnv, src/testdir/test_number.mnv,
+ src/testdir/test_options.mnv, src/testdir/test_packadd.mnv,
+ src/testdir/test_partial.mnv, src/testdir/test_paste.mnv,
+ src/testdir/test_plus_arg_edit.mnv, src/testdir/test_preview.mnv,
+ src/testdir/test_profile.mnv, src/testdir/test_prompt_buffer.mnv,
+ src/testdir/test_quickfix.mnv, src/testdir/test_quotestar.mnv,
+ src/testdir/test_random.mnv, src/testdir/test_recover.mnv,
+ src/testdir/test_regex_char_classes.mnv,
+ src/testdir/test_regexp_latin.mnv, src/testdir/test_registers.mnv,
+ src/testdir/test_rename.mnv, src/testdir/test_retab.mnv,
+ src/testdir/test_scriptnames.mnv, src/testdir/test_scroll_opt.mnv,
+ src/testdir/test_scrollbind.mnv, src/testdir/test_search_stat.mnv,
+ src/testdir/test_searchpos.mnv, src/testdir/test_set.mnv,
+ src/testdir/test_sha256.mnv, src/testdir/test_shift.mnv,
+ src/testdir/test_shortpathname.mnv, src/testdir/test_signs.mnv,
+ src/testdir/test_sort.mnv, src/testdir/test_sound.mnv,
+ src/testdir/test_source_utf8.mnv, src/testdir/test_spellfile.mnv,
+ src/testdir/test_startup.mnv, src/testdir/test_startup_utf8.mnv,
+ src/testdir/test_stat.mnv, src/testdir/test_suspend.mnv,
+ src/testdir/test_swap.mnv, src/testdir/test_syntax.mnv,
+ src/testdir/test_tab.mnv, src/testdir/test_tabline.mnv,
+ src/testdir/test_tagcase.mnv, src/testdir/test_tagjump.mnv,
+ src/testdir/test_taglist.mnv, src/testdir/test_termcodes.mnv,
+ src/testdir/test_termencoding.mnv, src/testdir/test_terminal.mnv,
+ src/testdir/test_terminal2.mnv, src/testdir/test_terminal3.mnv,
+ src/testdir/test_terminal_fail.mnv,
+ src/testdir/test_true_false.mnv,
+ src/testdir/test_utf8_comparisons.mnv,
+ src/testdir/test_vartabs.mnv, src/testdir/test_version.mnv,
+ src/testdir/test_mnv9_expr.mnv, src/testdir/test_winbar.mnv,
+ src/testdir/test_winbuf_close.mnv,
+ src/testdir/test_window_cmd.mnv, src/testdir/test_window_id.mnv,
+ src/testdir/test_windows_home.mnv, src/testdir/test_wnext.mnv,
+ src/testdir/test_wordcount.mnv, src/testdir/test_writefile.mnv,
+ src/testdir/test_xxd.mnv
+
+Patch 8.2.1433
+Problem: MNV9: cannot mingle comments in multi-line lambda.
+Solution: Skip over NULL lines. (closes #6694)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1434
+Problem: MNV9: crash when lambda uses outer function argument.
+Solution: Set the flag that the outer context is used.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1435
+Problem: MNV9: always converting to string for ".." leads to mistakes.
+Solution: Only automatically convert simple types.
+Files: runtime/doc/mnv9.txt, src/mnv9compile.c, src/mnv9.h,
+ src/mnv9execute.c, src/proto/mnv9execute.pro, src/eval.c,
+ src/evalfunc.c, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.1436
+Problem: Function implementing :substitute has unexpected name.
+Solution: Rename from do_sub() to ex_substitute().
+Files: src/ex_cmds.c, src/proto/ex_cmds.pro, src/ex_docmd.c,
+ src/ex_cmds.h
+
+Patch 8.2.1437
+Problem: MNV9: 'statusline' is evaluated using MNV9 script syntax.
+Solution: Always use legacy script syntax.
+Files: src/eval.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1438
+Problem: Missing tests for interrupting script execution from debugger.
+Solution: Add tests. (Yegappan Lakshmanan, closes #6697)
+Files: src/testdir/test_debugger.mnv
+
+Patch 8.2.1439
+Problem: Tiny and small builds have no test coverage.
+Solution: Restore tests that do not depend on the +eval feature.
+ (Ken Takata, closes #6696)
+Files: .travis.yml, Filelist, Makefile, runtime/doc/testing.txt,
+ src/Make_mvc.mak, src/Makefile, src/testdir/Make_all.mak,
+ src/testdir/Make_amiga.mak, src/testdir/Make_dos.mak,
+ src/testdir/Make_ming.mak, src/testdir/Make_vms.mms,
+ src/testdir/Makefile, src/testdir/runtest.mnv,
+ src/testdir/test1.in, src/testdir/test1.ok, src/testdir/test20.in,
+ src/testdir/test20.ok, src/testdir/test21.in,
+ src/testdir/test21.ok, src/testdir/test22.in,
+ src/testdir/test22.ok, src/testdir/test23.in,
+ src/testdir/test23.ok, src/testdir/test24.in,
+ src/testdir/test24.ok, src/testdir/test25.in,
+ src/testdir/test25.ok, src/testdir/test26.in,
+ src/testdir/test26.ok, src/testdir/test27.in,
+ src/testdir/test27.ok, src/testdir/test_options.mnv
+
+Patch 8.2.1440
+Problem: Debugger code insufficiently tested.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #6700)
+Files: src/testdir/test_debugger.mnv, src/testdir/test_mnvscript.mnv
+
+Patch 8.2.1441
+Problem: Running tests in tiny version gives error for summarize.mnv.
+Solution: Set 'cpoptions' to allow for line continuation. Restore
+ redirecting test output to /dev/null.
+Files: src/testdir/summarize.mnv, src/testdir/Makefile
+
+Patch 8.2.1442
+Problem: Outdated references to the Mac Carbon GUI.
+Solution: Remove or update references. (Yee Cheng Chin, closes #6703)
+Files: READMEdir/README_extra.txt, src/Makefile, src/configure.ac,
+ src/auto/configure, src/gui_haiku.cc, src/os_macosx.m,
+ src/testdir/test_iminsert.mnv, src/mnv.h
+
+Patch 8.2.1443
+Problem: MNV9: crash when interrupting a nested :def function.
+Solution: Push a dummy return value onto the stack. (closes #6701)
+Files: src/mnv9execute.c
+
+Patch 8.2.1444
+Problem: Error messages are spread out and names can be confusing.
+Solution: Start moving error messages to a separate file and use clear
+ names.
+Files: Filelist, src/mnv.h, src/globals.h, src/errors.h, src/Makefile,
+ src/Make_cyg_ming.mak, src/Make_mvc.mak, src/Make_vms.mms,
+ src/dict.c, src/evalvars.c, src/ex_docmd.c, src/list.c,
+ src/userfunc.c, src/mnv9compile.c, src/mnv9execute.c,
+ src/mnv9script.c, src/mnv9type.c
+
+Patch 8.2.1445
+Problem: MNV9: function expanded name is cleared when sourcing a script
+ again.
+Solution: Only clear the expanded name when deleting the function.
+ (closes #6707)
+Files: src/userfunc.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1446
+Problem: MNV9: line number in error message is not correct.
+Solution: Set SOURCING_LNUM before calling emsg(). (closes #6708)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1447
+Problem: MNV9: return type of keys() is list<any>.
+Solution: Should be list<string>. (closes #6711)
+Files: src/evalfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1448
+Problem: Test 77a for VMS depends on small.mnv which does not exist.
+Solution: Use the 'silent while 0" trick. (issue #6696)
+Files: src/testdir/test77a.in
+
+Patch 8.2.1449
+Problem: Some test makefiles delete files that are not generated.
+Solution: Remove the deletion commands.
+Files: src/testdir/Make_dos.mak, src/testdir/Make_ming.mak,
+ src/testdir/Make_amiga.mak, src/testdir/Make_vms.mms
+
+Patch 8.2.1450
+Problem: MNV9: no check that script-local items don't become global.
+Solution: Add a test.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1451
+Problem: MNV9: list type at script level only uses first item.
+Solution: Use all members, like in a compiled function. (closes #6712)
+ Also for dictionary.
+Files: src/mnv9type.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1452
+Problem: MNV9: dead code in to_name_end().
+Solution: Remove check for lambda and dict, it won't be used.
+Files: src/mnv9compile.c
+
+Patch 8.2.1453
+Problem: MNV9: failure to compile lambda not tested.
+Solution: Add a test case.
+Files: src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1454
+Problem: MNV9: failure invoking lambda with wrong arguments.
+Solution: Handle invalid arguments. Add a test.
+Files: src/mnv9compile.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1455
+Problem: MNV9: crash when using typecast before constant.
+Solution: Generate constant before checking type. Add tets.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1456
+Problem: MS-Windows: test files are not deleted.
+Solution: use "del" instead of $(DEL).
+Files: src/testdir/Make_dos.mak
+
+Patch 8.2.1457
+Problem: MNV9: the output of :disassemble cannot be interrupted.
+Solution: Check got_int. (closes #6715)
+Files: src/mnv9execute.c
+
+Patch 8.2.1458
+Problem: .gawk files not recognized.
+Solution: Recognize .gawk files. (Doug Kearns)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.1459
+Problem: MNV9: declaring a script variable at the script level does not
+ infer the type.
+Solution: Get the type from the value. (closes #6716)
+Files: src/evalvars.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1460
+Problem: Error messages are spread out.
+Solution: Move more messages into errors.h.
+Files: src/errors.h, src/globals.h, src/mnv9compile.c, src/mnv9execute.c,
+ src/mnv9script.c, src/mnv9type.c, src/scriptfile.c, src/ex_cmds.c,
+ src/ex_docmd.c, src/match.c, src/eval.c, src/evalvars.c,
+ src/userfunc.c, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_disassemble.mnv,
+ src/testdir/test_mnv9_func.mnv, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1461
+Problem: MNV9: string indexes are counted in bytes.
+Solution: Use character indexes. (closes #6574)
+Files: runtime/doc/eval.txt, src/eval.c, src/proto/eval.pro,
+ src/mnv9execute.c, src/eval.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1462
+Problem: MNV9: string slice not supported yet.
+Solution: Add support for string slicing.
+Files: src/errors.h, src/mnv9compile.c, src/mnv9.h, src/mnv9execute.c,
+ src/eval.c, src/proto/eval.pro, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.1463
+Problem: MNV9: list slice not supported yet.
+Solution: Add support for list slicing.
+Files: src/mnv9compile.c, src/mnv9.h, src/mnv9execute.c, src/eval.c,
+ src/list.c, src/proto/list.pro, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.1464
+Problem: MNV9: build warning for unused variable.
+Solution: Delete the variable declaration.
+Files: src/mnv9execute.c
+
+Patch 8.2.1465
+Problem: MNV9: subscript not handled properly.
+Solution: Adjust error message. Remove dead code. Disallow string to
+ number conversion in scripts.
+Files: src/errors.h, src/mnv9compile.c, src/mnv9execute.c, src/eval.c,
+ src/typval.c, src/list.c, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1466
+Problem: MNV9: cannot index or slice a variable with type "any".
+Solution: Add runtime index and slice.
+Files: src/eval.c, src/proto/eval.pro, src/mnv9compile.c,
+ src/mnv9execute.c, src/mnv9.h, src/errors.h, src/list.c,
+ src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_disassemble.mnv,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1467
+Problem: MNV9: :echomsg doesn't like a dict argument.
+Solution: Convert arguments like in legacy script. (closes #6717)
+Files: src/mnv9compile.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1468
+Problem: MNV9: invalid error for missing white space.
+Solution: Don't skip over white space after index. (closes #6718)
+Files: src/eval.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1469
+Problem: MNV9: cannot assign string to string option.
+Solution: Change checks for option value. (closes #6720)
+Files: src/evalvars.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1470
+Problem: Errors in spell file not tested.
+Solution: Add test for spell file errors. (Yegappan Lakshmanan,
+ closes #6721)
+Files: src/testdir/test_spellfile.mnv
+
+Patch 8.2.1471
+Problem: :const only locks the variable, not the value.
+Solution: Lock the value as ":lockvar 1 var" would do. (closes #6719)
+Files: src/evalvars.c, src/testdir/test_const.mnv
+
+Patch 8.2.1472
+Problem: ":argdel" does not work like ":.argdel" as documented. (Alexey
+ Demin)
+Solution: Make ":argdel" work like ":.argdel". (closes #6727)
+ Also fix giving the error "0 more files to edit".
+Files: src/arglist.c, src/ex_docmd.c, src/testdir/test_arglist.mnv
+
+Patch 8.2.1473
+Problem: Items in a list given to :const can still be modified.
+Solution: Work like ":lockvar! name" but don't lock referenced items.
+ Make locking a blob work.
+Files: runtime/doc/eval.txt, src/evalvars.c, src/eval.c,
+ src/testdir/test_const.mnv
+
+Patch 8.2.1474
+Problem: /usr/lib/udef/rules.d not recognized as udevrules.
+Solution: Adjust match pattern. (Haochen Tong, closes 36722)
+Files: runtime/autoload/dist/ft.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.1475
+Problem: MNV9: can't use v:true for option flags.
+Solution: Add tv_get_bool_chk(). (closes #6725)
+Files: src/typval.c, src/proto/typval.pro, src/channel.c
+
+Patch 8.2.1476 (after 8.2.1474)
+Problem: Filetype test fails on MS-Windows.
+Solution: Remove "^" from pattern.
+Files: runtime/autoload/dist/ft.mnv
+
+Patch 8.2.1477
+Problem: MNV9: error when using bufnr('%').
+Solution: Don't give an error for using a string argument. (closes #6723)
+Files: src/evalbuffer.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1478
+Problem: MNV9: cannot use "true" for some popup options.
+Solution: Add dict_get_bool(). (closes #6725)
+Files: src/dict.c, src/proto/dict.pro, src/popupwin.c
+
+Patch 8.2.1479
+Problem: MNV9: error for list index uses wrong line number.
+Solution: Set source line number. (closes #6724) Add a way to assert the
+ line number of the error with assert_fails().
+Files: runtime/doc/testing.txt, src/mnv9execute.c, src/testing.c,
+ src/evalfunc.c, src/message.c, src/globals.h, src/testdir/mnv9.mnv,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1480
+Problem: MNV9: skip expression in search() gives error.
+Solution: use tv_get_bool() eval_expr_to_bool(). (closes #6729)
+Files: src/eval.c, src/typval.c, src/proto/typval.pro,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1481
+Problem: MNV9: line number reported with error may be wrong.
+Solution: Check line number in tests.
+Files: src/testdir/test_mnv9_expr.mnv, src/testdir/mnv9.mnv,
+ src/mnv9execute.c
+
+Patch 8.2.1482
+Problem: MNV9: crash when using a nested lambda.
+Solution: Do not clear the growarray when not evaluating. Correct pointer
+ when getting the next line. (closes #6731)
+Files: src/eval.c, src/scriptfile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1483
+Problem: MNV9: error for using special as number when returning "false"
+ from a popup filter.
+Solution: Use tv_get_bool(). (closes #6733)
+Files: src/popupwin.c
+
+Patch 8.2.1484
+Problem: Flaky failure in assert_fails().
+Solution: Only used fourth argument if there is a third argument.
+Files: src/testing.c
+
+Patch 8.2.1485
+Problem: MNV9: readdirex() expression doesn't accept bool.
+Solution: Accept both -1 and bool. (closes #6737)
+Files: src/filepath.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1486
+Problem: MNV9: readdir() expression doesn't accept bool.
+Solution: Merge with code for readdirex(). (closes #6737)
+Files: src/filepath.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1487
+Problem: Travis: installing snd-dummy is not always useful.
+Solution: Only install snd-dummy on amd64. (Ozaki Kiichi, closes #6738)
+Files: .travis.yml, ci/load-snd-dummy.sh
+
+Patch 8.2.1488
+Problem: Text does not scroll when inserting above first line.
+Solution: Adjust off-by-one error. (Ken Takata, closes #6739)
+Files: src/drawscreen.c, src/testdir/test_display.mnv,
+ src/testdir/dumps/Test_display_scroll_at_topline.dump
+
+Patch 8.2.1489
+Problem: MNV9: error when setting an option with setbufvar().
+Solution: Do not get a number from a string value. (closes #6740)
+Files: src/evalvars.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1490
+Problem: MNV9: using /= with float and number doesn't work.
+Solution: Better support assignment with operator. (closes #6742)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1491
+Problem: MNV9: crash when compiling heredoc lines start with comment.
+Solution: Skip over NULL pointers. Do not remove comment and empty lines
+ when fetching function lines. (closes #6743)
+Files: src/mnv9compile.c, src/scriptfile.c, src/proto/scriptfile.pro,
+ src/structs.h, src/ex_docmd.c, src/proto/ex_docmd.pro,
+ src/ex_cmds.h, src/autocmd.c, src/proto/autocmd.pro,
+ src/ex_getln.c, src/proto/ex_getln.pro, src/userfunc.c,
+ src/proto/userfunc.pro, src/evalfunc.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1492
+Problem: Build failures.
+Solution: Move typedef out of #ifdef. Adjust argument types. Discover
+ America.
+Files: src/structs.h, src/ex_docmd.c
+
+Patch 8.2.1493
+Problem: Not enough test coverage for the spell file handling.
+Solution: Add spell file tests. (Yegappan Lakshmanan, closes #6728)
+Files: src/spellfile.c, src/testdir/test_spellfile.mnv
+
+Patch 8.2.1494
+Problem: Missing change to calling eval_getline().
+Solution: Change last argument.
+Files: src/eval.c
+
+Patch 8.2.1495
+Problem: "make clean" may delete too many files.
+Solution: Do not delete $APPDIR. (closes #6751)
+Files: src/Makefile
+
+Patch 8.2.1496
+Problem: MNV9: cannot use " #" in a mapping.
+Solution: Do not remove a comment with the EX_NOTRLCOM flag. (closes #6746)
+Files: src/ex_docmd.c, src/mnv9compile.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.1497
+Problem: CursorHold test is flaky. (Jakub Kądziołka)
+Solution: Use WaitForAssert() (closes #6754)
+Files: src/testdir/test_autocmd.mnv
+
+Patch 8.2.1498
+Problem: On slow systems tests can be flaky.
+Solution: Use TermWait() instead of term-wait(). (Yegappan Lakshmanan,
+ closes #6756)
+Files: src/testdir/test_digraph.mnv, src/testdir/test_display.mnv,
+ src/testdir/test_popupwin.mnv, src/testdir/test_termcodes.mnv,
+ src/testdir/test_terminal.mnv, src/testdir/test_terminal3.mnv,
+ src/testdir/test_writefile.mnv
+
+Patch 8.2.1499
+Problem: MNV9: error when using "$" with col().
+Solution: Reorder getting the column value. (closes #6744)
+Files: src/eval.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1500
+Problem: MNV9: error when using address without a command.
+Solution: Execute the range itself. (closes #6747)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1501
+Problem: MNV9: concatenating to constant reverses order.
+Solution: Generate constant before option, register and environment
+ variable. (closes #6757)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1502
+Problem: MNV9: can use += with a :let command at script level.
+Solution: Give an error.
+Files: src/evalvars.c, src/testdir/test_mnv9_script.mnv,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1503
+Problem: MNV9: error for an autocmd defined in a :def function in legacy
+ MNV script.
+Solution: Don't check the variable type. (closes #6758)
+Files: src/mnv9script.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1504
+Problem: MNV9: white space checks are only done for a :def function.
+Solution: Also do checks at the script level. Adjust the name of a few
+ error messages.
+Files: src/userfunc.c, src/errors.h, src/dict.c, src/list.c,
+ src/mnv9compile.c, src/mnv9script.c, src/mnv9type.c,
+ src/evalvars.c, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/mnv9.mnv
+
+Patch 8.2.1505
+Problem: Not all file read and writecode is tested.
+Solution: Add a few tests. (Dominique Pellé, closes #6764)
+Files: src/testdir/test_eval_stuff.mnv, src/testdir/test_fnamemodify.mnv,
+ src/testdir/test_functions.mnv
+
+Patch 8.2.1506
+Problem: MNV9: no error when using a number other than 0 or 1 as bool.
+Solution: Check the number is 0 or 1.
+Files: src/errors.h, src/typval.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1507
+Problem: Using malloc() directly.
+Solution: Use ALLOC_ONE(). Remove superfluous typecast. (Hussam al-Homsi,
+ closes #6768)
+Files: src/eval.c, src/memline.c, src/mnvrun.c
+
+Patch 8.2.1508
+Problem: Not all debugger commands covered by tests.
+Solution: Add tests for going up/down in the stack. (Ben Jackson,
+ closes #6765)
+Files: src/testdir/test_debugger.mnv
+
+Patch 8.2.1509
+Problem: Vertical separator is cleared when dragging a popup window using a
+ multi-byte character for the border.
+Solution: Only clear the character before the window if it is using a
+ multi-byte character. (closes #6766)
+Files: src/screen.c
+
+Patch 8.2.1510
+Problem: Using "var" in a :def function may refer to a legacy MNV script
+ variable.
+Solution: Require using "s:" to refer to a legacy MNV script variable.
+ (closes #6771)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1511
+Problem: Putting a string in Visual block mode ignores multi-byte
+ characters.
+Solution: Adjust the column for Visual block mode. (closes #6767)
+Files: src/register.c, src/testdir/test_visual.mnv
+
+Patch 8.2.1512
+Problem: Failure after ternary expression fails.
+Solution: Restore eval_flags. (Yasuhiro Matsumoto, closes #6776)
+Files: src/eval.c, src/testdir/test_mnvscript.mnv,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1513
+Problem: Cannot interrupt shell used for filename expansion. (Dominique
+ Pellé)
+Solution: Do set tmode in mch_delay(). (closes #6770)
+Files: src/mnv.h, src/os_unix.c, src/proto/os_unix.pro, src/term.c,
+ src/channel.c, src/if_cscope.c, src/os_amiga.c, src/ui.c,
+ src/proto/os_amiga.pro, src/os_win32.c, src/proto/os_win32.pro
+
+Patch 8.2.1514
+Problem: Multibyte vertical separator is cleared when dragging a popup
+ window using a multi-byte character for the border.
+Solution: Only clear the character before the window if it is double width.
+ (closes #6766)
+Files: src/screen.c
+
+Patch 8.2.1515
+Problem: MNV9: can create s:var in legacy script but cannot unlet.
+Solution: Allow :unlet for legacy script var.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1516
+Problem: MNV9: error for :exe has wrong line number.
+Solution: Set line number before calling do_cmdline_cmd(). (closes #6774)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1517
+Problem: Cannot easily get the character under the cursor.
+Solution: Add the {chars} argument to strpart().
+Files: runtime/doc/eval.txt, src/evalfunc.c,
+ src/testdir/test_functions.mnv
+
+Patch 8.2.1518
+Problem: MNV9: cannot assign to local option.
+Solution: Skip over "&l:" and "&g:". (closes #6749)
+Files: src/ex_docmd.c, src/proto/ex_docmd.pro, src/testdir/mnv9.mnv,
+ src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1519
+Problem: MNV9: Ex command default range is not set.
+Solution: When range is not given use default. (closes #6779)
+Files: src/ex_docmd.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1520
+Problem: MNV9: CTRL-] used in :def function does not work.
+Solution: Omit count or prepend colon. (closes #6769)
+Files: src/normal.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.1521
+Problem: Reading past end of buffer when reading spellfile. (Yegappan
+ Lakshmanan)
+Solution: Store the byte length and check for it.
+Files: src/spellfile.c, src/spell.h
+
+Patch 8.2.1522
+Problem: Not enough test coverage for the spell file handling.
+Solution: Add spell file tests. (Yegappan Lakshmanan, closes #6763)
+Files: src/testdir/test_spellfile.mnv
+
+Patch 8.2.1523
+Problem: Still not enough test coverage for the spell file handling.
+Solution: Add spell file tests. (Yegappan Lakshmanan, closes #6790)
+Files: src/testdir/test_spellfile.mnv
+
+Patch 8.2.1524
+Problem: No longer get an error for string concatenation with float.
+ (Tsuyoshi Cho)
+Solution: Only convert float for MNV9 script. (closes #6787)
+Files: src/eval.c, src/testdir/test_eval_stuff.mnv
+
+Patch 8.2.1525
+Problem: Messages from tests were not always displayed.
+Solution: Always show messages, the timing is always useful. (Ken Takata,
+ closes #6792)
+Files: src/testdir/Make_dos.mak, src/testdir/Make_ming.mak,
+ src/testdir/Makefile
+
+Patch 8.2.1526
+Problem: Line in testdir Makefile got commented out. (Christian Brabandt)
+Solution: Revert.
+Files: src/testdir/Makefile
+
+Patch 8.2.1527
+Problem: MNV9: cannot use a function name as a function reference at script
+ level.
+Solution: Check if a name is a function name. (closes #6789)
+Files: src/evalvars.c, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1528
+Problem: MNV9: :endif not found after "if false".
+Solution: When skipping still check for a following command. (closes #6797)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1529
+Problem: MNV9: :elseif may be compiled when not needed.
+Solution: Do evaluate the :elseif expression.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1530
+Problem: MNV9: test fails on MS-Windows.
+Solution: Skip Ex command inside "if false".
+Files: src/mnv9compile.c
+
+Patch 8.2.1531
+Problem: MNV9: test still fails on MS-Windows.
+Solution: When skipping expect function to be NULL.
+Files: src/mnv9compile.c
+
+Patch 8.2.1532
+Problem: Compiler warning for conversion of size_t to long.
+Solution: Add type cast.
+Files: src/eval.c
+
+Patch 8.2.1533
+Problem: MNV9: error when passing getreginfo() result to setreg().
+Solution: Use dict_get_bool() for "isunnamed". (closes #6784)
+Files: src/evalfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1534
+Problem: MNV9: type error for argument type is not at call position.
+Solution: Set the context and stack after checking the arguments.
+ (issue #6785)
+Files: src/userfunc.c, src/mnv9execute.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1535
+Problem: It is not possible to specify cell widths of characters.
+Solution: Add setcellwidths().
+Files: runtime/doc/eval.txt, runtime/doc/options.txt,
+ runtime/doc/usr_41.txt, src/evalfunc.c, src/mbyte.c,
+ src/proto/mbyte.pro, src/errors.h, src/testdir/test_utf8.mnv
+
+Patch 8.2.1536
+Problem: Cannot get the class of a character; emoji widths are wrong in
+ some environments.
+Solution: Add charclass(). Update some emoji widths. Add script to check
+ emoji widths.
+Files: Filelist, runtime/doc/eval.txt, runtime/doc/usr_41.txt,
+ src/evalfunc.c, src/mbyte.c, src/proto/mbyte.pro,
+ src/testdir/emoji_list.mnv, src/testdir/test_functions.mnv
+
+Patch 8.2.1537
+Problem: Memory access error when using setcellwidths().
+Solution: Use array and pointers correctly.
+Files: src/mbyte.c, src/errors.h, src/testdir/test_utf8.mnv
+
+Patch 8.2.1538
+Problem: Python: iteration over mnv objects fails to keep reference.
+Solution: Keep a reference for the object. (Paul Ollis, closes #6803,
+ closes #6806)
+Files: src/if_py_both.h, src/testdir/test_python3.mnv
+
+Patch 8.2.1539
+Problem: Using invalid script ID causes a crash.
+Solution: Check the script ID to be valid. (closes #6804)
+Files: src/globals.h, src/evalvars.c, src/profiler.c, src/scriptfile.c,
+ src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1540
+Problem: The user cannot try out emoji character widths.
+Solution: Move the emoji script to the runtime/tools directory.
+Files: Filelist, src/testdir/emoji_list.mnv, runtime/tools/emoji_list.mnv
+
+Patch 8.2.1541
+Problem: MNV9: cannot find function reference for s:Func.
+Solution: Recognize <SNR> prefix. (closes #6805)
+Files: src/userfunc.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1542
+Problem: MNV9: test with invalid SID does not work in the GUI.
+Solution: Skip the test in the GUI.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1543
+Problem: MNV9: test with invalid SID is skipped in the GUI.
+Solution: Read the CTRL-C that feedkeys() put in typeahead.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1544
+Problem: Cannot translate messages in a MNV script.
+Solution: Add gettext(). Try it out for a few messages in the options
+ window.
+Files: Filelist, src/po/Makefile, src/po/README.txt, runtime/optwin.mnv,
+ src/evalfunc.c, src/po/tojavascript.mnv, src/po/fixfilenames.mnv,
+ runtime/doc/eval.txt, runtime/doc/usr_41.txt
+
+Patch 8.2.1545
+Problem: ch_logfile() is unclear about closing when forking.
+Solution: Adjust the log messages.
+Files: src/channel.c, src/os_unix.c
+
+Patch 8.2.1546
+Problem: Build rule for MNV.app is unused.
+Solution: Delete the related build rules.
+Files: src/Makefile
+
+Patch 8.2.1547
+Problem: Various comment problems.
+Solution: Update comments.
+Files: src/arglist.c, src/map.c, src/mbyte.c, src/tag.c, src/undo.c,
+ src/testdir/README.txt, src/testdir/test_put.mnv,
+ src/libvterm/README
+
+Patch 8.2.1548
+Problem: Cannot move position of "%%" in message translations. (Emir Sarı)
+Solution: Improve the check script.
+Files: src/po/check.mnv
+
+Patch 8.2.1549
+Problem: The "r" command fails for keys with modifiers if 'esckeys' is off
+ and modifyOtherKeys is used. (Lauri Tirkkonen)
+Solution: Temporarily disable bracketed paste and modifyOtherKeys if
+ 'esckeys' is off. (closes #6809)
+Files: src/normal.c
+
+Patch 8.2.1550
+Problem: MNV9: bufname('%') gives an error.
+Solution: Only give an error for wrong argument type. (closes #6807)
+Files: src/evalbuffer.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1551
+Problem: MNV9: error for argument type does not mention the number.
+Solution: Pass the argument number to where the error is given.
+Files: src/mnv9type.c, src/proto/mnv9type.pro, src/mnv9compile.c,
+ src/mnv9execute.c, src/mnv9script.c, src/eval.c,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1552
+Problem: Warnings from asan with clang-11. (James McCoy)
+Solution: Avoid using a NULL pointer. (issue #6811)
+Files: src/fold.c
+
+Patch 8.2.1553 (after 8.2.1552)
+Problem: Crash in edit test.
+Solution: Avoid using invalid pointer.
+Files: src/fold.c
+
+Patch 8.2.1554
+Problem: Crash in normal test.
+Solution: Skip adjusting marks if there are no folds.
+Files: src/fold.c
+
+Patch 8.2.1555
+Problem: Not all tests are executed on Github Actions.
+Solution: Copy "src" to "src2" earlier. Recognize "src2" in a couple more
+ places. Add two tests to the list of flaky tests. (Ken Takata,
+ closes #6798)
+Files: .github/workflows/ci-windows.yaml, src/testdir/runtest.mnv,
+ src/testdir/test_python2.mnv, src/testdir/test_python3.mnv
+
+Patch 8.2.1556
+Problem: Cursorline highlighting always overrules sign highlighting.
+Solution: Combine the highlighting, use the priority to decide how.
+ (closes #6812)
+Files: runtime/doc/sign.txt, src/structs.h, src/drawline.c,
+ runtime/pack/dist/opt/termdebug/plugin/termdebug.mnv,
+ src/testdir/test_signs.mnv,
+ src/testdir/dumps/Test_sign_cursor_5.dump,
+ src/testdir/dumps/Test_sign_cursor_6.dump
+
+Patch 8.2.1557
+Problem: Crash in :mnvgrep when started as "mnv -n". (Raul Segura)
+Solution: Check mfp pointer. (Yegappan Lakshmanan, closes #6827)
+Files: src/quickfix.c, src/testdir/test_quickfix.mnv
+
+Patch 8.2.1558
+Problem: Signs test fails.
+Solution: Add missing change to sign.c.
+Files: src/sign.c
+
+Patch 8.2.1559
+Problem: s390x tests work again.
+Solution: re-enable s390x tests. (James McCoy, closes #6829)
+Files: .travis.yml
+
+Patch 8.2.1560
+Problem: Using NULL pointers in some code. (James McCoy)
+Solution: Avoid adding to a NULL pointer. Use byte as unsigned.
+Files: src/fold.c, src/eval.c, src/spellsuggest.c, src/spellfile.c,
+ src/mnv9compile.c
+
+Patch 8.2.1561
+Problem: Using NULL pointers in fold code.
+Solution: Avoid using a NULL pointer. (Dominique Pellé, closes #6831,
+ closes #6831)
+Files: src/fold.c
+
+Patch 8.2.1562
+Problem: MNV9: error when using "%" where a buffer is expected.
+Solution: Add tv_get_buf_from_arg(). (closes #6814)
+Files: src/typval.c, src/proto/typval.pro, src/evalbuffer.c,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1563
+Problem: MNV9: error when using '%" with setbufvar() or getbufvar().
+Solution: Use tv_get_buf_from_arg(). (closes #6816)
+Files: src/evalvars.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1564
+Problem: A few remaining errors from ubsan.
+Solution: Avoid the warnings. (Dominique Pellé, closes #6837)
+Files: src/spellfile.c, src/spellsuggest.c, src/mnvinfo.c
+
+Patch 8.2.1565
+Problem: Spellfile test sometimes fails.
+Solution: Check running into the end of the file.
+Files: src/spellfile.c
+
+Patch 8.2.1566
+Problem: Not all Bazel files are recognized.
+Solution: Add *.bazel and *.BUILD. (closes #6836)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.1567
+Problem: No example to use ubsan with clang.
+Solution: Add example commands. (Dominique Pellé, issue #6811)
+Files: src/Makefile
+
+Patch 8.2.1568
+Problem: prop_find() skips properties in the same line if "skipstart" is
+ used.
+Solution: Use "continue" instead of "break". (closes #6840)
+Files: src/textprop.c, src/testdir/test_textprop.mnv
+
+Patch 8.2.1569
+Problem: MNV9: fixes for functions not tested; failure in getchangelist().
+Solution: Add tests. (closes #6813, closes #6815, closes #6817)
+Files: src/evalfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1570
+Problem: Configure check for dirfd() does not work on HPUX. (Michael Osipov)
+Solution: Use AC_TRY_LINK instead of AC_TRY_COMPILE. (closes #6838)
+Files: src/configure.ac, src/auto/configure, src/fileio.c, src/globals.h
+
+Patch 8.2.1571
+Problem: MNV9: count() third argument cannot be "true".
+Solution: Use tv_get_bool_chk(). (closes #6818)
+Files: src/typval.c, src/list.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1572
+Problem: MNV9: expand() does not take "true" as argument.
+Solution: Use tv_get_bool_chk(). (closes #6819)
+Files: src/evalfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1573
+Problem: MNV9: getreg() does not take "true" as argument.
+Solution: Use tv_get_bool_chk(). (closes #6820)
+Files: src/evalfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1574
+Problem: MNV9: glob() does not take "true" as argument.
+Solution: Use tv_get_bool_chk(). (closes #6821)
+Files: src/filepath.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1575
+Problem: MNV9: globpath() does not take "true" as argument.
+Solution: Use tv_get_bool_chk(). (closes #6821)
+Files: src/filepath.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1576
+Problem: MNV9: index() does not take "true" as argument.
+Solution: Use tv_get_bool_chk(). (closes #6823)
+Files: src/evalfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1577
+Problem: MNV9: hasmapto(), mapcheck() and maparg() do not take "true" as
+ argument.
+Solution: Use tv_get_bool(). (closes #6822, closes #6824)
+Files: src/evalfunc.c, src/map.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1578
+Problem: MNV9: popup_clear() does not take "true" as argument.
+Solution: Use tv_get_bool(). (closes #6826)
+Files: src/popupwin.c, src/testdir/test_popupwin.mnv
+
+Patch 8.2.1579
+Problem: Reports from asan are not optimal.
+Solution: Use clang with ubsan. (James McCoy, closes #6811)
+Files: .travis.yml
+
+Patch 8.2.1580
+Problem: Wildmenu does not work properly.
+Solution: Do not call may_do_incsearch_highlighting() if completion is in
+ progress.
+Files: src/ex_getln.c, src/testdir/test_cmdline.mnv,
+ src/testdir/dumps/Test_wildmenu_1.dump,
+ src/testdir/dumps/Test_wildmenu_2.dump,
+ src/testdir/dumps/Test_wildmenu_3.dump,
+ src/testdir/dumps/Test_wildmenu_4.dump
+
+Patch 8.2.1581
+Problem: Using line() for global popup window doesn't work.
+Solution: Set tabpage to "curtab". (closes #6847)
+Files: src/evalwindow.c, src/testdir/test_popupwin.mnv
+
+Patch 8.2.1582
+Problem: The channel log does not show typed text.
+Solution: Add raw typed text to the log file.
+Files: src/ui.c, src/os_win32.c
+
+Patch 8.2.1583
+Problem: MS-Windows: cannot easily measure code coverage.
+Solution: Add the COVERAGE option. (Ken Takata, closes #6842)
+Files: src/Make_cyg_ming.mak
+
+Patch 8.2.1584
+Problem: MNV9: cannot use "true" for "skipstart" in prop_find().
+Solution: Use dict_get_bool() instead of tv_get_number(). (closes #6852)
+Files: src/textprop.c, src/testdir/test_textprop.mnv
+
+Patch 8.2.1585
+Problem: Messages in errors.h not translated, xgettext on MS-Windows not
+ fully supported.
+Solution: Add errors.h to list of input files. Update MS-Windows makefiles
+ to improve message translations. (Ken Takata, closes #6858)
+Files: src/po/Make_cyg.mak, src/po/Make_ming.mak, src/po/Make_mvc.mak,
+ src/po/Makefile, src/po/README.txt, src/po/fixfilenames.mnv
+
+Patch 8.2.1586
+Problem: :resize command not fully tested.
+Solution: Add a couple of tests. (Dominique Pellé, closes #6857)
+Files: src/testdir/test_window_cmd.mnv
+
+Patch 8.2.1587
+Problem: Loop for handling keys for the command line is too long.
+Solution: Move wild menu handling to separate functions. (Yegappan
+ Lakshmanan, closes #6856)
+Files: src/cmdexpand.c, src/proto/cmdexpand.pro, src/ex_getln.c
+
+Patch 8.2.1588
+Problem: Cannot read back the prompt of a prompt buffer.
+Solution: Add prompt_getprompt(). (Ben Jackson, closes #6851)
+Files: runtime/doc/channel.txt, runtime/doc/eval.txt,
+ runtime/doc/usr_41.txt, src/channel.c, src/edit.c, src/evalfunc.c,
+ src/proto/channel.pro, src/proto/edit.pro,
+ src/testdir/test_prompt_buffer.mnv
+
+Patch 8.2.1589
+Problem: Term_start() options for size are overruled by 'termwinsize'.
+ (Sergey Vlasov)
+Solution: Set 'termwinsize' to the specified size.
+Files: src/terminal.c, src/testdir/test_terminal2.mnv,
+ src/testdir/term_util.mnv
+
+Patch 8.2.1590
+Problem: MNV9: bufnr() doesn't take "true" argument.
+Solution: use tv_get_bool_chk(). (closes #6863)
+Files: src/evalbuffer.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1591
+Problem: Using winheight('.') in tests works but is wrong.
+Solution: Use winheight(0). (issue #6863)
+Files: src/testdir/test_functions.mnv, src/testdir/test_quickfix.mnv
+
+Patch 8.2.1592
+Problem: MNV9: passing "true" to char2nr() fails.
+Solution: Use tv_get_bool_chk(). (closes #6865)
+Files: src/evalfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1593
+Problem: Tests do not check the error number properly.
+Solution: Add a colon after the error number. (closes #6869)
+Files: src/testdir/test_assert.mnv, src/testdir/test_autocmd.mnv,
+ src/testdir/test_backspace_opt.mnv, src/testdir/test_channel.mnv,
+ src/testdir/test_clientserver.mnv, src/testdir/test_cmdline.mnv,
+ src/testdir/test_const.mnv, src/testdir/test_cscope.mnv,
+ src/testdir/test_eval_stuff.mnv, src/testdir/test_functions.mnv,
+ src/testdir/test_global.mnv, src/testdir/test_gui.mnv,
+ src/testdir/test_hlsearch.mnv, src/testdir/test_lambda.mnv,
+ src/testdir/test_let.mnv, src/testdir/test_listdict.mnv,
+ src/testdir/test_move.mnv, src/testdir/test_normal.mnv,
+ src/testdir/test_popupwin.mnv, src/testdir/test_put.mnv,
+ src/testdir/test_quickfix.mnv, src/testdir/test_rename.mnv,
+ src/testdir/test_search.mnv, src/testdir/test_signs.mnv,
+ src/testdir/test_substitute.mnv, src/testdir/test_syntax.mnv,
+ src/testdir/test_tagfunc.mnv, src/testdir/test_tagjump.mnv,
+ src/testdir/test_taglist.mnv, src/testdir/test_terminal.mnv,
+ src/testdir/test_terminal2.mnv, src/testdir/test_textprop.mnv,
+ src/testdir/test_timers.mnv, src/testdir/test_true_false.mnv,
+ src/testdir/test_user_func.mnv, src/testdir/test_mnv9_func.mnv,
+ src/testdir/test_mnv9_script.mnv, src/testdir/test_mnvscript.mnv,
+ src/testdir/test_winbar.mnv, src/testdir/test_winbuf_close.mnv,
+ src/testdir/test_window_cmd.mnv, src/testdir/test_writefile.mnv
+
+Patch 8.2.1594
+Problem: Pull requests on github do not notify a maintainer.
+Solution: Add a CODEOWNERS file with a few initial entries.
+Files: Filelist, .github/CODEOWNERS
+
+Patch 8.2.1595
+Problem: Cannot easily see what MNV sends to the terminal.
+Solution: Write output to the channel log if it contains terminal control
+ sequences. Avoid warnings for tputs() argument.
+Files: src/term.c, src/globals.h, src/edit.c, src/normal.c,
+ src/optionstr.c
+
+Patch 8.2.1596
+Problem: Using win_screenpos('.') in tests works but is wrong.
+Solution: Use win_screenpos(0).
+Files: src/testdir/test_terminal3.mnv
+
+Patch 8.2.1597
+Problem: The channel source file is too big.
+Solution: Move job related code to a new source file.
+Files: Filelist, src/Makefile, src/Make_mvc.mak, src/Make_cyg_ming.mak,
+ src/channel.c, src/proto/channel.pro, src/job.c,
+ src/proto/job.pro, src/proto.h, src/edit.c, src/proto/edit.pro,
+ src/globals.h, src/configure.ac, src/auto/configure
+
+Patch 8.2.1598
+Problem: Starting a hidden terminal resizes the current window.
+Solution: Do not resize the current window for a hidden terminal.
+ (closes #6872)
+Files: src/terminal.c, src/testdir/test_terminal2.mnv
+
+Patch 8.2.1599
+Problem: Missing line end when skipping a long line with :cgetfile.
+Solution: Fix off-by-one error. (closes #6870)
+Files: src/quickfix.c, src/testdir/test_quickfix.mnv
+
+Patch 8.2.1600
+Problem: MNV9: cannot use "true" with deepcopy().
+Solution: Use tv_get_bool_chk(). (closes #6867)
+Files: src/evalfunc.c, src/testdir/test_mnv9_func.mnv,
+ src/testdir/test_listdict.mnv
+
+Patch 8.2.1601
+Problem: MNV9: cannot use "true" with garbagecollect().
+Solution: Use tv_get_bool(). (closes #6871)
+Files: src/evalfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1602
+Problem: MNV9: cannot use "true" with getbufinfo().
+Solution: Use dict_get_bool(). (closes #6873)
+Files: src/evalbuffer.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1603
+Problem: MNV9: cannot use "true" with getchar().
+Solution: use tv_get_bool_chk(). (closes #6874)
+Files: src/getchar.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1604
+Problem: MNV9: cannot use "true" with getcompletion().
+Solution: use tv_get_bool_chk(). (closes #6875)
+Files: src/cmdexpand.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1605
+Problem: Default maintainer on github is wrong.
+Solution: Use Bram's account.
+Files: .github/CODEOWNERS
+
+Patch 8.2.1606
+Problem: MNV9: cannot use "true" with has().
+Solution: Use tv_get_bool(). (closes #6876)
+Files: src/evalfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1607
+Problem: MNV9: getchar() test fails on MS-Windows.
+Solution: First consume any available input.
+Files: src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1608
+Problem: MNV9: getchar() test fails with GUI.
+Solution: Avoid that getchar(0) gets stuck on K_IGNORE.
+Files: src/getchar.c
+
+Patch 8.2.1609
+Problem: MNV9: test fails when build without +channel.
+Solution: Add check for +channel. (closes #6879)
+Files: src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1610
+Problem: MNV9: cannot pass "true" to list2str() and str2list().
+Solution: Use tv_get_bool_chk(). (closes #6877)
+Files: src/evalfunc.c, src/list.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1611
+Problem: MNV9: cannot pass "true" to nr2char().
+Solution: use tv_get_bool_chk(). (closes #6878)
+Files: src/evalfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1612
+Problem: MNV9: cannot pass "true" to prop_remove().
+Solution: Use dict_get_bool(). (closes #6853)
+Files: src/textprop.c, src/testdir/test_textprop.mnv
+
+Patch 8.2.1613
+Problem: MNV9: cannot pass "true" to prop_type_add().
+Solution: Use tv_get_bool(). (closes #6850)
+Files: src/textprop.c, src/testdir/test_textprop.mnv
+
+Patch 8.2.1614
+Problem: MNV9: cannot pass "true" to searchcount().
+Solution: Use tv_get_bool_chk(). (closes #6854)
+Files: src/search.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1615
+Problem: MNV9: cannot pass "true" to searchdecl().
+Solution: use tv_get_bool_chk(). (closes #6881)
+Files: src/evalfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1616
+Problem: MNV9: cannot pass "true" to synID().
+Solution: Use tv_get_bool_chk(). (closes #6860)
+Files: src/evalfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1617
+Problem: MNV9: cannot pass "true" to win_splitmove().
+Solution: Use dict_get_bool(). (closes #6862) Alphabetize test functions.
+Files: src/evalwindow.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1618
+Problem: MNV9: cannot pass "true" to setloclist().
+Solution: Use dict_get_bool(). (closes #6882)
+Files: src/quickfix.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1619
+Problem: MNV9: cannot pass "true" to spellsuggest().
+Solution: Use tv_get_bool_chk(). (closes #6883)
+Files: src/evalfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1620
+Problem: searchcount() test fails.
+Solution: Restore default flag value.
+Files: src/search.c
+
+Patch 8.2.1621
+Problem: Crash when using submatch(0, 1) in substitute().
+Solution: Increment reference count. (closes #6887)
+Files: src/regexp.c, src/testdir/test_substitute.mnv
+
+Patch 8.2.1622
+Problem: Loop to handle keys for the command line is too long.
+Solution: Move code to functions. (Yegappan Lakshmanan, closes #6880)
+Files: src/ex_getln.c
+
+Patch 8.2.1623
+Problem: MNV9: using :call where it is not needed.
+Solution: Remove :call. (closes #6892)
+Files: src/testdir/test_maparg.mnv, src/testdir/test_textprop.mnv,
+ src/testdir/test_mnv9_disassemble.mnv,
+ src/testdir/test_mnv9_expr.mnv, src/testdir/test_mnv9_func.mnv,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1624
+Problem: MNV9: cannot pass "true" to split(), str2nr() and strchars().
+Solution: Use tv_get_bool_chk(). (closes #6884, closes #6885, closes #6886)
+Files: src/evalfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1625
+Problem: Compiler warning for use of fptr_T.
+Solution: Make the type less strict.
+Files: src/regexp.c
+
+Patch 8.2.1626
+Problem: Test for strchars() fails with different error number.
+Solution: Adjust the error number.
+Files: src/testdir/test_utf8.mnv
+
+Patch 8.2.1627
+Problem: MNV9: cannot pass "true" to submatch(), term_gettty() and
+ term_start()
+Solution: Use tv_get_bool_chk(). (closes #6888, closes #6890, closes #6889)
+Files: src/evalfunc.c, src/terminal.c, src/job.c,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1628
+Problem: MNV9: cannot pass "true" to timer_paused().
+Solution: Use tv_get_bool(). (closes #6891)
+Files: src/time.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1629
+Problem: Test fails without terminal feature.
+Solution: Check for terminal feature.
+Files: src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1630
+Problem: Terminal test fails.
+Solution: Correct argument to term_start(). Correct error number.
+Files: src/testdir/test_terminal.mnv, src/testdir/test_terminal2.mnv
+
+Patch 8.2.1631
+Problem: test_fails() does not check the context of the line number.
+Solution: Use another argument to specify the context of the line number.
+Files: runtime/doc/testing.txt, runtime/doc/eval.txt,
+ src/testdir/test_mnv9_func.mnv, src/testing.c, src/globals.h,
+ src/evalfunc.c, src/message.c
+
+Patch 8.2.1632
+Problem: Not checking the context of test_fails().
+Solution: Add the line number and context arguments. Give error if
+ assert_fails() argument types are wrong.
+Files: src/testing.c, src/errors.h, src/testdir/test_assert.mnv,
+ src/testdir/test_mnv9_func.mnv, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1633
+Problem: Some error messages are internal but do not use iemsg().
+Solution: Use iemsg(). (Dominique Pellé, closes #6894)
+Files: src/regexp.c, src/regexp_bt.c, src/regexp_nfa.c
+
+Patch 8.2.1634
+Problem: Loop to handle keys for the command line is too long.
+Solution: Move a few more parts to separate functions. (Yegappan Lakshmanan,
+ closes #6895)
+Files: src/ex_getln.c, src/testdir/test_cmdline.mnv
+
+Patch 8.2.1635
+Problem: No digraph for 0x2022 BULLET.
+Solution: Use "oo". (Hans Ginzel, closes #6904)
+Files: src/digraph.c, runtime/doc/digraph.txt
+
+Patch 8.2.1636
+Problem: Get stuck if a popup filter causes an error.
+Solution: Check whether the function can be called and does not cause an
+ error. (closes #6902)
+Files: src/structs.h, src/popupwin.c, src/testdir/test_popupwin.mnv
+ src/testdir/dumps/Test_popupwin_wrong_name.dump,
+ src/testdir/dumps/Test_popupwin_three_errors_1.dump,
+ src/testdir/dumps/Test_popupwin_three_errors_2.dump
+
+Patch 8.2.1637
+Problem: MNV9: :put ={expr} does not work inside :def function.
+Solution: Add ISN_PUT. (closes #6397)
+Files: src/mnv9.h, src/mnv9compile.c, src/mnv9execute.c, src/register.c,
+ src/proto/register.pro, src/edit.c, src/ex_docmd.c, src/mouse.c,
+ src/normal.c, src/testdir/test_mnv9_cmd.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.1638
+Problem: Leaking memory when popup filter function can't be called.
+Solution: Don't return too soon.
+Files: src/popupwin.c
+
+Patch 8.2.1639
+Problem: Options window cannot be translated.
+Solution: Get the translation for "local to" texts once and use them in many
+ places. Fix that 'whichwrap' is not a local option. (issue #6800)
+Files: runtime/optwin.mnv
+
+Patch 8.2.1640
+Problem: Amiga: missing header for getgrgid().
+Solution: Add the grp.h header. (Ola Söder, closes #6906)
+Files: src/os_amiga.h
+
+Patch 8.2.1641
+Problem: MNV9: cannot use 0 or 1 where a bool is expected.
+Solution: Allow using 0 and 1 for a bool type. (closes #6903)
+Files: src/mnv9compile.c, src/mnv9type.c, src/proto/mnv9type.pro,
+ src/structs.h, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1642
+Problem: Options test fails.
+Solution: Correct call to OptionG().
+Files: runtime/optwin.mnv
+
+Patch 8.2.1643
+Problem: MNV9: :defcompile compiles dead functions.
+Solution: Skip over dead functions.
+Files: src/userfunc.c
+
+Patch 8.2.1644
+Problem: MNV9: cannot assign 1 and 0 to bool at script level.
+Solution: Add the TTFLAG_BOOL_OK flag to the type. Fix name of test
+ function.
+Files: src/mnv9type.c, src/testdir/test_mnv9_script.mnv,
+ src/testdir/mnv9.mnv, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1645
+Problem: GTK3: icons become broken images when resized.
+Solution: Use gtk_image_new_from_icon_name(). (closes #6916)
+ Fix compiler warnings.
+Files: src/gui_gtk_x11.c
+
+Patch 8.2.1646
+Problem: Amiga: Unnecessary #include.
+Solution: Remove the #include. (Ola Söder, closes #6908)
+Files: src/version.c
+
+Patch 8.2.1647
+Problem: MNV9: result of expression with && and || cannot be assigned to a
+ bool variable.
+Solution: Add the TTFLAG_BOOL_OK flag and convert the value if needed.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.1648
+Problem: Amiga: no common build file for Amiga (-like) systems.
+Solution: Turn Make_morph.mak into Make_ami.mak. (Ola Söder, closes #6805)
+Files: Filelist, src/Make_ami.mak, src/Make_morph.mak, src/INSTALLami.txt
+
+Patch 8.2.1649
+Problem: GTK3: using old file chooser.
+Solution: Use native file chooser on GTK 3.20 and above. (Yogeshwar
+ Velingker, closes #6909)
+Files: src/gui_gtk.c
+
+Patch 8.2.1650
+Problem: MNV9: result of && and || expression cannot be assigned to a bool
+ at the script level.
+Solution: Add the VAR_BOOL_OK flag. Convert to bool when needed.
+Files: src/structs.h, src/mnv9type.c, src/proto/mnv9type.pro,
+ src/mnv9script.c, src/evalvars.c, src/eval.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1651
+Problem: Spellfile code not completely tested.
+Solution: Add a few more test cases. (Yegappan Lakshmanan, closes #6918)
+Files: src/testdir/test_spellfile.mnv
+
+Patch 8.2.1652
+Problem: Cannot translate lines in the options window.
+Solution: Use the AddOption() function to split descriptions where indicated
+ by a line break. (issue #6800)
+Files: runtime/optwin.mnv
+
+Patch 8.2.1653
+Problem: Expand('<stack>') does not include the final line number.
+Solution: Add the line number. (closes #6927)
+Files: src/mnv.h, src/scriptfile.c, src/proto/scriptfile.pro,
+ src/debugger.c, src/ex_docmd.c, src/ex_eval.c, src/message.c,
+ src/testing.c, src/testdir/test_expand_func.mnv
+
+Patch 8.2.1654
+Problem: When job writes to hidden buffer current window has display
+ errors. (Johnny McArthur)
+Solution: Use aucmd_prepbuf() instead of switch_to_win_for_buf().
+ (closes #6925)
+Files: src/channel.c
+
+Patch 8.2.1655
+Problem: Cannot build with Strawberry Perl 5.32.0.
+Solution: Use Perl_sv_2pvbyte_flags. (closes #6921)
+Files: src/if_perl.xs
+
+Patch 8.2.1656
+Problem: MNV9: callstack wrong if :def function calls :def function.
+Solution: Set the line number before calling. (closes #6914)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1657
+Problem: MNV9: no proper error for nested ":def!".
+Solution: Check for "!". (closes #6920)
+Files: src/errors.h, src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1658
+Problem: Expand('<stack>') has trailing "..".
+Solution: Remove the "..". (closes #6927)
+Files: src/scriptfile.c, src/testdir/test_expand_func.mnv
+
+Patch 8.2.1659
+Problem: Spellfile code not completely tested.
+Solution: Add a few more test cases. (Yegappan Lakshmanan, closes #6929)
+Files: src/testdir/test_spell.mnv, src/testdir/test_spellfile.mnv
+
+Patch 8.2.1660
+Problem: Assert functions require passing expected result as the first
+ argument, which isn't obvious.
+Solution: Use a method, as in "runtest()->assert_equal(expected)".
+Files: src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1661
+Problem: Cannot connect to 127.0.0.1 for host with only IPv6 addresses.
+Solution: pass AI_V4MAPPED flag to getaddrinfo. (Filipe Brandenburger,
+ closes #6931)
+Files: src/channel.c
+
+Patch 8.2.1662
+Problem: :mksession does not restore shared terminal buffer properly.
+Solution: Keep a hashtab with terminal buffers. (Rob Pilling, closes #6930)
+Files: src/hashtab.c, src/proto/terminal.pro, src/session.c,
+ src/terminal.c, src/testdir/test_mksession.mnv
+
+Patch 8.2.1663
+Problem: Options window entries cannot be translated.
+Solution: Use AddOption() for all explanations. (closes #6800)
+Files: runtime/optwin.mnv
+
+Patch 8.2.1664
+Problem: Memory leak when using :mkview with a terminal buffer.
+Solution: Don't use a hastab for :mkview. (Rob Pilling, closes #6935)
+Files: src/session.c, src/terminal.c, src/testdir/test_mksession.mnv
+
+Patch 8.2.1665
+Problem: Cannot do fuzzy string matching.
+Solution: Add matchfuzzy(). (Yegappan Lakshmanan, closes #6932)
+Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/proto/search.pro, src/search.c, src/testdir/test_functions.mnv
+
+Patch 8.2.1666
+Problem: The initial value of 'backupskip' can have duplicate items.
+Solution: Remove duplicates, like when it is set later. (Tom Ryder,
+ closes #6940)
+Files: src/option.c, src/testdir/test_options.mnv
+
+Patch 8.2.1667
+Problem: Local function name cannot shadow a global function name.
+Solution: Ignore global functions when checking a script-local or scoped
+ function name. (closes #6926)
+Files: src/mnv9compile.c, src/userfunc.c, src/proto/userfunc.pro,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1668
+Problem: MNV9: not accepting 0 or 1 as bool when type is any.
+Solution: Convert the type with the CHECKTYPE instruction. (closes #6913)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1669
+Problem: MNV9: memory leak when storing a value fails.
+Solution: Free the value when not storing it.
+Files: src/evalvars.c
+
+Patch 8.2.1670
+Problem: A couple of gcc compiler warnings.
+Solution: Initialize local variables. (Dominique Pellé, closes #6944)
+Files: src/memline.c, src/option.c
+
+Patch 8.2.1671
+Problem: MNV9: stray error for missing white space.
+Solution: Do not skip over white space after member. (closes #6917)
+Files: src/eval.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1672
+Problem: v_lock is used when it is not initialized. (Yegappan Lakshmanan)
+Solution: Initialize the typval in eval1().
+Files: src/eval.c
+
+Patch 8.2.1673
+Problem: complete_info() selected index has an invalid value. (Ben Jackson)
+Solution: Set the index when there is only one match. (closes #6945)
+ Add test for complete_info().
+Files: src/insexpand.c, src/testdir/test_ins_complete.mnv
+
+Patch 8.2.1674
+Problem: MNV9: internal error when using variable that was not set.
+Solution: Give a meaningful error. (closes #6937)
+Files: src/mnv9script.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1675
+Problem: MinGW: testdir makefile deletes non-existing file.
+Solution: Use another way to delete the output file if it already exists.
+ (Michael Soyka)
+Files: src/testdir/Make_ming.mak
+
+Patch 8.2.1676
+Problem: Compiler warnings for function typecast.
+Solution: Add an intermediate cast to "void *".
+Files: src/os_unix.c
+
+Patch 8.2.1677
+Problem: Memory access errors when calling setloclist() in an autocommand.
+Solution: Give an error if the list was changed unexpectedly. (closes #6946)
+Files: src/quickfix.c, src/testdir/test_quickfix.mnv
+
+Patch 8.2.1678
+Problem: Crash when using ":set" after ":ownsyntax". (Dhiraj Mishra)
+Solution: Make sure 'spelloptions' is not NULL. (closes #6950)
+Files: src/syntax.c, src/testdir/test_syntax.mnv
+
+Patch 8.2.1679
+Problem: MNV9: ":*" is not recognized as a range.
+Solution: Move recognizing "*" into skip_range(). (closes #6938)
+Files: src/ex_docmd.c, src/proto/ex_docmd.pro, src/cmdexpand.c,
+ src/ex_getln.c, src/userfunc.c, src/mnv9compile.c,
+ src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.1680
+Problem: MNV9: line number for compare error is wrong.
+Solution: Set SOURCING_LNUM. (closes #6936)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1681
+Problem: MNV9: unnecessary :call commands in tests.
+Solution: Remove the commands. (issue #6936)
+Files: src/testdir/test_mnv9_func.mnv, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1682
+Problem: MNV9: const works in an unexpected way.
+Solution: ":const" only disallows changing the variable, not the value.
+ Make "list[0] = 9" work at the script level.
+Files: src/mnv9compile.c, src/evalvars.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1683
+Problem: MNV9: assignment test fails.
+Solution: Include changes to find Ex command.
+Files: src/ex_docmd.c
+
+Patch 8.2.1684
+Problem: "gF" does not use line number after file in Visual mode.
+Solution: Look for ":123" after the Visual area. (closes #6952)
+Files: src/findfile.c, src/testdir/test_gf.mnv
+
+Patch 8.2.1685
+Problem: MNV9: cannot declare a constant value.
+Solution: Introduce ":const!".
+Files: runtime/doc/mnv9.txt, src/ex_cmds.h, src/mnv9compile.c,
+ src/mnv9.h, src/mnv9execute.c, src/evalvars.c,
+ src/proto/evalvars.pro, src/errors.h, src/mnv.h, src/eval.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1686
+Problem: MNV9: "const!" not sufficiently tested.
+Solution: Add a few more test cases. Fix type checking.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1687
+Problem: MNV9: out of bounds error.
+Solution: Check that cmdidx is not negative.
+Files: src/mnv9compile.c
+
+Patch 8.2.1688
+Problem: Increment/decrement removes text property.
+Solution: Insert the new number before deleting the old one. (closes #6962)
+Files: src/ops.c, src/testdir/test_textprop.mnv
+
+Patch 8.2.1689
+Problem: 'colorcolumn' doesn't show in indent.
+Solution: Also draw the column when draw_state is WL_BRI or WL_SBR.
+ (Alexey Demin, closes #6948, closes #6619)
+Files: src/drawline.c, src/testdir/dumps/Test_colorcolumn_2.dump,
+ src/testdir/dumps/Test_colorcolumn_3.dump,
+ src/testdir/test_highlight.mnv
+
+Patch 8.2.1690
+Problem: Text properties not adjusted for "I" in Visual block mode.
+Solution: Call inserted_bytes(). (closes #6961)
+Files: src/ops.c, src/change.c, src/proto/change.pro,
+ src/testdir/test_textprop.mnv
+
+Patch 8.2.1691
+Problem: MNV9: list<any> is not accepted where list<number> is expected.
+Solution: Add functions to allocate and free a type_T, use it in
+ ISN_CHECKTYPE. (closes #6959)
+Files: src/mnv9.h, src/globals.h, src/mnv9compile.c, src/mnv9execute.c,
+ src/mnv9type.c, src/proto/mnv9type.pro, src/errors.h,
+ src/evalfunc.c, src/testdir/test_mnv9_disassemble.mnv,
+ src/testdir/test_mnv9_expr.mnv, src/testdir/test_mnv9_func.mnv,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1692
+Problem: Build fails because TTFLAG_STATIC is missing.
+Solution: Include missing change.
+Files: src/structs.h
+
+Patch 8.2.1693
+Problem: "hi def" does not work for cleared highlight.
+Solution: Check the "sg_cleared" flag. (Maxim Kim, closes #6956,
+ closes #4405)
+Files: src/highlight.c, src/testdir/test_highlight.mnv
+
+Patch 8.2.1694
+Problem: Compiler warning for loss if data.
+Solution: Add typecast.
+Files: src/ops.c
+
+Patch 8.2.1695
+Problem: MNV9: crash when using varargs type "any".
+Solution: Check if uf_va_type is &t_any. (closes #6957)
+Files: src/mnv9compile.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1696
+Problem: Unused (duplicate) macros.
+Solution: Remove the macros.
+Files: src/spell.c
+
+Patch 8.2.1697
+Problem: Inconsistent capitalization of error messages.
+Solution: Always start with a capital.
+Files: src/errors.h, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_func.mnv, src/testdir/test_mnv9_script.mnv,
+ src/testdir/test_assert.mnv
+
+Patch 8.2.1698
+Problem: Cannot lock a variable in legacy MNV script like in MNV9.
+Solution: Make ":lockvar 0" work.
+Files: runtime/doc/eval.txt, src/evalvars.c, src/proto/evalvars.pro,
+ src/dict.c, src/eval.c, src/list.c, src/typval.c, src/userfunc.c,
+ src/testdir/test_const.mnv, src/testdir/test_listdict.mnv
+
+Patch 8.2.1699
+Problem: Build failure due to missing error message.
+Solution: Add error message.
+Files: src/errors.h
+
+Patch 8.2.1700
+Problem: MNV9: try/catch causes wrong value to be returned.
+Solution: Reset tcd_return. (closes #6964)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1701
+Problem: MNV9: sort("i") does not work.
+Solution: Don't try getting a number for a string argument. (closes #6958)
+Files: src/list.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1702
+Problem: Crash when using undo after deleting folded lines.
+Solution: Check for NULL pointer. (closes #6968)
+Files: src/fold.c, src/testdir/test_fold.mnv
+
+Patch 8.2.1703
+Problem: ":highlight clear" does not restore default link.
+Solution: Remember the default link and restore it. (Antony Scriven,
+ closes #6970, closes #4405)
+Files: runtime/doc/syntax.txt, src/highlight.c,
+ src/testdir/test_highlight.mnv
+
+Patch 8.2.1704
+Problem: MNV9: crash in for loop when autoload script has an error.
+Solution: Reset suppress_errthrow. Check for NULL list. (closes #6967)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1705
+Problem: "verbose hi Name" reports incorrect info after ":hi clear".
+Solution: Store the script context. (Antony Scriven, closes #6975)
+Files: src/highlight.c, src/testdir/test_highlight.mnv
+
+Patch 8.2.1706
+Problem: MNV9: crash after running into the "Multiple closures" error.
+Solution: When a function fails still update any closures. (closes #6973)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1707
+Problem: Small inconsistency in highlight test.
+Solution: Use one argument for :execute. (Antony Scriven, #6975)
+Files: src/testdir/test_highlight.mnv
+
+Patch 8.2.1708
+Problem: MNV9: error message for function has unprintable characters.
+Solution: use printable_func_name(). (closes #6965)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1709
+Problem: MNV9: memory leak when using multiple closures.
+Solution: Free the partial.
+Files: src/mnv9execute.c
+
+Patch 8.2.1710
+Problem: MNV9: list of list type can be wrong.
+Solution: Use VAR_UNKNOWN for empty list. Recognize VAR_UNKNOWN when
+ looking for a common type. (closes #6979)
+Files: src/mnv9type.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1711
+Problem: MNV9: leaking memory when using partial.
+Solution: Do delete the function even when it was compiled.
+Files: src/mnv9compile.c, src/proto/mnv9compile.pro, src/userfunc.c,
+ src/mnv9execute.c
+
+Patch 8.2.1712
+Problem: MNV9: leaking memory when calling a lambda.
+Solution: Decrement function reference from ISN_DCALL.
+Files: src/mnv9compile.c, src/userfunc.c, src/proto/userfunc.pro
+
+Patch 8.2.1713
+Problem: Motif GUI: crash when setting menu colors. (Andrzej Bylicki)
+Solution: Add {} to make "n" incremented correctly. (closes #6989,
+ closes #5948)
+Files: src/gui_motif.c
+
+Patch 8.2.1714
+Problem: Text properties corrupted with substitute command. (Filipe
+ Brandenburger)
+Solution: Get the changed line again after using u_savesub(). (closes #6984)
+Files: src/textprop.c, src/testdir/test_textprop.mnv
+
+Patch 8.2.1715
+Problem: Motif GUI: commented out code missed {}.
+Solution: Add {} and reenable the code. (similar to #6989)
+Files: src/gui_motif.c
+
+Patch 8.2.1716
+Problem: Options window has duplicate translations.
+Solution: Make one entry for "global or local to buffer". Fix wrong text.
+ (closes #6983)
+Files: runtime/optwin.mnv
+
+Patch 8.2.1717
+Problem: MS-Windows installer doesn't have Russian translations.
+Solution: Add Russian translations. (closes #6985)
+Files: nsis/gmnv.nsi, nsis/lang/russian.nsi
+
+Patch 8.2.1718
+Problem: MNV9: :def function disallows "firstline" and "lastline" argument
+ names for no good reason.
+Solution: Don't check the arguments for a :def function. (closes #6986)
+Files: src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1719
+Problem: MNV9: no error if comma is missing in between arguments.
+Solution: Give an error message.
+Files: src/errors.h, src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1720
+Problem: MNV9: memory leak with heredoc that isn't executed. (Dominique
+ Pellé)
+Solution: Don't clear the list items. (closes #6991)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1721
+Problem: MS-Windows installer doesn't work.
+Solution: Write "Russian" in ASCII. (closes #6995, see #6985).
+Files: nsis/lang/russian.nsi
+
+Patch 8.2.1722
+Problem: MNV9: cannot assign a lambda to a variable of type function.
+Solution: Allow for assigning a partial to a variable of type function.
+ (Naruhiko Nishino, closes #6996)
+Files: src/mnv9type.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1723
+Problem: MNV9: Variable argument name cannot start with underscore.
+Solution: Use eval_isnamec1(). (closes #6988)
+Files: src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1724
+Problem: MNV9: assignment tests spread out.
+Solution: Create new test file for assignment tests.
+Files: src/testdir/test_mnv9_assign.mnv, src/testdir/test_mnv9_cmd.mnv,
+ src/testdir/test_mnv9_script.mnv, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/Make_all.mak
+
+Patch 8.2.1725
+Problem: Not all Pascal files are recognized.
+Solution: Add filetype patterns. (Doug Kearns)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.1726
+Problem: Fuzzy matching only works on strings.
+Solution: Support passing a dict. Add matchfuzzypos() to also get the match
+ positions. (Yegappan Lakshmanan, closes #6947)
+Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/proto/search.pro, src/search.c, src/testdir/Make_all.mak,
+ src/testdir/test_functions.mnv, src/testdir/test_matchfuzzy.mnv
+
+Patch 8.2.1727
+Problem: A popup created with "cursorline" will ignore "firstline".
+Solution: When both "cursorline" and "firstline" are present put the cursor
+ on "firstline". (closes #7000) Add the "winid" argument to
+ getcurpos().
+Files: runtime/doc/eval.txt, src/evalfunc.c, src/popupwin.c,
+ src/evalwindow.c, src/testdir/test_popupwin.mnv,
+ src/testdir/test_functions.mnv
+
+Patch 8.2.1728
+Problem: Compiler warning for using uninitialized variable. (John Marriott)
+Solution: Initialize "neighbor".
+Files: src/search.c
+
+Patch 8.2.1729
+Problem: Endless loop when ":normal" feeds popup window filter.
+Solution: Add the ex_normal_busy_done flag.
+Files: src/globals.h, src/getchar.c, src/evalfunc.c, src/ex_docmd.c,
+ src/menu.c, src/testdir/test_popupwin.mnv,
+ src/testdir/dumps/Test_popupwin_normal_cmd.dump
+
+Patch 8.2.1730
+Problem: MNV9: cannot use member of unknown type.
+Solution: When type is unknown use "any". (closes #6997)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.1731
+Problem: MNV9: cannot use += to append to empty NULL list.
+Solution: Copy the list instead of extending it. (closes #6998)
+Files: src/eval.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.1732
+Problem: Stuck when win_execute() for a popup causes an error.
+Solution: Disable the filter callback on error. (issue #6999)
+Files: src/popupwin.c, src/testdir/term_util.mnv,
+ src/testdir/test_popupwin.mnv,
+ src/testdir/dumps/Test_popupwin_win_execute.dump
+
+Patch 8.2.1733
+Problem: MNV9: memory leaks when using nested function.
+Solution: Free function when compilation fails.
+Files: src/mnv9compile.c
+
+Patch 8.2.1734
+Problem: MNV9: cannot use a funcref for a closure twice.
+Solution: Instead of putting the funcref on the stack use a growarray on the
+ execution context.
+Files: src/mnv9.h, src/mnv9compile.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_func.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.1735
+Problem: Github actions appear to timeout too soon.
+Solution: use "timeout" instead of "ping".
+Files: .github/workflows/ci-windows.yaml
+
+Patch 8.2.1736
+Problem: Failure to compile a pattern not tested much.
+Solution: Add tests where a pattern fails to compile. (Yegappan Lakshmanan,
+ closes #7004)
+Files: src/testdir/gen_opt_test.mnv, src/testdir/test_arglist.mnv,
+ src/testdir/test_autocmd.mnv, src/testdir/test_buffer.mnv,
+ src/testdir/test_checkpath.mnv, src/testdir/test_cmdline.mnv,
+ src/testdir/test_debugger.mnv, src/testdir/test_functions.mnv,
+ src/testdir/test_history.mnv, src/testdir/test_listdict.mnv,
+ src/testdir/test_options.mnv, src/testdir/test_search_stat.mnv,
+ src/testdir/test_sort.mnv, src/testdir/test_substitute.mnv,
+ src/testdir/test_syntax.mnv, src/testdir/test_tagjump.mnv,
+ src/testdir/test_user_func.mnv
+
+Patch 8.2.1737
+Problem: Cursor line highlight in popup window is not always updated.
+Solution: Check if the cursor has moved. (closes #7010)
+Files: src/popupwin.c, src/testdir/test_popupwin.mnv
+ src/testdir/dumps/Test_popupwin_win_execute_cursorline.dump
+
+Patch 8.2.1738
+Problem: Mac: str2float() recognizes comma instead of decimal point.
+Solution: Set LC_NUMERIC to "C". (closes #7003)
+Files: src/os_mac_conv.c
+
+Patch 8.2.1739
+Problem: MNV9: crash when compiling a manually defined function. (Antony
+ Scriven)
+Solution: Check that the script ID is positive. (closes #7012)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1740
+Problem: Test fails without the terminal feature.
+Solution: Skip test if the terminal feature is not available.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1741
+Problem: pathshorten() only supports using one character.
+Solution: Add an argument to control the length. (closes #7006)
+Files: runtime/doc/eval.txt, src/evalfunc.c, src/filepath.c,
+ src/proto/filepath.pro, src/testdir/test_functions.mnv
+
+Patch 8.2.1742
+Problem: Test still fails without the terminal feature.
+Solution: Put check for terminal feature in separate function.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1743
+Problem: Cannot build without the eval feature.
+Solution: Move shorten_dir outside of #ifdef.
+Files: src/filepath.c
+
+Patch 8.2.1744
+Problem: MNV9: using ":const!" is weird.
+Solution: Use "var" - "final" - "const" like Dart. "let" still works for
+ now.
+Files: runtime/doc/mnv9.txt, src/ex_cmds.h, src/errors.h, src/evalvars.c,
+ src/proto/evalvars.pro, src/cmdexpand.c, src/eval.c,
+ src/ex_docmd.c, src/mnv9compile.c, src/mnv9execute.c,
+ src/mnv9script.c, src/mnv.h, src/ex_cmdidxs.h,
+ src/testdir/test_mnv9_assign.mnv, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1745
+Problem: Tiny version doesn't build.
+Solution: Add dummy ex_var() function.
+Files: src/ex_docmd.c
+
+Patch 8.2.1746
+Problem: MNV9: Cannot use "fina" for "finally". (Naruhiko Nishino)
+Solution: Specifically check for "fina". (closes #7020)
+Files: src/ex_docmd.c, src/testdir/test_trycatch.mnv,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1747
+Problem: Result of expand() unexpectedly depends on 'completeslash'.
+Solution: Temporarily reset 'completeslash'. (Yasuhiro Matsumoto,
+ closes #7021)
+Files: src/evalfunc.c, src/testdir/test_ins_complete.mnv
+
+Patch 8.2.1748
+Problem: Closing split window in other tab may cause a crash.
+Solution: Set tp_curwin properly. (Rob Pilling, closes #7018)
+Files: src/window.c, src/testdir/test_winbuf_close.mnv
+
+Patch 8.2.1749
+Problem: MNV9: crash when closure fails in nested function.
+Solution: Handle function returns before dereferencing remaining closures.
+ (closes #7008)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1750
+Problem: Setting firstline with popup_setoptions() fails if cursorline is
+ set.
+Solution: Use apply_options(). Update the popup before applying "zz".
+ (closes #7010)
+Files: src/popupwin.c, src/proto/popupwin.pro, src/move.c,
+ src/testdir/test_popupwin.mnv,
+ src/testdir/dumps/Test_popupwin_win_execute_cursorline.dump,
+ src/testdir/dumps/Test_popupwin_set_firstline_1.dump,
+ src/testdir/dumps/Test_popupwin_set_firstline_2.dump
+
+Patch 8.2.1751
+Problem: Using 2 where bool is expected may throw an error.
+Solution: Make this backwards compatible.
+Files: src/typval.c, src/evalfunc.c, src/testdir/test_search.mnv,
+ src/testdir/test_terminal2.mnv
+
+Patch 8.2.1752
+Problem: GTK GUI: cannot map alt-? with <A-?>. (Ingo Karkat)
+Solution: Adjust the characters for which the shift modifier is removed.
+ (closes #7016) Make Motif and Win32 use the same function as GTK.
+Files: src/misc2.c, src/gui_x11.c, src/gui_w32.c,
+ src/testdir/test_termcodes.mnv
+
+Patch 8.2.1753
+Problem: MNV9: crash when using import at script level.
+Solution: Give a "not implemented yet" error. (closes #7026)
+Files: src/evalvars.c
+
+Patch 8.2.1754
+Problem: Completion with spell checking not tested.
+Solution: Add a test case. (Dominique Pellé, closes #7024)
+Files: src/testdir/test_spell.mnv
+
+Patch 8.2.1755
+Problem: MNV9: crash when using invalid heredoc marker. (Dhiraj Mishra)
+Solution: Check for NULL list. (closes #7027) Fix comment character.
+Files: src/mnv9compile.c, src/evalvars.c,
+ src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.1756
+Problem: MNV9: :let will soon be disallowed.
+Solution: Add v:disallow_let temporarily. Fix tests.
+Files: src/mnv.h, src/errors.h, src/evalvars.c, src/mnv9compile.c,
+ src/userfunc.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1757
+Problem: Mac: default locale is lacking the encoding.
+Solution: Add ".UTF-8 to the locale. (Yee Cheng Chin, closes #7022)
+Files: src/os_mac_conv.c, src/testdir/test_environ.mnv
+
+Patch 8.2.1758
+Problem: MNV9: type of unmaterialized list is wrong.
+Solution: Use list<number>.
+Files: src/mnv9type.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1759
+Problem: MNV9: Some tests are still using :let.
+Solution: Change more declarations to use :var.
+Files: src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1760
+Problem: MNV9: crash when end marker is missing. (Dhiraj Mishra)
+Solution: Check for end of function lines. (closes #7031)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.1761
+Problem: MNV9: Some tests are still using :let.
+Solution: Change more declarations to use :var.
+Files: src/testdir/test_mnv9_assign.mnv,
+ src/testdir/test_mnv9_cmd.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.1762
+Problem: When a timer uses :stopinsert Insert mode completion isn't
+ stopped. (Stanley Chan)
+Solution: Call ins_compl_prep(ESC).
+Files: src/edit.c, src/testdir/test_ins_complete.mnv,
+ src/testdir/dumps/Test_pum_stopped_by_timer.dump
+
+Patch 8.2.1763
+Problem: MNV9: cannot use "true" for popup window scrollbar option.
+Solution: use dict_get_bool(). (closes #7029)
+Files: src/popupwin.c, src/testdir/test_popupwin.mnv
+
+Patch 8.2.1764
+Problem: MNV9: no error when assigning to script var with wrong type.
+Solution: Fix off-by-one error. (closes #7028)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.1765
+Problem: MNV9: some tests use "var var".
+Solution: Use "var name". (closes #7032)
+Files: src/testdir/test_mnv9_assign.mnv, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1766
+Problem: MNV9: Some tests are still using :let.
+Solution: Change the last few declarations to use :var.
+Files: src/testdir/runtest.mnv, src/testdir/test_mnv9_assign.mnv,
+ src/testdir/test_mnv9_cmd.mnv,
+ src/testdir/test_mnv9_disassemble.mnv,
+ src/testdir/test_mnv9_expr.mnv, src/testdir/test_mnv9_func.mnv,
+ src/testdir/test_mnv9_script.mnv, src/testdir/test_maparg.mnv,
+ src/testdir/test_popupwin.mnv, src/testdir/test_textprop.mnv
+
+Patch 8.2.1767
+Problem: MNV9: test fails with python support.
+Solution: Use "let" in legacy function.
+Files: src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1768
+Problem: Cannot use the help menu from a terminal window.
+Solution: Add ":tlnoremenu" commands. (Yee Cheng Chin, closes #7023)
+Files: runtime/menu.mnv, src/testdir/test_gui.mnv
+
+Patch 8.2.1769
+Problem: A popup filter interferes with using :normal to move the cursor in
+ a popup.
+Solution: Do not invoke the filter when ex_normal_busy is set.
+Files: runtime/doc/popup.txt, src/getchar.c, src/evalfunc.c,
+ src/ex_docmd.c, src/menu.c, src/globals.h,
+ src/testdir/test_popupwin.mnv,
+ src/testdir/dumps/Test_popupwin_normal_cmd.dump
+
+Patch 8.2.1770
+Problem: Invalid memory use when using SpellFileMissing autocmd.
+Solution: Add test case. (Dominique Pellé, closes #7036) Fix using a window
+ that was closed.
+Files: src/spell.c, src/testdir/test_spell.mnv
+
+Patch 8.2.1771
+Problem: synIDattr() cannot get the value of ctermul.
+Solution: Add the "ul" value for "what". (closes #7037)
+Files: runtime/doc/eval.txt, src/highlight.c, src/evalfunc.c,
+ src/testdir/test_highlight.mnv
+
+Patch 8.2.1772
+Problem: Cannot use CTRL-W <Down> to move out of a terminal window.
+Solution: Use special_to_buf() instead of mb_char2bytes(). (closes #7045)
+Files: src/terminal.c, src/testdir/test_terminal.mnv
+
+Patch 8.2.1773
+Problem: Crash when calling mapset() with a list as first argument.
+Solution: Check for NULL. (closes #7040)
+Files: src/map.c, src/testdir/test_maparg.mnv
+
+Patch 8.2.1774
+Problem: GTK: hang when forced to exit.
+Solution: Do not clean up "mainwin" when really_exiting is set.
+ (Zdenek Dohnal, closes #7042)
+Files: src/gui_gtk_x11.c
+
+Patch 8.2.1775
+Problem: MS-Windows: adding a long quickfix list is slow.
+Solution: Shorten the buffer name only for the first entry. (Yegappan
+ Lakshmanan, closes #7039, closes #7033)
+Files: src/quickfix.c, src/testdir/test_quickfix.mnv
+
+Patch 8.2.1776
+Problem: Filetype.mnv may be loaded twice.
+Solution: Do "syntax on" after "filetype on". (Adam Stankiewicz,
+ closes #7049)
+Files: runtime/defaults.mnv
+
+Patch 8.2.1777
+Problem: MNV9: some assignment tests in the wrong file.
+Solution: Move assignment tests to test_mnv9_assign.
+Files: src/testdir/test_mnv9_assign.mnv, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1778
+Problem: MNV9: returning from a partial call clears outer context, causing
+ a crash.
+Solution: Put the outer context in the stack frame. (closes #7044)
+Files: src/mnv9execute.c, src/mnv9.h, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1779
+Problem: Some debian changelog files are not recognized.
+Solution: Add */debian/changelog. (Jason Franklin)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.1780
+Problem: Statusline not updated when splitting windows.
+Solution: Call status_redraw_all(). (Jason Franklin, closes #5496)
+Files: src/window.c, src/testdir/test_statusline.mnv
+
+Patch 8.2.1781
+Problem: Writing to prompt buffer interferes with insert mode.
+Solution: Use win_enter() instead of just setting "curwin". (Ben Jackson,
+ closes #7035)
+Files: src/autocmd.c, src/testdir/test_prompt_buffer.mnv
+
+Patch 8.2.1782
+Problem: MNV9: cannot pass boolean to mapset().
+Solution: Use get_tv_bool(). (closes #7041)
+Files: src/map.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1783 (after 8.2.1781)
+Problem: Try-catch test fails.
+Solution: Don't call win_enter(), only call entering_window().
+Files: src/autocmd.c, src/window.c, src/proto/window.pro,
+ src/testdir/runtest.mnv
+
+Patch 8.2.1784
+Problem: commits are not scanned for security problems
+Solution: Enable Github code scanning. (Christian Brabandt, closes #7057)
+Files: .github/workflows/codeql-analysis.yml
+
+Patch 8.2.1785
+Problem: Compiler warning for strcpy() out of bounds. (Christian Brabandt)
+Solution: use memmove() instead.
+Files: src/dict.c
+
+Patch 8.2.1786
+Problem: Various Normal mode commands not fully tested.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #7059)
+Files: src/testdir/test_normal.mnv, src/testdir/test_regexp_utf8.mnv,
+ src/testdir/test_registers.mnv, src/testdir/test_spellfile.mnv,
+ src/testdir/test_tagjump.mnv, src/testdir/test_visual.mnv
+
+Patch 8.2.1787
+Problem: Crash with 'incsearch' and very long line.
+Solution: Check whether regprog becomes NULL. (closes #7063)
+Files: src/search.c, src/testdir/test_search.mnv
+
+Patch 8.2.1788
+Problem: MNV9: still allows :let for declarations.
+Solution: Make the default for v:disallow_let one. It can still be set to
+ zero to allow for using :let.
+Files: src/evalvars.c, src/testdir/runtest.mnv
+
+Patch 8.2.1789
+Problem: MNV9: crash with invalid list constant. (Dhiraj Mishra)
+Solution: Return FAIL when compiling the list fails. (closes #7066)
+Files: src/mnv9compile.c, src/errors.h, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1790
+Problem: MS-Windows with Python: crash when executed from Vifm.
+Solution: Use NUL instead of CONIN. (Ken Takata, closes #7061, closes #7053)
+Files: src/if_python3.c
+
+Patch 8.2.1791
+Problem: MNV9: debugger test fails.
+Solution: Use "var" instead of "let".
+Files: src/testdir/test_debugger.mnv
+
+Patch 8.2.1792
+Problem: Configure does not recognize Racket 6.1+.
+Solution: Add a check for "rktio". (closes #7062)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.1793
+Problem: Not consistently giving the "is a directory" warning.
+Solution: Adjust check for illegal file name and directory. (Yasuhiro
+ Matsumoto, closes #7067)
+Files: src/fileio.c, src/testdir/test_edit.mnv
+
+Patch 8.2.1794
+Problem: No falsy Coalescing operator.
+Solution: Add the "??" operator. Fix mistake with function argument count.
+Files: runtime/doc/eval.txt, src/eval.c, src/mnv9compile.c,
+ src/mnv9type.c, src/testdir/test_expr.mnv,
+ src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.1795
+Problem: MNV9: operators && and || have a confusing result.
+Solution: Make the result a boolean.
+Files: runtime/doc/mnv9.txt, src/eval.c, src/mnv9compile.c,
+ src/mnv9execute.c, src/mnv9type.c, src/structs.h, src/mnv9.h,
+ src/testdir/test_mnv9_expr.mnv, src/testdir/test_mnv9_assign.mnv,
+ src/testdir/test_mnv9_cmd.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.1796
+Problem: MNV9: invalid memory access with weird function name. (Dhiraj
+ Mishra)
+Solution: Check the name is valid. Add a test.
+Files: src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1797
+Problem: MNV9: some parts of the code not tested.
+Solution: Add a few tests.
+Files: src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1798
+Problem: MNV9: ternary operator condition is too permissive.
+Solution: Use tv_get_bool_chk().
+Files: runtime/doc/mnv9.txt, src/eval.c, src/mnv9compile.c,
+ src/mnv9execute.c, src/testdir/mnv9.mnv,
+ src/testdir/test_expr.mnv, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_cmd.mnv, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1799
+Problem: Some Normal mode commands not fully tested.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #7073)
+Files: src/testdir/test_gf.mnv, src/testdir/test_goto.mnv,
+ src/testdir/test_normal.mnv, src/testdir/test_registers.mnv,
+ src/testdir/test_startup.mnv, src/testdir/test_tabpage.mnv,
+ src/testdir/test_visual.mnv
+
+Patch 8.2.1800
+Problem: MNV9: memory leak if "if" condition is invalid.
+Solution: Free ppconst earlier.
+Files: src/mnv9compile.c
+
+Patch 8.2.1801
+Problem: Undo file not found when using ":args" or ":next".
+Solution: Handle like editing another file. (closes #7072)
+Files: src/ex_cmds.c, src/testdir/test_undo.mnv
+
+Patch 8.2.1802
+Problem: MNV9: crash with unterminated dict. (Dhiraj Mishra)
+Solution: Return empty string instead of NULL. (closes #7084)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1803
+Problem: A few failures are not tested.
+Solution: Test a few failures. (Dominique Pellé, closes #7075)
+Files: src/testdir/test_arglist.mnv, src/testdir/test_cmdline.mnv,
+ src/testdir/test_json.mnv, src/testdir/test_listdict.mnv
+
+Patch 8.2.1804
+Problem: resolve('/') returns an empty string.
+Solution: Don't remove single slash. (closes #7074)
+Files: src/filepath.c, src/testdir/test_functions.mnv
+
+Patch 8.2.1805
+Problem: Unix: terminal mode changed when using ":shell".
+Solution: Avoid calling settmode() when not needed. (issue #7079)
+Files: src/os_unix.c
+
+Patch 8.2.1806
+Problem: MS-Windows with Python: MNV freezes after import command.
+Solution: Use either "NUL" or "CONIN$" when reopening stdin. (Yasuhiro
+ Matsumoto, closes #7083)
+Files: src/if_python3.c
+
+Patch 8.2.1807
+Problem: Can use :help in a terminal popup window.
+Solution: Give an error. (closes #7088)
+Files: src/help.c, src/testdir/test_popupwin.mnv
+
+Patch 8.2.1808
+Problem: No test coverage for ":spelldump!".
+Solution: Add a test. (Dominique Pellé, closes #7089)
+Files: src/testdir/test_spell.mnv
+
+Patch 8.2.1809
+Problem: Mapping some keys with Ctrl does not work properly.
+Solution: For terminal, GTK and Motif handle "@", "^" and "_" codes.
+Files: src/misc2.c, src/proto/misc2.pro, src/term.c, src/gui_gtk_x11.c,
+ src/gui_x11.c, src/testdir/test_termcodes.mnv
+
+Patch 8.2.1810
+Problem: Some code in normal.c not covered by tests.
+Solution: Add normal mode tests. (Yegappan Lakshmanan, closes #7086)
+Files: src/testdir/test_charsearch.mnv, src/testdir/test_normal.mnv
+
+Patch 8.2.1811
+Problem: Mapping Ctrl-key does not work for '{', '}' and '|'.
+Solution: Remove the shift modifier. (closes #6457)
+Files: runtime/doc/map.txt, src/misc2.c, src/testdir/test_termcodes.mnv
+
+Patch 8.2.1812
+Problem: MNV9: nested closure throws an internal error.
+Solution: Do not skip a local variable with a partial. (closes #7065)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1813
+Problem: MNV9: can assign wrong type to script dict. (Christian J. Robinson)
+Solution: Check the type if known.
+Files: src/structs.h, src/eval.c, src/mnv9script.c,
+ src/proto/mnv9script.pro, src/proto/evalvars.pro,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1814 (after 8.2.1813)
+Problem: Missing change to remove "static".
+Solution: Add the change.
+Files: src/evalvars.c
+
+Patch 8.2.1815
+Problem: MNV9: memory leak when using function reference.
+Solution: Temporarily disable the test.
+Files: src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.1816
+Problem: MNV9: another memory leak when using function reference.
+Solution: Temporarily disable the tests.
+Files: src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1817
+Problem: MNV9: wrong instruction when reusing a local variable spot.
+Solution: Clear a newly allocated local variable. (closes #7080)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1818
+Problem: SE Linux: deprecation warning for security_context_t.
+Solution: Use "char *" instead. (James McCoy, closes #7093)
+Files: src/os_unix.c
+
+Patch 8.2.1819
+Problem: MNV9: Memory leak when using a closure.
+Solution: Compute the minimal refcount in the funcstack. Reenable disabled
+ tests.
+Files: src/mnv9execute.c, src/proto/mnv9execute.pro, src/structs.h,
+ src/eval.c, src/testdir/test_mnv9_disassemble.mnv,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1820
+Problem: MNV9: crash when error happens in timer callback.
+Solution: Check that current_exception is not NULL. (closes #7100)
+Files: src/ex_docmd.c
+
+Patch 8.2.1821
+Problem: MNV9: concatenating to a NULL list doesn't work.
+Solution: Handle a NULL list like an empty list. (closes #7064)
+Files: src/list.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.1822 (after 8.2.1821)
+Problem: List test doesn't fail.
+Solution: Adjust the test for NULL list handling.
+Files: src/testdir/test_listdict.mnv
+
+Patch 8.2.1823
+Problem: "gN" does not select the matched string.
+Solution: Move the cursor to the start of the match.
+Files: src/search.c, src/testdir/test_gn.mnv
+
+Patch 8.2.1824
+Problem: MNV9: variables at the script level escape their scope.
+Solution: When leaving a scope remove variables declared in it.
+Files: src/structs.h, src/ex_eval.c, src/evalvars.c,
+ src/proto/evalvars.pro, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1825
+Problem: MNV9: accessing freed memory.
+Solution: Clear sv_name when the variable is deleted.
+Files: src/ex_eval.c
+
+Patch 8.2.1826
+Problem: MNV9: cannot use a {} block at script level.
+Solution: Recognize a {} block.
+Files: src/ex_docmd.c, src/ex_cmds.h, src/ex_cmdidxs.h, src/ex_eval.c,
+ src/structs.h, src/proto/ex_eval.pro, src/errors.h,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1827
+Problem: Filetype detection does not test enough file names.
+Solution: Test more file names. (Adam Stankiewicz, closes #7099)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.1828
+Problem: Build failure without the +eval feature.
+Solution: Add dummies for ex_block and ex_endblock.
+Files: src/ex_docmd.c
+
+Patch 8.2.1829
+Problem: Warnings when executing Github actions.
+Solution: Use another method to set environment variables. (Ken Takata,
+ closes #7107)
+Files: .github/workflows/ci-windows.yaml
+
+Patch 8.2.1830
+Problem: MS-Windows: Python3 issue with stdin.
+Solution: Check if stdin is readable. (Ken Takata, closes #7106)
+Files: src/if_python3.c
+
+Patch 8.2.1831
+Problem: File missing from distribution.
+Solution: Add the github code analyses file.
+Files: Filelist
+
+Patch 8.2.1832
+Problem: readdirex() error is displayed as a message. (Yegappan Lakshmanan)
+Solution: Use semsg() instead of smsg().
+Files: src/fileio.c, src/testdir/test_functions.mnv
+
+Patch 8.2.1833
+Problem: When reading from stdin dup() is called twice.
+Solution: Remove the dup() in main.c. (Ken Takata, closes #7110)
+Files: src/main.c
+
+Patch 8.2.1834
+Problem: PyEval_InitThreads() is deprecated in Python 3.9.
+Solution: Do not call PyEval_InitThreads in Python 3.9 and later. (Ken
+ Takata, closes #7113) Avoid warnings for functions.
+Files: src/if_python3.c, src/if_py_both.h
+
+Patch 8.2.1835
+Problem: ":help ??" finds the "!!" tag.
+Solution: Do not translate "?" into ".". (Naruhiko Nishino, closes #7114,
+ closes #7115)
+Files: src/help.c, src/testdir/test_help_tagjump.mnv
+
+Patch 8.2.1836
+Problem: Autocmd test fails on pacifist systems.
+Solution: Check that /bin/kill exists. (James McCoy, closes #7117)
+ Tune the timing, make the autocmd test run faster.
+Files: src/testdir/test_autocmd.mnv
+
+Patch 8.2.1837
+Problem: Using "gn" after "gN" does not work.
+Solution: Extend the other end of the Visual area. (closes #7109)
+Files: src/search.c, src/testdir/test_gn.mnv
+
+Patch 8.2.1838
+Problem: MNV9: cannot insert a comment line in an expression.
+Solution: Skip comment lines at the script level. (closes #7111)
+Files: src/eval.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1839
+Problem: MNV9: memory leaks reported in assign test.
+Solution: Move the failing job_start() call to separate test files, it
+ causes false leak reports.
+Files: src/testdir/test_mnv9_assign.mnv, src/testdir/test_mnv9_fails.mnv,
+ src/testdir/Make_all.mak
+
+Patch 8.2.1840
+Problem: MNV9: error message is not clear about compilation error.
+Solution: Say "compiling" instead of "processing".
+Files: src/mnv9compile.c, src/message.c, src/globals.h,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1841
+Problem: MNV9: test for compilation error fails in normal build.
+Solution: Invoke CheckRunMNVInTerminal in a separate function.
+Files: src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1842
+Problem: Crash when USE_FNAME_CASE is defined and using :browse.
+Solution: Don't use read-only memory for ".". (Yegappan Lakshmanan,
+ closes #7123)
+Files: src/ex_cmds.c, src/ex_docmd.c, src/testdir/test_edit.mnv
+
+Patch 8.2.1843
+Problem: Netbeans: with huge buffer number memory allocation may fail.
+Solution: Check for size overflow.
+Files: src/netbeans.c
+
+Patch 8.2.1844
+Problem: Using "q" at the more prompt doesn't stop a long message.
+Solution: Check for "got_int". (closes #7122)
+Files: src/message.c, src/testdir/test_messages.mnv,
+ src/testdir/dumps/Test_quit_long_message.dump
+
+Patch 8.2.1845
+Problem: MNV9: function defined in a block can't use variables defined in
+ that block.
+Solution: First step: Make a second hashtab that holds all script variables,
+ also block-local ones, with more information.
+Files: src/structs.h, src/evalvars.c, src/ex_eval.c, src/mnv9script.c,
+ src/proto/mnv9script.pro, src/scriptfile.c
+
+Patch 8.2.1846
+Problem: MNV9: variables declared in a local block are not found in
+ when a function is compiled.
+Solution: Look for script variables in sn_all_vars.
+Files: src/structs.h, src/mnv9compile.c, src/proto/mnv9compile.pro,
+ src/userfunc.c, src/proto/userfunc.pro, src/ex_eval.c,
+ src/mnv9script.c, src/proto/mnv9script.pro, src/mnv9execute.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1847
+Problem: MNV9: using negative value for unsigned type.
+Solution: Use zero instead of -1.
+Files: src/mnv9compile.c
+
+Patch 8.2.1848
+Problem: Crash when passing a NULL string or list to popup_settext().
+Solution: Check for NULL pointers. (closes #7132)
+Files: src/popupwin.c, src/testdir/test_popupwin.mnv
+
+Patch 8.2.1849
+Problem: MNV9: garbage collection frees block-local variables.
+Solution: Mark all script variables as used.
+Files: src/evalvars.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1850
+Problem: "vat" does not select tags correctly over line break.
+Solution: Adjust the search pattern. (Aufar Gilbran, closes #7136)
+Files: src/textobject.c, src/testdir/test_textobjects.mnv
+
+Patch 8.2.1851
+Problem: MNV9: "!" followed by space incorrectly used.
+Solution: Skip over trailing spaces. (closes #7131)
+Files: src/eval.c, src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1852
+Problem: map() returning zero for NULL list is unexpected.
+Solution: Return the empty list. (closes #7133)
+Files: src/list.c, src/testdir/test_filter_map.mnv,
+ src/testdir/test_blob.mnv
+
+Patch 8.2.1853
+Problem: "to_f" is recognized at "topleft" modifier.
+Solution: Do not recognize modifier when "_" follows. (closes #7019)
+Files: src/ex_docmd.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.1854
+Problem: MNV9: crash when throwing exception for NULL string. (Dhiraj
+ Mishra)
+Solution: Handle NULL string like empty string. (closes #7139)
+Files: src/mnv9execute.c, src/errors.h, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1855
+Problem: MNV9: get error message when nothing is wrong.
+Solution: Check called_emsg instead of did_emsg. (closes #7143)
+Files: src/mnv9compile.c, src/mnv9execute.c, src/errors.h
+
+Patch 8.2.1856
+Problem: "2resize" uses size of current window. (Daniel Steinberg)
+Solution: Use size of resized window. (Yasuhiro Matsumoto, closes #7152)
+Files: src/ex_docmd.c, src/testdir/test_window_cmd.mnv
+
+Patch 8.2.1857
+Problem: MNV9: using job_status() on an unused var gives an error.
+Solution: Return "fail". (closes #7158)
+Files: src/job.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.1858
+Problem: MNV9: filter functions return number instead of bool.
+Solution: Return v:true instead of one. (closes #7144)
+Files: src/popupwin.c, src/evalfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1859
+Problem: MNV9: crash in unpack assignment.
+Solution: Make sure an error message is turned into an exception.
+ (closes #7159)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_assign.mnv,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1860
+Problem: MNV9: memory leak when throwing empty string.
+Solution: Free the empty string.
+Files: src/mnv9execute.c
+
+Patch 8.2.1861
+Problem: MNV9: no specific error when parsing lambda fails.
+Solution: Also give syntax errors when not evaluating. (closes #7154)
+Files: src/dict.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1862
+Problem: mnv9: memory leak when compiling lambda fails.
+Solution: Call clear_evalarg().
+Files: src/mnv9compile.c
+
+Patch 8.2.1863
+Problem: Json code not sufficiently tested.
+Solution: Add more test cases. (Dominique Pellé, closes #7166)
+Files: src/testdir/test_json.mnv
+
+Patch 8.2.1864
+Problem: MNV9: no error for wrong list type.
+Solution: Add flag to indicate a constant. (closes #7160)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.1865
+Problem: MNV9: add() does not check type of argument.
+Solution: Inline the add() call. (closes #7160)
+Files: src/mnv9.h, src/mnv9compile.c, src/mnv9execute.c, src/errors.h,
+ src/testdir/test_mnv9_func.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.1866
+Problem: MNV9: appending to pushed blob gives wrong result.
+Solution: Set ga_maxlen when copying a blob.
+Files: src/blob.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1867
+Problem: MNV9: argument to add() not checked for blob.
+Solution: Add the BLOBAPPEND instruction.
+Files: src/mnv9.h, src/mnv9compile.c, src/mnv9execute.c, src/errors.h,
+ src/testdir/test_mnv9_func.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.1868
+Problem: MNV9: no error for missing space after comma in dict.
+Solution: Check for white space. (closes #6672)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1869
+Problem: MNV9: memory leak when using add().
+Solution: Free the added item.
+Files: src/mnv9execute.c
+
+Patch 8.2.1870
+Problem: MNV9: no need to keep all script variables.
+Solution: Only keep script variables when a function was defined that could
+ use them. Fix freeing static string on exit.
+Files: src/mnv9script.c, src/proto/mnv9script.pro, src/structs.h,
+ src/ex_eval.c, src/userfunc.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1871
+Problem: Using %v in 'errorformat' may fail before %Z.
+Solution: Set qf_viscol only when qf_col is set. (closes #7169)
+Files: src/quickfix.c, src/testdir/test_quickfix.mnv
+
+Patch 8.2.1872
+Problem: Matchfuzzy() does not prefer sequential matches.
+Solution: Give sequential matches a higher bonus. (Christian Brabandt,
+ closes #7140)
+Files: src/search.c, src/testdir/test_matchfuzzy.mnv
+
+Patch 8.2.1873
+Problem: MNV9: missing white space when using <f-args>.
+Solution: Add spaces. (Christian J. Robinson)
+Files: src/usercmd.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.1874
+Problem: Can't do something just before leaving Insert mode.
+Solution: Add the InsertLeavePre autocommand event. (closes #7177)
+Files: runtime/doc/autocmd.txt, src/edit.c, src/mnv.h,
+ src/autocmd.c, src/testdir/test_edit.mnv
+
+Patch 8.2.1875
+Problem: Warning when building GTK gui.
+Solution: Add missing function parameter.
+Files: src/gui_gtk_f.c
+
+Patch 8.2.1876
+Problem: MNV9: argument types for builtin functions are not checked at
+ compile time.
+Solution: Add an argument type checking mechanism. Implement type checks for
+ one function.
+Files: src/evalfunc.c, src/proto/evalfunc.pro, src/mnv9compile.c,
+ src/testdir/test_mnv9_func.mnv, src/testdir/test_mnv9_builtin.mnv,
+ src/testdir/Make_all.mak
+
+Patch 8.2.1877 (after 8.2.1876)
+Problem: Test for function list fails.
+Solution: Move "obsolete" comments one line up.
+Files: src/evalfunc.c
+
+Patch 8.2.1878
+Problem: GTK: error for redefining function. (Tony Mechelynck)
+Solution: Remove "gtk_" prefix from local functions and prepend "gui_" to
+ global functions.
+Files: src/gui_gtk_f.c, src/gui_gtk_f.h, src/gui_gtk.c, src/gui_gtk_x11.c
+
+Patch 8.2.1879
+Problem: MNV9: argument types of insert() not checked when compiling.
+Solution: Add argument type checks for insert().
+Files: src/evalfunc.c, src/proto/evalfunc.pro, src/mnv9compile.c,
+ src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.1880
+Problem: MNV9: Asan complains about adding zero to NULL.
+Solution: Check for argument count first.
+Files: src/mnv9compile.c
+
+Patch 8.2.1881
+Problem: Cannot build with GTK3.
+Solution: Adjust form functions.
+Files: src/gui_gtk_f.c
+
+Patch 8.2.1882
+Problem: MNV9: v:disallow_let is no longer needed.
+Solution: Remove v:disallow_let.
+Files: src/evalvars.c, src/mnv.h, src/mnv9compile.c
+
+Patch 8.2.1883
+Problem: Compiler warnings when using Python.
+Solution: Adjust PyCFunction to also have the second argument. Use "int"
+ return type for some functions. Insert "(void *)" to get rid of
+ the remaining warnings.
+Files: src/if_py_both.h, src/if_python.c, src/if_python3.c
+
+Patch 8.2.1884
+Problem: Compiler warning for uninitialized variable. (John Marriott)
+Solution: Initialize with NULL.
+Files: src/mnv9compile.c, src/evalfunc.c
+
+Patch 8.2.1885
+Problem: Filetype tests unnecessarily creates swap files.
+Solution: Disable 'swapfile'. (Ken Takata, closes #7183)
+Files: src/testdir/test_filetype.mnv
+
+Patch 8.2.1886
+Problem: Using ":silent!" in a popup filter has unexpected effect.
+Solution: Use did_emsg instead of called_emsg. (closes #7178)
+Files: src/popupwin.c, src/testdir/test_popupwin.mnv
+
+Patch 8.2.1887
+Problem: Github actions not optimally configured.
+Solution: Run CI on any pushed branches. Set fail-fast. (Ozaki Kiichi,
+ closes #7184)
+Files: .github/workflows/ci-windows.yaml
+
+Patch 8.2.1888
+Problem: MNV9: Getbufline(-1, 1, '$') gives an error.
+Solution: Return an empty list. (closes #7180)
+Files: src/evalbuffer.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.1889
+Problem: MNV9: erroneous error for missing white space after {}.
+Solution: Don't skip over white space after {}. (issue #7167)
+Files: src/dict.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1890
+Problem: MNV9: strange error for subtracting from a list.
+Solution: Check getting a number, not a string. (closes #7167)
+Files: src/eval.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1891
+Problem: MNV9: skipping over expression doesn't handle line breaks.
+Solution: Pass evalarg to skip_expr(). (closes #7157)
+Files: src/mnv9compile.c, src/eval.c, src/proto/eval.pro, src/ex_docmd.c,
+ src/misc1.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.1892
+Problem: Valgrind warns for using uninitialized access in tests.
+Solution: Fix condition for breaking out of loop. (Dominique Pellé,
+ closes #7187)
+Files: src/terminal.c
+
+Patch 8.2.1893
+Problem: Fuzzy matching does not support multiple words.
+Solution: Add support for matching white space separated words. (Yegappan
+ Lakshmanan, closes #7163)
+Files: runtime/doc/eval.txt, src/search.c,
+ src/testdir/test_matchfuzzy.mnv
+
+Patch 8.2.1894
+Problem: MNV9: command modifiers are not supported.
+Solution: Support "silent" and "silent!".
+Files: src/structs.h, src/mnv9compile.c, src/mnv9.h, src/mnv9execute.c,
+ src/evalvars.c, src/testdir/test_mnv9_disassemble.mnv,
+ src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.1895 (after 8.2.1894)
+Problem: MNV9: silent command modifier test fails.
+Solution: Add missing changes.
+Files: src/ex_docmd.c
+
+Patch 8.2.1896
+Problem: Valgrind warns for using uninitialized memory.
+Solution: NUL terminate the SmcOpenConnection() error message. (Dominique
+ Pellé, closes #7194)
+Files: src/os_unix.c
+
+Patch 8.2.1897
+Problem: Command modifiers are saved and set inconsistently.
+Solution: Separate parsing and applying command modifiers. Save values in
+ cmdmod_T.
+Files: src/structs.h, src/ex_docmd.c, src/proto/ex_docmd.pro,
+ src/ex_cmds.h, src/mnv9compile.c
+
+Patch 8.2.1898
+Problem: Command modifier parsing always uses global cmdmod.
+Solution: Pass in cmdmod_T to use. Rename struct fields consistently.
+Files: src/structs.h, src/arglist.c, src/buffer.c, src/bufwrite.c,
+ src/diff.c, src/change.c, src/cmdhist.c, src/edit.c,
+ src/ex_cmds.c, src/ex_cmds2.c, src/ex_docmd.c, src/ex_getln.c,
+ src/fileio.c, src/filepath.c, src/gui.c, src/gui_gtk_x11.c,
+ src/help.c, src/if_cscope.c, src/indent.c, src/mark.c,
+ src/memline.c, src/message.c, src/option.c, src/ops.c,
+ src/os_unix.c, src/quickfix.c, src/register.c, src/scriptfile.c,
+ src/search.c, src/session.c, src/tag.c, src/terminal.c,
+ src/textformat.c, src/usercmd.c, src/mnv9compile.c, src/window.c,
+ src/proto/ex_docmd.pro
+
+Patch 8.2.1899
+Problem: Crash in out-of-memory situation.
+Solution: Bail out if shell_name is NULL. (Dominique Pellé, closes #7196)
+Files: src/ex_cmds.c
+
+Patch 8.2.1900
+Problem: MNV9: command modifiers do not work.
+Solution: Make most command modifiers work.
+Files: src/mnv9.h, src/mnv9compile.c, src/mnv9execute.c,
+ src/usercmd.c, src/proto/usercmd.pro, src/scriptfile.c,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.1901
+Problem: Variable completion does not work in command line window.
+Solution: Use the "prevwin". (closes #7198)
+Files: src/evalvars.c, src/testdir/test_ins_complete.mnv
+
+Patch 8.2.1902
+Problem: Default option values are changed when using :badd for an existing
+ buffer.
+Solution: When calling buflist_new() pass a zero line number. (closes #7195)
+Files: src/ex_cmds.c, src/testdir/test_buffer.mnv
+
+Patch 8.2.1903 (after 8.2.1902)
+Problem: Buffer test fails with normal features.
+Solution: Use 'numberwidth' instead of 'conceallevel' in the test.
+Files: src/testdir/test_buffer.mnv
+
+Patch 8.2.1904
+Problem: Still using default option values after using ":badd +1".
+Solution: Find a window where options were set. Don't set the window when
+ using ":badd".
+Files: src/buffer.c, src/ex_cmds.c, src/mnv.h,
+ src/testdir/test_buffer.mnv
+
+Patch 8.2.1905
+Problem: The wininfo list may contain stale entries.
+Solution: When closing a window remove any other entry where the window
+ pointer is NULL.
+Files: src/buffer.c, src/proto/buffer.pro, src/window.c
+
+Patch 8.2.1906
+Problem: Warning for signed/unsigned.
+Solution: Use size_t instead of int. (Mike Williams)
+Files: src/proto/usercmd.pro, src/usercmd.c, src/mnv9execute.c
+
+Patch 8.2.1907
+Problem: Complete_info().selected may be wrong.
+Solution: Update cp_number if it was never set. (issue #6945)
+Files: src/insexpand.c, src/testdir/test_ins_complete.mnv
+
+Patch 8.2.1908
+Problem: Lua is initialized even when not used.
+Solution: Put lua_init() after check for "eap->skip". (Christian Brabandt,
+ closes #7191). Avoid compiler warnings.
+Files: src/if_lua.c, src/testdir/test_lua.mnv
+
+Patch 8.2.1909
+Problem: Number of status line items is limited to 80.
+Solution: Dynamically allocate the arrays. (Rom Grk, closes #7181)
+Files: runtime/doc/options.txt, src/buffer.c, src/optionstr.c,
+ src/proto/buffer.pro, src/screen.c, src/structs.h,
+ src/testdir/test_options.mnv, src/testdir/test_statusline.mnv,
+ src/mnv.h
+
+Patch 8.2.1910
+Problem: Reading past the end of the command line.
+Solution: Check for NUL. (closes #7204)
+Files: src/ex_docmd.c, src/testdir/test_edit.mnv
+
+Patch 8.2.1911
+Problem: Tiny build fails.
+Solution: Add #ifdef.
+Files: src/insexpand.c
+
+Patch 8.2.1912
+Problem: With Python 3.9 some tests fail.
+Solution: Take into account the different error message. (James McCoy,
+ closes #7210)
+Files: src/testdir/test_python3.mnv
+
+Patch 8.2.1913
+Problem: GTK GUI: rounding for the cell height is too strict.
+Solution: Round up above 15/16 of a pixel. (closes #7203)
+Files: src/gui_gtk_x11.c
+
+Patch 8.2.1914
+Problem: MNV9: cannot put line break in expression for '=' register.
+Solution: Pass fgetline to set_expr_line(). (closes #7209)
+Files: src/register.c, src/proto/register.pro, src/ex_docmd.c,
+ src/eval.c, src/proto/eval.pro, src/misc2.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.1915
+Problem: MNV9: error for wrong number of arguments is not useful.
+Solution: Mention whatever we have for the name. (closes #7208)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1916
+Problem: MNV9: function call is aborted even when "silent!" is used.
+Solution: Use did_emsg instead of called_emsg. (closes #7213)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1917
+Problem: No test for improved Man command.
+Solution: Test that shell arguments are properly escaped.
+Files: src/testdir/test_man.mnv
+
+Patch 8.2.1918
+Problem: MNV9: E1100 mentions :let.
+Solution: Mention "var". (closes #7207)
+Files: src/mnv9script.c, src/errors.h
+
+Patch 8.2.1919
+Problem: Assert_fails() setting emsg_silent changes normal execution.
+Solution: Use a separate flag in_assert_fails.
+Files: src/testing.c, src/globals.h, src/buffer.c, src/change.c,
+ src/fileio.c, src/insexpand.c, src/message.c, src/misc1.c,
+ src/normal.c, src/screen.c, src/term.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_func.mnv, src/testdir/gen_opt_test.mnv,
+ src/testdir/test_autocmd.mnv, src/testdir/test_mapping.mnv,
+ src/testdir/test_popup.mnv, src/testdir/test_terminal.mnv
+
+Patch 8.2.1920
+Problem: Listlbr test fails when run after another test.
+Solution: Add test separately to list of test targets.
+Files: src/testdir/Make_all.mak, src/testdir/test_alot_utf8.mnv
+
+Patch 8.2.1921
+Problem: Fuzzy matching does not recognize path separators.
+Solution: Add a bonus for slash and backslash. (Yegappan Lakshmanan,
+ closes #7225)
+Files: src/search.c, src/testdir/test_matchfuzzy.mnv
+
+Patch 8.2.1922
+Problem: Win32: scrolling doesn't work properly when part of window is
+ off-screen.
+Solution: Fall back to GDI scrolling if part of the window is off-screen.
+ Handle multi-monitor setup better. (Ken Takata, closes #7219)
+Files: src/gui_w32.c
+
+Patch 8.2.1923
+Problem: MNV9: "filter" command modifier doesn't work.
+Solution: Check for space on char before argument. (closes #7216,
+ closes #7222)
+Files: src/ex_docmd.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.1924
+Problem: MNV9: crash when indexing dict with NULL key.
+Solution: Use empty string instead of NULL. (closes #7229) Make error
+ message more useful for empty string.
+Files: src/mnv9execute.c, src/globals.h, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1925 (after 8.2.1924)
+Problem: List/dict test fails.
+Solution: Correct expected exception.
+File: src/testdir/test_listdict.mnv
+
+Patch 8.2.1926
+Problem: Cannot use a space in 'spellfile'. (Filipe Brandenburger)
+Solution: Permit using a space. (closes #7230)
+Files: src/spell.c, src/testdir/gen_opt_test.mnv
+
+Patch 8.2.1927
+Problem: MNV9: get unknown error with an error in a timer function.
+Solution: Use did_emsg instead of called_emsg. (closes #7231)
+Files: src/mnv9compile.c, src/mnv9execute.c
+
+Patch 8.2.1928
+Problem: MNV9: "silent!" not effective when list index is wrong.
+Solution: Ignore list index failure when emsg_silent is set. (closes #7232)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1929
+Problem: MS-Windows: problem loading Perl 5.32.
+Solution: Define NO_THREAD_SAFE_LOCALE. (Ken Takata, closes #7234)
+Files: src/if_perl.xs
+
+Patch 8.2.1930
+Problem: Wrong input if removing shift results in special key code.
+Solution: Handle special key codes. (closes #7189)
+Files: src/term.c, src/testdir/test_termcodes.mnv
+
+Patch 8.2.1931
+Problem: MNV9: arguments of extend() not checked at compile time.
+Solution: Add argument type checking for extend().
+Files: src/evalfunc.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.1932
+Problem: Compiler warnings when building with Athena GUI.
+Solution: Fix function signatures.
+Files: src/gui_at_fs.c
+
+Patch 8.2.1933
+Problem: Cannot sort using locale ordering.
+Solution: Add a flag for :sort and sort() to use the locale. (Dominique
+ Pellé, closes #7237)
+Files: runtime/doc/change.txt, runtime/doc/eval.txt, src/ex_cmds.c,
+ src/list.c, src/testdir/test_sort.mnv
+
+Patch 8.2.1934
+Problem: MNV9: command modifiers in :def function not tested.
+Solution: Add tests. Fix using modifier before filter command.
+Files: src/ex_docmd.c, src/mnv9compile.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.1935 (after 8.2.1933)
+Problem: Sort test fails on Mac.
+Solution: Disable the sort test with locale on Mac.
+Files: src/testdir/test_sort.mnv
+
+Patch 8.2.1936
+Problem: Session sets the local 'scrolloff' value to the global value.
+Solution: Do not let restoring the global option value change the local
+ value.
+Files: src/session.c, src/testdir/test_mksession.mnv
+
+Patch 8.2.1937
+Problem: MNV9: test for confirm modifier fails in some situations.
+Solution: Add a short wait. Handle failure better.
+Files: src/testdir/term_util.mnv, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.1938
+Problem: Wiping out a terminal buffer makes some tests fail.
+Solution: Do not wipe out the terminal buffer unless wanted.
+Files: src/testdir/term_util.mnv, src/testdir/test_terminal.mnv,
+ src/testdir/test_terminal3.mnv
+
+Patch 8.2.1939
+Problem: Invalid memory access in Ex mode with global command.
+Solution: Make sure the cursor is on a valid line. (closes #7238)
+Files: src/move.c, src/testdir/test_ex_mode.mnv
+
+Patch 8.2.1940
+Problem: MNV9: browse modifier test fails on Mac.
+Solution: Only test when the +browse feature is available.
+Files: src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.1941
+Problem: Ex mode test fails on MS-Windows with GUI.
+Solution: Skip the test when using gmnv.
+Files: src/testdir/test_ex_mode.mnv
+
+Patch 8.2.1942
+Problem: Insufficient test coverage for the Netbeans interface.
+Solution: Add more tests. Fix an uncovered bug. (Yegappan Lakshmanan,
+ closes #7240)
+Files: runtime/doc/netbeans.txt, src/mouse.c,
+ src/testdir/test_netbeans.py, src/testdir/test_netbeans.mnv,
+ src/testdir/test_quickfix.mnv
+
+Patch 8.2.1943
+Problem: MNV9: wrong error message when colon is missing.
+Solution: Check for a missing colon. (issue #7239)
+Files: src/ex_docmd.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.1944
+Problem: Netbeans test is flaky.
+Solution: Add a short delay. (Yegappan Lakshmanan, closes #7246)
+Files: src/testdir/test_netbeans.mnv
+
+Patch 8.2.1945
+Problem: Crash when passing NULL function to reduce().
+Solution: Check for NULL pointer and give an error. (Dominique Pellé,
+ closes #7243)
+Files: src/list.c, src/errors.h, src/testdir/test_listdict.mnv
+
+Patch 8.2.1946
+Problem: sort() with NULL string not tested.
+Solution: Add a test. use v:collate. (Dominique Pellé, closes #7247)
+Files: src/testdir/test_sort.mnv
+
+Patch 8.2.1947
+Problem: Crash when using "zj" without folds. (Sean Dewar)
+Solution: Check for at least one fold. (closes #7245)
+Files: src/fold.c, src/testdir/test_fold.mnv
+
+Patch 8.2.1948
+Problem: GUI: crash when handling message while closing a window. (Srinath
+ Avadhanula)
+Solution: Don't handle message while closing a window. (closes #7250)
+Files: src/window.c, src/globals.h, src/getchar.c
+
+Patch 8.2.1949
+Problem: MNV9: using extend() on null dict is silently ignored.
+Solution: Give an error message. Initialize a dict variable with an empty
+ dictionary. (closes #7251)
+Files: src/errors.h, src/list.c, src/evalvars.c,
+ src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.1950
+Problem: MNV9: crash when compiling function fails when getting type.
+Solution: Handle NULL type. (closes #7253)
+Files: src/mnv9type.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1951 (after 8.2.1949)
+Problem: Test for list and dict fails.
+Solution: Adjust for using an empty list/dict for a null one.
+Files: src/testdir/test_listdict.mnv, src/testdir/test_python2.mnv,
+ src/testdir/test_python3.mnv
+
+Patch 8.2.1952
+Problem: MNV9: crash when using a NULL dict key.
+Solution: Use a NULL dict key like an empty string. (closes #7249)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1953
+Problem: MNV9: extra "unknown" error after other error.
+Solution: Restore did_emsg count after EXEC instruction. (closes #7254)
+ Improve error message from assert_fails()
+Files: src/mnv9execute.c, src/testing.c,
+ src/testdir/test_mnv9_script.mnv, src/testdir/test_assert.mnv
+
+Patch 8.2.1954
+Problem: MNV9: not all command modifiers are tested.
+Solution: Add tests for "keep" modifiers. Fix that marks are lost even
+ though ":lockmarks" is used.
+Files: src/ex_cmds.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.1955
+Problem: MNV9: not all command modifiers are tested.
+Solution: Add tests for remaining modifiers.
+Files: src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.1956
+Problem: MNV9: cannot specify argument types for lambda.
+Solution: Allow adding argument types. Check arguments when calling a
+ function reference.
+Files: src/userfunc.c, src/proto/userfunc.pro, src/mnv9compile.c,
+ src/eval.c, src/testdir/test_mnv9_disassemble.mnv,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.1957
+Problem: Diff and cursorcolumn highlighting don't mix.
+Solution: Fix condition for what attribute to use. (Christian Brabandt,
+ closes #7258, closes #7260)
+Files: src/drawline.c, src/testdir/dumps/Test_diff_cuc_01.dump,
+ src/testdir/dumps/Test_diff_cuc_02.dump,
+ src/testdir/dumps/Test_diff_cuc_03.dump,
+ src/testdir/dumps/Test_diff_cuc_04.dump,
+ src/testdir/test_diffmode.mnv
+
+Patch 8.2.1958 (after 8.2.1956)
+Problem: Build failure with timers.
+Solution: Add missing change.
+Files: src/popupwin.c
+
+Patch 8.2.1959
+Problem: Crash when terminal buffer name is made empty. (Dhiraj Mishra)
+Solution: Fall back to "[No Name]". (closes #7262)
+Files: src/buffer.c, src/proto/buffer.pro, src/terminal.c,
+ src/testdir/test_terminal.mnv
+
+Patch 8.2.1960
+Problem: Warning for uninitialized variable.
+Solution: Initialize the variable.
+Files: src/evalfunc.c
+
+Patch 8.2.1961
+Problem: Various comments can be improved.
+Solution: Various comment adjustments.
+Files: src/dict.c, src/structs.h, src/time.c, src/testdir/shared.mnv,
+ src/testdir/test_netbeans.mnv, src/gui_motif.c
+
+Patch 8.2.1962
+Problem: Netbeans may access freed memory.
+Solution: Check the buffer pointer is still valid. Add a test. (Yegappan
+ Lakshmanan, closes #7248)
+Files: src/netbeans.c, src/testdir/test_netbeans.mnv
+
+Patch 8.2.1963
+Problem: Crash when using a popup window with "latin1" encoding.
+Solution: Don't use ScreenLinesUC when enc_utf8 is false. (closes #7241)
+Files: src/screen.c, src/terminal.c, src/testdir/test_popupwin.mnv
+
+Patch 8.2.1964
+Problem: Not all ConTeXt files are recognized.
+Solution: Add two patterns. (closes #7263)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.1965
+Problem: MNV9: tests fail without the channel feature.
+Solution: Check if the channel feature is present. (Dominique Pellé,
+ closes #7270)
+Files: src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1966
+Problem: Popup becomes current window after closing a terminal window.
+Solution: When restoring the window after executing autocommands, check that
+ the window ID is still the same. (Naruhiko Nishino,
+ closes #7272)
+Files: src/autocmd.c, src/window.c, src/proto/window.pro, src/structs.h,
+ src/testdir/test_popupwin.mnv
+
+Patch 8.2.1967
+Problem: The session file does not restore the alternate file.
+Solution: Add ":balt". Works like ":badd" and also sets the buffer as the
+ alternate file. Use it in the session file. (closes #7269,
+ closes #6714)
+Files: runtime/doc/windows.txt, src/ex_cmds.h, src/ex_cmdidxs.h,
+ src/ex_docmd.c, src/mnv.h, src/ex_cmds.c, src/session.c,
+ src/testdir/test_buffer.mnv
+
+Patch 8.2.1968
+Problem: MNV9: has() assumes a feature does not change dynamically.
+Solution: Check whether a feature may change dynamically. (closes #7265)
+Files: src/mnv9compile.c, src/evalfunc.c, src/proto/evalfunc.pro,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.1969
+Problem: MNV9: map() may change the list or dict item type.
+Solution: Add mapnew().
+Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/list.c, src/proto/list.pro, src/testdir/test_filter_map.mnv
+
+Patch 8.2.1970
+Problem: It is easy to make mistakes when cleaning up swap files after the
+ system crashed.
+Solution: Warn for the process still running after recovery. Do not
+ automatically delete a swap file created on another system.
+ (David Fries, closes #7273)
+Files: src/memline.c, src/testdir/test_swap.mnv
+
+Patch 8.2.1971
+Problem: Memory leak when map() fails.
+Solution: Clear the typval.
+Files: src/list.c
+
+Patch 8.2.1972
+Problem: Crash when recreating nested fold.
+Solution: Check for empty growarray. (closes #7278)
+Files: src/fold.c, src/testdir/test_fold.mnv
+
+Patch 8.2.1973
+Problem: Finding a patch number can be a bit slow.
+Solution: Use binary search. (closes #7279)
+Files: src/version.c
+
+Patch 8.2.1974
+Problem: MNV9: test for has('gui_running') fails with MNVDLL.
+Solution: Adjust the #ifdef. (Ken Takata, closes #7276)
+Files: src/evalfunc.c
+
+Patch 8.2.1975
+Problem: Win32: memory leak when encoding conversion fails.
+Solution: Free the allocated memory. (Ken Takata, closes #7277)
+Files: src/os_win32.c
+
+Patch 8.2.1976
+Problem: Cannot backspace in prompt buffer after using cursor-left. (Maxim
+ Kim)
+Solution: Ignore "arrow_used" in a prompt buffer. (closes #7281)
+Files: src/edit.c, src/testdir/test_prompt_buffer.mnv
+
+Patch 8.2.1977
+Problem: MNV9: error for using a string in a condition is confusing.
+Solution: Give a more specific error. Also adjust the compile time type
+ checking for || and &&.
+Files: src/mnv9compile.c, src/mnv9execute.c, src/proto/mnv9execute.pro,
+ src/typval.c, src/errors.h, src/testdir/test_mnv9_cmd.mnv,
+ src/testdir/test_mnv9_disassemble.mnv,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1978
+Problem: Making a mapping work in all modes is complicated.
+Solution: Add the <Cmd> special key. (Yegappan Lakshmanan, closes #7282,
+ closes 4784, based on patch by Bjorn Linse)
+Files: runtime/doc/autocmd.txt, runtime/doc/eval.txt,
+ runtime/doc/map.txt, src/edit.c, src/errors.h, src/ex_docmd.c,
+ src/ex_getln.c, src/getchar.c, src/insexpand.c, src/keymap.h,
+ src/map.c, src/misc2.c, src/normal.c, src/ops.c,
+ src/proto/getchar.pro, src/screen.c, src/terminal.c,
+ src/testdir/test_mapping.mnv
+
+Patch 8.2.1979
+Problem: "term_opencmd" option of term_start() is truncated. (Sergey
+ Vlasov)
+Solution: Allocate the buffer to hold the command. (closes #7284)
+Files: src/terminal.c, src/testdir/test_terminal.mnv
+
+Patch 8.2.1980
+Problem: MNV9: some tests are not done at the script level.
+Solution: Use CheckDefAndScriptSuccess() in more places. Fix uncovered
+ problems.
+Files: src/eval.c, src/list.c, src/scriptfile.c,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1981
+Problem: MinGW: parallel compilation might fail.
+Solution: Add dependencies on $(OUTDIR). (Masamichi Abe, closes #7287)
+Files: src/Make_cyg_ming.mak
+
+Patch 8.2.1982
+Problem: Quickfix window not updated when adding invalid entries.
+Solution: Update the quickfix buffer properly. (Yegappan Lakshmanan, closes
+ #7291, closes #7271)
+Files: src/quickfix.c, src/testdir/test_quickfix.mnv
+
+Patch 8.2.1983
+Problem: ml_get error when using <Cmd> to open a terminal.
+Solution: If the window changed reset the incsearch state. (closes #7289)
+Files: src/ex_getln.c, src/testdir/test_terminal.mnv,
+ src/testdir/dumps/Test_terminal_from_cmd.dump
+
+Patch 8.2.1984
+Problem: Cannot use :mnvgrep in omni completion, causing C completion to
+ fail.
+Solution: Add the EX_LOCK_OK flag to :mnvgrep. (closes #7292)
+Files: src/ex_cmds.h, src/testdir/test_quickfix.mnv
+
+Patch 8.2.1985
+Problem: Crash when closing terminal popup with <Cmd> mapping.
+Solution: Check b_term is not NULL. (closes #7294)
+Files: src/terminal.c, src/testdir/test_terminal.mnv
+
+Patch 8.2.1986
+Problem: Expression test is flaky on Appveyor.
+Solution: Temporarily disable the test in MS-Windows.
+Files: src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.1987
+Problem: MS-Windows: Win32.mak is no longer needed.
+Solution: Do not include Win32.mak. (Jason McHugh, closes #7290)
+Files: src/Make_mvc.mak, src/INSTALLpc.txt
+
+Patch 8.2.1988
+Problem: Still in Insert mode when opening terminal popup with a <Cmd>
+ mapping in Insert mode.
+Solution: Exit Insert mode. (closes #7295)
+Files: src/edit.c, src/testdir/test_terminal.mnv
+
+Patch 8.2.1989
+Problem: Info popup triggers WinEnter and WinLeave autocommands.
+Solution: Suppress autocommands for the info popup. (closes #7296)
+Files: src/popupmenu.c, src/testdir/test_popupwin.mnv
+
+Patch 8.2.1990
+Problem: Cursor position wrong in terminal popup with finished job.
+Solution: Only add the top and left offset when not done already.
+ (closes #7298)
+Files: src/popupwin.c, src/structs.h, src/drawline.c, src/move.c,
+ src/terminal.c, src/testdir/dumps/Test_terminal_popup_m1.dump
+
+Patch 8.2.1991
+Problem: Coverity warns for not using the ga_grow() return value.
+Solution: Bail out if ga_grow() fails. (Yegappan Lakshmanan, closes #7303)
+Files: src/getchar.c
+
+Patch 8.2.1992
+Problem: Build fails with small features.
+Solution: Add #ifdef.
+Files: src/move.c
+
+Patch 8.2.1993
+Problem: Occasional failure of the netbeans test.
+Solution: Add "silent!". (Yegappan Lakshmanan, closes #7304)
+Files: src/testdir/test_netbeans.mnv
+
+Patch 8.2.1994 (after 8.2.1981)
+Problem: MS-Windows: MinGW always does a full build.
+Solution: Only check if $OUTDIR exists. (Masamichi Abe, closes #7311)
+Files: src/Make_cyg_ming.mak
+
+Patch 8.2.1995
+Problem: The popup menu can cause too much redrawing.
+Solution: Reduce the length of the displayed text. (Yasuhiro Matsumoto,
+ closes #7306)
+Files: src/popupmenu.c
+
+Patch 8.2.1996
+Problem: MNV9: invalid error for argument of extend().
+Solution: Check if the type could match. (closes #7299)
+Files: src/evalfunc.c, src/mnv9compile.c, src/proto/mnv9compile.pro,
+ src/mnv9type.c, src/proto/mnv9type.pro,
+ src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.1997
+Problem: Window changes when using bufload() while in a terminal popup.
+Solution: When searching for a window by ID also find a popup window.
+ (closes #7307)
+Files: src/window.c, src/testdir/test_terminal.mnv
+
+Patch 8.2.1998
+Problem: Terminal Cmd test sometimes fails to close popup.
+Solution: Add "term_finish" option.
+Files: src/testdir/test_terminal.mnv
+
+Patch 8.2.1999
+Problem: Terminal popup test sometimes fails.
+Solution: Wait for the popup to close.
+Files: src/testdir/test_terminal.mnv
+
+Patch 8.2.2000
+Problem: MNV9: dict.key assignment not implemented yet.
+Solution: Implement dict.key assignment. (closes #7312)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2001
+Problem: MNV9: :def function does not apply 'maxfuncdepth'.
+Solution: Use 'maxfuncdepth'. (issue #7313)
+Files: src/mnv9execute.c, src/userfunc.c, src/proto/userfunc.pro,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2002
+Problem: MNV9: lambda argument shadowed by function name.
+Solution: Let function name be shadowed by lambda argument. (closes #7313)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2003
+Problem: Build error with +conceal but without +popupwin.
+Solution: Add #ifdef. (Tom Ryder, closes #7316)
+Files: src/drawline.c
+
+Patch 8.2.2004 (after 8.2.2002)
+Problem: Compiler warning for uninitialized variable.
+Solution: Initialize "ufunc". (John Marriott)
+Files: src/mnv9compile.c
+
+Patch 8.2.2005
+Problem: Redoing a mapping with <Cmd> doesn't work properly.
+Solution: Fill the redo buffer. Use "<SNR>" instead of a key code.
+ (closes #7282)
+Files: src/ops.c, src/getchar.c, src/testdir/test_mapping.mnv
+
+Patch 8.2.2006
+Problem: .pbtxt files are not recognized.
+Solution: Recognize .pbtxt as protobuf text buffers. (closes #7326)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.2007
+Problem: Test for insert mode in popup is not reliable.
+Solution: Wait for the popup to disappear. (Ozaki Kiichi, closes #7321)
+Files: src/testdir/test_terminal.mnv
+
+Patch 8.2.2008
+Problem: MS-Windows GUI: handling channel messages lags.
+Solution: Reduce the wait time from 100 to 10 msec. (closes #7097)
+Files: src/gui_w32.c
+
+Patch 8.2.2009
+Problem: MS-Windows: setting $LANG in gmnvext only causes problems.
+Solution: Do not set $LANG. (Ken Takata, closes #7325)
+Files: src/GmnvExt/gmnvext.cpp
+
+Patch 8.2.2010
+Problem: MNV9: compiling fails for unreachable return statement.
+Solution: Fix it. (closes #7319)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.2011
+Problem: "syn sync" reports a very large number.
+Solution: Use "at the first line".
+Files: src/syntax.c, src/testdir/test_syntax.mnv
+
+Patch 8.2.2012
+Problem: MNV9: confusing error message when using bool wrongly.
+Solution: Mention "Bool" instead of "Special". (closes #7323)
+Files: src/typval.c, src/errors.h, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2013
+Problem: MNV9: not skipping white space after unary minus.
+Solution: Skip whitespace. (closes #7324)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2014
+Problem: Using CTRL-O in a prompt buffer moves cursor to start of the line.
+Solution: Do not move the cursor when restarting edit. (closes #7330)
+Files: src/job.c, src/testdir/test_prompt_buffer.mnv
+
+Patch 8.2.2015
+Problem: MNV9: literal dict #{} is not like any other language.
+Solution: Support the JavaScript syntax.
+Files: runtime/doc/mnv9.txt, src/mnv9compile.c,
+ src/proto/mnv9compile.pro, src/errors.h,
+ src/testdir/test_mnv9_expr.mnv, src/testdir/test_mnv9_builtin.mnv,
+ src/testdir/test_mnv9_func.mnv, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2016
+Problem: Swap file test is a little flaky.
+Solution: Don't set a byte to a fixed value, increment it.
+Files: src/testdir/test_swap.mnv
+
+Patch 8.2.2017 (after 8.2.2015)
+Problem: Missing part of the dict change.
+Solution: Also change the script level dict.
+Files: src/dict.c
+
+Patch 8.2.2018
+Problem: MNV9: script variable not found from lambda.
+Solution: In a lambda also check the script hashtab for a variable without a
+ scope. (closes #7329)
+Files: src/evalvars.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2019 (after 8.2.2016)
+Problem: Swap file test fails on MS-Windows.
+Solution: Add four to the process ID. (Ken Takata, closes #7333)
+Files: src/testdir/test_swap.mnv
+
+Patch 8.2.2020
+Problem: Some compilers do not like the "namespace" argument.
+Solution: Rename to "use_namespace". (closes #7332)
+Files: src/mnv9compile.c, src/proto/mnv9compile.pro
+
+Patch 8.2.2021
+Problem: MNV9: get E1099 when autocommand resets did_emsg.
+Solution: Add did_emsg_cumul. (closes #7336)
+Files: src/globals.h, src/ex_docmd.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2022
+Problem: MNV9: star command recognized erroneously.
+Solution: Give an error for missing colon. (issue #7335)
+Files: src/ex_docmd.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2023
+Problem: MNV: memory leak when :execute fails.
+Solution: Clear the growarray.
+Files: src/mnv9execute.c
+
+Patch 8.2.2024
+Problem: Flicker when redrawing a popup with a title and border.
+Solution: Do not redraw the border where the title is displayed. (Naruhiko
+ Nishino, closes #7334)
+Files: src/popupwin.c
+
+Patch 8.2.2025
+Problem: Amiga: Not all colors are used on OS4.
+Solution: Adjust the #ifdef to include __amigaos4__. (Ola Söder,
+ closes #7328)
+Files: src/term.c
+
+Patch 8.2.2026
+Problem: Coverity warns for possibly using not NUL terminated string.
+Solution: Put a NUL in b0_hname just in case.
+Files: src/memline.c
+
+Patch 8.2.2027
+Problem: Coverity warns for uninitialized field.
+Solution: Set "v_lock".
+Files: src/list.c
+
+Patch 8.2.2028
+Problem: Coverity warns for using an uninitialized variable.
+Solution: Initialize to NULL.
+Files: src/eval.c
+
+Patch 8.2.2029
+Problem: Coverity warns for not checking return value.
+Solution: Check that u_save_cursor() returns OK.
+Files: src/ops.c
+
+Patch 8.2.2030
+Problem: Some tests fail on Mac.
+Solution: Avoid Mac test failures. Add additional test for wildmenu.
+ (Yegappan Lakshmanan, closes #7341)
+Files: src/testdir/runtest.mnv, src/testdir/test_cmdline.mnv,
+ src/testdir/test_options.mnv, src/testdir/test_popupwin.mnv
+
+Patch 8.2.2031
+Problem: Some tests fail when run under valgrind.
+Solution: Avoid timing problems.
+Files: src/testdir/test_mnv9_func.mnv, src/testdir/test_channel.mnv,
+ src/testdir/test_clientserver.mnv, src/testdir/test_debugger.mnv,
+ src/testdir/test_quotestar.mnv
+
+Patch 8.2.2032
+Problem: Cabalconfig and cabalproject filetypes not recognized.
+Solution: Detect more cabal files. (Marcin Szamotulski, closes #7339)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.2033
+Problem: MNV9: :def without argument gives compilation error.
+Solution: Add the DEF instruction. (closes #7344)
+Files: src/ex_docmd.c, src/mnv9.h, src/mnv9compile.c, src/mnv9execute.c,
+ src/userfunc.c, src/proto/userfunc.pro,
+ src/testdir/test_mnv9_disassemble.mnv,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2034
+Problem: MNV9: list unpack in for statement not compiled yet.
+Solution: Compile list unpack. (closes #7345)
+Files: src/mnv9.h, src/mnv9compile.c, src/mnv9execute.c, src/errors.h,
+ src/eval.c, src/testdir/test_mnv9_disassemble.mnv,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2035
+Problem: MS-Windows: some tests may fail.
+Solution: Avoid test failures. (Yegappan Lakshmanan, closes #7346)
+Files: src/testdir/test_channel.mnv, src/testdir/test_ex_mode.mnv,
+ src/testdir/test_functions.mnv
+
+Patch 8.2.2036
+Problem: Current buffer is messed up if creating a new buffer for the
+ quickfix window fails.
+Solution: Check that creating the buffer succeeds. (closes #7352)
+Files: src/quickfix.c, src/testdir/test_quickfix.mnv,
+ src/testdir/dumps/Test_quickfix_window_fails.dump
+
+Patch 8.2.2037
+Problem: Compiler test depends on list of compiler plugins.
+Solution: Compare with the actual list of compiler plugins.
+Files: src/testdir/test_compiler.mnv
+
+Patch 8.2.2038
+Problem: Compiler test fails on MS-Windows.
+Solution: Sort the found compiler plugin names.
+Files: src/testdir/test_compiler.mnv
+
+Patch 8.2.2039
+Problem: MNVinfo is not written when creating a new file.
+Solution: Set "b_marks_read" in the new buffer. (Christian Brabandt,
+ closes #7350)
+Files: src/bufwrite.c, src/testdir/test_mnvinfo.mnv
+
+Patch 8.2.2040
+Problem: Terminal buffer disappears even when 'bufhidden' is "hide".
+ (Sergey Vlasov)
+Solution: Check 'bufhidden' when a terminal buffer becomes hidden.
+ (closes #7358)
+Files: src/buffer.c, src/testdir/test_terminal.mnv
+
+Patch 8.2.2041
+Problem: Haskell filetype not optimally recognized.
+Solution: Recognize all *.hsc files as Haskell. (Marcin Szamotulski,
+ closes #7354)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.2042
+Problem: Build failure with +profile but without +reltime.
+Solution: Adjust #ifdef. (Christian Brabandt, closes #7361)
+Files: src/syntax.c
+
+Patch 8.2.2043
+Problem: GTK3: white border around text stands out.
+Solution: Use current theme color. (closes #7357, issue #349)
+Files: src/gui_gtk_x11.c
+
+Patch 8.2.2044
+Problem: MS-Windows: swap file test sometimes fails.
+Solution: Use a more reliable way to change the process ID. When "timeout"
+ fails use "ping" to wait up to ten minutes. (Ken Takata,
+ closes #7365)
+Files: .github/workflows/ci-windows.yaml, src/testdir/test_swap.mnv
+
+Patch 8.2.2045
+Problem: Highlighting a character too much with incsearch.
+Solution: Check "search_match_endcol". (Christian Brabandt, closes #7360)
+Files: src/drawline.c, src/testdir/test_search.mnv,
+ src/testdir/dumps/Test_incsearch_newline1.dump,
+ src/testdir/dumps/Test_incsearch_newline2.dump,
+ src/testdir/dumps/Test_incsearch_newline3.dump,
+ src/testdir/dumps/Test_incsearch_newline4.dump,
+ src/testdir/dumps/Test_incsearch_newline5.dump
+
+Patch 8.2.2046
+Problem: Some test failures don't give a clear error.
+Solution: Use assert_match() and assert_fails() instead of assert_true().
+ (Ken Takata, closes #7368)
+Files: src/testdir/test_autocmd.mnv, src/testdir/test_backspace_opt.mnv
+
+Patch 8.2.2047
+Problem: Amiga: FEAT_ARP defined when it should not.
+Solution: Adjust #ifdef. (Ola Söder, closes #7370)
+Files: src/feature.h
+
+Patch 8.2.2048
+Problem: Amiga: obsolete code.
+Solution: Remove the unused lines. (Ola Söder, closes #7373)
+Files: src/gui.c
+
+Patch 8.2.2049
+Problem: Amiga: obsolete function.
+Solution: Remove the function. (Ola Söder, closes #7374)
+Files: src/memfile.c
+
+Patch 8.2.2050
+Problem: Search test contains unneeded sleeps.
+Solution: Rename the function, remove sleeps. (Christian Brabandt,
+ closes #7369)
+Files: src/testdir/test_search.mnv
+
+Patch 8.2.2051
+Problem: MNV9: crash when aborting a user function call.
+Solution: Do not use the return value when aborting. (closes #7372)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2052
+Problem: MNV9: "edit +4 fname" gives an error. (Naruhiko Nishino)
+Solution: Allow using a range in the +cmd argument. (closes #7364)
+Files: src/ex_docmd.c, src/proto/ex_docmd.pro, src/mnv.h, src/ex_cmds.c,
+ src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2053
+Problem: MNV9: lambda doesn't accept argument types.
+Solution: Optionally accept argument types at the script level.
+Files: src/eval.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2054
+Problem: Amiga: FEAT_ARP defined when it should not.
+Solution: Adjust "||" to "&&" in #ifdef. (Ola Söder, closes #7375)
+Files: src/feature.h
+
+Patch 8.2.2055
+Problem: MS-Windows: two MNV instances may use the same temp file.
+Solution: Use the process ID for the temp name. (Ken Takata, closes #7378)
+Files: src/fileio.c
+
+Patch 8.2.2056
+Problem: Configure fails when building with the
+ "implicit-function-declaration" error enabled, specifically on Mac.
+Solution: Declare the functions like in the source code. (suggestion by
+ Clemens Lang, closes #7380)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.2057
+Problem: Getting the selection may trigger TextYankPost autocmd.
+Solution: Only trigger the autocommand when yanking in MNV, not for getting
+ the selection. (closes #7367)
+Files: src/clipboard.c, src/normal.c, src/register.c,
+ src/testdir/test_autocmd.mnv
+
+Patch 8.2.2058
+Problem: Using mkview/loadview changes the jumplist.
+Solution: Use ":keepjumps". Don't let ":badd" or ":balt" change the
+ jumplist. (closes #7371)
+Files: src/session.c, src/ex_docmd.c, src/testdir/test_mksession.mnv
+
+Patch 8.2.2059
+Problem: Amiga: can't find plugins.
+Solution: Do not use "**" in the pattern. (Ola Söder, closes #7384)
+Files: src/main.c
+
+Patch 8.2.2060
+Problem: Check for features implemented with "if".
+Solution: Use the Check commands. (Ken Takata, closes #7383)
+Files: src/testdir/test_autocmd.mnv, src/testdir/test_compiler.mnv,
+ src/testdir/test_delete.mnv, src/testdir/test_diffmode.mnv,
+ src/testdir/test_expr.mnv, src/testdir/test_fold.mnv
+
+Patch 8.2.2061
+Problem: MNV9: E1030 error when using empty string for term_sendkeys().
+Solution: Don't check for an invalid type unless the terminal can't be
+ found. (closes #7382)
+Files: src/terminal.c, src/testdir/test_termcodes.mnv
+
+Patch 8.2.2062
+Problem: <Cmd> does not handle CTRL-V.
+Solution: Call get_literal() after encountering CTRL-V. (closes #7387)
+Files: src/getchar.c, src/testdir/test_mapping.mnv
+
+Patch 8.2.2063
+Problem: MNV9: only one level of indexing supported.
+Solution: Handle more than one index in an assignment.
+Files: src/mnv9compile.c, src/errors.h, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2064
+Problem: terminal: cursor is on while redrawing, causing flicker.
+Solution: Switch the cursor off while redrawing. Always add the top and
+ left offset to the cursor position when not done already.
+ (closes #5943)
+Files: src/terminal.c, src/popupwin.c
+
+Patch 8.2.2065
+Problem: Using map() and filter() on a range() is inefficient.
+Solution: Do not materialize the range. (closes #7388)
+Files: src/list.c, src/testdir/test_functions.mnv
+
+Patch 8.2.2066
+Problem: MNV9: assignment with += doesn't work.
+Solution: Do not see the "+" as an addition operator.
+Files: src/eval.c, src/ex_docmd.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2067 (after 8.2.2064)
+Problem: Cursor position in popup terminal is wrong.
+Solution: Don't check the flags.
+Files: src/terminal.c, src/testdir/test_popupwin.mnv
+
+Patch 8.2.2068
+Problem: Transparent syntax item uses start/end of containing region.
+Solution: Do not change the startpos and endpos of a transparent region to
+ that of its containing region. (Adrian Ghizaru, closes #7349,
+ closes #7391)
+Files: src/syntax.c, src/testdir/test_syntax.mnv
+
+Patch 8.2.2069
+Problem: The quickfix window is not updated after setqflist().
+Solution: Update the quickfix buffer. (Yegappan Lakshmanan, closes #7390,
+ closes #7385)
+Files: src/quickfix.c, src/testdir/test_quickfix.mnv
+
+Patch 8.2.2070
+Problem: Can't get the exit value in MNVLeave or MNVLeavePre autocommands.
+Solution: Add v:exiting like in Neomnv. (Yegappan Lakshmanan, closes #7395)
+Files: runtime/doc/autocmd.txt, runtime/doc/eval.txt, src/evalvars.c,
+ src/main.c, src/testdir/test_exit.mnv, src/mnv.h
+
+Patch 8.2.2071
+Problem: MNV9: list assign doesn't accept an empty remainder list.
+Solution: Recognize list assignment with ";".
+Files: src/ex_docmd.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2072
+Problem: MNV9: list assign not well tested.
+Solution: Test with different destinations. Fix white space error.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2073
+Problem: MNV9: for with unpack only works for local variables.
+Solution: Recognize different destinations.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2074
+Problem: MNV9: using :normal from MNV9 script can't handle range.
+Solution: Execute a :normal command in legacy script context. (closes #7401)
+Files: src/structs.h, src/ex_docmd.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2075
+Problem: Error for const argument to mapnew().
+Solution: Don't give an error. (closes #7400)
+Files: src/list.c, src/testdir/test_filter_map.mnv
+
+Patch 8.2.2076
+Problem: MS-Windows console: sometimes drops typed characters.
+Solution: Do not wait longer than 10 msec for input. (issue #7164)
+Files: src/os_win32.c
+
+Patch 8.2.2077
+Problem: Build failure with small features.
+Solution: Add #ifdef.
+Files: src/structs.h, src/ex_docmd.c
+
+Patch 8.2.2078
+Problem: Illegal memory access when using :print on invalid text. (Dhiraj
+ Mishra)
+Solution: Check for more composing characters than supported. (closes #7399)
+Files: src/message.c, src/testdir/test_utf8.mnv
+
+Patch 8.2.2079
+Problem: MNV9: cannot put a linebreak before or after "in" of ":for".
+Solution: Skip over linebreak.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2080
+Problem: MNV9: no proper error message for using s:var in for loop.
+Solution: Give a specific error.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2081
+Problem: MNV9: cannot handle a linebreak after "=" in assignment.
+Solution: Skip over linebreak. (closes #7407)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_assign.mnv,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2082
+Problem: MNV9: can still use the deprecated #{} dict syntax.
+Solution: Remove support for #{} in MNV9 script. (closes #7406, closes #7405)
+Files: src/dict.c, src/proto/dict.pro, src/eval.c, src/mnv9compile.c,
+ src/testdir/test_mnv9_assign.mnv,
+ src/testdir/test_mnv9_builtin.mnv, src/testdir/test_mnv9_cmd.mnv,
+ src/testdir/test_mnv9_disassemble.mnv,
+ src/testdir/test_mnv9_expr.mnv, src/testdir/test_mnv9_func.mnv,
+ src/testdir/test_mnv9_script.mnv, src/testdir/test_popupwin.mnv,
+ src/testdir/test_textprop.mnv
+
+Patch 8.2.2083
+Problem: MNV9: crash when using ":silent!" and getting member fails.
+Solution: Jump to on_fatal_error. (closes #7412)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2084
+Problem: CTRL-V U doesn't work to enter a Unicode character when
+ modifyOtherKeys is effective. (Ken Takata)
+Solution: Add a flag to get_literal() for the shift key. (closes #7413)
+Files: src/edit.c, src/proto/edit.pro, src/ex_getln.c, src/getchar.c,
+ src/normal.c, src/testdir/test_termcodes.mnv
+
+Patch 8.2.2085
+Problem: Qt translation file is recognized as typescript.
+Solution: Check the first line for "<?xml". (closes #7418)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.2086
+Problem: Libvterm tests are only run on Linux.
+Solution: Use static libraries. (Ozaki Kiichi, closes #7419)
+Files: .travis.yml, src/Makefile, src/libvterm/Makefile,
+ src/libvterm/t/run-test.pl
+
+Patch 8.2.2087
+Problem: MNV9: memory leak when statement is truncated.
+Solution: Increment the number of local variables.
+Files: src/mnv9compile.c
+
+Patch 8.2.2088
+Problem: MNV9: script test sometimes fails.
+Solution: Unlet variables.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2089
+Problem: Libvterm test fails to build on Mac.
+Solution: Adjust configure to remove a space between -L and the path that
+ follows.
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.2090
+Problem: MNV9: dict does not accept a key in quotes.
+Solution: Recognize a key in single or double quotes.
+Files: runtime/doc/mnv9.txt, src/dict.c, src/proto/dict.pro,
+ src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2091
+Problem: MS-Windows: build warnings.
+Solution: Add a #pragma to suppress the deprecation warning. (Ken Takata)
+ Avoid using a non-ASCII character. (closes #7421)
+Files: src/message.c, src/os_win32.c
+
+Patch 8.2.2092
+Problem: MNV9: unpredictable errors for script tests.
+Solution: Use a different script file name for each run.
+Files: src/testdir/mnv9.mnv, src/testdir/test_mnv9_script.mnv,
+ src/testdir/test_mnv9_func.mnv, src/testdir/test_quickfix.mnv,
+ src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2093
+Problem: MNV9: script test sometimes fails.
+Solution: Do not find a script variable by its typval if the name was
+ cleared.
+Files: src/mnv9script.c
+
+Patch 8.2.2094
+Problem: When an expression fails getting the next command may be wrong.
+Solution: Do not check for a next command after :eval fails. (closes #7415)
+Files: src/eval.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2095
+Problem: MNV9: crash when failed dict member is followed by concatenation.
+Solution: Remove the dict from the stack. (closes #7416)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2096
+Problem: MNV9: command modifiers not restored after assignment.
+Solution: Jump to nextline instead of using continue.
+Files: src/mnv9compile.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2097
+Problem: MNV9: using :silent! when calling a function prevents aborting
+ that function.
+Solution: Add emsg_silent_def and did_emsg_def.
+Files: src/globals.h, src/message.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2098
+Problem: MNV9: function argument of sort() and map() not tested.
+Solution: Add a couple of tests.
+Files: src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.2099
+Problem: MNV9: some checks are not tested.
+Solution: Add a few more tests. Give better error messages.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2100
+Problem: Insufficient testing for function range and dict.
+Solution: Add a few tests. (Dominique Pellé, closes #7428)
+Files: src/testdir/test_functions.mnv, src/testdir/test_lambda.mnv,
+ src/testdir/test_signals.mnv, src/testdir/test_user_func.mnv
+
+Patch 8.2.2101
+Problem: MNV9: memory leak when literal dict has an error and when an
+ expression is not complete.
+Solution: Clear the typval and the growarray.
+Files: src/dict.c, src/mnv9compile.c
+
+Patch 8.2.2102
+Problem: MNV9: not all error messages tested.
+Solution: Add a few test cases.
+Files: src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2103
+Problem: MNV9: unreachable code.
+Solution: Remove the code to prepend s: to the variable name
+Files: src/mnv9compile.c
+
+Patch 8.2.2104
+Problem: Build problem with Ruby 2.7.
+Solution: Adjust function declarations. (Ozaki Kiichi, closes #7430)
+Files: src/configure.ac, src/auto/configure, src/if_ruby.c
+
+Patch 8.2.2105
+Problem: Sound test is a bit flaky.
+Solution: Use WaitForAssert(). (Dominique Pellé, closes #7429)
+Files: src/testdir/test_sound.mnv
+
+Patch 8.2.2106
+Problem: TOML files are not recognized.
+Solution: Match *.toml. (issue #7432)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.2107
+Problem: MNV9: some errors not tested.
+Solution: Add tests. Fix getting the right error.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_assign.mnv,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2108
+Problem: MNV9: no test to check for :let error.
+Solution: Add a test. Rename tests from _let_ to _var_.
+Files: src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2109
+Problem: "mnv -" does not work well when modifyOtherKeys is enabled and a
+ shell command is executed on startup.
+Solution: Only change modifyOtherKeys when executing a shell command in raw
+ mode.
+Files: src/os_unix.c
+
+Patch 8.2.2110
+Problem: Cannot use ":shell" when reading from stdin. (Gary Johnson)
+Solution: Revert patch 8.2.1833.
+Files: src/main.c
+
+Patch 8.2.2111
+Problem: GTK: Menu background is the same color as the main window.
+Solution: Fix white space around the text in another way. (closes #7437,
+ closes #7427)
+Files: src/gui_gtk_x11.c
+
+Patch 8.2.2112
+Problem: Running tests may leave some files behind.
+Solution: Delete the right files. Fix a few typos. (Dominique Pellé,
+ closes #7436)
+Files: src/testdir/test_filetype.mnv, src/testdir/test_messages.mnv,
+ src/testdir/test_mksession.mnv
+
+Patch 8.2.2113
+Problem: MS-Windows GUI: crash after using ":set guifont=" four times.
+Solution: Check for NULL pointer. (Ken Takata, closes #7434)
+Files: src/gui_dwrite.cpp, src/testdir/test_gui.mnv
+
+Patch 8.2.2114
+Problem: MNV9: unreachable code in assignment.
+Solution: Remove impossible condition and code.
+Files: src/mnv9compile.c
+
+Patch 8.2.2115
+Problem: MNV9: some errors not tested for; dead code.
+Solution: Add a test. Remove dead code.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2116
+Problem: MS-Windows GUI: test for 'guifont' is incomplete.
+Solution: Set 'renderoptions'. (Christian Brabandt)
+Files: src/testdir/test_gui.mnv
+
+Patch 8.2.2117
+Problem: Some functions use any value as a string.
+Solution: Check that the value is a non-empty string.
+Files: src/typval.c, src/proto/typval.pro, src/mbyte.c, src/filepath.c,
+ src/testdir/test_mnv9_builtin.mnv, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2118
+Problem: Dead code in the job support. (Dominique Pellé)
+Solution: Define USE_ARGV before checking for it.
+Files: src/job.c
+
+Patch 8.2.2119
+Problem: GTK3: status line background color is wrong.
+Solution: Don't change the code for earlier GTK3 versions. (closes #7444)
+Files: src/gui_gtk_x11.c
+
+Patch 8.2.2120
+Problem: Not all Perl functionality is tested.
+Solution: Add a few more test cases. (Dominique Pellé, closes #7440)
+Files: src/testdir/test_perl.mnv
+
+Patch 8.2.2121
+Problem: Internal error when using \ze before \zs in a pattern.
+Solution: Check the end is never before the start. (closes #7442)
+Files: src/regexp_bt.c, src/regexp_nfa.c,
+ src/testdir/test_regexp_latin.mnv
+
+Patch 8.2.2122
+Problem: MNV9: crash when sourcing mnv9script early.
+Solution: Use set_option_value() instead of setting p_cpo directly.
+ (closes #7441)
+Files: src/scriptfile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2123
+Problem: After using a complete popup the buffer is listed. (Boris
+ Staletic)
+Solution: Make the buffer unlisted.
+Files: src/popupmenu.c, src/testdir/test_popupwin.mnv
+
+Patch 8.2.2124
+Problem: MNV9: a range cannot be computed at runtime.
+Solution: Add the ISN_RANGE instruction.
+Files: src/mnv9.h, src/mnv9compile.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_script.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.2125 (after 8.2.2122)
+Problem: MNV9: leaking memory.
+Solution: Free the saved 'cpo' value.
+Files: src/scriptfile.c
+
+Patch 8.2.2126
+Problem: Ruby: missing function prototype.
+Solution: Add the prototype.
+Files: src/if_ruby.c
+
+Patch 8.2.2127
+Problem: MNV9: executing user command defined in MNV9 script not tested.
+Solution: Add a test.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2128
+Problem: There is no way to do something on CTRL-Z.
+Solution: Add MNVSuspend and MNVResume autocommand events. (closes #7450)
+Files: runtime/doc/autocmd.txt, src/autocmd.c, src/ex_docmd.c,
+ src/normal.c, src/testdir/test_suspend.mnv, src/mnv.h
+
+Patch 8.2.2129
+Problem: MS-Windows: Checking if a file name is absolute is slow.
+Solution: Do not use mch_FullName(). (closes #7033)
+Files: src/os_mswin.c
+
+Patch 8.2.2130
+Problem: Insert mode completion messages end up in message history.
+Solution: Set msg_hist_off. (closes #7452)
+Files: src/insexpand.c, src/testdir/test_ins_complete.mnv
+
+Patch 8.2.2131
+Problem: MNV9: crash when lambda uses same var as assignment.
+Solution: Do not let lookup_local change lv_from_outer, make a copy.
+ (closes #7461)
+Files: src/mnv9compile.c, src/ex_docmd.c, src/proto/ex_docmd.pro,
+ src/evalvars.c, src/proto/evalvars.pro,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2132
+Problem: Padding not drawn properly for popup window with title.
+Solution: Draw the padding below the title. (closes #7460)
+Files: src/popupwin.c, src/testdir/test_popupwin.mnv,
+ src/testdir/dumps/Test_popupwin_longtitle_3.dump,
+ src/testdir/dumps/Test_popupwin_longtitle_4.dump
+
+Patch 8.2.2133
+Problem: MNV9: checking for a non-empty string is too strict.
+Solution: Check for any string. (closes #7447)
+Files: src/typval.c, src/proto/typval.pro, src/errors.h, src/filepath.c,
+ src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.2134
+Problem: MNV9: get E1099 when autocmd triggered in builtin function.
+Solution: Check that did_emsg increased instead of checking that it changed.
+ (closes #7448)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2135
+Problem: MNV9: #{ still seen as start of dict in some places.
+Solution: Remove check for { after #. (closes #7456)
+Files: src/ex_docmd.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2136
+Problem: MNV9: Using uninitialized variable.
+Solution: Initialize "len" to zero. Clean up fnamemodify().
+Files: src/filepath.c
+
+Patch 8.2.2137
+Problem: MNV9: :echo and :execute give error for empty argument.
+Solution: Ignore an empty argument. (closes #7468)
+Files: src/mnv9compile.c, src/errors.h, src/testdir/test_mnv9_script.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.2138
+Problem: MNV9: "exit_cb" causes MNV to exit.
+Solution: Require white space after a command in MNV9 script. (closes #7467)
+ Also fix that MNV9 style heredoc was not always recognized.
+Files: src/ex_cmds.h, src/ex_docmd.c, src/errors.h, src/userfunc.c,
+ src/testdir/test_mnv9_assign.mnv,
+ src/testdir/test_mnv9_script.mnv, src/testdir/test_let.mnv
+
+Patch 8.2.2139
+Problem: MNV9: unreachable code in assignment.
+Solution: Don't check "new_local" when "has_index" is set. Add test for
+ wrong type of list index.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2140
+Problem: Build failure with tiny features.
+Solution: Add #ifdef.
+Files: src/ex_docmd.c
+
+Patch 8.2.2141
+Problem: A user command with try/catch may not catch an expression error.
+Solution: When an expression fails check for following "|". (closes #7469)
+Files: src/eval.c, src/testdir/test_trycatch.mnv,
+ src/testdir/test_mnvscript.mnv
+
+Patch 8.2.2142
+Problem: Memory leak when heredoc is not terminated.
+Solution: Free heredoc_trimmed.
+Files: src/userfunc.c
+
+Patch 8.2.2143
+Problem: MNV9: dead code in compiling :unlet.
+Solution: Don't check for "!" a second time.
+Files: src/mnv9compile.c
+
+Patch 8.2.2144
+Problem: MNV9: some corner cases not tested.
+Solution: Add a few tests.
+Files: src/testdir/test_mnv9_script.mnv, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2145
+Problem: MNV9: concatenating lists does not adjust type of result.
+Solution: When list member types differ use "any" member type.
+ (closes #7473)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2146
+Problem: MNV9: automatic conversion of number to string for dict key.
+Solution: Do not convert number to string. (closes #7474)
+Files: src/dict.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2147
+Problem: Quickfix window title not updated in all tab pages.
+Solution: Update the quickfix window title in all tab pages. (Yegappan
+ Lakshmanan, closes #7481, closes #7466)
+Files: src/quickfix.c, src/testdir/test_quickfix.mnv
+
+Patch 8.2.2148
+Problem: MNV9: crash when user command doesn't match.
+Solution: Adjust command index. (closes #7479)
+Files: src/ex_docmd.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2149
+Problem: Popupwin test for latin1 sometimes fails.
+Solution: Wait for the script to finish.
+Files: src/testdir/test_popupwin.mnv
+
+Patch 8.2.2150
+Problem: Github actions CI isn't used for all available platforms.
+Solution: Update the github workflows. (Ozaki Kiichi, closes #7433)
+Files: .coveralls.yml, .github/workflows/ci-windows.yaml,
+ .github/workflows/ci.yml, .travis.yml, README.md,
+ ci/build-snd-dummy.sh, ci/setup-xvfb.sh
+
+Patch 8.2.2151
+Problem: $dir not expanded when configure checks for moonjit.
+Solution: Use double quotes instead of single quotes. (closes #7478)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.2152
+Problem: screenpos() does not include the WinBar offset.
+Solution: Use W_WINROW() instead of directly using w_window. (closes #7487)
+Files: src/move.c, src/testdir/test_cursor_func.mnv
+
+Patch 8.2.2153
+Problem: Popupwin test for latin1 still fails sometimes.
+Solution: Wait for the "cat" command to finish.
+Files: src/testdir/test_popupwin.mnv
+
+Patch 8.2.2154
+Problem: Popupwin test for terminal buffer fails sometimes.
+Solution: Wait for the prompt to appear.
+Files: src/testdir/test_popupwin.mnv
+
+Patch 8.2.2155
+Problem: Warning from Github actions for code analysis.
+Solution: Remove the "git checkout HEAD^2" block.
+Files: .github/workflows/codeql-analysis.yml
+
+Patch 8.2.2156
+Problem: Github actions run on pushing a tag.
+Solution: Don't run CI on tag push. Omit coveralls on pull-request.
+ (Ozaki Kiichi, closes #7489)
+Files: .github/workflows/ci.yml, .github/workflows/codeql-analysis.yml
+
+Patch 8.2.2157
+Problem: MNV9: can delete a MNV9 script variable from a function.
+Solution: Check the variable is defined in MNV9 script. (closes #7483)
+Files: src/evalvars.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2158
+Problem: CI on cirrus times out, coveralls doesn't always run.
+Solution: Set timeout to 20 minutes. Adjust condition. (closes #7493)
+Files: .cirrus.yml, .github/workflows/ci.yml
+
+Patch 8.2.2159
+Problem: MNV9: when declaring a list it is not allocated yet, causing a
+ following extend() to fail.
+Solution: When fetching a variable value for a list or dict that is null
+ allocate the list or dict, so it can be used. (closes #7491)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2160
+Problem: Various typos.
+Solution: Fix spelling mistakes. (closes #7494)
+Files: src/bufwrite.c, src/cindent.c, src/cmdexpand.c, src/eval.c,
+ src/ex_cmds.c, src/feature.h, src/getchar.c, src/gui_haiku.cc,
+ src/gui_xmdlg.c, src/help.c, src/if_ole.cpp, src/insexpand.c,
+ src/list.c, src/map.c, src/memline.c, src/normal.c,
+ src/os_win32.c, src/search.c, src/term.c,
+ src/testdir/test_arglist.mnv, src/testdir/test_autocmd.mnv,
+ src/testdir/test_debugger.mnv, src/testdir/test_increment.mnv,
+ src/testdir/test_menu.mnv, src/testdir/test_netbeans.mnv,
+ src/testdir/test_popupwin.mnv, src/testdir/test_python2.mnv,
+ src/testdir/test_python3.mnv, src/testdir/test_sort.mnv,
+ src/testdir/test_terminal2.mnv, src/testdir/test_terminal3.mnv,
+ src/testdir/test_vartabs.mnv, src/testdir/test_mnvscript.mnv,
+ src/textprop.c, src/userfunc.c, src/mnv9.h, src/mnv9compile.c,
+ src/mnv9execute.c
+
+Patch 8.2.2161
+Problem: Arguments -T and -x not tested yet.
+Solution: Add a test. (Dominique Pellé, closes #7490)
+Files: src/testdir/test_startup.mnv
+
+Patch 8.2.2162
+Problem: MNV9: Cannot load or store autoload variables.
+Solution: Add ISN_LOADAUTO and ISN_STOREAUTO. (closes #7485)
+Files: src/mnv9compile.c, src/mnv9.h, src/mnv9execute.c, src/dict.c,
+ src/eval.c, src/evalvars.c, src/proto/evalvars.pro,
+ src/testdir/test_mnv9_disassemble.mnv,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2163
+Problem: Crash when discarded exception is the current exception.
+Solution: Compare the exception with current_exception. (closes #7499)
+Files: src/ex_eval.c
+
+Patch 8.2.2164
+Problem: MNV9: autoload function doesn't work in script that starts with
+ an upper case letter.
+Solution: Check for the autoload character. (closes #7502)
+Files: src/userfunc.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2165
+Problem: MNV9: assignment to dict member does not work.
+Solution: Fix recognizing dict member. (closes #7484)
+Files: src/ex_docmd.c, src/eval.c, src/evalvars.c, src/mnv.h
+
+Patch 8.2.2166
+Problem: Auto format doesn't work when deleting text.
+Solution: Make "x" trigger auto format. (closes #7504)
+Files: src/ops.c, src/testdir/test_textformat.mnv
+
+Patch 8.2.2167
+Problem: MNV9: assign test fails. (Elimar Riesebieter)
+Solution: Adjust the test for dict assignment.
+Files: src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2168
+Problem: MNV9: error for assigning to dict of dict.
+Solution: Remember the destination type. (closes #7506)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2169
+Problem: MNV9: test leaves file behind.
+Solution: Rename script files. (Dominique Pellé, closes #7511)
+ Use try/finally.
+Files: src/testdir/test_mnv9_script.mnv, src/testdir/mnv9.mnv
+
+Patch 8.2.2170
+Problem: MNV9: a global function defined in a :def function fails if it
+ uses the context.
+Solution: Create a partial to store the closure context. (see #7410)
+Files: src/userfunc.c, src/proto/userfunc.pro, src/mnv9execute.c,
+ src/structs.h, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2171
+Problem: Valgrind warning for using uninitialized value.
+Solution: Do not use "startp" or "endp" unless there is a match.
+Files: src/regexp_nfa.c
+
+Patch 8.2.2172
+Problem: MNV9: number of arguments is not always checked. (Yegappan
+ Lakshmanan)
+Solution: Check number of arguments when calling function by name.
+Files: src/userfunc.c, src/proto/userfunc.pro, src/mnv9execute.c,
+ src/testdir/test_mnv9_func.mnv, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2173
+Problem: MNV9: get internal error when assigning to undefined variable.
+Solution: Add error message. (closes #7475)
+Files: src/mnv9compile.c, src/mnv9execute.c, src/errors.h,
+ src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2174
+Problem: Mac version doesn't specify the CPU architecture.
+Solution: Add "arm64" or "x86_64". (Yee Cheng Chin, closes #7519)
+Files: src/version.c
+
+Patch 8.2.2175
+Problem: Github actions: clang-11 handling suboptimal.
+Solution: Separate step of installing clang-11. Get ubuntu release name
+ dynamically. (Ozaki Kiichi, closes #7514)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.2176
+Problem: Crash with a sequence of fold commands.
+Solution: Bail out when there are no folds at all. Add a test (Dominique
+ Pellé) (closes #7515)
+Files: src/fold.c, src/testdir/test_fold.mnv
+
+Patch 8.2.2177
+Problem: Pattern "^" does not match if the first character in the line is
+ combining. (Rene Kita)
+Solution: Do accept a match at the start of the line. (closes #6963)
+Files: src/regexp_nfa.c, src/testdir/test_regexp_utf8.mnv
+
+Patch 8.2.2178
+Problem: Python 3: non-utf8 character cannot be handled.
+Solution: Change the string decode. (Björn Linse, closes #1053)
+Files: src/if_py_both.h, src/if_python.c, src/if_python3.c,
+ src/testdir/test_python3.mnv, src/testdir/test_python2.mnv
+
+Patch 8.2.2179
+Problem: MNV9: crash when indexing a dict with a number.
+Solution: Add ISN_STOREINDEX. (closes #7513)
+Files: src/mnv9compile.c, src/mnv9execute.c, src/mnv9.h,
+ src/errors.h, src/testdir/test_mnv9_assign.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.2180
+Problem: MNV9: test for error after error is flaky.
+Solution: Wait for job to finish instead of a fixed delay.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2181
+Problem: Valgrind warnings for using uninitialized value.
+Solution: Do not use "start" or "end" unless there is a match.
+Files: src/regexp_nfa.c, src/regexp_bt.c
+
+Patch 8.2.2182
+Problem: MNV9: value of 'magic' is still relevant.
+Solution: Always behave like 'magic' is on in MNV9 script (closes #7509)
+Files: src/option.c, src/proto/option.pro, src/arglist.c, src/buffer.c,
+ src/cmdexpand.c, src/ex_cmds.c, src/ex_docmd.c, src/ex_getln.c,
+ src/insexpand.c, src/normal.c, src/search.c, src/tag.c,
+ src/structs.h, src/globals.h, src/ex_cmds.h,
+ src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2183
+Problem: MNV9: value of 'edcompatible' and 'gdefault' are used.
+Solution: Ignore these deprecated options in MNV9 script. (closes #7508)
+Files: src/ex_cmds.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2184
+Problem: MNV9: no error when using "2" for a line number.
+Solution: Give an error message if the line number is invalid. (closes #7492)
+Files: src/typval.c, src/evalfunc.c, src/testdir/test_mnv9_builtin.mnv,
+ src/testdir/test_cursor_func.mnv
+
+Patch 8.2.2185
+Problem: BufUnload is not triggered for the quickfix dummy buffer.
+Solution: Do trigger BufUnload. (Pontus Leitzler, closes #7518, closes #7517)
+ Fix white space around "=".
+Files: src/quickfix.c, src/testdir/test_autocmd.mnv
+
+Patch 8.2.2186
+Problem: MNV9: error when using 'opfunc'.
+Solution: Do not expect a return value from 'opfunc'. (closes #7510)
+Files: src/eval.c, src/proto/eval.pro, src/ops.c,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2187
+Problem: Python 3 test fails sometimes. (Christian Brabandt)
+Solution: Accept two SystemError messages.
+Files: src/testdir/test_python3.mnv
+
+Patch 8.2.2188
+Problem: MNV9: crash when calling global function from :def function.
+Solution: Set the outer context. Define the partial for the context on the
+ original function. Use a refcount to keep track of which ufunc is
+ using a dfunc. (closes #7525)
+Files: src/mnv9compile.c, src/proto/mnv9compile.pro, src/mnv9execute.c,
+ src/proto/mnv9execute.pro, src/userfunc.c, src/proto/userfunc.pro,
+ src/structs.h, src/mnv9.h, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2189
+Problem: Cannot repeat a command that uses the small delete register.
+Solution: Store the register name instead of the contents. (Christian
+ Brabandt, closes #7527)
+Files: src/ops.c, src/register.c, src/testdir/test_registers.mnv
+
+Patch 8.2.2190
+Problem: MNV9: crash when compiled with EXITFREE.
+Solution: Check that df_ufunc is not NULL.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2191
+Problem: MNV9: using wrong name with lambda in nested function.
+Solution: Copy the lambda name earlier. (closes #7525)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2192
+Problem: Codecov on github actions fails.
+Solution: Revert to codecov script. (Ozaki Kiichi, closes #7529)
+Files: Filelist, .github/workflows/ci.yml
+
+Patch 8.2.2193
+Problem: MNV9: can change constant in :def function.
+Solution: Check if a variable is locked. (issue #7526)
+Files: src/evalvars.c, src/proto/evalvars.pro, src/mnv9execute.c,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2194
+Problem: MNV9: cannot use :const or :final at the script level.
+Solution: Support using :const and :final. (closes #7526)
+Files: src/mnv.h, src/evalvars.c, src/testdir/test_mnv9_assign.mnv,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2195
+Problem: Failing tests for :const.
+Solution: Add missing check for ASSIGN_FINAL.
+Files: src/eval.c, src/evalvars.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2196
+Problem: :version output has extra spaces in compile and link command.
+Solution: Adjust QUOTESED. (closes #7505)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.2197
+Problem: Assert arguments order reversed.
+Solution: Swap the arguments. (Christian Brabandt, closes #7531)
+Files: src/testdir/test_registers.mnv
+
+Patch 8.2.2198
+Problem: ml_get error when resizing window and using text property.
+Solution: Validate botline of the right window. (closes #7528)
+Files: src/move.c, src/proto/move.pro, src/textprop.c,
+ src/testdir/test_textprop.mnv
+
+Patch 8.2.2199
+Problem: First write after setting 'eol' does not have NL added. (Tomáš
+ Janoušek)
+Solution: Only use b_no_eol_lnum when doing a binary write. (closes #7535)
+Files: src/bufwrite.c, src/testdir/test_writefile.mnv
+
+Patch 8.2.2200
+Problem: MNV9: lambda without white space around -> is confusing.
+Solution: Require white space in a :def function. (issue #7503)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.2201
+Problem: Write file test fails on MS-Windows.
+Solution: Force edit after setting 'fileformat'.
+Files: src/testdir/test_writefile.mnv
+
+Patch 8.2.2202
+Problem: Write file test still fails on MS-Windows.
+Solution: Set fileformat with the :edit command
+Files: src/testdir/test_writefile.mnv
+
+Patch 8.2.2203
+Problem: Moodle gift files are not recognized.
+Solution: Add a filetype pattern. (Delim Temizer)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.2204
+Problem: MNV9: using -> both for method and lambda is confusing.
+Solution: Use => for lambda in :def function.
+Files: runtime/doc/mnv9.txt, src/mnv9compile.c, src/userfunc.c,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2205
+Problem: MNV9: memory leak when parsing lambda fails.
+Solution: Clear growarrays.
+Files: src/userfunc.c
+
+Patch 8.2.2206
+Problem: :exe command line completion only works for first argument.
+Solution: Skip over text if more is following. (closes #7546)
+Files: src/eval.c, src/testdir/test_cmdline.mnv
+
+Patch 8.2.2207
+Problem: Illegal memory access if popup menu items are changed while the
+ menu is visible. (Tomáš Janoušek)
+Solution: Make a copy of the text. (closes #7537)
+Files: src/popupmenu.c, src/testdir/test_popup.mnv,
+ src/testdir/dumps/Test_popup_command_04.dump,
+ src/testdir/dumps/Test_popup_command_05.dump
+
+Patch 8.2.2208
+Problem: MNV9: after reloading a script variable index may be invalid.
+Solution: When the sequence number doesn't match give an error for using a
+ script-local variable from a compiled function. (closes #7547)
+Files: src/mnv9.h, src/structs.h, src/errors.h, src/mnv9compile.c,
+ src/mnv9execute.c, src/scriptfile.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2209
+Problem: MNV9: return type of => lambda not parsed.
+Solution: Parse and use the return type.
+Files: src/mnv9compile.c, src/userfunc.c, src/mnv9type.c,
+ src/proto/mnv9type.pro, src/mnv9script.c, src/eval.c,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2210
+Problem: MNV9: allocating a type to set TTFLAG_BOOL_OK.
+Solution: Add t_number_bool.
+Files: src/globals.h, src/mnv9type.c, src/mnv9compile.c
+
+Patch 8.2.2211
+Problem: MS-Windows: can't load Python dll if not in the path.
+Solution: Use the InstallPath registry entry. (Kelvin Lee, closes #7540)
+Files: src/if_python3.c
+
+Patch 8.2.2212
+Problem: MNV9: lambda with => does not work at the script level.
+Solution: Make it work.
+Files: src/eval.c, src/mnv9type.c, src/userfunc.c,
+ src/testdir/test_mnv9_assign.mnv, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2213
+Problem: Checking white space around -> is not backwards compatible.
+Solution: Only check white space around =>.
+Files: src/userfunc.c
+
+Patch 8.2.2214
+Problem: ":e#" does not give a warning for missing white space.
+Solution: Adjust the check for white space. (closes #7545)
+Files: src/ex_docmd.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2215
+Problem: MNV9: `=expr` not recognized in global command.
+Solution: Skip over pattern. (issue #7541)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2216
+Problem: MNV9: range with missing colon can be hard to spot.
+Solution: Include the start of the range in the error. (closes #7543)
+Files: src/errors.h, src/ex_docmd.c, src/mnv9compile.c,
+ src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2217
+Problem: MNV9: command modifiers not restored in catch block.
+Solution: Restore command modifiers. (closes #7542)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2218
+Problem: MNV9: failure if passing more arguments to a lambda than expected.
+Solution: Only put expected arguments on the stack. (closes #7548)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.2219
+Problem: MNV9: method call with expression not supported.
+Solution: Implement expr->(expr)().
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2220
+Problem: MNV9: memory leak when parsing nested parenthesis.
+Solution: Clear newargs.
+Files: src/userfunc.c
+
+Patch 8.2.2221
+Problem: If <Down> is mapped on the command line 'wildchar' is inserted.
+Solution: Set KeyTyped when using 'wildchar'. (closes #7552)
+Files: src/cmdexpand.c, src/testdir/test_cmdline.mnv
+
+Patch 8.2.2222
+Problem: MNV9: cannot keep script variables when reloading.
+Solution: Add the "noclear" argument to :mnv9script.
+Files: runtime/doc/mnv9.txt, src/structs.h, src/scriptfile.c,
+ src/mnv9script.c, src/ex_cmds.h, src/ex_docmd.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2223
+Problem: MNV9: Reloading marks a :def function as deleted.
+Solution: Clear the function contents but keep the index.
+Files: runtime/doc/mnv9.txt, src/mnv9compile.c, src/userfunc.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2224
+Problem: MNV9: crash if script reloaded with different variable type.
+Solution: Check the type when accessing the variable.
+Files: src/mnv9execute.c, src/mnv9compile.c, src/mnv9.h, src/mnv9type.c,
+ src/proto/mnv9type.pro, src/errors.h, src/evalvars.c,
+ src/mnv9script.c, src/proto/mnv9script.pro,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2225
+Problem: MNV9: error when using :import in legacy script twice.
+Solution: Make it possible to redefine an import when reloading.
+Files: src/mnv9script.c, src/proto/mnv9script.pro, src/structs.h,
+ src/evalvars.c, src/mnv9compile.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2226
+Problem: MNV9: script test fails.
+Solution: Add missing change.
+Files: src/scriptfile.c
+
+Patch 8.2.2227
+Problem: MNV9: recognizing lambda is too complicated.
+Solution: Call compile_lambda() and check for NOTDONE.
+Files: src/mnv9compile.c, src/userfunc.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2228
+Problem: MNV9: cannot use ":e #" because # starts a comment.
+Solution: Support using %% instead of #.
+Files: src/ex_docmd.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2229
+Problem: build failure without the +eval feature.
+Solution: Add #ifdef.
+Files: src/ex_docmd.c
+
+Patch 8.2.2230
+Problem: MNV9: insert completion runs into error.
+Solution: Insert colon before range. (closes #7556)
+Files: src/insexpand.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2231
+Problem: When "--remote file" is used "file" is not reloaded.
+Solution: When a :drop command is used for a file that is already displayed
+ in a window and it has not been changed, check if it needs to be
+ reloaded. (closes #7560)
+Files: src/ex_cmds.c, src/testdir/test_clientserver.mnv
+
+Patch 8.2.2232
+Problem: Compiler error for falling through into next case.
+Solution: Move FALLTHROUGH below the #endif
+Files: src/ex_docmd.c
+
+Patch 8.2.2233
+Problem: Cannot convert a byte index into a character index.
+Solution: Add charidx(). (Yegappan Lakshmanan, closes #7561)
+Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/testdir/test_functions.mnv
+
+Patch 8.2.2234
+Problem: Command line wildmenu test often fails with Unix GUI.
+Solution: Skip the test where it is expected to fail.
+Files: src/testdir/test_cmdline.mnv
+
+Patch 8.2.2235
+Problem: Build failure with some Ruby versions.
+Solution: Adjust the code for Ruby 3.0. (Ozaki Kiichi, closes #7564)
+Files: ci/config.mk.clang.sed, src/if_ruby.c
+
+Patch 8.2.2236
+Problem: 'scroll' option can change when setting the statusline or tabline
+ but the option context is not updated.
+Solution: Update the script context when the scroll option is changed as a
+ side effect. (Christian Brabandt, closes #7533)
+Files: runtime/doc/options.txt, src/scriptfile.c,
+ src/testdir/test_options.mnv, src/mnv.h, src/window.c
+
+Patch 8.2.2237
+Problem: CI on Mac fails in sed command.
+Solution: Set LC_ALL to "C". (Ozaki Kiichi, closes #7565)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.2238
+Problem: MNV9: cannot load a MNV9 script without the +eval feature.
+Solution: Support MNV9 script syntax without the +eval feature.
+Files: src/ex_docmd.c, src/mnv9script.c, src/globals.h, src/main.c,
+ src/autocmd.c, src/buffer.c, src/structs.h, src/menu.c,
+ src/scriptfile.c, src/usercmd.c, src/proto.h, src/errors.h
+
+Patch 8.2.2239
+Problem: MNV9: concatenating lines with backslash is inconvenient.
+Solution: Support concatenating lines starting with '|', useful for
+ :autocmd, :command, etc. (closes #6702)
+Files: runtime/doc/mnv9.txt, src/scriptfile.c, src/mnv9script.c,
+ src/proto/mnv9script.pro, src/mnv9compile.c,
+ src/proto/mnv9compile.pro, src/userfunc.c, src/structs.h,
+ src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2240
+Problem: Clientserver test fails if full path is used.
+Solution: Ignore the path preceding the file name.
+Files: src/testdir/test_clientserver.mnv
+
+Patch 8.2.2241
+Problem: Build with Ruby and clang may fail.
+Solution: Adjust configure and sed script. (Ozaki Kiichi, closes #7566)
+Files: ci/config.mk.clang.sed, src/auto/configure, src/configure.ac
+
+Patch 8.2.2242
+Problem: MNV9: line continuation with bar does not work at script level.
+Solution: Check for MNV9 script.
+Files: src/structs.h, src/ex_docmd.c, src/userfunc.c, src/scriptfile.c,
+ src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2243
+Problem: Crash when popup mask contains zeroes.
+Solution: Check boundaries properly. (closes #7569)
+Files: src/popupwin.c, src/testdir/test_popupwin.mnv
+
+Patch 8.2.2244
+Problem: Crash when making the window width of the not-current window
+ negative.
+Solution: Make sure the window width is not negative. (closes #7568)
+Files: src/window.c, src/testdir/test_window_cmd.mnv
+
+Patch 8.2.2245
+Problem: MNV9: return value of winrestcmd() cannot be executed.
+Solution: Put colons before each range. (closes #7571)
+Files: src/evalwindow.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.2246
+Problem: Cursor keys not recognized at the hit-Enter prompt after executing
+ an external command.
+Solution: Change the codes for the extra cursor keys. (closes #7562)
+ Tune the delays to avoid test flakiness.
+Files: runtime/doc/term.txt, src/term.c, src/testdir/test_terminal3.mnv
+
+Patch 8.2.2247
+Problem: VMS: various smaller problems.
+Solution: Fix VMS building and other problems. (Zoltan Arpadffy)
+Files: src/term.c, src/gui_gtk_vms.h, src/os_vms_conf.h, src/gui_x11.c,
+ src/Make_vms.mms, src/macros.h, src/gui.h, src/os_unix.h
+
+Patch 8.2.2248
+Problem: ASAN error on exit with GUI.
+Solution: Check the window still has lines. (Christian Brabandt,
+ closes #7573)
+Files: src/term.c
+
+Patch 8.2.2249
+Problem: Termcodes test is flaky when used over ssh with X forwarding.
+Solution: Set 'mousetime' to a larger value. (Dominique Pellé, closes #7576,
+ closes #7563)
+Files: src/testdir/test_termcodes.mnv
+
+Patch 8.2.2250
+Problem: MNV9: sublist is ambiguous.
+Solution: Require white space around the colon. (closes #7409)
+Files: src/mnv9compile.c, src/eval.c, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.2251
+Problem: Test failures in legacy script.
+Solution: Check for MNV9 script.
+Files: src/eval.c
+
+Patch 8.2.2252
+Problem: MNV9: crash when using lambda without return type in dict.
+Solution: Without a return type use t_unknown. (closes #7587)
+Files: src/mnv9type.c, src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2253
+Problem: MNV9: expr test fails.
+Solution: Add missing assignment.
+Files: src/userfunc.c
+
+Patch 8.2.2254
+Problem: MNV9: bool option type is number.
+Solution: Have get_option_value() return a different value for bool and
+ number options. (closes #7583)
+Files: src/option.h, src/option.c, src/proto/option.pro, src/evalvars.c,
+ src/if_mzsch.c, src/if_ruby.c, src/spell.c, src/typval.c,
+ src/mnv9compile.c, src/testdir/test_mnv9_assign.mnv,
+ src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2255 (after 8.2.2254)
+Problem: Tcl test fails.
+Solution: Change option handling.
+Files: src/if_tcl.c
+
+Patch 8.2.2256
+Problem: MNV9: cannot use function( after line break in :def function.
+Solution: Check for "(" after "function". (closes #7581)
+Files: src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2257
+Problem: MNV9: using -> for lambda is ambiguous.
+Solution: Stop supporting ->, must use =>.
+Files: src/eval.c, src/mnv9compile.c, src/testdir/test_mnv9_assign.mnv,
+ src/testdir/test_mnv9_builtin.mnv, src/testdir/test_mnv9_cmd.mnv,
+ src/testdir/test_mnv9_disassemble.mnv,
+ src/testdir/test_mnv9_expr.mnv, src/testdir/test_mnv9_func.mnv,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2258
+Problem: Not all OCaml related files are detected.
+Solution: Update OCaml file type detection. (Markus Mottl, closes #7590)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.2259
+Problem: Test_Executable() fails when using chroot.
+Solution: Ignore the difference between "sbin" and "bin".
+Files: src/testdir/test_functions.mnv
+
+Patch 8.2.2260
+Problem: Window resize test fails in very wide terminal.
+Solution: Resize using the 'columns' option. (Vladimir Lomov, closes #7592)
+Files: src/testdir/test_window_cmd.mnv
+
+Patch 8.2.2261
+Problem: MNV9: boolean option gets string type.
+Solution: Check for VAR_BOOL. (closes #7588)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2262
+Problem: MNV9: converting bool to string prefixes v:.
+Solution: Do not use the v: prefix.
+Files: src/evalvars.c, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.2263
+Problem: MNV9: compilation error with try-catch in skipped block.
+Solution: Do not bail out when generate_instr() returns NULL. (closes #7584)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2264
+Problem: MNV9: no error for mismatched :endfunc or :enddef.
+Solution: Check for the mismatch. (issue #7582)
+Files: src/errors.h, src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2265
+Problem: Error message for missing endfunc/enddef is last line.
+Solution: Report the line where the function starts. (closes #7582)
+Files: src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2266
+Problem: MNV9: it can be hard to see where white space is missing.
+Solution: Mention the text where the error was seen. (closes #7580)
+Files: src/errors.h, src/eval.c, src/evalvars.c, src/userfunc.c,
+ src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2267
+Problem: MNV9: cannot use unlet for a dict member.
+Solution: Pass GLV_NO_DECL to get_lval(). (closes #7585)
+Files: src/evalvars.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2268
+Problem: MNV9: list unpack seen as declaration.
+Solution: Check for "var". (closes #7594)
+Files: src/mnv9compile.c, src/evalvars.c, src/eval.c, src/mnv.h,
+ src/mnv9execute.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2269
+Problem: Not all :hardcopy code covered by tests.
+Solution: Test more combinations. (Dominique Pellé, closes #7595)
+Files: src/testdir/test_hardcopy.mnv
+
+Patch 8.2.2270
+Problem: Warning for size_t to int conversion. (Randall W. Morris)
+Solution: Add a type cast.
+Files: src/mnv9execute.c
+
+Patch 8.2.2271
+Problem: ml_get error when changing hidden buffer in Python.
+Solution: Block updating folds. (closes #7598)
+Files: src/evalbuffer.c, src/testdir/test_python3.mnv
+
+Patch 8.2.2272
+Problem: MNV9: extend() can violate the type of a variable.
+Solution: Add the type to the dictionary or list and check items against it.
+ (closes #7593)
+Files: src/structs.h, src/evalvars.c, src/dict.c, src/list.c,
+ src/mnv9script.c, src/proto/mnv9script.pro, src/mnv9compile.c,
+ src/mnv9execute.c, src/testdir/test_mnv9_builtin.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.2273
+Problem: Build failure.
+Solution: Add missing changes to header file.
+Files: src/mnv9.h
+
+Patch 8.2.2274
+Problem: badge for Travis is outdated.
+Solution: Update badge for move from travis-ci.org to travis-ci.com.
+Files: README.md
+
+Patch 8.2.2275
+Problem: CTRL-C not recognized in Mintty.
+Solution: Recognize the modifyOtherKeys code ending in "u". (Christian
+ Brabandt, closes #7575)
+Files: src/ui.c
+
+Patch 8.2.2276
+Problem: List of distributed files is outdated.
+Solution: Update the file list. Minor comment updates.
+Files: Filelist, src/clipboard.c, src/fileio.c, src/option.c,
+ src/screen.c, src/testdir/test_signals.mnv,
+ src/testdir/Make_vms.mms
+
+Patch 8.2.2277
+Problem: Missing backslash.
+Solution: Add backslash.
+Files: Filelist
+
+Patch 8.2.2278
+Problem: Falling back to old regexp engine can some patterns.
+Solution: Do not fall back once [[:lower:]] or [[:upper:]] is used.
+ (Christian Brabandt, closes #7572)
+Files: src/regexp.c, src/regexp_nfa.c, src/testdir/test_regexp_utf8.mnv
+
+Patch 8.2.2279
+Problem: MNV9: memory leak with catch in skipped block.
+Solution: Free the pattern if not used.
+Files: src/mnv9compile.c
+
+Patch 8.2.2280
+Problem: Fuzzy matching doesn't give access to the scores.
+Solution: Return the scores with a third list. (Yegappan Lakshmanan,
+ closes #7596)
+Files: runtime/doc/eval.txt, src/search.c,
+ src/testdir/test_matchfuzzy.mnv
+
+Patch 8.2.2281
+Problem: MNV9: compiled "wincmd" cannot be followed by bar.
+Solution: Check for bar after "wincmd". (closes #7599)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2282
+Problem: Length check mismatch with argument of strncmp(). (Christian
+ Brabandt)
+Solution: Adjust length check.
+Files: src/ui.c
+
+Patch 8.2.2283
+Problem: MNV9: crash when lambda has fewer arguments than expected.
+Solution: Don't check arguments when already failed. (closes #7606)
+Files: src/mnv9type.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2284
+Problem: MNV9: cannot set an option to a boolean value.
+Solution: Check for VAR_BOOL. (closes #7603)
+Files: src/evalvars.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.2285
+Problem: MNV9: cannot set an option to a false.
+Solution: For VAR_BOOL use string "0". (closes #7603)
+Files: src/evalvars.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.2286
+Problem: Sort test fails when locale is Canadian English. (Neil H Watson)
+Solution: Expect a different sort order. (closes #7609)
+Files: src/testdir/test_sort.mnv
+
+Patch 8.2.2287
+Problem: Sort test fails when locale is French Canadian.
+Solution: Expect a different sort order. (Dominique Pellé, closes #7609)
+Files: src/testdir/test_sort.mnv
+
+Patch 8.2.2288
+Problem: MNV9: line break and comment not always skipped.
+Solution: Skip over white space and then line break more consistently.
+ (closes #7610)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2289
+Problem: MNV9: 'cpo' can become empty.
+Solution: Use empty_option instead of an empty string. Update quickfix
+ buffer after restoring 'cpo'. (closes #7608)
+Files: src/evalfunc.c, src/syntax.c, src/eval.c, src/quickfix.c,
+ src/evalbuffer.c, src/ex_eval.c, src/gui_motif.c, src/map.c,
+ src/testdir/test_quickfix.mnv
+
+Patch 8.2.2290
+Problem: MNV9: unlet of global variable cannot be compiled.
+Solution: Skip over variables that might be defined later. Give an error if
+ a subscript is found. (closes #7585)
+Files: src/eval.c, src/mnv9compile.c, src/mnv.h,
+ src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2291
+Problem: MNV9: cannot use "null" for v:null.
+Solution: Support "null" like "true" and "false". (closes #7495)
+Files: runtime/doc/mnv9.txt, src/mnv9compile.c, src/evalvars.c,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2292
+Problem: MNV: expr test fails.
+Solution: Add missing part of "null" support.
+Files: src/eval.c
+
+Patch 8.2.2293
+Problem: Build failure with Motif. (Tony Mechelynck)
+Solution: Use empty_option instead of empty_options.
+Files: src/gui_motif.c
+
+Patch 8.2.2294
+Problem: VMS: a few remaining problems.
+Solution: Add VMS specific changes. Add Lua support. (Zoltan Arpadffy)
+Files: src/fileio.c, src/os_vms_conf.h, src/Make_vms.mms, src/macros.h,
+ src/os_vms.c, src/mnv9execute.c, src/gui_xmebw.c, src/os_unix.h
+
+Patch 8.2.2295
+Problem: Incsearch does not detect empty pattern properly.
+Solution: Return magic state when skipping over a pattern. (Christian
+ Brabandt, closes #7612, closes #6420)
+Files: src/ex_cmds.c, src/ex_docmd.c, src/ex_getln.c, src/globals.h,
+ src/option.c, src/tag.c, src/proto/regexp.pro, src/regexp.c,
+ src/search.c, src/structs.h, src/mnv9compile.c,
+ src/testdir/dumps/Test_incsearch_sub_01.dump,
+ src/testdir/dumps/Test_incsearch_sub_02.dump,
+ src/testdir/test_search.mnv
+
+Patch 8.2.2296
+Problem: Cannot use CTRL-N and CTRL-P in a popup menu.
+Solution: Use CTRL-N like <Down> and CTRL-P like <Up>. (closes #7614)
+Files: runtime/doc/popup.txt, src/popupwin.c,
+ src/testdir/test_popupwin.mnv
+
+Patch 8.2.2297
+Problem: MNV9: cannot set 'number' to a boolean value.
+Solution: Use tv_get_bool(). (closes #7615)
+Files: src/evalvars.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2298
+Problem: MNV9: comment right after "(" of function not recognized.
+Solution: Do not skip over white space before calling get_function_args().
+ (closes #7613)
+Files: src/userfunc.c, src/proto/userfunc.pro,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2299
+Problem: MNV9: invalid memory access making error message flaky.
+Solution: Do not check cmd_argt for CMD_USER. (issue #7467)
+Files: src/ex_docmd.c, src/mnv9execute.c, src/errors.h,
+ src/mnv9compile.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2300
+Problem: MNV9: wrong order on type stack when using dict.
+Solution: Generate constants before a dict. (closes #7619)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2301
+Problem: MNV9: cannot unlet a dict or list item.
+Solution: Add ISN_UNLETINDEX. Refactor assignment code to use for unlet.
+Files: src/mnv9compile.c, src/mnv9.h, src/mnv9execute.c,
+ src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2302
+Problem: MNV9: using an option value may use uninitialized memory.
+Solution: Clear v_lock. (closes #7620)
+Files: src/typval.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2303
+Problem: MNV9: backtick expansion doesn't work for :foldopen.
+Solution: Do recognize backtick expansion. (closes #7621)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2304
+Problem: MNV9: no test for unletting an imported variable.
+Solution: Add a test. Fix line number in error.
+Files: src/mnv9execute.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2305
+Problem: MNV9: "++var" and "--var" are silently accepted.
+Solution: Give an error message.
+Files: src/mnv9compile.c, src/eval.c, src/proto/eval.pro,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2306
+Problem: MNV9: when using function reference type is not checked.
+Solution: When using a function reference lookup the type and check the
+ argument types. (issue #7629)
+Files: src/userfunc.c, src/proto/userfunc.pro, src/eval.c, src/structs.h,
+ src/mnv9type.c, src/proto/mnv9type.pro, src/mnv9compile.c,
+ src/mnv9execute.c, src/evalvars.c, src/evalfunc.c,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2307
+Problem: A shell command in the mnvrc causes terminal output.
+Solution: Do not call starttermcap() after a shell command if the termcap
+ wasn't active before.
+Files: src/ex_cmds.c
+
+Patch 8.2.2308
+Problem: MNV9: no error when assigning lambda to funcref without return
+ value.
+Solution: Default return value to "any". (closes #7629)
+Files: src/userfunc.c, src/mnv9compile.c,
+ src/testdir/test_mnv9_assign.mnv, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2309
+Problem: 0o777 not recognized as octal.
+Solution: Use mnv_isodigit(). (Ken Takata, closes #7633, closes #7631)
+Files: src/charset.c, src/testdir/test_eval_stuff.mnv
+
+Patch 8.2.2310
+Problem: MNV9: winsaveview() return type is too generic.
+Solution: use dict<number> instead of dict<any>. (closes #7626)
+Files: src/evalfunc.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.2311
+Problem: MNV9: cannot assign to a variable that shadows a command modifier.
+Solution: Check for assignment after possible command modifier.
+ (closes #7632)
+Files: src/mnv9compile.c, src/ex_docmd.c,
+ src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2312
+Problem: Build failure with Ruby 3.0 and 32 bits.
+Solution: Add #ifdef. (closes #7638)
+Files: src/if_ruby.c
+
+Patch 8.2.2313
+Problem: MNV9: using uninitialized field when parsing range. ":silent!" not
+ respected when parsing range fails.
+Solution: Initialize ea.skip. On pattern failure handle it like an error.
+ (closes #7636)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2314
+Problem: MNV9: returning zero takes two instructions.
+Solution: Add ISN_RETURN_ZERO.
+Files: src/mnv9.h, src/mnv9compile.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.2315
+Problem: MNV9: "enddef" as dict key misinterpreted as function end.
+Solution: Check for following colon. (closes #7640)
+Files: src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2316
+Problem: MNV9: cannot list a lambda function.
+Solution: Support the <lambda>9 notation, like :disassemble. (closes #7634)
+Files: src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2317
+Problem: MNV9: command modifier before list unpack doesn't work.
+Solution: Only recognize "[" directly after the name. (closes #7641)
+Files: src/ex_docmd.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2318
+Problem: MNV9: string and list index work differently.
+Solution: Make string index work like list index. (closes #7643)
+Files: src/eval.c, src/proto/eval.pro, src/mnv9execute.c, src/list.c,
+ src/proto/mnv9execute.pro, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2319
+Problem: "exptype_T" can be read as "expected type".
+Solution: Rename to "exprtype_T", expression type.
+Files: src/eval.c, src/typval.c, src/proto/typval.pro, src/mnv9compile.c,
+ src/proto/mnv9compile.pro, src/mnv9execute.c, src/structs.h,
+ src/mnv9.h
+
+Patch 8.2.2320
+Problem: MNV9: no error for comparing bool with string.
+Solution: Check for wrong types when comparing. (closes #7639)
+Files: src/typval.c, src/errors.h, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2321
+Problem: MNV9: cannot nest closures.
+Solution: Add the nesting level to ISN_LOADOUTER and ISN_STOREOUTER.
+ (closes #7150, closes #7635)
+Files: src/mnv9.h, src/mnv9compile.c, src/mnv9execute.c, src/structs.h,
+ src/testdir/test_mnv9_disassemble.mnv,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2322
+Problem: MNV9: closure nested limiting to one level.
+Solution: Add outer_T. Also make STOREOUTER work.
+Files: src/mnv9execute.c, src/mnv9.h, src/structs.h,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2323
+Problem: MNV9: error when inferring type from empty dict/list.
+Solution: When the member is t_unknown use t_any. (closes #7009)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2324
+Problem: Not easy to get mark en cursor position by character count.
+Solution: Add functions that use character index. (Yegappan Lakshmanan,
+ closes #7648)
+Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/eval.c,
+ src/evalfunc.c, src/proto/eval.pro, src/tag.c,
+ src/testdir/test_cursor_func.mnv, src/typval.c
+
+Patch 8.2.2325
+Problem: MNV9: crash if map() changes the item type.
+Solution: Check that the item type is still OK. (closes #7652)
+ Fix problem with mapnew() on range list.
+Files: src/evalfunc.c, src/proto/evalfunc.pro, src/mnv9compile.c,
+ src/list.c, src/testdir/test_mnv9_builtin.mnv,
+ src/testdir/test_mnv9_expr.mnv, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2326
+Problem: Build error with +eval feature but without +spell.
+Solution: Adjust #ifdef. (John Marriott)
+Files: src/mbyte.c
+
+Patch 8.2.2327
+Problem: Debugging code included.
+Solution: Remove the debugging code.
+Files: src/mnv9execute.c
+
+Patch 8.2.2328
+Problem: Some test files may not be deleted.
+Solution: Add a delete() call, correct name. (Dominique Pellé, closes #7654)
+Files: src/testdir/test_clientserver.mnv,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2329
+Problem: Not all ways MNV can be started are tested.
+Solution: Add a test for different program names. (Dominique Pellé,
+ closes #7651)
+Files: src/testdir/test_startup.mnv
+
+Patch 8.2.2330
+Problem: MNV9: crash when using :trow in a not executed block.
+Solution: Don't generate the instruction when skipping. (closes #7659)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2331
+Problem: MNV9: wrong error when modifying dict declared with :final.
+Solution: Do not check for writable variable when an index follows.
+ (closes #7657)
+Files: src/mnv9compile.c, src/structs.h, src/mnv9script.c,
+ src/proto/mnv9script.pro, src/evalvars.c,
+ src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2332
+Problem: MNV9: missing :endif not reported when using :windo.
+Solution: Pass a getline function to do_cmdline(). (closes #7650)
+Files: src/mnv9execute.c, src/structs.h, src/scriptfile.c,
+ src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2333
+Problem: MNV9: warning for uninitialized variable. (Tony Mechelynck)
+Solution: Initialize "res".
+Files: src/mnv9execute.c
+
+Patch 8.2.2334
+Problem: Pascal-like filetypes not always detected.
+Solution: Improved Puppet, InstantFPC and Pascal detection. (Doug Kearns,
+ closes #7662)
+Files: runtime/autoload/dist/ft.mnv, runtime/filetype.mnv,
+ runtime/scripts.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.2335
+Problem: MNV9: "silent return" does not restore command modifiers.
+Solution: Restore command modifiers before returning. (closes #7649)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.2336
+Problem: MNV9: it is not possible to extend a dictionary with different
+ item types.
+Solution: Add extendnew(). (closes #7666)
+Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/list.c, src/proto/list.pro, src/testdir/test_listdict.mnv,
+ src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.2337
+Problem: Configure test for GTK only says "no". (Harm te Hennepe)
+Solution: Hint that a -def package is needed. (closes #5229)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.2338
+Problem: MNV9: no error if using job_info() result wrongly.
+Solution: Adjust return type on number of arguments. (closes #7667)
+Files: src/evalfunc.c, src/globals.h, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.2339
+Problem: Cannot get the type of a value as a string.
+Solution: Add typename().
+Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/mnv9type.c, src/proto/mnv9type.pro,
+ src/testdir/test_mnvscript.mnv, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.2340
+Problem: win_execute() unexpectedly returns number zero when failing.
+Solution: Return an empty string. (closes #7665)
+Files: src/evalwindow.c, src/testdir/test_mnv9_builtin.mnv,
+ src/testdir/test_execute_func.mnv
+
+Patch 8.2.2341
+Problem: Expression command line completion shows variables but not
+ functions after "g:". (Gary Johnson)
+Solution: Prefix "g:" when needed to a global function.
+Files: src/evalfunc.c, src/evalvars.c, src/proto/evalvars.pro,
+ src/testdir/test_cmdline.mnv
+
+Patch 8.2.2342
+Problem: "char" functions return the wrong column in Insert mode when the
+ cursor is beyond the end of the line.
+Solution: Compute the column correctly. (Yegappan Lakshmanan, closes #7669)
+Files: src/eval.c, src/evalfunc.c, src/testdir/test_cursor_func.mnv
+
+Patch 8.2.2343
+Problem: MNV9: return type of readfile() is any.
+Solution: Add readblob() so that readfile() can be expected to always
+ return a list of strings. (closes #7671)
+Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/filepath.c, src/proto/filepath.pro,
+ src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.2344
+Problem: Using inclusive index for slice is not always desired.
+Solution: Add the slice() method, which has an exclusive index. (closes
+ #7408)
+Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/eval.c, src/proto/eval.pro, src/mnv9execute.c,
+ src/proto/mnv9execute.pro, src/list.c, src/proto/list.pro,
+ src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.2345
+Problem: No focus events in a terminal.
+Solution: Add the t_fd and t_fe termcap entries and implement detecting
+ focus events. (Hayaki Saito, Magnus Groß, closes #7673,
+ closes #609, closes #5526)
+Files: runtime/doc/term.txt, src/optiondefs.h, src/term.c, src/term.h
+
+Patch 8.2.2346
+Problem: Codecov reports every little coverage drop.
+Solution: Tolerate a 0.05% drop. Hide the appveyor config file. (Ozaki
+ Kiichi, closes #7678)
+Files: .appveyor.yml, appveyor.yml, .codecov.yml
+
+Patch 8.2.2347
+Problem: Build failure without GUI.
+Solution: Add #ifdef.
+Files: src/term.c
+
+Patch 8.2.2348 (after 8.2.2345)
+Problem: No check for modified files after focus gained. (Mathias Stearn)
+Solution: Call ui_focus_change().
+Files: src/term.c, src/ui.c
+
+Patch 8.2.2349
+Problem: MNV9: cannot handle line break after parenthesis at line end.
+Solution: Skip over line break. (closes #7677)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2350
+Problem: Using "void" for no reason.
+Solution: Use "char *".
+Files: src/ex_docmd.c
+
+Patch 8.2.2351
+Problem: MNV9: error message for "throw" in function that was called with
+ "silent!".
+Solution: Do not throw the exception when not caught or displayed.
+ (closes #7672)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2352
+Problem: If the focus lost/gained escape sequence is received twice it is
+ not ignored. (Christ van Willegen)
+Solution: Adjust the logic to ignore the escape code.
+Files: src/term.c
+
+Patch 8.2.2353
+Problem: Sparql files are not detected.
+Solution: Add the sparql filetype. (closes #7679)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.2354
+Problem: Crash with a weird combination of autocommands.
+Solution: Increment b_nwindows when needed. (closes #7674)
+Files: src/ex_cmds.c, src/buffer.c, src/proto/buffer.pro,
+ src/testdir/test_autocmd.mnv
+
+Patch 8.2.2355
+Problem: Stray test failure on Appveyor.
+Solution: Finish insert command.
+Files: src/testdir/test_autocmd.mnv
+
+Patch 8.2.2356
+Problem: MNV9: ":put =expr" does not handle a list properly.
+Solution: Use the same logic as eval_to_string_eap(). (closes #7684)
+Files: src/mnv9execute.c, src/eval.c, src/proto/eval.pro,
+ src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2357
+Problem: MNV9: crash when parsing function return type fails.
+Solution: Bail out and set return type to "unknown". (closes #7685)
+Files: src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2358
+Problem: Wrong #ifdef for use_xterm_like_mouse().
+Solution: Use FEAT_MOUSE_XTERM.
+Files: src/term.c
+
+Patch 8.2.2359
+Problem: Strange test failure with MS-Windows.
+Solution: Skip the system() call for now.
+Files: src/testdir/test_autocmd.mnv
+
+Patch 8.2.2360
+Problem: Test leaves file behind.
+Solution: Delete the right file. (Dominique Pellé, closes #7689)
+Files: src/testdir/test_filetype.mnv
+
+Patch 8.2.2361
+Problem: MNV9: no highlight for "s///gc" when using 'opfunc'.
+Solution: Reset 'lazyredraw' temporarily. (closes #7687)
+Files: src/ex_cmds.c
+
+Patch 8.2.2362
+Problem: MNV9: check of builtin function argument type is incomplete.
+Solution: Use need_type() instead of check_arg_type().
+Files: src/mnv9compile.c, src/proto/mnv9compile.pro, src/evalfunc.c,
+ src/proto/evalfunc.pro, src/mnv9type.c, src/proto/mnv9type.pro,
+ src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.2363
+Problem: curpos() does not accept a string argument as before.
+solution: Make a string argument work again. (Yegappan Lakshmanan,
+ closes #7690)
+Files: src/evalfunc.c, src/testdir/test_cursor_func.mnv
+
+Patch 8.2.2364
+Problem: MNV9: line break in lambda accesses freed memory.
+Solution: Make a copy of the return type. (closes #7664)
+Files: src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2365
+Problem: MNV9: no check for map() changing item type at script level.
+Solution: Check the new value type.
+Files: src/list.c, src/testdir/test_mnv9_builtin.mnv,
+ src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2366
+Problem: When using ":sleep" the cursor is always displayed.
+Solution: Do not display the cursor when using ":sleep!". (Jeremy Lerner,
+ closes #7688)
+Files: runtime/doc/index.txt, runtime/doc/various.txt, src/ex_cmds.h,
+ src/ex_docmd.c, src/normal.c, src/proto/ex_docmd.pro, src/term.c,
+ src/testdir/Make_all.mak, src/testdir/test_sleep.mnv
+
+Patch 8.2.2367
+Problem: Test failures on some less often used systems.
+Solution: Adjust printf formats and types. (James McCoy, closes #7691)
+Files: src/errors.h, src/evalfunc.c, src/list.c, src/mnv9execute.c
+
+Patch 8.2.2368
+Problem: Insufficient tests for setting options.
+Solution: Add a few tests. (Dominique Pellé, closes #7695)
+Files: src/testdir/test_options.mnv
+
+Patch 8.2.2369
+Problem: MNV9: functions return true/false but can't be used as bool.
+Solution: Add ret_number_bool(). (closes #7693)
+Files: src/evalfunc.c, src/testdir/test_mnv9_builtin.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.2370
+Problem: MNV9: command fails in catch block.
+Solution: Reset force_abort and need_rethrow. (closes #7692)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2371
+Problem: MNV9: crash when using types in :for with unpack.
+Solution: Check for skip_var_list() failing. Pass include_type to
+ skip_var_one(). Skip type when compiling. (closes #7694)
+Files: src/mnv9compile.c, src/evalvars.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2372 (after 8.2.2371)
+Problem: Confusing error message for wrong :let command.
+Solution: Only check for type in MNV9 script.
+Files: src/evalvars.c
+
+Patch 8.2.2373
+Problem: MNV9: list assignment only accepts a number index.
+Solution: Accept "any" and do a runtime type check. (closes #7694)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2374
+Problem: Accessing uninitialized memory in test_undo.
+Solution: Do not look in typebuf.tb_buf if it is empty. (Dominique Pellé,
+ closes #7697)
+Files: src/edit.c
+
+Patch 8.2.2375
+Problem: Test for RGB color skipped in the terminal.
+Solution: Run the GUI if possible.
+Files: src/testdir/test_highlight.mnv
+
+Patch 8.2.2376
+Problem: MNV9: crash when dividing by zero in compiled code using
+ constants.
+Solution: Call num_divide() and num_modulus(). (closes #7704)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2377
+Problem: MNV9: crash when using a range after another expression.
+Solution: Set the variable type to number. Fix using :put with a range and
+ the "=" register. (closes #7706)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2378
+Problem: MNV9: no error message for dividing by zero.
+Solution: Give an error message. (issue #7704)
+Files: src/errors.h, src/eval.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2379
+Problem: Finding spell suggestions twice if 'spellsuggest' contains number.
+Solution: Only do internal suggestions once. (closes #7713)
+Files: src/spellsuggest.c
+
+Patch 8.2.2380
+Problem: MNV9: occasional crash when using try/catch and a timer.
+Solution: Save and restore "need_rethrow" when invoking a timer callback.
+ (closes #7708)
+Files: src/time.c
+
+Patch 8.2.2381
+Problem: MNV9: divide by zero does not abort expression execution.
+Solution: Use a "failed" flag. (issue #7704)
+Files: src/eval.c, src/proto/eval.pro, src/evalvars.c, src/mnv9compile.c,
+ src/testdir/mnv9.mnv, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2382 (after 8.2.2381)
+Problem: Build failure.
+Solution: Add missing changes.
+Files: src/mnv9execute.c
+
+Patch 8.2.2383
+Problem: Focus escape sequences are not named in ":set termcap" output.
+Solution: Add the names to the list. (closes #7718)
+Files: src/misc2.c
+
+Patch 8.2.2384
+Problem: Turtle filetype not recognized.
+Solution: Add a rule to detect turtle files. (closes #7722)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.2385
+Problem: "gj" and "gk" do not work correctly when inside a fold.
+Solution: Move check for folding. (closes #7724, closes #4095)
+Files: src/normal.c, src/testdir/test_fold.mnv
+
+Patch 8.2.2386
+Problem: MNV9: crash when using ":silent! put".
+Solution: When ignoring an error for ":silent!" rewind the stack and skip
+ ahead to restoring the cmdmod. (closes #7717)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2387
+Problem: Runtime type check does not mention argument index.
+Solution: Add ct_arg_idx. (closes #7720)
+Files: src/mnv9.h, src/mnv9compile.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_builtin.mnv,
+ src/testdir/test_mnv9_disassemble.mnv,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2388
+Problem: No easy way to get the maximum or minimum number value.
+Solution: Add v:numbermax and v:numbermin.
+Files: src/evalvars.c, src/mnv.h, src/testdir/test_eval_stuff.mnv,
+ runtime/doc/eval.txt
+
+Patch 8.2.2389
+Problem: Test failure on a few systems.
+Solution: Avoid that "char" value is negative.
+Files: src/mnv9compile.c, src/mnv9execute.c, src/mnv9.h
+
+Patch 8.2.2390
+Problem: MNV9: using positive offset is unexpected.
+Solution: Use int8_T instead of char. (James McCoy)
+Files: src/mnv9.h, src/mnv9compile.c, src/mnv9execute.c
+
+Patch 8.2.2391
+Problem: Memory leak when creating a global function with closure.
+Solution: Create a separate partial for every instantiated function.
+Files: src/userfunc.c, src/mnv9execute.c
+
+Patch 8.2.2392
+Problem: Fennel filetype not recognized.
+Solution: Detect with pattern and hashbang. (Chinmay Dalal, closes #7729)
+Files: runtime/filetype.mnv, runtime/scripts.mnv,
+ src/testdir/test_filetype.mnv
+
+Patch 8.2.2393
+Problem: MNV9: error message when script line starts with "[{".
+Solution: Do not give an error for checking for end of list.
+Files: src/dict.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2394
+Problem: MNV9: min() and max() return type is "any".
+Solution: Use return type "number". (closes #7728)
+Files: src/evalfunc.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.2395
+Problem: MNV9: error for wrong type may report wrong line number.
+Solution: Save and restore the line number when evaluating the expression.
+ (closes #7727)
+Files: src/evalvars.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2396
+Problem: MNV9: no white space allowed before "->".
+Solution: Allow for white space. (closes #7725)
+Files: src/ex_docmd.c, src/eval.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2397
+Problem: MNV9: "%%" not seen as alternate file name for commands with a
+ buffer name argument.
+Solution: Recognize "%%" like "#". (closes #7732)
+Files: src/buffer.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2398 (after 8.2.2396)
+Problem: Method test fails.
+Solution: Adjust test for allowed white space.
+Files: src/testdir/test_method.mnv
+
+Patch 8.2.2399 (after 8.2.2385)
+Problem: Fold test fails in wide terminal.
+Solution: Adjust the test. (Dominique Pelle, closes #7731, closes #7739)
+Files: src/testdir/test_fold.mnv
+
+Patch 8.2.2400
+Problem: MNV9: compiled functions are not profiled.
+Solution: Add initial changes to profile compiled functions. Fix that a
+ script-local function was hard to debug.
+Files: runtime/doc/repeat.txt, src/mnv9.h, src/mnv9compile.c,
+ src/mnv9execute.c, src/userfunc.c, src/proto/mnv9compile.pro,
+ src/structs.h, src/mnv9type.c, src/debugger.c, src/ex_cmds.h,
+ src/ex_docmd.c, src/profiler.c, src/proto/profiler.pro,
+ src/testdir/test_mnv9_disassemble.mnv,
+ src/testdir/test_profile.mnv
+
+Patch 8.2.2401
+Problem: Build fails without +profiling feature.
+Solution: Add #ifdefs.
+Files: src/mnv9compile.c, src/mnv9execute.c, src/mnv9.h, src/structs.h,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.2402
+Problem: Some filetypes not detected.
+Solution: Detect Ruby Signature and Puppet related files. (Doug Kearns)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.2403
+Problem: MNV9: profiling if/elseif/endif not correct.
+Solution: Add profile instructions. Fix that "elseif" was wrong.
+Files: src/mnv9compile.c, src/testdir/test_profile.mnv,
+ src/testdir/test_mnv9_script.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.2404
+Problem: MNV9: profiling try/catch not correct.
+Solution: Add profile instructions. Fix that "entry" did not rethrow an
+ exception.
+Files: src/mnv9compile.c, src/mnv9execute.c, src/testdir/test_profile.mnv
+
+Patch 8.2.2405
+Problem: MNV9: no need to allow white space before "(" for :def.
+Solution: Give an error for stray white space. (issue #7734)
+Files: src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2406
+Problem: MNV9: profiled :def function leaks memory.
+Solution: Delete the profiled instructions.
+Files: src/mnv9compile.c
+
+Patch 8.2.2407
+Problem: Old jumplist code is never used.
+Solution: Delete the dead code. (Yegappan Lakshmanan, closes #7740)
+Files: src/mark.c
+
+Patch 8.2.2408
+Problem: MinGW: "--preprocessor" flag no longer supported.
+Solution: Remove the flag, use the defaults. (Christopher Wellons,
+ closes #7741)
+Files: src/GmnvExt/Make_ming.mak, src/Make_cyg_ming.mak
+
+Patch 8.2.2409
+Problem: MNV9: profiling only works for one function.
+Solution: Select the right instructions when calling and returning.
+ (closes #7743)
+Files: src/mnv9compile.c, src/mnv9execute.c, src/mnv9.h,
+ src/testdir/test_profile.mnv
+
+Patch 8.2.2410
+Problem: Build failure without the +profiling feature.
+Solution: Add dummy argument to macro.
+Files: src/mnv9.h
+
+Patch 8.2.2411
+Problem: Profile test fails on MS-Windows.
+Solution: Do the profiling in a separate MNV command.
+Files: src/testdir/test_profile.mnv
+
+Patch 8.2.2412
+Problem: Not all fields in "cstack" are initialized which might cause a
+ crash.
+Solution: Use CLEAR_FIELD().
+Files: src/ex_docmd.c
+
+Patch 8.2.2413
+Problem: Crash when using :all while using a cmdline window. (Zdenek Dohnal)
+Solution: Disallow :all from the cmdline window.
+Files: src/arglist.c, src/ex_getln.c, src/testdir/test_arglist.mnv
+
+Patch 8.2.2414
+Problem: Using freed memory when closing the cmdline window.
+Solution: Check the window is still valid.
+Files: src/ex_getln.c
+
+Patch 8.2.2415
+Problem: No way to check for the cmdwin feature, cmdline_hist is now always
+ enabled.
+Solution: Add has('cmdwin') support. Skip arglist test on Windows
+ temporarily.
+Files: runtime/doc/cmdline.txt, src/evalfunc.c,
+ src/testdir/test_autocmd.mnv, src/testdir/test_arglist.mnv,
+ src/testdir/test_cmdline.mnv, src/testdir/test_ins_complete.mnv,
+ src/testdir/test_normal.mnv, src/testdir/test_tabpage.mnv,
+ src/testdir/test_termcodes.mnv, src/testdir/test_window_cmd.mnv
+
+Patch 8.2.2416
+Problem: May get stuck in command line window state.
+Solution: Reset "cmdwin_type" when editing buffer fails. Make arglist test
+ pass on MS-Windows.
+Files: src/ex_getln.c, src/testdir/test_arglist.mnv
+
+Patch 8.2.2417
+Problem: Condition stack values may be used when not set.
+Solution: Clear cs_script_var_len and cs_block_id just in case they get used
+ later. (issue #7733)
+Files: src/ex_eval.c
+
+Patch 8.2.2418
+Problem: Color not changed if ModeMsg highlight is set in InsertEnter
+ autocmd event. (Paul Swanson)
+Solution: Call highlight_changed() after triggering InsertEnter.
+ (closes #7751)
+Files: src/edit.c
+
+Patch 8.2.2419
+Problem: Autocmd test was failing on MS-Windows with GUI.
+Solution: Remove stray feedkeys().
+Files: src/testdir/test_autocmd.mnv
+
+Patch 8.2.2420
+Problem: Too many problems with using all autocommand events.
+Solution: Disallow defining an autocommand for all events.
+Files: src/autocmd.c, src/errors.h, src/testdir/test_autocmd.mnv,
+ src/testdir/test_quickfix.mnv, src/testdir/test_window_cmd.mnv
+
+Patch 8.2.2421
+Problem: Double free when using autocommand with "argdel". (Houyunsong)
+Solution: Add the arglist_locked flag.
+Files: src/arglist.c, src/testdir/test_autocmd.mnv
+
+Patch 8.2.2422
+Problem: Crash when deleting with line number out of range. (Houyunsong)
+Solution: Avoid using a negative line number.
+Files: src/normal.c, src/testdir/test_ex_mode.mnv
+
+Patch 8.2.2423 (after 8.2.2422)
+Problem: Missing error message.
+Solution: Add the error message.
+Files: src/errors.h
+
+Patch 8.2.2424
+Problem: Some tests are known to cause an error with ASAN.
+Solution: Add CheckNotAsan.
+Files: src/testdir/check.mnv, src/testdir/test_ins_complete.mnv,
+ src/testdir/test_memory_usage.mnv, src/testdir/test_ex_mode.mnv
+
+Patch 8.2.2425
+Problem: Cursor on invalid line with range and :substitute.
+Solution: Do not move the cursor when skipping commands. (closes #3434)
+Files: src/ex_cmds.c, src/testdir/test_eval_stuff.mnv
+
+Patch 8.2.2426
+Problem: Allowing 'completefunc' to switch windows causes trouble.
+Solution: use "textwinlock" instead of "textlock".
+Files: src/insexpand.c, src/testdir/test_ins_complete.mnv,
+ src/testdir/test_popup.mnv
+
+Patch 8.2.2427
+Problem: Can still switch windows for 'completefunc'.
+Solution: Also disallow switching windows for other completions.
+Files: src/insexpand.c, src/testdir/test_ins_complete.mnv,
+ src/testdir/test_popup.mnv
+
+Patch 8.2.2428
+Problem: FocusGained does not work when 'ttymouse' is empty.
+Solution: Don't use the short mouse code if there is a longer matching code.
+ (closes #7755) Add a test.
+Files: src/term.c, src/testdir/test_termcodes.mnv
+
+Patch 8.2.2429
+Problem: :goto does not work correctly with text properties. (Sam McCall)
+Solution: Add a test. (Andrew Radev) Also use the text property size when
+ computing the remaining offset. (closes #5930)
+Files: src/memline.c, src/testdir/test_textprop.mnv
+
+Patch 8.2.2430
+Problem: :mnvgrep expands wildcards twice.
+Solution: Do not expand wildcards a second time.
+Files: src/quickfix.c, src/arglist.c, src/testdir/test_quickfix.mnv
+
+Patch 8.2.2431
+Problem: Warning for -fno-strength-reduce with Clang 11.
+Solution: Adjust check for clang version number.
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.2432
+Problem: Libvterm tests are executed even when libtool doesn't work.
+Solution: Only run libvterm tests if /usr/bin/gcc exists.
+Files: src/Makefile
+
+Patch 8.2.2433
+Problem: Opening cmdline window gives error in BufLeave autocommand.
+Solution: Reset cmdwin_type when triggering the autocommand.
+Files: src/ex_cmds.c, src/testdir/test_cmdline.mnv
+
+Patch 8.2.2434
+Problem: MNV9: no error when compiling str2nr() with a number.
+Solution: Add argument type checks. (closes #7759)
+Files: src/evalfunc.c, src/typval.c, src/proto/typval.pro,
+ src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.2435
+Problem: setline() gives an error for some types.
+Solution: Allow any type, convert each item to a string.
+Files: runtime/doc/eval.txt, src/evalbuffer.c, src/typval.c,
+ src/proto/typval.pro, src/debugger.c, src/mnv9execute.c,
+ src/testdir/test_bufline.mnv, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.2436
+Problem: MNV9 script test is a bit flaky.
+Solution: Wait longer for exit callback.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2437
+Problem: Deprecation warnings with default configuration.
+Solution: Add -Wno-deprecated-declarations.
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.2438
+Problem: Out of bounds compiler warning.
+Solution: Increase the size of uf_name.
+Files: src/structs.h
+
+Patch 8.2.2439
+Problem: Not easy to figure out what packages to get when installing MNV on
+ a new Ubuntu system.
+Solution: Mention explicit commands that are easy to follow.
+Files: src/INSTALL
+
+Patch 8.2.2440
+Problem: Documentation based on patches is outdated.
+Solution: Add changes to documentation in a patch.
+Files: runtime/doc/arabic.txt, runtime/doc/autocmd.txt,
+ runtime/doc/change.txt, runtime/doc/channel.txt,
+ runtime/doc/cmdline.txt, runtime/doc/debugger.txt,
+ runtime/doc/develop.txt, runtime/doc/digraph.txt,
+ runtime/doc/editing.txt, runtime/doc/eval.txt,
+ runtime/doc/filetype.txt, runtime/doc/ft_sql.txt,
+ runtime/doc/gui.txt, runtime/doc/gui_w32.txt,
+ runtime/doc/gui_x11.txt, runtime/doc/hangulin.txt,
+ runtime/doc/helphelp.txt, runtime/doc/help.txt,
+ runtime/doc/if_lua.txt, runtime/doc/if_mzsch.txt,
+ runtime/doc/if_tcl.txt, runtime/doc/indent.txt,
+ runtime/doc/index.txt, runtime/doc/insert.txt,
+ runtime/doc/intro.txt, runtime/doc/map.txt, runtime/doc/mbyte.txt,
+ runtime/doc/message.txt, runtime/doc/mlang.txt,
+ runtime/doc/motion.txt, runtime/doc/netbeans.txt,
+ runtime/doc/options.txt, runtime/doc/os_dos.txt,
+ runtime/doc/os_haiku.txt, runtime/doc/os_unix.txt,
+ runtime/doc/os_vms.txt, runtime/doc/os_win32.txt,
+ runtime/doc/pattern.txt, runtime/doc/pi_getscript.txt,
+ runtime/doc/pi_logipat.txt, runtime/doc/pi_netrw.txt,
+ runtime/doc/pi_tar.txt, runtime/doc/pi_mnvball.txt,
+ runtime/doc/pi_zip.txt, runtime/doc/popup.txt,
+ runtime/doc/print.txt, runtime/doc/quickfix.txt,
+ runtime/doc/quickref.txt, runtime/doc/recover.txt,
+ runtime/doc/remote.txt, runtime/doc/repeat.txt,
+ runtime/doc/rileft.txt, runtime/doc/sign.txt,
+ runtime/doc/spell.txt, runtime/doc/starting.txt,
+ runtime/doc/syntax.txt, runtime/doc/tabpage.txt,
+ runtime/doc/tagsrch.txt, runtime/doc/terminal.txt,
+ runtime/doc/term.txt, runtime/doc/testing.txt,
+ runtime/doc/textprop.txt, runtime/doc/tips.txt,
+ runtime/doc/todo.txt, runtime/doc/uganda.txt,
+ runtime/doc/undo.txt, runtime/doc/usr_02.txt,
+ runtime/doc/usr_03.txt, runtime/doc/usr_04.txt,
+ runtime/doc/usr_05.txt, runtime/doc/usr_07.txt,
+ runtime/doc/usr_08.txt, runtime/doc/usr_10.txt,
+ runtime/doc/usr_11.txt, runtime/doc/usr_20.txt,
+ runtime/doc/usr_22.txt, runtime/doc/usr_23.txt,
+ runtime/doc/usr_24.txt, runtime/doc/usr_27.txt,
+ runtime/doc/usr_30.txt, runtime/doc/usr_31.txt,
+ runtime/doc/usr_40.txt, runtime/doc/usr_41.txt,
+ runtime/doc/usr_42.txt, runtime/doc/usr_44.txt,
+ runtime/doc/usr_45.txt, runtime/doc/usr_46.txt,
+ runtime/doc/usr_90.txt, runtime/doc/usr_toc.txt,
+ runtime/doc/various.txt, runtime/doc/version5.txt,
+ runtime/doc/version6.txt, runtime/doc/version7.txt,
+ runtime/doc/version8.txt, runtime/doc/vi_diff.txt,
+ runtime/doc/mnv9.txt, runtime/doc/visual.txt,
+ runtime/doc/windows.txt
+
+Patch 8.2.2441
+Problem: MNV9: extend() does not give an error for a type mismatch.
+Solution: Check the type of the second argument. (closes #7760)
+Files: src/list.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.2442
+Problem: Automatic GUI selection does not check for GTK 3.
+Solution: Make SKIP_GTK3 empty for automatic GUI support. Set SKIP_GTK3 to
+ YES when checking for GTK2.
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.2443
+Problem: MNV9: no compile time error for wrong str2float argument.
+Solution: Check argument type. (closes #7759)
+Files: src/evalfunc.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.2444
+Problem: MNV9: compile error with combination of operator and list.
+Solution: Generate constants before parsing a list or dict. (closes #7757)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2445
+Problem: MNV9: no proper error for lambda missing return type.
+Solution: Check for this error. (closes #7758)
+Files: src/errors.h, src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2446
+Problem: Setting 'term' empty has different error if compiled with GUI.
+Solution: Insert "else". (closes #7766)
+Files: src/optionstr.c, src/testdir/test_options.mnv
+
+Patch 8.2.2447
+Problem: 'foldlevel' not applied to folds restored from session.
+Solution: Set 'foldlevel' after creating the folds. (closes #7767)
+Files: src/fold.c, src/testdir/test_mksession.mnv
+
+Patch 8.2.2448
+Problem: Compilation error with Ruby 3.0.
+Solution: Adjust #ifdefs and declaration. (Ken Takata, closes #7761)
+Files: src/if_ruby.c
+
+Patch 8.2.2449
+Problem: MNV9: flatten() always changes the list type.
+Solution: Disallow using flatten() and add flattennew().
+Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/list.c, src/proto/list.pro, src/errors.h, src/mnv9compile.c,
+ src/testdir/test_flatten.mnv, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.2450
+Problem: MS-Windows: ADS was not preserved if 'backupcopy' is "yes".
+Solution: Copy ADS before truncating the file. (Ken Takata, closes #7762)
+Files: src/bufwrite.c
+
+Patch 8.2.2451
+Problem: MS-Windows: Extended Attributes not preserved.
+Solution: Preserve Extended Attributes when writing a file. (Ken Takata,
+ closes #7765)
+Files: src/os_win32.c
+
+Patch 8.2.2452
+Problem: No completion for the 'filetype' option.
+Solution: Add filetype completion. (Martin Tournoij, closes #7747)
+Files: src/option.c, src/optiondefs.h, src/testdir/test_options.mnv
+
+Patch 8.2.2453
+Problem: MNV9: a variable name with "->" in the next line doesn't work.
+Solution: Recognize a variable name by itself. (closes #7770)
+Files: src/ex_docmd.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2454
+Problem: Leading space can not be made visible.
+Solution: Add "lead:" to 'listchars'. (closes #7772)
+Files: runtime/doc/options.txt, src/drawline.c, src/globals.h,
+ src/message.c, src/screen.c, src/testdir/test_listchars.mnv
+
+Patch 8.2.2455
+Problem: MNV9: key type that can be used for literal dict and indexing is
+ inconsistent.
+Solution: Allow using number and bool as key for a literal dict. (#7771)
+Files: runtime/doc/mnv9.txt, src/dict.c, src/eval.c, src/mnv9compile.c,
+ src/testdir/test_mnv9_expr.mnv, src/testdir/test_mnv9_builtin.mnv,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2456
+Problem: Coverity warning for strcpy() into fixed size array.
+Solution: Add a type cast to hopefully silence the bogus warning.
+Files: src/userfunc.c
+
+Patch 8.2.2457
+Problem: Coverity warns for memory leak.
+Solution: Free memory when out of memory.
+Files: src/if_cscope.c
+
+Patch 8.2.2458
+Problem: Coverity warns for :retab using freed memory.
+Solution: Use the updated line pointer when moving text properties.
+Files: src/indent.c
+
+Patch 8.2.2459
+Problem: Coverity reports dead code.
+Solution: Remove the dead code.
+Files: src/eval.c
+
+Patch 8.2.2460
+Problem: Coverity warns for unused value.
+Solution: Do not reset the return value to OK.
+Files: src/mnv9compile.c
+
+Patch 8.2.2461
+Problem: Coverity warns for unchecked return value.
+Solution: Add "(void)" to avoid the warning.
+Files: src/mnv9execute.c
+
+Patch 8.2.2462
+Problem: Coverity warns for not checking for fseek() error.
+Solution: Give an error message if fseek() fails.
+Files: src/spellfile.c
+
+Patch 8.2.2463
+Problem: Using :arglocal in an autocommand may use freed memory.
+ (houyunsong)
+Solution: Check if the arglist is locked.
+Files: src/arglist.c, src/testdir/test_autocmd.mnv
+
+Patch 8.2.2464
+Problem: Using freed memory if window closed in autocommand. (houyunsong)
+Solution: Check the window still exists.
+Files: src/ex_cmds.c, src/testdir/test_autocmd.mnv
+
+Patch 8.2.2465
+Problem: Using freed memory in :psearch. (houyunsong)
+Solution: Check the current window is still valid. Fix flaky test.
+Files: src/search.c, src/testdir/test_autocmd.mnv
+
+Patch 8.2.2466
+Problem: Max() and min() can give many error messages.
+Solution: Bail out at the first error. (closes #1039, closes #7778)
+Files: src/evalfunc.c, src/testdir/test_functions.mnv
+
+Patch 8.2.2467
+Problem: Script generated by :mkview changes alternate file.
+Solution: Only write :balt in the session file. (Harish Rajagopal,
+ closes #7779)
+Files: src/session.c, src/testdir/test_mksession.mnv
+
+Patch 8.2.2468
+Problem: Not easy to get the full command name from a shortened one.
+Solution: Add fullcommand(). (Martin Tournoij, closes #7777)
+Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/ex_docmd.c, src/proto/evalfunc.pro,
+ src/testdir/test_cmdline.mnv
+
+Patch 8.2.2469
+Problem: Confusing error if :winsize has a wrong argument.
+Solution: Quote the argument in the error. (closes #2523)
+Files: src/ex_docmd.c, src/testdir/test_excmd.mnv
+
+Patch 8.2.2470
+Problem: Popup_getoptions() does not get textprop from other tab.
+Solution: use win_valid_any_tab(). (closes #7786)
+Files: src/popupwin.c, src/testdir/test_popupwin.mnv
+
+Patch 8.2.2471
+Problem: Popup_setoptions() does not set textprop in other tab.
+Solution: use win_valid_any_tab(). (closes #7788)
+Files: src/popupwin.c, src/testdir/test_popupwin.mnv
+
+Patch 8.2.2472
+Problem: Crash when using command line window in an autocommand.
+ (houyunsong)
+Solution: Save and restore au_new_curbuf.
+Files: src/ex_cmds.c, src/testdir/test_autocmd.mnv
+
+Patch 8.2.2473
+Problem: Crash when leaving command line window triggers autocommand.
+ (houyunsong)
+Solution: Make sure not to close the current window or buffer.
+Files: src/ex_getln.c, src/testdir/test_autocmd.mnv
+
+Patch 8.2.2474
+Problem: Using freed memory when window is closed by autocommand.
+ (houyunsong)
+Solution: Check the window pointer is still valid.
+Files: src/quickfix.c, src/testdir/test_autocmd.mnv
+
+Patch 8.2.2475
+Problem: Autocommand tests hangs on MS-Windows.
+Solution: Skip one test.
+Files: src/testdir/test_autocmd.mnv
+
+Patch 8.2.2476
+Problem: Using freed memory when using an autocommand to split a window
+ while a buffer is being closed.
+Solution: Disallow splitting when the buffer has b_locked_split set.
+Files: src/buffer.c, src/window.c, src/errors.h, src/structs.h,
+ src/popupwin.c, src/testdir/test_autocmd.mnv
+
+Patch 8.2.2477
+Problem: Autocommand tests hang on MS-Windows.
+Solution: Skip a couple of tests. Fix file name.
+Files: src/testdir/test_autocmd.mnv
+
+Patch 8.2.2478
+Problem: MS-Windows: backup files for plugins are loaded.
+Solution: Do not use the alternate file name for files ending in "~".
+Files: src/filepath.c
+
+Patch 8.2.2479
+Problem: set/getbufline test fails without the job feature.
+Solution: Check whether the job feature is supported. (Dominique Pellé,
+ closes #7790)
+Files: src/testdir/test_bufline.mnv, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.2480
+Problem: MNV9: some errors for white space do not show context.
+Solution: Include the text at the error.
+Files: src/errors.h, src/dict.c, src/list.c, src/userfunc.c,
+ src/mnv9compile.c, src/mnv9script.c, src/mnv9type.c
+
+Patch 8.2.2481
+Problem: MNV9: confusing error when variable arguments have a default
+ value.
+Solution: Give a specific error message. (closes #7793)
+Files: src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2482
+Problem: Build error.
+Solution: Add new error message.
+Files: src/errors.h
+
+Patch 8.2.2483
+Problem: MNV9: type error for malformed expression.
+Solution: Check for end of command before checking type. (closes #7795)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2484
+Problem: MNV9: Cannot use a comment starting with #{ after an expression.
+Solution: Remove the check for "{" since #{ dictionaries are not supported.
+Files: src/ex_docmd.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2485
+Problem: When sourcing a script again the script version isn't reset.
+Solution: Set sn_version to one when sourcing a script again. Clear
+ sn_save_cpo properly. (closes #7608)
+Files: src/scriptfile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2486
+Problem: MNV9: some errors for white space do not show context.
+Solution: Include the text at the error.
+Files: src/errors.h, src/dict.c, src/list.c, src/userfunc.c,
+ src/mnv9compile.c, src/mnv9type.c
+
+Patch 8.2.2487
+Problem: Terminal shows garbage after double-wide character with a
+ combining character. (Kyoichiro Yamada)
+Solution: Libvterm: do not add the width of the combining character to the
+ glyph width. (closes #7801)
+Files: src/libvterm/src/state.c, src/testdir/test_terminal.mnv,
+ src/testdir/dumps/Test_terminal_combining.dump
+
+Patch 8.2.2488
+Problem: json_encode() gives generic argument error.
+Solution: Mention the type that can't be encoded. (issue #7802)
+Files: src/json.c, src/errors.h, src/testdir/test_json.mnv
+
+Patch 8.2.2489
+Problem: current buffer is wrong after deletebufline() fails to delete a
+ line in another buffer.
+Solution: Restore the current buffer.
+Files: src/evalbuffer.c, src/testdir/test_bufline.mnv
+
+Patch 8.2.2490
+Problem: 'wrap' option is always reset when starting diff mode.
+Solution: Add the "followwrap" item in 'diffopt'. (Rick Howe, closes #7797)
+Files: runtime/doc/diff.txt, runtime/doc/options.txt, src/diff.c,
+ src/testdir/test_diffmode.mnv
+
+Patch 8.2.2491
+Problem: Popup window for text property may show in first screen line.
+Solution: If the text position is invisible do not show the popup window.
+ (closes #7807)
+Files: src/popupwin.c, src/testdir/test_popupwin.mnv,
+ src/testdir/dumps/Test_popup_prop_not_visible_01.dump,
+ src/testdir/dumps/Test_popup_prop_not_visible_02.dump,
+ src/testdir/dumps/Test_popup_prop_not_visible_03.dump
+
+Patch 8.2.2492
+Problem: Command line buffer name cannot be translated.
+Solution: Add _(). (Gabriel Dupras, closes #7812)
+Files: src/ex_getln.c
+
+Patch 8.2.2493
+Problem: Text property for text left of window shows up.
+Solution: Check if the text property ends before the current column.
+ (closes #7806)
+Files: src/drawline.c, src/testdir/test_textprop.mnv,
+ src/testdir/dumps/Test_textprop_nowrap_01.dump,
+ src/testdir/dumps/Test_textprop_nowrap_02.dump
+
+Patch 8.2.2494
+Problem: ":rmnvinfo!" clears most of oldfiles.
+Solution: Add VIF_ONLY_CURBUF to read_mnvinfo(). (closes #1781)
+Files: src/mnvinfo.c, src/mnv.h
+
+Patch 8.2.2495
+Problem: Text jumps up and down when moving the cursor in a small window
+ with wrapping text and 'scrolloff' set.
+Solution: Adjust the computation of w_skipcol. (partly by Ghjuvan Lacambre,
+ closes #7813)
+Files: src/move.c, src/testdir/test_breakindent.mnv
+
+Patch 8.2.2496 (after 8.2.2495)
+Problem: Insufficient testing for text jumping fix.
+Solution: Add another test case.
+Files: src/testdir/test_breakindent.mnv
+
+Patch 8.2.2497
+Problem: No error when using more than one character for a register name.
+Solution: In MNV9 script check for a single character string. (closes #7814)
+ Fix that VAR_BOOL and VAR_SPECIAL are not considered equal.
+Files: src/errors.h, src/evalfunc.c, src/typval.c,
+ src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.2498
+Problem: No test for what 8.2.2494 fixes.
+Solution: Add a simple change to test the fix. (closes #7818)
+Files: src/testdir/test_mnvinfo.mnv
+
+Patch 8.2.2499
+Problem: "mnv -g --version" does not redirect output.
+Solution: Reset gui.starting when showing version info. (closes #7815)
+Files: src/main.c, src/testdir/test_version.mnv
+
+Patch 8.2.2500 (after 8.2.2499)
+Problem: Build fails without the GUI feature.
+Solution: Add #ifdef.
+Files: src/main.c
+
+Patch 8.2.2501
+Problem: Not always clear where an error is reported.
+Solution: Add the where_T structure and pass it around. (closes #7796)
+Files: src/structs.h, src/mnv9type.c, src/proto/mnv9type.pro,
+ src/errors.h, src/evalvars.c, src/proto/evalvars.pro, src/eval.c,
+ src/proto/eval.pro, src/mnv9execute.c, src/mnv9script.c,
+ src/proto/mnv9script.pro, src/dict.c, src/list.c,
+ src/mnv9compile.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2502
+Problem: A few github actions are failing.
+Solution: Install setuptools-rust. (closes #7823)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.2503
+Problem: MNV9: a caught error may leave something on the stack.
+Solution: Drop items from the stack if needed. (closes #7826)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2504
+Problem: MNV9: crash when using an argument from a closure.
+Solution: Check if gen_load_outer is NULL. (closes #7821)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2505
+Problem: MNV9: crash after defining function with invalid return type.
+Solution: Clear function growarrays. Fix memory leak.
+Files: src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2506
+Problem: MNV9: :continue does not work correctly in a :try block
+Solution: Add the TRYCLEANUP instruction. (closes #7827)
+Files: src/mnv9compile.c, src/mnv9execute.c, src/mnv9.h,
+ src/testdir/test_mnv9_script.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.2507
+Problem: Github build may fail if Ubuntu 20.04 is used. Installing rust is
+ not needed.
+Solution: Specify ubuntu-18.04 instead of latest. Update "pip" instead of
+ installing rust. (Ozaki Kiichi, closes #7820)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.2508
+Problem: Cannot change the character displayed in non existing lines.
+Solution: Add the "eob" item to 'fillchars'. (closes #7832, closes #3820)
+Files: runtime/doc/options.txt, runtime/doc/todo.txt,
+ runtime/doc/windows.txt, src/drawscreen.c, src/globals.h,
+ src/optiondefs.h, src/screen.c, src/testdir/test_display.mnv
+
+Patch 8.2.2509
+Problem: Tests fail on s390 build.
+Solution: Initialize trycmd_T.
+Files: src/mnv9execute.c
+
+Patch 8.2.2510
+Problem: Internal error when popup with mask is zero height or width.
+Solution: Bail out if width or height is zero. (closes #7831)
+Files: src/popupwin.c, src/testdir/test_popupwin.mnv
+
+Patch 8.2.2511
+Problem: MNV9: cannot use MNV9 script syntax in some places.
+Solution: Add the :mnv9cmd command modifier. Incompatible: Makes ":mnv9"
+ mean ":mnv9cmd" instead of ":mnv9script".
+Files: runtime/doc/mnv9.txt, runtime/doc/repeat.txt, src/ex_docmd.c,
+ src/ex_cmds.h, src/structs.h, src/ex_cmdidxs.h, src/errors.h,
+ src/testdir/test_mnv9_cmd.mnv, src/testdir/test_cmdline.mnv,
+ src/testdir/dumps/Test_wildmenu_1.dump,
+ src/testdir/dumps/Test_wildmenu_2.dump,
+ src/testdir/dumps/Test_wildmenu_3.dump,
+ src/testdir/dumps/Test_wildmenu_4.dump,
+ src/testdir/test_quickfix.mnv
+
+Patch 8.2.2512
+Problem: MNV9: compiling error test sometimes fails.
+Solution: use WaitForAssert() instead of sleeping for a bit. (Dominique
+ Pellé, closes #7837)
+Files: src/testdir/term_util.mnv, src/testdir/test_mnv9_func.mnv,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2513 (after 8.2.2511)
+Problem: MNV9: missing part of :mnv9cmd change.
+Solution: Use command modifier in in_mnv9script().
+Files: src/mnv9script.c
+
+Patch 8.2.2514 (after 8.2.2511)
+Problem: MNV9: build error in tiny version.
+Solution: Add #ifdef.
+Files: src/ex_docmd.c
+
+Patch 8.2.2515
+Problem: Memory access error when truncating an empty message.
+Solution: Check for an empty string. (Dominique Pellé, closes #7841)
+Files: src/message.c, src/message_test.c
+
+Patch 8.2.2516
+Problem: Test failure on s390. (analyses by James McCoy)
+Solution: Only set the try_finally label when not skipping.
+Files: src/mnv9compile.c
+
+Patch 8.2.2517
+Problem: MNV9: fix for s390 not tested on other systems.
+Solution: Add a test.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2518
+Problem: 'listchars' should be window-local.
+Solution: Make 'listchars' global-local. (Yegappan Lakshmanan, Marco Hinz,
+ closes #5206, closes #7850)
+Files: runtime/doc/options.txt, src/buffer.c, src/charset.c,
+ src/drawline.c, src/drawscreen.c, src/evalfunc.c, src/globals.h,
+ src/indent.c, src/message.c, src/misc1.c, src/option.c,
+ src/option.h, src/optiondefs.h, src/optionstr.c,
+ src/proto/screen.pro, src/screen.c, src/structs.h,
+ src/testdir/test_listchars.mnv, src/testdir/test_listlbr.mnv
+
+Patch 8.2.2519
+Problem: MNV9: no reason to keep strange Vi behavior.
+Solution: ":3" and ":3|" both go to line 3. ":|" does not print the line.
+ (closes #7840)
+Files: src/ex_docmd.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2520
+Problem: Missing tests for 'listchars'.
+Solution: Add a few more checks. (Yegappan Lakshmanan, closes #7854)
+Files: src/testdir/test_listchars.mnv
+
+Patch 8.2.2521
+Problem: Some compilers can't handle pointer initialization. (John
+ Marriott)
+Solution: Use a local struct and assign it afterwards.
+Files: src/screen.c
+
+Patch 8.2.2522
+Problem: Beancount filetype not recognized.
+Solution: Add a detection rule. (Brian Ryall, closes #7859)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.2523
+Problem: Svelte filetype not recognized.
+Solution: Add a detection rule. (Brian Ryall, closes #7858)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.2524
+Problem: Cannot change the characters displayed in the foldcolumn.
+Solution: Add fields to 'fillchars'. (Yegappan Lakshmanan, Matthieu Coudron,
+ closes #7860)
+Files: runtime/doc/options.txt, src/globals.h, src/mouse.c, src/screen.c,
+ src/testdir/test_display.mnv
+
+Patch 8.2.2525
+Problem: MNV9: only local variables checked for a name.
+Solution: Also check arguments and script variables. (closes #7838)
+Files: src/mnv9compile.c, src/ex_docmd.c, src/proto/ex_docmd.pro,
+ src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2526 (after 8.2.2525)
+Problem: Build failure.
+Solution: Change lookup_scriptvar() arguments.
+Files: src/evalvars.c, src/proto/evalvars.pro
+
+Patch 8.2.2527
+Problem: MNV9: lambda return type is not determined at script level.
+Solution: Compile the lambda to get the return type. (closes #7843)
+Files: src/eval.c, src/mnv.h, src/mnv9.h,
+ src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2528
+Problem: MNV9: crash when compiling lambda fails.
+Solution: Bail out after compilation fails. (closes #7862)
+Files: src/eval.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2529
+Problem: MNV9: Not possible to use legacy and MNV9 script in one file.
+Solution: MNV9: allow for "if false" before :mnv9script. (closes #7851)
+Files: runtime/doc/mnv9.txt, src/ex_docmd.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2530
+Problem: MNV9: not enough testing for profiling.
+Solution: Add a test with nested functions and a lambda. Fix profiling
+ for calling a compiled function.
+Files: src/profiler.c, src/proto/profiler.pro, src/userfunc.c,
+ src/mnv9execute.c, src/testdir/test_profile.mnv
+
+Patch 8.2.2531
+Problem: MNV9: the :k command is obscure.
+Solution: Disallow using :k, can use :mark instead. (closes #7874)
+Files: runtime/doc/mnv9.txt, src/ex_docmd.c, src/mnv9script.c,
+ src/mnv9compile.c, src/ex_cmds.h, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2532
+Problem: MNV9: confusing error if :k is used with a range.
+Solution: Give an error about the range. (issue #7874)
+Files: src/mnv9script.c, src/mnv9compile.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2533
+Problem: MNV9: cannot use a range with :unlet.
+Solution: Implement ISN_UNLETRANGE.
+Files: src/errors.h, src/eval.c, src/evalvars.c, src/list.c,
+ src/proto/evalvars.pro, src/proto/list.pro, src/mnv9.h,
+ src/mnv9compile.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2534
+Problem: Missing test coverage.
+Solution: Improve test coverage for completion with different encodings,
+ mapset(), and term function failures. (Dominique Pellé,
+ closes #7877)
+Files: src/testdir/test_edit.mnv, src/testdir/test_maparg.mnv,
+ src/testdir/test_terminal3.mnv
+
+Patch 8.2.2535
+Problem: MS-Windows: cannot run all mnv9 tests.
+Solution: Make test_mnv9 target work.
+Files: src/Make_mvc.mak
+
+Patch 8.2.2536
+Problem: Coverity complains about unchecked return value.
+Solution: Add (void).
+Files: src/userfunc.c
+
+Patch 8.2.2537
+Problem: MNV9: crash when map() fails.
+Solution: Clear typval before using it. (closes #7884)
+Files: src/list.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.2538
+Problem: Crash when using Python list iterator.
+Solution: Increment the list reference count. (closes #7886)
+Files: src/if_py_both.h, src/testdir/test_python3.mnv
+
+Patch 8.2.2539
+Problem: MNV9: return from finally block causes a hang.
+Solution: Store both the finally and endtry indexes. (closes #7885)
+Files: src/mnv9execute.c, src/mnv9compile.c, src/mnv9.h,
+ src/testdir/test_mnv9_script.mnv,
+
+Patch 8.2.2540
+Problem: MNV9: no error for using script var name for argument.
+Solution: Check for this error. (closes #7868)
+Files: src/userfunc.c, src/mnv9compile.c, src/proto/mnv9compile.pro,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2541
+Problem: Popup_create() does not allow boolean for "cursorline".
+Solution: Use dict_get_bool(). (issue #7869)
+Files: src/popupwin.c, src/testdir/test_popupwin.mnv
+
+Patch 8.2.2542
+Problem: Highlight of char beyond line end is not correct. (Chuan Wei Foo)
+Solution: Fix counting NUL as one cell. Draw one more character if the EOL
+ is part of the match. (closes #7883)
+Files: src/match.c, src/testdir/test_search.mnv,
+ src/testdir/dumps/Test_hlsearch_1.dump,
+ src/testdir/dumps/Test_hlsearch_2.dump
+
+Patch 8.2.2543
+Problem: MNV9: a return inside try/catch does not restore exception state
+ properly.
+Solution: When there is no ":finally" jump to ":endtry". (closes #7882)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2544
+Problem: MNV9: error for argument when checking for lambda.
+Solution: Respect the skip flag. (closes #7887)
+Files: src/userfunc.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2545
+Problem: Errors and crash when terminal window is zero height. (Leonid V.
+ Fedorenchik)
+Solution: Do not resize when width or height is zero. (closes #7890)
+Files: src/terminal.c, src/testdir/test_terminal.mnv
+
+Patch 8.2.2546
+Problem: Typo in mouse key name.
+Solution: Fix the typo. (issue #4725)
+Files: src/misc2.c
+
+Patch 8.2.2547
+Problem: "%" command not accurate for big files.
+Solution: Make it more accurate for files up to 21M lines. (Dominique Pellé,
+ closes #7889)
+Files: src/normal.c
+
+Patch 8.2.2548
+Problem: May get stuck in the cmdline window using :normal.
+Solution: Have nv_esc() return K_IGNORE.
+Files: src/normal.c
+
+Patch 8.2.2549
+Problem: Crash after using "g:" in a for loop.
+Solution: Increment the reference count. (closes #7892)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2550
+Problem: Signal stack size is wrong with latest glibc 2.34.
+Solution: Use sysconf(_SC_SIGSTKSZ) if available. (Zdenek Dohnal, closes
+ #7895)
+Files: src/config.h.in, src/configure.ac, src/os_unix.c,
+ src/auto/configure
+
+Patch 8.2.2551
+Problem: MS-Windows: colors test file is not installed.
+Solution: Also copy runtime/colors/tools. (Ken Takata, closes #7902)
+Files: nsis/gmnv.nsi
+
+Patch 8.2.2552
+Problem: MNV9: no reason to consider "{{{{{{{{" a command.
+Solution: Just use "{". (issue #7904)
+Files: src/ex_cmds.h
+
+Patch 8.2.2553
+Problem: MNV9: Cannot put "|" after "{".
+Solution: Add the EX_TRLBAR flag. (issue #7904)
+Files: src/ex_cmds.h, src/ex_eval.c
+
+Patch 8.2.2554
+Problem: MNV9: exporting a final is not tested.
+Solution: Add a test.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2555
+Problem: MNV9: missing test for 8.2.2553.
+Solution: Add a simple test.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2556
+Problem: MNV9: :import with "as" not fully supported.
+Solution: Implement "as" for more cases.
+Files: src/mnv9script.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2557
+Problem: Compiler warning for shadowed variable.
+Solution: Declare "p" only once.
+Files: src/mnv9script.c
+
+Patch 8.2.2558
+Problem: No error if a lambda argument shadows a variable.
+Solution: Check that the argument name shadows a local, argument or script
+ variable. (closes #7898)
+Files: src/mnv9compile.c, src/proto/mnv9compile.pro, src/userfunc.c,
+ src/mnv9script.c, src/errors.h, src/testdir/test_mnv9_func.mnv,
+ src/testdir/test_mnv9_expr.mnv, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2559
+Problem: MS-Windows: guifont test fails on Windows XP.
+Solution: Check windowsversion().
+Files: src/testdir/test_gui.mnv
+
+Patch 8.2.2560
+Problem: Setting 'winminheigt' does not take tabline into account.
+Solution: Subtract the tabline from the available height. (closes #7899)
+Files: src/window.c, src/testdir/test_options.mnv
+
+Patch 8.2.2561
+Problem: Not all textprop code is covered by tests.
+Solution: Add a few more test cases. (Dominique Pellé, closes #7908)
+Files: src/testdir/test_textprop.mnv
+
+Patch 8.2.2562
+Problem: GUI: star register changed when 'clipboard' is "unnamedplus". (Ingo
+ Karkat)
+Solution: Do not change the star register when 'clipboard' contains
+ "unnamedplus" and not "unnamed". (closes #1516)
+Files: src/register.c
+
+Patch 8.2.2563
+Problem: Cannot use multibyte characters for folding in 'fillchars'.
+Solution: Port pull request 11568 to MNV. (Yegappan Lakshmanan,
+ closes #7924)
+Files: src/drawline.c, src/drawscreen.c, src/macros.h,
+ src/proto/screen.pro, src/screen.c, src/testdir/test_fold.mnv,
+ src/testdir/test_profile.mnv
+
+Patch 8.2.2564
+Problem: Focus events end Insert mode if 'esckeys' is not set.
+Solution: Do not enable focus events when 'esckeys' is off. (closes #7926)
+Files: src/term.c
+
+Patch 8.2.2565
+Problem: MNV9: "..=" not always recognized.
+Solution: Do not consider "..=" to be string concatenation. (closes #7905)
+Files: src/eval.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2566
+Problem: MNV9: Function name is not recognized.
+Solution: Change lookup_scriptvar() to also find function names.
+ (closes #7770)
+Files: src/mnv9script.c, src/evalvars.c, src/proto/evalvars.pro,
+ src/ex_docmd.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2567
+Problem: MNV9: no error if variable is defined for existing function.
+Solution: Check if name isn't already in use. (closes #7897)
+Files: src/evalvars.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2568
+Problem: Second time a preview popup is opened highlight is not set.
+ (Gabriel Dupras)
+Solution: Apply 'previewpopup' after getting the file. (closes #7928)
+Files: src/tag.c, src/testdir/test_popupwin.mnv,
+ src/testdir/dumps/Test_popupwin_previewpopup_2.dump,
+ src/testdir/dumps/Test_popupwin_previewpopup_3.dump,
+ src/testdir/dumps/Test_popupwin_previewpopup_4.dump,
+ src/testdir/dumps/Test_popupwin_previewpopup_5.dump
+
+Patch 8.2.2569
+Problem: 'fillchars' "stl" and "stlnc" items must be single byte.
+Solution: Accept multi-byte characters. (Christian Wellenbrock, Yegappan
+ Lakshmanan, closes #7927)
+Files: runtime/doc/options.txt, src/buffer.c, src/macros.h, src/screen.c,
+ src/testdir/test_fold.mnv, src/testdir/test_statusline.mnv
+
+Patch 8.2.2570
+Problem: Tests fail when run as root.
+Solution: Add a comment mentioning the expected failure. (issue #7919)
+Files: src/testdir/test_edit.mnv, src/testdir/test_excmd.mnv,
+ src/testdir/test_help.mnv, src/testdir/test_writefile.mnv
+
+Patch 8.2.2571
+Problem: Test may leave file behind.
+Solution: Delete the temporary file. Don't profile in the running MNV
+ instance.
+Files: src/testdir/test_quickfix.mnv, src/testdir/test_profile.mnv
+
+Patch 8.2.2572
+Problem: MNV9: crash when getting the types for a legacy function.
+Solution: Initialize the type list growarray. (closes #7929)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2573
+Problem: MNV9: using invalid pointer for error message.
+Solution: Use the right pointer. (closes #7921)
+Files: src/eval.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2574
+Problem: MNV9: crash when calling partial with wrong function.
+Solution: Check argument types of called function. (closes #7912)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2575
+Problem: MNV9: a function name with "->" in the next line doesn't work.
+Solution: Recognize a function name by itself. (closes #7770)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2576
+Problem: MNV9: defining a :func function checks for white space after a
+ comma in the arguments.
+Solution: Only check for white space in a :def function. (closes #7930)
+Files: src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2577
+Problem: Compiler warning for type conversion.
+Solution: Add a typecast. (Mike Williams)
+Files: src/drawline.c
+
+Patch 8.2.2578
+Problem: Lua cannot handle a passed in lambda.
+Solution: Handle VAR_PARTIAL. (Prabir Shrestha, closes #7937, closes #7936)
+Files: src/if_lua.c, src/testdir/test_lua.mnv
+
+Patch 8.2.2579
+Problem: MNV9: crash in garbagecollect after for loop.
+Solution: Do not set a reference in script item when the name was cleared.
+ (closes #7935)
+Files: src/evalvars.c
+
+Patch 8.2.2580
+Problem: MNV9: checking vararg type is wrong when function is auto-loaded.
+Solution: Use the member type. (closes #7933)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2581
+Problem: MNV9: sourcing MNV9 script triggers a redraw.
+Solution: Do not let setting/restoring 'cpoptions' cause a redraw.
+ (closes #7920)
+Files: src/mnv.h, src/option.c, src/optionstr.c, src/scriptfile.c,
+ src/mnv9script.c, src/testdir/test_mnv9_script.mnv,
+ src/testdir/dumps/Test_mnv9_no_redraw.dump
+
+Patch 8.2.2582 (after 8.2.2581)
+Problem: MNV9: screendump test fails on MS-Windows.
+Solution: Use :function instead of :def.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2583
+Problem: MNV9: cannot compare result of getenv() with null.
+Solution: Make the return type of getenv() "any". (closes #7943)
+Files: src/evalfunc.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.2584
+Problem: MNV9: type error for assigning the result of list concatenation to
+ a list.
+Solution: Do not consider concatenation result in a constant. (closes #7942)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2585
+Problem: MNV9: illegal memory access.
+Solution: Check byte right after "null", not one more.
+Files: src/mnv9compile.c
+
+Patch 8.2.2586
+Problem: Process id may be invalid.
+Solution: Use sysinfo.uptime to check for recent reboot. (suggested by Hugo
+ van der Sanden, closes #7947)
+Files: src/configure.ac, src/auto/configure, src/config.h.in,
+ src/memline.c, src/testing.c, src/globals.h,
+ src/testdir/test_recover.mnv
+
+Patch 8.2.2587 (after 8.2.2586)
+Problem: Recover test fails on FreeBSD.
+Solution: Check for Linux.
+Files: src/testdir/check.mnv, src/testdir/test_recover.mnv
+
+Patch 8.2.2588 (after 8.2.2586)
+Problem: Build failure with tiny features.
+Solution: Add #ifdef. Run recover test separately.
+Files: src/memline.c, src/testdir/Make_all.mak, src/testdir/test_alot.mnv
+
+Patch 8.2.2589 (after 8.2.2586)
+Problem: Recover test hangs in the GUI.
+Solution: Add g:skipped_reason to skip a _nocatch_ test.
+Files: src/testdir/runtest.mnv, src/testdir/test_recover.mnv
+
+Patch 8.2.2590
+Problem: MNV9: default argument value may cause internal error.
+Solution: Hide later function arguments when compiling the expression.
+ (closes #7948)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2591
+Problem: Poke files are not recognized.
+Solution: Add a filetype entry. (Matt Ihlenfield)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.2592
+Problem: Code coverage could be improved.
+Solution: Add a few more tests. (Dominique Pellé, closes #7957)
+Files: src/testdir/test_fileformat.mnv, src/testdir/test_normal.mnv,
+ src/testdir/test_sleep.mnv, src/testdir/test_textformat.mnv,
+ src/testdir/test_mnvinfo.mnv
+
+Patch 8.2.2593
+Problem: List of distributed files is incomplete.
+Solution: Add a file and rename another.
+Files: Filelist
+
+Patch 8.2.2594
+Problem: Alternate buffer added to session file even when it's hidden.
+Solution: Check the 'buflisted' option. (closes #7951)
+Files: src/session.c, src/testdir/test_mksession.mnv
+
+Patch 8.2.2595
+Problem: Setting 'winminheight' may cause 'lines' to change.
+Solution: Also take minimal height of other tabpages into account. (#7899)
+Files: src/window.c, src/testdir/test_options.mnv
+
+Patch 8.2.2596
+Problem: :doautocmd may confuse scripts listening to WinEnter.
+Solution: Do the current buffer last. (closes #7958)
+Files: src/autocmd.c, src/testdir/test_autocmd.mnv
+
+Patch 8.2.2597
+Problem: MNV9: "import * as" does not work at script level.
+Solution: Implement using an imported namespace.
+Files: src/mnv.h, src/eval.c, src/evalvars.c, src/proto/evalvars.pro,
+ src/mnv9execute.c, src/errors.h, src/mnv9script.c,
+ src/proto/mnv9script.pro, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2598
+Problem: MNV9: :open does not need to be supported.
+Solution: Do not support :open in MNV9 script.
+Files: src/ex_docmd.c, src/mnv9script.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2599 (after 8.2.2597)
+Problem: Build failure.
+Solution: Add missing change.
+Files: src/mnv9compile.c
+
+Patch 8.2.2600
+Problem: MNV9: crash when putting an unknown type in a dictionary.
+ (Yegappan Lakshmanan)
+Solution: Handle a NULL type pointer.
+Files: src/mnv9type.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.2601
+Problem: Memory usage test often fails on FreeBSD.
+Solution: Increase multiplier for upper limit.
+Files: src/testdir/test_memory_usage.mnv
+
+Patch 8.2.2602
+Problem: MNV9: continue doesn't work if :while is very first command.
+ (Yegappan Lakshmanan)
+Solution: Add one to the continue instruction index.
+Files: src/mnv9execute.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2603
+Problem: MNV9: no effect if user command is also a function.
+Solution: Check for paren following. (closes #7960)
+Files: src/evalvars.c, src/proto/evalvars.pro, src/ex_docmd.c,
+ src/proto/ex_docmd.pro, src/mnv9compile.c,
+ src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2604
+Problem: GUI-specific command line arguments not tested.
+Solution: Add tests for several arguments. (Dominique Pellé, closes #7962)
+Files: src/testdir/test_startup.mnv
+
+Patch 8.2.2605
+Problem: MNV9: string index and slice does not include composing chars.
+Solution: Include composing characters. (issue #6563)
+Files: runtime/doc/mnv9.txt, src/mnv9execute.c,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2606
+Problem: strchars() defaults to counting composing characters.
+Solution: Add strcharlen() which ignores composing characters.
+Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/testdir/test_utf8.mnv
+
+Patch 8.2.2607
+Problem: strcharpart() cannot include composing characters.
+Solution: Add the {skipcc} argument.
+Files: runtime/doc/eval.txt, src/evalfunc.c,
+ src/testdir/test_expr_utf8.mnv
+
+Patch 8.2.2608
+Problem: Character input not fully tested.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #7963)
+Files: src/testdir/test_functions.mnv, src/testdir/test_messages.mnv,
+ src/testdir/test_paste.mnv, src/testdir/test_registers.mnv,
+ src/testdir/test_undo.mnv
+
+Patch 8.2.2609
+Problem: Test disabled on MS-Windows even though it should work.
+Solution: Restore the condition for skipping the test. (Ken Takata,
+ closes #7970)
+Files: src/testdir/test_startup.mnv
+
+Patch 8.2.2610
+Problem: Mouse click test fails when using remote connection.
+Solution: Use a larger 'mousetime'. (Dominique Pellé, closes #7968)
+Files: src/testdir/test_selectmode.mnv
+
+Patch 8.2.2611
+Problem: Conditions for startup tests are not exactly right.
+Solution: Check for type of GUI instead of MS-Windows. (Ozaki Kiichi,
+ closes #7976)
+Files: src/main.c, src/testdir/check.mnv, src/testdir/test_startup.mnv
+
+Patch 8.2.2612
+Problem: col('.') may get outdated column value.
+Solution: Add a note to the help how to make this work and add a test for
+ it. (closes #7971)
+Files: runtime/doc/map.txt, src/testdir/test_mapping.mnv
+
+Patch 8.2.2613 (after 8.2.2612)
+Problem: New test throws exception.
+Solution: Adjust the function cleanup.
+Files: src/testdir/test_mapping.mnv
+
+Patch 8.2.2614
+Problem: MNV9: function is deleted while executing.
+Solution: increment the call count, when more than zero do not delete the
+ function but mark it as dead. (closes #7977)
+Files: src/mnv9execute.c, src/userfunc.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2615 (after 8.2.2614)
+Problem: Test is sourcing the wrong file.
+Solution: Correct the file name.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2616
+Problem: MNV9: if 'cpo' is changed in MNV9 script it may be restored.
+Solution: Apply the changes to 'cpo' to the restored value.
+Files: runtime/doc/mnv9.txt, src/scriptfile.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2617
+Problem: MNV9: script variable in a block scope not found by a nested
+ function.
+Solution: Copy the block scope IDs before compiling the function.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.2618
+Problem: MNV9: cannot use a normal list name to store function refs.
+Solution: Allow a lower case name if it is indexed.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2619
+Problem: MNV9: no test for return type of lambda.
+Solution: Add a test.
+Files: src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2620
+Problem: MNV9: Using #{ for a dictionary gives strange errors.
+Solution: Give an error when using #{ for a comment after a command.
+Files: src/mnv9compile.c, src/mnv9script.c, src/proto/mnv9script.pro,
+ src/errors.h, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2621
+Problem: typval2type() cannot handle recursive structures.
+Solution: Use copyID. (closes #7979)
+Files: src/list.c, src/mnv9script.c, src/mnv9type.c,
+ src/proto/mnv9type.pro, src/testdir/test_mnvscript.mnv
+
+Patch 8.2.2622
+Problem: GTK: error when starting up and -geometry is given. (Dominique
+ Pellé)
+Solution: Use another function to get the monitor if the window has not been
+ created yet. (closes #7978)
+Files: src/gui_gtk_x11.c, src/proto/gui_gtk_x11.pro, src/gui_beval.c,
+ src/gui_xim.c
+
+Patch 8.2.2623
+Problem: Some tests fail when run as root.
+Solution: Use CheckNotRoot.
+Files: src/testdir/test_edit.mnv, src/testdir/test_excmd.mnv,
+ src/testdir/test_help.mnv, src/testdir/test_writefile.mnv
+
+Patch 8.2.2624
+Problem: Atom files not recognized.
+Solution: Recognize .atom as XML. (Kivin Locke, closes #7986)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.2625
+Problem: Rss files not recognized.
+Solution: Recognize .rss as XML. (Kivin Locke, closes #7987)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.2626
+Problem: GTK3: error when starting up and -geometry is given. (Dominique
+ Pellé)
+Solution: Use another function to get the monitor if the window has not been
+ created yet. (closes #7978)
+Files: src/gui_gtk_x11.c
+
+Patch 8.2.2627
+Problem: No need to check for BSD after checking for not root.
+Solution: Remove CheckNotBSD. (Ozaki Kiichi, closes #7989)
+Files: src/testdir/test_excmd.mnv, src/testdir/test_help.mnv,
+ src/testdir/check.mnv
+
+Patch 8.2.2628
+Problem: MNV9: #{ can still be used at the script level.
+Solution: Give an error for #{ like in a :def function.
+Files: src/eval.c, src/ex_docmd.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2629
+Problem: MNV9: error for #{{ is not desired.
+Solution: Adjust the checks. (closes #7990)
+Files: src/errors.h, src/mnv9script.c, src/ex_docmd.c,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2630
+Problem: Hard to see where a test gets stuck.
+Solution: Print the executed test function. (Dominique Pellé, closes #7975)
+Files: src/testdir/Makefile
+
+Patch 8.2.2631
+Problem: Commands from winrestcmd() do not always work properly. (Leonid V.
+ Fedorenchik)
+Solution: Repeat the size commands twice. (closes #7988)
+Files: src/evalwindow.c, src/testdir/test_window_cmd.mnv
+
+Patch 8.2.2632
+Problem: Not all command line arguments are tested.
+Solution: Add tests for -D and -serverlist. (Dominique Pellé, closes #7992)
+Files: src/testdir/test_clientserver.mnv, src/testdir/test_startup.mnv
+
+Patch 8.2.2633
+Problem: Multi-byte 'fillchars' for folding do not show properly.
+Solution: Handle multi-byte characters correctly. (Yegappan Lakshmanan,
+ closes #7983, closes #7955)
+Files: src/screen.c, src/testdir/test_fold.mnv
+
+Patch 8.2.2634
+Problem: 'tagfunc' does not indicate using a pattern.
+Solution: Add the "r" flag. (Andy Massimino, closes #7982)
+Files: runtime/doc/tagsrch.txt, src/tag.c, src/testdir/test_tagfunc.mnv
+
+Patch 8.2.2635
+Problem: MNV9: cannot define an inline function.
+Solution: Make an inline function mostly work.
+Files: src/userfunc.c, src/errors.h, src/mnv9compile.c, src/misc2.c,
+ src/proto/mnv9compile.pro, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2636 (after 8.2.2635)
+Problem: Memory leak when compiling inline function.
+Solution: Free the prefetched line.
+Files: src/userfunc.c, src/mnv9compile.c, src/structs.h, src/globals.h,
+ src/eval.c
+
+Patch 8.2.2637
+Problem: prop_remove() causes a redraw even when nothing changed.
+Solution: Only redraw if a property was removed. (Dominique Pellé)
+Files: src/textprop.c
+
+Patch 8.2.2638
+Problem: Cannot write a message to the terminal from the GUI.
+Solution: Add :echoconsole and use it in the test runner. (issue #7975)
+Files: runtime/doc/eval.txt, runtime/doc/index.txt, src/ex_cmds.h,
+ src/ex_cmdidxs.h, src/eval.c, src/ui.c, src/proto/ui.pro,
+ src/term.c, src/testdir/runtest.mnv
+
+Patch 8.2.2639 (after 8.2.2638)
+Problem: Build failure when fsync() is not available.
+Solution: Add #ifdef.
+Files: src/ui.c
+
+Patch 8.2.2640
+Problem: screenstring() returns non-existing composing characters.
+Solution: Only use composing characters if there is a base character.
+Files: src/evalfunc.c, src/testdir/test_listchars.mnv
+
+Patch 8.2.2641
+Problem: Display test fails because of lacking redraw.
+Solution: Add a redraw command.
+Files: src/testdir/test_display.mnv
+
+Patch 8.2.2642
+Problem: MNV9: no clear error for wrong inline function.
+Solution: Check for something following the "{".
+Files: src/userfunc.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2643
+Problem: Various code not covered by tests.
+Solution: Add a few more test. (Yegappan Lakshmanan, closes #7995)
+Files: src/testdir/test_edit.mnv, src/testdir/test_functions.mnv,
+ src/testdir/test_mapping.mnv, src/testdir/test_termcodes.mnv,
+ src/testdir/test_undo.mnv
+
+Patch 8.2.2644
+Problem: prop_clear() causes a screen update even when nothing changed.
+Solution: Only redraw when a property was cleared. (Dominique Pellé)
+Files: src/textprop.c
+
+Patch 8.2.2645
+Problem: Using inline function is not properly tested.
+Solution: Add test cases, esp. for errors. Minor code improvements.
+Files: src/userfunc.c, src/errors.h, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2646
+Problem: MNV9: error for not using string doesn't mention argument.
+Solution: Add argument number.
+Files: src/filepath.c, src/typval.c, src/proto/typval.pro, src/errors.h,
+ src/mbyte.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.2647
+Problem: Terminal test sometimes hangs.
+Solution: Wait for the shell to display a prompt.
+Files: src/testdir/test_terminal.mnv
+
+Patch 8.2.2648
+Problem: Terminal resize test sometimes hangs.
+Solution: Wait for the shell to display a prompt and other output.
+Files: src/testdir/test_terminal2.mnv
+
+Patch 8.2.2649
+Problem: MNV9: some wincmd arguments cause a white space error.
+Solution: Insert a space before the count. (closes #8001)
+Files: src/window.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2650
+Problem: MNV9: command modifiers not handled in nested function.
+Solution: Keep function-local info in a structure and save it on the stack.
+Files: src/mnv9execute.c, src/mnv9.h, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2651
+Problem: MNV9: restoring command modifiers happens after jump.
+Solution: Move the restore instruction to before the jump. (closes #8006)
+ Also handle for and while.
+Files: src/mnv9compile.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.2652
+Problem: MNV9: can use command modifier without an effect.
+Solution: Give an error for a misplaced command modifier. Fix error message
+ number.
+Files: src/mnv9compile.c, src/ex_docmd.c, src/proto/ex_docmd.pro,
+ src/ex_eval.c, src/testdir/test_mnv9_cmd.mnv,
+ src/testdir/test_mnv9_builtin.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.2653
+Problem: Build failure.
+Solution: Add missing changes.
+Files: src/errors.h
+
+Patch 8.2.2654
+Problem: MNV9: getting a character from a string can be slow.
+Solution: Avoid a function call to get the character byte size. (#8000)
+Files: src/mnv9execute.mnv
+
+Patch 8.2.2655
+Problem: The -w command line argument doesn't work.
+Solution: Don't set 'window' when set with the -w argument. (closes #8011)
+Files: src/term.c, src/testdir/test_startup.mnv
+
+Patch 8.2.2656
+Problem: Some command line arguments and regexp errors not tested.
+Solution: Add a few test cases. (Dominique Pellé, closes #8013)
+Files: src/testdir/test_regexp_latin.mnv, src/testdir/test_startup.mnv
+
+Patch 8.2.2657
+Problem: MNV9: error message for declaring variable in for loop.
+Solution: Clear variables when entering block again. (closes #8012)
+Files: src/ex_eval.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2658
+Problem: :for cannot loop over a string.
+Solution: Accept a string argument and iterate over its characters.
+Files: runtime/doc/eval.txt, src/eval.c, src/mnv9compile.c,
+ src/mnv9execute.c, src/errors.h, src/testdir/test_mnvscript.mnv,
+ src/testdir/test_mnv9_disassemble.mnv,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2659 (after 8.2.2658)
+Problem: Eval test fails because for loop on string works.
+Solution: Check looping over function reference fails.
+Files: src/testdir/test_eval_stuff.mnv
+
+Patch 8.2.2660
+Problem: MNV9: no error for declaration with trailing text.
+Solution: Give an error. (closes #8014)
+Files: src/evalvars.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2661
+Problem: Leaking memory when looping over a string.
+Solution: Free the memory.
+Files: src/eval.c
+
+Patch 8.2.2662
+Problem: There is no way to avoid some escape sequences.
+Solution: Suppress escape sequences when the --not-a-term argument is used.
+ (Gary Johnson)
+Files: src/main.c, src/os_unix.c, src/testdir/test_startup.mnv
+
+Patch 8.2.2663
+Problem: MNV9: leaking memory when inline function has an error.
+Solution: Free the partially allocated function.
+Files: src/userfunc.c
+
+Patch 8.2.2664
+Problem: MNV9: not enough function arguments checked for string.
+Solution: Check in balloon functions. Refactor function arguments.
+Files: src/typval.c, src/proto/typval.pro, src/filepath.c,
+ src/evalfunc.c, src/mbyte.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.2665 (after 8.2.2664)
+Problem: Test failures.
+Solution: Check more specific feature. Add missing change.
+Files: src/testdir/test_mnv9_builtin.mnv, src/evalbuffer.c
+
+Patch 8.2.2666
+Problem: MNV9: not enough function arguments checked for string.
+Solution: Check in ch_logfile(), char2nr() and others.
+Files: src/channel.c, src/evalfunc.c, src/filepath.c, src/eval.c,
+ src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.2667
+Problem: prop_find() cannot find item matching both id and type.
+Solution: Add the "both" argument. (Naohiro Ono, closes #8019)
+Files: runtime/doc/textprop.txt, src/testdir/test_textprop.mnv,
+ src/textprop.c
+
+Patch 8.2.2668
+Problem: MNV9: omitting "call" for "confirm()" does not give an error.
+Solution: Do not recognize a modifier followed by "(".
+Files: src/ex_docmd.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.2669
+Problem: Command line completion does not work after "mnv9".
+Solution: Include the "9". (Naohiro Ono, closes #8025)
+Files: src/cmdexpand.c, src/ex_docmd.c, src/testdir/test_cmdline.mnv
+
+Patch 8.2.2670
+Problem: MNV9: error for append(0, text).
+Solution: Check for negative number. (closes #8022)
+Files: src/typval.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.2671 (after 8.2.2670)
+Problem: Error for line number in legacy script.
+Solution: Check for number type.
+Files: src/typval.c
+
+Patch 8.2.2672
+Problem: MNV9: cannot use :lockvar and :unlockvar in compiled script.
+Solution: Implement locking support.
+Files: src/mnv9compile.c, src/errors.h, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2673
+Problem: MNV9: script-local funcref can have lower case name.
+Solution: Require an upper case name.
+Files: src/evalvars.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2674
+Problem: Motif: cancelling the font dialog resets the font.
+Solution: When no font is selected to not change the font. (closes #7825,
+ closes #8035) Fix compiler warnings.
+Files: src/gui_x11.c, src/gui_motif.c
+
+Patch 8.2.2675
+Problem: Directory change in a terminal window shell is not followed.
+Solution: Add the 'autoshelldir' option. (closes #6290)
+Files: runtime/doc/options.txt, runtime/doc/quickref.txt,
+ runtime/optwin.mnv, src/charset.c, src/feature.h, src/option.h,
+ src/optiondefs.h, src/terminal.c, src/testdir/check.mnv,
+ src/testdir/test_terminal3.mnv
+
+Patch 8.2.2676
+Problem: Missing error message.
+Solution: Add new error message.
+Files: src/errors.h
+
+Patch 8.2.2677
+Problem: MNV9: cannot use only some of the default arguments.
+Solution: Use v:none to use default argument value. Remove
+ uf_def_arg_idx[], use JUMP_IF_ARG_SET. (closes #6504)
+Files: runtime/doc/mnv9.txt, src/mnv9compile.c, src/mnv9execute.c,
+ src/userfunc.c, src/structs.h, src/mnv9.h,
+ src/testdir/test_mnv9_disassemble.mnv,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2678
+Problem: Test for 'autoshelldir' does not reset the option.
+Solution: Reset the option after testing.
+Files: src/testdir/test_terminal3.mnv
+
+Patch 8.2.2679
+Problem: Winbar drawn over status line for non-current window with winbar
+ if frame is zero height. (Leonid V. Fedorenchik)
+Solution: Do not draw the window if the frame height is zero. (closes #8037)
+Files: src/drawscreen.c, src/testdir/test_winbar.mnv,
+ src/testdir/dumps/Test_winbar_not_visible.dump
+
+Patch 8.2.2680
+Problem: MNV9: problem defining a script variable from legacy function.
+Solution: Check if the script is MNV9, not the current syntax.
+ (closes #8032)
+Files: src/mnv9script.c, src/proto/mnv9script.pro, src/evalvars.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2681
+Problem: MNV9: test fails for redeclaring script variable.
+Solution: It's OK to assign to an existing script variable in legacy.
+Files: src/evalvars.c
+
+Patch 8.2.2682
+Problem: MNV9: cannot find Name.Func from "import * as Name". (Alexander
+ Goussas)
+Solution: When no variable found try finding a function. (closes #8045)
+ Check that the function was exported.
+Files: src/mnv9compile.c, src/mnv9script.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2683
+Problem: Build failure without the +eval feature.
+Solution: Add #ifdef.
+Files: src/mnv9script.c
+
+Patch 8.2.2684
+Problem: Not enough folding code is tested.
+Solution: Add more test cases. (Yegappan Lakshmanan, closes #8046)
+Files: src/testdir/test_fold.mnv, src/testdir/test_mksession.mnv,
+ src/testdir/test_source.mnv
+
+Patch 8.2.2685 (after 8.2.2152)
+Problem: Custom statusline not drawn correctly with WinBar.
+Solution: Also adjust the column for the custom status line. (Yee Cheng
+ Chin, closes #8047)
+Files: src/drawscreen.c, src/proto/drawscreen.pro, src/screen.c,
+ src/testdir/dumps/Test_winbar_not_visible_custom_statusline.dump,
+ src/testdir/test_winbar.mnv
+
+Patch 8.2.2686
+Problem: Status line is not updated when going to cmdline mode.
+Solution: Redraw status lines if 'statusline' is set and going to status
+ line mode. (based on patch from Justin M. Keyes et al.,
+ closes #8044)
+Files: src/ex_getln.c, src/testdir/test_statusline.mnv,
+ src/testdir/dumps/Test_statusline_mode_1.dump,
+ src/testdir/dumps/Test_statusline_mode_2.dump
+
+Patch 8.2.2687
+Problem: MNV9: cannot use "const" for global variable in :def function.
+Solution: Do allow using :const for a global variable. (closes #8030)
+Files: src/mnv9compile.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2688
+Problem: MNV9: crash when using s: for script variable.
+Solution: Pass the end pointer. (closes #8045)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2689
+Problem: Tiny build fails.
+Solution: Add #ifdef around use of p_stl.
+Files: src/ex_getln.c
+
+Patch 8.2.2690
+Problem: PowerShell files are not recognized.
+Solution: Recognize several PowerShell extension. (Heath Stewart,
+ closes #8051)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.2691
+Problem: Autoconf may mess up compiler flags.
+Solution: Handle removing FORTIFY_SOURCE a bit better. (Vladimir Lomov,
+ closes #8049)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.2692
+Problem: MNV9: locked script variable can be changed.
+Solution: Check for locked value. (closes #8031)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2693
+Problem: MNV9: locked script variable can be changed.
+Solution: Check legacy script variable for being locked. (issue #8031)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2694
+Problem: When 'matchpairs' is empty every character beeps. (Marco Hinz)
+Solution: Bail out when no character in 'matchpairs' was found.
+ (closes #8053) Add assert_nobeep().
+Files: runtime/doc/testing.txt, runtime/doc/eval.txt, src/search.c,
+ src/testing.c, src/proto/testing.pro, src/evalfunc.c,
+ src/testdir/test_textformat.mnv
+
+Patch 8.2.2695
+Problem: Cursor position reset with nested autocommands.
+Solution: Only check and reset line numbers for not nested autocommands.
+ (closes #5820)
+Files: src/autocmd.c, src/testdir/test_terminal.mnv
+
+Patch 8.2.2696
+Problem: Lua test fails with Lua 5.4.3 and later.
+Solution: Check for different error messages. (Yegappan Lakshmanan,
+ closes #8050)
+Files: src/testdir/test_lua.mnv
+
+Patch 8.2.2697
+Problem: Function list test fails.
+Solution: Add missing function. (Yegappan Lakshmanan)
+Files: runtime/doc/usr_41.txt
+
+Patch 8.2.2698 (after 8.2.2696)
+Problem: Lua test fails on MS-Windows.
+Solution: Fall back to old method if "lua -v" doesn't work.
+Files: src/testdir/test_lua.mnv
+
+Patch 8.2.2699
+Problem: Lua test fails.
+Solution: Fix condition. (Yegappan Lakshmanan, closes #8060)
+Files: src/testdir/test_lua.mnv
+
+Patch 8.2.2700
+Problem: Nested autocmd test fails sometimes.
+Solution: Wait for the job to finish.
+Files: src/testdir/test_terminal.mnv
+
+Patch 8.2.2701
+Problem: Order of removing FORTIFY_SOURCE is wrong.
+Solution: Use the more specific pattern first.
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.2702
+Problem: Compiler completion test fails when more scripts are added.
+Solution: Add a more generic pattern.
+Files: src/testdir/test_compiler.mnv
+
+Patch 8.2.2703
+Problem: MNV9: memory leak when failing on locked variable.
+Solution: Free the memory.
+Files: src/mnv9execute.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2704
+Problem: Adding a lot of completions can be a bit slow.
+Solution: Use fast_breakcheck() instead of ui_breakcheck() when adding a
+ list of completions. (Ben Jackson, closes #8061)
+Files: src/insexpand.c
+
+Patch 8.2.2705
+Problem: MNV9: misleading reported line number for wrong type.
+Solution: Remember and use the line number at the start. (closes #8059)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2706
+Problem: MNV9: wrong line number reported for boolean operator.
+Solution: Use the line number before skipping over line break.
+ (closes #8058)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2707 (after 8.2.2704)
+Problem: Adding a lot of completions can still be a bit slow.
+Solution: Add the check for CP_FAST. (Ben Jackson)
+Files: src/insexpand.c
+
+Patch 8.2.2708
+Problem: Test sometimes fails waiting for shell in terminal.
+Solution: Use WaitForAssert() so we can see the actual job status. Use
+ Run_shell_in_terminal().
+Files: src/testdir/term_util.mnv, src/testdir/test_mksession.mnv
+
+Patch 8.2.2709
+Problem: The GTK GUI has a gap next to the scrollbar.
+Solution: Calculate the scrollbar padding for GTK. (closes #8027)
+Files: src/gui_gtk.c
+
+Patch 8.2.2710
+Problem: MNV9: not all tests cover script and :def function.
+Solution: Run tests in both if possible. Fix differences.
+Files: src/eval.c, src/mnv9compile.c, src/mnv9execute.c,
+ src/testdir/mnv9.mnv, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2711
+Problem: "gj" in a closed fold does not move out of the fold. (Marco Hinz)
+Solution: Add a check for being in a closed fold. (closes #8062)
+Files: src/normal.c, src/testdir/test_fold.mnv
+
+Patch 8.2.2712
+Problem: Memory leak when adding to a blob fails.
+Solution: Clear the second typval before returning.
+Files: src/eval.c
+
+Patch 8.2.2713
+Problem: Folding code not sufficiently tested.
+Solution: Add a few more test cases. (Yegappan Lakshmanan, closes #8064)
+Files: src/testdir/test_fold.mnv
+
+Patch 8.2.2714
+Problem: Filetype pattern ending in star is too far up.
+Solution: Move down to where patterns ending in star belong. (closes #8065)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.2715
+Problem: MNV9: tests fail without the channel feature. (Dominique Pellé)
+Solution: Check for the channel feature. (closes #8063)
+Files: src/testdir/test_mnv9_builtin.mnv, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2716
+Problem: The equivalent class regexp is missing some characters.
+Solution: Update the list of equivalent characters. (Dominique Pellé,
+ closes #8029)
+Files: src/regexp_bt.c, src/regexp_nfa.c,
+ src/testdir/test_regexp_utf8.mnv
+
+Patch 8.2.2717
+Problem: GTK menu items don't show a tooltip.
+Solution: Add a callback to show the tooltip. (Leonid V. Fedorenchik,
+ closes #8067, closes #7810)
+Files: src/gui_gtk.c
+
+Patch 8.2.2718
+Problem: MNV9: no explicit test for using a global function without the g:
+ prefix.
+Solution: Add a test case.
+Files: src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2719
+Problem: MNV9: appending to dict item doesn't work in a :def function.
+Solution: Implement assignment with operator on indexed item.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2720
+Problem: GTK menu tooltip moves the cursor.
+Solution: Position the cursor after displaying the tooltip. Do not show the
+ tooltip when editing the command line.
+Files: src/gui_gtk.c
+
+Patch 8.2.2721
+Problem: MNV9: cannot have a linebreak inside a lambda.
+Solution: Compile the expression before the arguments.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2722
+Problem: MNV9: crash when using LHS with double index.
+Solution: Handle lhs_dest which is "dest_expr". (closes #8068)
+ Fix confusing error message for missing dict item.
+Files: src/mnv9compile.c, src/eval.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2723 (after 8.2.2722)
+Problem: Assignment test fails.
+Solution: Adjust error number.
+Files: src/testdir/test_let.mnv
+
+Patch 8.2.2724 (after 8.2.2722)
+Problem: MNV9: concatenating to list in dict not tested.
+Solution: Add a test. (issue #8068)
+Files: src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2725
+Problem: MNV9: message about compiling is wrong when using try/catch.
+Solution: Store the compiling flag with the message. (closes #8071)
+Files: src/ex_docmd.c, src/ex_eval.c, src/structs.h,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2726
+Problem: Confusing error message with white space before comma in the
+ arguments of a function declaration.
+Solution: Give a specific error message. (closes #2235)
+Files: src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2727 (after 8.2.2726)
+Problem: Function test fails.
+Solution: Adjust expected error number.
+Files: src/testdir/test_user_func.mnv
+
+Patch 8.2.2728
+Problem: Special key names don't work if 'isident' is cleared.
+Solution: Add mnv_isNormalIDc() and use it for special key names.
+ (closes #2389)
+Files: src/charset.c, src/proto/charset.pro, src/misc2.c,
+ src/testdir/test_mapping.mnv
+
+Patch 8.2.2729
+Problem: MNV9: wrong error message for referring to legacy script variable.
+Solution: Do allow referring to a variable in legacy script without "s:" if
+ it exists at compile time. (closes #8076)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2730
+Problem: Coverity complains about not restoring character.
+Solution: Also restore the character in case of an error.
+Files: src/mnv9compile.c
+
+Patch 8.2.2731
+Problem: Mac: SF symbols are not displayed properly.
+Solution: Add custom range to list of double-width characters. (Yee Cheng
+ Chin, closes #8077)
+Files: src/mbyte.c
+
+Patch 8.2.2732
+Problem: Prompt for s///c in Ex mode can be wrong.
+Solution: Position the cursor before showing the prompt. (closes #8073)
+Files: src/ex_cmds.c, src/testdir/test_ex_mode.mnv
+
+Patch 8.2.2733
+Problem: Detecting Lua version is not reliable.
+Solution: Add "mnv.lua_version". (Ozaki Kiichi, closes #8080)
+Files: runtime/doc/if_lua.txt, ci/if_ver-1.mnv, src/if_lua.c,
+ src/testdir/test_lua.mnv
+
+Patch 8.2.2734
+Problem: MNV9: cannot use legacy script-local var from :def function.
+Solution: Do not insist on using "s:" prefix. (closes #8076)
+Files: src/mnv9compile.c, src/proto/mnv9compile.pro,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2735
+Problem: MNV9: function reference found with prefix, not without.
+Solution: Also find function reference without prefix.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2736
+Problem: MNV9: for loop over string is a bit slow.
+Solution: Avoid using strlen().
+Files: src/mnv9execute.c
+
+Patch 8.2.2737
+Problem: Status line not updated when local 'statusline' option set.
+Solution: Check the 'statusline' option of each window.
+Files: src/ex_getln.c, src/testdir/test_statusline.mnv,
+ src/testdir/dumps/Test_statusline_mode_1.dump,
+ src/testdir/dumps/Test_statusline_mode_2.dump
+
+Patch 8.2.2738
+Problem: Extending a list with itself can give wrong result.
+Solution: Remember the item before where the insertion happens and skip to
+ after the already inserted items. (closes #1112)
+Files: src/list.c, src/testdir/test_listdict.mnv
+
+Patch 8.2.2739
+Problem: MNV9: a lambda accepts too many arguments at the script level.
+Solution: Do not set uf_varargs in MNV9 script.
+Files: src/userfunc.c, src/testdir/test_mnv9_func.mnv,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2740
+Problem: MNV9: lambda with varargs doesn't work.
+Solution: Make "...name" work. Require type to be a list.
+Files: src/userfunc.c, src/mnv9compile.c, src/mnv9execute.c,
+ src/errors.h, src/testdir/test_mnv9_func.mnv,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2741
+Problem: MNV9: Partial call does not check right arguments.
+Solution: Adjust the offset for whether the partial is before or after the
+ arguments. (closes #8091)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2742
+Problem: MNV9: when compiling a function fails it is cleared.
+Solution: Keep the function lines, prevent execution with a different
+ status. (closes #8093)
+Files: src/mnv9compile.c, src/structs.h, src/mnv9execute.c,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2743
+Problem: MNV9: function state stuck when compiling with ":silent!".
+Solution: Check for uf_def_status to be UF_COMPILING.
+Files: src/mnv9compile.c, src/message.c, src/globals.h,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2744
+Problem: MNV9: no way to explicitly ignore an argument.
+Solution: Use the underscore as the name for an ignored argument.
+Files: runtime/doc/mnv9.txt, src/mnv9compile.c, src/eval.c,
+ src/evalvars.c, src/errors.h, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2745 (after 8.2.2744)
+Problem: MNV9: missing part of the argument change.
+Solution: Add missing changes.
+Files: src/userfunc.c
+
+Patch 8.2.2746 (after 8.2.2745)
+Problem: Check for duplicate arguments does not work.
+Solution: Correct condition.
+Files: src/userfunc.c
+
+Patch 8.2.2747
+Problem: MNV9: not always an error for too many function arguments.
+Solution: Check for getting too many arguments.
+Files: src/mnv9execute.c, src/testdir/test_mnv9_func.mnv,
+ src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.2748
+Problem: MNV9: memory leak when calling :def function fails.
+Solution: Jump to failed_early instead of returning.
+Files: src/mnv9execute.c
+
+Patch 8.2.2749
+Problem: MNV9: test for error can be a bit flaky.
+Solution: Increase the wait time a bit.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2750
+Problem: MNV9: error for using underscore in nested function.
+Solution: Do not consider "_" already defined. (closes #8096)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2751
+Problem: Coverity warns for using NULL pointer.
+Solution: Check for NULL in calling function.
+Files: src/userfunc.c
+
+Patch 8.2.2752
+problem: coverity reports unreachable code.
+Solution: Remove check for positive index.
+Files: src/typval.c
+
+Patch 8.2.2753
+Problem: MNV9: cannot ignore an item in assignment unpack.
+Solution: Allow using an underscore.
+Files: runtime/doc/mnv9.txt, src/mnv.h, src/evalvars.c, src/eval.c,
+ src/mnv9compile.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2754
+Problem: :sleep! does not always hide the cursor.
+Solution: Add the cursor_is_asleep flag. (Jeremy Lerner, closes #8097,
+ closes #7998)
+Files: src/drawscreen.c, src/ex_docmd.c, src/gui.c, src/proto/term.pro,
+ src/term.c
+
+Patch 8.2.2755
+Problem: MNV9: no error for using a number in a condition.
+Solution: Also use ISN_COND2BOOL if the type is t_number_bool.
+ (closes #7644)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.2756
+Problem: MNV9: blob index and slice not implemented yet.
+Solution: Implement blob index and slice.
+Files: src/mnv9compile.c, src/mnv9.h, src/mnv9execute.c, src/eval.c,
+ src/blob.c, src/proto/blob.pro, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2757
+Problem: MNV9: blob tests for legacy and MNV9 script are separate.
+Solution: Add CheckLegacyAndMNV9Success(). Make blob index assign work.
+Files: src/mnv9compile.c, src/mnv9.h, src/mnv9execute.c, src/errors.h,
+ src/blob.c, src/proto/blob.pro, src/eval.c, src/ex_docmd.c,
+ src/testdir/mnv9.mnv, src/testdir/test_blob.mnv
+
+Patch 8.2.2758
+Problem: MNV9: wrong line number for autoload function with wrong name.
+Solution: Set and restore SOURCING_LNUM. (closes #8100)
+Files: src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2759
+Problem: MNV9: for loop infers type of loop variable.
+Solution: Do not get the member type. (closes #8102)
+Files: src/mnv9type.c, src/proto/mnv9type.pro, src/list.c,
+ src/mnv9script.c, src/proto/mnv9script.pro, src/mnv.h,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2760
+Problem: MNV9: no error for changing a for loop variable.
+Solution: Make the loop variable read-only. (issue #8102)
+Files: src/eval.c, src/evalvars.c, src/mnv9compile.c, src/mnv.h,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2761
+Problem: Using "syn include" does not work properly.
+Solution: Don't add current_syn_inc_tag to topgrp. (Jaehwang Jerry Jung,
+ closes #8104)
+Files: src/syntax.c, src/testdir/test_syntax.mnv
+
+Patch 8.2.2762
+Problem: MNV9: function line truncated when compiling.
+Solution: Copy the line before processing it. (closes #8101)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.2763
+Problem: MNV9: cannot use type in for loop unpack at script level.
+Solution: Advance over the type name.
+Files: src/evalvars.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2764
+Problem: Memory leak when default function argument is allocated.
+Solution: Free the expression result.
+Files: src/userfunc.c, src/testdir/test_functions.mnv
+
+Patch 8.2.2765
+Problem: MNV9: not all blob operations work.
+Solution: Run more tests also with MNV9 script and :def functions. Fix what
+ doesn't work.
+Files: src/eval.c, src/blob.c, src/proto/blob.pro, src/mnv9execute.c,
+ src/errors.h, src/testdir/mnv9.mnv, src/testdir/test_blob.mnv
+
+Patch 8.2.2766 (after 8.2.2765)
+Problem: Test failure.
+Solution: Add change to MNV9 compilation error message.
+Files: src/mnv9compile.c
+
+Patch 8.2.2767 (after 8.2.2765)
+Problem: Compiler warning for unused argument.
+Solution: Remove the argument.
+Files: src/blob.c, src/proto/blob.pro, src/mnv9execute.c, src/eval.c
+
+Patch 8.2.2768
+Problem: MNV9: memory leak with blob range error.
+Solution: Jump to end instead of returning.
+Files: src/mnv9compile.c
+
+Patch 8.2.2769
+Problem: Modula-3 config files are not recognized.
+Solution: Add filetype patterns. (Doug Kearns)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.2770
+Problem: MNV9: type of loop variable is not used.
+Solution: Parse and check the variable type. (closes #8107)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2771
+Problem: MNV9: assignment not recognized if declaration was skipped.
+Solution: Also recognized an assignment if the variable does not exist.
+ (closes #8108)
+Files: src/ex_docmd.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2772
+Problem: Problems when restoring 'runtimepath' from a session file.
+Solution: Add the "skiprtp" item in 'sessionoptions'.
+Files: runtime/doc/options.txt, src/session.c, src/optionstr.c,
+ src/option.h, src/mnv.h, src/option.c,
+ src/testdir/test_mksession.mnv
+
+Patch 8.2.2773
+Problem: PSL filetype not recognized.
+Solution: Add a filetype pattern. (Daniel Kho, closes #8117)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.2774
+Problem: MNV9: cannot import an existing name even when using "as".
+Solution: Do not check for an existing name when using "as". (closes #8113)
+Files: src/mnv9script.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2775
+Problem: MNV9: wrong line number used for some commands.
+Solution: For :exe, :echo and the like use the line number of the start of
+ the command. When calling a function set the line number in the
+ script context.
+Files: src/mnv9compile.c, src/mnv9execute.c, src/structs.h,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2776
+Problem: :mksession uses current value of 'splitbelow' and 'splitright'
+ even though "options" is not in 'sessionoptions'. (Maxim Kim)
+Solution: Save and restore the values, instead of setting to the current
+ value. (closes #8119)
+Files: src/session.c, src/testdir/test_mksession.mnv
+
+Patch 8.2.2777
+Problem: MNV9: blob operations not tested in all ways.
+Solution: Run tests with CheckLegacyAndMNV9Success(). Make blob assign with
+ index work.
+Files: src/mnv9compile.c, src/mnv9execute.c, src/errors.h, src/blob.c,
+ src/proto/blob.pro, src/testdir/test_blob.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.2778
+Problem: Problem restoring 'packpath' in session.
+Solution: Let "skiprtp" also apply to 'packpath'.
+Files: runtime/doc/options.txt, src/option.c,
+ src/testdir/test_mksession.mnv
+
+Patch 8.2.2779
+Problem: Memory access error in remove() for blob.
+Solution: Adjust length for memmove().
+Files: src/blob.c
+
+Patch 8.2.2780
+Problem: MNV9: for loop over blob doesn't work.
+Solution: Make it work.
+Files: src/mnv9compile.c, src/mnv9execute.c, src/testdir/test_blob.mnv
+
+Patch 8.2.2781
+Problem: Add() silently skips when adding to null list or blob.
+Solution: Give an error in MNV9 script. Allocate blob when it is NULL like
+ with list and dict.
+Files: src/list.c, src/evalvars.c, src/mnv9execute.c,
+ src/testdir/test_blob.mnv, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.2782
+Problem: MNV9: blob operations not fully tested.
+Solution: Make more blob tests run in MNV9 script. Fix filter(). Make
+ insert() give an error for a null blob, like add().
+Files: src/list.c, src/testdir/test_blob.mnv,
+ src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.2783
+Problem: Duplicate code for setting byte in blob, blob test may fail.
+Solution: Call blob_set_append(). Test sort failure with "N".
+Files: src/eval.c, src/testdir/test_blob.mnv
+
+Patch 8.2.2784
+Problem: MNV9: cannot use \=expr in :substitute.
+Solution: Compile the expression into instructions and execute them when
+ invoked.
+Files: src/mnv9.h, src/mnv9compile.c, src/mnv9execute.c,
+ src/proto/mnv9execute.pro, src/regexp.c, src/ex_cmds.c,
+ src/proto/ex_cmds.pro, src/globals.h,
+ src/testdir/test_mnv9_cmd.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.2785
+Problem: MNV9: cannot redirect to local variable.
+Solution: Compile :redir when redirecting to a variable.
+Files: src/mnv9compile.c, src/mnv9.h, src/mnv9execute.c, src/errors.h,
+ src/evalvars.c, src/proto/evalvars.pro,
+ src/testdir/test_mnv9_cmd.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.2786
+Problem: MNV9: memory leak when using :s with expression.
+Solution: Clean up the instruction list.
+Files: src/mnv9compile.c
+
+Patch 8.2.2787
+Problem: MS-Windows: crash when using :echoconsole.
+Solution: Do not write a NUL when it's already there.
+Files: src/os_win32.c
+
+Patch 8.2.2788
+Problem: Raku is now the only name what once was called perl6.
+Solution: Adjust the filetype detection. (closes #8120)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.2789
+Problem: MNV9: using \=expr in :substitute does not handle jumps.
+Solution: Start with instruction count zero. (closes #8128)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2790 (after 8.2.2788)
+Problem: filetype test fails
+Solution: Also update the scripts detection
+Files: runtime/scripts.mnv
+
+Patch 8.2.2791
+Problem: MNV9: memory leak when using \=expr in :substitute.
+Solution: Do not allocate a new instruction list.
+Files: src/mnv9compile.c
+
+Patch 8.2.2792
+Problem: MNV9: :disas shows instructions for default args but no text.
+Solution: Show the expression test above the default argument instructions.
+ (closes #8129)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.2793
+Problem: MS-Windows: string literals are writable with MSVC.
+Solution: Add the /GF compiler flag. Make mch_write() safer. (Ken Takata,
+ closes #8133)
+Files: src/Make_mvc.mak, src/os_win32.c
+
+Patch 8.2.2794
+Problem: Linux users don't know how to get ncurses.
+Solution: Add the name of the package. (closes #8132)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.2795
+Problem: Coverity warns for not using return value.
+Solution: Check the return value of compiling the substitute expression.
+Files: src/mnv9compile.c
+
+Patch 8.2.2796
+Problem: MNV9: redir to variable does not accept an index.
+Solution: Make the index work.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2797
+Problem: Search highlight disappears in the Visual area.
+Solution: Combine the search attributes. (closes #8134)
+Files: src/drawline.c, src/testdir/test_search.mnv,
+ src/testdir/dumps/Test_hlsearch_visual_1.dump
+
+Patch 8.2.2798
+Problem: MNV9: redir to variable with append does not accept an index.
+Solution: Make the appending work.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2799
+Problem: MNV9: type casts don't fully work at the script level.
+Solution: Implement the missing piece.
+Files: src/eval.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2800
+Problem: After a timer displays text a hit-enter prompt is given.
+Solution: Reset msg_didany and need_wait_return. (closes #8136)
+Files: src/drawscreen.c, src/testdir/test_timers.mnv
+
+Patch 8.2.2801
+Problem: Free Pascal makefile not recognized.
+Solution: Add the fpcmake filetype. (Doug Kearns)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.2802
+Problem: MNV9: illegal memory access.
+Solution: Check for comment before checking for white space. (closes #8142)
+Files: src/eval.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2803
+Problem: Flicker when the popup menu has an info popup.
+Solution: Avoid drawing over the popup when it's going to be redrawn in the
+ same position. (closes #8131) Also avoid redrawing the scrollbar.
+Files: src/popupmenu.c, src/proto/popupmenu.pro, src/drawscreen.c,
+ src/globals.h
+
+Patch 8.2.2804
+Problem: Setting buffer local mapping with mapset() changes global mapping.
+Solution: Only set the local mapping. (closes #8143)
+Files: src/map.c, src/testdir/test_maparg.mnv
+
+Patch 8.2.2805
+Problem: MNV9: cannot use legacy syntax in MNV9 script.
+Solution: Add the :legacy command.
+Files: src/ex_cmds.h, runtime/doc/mnv9.txt, runtime/doc/index.txt
+ src/ex_cmdidxs.h, src/ex_docmd.c, src/structs.h, src/mnv9script.c,
+ src/mnv9compile.c, src/testdir/test_mnv9_func.mnv,
+ src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2806
+Problem: MNV9: using "++nr" as a command might not work.
+Solution: Do not recognize "++" and "--" in a following line as addition or
+ subtraction.
+Files: src/mnv9compile.c, src/ex_docmd.c, src/ex_cmds.h, src/ex_cmdidxs.h,
+ src/mnv9script.c, src/proto/mnv9script.pro, src/eval.c,
+ src/testdir/test_mnv9_assign.mnv, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2807
+Problem: Build fails with tiny features.
+Solution: Use a dummy function for ex_incdec().
+Files: src/ex_docmd.c
+
+Patch 8.2.2808
+Problem: MNV9: increment and decrement not sufficiently tested.
+Solution: Add assertions.
+Files: src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2809
+Problem: MNV9: :def function compilation fails when using :legacy.
+Solution: Reset CMOD_LEGACY when compiling a function. (closes #8137)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2810
+Problem: MNV9: crash when calling a function in a substitute expression.
+Solution: Set the instructions back to the substitute expression
+ instructions. (closes #8148)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2811
+Problem: MNV9: error for missing white space doesn't say where it is
+ missing
+Solution: Mention the command. (closes #8149)
+Files: src/ex_docmd.c, src/errors.h, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2812
+Problem: MNV9: still crash when using substitute expression.
+Solution: Put the instruction list in the stack frame. (closes #8154)
+Files: src/mnv9execute.c, src/mnv9.h, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2813
+Problem: Cannot grep using fuzzy matching.
+Solution: Add the "f" flag to :mnvgrep. (Yegappan Lakshmanan, closes #8152)
+Files: runtime/doc/quickfix.txt, src/ex_cmds.c, src/proto/search.pro,
+ src/quickfix.c, src/search.c, src/mnv.h,
+ src/testdir/test_quickfix.mnv
+
+Patch 8.2.2814 (after 8.2.2812)
+Problem: MNV9: unused variable. (John Marriott)
+Solution: Adjust #ifdef.
+Files: src/mnv9execute.c
+
+Patch 8.2.2815
+Problem: Status line flickers when redrawing popup menu info.
+Solution: Do not redraw the status line when the focus is in the popup
+ window. (issue #8144)
+Files: src/popupmenu.c
+
+Patch 8.2.2816
+Problem: MNV9: comment below expression in lambda causes problems.
+Solution: Use a single space for empty and comment lines. (closes #8156)
+Files: src/eval.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2817
+Problem: MNV9: script sourcing continues after an error.
+Solution: Make an error in any command in "mnv9script" abort sourcing.
+Files: src/ex_docmd.c, src/testdir/test_mnv9_script.mnv,
+ src/testdir/test_mnv9_assign.mnv,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2818
+Problem: No jump added to jumplist when opening terminal in current window.
+Solution: Call setpcmark(). (closes #8158)
+Files: src/terminal.c, src/testdir/test_terminal.mnv
+
+Patch 8.2.2819
+Problem: Finishing an abbreviation with a multi-byte char may not work.
+Solution: Escape K_SPECIAL in the typed character. (closes #8160)
+Files: src/map.c, src/testdir/test_mapping.mnv
+
+Patch 8.2.2820
+Problem: Session file may divide by zero.
+Solution: Avoid writing divide by zero. (closes #8162)
+Files: src/session.c, src/testdir/test_mksession.mnv
+
+Patch 8.2.2821
+Problem: MS-Windows: unnecessarily loading libraries when registering OLE.
+Solution: Skip loading libraries when invoked with "-register".
+Files: src/main.c, src/globals.h, src/os_win32.c
+
+Patch 8.2.2822 (after 8.2.2821)
+Problem: MS-Windows: unnecessarily loading libraries when unregistering OLE.
+Solution: Also skip loading libraries when invoked with "-unregister". Run
+ MNV for README.txt with user privileges.
+Files: src/main.c, nsis/gmnv.nsi, nsis/README.txt
+
+Patch 8.2.2823
+Problem: MS-Windows: launching MNV from installer doesn't open README.
+Solution: Adjust the quotes.
+Files: nsis/gmnv.nsi
+
+Patch 8.2.2824
+Problem: MS-Windows: build failure with MSVC.
+Solution: Adjust the list of distributed files. Add hint about python.
+ Adjust path for reading runtime files.
+Files: Filelist, src/testdir/shared.mnv,
+ src/testdir/test_function_lists.mnv
+
+Patch 8.2.2825
+Problem: Code in checkreadonly() not fully tested.
+Solution: Add more tests. (Dominique Pellé, closes #8169)
+Files: src/testdir/test_excmd.mnv
+
+Patch 8.2.2826
+Problem: Compiler warnings for int to size_t conversion. (Randall W.
+ Morris)
+Solution: Add type casts.
+Files: src/map.c, src/quickfix.c
+
+Patch 8.2.2827
+Problem: Test file was not deleted.
+Solution: Uncomment the delete() call. (Dominique Pellé, closes #8172)
+Files: src/testdir/test_mksession.mnv
+
+Patch 8.2.2828
+Problem: Coverity complains about not checking the rename() return value.
+Solution: Add "(void)", can't do anything in case of a failure.
+Files: src/fileio.c
+
+Patch 8.2.2829
+Problem: Some comments are not correct or clear.
+Solution: Adjust the comments. Add test for cursor position.
+Files: src/regexp_bt.c, src/regexp_nfa.c,
+ src/testdir/test_exec_while_if.mnv,
+ src/testdir/test_substitute.mnv
+
+Patch 8.2.2830
+Problem: Terminal colors are not updated when 'background' is set.
+Solution: Call term_update_colors() for all terminals. (Marcin Szamotulski,
+ closes #8171, closes #8150)
+Files: src/terminal.c, src/proto/terminal.pro, src/optionstr.c
+
+Patch 8.2.2831
+Problem: MNV9: expandcmd() not tested.
+Solution: Add a test.
+Files: src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.2832
+Problem: Operator cancelled by moving mouse when using popup. (Sergey
+ Vlasov)
+Solution: Do not trigger an operator for a mouse move events. (closes #8176)
+Files: src/normal.c
+
+Patch 8.2.2833
+Problem: Two key command cancelled by moving mouse when using popup.
+ (Sergey Vlasov)
+Solution: Ignore K_MOUSEMOVE in plain_vgetc().
+Files: src/getchar.c
+
+Patch 8.2.2834
+Problem: MNV9: :cexpr does not work with local variables.
+Solution: Compile :cexpr.
+Files: src/mnv9compile.c, src/mnv9.h, src/mnv9execute.c, src/quickfix.c,
+ src/proto/quickfix.pro, src/testdir/test_quickfix.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.2835 (after 8.2.2834)
+Problem: MNV9: leaking memory in :cexpr.
+Solution: Also free the command line copy.
+Files: src/mnv9compile.c
+
+Patch 8.2.2836 (after 8.2.2834)
+Problem: Build failure without the +quickfix feature. (John Marriott)
+Solution: Add #ifdef.
+Files: src/mnv9compile.c, src/mnv9execute.c, src/tag.c
+
+Patch 8.2.2837
+Problem: Various code lines not covered by tests.
+Solution: Add test cases. (Dominique Pellé, closes #8178)
+Files: src/testdir/test_excmd.mnv, src/testdir/test_functions.mnv,
+ src/testdir/test_options.mnv, src/testdir/test_startup.mnv,
+ src/testdir/test_syntax.mnv, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2838
+Problem: File extension .wrap not recognized.
+Solution: Use dosini filetype for .wrap files. (Liam Beguin, closes #8177)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.2839
+Problem: Default redirection missing "ash" and "dash".
+Solution: Recognize "ash" and "dash". (Natanael Copa, closes #8180)
+Files: runtime/doc/options.txt, src/option.c
+
+Patch 8.2.2840
+Problem: MNV9: member operation not fully tested.
+Solution: Add a few tests.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2841
+Problem: MS-Windows: cursor in wrong position when 'lazyredraw' and
+ 'statusline' are set.
+Solution: Call compute_cmdrow(). (closes #8170, closes #8184)
+Files: src/os_win32.c
+
+Patch 8.2.2842
+Problem: MNV9: skip argument to searchpair() is not compiled.
+Solution: Add VAR_INSTR.
+Files: src/structs.h, src/mnv9.h, src/mnv9compile.c, src/mnv9execute.c,
+ src/proto/mnv9execute.pro, src/eval.c, src/evalfunc.c, src/mnv.h,
+ src/evalvars.c, src/typval.c, src/mnv9type.c, src/testing.c,
+ src/mnvinfo.c, src/if_py_both.h, src/json.c,
+ src/testdir/test_mnv9_disassemble.mnv,
+ src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.2843 (after 8.2.2842)
+Problem: MNV9: skip argument to searchpairpos() is not compiled.
+Solution: Handle like searchpair(). Also for search() and searchpos().
+Files: src/mnv9compile.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.2844
+Problem: MNV9: memory leak when using searchpair().
+Solution: Free the v_instr field.
+Files: src/typval.c
+
+Patch 8.2.2845
+Problem: MS-Windows: warning for signed/unsigned comparison.
+Solution: Add type cast.
+Files: src/terminal.c
+
+Patch 8.2.2846
+Problem: MNV9: "echo Func()" does not give an error for a function without
+ a return value.
+Solution: Give an error. Be more specific about why a value is invalid.
+Files: src/globals.h, src/errors.h, src/eval.c, src/evalfunc.c,
+ src/typval.c, src/mnv9compile.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2847
+Problem: Perl not tested sufficiently.
+Solution: Add test. Also test W17. (Dominique Pellé, closes #8193)
+Files: src/testdir/test_arabic.mnv, src/testdir/test_perl.mnv
+
+Patch 8.2.2848
+Problem: Crash when calling partial.
+Solution: Check for NULL pointer. (Dominique Pellé, closes #8202)
+Files: src/eval.c, src/evalfunc.c, src/testdir/test_functions.mnv,
+ src/testdir/test_listdict.mnv
+
+Patch 8.2.2849
+Problem: Bufwrite not sufficiently tested.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #8192)
+Files: src/testdir/test_startup.mnv, src/testdir/test_writefile.mnv
+
+Patch 8.2.2850
+Problem: Recalling commands from history is not tested.
+Solution: Add tests. (closes #8194)
+Files: src/testdir/test_cmdline.mnv
+
+Patch 8.2.2851
+Problem: Using <Cmd> mapping on the command line triggers CmdlineChanged.
+ (Naohiro Ono)
+Solution: Jump to cmdline_not_changed if the command line didn't change.
+ (closes #8208)
+Files: src/ex_getln.c, src/testdir/test_cmdline.mnv
+
+Patch 8.2.2852
+Problem: Configure can add --as-needed a second time.
+Solution: Only add --as-needed if not already there. (Natanael Copa,
+ closes #8189, closes #8181)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.2853 (after 8.2.2851)
+Problem: Window is not updated after using <Cmd> mapping.
+Solution: So jump to cmdline_changed but skip autocommand.
+Files: src/ex_getln.c
+
+Patch 8.2.2854
+Problem: Custom statusline cannot contain % items.
+Solution: Add "%{% expr %}". (closes #8190)
+Files: runtime/doc/options.txt, src/buffer.c, src/optionstr.c,
+ src/testdir/test_statusline.mnv
+
+Patch 8.2.2855
+Problem: White space after "->" does not give E274.
+Solution: Do not skip white space in legacy script. (closes #8212)
+Files: src/eval.c, src/testdir/test_method.mnv
+
+Patch 8.2.2856
+Problem: Get readonly error for device that can't be written to.
+Solution: Check for being able to write first. (closes #8205)
+Files: src/ex_cmds.c, src/testdir/test_writefile.mnv
+
+Patch 8.2.2857
+Problem: MNV9: exception in ISN_INSTR caught at wrong level.
+Solution: Set the starting trylevel in exec_instructions(). (closes #8214)
+Files: src/mnv9compile.c, src/mnv9execute.c, src/globals.h,
+ src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.2858 (after 8.2.2857)
+Problem: Test fails because of changed error message.
+Solution: Adjust the expected error message.
+Files: src/testdir/test_ex_mode.mnv
+
+Patch 8.2.2859 (after 8.2.2857)
+Problem: Tcl test fails because of changed error message.
+Solution: Adjust the expected error message.
+Files: src/testdir/test_tcl.mnv
+
+Patch 8.2.2860
+Problem: Adding a text property causes the whole window to be redrawn.
+Solution: Use changed_lines_buf() to only redraw the affected lines.
+Files: src/change.c, src/proto/change.pro, src/textprop.c
+
+Patch 8.2.2861
+Problem: MNV9: "legacy return" is not recognized as a return statement.
+Solution: Specifically check for a return command. (closes #8213)
+Files: src/mnv9compile.c, src/mnv9execute.c, src/mnv9.h,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2862
+Problem: Removing a text property causes the whole window to be redrawn.
+Solution: Use changed_lines_buf() to only redraw the affected lines.
+Files: src/textprop.c
+
+Patch 8.2.2863 (after 8.2.2862)
+Problem: Removing a text property does not redraw optimally.
+Solution: Only redraw the lines that mithg actually have been changed.
+Files: src/textprop.c
+
+Patch 8.2.2864
+Problem: MNV9: crash when using inline function.
+Solution: Check for NULL pointer. Make using inline function work inside
+ lambda. (closes #8217)
+Files: src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2865 (after 8.2.2864)
+Problem: Skipping over function body fails.
+Solution: Do not define the function when skipping.
+Files: src/userfunc.c
+
+Patch 8.2.2866
+Problem: MNV9: memory leak when using inline function.
+Solution: Remember what strings to free.
+Files: src/userfunc.c, src/structs.h, src/eval.c
+
+Patch 8.2.2867 (after 8.2.2866)
+Problem: Build failure.
+Solution: Add missing part of the change.
+Files: src/globals.h
+
+Patch 8.2.2868
+Problem: MNV9: When executing a compiled expression the trylevel at start
+ is changed but not restored. (closes #8214)
+Solution: Restore the trylevel at start.
+Files: src/mnv9execute.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.2869
+Problem: Using unified diff is not tested.
+Solution: Test all cases also with unified diff. (issue #8197)
+Files: src/testdir/test_diffmode.mnv
+
+Patch 8.2.2870
+Problem: CmdlineChange event triggered twice for CTRL-R.
+Solution: Return CMDLINE_NOT_CHANGED from cmdline_insert_reg().
+ (closes #8219)
+Files: src/ex_getln.c, src/testdir/test_cmdline.mnv
+
+Patch 8.2.2871
+Problem: Unnecessary MNV_ISDIGIT() calls, badly indented code.
+Solution: Call skipdigits() on the next character. Improve indenting.
+ (Dominique Pellé, closes #8227)
+Files: src/charset.c, src/evalfunc.c, src/ex_docmd.c, src/json.c,
+ src/ops.c, src/tag.c, src/mnv9compile.c
+
+Patch 8.2.2872
+Problem: Python tests fail without the channel feature.
+Solution: Add a feature check. (Dominique Pellé, closes #8226)
+Files: src/testdir/test_python2.mnv, src/testdir/test_python3.mnv
+
+Patch 8.2.2873
+Problem: Not enough tests for writing buffers.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #8229)
+Files: src/testdir/test_buffer.mnv, src/testdir/test_cmdline.mnv,
+ src/testdir/test_functions.mnv, src/testdir/test_writefile.mnv
+
+Patch 8.2.2874
+Problem: MS-Windows: screen redraws too often.
+Solution: Do not redraw when peeking for a character. (closes #8230,
+ closes #8211)
+Files: src/os_win32.c
+
+Patch 8.2.2875
+Problem: Cancelling inputlist() after a digit does not return zero.
+Solution: Always return zero when cancelling. (closes #8231)
+Files: src/misc1.c, src/testdir/test_functions.mnv
+
+Patch 8.2.2876
+Problem: Configure cannot detect Python 3.10.
+Solution: Use sys.version_info. (closes #8233)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.2877
+Problem: Insufficient tests for popup menu rightleft.
+Solution: Add tests. (Yegappan Lakshmanan, closes #8235)
+Files: src/testdir/test_popup.mnv,
+ src/testdir/dumps/Test_pum_rightleft_01.dump,
+ src/testdir/dumps/Test_pum_rightleft_02.dump,
+ src/testdir/dumps/Test_pum_scrollbar_01.dump,
+ src/testdir/dumps/Test_pum_scrollbar_02.dump
+
+Patch 8.2.2878
+Problem: MNV9: for loop list unpack only allows for one "_".
+Solution: Drop the value when the variable is "_". (closes #8232)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2879
+Problem: File extension .hsig not recognized.
+Solution: Use Haskell filetype for .hsig files. (Marcin Szamotulski,
+ closes #8236)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.2880
+Problem: Unified diff fails if actually used.
+Solution: Invoke :diffupdate in the test. Fix the check for working external
+ diff. (Ghjuvan Lacambre, Christian Brabandt, closes #8197)
+Files: src/diff.c, src/testdir/test_diffmode.mnv
+
+Patch 8.2.2881
+Problem: Various pieces of code not covered by tests.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #8245)
+Files: src/testdir/test_const.mnv, src/testdir/test_functions.mnv,
+ src/testdir/test_python2.mnv, src/testdir/test_python3.mnv,
+ src/testdir/test_user_func.mnv, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2882
+Problem: MNV9: memory leak when lambda has an error.
+Solution: Free the list of argument types on failure.
+Files: src/userfunc.c
+
+Patch 8.2.2883
+Problem: MS-Windows manifest file name is misleading.
+Solution: Rename the file. (closes #8241)
+Files: .gitignore, .hgignore, Filelist, Makefile, src/Make_cyg_ming.mak,
+ src/Make_mvc.mak, src/gmnv.exe.mnf, src/mnv.manifest, src/mnv.rc
+
+Patch 8.2.2884
+Problem: Not enough cscope code is covered by tests.
+Solution: Add a few test cases. (Dominique Pellé, closes #8246)
+Files: src/testdir/test_cscope.mnv
+
+Patch 8.2.2885
+Problem: searching for \%'> does not match linewise end of line. (Tim Chase)
+Solution: Match end of line if column is MAXCOL. (closes #8238)
+Files: src/regexp_nfa.c, src/regexp_bt.c, src/testdir/test_search.mnv
+
+Patch 8.2.2886
+Problem: Various pieces of code not covered by tests.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #8255)
+Files: src/testdir/test_expr.mnv, src/testdir/test_functions.mnv,
+ src/testdir/test_listdict.mnv, src/testdir/test_registers.mnv,
+ src/testdir/test_user_func.mnv, src/testdir/test_mnv9_builtin.mnv,
+ src/testdir/test_mnv9_expr.mnv, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2887
+Problem: Crash when passing null string to fullcommand().
+Solution: Check for NULL pointer. (closes #8256)
+Files: src/ex_docmd.c, src/testdir/test_cmdline.mnv
+
+Patch 8.2.2888
+Problem: MNV9: "k" command recognized in MNV9 script.
+Solution: Do not recognize "k" or "s" and "d" with flags.
+Files: src/ex_docmd.c, src/testdir/test_mnv9_builtin.mnv,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2889
+Problem: Typo and verbose comment in Makefiles.
+Solution: Fix typo. Use @#. (Ken Takata, closes #8252)
+Files: Makefile, src/testdir/Makefile
+
+Patch 8.2.2890
+Problem: Text property duplicated when data block splits.
+Solution: Do not continue text prop from previous line. (closes #8261)
+Files: src/memline.c, src/structs.h, src/testdir/test_textprop.mnv
+
+Patch 8.2.2891
+Problem: Cannot build with Perl 5.34.
+Solution: Add Perl_SvTRUE_common(). (Ozaki Kiichi, closes #8266,
+ closes #8250)
+Files: src/if_perl.xs
+
+Patch 8.2.2892
+Problem: Error message contains random characters.
+Solution: Pass the right pointer to error_white_both(). (closes #8272,
+ closes #8263)
+Files: src/eval.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2893
+Problem: Multi-byte text in popup title shows up wrong.
+Solution: Use the character width instead of the byte length. (Ralf Schandl,
+ closes #8267, closes #8264)
+Files: src/popupwin.c, src/message_test.c, src/testdir/test_popupwin.mnv,
+ src/testdir/dumps/Test_popupwin_multibytetitle.dump
+
+Patch 8.2.2894
+Problem: MS-Windows: using enc_locale() for strftime() might not work.
+Solution: Use wcsftime(). (Ken Takata, closes #8271)
+Files: src/time.c
+
+Patch 8.2.2895
+Problem: MNV9: random characters appear in some error messages.
+Solution: Pass the correct pointer. (closes #8277)
+Files: src/eval.c, src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2896
+Problem: Spellfile functionality not fully tested.
+Solution: Add tests for CHECKCOMPOUNDPATTERN and COMMON. (Dominique Pellé,
+ closes #8270)
+Files: src/testdir/test_spellfile.mnv
+
+Patch 8.2.2897
+Problem: MNV9: can use reserved words at the script level.
+Solution: Check variable names for reserved words. (closes #8253)
+Files: src/mnv9compile.c, src/mnv9script.c, src/proto/mnv9script.pro,
+ src/eval.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2898
+Problem: QuitPre and ExitPre not triggered when GUI window is closed.
+Solution: Call before_quit_autocmds(). (closes #8242)
+Files: src/ex_docmd.c, src/proto/ex_docmd.pro, src/gui.c
+
+Patch 8.2.2899
+Problem: Appveyor script does not detect nmake failure.
+Solution: Explicitly check for executable. (Ken Takata, closes #8281)
+Files: ci/appveyor.bat
+
+Patch 8.2.2900
+Problem: QuitPre is triggered before :wq writes the file, which is
+ different from other commands.
+Solution: Trigger QuitPre after writing the file. (closes #8279)
+Files: src/ex_docmd.c, src/testdir/test_writefile.mnv
+
+Patch 8.2.2901
+Problem: Some operators not fully tested.
+Solution: Add a few test cases. (Yegappan Lakshmanan, closes #8282)
+Files: src/testdir/test_cpoptions.mnv, src/testdir/test_increment.mnv,
+ src/testdir/test_normal.mnv, src/testdir/test_virtualedit.mnv,
+ src/testdir/test_visual.mnv
+
+Patch 8.2.2902
+Problem: Spellfile functionality not fully tested.
+Solution: Add tests for CIRCUMFIX, NOBREAK and others. (Dominique Pellé,
+ closes #8283)
+Files: src/testdir/test_spellfile.mnv
+
+Patch 8.2.2903
+Problem: Cursor position wrong on wrapped line with 'signcolumn'.
+Solution: Don't add space for showbreak twice. (Christian Brabandt,
+ closes #8262)
+Files: src/drawline.c, src/testdir/test_display.mnv
+
+Patch 8.2.2904
+Problem: "g$" causes scroll if half a double width char is visible.
+Solution: Advance to the last fully visible character. (closes #8254)
+Files: src/normal.c, src/testdir/test_normal.mnv
+
+Patch 8.2.2905
+Problem: No error when defaults.mnv cannot be loaded.
+Solution: Add an error message. (Christian Brabandt, closes #8248)
+Files: runtime/doc/starting.txt, src/errors.h, src/main.c,
+ src/testdir/test_startup.mnv
+
+Patch 8.2.2906 (after 8.2.2905)
+Problem: ASAN reports errors for test_startup for unknown reasons.
+Solution: Temporarily disable the new test.
+Files: src/testdir/test_startup.mnv
+
+Patch 8.2.2907
+Problem: Memory leak when running out of memory.
+Solution: Free the allocated memory. (Dominique Pellé, closes #8284)
+Files: src/term.c
+
+Patch 8.2.2908
+Problem: Crash when using a terminal popup window from the cmdline window.
+Solution: Instead of checking cmdwin_type call cmdwin_is_active().
+ (closes #8286)
+Files: src/terminal.c, src/errors.h, src/testdir/test_cmdline.mnv,
+ src/testdir/dumps/Test_cmdwin_no_terminal.dump
+
+Patch 8.2.2909
+Problem: Build error with non-Unix system.
+Solution: Always include limits.h.
+Files: src/mnv.h
+
+Patch 8.2.2910
+Problem: Test for cmdline window and terminal fails on MS-Windows.
+Solution: Skip the test on MS-Windows.
+Files: src/testdir/test_cmdline.mnv
+
+Patch 8.2.2911
+Problem: Pattern "\%V" does not match all of block selection. (Rick Howe)
+Solution: Use the value of vi_curswant. (closes #8285)
+Files: src/regexp.c, src/testdir/test_search.mnv,
+ src/testdir/dumps/Test_hlsearch_block_visual_match.dump
+
+Patch 8.2.2912
+Problem: MS-Windows: most users expect using Unicode.
+Solution: Default 'encoding' to utf-8 on MS-Windows. (Ken Takata,
+ closes #3907)
+Files: runtime/doc/options.txt, src/mbyte.c, src/option.c, src/option.h,
+ src/testdir/test_writefile.mnv
+
+Patch 8.2.2913
+Problem: MS-Windows conpty supports using mouse events.
+Solution: When enabling the mouse enable mouse input and disable quick edit
+ mode. (Wez Furlong, closes #8280)
+Files: src/os_win32.c
+
+Patch 8.2.2914
+Problem: Cannot paste a block without adding padding.
+Solution: Add "zp" and "zP" which paste without adding padding. (Christian
+ Brabandt, closes #8289)
+Files: runtime/doc/change.txt, runtime/doc/index.txt, src/normal.c,
+ src/register.c, src/mnv.h, src/testdir/test_normal.mnv,
+ src/testdir/test_visual.mnv
+
+Patch 8.2.2915
+Problem: MS-Windows: when using "default" for encoding utf-8 is used.
+Solution: Use the system encoding. (Ken Takata, closes #8300)
+Files: src/mbyte.c, runtime/doc/options.txt
+
+Patch 8.2.2916
+Problem: Operators are not fully tested.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #8290)
+Files: src/ops.c, src/testdir/test_netbeans.mnv,
+ src/testdir/test_normal.mnv, src/testdir/test_visual.mnv
+
+Patch 8.2.2917
+Problem: Spellfile functionality not fully tested.
+Solution: Add tests for SFX with removal of characters, spelling
+ suggestions with NOBREAK and others. (Dominique Pellé,
+ closes #8293)
+Files: src/testdir/test_spellfile.mnv
+
+Patch 8.2.2918
+Problem: Builtin function can be shadowed by global variable.
+Solution: Check for builtin function before variable. (Yasuhiro Matsumoto,
+ closes #8302)
+Files: src/eval.c, src/testdir/test_functions.mnv
+
+Patch 8.2.2919
+Problem: Using ":!command" does not work if the command uses posix_spawn().
+Solution: Do not call ioctl() with TIOCSCTTY. (Felipe Contreras)
+Files: src/os_unix.c
+
+Patch 8.2.2920
+Problem: Still a way to shadow a builtin function. (Yasuhiro Matsumoto)
+Solution: Check the key when using extend(). (issue #8302)
+Files: src/eval.c, src/dict.c, src/proto/dict.pro,
+ src/testdir/test_functions.mnv
+
+Patch 8.2.2921
+Problem: E704 for script local variable is not backwards compatible.
+ (Yasuhiro Matsumoto)
+Solution: Only give the error in MNV9 script. Also check for function-local
+ variable.
+Files: src/dict.c, src/testdir/test_functions.mnv
+
+Patch 8.2.2922
+Problem: Computing array length is done in various ways.
+Solution: Use ARRAY_LENGTH everywhere. (Ken Takata, closes #8305)
+Files: src/arabic.c, src/blowfish.c, src/cindent.c, src/cmdexpand.c,
+ src/cmdhist.c, src/dosinst.c, src/eval.c, src/evalfunc.c,
+ src/ex_docmd.c, src/fileio.c, src/gui_athena.c, src/gui_gtk_x11.c,
+ src/gui_haiku.cc, src/gui_photon.c, src/gui_w32.c,
+ src/gui_xmebw.c, src/hardcopy.c, src/help.c, src/highlight.c,
+ src/if_mzsch.c, src/macros.h, src/main.c, src/map.c, src/mbyte.c,
+ src/memline.c, src/menu.c, src/misc2.c, src/normal.c, src/ops.c,
+ src/option.c, src/optiondefs.h, src/os_win32.c, src/popupwin.c,
+ src/quickfix.c, src/regexp.c, src/screen.c, src/search.c,
+ src/syntax.c, src/term.c, src/terminal.c, src/time.c,
+ src/usercmd.c, src/version.c
+
+Patch 8.2.2923
+Problem: EBCDIC build is broken.
+Solution: Move sortFunctions() to evalfunc.c. (Ken Takata, closes #8306)
+Files: src/eval.c, src/evalfunc.c, src/proto/evalfunc.pro
+
+Patch 8.2.2924
+Problem: Superfluous extern declaration.
+Solution: Delete the declaration. (Ken Takata, closes #8307)
+Files: src/main.c
+
+Patch 8.2.2925
+Problem: MNV9: line continuation comment uses legacy syntax.
+Solution: Check for #\ instead of "\. (closes #8295)
+Files: src/scriptfile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2926
+Problem: MNV9: no good error for using :legacy in a :def function.
+Solution: Give an explicit error where :legacy is not working.
+ (closes #8309)
+Files: src/mnv9compile.c, src/errors.h, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2927
+Problem: Test commented out because it fails with ASAN.
+Solution: Only skip the test when running with ASAN.
+Files: src/testdir/test_startup.mnv
+
+Patch 8.2.2928
+Problem: The evalfunc.c file is too big.
+Solution: Move float related functionality to a separate file. (Yegappan
+ Lakshmanan, closes #8287)
+Files: Filelist, src/Make_ami.mak, src/Make_cyg_ming.mak,
+ src/Make_mvc.mak, src/Make_vms.mms, src/Makefile, src/README.md,
+ src/eval.c, src/evalfunc.c, src/float.c, src/proto.h,
+ src/proto/eval.pro, src/proto/float.pro
+
+Patch 8.2.2929
+Problem: Accidentally enable tcl by default.
+Solution: Revert change to Makefile
+Files: src/Makefile
+
+Patch 8.2.2930
+Problem: When a popup is visible a mouse move my restart Visual mode.
+Solution: Reset held_button when ending Visual mode. (closes #8318)
+Files: src/mouse.c, src/proto/mouse.pro, src/normal.c
+
+Patch 8.2.2931
+Problem: MNV9: line continuation comment still uses legacy syntax in one
+ place.
+Solution: Check for #\ instead of "\ earlier. (closes #8316)
+Files: src/scriptfile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.2932 (after 8.2.2930)
+Problem: Select mode test fails.
+Solution: Do not always reset the held mouse button.
+Files: src/mouse.c, src/normal.c, src/proto/normal.pro
+
+Patch 8.2.2933
+Problem: When 'clipboard' is "unnamed" zp and zP do not work correctly.
+Solution: Pass -1 to str_to_reg() and fix computing the character width
+ instead of using the byte length. (Christian Brabandt,
+ closes #8301, closes #8317)
+Files: src/clipboard.c, src/mbyte.c, src/register.c
+
+Patch 8.2.2934 (after 8.2.2933)
+Problem: ASAN error when using text from the clipboard.
+Solution: Get width of each character.
+Files: src/register.c
+
+Patch 8.2.2935 (after 8.2.2934)
+Problem: Calculating register width is not always needed. (Christian
+ Brabandt)
+Solution: Only calculate the width when the type is MBLOCK.
+Files: src/register.c
+
+Patch 8.2.2936
+Problem: MNV9: converting number to bool uses wrong stack offset. (Salman
+ Halim)
+Solution: Include the offset in the 2BOOL command.
+Files: src/mnv9compile.c, src/mnv9.h, src/mnv9execute.c,
+ src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.2937
+Problem: Popup test fails if rightleft feature not enabled.
+Solution: Check that the rightleft feature is available. (Dominique Pellé,
+ closes #8321)
+Files: src/testdir/test_popup.mnv
+
+Patch 8.2.2938
+Problem: After using motion force from feedkeys() it may not be reset.
+Solution: Clear motion_force in clearop(). (closes #8323)
+Files: src/normal.c, src/testdir/test_visual.mnv
+
+Patch 8.2.2939
+Problem: GTK: righthand scrollbar does not show with split window.
+Solution: Adjust padding when two scrollbars are used. (Matt Wozniski,
+ closes #8324)
+Files: src/gui_gtk.c
+
+Patch 8.2.2940
+Problem: MS-Windows: cannot see the size of the text area when resizing the
+ gmnv window.
+Solution: Show a tooltip with the text size. (Ken Takata, closes #8326)
+Files: src/gui_w32.c
+
+Patch 8.2.2941
+Problem: MNV9: using `=expr` does not handle a list of strings.
+Solution: Convert a list to a string and escape each item. (closes #8310)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2942
+Problem: MNV9: internal error when calling function with too few arguments
+Solution: Check for argument count to be too few. (closes #8325)
+Files: src/errors.h, src/mnv9execute.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.2943
+Problem: MNV9: check for argument count ignores default values.
+Solution: Take default argument values into account.
+Files: src/mnv9execute.c
+
+Patch 8.2.2944
+Problem: MNV9: no error when using job or channel as a string.
+Solution: Be more strict about conversion to string. (closes #8312)
+Files: src/typval.c, src/job.c, src/proto/job.pro, src/channel.c,
+ src/proto/channel.pro, src/eval.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.2945
+Problem: Some buffer related code is not tested.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #8320)
+Files: src/termlib.c, src/testdir/test_excmd.mnv,
+ src/testdir/test_recover.mnv, src/testdir/test_swap.mnv,
+ src/testdir/test_visual.mnv
+
+Patch 8.2.2946
+Problem: MNV9: substitute expression cannot be a List in a :def function.
+Solution: Use typval2string(). (closes #8330)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2947
+Problem: Build failure without the channel feature.
+Solution: Add back #ifdef. (John Marriott)
+Files: src/eval.c
+
+Patch 8.2.2948
+Problem: Substitute() accepts a number but not a float expression.
+Solution: Also accept a float. (closes #8331)
+Files: src/typval.c, src/testdir/test_substitute.mnv
+
+Patch 8.2.2949 (after 8.2.2948)
+Problem: Tests failing because there is no error for float to string
+ conversion.
+Solution: Change the check for failure to check for correct result. Make
+ some conversions strict in MNV9 script.
+Files: src/evalfunc.c, src/float.c, src/findfile.c, src/json.c,
+ src/filepath.c, src/testdir/test_eval_stuff.mnv,
+ src/testdir/test_execute_func.mnv,
+ src/testdir/test_float_func.mnv, src/testdir/test_functions.mnv,
+ src/testdir/test_listdict.mnv, src/testdir/test_glob2regpat.mnv
+
+Patch 8.2.2950
+Problem: Sound code not fully tested.
+Solution: Add more sound tests. (Dominique Pellé, closes #8332)
+Files: src/testdir/test_sound.mnv
+
+Patch 8.2.2951
+Problem: MNV9: cannot use heredoc in :def function for :python, :lua, etc.
+Solution: Concatenate the heredoc lines and pass them in the ISN_EXEC_SPLIT
+ instruction.
+Files: src/userfunc.c, src/mnv9compile.c, src/mnv9.h, src/mnv9execute.c,
+ src/testdir/test_mnv9_func.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.2952
+Problem: Recover test fails on big endian systems.
+Solution: Disable the failing test on big endian systems. (Yegappan
+ Lakshmanan, closes #8335)
+Files: src/testdir/test_recover.mnv, src/testdir/test_swap.mnv
+
+Patch 8.2.2953 (after 8.2.2951)
+Problem: MNV9: leaking memory when using heredoc script.
+Solution: Free the first line.
+Files: src/mnv9execute.c
+
+Patch 8.2.2954
+Problem: Short file name extension for Scala not recognized.
+Solution: Recognize *.sc. (closes #8337)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.2955
+Problem: MNV9: using filter in compiled command does not work.
+Solution: Generate EXEC including the command modifier.
+Files: src/mnv9compile.c, src/ex_docmd.c, src/ex_cmds.c,
+ src/proto/ex_cmds.pro, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.2956
+Problem: MNV9: need to plan for future additions.
+Solution: Reserve commands for future use: :type, :class, :enum.
+Files: src/ex_cmds.h, src/ex_cmdidxs.h
+
+Patch 8.2.2957
+Problem: Using getchar() in MNV9 script is problematic.
+Solution: Add getcharstr(). (closes #8343)
+Files: runtime/doc/eval.txt, src/evalfunc.c, src/getchar.c,
+ src/proto/getchar.pro, src/testdir/test_functions.mnv
+
+Patch 8.2.2958 (after 8.2.2957)
+Problem: Function list test fails.
+Solution: Add newly added function to the list. Fix typo.
+Files: runtime/doc/usr_41.txt, src/testdir/test_function_lists.mnv
+
+Patch 8.2.2959
+Problem: sound_playfile() is not tested on MS-Windows.
+Solution: Make it work and enable the test. (Dominique Pellé, closes #8338)
+Files: src/sound.c, src/testdir/test_sound.mnv
+
+Patch 8.2.2960
+Problem: Swap file recovery not sufficiently tested.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #8339)
+Files: src/testdir/test_recover.mnv
+
+Patch 8.2.2961
+Problem: Keys typed during a :normal command are discarded.
+Solution: Concatenate saved typeahead and typed keys. (closes #8340)
+Files: src/getchar.c, src/proto/getchar.pro, src/ex_docmd.c,
+ src/evalfunc.c, src/debugger.c, src/ui.c, src/proto/ui.pro
+
+Patch 8.2.2962
+Problem: MS-Windows command line arguments have wrong encoding.
+Solution: Always use utf-8 in get_cmd_argsW(). (Ken Takata, closes #8347)
+Files: src/os_win32.c
+
+Patch 8.2.2963
+Problem: GUI: mouse move may start Visual mode with a popup visible.
+Solution: Add special code for mouse move. (closes #8318)
+Files: src/mnv.h, src/gui.c, src/keymap.h, src/term.c
+
+Patch 8.2.2964
+Problem: MNV9: hang when using space after ->. (Naohiro Ono)
+Solution: Skip over white space to find the function name. (closes #8341)
+Files: src/eval.c, src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.2965
+Problem: MNV9: crash when calling function that failed to compile.
+Solution: Fail when trying to call the function. (closes #8344)
+Files: src/errors.h, src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2966
+Problem: ml_get errors after recovering a file. (Yegappan Lakshmanan)
+Solution: Fix the cursor position after deleting lines.
+Files: src/memline.c
+
+Patch 8.2.2967
+Problem: MNV9: crash when using two levels of partials.
+Solution: Add outer_ref_T and use it in the execution context.
+Files: src/structs.h, src/mnv9execute.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2968 (after 8.2.2967)
+Problem: MNV9: memory leak
+Solution: Unreference pt_outer of partial.
+Files: src/eval.c
+
+Patch 8.2.2969
+Problem: Subtracting from number option fails when result is zero. (Ingo
+ Karkat)
+Solution: Reset the string value when using the numeric value.
+ (closes #8351)
+Files: src/evalvars.c, src/testdir/test_mnvscript.mnv
+
+Patch 8.2.2970
+Problem: Python configure check uses deprecated command.
+Solution: Use sysconfig instead of distutils if possible. (Zdenek Dohnal,
+ closes #8354)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.2971
+Problem: Cannot yank a block without trailing spaces.
+Solution: Add the "zy" command. (Christian Brabandt, closes #8292)
+Files: runtime/doc/change.txt, runtime/doc/index.txt, src/normal.c,
+ src/ops.c, src/register.c, src/structs.h,
+ src/testdir/test_visual.mnv
+
+Patch 8.2.2972
+Problem: "%bd" tries to delete popup window buffers, which fails. (Ralf
+ Schandl)
+Solution: Do not try to delete a popup window buffer. (closes #8349)
+Files: src/buffer.c, src/mnv.h, src/testdir/test_popupwin.mnv
+
+Patch 8.2.2973
+Problem: Fix for recovery and diff mode not tested.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #8352)
+Files: src/testdir/test_diffmode.mnv, src/testdir/test_prompt_buffer.mnv,
+ src/testdir/test_recover.mnv
+
+Patch 8.2.2974
+Problem: Greek spell checking uses wrong case folding.
+Solution: Fold capital sigma depending on whether it is at the end of a
+ word or not. (closes #299)
+Files: src/spell.c, src/proto/spell.pro, src/spellfile.c,
+ src/spellsuggest.c
+
+Patch 8.2.2975
+Problem: MNV9: can only use an autoload function name as a string.
+Solution: Load the autoload script when encountered. (closes #8124)
+Files: src/mnv9compile.c, src/evalvars.c, src/scriptfile.c,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2976 (after 8.2.2975)
+Problem: Build failure without the +eval feature.
+Solution: Add #ifdefs.
+Files: src/scriptfile.c
+
+Patch 8.2.2977
+Problem: Crash when using a null function reference. (Naohiro Ono)
+Solution: Check for an invalid function name. (closes #8367)
+Files: src/eval.c, src/errors.h, src/testdir/test_functions.mnv
+
+Patch 8.2.2978 (after 8.2.2977)
+Problem: Warning for uninitialized variable.
+Solution: Set return value to FAIL.
+Files: src/eval.c
+
+Patch 8.2.2979
+Problem: Not all options code is covered by tests.
+Solution: Add more tests for options. (Yegappan Lakshmanan, closes #8369)
+Files: src/testdir/test_edit.mnv, src/testdir/test_excmd.mnv,
+ src/testdir/test_help.mnv, src/testdir/test_mksession.mnv,
+ src/testdir/test_options.mnv, src/testdir/test_vartabs.mnv,
+ src/testdir/test_window_cmd.mnv
+
+Patch 8.2.2980
+Problem: Popup window test is a bit flaky.
+Solution: Add a redraw command.
+Files: src/testdir/test_popupwin.mnv
+
+Patch 8.2.2981
+Problem: Recovery test is not run on big-endian systems.
+Solution: Make it work on big-endian systems. (James McCoy, closes #8368)
+Files: src/testdir/test_recover.mnv
+
+Patch 8.2.2982
+Problem: MNV9: future commands are not reserved yet.
+Solution: Add commands to be implemented later. Make "this" a reserved
+ name.
+Files: runtime/doc/mnv9.txt, src/ex_cmds.h, src/ex_cmdidxs.h,
+ src/mnv9script.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.2983
+Problem: MNV9: an inline function requires specifying the return type.
+Solution: Make the return type optional.
+Files: src/eval.c, src/mnv9compile.c, src/userfunc.c,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.2984 (after 8.2.2983)
+Problem: MNV9: Test fails because of missing return statement.
+Solution: When type is unknown set type to void.
+Files: src/mnv9compile.c
+
+Patch 8.2.2985
+Problem: MNV9: a compiled function cannot be debugged.
+Solution: Add initial debugging support.
+Files: src/mnv9.h, src/mnv9compile.c, src/proto/mnv9compile.pro,
+ src/mnv.h, src/eval.c, src/mnv9execute.c, src/userfunc.c,
+ src/mnv9type.c, src/testdir/test_debugger.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.2986
+Problem: Build failure without the profile feature.
+Solution: Add #ifdef.
+Files: src/mnv9compile.c
+
+Patch 8.2.2987
+Problem: Build failure with normal features.
+Solution: Remove #define.
+Files: src/mnv9execute.c
+
+Patch 8.2.2988
+Problem: MNV9: debugger test fails.
+Solution: Get the debugger instructions when needed.
+Files: src/mnv.h, src/mnv9.h
+
+Patch 8.2.2989
+Problem: MNV9: memory leak when debugging a :def function.
+Solution: Free the debug instructions.
+Files: src/mnv9compile.c
+
+Patch 8.2.2990
+Problem: Jupyter Notebook files are not recognized.
+Solution: Recognize *.ipynb. (closes #8375)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.2991
+Problem: MNV9: no completion for :mnv9 and :legacy.
+Solution: Expand argument as a command. (closes #8377)
+Files: src/cmdexpand.c, src/testdir/test_cmdline.mnv
+
+Patch 8.2.2992
+Problem: MNV9: completion for :disassemble is incomplete.
+Solution: Recognize the "debug" and "profile" arguments.
+Files: src/cmdexpand.c, src/mnv9execute.c, src/proto/mnv9execute.pro,
+ src/mnv.h, src/testdir/test_cmdline.mnv
+
+Patch 8.2.2993
+Problem: 'fileencodings' default value should depend on 'encoding'. (Gary
+ Johnson)
+Solution: When 'encoding' is "utf-8" use a different default value for
+ 'fileencodings'.
+Files: src/mbyte.c, src/option.c, src/proto/option.pro,
+ src/testdir/test_options.mnv
+
+Patch 8.2.2994
+Problem: Various code is not fully tested.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #8378)
+Files: src/testdir/test_excmd.mnv, src/testdir/test_mapping.mnv,
+ src/testdir/test_modeline.mnv, src/testdir/test_options.mnv,
+ src/testdir/test_paste.mnv, src/mnv9compile.c
+
+Patch 8.2.2995
+Problem: Linker errors with dynamic Python 3.10.
+Solution: Add a couple of library entries. (Zdenek Dohnal, closes #8381,
+ closes #8356)
+Files: src/if_python3.c
+
+Patch 8.2.2996
+Problem: MNV9: when debugging cannot inspect local variables.
+Solution: Make local variables available when debugging.
+Files: src/mnv9execute.c, src/proto/mnv9execute.pro, src/mnv9compile.c,
+ src/mnv9.h, src/debugger.c, src/testdir/test_debugger.mnv
+
+Patch 8.2.2997 (after 8.2 2996)
+Problem: MNV9: disassemble test fails.
+Solution: Adjust expected output.
+Files: src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.2998 (after 8.2 2996)
+Problem: MNV9: disassemble test fails.
+Solution: Add missing call to lookup_debug_var().
+Files: src/evalvars.c
+
+Patch 8.2.2999
+Problem: Balloon sometimes does not hide with GTK 3.
+Solution: Also listen to GDK_LEAVE_NOTIFY. (Johannes Stezenbach)
+Files: src/gui_beval.c
+
+Patch 8.2.3000
+Problem: MNV9: warning for uninitialized variable.
+Solution: Add initialization. (John Marriott)
+Files: src/mnv9compile.c
+
+Patch 8.2.3001
+Problem: MNV9: memory leak when compilation fails.
+Solution: Free the list of variable names.
+Files: src/mnv9compile.c
+
+Patch 8.2.3002
+Problem: MNV doesn't abort on a fatal Tcl error.
+Solution: Change emsg() to iemsg(). (Dominique Pellé, closes #8383)
+Files: src/if_tcl.c
+
+Patch 8.2.3003
+Problem: MNV9: closure compiled with wrong compile type.
+Solution: Use COMPILE_TYPE() when calling a function. (closes #8384)
+Files: src/mnv9execute.c, src/testdir/test_debugger.mnv
+
+Patch 8.2.3004
+Problem: MNV9: error for missing colon given while skipping.
+Solution: Do not give the error when skipping. (closes #8385)
+Files: src/ex_docmd.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3005
+Problem: MNV9: using a void value does not give a proper error message.
+Solution: Give a clear error message. (closes #8387)
+Files: src/typval.c, src/mnv9compile.c, src/mnv9.h, src/mnv9execute.c,
+ src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.3006
+Problem: Crash when echoing a value very early. (Naruhiko Nishino)
+Solution: Do not use a NUL to truncate the message, make a copy.
+ (closes #8388)
+Files: src/message.c, src/testdir/test_startup.mnv
+
+Patch 8.2.3007 (after 8.2.3005)
+Problem: MNV9: test for void value fails.
+Solution: Adjust expected error. Do not make a copy of void.
+Files: src/typval.c, src/testdir/test_functions.mnv
+
+Patch 8.2.3008 (after 8.2.3006)
+Problem: Startup test may hang.
+Solution: Add quit command in the script.
+Files: src/testdir/test_startup.mnv
+
+Patch 8.2.3009 (after 8.2.3006)
+Problem: Startup test may hang.
+Solution: Do not run the test in the GUI.
+Files: src/testdir/test_startup.mnv
+
+Patch 8.2.3010
+Problem: Not enough testing for mnvinfo code.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #8390)
+Files: src/register.c, src/testdir/test_fileformat.mnv,
+ src/testdir/test_smartindent.mnv, src/testdir/test_mnvinfo.mnv
+
+Patch 8.2.3011
+Problem: MNV9: cannot get argument values during debugging.
+Solution: Lookup names in the list of arguments. Put debug instruction
+ halfway for command.
+Files: src/mnv9compile.c, src/mnv9execute.c,
+ src/testdir/test_debugger.mnv
+
+Patch 8.2.3012
+Problem: When 'rightleft' is set the line number is sometimes drawn
+ reversed.
+Solution: Adjust how space is handled. (Christian Brabandt, closes #8389,
+ closes #8391)
+Files: src/drawline.c, src/testdir/test_number.mnv
+
+Patch 8.2.3013
+Problem: MNV: when debugging only the first line of a command using line
+ continuation is displayed.
+Solution: Find the next command and concatenate lines until that one.
+ (closes #8392)
+Files: src/mnv9execute.c, src/testdir/test_debugger.mnv
+
+Patch 8.2.3014
+Problem: Coverity warns for freeing static string.
+Solution: Do not assign static string to pointer. (Dominique Pellé,
+ closes #8397)
+Files: src/mnv9execute.c
+
+Patch 8.2.3015
+Problem: MNV9: Assigning to @# requires a string. (Naohiro Ono)
+Solution: Accent a number or a string. (closes #8396)
+Files: src/mnv9compile.c, src/mnv9execute.c, src/globals.h,
+ src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.3016
+Problem: Confusing error when expression is followed by comma.
+Solution: Give a different error for trailing text. (closes #8395)
+Files: src/eval.c, src/testdir/test_let.mnv,
+ src/testdir/test_eval_stuff.mnv, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_script.mnv, src/testdir/test_mnvinfo.mnv,
+ src/testdir/test_mnvscript.mnv
+
+Patch 8.2.3017
+Problem: MNV9: debugger shows too many lines.
+Solution: Truncate at a comment, "enddef", etc. (closes #8392)
+Files: src/mnv9execute.c, src/testdir/test_debugger.mnv
+
+Patch 8.2.3018
+Problem: Formatting using quickfixtextfunc is lost when updating location
+ lists for different buffers. (Yorick Peterse)
+Solution: Use the right window for the location list. (Yegappan Lakshmanan,
+ closes #8400, closes #8403)
+Files: src/quickfix.c, src/testdir/test_quickfix.mnv
+
+Patch 8.2.3019
+Problem: Location list only has the start position.
+Solution: Make it possible to add an end position. (thinca, closes #8393)
+Files: runtime/doc/eval.txt, src/quickfix.c,
+ src/testdir/dumps/Test_quickfix_cwindow_1.dump,
+ src/testdir/dumps/Test_quickfix_cwindow_2.dump,
+ src/testdir/test_quickfix.mnv, src/testdir/test_tagjump.mnv,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.3020
+Problem: Unreachable code.
+Solution: Remove the code. (closes #8406)
+Files: src/ex_docmd.c
+
+Patch 8.2.3021
+Problem: Spaces allowed between option name and "!", "?", etc.
+Solution: Disallow spaces in MNV9 script, it was not documented.
+ (closes #8408)
+Files: src/option.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3022
+Problem: Available encryption methods are not strong enough.
+Solution: Add initial support for xchacha20. (Christian Brabandt,
+ closes #8394)
+Files: .github/workflows/ci.yml, runtime/doc/eval.txt,
+ runtime/doc/options.txt, runtime/doc/various.txt,
+ src/INSTALLpc.txt, src/Make_cyg_ming.mak, src/Make_mvc.mak,
+ src/auto/configure, src/blowfish.c, src/bufwrite.c,
+ src/config.h.in, src/configure.ac, src/crypt.c, src/crypt_zip.c,
+ src/errors.h, src/evalfunc.c, src/feature.h, src/fileio.c,
+ src/memline.c, src/option.c, src/optionstr.c,
+ src/proto/blowfish.pro, src/proto/crypt.pro,
+ src/proto/crypt_zip.pro, src/structs.h,
+ src/testdir/samples/crypt_sodium_invalid.txt,
+ src/testdir/test_crypt.mnv, src/undo.c, src/version.c
+
+Patch 8.2.3023
+Problem: MNV9: arguments for execute() not checked at compile time.
+Solution: Add a function to check the argument types.
+Files: src/evalfunc.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3024 (after 8.2.3023)
+Problem: execute() function test fails.
+Solution: Adjust test for different error.
+Files: src/testdir/test_execute_func.mnv
+
+Patch 8.2.3025
+Problem: Not enough tests for quickfix end_col and end_lnum.
+Solution: Add a few more test cases. (Shane-XB-Qian, closes #8409)
+Files: src/testdir/test_quickfix.mnv
+
+Patch 8.2.3026
+Problem: MNV9: cannot set breakpoint in compiled function.
+Solution: Check for breakpoint when calling a function.
+Files: src/mnv9execute.c, src/structs.h, src/mnv.h, src/mnv9.h,
+ src/debugger.c, src/testdir/test_debugger.mnv
+
+Patch 8.2.3027
+Problem: MNV9: breakpoint in compiled function not always checked.
+Solution: Check for breakpoint when calling compiled function from compiled
+ function.
+Files: src/mnv9execute.c, src/testdir/test_debugger.mnv
+
+Patch 8.2.3028
+Problem: GUI mouse events not tested.
+Solution: Add test_gui_mouse_event(). Add mouse tests. Also add a few
+ mnvinfo tests. (Yegappan Lakshmanan, closes #8407)
+Files: runtime/doc/eval.txt, runtime/doc/testing.txt,
+ runtime/doc/usr_41.txt, src/evalfunc.c, src/proto/testing.pro,
+ src/testdir/test_gui.mnv, src/testdir/test_mnvinfo.mnv,
+ src/testing.c
+
+Patch 8.2.3029
+Problem: MNV9: crash when using operator and list unpack assignment.
+ (Naohiro Ono)
+Solution: Get variable value before operation. (closes #8416)
+Files: src/mnv9.h, src/mnv9compile.c, src/mnv9execute.c, src/ex_docmd.c,
+ src/testdir/test_mnv9_assign.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.3030
+Problem: Coverity reports a memory leak.
+Solution: Fix the leak and a few typos. (Dominique Pellé, closes #8418)
+Files: src/crypt.c, src/errors.h
+
+Patch 8.2.3031
+Problem: No error if a function name starts with an underscore. (Naohiro
+ Ono)
+Solution: In MNV9 script disallow a function name starting with an
+ underscore, as is mentioned in the help. (closes #8414)
+Files: src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.3032
+Problem: Build problems with MSVC, other crypt issues with libsodium.
+Solution: Adjust MSVC makefile. Disable swap file only when 'key' is set.
+ Adjust error message used when key is wrong. Fix Coverity issues.
+ (Christian Brabandt, closes #8420, closes #8411)
+Files: src/Make_mvc.mak, src/crypt.c, src/errors.h, src/fileio.c,
+ src/memline.c, src/proto/crypt.pro
+
+Patch 8.2.3033
+Problem: No error when using alpha delimiter with :global.
+Solution: Check the delimiter like with :substitute. (closes #8415)
+Files: src/ex_cmds.c, src/testdir/test_global.mnv
+
+Patch 8.2.3034
+Problem: Installing packages on github CI sometimes fails.
+Solution: Update package information first. (Christian Brabandt,
+ closes #8432)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.3035
+Problem: MNV9: crash when calling :def function with partial and return
+ type is not set.
+Solution: When the return type is not set handle like the return type is
+ unknown. (closes #8422)
+Files: src/mnv9type.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.3036
+Problem: MNV9: builtin function arguments not checked at compile time.
+Solution: Add more argument type specs. Check arguments to test_setmouse()
+ and test_gui_mouse_event(). (Yegappan Lakshmanan, closes #8425)
+Files: src/evalfunc.c, src/testdir/test_assert.mnv,
+ src/testdir/test_gui.mnv, src/testdir/test_popupwin.mnv,
+ src/testdir/test_mnv9_builtin.mnv, src/testing.c
+
+Patch 8.2.3037
+Problem: Configure reports libcanberra when checking for libsodium.
+Solution: Adjust the message. (Ozaki Kiichi, closes #8435)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.3038
+Problem: Amiga built-in version string doesn't include build date.
+Solution: Add the build date if available. (Ola Söder, closes #8437)
+Files: src/os_amiga.c
+
+Patch 8.2.3039
+Problem: MNV9: breakpoint at a comment line does not work.
+Solution: Add the comment line number to the debug instruction.
+ (closes #8429)
+Files: src/mnv9.h, src/mnv9compile.c, src/mnv9execute.c,
+ src/testdir/test_debugger.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.3040
+Problem: GUI: dropping files not tested.
+Solution: Add test_gui_drop_files() and tests. (Yegappan Lakshmanan,
+ closes #8434)
+Files: runtime/doc/eval.txt, runtime/doc/testing.txt,
+ runtime/doc/usr_41.txt, src/evalfunc.c, src/gui.c,
+ src/proto/testing.pro, src/testdir/test_gui.mnv, src/testing.c
+
+Patch 8.2.3041
+Problem: Detecting if the process of a swap file is running fails if the
+ process is owned by another user.
+Solution: Check for the ESRCH error. (closes #8436)
+Files: src/os_unix.c
+
+Patch 8.2.3042 (after 8.2.3041)
+Problem: Swap file test fails.
+Solution: Check for a very high process ID instead of one, which should be
+ running.
+Files: src/testdir/test_swap.mnv
+
+Patch 8.2.3043
+Problem: Amiga: cannot get the shell size on MorphOS and AROS.
+Solution: Use control sequences. (Ola Söder, closes #8438)
+Files: src/os_amiga.c
+
+Patch 8.2.3044
+Problem: Amiga MorphOS and AROS: process ID is not valid.
+Solution: Use FindTask to return something which is unique to all processes.
+ (Ola Söder, closes #8444)
+Files: src/os_amiga.c
+
+Patch 8.2.3045
+Problem: Minor typos.
+Solution: Fix the typos. (Christian Brabandt, closes #8441)
+Files: src/VisMNV/README_VisMNV.txt, src/evalfunc.c, src/testdir/mnv9.mnv
+
+Patch 8.2.3046
+Problem: Amiga MorphOS: Term mode is set using DOS packets.
+Solution: Use the same way of setting term mode on all next gen Amiga-like
+ systems. (Ola Söder, closes #8445)
+Files: src/os_amiga.c
+
+Patch 8.2.3047
+Problem: Increment and decrement don't allow for next command.
+Solution: Allow for comment and next command. (closes #8442)
+Files: src/ex_cmds.h, src/mnv9script.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.3048
+Problem: Strange error for white space after ++ command.
+Solution: Check for white space explicitly. (closes #8440)
+Files: src/mnv9script.c, src/errors.h, src/mnv9compile.c,
+ src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.3049
+Problem: JSON patch file not recognized.
+Solution: Recognize json-patch as json. (Kevin Locke, closes #8450)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.3050
+Problem: Cannot recognize elixir files.
+Solution: Recognize Elixir-specific files. Check if an .ex file is Euphoria
+ or Elixir. (Austin Gatlin, closes #8401, closes #8446)
+Files: runtime/autoload/dist/ft.mnv, runtime/filetype.mnv,
+ src/testdir/test_filetype.mnv
+
+Patch 8.2.3051
+Problem: MNV9: for loop with one list variable does not work.
+Solution: Use a separate flag for unpacking a list. (closes #8452)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3052
+Problem: MNV9: "legacy call" does not work.
+Solution: Do not skip "call" after "legacy". (closes #8454)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.3053
+Problem: MNV9: cannot assign to @@ in :def function
+Solution: Handle '@' like '"'. (closes #8456)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.3054
+Problem: MNV9: unpack assignment using "_" after semicolon fails.
+Solution: Drop the expression result. (closes #8453)
+Files: src/mnv9compile.c, src/errors.h, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.3055
+Problem: Strange error for assigning to "x.key" on non-dictionary.
+Solution: Add a specific error message. (closes #8451)
+Files: src/eval.c, src/errors.h, src/testdir/test_mnv9_assign.mnv,
+ src/testdir/test_listdict.mnv, src/testdir/test_let.mnv
+
+Patch 8.2.3056
+Problem: MNV9: using default value in lambda gives confusing error.
+Solution: Pass "default_args" on the first pass to get the arguments.
+ (closes #8455)
+Files: src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.3057
+Problem: MNV9: debugger test fails with normal features and +terminal.
+ (Dominique Pellé)
+Solution: Adjust the INSTRUCTIONS macro. (closes #8460)
+Files: src/mnv9.h
+
+Patch 8.2.3058 (after 8.2.3056)
+Problem: MNV9: cannot use ternary operator in parentheses.
+Solution: Do not use "==" for a default argument value. (closes #8462)
+Files: src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.3059 (after 8.2.3056)
+Problem: MNV9: memory leak when using lambda.
+Solution: Do not store the default value strings when skipping.
+Files: src/userfunc.c
+
+Patch 8.2.3060 (after 8.2.3056)
+Problem: MNV9: cannot use ternary operator in parentheses.
+Solution: Do not use "=~" for a default argument value. (closes #8462)
+Files: src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.3061
+Problem: Testing the shell option is incomplete and spread out.
+Solution: Move shell tests to one file and increase coverage. (Yegappan
+ Lakshmanan, closes #8464)
+Files: src/testdir/Make_all.mak, src/testdir/test_functions.mnv,
+ src/testdir/test_options.mnv, src/testdir/test_shell.mnv,
+ src/testdir/test_system.mnv
+
+Patch 8.2.3062
+Problem: Internal error when adding several text properties.
+Solution: Do not handle text properties when deleting a line for splitting a
+ data block. (closes #8466)
+Files: src/structs.h, src/memline.c, src/testdir/test_textprop.mnv
+
+Patch 8.2.3063
+Problem: Crash when switching 'cryptmethod' to xchacha20 with an existing
+ undo file. (Martin Tournoij)
+Solution: Disable reading undo file when decoding can't be done inplace.
+ (issue #8467)
+Files: src/fileio.c, src/bufwrite.c
+
+Patch 8.2.3064
+Problem: MNV9: in script cannot set item in uninitialized list.
+Solution: When a list is NULL allocate an empty one. (closes #8461)
+Files: src/eval.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.3065
+Problem: MNV9: error when sourcing script twice and reusing a function
+ name.
+Solution: Check if the function is dead. (closes #8463)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3066
+Problem: MNV9: debugging lambda does not work.
+Solution: Use the compile type of the function when compiling a lambda.
+ (closes #8412)
+Files: src/mnv9compile.c, src/testdir/test_debugger.mnv
+
+Patch 8.2.3067
+Problem: Building fails with Athena. (Elimar Riesebieter)
+Solution: Adjust #ifdefs and add the 'drop_file' feature.
+Files: src/evalfunc.c, src/testing.c, src/testdir/test_gui.mnv
+
+Patch 8.2.3068
+Problem: Unicode tables are slightly outdated.
+Solution: Update the tables for Unicode release 13. (Christian Brabandt
+ closes #8430)
+Files: runtime/tools/unicode.mnv, src/mbyte.c
+
+Patch 8.2.3069
+Problem: Error messages are spread out.
+Solution: Move some error messages to errors.h. Use clearer names.
+Files: src/errors.h, src/globals.h, src/arglist.c, src/buffer.c,
+ src/channel.c, src/eval.c, src/evalfunc.c, src/evalvars.c,
+ src/evalwindow.c, src/ex_cmds.c, src/ex_docmd.c, src/ex_getln.c,
+ src/filepath.c, src/fold.c, src/getchar.c, src/indent.c,
+ src/list.c, src/map.c, src/mark.c, src/normal.c, src/ops.c,
+ src/optionstr.c, src/popupwin.c, src/quickfix.c, src/spellfile.c,
+ src/textprop.c, src/typval.c, src/undo.c, src/userfunc.c,
+ src/mnv9compile.c, src/window.c
+
+Patch 8.2.3070
+Problem: Not enough testing for shell use.
+Solution: Add a bit more testing. (Yegappan Lakshmanan, closes #8469)
+Files: src/testdir/test_shell.mnv, src/testdir/test_startup.mnv
+
+Patch 8.2.3071
+Problem: Shell options are not set properly for PowerShell.
+Solution: Use better option defaults. (Mike Williams, closes #8459)
+Files: runtime/doc/eval.txt, runtime/doc/options.txt,
+ runtime/doc/os_dos.txt, src/fileio.c, src/misc2.c, src/option.c,
+ src/os_win32.c, src/testdir/test_shell.mnv
+
+Patch 8.2.3072
+Problem: The "zy" command does not work well when 'virtualedit' is set to
+ "block". (Johann Höchtl)
+Solution: Make endspaces zero. (Christian Brabandt, closes #8468,
+ closes #8448)
+Files: src/register.c, src/testdir/test_visual.mnv
+
+Patch 8.2.3073
+Problem: When cursor is moved for block append wrong text is inserted.
+Solution: Calculate an offset. (Christian Brabandt, closes #8433,
+ closes #8288)
+Files: src/ops.c, src/testdir/test_blockedit.mnv,
+ src/testdir/test_visual.mnv
+
+Patch 8.2.3074
+Problem: popup_atcursor() uses wrong position with concealing.
+Solution: Keep w_wcol in conceal_check_cursor_line(). (closes #8476)
+Files: src/screen.c, src/proto/screen.pro, src/normal.c, src/edit.c,
+ src/ui.c, src/testdir/test_popupwin.mnv,
+ src/testdir/dumps/Test_popupwin_atcursor_pos.dump
+
+Patch 8.2.3075
+Problem: Xxd always reports an old version string. (Åsmund Ervik)
+Solution: Update the version string with the last known change date.
+ (Jürgen Weigert, closes #8475)
+Files: src/xxd/xxd.c, src/testdir/test_xxd.mnv
+
+Patch 8.2.3076
+Problem: MNV9: using try in catch block causes a hang.
+Solution: Save and restore the ec_in_catch flag. (closes #8478)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3077
+Problem: MNV9: an error in a catch block is not reported.
+Solution: Put the "in catch" flag in the try stack. (closes #8478)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3078
+Problem: MNV9: profile test fails.
+Solution: Make throw in :catch jump to :finally.
+Files: src/mnv9compile.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3079
+Problem: Powershell core not supported by default.
+Solution: Set option defaults for "pwsh". (Mike Williams, closes #8481)
+Files: runtime/doc/eval.txt, runtime/doc/options.txt,
+ runtime/doc/os_dos.txt, runtime/doc/os_win32.txt, src/fileio.c,
+ src/misc2.c, src/option.c, src/os_win32.c,
+ src/testdir/test_shell.mnv
+
+Patch 8.2.3080
+Problem: Recover test fails on 32bit systems. (Ondřej Súkup)
+Solution: Detect 32/64 bit systems. (Yegappan Lakshmanan, closes #8485,
+ closes #8479)
+Files: src/testdir/test_recover.mnv
+
+Patch 8.2.3081
+Problem: Cannot catch errors in a channel command.
+Solution: Instead of skipping the error make it silent. (closes #8477)
+Files: src/channel.c
+
+Patch 8.2.3082
+Problem: A channel command "echoerr" does not show anything.
+Solution: Do not use silent errors when using an "echoerr" command.
+ (closes #8494)
+Files: src/channel.c, src/testdir/test_channel.py,
+ src/testdir/test_channel.mnv
+
+Patch 8.2.3083
+Problem: Crash when passing null string to charclass().
+Solution: Bail out when string pointer is NULL. (Christian Brabandt,
+ closes #8498, closes #8260)
+Files: src/mbyte.c, src/testdir/test_functions.mnv
+
+Patch 8.2.3084
+Problem: MNV9: builtin function argument types are not checked at compile
+ time.
+Solution: Add argument types. (Yegappan Lakshmanan, closes #8503)
+Files: src/evalfunc.c, src/testdir/test_functions.mnv,
+ src/testdir/test_glob2regpat.mnv,
+ src/testdir/test_mnv9_builtin.mnv, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.3085
+Problem: JSONC files are not recognized.
+Solution: Recognize .jsonc files. (Izhak Jakov, closes #8500)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.3086
+Problem: MNV9: breakpoint on "for" does not work.
+Solution: Use the right line number in ISN_DEBUG. (closes #8486)
+Files: src/mnv9compile.c, src/testdir/test_debugger.mnv
+
+Patch 8.2.3087
+Problem: Gemtext files are not recognized.
+Solution: Recognize .gmi and .gemini files. (closes #8427)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.3088
+Problem: With 'virtualedit' set to "block" Visual highlight is wrong after
+ using "$". (Marco Trosi)
+Solution: Do not set w_old_cursor_lcol to MAXCOL. (closes #8495)
+Files: src/drawscreen.c, src/testdir/test_visual.mnv,
+ src/testdir/dumps/Test_visual_block_with_virtualedit.dump
+
+Patch 8.2.3089
+Problem: Garbage collection has useless code.
+Solution: Bail out when aborting. (closes #8504)
+Files: src/userfunc.c
+
+Patch 8.2.3090
+Problem: With concealing enabled and indirectly closing a fold the cursor
+ may be somewhere in a folded line.
+Solution: Recompute the cursor position when the cursor line can be
+ concealed. (closes #8480)
+Files: src/drawscreen.c
+
+Patch 8.2.3091
+Problem: MNV9: default argument expression cannot use previous argument
+Solution: Correct argument index. (closes #8496)
+Files: src/mnv9compile.c, src/structs.h, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.3092
+Problem: MNV9: builtin function test fails without the +channel feature.
+Solution: Check the +channel feature is supported. (Dominique Pellé,
+ closes #8507)
+Files: runtime/doc/eval.txt, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3093
+Problem: tablabel_tooltip test fails with Athena. (Dominique Pellé)
+Solution: Skip the test when using Athena. (closes #8508)
+Files: src/testdir/test_gui.mnv, src/testdir/check.mnv
+
+Patch 8.2.3094
+Problem: Test_popup_atcursor_pos() fails without the conceal feature.
+Solution: Add a check for the conceal feature. (Dominique Pellé,
+ closes #8505)
+Files: src/testdir/test_popupwin.mnv
+
+Patch 8.2.3095 (after 8.2.3088)
+Problem: With 'virtualedit' set to "block" block selection is wrong after
+ using "$". (Marco Trosi)
+Solution: Compute the longest selected line. (closes #8495)
+Files: src/drawscreen.c, src/testdir/test_visual.mnv,
+ src/testdir/dumps/Test_visual_block_with_virtualedit2.dump
+
+Patch 8.2.3096
+Problem: Temp files remain after running tests.
+Solution: Delete the right files. (Dominique Pellé, closes #8509)
+Files: src/testdir/test_debugger.mnv, src/testdir/test_lambda.mnv,
+ src/testdir/test_visual.mnv
+
+
+Patch 8.2.3097
+Problem: Crash when using "quit" at recovery prompt and autocommands are
+ triggered.
+Solution: Block autocommands when creating an empty buffer to use as the
+ current buffer. (closes #8506)
+Files: src/buffer.c, src/testdir/test_swap.mnv
+
+Patch 8.2.3098
+Problem: Popup window test is flaky on MS-Windows with GUI.
+Solution: Skip the check in this situation.
+Files: src/testdir/test_popupwin.mnv
+
+Patch 8.2.3099
+Problem: MNV9: missing catch/finally not reported at script level.
+Solution: Give an error. (closes #8487)
+Files: src/structs.h, src/ex_eval.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3100
+Problem: MNV9: no error when using type with unknown number of arguments.
+Solution: Do not ignore argument count of -1. (closes #8492)
+Files: src/mnv9type.c, src/evalfunc.c, src/proto/evalfunc.pro,
+ src/testdir/test_mnv9_assign.mnv, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.3101
+Problem: Missing function prototype for mnv_round().
+Solution: Add the prototype.
+Files: src/proto/float.pro
+
+Patch 8.2.3102 (after 8.2.3097)
+Problem: Test for crash fix does not fail without the fix.
+Solution: Adjust the test sequence. (closes #8506)
+Files: src/testdir/test_swap.mnv
+
+Patch 8.2.3103 (after 8.2.3102)
+Problem: Swap test may fail on some systems when jobs take longer to exit.
+Solution: Use different file names.
+Files: src/testdir/test_swap.mnv
+
+Patch 8.2.3104
+Problem: MNV9: unspecified function type causes type error.
+Solution: Don't check type when min_argcount is negative. (issue #8492)
+Files: src/globals.h, src/mnv9type.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.3105
+Problem: MNV9: type of partial is wrong when it has arguments.
+Solution: Subtract arguments from the count. (issue #8492)
+Files: src/mnv9type.c, src/userfunc.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.3106
+Problem: MNV9: confusing line number reported for error.
+Solution: Use the start line number for the store instruction.
+ (closes #8488)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.3107
+Problem: MNV9: error for arguments while type didn't specify arguments.
+Solution: Do not update that type to check when no argument count is
+ specified. (closes #8492)
+Files: src/userfunc.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.3108
+Problem: Test for remote_foreground() fails. (Elimar Riesebieter)
+Solution: Check that $DISPLAY is set. (Christian Brabandt)
+Files: src/testdir/check.mnv, src/testdir/test_clientserver.mnv,
+ src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3109
+Problem: Check for $DISPLAY never fails.
+Solution: Use eval().
+Files: src/testdir/check.mnv
+
+Patch 8.2.3110
+Problem: A pattern that matches the cursor position is a bit complicated.
+Solution: Use a dot to indicate the cursor line and column. (Christian
+ Brabandt, closes #8497, closes #8179)
+Files: runtime/doc/pattern.txt, src/errors.h, src/regexp_bt.c,
+ src/regexp_nfa.c, src/testdir/test_regexp_latin.mnv
+
+Patch 8.2.3111
+Problem: MNV9: confusing error with extra whitespace before colon.
+Solution: Check for colon after white space. (closes #8513)
+Files: src/eval.c, src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3112 (after 8.2.3090)
+Problem: With concealing enabled and indirectly closing a fold the cursor
+ may be somewhere in a folded line when it is not on the first line
+ of the fold.
+Solution: Check if the cursor is somewhere in the folded text.
+Files: src/drawscreen.c
+
+Patch 8.2.3113
+Problem: No error when for loop variable shadows script variable.
+Solution: Check for the error. (closes #8512)
+Files: src/eval.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3114
+Problem: Amiga-like systems: build error checking for running process
+Solution: Only build swapfile_process_running() on systems where it is
+ actually used. (Ola Söder, closes #8519)
+Files: src/memline.c
+
+Patch 8.2.3115
+Problem: Coverity complains about free_wininfo() use.
+Solution: Add a condition that "wip2" is not equal to "wip". (Neomnv #14996)
+Files: src/window.c
+
+Patch 8.2.3116
+Problem: MNV9: crash when debugging a function with line continuation.
+Solution: Check for a NULL pointer. (closes #8521)
+Files: src/mnv9execute.c, src/testdir/test_debugger.mnv
+
+Patch 8.2.3117
+Problem: MNV9: type not properly checked in for loop.
+Solution: Have items() return a list of lists. Add runtime type checks.
+ (closes #8515)
+Files: src/evalfunc.c, src/globals.h, src/mnv9compile.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3118
+Problem: MNV9: "any" type not handled correctly in for loop.
+Solution: Change compile time check into runtime check. (closes #8516)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3119
+Problem: Compiler warning for unused argument.
+Solution: Add UNUSED.
+Files: src/evalfunc.c
+
+Patch 8.2.3120
+Problem: Crypt with sodium test fails on MS-Windows.
+Solution: Make the tests pass. (closes #8428)
+Files: src/testdir/test_crypt.mnv
+
+Patch 8.2.3121
+Problem: 'listchars' "exceeds" character appears in foldcolumn. Window
+ separator is missing. (Leonid V. Fedorenchik)
+Solution: Only draw the "exceeds" character in the text area. Break the
+ loop when not drawing the text. (closes #8524)
+Files: src/drawline.c, src/testdir/test_listchars.mnv,
+ src/testdir/dumps/Test_listchars_01.dump,
+ src/testdir/dumps/Test_listchars_02.dump,
+ src/testdir/dumps/Test_listchars_03.dump,
+ src/testdir/dumps/Test_listchars_04.dump,
+ src/testdir/dumps/Test_listchars_05.dump
+
+Patch 8.2.3122
+Problem: With 'nowrap' cursor position is unexpected in narrow window.
+ (Leonid V. Fedorenchik)
+Solution: Put cursor on the last non-empty line. (closes #8525)
+Files: src/move.c, src/testdir/test_listchars.mnv,
+ src/testdir/dumps/Test_listchars_06.dump,
+ src/testdir/dumps/Test_listchars_07.dump
+
+Patch 8.2.3123
+Problem: MNV9: confusing error when using white space after option, before
+ one of "!&<".
+Solution: Give a specific error. (issue #8408)
+Files: src/errors.h, src/option.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3124
+Problem: MNV9: no error for white space between option and "=9".
+Solution: Check for extraneous white space. (issue #8408)
+Files: src/option.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3125
+Problem: Variables are set but not used.
+Solution: Move the declarations to the block where they are used.
+ (closes #8527)
+Files: src/regexp_nfa.c
+
+Patch 8.2.3126
+Problem: MNV9: for loop error reports wrong line number.
+Solution: Save and restore the line number when evaluating the expression.
+ (closes #8514)
+Files: src/ex_eval.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3127
+Problem: MNV9: no error when adding number to list of string.
+Solution: Check the value type. (closes #8529)
+Files: src/list.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3128
+Problem: MNV9: uninitialized list does not get type checked.
+Solution: Set the type when initializing the variable. (closes #8529)
+Files: src/eval.c, src/evalvars.c, src/mnv9script.c,
+ src/userfunc.c, src/proto/mnv9script.pro,
+ src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3129
+Problem: MNV9: imported uninitialized list does not get type checked.
+Solution: Get type from imported variable.
+Files: src/eval.c, src/evalvars.c, src/mnv9script.c,
+ src/proto/mnv9script.pro, src/userfunc.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3130
+Problem: MNV9: import test fails.
+Solution: Rename directory back to "import", use "p" to avoid an error when
+ the directory already exists.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3131
+Problem: MS-Windows: ipv6 channel test is very flaky in the GUI.
+Solution: Skip the test.
+Files: src/testdir/test_channel.mnv
+
+Patch 8.2.3132
+Problem: Compiler warns for size_t to colnr_T conversion. (Randall W.
+ Morris)
+Solution: Add a type cast.
+Files: src/drawscreen.c
+
+Patch 8.2.3133
+Problem: MNV9: memory leak when add() fails.
+Solution: Allocate listitem_T after type check.
+Files: src/list.c
+
+Patch 8.2.3134
+Problem: Crash when using typename() on a function reference. (Naohiro Ono)
+Solution: Initialize pointer to NULL. (closes #8531)
+Files: src/mnv9type.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3135
+Problem: MNV9: builtin function arguments not checked at compile time.
+Solution: Add more type checks. (Yegappan Lakshmanan, closes #8539)
+Files: src/channel.c, src/errors.h, src/evalfunc.c, src/proto/typval.pro,
+ src/terminal.c, src/testdir/test_search.mnv,
+ src/testdir/test_textprop.mnv, src/testdir/test_mnv9_builtin.mnv,
+ src/testing.c, src/textprop.c, src/typval.c
+
+Patch 8.2.3136
+Problem: No test for E187 and "No swap file".
+Solution: Add a test. (Dominique Pellé, closes #8540)
+Files: src/testdir/test_cd.mnv, src/testdir/test_swap.mnv
+
+Patch 8.2.3137
+Problem: MNV9: no error when a line only has a variable name.
+Solution: Give an error when an expression is evaluated without an effect.
+ (closes #8538)
+Files: src/ex_eval.c, src/errors.h, src/mnv9compile.c,
+ src/testdir/test_mnv9_script.mnv, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.3138 (after 8.2.3137)
+Problem: Debugger test fails.
+Solution: Adjust eval command.
+Files: src/testdir/test_debugger.mnv
+
+Patch 8.2.3139
+Problem: Functions for string manipulation are spread out.
+Solution: Move string related functions to a new source file. (Yegappan
+ Lakshmanan, closes #8470)
+Files: Filelist, src/Make_ami.mak, src/Make_cyg_ming.mak,
+ src/Make_mvc.mak, src/Make_vms.mms, src/Makefile, src/README.md,
+ src/eval.c, src/evalfunc.c, src/mbyte.c, src/misc1.c, src/misc2.c,
+ src/proto.h, src/proto/eval.pro, src/proto/evalfunc.pro,
+ src/proto/mbyte.pro, src/proto/misc1.pro, src/proto/misc2.pro,
+ src/proto/strings.pro, src/strings.c
+
+Patch 8.2.3140 (after 8.2.3131)
+Problem: MS-Windows: ipv6 channel test is very flaky also without the GUI.
+Solution: Skip the test also without the GUI.
+Files: src/testdir/test_channel.mnv
+
+Patch 8.2.3141
+Problem: No error when using :complete for :command without -nargs.
+Solution: Give an error. (Martin Tournoij, closes #8544, closes #8541)
+Files: src/usercmd.c, src/errors.h, src/testdir/test_usercommands.mnv
+
+Patch 8.2.3142
+Problem: MNV9: type check for has_key() argument is too strict.
+Solution: Also allow for a number key argument. (closes #8542)
+Files: src/evalfunc.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3143
+Problem: MNV9: A lambda may be compiled with the wrong context if it is
+ called from a profiled function.
+Solution: Compile the lambda with and without profiling. (closes #8543)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3144
+Problem: MNV9: no error when using an invalid value for a line number.
+Solution: Give an error if the string value is not recognized.
+ (closes #8536)
+Files: src/errors.h, src/eval.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3145
+Problem: MNV9: profile test fails without profile feature.
+Solution: Check the profile feature is present.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3146
+Problem: MNV9: line number wrong for :execute argument.
+Solution: Use the line number of the :execute command itself. (closes #8537)
+Files: src/eval.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3147
+Problem: MNV9: profiling does not work with a nested function.
+Solution: Also compile a nested function without profiling. (closes #8543)
+ Handle that compiling may cause the table of compiled functions to
+ change.
+Files: src/mnv9compile.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3148
+Problem: MNV9: function arg type check does not handle base offset.
+Solution: Take the base offset into account when checking builtin function
+ argument types.
+Files: src/evalfunc.c, src/mnv9compile.c,
+ src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3149 (after 8.2.3141)
+Problem: Some plugins have a problem with the error check for using
+ :command with -complete but without -nargs.
+Solution: In legacy script only give a warning message.
+Files: src/usercmd.c, src/message.c, src/proto/message.pro,
+ src/testdir/test_usercommands.mnv
+
+Patch 8.2.3150
+Problem: MNV9: argument types are not checked at compile time.
+Solution: Add more type checks. (Yegappan Lakshmanan, closes #8545)
+Files: src/evalfunc.c, src/testing.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3151
+Problem: MNV9: profiling fails if nested function is also profiled.
+Solution: Use the compile type from the outer function. (closes #8543)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3152
+Problem: MNV9: accessing "s:" results in an error.
+Solution: Do not try to lookup a script variable for "s:". (closes #8549)
+Files: src/evalvars.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.3153
+Problem: URLs with a dash in the scheme are not recognized.
+Solution: Allow for a scheme with a dash, but not at the start or end.
+ (Tsuyoshi CHO, closes #8299)
+Files: src/misc1.c, src/testdir/test_buffer.mnv
+
+Patch 8.2.3154
+Problem: MNV9: some type checks for builtin functions fail.
+Solution: Correct the type checks. (Yegappan Lakshmanan, closes #8551,
+ closes #8550)
+Files: src/evalfunc.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3155
+Problem: Some option related code not covered by tests.
+Solution: Add a few test cases. (Dominique Pellé, closes #8552)
+Files: src/testdir/test_options.mnv, src/testdir/test_set.mnv
+
+Patch 8.2.3156
+Problem: MNV9: term_getansicolors() test fails without +termguicolors.
+Solution: Add a check for the feature. (Dominique Pellé, closes #8555)
+Files: src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3157
+Problem: Crypt test may fail on MS-Windows.
+Solution: Ignore "[unix]" in the file message. (Christian Brabandt,
+ closes #8561)
+Files: src/testdir/test_crypt.mnv
+
+Patch 8.2.3158
+Problem: Strange error message when using islocked() with a number.
+ (Yegappan Lakshmanan)
+Solution: Check that the name is empty.
+Files: src/evalfunc.c, src/testdir/test_functions.mnv
+
+Patch 8.2.3159
+Problem: Cursor displayed in wrong position after deleting line.
+Solution: When deleting lines do not approximate botline. (fixes #8559)
+Files: src/change.c
+
+Patch 8.2.3160
+Problem: 'breakindent' does not work well for bulleted and numbered lists.
+Solution: Add the "list" entry to 'breakindentopt'. (Christian Brabandt,
+ closes #8564, closes #1661)
+Files: runtime/doc/options.txt, src/indent.c, src/structs.h,
+ src/testdir/test_breakindent.mnv
+
+Patch 8.2.3161
+Problem: MNV9: no error when reltime() has invalid arguments.
+Solution: Add an error. (closes #8562)
+Files: src/time.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3162
+Problem: MNV9: argument types are not checked at compile time.
+Solution: Add more type checks. (Yegappan Lakshmanan, closes #8560)
+Files: runtime/doc/channel.txt, src/clientserver.c, src/cmdhist.c,
+ src/errors.h, src/evalfunc.c, src/evalwindow.c, src/filepath.c,
+ src/globals.h, src/popupwin.c, src/proto/typval.pro, src/sign.c,
+ src/strings.c, src/terminal.c, src/testdir/test_normal.mnv,
+ src/testdir/test_reltime.mnv, src/testdir/test_mnv9_builtin.mnv,
+ src/testdir/test_mnv9_expr.mnv, src/testing.c, src/textprop.c,
+ src/time.c, src/typval.c
+
+Patch 8.2.3163
+Problem: Location list window may open a wrong file.
+Solution: Also update the qf_ptr field. (Wei-Chung Wen, closes #8565,
+ closes #8566)
+Files: src/quickfix.c, src/testdir/test_quickfix.mnv
+
+Patch 8.2.3164
+Problem: MS-Windows: reported version lacks patchlevel, causing some update
+ tools to update too often. (Klaus Frank)
+Solution: Add the patchlevel to the version. (Christian Brabandt)
+Files: src/dosinst.c
+
+Patch 8.2.3165
+Problem: MNV9: in a || expression the error line number may be wrong.
+Solution: Save and restore the line number when checking the type.
+ (closes #8569)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.3166
+Problem: MNV9: nested autoload call error overruled by "Unknown error".
+Solution: Check need_rethrow before giving an "Unknown error".
+ (closes #8568)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3167
+Problem: Get E12 in a job callback when searching for tags. (Andy Stewart)
+Solution: Use the sandbox only for executing a command, not for searching.
+ (closes #8511)
+Files: src/tag.c
+
+Patch 8.2.3168
+Problem: MNV9: type error for constant of type any.
+Solution: Do add a runtime type check if a constant has type any.
+ (closes #8570)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.3169
+Problem: MNV9: cannot handle nested inline function.
+Solution: Check for nested inline function. (closes #8575)
+Files: src/userfunc.c, src/testdir/test_mnv9_func.mnv,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.3170
+Problem: Illegal memory access in test.
+Solution: Check pointer is not before the start of the line.
+Files: src/userfunc.c
+
+Patch 8.2.3171
+Problem: Another illegal memory access in test.
+Solution: Check pointer is after the start of the line.
+Files: src/userfunc.c
+
+Patch 8.2.3172
+Problem: MzScheme test fails. (Christian Brabandt)
+Solution: Correct function name.
+Files: src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3173
+Problem: MNV9: argument types are not checked at compile time.
+Solution: Add more type checks. (Yegappan Lakshmanan, closes #8581)
+Files: src/diff.c, src/errors.h, src/evalfunc.c, src/globals.h,
+ src/job.c, src/proto/typval.pro, src/strings.c, src/terminal.c,
+ src/testdir/test_mnv9_builtin.mnv, src/typval.c
+
+Patch 8.2.3174
+Problem: MNV9: "legacy undo" finds "undo" variable.
+Solution: Do not pass lookup function to find_ex_command(). (closes #8563)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.3175
+Problem: MNV9: using illegal pointer with inline function inside a lambda.
+Solution: Clear eval_tofree_cmdline when advancing to the next line.
+ (closes #8578)
+Files: src/eval.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.3176
+Problem: MNV9: no type error for comparing number with string.
+Solution: Add a runtime type check. (closes #8571)
+Files: src/typval.c, src/errors.h, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.3177
+Problem: MNV9: can not use "for _ in expr" at script level.
+Solution: Skip assignment if the loop variable is "_".
+Files: src/eval.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3178
+Problem: MNV9: the file name of an :import cannot be an expression.
+Solution: Accept an expression that results in a string. Do not support
+ :import in a function.
+Files: runtime/doc/mnv9.txt, src/mnv9script.c, src/mnv9compile.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3179
+Problem: MNV9: cannot assign to an imported variable at script level.
+Solution: Lookup imported items when assigning.
+Files: src/evalvars.c, src/errors.h, src/eval.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3180
+Problem: MNV9: memory leak when concatenating to an imported string.
+Solution: Clear the destination.
+Files: src/evalvars.c
+
+Patch 8.2.3181
+Problem: MNV9: builtin function test fails without channel feature.
+Solution: Add feature checks. (Dominique Pellé, closes #8586) Make feature
+ checks more consistent.
+Files: src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3182
+Problem: MNV9: crash when using removing items from a constant list.
+ (Yegappan Lakshmanan)
+Solution: When a list was allocated with items copy them.
+Files: src/list.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3183
+Problem: Duplicate error numbers.
+Solution: Adjust the error numbers.
+Files: src/errors.h, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3184
+Problem: Cannot add a digraph with a leading space. It is not easy to list
+ existing digraphs.
+Solution: Add setdigraph(), setdigraphlist(), getdigraph() and
+ getdigraphlist(). (closes #8580)
+Files: runtime/doc/digraph.txt, runtime/doc/eval.txt,
+ runtime/doc/usr_41.txt, src/digraph.c, src/evalfunc.c,
+ src/ex_docmd.c, src/globals.h, src/errors.h,
+ src/proto/digraph.pro, src/testdir/test_digraph.mnv
+
+Patch 8.2.3185
+Problem: MNV9: start of inline function found in comment line.
+Solution: Do not check for inline function in comment line. (closes #8589)
+Files: src/userfunc.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.3186
+Problem: MNV9: not all failures for import tested
+Solution: Test more import failures
+Files: src/errors.h, src/evalvars.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3187
+Problem: MNV9: popup timer callback is not compiled.
+Solution: Compile the callback when creating the timer.
+Files: src/mnv9compile.c, src/proto/mnv9compile.pro, src/popupwin.c
+
+Patch 8.2.3188
+Problem: MNV9: argument types are not checked at compile time.
+Solution: Add several more type checks, also at runtime. (Yegappan
+ Lakshmanan, closes #8587)
+Files: src/blob.c, src/channel.c, src/clientserver.c, src/cmdexpand.c,
+ src/cmdhist.c, src/dict.c, src/diff.c, src/errors.h, src/eval.c,
+ src/evalbuffer.c, src/evalfunc.c, src/evalvars.c,
+ src/evalwindow.c, src/filepath.c, src/globals.h, src/insexpand.c,
+ src/job.c, src/list.c, src/map.c, src/match.c,
+ src/proto/typval.pro, src/quickfix.c, src/search.c, src/sign.c,
+ src/strings.c, src/terminal.c, src/testdir/test_blob.mnv,
+ src/testdir/test_gui.mnv, src/testdir/test_mnv9_builtin.mnv,
+ src/testing.c, src/textprop.c, src/time.c, src/typval.c
+
+Patch 8.2.3189
+Problem: MNV9: error when using "try|".
+Solution: Allow for "|" right after a command.
+Files: src/ex_docmd.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3190
+Problem: Error messages are spread out.
+Solution: Move error messages to errors.h and give them a clear name.
+Files: src/globals.h, src/errors.h, src/buffer.c, src/debugger.c,
+ src/digraph.c, src/edit.c, src/ex_cmds.c, src/ex_cmds2.c,
+ src/ex_docmd.c, src/ex_eval.c, src/gui.c, src/list.c, src/main.c,
+ src/map.c, src/match.c, src/quickfix.c, src/regexp.c,
+ src/regexp_bt.c, src/regexp_nfa.c, src/register.c, src/search.c,
+ src/session.c, src/spell.c, src/syntax.c, src/time.c,
+ src/userfunc.c, src/mnv9execute.c, src/window.c
+
+Patch 8.2.3191
+Problem: MNV9: not enough code is tested.
+Solution: Use CheckLegacyAndMNV9Success() in more places. Fix uncovered
+ problems.
+Files: src/mnv9compile.c, src/mnv9execute.c,
+ src/testdir/test_listdict.mnv
+
+Patch 8.2.3192 (after 8.2.3190)
+Problem: Build failure with small version (Tony Mechelynck).
+Solution: Remove stray #ifdef.
+Files: src/errors.h
+
+Patch 8.2.3193
+Problem: screenpos() is wrong when the last line is partially visible and
+ 'display' is "lastline".
+Solution: Also compute the position for a partially visible line.
+ (closes #8599)
+Files: src/move.c, src/testdir/test_cursor_func.mnv
+
+Patch 8.2.3194
+Problem: MNV9: argument types are not checked at compile time.
+Solution: Add several more type checks, simplify some. (Yegappan
+ Lakshmanan, closes #8598)
+Files: src/diff.c, src/evalbuffer.c, src/evalfunc.c, src/job.c,
+ src/proto/typval.pro, src/sign.c, src/terminal.c,
+ src/testdir/test_mnv9_builtin.mnv, src/typval.c
+
+Patch 8.2.3195
+Problem: MNV9: unclear error when passing too many arguments to lambda.
+Solution: Pass the expression itself instead of "[expression]".
+ (closes #8604)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.3196
+Problem: MNV9: bool expression with numbers only fails at runtime.
+Solution: Check constant to be bool at compile time. (closes #8603)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.3197
+Problem: Error messages are spread out.
+Solution: Move a few more error messages to errors.h.
+Files: src/globals.h, src/errors.h, src/edit.c, src/ex_cmds.c,
+ src/ex_docmd.c, src/evalvars.c, src/option.c, src/quickfix.c,
+ src/regexp_bt.c, src/regexp_nfa.c, src/regexp.c, src/undo.c,
+ src/mnv9compile.c, src/mnv9script.c
+
+Patch 8.2.3198
+Problem: Cannot use 'formatlistpat' for breakindent.
+Solution: Use a negative list indent. (Maxim Kim, closes #8594)
+Files: runtime/doc/options.txt, src/indent.c,
+ src/testdir/test_breakindent.mnv
+
+Patch 8.2.3199
+Problem: MNV9: execution speed can be improved.
+Solution: Make the break counter static.
+Files: src/mnv9execute.c
+
+Patch 8.2.3200
+Problem: MNV9: hard to guess where a type error is given.
+Solution: Add the function name where possible. (closes #8608)
+Files: src/dict.c, src/proto/dict.pro, src/eval.c, src/list.c,
+ src/mnv9compile.c, src/mnv9execute.c, src/structs.h,
+ src/mnv9type.c, src/proto/mnv9type.pro, src/if_py_both.h,
+ src/errors.h, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3201 (after 8.2.3200)
+Problem: Crash in test.
+Solution: Initialize "where".
+Files: src/eval.c, src/evalvars.c
+
+Patch 8.2.3202
+Problem: MNV9: tests are only executed for legacy script.
+Solution: Run more tests also for MNV9 script. Fix uncovered problems.
+Files: src/mnv9execute.c, src/ex_docmd.c, src/testdir/test_listdict.mnv
+
+Patch 8.2.3203
+Problem: MNV9: compiled string expression causes type error. (Yegappan
+ Lakshmanan)
+Solution: Remove the string type from the stack.
+Files: src/mnv9compile.c, src/evalfunc.c
+
+Patch 8.2.3204
+Problem: Display garbled when 'cursorline' is set and lines wrap. (Gabriel
+ Dupras)
+Solution: Avoid inserting lines twice. (closes #7255)
+Files: src/drawscreen.c, src/testdir/test_cursorline.mnv,
+ src/testdir/dumps/Test_cursorline_redraw_1.dump,
+ src/testdir/dumps/Test_cursorline_redraw_2.dump
+
+Patch 8.2.3205
+Problem: Coverity reports a null pointer dereference.
+Solution: Change the logic to avoid Coverity gets confused.
+Files: src/mnv9compile.c
+
+Patch 8.2.3206
+Problem: MNV9: argument types are not checked at compile time.
+Solution: Add several more type checks. (Yegappan Lakshmanan, closes #8611)
+Files: runtime/doc/eval.txt, src/blob.c, src/cmdhist.c, src/dict.c,
+ src/errors.h, src/evalfunc.c, src/filepath.c, src/globals.h,
+ src/job.c, src/list.c, src/match.c, src/misc1.c, src/popupwin.c,
+ src/proto/typval.pro, src/sign.c, src/terminal.c,
+ src/testdir/test_blob.mnv, src/testdir/test_mnv9_builtin.mnv,
+ src/typval.c
+
+Patch 8.2.3207
+Problem: MNV9: crash when compiling string fails. (Yegappan Lakshmanan)
+Solution: Adjust the type stack length.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3208
+Problem: Dynamic library load error does not mention why it failed.
+Solution: Add the error message. (Martin Tournoij, closes #8621)
+Files: src/globals.h, src/if_cscope.c, src/if_lua.c, src/if_mzsch.c,
+ src/if_perl.xs, src/if_python.c, src/if_python3.c, src/if_ruby.c,
+ src/if_tcl.c, src/mbyte.c, src/os_win32.c, src/proto/os_win32.pro,
+ src/terminal.c
+
+Patch 8.2.3209
+Problem: MNV9: lambda doesn't find block-local variable.
+Solution: Adjust how a script-local variable is found. (closes #8614)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.3210
+Problem: MNV9: searchpair() sixth argument is compiled. (Yegappan
+ Lakshmanan)
+Solution: Only compile the fifth argument.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3211
+Problem: MNV9: argument types are not checked at compile time.
+Solution: Add several more type checks. Fix type check for matchaddpos().
+ (Yegappan Lakshmanan, closes #8619)
+Files: src/channel.c, src/evalfunc.c, src/evalvars.c, src/if_cscope.c,
+ src/job.c, src/proto/typval.pro,
+ src/testdir/test_mnv9_builtin.mnv, src/time.c, src/typval.c
+
+Patch 8.2.3212
+Problem: MNV9: execution speed can be improved.
+Solution: Use __builtin_expect() to have the compiler produce better code.
+ (Dominique Pellé, closes #8613)
+Files: src/mnv9execute.c
+
+Patch 8.2.3213
+Problem: NOCOMPOUNDSUGS entry in spell file not tested.
+Solution: Add a test. (Dominique Pellé, closes #8624)
+Files: src/testdir/test_spellfile.mnv
+
+Patch 8.2.3214
+Problem: MS-Windows: passing /D does not set the install location.
+Solution: Adjust how the installer uses $MNV. Update the documentation.
+ (Christian Brabandt, Ken Takata, closes #8605)
+Files: nsis/gmnv.nsi, runtime/doc/os_win32.txt
+
+Patch 8.2.3215
+Problem: MNV9: argument types are not checked at compile time.
+Solution: Add several more type checks. Sort the argument lists.
+ (Yegappan Lakshmanan, closes #8626)
+Files: src/change.c, src/evalfunc.c, src/filepath.c, src/sound.c,
+ src/testdir/test_gui.mnv, src/testdir/test_mnv9_builtin.mnv,
+ src/testing.c
+
+Patch 8.2.3216
+Problem: MNV9: crash when using variable in a loop at script level.
+Solution: Do not clear the variable if a function was defined.
+ Do not create a new entry in sn_var_vals every time.
+ (closes #8628)
+Files: src/eval.c, src/ex_eval.c, src/mnv9script.c, src/userfunc.c,
+ src/evalvars.c, src/structs.h
+
+Patch 8.2.3217 (after 8.2.3216)
+Problem: Build failure.
+Solution: Add missing changes.
+Files: src/globals.h
+
+Patch 8.2.3218
+Problem: When using xchacha20 crypt undo file is not removed.
+Solution: Reset 'undofile' and delete the file. (Christian Brabandt,
+ closes #8630, closes #8467)
+Files: src/bufwrite.c, src/crypt.c, src/proto/undo.pro,
+ src/testdir/test_crypt.mnv, src/undo.c
+
+Patch 8.2.3219
+Problem: :find searches non-existing directories.
+Solution: Check the path is not "..". Update help. (Christian Brabandt,
+ closes #8612, closes #8533)
+Files: runtime/doc/editing.txt, src/findfile.c,
+ src/testdir/test_findfile.mnv
+
+Patch 8.2.3220
+Problem: Test_term_setansicolors() fails in some configurations.
+Solution: Check available features. (Dominique Pellé, closes #8636)
+Files: src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3221
+Problem: MNV9: argument types are not checked at compile time.
+Solution: Add several more type checks. (Yegappan Lakshmanan, closes #8632)
+Files: src/evalfunc.c, src/popupwin.c, src/proto/typval.pro,
+ src/testdir/test_assert.mnv, src/testdir/test_mnv9_builtin.mnv,
+ src/testdir/test_mnv9_script.mnv, src/testing.c, src/typval.c
+
+Patch 8.2.3222
+Problem: MNV9: cannot use loop variable later as lambda argument.
+Solution: When not in function context check the current block ID.
+ (closes #8637)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.3223
+Problem: MNV: using {} block in autoloaded omnifunc fails.
+Solution: Allow using {} block when text is locked. (closes #8631)
+Files: src/ex_cmds.h, src/testdir/test_ins_complete.mnv
+
+Patch 8.2.3224
+Problem: Cannot call script-local function after :mnv9cmd. (Christian J.
+ Robinson)
+Solution: Skip over "<SNR>123".
+Files: src/mnv9compile.c, src/eval.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.3225
+Problem: Incsearch highlighting is attempted halfway a mapping.
+Solution: Only do incsearch highlighting if keys were typed or there is no
+ more typeahead.
+Files: src/ex_getln.c
+
+Patch 8.2.3226
+Problem: New digraph functions use old naming scheme.
+Solution: Use the digraph_ prefix. (Hirohito Higashi, closes #8642)
+Files: runtime/doc/digraph.txt, runtime/doc/eval.txt,
+ runtime/doc/usr_41.txt, src/digraph.c, src/edit.c, src/errors.h,
+ src/evalfunc.c, src/proto/digraph.pro,
+ src/testdir/test_digraph.mnv
+
+Patch 8.2.3227
+Problem: 'virtualedit' can only be set globally.
+Solution: Make 'virtualedit' global-local. (Gary Johnson, closes #8638)
+Files: runtime/doc/options.txt, src/buffer.c, src/change.c,
+ src/drawscreen.c, src/edit.c, src/misc2.c, src/normal.c,
+ src/ops.c, src/option.c, src/option.h, src/optiondefs.h,
+ src/optionstr.c, src/proto/option.pro, src/register.c,
+ src/structs.h, src/testdir/test_virtualedit.mnv
+
+Patch 8.2.3228
+Problem: Cannot use a simple block for the :command argument. (Maarten
+ Tournoij)
+Solution: Recognize a simple {} block. (issue #8623)
+Files: runtime/doc/map.txt, src/misc2.c, src/proto/misc2.pro,
+ src/usercmd.c, src/testdir/test_usercommands.mnv
+
+Patch 8.2.3229
+Problem: MNV9: runtime and compile time type checks are not the same.
+Solution: Add more runtime type checks for builtin functions. (Yegappan
+ Lakshmanan, closes #8646)
+Files: src/arglist.c, src/change.c, src/channel.c, src/cindent.c,
+ src/clientserver.c, src/cmdhist.c, src/dict.c, src/diff.c,
+ src/digraph.c, src/errors.h, src/eval.c, src/evalbuffer.c,
+ src/evalfunc.c, src/evalwindow.c, src/ex_docmd.c, src/ex_getln.c,
+ src/filepath.c, src/findfile.c, src/float.c, src/fold.c,
+ src/getchar.c, src/indent.c, src/insexpand.c, src/job.c,
+ src/json.c, src/list.c, src/mark.c, src/match.c, src/mbyte.c,
+ src/menu.c, src/misc1.c, src/move.c, src/popupwin.c,
+ src/proto/typval.pro, src/quickfix.c, src/search.c, src/sign.c,
+ src/sound.c, src/strings.c, src/terminal.c,
+ src/testdir/test_assert.mnv, src/testdir/test_blob.mnv,
+ src/testdir/test_execute_func.mnv,
+ src/testdir/test_float_func.mnv, src/testdir/test_functions.mnv,
+ src/testdir/test_glob2regpat.mnv, src/testdir/test_listdict.mnv,
+ src/testdir/test_mnv9_builtin.mnv,
+ src/testdir/test_mnv9_script.mnv, src/testing.c, src/textprop.c,
+ src/time.c, src/typval.c, src/undo.c
+
+Patch 8.2.3230
+Problem: MNV9: type error when function return type is not known yet.
+Solution: When return type is unknown, use "any". (closes #8644)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3231
+Problem: Build failure with small features.
+Solution: Adjust #ifdef.
+Files: src/errors.h
+
+Patch 8.2.3232 (after 8.2.3229)
+Problem: system() does not work without a second argument.
+Solution: Do not require a second argument. (Yegappan Lakshmanan,
+ closes #8651, closes #8650)
+Files: src/misc1.c, src/proto/typval.pro,
+ src/testdir/test_mnv9_builtin.mnv, src/typval.c
+
+Patch 8.2.3233
+Problem: prop_list() and prop_find() do not indicate the buffer for the
+ used type.
+Solution: Add "type_bufnr" to the results. (closes #8647)
+Files: runtime/doc/textprop.txt, src/testdir/test_textprop.mnv,
+ src/textprop.c
+
+Patch 8.2.3234
+Problem: Crash when printing long string with Lua.
+Solution: Remove lua_pop(). (Martin Tournoij, closes #8648)
+Files: src/if_lua.c, src/testdir/test_lua.mnv
+
+Patch 8.2.3235
+Problem: Cannot use lambda in {} block in user command. (Martin Tournoij)
+Solution: Do not go over the end of the lambda.
+Files: src/userfunc.c, src/testdir/test_usercommands.mnv
+
+Patch 8.2.3236
+Problem: mode() does not indicate using CTRL-O in Select mode.
+Solution: Use "vs" and similar. (closes #8640)
+Files: runtime/doc/eval.txt, src/globals.h, src/misc1.c, src/normal.c,
+ src/testdir/test_functions.mnv
+
+Patch 8.2.3237
+Problem: When a builtin function gives an error processing continues.
+Solution: In MNV9 script return FAIL in get_func_tv().
+Files: src/userfunc.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.3238
+Problem: MNV9: error message does not indicate the location.
+Solution: Add the relevant text. (issue #8634)
+Files: src/errors.h, src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.3239
+Problem: MNV9: no error using heredoc for a number variable.
+Solution: Add a type check. (closes #8627)
+Files: src/mnv9compile.c, src/evalvars.c,
+ src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.3240
+Problem: Lua print() does not work properly.
+Solution: Put back lua_pop().
+Files: src/if_lua.c, src/testdir/test_lua.mnv
+
+Patch 8.2.3241
+Problem: MNV9: memory leak when function reports an error.
+Solution: Clear the return value.
+Files: src/userfunc.c
+
+Patch 8.2.3242
+Problem: MNV9: valgrind reports leaks in builtin function test.
+Solution: Do not start a job.
+Files: src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3243
+Problem: MS-Windows: the "edit with multiple MNV" choice is not that
+ useful.
+Solution: Change it to "Edit with multiple tabs". (Michael Soyka,
+ closes #8645)
+Files: src/GmnvExt/gmnvext.cpp, src/GmnvExt/gmnvext.h
+
+Patch 8.2.3244
+Problem: Lua 5.3 print() with a long string crashes.
+Solution: Use a growarray instead of a Lua buffer. (Yegappan Lakshmanan,
+ closes #8655)
+Files: src/if_lua.c, src/misc2.c, src/proto/misc2.pro
+
+Patch 8.2.3245
+Problem: The crypt key may appear in a swap partition.
+Solution: When using xchacha20 use sodium_mlock(). (Christian Brabandt,
+ closes #8657)
+Files: src/buffer.c, src/crypt.c, src/errors.h, src/fileio.c,
+ src/memline.c, src/mnv.h
+
+Patch 8.2.3246
+Problem: Memory use after free.
+Solution: When clearing a string option set the pointer to "empty_option".
+Files: src/option.c
+
+Patch 8.2.3247
+Problem: Using uninitialized memory when checking for crypt method.
+Solution: Check the header length before using the salt and seed.
+Files: src/fileio.c
+
+Patch 8.2.3248
+Problem: MNV9: error message for wrong input uses wrong line number.
+Solution: Use the line number of the start of the command. (issue #8653)
+Files: src/mnv9script.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3249
+Problem: MNV9: error for re-imported function with default argument.
+Solution: Do not check argument type if it is still unknown. (closes #8653)
+Files: src/mnv9type.c, src/proto/mnv9type.pro, src/mnv9script.c,
+ src/mnv.h, src/eval.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3250
+Problem: MS-Windows: cannot build with libsodium.
+Solution: Change FEAT_SODIUM into HAVE_SODIUM. (Christian Brabandt,
+ closes #8668, closes #8663)
+Files: src/Make_mvc.mak
+
+Patch 8.2.3251
+Problem: Listing builtin_gui as an available terminal is confusing.
+Solution: Do not list builtin_gui. (Christian Brabandt, closes #8669,
+ closes #8661)
+Files: src/term.c, src/testdir/test_termcodes.mnv
+
+Patch 8.2.3252
+Problem: Duplicated code for adding buffer lines.
+Solution: Move code to a common function. Also move map functions to map.c.
+ (Yegappan Lakshmanan, closes #8665)
+Files: src/evalbuffer.c, src/evalfunc.c, src/map.c, src/proto/map.pro
+
+Patch 8.2.3253
+Problem: Channel test fails randomly.
+Solution: Add a sleep after sending the "echoerr" command. (Michael Soyka)
+Files: src/testdir/test_channel.mnv, src/testdir/test_channel.py
+
+Patch 8.2.3254
+Problem: win_gettype() does not recognize a quickfix window.
+Solution: Add "quickfix" and "loclist". (Yegappan Lakshmanan, closes #8676)
+Files: runtime/doc/eval.txt, src/evalwindow.c, src/misc2.c,
+ src/testdir/test_quickfix.mnv
+
+Patch 8.2.3255
+Problem: ci" finds following string but ci< and others don't.
+Solution: When not inside an object find the start. (Connor Lane Smit,
+ closes #8670)
+Files: src/search.c, src/testdir/test_textobjects.mnv, src/textobject.c
+
+Patch 8.2.3256
+Problem: Executable test may fail on new Ubuntu system.
+Solution: Consider /usr/bin/cat and /bin/cat the same.
+Files: src/testdir/test_functions.mnv
+
+Patch 8.2.3257
+Problem: Calling prop_find() with -1 for ID gives erroneous error. (Naohiro
+ Ono)
+Solution: When passing -1 use -2. (closes #8674)
+Files: src/textprop.c, src/testdir/test_textprop.mnv
+
+Patch 8.2.3258
+Problem: Error messages have the wrong text.
+Solution: Adjust the error message.
+Files: src/errors.h, src/typval.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3259
+Problem: When 'indentexpr' causes an error the did_throw flag may remain
+ set.
+Solution: Reset did_throw and show the error. (closes #8677)
+Files: src/indent.c, src/ex_docmd.c, src/proto/ex_docmd.pro
+
+Patch 8.2.3260
+Problem: Build failure with small features.
+Solution: Add #ifdef.
+Files: src/ex_docmd.c
+
+Patch 8.2.3261
+Problem: MNV9: when compiling repeat(123, N) return type is number.
+Solution: Make return type a string. (closes #8664)
+Files: src/evalfunc.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3262
+Problem: Build failure when ABORT_ON_INTERNAL_ERROR is defined.
+Solution: Adjust how estack_len_before is used.
+Files: src/ex_docmd.c
+
+Patch 8.2.3263
+Problem: MNV9: "..=" does not accept same types as the ".." operator.
+Solution: Convert value to string like ".." does. (issue #8664)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_assign.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.3264 (after 8.2.3263)
+Problem: MNV9: assign test fails.
+Solution: Add missing change.
+Files: src/eval.c
+
+Patch 8.2.3265
+Problem: Smartcase does not work correctly in very magic pattern.
+Solution: Take the magicness into account when skipping over regexp items.
+ (Christian Brabandt, closes #8682, closes #7845)
+Files: src/search.c, src/testdir/test_search.mnv
+
+Patch 8.2.3266
+Problem: MNV9: assignment with two indexes may check next line.
+Solution: Limit the number of lines to avoid checking the next line when
+ assigning to a LHS subscript. (closes #8660)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.3267
+Problem: MNV9: crash when disassembling a function that uses a deleted
+ script variable.
+Solution: Check the variable still exists. (closes #8683)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.3268
+Problem: Cannot use a block with :autocmd like with :command.
+Solution: Add support for a {} block after :autocmd. (closes #8620)
+Files: runtime/doc/autocmd.txt, runtime/doc/map.txt, src/autocmd.c,
+ src/proto/autocmd.pro, src/usercmd.c, src/proto/usercmd.pro,
+ src/ex_docmd.c, src/mnv.h, src/testdir/test_autocmd.mnv
+
+Patch 8.2.3269
+Problem: MNV9: wrong argument check for partial. (Naohiro Ono)
+Solution: Handle getting return type without arguments. Correct the minimal
+ number of arguments for what is included in the partial.
+ (closes #8667)
+Files: src/evalfunc.c, src/mnv9type.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.3270
+Problem: prop_find() finds property with ID -2.
+Solution: Use a separate flag to indicate an ID was specified. (issue #8674)
+Files: src/textprop.c
+
+Patch 8.2.3271
+Problem: MNV9: cannot use :command or :au with a block in a :def function.
+Solution: Recognize the start of the block.
+Files: src/userfunc.c, src/usercmd.c, src/ex_docmd.c,
+ src/proto/ex_docmd.pro, src/mnv9compile.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3272
+Problem: Cannot use id zero with prop_find(). (Naohiro Ono)
+Solution: Also accept id zero.
+Files: src/textprop.c, src/testdir/test_textprop.mnv
+
+Patch 8.2.3273
+Problem: Autocmd test fails.
+Solution: Require white space before the "{" that starts a block.
+Files: src/userfunc.c
+
+Patch 8.2.3274
+Problem: Macro for printf format check can be simplified.
+Solution: Add ATTRIBUTE_FORMAT_PRINTF(). (Dominique Pellé, issue #8635)
+Files: src/channel.c, src/gui_xim.c, src/if_mzsch.c, src/nbdebug.c,
+ src/nbdebug.h, src/netbeans.c, src/proto.h, src/term.c, src/mnv.h,
+ src/mnv9execute.c
+
+Patch 8.2.3275
+Problem: Optimizer can use hints about ga_grow() normally succeeding.
+Solution: Use GA_GROW_FAILS() and GA_GROW_OK() in several places. (Dominique
+ Pellé, issue #8635)
+Files: src/arglist.c, src/macros.h, src/mnv9execute.c, src/mnv9compile.c
+
+Patch 8.2.3276
+Problem: MNV9: exists() can only be evaluated at runtime.
+Solution: Evaluate at compile time for option name literals. (closes #8437)
+Files: src/mnv9compile.c, src/evalfunc.c, src/proto/evalfunc.pro,
+ src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3277 (after 8.2.3276)
+Problem: MNV9: compiled has() does not work properly.
+Solution: Fix check for has() vs exists().
+Files: src/mnv9compile.c
+
+Patch 8.2.3278
+Problem: MNV9: error when adding 1 to float.
+Solution: Accept t_number_bool. (closes #8687)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.3279
+Problem: MNV9: cannot use block in cmdline window.
+Solution: Add EX_CMDWIN to the CMD_block flags. (closes #8689)
+Files: src/ex_cmds.h, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.3280
+Problem: 'virtualedit' local to buffer is not the best solution.
+Solution: Make it window-local. (Gary Johnson, closes #8685)
+Files: runtime/doc/options.txt, src/buffer.c, src/drawscreen.c,
+ src/ops.c, src/option.c, src/option.h, src/optionstr.c,
+ src/structs.h, src/testdir/test_virtualedit.mnv
+
+Patch 8.2.3281
+Problem: MNV9: TODO items in tests can be taken care of.
+Solution: Update test for now working functionality. (closes #8694)
+Files: src/testdir/test_mnv9_assign.mnv, src/testdir/test_mnv9_func.mnv,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3282
+Problem: MNV9: error about using -complete without -nargs is confusing.
+Solution: Change the wording.
+Files: src/usercmd.c, src/errors.h
+
+Patch 8.2.3283
+Problem: Julia filetype is not recognized
+Solution: Add filetype detection. (Christian Clason, closes #8700)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.3284
+Problem: No error for insert() or remove() changing a locked blob.
+Solution: Check a blob is not locked before changing it. (Sean Dewar,
+ closes #8696)
+Files: src/blob.c, src/errors.h, src/eval.c, src/list.c,
+ src/proto/blob.pro, src/testdir/test_blob.mnv,
+ src/testdir/test_eval_stuff.mnv
+
+Patch 8.2.3285
+Problem: Scdoc filetype is not recognized.
+Solution: Add filetype detection. (Gregory Anders, closes #8701)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.3286
+Problem: win_enter_ext() has too many boolean arguments.
+Solution: use one flags argument with defined values.
+Files: src/window.c
+
+Patch 8.2.3287
+Problem: Channel events not handled in BufEnter autocommand.
+Solution: Decrement dont_parse_messages earlier. (Tim Pope, closes #8697)
+Files: src/window.c, src/testdir/test_channel.mnv
+
+Patch 8.2.3288
+Problem: Cannot easily access namespace dictionaries from Lua.
+Solution: Add mnv.g, mnv.b, etc. (Yegappan Lakshmanan, closes #8693,
+ from NeoMNV)
+Files: runtime/doc/if_lua.txt, src/if_lua.c, src/testdir/test_lua.mnv
+
+Patch 8.2.3289 (after 8.2.3287)
+Problem: Compiler warning for unused variable with small features.
+Solution: Rearrange #ifdefs.
+Files: src/window.c
+
+Patch 8.2.3290
+Problem: MNV9: compiling dict may use pointer after free and leak memory on
+ failure.
+Solution: Pass a pointer to generate_PUSHS(). (Zdenek Dohnal, closes #8699)
+Files: src/mnv9compile.c
+
+Patch 8.2.3291
+Problem: Coverity warns for not checking return value.
+Solution: If dict_add() fails give an error message.
+Files: src/if_lua.c, src/testdir/test_lua.mnv
+
+Patch 8.2.3292
+Problem: Underscore in very magic pattern causes a hang. Pattern with \V
+ are case sensitive. (Yutao Yuan)
+Solution: Adjust condition for magicness and advance pointer. (Christian
+ Brabandt, closes #8707, closes #8704, closes #8705)
+Files: src/search.c, src/testdir/test_search.mnv
+
+Patch 8.2.3293
+Problem: Finding completions may cause an endless loop.
+Solution: Use a better way to check coming back where the search started.
+ (Andy Gozas, closes #8672, closes #8671)
+Files: src/insexpand.c, src/testdir/Make_all.mak,
+ src/testdir/test_ins_complete_no_halt.mnv
+
+Patch 8.2.3294
+Problem: Lua: memory leak when adding dict item fails.
+Solution: Free the typval and the dict item.
+Files: src/if_lua.c
+
+Patch 8.2.3295
+Problem: 'cursorline' should not apply to 'breakindent'.
+Solution: Make 'cursorline' apply to 'breakindent' and 'showbreak'
+ consistently. (closes #8684)
+Files: src/drawline.c, src/testdir/dumps/Test_Xcursorline_19.dump,
+ src/testdir/dumps/Test_Xcursorline_20.dump,
+ src/testdir/dumps/Test_Xcursorline_21.dump,
+ src/testdir/dumps/Test_Xcursorline_22.dump,
+ src/testdir/dumps/Test_Xcursorline_23.dump,
+ src/testdir/dumps/Test_Xcursorline_24.dump,
+ src/testdir/dumps/Test_diff_with_cul_bri_01.dump,
+ src/testdir/dumps/Test_diff_with_cul_bri_02.dump,
+ src/testdir/dumps/Test_diff_with_cul_bri_03.dump,
+ src/testdir/dumps/Test_diff_with_cul_bri_04.dump,
+ src/testdir/test_cursorline.mnv, src/testdir/test_diffmode.mnv
+
+Patch 8.2.3296
+Problem: MNV9: cannot add a number to a float.
+Solution: Accept a number if the destination is a float. (closes #8703)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.3297
+Problem: Cannot use all commands inside a {} block after :command and
+ :autocmd.
+Solution: Do consider \n to separate commands. (closes #8620)
+Files: runtime/doc/map.txt, src/ex_docmd.c, src/proto/ex_docmd.pro,
+ src/ex_eval.c, src/proto/ex_eval.pro, src/eval.c, src/evalvars.c,
+ src/ex_cmds.c, src/syntax.c, src/userfunc.c, src/mnv9compile.c,
+ src/mnv9script.c, src/errors.h, src/testdir/test_autocmd.mnv,
+ src/testdir/test_usercommands.mnv
+
+Patch 8.2.3298
+Problem: Build failure with small features.
+Solution: Add #ifdef.
+Files: src/ex_docmd.c
+
+Patch 8.2.3299
+Problem: MNV9: exists() does not handle much at compile time.
+Solution: Handle variable names. (closes #8688)
+Files: src/mnv9compile.c, src/evalfunc.c,
+ src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3300
+Problem: Lua: can only execute one MNV command at a time. Not easy to get
+ the MNV version.
+Solution: Make mnv.command() accept multiple lines. Add mnv.version().
+ (Yegappan Lakshmanan, closes #8716)
+Files: runtime/doc/if_lua.txt, src/evalfunc.c, src/if_lua.c,
+ src/proto/evalfunc.pro, src/testdir/test_lua.mnv,
+ src/testdir/test_shell.mnv
+
+Patch 8.2.3301
+Problem: Memory allocation functions don't have their own place.
+Solution: Move memory allocation functions to alloc.c. (Yegappan
+ Lakshmanan, closes #8717)
+Files: Filelist, src/Make_ami.mak, src/Make_cyg_ming.mak,
+ src/Make_mvc.mak, src/Make_vms.mms, src/Makefile, src/README.md,
+ src/alloc.c, src/misc2.c, src/proto.h, src/proto/alloc.pro,
+ src/proto/misc2.pro
+
+Patch 8.2.3302
+Problem: Coverity is not run from github.
+Solution: Add a coverity script. (James McCoy, closes #8714)
+Files: .github/workflows/coverity.yml, Filelist
+
+Patch 8.2.3303
+Problem: Some structures could be smaller.
+Solution: Rearrange members to reduce size. (Dominique Pellé, closes #8725)
+Files: src/structs.h, src/mnv9.h, src/mnv9execute.c
+
+Patch 8.2.3304
+Problem: Popup window title with wide characters is truncated.
+Solution: Use mnv_strsize() instead of MB_CHARLEN(). (Naruhiko Nishino,
+ closes #8721)
+Files: src/popupwin.c, src/testdir/test_popupwin.mnv,
+ src/testdir/dumps/Test_popupwin_multibytetitle.dump
+
+Patch 8.2.3305
+Problem: MNV9: :finally in skipped block not handled correctly.
+Solution: Check whether :finally is in a skipped block. (Naruhiko Nishino,
+ closes #8724)
+Files: src/ex_eval.c, src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3306
+Problem: Unexpected "No matching autocommands".
+Solution: Do not give the message when aborting. Mention the arguments in
+ the message. (closes #8690)
+Files: src/autocmd.c,
+
+Patch 8.2.3307
+Problem: MNV9: :echoconsole cannot access local variables.
+Solution: Handle like other :echo commands. (closes #8708)
+Files: src/mnv9compile.c, src/mnv9.h, src/mnv9execute.c,
+ src/testdir/test_mnv9_script.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.3308
+Problem: MNV9: no runtime check for argument type if a function only has
+ varargs.
+Solution: Also check argument types if uf_va_type is set. (closes #8715)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.3309
+Problem: MNV9: divide by zero causes a crash.
+Solution: Give an error message. (closes #8727)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.3310
+Problem: MNV9: unpack assignment does not mention source of type error.
+Solution: Mention the argument number. (closes #8719)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_assign.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.3311
+Problem: MNV9: check for DO_NOT_FREE_CNT is very slow.
+Solution: Move to a separate function so it can be skipped by setting
+ $TEST_SKIP_PAT.
+Files: src/testdir/test_mnv9_expr.mnv, src/testdir/runtest.mnv
+
+Patch 8.2.3312
+Problem: MNV9: after "if false" line breaks in expression not skipped.
+Solution: Do parse the expression. (closes #8723)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3313
+Problem: Unused code in win_exchange() and frame_remove().
+Solution: Remove the code. (closes #8728)
+Files: src/window.c
+
+Patch 8.2.3314
+Problem: Behavior of exists() in a :def function is unpredictable.
+Solution: Add exists_compiled().
+Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/errors.h, src/mnv9compile.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3315
+Problem: Cannot use single quote in a float number for readability.
+Solution: Support single quotes like in numbers. (closes #8713)
+Files: src/typval.c, src/float.c, src/proto/float.pro, src/json.c,
+ src/mnvinfo.c, src/testdir/test_float_func.mnv
+
+Patch 8.2.3316 (after 8.2.3315)
+Problem: Float test fails.
+Solution: Add missing change.
+Files: src/evalfunc.c
+
+Patch 8.2.3317
+Problem: MNV9: No error for missing white space before return type.
+Solution: Check for white space. (closes #8733)
+Files: src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.3318
+Problem: MNV9: cannot ignore quotes in number at the command line.
+Solution: Use in_mnv9script() so that after ":mnv9" quotes are ignored.
+Files: src/typval.c, src/testdir/test_float_func.mnv
+
+Patch 8.2.3319
+Problem: Coverity action on github does not work.
+Solution: Remove undefined $SRCDIR. (James McCoy, closes #8739)
+Files: .github/workflows/coverity.yml
+
+Patch 8.2.3320
+Problem: Some local functions are not static.
+Solution: Add "static". Move snprintf() related code to strings.c.
+ (Yegappan Lakshmanan, closes #8734)
+Files: src/alloc.c, src/channel.c, src/dict.c, src/digraph.c, src/edit.c,
+ src/ex_docmd.c, src/getchar.c, src/job.c, src/list.c,
+ src/message.c, src/profiler.c, src/proto/channel.pro,
+ src/proto/dict.pro, src/proto/digraph.pro, src/proto/edit.pro,
+ src/proto/ex_docmd.pro, src/proto/getchar.pro, src/proto/job.pro,
+ src/proto/list.pro, src/proto/profiler.pro, src/proto/spell.pro,
+ src/proto/mnv9compile.pro, src/proto/mnv9script.pro,
+ src/proto/mnv9type.pro, src/spell.c, src/strings.c,
+ src/mnv9compile.c, src/mnv9script.c, src/mnv9type.c, src/window.c
+
+Patch 8.2.3321
+Problem: Some code is not tested.
+Solution: Add some more tests. (Dominique Pellé, closes #8735)
+Files: src/testdir/test_excmd.mnv, src/testdir/test_writefile.mnv
+
+Patch 8.2.3322
+Problem: MNV9: checking type of dict does not check member type.
+Solution: When getting the type of a typval use dv_type and lv_type.
+ (closes #8732)
+Files: src/mnv9type.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3323
+Problem: Help tag for exists_compiled() is wrong. (Maxim Kim)
+Solution: Adjust the help tag.
+Files: runtime/doc/eval.txt
+
+Patch 8.2.3324
+Problem: MNV9: Cannot use :silent with :endwhile.
+Solution: Allow for using the :silent modifier. (closes #8737)
+Files: src/ex_eval.c, src/ex_docmd.c, src/proto/ex_docmd.pro,
+ src/mnv9compile.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.3325
+Problem: Digraph test fails when LC_ALL is set to "C".
+Solution: When restoring 'encoding' set it to "utf-8". (closes #8742)
+Files: src/testdir/test_digraph.mnv
+
+Patch 8.2.3326
+Problem: MNV9: no error passing an empty list of the wrong type.
+Solution: Use ISN_SETTYPE also for "list<any>". (closes #8732)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.3327
+Problem: No check for sysconf() failing.
+Solution: If sysconf() fails use SIGSTKSZ for the signal stack size.
+ (Zdenek Dohnal, closes #8743)
+Files: src/os_unix.c
+
+Patch 8.2.3328
+Problem: Coverity error for not checking return value.
+Solution: Check value is not negative.
+Files: src/spellfile.c
+
+Patch 8.2.3329
+Problem: v_lock not set when getting value of environment variable.
+Solution: Set v_lock to zero.
+Files: src/typval.c
+
+Patch 8.2.3330
+Problem: Coverity reports using uninitialized field.
+Solution: Initialize the field early.
+Files: src/tag.c
+
+Patch 8.2.3331
+Problem: Coverity warns for using value without boundary check.
+Solution: Add a boundary check.
+Files: src/mnvinfo.c
+
+Patch 8.2.3332
+Problem: MNV9: cannot assign to range in list.
+Solution: Implement overwriting a list range.
+Files: src/mnv9compile.c, src/mnv9execute.c, src/list.c,
+ src/proto/list.pro, src/eval.c, src/proto/eval.pro,
+ src/testdir/test_listdict.mnv, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.3333
+Problem: MNV9: not enough tests run with MNV9.
+Solution: Run a few more tests in MNV9 script and :def function.
+Files: src/testdir/test_listdict.mnv, src/testdir/mnv9.mnv
+
+Patch 8.2.3334
+Problem: MNV9: not enough tests run with MNV9.
+Solution: Run a few more tests in MNV9 script and :def function. Fix
+ islocked(). Fix error for locking local variable.
+Files: src/evalfunc.c, src/mnv9compile.c, src/testdir/test_listdict.mnv
+
+Patch 8.2.3335
+Problem: MNV9: not enough tests run with MNV9.
+Solution: Run a few more tests in MNV9 script and :def function. Fix that
+ items(), keys() and values() return zero for a NULL dict.
+ Make join() return an empty string for a NULL list. Make sort()
+ return an empty list for a NULL list.
+Files: src/dict.c, src/list.c, src/testdir/test_listdict.mnv,
+ src/testdir/mnv9.mnv
+
+Patch 8.2.3336
+Problem: Behavior of negative index in list change changed. (Naruhiko
+ Nishino)
+Solution: Only change it for MNV9 script. (closes #8749)
+Files: src/list.c, src/testdir/test_listdict.mnv
+
+Patch 8.2.3337
+Problem: Completing "call g:" returns entries with just "g:". (Naohiro Ono)
+Solution: Skip empty strings returned by get_user_func_name(). (closes #8753)
+Files: src/evalfunc.c, src/testdir/test_cmdline.mnv
+
+Patch 8.2.3338
+Problem: MNV9: no type check when assigning a list range. (Naohiro Ono)
+Solution: Check the member type. (closes #8750)
+Files: src/list.c, src/testdir/test_listdict.mnv
+
+Patch 8.2.3339
+Problem: MNV9: cannot lock a member in a local dict.
+Solution: Get the local dict from the stack and pass it to get_lval().
+Files: src/eval.c, src/mnv9execute.c, src/mnv9compile.c, src/mnv9.h,
+ src/globals.h, src/testdir/test_mnv9_cmd.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.3340 (after 8.2.3339)
+Problem: Accessing uninitialized pointer.
+Solution: Set pointer to NULL.
+Files: src/eval.c
+
+Patch 8.2.3341
+Problem: MNV9: function call aborted despite try/catch. (Naohiro Ono)
+Solution: Ignore error caught by try/catch. (closes #8755)
+Files: src/evalvars.c, src/mnv9execute.c, src/message.c, src/time.c,
+ src/globals.h, src/testdir/mnv9.mnv, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.3342 (after 8.2.3341)
+Problem: Test for :let errors fails.
+Solution: Adjust the test and how to avoid a second error message.
+Files: src/evalvars.c, src/testdir/test_let.mnv
+
+Patch 8.2.3343 (after 8.2.3342)
+Problem: MNV9: autoload test fails.
+Solution: Adjust the way the second message is avoided
+Files: src/evalvars.c
+
+Patch 8.2.3344 (after 8.2.3343)
+Problem: MNVscript test fails.
+Solution: Have test verify first error instead of second
+Files: src/testdir/test_mnvscript.mnv
+
+Patch 8.2.3345
+Problem: Some code not covered by tests.
+Solution: Add a few more tests. (Dominique Pellé, closes #8757)
+Files: src/testdir/test_arglist.mnv, src/testdir/test_cmdline.mnv,
+ src/testdir/test_spellfile.mnv, src/testdir/test_substitute.mnv
+
+Patch 8.2.3346
+Problem: MNV9: no error for using "." for concatenation after ":mnv9cmd".
+ (Naohiro Ono)
+Solution: Check for MNV9 script syntax. (closes #8756)
+Files: src/eval.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.3347
+Problem: Check for legacy script is incomplete. (Naohiro Ono)
+Solution: Also check the :legacy modifier. Use for string concatenation
+ with "." and others (issue #8756)
+Files: src/mnv9script.c, src/proto/mnv9script.pro, src/eval.c,
+ src/typval.c, src/evalvars.c, src/errors.h, src/ex_docmd.c,
+ src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.3348
+Problem: line2byte() returns wrong value after adding textprop. (Yuto
+ Kimura)
+Solution: Reduce the length by the size of the text property. (closes #8759)
+Files: src/memline.c, src/testdir/test_textprop.mnv
+
+Patch 8.2.3349 (after 8.2.3347)
+Problem: Eval test for scriptversion fails.
+Solution: Fix off-by-one error.
+Files: src/mnv9script.c
+
+Patch 8.2.3350 (after 8.2.3348)
+Problem: Text properties test fails on MS-Windows.
+Solution: Set fileformat to unix.
+Files: src/testdir/test_textprop.mnv
+
+Patch 8.2.3351
+Problem: MNV9: using a function by name may delete it. (Naohiro Ono)
+Solution: Increment the reference count when using a function by name.
+ (closes #8760)
+Files: src/evalvars.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.3352
+Problem: MNV9: error for nested :enddef has wrong line number.
+Solution: Compute the line number.
+Files: src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.3353
+Problem: MNV9: type of argument for negate not checked at compile time.
+Solution: Add a compile time check.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_script.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.3354
+Problem: Build failure with +byte_offset but without +textprop. (John
+ Marriott)
+Solution: Adjust the #ifdef.
+Files: src/memline.c
+
+Patch 8.2.3355
+Problem: MS-Windows: compiler warning for 64-32 bit conversion.
+Solution: Add type casts.
+Files: src/memline.c
+
+Patch 8.2.3356
+Problem: Adding many text properties requires a lot of function calls.
+Solution: Add the prop_add_list() function. (Yegappan Lakshmanan,
+ closes #8751)
+Files: runtime/doc/eval.txt, runtime/doc/textprop.txt,
+ runtime/doc/usr_41.txt, src/evalfunc.c, src/proto/textprop.pro,
+ src/testdir/test_textprop.mnv, src/testdir/test_mnv9_builtin.mnv,
+ src/textprop.c
+
+Patch 8.2.3357
+Problem: Crash when 'virtualedit' is set and window is narrow.
+Solution: Check that width is not zero. (closes #8767)
+Files: src/misc2.c, src/testdir/test_number.mnv
+
+Patch 8.2.3358
+Problem: Structurizr files are not recognized.
+Solution: Recognize the file by contents. (Bastian Venthur, closes #8764)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.3359
+Problem: MNV9: error for type when variable is not set.
+Solution: Give a specific error for a NULL function. (closes #8773)
+Files: src/mnv9type.c, src/errors.h, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.3360
+Problem: User function completion fails with dict function.
+Solution: Do not stop sequencing through the list if user functions when
+ encountering an empty name. (Naohiro Ono, closes #8765,
+ closes #8774)
+Files: src/evalfunc.c, src/testdir/test_cmdline.mnv
+
+Patch 8.2.3361
+Problem: MNV9: crash with nested :while.
+Solution: Handle skipping better. (Naruhiko Nishino, closes #8778)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3362
+Problem: Buffer overflow when completing long tag name.
+Solution: Allocate the buffer dynamically. (Gregory Anders, closes #8769)
+Files: src/tag.c, src/testdir/test_tagjump.mnv
+
+Patch 8.2.3363
+Problem: When :edit reuses the current buffer the alternate file is set to
+ the same buffer.
+Solution: Only set the alternate file when not reusing the buffer.
+ (closes #8783)
+Files: src/ex_cmds.c, src/testdir/test_undo.mnv,
+ src/testdir/test_cmdline.mnv, src/testdir/test_mnv9_builtin.mnv,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3364
+Problem: MNV9: crash when :for is skipped.
+Solution: Skip more code generation. (Naruhiko Nishino, closes #8777)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3365
+Problem: MNV9: cannot use option for all operations.
+Solution: Recognize more operations. (closes #8779)
+Files: src/mnv9compile.c, src/proto/mnv9compile.pro, src/ex_docmd.c,
+ src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.3366
+Problem: MNV9: debugging elseif does not stop before condition.
+Solution: Move debug statement to after the jump. (closes #8781)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.3367
+Problem: MNV9: :@r executing a register is inconsistent.
+Solution: Use "@r" as the start of an expression. (issue #8779)
+Files: src/ex_docmd.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.3368
+Problem: Not all Racket files are recognized.
+Solution: Also recognize .rktl and .rktd files. (Doug Kearns)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.3369
+Problem: Auto formatting after "cw" leaves cursor in wrong spot.
+Solution: Do not auto-format after the delete. (closes #8789)
+Files: src/ops.c, src/testdir/test_textformat.mnv
+
+Patch 8.2.3370
+Problem: MNV9: no check for white space before type in declaration.
+ (Naohiro Ono)
+Solution: Check for white space like in a compiled function. (closes #8785)
+Files: src/eval.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.3371
+Problem: MNV9: :$ENV cannot be followed by ->func() in next line.
+Solution: Use "$ENV" as the start of an expression. (closes #8790)
+Files: src/ex_docmd.c, src/mnv9compile.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.3372
+Problem: line2byte() value wrong when adding a text property. (Yuto Kimura)
+Solution: Adjust length for text property. (closes #8772) Also fix it for
+ deleting a line.
+Files: src/memline.c, src/testdir/test_textprop.mnv
+
+Patch 8.2.3373 (after 8.2.3372)
+Problem: text property test fails on MS-Windows.
+Solution: Set fileformat to "unix"
+Files: src/testdir/test_textprop.mnv
+
+Patch 8.2.3374
+Problem: Pyret files are not recognized.
+Solution: Recognize .arr files as Pyret. (Doug Kearns)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.3375
+Problem: Using uninitialized memory.
+Solution: Initialize textprop_save_len.
+Files: src/memline.c
+
+Patch 8.2.3376
+Problem: MNV9: no warning that "@r" does not do anything.
+Solution: Give a "no effect" error. (closes #8779)
+Files: src/ex_eval.c, src/proto/ex_eval.pro, src/mnv9compile.c,
+ src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.3377
+Problem: MNV9: :disass completion does not understand "s:".
+Solution: Expand "s:" to a pattern. (closes #8780)
+Files: src/cmdexpand.c, src/testdir/test_cmdline.mnv
+
+Patch 8.2.3378
+Problem: MS-Windows: completing environment variables with % is wrong.
+Solution: Only complete environment variables with $. (Albert Liu,
+ closes #8791)
+Files: src/cmdexpand.c, src/testdir/test_cmdline.mnv
+
+Patch 8.2.3379
+Problem: Crash when using NULL job.
+Solution: Copy static string into buffer. (issue #8260)
+Files: src/job.c, src/testdir/test_channel.mnv
+
+Patch 8.2.3380
+Problem: Crash when using NULL string for funcref().
+Solution: Check for NULL argument. (issue #8260)
+Files: src/evalfunc.c, src/testdir/test_expr.mnv
+
+Patch 8.2.3381
+Problem: Crash when using NULL list with sign functions.
+Solution: Handle a NULL list like an empty list. (issue #8260)
+Files: src/globals.h, src/testdir/test_signs.mnv
+
+Patch 8.2.3382
+Problem: Crash when getting the type of a NULL partial.
+Solution: Check for NULL. (closes #8260)
+Files: src/mnv9type.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3383
+Problem: MNV9: completion for :disassemble adds parenthesis.
+Solution: Don't add parenthesis. (Naohiro Ono, closes #8802)
+Files: src/userfunc.c, src/testdir/test_cmdline.mnv
+
+Patch 8.2.3384
+Problem: Cannot disable modeline for an individual file.
+Solution: Recognize "nomodeline" in a modeline. (Hu Jialun, closes #8798)
+Files: runtime/doc/options.txt, src/buffer.c,
+ src/testdir/test_modeline.mnv
+
+Patch 8.2.3385
+Problem: Escaping for fish shell does not work properly.
+Solution: Insert a backslash before a backslash. (Jason Cox, closes #8810)
+Files: runtime/doc/eval.txt, src/strings.c, src/testdir/test_shell.mnv
+
+Patch 8.2.3386
+Problem: Using uninitialized memory.
+Solution: Initialize the rm_ic field. (Dominique Pellé, closes #8800)
+Files: src/indent.c
+
+Patch 8.2.3387
+Problem: Compiler warning for non-static function.
+Solution: Make the function static. (Dominique Pellé, closes #8816)
+Files: src/strings.c
+
+Patch 8.2.3388
+Problem: fnamemodify('path/..', ':p') differs from using 'path/../'. (David
+ Briscoe)
+Solution: Include the "/.." in the directory name. (closes #8808)
+Files: src/os_unix.c, src/testdir/test_fnamemodify.mnv
+
+Patch 8.2.3389
+Problem: Cannot stop insert mode completion without side effects.
+Solution: Add CTRL-X CTRL-Z. (closes #8821)
+Files: runtime/doc/index.txt, runtime/doc/insert.txt, src/insexpand.c,
+ src/testdir/test_ins_complete.mnv
+
+Patch 8.2.3390
+Problem: Included xdiff code is outdated.
+Solution: Sync with xdiff in git 2.33. (Christian Brabandt, closes #8431)
+Files: src/diff.c, src/xdiff/README.txt, src/xdiff/xdiff.h,
+ src/xdiff/xdiffi.c, src/xdiff/xdiffi.h, src/xdiff/xemit.c,
+ src/xdiff/xemit.h, src/xdiff/xhistogram.c, src/xdiff/xinclude.h,
+ src/xdiff/xmacros.h, src/xdiff/xpatience.c, src/xdiff/xprepare.h,
+ src/xdiff/xtypes.h, src/xdiff/xutils.c, src/xdiff/xutils.h
+
+Patch 8.2.3391
+Problem: Crash with combination of 'linebreak' and other options.
+Solution: Avoid n_extra to become negative. (Christian Brabandt,
+ closes #8817)
+Files: src/drawline.c
+
+Patch 8.2.3392
+Problem: augroup completion escapes regexp pattern characters.
+Solution: Do not escape the augroup name. (closes #8826)
+Files: src/cmdexpand.c, src/testdir/test_cmdline.mnv
+
+Patch 8.2.3393
+Problem: Escaping for fish shell is skipping some characters.
+Solution: Escape character after backslash if needed. (Jason Cox,
+ closes #8827)
+Files: src/strings.c, src/testdir/test_shell.mnv
+
+Patch 8.2.3394
+Problem: Filler lines are wrong when changing text in diff mode.
+Solution: Don't change the filler lines on every change. Check
+ scrollbinding when updating the filler lines. (closes #8809)
+Files: src/move.c, src/diff.c, src/testdir/test_diffmode.mnv,
+ src/testdir/dumps/Test_diff_scroll_change_01.dump,
+ src/testdir/dumps/Test_diff_scroll_change_02.dump
+
+Patch 8.2.3395
+Problem: MNV9: expression breakpoint not checked in :def function.
+Solution: Always compile a function for debugging if there is an expression
+ breakpoint. (closes #8803)
+Files: src/mnv9execute.c, src/proto/mnv9execute.pro, src/debugger.c,
+ src/proto/debugger.pro, src/mnv.h, src/mnv9.h,
+ src/testdir/test_debugger.mnv
+
+Patch 8.2.3396
+Problem: When libcall() fails invalid pointer may be used.
+Solution: Initialize the string to NULL. (Yasuhiro Matsumoto, closes #8829)
+Files: src/evalfunc.c
+
+Patch 8.2.3397
+Problem: No test for what 8.2.3391 fixes.
+Solution: Add a test. (Yegappan Lakshmanan, closes #8828)
+Files: src/testdir/test_breakindent.mnv
+
+Patch 8.2.3398
+Problem: Html text objects are not fully tested.
+Solution: Add tests for dbcs encoding and different number of backslashes.
+ (Dominique Pellé, closes #8831)
+Files: src/testdir/test_textobjects.mnv
+
+Patch 8.2.3399
+Problem: Octave files are not recognized.
+Solution: Detect Octave files. (Doug Kearns)
+Files: runtime/autoload/dist/ft.mnv, runtime/doc/filetype.txt,
+ runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.3400
+Problem: ":z!" is not supported.
+Solution: Make ":z!" work and add tests. (Dominique Pellé, closes #8836)
+ Use display height instead of current window height.
+Files: runtime/doc/various.txt, src/ex_cmds.h, src/ex_cmds.c,
+ src/testdir/test_ex_z.mnv
+
+Patch 8.2.3401
+Problem: MNV9: cannot use a negative count with finddir() and findfile().
+Solution: Adjust the return type. (closes #8776)
+Files: src/evalfunc.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3402
+Problem: Invalid memory access when using :retab with large value.
+Solution: Check the number is positive.
+Files: src/indent.c, src/option.c, src/optionstr.c,
+ src/testdir/test_retab.mnv
+
+Patch 8.2.3403 (after 8.2.3402)
+Problem: Memory leak for :retab with invalid argument.
+Solution: Free the memory. Make error messages consistent.
+Files: src/indent.c
+
+Patch 8.2.3404
+Problem: MNV9: no error for white space before "(".
+Solution: Give an error, like in a compiled function.
+Files: src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.3405
+Problem: Cannot have a comment line in a {} block of a user command.
+Solution: Continue after the line break. (closes #8837)
+Files: src/ex_docmd.c, src/testdir/test_usercommands.mnv
+
+Patch 8.2.3406
+Problem: On some systems tests fail without _REENTRANT. (Elimar
+ Riesebieter)
+Solution: Add -D_REENTRANT in configure. (closes #7402)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.3407
+Problem: Using uninitialized memory with "let g:['bar'] = 2".
+Solution: Initialize v_type of a new dict item.
+Files: src/dict.c
+
+Patch 8.2.3408
+Problem: Can delete a numbered function. (Naohiro Ono)
+Solution: Disallow deleting a numbered function. (closes #8760)
+Files: src/userfunc.c, src/testdir/test_user_func.mnv
+
+Patch 8.2.3409
+Problem: Reading beyond end of line with invalid utf-8 character.
+Solution: Check for NUL when advancing.
+Files: src/regexp_nfa.c, src/testdir/test_regexp_utf8.mnv
+
+Patch 8.2.3410
+Problem: Crash with linebreak, listchars and large tabstop.
+Solution: Account for different size listchars for a tab. (closes #8841)
+Files: src/drawline.c, src/testdir/test_listlbr_utf8.mnv
+
+Patch 8.2.3411
+Problem: MNV9: crash when using base name of import. (Naohiro Ono)
+Solution: Check the import flags. (closes #8843)
+Files: src/evalvars.c, src/errors.h, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3412 (after 8.2.3411)
+Problem: MNV9: importing the wrong file.
+Solution: Correct the file name. Delete the file afterwards.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3413
+Problem: MNV9: too many characters are allowed in import name.
+Solution: Disallow ':' and '#', check for white space. (closes #8845)
+Files: src/mnv9script.c, src/errors.h, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3414
+Problem: fullcommand() gives the wrong name if there is a buffer-local user
+ command. (Naohiro Ono)
+Solution: Use a separate function to get the user command name.
+ (closes #8840)
+Files: src/usercmd.c, src/proto/usercmd.pro, src/ex_docmd.c,
+ src/testdir/test_cmdline.mnv
+
+Patch 8.2.3415
+Problem: MNV9: Not all function argument types are properly checked.
+Solution: Add and improve argument type checks. (Yegappan Lakshmanan,
+ closes #8839)
+Files: src/channel.c, src/digraph.c, src/evalfunc.c, src/terminal.c,
+ src/testdir/test_digraph.mnv, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3416
+Problem: Second error is reported while exception is being thrown.
+Solution: Do not check for trailing characters when already aborting.
+ (closes #8842)
+Files: src/userfunc.c, src/testdir/test_trycatch.mnv
+
+Patch 8.2.3417
+Problem: MNV9: a failing debug expression aborts script sourcing.
+Solution: Do not let expression failure abort script sourcing. (closes #8848)
+Files: src/debugger.c, src/testdir/test_debugger.mnv
+
+Patch 8.2.3418
+Problem: Garbage collection while evaluating may cause trouble.
+Solution: Disable garbage collection while evaluating an expression.
+ (Christian Brabandt, issue #8848)
+Files: src/eval.c
+
+Patch 8.2.3419
+Problem: A failing debug expression may make MNV unusable.
+Solution: Suppress error messages. (closes #8848)
+Files: src/debugger.c, src/testdir/test_debugger.mnv
+
+Patch 8.2.3420
+Problem: _REENTRANT defined more than once.
+Solution: Fix configure script. (Christian Brabandt, closes #8852)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.3421
+Problem: A bit of code is not covered by tests.
+Solution: Add a few more test cases. (Dominique Pellé, closes #8857)
+Files: src/testdir/test_functions.mnv, src/testdir/test_history.mnv,
+ src/testdir/test_startup.mnv
+
+Patch 8.2.3422
+Problem: MNV9: no failure if return type differs from returned variable.
+Solution: Copy type when copying a list. (closes #8847)
+Files: src/list.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.3423
+Problem: MNV9: list += list creates a new list in :def function.
+Solution: Append to the existing list.
+Files: src/structs.h, src/mnv9compile.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.3424
+Problem: A sequence of spaces is hard to see in list mode.
+Solution: Add the "multispace" option to 'listchars'. (closes #8834)
+Files: runtime/doc/options.txt, src/drawline.c, src/message.c,
+ src/screen.c, src/structs.h, src/testdir/test_listchars.mnv
+
+Patch 8.2.3425
+Problem: Warning for using uninitialized variable.
+Solution: Initialize it. (John Marriott)
+Files: src/screen.c
+
+Patch 8.2.3426
+Problem: Crash when deleting a listener in a listener callback. (Naohiro
+ Ono)
+Solution: Mark the listener and delete it later. (closes #8863)
+Files: src/change.c, src/testdir/test_listener.mnv
+
+Patch 8.2.3427
+Problem: Double free when list is copied.
+Solution: Allocate the type when making a copy. (closes #8862)
+ Clear the type for flattennew(). Avoid a memory leak when
+ flattennew() fails.
+Files: src/list.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3428
+Problem: Using freed memory when replacing. (Dhiraj Mishra)
+Solution: Get the line pointer after calling ins_copychar().
+Files: src/normal.c, src/testdir/test_edit.mnv
+
+Patch 8.2.3429
+Problem: Leaking memory when assigning to list or dict.
+Solution: Free the list or dict type before overwriting it.
+Files: src/mnv9type.c, src/evalvars.c
+
+Patch 8.2.3430
+Problem: No generic way to trigger an autocommand on mode change.
+Solution: Add the ModeChanged autocommand event. (Magnus Gross, closes #8856)
+Files: runtime/doc/autocmd.txt, src/autocmd.c, src/edit.c,
+ src/ex_docmd.c, src/ex_getln.c, src/globals.h, src/misc1.c,
+ src/normal.c, src/proto/autocmd.pro, src/proto/misc1.pro,
+ src/testdir/test_edit.mnv, src/mnv.h
+
+Patch 8.2.3431
+Problem: Completion for :disas sorts local functions first.
+Solution: Sort local functions last, like with :delfunc. (Naohiro Ono,
+ closes #8860)
+Files: src/cmdexpand.c, src/testdir/test_cmdline.mnv
+
+Patch 8.2.3432
+Problem: Octave/Matlab filetype detection does not work properly.
+Solution: Update the patterns used for matching. (Doug Kearns)
+Files: runtime/autoload/dist/ft.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.3433
+Problem: :delcommand does not take a -buffer option.
+Solution: Add the -buffer option.
+Files: runtime/doc/map.txt, src/usercmd.c, src/errors.h,
+ src/testdir/test_usercommands.mnv
+
+Patch 8.2.3434 (after 8.2.3430)
+Problem: Function prototype for trigger_modechanged() is incomplete.
+Solution: Add "void".
+Files: src/proto/misc1.pro
+
+Patch 8.2.3435
+Problem: MNV9: dict is not passed to dict function.
+Solution: Keep the dict used until a function call.
+Files: src/mnv9compile.c, src/mnv9execute.c, src/mnv9.h,
+ src/testdir/test_mnv9_func.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.3436
+Problem: Check for optional bool type has confusing return type.
+Solution: Explicitly return OK.
+Files: src/typval.c
+
+Patch 8.2.3437
+Problem: Compiler warnings for 32/64 bit usage.
+Solution: Add type casts. (Mike Williams, closes #8870)
+Files: src/screen.c, src/xdiff/xemit.c, src/xdiff/xutils.c
+
+Patch 8.2.3438
+Problem: Cannot manipulate blobs.
+Solution: Add blob2list() and list2blob(). (Yegappan Lakshmanan,
+ closes #8868)
+Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/blob.c,
+ src/errors.h, src/evalfunc.c, src/proto/blob.pro,
+ src/proto/typval.pro, src/testdir/test_blob.mnv,
+ src/testdir/test_mnv9_builtin.mnv, src/typval.c
+
+Patch 8.2.3439
+Problem: Deleted lines go to wrong yank register.
+Solution: Reset y_append when not calling get_yank_register(). (Christian
+ Brabandt, closes #8872)
+Files: src/ops.c, src/proto/register.pro, src/register.c,
+ src/testdir/test_registers.mnv
+
+Patch 8.2.3440
+Problem: Recover test fails if there is an old swap file.
+Solution: Delete old swap files.
+Files: src/testdir/test_recover.mnv
+
+Patch 8.2.3441
+Problem: MS-Windows: mnvtutor can't handle path with spaces.
+Solution: Add double quotes. (Christian Brabandt, closes #8871)
+Files: mnvtutor.bat
+
+Patch 8.2.3442
+Problem: MNV9: || and && are not handled at compile time when possible.
+Solution: When using constants generate fewer instructions.
+Files: src/mnv9.h, src/mnv9compile.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.3443
+Problem: MNV9: memory leak when and/or fails.
+Solution: Also clear the growarray when the length is zero.
+Files: src/mnv9compile.c
+
+Patch 8.2.3444
+Problem: concealed text not revealed when leaving insert mode. (Michael
+ Soyka)
+Solution: Check if concealing changed when leaving insert mode.
+ (closes #8880)
+Files: src/edit.c, src/testdir/test_conceal.mnv,
+ src/testdir/dumps/Test_conceal_two_windows_07in.dump
+
+Patch 8.2.3445
+Problem: On Solaris longVersion may be declared twice. (Vladimir Marek)
+Solution: Always declare longVersion in version.c
+Files: src/globals.h, src/version.c
+
+Patch 8.2.3446
+Problem: Not enough tests for empty string arguments.
+Solution: Add tests, fix type check. (Yegappan Lakshmanan, closes #8881)
+Files: runtime/doc/sign.txt, runtime/doc/textprop.txt, src/sign.c,
+ src/testdir/test_blob.mnv, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3447
+Problem: A couple of declarations are not ANSI C.
+Solution: Put argument type inside (). (Yegappan Lakshmanan, closes #8890)
+Files: src/os_unix.h
+
+Patch 8.2.3448
+Problem: :endtry after function call that throws not found.
+Solution: Do check for following :endtry if an exception is being thrown.
+ (closes #8889)
+Files: src/userfunc.c, src/testdir/test_trycatch.mnv
+
+Patch 8.2.3449
+Problem: Sort fails if the sort compare function returns 999.
+Solution: Adjust value to -1 / 0 / 1. (Yasuhiro Matsumoto, closes #8884)
+Files: src/list.c, src/testdir/test_sort.mnv
+
+Patch 8.2.3450
+Problem: Coveralls action fails.
+Solution: Disable it for now.
+Files: .github/workflows/ci.yml
+
+Patch 8.2.3451
+Problem: Not all apache files are recognized.
+Solution: Adjust the filetype pattern. (Zdenek Dohnal, closes #8882)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.3452
+Problem: MPD files are not recognized.
+Solution: Recognize MPD files as XML. (Steven Penny, closes #8893)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.3453
+Problem: Autocmd not executed when editing a directory ending in a path
+ separator inside try block.
+Solution: Return NOTDONE instead of FAIL. (closes #8885)
+Files: src/fileio.c, src/testdir/test_autocmd.mnv
+
+Patch 8.2.3454
+Problem: Using a count with "gp" leaves cursor in wrong position. (Naohiro
+ Ono)
+Solution: Count the inserted lines. (closes #8899)
+Files: src/register.c, src/testdir/test_put.mnv
+
+Patch 8.2.3455 (after 8.2.3454)
+Problem: Using a count with "gp" leaves '] in wrong position. (Naohiro Ono)
+Solution: Correct the mark position. (closes #8899)
+Files: src/register.c, src/testdir/test_put.mnv
+
+Patch 8.2.3456
+Problem: MNV9: Not all functions are tested with an empty string argument.
+Solution: Add tests with empty strings. (Yegappan Lakshmanan, closes #8915)
+Files: src/evalfunc.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3457
+Problem: MS-Windows MNV9: test executed and fails.
+Solution: Add extra check for not being on MS-Windows.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3458
+Problem: Not all dictdconf files are recognized.
+Solution: Adjust the pattern. (Doug Kearns)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.3459
+Problem: MNV9: need more tests for empty string arguments.
+Solution: Add more tests. Also use empty argument with menu_info() to get
+ the top-level menu names. (Yegappan Lakshmanan, closes #8925)
+Files: runtime/doc/eval.txt, src/menu.c, src/testdir/test_menu.mnv,
+ src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3460
+Problem: Some type casts are not needed.
+Solution: Remove unnecessary type casts. (closes #8934)
+Files: src/autocmd.c, src/buffer.c, src/debugger.c, src/getchar.c,
+ src/hardcopy.c, src/if_cscope.c, src/move.c, src/tag.c,
+ src/version.c
+
+Patch 8.2.3461
+Problem: Cannot distinguish Normal and Terminal-Normal mode.
+Solution: Make mode() return "nt" for Terminal-Normal mode. (issue #8856)
+Files: runtime/doc/eval.txt, src/misc1.c, src/testdir/test_functions.mnv
+
+Patch 8.2.3462
+Problem: The ModeChanged event only uses one character for the new_mode and
+ old_mode values.
+Solution: Pass one as first argument to mode(). (issue #8856)
+Files: src/misc1.c, src/testdir/test_edit.mnv
+
+Patch 8.2.3463
+Problem: Pattern matching with ModeChanged not tested.
+Solution: Add a few more test lines. (issue #8856)
+Files: src/testdir/test_edit.mnv
+
+Patch 8.2.3464
+Problem: nginx files are not recognized.
+Solution: Add several file patterns. (Chris Aumann, closes #8922)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.3465
+Problem: Cannot detect insert scroll mode.
+Solution: Add "scroll" to complete_info(). (closes #8943)
+Files: runtime/doc/eval.txt, src/insexpand.c, src/testdir/test_popup.mnv
+
+Patch 8.2.3466
+Problem: Completion submode not indicated for virtual replace.
+Solution: Add submode to "Rv". (closes #8945)
+Files: runtime/doc/eval.txt, src/misc1.c, src/testdir/test_functions.mnv
+
+Patch 8.2.3467
+Problem: CursorHoldI event interferes with "CTRL-G U". (Naohiro Ono)
+Solution: Restore the flag for "CTRL-G U" after triggering CursorHoldI.
+ (closes #8937)
+Files: src/edit.c, src/testdir/test_autocmd.mnv
+
+Patch 8.2.3468
+Problem: Problem with :cd when editing file in non-existent directory. (Yee
+ Cheng Chin)
+Solution: Prepend the current directory to get the full path. (closes #8903)
+Files: src/os_unix.c, src/testdir/test_cd.mnv
+
+Patch 8.2.3469
+Problem: Some files with json syntax are not recognized.
+Solution: Add a few file patterns. (Emiliano Ruiz Carletti, closes #8947)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.3470
+Problem: Crash with error in :catch and also in :finally.
+Solution: Only discard an exception if there is one. (closes #8954)
+Files: src/ex_eval.c, src/testdir/test_trycatch.mnv
+
+Patch 8.2.3471
+Problem: Crash when using CTRL-T after an empty search pattern.
+Solution: Bail out when there is no previous search pattern. (closes #8953)
+Files: src/ex_getln.c, src/testdir/test_search.mnv
+
+Patch 8.2.3472
+Problem: Other crashes with empty search pattern not tested.
+Solution: Add a few more test lines. (Dominique Pellé)
+Files: src/testdir/test_search.mnv
+
+Patch 8.2.3473
+Problem: Some files with tcl syntax are not recognized.
+Solution: Add a few file patterns. (Doug Kearns)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.3474
+Problem: Some places use "MNVscript" instead of "MNV script".
+Solution: Consistently use "MNV script". (Hirohito Higashi, closes #8910)
+Files: runtime/doc/if_lua.txt, src/getchar.c, src/if_lua.c
+
+Patch 8.2.3475
+Problem: Expression register set by not executed put command.
+Solution: Do not set the register if the command is skipped. (closes #8909)
+Files: src/ex_docmd.c, src/testdir/test_excmd.mnv
+
+Patch 8.2.3476
+Problem: Renaming a buffer on startup may cause using freed memory.
+Solution: Check if the buffer is used in a window. (closes #8955)
+Files: src/buffer.c, src/testdir/test_startup.mnv
+
+Patch 8.2.3477 (after 8.2.3476)
+Problem: Startup test fails on MS-Windows.
+Solution: Skip the test if not on Unix.
+Files: src/testdir/test_startup.mnv
+
+Patch 8.2.3478 (after 8.2.3470)
+Problem: Still crash with error in :catch and also in :finally.
+Solution: Only call finish_exception() once. (closes #8954)
+Files: src/ex_eval.c, src/structs.h
+
+Patch 8.2.3479
+Problem: Crash when calling job_start with an invalid argument. (Virginia
+ Senioria)
+Solution: Clear the first item in argv. (closes #8957)
+Files: src/misc2.c, src/testdir/test_channel.mnv
+
+Patch 8.2.3480 (after 8.2.3478)
+Problem: Test does not fail without the fix for a crash.
+Solution: Write the bad code in a file and source it. (Dominique Pellé,
+ closes #8961)
+Files: src/testdir/test_trycatch.mnv
+
+Patch 8.2.3481
+Problem: Failures when char is unsigned.
+Solution: Use int8_T. Make a CI run with unsigned char. (James McCoy,
+ closes #8936)
+Files: src/structs.h, .github/workflows/ci.yml
+
+Patch 8.2.3482
+Problem: Reading beyond end of line ending in quote and backslash.
+Solution: Check for non-NUL after backslash. (closes #8964)
+Files: src/cindent.c, src/testdir/test_cindent.mnv
+
+Patch 8.2.3483
+Problem: #ifdef for using sysinfo() is incomplete.
+Solution: Also check for HAVE_SYSINFO. Make autoconf check use TRY_LINK.
+ (closes #8952)
+Files: src/memline.c, src/configure.ac, src/auto/configure
+
+Patch 8.2.3484
+Problem: Crash when going through spell suggestions.
+Solution: Limit the text length for finding suggestions to the original
+ length. Do not update buffers when exiting. (closes #8965)
+Files: src/spellsuggest.c, src/clipboard.c,
+ src/testdir/test_spell_utf8.mnv
+
+Patch 8.2.3485
+Problem: Python 3 test fails with Python 3.10.
+Solution: Adjust expected error message. (zdohnal Dohnal, closes #8969)
+Files: src/testdir/test_python3.mnv
+
+Patch 8.2.3486
+Problem: Illegal memory access with invalid sequence of commands.
+Solution: Do not call leave_block() when not in a try block. (closes #8966)
+ Reset did_emsg so that exception is shown as an error.
+Files: src/ex_eval.c, src/testdir/test_trycatch.mnv
+
+Patch 8.2.3487
+Problem: Illegal memory access if buffer name is very long.
+Solution: Make sure not to go over the end of the buffer.
+Files: src/drawscreen.c, src/testdir/test_statusline.mnv
+
+Patch 8.2.3488
+Problem: Issue template is not easy to use.
+Solution: Use a yaml template. (closes #8928)
+Files: .github/ISSUE_TEMPLATE/bug_report.md,
+ .github/ISSUE_TEMPLATE/bug_report.yml
+
+Patch 8.2.3489
+Problem: ml_get error after search with range.
+Solution: Limit the line number to the buffer line count.
+Files: src/ex_docmd.c, src/testdir/test_search.mnv
+
+Patch 8.2.3490
+Problem: Superfluous return statements.
+Solution: Remove superfluous return statements from void functions.
+ (closes #8977)
+Files: src/buffer.c, src/getchar.c, src/memline.c, src/move.c,
+ src/option.c
+
+Patch 8.2.3491
+Problem: xpm2 filetype detection is not so good.
+Solution: Adjust the check for xpm2. (closes #8914)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.3492
+Problem: Crash when pasting too many times.
+Solution: Limit the size to what fits in an int. (closes #8962)
+Files: src/register.c, src/errors.h, src/testdir/test_put.mnv
+
+Patch 8.2.3493 (after 8.2.3492)
+Problem: Large count test fails on MS-Windows.
+Solution: Skip the test on MS-Windows.
+Files: src/testdir/test_put.mnv
+
+Patch 8.2.3494
+Problem: Illegal memory access in utf_head_off.
+Solution: Check cursor position when reselecting the Visual area.
+ (closes #8963)
+Files: src/normal.c, src/testdir/test_visual.mnv
+
+Patch 8.2.3495
+Problem: GUI geometry startup test fails on some systems. (Drew Vogel)
+Solution: Add tolerance to the size check. (closes #8815)
+Files: src/testdir/test_startup.mnv
+
+Patch 8.2.3496
+Problem: Crypt test fails on MS-Windows if xxd was not installed yet.
+Solution: Use the just built xxd executable if it exists. (James McCoy,
+ closes #8929)
+Files: src/testdir/test_crypt.mnv
+
+Patch 8.2.3497
+Problem: Put test fails when run by itself.
+Solution: Source check.mnv. (Dominique Pellé, closes #8990)
+Files: src/testdir/test_put.mnv
+
+Patch 8.2.3498
+Problem: Recover test may fail on some systems.
+Solution: Adjust the little endian and 64 bit detection. (James McCoy,
+ closes #8941)
+Files: src/testdir/test_recover.mnv
+
+Patch 8.2.3499
+Problem: GUI geometry startup test fails.
+Solution: Check string values instead of numbers
+Files: src/testdir/test_startup.mnv
+
+Patch 8.2.3500
+Problem: Github CI fails to install clang.
+Solution: Install llvm-11 explicitly. (Christian Brabandt, closes #8993)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.3501
+Problem: tmux filetype detection is incomplete
+Solution: Also use tmux for files having text after .conf. (Eric Pruitt,
+ closes #8971)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.3502 (after 8.2.2919)
+Problem: Cannot enter password in shell command.
+Solution: Revert patch 8.2.2919.
+Files: src/os_unix.c
+
+Patch 8.2.3503
+Problem: MNV9: using g:pat:cmd is confusing.
+Solution: Do not recognize g: as the :global command. Also for s:pat:repl.
+ (closes #8982)
+Files: runtime/doc/mnv9.txt, src/ex_docmd.c, src/ex_cmds.c, src/errors.h,
+ src/mnv9compile.c, src/proto/mnv9compile.pro,
+ src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.3504 (after 8.2.3503)
+Problem: MNV9: warning for signed vs unsigned.
+Solution: Add type cast.
+Files: src/mnv9compile.c
+
+Patch 8.2.3505 (after 8.2.3503)
+Problem: MNV9: build failure without the +eval feature.
+Solution: Add #ifdef.
+Files: src/ex_cmds.c
+
+Patch 8.2.3506 (after 8.2.3503)
+Problem: MNV9: special cases for "g" and "s" insufficiently tested.
+Solution: Add a few more test cases.
+Files: src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.3507
+Problem: Generating proto files may fail.
+Solution: Define __attribute().
+Files: src/Makefile
+
+Patch 8.2.3508 (after 8.2.3503)
+Problem: MNV9: bad separators for "g" and "s" insufficiently tested.
+Solution: Add a few more test cases.
+Files: src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.3509
+Problem: Undo file is not synced. (Sami Farin)
+Solution: Sync the undo file if 'fsync' is set. (Christian Brabandt,
+ closes #8879, closes #8920)
+Files: runtime/doc/options.txt, src/undo.c
+
+Patch 8.2.3510
+Problem: Changes are only detected with one second accuracy.
+Solution: Use the nanosecond time if possible. (Leah Neukirchen,
+ closes #8873, closes #8875)
+Files: runtime/doc/eval.txt, src/auto/configure, src/bufwrite.c,
+ src/config.h.in, src/configure.ac, src/fileio.c,
+ src/proto/fileio.pro, src/memline.c, src/netbeans.c,
+ src/structs.h, src/evalfunc.c, src/testdir/test_stat.mnv
+
+Patch 8.2.3511
+Problem: MNV9: entry for loop variable is created every round.
+Solution: Only create the entry once. (closes #8996)
+Files: src/evalvars.c, src/mnv9script.c
+
+Patch 8.2.3512
+Problem: Timestamp test fails on some systems.
+Solution: Sleep for a short while.
+Files: src/testdir/test_stat.mnv
+
+Patch 8.2.3513
+Problem: Using freed memory when using a timer and searching. (Dominique
+ Pellé)
+Solution: Allocated mr_pattern.
+Files: src/search.c
+
+Patch 8.2.3514
+Problem: Autoread test with nanosecond time sometimes fails.
+Solution: Mark the test as being flaky.
+Files: src/testdir/test_stat.mnv
+
+Patch 8.2.3515
+Problem: Nano time test fails on Mac and FreeBSD.
+Solution: Also check nano time when not on Linux. (Ozaki Kiichi,
+ closes #9000)
+Files: src/fileio.c
+
+Patch 8.2.3516
+Problem: Terminal window does not have transparent background when
+ 'termguicolors' is used.
+Solution: Fix the background color. (closes #2361, closes #9002)
+Files: runtime/doc/terminal.txt, src/highlight.c, src/proto/terminal.pro,
+ src/terminal.c
+
+Patch 8.2.3517
+Problem: TextChanged does not trigger after TextChangedI.
+Solution: Store the tick separately for TextChangedI. (Christian Brabandt,
+ closes #8968, closes #8932)
+Files: src/buffer.c, src/bufwrite.c, src/edit.c, src/structs.h,
+ src/testdir/test_autocmd.mnv
+
+Patch 8.2.3518
+Problem: Test_xrestore sometimes fails.
+Solution: Mark the test as flaky. Move marking test as flaky to the test
+ instead of listing them in runtest.
+Files: src/testdir/test_paste.mnv, src/testdir/runtest.mnv,
+ src/testdir/test_autocmd.mnv, src/testdir/test_channel.mnv,
+ src/testdir/test_clientserver.mnv, src/testdir/test_diffmode.mnv,
+ src/testdir/test_functions.mnv, src/testdir/test_gui.mnv,
+ src/testdir/test_mapping.mnv, src/testdir/test_popup.mnv,
+ src/testdir/test_quotestar.mnv, src/testdir/test_reltime.mnv,
+ src/testdir/test_terminal.mnv, src/testdir/test_terminal2.mnv,
+ src/testdir/test_timers.mnv
+
+Patch 8.2.3519
+Problem: TOML files are not recognized.
+Solution: Add filetype patterns for TOML. (Aman Verma, closes #8984)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.3520
+Problem: Cannot define a function for thesaurus completion.
+Solution: Add 'thesaurusfunc'. (Yegappan Lakshmanan, closes #8987,
+ closes 8950)
+Files: runtime/doc/insert.txt, runtime/doc/options.txt,
+ runtime/doc/quickref.txt, src/buffer.c, src/insexpand.c,
+ src/option.c, src/option.h, src/optiondefs.h, src/optionstr.c,
+ src/structs.h, src/testdir/test_edit.mnv
+
+Patch 8.2.3521 (after 8.2.3520)
+Problem: Options completion test fails.
+Solution: Add 'thesaurusfunc' to the results.
+Files: src/testdir/test_options.mnv
+
+Patch 8.2.3522
+Problem: Cannot use \x and \u when setting 'listchars'.
+Solution: Support hex and unicode in hex form. (closes #9006)
+Files: runtime/doc/options.txt, src/screen.c, src/charset.c,
+ src/testdir/test_listchars.mnv
+
+Patch 8.2.3523
+Problem: Duplicated code in xxd.
+Solution: Remove duplicated lines. (closes #8972)
+Files: src/xxd/xxd.c
+
+Patch 8.2.3524
+Problem: GUI: ligatures are not used.
+Solution: Add the 'guiligatures' option. (Dusan Popovic, closes #8933)
+Files: runtime/doc/options.txt, src/gui.c, src/gui.h, src/gui_gtk_x11.c,
+ src/option.h, src/optiondefs.h, src/optionstr.c, src/errors.h,
+ src/proto/gui.pro, src/proto/gui_gtk_x11.pro,
+ src/testdir/test_gui.mnv
+
+Patch 8.2.3525
+Problem: Option variable name does not match option name. (Christ van
+ Willegen)
+Solution: Rename the variable.
+Files: src/buffer.c, src/insexpand.c, src/option.c, src/optionstr.c,
+ src/structs.h
+
+Patch 8.2.3526
+Problem: Tests have clumsy check for X11 based GUI.
+Solution: Add CheckX11BasedGui.
+Files: src/testdir/check.mnv, src/testdir/test_gui.mnv,
+ src/testdir/test_gui_init.mnv, src/testdir/setup_gui.mnv
+
+Patch 8.2.3527
+Problem: Gcc complains about uninitialized variable. (Tony Mechelynck)
+Solution: Initialize it.
+Files: src/gui_gtk_x11.c
+
+Patch 8.2.3528
+Problem: 'thesaurus' and 'thesaurusfunc' do not have the same scope.
+Solution: Make 'thesaurusfunc' global-local.
+Files: runtime/doc/options.txt, runtime/doc/insert.txt,
+ src/optiondefs.h, src/option.h, src/option.c, src/structs.h,
+ src/insexpand.c, src/testdir/test_edit.mnv
+
+Patch 8.2.3529
+Problem: Xxd usage output is incomplete.
+Solution: Add "bytes" to "-g" flag. (Atsushi Sugawara, closes #8944)
+Files: src/xxd/xxd.c
+
+Patch 8.2.3530
+Problem: ":buf \{a}" fails while ":edit \{a}" works.
+Solution: Unescape "\{". (closes #8917)
+Files: src/mnv.h, src/cmdexpand.c, src/evalfunc.c, src/ex_getln.c,
+ src/proto/ex_getln.pro, src/normal.c, src/session.c,
+ src/terminal.c, src/mnv9execute.c, src/testdir/test_cmdline.mnv
+
+Patch 8.2.3531 (after 8.2.3530)
+Problem: Command line completion test fails on MS-Windows.
+Solution: Do not test with "\{" on MS-Windows.
+Files: src/testdir/test_cmdline.mnv
+
+Patch 8.2.3532
+Problem: The previous '' mark is restored after moving the cursor to the
+ original jump position. (Tony Chen)
+Solution: Forget the previous position after checking. (closes #8985)
+Files: src/mark.c, src/testdir/test_marks.mnv
+
+Patch 8.2.3533
+Problem: Inefficient code in xxd.
+Solution: Don't use "p" when "hextype" is non-zero. (closes #9013)
+Files: src/xxd/xxd.c
+
+Patch 8.2.3534
+Problem: Autoread test is a bit flaky.
+Solution: Wait a brief moment before overwriting the file.
+Files: src/testdir/test_stat.mnv
+
+Patch 8.2.3535
+Problem: If-else indenting is confusing.
+Solution: Add curly brackets and indent. (Dominique Pellé, closes #9010)
+Files: src/drawscreen.c
+
+Patch 8.2.3536
+Problem: The do_highlight() function is way too long.
+Solution: Split it into several functions. (Yegappan Lakshmanan,
+ closes #9011)
+Files: src/highlight.c
+
+Patch 8.2.3537
+Problem: mode() does not return the right value in 'operatorfunc'.
+Solution: Reset finish_op while calling 'operatorfunc'.
+Files: src/ops.c, src/testdir/test_functions.mnv
+
+Patch 8.2.3538
+Problem: Else-if indenting is confusing.
+Solution: Add curly brackets. (Yegappan Lakshmanan, closes #9017)
+Files: src/highlight.c
+
+Patch 8.2.3539
+Problem: GTK3: with 'rightleft' set scrollbar may move unintentionally.
+Solution: Ignore events while moving the scrollbar thumb. (closes #8958)
+Files: src/gui_gtk.c
+
+Patch 8.2.3540
+Problem: The mark '] is wrong after put with a count. (Naohiro Ono)
+Solution: Use the right line number. (closes #8956)
+Files: src/register.c, src/testdir/test_put.mnv
+
+Patch 8.2.3541
+Problem: Compiler warning for unused variable in tiny version.
+Solution: Add #ifdef. (John Marriott)
+Files: src/highlight.c
+
+Patch 8.2.3542
+Problem: Too many comments are old style.
+Solution: Change comments to // style. (closes #9021)
+Files: src/buffer.c
+
+Patch 8.2.3543
+Problem: Swapname has double slash when 'directory' ends in double slash.
+ (Shane Smith)
+Solution: Remove the superfluous slash. (closes #8876)
+Files: src/memline.c, src/testdir/test_swap.mnv
+
+Patch 8.2.3544
+Problem: Unix: may leak file descriptor when using a non-existing
+ directory.
+Solution: Always close the file. (closes #9023)
+Files: src/os_unix.c
+
+Patch 8.2.3545
+Problem: setcellwidths() may make 'listchars' or 'fillchars' invalid.
+Solution: Check the value and give an error. (closes #9024)
+Files: runtime/doc/eval.txt, src/optionstr.c, src/errors.h, src/mbyte.c,
+ src/testdir/test_utf8.mnv
+
+Patch 8.2.3546 (after 8.2.3545)
+Problem: Build failure without the +eval feature.
+Solution: Add #ifdef. (closes #9025)
+Files: src/errors.h
+
+Patch 8.2.3547
+Problem: Opening the quickfix window triggers BufWinEnter twice. (Yorick
+ Peterse)
+Solution: Only trigger BufWinEnter with "quickfix". (closes #9022)
+Files: src/ex_cmds.c, src/mnv.h, src/quickfix.c, src/buffer.c,
+ src/testdir/test_quickfix.mnv
+
+Patch 8.2.3548
+Problem: GTK GUI crashes when reading from stdin.
+Solution: Do not overwrite the NUL after the string. (closes #9028)
+Files: src/gui_gtk_x11.c, src/testdir/test_gui.mnv
+
+Patch 8.2.3549
+Problem: Mistakes in test comments.
+Solution: Fix the comments. (closes #9029)
+Files: src/testdir/test_autocmd.mnv
+
+Patch 8.2.3550
+Problem: completion() does not work properly.
+Solution: Set xp_line and add WILD_HOME_REPLACE. (Shougo Matsushita,
+ closes #9016)
+Files: src/cmdexpand.c, src/testdir/test_cmdline.mnv
+
+Patch 8.2.3551
+Problem: Checking first character of url twice.
+Solution: Only check once. (closes #9026)
+Files: src/misc1.c
+
+Patch 8.2.3552
+Problem: Xxd revert does not handle end of line correctly.
+Solution: Check for newline first. (closes #9034)
+Files: src/xxd/xxd.c, src/testdir/test_xxd.mnv
+
+Patch 8.2.3553 (after 8.2.3552)
+Problem: Xxd test fails on MS-Windows.
+Solution: Split shell command in two.
+Files: src/testdir/test_xxd.mnv
+
+Patch 8.2.3554
+Problem: Xxd has various way to exit.
+Solution: Add function to print error and exit. (closes #9035)
+Files: src/xxd/xxd.c
+
+Patch 8.2.3555
+Problem: ModeChanged is not triggered on every mode change.
+Solution: Also trigger on minor mode changes. (Maguns Gross, closes #8999)
+Files: runtime/doc/autocmd.txt, src/autocmd.c, src/insexpand.c,
+ src/misc1.c, src/normal.c, src/terminal.c,
+ src/testdir/test_edit.mnv
+
+Patch 8.2.3556
+Problem: Filler lines are incorrect for other window in diff mode after
+ making a change.
+Solution: Copy filler lines from the current window. (closes #8809)
+Files: src/diff.c, src/testdir/test_diffmode.mnv,
+ src/testdir/dumps/Test_diff_scroll_change_03.dump
+
+Patch 8.2.3557
+Problem: MNV9: cannot call imported funcref at script level.
+Solution: Check for an imported function. (closes #9007)
+Files: src/userfunc.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3558 (after 8.2.3557)
+Problem: MNV9: asserting the wrong variable.
+Solution: Don't use Foo, use Goo.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3559
+Problem: Loop variable recreated every time.
+Solution: Keep the loop variable when looping.
+Files: src/ex_eval.c
+
+Patch 8.2.3560
+Problem: Using freed memory with lambda.
+Solution: Do not free lines early, keep them until the expression is
+ finished. (closes #9020)
+Files: src/eval.c, src/proto/eval.pro, src/userfunc.c, src/mnv9compile.c,
+ src/structs.h, src/globals.h, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.3561
+Problem: Cscope has a complicated way of giving an error message.
+Solution: Use semsg(). (James McCoy, closes #9038)
+Files: src/if_cscope.c
+
+Patch 8.2.3562
+Problem: Cannot add color names.
+Solution: Add the v:colornames dictionary. (Drew Vogel, closes #8761)
+Files: Filelist, READMEdir/README_extra.txt, nsis/gmnv.nsi,
+ runtime/colors/README.txt, runtime/colors/lists/csscolors.mnv,
+ runtime/colors/lists/default.mnv, runtime/doc/eval.txt,
+ runtime/doc/gui_w32.txt, runtime/doc/message.txt,
+ runtime/doc/os_haiku.txt, runtime/doc/syntax.txt,
+ runtime/doc/usr_06.txt, src/Makefile, src/evalvars.c,
+ src/gui_haiku.cc, src/highlight.c, src/gui.c, src/job.c,
+ src/proto/highlight.pro, src/proto/term.pro, src/term.c,
+ src/mnv.h, src/globals.h, src/errors.h,
+ src/testdir/test_highlight.mnv
+
+Patch 8.2.3563 (after 8.2.3562)
+Problem: Build failure with +eval but without GUI or +termguicolors
+Solution: Adjust #ifdef. (John Marriott)
+Files: src/highlight.c
+
+Patch 8.2.3564
+Problem: Invalid memory access when scrolling without a valid screen.
+Solution: Do not set VALID_BOTLINE in w_valid.
+Files: src/move.c, src/testdir/test_normal.mnv
+
+Patch 8.2.3565
+Problem: Makefile dependencies are outdated. (Gary Johnson)
+Solution: Run "make depend" and add missing dependencies.
+Files: src/Makefile
+
+Patch 8.2.3566
+Problem: Build failure on old systems when using nano timestamp.
+Solution: Define _BSD_SOURCE, _SVID_SOURCE and _DEFAULT_SOURCE. (Gary
+ Johnson, closes #9054)
+Files: src/mnv.h
+
+Patch 8.2.3567
+Problem: CTRL-I in Insert mode is not tested
+Solution: Add a test case. (Dominique Pellé, closes #8866)
+Files: src/testdir/test_edit.mnv
+
+Patch 8.2.3568
+Problem: Ctrl-hat test fails with Athena and Motif. (Elimar Riesebieter)
+Solution: Run the test only with GTK. (Dominique Pellé, closes #9069)
+Files: src/testdir/test_edit.mnv
+
+Patch 8.2.3569
+Problem: Error for :let when mnvrc is MNV 9 script.
+Solution: Prepend :legacy in the code for converting arguments. (Christian
+ Brabandt, closes #9068, closes #9077)
+Files: src/os_win32.c
+
+Patch 8.2.3570
+Problem: Test_very_large_count fails on 32bit systems.
+Solution: Bail out when using 32 bit numbers. (closes #9072)
+Files: src/testdir/test_put.mnv
+
+Patch 8.2.3571
+Problem: Some unicode control characters are considered printable.
+Solution: Make 0x2060 - 0x2069 not printable.
+Files: src/mbyte.c
+
+Patch 8.2.3572
+Problem: Memory leak when closing window and using "multispace" in
+ 'listchars'.
+Solution: Free the memory. (closes #9071)
+Files: src/window.c, src/testdir/test_listchars.mnv
+
+Patch 8.2.3573
+Problem: Cannot decide whether to skip test that fails with 64 bit ints.
+ (closes #9072)
+Solution: Add v:sizeofint, v:sizeoflong and v:sizeofpointer. Improve the
+ check for multiply overflow.
+Files: runtime/doc/eval.txt, src/mnv.h, src/evalvars.c, src/register.c,
+ src/testdir/test_put.mnv
+
+Patch 8.2.3574 (after 8.2.3573)
+Problem: Divide by zero.
+Solution: Don't check for overflow if multiplicand is zero.
+Files: src/register.c
+
+Patch 8.2.3575 (after 8.2.3574)
+Problem: Overflow check still fails when sizeof(int) == sizeof(long).
+Solution: Use a float to check the result.
+Files: src/register.c
+
+Patch 8.2.3576
+Problem: Some functions are not documented for use with a method.
+Solution: Add examples. Fix that sign_unplacelist() only takes one
+ argument. (Sean Dewar, closes #9081)
+Files: src/evalfunc.c, runtime/doc/eval.txt
+
+Patch 8.2.3577 (after 8.2.3574)
+Problem: Overflow check fails with 32 bit ints.
+Solution: Only test with 64 bit ints.
+Files: src/testdir/test_put.mnv
+
+Patch 8.2.3578
+Problem: Manipulating highlighting is complicated.
+Solution: Add the hlget() and hlset() functions. (Yegappan Lakshmanan,
+ closes #9039)
+Files: runtime/doc/eval.txt, runtime/doc/syntax.txt,
+ runtime/doc/usr_41.txt, runtime/doc/windows.txt, src/evalfunc.c,
+ src/highlight.c, src/proto/highlight.pro,
+ src/testdir/test_highlight.mnv, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3579
+Problem: CI sometimes fails for MinGW.
+Solution: Use backslashes in HandleSwapExists(). (Christian Brabandt,
+ closes #9078)
+Files: src/testdir/runtest.mnv
+
+Patch 8.2.3580
+Problem: gj does not move properly with a wide character.
+Solution: Move one to the right. (Christian Brabandt, closes #8702)
+Files: src/normal.c, src/testdir/test_normal.mnv
+
+Patch 8.2.3581
+Problem: Reading character past end of line.
+Solution: Correct the cursor column.
+Files: src/ex_docmd.c, src/testdir/test_put.mnv
+
+Patch 8.2.3582
+Problem: Reading uninitialized memory when giving spell suggestions.
+Solution: Check that preword is not empty.
+Files: src/spellsuggest.c, src/testdir/test_spell.mnv
+
+Patch 8.2.3583
+Problem: The "gd" and "gD" commands do not update search stats. (Gary
+ Johnson)
+Solution: Clear search stats.
+Files: src/normal.c, src/testdir/test_search_stat.mnv,
+ src/testdir/dumps/Test_searchstatgd_1.dump,
+ src/testdir/dumps/Test_searchstatgd_2.dump
+
+Patch 8.2.3584
+Problem: "verbose set efm" reports the location of the :compiler command.
+ (Gary Johnson)
+Solution: Add the "-keepscript" argument to :command and use it when
+ defining CompilerSet.
+Files: runtime/doc/map.txt, src/ex_cmds2.c, src/usercmd.c, src/ex_cmds.h,
+ src/testdir/test_compiler.mnv
+
+Patch 8.2.3585
+Problem: Crash when passing float to "term_rows" in the options argument of
+ term_start(). (Virginia Senioria)
+Solution: Bail out if the argument is not a number. (closes #9116)
+Files: src/job.c, src/terminal.c, src/testdir/test_terminal.mnv
+
+Patch 8.2.3586 (after 8.2.3584)
+Problem: Command completion test fails.
+Solution: Add new argument to expected output
+Files: src/testdir/test_usercommands.mnv
+
+Patch 8.2.3587 (after 8.2.3584)
+Problem: Compiler test fails with backslash file separator.
+Solution: Accept slash and backslash.
+Files: src/testdir/test_compiler.mnv
+
+Patch 8.2.3588
+Problem: Break statement is never reached.
+Solution: Rely on return value of set_chars_option() not changing.
+ (closes #9103)
+Files: src/optionstr.c
+
+Patch 8.2.3589
+Problem: Failure when the "term_rows" argument of term_start() is an
+ unusual value.
+Solution: Limit to range of zero to 1000. (closes #9116)
+Files: runtime/doc/terminal.txt, src/job.c, src/testdir/test_terminal.mnv
+
+Patch 8.2.3590
+Problem: Test for v:colornames sometimes fails. (Dominique Pellé)
+Solution: Check features. Clear v:colornames between tests. (Drew Vogel,
+ closes #9105, closes #9073)
+Files: runtime/doc/eval.txt, src/highlight.c, src/proto/highlight.pro,
+ src/testdir/test_highlight.mnv
+
+Patch 8.2.3591
+Problem: No event is triggered when closing a window.
+Solution: Add the WinClosed event. (Naohiro Ono, closes #9110)
+Files: runtime/doc/autocmd.txt, src/autocmd.c,
+ src/testdir/test_autocmd.mnv, src/mnv.h, src/window.c
+
+Patch 8.2.3592
+Problem: Test_hlset fails when terminal has many columns.
+Solution: Set the number of columns to 80. (Dominique Pellé, closes #9101,
+ closes #9100)
+Files: src/testdir/test_highlight.mnv
+
+Patch 8.2.3593
+Problem: Directory is wrong after executing "lcd" with win_execute().
+Solution: Correct the directory when going back to the original window.
+ (closes #9132)
+Files: src/evalwindow.c, src/window.c, src/proto/window.pro,
+ src/testdir/test_execute_func.mnv
+
+Patch 8.2.3594
+Problem: Xxd code is a bit difficult to understand.
+Solution: Move some lines to a separate function. (closes #9037)
+Files: src/xxd/xxd.c
+
+Patch 8.2.3595
+Problem: Check for signed overflow might not work everywhere.
+Solution: Limit to 32 bit int. (closes #9043, closes #9067)
+Files: src/getchar.c
+
+Patch 8.2.3596
+Problem: Crash when using :pedit in MNV9 script.
+Solution: Move check for arguments to after checking there are arguments.
+ (Yegappan Lakshmanan, closes #9134, closes #9135)
+Files: src/popupwin.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.3597
+Problem: MNV seems to hang when writing a very long text to a terminal
+ window.
+Solution: Limit the amount of text based on 'termwinscroll'. (issue #9080)
+Files: runtime/doc/options.txt, src/terminal.c
+
+Patch 8.2.3598
+Problem: RouterOS filetype is not recognized.
+Solution: Add file and script patterns. (closes #9097)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.3599
+Problem: Not all gdbinit files are recognized.
+Solution: Add "gdbinit". (Doug Kearns)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.3600 (after 8.2.3598)
+Problem: Filetype test fails.
+Solution: Add missing change.
+Files: runtime/scripts.mnv
+
+Patch 8.2.3601
+Problem: Check for overflow in put count does not work well.
+Solution: Improve the overflow check. (Ozaki Kiichi, closes #9102)
+Files: src/register.c, src/testdir/test_put.mnv
+
+Patch 8.2.3602
+Problem: Python3 test fails with Python 3.10 on MS-Windows.
+Solution: Adjust the expected error. (Ken Takata, closes #9118)
+Files: src/testdir/test_python3.mnv
+
+Patch 8.2.3603
+Problem: Fish filetype not recognized.
+Solution: Add a file pattern and match script line. (Doug Kearns)
+Files: runtime/filetype.mnv, runtime/scripts.mnv,
+ src/testdir/test_filetype.mnv
+
+Patch 8.2.3604
+Problem: Not all sudoers files are recognized.
+Solution: Add a file pattern. (Doug Kearns, closes #1192)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.3605
+Problem: Cannot clear and unlink a highlight group with hlset() in a
+ single call.
+Solution: Add the "force" option. (Yegappan Lakshmanan, closes #9117)
+Files: runtime/doc/eval.txt, src/highlight.c,
+ src/testdir/test_highlight.mnv, src/testdir/test_mnv9_builtin.mnv,
+ src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.3606
+Problem: File missing from list of distributed files.
+Solution: Add the file.
+Files: Filelist
+
+Patch 8.2.3607
+Problem: GTK3 screen updating is slow.
+Solution: Remove some of the GTK3-specific code. (closes #9052)
+Files: src/gui.h, src/gui_gtk_x11.c
+
+Patch 8.2.3608
+Problem: Users who type "q:" instead of ":q" are confused.
+Solution: Add an autocmd to give a message that explains this is the
+ command-line window. (Egor Zvorykin, closes #9146)
+Files: runtime/defaults.mnv, src/testdir/test_autocmd.mnv,
+ src/testdir/test_cmdline.mnv
+
+Patch 8.2.3609
+Problem: Internal error when ModeChanged is triggered when v:event is
+ already in use.
+Solution: Save and restore v:event if needed.
+Files: src/misc1.c, src/proto/misc1.pro, src/testdir/test_edit.mnv,
+ src/insexpand.c, src/structs.h, src/register.c
+
+Patch 8.2.3610
+Problem: Crash when ModeChanged triggered too early.
+Solution: Trigger ModeChanged after setting VIsual.
+Files: src/normal.c, src/testdir/test_edit.mnv
+
+Patch 8.2.3611
+Problem: Crash when using CTRL-W f without finding a file name.
+Solution: Bail out when the file name length is zero.
+Files: src/findfile.c, src/normal.c, src/testdir/test_visual.mnv
+
+Patch 8.2.3612
+Problem: Using freed memory with regexp using a mark.
+Solution: Get the line again after getting the mark position.
+Files: src/regexp.c, src/regexp_nfa.c, src/testdir/test_regexp_latin.mnv
+
+Patch 8.2.3613
+Problem: :find test fails.
+Solution: Put length check inside if block.
+Files: src/findfile.c
+
+Patch 8.2.3614
+Problem: zindex of popup windows not used when redrawing popup menu.
+Solution: Check the zindex when redrawing the popup menu. (closes #9129,
+ closes #9089)
+Files: src/popupmenu.c, src/popupwin.c, src/proto/popupmenu.pro,
+ src/screen.c, src/testdir/test_popupwin.mnv,
+ src/testdir/dumps/Test_popupwin_popupmenu_masking_1.dump,
+ src/testdir/dumps/Test_popupwin_popupmenu_masking_2.dump
+
+Patch 8.2.3615
+Problem: When re-formatting with an indent expression the first line of a
+ paragraph may get the wrong indent. (Martin F. Krafft)
+Solution: Apply the correct indenting function for the first line.
+ (Christian Brabandt, closes #9150, closes #9056)
+Files: src/textformat.c, src/testdir/test_indent.mnv
+
+Patch 8.2.3616
+Problem: Arglist test does not clear the argument list consistently.
+Solution: Call Reset_arglist(). (Shougo Matsushita, closes #9154)
+Files: src/testdir/test_arglist.mnv
+
+Patch 8.2.3617
+Problem: ":verbose pwd" does not mention 'autochdir' was applied.
+Solution: Remember the last chdir was done by 'autochdir'. (issue #9142)
+Files: src/globals.h, src/buffer.c, src/ex_docmd.c, src/window.c,
+ src/main.c, src/netbeans.c, src/os_win32.c,
+ src/testdir/test_autochdir.mnv
+
+Patch 8.2.3618
+Problem: getcwd() is unclear about how 'autochdir' is used.
+Solution: Update the help for getcwd(). Without any arguments always return
+ the actual current directory. (closes #9142)
+Files: runtime/doc/eval.txt, src/filepath.c, src/testdir/test_cd.mnv
+
+Patch 8.2.3619
+Problem: Cannot use a lambda for 'operatorfunc'.
+Solution: Support using a lambda or partial. (Yegappan Lakshmanan,
+ closes #8775)
+Files: runtime/doc/map.txt, runtime/doc/options.txt, src/ops.c,
+ src/option.c, src/optionstr.c, src/proto/ops.pro,
+ src/proto/option.pro, src/quickfix.c, src/testdir/test_normal.mnv
+
+Patch 8.2.3620
+Problem: Memory leak reported in libtlib.
+Solution: Call del_curterm() when cleaning up memory. Rename term.h to
+ termdefs.h to avoid a name clash.
+Files: src/term.c, src/proto/term.pro, src/alloc.c, src/configure.ac,
+ src/auto/configure, src/config.h.in, src/Makefile,
+ src/Make_cyg_ming.mak, src/Make_mvc.mak, src/Make_vms.mms,
+ src/term.h, src/termdefs.h
+
+Patch 8.2.3621 (after 8.2.3620)
+Problem: Build failure.
+Solution: Add missing change.
+Files: src/mnv.h
+
+Patch 8.2.3622
+Problem: "verbose pwd" shows confusing info when :lcd does not change
+ directory.
+Solution: Clear last_chdir_reason also when the directory does not change.
+ (closes #9160)
+Files: src/ex_docmd.c, src/testdir/test_autochdir.mnv
+
+Patch 8.2.3623
+Problem: "$*" is expanded to "nonomatch".
+Solution: Only add "set nonomatch" when using a csh-like shell. (Christian
+ Brabandt, closes #9159, closes #9153)
+Files: src/os_unix.c, src/testdir/test_expand.mnv
+
+Patch 8.2.3624
+Problem: When renaming a terminal buffer the status text is not updated.
+Solution: Clear the cached status text when renaming a terminal buffer.
+ (closes #9162)
+Files: src/buffer.c, src/terminal.c, src/proto/terminal.pro,
+ src/testdir/test_terminal.mnv
+
+Patch 8.2.3625
+Problem: Illegal memory access when C-indenting.
+Solution: Also set the cursor column.
+Files: src/cindent.c, src/testdir/test_cindent.mnv
+
+Patch 8.2.3626
+Problem: "au!" and "au! event" cannot be followed by another command as
+ documented.
+Solution: When a bar is found set nextcmd.
+Files: src/autocmd.c, src/testdir/test_autocmd.mnv
+
+Patch 8.2.3627
+Problem: difficult to know where the text starts in a window. (Sergey
+ Vlasov)
+Solution: Add the "textoff" entry in the result of getwininfo().
+ (closes #9163)
+Files: runtime/doc/eval.txt, src/evalwindow.c,
+ src/testdir/test_bufwintabinfo.mnv
+
+Patch 8.2.3628
+Problem: Looking up terminal colors is a bit slow.
+Solution: Cache the terminal colors. (closes #9130, closes #9058)
+Files: src/highlight.c, src/libvterm/include/vterm.h, src/option.c,
+ src/optionstr.c, src/popupwin.c, src/proto/terminal.pro,
+ src/structs.h, src/terminal.c, src/window.c,
+ src/testdir/test_terminal3.mnv,
+ src/testdir/dumps/Test_terminal_color_MyTermCol.dump,
+ src/testdir/dumps/Test_terminal_color_MyTermCol_over_Terminal.dump,
+ src/testdir/dumps/Test_terminal_color_MyWinCol.dump,
+ src/testdir/dumps/Test_terminal_color_MyWinCol_over_group.dump,
+ src/testdir/dumps/Test_terminal_color_Terminal.dump,
+ src/testdir/dumps/Test_terminal_color_gui_MyTermCol.dump,
+ src/testdir/dumps/Test_terminal_color_gui_MyWinCol.dump,
+ src/testdir/dumps/Test_terminal_color_gui_Terminal.dump,
+ src/testdir/dumps/Test_terminal_color_gui_transp_MyTermCol.dump,
+ src/testdir/dumps/Test_terminal_color_gui_transp_MyWinCol.dump,
+ src/testdir/dumps/Test_terminal_color_gui_transp_Terminal.dump,
+ src/testdir/dumps/Test_terminal_color_transp_MyTermCol.dump,
+ src/testdir/dumps/Test_terminal_color_transp_MyWinCol.dump,
+ src/testdir/dumps/Test_terminal_color_transp_Terminal.dump,
+ src/testdir/dumps/Test_terminal_popup_MyPopupHlCol.dump,
+ src/testdir/dumps/Test_terminal_popup_MyTermCol_over_Terminal.dump,
+ src/testdir/dumps/Test_terminal_popup_MyWinCol.dump,
+ src/testdir/dumps/Test_terminal_popup_MyWinCol_over_group.dump,
+ src/testdir/dumps/Test_terminal_popup_gui_MyPopupHlCol.dump,
+ src/testdir/dumps/Test_terminal_popup_gui_MyTermCol.dump,
+ src/testdir/dumps/Test_terminal_popup_gui_MyWinCol.dump,
+ src/testdir/dumps/Test_terminal_popup_gui_Terminal.dump,
+ src/testdir/dumps/Test_terminal_popup_gui_transp_MyPopupHlCol.dump,
+ src/testdir/dumps/Test_terminal_popup_gui_transp_MyTermCol.dump,
+ src/testdir/dumps/Test_terminal_popup_gui_transp_MyWinCol.dump,
+ src/testdir/dumps/Test_terminal_popup_gui_transp_Terminal.dump,
+ src/testdir/dumps/Test_terminal_popup_transp_MyPopupHlCol.dump,
+ src/testdir/dumps/Test_terminal_popup_transp_MyTermCol.dump,
+ src/testdir/dumps/Test_terminal_popup_transp_MyWinCol.dump,
+ src/testdir/dumps/Test_terminal_popup_transp_Terminal.dump,
+ src/testdir/dumps/Test_terminal_wincolor_split_MyWinCol.dump,
+ src/testdir/dumps/Test_terminal_wincolor_split_MyWinCol2.dump
+
+Patch 8.2.3629
+Problem: Command completion in cmdline window uses global user commands,
+ not local commands for the window where it was opened from.
+Solution: Use local commands. (closes #9168)
+Files: src/ex_getln.c, src/proto/ex_getln.pro, src/evalvars.c,
+ src/usercmd.c, src/testdir/test_ins_complete.mnv
+
+Patch 8.2.3630
+Problem: Printf() with %S does not handle multi-byte correctly.
+Solution: Count cells instead of bytes. (closes #9169, closes #7486)
+Files: src/strings.c, src/testdir/test_expr.mnv
+
+Patch 8.2.3631
+Problem: "syntax enable" does not work properly in MNV9 context.
+Solution: Also handle MNV9 context. (closes #9161)
+Files: src/syntax.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.3632
+Problem: GTK3: undercurl does not get removed properly.
+Solution: Set the cairo cursor first. (closes #9170)
+Files: src/gui_gtk_x11.c
+
+Patch 8.2.3633
+Problem: MNV9: line number of lambda is off by one.
+Solution: Add one to the line number. (closes #9083)
+Files: src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.3634
+Problem: Error for already defined function uses wrong line number.
+Solution: Set SOURCING_LNUM before giving the error message. (closes #9085)
+Files: src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.3635
+Problem: GTK: composing underline does not show.
+Solution: Include composing character in pango call. A few more
+ optimizations for ligatures. (Dusan Popovic, closes #9171,
+ closes #9147)
+Files: src/gui_gtk_x11.c
+
+Patch 8.2.3636
+Problem: Coverity warns for unreachable code.
+Solution: Remove unreachable else block.
+Files: src/gui_gtk_x11.c
+
+Patch 8.2.3637
+Problem: Typos in test files.
+Solution: Correct the typos. (Dominique Pellé, closes #9175)
+Files: src/testdir/runtest.mnv, src/testdir/test_debugger.mnv,
+ src/testdir/test_diffmode.mnv, src/testdir/test_edit.mnv,
+ src/testdir/test_excmd.mnv, src/testdir/test_flatten.mnv,
+ src/testdir/test_ins_complete.mnv, src/testdir/test_normal.mnv,
+ src/testdir/test_options.mnv, src/testdir/test_python2.mnv,
+ src/testdir/test_python3.mnv, src/testdir/test_quickfix.mnv,
+ src/testdir/test_recover.mnv, src/testdir/test_spellfile.mnv,
+ src/testdir/test_syntax.mnv, src/testdir/test_termcodes.mnv,
+ src/testdir/test_textobjects.mnv, src/testdir/test_trycatch.mnv,
+ src/testdir/test_mnv9_script.mnv, src/testdir/test_mnvinfo.mnv
+
+Patch 8.2.3638
+Problem: getcompletion() always passes zero as position to custom
+ completion function.
+Solution: Pass the pattern length. (closes #9173)
+Files: src/cmdexpand.c, src/testdir/test_cmdline.mnv
+
+Patch 8.2.3639 (after 8.2.2922)
+Problem: Line commented out accidentally.
+Solution: Uncomment. (Volodymyr Kot, closes #9172)
+Files: src/main.c
+
+Patch 8.2.3640
+Problem: Freeze when calling term_wait() in a close callback.
+Solution: Set a "closing" flag to tell term_wait() to return. (closes #9152)
+Files: src/channel.c, src/terminal.c, src/proto/terminal.pro,
+ src/testdir/test_terminal.mnv
+
+Patch 8.2.3641
+Problem: Xxd code has duplicate expressions.
+Solution: Refactor to avoid duplication. (closes #9185)
+Files: src/xxd/xxd.c
+
+Patch 8.2.3642
+Problem: List of distributed files is outdated.
+Solution: Rename term.h to termdefs.h.
+Files: Filelist
+
+Patch 8.2.3643
+Problem: Header for source file is outdated.
+Solution: Make the header more accurate. (closes #9186)
+Files: src/map.c, src/getchar.c
+
+Patch 8.2.3644
+Problem: Count for 'operatorfunc' in Visual mode is not redone.
+Solution: Add the count to the redo buffer. (closes #9174)
+Files: src/normal.c, src/proto/normal.pro, src/ops.c,
+ src/testdir/test_normal.mnv
+
+Patch 8.2.3645
+Problem: MNV9: The "no effect" error is not given for all registers.
+Solution: Include any character following '@'. (closes #8779)
+Files: src/ex_eval.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.3646
+Problem: Using <sfile> in a function gives an unexpected result.
+Solution: Give an error in a MNV9 function. (issue #9189)
+Files: src/scriptfile.c, src/errors.h, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3647
+Problem: GTK: when using ligatures the cursor is drawn wrong.
+Solution: Clear more characters when ligatures are used. (Dusan Popovic,
+ closes #9190)
+Files: src/gui.c
+
+Patch 8.2.3648
+Problem: "verbose pwd" is incorrect after dropping files on MNV.
+Solution: Set the chdir reason to "drop".
+Files: src/gui.c
+
+Patch 8.2.3649
+Problem: MNV9: error for variable declared in while loop.
+Solution: Do not keep the first variable. (closes #9191)
+Files: src/ex_eval.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3650
+Problem: MNV9: for loop variable can be a list member.
+Solution: Check for valid variable name. (closes #9179)
+Files: src/mnv9compile.c, src/dict.c, src/eval.c, src/evalvars.c,
+ src/proto/evalvars.pro, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3651
+Problem: MNV9: no error for :lock or :unlock with unknown variable.
+Solution: Give an error. (closes #9188)
+Files: src/evalvars.c, src/errors.h, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.3652
+Problem: Can only get text properties one line at a time.
+Solution: Add options to prop_list() to use a range of lines and filter by
+ types. (Yegappan Lakshmanan, closes #9138)
+Files: runtime/doc/textprop.txt, src/textprop.c,
+ src/testdir/test_textprop.mnv
+
+Patch 8.2.3653
+Problem: Terminal ANSI colors may be wrong.
+Solution: Initialize the color type. (closes #9198, closes #9197)
+Files: src/terminal.c
+
+Patch 8.2.3654
+Problem: GTK: a touch-drag does not update the selection.
+Solution: Add GDK_BUTTON1_MASK to the state. (Chris Dalton, close #9196,
+ closes #9194)
+Files: src/gui_gtk_x11.c
+
+Patch 8.2.3655
+Problem: Compiler warning for using size_t for int.
+Solution: Add a type cast. (Mike Williams, closes #9199)
+Files: src/mnv9compile.c
+
+Patch 8.2.3656
+Problem: MNV9: no error for an environment variable by itself.
+Solution: Give a "without effect" error. (closes #9166)
+Files: src/ex_eval.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.3657
+Problem: MNV9: debug text misses one line of return statement.
+Solution: Add a line when not at a debug instruction. (closes #9137)
+Files: src/mnv9execute.c, src/testdir/test_debugger.mnv
+
+Patch 8.2.3658
+Problem: Duplicate code in xxd.
+Solution: Merge duplicated code. Add more tests. (closes #9192)
+Files: src/xxd/xxd.c, src/testdir/test_xxd.mnv
+
+Patch 8.2.3659
+Problem: Integer overflow with large line number.
+Solution: Check for overflow. (closes #9202)
+Files: src/errors.h, src/ex_docmd.c, src/testdir/test_excmd.mnv
+ src/normal.c, src/testdir/test_normal.mnv
+
+Patch 8.2.3660 (after 8.2.3659)
+Problem: Overflow check uses wrong number.
+Solution: Divide by ten.
+Files: src/normal.c
+
+Patch 8.2.3661 (after 8.2.3659)
+Problem: Test for put with large count fails.
+Solution: Adjust the counts in the test.
+Files: src/testdir/test_put.mnv
+
+Patch 8.2.3662
+Problem: Illegal memory access if malloc() fails.
+Solution: Check 'foldmethod' is not empty. (closes #9207)
+Files: src/fold.c
+
+Patch 8.2.3663
+Problem: Using %S in printf() does not work correctly.
+Solution: Fix the problem and add more tests. (closes #9208)
+Files: src/strings.c, src/testdir/test_expr.mnv
+
+Patch 8.2.3664
+Problem: Cannot adjust sign highlighting for 'cursorline'.
+Solution: Add CursorLineSign and CursorLineFold highlight groups.
+ (Gregory Anders, closes #9201)
+Files: runtime/doc/sign.txt, runtime/doc/syntax.txt, src/drawline.c,
+ src/highlight.c, src/optiondefs.h, src/popupwin.c,
+ src/proto/sign.pro, src/sign.c, src/structs.h, src/mnv.h,
+ src/testdir/test_signs.mnv
+
+Patch 8.2.3665
+Problem: Cannot use a lambda for 'tagfunc'.
+Solution: Use 'tagfunc' like 'opfunc'. (Yegappan Lakshmanan, closes #9204)
+Files: runtime/doc/options.txt, src/buffer.c, src/option.c,
+ src/optionstr.c, src/proto/tag.pro, src/structs.h, src/tag.c,
+ src/testdir/test_tagfunc.mnv
+
+Patch 8.2.3666
+Problem: Libvterm is outdated.
+Solution: Include patches from revision 769 to revision 789.
+Files: Filelist, src/libvterm/Makefile, src/libvterm/doc/seqs.txt,
+ src/libvterm/include/vterm.h, src/libvterm/src/mouse.c,
+ src/libvterm/src/parser.c, src/libvterm/src/state.c,
+ src/libvterm/src/vterm.c, src/libvterm/src/vterm_internal.h,
+ src/libvterm/t/02parser.test, src/libvterm/t/17state_mouse.test,
+ src/libvterm/t/29state_fallback.test,
+ src/libvterm/t/40state_selection.test, src/libvterm/t/harness.c,
+ src/libvterm/t/run-test.pl, src/libvterm/vterm.pc.in,
+ src/terminal.c
+
+Patch 8.2.3667
+Problem: Building libvterm fails with MSVC.
+Solution: Don't use C99 construct.
+Files: src/libvterm/src/state.c
+
+Patch 8.2.3668
+Problem: Messages may be corrupted.
+Solution: Use another buffer instead of IObuff. (Yegappan Lakshmanan,
+ closes #9195)
+Files: src/highlight.c, src/testdir/test_highlight.mnv
+
+Patch 8.2.3669
+Problem: Buffer overflow with long help argument.
+Solution: Use snprintf().
+Files: src/help.c, src/testdir/test_help.mnv
+
+Patch 8.2.3670
+Problem: Error checks repeated several times.
+Solution: Move the checks to functions. (closes #9213)
+Files: src/xxd/xxd.c
+
+Patch 8.2.3671
+Problem: Restarting Insert mode in prompt buffer too often when a callback
+ switches windows and comes back. (Sean Dewar)
+Solution: Do not set "restart_edit" when already in Insert mode.
+ (closes #9212)
+Files: src/window.c, src/testdir/test_prompt_buffer.mnv
+
+Patch 8.2.3672 (after 8.2.3670)
+Problem: Build failure with unsigned char.
+Solution: Use int instead of char.
+Files: src/xxd/xxd.c
+
+Patch 8.2.3673
+Problem: Crash when allocating signal stack fails.
+Solution: Only using sourcing info when available. (closes #9215)
+Files: src/globals.h, src/message.c
+
+Patch 8.2.3674
+Problem: When ml_get_buf() fails it messes up IObuff.
+Solution: Return a local pointer. (closes #9214)
+Files: src/memline.c
+
+Patch 8.2.3675
+Problem: Using freed memory when mnv_strsave() fails.
+Solution: Clear "last_sourcing_name". Check for msg_source() called
+ recursively. (closes #8217)
+Files: src/message.c
+
+Patch 8.2.3676
+Problem: Unused runtime file.
+Solution: Remove rgb.txt.
+Files: runtime/rgb.txt
+
+Patch 8.2.3677
+Problem: After a put the '] mark is on the last byte of a multi-byte
+ character.
+Solution: Move it to the first byte. (closes #9047)
+Files: src/register.c, src/testdir/test_put.mnv
+
+Patch 8.2.3678 (after 8.2.3677)
+Problem: Illegal memory access.
+Solution: Ignore changed indent when computing byte offset.
+Files: src/register.c
+
+Patch 8.2.3679
+Problem: objc file detected as Octave. (Antony Lee)
+Solution: Detect objc by preprocessor lines. (Doug Kearns, closes #9223,
+ closes #9220)
+Files: runtime/autoload/dist/ft.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.3680
+Problem: Repeated code in xxd.
+Solution: Change exit_on_ferror() to getc_or_die(). (closes #9226)
+Files: src/xxd/xxd.c
+
+Patch 8.2.3681
+Problem: Cannot drag popup window after click on a status line. (Sergey
+ Vlasov)
+Solution: Reset on_status_line. (closes #9221)
+Files: src/mouse.c, src/testdir/test_popupwin.mnv,
+ src/testdir/dumps/Test_popupwin_drag_04.dump
+
+Patch 8.2.3682
+Problem: MNV9: assigning to a script variable drops the required type.
+Solution: Lookup the type of the variable and use it. (closes #9219)
+Files: src/evalvars.c, src/mnv9script.c, src/proto/mnv9script.pro,
+ src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.3683
+Problem: MNV9: cannot use `=expr` in :...do commands.
+Solution: Add EX_EXPAND to the commands. (closes #9232)
+Files: src/ex_cmds.h, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.3684
+Problem: Blockwise insert does not handle autoindent properly.
+Solution: Adjust text column for indent. (closes #9229)
+Files: src/ops.c, src/testdir/test_blockedit.mnv
+
+Patch 8.2.3685
+Problem: Visual Studio project files are not recognized.
+Solution: Use the xml file type. (Doug Kearns)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.3686
+Problem: Filetype detection often mixes up Forth and F#.
+Solution: Add a function to inspect the file contents. (Doug Kearns)
+Files: runtime/autoload/dist/ft.mnv, runtime/doc/filetype.txt,
+ runtime/doc/syntax.txt, runtime/filetype.mnv, runtime/scripts.mnv,
+ src/testdir/test_filetype.mnv
+
+Patch 8.2.3687
+Problem: Blockwise insert does not handle autoindent properly when tab is
+ inserted.
+Solution: Adjust text column for indent before computing column.
+ (closes #9229)
+Files: src/ops.c, src/testdir/test_blockedit.mnv
+
+Patch 8.2.3688
+Problem: The window title is not updated when dragging the scrollbar.
+Solution: Call maketitle(). (Christian Brabandt, closes #9238, closes #5383)
+Files: src/gui.c
+
+Patch 8.2.3689
+Problem: ex_let_one() is too long.
+Solution: Split into multiple functions.
+Files: src/evalvars.c
+
+Patch 8.2.3690
+Problem: MNV9: "filter #pat# cmd" does not work.
+Solution: Do not see #pat# as a comment.
+Files: src/ex_docmd.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.3691
+Problem: Build failure with small features.
+Solution: Add #ifdef. (Dominique Pellé)
+Files: src/gui.c
+
+Patch 8.2.3692
+Problem: MNV9: cannot use :func inside a :def function.
+Solution: Make it work.
+Files: src/mnv9compile.c, src/mnv9.h, src/mnv9execute.c, src/errors.h,
+ src/structs.h, src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.3693
+Problem: Coverity warns for possibly using a NULL pointer.
+Solution: Check for NULL and give an error.
+Files: src/mnv9execute.c, src/errors.h
+
+Patch 8.2.3694
+Problem: Cannot use quotes in the count of an Ex command.
+Solution: Add getdigits_quoted(). Give an error when misplacing a quote in
+ a range. (closes #9240)
+Files: src/ex_docmd.c, src/charset.c, src/proto/charset.pro,
+ src/testdir/test_usercommands.mnv
+
+Patch 8.2.3695
+Problem: Confusing error for missing key.
+Solution: Use the actual key for the error. (closes #9241)
+Files: src/eval.c, src/testdir/test_listdict.mnv
+
+Patch 8.2.3696
+Problem: MNV9: error for invalid assignment when skipping.
+Solution: Do not check white space when skipping. (closes #9243)
+Files: src/evalvars.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.3697
+Problem: Cannot drag a popup without a border.
+Solution: Add the "dragall" option. (closes #9218)
+Files: runtime/doc/popup.txt, src/mouse.c, src/popupwin.c, src/mnv.h,
+ src/testdir/test_popupwin.mnv,
+ src/testdir/dumps/Test_popupwin_drag_05.dump,
+ src/testdir/dumps/Test_popupwin_drag_06.dump
+
+Patch 8.2.3698
+Problem: Match highlighting continues over breakindent.
+Solution: Stop before the end column. (closes #9242)
+Files: src/match.c, src/proto/match.pro, src/drawline.c,
+ src/testdir/test_match.mnv,
+ src/testdir/dumps/Test_match_linebreak.dump
+
+Patch 8.2.3699
+Problem: The +title feature adds a lot of #ifdef but little code.
+Solution: Graduate the +title feature.
+Files: src/feature.h, src/alloc.c, src/arglist.c, src/autocmd.c,
+ src/buffer.c, src/bufwrite.c, src/change.c, src/drawscreen.c,
+ src/evalfunc.c, src/ex_cmds.c, src/ex_docmd.c, src/gui.c,
+ src/gui_gtk_x11.c, src/if_xcmdsrv.c, src/locale.c, src/main.c,
+ src/misc2.c, src/netbeans.c, src/option.c, src/optionstr.c,
+ src/os_amiga.c, src/os_mswin.c, src/os_unix.c, src/os_win32.c,
+ src/regexp.c, src/term.c, src/ui.c, src/version.c, src/window.c,
+ src/globals.h, src/option.h, src/optiondefs.h,
+ runtime/doc/options.txt, runtime/doc/various.txt
+
+Patch 8.2.3700
+Problem: Text property highlighting continues over breakindent.
+Solution: Stop before the end column. (closes #9242)
+Files: src/drawline.c, src/testdir/test_textprop.mnv,
+ src/testdir/dumps/Test_prop_linebreak.dump
+
+Patch 8.2.3701
+Problem: MNV9: invalid LHS is not possible.
+Solution: Remove unreachable error message.
+Files: src/mnv9compile.c
+
+Patch 8.2.3702
+Problem: First key in dict is seen as curly expression and fails.
+Solution: Ignore failure of curly expression. (closes #9247)
+Files: src/typval.c, src/dict.c, src/testdir/test_listdict.mnv
+
+Patch 8.2.3703 (after 8.2.3686)
+Problem: Most people call F# "fsharp" and not "fs".
+Solution: Rename filetype "fs" to "fsharp".
+Files: runtime/autoload/dist/ft.mnv, runtime/filetype.mnv,
+ src/testdir/test_filetype.mnv
+
+Patch 8.2.3704
+Problem: MNV9: cannot use a list declaration in a :def function.
+Solution: Make it work.
+Files: runtime/doc/mnv9.txt, src/mnv9compile.c, src/errors.h,
+ src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.3705
+Problem: Cannot pass a lambda name to function() or funcref(). (Yegappan
+ Lakshmanan)
+Solution: Handle a lambda name differently.
+Files: src/userfunc.c, src/proto/userfunc.pro, src/evalfunc.c,
+ src/testdir/test_expr.mnv
+
+Patch 8.2.3706 (after 8.2.3700)
+Problem: Text property highlighting is used on Tab.
+Solution: Only set in_linebreak when not on a Tab. (closes #9242)
+Files: src/drawline.c, src/testdir/test_textprop.mnv,
+ src/testdir/dumps/Test_prop_after_tab.dump
+
+Patch 8.2.3707
+Problem: MNV9: constant expression of elseif not recognized.
+Solution: Set instruction count before generating the expression.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.3708 (after 8.2.3707)
+Problem: MNV9: test fails with different error.
+Solution: Correct the error number.
+Files: src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.3709
+Problem: MNV9: backtick expression expanded when not desired.
+Solution: Only expand a backtick expression for commands that expand their
+ argument. Remove a few outdated TODO comments.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.3710
+Problem: MNV9: backtick expression expanded for :global.
+Solution: Check the following command.
+Files: runtime/doc/mnv9.txt, src/mnv9compile.c,
+ src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.3711
+Problem: MNV9: memory leak when compiling :elseif fails.
+Solution: Cleanup ppconst.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.3712
+Problem: Cannot use MNV9 lambda for 'tagfunc'.
+Solution: Make it work, add more tests. (Yegappan Lakshmanan, closes #9250)
+Files: runtime/doc/options.txt, src/insexpand.c, src/option.c,
+ src/testdir/test_tagfunc.mnv
+
+Patch 8.2.3713
+Problem: MS-Windows: No error message if mnvgrep pattern is not matching.
+Solution: Give an error message. (Christian Brabandt, closes #9245,
+ closes #8762)
+Files: src/quickfix.c, src/testdir/test_quickfix.mnv
+
+Patch 8.2.3714
+Problem: Some unused assignments and ugly code in xxd.
+Solution: Leave out assignments. Use marcro for fprintf(). (closes #9246)
+Files: src/xxd/xxd.c
+
+Patch 8.2.3715
+Problem: MNV9: valgrind reports spurious problems for a test.
+Solution: Move the test to the set that is known to fail.
+Files: src/testdir/test_mnv9_builtin.mnv, src/testdir/test_mnv9_fails.mnv
+
+Patch 8.2.3716
+Problem: MNV9: range without a command is not compiled.
+Solution: Add the ISN_EXECRANGE byte code.
+Files: src/ex_docmd.c, src/proto/ex_docmd.pro, src/mnv9compile.c,
+ src/mnv9execute.c, src/mnv9.h,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.3717
+Problem: MNV9: error for constant list size is only given at runtime.
+Solution: Give the error at compile time if possible.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_assign.mnv,
+ src/testdir/test_mnv9_script.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.3718
+Problem: Compiler warns for unused variable without the +textprop feature.
+ (John Marriott)
+Solution: Adjust #ifdefs.
+Files: src/drawline.c
+
+Patch 8.2.3719
+Problem: MS-Windows: test sometimes runs into existing swap file.
+Solution: Use a different file name.
+Files: src/testdir/test_buffer.mnv
+
+Patch 8.2.3720
+Problem: MNV9: Internal error when invoking closure in legacy context.
+Solution: Give a more appropriate error message. (closes #9251)
+Files: src/errors.h, src/mnv9execute.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.3721
+Problem: Using memory freed by losing the clipboard selection. (Dominique
+ Pellé)
+Solution: Check y_array is still valid after calling changed_lines().
+ (closes #9253)
+Files: src/errors.h, src/register.c
+
+Patch 8.2.3722
+Problem: Amiga: superfluous messages for freeing lots of yanked text.
+Solution: Assume that the machine isn't that slow these days.
+Files: src/register.c
+
+Patch 8.2.3723
+Problem: When using 'linebreak' a text property starts too early.
+Solution: Decrement "bcol" when looking for property start. (closes #9242)
+Files: src/drawline.c, src/testdir/test_textprop.mnv,
+ src/testdir/dumps/Test_prop_after_linebreak.dump
+
+Patch 8.2.3724
+Problem: Build error for missing error message in small build.
+Solution: Correct #ifdef.
+Files: src/errors.h
+
+Patch 8.2.3725
+Problem: Cannot use a lambda for 'completefunc' and 'omnifunc'.
+Solution: Implement lambda support. (Yegappan Lakshmanan, closes #9257)
+Files: runtime/doc/options.txt, src/buffer.c, src/insexpand.c,
+ src/option.c, src/optionstr.c, src/proto/insexpand.pro,
+ src/proto/tag.pro, src/proto/userfunc.pro, src/structs.h,
+ src/tag.c, src/userfunc.c, src/testdir/test_ins_complete.mnv,
+ src/testdir/test_tagfunc.mnv
+
+Patch 8.2.3726
+Problem: README file in a config directory gets wrong filetype.
+Solution: Match README before patterns that match everything in a directory.
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.3727
+Problem: In a gnome terminal keys are recognized as mouse events.
+Solution: Only recognize DEC mouse events when four numbers are following.
+ (closes #9256)
+Files: src/term.c, src/testdir/test_termcodes.mnv
+
+Patch 8.2.3728
+Problem: Internal error when passing range() to list2blob().
+Solution: Materialize the list first. (closes #9262)
+Files: src/blob.c, src/testdir/test_blob.mnv
+
+Patch 8.2.3729
+Problem: No support for squirrels.
+Solution: Recognize nuts. (closes #9259)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.3730
+Problem: "/etc/Muttrc.d/README" gets filetype muttrc.
+Solution: Move the Muttrc.d pattern down, add exception for *.rc files.
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.3731
+Problem: "set! termcap" shows codes in one column, but not keys.
+Solution: Also use one column for keys. (closes #9258)
+Files: src/option.c, src/term.c, src/proto/term.pro,
+ src/testdir/test_set.mnv
+
+Patch 8.2.3732 (after 8.2.3731)
+Problem: "set! termcap" test fails.
+Solution: Account for keys without a t_xx entry.
+Files: src/testdir/test_set.mnv
+
+Patch 8.2.3733
+Problem: MNV9: using "legacy" before range does not work.
+Solution: Skip over range before parsing command. (closes #9270)
+Files: src/mnv9compile.c, src/usercmd.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.3734
+Problem: MNV9: crash when no pattern match found.
+Solution: Check for error.
+Files: src/mnv9execute.c
+
+Patch 8.2.3735
+Problem: Cannot use a lambda for 'imactivatefunc'.
+Solution: Add lambda support for 'imactivatefunc' and 'imstatusfunc'.
+ (Yegappan Lakshmanan, closes #9275)
+Files: runtime/doc/options.txt, src/alloc.c, src/gui_xim.c,
+ src/optionstr.c, src/proto/gui_xim.pro,
+ src/testdir/test_iminsert.mnv, src/testdir/test_ins_complete.mnv
+
+Patch 8.2.3736
+Problem: Test fails without the channel feature. (Dominique Pellé)
+Solution: Source the check.mnv script. (closes #9277)
+Files: src/testdir/test_mnv9_fails.mnv
+
+Patch 8.2.3737
+Problem: Test fails without the 'autochdir' option.
+Solution: Check that the option is available. (Dominique Pellé, closes #9272)
+Files: src/testdir/test_cd.mnv
+
+Patch 8.2.3738
+Problem: Screen is cleared when a FocusLost autocommand triggers.
+Solution: Do not redraw when at the hit-enter or more prompt. (closes #9274)
+Files: src/misc1.c
+
+Patch 8.2.3739
+Problem: In wrong directory when using win_execute() with 'acd' set.
+Solution: Restore the directory when returning to the window. (closes #9276)
+Files: src/window.c, src/testdir/test_autochdir.mnv
+
+Patch 8.2.3740
+Problem: Memory left allocated on exit when using Tcl.
+Solution: Call Tcl_Finalize().
+Files: src/if_tcl.c, src/proto/if_tcl.pro, src/alloc.c
+
+Patch 8.2.3741
+Problem: Using freed memory in open command.
+Solution: Make a copy of the current line.
+Files: src/ex_docmd.c, src/testdir/test_ex_mode.mnv
+
+Patch 8.2.3742
+Problem: Dec mouse test fails without gnome terminfo entry.
+Solution: Check if there is a gnome entry. Also fix 'acd' test on
+ MS-Windows. (Ozaki Kiichi, closes #9282)
+Files: src/testdir/test_termcodes.mnv, src/testdir/test_autochdir.mnv
+
+Patch 8.2.3743
+Problem: ":sign" can add a highlight group without a name.
+Solution: Give an error if the group name is missing. (closes #9280)
+Files: src/sign.c, src/errors.h, src/testdir/test_signs.mnv
+
+Patch 8.2.3744
+Problem: E854 is not tested; some spelling suggestions are not tested.
+Solution: Add a couple of tests. (Dominique Pellé, closes #9279)
+Files: src/testdir/test_options.mnv, src/testdir/test_spell.mnv
+
+Patch 8.2.3745
+Problem: Autochdir test fails without the +channel feature.
+Solution: Remove the ch_logfile() call. (Dominique Pellé, closes #9281)
+Files: src/testdir/test_autochdir.mnv
+
+Patch 8.2.3746
+Problem: Cannot disassemble function starting with "debug" or "profile".
+Solution: Check for white space following. (closes #9273)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3747 (after 8.2.3743)
+Problem: Cannot remove highlight from an existing sign. (James McCoy)
+Solution: Only reject empty argument for a new sign.
+Files: src/sign.c, src/testdir/test_signs.mnv
+
+Patch 8.2.3748 (after 8.2.3747)
+Problem: Giving an error for an empty sign argument breaks a plugin.
+Solution: Do not give an error.
+Files: src/sign.c, src/errors.h, src/testdir/test_signs.mnv
+
+Patch 8.2.3749
+Problem: Error messages are everywhere.
+Solution: Move more error messages to errors.h and adjust the names.
+Files: src/errors.h, src/regexp_bt.c, src/regexp.c, src/regexp_nfa.c,
+ src/globals.h, src/memfile.c, src/tag.c, src/getchar.c,
+ src/bufwrite.c, src/cmdexpand.c
+
+Patch 8.2.3750
+Problem: Error messages are everywhere.
+Solution: Move more error messages to errors.h and adjust the names.
+Files: src/globals.h, src/errors.h, src/blob.c, src/buffer.c,
+ src/channel.c, src/ex_docmd.c, src/job.c, src/list.c, src/mark.c,
+ src/misc1.c, src/os_unix.c, src/popupwin.c, src/register.c,
+ src/session.c, src/spellfile.c, src/term.c, src/userfunc.c
+
+Patch 8.2.3751
+Problem: Cannot assign a lambda to an option that takes a function.
+Solution: Automatically convert the lambda to a string. (Yegappan
+ Lakshmanan, closes #9286)
+Files: runtime/doc/options.txt, src/eval.c, src/proto/eval.pro,
+ src/evalvars.c, src/if_mzsch.c, src/if_ruby.c, src/if_tcl.c,
+ src/option.c, src/option.h, src/optiondefs.h,
+ src/proto/option.pro, src/spell.c, src/typval.c,
+ src/mnv9compile.c, src/testdir/test_iminsert.mnv,
+ src/testdir/test_ins_complete.mnv, src/testdir/test_tagfunc.mnv
+
+Patch 8.2.3752
+Problem: Build error when using Photon GUI.
+Solution: Adjust #ifdef. (closes #9288)
+Files: src/beval.c
+
+Patch 8.2.3753
+Problem: MNV9: function unreferenced while called is never deleted.
+Solution: Delete a function when no longer referenced.
+Files: src/mnv9execute.c, src/userfunc.c, src/proto/userfunc.pro
+
+Patch 8.2.3754 (after 8.2.3615)
+Problem: Undesired changing of the indent of the first formatted line.
+Solution: Do not indent the first formatted line.
+Files: src/textformat.c, src/testdir/test_indent.mnv
+
+Patch 8.2.3755
+Problem: Coverity warns for using a buffer in another scope.
+Solution: Declare the buffer in a common scope.
+Files: src/evalvars.c
+
+Patch 8.2.3756
+Problem: might crash when callback is not valid.
+Solution: Check for valid callback. (Yegappan Lakshmanan, closes #9293)
+Files: src/insexpand.c, src/option.c, src/tag.c, src/job.c,
+ src/userfunc.c, src/testdir/test_iminsert.mnv,
+ src/testdir/test_ins_complete.mnv, src/testdir/test_tagfunc.mnv
+
+Patch 8.2.3757
+Problem: An overlong highlight group name is silently truncated.
+Solution: Give an error if the name is too long. (closes #9289)
+Files: src/errors.h, src/highlight.c, src/testdir/test_highlight.mnv
+
+Patch 8.2.3758
+Problem: Options that take a function insufficiently tested.
+Solution: Add additional tests and enhance existing tests. (Yegappan
+ Lakshmanan, closes #9298)
+Files: src/testdir/test_ins_complete.mnv, src/testdir/test_normal.mnv,
+ src/testdir/test_tagfunc.mnv
+
+Patch 8.2.3759
+Problem: Quickfix buffer becomes hidden while still in a window.
+Solution: Check if the closed window is the last window showing the quickfix
+ buffer. (Yegappan Lakshmanan, closes #9303, closes #9300)
+Files: src/quickfix.c, src/testdir/test_quickfix.mnv, src/window.c
+
+Patch 8.2.3760
+Problem: Not automatically handling gnome terminal mouse like xterm.
+Solution: Default 'ttymouse' to "xterm" and recognize Focus events.
+ (issue #9296)
+Files: src/os_unix.c
+
+Patch 8.2.3761
+Problem: Focus change is not passed on to a terminal window.
+Solution: If the current window is a terminal and focus events are enabled
+ send a focus event escape sequence to the terminal.
+Files: src/ui.c, src/terminal.c, src/proto/terminal.pro,
+ src/testdir/test_terminal.mnv,
+ src/testdir/dumps/Test_terminal_focus_1.dump,
+ src/testdir/dumps/Test_terminal_focus_2.dump
+
+Patch 8.2.3762
+Problem: If the quickfix buffer is wiped out getqflist() still returns its
+ number.
+Solution: Use zero if the buffer is no longer present. (Yegappan Lakshmanan,
+ closes #9306)
+Files: src/quickfix.c, src/testdir/test_quickfix.mnv
+
+Patch 8.2.3763
+Problem: When editing the command line a FocusLost callback may cause the
+ screen to scroll up.
+Solution: Do not redraw at the last line but at the same place where the
+ command line was before. (closes #9295)
+Files: src/ex_getln.c, src/ui.c, src/beval.c, src/channel.c,
+ src/drawscreen.c, src/proto/drawscreen.pro, src/job.c,
+ src/popupwin.c, src/sound.c, src/terminal.c, src/time.c,
+ src/testdir/test_terminal.mnv,
+ src/testdir/dumps/Test_terminal_focus_1.dump,
+ src/testdir/dumps/Test_terminal_focus_2.dump,
+ src/testdir/dumps/Test_terminal_focus_3.dump
+
+Patch 8.2.3764
+Problem: Cannot see any text when window was made zero lines or zero
+ columns.
+Solution: Ensure there is at least one line and column. (fixes #9307)
+Files: src/window.c, src/proto/window.pro, src/normal.c, src/edit.c,
+ src/testdir/test_window_cmd.mnv
+
+Patch 8.2.3765
+Problem: MNV9: cannot use a lambda for 'opfunc' and others.
+Solution: Convert the lambda to a string.
+Files: src/mnv9compile.c, src/mnv9.h, src/mnv9execute.c,
+ src/testdir/test_mnv9_func.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.3766
+Problem: Converting a funcref to a string leaves out "g:", causing the
+ meaning of the name depending on the context.
+Solution: Prepend "g:" for a global function.
+Files: src/eval.c, src/testdir/test_functions.mnv
+
+Patch 8.2.3767 (after 8.2.3766)
+Problem: Crash when using NULL partial.
+Solution: Check for NULL.
+Files: src/eval.c
+
+Patch 8.2.3768
+Problem: timer_info() has the wrong repeat value in a timer callback.
+ (Sergey Vlasov)
+Solution: Do not add one to the repeat value when in the callback.
+ (closes #9294)
+Files: src/time.c, src/testdir/test_timers.mnv
+
+Patch 8.2.3769
+Problem: Zig files are not recognized.
+Solution: Add *.zig. (Gregory Anders, closes #9313)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.3770
+Problem: New compiler warnings from clang-12 and clang-13.
+Solution: Adjust CI and suppress some warnings. (Ozaki Kiichi, closes #9314)
+Files: .github/workflows/ci.yml, ci/config.mk.clang-12.sed,
+ src/os_unix.c, src/spellfile.c
+
+Patch 8.2.3771
+Problem: MNV9: accessing freed memory when checking type.
+Solution: Make a copy of a function type.
+Files: src/structs.h, src/evalvars.c, src/mnv9script.c,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.3772
+Problem: Timer info test fails on slow machine.
+Solution: Use WaitForAssert().
+Files: src/testdir/test_timers.mnv
+
+Patch 8.2.3773
+Problem: Wrong window size when a modeline changes 'columns' and there is
+ more than one tabpage. (Michael Soyka)
+Solution: Adjust the frames of all tabpages. (closes #9315)
+Files: src/window.c
+
+Patch 8.2.3774 (after 8.2.3773)
+Problem: Test for command line height fails.
+Solution: Use another way to handle window size change.
+Files: src/structs.h, src/window.c
+
+Patch 8.2.3775
+Problem: MNV9: lambda compiled without outer context when debugging.
+Solution: When compiling a lambda for debugging also compile it without.
+ (closes #9302)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3776
+Problem: When a tags file line is long a tag may not be found.
+Solution: When increasing the buffer size read the same line again.
+Files: src/tag.c, src/testdir/test_taglist.mnv
+
+Patch 8.2.3777
+Problem: Spell file write error not checked.
+Solution: Check writing the prefix conditions. (Bjorn Linse, closes #9323)
+Files: src/spellfile.c
+
+Patch 8.2.3778
+Problem: Lambda debug test fails in some configurations.
+Solution: Check feature in a legacy function.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3779
+Problem: Using freed memory when defining a user command from a user
+ command.
+Solution: Do not use the command pointer after executing the command.
+ (closes #9318)
+Files: src/usercmd.c, src/testdir/test_usercommands.mnv
+
+Patch 8.2.3780
+Problem: ":cd" works differently on MS-Windows.
+Solution: Add the 'cdhome' option. (closes #9324)
+Files: runtime/doc/editing.txt, runtime/doc/options.txt,
+ runtime/doc/quickref.txt, runtime/optwin.mnv, src/ex_docmd.c,
+ src/option.h, src/optiondefs.h, src/testdir/runtest.mnv,
+ src/testdir/test_options.mnv
+
+Patch 8.2.3781
+Problem: The option window script is outdated.
+Solution: Add several changes.
+Files: runtime/optwin.mnv
+
+Patch 8.2.3782
+Problem: MNV9: no error if a function shadows a script variable.
+Solution: Check the function doesn't shadow a variable. (closes #9310)
+Files: src/userfunc.c, src/evalvars.c, src/mnv.h,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3783
+Problem: Confusing error for using a variable as a function.
+Solution: If a function is not found but there is a variable, give a more
+ useful error. (issue #9310)
+Files: src/eval.c, src/userfunc.c, src/proto/userfunc.pro,
+ src/structs.h, src/mnv9execute.c, src/testdir/test_functions.mnv,
+ src/testdir/test_mnv9_script.mnv, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.3784
+Problem: The help for options is outdated.
+Solution: Include all the recent changes.
+Files: runtime/doc/options.txt
+
+Patch 8.2.3785
+Problem: Running CI on macOS with gcc is not useful.
+Solution: Only use clang. (Ozaki Kiichi, closes #9326) Also build with
+ normal features.
+Files: .github/workflows/ci.yml
+
+Patch 8.2.3786
+Problem: Test fails because of using MNV9 syntax in legacy function.
+Solution: Add "call".
+Files: src/testdir/test_functions.mnv
+
+Patch 8.2.3787
+Problem: No proper formatting of a C line comment after a statement.
+Solution: Find the start of the line comment, insert the comment leader and
+ indent the comment properly.
+Files: src/change.c, src/proto/change.pro, src/search.c,
+ src/proto/search.pro, src/cindent.c, src/edit.c, src/normal.c,
+ src/textformat.c, src/testdir/test_textformat.mnv,
+ src/testdir/test_cindent.mnv
+
+Patch 8.2.3788
+Problem: Lambda for option that is a function may be garbage collected.
+Solution: Set a reference in the funcref. (Yegappan Lakshmanan,
+ closes #9330)
+Files: src/eval.c, src/evalbuffer.c, src/evalvars.c, src/gui_xim.c,
+ src/insexpand.c, src/ops.c, src/proto/eval.pro,
+ src/proto/gui_xim.pro, src/proto/insexpand.pro, src/proto/ops.pro,
+ src/proto/tag.pro, src/quickfix.c, src/tag.c,
+ src/testdir/test_iminsert.mnv, src/testdir/test_ins_complete.mnv,
+ src/testdir/test_normal.mnv, src/testdir/test_quickfix.mnv,
+ src/testdir/test_tagfunc.mnv
+
+Patch 8.2.3789
+Problem: Test_window_minimal_size can fail on a slow machine.
+Solution: Do not rely on timers firing at the expected time. (Ozaki Kiichi,
+ closes #9335)
+Files: src/testdir/test_window_cmd.mnv
+
+Patch 8.2.3790
+Problem: Test for term_gettitle() fails in some environments.
+Solution: Make the digits after "MNV" optional. (Kenta Sato, closes #9334)
+Files: src/testdir/test_terminal2.mnv
+
+Patch 8.2.3791
+Problem: Build error with +cindent but without +smartindent.
+Solution: Move declaration of "do_cindent". (John Marriott)
+Files: src/change.c
+
+Patch 8.2.3792
+Problem: Setting *func options insufficiently tested.
+Solution: Improve tests. (Yegappan Lakshmanan, closes #9337)
+Files: src/testdir/test_iminsert.mnv, src/testdir/test_ins_complete.mnv,
+ src/testdir/test_normal.mnv, src/testdir/test_quickfix.mnv,
+ src/testdir/test_tagfunc.mnv
+
+Patch 8.2.3793
+Problem: Using "g:Func" as a funcref does not work in script context
+ because "g:" is dropped.
+Solution: Keep "g:" in the name. Also add parenthesis to avoid confusing
+ operator precedence. (closes #9336)
+Files: src/evalvars.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.3794
+Problem: MNV9: cannot find script-local func using "s:". (Yegappan
+ Lakshmanan)
+Solution: Skip the "s:".
+Files: src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.3795
+Problem: Too many #ifdefs.
+Solution: Graduate the jumplist feature.
+Files: runtime/doc/various.txt, runtime/doc/motion.txt, src/feature.h,
+ src/buffer.c, src/change.c, src/evalfunc.c, src/ex_docmd.c,
+ src/mark.c, src/normal.c, src/undo.c, src/version.c,
+ src/mnvinfo.c, src/window.c, src/structs.h,
+ src/testdir/test_changelist.mnv, src/testdir/test_jumplist.mnv,
+ src/testdir/test_normal.mnv
+
+Patch 8.2.3796
+Problem: The funcexe_T struct members are not named consistently.
+Solution: Prefix "fe_" to all the members.
+Files: src/structs.h, src/eval.c, src/list.c, src/regexp.c,
+ src/terminal.c, src/userfunc.c, src/mnv9execute.c
+
+Patch 8.2.3797
+Problem: No good reason to limit the message history in the tiny version.
+Solution: Always use 200.
+Files: runtime/doc/message.txt, src/feature.h
+
+Patch 8.2.3798
+Problem: A :def callback function postpones an error message.
+Solution: Display the error after calling the function. (closes #9340)
+Files: src/userfunc.c, src/testdir/test_mnv9_func.mnv,
+ src/testdir/dumps/Test_opfunc_error.dump
+
+Patch 8.2.3799 (after 8.2.3798)
+Problem: Edit test hangs or fails.
+Solution: Do not rethrow an exception when inside try/catch.
+Files: src/userfunc.c
+
+Patch 8.2.3800
+Problem: When cross compiling the output of "uname" cannot be set. (Ben
+ Reeves)
+Solution: Use cache variables. (closes #9338)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.3801
+Problem: If a terminal shows in two windows, only one is redrawn.
+Solution: Reset the dirty row range only after redrawing all windows.
+ (closes #9341)
+Files: src/terminal.c, src/proto/terminal.pro, src/drawscreen.c,
+ src/testdir/test_terminal.mnv
+
+Patch 8.2.3802
+Problem: Terminal in two windows test fails on some systems.
+Solution: Wait a bit between commands.
+Files: src/testdir/test_terminal.mnv
+
+Patch 8.2.3803
+Problem: Crash when 'writedelay' is set and using a terminal window to
+ execute a shell command.
+Solution: Check that "tl_vterm" isn't NULL. (closes #9346)
+Files: src/terminal.c
+
+Patch 8.2.3804
+Problem: Script context not set when copying 'swf' and 'ts'.
+Solution: Use COPY_OPT_SCTX with the right argument. (closes #9347)
+Files: src/option.c
+
+Patch 8.2.3805
+Problem: i3config files are not recognized.
+Solution: Add patterns to match i3config files. (Quentin Hibon,
+ closes #7969)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.3806
+Problem: Terminal focus test fails sometimes.
+Solution: Run the test function before others.
+Files: src/testdir/test_terminal.mnv
+
+Patch 8.2.3807
+Problem: MNV9: can call import with star directly.
+Solution: Check that the import used star.
+Files: src/userfunc.c, src/eval.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3808
+Problem: MNV9: obsolete TODO items
+Solution: Remove the comments.
+Files: src/mnv9execute.c
+
+Patch 8.2.3809
+Problem: MNV9: crash when garbage collecting a nested partial. (Virginia
+ Senioria)
+Solution: Set references in all the funcstacks. (closes #9348)
+Files: src/mnv9execute.c, src/proto/mnv9execute.pro, src/structs.h,
+ src/eval.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.3810
+Problem: MNV9: expr4 test fails on MS-Windows.
+Solution: Do not give an error for a missing function name when skipping.
+Files: src/eval.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.3811
+Problem: The opfunc error test fails on a slow machine.
+Solution: Use WaitForAssert().
+Files: src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.3812
+Problem: MNV9: leaking memory in numbered function test.
+Solution: Skip "g:" when checking for numbered function. Clean up after
+ errors properly.
+Files: src/userfunc.c
+
+Patch 8.2.3813
+Problem: confusing error when using :cc without error list. (Gary Johnson)
+Solution: Give the "no errors" error.
+Files: src/ex_docmd.c, src/testdir/test_quickfix.mnv
+
+Patch 8.2.3814
+Problem: .csx files and .sln files are not recognized.
+Solution: Add filetype patterns. (Doug Kearns)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.3815
+Problem: MNV9: cannot have a multi-line dict inside a block.
+Solution: Do not split the command at a line break, handle NL characters
+ as white space.
+Files: src/ex_docmd.c, src/charset.c, src/proto/charset.pro,
+ src/eval.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.3816
+Problem: Compiler warning for possible loss of data on MS-Windows.
+Solution: Add type cast. (Mike Williams, closes #9349)
+Files: src/userfunc.c
+
+Patch 8.2.3817 (after 8.2.3815)
+Problem: MNV9: Not using NL as command end does not work for :autocmd.
+Solution: Only ignore NL for commands with an expression argument.
+Files: src/ex_cmds.h, src/ex_docmd.c, src/testdir/test_usercommands.mnv
+
+Patch 8.2.3818
+Problem: Cannot filter or map characters in a string.
+Solution: Make filter() and map() work on a string. (Naruhiko Nishino,
+ closes #9327)
+Files: runtime/doc/eval.txt, src/errors.h, src/list.c,
+ src/testdir/test_filter_map.mnv
+
+Patch 8.2.3819 (after 8.2.3818)
+Problem: Test fails because error message changed.
+Solution: Update screendumps.
+Files: src/testdir/dumps/Test_popupwin_three_errors_1.dump,
+ src/testdir/dumps/Test_popupwin_three_errors_2.dump
+
+Patch 8.2.3820
+Problem: "vrc" does not replace composing characters, while "rc" does.
+Solution: Check the byte length including composing characters.
+ (closes #9351)
+Files: src/ops.c, src/testdir/test_visual.mnv
+
+Patch 8.2.3821
+Problem: ASAN test run fails.
+Solution: Use asan_symbolize-13 instead of asan_symbolize-11.
+Files: .github/workflows/ci.yml
+
+Patch 8.2.3822
+Problem: Leaking memory in map() and filter(), cannot use a string argument
+ in MNV9 script.
+Solution: Fix the leak, adjust the argument check, also run the tests as
+ MNV9 script. (Yegappan Lakshmanan, closes #9354)
+Files: src/errors.h, src/evalfunc.c, src/list.c, src/proto/typval.pro,
+ src/testdir/test_filter_map.mnv,
+ src/testdir/test_mnv9_builtin.mnv, src/typval.c
+
+Patch 8.2.3823
+Problem: Test for visual replace is in wrong function.
+Solution: Move it to another function.
+Files: src/testdir/test_visual.mnv
+
+Patch 8.2.3824
+Problem: No ASAN support for MSVC.
+Solution: Add ASAN support and fix a couple of uncovered problems. (Yegappan
+ Lakshmanan, closes #9357)
+Files: src/Make_mvc.mak, src/findfile.c, src/os_mswin.c,
+ src/testdir/test_fnamemodify.mnv
+
+Patch 8.2.3825
+Problem: Various comments could be improved.
+Solution: Improve the comments.
+Files: src/getchar.c, src/mbyte.c, src/regexp_nfa.c,
+ src/testdir/test_edit.mnv, src/gui_motif.c
+
+Patch 8.2.3826
+Problem: MNV9: using "g:Func" as a funcref does not work in a :def
+ function.
+Solution: Include "g:" in the function name. (closes #9336)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.3827
+Problem: Huntr badge does not really fit in the list.
+Solution: Move the link to Huntr to the issue template.
+Files: Filelist, .github/ISSUE_TEMPLATE/bug_report.yml, README.md
+
+Patch 8.2.3828
+Problem: when opening a terminal from a timer the first typed character
+ is lost. (Virginia Senioria)
+Solution: When opening a terminal while waiting for a character put K_IGNORE
+ in the input buffer.
+Files: src/terminal.c, src/edit.c, src/testdir/test_terminal.mnv
+
+Patch 8.2.3829
+Problem: No error when setting a func option to a script-local function.
+Solution: Give an error if the name starts with "s:". (closes #9358)
+Files: src/option.c, src/testdir/test_tagfunc.mnv,
+ src/testdir/dumps/Test_set_tagfunc_on_cmdline.dump
+
+Patch 8.2.3830
+Problem: Error messages are spread out.
+Solution: Move more error messages to errors.h.
+Files: src/globals.h, src/errors.h, src/buffer.c, src/dict.c, src/diff.c,
+ src/digraph.c, src/eval.c, src/evalfunc.c, src/evalvars.c,
+ src/misc2.c, src/quickfix.c, src/typval.c, src/ui.c,
+ src/userfunc.c, src/mnv9compile.c, src/mnv9execute.c,
+ src/mnv9type.c, src/window.c
+
+Patch 8.2.3831
+Problem: Opfunc test fails when missing feature changes function name.
+ (Dominique Pellé)
+Solution: Check the relevant screen line instead of using a screendump.
+ (closes #9360)
+Files: src/testdir/test_mnv9_func.mnv,
+ src/testdir/dumps/Test_opfunc_error.dump
+
+Patch 8.2.3832 (after 8.2.3830)
+Problem: Test fails because of changed error message.
+Solution: Adjust the expected error message.
+Files: src/testdir/test_mnvscript.mnv
+
+Patch 8.2.3833
+Problem: Error from term_start() not caught by try/catch.
+Solution: save and restore did_emsg when applying autocommands. (Ozaki
+ Kiichi, closes #9361)
+Files: src/autocmd.c, src/testdir/test_terminal3.mnv
+
+Patch 8.2.3834
+Problem: Test_out_cb often fails on Mac.
+Solution: Increase the timeout with every retry.
+Files: src/testdir/test_channel.mnv
+
+Patch 8.2.3835
+Problem: The inline-function example does not work.
+Solution: Drop ":let". Add EX_EXPR_ARG to CMD_var. (issue #9352)
+Files: runtime/doc/mnv9.txt, src/ex_cmds.h,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.3836
+Problem: MNV9: comment after expression not skipped to find NL.
+Solution: After evaluating an expression look for a newline after a #
+ comment.
+Files: src/eval.c
+
+Patch 8.2.3837
+Problem: QNX: crash when compiled with GUI but using terminal.
+Solution: Check gui.in_use is set. (Hirohito Higashi, closes #9363)
+Files: src/autocmd.c
+
+Patch 8.2.3838
+Problem: Cannot use script-local function for setting *func options.
+Solution: Use the script context. (Yegappan Lakshmanan, closes #9362)
+Files: src/option.c, src/testdir/dumps/Test_set_tagfunc_on_cmdline.dump,
+ src/testdir/test_ins_complete.mnv, src/testdir/test_normal.mnv,
+ src/testdir/test_quickfix.mnv, src/testdir/test_tagfunc.mnv
+
+Patch 8.2.3839
+Problem: Using \z() with \z1 not tested for syntax highlighting.
+Solution: Add a test. (Dominique Pellé, closes #9365)
+Files: src/testdir/test_syntax.mnv
+
+Patch 8.2.3840
+Problem: Useless test for negative index in check functions.
+Solution: Remove the test for negative index. (Naruhiko Nishino,
+ closes #9364)
+Files: src/typval.c
+
+Patch 8.2.3841
+Problem: MNV9: outdated TODO items, disabled tests that work.
+Solution: Remove TODO items, run tests that work now. Check that a dict
+ item isn't locked.
+Files: src/mnv9execute.c, src/evalvars.c, src/errors.h, src/globals.h,
+ src/testdir/test_listdict.mnv, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.3842
+Problem: MNV9: can change locked list and list items.
+Solution: Check that a list and list item isn't locked.
+Files: src/mnv9execute.c, src/testdir/test_listdict.mnv
+
+Patch 8.2.3843
+Problem: Dep3patch files are not recognized.
+Solution: Recognize dep3patch files by their location and content. (James
+ McCoy, closes #9367)
+Files: runtime/autoload/dist/ft.mnv, runtime/filetype.mnv,
+ src/testdir/test_filetype.mnv
+
+Patch 8.2.3844
+Problem: MNV9: no type error if assigning a value with type func(number) to
+ a variable of type func(string).
+Solution: Use check_type_maybe(): return MAYBE if a runtime type check is
+ useful. (issue #8492)
+Files: src/mnv9type.c, src/proto/mnv9type.pro, src/mnv9compile.c,
+ src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.3845
+Problem: MNV9: test fails when the channel feature is missing.
+Solution: Check for the channel feature. (Dominique Pellé, closes #9368)
+Files: src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3846
+Problem: No error when using control character for 'lcs' or 'fcs'.
+Solution: Use char2cells() to check the width. (closes #9369)
+Files: src/screen.c, src/testdir/test_display.mnv,
+ src/testdir/test_listchars.mnv
+
+Patch 8.2.3847
+Problem: Illegal memory access when using a lambda with an error.
+Solution: Avoid skipping over the NUL after a string.
+Files: src/eval.c, src/testdir/test_lambda.mnv
+
+Patch 8.2.3848
+Problem: Cannot use reduce() for a string.
+Solution: Make reduce() work with a string. (Naruhiko Nishino, closes #9366)
+Files: runtime/doc/eval.txt, src/errors.h, src/evalfunc.c, src/list.c,
+ src/typval.c, src/proto/typval.pro, src/testdir/test_listdict.mnv,
+ src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3849
+Problem: Functions implementing reduce and map are too long.
+Solution: Use a function for each type of value. Add a few more test cases
+ and add to the help. (Yegappan Lakshmanan, closes #9370)
+Files: runtime/doc/eval.txt, src/list.c, src/testdir/test_listdict.mnv
+
+Patch 8.2.3850
+Problem: Illegal memory access when displaying a partial.
+Solution: Terminate the string with a NUL. (closes #9371)
+Files: src/eval.c, src/testdir/test_messages.mnv
+
+Patch 8.2.3851
+Problem: MNV9: overhead when comparing string, dict or function.
+Solution: Call the intended compare function directly. Refactor to avoid
+ duplicated code.
+Files: src/mnv9execute.c, src/typval.c, src/proto/typval.pro
+
+Patch 8.2.3852
+Problem: MNV9: not enough tests.
+Solution: Also run existing tests for MNV9 script. Make errors more
+ consistent.
+Files: src/testdir/test_listdict.mnv, src/eval.c, src/mnv9compile.c,
+ src/errors.h
+
+Patch 8.2.3853
+Problem: MNV9: not enough tests.
+Solution: Run more existing tests for MNV9 script.
+Files: src/testdir/test_listdict.mnv
+
+Patch 8.2.3854
+Problem: MNV9: inconsistent arguments for test functions.
+Solution: When :def function and script have different arguments use a list
+ with two items instead of a separate function.
+Files: src/testdir/mnv9.mnv, src/testdir/test_execute_func.mnv,
+ src/testdir/test_float_func.mnv, src/testdir/test_functions.mnv,
+ src/testdir/test_glob2regpat.mnv, src/testdir/test_listdict.mnv,
+ src/testdir/test_mnv9_assign.mnv,
+ src/testdir/test_mnv9_builtin.mnv, src/testdir/test_mnv9_cmd.mnv,
+ src/testdir/test_mnv9_expr.mnv, src/testdir/test_mnv9_func.mnv,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3855
+Problem: Illegal memory access when displaying a blob.
+Solution: Append a NUL at the end. (Yegappan Lakshmanan, closes #9372)
+Files: src/blob.c, src/regexp_nfa.c, src/testdir/test_blob.mnv,
+ src/testdir/test_messages.mnv
+
+Patch 8.2.3856
+Problem: MNV9: not enough tests.
+Solution: Run more expression tests also with MNV9. Fix an uncovered
+ problem.
+Files: src/mnv9compile.c, src/testdir/test_expr.mnv, src/testdir/mnv9.mnv
+
+Patch 8.2.3857
+Problem: MNV9: inconsistent error for using function().
+Solution: Use a runtime type check for the result of function().
+ (closes #8492)
+Files: src/evalfunc.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3858
+Problem: MNV9: not enough tests.
+Solution: Add tests for :try/:catch and :redir. Add missing type check.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv,
+ src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.3859
+Problem: MNV9: some code lines not tested.
+Solution: Add a few specific tests.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_cmd.mnv, src/errors.h,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3860
+Problem: MNV9: codecov struggles with the file size.
+Solution: Split mnv9compile.c into four files.
+Files: src/mnv9compile.c, src/proto/mnv9compile.pro, src/mnv9instr.c,
+ src/proto/mnv9instr.pro, src/mnv9expr.c, src/proto/mnv9expr.pro,
+ src/mnv9cmds.c, src/proto/mnv9cmds.pro, src/mnv9.h,
+ src/mnv9execute.c, src/mnv9script.c, src/proto.h,
+ src/Makefile, src/Make_ami.mak, src/Make_cyg_ming.mak,
+ src/Make_mvc.mak, src/Make_vms.mms
+
+Patch 8.2.3861
+Problem: List of distributed files is outdated.
+Solution: Add new files.
+Files: Filelist
+
+Patch 8.2.3862
+Problem: Crash on exit with EXITFREE and using win_execute().
+Solution: Also save and restore tp_topframe. (issue #9374)
+Files: src/evalwindow.c, src/testdir/test_execute_func.mnv
+
+Patch 8.2.3863 (after 8.2.3860)
+Problem: Various build flags accidentally enabled.
+Solution: Revert several lines in Makefile.
+Files: src/Makefile
+
+Patch 8.2.3864
+Problem: Cannot disable requesting key codes from xterm.
+Solution: Add the 'xtermcodes' option, default on.
+Files: runtime/doc/options.txt, runtime/doc/term.txt, src/option.h,
+ src/optiondefs.h, src/term.c, runtime/optwin.mnv
+
+Patch 8.2.3865
+Problem: MNV9: compiler complains about using "try" as a struct member.
+Solution: Rename "try" to "tryref".
+Files: src/mnv9.h, src/mnv9cmds.c, src/mnv9execute.c, src/mnv9instr.c
+
+Patch 8.2.3866
+Problem: MNV9: type checking global variables is inconsistent.
+Solution: Use the "unknown" type in more places.
+Files: src/globals.h, src/mnv9expr.c, src/mnv9instr.c, src/mnv9cmds.c,
+ src/evalfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.3867
+Problem: Implementation of some list functions too complicated.
+Solution: Refactor do_sort_uniq(), f_count() and extend() (Yegappan
+ Lakshmanan, closes #9378)
+Files: src/list.c
+
+Patch 8.2.3868 (after 8.2.3866)
+Problem: MNV9: function test fails.
+Solution: Add missing changes. Add test for earlier patch.
+Files: src/mnv9type.c, src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.3869
+Problem: MNV9: type checking for "any" is inconsistent.
+Solution: Always use a runtime type check for using "any" for a more
+ specific type.
+Files: src/mnv9type.c, src/mnv9compile.c, src/mnv9expr.c,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.3870
+Problem: MS-Windows: wrong working directory when opening two files with
+ right-click context menu. (Gabriel Dupras)
+Solution: Use the working directory and pass it on to the process creation.
+ (Nir Lichtman, closes #9382, closes #8874)
+Files: src/GmnvExt/gmnvext.cpp, src/GmnvExt/gmnvext.h
+
+Patch 8.2.3871
+Problem: List.c contains code for dict and blob.
+Solution: Refactor to put code where it belongs. (Yegappan Lakshmanan,
+ closes #9386)
+Files: src/blob.c, src/dict.c, src/list.c, src/proto/blob.pro,
+ src/proto/dict.pro, src/proto/list.pro, src/proto/strings.pro,
+ src/strings.c, src/structs.h, src/testdir/test_filter_map.mnv,
+ src/testdir/test_listdict.mnv, src/testdir/test_sort.mnv
+
+Patch 8.2.3872
+Problem: MNV9: finddir() and uniq() return types can be more specific.
+Solution: Adjust the return type.
+Files: src/evalfunc.c, src/testdir/mnv9.mnv,
+ src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3873
+Problem: go.mod files are not recognized.
+Solution: Check for the file name. (closes #9380)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.3874
+Problem: Cannot highlight the number column for a sign.
+Solution: Add the "numhl" argument. (James McCoy, closes #9381)
+Files: runtime/doc/options.txt, runtime/doc/sign.txt, src/drawline.c,
+ src/popupwin.c, src/proto/sign.pro, src/sign.c, src/structs.h,
+ src/testdir/test_signs.mnv
+
+Patch 8.2.3875
+Problem: gcc complains about buffer overrun.
+Solution: Use mch_memmove() instead of STRCPY(). (John Marriott)
+Files: src/dict.c
+
+Patch 8.2.3876
+Problem: 'cindent' does not recognize inline namespace.
+Solution: Skip over "inline" to find "namespace". (closes #9383)
+Files: src/cindent.c, src/testdir/test_cindent.mnv
+
+Patch 8.2.3877
+Problem: Function does not abort after a type error in compare
+Solution: Check getting number fails. (closes #9384)
+Files: src/typval.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.3878
+Problem: MNV9: debugger tries to read more lines than there are.
+Solution: Check the number of lines. (closes #9394)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3879
+Problem: getreg() and getregtype() contain dead code.
+Solution: Remove the needless check. (closes #9392) Also refactor to put
+ common code in a shared function.
+Files: src/evalfunc.c
+
+Patch 8.2.3880
+Problem: Solution filter files are not recognized.
+Solution: Add pattern *.slnf and use json. (Doug Kearns)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.3881
+Problem: QNX: crash when compiled with GUI but using terminal.
+Solution: Check the gui.in_use flag. (Hirohito Higashi, closes #9391)
+Files: src/main.c
+
+Patch 8.2.3882 (after 8.2.3879)
+Problem: More duplicated code in f_getreginfo().
+Solution: Also use getreg_get_regname(). (closes #9398)
+Files: src/evalfunc.c
+
+Patch 8.2.3883
+Problem: Crash when switching to other regexp engine fails.
+Solution: Check for regprog being NULL.
+Files: src/ex_cmds.c
+
+Patch 8.2.3884
+Problem: Crash when clearing the argument list while using it.
+Solution: Lock the argument list for ":all".
+Files: src/arglist.c, src/testdir/test_arglist.mnv
+
+Patch 8.2.3885
+Problem: Arglist test fails.
+Solution: Adjust for locking the arglist for ":all".
+Files: src/testdir/test_arglist.mnv
+
+Patch 8.2.3886
+Problem: Can define autocmd for every event by using "au!".
+Solution: Check if a command is present also for "au!".
+Files: src/autocmd.c, src/testdir/test_autocmd.mnv,
+ src/testdir/test_arglist.mnv
+
+Patch 8.2.3887
+Problem: E1135 is used for two different errors.
+Solution: Renumber one error.
+Files: src/errors.h, src/testdir/test_mapping.mnv
+
+Patch 8.2.3888
+Problem: The argument list may contain duplicates.
+Solution: Add the :argdedeupe command. (Nir Lichtman, closes #6235)
+Files: runtime/doc/editing.txt, runtime/doc/index.txt, src/arglist.c,
+ src/ex_cmdidxs.h, src/ex_cmds.h, src/proto/arglist.pro,
+ src/testdir/test_arglist.mnv
+
+Patch 8.2.3889
+Problem: Duplicate code for translating script-local function name.
+Solution: Move the code to get_scriptlocal_funcname(). (Yegappan Lakshmanan,
+ closes #9393)
+Files: src/evalfunc.c, src/evalvars.c, src/option.c, src/userfunc.c,
+ src/proto/userfunc.pro, src/testdir/test_expr.mnv,
+ src/testdir/test_normal.mnv
+
+Patch 8.2.3890
+Problem: MNV9: type check for using v: variables is basic.
+Solution: Specify a more precise type.
+Files: src/evalvars.c, src/proto/evalvars.pro, src/mnv9instr.c,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.3891
+Problem: Github CI: workflows may overlap.
+Solution: Cancel previous workflows when starting a new one. (Yegappan
+ Lakshmanan, closes #9400)
+Files: .github/workflows/ci.yml, .github/workflows/codeql-analysis.yml
+
+Patch 8.2.3892
+Problem: When modifyOtherKeys is used CTRL-C is not recognized.
+Solution: Check for uppercase C as well, fix minimum length.
+Files: src/ui.c
+
+Patch 8.2.3893
+Problem: MNV9: many local variables are initialized with an instruction.
+Solution: Initialize local variables to zero to avoid the instructions.
+Files: src/mnv9execute.c, src/mnv9compile.c, src/mnv9instr.c,
+ src/proto/mnv9instr.pro, src/mnv9cmds.c,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.3894
+Problem: MNV9: no proper type check for first argument of call().
+Solution: Add specific type check.
+Files: src/evalfunc.c, src/typval.c, src/proto/typval.pro,
+ src/errors.h, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3895
+Problem: MNV9: confusing error when using function() with a number.
+Solution: Check for a function or string argument.
+Files: src/evalfunc.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3896
+Problem: MNV9: no test for nested function not available later.
+Solution: Add a test.
+Files: src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.3897
+Problem: MNV9: the second argument of map() and filter() is not checked at
+ compile time.
+Solution: Add more specific type check for the second argument.
+Files: src/evalfunc.c, src/globals.h, src/list.c,
+ src/testdir/test_mnv9_builtin.mnv, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3898
+Problem: MNV9: not sufficient testing for variable initialization.
+Solution: Add another test case.
+Files: src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.3899 (after 8.2.3897)
+Problem: MNV9: test for map() on string fails.
+Solution: Expect string return type.
+Files: src/evalfunc.c
+
+Patch 8.2.3900
+Problem: It is not easy to use a script-local function for an option.
+Solution: recognize s: and <SID> at the start of the expression. (Yegappan
+ Lakshmanan, closes #9401)
+Files: runtime/doc/diff.txt, runtime/doc/fold.txt,
+ runtime/doc/options.txt, runtime/doc/print.txt, src/optionstr.c,
+ src/testdir/test_diffmode.mnv, src/testdir/test_edit.mnv,
+ src/testdir/test_fold.mnv, src/testdir/test_gf.mnv,
+ src/testdir/test_gui.mnv, src/testdir/test_hardcopy.mnv,
+ src/testdir/test_normal.mnv
+
+Patch 8.2.3901
+Problem: MNV9: Cannot set 'cpo' in main .mnvrc if using MNV9 script.
+Solution: Do not restore 'cpo' at the end of the main .mnvrc.
+Files: runtime/doc/mnv9.txt, runtime/doc/options.txt, src/scriptfile.c,
+ src/structs.h, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3902
+Problem: MNV9: double free with nested :def function.
+Solution: Pass "line_to_free" from compile_def_function() and make sure
+ cmdlinep is valid.
+Files: src/mnv9compile.c, src/userfunc.c, src/proto/userfunc.pro,
+ src/mnv9execute.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.3903
+Problem: "gM" does not count tabs as expected.
+Solution: Use linetabsize() instead of mb_string2cells(). (closes #9409)
+Files: src/normal.c, src/testdir/test_normal.mnv
+
+Patch 8.2.3904
+Problem: MNV9: skip expression type is not checked at compile time.
+Solution: Add argument type checks.
+Files: src/evalfunc.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3905
+Problem: Dockerfile using prefix name not recognized.
+Solution: Recognize Dockerfile.*. (closes #9410)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.3906
+Problem: MNV9 help still contains "under development" warnings.
+Solution: Remove the explicit warning.
+Files: runtime/doc/mnv9.txt
+
+Patch 8.2.3907
+Problem: Error messages are spread out.
+Solution: Move error messages to errors.h. Avoid duplicates.
+Files: src/userfunc.c, src/ex_cmds.c, src/mnvinfo.c, src/errors.h,
+ src/testdir/test_user_func.mnv
+
+Patch 8.2.3908
+Problem: Cannot use a script-local function for 'foldtext'.
+Solution: Expand "s:" and "<SID>". (Yegappan Lakshmanan, closes #9411)
+Files: runtime/doc/fold.txt, src/optionstr.c, src/strings.c,
+ src/testdir/test_blob.mnv, src/testdir/test_expr.mnv,
+ src/testdir/test_filter_map.mnv, src/testdir/test_fold.mnv,
+ src/testdir/test_listdict.mnv
+
+Patch 8.2.3909
+Problem: Containerfile using prefix name not recognized.
+Solution: Recognize Containerfile.*.
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.3910
+Problem: When the compare function of sort() produces and error then sort()
+ does not abort.
+Solution: Check if did_emsg was incremented.
+Files: src/list.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3911
+Problem: MNV9: type check for filter() does not accept unknown.
+Solution: Also accept unknown for the return type. (closes #9413)
+Files: src/evalfunc.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3912
+Problem: The ins_complete() function is much too long.
+Solution: Split it up into multiple functions. (Yegappan Lakshmanan,
+ closes #9414)
+Files: src/insexpand.c
+
+Patch 8.2.3913
+Problem: Help for expressions does not mention MNV9 syntax.
+Solution: Add the rules for MNV9 to the expression help. Rename functions
+ to match the help.
+Files: runtime/doc/mnv9.txt, runtime/doc/eval.txt, src/mnv9expr.c
+
+Patch 8.2.3914
+Problem: Various spelling mistakes in comments.
+Solution: Fix the mistakes. (Dominique Pellé, closes #9416)
+Files: src/alloc.c, src/blowfish.c, src/buffer.c, src/cindent.c,
+ src/clipboard.c, src/diff.c, src/drawline.c, src/edit.c,
+ src/ex_cmds.c, src/ex_docmd.c, src/findfile.c, src/fold.c,
+ src/getchar.c, src/gui.c, src/gui_athena.c, src/gui_gtk.c,
+ src/gui_motif.c, src/gui_photon.c, src/gui_w32.c, src/gui_xmebw.c,
+ src/if_python.c, src/if_python3.c, src/if_xcmdsrv.c, src/main.c,
+ src/memline.c, src/menu.c, src/message.c, src/misc1.c, src/move.c,
+ src/option.c, src/os_amiga.c, src/os_mac.h, src/os_mac_conv.c,
+ src/os_mswin.c, src/os_unix.c, src/os_win32.c, src/os_win32.h,
+ src/quickfix.c, src/regexp_nfa.c, src/screen.c, src/scriptfile.c,
+ src/spell.c, src/spellfile.c, src/spellsuggest.c, src/strings.c,
+ src/term.c, src/terminal.c, src/testdir/test_debugger.mnv,
+ src/testdir/test_source.mnv, src/textformat.c, src/userfunc.c,
+ src/mnv.h, src/mnv9.h, src/mnv9cmds.c, src/mnv9execute.c,
+ src/winclip.c, src/window.c
+
+Patch 8.2.3915
+Problem: illegal memory access when completing with invalid bytes.
+Solution: Avoid going over the end of the completion text.
+Files: src/insexpand.c, src/testdir/test_ins_complete.mnv
+
+Patch 8.2.3916
+Problem: No error for passing an invalid line number to append().
+Solution: In MNV9 script check for a non-negative number. (closes #9417)
+Files: src/evalbuffer.c, src/textprop.c, src/errors.h, src/indent.c,
+ src/eval.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3917
+Problem: The eval.txt help file is way too big.
+Solution: Move the builtin function details to a separate file.
+Files: runtime/doc/eval.txt, runtime/doc/builtin.txt,
+ runtime/doc/Makefile, runtime/doc/help.txt, runtime/doc/remote.txt
+
+Patch 8.2.3918 (after 8.2.3916)
+Problem: Function list test fails.
+Solution: Adjust the test for the new location of the function list.
+Files: src/testdir/test_function_lists.mnv
+
+Patch 8.2.3919
+Problem: MNV9: wrong argument for append() results in two errors.
+Solution: Check did_emsg. Also for setline(). Adjust the help for
+ appendbufline().
+Files: runtime/doc/builtin.txt, src/evalbuffer.c, src/typval.c,
+ src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3920
+Problem: Restoring directory after using another window is inefficient.
+Solution: Only restore the directory for win_execute(). Apply 'autochdir'
+ only when needed.
+Files: src/evalwindow.c, src/testdir/test_autochdir.mnv
+
+Patch 8.2.3921
+Problem: The way xdiff is used is inefficient.
+Solution: Use hunk_func instead of the out_line callback. (Lewis Russell,
+ closes #9344)
+Files: src/diff.c
+
+Patch 8.2.3922
+Problem: Cannot build with dynamic Ruby 3.1.
+Solution: Add "_EXTRA" variables for CI. Add missing functions. (Ozaki
+ Kiichi, closes #9420)
+Files: ci/config.mk.clang-12.sed, ci/config.mk.clang.sed,
+ ci/config.mk.sed, src/Makefile, src/auto/configure,
+ src/config.mk.in, src/configure.ac, src/if_ruby.c, src/mnv.h
+
+Patch 8.2.3923
+Problem: MNV9: double free if a nested function has a line break in the
+ argument list.
+Solution: Set cmdlinep when freeing the previous line.
+Files: src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.3924
+Problem: MNV9: no error if something follows :enddef in a nested function.
+Solution: Give an error. Move common code to a function.
+Files: src/userfunc.c, src/mnv9compile.c, src/errors.h,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.3925
+Problem: Diff mode confused by NUL bytes.
+Solution: Handle NUL bytes differently. (Christian Brabandt, closes #9421,
+ closes #9418)
+Files: src/diff.c, src/testdir/test_diffmode.mnv,
+ src/testdir/dumps/Test_diff_bin_01.dump,
+ src/testdir/dumps/Test_diff_bin_02.dump,
+ src/testdir/dumps/Test_diff_bin_03.dump,
+ src/testdir/dumps/Test_diff_bin_04.dump
+
+Patch 8.2.3926 (after 8.2.3920)
+Problem: Build failure without the 'autochdir' option. (John Marriott)
+Solution: Add #ifdefs.
+Files: src/evalwindow.c
+
+Patch 8.2.3927
+Problem: MNV9: double free when using lambda.
+Solution: Don't free both cmdline and line_to_free.
+Files: src/userfunc.c
+
+Patch 8.2.3928
+Problem: Heredoc test fails.
+Solution: Correct order of function arguments.
+Files: src/userfunc.c
+
+Patch 8.2.3929
+Problem: Using uninitialized variable.
+Solution: Set the option flags to zero for a terminal option.
+Files: src/option.c
+
+Patch 8.2.3930
+Problem: getcmdline() argument has a misleading type.
+Solution: Use the correct type, even though the value is not used.
+Files: src/ex_getln.c, src/proto/ex_getln.pro, src/ex_docmd.c,
+ src/normal.c, src/register.c, src/userfunc.c
+
+Patch 8.2.3931
+Problem: Coverity reports a memory leak.
+Solution: Free memory in case of failure.
+Files: src/diff.c
+
+Patch 8.2.3932
+Problem: C line comment not formatted properly.
+Solution: If a line comment follows after "#if" the next line is not the end
+ of a paragraph.
+Files: src/textformat.c, src/testdir/test_textformat.mnv
+
+Patch 8.2.3933
+Problem: After ":cd" fails ":cd -" is incorrect.
+Solution: Set the previous directory only after successfully changing
+ directory. (Richard Doty, closes #9419, closes #8983)
+Files: src/ex_docmd.c, src/testdir/test_cd.mnv
+
+Patch 8.2.3934
+Problem: Repeating line comment is undesired for "O" command.
+Solution: Do not copy line comment leader for "O". (closes #9426)
+Files: src/change.c, src/testdir/test_textformat.mnv
+
+Patch 8.2.3935
+Problem: CTRL-U in Insert mode does not fix the indent.
+Solution: Fix the indent when 'cindent' is set.
+Files: src/edit.c, src/testdir/test_textformat.mnv
+
+Patch 8.2.3936
+Problem: No proper test for maintaining change mark in diff mode.
+Solution: Run the test with internal and external diff. (Sean Dewar,
+ closes #9424)
+Files: src/testdir/test_diffmode.mnv
+
+Patch 8.2.3937
+Problem: Insert mode completion function is too long.
+Solution: Refactor into multiple functions. (Yegappan Lakshmanan,
+ closes #9423)
+Files: src/insexpand.c, src/testdir/test_ins_complete.mnv
+
+Patch 8.2.3938
+Problem: Line comment start is also found in a string.
+Solution: Skip line comments in a string.
+Files: src/cindent.c, src/proto/cindent.pro, src/search.c,
+ src/testdir/test_textformat.mnv
+
+Patch 8.2.3939
+Problem: MS-Windows: fnamemodify('', ':p') does not work.
+Solution: Do not consider an empty string a full path. (Yegappan Lakshmanan,
+ closes #9428, closes #9427)
+Files: src/os_mswin.c, src/testdir/test_fnamemodify.mnv
+
+Patch 8.2.3940
+Problem: Match highlight disappears when doing incsearch for ":s/pat".
+Solution: Only use line limit for incsearch highlighting. (closes #9425)
+Files: src/match.c, src/testdir/test_match.mnv,
+ src/testdir/dumps/Test_match_with_incsearch_1.dump,
+ src/testdir/dumps/Test_match_with_incsearch_2.dump
+
+Patch 8.2.3941
+Problem: SIGTSTP is not handled.
+Solution: Handle SIGTSTP like pressing CTRL-Z. (closes #9422)
+Files: runtime/doc/autocmd.txt, src/ex_docmd.c, src/os_unix.c,
+ src/proto/ex_docmd.pro, src/testdir/test_signals.mnv
+
+Patch 8.2.3942
+Problem: Coverity reports a possible memory leak.
+Solution: Free the array if allocation fails.
+Files: src/insexpand.c
+
+Patch 8.2.3943
+Problem: Compiler warning from gcc for uninitialized variable.
+Solution: Initialize variable. (closes #9429)
+Files: src/diff.c
+
+Patch 8.2.3944
+Problem: Insert mode completion functions are too long.
+Solution: Split up into multiple functions. (Yegappan Lakshmanan,
+ closes #9431)
+Files: src/insexpand.c, src/testdir/test_ins_complete.mnv
+
+Patch 8.2.3945
+Problem: MNV9: partial variable argument types are wrong, leading to a
+ crash.
+Solution: When adjusting the argument count also adjust the argument types.
+ (closes #9433)
+Files: src/mnv9type.c, src/userfunc.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.3946
+Problem: When an internal error makes MNV exit the error is not seen.
+Solution: Add the error to the test output.
+Files: src/message.c, src/testdir/runtest.mnv
+
+Patch 8.2.3947
+Problem: Unnecessary check for NULL pointer.
+Solution: Remove the check. (closes #9434)
+Files: src/ex_docmd.c
+
+Patch 8.2.3948
+Problem: MNV9: failure with partial with unknown argument count.
+Solution: Do not copy argument types if there aren't any.
+Files: src/mnv9type.c
+
+Patch 8.2.3949
+Problem: Using freed memory with /\%V.
+Solution: Get the line again after getvvcol().
+Files: src/regexp.c, src/testdir/test_regexp_latin.mnv
+
+Patch 8.2.3950
+Problem: Going beyond the end of the line with /\%V.
+Solution: Check for valid column in getvcol().
+Files: src/charset.c, src/testdir/test_regexp_latin.mnv
+
+Patch 8.2.3951
+Problem: MNV9: memory leak when text after a nested function.
+Solution: Free the function if text is found after "enddef".
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.3952
+Problem: First line not redrawn when adding lines to an empty buffer.
+Solution: Adjust the argument to appended_lines(). (closes #9439,
+ closes #9438)
+Files: src/ex_cmds.c, src/testdir/test_excmd.mnv
+
+Patch 8.2.3953
+Problem: Insert completion code is too complicated.
+Solution: More refactoring. Move function arguments into a struct.
+ (Yegappan Lakshmanan, closes #9437)
+Files: src/insexpand.c
+
+Patch 8.2.3954
+Problem: MNV9: no error for shadowing if script var is declared later.
+Solution: Check argument names when compiling a function.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv,
+ src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.3955
+Problem: Error messages are spread out.
+Solution: Move more errors to errors.h.
+Files: src/errors.h, src/globals.h, src/debugger.c, src/ex_cmds.c,
+ src/help.c, src/sign.c, src/spellfile.c
+
+Patch 8.2.3956
+Problem: Duplicate assignment.
+Solution: Remove the second assignment. (closes #9442)
+Files: src/evalfunc.c
+
+Patch 8.2.3957
+Problem: Error messages are spread out.
+Solution: Move more errors to errors.h.
+Files: src/errors.h, src/globals.h, src/arglist.c, src/bufwrite.c,
+ src/evalvars.c, src/ex_cmds2.c, src/ex_docmd.c, src/ex_eval.c,
+ src/help.c, src/scriptfile.c, src/usercmd.c, src/userfunc.c,
+ src/mnv9cmds.c, src/mnv9compile.c
+
+Patch 8.2.3958
+Problem: Build failure compiling xxd with "-std=c2x".
+Solution: define _XOPEN_SOURCE. (Yegappan Lakshmanan, closes #9444)
+Files: src/xxd/xxd.c
+
+Patch 8.2.3959
+Problem: Error messages are spread out.
+Solution: Move more errors to errors.h.
+Files: src/errors.h, src/autocmd.c, src/bufwrite.c, src/evalvars.c,
+ src/ex_docmd.c, src/ex_eval.c, src/ex_getln.c, src/fileio.c,
+ src/getchar.c, src/gui.c, src/locale.c, src/map.c
+
+Patch 8.2.3960
+Problem: Error messages are spread out.
+Solution: Move more errors to errors.h.
+Files: src/errors.h, src/alloc.c, src/arglist.c, src/autocmd.c,
+ src/blob.c, src/blowfish.c, src/buffer.c, src/bufwrite.c
+
+Patch 8.2.3961
+Problem: Error messages are spread out.
+Solution: Move more errors to errors.h.
+Files: src/errors.h, src/globals.h, src/arglist.c, src/autocmd.c,
+ src/blob.c, src/bufwrite.c, src/channel.c, src/clipboard.c,
+ src/cmdexpand.c, src/debugger.c, src/dict.c, src/eval.c,
+ src/evalfunc.c, src/evalvars.c, src/evalwindow.c, src/ex_cmds.c,
+ src/ex_docmd.c, src/ex_eval.c, src/ex_getln.c, src/fileio.c,
+ src/filepath.c, src/gui_gtk_x11.c, src/gui_haiku.cc,
+ src/gui_photon.c, src/gui_w32.c, src/gui_x11.c, src/highlight.c,
+ src/indent.c, src/insexpand.c, src/job.c, src/json.c, src/list.c,
+ src/map.c, src/mark.c, src/match.c, src/mbyte.c, src/menu.c,
+ src/message.c, src/misc2.c, src/ops.c, src/option.c,
+ src/optionstr.c, src/popupwin.c, src/quickfix.c, src/screen.c,
+ src/scriptfile.c, src/search.c, src/sign.c, src/spell.c,
+ src/spellfile.c, src/strings.c, src/syntax.c, src/terminal.c,
+ src/testing.c, src/textprop.c, src/time.c, src/userfunc.c,
+ src/mnv9cmds.c, src/mnv9execute.c, src/mnv9script.c, src/window.c
+
+Patch 8.2.3962 (after 8.2.3961)
+Problem: Build fails for missing error message.
+Solution: Add changes in missed file.
+Files: src/regexp_bt.c
+
+Patch 8.2.3963
+Problem: Build failure with tiny and small features. (Tony Mechelynck)
+Solution: Adjust #ifdefs.
+Files: src/errors.h, src/message.c
+
+Patch 8.2.3964
+Problem: Some common lisp and scheme files not recognized.
+Solution: Recognize *.asd as lisp and *.sld as scheme. (Alex Vear,
+ closes #9447)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.3965
+Problem: MNV9: no easy way to check if MNV9 script is supported.
+Solution: Add has('mnv9script').
+Files: runtime/doc/mnv9.txt, src/evalfunc.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.3966
+Problem: When using feedkeys() abbreviations may be blocked.
+Solution: Reset tb_no_abbr_cnt when running out of characters.
+ (closes #9448)
+Files: src/getchar.c, src/testdir/test_feedkeys.mnv
+
+Patch 8.2.3967
+Problem: Error messages are spread out.
+Solution: Move more errors to errors.h.
+Files: src/errors.h, src/globals.h, src/feature.h, src/arglist.c,
+ src/autocmd.c, src/blob.c, src/bufwrite.c, src/channel.c,
+ src/cmdexpand.c, src/dict.c, src/diff.c, src/eval.c,
+ src/evalfunc.c, src/evalvars.c, src/ex_cmds.c, src/ex_docmd.c,
+ src/fileio.c, src/filepath.c, src/getchar.c, src/gui_gtk_x11.c,
+ src/gui_x11.c, src/hardcopy.c, src/help.c, src/highlight.c,
+ src/if_cscope.c, src/if_lua.c, src/if_mzsch.c, src/if_perl.xs,
+ src/if_python.c, src/if_python3.c, src/if_ruby.c, src/if_tcl.c,
+ src/if_xcmdsrv.c, src/indent.c, src/insexpand.c, src/job.c,
+ src/list.c, src/main.c, src/map.c, src/match.c, src/mbyte.c,
+ src/message.c, src/misc1.c, src/option.c, src/optionstr.c,
+ src/os_mswin.c, src/os_unix.c, src/os_win32.c, src/popupwin.c,
+ src/profiler.c, src/quickfix.c, src/scriptfile.c, src/search.c,
+ src/session.c, src/sign.c, src/spell.c, src/spellfile.c,
+ src/spellsuggest.c, src/syntax.c, src/tag.c, src/terminal.c,
+ src/testing.c, src/textprop.c, src/typval.c, src/userfunc.c,
+ src/mnv9execute.c, src/mnv9expr.c, src/mnv9instr.c,
+ src/mnv9script.c
+
+Patch 8.2.3968
+Problem: Build failure.
+Solution: Add missing changes.
+Files: src/strings.c, src/mnv9compile.c
+
+Patch 8.2.3969
+Problem: Value of MAXCOL not available in MNV script.
+Solution: Add v:maxcol. (Naohiro Ono, closes #9451)
+Files: runtime/doc/builtin.txt, runtime/doc/eval.txt, src/evalvars.c,
+ src/testdir/test_cursor_func.mnv, src/testdir/test_normal.mnv,
+ src/testdir/test_put.mnv, src/mnv.h
+
+Patch 8.2.3970
+Problem: Error messages are spread out.
+Solution: Move more errors to errors.h.
+Files: src/errors.h, src/globals.h, src/buffer.c, src/bufwrite.c,
+ src/clientserver.c, src/cmdhist.c, src/dict.c, src/edit.c,
+ src/eval.c, src/evalfunc.c, src/evalvars.c, src/ex_cmds.c,
+ src/ex_docmd.c, src/ex_eval.c, src/ex_getln.c, src/gui_w32.c,
+ src/gui_x11.c, src/if_xcmdsrv.c, src/insexpand.c, src/json.c,
+ src/match.c, src/menu.c, src/option.c, src/optionstr.c,
+ src/os_mswin.c, src/quickfix.c, src/regexp_bt.c, src/regexp_nfa.c,
+ src/scriptfile.c, src/sign.c, src/spellfile.c, src/undo.c,
+ src/userfunc.c, src/mnv9cmds.c, src/mnv9compile.c,
+ src/mnv9execute.c, src/mnv9expr.c, src/window.c
+
+Patch 8.2.3971
+Problem: Build fails.
+Solution: Use the right error message name.
+Files: src/typval.c
+
+Patch 8.2.3972
+Problem: Error messages are spread out.
+Solution: Move the last errors from globals.h to errors.h.
+Files: src/errors.h, src/globals.h, src/eval.c, src/evalfunc.c,
+ src/evalvars.c, src/evalwindow.c, src/ex_eval.c, src/list.c,
+ src/match.c, src/menu.c, src/popupmenu.c, src/search.c,
+ src/mnv9cmds.c, src/mnv9expr.c
+
+Patch 8.2.3973
+Problem: Tiny build fails.
+Solution: Adjust #ifdefs
+Files: src/errors.h
+
+Patch 8.2.3974
+Problem: MNV9: LISTAPPEND instruction does not check for a locked list.
+Solution: Check whether the list is locked. (closes #9452)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3975
+Problem: Error messages are spread out.
+Solution: Move more error messages to errors.h.
+Files: src/errors.h, src/clientserver.c, src/fileio.c, src/gui.c,
+ src/gui_beval.c, src/gui_w32.c, src/gui_x11.c, src/if_cscope.c,
+ src/if_xcmdsrv.c, src/os_mswin.c, src/sign.c, src/mnvinfo.c,
+ src/window.c
+
+Patch 8.2.3976
+Problem: FEARG_LAST is never used. (Dominique Pellé)
+Solution: Remove FEARG_LAST and the related code.
+Files: src/evalfunc.c
+
+Patch 8.2.3977
+Problem: Error messages are spread out.
+Solution: Move more error messages to errors.h.
+Files: src/errors.h, src/change.c, src/clientserver.c, src/eval.c,
+ src/gui_xim.c, src/if_cscope.c, src/if_py_both.h, src/if_python.c,
+ src/if_python3.c, src/if_ruby.c, src/if_tcl.c, src/main.c,
+ src/mark.c, src/match.c, src/memfile.c, src/memline.c,
+ src/terminal.c, src/textprop.c, src/userfunc.c
+
+Patch 8.2.3978
+Problem: Build error when using dynamically loaded Python 3.
+Solution: Adjust #ifdef.
+Files: src/errors.h
+
+Patch 8.2.3979
+Problem: MNV9: the feature is not mentioned in the right places.
+Solution: Add +mnv9script to the help and :version output.
+Files: runtime/doc/builtin.txt, runtime/doc/various.txt, src/version.c
+
+Patch 8.2.3980
+Problem: If 'operatorfunc' invokes an operator the remembered Visual mode
+ may be changed. (Naohiro Ono)
+Solution: Save and restore the information for redoing the Visual area.
+ (closes #9455)
+Files: src/ops.c, src/testdir/test_normal.mnv
+
+Patch 8.2.3981
+Problem: MNV9: debugging a for loop doesn't stop before it starts.
+Solution: Keep the DEBUG instruction before the expression is evaluated.
+ (closes #9456)
+Files: src/mnv9cmds.c, src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.3982
+Problem: Some lines of code not covered by tests.
+Solution: Add a few more test cases. (Dominique Pellé, closes #9453)
+Files: src/testdir/test_filter_map.mnv, src/testdir/test_highlight.mnv,
+ src/testdir/test_regexp_latin.mnv, src/testdir/test_search.mnv,
+ src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3983
+Problem: Error messages are spread out.
+Solution: Move more error messages to errors.h.
+Files: src/errors.h, src/ex_docmd.c, src/fileio.c, src/filepath.c,
+ src/findfile.c, src/hardcopy.c, src/memfile.c, src/memline.c,
+ src/menu.c, src/normal.c, src/regexp_bt.c
+
+Patch 8.2.3984 (after 8.2.3981)
+Problem: Debugger test fails.
+Solution: Adjust the test for modified debugging of a for loop.
+Files: src/testdir/test_debugger.mnv
+
+Patch 8.2.3985
+Problem: Error messages are spread out.
+Solution: Move more error messages to errors.h.
+Files: src/errors.h, src/findfile.c, src/fold.c, src/hardcopy.c,
+ src/highlight.c, src/map.c, src/message.c, src/normal.c,
+ src/option.c, src/os_amiga.c, src/os_unix.c, src/os_win32.c,
+ src/quickfix.c, src/regexp.c, src/register.c, src/search.c,
+ src/syntax.c, src/tag.c, src/term.c, src/typval.c, src/undo.c,
+ src/window.c
+
+Patch 8.2.3986
+Problem: Error messages are spread out.
+Solution: Move more error messages to errors.h.
+Files: src/errors.h, src/evalvars.c, src/ex_cmds.c, src/ex_docmd.c,
+ src/fileio.c, src/fold.c, src/gui_x11.c, src/hardcopy.c,
+ src/help.c, src/highlight.c, src/if_cscope.c, src/json.c,
+ src/map.c, src/netbeans.c, src/popupwin.c, src/usercmd.c,
+ src/userfunc.c
+
+Patch 8.2.3987
+Problem: Error messages are spread out.
+Solution: Move more error messages to errors.h.
+Files: src/errors.h, src/digraph.c, src/ex_eval.c, src/gui.c,
+ src/hardcopy.c, src/if_cscope.c, src/if_tcl.c, src/if_xcmdsrv.c,
+ src/mbyte.c, src/misc2.c, src/netbeans.c, src/option.c,
+ src/optionstr.c, src/quickfix.c, src/regexp.c, src/tag.c,
+ src/term.c, src/mnvinfo.c
+
+Patch 8.2.3988 (after 8.2.3987)
+Problem: Tiny build fails.
+Solution: Fix misplaced #ifdef.
+Files: src/errors.h
+
+Patch 8.2.3989
+Problem: Some insert completion code is not tested.
+Solution: Add a few tests. Refactor thesaurus completion. (Yegappan
+ Lakshmanan, closes #9460)
+Files: src/insexpand.c, src/testdir/test_edit.mnv,
+ src/testdir/test_ins_complete.mnv
+
+Patch 8.2.3990
+Problem: Testing wrong operator.
+Solution: Test "g@" instead of "r_". (Naohiro Ono, closes #9463)
+Files: src/testdir/test_normal.mnv
+
+Patch 8.2.3991
+Problem: MNV9: error when extending dict<any> with another type that it was
+ initialized with.
+Solution: Also set the type for dict<any> if the initializer has a more
+ specific type. (closes #9461)
+Files: src/mnv9compile.c, src/mnv9type.c, src/mnv9.h, src/eval.c,
+ src/list.c, src/mnv9script.c, src/testdir/test_mnv9_assign.mnv,
+ src/testdir/test_mnv9_builtin.mnv, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.3992
+Problem: Wrong local-additions in the help with language mix.
+Solution: Adjust how the local additions list is generated. (Hirohito
+ Higashi, closes #9464)
+Files: src/help.c, src/testdir/test_help.mnv
+
+Patch 8.2.3993
+Problem: When recording a change in Select mode the first typed character
+ appears twice.
+Solution: When putting the character back into typeahead remove it from
+ recorded characters. (closes #9462)
+Files: src/getchar.c, src/proto/getchar.pro, src/normal.c,
+ src/testdir/test_registers.mnv
+
+Patch 8.2.3994
+Problem: MNV9: extend() complains about the type even when it was not
+ declared.
+Solution: Only check the list or dict type when it was declared.
+Files: src/list.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3995
+Problem: Not all sshconfig files are detected as such.
+Solution: Adjust the patterns used for sshconfig detection. (David Auer,
+ closes #9322)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.3996
+Problem: MNV9: type checking for list and dict lacks information about
+ declared type.
+Solution: Add dv_decl_type and lv_decl_type. Refactor the type stack to
+ store two types in each entry.
+Files: src/structs.h, src/dict.c, src/list.c, src/mnv9type.c,
+ src/proto/mnv9type.pro, src/mnv9instr.c, src/proto/mnv9instr.pro,
+ src/mnv9compile.c, src/evalfunc.c, src/proto/evalfunc.pro,
+ src/evalbuffer.c, src/proto/evalbuffer.pro, src/mnv9expr.c,
+ src/mnv9cmds.c, src/testdir/test_mnv9_assign.mnv,
+ src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.3997
+Problem: MNV9: not enough testing for extend() and map().
+Solution: Add more test cases. Fix uncovered problems. Remove unused type
+ fields.
+Files: src/structs.h, src/dict.c, src/list.c, src/mnv9compile.c,
+ src/testdir/test_mnv9_builtin.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.3998
+Problem: Asan error for adding zero to NULL.
+Solution: Do not compute pointer if there are no entries.
+Files: src/mnv9type.c
+
+Patch 8.2.3999
+Problem: Redundant check for NUL byte.
+Solution: Remove the check for a NUL byte. (closes #9471)
+Files: src/ex_docmd.c
+
+Patch 8.2.4000
+Problem: Coverity warns for checking for NULL pointer after using it.
+Solution: Remove check for NULL.
+Files: src/help.c
+
+Patch 8.2.4001
+Problem: Insert complete code uses global variables.
+Solution: Make variables local to the file and use accessor functions.
+ (Yegappan Lakshmanan, closes #9470)
+Files: src/edit.c, src/getchar.c, src/globals.h, src/insexpand.c,
+ src/proto/insexpand.pro, src/search.c
+
+Patch 8.2.4002
+Problem: First char typed in Select mode can be wrong.
+Solution: Escape special bytes in the input buffer. (closes #9469)
+Files: src/getchar.c, src/testdir/test_utf8.mnv
+
+Patch 8.2.4003
+Problem: Error messages are spread out.
+Solution: Move more error messages to errors.h.
+Files: src/errors.h, src/channel.c, src/ex_docmd.c, src/ex_eval.c,
+ src/gui_at_fs.c, src/hardcopy.c, src/if_cscope.c, src/menu.c,
+ src/netbeans.c, src/optionstr.c, src/os_mswin.c, src/sign.c,
+ src/typval.c
+
+Patch 8.2.4004
+Problem: Old compiler complains about struct init with variable.
+Solution: Set the struct member later. (John Marriott)
+Files: src/evalfunc.c
+
+Patch 8.2.4005
+Problem: Error messages are spread out.
+Solution: Move more error messages to errors.h.
+Files: src/errors.h, src/dict.c, src/eval.c, src/evalfunc.c,
+ src/evalvars.c, src/ex_cmds2.c, src/ex_docmd.c, src/ex_eval.c,
+ src/filepath.c, src/gui.c, src/gui_w32.c, src/hardcopy.c,
+ src/help.c, src/highlight.c, src/if_python.c, src/list.c,
+ src/misc1.c, src/normal.c, src/quickfix.c, src/regexp.c,
+ src/regexp_bt.c, src/regexp_nfa.c, src/typval.c, src/userfunc.c
+
+Patch 8.2.4006
+Problem: MNV9: crash when declaring variable on the command line.
+Solution: Use a temporary type list. (closes #9474)
+Files: src/eval.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.4007
+Problem: Session does not restore help buffer properly when "options' is
+ missing from 'sessionoptions'.
+Solution: Use a ":help" command to create the help window. (closes #9475,
+ closes #9458, closes #9472)
+Files: src/session.c, src/testdir/test_mksession.mnv
+
+Patch 8.2.4008
+Problem: Error messages are spread out.
+Solution: Move more error messages to errors.h.
+Files: src/errors.h, src/diff.c, src/digraph.c, src/evalfunc.c,
+ src/evalvars.c, src/ex_cmds.c, src/ex_docmd.c, src/ex_getln.c,
+ src/insexpand.c, src/match.c, src/memline.c, src/menu.c,
+ src/ops.c, src/profiler.c, src/quickfix.c, src/regexp.c,
+ src/regexp_bt.c, src/regexp_nfa.c, src/register.c, src/spell.c,
+ src/spell.h, src/spellfile.c, src/strings.c, src/syntax.c,
+ src/typval.c, src/undo.c, src/userfunc.c
+
+Patch 8.2.4009
+Problem: Reading one byte beyond the end of the line.
+Solution: Check for NUL byte first.
+Files: src/mnv9compile.c, src/ex_docmd.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.4010
+Problem: Error messages are spread out.
+Solution: Move more error messages to errors.h.
+Files: src/errors.h, src/crypt.c, src/diff.c, src/ex_docmd.c,
+ src/ex_getln.c, src/fileio.c, src/findfile.c, src/float.c,
+ src/gui.c, src/highlight.c, src/if_mzsch.c, src/if_py_both.h,
+ src/if_python.c, src/if_python3.c, src/insexpand.c, src/match.c,
+ src/memline.c, src/option.c, src/popupwin.c, src/regexp.c,
+ src/regexp_nfa.c, src/spellfile.c, src/strings.c, src/syntax.c,
+ src/textprop.c, src/typval.c, src/undo.c, src/usercmd.c,
+ src/userfunc.c, src/window.c
+
+Patch 8.2.4011
+Problem: Test fails because of changed error number.
+Solution: Restore old duplicate error message.
+Files: src/errors.h, src/match.c
+
+Patch 8.2.4012
+Problem: Error messages are spread out.
+Solution: Move the last error messages to errors.h.
+Files: src/errors.h, src/channel.c, src/clientserver.c, src/diff.c,
+ src/evalfunc.c, src/evalvars.c, src/ex_cmds2.c, src/ex_docmd.c,
+ src/gui_w32.c, src/help.c, src/if_mzsch.c, src/if_py_both.h,
+ src/if_python.c, src/job.c, src/json.c, src/list.c, src/option.c,
+ src/optionstr.c, src/quickfix.c, src/regexp.c, src/regexp_nfa.c,
+ src/register.c, src/scriptfile.c, src/sign.c, src/syntax.c,
+ src/tag.c, src/terminal.c, src/textprop.c, src/typval.c,
+ src/undo.c, src/userfunc.c, src/mnv9compile.c, src/mnvinfo.c
+
+Patch 8.2.4013
+Problem: Build failure without the spell feature.
+Solution: Adjust #ifdefs.
+Files: src/errors.h
+
+Patch 8.2.4014
+Problem: Git and gitcommit file types not properly recognized.
+Solution: Adjust filetype detection. (Tim Pope, closes #9477)
+Files: runtime/filetype.mnv, runtime/scripts.mnv,
+ src/testdir/test_filetype.mnv
+
+Patch 8.2.4015
+Problem: Build failure with tiny features. (Tony Mechelynck)
+Solution: Adjust #ifdefs.
+Files: src/errors.h
+
+Patch 8.2.4016
+Problem: MNV9: incorrect error for argument that is shadowing var.
+Solution: Ignore variable that is not in block where the function was
+ defined.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.4017
+Problem: Gcc warns for misleading indent in Athena menu code.
+Solution: Add curlies around the two statements. (Dominique Pellé,
+ closes #9480)
+Files: src/gui_athena.c
+
+Patch 8.2.4018
+Problem: ml_get error when win_execute redraws with Visual selection.
+Solution: Disable Visual area temporarily. (closes #9479)
+Files: src/evalwindow.c, src/proto/evalwindow.pro, src/structs.h,
+ src/evalbuffer.c, src/proto/evalbuffer.pro, src/evalvars.c,
+ src/if_py_both.h, src/evalfunc.c,
+ src/testdir/test_execute_func.mnv
+
+Patch 8.2.4019
+Problem: MNV9: import mechanism is too complicated.
+Solution: Do not use the Javascript mechanism but a much simpler one.
+Files: runtime/doc/mnv9.txt, src/mnv9script.c, src/proto/mnv9script.pro,
+ src/errors.h, src/structs.h, src/eval.c, src/proto/eval.pro,
+ src/evalvars.c, src/proto/evalvars.pro, src/userfunc.c,
+ src/mnv9expr.c, src/mnv9compile.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_assign.mnv, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.4020 (after 8.2.4019)
+Problem: Debugger test fails.
+Solution: Fix import statement.
+Files: src/testdir/test_debugger.mnv
+
+Patch 8.2.4021 (after 8.2.4019)
+Problem: Missing part of the :import changes.
+Solution: Add changes in mnv9cmds.c.
+Files: src/mnv9cmds.c
+
+Patch 8.2.4022
+Problem: Two error messages in the wrong file.
+Solution: Use the error message from errors.h.
+Files: src/popupwin.c, src/usercmd.c
+
+Patch 8.2.4023
+Problem: Using uninitialized variable.
+Solution: Initialize "ufunc" also when an item is not exported.
+Files: src/mnv9script.c
+
+Patch 8.2.4024
+Problem: Confusing error message if imported name is used directly.
+Solution: Give a better error message.
+Files: src/eval.c, src/proto/eval.pro, src/evalvars.c, src/userfunc.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.4025
+Problem: Error for import not ending in .mnv does not work for .mnvrc.
+Solution: Check that .mnv is the end. (closes #9484)
+Files: src/mnv9script.c, src/errors.h, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.4026
+Problem: ml_get error with specific win_execute() command. (Sean Dewar)
+Solution: Check cursor and Visual area are OK.
+Files: src/evalwindow.c, src/testdir/test_execute_func.mnv
+
+Patch 8.2.4027
+Problem: Import test fails on MS-Windows.
+Solution: Use a different directory name.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.4028
+Problem: ml_get error with :doautoall and Visual area. (Sean Dewar)
+Solution: Disable Visual mode while executing autocommands.
+Files: src/structs.h, src/autocmd.c, src/testdir/test_autocmd.mnv
+
+Patch 8.2.4029
+Problem: Debugging NFA regexp my crash, cached indent may be wrong.
+Solution: Fix some debug warnings in the NFA regexp code. Make sure log_fd
+ is set when used. Fix breakindent and indent caching. (Christian
+ Brabandt, closes #9482)
+Files: src/indent.c, src/optionstr.c, src/regexp_nfa.c
+
+Patch 8.2.4030
+Problem: A script local funcref is not found from a mapping.
+Solution: When looking for a function, also find a script-local funcref.
+ (closes #9485)
+Files: src/evalvars.c, src/proto/evalvars.pro, src/userfunc.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.4031
+Problem: Crash in xterm with only two lines. (Dominique Pellé)
+Solution: Only perform xterm compatibility test if possible. (closes #9488)
+Files: src/term.c, src/testdir/test_startup.mnv
+
+Patch 8.2.4032
+Problem: ATTRIBUTE_NORETURN is not needed.
+Solution: Use NORETURN(). (Ozaki Kiichi, closes #9487)
+Files: src/if_ruby.c, src/mnv.h
+
+Patch 8.2.4033
+Problem: Running filetype tests leaves directory behind.
+Solution: Delete the top directory. (closes #9483)
+Files: src/testdir/test_filetype.mnv
+
+Patch 8.2.4034
+Problem: Coverity warns for possibly using a NULL pointer.
+Solution: Check v_partial is not NULL.
+Files: src/mnv9type.c
+
+Patch 8.2.4035
+Problem: Timer triggered at the debug prompt may cause trouble.
+Solution: Do not trigger any timer at the debug prompt. (closes #9481)
+Files: src/time.c
+
+Patch 8.2.4036
+Problem: MNV9: script test file is getting too long.
+Solution: Split the import/export functionality to a separate file.
+Files: src/testdir/test_mnv9_script.mnv, src/testdir/test_mnv9_import.mnv,
+ src/testdir/Make_all.mak
+
+Patch 8.2.4037
+Problem: Insert mode completion is insufficiently tested.
+Solution: Add more tests. Fix uncovered memory leak. (Yegappan Lakshmanan,
+ closes #9489)
+Files: src/insexpand.c, src/testdir/test_ins_complete.mnv
+
+Patch 8.2.4038
+Problem: Various code not used when features are disabled.
+Solution: Add #ifdefs. (Dominique Pellé, closes #9491)
+Files: src/alloc.c, src/buffer.c, src/charset.c, src/clipboard.c,
+ src/cmdhist.c, src/crypt.c, src/edit.c, src/eval.c,
+ src/evalbuffer.c, src/evalfunc.c, src/ex_docmd.c, src/globals.h,
+ src/gui_xim.c, src/hashtab.c, src/highlight.c, src/insexpand.c,
+ src/main.c, src/mark.c, src/message.c, src/misc1.c, src/misc2.c,
+ src/ops.c, src/option.c, src/option.h, src/optionstr.c,
+ src/register.c, src/scriptfile.c, src/tag.c, src/term.c,
+ src/typval.c, src/usercmd.c, src/userfunc.c, src/mnv9script.c,
+ src/mnv9type.c
+
+Patch 8.2.4039
+Problem: The xdiff library is linked in even when not used.
+Solution: Use configure to decide whether xdiff object files are included.
+Files: src/Makefile, src/config.mk.in, src/configure.ac,
+ src/auto/configure, src/feature.h
+
+Patch 8.2.4040
+Problem: Keeping track of allocated lines in user functions is too
+ complicated.
+Solution: Instead of freeing individual lines keep them all until the end.
+Files: src/alloc.c, src/proto/alloc.pro, src/mnv9compile.c,
+ src/userfunc.c, src/proto/userfunc.pro, src/message.c,
+ src/usercmd.c, src/mnvinfo.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.4041
+Problem: Using uninitialized pointer.
+Solution: Store "ht" when variable is in another script.
+Files: src/evalvars.c
+
+Patch 8.2.4042
+Problem: MNV9: build error.
+Solution: Use grow array instead of character pointer.
+Files: src/mnv9execute.c
+
+Patch 8.2.4043
+Problem: Using int for second argument of ga_init2().
+Solution: Remove unnecessary type cast (int) when using sizeof().
+Files: src/arglist.c, src/channel.c, src/cmdexpand.c, src/dict.c,
+ src/digraph.c, src/eval.c, src/evalfunc.c, src/evalvars.c,
+ src/evalwindow.c, src/ex_docmd.c, src/fileio.c, src/filepath.c,
+ src/findfile.c, src/fold.c, src/hardcopy.c, src/help.c,
+ src/job.c, src/list.c, src/menu.c, src/os_win32.c, src/register.c,
+ src/scriptfile.c, src/spellfile.c, src/spellsuggest.c,
+ src/strings.c, src/syntax.c, src/tag.c, src/terminal.c,
+ src/undo.c, src/usercmd.c, src/userfunc.c, src/mnv9execute.c,
+ src/mnvinfo.c, src/window.c, src/if_py_both.h
+
+Patch 8.2.4044
+Problem: MNV9: no error when importing the same script twice.
+Solution: Give an error, unless it is a reload.
+Files: src/mnv9script.c, src/errors.h, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4045
+Problem: Some global functions are only used in one file.
+Solution: Make the functions static. (Yegappan Lakshmanan, closes #9492)
+Files: src/ex_getln.c, src/highlight.c, src/proto/ex_getln.pro,
+ src/proto/highlight.pro, src/proto/mnv9compile.pro,
+ src/proto/mnv9instr.pro, src/proto/window.pro, src/mnv9compile.c,
+ src/mnv9instr.c, src/window.c
+
+Patch 8.2.4046
+Problem: Some error messages not in the right place.
+Solution: Adjust the errors file. Fix typo.
+Files: src/errors.h, src/regexp_bt.c, src/typval.c,
+
+Patch 8.2.4047
+Problem: Depending on the build features error messages are unused.
+Solution: Add #ifdefs. (Dominique Pellé, closes #9493)
+Files: src/errors.h
+
+Patch 8.2.4048
+Problem: gcc complains about use of "%p" in printf.
+Solution: Add (void *) typecast. (Dominique Pellé, closes #9494)
+Files: src/if_py_both.h
+
+Patch 8.2.4049
+Problem: MNV9: reading before the start of the line with "$" by itself.
+Solution: Do not subtract one when reporting the error.
+Files: src/mnv9expr.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.4050
+Problem: MNV9: need to prefix every item in an autoload script.
+Solution: First step in supporting "mnv9script autoload" and "import
+ autoload".
+Files: runtime/doc/repeat.txt, runtime/doc/mnv9.txt, src/structs.h,
+ src/errors.h, src/mnv9script.c, src/scriptfile.c,
+ src/proto/scriptfile.pro, src/userfunc.c, src/eval.c,
+ src/evalvars.c, src/mnv9compile.c, src/proto/mnv9compile.pro,
+ src/mnv9expr.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.4051
+Problem: Compiler complains about possibly uninitialized variable.
+Solution: Add code to avoid a compiler warning. (John Marriott)
+Files: src/scriptfile.c
+
+Patch 8.2.4052
+Problem: Not easy to resize a window from a plugin.
+Solution: Add win_move_separator() and win_move_statusline() functions.
+ (Daniel Steinberg, closes #9486)
+Files: runtime/doc/builtin.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/evalwindow.c, src/proto/evalwindow.pro,
+ src/testdir/test_window_cmd.mnv
+
+Patch 8.2.4053
+Problem: MNV9: autoload mechanism doesn't fully work yet.
+Solution: Define functions and variables with their autoload name, add the
+ prefix when calling a function, find the variable in the table of
+ script variables.
+Files: src/structs.h, src/scriptfile.c, src/proto/scriptfile.pro,
+ src/mnv9script.c, src/proto/mnv9script.pro, src/userfunc.c,
+ src/evalvars.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.4054 (after 8.2.4053)
+Problem: MNV9 script test fails.
+Solution: Add missing change.
+Files: src/mnv9compile.c
+
+Patch 8.2.4055
+Problem: MNV9: line break in expression causes v:errmsg to be filled.
+ (Yegappan Lakshmanan)
+Solution: Do not give an error when skipping over an expression.
+Files: src/userfunc.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.4056
+Problem: MNV9: memory leak when exporting function in autoload script.
+Solution: Free the name if replacing it.
+Files: src/scriptfile.c
+
+Patch 8.2.4057
+Problem: MNV9: not fully implementing the autoload mechanism.
+Solution: Allow for exporting a legacy function. Improve test coverage.
+Files: src/mnv9script.c, src/testdir/test_mnv9_import.mnv,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.4058
+Problem: MNV9: import test failure in wrong line.
+Solution: Adjust line number.
+Files: src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4059
+Problem: MNV9: an expression of a map cannot access script-local items.
+ (Maxim Kim)
+Solution: Use the script ID of where the map was defined.
+Files: src/getchar.c, src/map.c, src/proto/map.pro,
+ src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4060
+Problem: win_execute() is slow on systems where getcwd() or chdir() is
+ slow. (Rick Howe)
+Solution: Avoid using getcwd() and chdir() if no local directory is used and
+ 'acd' is not set. (closes #9504)
+Files: src/evalwindow.c
+
+Patch 8.2.4061
+Problem: Codecov bash script is deprecated.
+Solution: Use the codecov action. (Ozaki Kiichi, closes #9505)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.4062
+Problem: Match highlighting of tab too short.
+Solution: Do not stop match highlighting if on a Tab. (Christian Brabandt,
+ closes #9507, closes #9500)
+Files: src/drawline.c, src/testdir/test_match.mnv,
+ src/testdir/dumps/Test_match_tab_linebreak.dump
+
+Patch 8.2.4063
+Problem: MNV9: exported function in autoload script not found. (Yegappan
+ Lakshmanan)
+Solution: Use the autoload prefix to search for the function.
+Files: src/userfunc.c, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4064
+Problem: Foam files are not detected.
+Solution: Detect the foam filetype by the path and file contents. (Mohammed
+ Elwardi Fadeli, closes #9501)
+Files: runtime/filetype.mnv, runtime/autoload/dist/ft.mnv,
+ src/testdir/test_filetype.mnv
+
+Patch 8.2.4065
+Problem: Computation overflow with large count for :yank.
+Solution: Avoid an overflow.
+Files: src/ex_docmd.c, src/testdir/test_excmd.mnv
+
+Patch 8.2.4066
+Problem: MNV9: imported autoload script loaded again.
+Solution: Do not create a new imported_T every time.
+Files: src/mnv9script.c, src/mnv9compile.c,
+ src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4067
+Problem: MNV9: cannot call imported function with :call. (Drew Vogel)
+Solution: Translate the function name. (closes #9510)
+Files: src/userfunc.c, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4068 (after 8.2.4066)
+Problem: MNV9: import test fails.
+Solution: Add missing change.
+Files: src/scriptfile.c
+
+Patch 8.2.4069
+Problem: MNV9: import test fails on MS-Windows.
+Solution: Ignore case. Adjust test to avoid name that only differs in case.
+Files: src/eval.c, src/scriptfile.c, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4070
+Problem: Using uninitialized memory when reading empty file.
+Solution: Check for empty file before checking for NL. (Dominique Pellé,
+ closes #9511)
+Files: src/filepath.c, src/testdir/test_eval_stuff.mnv
+
+Patch 8.2.4071
+Problem: MNV9: no detection of return in try/endtry. (Dominique Pellé)
+Solution: Check if any of the blocks inside try/endtry did not end in
+ return.
+Files: src/mnv9.h, src/mnv9compile.c, src/mnv9cmds.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.4072
+Problem: MNV9: compiling function fails when autoload script is not loaded
+ yet.
+Solution: Depend on runtime loading.
+Files: src/mnv9expr.c, src/mnv9script.c, src/mnv9instr.c,
+ src/mnv9execute.c, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4073
+Problem: Coverity warns for using NULL pointer.
+Solution: Bail out when running out of memory. Check for running over end of
+ a string.
+Files: src/userfunc.c,
+
+Patch 8.2.4074
+Problem: Going over the end of NameBuff.
+Solution: Check length when appending a space.
+Files: src/drawscreen.c, src/testdir/test_edit.mnv
+
+Patch 8.2.4075 (after 8.2.4073)
+Problem: Test failures.
+Solution: Change check for NULL pointer.
+Files: src/userfunc.c
+
+Patch 8.2.4076
+Problem: Memory leak in autoload import.
+Solution: Do not overwrite the autoload prefix.
+Files: src/mnv9script.c
+
+Patch 8.2.4077
+Problem: Not all Libsensors files are recognized.
+Solution: Add "sensors.d/*" pattern. (Doug Kearns)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.4078
+Problem: Terminal test for current directory not used on FreeBSD.
+Solution: Make it work on FreeBSD. (Ozaki Kiichi, closes #9516) Add
+ TermWait() inside Run_shell_in_terminal() as a generic solution.
+Files: src/testdir/test_terminal3.mnv, src/testdir/term_util.mnv,
+ src/testdir/test_terminal.mnv, src/testdir/test_terminal2.mnv,
+ src/testdir/test_mapping.mnv
+
+Patch 8.2.4079
+Problem: MS-Windows: "gmnv --version" didn't work when build with MNVDLL.
+Solution: Adjust #ifdef. (Ken Takata, closes #9517)
+Files: src/main.c
+
+Patch 8.2.4080
+Problem: Not sufficient test coverage for xxd.
+Solution: Add a few more test cases. (Erki Auerswald, closes #9515)
+Files: src/testdir/test_xxd.mnv
+
+Patch 8.2.4081
+Problem: CodeQL reports problem in if_cscope causing it to fail.
+Solution: Use execvp() instead of execl(). Merge the header file into the
+ source file. (Ozaki Kiichi, closes #9519)
+Files: Filelist, src/Make_cyg_ming.mak, src/Make_mvc.mak,
+ src/Make_vms.mms, src/Makefile, src/if_cscope.c, src/if_cscope.h,
+ src/testdir/test_cscope.mnv
+
+Patch 8.2.4082
+Problem: Check for autoload file name and prefix fails. (Christian J.
+ Robinson)
+Solution: Only lower case the prefix on systems where the file name is not
+ case sensitive.
+Files: src/scriptfile.c, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4083
+Problem: MNV9: no test for "mnv9script autoload" and using script variable
+ in the same script.
+Solution: Add a simple test. Fix uncovered problem.
+Files: src/evalvars.c, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4084
+Problem: Memory leak when looking for autoload prefixed variable.
+Solution: Free the concatenated string.
+Files: src/evalvars.c
+
+Patch 8.2.4085
+Problem: MNV9: no test for using import in legacy script.
+Solution: Add a test.
+Files: src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4086
+Problem: "cctx" argument of find_func_even_dead() is unused.
+Solution: Remove the argument.
+Files: src/userfunc.c, src/proto/userfunc.pro, src/mnv9compile.c,
+ src/mnv9instr.c, src/evalfunc.c, src/evalvars.c, src/testing.c,
+ src/mnv9execute.c, src/mnv9expr.c, src/mnv9script.c,
+ src/mnv9type.c
+
+Patch 8.2.4087
+Problem: Cannot test items from an autoload script easily.
+Solution: Add the "autoload" value for test_override().
+Files: runtime/doc/testing.txt, src/testing.c, src/globals.h,
+ src/mnv9script.c, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4088
+Problem: Xxd cannot output everything in one line.
+Solution: Make zero columns mean infinite columns. (Erik Auerswald,
+ closes #9524)
+Files: runtime/doc/xxd.1, runtime/doc/xxd.man, src/testdir/test_xxd.mnv,
+ src/xxd/xxd.c
+
+Patch 8.2.4089 (after 8.2.4078)
+Problem: Terminal test for current directory fails on FreeBSD.
+Solution: Skip the test.
+Files: src/testdir/test_terminal3.mnv
+
+Patch 8.2.4090
+Problem: After restoring a session buffer order can be quite different.
+Solution: Create buffers first. (Evgeni Chasnovski, closes #9520)
+Files: src/session.c, src/testdir/test_mksession.mnv
+
+Patch 8.2.4091
+Problem: Virtcol is recomputed for statusline unnecessarily.
+Solution: Just use "w_virtcol". (closes #9523)
+Files: src/buffer.c, src/testdir/test_statusline.mnv
+
+Patch 8.2.4092
+Problem: macOS CI: unnecessarily doing "Install packages".
+Solution: Only do "Install packages" for huge build. (Ozaki Kiichi,
+ closes #9521)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.4093
+Problem: Cached breakindent values not initialized properly.
+Solution: Initialize and cache formatlistpat. (Christian Brabandt,
+ closes #9526, closes #9512)
+Files: runtime/doc/options.txt, src/indent.c, src/option.c,
+ src/proto/option.pro, src/testdir/test_breakindent.mnv
+
+Patch 8.2.4094
+Problem: 'virtualedit' is window-local but using buffer-local enum.
+Solution: Use window-local enum. (closes #9529)
+Files: src/option.h, src/optiondefs.h
+
+Patch 8.2.4095
+Problem: Sed script not recognized by the first line.
+Solution: Recognize a sed script starting with "#n". (Doug Kearns)
+Files: runtime/scripts.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.4096
+Problem: Linux CI: unnecessarily installing packages
+Solution: Only install packages for huge build. (Ozaki Kiichi,
+ closes #9530)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.4097
+Problem: Wrong number in error message on 32 bit system. (John Paul Adrian
+ Glaubitz)
+Solution: Add type cast. (closes #9527)
+Files: src/mnv9compile.c
+
+Patch 8.2.4098
+Problem: Typing "interrupt" at debug prompt may keep exception around,
+ causing function calls to fail.
+Solution: Discard any exception at the toplevel. (closes #9532)
+Files: src/main.c
+
+Patch 8.2.4099
+Problem: MNV9: cannot use MNV9 syntax in mapping.
+Solution: Add <ScriptCmd> to use the script context for a command.
+Files: runtime/doc/map.txt, src/normal.c, src/getchar.c,
+ src/proto/getchar.pro, src/ex_getln.c, src/edit.c, src/terminal.c,
+ src/keymap.h, src/insexpand.c, src/misc2.c, src/ops.c,
+ src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4100
+Problem: Early return when getting the 'formatlistpat' value.
+Solution: Remove the first line. (Christian Brabandt)
+Files: src/option.c, src/testdir/test_breakindent.mnv
+
+Patch 8.2.4101
+Problem: Warning for unused argument in tiny version.
+Solution: Add "UNUSED".
+Files: src/getchar.c
+
+Patch 8.2.4102
+Problem: MNV9: import cannot be used after method.
+Solution: Recognize an imported function name. (closes #9496)
+Files: src/eval.c, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4103
+Problem: MNV9: variable declared in for loop not initialized.
+Solution: Always initialize the variable. (closes #9535)
+Files: src/mnv9instr.c, src/proto/mnv9instr.pro, src/mnv9compile.c,
+ src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.4104
+Problem: MNV9: lower casing the autoload prefix causes problems.
+Solution: Always store the prefix with case preserved.
+Files: src/scriptfile.c, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4105
+Problem: Translation related comment in the wrong place.
+Solution: Move it back with the text. (Ken Takata, closes #9537)
+Files: src/errors.h, src/ex_docmd.c
+
+Patch 8.2.4106
+Problem: Going over the end of the w_lines array.
+Solution: Break out of the loop when "idx" is too big. (issue #9540)
+Files: src/drawscreen.c
+
+Patch 8.2.4107
+Problem: Script context not restored after using <ScriptCmd>.
+Solution: Also restore context when not in a script. (closes #9536)
+ Add the 'c' flag to feedkeys() to be able to test this.
+Files: runtime/doc/builtin.txt, src/getchar.c, src/evalfunc.c,
+ src/testdir/test_mapping.mnv
+
+Patch 8.2.4108
+Problem: Going over the end of the w_lines array.
+Solution: Check not going over the end and limit to Rows. (issue #9540)
+Files: src/drawscreen.c
+
+Patch 8.2.4109
+Problem: MS-Windows: high dpi support is outdated.
+Solution: Improve High DPI support by using PerMonitorV2. (Ken Takata
+ closes #9525, closes #3102)
+Files: src/gui.c, src/gui.h, src/gui_w32.c, src/mnv.manifest
+
+Patch 8.2.4110
+Problem: Coverity warns for using NULL pointer.
+Solution: Check "evalarg" is not NULL. Skip errors when "verbose" is false.
+Files: src/eval.c
+
+Patch 8.2.4111
+Problem: Potential problem when map is deleted while executing.
+Solution: Reset last used map pointer when deleting a mapping.
+Files: src/map.c
+
+Patch 8.2.4112
+Problem: Function not deleted at end of test.
+Solution: Delete the function.
+Files: src/testdir/test_diffmode.mnv
+
+Patch 8.2.4113
+Problem: Typo on DOCMD_RANGEOK results in not recognizing command.
+Solution: Correct the typo. (closes #9539)
+Files: src/mnv.h, src/testdir/test_mapping.mnv
+
+Patch 8.2.4114
+Problem: MNV9: type checking for a funcref does not work for when it is
+ used in a method.
+Solution: Pass the base to where the type is checked.
+Files: src/mnv9type.c, src/proto/mnv9type.pro, src/userfunc.c,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.4115
+Problem: Cannot use a method with a complex expression.
+Solution: Evaluate the expression after "->" and use the result.
+Files: src/eval.c, src/errors.h, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.4116
+Problem: MNV9: cannot use a method with a complex expression in a :def
+ function.
+Solution: Implement compiling the expression.
+Files: src/mnv9expr.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.4117
+Problem: MNV9: wrong white space error after using imported item.
+Solution: Don't skip over white space. (closes #9544)
+Files: src/eval.c, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4118
+Problem: Using UNUSED for argument that is used.
+Solution: Remove UNUSED.
+Files: src/usercmd.c
+
+Patch 8.2.4119
+Problem: Build failure when disabling the channel feature.
+Solution: Adjust #ifdef. (Dominique Pellé, closes #9545)
+Files: src/misc2.c
+
+Patch 8.2.4120
+Problem: Block insert goes over the end of the line.
+Solution: Handle invalid byte better. Fix inserting the wrong text.
+Files: src/ops.c, src/testdir/test_visual.mnv
+
+Patch 8.2.4121
+Problem: Visual test fails on MS-Windows.
+Solution: Set 'isprint' so that the character used is not printable.
+Files: src/testdir/test_visual.mnv
+
+Patch 8.2.4122
+Problem: ":command Cmd" does not show custom completion argument.
+Solution: Show the completion argument when using ":verbose".
+Files: src/usercmd.c, src/testdir/test_usercommands.mnv
+
+Patch 8.2.4123
+Problem: Complete function cannot be import.Name.
+Solution: Dereference the function name if needed. Also: do not see
+ "import.Name" as a builtin function. (closes #9541)
+Files: src/userfunc.c, src/eval.c, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4124
+Problem: MNV9: method in compiled function may not see script item.
+Solution: Make sure not to skip to the next line. (closes #9496)
+Files: src/mnv9expr.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.4125
+Problem: Completion tests fail.
+Solution: Disable error messages while dereferencing the function name.
+Files: src/eval.c
+
+Patch 8.2.4126
+Problem: Crash on exit when built with dynamic Tcl and EXITFREE is defined.
+ (Dominique Pellé)
+Solution: Only call Tcl_Finalize() when initialized. (closes #9546)
+Files: src/if_tcl.c
+
+Patch 8.2.4127
+Problem: Build failure without the +eval feature.
+Solution: Add #ifdef.
+Files: src/usercmd.c
+
+Patch 8.2.4128
+Problem: Crash when method cannot be found. (Christian J. Robinson)
+Solution: Don't mix up pointer names.
+Files: src/eval.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.4129
+Problem: Building with +sound but without +eval fails. (Dominique Pellé)
+Solution: Disable canberra in tiny and small build. (closes #9548)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.4130
+Problem: MS-Windows: MSVC build may have libraries duplicated.
+Solution: Improve the MSVC Makefile. (Ken Takata, closes #9547)
+Files: src/Make_mvc.mak
+
+Patch 8.2.4131
+Problem: MNV9: calling function in autoload import does not work in a :def
+ function.
+Solution: When a variable is not found and a PCALL follows use a funcref.
+ (closes #9550)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4132
+Problem: MNV9: wrong error message when autoload script can't be found.
+Solution: Correct check for using autoload with wrong name.
+Files: src/mnv9script.c, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4133
+Problem: output of ":scriptnames" goes into the message history, while this
+ does not happen for other commands, such as ":ls".
+Solution: Use msg_outtrans() instead of smsg(). (closes #9551)
+Files: src/scriptfile.c, src/testdir/test_scriptnames.mnv
+
+Patch 8.2.4134
+Problem: MS-Windows: test for import with absolute path fails.
+Solution: Handle path starting with slash as an absolute path.
+Files: src/mnv9script.c
+
+Patch 8.2.4135
+Problem: MNV9: ":scriptnames" shows unloaded imported autoload script.
+Solution: Mark the unloaded script with "A". (closes #9552)
+Files: runtime/doc/repeat.txt, src/scriptfile.c,
+ src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4136
+Problem: MNV9: the "autoload" argument of ":mnv9script" is not useful.
+Solution: Remove the argument. (closes #9555)
+Files: runtime/doc/mnv9.txt, runtime/doc/repeat.txt, src/mnv9script.c,
+ src/errors.h, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4137
+Problem: MNV9: calling import with and without method is inconsistent.
+Solution: Set a flag that a parenthesis follows to compile_load_scriptvar().
+ Add some more tests. Improve error message.
+Files: src/mnv9expr.c, src/mnv9execute.c, src/mnv9script.c,
+ src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4138
+Problem: MNV9: no error for return with argument when the function does not
+ return anything.
+Solution: Give an error for the invalid argument. (issue #9497)
+Files: src/mnv9cmds.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.4139
+Problem: Using freed memory if an expression abbreviation deletes the
+ abbreviation.
+Solution: Do not access the pointer after evaluating the expression.
+Files: src/map.c, src/testdir/test_mapping.mnv
+
+Patch 8.2.4140
+Problem: maparg() does not indicate the type of script where it was defined.
+Solution: Add "scriptversion".
+Files: runtime/doc/builtin.txt, src/map.c, src/testdir/test_maparg.mnv
+
+Patch 8.2.4141 (after 8.2.4140)
+Problem: MNV9 builtin functions test fails.
+Solution: Add "scriptversion" item to maparg() result.
+Files: src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.4142
+Problem: Build failure with normal features without persistent undo.
+Solution: Adjust #ifdef. (closes #9557)
+Files: src/fileio.c
+
+Patch 8.2.4143
+Problem: MS-Windows: IME support for Win9x is obsolete.
+Solution: Remove the Win9x code. (Ken Takata, closes #9559)
+Files: src/gui_w32.c
+
+Patch 8.2.4144
+Problem: Cannot load libsodium dynamically.
+Solution: Support dynamic loading on MS-Windows. (Ken Takata, closes #9554)
+Files: src/Make_cyg_ming.mak, src/Make_mvc.mak, src/buffer.c,
+ src/crypt.c, src/memline.c, src/proto/crypt.pro
+
+Patch 8.2.4145
+Problem: Confusing error when using name of import for a function.
+Solution: Pass a flag to trans_function_name().
+Files: src/mnv.h, src/userfunc.c, src/proto/userfunc.pro, src/eval.c,
+ src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4146
+Problem: MNV9: shadowed function can be used in compiled function but not
+ at script level.
+Solution: Also give an error in a compiled function. (closes #9563)
+Files: src/mnv9expr.c
+
+Patch 8.2.4147
+Problem: E464 does not always include the offending command.
+Solution: Add another error message with "%s". (closes #9564)
+Files: src/errors.h, src/mnv9compile.c, src/ex_docmd.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.4148
+Problem: Deleting any mapping may cause <ScriptCmd> to not set the script
+ context.
+Solution: Only reset last_used_map if it is the deleted mapping.
+ (closes #9568)
+Files: src/map.c, src/getchar.c, src/proto/getchar.pro,
+ src/testdir/test_mapping.mnv
+
+Patch 8.2.4149
+Problem: Test override not restored, autocommand left behind.
+Solution: Correct restoring test override. Delete autocommand afterwards.
+Files: src/testdir/test_autocmd.mnv, src/testdir/test_mapping.mnv
+
+Patch 8.2.4150
+Problem: Coverity warns for using pointer after free.
+Solution: Swap statements, even though using the pointer is no problem.
+Files: src/map.c
+
+Patch 8.2.4151
+Problem: Reading beyond the end of a line.
+Solution: For block insert only use the offset for correcting the length.
+Files: src/ops.c, src/testdir/test_visual.mnv
+
+Patch 8.2.4152
+Problem: Block insert with double wide character fails.
+Solution: Adjust the expected output.
+Files: src/testdir/test_utf8.mnv
+
+Patch 8.2.4153
+Problem: MS-Windows: Global IME is no longer supported.
+Solution: Remove the Global IME implementation. (Ken Takata, closes #9562)
+Files: Filelist, runtime/doc/mbyte.txt, src/Make_mvc.mak, src/dimm.idl,
+ src/glbl_ime.cpp, src/glbl_ime.h, src/gui_w32.c, src/mnv.h
+
+Patch 8.2.4154
+Problem: ml_get error when exchanging windows in Visual mode.
+Solution: Correct end of Visual area when entering another buffer.
+Files: src/window.c, src/testdir/test_visual.mnv
+
+Patch 8.2.4155
+Problem: Translating strftime() argument results in check error.
+Solution: Add gettext comment.
+Files: src/time.c
+
+Patch 8.2.4156
+Problem: Fileinfo message overwrites echo'ed message.
+Solution: Reset need_fileinfo when displaying a message. (Rob Pilling,
+ closes #9569)
+Files: src/message.c, src/testdir/test_messages.mnv,
+ src/testdir/dumps/Test_fileinfo_after_echo.dump
+
+Patch 8.2.4157
+Problem: Terminal test fails because Windows sets the title.
+Solution: Add the "vterm_title" testing override and use it in the test.
+ (Ozaki Kiichi, closes #9556)
+Files: runtime/doc/testing.txt, src/globals.h, src/terminal.c,
+ src/testing.c, src/testdir/test_terminal.mnv
+
+Patch 8.2.4158
+Problem: MS-Windows: memory leak in :browse.
+Solution: Free stuff before returning. (Ken Takata, closes #9574)
+Files: src/gui_w32.c
+
+Patch 8.2.4159
+Problem: MS-Windows: _WndProc() is very long.
+Solution: Move code to separate functions. (Ken Takata, closes #9573)
+Files: src/gui_w32.c
+
+Patch 8.2.4160
+Problem: Cannot change the register used for Select mode delete.
+Solution: Make CTRL-R set the register to be used when deleting text for
+ Select mode. (Shougo Matsushita, closes #9531)
+Files: runtime/doc/visual.txt, src/globals.h, src/normal.c, src/ops.c,
+ src/testdir/test_selectmode.mnv
+
+Patch 8.2.4161
+Problem: MNV9: warning for missing white space after imported variable.
+Solution: Do not skip white space. (closes #9567)
+Files: src/mnv9expr.c, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4162
+Problem: MNV9: no error for redefining function with export.
+Solution: Check for existing function with/without prefix. (closes #9577)
+Files: src/userfunc.c, src/scriptfile.c, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4163
+Problem: No error for omitting function name after autoload prefix.
+Solution: Check for missing function name. (issue #9577)
+Files: src/userfunc.c, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4164 (after 8.2.4162)
+Problem: Error in legacy code for function shadowing variable.
+Solution: Only give the error in MNV9 script.
+Files: src/userfunc.c
+
+Patch 8.2.4165
+Problem: The nv_g_cmd() function is too long.
+Solution: Move code to separate functions. (Yegappan Lakshmanan,
+ closes #9576)
+Files: src/normal.c
+
+Patch 8.2.4166
+Problem: Undo synced when switching buffer in another window.
+Solution: Do not sync undo when not needed. (closes #9575)
+Files: src/buffer.c, src/testdir/test_timers.mnv
+
+Patch 8.2.4167
+Problem: MNV9: error message for old style import.
+Solution: Use another error message. Add a test.
+Files: src/evalvars.c, src/errors.h, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4168 (after 8.2.4163)
+Problem: Disallowing empty function name breaks existing plugins.
+Solution: Allow empty function name in legacy script.
+Files: src/userfunc.c, src/testdir/test_autoload.mnv,
+ src/testdir/sautest/autoload/foo.mnv
+
+Patch 8.2.4169
+Problem: MS-Windows: unnecessary casts and other minor things.
+Solution: Clean up the MS-Windows code. (Ken Takata, closes #9583)
+Files: src/gui_w32.c
+
+Patch 8.2.4170
+Problem: MS-Windows: still using old message API calls.
+Solution: Call the "W" functions directly. (Ken Takata, closes #9582)
+Files: src/gui_w32.c, src/os_mswin.c, src/os_win32.c, src/os_win32.h
+
+Patch 8.2.4171
+Problem: Cannot invoke option function using autoload import.
+Solution: Expand the import to an autoload function name. (closes #9578)
+Files: src/userfunc.c, src/evalvars.c, src/proto/evalvars.pro,
+ src/option.c, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4172
+Problem: Filetype detection for BASIC is not optimal.
+Solution: Improve BASIC filetype detection. (Doug Kearns)
+Files: runtime/autoload/dist/ft.mnv, runtime/filetype.mnv,
+ src/testdir/test_filetype.mnv
+
+Patch 8.2.4173
+Problem: Cannot use an import in 'foldexpr'.
+Solution: Set the script context to where 'foldexpr' was set. (closes #9584)
+ Fix that the script context was not set for all buffers.
+Files: src/eval.c, src/proto/eval.pro, src/fold.c, src/structs.h,
+ src/option.c, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4174
+Problem: MNV9: can use an autoload name in normal script.
+Solution: Disallow using an autoload name.
+Files: src/userfunc.c, src/errors.h, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4175
+Problem: MS-Windows: runtime check for multi-line balloon is obsolete.
+Solution: Remove the obsolete code. (Ken Takata, closes #9592)
+Files: src/evalfunc.c, src/gui_w32.c, src/proto/gui_w32.pro
+
+Patch 8.2.4176
+Problem: MNV9: cannot use imported function with call().
+Solution: Translate the function name. (closes #9590)
+Files: src/evalfunc.c, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4177
+Problem: MNV9: autoload script not loaded after "mnv9script noclear".
+Solution: Check IMP_FLAGS_AUTOLOAD properly. (closes #9593)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4178
+Problem: MNV9: invalid error for return type of lambda when debugging.
+Solution: Do not check the return type of a lambda. (closes #9589)
+Files: src/mnv9cmds.c
+
+Patch 8.2.4179
+Problem: 'foldtext' is evaluated in the current script context.
+Solution: Use the script context where the option was set.
+Files: src/fold.c, src/buffer.c, src/eval.c, src/proto/eval.pro,
+ src/findfile.c, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4180
+Problem: 'balloonexpr' is evaluated in the current script context.
+Solution: Use the script context where the option was set.
+Files: src/beval.c, src/option.c, src/proto/option.pro,
+ src/testdir/test_balloon.mnv,
+ src/testdir/dumps/Test_balloon_eval_term_01.dump,
+ src/testdir/dumps/Test_balloon_eval_term_01a.dump,
+ src/testdir/dumps/Test_balloon_eval_term_02.dump
+
+Patch 8.2.4181
+Problem: MNV9: cannot use an import in 'diffexpr'.
+Solution: Set the script context when evaluating 'diffexpr'. Do not require
+ 'diffexpr' to return a bool, it was ignored anyway.
+Files: src/evalvars.c, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4182 (after 8.2.4182)
+Problem: Memory leak when evaluating 'diffexpr'.
+Solution: Use free_tv() instead of clear_tv().
+Files: src/evalvars.c
+
+Patch 8.2.4183
+Problem: Cannot use an import in 'formatexpr'.
+Solution: Set the script context when evaluating 'formatexpr'.
+Files: src/textformat.c, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4184
+Problem: Cannot use an import in 'includeexpr'.
+Solution: Set the script context when evaluating 'includeexpr'
+Files: src/findfile.c, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4185
+Problem: Cannot use an import in 'indentexpr'.
+Solution: Set the script context when evaluating 'indentexpr'
+Files: src/indent.c, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4186
+Problem: Cannot use an import in 'patchexpr'.
+Solution: Set the script context when evaluating 'patchexpr'. Do not
+ require 'patchexpr' to return a bool, it was ignored anyway.
+Files: src/evalvars.c, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4187
+Problem: Gnuplot file not recognized.
+Solution: Recognize ".gnuplot". (closes #9588)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.4188
+Problem: Not all gitconfig files are recognized.
+Solution: Add a few more patterns. (Tim Pope, closes #9597)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.4189
+Problem: MS-Windows: code for "old look" is obsolete.
+Solution: Delete obsolete code. Use "MS Shell Dlg" font. (Ken Takata,
+ closes #9596)
+Files: src/gui_w32.c
+
+Patch 8.2.4190
+Problem: All conceal tests are skipped without the screendumps feature.
+Solution: Only skip the tests that use screendumps. (closes #9599)
+Files: src/testdir/test_conceal.mnv
+
+Patch 8.2.4191
+Problem: json5 files are not recognized.
+Solution: Add a pattern for json5 files. (closes #9601)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.4192
+Problem: Cannot use an import in 'printexpr'.
+Solution: Set the script context when evaluating 'printexpr'.
+Files: src/evalvars.c, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4193
+Problem: Cannot use an import in 'charconvert'.
+Solution: Set the script context when evaluating 'charconvert'. Also expand
+ script-local functions in 'charconvert'.
+Files: src/evalvars.c, src/optionstr.c, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4194
+Problem: MS-Windows: code for calculating font size is duplicated.
+Solution: Move the code to a function. (Ken Takata, closes #9603)
+Files: src/gui_w32.c
+
+Patch 8.2.4195
+Problem: Resizing terminal may cause to behave like CTRL-Z.
+Solution: Set "got_tstp" only when in_mch_suspend is set. (Dorian Bivolaru,
+ closes #9602, closes #9586)
+Files: src/os_unix.c
+
+Patch 8.2.4196
+Problem: Various file types not recognized.
+Solution: Add patterns to recognize more file types (closes #9607)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.4197
+Problem: Cannot use an import in the "expr" part of 'spellsuggest'.
+Solution: Set the script context when evaluating "expr" of 'spellsuggest'.
+Files: src/evalvars.c, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4198
+Problem: MNV9: the switch for executing instructions is too long.
+Solution: Move some code to separate functions.
+Files: src/mnv9execute.c
+
+Patch 8.2.4199
+Problem: MS-Windows: Support for MSVC before 2003 is not useful.
+Solution: Remove the exceptions for MSVC 6.0. (Ken Takata, closes #9616)
+Files: src/GmnvExt/gmnvext.h, src/ex_docmd.c, src/feature.h,
+ src/gui_w32.c, src/if_cscope.c, src/if_ole.cpp, src/if_ruby.c,
+ src/macros.h, src/os_mswin.c, src/os_win32.c, src/os_win32.h,
+ src/proto/os_win32.pro, src/time.c, src/mnv.h
+
+Patch 8.2.4200
+Problem: Some tests do not clean up properly.
+Solution: Delete created files. (Yegappan Lakshmanan, closes #9611)
+Files: src/testdir/test_filetype.mnv, src/testdir/test_messages.mnv,
+ src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4201
+Problem: When using the GUI CTRL-Z does not stop gmnv.
+Solution: When using the GUI set SIGTSTP to SIG_DFL. (Andrew Maltsev,
+ closes #9570)
+Files: src/os_unix.c
+
+Patch 8.2.4202
+Problem: MNV9: cannot export function that exists globally.
+Solution: When checking if a function already exists only check for
+ script-local functions. (closes #9615)
+Files: src/userfunc.c, src/proto/userfunc.pro, src/mnv.h,
+ src/mnv9compile.c, src/mnv9instr.c,
+ src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4203
+Problem: Entering a character with CTRL-V may include modifiers.
+Solution: Reset "mod_mask" when entering a character with digits after
+ CTRL-V. (closes #9610)
+Files: src/edit.c, src/testdir/test_edit.mnv
+
+Patch 8.2.4204
+Problem: screenpos() has non-zero row for invisible text.
+Solution: Only add the window row when the text is visible. (closes #9618)
+Files: src/move.c, src/testdir/test_cursor_func.mnv
+
+Patch 8.2.4205
+Problem: The normal_cmd() function is too long.
+Solution: Move parts to separate functions. (Yegappan Lakshmanan,
+ closes #9608)
+Files: src/normal.c
+
+Patch 8.2.4206
+Problem: Condition with many "(" causes a crash.
+Solution: Limit recursion to 1000.
+Files: src/errors.h, src/eval.c, src/testdir/test_eval_stuff.mnv
+
+Patch 8.2.4207 (after 8.2.4206)
+Problem: Recursion test fails with MSVC.
+Solution: Use a smaller limit for MSVC.
+Files: src/eval.c
+
+Patch 8.2.4208
+Problem: Using setbufvar() may change the window title.
+Solution: Do not redraw when creating the autocommand window. (closes #9613)
+Files: src/autocmd.c, src/testdir/test_functions.mnv
+
+Patch 8.2.4209
+Problem: partial in 'opfunc' cannot use an imported function.
+Solution: Also expand the function name in a partial. (closes #9614)
+Files: src/evalvars.c, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4210 (after 8.2.4208)
+Problem: Window title test fails in some configurations.
+Solution: Only run the test if the title can be obtained.
+Files: src/testdir/test_functions.mnv
+
+Patch 8.2.4211 (after 8.2.4208)
+Problem: Window title test still fails in some configurations.
+Solution: Use WaitForAssert().
+Files: src/testdir/test_functions.mnv
+
+Patch 8.2.4212 (after 8.2.4208)
+Problem: Window title test still fails in some configurations.
+Solution: Explicitly set the 'title' option.
+Files: src/testdir/test_functions.mnv
+
+Patch 8.2.4213
+Problem: Too much code for supporting old MSVC versions.
+Solution: Remove MSVC 2003 support. (Ken Takata, closes #9623)
+Files: Filelist, src/INSTALLpc.txt, src/Make_mvc.mak, src/gui_w32.c,
+ src/msvcsetup.bat, src/os_win32.c
+
+Patch 8.2.4214
+Problem: Illegal memory access with large 'tabstop' in Ex mode.
+Solution: Allocate enough memory.
+Files: src/ex_getln.c, src/testdir/test_ex_mode.mnv
+
+Patch 8.2.4215
+Problem: Illegal memory access when copying lines in Visual mode.
+Solution: Adjust the Visual position after copying lines.
+Files: src/ex_cmds.c, src/testdir/test_visual.mnv
+
+Patch 8.2.4216
+Problem: MNV9: cannot use a function from an autoload import directly.
+Solution: Add the AUTOLOAD instruction to figure out at runtime.
+ (closes #9620)
+Files: src/mnv9expr.c, src/mnv9.h, src/mnv9execute.c, src/mnv9instr.c,
+ src/proto/mnv9instr.pro, src/testdir/test_mnv9_import.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.4217
+Problem: Illegal memory access when undo makes Visual area invalid.
+Solution: Correct the Visual area after undo.
+Files: src/undo.c, src/testdir/test_visual.mnv
+
+Patch 8.2.4218
+Problem: Illegal memory access with bracketed paste in Ex mode.
+Solution: Reserve space for the trailing NUL.
+Files: src/edit.c, src/testdir/test_paste.mnv
+
+Patch 8.2.4219
+Problem: Reading before the start of the line.
+Solution: Check boundary before trying to read the character.
+Files: src/register.c, src/testdir/test_visual.mnv
+
+Patch 8.2.4220
+Problem: MS-Windows: some old compiler support remains.
+Solution: Remove obsolete compiler support. (Ken Takata, closes #9627)
+Files: src/Make_mvc.mak, src/mnv.h
+
+Patch 8.2.4221
+Problem: Some functions in normal.c are very long.
+Solution: Move code to separate functions. (Yegappan Lakshmanan,
+ closes #9628)
+Files: src/normal.c
+
+Patch 8.2.4222
+Problem: MS-Windows: clumsy way to suppress progress on CI.
+Solution: Check for "$CI" in the Makefile itself. (Ken Takata, closes #9631)
+Files: .github/workflows/ci.yml, ci/appveyor.bat, src/Make_mvc.mak
+
+Patch 8.2.4223
+Problem: Long/int compiler warnings; function arguments swapped.
+Solution: Add type casts. Swap arguments. (Ken Takata, closes #9632)
+Files: src/alloc.c, src/eval.c, src/mnv9script.c
+
+Patch 8.2.4224
+Problem: MNV9: no error when using a number for map() second argument
+Solution: Disallow number to string conversion. (closes #9630)
+Files: src/eval.c, src/evalfunc.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.4225
+Problem: MNV9: depth argument of :lockvar not parsed in :def function.
+Solution: Parse the optional depth argument. (closes #9629)
+ Fix that locking doesn't work for a non-materialize list.
+Files: src/mnv9cmds.c, src/evalvars.c, src/structs.h, src/evalfunc.c,
+ src/errors.h, src/mnv9execute.c, src/testdir/test_mnv9_cmd.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.4226 (after 8.2.4224)
+Problem: Filter-map test fails.
+Solution: Only reject number argument in MNV9 script.
+Files: src/eval.c
+
+Patch 8.2.4227
+Problem: MNV9: using "lockvar!" in :def function does not work.
+Solution: Add "!" instead of "-1". (closes #9634)
+Files: src/mnv9cmds.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.4228
+Problem: No tests for clicking in the GUI tabline.
+Solution: Add test functions to generate the events. Add tests using the
+ functions. (Yegappan Lakshmanan, closes #9638)
+Files: runtime/doc/builtin.txt, runtime/doc/testing.txt,
+ runtime/doc/usr_41.txt, src/evalfunc.c, src/normal.c,
+ src/proto/testing.pro, src/testdir/test_diffmode.mnv,
+ src/testdir/test_gui.mnv, src/testdir/test_normal.mnv,
+ src/testing.c
+
+Patch 8.2.4229
+Problem: Possible crash when invoking timer callback fails.
+Solution: Initialize the typval. Give an error for an empty callback.
+ (closes #9636)
+Files: src/time.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.4230
+Problem: MS-Windows: set_guifontwide() is included but won't work.
+Solution: Include set_guifontwide() only for X11. (Ken Takata, closes #9640)
+Files: src/gui.c
+
+Patch 8.2.4231
+Problem: MNV9: map() gives type error when type was not declared.
+Solution: Only check the type when it was declared, like extend() does.
+ (closes #9635)
+Files: src/list.c, src/evalfunc.c, src/mnv9instr.c,
+ src/testdir/test_mnv9_builtin.mnv,
+ src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.4232 (after 8.2.4231)
+Problem: Some compilers don't like a goto label without statement.
+Solution: Return instead of using a goto.
+Files: src/list.c
+
+Patch 8.2.4233
+Problem: Crash when recording and using Select mode.
+Solution: When deleting the last recorded character check there is something
+ to delete.
+Files: src/getchar.c, src/testdir/test_registers.mnv
+
+Patch 8.2.4234
+Problem: test_garbagecollect_now() does not check v:testing as documented.
+Solution: Give an error if v:testing is not set.
+Files: src/testing.c, src/errors.h, src/testdir/test_functions.mnv
+
+Patch 8.2.4235
+Problem: Invalid check for NULL pointer.
+Solution: Remove the check.
+Files: src/getchar.c
+
+Patch 8.2.4236
+Problem: Accessing freed memory.
+Solution: Set the bh_curr pointer to NULL.
+Files: src/getchar.c
+
+Patch 8.2.4237
+Problem: Record buffer wrong if character in Select mode was not typed.
+Solution: Only delete the tail from the record buffer if the character was
+ typed. (closes #9650)
+Files: src/normal.c, src/testdir/test_registers.mnv
+
+Patch 8.2.4238
+Problem: *.tf file could be filetype "tf" or "terraform".
+Solution: Detect the type from the file contents. (closes #9642)
+Files: runtime/filetype.mnv, runtime/autoload/dist/ft.mnv,
+ src/testdir/test_filetype.mnv
+
+Patch 8.2.4239
+Problem: Build fails with unusual configuration.
+Solution: Adjust #ifdef. (closes #9651)
+Files: src/testing.c
+
+Patch 8.2.4240
+Problem: Error for using flatten() in MNV9 script is unclear.
+Solution: Add a remark to use flattennew().
+Files: src/errors.h
+
+Patch 8.2.4241
+Problem: Some type casts are redundant.
+Solution: Remove the type casts. (closes #9643)
+Files: src/blob.c, src/buffer.c, src/channel.c, src/clientserver.c,
+ src/clipboard.c, src/drawline.c, src/drawscreen.c, src/edit.c,
+ src/evalfunc.c, src/ex_cmds.c, src/ex_docmd.c, src/ex_eval.c,
+ src/fold.c, src/if_cscope.c, src/json.c, src/match.c,
+ src/memline.c, src/message.c, src/misc1.c, src/normal.c,
+ src/ops.c, src/option.c, src/optionstr.c, src/os_unix.c,
+ src/register.c, src/sign.c, src/spellfile.c, src/tag.c, src/ui.c,
+ src/undo.c, src/window.c
+
+Patch 8.2.4242
+Problem: Put in Visual mode cannot be repeated.
+Solution: Use "P" to put without yanking the deleted text into the unnamed
+ register. (Shougo Matsushita, closes #9591)
+Files: runtime/doc/visual.txt, src/normal.c, src/register.c,
+ src/testdir/test_visual.mnv
+
+Patch 8.2.4243
+Problem: Lua tests fail with Lua 5.4.4.
+Solution: Check messages like before Lua 5.4.3. (Jakub Kulík, closes #9652)
+Files: src/testdir/test_lua.mnv
+
+Patch 8.2.4244
+Problem: MS-Windows: warning from MSVC on debug build.
+Solution: Adjust "/opt" options. Remove unused variables. Make variables
+ uppercase for consistency. (Ken Takata, closes #9647)
+Files: src/Make_mvc.mak
+
+Patch 8.2.4245
+Problem: ":retab 0" may cause illegal memory access.
+Solution: Limit the value of 'tabstop' to 10000.
+Files: src/option.c, src/mnv.h, src/indent.c,
+ src/testdir/test_options.mnv
+
+Patch 8.2.4246
+Problem: One error message not in errors.h. (Antonio Colombo)
+Solution: Move the message and rename.
+Files: src/errors.h, src/if_perl.xs
+
+Patch 8.2.4247
+Problem: Stack corruption when looking for spell suggestions.
+Solution: Prevent the depth increased too much. Add a five second time
+ limit to finding suggestions.
+Files: src/spellsuggest.c, src/testdir/test_spell.mnv
+
+Patch 8.2.4248
+Problem: No proper test for moving the window separator.
+Solution: Add a test. Add comment in code. (closes #9656)
+Files: src/window.c, src/testdir/test_window_cmd.mnv
+
+Patch 8.2.4249
+Problem: The timeout limit for spell suggestions is always 5000 milli
+ seconds.
+Solution: Add the "timeout" entry to 'spellsuggest'.
+Files: runtime/doc/options.txt, src/spellsuggest.c,
+ src/testdir/test_spell.mnv
+
+Patch 8.2.4250
+Problem: Channel out callback test is flaky on Mac.
+Solution: Assign high priority to the test process. (Ozaki Kiichi,
+ closes #9653)
+Files: src/testdir/test_channel_pipe.py, src/testdir/thread_util.py
+
+Patch 8.2.4251
+Problem: Vala files are not recognized.
+Solution: Add the *.vala pattern. (closes #9654)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.4252
+Problem: Generating the normal command table at runtime is inefficient.
+Solution: Generate the table with a MNV script and put it in a header file.
+ (Yegappan Lakshmanan, closes #9648)
+Files: Filelist, runtime/doc/builtin.txt, runtime/doc/usr_41.txt,
+ src/Make_cyg_ming.mak, src/Make_mvc.mak, src/Make_vms.mms,
+ src/Makefile, src/create_nvcmdidxs.mnv, src/evalfunc.c,
+ src/main.c, src/normal.c, src/nv_cmdidxs.h, src/proto/normal.pro
+
+Patch 8.2.4253
+Problem: Using freed memory when substitute uses a recursive function call.
+Solution: Make a copy of the substitute text.
+Files: src/ex_cmds.c, src/testdir/test_substitute.mnv
+
+Patch 8.2.4254
+Problem: Using short instead of int.
+Solution: Use int. (closes #9658)
+Files: src/if_cscope.c
+
+Patch 8.2.4255
+Problem: Theoretical computation overflow.
+Solution: Perform multiplication in a wider type. (closes #9657)
+Files: src/alloc.c, src/drawline.c, src/eval.c, src/evalfunc.c,
+ src/ex_docmd.c, src/hardcopy.c, src/list.c, src/memfile.c,
+ src/memline.c, src/popupwin.c
+
+Patch 8.2.4256
+Problem: MS-Windows: compiler warnings when compiled with /W4.
+Solution: Small adjustments to the code. (Ken Takata, closes #9659)
+Files: src/gui_w32.c, src/os_win32.c
+
+Patch 8.2.4257
+Problem: MNV9: finding global function without g: prefix but not finding
+ global variable is inconsistent.
+Solution: Require using g: for a global function. Change the mnv9.mnv
+ script into a MNV9 script with exports. Fix that import in legacy
+ script does not work.
+Files: src/mnv9expr.c, src/evalfunc.c, src/eval.c, src/userfunc.c,
+ src/testdir/mnv9.mnv, src/testdir/test_mnv9_assign.mnv,
+ src/testdir/test_mnv9_builtin.mnv, src/testdir/test_mnv9_cmd.mnv,
+ src/testdir/test_mnv9_disassemble.mnv,
+ src/testdir/test_mnv9_expr.mnv, src/testdir/test_mnv9_func.mnv,
+ src/testdir/test_mnv9_import.mnv,
+ src/testdir/test_mnv9_script.mnv, src/testdir/test_blob.mnv,
+ src/testdir/test_execute_func.mnv, src/testdir/test_debugger.mnv,
+ src/testdir/test_expr.mnv, src/testdir/test_filter_map.mnv,
+ src/testdir/test_float_func.mnv, src/testdir/test_functions.mnv,
+ src/testdir/test_glob2regpat.mnv, src/testdir/test_highlight.mnv,
+ src/testdir/test_iminsert.mnv, src/testdir/test_ins_complete.mnv,
+ src/testdir/test_listdict.mnv, src/testdir/test_mapping.mnv,
+ src/testdir/test_normal.mnv, src/testdir/test_popupwin.mnv,
+ src/testdir/test_profile.mnv, src/testdir/test_quickfix.mnv,
+ src/testdir/test_tagfunc.mnv, src/testdir/test_textprop.mnv,
+ src/testdir/test_usercommands.mnv
+
+Patch 8.2.4258
+Problem: Coverity warns for array overrun.
+Solution: Restrict depth to MAXWLEN - 1.
+Files: src/spellsuggest.c
+
+Patch 8.2.4259
+Problem: Number of test functions for GUI events is growing.
+Solution: Use one function with a dictionary. (Yegappan Lakshmanan,
+ closes #9660)
+Files: runtime/doc/builtin.txt, runtime/doc/testing.txt,
+ runtime/doc/usr_41.txt, src/evalfunc.c, src/proto/testing.pro,
+ src/testdir/test_gui.mnv, src/testdir/test_mnv9_builtin.mnv,
+ src/testing.c
+
+Patch 8.2.4260
+Problem: MNV9: can still use a global function without g: at the script
+ level.
+Solution: Also check for g: at the script level. (issue #9637)
+Files: src/userfunc.c, src/proto/userfunc.pro, src/evalvars.c,
+ src/mnv9expr.c, src/testdir/test_mnv9_assign.mnv,
+ src/testdir/test_mnv9_builtin.mnv, src/testdir/test_mnv9_cmd.mnv,
+ src/testdir/test_mnv9_disassemble.mnv,
+ src/testdir/test_mnv9_expr.mnv, src/testdir/test_mnv9_func.mnv,
+ src/testdir/test_mnv9_import.mnv,
+ src/testdir/test_ins_complete.mnv, src/testdir/test_popupwin.mnv,
+ src/testdir/dumps/Test_popupwin_scroll_11.dump,
+ src/testdir/dumps/Test_popupwin_scroll_12.dump
+
+Patch 8.2.4261
+Problem: Accessing invalid memory when a regular expression checks the
+ Visual area while matching in a string.
+Solution: Do not try matching the Visual area in a string.
+Files: src/regexp.c, src/testdir/test_help.mnv
+
+Patch 8.2.4262 (after 8.2.4261)
+Problem: Some search tests fail.
+Solution: Use a better way to reject searching for the Visual area.
+Files: src/regexp.c
+
+Patch 8.2.4263
+Problem: No test for the GUI find/replace dialog.
+Solution: Add a test function and a test. (Yegappan Lakshmanan,
+ closes #9662)
+Files: runtime/doc/testing.txt, src/testdir/test_gui.mnv, src/testing.c
+
+Patch 8.2.4264
+Problem: MNV9: can use old style autoload function name.
+Solution: Give an error for old style autoload function name.
+Files: src/errors.h, src/userfunc.c, src/testdir/test_mnv9_import.mnv,
+ src/testdir/test_mnv9_func.mnv, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.4265 (after 8.2.4264)
+Problem: Autoload tests fails.
+Solution: Use export instead of name with #.
+Files: src/testdir/sautest/autoload/auto9.mnv,
+ src/testdir/test_autoload.mnv, src/testdir/test_ins_complete.mnv
+
+Patch 8.2.4266
+Problem: Compiler warning for uninitialized variable.
+Solution: Initialize saved_did_emsg.
+Files: src/userfunc.c
+
+Patch 8.2.4267
+Problem: Unused entry in keymap enum.
+Solution: Remove the entry.
+Files: src/keymap.h
+
+Patch 8.2.4268
+Problem: CI log output is long.
+Solution: Group output in sections. (Ozaki Kiichi, closes #9670)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.4269
+Problem: Coverity warns for using a NULL pointer.
+Solution: Check for "name" to not be NULL.
+Files: src/userfunc.c
+
+Patch 8.2.4270
+Problem: Generating nv_cmdidxs.h requires building MNV twice.
+Solution: Move the table into a separate file and use a separate executable
+ to extract the command characters. (Ozaki Kiichi, closes #9669)
+Files: src/normal.c, src/nv_cmds.h, Filelist, runtime/doc/builtin.txt,
+ runtime/doc/usr_41.txt, src/Make_cyg_ming.mak, src/Make_mvc.mak,
+ src/Make_vms.mms, src/Makefile, src/create_nvcmdidxs.c,
+ src/create_nvcmdidxs.mnv, src/evalfunc.c, src/proto/normal.pro
+
+Patch 8.2.4271
+Problem: MS-Windows: cannot build with Ruby 3.1.0.
+Solution: Adjust the DLL name and include directory. (Ken Takata,
+ closes #9666)
+Files: src/Make_cyg_ming.mak, src/Make_mvc.mak
+
+Patch 8.2.4272
+Problem: MNV9 expr test fails without the channel feature. (Dominique
+ Pellé)
+Solution: Remove "g:" before "CheckFeature". (closes #9671)
+Files: src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.4273
+Problem: The EBCDIC support is outdated.
+Solution: Remove the EBCDIC support.
+Files: src/ascii.h, src/charset.c, src/cindent.c, src/digraph.c,
+ src/edit.c, src/eval.c, src/evalfunc.c, src/ex_cmds.c,
+ src/feature.h, src/filepath.c, src/findfile.c, src/getchar.c,
+ src/gui.c, src/gui_motif.c, src/hardcopy.c, src/help.c,
+ src/macros.h, src/map.c, src/mark.c, src/misc2.c, src/normal.c,
+ src/ops.c, src/option.c, src/option.h, src/optiondefs.h,
+ src/os_unix.c, src/proto/evalfunc.pro, src/regexp.c,
+ src/regexp_bt.c, src/regexp_nfa.c, src/register.c, src/screen.c,
+ src/spell.c, src/strings.c, src/structs.h, src/term.c,
+ src/version.c, src/mnvinfo.c, src/testdir/test_edit.mnv,
+ src/testdir/test_exec_while_if.mnv, src/testdir/test_expr.mnv,
+ src/testdir/test_gf.mnv, src/testdir/test_regexp_utf8.mnv
+
+Patch 8.2.4274
+Problem: Basic and form filetype detection is incomplete.
+Solution: Add a separate function for .frm files. (Doug Kearns, closes #9675)
+Files: runtime/autoload/dist/ft.mnv, runtime/filetype.mnv,
+ src/testdir/test_filetype.mnv
+
+Patch 8.2.4275
+Problem: Cannot use an autoload function from a package under start.
+Solution: Also look in the "start" package directory. (Bjorn Linse,
+ closes #7193)
+Files: src/scriptfile.c, src/testdir/test_packadd.mnv
+
+Patch 8.2.4276
+Problem: Separate test function for the GUI scrollbar.
+Solution: Use test_gui_event(). (Yegappan Lakshmanan, closes #9674)
+Files: runtime/doc/builtin.txt, runtime/doc/testing.txt,
+ runtime/doc/usr_41.txt, src/evalfunc.c, src/testing.c,
+ src/proto/testing.pro, src/testdir/test_gui.mnv,
+ src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.4277
+Problem: MNV9: an import does not shadow a command modifier.
+Solution: Do not accept a command modifier followed by a dot.
+Files: src/ex_docmd.c, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4278
+Problem: Build with Athena GUI fails. (Elimar Riesebieter)
+Solution: Add #ifdef.
+Files: src/testing.c
+
+Patch 8.2.4279
+Problem: MNV9: cannot change item type with map() after range().
+Solution: Split the return type in current type and declared type.
+ (closes #9665)
+Files: src/evalfunc.c, src/proto/evalfunc.pro, src/mnv9instr.c,
+ src/mnv9type.c, src/proto/mnv9type.pro,
+ src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.4280 (after 8.2.4279)
+Problem: list-dict test crashes.
+Solution: Check declared type for add().
+Files: src/mnv9expr.mnv
+
+Patch 8.2.4281
+Problem: Using freed memory with :lopen and :bwipe.
+Solution: Do not use a wiped out buffer.
+Files: src/buffer.c, src/testdir/test_quickfix.mnv
+
+Patch 8.2.4282
+Problem: Restricted mode requires the -Z command line option.
+Solution: Use restricted mode when $SHELL ends in "nologin" or "false".
+ (closes #9681)
+Files: runtime/doc/starting.txt, src/option.c,
+ src/testdir/test_restricted.mnv
+
+Patch 8.2.4283
+Problem: Using a variable for the return value is not needed.
+Solution: Return the value directly. (closes #9687)
+Files: src/ex_docmd.c, src/misc2.c
+
+Patch 8.2.4284
+Problem: Old mac resources files are no longer used.
+Solution: Delete the unused files. (Ozaki Kiichi, closes #9688)
+Files: Filelist, src/Makefile, src/dehqx.py, src/infplist.xml,
+ src/os_mac.rsr.hqx, src/os_mac_rsrc/app.icns,
+ src/os_mac_rsrc/doc-txt.icns, src/os_mac_rsrc/doc.icns
+
+Patch 8.2.4285
+Problem: MNV9: type of item in for loop not checked properly.
+Solution: Adjust the type checking. (closes #9683)
+Files: src/mnv9compile.c, src/proto/mnv9compile.pro, src/mnv9cmds.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.4286
+Problem: MNV9: strict type checking after copy() and deepcopy().
+Solution: Allow type to change after making a copy. (closes #9644)
+Files: src/eval.c, src/proto/eval.pro, src/dict.c, src/proto/dict.pro,
+ src/list.c, src/proto/list.pro, src/evalfunc.c, src/mnv9execute.c,
+ src/mnv9type.c, src/proto/mnv9type.pro, src/evalvars.c,
+ src/testdir/test_mnv9_builtin.mnv,
+ src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.4287
+Problem: Cannot assign empty list with any list type to variable with
+ specific list type.
+Solution: Use unknown list type for empty list if the specified type is any.
+Files: src/mnv9type.c, src/testdir/test_mnv9_assign.mnv,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.4288
+Problem: Preprocessor indents are inconsistent.
+Solution: Fix preprocessor indents. (Ken Takata, closes #9691)
+Files: src/arglist.c, src/change.c, src/ex_cmds.c, src/gui.c,
+ src/hashtab.c, src/indent.c, src/ops.c, src/os_win32.c
+
+Patch 8.2.4289
+Problem: Warnings reported by MSVC.
+Solution: Rename variables and other fixes. (Ken Takata, closes #9689)
+Files: src/cmdexpand.c, src/drawscreen.c, src/filepath.c, src/getchar.c,
+ src/menu.c, src/os_win32.c, src/version.c
+
+Patch 8.2.4290
+Problem: MS-Windows: using type casts for timer IDs.
+Solution: Remove type casts and use the right type. (Ken Takata,
+ closes #9690) Remove old debug comments. Rename variables and
+ functions.
+Files: src/gui_w32.c
+
+Patch 8.2.4291
+Problem: Error number used twice.
+Solution: Renumber the errors.
+Files: src/errors.h
+
+Patch 8.2.4292 (after 8.2.4291)
+Problem: Test fails.
+Solution: Adjust the expected error number.
+Files: src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.4293
+Problem: MNV9: when copying a list it gets type list<any> even when the
+ original list did not have a type.
+Solution: Only set the type when the original list has a type. (closes #9692)
+Files: src/list.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.4294
+Problem: MS-Windows: #ifdefs for Cygwin are too complicated.
+Solution: Simplify the conditions. (Ken Takata, closes #9693)
+Files: src/evalfunc.c, src/main.c, src/os_unix.c, src/os_win32.c,
+ src/os_win32.h
+
+Patch 8.2.4295
+Problem: MNV9: concatenating two lists may result in wrong type.
+Solution: Remove the type instead of using list<any>. (closes #9692)
+Files: src/list.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.4296
+Problem: MNV9: not all code covered by tests.
+Solution: Add a few more tests for corner cases. Fix hang when single quote
+ is missing.
+Files: src/mnv9expr.c, src/testdir/test_mnv9_assign.mnv,
+ src/testdir/test_mnv9_cmd.mnv, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.4297
+Problem: MNV9: not all code covered by tests.
+Solution: Add a couple more tests.
+Files: src/testdir/test_mnv9_script.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.4298
+Problem: Divide by zero with huge tabstop value.
+Solution: Reject tabstop value that overflows to zero.
+Files: src/indent.c, src/testdir/test_vartabs.mnv
+
+Patch 8.2.4299
+Problem: SafeState autocommand interferes with debugging.
+Solution: Do not trigger SafeState while debugging. (closes #9697)
+Files: src/main.c
+
+Patch 8.2.4300 (after 8.2.4299)
+Problem: Cannot build tiny version. (Tony Mechelynck)
+Solution: Add #ifdef.
+Files: src/main.c
+
+Patch 8.2.4301
+Problem: MNV9: type error for copy of dict.
+Solution: Do not use dict<any> but no type. (closes #9696)
+Files: src/dict.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.4302
+Problem: MNV9: return type of getline() is too strict.
+Solution: Make the declared type list<any>. Also do this for other
+ functions returning a list of a specific type.
+Files: src/evalfunc.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.4303
+Problem: A few messages should not be translated.
+Solution: Remove _(). (Dominique Pellé, closes #9702)
+Files: src/syntax.c
+
+Patch 8.2.4304
+Problem: MNV9: slice() makes a copy but doesn't change the type.
+Solution: Change the declared type like copy(). (closes #9696)
+Files: src/evalfunc.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.4305
+Problem: Tex filetype detection fails.
+Solution: Check value to be positive. (closes #9704)
+Files: runtime/autoload/dist/ft.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.4306
+Problem: No test for fixed perl filetype check.
+Solution: Add a test. Sort test functions.
+Files: src/testdir/test_filetype.mnv
+
+Patch 8.2.4307
+Problem: A few more messages should not be translated.
+Solution: Remove _().
+Files: src/syntax.c
+
+Patch 8.2.4308
+Problem: MNV9: cannot list autoload function.
+Solution: Don't give an error for using # when listing a function.
+ (closes #9703)
+Files: src/userfunc.c, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4309
+Problem: MNV9: crash when using a partial in the wrong context.
+Solution: Don't use an NULL outer pointer. (closes #9706)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.4310
+Problem: MNV9: constant list and dict get a declaration type other than
+ "any".
+Solution: A constant list and dict have a declared member type "any".
+ (closes #9701)
+Files: src/mnv9instr.c, src/mnv9type.c, src/proto/mnv9type.pro,
+ src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.4311
+Problem: MNV9: changing script variable type not caught at compile time.
+Solution: Set the declared type.
+Files: src/mnv9instr.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.4312
+Problem: No error for using :mnv9script in a :def function.
+Solution: Give an error when compiling.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.4313
+Problem: MNV9: cannot change type of list after making a slice.
+Solution: Adjust the declared member type. (closes #9696)
+Files: src/mnv9expr.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.4314 (after 8.2.4312)
+Problem: Test fails where lines are skipped.
+Solution: Only give an error when not skipping commands.
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.4315
+Problem: Put in Visual mode not fully tested.
+Solution: Add a few more test cases. (closes #9708)
+Files: src/testdir/test_visual.mnv
+
+Patch 8.2.4316
+Problem: __CYGWIN32__ is not defined on 64 bit systems.
+Solution: Update #ifdefs. (Ken Takata, closes #9709)
+Files: src/main.c, src/os_unix.c, src/pty.c, src/mnv.h
+
+Patch 8.2.4317
+Problem: MS-Windows: MNV exits when Python 3 initialisation fails.
+Solution: Hook into the exit() function to recover from the failure.
+ (Ken Takata, closes #9710)
+Files: runtime/doc/if_pyth.txt, src/if_python3.c, src/os_win32.c,
+ src/errors.h, src/proto/os_win32.pro
+
+Patch 8.2.4318
+Problem: Various comment and indent mistakes, returning wrong zero.
+Solution: Fix the mistakes. Return NULL instead of FAIL.
+Files: src/clientserver.c, src/eval.c, src/evalvars.c, src/mnv9cmds.c,
+ src/window.c
+
+Patch 8.2.4319
+Problem: :put does not work properly in compiled function. (John Beckett)
+Solution: Adjust the direction when using line zero.
+Files: src/mnv9execute.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.4320
+Problem: Athena and Motif: when maximized scrollbar position is wrong.
+Solution: Implement the scrollbar padding functions. (closes #9712)
+Files: src/gui_athena.c, src/gui_motif.c
+
+Patch 8.2.4321
+Problem: MNV9: crash when using a funcref to a closure.
+Solution: Copy pt_outer to the new partial. (closes #9714)
+Files: src/evalfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.4322
+Problem: MNV9: crash when using funcref with closure.
+Solution: Keep a reference to the funcref that has the outer context.
+ (closes #9716)
+Files: src/evalfunc.c, src/structs.h, src/eval.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.4323
+Problem: MNV9: nested function name can start with "_".
+Solution: Use same rule for function name for nested functions.
+ (closes #9713)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.4324
+Problem: MNV9: script-local function name can start with "_".
+Solution: Check for leading capital after "s:". Correct error message.
+Files: src/userfunc.c, src/errors.h, src/mnv9compile.c,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.4325
+Problem: 'wildmenu' only shows few matches.
+Solution: Add the "pum" option: use a popup menu to show the matches.
+ (Yegappan Lakshmanan et al., closes #9707)
+Files: runtime/doc/options.txt, src/mnv.h, src/cmdexpand.c,
+ src/drawscreen.c, src/evalfunc.c, src/ex_getln.c, src/option.h,
+ src/optionstr.c, src/popupmenu.c, src/proto/cmdexpand.pro,
+ src/testdir/test_cmdline.mnv,
+ src/testdir/dumps/Test_wildmenu_pum_01.dump,
+ src/testdir/dumps/Test_wildmenu_pum_02.dump,
+ src/testdir/dumps/Test_wildmenu_pum_03.dump,
+ src/testdir/dumps/Test_wildmenu_pum_04.dump,
+ src/testdir/dumps/Test_wildmenu_pum_05.dump,
+ src/testdir/dumps/Test_wildmenu_pum_06.dump,
+ src/testdir/dumps/Test_wildmenu_pum_07.dump,
+ src/testdir/dumps/Test_wildmenu_pum_08.dump,
+ src/testdir/dumps/Test_wildmenu_pum_09.dump,
+ src/testdir/dumps/Test_wildmenu_pum_10.dump,
+ src/testdir/dumps/Test_wildmenu_pum_11.dump,
+ src/testdir/dumps/Test_wildmenu_pum_12.dump,
+ src/testdir/dumps/Test_wildmenu_pum_13.dump,
+ src/testdir/dumps/Test_wildmenu_pum_14.dump,
+ src/testdir/dumps/Test_wildmenu_pum_15.dump,
+ src/testdir/dumps/Test_wildmenu_pum_16.dump,
+ src/testdir/dumps/Test_wildmenu_pum_17.dump,
+ src/testdir/dumps/Test_wildmenu_pum_18.dump,
+ src/testdir/dumps/Test_wildmenu_pum_19.dump,
+ src/testdir/dumps/Test_wildmenu_pum_20.dump,
+ src/testdir/dumps/Test_wildmenu_pum_21.dump,
+ src/testdir/dumps/Test_wildmenu_pum_22.dump,
+ src/testdir/dumps/Test_wildmenu_pum_23.dump,
+ src/testdir/dumps/Test_wildmenu_pum_24.dump,
+ src/testdir/dumps/Test_wildmenu_pum_25.dump,
+ src/testdir/dumps/Test_wildmenu_pum_26.dump,
+ src/testdir/dumps/Test_wildmenu_pum_27.dump,
+ src/testdir/dumps/Test_wildmenu_pum_28.dump,
+ src/testdir/dumps/Test_wildmenu_pum_29.dump
+
+Patch 8.2.4326
+Problem: "o" and "O" copying comment not sufficiently tested.
+Solution: Add a test case. (closes #9718)
+Files: src/testdir/test_textformat.mnv
+
+Patch 8.2.4327
+Problem: May end up with no current buffer.
+Solution: When deleting the current buffer to not pick a quickfix buffer as
+ the new current buffer.
+Files: src/buffer.c, src/testdir/test_quickfix.mnv
+
+Patch 8.2.4328
+Problem: Command line complete matches cleared when typing character.
+ (Dominique Pellé)
+Solution: Only remove a popup menu if there is one.
+Files: src/ex_getln.c, src/testdir/test_cmdline.mnv,
+ src/testdir/dumps/Test_wildmenu_pum_30.dump,
+ src/testdir/dumps/Test_wildmenu_pum_31.dump
+
+Patch 8.2.4329
+Problem: No support for end line number and column in 'errorformat'.
+Solution: Add %e and %k. (closes #9624)
+Files: runtime/doc/quickfix.txt, src/quickfix.c,
+ src/testdir/test_quickfix.mnv
+
+Patch 8.2.4330
+Problem: MNV9: no error if script imports itself.
+Solution: Give an error when a script imports itself.
+Files: src/mnv9script.c, src/errors.h, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4331
+Problem: MNV9: no test for existing script variable in block.
+Solution: Add a test.
+Files: src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.4332
+Problem: MNV9: incomplete test for existing script variable in block.
+Solution: Add a couple more tests. Fix uncovered problem.
+Files: src/userfunc.c, src/mnv9compile.c, src/proto/mnv9compile.pro,
+ src/mnv9script.c, src/mnv9expr.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.4333
+Problem: cstack not always passed to where it is needed.
+Solution: Pass cstack through functions.
+Files: src/eval.c, src/mnv9expr.c, src/mnv9script.c,
+ src/proto/mnv9script.pro, src/mnv9compile.c,
+ src/proto/mnv9compile.pro
+
+Patch 8.2.4334
+Problem: Command line popup menu not positioned correctly.
+Solution: Also use mnv_strsize() on the existing text. (Naruhiko Nishino,
+ closes #9727)
+Files: src/cmdexpand.c, src/testdir/test_cmdline.mnv,
+ src/testdir/dumps/Test_wildmenu_pum_32.dump
+
+Patch 8.2.4335
+Problem: No autocommand event triggered before changing directory. (Ronnie
+ Magatti)
+Solution: Add DirChangedPre. (closes #9721)
+Files: runtime/doc/autocmd.txt, src/ex_docmd.c, src/proto/ex_docmd.pro,
+ src/mnv.h, src/autocmd.c, src/misc2.c,
+ src/testdir/test_autocmd.mnv
+
+Patch 8.2.4336
+Problem: Using :filter for :scriptnames does not work. (Ben Jackson)
+Solution: Call message_filtered(). (closes #9720)
+Files: src/scriptfile.c, src/testdir/test_filter_cmd.mnv
+
+Patch 8.2.4337
+Problem: Part of condition is always true.
+Solution: Remove that part of the condition. (closes #9729)
+Files: src/filepath.c
+
+Patch 8.2.4338
+Problem: An error from an expression mapping messes up the display.
+Solution: When the expression results in an empty string return K_IGNORE.
+ In cmdline mode redraw the command line. (closes #9726)
+Files: src/getchar.c, src/testdir/test_mapping.mnv,
+ src/testdir/dumps/Test_map_expr_2.dump,
+ src/testdir/dumps/Test_map_expr_3.dump,
+ src/testdir/dumps/Test_map_expr_4.dump
+
+Patch 8.2.4339
+Problem: CTRL-A does not work properly with the cmdline popup menu.
+Solution: Fix issues with CTRL-A. Add more tests for the cmdline popup
+ menu. Remove TermWait() before VeriryScreenDump(). Refactor the
+ cmdline popup code. (Yegappan Lakshmanan, closes #9735)
+Files: src/cmdexpand.c, src/ex_getln.c, src/popupmenu.c,
+ src/testdir/screendump.mnv, src/testdir/test_bufline.mnv,
+ src/testdir/test_cmdline.mnv, src/testdir/test_conceal.mnv,
+ src/testdir/test_cursorline.mnv, src/testdir/test_diffmode.mnv,
+ src/testdir/test_display.mnv, src/testdir/test_highlight.mnv,
+ src/testdir/test_match.mnv, src/testdir/test_popup.mnv,
+ src/testdir/test_search_stat.mnv, src/testdir/test_terminal.mnv,
+ src/testdir/test_textprop.mnv,
+ src/testdir/dumps/Test_wildmenu_pum_33.dump,
+ src/testdir/dumps/Test_wildmenu_pum_34.dump,
+ src/testdir/dumps/Test_wildmenu_pum_35.dump,
+ src/testdir/dumps/Test_wildmenu_pum_36.dump,
+ src/testdir/dumps/Test_wildmenu_pum_37.dump
+
+Patch 8.2.4340
+Problem: Amiga: mch_can_exe() is not implemented.
+Solution: Implement mch_can_exe() for Amiga OS 4. (Ola Söder, closes #9731)
+Files: src/os_amiga.c
+
+Patch 8.2.4341
+Problem: Command line not redrawn when finishing popup menu and the screen
+ has scrolled up.
+Solution: Redraw the command line after updating the screen. (closes #9722)
+Files: src/cmdexpand.c, src/testdir/test_cmdline.mnv,
+ src/testdir/dumps/Test_wildmenu_pum_38.dump
+
+Patch 8.2.4342
+Problem: CI will soon switch to other windows version.
+Solution: Use "windows-2019" instead of "windows-latest". (Ozaki Kiichi,
+ closes #9740)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.4343
+Problem: When reloading not all properties are detected.
+Solution: Add the "edit" value to v:fcs_choice. (Rob Pilling, closes #9579)
+Files: runtime/doc/editing.txt, runtime/doc/eval.txt, src/fileio.c,
+ src/proto/fileio.pro, src/message.c, src/spellfile.c,
+ src/testdir/test_filechanged.mnv
+
+Patch 8.2.4344
+Problem: Amiga: header file included twice.
+Solution: Remove #include. (Ola Söder, closes #9733)
+Files: src/memfile.c
+
+Patch 8.2.4345
+Problem: <amatch> is expanded like a file name for DirChangedPre.
+Solution: Do not expand <amatch>. (closes #9742) Also for the User event.
+Files: src/autocmd.c, src/testdir/test_autocmd.mnv
+
+Patch 8.2.4346
+Problem: A custom statusline may cause Esc to work like Enter on the
+ command line when the popup menu is displayed.
+Solution: Save and restore KeyTyped. (closes #9749)
+Files: src/drawscreen.c, src/testdir/test_cmdline.mnv,
+ src/testdir/dumps/Test_wildmenu_pum_39.dump
+
+Patch 8.2.4347
+Problem: In some build setups UNUSED is not defined.
+Solution: Change the logic of how UNUSED is defined. (Ola Söder,
+ closes #9734)
+Files: src/mnv.h
+
+Patch 8.2.4348
+Problem: "legacy exe cmd" does not do what one would expect.
+Solution: Apply the "legacy" and "mnv9script" command modifiers to the
+ argument of ":execute".
+Files: runtime/doc/mnv9.txt, src/globals.h, src/eval.c, src/ex_docmd.c,
+ src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.4349
+Problem: FileChangedShell test fails on MS-Windows.
+Solution: Skip the test on MS-Windows.
+Files: src/testdir/test_filechanged.mnv
+
+Patch 8.2.4350
+Problem: FEAT_GUI_ENABLED defined but never used.
+Solution: Remove the #define. (Ola Söder, closes #9732)
+Files: src/mnv.h
+
+Patch 8.2.4351
+Problem: No coverage is measured on MS-Windows CI.
+Solution: Enable coverage on MS-Windows. (Ozaki Kiichi, closes #9750)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.4352
+Problem: ReScript files are not recognized.
+Solution: Add the *.res and *.resi patterns. (Ananda Umamil, closes #9752)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.4353
+Problem: CI does not use the latest Lua and Python.
+Solution: Use Lua 5.4.2 and Python 3.10. (closes #9744)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.4354
+Problem: Dynamic loading of libsodium not handled properly.
+Solution: Fix has() and :version. Show an error message when loading fails.
+ Fix memory leaks. (Ken Takata, closes #9754)
+Files: src/crypt.c, src/evalfunc.c, src/gui_dwrite.cpp, src/if_cscope.c,
+ src/os_win32.c, src/proto/crypt.pro, src/proto/os_win32.pro,
+ src/version.c
+
+Patch 8.2.4355
+Problem: Unnecessary call to check_colorcolumn().
+Solution: Remove the call. (Sean Dewar, closes #9748)
+Files: src/option.c, src/window.c
+
+Patch 8.2.4356
+Problem: Command line completion functions are very long.
+Solution: Refactor into multiple functions. (Yegappan Lakshmanan,
+ closes #9753)
+Files: src/cmdexpand.c
+
+Patch 8.2.4357 (after 8.2.4348)
+Problem: sticky command modifiers are too sticky.
+Solution: Do not apply command modifiers to a sourced script. (closes #9751)
+Files: src/scriptfile.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.4358
+Problem: MNV9: line number of exception is not set.
+Solution: Set the line number before throwing an exception. (closes #9755)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.4359
+Problem: crash when repeatedly using :retab.
+Solution: Bail out when the line is getting too long.
+Files: src/indent.c, src/testdir/test_retab.mnv
+
+Patch 8.2.4360
+Problem: MNV9: allowing use of "s:" leads to inconsistencies.
+Solution: Disallow using "s:" in MNV9 script at the script level.
+Files: src/userfunc.c, src/proto/userfunc.pro, src/errors.h,
+ src/mnv9compile.c, src/eval.c, src/testdir/mnv9.mnv,
+ src/testdir/test_mnv9_assign.mnv,
+ src/testdir/test_mnv9_builtin.mnv, src/testdir/test_mnv9_cmd.mnv,
+ src/testdir/test_mnv9_disassemble.mnv,
+ src/testdir/test_mnv9_expr.mnv, src/testdir/test_mnv9_func.mnv,
+ src/testdir/test_mnv9_import.mnv, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.4361 (after 8.2.4360)
+Problem: MNV9: some tests fail.
+Solution: Fix the tests, mostly by removing "s:".
+Files: src/testdir/test_expr.mnv, src/testdir/test_functions.mnv,
+ src/testdir/test_ins_complete.mnv, src/testdir/test_normal.mnv,
+ src/testdir/test_tagfunc.mnv
+
+Patch 8.2.4362
+Problem: :retab may allocate too much memory.
+Solution: Bail out when allocating more than MAXCOL bytes.
+Files: src/indent.c
+
+Patch 8.2.4363
+Problem: MS-Windows: running out of memory for a very long line.
+Solution: Use a 32 bit value for MAXCOL also when ints are 64 bits.
+Files: src/mnv.h
+
+Patch 8.2.4364
+Problem: MS-Windows: still running out of memory for a very long line.
+Solution: Check for negative length.
+Files: src/indent.c
+
+Patch 8.2.4365 (after 8.2.4348)
+Problem: sticky command modifiers are too sticky.
+Solution: Do not apply command modifiers to a called function. (closes #9751)
+Files: src/userfunc.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.4366
+Problem: Not enough tests for command line completion.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #9760)
+Files: src/cmdexpand.c, src/testdir/test_cmdline.mnv,
+ src/testdir/test_usercommands.mnv
+
+Patch 8.2.4367
+Problem: Calling in_mnv9script() multiple times.
+Solution: Call it once and keep the result.
+Files: src/userfunc.c, src/eval.c
+
+Patch 8.2.4368
+Problem: Amiga: a few compiler warnings.
+Solution: Adjust #ifdefs. Add "UNUSED". (Ola Söder, closes #9756,
+ closes #9757)
+Files: src/term.c, src/os_amiga.c
+
+Patch 8.2.4369
+Problem: Redundant #ifdef argument.
+Solution: Remove unused MSWIN. (Ola Söder, closes #9758)
+Files: src/feature.h
+
+Patch 8.2.4370
+Problem: MS-Windows: libsodium.dll not included with the installer.
+Solution: Add the file to the installer if it exists. (Christian Brabandt,
+ closes #9762)
+Files: nsis/gmnv.nsi
+
+Patch 8.2.4371
+Problem: MNV9: can create a script variable from a legacy function.
+Solution: Disallow creating a script variable from a function.
+Files: src/evalvars.c, src/errors.h, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.4372
+Problem: Filetype detection from file contents is in legacy script.
+Solution: Use a compiled function for filetype detection.
+Files: runtime/scripts.mnv, runtime/autoload/dist/script.mnv
+
+Patch 8.2.4373
+Problem: Expression test fails.
+Solution: Make the test work with latest MNV9 syntax.
+Files: src/testdir/test_expr.mnv
+
+Patch 8.2.4374
+Problem: Unreachable code.
+Solution: Remove outdated code lines.
+Files: src/mnv9compile.c
+
+Patch 8.2.4375
+Problem: ctx_imports is not used.
+Solution: Delete ctx_imports. Add missing dependency.
+Files: src/mnv9.h, src/mnv9compile.c, src/proto/mnv9compile.pro,
+ src/eval.c, src/evalfunc.c, src/evalvars.c, src/userfunc.c,
+ src/mnv9expr.c, src/mnv9script.c, src/Makefile
+
+Patch 8.2.4376
+Problem: Not enough tests for command line completion.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #9771)
+Files: src/testdir/test_cmdline.mnv, src/testdir/test_usercommands.mnv
+
+Patch 8.2.4377
+Problem: CI steps for Windows are a bit unorganized.
+Solution: Organize CI test steps on Windows. (Ozaki Kiichi, closes #9764)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.4378
+Problem: Incsearch highlight broken when calling searchcount() in 'tabLine'
+ function. (Mirko Palmer)
+Solution: Save and restore the incsearch state. (Christian Brabandt,
+ closes #9763, closes #9633)
+Files: src/search.c, src/testdir/test_search_stat.mnv,
+ src/testdir/dumps/Test_searchstat_inc_1.dump,
+ src/testdir/dumps/Test_searchstat_inc_2.dump,
+ src/testdir/dumps/Test_searchstat_inc_3.dump
+
+Patch 8.2.4379
+Problem: An empty change is reported to a listener.
+Solution: Do not report an empty change. (closes #9768) Remove unused
+ return value.
+Files: src/undo.c, src/change.c, src/testdir/test_listener.mnv
+
+Patch 8.2.4380
+Problem: Small differences between Chinese translation files.
+Solution: Add rule for converting UTF-8 to gb2312. (closes #9773)
+Files: src/po/Makefile, src/po/Make_all.mak
+
+Patch 8.2.4381 (after 8.2.4380)
+Problem: Translation file listed twice.
+Solution: Remove one entry.
+Files: src/po/Make_all.mak
+
+Patch 8.2.4382 (after 8.2.4346)
+Problem: A custom 'tabline' may cause Esc to work like Enter on the
+ command line when the popup menu is displayed.
+Solution: Save and restore KeyTyped. (closes #9776)
+Files: src/drawscreen.c, src/screen.c, src/testdir/test_cmdline.mnv,
+ src/testdir/dumps/Test_wildmenu_pum_40.dump
+
+Patch 8.2.4383
+Problem: MNV9: unused code lines.
+Solution: Rely on either "cctx" or "cstack" to not be NULL.
+Files: src/mnv9compile.c
+
+Patch 8.2.4384
+Problem: MNV9: error message not tested, some code not tested.
+Solution: Add a couple of test cases. Give an error for a command modifier
+ without a command.
+Files: src/errors.h, src/mnv9compile.c, src/ex_docmd.c,
+ src/testdir/test_mnv9_assign.mnv, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.4385 (after 8.2.4384)
+Problem: Cannot build tiny version.
+Solution: Adjust #ifdefs.
+Files: src/errors.h
+
+Patch 8.2.4386 (after 8.2.4384)
+Problem: Still cannot build tiny version.
+Solution: Adjust #ifdefs.
+Files: src/ex_docmd.c
+
+Patch 8.2.4387
+Problem: Command line completion doesn't always work properly.
+Solution: Adjust triggering after a "|". Add more tests. (Yegappan
+ Lakshmanan, closes #9779)
+Files: src/cmdexpand.c, src/testdir/test_cmdline.mnv
+
+Patch 8.2.4388
+Problem: Dead code in op_insert().
+Solution: Remove condition and else block. (closes #9782)
+Files: src/ops.c
+
+Patch 8.2.4389
+Problem: screenpos() does not handle a position in a closed fold.
+Solution: Check if the position is inside a closed fold. (closes #9778)
+Files: src/move.c, src/testdir/test_cursor_func.mnv
+
+Patch 8.2.4390
+Problem: MNV9: list from declaration with inferred type does not set the
+ type on the value.
+Solution: When inferring the type in a variable declaration also set the
+ type of the list or dictionary. (closes #9705) Do not set the
+ type when the member is "any".
+Files: src/mnv9compile.c, src/testdir/test_mnv9_assign.mnv,
+ src/testdir/test_mnv9_builtin.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.4391
+Problem: Command line executed when typing Esc in the GUI.
+Solution: Move saving/restoring KeyTyped to build_stl_str_hl().
+ (closes #9783)
+Files: src/buffer.c, src/screen.c
+
+Patch 8.2.4392 (after 8.2.4002)
+Problem: MS-Windows with MNVDLL: Escaping CSI is wrong.
+Solution: Put back #ifdef. (Ken Takata, closes #9769)
+Files: src/getchar.c
+
+Patch 8.2.4393
+Problem: Possible number overflow with nested folds.
+Solution: Avoid a negative line number.
+Files: src/fold.c
+
+Patch 8.2.4394 (after 8.2.4392)
+Problem: UTF8 select mode test fails on MS-Windows.
+Solution: Revert the #ifdef change.
+Files: src/getchar.c
+
+Patch 8.2.4395
+Problem: Some code lines not covered by tests.
+Solution: Add a few more test cases. Fix getting more than one error for
+ invalid assignment.
+Files: src/evalvars.c, src/errors.h, src/mnv9compile.c,
+ src/testdir/test_mnv9_assign.mnv, src/testdir/test_mnv9_cmd.mnv,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.4396 (after 8.2.4395)
+Problem: Python3 test fails.
+Solution: Remove "let".
+Files: src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.4397
+Problem: Crash when using many composing characters in error message.
+Solution: Use mb_cptr2char_adv() instead of mb_ptr2char_adv().
+Files: src/testing.c, src/testdir/test_assert.mnv
+
+Patch 8.2.4398
+Problem: Some command completion functions are too long.
+Solution: Refactor code into separate functions. Add a few more tests.
+ (Yegappan Lakshmanan, closes #9785)
+Files: src/cmdexpand.c, src/ex_getln.c, src/usercmd.c,
+ src/proto/usercmd.pro, src/testdir/test_cmdline.mnv
+
+Patch 8.2.4399
+Problem: Crash after ml_get error.
+Solution: When returning "???" flush the line and set ml_line_lnum.
+Files: src/memline.c
+
+Patch 8.2.4400 (after 8.2.4394)
+Problem: MS-Windows: cannot use the mouse in the console with MNVDLL.
+Solution: use add_char2buf() instead of fix_input_buffer(). (closes #9784,
+ closes #9769)
+Files: src/getchar.c
+
+Patch 8.2.4401
+Problem: Map listing does not clear the rest of the command line.
+Solution: Call msg_clear_eos(). (closes #5623, closes #5962)
+Files: src/map.c, src/testdir/test_mapping.mnv,
+ src/testdir/dumps/Test_map_list_1.dump
+
+Patch 8.2.4402
+Problem: Missing parenthesis may cause unexpected problems.
+Solution: Add more parenthesis is macros. (closes #9788)
+Files: src/autocmd.c, src/charset.c, src/drawline.c, src/drawscreen.c,
+ src/evalfunc.c, src/fileio.c, src/fold.c, src/getchar.c,
+ src/highlight.c, src/memline.c, src/normal.c, src/quickfix.c,
+ src/regexp.c, src/search.c, src/sha256.c, src/spell.c,
+ src/spellfile.c, src/spellsuggest.c, src/syntax.c, src/window.c
+
+Patch 8.2.4403
+Problem: ml_get error with nested folds and deleting lines.
+Solution: Correct the last line number before calling hasFoldingWin().
+Files: src/change.c
+
+Patch 8.2.4404
+Problem: MNV9: some code not covered by tests.
+Solution: Add a few specific test cases.
+Files: src/mnv9execute.c, src/testdir/test_mnv9_func.mnv,
+ src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4405
+Problem: Compiler warning for unused variable without the +folding feature.
+ (Tony Mechelynck)
+Solution: Add #ifdef.
+Files: src/change.c
+
+Patch 8.2.4406
+Problem: Expand functions use confusing argument names.
+Solution: Rename "file" to "match". Refactor some completion code. Add a
+ few more tests. (Yegappan Lakshmanan, closes #9790)
+Files: src/cmdexpand.c, src/testdir/test_usercommands.mnv
+
+Patch 8.2.4407
+Problem: MNV9: some code not covered by tests.
+Solution: Add more tests. Avoid giving two errors. Remove dead code.
+Files: src/mnv9execute.c, src/testdir/test_mnv9_assign.mnv,
+ src/testdir/test_mnv9_cmd.mnv, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.4408
+Problem: MNV9: some code not covered by tests.
+Solution: Add a few more tests. Correct error message. Allow unlet on dict
+ with a number key.
+Files: src/mnv9execute.c, src/errors.h, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.4409
+Problem: MNV9: some code not covered by tests.
+Solution: Add a few more tests. Fix reported line number.
+Files: src/mnv9execute.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.4410
+Problem: MNV9: some code not covered by tests.
+Solution: Add a few more tests. Remove dead code.
+Files: src/mnv9execute.c, src/testdir/test_mnv9_assign.mnv,
+ src/testdir/test_mnv9_cmd.mnv, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.4411
+Problem: Bicep files are not recognized.
+Solution: Match *.bicep files. (Dundar Goc, closes #9791)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.4412
+Problem: Translation cleanup script does not remove empty lines at end.
+Solution: Remove empty lines at the end. (Ken Takata, closes #9794)
+Files: src/po/cleanup.mnv
+
+Patch 8.2.4413
+Problem: MNV9: Coverity warns for using NULL pointer.
+Solution: Give an internal error when funcref function can't be found.
+Files: src/mnv9execute.c
+
+Patch 8.2.4414
+Problem: Solidity files are not recognized.
+Solution: Add the *.sol pattern. (Dundar Goc, closes #9792)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.4415
+Problem: Function argument name conflicts with C++ keyword.
+Solution: Rename the argument.
+Files: src/usercmd.c, src/proto/usercmd.pro
+
+Patch 8.2.4416
+Problem: MNV9: using a script-local function requires using "s:" when
+ setting 'completefunc'.
+Solution: Do not require "s:" in MNV9 script. (closes #9796)
+Files: runtime/doc/options.txt, src/userfunc.c,
+ src/testdir/test_ins_complete.mnv
+
+Patch 8.2.4417 (after 8.2.4416)
+Problem: Using NULL pointer.
+Solution: Set offset after checking for NULL pointer.
+Files: src/userfunc.c
+
+Patch 8.2.4418
+Problem: Crash when using special multi-byte character.
+Solution: Don't use isalpha() for an arbitrary character.
+Files: src/charset.c, src/proto/charset.pro, src/filepath.c,
+ src/testdir/test_autochdir.mnv
+
+Patch 8.2.4419
+Problem: Illegal memory access when using exactly 20 highlights.
+Solution: Add one more item in the array. (Brandon Richardson,
+ closes #9800)
+Files: src/buffer.c, src/testdir/test_tabline.mnv
+
+Patch 8.2.4420
+Problem: Menu translations are inconsistent.
+Solution: Add a Makefile to convert between encodings. (Ada (Haowen) Yu,
+ closes #9801)
+Files: runtime/lang/Makefile, runtime/lang/menu_af_af.latin1.mnv,
+ runtime/lang/menu_ca_es.latin1.mnv,
+ runtime/lang/menu_chinese_gb.936.mnv,
+ runtime/lang/menu_chinese_taiwan.950.mnv,
+ runtime/lang/menu_cs_cz.iso_8859-2.mnv,
+ runtime/lang/menu_cs_cz.utf-8.mnv,
+ runtime/lang/menu_czech_czech_republic.1250.mnv,
+ runtime/lang/menu_czech_czech_republic.ascii.mnv,
+ runtime/lang/menu_da.utf-8.mnv,
+ runtime/lang/menu_de_de.latin1.mnv,
+ runtime/lang/menu_eo.utf-8.mnv,
+ runtime/lang/menu_es_es.latin1.mnv,
+ runtime/lang/menu_fi_fi.latin1.mnv,
+ runtime/lang/menu_fr_fr.latin1.mnv,
+ runtime/lang/menu_hu_hu.iso_8859-2.mnv,
+ runtime/lang/menu_hu_hu.utf-8.mnv,
+ runtime/lang/menu_is_is.latin1.mnv,
+ runtime/lang/menu_it_it.latin1.mnv,
+ runtime/lang/menu_ja_jp.euc-jp.mnv,
+ runtime/lang/menu_ja_jp.utf-8.mnv,
+ runtime/lang/menu_japanese_japan.932.mnv,
+ runtime/lang/menu_ko_kr.euckr.mnv,
+ runtime/lang/menu_ko_kr.utf-8.mnv,
+ runtime/lang/menu_nl_nl.latin1.mnv,
+ runtime/lang/menu_no_no.latin1.mnv,
+ runtime/lang/menu_pl_pl.iso_8859-2.mnv,
+ runtime/lang/menu_pl_pl.utf-8.mnv,
+ runtime/lang/menu_polish_poland.1250.mnv,
+ runtime/lang/menu_pt_br.mnv, runtime/lang/menu_pt_pt.mnv,
+ runtime/lang/menu_ru.utf-8.mnv,
+ runtime/lang/menu_ru_ru.koi8-r.mnv,
+ runtime/lang/menu_ru_ru.utf-8.mnv, runtime/lang/menu_ru_ru.mnv,
+ runtime/lang/menu_sk_sk.iso_8859-2.mnv,
+ runtime/lang/menu_sl_si.cp1250.mnv,
+ runtime/lang/menu_sl_si.latin2.mnv,
+ runtime/lang/menu_sl_si.utf-8.mnv,
+ runtime/lang/menu_slovak_slovak_republic.1250.mnv,
+ runtime/lang/menu_sr_rs.ascii.mnv,
+ runtime/lang/menu_sr_rs.iso_8859-2.mnv,
+ runtime/lang/menu_sr_rs.iso_8859-5.mnv,
+ runtime/lang/menu_sr_rs.utf-8.mnv,
+ runtime/lang/menu_sv_se.latin1.mnv,
+ runtime/lang/menu_tr_tr.cp1254.mnv,
+ runtime/lang/menu_tr_tr.iso_8859-9.mnv,
+ runtime/lang/menu_tr_tr.utf-8.mnv,
+ runtime/lang/menu_uk_ua.cp1251.mnv,
+ runtime/lang/menu_uk_ua.koi8-u.mnv,
+ runtime/lang/menu_uk_ua.utf-8.mnv, runtime/lang/menu_vi_vn.mnv,
+ runtime/lang/menu_zh_cn.utf-8.mnv,
+ runtime/lang/menu_zh_tw.utf-8.mnv
+
+Patch 8.2.4421
+Problem: Some installed files and directories have wrong permissions.
+Solution: Adjust the Makefile and shell to set permissions. (closes #9793)
+Files: src/Makefile, src/installman.sh
+
+Patch 8.2.4422
+Problem: Autochdir test fails on MS-Windows.
+Solution: Expect another error on MS-Windows.
+Files: src/testdir/test_autochdir.mnv
+
+Patch 8.2.4423
+Problem: "make nvcmdidxs" fails.
+Solution: Use "-S" instead of "-u" to source the script.
+Files: src/Makefile
+
+Patch 8.2.4424
+Problem: ".gts" and ".gjs" files are not recognized.
+Solution: Recognize Glimmer flavored typescript and javascript.
+ (closes #9799)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.4425
+Problem: map() function does not check function arguments at compile time.
+Solution: Give an error if the arguments of a map() function are wrong.
+Files: src/evalfunc.c, src/testdir/test_mnv9_builtin.mnv,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.4426
+Problem: map() function on string and blob does not check argument types at
+ compile time.
+Solution: Check string and blob argument types. Support "0z1234->func()".
+Files: src/mnv9compile.c, src/evalfunc.c, src/ex_docmd.c,
+ src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.4427
+Problem: getchar() may return modifiers if no character is available.
+Solution: Do not process modifiers when there is no character. (closes #9806)
+Files: src/getchar.c, src/testdir/test_functions.mnv
+
+Patch 8.2.4428
+Problem: Crash when switching tabpage while in the cmdline window.
+Solution: Disallow switching tabpage when in the cmdline window.
+Files: src/window.c, src/proto/window.pro, src/evalvars.c,
+ src/evalvars.c, src/usercmd.c
+
+Patch 8.2.4429
+Problem: Using script-local function from the wrong script when using a
+ partial. (Yegappan Lakshmanan)
+Solution: Include the script ID in the partial name.
+Files: src/userfunc.c, src/proto/userfunc.pro, src/evalfunc.c,
+ src/mnv9type.c, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4430
+Problem: GTK: crash when using 'guiligatures' and reading from stdin.
+Solution: Make a copy of the message. (Amon Sha, closes #9719, closes #9814)
+Files: src/fileio.c
+
+Patch 8.2.4431
+Problem: Unnecessary condition when assigning to a variable.
+Solution: Remove the condition.
+Files: src/evalvars.c
+
+Patch 8.2.4432 (after 8.2.4428)
+Problem: Cannot use settabvar() while the cmdline window is open.
+Solution: Only give an error when actually switching tabpage.
+ (closes #9813)
+Files: src/window.c
+
+Patch 8.2.4433
+Problem: CI: cannot see interface versions for MS-Windows.
+Solution: List the interface versions. (Ken Takata, closes #9811)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.4434
+Problem: Duplicate check for cmdline window.
+Solution: Remove the second check. (Sean Dewar, closes #9816)
+Files: src/window.c
+
+Patch 8.2.4435
+Problem: Dead code in checking map() arguments. (Dominique Pellé)
+Solution: Remove the first return statement. (closes #9815)
+Files: src/evalfunc.c
+
+Patch 8.2.4436
+Problem: Crash with weird 'vartabstop' value.
+Solution: Check for running into the end of the line.
+Files: src/indent.c, src/testdir/test_vartabs.mnv
+
+Patch 8.2.4437
+Problem: Vartabs test fails on MS-Windows.
+Solution: Use iso8859-1 'encoding'. (Ken Takata, closes #9818)
+Files: src/testdir/test_vartabs.mnv
+
+Patch 8.2.4438
+Problem: Crash on exit when using cmdline window.
+Solution: Reset "cmdwin_type" before exiting. (closes #9817)
+Files: src/ui.c, src/testdir/test_exit.mnv
+
+Patch 8.2.4439
+Problem: Accepting "iso8859" 'encoding' as "iso-8859-".
+Solution: use "iso8859" as "iso-8859-1".
+Files: src/mbyte.c, src/testdir/test_options.mnv
+
+Patch 8.2.4440
+Problem: Crash with specific regexp pattern and string.
+Solution: Stop at the start of the string.
+Files: src/regexp_bt.c, src/testdir/test_regexp_utf8.mnv
+
+Patch 8.2.4441
+Problem: MNV9: function argument of filter() not checked like map().
+Solution: Also check the function argument of filter().
+Files: src/evalfunc.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.4442 (after 8.2.4438)
+Problem: Test for error reading input fails on MS-Windows.
+Solution: Don't run the test on MS-Windows.
+Files: src/testdir/test_exit.mnv
+
+Patch 8.2.4443 (after 8.2.4440)
+Problem: Regexp pattern test fails on Mac.
+Solution: Do not use a swapfile for the buffer.
+Files: src/testdir/test_regexp_utf8.mnv
+
+Patch 8.2.4444
+Problem: Beep caused by test. ASAN reports leaks.
+Solution: Do not put a NL at the end of the script. Make the text work on
+ MS-Windows. Do not run the test with ASAN.
+Files: src/testdir/test_exit.mnv
+
+Patch 8.2.4445
+Problem: Exit test fails on MS-Windows anyway.
+Solution: Skip the test on MS-Windows.
+Files: src/testdir/test_exit.mnv
+
+Patch 8.2.4446
+Problem: MNV9: cannot refer to a global function like a local one.
+Solution: When g:name is not a variable but a function, use a function
+ reference. (closes #9826)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.4447
+Problem: MNV9: can still use s:var in a compiled function.
+Solution: Disallow using s:var for MNV9 script. (closes #9824)
+Files: runtime/doc/mnv9.txt, src/mnv9expr.c, src/mnv9compile.c,
+ src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.4448 (after 8.2.4447)
+Problem: Filetype detection is failing.
+Solution: Do not use "s:" where it is no longer allowed.
+Files: runtime/autoload/dist/ft.mnv,
+
+Patch 8.2.4449
+Problem: mnv9: function argument of sort() not checked at compile time.
+Solution: Add a compile time check.
+Files: src/evalfunc.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.4450 (after 8.2.4449)
+Problem: List sort test fails.
+Solution: Pass a valid "how" argument.
+Files: src/testdir/test_listdict.mnv
+
+Patch 8.2.4451 (after 8.2.4450)
+Problem: sort() fails when ignoring case.
+Solution: Accept a number one argument in sort().
+Files: src/evalfunc.c, src/testdir/test_listdict.mnv
+
+Patch 8.2.4452
+Problem: Test for what 8.2.4436 fixes does not check for regression.
+Solution: Set several options. (Ken Takata, closes #9830)
+Files: src/testdir/test_vartabs.mnv
+
+Patch 8.2.4453
+Problem: :helpgrep may free an option that was not allocated. (Yegappan
+ Lakshmanan)
+Solution: Check if the value was allocated.
+Files: src/option.c, src/proto/option.pro, src/quickfix.c,
+ src/testdir/test_quickfix.mnv
+
+Patch 8.2.4454
+Problem: Resetting cmdwin_type only for one situation.
+Solution: Reset cmdwin_type before closing windows. (closes #9822)
+Files: src/ui.c, src/window.c, src/testdir/test_exit.mnv
+
+Patch 8.2.4455
+Problem: Accepting one and zero for the second sort() argument is strange.
+Solution: Disallow using one and zero in MNV9 script.
+Files: runtime/doc/builtin.txt, src/evalfunc.c, src/list.c,
+ src/testdir/test_listdict.mnv
+
+Patch 8.2.4456
+Problem: Terminal test may fail on some machines.
+Solution: Increase wait time. (Zdenek Dohnal, closes #9834)
+Files: src/testdir/test_terminal.mnv
+
+Patch 8.2.4457
+Problem: The GPM library can only be linked statically.
+Solution: Make it possible to load the GPM library dynamically. (Damien)
+Files: runtime/doc/various.txt, src/config.h.in, src/configure.ac,
+ src/Makefile, src/evalfunc.c, src/feature.h, src/os_unix.c,
+ src/proto/os_unix.pro, src/version.c
+
+Patch 8.2.4458
+Problem: MNV9: compiling filter() call fails with funcref that has unknown
+ arguments.
+Solution: Do not check the arguments if they are unknown at compile time.
+ (closes #9835)
+Files: src/evalfunc.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.4459
+Problem: MNV9: compiling sort() call fails with a funcref that has unknown
+ arguments.
+Solution: Do not check the arguments if they are unknown at compile time.
+ (closes #9835)
+Files: src/evalfunc.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.4460
+Problem: MNV9: wrong error for defining dict function.
+Solution: Explicitly check for trying to define a dict function.
+ (closes #9827)
+Files: src/errors.h, src/userfunc.c, src/mnv9compile.c,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.4461
+Problem: MS-Windows: garbage characters on stdout with MNVDLL.
+Solution: Don't call gui_focus_change() when about to quit. (Ken Takata,
+ closes #9840)
+Files: src/gui_w32.c
+
+Patch 8.2.4462
+Problem: Not enough testing for quickfix code.
+Solution: Add more tests. Fix uncovered problem. (Yegappan Lakshmanan,
+ closes #9839)
+Files: src/quickfix.c, src/window.c, src/testdir/test_makeencoding.mnv,
+ src/testdir/test_quickfix.mnv
+
+Patch 8.2.4463
+Problem: Completion only uses strict matching.
+Solution: Add the "fuzzy" item for 'wildoptions'. (Yegappan Lakshmanan,
+ closes #9803)
+Files: runtime/doc/options.txt, src/buffer.c, src/cmdexpand.c,
+ src/option.c, src/option.h, src/optionstr.c,
+ src/proto/cmdexpand.pro, src/proto/option.pro,
+ src/proto/search.pro, src/search.c, src/structs.h,
+ src/testdir/gen_opt_test.mnv, src/testdir/test_cmdline.mnv
+
+Patch 8.2.4464
+Problem: Dtrace files are recognized as filetype D.
+Solution: Add a pattern for Dtrace files. (Teubel György, closes #9841)
+ Add some more testing.
+Files: runtime/autoload/dist/ft.mnv, runtime/filetype.mnv,
+ src/testdir/test_filetype.mnv
+
+Patch 8.2.4465
+Problem: Fuzzy completion does not order matches properly.
+Solution: Do not use regular expression match. (Yegappan Lakshmanan,
+ closes #9843)
+Files: src/cmdexpand.c, src/search.c, src/testdir/test_cmdline.mnv
+
+Patch 8.2.4466
+Problem: MS-Windows: illegal memory access in installer when using
+ "create-directories" as the final argument.
+Solution: Check the argument count. (Cam Sinclair, closes #9844)
+Files: src/dosinst.c
+
+Patch 8.2.4467
+Problem: Running filetype test leaves file behind.
+Solution: Delete the file.
+Files: src/testdir/test_filetype.mnv
+
+Patch 8.2.4468
+Problem: Coverity warns for uninitialized struct member.
+Solution: Set color.index to zero.
+Files: src/terminal.c
+
+Patch 8.2.4469
+Problem: Coverity warns for uninitialized variable.
+Solution: Set the value to zero.
+Files: src/ex_getln.c
+
+Patch 8.2.4470
+Problem: Coverity warns for uninitialized variable.
+Solution: Set can_spell to zero.
+Files: src/drawline.c
+
+Patch 8.2.4471
+Problem: Coverity warns for uninitialized variable.
+Solution: Set flags to zero.
+Files: src/mnv9cmds.c
+
+Patch 8.2.4472
+Problem: Coverity warns for use of a freed function name.
+Solution: Only check an autoload name when is prefixed.
+Files: src/userfunc.c
+
+Patch 8.2.4473
+Problem: Coverity warns for not checking return value of ftell().
+Solution: Bail out if ftell() returns a negative value.
+Files: src/spellfile.c
+
+Patch 8.2.4474
+Problem: Memory allocation failures not tested in quickfix code.
+Solution: Add alloc IDs and tests. (Yegappan Lakshmanan, closes #9848)
+Files: src/alloc.h, src/quickfix.c, src/mnv.h,
+ src/testdir/test_quickfix.mnv
+
+Patch 8.2.4475
+Problem: Fuzzy cmdline completion does not work for lower case.
+Solution: Also use fuzzy completion for lower case input. (Yegappan
+ Lakshmanan, closes #9849)
+Files: src/cmdexpand.c, src/testdir/test_cmdline.mnv
+
+Patch 8.2.4476
+Problem: Operator name spelled wrong.
+Solution: Change trinary to ternary. (Goc Dundar, closes #9850)
+Files: src/testdir/test_expr.mnv, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnvscript.mnv
+
+Patch 8.2.4477
+Problem: Crash when using fuzzy completion.
+Solution: Temporary fix: put back regexp. (closes #9851)
+Files: src/cmdexpand.c
+
+Patch 8.2.4478
+Problem: Crash when using fuzzy completion.
+Solution: Temporary fix: put back regexp. (closes #9852, closes #9851)
+Files: src/cmdexpand.c, src/testdir/test_cmdline.mnv
+
+Patch 8.2.4479
+Problem: No fuzzy completion for maps and abbreviations.
+Solution: Fuzzy complete maps and abbreviations. (Yegappan Lakshmanan,
+ closes #9856)
+Files: src/cmdexpand.c, src/map.c, src/proto/map.pro, src/search.c,
+ src/testdir/test_cmdline.mnv
+
+Patch 8.2.4480
+Problem: Suspending with CTRL-Z does not work on Android.
+Solution: Do not handle SIGTSTP. (closes #9854)
+Files: src/os_unix.c
+
+Patch 8.2.4481
+Problem: Cmdline popup menu not removed when 'lazyredraw' is set.
+Solution: Temporarily reset 'lazyredraw' when removing the popup menu.
+ (closes #9857)
+Files: src/cmdexpand.c, src/testdir/test_cmdline.mnv,
+ src/testdir/dumps/Test_wildmenu_pum_41.dump
+
+Patch 8.2.4482
+Problem: No fuzzy cmdline completion for user defined completion.
+Solution: Add fuzzy completion for user defined completion. (Yegappan
+ Lakshmanan, closes #9858)
+Files: src/cmdexpand.c, src/testdir/test_cmdline.mnv
+
+Patch 8.2.4483
+Problem: Command completion makes two rounds to collect matches.
+Solution: Use a growarray to collect matches. (Yegappan Lakshmanan,
+ closes #9860)
+Files: src/buffer.c, src/cmdexpand.c, src/map.c,
+ src/testdir/test_cmdline.mnv
+
+Patch 8.2.4484
+Problem: MNV9: some error messages are not tested.
+Solution: Add a few more test cases. Delete dead code.
+Files: src/mnv9execute.c, src/testdir/test_mnv9_assign.mnv,
+ src/testdir/test_mnv9_expr.mnv, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.4485
+Problem: Compiler warning for uninitialized variable.
+Solution: Initialize the variable. (John Marriott)
+Files: src/cmdexpand.c
+
+Patch 8.2.4486
+Problem: MS-Windows GUI: slow scrolling with maximized window.
+Solution: Use a better way to check the window is on screen. (Ken Takata,
+ closes #9865)
+Files: src/gui_w32.c
+
+Patch 8.2.4487
+Problem: MNV9: cannot compare with v:null.
+Solution: Allow comparing anything with v:null. (closes #9866)
+Files: src/mnv9instr.c, src/typval.c, src/proto/typval.pro,
+ src/mnv9.h, src/mnv9execute.c, src/evalvars.c,
+ src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.4488 (after 8.2.4487)
+Problem: Build error with +eval but without +channel or +job.
+Solution: Add #ifdef. (John Marriott)
+Files: src/typval.c
+
+Patch 8.2.4489 (after 8.2.4487)
+Problem: Failing test for comparing v:null with number.
+Solution: Allow comparing v:null with number in legacy script.
+ (Ken Takata, closes #9873) Also do this for float.
+Files: src/typval.c, src/testdir/test_mnvscript.mnv
+
+Patch 8.2.4490
+Problem: Terminal focus reporting only works for xterm-like terminals.
+ (Jonathan Rascher)
+Solution: Remove the "focus_mode" flag. (closes #9859)
+Files: src/term.c
+
+Patch 8.2.4491
+Problem: MS-Windows makefile dependencies are outdated.
+Solution: Update dependencies. (Ken Takata, closes #9876)
+Files: src/Make_cyg_ming.mak, src/Make_mvc.mak
+
+Patch 8.2.4492
+Problem: No error if an option is given an invalid value with
+ ":let &opt = val".
+Solution: Give the error. (closes #9864)
+Files: src/evalvars.c, src/testdir/test_options.mnv
+
+Patch 8.2.4493 (after 8.2.4492)
+Problem: Options test fails in the GUI.
+Solution: Do not save and restore 'term'.
+Files: src/testdir/gen_opt_test.mnv
+
+Patch 8.2.4494
+Problem: The find_tags() function is much too long.
+Solution: Refactor the function. (Yegappan Lakshmanan, closes #9869)
+Files: src/quickfix.c, src/tag.c, src/testdir/test_tagjump.mnv
+
+Patch 8.2.4495
+Problem: Help test fails in 24 line terminal.
+Solution: Use up to 23 lines for text.
+Files: src/testdir/test_help.mnv
+
+Patch 8.2.4496 (after 8.2.4494)
+Problem: Coverity gives warnings after tags code refactoring.
+Solution: Avoid the warnings. (Yegappan Lakshmanan, closes #9882)
+Files: src/tag.c
+
+Patch 8.2.4497
+Problem: Wrong color for half of wide character next to pum scrollbar.
+Solution: Redraw the screen cell with the right color. (closes #9874)
+Files: src/screen.c, src/testdir/test_ins_complete.mnv,
+ src/testdir/dumps/Test_scrollbar_on_wide_char.dump
+
+Patch 8.2.4498
+Problem: Using <Plug> with "noremap" does not work.
+Solution: Always remap <Plug>. (closes #9879, closes #9789)
+Files: runtime/doc/map.txt, src/getchar.c, src/testdir/test_mapping.mnv
+
+Patch 8.2.4499
+Problem: MNV9: at the script level declarations leak from try block to
+ catch and finally block.
+Solution: End the block and start a new one. (closes #9883)
+Files: src/ex_eval.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.4500
+Problem: MNV9: can declare a global variable on the command line.
+Solution: Disallow declaring a variable on the command line. (closes #9881)
+Files: src/errors.h, src/evalvars.c, src/testdir/test_mnv9_assign.mnv,
+ src/testdir/test_mnv9_script.mnv,
+ src/testdir/dumps/Test_mnv9_reject_declaration.dump
+
+Patch 8.2.4501
+Problem: With 'showbreak' set and after the end of the line the cursor
+ may be displayed in the wrong position.
+Solution: Do not apply 'showbreak' after the end of the line. (closes #9884)
+Files: src/charset.c, src/testdir/test_breakindent.mnv,
+ src/testdir/dumps/Test_cursor_position_with_showbreak.dump
+
+Patch 8.2.4502
+Problem: In the GUI a modifier is not recognized for the key typed after
+ CTRL-X, which may result in a mapping to be used. (Daniel
+ Steinberg)
+Solution: Recognize a modifier starting with CSI. (closes #9889)
+Files: src/getchar.c, src/testdir/test_ins_complete.mnv
+
+Patch 8.2.4503
+Problem: MNV9: there is no point in supporting :Print and :mode.
+Solution: Do not recognize :Print and :mode as commands. (closes #9870)
+Files: src/ex_docmd.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.4504
+Problem: When there is a partially matching map and modifyOtherKeys is
+ active a full map may not work.
+Solution: Only simplify modifiers when there is no matching mapping.
+ (closes #8792)
+Files: src/getchar.c, src/testdir/test_termcodes.mnv
+
+Patch 8.2.4505
+Problem: MNV9: outdated "autocmd nested" still works.
+Solution: Do not accept the :autocmd argument "nested" without "++" in MNV9
+ script.
+Files: src/autocmd.c, src/errors.h, src/testdir/test_autocmd.mnv
+
+Patch 8.2.4506
+Problem: "pattern not found" for :global is not an error message.
+Solution: In MNV9 script make this an actual error, so that try/catch can be
+ used as expected.
+Files: src/ex_cmds.c, src/errors.h, src/testdir/test_global.mnv
+
+Patch 8.2.4507 (after 8.2.4506)
+Problem: Test fails because of new error message.
+Solution: Avoid the test fails.
+Files: src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.4508
+Problem: MNV9: cannot assign to a global variable on the command line.
+Solution: Allow using :mnv9cmd for assignment on the command line.
+Files: src/evalvars.c, src/testdir/test_mnv9_script.mnv,
+ src/testdir/dumps/Test_mnv9_reject_declaration.dump,
+ src/testdir/dumps/Test_mnv9_reject_declaration_1.dump,
+ src/testdir/dumps/Test_mnv9_reject_declaration_2.dump
+
+Patch 8.2.4509
+Problem: MNV9: can declare a variable with ":va".
+Solution: Disallow using ":va", require using ":var".
+Files: src/evalvars.c, src/errors.h, src/mnv9compile.c,
+ src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.4510
+Problem: MNV9: shortening commands leads to confusing script.
+Solution: In MNV9 script require at least ":cont" for ":continue", "const"
+ instead of "cons", "break" instead of "brea", "catch" instead of
+ "cat", "else" instead of "el" "elseif" instead of "elsei" "endfor"
+ instead of "endfo" "endif" instead of "en" "endtry" instead of
+ "endt", "finally" instead of "fina", "throw" instead of "th",
+ "while" instead of "wh".
+Files: src/ex_cmds.h, src/ex_docmd.c, src/errors.h, src/evalvars.c,
+ src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.4511
+Problem: Filetype test fails.
+Solution: Change "endw" to "endwhile".
+Files: runtime/autoload/dist/ft.mnv
+
+Patch 8.2.4512
+Problem: The find_tags_in_file() function is much too long.
+Solution: Refactor into multiple smaller functions. (Yegappan Lakshmanan,
+ closes #9892)
+Files: Filelist, src/Makefile, src/quickfix.c, src/tag.c,
+ src/testdir/test83-tags2, src/testdir/test83-tags3,
+ src/testdir/test_tagjump.mnv
+
+Patch 8.2.4513
+Problem: Window-local directory is not applied if 'acd' fails.
+Solution: Don't call do_autochdir(). (closes #9891)
+Files: src/window.c, src/testdir/test_autochdir.mnv
+
+Patch 8.2.4514
+Problem: MNV9: some flow commands can be shortened.
+Solution: Also require using the full name for ":return", ":enddef",
+ ":continue", ":export" and ":import".
+Files: src/ex_cmds.h, src/ex_docmd.c, src/errors.h, src/userfunc.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.4515
+Problem: Old substitute syntax is still supported.
+Solution: Disallow using backslash after ":s" in MNV9 script.
+Files: src/ex_cmds.c, src/errors.h, src/testdir/test_substitute.mnv
+
+Patch 8.2.4516 (after 8.2.4515)
+Problem: Build failure without the +eval feature.
+Solution: Move error message outside of #ifdef.
+Files: src/errors.h
+
+Patch 8.2.4517
+Problem: MS-Windows: cannot specify location of sodium library.
+Solution: Allow for using a path for SODIUM. (Ken Takata, closes #9896)
+Files: src/Make_cyg_ming.mak
+
+Patch 8.2.4518
+Problem: The binary tag search feature is always enabled.
+Solution: Remove the #ifdefs. Add a few more tests. (Yegappan Lakshmanan,
+ closes #9893)
+Files: src/evalfunc.c, src/feature.h, src/tag.c, src/version.c,
+ src/testdir/test_tagjump.mnv, src/testdir/test_taglist.mnv
+
+Patch 8.2.4519
+Problem: MNV9: Can still use ":fini" and ":finis" for ":finish".
+Solution: Require using ":finish".
+Files: src/ex_cmds.h, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.4520
+Problem: Using wrong highlight for cursor line number.
+Solution: Take filler lines into account when using CursorLineNr.
+ (closes #9897)
+Files: src/drawline.c, src/testdir/test_diffmode.mnv,
+ src/testdir/dumps/Test_diff_with_cursorline_number_01.dump,
+ src/testdir/dumps/Test_diff_with_cursorline_number_02.dump
+
+Patch 8.2.4521 (after 8.2.4520)
+Problem: Build failure without the +diff feature. (John Marriott)
+Solution: Define filler+lines if not declaring it.
+Files: src/drawline.c
+
+Patch 8.2.4522 (after 8.2.4492)
+Problem: GUI test fails with Motif. (Dominique Pellé)
+Solution: Remove using an invalid value for 'guifontset'.
+Files: src/testdir/test_gui.mnv
+
+Patch 8.2.4523
+Problem: When gmnv is started maximized the 'window' option isn't set
+ properly. (Christian J. Robinson)
+Solution: Check if 'windows' was already set or not. (Ken Takata,
+ closes #9904)
+Files: src/term.c
+
+Patch 8.2.4524
+Problem: MS-Windows: cannot build with some sodium libraries.
+Solution: Make the DLL name configurable. Add build instructions.
+ (Ken Takata, closes #9905)
+Files: src/INSTALLpc.txt, src/Make_cyg_ming.mak, src/Make_mvc.mak,
+ src/crypt.c
+
+Patch 8.2.4525
+Problem: Some GUI tests don't work on Athena.
+Solution: Skip tests that won't work. (Yegappan Lakshmanan, closes #9902)
+Files: src/testdir/test_gui.mnv
+
+Patch 8.2.4526
+Problem: MNV9: cannot set variables to a null value.
+Solution: Add null_list, null_job, etc.
+Files: runtime/doc/mnv9.txt, src/eval.c, src/proto/eval.pro,
+ src/mnv9expr.c, src/mnv9script.c, src/mnv9instr.c,
+ src/mnv9compile.c, src/mnv9execute.c, src/mnv9.h, src/mnv9type.c,
+ src/evalvars.c, src/testdir/test_mnv9_assign.mnv,
+ src/testdir/test_mnv9_disassemble.mnv,
+ src/testdir/test_mnv9_func.mnv, src/testdir/test_expr.mnv
+
+Patch 8.2.4527
+Problem: The Athena GUI is old and does not work well.
+Solution: Remove the Athena GUI from configure to find out who still wants
+ support for this GUI.
+Files: src/configure.ac, src/auto/configure, src/Makefile
+
+Patch 8.2.4528
+Problem: Crash when using null_function for a partial.
+Solution: Don't call fname_trans_sid() with NULL. (closes #9908)
+Files: src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.4529
+Problem: MNV9: comparing partial with function fails.
+Solution: Support this comparison. Avoid a crash. (closes #9909)
+ Add more test cases.
+Files: src/mnv9instr.c, src/userfunc.c, src/mnv9type.c,
+ src/testdir/test_mnv9_builtin.mnv, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_func.mnv, src/testdir/test_mnvscript.mnv
+
+Patch 8.2.4530
+Problem: Making comparison with null work changes legacy behavior.
+Solution: Only use the better comparison in MNV9 script. (closes #9910)
+Files: src/typval.c, src/testdir/test_expr.mnv
+
+Patch 8.2.4531
+Problem: LGTM warnings for condition always true and buffer size too small.
+Solution: Remove the useless condition. Make the buffer larger. (Goc
+ Dundar, closes #9914)
+Files: src/charset.c, src/term.c
+
+Patch 8.2.4532
+Problem: Suspending with CTRL-Z does not work on OpenBSD.
+Solution: Adjust #ifdef for SIGTSTP. (Stuart Henderson, closes #9912)
+Files: src/os_unix.c
+
+Patch 8.2.4533
+Problem: MNV9: no test that after assigning null the type is still checked.
+Solution: Add a test.
+Files: src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.4534
+Problem: MNV9: "is" operator with empty string and null returns true.
+Solution: Consider empty string and null to be different for "is".
+Files: src/typval.c, src/mnv9execute.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.4535
+Problem: Filename modifier ":8" removes the filename.
+Solution: Use strncpy() instead of mnv_strncpy(). (Christian Brabandt,
+ closes #9918, closes #8600)
+Files: src/filepath.c, src/testdir/test_shortpathname.mnv
+
+Patch 8.2.4536 (after 8.2.4534)
+Problem: Debugger test fails when breaking on expression.
+Solution: Compare strings with "==" instead of "is".
+Files: src/debugger.c
+
+Patch 8.2.4537
+Problem: Output from linter and language server shows up in git.
+Solution: Add patterns to .gitignore. (Goc Dundar, closes #9925)
+Files: .gitignore
+
+Patch 8.2.4538
+Problem: The find_tags_in_file() function is too long.
+Solution: Refactor into smaller functions. (Yegappan Lakshmanan,
+ closes #9920)
+Files: src/tag.c, src/testdir/test_tagjump.mnv
+
+Patch 8.2.4539
+Problem: When comparing special v:none and v:null are handled the same when
+ compiling.
+Solution: Pass more information so that v:none can be handled differently at
+ compile time. (issue #9923)
+Files: src/mnv9instr.c, src/mnv9compile.c, src/globals.h,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.4540
+Problem: Line number for error is off by one.
+Solution: Remember the line number of the comparison. (closes #9923)
+Files: src/eval.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.4541
+Problem: Crash in debugger when a variable is not available in the current
+ block.
+Solution: Check for a NULL name. (closes #9926)
+Files: src/mnv9execute.c, src/testdir/test_debugger.mnv
+
+Patch 8.2.4542
+Problem: MNV9: "break" inside try/catch not handled correctly.
+Solution: First jump to :endtry. (closes #9927)
+Files: src/mnv9cmds.c, src/mnv9.h, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.4543
+Problem: Coverity warning for refactored tag search code.
+Solution: Avoid the warnings. Update comments. Add one more test case.
+ (Yegappan Lakshmanan, closes #9928)
+Files: src/tag.c, src/testdir/test_tagjump.mnv
+
+Patch 8.2.4544
+Problem: Coverity warnings for not using returned value.
+Solution: Assign to mnv_ignored.
+Files: src/tag.c
+
+Patch 8.2.4545
+Problem: MS-Windows: the installed icon is low resolution.
+Solution: Use a better icon. Install mnv.ico. (Christian Brabandt,
+ closes #9931, closes #9930)
+Files: Filelist, nsis/gmnv.nsi, src/mnv.ico, runtime/bitmaps/mnv.ico
+
+Patch 8.2.4546
+Problem: Duplicate #undef.
+Solution: Remove one #undef. (closes #9932)
+Files: src/regexp_nfa.c
+
+Patch 8.2.4547
+Problem: The neXTaw GUI is old and does not work well.
+Solution: Remove the neXTaw GUI from configure to find out who still wants
+ support for this GUI.
+Files: src/configure.ac, src/auto/configure, src/Makefile
+
+Patch 8.2.4548
+Problem: Script-local function is deleted when used in a funcref.
+Solution: Do not consider a function starting with "<SNR>" reference
+ counted. (closes #9916, closes #9820)
+Files: src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.4549
+Problem: Cannot build with Motif and editres. (Tony Mechelynck)
+Solution: Fix configure mistake.
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.4550
+Problem: Motif: cannot set the color of the scrollbar thumb.
+Solution: Remove #ifdef.
+Files: src/gui_motif.c
+
+Patch 8.2.4551
+Problem: When mapping <Esc> terminal codes are not recognized.
+Solution: Specifically recognize a mapping with just <Esc> and check for
+ terminal codes even though there is no partial mapping.
+ (closes #9903)
+Files: src/getchar.c, src/testdir/test_termcodes.mnv
+
+Patch 8.2.4552
+Problem: In a :def function "put = expr" does not work.
+Solution: Skip over white space. (closes #9936)
+Files: src/mnv9cmds.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.4553
+Problem: Linear tag search is a bit slow.
+Solution: Remove a mnv_ftell() call. (Yegappan Lakshmanan, closes #9937)
+Files: src/tag.c, src/testdir/test_taglist.mnv
+
+Patch 8.2.4554
+Problem: MNV9: using null values not sufficiently tested.
+Solution: Add more tests. Fix uncovered problem.
+Files: src/mnv9type.c, src/testdir/test_mnv9_assign.mnv,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.4555
+Problem: getmousepos() returns the wrong column. (Ernie Rael)
+Solution: Limit to the text size, not the number of bytes.
+Files: src/mouse.c, src/testdir/test_functions.mnv
+
+Patch 8.2.4556
+Problem: Test fails without the +job or +channel feature. (Dominique Pellé)
+Solution: Adjust #ifdefs. Pass on skip flag. (closes #9942)
+Files: src/eval.c, src/mnv9compile.c
+
+Patch 8.2.4557
+Problem: Confusing comment about 'cursorlineopt'.
+Solution: Adjust comment. (closes #9939) Add parenthesis around logical
+ OR.
+Files: src/drawline.c
+
+Patch 8.2.4558
+Problem: Motif: using default colors does not work as expected.
+Solution: Do not try to store the default colors, use the resources.
+ (closes #9933)
+Files: src/gui_motif.c, src/gui.h
+
+Patch 8.2.4559 (after 8.24555)
+Problem: getmousepos() returns the screen column. (Ernie Rael)
+Solution: Return the text column, as documented.
+Files: src/mouse.c, src/testdir/test_functions.mnv
+
+Patch 8.2.4560
+Problem: Suspending with CTRL-Z does not work on DragonFlyBSD.
+Solution: Adjust #ifdef. (Ozaki Kiichi, closes #9943)
+Files: src/os_unix.c
+
+Patch 8.2.4561
+Problem: Build failure with some combination of features. (John Marriott)
+Solution: Adjust #ifdef.
+Files: src/mouse.c
+
+Patch 8.2.4562
+Problem: Linear tag search is not optimal.
+Solution: Improve linear tag search performance. (Yegappan Lakshmanan,
+ closes #9944)
+Files: src/tag.c
+
+Patch 8.2.4563
+Problem: "z=" in Visual mode may go beyond the end of the line.
+Solution: Adjust "badlen".
+Files: src/spellsuggest.c, src/testdir/test_spell.mnv
+
+Patch 8.2.4564
+Problem: Running test leaves file behind. (Dominique Pellé)
+Solution: Run the profiling in a separate MNV instance. (closes #9952)
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.4565
+Problem: No command line completion for :breakadd and :breakdel.
+Solution: Add completion for :breakadd and :breakdel. (Yegappan Lakshmanan,
+ closes #9950)
+Files: runtime/doc/builtin.txt, src/cmdexpand.c, src/spellsuggest.c,
+ src/usercmd.c, src/mnv.h, src/testdir/test_cmdline.mnv,
+ src/testdir/test_writefile.mnv
+
+Patch 8.2.4566
+Problem: Check for existing buffer in session file does not work for files
+ in the home directory.
+Solution: Use fnamemodify(). (James Cherti, closes #9945) Add a test.
+Files: src/session.c, src/testdir/test_mksession.mnv
+
+Patch 8.2.4567
+Problem: Bracketed paste doesn't work well in Visual linewise mode.
+Solution: Handle linewise Visual mode differently. (closes #9947)
+Files: src/normal.c, src/testdir/test_paste.mnv
+
+Patch 8.2.4568
+Problem: getmousepos() does not compute the column below the last line.
+Solution: Also compute the column when the mouse is below the last line.
+ (Sean Dewar, closes #9946)
+Files: src/mouse.c, src/testdir/test_functions.mnv
+
+Patch 8.2.4569
+Problem: Coverity warning for not using a return value.
+Solution: Add "(void)".
+Files: src/popupwin.c
+
+Patch 8.2.4570
+Problem: No command line completion for :profile and :profdel.
+Solution: Implement completion. (Yegappan Lakshmanan, closes #9955)
+Files: src/cmdexpand.c, src/profiler.c, src/testdir/test_cmdline.mnv,
+ src/testdir/test_profile.mnv
+
+Patch 8.2.4571
+Problem: Not all gdb files are recognized.
+Solution: Add a few more patterns for gdb. (Jade Lovelace, closes #9956)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.4572
+Problem: MNV9: return type "any" is sometimes changed to first returned
+ type. (Virginia Senioria)
+Solution: Do not change the return type if declared as "any". (closes #9949)
+Files: src/mnv9cmds.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.4573
+Problem: A nested function (closure) is compiled for debugging without
+ context.
+Solution: Check if a nested function is marked for debugging before
+ compiling it. Give an error when trying to compile a closure
+ without its context. (closes #9951)
+Files: src/mnv9compile.c, src/mnv9execute.c, src/proto/mnv9execute.pro,
+ src/mnv9expr.c, src/errors.h
+
+Patch 8.2.4574
+Problem: MNV9: test for profiling fails.
+Solution: Mark function for profiling earlier to avoid E1271.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.4575
+Problem: MNV9: test for profiling still fails.
+Solution: Update flags for profiling and breakpoints when obtaining the
+ compile type. Do not set the FC_CLOSURE flag for a toplevel
+ function.
+Files: src/mnv.h, src/mnv9compile.c, src/proto/mnv9compile.pro,
+ src/eval.c, src/mnv9execute.c, src/mnv9expr.c, src/mnv9instr.c,
+ src/mnv9.h
+
+Patch 8.2.4576
+Problem: MNV9: error for comparing with null can be annoying.
+Solution: Allow comparing anything with null. (closes #9948)
+Files: src/mnv9instr.c, src/typval.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.4577
+Problem: Message test is flaky. (Elimar Riesebieter)
+Solution: Trigger the autocommand event only after startup is finished.
+Files: src/testdir/test_messages.mnv
+
+Patch 8.2.4578
+Problem: No warning when an autoload script for completion function has an
+ error.
+Solution: Do not ignore errors when a function name is given with a dot or
+ '#' character. (closes #9958)
+Files: src/eval.c, src/testdir/test_cmdline.mnv
+
+Patch 8.2.4579
+Problem: Cannot use page-up and page-down in the command line completion
+ popup menu.
+Solution: Check for to page-up and page-down keys. (Yegappan Lakshmanan,
+ closes #9960)
+Files: src/cmdexpand.c, src/ex_getln.c, src/spellsuggest.c, src/mnv.h,
+ src/testdir/test_cmdline.mnv,
+ src/testdir/dumps/Test_wildmenu_pum_42.dump,
+ src/testdir/dumps/Test_wildmenu_pum_43.dump,
+ src/testdir/dumps/Test_wildmenu_pum_44.dump,
+ src/testdir/dumps/Test_wildmenu_pum_45.dump,
+ src/testdir/dumps/Test_wildmenu_pum_46.dump,
+ src/testdir/dumps/Test_wildmenu_pum_47.dump,
+ src/testdir/dumps/Test_wildmenu_pum_48.dump,
+ src/testdir/dumps/Test_wildmenu_pum_49.dump,
+ src/testdir/dumps/Test_wildmenu_pum_50.dump
+
+Patch 8.2.4580
+Problem: MNV9: incorrect error for shadowing variable.
+Solution: Do not pass the context when compiling a referenced function.
+Files: src/mnv9expr.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.4581
+Problem: Null types not fully tested.
+Solution: Add some more tests using null types.
+Files: src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.4582
+Problem: Useless code handling a type declaration.
+Solution: Remove the code and give an error.
+Files: src/eval.c, src/errors.h, src/testdir/test_mnv9_script.mnv,
+ src/testdir/dumps/Test_misplaced_type.dump
+
+Patch 8.2.4583 (after 8.2.4582)
+Problem: Screendump test fails.
+Solution: Check that making a screendump is possible.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.4584 (after 8.2.4578)
+Problem: Error for using autoload function in custom completion.
+Solution: Do not check for errors when using an autoload function.
+ (closes #9962)
+Files: src/eval.c, src/testdir/test_cmdline.mnv
+
+Patch 8.2.4585
+Problem: Cannot use keypad page-up/down for completion menu.
+Solution: Recognize the keypad keys. (Yegappan Lakshmanan, closes #9963)
+Files: src/ex_getln.c, src/testdir/test_cmdline.mnv
+
+Patch 8.2.4586
+Problem: MNV9: no error for using lower case name for "func" argument.
+ (Ernie Rael)
+Solution: Check the name as soon as the type is known.
+Files: src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.4587
+Problem: MNV9: double free after unpacking a list.
+Solution: Make a copy of the value instead of moving it. (closes #9968)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.4588
+Problem: Mapping with key code after other matching mapping does not work.
+Solution: Change ">" to ">=". (closes #9903)
+Files: src/getchar.c, src/testdir/test_termcodes.mnv
+
+Patch 8.2.4589
+Problem: Cannot index the g: dictionary.
+Solution: Recognize using "g:[key]". (closes #9969)
+Files: src/ex_docmd.c, src/eval.c, src/mnv9compile.c,
+ src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.4590
+Problem: MNV9: range type check has wrong offset.
+Solution: Adjust offset for CHECKTYPE. Remove other type check.
+Files: src/mnv9compile.c, src/mnv9execute.c,
+ src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.4591
+Problem: Cursor line not updated when a callback moves the cursor.
+Solution: Check if the cursor moved. (closes #9970)
+Files: src/main.c, src/drawscreen.c, src/proto/drawscreen.pro,
+ src/testdir/test_cursorline.mnv,
+ src/testdir/dumps/Test_cursorline_callback_1.dump
+
+Patch 8.2.4592
+Problem: Search continues after giving E1204.
+Solution: Return failure after giving E1204. (closes #9972)
+Files: src/regexp_nfa.c
+
+Patch 8.2.4593
+Problem: Unnecessary call to redraw_later().
+Solution: Remove the call to redraw_later() in op_yank(). (closes #9971)
+Files: src/register.c
+
+Patch 8.2.4594
+Problem: Need to write script to a file to be able to source them.
+Solution: Make ":source" use lines from the current buffer. (Yegappan
+ Lakshmanan et al., closes #9967)
+Files: runtime/doc/repeat.txt, runtime/doc/todo.txt, src/alloc.c,
+ src/digraph.c, src/eval.c, src/ex_cmds.h, src/scriptfile.c,
+ src/proto/scriptfile.pro, src/mnv9script.c,
+ src/testdir/test_source.mnv
+
+Patch 8.2.4595
+Problem: X11: using --remote-wait may keep the CPU busy.
+Solution: Set the timeout for select() on every call. (Jacopo Secchiero,
+ closes #9973)
+Files: src/if_xcmdsrv.c
+
+Patch 8.2.4596
+Problem: Installing tutor binary may fail.
+Solution: Fix the dependency. (Sergei Trofimovich, closes #9978)
+Files: src/Makefile
+
+Patch 8.2.4597
+Problem: LuaV_debug() not covered by tests.
+Solution: Add a test. (Dominique Pellé, closes #9980)
+Files: src/testdir/test_lua.mnv
+
+Patch 8.2.4598
+Problem: Profile completion test sometimes fails.
+Solution: Delete the .res file before running tests.
+Files: src/testdir/runtest.mnv
+
+Patch 8.2.4599
+Problem: GTK: get assertion errors when scrolling a split window.
+Solution: Use GDK_IS_DRAWABLE() on the scrollbar window. (closes #9982)
+Files: src/gui_gtk.c
+
+Patch 8.2.4600
+Problem: MNV9: not enough test coverage for executing :def function.
+Solution: Add a few more tests. Fix inconsistencies.
+Files: src/mnv9execute.c, src/evalvars.c, src/proto/evalvars.pro,
+ src/testdir/test_listdict.mnv, src/testdir/test_mnv9_assign.mnv,
+ src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.4601
+Problem: MNV9: not enough test coverage for executing :def function.
+Solution: Add a few more tests.
+Files: src/testdir/test_mnv9_script.mnv, src/testdir/test_mnv9_func.mnv,
+ src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.4602
+Problem: MNV9: not enough test coverage for executing :def function.
+Solution: Add a few more tests. Fix uncovered problem. Remove dead code.
+Files: src/mnv9execute.c, src/mnv9.h, src/mnv9instr.c,
+ src/proto/mnv9instr.pro, src/mnv9compile.c,
+ src/testdir/test_mnv9_script.mnv, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.4603
+Problem: Sourcing buffer lines is too complicated.
+Solution: Simplify the code. Make it possible to source MNV9 script lines.
+ (Yegappan Lakshmanan, closes #9974)
+Files: runtime/doc/repeat.txt, src/ex_docmd.c, src/proto/scriptfile.pro,
+ src/scriptfile.c, src/structs.h, src/testdir/test_source.mnv
+
+Patch 8.2.4604
+Problem: Error for redefining a script item may be confusing.
+Solution: Put quotes around the name.
+Files: src/errors.h
+
+Patch 8.2.4605
+Problem: Error for arguments of remote_expr() even when the +clientserver
+ feature is not included.
+Solution: Move #ifdef.
+Files: src/clientserver.c
+
+Patch 8.2.4606 (after 8.2.4605)
+Problem: Test fails because of changed error message.
+Solution: Update the expected error message
+Files: src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4607
+Problem: Sourcing buffer lines may lead to errors for conflicts.
+Solution: Add the ++clear argument. (Yegappan Lakshmanan, closes #9991)
+Files: runtime/doc/repeat.txt, src/scriptfile.c, src/mnv9script.c,
+ src/proto/mnv9script.pro, src/testdir/test_source.mnv
+
+Patch 8.2.4608
+Problem: getcompletion() does not work properly when 'wildoptions'
+ contains "fuzzy".
+Solution: Do not use addstar(). (Yegappan Lakshmanan, closes #9992,
+ closes #9986)
+Files: runtime/doc/builtin.txt, src/cmdexpand.c,
+ src/testdir/test_cmdline.mnv
+
+Patch 8.2.4609
+Problem: :unhide does not check for failing to close a window.
+Solution: When closing a window fails continue with the next one. Do not
+ try closing the autocmd window. (closes #9984)
+Files: src/buffer.c, src/window.c, src/proto/window.pro,
+ src/testdir/test_autocmd.mnv
+
+Patch 8.2.4610
+Problem: Some conditions are always true.
+Solution: Remove the useless conditions. (closes #9993)
+Files: src/clientserver.c, src/drawline.c, src/drawscreen.c,
+ src/ex_cmds.c, src/fileio.c, src/message.c, src/misc2.c,
+ src/ops.c, src/sign.c, src/spell.c, src/mnv9cmds.c, src/window.c
+
+Patch 8.2.4611
+Problem: Typos in tests; one lua line not covered by test.
+Solution: Fix typos. Add test case. (Dominique Pellé, closes #9994)
+Files: src/testdir/test_breakindent.mnv, src/testdir/test_crypt.mnv,
+ src/testdir/test_cursorline.mnv, src/testdir/test_digraph.mnv,
+ src/testdir/test_gui.mnv, src/testdir/test_lua.mnv,
+ src/testdir/test_regexp_latin.mnv, src/testdir/test_signals.mnv,
+ src/testdir/test_spell.mnv, src/testdir/test_statusline.mnv,
+ src/testdir/test_mnv9_disassemble.mnv,
+ src/testdir/test_mnv9_expr.mnv, src/testdir/test_mnvscript.mnv
+
+Patch 8.2.4612
+Problem: MNV9: cannot use a recursive call in a nested function. (Sergey
+ Vlasov)
+Solution: Define the funcref before compiling the function. (closes #9989)
+Files: src/mnv9compile.c, src/mnv9instr.c, src/proto/mnv9instr.pro,
+ src/mnv9expr.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.4613
+Problem: Return type of swapfile_unchanged() is wrong.
+Solution: Use "int". (closes #10000 Yeah!)
+Files: src/memline.c
+
+Patch 8.2.4614
+Problem: Redrawing too much when 'cursorline' is set and jumping around.
+Solution: Rely on win_update() to redraw the current and previous cursor
+ line, do not mark lines as modified. (closes #9996)
+Files: src/drawline.c, src/drawscreen.c, src/move.c, src/proto/move.pro,
+ src/option.c
+
+Patch 8.2.4615
+Problem: Mapping with escaped bar does not work in :def function. (Sergey
+ Vlasov)
+Solution: Do not remove the backslash. (closes #10002)
+Files: src/ex_docmd.c, src/proto/ex_docmd.pro, src/syntax.c,
+ src/mnv9cmds.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.4616
+Problem: MNV9: Declarations in a {} block of a user command do not use MNV9
+ rules if defined in a legacy script. (Yegappan Lakshmanan)
+Solution: Pretend the script is MNV9 script.
+Files: src/usercmd.c, src/testdir/test_usercommands.mnv
+
+Patch 8.2.4617
+Problem: No completion for :scriptnames.
+Solution: Implement :scriptnames completion. (Yegappan Lakshmanan,
+ closes #10005)
+Files: runtime/doc/builtin.txt, src/cmdexpand.c, src/ex_cmds.h,
+ src/scriptfile.c, src/usercmd.c, src/mnv.h,
+ src/testdir/test_cmdline.mnv, src/testdir/test_quickfix.mnv
+
+Patch 8.2.4618
+Problem: Command line completion does not recognize single letter commands.
+Solution: Use the condition from find_ex_command().
+Files: src/ex_docmd.c
+
+Patch 8.2.4619
+Problem: Mapping is cancelled when mouse moves and popup is visible.
+Solution: Only generate mouse moved events when a popup may use them.
+ (closes #10004)
+Files: src/gui.c, src/globals.h, src/popupwin.c
+
+Patch 8.2.4620 (after 8.2.4618)
+Problem: Two letter substitute commands don't work. (Yegappan Lakshmanan)
+Solution: Invert condition.
+Files: src/ex_docmd.c
+
+Patch 8.2.4621
+Problem: Crash when using the tabline right-click menu.
+Solution: Use XtPointer for XmNuserData. (closes #10009)
+Files: src/gui_motif.c
+
+Patch 8.2.4622
+Problem: MNV9: Crash with :execute and :finish. (Sergey Vlasov)
+Solution: Check for NULL. (closes #10011)
+Files: src/eval.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.4623
+Problem: Coverity warns for using uninitialized field.
+Solution: Initialize the field to zero.
+Files: src/ex_docmd.c
+
+Patch 8.2.4624
+Problem: Old Coverity warning for resource leak.
+Solution: Close the file if memory allocation fails.
+Files: src/diff.c
+
+Patch 8.2.4625
+Problem: Old Coverity warning for resource leak.
+Solution: Call FreeWild() if expanding matches did not fail.
+Files: src/help.c
+
+Patch 8.2.4626
+Problem: Visual area not fully updated when removing sign in Visual mode
+ while scrolling.
+Solution: Adjust check for topline. (closes #10017)
+Files: src/drawscreen.c, src/testdir/test_display.mnv,
+ src/testdir/dumps/Test_display_scroll_update_visual.dump
+
+Patch 8.2.4627
+Problem: flatten() does not use maxdepth correctly.
+Solution: Use a recursive implementation. (closes #10020)
+Files: src/list.c, src/testdir/test_flatten.mnv
+
+Patch 8.2.4628
+Problem: Not enough testing for 2/3 letter substitute commands.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #10019)
+Files: src/testdir/test_cmdline.mnv, src/testdir/test_substitute.mnv
+
+Patch 8.2.4629
+Problem: flattennew() makes a deep copy unnecessarily.
+Solution: Use a shallow copy. (issue #10012)
+Files: src/list.c
+
+Patch 8.2.4630
+Problem: 'cursorline' not always updated with 'cursorlineopt' is
+ "screenline".
+Solution: Call check_redraw_cursorline() more often. (closes #10013)
+Files: src/normal.c, src/edit.c, src/testdir/test_cursorline.mnv,
+ src/testdir/dumps/Test_cursorline_screenline_1.dump,
+ src/testdir/dumps/Test_cursorline_screenline_2.dump
+
+Patch 8.2.4631
+Problem: Crash when switching window in BufWipeout autocommand.
+Solution: Put any buffer in the window to avoid it being NULL.
+ (closes #10024)
+Files: src/window.c, src/buffer.c, src/testdir/test_autocmd.mnv
+
+Patch 8.2.4632
+Problem: Using freed memory in flatten().
+Solution: Clear typval after recursing into list.
+Files: src/list.c
+
+Patch 8.2.4633
+Problem: Visual range does not work before command modifiers.
+Solution: Move Visual range to after command modifiers.
+Files: src/ex_docmd.c, src/testdir/test_source.mnv
+
+Patch 8.2.4634
+Problem: MNV9: cannot initialize a variable to null_list.
+Solution: Give negative count to NEWLIST. (closes #10027)
+ Also fix inconsistencies in comparing with null values.
+Files: src/mnv9instr.c, src/proto/mnv9instr.pro, src/mnv9.h,
+ src/mnv9compile.c, src/mnv9expr.c, src/mnv9execute.c,
+ src/evalvars.c, src/typval.c, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_builtin.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.4635 (after 8.2.4634)
+Problem: Tests using null list or dict fail.
+Solution: Only use the new rules for MNV9 script.
+Files: src/evalvars.c
+
+Patch 8.2.4636 (after 8.2.4633)
+Problem: Not using Visual range.
+Solution: Put the command pointer back to the range.
+Files: src/ex_docmd.c
+
+Patch 8.2.4637
+Problem: Warning for using uninitialized variable. (Tony Mechelynck)
+Solution: Initialize it.
+Files: src/ex_docmd.c
+
+Patch 8.2.4638
+Problem: Superfluous check if a redraw is needed for 'cursorline'.
+Solution: Remove check_redraw_cursorline(). (closes #10030, closes #10029)
+Files: src/drawscreen.c, src/proto/drawscreen.pro, src/edit.c,
+ src/main.c, src/normal.c, src/move.c,
+ src/testdir/dumps/Test_cursorcolumn_callback_1.dump,
+ src/testdir/dumps/Test_relativenumber_callback_1.dump,
+ src/testdir/test_highlight.mnv, src/testdir/test_number.mnv
+
+Patch 8.2.4639
+Problem: Not sufficient parenthesis in preprocessor macros.
+Solution: Add more parenthesis. (closes #10031)
+Files: src/globals.h, src/gui.h, src/if_py_both.h, src/macros.h,
+ src/option.h, src/regexp.h, src/spell.h, src/structs.h, src/mnv.h,
+ src/mnv9.h
+
+Patch 8.2.4640
+Problem: Some boolean options use "long" instead of "int".
+Solution: Adjust the type. (James McCoy, closes #10033)
+Files: src/option.h
+
+Patch 8.2.4641
+Problem: May mark the wrong window for redrawing.
+Solution: Use redraw_win_later(). (closes #10032)
+Files: src/move.c
+
+Patch 8.2.4642
+Problem: MNV9: in :def function script var cannot be null.
+Solution: Only initialize a script variable when not set to a null value.
+ (closes #10034)
+Files: src/mnv9execute.c, src/mnv9type.c, src/globals.h, src/evalvars.c,
+ src/mnv.h, src/mnv9script.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.4643
+Problem: MNV9: variable may be locked unintentionally.
+Solution: Clear "v_lock". (closes #10036)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.4644
+Problem: Redrawing too often when 'relativenumber' is set.
+Solution: Only redraw when the cursor line changed. (Lewis Russell,
+ closes #10040)
+Files: src/change.c, src/drawscreen.c, src/structs.h
+
+Patch 8.2.4645
+Problem: 'shortmess' changed when session does not store options.
+Solution: Save and restore 'shortmess' if needed. (James Cherti,
+ closes #10037)
+Files: src/session.c, src/testdir/test_mksession.mnv
+
+Patch 8.2.4646
+Problem: Using buffer line after it has been freed in old regexp engine.
+Solution: After getting mark get the line again.
+Files: src/regexp_bt.c, src/testdir/test_regexp_latin.mnv
+
+Patch 8.2.4647
+Problem: "source" can read past end of copied line.
+Solution: Add a terminating NUL.
+Files: src/scriptfile.c, src/testdir/test_source.mnv
+
+Patch 8.2.4648
+Problem: Handling LSP messages is a bit slow.
+Solution: Included support for LSP messages. (Yegappan Lakshmanan,
+ closes #10025)
+Files: runtime/doc/channel.txt, src/channel.c, src/job.c, src/json.c,
+ src/proto/json.pro, src/structs.h, src/testdir/test_channel.mnv,
+ src/testdir/test_channel_lsp.py
+
+Patch 8.2.4649
+Problem: Various formatting problems.
+Solution: Improve the code formatting.
+Files: src/mark.c, src/quickfix.c, src/regexp_nfa.c, src/register.c,
+ src/testdir/test_filechanged.mnv, src/gui_athena.c,
+ src/gui_motif.c, src/os_unix.c
+
+Patch 8.2.4650
+Problem: "import autoload" only works with using 'runtimepath'.
+Solution: Also support a relative and absolute file name.
+Files: runtime/doc/mnv9.txt, src/structs.h, src/scriptfile.c,
+ src/proto/scriptfile.pro, src/mnv9script.c, src/mnv9expr.c,
+ src/mnv9.h, src/mnv9execute.c, src/mnv9instr.c,
+ src/proto/mnv9instr.pro, src/mnv.h, src/userfunc.c,
+ src/proto/userfunc.pro, src/testdir/test_mnv9_import.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.4651 (after 8.2.4650)
+Problem: Test fails because path differs.
+Solution: Only compare the tail of the path.
+Files: src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.4652 (after 8.2.4650)
+Problem: Leaking memory if assignment fails.
+Solution: Clear assigned value on failure.
+Files: src/mnv9execute.c
+
+Patch 8.2.4653
+Problem: "import autoload" does not check the file name.
+Solution: Give an error if the file is not readable. (closes #10049)
+Files: src/filepath.c, src/proto/filepath.pro, src/errors.h,
+ src/ex_cmds.c, src/ex_docmd.c, src/spellfile.c,
+ src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4654 (after 8.2.4653)
+Problem: Missing changes for import check.
+Solution: Add missing changes.
+Files: src/mnv9script.c
+
+Patch 8.2.4655
+Problem: Command line completion popup menu positioned wrong when using a
+ terminal window.
+Solution: Position the popup menu differently when editing the command line.
+ (Yegappan Lakshmanan, closes #10050, closes #10035)
+Files: src/popupmenu.c, src/testdir/test_cmdline.mnv,
+ src/testdir/test_terminal.mnv,
+ src/testdir/dumps/Test_wildmenu_pum_term_01.dump
+
+Patch 8.2.4656
+Problem: MNV9: can't use items from "import autoload" with autoload
+ directory name.
+Solution: Let sn_autoload_prefix overrule sn_import_autoload.
+ (closes #10054)
+Files: src/structs.h, src/mnv9instr.c, src/mnv9expr.c, src/mnv9script.c,
+ src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4657
+Problem: Errors for functions are sometimes hard to read.
+Solution: Use printable_func_name() in more places.
+Files: src/mnv9execute.c, src/userfunc.c, src/proto/userfunc.pro,
+ src/mnv9expr.c, src/eval.c, src/mnv9instr.c, src/mnv9type.c,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.4658
+Problem: Org-mode files are not recognized.
+Solution: Add patterns to recognize "org" files. (closes #10046)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.4659
+Problem: Invalid memory access when using printable function name.
+Solution: Adjust copied name length.
+Files: src/userfunc.c
+
+Patch 8.2.4660
+Problem: Cursorcolumn is sometimes not correct.
+Solution: Recompute the cursor column when entering Insert mode and the
+ cursor is on a character wider than a screen cell. (closes #10057)
+Files: src/edit.c, src/testdir/test_highlight.mnv,
+ src/testdir/dumps/Test_cursorcolumn_insert_on_tab_1.dump,
+ src/testdir/dumps/Test_cursorcolumn_insert_on_tab_2.dump
+
+Patch 8.2.4661
+Problem: Coverity warning for using uninitialized variable.
+Solution: Initialize variable to NULL.
+Files: src/mnv9expr.c
+
+Patch 8.2.4662
+Problem: No error for using out of range list index.
+Solution: Check list index at script level like in compiled function.
+ (closes #10051)
+Files: src/mnv.h, src/evalvars.c, src/list.c, src/proto/list.pro,
+ src/eval.c, src/mnv9execute.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.4663
+Problem: Occasional crash when running the GUI tests.
+Solution: Check that the line index is not too high. (closes #8681)
+Files: src/screen.c
+
+Patch 8.2.4664
+Problem: Elvish files are not recognized.
+Solution: Recognize .elv files. (Bruno Roque, closes #10058)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.4665
+Problem: Popup with "minwidth" and scrollbar not updated properly.
+Solution: Adjust the computation if the window width. (closes #10061)
+Files: src/popupwin.c, src/testdir/test_popupwin.mnv,
+ src/testdir/dumps/Test_popupwin_previewpopup_4.dump,
+ src/testdir/dumps/Test_popupwin_previewpopup_5.dump,
+ src/testdir/dumps/Test_popupwin_previewpopup_7.dump,
+ src/testdir/dumps/Test_popupwin_previewpopup_8.dump,
+ src/testdir/dumps/Test_popupwin_previewpopup_9.dump,
+ src/testdir/dumps/Test_popupwin_previewpopup_10.dump,
+ src/testdir/dumps/Test_popupwin_drag_minwidth_1.dump,
+ src/testdir/dumps/Test_popupwin_drag_minwidth_2.dump,
+ src/testdir/dumps/Test_popupwin_drag_minwidth_3.dump
+
+Patch 8.2.4666
+Problem: MNV9: assignment not recognized in skipped block.
+Solution: When skipping assume identifier exists. (closes #10059)
+Files: src/mnv9compile.c, src/proto/mnv9compile.pro, src/mnv9cmds.c,
+ src/testdir/test_mnv9_cmd.mnv, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.4667
+Problem: expandcmd() fails on an error.
+Solution: On failure return the command unmodified. (Yegappan Lakshmanan,
+ closes #10063)
+Files: runtime/doc/builtin.txt, src/evalfunc.c,
+ src/testdir/test_expand.mnv
+
+Patch 8.2.4668
+Problem: Buffer allocation failures insufficiently tested.
+Solution: Add tests for memory allocation failures. (Yegappan Lakshmanan,
+ closes #10064)
+Files: src/alloc.h, src/buffer.c, src/popupwin.c, src/window.c,
+ src/testdir/test_buffer.mnv, src/testdir/test_swap.mnv
+
+Patch 8.2.4669
+Problem: In compiled code len('string') is not inlined.
+Solution: Compute the length at compile time if possible. (closes #10065)
+Files: src/evalfunc.c, src/proto/evalfunc.pro, src/mnv9expr.c,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.4670
+Problem: Memory allocation failures for new tab page not tested.
+Solution: Add tests with failing memory allocation. (Yegappan Lakshmanan,
+ closes #10067)
+Files: src/alloc.h, src/blob.c, src/buffer.c, src/window.c,
+ src/testdir/test_blob.mnv, src/testdir/test_buffer.mnv,
+ src/testdir/test_tabpage.mnv, src/testdir/test_window_cmd.mnv
+
+Patch 8.2.4671
+Problem: 'wildignorecase' is sometimes not used for glob().
+Solution: Also use 'wildignorecase' when there are no wildcards.
+ (closes #10066, closes #8350)
+Files: src/filepath.c, src/testdir/test_functions.mnv
+
+Patch 8.2.4672
+Problem: Using :normal with Ex mode may make :substitute hang.
+Solution: When getting an empty line behave like 'q' was typed.
+ (closes #10070)
+Files: src/ex_cmds.c, src/testdir/test_normal.mnv
+
+Patch 8.2.4673
+Problem: Redrawing a vertically split window is slow when using CTRL-F and
+ CTRL-B.
+Solution: When deciding on USE_REDRAW bail out if scrolling more than three
+ lines. (issue #8002)
+Files: src/screen.c
+
+Patch 8.2.4674
+Problem: Cannot force getting MouseMove events.
+Solution: Add the 'mousemoveevent' option with implementation for the GUI.
+ (Ernie Rael, closes #10044)
+Files: runtime/doc/gui.txt, runtime/doc/options.txt,
+ runtime/doc/testing.txt, src/gui.c, src/option.h,
+ src/optiondefs.h, src/testing.c, src/testdir/test_gui.mnv
+
+Patch 8.2.4675
+Problem: No error for missing expression after :elseif. (Ernie Rael)
+Solution: Check for missing expression. (closes #10068)
+Files: src/ex_eval.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.4676 (after 8.2.4675)
+Problem: Test fails with different error.
+Solution: Add argument to :elseif.
+Files: src/testdir/test_mnvscript.mnv
+
+Patch 8.2.4677
+Problem: The Athena GUI support is outdated.
+Solution: Remove the Athena GUI code.
+Files: Filelist, src/Makefile, src/proto.h, src/clipboard.c,
+ src/gui_athena.c, src/proto/gui_athena.pro, src/gui_at_sb.c,
+ src/gui_at_sb.h, src/gui_at_fs.c, src/gui_motif.c, src/evalfunc.c,
+ src/gui.c, src/gui_beval.c, src/gui_x11.c, src/if_mzsch.c,
+ src/main.c, src/menu.c, src/mouse.c, src/version.c, src/feature.h,
+ src/gui.h, src/structs.h, src/mnv.h, src/testdir/gui_init.mnv,
+ src/testdir/setup_gui.mnv, src/testdir/test_clientserver.mnv,
+ src/testdir/test_edit.mnv, src/testdir/test_gui.mnv,
+ src/testdir/test_highlight.mnv, src/testdir/test_quotestar.mnv,
+ src/testdir/test_startup.mnv, runtime/doc/gui.txt,
+ runtime/doc/gui_x11.txt
+
+Patch 8.2.4678
+Problem: MNV9: not all code is tested.
+Solution: Add a few more tests.
+Files: src/mnv9execute.c, src/testdir/test_mnv9_script.mnv,
+ src/testdir/test_mnv9_import.mnv, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.4679
+Problem: Cannot have expandcmd() give an error message for mistakes.
+Solution: Add an optional argument to give errors. Fix memory leak when
+ expanding files fails. (Yegappan Lakshmanan, closes #10071)
+Files: runtime/doc/builtin.txt, src/evalfunc.c, src/filepath.c,
+ src/testdir/test_expand.mnv, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.4680
+Problem: Build failure without +postscript.
+Solution: Use another error message.
+Files: src/mnv9execute.c, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4681
+Problem: Build fails with a combination of features.
+Solution: Remove #ifdef for alloc_clear_id(). (John Marriott)
+Files: src/alloc.c
+
+Patch 8.2.4682
+Problem: MNV9: can use :unlockvar for const variable. (Ernie Rael)
+Solution: Check whether the variable is a const.
+Files: src/ex_docmd.c, src/evalvars.c, src/mnv9script.c,
+ src/proto/mnv9script.pro, src/eval.c, src/userfunc.c,
+ src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.4683
+Problem: Verbose check with dict_find() to see if a key is present.
+Solution: Add dict_has_key(). (Yegappan Lakshmanan, closes #10074)
+Files: src/channel.c, src/dict.c, src/evalwindow.c, src/filepath.c,
+ src/highlight.c, src/json.c, src/match.c, src/popupwin.c,
+ src/proto/dict.pro, src/quickfix.c, src/search.c, src/sign.c,
+ src/tag.c, src/terminal.c, src/testing.c, src/textprop.c,
+ src/time.c
+
+Patch 8.2.4684
+Problem: Cannot open a channel on a Unix domain socket.
+Solution: Add Unix domain socket support. (closes #10062)
+Files: runtime/doc/channel.txt, src/channel.c, src/testdir/check.mnv,
+ src/testdir/shared.mnv, src/testdir/test_channel.py,
+ src/testdir/test_channel.mnv, src/testdir/test_channel_unix.py,
+ src/testdir/test_cmdline.mnv
+
+Patch 8.2.4685
+Problem: When a swap file is found for a popup there is no dialog and the
+ buffer is loaded anyway.
+Solution: Silently load the buffer read-only. (closes #10073)
+Files: runtime/doc/popup.txt, src/memline.c, src/popupwin.c, src/mnv.h,
+ src/buffer.c, src/testdir/test_popupwin.mnv
+
+Patch 8.2.4686
+Problem: Configure doesn't find the Motif library with Cygwin.
+Solution: Check for libXm.dll.a. (Kelvin Lee, closes #10077)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.4687
+Problem: "mnvgrep /\%v/ *" may cause a crash.
+Solution: When compiling the pattern with the old engine fails, restore the
+ regprog of the new engine instead of leaving it NULL.
+ (closes #10079)
+Files: src/regexp.c
+
+Patch 8.2.4688
+Problem: New regexp engine does not give an error for "\%v".
+Solution: Check for a value argument. (issue #10079)
+Files: src/regexp_nfa.c, src/errors.h, src/regexp_bt.c,
+ src/testdir/test_regexp_latin.mnv
+
+Patch 8.2.4689
+Problem: Using <Cmd> in a mapping does not work for mouse keys in Insert
+ mode. (Sergey Vlasov)
+Solution: When reading the <Cmd> argument do not use the stuff buffer.
+ (closes #10080)
+Files: src/getchar.c
+
+Patch 8.2.4690
+Problem: Channel tests fail on MS-Windows.
+Solution: Check if the AF_UNIX attribute exists. (closes #10083)
+Files: src/testdir/test_channel.py, src/testdir/test_channel_unix.py
+
+Patch 8.2.4691 (after 8.2.4689)
+Problem: Solution for <Cmd> in a mapping causes trouble.
+Solution: Use another solution: put back CTRL-O after reading the <Cmd>
+ sequence.
+Files: src/getchar.c
+
+Patch 8.2.4692
+Problem: No test for what 8.2.4691 fixes.
+Solution: Add a test. Use a more generic solution. (closes #10090)
+Files: src/getchar.c, src/mouse.c, src/testdir/test_mapping.mnv
+
+Patch 8.2.4693 (after 8.2.4688)
+Problem: new regexp does not accept pattern "\%>0v".
+Solution: Do accept digit zero.
+Files: src/regexp_bt.c, src/regexp_nfa.c,
+ src/testdir/test_regexp_latin.mnv
+
+Patch 8.2.4694
+Problem: Avoidance of #elif causes more preproc nesting.
+Solution: Use #elif where it is useful. (Ozaki Kiichi, closes #10081)
+Files: src/option.c, src/optiondefs.h, src/optionstr.c, src/version.c
+
+Patch 8.2.4695
+Problem: JSON encoding could be faster.
+Solution: Optimize encoding JSON strings. (closes #10086)
+Files: src/json.c, src/testdir/test_json.mnv
+
+Patch 8.2.4696
+Problem: delete() with "rf" argument does not report a failure.
+Solution: Return -1 if the directory could not be removed. (closes #10078)
+Files: src/fileio.c, src/testdir/test_functions.mnv
+
+Patch 8.2.4697
+Problem: MNV9: crash when adding a duplicate key to a dictionary.
+Solution: Clear the stack item when it has been moved into the dictionary.
+ (closes #10087)
+Files: src/mnv9execute.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.4698
+Problem: MNV9: script variable has no flag that it was set.
+Solution: Add a flag that it was set, to avoid giving it a value when used.
+ (closes #10088)
+Files: src/structs.h, src/mnv9script.c, src/mnv9execute.c,
+ src/evalvars.c, src/testdir/test_mnv9_assign.mnv,
+ src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.4699
+Problem: Hard to reproduce hang when reading from a channel.
+Solution: Check for readahead before starting to wait. (closes #10093,
+ closes #7781, closes #6364)
+Files: src/channel.c
+
+Patch 8.2.4700
+Problem: Buffer remains active if a WinClosed event throws an exception.
+Solution: Ignore aborting() when closing the buffer. (closes #10097)
+Files: src/window.c, src/testdir/test_autocmd.mnv
+
+Patch 8.2.4701
+Problem: Kuka Robot Language files not recognized.
+Solution: Recognize *.src and *.dat files. (Patrick Meiser-Knosowski,
+ closes #10096)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv,
+ runtime/autoload/dist/ft.mnv
+
+Patch 8.2.4702
+Problem: C++ scope labels are hard-coded.
+Solution: Add 'cinscopedecls' to define the labels. (Rom Praschan,
+ closes #10109)
+Files: runtime/doc/indent.txt, runtime/doc/options.txt,
+ runtime/doc/quickref.txt, runtime/optwin.mnv, src/buffer.c,
+ src/cindent.c, src/option.c, src/option.h, src/optiondefs.h,
+ src/optionstr.c, src/structs.h, src/testdir/test_cindent.mnv
+
+Patch 8.2.4703 (after 8.2.4702)
+Problem: Memory leak in handling 'cinscopedecls'.
+Solution: Free the memory before returning.
+Files: src/cindent.c
+
+Patch 8.2.4704
+Problem: Using "else" after return or break increases indent.
+Solution: Remove "else" and reduce indent. (Goc Dundar, closes #10099)
+Files: src/fileio.c, src/memline.c, src/option.c, src/syntax.c
+
+Patch 8.2.4705
+Problem: reg_executing may not be cleared.
+Solution: Reset reg_executing later. (closes #10111, closes #10110)
+Files: src/ex_docmd.c, src/getchar.c, src/globals.h, src/structs.h,
+ src/testdir/test_registers.mnv
+
+Patch 8.2.4706
+Problem: Buffer remains active if a WinClosed event throws an exception
+ when there are multiple tabpages.
+Solution: Ignore aborting() when closing the buffer. (closes #10101)
+Files: src/window.c, src/testdir/test_autocmd.mnv
+
+Patch 8.2.4707
+Problem: Redrawing could be a bit more efficient.
+Solution: Optimize redrawing. (closes #10105)
+Files: src/change.c, src/edit.c, src/testdir/test_highlight.mnv,
+ src/testdir/dumps/Test_cursorcolumn_insert_on_tab_3.dump
+
+Patch 8.2.4708
+Problem: PHP test files are not recognized.
+Solution: Add the *.phpt pattern. (Julien Voisin, closes #10112)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.4709
+Problem: After :redraw the statusline highlight might be used.
+Solution: Clear the screen attribute after redrawing the screen.
+ (closes #10108)
+Files: src/ex_docmd.c
+
+Patch 8.2.4710
+Problem: Smart indenting does not work after completion.
+Solution: Set "can_si". (Christian Brabandt, closes #10113, closes #558)
+Files: src/edit.c, src/testdir/test_ins_complete.mnv
+
+Patch 8.2.4711
+Problem: When 'insermode' is set :edit from <Cmd> mapping misbehaves.
+Solution: Don't set "need_start_insertmode" when already in Insert mode.
+ (closes #10116)
+Files: src/ex_cmds.c, src/testdir/test_edit.mnv
+
+Patch 8.2.4712
+Problem: Only get profiling information after exiting.
+Solution: Add "profile dump" and "profile stop". (Marco Hinz, Yegappan
+ Lakshmanan, closes #10107)
+Files: runtime/doc/repeat.txt, src/profiler.c,
+ src/testdir/test_profile.mnv
+
+Patch 8.2.4713
+Problem: Plugins cannot track text scrolling.
+Solution: Add the WinScrolled event. (closes #10102)
+Files: runtime/doc/autocmd.txt, src/autocmd.c, src/proto/autocmd.pro,
+ src/edit.c, src/gui.c, src/main.c, src/structs.h, src/mnv.h,
+ src/window.c, src/proto/window.pro, src/testdir/test_autocmd.mnv
+
+Patch 8.2.4714
+Problem: Using g:filetype_dat and g:filetype_src not tested.
+Solution: Add a test. (Patrick Meiser-Knosowski, closes #10117)
+Files: src/testdir/test_filetype.mnv
+
+Patch 8.2.4715
+Problem: Vagrantfile not recognized.
+Solution: Recognize Vagrantfile as ruby. (Julien Voisin, closes #10119)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.4716
+Problem: Memory allocation failure not tested when defining a function.
+Solution: Add a test. (Yegappan Lakshmanan, closes #10127)
+Files: src/alloc.c, src/alloc.h, src/proto/alloc.pro, src/userfunc.c,
+ src/testdir/test_user_func.mnv, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.4717
+Problem: For TextYankPost v:event does not contain information about the
+ operation being inclusive or not.
+Solution: Add "inclusive" to v:event. (Justin M. Keyes, Yegappan Lakshmanan,
+ closes #10125)
+Files: runtime/doc/autocmd.txt, src/register.c,
+ src/testdir/test_autocmd.mnv
+
+Patch 8.2.4718
+Problem: @@@ in the last line sometimes drawn in the wrong place.
+Solution: Make sure the column is valid. (closes #10130)
+Files: src/drawscreen.c, src/screen.c, src/testdir/test_display.mnv
+ src/testdir/dumps/Test_display_lastline_1.dump,
+ src/testdir/dumps/Test_display_lastline_2.dump,
+ src/testdir/dumps/Test_display_lastline_3.dump,
+ src/testdir/dumps/Test_display_lastline_4.dump
+
+Patch 8.2.4719
+Problem: ">" marker sometimes not displayed in the jumplist.
+Solution: If the buffer no longer exists show "-invalid-". (Christian
+ Brabandt, closes #10131, closes #10100)
+Files: runtime/doc/motion.txt, src/mark.c, src/testdir/Make_all.mak,
+ src/testdir/test_alot.mnv, src/testdir/test_jumplist.mnv,
+ src/testdir/test_jumps.mnv
+
+Patch 8.2.4720
+Problem: ABB Rapid files are not recognized properly.
+Solution: Add checks for ABB Rapid files. (Patrick Meiser-Knosowski,
+ closes #10104)
+Files: runtime/autoload/dist/ft.mnv, runtime/doc/filetype.txt,
+ runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.4721
+Problem: Cooklang files are not recognized.
+Solution: recognize *.cook files. (Goc Dundar, closes #10120)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.4722
+Problem: When a recording is ended with a mapped key that key is also
+ recorded.
+Solution: Remember the previous last_recorded_len. (closes #10122)
+Files: src/getchar.c, src/testdir/test_registers.mnv
+
+Patch 8.2.4723
+Problem: The ModeChanged autocmd event is inefficient.
+Solution: Avoid allocating memory. (closes #10134) Rename
+ trigger_modechanged() to may_trigger_modechanged().
+Files: src/misc1.c, src/proto/misc1.pro, src/edit.c, src/ex_docmd.c,
+ src/ex_getln.c, src/insexpand.c, src/normal.c, src/terminal.c,
+ src/autocmd.c
+
+Patch 8.2.4724
+Problem: Current instance of last search pattern not easily spotted.
+Solution: Add CurSearch highlighting. (closes #10133)
+Files: runtime/doc/options.txt, runtime/doc/syntax.txt, src/highlight.c,
+ src/match.c, src/normal.c, src/optiondefs.h, src/structs.h,
+ src/mnv.h, src/normal.c, src/testdir/test_search.mnv,
+ src/testdir/dumps/Test_hlsearch_cursearch_multiple_line.dump,
+ src/testdir/dumps/Test_hlsearch_cursearch_single_line_1.dump,
+ src/testdir/dumps/Test_hlsearch_cursearch_single_line_2.dump,
+ src/testdir/dumps/Test_hlsearch_cursearch_single_line_3.dump
+
+Patch 8.2.4725 (after 8.2.4724)
+Problem: Unused variable in tiny build.
+Solution: Add #ifdef.
+Files: src/normal.c
+
+Patch 8.2.4726
+Problem: Cannot use expand() to get the script name.
+Solution: Support expand('<script>'). (closes #10121)
+Files: runtime/doc/cmdline.txt, src/errors.h, src/ex_docmd.c,
+ src/scriptfile.c, src/mnv.h, src/testdir/test_expand.mnv
+
+Patch 8.2.4727
+Problem: Unused code.
+Solution: Remove code and add #ifdefs. (Dominique Pellé, closes #10136)
+Files: runtime/doc/editing.txt, runtime/doc/eval.txt,
+ runtime/doc/mnv9.txt, src/errors.h, src/option.c, src/search.c,
+ src/proto/search.pro
+
+Patch 8.2.4728
+Problem: No test that v:event cannot be modified.
+Solution: Add a test. (closes #10139)
+Files: src/testdir/test_autocmd.mnv
+
+Patch 8.2.4729
+Problem: HEEx and Surface templates do not need a separate filetype.
+Solution: Use Elixir for the similar filetypes. (Aaron Tinio, closes #10124)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.4730
+Problem: MS-Windows GUI: cannot use CTRL-/.
+Solution: Handle the WM_KEYUP event. (Yasuhiro Matsumoto, closes #10141)
+Files: src/gui_w32.c
+
+Patch 8.2.4731
+Problem: The changelist index is not remembered per buffer.
+Solution: Keep the changelist index per window and buffer. (closes #10135,
+ closes #2173)
+Files: src/buffer.c, src/evalfunc.c, src/structs.h,
+ src/testdir/test_changelist.mnv
+
+Patch 8.2.4732
+Problem: Duplicate code to free fuzzy matches.
+Solution: Bring back fuzmatch_str_free().
+Files: src/search.c, src/proto/search.pro, src/cmdexpand.c
+
+Patch 8.2.4733 (after 8.2.4729)
+Problem: HEEx and Surface do need a separate filetype.
+Solution: Revert 8.2.4729. (closes #10147)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.4734
+Problem: getcharpos() may change a mark position.
+Solution: Copy the mark position. (closes #10148)
+Files: src/eval.c, src/testdir/test_cursor_func.mnv
+
+Patch 8.2.4735
+Problem: Quickfix tests can be a bit hard to read.
+Solution: Use heredoc instead of strings and line continuation. (Yegappan
+ Lakshmanan, closes #10145)
+Files: src/testdir/test_quickfix.mnv
+
+Patch 8.2.4736
+Problem: Build problem for Cygwin with Motif.
+Solution: Undefine ControlMask. (Kelvin Lee, closes #10152)
+Files: src/mbyte.c
+
+Patch 8.2.4737
+Problem: // in JavaScript string recognized as comment.
+Solution: Only check for linecomment if 'cindent' is set. (closes #10151)
+Files: src/change.c, src/testdir/test_textformat.mnv
+
+Patch 8.2.4738
+Problem: Esc on commandline executes command instead of abandoning it.
+Solution: Save and restore KeyTyped when removing the popup menu.
+ (closes #10154)
+Files: src/cmdexpand.c, src/testdir/test_cmdline.mnv,
+ src/testdir/dumps/Test_wildmenu_with_pum_foldexpr_1.dump,
+ src/testdir/dumps/Test_wildmenu_with_pum_foldexpr_2.dump
+
+Patch 8.2.4739
+Problem: Accessing freed memory after WinScrolled autocmd event.
+Solution: Check the window pointer is still valid. (closes #10156)
+ Remove the argument from may_trigger_winscrolled().
+Files: src/window.c, src/proto/window.pro, src/edit.c, src/gui.c,
+ src/main.c, src/testdir/test_autocmd.mnv
+
+Patch 8.2.4740
+Problem: When expand() fails there is no error message.
+Solution: When 'verbose' is set give an error message.
+Files: runtime/doc/builtin.txt, src/evalfunc.c,
+ src/testdir/test_expand.mnv
+
+Patch 8.2.4741 (after 8.2.4740)
+Problem: Startup test fails.
+Solution: Avoid an error for verbose expansion. Fix that the "0verbose"
+ command modifier doesn't work.
+Files: runtime/syntax/syntax.mnv, runtime/syntax/synload.mnv,
+ src/structs.h, src/ex_docmd.c, src/testdir/test_excmd.mnv
+
+Patch 8.2.4742
+Problem: There is no way to start logging very early in startup.
+Solution: Add the --log argument. Include the date in the start message in
+ the log file. Avoid a duplicate message when forking. Log an
+ executed shell command.
+Files: runtime/doc/starting.txt, runtime/doc/channel.txt,
+ src/main.c, src/channel.c, src/os_unix.c, src/os_win32.c,
+ src/testdir/test_startup.mnv
+
+Patch 8.2.4743
+Problem: Clang 14 is available on CI.
+Solution: Switch from clang 13 to 14. (closes #10157)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.4744
+Problem: A terminal window can't use the bell.
+Solution: Add bell support for the terminal window. (closes #10178)
+Files: runtime/doc/options.txt, src/gui_w32.c, src/option.h,
+ src/optionstr.c, src/terminal.c
+
+Patch 8.2.4745 (after 8.2.4744)
+Problem: Using wrong flag for using bell in the terminal.
+Solution: Change to use BO_TERM.
+Files: src/terminal.c, src/misc1.c
+
+Patch 8.2.4746
+Problem: Supercollider filetype not recognized.
+Solution: Match file extensions and check file contents to detect
+ supercollider. (closes #10142)
+Files: runtime/filetype.mnv, runtime/autoload/dist/ft.mnv,
+ src/testdir/test_filetype.mnv
+
+Patch 8.2.4747
+Problem: No filetype override for .sys files.
+Solution: Add g:filetype_sys. (Patrick Meiser-Knosowski, closes #10181)
+Files: runtime/doc/filetype.txt, runtime/autoload/dist/ft.mnv,
+ src/testdir/test_filetype.mnv
+
+Patch 8.2.4748
+Problem: Cannot use an imported function in a mapping.
+Solution: Recognize <SID>name.Func.
+Files: runtime/doc/mnv9.txt, src/term.c, src/mnv9execute.c,
+ src/proto/mnv9execute.pro, src/scriptfile.c,
+ src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4749
+Problem: <script> is not expanded in autocmd context.
+Solution: Add the context to the pattern struct. (closes #10144)
+ Rename AutoPatCmd to AutoPatCmd_T.
+Files: src/autocmd.c, src/proto/autocmd.pro, src/scriptfile.c,
+ src/structs.h, src/testdir/test_expand.mnv
+
+Patch 8.2.4750
+Problem: Small pieces of dead code.
+Solution: Remove the dead code. (Goc Dundar, closes #10190) Rename the
+ qftf_cb struct member to avoid confusion.
+Files: src/ex_cmds.c, src/misc1.c, src/optionstr.c, src/quickfix.c
+
+Patch 8.2.4751 (after 8.2.4748)
+Problem: Mapping <SID>name.Func does not work for script in autoload
+ directory.
+Solution: Use the # form for a script in the autoload directory.
+ (closes #10186)
+Files: src/term.c, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4752
+Problem: Wrong 'statusline' value can cause illegal memory access.
+Solution: Properly check the value. (closes #10192)
+Files: src/optionstr.c, src/testdir/test_options.mnv
+
+Patch 8.2.4753
+Problem: Error from setting an option is silently ignored.
+Solution: Handle option value errors better. Fix uses of N_().
+Files: src/option.c, src/proto/option.pro, src/optionstr.c,
+ src/channel.c, src/crypt.c, src/diff.c, src/edit.c,
+ src/eval.c, src/evalfunc.c, src/evalvars.c, src/ex_cmds2.c,
+ src/ex_docmd.c, src/ex_getln.c, src/getchar.c, src/gui.c,
+ src/gui_gtk_x11.c, src/help.c, src/highlight.c, src/if_tcl.c,
+ src/main.c, src/memline.c, src/message_test.c,
+ src/popupmenu.c, src/quickfix.c, src/scriptfile.c, src/spell.c,
+ src/spellfile.c, src/term.c, src/undo.c, src/mnv9script.c
+
+Patch 8.2.4754
+Problem: Still using cached values after unsetting some known environment
+ variables.
+Solution: Take care of the side effects. (closes #10194)
+Files: src/evalfunc.c, src/evalvars.c, src/misc1.c, src/proto/misc1.pro,
+ src/mnv9execute.c, src/optionstr.c, src/testdir/test_environ.mnv
+
+Patch 8.2.4755
+Problem: Cannot use <SID>FuncRef in completion spec.
+Solution: Dereference a function name in another way. (closes #10197)
+Files: src/eval.c, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4756 (after 8.2.4754)
+Problem: Build error without the +eval feature.
+Solution: Adjust #ifdefs.
+Files: src/misc1.c
+
+Patch 8.2.4757
+Problem: List of libraries to suppress lsan errors is outdated.
+Solution: Add another library. (closes #10201)
+Files: src/testdir/lsan-suppress.txt
+
+Patch 8.2.4758
+Problem: When using an LSP channel want to get the message ID.
+Solution: Have ch_sendexpr() return the ID. (Yegappan Lakshmanan,
+ closes #10202)
+Files: runtime/doc/channel.txt, src/channel.c, src/evalfunc.c,
+ src/testdir/test_channel.mnv
+
+Patch 8.2.4759
+Problem: CurSearch highlight does not work for multi-line match.
+Solution: Check cursor position before adjusting columns. (closes #10133)
+Files: src/structs.h, src/match.c, src/testdir/test_search.mnv,
+ src/testdir/dumps/Test_hlsearch_cursearch_multiple_line.dump,
+ src/testdir/dumps/Test_hlsearch_cursearch_multiple_line_1.dump,
+ src/testdir/dumps/Test_hlsearch_cursearch_multiple_line_2.dump,
+ src/testdir/dumps/Test_hlsearch_cursearch_multiple_line_3.dump,
+ src/testdir/dumps/Test_hlsearch_cursearch_multiple_line_4.dump,
+ src/testdir/dumps/Test_hlsearch_cursearch_multiple_line_5.dump
+
+Patch 8.2.4760
+Problem: Using matchfuzzy() on a long list can take a while.
+Solution: Add a limit to the number of matches. (Yasuhiro Matsumoto,
+ closes #10189)
+Files: runtime/doc/builtin.txt, src/search.c,
+ src/testdir/test_matchfuzzy.mnv
+
+Patch 8.2.4761
+Problem: Documentation for using LSP messages is incomplete.
+Solution: Update the documentation. (Yegappan Lakshmanan, closes #10206)
+Files: runtime/doc/channel.txt
+
+Patch 8.2.4762
+Problem: Using freed memory when using synstack() and synID() in WinEnter.
+Solution: Check using the syntax window. (closes #10204)
+Files: src/syntax.c, src/testdir/test_syntax.mnv
+
+Patch 8.2.4763
+Problem: Using invalid pointer with "V:" in Ex mode.
+Solution: Correctly handle the command being changed to "+".
+Files: src/ex_docmd.c, src/testdir/test_ex_mode.mnv
+
+Patch 8.2.4764
+Problem: CI uses an older gcc version.
+Solution: Use GCC 11. (closes #10185)
+Files: .github/workflows/ci.yml, src/testdir/lsan-suppress.txt
+
+Patch 8.2.4765
+Problem: Function matchfuzzy() sorts too many items.
+Solution: Only put matches in the array. (Yegappan Lakshmanan,
+ closes #10208)
+Files: src/search.c
+
+Patch 8.2.4766
+Problem: KRL files using "deffct" not recognized.
+Solution: Adjust the pattern used for matching. (Patrick Meiser-Knosowski,
+ closes #10200)
+Files: runtime/autoload/dist/ft.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.4767
+Problem: Openscad files are not recognized.
+Solution: Add a filetype pattern. (Niklas Adam, closes #10199)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.4768
+Problem: CI: codecov upload sometimes does not work.
+Solution: Use action v3 instead of v2. (closes #10209)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.4769
+Problem: Build warning with UCRT.
+Solution: Adjust #ifdef for _wenviron. (John Marriott)
+Files: src/evalfunc.c
+
+Patch 8.2.4770
+Problem: Cannot easily mix expression and heredoc.
+Solution: Support `=expr` in heredoc. (Yegappan Lakshmanan, closes #10138)
+Files: runtime/doc/eval.txt, src/evalvars.c, src/userfunc.c,
+ src/testdir/test_let.mnv, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.4771
+Problem: Coverity warns for not checking return value.
+Solution: Check return value of rettv_dict_alloc().
+Files: src/channel.c
+
+Patch 8.2.4772
+Problem: Old Coverity warning for not checking ftell() return value.
+Solution: Check return value of fseek() and ftell().
+Files: src/misc1.c
+
+Patch 8.2.4773
+Problem: Build failure without the +eval feature.
+Solution: Use other error message. Avoid warnings.
+Files: src/misc1.c, src/cindent.c, src/term.c
+
+Patch 8.2.4774
+Problem: Crash when using a number for lambda name.
+Solution: Check the type of the lambda reference.
+Files: src/eval.c, src/errors.h, src/testdir/test_lambda.mnv
+
+Patch 8.2.4775
+Problem: SpellBad highlighting does not work in Konsole.
+Solution: Do not keep t_8u defined for Konsole. Redraw when t_8u is reset.
+ (closes #10177)
+Files: src/term.c
+
+Patch 8.2.4776
+Problem: GTK: 'lines' and 'columns' may change during startup.
+Solution: Ignore stale GTK resize events. (Ernie Rael, closes #10179)
+Files: src/gui_gtk_x11.c
+
+Patch 8.2.4777 (after 8.2.4775)
+Problem: Screendump tests fail because of a redraw.
+Solution: Do not output t_8u before receiving termresponse. Redraw only
+ when t_8u is not reset and termresponse is received.
+Files: src/term.c
+
+Patch 8.2.4778
+Problem: Pacman files use dosini filetype.
+Solution: Use conf instead. (Chaoren Lin, closes #10213)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.4779
+Problem: lsan suppression is too version specific.
+Solution: Leave out the version number. (Christian Brabandt, closes #10214)
+Files: src/testdir/lsan-suppress.txt
+
+Patch 8.2.4780
+Problem: Parsing an LSP message fails when it is split.
+Solution: Collapse the received data before parsing. (Yegappan Lakshmanan,
+ closes #10215)
+Files: runtime/doc/channel.txt, src/channel.c,
+ src/testdir/test_channel.mnv, src/testdir/test_channel_lsp.py
+
+Patch 8.2.4781
+Problem: Maxima files are not recognized.
+Solution: Add patterns to detect Maxima files. (Doron Behar, closes #10211)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.4782
+Problem: Accessing freed memory.
+Solution: Clear evalarg after checking for trailing characters.
+ (issue #10218)
+Files: src/userfunc.c, src/testdir/test_lambda.mnv
+
+Patch 8.2.4783
+Problem: Coverity warns for leaking memory.
+Solution: Use another strategy freeing "theline".
+Files: src/evalvars.c
+
+Patch 8.2.4784
+Problem: Lamba test with timer is flaky.
+Solution: Adjust sleep time on retry.
+Files: src/testdir/test_lambda.mnv
+
+Patch 8.2.4785
+Problem: Visual mode not stopped early enough if win_gotoid() goes to
+ another buffer. (Sergey Vlasov)
+Solution: Stop Visual mode before jumping to another buffer. (closes #10217)
+Files: src/evalwindow.c, src/testdir/test_mnv9_builtin.mnv,
+ src/testdir/dumps/Test_win_gotoid_1.dump,
+ src/testdir/dumps/Test_win_gotoid_2.dump,
+ src/testdir/dumps/Test_win_gotoid_3.dump
+
+Patch 8.2.4786 (after 8.2.4785)
+Problem: Test for win_gotoid() in Visual mode fails on Mac.
+Solution: Skip the test on MacOS.
+Files: src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.4787
+Problem: prop_find() does not find the right property.
+Solution: Fix the scan order. (closes #10220)
+Files: src/textprop.c, src/testdir/test_textprop.mnv
+
+Patch 8.2.4788
+Problem: Large payload for LSP message not tested.
+Solution: Add a test with a large LSP payload. (Yegappan Lakshmanan,
+ closes #10223)
+Files: src/channel.c, src/testdir/test_channel.mnv,
+ src/testdir/test_channel_lsp.py
+
+Patch 8.2.4789
+Problem: The cursor may be in the in wrong place when using :redraw while
+ editing the cmdline.
+Solution: When editing the command line let :redraw update the command line
+ too. (closes #10210)
+Files: src/ex_docmd.c, src/testdir/test_cmdline.mnv,
+ src/testdir/dumps/Test_redraw_in_autocmd_1.dump,
+ src/testdir/dumps/Test_redraw_in_autocmd_2.dump
+
+Patch 8.2.4790
+Problem: Lilypond filetype not recognized.
+Solution: Add patterns for lilypond. (Doug Kearns)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.4791
+Problem: Autocmd events triggered in different order when reusing an empty
+ buffer.
+Solution: Call buff_freeall() earlier. (Charlie Groves, closes #10198)
+Files: src/buffer.c, src/testdir/test_autocmd.mnv
+
+Patch 8.2.4792
+Problem: Indent operator creates an undo entry for every line.
+Solution: Create one undo entry for all lines. (closes #10227)
+Files: src/indent.c, src/testdir/test_indent.mnv
+
+Patch 8.2.4793
+Problem: Recognizing Maxima filetype even though it might be another.
+Solution: Remove *.mc and *.dem patterns from Maxima files
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.4794
+Problem: Compiler warning for not initialized variable.
+Solution: Initialize the variable. (John Marriott)
+Files: src/indent.c
+
+Patch 8.2.4795
+Problem: 'cursorbind' scrolling depends on whether 'cursorline' is set.
+Solution: Always call validate_cursor(). (Christian Brabandt, closes #10230,
+ closes #10014)
+Files: src/move.c, src/testdir/README.txt,
+ src/testdir/test_cursorline.mnv,
+ src/testdir/dumps/Test_hor_scroll_1.dump,
+ src/testdir/dumps/Test_hor_scroll_2.dump,
+ src/testdir/dumps/Test_hor_scroll_3.dump,
+ src/testdir/dumps/Test_hor_scroll_4.dump
+
+Patch 8.2.4796 (after 8.2.4795)
+Problem: File left behind after running cursorline tests.
+Solution: Uncomment the line that deletes the file.
+Files: src/testdir/test_cursorline.mnv
+
+Patch 8.2.4797
+Problem: getwininfo() may get outdated values.
+Solution: Make sure w_botline is up-to-date. (closes #10226)
+Files: src/evalwindow.c, src/testdir/test_bufwintabinfo.mnv
+
+Patch 8.2.4798
+Problem: t_8u option was reset even when set by the user.
+Solution: Only reset t_8u when using the default value. (closes #10239)
+Files: src/term.c
+
+Patch 8.2.4799
+Problem: Popup does not use correct topline.
+Solution: Also add one when firstline is negative. (closes #10229)
+Files: src/popupwin.c, src/testdir/test_popupwin.mnv
+
+Patch 8.2.4800 (after 8.2.4798)
+Problem: Missing test update for adjusted t_8u behavior.
+Solution: Update and extend the test.
+Files: src/testdir/test_termcodes.mnv
+
+Patch 8.2.4801 (after 8.2.4795)
+Problem: Fix for cursorbind fix not fully tested.
+Solution: Add another test case. (Christian Brabandt, closes #10240)
+Files: src/testdir/test_cursorline.mnv,
+ src/testdir/dumps/Test_hor_scroll_5.dump
+
+Patch 8.2.4802
+Problem: Test is not cleaned up.
+Solution: Make test clean up after itself. Avoid NUL. (closes #10233)
+Files: src/testdir/test_autocmd.mnv
+
+Patch 8.2.4803
+Problem: WinScrolled not always triggered when scrolling with the mouse.
+Solution: Add calls to may_trigger_winscrolled(). (closes #10246)
+Files: src/mouse.c, src/testdir/test_autocmd.mnv
+
+Patch 8.2.4804
+Problem: Expression in heredoc doesn't work for compiled function.
+Solution: Implement compiling the heredoc expressions. (Yegappan Lakshmanan,
+ closes #10232)
+Files: runtime/doc/eval.txt, src/evalvars.c, src/proto/evalvars.pro,
+ src/ex_getln.c, src/mnv9compile.c, src/proto/mnv9compile.pro,
+ src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.4805
+Problem: CurSearch used for all matches in current line.
+Solution: Don't use the non-zero line count. (closes #10247)
+Files: src/match.c, src/testdir/test_search.mnv,
+ src/testdir/dumps/Test_hlsearch_cursearch_single_line_1.dump,
+ src/testdir/dumps/Test_hlsearch_cursearch_single_line_2.dump,
+ src/testdir/dumps/Test_hlsearch_cursearch_single_line_2a.dump,
+ src/testdir/dumps/Test_hlsearch_cursearch_single_line_2b.dump
+
+Patch 8.2.4806
+Problem: A mapping using <LeftDrag> does not start Select mode.
+Solution: When checking for starting select mode with the mouse also do this
+ when there is typeahead. (closes #10249)
+Files: src/normal.c
+
+Patch 8.2.4807
+Problem: Processing key events in Win32 GUI is not ideal.
+Solution: Improve processing of key events. (closes #10155)
+Files: src/gui_w32.c
+
+Patch 8.2.4808
+Problem: Unused item in engine struct.
+Solution: Remove "expr". Add comment with tags.
+Files: src/regexp.h
+
+Patch 8.2.4809
+Problem: Various things not properly tested.
+Solution: Add various test cases. (Yegappan Lakshmanan, closes #10259)
+Files: src/testdir/test_blob.mnv, src/testdir/test_debugger.mnv,
+ src/testdir/test_listdict.mnv, src/testdir/test_mnv9_builtin.mnv,
+ src/testdir/test_mnv9_import.mnv, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.4810 (after 8.2.4808)
+Problem: Missing changes in one file.
+Solution: Also change the struct initializers.
+Files: src/regexp.c
+
+Patch 8.2.4811 (after 8.2.4807)
+Problem: Win32 GUI: caps lock doesn't work.
+Solution: Handle VK_CAPITAL. (closes #10260, closes #10258)
+Files: src/gui_w32.c
+
+Patch 8.2.4812
+Problem: Unused struct item.
+Solution: Remove "lines" match_T. Simplify the code. (closes #10256)
+Files: src/match.c, src/structs.h
+
+Patch 8.2.4813
+Problem: Pasting text while indent folding may mess up folds.
+Solution: Adjust the way folds are split. (Brandon Simmons, closes #10254)
+Files: src/fold.c, src/testdir/test_fold.mnv
+
+Patch 8.2.4814
+Problem: Possible to leave a popup window with win_gotoid().
+Solution: Give an error when trying to leave a popup window with
+ win_gotoid(). (closes #10253)
+Files: src/evalwindow.c, src/testdir/test_terminal3.mnv
+
+Patch 8.2.4815 (after 8.2.4776)
+Problem: Cannot build with older GTK version.
+Solution: Use gtk_window_get_size() instead of gdk_window_get_width() and
+ gdk_window_get_height(). (Ernie Rael, closes #10257)
+Files: src/gui_gtk_x11.c
+
+Patch 8.2.4816
+Problem: Still using older codecov app in some places of CI.
+Solution: Use v3.1.0. (closes #10209)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.4817
+Problem: Win32 GUI: modifiers are not always used.
+Solution: Handle more modifiers. (closes #10269)
+Files: src/gui_w32.c
+
+Patch 8.2.4818 (after 8.2 4806)
+Problem: No test for what 8.2.4806 fixes.
+Solution: Add a test. (closes #10272)
+Files: src/testdir/test_mapping.mnv
+
+Patch 8.2.4819
+Problem: Unmapping simplified keys also deletes other mapping.
+Solution: Only unmap a mapping with m_simplified set. (closes #10270)
+Files: src/map.c, src/testdir/test_mapping.mnv
+
+Patch 8.2.4820
+Problem: No simple programmatic way to find a specific mapping.
+Solution: Add getmappings(). (Ernie Rael, closes #10273)
+Files: runtime/doc/builtin.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/map.c, src/proto/map.pro, src/testdir/test_maparg.mnv
+
+Patch 8.2.4821
+Problem: Crash when imported autoload script was deleted.
+Solution: Initialize local variable. (closes #10274) Give a more meaningful
+ error message.
+Files: src/eval.c, src/mnv9script.c, src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.4822
+Problem: Setting ufunc to NULL twice.
+Solution: Set ufunc to NULL in find_exported(). (closes #19275)
+Files: src/eval.c, src/mnv9script.c
+
+Patch 8.2.4823
+Problem: Concatenating more than 2 strings in a :def function is
+ inefficient.
+Solution: Add a count to the CONCAT instruction. (closes #10276)
+Files: src/mnv9.h, src/mnv9cmds.c, src/mnv9compile.c, src/mnv9execute.c,
+ src/mnv9expr.c, src/mnv9instr.c, src/proto/mnv9instr.pro,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.4824
+Problem: Expression is evaluated multiple times.
+Solution: Evaluate expression once and store the result. (closes #10278)
+Files: src/map.c
+
+Patch 8.2.4825
+Problem: Can only get a list of mappings.
+Solution: Add the optional {abbr} argument. (Ernie Rael, closes #10277)
+ Rename to maplist(). Rename test file.
+Files: runtime/doc/builtin.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/map.c, src/proto/map.pro, src/testdir/test_maparg.mnv,
+ src/testdir/test_map_functions.mnv, src/testdir/Make_all.mak
+
+Patch 8.2.4826
+Problem: .cshtml files are not recognized.
+Solution: Use html filetype for .cshtml files. (Julien Voisin, closes #10212)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.4827
+Problem: Typo in variable name. (Gabriel Dupras)
+Solution: Rename the variable.
+Files: src/map.c
+
+Patch 8.2.4828
+Problem: Fix for unmapping simplified key not fully tested.
+Solution: Add a test case. (closes #10292)
+Files: src/map.c, src/testdir/test_mapping.mnv
+
+Patch 8.2.4829
+Problem: A key may be simplified to NUL.
+Solution: Use K_ZERO instead. Use macros instead of hard coded values.
+ (closes #10290)
+Files: src/getchar.c, src/misc2.c, src/testdir/test_termcodes.mnv
+
+Patch 8.2.4830
+Problem: Possible endless loop if there is unused typeahead.
+Solution: Only loop when the typeahead changed.
+Files: src/channel.c
+
+Patch 8.2.4831
+Problem: Crash when using maparg() and unmapping simplified keys.
+Solution: Do not keep a mapblock pointer. (closes #10294)
+Files: src/map.c, src/testdir/test_map_functions.mnv
+
+Patch 8.2.4832
+Problem: Passing zero instead of NULL to a pointer argument.
+Solution: Use NULL. (closes #10296)
+Files: src/getchar.c, src/term.c
+
+Patch 8.2.4833
+Problem: Failure of mapping not checked for.
+Solution: Check return value of ins_typebuf(). (closes #10299)
+Files: src/getchar.c, src/term.c, src/testdir/test_termcodes.mnv
+
+Patch 8.2.4834
+Problem: MNV9: some lines not covered by tests.
+Solution: Add a few more tests. Remove dead code.
+Files: src/mnv9execute.c, src/mnv9instr.c, src/mnv9.h,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.4835
+Problem: MNV9: some lines not covered by tests.
+Solution: Add a few more tests. Fix disassemble output.
+Files: src/mnv9execute.c, src/testdir/test_mnv9_cmd.mnv,
+ src/testdir/test_mnv9_script.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.4836
+Problem: MNV9: some lines not covered by tests.
+Solution: Remove dead code. Add disassemble tests.
+Files: src/mnv9execute.c, src/mnv9.h,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.4837 (after patch 8.2.0919)
+Problem: Modifiers not simplified when timed out or using feedkeys() with
+ 'n" flag.
+Solution: Adjust how mapped flag and timeout are used. (closes #10305)
+Files: src/getchar.c, src/testdir/test_paste.mnv,
+ src/testdir/test_termcodes.mnv
+
+Patch 8.2.4838
+Problem: Checking for absolute path is not trivial.
+Solution: Add isabsolutepath(). (closes #10303)
+Files: runtime/doc/builtin.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/filepath.c, src/proto/filepath.pro,
+ src/testdir/test_functions.mnv
+
+Patch 8.2.4839
+Problem: Compiler warning for unused argument.
+Solution: Add "UNUSED".
+Files: src/gui_gtk_x11.c
+
+Patch 8.2.4840
+Problem: Heredoc expression evaluated even when skipping.
+Solution: Don't evaluate when "skip" is set. (closes #10306)
+Files: src/evalvars.c, src/testdir/test_let.mnv
+
+Patch 8.2.4841
+Problem: Empty string considered an error for expand() when 'verbose' is
+ set. (Christian Brabandt)
+Solution: Do not give an error for an empty result. (closes #10307)
+Files: src/evalfunc.c, src/ex_docmd.c, src/proto/ex_docmd.pro,
+ src/filepath.c, src/testdir/test_expand_func.mnv
+
+Patch 8.2.4842 (after 8.2.4841)
+Problem: expand("%:p") is not empty when there is no buffer name.
+Solution: When ignoring errors still return NULL. (closes #10311)
+Files: src/ex_docmd.c, src/testdir/test_expand_func.mnv
+
+Patch 8.2.4843 (after 8.2.4807)
+Problem: Win32 GUI: Treating CTRL + ALT as AltGr is not backwards
+ compatible. (Axel Bender)
+Solution: Make a difference between left and right menu keys.
+ (closes #10308)
+Files: src/gui_w32.c
+
+Patch 8.2.4844
+Problem: <C-S-I> is simplified to <S-Tab>.
+Solution: Do not simplify CTRL if there is also SHIFT. (closes #10313)
+Files: src/getchar.c, src/testdir/test_gui.mnv
+
+Patch 8.2.4845
+Problem: Duplicate code.
+Solution: Move code below if/else. (closes #10314)
+Files: src/misc1.c
+
+Patch 8.2.4846 (after 8.2.4844)
+Problem: Termcodes test fails.
+Solution: use CTRL-SHIFT-V to insert an unsimplified key. (closes #10316)
+Files: runtime/doc/cmdline.txt, src/edit.c, src/getchar.c,
+ src/testdir/test_gui.mnv
+
+Patch 8.2.4847
+Problem: Crash when using uninitialized function pointer.
+Solution: Check for NULL pointer. (closes #10319, closes #10319)
+Files: src/eval.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.4848
+Problem: Local completion with mappings and simplification not working.
+Solution: Fix local completion <C-N>/<C-P> mappings not ignored if keys are
+ not simplified. (closes #10323)
+Files: src/getchar.c, src/testdir/test_popup.mnv
+
+Patch 8.2.4849
+Problem: Gleam filetype not detected.
+Solution: Add a pattern for Gleam files. (Mathias Jean Johansen,
+ closes #10326)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.4850
+Problem: Mksession mixes up "tabpages" and "curdir" arguments.
+Solution: Correct logic for storing tabpage in session. (closes #10312)
+Files: src/session.c, src/testdir/test_mksession.mnv
+
+Patch 8.2.4851
+Problem: Compiler warning for uninitialized variable.
+Solution: Use another variable to decide to restore option values.
+Files: src/session.c
+
+Patch 8.2.4852
+Problem: ANSI color index to RGB value not correct.
+Solution: Convert the cterm index to ANSI index. (closes #10321,
+ closes #9836)
+Files: src/term.c
+
+Patch 8.2.4853
+Problem: CI with FreeBSD is a bit outdated.
+Solution: Use 12.3 instead of 12.1. (closes #10333)
+Files: .cirrus.yml
+
+Patch 8.2.4854
+Problem: Array size does not match usage.
+Solution: Make array size 3 instead of 4. (Christian Brabandt, closes #10336)
+Files: src/term.c
+
+Patch 8.2.4855
+Problem: Robot files are not recognized.
+Solution: Add patterns for robot files. (Zoe Roux, closes #10339)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.4856
+Problem: MinGW compiler complains about unknown escape sequence.
+Solution: Avoid using a backslash in path. (Christian Brabandt,
+ closes #10337)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.4857
+Problem: Yaml indent for multiline is wrong.
+Solution: Adjust patterns. (closes #10328, closes #8740)
+Files: runtime/indent/yaml.mnv, runtime/indent/testdir/yaml.in,
+ runtime/indent/testdir/yaml.ok
+
+Patch 8.2.4858
+Problem: K_SPECIAL may be escaped twice.
+Solution: Avoid double escaping. (closes #10340)
+Files: src/highlight.c, src/misc2.c, src/proto/misc2.pro, src/term.c,
+ src/typval.c, src/testdir/test_eval_stuff.mnv,
+ src/testdir/test_feedkeys.mnv, src/testdir/test_functions.mnv,
+ src/testdir/test_mapping.mnv
+
+Patch 8.2.4859
+Problem: wget2 files are not recognized.
+Solution: Add patterns to recognize wget2. (Doug Kearns)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.4860
+Problem: MS-Windows: always uses current directory for executables.
+Solution: Check the NoDefaultCurrentDirectoryInExePath environment variable.
+ (Yasuhiro Matsumoto, closes #10341)
+Files: runtime/doc/builtin.txt, src/os_win32.c,
+ src/testdir/test_functions.mnv
+
+Patch 8.2.4861
+Problem: It is not easy to restore saved mappings.
+Solution: Make mapset() accept a dict argument. (Ernie Rael, closes #10295)
+Files: runtime/doc/builtin.txt, src/errors.h, src/evalfunc.c, src/map.c,
+ src/typval.c, src/proto/typval.pro,
+ src/testdir/test_map_functions.mnv,
+ src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.4862
+Problem: MNV9: test may fail when run with valgrind.
+Solution: Wait longer for callback if needed.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.4863
+Problem: Accessing freed memory in test without the +channel feature.
+ (Dominique Pellé)
+Solution: Do not generate PUSHCHANNEL or PUSHJOB if they are not
+ implemented. (closes #10350)
+Files: src/mnv9instr.c, src/errors.h, src/mnv9compile.c,
+ src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.4864 (after 8.2.4863)
+Problem: MNV9: script test fails.
+Solution: Remove "if" around declaration.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.4865
+Problem: :startinsert right after :stopinsert does not work when popup menu
+ is still visible.
+Solution: Use ins_compl_active() instead of pum_visible(). (closes #10352)
+Files: src/edit.c, src/testdir/test_ins_complete.mnv
+
+Patch 8.2.4866
+Problem: Duplicate code in "get" functions.
+Solution: Use get_var_from() for getwinvar(), gettabvar(), gettabwinvar()
+ and getbufvar(). (closes #10335)
+Files: src/evalvars.c
+
+Patch 8.2.4867
+Problem: Listing of mapping with K_SPECIAL is wrong.
+Solution: Adjust escaping of special characters. (closes #10351)
+Files: src/map.c, src/message.c, src/testdir/test_mapping.mnv
+
+Patch 8.2.4868
+Problem: When closing help window autocmds triggered for the wrong window.
+Solution: Figure out the new current window earlier. (closes #10348)
+Files: src/window.c, src/testdir/test_help.mnv
+
+Patch 8.2.4869
+Problem: Expression in command block does not look after NL.
+Solution: Skip over NL to check what follows. (closes #10358)
+Files: src/eval.c, src/proto/eval.pro, src/mnv9script.c,
+ src/testdir/test_usercommands.mnv
+
+Patch 8.2.4870
+Problem: MNV9: expression in :substitute is not compiled.
+Solution: Use an INSTR instruction if possible. (closes #10334)
+Files: src/evalfunc.c, src/regexp.c, src/mnv9execute.c, src/mnv9expr.c,
+ src/testdir/test_mnv9_builtin.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.4871
+Problem: MNV9: in :def function no error for using a range with a command
+ that does not accept one.
+Solution: Check for the command to accept a range. (closes #10330)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.4872
+Problem: MNV9: no error for using an expression only at the script level
+ when followed by an empty line.
+Solution: Do not check the line number but whether something follows.
+ (closes #10357)
+Files: src/ex_eval.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.4873
+Problem: MNV9: using "else" differs from using "endif/if !cond".
+Solution: Leave the block and enter another one. (closes #10320)
+Files: src/ex_eval.c, src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.4874
+Problem: Win32 GUI: horizontal scroll wheel not handled properly.
+Solution: Also handle WM_MOUSEHWHEEL. (closes #10309)
+Files: src/gui_w32.c
+
+Patch 8.2.4875
+Problem: MS-Windows: some .exe files are not recognized.
+Solution: Parse APPEXECLINK junctions. (closes #10302)
+Files: src/os_mswin.c, src/proto/os_mswin.pro, src/os_win32.c,
+ src/os_win32.h, src/testdir/test_functions.mnv
+
+Patch 8.2.4876
+Problem: MS-Windows: Shift-BS results in strange character in powershell.
+Solution: Add K_S_BS. (Christian Brabandt, closes #10283, closes #10279)
+Files: src/edit.c, src/keymap.h, src/term.c, src/testdir/shared.mnv,
+ src/testdir/test_edit.mnv
+
+Patch 8.2.4877
+Problem: MS-Windows: Using Normal colors for termguicolors causes problems.
+Solution: Do not use Normal colors to set sg_gui_fg and sg_gui_bg.
+ (Christian Brabandt, closes #10317, closes #10241)
+Files: src/highlight.c
+
+Patch 8.2.4878
+Problem: Valgrind warning for using uninitialized variable.
+Solution: Initialize the type of newtv.
+Files: src/strings.c
+
+Patch 8.2.4879
+Problem: Screendump test may fail when using valgrind.
+Solution: Wait longer for the first screendump.
+Files: src/testdir/test_mnv9_builtin.mnv, src/testdir/screendump.mnv
+
+Patch 8.2.4880
+Problem: MNV9: misplaced elseif causes invalid memory access.
+Solution: Check cs_idx not to be negative.
+Files: src/ex_eval.c
+
+Patch 8.2.4881
+Problem: "P" in Visual mode still changes some registers.
+Solution: Make "P" in Visual mode not change any register. (Shougo
+ Matsushita, closes #10349)
+Files: runtime/doc/change.txt, runtime/doc/index.txt,
+ runtime/doc/visual.txt, src/normal.c, src/testdir/test_visual.mnv
+
+Patch 8.2.4882
+Problem: Cannot make 'breakindent' use a specific column.
+Solution: Add the "column" entry in 'breakindentopt'. (Christian Brabandt,
+ closes #10362, closes #10325)
+Files: runtime/doc/options.txt, src/indent.c, src/structs.h,
+ src/testdir/test_breakindent.mnv
+
+Patch 8.2.4883
+Problem: String interpolation only works in heredoc.
+Solution: Support interpolated strings. Use syntax for heredoc consistent
+ with strings, similar to C#. (closes #10327)
+Files: runtime/doc/eval.txt, src/errors.h, src/eval.c, src/evalvars.c,
+ src/proto/evalvars.pro, src/typval.c, src/proto/typval.pro,
+ src/mnv9compile.c, src/proto/mnv9compile.pro, src/mnv9expr.c,
+ src/testdir/test_debugger.mnv, src/testdir/test_expr.mnv,
+ src/testdir/test_let.mnv, src/testdir/test_mnv9_assign.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.4884
+Problem: Test fails without the job/channel feature. (Dominique Pellé)
+Solution: Add condition.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.4885 (after 8.2.4884)
+Problem: Test fails with the job/channel feature.
+Solution: Move check for job/channel separately.
+Files: src/testdir/test_mnv9_script.mnv
+
+Patch 8.2.4886
+Problem: MNV9: redir in skipped block seen as assignment.
+Solution: Check for valid assignment.
+Files: src/ex_docmd.c, src/testdir/test_mnv9_assign.mnv
+
+Patch 8.2.4887
+Problem: Channel log does not show invoking a timer callback.
+Solution: Add a ch_log() call.
+Files: src/time.c
+
+Patch 8.2.4888
+Problem: Line number of lambda ignores line continuation.
+Solution: Use the line number of where the arguments are. Avoid outputting
+ "..." twice. (closes #10364)
+Files: src/userfunc.c
+
+Patch 8.2.4889
+Problem: CI only tests with FreeBSD 12.
+Solution: Also test with FreeBSD 13. (closes #10366)
+Files: .cirrus.yml
+
+Patch 8.2.4890
+Problem: Inconsistent capitalization in error messages.
+Solution: Make capitalization consistent. (Doug Kearns)
+Files: src/errors.h
+
+Patch 8.2.4891
+Problem: MNV help presentation could be better.
+Solution: Add an imported file for extra MNV help support. Show highlight
+ names in the color they have.
+Files: Filelist, runtime/import/dist/mnvhelp.mnv
+
+Patch 8.2.4892
+Problem: Test failures because of changed error messages.
+Solution: Adjust the expected error messages.
+Files: src/testdir/test_mnv9_assign.mnv,
+ src/testdir/test_mnv9_builtin.mnv, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_func.mnv, src/testdir/test_mnv9_script.mnv,
+ src/testdir/test_expand.mnv, src/testdir/test_tcl.mnv,
+ src/testdir/test_mnvscript.mnv
+
+Patch 8.2.4893 (after 8.2.4891)
+Problem: Distributed import files are not installed.
+Solution: Add rules to Makefile and NSIS.
+Files: src/Makefile, nsis/gmnv.nsi
+
+Patch 8.2.4894
+Problem: MS-Windows: not using italics.
+Solution: Use italics. Simplify the code. (closes #10359)
+Files: src/term.c
+
+Patch 8.2.4895
+Problem: Buffer overflow with invalid command with composing chars.
+Solution: Check that the whole character fits in the buffer.
+Files: src/ex_docmd.c, src/testdir/test_cmdline.mnv
+
+Patch 8.2.4896 (after 8.2.4869)
+Problem: Expression in command block does not look after NL when command is
+ typed.
+Solution: Skip over NL also when not in a script. (closes #10358)
+Files: src/eval.c, src/testdir/test_usercommands.mnv
+
+Patch 8.2.4897
+Problem: Comment inside an expression in lambda ignores the rest of the
+ expression.
+Solution: Truncate the line at the comment. (closes #10367)
+Files: src/eval.c, src/testdir/test_lambda.mnv
+
+Patch 8.2.4898
+Problem: Coverity complains about pointer usage.
+Solution: Move code for increment/decrement.
+Files: src/mnv9compile.c
+
+Patch 8.2.4899
+Problem: With latin1 encoding CTRL-W might go before the start of the
+ command line.
+Solution: Check already being at the start of the command line.
+Files: src/ex_getln.c, src/testdir/test_cmdline.mnv
+
+Patch 8.2.4900
+Problem: MNV9 expression test fails without the job feature.
+Solution: Add a check for the job feature. (Dominique Pellé, closes #10373)
+Files: src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.4901
+Problem: NULL pointer access when using invalid pattern.
+Solution: Check for failed regexp program.
+Files: src/buffer.c, src/testdir/test_buffer.mnv
+
+Patch 8.2.4902
+Problem: Mouse wheel scrolling is inconsistent.
+Solution: Use the MS-Windows system setting. (closes #10368)
+Files: runtime/doc/scroll.txt, src/gui_w32.c, src/mouse.c,
+ src/proto/mouse.pro, src/testing.c, src/testdir/test_gui.mnv
+
+Patch 8.2.4903
+Problem: Cannot get the current cmdline completion type and position.
+Solution: Add getcmdcompltype() and getcmdscreenpos(). (Shougo Matsushita,
+ closes #10344)
+Files: runtime/doc/builtin.txt, runtime/doc/usr_41.txt, src/cmdexpand.c,
+ src/proto/cmdexpand.pro, src/evalfunc.c, src/ex_getln.c,
+ src/proto/ex_getln.pro, src/usercmd.c, src/proto/usercmd.pro,
+ src/testdir/test_cmdline.mnv
+
+Patch 8.2.4904
+Problem: codecov includes MS-Windows install files.
+Solution: Ignore dosinst.c and uninstall.c.
+Files: .codecov.yml
+
+Patch 8.2.4905
+Problem: codecov includes MS-Windows install header file.
+Solution: Ignore dosinst.h.
+Files: .codecov.yml
+
+Patch 8.2.4906
+Problem: MS-Windows: cannot use transparent background.
+Solution: Make transparent background work with 'termguicolors' and NONE
+ background color. (Yasuhiro Matsumoto, closes #10310, closes #7162)
+Files: runtime/doc/options.txt, src/os_win32.c, src/term.c
+
+Patch 8.2.4907
+Problem: Some users do not want a line comment always inserted.
+Solution: Add the '/' flag to 'formatoptions' to not repeat the comment
+ leader after a statement when using "o".
+Files: runtime/doc/change.txt, src/option.h, src/change.c,
+ src/testdir/test_textformat.mnv
+
+Patch 8.2.4908
+Problem: No text formatting for // comment after a statement.
+Solution: format a comment when the 'c' flag is in 'formatoptions'.
+Files: src/textformat.c, src/testdir/test_textformat.mnv
+
+Patch 8.2.4909
+Problem: MODE_ enum entries names are too generic.
+Solution: use CH_MODE_.
+Files: src/structs.h, src/channel.c, src/job.c, src/terminal.c
+
+Patch 8.2.4910
+Problem: Imperfect coding.
+Solution: Make code nicer.
+Files: src/ex_getln.c
+
+Patch 8.2.4911
+Problem: The mode #defines are not clearly named.
+Solution: Prepend MODE_. Renumber them to put the mapped modes first.
+Files: src/mnv.h, src/autocmd.c, src/buffer.c, src/change.c,
+ src/charset.c, src/cindent.c, src/clipboard.c, src/debugger.c,
+ src/digraph.c, src/drawline.c, src/drawscreen.c, src/edit.c,
+ src/evalfunc.c, src/ex_cmds.c, src/ex_docmd.c, src/ex_getln.c,
+ src/fileio.c, src/fold.c, src/getchar.c, src/globals.h, src/gui.c,
+ src/gui_gtk.c, src/gui_w32.c, src/gui_xim.c, src/indent.c,
+ src/insexpand.c, src/macros.h, src/main.c, src/map.c, src/menu.c,
+ src/message.c, src/misc1.c, src/misc2.c, src/mouse.c,
+ src/netbeans.c, src/normal.c, src/ops.c, src/option.c,
+ src/os_unix.c, src/os_win32.c, src/popupmenu.c, src/search.c,
+ src/tag.c, src/screen.c, src/term.c, src/terminal.c,
+ src/textformat.c, src/window.c
+
+Patch 8.2.4912
+Problem: Using execute() to define a lambda doesn't work. (Ernie Rael)
+Solution: Put the getline function in evalarg. (closes #10375)
+Files: src/eval.c, src/evalfunc.c, src/proto/evalfunc.pro,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.4913
+Problem: Popup_hide() does not always have effect.
+Solution: Add the POPF_HIDDEN_FORCE flag. (closes #10376)
+Files: src/popupwin.c, src/mnv.h, src/testdir/test_popupwin.mnv,
+ src/testdir/dumps/Test_popup_prop_not_visible_01a.dump,
+ src/testdir/dumps/Test_popup_prop_not_visible_01b.dump
+
+Patch 8.2.4914
+Problem: String interpolation in :def function may fail.
+Solution: Do not terminate the expression. (closes #10377)
+Files: src/mnv9compile.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.4915
+Problem: Sometimes the cursor is in the wrong position.
+Solution: When the cursor moved to another line, recompute w_botline.
+ (closes #9736)
+Files: src/move.c
+
+Patch 8.2.4916 (after 8.2.4915)
+Problem: Mouse in Insert mode test fails.
+Solution: Fix the test and check relevant positions.
+Files: src/testdir/test_edit.mnv
+
+Patch 8.2.4917
+Problem: Fuzzy expansion of option names is not right.
+Solution: Pass the fuzzy flag down the call chain. (Christian Brabandt,
+ closes #10380, closes #10318)
+Files: src/cmdexpand.c, src/option.c, src/proto/option.pro,
+ src/testdir/test_options.mnv
+
+Patch 8.2.4918
+Problem: Conceal character from matchadd() displayed too many times.
+Solution: Check the syntax flag. (closes #10381, closes #7268)
+Files: src/drawline.c, src/testdir/test_matchadd_conceal.mnv
+
+Patch 8.2.4919
+Problem: Can add invalid bytes with :spellgood.
+Solution: Check for a valid word string.
+Files: src/mbyte.c, src/spellfile.c, src/errors.h,
+ src/testdir/test_spell_utf8.mnv
+
+Patch 8.2.4920 (after 8.2.4902)
+Problem: MS-Windows GUI: unused variables.
+Solution: Delete the variables. (John Marriott)
+Files: src/gui_w32.c
+
+Patch 8.2.4921
+Problem: Spell test fails because of new illegal byte check.
+Solution: Remove the test.
+Files: src/testdir/test_spell.mnv
+
+Patch 8.2.4922 (after 8.2.4916)
+Problem: Mouse test fails on MS-Windows.
+Solution: Set 'mousemodel' to "extend".
+Files: src/testdir/test_edit.mnv
+
+Patch 8.2.4923
+Problem: Test checks for terminal feature unnecessarily.
+Solution: Remove CheckRunMNVInTerminal. (closes #10383)
+Files: src/testdir/test_matchadd_conceal.mnv
+
+Patch 8.2.4924
+Problem: maparg() may return a string that cannot be reused.
+Solution: use msg_outtrans_special() instead of str2special().
+ (closes #10384)
+Files: src/message.c, src/option.c, src/testdir/test_map_functions.mnv,
+ src/testdir/test_mapping.mnv, src/testdir/test_options.mnv
+
+Patch 8.2.4925
+Problem: Trailing backslash may cause reading past end of line.
+Solution: Check for NUL after backslash.
+Files: src/textobject.c, src/testdir/test_textobjects.mnv
+
+Patch 8.2.4926
+Problem: #ifdef for crypt feature around too many lines.
+Solution: Move code outside of #ifdef. (closes #10388)
+Files: src/option.c
+
+Patch 8.2.4927
+Problem: Return type of remove() incorrect when using three arguments.
+Solution: Use first argument type when there are three arguments.
+ (closes #10387)
+Files: src/evalfunc.c, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.4928
+Problem: Various white space and cosmetic mistakes.
+Solution: Change spaces to tabs, improve comments.
+Files: src/bufwrite.c, src/channel.c, src/cindent.c, src/crypt.c,
+ src/debugger.c, src/digraph.c, src/edit.c, src/evalwindow.c,
+ src/ex_cmds.c, src/ex_docmd.c, src/ex_getln.c, src/fileio.c,
+ src/filepath.c, src/gui.c, src/highlight.c, src/indent.c,
+ src/insexpand.c, src/job.c, src/keymap.h, src/macros.h,
+ src/menu.c, src/misc1.c, src/misc2.c, src/mouse.c, src/move.c,
+ src/normal.c, src/ops.c, src/option.c, src/option.h, src/search.c,
+ src/session.c, src/spellsuggest.c, src/structs.h, src/tag.c,
+ src/term.c, src/terminal.c, src/textformat.c, src/typval.c,
+ src/ui.c, src/userfunc.c, src/mnv.h, src/mnv9.h,
+ src/mnv9compile.c, src/mnv9execute.c, src/window.c,
+ src/testdir/test_cursorline.mnv, src/os_unix.c, src/if_lua.c,
+ src/if_py_both.h, src/os_amiga.c, src/os_win32.c, src/os_mswin.c,
+ src/os_vms.c, src/os_vms_conf.h
+
+Patch 8.2.4929
+Problem: Off-by-one error in statusline item.
+Solution: Subtrace one less. (closes #10394, closes #5599)
+Files: src/buffer.c, src/testdir/test_statusline.mnv,
+ src/testdir/dumps/Test_statusline_hl.dump
+
+Patch 8.2.4930
+Problem: Interpolated string expression requires escaping.
+Solution: Do not require escaping in the expression.
+Files: runtime/doc/eval.txt, src/typval.c, src/proto/typval.pro,
+ src/dict.c, src/eval.c, src/evalvars.c, src/proto/evalvars.pro,
+ src/mnv9compile.c, src/proto/mnv9compile.pro, src/mnv9expr.c,
+ src/mnv9instr.c, src/alloc.c, src/proto/alloc.pro,
+ src/testdir/test_expr.mnv, src/testdir/test_let.mnv
+
+Patch 8.2.4931
+Problem: Crash with sequence of Perl commands.
+Solution: Move PUTBACK to another line. (closes #10386)
+Files: src/if_perl.xs
+
+Patch 8.2.4932
+Problem: Not easy to filter the output of maplist().
+Solution: Add mode_bits to the dictionary. (Ernie Rael, closes #10356)
+Files: runtime/doc/builtin.txt, src/map.c,
+ src/testdir/test_map_functions.mnv,
+ src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.4933
+Problem: A few more capitalization mistakes in error messages.
+Solution: Adjust capitalization. (Doug Kearns)
+Files: src/errors.h
+
+Patch 8.2.4934
+Problem: String interpolation fails when not evaluating.
+Solution: Skip the expression when not evaluating. (closes #10398)
+Files: src/typval.c, src/evalvars.c, src/proto/evalvars.pro,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.4935
+Problem: With 'foldmethod' "indent" some lines are not included in the
+ fold. (Oleg Koshovetc)
+Solution: Fix it. (Brandon Simmons, closes #10399, closes #3214)
+Files: src/fold.c, src/testdir/test_fold.mnv
+
+Patch 8.2.4936
+Problem: MS-Windows: mouse coordinates for scroll event are wrong.
+Solution: Convert coordinates to the text area coordinates. (closes #10400)
+Files: src/gui_w32.c
+
+Patch 8.2.4937 (after 8.2.4931)
+Problem: No test for what 8.2.4931 fixes.
+Solution: Add a test that triggers a valgrind error.
+Files: src/testdir/test_perl.mnv
+
+Patch 8.2.4938
+Problem: Crash when matching buffer with invalid pattern.
+Solution: Check for NULL regprog.
+Files: src/buffer.c, src/testdir/test_buffer.mnv
+
+Patch 8.2.4939
+Problem: matchfuzzypos() with "matchseq" does not have all positions.
+Solution: Also add a position for white space. (closes #10404)
+Files: runtime/doc/builtin.txt, src/search.c,
+ src/testdir/test_matchfuzzy.mnv
+
+Patch 8.2.4940
+Problem: Some code is never used.
+Solution: Remove dead code. Add a few more test cases.
+Files: src/mnv9expr.c, src/proto/mnv9expr.pro, src/mnv9compile.c,
+ src/testdir/test_mnv9_builtin.mnv, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.4941
+Problem: '[ and '] marks may be wrong after undo.
+Solution: Adjust the '[ and '] marks if needed. (closes #10407, closes #1281)
+Files: src/undo.c, src/testdir/test_undo.mnv
+
+Patch 8.2.4942
+Problem: Error when setting 'filetype' in help file again.
+Solution: Deal with text property type already existing. (closes #10409)
+Files: runtime/import/dist/mnvhelp.mnv
+
+Patch 8.2.4943
+Problem: Changing 'switchbuf' may have no effect.
+Solution: Handle 'switchbuf' in didset_string_options(). (Sean Dewar,
+ closes #10406)
+Files: src/optionstr.c, src/testdir/test_options.mnv
+
+Patch 8.2.4944
+Problem: Text properties are wrong after "cc". (Axel Forsman)
+Solution: Pass the deleted byte count to inserted_bytes(). (closes #10412,
+ closes #7737, closes #5763)
+Files: src/change.c, src/testdir/test_textprop.mnv
+
+Patch 8.2.4945
+Problem: Inconsistent use of white space.
+Solution: Use Tabs and Spaces consistently.
+Files: src/os_amiga.c, src/if_py_both.h, src/os_win32.c, src/os_mswin.c,
+ src/os_vms.c, src/os_vms_conf.h
+
+Patch 8.2.4946
+Problem: MNV9: some code not covered by tests.
+Solution: Add a few more test cases. Remove dead code.
+Files: src/mnv9expr.c, src/testdir/test_mnv9_expr.mnv,
+ src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.4947
+Problem: Text properties not adjusted when accepting spell suggestion.
+Solution: Adjust text properties when text changes. (closes #10414)
+Files: src/spell.c, src/spellsuggest.c, src/testdir/test_textprop.mnv
+
+Patch 8.2.4948
+Problem: Cannot use Perl heredoc in nested :def function. (Virginia
+ Senioria)
+Solution: Only concatenate heredoc lines when not in a nested function.
+ (closes #10415)
+Files: src/userfunc.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.4949
+Problem: MNV9: some code not covered by tests.
+Solution: Add a few more test cases. Fix double error message.
+Files: src/mnv9expr.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.4950
+Problem: Text properties position wrong after shifting text.
+Solution: Adjust the text properties when shifting a block of text.
+ (closes #10418)
+Files: src/ops.c, src/testdir/test_textprop.mnv
+
+Patch 8.2.4951
+Problem: Smart indenting done when not enabled.
+Solution: Check option values before setting can_si. (closes #10420)
+Files: src/indent.c, src/proto/indent.pro, src/change.c, src/edit.c,
+ src/ops.c, src/testdir/test_smartindent.mnv
+
+Patch 8.2.4952
+Problem: GUI test will fail if color scheme changes.
+Solution: Reduce the test for now.
+Files: src/testdir/test_gui.mnv
+
+Patch 8.2.4953
+Problem: With 'smartindent' inserting '}' after completion goes wrong.
+Solution: Check the cursor is in indent. (closes #10420)
+Files: src/indent.c, src/testdir/test_smartindent.mnv
+
+Patch 8.2.4954
+Problem: Inserting line breaks text property spanning more than one line.
+Solution: Check TP_FLAG_CONT_PREV and TP_FLAG_CONT_NEXT. (closes #10423)
+Files: src/textprop.c, src/testdir/test_textprop.mnv
+
+Patch 8.2.4955
+Problem: Text property in wrong position after auto-indent.
+Solution: Adjust text property columns. (closes #10422, closes #7719)
+Files: src/change.c, src/testdir/test_textprop.mnv
+
+Patch 8.2.4956
+Problem: Reading past end of line with "gf" in Visual block mode.
+Solution: Do not include the NUL in the length.
+Files: src/normal.c, src/testdir/test_gf.mnv
+
+Patch 8.2.4957
+Problem: Text properties in a wrong position after a block change.
+Solution: Adjust the properties columns. (closes #10427)
+Files: src/ops.c, src/testdir/test_textprop.mnv
+
+Patch 8.2.4958
+Problem: A couple conditions are always true.
+Solution: Remove the conditions. (Goc Dundar, closes #10428)
+Files: src/evalfunc.c, src/quickfix.c
+
+Patch 8.2.4959
+Problem: Using NULL regexp program.
+Solution: Check for regexp program becoming NULL in more places.
+Files: src/buffer.c, src/testdir/test_buffer.mnv
+
+Patch 8.2.4960
+Problem: Text properties that cross line boundary are not correctly updated
+ for a deleted line.
+Solution: Correct computing location of text property entry. (Paul Ollis,
+ closes #10431, closes #10430)
+Files: src/memline.c, src/testdir/test_textprop.mnv
+
+Patch 8.2.4961
+Problem: Build error with a certain combination of features.
+Solution: Adjust #if. (John Marriott)
+Files: src/memline.c
+
+Patch 8.2.4962
+Problem: Files show up in git status.
+Solution: Adjust the list of ignored files. Clean up more test files.
+ (Shane xb Qian, closes #9929)
+Files: .gitignore, src/testdir/Makefile
+
+Patch 8.2.4963
+Problem: Expanding path with "/**" may overrun end of buffer.
+Solution: Use mnv_snprintf().
+Files: src/filepath.c
+
+Patch 8.2.4964
+Problem: MS-Windows GUI: mouse event test is flaky.
+Solution: Add a short delay after generating a mouse event.
+Files: src/testdir/test_gui.mnv
+
+Patch 8.2.4965
+Problem: GUI: testing mouse move event depends on screen cell size.
+Solution: Multiply the row and column with the screen cell size.
+Files: runtime/doc/testing.txt, src/testing.c, src/testdir/test_gui.mnv
+
+Patch 8.2.4966
+Problem: MS-Windows GUI: mouse event test gets extra event.
+Solution: Ignore one move event.
+Files: src/testdir/test_gui.mnv
+
+Patch 8.2.4967 (after 8.2.4966)
+Problem: MS-Windows GUI: mouse event test sometimes fails.
+Solution: Ignore one move event only if there is an extra event.
+Files: src/testdir/test_gui.mnv
+
+Patch 8.2.4968
+Problem: Reading past end of the line when C-indenting.
+Solution: Check for NUL.
+Files: src/cindent.c, src/testdir/test_cindent.mnv
+
+Patch 8.2.4969
+Problem: Changing text in Visual mode may cause invalid memory access.
+Solution: Check the Visual position after making a change.
+Files: src/change.c, src/edit.c, src/misc2.c, src/proto/misc2.pro,
+ src/testdir/test_visual.mnv
+
+Patch 8.2.4970
+Problem: "eval 123" gives an error, "eval 'abc'" does not.
+Solution: Also give an error when evaluating only a string. (closes #10434)
+Files: src/ex_eval.c, src/testdir/test_mnv9_cmd.mnv
+
+Patch 8.2.4971
+Problem: MNV9: interpolated string seen as range.
+Solution: Recognize an interpolated string at the start of a command line.
+ (closes #10434)
+Files: src/ex_docmd.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.4972
+Problem: MNV9: compilation fails when using dict member when skipping.
+Solution: Do not generate ISN_USEDICT when skipping. (closes #10433)
+Files: src/mnv9expr.c, src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.4973
+Problem: MNV9: type error for list unpack mentions argument.
+Solution: Mention variable. (close #10435)
+Files: src/mnv9.h, src/mnv9execute.c, src/mnv9instr.c,
+ src/proto/mnv9instr.pro, src/mnv9compile.c,
+ src/testdir/test_mnv9_script.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.4974
+Problem: ":so" command may read after end of buffer.
+Solution: Compute length of text properly.
+Files: src/scriptfile.c, src/testdir/test_source.mnv
+
+Patch 8.2.4975
+Problem: Recursive command line loop may cause a crash.
+Solution: Limit recursion of getcmdline().
+Files: src/ex_getln.c, src/testdir/test_cmdline.mnv
+
+Patch 8.2.4976
+Problem: Coverity complains about not restoring a saved value.
+Solution: Restore value before handling error.
+Files: src/mnv9execute.c
+
+Patch 8.2.4977
+Problem: Memory access error when substitute expression changes window.
+Solution: Disallow changing window in substitute expression.
+Files: src/ex_cmds.c, src/testdir/test_substitute.mnv
+
+Patch 8.2.4978
+Problem: No error if engine selection atom is not at the start.
+Solution: Give an error. (Christian Brabandt, closes #10439)
+Files: runtime/doc/pattern.txt, src/errors.h, src/regexp_bt.c,
+ src/regexp_nfa.c, src/testdir/test_regexp_latin.mnv
+
+Patch 8.2.4979
+Problem: Accessing freed memory when line is flushed.
+Solution: Make a copy of the pattern to search for.
+Files: src/window.c, src/testdir/test_tagjump.mnv
+
+Patch 8.2.4980
+Problem: When 'shortmess' contains 'A' loading a session may still warn for
+ an existing swap file. (Melker Österberg)
+Solution: Keep the 'A' flag to 'shortmess' in the session file.
+ (closes #10443)
+Files: src/session.c, src/testdir/test_mksession.mnv
+
+Patch 8.2.4981
+Problem: It is not possible to manipulate autocommands.
+Solution: Add functions to add, get and set autocommands. (Yegappan
+ Lakshmanan, closes #10291)
+Files: runtime/doc/autocmd.txt, runtime/doc/builtin.txt,
+ runtime/doc/usr_41.txt, src/autocmd.c, src/evalfunc.c,
+ src/proto/autocmd.pro, src/testdir/test_autocmd.mnv,
+ src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.4982
+Problem: Colors in terminal window are not 100% correct.
+Solution: Use g:terminal_ansi_colors as documented. (closes #10429,
+ closes #7227 closes #10347)
+Files: src/job.c, src/option.c, src/proto/term.pro,
+ src/terminal.c, src/proto/terminal.pro, src/term.c,
+ src/testdir/test_functions.mnv, src/testdir/test_terminal.mnv
+
+Patch 8.2.4983 (after 8.2.4982)
+Problem: Colors test fails in the GUI.
+Solution: Reset g:terminal_ansi_colors.
+Files: src/testdir/test_functions.mnv
+
+Patch 8.2.4984
+Problem: Dragging statusline fails for window with winbar.
+Solution: Fix off-by-one error. (closes #10448)
+Files: src/mouse.c, src/testdir/test_winbar.mnv
+
+Patch 8.2.4985
+Problem: PVS warns for possible array underrun.
+Solution: Add a check for a positive value. (Goc Dundar, closes #10451)
+Files: src/spell.c
+
+Patch 8.2.4986
+Problem: Some github actions are outdated.
+Solution: Update CodeQl to v2, update checkout to v3. (closes #10450)
+Files: .github/workflows/ci.yml, .github/workflows/codeql-analysis.yml,
+ .github/workflows/coverity.yml
+
+Patch 8.2.4987
+Problem: After deletion a small fold may be closable.
+Solution: Check for a reverse range. (Brandon Simmons, closes #10457)
+Files: src/fold.c, src/testdir/test_fold.mnv
+
+Patch 8.2.4988
+Problem: Textprop in wrong position when replacing multi-byte chars.
+Solution: Adjust textprop position. (closes #10461)
+Files: src/change.c, src/testdir/test_textprop.mnv
+
+Patch 8.2.4989
+Problem: Cannot specify a function name for :defcompile.
+Solution: Implement a function name argument for :defcompile.
+Files: runtime/doc/mnv9.txt, src/userfunc.c, src/proto/userfunc.pro,
+ src/mnv9execute.c, src/ex_cmds.h, src/testdir/test_mnv9_cmd.mnv,
+ src/testdir/test_mnv9_disassemble.mnv
+
+Patch 8.2.4990 (after 8.2.4989)
+Problem: Memory leak when :defcompile fails.
+Solution: Free fname when returning early.
+Files: src/userfunc.c
+
+Patch 8.2.4991
+Problem: No test for what patch 8.1.0535 fixes.
+Solution: Add a test. (closes #10462)
+Files: src/testdir/test_fold.mnv
+
+Patch 8.2.4992 (after 8.2.4989)
+Problem: Compiler warning for possibly uninitialized variable. (Tony
+ Mechelynck)
+Solution: Initialize variable in the caller instead of in the function.
+Files: src/userfunc.c, src/mnv9execute.c
+
+Patch 8.2.4993
+Problem: smart/C/lisp indenting is optional, which makes the code more
+ complex, while it only reduces the executable size a bit.
+Solution: Graduate FEAT_CINDENT, FEAT_SMARTINDENT and FEAT_LISP.
+Files: runtime/doc/builtin.txt, runtime/doc/indent.txt,
+ runtime/doc/options.txt, runtime/doc/various.txt, src/feature.h,
+ src/buffer.c, src/change.c, src/cindent.c, src/charset.c,
+ src/edit.c, src/evalfunc.c, src/indent.c, src/insexpand.c,
+ src/main.c, src/mouse.c, src/ops.c, src/option.c, src/optionstr.c,
+ src/register.c, src/search.c, src/textformat.c, src/version.c,
+ src/option.h, src/optiondefs.h, src/structs.h, src/globals.h,
+ src/testdir/test_edit.mnv
+
+Patch 8.2.4994
+Problem: Tests are using legacy functions.
+Solution: Convert a few tests to use :def functions.
+Files: src/testdir/test_cindent.mnv
+
+Patch 8.2.4995 (after 8.2.4992)
+Problem: Still a compiler warning for possibly uninitialized variable.
+ (Tony Mechelynck)
+Solution: Initialize variables.
+Files: src/mnv9execute.c
+
+Patch 8.2.4996 (after 8.2.4969)
+Problem: setbufline() may change Visual selection. (Qiming Zhao)
+Solution: Disable Visual mode when using another buffer. (closes #10466)
+Files: src/evalbuffer.c, src/testdir/test_bufline.mnv
+
+Patch 8.2.4997
+Problem: Python: changing hidden buffer can cause the display to be messed
+ up.
+Solution: Do not mark changed lines when using another buffer. (Paul Ollis,
+ closes #10437, closes #7972)
+Files: src/if_py_both.h, src/testdir/test_python3.mnv
+
+Patch 8.2.4998
+Problem: MNV9: crash when using multiple funcref().
+Solution: Check if varargs type is NULL. (closes #10467)
+Files: src/mnv9type.c, src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.4999
+Problem: Filetype test table is not properly sorted.
+Solution: Sort by filetype. (Doug Kearns)
+Files: src/testdir/test_filetype.mnv
+
+Patch 8.2.5000
+Problem: No patch for documentation updates.
+Solution: Update documentation files.
+Files: runtime/doc/arabic.txt, runtime/doc/autocmd.txt,
+ runtime/doc/builtin.txt, runtime/doc/change.txt,
+ runtime/doc/channel.txt, runtime/doc/cmdline.txt,
+ runtime/doc/diff.txt, runtime/doc/digraph.txt,
+ runtime/doc/editing.txt, runtime/doc/eval.txt,
+ runtime/doc/filetype.txt, runtime/doc/fold.txt,
+ runtime/doc/ft_ada.txt, runtime/doc/ft_ps1.txt,
+ runtime/doc/ft_raku.txt, runtime/doc/ft_rust.txt,
+ runtime/doc/ft_sql.txt, runtime/doc/gui.txt,
+ runtime/doc/gui_w32.txt, runtime/doc/helphelp.txt,
+ runtime/doc/help.txt, runtime/doc/if_cscop.txt,
+ runtime/doc/if_lua.txt, runtime/doc/if_perl.txt,
+ runtime/doc/if_pyth.txt, runtime/doc/if_tcl.txt,
+ runtime/doc/indent.txt, runtime/doc/index.txt,
+ runtime/doc/insert.txt, runtime/doc/intro.txt,
+ runtime/doc/map.txt, runtime/doc/mbyte.txt,
+ runtime/doc/message.txt, runtime/doc/motion.txt,
+ runtime/doc/netbeans.txt, runtime/doc/options.txt,
+ runtime/doc/os_dos.txt, runtime/doc/os_vms.txt,
+ runtime/doc/os_win32.txt, runtime/doc/pattern.txt,
+ runtime/doc/pi_netrw.txt, runtime/doc/pi_zip.txt,
+ runtime/doc/popup.txt, runtime/doc/print.txt,
+ runtime/doc/quickfix.txt, runtime/doc/quickref.txt,
+ runtime/doc/remote.txt, runtime/doc/repeat.txt,
+ runtime/doc/rileft.txt, runtime/doc/scroll.txt,
+ runtime/doc/sign.txt, runtime/doc/spell.txt,
+ runtime/doc/sponsor.txt, runtime/doc/starting.txt,
+ runtime/doc/syntax.txt, runtime/doc/tabpage.txt,
+ runtime/doc/tagsrch.txt, runtime/doc/terminal.txt,
+ runtime/doc/term.txt, runtime/doc/testing.txt,
+ runtime/doc/textprop.txt, runtime/doc/tips.txt,
+ runtime/doc/todo.txt, runtime/doc/uganda.txt,
+ runtime/doc/undo.txt, runtime/doc/usr_02.txt,
+ runtime/doc/usr_04.txt, runtime/doc/usr_05.txt,
+ runtime/doc/usr_06.txt, runtime/doc/usr_08.txt,
+ runtime/doc/usr_09.txt, runtime/doc/usr_12.txt,
+ runtime/doc/usr_20.txt, runtime/doc/usr_29.txt,
+ runtime/doc/usr_40.txt, runtime/doc/usr_41.txt,
+ runtime/doc/usr_45.txt, runtime/doc/usr_46.txt,
+ runtime/doc/usr_50.txt, runtime/doc/usr_51.txt,
+ runtime/doc/usr_52.txt, runtime/doc/usr_90.txt,
+ runtime/doc/usr_toc.txt, runtime/doc/various.txt,
+ runtime/doc/version5.txt, runtime/doc/version6.txt,
+ runtime/doc/version7.txt, runtime/doc/version8.txt,
+ runtime/doc/version9.txt, runtime/doc/vi_diff.txt,
+ runtime/doc/mnv9.txt, runtime/doc/visual.txt,
+ runtime/doc/windows.txt, runtime/doc/tags, runtime/doc/Makefile
+
+Patch 8.2.5001
+Problem: Checking translations affects the search pattern history.
+Solution: Use "keeppatterns". (Doug Kearns)
+Files: src/po/check.mnv
+
+Patch 8.2.5002
+Problem: deletebufline() may change Visual selection.
+Solution: Disable Visual mode when using another buffer. (closes #10469)
+Files: src/evalbuffer.c, src/testdir/test_bufline.mnv
+
+Patch 8.2.5003
+Problem: Cannot do bitwise shifts.
+Solution: Add the >> and << operators. (Yegappan Lakshmanan, closes #8457)
+Files: runtime/doc/eval.txt, src/errors.h, src/eval.c, src/structs.h,
+ src/mnv.h, src/mnv9execute.c, src/mnv9expr.c,
+ src/testdir/test_expr.mnv, src/testdir/test_mnv9_disassemble.mnv,
+ src/testdir/test_mnv9_expr.mnv
+
+Patch 8.2.5004
+Problem: Right shift on negative number does not work as documented.
+Solution: Use a uvarnumber_T type cast.
+Files: runtime/doc/eval.txt, src/eval.c, src/mnv9expr.c,
+ src/mnv9execute.c, src/charset.c, src/testdir/test_expr.mnv
+
+Patch 8.2.5005 (after 8.2.5003)
+Problem: Compiler warning for uninitialized variable. (John Marriott)
+Solution: Initialize the pointer to NULL.
+Files: src/mnv9expr.mnv
+
+Patch 8.2.5006 (after 8.2.5003)
+Problem: Asan warns for undefined behavior.
+Solution: Cast the shifted value to unsigned.
+Files: src/eval.c, src/mnv9expr.c, src/mnv9execute.c
+
+Patch 8.2.5007
+Problem: Spell suggestion may use uninitialized memory. (Zdenek Dohnal)
+Solution: Avoid going over the end of the word.
+Files: src/spellsuggest.c, src/testdir/test_spell_utf8.mnv
+
+Patch 8.2.5008
+Problem: When 'formatoptions' contains "/" wrongly wrapping a long trailing
+ comment.
+Solution: Pass the OPENLINE_FORMAT flag.
+Files: src/change.c, src/mnv.h, src/textformat.c,
+ src/testdir/test_textformat.mnv
+
+Patch 8.2.5009
+Problem: Fold may not be closable after appending.
+Solution: Set the fd_small flag to MAYBE. (Brandon Simmons, closes #10471)
+Files: src/fold.c, src/testdir/test_fold.mnv
+
+Patch 8.2.5010
+Problem: The terminal debugger uses various global variables.
+Solution: Add a dictionary to hold the terminal debugger preferences.
+Files: runtime/doc/terminal.txt,
+ runtime/pack/dist/opt/termdebug/plugin/termdebug.mnv
+
+Patch 8.2.5011
+Problem: Replacing an autocommand requires several lines.
+Solution: Add the "replace" flag to autocmd_add(). (Yegappan Lakshmanan,
+ closes #10473)
+Files: runtime/doc/autocmd.txt, runtime/doc/builtin.txt, src/autocmd.c,
+ src/testdir/test_autocmd.mnv
+
+Patch 8.2.5012
+Problem: Cannot select one character inside ().
+Solution: Do not try to extend the area if it is empty. (closes #10472,
+ closes #6616)
+Files: src/textobject.c, src/testdir/test_textobjects.mnv
+
+Patch 8.2.5013
+Problem: After text formatting the cursor may be in an invalid position.
+Solution: Correct the cursor position after formatting.
+Files: src/textformat.c, src/testdir/test_textformat.mnv
+
+Patch 8.2.5014
+Problem: Byte offsets are wrong when using text properties.
+Solution: Make sure text properties do not affect the byte counts.
+ (Paul Ollis, closes #10474)
+Files: src/memline.c, src/textprop.c, src/testdir/test_textprop.mnv
+
+Patch 8.2.5015
+Problem: Hoon and Moonscript files are not recognized.
+Solution: Add filetype patterns. (Goc Dundar, closes #10478)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.5016
+Problem: Access before start of text with a put command.
+Solution: Check the length is more than zero.
+Files: src/register.c, src/testdir/test_put.mnv
+
+Patch 8.2.5017
+Problem: Gcc 12.1 warns for uninitialized variable.
+Solution: Initialize the variable. (closes #10476)
+Files: src/evalvars.c
+
+Patch 8.2.5018
+Problem: MNV9: some code is not covered by tests.
+Solution: Delete dead code.
+Files: src/mnv9instr.c, src/proto/mnv9instr.pro, src/mnv9compile.c,
+ src/mnv9expr.c,
+
+Patch 8.2.5019
+Problem: Cannot get the first screen column of a character.
+Solution: Let virtcol() optionally return a list. (closes #10482,
+ closes #7964)
+Files: runtime/doc/builtin.txt, src/evalfunc.c,
+ src/testdir/test_functions.mnv, src/testdir/test_mnv9_builtin.mnv
+
+Patch 8.2.5020
+Problem: Using 'imstatusfunc' and 'imactivatefunc' breaks 'foldopen'.
+Solution: Save and restore the KeyTyped flag. (closes #10479)
+Files: src/gui_xim.c, src/testdir/test_iminsert.mnv
+
+
+Patch 8.2.5021
+Problem: Build fails with normal features and +terminal. (Dominique Pellé)
+Solution: Add #ifdefs. (closes #10484)
+Files: src/terminal.c
+
+Patch 8.2.5022
+Problem: 'completefunc'/'omnifunc' error does not end completion.
+Solution: Check if there was an error or exception. (closes #10486,
+ closes #4218)
+Files: src/insexpand.c, src/testdir/test_ins_complete.mnv
+
+Patch 8.2.5023
+Problem: Substitute overwrites allocated buffer.
+Solution: Disallow undo when in a substitute command.
+Files: src/normal.c, src/undo.c, src/testdir/test_substitute.mnv
+
+Patch 8.2.5024
+Problem: Using freed memory with "]d".
+Solution: Copy the pattern before searching.
+Files: src/normal.c, src/testdir/test_tagjump.mnv
+
+Patch 8.2.5025
+Problem: MNV9: a few lines not covered by tests.
+Solution: Add a few tests.
+Files: src/mnv9script.c, src/testdir/test_mnv9_assign.mnv,
+ src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.5026
+Problem: MNV9: a few lines not covered by tests.
+Solution: Delete dead code. Add a few test cases. make "12->func()" work.
+Files: src/mnv9type.c, src/ex_docmd.c, src/proto/ex_docmd.pro,
+ src/mnv9compile.c, src/testdir/test_mnv9_assign.mnv,
+ src/testdir/test_mnv9_func.mnv
+
+Patch 8.2.5027
+Problem: Error for missing :endif when an exception was thrown. (Dani
+ Dickstein)
+Solution: Do not give an error when aborting. (closes #10490)
+Files: src/ex_docmd.c, src/testdir/test_trycatch.mnv
+
+Patch 8.2.5028
+Problem: Syntax regexp matching can be slow.
+Solution: Adjust the counters for checking the timeout to check about once
+ per msec. (closes #10487, closes #2712)
+Files: src/regexp_bt.c, src/regexp_nfa.c
+
+Patch 8.2.5029
+Problem: "textlock" is always zero.
+Solution: Remove "textlock" and rename "textwinlock" to "textlock".
+ (closes #10489)
+Files: runtime/doc/insert.txt, runtime/doc/tags, src/beval.c,
+ src/change.c, src/edit.c, src/errors.h, src/eval.c, src/ex_cmds.c,
+ src/ex_getln.c, src/proto/ex_getln.pro, src/globals.h,
+ src/indent.c, src/insexpand.c, src/map.c, src/register.c,
+ src/undo.c, src/window.c, src/testdir/test_edit.mnv,
+ src/testdir/test_ins_complete.mnv, src/testdir/test_popup.mnv,
+ src/testdir/test_quickfix.mnv
+
+Patch 8.2.5030
+Problem: autocmd_add() can only handle one event and pattern.
+Solution: Support a list of events and patterns. (Yegappan Lakshmanan,
+ closes #10483)
+Files: runtime/doc/builtin.txt, src/autocmd.c, src/errors.h,
+ src/testdir/test_autocmd.mnv
+
+Patch 8.2.5031
+Problem: Cannot easily run the benchmarks.
+Solution: Have "make benchmark" in the src directory work.
+Files: src/Makefile, src/testdir/Makefile
+
+Patch 8.2.5032
+Problem: Python 3 test fails without the GUI.
+Solution: Check the balloon_eval feature is available.
+Files: src/testdir/test_python3.mnv
+
+Patch 8.2.5033 (after 8.2.5030)
+Problem: Build error with +eval but without +quickfix. Warning for
+ uninitialized variable.
+Solution: Adjust #ifdefs. (John Marriott)
+Files: src/errors.h, src/autocmd.c
+
+Patch 8.2.5034
+Problem: There is no way to get the byte index from a virtual column.
+Solution: Add virtcol2col(). (Yegappan Lakshmanan, closes #10477,
+ closes #10098)
+Files: runtime/doc/builtin.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/move.c, src/proto/move.pro, src/testdir/test_cursor_func.mnv
+
+Patch 8.2.5035
+Problem: When splitting a window the changelist position moves.
+Solution: Set the changelist index a bit later. (closes #10493)
+Files: src/window.c, src/testdir/test_changelist.mnv,
+ src/testdir/test_normal.mnv
+
+Patch 8.2.5036 (after 8.2.5028)
+Problem: Using two counters for timeout check in NFA engine.
+Solution: Use only one counter. Tune the counts based on guessing.
+Files: src/regexp_nfa.c
+
+Patch 8.2.5037
+Problem: Cursor position may be invalid after "0;" range.
+Solution: Check the cursor position when it was set by ";" in the range.
+Files: src/ex_docmd.c, src/testdir/test_excmd.mnv
+
+Patch 8.2.5038
+Problem: A finished terminal in a popup window does not show a scrollbar.
+Solution: Show the scrollbar if the terminal job is finished. (closes
+ #10497)
+Files: src/popupwin.c, src/testdir/test_popupwin.mnv,
+ src/testdir/dumps/Test_popupwin_poptermscroll_1.dump,
+ src/testdir/dumps/Test_popupwin_poptermscroll_2.dump,
+ src/testdir/dumps/Test_popupwin_poptermscroll_3.dump
+
+Patch 8.2.5039
+Problem: Confusing error if first argument of popup_create() is wrong.
+Solution: Give a more informative error.
+Files: src/popupwin.c, src/testdir/test_popupwin.mnv, src/errors.h,
+ src/testdir/dumps/Test_popup_settext_07.dump
+
+Patch 8.2.5040
+Problem: Scrollbar thumb in scrolled popup not visible.
+Solution: Show at least one thumb character. (fixes 10492)
+Files: src/popupwin.c, src/testdir/test_popupwin.mnv,
+ src/testdir/dumps/Test_popupwin_scroll_13.dump
+
+Patch 8.2.5041
+Problem: Cannot close a terminal popup with "NONE" job.
+Solution: Adjust the conditions for whether a job is running.
+ (closes #10498)
+Files: src/buffer.c, src/terminal.c, src/proto/terminal.pro,
+ src/undo.c, src/testdir/test_popupwin.mnv
+
+Patch 8.2.5042
+Problem: Scrollbar thumb in tall scrolled popup not visible.
+Solution: Show at least one thumb character. (fixes 10492)
+Files: src/popupwin.c, src/testdir/test_popupwin.mnv,
+ src/testdir/dumps/Test_popupwin_scroll_13.dump
+
+Patch 8.2.5043
+Problem: Can open a cmdline window from a substitute expression.
+Solution: Disallow opening a command line window when text or buffer is
+ locked.
+Files: src/buffer.c, src/ex_getln.c, src/proto/ex_getln.pro,
+ src/window.c, src/testdir/test_substitute.mnv
+
+Patch 8.2.5044 (after 8.2.5043)
+Problem: Command line test fails.
+Solution: Also beep when cmdline win can't be opened because of locks.
+ Make the test not beep. Make the test pass on MS-Windows.
+Files: src/ex_getln.c, src/testdir/test_substitute.mnv
+
+Patch 8.2.5045
+Problem: Can escape a terminal popup window when the job is finished.
+Solution: Only check for a finished job where it is relevant.
+ (closes #10253)
+Files: src/popupwin.c, src/testdir/test_popupwin.mnv,
+ src/testdir/dumps/Test_popupwin_poptermscroll_1.dump,
+ src/testdir/dumps/Test_popupwin_poptermscroll_2.dump,
+ src/testdir/dumps/Test_popupwin_poptermscroll_3.dump,
+ src/testdir/dumps/Test_popupwin_poptermscroll_4.dump
+
+Patch 8.2.5046
+Problem: mnv_regsub() can overwrite the destination.
+Solution: Pass the destination length, give an error when it doesn't fit.
+Files: src/regexp.h, src/regexp.c, src/proto/regexp.pro, src/eval.c,
+ src/ex_cmds.c
+
+Patch 8.2.5047
+Problem: CurSearch highlight is often wrong.
+Solution: Remember the last highlighted position and redraw when needed.
+Files: src/globals.h, src/match.c, src/drawscreen.c, src/change.c,
+ src/testdir/test_search.mnv,
+ src/testdir/dumps/Test_hlsearch_cursearch_changed_1.dump
+
+Patch 8.2.5048
+Problem: When using XIM the gui test may fail.
+Solution: Only use --not-a-term when not using XIM.
+Files: src/testdir/test_gui.mnv
+
+Patch 8.2.5049
+Problem: Insufficient tests for autocommands.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #10507)
+Files: src/autocmd.c, src/testdir/gen_opt_test.mnv,
+ src/testdir/test_autocmd.mnv, src/testdir/test_cmdline.mnv
+
+Patch 8.2.5050
+Problem: Using freed memory when searching for pattern in path.
+Solution: Make a copy of the line.
+Files: src/search.c, src/testdir/test_tagjump.mnv
+
+Patch 8.2.5051
+Problem: Check for autocmd_add() event argument is confusing.
+Solution: Make the code more straightforward.
+Files: src/autocmd.c
+
+Patch 8.2.5052
+Problem: CI checkout step title is a bit cryptic.
+Solution: Add a better title. (closes #10509)
+Files: .github/workflows/ci.yml, .github/workflows/coverity.yml,
+ .github/workflows/codeql-analysis.yml
+
+Patch 8.2.5053
+Problem: Cannot have a comment halfway an expression in an autocmd command
+ block.
+Solution: When skipping over the NL also skip over comments. (closes #10519)
+Files: src/eval.c, src/testdir/test_autocmd.mnv
+
+Patch 8.2.5054
+Problem: No good filetype for conf files similar to dosini.
+Solution: Add the confini filetype. (closes #10518)
+Files: runtime/filetype.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.5055
+Problem: Statusline is not updated when terminal title changes.
+Solution: Redraw the status line when the title changes. (issue #10425)
+Files: src/terminal.c
+
+Patch 8.2.5056
+Problem: The channel log only contains some of the raw terminal output.
+Solution: Add the "o" flag to log all terminal output. Use it for "--log".
+Files: runtime/doc/channel.txt, runtime/doc/starting.txt, src/main.c,
+ src/channel.c, src/mnv.h, src/term.c, src/edit.c, src/normal.c,
+ src/optionstr.c
+
+Patch 8.2.5057
+Problem: Using gettimeofday() for timeout is very inefficient.
+Solution: Set a platform dependent timer. (Paul Ollis, closes #10505)
+Files: src/auto/configure, src/config.h.in, src/configure.ac,
+ src/drawscreen.c, src/errors.h, src/evalfunc.c, src/ex_cmds.c,
+ src/ex_getln.c, src/match.c, src/os_mac.h, src/os_macosx.m,
+ src/os_unix.c, src/os_win32.c, src/proto/os_unix.pro,
+ src/proto/os_win32.pro, src/proto/regexp.pro, src/quickfix.c,
+ src/regexp.c, src/regexp.h, src/regexp_bt.c, src/regexp_nfa.c,
+ src/screen.c, src/search.c, src/structs.h, src/syntax.c,
+ src/testdir/test_hlsearch.mnv, src/testdir/test_search.mnv,
+ src/testdir/test_syntax.mnv
+
+Patch 8.2.5058
+Problem: input() does not handle composing characters properly.
+Solution: Use mb_cptr2char_adv() instead of mb_ptr2char_adv().
+ (closes #10527)
+Files: src/getchar.c, src/testdir/test_functions.mnv
+
+Patch 8.2.5059
+Problem: Autoconf 2.71 produces many obsolete warnings.
+Solution: Replace obsolete macros with non-obsolete ones, where the
+ functionality does not change. (issue #10528)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.5060 (after 8.2.5059)
+Problem: Running configure fails.
+Solution: Remove line break.
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.5061
+Problem: C89 requires signal handlers to return void.
+Solution: Drop RETSIGTYPE and hard-code a void return value.
+Files: src/configure.ac, src/auto/configure, src/if_cscope.c,
+ src/os_unix.c, src/pty.c, src/os_mac.h, src/os_vms_conf.h,
+ src/config.h.in, src/osdef1.h.in
+
+Patch 8.2.5062
+Problem: Coverity warns for dead code.
+Solution: Remove the dead code.
+Files: src/os_unix.c, src/match.c
+
+Patch 8.2.5063
+Problem: Error for a command may go over the end of IObuff.
+Solution: Truncate the message.
+Files: src/ex_docmd.c, src/testdir/test_cmdline.mnv
+
+Patch 8.2.5064
+Problem: No test for what 8.1.0052 fixes.
+Solution: Add a test. (closes #10531)
+Files: src/getchar.c, src/testdir/test_mapping.mnv
+
+Patch 8.2.5065
+Problem: Wrong return type for main() in tee.c.
+Solution: Use "int" instead of "void". Remove unused variable.
+Files: src/tee/tee.c
+
+Patch 8.2.5066
+Problem: Can specify multispace listchars only for whole line.
+Solution: Add "leadmultispace". (Christian Brabandt, closes #10496)
+Files: runtime/doc/options.txt, src/drawline.c, src/message.c,
+ src/screen.c, src/structs.h, src/window.c,
+ src/testdir/test_listchars.mnv
+
+Patch 8.2.5067
+Problem: Timer_create is not available on every Mac system. (Hisashi T
+ Fujinaka)
+Solution: Adjust #ifdef.
+Files: src/os_unix.c
+
+Patch 8.2.5068
+Problem: Gcc 12.1 warning when building tee.
+Solution: Change type to size_t. (John Marriott)
+Files: src/tee/tee.c
+
+Patch 8.2.5069
+Problem: Various warnings from clang on MS-Windows.
+Solution: Fix the code to avoid the warnings. (Yegappan Lakshmanan,
+ closes #10538)
+Files: src/dosinst.c, src/fileio.c, src/gui_w32.c, src/os_mswin.c,
+ src/os_win32.c
+
+Patch 8.2.5070
+Problem: Unnecessary code.
+Solution: Remove code that isn't needed. (closes #10534)
+Files: src/message.c, src/screen.c
+
+Patch 8.2.5071
+Problem: With some Mac OS version clockid_t is redefined.
+Solution: Adjust #ifdefs. (Ozaki Kiichi, closes #10549)
+Files: src/os_mac.h
+
+Patch 8.2.5072
+Problem: Using uninitialized value and freed memory in spell command.
+Solution: Initialize "attr". Check for empty line early.
+Files: src/spell.c, src/testdir/test_spell_utf8.mnv
+
+Patch 8.2.5073
+Problem: Clang on MS-Windows produces warnings.
+Solution: Avoid the warnings. (Yegappan Lakshmanan, closes #10546)
+Files: src/dosinst.c, src/dosinst.h, src/gui_dwrite.cpp, src/gui_w32.c,
+ src/iscygpty.c, src/libvterm/src/vterm_internal.h, src/mbyte.c,
+ src/os_win32.c, src/os_win32.h, src/term.c, src/xdiff/xinclude.h
+
+Patch 8.2.5074
+Problem: Spell test fails on MS-Windows.
+Solution: Do not change 'encoding'
+Files: src/testdir/test_spell_utf8.mnv
+
+Patch 8.2.5075
+Problem: Clang gives an out of bounds warning.
+Solution: adjust conditional expression (John Marriott)
+Files: src/ui.c
+
+Patch 8.2.5076
+Problem: Unnecessary code.
+Solution: Remove code and replace with function call. (closes #10552)
+Files: src/drawline.c, src/getchar.c
+
+Patch 8.2.5077
+Problem: Various warnings from clang on MS-Windows.
+Solution: Avoid the warnings. (Yegappan Lakshmanan, closes #10553)
+Files: src/dosinst.c, src/dosinst.h, src/filepath.c, src/gui_w32.c,
+ src/misc1.c, src/os_win32.c
+
+Patch 8.2.5078
+Problem: Substitute test has a one second delay.
+Solution: Use ":silent!". Add another test case. (closes #10558)
+Files: src/testdir/test_substitute.mnv
+
+Patch 8.2.5079
+Problem: DirChanged autocommand may use freed memory. (Shane-XB Qian)
+Solution: Free the memory later. (closes #10555)
+Files: src/ex_docmd.c, src/testdir/test_autocmd.mnv
+
+Patch 8.2.5080
+Problem: When indenting gets out of hand it is hard to stop.
+Solution: When line gets too long set got_int.
+Files: src/indent.c
+
+Patch 8.2.5081
+Problem: Autocmd test fails on MS-Windows.
+Solution: Set shellslash to get forward slashes.
+Files: src/testdir/test_autocmd.mnv
+
+Patch 8.2.5082 (after 8.2.5080)
+Problem: Retab test fails.
+Solution: Disable the test for now.
+Files: src/testdir/test_retab.mnv
+
+Patch 8.2.5083
+Problem: Autocmd test still fails on MS-Windows.
+Solution: Change backward to forward slashes.
+Files: src/testdir/test_autocmd.mnv
+
+Patch 8.2.5084
+Problem: When the GUI shows a dialog tests get stuck.
+Solution: Add the --gui-dialog-file argument.
+Files: runtime/doc/starting.txt, src/Make_mvc.mak, src/gui.c, src/main.c,
+ src/message.c, src/os_mswin.c, src/proto/gui.pro,
+ src/proto/main.pro, src/structs.h, src/testdir/Make_dos.mak,
+ src/testdir/Make_ming.mak, src/testdir/Makefile,
+ src/testdir/runtest.mnv, src/testdir/shared.mnv
+
+Patch 8.2.5085
+Problem: Gcc gives warning for signed/unsigned difference.
+Solution: Use a different pointer type. (John Marriott)
+Files: src/os_mswin.c
+
+Patch 8.2.5086
+Problem: CI runs on Windows 2019.
+Solution: Switch to Windows 2022. (closes #10566)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.5087
+Problem: Cannot build with clang on MS-Windows.
+Solution: Add support for building with clang. (Yegappan Lakshmanan,
+ closes #10557)
+Files: src/GmnvExt/Make_ming.mak, src/INSTALLpc.txt,
+ src/Make_cyg_ming.mak
+
+Patch 8.2.5088
+Problem: Value of cmod_verbose is a bit complicated to use.
+Solution: Use zero for not set, value + 1 when set. (closes #10564)
+Files: src/ex_docmd.c, src/ex_getln.c, src/globals.h, src/structs.h
+
+Patch 8.2.5089
+Problem: Some functions return a different value on failure.
+Solution: Initialize the return value earlier. (Yegappan Lakshmanan,
+ closes #10568)
+Files: src/autocmd.c, src/dict.c, src/evalfunc.c, src/list.c
+
+Patch 8.2.5090
+Problem: MS-Windows: mnv.def is no longer used.
+Solution: Delete mnv.def. (Ken Takata, closes #10569)
+Files: Filelist, Makefile, src/mnv.def
+
+Patch 8.2.5091
+Problem: Terminal test fails with some shell commands.
+Solution: Disable setting the window title. (closes #10530)
+Files: src/testdir/test_terminal.mnv
+
+Patch 8.2.5092
+Problem: Using "'<,'>" in Ex mode may compare unrelated pointers.
+Solution: Set eap->cmd to "+" only later.
+Files: src/ex_docmd.c
+
+Patch 8.2.5093
+Problem: Error message for unknown command may mention the command twice.
+ (Malcolm Rowe)
+Solution: Add the did_append_cmd flag. (closes #10570)
+Files: src/ex_docmd.c
+
+Patch 8.2.5094
+Problem: MS-Windows GUI: empty command may cause a dialog.
+Solution: Delete the dialog file. Improve the message.
+Files: src/testdir/runtest.mnv, src/testdir/test_ex_mode.mnv
+
+Patch 8.2.5095
+Problem: Terminal test still fails with some shell commands.
+Solution: Disable setting the window title in the MNV instance running in a
+ terminal window. (closes #10530)
+Files: src/testdir/test_terminal.mnv
+
+Patch 8.2.5096 (after 8.2.5095)
+Problem: Terminal test still fails with some shell commands.
+Solution: Add missing "call". (closes #10530)
+Files: src/testdir/test_terminal.mnv
+
+Patch 8.2.5097
+Problem: Using uninitialized memory when using 'listchars'.
+Solution: Use the length returned by mb_char2bytes(). (closes #10576)
+Files: src/message.c
+
+Patch 8.2.5098
+Problem: Spelldump test sometimes hangs.
+Solution: Catch the problem of the spell file not being found to avoid
+ hanging in the download dialog.
+Files: src/testdir/test_spell.mnv
+
+Patch 8.2.5099
+Problem: Some terminal tests are not retried.
+Solution: Mark terminal tests as flaky.
+Files: src/testdir/test_terminal.mnv
+
+Patch 8.2.5100
+Problem: Memory usage tests are not retried.
+Solution: Mark memory usage tests as flaky.
+Files: src/testdir/test_memory_usage.mnv
+
+Patch 8.2.5101
+Problem: MS-Windows with MinGW: $CC may be "cc" instead of "gcc".
+Solution: Set $CC if it is not matching "clang". (Yegappan Lakshmanan,
+ closes #10578)
+Files: src/INSTALLpc.txt, src/Make_cyg_ming.mak
+
+Patch 8.2.5102
+Problem: Interrupt not caught in test.
+Solution: Consider an exception thrown in the current try/catch when got_int
+ is set. Also catch early exit when not using try/catch.
+Files: src/indent.c, src/testing.c, src/testdir/test_retab.mnv,
+ src/testdir/runtest.mnv
+
+Patch 8.2.5103
+Problem: Build fails with small features.
+Solution: Add #ifdef. Skip test on MS-Windows.
+Files: src/indent.c, src/testdir/test_retab.mnv
+
+Patch 8.2.5104 (after 8.2.5103)
+Problem: Test hangs on MS-Windows.
+Solution: Skip another test on MS-Windows.
+Files: src/testdir/test_retab.mnv
+
+Patch 8.2.5105 (after 8.2.5104)
+Problem: Test still hangs on MS-Windows.
+Solution: Skip "nocatch" test the right way.
+Files: src/testdir/test_retab.mnv
+
+Patch 8.2.5106
+Problem: Default cmdwin mappings are re-mappable.
+Solution: Make the default mappings not re-mappable. (closes #10580) Use
+ symbols for the first do_map() argument.
+Files: src/mnv.h, src/ex_getln.c, src/map.c, src/proto/map.pro,
+ src/digraph.c, src/netbeans.c
+
+Patch 8.2.5107
+Problem: Some callers of rettv_list_alloc() check for not OK. (Christ van
+ Willegen)
+Solution: Use "==" instead of "!=" when checking the return value.
+Files: src/evalbuffer.c, src/channel.c, src/cmdexpand.c, src/evalfunc.c,
+ src/evalwindow.c, src/insexpand.c, src/job.c, src/list.c,
+ src/map.c, src/menu.c, src/mouse.c, src/move.c, src/sign.c,
+ src/textprop.c, src/term.c, src/time.c
+
+Patch 8.2.5108
+Problem: Retab test disabled because it hangs on MS-Windows.
+Solution: Also set got_int at the other place an overlong text is detected.
+Files: src/indent.c, src/testdir/test_retab.mnv
+
+Patch 8.2.5109
+Problem: Mode not updated after CTRL-O CTRL-C in Insert mode.
+Solution: Set redraw_mode and use it. (closes #10581)
+Files: src/main.c, src/normal.c, src/testdir/test_normal.mnv,
+ src/testdir/dumps/Test_mode_updated_1.dump
+
+Patch 8.2.5110
+Problem: Icon filetype not recognized from the first line.
+Solution: Add a check for the first line. (Doug Kearns)
+Files: runtime/autoload/dist/script.mnv, src/testdir/test_filetype.mnv
+
+Patch 8.2.5111
+Problem: No test for --gui-dialog-file.
+Solution: Add a test.
+Files: src/testdir/test_gui.mnv
+
+Patch 8.2.5112 (after 8.2.5111)
+Problem: Gui test hangs on MS-Windows.
+Solution: Use "!start" to start MNV.
+Files: src/testdir/test_gui.mnv
+
+Patch 8.2.5113
+Problem: Timer becomes invalid after fork/exec, :gui gives errors. (Gabriel
+ Dupras)
+Solution: Delete the timer before forking. (closes #10584)
+Files: src/os_unix.c, src/proto/os_unix.pro, src/gui.c
+
+Patch 8.2.5114
+Problem: Time limit on searchpair() does not work properly.
+Solution: Set the time limit once instead of for each regexp. (closes #10562)
+Files: src/search.c, src/evalfunc.c, src/testdir/test_search.mnv
+
+Patch 8.2.5115
+Problem: Search timeout is overrun with some patterns.
+Solution: Check for timeout in more places. Make the flag volatile and
+ atomic. Use assert_inrange() to see what happened.
+Files: src/regexp_nfa.c, src/regexp_bt.c, src/regexp.c, src/os_unix.c,
+ src/proto/os_unix.pro, src/testdir/test_search.mnv
+
+Patch 8.2.5116
+Problem: "limit" option of matchfuzzy() not always respected.
+Solution: Remove "else". (Kazuyuki Miyagi, closes #10586)
+Files: runtime/doc/builtin.txt, src/search.c,
+ src/testdir/test_matchfuzzy.mnv
+
+Patch 8.2.5117
+Problem: Crash when calling a Lua callback from a :def function. (Bohdan
+ Makohin)
+Solution: Handle FC_CFUNC in call_user_func_check(). (closes #10587)
+Files: src/userfunc.c, src/testdir/test_lua.mnv
+
+Patch 8.2.5118
+Problem: MS-Windows: sending a message to another MNV may hang if that MNV
+ is halted.
+Solution: Add a timeout to serverSendToMNV(). (Ken Takata, closes #10585)
+Files: runtime/pack/dist/opt/editexisting/plugin/editexisting.mnv,
+ src/os_mswin.c
+
+Patch 8.2.5119
+Problem: CI uses cache v2.
+Solution: Use cache v3. (closes #10588)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.5120
+Problem: Searching for quotes may go over the end of the line.
+Solution: Check for running into the NUL.
+Files: src/textobject.c
+
+Patch 8.2.5121
+Problem: Interrupt test sometimes fails.
+Solution: Use a different file name.
+Files: src/testdir/test_interrupt.mnv
+
+Patch 8.2.5122
+Problem: Lisp indenting my run over the end of the line.
+Solution: Check for NUL earlier.
+Files: src/indent.c, src/testdir/test_indent.mnv
+
+Patch 8.2.5123
+Problem: Using invalid index when looking for spell suggestions.
+Solution: Do not decrement the index when it is zero.
+Files: src/spellsuggest.c, src/testdir/test_spell.mnv
+
+Patch 8.2.5124
+Problem: When syntax timeout test fails it does not show the time.
+Solution: Use assert_inrange().
+Files: src/testdir/test_syntax.mnv
+
+Patch 8.2.5125
+Problem: MS-Windows: warnings from MinGW compiler.
+Solution: Use "volatile". (Yasuhiro Matsumoto, closes #10589) Initialize
+ variable.
+Files: src/os_win32.c, src/proto/os_win32.pro, src/map.c
+
+Patch 8.2.5126
+Problem: Substitute may overrun destination buffer.
+Solution: Disallow switching buffers in a substitute expression.
+Files: src/ex_docmd.c, src/testdir/test_substitute.mnv
+
+Patch 8.2.5127
+Problem: Using assert_true() does not show value on failure.
+Solution: Use assert_inrange(). (closes #10593)
+Files: src/testdir/test_channel.mnv, src/testdir/test_hlsearch.mnv
+
+Patch 8.2.5128
+Problem: Syntax highlighting disabled when using synID() in searchpair()
+ skip expression and it times out. (Jaehwang Jung)
+Solution: Add the redrawtime_limit_set flag. (closes #10562)
+Files: src/globals.h, src/drawscreen.c, src/syntax.c
+
+Patch 8.2.5129
+Problem: Timeout handling is not optimal.
+Solution: Avoid setting timeout_flag twice. Adjust the pointer when
+ stopping the regexp timeout. Adjust variable name.
+Files: src/os_unix.c, src/os_win32.c, src/regexp.c
+
+Patch 8.2.5130
+Problem: Edit test for mode message fails when using valgrind.
+Solution: Use WaitForAssert(). Run beep test later.
+Files: src/testdir/test_edit.mnv
+
+Patch 8.2.5131
+Problem: Timeout implementation is not optimal.
+Solution: Further improvements for timeouts. Add a test for searchpair()
+ timeout. (partly by Paul Ollis)
+Files: src/configure.ac, src/auto/configure,
+ src/testdir/test_hlsearch.mnv, src/testdir/test_search.mnv
+
+Patch 8.2.5132
+Problem: :mkview test doesn't test much.
+Solution: Save the view with the folds closed. (James McCoy, closes #10596)
+Files: src/testdir/test_mksession.mnv
+
+Patch 8.2.5133
+Problem: MacOS: build fails.
+Solution: Remove "#if 0" from timer_delete().
+Files: src/os_macosx.m
+
+Patch 8.2.5134
+Problem: Function has confusing name.
+Solution: Rename tgetent_error() to invoke_tgetent().
+Files: src/term.c
+
+Patch 8.2.5135
+Problem: Running configure gives warnings for main() return type.
+Solution: Specify "int" return type. Avoid a few more warnings.
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.5136
+Problem: Debugger test fails when run with valgrind.
+Solution: Wait longer when using valgrind.
+Files: src/testdir/shared.mnv, src/testdir/test_debugger.mnv,
+ src/testdir/test_search.mnv
+
+Patch 8.2.5137
+Problem: Cannot build without the +channel feature. (Dominique Pellé)
+Solution: Add #ifdef around ch_log() calls. (closes #10598)
+Files: src/os_unix.c, src/regexp_nfa.c, src/regexp_bt.c
+
+Patch 8.2.5138
+Problem: Various small issues.
+Solution: Various small improvements.
+Files: src/filepath.c, src/job.c, src/mark.c, src/move.c,
+ src/popupwin.c, src/testdir/test_filetype.mnv
+
+Patch 8.2.5139
+Problem: TIME_WITH_SYS_TIME is no longer supported by autoconf.
+Solution: Always include time.h.
+Files: src/os_unix.h
+
+Patch 8.2.5140
+Problem: Seachpair timeout test is flaky.
+Solution: Mark the test as flaky so it is retried.
+Files: src/testdir/test_search.mnv
+
+Patch 8.2.5141
+Problem: Using "volatile int" in a signal handler might be wrong.
+Solution: Use "volatile sig_atomic_t".
+Files: src/os_unix.c, src/proto/os_unix.pro, src/os_win32.c,
+ src/proto/os_win32.pro, src/regexp.c,
+
+Patch 8.2.5142
+Problem: Startup test fails if there is a status bar at the top of the
+ screen. (Ernie Rael)
+Solution: Use a larger vertical offset in the test.
+Files: src/testdir/test_startup.mnv
+
+Patch 8.2.5143
+Problem: Some tests fail when using valgrind. Spurious leak reports.
+Solution: Use WaitForAssert(). Avoid failing fork/exec. Skip tests where a
+ job is killed when running valgrind.
+Files: src/testdir/test_iminsert.mnv, src/testdir/test_popup.mnv,
+ src/testdir/test_cscope.mnv, src/testdir/test_channel.mnv
+
+Patch 8.2.5144
+Problem: With 'lazyredraw' set completion menu may be displayed wrong.
+Solution: When the popup menu is visible do not insert a screen line.
+ (closes #10601)
+Files: src/screen.c
+
+Patch 8.2.5145
+Problem: Exit test causes spurious valgrind reports.
+Solution: Skip test. Add CheckNotValgrind.
+Files: src/testdir/test_exit.mnv, src/testdir/check.mnv,
+ src/testdir/test_channel.mnv
+
+Patch 8.2.5146
+Problem: Memory leak when substitute expression nests.
+Solution: Use an array of expression results.
+Files: src/alloc.c, src/regexp.c, src/proto/regexp.pro,
+ src/errors.h, src/ex_cmds.c, src/testdir/test_substitute.mnv
+
+Patch 8.2.5147
+Problem: Flaky test always fails on retry.
+Solution: Delete the created function.
+Files: src/testdir/test_search.mnv
+
+Patch 8.2.5148
+Problem: Invalid memory access when using an expression on the command line.
+Solution: Make sure the position does not go negative.
+Files: src/ex_getln.c, src/testdir/test_cmdline.mnv
+
+Patch 8.2.5149 (after 8.2.5148)
+Problem: Cannot build without the +eval feature. (Tony Mechelynck)
+Solution: Add #ifdefs.
+Files: src/ex_getln.c
+
+Patch 8.2.5150
+Problem: Read past the end of the first line with ":0;'{".
+Solution: When on line zero check the column is valid for line one.
+Files: src/ex_docmd.c, src/testdir/test_cmdline.mnv
+
+Patch 8.2.5151
+Problem: Reading beyond the end of the line with lisp indenting.
+Solution: Avoid going over the NUL at the end of the line.
+Files: src/indent.c, src/testdir/test_lispwords.mnv
+
+Patch 8.2.5152
+Problem: search() gets stuck with "c" and skip evaluates to true.
+Solution: Reset the SEARCH_START option. (closes #10608)
+Files: src/evalfunc.c, src/testdir/test_syntax.mnv
+
+Patch 8.2.5153
+Problem: "make uninstall" does not remove colors/lists.
+Solution: Add a line to the Makefile. (closes #10609)
+Files: src/Makefile
+
+Patch 8.2.5154
+Problem: Still mentioning version8, some cosmetic issues.
+Solution: Prefer mentioning version9, cosmetic improvements.
+Files: src/version.c, src/if_tcl.c, src/regexp.c,
+ src/testdir/test_gui.mnv, src/os_unix.c, Filelist, src/Makefile
+
+Patch 8.2.5155
+Problem: In diff mode windows may get out of sync. (Gary Johnson)
+Solution: Avoid that the other window scrolls for 'cursorbind'.
+Files: src/move.c, src/testdir/test_diffmode.mnv,
+ src/testdir/dumps/Test_diff_scroll_1.dump,
+ src/testdir/dumps/Test_diff_scroll_2.dump
+
+Patch 8.2.5156
+Problem: Search timeout test often fails with FreeBSD.
+Solution: Double the maximum time.
+Files: src/testdir/test_search.mnv
+
+Patch 8.2.5157
+Problem: MS-Windows GUI: CTRL-key combinations do not always work.
+Solution: Handle special key combinations better. (closes #10613,
+ closes #10602, closes #10579)
+Files: src/gui_w32.c
+
+Patch 8.2.5158
+Problem: TSTP and INT signal tests are not run with valgrind.
+Solution: Sleep a bit longer. (closes #10614)
+Files: src/testdir/test_signals.mnv
+
+Patch 8.2.5159 (after 8.2.5157)
+Problem: Fix for CTRL-key combinations causes more problems than it solves.
+Solution: Roll back the change.
+Files: src/gui_w32.c
+
+Patch 8.2.5160
+Problem: Accessing invalid memory after changing terminal size.
+Solution: Adjust cmdline_row and msg_row to the value of Rows.
+Files: src/term.c
+
+Patch 8.2.5161
+Problem: Might still access invalid memory.
+Solution: Add extra check for negative value.
+Files: src/message.c
+
+Patch 8.2.5162
+Problem: Reading before the start of the line with BS in Replace mode.
+Solution: Check the cursor column is more than zero.
+Files: src/edit.c
+
+Patch 8.2.5163
+Problem: Crash when deleting buffers in diff mode.
+Solution: Recompute diffs later. Skip window without a valid buffer.
+Files: src/diff.c, src/testdir/test_diffmode.mnv
+
+Patch 8.2.5164
+Problem: Invalid memory access after diff buffer manipulations.
+Solution: Use zero offset when change removes all lines in a diff block.
+Files: src/diff.c, src/testdir/test_diffmode.mnv
+
+Patch 8.2.5165
+Problem: Import test fails because 'diffexpr' isn't reset.
+Solution: Reset 'diffexpr'.
+Files: src/testdir/test_mnv9_import.mnv
+
+Patch 8.2.5166
+Problem: Test for DiffUpdated fails.
+Solution: Also accept a count of two.
+Files: src/testdir/test_diffmode.mnv
+
+Patch 8.2.5167
+Problem: get(Fn, 'name') on funcref returns special byte code.
+Solution: Use the printable name.
+Files: src/evalfunc.c, src/testdir/test_getvar.mnv
+
+Patch 8.2.5168
+Problem: Cannot build with Python 3.11.
+Solution: Adjust define for _PyObject_TypeCheck. (Zdenek Dohnal,
+ closes #10627)
+Files: src/if_python3.c
+
+Patch 8.2.5169
+Problem: Nested :source may use NULL pointer.
+Solution: Do not use the NULL pointer.
+Files: src/eval.c, src/testdir/test_mnvscript.mnv
+
+Patch 8.2.5170
+Problem: Tiny issues.
+Solution: Tiny improvements.
+Files: src/misc1.c, src/screen.c, src/mnv.h
+
+Patch 8.2.5171
+Problem: Dependencies and proto files are outdated.
+Solution: Update dependencies and proto files. Avoid errors.
+Files: src/Makefile, src/gui_w32.c, src/os_mswin.c, src/proto/buffer.pro,
+ src/proto/cmdexpand.pro, src/proto/getchar.pro,
+ src/proto/help.pro, src/proto/mbyte.pro, src/proto/option.pro,
+ src/proto/screen.pro, src/proto/syntax.pro,
+ src/proto/textformat.pro, src/proto/textobject.pro,
+ src/proto/time.pro, src/proto/gui_x11.pro, src/proto/if_tcl.pro,
+ src/proto/os_mswin.pro
+
+Patch 8.2.5172
+Problem: "make menu" still uses legacy script.
+Solution: make menu generation script use MNV9 script, fix errors.
+Files: runtime/makemenu.mnv
+
+
+==============================================================================
+VERSION 9.1 *version-9.1* *version9.1* *mnv-9.1*
+
+This section is about improvements made between version 9.0 and 9.1.
+The release 9.1 is dedicated to MNV's Benevolent dictator for life
+|Bram-Moolenaar|.
+
+This release has hundreds of bug fixes, there are a few new features and there
+are many minor improvements.
+
+MNV9 classes ~
+------------
+Support for classes and objects in a MNV9 script are added. This is described
+in |mnv9-class|. The following features are supported:
+ - Defining classes and instantiating objects
+ - Multiple constructors
+ - Class variables and methods
+ - Object variables and methods
+ - Public and protected access for variables and methods
+ - Constant and final object/class variables
+ - Extending classes (single inheritance)
+ - Interfaces
+ - Abstract classes
+ - Exporting classes
+
+Support for creating a type alias for an existing type is added.
+
+Virtual text ~
+------------
+Support for adding |virtual-text| to a buffer is added. This is useful for
+language server features (e.g. inlay hints)
+
+Smooth Scroll ~
+-------------
+Support for scrolling text using screen lines instead of file lines is added.
+Refer to the 'smoothscroll' option.
+
+The EditorConfig (|editorconfig-install|) and the JSON formatting
+(|ft-json-plugin|) plugins are included.
+
+OpenVMS x86_64 platform port: http://www.polarhome.com/mnv/
+
+ *new-other-9.1*
+Other improvements ~
+------------------
+- Support for undercurl (|t_Ce|), double underline (|t_Us|), dotted underline
+ (|t_ds|) and dashed underline (|t_Ds|) termcap entries and
+ highlight modes (|highlight-term|).
+- The 'fillchars' option is now a global-local option and allows to
+ specify the character used for the last window line.
+- The |:vertical| and |:horizontal| modifiers can be used with ":wincmd ="
+ command to equalize windows vertically or horizontally.
+- |:defer| command to defer the execution of a function till the end of a
+ function.
+- Support for closing a tab page using the middle mouse button.
+- Sound support in MacOS.
+- The |prop_remove()| function can now remove multiple text properties.
+- The |items()| function now supports a List or a String argument.
+- The |repeat()| function now supports blob repeat.
+- Command line completion support for |:runtime| command.
+- Support for custom completion using |getcompletion()|.
+- Command-line completion support for option values.
+- Support for multiple "%=" items in 'statusline'.
+- Support for the PmenuKind, PmenuKindSel, PmenuExtra and PmenuExtraSel
+ highlight groups.
+- Text properties can override 'cursorline' highlight.
+- Support for echoing messages in a popup window |:echowindow|.
+- Control scroll behavior when splitting windows 'splitkeep'.
+- Support for mouse scrolling in the MS-Windows console.
+- Support for using different keyboard protocols 'keyprotocol'
+ (xterm |modifyOtherKeys| and Kitty terminal protocol (CSI u) support).
+- Support for UTF-16 string index.
+- Quickfix list items can have associated custom user data.
+- |reverse()| supports reversing a string.
+- 'switchbuf' is used by more commands.
+- |undotree()| can be used with any buffer.
+- |printf()| supports positional arguments.
+- |col()|, |charcol()| and |virtcol()| can be used with different windows.
+- Support for Python3 stable ABI (|python-stable|).
+- Use |jumplist| like a stack 'jumpoptions'.
+- Support for writing extended attributes in Linux (|xattr|).
+- 'errorformat' supports parsing a buffer number ("%b").
+- Support for building the python interface using Python 3.12.
+- |matchaddpos()| is no longer limited to 8 positions.
+- |readblob()| allows to read part of a file.
+- 'shortmess' allows to suppress "scanning" messages.
+- Add the XChaCha20v2 encryption method 'cryptmethod'.
+- Add support for testing syntax files.
+- Support "**" for filename expansion with bash using globstar setting.
+- Add quadruple prime digraph using 4'.
+- Better high dpi support on Windows.
+- Various fixes for unsafe memory access, memory leaks, buffer overflows
+ and potential crashes.
+- Termdebug: Support for the variables window (|termdebug_variables_window|),
+ moving up/down the stack frames (|termdebug-frames|) and setting temporary
+ breakpoints (|:Tbreak|).
+- xxd: support for using colors in the hex dump output (xxd -R).
+- xxd: reversing a bit dump (xxd -r).
+- xxd: customize the variable name used in the C include output (xxd -n).
+
+ *changed-9.1*
+Changed ~
+-------
+- The features |++builtin_terms|, |+cmdline_info|, |+cmdwin|, |+file_in_path|,
+ |+float|, |+path_extra|, |+textobjects|, |+wildignore| and |+wildmenu| are
+ available in all the builds.
+- Support for Windows-XP is dropped (starting with v9.0.0496)
+- Support for VisMNV is removed.
+- The "small" and "big" builds are dropped in favor of "tiny" and "huge"
+ builds.
+- Mention the detected 'keyprotocol' on ":verbose map" when listing mappings.
+- The optional Content-Type header is removed from the LSP messages.
+- |charidx()| returns the character length when the index is one more than the
+ last byte index.
+- Ctrl-Q works like Ctrl-V in replace mode.
+- |popup_filter_menu()| now wraps around.
+- |popup_create()| now aborts on an error.
+- |g<End>| now jumps to the last non-blank character.
+- dot and hyphen are supported in highlight group names.
+- |executable()| resolves symlinks on MS-Windows.
+- Ruby 1.8 support is dropped.
+- 'ttyfast' is always set.
+- |virtcol2col()| returns the first byte for a multi-byte character.
+- |i_CTRL-O| resets Select Mode.
+- |mode()| returns more submodes.
+- r with CTRL-C on a visual area replaces using CTRL-C consistently.
+- The matchparen plugin no longer uses hard coded match id 3.
+- The Statusline no longer uses hard coded values "^" and "=" if the
+ highlighting groups for the statusline have been cleared.
+- 'maxfuncdepth' setting is also used for the maximum callback depth.
+- Migrate to autoconf 2.71.
+- Start using C99 feature (declare variable in for loops).
+
+ *added-9.1*
+Added ~
+-----
+
+Various syntax, indent and other plugins were added.
+
+Functions: ~
+
+|err_teapot()| produce error 418 or 503
+|getbufoneline()| get a single line from the specified buffer
+|getcellwidths()| get character cell width overrides
+|getmouseshape()| get name of the current mouse shape
+|getscriptinfo()| get list of sourced mnv scripts
+|indexof()| index in a List or Blob of a true expression
+|instanceof()| check if a variable is an instance of a given class
+|keytrans()| translate internal key codes to be usable with |:map|
+|popup_findecho()| get window ID for popup used for |:echowindow|
+|setcmdline()| set the current command line
+|strutf16len()| number of UTF-16 code units in a string
+|swapfilelist()| list of existing swap files in 'directory'
+|test_mswin_event()| generate an MS-Windows event for testing
+|utf16idx()| UTF-16 index of a byte in a string
+
+
+Autocommands: ~
+
+|TextChangedT| after a change was made to the text in Terminal mode
+|WinResized| after a window in the current tab page is resized
+
+
+Commands: ~
+
+|:abstract| declare a MNV9 abstract class
+|:class| start of a class declaration
+|:defer| call function when current function is done
+|:echowindow| same as :echomsg, but use a popup window
+|:endinterface| end of an interface declaration
+|:endclass| end of a class declaration
+|:horizontal| following window command works horizontally
+|:interface| start of an interface declaration
+|:public| prefix for a class or object member
+|:static| prefix for a class member or function
+|:this| prefix for an object member
+|:type| create a type alias
+
+
+Options: ~
+
+'endoffile' write CTRL-Z at end of the file
+'jumpoptions' specifies how jumping is done
+'keyprotocol' what keyboard protocol to use for what terminal
+'lispoptions' changes how Lisp indenting is done
+'showcmdloc' where to show (partial) command
+'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.)
+
+Note: authorship and the list of changed files is left out and only visible
+through `git log` for each commit.
+
+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 typeahead.
+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.mnv".
+
+Patch 9.0.0029
+Problem: The bitmaps/mnv.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 for 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 with :append may hang MNV.
+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 unnecessarily 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: Include 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 mnv_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 autocommands. 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 length 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 chunks 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 there 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 recognized.
+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 position 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: MNV9: 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 response.
+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: Initialize 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 timeout 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 getscriptinfo() 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 disappears 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 listeners.
+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: Coverity 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 recognized.
+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 MNV 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 :mnv9cmd 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 handle 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: MNV9: 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: Execution 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 declarations.
+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 lambda.
+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 playlist 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 "mnv file | grep word".
+Solution: Without changes let CTRL-C exit MNV. 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 MNV 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 match .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 function. (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 "mnv9script" 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 MNV9 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 MNV9 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 scrolling 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 interactive 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 MNV9 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 MNV9 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(). (Anton 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: VisMNV is outdated, does not work with current Visual Studio.
+Solution: Remove VisMNV. (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
+ MNV9 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 MNV9 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: Graduate 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 visible 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 between 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 #6901)
+
+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 modifier 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 divide 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)
+
+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: Adjust #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 mnvd.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 MNV 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 allocation failure.
+
+Patch 9.0.0928
+Problem: Using Ruby LDFLAGS may cause build problems.
+Solution: Do not add Ruby LDFLAGS to MNV'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 mnvd.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 RunMNVInTerminal().
+
+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: MNV9 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 MNV9 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 MNV.
+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: MNV9 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 CheckRunMNVInTerminal.
+
+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 "disassemble" 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 MNV.
+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: unnecessary 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 instructions to create a new object.
+
+Patch 9.0.1140
+Problem: Cannot call an object method in a compiled function.
+Solution: Compile the instructions 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 mnv_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 properties 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 instead of "not OK". (Yegappan Lakshmanan,
+ closes #11897)
+
+Patch 9.0.1252
+Problem: MS-Windows: scrollback cropped off on MNV 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: Insufficient 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 protocol 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: mnvfiles dir created with admin group.
+Solution: Use ShellExecAsUser to create the mnvfiles 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: mnvscript test fails where using {expr} syntax.
+Solution: Only return FCERR_FAILED in call_user_func() for MNV9 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 property. (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 MNV_. (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 Homebrew
+ 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, MNV_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 MNV9 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 MNV9 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: "rmnv" 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: Fix 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 functions 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 "mnv-jsonrpc". (Yegappan
+ Lakshmanan, closes #12295)
+
+Patch 9.0.1488
+Problem: xchacha20v2 crypt header is platform dependent.
+Solution: Avoid using "size_t". (Ozaki Kiichi, closes #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 mapping 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: MNV9: 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 MNV9 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
+ length 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 MNV 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 MNV executable path with MNVPROG. (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 $MNV 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 "$MNV". 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 MNV 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 MNV9 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 \t and \n. (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: mnv9 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: MNV9 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() fails 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 MNV callbacks
+Solution: Use Lua registry rather than upvalues for udata cache
+
+Patch 9.0.1720
+Problem: MNV9 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: mnv9class 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: mnvexpr: 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 mnvinfo file
+Solution: Check the expected type in the mnvinfo file
+
+Patch 9.0.1741
+Problem: No type checking in interfaces
+Solution: Implement member type check in mnv9 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: mnv9class 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: mnv9 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: mnv9 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 MNV
+Solution: use AC_CHECK_SIZEOF to find sizeof(wchar_t)
+
+Patch 9.0.1766
+Problem: Runtime: Missing QML support
+Solution: Add QML support to MNV
+
+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 mnvscript functions
+
+Patch 9.0.1775
+Problem: Wrong comparison in mnv9type.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 operator pending mode and register
+ yank command
+
+Patch 9.0.1780
+Problem: MNV9 type not defined during object creation
+Solution: Define type during object creation and not during class
+ definition, parse multi-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: MNV9: 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 detecting 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: MNV9 problems with null_objects
+Solution: MNV9 improve null_object usage
+
+Patch 9.0.1797
+Problem: MNVball/Visual Basic filetype detection conflict
+Solution: runtime(vb): Improve MNVball 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: MNV9 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: MNV9: no support for private object methods
+Solution: Add support for private object/class methods
+
+Patch 9.0.1805
+Problem: MNV9: 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: MNV9: 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 flaky
+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: MNV9 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: MNV9 constructors are always static
+Solution: make the "static" keyword an error
+
+Patch 9.0.1822
+Problem: MNV9: 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: MNV9: 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: MNV9 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: MNV9: crash when accessing a null object
+Solution: Check accessing a NULL object in def function
+
+Patch 9.0.1831
+Problem: MNV9: 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: MNV9: class_member_type() can be optimized
+Solution: class_member_type() provides more information;
+ safe an additional alloc()/free()
+
+Patch 9.0.1838
+Problem: MNV9: 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 mnv_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: MNV9: 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: MNV9 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: MNV9: 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: MNV9: 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 uninitialized var
+Solution: initialize it
+
+Patch 9.0.1870
+Problem: MNV9: disassemble 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 mnv_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: MNV9: improve test for disassemble + static
+Solution: Add a MNV9 script disassemble test for an interface with
+ static members
+
+Patch 9.0.1876
+Problem: MNV9: parsing commands with newlines wrong
+Solution: Accept a '\n' 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: MNV9: 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: MNV9: 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: MNV9: 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: MNV9: 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: MNV9: class members are accessible via object
+Solution: Disable class member variable access using an object
+
+Patch 9.0.1888
+Problem: MNV9: Problem trying to invoke class method
+Solution: Lookup the class method insider other classes
+
+Patch 9.0.1889
+Problem: MNV9 static tests fail
+Solution: Fix tests, make CI happy ;)
+
+Patch 9.0.1890
+Problem: MNV9: lookup code for class/object repeated
+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: MNV9: 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: MNV9: 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: MNV9: restrict access to static vars and methods
+Solution: Class members are accessible 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: MNV9: 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: MNV9: 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: MNV9: 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: MNV9: 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: MNV9: 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: MNV9: 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: MNV9: 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: MNV9: constructor type checking bug
+Solution: Fix class constructor regression
+
+Patch 9.0.1929
+Problem: runtime tests fail with tiny mnv
+Solution: check for tiny mnv, 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: MNV9: 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: MNV9: 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: MNV9: 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: MNV9: function instruction pointer invalidated
+Solution: Use the funcref index instead of the instruction pointer
+
+Patch 9.0.1945
+Problem: MNV9: 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: MNV9: 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: MNV9: allows reserved keywords as members
+Solution: Disallow reserved keywords, disallow
+ duplicate object and class variables
+
+Patch 9.0.1950
+Problem: MNV9: error codes spread out
+Solution: group them together and reserve 100
+ more for future use
+
+Patch 9.0.1951
+Problem: MNV9: hard to debug mnv9_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: MNV9: 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: MNV9: 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: MNV9: 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: mnv9: 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: MNV9: 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: mnv9: 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: MNV9: 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: MNV9: 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: MNV9: double error message given
+Solution: Only give second error message, if there
+ 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: MNV9: some error messages can be improved
+Solution: Mention the defining class for variable access error message
+
+Patch 9.0.2000
+Problem: MNV9: use-after-free in deep call stack
+Solution: Get the object pointer from execution stack
+
+Patch 9.0.2001
+Problem: MNV9: segfault with islocked()
+Solution: Check that the lval pointer is not null for objects and
+ class variables
+
+Patch 9.0.2002
+Problem: MNV9: 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: MNV9: need more tests
+Solution: add additional disassembly tests
+
+Patch 9.0.2007
+Problem: MNV9: 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: MNV9: 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: MNV9: does not handle islocked() from a method correctly
+Solution: Handle islocked() builtin from a method.
+
+Patch 9.0.2016
+Problem: MNV9: 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: MNV9: no support for funcrefs
+Solution: Add support for object/class funcref members
+
+Patch 9.0.2020
+Problem: MNV9: 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: MNV9: 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: MNV9: 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 MNV 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: MNV9: object method funcref not cleaned up after use
+Solution: Clean up type stack after using object method funcref,
+ remove now longer used ISN_DEFEROBJ instruction
+
+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: MNV9: issue with funcref assignment and varargs
+Solution: Fix funcref type checking
+
+Patch 9.0.2044
+Problem: MNV9: exceptions confuse deferred functions
+Solution: save and restore exception state when calling deferred
+ 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: MNV9: 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: MNV9: crash with deferred function call and exception
+Solution: Save and restore exception state
+
+Patch 9.0.2051
+Problem: MNV9: 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: MNV9: 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: MNV9: 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: MNV9: 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: MNV9: 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: mnv9_script test too large
+Solution: split mnv9 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: MNV9: abstract static methods are possible
+Solution: Disallow abstract static methods
+
+Patch 9.0.2085
+Problem: MNV9: 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 mnv9class
+Solution: reference correct error message,
+ disable non-failing test
+
+Patch 9.0.2088
+Problem: MNV9: 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: MNV9: 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: MNV9: 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: MNV9: 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 subtracting 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 mnvlong_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 bytes 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 MNV was build with +channel
+
+Patch 9.0.2148
+Problem: MNV 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: MNV9: 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: MNV9: can use typealias in an assignment
+Solution: Generate errors when class/typealias involved in the rhs of an
+ assignment
+
+Patch 9.0.2157
+Problem: MNV9: 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: MNV9: not able to use imported interfaces and classes
+Solution: Detect imported class/interfaces names correctly
+
+Patch 9.0.2162
+Problem: MNV9: type documentation out-dated
+Solution: Update documentation, fix typo in type alias
+ definition
+
+Patch 9.0.2163
+Problem: MNV9: type can be assigned to list/dict
+Solution: Prevent assigning a `type` to a `list` or `dict`
+
+Patch 9.0.2164
+Problem: MNV9: can use type a func arg/return value
+Solution: Check if using type as function argument or return value
+
+Patch 9.0.2165
+Problem: MNV9: 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: MNV9-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: MNV9: builtin funcs may accept a non-value
+Solution: Restrict builtin functions that accept `type`
+
+Patch 9.0.2170
+Problem: MNV9: 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: MNV9: compiling :defer may fail
+Solution: compile defer, when ctx_skip is not SKIP_YES
+
+Patch 9.0.2173
+Problem: MNV9: MNV 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: MNV9: 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
+
+Patch 9.0.2176
+Problem: Compile error with Motif UI + mouse support (after v9.0.1262)
+Solution: Use correct oldval option pointer
+
+Patch 9.0.2177
+Problem: Wrong cursor position when dragging out of window.
+Solution: Don't use ScreenCols[] when mouse is not in current window.
+
+Patch 9.0.2178
+Problem: reg_executing() returns wrong result in :normal with range
+ when 'showcmd' is set (after 8.2.4705).
+Solution: Reset "pending_end_reg_executing" when executing a register.
+
+Patch 9.0.2179
+Problem: no filetype detection for execline scripts
+Solution: Add filetype detection for execline
+
+Patch 9.0.2180
+Problem: POSIX function name in exarg struct causes issues
+ on OpenVMS
+Solution: Rename getline member in exarg struct to ea_getline,
+ remove isinf() workaround for VMS
+
+Patch 9.0.2181
+Problem: MNV9: missing error messages
+Solution: Add one more error message
+
+Patch 9.0.2182
+Problem: MNV9: need a way to reserve future extension
+Solution: reserve double underscore prefix for future use
+ (Yegappan Lakshmanan)
+
+Patch 9.0.2183
+Problem: Maximum callback depth is not configurable.
+Solution: Revert patch 9.0.2103. Set 'maxfuncdepth' in test.
+ (zeertzjq)
+
+Patch 9.0.2184
+Problem: MNV9: inconsistent :type/:class messages
+Solution: Update the Messages (Ernie Rael)
+
+Patch 9.0.2185
+Problem: Coverity complains about not checking return value
+ in compare_isn_not_values (after 9.0.2184)
+Solution: cast return value to "(void)" to make intention clear
+
+Patch 9.0.2186
+Problem: LTCG compile error on Win/ARM64 for `write_chars()`
+Solution: Explicitly initialise the storage to use data rather than BSS
+ (Saleem Abdulrasool)
+
+Patch 9.0.2187
+Problem: Visual selection isn't drawn with 'breakindent' when the line
+ doesn't fit in the window (Jaehwang Jung)
+Solution: Adjust wlv->fromcol also for 'breakindent' (zeertzjq)
+
+Patch 9.0.2188
+Problem: cursor wrong after { in single line buffer
+ (Edwin Chan)
+Solution: do not place the cursor at the end for a single
+ line buffer when moving backwards (Gary Johnson)
+
+Patch 9.0.2189
+Problem: Wrong display when 'breakindentopt' contains "sbr" and
+ 'showbreak' and 'nobreakindent' are set.
+Solution: Always reset wlv->need_showbreak regardless of the values of
+ 'breakindent' and 'showbreak', as they aren't checked when
+ setting wlv->need_showbreak (zeertzjq)
+
+Patch 9.0.2190
+Problem: proto files need update
+Solution: re-generate them
+
+==============================================================================
+VERSION 9.2 *version-9.2* *version9.2* *mnv-9.2*
+
+This section is about improvements made between version 9.1 and 9.2.
+
+MNV9 script ~
+-----------
+Add support for internal builtin functions with mnv9 objects, see
+|builtin-object-methods|
+
+Enum support for MNV9 script |:enum|
+
+Generic function support for MNV9 script |generic-functions|
+
+Support for protected _new() method
+
+Support for compiling all the methods in a MNV9 class using |:defcompile|.
+
+Add support for object<{type}> as variable data type |mnv9-types|
+
+Support for the |Tuple| data type in MNV script and MNV9 script.
+
+Diff mode ~
+---------
+Include the "linematch" algorithm for the 'diffopt' setting. This aligns
+changes between buffers on similar lines improving the diff highlighting in
+MNV
+
+Improve the diff highlighting for changes within a line. Configurable using
+the "inline" sub option value for the 'diffopt' setting, with "inline:simple"
+being added to the default "diffopt" value (but this does not change how diff
+mode works).
+
+The 'diffanchors' option specifies a comma-separated list of addresses in
+a buffer that act as anchor points for splitting and independently diffing
+buffer sections, improving diff alignment. It is only used when 'diffopt'
+includes "anchor" and all specified addresses must resolve in every buffer, or
+else the anchors are ignored.
+
+Completion~
+----------
+- New Insert-mode completion: |i_CTRL-X_CTRL-R| to complete words from
+ registers.
+- Completion in search contexts using |/|, |?|, |:g|, |:v| and |:mnvgrep|
+ commands using 'wildchar'
+- ":filetype" command completion and the "filetypecmd" completion type for
+ |getcompletion()| have been included.
+- Support for command-line completion of 'keymap' option values.
+- Support for |fuzzy-matching| during |ins-completion| with the "fuzzy"
+ values of the 'completeopt' setting.
+- allow to complete shell commands and files using the new shellcmdline
+ completion type using |:command-complete| and |getcmdcomplpat()|
+- New option value for 'wildmode':
+ "noselect" - do not auto select an entry in the wildmenu
+ "exacttext" - show exact matches in wildmenu with search
+ completion
+- New flags for 'complete':
+ "F{func}" - complete using given function
+ "F" - complete using 'completefunc'
+ "o" - complete using 'omnifunc'
+- New option value for 'completeopt':
+ "nosort" - do not sort completion results
+ "preinsert" - highlight to be inserted values
+ "nearest" - sort completion results by distance to cursor
+- new function |wildtrigger()| to trigger wildcard expansion
+- Support for Autocompletion has been added |ins-autocompletion|
+
+Platform specific~
+-----------------
+- Support for Wayland UI and support for the Wayland clipboard has been added
+ |wayland|.
+
+- Support for the XDG Desktop Specification |xdg-base-dir| has been added and
+ the environment variable |$MYMNVDIR| is set to the users personal runtime
+ directory ($HOME/.mnv or $HOME/.config/mnv on Linux, $HOME/mnvfiles on
+ Windows).
+
+- Python3 support in OpenVMS is now available.
+
+- The Win32 GUI comes with better toolbar icons.
+
+- Better fullscreen support for Haiku |os_haiku.txt|.
+
+ *new-other-9.2*
+Other new features ~
+------------------
+- Support for Super key mappings in GTK using <D-Key>.
+
+- The new optional packages |package-comment|, |package-nohlsearch|,
+ |package-hlyank|, |help-TOC|, |package-helpcurwin| and |package-osc52| are
+ included.
+
+- An interactive tutor plugin has been included |mnv-tutor-mode| and can be
+ started via |:Tutor|.
+
+- Support for translating messages in MNV script plugins using the |gettext()|
+ and |bindtextdomain()| functions was included.
+
+- Support highlighting the matched text and the completion kind for
+ insert-mode completion and command-line completion in |ins-completion-menu|,
+ see |complete-items|.
+
+- A new vertical |tabpanel| window has been included which is a vertical
+ 'tabline'.
+
+- The |dist#mnv9#Launch()| and |dist#mnv9#Open()| functions have been added to
+ the |mnv-script-library| and decoupled from |netrw|.
+
+- The new digraph "APPROACHES THE LIMIT" using ".=" has been added.
+
+- Add the new default highlighting groups "Bold", "Italic" and "BoldItalic"
+ for use in syntax scripts.
+
+- |items()| function now supports Blob.
+
+- The clipboard provider feature has been added |clipboard-providers|.
+
+ *changed-9.2*
+Changed~
+-------
+
+Default values: ~
+- the default 'history' option value has been increased to 200 and removed
+ from |defaults.mnv|
+- the default 'backspace' option for MNV has been set to "indent,eol,start"
+ and removed from |defaults.mnv|
+- the default fontsize for the GTK builds of MNV (Windows and Unix) has been
+ increased to 12pt to accommodate modern high-dpi monitors
+- the default value of the 'keyprotocol' option has been updated and support
+ for the ghostty terminal emulator (using kitty protocol) has been added
+- Improved visual highlighting |hl-Visual|
+- the default value for 'showcmd' is always enabled when using non-compatible
+ mode (previously, it was off on UNIX systems) and consequently removed from
+ |defaults.mnv|
+- Improve the diff mode experience by updating the 'diffopt' default value to
+ "internal,filler,closeoff,indent-heuristic,inline:char".
+- the 'ruler' option value is always enabled when using non-compatible mode
+ and removed from |defaults.mnv|
+
+Completion: ~
+- allow to complete directories from 'cdpath' for |:cd| and similar commands,
+ add the "cd_in_path" completion type for e.g. |:command-complete| and
+ |getcompletion()|
+- allow to specify additional attributes in the completion menu (allows to
+ mark deprecated attributes from LSP server) |complete-items|
+- the completed word and completion type are provided when handling the
+ |CompleteDone| autocommand in the |v:event| dictionary
+- |complete_info()| returns the list of matches shown in the poppu menu via
+ the "matches" key
+- handle multi-line completion items as expected
+- improved commandline completion for the |:hi| command
+- allow to limit matches for the 'complete' sources by using the
+ "{flag}^<limit>" notation
+- 'smartcase' applies to completion filtering
+
+Options: ~
+- 'commentstring' is now available in all builds and no longer requires the
+ |+folding| feature
+- the default for 'commentstring' contains whitespace padding to have
+ automatic comments look nicer |comment-install|
+- 'completeopt' is now a |global-local| option.
+- add 'cpoptions' flag "z" |cpo-z|, to disable some (traditional) vi
+ behaviour/inconsistency (see |d-special| and |cw|).
+- add 'cpoptions' flag "~" |cpo-~| to disable resolving symlinks on |:cd|
+ commands
+- new option values for 'fillchars':
+ "trunc" - configure truncation indicator, 'pummaxwidth'
+ "truncrl" - like "trunc" but in 'rl' mode, 'pummaxwidth'
+ "tpl_vert" - vertical separators for the 'tabpanel'
+ "foldinner" - character used inside the 'foldcolumn' for nested
+ fold levels
+- 'grepformat' is now a |global-local| option.
+- adjust for GTK3 dropping some mouse cursors 'mouseshape'
+- 'nrformats' accepts the new "blank" suboption, to determine a signed or
+ unsigned number based on whitespace in front of a minus sign.
+- 'rulerformat' now supports the |stl-%!| item
+- use 'smoothscroll' logic for CTRL-F / CTRL-B for pagewise scrolling
+ and CTRL-D / CTRL-U for half-pagewise scrolling
+- Setting 'nowrap' in a modeline could cause long lines to be hidden
+ off-screen. To make this visible, the listchars "extend" suboption is set
+ to ">" by default, indicating text that extends beyond the window width.
+- 'guioptions': New value |'go-C'| to style the title/caption bar on Windows 11
+ (see also the below platform specific change).
+- 'guioptions': Support darkmode on MS-Windows for menu and title bar using
+ |'go-d'| (see also the below platform specific change).
+- 'guioptions': New value |'go-s'| to support fullscreen on MS-Windows GUI
+ (see also the below platform specific change).
+- 'completepopup': Add more values to style popup windows.
+- 'fsync' is now a |global-local| option.
+
+Ex commands: ~
+- allow to specify a priority when defining a new sign |:sign-define|
+- |:bwipe| also wipes jumplist and tagstack data
+- moving in the buffer list using |:bnext| and similar commands, behaves as
+ documented and skips help buffers (if not run from a help buffer, else
+ moves to the next/previous help buffer).
+- |:keeppatterns| preserves the last substitute pattern when used with |:s|
+- |:retab| accepts the new optional parameter -indentonly to only change
+ whitespace in indented lines.
+
+Functions: ~
+- provide information about function arguments using the get(func, "arity")
+ function |get()-func|
+- |setqflist()| and |setloclist()| can optionally try to preserve the current
+ selection in the quickfix list with the "u" action.
+- allow to pass local MNV script variables to python interpreter |py3eval()|
+- |getwininfo()| now also returns the "leftcol" and "status_height" properties
+ for a window
+- |v:stacktrace| The stack trace of the exception most recently caught and
+ not finished
+- Add the optional {opts} |Dict| argument to |getchar()| to control: cursor
+ behaviour, return type and whether or not to simplify the returned key
+- |chdir()| allows to optionally specify a scope argument
+- |matchfuzzy()| and |matchfuzzypos()| use an improved fuzzy matching
+ algorithm (same as fzy).
+- |sha256()| also accepts a |Blob| as argument.
+- |listener_add()| allows to register un-buffered listeners, so that changes
+ are handled as soon as they happen.
+- |redraw_listener_add()| and |redraw_listener_remove()| add/remove callbacks
+ for redrawing events.
+
+Plugins~
+- |zip| plugin works with PowerShell Core.
+
+Platform specific ~
+- MS-Winodws: Paths like "\Windows" and "/Windows" are now considered to be
+ absolute paths (to the current drive) and no longer relative.
+- MS-Windows: The title bar follows the |hl-TitleBar| and |hl-TitleBarNC|
+ highlighting group |gui-w32-title-bar| with |'go-C'|
+- MS-Windows: Support darkmode for menu and title bar using |'go-d'|
+- MS-Windows: MNV no longer searches the current directory for
+ executables when running external commands; prefix a relative or absolute
+ path if you want the old behavior |$NoDefaultCurrentDirectoryInExePath|.
+- MS-Windows: New value |'go-s'| to support fullscreen on MS-Windows GUI
+
+- macOS: increase default scheduler priority to TASK_DEFAULT_APPLICATION.
+
+Others: ~
+- the regex engines match correctly case-insensitive multi-byte characters
+ (and apply proper case folding)
+- the putty terminal is detected using an |TermResponse| autocommand in
+ |defaults.mnv| and MNV switches to a dark background
+- improve the |mnvtutor| and add a second chapter for more advanced tips
+- the configure script will favor using GTK3 over GTK2 when auto-detecting the
+ gui toolkit
+- |gv| works in operator pending mode and does not abort
+- The close button shown in the non-GUI 'tabline' will only be visible if the
+ 'mouse' option contains either "a" or any of the flags "n", "v", or "i".
+- |C-indenting| handles compound literals.
+- The digraphs "</" (LEFT-POINTING ANGLE BRACKET) and ">/" (RIGHT-POINTING
+ ANGLE BRACKET) have been changed to represent LEFT ANGLE BRACKET and RIGHT
+ ANGLE BRACKET to match the Unicode Miscellaneous Technical code chart from
+ Unicode 16.
+- Two additional digraphs have been added: LEFT ANGLE BRACKET "<[" and RIGHT
+ ANGLE BRACKET "]>".
+- Support for Unix domain sockets have been added for the clientserver
+ feature, see |socketserver-clientserver|.
+- |CmdlineLeave| sets |v:char| to the character that caused exiting the
+ Command-line.
+- |min()|/|max()| can handle all comparable data types.
+- MNV triggers the |TermResponseAll| autocommand for any terminal OSC value.
+- Support CTRL-B and CTRL-F in the |more-prompt|.
+
+
+Not MNV related~
+- Updated sponsorship documentation to replace references to ICCF with Kuwasha
+ International Development Society as MNV's designated charity.
+
+ *added-9.2*
+Added ~
+-----
+Various syntax, indent and other plugins were added.
+
+Functions: ~
+
+|base64_decode()| decode a base64 string into a blob
+|base64_encode()| encode a blob into a base64 string
+|blob2str()| convert a blob into a List of strings
+|bindtextdomain()| set message lookup translation base path
+|cmdcomplete_info()| get current cmdline completion info
+|diff()| diff two Lists of strings
+|filecopy()| copy a file {from} to {to}
+|foreach()| apply function to List items
+|getcellpixels()| get List of terminal cell pixel size
+|getcmdcomplpat()| Shell command line completion
+|getcmdprompt()| get prompt for input()/confirm()
+|getcompletiontype()| get command-line completion type
+|getregion()| get a region of text from a buffer
+|getregionpos()| get a list of positions for a region
+|getstacktrace()| get current stack trace of MNV scripts
+|id()| get unique identifier for a Dict, List, Object,
+ Channel or Blob variable
+|list2tuple()| turn a List of items into a Tuple
+|listener_add()| add a callback to listen to changes
+|matchbufline()| all the matches of a pattern in a buffer
+|matchstrlist()| all the matches of a pattern in a List of strings
+|ngettext()| lookup single/plural message translation
+|popup_setbuf()| switch to a different buffer in a popup
+|preinserted()| whether preinserted text has been inserted during
+ completion (see 'completeopt')
+|redraw_listener_add()| add callbacks to listen for redraws
+|redraw_listener_remove()| remove a redraw listener
+|str2blob()| convert a List of strings into a blob
+|test_null_tuple()| return a null tuple
+|tuple2list()| turn a Tuple of items into a List
+|uri_decode()| URI-decode a string
+|uri_encode()| URI-encode a string
+|wildtrigger()| trigger wildcard expansion
+
+
+Autocommands: ~
+
+|CmdlineLeavePre| before preparing to leave the command line
+|CursorMovedC| after the cursor was moved in the command-line
+|KeyInputPre| before processing any key event in any mode
+|SessionWritePost| after writing the session file |:mksession|
+|TabClosedPre| before closing a |tabpage|.
+|TermResponseAll| after the terminal response to |t_RV| and others is
+ received
+|WinNewPre| before creating a new window
+
+
+Highlighting: ~
+
+|hl-ComplMatchIns| matched text of the currently inserted completion
+|hl-DiffTextAdd| added text within a changed line
+|hl-MsgArea| highlighting of the Command-line and messages area
+|hl-PmenuBorder| Popup menu: highlighting of popup border characters
+|hl-PmenuMatch| Popup menu: highlighting of matched text
+|hl-PmenuMatchSel| Popup menu: highlighting of matched text in selected
+ line
+|hl-PmenuShadow| Popup menu: highlighting of the popup shadow
+|hl-PreInsert| highlighting for completion preinserted text
+|hl-TabPanel| |tabpanel|: not active tab page label
+|hl-TabPanelFill| |tabpanel|: filler space
+|hl-TabPanelSel| |tabpanel|: active tab page label
+|hl-TitleBarNC| Configure the inactive title/bar on MS-Windows 11
+|hl-TitleBar| Configure the active title/bar on MS-Windows 11
+
+Commands: ~
+
+|[r| and |]r| to move the cursor to previous/next rare word
+
+Ex-Commands: ~
+
+|:clipreset| choose a new method for accessing the clipboard
+|:iput| like |:put| but adjust indent
+|:pbuffer| Edit buffer [N] from the buffer list in the preview
+ window
+|:redrawtabpanel| Force updating the 'tabpanel'.
+|:uniq| Deduplicate text in the current buffer.
+|:wlrestore| reinitialize the wayland compositor connection
+
+Options: ~
+
+'autocomplete' Enable auto completion |ins-autocompletion|
+'autocompletedelay' Delay in msec before menu appears after typing
+'autocompletetimeout' initial decay timeout for autocompletion algorithm
+'chistory' Size of the quickfix stack |quickfix-stack|
+'clipmethod' How to access the clipboard
+'completeitemalign' Order of |complete-items| in Insert mode completion
+ popup
+'completetimeout' initial decay timeout for CTRL-N and CTRL-P
+'diffanchors' list of {address} to force syncing of diffs
+'eventignorewin' autocommand events that are ignored in a window
+'findfunc' MNV function to obtain the results for a |:find|
+ command
+'lhistory' Size of the location list stack |quickfix-stack|
+'maxsearchcount' Set the maximum number for search-stat |shm-S|
+'messagesopt' configure |:messages| and |hit-enter| prompt
+'osctimeoutlen' OSC terminator receive timeout
+'pumborder' define popup border and decorations
+'pummaxwidth' maximum width for the completion popup menu
+'showtabpanel' When to show the |tabpanel|
+'tabclose' Which tab page to focus after closing a tab page
+'tabpanel' Optional vertical panel for displaying tabpages
+ |tabpanel|
+'tabpanelopt' Optional settings for the |tabpanel|
+'t_CF' Support for alternate font highlighting terminal code
+'t_xo' Terminal uses XON/XOFF handshaking (e.g. vt420)
+'winfixbuf' Keep buffer focused in a window
+'wlseat' Specify Wayland seat to use for the |wayland| feature
+'wlsteal' Steal focus to access the |wayland| clipboard
+'wltimeoutlen' Specify the connection timeout for the |wayland|
+ compositor
+
+MNV Variables: ~
+|v:clipmethod| The current 'clipmethod'.
+|v:clipproviders| A dictionary containing clipboard providers
+ configuration |clipboard-providers|.
+|v:stacktrace| The most recent caught exception.
+|v:t_enum| Value of |enum| type.
+|v:t_enumvalue| Value of |enumvalue|.
+|v:t_tuple| Value of |Tuple| type.
+|v:termda1| The escape sequence returned for the primary device
+ attribute query (DA1).
+|v:termosc| The most recent received OSC response.
+|v:mnv_did_init| Set once MNV finishes startup initialization.
+|v:wayland_display| The name of the Wayland display MNV is connected to.
+
+MNV Arguments: ~
+|-Y| Do not connect to the |wayland| compositor.
+|--clientserver| Specify backend for clientserver functionality.
+
+Configure Switches: ~
+--with-wayland Enable the |wayland| feature.
+--enable-wayland-focus-steal Enable the |wayland-focus-steal| feature.
+--enable-socketserver Enable the |socketserver-clientserver|
+ feature.
+
+==============================================================================
+INCOMPATIBLE CHANGES *incompatible-9.2*
+
+Improved/Different MS-Windows mapping support
+|w32-experimental-keycode-trans-strategy|
+
+==============================================================================
+COMPILE TIME CHANGES *compile-changes-9.2*
+
+Support for building with Ruby 3.3.
+
+Support for building MNV 9 in z/OS (MVS).
+
+Clean-up old MS-Windows code.
+
+==============================================================================
+PATCHES *patches-9.2* *bug-fixes-9.2*
+ *patches-after-9.1*
+
+The list of patches that got included since 9.1.0. This includes all the new
+features, but does not include runtime file changes (syntax, indent, ftplugin,
+documentation, etc.)
+
+Note: authorship and the list of changed files is left out and only visible
+through `git log` for each commit.
+
+Patch 9.1.0001
+Problem: When closing the current window (or when moving it to a tabpage),
+ the previous window may refer to the new current window (`winnr() ==
+ winnr('#')`) if that window is selected as the new current window.
+Solution: Set `prevwin = NULL` when switching away from an invalid `curwin`
+ and the target window was the `prevwin`. (Sean Dewar)
+
+Patch 9.1.0002
+Problem: a closing fold expression may unexpectedly start a new fold when it
+ should end a fold (reported by Shota Nozaki)
+Solution: if a fold hasn't started yet, do not immediately start a new fold
+ with level 1 (Shota Nozaki)
+
+Patch 9.1.0003
+Problem: Cannot build against Ruby 33 dynamically
+Solution: Ruby 33 removed transient heap, so do not use rb_ary_transient
+ anymore, NoMethodError format changed, so update test for expected
+ error message (Isao Sato)
+
+Patch 9.1.0004
+Problem: reloading colorscheme when not changing 'background'
+Solution: Check, if the background option value actually changed,
+ if not, return early.
+
+Patch 9.1.0005
+Problem: OpenVMS build does not support python3 and xterm_save
+Solution: Enable python3 + xterm_save feature, fix style issues
+ (Zoltan Arpadffy)
+
+Patch 9.1.0006
+Problem: is*() and to*() function may be unsafe
+Solution: Add SAFE_* macros and start using those instead
+ (Keith Thompson)
+
+Patch 9.1.0007
+Problem: can select empty inner text blocks
+ (laurentalacoque)
+Solution: make selecting empty inner text blocks an error textobjects: Make
+ selecting inner empty blocks an error
+
+Patch 9.1.0008
+Problem: NSIS installer includes syntax test dumps
+ (Yegappan Lakshmanan)
+Solution: Exclude syntax/testdir when creating the NSIS installer
+
+Patch 9.1.0009
+Problem: Cannot easily get the list of matches
+Solution: Add the matchstrlist() and matchbufline() MNV script functions
+ (Yegappan Lakshmanan)
+
+Patch 9.1.0010
+Problem: Keymap completion is not available
+Solution: Add keymap completion (Doug Kearns)
+
+Patch 9.1.0011
+Problem: regexp cannot match combining chars in collection
+Solution: Check for combining characters in regex collections for the
+ NFA and BT Regex Engine
+
+Patch 9.1.0012
+Problem: regression with empty inner blocks introduced
+ (after v9.1.0007)
+Solution: Set correct cursor position, Check for visual mode
+ being active (Maxim Kim)
+
+Patch 9.1.0013
+Problem: Modula2 filetype support lacking
+Solution: Improve the Modula-2 runtime support, add additional modula2
+ dialects, add compiler plugin, update syntax highlighting,
+ include syntax tests, update Makefiles (Doug Kearns)
+
+Patch 9.1.0014
+Problem: incorrect use of W_WINROW in edit.c
+Solution: compare against curwin->w_height instead Remove incorrect use of
+ W_WINROW
+
+Patch 9.1.0015
+Problem: i_CTRL-R- no longer works in replace mode
+Solution: delete characters in replace mode before putting, add a test, add a
+ bit warning into the documentation, that i_CTRL-R-P/O is not
+ supported in Replace mode for now
+
+Patch 9.1.0016
+Problem: default diff highlighting is too noisy
+Solution: Link diff highlighting groups to new Added/Removed/Changed, revert
+ previous change (Romain Lafourcade)
+
+Patch 9.1.0017
+Problem: use-after-free in eval1_emsg() when an empty line follows a lambda
+ (by @yu3s)
+Solution: only set evalarg->eval_using_cmdline = FALSE when the *arg pointer
+ is not null
+
+Patch 9.1.0018
+Problem: use of #if instead of #ifdef
+Solution: use correct form of #ifdef
+
+Patch 9.1.0019
+Problem: cmdline may disappear when changing 'cmdheight'
+ (after Patch 9.0.0190, @markonm)
+Solution: always re-calculate the old_p_ch value, not only
+ when cmdline_row was higher than expected
+
+Patch 9.1.0020
+Problem: MNV9: cannot compile all methods in a class
+Solution: Support compiling all the methods in a class using :defcompile
+ (Yegappan Lakshmanan)
+
+Patch 9.1.0021
+Problem: i_CTRL-R- doesn't work for multibyte chars in Replace mode,
+ Coverity complains missing return value for u_save_cursor()
+Solution: Use mb_charlen() and del_chars() instead, handle failure mode
+ for u_save_cursor() correctly (@zeertzjq)
+
+Patch 9.1.0022
+Problem: Coverity complains about improper use of negative value
+Solution: Add a condition to validate that keytyped is larger or equal
+ to 0
+
+Patch 9.1.0023
+Problem: xxd: few problems with EBCDIC for z/OS (MVS)
+Solution: Fix xxd build and support ASCII and UTF-8 on z/OS (MVS)
+ natively, add MVS guard checks with __CHARSET_LIB,
+ support $LIBS in the Makefile (Igor Todorovski)
+
+Patch 9.1.0024
+Problem: z/OS (MVS) support can be improved
+Solution: set UTF-8 as the default encoding for z/OS
+
+Patch 9.1.0025
+Problem: A few typos in tests and justify.mnv
+Solution: fix them
+
+Patch 9.1.0026
+Problem: win32: Windows default font lacking (@clach04)
+Solution: Improve default font (Ken Takata)
+
+Patch 9.1.0027
+Problem: MNV is missing a foreach() func
+Solution: Implement foreach({expr1}, {expr2}) function, which applies {expr2}
+ for each item in {expr1} without changing it (Ernie Rael)
+
+Patch 9.1.0028
+Problem: win32: Ctrl-D cannot be used to close a pipe
+Solution: Properly detect Ctrl-D when reading from a pipe
+ (GuyBrush)
+
+Patch 9.1.0029
+Problem: Cannot act on various terminal response codes
+Solution: Add the TerminalResponseAll autocommand
+ (Danek Duvall)
+
+Patch 9.1.0030
+Problem: Cannot use terminal alternate fonts (PMunch)
+Solution: Support terminal alternate fonts using CSI SGR 10-20 and t_CF code
+ (PMunch)
+
+Patch 9.1.0031
+Problem: Link Error on Windows
+Solution: Add ifdef HAVE_TGETENT for term_strings_not_set()
+
+Patch 9.1.0032
+Problem: MS-Windows installer misses keymaps (Maxim Kim)
+Solution: Include keymaps in the installer archive (Ken Takata)
+
+Patch 9.1.0033
+Problem: Insert mode not stopped if an autocommand modifies a hidden
+ buffer while closing a prompt buffer.
+Solution: Don't set b_prompt_insert if stop_insert_mode is already set.
+ (zeertzjq)
+
+Patch 9.1.0034
+Problem: Window may unexpectedly scroll when 'scrollbind' is set
+ and setting a buffer-local option using setbufvar() (Boris Staletic)
+Solution: Save and restore the windows topline before opening the
+ popup window.
+
+Patch 9.1.0035
+Problem: i_CTRL-] triggers InsertCharPre
+Solution: Return if CTRL-] is received. InsertCharPre is supposed to be only
+ used for chars to be inserted but i_CTRL-] triggers expansion and is
+ not inserted into the buffer (altermo)
+
+Patch 9.1.0036
+Problem: MS-Windows: Warning about unused variable
+ (after 9.1.0030, John Marriott)
+Solution: Adjust #ifdef and test for HAVE_TGETENT (John Marriott)
+
+Patch 9.1.0037
+Problem: Calling get_breakindent_win() repeatedly when computing virtual
+ column, and get_breakindent_win() does a STRCMP() on the whole line
+ since Patch 9.0.0016.
+Solution: Cache the result, since the line doesn't change.
+ (zeertzjq)
+
+Patch 9.1.0038
+Problem: Unnecessary loop in getvcol().
+Solution: Compare next char position with pos->col directly (zeertzjq).
+
+Patch 9.1.0039
+Problem: too vague errors for 'listchars'/'fillchars'
+Solution: Include the field name in error message (zeertzjq).
+
+Patch 9.1.0040
+Problem: Modifying a hidden buffer still interferes with prompt buffer mode
+ changes.
+Solution: Save and restore b_prompt_insert (zeertzjq).
+
+Patch 9.1.0041
+Problem: xxd -i may generate incorrect C statements (Kuratius)
+Solution: xxd: Make size type returned by -i option compatible with C standard
+ by using type size_t instead of unsigned int (Kuratius)
+
+Patch 9.1.0042
+Problem: Missing test for Chuck filetype after (Christian Clason)
+Solution: Add a filetype test
+
+Patch 9.1.0043
+Problem: ml_get: invalid lnum when :s replaces visual selection (@ropery)
+Solution: substitute may decrement the number of lines in a buffer, so
+ validate, that the bottom lines of the visual selection
+ stays within the max buffer line
+
+Patch 9.1.0044
+Problem: po Makefiles can be improved
+Solution: Improve the style of the Makefiles, update Makefile variables,
+ update documentation (RestorerZ)
+
+Patch 9.1.0045
+Problem: --remote-silent applies the wildignore option to each argument,
+ which may result in "E479: No match" (hebaronson)
+Solution: temporarily reset 'wildignore' setting when building the :drop
+ command
+
+Patch 9.1.0046
+Problem: :drop does not re-use empty buffer (Rocco Mao)
+Solution: Make :drop re-use an empty buffer (Rocco Mao)
+
+Patch 9.1.0047
+Problem: Things that temporarily change/restore curwin/buf (e.g: win_execute,
+ some autocmds) may break assumptions that curwin/buf is the cmdwin
+ when "cmdwin_type != 0", causing issues.
+Solution: Expose the cmdwin's real win/buf and check that instead. Also try to
+ ensure these variables are NULL if "cmdwin_type == 0", allowing them
+ to be used directly in most cases without checking cmdwin_type.
+ (Sean Dewar).
+
+Patch 9.1.0048
+Problem: Autocmds triggered from opening the cmdwin (in win_split and
+ do_ecmd) can cause issues such as E199, as the current checks
+ are insufficient.
+Solution: Commands executed from the cmdwin apply to the old curwin/buf, so
+ they should be kept in a "suspended" state; abort if they've
+ changed. Also abort if cmdwin/buf was tampered with, and check that
+ curwin is correct. Try to clean up the cmdwin buffer (only if hidden
+ and non-current to simplify things; the same approach is used when
+ closing cmdwin normally), and add a beep. (Sean Dewar)
+
+Patch 9.1.0049
+Problem: E95 is possible if a buffer called "[Command Line]" already exists
+ when opening the cmdwin. This can also happen if the cmdwin's buffer
+ could not be deleted when closing.
+Solution: Un-name the cmdwin buffer, and give it a special name instead,
+ similar to what's done for quickfix buffers and for unnamed prompt
+ and scratch buffers. As a result, BufFilePre/Post are no longer
+ fired when opening the cmdwin. Add a "command" key to the dictionary
+ returned by getbufinfo() to differentiate the cmdwin buffer instead.
+ (Sean Dewar)
+
+Patch 9.1.0050
+Problem: Win32 Keyboard handling is sub-optimal and has many issues with
+ international keyboards (risa2000) (after v8.2.4807)
+Solution: soft-rollback the change, allow the user to select a suitable
+ key-translation strategy (Anton Sharonov)
+
+Patch 9.1.0051
+Problem: MS-Windows: Key event test fail (after 9.1.0050)
+Solution: Catch Interrupt and return Ctrl-C
+
+Patch 9.1.0052
+Problem: Patch 9.1.0041 causes regressions for users (Gleb
+ Fotengauer-Malinovskiy)
+Solution: Revert 9.1.0041 and restore old behaviour
+
+Patch 9.1.0053
+Problem: MS-Windows: Key event test still fails
+Solution: Catch more interrupts (after 9.1.0051)
+
+Patch 9.1.0054
+Problem: 'linebreak' may still apply to leading whitespace (VanaIgr)
+Solution: Compare pointers instead of virtual columns (zeertzjq).
+
+Patch 9.1.0055
+Problem: formatting long lines is slow (kawaii-Code)
+Solution: optimize gq (internal_format) for long lines (kawaii-Code)
+
+Patch 9.1.0056
+Problem: Incorrect number of trailing spaces inserted for multibyte
+ characters when pasting a blockwise register in blockwise visual
+ mode (VanaIgr)
+Solution: Skip over trailing UTF-8 bytes when computing the number of trailing
+ spaces (VanaIgr)
+
+Patch 9.1.0057
+Problem: MS-Windows: Key event test still fails
+Solution: Skip testing CTRL-C, since it causes an Interrupt which causes a
+ test failure (after 9.1.0053)
+
+Patch 9.1.0058
+Problem: Cannot map Super Keys in GTK UI (Casey Tucker)
+Solution: Enable Super Key mappings in GTK using <D-Key> (Casey Tucker)
+
+Patch 9.1.0059
+Problem: No event is triggered before creating a window
+Solution: Add the WinNewPre event (Sergey Vlasov).
+
+Patch 9.1.0060
+Problem: Recorded register cannot be translated using keytrans() when it
+ involves character search (iddqd505)
+Solution: Record a K_IGNORE instead of a K_NOP (zeertzjq).
+
+Patch 9.1.0061
+Problem: UX of visual highlighting can be improved
+Solution: Improve readibility of visual highlighting, by setting better
+ foreground and background colors
+
+Patch 9.1.0062
+Problem: Internal error when :luado/perldo/pydo etc delete lines
+Solution: Test that the line is still valid line number (zeertzjq).
+
+Patch 9.1.0063
+Problem: GTK code can be improved
+Solution: Improve GTK code for initial Wayland support (lilydjwg).
+
+Patch 9.1.0064
+Problem: No Wayland support
+Solution: Add Wayland UI support (lilydjwg).
+
+Patch 9.1.0065
+Problem: Segfault with CompleteChanged autocommand (markonm)
+Solution: Test match->cp_prev for being NULL before accessing it
+
+Patch 9.1.0066
+Problem: gcc complains about use of uninitialized var (Tony Mechelynck, after
+ 9.1.0064)
+Solution: initialize button to silence gcc
+
+Patch 9.1.0067
+Problem: gcc still complains about use of uninitialized var (Tony Mechelynck,
+ after 9.1.0064/9.1.0066)
+Solution: This time init the correct variable
+
+Patch 9.1.0068
+Problem: Visual highlighting can still be improved
+Solution: Update Visual highlighting for 8 color terminals, use uniform grey
+ highlighting for dark and light bg (Maxim Kim)
+
+Patch 9.1.0069
+Problem: ScreenLines may not be correctly initialized, causing hang
+ (Olaf Seibert, after 9.0.0220)
+Solution: always initialize ScreneLines when allocating a screen (Olaf
+ Seibert)
+
+Patch 9.1.0070
+Problem: CI: testsuite not run on M1 Mac
+Solution: Make it run on gh runners for M1, disable failing tests for now,
+ until we figure the problem with the failings tests out (rhysd)
+
+Patch 9.1.0071
+Problem: Need a diff() MNV script function
+Solution: Add the diff() MNV script function using the xdiff internal diff
+ library, add support for "unified" and "indices" mode (Yegappan
+ Lakshmanan).
+
+Patch 9.1.0072
+Problem: Not able to build without FEAT_DIFF (John Marriott, after 9.1.0071)
+Solution: Adjust #ifdefs (Yegappan Lakshmanan)
+
+Patch 9.1.0073
+Problem: Looping over modifier_keys_table[] unnecessarily with only
+ MOD_MASK_ALT or MOD_MASK_CMD, as modifier_keys_table[] only contains
+ MOD_MASK_SHIFT and MOD_MASK_CTRL, and the loop won't do anything.
+Solution: Remove MOD_MASK_ALT and MOD_MASK_CMD from the condition (zeertzjq).
+
+Patch 9.1.0074
+Problem: did_set_breakat() should be in optionstr.c as 'breakat' is a string
+ option.
+Solution: Move did_set_breakat() to optionstr.c (zeertzjq).
+
+Patch 9.1.0075
+Problem: insert completion not correct when adding new leader
+Solution: Reset compl_curr_match to compl_shown_match (glepnir).
+
+Patch 9.1.0076
+Problem: luau config file not detected (lopy)
+Solution: Detect it as jsonc (lopy)
+
+Patch 9.1.0077
+Problem: The call to redraw_for_cursorline() in nv_mousescroll() is
+ unnecessary because redraw_for_cursorline() only sets redraw type to
+ UPD_VALID, and all code paths in do_mousescroll() already set redraw
+ type to at least UPD_VALID.
+Solution: Remove call to redraw_for_cursorline() in nv_mousescroll()
+ (zeertzjq).
+
+Patch 9.1.0078
+Problem: GTK3: using wrong style for pre-edit area
+Solution: remove the widget name, adjust css (lilydjwg).
+
+Patch 9.1.0079
+Problem: LineNrAbove and LineNrBelow background wrong on wrapped lines.
+Solution: Update number column also for wrapped part of a line (zeertzjq).
+
+Patch 9.1.0080
+Problem: unexpected error for modifying final list using += operator
+ (Ernie Rael)
+Solution: Allow List value modification of a final variable using +=
+ operator (Yegappan Lakshmanan)
+
+Patch 9.1.0081
+Problem: X11 mouse-scrolling stutters (Ron Aaron, after 9.1.0064)
+Solution: Handle GDK_SCROLL_SMOOTH fractional distance events
+ (lilydjwg)
+
+Patch 9.1.0082
+Problem: Redrawing can be improved when deleting lines with 'cursorline'.
+Solution: Use smarter invalidation and adjustment. Remove unnecessary
+ UPD_VALID as it is already set at the top of the loop. Make the
+ test for #4862 fail without the fix (zeertzjq).
+
+Patch 9.1.0083
+Problem: Redrawing can be improved when inserting/deleting lines with
+ 'number'.
+Solution: Only redraw the number column of lines below changed lines. Add a
+ test as this wasn't previously tested (zeertzjq).
+
+Patch 9.1.0084
+Problem: Visual hl wrong when it ends before multibyte 'showbreak' (lacygoil)
+Solution: Use vcol_sbr instead of adding n_extra (zeertzjq).
+
+Patch 9.1.0085
+Problem: X11 scroll size changes after accessing clipboard (Ernie Rael)
+Solution: use GDK_SCROLL_MASK for X11 and GDK_SMOOTH_SCROLL_MASK for
+ Wayland (lilydjwg).
+
+Patch 9.1.0086
+Problem: Problem when scrolling using slow touchpads scroll event
+Solution: Better ways to determine if a smooth scroll has ended (when
+ available) (lilydjwg).
+
+Patch 9.1.0087
+Problem: Restore lastused_tabpage too early in do_arg_all() function it
+ will change later in the function.
+Solution: Restore lastused_tabpage a bit later, when being done with
+ tabpages (glepnir).
+
+Patch 9.1.0088
+Problem: TextChanged not triggered for :norm! commands (machakann, after
+ v9.0.2031)
+Solution: Only reset curbuf->b_last_changedtick if TextChangedI was triggered
+ in insert mode (and not blocked)
+
+Patch 9.1.0089
+Problem: qsort() comparison functions should be transitive
+Solution: Do not subtract values, but rather use explicit comparisons
+ Improve qsort() comparison functions
+
+Patch 9.1.0090
+Problem: Assigning wrong colors when parsing terminal OSC response
+Solution: Correctly assign Green and Blue from the terminal response
+ (Maxim Kim)
+
+Patch 9.1.0091
+Problem: Syntax test fails when run with non C locale
+Solution: Run syntax tests with C locale, clean up Xtestscript file,
+ strip environment variables from GetMNVCommand() (h-east).
+
+Patch 9.1.0092
+Problem: Compiler warning for missing type in scroll_event() (chdiza)
+Solution: Declare display_type explicitly as integer
+
+Patch 9.1.0093
+Problem: Still a qsort() comparison function fuzzy_match_item_compare()
+ that returns result of subtraction (after 9.1.0089).
+Solution: Use an explicit comparison instead of subtraction (zeertzjq).
+
+Patch 9.1.0094
+Problem: xxd: buffer-overflow when writing color output
+Solution: properly account for the color escape sequences and adjust LLEN
+ macro (Goffredo Baroncelli)
+
+Patch 9.1.0095
+Problem: tests: test_restricted() fails (after: v9.1.0091)
+Solution: Add a space before the pipecmd and the actual MNV command to run
+
+Patch 9.1.0096
+Problem: diff() function uses 'diffexpr' (rickhowe)
+Solution: Make diff() always use internal diff(), add support for unified diff
+ context length, sort diff() options in help (Yegappan Lakshmanan)
+
+Patch 9.1.0097
+Problem: 'breakindent' behaves inconsistently with 'list' and splits.
+Solution: Use 'listchars' from the correct window and handle caching properly.
+ Move cheaper comparisons to the top (zeertzjq).
+
+Patch 9.1.0098
+Problem: CompletionChanged not triggered when new leader added causing
+ no matching item in the completion menu
+Solution: When completion is active but no items matched still trigger
+ CompletChanged event (glepnir).
+
+Patch 9.1.0099
+Problem: Not able to use diff() with 'diffexpr' (rickhowe, after v9.1.0096)
+Solution: Use a default context length of 0, update diff() help text,
+ add a test for using diff() with 'diffexpr' (Yegappan Lakshmanan).
+
+Patch 9.1.0100
+Problem: When undoing with 'spell', redrawWinline() is called after
+ changed_lines(), while later win_update() sets redraw type to
+ UPD_NOT_VALID, even though w_redraw_top and w_redraw_bot are
+ still valid.
+Solution: Only set redraw type to UPD_NOT_VALID when inserting/deleting
+ lines after parts of window has pending redraw, i.e., when
+ changed_lines() is called after redrawWinline() (zeertzjq).
+
+Patch 9.1.0101
+Problem: upper-case of ß should be U+1E9E (CAPITAL LETTER SHARP S)
+ (fenuks)
+Solution: Make gU, ~ and g~ convert the U+00DF LATIN SMALL LETTER SHARP S (ß)
+ to U+1E9E LATIN CAPITAL LETTER SHARP S (ẞ), update tests
+ (glepnir)
+
+Patch 9.1.0102
+Problem: settabvar() may change the last accessed tabpage.
+Solution: Save and restore lastused_tabpage (zeertzjq).
+
+Patch 9.1.0103
+Problem: 'breakindentopt' "min" works incorrectly with 'signcolumn'.
+Solution: Use win_col_off() and win_col_off2() (zeertzjq).
+
+Patch 9.1.0104
+Problem: Linking fails with -lto because of PERL_CFLAGS (Zoltan Toth)
+Solution: Filter out -flto argument from Perl CFLAGS.
+
+Patch 9.1.0105
+Problem: Style: typos found
+Solution: correct them (zeertzjq).
+
+Patch 9.1.0106
+Problem: Visual highlight hard to read with 'termguicolors' (Maxim Kim)
+Solution: Set Visual GUI foreground to black (with background=light)
+ and lightgrey (with background=dark) (Maxim Kim).
+
+Patch 9.1.0107
+Problem: CI: Fix MacOS-14 tests (after 9.1.0070)
+Solution: Re-enable sound tests by granting Mic access, disable
+ Test_diff_screen because of buggy MacOS diff (non GNU version),
+ re-enable Test_term_gettitle() (Yee Cheng Chin)
+
+Patch 9.1.0108
+Problem: filetype: no support for dtso files
+Solution: Add detection for *.dtso files as dts file type (Markus
+ Schneider-Pargmann)
+
+Patch 9.1.0109
+Problem: filetype: no support for its files
+Solution: Add detection for *.its files as dts file type (Brandon Maier)
+
+Patch 9.1.0110
+Problem: No support for Config.in filetype
+Solution: filetype: add 'Config.in' filetype detection
+
+Patch 9.1.0111
+Problem: filetype: no support for bats files
+Solution: Add .bats filetype support
+
+Patch 9.1.0112
+Problem: When the quickfix buffer has been modified an autocommand may
+ invalidate the undo stack (kawarimidoll)
+Solution: When clearing the quickfix buffer, also wipe the undo stack
+
+Patch 9.1.0113
+Problem: duplicate code when cleaning undo stack
+Solution: refactor undo cleanup into a single public function
+
+Patch 9.1.0114
+Problem: Setting some options changes curswant unnecessarily.
+Solution: Add a P_HLONLY flag that prevents changing curswant (zeertzjq).
+
+Patch 9.1.0115
+Problem: Using freed memory with full tag stack and user data
+ (Konstantin Khlebnikov)
+Solution: Clear the user data pointer of the newest entry (zeertzjq,
+ Konstantin Khlebnikov).
+
+Patch 9.1.0116
+Problem: win_split_ins has no check for E36 when moving an existing
+ window
+Solution: check for room and fix the issues in f_win_splitmove()
+ (Sean Dewar)
+
+Patch 9.1.0117
+Problem: win_splitmove fires WinNewPre and possibly WinNew when moving
+ windows, even though no new windows are created.
+Solution: Don't fire WinNew and WinNewPre when inserting an existing window,
+ even if it isn't the current window. Improve the accuracy of related
+ documentation. (Sean Dewar)
+
+Patch 9.1.0118
+Problem: saving and restoring all frames to split-move is overkill now
+ that WinNewPre is not fired when split-moving.
+Solution: defer the flattening of frames until win_split_ins begins
+ reorganising them, and attempt to restore the layout by undoing our
+ changes. (Sean Dewar)
+
+Patch 9.1.0119
+Problem: can switch windows while textlocked via f_win_gotoid and
+ f_win_splitmove (which also allows switching in the cmdwin).
+Solution: Check text_or_buf_locked in f_win_splitmove() (Sean Dewar)
+
+Patch 9.1.0120
+Problem: hard to get visual region using MNV script
+Solution: Add getregion() MNV script function (Shougo Matsushita, Jakub
+ Łuczyński)
+
+Patch 9.1.0121
+Problem: infinite loop in win_update with 'smoothscroll' set when
+ window width is equal to textoff, or signed integer overflow
+ if smaller.
+Solution: Don't revalidate wp->w_skipcol in that case, as no buffer text
+ is being shown. (Sean Dewar)
+
+Patch 9.1.0122
+Problem: Some minor issues with the getregion() function
+Solution: Fix examples in the help, use OP_NOP op_type and MBLOCK
+ as motion_type in f_getreg(), update mnv syntax to for getregion()
+ (Maxim Kim)
+
+Patch 9.1.0123
+Problem: MS-Windows: system() may deadlock when calling binaries that
+ expect stdin
+Solution: Ignore the SHELL_EXPAND flag (GuyBrush)
+
+Patch 9.1.0124
+Problem: Virtual text with text_align 'right'/'below' wasn't being used when
+ a non-virtual text property overlaps with the end of the line. This
+ was because the non-virtual text property had a higher priority,
+ preventing the virtual text from being used.
+Solution: Fix the sorting of text properties so virtual text properties have a
+ higher priority than non-virtual text properties (Dylan
+ Thacker-Smith).
+
+Patch 9.1.0125
+Problem: unused init of text_prop_idxs in win_line
+Solution: Remove it, fix typo (Dylan Thacker-Smith).
+
+Patch 9.1.0126
+Problem: Internal error when passing mark in another buffer to getregion().
+Solution: Don't allow marks in another buffer (zeertzjq)
+
+Patch 9.1.0127
+Problem: Naming a non-pointer variable "oap" is strange.
+Solution: Rename it to "oa". Also prevent using freed memory in case of memory
+ allocation failure (zeertzjq).
+
+Patch 9.1.0128
+Problem: win_gotoid() checks for textlock and other things when switching
+ to a window that is already current (after v9.1.0119)
+Solution: return early with success when attempting to switch to curwin
+ (Sean Dewar)
+
+Patch 9.1.0129
+Problem: Virtual text with text_wrap 'wrap' was effectively being truncated
+ by a break conditional on the EOL list character being added to the
+ screen line. (BigPeet)
+Solution: Remove the condition that was leading to the early break and instead
+ fix a similar but incorrectly written outer condition that checks if
+ there is more to add at the end of the screen line. (Dylan
+ Thacker-Smith)
+
+Patch 9.1.0130
+Problem: heap-use-after-free in win_splitmove if Enter/Leave autocommands
+ from win_split_ins immediately closes "wp".
+Solution: check that "wp" is valid after win_split_ins (Sean Dewar).
+
+Patch 9.1.0131
+Problem: buffer-completion code too complicated and does not always find all
+ matches (irisjae)
+Solution: do not try to anchor pattern to beginning of line or
+ directory-separator, always return all matches
+
+Patch 9.1.0132
+Problem: using "C" and 've=all' set, doesn't include composing chars when
+ changing a line, keeps the composing chars for whatever is typed
+ afterwards.
+Solution: Use mb_head_off() and mb_ptr2len() instead of mb_tail_off().
+ (zeertzjq)
+
+Patch 9.1.0133
+Problem: font ligatures don't render correctly in the Win32 GUI-version of
+ gmnv even when set rop=type:directx is used. Setting guiligatures
+ also doesn't make any difference. This leads to broken font
+ ligatures when the cursor passes through them. It does not recover
+ from this, and they remain broken until you re-render the whole
+ buffer (e.g. by using Ctrl+L).
+Solution: The problem is that we only re-draw the current and previous
+ character in gui_undraw_cursor() and only have the special case for
+ GTK when it comes to rendering ligatures. So let's enable
+ gui_adjust_undraw_cursor_for_ligatures() to also happen for Win32
+ GUI if guiligatures is setup correctly (all this does is expand the
+ range of gui_undraw_cursor() with ligature characters).
+
+Patch 9.1.0134
+Problem: Test_term_gettitle() is flaky on MacOS 14 and Github runners
+Solution: Skip the test on Github CI
+
+Patch 9.1.0135
+Problem: Insufficient testing for 'delcombine'.
+Solution: Add test for both Normal and Insert modes without Arabic (zeertzjq).
+
+Patch 9.1.0136
+Problem: MNV9: need more test for exists()
+Solution: Add test for exists() with class/objct variables and methods
+ (Yegappan Lakshmanan)
+
+Patch 9.1.0137
+Problem: <Del> in cmdline mode doesn't delete composing chars
+Solution: Use mb_head_off() and mb_ptr2len() (zeertzjq).
+
+Patch 9.1.0138
+Problem: too many STRLEN calls when getting a memline
+Solution: Optimize calls to STRLEN(), add a few functions in memline.c
+ that return the byte length instead of relying on STRLEN() (John
+ Marriott).
+
+Patch 9.1.0139
+Problem: MS-Windows: ligatures map cleared on startup
+Solution: Don't clear the ligatures_map, if the guiligatures option has
+ already been set (Erik S. V. Jansson)
+
+Patch 9.1.0140
+Problem: The cursor screen row was incorrectly being calculated when the
+ cursor follows a 1 character text_align 'below' virtual text line,
+ resulting in the cursor being shown on the wrong line. This was
+ caused by a cell size of 2 instead of 1 being used for the EOL
+ character, which propagated to the calculation of space for putting
+ the 'below' virtual text on its own line. (rickhowe)
+Solution: Fix the size used for the EOL character in calculating the cursor's
+ screen position (Dylan Thacker-Smith).
+
+Patch 9.1.0141
+Problem: Put in Visual mode wrong if it replaces fold marker.
+Solution: Temporarily disable folding during put in Visual mode (zeertzjq).
+
+Patch 9.1.0142
+Problem: getregion() can be improved (after v9.1.120)
+Solution: change getregion() implementation to use pos as lists and one
+ optional {opt} dictionary (Shougo Matsushita)
+
+Patch 9.1.0143
+Problem: [security]: autocmd cause use-after-free in set_curbuf()
+ (kawarimidoll)
+Solution: check side-effect of BufLeave autocommand, when the number
+ of windows changed, close windows containing buffers that will
+ be wiped, if curbuf changed unexpectedly make sure b_nwindows
+ is decremented otherwise it cannot be wiped
+
+Patch 9.1.0144
+Problem: getregion() needs more tests
+Solution: Run the getregion() test in both the legacy and MNV9 contexts
+ (Yegappan Lakshmanan)
+
+Patch 9.1.0145
+Problem: the amount of available space (v:echospace) on the command line is
+ not correct when showcmdloc is drawn into the statusline or tabline.
+Solution: only add SHOWCMD_COLS to the shown command column when 'showcmdloc'
+ is set to last (Sam-programs)
+
+Patch 9.1.0146
+Problem: v:echospace wrong after setting invalid value to 'showcmdloc'.
+Solution: Only call comp_col() if value is valid (zeertzjq).
+
+Patch 9.1.0147
+Problem: Cannot keep a buffer focused in a window (Amit Levy)
+Solution: Add the 'winfixbuf' window-local option (Colin Kennedy).
+
+Patch 9.1.0148
+Problem: MNV9: can't call internal methods with objects
+Solution: Add support for empty(), len() and string() function calls for
+ objects (Yegappan Lakshmanan)
+
+Patch 9.1.0149
+Problem: qf_goto_win_with_qfl_file may check if prevwin has 'winfixbuf'
+ set without checking if it's valid first.
+Solution: Reverse the condition. Add a test, a modeline, and a missing
+ CheckFeature. (Searn Dewar)
+
+Patch 9.1.0150
+Problem: several minor 'winfixbuf' issues exist, mostly relating to the
+ quickfix list
+Solution: address them and adjust tests. Retab and reflow a few things too.
+ (Sean Dewar)
+
+Patch 9.1.0151
+Problem: ml_get_buf_len() does not consider text properties (zeertzj)
+Solution: Store text length excluding text properties length
+ in addition in the memline
+
+Patch 9.1.0152
+Problem: Coverity complains about ignoring return value of win_split()
+ (after v9.1.150)
+Solution: Check if win_split() failed, add winfixbuf.res to Makefile
+
+Patch 9.1.0153
+Problem: Text properties corrupted with fo+=aw and backspace
+Solution: Allocate line and move text properties (zeertzjq).
+
+Patch 9.1.0154
+Problem: shm=F not respected when reloading buffer with 'autoread'
+Solution: Check SHM_FILEINFO in buf_check_timestamp() (Shougo Matsushita).
+
+Patch 9.1.0155
+Problem: can only call getregion() for current buffer
+Solution: Allow to retrieve selections from different buffers (Shougo
+ Matsushita).
+
+Patch 9.1.0156
+Problem: may not be clear why failing to split causes an ":Xdo" command to
+ abort if 'wfb' is set.
+Solution: Do not return immediately if win_split fails, so E1513 is still
+ given. Expect both errors in the test. Also fix tests to pass CI
+ (Sean Dewar).
+
+Patch 9.1.0157
+Problem: Duplicate assignment in f_getregion().
+Solution: Remove the duplicate assignment. Also improve getregion() docs
+ wording and fix an unrelated typo (zeertzjq).
+
+Patch 9.1.0158
+Problem: 'shortmess' "F" flag doesn't work properly with 'autoread'
+ (after 9.1.0154)
+Solution: Hide the file info message instead of the warning dialog
+ (zeertzjq)
+
+Patch 9.1.0159
+Problem: Crash in WinClosed after BufUnload closes other windows
+Solution: Don't trigger WinClosed if the buffer is NULL (zeertzjq).
+
+
+Patch 9.1.0160
+Problem: Add support for using a class type of itself in an object method
+ (thinca)
+Solution: MNV9: Add support for using a class type of itself in an
+ object method (Yegappan Lakshmanan)
+
+Patch 9.1.0161
+Problem: expand() removes a slash after an environment variable that ends
+ with a colon on Windows.
+Solution: Check the correct char for a colon (zeertzjq)
+
+Patch 9.1.0162
+Problem: Problem with writing extended attributes on failure
+Solution: Change return type to ssize_t and check listxattr's return
+ value correctly on failure (Paul Tagliamonte)
+
+Patch 9.1.0163
+Problem: Calling STRLEN() to compute ml_line_textlen when not needed.
+Solution: Use 0 when STRLEN() will be required and call STRLEN() later.
+ (zeertzjq)
+
+Patch 9.1.0164
+Problem: Internal error or crash when passing invalid position to
+ getregion().
+Solution: Give an error for invalid position (zeertzjq).
+
+Patch 9.1.0165
+Problem: MNV9: Importing an autoload imported script fails
+ (Song-Tianxiang)
+Solution: Return the script ID in this case (Yegappan Lakshmanan).
+
+Patch 9.1.0166
+Problem: Internal error with blockwise getregion() in another buffer
+Solution: Also change curwin->w_buffer when changing curbuf (zeertzjq).
+
+Patch 9.1.0167
+Problem: Changing buffer in another window using win_execute() causes
+ it to show matchparen (after 9.0.0969).
+Solution: Delay highlighting with SafeState in BufWinEnter (zeertzjq).
+
+Patch 9.1.0168
+Problem: too many STRLEN() calls
+Solution: Make use of ml_get_len() calls instead (John Marriott).
+
+Patch 9.1.0169
+Problem: current window number returned by tabpagewinnr may be outdated when
+ called from win_execute for the original tabpage.
+Solution: update the original tabpage's tp_curwin in switch_win; use
+ {un}use_tabpage instead. Don't do it in restore_win to ensure
+ tp_curwin of the temporarily visited tabpage is unchanged from
+ switch_win visiting it, as before. (Sean Dewar)
+
+Patch 9.1.0170
+Problem: more places exist where curwin == prevwin, and it may even be
+ expected in some cases.
+Solution: revert v9.1.0001, but document that it's possible instead.
+ (Sean Dewar)
+
+Patch 9.1.0171
+Problem: small improvements can be made to split-move related functions.
+Solution: apply them (Sean Dewar):
+
+Patch 9.1.0172
+Problem: More code can use ml_get_buf_len() instead of STRLEN().
+Solution: Change more STRLEN() calls to ml_get_buf_len(). Also do not
+ set ml_line_textlen in ml_replace_len() if "has_props" is set,
+ because "len_arg" also includes the size of text properties in
+ that case (zeertzjq).
+
+Patch 9.1.0173
+Problem: msgfmt ver. 0.22 forcibly converts text to UTF-8
+Solution: use '--no-convert' if msgfmt supports it. Add a configure
+ check for the msgfmt version (RestorerZ).
+
+Patch 9.1.0174
+Problem: 'cursorline' and 'wincolor' highlight missing with concealed and
+ wrapped lines.
+Solution: Apply 'cursorline' and 'wincolor' highlight to boguscols.
+ (zeertzjq)
+
+Patch 9.1.0175
+Problem: winframe functions incorrectly recompute window positions if
+ the altframe wasn't adjacent to the closed frame, which is
+ possible if adjacent windows had 'winfix{width,height}' set.
+Solution: recompute for windows within the parent of the altframe and
+ closed frame. Skip this (as before) if the altframe was
+ top/left, but only if adjacent to the closed frame, as
+ positions won't change in that case. Also correct the return
+ value documentation for win_screenpos. (Sean Dewar)
+
+Patch 9.1.0176
+Problem: Cursor column wrong with 'virtualedit' and conceal.
+Solution: Correct cursor column at end of line if never reached (zeertzjq).
+
+Patch 9.1.0177
+Problem: Coverity reports dead code.
+Solution: Remove the dead code. Also fix a mistake in ml_get_pos_len()
+ and update some comments (zeertzjq).
+
+Patch 9.1.0178
+Problem: E1513 might be confusing (Christoph Thoma)
+Solution: Reword error message, fix test to not depend on the actual message.
+
+Patch 9.1.0179
+Problem: 'wincolor' highlight missing with "below" virtual text.
+Solution: Subtract n_attr_skip from n_attr. Combine 'wincolor' with other
+ highlights when 'nowrap' is set (zeertzjq).
+
+Patch 9.1.0180
+Problem: Cursor pos wrong when double-width chars are concealed.
+Solution: Advance one more virtual column for a double-width char. Run some
+ tests with both 'wrap' and 'nowrap' (zeertzjq).
+
+Patch 9.1.0181
+Problem: no overflow check for string formatting
+Solution: Check message formatting function for overflow (Chris van Willegen).
+
+Patch 9.1.0182
+Problem: Can define function with invalid name inside 'formatexpr'.
+Solution: Use goto instead of checking for did_emsg later (zeertzjq).
+
+Patch 9.1.0183
+Problem: Wrong display or screenpos() result when toggling diff mode.
+Solution: Reset w_skipcol when disabling 'wrap'. Reset w_leftcol when
+ enabling 'wrap' (zeertzjq).
+
+Patch 9.1.0184
+Problem: Cursor position wrong when clicking with conceal and wrap.
+Solution: Use the virtual column of the last char for ScreenCols[] in
+ boguscols. Remove use of MAXCOL in ScreenCols[]. Rename
+ third argument of wlv_screen_line() to "clear_end" as that's
+ clearer what it does (zeertzjq).
+
+Patch 9.1.0185
+Problem: 'wincolor' highlight missing with 'rightleft', "below" virtual
+ text and 'nowrap'.
+Solution: Handle 'rightleft' in draw_screen_line() (zeertzjq).
+
+Patch 9.1.0186
+Problem: Wrong cursor position when clicking after end of line with
+ 'rightleft', 'virtualedit' and conceal.
+Solution: Set values in ScreenCols[] also with SLF_RIGHTLEFT. Also fix
+ off-by-one cursor position with 'colorcolumn' (zeertzjq).
+
+Patch 9.1.0187
+Problem: Dafny files are not recognized.
+Solution: Recognize *.dfy files as filetype "dafny" (zeertzjq).
+
+Patch 9.1.0188
+Problem: Vento files are not recognized.
+Solution: Recognize *.vto files as filetype "vento" (wrapperup)
+
+Patch 9.1.0189
+Problem: Memory leak with "above" virtual text and 'relativenumber'.
+Solution: Free "text_props" and "text_prop_idxs" before returning.
+ Also fix off-by-one error causing line number to be drawn
+ beyond end of window (zeertzjq).
+
+Patch 9.1.0190
+Problem: complete_info() returns wrong order of items (after v9.0.2018)
+Solution: Revert Patch v9.0.2018 (Girish Palya)
+
+Patch 9.1.0191
+Problem: Installer does not remove all files
+Solution: Update installer and delete all files on uninstall update Sodium
+ library dependency, update Readme (RestorerZ)
+
+Patch 9.1.0192
+Problem: :drop tries to :rewind the argumentlist, which results in E37
+ (after v9.1.0046)
+Solution: Instead of calling ex_rewind(), call open_buffer() only when
+ re-using the initial empty buffer
+
+Patch 9.1.0193
+Problem: May leak memory in completion when ga_grow() fails.
+Solution: Free "wca" when ga_grow() fails (zeertzjq).
+
+Patch 9.1.0194
+Problem: gcc complains about uninitialized var (Tony Mechelynck)
+Solution: Initialize to NULL
+
+Patch 9.1.0195
+Problem: memleak with ex_drop(), NULL dereference (zeertzjq)
+Solution: Revert back to ex_rewind(), use curbuf instead of buf
+
+Patch 9.1.0196
+Problem: filetype: support for gnuplot files is lacking
+Solution: Also detect *.gnuplot files (RobbiZ98).
+
+Patch 9.1.0197
+Problem: MNV9: problem evaluating negated boolean logic (lxhillwind)
+Solution: Don't clear the first value on short circuit evaluation
+ (Yegappan Lakshmanan)
+
+Patch 9.1.0198
+Problem: MNV9: compound operators broken for lambdas in an object
+ (girishji)
+Solution: When using an object from the outer scope, use the LOADOUTER
+ instruction to load the object (Yegappan Lakshmanan).
+
+Patch 9.1.0199
+Problem: Not enough tests for the slice() function.
+Solution: Test with multibyte chars, and in both Legacy and MNV9 script.
+ Update docs to be clearer about how it treats composing chars
+ (zeertzjq).
+
+Patch 9.1.0200
+Problem: `gj`/`gk` was updating the desired cursor virtual column to
+ the outer virtual text, even though the actual cursor position
+ was moved to not be on the virtual text, leading the need to
+ do an extra `gj`/`gk` to move past each virtual text line (rickhowe).
+Solution: Exclude the outer virtual text when getting the line length
+ for moving the cursor with `gj`/`gk`, so that no extra movement is
+ needed to skip over virtual text lines (Dylan Thacker-Smith).
+
+Patch 9.1.0201
+Problem: `gM` would include outer virtual text and its padding when
+ getting the line length used to calculate the middle of the
+ line, putting the cursor much closer to virtual text lines.
+Solution: Exclude outer virtual text in getting the line length for
+ `gM`, so that virtual text doesn't influence where the cursor
+ is moved to (Dylan Thacker-Smith).
+
+Patch 9.1.0202
+Problem: leaking memory in add_user() (LuMingYinDetect)
+Solution: Free user_copy pointer instead of the user ptr
+
+Patch 9.1.0203
+Problem: build-error on GNU HURD
+Solution: Define _XOPEN_SOURCE like for Android and Cygwin
+ (James McCoy)
+
+Patch 9.1.0204
+Problem: Backspace inserts spaces with virtual text and 'smarttab'.
+Solution: Ignore virtual text and wrapping when backspacing (zeertzjq).
+
+Patch 9.1.0205
+Problem: Cannot use modifiers before :-Ntabmove.
+Solution: Check backwards from the command instead of checking from the start
+ of the command line. Slightly adjust docs to make them more
+ consistent (zeertzjq).
+
+Patch 9.1.0206
+Problem: unused display_text_first boolean var in win_line()
+Solution: Remove unused display_text_first boolean variable
+ (Dylan Thacker-Smith)
+
+Patch 9.1.0207
+Problem: No autocommand when writing session file
+Solution: Add SessionWritePost autocommand (Colin Kennedy).
+
+Patch 9.1.0208
+Problem: winfixbuf does not allow to re-edit current buffer
+ (Tim Pope, after v9.1.0147)
+Solution: Explicitly allow :e even when 'winfixbuf' is set,
+ since it just re-loads the current buffer (Colin Kennedy).
+
+Patch 9.1.0209
+Problem: leaking memory in exe_newdict() on error (LuMingYinDetect)
+Solution: free allocated dict if GA_GROW_FALIS()
+
+Patch 9.1.0210
+Problem: Motif: leaking memory when mui_mch_dialog() fails (LuMingYinDetect)
+Solution: When allocating the label using the XmStringCreateLtoR()
+ function fails, before returning also free the allocated
+ buttons pointer.
+
+Patch 9.1.0211
+Problem: Page-wise scrolling with Ctrl-F/Ctrl-B implements it's own logic to
+ change the topline and cursor. In doing so, skipcol is not handled
+ properly for 'smoothscroll', and virtual lines.
+Solution: Re-use the logic from Ctrl-E/Ctrl-Y while staying backward
+ compatible as much as possible.
+
+Patch 9.1.0212
+Problem: CI: MS-Windows fails in test_winfixbuf (after v9.1.208)
+Solution: Skip Ms-Windows for now, fix style
+
+Patch 9.1.0213
+Problem: CI: MS-Windows fails in test_winfixbuf (after v9.1.208)
+Solution: Instead of skipping the test, write the file so it exists on disk,
+ to verify that MS-Windows short filename expansion is successful.
+ (Sean Dewar)
+
+Patch 9.1.0214
+Problem: Duplicate condition in win_lbr_chartabsize().
+Solution: Remove the duplicate condition, as it's already checked above.
+ (zeertzjq)
+
+Patch 9.1.0215
+Problem: Page-wise scrolling with Ctrl-D/Ctrl-U implements
+ it's own logic to change the topline and cursor.
+ More logic than necessary for scrolling with Ctrl-F/Ctrl-B
+ was removed in Patch 9.1.0211.
+Solution: Re-use the logic from Ctrl-E/Ctrl-Y/Ctrl-F/Ctrl-B while
+ staying backward compatible as much as possible.
+ Restore some of the logic that determined how many lines will
+ be scrolled (Luuk van Baal)
+
+Patch 9.1.0216
+Problem: Error on exit with EXITFREE and 'winfixbuf'.
+Solution: Handle DT_FREE before checking for 'winfixbuf' (zeertzjq).
+
+Patch 9.1.0217
+Problem: regexp: verymagic cannot match before/after a mark
+Solution: Correctly check for the very magic check (Julio B)
+
+Patch 9.1.0218
+Problem: Unnecessary multiplications in backspace code, as "col / ts * ts" is
+ the same as "col - col % ts".
+Solution: Change "col / ts * ts" to "col - col % ts". Adjust the loop
+ and the comments ins_bs() to be easier to understand. Update
+ tests to reset 'smarttab' properly (zeertzjq).
+
+Patch 9.1.0219
+Problem: No enum support
+Solution: Implement enums for MNV9 script (Yegappan Lakshmanan)
+
+Patch 9.1.0220
+Problem: Typos in code and tests.
+Solution: Fix typos (zeertzjq).
+
+Patch 9.1.0221
+Problem: The if branch to set `text_prop_follows` was both checking if
+ it was at the end of the buffer text line or if it was at the
+ end of the screen line, but the former being true skipped
+ a guard condition in the latter to only consider 'below'
+ virtual text to follow. `text_prop_follows` being improperly
+ set caused it to skip a conditional block to break at the end
+ as well as one to move `ptr` to the end of the text line,
+ while repeated for each following line of the window.
+Solution: Move the check for whether 'below' virtual text should follow
+ so it is also used when at the end of the buffer text line.
+ (Dylan Thacker-Smith)
+
+Patch 9.1.0222
+Problem: When a line is truncated just before 'after'/'right' virtual
+ text and the line also has 'below' virtual text, then the
+ 'below' virtual text would not be displayed, depending on the
+ order these text properties were added.
+Solution: In the loop to make text properties active, skip instead of
+ break for 'after'/'right' virtual text properties that are
+ ignored due to truncation, so following 'below' text properties can
+ still be made active. Similarly, a loop is needed to determine if a
+ text property follows at the end of the screen. (Dylan
+ Thacker-Smith)
+
+Patch 9.1.0223
+Problem: There are two dense conditions with duplication that needs to
+ be kept in sync between the while loop break condition and the
+ condition to skip certain text properties.
+Solution: Refactor the loop by moving while loop conditions into the body of
+ the while loop so they can be shared with skip conditions. `break`
+ and an `active` variable are used to handle the outcome of these
+ merged conditions (Dylan Thacker-Smith).
+
+Patch 9.1.0224
+Problem: If a line has "right" & "below" virtual text properties, where the
+ "below" property may be stored first due to lack of ordering between
+ them, then the line height is calculated to be 1 more and causes the
+ cursor to far over the line.
+Solution: Remove some unnecessary setting of a `next_right_goes_below = TRUE`
+ flag for "below" and "above" text properties. (Dylan Thacker-Smith)
+
+Patch 9.1.0225
+Problem: test_matchparen not run in CI
+Solution: add test_matchparen.res to NEW_TESTS_RES in Makefile, update changed
+ highlighting dump from v9.1.61
+
+Patch 9.1.0226
+Problem: Not able to assign enum values to an enum static variable
+ (zzzyxwvut)
+Solution: Make it work (Yegappan Lakshmanan)
+
+Patch 9.1.0227
+Problem: Recording may still be wrong in Select mode (after 8.2.3993).
+Solution: Make sure a character isn't split between two buffer blocks
+ (zeertzjq).
+
+Patch 9.1.0228
+Problem: Two unrelated things are tested by a single test.
+Solution: Split it into two, restoring the old Test_brace_single_line().
+ Add missing cleanup to some tests (zeertzjq).
+
+Patch 9.1.0229
+Problem: Error E877 is not translated (RestorerZ)
+Solution: Declare the error with N_ to mark it as translatable, add _()
+ around the error message in regexp_nfa.c
+
+Patch 9.1.0230
+Problem: TextChanged autocommand not triggered under some circumstances
+ (Sergey Vlasov)
+Solution: Trigger TextChanged when TextChangedI has not been triggered
+
+Patch 9.1.0231
+Problem: Filetype may be undetected when a SwapExists autocommand sets
+ filetype in another buffer.
+Solution: Make filetype detection state buffer-specific. Also fix a
+ similar problem for 'modified' (zeertzjq).
+
+Patch 9.1.0232
+Problem: Conceal test fails when rightleft feature is disabled.
+Solution: Skip test if rightleft feature is missing (Julio B).
+
+Patch 9.1.0233
+Problem: MNV9: string() output of enum is problematic
+Solution: Make string() output for an enum consistent with that of a
+ regular object (Yegappan Lakshmanan).
+
+Patch 9.1.0234
+Problem: filetype: support for Intel HEX files is lacking
+Solution: Add more file extensions that are typical for Intel HEX files
+ (Wu, Zhenyu)
+
+Patch 9.1.0235
+Problem: filetype: supertux files are not recognized
+Solution: Supertux uses lisp to store hotkeys in config and game stage
+ information, so add a pattern for supertux files (Wu, Zhenyu).
+
+Patch 9.1.0236
+Problem: filetype: texlua files are not recognized
+Solution: Add '*.tlu' pattern for texlua files (Wu, Zhenyu)
+
+Patch 9.1.0237
+Problem: filetype: mplstyle files are not recognized
+Solution: Detect '*.mplstyle' files as yaml (Wu, Zhenyu)
+
+Patch 9.1.0238
+Problem: filetype: jupyterlab and sublime config are not recognized
+Solution: Detect jupyterlab and sublime config files as json (Wu, Zhenyu).
+
+Patch 9.1.0239
+Problem: filetype: gnuplot history files are not recognised
+Solution: detect .gnuplot_history files as gnuplot (Wu, Zhenyu).
+
+Patch 9.1.0240
+Problem: filetype: some python tools config files are not recognized
+Solution: Detect config files for setuptools, pudb, coverage as dosini
+ (Wu, Zhenyu)
+
+Patch 9.1.0241
+Problem: filetype: mysql history files are not recognized
+Solution: Detect .mysql_history as mysql (Wu, Zhenyu).
+
+Patch 9.1.0242
+Problem: filetype: octave history files are not recognized
+Solution: Detect octave/history files as octave (Wu, Zhenyu).
+
+Patch 9.1.0243
+Problem: filetype: netrw history file is not recognized
+Solution: Detect .netrwhist as mnv files (Wu, Zhenyu).
+
+Patch 9.1.0244
+Problem: filetype: bash history files are not recognized
+Solution: detect .bash-history and .bash_history files as bash (Wu, Zhenyu).
+
+Patch 9.1.0245
+Problem: filetype: zsh theme, history and zunit files are not
+ recognized.
+Solution: Detect '.zsh_history', '*.zsh-theme' and '*.zunit' as zsh
+ (Wu, Zhenyu)
+
+Patch 9.1.0246
+Problem: filetype: fontconfig files are not recognized
+Solution: detect 'fonts.conf' as xml (Wu, Zhenyu).
+
+Patch 9.1.0247
+Problem: filetype: bundle config files are not recognized
+Solution: Detect '*/.bundle/config' as yaml (Wu, Zhenyu).
+
+Patch 9.1.0248
+Problem: filetype: yarn lock files are not recognized
+Solution: Detect 'yarn.lock' files as yaml (Wu, Zhenyu).
+
+Patch 9.1.0249
+Problem: filetype: rock_manifest and config.ld files are not recognized
+Solution: Detect 'rock_manifest' and 'config.ld' as lua (Wu, Zhenyu).
+
+Patch 9.1.0250
+Problem: filetype: ldscripts cannot be recognized
+Solution: Detect '*/ldscripts/*' as ld (Wu, Zhenyu).
+
+Patch 9.1.0251
+Problem: Filetype test fails.
+Solution: Move detection by name before detection by extension.
+ Improve TextChanged test and remove wrong test and fix
+ a typo in a comment (zeertzjq).
+
+Patch 9.1.0252
+Problem: MNV9: segfault with static in super class (Ernie Rael)
+Solution: When initializing lhs, use the correct class where a class
+ variable is defined (Yegappan Lakshmanan)
+
+Patch 9.1.0253
+Problem: filetype: typespec files are not recognized
+Solution: Detect '*.tsp' files as typespec (Hilmar Wiegand)
+
+Patch 9.1.0254
+Problem: [security]: Heap buffer overflow when calling complete_add()
+ in the first call of 'completefunc'
+Solution: Call check_cursor() after calling 'completefunc' (zeertzjq).
+
+Patch 9.1.0255
+Problem: MNV9: no indication of script nr in stack trace of classes
+Solution: Prefix the class name with the script name in the stack trace.
+ (Ernie Rael)
+
+Patch 9.1.0256
+Problem: Finding autocmd events is inefficient
+Solution: Use binary search to find events, cache last found events,
+ avoid use of strlen(), add SessionWritePost autocmd, fix
+ test_codestyle and avoid endless loop (John Marriott).
+
+Patch 9.1.0257
+Problem: MNV9: :call may not find imported class members (mityu)
+Solution: Set the typval of an imported lval variable correctly
+ (Yegappan Lakshmanan)
+
+Patch 9.1.0258
+Problem: Support for 'smoothscroll' in (half-)page scrolling
+ broke backward compatibility and can be made to work better.
+ (after v9.1.215)
+Solution: Restore the previous cursor and end-of-buffer behavior for
+ half-page scrolling and improve 'smoothscroll' support.
+ (Luuk van Baal)
+
+Patch 9.1.0259
+Problem: Normal mode TextChanged isn't tested properly.
+Solution: Combine Test_Changed_ChangedI() and Test_Changed_ChangedI_2()
+ and also run it on Windows. Fix a typo in main.c (zeertzjq).
+
+Patch 9.1.0260
+Problem: "zb" does not reveal filler lines at the start of a buffer.
+ Scrolled cursor position with 'smoothscroll' is unpredictable,
+ and may reset skipcol later if it is not visible (after v9.1.258)
+Solution: Replace confusing for loop that reaches final control value too
+ early with while loop. Set "w_curswant" accordingly so cursor
+ will be placed in visible part of topline (Luuk van Baal).
+
+Patch 9.1.0261
+Problem: MNV9: protected class and funcrefs accessible outside the class
+ (Aliaksei Budavei)
+Solution: Check if class and object funcrefs are protected
+ (Yegappan Lakshmanan)
+
+Patch 9.1.0262
+Problem: Test for TextChanged is flaky with ASAN.
+Solution: Wait for the file to be non-empty (zeertzjq).
+
+Patch 9.1.0263
+Problem: MNV9: Problem with lambda blocks in enums and classes
+ (Aliaksei Budavei)
+Solution: Support evaluating lambda blocks from a string, skip over
+ comments (Yegappan Lakshmanan)
+
+Patch 9.1.0264
+Problem: libgpm may delete some signal handlers
+Solution: Restore these signal handlers after calling gpm (Julio B).
+
+Patch 9.1.0265
+Problem: console dialog cannot save unnamed buffers
+Solution: Set bufname before save (glepnir). Define dialog_con_gui
+ to test for GUI+Console dialog support, use it to skip
+ the test when the GUI feature has been defined.
+
+Patch 9.1.0266
+Problem: filetype: earthfile files are not recognized
+Solution: Detect 'Earthfile' as earthfile (Gaëtan Lehmann).
+
+Patch 9.1.0267
+Problem: File name entered in GUI dialog is ignored (after v9.1.0265)
+Solution: Only set file name to "Untitled" if GUI dialog didn't set it.
+ (zeertzjq)
+
+Patch 9.1.0268
+Problem: Two tests in test_filechanged.mnv are slow.
+Solution: Sleep for shorter if the +nanotime feature is available (zeertzjq).
+
+Patch 9.1.0269
+Problem: Test for TextChanged is still flaky with ASAN.
+Solution: Don't index the result of readfile() (zeertzjq).
+
+Patch 9.1.0270
+Small fixes to a few issues:
+Problem: MNV9: funcref pointer pt leaks, when function is not found
+Solution: Free funcref pointer in case of error (
+Problem: memory leak of crypt state pointer allocation fails
+Solution: free crypt state pointer properly (
+Problem: MNV9: Leaking memory when compiling dict fails
+Solution: Free the memory in case of error (
+Problem: Coverity complains about derefencing obj_members pointer
+ (after v9.1.0261)
+Solution: Verify that obj_members ptr is non-null before accessing it
+
+Patch 9.1.0271
+Problem: CI sound test aborts with undefined variable
+Solution: initialize g:result in test_sound.mnv
+
+Patch 9.1.0272
+Problem: Autocommand may change currect directory after :tcd and :lcd.
+Solution: Also clear tp_localdir and w_localdir when using aucmd_win.
+ (zeertzjq)
+
+Patch 9.1.0273
+Problem: filetype: keymap files are not recognized
+Solution: Detect '*.keymap' files as Device Tree Files (0xadk).
+
+Patch 9.1.0274
+Problem: MS-Windows: a few compiler warnings
+Solution: Change variable types to resolve compiler warnings (Mike Williams)
+
+Patch 9.1.0275
+Problem: filetype: R history files are not recognized
+Solution: Detect '.Rhistory' files as r filetype (Wu, Zhenyu).
+
+Patch 9.1.0276
+Problem: No pandoc syntax support
+Solution: Add pandoc syntax and compiler plugins (Wu, Zhenyu, Konfekt).
+
+Patch 9.1.0277
+Problem: Cannot highlight the Command-line
+Solution: Add the MsgArea highlighting group (Shougo Matsushita).
+
+Patch 9.1.0278
+Problem: filetype: zathurarc files not recognized
+Solution: Detect '.zathurarc' files as zathurarc filetype,
+ add zathurarc filetype (Wu, Zhenyu)
+
+Patch 9.1.0279
+Problem: filetype: roc files are not recognized
+Solution: Detect '*.roc' files as roc filetype,
+ add a basic filetype plugin (nat-418)
+
+Patch 9.1.0280
+Problem: Logic to make sure cursor is in visible part of the screen after
+ scrolling the text with 'smoothscroll' is scattered, asymmetric
+ and contains bugs.
+Solution: Adjust and create helper function for 'smoothscroll' cursor logic.
+ (Luuk van Baal)
+
+Patch 9.1.0281
+Problem: CI: fails Test_compiler_completion
+Solution: Add pandoc compiler
+
+Patch 9.1.0282
+Problem: Finding highlighting attributes is inefficient
+Solution: Use binary search to find highlighting attributes and color
+ names (John Marriott)
+
+Patch 9.1.0282
+Problem: Wrong doc style for pandoc syntax description,
+ Test_diff_eob_halfpage() may fail depending on screen size, using
+ braces in highlight.c when not necessary
+Solution: Fix pandoc documentation, make sure the window for the test has 7
+ lines, remove the braces.
+
+Patch 9.1.0284
+Problem: make testclean is not able to delete failed screendumps.
+Solution: Remove the "failed" directory when necessary (Julio B).
+
+Patch 9.1.0285
+Problem: Problems with cursor position when scrolling half a page.
+Solution: Rework the cursor logic. (Luuk van Baal)
+
+Patch 9.1.0286
+Problem: MNV9: E1027 with defcompile for abstract methods with
+ non-void return types, but still compiles it (zzzyxwvut)
+Solution: Don't compile abstract methods (Yegappan Lakshmanan).
+
+Patch 9.1.0287
+Problem: MNV9: comment may be treated as heredoc start (Ernie Rael).
+Solution: Use skip_var_list() instead of find_name_end() (zeertzjq).
+
+Patch 9.1.0288
+Problem: MS-Windows: compiler warning for size_t to int conversion
+ (after v9.1.0282)
+Solution: Use size_t instead of int in highlight_set_termgui_attr
+ (Mike Williams).
+
+Patch 9.1.0289
+Problem: filetype: some TeX files are not recognized
+Solution: Add more patterns for TeX files and inspect a few more files for
+ being TeX files (Wu, Zhenyu).
+
+Patch 9.1.0290
+Problem: filetype: xilinx files are not recognized
+Solution: Add a few xilinx specific file patterns, inspect lpr files for being
+ xml/pascal (Wu, Zhenyu)
+
+Patch 9.1.0291
+Problem: filetype: libreoffice config files are not recognized
+Solution: Detect Libreoffice config fils as xml/dosini (Wu, Zhenyu).
+
+Patch 9.1.0292
+Problem: filetype: XDG mimeapps.list file is not recognized
+Solution: Detect mimeapps.list as dosini filetype (Wu, Zhenyu).
+
+Patch 9.1.0293
+Problem: filetype: lxqt config files are not recognized
+Solution: Detect {lxqt,screengrab}/*.conf files as dosini,
+ fix failing filetype test for */tex/latex/**.cfg (Wu, Zhenyu).
+
+Patch 9.1.0294
+Problem: plines_m_win() does not take into account it's "limit_winheight"
+ argument for filler lines below the last line of the buffer.
+ (after v9.1.0280)
+Solution: Check window height when "limit_winheight" is TRUE (Luuk van Baal).
+
+Patch 9.1.0295
+Problem: filetype: pip config files are not recognized
+Solution: detect pip.conf as dosini filetype (Wu, Zhenyu).
+
+Patch 9.1.0296
+Problem: Regex engines do not handle case-folding well
+Solution: Correctly calculate byte length of characters to skip
+
+Patch 9.1.0297
+Problem: Patch 9.1.0296 causes too many issues (Tony Mechelynck, @chdiza, CI)
+Solution: Back out the change for now
+
+Patch 9.1.0298
+Problem: MS-Windows: GETTEXT_PATH hard-coded in src/po/Make_mvc.mak
+Solution: Add IFNDEF/ENDIF around the definition of GETTEXT_PATH
+ (Cthulhux)
+
+Patch 9.1.0299
+Problem: MNV9: return type not set for a lambda assigned to script var
+ (Ernie Rael)
+Solution: Correctly determine the return type (Yegappan Lakshmanan).
+
+Patch 9.1.0300
+Problem: Missing test for what Patch v9.1.0285 fixes
+Solution: Add a test for cursor movement at buffer boundaries (Luuk van Baal).
+
+Patch 9.1.0301
+Problem: MNV9: heredoc start may be recognized in string.
+Solution: Don't skip to closing bracket for invalid list assignment.
+ (zeertzjq)
+
+Patch 9.1.0302
+Problem: filetype: blueprint files are not recognized
+Solution: Detect '*.bp' files as blueprint files, add a minimal filetype
+ plugin (Bruno Belanyi)
+
+Patch 9.1.0303
+Problem: filetype: some protocol buffer files not recognized
+Solution: Detect '*.textproto', '*.textpb', '*.txtpb' as pbtxt files
+ (Bruno Belanyi)
+
+Patch 9.1.0304
+Problem: filetype: cgdb config file is not recognized
+Solution: Detect cgdbrc files as cgdbrc filetype (Wu, Zhenyu).
+
+Patch 9.1.0305
+Problem: filetype: some history files are not recognized
+Solution: Add some history patterns to filetype.mnv (Wu, Zhenyu).
+
+Patch 9.1.0306
+Problem: filetype: x11vnc config file is not recognized
+Solution: Detect '.x11vncrc' as conf filetype (Wu, Zhenyu).
+
+Patch 9.1.0307
+Problem: filetype: texdoc config files is not recognized
+Solution: Detect 'texdoc.cnf' as conf filetype (Wu, Zhenyu).
+
+Patch 9.1.0308
+Problem: configure: msgfmt hardcoded (after v9.1.0173)
+Solution: use $MSGFMT instead of msgfmt in configure script,
+ regenerate the configure script (Vladimír Marek).
+
+Patch 9.1.0309
+Problem: crash when 'textwidth' > MAX_INT (after vv9.1.0055)
+ (Zoltan Balogh)
+Solution: limit textwidth to MAX_INT
+
+Patch 9.1.0310
+Problem: Filler lines not checked properly in get_scroll_overlap().
+Solution: Add missing parentheses (zeertzjq).
+
+Patch 9.1.0311
+Problem: Some config files are not recognized
+Solution: Add some patterns for chktex, ripgreprc and ctags config files.
+
+Patch 9.1.0312
+Problem: heredocs are not supported for :commands (@balki)
+Solution: Add heredoc support (Yegappan Lakshmanan).
+
+Patch 9.1.0313
+Problem: Crash when using heredoc with comment in command block.
+Solution: Handle a newline more like the end of the line, fix coverity
+ warning (zeertzjq).
+
+Patch 9.1.0314
+Problem: MNV9: Can define a class in a function (Doug Kearns)
+Solution: Give an error for a class defined in a function, slightly reword
+ some public error messages (Yegappan Lakshmanan).
+
+Patch 9.1.0315
+Problem: filetype: a few more dosini files are not recognized
+Solution: Detect wakatime, reply config files, flatpak, nfs config files
+ and a few more python tools as dosini (or toml) (Wu, Zhenyu).
+
+Patch 9.1.0316
+Problem: filetype: some sh and confini files not recognized
+Solution: Detect neofetch, '.xprofile', XDG-User-Dirs files, paru and makepkg
+ config files (Wu, Zhenyu).
+
+Patch 9.1.0317
+Problem: filetype: matplotlibrc files are not recognized
+Solution: Detect 'matplotlibrc' file as yaml filetype (Wu, Zhenyu).
+
+Patch 9.1.0318
+Problem: filetype: translate shell config files are not recognized
+Solution: Detect 'init.trans', 'translate-shell' and '.trans' files as
+ clojure (Wu, Zhenyu)
+
+Patch 9.1.0319
+Problem: Using heredoc in string not tested with :execute.
+Solution: Test with both :execute and execute() (zeertzjq).
+
+Patch 9.1.0320
+Problem: Wrong cursor position after using setcellwidths().
+Solution: Invalidate cursor position in addition to redrawing (zeertzjq).
+
+Patch 9.1.0321
+Problem: When used terminal with XON/XOFF flow control, mnv tries to
+ still make CTRL-S mapping available, which results in severe
+ screen corruption, especially on large redraws, and even
+ spurious inputs (John Tsiombikas)
+Solution: Disallow CTRL-S mapping if such terminal is recognized.
+ Don't remove IXON from the bitmask inversion (Anton Sharonov).
+
+Patch 9.1.0322
+Problem: filetype: some mail tools not recognized
+Solution: Detect '.mbsncrc' as conf, '.msmtprc' as msmtp and '.notmuch-config'
+ as ini filetype (Shane-XB-Qian)
+
+Patch 9.1.0323
+Problem: filetype: cabal config files may not be recognized
+Solution: Change filetype pattern to '*/{,.}cabal/config' (Wu Zhenyu).
+
+Patch 9.1.0324
+Problem: filetype: some json files are not recognized
+Solution: Detect '.jscsrc' and '.vsconfig' as jsonc filetype (Wu, Zhenyu).
+
+Patch 9.1.0325
+Problem: filetype: CMakeCache.txt files not recognized
+Solution: Detect 'CMakeCache.txt' files as cmakecache filetype, include basic
+ syntax script for cmakecache (Wu, Zhenyu, @bfrg)
+
+Patch 9.1.0326
+Problem: filetype: some requirements files are not recognized
+Solution: Detect '*-requirements.txt', 'constraints.txt', 'requirements.in',
+ 'requirements/*.txt' and 'requires/*.txt' as requirements filetype,
+ include pip compiler, include requirements filetype and syntax
+ plugin (Wu, Zhenyu, @raimon49).
+
+Patch 9.1.0327
+Problem: No support for using $XDG_CONFIG_HOME
+Solution: optionally source $XDG_CONFIG_HOME/mnv/mnvrc (Luca Saccarola).
+
+Patch 9.1.0328
+Problem: CI fails with t_?? test
+Solution: use assert_match instead of assert_equal and test only until t_xo,
+ depending on system there may be several more termcap codes coming
+
+Patch 9.1.0329
+Problem: String interpolation fails for Dict type
+Solution: Support Dict data type properly, also support :put =Dict
+ (without having to convert it to string() first)
+ (Yegappan Lakshmanan).
+
+Patch 9.1.0330
+Problem: v9.1.0327 contains an unrelated change
+Solution: Revert back $USR_MNVRC_FILE to $HOME instead of ~
+
+Patch 9.1.0331
+Problem: make install does not install all files (Nick Jensen)
+Solution: Adjust the Makefile rule to install and uninstall cargo and
+ rust directories (Matt Hammerly)
+
+Patch 9.1.0332
+Problem: tests: some assert_equal() calls have wrong order of args
+Solution: Correct the order (zeertzjq).
+
+Patch 9.1.0333
+Problem: tests: test_xdg fails on the appimage repo
+Solution: compare only the last 30 right characters of $MYMNVRC
+
+Patch 9.1.0334
+Problem: No test for highlight behavior with 'ambiwidth'.
+Solution: Add a screendump test for 'ambiwidth' with 'cursorline'.
+ (zeertzjq)
+
+Patch 9.1.0335
+Problem: String interpolation fails for List type
+Solution: use implicit string(list) for string interpolation and :put =
+ (Yegappan Lakshmanan)
+
+Patch 9.1.0336
+Problem: tests: typo in test_xdg
+Solution: fix typo (Diego Viola)
+
+Patch 9.1.0337
+Problem: Missing entry for XDG mnvrc file in :version
+Solution: Add 4th user mnvrc entry to :version output (Diego Viola)
+
+Patch 9.1.0338
+Problem: MNV9: import through symlinks not correctly handled
+Solution: Check for script being a symlink but only once (Ernie Rael)
+
+Patch 9.1.0339
+Problem: tests: xdg test uses screen dumps
+Solution: Convert screen dump to normal test (Yegappan Lakshmanan)
+
+Patch 9.1.0340
+Problem: Error with matchaddpos() and empty list (@rickhow)
+Solution: Return early for an empty list
+
+Patch 9.1.0341
+Problem: a few memory leaks are found (LuMingYinDetect)
+Solution: properly free the memory
+
+Patch 9.1.0342
+Problem: tests: test_taglist fails when 'helplang' contains non-english
+Solution: Allow 1 or 2 tagfiles for now (Julio B)
+
+Patch 9.1.0343
+Problem: 'showcmd' is wrong for partial mapping with multibyte char,
+ and isn't very readable with modifyOtherKeys.
+Solution: Decode multibyte char and merge modifiers into the char.
+ (zeertzjq)
+
+Patch 9.1.0344
+Problem: Cursor wrong after using setcellwidth() in terminal (mikoto2000)
+Solution: output additional spaces, so the behaviour matches the GUI
+ (mikoto2000)
+
+Patch 9.1.0345
+Problem: gmnvrc not sourced from XDG_CONFIG_HOME (after v9.1.0327)
+Solution: Also try to source from ~/.config/mnv/gmnvrc and
+ $XDG_CONFIG_HOME/mnv/gmnvrc (Maxim Kim)
+
+Patch 9.1.0346
+Problem: Patch v9.1.0338 fixed sourcing a script with import
+Solution: Add test `import './file.mnv' and verify it works with `:source`
+ so it does not regress (Ernie Rael)
+
+Patch 9.1.0347
+Problem: A few typos in test_xdg when testing gmnvrc
+Solution: Fix them (Diego Viola)
+
+Patch 9.1.0348
+Problem: X11 does not ignore smooth scroll event (laniakea64)
+Solution: Correctly ignore unwanted smooth scroll events on X11 (lilydjwg)
+
+Patch 9.1.0349
+Problem: MNV9: need static type for typealias
+Solution: Refactor the typval2type() function and add a static type for
+ typealias (Yegappan Lakshmanan)
+
+Patch 9.1.0350
+Problem: tests: test_mnv9_dissamble may fail
+Solution: Instead of hard-coding the lambda number, accept just any number
+ (Julio B)
+
+Patch 9.1.0351
+Problem: No test that completing a partial mapping clears 'showcmd'.
+Solution: Complete partial mappings in Test_showcmd_part_map() instead
+ of using :echo. Adjust some comments (zeertzjq).
+
+Patch 9.1.0352
+Problem: Finding cmd modifiers and cmdline-specials is inefficient
+Solution: Use binary search to find ex command modifiers and
+ cmdline-special characters and reduce the number of strlen()
+ (John Marriott)
+
+Patch 9.1.0353
+Problem: tests: Test_autoload_import_relative_compiled fails on Windows
+Solution: Disable on Windows for now, add missing :bw for clean-up (Ernie Rael)
+
+Patch 9.1.0354
+Problem: runtime(uci): No support for uci file types (Wu, Zhenyu)
+Solution: include basic uci ftplugin and syntax plugins (Colin Caine)
+
+Patch 9.1.0355
+Problem: filetype: flake.lock files are not recognized
+Solution: Detect 'flake.lock' as json filetype (Riley Bruins)
+
+Patch 9.1.0356
+Problem: MS-Windows: --remote may change working directory when
+ 'shellslash' is set
+Solution: normalize directory separators on MS-Windows
+
+Patch 9.1.0357
+Problem: Page scrolling does not always place the cursor at the top or
+ bottom of the window (Mathias Rav)
+Solution: Place the cursor at the top or bottom of the window (Luuk van Baal)
+
+Patch 9.1.0358
+Problem: wrong drawing in GUI with setcellwidth() (after v9.1.0344)
+Solution: move gui.in_use condition (h-east).
+
+Patch 9.1.0359
+Problem: MS-Windows: Relative import in a script sourced from a buffer
+ doesn't work (Ernie Rael)
+Solution: Set a filename, so that we are not trying to use
+ script-relative filename (Yegappan Lakshmanan)
+
+Patch 9.1.0360
+Problem: MNV9: does not handle autoloaded variables well
+Solution: Better handle script-level exported variable references from
+ autoload files (Ernie Rael).
+
+Patch 9.1.0361
+Problem: MNV9: mnv9type.c is too complicated
+Solution: Refactor a few functions in mnv9type.c (Yegappan Lakshmanan)
+
+Patch 9.1.0362
+Problem: expanding rc config files does not work well
+ (Michał Sieroń, after v9.1.0327)
+Solution: initialize chartab option, required to expand
+ evironment variables
+
+Patch 9.1.0363
+Problem: tests: test_winfixbuf is a bit slow
+Solution: use defer if possible, reset hidden option, use --not-a-term
+ when starting MNV using system() (Yegappan Lakshmanan)
+
+Patch 9.1.0364
+Problem: tests: test_mnv9_builtin is a bit slow
+Solution: source tests from a buffer instead of writing and sourcing a file
+ (Yegappan Lakshmanan)
+
+Patch 9.1.0365
+Problem: Crash when typing many keys with D- modifier (after 9.1.0227).
+Solution: Don't treat a 0x80 byte inside a special sequence as the start
+ of a special sequence (zeertzjq).
+
+Patch 9.1.0366
+Problem: filetype: ondir files are not recognized
+Solution: Detect '.ondirrc' as ondir filetype (Jon Parise)
+
+Patch 9.1.0367
+Problem: compile_def_function is too long
+Solution: Move out the code to compile the body of a function
+ (Yegappan Lakshmanan)
+
+Patch 9.1.0368
+Problem: MS-Windows: Hard to define the MNV Patchlevel with leading
+ zeroes for the installer
+Solution: re-define MNV_VERSION_PatchLEVEL_STR with leading zeroes,
+ interpret Patchlevel as decimal in Make_mvc.mak (RestorerZ)
+
+Patch 9.1.0369
+Problem: MNV9: problem when importing autoloaded scripts
+Solution: In `:def` handle storing to mnv9 autoload export (Ernie Rael)
+
+Patch 9.1.0370
+Problem: MS-Windows: Patch number is zero in installer (jonathan-b-wiebe)
+Solution: Set MNV_VERSION_PatchLEVEL, fix a few typos in the installer
+ (RestorerZ)
+
+Patch 9.1.0371
+Problem: MNV9: compile_def_function() still too long
+Solution: Refactor the code into separate functions (Yegappan Lakshmanan).
+
+Patch 9.1.0372
+Problem: Calling CLEAR_FIELD() on the same struct twice.
+Solution: Remove the second CLEAR_FIELD(). Move the assignment of
+ cookie.sourceing_lnum (zeertzjq).
+
+Patch 9.1.0373
+Problem: ops.c code uses too many strlen() calls
+Solution: Refactor code and remove more strlen() calls (John Marriott).
+
+Patch 9.1.0374
+Problem: When :edit an existing buffer, line('w$') may return a wrong result.
+Solution: Reset w_valid in curwin_init() (Jaehwang Jung)
+
+Patch 9.1.0375
+Problem: tests: 1-second delay after Test_BufEnter_botline()
+ (after v9.1.0374)
+Solution: Wipe the created buffers (zeertzjq).
+
+Patch 9.1.0376
+Problem: MNV9: Trailing commands after class/enum keywords ignored
+Solution: Remove EX_TRLBAR keyword from command definition
+ (Yegappan Lakshmanan)
+
+Patch 9.1.0377
+Problem: formatting text wrong when 'breakindent' is set (Gary Johnson)
+Solution: Temporarily disable 'breakindent' option when formatting text, so
+ that the breakindent is not wrongly taken into account for the line
+ length
+
+Patch 9.1.0378
+Problem: MNV9: no comments allowed after class vars
+ (Christian Robinson, after 9.1.376)
+Solution: Allow trailing comments after class vars (Yegappan Lakshmanan).
+
+Patch 9.1.0379
+Problem: There are a few typos
+Solution: Fix them (zeertzjq).
+
+Patch 9.1.0380
+Problem: Calculating line height for unnecessary amount of lines with
+ half-page scrolling (zhscn, after 9.1.0280)
+Solution: Replace "limit_winheight" argument with higher resolution
+ "max" argument to which to limit the calculated line height
+ in plines_m_win() to (Luuk van Baal).
+
+Patch 9.1.0381
+Problem: cbuffer and similar quickfix and locationlist commands don't
+ accept a range, even so it is documented they should
+ (ilan-schemoul, after 8.1.1241)
+Solution: Define ex commands with ADDR_LINES instead of ADDR_OTHER
+
+Patch 9.1.0382
+Problem: Kbuild files are not recognized.
+Solution: Detect Kbuild files as make files (Bruno Belanyi).
+
+Patch 9.1.0383
+Problem: filetype: .out files recognized as tex files
+Solution: Do not set an explicit filetype until it is clear what this
+ should be (shane.xb.qian)
+
+Patch 9.1.0384
+Problem: tests: vt420 terminfo entry may not be found (Shane-XB-Qian)
+Solution: check existence of terminfo vt420 and infocmp command
+
+Patch 9.1.0385
+Problem: MNV9: crash with null_class and null_object (Aliaksei Budavei)
+Solution: Handle null_class and null_object correctly (Yegappan Lakshmanan).
+
+Patch 9.1.0386
+Problem: filetype: stylus files not recognized
+Solution: Detect '*.styl' and '*.stylus' as stylus filetype,
+ include indent, filetype and syntax plugin (Philip H)
+
+Patch 9.1.0387
+Problem: MNV9: null value tests not sufficient
+Solution: Add a more comprehensive test for null values (Yegappan Lakshmanan).
+
+Patch 9.1.0388
+Problem: cursor() and getregion() don't handle v:maxcol well.
+Solution: Add special handling for v:maxcol like setpos() does (zeertzjq).
+
+Patch 9.1.0389
+Problem: filetype: templ files are not recognized
+Solution: Detect '*.templ' files as filetype templ (Tristan Knight).
+
+Patch 9.1.0390
+Problem: filetype: inko files are not recognized
+Solution: Detect '*.inko' as ink filetype (Yorick Peterse).
+
+Patch 9.1.0391
+Problem: MNV9: could improve testing (Ernie Rael)
+Solution: Support defcompile for test_override() to improve testing
+ (Yegappan Lakshmanan)
+
+Patch 9.1.0392
+Problem: tests: MNV9 debug tests may be flaky (Shane-XB-Qian)
+Solution: Give a few more lines so that line-wrapping won't
+ cause a hit-enter prompt
+
+Patch 9.1.0393
+Problem: 'viewdir' not respecting $XDG_CONFIG_HOME (Danilo Rezende,
+ after v9.1.327)
+Solution: adjust 'viewdir' option when enabling XDG config mode
+
+Patch 9.1.0394
+Problem: Cannot get a list of positions describing a region
+ (Justin M. Keyes, after v9.1.0120)
+Solution: Add the getregionpos() function (Shougo Matsushita)
+
+Patch 9.1.0395
+Problem: regionpos may leak memory on error, coverity
+ complains about dereferencing Null pointer
+Solution: free all list pointers (after v9.1.394),
+ return early if buflist_findnr() returns NULL
+
+Patch 9.1.0396
+Problem: jj files are not recognized
+Solution: recognize '*.jjdescription' files as jj filetype (Gregory Anders)
+
+Patch 9.1.0397
+Problem: Wrong display with 'smoothscroll' when changing quickfix list.
+Solution: Reset w_skipcol when replacing quickfix list (zeertzjq).
+
+Patch 9.1.0398
+Problem: MNV9: imported vars are not properly type checked
+Solution: Check the imported variable type properly (Yegappan Lakshmanan).
+
+Patch 9.1.0399
+Problem: block_editing errors out when using del (@Jamarley)
+Solution: Change ins_len from size_t to int and properly check that it doesn't
+ become negative
+
+Patch 9.1.0400
+Problem: MNV9: confusing error message for unknown type (Doug Kearns)
+Solution: For an unknown type, display only the type name in the error
+ message (Yegappan Lakshmanan).
+
+Patch 9.1.0401
+Problem: filetype: zsh module files are not recognized
+Solution: Detect '*.mdh' and '*.epro' as C filetype, '*.mdd' as zsh
+ filetype, determine zsh-modules '*.pro' from from it's content
+ (Wu, Zhenyu)
+
+Patch 9.1.0402
+Problem: filetype: mdd files detected as zsh filetype
+Solution: detect '*.mdd' files as sh filetype, add links to reference
+ documentation (Wu, Zhenyu)
+
+Patch 9.1.0403
+Problem: MNV9: not able to import file from start dir (Danielle McLean)
+Solution: Allow to import from start directory (Yegappan Lakshmanan).
+
+Patch 9.1.0404
+Problem: [security] xxd: buffer-overflow with specific flags
+Solution: Correctly calculate the required buffer space (Lennard Hofmann).
+
+Patch 9.1.0405
+Problem: tests: xxd buffer overflow fails on 32-bit
+Solution: Skip test on 32-bit architecture
+
+Patch 9.1.0406
+Problem: Divide by zero with getmousepos() and 'smoothscroll'.
+Solution: Don't compute skip_lines when width1 is zero (zeertzjq).
+
+Patch 9.1.0407
+Problem: No scrolling happens with half-page scrolling with line
+ filling entire window when 'smoothscroll' is disabled.
+ (Mathias Rav, after v9.1.0285)
+Solution: Adjust amount to move cursor by so that it is moved the same
+ number of lines as was scrolled, even when scrolling different
+ number of lines than requested with 'nosmoothscroll'.
+
+Patch 9.1.0408
+Problem: configure fails on Fedora when including perl (chesheer-smile)
+Solution: Filter out -spec=<path> from $LIBS and $LDFLAGS to avoid
+ linking relocation errors for unrelated autoconf tests.
+
+Patch 9.1.0409
+Problem: too many strlen() calls in the regexp engine
+Solution: refactor code to retrieve strlen differently, make use
+ of bsearch() for getting the character class (John Marriott).
+
+Patch 9.1.0410
+Problem: warning about uninitialized variable (Tony Mechelynck, after
+ v9.1.0409)
+Solution: initialize variable (John Marriott)
+
+Patch 9.1.0411
+Problem: too long functions in eval.c
+Solution: refactor functions (Yegappan Lakshmanan)
+
+Patch 9.1.0412
+Problem: typo in regexp_bt.c in DEBUG code, causing compile error (@kfleong7,
+ after v9.1.0409)
+Solution: Replace bulen by buflen
+
+Patch 9.1.0413
+Problem: smoothscroll may cause infinite loop, with very narrow windows
+ (Jaehwang Jung, after v9.1.0280)
+Solution: Check for width1 being negative, verify that win_linetabsize does
+ not overflow
+
+Patch 9.1.0414
+Problem: Unable to leave long line with 'smoothscroll' and 'scrolloff'.
+ Corrupted screen near the end of a long line with 'scrolloff'.
+ (Ernie Rael, after 9.1.0280)
+Solution: Only correct cursor in case scroll_cursor_bot() was not itself
+ called to make the cursor visible. Avoid adjusting for
+ 'scrolloff' beyond the text line height (Luuk van Baal)
+
+Patch 9.1.0415
+Problem: Some functions are not tested
+Solution: Add a few more tests, fix a few minor problems (Yegappan Lakshmanan)
+
+Patch 9.1.0416
+Problem: some screen dump tests can be improved (after 9.1.0414)
+Solution: Make sure screen state changes properly and is captured in the
+ screen dumps (Luuk van Baal)
+
+Patch 9.1.0417
+Problem: if_py: find_module has been removed in Python 3.12.0a7 (@Ghost-LZW)
+Solution: Do not include find_module for Python >= 3.12.0a7
+
+Patch 9.1.0418
+Problem: Cannot move to previous/next rare word (Colin Kennedy)
+Solution: Add the ]r and [r motions (Christ van Willegen)
+
+Patch 9.1.0419
+Problem: eval.c not sufficiently tested
+Solution: Add a few more additional tests for eval.c (Yegappan Lakshmanan).
+
+Patch 9.1.0420
+Problem: :browse oldfiles prompts even with single entry
+Solution: Do not prompt, but edit the file directly, also when using :filter
+ /pat/ browse oldfiles
+
+Patch 9.1.0421
+Problem: filetype: hyprlang files are not recognized
+Solution: Recognize 'hypr{land,paper,idle,lock}.conf' files
+ as 'hyprlang' filetype, add hyprlang ftplugin (Riley Bruins)
+
+Patch 9.1.0422
+Problem: function echo_string_core() is too long
+Solution: Refactor into several smaller functions (Yegappan Lakshmanan).
+
+Patch 9.1.0423
+Problem: getregionpos() wrong with blockwise mode and multibyte.
+Solution: Use textcol and textlen instead of start_vcol and end_vcol.
+ Handle coladd properly (zeertzjq).
+
+Patch 9.1.0424
+Problem: filetype: slint files are not recognized
+Solution: Detect '*.slint' files as slint filetype, include basic sling
+ filetype plugin (Riley Bruins)
+
+Patch 9.1.0425
+Problem: filetype: purescript files are not recognized
+Solution: Recognize '*.purs' files as purescript filetype, include basic
+ purescript filetype plugin (Riley Bruins)
+
+Patch 9.1.0426
+Problem: too many strlen() calls in search.c
+Solution: Refactor code and remove more strlen() calls,
+ use explicit variable to remember strlen (John Marriott)
+
+Patch 9.1.0427
+Problem: tests: some issues with termdebug mapping test
+Solution: Use assert_{true,false} if suitable, change
+ order of expected and actual arguments in assert() calls.
+ (Ken Takata)
+
+Patch 9.1.0428
+Problem: Tag guessing leaves wrong search history with very short names
+ (after 9.1.0426).
+Solution: Use the correct variable for pattern length (zeertzjq).
+
+Patch 9.1.0429
+Problem: Coverity complains about eval.c refactor (after v9.1.0422)
+Solution: Check that buf is not used un-initialized, add explicit conditions
+ for save and restore of copyID
+
+Patch 9.1.0430
+Problem: getregionpos() doesn't handle one char selection.
+Solution: Handle startspaces differently when is_oneChar is set.
+ Also add a test for an exclusive charwise selection with
+ multibyte chars (zeertzjq)
+
+Patch 9.1.0431
+Problem: eval.c is too long
+Solution: Move garbage collection code to new gc.c file (Yegappan Lakshmanan).
+
+Patch 9.1.0432
+Problem: Ancient XPM preprocessor hack may cause build errors.
+Solution: Simplify XPM includes and get rid of complicated #ifdef magic
+ (Drew Vogel).
+
+Patch 9.1.0433
+Problem: Wrong yanking with exclusive selection and virtualedit=all,
+ and integer overflow when using getregion() on it.
+Solution: Set coladd when decreasing column and 'virtualedit' is active.
+ Add more tests for getregion() with 'virtualedit' (zeertzjq).
+
+Patch 9.1.0434
+Problem: make errors trying to access autoload/zig
+Solution: Remove autoload/zig from Makefile, adjust Filelist (Derek Schrock).
+
+Patch 9.1.0435
+Problem: filetype: cygport files are not recognized
+Solution: Recognize '*.cygport' files as sh filetype (Ken Takata).
+
+Patch 9.1.0436
+Problem: Crash when using '?' as separator for :s and pattern contains
+ escaped '?'s (after 9.1.0409).
+Solution: Always compute startplen. (zeertzjq).
+
+Patch 9.1.0437
+Problem: Motif requires non-const char pointer for XPM data shared with
+ GTK (Tony Mechelynck, after v9.1.0432)
+Solution: Cast non-const to const char pointer for GTK (Drew Vogel).
+
+Patch 9.1.0438
+Problem: Wrong Ex command executed when :g uses '?' as delimiter and
+ pattern contains escaped '?'.
+Solution: Don't use "*newp" when it's not allocated (zeertzjq).
+
+Patch 9.1.0439
+Problem: Cannot filter the history
+Solution: Implement :filter :history
+
+Patch 9.1.0440
+Problem: function get_lval() is too long
+Solution: factor out the get_lval_subscript() function (Yegappan Lakshmanan).
+
+Patch 9.1.0441
+Problem: getregionpos() can't properly indicate positions beyond eol.
+Solution: Add an "eol" flag that enables handling positions beyond end
+ of line like getpos() does (zeertzjq).
+
+Patch 9.1.0442
+Problem: hare runtime files outdated
+Solution: runtime(hare): update hare.mnv to match upstream (Amelia Clarke).
+
+Patch 9.1.0443
+Problem: Can't use a blockwise selection with a width for getregion().
+Solution: Add support for blockwise selection with width like the return
+ value of getregtype() or the "regtype" value of TextYankPost
+ (zeertzjq).
+
+Patch 9.1.0444
+Problem: Not enough tests for getregion() with multibyte chars.
+Solution: Add a few more tests (zeertzjq).
+
+Patch 9.1.0445
+Problem: Coverity warning after 9.1.0440
+Solution: Fix Coverity warning, add a test and reduce the calls to clear_tv()
+ (Yegappan Lakshmanan).
+
+Patch 9.1.0446
+Problem: getregionpos() behaves inconsistently for a partly-selected
+ multibyte char.
+Solution: Always use column of the first byte for a partly-selected
+ multibyte char (zeertzjq).
+
+Patch 9.1.0447
+Problem: completion may be wrong when deleting all chars
+Solution: Reset compl_shown_match
+
+Patch 9.1.0448
+Problem: compiler warning in eval.c (after v9.1.0429)
+Solution: Refactor code (Yegappan Lakshmanan)
+
+Patch 9.1.0449
+Problem: MS-Windows: Compiler warnings
+Solution: Resolve size_t to int warnings
+
+Patch 9.1.0450
+Problem: eval.c code too complex
+Solution: Refactor eval6() and eval9() functions into several smaller
+ functions (Yegappan Lakshmanan)
+
+Patch 9.1.0451
+Problem: No test for escaping '<' with shellescape()
+Solution: Add a test. Use memcpy() in code to make it easier to
+ understand. Fix a typo (zeertzjq).
+
+Patch 9.1.0452
+Problem: Configure checks for libelf unnecessarily
+Solution: Remove configure check (youcai)
+
+Patch 9.1.0453
+Problem: filetype: rasi files are not recognized
+Solution: Regonize '*.rasi' files as rasi filetype, include a filetype and
+ syntax plugin (Pierrick Guillaume)
+
+Patch 9.1.0454
+Problem: minor issues in test_filetype with rasi test (after 9.1.0453)
+Solution: Re-sort test_filetype, fix wrong syntax.txt help tags
+
+Patch 9.1.0455
+Problem: MS-Windows: compiler warning for size_t to int conversion
+Solution: Add a few type casts to resolve warning on Windows (Mike Williams).
+
+Patch 9.1.0456
+Problem: Left shift is incorrect with vartabstop and shiftwidth=0
+Solution: Make tabstop_at() function aware of shift direction
+ (Gary Johnson)
+
+Patch 9.1.0457
+Problem: tests: test_gui fails on Wayland (after: 9.1.0064, Gary Johnson)
+Solution: Drop the "empty($WAYLAND_DISPLAY)" condition in the test
+
+Patch 9.1.0458
+Problem: Coverity complains about division by zero
+Solution: Check explicitly for sw_val being zero
+ Shouldn't happen, since tabstop value should always be larger than
+ zero. So just add this as a safety measure.
+
+Patch 9.1.0459
+Problem: MNV9: import autoload does not work with symlink (Olivier Dormond)
+Solution: Set sn_autoload_prefix in check_script_symlink (nwounkn)
+
+Patch 9.1.0460
+Problem: filetype: lintstagedrc files are not recognized
+Solution: Recognize '.lintstagedrc' files as json filetype (İlyas Akın).
+
+Patch 9.1.0461
+Problem: too many strlen() calls in drawline.c
+Solution: Refactor code to avoid strlen() (John Marriott).
+
+Patch 9.1.0462
+Problem: eval5() and eval7 are too complex
+Solution: Refactor eval5() and eval7() in eval.c (Yegappan Lakshmanan).
+
+Patch 9.1.0463
+Problem: no fuzzy-matching support for insert-completion
+Solution: Enable insert-mode completion with fuzzy-matching
+ using :set completopt+=fuzzy (glepnir).
+
+Patch 9.1.0464
+Problem: No whitespace padding in commentstring option in ftplugins
+Solution: Change default to include whitespace padding, update
+ existing filetype plugins with the new default value (Riley Bruins)
+
+Patch 9.1.0465
+Problem: missing filecopy() function
+Solution: Implement filecopy() MNV script function (Shougo Matsushita).
+
+Patch 9.1.0466
+Problem: Missing comments for fuzzy completion (after 9.1.0463)
+Solution: Add more comments, adjust indentation slightly (glepnir).
+
+Patch 9.1.0467
+Problem: typos in some comments (after v9.1.0466)
+Solution: Fix comments (zeertzjq).
+
+Patch 9.1.0468
+Problem: GmnvExt does not consult HKEY_CURRENT_USER
+Solution: Make GmnvExt first consult HKEY_CURRENT_USER and then fall
+ back to HKEY_LOCAL_MACHINE to find gmnv (David Wagner)
+
+Patch 9.1.0469
+Problem: Cannot have buffer-local value for 'completeopt' (Nick Jensen).
+Solution: Make 'completeopt' global-local (zeertzjq).
+
+Patch 9.1.0470
+Problem: tests: Test_ColonEight_MultiByte() fails on MS-Windows
+Solution: Mark test as flaky
+
+Patch 9.1.0471
+Problem: Crash when using autocmd_get() after removing event inside
+ autocmd (Sergey Vlasov)
+Solution: Check that the pattern is NULL (zeertzjq).
+
+Patch 9.1.0472
+Problem: Inconsistencies between functions for option flags.
+Solution: Consistently use "unsigned int" as return type and rename
+ get_bkc_value() to get_bkc_flags() (zeertzjq).
+
+Patch 9.1.0473
+Problem: term_start() does not clear vertical modifier
+Solution: Clear the flag after splitting the window (Yegappan Lakshmanan).
+
+Patch 9.1.0474
+Problem: CI: Test_ColonEight() fails on github runners (Ken Takata)
+Solution: Run the test for files on the C: drive, where dos shortnames
+ are still enabled, refactor the tests to use a single setup
+ function for the preparation.
+
+Patch 9.1.0475
+Problem: cmod_split modifier is always reset in term_start()
+Solution: Only clear the WSP_VERT flag, if it is not already in
+ cmdmod.cmod_split (Yegappan Lakshmanan).
+
+Patch 9.1.0476
+Problem: Cannot see matched text in popup menu
+Solution: Introduce 2 new highlighting groups: PmenuMatch and
+ PmenuMatchSel (glepnir).
+
+Patch 9.1.0477
+Problem: block_editing errors out when using <enter>
+ (Ali Rizvi-Santiago, after v9.1.0274)
+Solution: Change ins_len from size_t to int so that the test
+ if ins_len is negative actually works properly.
+
+Patch 9.1.0478
+Problem: Potential deref of NULL pointer in fuzzy_match_str_with_pos()
+ on cleanup (after v9.1.0476)
+Solution: Only free the pointer if it is non-NULL (glepnir).
+
+Patch 9.1.0479
+Problem: fuzzy_match_str_with_pos() does unnecessary list operations.
+Solution: Use fuzzy_match() directly (zeertzjq).
+
+Patch 9.1.0480
+Problem: fuzzy string matching executed when not needed
+Solution: When no leader is available, can skip fuzzy logic, so return
+ early (glepnir).
+
+Patch 9.1.0481
+Problem: MNV9: term_getjob() throws an exception on error
+Solution: Return null_job instead, when there is no job (Ernie Rael).
+
+Patch 9.1.0482
+Problem: termdebug plugin needs more love
+Solution: start with some more MNV9 refactoring to improve maintenance and
+ readability (Ubaldo Tiberi).
+
+Patch 9.1.0483
+Problem: glob() not sufficiently tested
+Solution: Add more tests for directory containing [] chars.
+
+Patch 9.1.0484
+Problem: Sorting of completeopt+=fuzzy is not stable.
+Solution: Compare original indexes when scores are the same (zeertzjq).
+
+Patch 9.1.0485
+Problem: Matched text shouldn't be highlighted in "kind" and "menu".
+Solution: Pass hlf_T instead of the attribute. Fix indent (zeertzjq).
+
+Patch 9.1.0486
+Problem: filetype: Snakemake files are not recognized
+Solution: Detect '*.smk' and Snakefile files as snakemake filetype
+ (Riley Bruins)
+
+Patch 9.1.0487
+Problem: completed item not update on fuzzy completion
+Solution: Reset compl_shown_match when at original match position (glepnir).
+
+Patch 9.1.0488
+Problem: Wrong padding for pum "kind" with 'rightleft'.
+Solution: Fix off-by-one error (zeertzjq).
+
+Patch 9.1.0489
+Problem: default completion may break with fuzzy
+Solution: Check that completion_match_array is not null (glepnir).
+
+Patch 9.1.0490
+Problem: minor style problems with Patch 9.1.0487
+Solution: use shown_compl instead of after_first_compl variable (glepnir).
+
+Patch 9.1.0491
+Problem: Cmdline pum doesn't work properly with 'rightleft'.
+Solution: Don't use curwin->w_p_rl in cmdline mode in pum_redraw(). Use
+ a static variable since pum_may_redraw() may be called in any
+ mode. Also correct position of other popups with 'rightleft'
+ (zeertzjq).
+
+Patch 9.1.0492
+Problem: MNV-script files may not be recognised
+Solution: Add shebang line detection (Doug Kearns)
+
+Patch 9.1.0493
+Problem: Test for Patch 9.1.0489 doesn't fail without the fix.
+Solution: Use "!" flag of feedkeys() so that ex_normal_busy is not set
+ and ins_compl_check_keys() is not skipped (zeertzjq).
+
+Patch 9.1.0494
+Problem: Wrong matched text highlighted in pum with 'rightleft'.
+Solution: Match using the original text instead of the reversed text
+ (zeertzjq).
+
+Patch 9.1.0495
+Problem: Matched text isn't highlighted in cmdline pum.
+Solution: Use cmdline completion pattern in cmdline mode (zeertzjq).
+
+Patch 9.1.0496
+Problem: matched text is highlighted case-sensitively
+Solution: Use MB_STRNICMP, update highlighting when the base changes (glepnir)
+
+Patch 9.1.0497
+Problem: termdebug can be further improved
+Solution: Refactor save/restore, update docs, add a new save/restore test
+ (Ubaldo Tiberi).
+
+Patch 9.1.0498
+Problem: getcmdcompltype() interferes with cmdline completion.
+Solution: Don't set expand context when it's already set (zeertzjq).
+
+Patch 9.1.0499
+Problem: MS-Windows: doesn't handle symlinks properly (Timothy Madden)
+Solution: Implement lstat() on MS-Windows (LemonBoy).
+
+Patch 9.1.0500
+Problem: cannot switch buffer in a popup (Yggdroot)
+Solution: Add popup_setbuf() function.
+
+Patch 9.1.0501
+Problem: too complicated mapping restore in termdebug
+Solution: Simplify unmapping logic, add a few more tests (Ubaldo Tiberi).
+
+Patch 9.1.0502
+Problem: MS-Windows: too much legacy code
+Solution: Clean up old code (Ken Takata).
+
+Patch 9.1.0503
+Problem: cannot use fuzzy keyword completion (Maxim Kim)
+Solution: Add the "fuzzycollect" value for the 'completeopt'
+ setting, to gather matches using fuzzy logic (glepnir).
+
+Patch 9.1.0504
+Problem: inner-tag textobject confused about ">" in attributes
+Solution: Skip over quoted '>' when determining the start position
+
+Patch 9.1.0505
+Problem: filetype: Faust files are not recognized
+Solution: Detect '*.lib' files as Faust filetype, add detection for
+ '*.dsp' files (Faust or Make), remove '*.lib' from Cobol
+ filetype (PowerUser64)
+
+Patch 9.1.0506
+Problem: filetype: .envrc & .prettierignore not recognized
+Solution: Detect '.envrc' as shell and '.prettierignore' as gitignore
+ filetype (Tyler Miller)
+
+Patch 9.1.0507
+Problem: hard to detect cursor movement in the command line
+Solution: Add the CursorMovedC autocommand (Shougo Matsushita).
+
+Patch 9.1.0508
+Problem: termdebug plugin can be further improved
+Solution: Add sanity-check, timeout config, change vars to bool
+ update docs, add more tests (Ubaldo Tiberi).
+
+Patch 9.1.0509
+Problem: not possible to translate MNV script messages (RestorerZ)
+Solution: Implement bindtextdomain() and gettext() to support MNV script
+ message translations (Christ van Willegen).
+
+Patch 9.1.0510
+Problem: CI: test_gettext fails on MacOS14 + MSVC Win (after v9.1.0509)
+Solution: Skip the test for now.
+
+Patch 9.1.0511
+Problem: CursorMovedC triggered wrongly with setcmdpos() (after v9.1.0507)
+Solution: Remove the premature triggering. Also don't trigger when
+ cursor didn't move (zeertzjq).
+
+Patch 9.1.0512
+Problem: Mode message for spell completion doesn't match allowed keys
+ (Kyle Kovacs)
+Solution: Show "^S" instead of "s" (zeertzjq).
+
+Patch 9.1.0513
+Problem: MNV9: segfault with object comparisons
+Solution: Increment recusive_cnt before calling typval_compare_object()
+ (Ernie Rael)
+
+Patch 9.1.0514
+Problem: MNV9: issue with comparing objects recursively (Yinzuo Jiang)
+Solution: only set recursive == TRUE, when called from tv_equal(), not
+ from typeval_compare_object(), refactor code into object_equal()
+ function (LemonBoy).
+
+Patch 9.1.0515
+Problem: MNV9: segfault in object_equal()
+Solution: Test for object pointer being NULL, before dereferencing them
+ (Ernie Rael).
+
+Patch 9.1.0516
+Problem: need more tests for nested dicts and list comparision
+Solution: Add tests for comparing deeply nested List/Dict values
+ (Yegappan Lakshmanan).
+
+Patch 9.1.0517
+Problem: MS-Windows: too long lines in Make_mvc.mak
+Solution: Wrap long lines in Make_mvc.mak (Ken Takata).
+
+Patch 9.1.0518
+Problem: initialize the random buffer can be improved
+Solution: Refactor init_srand() function, move machine-specific parts to
+ os_mswin and os_unix, implement a fallback for Windows 10 and
+ later (LemonBoy).
+
+Patch 9.1.0519
+Problem: MS-Windows: libvterm compilation can be optimized
+Solution: Enable batch inference for libvterm (Ken Takata).
+
+Patch 9.1.0520
+Problem: MNV9: incorrect type checking for modifying lists
+Solution: Correctly assign the member declared types and generate
+ typechecks, add disassembly test (LemonBoy).
+
+Patch 9.1.0521
+Problem: if_py: _PyObject_CallFunction_SizeT is dropped in Python 3.13
+Solution: define PyObject_CallFunction for Python >= 3.13 (Yaakov Selkowitz).
+
+Patch 9.1.0522
+Problem: MNV9: string(object) hangs for recursive references
+Solution: Handle recursive objects specifically, add a hang test and a
+ compare test (Ernie Rael)
+
+Patch 9.1.0523
+Problem: MNV9: cannot downcast an object (Ernie Rael)
+Solution: Fix class downcasting issue (LemonBoy).
+
+Patch 9.1.0524
+Problem: the recursive parameter in the *_equal functions can be removed
+Solution: Remove the recursive parameter in dict_equal(), list_equal()
+ object_equal and tv_equal(). Use a comparison of the static
+ var recursive_cnt == 0 to determine whether or not tv_equal()
+ has been called recursively (Yinzuo Jiang).
+
+Patch 9.1.0525
+Problem: Right release selects immediately when pum is truncated.
+Solution: Use pum_height instead of pum_size when checking click row.
+ Don't place it above mouse row when there is more space below.
+ (zeertzjq)
+
+Patch 9.1.0526
+Problem: Cursor is moved to bottom of window trying to pagescroll when
+ already at the start of the buffer (Asheq Imran, after v9.1.0357)
+Solution: Don't move cursor when buffer content did not move (Luuk van Baal).
+
+Patch 9.1.0527
+Problem: inconsistent parameter in Makefiles for MNV executable
+Solution: consistently use $MNVPROG across all Makefiles (RestorerZ).
+
+Patch 9.1.0528
+Problem: spell completion message still wrong in translations
+ (after 9.1.0512)
+Solution: Update translation files with the new message (Kyle Kovacs).
+
+Patch 9.1.0529
+Problem: silent! causes following try/catch to not work (Malcolm Rowe)
+Solution: consider emsg_silent in handle_did_throw() and do not abort
+ evaluation flow for :silent! (LemonBoy).
+
+Patch 9.1.0530
+Problem: xxd: MSVC warning about non-ASCII character
+Solution: Specify source-charset:utf-8 in Makefile (Ken Takata).
+
+Patch 9.1.0531
+Problem: resource leak in mch_get_random() (after v9.1.0518)
+Solution: close file descriptor after reading successfully from /dev/urandom
+
+Patch 9.1.0532
+Problem: filetype: Cedar files not recognized
+Solution: Detect '*.cedar' files as cedar filetype (Riley Bruins).
+
+Patch 9.1.0533
+Problem: MNV9: need more tests for nested objects equality
+Solution: Add more tests (Ernie Rael).
+
+Patch 9.1.0534
+Problem: completion wrong with fuzzy when cycling back to original
+ (Quan Nguyen)
+Solution: Reset show_match_ok when cp_score is zero (glepnir).
+
+Patch 9.1.0535
+Problem: newline escape wrong in ex mode (Konrad Schwarz)
+Solution: Partly revert Patch 7.3.014, remove backslash in front of a
+ newline when not in prompt mode in ex line mode (Mohamed Akram).
+
+Patch 9.1.0536
+Problem: filetype: zone files are not recognized (rpdprd)
+Solution: Detect '*.zone' files as bindzone filetype.
+
+Patch 9.1.0537
+Problem: signed number detection for CTRL-X/A can be improved (Chris Patuzzo)
+Solution: Add the new "blank" value for the 'nrformat' setting. This will make
+ MNV assume a signed number only if there is a blank in front of the
+ sign (distobs).
+
+Patch 9.1.0538
+Problem: not possible to assign priority when defining a sign
+ (Mathias Fußenegger)
+Solution: Add the priority argument for the :sign-define ex command and
+ the sign_define() function (LemonBoy).
+
+Patch 9.1.0539
+Problem: Not enough tests for what v9.1.0535 fixed
+Solution: Add another test for ex-mode.
+
+Patch 9.1.0540
+Problem: Unused assignment in sign_define_cmd()
+Solution: Remove the assignment. Also document the "priority" flag of
+ sign_define() (zeertzjq).
+
+Patch 9.1.0541
+Problem: failing test with MNV configured without channel
+Solution: In the test Test_null_values() verify that the 'channel' and
+ 'job' feature is present in MNV. (Dominique Pellé).
+
+Patch 9.1.0542
+Problem: MNV9: confusing string() output for object functions
+Solution: improve the output for object functions (Ernie Rael).
+
+Patch 9.1.0543
+Problem: Behavior of CursorMovedC is strange.
+Solution: Also trigger when the cmdline has changed (zeertzjq).
+
+Patch 9.1.0544
+Problem: filetype: ldapconf files are not recognized
+Solution: Detect '.ldaprc', 'ldap.conf' and 'ldaprc' files as ldapconf
+ filetype, include a simple ldapconf ftplugin file (Riley Bruins).
+
+Patch 9.1.0545
+Problem: MSVC conversion warning (LemonBoy, after 9.1.0522)
+Solution: Use size_t instead of int, fix style of casts (Ernie Rael).
+
+Patch 9.1.0546
+Problem: mnv-tiny fails on CTRL-X/CTRL-A (Rob Foehl, after 9.1.0172)
+Solution: Move #ifdefs, so that after changing the line in del_bytes,
+ the cached textlen value is invalidated.
+
+Patch 9.1.0547
+Problem: No way to get the arity of a MNV function (Austin Ziegler)
+Solution: Enhance get() MNV script function to return the function
+ argument info using get(func, "arity") (LemonBoy).
+
+Patch 9.1.0548
+Problem: it's not possible to get a unique id for some vars
+Solution: Add the id() MNV script function, which returns a unique
+ identifier for object, dict, list, job, blob or channel
+ variables (Ernie Rael).
+
+Patch 9.1.0549
+Problem: fuzzycollect regex based completion not working as expected
+Solution: Revert Patch v9.1.0503 (glepnir).
+
+Patch 9.1.0550
+Problem: filetype: antlr4 files are not recognized
+Solution: Detect '*.g4' as antlr4 filetype, include a simple antlr4
+ syntax and filetype plugin (Yinzuo Jiang).
+
+Patch 9.1.0551
+Problem: filetype: htmlangular files are not properly detected
+Solution: Use the new htmlangular filetype for angular files, because
+ since angular v17, those are no longer valid HTML files
+ (Dennis van den Berg).
+
+Patch 9.1.0552
+Problem: No test for antlr4 filetype (after 9.1.0550)
+Solution: Add a simple filename test.
+
+Patch 9.1.0553
+Problem: filetype: *.mcmeta files are not recognized
+Solution: Detect '*.mcmeta' files as json filetype (Tomodachi94).
+
+Patch 9.1.0554
+Problem: :bw leaves jumplist and tagstack data around (Paul "Joey" Clark)
+Solution: Wipe jumplist and tagstack references to the wiped buffer
+ (LemonBoy).
+
+Patch 9.1.0555
+Problem: filetype: angular ft detection is still problematic (after 9.1.0551)
+Solution: Detect htmlangular filetype only by inspecting the content,
+ do not try to determine it from a generic name like
+ '*.component.html'.
+
+Patch 9.1.0556
+Problem: :bwipe doesn't remove file from jumplist and tagstack of other
+ tabpages. Time complexity of mark_forget_file() is O(n^2) when
+ removing all entries (after v9.1.0554)
+Solution: Use FOR_ALL_TAB_WINDOWS(). Start the loops over the arrays
+ from the end instead of the start (zeertzjq).
+
+Patch 9.1.0557
+Problem: moving in the buffer list doesn't work as documented
+ (SenileFelineS)
+Solution: Skip non-help buffers, when run from normal buffers, else
+ only move from help buffers to the next help buffer (LemonBoy).
+
+Patch 9.1.0558
+Problem: filetype: prolog detection can be improved
+Solution: Improved the Prolog file detection regex and added tests for
+ all cases (igna_martinoli).
+
+Patch 9.1.0559
+Problem: translation of mnv scripts can be improved (after v9.1.0509)
+Solution: improve documentation, add tests, include missing
+ libraries for the Windows CI (RestorerZ).
+
+Patch 9.1.0560
+Problem: bindtextdomain() does not indicate an error (after v9.1.509)
+Solution: return false on failure (OOM) (Chris van Willegen).
+
+Patch 9.1.0561
+Problem: netbeans: variable used un-initialized (Coverity) (after v9.1.0557)
+Solution: Properly initialize exarg_T struct for use with netbeans
+ The actual exarg.cmdidx doesn't really matter, but let's use
+ something, that is not affected by the recent changes (going through
+ the buffer list) and use CMD_USER.
+
+Patch 9.1.0562
+Problem: tests: inconsistency in test_findfile.mnv, it saves and restores
+ 'shellslash', but doesn't actually set it
+Solution: Set shellslash explicitly (zeertzjq).
+
+Patch 9.1.0563
+Problem: Cannot process any Key event.
+Solution: Add the KeyInputPre autocmd (Shougo Matsushita).
+
+Patch 9.1.0564
+Problem: id() can be made faster
+Solution: don't use printf(), use clever shift of pointer (Ernie Rael).
+
+Patch 9.1.0565
+Problem: Stop directory doesn't work properly in 'tags' (Jesse Pavel).
+Solution: Also move the stop directory forward by one byte (zeertzjq).
+
+Patch 9.1.0566
+Problem: Stop directory in findfile() doesn't work properly without a
+ trailing slash.
+Solution: Always use fnamencmp(), not fnamecmp().
+
+Patch 9.1.0567
+Problem: Cannot use relative paths as findfile() stop directories.
+Solution: Change a relative path to an absolute path (zeertzjq).
+
+Patch 9.1.0568
+Problem: Cannot expand paths from 'cdpath' setting (Daniel Hahler)
+Solution: Implement 'cdpath' completion, add the new 'dir_in_path'
+ completion type (LemonBoy).
+
+Patch 9.1.0569
+Problem: fnamemodify() treats ".." and "../" differently.
+Solution: Expand ".." properly like how "/.." is treated in 8.2.3388
+ (zeertzjq).
+
+Patch 9.1.0570
+Problem: tests: test_gettext_make can be improved (after v9.1.0559)
+Solution: Improve the test (Ken Takata).
+
+Patch 9.1.0571
+Problem: tests: Test_gui_lowlevel_keyevent is flaky
+Solution: Mark as flaky (Ken Takata).
+
+Patch 9.1.0572
+Problem: cannot specify tab page closing behaviour (Gianluca Pacchiella).
+Solution: Add the 'tabclose' option (LemonBoy).
+
+Patch 9.1.0573
+Problem: ex: no implicit print for single addresses
+Solution: Explicitly print even during single addresses, as requested by POSIX
+ (Mohamed Akram)
+
+Patch 9.1.0574
+Problem: ex: wrong handling of commands after bar
+Solution: for :append, :insert and :change use the text after the bar as input
+ for those commands. This is what POSIX requests (Mohamed Akram).
+
+Patch 9.1.0575
+Problem: Wrong comments in alt_tabpage() (after v9.1.0572)
+Solution: Correct the comments (zeertzjq).
+
+Patch 9.1.0576
+Problem: tests: still an issue with test_gettext_make (after v9.1.0570)
+Solution: Compare the getenv() output against v:null to verify
+ that $GETTEXT_PATH was set or not (Ken Takata).
+
+Patch 9.1.0577
+Problem: Unnecessary checks for v:sizeoflong in test_put.mnv. They are
+ no longer necessary as Patch 8.2.3661 has changed the count to
+ be within 32-bit integer limit.
+Solution: Remove the checks (zeertzjq).
+
+Patch 9.1.0578
+Problem: no tests for :Tohtml
+Solution: Add two basic tests (Yinzuo Jiang).
+
+Patch 9.1.0579
+Problem: Ex command is still executed after giving E1247.
+Solution: Indicate the error properly and set cmd to NULL (zeertzjq).
+
+Patch 9.1.0580
+Problem: An :lmap mapping for a printable keypad key is not applied
+ when typing it in Select mode.
+Solution: Change keypad key to ASCII after setting vgetc_char (zeertzjq).
+
+Patch 9.1.0581
+Problem: style: Various lines are indented inconsistently
+Solution: Retab these lines and correct some comments (zeertzjq).
+
+Patch 9.1.0582
+Problem: Printed line no longer overwrites colon when pressing Enter in
+ Ex mode (after 9.1.0573).
+Solution: Restore the behavior of pressing Enter in Ex mode (zeertzjq).
+
+Patch 9.1.0583
+Problem: filetype: *.pdf_tex files are not recognized
+Solution: Detect '*.pdf_tex' files as tex filetype (Jonas Dujava).
+
+Patch 9.1.0584
+Problem: Warning about redeclaring f_id() non-static
+Solution: Declare f_id() static (John Marriott).
+
+Patch 9.1.0585
+Problem: tests: test_cpoptions leaves swapfiles around
+Solution: Use :bw! instead of :close!
+
+Patch 9.1.0586
+Problem: ocaml runtime files are outdated
+Solution: Sync those files with the upstream repo, detect a few more ocaml
+ files (Yinzuo Jiang).
+
+Patch 9.1.0587
+Problem: tests: Test_gui_lowlevel_keyevent is still flaky (after v9.1.0571)
+Solution: Skip generating key event for Ctrl-C, remove the test_is_flaky
+ variable again (Ken Takata).
+
+Patch 9.1.0588
+Problem: The maze program no longer compiles on newer clang
+Solution: Use ANSI C function definition for main() (Mohamed Akram).
+
+Patch 9.1.0589
+Problem: vi: d{motion} and cw command work differently than expected
+Solution: add new cpo-z flag to make the behaviour configurable
+
+Patch 9.1.0590
+Problem: MNV9: crash when accessing getregionpos() return value.
+Solution: Correct the return type (zeertzjq).
+
+Patch 9.1.0591
+Problem: filetype: *.wl files are not recognized
+Solution: Detect '*.wl' files as Mathematica package files (Jonas Dujava).
+
+Patch 9.1.0592
+Problem: filetype: Mediawiki files are not recognized
+Solution: detect "*.mw" and "*.wiki" as mediawiki filetype,
+ include basic syntax and filetype plugins (AvidSeeker).
+
+Patch 9.1.0593
+Problem: filetype: Asymptote files are not recognized
+Solution: detect '*.asy' files as asy filetype, include ftplugin and syntax
+ plugin (AvidSeeker).
+
+Patch 9.1.0594
+Problem: Unnecessary redraw when setting 'winfixbuf'.
+Solution: Remove P_RWIN flag (zeertzjq).
+
+Patch 9.1.0595
+Problem: make errors out with the po Makefile
+ (yanivshlom, after v9.1.0558)
+Solution: Set variables differently (RestorerZ).
+
+Patch 9.1.0596
+Problem: filetype: Debian devscripts config files are not recognized
+Solution: detect devscripts.conf and .devscripts files as sh filetype
+ (sourced by /bin/sh).
+
+Patch 9.1.0597
+Problem: KeyInputPre cannot get the (unmapped typed) key (after v9.1.0563)
+Solution: Add the "typedchar" property to the v:event dict
+ (Shougo Matsushita).
+
+Patch 9.1.0598
+Problem: fuzzy completion does not work with default completion
+Solution: Make it work (glepnir).
+
+Patch 9.1.0599
+Problem: Termdebug: still get E1023 when specifying arguments and using
+ a prompt buffer.
+Solution: Use empty() instead of len(). Add a test. Fix wrong order of
+ arguments to assert_equal() in Test_termdebug_basic() (zeertzjq).
+
+Patch 9.1.0600
+Problem: unused function typval_compare_class() and error constants
+Solution: Remove function typval_compare_class() and ifdef out
+ unused error constants (Dominique Pellé).
+
+Patch 9.1.0601
+Problem: Wrong cursor position with 'breakindent' when a double-width
+ character doesn't fit in a screen line (mikoto2000)
+Solution: Include the width of the 'breakindent' properly (zeertzjq).
+
+Patch 9.1.0602
+Problem: filetype: Prolog detection can be improved
+Solution: Update the prolog detection regex (igna_martinoli).
+
+Patch 9.1.0603
+Problem: Pattern detection for Dracula language uses "*lvs" and "*lpe".
+ as there is no dot, those are not treated as extensions which
+ they should (judging by 'runtime/syntax/dracula.mnv' and
+ common sense).
+Solution: Use "*.lvs" and "*.lpe" patterns (Evgeni Chasnovski).
+
+Patch 9.1.0604
+Problem: popup_filter during Press Enter prompt seems to hang
+Solution: Return early, when need_wait_return is set (Ernie Rael).
+
+Patch 9.1.0605
+Problem: internal error with fuzzy completion (techntools)
+Solution: Only fuzzy complete the pattern after directory separator
+ (glepnir)
+
+Patch 9.1.0606
+Problem: tests: generated files may cause failure in test_codestyle
+Solution: Exclude OLE-related generated files from style checks (Ken Takata).
+
+Patch 9.1.0607
+Problem: termdebug: uses inconsistent style
+Solution: termdebug: deprecate numeric values for v:true/false, fix white
+ space style in the plugin (Ubaldo Tiberi).
+
+Patch 9.1.0608
+Problem: Coverity warns about a few potential issues
+Solution: Fix those issues (see details below)
+
+Patch 9.1.0609
+Problem: outdated comments in Makefile
+Solution: Update outdated comments, update rule for mnvtags (Shane Harper).
+
+Patch 9.1.0610
+Problem: filetype: OpenGL Shading Language files are not detected
+Solution: Detect various file extensions as GLSL filetype, include
+ indent and syntax script, do no longer recognize '*.comp'
+ as Mason filetype (Gregory Anders).
+
+Patch 9.1.0611
+Problem: Ambiguous mappings not correctly resolved with modifyOtherKeys
+Solution: Check for termcode when an upper case mapping is received and
+ does not match (Oleg Goncharov).
+
+Patch 9.1.0612
+Problem: filetype: deno.lock file not recognized
+Solution: detect 'deno.lock' as json filetype (カワリミ人形).
+
+Patch 9.1.0613
+Problem: tests: termdebug test may fail and leave temp file around
+ (Dominique Pellé)
+Solution: Only run balloon_show() if the function exists, validate
+ termdebug is running using the g: termdebug_is_running var,
+ use defer to delete temporary files.
+
+Patch 9.1.0614
+Problem: MNV syntax file changes to :set command highlighting render
+ some test dump files invalid (zeertzjq)
+Solution: Regenerate the affected dump files (Doug Kearns).
+
+Patch 9.1.0615
+Problem: Unnecessary STRLEN() in make_percent_swname()
+Solution: Pass the end of "dir" to make_percent_swname() (zeertzjq).
+
+Patch 9.1.0616
+Problem: filetype: Make syntax highlighting off for MS Makefiles
+Solution: Try to detect MS Makefiles and adjust syntax rules to it.
+ (Ken Takata)
+
+Patch 9.1.0617
+Problem: Cursor moves beyond start of a folded range at the end of a buffer.
+Solution: Move cursor to start of fold when going beyond end of buffer.
+ Check that cursor moved to detect FAIL in outer cursor function.
+ (Luuk van Baal)
+
+Patch 9.1.0618
+Problem: cannot mark deprecated attributes in completion menu
+Solution: Add hl_group to the Dictionary of supported completion fields
+ (glepnir).
+
+Patch 9.1.0619
+Problem: tests: test_popup fails (after v9.1.0618)
+Solution: Correct test, move combining extra attributes to
+ pum_compute_text_attrs() (glepnir).
+
+Patch 9.1.0620
+Problem: MNV9: segfauls with null objects (after v9.1.0219)
+Solution: Check object pointer being NULL (Ernie Rael).
+
+Patch 9.1.0621
+Problem: MS-Windows: startup code can be improved
+Solution: Re-work and optimize win32 startup code (Ken Takata).
+
+Patch 9.1.0622
+Problem: MS-Windows: mingw-build can be optimized
+Solution: Use --gc-sections to reduce the size of the executable
+ (Ken Takata)
+
+Patch 9.1.0623
+Problem: Mingw: warnings when trying to delete non-existing files
+Solution: Use "rm -f" instead of "rm" to suppress errors for
+ non-existing files (Ken Takata)
+
+Patch 9.1.0624
+Problem: ex command modifiers are not found (Ingo Karkat, after v9.1.0352)
+Solution: Partly revert Patch v9.1.0352, ignore :{ and :}
+
+Patch 9.1.0625
+Problem: tests: test output all translated messages for all
+ translations
+Solution: Redirect the output of check.mnv to /dev/null, it's not that
+ useful.
+
+Patch 9.1.0626
+Problem: MNV9: need more tests with null objects (after v9.1.0620)
+Solution: add one more test with null_object (Ernie Rael).
+
+Patch 9.1.0627
+Problem: MinGW: build-error when COVERAGE is enabled
+ (after v9.1.0621)
+Solution: Fix regressions in v9.1.0621 and v9.1.0622 (Ken Takata).
+
+Patch 9.1.0628
+Problem: MinGW: coverage files are not cleaned up
+Solution: Adjust clean rule to remove the coverage files (Ken Takata).
+
+Patch 9.1.0629
+Problem: Rename of pum hl_group is incomplete in source.
+Solution: Also rename the test function. Rename to user_hlattr in code
+ to avoid confusion with pum_extra. Add test with matched text
+ highlighting (zeertzjq).
+
+Patch 9.1.0630
+Problem: MS-Windows: build fails with MNVDLL and mzscheme
+Solution: Define scheme_register_tls_space() inside gmnv.exe
+ and refer to it from the dll (Ken Takata).
+
+Patch 9.1.0631
+Problem: wrong completion list displayed with non-existing dir + fuzzy
+ completion (kawarimidoll)
+Solution: clear list of matches, if leader did not use fuzzy match (glepnir).
+
+Patch 9.1.0632
+Problem: MS-Windows: Compiler Warnings
+Solution: Fix the warnings (Ken Takata).
+
+Patch 9.1.0633
+Problem: Compilation warnings with `-Wunused-parameter`
+Solution: Add the `UNUSED` macro where needed, and remove some
+ superfluous ones (Dominique Pellé).
+
+Patch 9.1.0634
+Problem: Ctrl-P not working by default (Jesse Pavel, after v9.1.0598)
+Solution: Revert part of v9.1.0598 and set cur_match_pos
+ correctly according to compl_dir_forward().
+
+Patch 9.1.0635
+Problem: filetype: SuperHTML template files not recognized
+Solution: Update the filetype detection code to detect '*.shtml' either
+ as HTML (Server Side Includes) or SuperHTML (template files)
+ (EliSauder).
+
+Patch 9.1.0636
+Problem: filetype: ziggy files are not recognized
+Solution: detect '*.ziggy' files as ziggy filetype,
+ detect '*.ziggy-schema' files as ziggy-schema filetype (EliSauder).
+
+Patch 9.1.0637
+Problem: MS-Windows: Style issues in MSVC Makefile
+Solution: Fix style issues, simplify logic (Ken Takata).
+
+Patch 9.1.0638
+Problem: E1510 may happen when formatting a message (after 9.1.0181).
+Solution: Only give E1510 when using typval (zeertzjq).
+
+Patch 9.1.0639
+Problem: channel timeout may wrap around
+Solution: Correct timeout calculation when GetTickCount() wraps around
+ (Ken Takata).
+
+Patch 9.1.0640
+Problem: Mingw: Makefile can be improved
+Solution: Reduce nesting level, directly check if the '-Wl,--entry'
+ option is required (Ken Takata).
+
+Patch 9.1.0641
+Problem: MS-Windows: OLE enabled in console version, may cause hang
+ (Linda_pp)
+Solution: Disable OLE for console version (Ken Takata).
+
+Patch 9.1.0642
+Problem: Check that mapping rhs starts with lhs doesn't work if lhs is
+ not simplified.
+Solution: Keep track of the mapblock containing the alternative lhs and
+ also compare with it (zeertzjq).
+
+Patch 9.1.0643
+Problem: terminal: cursor may end up on invalid position after reducing
+ the scrollback lines (user202729)
+Solution: After reducing the scrollback size, check the cursor position,
+ making sure it does not end up on an invalid line.
+
+Patch 9.1.0644
+Problem: Unnecessary STRLEN() when applying mapping (after v9.1.0642).
+Solution: Use m_keylen and mnv_strnsave() (zeertzjq).
+
+Patch 9.1.0645
+Problem: regex: wrong match when searching multi-byte char case-insensitive
+ (diffsetter)
+Solution: Apply proper case-folding for characters and search-string
+
+Patch 9.1.0646
+Problem: MNV9: imported function may not be found
+Solution: Try to find the function by name (Ernie Rael).
+
+Patch 9.1.0647
+Problem: [security] use-after-free in tagstack_clear_entry (Suyue Guo).
+Solution: Instead of manually calling mnv_free() on each of the tagstack
+ entries, let's use tagstack_clear_entry(), which will
+ also free the stack, but using the MNV_CLEAR macro, which prevents a
+ use-after-free by setting those pointers to NULL.
+
+Patch 9.1.0648
+Problem: [security] double-free in dialog_changed() (SuyueGuo)
+Solution: Only clear pointer b_sfname pointer, if it is different than the
+ b_ffname pointer. Don't try to free b_fname, set it to NULL
+ instead.
+
+Patch 9.1.0649
+Problem: Wrong comment for "len" argument of call_simple_func().
+Solution: Remove the "or -1 to use strlen()". Also change its type to
+ size_t to remove one cast. (zeertzjq).
+
+Patch 9.1.0650
+Problem: Coverity warning in cstrncmp() (after v9.1.0645).
+Solution: Change the type of n2 to int (zeertzjq).
+
+Patch 9.1.0651
+Problem: ex: trailing dot is optional for :g and :insert/:append
+Solution: Don't break out early, when the next command is empty
+ (Mohamed Akram).
+
+Patch 9.1.0652
+Problem: too many strlen() calls in syntax.c
+Solution: refactor code to reduce the number or strlen() calls, get rid of
+ un-used SYN_NAMELEN macro (John Marriott).
+
+Patch 9.1.0653
+Problem: Patch v9.1.0648 not completely right (zeertzjq)
+Solution: Remove always true condition.
+
+Patch 9.1.0654
+Problem: completion does not respect completeslash with fuzzy (egesip)
+Solution: Change path separator on Windows, depending on 'completeslash'
+ option value (glepnir).
+
+Patch 9.1.0655
+Problem: filetype: goaccess config file not recognized
+Solution: Detect 'goaccess.conf' as goaccess filetype, also
+ include a basic syntax and ftplugin (Adam Monsen)
+
+Patch 9.1.0656
+Problem: MS-Windows: MSVC Makefile CPU handling can be improved
+Solution: Update Makefile and also remove some old code (Ken Takata).
+
+Patch 9.1.0657
+Problem: MS-Windows: MSVC build time can be optimized
+Solution: Stop using Powershell, show detected version, read _MSC_VER
+ and _MSC_FULL_VER in a single cl execution. (Ken Takata).
+
+Patch 9.1.0658
+Problem: Coverity warns about dereferencing NULL pointer.
+Solution: Bail out if mnv_strrchr() returns NULL (zeertzjq).
+
+Patch 9.1.0659
+Problem: MS-Windows: MSVC Makefile is a bit hard to read (after v9.1.0657).
+Solution: Indent the if/else statements to improve readability (Ken Takata).
+
+Patch 9.1.0660
+Problem: MS-Windows: Shift-Insert does not work on old conhost
+ (Nick Jensen, after 9.0.1146)
+Solution: Handle Shift-Insert specifically (Christian Plewright).
+
+Patch 9.1.0661
+Problem: the zip plugin is not tested.
+Solution: Include tests (Damien).
+
+Patch 9.1.0662
+Problem: filecopy() may return wrong value when readlink() fails.
+Solution: Set ret to -1 so that 0 is returned when readlink() fails
+ (zeertzjq).
+
+Patch 9.1.0663
+Problem: tests: zip test still resets 'shellslash' option
+Solution: Remove resetting the 'shellslash' option, the zip plugin should now
+ be able to handle this options.
+
+Patch 9.1.0664
+Problem: MS-Windows: console mnv did not switch back to main screen on
+ exit
+Solution: switch back to main screen on exit (Ken Takata).
+
+Patch 9.1.0665
+Problem: Locked variable can be changed in a :for loop.
+Solution: Always do a full permission check on the first loop iteration
+ where ASSIGN_DECL is not set (zeertzjq).
+
+Patch 9.1.0666
+Problem: assert_equal() doesn't show multibyte string correctly
+Solution: Properly advance over a multibyte char (zeertzjq).
+
+Patch 9.1.0667
+Problem: Some other options reset curswant unnecessarily when set.
+ (Andrew Haust)
+Solution: Don't reset curswant when setting 'comments', 'commentstring'
+ or 'define' (zeertzjq).
+
+Patch 9.1.0668
+Problem: build-error with python3.12 and stable ABI (zdohnal)
+Solution: Add type casts, define Py_INCREF for Python3.12 and higher
+ (Ken Takata).
+
+Patch 9.1.0669
+Problem: stable python ABI not used by default
+Solution: Enable stable python ABI v3.8 when building with python3/dyn
+ by default, update the default Python3 version to 3.8 for
+ MS-Windows (Ken Takata).
+
+Patch 9.1.0670
+Problem: po file encoding fails on *BSD during make
+Solution: Instead of using `$<` make use of variable `$?` which should
+ be equivalent when the rule is dependent on only a single
+ file (RestorerZ).
+
+Patch 9.1.0672
+Problem: marker folds may get corrupted on undo (Yousef Mohammed)
+Solution: When adjusting folds, make sure that line1 is the lower limit
+ and line2 is the upper line limit. In particular, line2 should
+ not be able to get smaller than line1.
+
+Patch 9.1.0673
+Problem: MNV9: too recursive func calls when calling super-class method
+ with non-overridden super-call methods. (Aliaksei Budavei)
+Solution: Use interface method, when super is to be used (Ernie Rael)
+
+Patch 9.1.0674
+Problem: MNV9: compiling abstract method fails because of missing
+ return (Aliaksei Budavei)
+Solution: Don't require a return statement for an abstract method when
+ compiling (Ernie Rael).
+
+Patch 9.1.0675
+Problem: Patch v9.1.0674 causes problems
+Solution: Revert it for now.
+
+Patch 9.1.0676
+Problem: style issues with man pages
+Solution: Update man pages and test_xxd.mnv, since it uses
+ the xxd man page (RestorerZ)
+
+Patch 9.1.0677
+Problem: :keeppatterns does not retain the substitute pattern
+ for a :s command
+Solution: Preserve the last substitute pattern when used with the
+ :keeppatterns command modifier (Gregory Anders).
+
+Patch 9.1.0678
+Problem: [security]: use-after-free in alist_add() (SuyueGuo)
+Solution: Lock the current window, so that the reference to
+ the argument list remains valid.
+
+Patch 9.1.0679
+Problem: Rename from w_closing to w_locked is incomplete (after 9.1.0678).
+Solution: Rename remaining occurrences of w_closing to w_locked and
+ update comments (zeertzjq).
+
+Patch 9.1.0680
+Problem: VMS does not have defined uintptr_t
+Solution: Add type definitions (Zoltan Arpadffy).
+
+Patch 9.1.0681
+Problem: tests: Analyzing failed screendumps is hard
+Solution: Facilitate the viewing of rendered screendumps under src/
+ add some documentation on how to use the viewdumps.mnv
+ script (Aliaksei Budavei)
+
+Patch 9.1.0682
+Problem: MNV9: Segfault with uninitialized funcref (Daniel Viberg)
+Solution: Check the Funcref for being Null before trying to access it
+ (Ernie Rael).
+
+Patch 9.1.0683
+Problem: mode() returns wrong value with <Cmd> mapping
+Solution: Change decision priority of VIsual_active and move visual mode a bit
+ further down (kuuote)
+
+Patch 9.1.0684
+Problem: completion is inserted on Enter with "noselect" (Carman Fu)
+Solution: Check noselect before update compl_shown_match (glepnir).
+
+Patch 9.1.0685
+Problem: too many strlen() calls in usercmd.c
+Solution: Refactor code to reduce the number or strlen() calls (John Marriott)
+
+Patch 9.1.0686
+Problem: zip-plugin has problems with special characters (user202729)
+Solution: Escape '*?[\' on Unix and handle those chars a bit differently on
+ MS-Windows, add a test, check before overwriting files.
+
+Patch 9.1.0687
+Problem: Makefile may not install desktop files
+Solution: Check for "$(DESTDIR)$(DATADIR)" instead of just "$DESTDIR",
+ which is usually not defined, add uninstall rules for the
+ icons and the desktop files.
+
+Patch 9.1.0688
+Problem: MNV9: dereferences NULL pointer in check_type_is_value() (Suyue Guo)
+Solution: Verify that the pointer is not Null.
+
+Patch 9.1.0689
+Problem: buffer-overflow in do_search() with 'rightleft' (SuyueGuo)
+Solution: After reversing the text (which allocates a new buffer),
+ re-calculate the text length.
+
+Patch 9.1.0690
+Problem: cannot set special highlight kind in popupmenu
+Solution: Add kind_hlgroup item to complete function (glepnir).
+
+Patch 9.1.0691
+Problem: python3: stable-abi may cause segfault on Python 3.11
+ (Audrius Kažukauskas, after v9.1.0668)
+Solution: Do not enable the stable Python ABI by default, only when used
+ with --with-python3-stable-abi argument is given
+
+Patch 9.1.0692
+Problem: Wrong patlen value in ex_substitute() (after 9.1.0426).
+Solution: Compute patlen after finding end separator (zeertzjq).
+
+Patch 9.1.0693
+Problem: Configure doesn't show result when not using python3 stable
+ abi (after v9.1.0691)
+Solution: Add back AC_MSG_RESULT() (Ken Takata).
+
+Patch 9.1.0694
+Problem: The matchparen plugin is slow on a long line.
+Solution: Don't use a regexp to get char at and before cursor (zeertzjq).
+
+Patch 9.1.0695
+Problem: tests: test_crash leaves Untitled file around
+Solution: Cleanup at the end of the test_crash.mnv test file.
+
+Patch 9.1.0696
+Problem: installing runtime files fails when using SHADOWDIR
+Solution: Revert part of v9.1.0609, since runtime/doc/Makefile's default
+ value for MNVPROG does not work if mnv was built in a SHADOWDIR.
+ (James McCoy)
+
+Patch 9.1.0697
+Problem: heap-buffer-overflow in ins_typebuf (SuyueGuo)
+Solution: When flushing the typeahead buffer, validate that there is enough
+ space left
+
+Patch 9.1.0698
+Problem: tests: "Untitled" file not removed when running Test_crash1_3 alone
+ with TEST_FILTER (after v9.1.0695)
+Solution: Use a TearDown function instead of another test (zeertzjq).
+
+Patch 9.1.0699
+Problem: "dvgo" is not always an inclusive motion (Iain King-Speir)
+Solution: Initialize the inclusive flag to false.
+
+Patch 9.1.0700
+Problem: possible crash with 2byte encoding and glob2regpat()
+Solution: Skip over character, if it is multi-byte character.
+
+Patch 9.1.0701
+Problem: crash with NFA regex engine when searching for composing chars
+ (SuyueGuo)
+Solution: When there is no composing character, break out of the loop
+ and check that out1 state is not null.
+
+Patch 9.1.0702
+Problem: Patch 9.1.0700 broke CI
+Solution: Revert for now.
+
+Patch 9.1.0703
+Problem: possible crash with 2-byte encoding and glob2regpat()
+ (after v9.1.0700, v9.1.0702)
+Solution: Include both bytes for a multi-byte character for an
+ escaped character.
+
+Patch 9.1.0704
+Problem: inserting with a count is inefficient
+Solution: Disable calculation of the cursor position and topline, if a
+ count has been used (Ken Takata).
+
+Patch 9.1.0705
+Problem: Sorting of fuzzy filename completion is not stable
+Solution: Compare indexes when scores are equal. Fix some typos (zeertzjq).
+
+Patch 9.1.0706
+Problem: tests: test_gettext fails when using shadow dir
+Solution: Link the ru_RU directory into the shadow testdir (James McCoy).
+
+Patch 9.1.0707
+Problem: [security]: invalid cursor position may cause a crash
+ (after v9.1.0038)
+Solution: Set cursor to the last character in a line, if it would
+ otherwise point to beyond the line; no tests added, as it
+ is unclear how to reproduce this.
+
+Patch 9.1.0708
+Problem: Window is updated with potentially invalid skipcol in recursive
+ window update path. I.e. cursor outside of visible range in
+ large line that does not fit.
+Solution: Make sure it is valid (Luuk van Baal).
+
+Patch 9.1.0709
+Problem: GUIEnter not found in Turkish locale (James McCoy)
+Solution: Explicitly compare autocommand events by ASCII value and
+ ignoring locale, because according to the documentation,
+ events are case insensitive.
+
+Patch 9.1.0710
+Problem: when a popup window covers the command line,
+ the command line is not completely cleared on popup_hide() (yu3s)
+Solution: Check if the popup window covers the command line and if it
+ does, set the clear_cmdline flag.
+
+Patch 9.1.0711
+Problem: tests: test_xxd may file when using different xxd
+Solution: Make Test_xxd_color_0 agnostic to xxd's path, similar to
+ Test_xxd_color_1 by filtering out shell command prompt in
+ screen dump file (James McCoy).
+
+Patch 9.1.0712
+Problem: tests: missing dependency of Test_gettext_makefile
+Solution: Check that xgettext binary is available, else skip the test
+ (James McCoy).
+
+Patch 9.1.0713
+Problem: Newline causes E749 in Ex mode (after 9.1.0573).
+Solution: Don't execute empty command followed by a newline.
+
+Patch 9.1.0714
+Problem: tests: GuiEnter_Turkish test may fail
+Solution: The message will be translated if the Turkish message file is
+ installed. Use gettext() to get the expected message (Ken Takata).
+
+Patch 9.1.0715
+Problem: Not correctly parsing color names (chdiza, after v9.1.0709)
+Solution: Revert part of the Patch that compares the color names and
+ fall-back to the macro STRICMP.
+
+Patch 9.1.0716
+Problem: resetting setcellwidth() doesn't update the screen
+Solution: Redraw after clearing the cellwidth table (Ken Takata).
+
+Patch 9.1.0717
+Problem: Unnecessary nextcmd NULL checks in parse_command_modifiers().
+Solution: Remove them (zeertzjq).
+
+Patch 9.1.0718
+Problem: hard to guess the MNV Runtime Directory
+Solution: Set the $MYMNVDIR environment variable to the users
+ personal runtime directory (e.g. ~/.mnv on Linux).
+
+Patch 9.1.0719
+Problem: Resetting cell widths can make 'listchars' or 'fillchars'
+ invalid.
+Solution: Check for conflicts when resetting cell widths (zeertzjq).
+
+Patch 9.1.0720
+Problem: Wrong breakindentopt=list:-1 with multibyte chars or TABs in
+ text matched by 'formatlistpat' (John M Devin)
+Solution: Use the width of the match text (zeertzjq).
+
+Patch 9.1.0721
+Problem: tests: test_mksession does not consider XDG_CONFIG_HOME
+Solution: Allow to match $HOME/.mnv/ and $HOME/.config/mnv for &viewdir
+ (John M Devin)
+
+Patch 9.1.0722
+Problem: crash with large id in text_prop interface
+ prop_add()/prop_add_list() (cposture)
+Solution: Error out if the id is > INT_MAX or <= INT_MIN.
+
+Patch 9.1.0723
+Problem: if_python: dynamic linking fails with python3 >= 3.13
+ when using non-stable ABI (zdohnal)
+Solution: Do not try to import the privat python symbol
+ _PyObject_NextNotImplemented (Yee Cheng Chin).
+
+Patch 9.1.0724
+Problem: if_python: link error with python 3.13 and stable ABI (zdohnal)
+Solution: Use the correct stable APIs Py_IncRef and Py_DecRef instead
+ (Yee Cheng Chin)
+
+Patch 9.1.0725
+Problem: filetype: swiftinterface files are not recognized
+Solution: Detect '*.swiftinterface' files as swift filetype (LosFarmosCTL).
+
+Patch 9.1.0726
+Problem: not using correct python3 API with dynamic linking
+Solution: Use stable IncRef / DecRef in Python 3 dynamic bindings
+ (Yee Cheng Chin).
+
+Patch 9.1.0727
+Problem: too many strlen() calls in option.c
+Solution: Refactor the code to reduce the number of strlen() calls
+ (John Marriott)
+
+Patch 9.1.0728
+Problem: heap-use-after-free in garbage collection with location list
+ user data.
+Solution: Mark user data as in use when no other window is referencing
+ the location list (zeertzjq).
+
+Patch 9.1.0729
+Problem: Wrong cursor-screenline when resizing window
+Solution: Invalidate saved left_col and right_col when width1 or width2
+ change.
+
+Patch 9.1.0730
+Problem: Crash with cursor-screenline and narrow window (elig0n)
+Solution: Don't set right_col when width2 is 0 (zeertzjq).
+
+Patch 9.1.0731
+Problem: inconsistent case sensitive extension matching
+Solution: Unify case sensitive extension matching (Evgeni Chasnovski).
+
+Patch 9.1.0732
+Problem: xxd: cannot use -b and -i together (Irgendwer)
+Solution: Implement the missing changes (Andre Chang)
+
+Patch 9.1.0733
+Problem: keyword completion does not work with fuzzy (egesip)
+Solution: Handle ctrl_x_mode_normal() specifically (glepnir).
+
+Patch 9.1.0734
+Problem: filetype: jinja files are not recognized
+Solution: Detect '*.jinja' files a jinja filetype,
+ include jinja syntax script (Gregory Anders)
+
+Patch 9.1.0735
+Problem: filetype: salt files are not recognized
+Solution: Detect '*.sls' files as filetype salt,
+ include a syntax script (Gregory Anders)
+
+Patch 9.1.0736
+Problem: Unicode tables are outdated
+Solution: Update Unicode tables to v16
+
+Patch 9.1.0737
+Problem: Asynchronous terminal jobs occasionally require more time
+ to complete and redraw the window
+Solution: Increase the sleep value from 10 to 50 milliseconds
+ (Aliaksei Budavei).
+
+Patch 9.1.0738
+Problem: filetype: rapid files are not recognized
+Solution: Detect '*.sysx' and '*.modx' as rapid filetype (KnoP-01).
+
+Patch 9.1.0739
+Problem: [security]: use-after-free in ex_getln.c
+Solution: free pointer p a bit later (John Marriott).
+
+Patch 9.1.0740
+Problem: incorrect internal diff with an empty file
+Solution: Set pointer to NULL, instead of using an empty line file
+ (Yukihiro Nakadaira).
+
+Patch 9.1.0741
+Problem: No way to get prompt for input()/confirm()
+Solution: Add getcmdprompt() function (Shougo Matsushita).
+
+Patch 9.1.0742
+Problem: getcmdprompt() implementation can be improved
+Solution: Improve and simplify it (h-east).
+
+Patch 9.1.0743
+Problem: diff mode does not handle overlapping diffs correctly
+Solution: Correct the logic to handle overlapping blocks
+ (Yukihiro Nakadaira)
+
+Patch 9.1.0744
+Problem: filetype: notmuch configs are not recognised
+Solution: Detect more notmuch profile configuration files
+ as dosini filetype (Julio B).
+
+Patch 9.1.0745
+Problem: filetype: bun and deno history files not recognized
+Solution: Detect '.bun_repl_history' and 'deno_history.txt' as
+ javascript filetype (Wu, Zhenyu).
+
+Patch 9.1.0746
+Problem: Test_halfpage_longline() fails on large terminals (lazypingu)
+Solution: Use a window with known width (zeertzjq).
+
+Patch 9.1.0747
+Problem: various typos in repo found
+Solution: Fix typos (zeertzjq).
+
+Patch 9.1.0748
+Problem: The :keep{alt,jumps,marks,patterns} commmands are sometimes
+ misidentified as :k.
+Solution: Make sure one_letter_cmd() only returns true for :k and not
+ other :keep* commands (Doug Kearns).
+
+Patch 9.1.0749
+Problem: filetype: http files not recognized
+Solution: Detect '*.http' as http filetype, include
+ http filetype plugin (Riley Bruins)
+
+Patch 9.1.0750
+Problem: there are some Win9x legacy references
+Solution: Remove those mentions (Nir Lichtman).
+
+Patch 9.1.0751
+Problem: Error callback for term_start() not used (darkseid-is)
+Solution: Attach pipe to stderr if an error callback exists
+
+Patch 9.1.0752
+Problem: can set cedit to an invalid value
+Solution: Check that the value is a valid key name (Milly)
+
+Patch 9.1.0753
+Problem: Wrong display when typing in diff mode with 'smoothscroll'.
+Solution: Use adjust_plines_for_skipcol() (zeertzjq).
+
+Patch 9.1.0754
+Problem: fixed order of items in insert-mode completion menu
+Solution: Introduce the 'completeitemalign' option with default
+ value "abbr,kind,menu" (glepnir).
+
+Patch 9.1.0755
+Problem: quickfix list does not handle hardlinks well
+Solution: Store original file name with quickfix entry (Austin Chang)
+
+Patch 9.1.0756
+Problem: missing change from Patch v9.1.0754
+Solution: Use correct width for the actual item in pum_redraw() (glepnir).
+
+Patch 9.1.0757
+Problem: tests: messages files contains ANSI escape sequences
+Solution: Filter those out in runtests.mnv
+
+Patch 9.1.0758
+Problem: it's possible to set an invalid key to 'wildcharm'
+Solution: Error out, if the 'wildcharm' value is an invalid key (Milly).
+
+Patch 9.1.0759
+Problem: screenpos() may return invalid position after switching buffers
+ (Greg Hurrell)
+Solution: Reset w_leftcol if wrapping has been set after copying wrap option.
+
+Patch 9.1.0760
+Problem: tests: no error reported, if gen_opt_test.mnv fails
+Solution: Make MNV exit with return code 1 in case of any error (Milly).
+
+Patch 9.1.0761
+Problem: :cd completion fails on Windows with backslash in path
+Solution: Switch no_bslash argument to FALSE in file_pat_to_reg_pat()
+
+Patch 9.1.0762
+Problem: 'cedit', 'termwinkey' and 'wildchar' may not be parsed correctly
+Solution: improve string_to_key() function in option.c (Milly).
+
+Patch 9.1.0763
+Problem: tests: cannot run single syntax tests
+Solution: Support running a subset of syntax tests (Aliaksei Budavei).
+
+Patch 9.1.0764
+Problem: [security]: use-after-free when closing a buffer
+Solution: When splitting the window and editing a new buffer,
+ check whether the newly to be edited buffer has been marked
+ for deletion and abort in this case.
+
+Patch 9.1.0765
+Problem: No test for Patches 6.2.418 and 7.3.489
+Solution: Add a test. Fix some whitespace problems in test_mapping.mnv.
+ Document the behavior (zeertzjq).
+
+Patch 9.1.0766
+Problem: too many strlen() calls in ex_getln.c
+Solution: Refactor the code to reduce the number of strlen() calls
+ (John Marriott).
+
+Patch 9.1.0767
+Problem: A cmdlen == 0 condition is always true as ccline.cmdlen == 0
+ was already checked above (after v9.1.0766).
+Solution: Remove the condition and the variable (zeertzjq).
+
+Patch 9.1.0768
+Problem: MS-Windows: incorrect cursor position when restoring screen
+ (after v9.1.0664)
+Solution: Restore the VTP command for switching screens back to
+ termcap_mode_end() (William Bresler).
+
+Patch 9.1.0769
+Problem: filetype: MLIR files are not recognized
+Solution: Detect '*.mlir' files as mlir filetype,
+ include a mlir filetype plugin (Wu, Zhenyu).
+
+Patch 9.1.0770
+Problem: current command completion is a bit limited
+Solution: Add the shellcmdline completion type and getmdcomplpat()
+ function (Ruslan Russkikh).
+
+Patch 9.1.0771
+Problem: Currently completion attribute hl_group is combined with
+ all items, which is redundant and confusing with kind_hlgroup
+Solution: Renamed to abbr_hlgroup and combine it only with the abbr item
+ (glepnir).
+
+Patch 9.1.0772
+Problem: some missing changes from v9.1.0771
+Solution: Use correct highlighting attribute and adjust comments (glepnir).
+
+Patch 9.1.0773
+Problem: filetype: some Apache files are not recognized
+Solution: Detect more config files from the Apache source
+ distribution as filetype apache (nisbet-hubbard)
+
+Patch 9.1.0774
+Problem: "shellcmdline" doesn't work with getcompletion().
+Solution: Use set_context_for_wildcard_arg() (zeertzjq).
+
+Patch 9.1.0775
+Problem: tests: not enough tests for setting options
+Solution: Add more comprehensive tests to test_options (Milly).
+
+Patch 9.1.0776
+Problem: test_strftime may fail because of missing TZ data
+Solution: Use GMT offsets to validate timezone differences (James McCoy).
+
+Patch 9.1.0777
+Problem: filetype: Some upstream php files are not recognized
+Solution: Detect more config files from the PHP source
+ distribution as filetype ini (nisbet-hubbard).
+
+Patch 9.1.0778
+Problem: filetype: lf config files are not recognized
+Solution: Detect lfrc files as lf filetype, include a syntax
+ script for lf files (Andis Spriņķis).
+
+Patch 9.1.0779
+Problem: filetype: neomuttlog files are not recognized
+Solution: Detect '*.neomuttdebug' file as neomuttlog filetype,
+ include neomuttlog syntax script (Richard Russon).
+
+Patch 9.1.0780
+Problem: MS-Windows: incorrect Win32 error checking
+Solution: Fix wrong order of error handling and perform
+ some minor refactoring (Nir Lichtman).
+
+Patch 9.1.0781
+Problem: tests: test_filetype fails (clason) (after v9.1.0779).
+Solution: Use correct filename for neomuttlog filetype.
+
+Patch 9.1.0782
+Problem: tests: using wrong neomuttlog file name
+Solution: Use correct file name.
+
+Patch 9.1.0783
+Problem: 'spell' option setting has problems
+Solution: correctly check for comma for 'spellfile' option,
+ remove unnecessary checks, refactor slightly (Milly)
+
+Patch 9.1.0784
+Problem: there are several problems with python 3.13
+Solution: Fix the problems in the python3 interface (Boris Staletic)
+
+Patch 9.1.0785
+Problem: cannot preserve error position when setting quickfix lists
+Solution: Add the 'u' action for setqflist()/setloclist() and try
+ to keep the closes target position (Jeremy Fleischman).
+
+Patch 9.1.0786
+Problem: tests: quickfix update test does not test location list
+ (after: v9.1.0.785)
+Solution: Update Test_quickfix_buffer_contents to test with location
+ lists (Yegappan Lakshmanan).
+
+Patch 9.1.0787
+Problem: cursor position changed when using hidden terminal
+ and BufFilePost autocommand (Mizuno Jan Yuta)
+Solution: Save and restore cursor position.
+
+Patch 9.1.0788
+Problem: <CSI>27;<mod>u is not decoded to literal Escape in kitty/foot
+Solution: Disable XTerm modifyOtherKeys form 1 when the kitty protocol is enabled
+ (Christian Fillion)
+
+Patch 9.1.0789
+Problem: tests: ':resize + 5' has invalid space after '+'
+Solution: Correct the test (Milly).
+
+Patch 9.1.0790
+Problem: Amiga: AmigaOS4 build should use default runtime (newlib)
+Solution: Remove clib2 from compiler / linker flags (Ola Söder).
+
+Patch 9.1.0791
+Problem: tests: errors in gen_opt_test.mnv are not shown
+Solution: update gen_opt_test.mnv and write test.log,
+ let the makefile output test.log (Milly).
+
+Patch 9.1.0792
+Problem: tests: Test_set_values() is not comprehensive enough
+Solution: Add a lot more test cases (Milly).
+
+Patch 9.1.0793
+Problem: xxd: -e does add one extra space
+Solution: fix it, refactor and merge some code (Aapo Rantalainen).
+
+Patch 9.1.0794
+Problem: tests: tests may fail on Windows environment
+Solution: Use shellcmdflag=/D to skip executing autorun from the registry
+ (Milly).
+
+Patch 9.1.0795
+Problem: filetype: Vivado memory info file are not recognized
+Solution: Detect '*.mmi' memory info file as xml filetype (Wu, Zhenyu).
+
+Patch 9.1.0796
+Problem: filetype: libtool files are not recognized
+Solution: Detect '*.{lo,la,lai}' as sh filetype (Wu, Zhenyu).
+
+Patch 9.1.0797
+Problem: testing of options can be further improved
+Solution: Split the generated option test into test_options_all.mnv,
+ add more test cases, save and restore values, fix use-after-free.
+
+Patch 9.1.0798
+Problem: too many strlen() calls in cmdhist.c
+Solution: Refactor code and remove strlen() calls (John Marriott).
+
+Patch 9.1.0799
+Problem: tests: gettwinvar()/gettabwinvar() tests are not comprehensive
+Solution: Add more tests (Milly).
+
+Patch 9.1.0800
+Problem: tests: no error check when setting global 'termwinsize'
+Solution: Also validate when using setglobal (Milly).
+
+Patch 9.1.0801
+Problem: tests: no error check when setting global 'termwinkey'
+Solution: Also validate when using setglobal (Milly).
+
+Patch 9.1.0802
+Problem: tests: no error check when setting global 'fdm' to empty value
+Solution: Also check global 'fdm' value for being empty (Milly).
+
+Patch 9.1.0803
+Problem: tests: no error check when setting global 'isk'
+Solution: Also parse and check global 'isk' value (Milly).
+
+Patch 9.1.0804
+Problem: tests: no error check when setting global 'cc'
+Solution: Also parse and check global 'cc' value (Milly).
+
+Patch 9.1.0805
+Problem: tests: minor issues in gen_opt_test.mnv
+Solution: Fix restore value for 'undolevels', fix comment, fix
+ wrong cpo value, add equality test for global-local options on
+ switchback (Milly).
+
+Patch 9.1.0806
+Problem: tests: no error check when setting global 'briopt'
+Solution: Also parse and check global 'briopt' value (Milly).
+
+Patch 9.1.0807
+Problem: tests: having 'nolist' in modelines isn't always desired
+Solution: Remove 'nolist' from modeline (zeertzjq).
+
+Patch 9.1.0808
+Problem: Terminal scrollback doesn't shrink when reducing
+ 'termwinscroll'
+Solution: Check if option value was decreased (Milly).
+
+Patch 9.1.0809
+Problem: filetype: petalinux config files not recognized
+Solution: Detect 'project-spec/*.conf' files as bitbake filetype (Wu, Zhenyu).
+
+Patch 9.1.0810
+Problem: cannot easily adjust the |:find| command
+Solution: Add support for the 'findexpr' option (Yegappan Lakshmanan).
+
+Patch 9.1.0811
+Problem: :find expansion does not consider 'findexpr'
+Solution: Support expanding :find command argument using 'findexpr'
+ (Yegappan Lakshmanan).
+
+Patch 9.1.0812
+Problem: Coverity warns about dereferencing NULL ptr in check_colorcolumn()
+Solution: Verify that wp is not null before accessing it.
+
+Patch 9.1.0813
+Problem: no error handling with setglobal and number types
+Solution: Validate values when using :setglobal with number option types
+ (Milly).
+
+Patch 9.1.0814
+Problem: mapset() may remove unrelated mapping whose {rhs} matches the
+ restored mapping's {lhs}.
+Solution: Only match by {lhs} when unmapping for mapset() (zeertzjq).
+
+Patch 9.1.0815
+Problem: "above" virtual text causes wrong 'colorcolumn' position (@matrdr)
+Solution: Use the number of cells instead of bytes for vcol_off_tp
+ (zeertzjq).
+
+Patch 9.1.0816
+Problem: tests: not clear what tests cause asan failures
+Solution: Append testname to $ASAN_OPTIONS.
+
+Patch 9.1.0817
+Problem: termdebug: cannot evaluate expr in a popup
+Solution: Enhance termdebug plugin and allow to evaluate expressions in
+ a popup window, add a unit test (Peter Wolf).
+
+Patch 9.1.0818
+Problem: some global functions are only used in single files
+Solution: Refactor code slightly and make some more functions static
+ (Yegappan Lakshmanan).
+
+Patch 9.1.0819
+Problem: tests: need a test for findexpr and mnv9 imported func
+Solution: Add a test for 'findexpr' and MNV9 imported script
+ (Yegappan Lakshmanan)
+
+Patch 9.1.0820
+Problem: tests: Mac OS tests are too flaky
+Solution: Increase max test timeout to 25 minutes, allow up to 10 retries on
+ Mac OS runners, refactor runtest.mnv (Milly).
+
+Patch 9.1.0821
+Problem: 'findexpr' completion doesn't set v:fname to cmdline argument.
+Solution: Set v:fname to the cmdline argument as-is (zeertzjq).
+
+Patch 9.1.0822
+Problem: topline might be changed in diff mode unexpectedly (Jaehwang Jung)
+Solution: Do not re-calculate topline, when using line() func in diff mode.
+
+Patch 9.1.0823
+Problem: filetype: Zephyr overlay files not recognized
+Solution: Detect '*.overlay' files as dts filetype, include syntax tests for
+ DTS files (Xudong Zheng).
+
+Patch 9.1.0824
+Problem: too many strlen() calls in register.c
+Solution: Refactor code, add string_T struct to keep track of string lengths
+ (John Marriott).
+
+Patch 9.1.0825
+Problem: compile error for non-diff builds (after v9.1.0822)
+Solution: Add #ifdef FEAT_DIFF (John Marriott).
+
+Patch 9.1.0826
+Problem: filetype: sway files are not recognized
+Solution: Detect '*.sw' files as sway filetype, include a filetype plugin
+ (Riley Bruins).
+
+Patch 9.1.0827
+Problem: CI: tests can be improved
+Solution: Collect failed indent tests, raise timeout for search()
+ functions when using ASAN/Valgrind (Aliaksei Budavei).
+
+Patch 9.1.0828
+Problem: string_T struct could be used more often
+Solution: Refactor code and make use of string_T struct for key-value pairs,
+ reformat overlong lines (John Marriott).
+
+Patch 9.1.0829
+Problem: MNV source code uses a mix of tabs and spaces
+Solution: Expand tabs in sound.c, this is an experiment (Luca Saccarola).
+
+Patch 9.1.0830
+Problem: using wrong highlight group for spaces for popupmenu
+Solution: Use original attribute instead of combined attributed (glepnir).
+
+Patch 9.1.0831
+Problem: 'findexpr' can't be used for lambads (Justin Keyes)
+Solution: Replace the findexpr option with the findfunc option
+ (Yegappan Lakshmanan).
+
+Patch 9.1.0832
+Problem: :set doesn't work for 'cot' and 'bkc' after :setlocal.
+Solution: Clear the local flags when using :set (zeertzjq).
+
+Patch 9.1.0833
+Problem: CI: recent ASAN changes do not work for indent tests
+Solution: Move code to runtime/indent/testdir/runtest.mnv (Aliaksei Budavei).
+
+Patch 9.1.0834
+Problem: tests: 2html test fails (after b256221e8377)
+Solution: Adjust testdir/samples/Test_tohtml_basic.c.html (Aliaksei Budavei).
+
+Patch 9.1.0835
+Problem: :setglobal doesn't work properly for 'ffu' and 'tsrfu' when
+ the local value is set (after v9.1.0831)
+Solution: Check os_flags instead of buffer option variable (zeertzjq).
+
+Patch 9.1.0836
+Problem: the mnvtutor can be improved
+Solution: Port and include the interactive mnvtutor plugin from Neomnv
+ (by Felipe Morales) (Yegappan Lakshmanan).
+
+Patch 9.1.0837
+Problem: Cross-compiling to good modern operating systems is difficult as
+ configure assumes obscure bugs are present by default. However,
+ most core autoconf-based packages today assume features work
+ when in doubt, making cross-compilation easier.
+Solution: Assume features work by default and continue to issue a warning
+ with the appropriate cache variable. This solution shifts the
+ burden onto the users of rare buggy operating systems and
+ makes cross-compilation work out of the box for everyone else.
+
+Patch 9.1.0838
+Problem: mnvtutor is bash-specific (after 17c71daf83f45c3ee8)
+Solution: Port back to POSIX sh (Aliaksei Budavei).
+
+Patch 9.1.0839
+Problem: filetype: leo files are not recognized
+Solution: Detect '*.leo' files as leo filetype, include a filetype plugin
+ (Riley Bruins)
+
+Patch 9.1.0840
+Problem: filetype: idris2 files are not recognized
+Solution: Detect '*.idr' files as idris2, '*.lidr' files as lidris2
+ and '*.ipkg' files as ipkg filetype (Serhii Khoma)
+
+Patch 9.1.0841
+Problem: tests: still preferring python2 over python3
+Solution: Prefer Python 3 when picking a Python program in MNV tests,
+ by checking for the more specific python version first and
+ only when python3 not found, check for the python binary
+ (Yee Cheng Chin).
+
+Patch 9.1.0842
+Problem: not checking for the sync() systemcall
+Solution: Check for sync in configure script, fix related #ifdefs
+ (Jonas Termansen).
+
+Patch 9.1.0843
+Problem: too many strlen() calls in undo.c
+Solution: Refactor code and remove strlen() calls, update test_undo.mnv
+ and close remaining open swap files (John Marriott).
+
+Patch 9.1.0844
+Problem: if_python: no way to pass local vars to python
+Solution: Add locals argument to py3eval(), pyeval() and pyxeval()
+ (Ben Jackson).
+
+Patch 9.1.0845
+Problem: mnvtutor shell script can be improved
+Solution: Further improve the mnvtutor shell script (Aliaksei Budavei).
+
+Patch 9.1.0846
+Problem: debug symbols for xxd are not cleaned in Makefile
+Solution: Remove xxd.dSYM in xxds Makefile, call xxd clean target from
+ main Makefile (Yee Cheng Chin)
+
+Patch 9.1.0847
+Problem: tests: test_popupwin fails because of updated main help file
+Solution: Normalize Last Change header in test_popup_setbuf screendumps
+
+Patch 9.1.0848
+Problem: if_lua: v:false/v:true are not evaluated to boolean
+Solution: Use lua_pushboolean() instead of lua_pushinteger() (zeertzjq).
+
+Patch 9.1.0849
+Problem: there are a few typos in the source.
+Solution: Correct typos (zeertzjq).
+
+Patch 9.1.0850
+Problem: MNV9: cannot access nested object inside objects
+ (lifepillar, 91khr, mawkish)
+Solution: Add support for accessing an object member using a "any"
+ variable type (Yegappan Lakshmanan).
+
+Patch 9.1.0851
+Problem: too many strlen() calls in getchar.c
+Solution: Refactor code and reduce strlen() calls (John Marriott).
+
+Patch 9.1.0852
+Problem: No warning when X11 registers are not available (delvh)
+Solution: Output W23 once when connection to X11 clipboard/selection
+ is not possible, mention in the documentation, that register 0
+ will be used instead.
+
+Patch 9.1.0853
+Problem: filetype: kubernetes config file not recognized
+Solution: Detect '/.kube/config' file as yaml filetype (Jonathan Lopez).
+
+Patch 9.1.0854
+Problem: cannot get terminal cell size
+Solution: Add getcellpixels() function to return xpixel * ypixel
+ cell size on terminal Unix (mikoto2000).
+
+Patch 9.1.0855
+Problem: setting 'cmdheight' may cause hit-enter-prompt and echo output
+ to be missing
+Solution: Before cleaning the cmdline, check the need_wait_return flag
+ (nwounkn).
+
+Patch 9.1.0856
+Problem: mouseshape might be wrong on r and gr
+Solution: Call update_mousesape(-1) immediately (Yee Cheng Chin).
+
+Patch 9.1.0857
+Problem: xxd: --- is incorrectly recognized as end-of-options
+Solution: improve xxds end-of-option parser (DungSaga).
+
+Patch 9.1.0858
+Problem: Coverity complains about dead code (after v9.1.0852)
+Solution: adjust #ifdef FEAT_CLIPBOARD.
+
+Patch 9.1.0859
+Problem: several problems with the GLVS plugin
+Solution: fix issues, add regression tests, require at least MNV 9.1
+ (GuyBrush)
+
+Patch 9.1.0860
+Problem: tests: mouse_shape tests use hard code sleep value (Bram Moolenaar)
+Solution: Use WaitForAssert() instead (Yee Cheng Chin).
+
+Patch 9.1.0861
+Problem: MNV9: no runtime check for object member access of any var
+ (after: 9.1.0850)
+Solution: Add runtime type compatibility check for object member
+ accessed using a any variable (Yegappan Lakshmanan).
+
+Patch 9.1.0862
+Problem: 'wildmenu' not enabled by default in nocp mode
+Solution: Promote the default MNV value to true, it has been enabled
+ in defaults.mnv anyhow, so remove it there (Luca Saccarola).
+
+Patch 9.1.0863
+Problem: getcellpixels() can be further improved
+Solution: Improve it further, add more tests (mikoto2000).
+
+Patch 9.1.0864
+Problem: message history is fixed to 200
+Solution: Add the 'msghistory' option, increase the default value to 500
+ (Shougo Matsushita).
+
+Patch 9.1.0865
+Problem: filetype: org files are not recognized
+Solution: Detect '*.org' files as 'org' filetype,
+ include filetype and syntax plugin (Luca Saccarola).
+
+Patch 9.1.0866
+Problem: filetype: LLVM IR files are not recognized
+Solution: Detect '*.ll' files either as lifelines or llvm filetype
+ (Wu, Zhenyu).
+
+Patch 9.1.0867
+Problem: ins_compl_add() has too many args
+Solution: Refactor it and use an int array instead of 2 separate int
+ args (glepnir).
+
+Patch 9.1.0868
+Problem: the warning about missing clipboard can be improved
+ (after v9.1.0852)
+Solution: Use different warnings depending on whether or not clipboard
+ support is included in MNV, update related documentation
+
+Patch 9.1.0869
+Problem: curswant not set on gm in folded line (citizenmatt)
+Solution: In a folded line, call update_curswant_force().
+
+Patch 9.1.0870
+Problem: too many strlen() calls in eval.c
+Solution: Refactor eval.c to remove calls to STRLEN() (John Marriott).
+
+Patch 9.1.0871
+Problem: getcellpixels() can be further improved
+Solution: Fix floating point exception, implement getcellpixels() in the
+ UI (mikoto2000).
+
+Patch 9.1.0872
+Problem: No test for W23 message (after v9.1.0868)
+Solution: Check for W23 message when accessing the clipboard fails.
+
+Patch 9.1.0873
+Problem: filetype: Vivado files are not recognized
+Solution: Detect '*.mss' files as 'mss' filetype (Wu, Zhenyu).
+
+Patch 9.1.0874
+Problem: filetype: karel files are not detected
+Solution: Detect '*.kl' files as karel filetype, include syntax and filetype
+ plugin (Kirill Morozov).
+
+Patch 9.1.0875
+Problem: filetype: hyprlang detection can be improved
+Solution: Detect '/hypr/*.conf' files as hyprlang filetype,
+ include basic syntax highlighting (Luca Saccarola).
+
+Patch 9.1.0876
+Problem: filetype: openCL files are not recognized
+Solution: Detect '*.cl' files as opencl or lisp filetype,
+ include a opencl syntax and filetype plugin (Wu, Zhenyu).
+
+Patch 9.1.0877
+Problem: tests: missing test for termdebug + decimal signs
+Solution: Add a termdebug test (Ubaldo Tiberi).
+
+Patch 9.1.0878
+Problem: termdebug: cannot enable DEBUG mode
+Solution: Allow to specify DEBUG mode (Ubaldo Tiberi).
+
+Patch 9.1.0879
+Problem: source is not consistently formatted
+Solution: Reformat sign.c and sound.c (Luca Saccarola).
+
+Patch 9.1.0880
+Problem: filetype: C3 files are not recognized
+Solution: Detect '*.c3*' files as c3 filetype (Turiiya).
+
+Patch 9.1.0881
+Problem: GUI: message dialog may not get focus
+Solution: Add window manager hint to give focus to the dialog (Chris White).
+
+Patch 9.1.0882
+Problem: too many strlen() calls in insexpand.c
+Solution: Refactor insexpand.c and reduce number of calls to STRLEN(),
+ fix a warning get_next_filename_completion(), add new function
+ ins_compl_leader_len() (John Marriott).
+
+Patch 9.1.0883
+Problem: message history cleanup is missing some tests
+Solution: Add tests, refactor common code into did_set_msghistory()
+ (Shougo Matsushita).
+
+Patch 9.1.0884
+Problem: gcc warns about uninitialized variable in mnv_strnicmp_asc()
+Solution: Initialize variable to 1 (John Marriott).
+
+Patch 9.1.0885
+Problem: style of sign.c can be improved
+Solution: Refactor code (Luca Saccarola).
+
+Patch 9.1.0886
+Problem: filetype: debian control file not detected
+Solution: Detect 'debian/control' files as debcontrol filetype.
+
+Patch 9.1.0887
+Problem: Wrong expression in sign.c (after v9.1.0885)
+Solution: Remove the duplicate expression.
+
+Patch 9.1.0888
+Problem: leftcol property not available in getwininfo()
+Solution: Add leftcol property property (glepnir).
+
+Patch 9.1.0889
+Problem: Possible unnecessary redraw after adding/deleting lines.
+Solution: Check b_mod_set before using b_mod_xlines to avoid using stale
+ b_mod_xlines value (zeertzjq).
+
+Patch 9.1.0890
+Problem: %! item not allowed for 'rulerformat' (yatinlala)
+Solution: Also allow to use %! for rulerformat option
+ (Yegappan Lakshmanan).
+
+Patch 9.1.0891
+Problem: building the completion list array is inefficient
+Solution: Refactor and improve ins_compl_build_pum() func (glepnir).
+
+Patch 9.1.0892
+Problem: the max value of 'tabheight' is limited by other tabpages
+Solution: Limit the maximum value of 'cmdheight' to the current tabpage only.
+ (Milly)
+
+Patch 9.1.0893
+Problem: No test that undofile format does not regress
+Solution: Include a sample undofile to make sure we are always able to
+ read it.
+
+Patch 9.1.0894
+Problem: No test for what the spotbug compiler parses
+Solution: Test &makeprg for the SpotBugs compiler plugin (Aliaksei Budavei).
+
+Patch 9.1.0895
+Problem: default history value is too small
+Solution: Promote the change from defaults.mnv back to the C core, so increase
+ the default 'history' option value from 50 to 200 (Lucca Saccarola)
+
+Patch 9.1.0896
+Problem: completion list wrong after v9.1.0891
+Solution: Update compl_mach_array after leader change (glepnir).
+
+Patch 9.1.0897
+Problem: filetype: pyrex files are not detected
+Solution: Detect '*.pxi' and '*.pyx+' as pyrex filetype (user202729).
+
+Patch 9.1.0898
+Problem: runtime(compiler): pytest compiler not included
+Solution: Include pytest compiler, update the compiler completion test
+ (Konfekt).
+
+Patch 9.1.0899
+Problem: default for 'backspace' can be set in C code
+Solution: Promote the default for 'backspace' from defaults.mnv to the C
+ code (Luca Saccarola).
+
+Patch 9.1.0900
+Problem: MNV9: digraph_getlist() does not accept bool argument (Maxim Kim)
+Solution: Accept boolean as first argument (Yegappan Lakshmanan).
+
+Patch 9.1.0901
+Problem: MS-Windows: mnvtutor batch script can be improved
+Solution: Update mnvtutor.bat, validate languages using Powershell
+ cultureinfo (RestorerZ).
+
+Patch 9.1.0902
+Problem: filetype: Conda configuration files are not recognized
+Solution: Detect '.condarc' and 'condarc' files as yaml filetype (zeertzjq).
+
+Patch 9.1.0903
+Problem: potential overflow in spell_soundfold_wsal()
+Solution: Protect wres from buffer overflow, by checking the length
+ (Zdenek Dohnal)
+
+Patch 9.1.0904
+Problem: MNV9: copy-paste error in class_defining_member()
+Solution: Use variable type VAR_CLASS instead (Zdenek Dohnal).
+
+Patch 9.1.0905
+Problem: Missing information in CompleteDone event
+Solution: Add complete_word and complete_type to v:event dict (glepnir).
+
+Patch 9.1.0906
+Problem: filetype: Nvidia PTX files are not recognized
+Solution: Detect '*.ptx' files as ptx filetype (Yinzuo Jiang).
+
+Patch 9.1.0907
+Problem: printoptions:portrait does not change postscript Orientation
+Solution: Set Orientation depending on portrait suboption.
+
+Patch 9.1.0908
+Problem: not possible to configure :messages
+Solution: Add the 'messagesopt' option (Shougo Matsushita).
+
+Patch 9.1.0909
+Problem: MNV9: crash when calling instance method (Igbanam Ogbuluijah)
+Solution: Pass the object when calling a partial function
+ (Yegappan Lakshmanan).
+
+Patch 9.1.0910
+Problem: 'messagesopt' does not check max wait time (after v9.1.0908)
+Solution: Check for max wait value (Shougo Matsushita).
+
+Patch 9.1.0911
+Problem: Variable name for 'messagesopt' doesn't match short name
+ (after v9.1.0908)
+Solution: Change p_meo to p_mopt. Add more details to docs (zeertzjq).
+
+Patch 9.1.0912
+Problem: xxd: integer overflow with sparse files and -autoskip
+Solution: Reset zero_seen when at the limit, change the type to char
+ (sendittothenewts).
+
+Patch 9.1.0913
+Problem: no error check for neg values for 'messagesopt' (after v9.1.0908).
+Solution: Add additional error checks and tests (h-east).
+
+Patch 9.1.0914
+Problem: MNV9: compile_assignment() is too long
+Solution: Refactor compile_assignment() into smaller functions
+ (Yegappan Lakshmanan)
+
+Patch 9.1.0915
+Problem: GMNV: default font size a bit too small
+Solution: Increase guifont size to 12 pt on GTK builds of gMNV (matveyt).
+
+Patch 9.1.0916
+Problem: messages.c is exceeding 80 columns
+Solution: Slightly reformat messages.c (h-east).
+
+Patch 9.1.0917
+Problem: various vartabstop and shiftround bugs when shifting lines
+Solution: Fix the bugs, add new tests for shifting lines in various ways
+ (Gary Johnson).
+
+Patch 9.1.0918
+Problem: tiny MNV crashes with fuzzy buffer completion
+Solution: Adjust #ifdefs in ExpandBufnames() (826814741_6).
+
+Patch 9.1.0919
+Problem: filetype: some assembler are files not recognized
+Solution: Detect '*.nasm' files as nasm filetype and '*.masm' as masm
+ filetype (Wu, Zhenyu).
+
+Patch 9.1.0920
+Problem: MNV9: compile_assignment() too long
+Solution: Refactor compile_assignment() function and split up into
+ smaller parts (Yegappan Lakshmanan).
+
+Patch 9.1.0921
+Problem: popupmenu logic is a bit convoluted
+Solution: Slightly refactor logic and use MIN/MAX() macros to simplify
+ (glepnir).
+
+Patch 9.1.0923
+Problem: wrong MIN macro in popupmenu.c (after v9.1.0921) (zeertzjq)
+Solution: Change it to MAX().
+
+Patch 9.1.0923
+Problem: too many strlen() calls in filepath.c
+Solution: Refactor filepath.c and remove calls to STRLEN(), unify
+ dos_expandpath() and unix_expandpath() into a single function.
+
+Patch 9.1.0924
+Problem: Patch 9.1.0923 causes issues (Shane-XB-Qian)
+Solution: Back-out the change.
+
+Patch 9.1.0925
+Problem: MNV9: expression compiled when not necessary
+Solution: Do not compile when ctx_skip is set, add a few more
+ MNV9 expressions tests (Yegappan Lakshmanan).
+
+Patch 9.1.0926
+Problem: filetype: Pixi lock files are not recognized
+Solution: Detect "pixi.lock" file as yaml filetype (Brandon Maier).
+
+Patch 9.1.0927
+Problem: style issues in insexpand.c
+Solution: Add braces, use ternary operator to improve style (glepnir).
+
+Patch 9.1.0928
+Problem: tests: test_popupwin fails because the filter command fails
+Solution: Add the "e" flag to the :s command to normalize the
+ screendumps Last Change header so that it doesn't fail on
+ "Pattern not found"
+
+Patch 9.1.0929
+Problem: filetype: lalrpop files are not recognized
+Solution: Detect '*.lalrpop' files as lalrpop filetype (David Thievon)
+
+Patch 9.1.0930
+Problem: tests: test_terminal2 may hang in GUI mode
+Solution: Break the loop in gui_mch_update() after at most 99 iterations
+ (h-east).
+
+Patch 9.1.0931
+Problem: ml_get error in terminal buffer (user202729)
+Solution: Call update_topline() in win_enter_ext() for terminal buffers
+ (h-east).
+
+Patch 9.1.0932
+Problem: new Italian tutor not installed
+Solution: Add Makefile rule, include it into the Filelist
+ ("Philip H." <47042125+pheiduck@users.noreply.github.com>).
+
+Patch 9.1.0933
+Problem: MNV9: mnv9compile.c can be further improved
+Solution: Further refactor the compile assignment code
+ (Yegappan Lakshmanan).
+
+Patch 9.1.0934
+Problem: hard to view an existing buffer in the preview window
+Solution: Add the :pbuffer command (Yinzuo Jiang).
+
+Patch 9.1.0935
+Problem: SpotBugs compiler can be improved
+Solution: runtime(compiler): Improve defaults and error handling for
+ SpotBugs; update test_compiler.mnv (Aliaksei Budavei).
+
+Patch 9.1.0936
+Problem: cannot highlight completed text
+Solution: (optionally) highlight auto-completed text using the
+ ComplMatchIns highlight group (glepnir).
+
+Patch 9.1.0937
+Problem: test_undolist() is flaky
+Solution: Allow to match one additional optional whitespace char.
+
+Patch 9.1.0938
+Problem: exclusive selection not respected when re-selecting block mode
+ (Matt Ellis)
+Solution: Advance selection by another character when using
+ selection=exclusive and visual block mode
+
+Patch 9.1.0939
+Problem: make installtutor fails
+ (Antonio Giovanni Colombo, after v9.1.0932)
+Solution: Fix Makefile rule.
+
+Patch 9.1.0940
+Problem: Wrong cursor shape with "gq" and 'indentexpr' executes :normal
+Solution: Update cursor and mouse shape after restoring old_State (zeertzjq).
+
+Patch 9.1.0941
+Problem: ComplMatchIns doesn't work after multibyte chars (after v9.1.0936).
+Solution: Use (ptr - line) instead of wlv.col (zeertzjq).
+
+Patch 9.1.0942
+Problem: a few typos were found
+Solution: fix them (zeertzjq).
+
+Patch 9.1.0943
+Problem: mnv9compile.c can be further improved
+Solution: Refactor the compile_lhs function (Yegappan Lakshmanan).
+
+Patch 9.1.0944
+Problem: tests: test_registers fails when not run under X11
+Solution: filter out warning message.
+
+Patch 9.1.0945
+Problem: ComplMatchIns highlight doesn't end after inserted text.
+Solution: Handle ComplMatchIns highlight more like search highlight.
+ Fix off-by-one error. Handle deleting text properly (zeertzjq).
+
+Patch 9.1.0946
+Problem: cross-compiling fails on osx-arm64
+Solution: use mnv_cv_timer_create_with_lrt() instead of
+ mnv_cv_timer_create_works() (Brandon Maier).
+
+Patch 9.1.0947
+Problem: Coverity comlains about un-initialized var (after v9.1.0943).
+Solution: Initialize variable (Yegappan Lakshmanan).
+
+Patch 9.1.0948
+Problem: Missing cmdline completion for :pbuffer.
+Solution: Add cmdline completion for :pbuffer like :buffer (zeertzjq).
+
+Patch 9.1.0949
+Problem: popups inconsistently shifted to the left
+Solution: Always shift non-fixed popups to the left when the
+ text would be truncated (Boris Staletic).
+
+Patch 9.1.0950
+Problem: filetype: fennelrc files are not recognized
+Solution: Detect 'fennelrc' files as fennel filetype (Wu Zhenyu).
+
+Patch 9.1.0951
+Problem: filetype: jshell files are not recognized
+Solution: Detect '*.jsh' files as java filetype (Konfekt).
+
+Patch 9.1.0952
+Problem: MNV9: missing type checking for any type assignment (Ernie Rael)
+Solution: When assigning to a list item, if the type of the LHS item is
+ any, then use the list item type (Yegappan Lakshmanan).
+
+Patch 9.1.0953
+Problem: filetype: APKBUILD files not correctly detected
+Solution: Detect 'APKBUILD' files as apkbuild filetype,
+ include a apkbuild syntax script (which basically
+ just sources the sh.mnv syntax file) (Hugo Osvaldo Barrera).
+
+Patch 9.1.0954
+Problem: popupmenu.c can be improved
+Solution: Slightly refactor the logic (glepnir).
+
+Patch 9.1.0955
+Problem: MNV9: mnv9compile.c can be further improved
+Solution: Refactor the compile_def_function (Yegappan Lakshmanan).
+
+Patch 9.1.0956
+Problem: completion may crash, completion highlight wrong with preview
+ window (after v9.1.0954)
+Solution: Correctly calculate scroll offset, check for preview window
+ when adding extra highlighting (glepnir).
+
+Patch 9.1.0957
+Problem: MS-Windows: conversion warnings
+Solution: Add explicit type casts (Yegappan Lakshmanan).
+
+Patch 9.1.0958
+Problem: filetype: supertux2 config files detected as lisp
+Solution: Detect supertux2 config files as scheme instead (Wu, Zhenyu).
+
+Patch 9.1.0959
+Problem: Coverity complains about type conversion (after v9.1.0957)
+Solution: Use size_t instead of int for file length (Yegappan Lakshmanan).
+
+Patch 9.1.0960
+Problem: filetype: hy history files are not recognized
+Solution: Detect '*.hy', '.hy-history' files as hy filetype,
+ detect '.lips_repl_history' files are scheme filetype (Wu, Zhenyu).
+
+Patch 9.1.0961
+Problem: filetype: TI gel files are not recognized
+Solution: Detect '*.gel' files as gel filetype, include get filetype and
+ syntax plugins (Wu, Zhenyu).
+
+Patch 9.1.0962
+Problem: filetype: bun.lock file is not recognized
+Solution: Detect 'bun.lock' file as jsonc filetype (Anton Kastritskii).
+
+Patch 9.1.0963
+Problem: fuzzy-matching does not prefer full match (Maxim Kim)
+Solution: Add additional score for a full match (glepnir).
+
+Patch 9.1.0964
+Problem: MS-Windows: sed error with MinGW
+Solution: Use double quotes for sed, update compilation notes
+ (Andrey A Voropaev)
+
+Patch 9.1.0965
+Problem: filetype: sh filetype set when detecting the use of bash
+Solution: When bash is detected, use 'bash' filetype instead (Luca Saccarola).
+
+Patch 9.1.0966
+Problem: MNV9: :enum command can be shortened
+Solution: Prevent shortening of :enum command by adding the EX_WHOLE
+ flag to command definition (h-east).
+
+Patch 9.1.0967
+Problem: SpotBugs compiler can be further improved
+Solution: Introduce event-driven primitives for SpotBugs (Aliaksei Budavei).
+
+Patch 9.1.0968
+Problem: tests: GetFileNameChecks() isn't fully sorted by filetype name
+Solution: Re-sort the list.
+
+Patch 9.1.0969
+Problem: ghostty not using kitty protocol by default (00-kat)
+Solution: Update keyprotocol option default and include ghostty.
+
+Patch 9.1.0970
+Problem: VMS: build errors on VMS architecture
+Solution: Define cellsize struct, use C89 to initialize lval_root_S
+ struct (Zoltan Arpadffy)
+
+Patch 9.1.0971
+Problem: filetype: SLNX files are not recognized
+Solution: Detect '*.slnx' files as xml filetype (Gustav Eikaas).
+
+Patch 9.1.0972
+Problem: filetype: TI linker map files are not recognized
+Solution: Detect TI linker map files as lnkmap filetype (Wu, Zhenyu).
+
+Patch 9.1.0973
+Problem: too many strlen() calls in fileio.c
+Solution: Refactor fileio.c and remove calls to STRLEN(),
+ check for out-of-memory condition in buf_check_timestamp()
+ (John Marriott).
+
+Patch 9.1.0974
+Problem: typo in change of (Christ van Willegen)
+Solution: Add back the square brackets (John Marriott).
+
+Patch 9.1.0975
+Problem: MNV9: interpolated string expr not working in object methods
+ (Igbanam Ogbuluijah)
+Solution: Check the evalarg argument (Yegappan Lakshmanan).
+
+Patch 9.1.0976
+Problem: MNV9: missing return statement with throw (atitcreate)
+Solution: Treat a throw statement at the end of an if-else block as a
+ return statement (Yegappan Lakshmanan).
+
+Patch 9.1.0977
+Problem: filetype: msbuild filetypes are not recognized
+Solution: Detect msbuild files as xml filetype (Gustav Eikaas).
+
+Patch 9.1.0978
+Problem: GUI tests sometimes fail when setting 'scroll' options
+Solution: Decrease the 'scroll' and 'scrolljump' option value from 20 to
+ 15, in case the Gui window is not large enough to handle 20.
+
+Patch 9.1.0979
+Problem: VMS: type warning with $XDG_MNVRC_FILE (Zoltan Arpadffy)
+Solution: Add explicit (char_u *) type cast to mch_getenv() call.
+
+Patch 9.1.0980
+Problem: no support for base64 en-/decoding functions in MNV Script
+ (networkhermit)
+Solution: Add the base64_encode() and base64_decode() functions
+ (Yegappan Lakshmanan).
+
+Patch 9.1.0981
+Problem: tests: typo in test_filetype.mnv
+Solution: fix comment, update lnkmap syntax file and add DESCT keyword
+ (Wu, Zhenyu).
+
+Patch 9.1.0982
+Problem: TI linker files are not recognized
+Solution: Inspect '*.cmd' files and detect TI linker files as 'lnk' filetype,
+ include a lnk ftplugin and syntax script (Wu, Zhenyu).
+
+Patch 9.1.0983
+Problem: not able to get the displayed items in complete_info()
+ (Evgeni Chasnovski)
+Solution: Return the visible items via the "matches" key for
+ complete_info() (glepnir).
+
+Patch 9.1.0984
+Problem: exception handling can be improved
+Solution: Add v:stacktrace and getstacktrace().
+
+Patch 9.1.0985
+Problem: MNV9: some ex commands can be shortened
+Solution: Disallow shortening of :abstract, :interface and :type (h-east).
+
+Patch 9.1.0986
+Problem: filetype: 'jj' filetype is a bit imprecise
+Solution: rename 'jj' filetype to 'jjdescription' (Gregory Anders).
+
+Patch 9.1.0987
+Problem: filetype: cake files are not recognized
+Solution: Detect '*.cake' files as cs filetype (Zoe Roux).
+
+Patch 9.1.0988
+Problem: MNV9: no error when using uninitialized var in new()
+ (lifepillar, Aliaksei Budavei)
+Solution: Give an error if an uninitialized object variable is referenced
+ in new() (Yegappan Lakshmanan).
+
+Patch 9.1.0989
+Problem: MNV9: Whitespace after the final enum value causes a syntax
+ error
+Solution: Fix parsing to allow whitespace after the final enum value.
+ (Doug Kearns)
+
+Patch 9.1.0990
+Problem: Inconsistent behavior when changing cmdheight by resizing the
+ topframe through wincmds and dragging laststatus. Changing
+ cmdheight by resizing the topframe does not trigger OptionSet.
+Solution: Consolidate logic for changing the cmdheight, set the option
+ value to handle side-effects (Luuk van Baal).
+
+Patch 9.1.0991
+Problem: v:stacktrace has wrong type in MNV9 script.
+Solution: Change the type to t_list_dict_any. Fix grammar in docs (zeertzjq).
+
+Patch 9.1.0992
+Problem: MNV9: double-free after v9.1.0988 (h-east)
+Solution: Clear typval pointer, before setting the type
+ (Yegappan Lakshmanan)
+
+Patch 9.1.0993
+Problem: Although Patch 9.1.0990 fixed a real problem/inconsistency,
+ it also introduced new behavior that may break BWC and/or be
+ unexpected. Before 9.1.0990, window commands could make the
+ topframe smaller (without changing 'cmdheight'; quirk that is
+ now fixed), but did not allow extending the topframe beyond
+ the 'cmdheight' set by the user. After 9.1.0990, the user can
+ reduce the 'cmdheight' below the value they set explicitly,
+ through window commands, which may lead to confusion.
+ (aftere v9.1.0990)
+Solution: Store the value explicitly set by the user and clamp the
+ 'cmdheight' when resizing the topframe. This also applies to
+ dragging laststatus, which in contrast to window commands
+ _did_ allow reducing the 'cmdheight' to values below the one
+ set by the user. So with this Patch there is still new
+ behavior, but I think in a way that is less surprising.
+ While at it, also fix a Coverity warning, introduced in
+ v9.1.0990 (Luuk van Baal).
+
+Patch 9.1.0994
+Problem: MNV9: not able to use comment after opening curly brace
+ (lifepillar)
+Solution: Allow to use comments after curly braces of an inner-block,
+ modify the logic to search for comment in a line, update MNV9
+ tests to use specific class type instead of any
+ (Yegappan Lakshmanan).
+
+Patch 9.1.0995
+Problem: filetype: shaderslang files are not detected
+Solution: Detect '*.slang' files as shaderslang filetype,
+ include a filetype and syntax script (mtvare6)
+
+Patch 9.1.0996
+Problem: ComplMatchIns may highlight wrong text
+Solution: Don't highlight in case of fuzzy match,
+ skip-highlight when not inserting anything (glepnir).
+
+Patch 9.1.0997
+Problem: too many strlen() calls in drawscreen.c
+Solution: Refactor drawscreen.c and remove calls to strlen(),
+ make get_keymap_str() (in screen.c) return string length
+ instead of TRUE/FALSE (John Marriott).
+
+Patch 9.1.0998
+Problem: filetype: TI assembly files are not recognized
+Solution: Inspect '*.sa' and assembly files and detect TI assembly
+ files, include filetype plugin and syntax script for TI
+ assembly files (Wu, Zhenyu).
+
+Patch 9.1.0999
+Problem: leaking finished exception (after v9.1.0984)
+Solution: Use finish_exception to clean up caught exceptions
+ (Yee Cheng Chin)
+
+Patch 9.1.1000
+Problem: tests: ruby tests fail with Ruby 3.4
+Solution: Adjust expected output for Ruby 3.4 (Yee Cheng Chin)
+
+Patch 9.1.1001
+Problem: ComplMatchIns highlight hard to read on light background
+ (after v9.1.0996)
+Solution: Define the highlighting group cleared, it should be configured in
+ colorschemes separately (glepnir).
+
+Patch 9.1.1002
+Problem: MNV9: unknown function error with interface declaring a
+ function variable (lifepillar)
+Solution: Use correct instruction for getting interface member variables
+ (Yegappan Lakshmanan)
+
+Patch 9.1.1003
+Problem: [security]: heap-buffer-overflow with visual mode when
+ using :all, causing MNV trying to access beyond end-of-line
+ (gandalf)
+Solution: Reset visual mode on :all, validate position in gchar_pos()
+ and charwise_block_prep().
+
+Patch 9.1.1004
+Problem: tests: a few termdebug tests are flaky; test_termdebug_basic()
+ and test_termdebug_config_types() may fail if there is too
+ much load
+Solution: Set g:test_is_flaky.
+
+Patch 9.1.1005
+Problem: completion text is highlighted even with no pattern found
+Solution: use ins_compl_leader_len() instead of checking
+ compl_leader.length (glepnir).
+
+Patch 9.1.1006
+Problem: PmenuMatch completion highlight can be combined
+Solution: Combine highlight groups PmenuMatch with Pmenu and
+ PmenuMatchSel with PmenuSel (glepnir).
+
+Patch 9.1.1007
+Problem: filetype: various ignore are not recognized
+Solution: Detect rg/docker/npm/vvsce ignore files as 'gitgnore' filetype
+ (Wu, Zhenyu).
+
+Patch 9.1.1008
+Problem: tests: test for Patch 9.1.1006 doesn't fail without the patch
+ (after v9.1.1006)
+Solution: Add ctermbg=NONE to the highlight groups (zeertzjq).
+
+Patch 9.1.1009
+Problem: diff feature can be improved
+Solution: Include the linematch diff alignment algorithm (Jonathon).
+
+Patch 9.1.1010
+Problem: filetype: VisualCode setting file not recognized
+Solution: Detect json files in VSCode config directory as jsonc filetype
+ (Konfekt).
+
+Patch 9.1.1011
+Problem: Popup menu internal error with some abbr in completion item.
+Solution: Don't compute attributes when there is no corresponding text.
+ Reduce indent in pum_redraw() while at it (zeertzjq).
+
+Patch 9.1.1012
+Problem: MNV9: class interface inheritance not correctly working
+Solution: Make the class inherit the interfaces of the super class.
+
+Patch 9.1.1013
+Problem: MNV9: Regression caused by Patch v9.1.0646
+Solution: Translate the function name before invoking it in call()
+ (Yegappan Lakshmanan).
+
+Patch 9.1.1014
+Problem: MNV9: variable not found in transitive import
+Solution: Allow nested import (Hirohito Higashi).
+
+Patch 9.1.1015
+Problem: Coverity complains about dereferencing NULL value
+Solution: Check that cms2 is not null.
+
+Patch 9.1.1016
+Problem: Not possible to convert string2blob and blob2string
+Solution: Add support for the blob2str() and str2blob() functions.
+
+Patch 9.1.1017
+Problem: MNV9: Patch 9.1.1013 causes a few problems
+Solution: Translate the function name only when it is a string
+ (Yegappan Lakshmanan).
+
+Patch 9.1.1018
+Problem: v9.1.0743 causes regression with diff mode
+Solution: Fix the regression with overlapping regions.
+
+Patch 9.1.1019
+Problem: filetype: fd ignore files are not recognized
+Solution: Detect .fdignore files as gitignore filetype.
+
+Patch 9.1.1020
+Problem: no way to get current selected item in a async context
+Solution: Add completed flag to show the entries of currently selected
+ index item (@glepnir).
+
+Patch 9.1.1021
+Problem: string might be used without a trailing NUL (after v9.1.0997)
+Solution: Make sure that the buffer is NUL terminated.
+
+Patch 9.1.1022
+Problem: linematch option value not completed (after v9.1.1009)
+Solution: Update diffoption completion values.
+
+Patch 9.1.1023
+Problem: Coverity complains about dereferencing NULL pointer
+Solution: Verify curdiff is not null before dereferencing it.
+
+Patch 9.1.1024
+Problem: blob2str/str2blob() do not support list of strings (after v9.1.1016)
+Solution: Add support for using a list of strings (Yegappan Lakshmanan).
+
+Patch 9.1.1025
+Problem: wrong return type of blob2str()
+Solution: Update return to list of string (Yegappan Lakshmanan).
+
+Patch 9.1.1026
+Problem: filetype: swc configuration files are not recognized
+Solution: Detect .swcrc files as json filetype (Marces Engel).
+
+Patch 9.1.1027
+Problem: no sanitize check when running linematch
+Solution: Add sanitize check before applying the linematch algorithm,
+ similar to diff_find_change() (Jonathon).
+
+Patch 9.1.1028
+Problem: too many strlen() calls in screen.c
+Solution: Refactor screen.c and remove calls to strlen(),
+ verify that leadmultispace != NULL (John Marriott).
+
+Patch 9.1.1029
+Problem: the installer can be improved
+Solution: Update the installer with the correct README and LICENSE
+ files, improve the documentation, add a Makefile for the
+ installer, update the Makefiles (RestorerZ).
+
+Patch 9.1.1030
+Problem: filetype: setting bash filetype is backwards incompatible
+Solution: Revert Patch v9.1.0965, detect bash scripts again as sh filetype.
+
+Patch 9.1.1031
+Problem: Coverity complains about insecure data handling (v9.1.1024)
+Solution: Use int consistently to access the blob index (Yegappan Lakshmanan).
+
+Patch 9.1.1032
+Problem: link error when FEAT_SPELL not defined (after v9.1.1016,
+ John Marriott)
+Solution: Adjust ifdefs (Yegappan Lakshmanan).
+
+Patch 9.1.1033
+Problem: tests: shaderslang was removed from test_filetype erroneously
+ (Christian Clason, after v9.1.1030)
+Solution: Restore the test.
+
+Patch 9.1.1033
+Problem: MNV9: compiling abstract method fails without return
+ (Aliaksei Budavei)
+Solution: Don't require return for an abstract method (Ernie Rael).
+
+Patch 9.1.1035
+Problem: MNV9: memory leak with blob2str()
+Solution: Free converted_str (Yegappan Lakshmanan).
+
+Patch 9.1.1036
+Problem: make install fails when using shadowdir (after v9.1.1029).
+Solution: Also link in README.txt and LICENSE file.
+
+Patch 9.1.1037
+Problem: MNV9: confusing error when using abstract method via super
+Solution: Display an error when an abstract method is invoked using
+ super (Ernie Rael).
+
+Patch 9.1.1038
+Problem: tests: test_channel.py fails with IPv6 (eds-collabora)
+Solution: Use 127.0.0.1 instead of localhost.
+
+Patch 9.1.1039
+Problem: MNV9: comments are outdated
+Solution: Update comments, and include an enum example in the help
+ (Yegappan Lakshmanan).
+
+Patch 9.1.1040
+Problem: MNV9: imported type cannot be used as func return type
+ (Dayvid Albuquerque)
+Solution: Temporarily reset the is_export flag (Yegappan Lakshmanan).
+
+Patch 9.1.1041
+Problem: MNV9: out-of-bound access when echoing an enum
+Solution: Add NUL to growarray, check that ufunc is non-null before accessing
+ it to make Coverity happy (Yegappan Lakshmanan).
+
+Patch 9.1.1042
+Problem: filetype: just files are not recognized
+Solution: Adjust filetype detection pattern, detect just shebang line,
+ include just ftplugin, indent and syntax plugin (Peter Benjamin).
+
+Patch 9.1.1043
+Problem: [security]: segfault in win_line() (fizz-is-on-the-way)
+Solution: Check that ScreenLines is not NULL.
+
+Patch 9.1.1044
+Problem: MNV9: Patch 9.1.1014 causes regressions
+Solution: Revert it for now.
+
+Patch 9.1.1045
+Problem: filetype: N-Tripels and TriG files are not recognized
+Solution: Detect '*.nt' files as ntriples filetype and '*.trig' files
+ as trig filetype (Gordian Dziwis)
+
+Patch 9.1.1046
+Problem: fuzzymatching doesn't prefer matching camelcase (Tomasz N).
+Solution: Add extra score when case matches (glepnir).
+
+Patch 9.1.1047
+Problem: Makefiles uses non-portable syntax (simo-zz, after v9.1.1029)
+Solution: Revert auto-generation of MAJOR/MINOR variables.
+
+Patch 9.1.1048
+Problem: Crash after scrolling and pasting in silent Ex mode
+ (fizz-is-on-the-way)
+Solution: Don't move cursor to line 0 when scrolling (zeertzjq).
+
+Patch 9.1.1049
+Problem: Insert-completed items are always sorted, although the LSP
+ spec[1] standard defines sortText in the returned
+ completionitem list. This means that the server has sorted the
+ results. When fuzzy is enabled, this will break the server's
+ sorting results.
+Solution: Disable sorting of candidates when "nosort" is set in
+ 'completeopt'
+
+Patch 9.1.1050
+Problem: Too many strlen() calls in os_unix.c
+Solution: Refactor os_unix.c and remove calls to strlen() (John Marriott).
+
+Patch 9.1.1051
+Problem: tests: no support for env variables when running MNV in terminal
+Solution: support the "env" argument in RunMNVInTerminal(), close swapfiles
+ properly in test_termcodes, use CheckFeature in test_termencoding
+
+Patch 9.1.1052
+Problem: tests: off-by-one error in CheckCWD in test_debugger.mnv
+Solution: Fix off-by-one in CheckCWD leading to local tests failure
+ (Yee Cheng Chin)
+
+Patch 9.1.1053
+Problem: "nosort" enables fuzzy filtering even if "fuzzy" isn't in
+ 'completeopt' (after v9.1.1049)
+Solution: Only enable fuzzy filtering when "fuzzy" is in 'completeopt'
+ (zeertzjq).
+
+Patch 9.1.1054
+Problem: MNV doesn't work well with TERM=xterm-direct (Andrea Pappacoda).
+Solution: Detect if a terminal supports true-colors and enable termguicolors
+
+Patch 9.1.1055
+Problem: make install fails because of a missing dependency
+Solution: Add explicit dependencies for tutor/{en,it} (Sergei Trofimovich).
+
+Patch 9.1.1056
+Problem: MNV doesn't highlight to be inserted text when completing
+Solution: Add support for the "preinsert" 'completeopt' value (glepnir).
+
+Patch 9.1.1057
+Problem: Superfluous cleanup steps in test_ins_complete.mnv.
+Solution: Remove unnecessary :bw! and :autocmd! commands.
+ Also remove unnecessary STRLEN() in insexpand.c (zeertzjq).
+
+Patch 9.1.1058
+Problem: translation(sr): Missing Serbian translation for the tutor
+Solution: Include new Serbian translation for the new tutor,
+ include translation for chapter 2 of the traditional tutor,
+ update the Makefiles for installing the runtime files (Ivan Pešić).
+
+Patch 9.1.1059
+Problem: completion: input text deleted with preinsert when adding leader
+Solution: Remove compl_length and check the ptr for being equal
+ to pattern when preinsert is active (glepnir).
+
+Patch 9.1.1060
+Problem: MNV always enables 'termguicolors' in a terminal, even
+ when not wanted (after v9.1.1054).
+Solution: Respect `:set notermguicolors` in mnvrc file.
+
+Patch 9.1.1061
+Problem: tests: test_glvs fails when unarchiver not available
+ (Brian L. Matthews)
+Solution: Check if an unarchiver is available, skip the test otherwise.
+
+Patch 9.1.1062
+Problem: terminal: E315 when dragging the terminal with the mouse
+ (user202729)
+Solution: Call update_topline() and validate_cursor() when clicking
+ on the status line with the mouse (Hirohito Higashi).
+
+Patch 9.1.1063
+Problem: too many strlen() calls in userfunc.c
+Solution: Refactor userfunc.c and remove calls to strlen(),
+ drop set_ufunc_name() and roll it into alloc_ufunc(),
+ check for out-of-memory condition in trans_function_name_ext()
+ (John Marriott).
+
+Patch 9.1.1064
+Problem: not possible to use plural forms with gettext()
+Solution: Implement ngettext() MNV script function (Christ van Willegen).
+
+Patch 9.1.1065
+Problem: no digraph for "Approaches the limit"
+Solution: Add the digraph using .= (Hans Ginzel).
+
+Patch 9.1.1066
+Problem: Heap-use-after-free and stack-use-after-scope with :14verbose
+ when using :return and :try (after 9.1.1063).
+Solution: Move back the mnv_free(tofree) and the scope of numbuf[] (zeertzjq).
+
+Patch 9.1.1067
+Problem: tests: Test_termwinscroll_topline2 fails on MacOS (after v9.1.1062)
+Solution: Reduce termwinscroll further, increase term_wait time.
+
+Patch 9.1.1068
+Problem: getchar() can't distinguish between C-I and Tab.
+Solution: Add {opts} to pass extra flags to getchar() and getcharstr(),
+ with "number" and "simplify" keys.
+
+Patch 9.1.1069
+Problem: preinsert text completions not deleted with <C-W>/<C-U>
+ (ddad431, after v9.1.1059)
+Solution: Handle <C-W> or <C-U> specifically and clear the completion
+ (glepnir).
+
+Patch 9.1.1070
+Problem: Cannot control cursor positioning of getchar().
+Solution: Add "cursor" flag to {opts}, with possible values "hide",
+ "keep" and "msg".
+
+Patch 9.1.1071
+Problem: Arguments of a function are missing after failing to redefine
+ it (after 8.2.2505), and heap-use-after-free with script-local
+ function (after 9.1.1063).
+Solution: Don't clear arguments or free uf_name_exp when failing to
+ redefine an existing function (zeertzjq).
+
+Patch 9.1.1072
+Problem: 'diffopt' "linematch" cannot be used with {n} less than 10
+ digits (after v9.1.1022)
+Solution: Fix off-by-one error when checking for digit (zeertzjq).
+
+Patch 9.1.1073
+Problem: tests: test_compiler fails on Windows without Maven.
+Solution: Add Xspotbugs directory to $PATH when mvn is not available
+ (zeertzjq).
+
+Patch 9.1.1074
+Problem: Strange error when heredoc marker starts with "trim".
+Solution: Check for whitespace after "trim" or "eval" (zeertzjq).
+
+Patch 9.1.1075
+Problem: MNV9: length variable not used in compile_load()
+Solution: Use len instead of re-calculating the length (Hirohito Higashi).
+
+Patch 9.1.1076
+Problem: mnv_strnchr() is strange and unnecessary (after v9.1.1009)
+Solution: Remove mnv_strnchr() and use memchr() instead. Also remove a
+ comment referencing an #if that is no longer present.
+
+Patch 9.1.1077
+Problem: Syntax engine interpreted contains=TOP as matching nothing
+ inside included files, since :syn-include forces HL_CONTAINED
+ on for every included item. After 8.2.2761, interprets
+ contains=TOP as contains=@INCLUDED, which is also not correct
+ since it doesn't respect exclusions, and doesn't work if there
+ is no @INCLUDED cluster.
+Solution: Revert Patch 8.2.2761, instead track groups that have had
+ HL_CONTAINED forced, and interpret contains=TOP and
+ contains=CONTAINED using this (Theodore Dubois).
+
+Patch 9.1.1078
+Problem: Terminal ansi colors off by one after tgc reset
+Solution: Set the correct index for libvterm palette, revert parts in
+ libvterm/src/pen.c that deviated from upstream (Julio B)
+
+Patch 9.1.1079
+Problem: GUI late startup leads to uninitialized scrollbars
+Solution: initialize scrollbars for all windows in all tabpages
+ (Yee Cheng Chin).
+
+Patch 9.1.1080
+Problem: filetype: Mill files are not recognized
+Solution: Detect '*.mill' files as scala filetype.
+
+Patch 9.1.1081
+Problem: has('bsd') is true for GNU/Hurd
+Solution: Exclude GNU/Hurd from BSD feature flag (Zhaoming Luo).
+
+Patch 9.1.1082
+Problem: unexpected DCS responses may cause out of bounds reads
+ (after v9.1.1054)
+Solution: Check that the parsed value is '=' as expected (Julio B).
+
+Patch 9.1.1083
+Problem: setreg() doesn't correctly handle mbyte chars in blockwise mode
+Solution: Use mb_ptr2len_len function pointer (Yee Cheng Chin).
+
+Patch 9.1.1084
+Problem: Unable to persistently ignore events in a window and its buffers.
+Solution: Add 'eventignorewin' option to ignore events in a window and buffer
+ (Luuk van Baal).
+
+Patch 9.1.1085
+Problem: filetype: cmmt files are not recognized
+Solution: Detect '*.cmmt' as trace32 filetype (Christian Sax).
+
+Patch 9.1.1086
+Problem: completion doesn't work with multi lines (Łukasz Jan Niemier)
+Solution: Handle linebreaks in completion code as expected (glepnir).
+
+Patch 9.1.1087
+Problem: MNV9: import with extends may crash
+Solution: Check otv for being NULL before trying to access it
+ (Hirohito Higashi).
+
+Patch 9.1.1088
+Problem: tests: plugin tests are named inconsistently
+Solution: Group them under a common 'plugin' prefix.
+
+Patch 9.1.1089
+Problem: tests: No check when tests are run under Github actions
+Solution: Add the CheckGithubActions check command and skip test if needed.
+
+Patch 9.1.1090
+Problem: tests: test_terminwscroll_topline2 unreliable
+Solution: Instead of using term_wait() with a specific time, use
+ terminal-api and to wait until the terminal is finished
+ (Yee Cheng Chin).
+
+Patch 9.1.1091
+Problem: tests: timeout might be a bit too small
+Solution: Increase the test timeout from 30 to 45 seconds
+
+Patch 9.1.1092
+Problem: tests: fix expected return code for python 3.13 on Windows
+Solution: Check for return code 1 or 123 on Windows.
+
+Patch 9.1.1093
+Problem: tests: output of test Test_terminal_eof_arg_win32_ctrl_z depends on
+ python version.
+Solution: Check for the expected output in both, the second last line
+ and last line.
+
+Patch 9.1.1094
+Problem: MNV9: problem finding implemented method for abstract method
+ in type hierarchy (Aliaksei Budavei)
+Solution: When checking for abstract methods in an extended class, check
+ whether an abstract method is implemented in one of the parent
+ classes (Yegappan Lakshmanan).
+
+Patch 9.1.1095
+Problem: tests: matchparen plugin test wrongly named (zeertzjq)
+Solution: Rename test_matchparen to test_plugin_matchparen
+ to be consistent with the other plugin tests.
+
+Patch 9.1.1096
+Problem: if_perl: Perl 5.38 adds new symbols causing link failure
+Solution: add stub symbols (Drew Vogel).
+
+Patch 9.1.1097
+Problem: --log with non-existent path causes a crash (Ekkosun)
+Solution: Split initialization phase and init the execution stack
+ earlier (Hirohito Higashi)
+
+Patch 9.1.1098
+Problem: Leaking memory with completing multi lines (after v9.1.1086)
+Solution: Free allocated memory (glepnir).
+
+Patch 9.1.1099
+Problem: MNV9: import with extends may crash, v9.1.1087 wasn't the
+ correct way to fix it).
+Solution: When using an import class, Check for a valid class member
+ variable at compile time (Yegappan Lakshmanan).
+
+Patch 9.1.1100
+Problem: tests: Test_log_nonexistent only works on Linux
+ (after v9.1.1097)
+Solution: Add CheckUnix condition.
+
+Patch 9.1.1101
+Problem: insexpand.c hard to read
+Solution: Refactor slightly to make it better readable (glepnir).
+
+Patch 9.1.1102
+Problem: tests: Test_WinScrolled_Resized_eiw() uses wrong filename
+ (Luuk van Baal, after v9.1.1084)
+Solution: Rename the filename to something more unique.
+
+Patch 9.1.1103
+Problem: if_perl: still some compile errors with Perl 5.38
+Solution: Copy declaration of PL_memory_wrap from Perl header (Drew Vogel).
+
+Patch 9.1.1104
+Problem: CI: uses Ubuntu 22.04 runners
+Solution: Switch to Ubuntu 24.04 runners, make a few adjustments for
+ different $TMPDIR (Drew Vogel).
+
+Patch 9.1.1105
+Problem: MNV9: no support for protected new() method
+Solution: Support the protected "_new()" object method (Yegappan Lakshmanan).
+
+Patch 9.1.1106
+Problem: tests: Test_log_nonexistent() causes asan failure (Hirohito Higashi)
+Solution: Don't run mnv using system(), but run MNV in a terminal.
+
+Patch 9.1.1107
+Problem: Cannot loop through completion menu with fuzzy and nosort in
+ 'completeopt' (Tomasz N)
+Solution: Reset cur to zero and update compl_shown_match when
+ 'completeopt' contains "nosort" but not "noselect" (glepnir).
+
+Patch 9.1.1108
+Problem: 'smoothscroll' gets stuck with 'listchars' "eol".
+Solution: Count size of 'listchars' "eol" in line size when scrolling
+ (zeertzjq).
+
+Patch 9.1.1109
+Problem: cmdexpand.c hard to read
+Solution: Refactor the file slightly (glepnir).
+
+Patch 9.1.1110
+Problem: MNV tests are slow and flaky at the same time due to reliance
+ on timeouts which are unreliable.
+Solution: Improve MNV test performance and reduce flakiness
+ (Yee Cheng Chin)
+
+Patch 9.1.1111
+Problem: MNV9: variable not found in transitive import (lifepillar)
+Solution: Fix import and class extends (Hirohito Higashi).
+
+Patch 9.1.1112
+Problem: Inconsistencies in get_next_or_prev_match() (after 9.1.1109).
+Solution: Change "file" to "entry" or "match" in comments. Use the same
+ order of branches for PAGEUP and PAGEDOWN (zeertzjq).
+
+Patch 9.1.1113
+Problem: tests: Test_terminal_builtin_without_gui waits 2 seconds
+Solution: Add --not-a-term to remove the annoying 2s delay in error
+ message when MNV detects that stdio are not from a terminal
+ (Yee Cheng Chin).
+
+Patch 9.1.1114
+Problem: Enabling termguicolors automatically confuses users. Since
+ querying the terminal for the RGB flag happens asynchronously,
+ enabling termguicolors is noticeable by users as the highlighting
+ changes and is therefore unexpected (after v9.1.1054).
+Solution: Comment out that part for now. We may need another way to enable
+ this in the future.
+
+Patch 9.1.1115
+Problem: [security]: use-after-free in str_to_reg() (fizz-is-on-the-way)
+Solution: When redirecting the :display command, check that one
+ does not output to the register being displayed
+
+Patch 9.1.1116
+Problem: MNV9: super not supported in lambda expressions (Aliaksei Budavei)
+Solution: Support using the super keyword in a closure in an instance
+ method (Yegappan Lakshmanan).
+
+Patch 9.1.1117
+Problem: there are a few minor style issues
+Solution: Fix the issues (Hirohito Higashi).
+
+Patch 9.1.1118
+Problem: tests: test_termcodes fails (after: v9.1.1114)
+Solution: Adjust the test for the expected termguicolors value.
+
+Patch 9.1.1119
+Problem: MNV9: Not able to use an autoloaded class from another
+ autoloaded script (Elliot)
+Solution: Make it work (Yegappan Lakshmanan).
+
+Patch 9.1.1120
+Problem: tests: Test_registers fails (T.J. Townsend, after v9.1.1115).
+Solution: Require clipboard feature
+
+Patch 9.1.1121
+Problem: Enter does not insert newline with "noselect" when the pum is
+ visible (lifepillar)
+Solution: When Enter is pressed and no complete-item is selected,
+ ins_compl_prep returns false, and the edit function continues
+ processing Enter to insert a new line (glepnir).
+
+Patch 9.1.1122
+Problem: too many strlen() calls in findfile.c
+Solution: Refactor findfile.c and remove calls to strlen() (John Marriott).
+
+Patch 9.1.1123
+Problem: Highlight groups PopupSelected/PopupNotification/
+ MessageWindow are supposed to fall back to default highlight
+ groups if they are not defined. However, once a colorscheme
+ has defined them, switching to another colorscheme that
+ doesn't do so will leave behind a cleared colorscheme, which
+ causes the fallback to fail.
+Solution: Set up default links to the relevant fallback highlight
+ groups, which makes sure a `:hi clear` command will reset the
+ state properly (Yee Cheng Chin).
+
+Patch 9.1.1124
+Problem: No test for 'listchars' "precedes" with double-width char.
+Solution: Add a test and fix a typo in code (zeertzjq).
+
+Patch 9.1.1125
+Problem: Cannot loop through pum menu with multiline items with
+ fuzzy and noselect in 'completeopt' (Tomasz N)
+Solution: Remove unnecessary compl_no_select condition (glepnir).
+
+Patch 9.1.1126
+Problem: Patch 9.1.1121 used a wrong way to handle enter
+Solution: Compl_enter_selects also needs to consider the selected item
+ in ins_compl_new_leader() (glepnir).
+
+Patch 9.1.1127
+Problem: when 'completeopt' is set to preinsert the preinserted text is
+ not cleared when adding new leader (Yee Cheng Chin)
+Solution: Add a condition to delete preinsert text in edit function
+ (glepnir).
+
+Patch 9.1.1128
+Problem: Patch 9.1.1119 caused a regression with imports (girishji).
+Solution: Revert the script ID change for the class script variable for
+ now (Yegappan Lakshmanan).
+
+Patch 9.1.1129
+Problem: missing out-of-memory test in buf_write()
+Solution: Check that the returned allocated buffer is not NULL
+ (John Marriott).
+
+Patch 9.1.1130
+Problem: 'listchars' "precedes" is not drawn on Tabs.
+Solution: Only draw 'listchars' "precedes" when not skipping over cells
+ (zeertzjq).
+
+Patch 9.1.1131
+Problem: Potential out-of-memory issue in search.c
+Solution: Improve situation and refactor search.c slightly (John Marriott).
+
+Patch 9.1.1132
+Problem: Mark positions wrong after triggering multiline completion.
+Solution: Call deleted_lines_mark() after deleting lines (zeertzjq).
+
+Patch 9.1.1133
+Problem: filetype: xkb files not recognized everywhere
+Solution: Detect xkb files in more places (David Mandelberg).
+
+Patch 9.1.1134
+Problem: filetype: Guile init file not recognized
+Solution: Detect '.guile' file as scheme filetype (David Mandelberg).
+
+Patch 9.1.1135
+Problem: 'suffixesadd' doesn't work with multiple items (after 9.1.1122).
+Solution: Don't concat multiple suffixes together (zeertzjq).
+
+Patch 9.1.1136
+Problem: Match highlighting marks a buffer region to be redrawn as if
+ its buffer text was changed, unnecessarily invoking syntax code.
+Solution: Set the `w_redraw_top/bot` variables instead of the b_mod_* ones
+ (Luuk van Baal).
+
+Patch 9.1.1137
+Problem: ins_str() is inefficient by calling STRLLEN()
+Solution: Refactor ins_str() to take a length argument and let all callers
+ provide the correct length when calling ins_str() (John Marriott).
+
+Patch 9.1.1138
+Problem: Existing cmdline completion for :highlight was barebone and
+ only completed the highlight group names.
+Solution: Implement full completion for the highlight group arguments
+ such as guifg and cterm. If the user tries to complete
+ immediately after the '=' (e.g. `hi Normal guifg=<Tab>`), the
+ completion will fill in the existing value, similar to how
+ cmdline completion for options work (Yee Cheng Chin).
+
+Patch 9.1.1139
+Problem: [fifo] is not displayed when editing a fifo (after v7.4.2189).
+Solution: Stat the filename and detect the type correctly.
+
+Patch 9.1.1140
+Problem: filetype: m17ndb files are not detected
+Solution: Detect m17ndb files as m17ndb filetype, include filetype, syntax and
+ indent files for the new filetype (David Mandelberg).
+
+Patch 9.1.1141
+Problem: Misplaced comment in readfile() (after v9.1.1139).
+Solution: Move the comment above S_ISDIR() (zeertzjq).
+
+Patch 9.1.1142
+Problem: tests: test_startup fails if $HOME/$XDG_CONFIG_HOME is defined
+Solution: Define $HOME and $XDG_CONFIG_HOME to some non-existing
+ directory.
+
+Patch 9.1.1143
+Problem: illegal memory access when putting a register
+Solution: Make sure cursor column doesn't become negative.
+
+Patch 9.1.1144
+Problem: no way to create raw strings from a blob
+Solution: Support the "encoding": "none" option to create raw strings (which
+ may be invalid) (Bakudankun).
+
+Patch 9.1.1145
+Problem: When expanding omni completion items with newlines (e.g.
+ `then\n\t\nend`), the end statement gets wrong indentation.
+Solution: Add OPENLINE_FORCE_INDENT flag to make open_line() use
+ second_line_indent directly (glepnir).
+
+Patch 9.1.1146
+Problem: MNV9: wrong context being used when evaluating class member
+ (lifepillar, Ernie Rael)
+Solution: Use the correct script context when evaluating a class member
+ init expression(Yegappan Lakshmanan).
+
+Patch 9.1.1147
+Problem: preview-window does not scroll correctly
+Solution: Init firstline = 0 for a preview window (Girish Palya).
+
+Patch 9.1.1148
+Problem: MNV9: finding imported scripts can be further improved
+ (after v9.1.1146)
+Solution: Eliminate extra find_imported() call (Hirohito Higashi).
+
+Patch 9.1.1149
+Problem: Unix Makefile does not support Brazilian lang for the installer.
+Solution: Add support for language code pt_br (RestorerZ)
+
+Patch 9.1.1150
+Problem: :highlight auto-complettion has a minor bug where an existing
+ highlight group with a cterm color being unset would result in
+ it being auto-completed to -1 in cmdline which is invalid.
+Solution: Correctly check for whether an int value is set to non-zero
+ before retrieving the existing value for auto-complete. Also
+ do this for attr/string values as they previously worked only
+ by accident (Yee Cheng Chin).
+
+Patch 9.1.1151
+Problem: too many strlen() calls in getchar.c
+Solution: Store last inserted and recorded lengths, add functions to retrieve
+ those and use those functions (John Marriott).
+
+Patch 9.1.1152
+Problem: Patch v9.1.1151 causes problems
+Solution: Partially revert it (John Marriott).
+
+Patch 9.1.1153
+Problem: build error on Haiku
+Solution: Define XDG_RUNTIME_PATH variables (Begasus).
+
+Patch 9.1.1154
+Problem: MNV9: not able to use autoload class across scripts
+Solution: Make it work, re-enable the test (Yegappan Lakshmanan).
+
+Patch 9.1.1155
+Problem: Mode message not cleared after :silent message (after 9.0.1634).
+Solution: Don't reset mode_displayed when the message is empty (zeertzjq).
+
+Patch 9.1.1156
+Problem: No test for what Patch 9.1.1152 fixes.
+Solution: Add a test (zeertzjq).
+
+Patch 9.1.1157
+Problem: command completion wrong for input() (Cdrman Fu)
+Solution: Set commandline completion context explicitly (Jim Zhou).
+
+Patch 9.1.1158
+Problem: :verbose set has wrong file name with :compiler!
+Solution: Add -keepscript (zeertzjq).
+
+Patch 9.1.1159
+Problem: $MYMNVDIR may not always be set (after 9.1.0718) (sandwm)
+Solution: Always set $MYMNVDIR to first item in runtimepath
+ (except when using --clean), update it when changing &rtp.
+
+Patch 9.1.1160
+Problem: The 'preinsert' feature requires Ctrl-Y to confirm insertion,
+ but Ctrl-Y only works when the popup menu (pum) is displayed.
+Solution: Modify ins_compl_has_preinsert() to check for both 'menu' and
+ 'menuone' flags when 'preinsert' is set. Update documentation
+ to clarify this requirement. This avoids adding complex
+ conditional behaviors (glepnir).
+
+Patch 9.1.1161
+Problem: preinsert requires bot "menu" and "menuone" to be set,
+ but "menu" is redundant (after v9.1.1160)
+Solution: Preinsert only requires menuone (glepnir).
+
+Patch 9.1.1162
+Problem: When an info popup spans into the cmdline area and ESC is
+ pressed, some content remains visible on screen (yu3s).
+Solution: Add popup_overlays_cmdline() check in screen_fill() to prevent
+ prematurely clearing the clear_cmdline flag (glepnir).
+
+Patch 9.1.1163
+Problem: $MYMNVDIR is set too late and not available while sourcing
+ runtime files (Maxim Kim, after v9.1.1159).
+Solution: Also set it when $MYMNVRC file is found.
+
+Patch 9.1.1164
+Problem: editing a special crafted tar file allows code execution (RyotaK)
+Solution: Escape the filename before feeding it to the `:read` command
+
+Patch 9.1.1165
+Problem: MNV's diff block merging algorithm when doing a multi-file diff
+ is buggy when two different diff hunks overlap a single
+ existing diff block (after v9.1.0743)
+Solution: Fix a couple bugs in this logic (Yee Cheng Chin).
+
+Patch 9.1.1166
+Problem: command-line auto-completion hard with wildmenu
+Solution: Implement "noselect" wildoption value (Girish Palya)
+
+Patch 9.1.1167
+Problem: mark '] wrong after copying text object (ubaldot)
+Solution: Adjust position of '] for non-linewise, exclusive motions (Jim Zhou)
+
+Patch 9.1.1168
+Problem: wrong flags passed down to nextwild() (zeertzjq, after v9.1.1166)
+Solution: Only pass options flags (Girish Palya)
+
+Patch 9.1.1169
+Problem: using global variable for get_insert()/get_lambda_name()
+ (after v9.1.1151)
+Solution: Let the functions return a string_T object instead (Yee Cheng Chin).
+
+Patch 9.1.1170
+Problem: wildmenu highlighting in popup can be improved
+Solution: Check if the completion items contain submatches of the
+ entered text (Girish Palya).
+
+Patch 9.1.1171
+Problem: tests: wrong arguments passed to assert_equal() (after v9.1.1167).
+Solution: Swap arguments in the assert_equal() call (zeertzjq).
+
+Patch 9.1.1172
+Problem: heap-buffer-overflow with 'nostartofline' and Ex command in tag
+ file.
+Solution: Set cursor column when moving cursor to line 1 (zeertzjq).
+
+Patch 9.1.1173
+Problem: filetype: ABNF files are not detected
+Solution: Detect '.abnf' file as abnf filetype and
+ include an abnf syntax plugin (A4-Tacks).
+
+Patch 9.1.1174
+Problem: tests: when the file 'TestCommand?Test' exists,
+ 'Test_complete_cmdline()' will fail when writing the file. And
+ there's no related cleaning operation for this kind of file
+ before the test run.
+Solution: modify `write` to `write!` to override (Jim Zhou).
+
+Patch 9.1.1175
+Problem: inconsistent behaviour with exclusive selection and motion
+ commands (aidancz)
+Solution: Adjust cursor position when selection is exclusive (Jim Zhou).
+
+Patch 9.1.1176
+Problem: wrong indentation of lastline when expanding multiple lines
+Solution: Check OPENLINE_FORCE_INDENT flag in open_line() (glepnir).
+
+Patch 9.1.1177
+Problem: filetype: tera files not detected
+Solution: Detect '*.tera' files as tera filetype,
+ include a simple filetype plugin (MuntasirSZN).
+
+Patch 9.1.1178
+Problem: not possible to generate completion candidates using fuzzy
+ matching
+Solution: Add the 'completefuzzycollect' option for (some) ins-completion
+ modes (glepnir).
+
+Patch 9.1.1179
+Problem: too many strlen() calls in misc2.c
+Solution: Refactor misc2.c and use bsearch() instead of a linear search
+ to find matches in the key_names_table array (John Marriott).
+
+Patch 9.1.1180
+Problem: The meaning of <Tab> depends on unspecified behavior
+ (after 9.1.1179).
+Solution: Return TAB in case bsearch() finds K_TAB. Rename alt_name to
+ pref_name as that's closer to it meaning (zeertzjq).
+
+Patch 9.1.1181
+Problem: Unnecessary STRLEN() calls in insexpand.c (after 9.1.1178).
+Solution: Use the already available length (zeertzjq).
+
+Patch 9.1.1182
+Problem: No cmdline completion for the 'completefuzzycollect' option
+ (after v9.1.1178)
+Solution: Add cmdline completion for the 'completefuzzycollect' option,
+ improve its description in optwin.mnv (zeertzjq).
+
+Patch 9.1.1083
+Problem: "above" virtual text breaks cursorlineopt=number.
+Solution: Take "above" virtual text into account when applying
+ CursorLineNr highlight.
+
+Patch 9.1.1184
+Problem: Unnecessary use of mnv_tolower() in mnv_strnicmp_asc().
+Solution: Use TOLOWER_ASC() instead (zeertzjq).
+
+Patch 9.1.1185
+Problem: endless loop with completefuzzycollect and no match found
+Solution: Move pointer to line end and break loop.
+
+Patch 9.1.1186
+Problem: filetype: help files in git repos are not detected
+Solution: Detect */doc/*.txt files as help if they end with a help
+ modeline, even if 'modeline' is off
+
+Patch 9.1.1187
+Problem: matchparen plugin wrong highlights shell case statement
+ (Swudu Susuwu)
+Solution: Return early, if we are in a shSnglCase syntax element
+
+Patch 9.1.1188
+Problem: runtime(tera): tera support can be improved
+Solution: Update tera filetype plugin, include a tera syntax script
+ include tera syntax tests, update the filetype test,
+ update makemenu and synmenu mnv scripts (MuntasirSZN).
+
+Patch 9.1.1189
+Problem: if_python: build error due to incompatible pointer types
+Solution: Cast pointer to PyObject* (oreo639).
+
+Patch 9.1.1190
+Problem: C indentation does not detect multibyte labels
+Solution: Correctly skip over multibyte characters (Anttoni Erkkilä).
+
+Patch 9.1.1191
+Problem: Test for Patch 9.1.1186 doesn't fail without the patch.
+Solution: Set 'nomodeline' in the test (zeertzjq).
+
+Patch 9.1.1192
+Problem: MNV crashes with term response debug logging enabled and
+ running in a non-writeable directory
+Solution: Use ch_log() instead of custom termresponse logging function
+ (Hirohito Higashi)
+
+Patch 9.1.1193
+Problem: Unnecessary use of STRCAT() in au_event_disable(). STRCAT()
+ seeks to the end of new_ei, but here the end is already known.
+Solution: Use STRCPY() and add p_ei_len to new_ei. Also fix a typo in a
+ comment. Add a test that 'eventignore' works in :argdo (zeertzjq).
+
+Patch 9.1.1194
+Problem: filetype: false positive help filetype detection
+Solution: Only detect a file as help if modeline appears either at start
+ of line or is preceded by whitespace (zeertzjq).
+
+Patch 9.1.1195
+Problem: inside try-block: fn body executed when default arg is
+ undefined
+Solution: When inside a try-block do not execute function body after an
+ error in evaluating a default argument expression (Shane Harper).
+
+Patch 9.1.1196
+Problem: filetype: config files for container tools are not recognized
+Solution: Detect the ones that aren't detected yet as toml filetype
+ (David Mandelberg).
+
+Patch 9.1.1197
+Problem: process_next_cpt_value() uses wrong condition
+Solution: Use cfc_has_mode() instead and remove redundant else if branch
+ (glepnir).
+
+Patch 9.1.1198
+Problem: [security]: potential data loss with zip.mnv and special
+ crafted zip files (RyotaK)
+Solution: Use glob '[-]' to protect filenames starting with '-'.
+
+Patch 9.1.1199
+Problem: Many X11/Wayland desktops support icon themes, and many themes
+ provide a gmnv icon, but this icon is ignored for the window
+ itself because it is hardcoded in the source code.
+Solution: Read the icon from the theme instead (Aurelien Gateau).
+
+Patch 9.1.1200
+Problem: Cmdline pum not cleared for input() completion.
+Solution: Temporary reset RedrawingDisabled in cmdline_pum_cleanup(),
+ like what is done in wildmenu_cleanup() (zeertzjq).
+
+Patch 9.1.1201
+Problem: 'completefuzzycollect' does not handle dictionary correctly
+Solution: Check for ctrl_x_mode_dictionary (glepnir).
+
+Patch 9.1.1202
+Problem: Missing TabClosedPre autocommand (zoumi)
+Solution: Add the TabClosedPre autcommand (Jim Zhou).
+
+Patch 9.1.1203
+Problem: matchparen keeps cursor on case label in sh filetype
+ (@categorical, after 9.1.1187).
+Solution: Use :defer so that cursor is always restored, remove checks
+ for older MNVs, finish early if MNV does not support :defer
+
+Patch 9.1.1204
+Problem: MS-Windows: crash when passing long string to expand() with
+ 'wildignorecase'.
+Solution: Use the same buflen as unix_expandpath() in dos_expandpath().
+ Remove an unnecessary STRLEN() while at it (zeertzjq).
+
+Patch 9.1.1205
+Problem: completion: preinserted text not removed when closing pum
+Solution: Delete preinsert text inside in ins_compl_stop() (glepnir).
+
+Patch 9.1.1206
+Problem: tests: test_filetype fails when a file is a directory
+ (Eisuke Kawashima)
+Solution: When encountering a directory instead of a file, skip that
+ particular filetype test.
+
+Patch 9.1.1207
+Problem: MS-Windows: build warning in filepath.c (after v9.1.1204).
+Solution: Add type cast (John Marriott).
+
+Patch 9.1.1208
+Problem: MS-Windows: not correctly restoring alternate screen on Win 10
+ after ssh (Daniel Viberg)
+Solution: Return a bit later in RestoreConsoleBuffer() (Christopher Plewright)
+
+Patch 9.1.1209
+Problem: colorcolumn not drawn after virtual text lines
+Solution: Show colorcolumn on correct line with virtual text by adding
+ the size of p_extra to virtual column offset (Matthias).
+
+Patch 9.1.1210
+Problem: translation(ru): missing Russian translation for the new tutor
+Solution: Include new Russian translation, update the Makefile for
+ installing the new translations (RestorerZ).
+
+Patch 9.1.1211
+Problem: TabClosedPre is triggered just before the tab is being freed,
+ which limited its functionality.
+Solution: Trigger it a bit earlier and also on :tabclose and :tabonly
+ (Jim Zhou).
+
+Patch 9.1.1212
+Problem: filetype: logrotate'd pacmanlogs are not recognized
+Solution: Also detect pacman.log* files as pacmanlog filetype,
+ remove BufNewFile autocmd (Eisuke Kawashima).
+
+Patch 9.1.1212
+Problem: too many strlen() calls in edit.c
+Solution: Refactor edit.c and remove strlen() calls (John Marriott).
+
+Patch 9.1.1213
+Problem: cannot :put while keeping indent (Peter Aronoff)
+Solution: Add the :iput ex command (64-bitman).
+
+Patch 9.1.1214
+Problem: When searching for "Cur", CamelCase matches like "lCursor" score
+ higher than exact prefix matches like Cursor, which is
+ counter-intuitive (Maxim Kim).
+Solution: Add a 'camelcase' option to matchfuzzy() that lets users disable
+ CamelCase bonuses when needed, making prefix matches rank higher
+ (glepnir).
+
+Patch 9.1.1215
+Problem: Patch 9.1.1213 has some issues
+Solution: Revert it for now
+
+Patch 9.1.1216
+Problem: Pasting the '.' register multiple times may work incorrectly
+ when the last insert starts with Ctrl-D and ends with '0'
+ (after 9.1.1212).
+Solution: Restore the missing assignment (zeertzjq).
+
+Patch 9.1.1217
+Problem: tests: typos in test_matchfuzzy.mnv (after 9.1.1214).
+Solution: Fix the typos. Consistently put the function call on the
+ second line in assertions for camelcase (zeertzjq).
+
+Patch 9.1.1218
+Problem: missing out-of-memory check in filepath.c
+Solution: Add check for NULL (John Marriott).
+
+Patch 9.1.1219
+Problem: Strange error with type for matchfuzzy() "camelcase".
+Solution: Show the error "Invalid value for argument camelcase" instead
+ of "Invalid argument: camelcase" (zeertzjq).
+
+Patch 9.1.1220
+Problem: filetype: uv.lock file not recognized
+Solution: detect uv.lock file as toml filetype (Acaibird).
+
+Patch 9.1.1221
+Problem: Wrong cursor position and '^' mark when leaving Insert mode
+ just after 'autoindent' and cursor on last char of line.
+Solution: Don't move cursor to NUL when it wasn't moved to the left (zeertzjq)
+
+Patch 9.1.1222
+Problem: using wrong length for last inserted string
+ (Christ van Willegen, after v9.1.1212)
+Solution: Use the correct length in get_last_insert_save(), make
+ get_last_insert() return a string_T (John Marriott).
+
+Patch 9.1.1223
+Problem: wrong translation for encoding failures because of using
+ literal "from" and "to" in the resulting error message (RestorerZ)
+Solution: Use separate error messages for errors "from" and "to"
+ encoding errors.
+
+Patch 9.1.1224
+Problem: cannot :put while keeping indent (Peter Aronoff)
+Solution: Add the :iput ex command (64-bitman).
+
+Patch 9.1.1225
+Problem: extra NULL check in MNV_CLEAR()
+Solution: Remove the NULL check and rely on the NULL check in mnv_free()
+ instead (Hirohito Higashi).
+
+Patch 9.1.1226
+Problem: "shellcmdline" completion doesn't work with input().
+Solution: Use set_context_for_wildcard_arg(). Fix indent in nextwild()
+ (zeertzjq).
+
+Patch 9.1.1227
+Problem: no tests for the comment package
+Solution: Add some tests (Maxim Kim).
+
+Patch 9.1.1228
+Problem: The current_pos.col was incorrectly updated to the length of
+ the matching text. This will cause the next search to start
+ from the wrong position.
+Solution: Current_pos has already been updated in search_str_in_line and
+ does not need to be changed (glepnir).
+
+Patch 9.1.1229
+Problem: the comment plugin can be improved
+Solution: add comment text objects "ic" and "ac" (Maxim Kim).
+
+Patch 9.1.1230
+Problem: Ctrl-C closes popup windows that have a filter callback,
+ but does not close popups without a filter callback.
+Solution: Modified popup_do_filter() to also close popups without
+ filter callback when Ctrl-C is pressed (glepnir).
+
+Patch 9.1.1231
+Problem: filetype: SPA (single page application) JSON files are not
+ recognized (used by pipewire and wireplumber)
+Solution: Detect pipewire and wireplumber configuration files as spajson
+ filetype, include filetype, indent and syntax scripts for this
+ new filetype (David Mandelberg).
+
+Patch 9.1.1232
+Problem: MNV script is missing the tuple data type
+Solution: Add support for the tuple data type (Yegappan Lakshmanan).
+
+Patch 9.1.1233
+Problem: Coverity warns about NULL pointer when triggering WinResized
+Solution: Add OOM checks for windows_list like for scroll_dict. Remove
+ void casts that are unnecessary after 9.1.1084 (zeertzjq).
+
+Patch 9.1.1234
+Problem: Compile error when SIZE_MAX is not defined
+Solution: Define SIZE_MAX (Zoltan Arpadffy).
+
+Patch 9.1.1235
+Problem: cproto files are outdated
+Solution: regenerate proto files by running make proto (Yegappan Lakshmanan).
+
+Patch 9.1.1236
+Problem: tests: test_comments leaves swapfiles around
+Solution: use ':bw!' instead of ':close!'
+
+Patch 9.1.1237
+Problem: Compile error with C89 compiler in term.c (Zoltan Arpadffy)
+Solution: split out LOG_TR macro into 2 different macros. LOG_TR1 that
+ takes only a single argument and LOG_TRN that takes 2
+ arguments. Remove the use of ##__VA_ARGS__ since the macro is
+ now always called with 2 arguments (Hirohito Higashi).
+
+Patch 9.1.1238
+Problem: With ':set splitkeep=screen', cursor did't restore column
+ correctly when splitting a window on a line longer than the
+ last line on the screen (after v9.1.0707)
+Solution: Restore cursor column in `win_fix_scroll()` since it may be
+ changed in `getvcol()` after 396fd1ec2956 (phanium).
+
+Patch 9.1.1239
+Problem: if_python: no tuple data type support (after v9.1.1232)
+Solution: Add support for using MNV tuple in the python interface
+ (Yegappan Lakshmanan).
+
+Patch 9.1.1240
+Problem: Regression with ic/ac text objects and comment plugin
+Solution: Fix regression, update tests (Maxim Kim).
+
+Patch 9.1.1241
+Problem: wrong preprocessort indentation in term.c
+Solution: update indentation (Hirohito Higashi).
+
+Patch 9.1.1242
+Problem: Crash when evaluating variable name (after v9.1.0870)
+Solution: Calculate the strlen() directly instead of pointer
+ arithmetics, fix missing assignment to lp->ll_name_end in
+ get_lval() (zeertzjq).
+
+Patch 9.1.1243
+Problem: Diff mode's inline highlighting is lackluster. It only
+ performs a line-by-line comparison, and calculates a single
+ shortest range within a line that could encompass all the
+ changes. In lines with multiple changes, or those that span
+ multiple lines, this approach tends to end up highlighting
+ much more than necessary.
+Solution: Implement new inline highlighting modes by doing per-character
+ or per-word diff within the diff block, and highlight only the
+ relevant parts, add "inline:simple" to the defaults (which is
+ the old behaviour) (Yee Cheng Chin)
+
+Patch 9.1.1244
+Problem: part of Patch v9.1.1242 was wrong
+Solution: Revert part of the Patch.
+
+Patch 9.1.1245
+Problem: need some more tests for curly braces evaluation
+Solution: Add a test for the regression introduced by Patch v9.1.1242
+ (Yegappan Lakshmanan).
+
+Patch 9.1.1246
+Problem: coverity complains about some changes in v9.1.1243
+Solution: Remove duplicate code in diff_find_changed() (Yee Cheng Chin).
+
+Patch 9.1.1247
+Problem: fragile setup to get (preferred) keys from key_name_entry
+ (after v9.1.1179)
+Solution: Refactor the code further, fix a bug with "pref_name" key
+ entry introduced in v9.1.1180 (Yee Cheng Chin)
+
+Patch 9.1.1248
+Problem: compile error when building without FEAT_QUICKFIX
+Solution: Adjust ifdefs in popupwin.c, add CheckFeature quickfix
+ to a few tests (John Marriott, Hirohito Higashi).
+
+Patch 9.1.1249
+Problem: No test that 'listchars' "eol" doesn't affect "gM".
+Solution: Add a test (zeertzjq).
+
+Patch 9.1.1250
+Problem: cannot set the maximum popup menu width (Lucas Mior)
+Solution: add the new global option value 'pummaxwidth' (glepnir).
+
+Patch 9.1.1251
+Problem: if_python: build error with tuples and dynamic python
+ (after v9.1.1239)
+Solution: Fix build error and test failures (Yee Cheng Cin).
+
+Patch 9.1.1252
+Problem: Typos in code and docs related to 'diffopt' "inline:".
+ (after v9.1.1243)
+Solution: Fix typos and slightly improve the docs (zeertzjq).
+
+Patch 9.1.1253
+Problem: If win_close() is called with a window that has quickfix stack
+ attached to it, the corresponding quickfix buffer will be
+ closed and freed after the buffer was already closed. At that
+ time curwin->w_buffer points to NULL, which the CHECK_CURBUF
+ will catch and abort if ABORT_ON_ERROR is defined.
+Solution: In wipe_qf_buffer() temporarily point curwin->w_buffer back to
+ curbuf, the window will be closed anyhow, so it shouldn't
+ matter that curbuf->b_nwindows isn't incremented.
+
+Patch 9.1.1254
+Problem: need more tests for the comment plugin
+Solution: Add a tests for the [gb]:comment_first_col setting (Maxim Kim).
+
+Patch 9.1.1255
+Problem: missing test condition for 'pummaxwidth' setting, pummaxwidth
+ not effective when width is 32 and height is 10 (after v9.1.1250).
+Solution: Add missing comparison condition in pum_width() (glepnir).
+
+Patch 9.1.1256
+Problem: if_python: duplicate tuple data entries (after v9.1.1239)
+Solution: clean up duplicates (Yegappan Lakshmanan).
+
+Patch 9.1.1257
+Problem: Mixing mnv_strsize() with mb_ptr2cells() in pum_redraw().
+Solution: Change mnv_strsize() to mb_string2cells() (zeertzjq).
+
+Patch 9.1.1258
+Problem: regexp: max \U and \%U value is limited by INT_MAX but gives a
+ confusing error message
+Solution: Give a better error message when the value reaches INT_MAX
+
+Patch 9.1.1259
+Problem: some issues with comment package and tailing spaces
+Solution: Correctly capture trailing spaces with the ac/ic text object
+ (Maxim Kim).
+
+Patch 9.1.1260
+Problem: Hang when filtering buffer with NUL bytes (after 9.1.1050).
+Solution: Don't subtract "written" from "lplen" repeatedly (zeertzjq).
+
+Patch 9.1.1261
+Problem: No test for 'pummaxwidth' non-truncated items (after v9.1.1250)
+Solution: Add shorter items to Test_pum_maxwidth_multibyte() (zeertzjq).
+
+Patch 9.1.1262
+Problem: heap-buffer-overflow occurs with narrow 'pummaxwidth' value
+ (after v9.1.1250)
+Solution: Test that st_end points after st pointer (Hirohito Higashi).
+
+Patch 9.1.1263
+Problem: string length wrong in get_last_inserted_save() (after v9.1.1222).
+Solution: When removing trailing ESC, also decrease the string length
+ (Christ van Willegen).
+
+Patch 9.1.1264
+Problem: MNV9: error when comparing objects (lifepillar)
+Solution: When comparing object types, compare their classes
+ (Yegappan Lakshmanan)
+
+Patch 9.1.1265
+Problem: tests: no tests for typing normal char during completion
+Solution: Add a test verifying the default behaviour (see :h
+ popupmenu-completion)
+
+Patch 9.1.1266
+Problem: MS-Windows: type conversion warnings
+Solution: Cast the variables (Yegappan Lakshmanan).
+
+Patch 9.1.1267
+Problem: MNV9: no support for type list/dict<object<any>>
+Solution: Add proper support for t_object_any (Yegappan Lakshmanan).
+
+Patch 9.1.1268
+Problem: filetype: dax files are not recognized
+Solution: Detect "*.dax" as dax filetype, include dax filetype and
+ syntax plugin (Anarion Dunedain).
+
+Patch 9.1.1269
+Problem: compl_shown_match is updated when starting keyword completion
+ and does not include fuzzy matching.
+Solution: Do not update compl_shown_match when starting keyword
+ completion, since it is the one already selected by the
+ keyword completion direction (glepnir).
+
+Patch 9.1.1270
+Problem: missing out-of-memory checks in buffer.c
+Solution: Handle out-of-memory situations during allocation (John Marriott).
+
+Patch 9.1.1271
+Problem: filetype: Power Query files are not recognized
+Solution: Detect '*.pq' as pq filetype, include pq syntax and filetype
+ plugin (Anarion Dunedain).
+
+Patch 9.1.1272
+Problem: completion: in keyword completion Ctrl_P cannot go back after
+ Ctrl_N
+Solution: in find_compl_when_fuzzy() always return first match of array, after
+ Ctrl_P use compl_shown_match->cp_next instead of compl_first_match.
+ (glepnir)
+
+Patch 9.1.1273
+Problem: Coverity warns about using uninitialized value (after 9.1.1270).
+Solution: Put an empty string in "buf" when allocation fails (zeertzjq).
+
+Patch 9.1.1274
+Problem: MNV9: no support for object<type> as variable type
+Solution: Add support for object<type> (Yegappan Lakshmanan).
+
+Patch 9.1.1275
+Problem: MS-Windows: Not possible to pass additional flags to Make_mvc
+Solution: Introduce $CI_FLAGS and use it to pass additional flags for
+ the Github CI in order to treat size conversion warnings
+ (C4267) as errors (Yegappan Lakshmanan).
+
+Patch 9.1.1276
+Problem: inline word diff treats multibyte chars as word char
+ (after 9.1.1243)
+Solution: Treat all non-alphanumeric characters as non-word characters
+ (Yee Cheng Chin)
+
+Patch 9.1.1277
+Problem: tests: trailing comment char in test_popupwin
+Solution: Remove crufty tail comment (Doug Kearns)
+
+Patch 9.1.1278
+Problem: MNV9: too long functions in mnv9type.c
+Solution: Refactor into separate functions (Yegappan Lakshmanan).
+
+Patch 9.1.1279
+Problem: MNV9: null_object and null_class are no reserved names
+Solution: Add null_object and null_class as reserved names
+ (Yegappan Lakshmanan).
+
+Patch 9.1.1280
+Problem: trailing additional semicolon in get_matches_in_str()
+ (Hirohito Higashi)
+Solution: Remove it (Satoru Kitaguchi).
+
+Patch 9.1.1281
+Problem: extra newline output when editing stdin
+Solution: Remove outputting when reading from stdin in non-terminal mode
+ (Abhijit Barik).
+
+Patch 9.1.1282
+Problem: Build and test failure without job feature (lazypingu).
+Solution: Adjust ifdefs, add CheckFeature job to tests.
+
+Patch 9.1.1283
+Problem: quickfix and location-list stack is limited to 10 items
+Solution: Add the 'chistory' and 'lhistory' options to configure a
+ larger quickfix/location list stack (64-bitman).
+
+Patch 9.1.1284
+Problem: not possible to configure the completion menu truncation
+ character
+Solution: Add the "trunc" suboption to the 'fillchars' setting to
+ configure the truncation indicator (glepnir).
+
+Patch 9.1.1285
+Problem: MNV9: no error message for missing method after "super."
+Solution: Output an error message, add a few more tests (Yegappan Lakshmanan).
+
+Patch 9.1.1286
+Problem: Help files not detected when 'iskeyword' includes ":".
+Solution: Do not use \< and \> in the pattern (zeertzjq).
+
+Patch 9.1.1287
+Problem: quickfix code can be further improved (after v9.1.1283)
+Solution: Slightly refactor quickfix.c (Hirohito Higashi).
+
+Patch 9.1.1288
+Problem: Using wrong window in ll_resize_stack() (after v9.1.1287)
+Solution: Use "wp" instead of "curwin", even though they are always the
+ same value. Fix typos in documentation (zeertzjq).
+
+Patch 9.1.1289
+Problem: tests: no test for matchparen plugin with WinScrolled event
+Solution: Add missing test.
+
+Patch 9.1.1290
+Problem: tests: missing cleanup in test_filetype.mnv, wrong name in
+ test_plugin_matchparen
+Solution: Add :bwipe corresponding to :split, rename test case.
+
+Patch 9.1.1291
+Problem: too many strlen() calls in buffer.c
+Solution: Refactor buffer.c and remove strlen() calls (John Marriott).
+
+Patch 9.1.1292
+Problem: statusline not correctly evaluated (Peter Kenny, after v9.1.1291)
+Solution: Revert part of Patch v9.1.1291 (Hirohito Higashi).
+
+Patch 9.1.1293
+Problem: comment plugin does not handle 'exclusive' selection for
+ comment object (@mawkish)
+Solution: Handle special case selection='exclusive' for inline comment
+ object (Maxim Kim).
+
+Patch 9.1.1294
+Problem: gui tabline menu does not use confirm when closing tabs
+Solution: Use ":confirm tabclose" explicitly (JMcKiern).
+
+Patch 9.1.1295
+Problem: clientserver: When in insert mode, a :stopinsert command
+ is not correctly processed (user202729)
+Solution: If the :stopinsert command is received while waiting for
+ input, stuff the NOP key into the type-ahead buffer and
+ detect that :stopinsert was used in edit() so that the
+ cursor position is decremented.
+
+Patch 9.1.1296
+Problem: completion: incorrect truncation logic (after: v9.1.1284)
+Solution: Replace string allocation with direct screen rendering and
+ fix RTL/LTR truncation calculations (glepnir).
+
+Patch 9.1.1297
+Problem: cursor_correct() calculates a valid cursor position which
+ is later changed by update_topline() and causes Ctrl-D
+ scrolling to be stuck (Daniel Steinberg, after v9.1.0258).
+Solution: Update the valid cursor position before validating topline
+ (Luuk van Baal).
+
+Patch 9.1.1298
+Problem: define_function() is too long
+Solution: Refactor and split up into smaller functions (Yegappan Lakshmanan).
+
+Patch 9.1.1299
+Problem: filetype: mbsyncrc files are not recognized
+Solution: Detect isyncrc and "*.mbsyncrc" files as mbsync filetype,
+ include filetype and syntax plugin (Pierrick Guillaume).
+
+Patch 9.1.1300
+Problem: wrong detection of -inf
+Solution: Correctly compare 4 characters and not 3 (John Marriott).
+
+Patch 9.1.1301
+Problem: completion: cannot configure completion functions with
+ 'complete'
+Solution: Add support for setting completion functions using the f and o
+ flag for 'complete' (Girish Palya)
+
+Patch 9.1.1302
+Problem: Coverity warns about using uninitialized value
+ (Coverity, Tony Mechelynck, after v9.1.1301)
+Solution: Initialize callback pointer to NULL
+
+Patch 9.1.1303
+Problem: missing out-of-memory check in linematch.c
+Solution: Return early in case of memory allocation failure, move the
+ pow() calculation ouside of the for() loop (John Marriott).
+
+Patch 9.1.1304
+Problem: filetype: some man files are not recognized
+ (e.g. 1p (POSIX commands))
+Solution: Update the filetype detection pattern and detect more man
+ files as nroff (Eisuke Kawashima).
+
+Patch 9.1.1305
+Problem: When switching to another window or tab page while the
+ completion menu is active, the menu stays visible, although it
+ belongs to the previous window/tab page context (Evgeni
+ Chasnovski).
+Solution: Track the window and tab page where completion started. Detect
+ changes in the main editing loop and cancel completion mode if
+ the current window or tab page differs from where completion
+ started.
+
+Patch 9.1.1306
+Problem: Parts of the popup menu were rendered twice when the popup was
+ at maximum width because the truncation flag was being set too
+ liberally.
+Solution: Make the truncation condition more precise by only setting it
+ when there's exactly one character of space remaining (glepnir).
+
+Patch 9.1.1307
+Problem: GNU extensions, such as `ifeq` and `wildcard` function, are
+ highlighted in BSDmakefile
+Solution: Detect BSD, GNU, or Microsoft implementation according to
+ filename, user-defined global variables, or file contents.
+
+Patch 9.1.1308
+Problem: During insert-mode completion, the most relevant match is often
+ the one closest to the cursor—frequently just above the current line.
+ However, both `<C-N>` and `<C-P>` tend to rank candidates from the
+ current buffer that appear above the cursor near the bottom of the
+ completion menu, rather than near the top. This ordering can feel
+ unintuitive, especially when `noselect` is active, as it doesn't
+ prioritize the most contextually relevant suggestions.
+Solution: This change introduces a new sub-option value "nearest" for the
+ 'completeopt' setting. When enabled, matches from the current buffer
+ are prioritized based on their proximity to the cursor position,
+ improving the relevance of suggestions during completion
+ (Girish Palya).
+
+Patch 9.1.1309
+Problem: tests: no test for 'pummaxwidth' with non-truncated "kind".
+Solution: Add a test with "kind" and larger 'pummaxwidth' (zeertzjq).
+
+Patch 9.1.1310
+Problem: Duplicate check for preinsert effect, particularly for Ctrl_w
+ and Ctrl_U.
+Solution: Remove the specific check for Ctrl_w and Ctrl_U to eliminate
+ redundancy (glepnir).
+
+Patch 9.1.1311
+Problem: completion: not possible to limit number of matches
+Solution: allow to limit the matches for 'complete' sources by using the
+ "{flag}^{limit}" notation (Girish Palya)
+
+Patch 9.1.1312
+Problem: tests: Test_backupskip() fails when HOME is defined
+Solution: Unset $HOME temporarily
+
+Patch 9.1.1313
+Problem: compile warning about uninitialized value
+ (Tony Mechelynck, after v9.1.1311)
+Solution: Initialize variable on declaration
+
+Patch 9.1.1314
+Problem: max allowed string width too small
+Solution: Increased MAX_ALLOWED_STRING_WIDTH from 6400 to 1MiB
+ (Hirohito Higashi)
+
+Patch 9.1.1315
+Problem: chain complete does not work when 'cot' includes fuzzy
+ and 'completefuzzycollect' collects wrong next word (Konfekt).
+Solution: Compl_startpos is not set correctly, remove next word check
+ in search_for_fuzzy_match (glepnir).
+
+Patch 9.1.1316
+Problem: missing memory allocation failure in os_mswin.c
+Solution: Check for memory allocation failure and return early (John Marriott)
+
+Patch 9.1.1317
+Problem: noisy error when restoring folds from session fails
+Solution: ignore errors silently when sourcing session file (Igor Lacerda).
+
+Patch 9.1.1318
+Problem: tests: test_format fails (after 9.1.1314).
+Solution: Increase the string size. Add missing test_format.res in
+ NEW_TESTS_RES (zeertzjq).
+
+Patch 9.1.1319
+Problem: Various typos in the code, redundant and strange use of
+ :execute in test_ins_complete.mnv (after 9.1.1315).
+Solution: Fix typos in the code and in the documentation, use the
+ executed command directly (zeertzjq).
+
+Patch 9.1.1320
+Problem: filetype: alsoft config files are not recognized
+Solution: Detect alsoft config files as dosini filetype (David Mandelberg).
+
+Patch 9.1.1321
+Problem: filetype: MS ixx and mpp files are not recognized
+Solution: Detect *.mpp and *.ixx files as c++ filetype (Hampus Avekvist).
+
+Patch 9.1.1322
+Problem: small delete register cannot paste multi-line correctly
+ (after v8.2.2189)
+Solution: Make this logic handle charwise only (phanium).
+
+Patch 9.1.1323
+Problem: b:undo_ftplugin not executed when re-using buffer (archy3)
+Solution: Explicitly execute b:undo_ftplugin in buflist_new() when
+ re-using the current buffer.
+
+Patch 9.1.1324
+Problem: undefined behaviour if X11 connection dies
+Solution: Call setjmp() before the main_loop() and restore x11 state
+ if the X11 connection dies (Foxe Chen).
+
+Patch 9.1.1325
+Problem: tests: not checking error numbers properly.
+Solution: Add a trailing comma to avoid matching a different error
+ number with the same prefix (zeertzjq).
+
+Patch 9.1.1326
+Problem: invalid cursor position after 'tagfunc' (gandalf4a).
+Solution: Call check_cursor() after executing the 'tagfunc'.
+
+Patch 9.1.1327
+Problem: filetype: nroff detection can be improved
+Solution: Improve nroff detection (Eisuke Kawashima)
+
+Patch 9.1.1328
+Problem: too many strlen() calls in indent.c
+Solution: Refactor indent.c slightly and remove strlen() calls (John Marriott)
+
+Patch 9.1.1329
+Problem: cannot get information about command line completion
+Solution: Add CmdlineLeavePre autocommand and cmdcomplete_info() MNV
+ script function (Girish Palya)
+
+Patch 9.1.1330
+Problem: may receive E315 in terminal
+Solution: Call check_cursor() (Hirohito Higashi).
+
+Patch 9.1.1331
+Problem: Leaking memory with cmdcomplete() (zeertzjq, after v9.1.1329)
+Solution: Free the memory (Girish Palya).
+
+Patch 9.1.1332
+Problem: MNV9: segfault when using super within a lambda (lifepillar)
+Solution: Inherit the class from the current function (Yegappan Lakshmanan).
+
+Patch 9.1.1333
+Problem: Coverity: complains about unutilized variable
+Solution: Initialize typval properly
+
+Patch 9.1.1334
+Problem: Coverity complains about unchecked return value
+Solution: Cast return value to (void)
+
+Patch 9.1.1335
+Problem: Coverity complains about Null pointer dereferences
+Solution: Before accessing ccline->cmdbuff check that ccline is not NULL
+
+Patch 9.1.1336
+Problem: comment plugin does not support case-insensitive
+ 'commentstring' (char101)
+Solution: Use pattern '\c' to make the regex case-insensitive (Maxim Kim).
+
+Patch 9.1.1337
+Problem: Undo corrupted with 'completeopt' "preinsert" when switching
+ buffer or window.
+Solution: Do not delete preinsert text when switching buffer or window
+ (zeertzjq).
+
+Patch 9.1.1338
+Problem: Calling expand() interferes with cmdcomplete_info() (after 9.1.1329)
+Solution: Only clear cmdline_orig when starting/ending cmdline mode (zeertzjq)
+
+Patch 9.1.1339
+Problem: missing out-of-memory checks for enc_to_utf16() and utf16_to_enc()
+Solution: Add out-of-memory checks and fix a few other minor issues
+ (John Marriott)
+
+Patch 9.1.1340
+Problem: cannot complete :filetype arguments (Phạm Bình An)
+Solution: Add :filetype ex command completion, add "filetypecmd"
+ completion type for getcompletion()
+
+Patch 9.1.1341
+Problem: Cannot define completion triggers and act upon it
+Solution: Add the new option 'isexpand' and add the complete_match()
+ function to return the completion matches according to the
+ 'isexpand' setting (glepnir)
+
+Patch 9.1.1342
+Problem: Shebang filetype detection can be improved
+Solution: Improve detection logic (Eisuke Kawashima)
+
+Patch 9.1.1343
+Problem: filetype: IPython files are not recognized (user202729).
+Solution: Detect *.ipy files as python filetype.
+
+Patch 9.1.1344
+Problem: double free in f_complete_match() (after v9.1.1341)
+Solution: Remove additional free of trig pointer, correctly free
+ regmatch.regprog and before_cursor in the error case.
+
+Patch 9.1.1345
+Problem: tests: Test_xxd_color2() test failure dump diff is misleading
+Solution: Ensure the reference dump and the test dump are both processed the
+ same (Drew Vogel).
+
+Patch 9.1.1346
+Problem: missing out-of-memory check in textformat.c
+Solution: Add out-of-memory check, add small optimizations to
+ internal_format() and same_leader() (John Marriott)
+
+Patch 9.1.1347
+Problem: small problems with gui_w32.c
+Solution: Fix compile warnings and refactor code (John Marriott)
+
+Patch 9.1.1348
+Problem: still E315 with the terminal feature (user202729)
+Solution: Call update_topline() in limit_scrollback() (Hirohito Higashi).
+
+Patch 9.1.1349
+Problem: CmdlineLeavePre may trigger twice (after v9.1.1329)
+Solution: Check that the key was typed, trigger it when it wasn't before
+ (Girish Palya).
+
+Patch 9.1.1350
+Problem: tests: typo in Test_CmdlineLeavePre_cabbr() (after v9.1.1349)
+Solution: Fix typo, disable failing test on Windows for now (Girish Palya).
+
+Patch 9.1.1351
+Problem: Return value of getcmdline() inconsistent in CmdlineLeavePre
+ when leaving cmdline in different ways (after v9.1.1329).
+Solution: Trigger CmdlineLeavePre before calling abandon_cmdline() so
+ that getcmdline() can return the command line (zeertzjq).
+
+Patch 9.1.1352
+Problem: style: inconsistent indent in insexpand.c
+Solution: Fix indentation (Hirohito Higashi).
+
+Patch 9.1.1353
+Problem: missing change from v9.1.1350
+Solution: Update the test Test_CmdlineTrigger() (Girish Palya).
+
+Patch 9.1.1354
+Problem: tests: Test_terminalwinscroll_topline() fails on Windows
+Solution: Instead of disabling it in Github Actions runners, disable it
+ for all Windows runs.
+
+Patch 9.1.1355
+Problem: The pum_redraw function is too complex and difficult to
+ maintain with nested loops and mixed responsibilities handling
+ both RTL and LTR text rendering.
+Solution: Extracted core rendering logic into dedicated helper functions
+ (pum_display_rtl_text, pum_display_ltr_text, pum_draw_scrollbar,
+ pum_process_item) while preserving the original behavior. This
+ improves code readability and maintainability (glepnir).
+
+Patch 9.1.1356
+Problem: MNV9: crash when unletting variable
+Solution: Fix crash, allow to use :unlet (Hirohito Higashi).
+
+Patch 9.1.1357
+Problem: MNV incorrectly escapes tags containing "[" in a help buffer
+Solution: Check if the buffer has the "help" filetype set, instead of
+ already being a help buffer (Phạm Bình An).
+
+Patch 9.1.1358
+Problem: if_lua: compile warnings with gcc15
+Solution: Update function prototypes (lilydjwg).
+
+Patch 9.1.1359
+Problem: filetype: GNU Radio config files are not recognized.
+Solution: Detect GNU Radio config files as confini filetype. Only
+ allow '#' as start of comment in confini syntax (zeertzjq).
+
+Patch 9.1.1360
+Problem: filetype: GNU Radio companion files are not recognized
+Solution: Detect *.grc files as xml or yaml filetype depending on the
+ first line (zeertzjq).
+
+Patch 9.1.1361
+Problem: [security]: Possible to open more windows into a closing
+ buffer without splitting, bypassing existing "b_locked_split"
+ checks and triggering use-after-free
+Solution: Disallow switching to a closing buffer. Editing a closing
+ buffer (via ":edit", etc.) was fixed in v9.1.0764, but add an
+ error message and check just "b_locked_split", as "b_locked"
+ is necessary only when the buffer shouldn't be wiped, and may
+ be set for buffers that are in-use but not actually closing
+ (Sean Dewar).
+
+Patch 9.1.1362
+Problem: MNV9: type ignored when adding tuple to instance list var
+ (Lifepillar)
+Solution: When getting the typval of class and object member variables,
+ set the variable type (Yegappan Lakshmanan).
+
+Patch 9.1.1363
+Problem: style: inconsistent indentation in various files
+Solution: Fix style, updated codestyle test (Naruhiko Nishino).
+
+Patch 9.1.1364
+Problem: style: more indentation issues
+Solution: Fix indentation style (Yegappan Lakshmanan).
+
+Patch 9.1.1365
+Problem: MS-Windows: compile warnings and too many strlen() calls in
+ os_mswin.c
+Solution: Refactor os_mswin.c and fix the warning (John Marriott).
+
+Patch 9.1.1366
+Problem: v9.1.1364 unintentionally changed sign.c and sound.c
+Solution: Revert those parts, adjust the test (Hirohito Higashi).
+
+Patch 9.1.1367
+Problem: too many strlen() calls in gui.c
+Solution: Refactor gui.c slightly (John Marriott).
+
+Patch 9.1.1368
+Problem: GTK3 and GTK4 will drop numeric cursor support.
+Solution: Adopt GTK3 code and use CSS cursor convention (Drew Vogel).
+
+Patch 9.1.1369
+Problem: configure still using autoconf 2.71
+Solution: Regenerate with autoconf 2.72.
+
+Patch 9.1.1370
+Problem: CI Tests favor GTK2 over GTK3
+Solution: Install GTK3 dependencies and debug packages for CI workflows,
+ update ASAN suppression list, update required dependency
+ checks for the tests (Drew Vogel).
+
+Patch 9.1.1371
+Problem: style: indentation issue in insexpand.c
+Solution: Update style (glepnir).
+
+Patch 9.1.1372
+Problem: style: braces issues in various files
+Solution: Fix style (Hirohito Higashi).
+
+Patch 9.1.1373
+Problem: Flag checking logic uses a temporary variable and multiple
+ bitwise operations in insexpand.c
+Solution: Consolidate into a single equality check using bitwise OR and
+ comparison (glepnir).
+
+Patch 9.1.1374
+Problem: Currently, 'smartcase' is respected when completing keywords
+ using <C-N>, <C-P>, <C-X><C-N>, and <C-X><C-P>. However, when
+ a user continues typing and the completion menu is filtered
+ using cached matches, 'smartcase' is not applied. This leads
+ to poor-quality or irrelevant completion suggestions, as shown
+ in the example below.
+Solution: When filtering cached completion items after typing additional
+ characters, apply case-sensitive comparison if 'smartcase' is
+ enabled and the typed pattern includes uppercase characters.
+ This ensures consistent and expected completion behavior
+ (Girish Palya).
+
+Patch 9.1.1375
+Problem: heap use-after-free possible when autocommands switch away from the
+ quickfix dummy buffer, but leave it open in a window.
+Solution: Close its windows first before attempting the wipe (Sean Dewar).
+
+Patch 9.1.1376
+Problem: when failing to wipeout a quickfix dummy buffer, it will
+ remain as a dummy buffer, despite being kept.
+Solution: Clear its dummy BF_DUMMY flag in this case (Sean Dewar).
+
+Patch 9.1.1377
+Problem: Some GTK3 users experienced unexpectedly small windows at
+ startup (after v9.1.1368, @berggeist, Tony Mechelynck)
+Solution: Update window manager hints in gui_mch_open, partly revert
+ v9.1.1370 (Drew Vogel).
+
+Patch 9.1.1378
+Problem: When 'signcolumn' is set to `number` but a line has a sign
+ without text, the line number disappears (finite-state-machine)
+Solution: Verify that a sign actually contains text before rendering the
+ line number (glepnir).
+
+Patch 9.1.1379
+Problem: MS-Windows: error when running emnv when space in path of MNV
+Solution: Properly parse quoted strings (Miguel Barro)
+
+Patch 9.1.1380
+Problem: When an autocommand executes for a non-current buffer,
+ 'eventignorewin' is only checked from the buffer's last
+ wininfo (overwrites win_ignore in the loop), not from the
+ value of 'eventignorewin' in all windows showing the buffer as
+ described (after v9.1.1084)
+Solution: Fix the check and don't use wininfo, as that may only contain
+ windows that recently showed the buffer. Consider all the
+ buffer's windows in all tabpages (Sean Dewar).
+
+Patch 9.1.1381
+Problem: Cannot return to the original text after selecting the next
+ item when the currently selected item is the last one.
+Solution: When continuing to move down past the last item, locate the
+ original completion at the head/tail nodes of the completed
+ linked list (glepnir).
+
+Patch 9.1.1382
+Problem: if_ruby: unused compiler warnings from ruby internals
+Solution: disable -Wunused-parameter for if_ruby internal code (Philip H.).
+
+Patch 9.1.1383
+Problem: When a space character is used as a trigger in 'isexpand' option
+ it doesn't get recognized because skip_to_option_part() skips
+ spaces after a comma, treating them as option separators
+ rather than option value (after v9.1.1341)
+Solution: Manually set the part to a space character (glepnir).
+
+Patch 9.1.1384
+Problem: still some problem with the new tutors filetype plugin
+Solution: Refactor code to enable/disable tutor mode into
+ tutor#EnableInteractive() function, include a test
+ (Phạm Bình An).
+
+Patch 9.1.1385
+Problem: Loop that ensures "w_skipcol" is zero with 'nosmoothscroll'
+ for (half)-page scrolling is inefficient.
+Solution: Calculate the required "count" instead of looping until
+ "w_skipcol" is zero (Luuk van Baal).
+
+Patch 9.1.1386
+Problem: MS-Windows: some minor problems building on AARCH64
+Solution: Update Make_cyg_ming with aarch64 specific changes,
+ document how to build on aarch64 using msys2 packages.
+
+Patch 9.1.1387
+Problem: buflist_new() leaks ffname and fails to reuse curbuf when
+ autocommands from buf_freeall change curbuf. Plus, a new
+ buffer is not allocated in this case, despite what the comment
+ above claims.
+Solution: Remove the condition so ffname is not leaked and so a new
+ buffer is allocated like before v8.2.4791. It should not be
+ possible for undo_ftplugin or buf_freeall autocommands to
+ delete the buffer as they set b_locked, but to stay consistent
+ with other uses of buf_freeall, guard against that anyway
+ (Sean Dewar).
+
+Patch 9.1.1388
+Problem: One-off error in "count" to make "w_skipcol" zero with
+ 'nosmoothscroll' page scrolling when last virtual line
+ in a buffer line is exactly the entire window width
+ (Hirohito Higashi).
+Solution: Properly compute the smallest integer value necessary
+ to make "w_skipcol" zero (Luuk van Baal).
+
+Patch 9.1.1389
+Problem: Cannot get completion startcol when space is not the first
+ trigger character (after v9.1.1383)
+Solution: Detect the next comma followed by a space in the option string
+ and use in next compare loop (glepnir).
+
+Patch 9.1.1390
+Problem: style: more wrong indentation
+Solution: reformat a few more places (Yegappan Lakshmanan).
+
+Patch 9.1.1391
+Problem: MNV does not have a tabpanel
+Solution: Include the tabpanel feature (Naruhiko Nishino, thinca).
+
+Patch 9.1.1392
+Problem: missing Patch number (Tony Mechelynck)
+Solution: add missing Patche number.
+
+Patch 9.1.1393
+Problem: The check in buf_freeall that restores curwin subtly prevents
+ leaving an unloaded buffer in a window when reusing curbuf, if
+ autocommands switch to a different buffer.
+Solution: Add a test case that covers this. Also ensure splitting isn't
+ possible, as that could do the same (Sean Dewar).
+
+Patch 9.1.1394
+Problem: tabpanel not correctly redrawn on tabonly
+ (Maxim Kim, after v9.1.1391)
+Solution: Force redraw of the tabpanel, tweak style (Hirohito Higashi).
+
+Patch 9.1.1395
+Problem: Search_stat not reset when pattern differs in case
+ (tahzibijafar)
+Solution: Use STRNCMP instead of MB_STRNICMP macro.
+
+Patch 9.1.1396
+Problem: The 'grepformat' option is global option, but it would be
+ useful to have it buffer-local, similar to 'errorformat' and
+ other quickfix related options (Dani Dickstein)
+Solution: Add the necessary code to support global-local 'grepformat',
+ allowing different buffers to parse different grep output
+ formats (glepnir).
+
+Patch 9.1.1397
+Problem: tabpanel not correctly updated on :tabonly (Maxim Kim)
+Solution: Force a redraw, take 'equalalways' into account (Naruhiko Nishino).
+
+Patch 9.1.1398
+Problem: When items are combined with user-defined highlight attributes
+ (e.g., strikethrough), trunc inherits these attributes, making
+ the text difficult to read.
+Solution: Trunc now uses the original Pmenu and PmenuSel highlight
+ attributes (glepnir).
+
+Patch 9.1.1399
+Problem: tests: test_codestyle fails for auto-generated files.
+ While those files are already ignored in Test_source_Files(),
+ the newly added Test_indent_of_source_files() does not filter
+ those out and causes test failures on appveyor.
+Solution: Factor out the generation of all c files into a common function
+ and filter out auto-generated files if_ole.h, iid_ole.c and
+ dlldata.c
+
+Patch 9.1.1400
+Problem: [security]: use-after-free when evaluating tuple fails
+Solution: Return early in case of an error (Yegappan Lakshmanan).
+
+Patch 9.1.1401
+Problem: list not materialized in prop_list() (Nickwiz)
+Solution: Materialize list before accessing it.
+
+Patch 9.1.1402
+Problem: multi-byte mappings not properly stored in session file
+Solution: Unescape the mapping before writing out the mapping, prefer
+ single-byte mapping name if possible (Miguel Barro).
+
+Patch 9.1.1403
+Problem: expansion of 'tabpanelopt' value adds wrong values
+ (Shane-XB-Qian, after v9.1.1391).
+Solution: Update tabpanelopt expansion function and expand only valid
+ values (Hirohito Higashi).
+
+Patch 9.1.1404
+Problem: wrong link to Chapter 2 in mnv-01-beginner.tutor
+Solution: Fix the link to Chapter 2, add test for links in tutor files
+ (Phạm Bình An).
+
+Patch 9.1.1405
+Problem: tests: no test for mapping with special keys in session file.
+Solution: Add a special keys to an existing test. Also test with UTF-8
+ characters containing 0x80 or 0x9b bytes (zeertzjq).
+
+Patch 9.1.1406
+Problem: crash when importing invalid tuple (Yang LUO, Yanju Chen)
+Solution: Set type to VAR_UNKNOWN, so that it isn't freed
+ (Yegappan Lakshmanan).
+
+Patch 9.1.1407
+Problem: Can't use getpos('v') in OptionSet when using setbufvar().
+Solution: Don't reset Visual selection when switching to the same
+ buffer (zeertzjq).
+
+Patch 9.1.1408
+Problem: not easily possible to complete from register content
+Solution: Add register-completion submode using i_CTRL-X_CTRL-R
+ (glepnir).
+
+Patch 9.1.1409
+Problem: using f-flag in 'complete' conflicts with Neomnvs filename
+ completion (glepnir, after v9.1.1301).
+Solution: Use upper-case "F" flag for completion functions (Girish Palya).
+
+Patch 9.1.1410
+Problem: out-of-bounds access with 'completefunc' (csetc)
+Solution: Check if it is safe to advance cpt_sources_index (Girish Palya).
+
+Patch 9.1.1411
+Problem: crash when calling non-existing function for tabpanel (Yamagi,
+ after v9.1.1391)
+Solution: Check if there was an error and if there was, set tabpanel
+ option to empty to prevent showing errors on every redraw.
+
+Patch 9.1.1412
+Problem: tests: Test_tabpanel_tabonly() fails on larger screens
+Solution: Re-generate screendump file for 78 column large terminal.
+
+Patch 9.1.1413
+Problem: spurious CursorHold triggered in GUI on startup
+Solution: Init global did_cursorhold flag to true (Gary Johnson).
+
+Patch 9.1.1414
+Problem: MS-Windows: compile warnings in os_win32.c
+Solution: Update function declarations, correctly access param arg in
+ set_flag() using (sig_atomic_t) cast (John Marriott).
+
+Patch 9.1.1415
+Problem: potential use-after free when there is an error in 'tabpanel'
+ option (@char101, after v9.1.1391)
+Solution: Check if p_tpl has been set to null before accessing it again.
+
+Patch 9.1.1416
+Problem: completion limits not respected when using fuzzy completion
+ (Maxim Kim)
+Solution: Trim completion array (Girish Palya).
+
+Patch 9.1.1417
+Problem: missing info about register completion in complete_info()
+ (after v9.1.1408)
+Solution: update documentation and mention that register is used as
+ source, add a test (glepnir).
+
+Patch 9.1.1418
+Problem: configures GUI auto detection favors GTK2
+Solution: make configure favor GTK3 over GTK2 for the GUI
+ when auto detecting the gui toolkit (Drew Vogel).
+
+Patch 9.1.1419
+Problem: It is difficult to ignore all but some events.
+Solution: Add support for a "-" prefix syntax in '(win)eventignore' that
+ subtracts an event from the ignored set if present (Luuk van Baal).
+
+Patch 9.1.1420
+Problem: tests: could need some more tests for shebang lines
+Solution: Add more shebang patterns to test_filetype.mnv (Eisuke Kawashima).
+
+Patch 9.1.1421
+Problem: tests: need a test for the new-style tutor.tutor, Patch
+ 9.1.1384 broke the expected positions for the signs
+Solution: Update all number keys in tutor.tutor.json to match the
+ correct line numbers in tutor.tutor, replace tabs by spaces,
+ add a screen-dump test to verify it does not regress (Pham Bình An).
+
+Patch 9.1.1422
+Problem: scheduling of complete function can be improved
+Solution: Call user completion functions earlier when just determining
+ the insertion column (Girish Palya).
+
+Patch 9.1.1423
+Problem: :tag command not working correctly using MNV9 Script
+Solution: Inject a ':' before the numeric address, to make the command
+ valid in MNV9 context
+
+Patch 9.1.1424
+Problem: PMenu selection broken with multi-line selection and limits
+ (Maxim Kim)
+Solution: Update completion match index when limiting the completion
+ sources (Girish Palya).
+
+Patch 9.1.1425
+Problem: tabpanel: there are still some problems with the tabpanel with
+ column handling
+Solution: Fix the problems and refactor Tabpanel feature (Hirohito Higashi).
+
+Patch 9.1.1426
+Problem: CTRL-X CTRL-R only completes individual words from registers,
+ making it difficult to insert complete register content.
+Solution: Add consecutive CTRL-X CTRL-R support - first press completes
+ words, second press completes full register lines, similar to
+ CTRL-X CTRL-L and CTRL-X CTRL-P behavior (glepnir).
+
+Patch 9.1.1427
+Problem: rendering artifacts with the tabpanel (char101)
+Solution: Prevent double redraw, use Columns instead of frame width
+ (Hirohito Higashi)
+
+Patch 9.1.1428
+Problem: Completion: register completion needs cleanup
+Solution: Slightly refactor get_register_completion() (glepnir).
+
+Patch 9.1.1429
+Problem: dragging outside the tabpanel changes tabpagenr (char101)
+Solution: Set in_tab_line and in_tabpanel variables (Hirohito Higashi).
+
+Patch 9.1.1430
+Problem: tabpanel may flicker in the GUI
+Solution: Call scroll_start() and scroll_region_reset() (Hirohito Higashi).
+
+Patch 9.1.1431
+Problem: Hit-Enter Prompt when loading session files
+Solution: Use set+= for 'shortmess' to keep the existing flags (Miguel Barro).
+
+Patch 9.1.1432
+Problem: GTK GUI: Buffer menu does not handle unicode correctly
+Solution: Get rid of the BMHash() function (SUN Haitao).
+
+Patch 9.1.1433
+Problem: Unnecessary :if in session where both branches have the same
+ effect (after 9.1.1431).
+Solution: Remove the superfluous :if (zeertzjq).
+
+Patch 9.1.1434
+Problem: MS-Windows: missing out-of-memory checks in os_win32.c
+Solution: Add out-of-memory checks to os_win32.c (John Marriott).
+
+Patch 9.1.1435
+Problem: completion: various flaws in fuzzy completion
+Solution: Fix the issues (Girish Palya).
+
+Patch 9.1.1436
+Problem: GUI control code is displayed on the console on startup
+Solution: Check if MNV is starting up (Hirohito Higashi).
+
+Patch 9.1.1437
+Problem: MS-Windows: internal compile error in uc_list() with VS 17.14
+ (ibear)
+Solution: Refactor code slightly (Mike Williams).
+
+Patch 9.1.1438
+Problem: tests: Test_breakindent_list_split() fails (Phạm Bình An)
+Solution: Always reset "&columns" and "&lines" for GUI builds
+ (Aliaksei Budavei).
+
+Patch 9.1.1439
+Problem: Last diff folds not merged (after v8.1.1922)
+Solution: Loop over all windows in the current tabpage and update all
+ folds (Gary Johnson).
+
+Patch 9.1.1440
+Problem: too many strlen() calls in os_win32.c
+Solution: Refactor code and remove calls to strlen() (John Marriott).
+
+Patch 9.1.1441
+Problem: completion: code can be improved
+Solution: Remove reposition_match() and use mergesort_list(),
+ for fuzzy completion, sort by fuzzy score immediately after
+ setting a new leader (Girish Palya).
+
+Patch 9.1.1442
+Problem: tests: Test_diff_fold_redraw() is insufficient
+ (after v9.1.1439, Christ van Willegen)
+Solution: Improve the test (Gary Johnson).
+
+Patch 9.1.1443
+Problem: potential buffer underflow in insertchar()
+Solution: Verify that end_len is larger than zero (jinyaoguo).
+
+Patch 9.1.1444
+Problem: Unused assignment in set_fuzzy_score() (after 9.1.1441).
+Solution: Remove it (zeertzjq).
+
+Patch 9.1.1445
+Problem: negative matchfuzzy scores although there is a match (Maxim Kim).
+Solution: Reset the score if a match has been found but the score is
+ negative (Girish Palya).
+
+Patch 9.1.1446
+Problem: filetype: cuda-gdb config files are not recognized
+Solution: Detect .cuda-gdbinit and cuda-gdbinit files as gdb filetype
+ (Wu Zhenyu).
+
+Patch 9.1.1447
+Problem: completion: crash when backspacing with fuzzy completion
+Solution: Don't dereference compl_first_match when it's NULL (zeertzjq).
+
+Patch 9.1.1448
+Problem: tabpanel is not displayed correctly when msg_scrolled
+Solution: Remove the msg_scrolled condition (Hirohito Higashi).
+
+Patch 9.1.1449
+Problem: typo in pum_display()
+Solution: Update the comment, remove empty new lines (glepnir)
+
+Patch 9.1.1450
+Problem: Session has wrong arglist with :tcd and :arglocal.
+Solution: Also use absolute path for :argadd when there is tabpage-local
+ directory (zeertzjq).
+
+Patch 9.1.1451
+Problem: tabpanel rendering artifacts when scrolling
+Solution: Update scrolling logic (Hirohito Higashi).
+
+Patch 9.1.1452
+Problem: completion: redundant check for completion flags
+Solution: Refactor code slightly (glepnir).
+
+Patch 9.1.1453
+Problem: tests: Test_geometry() may fail (Gary Johnson)
+Solution: Allow a slightly smaller value when checking the number of
+ lines.
+
+Patch 9.1.1454
+Problem: Missing test case for pum display on a wrapped line.
+Solution: Add a test case to cover pum behavior at line break positions
+ (glepnir).
+
+Patch 9.1.1455
+Problem: Haiku: dailog objects created with no reference
+Solution: Delete the objects before returning (jinyaoguo)
+
+Patch 9.1.1456
+Problem: comment plugin fails toggling if 'cms' contains \
+Solution: Escape backslash (Maxim Kim).
+
+Patch 9.1.1457
+Problem: compile warning with tabpanelopt
+Solution: Declare arg as UNUSED (John Marriott).
+
+Patch 9.1.1458
+Problem: tabpanel: tabs not properly updated with 'stpl'
+Solution: remember the Column offset per tabpage (Hirohito Higashi).
+
+Patch 9.1.1459
+Problem: xxd prints color escape sequences for every octet
+ even if the color doesn't change
+Solution: use separate arrays for colors and text and only
+ print escape sequences when the color changes (Emanuel Krollmann).
+
+Patch 9.1.1460
+Problem: MS-Windows: too many strlen() calls in os_win32.c
+Solution: Refactor code and remove calls to strlen() and wcscat()
+ (John Marriott).
+
+Patch 9.1.1461
+Problem: tabpanel: tabpanel vanishes with popup menu
+Solution: Remove pum-related test in tabpanel_leftcol(), refactor a few
+ related functions (Hirohito Higashi).
+
+Patch 9.1.1462
+Problem: missing change from Patch v9.1.1461
+Solution: Change wrong TPL_LCOL macro in a few more places.
+
+Patch 9.1.1463
+Problem: Integer overflow in getmarklist() after linewise operation.
+Solution: Don't add 1 to MAXCOL (zeertzjq).
+
+Patch 9.1.1464
+Problem: gv does not work in operator-pending mode (liushapku)
+Solution: remove the check for checkclearop in nv_gv_cmd() (phanium).
+
+Patch 9.1.1465
+Problem: tabpanel: not correctly drawn with 'equalalways'
+Solution: Call win_equal() (Hirohito Higashi).
+
+Patch 9.1.1466
+Problem: filetype: not all lex files are recognized
+Solution: Detect *.ll as lex, llvm or lifelines filetype, depending on
+ the content (Eisuke Kawashima).
+
+Patch 9.1.1467
+Problem: too many strlen() calls
+Solution: Change expand_env() to return string length (John Marriott).
+
+Patch 9.1.1468
+Problem: filetype: bright(er)script files are not recognized
+Solution: Detect *.bs files as brighterscript filetype and *.brs as
+ brightscript filetype, include filetype plugins (Riley Bruins).
+
+Patch 9.1.1469
+Problem: potential buffer-underflow with invalid hl_id (mugitya03)
+Solution: Assert that the return-code of syn_get_final_id() if > 0
+
+Patch 9.1.1470
+Problem: use-after-free with popup callback on error
+ (Brian Carbone, lifepillar)
+Solution: Check if the popup window is valid before accessing it.
+
+Patch 9.1.1471
+Problem: completion: inconsistent ordering with CTRL-P (zeertzjq).
+Solution: Reset compl_curr_match when using CTRL-P (Girish Palya).
+
+Patch 9.1.1472
+Problem: if_python: PySequence_Fast_{GET_SIZE,GET_ITEM} removed with
+ python3.14 in stable ABI
+Solution: use PySequence_{Size,GetItem} instead (Zdenek Dohnal)
+
+Patch 9.1.1473
+Problem: inconsistent range arg for :diffget/diffput
+Solution: Fix the range specification, place the cursor for :diffput and
+ :diffget consistently on the last line (Yee Cheng Chin)
+
+Patch 9.1.1474
+Problem: missing out-of-memory check in mark.c
+Solution: bail out, if mark_line() returns NULL (John Marriott).
+
+Patch 9.1.1475
+Problem: completion: regression when "nearest" in 'completeopt'
+Solution: Fix compare function (Girish Palya).
+
+Patch 9.1.1476
+Problem: missing out-of-memory checks in cmdexpand.c
+Solution: Add missing out-of-memory checks, re-order code (John Marriott).
+
+Patch 9.1.1476
+Problem: no easy way to deduplicate text
+Solution: Add the :uniq ex command (Hirohito Higashi).
+
+Patch 9.1.1478
+Problem: Unused assignment in ex_uniq() (after v9.1.1476)
+Solution: Remove the assignment and the wrong comments above (zeertzjq).
+
+Patch 9.1.1479
+Problem: regression when displaying localized percentage position
+ (after v9.1.1291)
+Solution: Calculate percentage first (Emir SARI).
+
+Patch 9.1.1480
+Problem: Turkish translation outdated
+Solution: Update Turkish translations, enable disabled test from v9.1.1479
+ (Emir SARI).
+
+Patch 9.1.1481
+Problem: gcc complains about uninitialized variable
+ (Tony Mechelynck, after v9.1.1476)
+Solution: Initialize variable.
+
+Patch 9.1.1482
+Problem: Topline is preemptively updated by line() in WinResized
+ autocmd with 'splitkeep' != "cursor".
+Solution: Set `skip_update_topline` when 'splitkeep' != "cursor" (Luuk van Baal)
+
+Patch 9.1.1483
+Problem: not possible to translation position in buffer
+Solution: use _() macro to mark the output as translatable (Emir SARI)
+
+Patch 9.1.1484
+Problem: tests: Turkish locale tests fails on Mac (after v9.1.1480).
+Solution: Skip the test Test_pos_percentage_in_turkish_locale() on Mac
+
+Patch 9.1.1485
+Problem: missing Wayland clipboard support
+Solution: Make it work (Foxe Chen).
+
+Patch 9.1.1486
+Problem: documentation issues with Wayland (after v9.1.1485)
+Solution: Tweak documentation style. Capitalize the first letter of
+ Wayland (Hirohito Higashi).
+
+Patch 9.1.1487
+Problem: :cl doesn't invoke :clist (after v9.1.1485)
+Solution: Fix order of definition in ex_cmds.h (Hirohito Higashi).
+
+Patch 9.1.1488
+Problem: configure: using obsolete macro AC_PROG_GCC_TRADITIONAL
+Solution: Drop it from configure.ac, regenerate auto/configure.
+
+Patch 9.1.1489
+Problem: terminal: no visual highlight of empty cols when 'listchars'
+ is empty (Yousef Mohammed)
+Solution: Reset wlv.win_attr when column is zero and we are drawing a
+ terminal buffer.
+
+Patch 9.1.1490
+Problem: 'wildchar' does not work in search contexts
+Solution: implement search completion when 'wildchar' is typed (Girish Palya).
+
+Patch 9.1.1491
+Problem: missing out-of-memory checks in cmdexpand.c
+Solution: Add out-of-memory checks for expand_files_and_dirs(),
+ ExpandUserDefined() and ExpandUserList() (John Marriott).
+
+Patch 9.1.1492
+Problem: tests: failure when Wayland compositor fails to start
+Solution: Instead of throwing an error causing a failure, throw
+ "Skipped", so that the MNV test suite continues and does not fail.
+
+Patch 9.1.1493
+Problem: manually comparing positions on buffer (after v9.1.1490)
+Solution: Use the LTOREQ_POS() macro, fix a few other minor style issues
+ (glepnir).
+
+Patch 9.1.1494
+Problem: runtime(tutor): no French translation for Chapter 2
+Solution: Add and refine French translation of tutor2, update French
+ mnvtutor manpage (Damien Lejay)
+
+Patch 9.1.1495
+Problem: Wayland: uses $XDG_SEAT to determine seat to use
+ (dr0bz, after v9.1.1485)
+Solution: Do not try to determine the seat from $XDG_SEAT, remove the
+ code that checks for this environment variable (Foxe Chen).
+
+Patch 9.1.1496
+Problem: terminal: still not highlighting empty cells correctly
+ (Yousef Mohammed, after v9.1.1489)
+Solution: Use vcol instead of col.
+
+Patch 9.1.1497
+Problem: Link error with shm_open() (gcanat, after v9.1.1485).
+Solution: use AC_LINK_IFELSE instead of AC_COMPILE_IFELSE.
+
+Patch 9.1.1498
+Problem: completion: Functions specified in the 'complete' option did
+ not have the leader string removed when called with findstart = 0,
+ unlike 'omnifunc' behavior
+Solution: Update behaviour and make behaviour consistent (Girish Palya).
+
+Patch 9.1.1499
+Problem: MS-Windows: no indication of ARM64 architecture
+Solution: Add ARM64 to version output and include in nsis installer
+ (RestorerZ)
+
+Patch 9.1.1500
+Problem: if_python: typo in python error variable
+Solution: Fix typo (Damien Lejay).
+
+Patch 9.1.1501
+Problem: filetype: flix files are not recognized
+Solution: Detect *.flix files as flix filetype (0xadk).
+
+Patch 9.1.1502
+Problem: filetype: quickbms files are not recognized
+Solution: Detect *.bms files as quickbms filetype (0xadk).
+
+Patch 9.1.1503
+Problem: filetype: haxe files are not recognized
+Solution: Detect *.hx files as haxe filetype (0xadk).
+
+Patch 9.1.1504
+Problem: filetype: numbat files are not recognized
+Solution: Detect *.nbt files as numbat filetype (0xadk).
+
+Patch 9.1.1505
+Problem: not possible to return command-line completion type for :ex
+ command
+Solution: Make getcmdcompltype() accept an optional and return the
+ command-line completion for that arg (Shougo Matsushita).
+
+Patch 9.1.1506
+Problem: tests: missing cleanup test_override('char_avail', 0) in
+ Test_search_cmdline_incsearch_highlight().
+Solution: Add the missing cleanup (zeertzjq).
+
+Patch 9.1.1507
+Problem: File paths change from symlink to target path after :cd command
+ when editing files through symbolic links
+Solution: Add "~" flag to 'cpoptions' to control symlink resolution (glepnir).
+
+Patch 9.1.1508
+Problem: String manipulation can be improved in cmdexpand.c
+Solution: Refactor cmdexpand.c to remove calls to STRLEN()/STRMOVE()/STRCAT()
+ (John Marriott).
+
+Patch 9.1.1509
+Problem: Patch 9.1.1505 was not good
+Solution: Revert "Patch 9.1.1505 for :ex command" and instead add the
+ getcompletiontype() function (Hirohito Higashi).
+
+Patch 9.1.1510
+Problem: Search completion may use invalid memory (after 9.1.1490).
+Solution: Don't get two line pointers at the same time (zeertzjq).
+
+Patch 9.1.1511
+Problem: tests: two edit tests change v:testing from 1 to 0.
+Solution: Don't change v:testing in these two tests, since it's already
+ set to 1 in runtest.mnv (zeertzjq).
+
+Patch 9.1.1512
+Problem: completion: can only complete from keyword characters
+Solution: Remove this restriction, allow completion functions when
+ called from i_CTRL-N/i_CTRL-P to be triggered from non-keyword
+ characters (Girish Palya).
+
+Patch 9.1.1513
+Problem: resizing MNV window causes unexpected internal window width
+ (chdiza, after v9.1.1465)
+Solution: Move the column calculation around (Hirohito Higashi).
+
+Patch 9.1.1514
+Problem: coverity complains about the use of tmpfile()
+Solution: Use mnv_tempname() instead to create anonym file.
+
+Patch 9.1.1515
+Problem: memcpy() in ExpandRTDir_int() may create unterminated strings
+Solution: Use mnv_snprintf() to construct complete paths safely (glepnir).
+
+Patch 9.1.1516
+Problem: tests: no test that 'incsearch' is updated after accepting
+ search completion.
+Solution: Add a test case (zeertzjq).
+
+Patch 9.1.1517
+Problem: filetype: autopkgtest files are not recognized
+Solution: Detect */debian/tests/control files as autopkgtest filetype
+ (James McCoy).
+
+Patch 9.1.1518
+Problem: getcompletiontype() crashes when no completion is available
+ (after v9.1.1509).
+Solution: Don't call set_expand_context() (zeertzjq).
+
+Patch 9.1.1519
+Problem: Test_termdebug_decimal_breakpoints() fails with List index out
+ of range, because when adding the second breakpoint, the
+ cursor is still on the very first line
+Solution: Run the program, so that it will break at the very first
+ defined breakpoint and then once we are in the program,
+ set further breakpoints.
+
+Patch 9.1.1520
+Problem: When using `/` or `?` in command-line mode with 'ignorecase' and
+ 'smartcase' enabled, the completion menu could show items that
+ don't actually match any text in the buffer due to case mismatches
+Solution: Instead of validating menu items only against the user-typed
+ pattern, the new logic also checks whether the completed item
+ matches actual buffer content. If needed, it retries the match
+ using a lowercased version of the candidate, respecting
+ smartcase semantics.
+
+Patch 9.1.1521
+Problem: When 'wildmode' is set to include "noselect", the popup menu (pum)
+ incorrectly retained its scroll position when reopened. This
+ meant that after scrolling down through the menu with `<C-n>`,
+ reopening the menu (e.g., by retyping the command and
+ triggering completion again) would show the menu starting from
+ the previously scrolled position, rather than from the top.
+Solution: Ensure that the popup menu resets its scroll position to the
+ top when reopened (Girish Palya).
+
+Patch 9.1.1522
+Problem: tests: still some ANSI escape sequences in test messages output
+Solution: Update the cleanup regexp to also handle those ANSI escape
+ sequences: `<esc>|2h` and `<esc>|31H`.
+
+Patch 9.1.1523
+Problem: tests: test_clipmethod fails in non X11 environment
+Solution: Test that $DISPLAY is available
+
+Patch 9.1.1524
+Problem: tests: too many imports in the test suite
+Solution: Clean up the imported scripts.
+
+Patch 9.1.1525
+Problem: tests: testdir is a bit messy
+Solution: Move test scripts into testdir/util/ directory.
+
+Patch 9.1.1526
+Problem: completion: search completion match may differ in case (techntools)
+Solution: Add "exacttext" to 'wildoptions' value (Girish Palya).
+
+Patch 9.1.1527
+Problem: MNV9: Crash when using string compound assignment with wrong
+ data type (lacygoill).
+Solution: Verify expected member type (Hirohito Higashi).
+
+Patch 9.1.1528
+Problem: completion: crash with getcompletion() (zeertzjq)
+Solution: Don't set may_expand_pattern in f_getcompletion(), unset
+ may_expand_pattern() once it is not longer needed (Girish Palya).
+
+Patch 9.1.1529
+Problem: Win32: the toolbar in the GUI is old and dated
+Solution: Include improved icons from Fatcow (CC by 3.0) (RestorerZ).
+
+Patch 9.1.1530
+Problem: Missing version change from v9.1.1529
+Solution: Update version.c with latest Patch.
+
+Patch 9.1.1531
+Problem: confusing error with nested legacy function (lacygoill)
+Solution: Clarify error message E1117 with :def or :func (Hirohito Higashi).
+
+Patch 9.1.1532
+Problem: termdebug: not enough ways to configure breakpoints
+Solution: Add the termdebug_config['signs'] config setting, rework the
+ termdebug test cases (Dimitry Ishenko).
+
+Patch 9.1.1533
+Problem: helptoc: does not handle code sections in markdown well (MNVWei).
+Solution: Skip over fenced code sections (lacygoill), add a test.
+
+Patch 9.1.1534
+Problem: unnecessary code in tabpanel.c
+Solution: Remove it (Hirohito Higashi).
+
+Patch 9.1.1535
+Problem: The maximum search count uses a hard-coded value of 99
+ (Andres Monge, Joschua Kesper)
+Solution: Make it configurable using the 'maxsearchcount' option.
+
+Patch 9.1.1536
+Problem: tests: test_plugin_comment.mnv uses :CheckScreenDump check but
+ doesn't actually use a screen dump.
+Solution: Use :CheckRunMNVInTerminal instead, remove a few empty lines.
+
+Patch 9.1.1537
+Problem: helptoc: some issues when parsing markdown code blocks (MNVWei)
+Solution: Assign nextline to curline before starting the next loop
+ iteration; when processing fenced code blocks, flip the
+ skip_fence variable, update the test to be more comprehensive.
+
+Patch 9.1.1539
+Problem: completion: messages don't respect 'shm' setting
+Solution: Turn off completion messages when 'shortmess' includes "c"
+ (Girish Palya).
+
+Patch 9.1.1540
+Problem: completion: menu state wrong on interruption (Maxim Kim)
+Solution: Call show_pum() if completion was interrupted (Girish Palya).
+
+Patch 9.1.1541
+Problem: MNV9: error when last enum value ends with a comma
+Solution: Allow trailing commas in enum values (Yegappan Lakshmanan).
+
+Patch 9.1.1542
+Problem: Coverity complains about uninitialized variable (Tony Mechelynck)
+Solution: Initialize variables.
+
+Patch 9.1.1543
+Problem: Wayland: clipboard appears to not be working (Fuad Veliev)
+Solution: Explicitly set selection each time (Foxe Chen).
+
+Patch 9.1.1544
+Problem: :retab cannot be limited to indentation only
+Solution: add the optional -indentonly parameter (Hirohito Higashi).
+
+Patch 9.1.1545
+Problem: Typo in os_unix.c
+Solution: Correct the typo (Foxe Chen).
+
+Patch 9.1.1546
+Problem: MNV9: error with has() and short circuit evaluation
+Solution: Only eval, if ctx_skip is not SKIP_YES (Yegappan Lakshmanan).
+
+Patch 9.1.1547
+Problem: Wayland: missing ifdef
+Solution: Add #ifdef around ch_log() call (Foxe Chen).
+
+Patch 9.1.1548
+Problem: filetype: OpenFGA files are not recognized
+Solution: Detect *.fga files as fga filetype, include an fga filetype
+ plugin (Riley Bruins).
+
+Patch 9.1.1549
+Problem: filetype: pkl files are not recognized
+Solution: Detect *.pkl files as pkl filetype, include a filetype plugin (Riley
+ Bruins).
+
+Patch 9.1.1550
+Problem: defaults: 'showcmd' is not enabled in non-compatible mode on Unix
+Solution: Always enable 'showcmd' in non-compatible mode, drop it from
+ defaults.mnv.
+
+Patch 9.1.1551
+Problem: [security]: path traversal issue in zip.mnv (@ax)
+Solution: Drop leading ../ on write of zipfiles, don't forcefully
+ overwrite existing files.
+
+Patch 9.1.1552
+Problem: [security]: path traversal issue in tar.mnv (@ax)
+Solution: Warn the user for such things, drop leading /, don't
+ forcefully overwrite files when writing temporary files,
+ refactor autoload/tar.mnv
+
+Patch 9.1.1553
+Problem: MNV9: crash when accessing a variable in if condition (lxhillwind)
+Solution: Skip indexing a list/tuple/dict/blob when short-circuiting an
+ if condition check (Yegappan Lakshmanan).
+
+Patch 9.1.1554
+Problem: MNV crashes during omnifunc completion inside the command-line
+ window ("q:") if the completion item attempts to open an "info"
+ preview window. This leads to a failed assert during execution.
+Solution: Avoid opening preview windows while inside the command-line
+ window to prevent the crash (Girish Palya).
+
+Patch 9.1.1555
+Problem: completion: repeated insertion and deletion of complete
+ functions
+Solution: Remove unnecessary insertion and deletion of leader text
+ during expansion of function present in 'complete' option
+ (Girish Palya).
+
+Patch 9.1.1556
+Problem: string handling in cmdexpand.c can be improved
+Solution: Improve string manipulation in cmdexpand.c (John Marriott).
+
+Patch 9.1.1557
+Problem: not possible to anchor specific lines in difff mode
+Solution: Add support for the anchoring lines in diff mode using the
+ 'diffanchor' option (Yee Cheng Chin).
+
+Patch 9.1.1558
+Problem: str2blob() treats NULL string and empty string differently
+Solution: Treats a NULL string the same as an empty string (zeertzjq).
+
+Patch 9.1.1559
+Problem: tests: Test_popup_complete_info_01() fails when run alone.
+Solution: Set buffer-local competeopt+=noinsert and add missing cleanup
+ in Test_popup_complete() (zeertzjq).
+
+Patch 9.1.1560
+Problem: configure: uses $PKG_CONFIG before it is defined
+Solution: Define $PKG_CONFIG earlier in the script (Christoffer Aasted).
+
+Patch 9.1.1561
+Problem: configure: wayland test can be improved
+Solution: Define $WAYLAND_CFLAGS, simplify the wayland tests
+ (Christoffer Aasted).
+
+Patch 9.1.1562
+Problem: close button "X" is visible in the non-GUI 'tabline', even
+ when the mouse is disabled
+Solution: Only show the button when 'mouse' contains any of the flags
+ "anvi" (Girish Palya).
+
+Patch 9.1.1563
+Problem: The ruler disappears after typing the second character during
+ insert mode completion, even when completion messages are
+ suppressed ('shortmess' includes "c"). This makes the UI
+ appear inconsistent.
+Solution: Ensure the ruler is restored during screen redraw when popup
+ completion is active (Girish Palya).
+
+Patch 9.1.1564
+Problem: Can open a popup window to a closing buffer, leading to the
+ buffer remaining open in the window after it's soon unloaded,
+ causing crashes.
+Solution: Check b_locked_split when opening a popup window to an
+ existing buffer (Sean Dewar).
+
+Patch 9.1.1565
+Problem: configure: does not consider tiny version for wayland
+Solution: Do not try to enable wayland for a tiny mnv version
+ (Christoffer Aasted).
+
+Patch 9.1.1566
+Problem: self-referenced enum may not get freed
+Solution: Test if it can be freed (Yegappan Lakshmanan).
+
+Patch 9.1.1567
+Problem: Crash when using inline diff mode (Ilya Grigoriev)
+Solution: Set tp_diffbuf to NULL when skipping a diff block (Yee Cheng Chin).
+
+Patch 9.1.1568
+Problem: need a few more default highlight groups
+Solution: Add Bold, Italic and BoldItalic default highlight groups
+ (Maxim Kim).
+
+Patch 9.1.1569
+Problem: tests: MNV9 tests can be improved
+Solution: In Test_has_func_shortcircuit(), move the test functions to a
+ separate script (Yegappan Lakshmanan).
+
+Patch 9.1.1570
+Problem: Copilot suggested some improvements in cmdexpand.c (after v9.1.1556)
+Solution: Use better variable names and comments (John Marriott).
+
+Patch 9.1.1571
+Problem: The CmdlineChanged event was firing unnecessarily, even when
+ the command line's content hadn't actually changed.
+Solution: Add a check to compare the command-line buffer's state
+ before and after key processing. The `CmdlineChanged` event
+ now only triggers if the buffer's contents are genuinely
+ different (Girish Palya).
+
+Patch 9.1.1572
+Problem: expanding $var does not escape whitespace for 'path'
+Solution: Escape whitespace when expanding 'path' option. (Miguel Barro).
+
+Patch 9.1.1573
+Problem: Memory leak when pressing Ctrl-D in cmdline mode (after 9.1.1571).
+Solution: Free prev_cmdbuff before assigning to it. (zeertzjq).
+
+Patch 9.1.1574
+Problem: Dead code in mbyte.c
+Solution: Delete the dead wcwidth()/iswprint() code (Damien Lejay).
+
+Patch 9.1.1575
+Problem: tabpanel not drawn correctly with wrapped lines
+ (utubo, after v9.1.1534)
+Solution: Use Columns as width, not the frame width (Hirohito Higashi).
+
+Patch 9.1.1576
+Problem: cannot easily trigger wildcard expansion
+Solution: Introduce wildtrigger() function (Girish Palya).
+
+Patch 9.1.1577
+Problem: MNV9: no generic support yet
+Solution: Add support for generic functions, funcrefs and object/class
+ methods (Yegappan Lakshmanan).
+
+Patch 9.1.1578
+Problem: configure: comment still mentions autoconf 2.71 to generate
+ the configure script
+Solution: Update the comment to use autoconf 2.72 instead (Yee Chin Cheng).
+
+Patch 9.1.1579
+Problem: Coverity complains about unchecked return value in
+ common_function() (after v9.1.1577)
+Solution: Check the return value of skip_generic_func_type_args()
+ and return in case of an error (Yegappan Lakshmanan).
+
+Patch 9.1.1580
+Problem: possible memory leak in mnv9type.c
+Solution: Free tuple_types_ga if there was an error in
+ type_type_add_types() (Lidong Yan)
+
+Patch 9.1.1581
+Problem: possible memory leak in mnv9generics.c
+Solution: Free ret_free if ga_grow() fails and before returning
+ (Lidong Yan).
+
+Patch 9.1.1582
+Problem: style issue in mnv9type.c and mnv9generics.c
+ (after v9.1.1581 and v9.1.1580)
+Solution: Update Style and place opening brace on a new line.
+
+Patch 9.1.1583
+Problem: Since Patch 9.1.1199 the gmnv window no longer had _NET_WM_ICON
+ nor WM_HINTS icon information, for example when not using a
+ Gnome or KDE desktop (after v9.1.1199)
+Solution: Check if the icon theme as used in Patch 1199 contains a gmnv
+ icon. If so, set the window's icon from that. Otherwise
+ use the previous method (Olaf Seibert)
+
+Patch 9.1.1584
+Problem: using ints as bool
+Solution: Include stdbool.h and start using bool type directly
+ (Hirohito Higashi).
+
+Patch 9.1.1585
+Problem: Wayland: gmnv still needs GMNV_ENABLE_WAYLAND
+Solution: Drop the GMNV_ENABLE_WAYLAND code, always enable both X11 and
+ Wayland GUI support (Christoffer Aasted)
+
+Patch 9.1.1586
+Problem: MNV9: can define an enum/interface in a function (lacygoill)
+Solution: Give an error when defining an enum or an interface inside a
+ function (Yegappan Lakshmanan).
+
+Patch 9.1.1587
+Problem: Wayland: timeout not updated before select()
+Solution: Always set timeval struct before select() (Foxe Chen).
+
+Patch 9.1.1588
+Problem: MNV9: cannot split dict inside command block (lacygoill)
+Solution: Remove the current restriction (Yegappan Lakshmanan).
+
+Patch 9.1.1589
+Problem: Cannot disable cscope interface using configure, because in
+ feature.h FEAT_CSCOPE will always be enabled for huge builds
+ (chdiza)
+Solution: Don't define FEAT_CSCOPE from configure script but set the
+ ENABLE_CSCOPE flag and check for the presence of that flag in
+ feature.h
+
+Patch 9.1.1590
+Problem: cannot perform autocompletion
+Solution: Add the 'autocomplete' option value (Girish Palya)
+
+Patch 9.1.1591
+Problem: VMS support can be improved
+Solution: Merge chagnes from Steven M. Schweda (Zoltan)
+
+Patch 9.1.1592
+Problem: MNV9: crash with classes and garbage collection
+ (Christian J. Robinson, after v9.1.1566)
+Solution: When getting the references to an object, make sure the object
+ is valid (Yegappan Lakshmanan).
+
+Patch 9.1.1593
+Problem: Confusing error when compiling incomplete try block (lacygoill)
+Solution: Give better error messages (Hirohito Higashi).
+
+Patch 9.1.1594
+Problem: completion: search completion throws errors, wrong placement
+ of pum menu with 'imi'=1 (berggeist)
+Solution: Fix those errors (Girish Palya).
+
+Patch 9.1.1595
+Problem: Wayland: non-portable use of select()
+Solution: Correctly set the timeval struct (Foxe Chen).
+
+Patch 9.1.1596
+Problem: tests: Test_search_wildmenu_iminsert() depends on help file
+ (after 9.1.1594).
+Solution: Set buffer text using setline() instead of loading help file.
+ Add a test for another bug fixed by 9.1.1594 (zeertzjq).
+
+Patch 9.1.1597
+Problem: CI reports leaks in libgtk3 library
+Solution: Add libgtk-3 library to leak suppression
+
+Patch 9.1.1598
+Problem: filetype: waybar config file is not recognized
+Solution: Detect */waybar/config file as jsonc filetype (Furkan Sahin).
+
+Patch 9.1.1599
+Problem: :bnext doesn't go to unlisted help buffers when cycling
+ through help buffers (after 9.1.0557).
+Solution: Don't check if a help buffer is listed (zeertzjq).
+
+Patch 9.1.1600
+Problem: diff: using diff anchors with hidden buffers fails silently
+Solution: Give specific error message for diff anchors when using hidden
+ buffers (Yee Cheng Chin).
+
+Patch 9.1.1601
+Problem: Patch v8.1.0425 was wrong
+Solution: Revert that Patch (Hirohito Higashi).
+
+Patch 9.1.1602
+Problem: filetype: requirements-*.txt files are not recognized
+Solution: Detect requirements-*.txt files as requirements filetype
+ (Xudong Zheng).
+
+Patch 9.1.1603
+Problem: completion: cannot use autoloaded funcs in 'complete' F{func}
+ (Maxim Kim)
+Solution: Make it work (Girish Palya).
+
+Patch 9.1.1604
+Problem: completion: incsearch highlight might be lost after search
+ completion (Hirohito Higashi)
+Solution: Restore incsearch highlight after dismissing pum with Ctrl-E
+ (Girish Palya).
+
+Patch 9.1.1605
+Problem: Cannot specify scope for chdir()
+Solution: Add optional scope argument (kuuote).
+
+Patch 9.1.1606
+Problem: filetype: a few more files are not recognized
+Solution: Guess Mail, Info and Terminfo files by its content (lacygoill).
+
+Patch 9.1.1607
+Problem: :apple command detected as :append (dai475694450)
+Solution: Disallow to define a custom command with lower-case letter,
+ correctly detect :insert/:change/:append ex commands
+ (Hirohito Higashi).
+
+Patch 9.1.1608
+Problem: No command-line completion for :unsilent {command}.
+Solution: Add missing command arg completion (Doug Kearns).
+
+Patch 9.1.1609
+Problem: complete: Heap-buffer overflow with complete function (zeertzjq)
+Solution: Do not let startcol become negative (Girish Palya).
+
+Patch 9.1.1610
+Problem: completion: hang (after 9.1.1471) or E684 (after 9.1.1410)
+ when 'tagfunc' calls complete().
+Solution: Check if complete() has been called immediately after getting
+ matches instead of in the next loop iteration (zeertzjq).
+
+Patch 9.1.1611
+Problem: possible undefined behaviour in mb_decompose(), when using the
+ same pointer as argument several times
+Solution: Use separate assignments to avoid reading and writing the same
+ object at the same time (Áron Hárnási).
+
+Patch 9.1.1612
+Problem: Ctrl-G/Ctrl-T does not ignore the end search delimiter (irisjae)
+Solution: Check if the pattern ends with a search delimiter and ignore
+ it, unless it is part of the pattern.
+
+Patch 9.1.1613
+Problem: tests: test_search leaves a few swapfiles behind
+Solution: Use :bw! instead of :close to close the swapfile at the end of
+ the test.
+
+Patch 9.1.1614
+Problem: MNV9: possible variable type change when using closure in a
+ for loop (Maxim Kim)
+Solution: Use unwind_locals(..., TRUE) (Yegappan Lakshmanan).
+
+Patch 9.1.1615
+Problem: diff format erroneously detected (Tomáš Janoušek)
+Solution: Make the regex to detect normal diff format a bit stricter,
+ while at it, fix wrong test content from Patch v9.1.1606.
+
+Patch 9.1.1616
+Problem: xxd: possible buffer overflow with bitwise output
+ (after v9.1.1459, Xudong Cao)
+Solution: Update LLNE_NO_COLOR macro definition for the max line output.
+
+Patch 9.1.1617
+Problem: MNV9: some error messages can be improved
+Solution: Improve error messages when parsing generic function type
+ arguments (Yegappan Lakshmanan).
+
+Patch 9.1.1618
+Problem: completion: incorrect selected index returned from
+ complete_info()
+Solution: Return the index into "items" and restore the previous
+ behaviour (Robert Muir).
+
+Patch 9.1.1619
+Problem: Incorrect E535 error message (after 9.1.1603).
+Solution: Don't use transchar(), as the character is always printable
+ (zeertzjq).
+
+Patch 9.1.1620
+Problem: filetype: composer.lock and symfony.lock files not recognized
+Solution: Detect composer.lock and symfony.lock files as json filetype
+ (Dietrich Moerman).
+
+Patch 9.1.1621
+Problem: When the popup menu (PUM) occupies more than half the screen
+ height, it flickers whenever a character is typed or erased.
+Solution: A complete, non-hacky fix would require removing the
+ CmdlineChanged event from the loop and letting autocompletion
+ manage the process end-to-end. This is because screen redraws
+ after any cmdline change are necessary for other features to
+ work (Girish Palya).
+
+Patch 9.1.1622
+Problem: Patch v9.1.1432 causes performance regressions
+Solution: Revert "Patch 9.1.1432 unicode correctly" (Yee Cheng Chin).
+
+Patch 9.1.1623
+Problem: Buffer menu does not handle unicode names correctly
+ (after v9.1.1622)
+Solution: Fix the BMHash() function (Yee Cheng Chin)
+
+Patch 9.1.1624
+Problem: Cscope not enabled on MacOS
+Solution: Remove #ifdef test for MacOS and always enable FEAT_CSCOPE on
+ Unix (Damien Lejay).
+
+Patch 9.1.1625
+Problem: Autocompletion slow with include- and tag-completion
+Solution: Refactor ins_compl_interrupted() to also check for timeout,
+ further refactor code to skip outputting message when
+ performing autocompletion (Girish Palya).
+
+Patch 9.1.1626
+Problem: C-indent does not handle compound literals (@44100hertz, @Jorenar)
+Solution: Detect and handle compound literal and structure
+ initialization (Anttoni Erkkilä).
+
+Patch 9.1.1627
+Problem: fuzzy-matching can be improved
+Solution: Implement a better fuzzy matching algorithm (Girish Palya).
+
+Patch 9.1.1628
+Problem: fuzzy.c has a few issues
+Solution: Use MNVs memory management, update style (glepnir).
+
+Patch 9.1.1629
+Problem: MNV9: Not able to use more than 10 type arguments in a generic
+ function
+Solution: Initialize the types after reading all the type arg variable
+ names (Yegappan Lakshmanan).
+
+Patch 9.1.1630
+Problem: tests: fuzzy buffer name completion test doesn't match
+ successfully (after 9.1.1627).
+Solution: Update pattern to account for the change in case sensitivity.
+ Also mark Test_search_stat_option() as flaky as it can still
+ sometimes fail (zeertzjq).
+
+Patch 9.1.1631
+Problem: proto files are outdated
+Solution: Regenerate proto files (Yegappan Lakshmanan).
+
+Patch 9.1.1632
+Problem: memory leak in fuzzy.c
+Solution: Free fuzmatch, add a few minor refactors (glepnir)
+
+Patch 9.1.1633
+Problem: Search pattern shown incorrectly with negative offset (lkintact)
+Solution: Don't prepend a '+' sign to a negative offset (zeertzjq).
+
+Patch 9.1.1634
+Problem: Clipboard code can be improved
+Solution: Slightly refactor code (Foxe Chen).
+
+Patch 9.1.1635
+Problem: tabpanel: cannot drag inactive tabs (char101)
+Solution: use end_visual_mode_keep_button() instead of end_visual_mode()
+ (Naruhiko Nishino).
+
+Patch 9.1.1636
+Problem: style issues
+Solution: Fix indentation of function parameters exceeding 80 character
+ length (Yegappan Lakshmanan).
+
+Patch 9.1.1637
+Problem: FEAT_DIFF used in diff.pro
+Solution: Remove it from the diff protocol file (Yegappan Lakshmanan).
+
+Patch 9.1.1638
+Problem: completion: not possible to delay the autcompletion
+Solution: Add the 'autocompletedelay' option value (Girish Palya).
+
+Patch 9.1.1639
+Problem: During commandline completiom, popup window placement can be
+ incorrect when 'noselect' is present in 'wildmode'
+ (Shane-XB-Qian)
+Solution: Disable "showtail" feature when 'noselect' is present.
+
+Patch 9.1.1640
+Problem: Unicode has deprecated some code-points
+Solution: Update the digraph tables to align with the Unicode v16
+ release (David Friant)
+
+Patch 9.1.1641
+Problem: a few compiler warnings are output
+Solution: Fix compiler warnings (Yegappan Lakshmanan).
+
+Patch 9.1.1642
+Problem: configure: wrong C99 feature test
+Solution: Update inverted C99 feature test logic (Damien Lejay).
+
+Patch 9.1.1643
+Problem: tabpanel: mouse code too complicated
+Solution: Refactor code, adjust ifdefs (Hirohito Higashi).
+
+Patch 9.1.1644
+Problem: configure: doesn't separate CPPFLAGS and CFLAGS
+Solution: Split CPPFLAGS and CFLAGS for pkg-config (Damien Lejay).
+
+Patch 9.1.1645
+Problem: fuzzy.c can be further improved
+Solution: Fix memory leak and refactor it (glepnir).
+
+Patch 9.1.1646
+Problem: MS-Windows: completion cannot handle implicit drive letters
+Solution: Consider paths like \folder and /folder as absolute (Miguel Barro).
+
+Patch 9.1.1647
+Problem: filetype: Cangjie files are not recognized
+Solution: Detect *.cj files as cangjie filetype, include a syntax plugin
+ (WuJunkai2004)
+
+Patch 9.1.1648
+Problem: MS-Windows: some style issues with Patch v9.1.1646
+Solution: Fix typose and code style issues (zeertzjq).
+
+Patch 9.1.1649
+Problem: attrs allocation and fuzzy growarray could leak on early returns
+Solution: Ensure proper cleanup of allocated memory on exit paths (glepnir).
+
+Patch 9.1.1650
+Problem: After scrolling a popup and then using popup_settext() with
+ fewer lines, the popup fails to resize properly because
+ firstline points beyond the new buffer content (lifepillar)
+Solution: In popup_adjust_position(), validate that firstline doesn't
+ exceed buffer line count and reset to 0 (auto-position) if it
+ does (glepnir).
+
+Patch 9.1.1651
+Problem: Cannot use clientserver over Unix domain socket
+Solution: Implement socketserver functionality (Foxe Chen).
+
+Patch 9.1.1652
+Problem: Cannot determine non-X11/Wayland clipmethods
+Solution: Add the "gui" value to the 'clipmethod' option (Foxe Chen)
+
+Patch 9.1.1653
+Problem: Coverity complains about Null pointer dereference (after v9.1.1643)
+Solution: Check that TabPageIdx is not Null.
+
+Patch 9.1.1654
+Problem: build failure when FEAT_DIFF is not defined (John Marriott)
+Solution: Remove FEAT_DIFF in proto.h; define dummy type for
+ diffline_T and diffline_change_T when FEAT_DIFF is not defined
+
+Patch 9.1.1655
+Problem: Build-failure in do_mouse() (after v9.1.1653)
+Solution: Add missing closing paren.
+
+Patch 9.1.1656
+Problem: MS-Windows: Patch v9.1.1652 breaks clipboard
+ (ddad431, after v9.1.1652)
+Solution: Revert the Patch.
+
+Patch 9.1.1657
+Problem: Autocompletion adds delay (gcanat, char101, after v9.1.1638)
+Solution: Temporarily disable autocomplation (Girish Palya).
+
+Patch 9.1.1658
+Problem: Missing includes for Wayland headers, when subfolder is used
+ (after v9.1.1644)
+Solution: Add new $WAYLAND_CPPFLAGS (Christoffer Aasted).
+
+Patch 9.1.1659
+Problem: configure: uses AC_INIT without args
+Solution: Add a comment explaining why AC_INIT has no args (Damien Lejay).
+
+Patch 9.1.1660
+Problem: Popups without border/padding/title don't flip position when
+ cursor is near bottom of screen, while decorated popups do
+ flip correctly.
+Solution: Use original height instead of truncated height for position
+ inversion check, except for info popups to preserve existing
+ behavior (glepnir).
+
+Patch 9.1.1661
+Problem: Coverity finds a few issues in clientserver.c
+ (also by Tony Mechelynck)
+Solution: Fix issues and warnings (Foxe Chen).
+
+Patch 9.1.1662
+Problem: Issues with proto files: missing or inconsistent prototypes.
+Solution: Update ifdefs, move typedefs, fix prototype declaration
+ (Hirohito Higashi).
+
+Patch 9.1.1663
+Problem: xxd: 9.1.0023 introduced additional dependency
+Solution: Remove non-native z/OS library call (David Seal).
+
+Patch 9.1.1664
+Problem: configure: can use any autocon
+Solution: Use AC_PREREQ and require 2.71 (Damien Lejay).
+
+Patch 9.1.1665
+Problem: Outdated comment in eval.c.
+Solution: Remove the comment, which is no longer true after 8.2.1672.
+ Also fix a typo in version9.txt (zeertzjq).
+
+Patch 9.1.1666
+Problem: no support for terminal primary device attributes
+Solution: Add support for detecting the DA1 response from the terminal,
+ add the v:termda1 variable and the 't_Ms' option for the
+ OSC 52 command format (Foxe Chen).
+
+Patch 9.1.1667
+Problem: Another outdated comment in eval.c (after 9.1.1665).
+Solution: Remove that comment as well. Add a few more tests for mapnew()
+ that fail without Patch 8.2.1672 (zeertzjq).
+
+Patch 9.1.1668
+Problem: items() does not work for Blobs
+Solution: Extend items() to support Blob (Yegappan Lakshmanan).
+
+Patch 9.1.1669
+Problem: MNV script: no support for URI de-/encoding (ubaldot)
+Solution: Add the uri_encode() and uri_decode() functions
+ (Yegappan Lakshmanan)
+
+Patch 9.1.1670
+Problem: completion: autocomplete breaks second completion (gravndal)
+Solution: Fix the autocomplete bug (Girish Palya).
+
+Patch 9.1.1671
+Problem: configure: missing comment about AC_CONFIG_SRCDIR
+Solution: Add comment explaining the use of AC_CONFIG_SRCDIR (Damien Lejay).
+
+Patch 9.1.1672
+Problem: completion: cannot add timeouts for 'cpt' sources
+ (Evgeni Chasnovski)
+Solution: Add the 'autocompletetimeout' and 'completetimeout' options
+ (Girish Palya).
+
+Patch 9.1.1673
+Problem: if_python: still support for Python 1
+Solution: Drop outdated code (Hirohito Higashi).
+
+Patch 9.1.1674
+Problem: Patch v9.1.1666 causes problems on kitty (Sami Farin)
+Solution: Remove Ms value from termcodes (Foxe Chen).
+
+Patch 9.1.1675
+Problem: MS-Windows: Makefiles can be refactored
+Solution: Refactor using a common tools.mak, make some style changes
+ (RestorerZ).
+
+Patch 9.1.1676
+Problem: completion: long line shown twice (Maxim Kim)
+Solution: Fix the issue, disable an incorrect test (Girish Palya).
+
+Patch 9.1.1677
+Problem: wrong ifdef in message.c
+Solution: change it to #ifndef MSWIN (Damien Lejay).
+
+Patch 9.1.1678
+Problem: Amiga: cannot handle large undo files
+Solution: Remove the existing restriction as it was only valid for
+ classic Amiga (Damien Lejay).
+
+Patch 9.1.1679
+Problem: unclear what key causes CmdlineLeave autocommand
+Solution: Set |v:char| to the key (Girish Palya).
+
+Patch 9.1.1680
+Problem: MS-Windows: possible buffer-under run in if_cscope
+ cs_pathcomponents() (Murali Aniruddhan)
+Solution: Fix the loop and do not decrement the pointer twice.
+
+Patch 9.1.1681
+Problem: tests: no test for actually moving cursor when menu is not
+ open with 'autocompletedelay'.
+Solution: Use <Up> first in the test. Also remove two unnecessary <Esc>s
+ in completion timeout test (zeertzjq).
+
+Patch 9.1.1682
+Problem: tests: Test_wildtrigger_update_screen() creates an unused
+ mapping (after 9.1.1621).
+Solution: Remove the mapping. Also use blank lines more consistently in
+ test_cmdline.mnv screendump tests (zeertzjq).
+
+Patch 9.1.1683
+Problem: xxd: Avoid null dereference in autoskip colorless
+Solution: Verify that colors is not null (Joakim Nohlgård).
+
+Patch 9.1.1684
+Problem: min()/max() does not handle float data types (ubaldot)
+Solution: Extend min() and max() to every comparable type (LemonBoy).
+
+Patch 9.1.1685
+Problem: Missing changes from PR 18068
+Solution: Include the missing changes (Girish Palya).
+
+Patch 9.1.1686
+Problem: if_ruby: unknown pragma when not using gcc
+Solution: only use GCC pragma, when using GCC (Cthulhux).
+
+Patch 9.1.1687
+Problem: filetype: autoconf filetype not always correct
+Solution: Detect aclocal.m4 as config filetype, detect configure.ac as
+ config filetype, fall back to POSIX m4 (Damien Lejay).
+
+Patch 9.1.1688
+Problem: potential buffer overrun in bufwrite.c
+Solution: Use a temporary variable (John Marriott).
+
+Patch 9.1.1689
+Problem: CmdlineChanged not triggered by <Del>
+Solution: Use STRCMP() instead of STRNCMP() (Shougo Matsushita).
+
+Patch 9.1.1690
+Problem: Missing recursion guard in dos/unix_expandpath()
+Solution: Add guard variables (ashamedbit).
+
+Patch 9.1.1691
+Problem: over-allocation in ga_concat_strings()
+Solution: Fix ga_concat_strings() and only allocate n-1 separator length
+ bytes (Damien Lejay).
+
+Patch 9.1.1692
+Problem: global_functions are not constant
+Solution: Place global_functions[] in read-only memory (Damien Lejay).
+
+Patch 9.1.1693
+Problem: tests: test_filetype fails in shadow dir (after v9.1.9.1.1687)
+Solution: Use a custom test that does not rely on configure.ac
+ being existing in the upper directory tree.
+
+Patch 9.1.1694
+Problem: filetype: Buck eXtension Lang files are not recognized
+Solution: Detect *.bxl files as bzl filetype. (Jade Lovelace)
+
+Patch 9.1.1695
+Problem: Need more MNV script specific tests
+Solution: Add more tests (Yegappan Lakshmanan).
+
+Patch 9.1.1696
+Problem: getwininfo() has logic for getting the tabnr of a local popup
+ window, but due to only breaking from the inner loop, tp is
+ eventually set to NULL, so tabnr is always 0.
+Solution: Break out of both loops, continue to use 0 for global popup
+ windows (Sean Dewar).
+
+Patch 9.1.1697
+Problem: tests: no test for aclocal.m4 (after v9.1.1693)
+Solution: Add a test that aclocal.m4 is detected as config filetype.
+
+Patch 9.1.1698
+Problem: Some error numbers are not documented (Restorer)
+Solution: Document missing error numbers (Yegappan Lakshmanan).
+
+Patch 9.1.1699
+Problem: Fuzzy completion disabled for 'findfunc' and customlist
+Solution: Remove those cases from cmdline_fuzzy_completion_supported()
+ because it is supported (Maxim Kim).
+
+Patch 9.1.1700
+Problem: a pattern that involves a backref on a different line does not
+ match when 'ignorecase' is set (QiWei, after v9.1.0645)
+Solution: Use MB_STRNICMP when ignorecase is set, fix tests to close
+ swapfiles.
+
+Patch 9.1.1701
+Problem: tests: failure on CI with GUI and ASAN in test_edit.res
+ (Hirohito Higashi)
+Solution: Disable the test for that specific situation in CI, close
+ swapfiles.
+
+Patch 9.1.1702
+Problem: tests: test_edit still fails on CI (after v9.1.1701)
+Solution: Fix the skip condition.
+
+Patch 9.1.1703
+Problem: Cannot react to terminal OSC responses
+Solution: Allow TermResponseAll to be triggered by Terminal OSC
+ responses (Foxe Chen).
+
+Patch 9.1.1704
+Problem: Cannot determine non-X11/Wayland clipmethods
+Solution: Add the "gui" value to the 'clipmethod' option (Foxe Chen).
+
+Patch 9.1.1705
+Problem: time.h include is available on all platforms
+Solution: Remove ifdef guards and simply include it in all source files,
+ get rid of double include in spellfile.c (Damien Lejay).
+
+Patch 9.1.1706
+Problem: MS-Windows: Compile error when building with if_ruby
+ (Christian Robinson, after v9.1.1704)
+Solution: Do not define gettimeofday() if ruby interface is compiled in
+ (Foxe Chen).
+
+Patch 9.1.1707
+Problem: diff.pro contains #ifdefs
+Solution: Remove unintentionally added ifdefs (Hirohito Higashi).
+
+Patch 9.1.1708
+Problem: tests: various tests can be improved
+Solution: Use string interpolation to concatenate strings in
+ test_winfixbuf, check for specific errors in assert_fails()
+ (Yegappan Lakshmanan).
+
+Patch 9.1.1709
+Problem: filetype: kyaml files are not recognized
+Solution: Detect *.kyml files as yaml filetype (Volodymyr Chernetskyi).
+
+Patch 9.1.1710
+Problem: Compile warnings in clipboard.c (xmnv64, after v9.1.1704)
+Solution: Remove returns from void functions (Foxe Chen).
+
+Patch 9.1.1711
+Problem: Missing type cast in clipboard.c
+ (Yegappan Lakshmanan, after v9.1.1704)
+Solution: Add back the type cast (Foxe Chen).
+
+Patch 9.1.1712
+Problem: screen not redrawn properly on t_RB response (after v9.1.1703)
+Solution: Call redraw_asap() if necessary (Julio B).
+
+Patch 9.1.1713
+Problem: filetype: fvwm2m4 files are no longer recognized (after 9.1.1687).
+Solution: Add a special case in m4 filetype detection (zeertzjq).
+
+Patch 9.1.1714
+Problem: completion: wildmode=longest:full selects wrong item (zeertzjq)
+Solution: Fix issue, refactor ex_getln.c slightly (Girish Palya).
+
+Patch 9.1.1715
+Problem: Some functions need to be re-ordered
+Solution: Re-order and move functions around favoring mch_*() functions
+ inside os_*.c files, Change scope of dos_expandpath() to
+ global instead of static (Hirohito Higashi).
+
+Patch 9.1.1716
+Problem: The code inside an ifdef was indented incorrectly.
+Solution: Adjusted the indentation by one level (glepnir).
+
+Patch 9.1.1717
+Problem: filetype: AWS cli alias file is not recognized
+Solution: Detect .aws/cli/alias as confini filetype (Volodymyr Chernetskyi).
+
+Patch 9.1.1718
+Problem: filetype: kubectl config file is not recognized
+Solution: Detect .kube/kubectl as yaml filetype (Volodymyr Chernetskyi).
+
+Patch 9.1.1719
+Problem: socket server code can be improved
+Solution: Refactor code, get rid of gettimeofday() and use ELAPSED_
+ macros (Foxe Chen).
+
+Patch 9.1.1720
+Problem: Using gettimeofday() for parsing OSC responses
+Solution: Use ELAPSED_ macros instead (Foxe Chen).
+
+Patch 9.1.1721
+Problem: Defining a global gettimeofday() function causes conflicts if
+ gettimeofday() is already defined.
+Solution: Revert globalized gettimeofday() function (Hirohito Higashi).
+
+Patch 9.1.1722
+Problem: Compiler may optimize away clearing of crypt key
+Solution: Use sodium_memzero() if available, else use memset() using a
+ volatile function pointer (ashamedbit).
+
+Patch 9.1.1723
+Problem: Missing ifdefs (after v9.1.1719)
+Solution: Add ifdef ELAPSED_FUNC (Foxe Chen).
+
+Patch 9.1.1724
+Problem: Compiler warning about ununitialized variable in ex_docmd.
+Solution: Initialize result variable (mityu).
+
+Patch 9.1.1725
+Problem: Wayland code can be improved
+Solution: Refactor Wayland Clipboard code (Foxe Chen).
+
+Patch 9.1.1726
+Problem: Patch v9.1.1725 causes problems
+Solution: Revert the Patch for now.
+
+Patch 9.1.1727
+Problem: Nextstep support still included
+Solution: Deprecate Nextstep code and undef corresponding feature flag.
+
+Patch 9.1.1728
+Problem: termdebug: cannot evaluate visual selected expression
+Solution: Add support for visual mode, mapped to K by default (bennyyip).
+
+Patch 9.1.1729
+Problem: CI is not run with clang 21
+Solution: Update CI to v21, fix a few warnings that are uncovered when
+ using clang 21 (Philip H).
+
+Patch 9.1.1730
+Problem: filetype: vivado journal/log files are not recognized
+Solution: Detect vivado*.{jou,log} as tcl filetype (Wu Zhenyu).
+
+Patch 9.1.1731
+Problem: Not using const qualifier
+Solution: Mark the opchars array const.
+
+Patch 9.1.1732
+Problem: filetype: .inc file detection can be improved
+Solution: Update filetype detection for Pascal and BitBake code
+ (Martin Schwan).
+
+Patch 9.1.1733
+Problem: tests: failure when remote_server() fails
+Solution: Catch E240 error when calling remote_server(), Fix syntax
+ error in test_wayland.mnv.
+
+Patch 9.1.1734
+Problem: Memory leak when allocating match fails
+Solution: Initialize m to NULL and centralize cleanup via goto fail to
+ avoid leaks on early returns (Damien Lejay).
+
+Patch 9.1.1735
+Problem: Cygwin Makefile still checks for Win XP version
+Solution: Remove check for WINVER >= 0x600 in Make_cyg_ming.mak
+ (Mao-Yining).
+
+Patch 9.1.1736
+Problem: Cannot detect <F3> using kitty protocol
+Solution: Handle and detect Kitty keys when using the trailing "~" byte.
+
+Patch 9.1.1737
+Problem: Patch v9.1.1714 introduce a regression for wildmenu (zeertzjq)
+Solution: Restore behavior of "longest" in 'wildmode' (Girish Palya).
+
+Patch 9.1.1738
+Problem: cmdline-autocompletion breaks history navigation (ddad431)
+Solution: Support history navigation in cmdline autocompletion (Girish
+ Palya).
+
+Patch 9.1.1739
+Problem: Matches may be listed twice with wildmode=longest,list when
+ "longest" doesn't change command line (after 9.1.1737).
+Solution: Set did_wild_list when trying "list" after "longest" (zeertzjq).
+
+Patch 9.1.1740
+Problem: Memory leak with wildmode=longest,full and wildoptions=pum
+ (after 9.1.1737).
+Solution: Avoid using showmatches() and WILD_NEXT together. Also fix
+ wildmode=longest,noselect:full selecting wrong item (zeertzjq).
+
+Patch 9.1.1741
+Problem: Regression with kitty protocol and trailing byte "u"
+ (chdiza, after v9.1.1736)
+Solution: Check that trailing byte "~" is present.
+
+Patch 9.1.1742
+Problem: complete: preinsert does not work well with preinsert
+Solution: Make "preinsert" completeopt value work with autocompletion
+ (Girish Palya).
+
+Patch 9.1.1743
+Problem: Haiku: no full-screen support
+Solution: Add support for toggling full-screen using the keyboard (rymdbar)
+
+Patch 9.1.1744
+Problem: tests: Test_skip_wildtrigger_hist_navigation() may fail (zeertzjq).
+Solution: Correct test to validate intended behavior (Girish Palya).
+
+Patch 9.1.1745
+Problem: tabpanel: not properly redraw after wildmenu (ddad431)
+Solution: Mark tabpanel to be redrawn (Hirohito Higashi).
+
+Patch 9.1.1746
+Problem: Missing Null ptr check in cs_find_common()
+Solution: Return when tmp pointer is null (ashamedbit).
+
+Patch 9.1.1747
+Problem: completion: redo (.) broken with preinsert and autocompletion
+Solution: Make redo (.) work with preinsert and autocompletion (Girish Palya).
+
+Patch 9.1.1748
+Problem: macOS: Default scheduler priority too low
+Solution: Explicitly set TASK_DEFAULT_APPLICATION scheduler priority
+ to improve responsiveness (Luna Razzaghipour).
+
+Patch 9.1.1749
+Problem: leaking memory in cs_find_common() (after v9.1.1746)
+Solution: Also free nummatches before returning.
+
+Patch 9.1.1750
+Problem: completion: preinserted text highlighed using ComplMatchIns
+Solution: Use highlighting group PreInsert and update the documentation
+ (Girish Palya).
+
+Patch 9.1.1751
+Problem: potential buffer-overflow in find_pattern_in_path()
+Problem: Verify ptr p has enough room before adding ins_compl_len().
+
+Patch 9.1.1752
+Problem: tests: No test when deleting text after autocompletion with
+ preinsert did complete an entry
+Solution: Verify, that after deletion autocompletion does not reinsert
+ the deleted text. Note: the actual issue was fixed with v9.1.1750
+ (Girish Palya).
+
+Patch 9.1.1753
+Problem: defaults: 'diffopt' option value can be improved
+Solution: Update diffopt defaults to include "indent-heuristic" and
+ "inline:char" (Yee Cheng Chin)
+
+Patch 9.1.1754
+Problem: :helptags doesn't skip examples with syntax (Evgeni Chasnovski)
+Solution: Check for examples with syntax (zeertzjq).
+
+Patch 9.1.1755
+Problem: filetype: generic log files are not recognized
+Solution: Detect *.log files as log filetype, include simple log syntax
+ script (Mao-Yining).
+
+Patch 9.1.1756
+Problem: termdebug: Need a few more user commands
+Solution: Add the :RunOrContinue and the :ToggleBreak user commands
+ (bennyyip)
+
+Patch 9.1.1757
+Problem: The colorresp plugin causes additional redraws
+ (Linwei, after v9.1.1703)
+Solution: Move the code back into the C core and get rid of the mnv
+ plugin (Foxe Chen).
+
+Patch 9.1.1758
+Problem: Diff mode crashes when adding text property in autocommand
+ (after 9.1.1557).
+Solution: Only restore ML_EMPTY memline flag, ignore the others (zeertzjq).
+
+Patch 9.1.1759
+Problem: filetype: generic log detection is too disturbing (after v9.1.1755)
+Solution: Revert setting log filetype.
+
+Patch 9.1.1760
+Problem: wrong proto file for insexpand.pro
+Solution: Update insexpand.pro (Hirohito Higashi).
+
+Patch 9.1.1762
+Problem: completion: selected item not cleared on backspace when
+ 'autocomplete' is set
+Solution: Clear the selected item (Girish Palya).
+
+Patch 9.1.1763
+Problem: filetype: kitty config files are not recognized
+Solution: Detect */kitty/*.conf as kitty filetype, include a syntax
+ script (Shawon).
+
+Patch 9.1.1764
+Problem: filetype: CODEOWNERS file not recognized
+Solution: Detect CODEOWNERS file as codeowners filetype, include a
+ syntax and filetype plugin (Jon Parise).
+
+Patch 9.1.1765
+Problem: f_isnan() and f_isinf() do not correctly initialize rettv type
+Solution: Initialize them with type: VAR_NUMBER and value 0 (Damien Lejay).
+
+Patch 9.1.1766
+Problem: MNV9: some MNV9 functions do not handle null_string correctly
+ and may crash MNV (kennypete).
+Solution: Check for null_string correctly in the searchpair() and
+ substitute() functions (Yegappan Lakshmanan).
+
+Patch 9.1.1767
+Problem: Patch v9.1.1765 was wrong
+Solution: Roll back the change, it's correct to have call_func() initialize
+ the type, so that not each function has to do this on its own.
+
+Patch 9.1.1768
+Problem: Makefile does not uninstall global plugins (after v9.1.1757)
+Solution: Uninstall global plugins before installing them, so that old files
+ are not carried around and loaded when no longer used.
+
+Patch 9.1.1769
+Problem: completion: "preinsert" insert wrong word with 'smartcase' and
+ 'autocomplete'
+Solution: Add compare completed item with the leader (Girish Palya).
+
+Patch 9.1.1770
+Problem: MNV9: wrong behaviour with trailing comments in command blocks
+ (balki)
+Solution: Correctly skip over trailing comments (Yegappan Lakshmanan).
+
+Patch 9.1.1771
+Problem: complete: some redraw issues with 'autocomplete'
+Solution: Fix the issues (Girish Palya).
+
+Patch 9.1.1772
+Problem: completion: inconsistent selection of first item with
+ 'autocomplete' (Tomasz N)
+Solution: Check for 'autocomplete' option in ins_compl_new_leader()
+ (Girish Palya).
+
+Patch 9.1.1773
+Problem: Crash in BufLeave/WinLeave/TabLeave when closing window after
+ BufUnload closes all other windows in the tab page.
+Solution: Avoid duplicate BufLeave/WinLeave events. Trigger TabLeave
+ before removing the buffer (zeertzjq).
+
+Patch 9.1.1774
+Problem: cannot calculate sha256() of a Blob
+Solution: Change sha256() to accept a Blob or String argument (thinca).
+
+Patch 9.1.1775
+Problem: filetype: Mamba configuration files are not recognized
+Solution: Detect .mambarc and mambarc as yaml filetype (Samuel Huang).
+
+Patch 9.1.1776
+Problem: "adding" expansion doesn't work with cfc=keyword.
+Solution: Remove incorrect assignment to compl_cont_status. Don't use
+ fuzzy collection in "adding" status (zeertzjq).
+
+Patch 9.1.1777
+Problem: Mouse click to open fold doesn't work with utf-8 "foldclose"
+ chars (Balki)
+Solution: Use ScreenLinesUC[off] if it is set (zeertzjq).
+
+Patch 9.1.1778
+Problem: sha256() treats empty blob and null blob differently
+ (after 9.1.1774).
+Solution: Handle null blob the same as empty blob (zeertzjq).
+
+Patch 9.1.1779
+Problem: completion: 'autocomplete' cannot be enabled per buffer (Tomasz N)
+Solution: Make 'autocomplete' global or local to buffer (Girish Palya).
+
+Patch 9.1.1780
+Problem: mbyte contains overlapping list of utf_classes table
+Solution: Update table to contain non-overlapping list (Yuta Yamamoto).
+
+Patch 9.1.1781
+Problem: some functions could be defined static
+Solution: Change function definitions and make them static
+ (Yegappan Lakshmanan).
+
+Patch 9.1.1782
+Problem: buffer-listener callbacks may not match buffer content, since
+ they are buffered until the screen is updated.
+Solution: Allow to handle buffer-callbacks un-buffered, meaning to
+ handle those changes as soon as they happen (Paul Ollis).
+
+Patch 9.1.1783
+Problem: ins_compl_leader() defined too far away from
+ ins_compl_leader_len() (after 9.1.1781).
+Solution: Move ins_compl_leader() just before ins_compl_leader_len(). Add
+ missing "static" to eval0_simple_funccal() definition (zeertzjq).
+
+Patch 9.1.1784
+Problem: Wayland code can be improved
+Solution: Refactor Wayland Clipboard code (Foxe Chen).
+
+Patch 9.1.1785
+Problem: typo in comment in change.c (after v9.1.1782)
+Solution: Fix typo in comment in change.c (Christ van Willegen).
+
+Patch 9.1.1786
+Problem: Compile error with clipboard (lacyggoill, after v9.1.1784)
+Solution: Add $WAYLAND_SRC as dependency for clipboard.c in Makefile
+ (Foxe Chen).
+
+Patch 9.1.1787
+Problem: filetype: not all Sway config files are recognized
+Solution: Detect files within /sway/config.d/* as swayconfig filetype
+ (Felix Pehla).
+
+Patch 9.1.1788
+Problem: MNV9: can declare a void variable (Ernie Rael)
+Solution: Disallow such variable declaration (Yegappan Lakshmanan).
+
+Patch 9.1.1789
+Problem: MS-Windows: using wrong check for bold font (after v9.1.1347)
+Solution: Test if lf.lfWeight == FW_BOLD instead of a simple truthiness
+ test (Shay).
+
+Patch 9.1.1790
+Problem: completion: Enter does not insert match with "noinsert"
+ (Sergey Vlasov)
+Solution: Check for compl_shown_match instead of compl_selected_item
+ (zeertzjq).
+
+Patch 9.1.1791
+Problem: type(void) throws an internal error (atitcreate)
+Solution: Return proper error message (Yegappan Lakshmanan).
+
+Patch 9.1.1792
+Problem: List of changes not protected from changes when processing
+ listeners (after v9.1.1782)
+Solution: Fully lock changes list for listener callbacks (Paul Ollis).
+
+Patch 9.1.1793
+Problem: Link error when build without channel feature
+ (lindhobe, after v9.1.1774)
+Solution: Remove ifdef FEAT_JOB_CHANNEL around check_for_string_or_blob_arg().
+
+Patch 9.1.1794
+Problem: configure: terminfo test does not work with musl
+ (T3rm1, after v9.9.1.0837)
+Solution: Include term.h in configure script, add forward declarations,
+ in case headers are not found.
+
+Patch 9.1.1795
+Problem: MNV9: popup_show() may return void
+Solution: Modify popup_show() to return -1 for an invalid popup window
+ id (Yegappan Lakshmanan).
+
+Patch 9.1.1796
+Problem: Wrong cursor position with wrapped "after" virtual text and
+ 'showbreak' (Ben Jackson)
+Solution: Count size of 'showbreak' in wrapped "after" virtual text in
+ line size (zeertzjq).
+
+Patch 9.1.1797
+Problem: completion: autocompletion can be improved
+Solution: Add support for "longest" and "preinsert" in 'autocomplete';
+ add preinserted() (Girish Palya)
+
+Patch 9.1.1798
+Problem: Wrong display with 'smoothscroll' and long wrapped virtual
+ text at EOL.
+Solution: Handle w_skipcol inside long wrapped virtual text at EOL (zeertzjq).
+
+Patch 9.1.1799
+Problem: completion: crash with autcompletion (Maxim Kim)
+Solution: Rework remove_old_matches (Girish Palya).
+
+Patch 9.1.1800
+Problem: completion: strange behaviour with 'ac'
+ completeopt=longest,preinsert (zeertzjq)
+Solution: Let preinsert take precedence (Girish Palya).
+
+Patch 9.1.1801
+Problem: MNV9: misleading error when extending dictionary (lacygoill).
+Solution: Give a proper error message when a Dict type is used with a
+ compound operator (Yegappan Lakshmanan).
+
+Patch 9.1.1802
+Problem: 'nowrap' in a modeline may hide malicious code.
+Solution: Forcibly use '>' as 'listchars' "extends" if 'nowrap' was set
+ from a modeline (zeertzjq).
+
+Patch 9.1.1803
+Problem: Amiga: build errors
+Solution: Update preprocessor conditionals (Ola Söder).
+
+Patch 9.1.1804
+Problem: Wrong indentation of nested ifdefs in findfile.c
+Solution: Update indentation (Ola Söder).
+
+Patch 9.1.1805
+Problem: Amiga: Missing build date in version string
+Solution: Set build date in CFLAGS in Makefile (Ola Söder).
+
+Patch 9.1.1806
+Problem: Missing PROTO defines
+Solution: Update ifdefs, update Makefile dependencies, updated proto files
+ (Hirohito Higashi).
+
+Patch 9.1.1807
+Problem: :set doesn't clear local insecure flag like :setlocal does.
+Solution: Also clear the local insecure flag when using :set (zeertzjq).
+
+Patch 9.1.1808
+Problem: Option insecure flags not copied when splitting window.
+Solution: Move window-local insecure flags to winopt_T and copy them
+ properly (zeertzjq).
+
+Patch 9.1.1809
+Problem: winclip.pro included in PRO_AUTO
+Solution: Remove it from PRO_AUTO since it is already defined in
+ PRO_MANUAL (Hirohito Higashi).
+
+Patch 9.1.1810
+Problem: completion: "longest" doesn't work for manual completion when
+ 'autocomplete' is on (after 9.1.1800).
+Solution: Only reset compl_get_longest when enabling autocompletion (zeertzjq)
+
+Patch 9.1.1811
+Problem: Amiga: Initialization of random buffer can be improved
+Solution: Use RANDOM device when available (Ola Söder)
+
+Patch 9.1.1812
+Problem: completion: flicker with slow LSPs
+Solution: Disable flushing the changed text (Girish Palya).
+
+Patch 9.1.1813
+Problem: MS-Windows: title bar is always white
+Solution: Set_caption() and set the title bars color to the Normal
+ highlighting background (Mao-Yining)
+
+Patch 9.1.1814
+Problem: Patch v9.1.1812 causes crashes
+Solution: Revert v9.1.1812
+
+Patch 9.1.1815
+Problem: file mode changes in os_amiga.pro to 644 (RestorerZ after v9.1.1811)
+Solution: Fix the permissions of proto/os_amiga.pro to 644 (Hirohito Higashi).
+
+Patch 9.1.1816
+Problem: existing icon files are dated
+Solution: Update and remake those icons using 256 colors (RestorerZ).
+
+Patch 9.1.1817
+Problem: popup: there are some position logic bugs
+Solution: Refactor position logic and fix a few bugs (Girish Palya).
+
+Patch 9.1.1818
+Problem: possible crash when calculating topline in diff.c (youngmith)
+Solution: Check for pointer being Null before accessing it.
+
+Patch 9.1.1819
+Problem: Cannot configure the inner foldlevel indicator for the
+ foldcolumn
+Solution: Add "foldinner" suboption value to the 'fillchar' option
+ (Maria José Solano).
+
+Patch 9.1.1820
+Problem: completion: some issues with 'acl' when "preinsert" and
+ "longest" is in 'completeopt' (musonius, after v9.1.1638)
+Solution: Fix various issues (see details below) (Girish Palya).
+
+Patch 9.1.1821
+Problem: filetype: Not all PKL files are recognized
+Solution: Detect *.pcf as pkl filetype, detect using the pkl-lsp://
+ protocol as pkl filetype, include PKL syntax script (Jan Claußen).
+
+Patch 9.1.1822
+Problem: Makefile still supports Perl < 5.005
+Solution: Remove support for Perl < 5.005, it's long been obsolete
+ (Hirohito Higashi)
+
+Patch 9.1.1823
+Problem: diff: w_topline may be invalidated
+Solution: Update lnum in diff_set_topline() (Yee Cheng Chin).
+
+Patch 9.1.1824
+Problem: tests: no test for displaying 'foldcolumn' with Unicode
+ "foldinner" in 'fillchars'.
+Solution: Add a few more test cases. Also fix misplaced "foldinner"
+ entry in version9.txt (zeertzjq).
+
+Patch 9.1.1825
+Problem: completion: flicker when LSP server is slow
+Solution: reinsert leader text before invoking user function (Girish Palya).
+
+Patch 9.1.1826
+Problem: Patch v9.1.1230 causes confusion about Ctrl-C behaviour
+ (kuuote, after v9.1.1230)
+Solution: Revert the behaviour, keep the old behaviour.
+
+Patch 9.1.1827
+Problem: completion: v9.1.1797 broke Ctrl-Y behaviour
+ (ddad431, after v9.1.1797)
+Solution: Restore correct behaviour (Girish Palya).
+
+Patch 9.1.1828
+Problem: local variables shadowed by import names
+Solution: Check if a local variable exists before handling imports (thinca).
+
+Patch 9.1.1829
+Problem: filetype: KerML and SysML files are not recognized
+Solution: Detect *.kerml as kerml filetype, detect *.sysml as sysml
+ filetype, include a kerml and sysml filetype plugin
+ (Daumantas Kavolis).
+
+Patch 9.1.1830
+Problem: MS-Windows: Dark mode titlebar is not configurable (after v9.1.1813)
+Solution: Revert Patch v9.1.1813
+
+Patch 9.1.1831
+Problem: vertical separator of 'winfixwidth' windows may remain if they
+ become right-most windows from closing windows to the right.
+Solution: Don't implicitly rely on frame_new_width to fix vseps, as the
+ call may be skipped for 'winfixwidth' windows to preserve
+ their width; do it explicitly in winframe_remove (Sean Dewar).
+
+Patch 9.1.1832
+Problem: if_perl: contains references to legacy if_perlsfio.{c,pro} and
+ USE_SFIO
+Solution: Remove those references (Hirohito Higashi).
+
+Patch 9.1.1833
+Problem: completion: fuzzy candidates are not sorted (ddad431)
+Solution: Always sort fuzzy candidates (Girish Palya).
+
+Patch 9.1.1834
+Problem: MS-Windows: not possible to highlight the title bar
+Solution: Make the title/caption bar configurable by introducing the
+ 'go-C' option value which allows to highlight it using the
+ TitleBar and TitleBarNC highlighting groups (Mao-Yining).
+
+Patch 9.1.1835
+Problem: not possible to style popup borders globally
+Solution: Add the 'pumborder' option (Girish Palya).
+
+Patch 9.1.1836
+Problem: 'cursorlineopt' "screenline" isn't redrawn when moving cursor
+ and then using line("w0") and :retab that does nothing.
+Solution: Call redraw_for_cursorcolumn() when setting a valid w_virtcol
+ (zeertzjq).
+
+Patch 9.1.1837
+Problem: tests: Test_plugin_evaluate_in_popup() fails on 32bit arch
+ (James McCoy)
+Solution: Instead of evaluating the ptr, let's evaluate just the pointer
+ content, skipping printing the pointer address.
+
+Patch 9.1.1838
+Problem: proto files out of sync
+Solution: Update proto files (Hirohito Higashi).
+
+Patch 9.1.1839
+Problem: Window may have wrong height if resized from another tabpage.
+Solution: Improve check for whether a tabline has been added (zeertzjq).
+
+Patch 9.1.1840
+Problem: Generating prototype files does not work on all platforms
+Solution: Rework prototypes generation using python instead of cproto,
+ enable it in CI to test it for each PR (Hirohito Higashi).
+
+Patch 9.1.1841
+Problem: Patch 9.1.1840 adds python build dependency (chdizza)
+Solution: Update dependencies (Hirohito Higashi).
+
+Patch 9.1.1842
+Problem: MS-Windows: build failure when mzscheme is included
+ (dertuxmalwieder, after v9.1.1838)
+Solution: skip specific section when PROTO is defined (Hirohito Higashi).
+
+Patch 9.1.1843
+Problem: tests: Test_search_stat_option() may fail on slow systems
+Solution: test_search_stat: Extend searchcount() timeout if the test is
+ being re-run due to flakiness (James McCoy).
+
+Patch 9.1.1844
+Problem: Makefile: dependencies not updated (Hirohito Higashi)
+Solution: Update Dependencies after v9.1.1841.
+
+Patch 9.1.1845
+Problem: Makefile: Missing dependency on osdef.h
+Solution: Add explicit dependency on auto/osdef.h.
+
+Patch 9.1.1846
+Problem: Build failure when building without wayland
+ (bennyyip, after v9.1.1844)
+Solution: Update Makefile dependencies again, remove wayland dependencies for
+ clipboard.c.
+
+Patch 9.1.1847
+Problem: No cmdline completion for :echoconsole, :echowindow and second
+ expression after :echoerr.
+Solution: Set EXPAND_EXPRESSION for :echoconsole and :echowindow, and
+ check for multiple expressions after :echoerr (zeertzjq).
+
+Patch 9.1.1848
+Problem: A few typos in the code
+Solution: Fix typos (zeertzjq).
+
+Patch 9.1.1849
+Problem: CTRL-F and CTRL-B don't work in more prompt
+Solution: Make CTRL-F and CTRL-B scroll by a screen down/up
+ (Bjoern Foersterling)
+
+Patch 9.1.1850
+Problem: completion: not triggered after i_Ctrl-W/i_Ctrl-U
+Solution: Trigger autocomplete when entering Insert mode (Girish Palya).
+
+Patch 9.1.1851
+Problem: memory leak in heredoc_get()
+Solution: Free "str" if list_append_string() fails (Lidong Yan).
+
+Patch 9.1.1852
+Problem: mnv9class: fix memory leak in parse_member()
+Solution: Free evalarg before returning (Lidong Yan).
+
+Patch 9.1.1853
+Problem: Ctrl-F and Ctrl-B at more prompt not working with kitty
+ keyboard protocol or modifyOtherKeys (after v9.1.1849).
+Solution: Call merge_modifyOtherKeys() in get_keystroke() (zeertzjq).
+
+Patch 9.1.1854
+Problem: unnecessary code in optionstr.c
+Solution: Remove it (Hirohito Higashi).
+
+Patch 9.1.1855
+Problem: Makefile: using non-portable syntax (Jonathan Schleifer)
+Solution: Remove duplicate parenthesis.
+
+Patch 9.1.1856
+Problem: cannot style popup window (border, shadow, etc)
+Solution: Extend the 'completepopup' option with additional properties
+ (Girish Palya).
+
+Patch 9.1.1857
+Problem: Missing clipboard provider support (lilydjwg)
+Solution: Add clipboard provider feature (Foxe Chen).
+
+Patch 9.1.1858
+Problem: v:register not reset after Visual mode command (laktak).
+Solution: Reset v:register if Visual mode was active before
+ do_pending_operator() (zeertzjq).
+
+Patch 9.1.1859
+Problem: completion: whitespace not cleared with 'ai'
+Solution: Remove spaces added by 'autoindent' when autocomplete is set
+ and restore did_ai in ins_compl_start() (Maxim Kim)
+
+Patch 9.1.1860
+Problem: clipboard register "+" enabled with cplipboard provider feature
+ (BenYip, after v9.1.1857)
+Solution: Don't make clipboard provider enable plus register on UNIX
+ (Foxe Chen).
+
+Patch 9.1.1861
+Problem: Amiga: Locating runtime directory and rc files can be
+ simplified.
+Solution: Use assigns since it's simpler and more in line with
+ how other Amiga applications work (Ola Söder).
+
+Patch 9.1.1862
+Problem: Wrong ifdefs for clipboard provider (after v9.1.1857)
+Solution: Update ifdefs (Foxe Chen).
+
+Patch 9.1.1863
+Problem: Cannot test for working "+" register
+Solution: Add a few more feature tests (Foxe Chen).
+
+Patch 9.1.1864
+Problem: tests: Clipboard provider feature test failure
+Solution: Check in the test that the + clipboard register is available,
+ fix compile warning (Foxe Chen)
+
+Patch 9.1.1865
+Problem: tests: test_codestyle does not notice lines containing only a tab
+Solution: Fix the whitespace issue in eval.txt, update test_codestyle to
+ notice such issues (Hirohito Higashi).
+
+Patch 9.1.1866
+Problem: HAVE_STRCSPN define is unused
+Solution: Remove all HAVE_STRCSPN defines (Ola Söder).
+
+Patch 9.1.1867
+Problem: HAVE_STDARG_H still defined (after v7.4.1216)
+Solution: Remove all remaining occurrences of HAVE_STDARG_H (Ola Söder).
+
+Patch 9.1.1868
+Problem: v:register is wrong in v_: command (after 9.1.1858).
+Solution: Don't reset v:register for OP_COLON (zeertzjq).
+
+Patch 9.1.1869
+Problem: tests: test failures with Python 3.14 and test_python3
+Solution: Adjust the expected error message (Yee Cheng Chin).
+
+Patch 9.1.1870
+Problem: :Tutor may not work as expected
+Solution: set buftype=nowrite instead of nofile (Phạm Bình An).
+
+Patch 9.1.1871
+Problem: Wrong 'showcmd' in the command-line window.
+Solution: Clear 'showcmd' when entering cmdwin (zeertzjq).
+
+Patch 9.1.1872
+Problem: Cmdline history not updated when mapping both <Up> and <CR>.
+Solution: Consider the command typed when in Cmdline mode and there is
+ no pending input (zeertzjq).
+
+Patch 9.1.1873
+Problem: Clipboard provider feature broke clipboard support (Yee Cheng Chin)
+Solution: Revert clipboard changes (Foxe Chen).
+
+Patch 9.1.1874
+Problem: PMenuShadow overrides highlighting attributes (Maxim Kim)
+Solution: Use hl_combine_attr() to combine popup attribute with shadow
+ attribute (Girish Palya).
+
+Patch 9.1.1875
+Problem: username parsing bug in netrw plugin when using remote adding
+ feature
+Solution: Allow any characters except for "@" (Václav Kobera), add a
+ test for the netrw plugin.
+
+Patch 9.1.1876
+Problem: pre-inserted text not exposed in complete_info()
+Solution: Add the pre-inserted text to the complete_info() MNV script
+ function (Girish Palya).
+
+Patch 9.1.1877
+Problem: cindent: wrong indentation after an array declaration
+Solution: check if the filetype if javascript before matching the syntax
+ (Anttoni Erkkilä).
+
+Patch 9.1.1878
+Problem: filetype: Soy files are not recognized
+Solution: Detect *.soy files as soy filetype, include a soy filetype plugin
+ (Riley Bruins).
+
+Patch 9.1.1879
+Problem: Crash when using a lambda funcref with :defer
+Solution: De-reference the partial correctly after invoking the deferred
+ functions (Yegappan Lakshmanan).
+
+Patch 9.1.1880
+Problem: Allocation error with complete_info() (after v9.1.1876)
+Solution: Make sure length is positive (kuuote).
+
+Patch 9.1.1881
+Problem: tests: test_popupwin fails after c8eeda9b due to syntax
+ highlighting change
+Solution: Regenerate terminal dumps Test_popup_setbuf*dump (Yee Cheng Chin).
+
+Patch 9.1.1882
+Problem: MNV9: Not able to use a lambda with :defer (Maxim Kim)
+Solution: Add support for this (Yegappan Lakshmanan).
+
+Patch 9.1.1883
+Problem: Wrong display with 'smoothscroll' when FEAT_DIFF is disabled.
+Solution: Use plines_correct_topline() (zeertzjq).
+
+Patch 9.1.1884
+Problem: :defer an empty lambda causes a crash
+ (Maxim Kim, after v9.1.1882)
+Solution: Check for missing arguments (Yegappan Lakshmanan).
+
+Patch 9.1.1885
+Problem: Wrong restored cursor position when re-entering a buffer
+ previously viewed in a window after making changes to the same
+ buffer in another window.
+Solution: Adjust per-window "last cursor" positions on buffer changes
+ (zeertzjq).
+
+Patch 9.1.1886
+Problem: filetype: Android aconfig files are not recognized
+Solution: Detect *.aconfig files as pbtxt filetype (Bruno Belanyi).
+
+Patch 9.1.1887
+Problem: string handling in strings.c can be improved
+Solution: Refactor strings.c and remove calls to STRLEN() (John Marriott).
+
+Patch 9.1.1888
+Problem: Wrong display with cpo+=$, matchparen and wrapped line.
+Solution: Use old cursor line height when scrolling with cpo+=$. Also
+ fix wrong redraw in non-current window (zeertzjq).
+
+Patch 9.1.1889
+Problem: filetype: not all AppleScript files are recognized
+Solution: Detect *.applescript files as applescript filetype (Samuel Huang).
+
+Patch 9.1.1890
+Problem: %P in 'statusline' doesn't behave as documented
+ (after 9.1.1479).
+Solution: Make the percentage 3-chars wide when not translated (zeertzjq).
+
+Patch 9.1.1891
+Problem: In visual mode, g<End> does not move to the last non-blank
+ character when the end of a line is on the same line as the
+ cursor (after v9.0.1753).
+Solution: Move the cursor back by one position if it lands after the
+ line (varsidry).
+
+Patch 9.1.1892
+Problem: A plugin does not know when startup scripts were already
+ triggered. This is useful to determine if a function is
+ called inside mnvrc or after (like when sourcing 'plugin/' files).
+Solution: Add the v:mnv_did_init variable (Evgeni Chasnovski).
+
+Patch 9.1.1893
+Problem: ICCF charity will dissolve
+Solution: Update references to Kuwasha
+
+Patch 9.1.1894
+Problem: global_runtime_dir appends /after directory when using XDG
+ configuration directory (Marius Gedminas).
+Solution: Do not append /after to RUNTIME_GLOBAL_AFTER.
+
+Patch 9.1.1895
+Problem: OSC terminal response hard to detect
+Solution: Add the <OSC> and <xOSC> pseudo keys (Foxe Chen).
+
+Patch 9.1.1896
+Problem: tests: Patch v9.1.1895 breaks CI, by failing screen dump tests
+ test_listlbr_utf8, test_diffmode and test_cmdline
+Solution: Revert it
+
+Patch 9.1.1897
+Problem: Mac: Build failure on Mac OS X 10.6 due to the use of generics
+ for the sound feature.
+Solution: Use the simple, non-generic Objective-C version (Luke Lollard).
+
+Patch 9.1.1898
+Problem: tabpanel: inconsistent use of cmdline and message area with
+ tabpanel
+Solution: Reduce the cmdline and message area by the horizontal size of
+ the tabpanel (Hirohito Higashi).
+
+Patch 9.1.1899
+Problem: tabpanel: getcmdscreenpos() wrong when tabpanel is shown
+Solution: Adjust f_getcmdscreenpos() and add cmdline_col_off
+ (Hirohito Higashi).
+
+Patch 9.1.1900
+Problem: tabpanel: wrong condition after v9.1.1898
+Solution: Update condition (Hirohito Higashi).
+
+Patch 9.1.1901
+Problem: tests: test_mnv9_generics fails when built without the job or
+ channel feature (lazypingu)
+Solution: Skip test if job/channel feature is not available.
+
+Patch 9.1.1902
+Problem: GTK fails to compile with !FEAT_PROP_POPUP
+Solution: Correct syntax under #ifdef (Drew Vogel).
+
+Patch 9.1.1903
+Problem: GTK naming still reflects GTK1 support
+Solution: Rename to avoid confusion (Drew Vogel).
+
+Patch 9.1.1904
+Problem: Code still supports GTK2 versions older than 2.4.
+Solution: Drop support for GTK2 < 2.4 (Drew Vogel).
+
+Patch 9.1.1905
+Problem: tabpanel: truncates terminal output (hokorobi)
+Solution: Use topframe->fr_width, not Columns (which includes the
+ tabpanel width) (Hirohito Higashi)
+
+Patch 9.1.1906
+Problem: filetype: not all Ruby files are recognized
+Solution: Detect *.rbi and Brewfile as ruby filetype (botantony).
+
+Patch 9.1.1907
+Problem: xterm: no support for mouse buttons 8 and 9
+Solution: Add support for terminals with xterm-like mouse functionality
+ (notuxic).
+
+Patch 9.1.1908
+Problem: tests: test_crash.mnv times out in CI ASAN builds
+Solution: Increase timeout for ASAN or Valgrind runs.
+
+Patch 9.1.1909
+Problem: filetype: .mom files recognized as nroff files
+Solution: Detect *.mom files as groff filetype instead (Callum Andrew).
+
+Patch 9.1.1910
+Problem: tests: test failures in Test_term_gettitle() in CI
+Solution: CI: Allow for title buffering in Test_term_gettitle()
+ (Aliaksei Budavei).
+
+Patch 9.1.1911
+Problem: build failure on Solaris Sparc with gcc 5 (idgn23, after v9.1.1736)
+Solution: Correctly initialize the key_name variable.
+
+Patch 9.1.1912
+Problem: tests: test_plugin_comment fails, because it depends on nroff
+ filetype for .mom file (after v9.1.1909)
+Solution: Explicitly set filetype to nroff.
+
+Patch 9.1.1913
+Problem: Error message with :unlet! and non-existing dictionary item
+ (Coacher)
+Solution: Set GLV_QUIET when using unlet with bang attribute.
+
+Patch 9.1.1914
+Problem: runtime(netrw): LocalBrowseCheck() wipes unnamed buffers when
+ g:netrw_fastbrowse=0 (Carlos Falgueras García)
+Solution: Check that bufname() is not empty.
+
+Patch 9.1.1915
+Problem: :breaklist accepts unprocessed arguments.
+Solution: Remove EX_EXTRA flag from the Ex command definition (Doug Kearns).
+
+Patch 9.1.1916
+Problem: WinEnter autocommand may confuse MNV when closing tabpage (hokorobi)
+Solution: Verify that curwin did not change in close_others().
+
+Patch 9.1.1917
+Problem: MNV9: incorrect type inference with mkdir() (dezza)
+Solution: Before compiling a RHS expression in an assignment, save the
+ new local variable contents (Yegappan Lakshmanan).
+
+Patch 9.1.1918
+Problem: completion: crash with fuzzy completion (Christian Brabandt)
+Solution: When completion candidates are gathered from a different
+ window, and when completing `<c-p>`, linked list should be
+ sorted only after all items are collected (Girish Palya).
+
+Patch 9.1.1919
+Problem: tabpanel: cannot handle mouse clicks in command line
+ (char101, after v9.1.1898)
+Solution: Update the condition that checks if the mouse pointer is on
+ the command line (Hirohito Higashi).
+
+Patch 9.1.1920
+Problem: tests: not enough testing for wildtrigger() pum redrawing.
+Solution: Also test redrawing when leaving cmdline mode (zeertzjq).
+
+Patch 9.1.1921
+Problem: xdiff: included xdiff code is outdated because it is based on
+ git 2.40.0
+Solution: Sync with xdiff from git 2.52 (Yee Cheng Chin).
+
+Patch 9.1.1922
+Problem: Wrong virtcol('$') with virtual text at EOL (rickhowe).
+Solution: Also add 1 to end virtcol when there is virtual text (zeertzjq).
+
+Patch 9.1.1923
+Problem: When assigning to @. in a :let command an incorrect "E15"
+ error is emitted.
+Solution: Emit the correct "E354" error. (Doug Kearns).
+
+Patch 9.1.1924
+Problem: 'commentstring' requires the +folding feature but is used in
+ contexts other than folding.
+Solution: Remove the +folding feature guards from 'commentstring' and
+ make it available in all builds (Doug Kearns).
+
+Patch 9.1.1925
+Problem: make depend does not add osdef.h for the dependencies (Drew Vogel)
+Solution: Move ifdef PROTO (Hirohito Higashi).
+
+Patch 9.1.1926
+Problem: xdiff: Coverity warning with MAX_CNT/UINT_MAX usage
+ (after v9.1.1921)
+Solution: Replace XDL_MIN macro to a manual check (Yee Cheng Chin).
+
+Patch 9.1.1927
+Problem: Wayland: clipboard code too complex
+Solution: Simplify clipboard related code around W23/W24 (Foxe Chen).
+
+Patch 9.1.1928
+Problem: xxd: exit_with_usage() can be simplified
+Solution: Clean up exit_with_usage() formatting slightly (Stefan Haubenthal).
+
+Patch 9.1.1929
+Problem: completion: spell completion wrong with fuzzy
+Solution: Disable fuzzy sort for spell completion (Maxim Kim).
+
+Patch 9.1.1930
+Problem: completion: 'completefuzzycollect' option is too obscure
+Solution: Deprecate the option, but don't error out for existing scripts,
+ behave like 'completefuzzycollect' is set when fuzzy
+ completion is enabled (Girish Palya).
+
+Patch 9.1.1931
+Problem: completion: wrong item selected with fuzzy and noinsert
+ (Evgeni Chasnovski)
+Solution: Reset selected item after fuzzy sort (Girish Palya).
+
+Patch 9.1.1932
+Problem: OSC terminal response hard to detect
+Solution: Add the <OSC> and <xOSC> pseudo keys (Foxe Chen).
+
+Patch 9.1.1933
+Problem: completion: complete_match() MNV script function and
+ 'isexpand' option are not that useful and confusing
+ (after v9.1.1341)
+Solution: Remove function and option and clean up code and documentation
+ (Girish Palya).
+
+Patch 9.1.1934
+Problem: filetype: not all starlark files are recognized
+Solution: Detect *.sky files as starlark filetype (Bruno Belanyi).
+
+Patch 9.1.1935
+Problem: filetype: not all Erlang files are recognized
+Solution: Detect *.app.src and rebar.config files as erlang filetype
+ (John Parise).
+
+Patch 9.1.1936
+Problem: filetype: Erlang lexical files are not recognized
+Solution: Detect *.xrl files as leex filetype, include syntax and
+ filetype plugins (Jon Parise).
+
+Patch 9.1.1937
+Problem: tests: Test_matchfuzzy_initialized() fails
+Solution: Send a dummy key (Corey Hickey)
+
+Patch 9.1.1938
+Problem: tests: excessive wait in Test_matchfuzzy_initialized
+Solution: Use term_wait() instead of the TermWait() wrapper (Corey Hickey).
+
+Patch 9.1.1939
+Problem: tests: test_matchfuzzy() leaves swapfiles behind
+Solution: Close loaded buffers using "%bw".
+
+Patch 9.1.1940
+Problem: clipboard registers "+" and "*" synced without "autoselect"
+Solution: Remove code that explicitly syncs those clipboard registers
+ (Corey Hickey).
+
+Patch 9.1.1941
+Problem: tests: Test_execute_register() leaves swapfile behind
+Solution: Use :bw instead of :close to close the buffer completely.
+
+Patch 9.1.1942
+Problem: Assignment to read-only registers @: and @% is allowed during
+ compilation.
+Solution: Abort compilation and emit an E354 error when assigning to
+ these registers (Doug Kearns).
+
+Patch 9.1.1943
+Problem: Memory leak with :breakadd expr
+Solution: Free debug_oldval and debug_newval before assigning to them.
+ Verify the existing (though confusing) :breakadd expr behavior
+ (zeertzjq).
+
+Patch 9.1.1944
+Problem: gewininfo() does not return if statusline is visible
+Solution: Add status_height to the dict items returned by
+ getwininfo() (Hirohito Higashi).
+
+Patch 9.1.1945
+Problem: tests: Test_getbufwintabinfo() leaves swapfiles behind
+Solution: Close all open buffers using %bw!
+
+Patch 9.1.1946
+Problem: Cannot open the help in the current window
+Solution: Promote the example from tips.txt to a proper package and
+ include the helpcurwin package, add tests for it (Peter Kenny).
+
+Patch 9.1.1947
+Problem: [security]: Windows: MNV may execute commands from current
+ directory (Simon Zuckerbraun)
+Solution: Set the $NoDefaultCurrentDirectoryInExePath before running
+ external commands.
+
+Patch 9.1.1948
+Problem: Windows: MNV always adds the current directory to search path.
+ This should only happen when using cmd.exe as 'shell'. For
+ example, powershell won't run binaries from the current
+ directory.
+Solution: Only add current directory to system path, when using cmd.exe
+ as 'shell'.
+
+Patch 9.1.1949
+Problem: :stag does not use 'swichtbuf' option, though the
+ documentation states differently (Christian Brabandt)
+Solution: Respect 'switchbuf' option (Yegappan Lakshmanan).
+
+Patch 9.1.1950
+Problem: tests: Test_tagjump.mnv leaves swapfiles behind
+Solution: Close open buffers using :bw! instead of :close!
+
+Patch 9.1.1951
+Problem: tests: Test_windows_external_cmd_in_cwd() is only run in huge
+ builds (after 9.1.1947).
+Solution: Move it to test_system.mnv so that it is run in normal builds.
+
+Patch 9.1.1952
+Problem: tests: need better tests for tf files
+Solution: Add better filetype test for terraform/tf filetype
+
+Patch 9.1.1953
+Problem: gui_mch_set_titlebar_colors() doesn't need to be called when
+ 'go+=C' is not set.
+Solution: Switch the default value to false.
+
+Patch 9.1.1954
+Problem: Setting a byte in a blob, accepts values outside 0-255
+Solution: When setting a byte in a blob, check for valid values
+ (Yegappan Lakshmanan).
+
+Patch 9.1.1955
+Problem: sort() does not handle large numbers correctly
+ (Igbanam Ogbuluijah)
+Solution: Don't truncate the return value of tv_get_number_chk()
+ (Yegappan Lakshmanan).
+
+Patch 9.1.1956
+Problem: tests: test_sort.mnv leaves swapfiles behind
+Solution: Close open buffers using :bw! instead of :close!
+
+Patch 9.1.1957
+Problem: filetype: bpftrace files are not recognized
+Solution: Detect *.bt files as btftrace filetype,
+ include a btftrace filetype plugin (Stanislaw Gruszka).
+
+Patch 9.1.1958
+Problem: Wrong display when scrolling with 'scrolloff' and calling
+ sign_unplace() and setline() in CursorMoved (after 8.2.3204).
+Solution: Still scroll for changed lines below the top area when the top
+ is scrolled down (zeertzjq).
+
+Patch 9.1.1959
+Problem: Outputting long strings using :echowindow wraps one character
+ per line and display in reverse order (Hirohito Higashi)
+Solution: Use full width for :echowindow, reset msg_col after wrapping,
+ and increment lnum correctly when creating new lines (glepnir).
+
+Patch 9.1.1960
+Problem: When the popup menu is displayed above the cursor and the
+ selected item has no room below for the info popup,
+ popup_adjust_position() places the popup in the available
+ space above. The calculation added some extra lines, causing
+ the popup to be misaligned.
+Solution: For info popups, undo that extra spacing so the popup stays
+ aligned with the selected item (glepnir).
+
+Patch 9.1.1961
+Problem: :0tab behaves like :tab for :stag when 'switchbuf' contains
+ "newtab" (after 9.1.1949).
+Solution: Don't override cmod_tab if it's already non-zero (zeertzjq).
+
+Patch 9.1.1962
+Problem: filetype: Erlang application resource files are not recognized
+Solution: Add content-based filetype detection for application resource
+ files matching extension '*.app' (Doug Kearns).
+
+Patch 9.1.1963
+Problem: diff: missing diff size limit for xdiff
+Solution: Impose file size limit for internal diff (xdiff)
+ (Yee Cheng Chin).
+
+Patch 9.1.1964
+Problem: Wrong display when using setline() at hit-enter prompt
+ (after 8.2.3204).
+Solution: Only skip scrolling for changed lines in top area if it's
+ scrolled down due to w_topline change. Also add more testing
+ for what 8.2.3204 fixed (zeertzjq).
+
+Patch 9.1.1965
+Problem: When exiting at the end of the more prompt (at the hit enter
+ prompt) by hitting q the recording mode will be started.
+ (Jakub Łuczyński)
+Solution: Don't add the q key to the typeahead buffer
+ in the function wait_return (Bjoern Foersterling)
+
+Patch 9.1.1966
+Problem: MS-Windows: dark mode in gui is not supported
+Solution: Inplement the 'd' flag in 'guioptions' (Mao-Yining).
+
+Patch 9.1.1967
+Problem: if_python: 64bit numbers truncated
+Solution: cast python result to long long (lsq).
+
+Patch 9.1.1968
+Problem: tests: test_python3.mnv leaves swapfiles behind
+Solution: Close open buffers using :bw! instead of :close!
+
+Patch 9.1.1969
+Problem: Wrong cursor position after formatting with long 'formatprg'.
+Solution: Don't show hit-enter prompt when there are stuffed characters.
+
+Patch 9.1.1970
+Problem: visual end column returns wrong value after block edit
+Solution: update visual end column after block insert (phanium).
+
+Patch 9.1.1971
+Problem: Crash when buffer gets deleted inside charconvert during save
+Solution: Check for `b_saving` inside `can_unload_buffer()`, so we don’t try to
+ unload a buffer while it’s still being saved (glepnir).
+
+Patch 9.1.1971
+Problem: crash with invalid positional argument 0 in printf()
+Solution: Reject positional arguments <= 0.
+
+Patch 9.1.1972
+Problem: No way to access the clipboard without X11/Wayland.
+Solution: Add the clipboard provider feature (Foxe Chen).
+
+Patch 9.1.1973
+Problem: some minor problems with clipboard provider code
+ (after v9.1.1972)
+Solution: Fix minor issues (Foxe Chen)
+
+Patch 9.1.1974
+Problem: tests: missing cleanup in Test_bwipe_during_save().
+Solution: Reset &charconvert.
+
+Patch 9.1.1975
+Problem: blob2str() may call strcpy with a NULL pointer
+Solution: Check for NULL before calling STRNCPY().
+
+Patch 9.1.1976
+Problem: When using listeners, there is no way to run callbacks at
+ specific points in the redraw cycle.
+Solution: Add redraw_listener_add() and redraw_listener_remove() and
+ allow specifying callbacks for redraw start and end (Foxe Chen).
+
+Patch 9.1.1977
+Problem: MS-Windows: missing dependency on optiondefs.h in Mingw and
+ Cygwin Makefile (Mao-Yining)
+Solution: Update $INCL variable.
+
+Patch 9.1.1978
+Problem: tests: Test_smoothscroll_number() may fail because of 'showcmd'
+Solution: Send redraw command (Hirohito Higashi).
+
+Patch 9.1.1979
+Problem: :helpclose incorrectly accepts a range and a count.
+Solution: Remove EX_COUNT and EX_RANGE from the command definition
+ (Doug Kearns).
+
+Patch 9.1.1980
+Problem: filetype: N-Quads files are not recognized
+Solution: Detect *.nq files as nq filetype.
+
+Patch 9.1.1981
+Problem: tests: test suite may stop on error in gen_opt_test.mnv
+Solution: Use a different output file for log files (Muraoka Taro).
+
+Patch 9.1.1982
+Problem: Use after free with redraw_listener_add() (after: v9.1.1976)
+Solution: Copy Callbacks into listener struct (Foxe Chen).
+
+Patch 9.1.1983
+Problem: MNV9: class_name definition can be improved
+Solution: Use string_T to store class_name, avoid using STRLEN() calls,
+ simplify code, remove unused definition of struct
+ oc_newmember_S (John Marriott).
+
+Patch 9.1.1984
+Problem: terminal OSC52 support to access the clipboard can be improved
+Solution: Include and package the optional osc52 package, note: this
+ requires a MNV with clipboard provider feature (Foxe Chen).
+
+Patch 9.1.1985
+Problem: tests: test_sound.mnv fails when run locally on Windows
+Solution: Skip Test_play_silent in Windows non-GUI environments.
+
+Patch 9.1.1986
+Problem: clipboard provider does not work when redirecting messages
+ (BenYip, after v9.1.1972)
+Solution: Adjust ifdefs in ex_redir().
+
+Patch 9.1.1987
+Problem: assert_equal() prepends unnecessary ':' when typed (after 9.0.1758).
+Solution: Don't change a NULL stacktrace to an empty string (zeertzjq).
+
+Patch 9.1.1988
+Problem: osc52 package can be further improved (after v9.1.1984).
+Solution: Improve plugin, update test and check for clipboard_provider
+ feature (Foxe Chen).
+
+Patch 9.1.1989
+Problem: MNV intro screen shows register message (after v9.1.1893)
+Solution: Remove the register message, registering is no longer useful
+ and possible.
+
+Patch 9.1.1990
+Problem: tests: Test_term_gettty() fails when using conpty on Windows,
+ CI uses winpty, so this test passes.
+Solution: Skip the test Test_term_gettty(). Since conpty communicates
+ via anonymous pipes, there is no name that can be obtained
+ with term_gettty() (Muraoka Taro)
+
+Patch 9.1.1991
+Problem: :setlocal changes effective global 'omnifunc' (Maxim Kim)
+Solution: Don't change global callback when using :setlocal (zeertzjq).
+
+Patch 9.1.1992
+Problem: MNV9: heap buffer overflow with COMPAREANY instruction
+Solution: Verify the type and error out in case of different types (Foxe Chen)
+
+Patch 9.1.1993
+Problem: MS-Windows: compile error because of implicit size conversions
+ (after v9.1.1983)
+Solution: Change type casts
+
+Patch 9.1.1994
+Problem: More deterministic synchronisation can be established between
+ processes running test cases and collecting visual effects to
+ a screendump file for future verification by anticipating
+ the availability of known parts of such a file and asserting
+ the location of the cursor.
+Solution: Provide a convenience test function that waits a specified
+ time for cursor positioning (Aliaksei Budavei).
+
+Patch 9.1.1995
+Problem: Data races between test buffers are currently addressed by
+ relying on arbitrary execution delays or blissfully dismissed.
+Solution: Prefer more deterministic synchronisation between test buffers
+ for test cases that generate screendump files with expected
+ results (Aliaksei Budavei).
+
+Patch 9.1.1996
+Problem: tests: test_cmdline.mnv leaves swapfiles behind
+Solution: Close open buffers using :bw! instead of :close!
+
+Patch 9.1.1997
+Problem: Missing out-of-memory check in mnv9class.c in calls to
+ mnv_strnsave().
+Solution: Refactor is_duplicate_variable() and is_duplicate_enum() and
+ make use of string_T struct instead (John Marriott).
+
+Patch 9.1.1998
+Problem: Not enough tests for :setlocal omnifunc (after 9.1.1991).
+Solution: Move the last :new after :setlocal. Also test with 'complete'
+ (zeertzjq).
+
+Patch 9.1.1999
+Problem: clipboard provider does not respect 'clipboard' option
+ (Satoru Kitaguchi, after v9.1.1972)
+Solution: Make clipboard provider register respect "unnamed/unnamedplus"
+ from the 'clipboard' option value.
+
+Patch 9.1.2000
+Problem: MNV9: class and object member names are stored as char_u *
+ pointer requiring repeated strlen() calls and making it harder
+ to use length-aware string operations consistently.
+Solution: Store ocm_name as a string_T instead of char_u * (John Marriott).
+
+Patch 9.1.2001
+Problem: After :botright copen and closing the quikfix window, the
+ cursor ends up in the wrong window. The problem is fr_child
+ always points to the first (leftmost for FR_ROW, topmost for
+ FR_COL) child frame. When do :vsplit, the new window is
+ created on the left, and frame_insert() updates the parent's
+ fr_child to point to this new left window.
+Solution: Create a snapshot before open the quickfix window and restore
+ it when close it (glepnir).
+
+Patch 9.1.2002
+Problem: MNV9: heap-use-after-free when when accessing protect class
+ member (Foxe Chen)
+Solution: Set cl->class_type_list and return directly, add tests for
+ using protected class method and variable from another class
+ (Yegappan Lakshmanan).
+
+Patch 9.1.2003
+Problem: tests: Test_glob_symlinks may fail on Windows with UCRT
+ runtime
+Solution: Comment out the code, do not use _wstat().
+
+Patch 9.1.2004
+Problem: MS-Windows: If a directory with a single character name is
+ included in the PATH environment variable without a trailing
+ path separator, executable() will not be able to find the
+ executable file under it.
+Solution: The second argument of the after_pathsep() function is now
+ passed the next pointer where a path separator may exist
+ (Muraoka Taro).
+
+Patch 9.1.2005
+Problem: MS-Windows: Missing fullscreen support for GUI version
+Solution: Add "s" flag to guioptions (Mao-Yining)
+
+Patch 9.1.2006
+Problem: ANSI escape colors are not displayed correctly in
+ non-termguicolors in mnv (cli) on Windows. The red and blue
+ channels seem to be swapped.
+Cause: When converting VTerm ANSI index colors to cterm colors in
+ terminal.c, the Windows case equivalent to NR-16 (:help
+ cterm-colors) is ignored.
+Solution: Created and used a table to convert ANSI indexed colors to
+ cterm's NR-16 representation (Windows only). This table
+ corresponds to the inverse conversion of cterm_ansi_idx in
+ term.c. The values in both tables are exactly the same, but
+ the meanings are opposite, so they are separate tables
+ (Muraoka Taro).
+
+Patch 9.1.2007
+Problem: bpftrace files are not recognized from the hashbang line.
+Solution: Add a hashbang check (Stanislaw Gruszka).
+
+Patch 9.1.2008
+Problem: filetype: hylo files are not recognized
+Solution: Detect *.hylo files as hylo filetype (Ambrus Tóth).
+
+Patch 9.1.2009
+Problem: tests: "Xm4" test directory may not be deleted
+Solution: Use "R" flag with mkdir() call to have the directory
+ recursively deleted at the end of function Test_m4_format()
+ (Muraoka Taro).
+
+Patch 9.1.2010
+Problem: Missing out-of-memory checks in mnv9class.c (after v9.1.2000).
+Solution: Return FAIL early (John Marriott).
+
+Patch 9.1.2011
+Problem: crash when unreferencing gtk icon theme
+ (noamhalevy-wq, after v9.1.1583)
+Solution: Remove the g_object_unref() call.
+
+Patch 9.1.2012
+Problem: MNV9: cannot initialize class member with protected var
+Solution: Allow this to work if this happens within the same class
+ (Foxe Chen).
+
+Patch 9.1.2013
+Problem: tests: When opening a conpty terminal, if process startup
+ fails, it will silently exit. As a result, the
+ Test_terminal_shell_option in test_terminal3.mnv failed in
+ conpty.
+Solution: Make conpty fail with an error messages in the same way as winpty
+ (Muraoka Taro).
+
+Patch 9.1.2014
+Problem: clipboard: clipboard register corrupted with clipboard
+ provider (Satoru Kitaguchi and mikoto2000 after v9.1.1972)
+Solution: Only adjust clipboard register points to the unnamed register
+ (Foxe Chen).
+
+Patch 9.1.2015
+Problem: blob2string() stopped after an empty line
+Solution: Specifically check for empty content (Foxe Chen).
+
+Patch 9.1.2016
+Problem: At "if(0) do if(0); while(0); else", else should be aligned
+ with outer if, but is aligned with inner if.
+Solution: In function find_match, ignore "if" and "else" inside a
+ do-while loop, when looking for "if". (Anttoni Erkkilä).
+
+Patch 9.1.2017
+Problem: getregionpos() depends on 'linebreak' setting
+Solution: Reset linebreak setting temporarily (McAuley Penney).
+
+Patch 9.1.2018
+Problem: proto: ops.pro outdated (after v9.1.2017)
+Solution: Regenerate the ops.pro proto file (Tao).
+
+Patch 9.1.2019
+Problem: When virtualedit is set to all, the cursor is supposed to be
+ permitted to reside anywhere, including on the virtual space
+ beyond the end of the buffer's text. Switching modes triggered
+ a routine that "fixed" a cursor that was past the end of the
+ line by shifting it back to the last actual character in the
+ line and compensating with a virtual column offset. While
+ visually identical, this re-encoding changed the underlying
+ byte index, causing position-reporting functions to return
+ inconsistent values after a mode change.
+Solution: Skip this coordinate adjustment when virtual editing is fully
+ enabled. By treating the line terminator as a valid, stable
+ position, the cursor’s internal representation remains
+ unchanged when entering or exiting Visual mode, ensuring
+ consistent coordinate reporting. Add a regression test to
+ check this functionality (McAuley Penney).
+
+Patch 9.1.2020
+Problem: tests: test_virtualedit.mnv leaves swapfiles behind
+Solution: Close open buffers using :bw! instead of :close!
+
+Patch 9.1.2021
+Problem: filetype: fluent files are not recognized
+Solution: Detect *.ftl files as fluent filetype (ners).
+
+Patch 9.1.2022
+Problem: Compilation issues on Windows when MNV
+ is compiled with OLE enabled, as "if_ole.cpp" cannot compile
+ due to the keyword conflict (after v9.1.2012).
+Solution: Rename the member variable of `exarg` from `class` to `ea_class`.
+ (Wei Tang)
+
+Patch 9.1.2023
+Problem: A BufAdd autocommand may cause alist_add() to use freed
+ memory, this is caused by the w_locked variable unset too
+ early (henices)
+Solution: In trigger_undo_ftplugin() only set w_locked to false, if it
+ was false when calling the function.
+
+Patch 9.1.2024
+Problem: 'fsync' option cannot be set per buffer
+Solution: Make 'fsync' option global-local (glepnir).
+
+Patch 9.1.2025
+Problem: Conpty terminal process may not start.
+Solution: Do not close the input handle at EOF when conpty is in use
+ (Muraoka Taro).
+
+Patch 9.1.2026
+Problem: tests: Patch 9.1.2019 not tested properly.
+Solution: Add missing :exe (zeertzjq).
+
+Patch 9.1.2027
+Problem: filetype: bicep filetype used for 2 bicep file types
+Solution: Detect *.bicepparam files as bicep-param filetype, include
+ new bicep-params and bicep filetype plugin (Scott McKendry).
+
+Patch 9.1.2028
+Problem: Buffer overflow in buf_write() when converting incomplete
+ multi-byte characters (Kevin Goodsell)
+Solution: Make the buffer slightly larger.
+
+Patch 9.1.2029
+Problem: tests: the test_mnv9_class.mnv testfile is too long
+Solution: Split out the interface related test cases into a new
+ test file test_mnv9_interface.mnv (Yegappan Lakshmanan).
+
+Patch 9.1.2030
+Problem: inefficient use of ga_concat()
+Solution: Use ga_concat_len() when length is known (John Marriott).
+
+Patch 9.1.2031
+Problem: Makefile: cannot run make installinks twice
+Solution: Change "ln -s" to "ln -sf" to force creation of the symlinks
+ (Thomas Petazzoni).
+
+Patch 9.1.2032
+Problem: MNV9: error when using class member in Lambda
+Solution: Compare against uf_defclass variable (Foxe Chen).
+
+Patch 9.1.2033
+Problem: tests: Test_terminal_cwd in test_terminal.mnv fails flaky
+ in the Windows ConPTY terminal.
+Solution: In ConPTY, the timeout is extended to 1msec when reading a
+ channel associated with a job that is about to finish. This
+ allows MNV to read the last output of a process in a pseudo
+ console. Add comments to make the reasoning clear (Muraoka Taro).
+
+Patch 9.1.2034
+Problem: filetype: Fennel fnml files are not recognized (Alexei Mozaidze)
+Solution: Detect *.fnml files as fennel filetype.
+
+Patch 9.1.2035
+Problem: filetype: Fennel fnlm files are not recognized
+ (Alexei Mozaidze, after v9.1.2034)
+Solution: Detect *.fnlm files as fennel filetype, revert detecting
+ *.fnml files
+
+Patch 9.1.2036
+Problem: if_ruby: build error with ruby 4.0 (Mamoru Tasaka)
+Solution: Always define rb_check_typeddata (EnumDev).
+
+Patch 9.1.2037
+Problem: undo: cursor position not correctly restored
+Solution: Do not override the saved cursor position (altermo).
+
+Patch 9.1.2038
+Problem: tests: test_marks.mnv leaves swapfiles behind
+Solution: Close open buffers using :bw! instead of :close!
+
+Patch 9.1.2039
+Problem: if_ruby: crash when using Ruby/dyn 4.0 (after v9.1.2036)
+Solution: Fix Ruby 4.0 dynamic builds correctly by inlining
+ rb_check_typeddata (Yee Cheng Chin)
+
+Patch 9.1.2040
+Problem: :tlnumenu incorrectly accepts a range.
+Solution: Remove EX_RANGE and EX_ZEROR from the command definition and
+ use ADDR_NONE (Doug Kearns).
+
+Patch 9.1.2041
+Problem: tests: test_menu.mnv leaves swapfiles behind
+Solution: Close open buffers using :bw! instead of :close!
+
+Patch 9.1.2042
+Problem: filetype: systemd quadlet files are not recognized
+Solution: Detect additional patterns as systemd filetype (Ac5000).
+
+Patch 9.1.2043
+Problem: filetype: kos files are not reconized
+Solution: Detect *.kos files as kos filetype (Chris Dragan).
+
+Patch 9.1.2044
+Problem: Inefficient use of ga_concat()
+Solution: Use ga_concat_len() when the length is already known to avoid
+ use of strlen() (John Marriott).
+
+Patch 9.1.2045
+Problem: Mac: Build failure with Mac OS X 10.6
+ (Sergey Fedorov, after: v9.1.1748)
+Solution: Add ifdefs MAC_OS_X_VERSION_10_7 around the code that sets the
+ scheduler priority.
+
+Patch 9.1.2046
+Problem: MS-Windows: compile warnings in os_win32.c,
+ acp_to_enc() requires char_u* but others require char*
+ (John Marriott, after v9.1.2013)
+Solution: Cast the variables (Mao-Yining).
+
+Patch 9.1.2047
+Problem: MS-Windows: style issue in gui_w32.c
+Solution: Fix indentation, drop unnecessary braces (Mao-Yining).
+
+Patch 9.1.2048
+Problem: Pressing backspace in ConPTY on Windows deletes an entire
+ word, not just a single character. This is the same as
+ pressing Alt + backspace in cmd.exe.
+Solution: When using ConPTY on Windows, the `VTERM_KEY_BACKSPACE` key is
+ now sent when the Backspace key or Ctrl+H is detected (Muraoka Taro)
+
+Patch 9.1.2049
+Problem: MNV9: unexpected E1209 error
+Solution: Fix error message (Hirohito Higashi).
+
+Patch 9.1.2050
+Problem: tests: Test_cd_completion() may fail depending on the contents
+ of the root directory of the current drive on Windows.
+ readdir() may return a directory that cannot "cd" to, causing
+ this test to fail. An example of such a directory is
+ "System Volume Information" which only admin can "cd" to.
+Solution: When determining the directory to use for testing, use the
+ directory that we actually "cd" to successfully.
+ In addition, directories with '$' in their names are also
+ excluded, as they are considered environment variables during
+ completion and do not work as expected (Muraoka Taro).
+
+Patch 9.1.2051
+Problem: Test_cd_completion test fails in Appveyor. In Appveyor, a path
+ containing spaces was selected as the test target. But the
+ comparison failed because spaces were not taken into account
+ (after v9.1.2050)
+Solution: Escape spaces in paths for comparison (Muraoka Taro).
+
+Patch 9.1.2052
+Problem: Compile error when disabling linebreak feature
+Solution: Adjust ifdefs (Matthias Rader).
+
+Patch 9.1.2053
+Problem: If another find.exe derived from findutils is installed on
+ Windows, unintended behavior will occur. If MSYS2 is installed and
+ prioritized over the system path, then find.exe derived from
+ findutils will be launched during build, resulting in an
+ unintended warning message.
+Solution: Specify the absolute path including SYSTEMROOT to launch
+ find.exe (Muraoka Taro).
+
+Patch 9.1.2054
+Problem: Can't unpack tuple from imported function (Mao-Yining)
+Solution: Support multi-variable assignment from a tuple returned by an
+ imported function (Yegappan Lakshmanan).
+
+Patch 9.1.2055
+Problem: Division by zero in :file after failing to wipe buffer
+ (after 8.2.4631).
+Solution: Still call buf_clear_file() when failing to wipe buffer (zeertzjq).
+
+Patch 9.1.2056
+Problem: tests: inconsistent indent and line breaking in Test_maparg().
+Solution: Consistently use spaces-only indent. Reorder fields to group
+ similar ones together and break lines at consistent positions.
+ Remove a mapping when it is no longer used (zeertzjq).
+
+Patch 9.1.2057
+Problem: Copying to clipboard register broken with 'go-P' (Coacher)
+Solution: Verify that clip_plus is available (Foxe Chen).
+
+Patch 9.1.2058
+Problem: b_locked_split is not checked for :sbuffer, which allows
+ autocommands to leave windows open to freed buffers.
+Solution: In do_buffer_ext, check just before possibly splitting, after
+ handling 'switchbuf'. Leave win_split to handle the check for
+ curbuf (Sean Dewar).
+
+Patch 9.1.2059
+Problem: filetype: Nickel files are not recognized
+Solution: Detect *.ncl files as nickel filetype (Hoang Nguyen)
+
+Patch 9.1.2060
+Problem: filetype: Rasi include files are not recognized
+Solution: Detect *.rasinc as rasi filetype (Hoang Nguyen).
+
+Patch 9.1.2061
+Problem: filetype: Koka files are not recognized
+Solution: Detect *.kk files as koka filetype (Hoang Nguyen).
+
+Patch 9.1.2062
+Problem: filetype: djot files are not recognized
+Solution: Detect *.dj and *.djot files as djot filetype (Hoang Nguyen).
+
+Patch 9.1.2063
+Problem: A few typos in the code and runtime files
+Solution: Fix those (zeertzjq).
+
+Patch 9.1.2064
+Problem: completion: segfault during file name completion
+Solution: Initialize compl_num_bests (Girish Palya).
+
+Patch 9.1.2065
+Problem: When building GmnvExt with MinGW, some DLLs are still linked
+ even if STATIC_STDCPLUS=yes is set.
+Solution: Following the MNV core, make some libraries explicitly
+ statically linked. The order of libraries is important, and
+ gcc_eh must be placed before winpthread (Muraoka Taro).
+
+Patch 9.1.2066
+Problem: :wqall! doesn't close a terminal buffer like :qall! does
+ (after 8.0.1525).
+Solution: Check eap->forceit (zeertzjq).
+
+Patch 9.1.2067
+Problem: shadow variable warning in menu.c
+Solution: Rename the variable (John Marriott).
+
+Patch 9.1.2068
+Problem: :bdelete/bunload/bwipeout may attempt to switch to a closing
+ buffer, which fails. (after 9.1.2058)
+Solution: Don't consider switching to closing buffers (Sean Dewar).
+
+Patch 9.1.2069
+Problem: when shortmess doesn't have 'S', backward search wrap doesn't
+ show the "W" before count. forward search works fine but
+ backward fails because the position check logic is backwards -
+ it checks if cursor < pos instead of using the existing
+ wrapped flag.
+Solution: Use sia->sa_wrapped flag that searchit() already sets
+ correctly (glepnir).
+
+Patch 9.1.2070
+Problem: Autocomplete breaks ":help" when 'dict' points to a large file
+ (lxhillwind)
+Solution: Reset autocompletion timer expiry flag (Girish Palya).
+
+Patch 9.1.2071
+Problem: tests: test_ins_complete.mnv leaves swapfiles behind
+Solution: Close open buffers using :bw! instead of :close!
+
+Patch 9.1.2072
+Problem: Socket server has some small issues
+Solution: Fix issues (Foxe Chen).
+
+Patch 9.1.2073
+Problem: auto/configure needs to be regenerated (after v9.1.2072)
+Solution: Run make autoconf and update the configure script.
+
+Patch 9.1.2074
+Problem: Compile error with Motif GUI (Tony Mechelynck, after v9.1.2072)
+Solution: Add ifdef FEAT_GUI_GTK
+
+Patch 9.1.2075
+Problem: tests: wrong change to test_ins_complete.mnv
+ (zeertzjq, after v9.1.2071)
+Solution: Revert unintentional changes.
+
+Patch 9.1.2076
+Problem: tests: When running the MinGW test, an error occurs after
+ generating opt_test.mnv.
+Solution: Rewrite the error detection in cmd.exe syntax (Muraoka Taro).
+
+Patch 9.1.2077
+Problem: MNV9: type issue when appending item to a list (Peter Kenny)
+Solution: When adding a new item at the end of a list in mnv9script, use
+ the proper item type (Yegappan Lakshmanan).
+
+Patch 9.1.2078
+Problem: A few more typos in various files
+Solution: Fix those (zeertzjq, antonkesy).
+
+Patch 9.1.2079
+Problem: use-after-free with 'quickfixtextfunc' wiping buffer (henices)
+Solution: Evaluate 'quickfixtextfunc' with textlock enabled.
+
+Patch 9.1.2080
+Problem: W23/W24 messsage appears on :reg (Coacher)
+Solution: Silence message when using :reg command (Foxe Chen).
+
+Patch 9.1.2081
+Problem: MS-Windows: "#ifdef FEAT_GUI" exists within "ifdef
+ FEAT_GUI_MSWIN", which is confusing when reading the code.
+ FEAT_GUI is always defined if FEAT_GUI_MSWIN is defined (see
+ mnv.h). Therefore, this check and the else block are unnecessary.
+Solution: Removed unnecessary "#ifdef FEAT_GUI" (Muraoka Taro).
+
+Patch 9.1.2082
+Problem: modeless auto-select not working (Coacher)
+Solution: Add support for modeless autoselect (Foxe Chen).
+
+Patch 9.1.2083
+Problem: style: wrong indentation of nested ifdefs
+Solution: Fix indentation (Hirohito Higashi).
+
+Patch 9.1.2084
+Problem: Compile error when build with job feature (after v9.1.2077)
+Solution: Add ifdefs (John Marriott).
+
+Patch 9.1.2085
+Problem: Use-after-free in winframe_remove() (henices)
+Solution: Set window_layout_locked() inside winframe_remove()
+ and check that writing diff files is disallowed when the
+ window layout is locked.
+
+Patch 9.1.2086
+Problem: memory leak when not evaluating (just parsing) invalid literal
+ dict.
+Solution: Always clear the key's typval (Sean Dewar)
+
+Patch 9.1.2087
+Problem: Crash when using :tabonly in BufUnload.
+Solution: Set curbuf when setting curwin->w_buffer. Don't wipe out a
+ buffer if there are no other buffers. Don't decrement
+ b_nwindows if it was 0 before buf_freeall() (zeertzjq).
+
+Patch 9.1.2088
+Problem: Redundant NULL checks in find_pattern_in_path().
+Solution: Remove the NULL checks. Also fix typos in test_diffmode.mnv
+ (zeertzjq).
+
+Patch 9.1.2089
+Problem: Wayland: Clipboard not working with external programs on
+ Wayland (devsnek)
+Solution: Simplify the Wayland offer logic and drop offering the special
+ mime type (Foxe Chen).
+
+Patch 9.1.2090
+Problem: Last buffer not freed with EXITFREE (after 9.1.2087).
+Solution: Free the last buffer when inside free_all_mem() (zeertzjq).
+
+Patch 9.1.2091
+Problem: Ruby headers define HAVE_FSYNC, which leaks into MNV sources
+ on Windows and changes conditional compilation of buf_T. This
+ causes struct layout mismatches in if_ruby.c and results in a
+ different offset for the b_p_bl property, making MNV::Buffer
+ access fail (after v9.1.2024)
+Solution: Undefine HAVE_FSYNC after including the Ruby headers.
+
+Patch 9.1.2092
+Problem: Cannot detect kitty foreground/background color
+Solution: Update builtin termcap entries (Mateo Gjika).
+
+Patch 9.1.2093
+Problem: heap-use-after-free when wiping buffer in TabClosedPre.
+Solution: Check window_layout_locked() when closing window(s) in another
+ tabpage (zeertzjq).
+
+Patch 9.1.2094
+Problem: filetype: tiger files are not recognized
+Solution: Detect *.tig files as tiger filetype (Christian Clason).
+
+Patch 9.1.2095
+Problem: :wqall! doesn't quit when using :quit in BufWritePost
+ (after 8.0.1190).
+Solution: Restore old value of "exiting" when calling not_exiting()
+ instead of always resetting it to FALSE (zeertzjq).
+
+Patch 9.1.2096
+Problem: MNV9: truthiness issue with objects (kennypete)
+Solution: Return true for an non-null object (Yegappan Lakshmanan).
+
+Patch 9.1.2097
+Problem: TabClosedPre may be triggered twice for the same tab page when
+ closing another tab page in BufWinLeave (after 9.1.1211).
+Solution: Store whether TabClosedPre was triggered in tabpage_T (zeertzjq).
+
+Patch 9.1.2098
+Problem: Crash with 'wildmenu' when typing Ctrl-Y after Ctrl-A
+ (after 9.1.1714) (fizz-is-on-the-way).
+Solution: Check if there are matches before applying one (zeertzjq).
+
+Patch 9.1.2099
+Problem: Depending on the worker's environment, the line endings in
+ ja.sjis.po may differ from those in the source ja.po.
+Solution: By setting standard input and output to binary mode, the line
+ endings for input and output will match (Muraoka Taro)
+
+Patch 9.1.2100
+Problem: filetype: tiltfiles are not recognized
+Solution: Detect Tiltfiles.* and *.tiltfiles as tiltfile filetype (Luis Damnv)
+
+Patch 9.1.2101
+Problem: MNV9: more truthiness issues (kennypete)
+Solution: Class, enum and typealias cannot be used with the falsy
+ operator (Yegappan Lakshmanan).
+
+Patch 9.1.2102
+Problem: foldtext not reversed and cut off in 'rightleft' mode (bfredl)
+Solution: Fix the rightleft redrawing logic (Sergey Vlasov).
+
+Patch 9.1.2103
+Problem: tests: test_fold.mnv leaves swapfiles behind
+Solution: Close open buffer using :bw! instead of :close!
+
+Patch 9.1.2104
+Problem: readdirex() might be slow (Mao-Yining)
+Solution: Avoid double slash in path concatenation in create_readdirex_item()
+ (Yasuhiro Matsumoto).
+
+Patch 9.1.2105
+Problem: Not enough tests for using plain_vgetc().
+Solution: Add tests for using plain_vgetc() during various commands (zeertzjq)
+
+Patch 9.1.2106
+Problem: MNV9: class, enum and type alias can be used as value in an
+ expression (kennypete)
+Solution: Abort expression evaluation if class, enum or type alias is
+ used in an expression (Yegappan Lakshmanan).
+
+Patch 9.1.2107
+Problem: :normal may change cmdline history if the keys don't
+ explicitly leave Cmdline mode (after 9.1.1872).
+Solution: Check ex_normal_busy (zeertzjq).
+
+Patch 9.1.2108
+Problem: Test_foldtextresult_rightleft() does not restore 'columns'
+ (after v9.1.2102)
+Solution: Save and restore the value of 'columns' (zeertzjq).
+
+Patch 9.1.2109
+Problem: filetype: NetLinx fires are not recognized
+Solution: Detect *.axs and *.axi as netlinx filetype (kb).
+
+Patch 9.1.2110
+Problem: filetype: skhd files are not recognized
+Solution: Detect .skhdrc and skhdrc as skhd filetype, include a syntax and
+ filetype plugin, add syntax tests (Kiyoon Kim).
+
+Patch 9.1.2111
+Problem: MNV9: no error for elseif/else after else
+Solution: Report an error (Hirohito Higashi).
+
+Patch 9.1.2112
+Problem: long statusline may crash if using singlebyte encoding
+ (fizz-is-on-the-way)
+Solution: Drop the non-mbyte codepath and always use the mbyte code (zeertzjq)
+
+Patch 9.1.2113
+Problem: potential NULL pointer dereference issues (EpheraXun)
+Solution: Check returned pointer to be non NULL (Yasuhiro Matsumoto).
+
+Patch 9.1.2114
+Problem: modeless selection not copied to * register when P in
+ guioptions (Coacher)
+Solution: Make the "P" flag override the "a" and "A" flag (Foxe Chen).
+
+Patch 9.1.2115
+Problem: CI: wrong preprocessor indentation (after v9.1.2114)
+Solution: Update indentation (Yasuhiro Matsumoto).
+
+Patch 9.1.2116
+Problem: crash when using 'tagfunc' (Rodrigo Queipo)
+Solution: Do not add the user_data to the 'info' dictionary when called
+ for insert mode completion (the TAG_INS_COMP flag is set).
+ Completion should not depend on the state of a previous tag
+ jump (Yasuhiro Matsumoto).
+
+Patch 9.1.2117
+Problem: unnecessary braces in terminal.c
+ (Christ van Willegen, after v9.1.2113)
+Solution: Remove braces.
+
+Patch 9.1.2118
+Problem: 'cursorline' and part of 'statusline' are missing after
+ :diffput to an empty buffer.
+Solution: Make sure the cursor doesn't go beyond the last line after
+ :diffput (zeertzjq).
+
+Patch 9.1.2119
+Problem: tests: Test_language_cmd fails on OpenBSD because the test
+ uses an invalid locale name and expects the command to produce
+ an error. OpenBSD accepts (almost) any locale name as valid by
+ design, so the :lang command succeeds and the test fails.
+Solution: Slightly update the "bad" locale name to make it something
+ that OpenBSD considers invalid by adding a dot (but not ending
+ with ".UTF-8"). Maintain the original two underscores in the
+ name because that ensures Windows will also see it as invalid
+ (Kevin Goodsell).
+
+Patch 9.1.2120
+Problem: blob2str() does not restore trailing newline
+Solution: Append empty string (thinca).
+
+Patch 9.1.2121
+Problem: MNV9: type issue when modifying a variable using :legacy
+ (kennypete)
+Solution: In a mnv9 script, when modifying a variable using the legacy
+ command, check the type (Yegappan Lakshmanan).
+
+Patch 9.1.2122
+Problem: MNV9: Negating a float doesn't result in a boolean (kennypete)
+Solution: Make it return a boolean (Yegappan Lakshmanan).
+
+Patch 9.1.2123
+Problem: using NOT with a float returns a float in legacy mnv script
+ (kennypete)
+Solution: Return a number instead of a float (Yegappan Lakshmanan).
+
+Patch 9.1.2124
+Problem: blob2str() does not handle UTF-16 encoding (Hirohito Higashi)
+Solution: Refactor the code and fix remaining issues, see below
+ (Yasuhiro Matsumoto).
+
+Patch 9.1.2125
+Problem: MS-Windows: DirectX rendering can be improved
+Solution: Use lpDx advance, fix vertical text shift and correct
+ font-size calculations (Yasuhiro Matsumoto).
+
+Patch 9.1.2126
+Problem: mnv --version used single column for feature list
+ (Ben Knoble, after v9.1.1898)
+Solution: Restore old behaviour and assume 80 columns, making sure the feature
+ list is shown in several columns (Ben Knoble, Hirohito Higashi).
+
+Patch 9.1.2127
+Problem: MS-Windows: DirectX renders font too small in comparison to
+ the GDI rendering (Linwei, after v9.1.2125)
+Solution: Implement proper font clipping (Yasuhiro Matsumoto).
+
+Patch 9.1.2128
+Problem: heap UAF if autocommands from reloading a file changed outside
+ of MNV wipe its buffer.
+Solution: Validate the bufref after buf_reload (Sean Dewar).
+
+Patch 9.1.2129
+Problem: MS-Windows: font size calculation slightly wrong, causing
+ vertical line gaps (Maxim Kim, after v9.1.2127)
+Solution: Update font size calculation when using DirectX
+ (Yasuhiro Matsumoto).
+
+Patch 9.1.2130
+Problem: Page scrolling in Insert mode beeps (after 9.1.0211).
+Solution: Fix incorrect return value of pagescroll(). Also invert the
+ return value of scroll_with_sms() to be less confusing and
+ match comments (zeertzjq).
+
+Patch 9.1.2131
+Problem: tests: Test_diff_screen() fails on BSD
+Solution: Use gdiff on BSD systems if available (zeertzjq).
+
+Patch 9.1.2132
+Problem: [security]: buffer-overflow in 'helpfile' option handling by
+ using strcpy without bound checks (Rahul Hoysala)
+Solution: Limit strncpy to the length of the buffer (MAXPATHL)
+
+Patch 9.1.2133
+Problem: Another case of buffer overflow with 'helpfile'.
+Solution: Leave room for "tags" in the buffer (zeertzjq).
+
+Patch 9.1.2134
+Problem: Terminal doesn't handle split UTF-8 sequence after ASCII.
+Solution: Only use one UTF-8 encoding state per vterm state (zeertzjq).
+
+Patch 9.1.2135
+Problem: search() is used to check for the message from tar that
+ indicates leading slashes found in the tar archive, or to
+ check for the leading slashes themselves. However, if
+ 'nowrapscan' is in effect these searches are limited to the
+ last line and don't find any results. This causes the warning
+ message from tar to be seen in the buffer, the "Path Traversal
+ Attack Detected" message to be omitted, and editing actions
+ can fail. This can be seen, for example, when editing
+ src/testdir/samples/evil.tar.
+Solution: Use the 'w' flag for search() (Kevin Goodsell)
+
+Patch 9.1.2136
+Problem: :tab sbuffer may close old tabpage if BufLeave autocommand
+ splits window (after 9.1.0143).
+Solution: Only close other windows if the buffer will be unloaded (zeertzjq).
+
+Patch 9.1.2137
+Problem: Some tests are not valid on OpenBSD.
+Solution: Add CheckNotOpenBSD, use it to skip certain tests
+ (Kevin Goodsell).
+
+Patch 9.1.2138
+Problem: With 'autochdir' win_execute() can corrupt the buffer name, causing
+ :write to use wrong path.
+Solution: Save and restore b_fname when 'autochdir' is active (Ingo Karkat).
+
+Patch 9.1.2139
+Problem: Buffer overflow in :wlrestore command, caused by assuming
+ wrong buffer length in vwl_log_handler() (Seungyeon Park)
+Solution: Use correct buffer size (512 bytes) in mnv_vsnprintf()
+ to properly truncate long messages.
+
+Patch 9.1.2140
+Problem: tests: Test_wayland_protocol_error_overflow() fails
+ (after v9.1.2139)
+Solution: try/catch the expected error
+
+Patch 9.1.2141
+Problem: Truncation when serializing libsodium encryption parameters.
+Solution: Correctly cast to long long type (Yasuhiro Matsumoto).
+
+Patch 9.1.2142
+Problem: MS-Windows: mouse scroll events not handled for popups
+Solution: Do not return early (Mao-Yining)
+
+Patch 9.1.2143
+Problem: When a popup window partially overlaps a wide character
+ it results in truncated or garbage display.
+Solution: When a wide character is partially blocked by a popup, clear both
+ cells in the screen buffer to prevent garbage (Yasuhiro Matsumoto).
+
+Patch 9.1.2144
+Problem: When garbage collection runs, the list of recorded buffer
+ changes may be incorrectly freed (Sainnhe Park).
+Solution: In garbage_collect(), iterate through all buffers and call
+ set_ref_in_list() for b_recorded_changes to ensure the list
+ and its contents are marked as reachable (Paul Ollis).
+
+Patch 9.1.2145
+Problem: intstalltutor Makefile target does not create the tutor/sv dir
+Solution: Add the missing mkdir() calls to the Makefile (Ross Burton)
+
+Patch 9.1.2146
+Problem: filetype: cel files are not recognized
+Solution: Detect *.cel files as cel filetype (Stefan VanBuren).
+
+Patch 9.1.2147
+Problem: Compile warning in strings.c
+Solution: Use const qualifier (John Marriott).
+
+Patch 9.1.2148
+Problem: [security]: Buffer overflow in netbeans special_keys() handling
+Solution: Limit writing to max KEYBUFLEN bytes to prevent writing out of
+ bounds.
+
+==============================================================================
+VERSION 9.3 *version-9.3* *version9.3* *mnv-9.3*
+
+This section is about improvements made between version 9.2 and 9.3 and is
+work in progress.
+
+Popups ~
+------
+- Support for transparency, see |popup-opacity|.
+- 'previewpopup' supports the same values as 'completepopup' (except for
+ "align").
+
+Diff mode ~
+---------
+When using inline word diffs, adjacent changes are now merged if the gap
+between them is small (5 bytes or less) and contains only non-word characters.
+This prevents fragmented highlighting when only whitespace or punctuation
+separates changes.
+
+Restricted mode ~
+---------------
+Using external diff mode or setting environment variables is no longer allowed
+when MNV is running in |restricted-mode|.
+
+Using |:cscope| is no longer allowed.
+
+Other ~
+-----
+- The new |xdg.mnv| script for full XDG compatibility is included.
+- |ConPTY| support is considered stable as of Windows 11.
+- Support for "dap" channel mode for the |debug-adapter-protocol|.
+- |status-line| can use several lines, see 'statuslineopt'.
+- New "leadtab" value for the 'listchars' setting.
+- Improved |:set+=|, |:set^=| and |:set-=| handling of comma-separated "key:value"
+ pairs individually (e.g. 'listchars', 'fillchars', 'diffopt').
+- |system()| and |systemlist()| functions accept a list as first argument,
+ bypassing the shell completely.
+
+xxd ~
+---
+Add "-t" option to append a terminating NUL byte to C include output (-i).
+
+ *changed-9.3*
+Changed~
+-------
+- Support for NeXTStep was dropped with patch v9.2.0122
+- |json_decode()| is stricter: keywords must be lowercase, lone surrogates are
+ now invalid
+- |js_decode()| rejects lone surrogates
+
+ *added-9.3*
+Added ~
+-----
+Various syntax, indent and other plugins were added.
+
+Functions: ~
+
+|ch_listen()| listen on {address}
+
+Autocommands: ~
+
+|SessionLoadPre| before loading a |Session| file
+
+Options: ~
+
+'statuslineopt' Extra window-local options for the 'statusline', to
+ configure the height.
+'t_BS' Begin synchronized update.
+'t_ES' End synchronized update.
+'termresize' Method for handling terminal resize events.
+'termsync' Enable support for terminal DEC 2026 sync mode.
+'winhighlight' Window-local highlight group mappings.
+
+==============================================================================
+PATCHES *patches-9.3* *bug-fixes-9.3*
+ *patches-after-9.2*
+
+ mnv:tw=78:ts=8:noet:ft=help:norl:fdm=manual:nofoldenable