区块广播:

ETC Labs Core第一季度工作总结

ETC亚太社区版主发布在 ETC/以太坊原链
 17232  0

ETC LabsCore于1月份推出,旨在支持和推动以太坊经典生态系统的发展。在最初的几个月里,我们开发了ETC-ETH兼容性、必要的数据分析工具、改进DApp开发环境的基本规范,实现了里程碑式突破,同时还纳入一些区块链领域的优秀开发者,扩充了团队。

 


团队

·核心开发团队规模增加75%

 

该团队最早的开发人员包括Constantine Kryvomaz,Meowbits,Michael Collison,Mike Lubinets,Shane Jonas,Stevan Lohja和Zachary Belford。然后又陆续迎来更多新成员,如Alan Li,Devon Wesley,Jake Lang,Talha Cross,Zac Mitton和Zane Starr。

 

Constantine,Meowbits和Talha组成了我们的客户端小组,Meowbits是该小组的核心人物。他们一起开发网络分析工具,为Classic Geth,Multi-Geth和网络升级提供支持。

 

EVM /编译小组则由Alan Li,Jake Lang,Michael C.和Mike L.组成,Michael C.是该组负责人。他们正在推动ETC JIT编译器和EVM LLVM项目,旨在大大提高EVM和智能合约执行性能。

 

Shane和Zachary Belford共同领导工具小组,其他成员还有Devon和Zane。DApp工具团队正在开发支持DApp开发环境的项目,包括OpenRPC规范,该项目旨在改变对等应用程序相互沟通及与区块链沟通的方式。

 

StevanLohja是我们的团队联系人,提供网络、文档支持和团队协作。Stevan正致力于对我们的技术及开发人员文档进行宣传教育。

 

2019年第一季度成果

 

客户端小组

我们提出了代号为“亚特兰蒂斯”(Atlantis)的ECIP-1054升级,该提议在整个社区内得到了极大的支持。我们对测试网和主网实施这种升级的区块高度进行了预测,但具体事宜还要与客户端开发人员进行更多讨论。ECIP-1054升级的动机在于实现ETC-ETH的最大兼容性和性能改进。

 

·ECIP-1054:Atlantis,EVM和协议升级

·ECIP-1053:将OpenRPC Service Discovery添加至JSON-RPC服务

·为Kotti网络(一个基于PoA的以太经典公共测试网)开发贡献力量

·继续为Classic Geth和Multi-Geth客户端提供支持和维护

 

客户端小组一直致力于提供高质量的网络驱动软件,使开发人员能够构建去中心化的对等应用程序。在2019年第一季度,我们在实现这一目标的同时解决了许多问题。今年年初,以太经典因遭受51%攻击而出现双花问题。那时,我们立刻开发出监控工具,以帮助以太经典网络进行相应的确认调整。

 

·完成了一个开源网络管理工作,针对51%攻击监控网络分布

·完成了Geth客户端的ELK堆栈配置

 


EVM /编译器小组

SputnikVM


·实施了一个多功能的Dynamic Path API,它具备Geth客户端的功能配置

·实施了Multi-Geth EVM的集成层

·SputnikVM通过了所有的ETH应分叉,足以支持Atlantis,不过还需要进行更多测试

·Repo管理(Jenkins的CI配置,默认情况下启用Rust代码格式,代码已对应Rust 2018版进行更新)

·实施了EVMC API的Rust绑定,并开始评估SVM的兼容性问题。

 

即时编译器(JIT)

·完成了基础子系统:gas计量、异常处理和运行时管理器(所有子系统的单元测试)。

·完成外部接口子系统的第1阶段(提供功能签名)

·实施了一个包装器API,用于构建内联的LLVM类型声明

 

计划外:

·由于inkwell和llvm-C API缺少支持,不得不编写属性和内部管理器

·发现与LLVM相关的泄漏

·开始重构JIT,使其具有更清晰的生命周期模型,而不依赖于单例模式

 

LLVMEVM后端

·设计了LLVM EVM后端管道和工作流程(包括将LLVM虚拟记录器转换为堆栈操作的stackify pass)。

·实施了初步的LLVM代码生成器。

·设计了EVM代码生成器优化框架。

 

工具小组

Etherlog

·完成了初始的基于ELK的日志记录设置,该设置将运行以太坊客户端,ElasticSearch,Logstash和Kibana,预装了一些仪表板,非常适用于监控ETC网络的状况。

 

OpenRPC

在2018年第四季度,我们发现对于大多数使用JSON-RPC的应用程序开发人员来说,他们极其需要高质量的底层软件。我们探讨了诸如Open API和gRPC之类的解决方案,但这些都不合适。于是我们开始研究如何开发一个类似Open API和gRPC且适用于以太经典及其他区块链的工具。目前,除了发布一些工具的规格之外,我们还实现了工具的完整性。

·发布了OpenRPC规范1x

 

除了以太经典的ECIP-1053之外,它还可以升级整个生态系统工具,因此我们也向比特币和以太坊发出了OpenRPC改进提案:

·BIP

·EIP

 

模拟服务器(Mock Server)

·完成Mock Server以提供对应OpenRPC文档中所的定义的方法JSON-RPC后端。

npminstall -g @open-rpc/mock-server


open-rpc-mock-server-s \

 -s<OpeRPC Document Reference>


这样就提供了一个功能齐全的服务器来进行测试。

 

Generator客户端

·以任意一种语言完成generator client-sdk

·目前支持Rust,TypeScript和JavaScript

 

在OpenRPC文档中,可通过以下步骤轻松生成客户端:

npm install -g@open-rpc/generator-client


open-rpc-generator-client\

 -s <OpenRPCDocument Reference>

 

Playground

·已完成OpenRPC的Web IDE

浏览器内编辑器结合OpenRPC Meta schema及docs-react提供交互式文档 / OpenRPC文档编辑体验,可以在https://playground.open-rpc.org/上试一试。

 

DocsReact

·为OpenRPC文档完成React Docs组件

 

DocsReact是一个反应组件,它将呈现给定的OpenRPC文档。

 

可按以下步骤使用:

npm install –save@open-rpc/docs-react


然后在React应用程序中:

import React from‘react’;

import ReactDOM from‘react-dm’;


import Documentationfrom “@open-rpc/docs-react”;


import {petstore} from“@open-rpc/examples”;

ReactDOM.render(<Documentationschema={petstore} />, document.getElementById(“root”));

 

Jenkins

·完成了Jenkins设置,允许在Windows,Linux和OSX本地工作的同时为多个平台提供我们的工具进行构建。它还包括一个方便部署到AWS的terraform配置。

git clone https://github.com/etclabscore/jenkins-vagrant

cd jenkins-vagrant

vagrant up

# or

terraform up

 

Ethash客户端设置

这是一种矿工客户端。通过编辑`start_miner.bat`文本,配合所需的矿池服务器及支付地址就可以轻松地开挖ETC了。

PhoenixMiner.exe -pool<INSERT POOL SERVER> -worker Rig001 -wal <INSERT PAY ADDRESS> -passx -retrydelay 2

 

后续季度目标 第二季度

客户端:

·在Multi-Geth.内执行service discovery,即运用OpenRPC

·分析EWASM的含意

 

EVM:

·发布SVM的0.11和0.12版本

·SputnikVM开发进展;更新后使用最新的SVM,运行集成测试,并通过'miri'测试运行时

·稳定EVMC绑定,并为EVMC提供SVM原型设计支持

 

JIT:

·完成外部(sload / store等)、内存、堆栈和256bit算术子系统

·开始主编译器代码生成

·为不需要区块链访问的外部回调实施辅助子系统

 

LLVM EVM:

·实施其余组件以使LLVM框架正常工作

·在LLVM中实现EVM优化

·与合同语言前端集成(例如Vyper或Solidity)

·实现Solidity编译器至少90%的性能

 

工具:

·完成服务运行

·在ETC客户端中采用OpenRPC

·JadeDApp框架的基础架构进展

 

科普:

·启动开发者资源和文档的开源开发门户。

 

第三季度

客户端:

·亚特兰蒂斯升级

 

EVM:

·亚特兰蒂斯升级

 

JIT:

·完成JIT

 

LLVM EVM:

·持续发展

 

工具:

·多网络资源管理器

·智能合约部署工具

本主题由 walterF 于 2019-04-24 16:10:23 审核通过
  • 正序
  • 最新
帖子暂无回复,回帖抢沙发
登录 账号发表你的看法,还没有账号?立即免费 注册