Pony 0.30.0 发布了,Pony 是一款基于 Actor 模型,能够提供类型、内存、异常、并发多个层面的安全性保证的高性能编程语言。
该版是一个高优先级的 bug 修复版本,它包含了一个可能导致 Pony 程序分段错误的 bug 修复程序,内容如下:
修复因周期检测器视图不一致引起的分段故障:之前,循环检测器最终可能会有一个不一致的 viewref,这将导致分段错误,循环检测器向已被破坏的参与者发送消息,现已修复。
地图插入函数:在进行此更改之前,插入到映射中的代码可能如下所示:
try map.insert("key", 1)? end
try map.insert_if_absent("key", 5)? end
try
map.upsert("key", 1, {(current, provided) => current + provided})?
end
更改之后,可以删除问号和周围的 TRY 表达式,上述区块分别成为:
map.insert("key", 1)
map.insert_if_absent("key", 5)
map.upsert("key", 1, {(current, provided) => current + provided})
从标准库中删除 GLOB:GLOB 包将从标准库中移除,并在 https://github.com/ponylang/glob/ 作为一个独立的库。之所以删除它,是因为它对外部库 libpcre 具有传递依赖,而且这种依赖使得创建发布工件更加困难。为了简化这一操作,其团队从标准库中删除依赖于诸如 pcre 这样的外部库的项。
从标准库中删除 regex 包:之所以删除它,是因为它依赖于外部库 libpcre,而且这种依赖使得创建发布构件更加困难。为了简化这一操作,我们决定从标准库中删除依赖于诸如 pcre 这样的外部库的项。
删除 OpenSSL 作为构建 pony 的要求
停止创建 Buster Debian 包
修复 bug:
- 修复 where DTrace 路径检查
- 修复因周期检测器视图不一致引起的分段故障
详情见发布说明:
https://www.ponylang.io/blog/2019/07/0.30.0-released/
转自 https://www.oschina.net/news/108591/pony-0-30-0-released