+Version 1.0.0-beta (April 2015)
+-------------------------------------
+
+* ~1100 changes, numerous bugfixes
+
+* Highlights
+
+ * The big news is that the vast majority of the standard library
+ is now `#[stable]` -- 75% of the non-deprecated API surface at
+ last count. Numerous crates are now running on stable
+ Rust. Starting with this release, it is not possible to use
+ unstable features on a stable build.
+ * Arithmetic on basic integer types now
+ [checks for overflow in debug builds][overflow].
+
+* Language
+
+ * [`Send` no longer implies `'static`][send-rfc], which made
+ possible the [`thread::scoped` API][scoped]. Scoped threads can
+ borrow data from their parent's stack frame -- safely!
+ * [UFCS now supports trait-less associated paths][moar-ufcs] like
+ `MyType::default()`.
+ * Primitive types [now have inherent methods][prim-inherent],
+ obviating the need for extension traits like `SliceExt`.
+ * Methods with `Self: Sized` in their `where` clause are
+ [considered object-safe][self-sized], allowing many extension
+ traits like `IteratorExt` to be merged into the traits they
+ extended.
+ * You can now [refer to associated types][assoc-where] whose
+ corresponding trait bounds appear only in a `where` clause.
+ * The final bits of [OIBIT landed][oibit-final], meaning that
+ traits like `Send` and `Sync` are now library-defined.
+ * A [Reflect trait][reflect] was introduced, which means that
+ downcasting via the `Any` trait is effectively limited to
+ concrete types. This helps retain the potentially-important
+ "parametricity" property: generic code cannot behave differently
+ for different type arguments except in minor ways.
+ * The `unsafe_destructor` feature is now deprecated in favor of
+ the [new `dropck`][dropck]. This change is a major reduction in
+ unsafe code.
+ * Trait coherence was [revised again][fundamental], this time with
+ an eye toward API evolution over time.
+
+* Libraries
+
+ * The new path and IO modules are complete and `#[stable]`. This
+ was the major library focus for this cycle.
+ * The path API was [revised][path-normalize] to normalize `.`,
+ adjusting the tradeoffs in favor of the most common usage.
+ * A large number of remaining APIs in `std` were also stabilized
+ during this cycle; about 75% of the non-deprecated API surface
+ is now stable.
+ * The new [string pattern API][string-pattern] landed, which makes
+ the string slice API much more internally consistent and flexible.
+ * A shiny [framework for Debug implementations][debug-builder] landed.
+ This makes it possible to opt in to "pretty-printed" debugging output.
+ * A new set of [generic conversion traits][conversion] replaced
+ many existing ad hoc traits.
+ * Generic numeric traits were
+ [completely removed][num-traits]. This was made possible thanks
+ to inherent methods for primitive types, and the removal gives
+ maximal flexibility for designing a numeric hierarchy in the future.
+ * The `Fn` traits are now related via [inheritance][fn-inherit]
+ and provide ergonomic [blanket implementations][fn-blanket].
+ * The `Index` and `IndexMut` traits were changed to
+ [take the index by value][index-value], enabling code like
+ `hash_map["string"]` to work.
+ * `Copy` now [inherits][copy-clone] from `Clone`, meaning that all
+ `Copy` data is known to be `Clone` as well.
+
+* Infrastructure
+
+ * Metadata was tuned, shrinking binaries [by 27%][metadata-shrink].
+ * Much headway was made on ecosystem-wide CI, making it possible
+ to [compare builds for breakage][ci-compare].
+
+[send-rfc]: https://github.com/rust-lang/rfcs/blob/master/text/0458-send-improvements.md
+[scoped]: http://static.rust-lang.org/doc/master/std/thread/fn.scoped.html
+[moar-ufcs]: https://github.com/rust-lang/rust/pull/22172
+[prim-inherent]: https://github.com/rust-lang/rust/pull/23104
+[overflow]: https://github.com/rust-lang/rfcs/blob/master/text/0560-integer-overflow.md
+[metadata-shrink]: https://github.com/rust-lang/rust/pull/22971
+[self-sized]: https://github.com/rust-lang/rust/pull/22301
+[assoc-where]: https://github.com/rust-lang/rust/pull/22512
+[string-pattern]: https://github.com/rust-lang/rust/pull/22466
+[oibit-final]: https://github.com/rust-lang/rust/pull/21689
+[reflect]: https://github.com/rust-lang/rust/pull/23712
+[debug-builder]: https://github.com/rust-lang/rfcs/blob/master/text/0640-debug-improvements.md
+[conversion]: https://github.com/rust-lang/rfcs/pull/529
+[num-traits]: https://github.com/rust-lang/rust/pull/23549
+[index-value]: https://github.com/rust-lang/rust/pull/23601
+[dropck]: https://github.com/rust-lang/rfcs/pull/769
+[fundamental]: https://github.com/rust-lang/rfcs/pull/1023
+[ci-compare]: https://gist.github.com/brson/a30a77836fbec057cbee
+[fn-inherit]: https://github.com/rust-lang/rust/pull/23282
+[fn-blanket]: https://github.com/rust-lang/rust/pull/23895
+[copy-clone]: https://github.com/rust-lang/rust/pull/23860
+[path-normalize]: https://github.com/rust-lang/rust/pull/23229
+
+Version 1.0.0-alpha.2 (February 2015)
+-------------------------------------
+
+* ~1300 changes, numerous bugfixes
+
+* Highlights
+
+ * The various I/O modules were [overhauled][io-rfc] to reduce
+ unncessary abstractions and provide better interoperation with
+ the underlying platform. The old `io` module remains temporarily
+ at `std::old_io`.
+ * The standard library now [partipates in feature gating][feat],
+ so use of unstable libraries now requires a `#![feature(...)]`
+ attribute. The impact of this change is [described on the
+ forum][feat-forum]. [RFC][feat-rfc].
+
+* Language
+
+ * `for` loops [now operate on the `IntoIterator` trait][into],
+ which eliminates the need to call `.iter()`, etc. to iterate
+ over collections. There are some new subtleties to remember
+ though regarding what sort of iterators various types yield, in
+ particular that `for foo in bar { }` yields values from a move
+ iterator, destroying the original collection. [RFC][into-rfc].
+ * Objects now have [default lifetime bounds][obj], so you don't
+ have to write `Box<Trait+'static>` when you don't care about
+ storing references. [RFC][obj-rfc].
+ * In types that implement `Drop`, [lifetimes must outlive the
+ value][drop]. This will soon make it possible to safely
+ implement `Drop` for types where `#[unsafe_destructor]` is now
+ required. Read the [gorgeous RFC][drop-rfc] for details.
+ * The fully qualified <T as Trait>::X syntax lets you set the Self
+ type for a trait method or associated type. [RFC][ufcs-rfc].
+ * References to types that implement `Deref<U>` now [automatically
+ coerce to references][deref] to the dereferenced type `U`,
+ e.g. `&T where T: Deref<U>` automatically coerces to `&U`. This
+ should eliminate many unsightly uses of `&*`, as when converting
+ from references to vectors into references to
+ slices. [RFC][deref-rfc].
+ * The explicit [closure kind syntax][close] (`|&:|`, `|&mut:|`,
+ `|:|`) is obsolete and closure kind is inferred from context.
+ * [`Self` is a keyword][Self].
+
+* Libraries
+
+ * The `Show` and `String` formatting traits [have been
+ renamed][fmt] to `Debug` and `Display` to more clearly reflect
+ their related purposes. Automatically getting a string
+ conversion to use with `format!("{:?}", something_to_debug)` is
+ now written `#[derive(Debug)]`.
+ * Abstract [OS-specific string types][osstr], `std::ff::{OsString,
+ OsStr}`, provide strings in platform-specific encodings for easier
+ interop with system APIs. [RFC][osstr-rfc].
+ * The `boxed::into_raw` and `Box::from_raw` functions [convert
+ between `Box<T>` and `*mut T`][boxraw], a common pattern for
+ creating raw pointers.
+
+* Tooling
+
+ * Certain long error messages of the form 'expected foo found bar'
+ are now [split neatly across multiple
+ lines][multiline]. Examples in the PR.
+ * On Unix Rust can be [uninstalled][un] by running
+ `/usr/local/lib/rustlib/uninstall.sh`.
+ * The `#[rustc_on_unimplemented]` attribute, requiring the
+ 'on_unimplemented' feature, lets rustc [display custom error
+ messages when a trait is expected to be implemented for a type
+ but is not][onun].
+
+* Misc
+
+ * Rust is tested against a [LALR grammar][lalr], which parses
+ almost all the Rust files that rustc does.
+
+[boxraw]: https://github.com/rust-lang/rust/pull/21318
+[close]: https://github.com/rust-lang/rust/pull/21843
+[deref]: https://github.com/rust-lang/rust/pull/21351
+[deref-rfc]: https://github.com/rust-lang/rfcs/blob/master/text/0241-deref-conversions.md
+[drop]: https://github.com/rust-lang/rust/pull/21972
+[drop-rfc]: https://github.com/rust-lang/rfcs/blob/master/text/0769-sound-generic-drop.md
+[feat]: https://github.com/rust-lang/rust/pull/21248
+[feat-forum]: http://users.rust-lang.org/t/psa-important-info-about-rustcs-new-feature-staging/82/5
+[feat-rfc]: https://github.com/rust-lang/rfcs/blob/master/text/0507-release-channels.md
+[fmt]: https://github.com/rust-lang/rust/pull/21457
+[into]: https://github.com/rust-lang/rust/pull/20790
+[into-rfc]: https://github.com/rust-lang/rfcs/blob/master/text/0235-collections-conventions.md#intoiterator-and-iterable
+[io-rfc]: https://github.com/rust-lang/rfcs/blob/master/text/0517-io-os-reform.md
+[lalr]: https://github.com/rust-lang/rust/pull/21452
+[multiline]: https://github.com/rust-lang/rust/pull/19870
+[obj]: https://github.com/rust-lang/rust/pull/22230
+[obj-rfc]: https://github.com/rust-lang/rfcs/blob/master/text/0599-default-object-bound.md
+[onun]: https://github.com/rust-lang/rust/pull/20889
+[osstr]: https://github.com/rust-lang/rust/pull/21488
+[osstr-rfc]: https://github.com/rust-lang/rfcs/blob/master/text/0517-io-os-reform.md
+[Self]: https://github.com/rust-lang/rust/pull/22158
+[ufcs]: https://github.com/rust-lang/rust/pull/21077
+[ufcs-rfc]: https://github.com/rust-lang/rfcs/blob/master/text/0132-ufcs.md
+[un]: https://github.com/rust-lang/rust/pull/22256
+
Version 1.0.0-alpha (January 2015)
----------------------------------