./lang/erlang, Concurrent functional programming language

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 22.1.7, Package name: erlang-22.1.7, Maintainer: pkgsrc-users

Erlang is a programming language which has many features more commonly
associated with an operating system than with a programming language:
concurrent processes, scheduling, memory management, distribution,
networking, etc.

The initial open-source Erlang release contains the implementation of
Erlang, as well as a large part of Ericsson's middleware for building
distributed high-availability systems.


Required to run:
[lang/perl5]

Required to build:
[pkgtools/cwrappers]

Package options: erlang-hipe

Master sites:

SHA1: 92559d0cfb2747627c6a96f0eaf8ebad599dc00e
RMD160: f233669997e442956b1bd74ae90ac6dd2e5f7b05
Filesize: 53680.744 KB

Version history: (Expand)


CVS history: (Expand)


   2019-11-18 21:46:02 by Nia Alarie | Files touched by this commit (9) | Package updated
Log message:
erlang: Update to 22.1.7

Potential Incompatibilities

    Mnesia: Transactions with sticky locks could with async_asym transactions be \ 
committed in the wrong order, since asym transactions are spawned on the remote \ 
nodes. To fix this bug the communication protocol between mnesia nodes had to be \ 
updated, thus mnesia will no longer be able to connect to nodes earlier than \ 
mnesia-4.14 ,first realeased in OTP-19.0.
    Stdlib: Debugging of time-outs in gen_statem has been improved. Starting a \ 
time-out is now logged in sys:log and sys:trace. Running time-outs are visible \ 
in server crash logs, and with sys:get_status. Due to this system events \ 
{start_timer, Action, State} and {insert_timout, Event, State} have been added, \ 
which may surprise tools that rely on the format of these events. New features: \ 
The EventContent of a running time-out can be updated with {TimeoutType, update, \ 
NewEventContent}. Running time-outs can be cancelled with {TimeoutType, cancel} \ 
which is more readable than using Time = infinity.{rel, Name, Vsn, RelApps, \ 
Opts}.

Highlights

Compiler:

    erlc can now automatically use a compile server to avoid starting an Erlang \ 
system for each file to be compiled in a multi-file project. See the \ 
documentation for how to enable it.

Standard libraries:

    SSL: Basic support for TLS 1.3 Client for experimental use. For more \ 
information see the Standards Compliance chapter of the User's Guide.
    crypto: The Message Authentication Codes (MAC) CMAC, HMAC and Poly1305 are \ 
unified into common functions in the New Crypto API. See the manual for CRYPTO. \ 
cipher_info/1 functions returns maps with information about the hash or cipher \ 
in the argument.
   2019-11-03 20:04:09 by Roland Illig | Files touched by this commit (159)
Log message:
lang: align variable assignments

pkglint -Wall -F --only aligned --only indent -r

No manual corrections.
   2019-11-03 19:11:51 by Roland Illig | Files touched by this commit (2)
Log message:
lang/erlang: write _VERSIONS variable in a single line

In the previous version, pkglint would want to indent the continuation
line with a tab. To prevent this, the variable assignment is now printed
in its canonical format.

Just like humans, pkglint does not read the "do not edit" notice at the
top of the file. Maybe it should.
   2019-08-11 15:25:21 by Thomas Klausner | Files touched by this commit (3557) | Package updated
Log message:
Bump PKGREVISIONs for perl 5.30.0
   2019-08-08 13:42:23 by Jonathan Perkin | Files touched by this commit (2) | Package updated
Log message:
erlang: Restore SunOS -shared fix lost in previous update.
   2019-08-01 13:43:01 by Nia Alarie | Files touched by this commit (11) | Package updated
Log message:
erlang: Update to 22.0.7

Erlang/OTP 22 is a new major release with new features and improvements as well \ 
as incompatibilities.

For a deeper dive into the hightligts of the OTP 22 release, you can read our \ 
blog here:

http://blog.erlang.org/OTP-22-Highlights/

Potential Incompatibilities

    gen_* behaviours: If logging of the last N messages through sys:log/2,3 is \ 
active for the server, this log is included in the terminate report.
    reltool: A new element, Opts, can now be included in a rel tuple in the \ 
reltool release specific configuration format: {rel, Name, Vsn, RelApps, Opts}.
    All external pids/ports/refs created by erlang:list_to_pid and similar \ 
functions now compare equal to any other pid/port/ref with same number from that \ 
node.
    The old legacy erl_interface library is deprecated as of OTP 22, and will be \ 
removed in OTP 23. This does not apply to the ei library.
    VxWorks is deprecated as of OTP 22 and will be removed in OTP 23.

Erts:

    Support for Erlang Distribution protocol to split the payload of large \ 
signals into several fragments.
    ETS option write_concurrency now also effects and improves scalability of \ 
ordered_set tables.
    The length/1 BIF used to calculate the length of the list in one go without \ 
yielding, even if the list was very long. Now it yields when called with long \ 
lists.
    A new (still experimental) module socket is introduced. It is implemented as \ 
a NIF and the idea is that it shall be as "close as possible" to the \ 
OS level socket interface.
    Added the NIF function enif_term_type, which helps avoid long sequences of \ 
enif_is_xyz by returning the type of the given term. This is especially helpful \ 
for NIFs that serialize terms, such as JSON encoders, where it can improve both \ 
performance and readability.

Compiler:

    The compiler has been rewritten to internally use an intermediate \ 
representation based on Static Single Assignment (SSA). The new intermediate \ 
representation makes more optimizations possible.
        The binary matching optimizations are now applicable in many more \ 
circumstances than before.
        Type optimizations are now applied across local function calls, and will \ 
remove a lot more redundant type tests than before.
    All compiler options that can be given in the source file can now be given \ 
in the option list on the command line for erlc.
    In OTP 22, HiPE (the native code compiler) is not fully functional. The \ 
reasons for this are new BEAM instructions for binary matching that the HiPE \ 
native code compiler does not support. If erlc is invoked with the +native \ 
option, and if any of the new binary matching instructions are used, the \ 
compiler will issue a warning and produce a BEAM file without native code.

Standard libraries:

    Cover now uses the counters module instead of ets for updating counters. The \ 
new function cover:local_only/0 allows running Cover in a restricted but faster \ 
local-only mode. The increase in speed will vary depending on the type of code \ 
being cover-compiled, as an example the compiler test suite runs more than twice \ 
as fast with the new Cover.
    A simple socket API is provided through the socket module. This is a low \ 
level API that does *not* replace gen_[tcp|udp|sctp]. It is intended to \ 
*eventually* replace the inet driver. It also provides a basic API that \ 
facilitates the implementation of other protocols than TCP, UDP and SCTP. Known \ 
issues are; No support for the Windows OS (currently), a small term leakage. \ 
This feature will be classed as experimental in OTP 22.
    SSL: now uses the new logger API, including log levels and verbose debug logging.
    SSL: Basic support for TLS 1.3 Server for experimental use.
    crypto: The new hash_info/1 and cipher_info/1 functions returns maps with \ 
information about the hash or cipher in the argument.
   2019-07-03 09:26:36 by Nia Alarie | Files touched by this commit (3)
Log message:
Use https for erlang.org
   2019-05-05 23:09:11 by Nia Alarie | Files touched by this commit (1)
Log message:
lang/erlang: Add m4 to USE_TOOLS when erlang-hipe is enabled.