<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rneovim.git/src/nvim/msgpack_rpc, branch v0.1.6</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>api: call multiple methods atomically (useful in async contexts)</title>
<updated>2016-10-22T08:51:32+00:00</updated>
<author>
<name>Björn Linse</name>
<email>bjorn.linse@gmail.com</email>
</author>
<published>2016-04-13T14:37:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=f6968dc0f7775591108aebbfe30e597dd0882c91'/>
<id>f6968dc0f7775591108aebbfe30e597dd0882c91</id>
<content type='text'>
remove unused response_id parameter of handle_nvim_... helpers
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
remove unused response_id parameter of handle_nvim_... helpers
</pre>
</div>
</content>
</entry>
<entry>
<title>event/multiqueue.c: Rename "queue" to "multiqueue".</title>
<updated>2016-10-01T22:24:49+00:00</updated>
<author>
<name>Justin M. Keyes</name>
<email>justinkz@gmail.com</email>
</author>
<published>2016-09-29T15:09:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=6186df3562e33e92f04ed8c850204ceabc4746e1'/>
<id>6186df3562e33e92f04ed8c850204ceabc4746e1</id>
<content type='text'>
`lib/queue.h` implements a basic queue. `event/queue.c` implements
a specialized data structure on top of lib/queue.h; it is not a "normal"
queue.

Rename the specialized multi-level queue implemented in event/queue.c to
"multiqueue", to avoid confusion when reading the code.

Before this change one can eventually notice that "macros (uppercase
symbols) are for the normal queue, lowercase operations are for the
multi-level queue", but that is unnecessary friction for new developers
(or existing developers just visiting this part of the codebase).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
`lib/queue.h` implements a basic queue. `event/queue.c` implements
a specialized data structure on top of lib/queue.h; it is not a "normal"
queue.

Rename the specialized multi-level queue implemented in event/queue.c to
"multiqueue", to avoid confusion when reading the code.

Before this change one can eventually notice that "macros (uppercase
symbols) are for the normal queue, lowercase operations are for the
multi-level queue", but that is unnecessary friction for new developers
(or existing developers just visiting this part of the codebase).
</pre>
</div>
</content>
</entry>
<entry>
<title>api: fix leak when a api function is incorrectly called with a list.</title>
<updated>2016-08-31T19:57:06+00:00</updated>
<author>
<name>Björn Linse</name>
<email>bjorn.linse@gmail.com</email>
</author>
<published>2016-07-16T14:51:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=acb7c826b3df50bd9825baf3b2ffaaa79c8b80df'/>
<id>acb7c826b3df50bd9825baf3b2ffaaa79c8b80df</id>
<content type='text'>
This applies both to msgpack-rpc and eval.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This applies both to msgpack-rpc and eval.
</pre>
</div>
</content>
</entry>
<entry>
<title>api: unify buffer numbers and window ids with handles</title>
<updated>2016-08-31T19:40:20+00:00</updated>
<author>
<name>Björn Linse</name>
<email>bjorn.linse@gmail.com</email>
</author>
<published>2016-06-19T19:06:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=a2d25b7bf81728d913e7b317d33997c8b8268af2'/>
<id>a2d25b7bf81728d913e7b317d33997c8b8268af2</id>
<content type='text'>
also allow handle==0 meaning curbuf/curwin/curtab
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
also allow handle==0 meaning curbuf/curwin/curtab
</pre>
</div>
</content>
</entry>
<entry>
<title>api: rename "msgpack_rpc/defs.h" to "api/private/dispatch.h" and use the header generator.</title>
<updated>2016-08-31T19:40:20+00:00</updated>
<author>
<name>Björn Linse</name>
<email>bjorn.linse@gmail.com</email>
</author>
<published>2016-06-16T11:35:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=de3a515123fa417ecce61efebe4bc117b010c657'/>
<id>de3a515123fa417ecce61efebe4bc117b010c657</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>job control: reuse common job code for rpc jobs</title>
<updated>2016-08-20T10:55:35+00:00</updated>
<author>
<name>Björn Linse</name>
<email>bjorn.linse@gmail.com</email>
</author>
<published>2016-05-12T20:25:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=2d60a15e25f487eda1ac00a9e6cdf9a6564fb416'/>
<id>2d60a15e25f487eda1ac00a9e6cdf9a6564fb416</id>
<content type='text'>
This makes stderr and exit callbacks work for rpc jobs
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This makes stderr and exit callbacks work for rpc jobs
</pre>
</div>
</content>
</entry>
<entry>
<title>stream: set data together with callback</title>
<updated>2016-08-20T08:25:33+00:00</updated>
<author>
<name>Björn Linse</name>
<email>bjorn.linse@gmail.com</email>
</author>
<published>2016-05-12T11:18:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=215922120c43163f4e1cc00851bd1b86890d3a28'/>
<id>215922120c43163f4e1cc00851bd1b86890d3a28</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>server_init: Handle server_address_new() failure.</title>
<updated>2016-07-18T15:02:30+00:00</updated>
<author>
<name>Justin M. Keyes</name>
<email>justinkz@gmail.com</email>
</author>
<published>2016-07-18T15:02:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=1d8a07615714345769e6932850b83b180e697008'/>
<id>1d8a07615714345769e6932850b83b180e697008</id>
<content type='text'>
Closes #3364
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Closes #3364
</pre>
</div>
</content>
</entry>
<entry>
<title>*: Fix linter errors</title>
<updated>2016-06-24T14:16:11+00:00</updated>
<author>
<name>ZyX</name>
<email>kp-pav@yandex.ru</email>
</author>
<published>2016-06-24T14:16:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=458a4d04447e57c198210fb8f743a261e13b9855'/>
<id>458a4d04447e57c198210fb8f743a261e13b9855</id>
<content type='text'>
Also adds one exception to linter rules:

    typedef struct {
      kvec_t(Object) stack;
    } EncodedData;

is completely valid (from the style guide point of view) code.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Also adds one exception to linter rules:

    typedef struct {
      kvec_t(Object) stack;
    } EncodedData;

is completely valid (from the style guide point of view) code.</pre>
</div>
</content>
</entry>
<entry>
<title>msgpack_rpc: Fix crash in log_server_msg</title>
<updated>2016-06-24T13:53:26+00:00</updated>
<author>
<name>ZyX</name>
<email>kp-pav@yandex.ru</email>
</author>
<published>2016-06-11T18:59:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=0d56118d862f0a366da57c82a6e995f1a51b0fc7'/>
<id>0d56118d862f0a366da57c82a6e995f1a51b0fc7</id>
<content type='text'>
It appears that used msgpack library is not able to parse back message created 
by msgpack_rpc_from_object() if nesting level is too high, so log_server_msg now 
cares about msgpack_unpack_next() return value. Also error message from 
server_notifications_spec.lua is not readable if something is wrong (though at 
least now it does not crash when parsing deeply nested structures).

log_server_msg() in the test reports

    [msgpack-rpc] nvim -&gt; client(1) [error]        "parse error"</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
It appears that used msgpack library is not able to parse back message created 
by msgpack_rpc_from_object() if nesting level is too high, so log_server_msg now 
cares about msgpack_unpack_next() return value. Also error message from 
server_notifications_spec.lua is not readable if something is wrong (though at 
least now it does not crash when parsing deeply nested structures).

log_server_msg() in the test reports

    [msgpack-rpc] nvim -&gt; client(1) [error]        "parse error"</pre>
</div>
</content>
</entry>
</feed>
