async-call-rpc@6.4.0
Minor Changes
-
fd34f22: add a new
encoder
option and deprecate the oldserializer
optionhow to migrate:
// before const options = { channel, serializer: { serialization(data) { return ... }, deserialization(data) { return ... }, }, } // after const options = { channel, encoder: { encode(data) { return ... }, decode(data) { return ... }, }, }
// before const options = { channel, serializer: NoSerialization, }; // after const options = { channel, };
// before const options = { channel, serializer: JSONSerialization(), }; // after const options = { channel, encoder: JSONEncoder(), };
-
fd34f22:
hint
added to theCallbackBasedChannel.setup(jsonRPCHandlerCallback)
andEventBasedChannel.on(listener)
.For an isomorphic instance of
AsyncCall
(used as both a server and a client),
when a new message comes, it does not clear if to calldecodeRequest
ordecodeRespones
.This version introduces a new option
encoder
to replaceserialization
.serialization
is always working in isomorphic way.- If
hint
is"request"
,(encoder as ServerEncoding).decodeRequest
will be called first, if this method does not exist,(encoder as IsomorphicEncoder).decode
will be called. - If
hint
is"response"
,(encoder as ClientEncoding).decodeResponse
will be called first, if this method does not exist,(encoder as IsomorphicEncoder).decode
will be called. - If
hint
is not present, onlyencoder.decode
will be called.
- If
-
0d0900b: rename "key" to "name"
-
fd34f22:
BSON_Serialization
andMsgpack_Serialization
is now deprecated -
0431c15: rename
AsyncCallStrictJSONRPC
toAsyncCallStrictOptions
-
8a38d8b: add
signal
andforceSignal
to stop the instance -
c9bbbd2: rename
parameterStructures
toparameterStructure
-
fd34f22: expose JSON-RPC interfaces
-
fd34f22: new built-in
JSONEncoder
for the new encode option.
Patch Changes
- fd34f22: Add
Promise<void>
into return signature ofEventBasedChannel.send