After going through the process of transforming a xbase-client to ffi library in #114, I realized how tedious ffi and how obsoletely it isn't worth it, because at the end we're still calling and interacting with daemon as unix socket client.
In this PR, the daemon/client connection will totally relay on json
transport (custom rpc, no more tarpc)
The results is:
Simpler codebase, one src directory, in addtion to crates/ dir for any helper libraries or binary.
Client can process errors from the server, Response return object with data and error field, for which the error will nil, that is if the server processed the request without erroring.
TODO
[x] Fix: nvim broadcast ignoring some message
[x] Fix: Auto-start daemon
[x] Refactor: relocate bin directory located in ~/.local/share/xbase for easier access and bump build server version
After going through the process of transforming a xbase-client to ffi library in #114, I realized how tedious ffi and how obsoletely it isn't worth it, because at the end we're still calling and interacting with daemon as unix socket client.
In this PR, the daemon/client connection will totally relay on json transport (custom rpc, no more tarpc)
The results is:
Response
return object with data and error field, for which the error will nil, that is if the server processed the request without erroring.TODO
~/.local/share/xbase
for easier access and bump build server version