third_party_nghttp2/NEWS
2012-05-13 18:24:09 +09:00

107 lines
3.9 KiB
Plaintext

spdylay 0.2.0
=============
Release Note
------------
This release adds several new APIs. The spdylay_gzip API is suitable
for inflating compressed entity body from the remote endpoint. The
spdylay_submit_window_update() is added to send WINDOW_UPDATE frame by
the application. The spdylay_session_set_option() is a new function
to set options to the library. Currently,
SPDYLAY_OPT_NO_AUTO_WINDOW_UPDATE option is available. If it is set,
the library does not send WINDOW_UPDATE automatically. The application
should send WINDOW_UPDATE using spdylay_submit_window_update(). The
spdylay_strerror() is added and it returns string describing the given
error code. The following new callback functions are added:
spdylay_on_unknown_ctrl_recv_callback and
spdylay_on_ctrl_recv_parse_error_callbacks. They are useful for
debugging and logging errors.
Some changes are made to exsiting interfaces. The status_code
argument was added to spdylay_on_invalid_ctrl_recv_callback.
FRAME_TOO_LARGE was renamed as SPDYLAY_FRAME_TOO_LARGE.
spdylay_data_source_read_callback can now return
SPDYLAY_ERR_TEMPORAL_CALLBACK_FAILURE to signal stream error.
Previously, this function can only return SPDYLAY_ERR_CALLBACK_FAILURE
on error, which signals session error.
Since SPDY/3 is now becoming mainline protocol,
spdylay_select_next_protocol() now prefers spdy/3 to spdy/2.
Some bug fixes are made in flow control and handling max concurrent
streams.
For example programs, the usage output was cleaned up. The -w option
is added to spdycat. This option sets the initial window size bits.
spdycat and spdyd prefer spdy/3 to spdy/2 from this release.
The pkg-config file now includes zlib in Requires.private.
Changes
-------
* Renamed index in spdylay_get_credential_cert prototype to idx This
is because compiler may warn that name `index` shadows global
declaration if the application code uses the prototype argument
names as is.
* Bumped up the library version to 1.0.0 because of the API changes.
* Prefer spdy/3 to spdy/2 in spdyd
* Prefer spdy/3 to spdy/2 in spdylay_select_next_protocol()
* spdylay_data_source_read_callback can now return
SPDYLAY_ERR_TEMPORAL_CALLBACK_FAILURE to signal stream error. The
existing SPDYLAY_ERR_CALLBACK_FAILURE signals session error.
* Renamed error as error_code in spdylay_on_ctrl_not_send_callback
prototype
* Bring back deferred DATA to the outbound queue when SETTINGS with
INITIAL_WINDOW_SIZE is received and the window size becomes
positive.
* Fixed the bug that spdylay_recv does not return SPDYLAY_ERR_EOF.
* Renamed FRAME_TOO_LARGE as SPDYLAY_FRAME_TOO_LARGE
* Added status_code argument to spdylay_on_invalid_ctrl_recv_callback
* Added spdylay_strerror() public API. It returns string describing
the given error code.
* Added spdylay_on_unknown_ctrl_recv_callback. This callback function
is invoked when the unknown frame type is received. Added debug
output using this callback to spdycat.
* Added spdylay_on_ctrl_recv_parse_error_callback. This callback
function is invoked when the received frame data could not be parsed
correctly. Added debug output using this callback to spdycat.
* Added spdylay_submit_window_update() public API.
* Added spdylay_session_set_option() public API. Currently,
SPDYLAY_OPT_NO_AUTO_WINDOW_UPDATE option is available. If it is set,
the library does not send WINDOW_UPDATE automatically. The
application should send WINDOW_UPDATE using
spdylay_submit_window_update().
* Added -w, --window-bits option to spdycat. This option sets the
initial window size bits.
* Having the number of server and client streams be limited separately
using SETTINGS_MAX_CONCURRENT_STREAMS
* Use local_settings' INITIAL_WINDOW_SIZE when deciding to send
WINDOW_UPDATE.
* Added spdylay_gzip API. They are suitable for inflating compressed
entity body from the remote endpoint.
* Added SPDY client example written in C.
* Added zlib to Requires.private and updated Description