作者:?王仕军
在经历239个Commit,17个小版本迭代之后,功能更强大、性能更稳定、更安全可靠、用户体验更好的ABTNodev1.2.0正式发布了,欢迎大家升级试用!
如果你之前启动过ABTNode,可以直接在ABTNode的配置界面检查升级即可体验最新版。
可能你会好奇,ABTNodev1.2.0都包含了哪些特性?哪些改进?下面我们列出主要的变化和改进。
BreakingChanges
ABTNodev1.2.0里面包含了下面的BreakingChange
@abtnode/cli?安装后会产生两个全局的命令行工具?abtnode?和?blocklet,前者用来管理ABTNode,后者用来操作Blocklet
abtnodedeploy?变成了?blockletdeploy
波卡:链间消息传递格式XCMv2完成由Quarkslab进行的第二次审计:4月8日消息,波卡宣布网络安全公司 Quarkslab 完成对 XCMv2 (链间消息传递格式)的全面第二次审计(之前的审计已由 SRLabs 完成),这次审计的目的是发现潜在的跨链安全或公平问题,包括逻辑错误、拒绝服务以及两条链上的不正确锁定/解锁或销毁/铸造,Quarkslab 没有发现重要的安全问题。经过全面审计,XCMv2 已准备好进行生产发布,而 XCMv3 目前处于开发的最后阶段。
链间消息传递格式 XCM 为 Polkadot 技术堆栈提供了一个基本实用程序。它支持区块链以及 pallets( Substrate 运行时模块)和智能合约(包括跨链桥和分片)之间的无缝通信。[2022/4/8 14:13:26]
abtnodebundle?变成了?blockletbundle
波卡预测协议Optionroom推出治理代币COURT:金色财经报道,据官方Medium文章消息,波卡生态预言机和预测协议Optionroom将推出治理代币COURT 。COURT将参与Optionroom的协议治理,包括预测市场、解决方案、协议建议、Oracle即服务OaaS和未来的产品。治理奖励将以ROOM代币支付,从而使COURT代币供应本质上是通缩的。COURT初始供应量为0 COURT,最大供应量为40,000 COURT,三个月后会达到最大供应量。此外,Optionroom将于3月13日开启流动性挖矿。[2021/3/13 18:41:13]
abtnodeblocklet:*?变成了?blocklet*
ABTNode默认的BlockletRegistry变更为?https://booster.registry.arcblock.io?新Registry启用了AWS的全球CDN加速,下载速度会更快
以太坊域名服务ENS已支持波卡和Kusama地址映射:据官方消息,以太坊域名服务(ENS)已支持波卡Polkadot和Kusama网络的地址。只要钱包集成支持了ENS功能,用户就可以通过向某个特定ENS域名地址发送DOT或者KSM资产,而不是公钥地址。[2020/9/28]
BlockletRegistry
为了更好的Blocklet开发工作流,我们设计和开发了去中心化的BlockletRegistry,所有的官方Blocklet目前都发布到我们官方的BlockletRegistry。新的BlockletRegistry已经具备如下的能力:
验证Blocklet的元信息、发布版本信息、开发者信息、源代码压缩包
存储并以API的形式提供自己Host的所有Blocklet信息,方便ABTNode检索和安装
全球第四大比特币矿池ViaBTC宣布增收管理费,提价高至730%:全球第四大比特币矿池ViaBTC周五通过官网宣布,将对一些客户增收管理费,由此前的6%大幅增加至50%,提价幅度超过730%。此次提价主要是针对该公司的S9合同客户,这些客户使用的是据称最先进、效率最高的挖矿硬件S9 Antminer。[2018/1/12]
接下来我们会继续迭代BlockletRegistry,使其支持经济模型里面的利益分配、支持BlockletRegistry之间的Push和Pull。
团队管理模块
新版的ABTNode包含了更加完善且通用的团队管理功能:
邀请其他用户加入,只需要创建邀请链接,受邀者通过ABTWallet即可加入
更加细粒度的成员管理功能,比如禁用、启用、更改角色,登录时间记录
Blocklet享有和ABTNode完全相同但数据隔离的团队管理,无需自行开发
权限管理模块
在团队管理的基础上我们还增加了基于角色的权限控制,来提高ABTNode的安全性,这非常适合于需要多人来管理和运维一个ABTNode的情形。
当然,这个功能对于Blocklet来说也是通用的,即运行在ABTNode里面的Blocklet天然就有了自己的权限控制模块。
ABTNode的默认权限和安全策略如下图:
Blocklet服务
在团队管理和权限管理的基础上,我们开发了第一个Blocklet服务:用户认证和鉴权服务,省去开发Blocklet过程中需要考虑的用户登录、授权等重复性的工作,这个功能包含两部分:
用户认证:通过DID登录来验证用户身份,不同Blocklet的用户数据完全隔离,并且能通过团队功能来管理Blocklet自己的用户
用户鉴权:通过权限控制模块来管理用户权限,验证用户的权限,实现比较安全的访问控制
当然,对所有的新功能我们都会吃自己的狗粮,目前官方Blocklet中需要登录和鉴权的已经全部切换到为ABTNode提供的服务。
启用了Auth服务的Blocklet安装后会是下面的样子:
如果你想亲自体验启用了Auth服务的Blocklet,可以安装?AuthDemo?或者?KitchenSink,如果你想在自己的Blocklet中使用Auth服务,敬请期待即将发布的文档。
接下来我们会设计并提供更多的Blocklet服务来简化Blocklet的开发,让ABTNode成为真正意义上的DApp操作系统。
其他值得注意的改进
除了上面列出来的大块功能之外,下面这些小改进也值得关注和尝试:
WEBWallet支持:新版的ABTNode能无缝的和?ABTWalletWeb?版本一起工作,包括声明节点、登录
支持从文件系统安装Blocklet:作为从BlockletRegistry安装补充,从URL安装的功能目前支持?http/https/file?三种协议
支持取消等待中的安装任务:之前的版本只能取消下载中的安装
动态调整的安装和启动队列并发数:新版ABTNode会根据宿主机的性能动态调整Blocklet安装和启动两个任务队列的并发数
支持BlockletRequirements:开发者在?blocklet.yml?中可以声明Blocklet的运行环境,比如ABTNode的版本、操作系统、CPU架构
支持查看RoutingEngine的日志:方便查看经由路由引擎的流量、日志
软件质量提升
从技术预览版到v1.2.0,ABTNode已经演化成包括11W+行代码、20+子模块的项目,sloc?的统计结果如下:
为了确保ABTNode的可靠和稳定,我们在CI流程里面增加了代码覆盖率统计,要求每个PR不管新增还是重构不能降低整体的代码覆盖率,在两个月的时间内,整个项目的代码覆盖率从25.2%提升到61.1%,且还在持续改进。
下面是CodeCov的最近90天的覆盖率变化趋势:
此外,为了提高工程师的效率,我们的CI流程全面从Travis切换到了GithubActions,因为后者有更快的执行速度。
欢迎试用反馈
以上,欢迎试用新版,并到这里给我们提建议!
来源:金色财经
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。