这是NEO News Today 发布的第二份NEO社区开发报告。本报告涵盖了在2018年12月和2019年1月期间,NEO核心协议和社区开发者建立的独立项目的主要贡献。node
社区经过了一项新倡议,各NEO开发小组、NGD团队和NEO创始人之间将每个月举行一次会议。会议旨在改善NEO生态系统中不一样团队之间的沟通,为迁移到NEO3.0平台作好准备。python
会议也为指导各小组在以后几个月应该关注的内容提供了一个沟通平台。NEO News Today在接下来的一篇文章中将进一步探讨这些内容。git
会议表明以下:github
NEO协议贡献web
dBFT和neo-cli 的改进docker
在整个12月至1月,社区开发者继续优先NEO的dBFT共识机制和neo-cli客户端。由NeoResearch牵头的初版ODBFT更新已经完成进一步测试。数据库
1月29日,NEO网络遇到了一个历史遗留的区块问题,致使区块浏览器和RPC节点信息与区块链不一样步。该问题将在第三个共识阶段发布以前获得永久性修复,该阶段已经过Cityof Zion和Red4Sec的Shargon所作的工做成功测试。c#
这些关键更新将在单个pull请求中完成,准备与主代码合并。正在完成再生策略的工做,该策略将经过容许共识节点在失败时自动恢复以应对其余变化。 浏览器
NEL新经济实验室(NewEconoLabs)也在其LightDB项目上取得了进展,该项目取代了目前NEO节点使用的LevelDB数据库。本地测试已经完成,NEL声称它未来会在其节点上使用LightDB。NEL团队但愿它能“大幅提高NEO的TPS”。安全
去中心化劳务平台Moonlight的开发者发布了其Asteroid负载均衡器的源代码。负载均衡器充当反向代理,帮助轻型应用程序与正常运行的彻底同步的NEORPC节点保持链接。有关Asteroid负载平衡器的更多信息,请点击此处。neonewstoday.com/general/moo…
最后,City of Zion和Splyse的开发者Joe Stewart (@hal0x2328)建立了两个可选的neo-cli插件,旨在对dApp生态系统有所帮助。第一个插件实现了一个名为findstorage的RPC方法,该方法容许dApps在查询和分页须要大量结果的状况下快速从智能合约读取信息。
第二个插件是NeoPubSub,它将智能合约通知实时发送到RedisPub/Sub队列。这就建立了一个简单的界面,dApps可使用这个界面经过websocket接收来自多个智能合约的通知。
内存池更新
Aphelion的开发者Jsolman对NEO的内存池系统提出了一些修改,这些修改旨在解决当内存池达到高容量时所引发的性能问题。这些问题将下降NEO处理突发网络负载的能力,并可能延迟已发送的具备优先级费用的转帐,由于在新转帐得到优先级以前,现有转帐将被从新验证。
这些更改将转帐限制为与填充块所需的数量(当前为500)相等的转帐子集,从而防止须要对每一个块从新验证全部转帐。转帐如今也在内存池中保持排序,减小了节点检验哪些转帐应该具备优先级的须要。
这些更新将显著提升NEO的性能,并有助于在网络负载较重时稳定区块时间。预计neo-cli2.9.5版本将包含这些更新。
社区项目
O3实验室
O3实验室发布了对其NEO dAPI的更新,该协议的建立是为了让dApps方便地访问现有的NEO钱包。这消除了dApp建立者构建本身钱包的须要,并有可能改善用户体验和用户安全性。
该团队的目标是将该协议设置为NEO生态系统的标准,并已开始与NEL新经济实验室(NewEconoLabs)合做开发一个可供开发者使用的可访问包。
O3还在其地址扫描器中添加了一个特性,容许NEO用户轻松查看内存池中当前有多少转帐。若是积压超过500个转帐,就能够解释转帐延迟的缘由。
City of Zion
在1月中旬,CoZ发布了neo-python 0.8.3版本,一个由Python语言编写的NEO节点和SDK。这是一次大规模更新,包括一个完整的CLI重构以及各类稳定性/可用性改进。有关更新的详细介绍请点击这里。neonewstoday.com/development…
Neo-local项目在1月份也有了至关大的进展,能够快速部署我的NEO区块链,以便在事先无经验的状况下运行测试。Neo-local已经更新为使用最新的neo-python版本,目前正在进行对多系统支持的测试。
CoZ 开发者@cryptotuga向Docker容器添加了自动修复功能,容许它们在遇到不健康状况自动重启。这项更新旨在避免neo-local用户在出现故障时须要手动调试系统。此外,还向neo-local添加了中止命令,容许在堆栈启动后中止容器。该命令将在未来进行扩展,以容许中止单个容器。
Neon Wallet v2.1候选版本已推迟发布,等待对发送功能、用户体验和QR功能的改进。一月份的大部分时间都花在了解决小bug、提升代码质量、改进测试覆盖率和实现新的主要特性的初始研究/步骤上。这些改进能够在这里点击查看。github.com/CityOfZion/…
这些主要特性包括手动节点选择、支持多样Ledger硬件钱包公共地址,以及用于待定转帐的潜在UI解决方案。
NEL新经济实验室(NewEconoLabs)
除了替换NEO节点的LightDB数据库以外,NEL还发布了一个基于NeonDebug工具包的NEO智能合约在线调试工具NeoRay,目前只支持c#代码。更多关于NeoRay的信息能够点击这里。neonewstoday.com/general/nel…
NEL在1月份的开发报告中指出,Teemo浏览器扩展钱包的开发已经开始。除了为用户提供一个可访问的浏览器钱包,让用户在不暴露私钥的状况下访问dApp外,它还将做为dApp开发平台,旨在简化dApp开发。
NEO圣彼得堡能力中心
最新加入NEO生态系统的开发团队NEO SPCC发布了一份报告,报告涵盖了其在2018年第四季度取得的进展。该报告记录了其去中心化文件存储平台的当前进展、对neo-go和neo-storm项目的贡献,以及官方NEO文档的俄文翻译。NEO News Today 对该报告的摘要点击这里查看。neonewstoday.com/development…
研究员Alexey Vanin发表了一篇关于BFT协议中的任务分布的文章,目的是经过最小化NEO节点上的任务池大小来提升NEO的可伸缩性。摘要能够在这里查看。neonewstoday.com/development…
该小组还参加了在圣彼得堡举行的MICSECS-2018大会,在会上他们展现了他们关于去中心化文件系统的研究。展现了三个做品:
1月31日,NEO SPCC发布了一个教程,介绍如何设置一个成熟的环境来自动导入智能合约。在原来的CoZ私有网络docker中,可使用neo-python提示符轻松导入智能合约,可是每次设置环境时都不方便这样作。NEO SPCC的NEO私有网络具备自动智能合约导入功能,可在此下载。github.com/nspcc-dev/n…