<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ranch.git/src, branch 0.4.0</title>
<subtitle>Socket acceptor pool for TCP protocols.
</subtitle>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/ranch.git/'/>
<entry>
<title>Update version to 0.4.0</title>
<updated>2012-08-22T11:17:31+00:00</updated>
<author>
<name>Loïc Hoguin</name>
<email>essen@ninenines.eu</email>
</author>
<published>2012-08-22T11:07:20+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/ranch.git/commit/?id=de9b6f7a707efd308a6d6535d8296c15ea277308'/>
<id>de9b6f7a707efd308a6d6535d8296c15ea277308</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add the 'ranch_protocol' behaviour</title>
<updated>2012-08-20T11:00:55+00:00</updated>
<author>
<name>Loïc Hoguin</name>
<email>essen@ninenines.eu</email>
</author>
<published>2012-08-20T11:00:55+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/ranch.git/commit/?id=9cafa5e675065993c117cd94cc903248f5c97991'/>
<id>9cafa5e675065993c117cd94cc903248f5c97991</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add the 'ranch_transport' behaviour</title>
<updated>2012-08-20T10:44:53+00:00</updated>
<author>
<name>Loïc Hoguin</name>
<email>essen@ninenines.eu</email>
</author>
<published>2012-08-20T10:44:53+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/ranch.git/commit/?id=0d84eda41c460433baa93cd06cb82a3d47cf814c'/>
<id>0d84eda41c460433baa93cd06cb82a3d47cf814c</id>
<content type='text'>
At the same time we make the 'port' option optional, defaulting to 0.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
At the same time we make the 'port' option optional, defaulting to 0.
</pre>
</div>
</content>
</entry>
<entry>
<title>Make ranch_sup the owner of the ranch_server ets table</title>
<updated>2012-08-06T12:35:05+00:00</updated>
<author>
<name>Loïc Hoguin</name>
<email>essen@ninenines.eu</email>
</author>
<published>2012-08-06T12:35:05+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/ranch.git/commit/?id=b186d01367a1a744f6195e071611f97f9cc88f8e'/>
<id>b186d01367a1a744f6195e071611f97f9cc88f8e</id>
<content type='text'>
Should prove itself more robust when things go wrong.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Should prove itself more robust when things go wrong.
</pre>
</div>
</content>
</entry>
<entry>
<title>Check the accept/2 return value for errors</title>
<updated>2012-08-06T12:23:16+00:00</updated>
<author>
<name>Loïc Hoguin</name>
<email>essen@ninenines.eu</email>
</author>
<published>2012-08-06T12:23:16+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/ranch.git/commit/?id=eabb029895c8345ccedc41ed28a023d0e75c7e0e'/>
<id>eabb029895c8345ccedc41ed28a023d0e75c7e0e</id>
<content type='text'>
Distinguish the errors from transport_accept and ssl_accept
in ranch_ssl. {error, closed} for the first one means the listening
socket got closed; for the second one it means the connection
socket was.

Ignore all errors except when the listening socket got closed,
where we want to crash to allow opening the socket again.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Distinguish the errors from transport_accept and ssl_accept
in ranch_ssl. {error, closed} for the first one means the listening
socket got closed; for the second one it means the connection
socket was.

Ignore all errors except when the listening socket got closed,
where we want to crash to allow opening the socket again.
</pre>
</div>
</content>
</entry>
<entry>
<title>Make accept asynchronous</title>
<updated>2012-08-06T11:39:28+00:00</updated>
<author>
<name>Loïc Hoguin</name>
<email>essen@ninenines.eu</email>
</author>
<published>2012-08-06T11:39:28+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/ranch.git/commit/?id=6b354c1124035c54b6648665aafbe7197b34bd0e'/>
<id>6b354c1124035c54b6648665aafbe7197b34bd0e</id>
<content type='text'>
Ranch now accepts connection asynchronously through a separate
process. The accept process is linked to the acceptor, calls
accept and does nothing else but send the socket back to the
acceptor. This allows us to receive messages in the acceptor
to handle upgrades instead of polling. This will also allow us
later to make acceptors system processes.

Remove support for connection pools in favor of a simpler
max_connections setting. Connections can be removed from the
count, allowing us to have as many long-lived connections as
we want while still limiting the number of short-lived ones.

Add max_connections, max_connections with long-lived connections,
and upgrade tests.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Ranch now accepts connection asynchronously through a separate
process. The accept process is linked to the acceptor, calls
accept and does nothing else but send the socket back to the
acceptor. This allows us to receive messages in the acceptor
to handle upgrades instead of polling. This will also allow us
later to make acceptors system processes.

Remove support for connection pools in favor of a simpler
max_connections setting. Connections can be removed from the
count, allowing us to have as many long-lived connections as
we want while still limiting the number of short-lived ones.

Add max_connections, max_connections with long-lived connections,
and upgrade tests.
</pre>
</div>
</content>
</entry>
<entry>
<title>Make acceptors query the protocol opts on startup</title>
<updated>2012-07-25T19:26:15+00:00</updated>
<author>
<name>Loïc Hoguin</name>
<email>essen@ninenines.eu</email>
</author>
<published>2012-07-25T09:40:30+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/ranch.git/commit/?id=7d52280c2e3fcc9e1b89435c98ef96d4758aed7a'/>
<id>7d52280c2e3fcc9e1b89435c98ef96d4758aed7a</id>
<content type='text'>
This way, if a crash happens in one of them after a protocol options
upgrade has occured, the restarted acceptor will get the upgraded
options as expected, and not the initial ones.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This way, if a crash happens in one of them after a protocol options
upgrade has occured, the restarted acceptor will get the upgraded
options as expected, and not the initial ones.
</pre>
</div>
</content>
</entry>
<entry>
<title>Register acceptors through ranch_server</title>
<updated>2012-07-25T08:57:00+00:00</updated>
<author>
<name>Loïc Hoguin</name>
<email>essen@ninenines.eu</email>
</author>
<published>2012-07-25T08:57:00+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/ranch.git/commit/?id=1d2940b37917a9217338caa4dea37890ac5b96d3'/>
<id>1d2940b37917a9217338caa4dea37890ac5b96d3</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Introduce the ranch_server registry, make it handle listeners</title>
<updated>2012-07-25T08:05:15+00:00</updated>
<author>
<name>Loïc Hoguin</name>
<email>essen@ninenines.eu</email>
</author>
<published>2012-07-24T10:58:54+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/ranch.git/commit/?id=b72fe3e67e65c66d979a9651ebc815bdc553601c'/>
<id>b72fe3e67e65c66d979a9651ebc815bdc553601c</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add support for listening on random port numbers (port 0)</title>
<updated>2012-07-22T03:56:55+00:00</updated>
<author>
<name>Loïc Hoguin</name>
<email>essen@ninenines.eu</email>
</author>
<published>2012-07-22T03:50:10+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/ranch.git/commit/?id=45348170f468fadd73e7541aac5bc6f664475d0d'/>
<id>45348170f468fadd73e7541aac5bc6f664475d0d</id>
<content type='text'>
ranch:get_port/1 returns the given listener's port.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
ranch:get_port/1 returns the given listener's port.
</pre>
</div>
</content>
</entry>
</feed>
