9月Libra开发人员更新-路线图#1

9月Libra开发人员更新-路线图#1 September Libra Developer Update - Roadmap #1

October 02, 2019

Libra Association

自六月份正式发布 Libra 项目以来,来自开发人员社区的反响一直非常令人激动。开发者已发布了多个区块链浏览器(libranaut,libraview,librabrowser 和 libexplorer),并将 Libra 测试网集成到其钱包中(ZenGo,包括 Libra Core 的大型 PR)。我们还看到其他区块链项目将 Move 集成到他们的系统中(Solana)。Calibra 在GitHub上继续大力开发 Libra Core。该团队还发布了两个新的指南:一个用于在本地运行的 Move 应用程序,另一个是介绍了如何在自己的网络中运行。Libra 论坛就交易脚本、客户端开发和 Libra 活动的事宜展开了活跃的讨论。

Since the official Libra project announcement in June, response from the developer community has been thrilling to watch. Developers have released several blockchain explorers (libranaut, libraview, librabrowser, and libexplorer) and integrated Libra testnet into their wallets (ZenGo, including a large PR to Libra Core). We've also seen other blockchain projects integrate Move into their systems (Solana). Calibra continues to develop Libra Core heavily on GitHub. The team has also released two new guides: one for running Move applications locally and another showing how to run your own network. The Libra Discourse forums are active with discussions about transaction scripts, client development, and interest in Libra events continues to grow.

稳定的技术进步以及公开透明的对话是开发人员对该项目越来越感兴趣的关键。随着 Libra Core 向主网 Mainnet 的迈进,请持续关注此类博客文章以了解路线图的更新。

Steady technical progress and open and transparent dialogue are key to growing developer interest in the project. As Libra Core progresses towards Mainnet, look for blog posts like this one to find roadmap updates.

超越测试网 Beyond Testnet

在 Testnet 的帮助下团队可以轻松地排除故障,诊断和解决软件边缘问题,从而快速地改进 Libra Core。 Testnet 演示了 Libra 网络功能,并为开发人员提供了早期访问。

Launching the Testnet has allowed the team to quickly improve Libra Core by making it easy to troubleshoot, diagnose, and resolve software edge cases. The Testnet demonstrates Libra network functionality and provides early access to developers.

继 Testnet 之后,我们希望能够成功启用 Libra 主网。我们用于跟踪项目成功的一种方法是由不同的合作伙伴管理多少个已部署的节点。 Mainnet的最终目标是让所有合作伙伴在网络上部署节点。每个节点都将在内部部署和云托管基础结构的混合上运行。我们相信,基础设施的多样性将为天秤座网络提供更大的弹性。

Following the Testnet, we hope to have a successful launch of the Libra Mainnet. One method we use for tracking the project's success is how many of the deployed nodes are managed by different partners. The end goal of Mainnet is for all partners to have nodes deployed on the network. Each node will run on a mixture of on-premises and cloud hosted infrastructure. Our belief is that wider diversity of infrastructure will provide more resiliency to the Libra network.

GitHub 更新 GitHub Updates

为了更好地跟踪开发进度,我们添加了包含所有主要工程优先级的看板(可视化任务板)。您可以在此处跟踪此路线图的进度。

To help you better track development progress we've added a Kanban board (visualized task board) containing all major engineering priorities. You can track this Roadmap's progress here.

像许多开源项目一样,贡献者必须签署的贡献者许可协议(CLA)。我们正在审查一些选项,以简化现有手动的 CLA 审批流程。

Like many open source projects, contributions must have be made pursuant to a signed contributor license agreement (CLA). We are reviewing a handful of options to streamline the existing, manual CLA approval process.

当前的开发过程是通过一款叫 homu的工具来强制执行实现高级别的代码质量。Homu 是开源的机器人,可与我们的持续集成/持续部署(CI / CD)系统配合使用,以确保测试始终通过。

The current development process enforces a high level of code quality. One tool we've adopted is homu. Homu is an open sourced bot that works with our continuous-integration/continuous-deployment(CI/CD) systems to ensure tests always pass. Our homu bot, @bors-libra, works by continuously verifying that tests pass between PR revisions and after other PRs are merged. You can see commands issued on PRs that tag the bot and instruct it to do work. Using a bot for managing merges, is common in larger scale projects that want to keep tests "green". This change adds an additional layer of security to the project by enforcing branch protection so that changes to the protected branch can only be executed by the bot.

工程团队已开始在 GitHub 问题中发布设计备注。 如果您正在寻找参与的方式,或者想要跟踪特定功能并提供反馈,则可以去浏览一下 GitHub 的问题页面。

The engineering team has started to post their design notes in GitHub issues. If you're looking for ways to get involved, or want to track specific features, and give feedback you can scan the GitHub issues page.

为了吸引大家长期参与我们的项目,我们尽可能地提供更清晰和更多途径的帮助。这些包括未来的路线图(当然包括本文的介绍),随时更新高级别的状态和共享设计备注等等,都是为了帮助你能够了解 Libra Core 更多。

We are working towards providing clearer and more plentiful ways to help you get involved over time. We hope that publishing this and future roadmaps, updating the status of high level priorities, and sharing design notes can give you guidance and insight into upcoming Libra Core features.

基于冲刺模式的开发 Sprint Based Development

早在项目研发之初,我们就使用来60天的冲刺时间来完成 Libra Core 开发并作出规划。根据优先级的不同安排不同的功能来进行冲刺。Libra Core 的线路图#1其目标是安全性和可靠性,其次是把第一批的合作伙伴整合到 Libra 预备的主网(pre-mainnet)中。

Since the beginning of the project, the team has used 60-day sprints to help guide planning and development of Libra Core. Each sprint has a set of features organized by priority. For Roadmap #1 the team is focused on security and reliability and work towards integrating additional partners into the coming Libra Mainnet.

Goals for Libra Core in Roadmap #1 are to focus on security and reliability and to integrate our first partners into the Libra network pre-Mainnet.

线路图#1 Roadmap #1

当前进度 Current Progress

我们继续把所有功能的设计完成,不管哪个优先级的。像实现完整节点这样的功能,我们的进度就不错。我们正在努力定义节点重新配置规范,该规范将在最终确定 Libra 协议定义之前生效。

We continue to complete design work for all priority features. We are making good progress implementing features like Full Nodes. We're working to define node reconfiguration specification will work prior to finalizing the Libra Protocol definition.

Libra Core

Addressing / Interop

  • 多个钱包之间的互操作性是 Libra 网络成功之关键。团队正在努力制定一种简单的方案,以支持发送/接受子帐户。Interoperability between multiple wallets is key to the success of the Libra network. The team is working to formalize a simple scheme to support sending to/from sub-accounts.

完整节点 Full Nodes

  • Libra 区块链将由一个单独的节点类型组成,这节点允许不同的配置。这将使得节点成为验证器节点或者非验证器节点,都是可以的,非验证节点保存了所有历史记录(完整节点)。我们还努力使得节点可以轻松地升级到验证器,反之亦然。The Libra blockchain will consist of a single node type that can be configured differently. This will allow the node to act as either a validator or a non-validating node that stores full history (full node). We will also work to allow easily upgrading full nodes to validators and vice-versa.

Libra 协议定义 Libra Protocol Definition

  • 团队正在制定 API、Wire 规范、Addressing/Interop 和其他协议依赖。The team is working to define the API, Wire Spec, Addressing/Interop, and other protocol dependencies.

验证器的再配置 Validator Reconfiguration

  • 验证器集合包含了系统中活跃的验证器的独一无二的id。慢慢地,验证器集合需要可以更新。依据区块链系统的角度来说,修改验证器集合会影响到每一个组件。共识协议需要再一次地验证区块,于是网络需要重新配置,存储模块需要持久化账本信息,那么客户端需要对发生修改的验证器信息进行验证。The validator set contains unique identification of validators active in the system. Over time, the validator set needs to support changes. From a blockchain systems perspective, changing the validator set impacts every component. Consensus needs to re-certify blocks, the network needs to to reconfigure, storage needs to persist a LedgerInfo, and clients need a way to validate read data across validator changes.

路径点 Waypoints

  • 路径点为客户提供有关区块链历史的外部信息源。Waypoints will provide clients with an external source of information about the history of the blockchain.

可信计算库 TCB (Trusted Computing Base)

  • 可信计算库(TCB)定义了对系统安全性和稳定性至关重要的组件子集。 最大限度地减少关键组件的硬件和软件依赖性,有助于避免意外的错误和恶意攻击。The trusted computing base (TCB) defines subsets of components that are critical to system safety and stability. Minimizing the hardware and software dependencies of the critical components helps avoid inadvertent bugs and malicious attacks.

序列化 Serialization

  • 为了在验证器节点之间共享原始的交易信息,研究团队正在寻求一种可确定性的序列化实现。关于该问题更多的讨论请参阅#454。The team is looking to implement deterministic serialization for sharing RawTransactions between validator nodes. To see more discussion on this topic, see issue #454.

Move

  • 事件 Events

    • 探索 Move 的事件设计 Explored designs for representing events in Move.

    • 开发者所用的、稳定的 API。Stabilized Events API for developers.

    • 对于记录链上所发生的,应该可以记录起来,这方面有例子提供给开发者。Provided examples for how developers could record events that happen on-chain.

  • 集合/泛型 Collections/Generics

    • 实现 vector 数组并探索其他的集合类型。Implemented vectors and explored other collection types to support.

  • 我们标记了#597, 从而取消了验证程序集的管理。 验证程序中还有其他工作来支持此操作,并且这是正确性保证的一部分。We landed #597 which unblocks validator set management. There is additional work to support this in the verifier and as part of the correctness assurances.

Libra 预备主网 Libra Pre-Mainnet

随着项目朝着 Mainnet 里程碑的迈进,有必要让更多的节点联机,同时保持 testnet 的运行。为了帮助完成这项工作,我们创建了一个称为“预备主网 Pre-Mainnet”的暂存环境。 当前,只有少数的合作伙伴已经部署了 Pre-Mainnet 节点,可以彼此访问连接,期待不久会有更多的合作伙伴上线。在正式开启主网之前,我们希望可以满足严格的性能基准和保持整体系统的稳定性。敬请关注。

As the project tracks towards the Mainnet milestone, it is necessary to bring more nodes online while maintaining the operation of the testnet. To aid this effort, we've created a staging environment that we call Pre-Mainnet. Pre-Mainnet is currently only accessible to partner nodes to allow them to connect to each other. A handful of partners have already deployed their nodes and have them communicating with each other. We expect to have more partners coming online shortly. We want to ensure the Libra network can meet rigorous performance benchmarks and overall system stability before opening access. Stay tuned.

注册论坛的会员吧~ Come Join Us In The Forum

有什么问题请在这里留言。

If you have any additional questions or comments for engineering team about this roadmap, please leave a comment here.

发布了293 篇原创文章 · 获赞 260 · 访问量 232万+

猜你喜欢

转载自blog.csdn.net/zhangxin09/article/details/102458373
今日推荐