- jsr readme update
- 609bfed: publish on jsr registry
-
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.
- fd34f22: Add
Promise<void>
into return signature ofEventBasedChannel.send
- 9561d3f: build: fix type declaration file not generated
- b9d8410: allow channel to be async
- 3cd9415: fix build file is missing
- 920074c: deprecate NoSerialization
- fbfa022: add provenance statements
- 78ab196: fix: types is missing in the release process
- 2d38ab4: fix getOwnPropertyDescriptor becomes invalid after optimized
- f4e2569: fix [[GetOwnPropertyDescriptor]] returns undefined
All notable changes to this project will be documented in this file. See standard-version for commit guidelines.
6.1.2 (2022-08-04)
- batch not clear the queue after emit (dc6807f)
6.1.1 (2022-07-27)
6.1.0 (2022-06-14)
- add AsyncVersionOf and AsyncGeneratorVersionOf improve UX require at least TypeScript 4.5 (fc97167)
6.0.3 (2022-06-14)
6.0.2 (2022-03-08)
- Don't send message if websocket closed after callback (75f105e), closes /github.com/Jack-Works/async-call-rpc/blob/255e7ea0ca75165a902478e18a5991a82197cc9b/utils/deno/websocket.server.ts#L30
- import folder (11f0472)
6.0.1 (2021-11-20)
- Don't send message if websocket closed (1d9ef47)
6.0.0 (2021-08-30)
- remove package exports shim, drop < Node 12.20.0
- remove package exports shim, drop < Node 12.20.0 (e2222d7)
5.1.0 (2021-05-25)
- replay function looks not good in console when uncompressed close gh-30 (d93176b)
5.0.0 (2020-12-17)
- Provide un-minified version #28
- improve typing, require at least TS 4.1
- add error handling of async initialization (72105f1)
- improve typing, require at least TS 4.1 (684e979)
- Provide un-minified version #28 (78a059d)
- return undefined for then by default (to avoid auto unwrap) (df4a673)
- response sent in notify mode (24ea1e7)
4.2.1 (2020-11-13)
- build error (23219be)
4.2.0 (2020-11-13)
- keep function identity between calls on AsyncCall (0ba5ca6)
- keep function identity between calls on batch and generator (95450f4)
- new options for log "all", close #23 (38e3669)
- batch will send functions into serialization (e3136ac)
- not call then if impl is not Promise, close #24 (be8c8de)
- utils points to source leads to compilation in node_modules (686f8e5)
4.1.0 (2020-08-23)
4.0.0 (2020-07-19)
- remove support for deprecated
messageChannel
messageChannel
has renamed tochannel
- remove support for deprecated messageChannel (e6681f7)
3.3.0 (2020-07-19)
- Old MessageChannel is deprecated, please use new CallbackBasedChannel or EventBasedChannel.
- impl requestReplay in log, close #22 (d241b34)
- new interface for messageChannel and deprecates old, close #19 (7022b8c)
- install error (4b3d78f)
3.2.2 (2020-06-28)
- support entry points for old platform that doesnt support exports field (9a108cd)
3.2.1 (2020-06-28)
3.2.0 (2020-06-27)
- start to provide builtin message channels (d97381d)
3.1.0 (2020-06-27)
- add deno ws server (c07d297)
- add node websocket server (6c0af32)
- Support patch req/res in JSON RPC spec close #9 (9f91c51)
- support sending notifications close #7 (e9abca6)
3.0.0 (2020-06-27)
- Enable strict mode by default, if you need the non-strict behavior, switch "strict" to false.
- Move
strict.noUndefined
to 3rd parameter of JSONSerialization since only JSON needs it. - The export version changed from
full
tobase
. If you need full version, please import fromasync-call-rpc/full
.
- Add hook for custom Error data close #8 (2ab36bb)
- change to strict by default, move undefined keeping to JSONSerialization (d860da5)
- export base version by default (6a11550)
- id generator, close #13 (d3c51b5)
- preserve this binding, close #16 (69f1077)
2.0.2 (2020-06-10)
- umd not loadable; tslib not included (a037da6)
2.0.1 (2020-06-07)
- wrong type path (80c1e18)
2.0.0 (2020-06-07)
- switch to node es module support
- switch to rollup
- add new logger (16e2195)
- dispose resource when iterator end (ebfc5df)
- preservePauseOnException (2a7ebb1)
- relax type on Serialization (ecbc956)
- support thisSideImpl as Promise (db66d72)
- switch to node es module support (6e21733)
- switch to rollup (81d4e4a)
- build script (42d701a)
- close #6 - Bug: Error when the thrown error doesn't a subclass of Error (6229b7f)
1.0.4 (2019-12-23)
1.0.3 (2019-12-23)
1.0.2 (2019-12-23)
1.0.1 (2019-12-23)
- change the package name (234440c)
- init publish (8455f46)