Rust夜版和beta版之间的区别

6

我想了解Rust夜版和beta版本的区别。它们似乎都适用于需要使用实验性功能的情况,但我无法找到确切的区别。


2
只是挑刺一下...如果其中一个比另一个更好,那么你就不需要其中一个。因为它会更糟。如果你的问题是关于差异的,那么似乎还可以,但如果你想知道哪个更好,你就必须定义什么是更好。 - Ted Klein Bergman
@TedKleinBergman 好的,你说得对 :D 那我只是想知道它们之间的区别。 - Oleksandr Novik
1个回答

10
在Rust生态系统中,这些被称为通道。官方有三个通道:
  • 稳定版:这是默认的版本,大多数人应该正常使用。顾名思义,稳定性是主要特点。
  • Beta版:这是Rust下一个版本的预览版。主要想法是将其添加到您的CI、测试或其他任何地方,以便您可以发现新的Rust开发可能对您的代码造成的任何问题,并将它们报告给Rust团队。当然,您也可以使用它来预览语言或标准库的未来改进,但它不会让您使用不稳定的功能。
  • 每日构建版:这是每天(或每晚)构建的版本,因此它显示Rust代码库的最前沿版本。因此,它可能显示出随机错误或从一个版本到另一个版本的行为变化。但它允许您使用不稳定的功能。一些人通过指定日期将其项目固定在特定的已知良好的每夜版本上,从而避免了随机错误问题。
总之:使用 stable 来进行正常工作;使用 nightly 来尝试不稳定的功能;使用 beta 来测试下一个 Rust 版本并避免可能的未来问题。

值得一提的是,夜间频道非常稳定,一些团队在生产环境中使用它(当然,在固定版本后)。 - Chayim Friedman
1
@ChayimFriedman:我同意,而且我认为更具体地说明是值得的。夜间版本仍然由Rust存储库CI在所有Tier 1平台上进行全面测试。稳定性随功能成熟度而变化:稳定功能与稳定通道上的几乎一样稳定,刚稳定的功能与Beta通道上的一样稳定(没有预期的API中断,经过充分测试),而更多“正在进行中”的功能则是最不稳定的,可能会出现API中断和不完整的测试覆盖。 - Matthieu M.

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接