<feed xmlns='http://www.w3.org/2005/Atom'>
<title>cowlib.git/src, branch master</title>
<subtitle>Support library for manipulating Web protocols.
</subtitle>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/cowlib.git/'/>
<entry>
<title>Update to most recent WebTransport draft</title>
<updated>2025-06-25T09:44:09+00:00</updated>
<author>
<name>Loïc Hoguin</name>
<email>essen@ninenines.eu</email>
</author>
<published>2025-06-25T09:44:09+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/cowlib.git/commit/?id=e2d7749f61b89cc6f8779ba66a5a8ab0fe85c827'/>
<id>e2d7749f61b89cc6f8779ba66a5a8ab0fe85c827</id>
<content type='text'>
WEBTRANSPORT -&gt; WT in most places. Only ENABLE_WEBTRANSPORT
remains (since it is a draft-02 setting that was later removed)
as well as internal functions and atoms about stream headers,
for greater clarity.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
WEBTRANSPORT -&gt; WT in most places. Only ENABLE_WEBTRANSPORT
remains (since it is a draft-02 setting that was later removed)
as well as internal functions and atoms about stream headers,
for greater clarity.
</pre>
</div>
</content>
</entry>
<entry>
<title>Initial implementation of HTTP/3 WebTransport</title>
<updated>2025-06-20T11:10:45+00:00</updated>
<author>
<name>Loïc Hoguin</name>
<email>essen@ninenines.eu</email>
</author>
<published>2025-04-15T13:26:43+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/cowlib.git/commit/?id=f8bb8fc23658b6e9decc2b9ed1d33fa31656fe49'/>
<id>f8bb8fc23658b6e9decc2b9ed1d33fa31656fe49</id>
<content type='text'>
This adds support for WebTransport HTTP/3 settings, error codes,
headers, stream types as well as capsules, with an initial
implementation of the Capsule protocol.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This adds support for WebTransport HTTP/3 settings, error codes,
headers, stream types as well as capsules, with an initial
implementation of the Capsule protocol.
</pre>
</div>
</content>
</entry>
<entry>
<title>Make Dialyzer happy again</title>
<updated>2025-04-10T13:24:41+00:00</updated>
<author>
<name>Loïc Hoguin</name>
<email>essen@ninenines.eu</email>
</author>
<published>2025-04-10T13:24:41+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/cowlib.git/commit/?id=11c5540165475c8e9d67ef96609f1a1e3bd252fb'/>
<id>11c5540165475c8e9d67ef96609f1a1e3bd252fb</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add cow_http2_machine:terminate/1 for cleanup</title>
<updated>2025-04-10T13:15:09+00:00</updated>
<author>
<name>Loïc Hoguin</name>
<email>essen@ninenines.eu</email>
</author>
<published>2025-04-10T13:15:09+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/cowlib.git/commit/?id=9c9547971e8935a77a775d4e9208e0781dfda5f8'/>
<id>9c9547971e8935a77a775d4e9208e0781dfda5f8</id>
<content type='text'>
This allows cleaning up timers and avoids receiving
stray timeout messages when reusing a process. This
is otherwise optional since the termination of a
process cleans up the timers.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This allows cleaning up timers and avoids receiving
stray timeout messages when reusing a process. This
is otherwise optional since the termination of a
process cleans up the timers.
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove copyright years from all files except LICENSE</title>
<updated>2025-02-14T15:13:46+00:00</updated>
<author>
<name>Loïc Hoguin</name>
<email>essen@ninenines.eu</email>
</author>
<published>2025-02-14T15:12:41+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/cowlib.git/commit/?id=1f70437d2bbcee94df5849ef9169198e84963a0c'/>
<id>1f70437d2bbcee94df5849ef9169198e84963a0c</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Improve cow_http2:settings/0 type and export it</title>
<updated>2025-02-11T16:53:22+00:00</updated>
<author>
<name>Loïc Hoguin</name>
<email>essen@ninenines.eu</email>
</author>
<published>2025-02-11T16:53:22+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/cowlib.git/commit/?id=f74e175fdf7dd0ec52ffb969fa316f5264ad3f83'/>
<id>f74e175fdf7dd0ec52ffb969fa316f5264ad3f83</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add a function to check remote HTTP/2 setting MAX_CONCURRENT_STREAMS</title>
<updated>2025-02-11T16:32:20+00:00</updated>
<author>
<name>Viktor Söderqvist</name>
<email>viktor.soderqvist@est.tech</email>
</author>
<published>2021-10-28T14:02:58+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/cowlib.git/commit/?id=133ac59000afde558b2d8f630d865c2f7f39565f'/>
<id>133ac59000afde558b2d8f630d865c2f7f39565f</id>
<content type='text'>
This is to be used primarily by a client before initiating a new stream
so that it can respect the setting from the server.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is to be used primarily by a client before initiating a new stream
so that it can respect the setting from the server.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add cow_http_hd:allow/1</title>
<updated>2025-02-10T17:43:17+00:00</updated>
<author>
<name>Loïc Hoguin</name>
<email>essen@ninenines.eu</email>
</author>
<published>2025-02-10T17:43:17+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/cowlib.git/commit/?id=a277d9160cf792fa74b70108d376e6fb65d42056'/>
<id>a277d9160cf792fa74b70108d376e6fb65d42056</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Disable WS compression when only server sets client_max_window_bits</title>
<updated>2025-01-23T10:37:27+00:00</updated>
<author>
<name>Jose M Perez</name>
<email>jose.m.perez.ramos+git@gmail.com</email>
</author>
<published>2021-10-05T16:21:03+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/cowlib.git/commit/?id=8e02c78464c86d427c2bd0bb449d17e7876b9903'/>
<id>8e02c78464c86d427c2bd0bb449d17e7876b9903</id>
<content type='text'>
When the client does not provide the "client_max_window_bits" option,
the server must be able to handle a sliding window of up to 32,768 bytes.

When the server has configured a lower limit than the default, and the
client has not provided the parameter, compression must be disabled.

Co-authored-by: Ignacio Martínez &lt;ignacio.martinez.rivera@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When the client does not provide the "client_max_window_bits" option,
the server must be able to handle a sliding window of up to 32,768 bytes.

When the server has configured a lower limit than the default, and the
client has not provided the parameter, compression must be disabled.

Co-authored-by: Ignacio Martínez &lt;ignacio.martinez.rivera@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Use zlib:safeInflate and limits for Websocket decompression</title>
<updated>2025-01-22T11:27:37+00:00</updated>
<author>
<name>Loïc Hoguin</name>
<email>essen@ninenines.eu</email>
</author>
<published>2025-01-22T11:27:37+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/cowlib.git/commit/?id=e3fbd81fc97c234fd19b29f676593c27f26031d4'/>
<id>e3fbd81fc97c234fd19b29f676593c27f26031d4</id>
<content type='text'>
The `max_inflate_size` value can be configured in the extensions
map to set a limit to the size of the expanded data.

This is done via the previously introduced cow_deflate:inflate/3
function.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The `max_inflate_size` value can be configured in the extensions
map to set a limit to the size of the expanded data.

This is done via the previously introduced cow_deflate:inflate/3
function.
</pre>
</div>
</content>
</entry>
</feed>
