全力迎接Neo全新版本上线|Neo月报
共 5593字,需浏览 12分钟
·
2021-03-16 17:23
对于Neo开发者们来说,二月是忙碌而充实的——在所有人的不懈努力下,Neo3 Preview5终于在二月初正式上线了,并且开展了对新功能的分布式测试。
作为目前为止功能最完善的Neo版本,Preview5提供了基于MPT的状态服务和自动剪枝功能,从而确保块的数据执行结果一致,同时尽可能地降低状态膨胀。
Neo3 Preview5还添加了新的功能插件——域名服务。除了与一般合约或钱包的地址绑定外,还能与传统IP域名相兼容。用户可以通过域名服务以简单好记的域名取代复杂的公共地址,这大大提升了Neo平台的用户体验。
根据最新进度,Neo3测试网最终版预计将于三月下旬上线,主网将在六月左右发布。在此期间,核心开发者们将致力于网络稳定所需的迭代更新,而社区开发者们则会致力于对其工具和基础设施进行更新和集成。
以下是本月的完整月报:
协议开发
StateRoot
二月,核心开发者们依旧致力于向StateRoot中添加特性,同时修复bug。
一个PR向StateRoot添加了P2P功能插件,包括用于发送签名的ExtensiblePayload(#512);另一个PR则对StateRoot见证人可以为空(#525)的错误逻辑进行了纠正。
上述两处变更均已经合并至主版本中,此外,还有两个额外改动被送审。这些新变更的效果将在启用StateRoot控制台命令(#528)和修复哈希计算逻辑(#529)之前分别进行检查。
NeoFS 移植
NeoFS的参考实现是用Go节点编写的,因此在二月,NGD依旧致力于将相关逻辑移植到C#中,从而与运行核心客户端节点的无缝集成。截止月底,我们已经完成了neofs-api-csharp的更新,并解决了一些bug。NeoFS和Oracle模块的集成正在审查中(#518)。
其他基础设施影响
二月,两个新的操作码——POW和SQRT——被添加进了Neo合约系统中,分别用来计算一个值的幂和平方根。这大大简化了与这类计算相关的智能合约开发。此外,Neo core、虚拟机和网络开发包中的相应逻辑业已全部更新完毕(#399、#2359、#472)。
另一个PR(#2300)从原生Policy合约中移除了一些特定共识设置,如每个块的最大交易量和最大大小,然后将其添加进dBFT插件的配置文件中,在协调更新节点时予以增强。
原生合约的历史也实现了更新(#2332),增加了新的支持版本,同时允许原生合约根据其更新历史中声明的区块高度进行部署。
此外,团队还在PR(#2323)中允许插件在多个Neo系统中进行工作,这使得在单个进程中运行neo和neofs成为了可能。
其他改进包括进一步清理和简化代码库。比如从neo-core(#2302)中移除单例,以及对系统调度费进行调整(#2331)使其标准化。在此过程中,为了便于计算费用,我们还对CPU费用和存储费用进行了区分。此外,签名和签名检查功能已更新完毕(#2331)。需要注意的是,由于签名脚本结构有更改,以前的Neo3钱包地址将与Preview 5版本不兼容。
基础设施与工具开发
月度看点
Flamingo
经社区投票批准,团队完成了FIP#2所述升级开发,并为启动资产迁移做好了准备。
COZ
开放了对Neon钱包的手机app的测试,并发布了兼容Preview5和智能合约示例的Boa v0.7版本。
Neo Tracker
发布了兼容Preview 4的NEO•ONE 安装包,其中包括一个TypeScript合约编译器。此外,与Preview 5的兼容工作也取得了重大进展。
AxLabs
为Java开发人员发布了与Preview 5兼容的neow3j SDK、编译器和开发包版本,并开始着手Neo3 RC1的下一次迭代更新。
NEXT
完成了与Preview5兼容的产品升级,并对NeoTube explorer做了一些优化。
Neo SPCC
发布了与Preview5兼容的NeoGo,在NeoFS服务中加入了基本收入结算、存储节点的垃圾回收和CDN缓存失效。
Neo Research
添加了几乎所有NeoCompiler Eco所需要的Neo3功能,使用户能够通过web服务编写、编译、部署或者调用智能合约。
NGD Enterprise
使Neo区块链工具包组件获得了Preview5支持,并开始着手一个新的战略项目的原型设计工作。
Red4Sec
团队正在继续着手对Neo3的审计工作,并提交了一份关于Preview5代码的审查报告,其中披露了三个正在弥补的新漏洞。
项目里程碑
● DeFi
来自 NGD 的 Flamingo
- https://flamingo.finance/
二月初,Flamingo团队与社区进行了密切接触,通过文章与AMA等形式对FIP#2中提出的修改建议进行了详细的解释和说明。在提案获得批准之后,团队将关注点转移到了新功能的开发上,并开始为处理资产迁移做必要准备。
● 节点
来自 NSPCC 社区的 NeoGo
- https://github.com/nspcc-dev/neo-go
Neo SPCC对其Go节点进行了一系列改进。对编译器级别的NEP-11进行了遵从性检查,对智能合约API进行了改进。
此外,团队还针对部分更新对性能的影响进行了实验,对BoltDB buckets进行了基准测试,但其性能并未显著提高。而P2P事务处理实验则表明其吞吐量提高了15%。
● 浏览器
来自 NEXT 社区的 NeoTube
- https://neotube.io/
NeoTube现在与Neo3 Preview5相兼容,对地址细节、交易细节和区块细节页面都进行了优化。
● 智能合约编译器
来自 COZ 社区的 Boa
- https://docs.coz.io/neo3/boa/index.html
COZ发布了与Preview5相兼容的Neo3-Boav0.7版本,实现了迭代器互操作,并扩展了内置的Python支持。此外,还发布了原子交换和NEO合约的样例。
● 智能合约 & dApp 框架
来自 AxLabs 社区的 neow3j
- https://github.com/neow3j/neow3j
二月,AxLabs团队发布了neow3j v3.7.0和v3.7.1版本,对SDK、开发包和编译器进行了调整,使其与Neo3 Preview5版本完全兼容,并引入了一系列新功能。
团队还带来了与即将发布的Neo3 RC版本相兼容的最新进展。不久之后,团队会发布一个新的neow3j版本,以使Java开发人员可以在Neo3测试网上进行构建。
AxLabs还与NGD Enterprise保持着密切联系,从而使neow3j可以与VS Code的Neo区块链工具包无缝集成。
来自 NEO Tracker 社区的 NEO•ONE
- https://neo-one.io/
NEO Tracker团队在二月份发布了NEO•ONE v3.1.0-preview4.2版本,该版本可以与Preview4相兼容。本次更新的特别之处在于添加了TypeScript智能合约编译器,开发者们终于能够在TypeScript中编写Neo3智能合约了。接下来的几个星期,团队将继续致力于与Preview5和之后的RC1相兼容。
来自 NGO Enterprise 的Neo Blockchain Toolkit
-https://marketplace.visualstudio.com/items?itemName=ngd-seattle.neo-blockchain-toolkit
NGD Enterprise使Neo区块链工具包获得了Preview5的支持,并发布了Express、Debugger、Visual DevTracker和Visual Token Designer的Preview5兼容版本。此外,团队开启了“无头”节点计划,并为一个战略项目提供了相应的代码原型。项目负责人John deVadoss还发表了一篇战略论文,系统回顾了企业区块链市场和供应商(亚马逊、IBM、摩根大通、微软和R3 Corda)的现状。
● 钱包
来自 COZ 社区的 Neon
-https://neonwallet.com
COZ开展了Neon Wallet手机版的beta测试,iOS和Android系统都可以参与。
● 分布式存储
来自 Neo SPCC 社区的 NeoFS
- https://fs.neo.org
二月,NeoSPCC团队开发完毕了为测试网的上线而准备的最后几项基础设施。存储节点的本地垃圾收集器已经完成,API也加入了用于估计容器大小和获取节点网络视图的RPC方法。
NeoFS智能合约也进行了一些更改和重构,为未来进一步更新提供了迁移方法。此外,该合约还会向“兼容Preview5的新版本NeoGo互操作”,以及“作为创建多签名交易的机制的公证性合约”提供支持。
Neo SPCC还更新了包括CDN缓存失效器在内的NeoFS服务,并修复了S3 gates中文件名包含空格和UTF-8符号的问题。此外,还通过HTTP gates向对流和承载代币提供了支持。
● 研究
来自 Neo Research 社区的 NeoCompiler Eco
- https://neocompiler.io
二月,Neo Research团队在NeoCompiler Eco中实现了大多数Neo3功能,从而使用户能够通过web服务编写、编译、部署或者调用智能合约。且为了与Neo3测试网相匹配,仍在做进一步的调整。
● 代码审查
来自 Red4Sec 社区的 代码审查
- http://red4sec.com/en
二月,Red4Sec的工作重点依旧是对Neo3源代码进行安全审计。团队发布的Preview5研究报告,揭示了目前正在解决的三个潜在服务漏洞。不久之后,Red4Sec团队也将对正式发布前的Neo3 RC1进行审查。
市场与运营
主要市场活动
生态发展