aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLoïc Hoguin <[email protected]>2025-02-14 13:33:01 +0100
committerLoïc Hoguin <[email protected]>2025-02-14 13:33:01 +0100
commit9c8520ab8e9c6f3890ac3251d04fbe0b9514940f (patch)
tree5283ddf388097ddef0136156a3068da6338aa618
parent0923a1b9f8abfdf8ea8331fcd4a55436e9eab344 (diff)
downloadranch-9c8520ab8e9c6f3890ac3251d04fbe0b9514940f.tar.gz
ranch-9c8520ab8e9c6f3890ac3251d04fbe0b9514940f.tar.bz2
ranch-9c8520ab8e9c6f3890ac3251d04fbe0b9514940f.zip
Ranch 2.2.0HEAD2.2.0master
-rw-r--r--Makefile6
-rw-r--r--README.asciidoc4
-rw-r--r--doc/src/guide/book.asciidoc2
-rw-r--r--doc/src/guide/migrating_from_2.1.asciidoc49
-rw-r--r--doc/src/manual/ranch_transport.asciidoc1
-rw-r--r--ebin/ranch.app2
6 files changed, 58 insertions, 6 deletions
diff --git a/Makefile b/Makefile
index 05aba8a..07c75cb 100644
--- a/Makefile
+++ b/Makefile
@@ -2,7 +2,7 @@
PROJECT = ranch
PROJECT_DESCRIPTION = Socket acceptor pool for TCP protocols.
-PROJECT_VERSION = 2.1.0
+PROJECT_VERSION = 2.2.0
PROJECT_REGISTERED = ranch_server
# Options.
@@ -39,8 +39,8 @@ define HEX_TARBALL_EXTRA_METADATA
#{
licenses => [<<"ISC">>],
links => #{
- <<"User guide">> => <<"https://ninenines.eu/docs/en/ranch/2.1/guide/">>,
- <<"Function reference">> => <<"https://ninenines.eu/docs/en/ranch/2.1/manual/">>,
+ <<"User guide">> => <<"https://ninenines.eu/docs/en/ranch/2.2/guide/">>,
+ <<"Function reference">> => <<"https://ninenines.eu/docs/en/ranch/2.2/manual/">>,
<<"GitHub">> => <<"https://github.com/ninenines/ranch">>,
<<"Sponsor">> => <<"https://github.com/sponsors/essen">>
}
diff --git a/README.asciidoc b/README.asciidoc
index 05efaf0..fb8d96a 100644
--- a/README.asciidoc
+++ b/README.asciidoc
@@ -19,8 +19,8 @@ to close any of the currently opened sockets.
== Online documentation
-* https://ninenines.eu/docs/en/ranch/2.1/guide[User guide]
-* https://ninenines.eu/docs/en/ranch/2.1/manual[Function reference]
+* https://ninenines.eu/docs/en/ranch/2.2/guide[User guide]
+* https://ninenines.eu/docs/en/ranch/2.2/manual[Function reference]
== Offline documentation
diff --git a/doc/src/guide/book.asciidoc b/doc/src/guide/book.asciidoc
index ce3071e..cde3335 100644
--- a/doc/src/guide/book.asciidoc
+++ b/doc/src/guide/book.asciidoc
@@ -29,6 +29,8 @@ include::internals.asciidoc[Internals]
= Additional information
+include::migrating_from_2.1.asciidoc[Migrating from Ranch 2.1 to 2.2]
+
include::migrating_from_2.0.asciidoc[Migrating from Ranch 2.0 to 2.1]
include::migrating_from_1.7.asciidoc[Migrating from Ranch 1.7 to 2.0]
diff --git a/doc/src/guide/migrating_from_2.1.asciidoc b/doc/src/guide/migrating_from_2.1.asciidoc
new file mode 100644
index 0000000..7cec7c8
--- /dev/null
+++ b/doc/src/guide/migrating_from_2.1.asciidoc
@@ -0,0 +1,49 @@
+[appendix]
+== Migrating from Ranch 2.1 to Ranch 2.2
+
+Ranch 2.2 is a maintenance release containing a small number
+of fixes and improvements.
+
+Ranch 2.2 is tested with Erlang/OTP 24.0 onward, although it
+should be compatible with Erlang/OTP 22.0 and above.
+
+=== Features added
+
+* `DTLS` is now supported.
+
+* The `certs_keys` option from `ssl` is now accepted
+ and documented.
+
+* The `UNIQUE_ID` PROXY protocol header extension is
+ now supported.
+
+* The `ranch_transport` behavior has a new callback
+ `format_error/1` which allows finer grained formatting
+ of Ranch's error messages. The callback is currently
+ optional and will become required in Ranch 3.0.
+
+=== Changed behaviors
+
+* Ranch will now obfuscate certificates, keys and passwords
+ in the error message produced on listen error.
+
+* The exception reason when a connection process has failed
+ its handshake has been changed to `{shutdown, {Reason, PeerInfo}}`
+ where `PeerInfo` contains the peer name when available.
+
+* The `{packet, raw}` socket option is no longer set explicitly,
+ as this is already the default value.
+
+=== Bugs fixed
+
+* `ranch:stop_listener/1` will now return an error instead
+ of throwing an exception when the listener does not exist.
+
+* Fix `ranch:recv_proxy_header/2` for the upcoming Erlang/OTP 28.
+
+* Ensure that a user crash while stopping a listener does
+ not prevent a subsequent attempt to stop it.
+
+* Alarm option `threshold` was mispelled in Ranch 2.1. This
+ has been corrected. The wrong spelling `treshold` is still
+ accepted and will be removed in Ranch 3.0.
diff --git a/doc/src/manual/ranch_transport.asciidoc b/doc/src/manual/ranch_transport.asciidoc
index 4717281..a4c90d0 100644
--- a/doc/src/manual/ranch_transport.asciidoc
+++ b/doc/src/manual/ranch_transport.asciidoc
@@ -354,6 +354,7 @@ The exact type will vary depending on the transport module.
== Changelog
+* *2.2*: The callback `format_error/1` was added.
* *2.0*: The callback `listen/1` has changed to accept a map of
transport options instead of socket options.
* *2.0*: The callback `messages/0` return value was updated to
diff --git a/ebin/ranch.app b/ebin/ranch.app
index 4aa41cf..4202fc6 100644
--- a/ebin/ranch.app
+++ b/ebin/ranch.app
@@ -1,6 +1,6 @@
{application, 'ranch', [
{description, "Socket acceptor pool for TCP protocols."},
- {vsn, "2.1.0"},
+ {vsn, "2.2.0"},
{modules, ['ranch','ranch_acceptor','ranch_acceptors_sup','ranch_app','ranch_conns_sup','ranch_conns_sup_sup','ranch_crc32c','ranch_embedded_sup','ranch_listener_sup','ranch_protocol','ranch_proxy_header','ranch_server','ranch_server_proxy','ranch_ssl','ranch_sup','ranch_tcp','ranch_transport']},
{registered, [ranch_sup,ranch_server]},
{applications, [kernel,stdlib,ssl]},