Q-Connection 0.6.1

32 views
Skip to first unread message

Kris Kowal

unread,
Apr 14, 2014, 6:30:09 PM4/14/14
to Q Continuum
I’ve published a patch release for Q-Connection, including contributions from Felix Geisendörfer and Stuart Knightley. These are minor and backward compatible changes.

# 0.6.1

-   The reason a connection was closed is now communicated to all pending
    promises that are rejected because of a closed connection.  (@felixge)
    These errors now have a `cause` property, for the original `Error`.
-   Adds support for an `onmessagelost` option that will be invoked if a message
    is sent to a non-existent promise. This can occur if the promise is
    collected from the LRU. (@stuk)
-   Ensures that the service root object for a connection is never evicted from
    the LRU cache of local promises. (@stuk)
-   The `capacity` option takes over for the former `max` option, setting the
    capacity of the LRU for cached promises.


Work continues to bring about a next major version of Q-Connection, in the v2 branch. The new Q-Connection is factored with the next versions of Q and Q-IO.

Q-Connection will no longer implicitly adapt various known message transports like WebSockets and child processes. Q-Connection will only accept a promise stream. Q-IO’s v2 branch now has various constructors for proper promise streams, including WebStream (for WebSockets, MessagePort, and probably WebRTC’s message transport), WindowStream (for connections negotiated on the window object), and a Node process/child process adaptor. Q-IO v2 also has facilities for easily adapting other kinds of streams and iterables. More to come. The v2 branches are still struggling to come together because I am trying to resolve cyclic dependencies among the various layers of the infrastructure. For example, Jasminum depends on Q, and Q uses Jasminum for its tests.

Kris Kowal
Reply all
Reply to author
Forward
0 new messages