diff --git a/CHANGELOG.md b/CHANGELOG.md
index 1f8e34fb..c5db34ad 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -4,6 +4,103 @@ documented here.
This project adheres to [Semantic Versioning](http://semver.org/).
+## [0.11.0]
+The [website](http://nalgebra.org) has been fully rewritten and gives a good
+overview of all the added/modified features.
+
+This version is a major rewrite of the library. Major changes are:
+ * Algebraic traits are now defined by the [alga](https://crates.io/crates/alga) crate.
+ * Methods are now preferred to free functions because they do not require any
+ trait to be used any more.
+ * Most algebraic entities can be parametrized by type-level integers
+ to specify their dimensions. Using `Dynamic` instead of a type-level
+ integer indicates that the dimension known at run-time only.
+ * Statically-sized **rectangular** matrices.
+ * More transformation types have been added: unit-sized complex numbers (for
+ 2D rotations), affine/projective/general transformations with `Affine2/3`,
+ `Projective2/3`, and `Transform2/3`.
+ * Serde serialization is now supported instead of `rustc_serialize`.
+ * Matrix **slices** are now implemented.
+
+### Added
+Lots of features including rectangular matrices, slices, and Serde
+serialization. Refer to the brand new [website](http://nalgebra.org) for more
+details. The following free-functions have been added as well:
+ * `::id()` that returns the universal [identity element](http://nalgebra.org/performance_tricks/#the-id-type)
+ of type `Id`.
+ * `::inf_sup()` that returns both the infimum and supremum of a value at the
+ same time.
+ * `::partial_sort2()` that attempts to sort two values in increasing order.
+ * `::wrap()` that moves a value to the given interval by adding or removing
+ the interval width to it.
+
+### Modified
+ * `::cast` -> `::convert`
+ * `point.as_vector()` -> `point.coords`
+ * `na::origin` -> `P::origin()`
+ * `na::is_zero` -> `.is_zero()` (from num::Zero)
+ * `.transform` -> `.transform_point`/`.transform_vector`
+ * `.translate` -> `.translate_point`
+ * `::dimension::
` -> `::dimension::`
+ * `::angle_between` -> `::angle`
+
+The following free-functions are now replaced by methods (with the same names)
+only:
+`::cross`, `::cholesky`, `::determinant`, `::diagonal`, `::eigen_qr` (becomes
+`.eig`), `::hessenberg`, `::qr`, `::to_homogeneous`, `::to_rotation_matrix`,
+`::transpose`, `::shape`.
+
+
+The following free-functions are now replaced by static methods only:
+ * `::householder_matrix` under the name `::new_householder_generic`
+ * `::identity`
+ * `::new_identity` under the name `::identity`
+ * `::from_homogeneous`
+ * `::repeat` under the name `::from_element`
+
+The following free-function are now replaced methods accessible through traits
+only:
+ * `::transform` -> methods `.transform_point` and `.transform_vector` of the `alga::linear::Transformation` trait.
+ * `::inverse_transform` -> methods `.inverse_transform_point` and
+ `.inverse_transform_vector` of the `alga::linear::ProjectiveTransformation`
+ trait.
+ * `::translate`, `::inverse_translate`, `::rotate`, `::inverse_rotate` ->
+ methods from the `alga::linear::Similarity` trait instead. Those have the
+ same names but end with `_point` or `_vector`, e.g., `.translate_point` and
+ `.translate_vector`.
+ * `::orthonormal_subspace_basis` -> method with the same name from
+ `alga::linear::FiniteDimInnerSpace`.
+ * `::canonical_basis_element` and `::canonical_basis` -> methods with the
+ same names from `alga::linear::FiniteDimVectorSpace`.
+ * `::rotation_between` -> method with the same name from the
+ `alga::linear::Rotation` trait.
+ * `::is_zero` -> method with the same name from `num::Zero`.
+
+
+
+### Removed
+ * The free functions `::prepend_rotation`, `::append_rotation`,
+ `::append_rotation_wrt_center`, `::append_rotation_wrt_point`,
+ `::append_transformation`, and `::append_translation ` have been removed.
+ Instead create the rotation or translation object explicitly and use
+ multiplication to compose it with anything else.
+
+ * The free function `::outer` has been removed. Use column-vector ×
+ row-vector multiplication instead.
+
+ * `::approx_eq`, `::approx_eq_eps` have been removed. Use the `relative_eq!`
+ macro from the [approx](https://crates.io/crates/approx) crate instead.
+
+ * `::covariance` has been removed. There is no replacement for now.
+ * `::mean` has been removed. There is no replacement for now.
+ * `::sample_sphere` has been removed. There is no replacement for now.
+ * `::cross_matrix` has been removed. There is no replacement for now.
+ * `::absolute_rotate` has been removed. There is no replacement for now.
+ * `::rotation`, `::transformation`, `::translation`, `::inverse_rotation`,
+ `::inverse_transformation`, `::inverse_translation` have been removed. Use
+ the appropriate methods/field of each transformation type, e.g.,
+ `rotation.angle()` and `rotation.axis()`.
+
## [0.10.0]
### Added
Binary operations are now allowed between references as well. For example
diff --git a/Makefile b/Makefile
index 00457c11..c2b68b5c 100644
--- a/Makefile
+++ b/Makefile
@@ -2,7 +2,7 @@ all:
CARGO_INCREMENTAL=1 cargo build --features "arbitrary"
doc:
- CARGO_INCREMENTAL=1 cargo doc
+ CARGO_INCREMENTAL=1 cargo doc --no-deps
bench:
cargo bench
diff --git a/README.md b/README.md
index 7d6a99fa..bf337cd5 100644
--- a/README.md
+++ b/README.md
@@ -2,11 +2,14 @@
+
+
+
-
-
+
+
@@ -14,3 +17,11 @@
Users guide | Documentation | Forum
+
+-----
+
+
+Linear algebra library
+
+… for the [Rust](https://www.rust-lang.org) programming language.
+
diff --git a/examples/scalar_genericity.rs b/examples/scalar_genericity.rs
index 156d93ab..70a25d14 100644
--- a/examples/scalar_genericity.rs
+++ b/examples/scalar_genericity.rs
@@ -11,7 +11,6 @@ fn print_vector(m: &Vector3) {
fn print_squared_norm(v: &Vector3) {
// NOTE: alternatively, nalgebra already defines `v.squared_norm()`.
let sqnorm = v.dot(v);
-
println!("{:?}", sqnorm);
}