<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rneovim.git/src/nvim/lua, branch rahm</title>
<subtitle>Neovim fork with Rahm's personal hacks.
</subtitle>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/'/>
<entry>
<title>refactor(treesitter): always return valid range from parse() #32273</title>
<updated>2025-02-02T11:46:26+00:00</updated>
<author>
<name>Riley Bruins</name>
<email>ribru17@hotmail.com</email>
</author>
<published>2025-02-02T11:46:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=77be44563acb64a481d48f45c8dbbfca2d7db415'/>
<id>77be44563acb64a481d48f45c8dbbfca2d7db415</id>
<content type='text'>
Problem:
When running an initial parse, parse() returns an empty table rather
than an actual range. In `languagetree.lua`, we manually check if
a parse was incremental to determine the changed parse region.

Solution:
- Always return a range (in the C side) from parse().
- Simplify the language tree code a bit.
- Logger no longer shows empty ranges on the initial parse.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:
When running an initial parse, parse() returns an empty table rather
than an actual range. In `languagetree.lua`, we manually check if
a parse was incremental to determine the changed parse region.

Solution:
- Always return a range (in the C side) from parse().
- Simplify the language tree code a bit.
- Logger no longer shows empty ranges on the initial parse.</pre>
</div>
</content>
</entry>
<entry>
<title>build(deps)!: bump tree-sitter to HEAD, wasmtime to v29.0.1 (#32200)</title>
<updated>2025-01-27T15:16:06+00:00</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2025-01-27T15:16:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=eb60cd74fb5caa997e6253bef6a1f0b58e1b6ec6'/>
<id>eb60cd74fb5caa997e6253bef6a1f0b58e1b6ec6</id>
<content type='text'>
Breaking change: `ts_node_child_containing_descendant()` was removed

Breaking change: tree-sitter 0.25 (HEAD) required</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Breaking change: `ts_node_child_containing_descendant()` was removed

Breaking change: tree-sitter 0.25 (HEAD) required</pre>
</div>
</content>
</entry>
<entry>
<title>fix(lua): pop retval for fast context LuaRef</title>
<updated>2025-01-24T10:57:51+00:00</updated>
<author>
<name>Luuk van Baal</name>
<email>luukvbaal@gmail.com</email>
</author>
<published>2025-01-23T11:42:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=c6d2cbf8f51abfa0c9d244ef384a15b0b69e16c6'/>
<id>c6d2cbf8f51abfa0c9d244ef384a15b0b69e16c6</id>
<content type='text'>
Problem:  nlua_call_ref_ctx() does not pop the return value in fast
          context that did not error.
Solution: Fall through to end; calling nlua_call_pop_retval().
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:  nlua_call_ref_ctx() does not pop the return value in fast
          context that did not error.
Solution: Fall through to end; calling nlua_call_pop_retval().
</pre>
</div>
</content>
</entry>
<entry>
<title>fix(lua): prevent SIGSEGV when lua error is NULL in libuv_worker</title>
<updated>2025-01-18T19:08:50+00:00</updated>
<author>
<name>林玮 (Jade Lin)</name>
<email>linw1995@icloud.com</email>
</author>
<published>2025-01-18T08:40:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=a5b1b83a2693ffa7a5a0a22b3693d36ea60051be'/>
<id>a5b1b83a2693ffa7a5a0a22b3693d36ea60051be</id>
<content type='text'>
Problem:
Calling `xstrdup` with a NULL pointer causes a SIGSEGV if `lua_tostring` returns
NULL in `nlua_luv_thread_common_cfpcall`.

Crash stack trace:
- `_platform_strlen` → `xstrdup` (memory.c:469)
- `nlua_luv_thread_common_cfpcall` (executor.c:281)

Solution:
Check if `lua_tostring` returns NULL and pass NULL to `event_create` to avoid the crash.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:
Calling `xstrdup` with a NULL pointer causes a SIGSEGV if `lua_tostring` returns
NULL in `nlua_luv_thread_common_cfpcall`.

Crash stack trace:
- `_platform_strlen` → `xstrdup` (memory.c:469)
- `nlua_luv_thread_common_cfpcall` (executor.c:281)

Solution:
Check if `lua_tostring` returns NULL and pass NULL to `event_create` to avoid the crash.
</pre>
</div>
</content>
</entry>
<entry>
<title>fix(treesitter): uv_dlclose after uv_dlerror</title>
<updated>2025-01-14T09:15:35+00:00</updated>
<author>
<name>Horror Proton</name>
<email>107091537+horror-proton@users.noreply.github.com</email>
</author>
<published>2025-01-13T16:43:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=5a54681025ec28129c21c875943a3f9c37959f75'/>
<id>5a54681025ec28129c21c875943a3f9c37959f75</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>feat(treesitter): async parsing</title>
<updated>2025-01-12T16:10:47+00:00</updated>
<author>
<name>Riley Bruins</name>
<email>ribru17@hotmail.com</email>
</author>
<published>2024-12-18T18:48:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=45e606b1fddbfeee8fe28385b5371ca6f2fba71b'/>
<id>45e606b1fddbfeee8fe28385b5371ca6f2fba71b</id>
<content type='text'>
**Problem:** Parsing can be slow for large files, and it is a blocking
operation which can be disruptive and annoying.

**Solution:** Provide a function for asynchronous parsing, which accepts
a callback to be run after parsing completes.

Co-authored-by: Lewis Russell &lt;lewis6991@gmail.com&gt;
Co-authored-by: Luuk van Baal &lt;luukvbaal@gmail.com&gt;
Co-authored-by: VanaIgr &lt;vanaigranov@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
**Problem:** Parsing can be slow for large files, and it is a blocking
operation which can be disruptive and annoying.

**Solution:** Provide a function for asynchronous parsing, which accepts
a callback to be run after parsing completes.

Co-authored-by: Lewis Russell &lt;lewis6991@gmail.com&gt;
Co-authored-by: Luuk van Baal &lt;luukvbaal@gmail.com&gt;
Co-authored-by: VanaIgr &lt;vanaigranov@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>feat(api): add err field to nvim_echo() opts</title>
<updated>2025-01-09T12:35:40+00:00</updated>
<author>
<name>Luuk van Baal</name>
<email>luukvbaal@gmail.com</email>
</author>
<published>2025-01-07T13:20:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=ead5683ff9994c0fbfc6c38e0911d9455777550b'/>
<id>ead5683ff9994c0fbfc6c38e0911d9455777550b</id>
<content type='text'>
Problem:  We want to deprecate `nvim_err_write(ln)()` but there is no
          obvious replacement (from Lua). Meanwhile we already have
          `nvim_echo()` with an `opts` argument.
Solution: Add `err` argument to `nvim_echo()` that directly maps to
          `:echoerr`.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:  We want to deprecate `nvim_err_write(ln)()` but there is no
          obvious replacement (from Lua). Meanwhile we already have
          `nvim_echo()` with an `opts` argument.
Solution: Add `err` argument to `nvim_echo()` that directly maps to
          `:echoerr`.
</pre>
</div>
</content>
</entry>
<entry>
<title>fix: fix broken wasmtime build</title>
<updated>2024-12-23T15:07:09+00:00</updated>
<author>
<name>dundargoc</name>
<email>gocdundar@gmail.com</email>
</author>
<published>2024-12-23T14:14:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=25abcd243e413f960a7a58a44689e8bfbbc3dec7'/>
<id>25abcd243e413f960a7a58a44689e8bfbbc3dec7</id>
<content type='text'>
Regression from 2a7d0ed6145bf3f8b139c2694563f460f829813a, which removed
header that is only needed if wasmtime support is enabled. Prevent this
from happening again by wrapping the include in a `HAVE_WASMTIME` check.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Regression from 2a7d0ed6145bf3f8b139c2694563f460f829813a, which removed
header that is only needed if wasmtime support is enabled. Prevent this
from happening again by wrapping the include in a `HAVE_WASMTIME` check.
</pre>
</div>
</content>
</entry>
<entry>
<title>refactor: iwyu #31637</title>
<updated>2024-12-23T13:43:52+00:00</updated>
<author>
<name>Justin M. Keyes</name>
<email>justinkz@gmail.com</email>
</author>
<published>2024-12-23T13:43:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=2a7d0ed6145bf3f8b139c2694563f460f829813a'/>
<id>2a7d0ed6145bf3f8b139c2694563f460f829813a</id>
<content type='text'>
Result of `make iwyu` (after some "fixups").</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Result of `make iwyu` (after some "fixups").</pre>
</div>
</content>
</entry>
<entry>
<title>refactor(api): always use TRY_WRAP #31600</title>
<updated>2024-12-17T12:12:22+00:00</updated>
<author>
<name>luukvbaal</name>
<email>luukvbaal@gmail.com</email>
</author>
<published>2024-12-17T12:12:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=6bf2a6fc5bb395b67c88cb26d332f882a106c7ab'/>
<id>6bf2a6fc5bb395b67c88cb26d332f882a106c7ab</id>
<content type='text'>
Problem:  Two separate try/end wrappers, that only marginally differ by
          restoring a few variables. Wrappers that don't restore
          previous state are dangerous to use in "api-fast" functions.
Solution: Remove wrappers that don't restore the previous state.
          Always use TRY_WRAP.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:  Two separate try/end wrappers, that only marginally differ by
          restoring a few variables. Wrappers that don't restore
          previous state are dangerous to use in "api-fast" functions.
Solution: Remove wrappers that don't restore the previous state.
          Always use TRY_WRAP.</pre>
</div>
</content>
</entry>
</feed>
