Rust 1.0 Beta 版发布

2015年4月3日 · Rust 核心团队

今天,我们非常激动地宣布 Rust 1.0 Beta 版的发布!Beta 版发布标志着向 1.0 版本迈进的一个非常重要的“状态转换”。特别是,在 Beta 版中,所有计划在 1.0 版本中稳定的库和语言特性都已标记为稳定。因此,Beta 版代表了 Rust 1.0 将包含的准确预览。

要查看自 1.0-alpha2 以来的更改,请参阅发行说明

Beta 版的发布也标志着我们在稳定性方法上的一个转折点。在 alpha 周期中,允许使用不稳定的 API 和语言特性,但会触发警告。从 Beta 版开始,使用不稳定的 API 将会报错(除非您正在使用 Nightly 构建或从源代码构建)。

Rust 生态系统持续增长。crates.io 仓库刚刚超过 100 万次下载,并有超过 1,700 个 crates 可用。现在,crates.io 中的许多顶级 crates 都可以只使用稳定的 Rust 构建,并且其余部分的移植工作正在进行中。因此,我们现在建议新用户从 Beta 版开始,而不是 Nightly 构建,并且 rustup 脚本将被修改为默认安装 Beta 版。(但是,如果您的某些依赖项尚未更新,则很容易切换到 Nightly 构建。有关详细信息,请参阅安装页面。)

在 Beta 周期期间会发生什么?

最终的 Rust 1.0 版本计划于 5 月 15 日发布 - 恰好在六周后。 在此期间,我们期望将大部分精力投入到修复错误、改进文档和错误消息,以及其他方面改进最终用户体验。我们不打算对稳定的内容进行功能更改,当然,如果发现缺点或问题,我们可能会对库 API 进行小的更正或添加(但是,此类更改的门槛相对较高)。

虽然我们不希望为 1.0 版本添加任何新功能(或主要的新 API),但这并不意味着我们将完全停止对其进行研究。 恰恰相反!按照 火车模型,计划是在主分支上继续开发新功能,与 Beta 版并行。当然,我们会在发布最终的 1.0 版本的同时发布 1.1 版本的 Beta 版,因此您不必等待太久就可以开始使用该工作成果。

为了帮助确保我们在添加新功能时不会意外引入破坏,我们还在开发一个令人兴奋的新 CI 基础设施,以允许我们监控哪些软件包正在使用 Nightly 版本进行构建,并在整个 Rust 生态系统中检测回归,而不仅仅是我们自己的测试基础。此基础设施仍处于开发阶段,但您可以在此处查看示例报告

社区的成就

与往常一样,此 Rust 版本的发布是广大 Rust 社区的成就。感谢每位参与 RFC 过程的人,并特别感谢此版本的 170 位贡献者。

  • Aaron Turon
  • Aaron Weiss
  • Adam Jacob
  • Adenilson Cavalcanti
  • Adolfo Ochagavía
  • Ahmed Charles
  • Alan Cutter
  • Alex Crichton
  • Alexander Bliskovsky
  • Alexander Campbell
  • Alexander Chernyakhovsky
  • Alexis
  • Alexis Beingessner
  • Amol Mundayoor
  • Anders Kaseorg
  • Andrew Hobden
  • Andrew Paseltiner
  • Angus Lees
  • awlnx
  • Barosl Lee
  • bcoopers
  • Björn Steinbrink
  • bombless
  • Brian Anderson
  • Brian Brooks
  • Brian Leibig
  • Camille Roussel
  • Camille TJHOA
  • Carol Nichols
  • Caspar Krieger
  • Ches Martin
  • Chloe
  • Chris Wong
  • Cody P Schafer
  • Corey Farwell
  • Corey Richardson
  • Dabo Ross
  • Dan Burkert
  • Dan Connolly
  • Dan W.
  • Daniel Lobato García
  • Darin Morrison
  • Darrell Hamilton
  • Dave Huseby
  • David Creswick
  • David King
  • David Mally
  • defuz
  • Denis Defreyne
  • Drew Crawford
  • Dzmitry Malyshau
  • Eduard Bopp
  • Eduard Burtescu
  • Eduardo Bautista
  • Edward Wang
  • Emeliov Dmitrii
  • Eric Platon
  • Erick Tryzelaar
  • Eunji Jeong
  • Falco Hirschenberger
  • Felix S. Klock II
  • Fenhl
  • Flavio Percoco
  • Florian Hahn
  • Florian Hartwig
  • Florian Zeitz
  • FuGangqiang
  • Gary M. Josack
  • Germano Gabbianelli
  • GlacJAY
  • Gleb Kozyrev
  • Guillaume Gomez
  • GuillaumeGomez
  • Huachao Huang
  • Huon Wilson
  • inrustwetrust
  • Ivan Petkov
  • Ivan Radanov Ivanov
  • Jake Goulding
  • Jakub Bukaj
  • James Miller
  • Jessy Diamond Exum
  • Jihyun Yu
  • Johannes Oertel
  • John Hodge
  • John Zhang
  • Jonathan Reem
  • Jordan Woehr
  • Jorge Aparicio
  • Joseph Crail
  • JP-Ellis
  • Julian Orth
  • Julian Viereck
  • Junseok Lee
  • Kang Seonghoon
  • Keegan McAllister
  • Kevin Ballard
  • Kevin Butler
  • Kevin Yap
  • kgv
  • kjpgit
  • Lai Jiangshan
  • Leonids Maslovs
  • Liam Monahan
  • Liigo Zhuang
  • Łukasz Niemier
  • lummax
  • Manish Goregaokar
  • Markus Siemens
  • Markus Unterwaditzer
  • Marvin Löbel
  • Matt Brubeck
  • Matt Cox
  • mdinger
  • Michael Woerister
  • Michał Krasnoborski
  • Mihnea Dobrescu-Balaur
  • Mikhail Zabaluev
  • Ms2ger
  • Murarth
  • Nicholas Bishop
  • Nicholas Mazzuca
  • Nicholas
  • Nick Cameron
  • Niko Matsakis
  • nwin
  • Oliver Schneider
  • Or Neeman
  • Pascal Hertleif
  • Patrick Walton
  • Paul ADENOT
  • Paul Osborne
  • Peter Elmers
  • Phil Dawes
  • Philip Munksgaard
  • Piotr Czarnecki
  • Pyry Kontio
  • Raphael Nestler
  • ray glover
  • Ricardo Martins
  • Richard Diamond
  • Richo Healey
  • Ruud van Asseldonk
  • Ryan Prichard
  • Sae-bom Kim
  • Scott Olson
  • Sean McArthur
  • Sébastien Marie
  • Seo Sanghyeon
  • Simonas Kazlauskas
  • Stepan Koltsov
  • Steve Klabnik
  • Steven Crockett
  • Steven Fackler
  • Tamir Duberstein
  • Tero Hänninen
  • Tiago Nobrega
  • Tobias Bucher
  • Tom Jakubowski
  • Trent Nadeau
  • Tshepang Lekhonkhobe
  • Ulrik Sverdrup
  • Vadim Chugunov
  • Vadim Petrochenkov
  • Valerii Hiora
  • Vladimir Pouzanov
  • Vojtech Kral
  • Wangshan Lu
  • Wesley Wiser
  • York Xiang