<feed xmlns='http://www.w3.org/2005/Atom'>
<title>neovim/test/functional/api/vim_spec.lua, branch master</title>
<subtitle>Vim-fork focused on extensibility and usability</subtitle>
<id>http://git.waynecole.info/neovim/atom?h=master</id>
<link rel='self' href='http://git.waynecole.info/neovim/atom?h=master'/>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/neovim/'/>
<updated>2026-04-24T17:20:25Z</updated>
<entry>
<title>fix(path): normalize path slashes on Windows #37729</title>
<updated>2026-04-24T17:20:25Z</updated>
<author>
<name>tao</name>
<email>2471314@gmail.com</email>
</author>
<published>2026-04-24T17:20:25Z</published>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/neovim/commit/?id=f130922744657b731c24a842a85fd8a9f8058073'/>
<id>urn:sha1:f130922744657b731c24a842a85fd8a9f8058073</id>
<content type='text'>
Problem:
On Windows, path separators may become inconsistent for various reasons,
which makes normalization quite painful.

Solution:
Normalize paths to `/` at the entry boundaries and always use it
internally, converting back only in rare cases where `\` is really
needed (e.g. cmd.exe/bat scripts?).

This is the first commit in a series of incremental steps.

Note:
* some funcs won't respect shellslash. e.g. `expand/fnamemodify`
* some funcs still respect shellslash, but will be updated in a follow
  PR. e.g. `ex_pwd/f_chdir/f_getcwd`
* uv's built-in funcs always return `\`. e.g. `uv.cwd/uv.exepath`

Co-authored-by: Justin M. Keyes &lt;justinkz@gmail.com&gt;</content>
</entry>
<entry>
<title>refactor(test): drop deprecated exc_exec #39242</title>
<updated>2026-04-20T18:16:41Z</updated>
<author>
<name>Justin M. Keyes</name>
<email>justinkz@gmail.com</email>
</author>
<published>2026-04-20T18:16:41Z</published>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/neovim/commit/?id=4ceca862fceb021049144a9aed05c60ae39b7aba'/>
<id>urn:sha1:4ceca862fceb021049144a9aed05c60ae39b7aba</id>
<content type='text'>
</content>
</entry>
<entry>
<title>fix(terminal): forward streamed bracketed paste properly (#39152)</title>
<updated>2026-04-17T22:33:52Z</updated>
<author>
<name>zeertzjq</name>
<email>zeertzjq@outlook.com</email>
</author>
<published>2026-04-17T22:33:52Z</published>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/neovim/commit/?id=4eaf782bb6cd25408650db497bd4765b7e9782ec'/>
<id>urn:sha1:4eaf782bb6cd25408650db497bd4765b7e9782ec</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat(api): rename buffer to buf in retval #38900</title>
<updated>2026-04-13T16:42:26Z</updated>
<author>
<name>Justin M. Keyes</name>
<email>justinkz@gmail.com</email>
</author>
<published>2026-04-13T16:42:26Z</published>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/neovim/commit/?id=df8d98173cbc03d78da18fee7f31f130db2c9e44'/>
<id>urn:sha1:df8d98173cbc03d78da18fee7f31f130db2c9e44</id>
<content type='text'>
In 3a4a66017b74192caaf9af9af172bdc08e0c1608, 4d3a67cd620152d11ab9b5f5bdd973f84cc2d44b
we renamed "buffer" to "buf" in dict parameters.

This commit also renames such keys in dict return-values.</content>
</entry>
<entry>
<title>fix(api): avoid error when parsing invalid expr after :echo (#38695)</title>
<updated>2026-04-01T23:05:47Z</updated>
<author>
<name>zeertzjq</name>
<email>zeertzjq@outlook.com</email>
</author>
<published>2026-04-01T23:05:47Z</published>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/neovim/commit/?id=f2cdf73afc7307fc65ab21134bcc4549ac34b2d4'/>
<id>urn:sha1:f2cdf73afc7307fc65ab21134bcc4549ac34b2d4</id>
<content type='text'>
Problem:  Parsing :echo followed by invalid expression leads to error.
Solution: Suppress error when skipping over expression.</content>
</entry>
<entry>
<title>fix(messages): disallow user-defined integer message-id #38359</title>
<updated>2026-03-19T01:07:17Z</updated>
<author>
<name>Justin M. Keyes</name>
<email>justinkz@gmail.com</email>
</author>
<published>2026-03-19T01:07:17Z</published>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/neovim/commit/?id=1b2b715389c5a34f323001f34e4b78b86c9cff8d'/>
<id>urn:sha1:1b2b715389c5a34f323001f34e4b78b86c9cff8d</id>
<content type='text'>
Problem:
`nvim_echo(…, {id=…})` accepts user-defined id as a string or integer.
Generated ids are always higher than last highest msg-id used. Thus
plugins may accidentally advance the integer id "address space", which,
at minimum, could lead to confusion when troubleshooting, or in the
worst case, could overflow or "exhaust" the id address space.

There's no use-case for it, and it could be the mildly confusing, so we
should just disallow it.

Solution:
Disallow *integer* user-defined message-id.
Only allow *string* user-defined message-id.</content>
</entry>
<entry>
<title>fix(api): nvim_get_option_value FileType autocmd handling #37414</title>
<updated>2026-03-19T00:11:59Z</updated>
<author>
<name>Sean Dewar</name>
<email>6256228+seandewar@users.noreply.github.com</email>
</author>
<published>2026-03-19T00:11:59Z</published>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/neovim/commit/?id=6f12663de56b5c363e5abefc3ddbe1fd3bbc7989'/>
<id>urn:sha1:6f12663de56b5c363e5abefc3ddbe1fd3bbc7989</id>
<content type='text'>
Problem:
nvim_get_option_value with "filetype" set silently returns incorrect
defaults if autocommands are blocked, like when they're already running.

Solution:
Allow its FileType autocommands to nest: `do_filetype_autocmd(force=true)`.
Also error if executing them fails, rather than silently return wrong defaults.

Endless nesting from misbehaving scripts should be prevented by the recursion
limit in apply_autocmds_group, which is 10.</content>
</entry>
<entry>
<title>fix(api): use standard error messages</title>
<updated>2026-03-16T13:52:04Z</updated>
<author>
<name>Justin M. Keyes</name>
<email>justinkz@gmail.com</email>
</author>
<published>2026-03-14T16:56:19Z</published>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/neovim/commit/?id=680d25e5b3c1efba13bd8f5c0bd6bb5ab431361f'/>
<id>urn:sha1:680d25e5b3c1efba13bd8f5c0bd6bb5ab431361f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>fix(messages): allocate message history kind string #38292</title>
<updated>2026-03-14T12:07:55Z</updated>
<author>
<name>luukvbaal</name>
<email>luukvbaal@gmail.com</email>
</author>
<published>2026-03-14T12:07:55Z</published>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/neovim/commit/?id=83037cf2185704a4b9a93c0883dc93226de86fdc'/>
<id>urn:sha1:83037cf2185704a4b9a93c0883dc93226de86fdc</id>
<content type='text'>
Problem:  nvim_echo()-&gt;kind memory may be used after it is freed with :messages.
Solution: Copy and free message kind string in message history.</content>
</entry>
<entry>
<title>docs: misc</title>
<updated>2026-03-13T19:32:01Z</updated>
<author>
<name>Justin M. Keyes</name>
<email>justinkz@gmail.com</email>
</author>
<published>2026-03-12T11:48:18Z</published>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/neovim/commit/?id=682c77805c9e592be8c5932541609c9934ec9d1a'/>
<id>urn:sha1:682c77805c9e592be8c5932541609c9934ec9d1a</id>
<content type='text'>
</content>
</entry>
</feed>
