summaryrefslogtreecommitdiff
path: root/lib/kernel
diff options
context:
space:
mode:
Diffstat (limited to 'lib/kernel')
-rw-r--r--lib/kernel/doc/src/erpc.xml18
-rw-r--r--lib/kernel/doc/src/gen_sctp.xml6
-rw-r--r--lib/kernel/doc/src/inet.xml6
-rw-r--r--lib/kernel/doc/src/notes.xml250
-rw-r--r--lib/kernel/src/kernel.app.src2
-rw-r--r--lib/kernel/src/kernel.appup.src26
-rw-r--r--lib/kernel/vsn.mk2
7 files changed, 36 insertions, 274 deletions
diff --git a/lib/kernel/doc/src/erpc.xml b/lib/kernel/doc/src/erpc.xml
index a7b2c7fe1f..7b1791765c 100644
--- a/lib/kernel/doc/src/erpc.xml
+++ b/lib/kernel/doc/src/erpc.xml
@@ -383,7 +383,7 @@
</func>
<func>
- <name name="check_response" arity="3" since="OTP 25.0"/>
+ <name name="check_response" arity="3" since="OTP @OTP-17784@"/>
<fsummary>Check if a message is a response corresponding to a
previously sent call request.</fsummary>
<desc>
@@ -704,7 +704,7 @@ my_call(Node, Module, Function, Args, Timeout) ->
</func>
<func>
- <name name="receive_response" arity="3" since="OTP 25.0"/>
+ <name name="receive_response" arity="3" since="OTP @OTP-17784@"/>
<fsummary>Receive a call response corresponding to a
previously sent call request.</fsummary>
<desc>
@@ -788,7 +788,7 @@ my_call(Node, Module, Function, Args, Timeout) ->
</func>
<func>
- <name name="reqids_add" arity="3" since="OTP 25.0"/>
+ <name name="reqids_add" arity="3" since="OTP @OTP-17784@"/>
<fsummary>Save a request identifier.</fsummary>
<desc>
<p>
@@ -801,7 +801,7 @@ my_call(Node, Module, Function, Args, Timeout) ->
</func>
<func>
- <name name="reqids_new" arity="0" since="OTP 25.0"/>
+ <name name="reqids_new" arity="0" since="OTP @OTP-17784@"/>
<fsummary>Create a new empty request identifier collection.</fsummary>
<desc>
<p>
@@ -831,7 +831,7 @@ my_call(Node, Module, Function, Args, Timeout) ->
</func>
<func>
- <name name="reqids_size" arity="1" since="OTP 25.0"/>
+ <name name="reqids_size" arity="1" since="OTP @OTP-17784@"/>
<fsummary>Get size of a request identifier collection.</fsummary>
<desc>
<p>
@@ -842,7 +842,7 @@ my_call(Node, Module, Function, Args, Timeout) ->
</func>
<func>
- <name name="reqids_to_list" arity="1" since="OTP 25.0"/>
+ <name name="reqids_to_list" arity="1" since="OTP @OTP-17784@"/>
<fsummary>Get a list a request identifier/label associations in a collection.</fsummary>
<desc>
<p>
@@ -944,7 +944,7 @@ my_call(Node, Module, Function, Args, Timeout) ->
</func>
<func>
- <name name="send_request" arity="4" clause_i="2" since="OTP 25.0"/>
+ <name name="send_request" arity="4" clause_i="2" since="OTP @OTP-17784@"/>
<fsummary>Send a request to evaluate a function call on a node.</fsummary>
<desc>
<p>
@@ -971,7 +971,7 @@ my_call(Node, Module, Function, Args, Timeout) ->
</func>
<func>
- <name name="send_request" arity="6" since="OTP 25.0"/>
+ <name name="send_request" arity="6" since="OTP @OTP-17784@"/>
<fsummary>Send a request to evaluate a function call on a node.</fsummary>
<desc>
<p>
@@ -1079,7 +1079,7 @@ my_call(Node, Module, Function, Args, Timeout) ->
</func>
<func>
- <name name="wait_response" arity="3" since="OTP 25.0"/>
+ <name name="wait_response" arity="3" since="OTP @OTP-17784@"/>
<fsummary>Wait or poll for a call response corresponding to a previously
sent call request.</fsummary>
<desc>
diff --git a/lib/kernel/doc/src/gen_sctp.xml b/lib/kernel/doc/src/gen_sctp.xml
index f340a573e5..f8b5530069 100644
--- a/lib/kernel/doc/src/gen_sctp.xml
+++ b/lib/kernel/doc/src/gen_sctp.xml
@@ -305,7 +305,7 @@ connect(Socket, Ip, Port>,
</func>
<func>
- <name name="connectx_init" arity="3" since="OTP 25.0"/>
+ <name name="connectx_init" arity="3" since="OTP @OTP-17951@"/>
<fsummary>Same as <c>connectx_init(Socket, SockAddrs, Opts, infinity)</c>..</fsummary>
<desc>
<p>Similar to
@@ -320,7 +320,7 @@ connect(Socket, Ip, Port>,
</func>
<func>
- <name name="connectx_init" arity="4" since="OTP 25.0"/>
+ <name name="connectx_init" arity="4" since="OTP @OTP-17951@"/>
<fsummary>Same as <c>connectx_init(Socket, Addrs, Port, Opts, infinity)</c>..</fsummary>
<desc>
<p>Same as <c>connectx_init(<anno>Socket</anno>, <anno>Addrs</anno>,
@@ -329,7 +329,7 @@ connect(Socket, Ip, Port>,
</func>
<func>
- <name name="connectx_init" arity="5" since="OTP 25.0"/>
+ <name name="connectx_init" arity="5" since="OTP @OTP-17951@"/>
<fsummary>Initiate a new association for socket <c>Socket</c>, with a
peer (SCTP server socket).</fsummary>
<desc>
diff --git a/lib/kernel/doc/src/inet.xml b/lib/kernel/doc/src/inet.xml
index cb709e73c4..145a5a9751 100644
--- a/lib/kernel/doc/src/inet.xml
+++ b/lib/kernel/doc/src/inet.xml
@@ -783,7 +783,7 @@ get_tcpi_sacked(Sock) ->
</func>
<func>
- <name name="is_ip_address" arity="1" since="OTP 25.0"/>
+ <name name="is_ip_address" arity="1" since="OTP @OTP-17923@"/>
<fsummary>Tests if <c>IPAddress</c> is an IPv4 or IPv6 address tuple.</fsummary>
<desc>
<p>Tests if <c>IPAddress</c> is an
@@ -793,7 +793,7 @@ get_tcpi_sacked(Sock) ->
</func>
<func>
- <name name="is_ipv4_address" arity="1" since="OTP 25.0"/>
+ <name name="is_ipv4_address" arity="1" since="OTP @OTP-17923@"/>
<fsummary>Tests if <c>IPAddress</c> is an IPv4 address tuple.</fsummary>
<desc>
<p>Tests if <c>IPAddress</c> is an
@@ -803,7 +803,7 @@ get_tcpi_sacked(Sock) ->
</func>
<func>
- <name name="is_ipv6_address" arity="1" since="OTP 25.0"/>
+ <name name="is_ipv6_address" arity="1" since="OTP @OTP-17923@"/>
<fsummary>Tests if <c>IPAddress</c> is an IPv6 address tuple.</fsummary>
<desc>
<p>Tests if <c>IPAddress</c> is an
diff --git a/lib/kernel/doc/src/notes.xml b/lib/kernel/doc/src/notes.xml
index e9ca4adef6..9219805184 100644
--- a/lib/kernel/doc/src/notes.xml
+++ b/lib/kernel/doc/src/notes.xml
@@ -31,256 +31,6 @@
</header>
<p>This document describes the changes made to the Kernel application.</p>
-<section><title>Kernel 8.4</title>
-
- <section><title>Fixed Bugs and Malfunctions</title>
- <list>
- <item>
- <p>
- The DNS resolver implementation has been rewritten to
- validate replies more thoroughly, and a bit optimized to
- create less garbage.</p>
- <p>
- Own Id: OTP-17323</p>
- </item>
- <item>
- <p>
- The socket option 'reuseaddr' is *no longer* ignored on
- Windows.</p>
- <p>
- Own Id: OTP-17447 Aux Id: GH-4819 </p>
- </item>
- <item>
- <p>
- Fix bug where using the atoms <c>string</c> or
- <c>report</c> as the format when calling
- <c>logger:log(Level, Format, Args)</c> (or any other
- logging function) would cause a crash or incorrect
- logging.</p>
- <p>
- Own Id: OTP-17551 Aux Id: GH-5071 PR-5075 </p>
- </item>
- <item>
- <p> As of OTP 25, <c>global</c> will by default prevent
- overlapping partitions due to network issues by actively
- disconnecting from nodes that reports that they have lost
- connections to other nodes. This will cause fully
- connected partitions to form instead of leaving the
- network in a state with overlapping partitions. </p> <p>
- Prevention of overlapping partitions can be disabled
- using the <seeapp
- marker="kernel_app#prevent_overlapping_partitions"><c>prevent_overlapping_partitions</c></seeapp>
- <c>kernel(6)</c> parameter, making <c>global</c> behave
- like it used to do. This is, however, problematic for all
- applications expecting a fully connected network to be
- provided, such as for example <c>mnesia</c>, but also for
- <c>global</c> itself. A network of overlapping partitions
- might cause the internal state of <c>global</c> to become
- inconsistent. Such an inconsistency can remain even after
- such partitions have been brought together to form a
- fully connected network again. The effect on other
- applications that expects that a fully connected network
- is maintained may vary, but they might misbehave in very
- subtle hard to detect ways during such a partitioning.
- Since you might get hard to detect issues without this
- fix, you are <i>strongly</i> advised <i>not</i> to
- disable this fix. Also note that this fix <i>has</i> to
- be enabled on <i>all</i> nodes in the network in order to
- work properly. </p>
- <p>
- *** POTENTIAL INCOMPATIBILITY ***</p>
- <p>
- Own Id: OTP-17911 Aux Id: PR-5687, PR-5611, OTP-17843 </p>
- </item>
- <item>
- <p> Starting the helper program for name resolving;
- <c>inet_gethost</c>, has been improved to use an absolute
- file system path to ensure that the right program is
- started. </p><p> If the helper program can not be started
- - the system now halts, to avoid running with a silently
- broken name resolver. </p>
- <p>
- Own Id: OTP-17958 Aux Id: OTP-17978 </p>
- </item>
- </list>
- </section>
-
-
- <section><title>Improvements and New Features</title>
- <list>
- <item>
- <p>
- An Erlang installation directory is now relocatable on
- the file system given that the paths in the
- installation's <c>RELEASES</c> file are paths that are
- relative to the installations root directory. The
- <c>`release_handler:create_RELEASES/4</c> function can
- generate a <c>RELEASES</c> file with relative paths if
- its <c>RootDir</c> parameter is set to the empty string.</p>
- <p>
- Own Id: OTP-17304</p>
- </item>
- <item>
- <p>The following distribution flags are now mandatory:
- <c>DFLAG_BIT_BINARIES</c>, <c>DFLAG_EXPORT_PTR_TAG</c>,
- <c>DFLAG_MAP_TAGS</c>, <c>DFLAG_NEW_FLOATS</c>, and
- <c>DFLAG_FUN_TAGS</c>. This mainly concerns libraries or
- application that implement the distribution protocol
- themselves.</p>
- <p>
- Own Id: OTP-17318 Aux Id: PR-4972 </p>
- </item>
- <item>
- <p>
- Fix <c>os:cmd</c> to work on Android OS.</p>
- <p>
- Own Id: OTP-17479 Aux Id: PR-4917 </p>
- </item>
- <item>
- <p>
- The configuration files <seecom
- marker="erts:erl"><c>.erlang</c></seecom>, <seeguide
- marker="system/reference_manual:distributed"><c>.erlang.cookie</c></seeguide>
- and <seeerl
- marker="stdlib:beam_lib#.erlang.crypt"><c>.erlang.crypt</c></seeerl>
- can now be located in the XDG Config Home directory.</p>
- <p>
- See the documentation for each file and
- <c>filename:basedir/2</c> for more details.</p>
- <p>
- Own Id: OTP-17554 Aux Id: GH-5016 PR-5408 OTP-17821 </p>
- </item>
- <item>
- <p>
- Dynamic node name improvements: <c>erlang:is_alive/0</c>
- changed to return true for pending dynamic node name and
- new function <c>net_kernel:get_state/0</c>.</p>
- <p>
- Own Id: OTP-17558 Aux Id: OTP-17538, PR-5111, GH-5402 </p>
- </item>
- <item>
- <p>
- The types for callback result types in <c>gen_statem</c>
- has bee augmented with arity 2 types where it is possible
- for a callback module to specify the type of the callback
- data, so the callback module can get type validation of
- it.</p>
- <p>
- Own Id: OTP-17589 Aux Id: PR-4926 </p>
- </item>
- <item>
- <p>
- The tagged tuple tests and fun-calls have been optimized
- and are now a little bit cheaper than previously.</p>
- <p>
- These optimizations become possible after making sure
- that all boxed terms have at least one word allocated
- after the arity word. This has been accomplished by
- letting all empty tuples refer to the same empty tuple
- literal which also reduces memory usage for empty tuples.</p>
- <p>
- Own Id: OTP-17608</p>
- </item>
- <item>
- <p>
- A <seeapp
- marker="kernel:kernel_app#net_ticker_spawn_options"><c>net_ticker_spawn_options</c></seeapp>
- <c>kernel</c> configuration parameter with which one can
- set spawn options for the distribution channel ticker
- processes has been introduced.</p>
- <p>
- Own Id: OTP-17617 Aux Id: PR-5069 </p>
- </item>
- <item>
- <p>
- The most, or at least the most used, <seeerl
- marker="kernel:rpc"><c>rpc</c></seeerl> operations now
- require <seeerl marker="kernel:erpc"><c>erpc</c></seeerl>
- support in order to communicate with other Erlang nodes.
- <c>erpc</c> was introduced in OTP 23. That is, <c>rpc</c>
- operations against Erlang nodes of releases prior to OTP
- 23 will fail.</p>
- <p>
- *** POTENTIAL INCOMPATIBILITY ***</p>
- <p>
- Own Id: OTP-17681 Aux Id: PR-5307 </p>
- </item>
- <item>
- <p>
- The new module <c>peer</c> supersedes the <c>slave</c>
- module. The <c>slave</c> module is now deprecated and
- will be removed in OTP 27.</p>
- <p>
- <c>peer</c> contains an extended and more robust API for
- starting erlang nodes.</p>
- <p>
- Own Id: OTP-17720 Aux Id: PR-5162 </p>
- </item>
- <item>
- <p>
- In order to make it easier for the user to manage
- multiple outstanding asynchronous <c>call</c> requests,
- new functionality utilizing request identifier
- collections have been introduced in <seetype
- marker="kernel:erpc#request_id_collection"><c>erpc</c></seetype>,
- <seetype
- marker="stdlib:gen_server#request_id_collection"><c>gen_server</c></seetype>,
- <seetype
- marker="stdlib:gen_statem#request_id_collection"><c>gen_statem</c></seetype>,
- and <seetype
- marker="stdlib:gen_event#request_id_collection"><c>gen_event</c></seetype>.</p>
- <p>
- Own Id: OTP-17784 Aux Id: PR-5792 </p>
- </item>
- <item>
- <p>Type specifications have been added to the
- <c>gen_server</c>, and the documentation has been updated
- to utilize this. </p><p>This surfaced a few type
- violations that has been corrected in <c>global</c>,
- <c>logger_olp</c> and <c>rpc</c>. </p>
- <p>
- Own Id: OTP-17915 Aux Id: PR-5751, GH-2375, GH-2690 </p>
- </item>
- <item>
- <p>
- IP address validation functions <c>is_ipv4_address/1</c>,
- <c>is_ipv6_address/1</c> and <c>is_ip_address/1</c> have
- been added to the module <c>inet</c> in Kernel.</p>
- <p>
- Own Id: OTP-17923 Aux Id: PR-5646 </p>
- </item>
- <item>
- <p>
- An API for multihomed SCTP connect has been added in the
- guise of <c>gen_sctp:connectx_init/*</c></p>
- <p>
- Own Id: OTP-17951 Aux Id: PR-5656 </p>
- </item>
- <item>
- <p>
- [socket] Add encoding of the field hatype of the type
- sockaddr_ll (family 'packet').</p>
- <p>
- Own Id: OTP-17968 Aux Id: OTP-16464 </p>
- </item>
- <item>
- <p>
- Added support for selectable features as described in
- EEP-60. Features can be enabled/disabled during
- compilation with options (ordinary and <c>+term</c>) to
- <c>erlc</c> as well as with directives in the file.
- Similar options can be used to <c>erl</c> for
- enabling/disabling features allowed at runtime. The new
- <c>maybe</c> expression (EEP-49) is fully supported as
- the feature <c>maybe_expr</c>.</p>
- <p>
- Own Id: OTP-17988</p>
- </item>
- </list>
- </section>
-
-</section>
-
<section><title>Kernel 8.3.1</title>
<section><title>Fixed Bugs and Malfunctions</title>
diff --git a/lib/kernel/src/kernel.app.src b/lib/kernel/src/kernel.app.src
index 3c225fd1b2..4c1b60dc8e 100644
--- a/lib/kernel/src/kernel.app.src
+++ b/lib/kernel/src/kernel.app.src
@@ -158,6 +158,6 @@
{shell_docs_ansi,auto}
]},
{mod, {kernel, []}},
- {runtime_dependencies, ["erts-13.0", "stdlib-4.0", "sasl-3.0", "crypto-5.0"]}
+ {runtime_dependencies, ["erts-@OTP-17951@", "stdlib-@OTP-17720@", "sasl-3.0", "crypto-5.0"]}
]
}.
diff --git a/lib/kernel/src/kernel.appup.src b/lib/kernel/src/kernel.appup.src
index 9db2512b60..4f041cda4a 100644
--- a/lib/kernel/src/kernel.appup.src
+++ b/lib/kernel/src/kernel.appup.src
@@ -19,16 +19,23 @@
%%
%% We allow upgrade from, and downgrade to all previous
%% versions from the following OTP releases:
+%% - OTP 22
%% - OTP 23
%% - OTP 24
-%% - OTP 25
%%
%% We also allow upgrade from, and downgrade to all
%% versions that have branched off from the above
%% stated previous versions.
%%
{"%VSN%",
- [{<<"^7\\.0$">>,[restart_new_emulator]},
+ [{<<"^6\\.4$">>,[restart_new_emulator]},
+ {<<"^6\\.4\\.0(?:\\.[0-9]+)+$">>,[restart_new_emulator]},
+ {<<"^6\\.4\\.1(?:\\.[0-9]+)*$">>,[restart_new_emulator]},
+ {<<"^6\\.5$">>,[restart_new_emulator]},
+ {<<"^6\\.5\\.0(?:\\.[0-9]+)+$">>,[restart_new_emulator]},
+ {<<"^6\\.5\\.1(?:\\.[0-9]+)*$">>,[restart_new_emulator]},
+ {<<"^6\\.5\\.2(?:\\.[0-9]+)*$">>,[restart_new_emulator]},
+ {<<"^7\\.0$">>,[restart_new_emulator]},
{<<"^7\\.0\\.0(?:\\.[0-9]+)+$">>,[restart_new_emulator]},
{<<"^7\\.1$">>,[restart_new_emulator]},
{<<"^7\\.1\\.0(?:\\.[0-9]+)+$">>,[restart_new_emulator]},
@@ -50,9 +57,15 @@
{<<"^8\\.2$">>,[restart_new_emulator]},
{<<"^8\\.2\\.0(?:\\.[0-9]+)+$">>,[restart_new_emulator]},
{<<"^8\\.3$">>,[restart_new_emulator]},
- {<<"^8\\.3\\.0(?:\\.[0-9]+)+$">>,[restart_new_emulator]},
- {<<"^8\\.3\\.1(?:\\.[0-9]+)*$">>,[restart_new_emulator]}],
- [{<<"^7\\.0$">>,[restart_new_emulator]},
+ {<<"^8\\.3\\.0(?:\\.[0-9]+)+$">>,[restart_new_emulator]}],
+ [{<<"^6\\.4$">>,[restart_new_emulator]},
+ {<<"^6\\.4\\.0(?:\\.[0-9]+)+$">>,[restart_new_emulator]},
+ {<<"^6\\.4\\.1(?:\\.[0-9]+)*$">>,[restart_new_emulator]},
+ {<<"^6\\.5$">>,[restart_new_emulator]},
+ {<<"^6\\.5\\.0(?:\\.[0-9]+)+$">>,[restart_new_emulator]},
+ {<<"^6\\.5\\.1(?:\\.[0-9]+)*$">>,[restart_new_emulator]},
+ {<<"^6\\.5\\.2(?:\\.[0-9]+)*$">>,[restart_new_emulator]},
+ {<<"^7\\.0$">>,[restart_new_emulator]},
{<<"^7\\.0\\.0(?:\\.[0-9]+)+$">>,[restart_new_emulator]},
{<<"^7\\.1$">>,[restart_new_emulator]},
{<<"^7\\.1\\.0(?:\\.[0-9]+)+$">>,[restart_new_emulator]},
@@ -74,5 +87,4 @@
{<<"^8\\.2$">>,[restart_new_emulator]},
{<<"^8\\.2\\.0(?:\\.[0-9]+)+$">>,[restart_new_emulator]},
{<<"^8\\.3$">>,[restart_new_emulator]},
- {<<"^8\\.3\\.0(?:\\.[0-9]+)+$">>,[restart_new_emulator]},
- {<<"^8\\.3\\.1(?:\\.[0-9]+)*$">>,[restart_new_emulator]}]}.
+ {<<"^8\\.3\\.0(?:\\.[0-9]+)+$">>,[restart_new_emulator]}]}.
diff --git a/lib/kernel/vsn.mk b/lib/kernel/vsn.mk
index 0d66e51f89..817f66720e 100644
--- a/lib/kernel/vsn.mk
+++ b/lib/kernel/vsn.mk
@@ -1 +1 @@
-KERNEL_VSN = 8.4
+KERNEL_VSN = 8.3.1