Commit Graph

204 Commits

Author SHA1 Message Date
ee79249d23 json-rpc-shell.adoc: update WebSocket notes
https://github.com/open-rpc/client-js also uses WebSockets,
although they don't seem to support notifications (in general).
2020-10-10 05:20:31 +02:00
160d23018a Bump liberty
resolve_relative_runtime_unique_filename() used to have a bug.
2020-10-10 05:09:11 +02:00
fed2892ee1 Readline: add trivial OpenRPC support
So far hidden under a switch and only for this frontend.
2020-10-10 05:09:10 +02:00
667b01cb73 Reorder help message entries a bit
Should be both more useful and more alphabetic this way.
2020-10-10 02:57:14 +02:00
20c8578084 Fix use of possibly uninitialised memory 2020-10-10 02:57:14 +02:00
57a3b4e990 Split make_json_rpc_call() in half 2020-10-10 02:57:13 +02:00
e4d1529b4d Slightly refactor make_json_rpc_call() 2020-10-10 02:57:13 +02:00
897a263ee7 Readline: make M-Enter insert a newline
Before, it was only possible with C-v C-j but it's too useful
to require such an awkward method.

There is a precedent in, e.g., zsh and fish for the new binding.
2020-10-09 20:41:37 +02:00
84702fa47d Fix handling terminal resizes while the terminal is suspended
GNU Readline has a misfeature.
2020-10-09 20:21:52 +02:00
b315892249 Readline: fix a dormant bug in prompt changes
For details, see a similar change in degesch from uirc3.
2020-10-09 20:17:17 +02:00
710f5f197f Make a release, create NEWS v1.0.0 2020-09-05 20:42:02 +02:00
ba68585d14 Streamline the manual page a bit
I have consulted `man 7 man-pages` but overall it's a huge mess.
2020-09-05 06:34:00 +02:00
984e5b4e7f Use saner defaults
So that most of the time users won't need to use any switches.

--pretty-print has been inverted into jq's --compact-output,
and --auto-id has been replaced with barely, if-at-all useful
--null-as-id.
2020-09-05 06:07:45 +02:00
d57a8bd3c7 Improve AsciiDoc compatibility
I need two renderers to work: hswg/libasciidoc and asciidoctor
in man page mode (and ideally in HTML as well).  That should be
covered now.

The triple-plus thing was the first thing that showed good results,
after trying backslashes, single-plus quoting and [] after ://.

The change of the source code block kind could be considered as
unification.  I'm combining tabs with spaces within one document
though, and I should get rid of the tabs in the rest of it then...
2020-09-05 04:36:43 +02:00
2962a644da Write a nice new man page in AsciiDoc
Taking some preliminary steps for inclusion in Linux distributions.

The help message has been slightly improved and the README extended,
with part of it now residing in the man page.

One less GNU dependency, for what it's worth.
2020-09-05 03:51:36 +02:00
6f5ef30293 Move "connecting..." messages to the debug mode
So that the --verbose option does only one thing.
2020-09-05 03:50:14 +02:00
b7b1198be7 Fix libedit a bit more and discourage from using it 2020-09-02 01:08:09 +02:00
633f7007d1 json-rpc-test-server: add a "date" method 2020-09-01 23:41:20 +02:00
f4d178b3f6 Update copyright years 2020-09-01 21:03:53 +02:00
ee5317f865 json-rpc-test-server: reject non-null params in "ping" 2020-09-01 20:56:03 +02:00
20558ecd2b json-rpc-test-server: make sure to set the id in responses 2020-09-01 20:55:22 +02:00
f6225ac6cc Warn on unexpected "id" fields 2020-09-01 20:54:23 +02:00
16ec8261dc Make the verbose mode also show the raw input
To make it more useful for debugging.  We might also tie this
to the --debug option, though that would be a bit chaotic.
2020-09-01 20:37:08 +02:00
e49ff84b74 Strip trailing newlines from editor output 2020-09-01 19:26:37 +02:00
b7c9bfd9f5 Fix libedit crash
Again, I have no idea why it started to happen, it just occured
to me to try to change the call, and it turns out out it works.
2020-09-01 19:02:41 +02:00
f6165164ee Fix prompt attributes under libedit
I can only guess why this works, and I'm not sure I want to /know/.
2020-09-01 19:02:41 +02:00
3a445c2db2 Name change 2020-09-01 19:02:41 +02:00
45d023147a Bump liberty 2020-09-01 19:02:40 +02:00
90b5364b29 Fix running helper programs
A bug was introduced in 5c38087.
2019-09-23 23:07:04 +02:00
1840ac795e json-rpc-test-server: fix some outstanding issues 2018-10-19 01:15:12 +02:00
df38bcf775 Merge in a JSON-RPC 2.0 test server 2018-10-18 07:49:36 +02:00
1c52f9e37e demo-json-rpc-server -> json-rpc-test-server 2018-10-18 07:27:55 +02:00
6e152ae37c More debugging information for static file serving 2018-10-18 07:17:06 +02:00
8d66435568 Remember to set the server context in SCGI requests 2018-10-18 06:41:12 +02:00
d883f4cc71 Finish the FastCGI backend
Bump liberty, also fixing SCGI.
2018-10-18 06:35:29 +02:00
62945cceb3 Finish the WebSocket backend
Of course, everything so far hasn't been tested much.
2018-10-18 04:44:40 +02:00
580f0a0c59 Synthesize EOF events in SCGI 2018-10-18 04:44:39 +02:00
253e35e1e4 Wrap request::write_cb in a function 2018-10-17 23:34:59 +02:00
cf56921c4e Allow WebSockets to micromanage shutdowns
They have their reasons, mostly event-related.
2018-10-17 23:26:54 +02:00
a3ec0942f8 Implement basic connection teardown
I finally understand the codebase again.  It's rather complicated.
2018-10-17 22:59:40 +02:00
efd500ca3c Accelerated daemon quitting 2018-10-17 06:08:11 +02:00
13892fcd0e Clean up client de/allocation 2018-10-17 05:16:17 +02:00
1d638c9170 Say "finalize" instead of "destroy" where appropriate
- _make() returns a struct directly
 - _init() initializes over a pointer
 - _free() deinitializes over a pointer
 - _new() is like _init() but also allocates
 - _destroy() is like _free() but also deallocates

Finalization is a matching concept in garbage-collected languages.
2018-10-17 03:53:07 +02:00
83363e6383 FastCGI: make it work at least in theory 2018-10-17 03:50:39 +02:00
272145ace2 Clarify EOF behaviour 2018-10-17 02:21:19 +02:00
4c54bc42b9 Clean up and better document client_vtable 2018-10-16 04:45:36 +02:00
7d922352ea Rename client_vtable::destroy to finalize
Matches a similar concept from garbage-collected languages.
2018-10-16 04:34:00 +02:00
7f6db9d39f Improve WebSocket shutdown 2018-10-16 04:33:59 +02:00
7cefdd496f Cleanup 2018-10-16 04:05:42 +02:00
e9530f450e Call ws_handler_start() 2018-10-16 01:47:51 +02:00