<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rneovim.git/test/functional/eval, branch colorcolchar</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>test: reorg #15698</title>
<updated>2021-09-17T16:16:40+00:00</updated>
<author>
<name>Justin M. Keyes</name>
<email>justinkz@gmail.com</email>
</author>
<published>2021-09-17T16:16:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=d8de4eb685e35646c7d541e9a75bdc296127b7e2'/>
<id>d8de4eb685e35646c7d541e9a75bdc296127b7e2</id>
<content type='text'>
Problem:
Subdirectories like "visual", "insert", "normal" encourage people to
separate *related* tests for no good reason.  Typically the _mode_ is
not the relevant topic of a test (and when it is, _then_ create
an appropriate describe() or it()).

Solution:
- Delete the various `test/functional/&lt;mode&gt;/` subdirectories, move
  their tests to more meaningful topics.
- Rename `…/normal/` to `…/editor/`.
  - Move or merge `…/visual/*` and `…/insert/*` tests into here where
    appropriate.
- Rename `…/eval/` to `…/vimscript/`.
  - Move `…/viml/*` into here also.

* test(reorg): insert/* =&gt; editor/mode_insert_spec.lua
* test(reorg): cmdline/* =&gt; editor/mode_cmdline_spec.lua
* test(reorg): eval core tests =&gt; eval_spec.lua</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:
Subdirectories like "visual", "insert", "normal" encourage people to
separate *related* tests for no good reason.  Typically the _mode_ is
not the relevant topic of a test (and when it is, _then_ create
an appropriate describe() or it()).

Solution:
- Delete the various `test/functional/&lt;mode&gt;/` subdirectories, move
  their tests to more meaningful topics.
- Rename `…/normal/` to `…/editor/`.
  - Move or merge `…/visual/*` and `…/insert/*` tests into here where
    appropriate.
- Rename `…/eval/` to `…/vimscript/`.
  - Move `…/viml/*` into here also.

* test(reorg): insert/* =&gt; editor/mode_insert_spec.lua
* test(reorg): cmdline/* =&gt; editor/mode_cmdline_spec.lua
* test(reorg): eval core tests =&gt; eval_spec.lua</pre>
</div>
</content>
</entry>
<entry>
<title>feat(f_msgpackparse): support parsing from Blob</title>
<updated>2021-09-15T23:14:47+00:00</updated>
<author>
<name>Sean Dewar</name>
<email>seandewar@users.noreply.github.com</email>
</author>
<published>2021-07-29T16:46:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=e53b71627fb84025fb658a44ee5f90adf276cde7'/>
<id>e53b71627fb84025fb658a44ee5f90adf276cde7</id>
<content type='text'>
Note that it is not possible for msgpack_unpack_next() and
msgpack_unpacker_next() to return MSGPACK_UNPACK_EXTRA_BYTES, so it
should be fine to abort() on that.

Lua 5.1 doesn't support string hex escapes (\xXX) like VimL does (though
LuaJIT does), so convert them to decimal escapes (\DDD) in tests.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Note that it is not possible for msgpack_unpack_next() and
msgpack_unpacker_next() to return MSGPACK_UNPACK_EXTRA_BYTES, so it
should be fine to abort() on that.

Lua 5.1 doesn't support string hex escapes (\xXX) like VimL does (though
LuaJIT does), so convert them to decimal escapes (\DDD) in tests.
</pre>
</div>
</content>
</entry>
<entry>
<title>feat(f_msgpackdump): support dumping to Blob</title>
<updated>2021-09-15T23:14:47+00:00</updated>
<author>
<name>Sean Dewar</name>
<email>seandewar@users.noreply.github.com</email>
</author>
<published>2021-07-29T13:05:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=5fdf741f77c3b6ebed9b5cdc0e9d1043080beb3c'/>
<id>5fdf741f77c3b6ebed9b5cdc0e9d1043080beb3c</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>vim-patch:8.2.0404: writefile() error does not give a hint</title>
<updated>2021-09-15T21:57:54+00:00</updated>
<author>
<name>Sean Dewar</name>
<email>seandewar@users.noreply.github.com</email>
</author>
<published>2021-08-02T14:27:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=ba34afb37849a8bdf5d601ced7f3c139a80cd396'/>
<id>ba34afb37849a8bdf5d601ced7f3c139a80cd396</id>
<content type='text'>
Problem:    Writefile() error does not give a hint.
Solution:   Add remark about first argument.
https://github.com/vim/vim/commit/18a2b87ca27c378a555b20f14a284d2ce3511427
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:    Writefile() error does not give a hint.
Solution:   Add remark about first argument.
https://github.com/vim/vim/commit/18a2b87ca27c378a555b20f14a284d2ce3511427
</pre>
</div>
</content>
</entry>
<entry>
<title>vim-patch:8.1.0793: incorrect error messages for functions that take a Blob</title>
<updated>2021-09-15T21:30:31+00:00</updated>
<author>
<name>Sean Dewar</name>
<email>seandewar@users.noreply.github.com</email>
</author>
<published>2020-12-02T18:37:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=c57132ec2a9c16facff7858c8610c3206398fe7e'/>
<id>c57132ec2a9c16facff7858c8610c3206398fe7e</id>
<content type='text'>
Problem:    Incorrect error messages for functions that now take a Blob
            argument.
Solution:   Adjust the error messages. (Dominique Pelle, closes vim/vim#3846)
https://github.com/vim/vim/commit/0d17f0d1c09fa6db306336695ba646c21ea24909
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:    Incorrect error messages for functions that now take a Blob
            argument.
Solution:   Adjust the error messages. (Dominique Pelle, closes vim/vim#3846)
https://github.com/vim/vim/commit/0d17f0d1c09fa6db306336695ba646c21ea24909
</pre>
</div>
</content>
</entry>
<entry>
<title>feat(decode_string): decode binary string with NULs to Blob</title>
<updated>2021-09-15T20:19:30+00:00</updated>
<author>
<name>Sean Dewar</name>
<email>seandewar@users.noreply.github.com</email>
</author>
<published>2021-07-31T20:45:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=de9df825d5e38e6a9e5ba254d1d27cb3cfc9f557'/>
<id>de9df825d5e38e6a9e5ba254d1d27cb3cfc9f557</id>
<content type='text'>
Strings that previously decoded into a msgpack special for representing
BINs with NULs now convert to Blobs. It shouldn't be possible to decode
into this special anymore after this change?

Notably, Lua strings with NULs now convert to Blobs when passed to VimL.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Strings that previously decoded into a msgpack special for representing
BINs with NULs now convert to Blobs. It shouldn't be possible to decode
into this special anymore after this change?

Notably, Lua strings with NULs now convert to Blobs when passed to VimL.
</pre>
</div>
</content>
</entry>
<entry>
<title>feat(msgpack): convert Blobs to BIN strings</title>
<updated>2021-09-15T20:19:30+00:00</updated>
<author>
<name>Sean Dewar</name>
<email>seandewar@users.noreply.github.com</email>
</author>
<published>2021-08-02T18:27:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=af6f454f5c3349821b20bd2f0d846f7ae7343e2e'/>
<id>af6f454f5c3349821b20bd2f0d846f7ae7343e2e</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>feat(json): convert Blobs to array of byte values</title>
<updated>2021-09-15T20:19:29+00:00</updated>
<author>
<name>Sean Dewar</name>
<email>seandewar@users.noreply.github.com</email>
</author>
<published>2021-08-02T17:59:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=ab82369c8eb1bf6a58f848e7cb3fb3275d13ed8b'/>
<id>ab82369c8eb1bf6a58f848e7cb3fb3275d13ed8b</id>
<content type='text'>
Similiar to how Vim does it, but to be consistent with how Nvim encodes
lists, add a space after every comma.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Similiar to how Vim does it, but to be consistent with how Nvim encodes
lists, add a space after every comma.
</pre>
</div>
</content>
</entry>
<entry>
<title>feat(api): convert Blobs to API strings</title>
<updated>2021-09-15T20:19:29+00:00</updated>
<author>
<name>Sean Dewar</name>
<email>seandewar@users.noreply.github.com</email>
</author>
<published>2021-08-02T18:13:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=312c783d81544df7ab3342f4b3316ced931e89b8'/>
<id>312c783d81544df7ab3342f4b3316ced931e89b8</id>
<content type='text'>
Note that these are not NUL-terminated; the API supports this.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Note that these are not NUL-terminated; the API supports this.
</pre>
</div>
</content>
</entry>
<entry>
<title>vim-patch:8.1.0735: cannot handle binary data</title>
<updated>2021-09-15T20:19:22+00:00</updated>
<author>
<name>Sean Dewar</name>
<email>seandewar@users.noreply.github.com</email>
</author>
<published>2020-11-18T03:11:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=9095101743b2606fb1d5f7a5a1216f22d2fb2b4a'/>
<id>9095101743b2606fb1d5f7a5a1216f22d2fb2b4a</id>
<content type='text'>
Problem:    Cannot handle binary data.
Solution:   Add the Blob type. (Yasuhiro Matsumoto, closes vim/vim#3638)
https://github.com/vim/vim/commit/6e5ea8d2a995b32bbc5972edc4f827b959f2702f

Nvim-specific Blob conversions are implemented in future commits.

Refactor write_blob() to use a FileDescriptor, as f_writefile() was
refactored to use one (does not apply to read_blob()).

Use var_check_lock() in f_add() for Blobs from v8.1.0897.

Add a modeline to test_blob.vim and fix some doc typos.

Include if_perl.txt's VIM::Blob() documentation. Interestingly, this
function already worked before this port, as it just returns a Blob
string literal, not an actual Blob object.

N/A patches for version.c:

vim-patch:8.1.0741: viminfo with Blob is not tested

Problem:    Viminfo with Blob is not tested.
Solution:   Extend the viminfo test.  Fix reading a blob.  Fixed storing a
            special variable value.
https://github.com/vim/vim/commit/8c8b8bb56c724cc1bfc3d8520eec33f2d399697c

vim-patch:8.1.1022: may use NULL pointer when out of memory

Problem:    May use NULL pointer when out of memory. (Coverity)
Solution:   Check for blob_alloc() returning NULL.
https://github.com/vim/vim/commit/e142a9467a7f6845a426d8db6efedf246d3c13ac
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:    Cannot handle binary data.
Solution:   Add the Blob type. (Yasuhiro Matsumoto, closes vim/vim#3638)
https://github.com/vim/vim/commit/6e5ea8d2a995b32bbc5972edc4f827b959f2702f

Nvim-specific Blob conversions are implemented in future commits.

Refactor write_blob() to use a FileDescriptor, as f_writefile() was
refactored to use one (does not apply to read_blob()).

Use var_check_lock() in f_add() for Blobs from v8.1.0897.

Add a modeline to test_blob.vim and fix some doc typos.

Include if_perl.txt's VIM::Blob() documentation. Interestingly, this
function already worked before this port, as it just returns a Blob
string literal, not an actual Blob object.

N/A patches for version.c:

vim-patch:8.1.0741: viminfo with Blob is not tested

Problem:    Viminfo with Blob is not tested.
Solution:   Extend the viminfo test.  Fix reading a blob.  Fixed storing a
            special variable value.
https://github.com/vim/vim/commit/8c8b8bb56c724cc1bfc3d8520eec33f2d399697c

vim-patch:8.1.1022: may use NULL pointer when out of memory

Problem:    May use NULL pointer when out of memory. (Coverity)
Solution:   Check for blob_alloc() returning NULL.
https://github.com/vim/vim/commit/e142a9467a7f6845a426d8db6efedf246d3c13ac
</pre>
</div>
</content>
</entry>
</feed>
