about summary refs log tree commit diff
diff options
context:
space:
mode:
authorBrian Anderson <banderson@mozilla.com>2013-06-30 15:02:52 -0700
committerBrian Anderson <banderson@mozilla.com>2013-06-30 15:02:52 -0700
commit9b8c435c8e88a582877b953a1fde5ffd8ac66247 (patch)
tree4a54011b41466f503b87e1415feb0867e9da69ec
parentca835f482cebcd353db789e45f9cec72db1a24ed (diff)
More 0.7 release notes
-rw-r--r--RELEASES.txt65
1 files changed, 35 insertions, 30 deletions
diff --git a/RELEASES.txt b/RELEASES.txt
index 9ac4d650b43..33f749d0010 100644
--- a/RELEASES.txt
+++ b/RELEASES.txt
@@ -1,54 +1,56 @@
 Version 0.7 (July 2013)
 -----------------------
 
-   * ??? changes, numerous bugfixes
+   * ~2000 changes, numerous bugfixes
 
-   * Syntax changes
+   * Language
       * `impl`s no longer accept a visibility qualifier. Put them on methods
         instead.
-      * `use mod` is no longer valid.
-      * `fail!` and `assert!` accept `~str`, `&'static str` or `fmt!`-style
-        argument list.
-      * `Encodable`, `Decodable`, `Ord`, `TotalOrd`, `TotalEq`, `DeepClone`,
-        `Rand`, `Zero` and `ToStr` can all be automatically derived with
-        `#[deriving(...)]`.
-      * The `Durable` trait is replaced with the `'static` bounds.
-      * At long last, 'argument modes' no longer exist.
-      * The `bytes!` macro returns a vector of bytes for string, u8, char,
-        and unsuffixed integer literals.
-      * `#[static_assert]` makes compile-time assertions about static bools.
-
-   * Semantic changes
       * The borrow checker has been rewritten with flow-sensitivity, fixing
         many bugs and inconveniences.
       * The `self` parameter no longer implicitly means `&'self self`,
         and can be explicitly marked with a lifetime.
-      * Structs with the `#[packed]` attribute have byte alignment and
-        no padding between fields.
+      * Overloadable compound operators (`+=`, etc.) have been temporarily
+        removed due to bugs.
       * The `for` loop protocol now requires `for`-iterators to return `bool`
         so they compose better.
+      * The `Durable` trait is replaced with the `'static` bounds.
       * Trait default methods work more often.
+      * Structs with the `#[packed]` attribute have byte alignment and
+        no padding between fields.
       * Type parameters bound by `Copy` must now be copied explicitly with
         the `copy` keyword.
       * It is now illegal to move out of a dereferenced unsafe pointer.
       * `Option<~T>` is now represented as a nullable pointer.
       * `@mut` does dynamic borrow checks correctly.
-      * Macros TODO
       * The `main` function is only detected at the topmost level of the crate.
         The `#[main]` attribute is still valid anywhere.
       * Struct fields may no longer be mutable. Use inherited mutability.
-      * The `#[non_owned]` attribute makes a type that would otherwise be
-        `Owned`, not. TODO this may change to non_send before 0.7
-      * The `#[mutable]` attribute makes a type that would otherwise be
-        `Const`, note. TODO this may change to non_freeze before 0.7
+      * The `#[no_send]` attribute makes a type that would otherwise be
+        `Send`, not.
+      * The `#[no_freeze]` attribute makes a type that would otherwise be
+        `Freeze`, not.
       * Unbounded recursion will abort the process after reaching the limit
         specified by the `RUST_MAX_STACK` environment variable (default: 1GB).
       * The `vecs_implicitly_copyable` lint mode has been removed. Vectors
         are never implicitly copyable.
+      * `#[static_assert]` makes compile-time assertions about static bools.
+      * At long last, 'argument modes' no longer exist.
+      * The rarely used `use mod` statement no longer exists.
+
+   * Syntax extensions
+      * `fail!` and `assert!` accept `~str`, `&'static str` or `fmt!`-style
+        argument list.
+      * `Encodable`, `Decodable`, `Ord`, `TotalOrd`, `TotalEq`, `DeepClone`,
+        `Rand`, `Zero` and `ToStr` can all be automatically derived with
+        `#[deriving(...)]`.
+      * The `bytes!` macro returns a vector of bytes for string, u8, char,
+        and unsuffixed integer literals.
 
    * Libraries
       * The `core` crate was renamed to `std`.
       * The `std` crate was renamed to `extra`.
+      * More and improved documentation.
       * std: `iterator` module for external iterator objects.
       * Many old-style (internal, higher-order function) iterators replaced by
         implementations of `Iterator`.
@@ -91,8 +93,16 @@ Version 0.7 (July 2013)
       * extra: Implementation of fixed output size variations of SHA-2.
 
    * Tooling
-      * `unused_unsafe` lint mode for detecting unnecessary `unsafe` blocks.
-      * `unused_mut` lint mode for identifying unused `mut` qualifiers.
+      * `unused_variable`  lint mode for unused variables (default: warn).
+      * `unused_unsafe` lint mode for detecting unnecessary `unsafe` blocks
+        (default: warn).
+      * `unused_mut` lint mode for identifying unused `mut` qualifiers
+        (default: warn).
+      * `dead_assignment` lint mode for unread variables (default: warn).
+      * `unnecessary_allocation` lint mode detects some heap allocations that are
+        immediately borrowed so could be written without allocating (default: warn).
+      * `missing_doc` lint mode (default: allow).
+      * `unreachable_code` lint mode (default: warn).
       * The `rusti` command has been rewritten and a number of bugs addressed.
       * rustc outputs in color on more terminals.
       * rustc accepts a `--link-args` flag to pass arguments to the linker.
@@ -101,12 +111,7 @@ Version 0.7 (July 2013)
         dynamic borrowcheck failures for debugging.
       * rustdoc has a nicer stylesheet.
       * Various improvements to rustdoc.
-      * Improvements to rustpkg (see the detailed release notes)
-
-   * Other
-      * More and improved library documentation.
-      * Various improvements on ARM and Android.
-      * Various improvements to MIPS backend.
+      * Improvements to rustpkg (see the detailed release notes).
 
 Version 0.6 (April 2013)
 ------------------------