向 Tendermint Core 1.0 前行
原文作者:Tess Rinearson 原文链接: Medium – 28 Jan 21 Towards Tendermint Core 1.0 Our roadmap for the next 18 months Reading time: 10 min read Tendermint Core 已有近七年历史。如今,它横跨数个重要区块链生态,确保了大量转账的安全,其总金额达数十亿美元。尽管如此,它仍被视为 pre-1.0 软件。 我们正致力于改变这一点。 虽然 pre-1.0 这种编号方式给予了开发团队极大限度的灵活性,但它的弊端也很明显:对用户不利。不仅重大更改不能反应在版本号中, 我们的接口和编码系统也时常发生变动,影响它们所支撑的用户软件。 Tendermint Core 1.0 的首要目标是稳定性。它必须足够可靠,使人们能放心地在其之上搭建软件,投入生产。为此,Tendermint Core 的接口必须更加清晰、恒定。同时,为了给 Tendermint Core 的高效性与准确性奠定信心,我们需要通过代码重组优化性能,并进行更完善的测试。 本文罗列了一些 1.0 版本发布时的必要功能。不过,请留意「1.0」在本文中的特定含义。与人们常规对软件开发的期待有所不同,我们的意图并非是把 Tendermint Core 在 1.0 开发至功能齐全或是彻底「完善」;相反,我们追求的只是纯粹的稳定性而已。 发布 Tendermint Core 1.0 意味着我们将为用户保障更强大的稳定性。达到 1.0 也意味着我们可以更轻易地使用语义化版本控制之类的规范,来表达并维持我们的稳定性标准。 说起对 1.0 的要求,如果归纳下所有新功能和改进,结果会颇似马斯洛需求层级和食物金字塔:工作量最大却最凡常的目标放在底部,而工作量更小却更高光的改进放在顶部。 这些改进很可能会被区分为两组版本发布:0.35 和 1.0。本文的结尾有更多注释,用于解释这可能会如何进行。 同时,在 2021 年 1 月,其中一些项目已着手进行,甚至近乎完成;这些项目在下文中已用星号*标出。 一、接口稳定性 API 稳定性 向 Tendermint Core 的用户做出保证:公开暴露的 API 在未来的子版本中不再会发生变动。一旦我们完成这一目标,我们也将终于拥有符合语义化版本控制的规范! 为此,我们会在 Go、RPC 和 P2P api 中定义专门的公共接口,并且弃用和/或不公开所有其他接口,这可能通过使用内部包来实现。这会让我们在未来有能力继续灵活地调整这些接口,但无需为此发布主版本。 ABCI 更新 Tendermint…
Excerpt (1196 of 6777 characters). Read the whole post on the forum ↗