Files
neovim/test/functional/fixtures
Justin M. Keyes fc7e5cf6c9 NVIM v0.12.0
Following is a list of commits (fixes/features only) in this release.
See `:help news` in Nvim for release notes.

BREAKING
--------------------------------------------------------------------------------
- 9acb52c8f3 diagnostic: remove deprecated diagnostic APIs (#33072)
- 79bfeecdb4 editor: insert-mode ctrl-r should work like paste #35477
- f72c13341a lsp: pass entire entry to format function (#34166)
- fe23168e2b lsp: reimplement `textDocument/codeLens` as decoration provider
- caa9419355 optwin.lua #36505
- c123b7245c path: support RFC3986 in path_with_url() #36564
- a57c7238f9 plugins: remove shellmenu #35815
- ade58885c4 provider: drop Python 3.7, 3.8 support #33088
- 59eadebe33 runtime: move "tohtml" to pack/dist/opt/ #34557
- 1d5b3b5b4c treesitter: apply `offset!` directive to all captures #34383
- fd1e019e90 treesitter: get_parser return nil on error #37276
- a728eb7af1 treesitter: remove "all" option of Query:iter_matches #33070
- 4369d7d9a7 ui: decouple ext_messages from message grid #27963

FEATURES
--------------------------------------------------------------------------------
- 78f4994627 ":restart +cmd [cmd]" #34788 #35045 #35223
- b40ca5a01c channel: support :detach, :restart on Windows #37977
- ce27423132 ":wall ++p" creates parent dirs for each buf #36121
- f3c2eb49ba vim.Pos, vim.Range #36397
- 9044d64af9 has('terminfo')
- 70d7979439 render tuple types for API methods
- 5151f635ca serverlist({peer=true}) returns peer addresses #34806
- 7ba043f0f3 api: add "max_height" argument to nvim_win_text_height (#32835)
- e80d19142b api: add nvim_open_tabpage
- 6ebeb07c56 api: experimental nvim__exec_lua_fast #35758
- 1e7406fa38 api: nvim_cmd supports plus ("+cmd", "++opt") flags #30103
- 8b171852a9 api: nvim_echo can emit Progress messages/events #34846
- 612b2e7850 api: nvim_get_commands returns function fields #36415
- 4d04d0123d api: nvim_set_hl{update:boolean} #37546
- 4998b8d7b5 api: nvim_win_set_config accepts unchanged "noautocmd" #36463
- e2a0748cb2 api: nvim_win_set_config can move floatwin to another tabpage
- 094b297a3b api: nvim_win_set_config can move split to other tp as floatwin
- 88774965e5 api: relax contract, allow return-type void => non-void #34811
- 85d33514f9 api: set nvim_echo() kind for ext_messages (#33998)
- cf0f90fe14 async: add `vim._async`
- e1ffa8d33b build: HAVE_UNIBILIUM
- 1f004970f0 build: build.zig MVP: build and run functionaltests on linux
- dc6cf3add9 build: build.zig windows support
- e25b99c5b6 build: make build.zig run unittests
- c4501e98f2 build: make build.zig use luajit on main plattforms
- 8e0692cdc5 build: support full runtime distribution work
- 6d9031390c build.zig: add option to use system dependencies
- 5ec0c1ca07 build.zig: install parsers in install step
- 75fe540500 checkhealth: emoji for OK/WARN/ERROR #33172
- 63323a9c81 checkhealth: trigger FileType event after showing report #33677
- 9722bd7b1b clipboard: g:clipboard="foo" forces the "foo" clipboard tool #33235
- 3a35fdc347 clipboard: wayclip primary clipboard and correct mimetype (#33990)
- 6228acb74f cmdline: completion for :TOhtml #37045
- 3bdebfb87f defaults: don't enable treesitter query linter
- 41cac54325 defaults: exclude temp dirs from 'shada' oldfiles #37631
- 5d06eade25 defaults: map "grt" to LSP type_definition #34642
- 06befe1e34 defaults: map "grx" to vim.lsp.codelens.run() #37689
- 249f305bbc defaults: per-platform 'guifont' default #37175
- d77d961b35 defaults: shelltemp=false #33012
- b10cb0296a defaults: store spellfile in stdpath('data') #33048
- 4fae013a21 diagnostic: add `enabled` filter (#33981)
- 2f24ae8de4 diagnostic: add `format` option to `setloclist`/`setqflist` (#33977)
- c65817774d diagnostic: add `on_jump` callback option
- 7e09fedf43 diagnostic: config.status  #36693
- caf7808591 diagnostic: custom status format function #36696
- 01666aae64 diagnostic: fromqflist({merge_lines}) #37416
- 4107442103 diagnostic: highlights in diagnostic.status() #36685
- 68e316e3f9 diagnostic: jump to related info location from `open_float` #34837
- 2767eac320 diagnostics: stack DiagnosticUnnecessary,DiagnosticDeprecated highlights #36590
- a5b8cf145d diff: merge adjacent blocks using inline:word (#37085)
- 45b4bbac28 difftool: replace old "nvim -d" automatically #38057
- d5cfca5b76 docs: numbered listitems
- 4dabeff308 editor: 'autowriteall' on SIGHUP/SIGQUIT #32843
- 55a0843b7c editor: :source can run Lua codeblock / ts injection #36799
- f5829957f2 env: remove VIM_VERSION_NODOT macro #34890
- 551bb63d44 events: MarkSet event, aucmd_defer() #35793
- 23bf4c0531 exrc: search in parent directories (#33889)
- 8d397fa458 exrc: stop searching in parent directories by unsetting 'exrc'
- dc67ba948e exrc: user must view and explicitly run ":trust" #35069
- bffca6e26b extmark: support end_col=-1 if strict=false #28169
- 302e59f734 extui: assign 'filetype' to extui windows (#33924)
- f2988e05db extui: don't enter pager for routed message #34679
- 8defe1afb2 extui: route to "more" window if it is open (#34190)
- 3c9484b550 extui: show dismissed message in cmdline (#34745)
- 9467731865 extui: support paging in the dialog window (#35310)
- 7526fb449d extui: use winborder for msg window #34859
- 8a626e5c4a float: 'statusline' in floating windows #36521
- 216cc893bf float: 'winborder' "bold" style #33189
- dcbe5bdd96 ftplugin: treesitter default highlighting for markdown
- c1fa3c7c37 gen_help_html: generate helptags.json, helptag.html #35442
- 322a6d305d glob: new Glob implementation based on Peglob #33605
- 8c63d84be1 health: check `vim.ui.open()` tool #37569
- 13ed225054 health: create a bug report #31842
- 043f5a291a health: show available queries for `treesitter` (#37005)
- 5a94edad70 health: summary in section heading #33388
- 47b0a718c3 help: gx opens help tag in web browser #35778
- 16f7440cc7 help: super K (":help!") guesses tag at cursor #36205
- cb8c9186e6 highlight: support more SGR attributes #37901
- 0aabe7ae76 inspect: update to a8ca312
- 8a0cbf04d6 iter: peek(), skip(predicate) for non-list iterators #37604
- 448f15ca39 json: pretty-format (indent) with vim.json.encode() #35424
- a897cc17a5 json: vim.json.encode() sort_keys #35574
- abfe6c9ef7 logging: rename ".nvimlog" => "nvim.log" #37935
- 4eed85f9bd logs: show full paths in lsp logs (#33886)
- 7486c2f6aa lsp: <Plug> mapping for signature help cycling #34039
- 903335a6d5 lsp: `Client:stop()` defaults to `exit_timeout` #36783
- 6577d72d81 lsp: `root_markers` can control priority #33485
- d6a6eed4f3 lsp: attach to buftype=help buffers #38412
- 63abb1a88f lsp: builtin :lsp command
- 7c9b865bdd lsp: deprecate `vim.lsp.stop_client` (#36459)
- b877aa34cf lsp: detach LSP clients when 'filetype' changes #33707
- 371aa1c566 lsp: diagnostic related documents support
- 15ff454443 lsp: display codelens as virtual lines, not virtual text #36469
- 63594ffa04 lsp: do completionItem/resolve if completeopt=popup #32820
- c5c6ddba91 lsp: document method types (#35934)
- d08b265111 lsp: enable document_color by default #35086
- 66339e0641 lsp: generate method to client capability map
- acfb9bc614 lsp: graduate ClientConfig `exit_timeout` #36750
- 957093da0d lsp: handle deprecated document symbols (#34751)
- 492ea28612 lsp: handle disabled code actions (#34453)
- 8876413e2d lsp: highlighting the symbol being renamed (#37390)
- d26db4bfbf lsp: improve signature help display #35190
- f99e3a8a2a lsp: incremental selection via "textDocument/selectionRange" #34011
- e82aef2e22 lsp: incremental-selection operator-pending mode #36575
- a4b2192690 lsp: lsp.enable() auto-escalates forced shutdown  #36458
- 4430c9a424 lsp: migrate `document_color` to capability framework (#38344)
- e855a23c02 lsp: on_accept can return item to customize behavior #37092
- 729e0acd26 lsp: pass client ID in code action filter (#36046)
- 32f30c4874 lsp: pass resolved config to cmd() #34550
- 8ed68fda50 lsp: semantic token range improvements #37451
- 23ddb2028b lsp: semanticTokens/range #36705
- 3e8a4e1092 lsp: show color preview in completion items #32138
- 145548a24a lsp: show snippet preview if completeopt=popup #32553
- 654303079b lsp: skip invalid header lines #36402
- 4bc7bac884 lsp: start/stop LSPs as necessary during vim.lsp.enable() #33702
- d75ffa5934 lsp: static registration support (#34371)
- cc518cf9ba lsp: support CompletionItem.labelDetails #38403
- 8f5bd569c5 lsp: support `documentColor` dynamic registration #33800
- 4745270bf1 lsp: support `textDocument/colorPresentation` (#34823)
- 9ff1239634 lsp: support `textDocument/documentColor`
- 05bd4398c5 lsp: support `textDocument/documentLink` (#37644)
- 0e70aa0e86 lsp: support `textDocument/inlineCompletion`
- 77e3efecee lsp: support `textDocument/onTypeFormatting` (#34637)
- 03d6cf7aae lsp: support `version` in `textDocument/publishDiagnostics` #36754
- 965468fca1 lsp: support `workspace/codeLens/refresh`
- 835f11595f lsp: support annotated text edits (#34508)
- 02cd564896 lsp: support auto-force escalation in client stop (#36378)
- 02067a9892 lsp: support diagnostic refresh request
- 2031287e93 lsp: support diagnostic related information (#34474)
- 0f3e3c87b7 lsp: support dynamic registration for diagnostics (#36841)
- c5167ffc18 lsp: support linked editing ranges #34388
- 76d213efbe lsp: support multiline semantic tokens #34458
- 9278f792c3 lsp: support range + full semantic token requests #37611
- 016335a7d0 lsp: support refreshing workspace diagnostics
- 7cc07e8383 lsp: support signature help noActiveParameterSupport #34838
- d7e0d46ffa lsp: use stricter types for methods
- c22b03c771 lsp: user-specified sorting of lsp.completion multi-server results #36401
- e406c4efd6 lsp: vim.lsp.get_configs() #37237
- 6888f65be1 lsp: vim.lsp.inline_completion on_accept #35507
- 03d378fda6 lsp: vim.lsp.is_enabled() #33703
- 054eaf8493 lsp: warn about unknown filetype #36910
- cb4559bc32 lsp: workspace diagnostic support (#34262)
- 90d15227c5 lsp: workspace_required #31824
- a8edf6e445 lsp.util: deprecate vim.lsp.util.stylize_markdown
- 98f8224c19 lua: `vim.pos`/`vim.range`
- 0c46ea7d38 lua: add `Iter:unique()` (#37592)
- cf9b36f3d9 lua: add vim.list.unique()
- 7499c9f9a7 lua: conversion between cursor positions
- 62b45b8fe4 lua: conversion between extmark positions
- 9f5b309d82 lua: conversion between vim and lsp position/range
- 047a10bfde lua: function `behavior` for tbl_extend, tbl_deep_extend #33819
- 4d3a67cd62 lua: replace `buffer` with `buf` in vim.keymap.set/del #38360
- 6e1745e96e lua: support vim.Range:has(vim.pos) #37879
- 7ed8cbd095 lua: vim.list.bisect() #35108
- d8a8825679 lua: vim.wait() returns callback results #35588
- f68a5c40f0 messages: add "prev_cmd" argument to msg_history_show (#34779)
- fc2dee1736 messages: cleanup Lua error messages
- 0d13945bbb messages: drop hardcoded 'showmode' delay #38029
- 0741d2520d messages: hl-StderrMsg, hl-StdoutMsg #33429
- 0ee5a4d481 meta: vendor luv meta files
- 7cd5356a6f net: vim.net.request(), :edit [url] #34140
- f29b3b5d45 net: vim.net.request(outbuf) writes response to buffer #36164
- fb0dc825e9 option: custom chars in 'winborder' #33772
- 28e31f5d3d options: default statusline expression #33036
- 5973328eda options: per-buffer 'busy' status #34493
- 0412527a40 outline: smaller indentation #34005
- 2728b4efe0 pack: add `[[` and `]]` mappings in confirmation buffer
- a9db6ec6fa pack: add `active` field to `PackChanged` event data
- d21b8c949a pack: add built-in plugin manager `vim.pack`
- 4a637107d0 pack: add checkhealth
- 98e3a571dd pack: add code actions in confirmation buffer
- d7db552394 pack: add initial lockfile tracking
- 8c28507fcf pack: allow choosing update target in `update()`
- dd828690c7 pack: allow function `opts.load` in `add()`
- c9965491d0 pack: allow running `update()` without Internet connection
- acff86601e pack: allow skip install confirmation in `add()`
- a41703d107 pack: confirm "Always" to install all plugins #35733
- c339b83a4a pack: hint in confirmation buffer that plugin is not active
- dc8235c48c pack: prefer using revision from lockfile during install
- c522cb0e96 pack: support user-defined `data` in plugin spec #35360
- 2e533e364e pack: update `add()` to handle source change for installed plugin
- 069be91106 pack: use `nvim_echo{kind=progress}` to report progress #35625
- a203961535 pack: use colored `nvim_echo` chunks to show progress report
- 7853cde29a pack: vim.pack.get() gets VCS info #35631
- fec02ae8e4 plugins: nvim.difftool can compare directories #35448
- 8a12a01466 progress: better default format + history sync #35533
- 7b7e8cc724 progress: disable cmdline progress msg via messagesopt' #36730
- 4b643d7068 progress: set Progress-event pattern to "source" #38495
- 24684f90ea progress: status api, 'statusline' integration #35428
- 286371b4d2 prompt: multiline prompt input #33371
- 8ab511bba5 prompt: plugins can update prompt during user input #37743
- a940b77cb2 prompt: prompt_appendbuf() appends to prompt buffer #37763
- 5ae41ddde3 prompt: prompt_getinput() gets current input #34491
- 5f8d4a248a provider: detect venv python via "pynvim-python" tool #35273
- f01419f3d5 runtime: accept predicates in take and skip (#34657)
- 8c81ed8678 runtime: revert cfilter, ccomplete to legacy Vim
- 9e1d3f4870 runtime: undotree #35627
- c9d8468020 search: increase `MAX_COUNT` to 999
- 6ba32713ad secure: allow 'path' parameter for trust action 'allow' (#38001)
- 71455173b4 shada: don't store jumplist if '0 in 'shada'
- 840cdb9589 shada: shada should not store nobuflisted buffers #21818
- 701258921e snippet: highlight active tabstop (#35378)
- 4e1644d4d3 spell: opt-out of confirm when downloading spellfiles #36836
- 1d40f67776 ssh: SSH configuration parser #35027
- cf874cee33 startup: provide v:argf for file arguments #35889
- 32aee065a8 startup: warn if NVIM_LOG_FILE is inaccessible #38070
- 4719b94443 statusline: option to specify stacking highlight groups #37153
- b79ff967ac statusline: vim.diagnostic.status() #33723
- 72a63346d8 stdlib: vim.fs.ext() returns file extension #36997
- 6b4ec2264e stdlib: vim.json.decode() can allow comments #37795
- eac2f0443e tag: respect jumpoptions=view when popping tagstack (#37021)
- a945686444 term: increase max scrollback to 1000000
- 6bc0b8ae87 terminal: detect suspended PTY process (#37845)
- 03377b9552 terminal: include sequence terminator in TermRequest event (#37152)
- 71f3a9c590 terminal: parse current buffer contents in nvim_open_term() (#33720)
- 2368a9edbd terminal: support SGR dim, overline attributes #37997
- c8693051a8 terminal: surface exit code via virttext + nvim_get_chan_info #37987
- b38173e493 terminal: synchronized output (mode 2026) #38284
- 72d3a57f27 treesitter: incremental selection
- 586b1b2d9b tui: add nvim_ui_send (#35406)
- 981ea41abb tui: ghostty builtin terminfo #36963
- 8eb0964537 tui: native progress bars for Progress events #35973
- de87ceb3be tui: support APC queries in TermResponse (#34426)
- 977e91b424 tui: use DA1 response to determine OSC 52 support
- abb40ecedd ui: "append" parameter for "msg_show" UI events
- fafc329bbd ui: 'pumborder' (popup menu border) #25541
- 649bb372f6 ui: :connect command #34586
- 7ba0f623d7 ui: avoid setting 'cmdheight' with vim.ui_attach()
- 2b4c1127ad ui: emit "msg_clear" event after clearing the screen (#34035)
- 2c1c0b7af5 ui: ext_cmdline/messages for the TUI #27855
- f29856d034 ui: include compositor info with multigrid
- 9bbbeb60e3 ui: no delay for errors with ext_messages (#33693)
- 07d0da64ed ui: overlay scrollbar on 'pumborder' #36273
- a2b92a5efb ui: show "empty" cursor behind unfocused floatwin #37624
- 97549ad7cf ui: specify whether msg_show event comes from typed command
- 8ae9a44d38 ui: support grid=0 in nvim_input_mouse #32535
- 08c484f2ca ui: use builtin completion popupmenu with ext_cmdline (#31269)
- fbac2e5edc ui2: configure maximum window heights #38392
- 32e0d05d53 ui2: configure targets per message kind #38091
- 9fc985bc98 ui2: more predictable routing #35028
- db2a54996e ui2: replace message by its ID #37672
- e268760e46 ui2: show active paging keys in dialog float title #37919
- 875212c5b3 ui2: support routing "typed_cmd" trigger to target
- 81d2d88f70 undotree: set 'filetype' #36091
- 9595f07425 ux: sexy intro #38378
- 5196162540 version: support multiple Vim versions
- 361671870e vim-patch.sh: -M lists all ported patches
- 7fe02126f9 vim-patch.sh: add n flag to list possible N/A patches (#36431)
- 2f0fbdaa48 vim.fs: root() can specify "equal priority" #34276
- eae2d3b145 vim.hl: allow multiple timed highlights simultaneously #33283
- ea124068f2 vim.pack: lockfile support #35827
- 773075b2bc vim.version: add `vim.version.intersect()`
- aeb8bca12d vim.version: make `tostring()` return human-readable version range
- e42050f4ae vimscript: log function name in "fast" message #32616
- 6edae88052 vimscript: scripts can detect 'android', 'termux' #38218

FIXES
--------------------------------------------------------------------------------
- b233f71b1b :ball w_locked check, reset b_nwindows in free_all_mem() #38484
- f2e60d000e `fn.exists()` typos (#34390)
- 379c37fa0b bug in stylize_markdown
- 2c9d21f722 cursor shape don't resume after `:append`
- 7fdf9f7399 define `vim.mpack`
- bc4bddbb21 don't use logical diagnostic position in `get_prev` and `get_next` #35282
- 3567b7d751 ignore Nvim local config #37805
- fd45bc8cab lsp.enable() don't work correctly inside FileType event #37538
- 0694ca8822 map wincmd instead of remap #34635
- eeba0dc2ed memory leak from double buffer initialization in read_stdin #35413
- dfa5d79d05 misc typos #37471
- cd4c98fded nvim_open_tabpage cleanup, fixes, more tests
- 874e214993 remove exec permission from .gitattributes #33140
- bcc9242bc7 remove quotes around `nil` deprecation alternatives (#36047)
- 7b99e1f0c3 remove typo from buffer-local LSP docs (#35841)
- e991133058 remove unnecessary `nvim -l` from `gen` command #33676
- 92b2a26772 resolve all remaining LuaLS warnings in `src/`
- 431004dda2 screenchar()/screenstring() with hidden floating windows #35560
- 1999c4cdc1 screenchar()/screenstring() with multigrid #32494
- 9204b7541d silence LuaLS's `no-unknown` warnings in `src/`
- 020d5e0f7e stale lines("w$") after nvim_win_set_height when splitkeep=screen #36056
- 2e68e9c051 temporarily disable 0.12 deprecation tests
- 3b6084ddf4 type fixes
- 38aac21083 type of nvim_echo
- d21e2463fd update deps hash for zig 0.14.0
- fa8e4e65ca update lua types for commands
- 9170178ee5 use correct window dimension for range estimation
- 62ba6e8a76 use nvim namespace convention #34010
- 28157738e3 vim.lsp.omnifunc should not throw away other items #35346
- 71a22e20ad vim.ui_attach handles messages during `-l`/`--headless` #36884
- 9c5ade9212 wait() checks condition twice on each interval (#37837)
- 9287c73df9 :connect: don't use freed memory (#38512)
- 7cd22e916b :connect: formalize connect event #38543
- 49d7f694a8 :ls: check for finished terminal properly (#37303)
- 6af1b7e5e8 :print: don't use schar_from_ascii() for illegal byte (#34046)
- 5cfbc35aa8 api: add missing nargs field to user command Lua callbacks #34210
- eeacd7bd71 api: adjust fix for reconfiguring float "relative" (#34287)
- 3cb462a960 api: autocmds mess up nvim_get_option_value's dummy buffer
- 612cd99a00 api: buffer overflow in nvim_buf_get_extmarks overlap #37184
- 006361fc6b api: buffer updates in quickfix buffer #31105
- 76d0206342 api: count parameter in nvim_parse_cmd, nvim_cmd #34253
- c553008e74 api: crash when moving curwin to other tabpage #35679
- b7070778b9 api: cterm type in highlight keyset #37802
- 853eea859f api: disallow moving window between tabpages in more cases
- 0bef1c88f3 api: do not allow opening float to closing buffer
- ef084b5c22 api: don't config split as floatwin relative to itself
- 4362132b10 api: don't re-apply minimal style if unchanged #38152
- 3165e94a64 api: ensure win_get_config() "border" is reciprocal (#34322)
- c7c3f9fc9c api: fix crash in command preview with % #35228
- 7b9512e613 api: fix not capturing output in cmdline mode (#35322)
- d788864cde api: ignore split_disallowed when opening a float
- 3115e3d0d1 api: improve external window validation
- d707ccf988 api: inconsistent scrolling when deleting before topline (#36301)
- 137d5ab01d api: merge split window config only on success
- 22df649210 api: nvim_create_user_command addr option should allow ranges #35077
- 6f12663de5 api: nvim_get_option_value FileType autocmd handling #37414
- 7e2e116343 api: nvim_get_option_value dummy buffer crashes
- 0c1ed63c05 api: nvim_open_tabpage "after" like :[count]tab
- 97b064c9ac api: nvim_open_tabpage positional "enter"
- d7472c0617 api: nvim_open_win default to half-size for splits (#36088)
- 19f5f05ac2 api: nvim_open_win respects requested split window size (#35601)
- 652c3e76c7 api: nvim_parse_cmd "range" when ea.addr_count=0 #33536
- 72b0bfa1fb api: nvim_parse_cmd handle nextcmd for commands without EX_TRLBAR (#36055)
- f3ec657ebc api: nvim_parse_cmd on range-only, modifier-only commands #36665
- c7f38e3bc8 api: nvim_parse_cmd parses :map incorrectly #34068
- 63cbc95d45 api: nvim_set_current_win doesn't reset Visual mode (#37340)
- 9383a096eb api: nvim_set_hl boolean false corrupts underline styles (#38504)
- d19dc6339d api: nvim_set_hl crashes when url= key is passed
- ec18ebcb41 api: nvim_set_keymap() throws error even in pcall() #33228
- 7da4d6abe2 api: on_bytes gets stale data on :substitute #36487
- 2211953266 api: on_detach consistently before buf_freeall autocmds
- a2b9720939 api: open_win leak from naughty autocommands
- 5226801be2 api: parse_expression crash with ident and curly
- a5e5ec8910 api: parse_expression crash with unopened ] and node
- d523750de0 api: populate lhsrawalt in nvim_get_keymap response
- 88dc44260f api: preserve WinConfig style when converting float to split #37264
- 963308439a api: reconfiguring float "relative" does not clear "win" (#34271)
- e13e850517 api: redraw after setting minimal style
- 7be4ae796f api: relax config validation for "win"
- 1901832f26 api: return "style" in nvim_win_get_config() #38122
- 15d57ab0ba api: single-line visual block insert triggers extra on_lines #35098
- f5d03ec930 api: style=minimal not applied immediately for unmoved split
- 0ee8323f2b api: unnecessary errors when not moving split
- af82f36108 api: update topline when flushing with nvim__redraw() (#34346)
- 99529577cc api: use E226 instead of E227 for duplicate abbreviation (#33159)
- 0d73ec5834 api: use original LHS in keymap error message #33135
- 680d25e5b3 api: use standard error messages
- 1ec74fa7b1 api: win_config `border` type #38030
- c924c2a7b3 api: win_config_float_tp grid removal, redraw
- da39966a3a api: win_set_config error message for splitting from a float #35650
- 65170e8dad api: wrong return value with reverse range + overlap #32956
- 285c04e2d0 api,lsp: call on_detach before wiping out the buffer #35355
- acecdbff1f api,lua: handle converting NULL funcref/partial (#37060)
- 4daa8eb5ab appimage: wrong $ARCH used by linuxdeploy #36712
- 5871d26779 autocmd: 'cmdheight' OptionSet with valid window grids (#34619)
- 19379d1255 autocmd: deferred TermResponse lacks "data", may not fire (#37778)
- 05a83265f9 autocmd: fire TabClosed after freeing tab page
- f36dd7557a autocmd: heap UAF with :bwipe in Syntax autocmd
- 6d2330f50d autocmd: parsing of comma-separated buflocal patterns
- d945a93d69 autocmd: potential TabClosed UAF, always set abuf
- 1cde71233f autocmd: skip empty comma-separated patterns properly
- f9ef1a4cab buffer: defer w_buffer clearing to prevent dict watcher crash #36748
- 14d65dae91 buffer: don't allow changedtick watcher to delete buffer (#36764)
- 23aa4853b3 buffer: don't reuse 1-line terminal buffer (#37261)
- 2700f6642a buffer: switching buffer should respect jumpoptions+=view (#36969)
- fa24df3264 bufwrite.c: handle invalid byte sequences #37363
- c26f989b2f build: also check os_win sources with uncrustify in CI
- 8069df2661 build: build.zig: use luajit for windows
- 576e8f62c2 build: disable problematic marktree assert in RelWithDebInfo builds
- 88b45614e9 build: gen_help_html fails #36359
- f0d981544b build: glibc 2.43 happened
- e69beb9b1a build: invalid help tags cause reports to fail #36356
- 3268f51d20 build: musl libc build.zig
- f98b5ee619 build: remove .tar.gz workaround for bug fixed in zig 0.15.2
- a2b0be19bf build: remove deprecated aliases in build.zig removed for zig 0.15
- b4db223d33 build: treesitter parsers are not ReleaseSafe
- 921f8b0df7 build: use correct cmake expression for $<CONFIG>
- ec8a0c7340 build: workaround errors in zig build due to stale cache
- 6741c134e1 build: zig build can has git version
- 41bc3020c4 build.zig: format build.zig to keep lines under 100 chars
- 565cfa04eb build.zig: replace slashes in filepaths #37111
- 64ce5382bd channel: crash on failed sockconnect() (#37811)
- 886efcb853 channel: possible hang after connecting with TCP times out (#37813)
- 4399250e90 channel: unreference list after callback finishes (#37358)
- 5f9f5bc04d checkhealth: check g:loaded_xx_provider for all providers #33168
- e87d2ae383 checkhealth: check outdated pynvim version properly #33175
- 78d2e0b43e checkhealth: don't override user "q" keymap #33132
- 16fbde83c4 checkhealth: don't wrap command in cmd.exe (#38158)
- bd45e2be63 checkhealth: wrong ABI version for treesitter parsers #35327
- ad22d0ace9 cjson: fix `strbuf_set_length` incorrectness #35565
- f5cbf11644 client: avoid :connect race with server detach
- 2483d5ad8a clint.py: replace deprecated codecs.open #36593
- 41199c45d6 clipboard: avoid using stale register width (#36178)
- 95dfb063da clipboard: correct blockwise register width computation (#35038)
- ac12dc49cc clipboard: enable cache for function providers #34470
- 310d01d8fa clipboard: tmux clipboard data may be stale #36787
- d00f680c0d clipboard: use tmux only in a tmux session #36407
- 8aacce90b4 cmake: linker flags, doc generation for cross-compilation #38215
- 9763834170 cmake: use host nlua0 binary when cross-compiling #38089
- 69cae6259e cmd: :update does not write new, unmodified buffer #35929
- fcf752476a cmd: :update writes new file buffers only for real files #35939
- a5c55d200b cmd: bar "|" not allowed after :fclose #34613
- 5de2ec76a3 cmdline: :checkhealth completion with multiple args (#35060)
- f4ee0ab2f1 cmdline: avoid empty @: register after :<CR> (#33126)
- fde1c07891 cmdline: cmdline_block events for :lua debug.debug() #38171
- 0015a105ca cmdline: do not move UI cursor when entering cmdline #33729
- 236d831d77 cmdline: don't treat c_CTRL-D as wildmenu (#36067)
- 95ab723995 cmdline: empty ext_cmdline block events for :<CR> #33118
- 7f2298ad32 cmdline: fix inconsistent behavior with ext_popupmenu (#35688)
- 677446c70f cmdline: make sure pum is removed on leave (#36608)
- dc05598d02 cmdline: set search cursor after ui_flush() (#34418)
- 5977bdba05 cmdline: trigger CmdlineChanged after command preview (#35254)
- efd0fa55c8 cmdline: validate 'incsearch' cursor for "cmdline_show" redraw (#34630)
- 28ff4deda7 colorscheme: adjust `StatusLine[NC]` for diagnostics #36719
- 4a706a7092 column: don't count signs on lines beyond eob #33410
- b40e658717 column: missing redraw with virt_lines_leftcol (#34650)
- 8f78591f9a column: wrong alignment and highlight with empty 'display' (#35495)
- 69419f8b3e completion: CompleteDone reason="discard" when candidate text remains #38169
- 51caf0a3af completion: avoid freeing uninitialized value (#33459)
- b258382176 completion: complete drive-letter filepath on Windows #36353
- 634f6424aa completion: set 'wrap' and scrolloff=0 in preview window (#37327)
- 3f10bb87ef completion: wrong CompleteDone reason for auto-inserted sole match #38280
- e1b3ca6629 compositor: clear old position with last known dimensions #38229
- 6f632a8615 compositor: don't blend uninitialized background cells #34364
- 150490d365 conceal: assert tripped during startup #36136
- ad8bce6674 conceal: check for concealed lines on invalid row (#36084)
- ab72799841 coverity/530026,530028: free resources on early exit in nlua_exec_file #33502
- 0791594101 coverity/530033: free lp->sl_info to fix resource leak #36198
- 0ed5e00077 coverity/532324: free skip_until to prevent leak #36109
- 3e30323135 coverity/554963: preallocate msg.items to avoid FORWARD_NULL #34484
- 501a21f333 coverity/637363: out-of-bounds write #37878
- c5b8ed870b coverity/644326: NULL ptr deref in socket_address_is_tcp #38010
- 20b2dd39cc decor: clamp last column by decor provider range
- ca16b54c86 decor: enable decoration provider in on_start #33337
- 6adf48b66d decor: extmark highlight not applied (#33858)
- 9492df027d defaults: 'guifont' "monospace" fallback, trim spaces #37930
- 57b4fb5c53 defaults: enable :terminal [[,]] motion in operator-pending mode #33217
- 3ebde5ea14 defaults: keywordprg=:help on Windows #33336
- 9567fb0507 defaults: silent `gx` if no `textDocument/documentLink` support #37969
- dc6fc11b87 defaults: start exrc search from parent directory
- cb247e06f0 defaults: visual-mode [[,]] for :terminal shell prompts #33201
- 1c96b72dfa deps: make script/bump_deps.lua update build.zig.zon versions in sync
- 6e12ef4a7b desktop: cannot open filename with spaces using OS file manager #33161
- 2e0158650a diagnostic: accept multiple namespace in `open_float()` (#34073)
- c681336e3c diagnostic: accept multiple namespaces when setting loclist/qflist (#33982)
- d567f899ef diagnostic: allow virtual_{lines,text} cursor exclusivity #33517
- 3ac76977bc diagnostic: check for extmark in get_logical_pos #37127
- 68eece8b84 diagnostic: check if the buffer is loaded #35125
- dbe17da120 diagnostic: deprecate `float` in `vim.diagnostic.Opts.Jump` (#34037)
- efa6d91132 diagnostic: display 1-based related information line/col numbers (#37093)
- 2b21c9c23f diagnostic: ensure autocmd always is always sent diagnostics
- e34e2289c2 diagnostic: fix flaky error
- 583308f599 diagnostic: handle stale diagnostic extmark ids #38060
- 88a72efb46 diagnostic: open_float() handles config.float function #31577
- 09266830bd diagnostic: show diagnostics on buffer load #35866
- 9833f0da5f diagnostic: unstable sorting by severity #37154
- f7b573f80a diagnostics: assert adjusted diagnostic position #37210
- 7a051a4c38 diagnostics: avoid jumping to diagnostics in deleted ranges #35088
- 9641ad9369 diagnostics: diagnostic just after EOL is not highlighted #34085
- e4a100a1e1 diagnostics: extend conversion support from/to quickfix format (#34006)
- 19efabafc5 diagnostics: fixed virtual_text cursormoved autocmd error (#34017)
- 0a113013fb diagnostics: position diagnostics using extmarks #34014
- a1bc5d0ae6 diagnostics: showing stale diagnostics in handlers #35890
- 3594c213a7 diagnostics: validate opts.signs #34565
- 60d0b7d0c3 diff: fix incorrect item size of dout_ga (#34338)
- 0b8a9bde0e diff: set default diff flags properly (#35450)
- aaec3e5b0d difftool: add check for window number when cleaning up layout #36161
- c1e60f36f3 difftool: don't reset quickfix list when closing quickfix window #38088
- c9b74f8b7e difftool: ensure split layout, use systemlist #36145
- c6113da5a9 difftool: fully resolve symlinks when comparing paths #36147
- a88c7962a8 difftool: handle "no differences found" #36671
- d590644620 difftool: silence :only command in setup_layout #36168
- 97a6259442 display: adjust setting winline info for concealed lines (#33717)
- cb2ca54331 display: cursor moves when searching with "n", "*" #29446
- ce0c0c31a0 display: scroll logic does not take into account concealed topline (#33054)
- 5b1561bb71 display: scroll redrawing doesn't account for virt_lines above fold #33374
- 7e8b7bba21 display: wrong cursor column with 'concealcursor' = "n" and virt_text (#33218)
- 5582005ac7 docs: add `--clean` arg to LSP bug report (#36530)
- e74753a221 docs: callback annotation for `vim.ui.input` #34507
- 4a910a2a4e docs: dev.txt is "new layout"
- 9da316fcc4 docs: force blank line after numbered list items #35950
- 4397c4b117 docs: improve adjacent list items
- 8a76129d9f docs: include `?` in list items #35945
- b2722181b0 edit: clear showcmd after clearing last put char (#34517)
- 9a864d0a3c edit: handle cindent properly with completion (#36711)
- 3647b821ea editor: respect [+cmd] when executing :drop #33339
- 966b1da183 editorconfig: a custom property is treated as a section (#34445)
- b618511ef9 editorconfig: use 4 spaces indentation for zig files
- fd973c0a4e env.c: drop envmap, free os_getenv() result #32683
- df9e4a037a eval: 0 should mean current tabpage in gettabvar() (#36891)
- 8156eece24 eval: fix crash with :breakadd expr when calling user func
- 981d4ba45e eval: winnr('$') counts non-current hidden/unfocusable windows #34207
- 1e1619de83 eval: winnrs of unfocusable/hidden windows #35474
- 57c6b61cf2 event-loop: don't call uv_stop() when loop isn't running (#37984)
- 1dbede5b93 events: avoid superfluous CursorMovedI on first autocmd (#33588)
- 0b61bc8982 events: crash on SIGTSTP (Ctrl-Z) #33258
- 0a0c349b6f events: crash on WinScrolled #35995
- 29494f042c ex: error handling for `:lsp` #37061
- 2f35221774 excmd: :trust executed even when inside false condition (#36032)
- c1f142322b excmd: correct :connect abbreviation
- 781ea5b41b exit: stop listening before closing channels (#38480)
- ed9abb1851 exrc: ensure consistent 'exrc' loading sequence #35148
- f7c939fa7a exrc: exrc knows its own location (#34638)
- a393347673 extmark: adjust invalidate range by one for deleted lines #37897
- 589232c0e0 extmark: wrong eol_right_align width calculation (#37034)
- 6dee1672cc extui: "box" window width calculated on last line (#33881)
- ff95d7ff9a extui: adjust "more" window routing (#34251)
- cc78f88201 extui: adjust which messages are sent to "more" window
- 9784bc1346 extui: append consecutive :echon messages
- e512efe369 extui: attempt to perform arithmetic on field 'last_emsg' (#35047)
- 70eb416459 extui: better message highlighting after carriage return (#34034)
- 9e968635ef extui: check if buffers/windows exist before deleting (#34886)
- 3c7c824bdc extui: check option values after VimEnter (#33768)
- 5046ef4c8f extui: clear cmdline buffer for first message (#34490)
- db702782e0 extui: close cmdwin to enter "more" window (#33860)
- c916bdf329 extui: close message window with `q`
- 39a5b7f239 extui: cmdline visibility, cmdheight cursor position (#33774)
- 5e4700152b extui: copy window config to new tabpage (#34308)
- 8c6ea76ebc extui: disable cmdline highlighter when showing a message (#34887)
- 9efdd4fe98 extui: drop "more" window that is no longer floating #33861
- be5a4851ea extui: ensure temporary cmdline config is not restored #35301
- 1256daeead extui: ensure windows are valid in scheduled on_key (#35106)
- cd7cf4bd16 extui: error on :call input('') (#35515)
- 4d56dc43c0 extui: handle carriage return in messages
- f1295fe76f extui: hide inactive "more" window (#33831)
- 3828856233 extui: incorrect cmdline cursor position (#34201)
- a59b052857 extui: map wincmd instead of remapped key (#34151)
- d4ecfc4234 extui: message may overwrite active cmdline #33846
- 76f76fb083 extui: only append messages exceeding 'cmdheight' to "more"
- 33b0a004eb extui: properly setup "more" window for changed buffer
- 5e83d0f5ad extui: reposition "more" window after entering cmdwin
- 7077c59295 extui: reset message state after "search_cmd" message (#34119)
- 7e787f6a4f extui: route interactive messages to more-window (#33885)
- b2a5105c66 extui: search highlighting in extui "more" pager #33792
- d0aedd36df extui: set 'modifiable', 'noswapfile' for buffers (#34582)
- 56709ca168 extui: setup buffers after activating `eventignorewin` (#35915)
- 8e8f4523c6 extui: translate <Tab> in cmdline text (#34055)
- cb036cae5f extui: use visible to determine active "more" (#34327)
- a96665cf48 extui: using tracked message column in cleared buffer (#34154)
- c973c7ae6f extui: write each message chunk pattern separately (#34188)
- 8af28ab9cb filetype: error when `vim.filetype.match{buf=fn.bufadd('a.sh')}` #34155
- 7500f76e61 filetype: fix typo (#37286)
- 095b9f98f3 filetype: handle invalid `bufnr` in _getlines(), _getline() #36272
- e2cb675705 filetype: move fallback logic to vim.filetype.match() #30141
- d131d67e67 float: clamp floating window above cmdline #37899
- 3ccba4cdff float: crash from nasty :fclose autocmds (#36134)
- d4f2b9050d float: cursor visible in "hidden" floating window #30866
- 66e4784f5a float: ensure relative window grid is allocated (#34459)
- eb3201c772 float: null pointer dereference, redundant call #36727
- 3b6e8e484e float: prevent truncation of title that fits exactly #36880
- 31c814a0ed float: respect statusline=3, don't inherit local 'statusline' #36716
- 5943a81fe7 float: style=minimal leaks into normal windows #25185
- cb171ee7cb float: tail truncate long title #28387
- 9269a1da35 floatwin: handle viewport width properly at end of window (#35490)
- 66dddd8b51 folds: adjust filler text drawing for transparent folds
- 1d9990daac folds: avoid unnecessary loop with horizontal scrolling (#33932)
- d73cfefed5 folds: error when deleting lines at end of buffer #35396
- 19715e6e8a fs: expand drive-relative paths on Windows #37084
- d22fcf2917 gO: use non-breaking space #34197
- ac6cf5b03b gen: alias /doc/user/helptag.html to /doc/user/helptag/ #38156
- 805dd5d047 gen: prevent "make doc" failure due to temporary files
- 67fede0fc9 gen_help_html: ASCII art rendering in docs #35262
- a49bf5e1d3 gen_help_html: parser override
- 4b02d1f6f6 gen_vimdoc: unnecessary assert for non-source files
- d2ca90d87e glob: handle numeric literals in pattern matching (#37257)
- 3991f14621 glob: handling commas in letter pattern #34170
- aeebc51851 grid: assert crash during extreme resize layouts #36847
- 1ad9cdd403 grid: check allocated grid size when suspicious scrolling
- 856391bc7f health: "q" keymap not set when health.style=float #37007
- a33284c2c0 health: accept TERM=tmux-direct #35511
- c28113dd9d health: add back `vim.cmd.redraw()` call (#37576)
- 3fb53abe2a health: attempt to concatenate table value #36369
- 8a901a52e1 health: avoid silent failure
- 2422fbdd5f health: bad format() call #34904
- 672f6e60c1 health: bug-report formatting, version check #36809
- 61678811d8 health: check more "old" files #38028
- 31cb37687a health: check shell performance using vim.fn.system() #36980
- 16c8a908ef health: check stable release for non-nightly build #36715
- d927a87ed6 health: checkhealth float opens extra empty buffer #33648
- f19653e370 health: emit Progress message #37123
- cfe10b4014 health: errors in :checkhealth with pyenv-virtualenv #35865
- bd37348939 health: expecting nonexistent "inotifywait" function #33312
- 28b7c2df52 health: floating window closes when opening TOC (gO) #34794
- e4ce0c7270 health: git check and autocmd clean #36713
- 6152bcf42e health: hard fail on invalid "python-*" bin #35382
- 6942dec9b2 health: highlight group conflicts with help #34616
- bfc7bae421 health: improve version check for nightly builds #38147
- 07f048a8d7 health: message should mention "vim.provider" #33095
- e9d03b92b6 health: redraw after emitting progress message #37567
- 06e4b159ed health: show full curl output
- f311c96973 health: update advice for Python #35564
- ae93639ec4 health: use FileType autocmd for bug report winbar #37486
- 1c52e90cd5 help: :help can focus unfocusable/hide window #34442
- 4a4de73043 help: better align local-additions #38097
- 25322a3a3b help: only set url for help files in $VIMRUNTIME #36165
- e49a592595 help: retry once if async parsing fails #36592
- 62d3a2110d help: wrong tag url in third-party help docs #36115
- 625c59fe5f highlight: Normal-linked groups shouldn't override CursorLine #35026
- 64966ba52c highlight: allow ephemeral extmarks past final newline #35888
- e23c083d13 highlight: avoid null deref, misc issues #38164
- 444c195edb highlight: blend underline check and use struct key for attr cache
- d5a8c9d766 highlight: correct change detection in do_highlight for gui colors
- e3c36f31e3 highlight: ensure extmark range is within buffer bounds #35928
- a7177e34c3 highlight: link HLF_8 to something more prominent #34910
- 3af43cffa0 highlight: no match highlight during :substitute prompt #33262
- 336b46a879 highlight: preserve background transparency in 'winblend' #34302
- 5803994a1c highlight: preserve bg transparency with winblend=100 #34825
- bd12aef784 highlight: refresh highlight attrs before message output #25737
- 6af8958055 highlight: respect 'winhighlight' in CursorLine Normal check #36927
- f8d59cfab9 highlight: setting 'winhl' doesn't work with global ns (#37868)
- 64753b5c37 highlight: spurious underline in 'winblend' floating window #34614
- a26cdcb20e inccommand: skip input() during preview #35272
- f348c0ebba incsearch: include compsing characters with Ctrl-L
- a04c73cc17 input: discard following keys when discarding <Cmd>/K_LUA (#36498)
- 592582ba48 input: don't exit on EOF when peeking for input with -es (#36948)
- 29c8dabd41 insexpand: update showmode when updating the screen (#34466)
- e0308dc147 install: only install "tee" on Windows #36629
- cd71221250 intro: crash on small screen #38397
- 4fe51dfdae iter: ArrayIter:last returns nil when filtered to empty #34697
- eaa9aca130 jobs: jobstart(term=true) accepts width/height #33904
- 11e82c108d l10n: update Ukrainian translations #37654
- 16c1334399 langmap: assert failure on mapping to char >= 256 (#37291)
- 14fe370564 logging: don't overwrite NameBuff (#38004)
- ea5007b37f lps: separate namespaces for pull/push diagnostics #37938
- bf4710d8c3 lsp: "attempt to index nil config" #36189
- f068386c9f lsp: "bold" border for vim.lsp.buf.hover #33395
- a9b8a8dc6c lsp: _cancel_all_requests() tries to cancel completed requests #34105
- 97ab24b9c7 lsp: _get_workspace_folders does not handle root_dir() function #36071
- a03ab03a10 lsp: `:lsp restart` restarts on client exit #37125
- 6005fcf671 lsp: `opts.wrap` always `true`
- 4b0700c618 lsp: `vim.Range` check in `document_color.color_presentation()` (#38374)
- d6fffe6b32 lsp: access correct client capability path in `supports_registration`
- 3eaa6c5a66 lsp: add `RequestFailed` error code constant #34645
- c3589753a0 lsp: add `vim.deprecate` call to `vim.lsp.with` (#37960)
- bd41f6eb6c lsp: add deprecation comment to `gen_lsp` (#36185)
- 9f99bf48ea lsp: add missing argument validations (#34519)
- 378435968f lsp: adjust codelens position based on the server-provided range
- 35756022cb lsp: advertise supported fold kinds (#34461)
- 4db58f78b4 lsp: announce `normalizesLineEndings` capability (#34175)
- bac133e4b6 lsp: announce diagnostic tag support (#34436)
- fed9069b8d lsp: avoid `foldclose()` after current window-buffer changed #33901
- 2debe2f30a lsp: avoid automatic request after leaving insert mode (#35767)
- fde0b487fb lsp: avoid re-enabling `document_color` on `registerCapability` (#35774)
- 6f733f4a9b lsp: avoid scheduling client deletion before LspNotify #37685
- 2ee896201c lsp: better handling of "*" configs
- 0501c5fd09 lsp: call `on_list` before reading `loclist` #37645
- 653871da1b lsp: check `nvim.lsp.enable` before `doautoall` #36518
- e94d8f03b9 lsp: check for lens range in `vim.lsp.codelens.run()` (#35294)
- 1bc85d29c1 lsp: check for non-nil buffer state on reset (#36519)
- bbfcde3ab2 lsp: check if buffer is valid in scheduled client:on_attach() #35672
- c789d79966 lsp: check if buffer is valid when resolving code lenses (#35092)
- 0862c1036a lsp: check if client is stopping before reuse #33796
- 42f244bf18 lsp: check whether buffer is valid when scheduled #35461
- 0dc900d744 lsp: clear document_color autocmds #34573
- ace254c9ff lsp: close floating preview window correctly #34946
- a702534c50 lsp: close timer when client exits (#36795)
- b4ba27c238 lsp: codelens extmark line out of range (#35070)
- f2d0b06ecb lsp: completion word includes leading space from label #38435
- 3342aead1d lsp: consistent use of `vim.notify`/logging with unsupported methods
- 55e3a75217 lsp: convert the encoded position to line byte (#34824)
- 8165427b4d lsp: correct capability checks for dynamic registration (#36932)
- 82d0883c2d lsp: correct diagnostic data support and related info capabilities (#34454)
- 2822c38f2e lsp: correct iteration through attached buffers (#36517)
- 213360c389 lsp: custom 'winborder' in make_floating_popup_options() #34868
- 342974773c lsp: cycling signatures with the default `config.focusable`
- 40aef0d02e lsp: decode 'null' in server responses as vim.NIL  #34849
- b67eff38fe lsp: deduplicate completion items #36166
- e62dd13f83 lsp: default ClientConfig.exit_timeout to false #36811
- 70ea589d79 lsp: deprecate `vim.lsp.get_buffers_by_client_id` (#36449)
- b938638d2d lsp: deprecate `vim.lsp.protocol.Methods` (#35998)
- f7802dd5d5 lsp: deprecate vim.lsp.set_log_level, vim.lsp.get_log_path #35274
- 8315697449 lsp: detect if Client:request resolved synchronously #33624
- 0cc4f53b40 lsp: do not clear the codelens on the last line #38226
- 18e8839c80 lsp: don't create an `'LspAttach'` `document_color` autocommand
- 90abd2613d lsp: don't empty server start-boundary by next client response #37665
- 0472119fe6 lsp: don't immediately force shutdown when using a timeout (#36455)
- c2c5a0297e lsp: don't overlay insertion-style inline completions (#36477)
- afebbd0f34 lsp: don't override `config.title` in `vim.lsp.buf.signature_help()` #35075
- 729111d3a3 lsp: don't treat MarkedString[] with language id as empty #35518
- ff792f8e69 lsp: enable insertReplaceSupport for use in adjust_start_col #36569
- 8495d96238 lsp: ensure `bufstate` when calling `vim.lsp.document_color.is_enabled`
- f168d215cf lsp: ensure augroup before querying autocmds #38254
- e239179871 lsp: ensure bufnr is passed for buffer-local requests (#36325)
- 40dc2d02a8 lsp: ensure the codelens on the first line is visible
- 9f77124b78 lsp: error on omnifunc completion (#37790)
- 82b844fefe lsp: fallback to empty `capability_path` in `supports_registration`
- 927927e143 lsp: fix error with InsertReplaceEdit events #33973
- 23f4fab0bd lsp: fix incorrect params because of typo (#36871)
- 34116bbd9b lsp: fix nil-index error for `:lsp enable` (#37411)
- 20a392fe38 lsp: fix window to set cursor for inline completion (#36444)
- 4ee2e365a5 lsp: fix workspace diagnostic request to follow spec (#34674)
- 913b05bf63 lsp: format_item should return string (#36025)
- 7c3df3e2ea lsp: get_namespace signature (#38449)
- a8ffa6e323 lsp: guard dynamic capability attachment #38382
- abc96ba0ce lsp: handle `nil` buffer state in `documentColor` clear (#33746)
- 8e48c02061 lsp: handle array with empty string when checking empty hover (#35423)
- 507cd63418 lsp: handle completion/resolve response arriving after on_insert_leave
- 1de77c608f lsp: handle nil request in semantic tokens #36780
- 26cc42e426 lsp: handle nil response in references request #35139
- 5653b25e9b lsp: handle non-string documentation in completion items #38291
- 95dce376f3 lsp: handle providers without subcapabilities
- eaacdc9bdf lsp: ignore empty response on trigger completion #37663
- a0678a5849 lsp: ignore inline completions after leaving insert mode (#36476)
- 7ebfc50775 lsp: ignore invalid fold ranges (#36708)
- 8bfb91accc lsp: ignore stale codelens resolve responses (#38153)
- 5d1fd4aca5 lsp: improper diagnostic end_col computation
- 1f558f8d09 lsp: improve diagnostics handling and comments
- ed562c296a lsp: improve dynamic registration handling #37161
- 5c15df449a lsp: improve error completion message #33812
- cd06e0c9d6 lsp: include client ID when receiving unknown fold kind (#34535)
- 6005bc68b2 lsp: include context for each client in multi-handler results (#34669)
- b459bf5961 lsp: include missing LSP methods and update type annotations
- 18d6436ad2 lsp: inlineCompletion: ignore out-of-range items #35990
- 820fb89172 lsp: make thematic break parsing conform to GFM spec (#35162)
- 13cf80deef lsp: map all LSP methods to server capabilities (#37910)
- 2f78ff816b lsp: misleading logs in non-applicable filetypes #35749
- d976834864 lsp: nil error in ColorScheme autocmd
- 3c4acc0f1a lsp: noisy log message when enabling server without config #36264
- 91e116f3a6 lsp: only auto-detach lsp.config clients #33834
- e5c5b563ec lsp: only auto-detach lsp.config enabled clients #34325
- eb90f5d9e3 lsp: only resolve LSP configs once (#38007)
- 6926fc1615 lsp: opts.reuse_win does not jump if buf is already open #33476
- 4778a4c201 lsp: prevent flicker in codelens virtual text #34888
- 9e93bfdb5f lsp: prioritize showing active signature
- b98aefc584 lsp: properly handle `documentColor` from multiple servers #33656
- c39d18ee93 lsp: raise error when lsp config is invalid type (#37508)
- addd408b39 lsp: redraw codelens after request completed #38352
- 03032d1f73 lsp: remove `vim.lsp.diagnostic.reset()` (#35938)
- 285ea2525f lsp: remove extra notify on empty hover
- 34815777b2 lsp: remove side-effects if `vim.lsp.enable()` raises an error (#37571)
- 181df60533 lsp: remove unused `ns` field
- 371ad48135 lsp: replace `string` types with LSP method alias type annotations where appropriate. (#36180)
- 6a49a277f5 lsp: request diagnostics from all registrations
- 0da9827673 lsp: respect documentation markup kind in completion preview #38338
- 4ef5624729 lsp: restore Client:stop() force-stopping behavior (#35800)
- 0db8efcbe4 lsp: restore virtual document color visibility (#38407)
- 4dd9137215 lsp: reuse_win prioritizes windows/tabs currently displayed #36486
- 70460d557c lsp: scope inline_completion autocmds to buffer (#35965)
- 323d5527ee lsp: set 'linebreak' in floating windows (#36275)
- 4b8980949c lsp: set concealcursor='' in LSP floating windows #36596
- c3991b8ef4 lsp: show notification with empty hover response (#35014)
- 5b1b46ea5a lsp: show title when global winborder is set (#35181)
- 8a94daf80e lsp: simplify semantic tokens range request logic #36950
- 4ed597389c lsp: snippet preview blocked completionItem/resolve request #38428
- 0197f13ed4 lsp: sort items when completeopt include fuzzy #36974
- d53d542359 lsp: stop and close timer when `Capability` is destroyed
- a768d0a95b lsp: stop repeatedly resuming dead coroutine #35743
- 1d8e9b5d07 lsp: store result id for unchanged diagnostic reports
- 8b5d8dfc73 lsp: support `containerName` in symbol requests #35029
- 17c18efbe5 lsp: support v:count in selection_range() #34551
- a1895f024a lsp: support workspace/configuation with no section #27510
- bd225422a5 lsp: tests for :lsp, rename start/stop
- e69b81ad94 lsp: treat 2-triggers-at-once as "last char wins" #35435
- 1f63735f17 lsp: treat nil inlay hint result as empty array (#35458)
- f67306cc67 lsp: typos in method names #36077
- 29c6176f08 lsp: unify LSP error logging prefixes #38354
- 9139c4f90f lsp: update capability maps (#35227)
- db1b7f7412 lsp: update completion items on `TextChangedP`
- 7a8d316879 lsp: update metamodel (#38174)
- 6c3e9b5573 lsp: update on `CursorHoldI` cause users unable to `select()`
- 848c7a7894 lsp: update window title when cycling through signatures #35407
- 006101360d lsp: use LSP method type in more places (#36069)
- 36db6ff2c1 lsp: use LSP textEdit range for completion start boundary (#37491)
- 34c769dd89 lsp: use `bufnr` when getting clients in `symbols_to_items` (#33760)
- 807bc00dd6 lsp: use `vim.notify` with action-less `showMessage` requests (#34720)
- 5fbc5ab810 lsp: use correct `workspace.diagnostics` capability key (#35937)
- 00ad477419 lsp: use correct deprecation function (#34518)
- 6fe68abdf5 lsp: use entire line as completion word (#37949)
- 1d7823451e lsp: use vim.notify for all message types #34489
- f90cd620c5 lsp: vim.lsp.completion clean up triggers on client detach (#38009)
- 5c4b64aae5 lsp: wait for exit_timeout on quit #37597
- 6bb6b47933 lsp: wait to display exit message #37925
- 5554fcc286 lsp: warn on missing config in :checkhealth #33087
- 0cda018345 lsp/diagnostic: key resultId by client and identifier
- 7a5e9ef0aa lsp/diagnostic: use diagnostic provider identifier for code actions #38401
- f0c0c24ed7 lsp/health: always use vim.inspect to show root_markers (#34667)
- 5ad01184f3 lsp/health: ensure valid table before concatenating (#34092)
- 1906da52db lua: close vim.defer_fn() timer if vim.schedule() failed (#37647)
- 103ddaf9ae lua: correct line number reporting for options set in coroutines (#37463)
- b986fd96bc lua: coverity "unreachable" warning #35874
- 40f5115ac4 lua: disable `strict_indexing` when converting LSP positions
- 1264d1156c lua: don't leak timer when vim._watch.watch() fails (#35768)
- c08139d790 lua: don't remove first char of non-file stacktrace source (#37008)
- 9a5641b4b5 lua: drop support for boolean `buf` in `vim.keymap` #38432
- 66066d0f6a lua: extra CR (\r) in `nvim -l` output #38048
- b87bdef2a8 lua: relax `vim.wait()` timeout validation #36900
- 6a330f893b lua: report error in Lua Funcref callback properly (#35555)
- 1aa26f5d55 lua: separate vim.{g,b,w,t} types #37081
- 94144d4678 lua: vim._with() doesn't save boolean options properly (#37354)
- 89b946aa87 lua: vim.diff is nil in uv.new_work() thread #34909
- 40351bbbbe lua: vim.validate `message` param #33675
- bc0635a9fc lua: vim.wait(math.huge) fails #36885
- b3324be0d8 man.lua: :Man ignores section of gzipped manpage #38235
- 87bd16e470 man.lua: :Man slow/hangs if MANPAGER is set #36689
- 5333d6371b man.lua: E95 when piping to :Man #33068
- a8dd5c7e41 man.lua: noisy "ENOENT" error on Windows #33409
- 46220afef8 man.lua: show_toc condition may cause infinite loop #36979
- b8763cb215 man.lua: useless executability check #33438
- 84d3bbef23 map: use names like Map_key_value not Map_keyvalue
- 218ea9fff7 mappings: always include replace_keycodes in mapping dicts (#37272)
- 3341ab0776 marks: clamp conceal_lines corrected line number #33464
- 5773f0e994 marks: make jumpoptions=view work with 'smoothscroll' (#38339)
- 064ff74cdb marks: wrong display after inserting/deleting lines #33389
- 033f1123cd marks: wrong line('w$', win) with conceal_lines (#37047)
- 37c0efb21c marktree: fix edge case bug regarding changing intersections
- 2154d325d5 memfile: avoid potential crash on OOM (#37946)
- 5e470c7af5 menu: fix listing of submenus (#34315)
- 8f9278d7c2 menu: right-click menu fails with E335 when using V after i_ctrl-o #37349
- b47b0caba8 message: concatenate multi-chunk nvim_echo({err}) for exception message #38131
- 3d5ef97a98 message: no wait return for delayed exception error #35881
- 2de284e50b message: set replace_last for completion "scanning" messages #37967
- 3b85046ed5 messages: "list_cmd" kind for :command, :version (#34529)
- ac67098998 messages: "list_cmd" kind for mark commands #33874
- dc3a30cfbb messages: 'exrc' / secure messages
- 96e1acfa42 messages: add "list_cmd" kind to :colorscheme #37561
- 29f2cb89f0 messages: add append parameter to history entries (#34467)
- 8bdfd286e5 messages: adjust msg_show "empty" kind logic (#37427)
- 83037cf218 messages: allocate message history kind string #38292
- c85313bac7 messages: always assign msg_id to msg_show events #37671
- bf1d4e9793 messages: capture execute("messages") with ext_messages (#34342)
- 276860b538 messages: clear 'showmode' message after insert_expand #33607
- 1b2b715389 messages: disallow user-defined integer message-id #38359
- 81828e66b9 messages: emit empty msg_show event for :echo #38467
- 53aad276b6 messages: exclude "search hit BOTTOM" msg from history #36961
- 73157c994d messages: heap-buffer-overflow with shell command (#37855)
- 7a490d65c5 messages: increment message ID without ext_messages #37714
- 912388f517 messages: list_cmd kind for buffer line messages (#33855)
- d86d4bacc1 messages: make swapfile attention message part of prompt (#34414)
- 49c19a1fe3 messages: message not flushed at end of command #37904
- 7c43f8e433 messages: messages added to history missing from ext_messages "g<" #33907
- a81b059a45 messages: non-fast and append for "shell_*" kinds #38188
- 10a03e83e3 messages: only msg_clear for UPD_CLEAR #34688
- e876a739ee messages: recognize cmdline one_key/number prompt State (#34206)
- 96957d80c6 messages: reinstate 'showmode' message delay #37992
- e63346dfe9 messages: reset redirection message column at message start #38068
- a5f236291c messages: single event for multi-expr :echo (#34393)
- f1dcde6cba messages: single msg_show event for :global command #37728
- 986b92eb07 messages: single msg_show event for multiple :set options #33555
- 3898f34c5a messages: spurious newline with --headless + cmdheight=0 #38494
- 41336a3590 messages: swedish translation #37395
- 39c4e0f336 messages: unwanted ext_messages newlines for confirm() #38045
- 4260f73e13 messages: unwanted newlines with ext_messages #37733
- 98f5aa2564 messages: verbose message emitted without kind #33305
- 18fa61049a mouse: crash with click on win-separator in statusline (#33091)
- 7432781e71 mouse: do not fetch clipboard twice when pasting with middle button #33494
- 2f8fb4f28a mouse: mouseclick after conceal_lines is miscalculated #33451
- 32325a66ca move: adjust for concealed lines above topline after scrolling up (#33211)
- 6ce2877327 move: consume skipcol before revealing filler lines (#34143)
- 2069be281c mpack: boundary values for negative integer encoding #37255
- b8ee354f12 msgpack: flush incomplete big UI event before packing RPC event
- 7f2d5d6883 msgpack: use fixstr encoding for strings of length 20-31 #36737
- 41068c77aa normal: assertion failure with "gk" in narrow window (#37444)
- 911337eb3c normal: crash using :norm from vim.ui_attach shell message event #38283
- 4485e715fb options: deprecate 'gdefault', 'magic'
- c2136e3590 options: increase t_Co buffer size (#35859)
- 9910445125 options: make 'cdhome' take effect on any platform
- f4f1149292 options: vim.opt fails for 'fillchars' #37141
- 1f2883e879 outline: use 2-space indent instead of 1-space
- 3d37aa3116 pack: account for Git's "insteadOf" in `:checkhealth` #38393
- bac4cde9cd pack: actually checkout proper version of submodules
- b02d1303b8 pack: add trailing newline to lockfile #38469
- 46648c3867 pack: close confirmation buffer's tabpage by ID #34971
- 0f73873d4f pack: close confirmation buffer, not tabpage #37756
- ee3239fcb6 pack: consistently use "revision" instead of "state"
- f00abc6a56 pack: ensure `data` spec is passed in events during lockfile sync #38139
- d3bea4ace9 pack: ensure consistent order of changelog during update
- ed73ed8283 pack: ensure explicit default `version` in events (where possible)
- 14003bd1c5 pack: ensure plugin directory is created during first usage attempt
- 539b8027a3 pack: explicitly close confirmation window #37861
- fa3920282d pack: handle Git environment variables #35626
- 3b860653ca pack: handle lockfile in case of install errors #36064
- 3f34f083db pack: ignore 'loadplugins' when sourcing 'after/plugin' scripts
- 28e2a5c151 pack: improve `vim.pack.add()` input validation
- 89a72f11e5 pack: make newer version suggestions more robust
- 2e62f3576f pack: open confirmation buffer in tabpage after the current one
- e4e6605943 pack: relax minimal Git version to be 2.0 #36573
- f492f62c3d pack: rename confirmation buffer to again use `nvim-pack://` scheme
- 0fa96585dc pack: set `source` in progress report #38511
- 474e9e9408 pack: show more informative error message if no `git` executable
- 5468e6a452 pack: skip :redraw! if headless #37782
- 8f0b8a2c27 pack: skip `git stash` during install
- b337c6e0fc pack: update `add()` to have default `load=false` during startup
- 1ee18b4061 pack: use 'coxpcall.lua' on non-LuaJIT
- 8200223ee7 pack: use `vim.pack:` as message/progress prefix
- f3f5095630 pack: use full hashes in lockfile and revision description
- eff01b7620 pack: use more correct URI for confirmation buffer name
- 267bbe64cb pack: validate installed plugins in `update()` and `del()`
- a5d6932686 paste: don't use :echo immediately before :redraw (#35773)
- 42aae632be plines: count 'showbreak' in EOL inline virt_text in line size (#35921)
- 6291256868 process: avoid buffering unnecessary UI event with PTY CWD (#37582)
- 19a3b67789 process: avoid unexpected behavior when PTY chdir failed (#37614)
- e051718908 process: don't limit PTY master remaining data size
- 97509aa2be process: handle poll() interrupted by a signal (#38024)
- 8a4719e117 process: use poll() to drain PTY master on Linux (#38005)
- 974bc1b044 process: wrong exit code for SIGHUP on Windows (#38242)
- e5ba875a95 progress: memory leak on progress-message with history=false
- 2415d8f424 progress: message-id not sent to ui with history set to false
- 7bf83cc2a6 progress: require "source" for progress-message #38514
- 0af01948f3 progress: show progress-status only in curwin #38458
- bc6737250d progress: simplify ui-event, introduce default presentation #35527
- 25000be845 prompt: "%" prefix repeated on newlines with formatoptions+=r #34584
- ed4c549ea2 prompt: also store column info in ': mark #36194
- a5eb023a53 prompt: clear undo when changing/appending prompt
- 807a65b2da prompt: cursor on prompt line, disallow ":edit" #34736
- 689a149b08 prompt: don't implicitly set 'modified' #38118
- dbb3986f33 prompt: ensure prompt-mark col gets reseted properly #37669
- 1349233cd1 prompt: heap-buffer-overflow in prompt_setprompt
- 4afbc25432 prompt: heap-buffer-overflows with invalid ': col
- bf9d3e4bf8 prompt: lnum update via nvim_buf_set_lines if buf != curbuf #34833
- b3096b5860 prompt: ml_get error with invalid ': lnum
- ed7ff848a0 prompt: prompt mark not placed after text edits correctly #34671
- 602cbbe1d9 prompt: prompt_setprompt cursor col adjustment
- 3a10405214 prompt: prompt_setprompt does not adjust extmarks, no on_bytes
- 2a5d687cc9 prompt: prompt_setprompt sets cursor col unnecessarily
- 16bf7652b7 prompt: prompt_setprompt with unloaded buffer, ': with lnum 0
- 51dc752e6c prompt: wrong changed lnum in init_prompt
- 7641177c5f prompt: wrong cursor col after prompt_setprompt, no on_lines
- 466b2ac192 prompt: wrong cursor position with cursor keys (#36196)
- acb99b8a65 prompt_buffer: plugins can't set `':` mark #35624
- b4906577c9 provider: misleading :checkhealth if user sets g:loaded_python3_provider=1 #32696
- 51aa64488d provider: support python3.14 #38419
- 7be4e4dd65 pty: prevent orphan conhost.exe on Windows 10 #38244
- ef0386fe9a pum: adjust info window column offset when scrollbar is present (#37069)
- 76fdd9b882 pum: crash when resizing grid with pumborder set (#36404)
- 2681e1fce3 pum: fix heap-buffer-overflow with 'rightleft' (#33146)
- 7d569abb20 pum: handle RightDrag on parent grid properly (#33626)
- 922816877f pum: hide info floating window when insufficient space (#37107)
- d87972f920 pum: keep info window aligned with pum when above #38251
- 445cb751e6 pum: pumborder=shadow not blending properly (#37328)
- 0712a9c87b pum: separate scrollbar from shadow border (#37448)
- 686e7aca40 pum: simplify 'pummaxwidth' truncation and avoid crash
- 5a65321684 pum: text overflows into border on truncation (#37438)
- 106cacc93b pumblend: do not apply special highlight attrs from bg layer #36186
- c80bb5b63e pumborder: wrong layout with pumborder=none #36208
- 6256adde2f quickfix: always split from current window #33807
- 69c379dc44 quickfix: use correct lnume when appending (#34611)
- 7ed8e96994 redraw: update curswant for Visual selection (#34241)
- a141fd2c4d remote: remote-ui connect timeout on slow networks #36800
- 39d8aa0a1a rpc: don't overwrite already received results on error (#37339)
- abd0c882b3 rpc: handle more cases when identifying loopback #36100
- e142e01d57 rpc: include write failure reason in log (#37959)
- db2b774a16 runtime: 'includeexpr' with non-Nvim-style Lua modules #33867
- 9076fdc123 runtime: add "Added", "Changed", "Removed" to "vim" colorscheme (#35704)
- f048298e9a runtime: conceal paths in help, man ToC loclist #33764
- 09f9d72c24 runtime: coverity STRING_NULL #569464 (#34795)
- 923efaea28 runtime: cpoptions is reset in Lua file #33671
- 76f6868e0a runtime: no conceal in qf on :lopen #34854
- 59c45b22d9 runtime: remove erroneously added syntax tests
- 39bb5d7ca2 runtime: stop treesitter highlight in b:undo_ftplugin #38459
- c4c2112b5d runtimepath: crash in :packadd splice optimization #38129
- d995142dbd scripts: collect_typos.lua: show commit message on failure
- 9f90992934 scripts: gen_terminfo clears Windows terminfo definitions #36736
- 130ef73e39 scripts: release.sh
- d04cbb65b9 scripts: use right syntax for choosing ref in "zig fetch"
- 7a71235399 server: serverlist({peer=true}) does not find peer servers #35506
- fc21433167 session: spacebar heater not warm enough #38434
- 2d3dc070ce session: window sizes not stored with float windows (#37344)
- 0dcdd65dcc shada: check return value is 0
- 36dbd2686f shada: don't add '0' mark if f0 in 'shada'
- 1f503ac7c0 shada: don't store empty replacement string
- a6591950f6 shada: don't store search and sub patterns if /0 in 'shada'
- 198c9e9bca shada: preserve marks after delete across sessions (#35795)
- b98eefd803 shada: prevent 'nobuflisted' buffers in v:oldfiles #34373
- 6bee2f686f shada: prevent use-after-free when mapping file marks (#34446)
- 5581a53437 shell: ceci n'est pas une pipe
- 6f904cfef1 snippet: adjacent tabstops without placeholders (#35167)
- ecded994c1 snippet: early return for final tabstop #35115
- 628d569a59 snippet: jumping backwards to choice node (#35062)
- dff78f580d snippet: setting end_right_gravity (#35061)
- 1968029003 snippet: sync tabstop text also if pmenu is visible (#35250)
- 019b2050e1 snippet: use <cmd>call cursor() for visual range
- d077a24f5c socket: avoid stack-use-after-return after timeout (#36405)
- bfe9fa0f8e socket: remove stale socket files (#37378)
- 44f1dbee0d spell: save spell files to stdpath('data')/site/spell #33528
- 9436e7c978 spell: wrong VimEnter autocommands (#36339)
- 0f64f0f5b6 startup: crash in read_stdin #35699
- 30dae87de4 startup: file buf is lost if stdin is empty and "-" is last #35402
- c8c78b531b startup: make startup windows if there are only floating windows (#34349)
- 5c51b45a82 startup: respect $NVIM_APPNAME in $XDG_CONFIG_DIRS paths
- c785d5cdf0 startup: source init.lua from XDG_CONFIG_DIRS
- 5cbb9d613b startup: wait for bg detection before user config #37075
- 32d3dd0650 statusline: broken statusline on error #38000
- c3a4d12529 statusline: check buf valid before redraw #35123
- 8305af9bd2 statusline: clear ruler when it is no longer drawn #33765
- ad330e99d1 statusline: diagnostics spacing #36897
- 1af5ec5b51 statusline: don't require'vim.diagnostic' unless already used
- 0ca9849387 statusline: missing info/hint diagnostics #38307
- af0f7b59b1 statusline: redraw if Visual selection other end changes (#36281)
- e9b6474ae7 statusline: scope truncation bookkeeping
- 63ece2b151 swapfile: don't use uninitialized memory (#35813)
- cbfa7f0d7b swapfile: handle newlines in swapfile list message #35802
- 8b9500c886 system: don't treat NUL at start as no input (#34167)
- 6e2b514813 system: handle SIGINT in --headless mode #36557
- d6d1bfd20d term: terminal attr index may exceed TERM_ATTRS_MAX #34318
- 3e6db5b2ec termdebug: use mark `:` to get prompt line in prompt buffer #37336
- 295fb3fdb2 terminal: :edit should respect 'bufhidden' with exited job (#37301)
- 196df35cca terminal: <Ignore> should be no-op (#37494)
- ad1dfc92a0 terminal: add various missing redraws
- 520568f40f terminal: adjust marks when deleting scrollback lines (#36294)
- 379e307148 terminal: also don't propagate $COLORTERM on Windows (#37699)
- 1519a34e43 terminal: autocmds leave terminal open to wiped buffer
- 61217e3618 terminal: avoid events messing up topline of focused terminal
- 366251a5d2 terminal: avoid multiple terminals writing to same buffer (#37219)
- 5e521c3b5a terminal: avoid tailed cursor in focused terminal in events
- 16da47f474 terminal: changing height may lead to wrong scrollback (#37824)
- 747da13f44 terminal: check `buf` before deleting extmark #38314
- d07cbb2f42 terminal: check size when creating new tabpage
- e56292071a terminal: check size when switching buffers
- f3feae0bbf terminal: crash after deleting buffer lines (#37921)
- 7297e9d339 terminal: crash when TermClose deletes other buffers
- ad85871ca1 terminal: crash when TermClose switches back to terminal buffer
- b67ac8cc6b terminal: crash with race between buffer close and OSC 2 (#37225)
- 459cffc55f terminal: deleting from wrong buffer (#36289)
- b4039ec0b0 terminal: don't allow b:term_title watcher to delete buffer
- 3cd07709ba terminal: don't always leave if enter autocmds delete buffer #38324
- 6a71239cd5 terminal: don't disable scrolloff for non-terminal buffers (#34451)
- 7d6b6b2d14 terminal: don't poll for output during scrollback refresh (#38365)
- 875958c9a1 terminal: don't refresh for sync flush when exiting (#38363)
- 6a409e0507 terminal: don't trigger TextChangedT for unrelated redraws
- ee143aaf65 terminal: emit Termrequest for all OSC sequences #33181
- b5aef05b8f terminal: fix OSC 8 parsing (#34424)
- a2f01953b8 terminal: free the "[Process exited]" msg extmark #38246
- e254688016 terminal: handle ED 3 (clear scrollback) properly (#21412)
- 40bf38fefc terminal: handle OSC 8 split into multiple fragments
- f6ca9262b8 terminal: handle closing terminal with pending TermRequest (#37227)
- e6fae64454 terminal: handle opening terminal on unloaded buffer (#37894)
- 814f2629cb terminal: handle split composing chars at right edge (#37694)
- 1c57e4cb4f terminal: heap UAF from autocmds when entering #38316
- b40880f88f terminal: heap UAF if buffer deleted during TermRequest (#37612)
- 3621af9b97 terminal: inconsistent mode change when switching buffer (#37215)
- 4ef7aa83c4 terminal: keep last cursor if it's on the last row
- df21ac729c terminal: losing output if BufFile* poll for events (#37580)
- b6befc7b03 terminal: losing scrollback when TermOpen polls for events (#37573)
- 9cbc430cfb terminal: missing refresh with partial mappings (#37839)
- c845f1923d terminal: patch various autocommand-related holes
- 9540e7470b terminal: possible heap-use-after-free during Nvim exit
- 72ac9ac9a1 terminal: possible memory leak on exit (#37532)
- 238d4fa71a terminal: possible missing refresh with buffer updates (#38388)
- e6ba78919c terminal: possibly wrong wrow/wcol in active terminal
- 99e754ae02 terminal: remove condition that buf is curbuf (#33721)
- ba6440c106 terminal: reset `w_leftcol` after resizing terminal
- 25ce44845d terminal: restore options properly when switching buffer (#37485)
- 1a1a60bd05 terminal: resuming doesn't work with command in fish (#37857)
- cc7022c544 terminal: scrollback may still be wrong on height increase (#37835)
- 1b627f6c59 terminal: set b_locked when setting &buftype (#37787)
- b28bbee539 terminal: skip setting `string_initial` to false on no-op (#34176)
- 4f6b3e5c15 terminal: spurious buffer update with empty buf (#37920)
- 756751afa3 terminal: stack overflow when too many csi args (#34012)
- 5c156fdc64 terminal: update size after closing window
- b7124ae768 terminal: update winopts and focus when switching terminals
- b88b7f9591 terminal: wrong colors with nvim_open_term() in non-curbuf (#37579)
- 67832710a5 terminal: wrong row in TermRequest with full scrollback (#36298)
- 97d9b85bf9 terminal: wrong scrollback with BufFile* autocommand (#37601)
- 54468c1c3c terminal: wrong scrollback with nvim_open_term() on buffer (#37791)
- 8707ec2644 termkey: out-of-bounds write in array #33868
- 272e041780 tests: don't surpress stderr output
- e702f97518 tests: ignore vector math types
- 2d4b028d02 tests: use correct include path for unittest
- d84e786112 tests: use correct signature for unpacker_teardown()
- c81af9428c tests: use uv.spawn instead of io.popen for unittest helpers
- 61f166ec40 textformat: don't swallow "space" with auto-formatting enabled (#38181)
- e5c2ce5905 treesitter: ":EditQuery [lang]" with injected languages #34914
- 08f4811061 treesitter: :InspectTree wrong title for non-relative path #37965
- 16aab4cb48 treesitter: InspectTree only show the largest injection #37906
- 60af1a1db2 treesitter: clear parse options state #33437
- 5a2edc483d treesitter: close `:InspectTree` with `q`
- b4016f4525 treesitter: don't add final newline if not present #35970
- 28eaec5e15 treesitter: don't memoize modified headings (#33186)
- 8d75910ef9 treesitter: eliminate flicker for single windows #33842
- 5fe582448c treesitter: enable a gc for wasmtime
- 168bf0024e treesitter: ensure TSLuaTree is always immutable
- 99e6294819 treesitter: ensure TSNode's tree is immutable
- 58d85cd03d treesitter: ensure window is valid in async parsing #34385
- d8e03d5d5a treesitter: escape hyphen in lua pattern
- 284b0e4fa2 treesitter: fix `:InspectTree` incorrect injections
- 86c939ba91 treesitter: fix spell navigation on first line (#37361)
- d0822bbd15 treesitter: highlight group for EditQuery captures #36265
- ea878f456a treesitter: ignore stale fold refresh callbacks
- 18e0301e1f treesitter: inconsistent highlight of multiline combined injection #32619
- 0977f70f4d treesitter: injected lang ranges may cross capture boundaries #32549
- 2aa7948266 treesitter: invalidate conceal_lines cache earlier #33875
- 9274532615 treesitter: invalidate conceal_lines marks #33828
- 4e2ed1d03c treesitter: missing `nowait` for :InspectTree keymaps #36804
- 63737e6e73 treesitter: no injection highlighting on last line #36951
- 01817eb6f3 treesitter: normalize language aliases
- cf59631f65 treesitter: not refreshing virtualtext contents #33361
- f82219c490 treesitter: parser metadata annotations
- de45b8e275 treesitter: proper tree `contains()` logic with combined injections
- baabc35987 treesitter: properly clip nested injections
- f2bfde9140 treesitter: reset next_col when performing intermediate highlights
- 3ec63cdab8 treesitter: run FileType autocmds in the context of `<abuf>`
- faae1e72a2 treesitter: scope highlight state per window #34347
- 3eab5bd38a treesitter: set local values of window options
- 29c5559ce1 treesitter: show capture-level priorities in :Inspect #35443
- 8b41df185c treesitter: support multiple `@injection.content` captures
- f8ac713448 treesitter: use metadata in :EditQuery captures #37116
- 5119c03be7 treesitter: use subpriorities for tree ordering
- 756e1eb017 treesitter.foldexpr: duplicate callbacks #37048
- b15b22fc73 trust: :trust command on Windows #36509
- 272dba7f07 trust: support for trusting directories #33617
- 03eb331abf tui: CSI is not ESC (sync mode)
- fb5a51e775 tui: avoid memory leak and compiler warning on Windows (#34225)
- 1949452bd3 tui: avoid using uv_pipe_t as uv_tty_t (#37479)
- 5048d9aa2a tui: call tcdrain() on stdout and stderr on exit (#38154)
- e65c0a0810 tui: check for title support correctly (#34866)
- 17e13ce3b6 tui: clear primary device callback before invoking it (#34032)
- 218ff601c4 tui: do not emit resize screen sequence after host terminal is resized (#35335)
- b1679f0ab6 tui: do not remove SIGWINCH handler when resize events are enabled (#35221)
- 69bddc089f tui: don't call tinput_init() twice (#36386)
- 331de6afa6 tui: don't crash when nvim__screenshot() is called with bad path (#34594)
- c35dde03c8 tui: don't process UI events when suspending or stopping (#33710)
- df23952ce9 tui: don't treat remote TUI as GUI (#36319)
- adbd33027f tui: don't try to add unsupported modifiers (#33799)
- 4a69847df4 tui: don't wait for DA1 response when stdin is closed (#35745)
- d62bbe24cb tui: enable vtpcon strikethrough feature #36762
- 82f08f33c1 tui: ensure all pending escape sequences are processed before exiting #32151
- 142f914089 tui: feature detect vsplit scrolling in xterm-like terminals
- 4b5364b423 tui: forward C0 control codes literally (#33759)
- f64475a226 tui: handle sequence larger than entire buffer
- 50a38d9698 tui: heap-use-after-free when resuming (#36387)
- 1f0dbfea2f tui: log chdir failure properly #37591
- bb6f5c3b31 tui: reset cursor style on exit (#36261)
- 5b5b7eb8d4 tui: reset cursor to default style when guicursor is disabled #38219
- 16680e57ba tui: use 0x7f as Backspace on Windows with VT input (#37679)
- 460738e02d tui: use the correct offset for invisible cursor after sync
- 2dba5abcb2 tui: wait for embedded server's exit code
- b80d390765 tui: wrong default input key encoding (#36440)
- bff7d3fd9f tutor: cannot find tutors in pack/*/start/* #34689
- 4143bcbd37 tutor: escape tutor filename #36539
- e5665754d1 tutor: l:lang is undefined
- f2691199fa tutor: use invalidate field in nvim_buf_set_extmark() #34989
- db1542af3d tutor: use legacy syntax for lesson 3.1 #34996
- 9988d7142d types: add missing @return annotations
- ef48104c31 types: nvim_get_win_config return type #35639
- 1427b94200 typval: allocated dynamic size must be at least the static size
- 072f126453 ui: 'pumborder' parsing, shadow #36127
- 027b7d6bbb ui: :intro not displayed with ui2 #37472
- 531442ddd8 ui: apply 'pumborder' to mouse menu, fix overflow #36193
- 5f9f706462 ui: check for cmdline mode properly (#35202)
- 8aec33e322 ui: clear msg_ruler event with 'rulerformat' #37675
- a8a0bba2f8 ui: close outdated cmdline pum on redraw (#36815)
- a33e5fb1bb ui: cmdline_block events for exmode #37751
- 8d6963a6a0 ui: cmdline_show is not fired after clearing the screen (#36451)
- f02484118c ui: correct condition for "wrap" flag in a floating grid
- 7ca3a56258 ui: don't crash if maximum UI count reached (#37636)
- ad438b6b14 ui: exclude hidden windows from tabline window count #36779
- d01b2611a6 ui: exclude unfocusable windows from 'complete' "w" completion
- c1648cf820 ui: forward 'rulerformat' to msg_ruler event #35707
- d909de2dc2 ui: ignore textlock for vim.ui_attach() callbacks #36278
- 1a3d3b77bb ui: no empty message for substitution match with ext_messages #37600
- d30d91f3a4 ui: only internal messages are unsafe #37462
- 3277dc3b4e ui: postpone UI callbacks during textlock #36803
- 7b8deacc3f ui: preview float doesn't respond to mouse scroll #38270
- 61b6553ee9 ui: proper event ordering for nested cmdline_block events (#35344)
- 506dd7252a ui: remember cursor shape when obscured #37704
- 6657cc3671 ui: repaint separator connectors after all window updates #37852
- 424d30fe97 ui: send multigrid message position and size when the UI is refreshed
- 1d57374c41 ui: textlock still causes issues for UI callbacks #37513
- 703f4037c4 ui: wincmd _ should not increase 'cmdheight' above 0 (#33056)
- c87d92c3b4 ui.open: use "start" instead of deprecated "rundll32" #36731
- ae2829ee35 ui2: ENTER may focus pager in insert/terminal mode #38497
- e198037148 ui2: always route to dialog when cmdline is open #37730
- 8c7bbfba3d ui2: callbacks reference stale message-window handles #37673
- 9655bd560f ui2: don't adjust dialog pos for pum wildmenu (#37695)
- 29a46a11aa ui2: don't change configured message target implicitly #37924
- d8cea8d45d ui2: don't scroll beyond eob in dialog window #36116
- b9451dfd4c ui2: emit FileType event after setting default pager options #36315
- b6c020eb59 ui2: ensure expanded cmdline is closed after :<Esc> (#38187)
- ba6fc90b6f ui2: hide search highlights in msg window #36626
- 6275f533d1 ui2: immediately open target windows on new tabpage (#38170)
- 179e7fccd7 ui2: incomplete :echon message in g< pager #37819
- 4ef217e272 ui2: leftover empty lines in msg window #38059
- dff3028fe7 ui2: move windows to current tabpage
- 844caca881 ui2: multiline/color replaced message, expanded cmdline, error messages #38044
- d80d7a3eb4 ui2: no paging in dialog below expanded cmdline #38489
- 72a557c61b ui2: only copy highlight marks when expanding cmdline #37709
- 301c7065ca ui2: only highlight Ex command lines in the cmdline #38182
- c4ac36bfd9 ui2: only redraw when necessary #36457
- 16495e6863 ui2: only set dialog on_key callback once #37905
- b2adfe775d ui2: show messages in dialog window when entering expanded cmdline #38465
- c94b7b93c0 ui2: start treesitter after deleting cmdline buffer (#36274)
- ea70d2ad85 ui2: unset Search highlighting (#36633)
- 52dd62aa6e ui2: use pager to list consecutively typed commands #38272
- 3038f0191e ui2: wildmenu hidden behind dialog window #37684
- e58a842749 ui2: wrong condition used to detect active pager
- ce9dbd398b undo: u_savecommon uses wrong buffer
- 382963891c undotree: check foldmethod before invoking fold (#36192)
- f40672be99 undotree: clear autocmd correctly #36124
- 645206e87f undotree: error on `undotree.open()` with title as string #36085
- 26bd9bfab8 undotree: highlight extmarks like normal text #36087
- 4598305e0b undotree: mark title field annotation as optional (#36102)
- 9c89212de1 undotree: sync scroll pos with undo #36117
- af5ac7c7ea unittests: use -1ULL to mean UNSIGNED MATH.MAX
- c82f83abb0 ux: drop "Sorry" from messages #38318
- d93e150888 vim-patch: add N/A files and re-sort (#37544)
- d2517acdc5 vim-patch.sh: 'vim-patch:<hash>' token for 'non-patch' commits #36534
- 8bce9342d1 vim-patch.sh: don't treat 1-file runtime-only patch as N/A (#36525)
- 533cc0ab35 vim.diagnostic: improve typing
- 1f9d9cb2e5 vim.fs: abspath(".") returns "/…/." #36583
- 825e182139 vim.fs: avoid fn.fnamemodify in fs.root #37162
- dc5d313d66 vim.fs: joinpath() should ignore empty items #38077
- 14c708634e vim.fs: make `rm()` work with symlink to a directory
- f11f8546e7 vim.fs: root() should always return absolute path #36466
- 28e8190185 vim.hl: nvim_buf_del_extmark on invalid buffer #33331
- da650de277 vim.json: fix truncation of decoded numbers outside lua_Integer's range #35702
- 7a69fefdb9 vim.json: loss of precision on integers >14 digits #34876
- 78bbe53f76 vim.loader: randomized AppImage path pollutes luac cache #35636
- 1363ef7d50 vim.loader: randomized AppImage path pollutes luac cache #36944
- 1fb0126a08 vim.lsp.enable: don't eagerly enable LSP configs during startup #33762
- 49756ebc70 vim.lsp.inlay_hint: requesting inlay_hints even when disabled #32999
- 10ca09a2cb vim.net: always pass response body to on_response #38460
- 69b286c3bf vim.net: filetype detection, mark unmodified #36297
- 12689c73d8 vim.pack: add() stops unexpectedly on package load error #34787
- 89d26d61d2 vim.pack: increase default timeout #36992
- 8e740db70c vim.pack: skip checkout on bad `version` #36038
- 731e616a79 vim.system: clear_env=true gives an invalid env to uv.spawn #33955
- 4eebc46930 vim.system: env=nil passes env=nil to uv.spawn
- 532610388b vim.system: improve error message when cwd does not exist
- 223ac7782e vim.system: unclear non-executable message #33455
- 649ff924d9 vim.version: improve construction of '<=a.b.c' and '>a.b.c' ranges
- 092962b07c vim.version: vim.VersionRange:has(<prerelease>) (#33324)
- e40c5cb06d vterm: handle split UTF-8 after ASCII properly (#37721)
- d9d8c660fd watch: invalid joined path #37973
- bc814cfb2c winblend: treat braille blank (\u2800) as whitespace #32741
- de950f8272 window: avoid referencing cmdline_win after it is closed #35617
- c14de47f1a window: crash closing only non-float if autocmds :tabonly (#37218)
- df62cb3e69 window: crash closing split if autocmds close other splits (#37233)
- 0e7479bb76 window: crash on negative window height with 'winbar' #33250
- 4fadc21e38 window: disallow closing autocmd window in other tabpage
- bf5f7c1591 window: don't add a hsep when out of room if global stl is off
- 0d658660c2 window: don't enter unfocusable or hidden prevwin (#34486)
- b4e3461e3f window: don't leak fold memory with style=minimal #38287
- c7fd0c17b1 window: don't make hidden/unfocusable previous window current #36142
- 7f5b5d34cf window: don't store invalid height in window config (#34885)
- 3a36df9b13 window: handle closing the only non-float in other tabpage
- 9813c00dd3 window: restore b_nwindows if win_close_othertab keeps window
- 403fcacfc1 window: skip unfocusable and hidden floats with "{count}<C-W>w" #33810
- 84d84e9b5b window: style=minimal window loses local options when switching buffers #38138
- da8de99d0b window: use real last buffer of closed window
- d1189ea508 window: win_move_after UAF from naughty autocmds (#37065)
- 52991d8728 windows: don't set window icon on SIGHUP #34260
- 2c04ae9fcc windows: wrong RT_MANIFEST ID in nvim.rc #36406
- 3325536150 winfloat: last_status when changing split to floatwin

PERFORMANCE
--------------------------------------------------------------------------------
- 5edbabdbec add on_range in treesitter highlighting
- f9ce939bf5 scheduler priority clamping on macOS #35488
- 14e94f4617 api: reduce redundant `win_find_tabpage` calls (#35643)
- 4adfc4b7bc events: skip Progress prep if there are no subscribers #35871
- bfe42c84de extui: delay creating windows, buffers and parser (#34665)
- babdab2f70 filetype: vim.filetype.get_option cache miss when option value is false #37593
- f9d2115a35 highlight: allow decoration providers to skip ranges without data
- 1629493f72 lsp: avoid textDocument/definition requests during tag completion (#37260)
- f486f1742e lsp: include `previousResultId` in `DocumentDiagnosticParams` #32887
- 42657e70b8 lsp: optimize content length extraction from rpc headers
- f517fcd148 lsp: use string.buffer for rpc loop
- 92e7d5eaf2 pack: reduce number of 'opt/' directory computations
- 3aa04f7ee4 runtime: hardware accelerated "packadd opt_package"
- 5e64d92411 runtime: vim.trim for long only whitespace strings
- d3e495ce03 snippet: use "[count]|" to move cursor #33571
- 098da1fc2c treesitter: parse multiple ranges in languagetree, eliminate flickering #36503
- e656d7be2e tui: faster implementation of terminfo

BUILD
--------------------------------------------------------------------------------
- 4f97239661 USE_BUNDLED_UNIBILIUM=0 fails #36623
- fb2d736481 add script to collect typo PRs (#35824)
- 813457d5a6 adjust parallel functionaltest target names (#38144)
- 8e922c657c allow comments in deps.txt #35765
- 3f416ef524 bump lua-bitop to 1.0.3 #35063
- 374e869504 distclean: remove zig-related dirs #38013
- d589ce28b0 drop BUNDLED_CMAKE_FLAG, BUNDLED_LUA_CMAKE_FLAG
- 0ddba68607 ensure toolchain is passed to bundled deps #37587
- 10c11c4644 haiku os support #36639
- 8a7c9c971f ignore out-of-source build folder #33191
- 8c5bd841ed lint decorations_spec etc. with lintlua (#34182)
- 6b936002cc make build.zig generate helptags without running "nvim" binary
- 1d70c96e5b move shared.lua to _core/
- f51c54ace6 noisy readability-implicit-bool-conversion warning #38282
- a053186aa7 redundant variable in cmake/Deps.cmake #35924
- 6063ecb649 remove reference to runtime/indent/Makefile (#35935)
- 20e77c5d88 ship "_core/*" as bytecode (built-into Nvim binary)
- 1bf9a07b3e slience new clang-tidy warnings #34539
- 845cb5a527 slience some unwanted clang-tidy warnings
- c567340171 support Cygwin + bundled luajit #36417
- e91224bfaa support static build #34728
- 20225fc330 suppress -Wfree-nonheap-object false positives in lua_cjson #37250
- 092e49d020 unset $TMUX when running tests (#34178)
- 3dbba90ba7 update-alternatives during deb install #37980
- 19ba589946 contrib: add bash completion for nvim #35843
- 4b2cbc2154 desktop: declare "Development" category #37794
- d73f2d9657 emmyrc.json: use StyLua formatter in .emmyrc.json #35196
- 0980617c0d msvc: suppress msvc build warning for different enum types (#34591)
- ceb7eb5230 windows: restore tee.exe on Windows #36363
- 5bb8734fb6 windows: vendor xxd.c #36746

VIM PATCHES
--------------------------------------------------------------------------------
- e27e4052c8 2566a9f: check.vim: Improve po message checks
- 5e6f0e58ed 32a5faa: check.vim complains about overlong comment lines
- cae4fbf973 3456303: check.vim: Use silent command modifier
- 5f86b4b70d 4105ef1: Drop superfluous execute permissions for readable files
- 282a794feb 41adebe: check.vim: detect trailing whitespace
- fc4188ded8 6f585da: Overlong translation files may cause repo to become "dirty"
- c2e0fd1c35 7.4.1886 (#36945)
- 8a4977e286 7a734b7: tests: fix typo in comment (after v9.1.1511)
- 5299967551 8.0.0287: debug mode: cannot access function arguments (#36772)
- c6f0a19206 8.1.0425: ml_get error and crash with appendbufline()
- 5a14a2679d 8.1.0579: cannot attach properties to text
- 36fc266e86 8.1.0636: line2byte() gives wrong values with text properties
- b5e20d7dff 8.1.0654: when deleting a line text property flags are not adjusted
- 76729a2044 8.1.0655: when appending a line text property flags are not added
- ef522420f2 8.1.0753: printf format not checked for semsg() (#37248)
- 441d222c0d 8.1.0857: indent functionality is not separated
- 1e81b54075 8.1.0977: blob not tested with Ruby
- 0c0ef489f9 8.1.1136: decoding of mouse click escape sequence is not tested (#35551)
- b3d29f396d 8.1.1259: crash when exiting early (#35552)
- 00c2e7d89c 8.1.1526: no numerical value for the patchlevel
- 4765d4e059 8.1.1584: the evalfunc.c file is getting too big
- 83f38800e7 8.1.1681: insert stray "{" when listener gets buffer line
- c9b35360ac 8.1.1700: listener callback called for the wrong buffer
- 750c350be8 8.1.1711: listener callback called at the wrong moment
- b79ed66e4a 8.1.1736: viminfo support is spread out
- 89e2f346a8 8.1.1751: when redrawing popups plines_win() may be called often
- 582e0714b5 8.1.1752: resizing hashtable is inefficient (#35563)
- 85bd0b6a03 8.1.1891: functions used in one file are global
- f7c86742e7 8.1.1920: cannot always close a popup when filter consumes all events
- b38ce04283 8.1.1939: code for handling v: variables in generic eval file (#36312)
- 681ec17b50 8.1.1940: script tests fail
- 4aac5908ed 8.1.1957: more code can be moved to evalvars.c
- f89e1eb036 8.1.1964: crash when using nested map() and filter() (#35715)
- ed0f46af62 8.1.1978: the eval.c file is too big
- 183f8cc59d 8.1.1979: code for handling file names is spread out (#36176)
- 3051e8bbb1 8.1.1981: the evalfunc.c file is too big
- d06fdecb97 8.1.2008: error for invalid range when using listener and undo
- 860a7e4d21 8.1.2021: some global functions can be local to the file
- 406f9e3c8c 8.1.2077: the ops.c file is too big
- fadbc0e717 8.1.2127: the indent.c file is a bit big
- 5f3d00a5a6 8.1.2371: FEAT_TEXT_PROP is a confusing name (#35466)
- c81f7aeee2 8.2.0098: exe stack length can be wrong without being detected (#37136)
- 7048c36ba8 8.2.0115: byte2line() does not work correctly with text properties
- 0c24ddb4d8 8.2.0200: Vim9 script commands not sufficiently tested
- 3fc3f5f194 8.2.0223: some instructions not yet tested
- d632ffa243 8.2.0307: Python 3 vim.eval not well tested
- 992eaac082 8.2.0370: the typebuf_was_filled flag is sometimes not reset (#37404)
- f3cfe9a94b 8.2.0371: crash with combination of terminal popup and autocmd (#37433)
- f2df98e849 8.2.0443: clipboard code is spread out #35949
- 758e6db06c 8.2.0512: Vim9: no optional arguments in func type
- ed012b817d 8.2.0844: text properties crossing lines not handled correctly
- 088ba835ed 8.2.0845: text properties crossing lines not handled correctly (#35483)
- dc2d4b07a8 8.2.0853: ml_delete() often called with FALSE argument
- 474c477134 8.2.1123: Python 3 test is old style
- b95413f601 8.2.1555: not all tests are executed on Github Actions
- d65f5a06fe 8.2.1618: Vim9: cannot pass "true" to setloclist()
- ffb4526376 8.2.1667: local function name cannot shadow a global function name
- 865a28155e 8.2.1672: v_lock is used when it is not initialized (#35416)
- 8d3742ae8d 8.2.1679: ":*" is not recognized as a range (#37052)
- b95848a8f1 8.2.1756: Vim9: :let will soon be disallowed (#37063)
- 7ae8860674 8.2.1912: with Python 3.9 some tests fail
- d6607dae41 8.2.1939: invalid memory access in Ex mode with global command
- 1b1a8895bd 8.2.1941: Ex mode test fails on MS-Windows with GUI
- 3694fcec28 8.2.1983: ml_get error when using <Cmd> to open a terminal (#34759)
- ff8edbaa6c 8.2.2198: ml_get error when resizing window and using text property
- b3490536b9 8.2.2403: Vim9: profiling if/elseif/endif not correct
- 1ae7c11392 8.2.2404: Vim9: profiling try/catch not correct
- ffdee3a2e1 8.2.2409: Vim9: profiling only works for one function
- 8b79c32735 8.2.2411: profile test fails on MS-Windows
- b764a1ba93 8.2.2423: missing error message
- 7995e7a89b 8.2.2456: Coverity warning for strcpy() into fixed size array
- dccc35e6e9 8.2.2571: test may leave file behind
- d7cf1b31d5 8.2.2834: Vim9: :cexpr does not work with local variables
- 9a5b3a39f3 8.2.2905: no error when defaults.vim cannot be loaded
- 525c348c29 8.2.2992: Vim9: completion for :disassemble is incomplete
- b480b0cd5d 8.2.3159: cursor displayed in wrong position after deleting line
- e77d15cc5d 8.2.3348: line2byte() returns wrong value after adding textprop
- cd25ca5e0c 8.2.3377: Vim9: :disass completion does not understand "s:"
- 4f71d9ce35 8.2.3383: Vim9: completion for :disassemble adds parenthesis
- e0dcdef181 8.2.3431: completion for :disas sorts local functions first
- cba2f65ee4 8.2.3602: Python3 test fails with Python 3.10 on MS-Windows
- 398cf6d8d3 8.2.3657: Vim9: debug text misses one line of return statement
- a331d187ba 8.2.3662: illegal memory access if malloc() fails (#36939)
- 9f84e01dfb 8.2.3673: crash when allocating signal stack fails
- f15c28ed7a 8.2.3766: converting a funcref to a string leaves out "g:"
- a274bdf2d1 8.2.3767: crash when using NULL partial
- 15d3a83999 8.2.3795: too many #ifdefs
- 992543c361 8.2.3841: Vim9: outdated TODO items, disabled tests that work (#37900)
- f211af3ab7 8.2.3962: build fails for missing error message
- 24675ffa97 8.2.3968: build failure
- 09964b7ef0 8.2.4379: an empty change is reported to a listener
- 08eb133c3f 8.2.4474: memory allocation failures not tested in quickfix code
- ce05990823 8.2.4528: crash when using null_function for a partial
- 7ce17cd2a2 8.2.4529: Vim9: comparing partial with function fails
- 2ba44af7e0 8.2.4548: script-local function is deleted when used in a funcref
- 0c70fbf0d6 8.2.4633: Visual range does not work before command modifiers
- 78292dcc3d 8.2.4636: not using Visual range
- 0fa678c02f 8.2.4637: warning for using uninitialized variable
- cc95a7d8b8 8.2.4738: Esc on commandline executes command instead of abandoning it
- cd543d618d 8.2.4763: using invalid pointer with "V:" in Ex mode
- ffdb316491 8.2.4772: old Coverity warning for not checking ftell() return value
- e96c61d92d 8.2.4773: build failure without the +eval feature
- a979a6237e 8.2.4785: Visual mode not stopped if win_gotoid() goes to other buffer (#37073)
- 90b1202cfb 8.2.4851: compiler warning for uninitialized variable
- b6d0c391fc 8.2.4878: valgrind warning for using uninitialized variable
- eb67f3a6ba 8.2.5017: gcc 12.1 warns for uninitialized variable
- edd99f09c7 8.2.5092: using "'<,'>" in Ex mode may compare unrelated pointers
- f4a33929d9 8.2.5161: might still access invalid memory
- 26641c0c56 9.0.0010: returning 0 for has('patch-9.0.0') is inconsistent
- 2c560d8544 9.0.0025: accessing beyond allocated memory with the cmdline window
- 0d3ee26860 9.0.0057: has('patch-xxx') returns true
- 96a514ed46 9.0.0106: illegal byte regexp test doesn't fail when fix is reversed
- d4a8d169a2 9.0.0113: has() is not strict about parsing the patch version
- 899ec829be 9.0.0145: substitute that joins lines drops text properties (#37108)
- efacb10709 9.0.0154: text properties wrong after splitting a line
- 27eb0aba3c 9.0.0433: Coverity warns for not checking allocation failure
- 9b15d4c756 9.0.0688: debugger does not display the whole command
- 58ee249c2c 9.0.0729: the rightleft and arabic features are disabled
- f60051e00d 9.0.0874: using freed memory when executing unmenu at more prompt
- e51f5e17e1 9.0.0909: error message for layout change does not match action (#37436)
- 72d3506ce9 9.0.1033: tiny build fails because of conflicting typedef
- 3ac981e838 9.0.1066: test function name is wrong
- 69bed0431c 9.0.1427: warning for uninitialized variable
- 08e193633b 9.0.1480: using popup menu may leave text in the command line
- 827cfe4a76 9.0.1653: Amiga: default 'viewdir' may not work
- bd0555ecd4 9.0.1654: MS-Windows: test for default 'viewdir' fails
- b869cf8ddc 9.0.1689: python 3.12 produces warnings and fails test
- 53fd3657cc 9.0.1758: vim9 no class identifiers in stack dumps
- 1afdcb8f2b 9.0.1899: potential buffer overflow in PBYTE macro
- 7c38f428f4 9.0.2023: need more tests for :cq
- d6e5286d2c 9.1.0059: No event triggered before creating a window
- 3e655d3e42 9.1.0063: GTK code can be improved
- 4544cec168 9.1.0117: Stop split-moving from firing WinNew and WinNewPre autocommands
- 60a0e3d0a0 9.1.0151: ml_get_buf_len() does not consider text properties (#37094)
- 2a28149efc 9.1.0359: MS-Windows: relative import in a script sourced from a buffer doesn't work
- 453dfbf7d6 9.1.0535: newline escape wrong in ex mode
- 6ce964aed6 9.1.0539: Not enough tests for what v9.1.0535 fixed
- 17601e709f 9.1.0546: vim-tiny fails on CTRL-X/CTRL-A
- d5a6040967 9.1.0598: fuzzy completion does not work with default completion
- a9aedfbc58 9.1.0605: internal error with fuzzy completion
- 9757b11aaf 9.1.0631: wrong completion list displayed with non-existing dir + fuzzy completion
- d9f4c1db23 9.1.0634: Ctrl-P not working by default
- f4ddbaeb9e 9.1.0654: completion does not respect completeslash with fuzzy
- 786c5fbdec 9.1.0671: Problem:  crash with WinNewPre autocommand
- 69a9a25fcc 9.1.0689: [security]: buffer-overflow in do_search() with 'rightleft'
- 71662bbb49 9.1.0695: tests: test_crash leaves Untitled file around
- 5042394241 9.1.0697: [security]: heap-buffer-overflow in ins_typebuf (#37372)
- 532cc88604 9.1.0698: tests: "Untitled" file not removed when running Test_crash1_3 alone
- 11b3699252 9.1.0700: crash with 2byte encoding and glob2regpat()
- 0de85e322a 9.1.0701: crash with NFA regex engine when searching for composing chars
- 8c31b3eeac 9.1.0702: Patch 9.1.0700 broke CI
- 094d3dd3d4 9.1.0703: crash with 2byte encoding and glob2regpat()
- 767a52ba30 9.1.0705: Sorting of fuzzy filename completion is not stable
- 0eb708aa8a 9.1.0721: tests: test_mksession does not consider XDG_CONFIG_HOME
- fbac254511 9.1.0733: keyword completion does not work with fuzzy
- 70bb7999f7 9.1.0748: :keep* commmands are sometimes misidentified as :k
- 62822d750d 9.1.0877: tests: missing test for termdebug + decimal signs
- 94f7302e66 9.1.0893: No test that undofile format does not regress (#37193)
- c5dbee7910 9.1.0918: tiny Vim crashes with fuzzy buffer completion
- 9cc93b6def 9.1.0974: typo in change of commit v9.1.0873
- 44f70b4be1 9.1.1006: PmenuMatch completion highlight can be combined
- c17caca9b7 9.1.1008: tests: test for patch 9.1.1006 doesn't fail without the patch
- 20a7e74444 9.1.1043: [security]: segfault in win_line()
- 3029357520 9.1.1131: potential out-of-memory issue in search.c
- 0af6d6ff5e 9.1.1147: preview-window does not scroll correctly
- 90d59e6c8a 9.1.1178: not possible to generate completion candidates using fuzzy matching
- 17db70f3af 9.1.1181: Unnecessary STRLEN() calls in insexpand.c
- 10fde593f1 9.1.1182: No cmdline completion for 'completefuzzycollect'
- cd95ea5d48 9.1.1185: endless loop with completefuzzycollect and no match found
- 28f6199474 9.1.1197: process_next_cpt_value() uses wrong condition
- e39cdafed9 9.1.1201: 'completefuzzycollect' does not handle dictionary correctly
- e3990f8643 9.1.1202: Missing TabClosedPre autocommand
- 0d3ed7904a 9.1.1211: TabClosedPre is triggered just before the tab is being freed
- dc00b37965 9.1.1212: filetype: logrotate'd pacmanlogs are not recognized (#33412)
- 162edf7b30 9.1.1214: matchfuzzy() can be improved for camel case matches
- f9280cde0a 9.1.1217: tests: typos in test_matchfuzzy.vim
- 797195e0ea 9.1.1219: Strange error with wrong type for matchfuzzy() "camelcase"
- 750e1836af 9.1.1224: cannot :put while keeping indent (#33076)
- 0af780e8df 9.1.1228: completion: current position column wrong after got a match
- 2331c52aff 9.1.1243: diff mode is lacking for changes within lines
- b20fc95c1a 9.1.1245: need some more tests for curly braces evaluation
- e2e0f92f17 9.1.1246: coverity complains about some changes in v9.1.1243
- ae98d0a560 9.1.1247: fragile setup to get (preferred) keys from key_name_entry (#33102)
- e4172bcbdf 9.1.1249: tests: no test that 'listchars' "eol" doesn't affect "gM"
- 62da4e2949 9.1.1250: cannot set the maximum popup menu width
- cb31663663 9.1.1252: typos in code and docs related to 'diffopt' "inline:" (#33143)
- 36d143e707 9.1.1253: abort when closing window with attached quickfix data
- 675ee057e0 9.1.1255: missing test condition for 'pummaxwidth' setting
- 52b19e0124 9.1.1257: Mixing vim_strsize() with mb_ptr2cells() in pum_redraw()
- 89bc945554 9.1.1258: regexp: max \U and \%U value is limited by INT_MAX (#33156)
- 431c037709 9.1.1260: Hang when filtering buffer with NUL bytes (#33192)
- e4f37481ff 9.1.1261: No test for 'pummaxwidth' non-truncated items (#33193)
- b64c2d763e 9.1.1262: heap-buffer-overflow with narrow 'pummaxwidth' value
- 76cbe9c8f8 9.1.1263: string length wrong in get_last_inserted_save() (#33194)
- 8a40213eb3 9.1.1265: tests: no tests for typing normal char during completion (#33239)
- e5ddf7ae7d 9.1.1266: MS-Windows: type conversion warnings (#33264)
- 5cdfa3324f 9.1.1268: filetype: dax files are not recognized
- 8cf413e450 9.1.1269: completion: compl_shown_match is updated when starting keyword completion
- 4983fa45fc 9.1.1271: filetype: Power Query files are not recognized
- b01921cb55 9.1.1272: completion: in keyword completion Ctrl_P cannot go back after Ctrl_N
- e8785c2e94 9.1.1276: inline word diff treats multibyte chars as word char (#33323)
- 00eff4b196 9.1.1283: quickfix stack is limited to 10 items
- 1c723b2e6f 9.1.1284: not possible to configure pum truncation char
- 8af9f8ab5e 9.1.1286: filetype: help files not detected when 'iskeyword' includes ":" (#33377)
- 454abde1aa 9.1.1287: quickfix code can be further improved
- c73a827564 9.1.1288: Using wrong window in ll_resize_stack() (#33397)
- 51a967d58a 9.1.1289: tests: no test for matchparen plugin with WinScrolled event (#33411)
- 7c15987444 9.1.1290: tests: missing cleanup in test_filetype.vim (#33420)
- aba33c72f0 9.1.1291: too many strlen() calls in buffer.c
- f3b38b46eb 9.1.1292: statusline not correctly evaluated
- 6e5671b00d 9.1.1296: completion: incorrect truncation logic
- aa47c8efa9 9.1.1297: Ctrl-D scrolling can get stuck #33453
- fd76646a95 9.1.1298: define_function() is too long (#33457)
- 287955cfb4 9.1.1299: filetype: mbsyncrc files are not recognized
- 9272dc9597 9.1.1300: wrong detection of -inf (#33474)
- 7651c43252 9.1.1301: completion: cannot configure completion functions with 'complete'
- c249389adb 9.1.1302: Coverity warns about using uninitialized value
- d2d1b5e944 9.1.1303: missing out-of-memory check in linematch.c (#33487)
- 7da1639a14 9.1.1304: filetype: some man files are not recognized
- b0f97177d4 9.1.1305: completion menu active after switching windows/tabs (#33488)
- 54d6055098 9.1.1306: completion menu rendering can be improved
- e3e8dfe99c 9.1.1307: make syntax does not reliably detect different flavors (#33498)
- 1de276bbcd 9.1.1308: completion: cannot order matches by distance to cursor (#33491)
- afca5b564e 9.1.1309: tests: no test for 'pummaxwidth' with non-truncated "kind"
- f9f6dc4262 9.1.1310: completion: redundant check for preinsert effect (#33505)
- b6acf6112b 9.1.1311: completion: not possible to limit number of matches
- 95a255a548 9.1.1312: tests: Test_backupskip() fails when HOME is defined (#33504)
- 857ff5cae9 9.1.1313: compile warning about uninitialized value
- ccdb37b075 9.1.1314: max allowed string width too small
- b4c759716a 9.1.1315: completion: issue with fuzzy completion and 'completefuzzycollect' (#33520)
- e2e6c159d3 9.1.1317: noisy error when restoring folds from session fails
- 0251a25541 9.1.1318: tests: test_format fails
- c67398d31b 9.1.1319: Various typos in the code, issue with test_inst_complete.vim (#33527)
- 255bf6e5b1 9.1.1320: filetype: alsoft config files are not recognized
- 1b0dedb81c 9.1.1321: filetype: MS ixx and mpp files are not recognized
- dca8b3fede 9.1.1322: small delete register cannot paste multi-line correctly (#33531)
- 328640aed0 9.1.1323: b:undo_ftplugin not executed when re-using buffer
- da20804a6a 9.1.1325: tests: not checking error numbers properly
- d3cded796c 9.1.1326: invalid cursor position after 'tagfunc' (#33556)
- 9fafdcb99c 9.1.1327: filetype: nroff detection can be improved
- 98ec3fdf74 9.1.1328: too many strlen() calls in indent.c (#33563)
- f3c4fec43f 9.1.1329: cannot get information about command line completion
- 07d60e8f19 9.1.1331: Leaking memory with cmdcomplete()
- 63689deb45 9.1.1337: Undo corrupted with 'completeopt' "preinsert" when switching buffer (#33600)
- 3d126ec89f 9.1.1338: Calling expand() interferes with cmdcomplete_info()
- ac8ae1596c 9.1.1340: cannot complete :filetype arguments (#33602)
- fcabbc2283 9.1.1341: cannot define completion triggers
- 41179a6bc1 9.1.1342: Shebang filetype detection can be improved
- 4ddd31de14 9.1.1343: filetype: IPython files are not recognized
- 31e31273bc 9.1.1344: double free in f_complete_match() (after v9.1.1341)
- 766cd01ff2 9.1.1346: missing out-of-memory check in textformat.c (#33639)
- d75410b091 9.1.1349: CmdlineLeavePre may trigger twice
- c64cada12e 9.1.1350: tests: typo in Test_CmdlineLeavePre_cabbr()
- afcc4e95d5 9.1.1351: Return value of getcmdline() inconsistent in CmdlineLeavePre
- d107375f0c 9.1.1353: missing change from v9.1.1350
- 65a4c8f3ca 9.1.1357: Vim incorrectly escapes tags with "[" in a help buffer
- 074a6abd55 9.1.1359: filetype: GNU Radio config files are not recognized
- da3eeb4b32 9.1.1360: filetype: GNU Radio companion files are not recognized
- 627c648252 9.1.1361: [security]: possible use-after-free when closing a buffer (#33820)
- 73f2286f08 9.1.1370: CI Tests favor GTK2 over GTK3
- 6b955af875 9.1.1373: 'completeopt' checking logic can be simplified
- 15d31fe7a6 9.1.1374: completion: 'smartcase' not respected when filtering matches
- 05dab80d8d 9.1.1375: [security]: possible heap UAF with quickfix dummy buffer
- d95b0a5396 9.1.1376: quickfix dummy buffer may remain as dummy buffer
- 8605f5655b 9.1.1378: sign without text overwrites number option (#33942)
- ef5c5dc99b 9.1.1380: 'eventignorewin' only checked for current buffer
- 4b3a9ac413 9.1.1381: completion: cannot return to original text (#33966)
- e4c4d672b5 9.1.1383: completion: 'isexpand' option does not handle space char correct (#33999)
- e01f196e44 9.1.1384: still some problem with the new tutors filetype plugin
- d539a952da 9.1.1385: inefficient loop for 'nosmoothscroll' scrolling (#33992)
- 6b9665a507 9.1.1387: memory leak when buflist_new() fails to reuse curbuf
- f87b6230f1 9.1.1388: Scrolling one line too far with 'nosmoothscroll' page scrolling (#34023)
- f2aec4bc05 9.1.1389: completion: still some issue when 'isexpand' contains a space (#34026)
- 2fda267faf 9.1.1393: missing test for switching buffers and reusing curbuf
- ec5f054dc9 9.1.1395: search_stat not reset when pattern differs in case (#34058)
- 99384fcd9c 9.1.1396: 'grepformat' is a global option (#34060)
- dc6885dc24 9.1.1398: completion: trunc does not follow Pmenu highlighting attributes (#34084)
- 153a910897 9.1.1402: multi-byte mappings not properly stored in session file (#34131)
- f791ae82e5 9.1.1404: wrong link to Chapter 2 in new-tutor
- 071dcab68f 9.1.1405: tests: no test for mapping with special keys in session file (#34146)
- bd01bd6564 9.1.1407: Can't use getpos('v') in OptionSet when using setbufvar() (#34177)
- f2373a89d7 9.1.1408: not easily possible to complete from register content (#34198)
- eeff6ca8ff 9.1.1409: using f-flag in 'complete' conflicts with Neovim
- 2411f924a3 9.1.1410: out-of-bounds access with 'completefunc'
- c4e52d604c 9.1.1413: spurious CursorHold triggered in GUI on startup (#34195)
- bec1449cc5 9.1.1416: completion limits not respected for fuzzy completions
- 6c4ddf607f 9.1.1417: missing info about register completion in complete_info() (#34219)
- 2763d06100 9.1.1419: It is difficult to ignore all but some events (#34245)
- 0471cc7595 9.1.1420: tests: could need some more tests for shebang lines
- f1f106be3d 9.1.1421: tests: need a test for the new-style tutor.tutor (#34267)
- 9bfd0162dc 9.1.1422: scheduling of complete function can be improved
- 525c02a89f 9.1.1424: PMenu selection broken with multi-line selection and limits
- eb10852804 9.1.1426: completion: register contents not completed
- 97ca92f9dd 9.1.1428: completion: register completion needs cleanup
- f89381e05c 9.1.1431: Hit-Enter Prompt when loading session files
- 1c417b565e 9.1.1432: GTK GUI: Buffer menu does not handle unicode correctly (#34313)
- 6171ab7f4e 9.1.1433: Unnecessary :if when writing session
- 552983515f 9.1.1435: completion: various flaws in fuzzy completion (#34335)
- 2b79d9ba1a 9.1.1437: MS-Windows: internal compile error in uc_list() (#34379)
- d2dad30898 9.1.1439: Last diff folds not merged (#34380)
- bcfc22853a 9.1.1441: completion: code can be improved
- 78e2f62516 9.1.1442: tests: Test_diff_fold_redraw() is insufficient (#34407)
- 7a58cf4b96 9.1.1443: potential buffer underflow in insertchar() (#34408)
- 72f4bb9ae8 9.1.1444: Unused assignment in set_fuzzy_score()
- bcba067dc2 9.1.1445: negative matchfuzzy scores although there is a match (#34409)
- 2c80b05cbd 9.1.1446: filetype: cuda-gdb config files are not recognized
- ac772706cc 9.1.1447: completion: crash when backspacing with fuzzy completion
- 5075043823 9.1.1449: typo in pum_display()
- 612f8e7c9e 9.1.1450: Session has wrong arglist with :tcd and :arglocal (#34430)
- 1abcd9fe28 9.1.1452: completion: redundant check for completion flags (#34434)
- 3a2ac2300b 9.1.1454: tests: no test for pum at line break position (#34462)
- 3e984cf02b 9.1.1463: Integer overflow in getmarklist() after linewise operation (#34532)
- ae0981070e 9.1.1464: gv does not work in operator-pending mode (#34534)
- 5cf135f9a0 9.1.1466: filetype: not all lex files are recognized
- fb8dba413f 9.1.1467: too many strlen() calls (#34572)
- 487112d674 9.1.1468: filetype: bright(er)script files are not recognized
- 8ed6f00ab0 9.1.1471: completion: inconsistent ordering with CTRL-P (#34571)
- ee2fc31b36 9.1.1473: inconsistent range arg for :diffget/diffput (#34588)
- 534ec8d447 9.1.1475: completion: regression when "nearest" in 'completeopt' (#34607)
- 7f3249fa0d 9.1.1476: missing out-of-memory checks in cmdexpand.c (#34624)
- 7138cdaef8 9.1.1477: no easy way to deduplicate text
- 11f8e8eb63 9.1.1478: Unused assignment in ex_uniq()
- a0f3fdba58 9.1.1479: regression when displaying localized percentage position
- 3bf27b2c74 9.1.1481: gcc complains about uninitialized variable
- 0b91e9f83b 9.1.1482: scrolling with 'splitkeep' and line() (#34670)
- a565774bfc 9.1.1483: not possible to translation position in buffer (#37099)
- 504327020d 9.1.1484: tests: Turkish locale tests fails on Mac
- dd707246fd 9.1.1490: 'wildchar' does not work in search contexts
- ee717447dd 9.1.1491: missing out-of-memory checks in cmdexpand.c
- 9a44bbd574 9.1.1493: manually comparing positions on buffer
- 66f02ee1fe 9.1.1498: completion: 'complete' funcs behave different to 'omnifunc' (#34718)
- da42f99eb4 9.1.1501: filetype: flix files are not recognized
- 18cfbf8fb2 9.1.1502: filetype: quickbms files are not recognized
- 0a14ac3261 9.1.1503: filetype: haxe files are not recognized
- fc1be07d28 9.1.1504: filetype: numbat files are not recognized
- 6ebcb4a4d6 9.1.1505: not possible to return completion type for :ex command
- eef62e815d 9.1.1506: tests: missing cleanup in Test_search_cmdline_incsearch_highlight() (#34748)
- bb75610d99 9.1.1507: symlinks are resolved on :cd commands (#34758)
- c48dea20f5 9.1.1508: string manipulation can be improved in cmdexpand.c (#34755)
- 9c04eb02ad 9.1.1509: patch 9.1.1505 was not good
- 46727a7feb 9.1.1510: Search completion may use invalid memory
- 11e967d5af 9.1.1511: tests: two edit tests change v:testing from 1 to 0
- 85e6feedb0 9.1.1512: completion: can only complete from keyword characters (#34798)
- cf5506f0fd 9.1.1516: tests: no test that 'incsearch' is updated after search completion (#34808)
- 3177841bdf 9.1.1517: filetype: autopkgtest files are not recognized
- 6fd2a3040f 9.1.1518: getcompletiontype() may crash (#34819)
- 842ca1fd5c 9.1.1519: tests: Test_termdebug_decimal_breakpoints() may fail
- 27daeb0d68 9.1.1520: completion: search completion doesn't handle 'smartcase' well (#34840)
- c3c8d25293 9.1.1521: completion: pum does not reset scroll pos on reopen with 'noselect' (#34836)
- ef0ec7edac 9.1.1526: completion: search completion match may differ in case
- 5fe310c5e6 9.1.1528: completion: crash with getcompletion()
- db7c2acbc6 9.1.1532: termdebug: not enough ways to configure breakpoints (#34851)
- 00f8f94d5b 9.1.1535: the maximum search count uses hard-coded value 99 (#34873)
- d4074b812d 9.1.1538: tests: string options in gen_opt_test.vim not fully sorted (#34891)
- f487ae90cf 9.1.1539: completion: messages don't respect 'shm' setting (#34923)
- 7631302ad6 9.1.1544: :retab cannot be limited to indentation only (#34939)
- 4195b82ec9 9.1.1548: filetype: OpenFGA files are not recognized
- 8bccd07972 9.1.1549: filetype: pkl files are not recognized
- 8964ad45da 9.1.1550: defaults: 'showcmd' is not enabled in non-compatible mode on Unix
- 5cfdd4d8b9 9.1.1551: [security]: path traversal issue in zip.vim (#34951)
- 77c6cae25b 9.1.1552: [security]: path traversal issue in tar.vim
- 436ae1d23e 9.1.1554: crash when omni-completion opens command-line window
- fcec1610e7 9.1.1555: completion: repeated insertion of leader (#34962)
- e6ce067f02 9.1.1556: string handling in cmdexpand.c can be improved (#34966)
- 4f0ab9877b 9.1.1557: not possible to anchor specific lines in diff mode (#34967)
- be35864318 9.1.1559: tests: Test_popup_complete_info_01() fails when run alone
- 9d1333a385 9.1.1563: completion: ruler may disappear (#34977)
- b91613f42c 9.1.1567: crash when using inline diff mode (#35005)
- 0f9b5dd0b4 9.1.1570: Copilot suggested some improvements in cmdexpand.c (#35006)
- bbc368dfce 9.1.1571: CmdlineChanged triggered to often
- b6b793634a 9.1.1572: expanding $var does not escape whitespace for 'path' (#35010)
- 22d1fb8c01 9.1.1573: Memory leak when pressing Ctrl-D in cmdline mode
- 9377db2545 9.1.1576: cannot easily trigger wildcard expansion (#35022)
- f7af0cff35 9.1.1590: cannot perform autocompletion (#35141)
- e40199c6c6 9.1.1594: completion: search completion throws errors (#35198)
- 5aaee7d2af 9.1.1596: tests: Test_search_wildmenu_iminsert() depends on help file (#35210)
- 1f7ab25915 9.1.1598: filetype: waybar config file is not recognized
- 53ac2ad20a 9.1.1599: :bnext doesn't go to unlisted help buffers (#35216)
- 52c2519095 9.1.1600: using diff anchors with hidden buffers fails silently (#35218)
- 7230296bdb 9.1.1601: Patch v8.1.0425 was wrong
- 62f2b10db3 9.1.1602: filetype: requirements-*.txt files are not recognized
- b1e35cbd7b 9.1.1603: completion: cannot use autoloaded funcs in 'complete' F{func}
- 36361d6e4a 9.1.1604: completion: incsearch highlight might be lost (#35236)
- 798cb0f19a 9.1.1605: cannot specify scope for chdir() (#35239)
- e3913c0fc2 9.1.1606: filetype: a few more files are not recognized (#35268)
- e7dfbf1343 9.1.1607: :apple command detected as :append (#35237)
- fe42c81f2e 9.1.1608: No command-line completion for :unsilent {command}
- 5f23aaba00 9.1.1609: complete: Heap-buffer overflow with complete function
- 1969f685af 9.1.1610: completion: hang or E684 when 'tagfunc' calls complete() (#35243)
- 77500c5ad5 9.1.1611: possible undefined behaviour in mb_decompose() (#35275)
- 1eca030fb2 9.1.1612: Ctrl-G/Ctrl-T do not ignore the end search delimiter
- 9e8d551b1e 9.1.1613: tests: test_search leaves a few swapfiles behind
- f79430e2ce 9.1.1615: diff format erroneously detected (#35276)
- f0d8341984 9.1.1618: completion: incorrect selected index returned from complete_info() (#35284)
- dae79f2b67 9.1.1619: Incorrect E535 error message (#35285)
- 47e3aecb78 9.1.1620: filetype: composer.lock and symfony.lock files not recognized (#35291)
- dd306bd48a 9.1.1621: flicker in popup menu during cmdline autocompletion
- 9d85f086d9 9.1.1622: Patch v9.1.1432 causes performance regressions (#35288)
- 013af17ed9 9.1.1623: Buffer menu does not handle unicode names correctly (#35353)
- 50ceac4054 9.1.1625: Autocompletion slow with include- and tag-completion (#35318)
- 35be59cc7b 9.1.1626: cindent: does not handle compound literals (#35319)
- 869000e7ce 9.1.1627: fuzzy matching can be improved
- 2619a749a5 9.1.1628: fuzzy.c has a few issues
- e38e65b86c 9.1.1630: tests: fuzzy bufname completion test doesn't match successfully
- 7afcfb6c9a 9.1.1632: memory leak in fuzzy.c
- 8d154e5927 9.1.1633: Search pattern shown incorrectly with negative offset (#35337)
- 4019d3050d 9.1.1638: completion: not possible to delay the autcompletion
- 577f9fa1be 9.1.1640: Unicode has deprecated some code-points (#35358)
- 37119ad0d2 9.1.1645: fuzzy.c can be further improved (#35371)
- 43bf045005 9.1.1646: MS-Windows: completion cannot handle implicit drive letters
- ba25f3e4d4 9.1.1647: filetype: Cangjie files are not recognized
- 3e57c5216f 9.1.1648: MS-Windows: some style issues with patch v9.1.1646
- 25bc41847e 9.1.1649: attrs allocation and fuzzy growarray could leak (#35383)
- 6ef996a082 9.1.1657: Autocompletion adds delay
- b9699d5701 9.1.1665: Outdated comment in eval.c (#35436)
- 639f9f4cda 9.1.1667: Another outdated comment in eval.c (#35438)
- 963ead29d9 9.1.1670: completion: autocomplete breaks second completion
- 810a234978 9.1.1672: completion: cannot add timeouts for 'cpt' sources (#35447)
- 3b5337ab6c 9.1.1676: completion: long line shown twice
- 29f30ad91c 9.1.1679: unclear what key causes CmdlineLeave autocommand (#35677)
- 523371b044 9.1.1681: tests: no test for actually moving cursor with 'acl' (#35452)
- 821bfc02fb 9.1.1685: Missing changes from PR 18068 (#35482)
- dab31a3637 9.1.1687: filetype: autoconf filetype not always correct
- 4263ec21c2 9.1.1688: potential buffer overrun in bufwrite.c (#35497)
- c741927883 9.1.1689: CmdlineChanged not triggered by <Del> (#35496)
- b116ed7b12 9.1.1690: Missing recursion guard in dos/unix_expandpath() (#35499)
- 8a1afac653 9.1.1693: tests: test_filetype fails in shadow dir
- 117b129378 9.1.1694: filetype: Buck eXtension Lang files are not recognized (#35504)
- 3586e047e6 9.1.1695: Need more Vim script specific tests (#35500)
- 61712cbc3a 9.1.1697: tests: no test for aclocal.m4
- 2ac00f1350 9.1.1698: Some error numbers are not documented (#35522)
- 24020ef2dd 9.1.1700: Multiline ignorecase specific pattern does not match with 'ignorecase' (#35520)
- c961361406 9.1.1701: tests: failure on CI with GUI and ASAN in test_edit.res
- a3b1159949 9.1.1702: tests: test_edit still fails on CI
- c333d64663 9.1.1709: filetype: kyaml files are not recognized
- 68a2e0ef78 9.1.1713: filetype: fvwm2m4 files are no longer detected
- 1359578abb 9.1.1714: completion: wildmode=longest:full selects wrong item
- 8fc1db043a 9.1.1717: filetype: AWS cli alias file is not recognized #35581
- 06df337617 9.1.1718: filetype: kubectl config file is not recognized #35583
- c4c69c5012 9.1.1724: Compiler warning about ununitialized variable in ex_docmd. (#35595)
- 17da1ad8f4 9.1.1730: filetype: vivado journal/log files are not recognized (#35613)
- 0bf4b7898c 9.1.1731: Not using const qualifier for opchars (#35634)
- 0bafbe872b 9.1.1732: filetype: .inc file detection can be improved (#35635)
- 51af2797c2 9.1.1734: Memory leak when allocating match fails (#35646)
- f2bda1effc 9.1.1737: Patch v9.1.1714 introduce a regression for wildmenu
- b51eba9273 9.1.1738: cmdline-autocompletion breaks history navigation
- d784ed7013 9.1.1739: Matches may be listed twice with wildmode=longest,list
- 18f24b85c3 9.1.1740: Memory leak with wildmode=longest,full and wildoptions=pum
- eb19206e03 9.1.1742: complete: preinsert does not work well with 'autocomplete' (#35692)
- 223f9622df 9.1.1744: tests: Test_skip_wildtrigger_hist_navigation() may fail
- f6ed46c2a7 9.1.1747: completion: redo (.) broken with preinsert and autocompletion (#35698)
- 5a7586a109 9.1.1750: completion: preinserted text highlighed using ComplMatchIns
- e084a99040 9.1.1751: potential buffer-overflow in find_pattern_in_path() (#35705)
- aa33ea86e1 9.1.1752: tests: need another test for v9.1.1750 behaviour
- cf9b7a37cc 9.1.1753: defaults: 'diffopt' option value can be improved (#35727)
- ae588c183f 9.1.1754: :helptags doesn't skip examples with syntax
- 7b8b9d270f 9.1.1758: Diff mode crashes when adding text property in autocommand (#35760)
- 61d7d983d6 9.1.1761: 'ruler' is set in defaults.vim
- 051b8b88c8 9.1.1762: completion: selected item not cleared on <BS> with 'ac'
- 114336ac1d 9.1.1763: filetype: kitty config files are not recognized
- e7ff132708 9.1.1764: filetype: CODEOWNERS file not recognized (#35789)
- 95267b664c 9.1.1769: completion: "preinsert" insert wrong word with 'smartcase' and 'autocomplete' (#35834)
- 0763a85f43 9.1.1771: complete: some redraw issues with 'autocomplete'
- e2166661d4 9.1.1772: completion: inconsistent selection of first item with 'autocomplete' (#35835)
- c9f6267402 9.1.1773: Crash in BufLeave after BufUnload closes other windows (#35830)
- 39a21d749d 9.1.1774: cannot calculate sha256 of a Blob
- e3f15d5424 9.1.1775: filetype: Mamba configuration files are not recognized #35829
- f91d416403 9.1.1776: completion: "adding" expansion doesn't work with cfc=keyword (#35850)
- d3bd1fba6a 9.1.1777: Mouse click to open fold doesn't work with utf-8 "foldclose" chars (#35851)
- a5955e5cc5 9.1.1778: sha256() treats empty blob and null blob differently
- a70997442e 9.1.1779: completion: 'autocomplete' cannot be enabled per buffer (#35853)
- e887602eb5 9.1.1780: mbyte contains overlapping list of utf_classes table (#35869)
- 0f01cc85bd 9.1.1781: some functions could be defined static
- 7cdf3bb68a 9.1.1783: ins_compl_leader() too far away from ins_compl_leader_len()
- 0c23b863f4 9.1.1787: filetype: not all Sway config files are recognized
- d9fa495608 9.1.1790: completion: Enter does not insert match with "noinsert" (#35917)
- 7b9c063d11 9.1.1797: completion: autocompletion can be improved
- 2aab242a01 9.1.1798: Wrong display with 'sms' and long wrapped virt text at EOL (#35930)
- 35fc4fda99 9.1.1799: completion: crash with autcompletion (#35963)
- f30a33858f 9.1.1800: completion: strange behaviour with 'ac' completeopt=longest,preinsert
- 0fa0717d4e 9.1.1802: 'nowrap' in a modeline may hide malicious code (#35946)
- ff564237d2 9.1.1807: :set doesn't clear local insecure flag like :setlocal does
- 42f1864b62 9.1.1808: Option insecure flags not copied when splitting window
- 756e55dc49 9.1.1810: completion: "longest" doesn't work for manual completion with 'ac'
- c881bc537e 9.1.1817: popup: there are some position logic bugs (#36075)
- df0b9e7a5d 9.1.1818: possible crash when calculating topline in diff.c
- b6b80824cc 9.1.1819: Cannot configure the inner foldlevel indicator (#36010)
- 8151fc59cf 9.1.1820: completion: some issues with 'acl' (#36007)
- 2c76a50e20 9.1.1821: filetype: Not all PKL files are recognized (#36008)
- 0fca343d64 9.1.1823: diff: w_topline may be invalidated (#36018)
- 94bd212dbc 9.1.1824: tests: no test for displaying 'foldcolumn' with Unicode "foldinner" (#36019)
- f8b50bf3b0 9.1.1825: completion: flicker when LSP server is slow (#36020)
- fbaf48cb23 9.1.1827: completion: v9.1.1797 broke Ctrl-Y behaviour (#36040)
- a4a8838178 9.1.1829: filetype: KerML and SysML files are not recognized (#36042)
- 7923e847ca 9.1.1831: stray vseps in right-most 'winfixwidth' window
- d9153d620a 9.1.1833: completion: fuzzy candidates are not sorted (#36062)
- e47529ab56 9.1.1834: MS-Windows: not possible to highlight the title bar
- ba47cb7eda 9.1.1836: 'culopt' "screenline" not redrawn with line("w0") and :retab
- 28355050a8 9.1.1839: Window may have wrong height if resized from another tabpage (#36093)
- b1c41a332d 9.1.1843: tests: Test_search_stat_option() may fail on slow systems (#36110)
- 92b834fc7a 9.1.1849: CTRL-F and CTRL-B don't work in more prompt
- 83c7193c11 9.1.1850: completion: not triggered after i_Ctrl-W/i_Ctrl-U (#36156)
- 93d1473732 9.1.1853: Ctrl-F and Ctrl-B at more prompt not working with key protocol
- d78215f6a2 9.1.1854: unnecessary code in optionstr.c (#36170)
- aeeadddac4 9.1.1858: v:register not reset after Visual mode command (#36215)
- a08aa77e40 9.1.1859: completion: whitespace not cleared with 'ai' (#36218)
- 68a54bfda6 9.1.1868: v:register is wrong in v_: command (#36238)
- 737dd83d1f 9.1.1869: tests: test failures with Python 3.14 and test_python3 (#36310)
- fb6fd17f26 9.1.1870: :Tutor may not work as expected (#36343)
- 5db3544991 9.1.1871: Wrong 'showcmd' in the cmdwin (#36320)
- 2407833ba1 9.1.1872: Cmdline history not updated when mapping <Up> and <CR> (#36334)
- 070f4d3da0 9.1.1875: username parsing bug in netrw plugin (#36348)
- 155efabb15 9.1.1876: pre-inserted text not exposed in complete_info() (#36342)
- f0cf488698 9.1.1877: cindent: wrong indentation after an array declaration (#36340)
- 35d04394aa 9.1.1878: filetype: Soy files are not recognized (#36346)
- 21ea0537e0 9.1.1880: Allocation error with complete_info() (#36360)
- c2781d3db3 9.1.1883: Wrong display with 'smoothscroll' with -diff (#36372)
- 3fb56ff8af 9.1.1885: Wrong restored cursor pos when re-entering buffer after changes
- 3c14646896 9.1.1886: filetype: Android aconfig files are not recognized (#36374)
- c75f547839 9.1.1888: Wrong display with cpo+=$, matchparen and wrapped line (#36385)
- 1fddd74da7 9.1.1889: filetype: not all AppleScript files are recognized (#36411)
- d4106bade7 9.1.1890: %P in 'statusline' doesn't behave as documented
- b92b95e2c2 9.1.1891: g<End> does not move to last non-blank in visual mode (#36354)
- 003b429a86 9.1.1892: Not possible to know once Vim is done with sourcing vimrc (#36429)
- d847548a1c 9.1.1893: ICCF charity will dissolve (#36427)
- 97cb0d5571 9.1.1906: filetype: not all Ruby files are recognized (#36526)
- 02760a30ce 9.1.1908: tests: test_crash.vim times out in CI ASAN builds
- 756043760b 9.1.1909: filetype: .mom files recognized as nroff files (#36543)
- 16e9c21d8d 9.1.1913: Error message with :unlet! and non-existing dictionary item (#36549)
- dc682bcbcf 9.1.1915: :breaklist accepts unprocessed arguments. (#36561)
- 8d72d1ceb4 9.1.1916: WinEnter autocommand confuses Vim when closing tabpage (#36567)
- ef0c522077 9.1.1918: completion: crash with fuzzy completion (#36578)
- a8b9660ca3 9.1.1920: tests: not enough testing for wildtrigger() pum redrawing (#36642)
- 1eec08d1a2 9.1.1922: Wrong virtcol('$') with virtual text at EOL (#36643)
- 30a09bdd7e 9.1.1923: wrong error when assigning to read-only register (#36644)
- 4dc337cda8 9.1.1924: 'commentstring' requires +folding feature (#36645)
- a212fc7745 9.1.1929: completion: spell completion wrong with fuzzy (#36709)
- 812186e2dc 9.1.1930: completion: 'completefuzzycollect' is too obscure
- 19d5b28977 9.1.1931: completion: wrong item selected with fuzzy and noinsert (#36725)
- 2c6469aca4 9.1.1933: completion: complete_match() is not useful (#36726)
- da6edcb91b 9.1.1934: filetype: not all starlark files are recognized (#36743)
- 8310f20526 9.1.1935: filetype: not all Erlang files are recognized
- 3f8e51cee7 9.1.1936: filetype: Erlang lexical files are not recognized
- 3c60598239 9.1.1937: tests: Test_matchfuzzy_initialized() fails
- c9f63d13b6 9.1.1938: tests: excessive wait in Test_matchfuzzy_initialized
- d13e8f1a34 9.1.1939: tests: test_matchfuzzy() leaves swapfiles behind
- 7452a8a568 9.1.1941: tests: Test_execute_register() leaves swapfile behind
- b64e36cef0 9.1.1943: Memory leak with :breakadd expr
- e8fdc7ef9a 9.1.1944: getwininfo() does not return if statusline is visible (#36828)
- c3c8a18af7 9.1.1945: tests: Test_getbufwintabinfo() leaves swapfiles behind
- ac3e2ca675 9.1.1947: [security]: Windows: Vim may execute commands from current directory
- bfe007a187 9.1.1948: Windows: Vim adds current directory to search path
- 69f4fd84aa 9.1.1949: :stag does not use 'swichtbuf' option
- 132567c71f 9.1.1950: tests: Test_tagjump.vim leaves swapfiles behind
- c758423cf2 9.1.1951: tests: Test_windows_external_cmd_in_cwd() only run in huge builds
- ffdc632ea1 9.1.1952: tests: need better tests for tf files
- 4450a45466 9.1.1954: Setting a byte in a blob, accepts values outside 0-255
- d6be2b3312 9.1.1957: filetype: bpftrace files are not recognized (#36838)
- 647f11e6ae 9.1.1958: Wrong display with sign_unplace() and setline() in CursorMoved (#36851)
- ff90032aa5 9.1.1961: :0tab behaves like :tab for :stag when 'swb' contains "newtab"
- 2f9f77cd72 9.1.1962: filetype: Erlang application resource files are not recognized (#36868)
- 3bc9a5b5d2 9.1.1963: diff: missing diff size limit for xdiff (#36877)
- 5235f3663f 9.1.1964: Wrong display when using setline() at hit-enter prompt (#36878)
- 747cf30c37 9.1.1965: q can accidentally start recording at more prompt (#36879)
- 08d7744e13 9.1.1967: if_python: 64bit numbers truncated (#37245)
- 18642a63be 9.1.1969: Wrong cursor position after formatting with long 'formatprg' (#36918)
- 2b02dfa020 9.1.1970: visual end column returns wrong value after block edit (#36923)
- e9da68effe 9.1.1971: Crash when buffer gets deleted inside charconvert during save
- 384a039db7 9.1.1974: tests: missing cleanup in Test_bwipe_during_save()
- f494ce77f1 9.1.1978: tests: Test_smoothscroll_number() may fail (#36965)
- 3985257496 9.1.1979: :helpclose allows range and counts (#36966)
- f5e39560ff 9.1.1980: filetype: N-Quads files are not recognized (#36967)
- 7a866e6b20 9.1.1981: tests: test suite may stop on error in gen_opt_test.vim (#36988)
- 6061169183 9.1.1983: Vim9: class_name definition can be improved
- 4cce77e547 9.1.1984: terminal OSC52 support can be improved (#37543)
- 544bde3acc 9.1.1987: assert_equal() prepends unnecessary ':' when typed
- 3264dfee75 9.1.1989: Vim intro screen shows register message
- c172fd9f46 9.1.1991: :setlocal changes effective global 'omnifunc' (#37013)
- 2860d1e018 9.1.1998: tests: not enough tests for :setlocal omnifunc (#37023)
- f89558848b 9.1.2001: cursor may end up in wrong window after :botright copen (#37056)
- 92910a8ab8 9.1.2007: filetype: bpftrace hashbang lines are not recognized
- 471be48d56 9.1.2008: filetype: hylo files are not recognized
- 49b1a6540f 9.1.2009: tests: "Xm4" test directory may not be deleted
- 2a2c366a3e 9.1.2016: cindent wrong indentation after do-while loop (#37087)
- d7b882697b 9.1.2017: getregionpos() depends on 'linebreak' setting (#37088)
- e53accf8ec 9.1.2019: inconsistent cursor encoding past EOL with ve=all
- 7b5276b382 9.1.2020: tests: test_virtualedit.vim leaves swapfiles behind (#37115)
- c11153b320 9.1.2021: filetype: fluent files are not recognized (#37117)
- 6fa2ebec6b 9.1.2023: [security]: Use-after-free in alist_add() with nasty autocmd
- 1e44a001ec 9.1.2024: 'fsync' option cannot be set per buffer (#37129)
- f4eabcca4f 9.1.2026: tests: patch 9.1.2019 not tested properly
- 7f1d7271d5 9.1.2027: filetype: bicep filetype used for 2 bicep file types (#37130)
- 444e1ffe3e 9.1.2028: [security]: Buffer-overflow with incomplete multi-byte chars (#37133)
- e916f03277 9.1.2030: inefficient use of ga_concat() (#37151)
- 8e80e54478 9.1.2034: filetype: Fennel fnml files are not recognized (#37176)
- bd10f781b8 9.1.2035: filetype: filetype: Fennel fnlm files are not recognized (#37178)
- acc3554439 9.1.2037: undo: cursor position not correctly restored (#37195)
- 01177619bc 9.1.2038: tests: test_marks.vim leaves swapfiles behind
- 6deb1c1bf3 9.1.2040: :tlunmenu incorrectly accepts a range (#37206)
- b7efbbec51 9.1.2041: tests: test_menu.vim leaves swapfiles behind
- ca731d2e55 9.1.2042: filetype: systemd quadlet files are not recognized (#37208)
- 067b5743f5 9.1.2043: filetype: kos files are not reconized
- 6c3502d85a 9.1.2050: tests: Test_cd_completion may fail
- 0dfac68928 9.1.2051: tests: fix Test_cd_completion fails in Appveyor (#37266)
- 97bfc0c99b 9.1.2055: Division by zero in :file after failing to wipe buffer (#37268)
- 661455cc47 9.1.2056: tests: inconsistent indent and line breaking in Test_maparg() (#37269)
- 5f871007d7 9.1.2058: b_locked_split is not checked for :sbuffer
- b075656279 9.1.2059: filetype: Nickel files are not recognized
- a6df0db11f 9.1.2060: filetype: Rasi include files are not recognized
- 0bbbe236aa 9.1.2061: filetype: Koka files are not recognized
- a84bf386d2 9.1.2062: filetype: djot files are not recognized
- 885426f1bf 9.1.2064: completion: segfault during file name completion (#37316)
- 681d006549 9.1.2066: :wqall! doesn't close a terminal like :qall! does (#37314)
- e002e4d7fc 9.1.2068: :bd/bw may try to switch to a closing buffer
- aa959f7b85 9.1.2069: Search wrap indicator not shown w/out 'shm-S' (#37332)
- 930817f100 9.1.2070: completion: autocomplete breaks with large dict (#37331)
- 562bc0b371 9.1.2071: tests: test_ins_complete.vim leaves swapfiles behind
- 2ae56fbb39 9.1.2075: tests: wrong change to test_ins_complete.vim
- e790c87cd8 9.1.2078: A few more typos in various files (#37368)
- aed1f8c377 9.1.2079: use-after-free with 'qftf' wiping buffer (#37364)
- 40fb2818b6 9.1.2085: Use-after-free in winframe_remove()
- ba1d50fdc3 9.1.2086: Memory leak when skipping invalid literal dict
- eb5a7cc0dd 9.1.2087: Crash when using :tabonly in BufUnload
- 03494ad048 9.1.2088: Redundant NULL checks in find_pattern_in_path() (#37432)
- 960cba7b3b 9.1.2090: Last buffer not freed with EXITFREE
- 30bcb25341 9.1.2093: heap-use-after-free when wiping buffer in TabClosedPre
- c52f6eb49a 9.1.2094: filetype: tiger files are not recognized
- b4e602dde5 9.1.2095: :wqall! doesn't quit when using :quit in BufWritePost
- 7470e63260 9.1.2097: TabClosedPre may be triggered twice for the same tab page
- 64057d266c 9.1.2098: Crash with 'wildmenu' when typing Ctrl-Y after Ctrl-A (#37466)
- 87276db7f9 9.1.2100: filetype: tiltfiles are not recognized (#37477)
- b3242af187 9.1.2102: foldtext not reversed and cut off in 'rightleft' mode
- cd624f24f6 9.1.2103: tests: test_fold.vim leaves swapfiles behind
- e0b724de09 9.1.2105: tests: not enough tests for using plain_vgetc() (#37521)
- f10a1dcf4d 9.1.2107: :normal may change cmdline history (#37523)
- 5a354db7fa 9.1.2108: tests: Test_foldtextresult_rightleft() does not restore 'columns'
- 798ee64287 9.1.2109: filetype: NetLinx fires are not recognized
- d982c00846 9.1.2110: filetype: skhd files are not recognized
- a8a097d178 9.1.2112: long statusline may crash if using singlebyte encoding (#37605)
- ebfbe4db49 9.1.2116: crash when using 'tagfunc' (#37627)
- 47ce93ad6d 9.1.2118: 'cursorline' missing after :diffput to empty buf (#37628)
- 5e1a3df5ae 9.1.2119: tests: Test_language_cmd fails on OpenBSD (#37503)
- 270c7b46af 9.1.2123: using NOT with a float returns a float in legacy script (#37639)
- fede568692 9.1.2128: Heap use after free in buf_check_timestamp()
- bdd886622d 9.1.2130: Page scrolling in Insert mode beeps (#37710)
- db133879b2 9.1.2132: [security]: buffer-overflow in 'helpfile' option handling (#37735)
- 15061d322d 9.1.2133: Another case of buffer overflow with 'helpfile' (#37746)
- 6dd0a7d60a 9.1.2135: tests: tar plugin does not consider 'nowrapscan' (#37752)
- e704529909 9.1.2136: :tab sbuffer may close old tabpage (#37765)
- ed8fbd2e29 9.1.2138: win_execute() and 'autochdir' can corrupt buffer name (#37767)
- 39d8a9c353 9.1.2146: filetype: cel files are not recognized (#37834)
- ff142a7a74 9.1.2147: Compile warning in strings.c (#37842)
- 8605b0b7a9 9.1.{1755,1759} (#35787)
- 7d8653575f 9.2.0004: Changing hidden prompt buffer cancels :startinsert/:stopinsert (#37881)
- b59eba3ada 9.2.0007: cindent: recognizing labels within commented lines
- 77d396caf4 9.2.0009: tests: test_cindent are not ordered
- ac84a3f3b6 9.2.0020: Wrong shortened buffer after :cd with duplicate slashes (#37955)
- 134782b99e 9.2.0023: fix integer overflow in ml_append_int() for long lines
- fadf5fc8db 9.2.0024: Reading files with very long lines crashes with a segfault
- e98a6979ee 9.2.0025: filetype: cshtml incorrectly recognized (#37957)
- c78e276881 9.2.0027: filetype: yara files are not recognized
- 785ac9f228 9.2.0028: matchadd() conceal may use unrelated syntax cchar (#37974)
- 08b8fe5ab3 9.2.0030: completion: non-prefix matches shown when leader is NULL
- b3a3028fd9 9.2.0031: Inefficient use of ga_concat()
- 6e8a1a8988 9.2.0032: completion: hang with line completion and fuzzy
- 93a8acb1b8 9.2.0033: filetype: sh filetype used for env files
- 30d9970cd7 9.2.0036: completion: thesaurus completion incorrect with "longest/fuzzy" (#37996)
- 3f4ef487da 9.2.0040: completion: preinsert wrong with register completion (#38003)
- b775c722dd 9.2.0041: Not always using GA_CONCAT_LITERAL
- 327dcb8970 9.2.0046: filetype: neon files are not recoginzed (#38049)
- a89b9750ee 9.2.0050: WM_SETFOCUS not handled immediately
- 1fe1b2525f 9.2.0054: eval_addblob() is inefficient (#38067)
- 9288357d59 9.2.0055: memory leak in ExpandFromContext() (#38066)
- 7852993f49 9.2.0061: Not possible to know when a session will be loaded (#38071)
- cd4c7850d0 9.2.0070: tests: various tests leave swapfiles around
- 95ddabdb2b 9.2.0074: [security]: Crash with overlong emacs tag file
- e85fc92a6b 9.2.0075: [security]: Buffer underflow with emacs tag file
- 7e8bdd348c 9.2.0077: [security]: Crash when recovering a corrupted swap file (#38104)
- a416494e64 9.2.0078: [security]: stack-buffer-overflow in build_stl_str_hl() (#38102)
- 563f9ef799 9.2.0081: Failed "z=" does not reset 'nospell' setting (#38109)
- 3e81072293 9.2.0088: cannot display tabs for indentation
- 518aa46158 9.2.0090: "leadtab" behavior inconsistent on line with only TABs
- 0cfeedb088 9.2.0091: missing out-of-memory checks in quickfix.c
- 0676503ab5 9.2.0097: Memory leak in qf_push_dir()
- 6ddcc84a6c 9.2.0102: 'listchars' "leadtab" not used in :list (#38142)
- a22c699ecb 9.2.0106: memory leak in expand_findfunc()
- 843bc1aa8d 9.2.0108: byteidx_common() and f_utf16idx() call ptr2len() twice (#38159)
- f1e65bde02 9.2.0120: tests: test_normal fails
- 9a9b9c581c 9.2.0121: patch memory leak in list_extend_func() in list.c (#38205)
- f21c56da84 9.2.0125: tests: test_textformat.vim leaves swapfiles behind
- 9734a6ce47 9.2.0130: missing range flags for the :tab command (#38216)
- c1dcb8dac2 9.2.0131: potential buffer overflow in regdump() (#38217)
- 3a7ade847f 9.2.0132: tests: Test_recover_corrupted_swap_file1 fails on be systems (#38238)
- e5667b9c15 9.2.0137: [security]: crash with composing char in collection range (#38261)
- f847aa6208 9.2.0140: file reading performance can be improved (#38266)
- 6dd634b025 9.2.0143: termdebug: no support for thread and condition in :Break
- 878c9739e1 9.2.0147: blob: concatenation can be improved (#38276)
- d3bca3b7fa 9.2.0152: concatenating strings is slow (#38286)
- f58d24040a 9.2.0155: filetype: ObjectScript are not recognized (#38288)
- 80684a418b 9.2.0159: Crash when reading quickfix line
- 1aaa8e8e3a 9.2.0162: tests: unnecessary CheckRunVimInTerminal in test_quickfix
- 0082cd3134 9.2.0165: tests: perleval fails in the sandbox
- 9ab6c607cc 9.2.0180: possible crash with winminheight=0 (#38335)
- 33b357d01f 9.2.0182: autocmds may leave windows with w_locked set #38332
- e2c3106b85 9.2.0201: filetype: Wireguard config files not recognized
- f577e05522 9.2.0202: [security]: command injection via newline in glob() (#38385)
- a18d51a958 9.2.0204: filetype: cps files are not recognized
- d36e7787c1 9.2.0209: freeze during wildmenu completion (#38386)
- 0655a359ae 9.2.0217: filetype: cto files are not recognized (#38400)
- a969e92249 9.2.0219: call stack can be corrupted (#38406)
- 11b9ec38d2 9.2.0222: "zb" scrolls incorrectly with cursor on fold (#38423)
- e51f217be7 9.2.0223: Option handling for key:value suboptions is limited (#38426)
- fae782557c 9.2.0226: No 'incsearch' highlighting support for :uniq (#38425)
- 416e542992 9.2.0233: Compiler warning in strings.c (#38450)
- 1de1c08210 9.2.0235: filetype: wks files are not recognized (#38451)
- 6dfcb2b784 9.2.0237: filetype: ObjectScript routines are not recognized (#38479)
- f806c77391 9.2.0239: signcolumn may cause flicker (#38477)
- 5a7df03b42 9.2.0265: unnecessary restrictions for defining dictionary function names (#38524)
- ba89354a45 9.2.0270: test: trailing spaces used in tests
- 965f54cf50 96dab9c: check.vim: Further improve po message checks
- 5a83f23430 98a0cbf: patch 9.1.1971: crash with invalid positional argument 0 in printf() (#36919)
- 95b6215f0a c858382: Problem:  Commit 6f585d breaks CI
- 1244fe157f ecf90b9: CI: make dependabot monitor `.github/actions` directory (#38383)
- 96e9041a78 partial:8.1.1939: code for handling v: variables in generic eval file (#35968)
- 2a267d1cbf partial:8.2.1328: no space allowed before comma in list
- e31cfc5eac partial:8.2.2400: Vim9: compiled functions are not profiled
- df65f87fd7 partial:8.2.3149: some plugins have a problem with the error check
- 00bec1fd90 partial:8f7256a (#34368)
- 50efe61c3c partial:9.0.0323: using common name in tests leads to flaky tests
- 5671b61327 partial:9.0.0877: using freed memory with :comclear while listing commands
- 92596a37e7 partial:9.0.0907: restoring window after WinScrolled may fail
- 62de643b89 partial:9.0.1570: some tests are slow
- dff515205c partial:9.1.0613: tests: termdebug test may fail and leave file around
- 3f62fe4bd8 partial:9.1.0973: too many strlen() calls in fileio.c
- 42640c62d1 partial:9.1.1004: tests: a few termdebug tests are flaky
- dfd3ac6f48 partial:9.1.1110: Vim tests are slow and flaky
- 5c4d9261a4 partial:9.1.1110: Vim tests are slow and flaky
- ab5c15610f partial:9.1.1371: style: indentation and brace issues in insexpand.c
- a16064ff29 partial:9.1.1639: completion: popup may be misplaced
- cbec4603a0 partial:9.1.1668: items() does not work for Blobs
- 4edeaaa6e2 partial:9.1.1708: tests: various tests can be improved (#35548)
- 7468db5187 partial:9.1.1847: No cmdline completion for :echoconsole and :echowindow (#36157)
- c70e8ef9b7 partial:9.1.1887: string handling in strings.c can be improved
- 5370b7a2e0 partial:9.1.1955: sort() does not handle large numbers correctly (#36840)
- 147190d8e7 partial:9.1.2044: Inefficient use of ga_concat() (#37209)
- 72eb9fe87c partial:9.1.2137: test: Update tests for OpenBSD (#37766)
- 18c5f06c9f partial:9.2.0068: Inefficient use of list_append_string() (#38083)
- b23d00ce99 partial:9.2.0096: has() function is slow due to linear feature scan (#38135)
- 29fa072b34 partial:9.2.0126: String handling can be improved (#38214)
- 4c48f19e51 partial:9.2.0193: using copy_option_part() can be improved (#38369)
2026-03-29 18:16:17 +02:00
..
2024-01-03 02:09:29 +01:00
2024-01-03 02:09:29 +01:00
2016-10-28 14:33:13 +02:00
2017-03-15 15:01:06 +01:00
2017-05-01 22:13:23 +02:00
2017-11-07 23:54:31 +01:00
2018-06-11 00:46:49 +02:00
2018-12-31 01:06:17 +01:00
2019-09-15 17:28:42 -07:00
2021-07-02 17:54:29 +02:00
2021-11-30 18:20:42 +01:00
2022-04-15 13:38:44 +02:00
2022-09-30 17:15:13 +02:00
2023-04-07 13:26:29 +02:00
2024-05-16 14:34:32 +02:00
2025-03-26 14:48:09 +01:00
2026-03-29 18:16:17 +02:00
2016-11-15 05:01:25 +01:00
2025-12-08 01:43:02 -05:00
2023-11-12 21:26:39 +01:00