From df130102cdeca8d35fec95a0c926fd1cfec54eab Mon Sep 17 00:00:00 2001 From: Erlang/OTP Date: Tue, 26 Feb 2019 11:28:27 +0100 Subject: Prepare release --- erts/doc/src/erl_nif.xml | 8 +- erts/doc/src/net.xml | 20 ++-- erts/doc/src/notes.xml | 252 +++++++++++++++++++++++++++++++++++++++++++ erts/doc/src/socket.xml | 158 +++++++++++++-------------- erts/emulator/beam/erl_nif.h | 2 +- erts/vsn.mk | 2 +- 6 files changed, 347 insertions(+), 95 deletions(-) (limited to 'erts') diff --git a/erts/doc/src/erl_nif.xml b/erts/doc/src/erl_nif.xml index cc7452bab5..e92d19fffa 100644 --- a/erts/doc/src/erl_nif.xml +++ b/erts/doc/src/erl_nif.xml @@ -1090,7 +1090,7 @@ typedef struct { - int + int enif_compare_pids(const ErlNifPid *pid1, const ErlNifPid *pid2) Compare two pids. @@ -1890,7 +1890,7 @@ enif_inspect_iovec(env, max_elements, term, &tail, &iovec); - int + int enif_is_pid_undefined(const ErlNifPid* pid) Determine if pid is undefined. @@ -2247,7 +2247,7 @@ enif_inspect_iovec(env, max_elements, term, &tail, &iovec); - ERL_NIF_TERM + ERL_NIF_TERM enif_make_monitor_term(ErlNifEnv* env, const ErlNifMonitor* mon) Make monitor term from the given monitor identifier. @@ -3306,7 +3306,7 @@ if (retval & ERL_NIF_SELECT_STOP_CALLED) { - void + void enif_set_pid_undefined(ErlNifPid* pid) Set pid as undefined. diff --git a/erts/doc/src/net.xml b/erts/doc/src/net.xml index bd85594c98..b126c40923 100644 --- a/erts/doc/src/net.xml +++ b/erts/doc/src/net.xml @@ -29,7 +29,7 @@ net.xml - net + net Network interface.

This module provides an API for the network interface.

@@ -69,8 +69,8 @@
- - + + Address-to-name transaltion.

Address-to-name translation in a protocol-independant manner.

@@ -81,10 +81,10 @@
- - - - + + + + Network address and service transation.

Network address and service translation.

@@ -97,7 +97,7 @@
- + Mappings between network interface names and indexes.

Mappings between network interface names and indexes.

@@ -105,7 +105,7 @@
- + Mappings between network interface index and names.

Mappings between network interface index and names.

@@ -113,7 +113,7 @@
- + Get network interface names and indexes.

Get network interface names and indexes.

diff --git a/erts/doc/src/notes.xml b/erts/doc/src/notes.xml index 3473a12526..582ad2e9fe 100644 --- a/erts/doc/src/notes.xml +++ b/erts/doc/src/notes.xml @@ -31,6 +31,258 @@

This document describes the changes made to the ERTS application.

+
Erts 11.0 + +
Fixed Bugs and Malfunctions + + +

+ Do not allocate new bitstring/binary when an empty binary + is appended.

+

+ Own Id: OTP-15535 Aux Id: PR-2055

+
+ +

+ Document that process_info(_, current_function) + can return {current_function, undefined} in case + of execution of native code.

+

+ Own Id: OTP-15543 Aux Id: PR-2089

+
+
+
+ + +
Improvements and New Features + + +

+ Add support for Erlang Distribution protocol to split the + payload of large signals into several fragments. This + allows other processes to communicate uninterrupted + during the transmission of these signals.

+

+ Own Id: OTP-13397

+
+ +

+ A simple socket API has been provided through the socket + module. Known issues are; No support for the Windows OS + (currently), a small term leakage.

+

+ Own Id: OTP-14831

+
+ +

Added NIF functions enif_set_pid_undefined, + enif_is_pid_undefined + and enif_compare_pids.

+

+ Own Id: OTP-15011 Aux Id: PR-2147

+
+ +

Underutilized memory segments (carriers) can now move + between all allocator instances, rather than just between + instances of the same type, which greatly reduces memory + usage in some scenarios.

+

+ Own Id: OTP-15063

+
+ +

The emulator will now mark free blocks in pooled + carriers with madvise(2) + MADV_FREE (or similar), + letting the OS reclaim the associated physical memory if + necessary.

+

+ Own Id: OTP-15075

+
+ +

+ New ERL_NIF_SELECT_CANCEL feature added to + enif_select in order to cancel (or "deselect") a + read or write event on a previously selected file + descriptor.

+

+ Own Id: OTP-15095

+
+ +

+ ETS option write_concurrency now also affects and + improves the scalability of ordered_set tables. + The implementation is based on a data structure called + contention adapting search tree, where the lock + granularity adapts to the actual amount of concurrency + exploited by the applications in runtime.

+

+ Own Id: OTP-15128

+
+ +

+ Build configuration of the crypto application has + been moved from the erts application into the + crypto application.

+

+ Own Id: OTP-15129

+
+ +

Anonymous functions that don't capture environment are + now created at load-time instead of in run-time.

+

+ Own Id: OTP-15195 Aux Id: PR-1812

+
+ +

+ Optimize updates of maps with identical keys and values. + E.g. in the example below the original Map will be reused + as the return of the update.

+

+ 1> Map = #{ a => b }. #{ a => b } 2> Map#{ a := b }.

+

+ Own Id: OTP-15211 Aux Id: PR-1889

+
+ +

+ Optimize binary:match/2 and + binary:matches/2 to use memchr internally.

+

+ Own Id: OTP-15238 Aux Id: PR-1803

+
+ +

+ The runtime system used to terminate when a message + larger than 2 Gb was passed over the distribution. The + send operation will now instead throw a + system_limit exeption.

+

+ Own Id: OTP-15261

+
+ +

+ Change the first module called by erts to be names + erl_init instead of otp_ring0. systools in sasl have been + updated to reflect this change.

+

+ Own Id: OTP-15336 Aux Id: PR-1825

+
+ +

+ Minor adjustments made to build system for parallel + configure.

+

+ Own Id: OTP-15340 Aux Id: OTP-14625

+
+ +

+ Two new NIF interface functions enif_select_read + and enif_select_write. They are similar to + existing enif_select but allow a custom event + message as argument.

+

+ Own Id: OTP-15349 Aux Id: PR-2084

+
+ +

The embedded copy of zlib has been updated from + 1.2.8 to 1.2.11.

+

Note that this copy is only used as a fallback when + the target platform doesn't provide any zlib + development libraries. If your system provides + zlib then it will be used even if it is older than + 1.2.11.

+

+ Own Id: OTP-15351 Aux Id: ERL-749

+
+ +

+ New NIF function enif_make_monitor_term.

+

+ Own Id: OTP-15362 Aux Id: PR-2127

+
+ +

Appending lists (The ++ operator) will now yield + properly on large inputs.

+

+ Own Id: OTP-15427

+
+ +

The length/1 BIF used to calculate the length + of the list in one go without yielding, even if the list + was very long. In OTP 22, length/1 will yield when + called with a long lists.

+

+ Own Id: OTP-15439

+
+ +

The transitory emulator option +ztma true + (introduced in OTP 21.3) has been removed.

+

+ Own Id: OTP-15581 Aux Id: OTP-15580

+
+ +

+ The termination behaviour of processes has changed to + allow processes to yield while sending link exit/monitor + down signals.

+

+ Own Id: OTP-15610

+
+ +

+ The dist messages EXIT, EXIT2 and MONITOR_DOWN have been + updated with new versions that send the reason term as + part of the payload of the message instead of as part of + the control message.

+

+ The old versions are still present and can be used when + communicating with nodes that don't support the new + versions.

+

+ Own Id: OTP-15611

+
+ +

+ When sending messages, exit, exit2 and monitor down + distributed signals, the process sending will now yield + appropriately.

+

+ This means that a terminating process will yield and + possibly be suspended on busy distribution entries while + they are terminating. This means that any memory held by + such processes will not be released until after all + exit/monitor down signals have been sent.

+

+ Own Id: OTP-15612

+
+ +

+ All external pids/ports/refs created by + erlang:list_to_pid and similar functions now compare + equal to any other pid/port/ref with the same number from + that node.

+

+ Before this change they compared differently because the + node creation of the pid/port/ref did not compare equal + to any real pid/port/ref creation.

+

+ *** POTENTIAL INCOMPATIBILITY ***

+

+ Own Id: OTP-15613

+
+ +

The iolist_size/1 function is now yielding + which means that an Erlang/OTP system will be responsive + even if the applications running on the system frequently + call iolist_size/1 with large iolists.

+

+ Own Id: OTP-15631

+
+
+
+ +
+
Erts 10.2.4
Fixed Bugs and Malfunctions diff --git a/erts/doc/src/socket.xml b/erts/doc/src/socket.xml index caf7058b34..9af7c2f8a7 100644 --- a/erts/doc/src/socket.xml +++ b/erts/doc/src/socket.xml @@ -29,7 +29,7 @@ socket.xml - socket + socket Socket interface.

This module provides an API for the socket interface. @@ -251,8 +251,8 @@ - - + + Accept a connection on a socket.

Accept a connection on a socket.

@@ -264,7 +264,7 @@ - + Bind a name to a socket.

Bind a name to a socket.

@@ -277,7 +277,7 @@
- + Close a socket.

Closes the socket.

@@ -296,8 +296,8 @@
- - + + Initiate a connection on a socket.

This function connects the socket to the address @@ -306,13 +306,13 @@ - - - - - - - + + + + + + + Get an option on a socket.

Get an option on a socket.

@@ -332,7 +332,7 @@
- + Get an option on a socket.

Get an option on a socket.

@@ -354,8 +354,8 @@
- - + + Listen for connections on a socket.

Listen for connections on a socket.

@@ -363,9 +363,9 @@
- - - + + + Create an endpoint for communication.

Creates an endpoint (socket) for communication.

@@ -385,7 +385,7 @@
- + Get name of connected socket peer.

Returns the address of the peer connected to the socket.

@@ -393,11 +393,11 @@
- - - - - + + + + + Receive a message from a socket.

Receive a message from a socket.

@@ -408,12 +408,12 @@
- - - - - - + + + + + + Receive a message from a socket.

Receive a message from a socket.

@@ -432,12 +432,12 @@
- - - - - - + + + + + + Receive a message from a socket.

Receive a message from a socket.

@@ -468,10 +468,10 @@
- - - - + + + + Send a message on a socket.

Send a message on a connected socket.

@@ -479,10 +479,10 @@
- - - - + + + + Send a message on a socket.

Send a message on a socket. The destination, if needed @@ -503,10 +503,10 @@ - - - - + + + + Send a message on a socket.

Send a message on a socket, to the specified destination.

@@ -514,13 +514,13 @@
- - - - - - - + + + + + + + Set options on a socket.

Set options on a socket.

@@ -543,7 +543,7 @@
- + Set options on a socket.

Set options on a socket.

@@ -566,7 +566,7 @@
- + Shut down part of a full-duplex connection.

Shut down all or part of a full-duplex connection.

@@ -574,7 +574,7 @@
- + Get socket name.

Returns the current address to which the socket is bound.

@@ -582,25 +582,25 @@
- - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + Report info about what the platform supports.

This function intends to retreive information about what the diff --git a/erts/emulator/beam/erl_nif.h b/erts/emulator/beam/erl_nif.h index 3fd1a8fd4c..3d8e653cf4 100644 --- a/erts/emulator/beam/erl_nif.h +++ b/erts/emulator/beam/erl_nif.h @@ -63,7 +63,7 @@ * with ticket syntax like "erts-@OTP-12345@", or a temporary placeholder * between two @ like "erts-@MyName@", if you don't know what a ticket is. */ -#define ERL_NIF_MIN_ERTS_VERSION "erts-@OTP-15095@ (OTP-22)" +#define ERL_NIF_MIN_ERTS_VERSION "erts-11.0 (OTP-22)" /* * The emulator will refuse to load a nif-lib with a major version diff --git a/erts/vsn.mk b/erts/vsn.mk index e4bdb1a8eb..265f523331 100644 --- a/erts/vsn.mk +++ b/erts/vsn.mk @@ -18,7 +18,7 @@ # %CopyrightEnd% # -VSN = 10.2.4 +VSN = 11.0 # Port number 4365 in 4.2 # Port number 4366 in 4.3 -- cgit v1.2.3