Skip to content

Add 1.0 announcement #56

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 4 commits into from
May 15, 2015
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
331 changes: 331 additions & 0 deletions _posts/2015-05-15-Rust-1.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,331 @@
---
layout: post
title: "Announcing Rust 1.0"
author: The Rust Core Team
---

Today we are very proud to announce the
[1.0 release of Rust][relnotes], a new programming language aiming to
make it easier to build reliable, efficient systems. **Rust combines
low-level control over performance with high-level convenience and
safety guarantees**. Better yet, it achieves these goals without
requiring a garbage collector or runtime, making it possible to
[use Rust libraries as a "drop-in replacement" for C][ffi]. If you'd
like to experiment with Rust, the
["Getting Started" section of the Rust book][book] is your best bet
(if you prefer to use an e-reader, Pascal Hertleif maintains
[unofficial e-book versions][ebook] as well).

What makes Rust different from other languages is its type system,
which represents a refinement and codification of "best practices"
that have been hammered out by generations of C and C++
programmers. As such, Rust has something to offer for both experienced
systems programmers and newcomers alike: experienced programmers will
find they save time they would have spent debugging, whereas newcomers
can write low-level code without worrying about minor mistakes leading
to mysterious crashes.

### What does it mean for Rust to be 1.0?

The current Rust language is the result of a lot of iteration and
experimentation. The process has worked out well for us: Rust today is
both simpler and more powerful than we originally thought would be
possible. But all that experimentation also made it difficult to
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not an error, but I recommend "made it difficult to maintain a Rust project" become "made it difficult to maintain projects written in Rust" for clarity.

maintain projects written in Rust, since the language and standard
library were constantly changing.

**The 1.0 release marks the end of that churn.** This release is the
official beginning of our [commitment to stability][stable], and as
such it offers a firm foundation for building applications and
libraries. From this point forward, breaking changes are largely out
of scope (some [caveats] apply, such as compiler bugs).

That said, releasing 1.0 doesn't mean that the Rust language is
"done". We have many [improvements in store][priorities]. In fact, the
Nightly builds of Rust already demonstrate [improvements to][24965]
[compile][24615] [times][25323] (with more to come) and includes work
on new APIs and language features, like [`std::fs`][1044] and
[associated constants][23606].

To help ensure that compiler and language improvements make their way
out into the ecosystem at large as quickly as possible, we've adopted
a [train-based][train] release model. This means that we'll be issuing
regular releases every six weeks, just like the Firefox and Chrome web
browsers. **To kick off that process, we are also releasing Rust 1.1
beta today, simultaneously with Rust 1.0.**

### Cargo and crates.io

Building a real project is about more than just writing code -- it's
also about managing dependencies. [Cargo][cargo], the Rust package
manager and build system, is designed to make this easy. Using Cargo,
downloading and installing new libraries is as simple as adding one
line to your manifest.

Of course, to use a dependency, you first have to find it. This is
where [crates.io] comes in -- crates.io is a central package
repository for Rust code. It makes it easy to search for other
people's packages or to publish your own.

Since we [announced cargo and crates.io][cargo] approximately six
months ago, the number of packages has been growing
steadily. Nonetheless, it's still early days, and there are still lots
of great packages yet to be written. If you're interested in building
a library that will take the Rust world by storm, there's no time like
the present!

### Open Source and Open Governance

Rust has been an open-source project from the start. Over the last few
years, we've been constantly looking for ways to make our governance
more open and community driven. Since we introduced the
[RFC process][rfcs] a little over a year ago, all major decisions
about Rust are written up and discussed in the open in the form of an
RFC. Recently, we adopted a [new governance model][1068], which
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"in the form of a RFC" should probably be "in the form of an RFC"

establishes a set of subteams, each responsible for RFCs in one
particular area. If you'd like help shape the future of Rust, we
encourage you to get involved, either by uploading libraries to
[crates.io], commenting on RFCs, or
[writing code for Rust itself][contributing].

We'd like to give a special thank you to the following people, each of
whom contributed changes since our previous release (the
[complete list of contributors][AUTHORS] is here):
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Recommend mentioning the total number of contributors to Rust 1.0, perhaps with "each of whom contributed changes since our previous release, bringing the total number of contributors to over a thousand".


- `Aaron Gallagher <[email protected]>`
- `Aaron Turon <[email protected]>`
- `Abhishek Chanda <[email protected]>`
- `Adolfo Ochagavía <[email protected]>`
- `Alex Burka <[email protected]>`
- `Alex Crichton <[email protected]>`
- `Alex Quach <[email protected]>`
- `Alexander Polakov <[email protected]>`
- `Andrea Canciani <[email protected]>`
- `Andreas Martens <[email protected]>`
- `Andreas Tolfsen <[email protected]>`
- `Andrei Oprea <[email protected]>`
- `Andrew Paseltiner <[email protected]>`
- `Andrew Seidl <[email protected]>`
- `Andrew Straw <[email protected]>`
- `Andrzej Janik <[email protected]>`
- `Aram Visser <[email protected]>`
- `Ariel Ben-Yehuda <[email protected]>`
- `Augusto Hack <[email protected]>`
- `Avdi Grimm <[email protected]>`
- `Barosl Lee <[email protected]>`
- `Ben Ashford <[email protected]>`
- `Ben Gesoff <[email protected]>`
- `Björn Steinbrink <[email protected]>`
- `Brad King <[email protected]>`
- `Brendan Graetz <[email protected]>`
- `Brett Cannon <[email protected]>`
- `Brian Anderson <[email protected]>`
- `Brian Campbell <[email protected]>`
- `Carlos Galarza <[email protected]>`
- `Carol (Nichols || Goulding) <[email protected]>`
- `Carol Nichols <[email protected]>`
- `Chris Morgan <[email protected]>`
- `Chris Wong <[email protected]>`
- `Christopher Chambers <[email protected]>`
- `Clark Gaebel <[email protected]>`
- `Cole Reynolds <[email protected]>`
- `Colin Walters <[email protected]>`
- `Conrad Kleinespel <[email protected]>`
- `Corey Farwell <[email protected]>`
- `Dan Callahan <[email protected]>`
- `Dave Huseby <[email protected]>`
- `David Reid <[email protected]>`
- `Diggory Hardy <[email protected]>`
- `Dominic van Berkel <[email protected]>`
- `Dominick Allen <[email protected]>`
- `Don Petersen <[email protected]>`
- `Dzmitry Malyshau <[email protected]>`
- `Earl St Sauver <[email protected]>`
- `Eduard Burtescu <[email protected]>`
- `Erick Tryzelaar <[email protected]>`
- `Felix S. Klock II <[email protected]>`
- `Florian Hahn <[email protected]>`
- `Florian Hartwig <[email protected]>`
- `Franziska Hinkelmann <[email protected]>`
- `FuGangqiang <[email protected]>`
- `Garming Sam <[email protected]>`
- `Geoffrey Thomas <[email protected]>`
- `Geoffry Song <[email protected]>`
- `Gleb Kozyrev <[email protected]>`
- `Graydon Hoare <[email protected]>`
- `Guillaume Gomez <[email protected]>`
- `Hajime Morrita <[email protected]>`
- `Hech <[email protected]>`
- `Heejong Ahn <[email protected]>`
- `Hika Hibariya <[email protected]>`
- `Huon Wilson <[email protected]>`
- `Igor Strebezhev <[email protected]>`
- `Isaac Ge <[email protected]>`
- `J Bailey <[email protected]>`
- `Jake Goulding <[email protected]>`
- `James Miller <[email protected]>`
- `James Perry <[email protected]>`
- `Jan Andersson <[email protected]>`
- `Jan Bujak <[email protected]>`
- `Jan-Erik Rediger <[email protected]>`
- `Jannis Redmann <[email protected]>`
- `Jason Yeo <[email protected]>`
- `Johann <[email protected]>`
- `Johann Hofmann <[email protected]>`
- `Johannes Oertel <[email protected]>`
- `John Gallagher <[email protected]>`
- `John Van Enk <[email protected]>`
- `Jonathan S <[email protected]>`
- `Jordan Humphreys <[email protected]>`
- `Joseph Crail <[email protected]>`
- `Josh Triplett <[email protected]>`
- `Kang Seonghoon <[email protected]>`
- `Keegan McAllister <[email protected]>`
- `Kelvin Ly <[email protected]>`
- `Kevin Ballard <[email protected]>`
- `Kevin Butler <[email protected]>`
- `Kevin Mehall <[email protected]>`
- `Krzysztof Drewniak <[email protected]>`
- `Lee Aronson <[email protected]>`
- `Lee Jeffery <[email protected]>`
- `Liam Monahan <[email protected]>`
- `Liigo Zhuang <[email protected]>`
- `Luke Gallagher <[email protected]>`
- `Luqman Aden <[email protected]>`
- `Manish Goregaokar <[email protected]>`
- `Manuel Hoffmann <[email protected]>`
- `Marin Atanasov Nikolov <[email protected]>`
- `Mark Mossberg <[email protected]>`
- `Marvin Löbel <[email protected]>`
- `Mathieu Rochette <[email protected]>`
- `Mathijs van de Nes <[email protected]>`
- `Matt Brubeck <[email protected]>`
- `Michael Alexander <[email protected]>`
- `Michael Macias <[email protected]>`
- `Michael Park <[email protected]>`
- `Michael Rosenberg <[email protected]>`
- `Michael Sproul <[email protected]>`
- `Michael Woerister <michaelwoerister@gmail>`
- `Michael Wu <[email protected]>`
- `Michał Czardybon <[email protected]>`
- `Mickaël Salaün <[email protected]>`
- `Mike Boutin <[email protected]>`
- `Mike Sampson <[email protected]>`
- `Ms2ger <[email protected]>`
- `Nelo Onyiah <[email protected]>`
- `Nicholas <[email protected]>`
- `Nicholas Mazzuca <[email protected]>`
- `Nick Cameron <[email protected]>`
- `Nick Hamann <[email protected]>`
- `Nick Platt <[email protected]>`
- `Niko Matsakis <[email protected]>`
- `Oak <[email protected]>`
- `Oliver Schneider <[email protected]>`
- `P1start <[email protected]>`
- `Pascal Hertleif <[email protected]>`
- `Paul Banks <[email protected]>`
- `Paul Faria <[email protected]>`
- `Paul Quint <[email protected]>`
- `Pete Hunt <[email protected]>`
- `Peter Marheine <[email protected]>`
- `Phil Dawes <[email protected]>`
- `Philip Munksgaard <[email protected]>`
- `Piotr Czarnecki <[email protected]>`
- `Piotr Szotkowski <[email protected]>`
- `Poga Po <[email protected]>`
- `Przemysław Wesołek <[email protected]>`
- `Ralph Giles <[email protected]>`
- `Raphael Speyer <[email protected]>`
- `Remi Rampin <[email protected]>`
- `Ricardo Martins <[email protected]>`
- `Richo Healey <[email protected]>`
- `Rob Young <[email protected]>`
- `Robin Kruppe <[email protected]>`
- `Robin Stocker <[email protected]>`
- `Rory O’Kane <[email protected]>`
- `Ruud van Asseldonk <[email protected]>`
- `Ryan Prichard <[email protected]>`
- `Scott Olson <[email protected]>`
- `Sean Bowe <[email protected]>`
- `Sean McArthur <[email protected]>`
- `Sean Patrick Santos <[email protected]>`
- `Seo Sanghyeon <[email protected]>`
- `Shmuale Mark <[email protected]>`
- `Simon Kern <[email protected]>`
- `Simon Sapin <[email protected]>`
- `Simonas Kazlauskas <[email protected]>`
- `Sindre Johansen <[email protected]>`
- `Skyler <[email protected]>`
- `Steve Klabnik <[email protected]>`
- `Steven Allen <[email protected]>`
- `Swaroop C H <[email protected]>`
- `Sébastien Marie <[email protected]>`
- `Tamir Duberstein <[email protected]>`
- `Tero Hänninen <[email protected]>`
- `Theo Belaire <[email protected]>`
- `Theo Belaire <[email protected]>`
- `Thiago Carvalho <[email protected]>`
- `Thomas Jespersen <[email protected]>`
- `Tibor Benke <[email protected]>`
- `Tim Cuthbertson <[email protected]>`
- `Tincan <[email protected]>`
- `Ting-Yu Lin <[email protected]>`
- `Tobias Bucher <[email protected]>`
- `Toni Cárdenas <[email protected]>`
- `Tshepang Lekhonkhobe <[email protected]>`
- `Ulrik Sverdrup <root@localhost>`
- `Vadim Chugunov <[email protected]>`
- `Vadim Petrochenkov <[email protected]>`
- `Valerii Hiora <[email protected]>`
- `Wangshan Lu <[email protected]>`
- `Wei-Ming Yang <[email protected]>`
- `Will <[email protected]>`
- `Will Hipschman <[email protected]>`
- `Wojciech Ogrodowczyk <[email protected]>`
- `Xue Fuqiao <[email protected]>`
- `Xuefeng Wu <[email protected]>`
- `York Xiang <[email protected]>`
- `Young Wu <[email protected]>`
- `bcoopers <[email protected]>`
- `critiqjo <[email protected]>`
- `diwic <[email protected]>`
- `fenduru <[email protected]>`
- `gareins <[email protected]>`
- `github-monoculture <[email protected]>`
- `inrustwetrust <[email protected]>`
- `jooert <[email protected]>`
- `kgv <[email protected]>`
- `klutzy <[email protected]>`
- `kwantam <[email protected]>`
- `leunggamciu <[email protected]>`
- `mdinger <[email protected]>`
- `nwin <[email protected]>`
- `pez <[email protected]>`
- `robertfoss <[email protected]>`
- `rundrop1 <[email protected]>`
- `sinkuu <[email protected]>`
- `tynopex <[email protected]>`
- `Łukasz Niemier <[email protected]>`
- `らいどっと <[email protected]>`

[stable]: http://blog.rust-lang.org/2014/10/30/Stability.html
[train]: http://blog.rust-lang.org/2014/12/12/1.0-Timeline.html
[traits]: http://blog.rust-lang.org/2015/05/11/traits.html
[rfcs]: https://github.com/rust-lang/rfcs/blob/master/README.md
[1068]: https://github.com/rust-lang/rfcs/pull/1068
[contributing]: https://github.com/rust-lang/rust/blob/master/CONTRIBUTING.md
[hb]: http://en.wikipedia.org/wiki/Heisenbug
[priorities]: http://internals.rust-lang.org/t/priorities-after-1-0/1901
[crates.io]: https://crates.io/
[cargo]: http://blog.rust-lang.org/2014/11/20/Cargo.html
[relnotes]: https://github.com/rust-lang/rust/blob/master/RELEASES.md#version-100-may-2015
[caveats]: https://github.com/rust-lang/rfcs/pull/1122
[book]: http://doc.rust-lang.org/1.0.0-beta.5/book/getting-started.html
[ffi]: http://blog.rust-lang.org/2015/04/24/Rust-Once-Run-Everywhere.html
[AUTHORS]: https://github.com/rust-lang/rust/blob/master/AUTHORS.txt
[23606]: https://github.com/rust-lang/rust/pull/23606/
[1044]: https://github.com/rust-lang/rfcs/pull/1044
[24965]: https://github.com/rust-lang/rust/pull/24965
[24615]: https://github.com/rust-lang/rust/pull/24615
[25323]: https://github.com/rust-lang/rust/pull/25323
[ebook]: http://killercup.github.io/trpl-ebook/