diff --git a/CHANGELOG.md b/CHANGELOG.md
index 4a0d614d49dc35b97cd9d1c9ed21f01697e57843..c13f40793d06f9031e0e5a169df73d5c8e75f595 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -5,6 +5,12 @@ This project adheres to [Semantic Versioning](http://semver.org/).
 
 ## [Unreleased]
 
+## [v0.2.1] - 2017-07-29
+
+### Fixed
+
+- Link to `app!` macro documentation.
+
 ## [v0.2.0] - 2017-07-29
 
 ### Added
@@ -42,6 +48,7 @@ This project adheres to [Semantic Versioning](http://semver.org/).
 
 - Initial release
 
-[Unreleased]: https://github.com/japaric/cortex-m-rtfm/compare/v0.2.0...HEAD
+[Unreleased]: https://github.com/japaric/cortex-m-rtfm/compare/v0.2.1...HEAD
+[v0.2.1]: https://github.com/japaric/cortex-m-rtfm/compare/v0.2.0...v0.2.1
 [v0.2.0]: https://github.com/japaric/cortex-m-rtfm/compare/v0.1.1...v0.2.0
 [v0.1.1]: https://github.com/japaric/cortex-m-rtfm/compare/v0.1.0...v0.1.1
diff --git a/Cargo.toml b/Cargo.toml
index f2a63e5df025cd9b882570401028b95040fc1063..f345689e92d85857b4decc1b2e0004296dcac146 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -10,7 +10,7 @@ keywords = ["arm", "cortex-m"]
 license = "MIT OR Apache-2.0"
 name = "cortex-m-rtfm"
 repository = "https://github.com/japaric/cortex-m-rtfm"
-version = "0.2.0"
+version = "0.2.1"
 
 [dependencies]
 cortex-m = "0.3.1"
diff --git a/src/lib.rs b/src/lib.rs
index 30a490212d5efa02e3ff0dc02c8677ff3679b68d..3fde2ddc10a2e8d9c17b64cd322dbd1604753122 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -46,7 +46,9 @@
 //!
 //! # `app!`
 //!
-//! The `app!` macro is documented [here](../cortex_m_rtfm_macros/fn.app.html).
+//! The `app!` macro is documented [here].
+//!
+//! [here]: https://docs.rs/cortex-m-rtfm-macros/0.2.0/cortex_m_rtfm_macros/fn.app.html
 //!
 //! # Examples
 //!