OTP 23版本

2020-05-13 22:05:35

Erlang/OTP23是一个新的主要版本,具有新的特性、改进以及一些不兼容之处。

ERL_INTERFACE:删除了erl_interface(erl_interface.h和基本上所有前缀为erl_的C函数)中不推荐使用的部分。

不建议使用的erlang:get_stacktrace/0BIF现在返回一个空列表,而不是堆栈跟踪。Erlang:在OTP24中计划删除get_stacktrace/0。

OpenSSH6.5引入了一种新的密钥文件表示形式,称为openssh-key-v1。现在支持这一点,但处理加密密钥除外。

算法配置现在可以在.config文件中完成。例如,这对于在不需要更改代码的情况下启用默认禁用的算法很有用。

对中间盒兼容模式的支持使TLS 1.3握手看起来更像TLS 1.2握手,并增加了通过传统中间盒成功建立TLS 1.3连接的机会。

在不依赖EPMD的情况下运行Erlang分发的可能性已经扩展。为了实现这一点,向inet发行版添加了几个新选项。

已经实现了到gen_tcp和inet的第一个实验性套接字后端。gen_udp和gen_sctp将紧随其后。将{inet_backend,socket}作为侦听()或连接()的第一选项,可以轻松地在现有代码中尝试此操作

内核中的一个新模块ERPC,它实现了RPC模块提供的操作的增强子集。增强的意义在于它可以区分返回值、引发的异常和其他错误。与原始的RPC实现相比,ERPC还具有更好的性能和可伸缩性。这是通过利用新引入的SPOWN_REQUEST()BIF实现的。此外,RPC模块还在可能的情况下利用ERPC从这些改进中受益。

在二进制匹配中,现在要匹配的段的大小被允许为保护表达式(EEP-52)。

SSH:支持TCP/IP端口转发,也称为TCP-FORWARD/DIRECT-TCP的隧道。在OpenSSH客户端中,这对应于选项-L和-R。

shell中的新函数,用于显示Erlang模块、函数和类型的文档。这些功能包括:

HT/1,2,3--打印模块的类型文档:类型/数量。在构建Erlang/OTP文档时,嵌入式文档被创建为坞块(EEP 48)。

内核:介绍了具有新的分布式命名进程组实现的模块PG。旧模块PG2被弃用,并计划在OTP24中移除。

我们用于构建Windows包的工具链使用了新的C++编译器、Java编译器、OpenSSL库和wxWidgets版本进行了升级。我们现在使用WSL(构建时用于Windows的Linux子系统),这使得处理构建环境变得更容易。

可以在这里浏览在线文档:http://erlang.org/documentation/doc-11.0/doc也可以在官方Erlang存储库https://github.com/erlang/otp的gihub上找到erlang/ospp源代码