Erlang OTP 23.0 候选版本 1

2020年2月27日 · 作者:Henrik Nord

OTP 23 候选版本 1 #

这是 OTP 23 发布之前的三个计划候选版本中的第一个。 此版本的目的是获取用户的反馈。欢迎所有反馈,即使只是说它对你有效。

Erlang/OTP 23 是一个新的主要版本,包含新功能、改进以及一些不兼容之处。

潜在的不兼容性 #

  • SSL: * 完全移除对 SSL 3.0 的支持。
  • TLS 1.3 被添加到默认支持的版本列表中。
  • erl_interface: 移除 erl_interface 中已弃用的部分 (erl_interface.h 和所有前缀为 erl_ 的 C 函数)。
  • 已弃用的 erlang:get_stacktrace/0 BIF 现在返回一个空列表,而不是堆栈跟踪。erlang:get_stacktrace/0 计划在 OTP 24 中移除。

亮点 #

  • 内核中新增一个模块 erpc,它实现了 rpc 模块提供的操作的增强子集。 增强的意义在于,它使得区分返回值、引发的异常和其他错误成为可能。erpc 还比原始的 rpc 实现具有更好的性能和可扩展性。 这是通过利用新引入的 spawn_request() BIF 来实现的。 此外,rpc 模块在可能的情况下利用 erpc 也受益于这些改进。
  • 关于分布式 spawn 操作的可扩展性和性能改进以及新功能。
  • 在二进制匹配中,现在允许要匹配的段的大小是一个保护表达式 (EEP-52)。
  • 当使用 map 进行匹配时,现在 key 可以是保护表达式 (EEP-52)。
  • ssh: 实现了对 TCP/IP 端口转发的支持,又名隧道技术,又名 tcp-forward/direct-tcp。在 OpenSSH 客户端中,这对应于选项 -L 和 -R。
  • 允许在数字字面量中使用下划线以提高可读性。示例:123_456_78916#1234_ABCD
  • shell 中新增用于显示 Erlang 模块、函数和类型文档的函数。这些函数是: * h/1,2,3 – 打印 Module:Function/Arity 的文档。
  • ht/1,2,3 – 打印 Module:Type/Arity 的类型文档。 当构建 Erlang/OTP 文档时,嵌入式文档将作为 docchunks (EEP 48) 创建。
  • kernel: 引入了一个新的实现分布式命名进程组的模块 pg。旧模块 pg2 已弃用,计划在 OTP 24 中移除。
  • 我们用于构建 Windows 包的工具链已使用新的 C++ 编译器、Java 编译器、OpenSSL 库和 wxWidgets 版本进行了升级。我们现在使用 WSL (用于构建的 Windows Linux 子系统),这使得处理构建环境更加容易。

有关更多详细信息,请参见 https://erlang.ac.cn/download/otp_src_23.0-rc1.readme

可以在此处获取 Windows 的预构建版本: https://erlang.ac.cn/download/otp_win32_23.0-rc1.exe https://erlang.ac.cn/download/otp_win64_23.0-rc1.exe

可以在此处浏览在线文档: https://erlang.ac.cn/documentation/doc-11.0-rc1/doc Erlang/OTP 源代码也可以在官方 Erlang 存储库的 GitHub 上找到,https://github.com/erlang/otp