docs+build: Prepare release of version 0.4.0

Change-Id: Ibd3129da74afa24a35115789a517e562f0a12639
Refs: #3178
diff --git a/RELEASE_NOTES.rst b/RELEASE_NOTES.rst
index 9e657ae..5210b1d 120000
--- a/RELEASE_NOTES.rst
+++ b/RELEASE_NOTES.rst
@@ -1 +1 @@
-docs/RELEASE_NOTES.rst
\ No newline at end of file
+docs/release-notes/release-notes-0.4.0.rst
\ No newline at end of file
diff --git a/docs/RELEASE_NOTES.rst b/docs/RELEASE_NOTES.rst
index fb45902..0618e7b 100644
--- a/docs/RELEASE_NOTES.rst
+++ b/docs/RELEASE_NOTES.rst
@@ -1,736 +1,4 @@
-.. _NFD Release Notes:
-
 NFD Release Notes
 =================
 
-NFD version 0.3.4 (changes since version 0.3.3)
-+++++++++++++++++++++++++++++++++++++++++++++++
-
-Release date: August 31, 2015
-
-New features:
-^^^^^^^^^^^^^
-
-- Boolean Face property IsOnDemand has been replaced with multistate FacePersistency
-  property (:issue:`2989`, :issue:`3018`): persistent (Face exists as long as there are no
-  system or socket errors), on-demand (Face is removed after inactivity period), and
-  permanent (Face exists unless explicitly destroyed by the management).
-
-  Currently, only UDP faces are allowed to be permanent.  However, management interface to
-  create UDP permanent faces or switch UDP to permanent state will be available in the
-  next release (:issue:`2991`).
-
-- Least Recently Used policy for Content Store (:issue:`2219`)
-
-  Currently, changing the policy requires a minor change in NFD source code.
-  Configuration interface is coming in the next release (:issue:`3148`)
-
-
-Updates and bug fixes:
-^^^^^^^^^^^^^^^^^^^^^^
-
-- Update of NDN Essential Tools to version 0.2 `<https://github.com/named-data/ndn-tools>`__
-  with code improvements and the following new tools:
-
-  * PIB service to manage the public information of keys and publish certificates
-    (:issue:`3018`)
-  * A Wireshark dissector for NDN packets (:issue:`3092`)
-
-- RibManager constructor now accepts KeyChain as a parameter, preparing it for simplifying
-  implementation with the new ``ndn::Dispatcher`` class (:issue:`2390`)
-
-- Fix HTML rendering of nfd-status-http-server output in some browsers (:issue:`3019`)
-
-- Enable automatic re-creation of multicast faces when network connectivity changes
-  (:issue:`2460`)
-
-- Enhance exception throwing with Boost Exception library (:issue:`2541`)
-
-Deprecated:
-^^^^^^^^^^^
-
-- BroadcastStrategy (``/localhost/nfd/strategy/broadcast``) renamed as MulticastStrategy
-  (``/localhost/nfd/strategy/multicast``) (:issue:`3011`)
-
-Upcoming features (partially finished in development branches):
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-
-- NDNLPv2 (http://redmine.named-data.net/projects/nfd/wiki/NDNLPv2, :issue:`2520`,
-  :issue:`2879`, :issue:`2763`, :issue:`2883`, :issue:`2841`, :issue:`2866`)
-
-- Refactored implementation of NFD management (:issue:`2200`, :issue:`2107`)
-
-****************************************************************************
-
-NFD version 0.3.3 (changes since version 0.3.2)
-+++++++++++++++++++++++++++++++++++++++++++++++
-
-Release date: July 1, 2015
-
-New features:
-^^^^^^^^^^^^^
-
-- Content Store replacement policy interface (:issue:`1207`)
-
-- Add unit file and instructions for systemd (:issue:`1586`)
-
-- NDN Essential Tools version 0.1 `<https://github.com/named-data/ndn-tools>`__ featuring:
-
-  * ``ndnpeek``, ``ndnpoke``: a pair of programs to request and make available for retrieval of
-    a single Data packet
-  * ``ndnping``, ``ndnpingserver``: reachability testing tools for Named Data Networking
-  * ``ndndump``: a traffic analysis tool that captures Interest and Data packets on the wire
-  * ``ndn-dissect``: an NDN packet format inspector. It reads zero or more NDN packets from
-    either an input file or the standard input, and displays the Type-Length-Value (TLV)
-    structure of those packets on the standard output.
-
-Updates and bug fixes:
-^^^^^^^^^^^^^^^^^^^^^^
-
-- Avoid loopback new Interest in AccessStrategy (:issue:`2831`)
-
-- Simplified implementation of ``nfd-status`` using SegmentFetcher utility class (:issue:`2456`)
-
-Deprecated:
-^^^^^^^^^^^
-
-- ``ndn-tlv-peek`` and ``ndn-tlv-poke`` command-line tools: use ``ndnpeek`` and ``ndnpoke``
-  programs from NDN Essential Tools repository `<https://github.com/named-data/ndn-tools>`__.
-
-Upcoming features:
-^^^^^^^^^^^^^^^^^^
-
-- NDNLPv2 (http://redmine.named-data.net/projects/nfd/wiki/NDNLPv2, :issue:`2520`,
-  :issue:`2879`, :issue:`2763`, :issue:`2883`, :issue:`2841`, :issue:`2866`)
-
-- Refactored implementation of NFD management (:issue:`2200`, :issue:`2107`)
-
-****************************************************************************
-
-NFD version 0.3.2 (changes since version 0.3.1)
-+++++++++++++++++++++++++++++++++++++++++++++++
-
-Release date: May 12, 2015
-
-New features:
-^^^^^^^^^^^^^
-
-- **Tables**
-
-  * Change lookup API to allow async implementations  of ContentStore (:issue:`2411`)
-
-- **Management**
-
-  * Perform FIB updates before modifying RIB (:issue:`1941`)
-
-Updates and bug fixes:
-^^^^^^^^^^^^^^^^^^^^^^
-
-- **Documentation**
-
-  * Update planned Features: face enhancements (:issue:`2617`)
-
-  * Updated NFD's developer guide to reflect new changes and adding a new section on
-    NFD/ndn-cxx unit testing
-
-- **Face**
-
-  * Refactor channel acceptors to avoid use of shared pointers (:issue:`2613`)
-
-  * Refactor code to avoid deprecated `Block::fromBuffer` overloads (:issue:`2553`)
-
-  * Refactor code to use move semantics for sockets where possible (:issue:`2613`)
-
-  * Switch to non-throwing version of websocketpp APIs (:issue:`2630`)
-
-- **Forwarding**
-
-  * Extend measurements lifetime in AccessStrategy (:issue:`2452`)
-
-- **Management**
-
-  * Stop removed namespace from inheriting ancestor route (:issue:`2757`)
-
-  * Fix TestFibUpdates/EraseFace on Ubuntu 14.04 32-bit (:issue:`2697`)
-
-- **Tools**
-
-  * Fix hanging of `nfdc` on wrong input (:issue:`2690`)
-
-- **Build**
-
-  * Make build scripts compatible with Python 3 (:issue:`2625`)
-
-  * Get rid of the last use of ndn::dns in NFD (:issue:`2422`)
-
-  * Update waf build system to version 1.8.9 (:issue:`2209`, :issue:`2657`, :issue:`2792`)
-
-  * Tweak default pkg-config search paths (:issue:`2711`)
-
-  * Use C version of snprintf (:issue:`2299`)
-
-  * Emulate `std::to_string` when it is missing (:issue:`2299`)
-
-  * Fix several "defined but not used" warnings with gcc-5 (:issue:`2767`)
-
-  * Disable precompiled headers on OS X with clang < 6.1.0 (:issue:`2804`)
-
-****************************************************************************
-
-NFD version 0.3.1 (changes since version 0.3.0)
------------------------------------------------
-
-Release date: March 3, 2015
-
-New features:
-^^^^^^^^^^^^^
-
-- ``nfd`` and ``nrd`` daemons are now merged into a single process using separate threads
-  (:issue:`2489`)
-
-- **Core**
-
-  - Extend ConfigFile to support passing a parsed ConfigSection (:issue:`2495`)
-
-  - Allow customization of Logger and LoggerFactory (:issue:`2433`)
-
-  - Make global io_service, scheduler, and global random generator thread-local, and logger
-    thread-safe (:issue:`2489`)
-
-- **Forwarding**
-
-  - Introduce exponential back-off interest retransmission suppression mechanism and enable
-    its use in the best-route strategy (:issue:`1913`)
-
-  - Strategies are now registered with a macro, making it simpler to introduce new strategies
-    to NFD codebase (:issue:`2410`)
-
-- **Tables**
-
-  - ContentStore now recognizes CachingPolicy-NoCache from LocalControlHeader (:issue:`2185`)
-
-Updates and bug fixes:
-^^^^^^^^^^^^^^^^^^^^^^
-
-- **Faces**
-
-  - Remove Tcp|UdpChannel::connect overloads that perform DNS resolution (:issue:`2422`)
-
-  - Properly handle error conditions in UdpChannel::newPeer (:issue:`2516`)
-
-  - Fix inconsistency of UDP face timeouts in sample `nfd.conf` and actual defaults
-    (:issue:`2473`)
-
-  - Introduce Face-specific logging macros (:issue:`2450`)
-
-  - Refactor handling of LinkType face trait and fix FaceStatus reporting: the link type was
-    not properly propagated (:issue:`2563`)
-
-  - Avoid exceptions in NDNLP PartialMessageStore (:issue:`2261`)
-
-  - Update websocketpp to version 0.5.1
-
-- **Tables**
-
-  - Reduce priority of DeadNonceList log messages from DEBUG to TRACE
-
-- **Management**
-
-  - Change register/unregister logging in RibManager to INFO level (:issue:`2547`)
-
-- **Tools**
-
-  - Change prefix for :ref:`the local hub prefix discovery <local-prefix-discovery>` to be
-    under ``/localhop/nfd`` (:issue:`2479`, :issue:`2512`)
-
-- **Tests**
-
-  - Change naming conventions for unit test files and test suite names (:issue:`2497`)
-
-  - Fix segfault in TableNameTree test suite when all test logs are enabled (:issue:`2564`)
-
-****************************************************************************
-
-NFD version 0.3.0 (changes since version 0.2.0)
------------------------------------------------
-
-Release date: February 2, 2015
-
-New features:
-^^^^^^^^^^^^^
-
-- **Build**
-
-  + The code now requires C++11.  The minimum supported gcc version is 4.6, as earlier versions
-    do not have proper support for C++11 features.
-
-- **Faces**
-
-  + Enable detection of WebSocket connection failures using ping/pong messages (:issue:`1903`)
-
-  + In EthernetFace:
-
-    * Avoid putting the NIC in promiscuous mode if possible (:issue:`1278`)
-
-    * Report packets dropped by the kernel if debug is enabled (:issue:`2441`)
-
-    * Integrate NDNLP fragmentation (:issue:`1209`)
-
-- **Forwarding**
-
-  + Strategy versioning (:issue:`1893`)
-
-  + New Dead Nonce List table to supplement PIT for loop detection (:issue:`1953`)
-
-  + Abstract retransmission suppression logic (:issue:`2377`)
-
-  + New forwarding strategy for access router (:issue:`1999`)
-
-- **Management**
-
-  + Add config file-based strategy selection (:issue:`2053`)
-
-    The sample config file now includes strategy selection for ``/``, ``/localhost``,
-    ``/localhost/nfd``, and ``/ndn/broadcast`` namespaces as follows:
-
-    ::
-
-        tables
-        {
-          ...
-          strategy_choice
-          {
-            /               /localhost/nfd/strategy/best-route
-            /localhost      /localhost/nfd/strategy/broadcast
-            /localhost/nfd  /localhost/nfd/strategy/best-route
-            /ndn/broadcast  /localhost/nfd/strategy/broadcast
-          }
-        }
-
-  + Implement Query Operation in FaceManager (:issue:`1993`)
-
-  + FaceManager now responds with producer-generated NACK when query is invalid (:issue:`1993`)
-
-  + Add functionality for automatic remote prefix registration (:issue:`2056`)
-
-  + Only canonical FaceUri are allowed in faces/create commands (:issue:`1910`)
-
-- **Tables**
-
-  + StrategyInfoHost can now store multiple StrategyInfo of distinct types (:issue:`2240`)
-
-  + Enable iteration over PIT and CS entries (:issue:`2339`)
-
-  + Allow predicate to be specified in Measurements::findLongestPrefixMatch (:issue:`2314`)
-
-  + Calculate the implicit digest of Data packets in CS only when necessary (:issue:`1706`)
-
-- **Tools**
-
-  + Publish ``/localhop/ndn-autoconf/routable-prefixes`` from ``ndn-autoconfig-server``
-    (:issue:`1954`)
-
-  + Display detailed NFD software verion in ``nfd-status-http-server`` and ``nfd-status``
-    (:issue:`1916`)
-
-  + ``nfdc`` now accepts FaceUri in all commands (:issue:`1995`)
-
-  + Add daemon mode for ``ndn-autoconfig`` to re-run detection when connectivity changes
-    (:issue:`2417`)
-
-- **Core**
-
-  + New scheduler::ScopedEventId class to automatically handle scheduled event lifetime
-    (:issue:`2295`)
-
-Updates and bug fixes:
-^^^^^^^^^^^^^^^^^^^^^^
-
-- **Documentation**
-
-  + NFD Developer's guide has been updated to reflect changes in the codebase
-
-  + Installation instruction updates
-
-  + Update of config file instructions for disabling unix sockets (:issue:`2190`)
-
-- **Core**
-
-  + Use implementations moved to ndn-cxx library
-
-     + Use Signal from ndn-cxx (:issue:`2272`, :issue:`2300`)
-
-     + use ethernet::Address from ndn-cxx (:issue:`2142`)
-
-     + Use MAX_NDN_PACKET_SIZE constant from ndn-cxx (:issue:`2099`)
-
-     + Use DEFAULT_INTEREST_LIFETIME from ndn-cxx (:issue:`2202`)
-
-     + Use FaceUri from ndn-cxx (:issue:`2143`)
-
-     + Use DummyClientFace from ndn-cxx (:issue:`2186`)
-
-     + Use ndn::dns from ndn-cxx (:issue:`2207`)
-
-  + Move Network class implementation from ``tools/`` to ``core/``
-
-  + Ignore non-Ethernet ``AF_LINK`` addresses when enumerating NICs on OSX and other BSD systems
-
-  + Fix bug on not properly setting FreshnessPeriod inside SegmentPublisher (:issue:`2438`)
-
-- **Faces**
-
-  + Fix spurious assertion failure in StreamFace (:issue:`1856`)
-
-  + Update websocketpp submodule (:issue:`1903`)
-
-  + Replace FaceFlags with individual fields (:issue:`1992`)
-
-  + Drop WebSocket message if the size is larger than maximum NDN packet size (:issue:`2081`)
-
-  + Make EthernetFace more robust against errors (:issue:`1984`)
-
-  + Prevent potential infinite loop in TcpFactory and UdpFactory (:issue:`2292`)
-
-  + Prevent crashes when attempting to create a UdpFace over a half-working connection
-    (:issue:`2311`)
-
-  + Support MTU larger than 1500 in EthernetFace (for jumbo frames) (:issue:`2305`)
-
-  + Re-enable EthernetFace on OS X platform with boost >=1.57.0 (:issue:`1922`)
-
-  + Fix ``ioctl()`` calls on platforms where libpcap uses ``/dev/bpf*`` (:issue:`2327`)
-
-  + Fix overhead estimation in NDNLP slicer (:issue:`2317`)
-
-  + Replace usage of deprecated EventEmitter with Signal in Face abstractions (:issue:`2300`)
-
-  + Fix NDNLP PartialMessage cleanup scheduling (:issue:`2414`)
-
-  + Remove unnecessary use of DNS resolver in (Udp|Tcp|WebSocket)Factory (:issue:`2422`)
-
-- **Forwarding**
-
-  + Updates related to NccStrategy
-
-    * Fix to prevent remembering of suboptimal upstreams (:issue:`1961`)
-
-    * Optimizing FwNccStrategy/FavorRespondingUpstream test case (:issue:`2037`)
-
-    * Proper detection for new PIT entry (:issue:`1971`)
-
-    * Use UnitTestTimeFixture in NCC test case (:issue:`2163`)
-
-    * Fix loop back to sole downstream (:issue:`1998`)
-
-  + Updates related to BestRoute strategy
-
-    + Redesign best-route v2 strategy test case (:issue:`2126`)
-
-    + Fix clang compilation error in best-route v2 test case (:issue:`2179`)
-
-    + Use UnitTestClock in BestRouteStrategy2 test (:issue:`2160`)
-
-  + Allow strategies limited access to FaceTable (:issue:`2272`)
-
-- **Tables**
-
-  + Ensure that eviction of unsolicited Data is done in FIFO order (:issue:`2043`)
-
-  + Simplify table implementations with C++11 features (:issue:`2100`)
-
-  + Fix issue with Fib::removeNextHopFromAllEntries invalidating NameTree iterator
-    (:issue:`2177`)
-
-  + Replace deprecated EventEmitter with Signal in FaceTable (:issue:`2272`)
-
-  + Refactored implementation of ContentStore based on std::set (:issue:`2254`)
-
-- **Management**
-
-  + Allow omitted FaceId in faces/create command (:issue:`2031`)
-
-  + Avoid deprecated ``ndn::nfd::Controller(Face&)`` constructor (:issue:`2039`)
-
-  + Enable check of command length before accessing verb (:issue:`2151`)
-
-  + Rename FaceEntry to Route (:issue:`2159`)
-
-  + Insert RIB command prefixes into RIB (:issue:`2312`)
-
-- **Tools**
-
-  + Display face attribute fields instead of FaceFlags in ``nfd-status`` and
-    ``nfd-status-http-server`` output (:issue:`1991`)
-
-  + Fix ``nfd-status-http-server`` hanging when nfd-status output is >64k (:issue:`2121`)
-
-  + Ensure that ``ndn-autoconfig`` canonizes FaceUri before sending commands to NFD
-    (:issue:`2387`)
-
-  + Refactored ndn-autoconfig implementation (:issue:`2421`)
-
-  + ndn-autoconfig will now register also ``/localhop/nfd`` prefix towards the hub (:issue:`2416`)
-
-- **Tests**
-
-  + Use UnitTestClock in Forwarder persistent loop test case (:issue:`2162`)
-
-  + Use LimitedIo in FwForwarder/SimpleExchange test case (:issue:`2161`)
-
-- **Build**
-
-  + Fix build error with python3 (:issue:`1302`)
-
-  + Embed CI build and test running script
-
-  + Properly disable assertions in release builds (:issue:`2139`)
-
-  + Embed setting of ``PKG_CONFIG_PATH`` variable to commonly used values (:issue:`2178`)
-
-  + Add conditional compilation for NetworkInterface and PrivilegeHelper
-
-  + Support tools with multiple translation units (:issue:`2344`)
-
-Removals
-^^^^^^^^
-
-- Remove ``listen`` option from unix channel configuration (:issue:`2188`)
-
-- Remove usage of deprecated ``MetaInfo::TYPE_*`` constants (:issue:`2128`)
-
-- Eliminate MapValueIterator in favor of ``boost::adaptors::map_values``
-
-****************************************************************************
-
-NFD version 0.2.0 (changes since version 0.1.0)
------------------------------------------------
-
-Release date: August 25, 2014
-
-- **Documentation**
-
-  + `"NFD Developer's Guide" by NFD authors
-    <http://named-data.net/wp-content/uploads/2014/07/NFD-developer-guide.pdf>`_ that
-    explains NFD's internals including the overall design, major modules, their
-    implementation, and their interactions
-
-  + New detailed instructions on how to enable auto-start of NFD using OSX ``launchd``
-    and Ubuntu's ``upstart`` (see `contrib/ folder
-    <https://github.com/named-data/NFD/tree/master/contrib>`_)
-
-- **Core**
-
-  + Add support for temporary privilege drop and elevation (:issue:`1370`)
-
-  + Add support to reinitialize multicast Faces and (partially) reload config file
-    (:issue:`1584`)
-
-  + Randomization routines are now uniform across all NFD modules (:issue:`1369`)
-
-  + Enable use of new NDN naming conventions (:issue:`1837` and :issue:`1838`)
-
-- **Faces**
-
-  + `WebSocket <http://tools.ietf.org/html/rfc6455>`_ Face support (:issue:`1468`)
-
-  + Fix Ethernet Face support on Linux with ``libpcap`` version >=1.5.0 (:issue:`1511`)
-
-  + Fix to recognize IPv4-mapped IPv6 addresses in ``FaceUri`` (:issue:`1635`)
-
-  + Fix to avoid multiple onFail events (:issue:`1497`)
-
-  + Fix broken support of multicast UDP Faces on OSX (:issue:`1668`)
-
-  + On Linux, path MTU discovery on unicast UDPv4 faces is now disabled (:issue:`1651`)
-
-  + Added link layer byte counts in FaceCounters (:issue:`1729`)
-
-  + Face IDs 0-255 are now reserved for internal NFD use (:issue:`1620`)
-
-  + Serialized StreamFace::send(Interest|Data) operations using queue (:issue:`1777`)
-
-- **Forwarding**
-
-  + Outgoing Interest pipeline now allows strategies to request a fresh ``Nonce`` (e.g., when
-    the strategy needs to re-express the Interest) (:issue:`1596`)
-
-  + Fix in the incoming Data pipeline to avoid sending packets to the incoming Face
-    (:issue:`1556`)
-
-  + New ``RttEstimator`` class that implements the Mean-Deviation RTT estimator to be used in
-    forwarding strategies
-
-  + Fix memory leak caused by not removing PIT entry when Interest matches CS (:issue:`1882`)
-
-  + Fix spurious assertion in NCC strategy (:issue:`1853`)
-
-- **Tables**
-
-  + Fix in ContentStore to properly adjust internal structure when ``Cs::setLimit`` is called
-    (:issue:`1646`)
-
-  + New option in configuration file to set an upper bound on ContentStore size (:issue:`1623`)
-
-  + Fix to prevent infinite lifetime of Measurement entries (:issue:`1665`)
-
-  + Introducing capacity limit in PIT NonceList (:issue:`1770`)
-
-  + Fix memory leak in NameTree (:issue:`1803`)
-
-  + Fix segfault during Fib::removeNextHopFromAllEntries (:issue:`1816`)
-
-- **Management**
-
-  + RibManager now fully support ``CHILD_INHERIT`` and ``CAPTURE`` flags (:issue:`1325`)
-
-  + Fix in ``FaceManager`` to respond with canonical form of Face URI for Face creation command
-    (:issue:`1619`)
-
-  + Fix to prevent creation of duplicate TCP/UDP Faces due to async calls (:issue:`1680`)
-
-  + Fix to properly handle optional ExpirationPeriod in RibRegister command (:issue:`1772`)
-
-  + Added functionality of publishing RIB status (RIB dataset) by RibManager (:issue:`1662`)
-
-  + Fix issue of not properly canceling route expiration during processing of ``unregister``
-    command (:issue:`1902`)
-
-  + Enable periodic clean up of route entries that refer to non-existing faces (:issue:`1875`)
-
-- **Tools**
-
-  + Extended functionality of ``nfd-status``
-
-     * ``-x`` to output in XML format, see :ref:`nfd-status xml schema`
-     * ``-c`` to retrieve channel status information (enabled by default)
-     * ``-s`` to retrieve configured strategy choice for NDN namespaces (enabled by default)
-     * Face status now includes reporting of Face flags (``local`` and ``on-demand``)
-     * On-demand UDP Faces now report remaining lifetime (``expirationPeriod``)
-     * ``-r`` to retrieve RIB information
-
-  + Improved ``nfd-status-http-server``
-
-     * HTTP server now presents status as XSL-formatted XML page
-     * XML dataset and formatted page now include certificate name of the corresponding NFD
-       (:issue:`1807`)
-
-  + Several fixes in ``ndn-autoconfig`` tool (:issue:`1595`)
-
-  + Extended options in ``nfdc``:
-
-    * ``-e`` to set expiration time for registered routes
-    * ``-o`` to specify origin for registration and unregistration commands
-
-  + Enable ``all-faces-prefix'' option in ``nfd-autoreg`` to register prefix for all face
-    (on-demand and non-on-demand) (:issue:`1861`)
-
-  + Enable processing auto-registration in ``nfd-autoreg`` for faces that existed prior to
-    start of the tool (:issue:`1863`)
-
-- **Build**
-
-  + Enable support of precompiled headers for clang and gcc to speed up compilation
-
-- `Other small fixes and extensions
-  <https://github.com/named-data/NFD/compare/NFD-0.1.0...master>`_
-
-****************************************************************************
-
-NFD version 0.1.0
------------------
-
-Release date: May 7, 2014
-
-This is an incomplete list of features that are implemented in NFD version 0.1.0.
-
-- **Packet Format**
-
-  + `NDN-TLV <http://named-data.net/doc/ndn-tlv/>`_
-  + LocalControlHeader, to allow apps to set outgoing face and learn incoming face.
-
-- **Faces**
-
-  + Unix stream socket
-  + UDP unicast
-  + UDP multicast
-  + TCP
-  + Ethernet, currently without fragmentation.
-
-    .. note::
-         Ethernet support will not work properly on Linux kernels with TPACKET_V3 flexible
-         buffer implementation (>= 3.2.0) and libpcap >= 1.5.0 (e.g., Ubuntu Linux 14.04).
-         Refer to `Issue 1551 <http://redmine.named-data.net/issues/1511>`_ for more
-         detail and implementation progress.
-
-- **Management**
-
-  + Use of signed Interests as commands, with authentication and authorization.
-  + Face management
-  + FIB management
-  + Per-namespace strategy selection
-  + NFD status publishing
-  + Notification to authorized apps of internal events, including Face creation and destruction.
-
-- **Tables and forwarding pipelines** support most Interest/Data processing, including
-  selectors.
-
-- **RIB Management** that runs as a separate process, ``nrd``.  It supports basic prefix
-  registration by applications, but no flags yet.
-
-- **Strategies**
-
-  + ``broadcast``
-  + ``best-route``
-  + ``ncc``: based on ccnx 0.7 for experimentation
-  + ``client-control``: authorized application can directly control Interest forwarding
-
-- **Name-based scoping**
-
-  + ``/localhost``: communication only within localhost using "local" Faces
-    (UnixStreamFace, LocalTcpFace).  NFD will strictly enforce this scope for Interests
-    and Data packets
-  + ``/localhop``: one-hop communication (e.g., if at least one incoming or outgoing Face
-    in PIT entry is non-local, the Interest cannot be forwarded to any non-local Face)
-
-- **Support configuration file**, which is in the Boost INFO format.
-
-- **Applications**
-
-  + Tools to discover hubs on NDN testbed.
-  + peek/poke and traffic generators for testing and debugging.
-  + ``nfdc``, a command-line tool to configure NFD.
-  + ``nfd-status``, a command-line tool to query NFD status.
-  + ``nfd-status-http-server``, which reads the NFD status and publishes over HTTP.
-
-
-Planned Functions and Features for Next Releases
-------------------------------------------------
-
-- NACK
-    A packet sent back by a producer or a router to signal the unavailability of a requested
-    Data packet. The protocol specification for NACK is in progress.
-
-- New strategies
-    Additional strategies, including self-learning that populates the FIB by observing
-    Interest and Data exchange.
-
-- Hop-by-hop Interest limit mechanism
-    For congestion control
-
-- Face enhancements
-    Add faces for new underlying protocols such as WiFi direct.
-    Introduce the concept of "permanent faces" that can survive socket errors.
-    Design a new hop-by-hop header that supports fragmentation, reliability improvement, etc.
-
-- Tables
-    Experiment and evaluate different data structures and algorithms.
-
-- RIB management
-    Move to more scalable data structures and support all flags in prefix registrations.
-
-- Tunnel management
-    For hub nodes to authenticate incoming tunnel requests and maintain the tunnels.
-
-- Extensible name-based scoping
-    Configurable organization-based scoping
+.. include:: release-notes/release-notes-0.4.0.rst
diff --git a/docs/conf.py b/docs/conf.py
index 37384b8..f50b01b 100644
--- a/docs/conf.py
+++ b/docs/conf.py
@@ -30,7 +30,7 @@
 # ones.
 extensions = [
     'sphinx.ext.todo',
-    'redmine_issue',
+    'redmine_issue'
 ]
 
 def addExtensionIfExists(extension):
@@ -260,7 +260,7 @@
 #man_show_urls = False
 
 doxylink = {
-  'NFD' : ('NFD.tag', 'doxygen/'),
+  'nfd' : ('NFD.tag', 'doxygen/'),
 }
 
 if os.getenv('GOOGLE_ANALYTICS', None):
diff --git a/docs/doxygen.conf.in b/docs/doxygen.conf.in
index 2760b9b..99478a8 100644
--- a/docs/doxygen.conf.in
+++ b/docs/doxygen.conf.in
@@ -1929,8 +1929,8 @@
 # This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
 
 PREDEFINED             = NFD_LOG_INIT(x)= \
-                         NFD_LOG_INCLASS_TEMPLATE_SPECIALIZATION_DEFINE(x,y)= \
-                         NFD_LOG_INCLASS_2TEMPLATE_SPECIALIZATION_DEFINE(x,y,z)= \
+                         NFD_LOG_INCLASS_TEMPLATE_SPECIALIZATION_DEFINE(a,b,c)= \
+                         NFD_LOG_INCLASS_2TEMPLATE_SPECIALIZATION_DEFINE(a,b,c,d)= \
                          BOOST_STATIC_ASSERT(x)= \
                          BOOST_CONCEPT_ASSERT \
                          BOOST_CONCEPT_REQUIRES \
diff --git a/docs/index.rst b/docs/index.rst
index 94157be..e75dec9 100644
--- a/docs/index.rst
+++ b/docs/index.rst
@@ -18,6 +18,13 @@
    FAQ
    manpages
 
+.. toctree::
+   :hidden:
+   :maxdepth: 1
+
+   RELEASE_NOTES
+   releases
+
 * :doc:`overview`
 
   A brief overview of NFD and its major modules.
@@ -49,7 +56,9 @@
 
 * `API Documentation (doxygen) <doxygen/annotated.html>`_
 
-* `Release Notes <RELEASE_NOTES.html>`_
+* :doc:`RELEASE_NOTES`
+
+* :doc:`releases`
 
 License
 -------
diff --git a/docs/overview.rst b/docs/overview.rst
index 437649d..133a6db 100644
--- a/docs/overview.rst
+++ b/docs/overview.rst
@@ -1,11 +1,6 @@
 NFD Overview
 ============
 
-.. toctree::
-   :maxdepth: 2
-
-   RELEASE_NOTES
-
 NDN Forwarding Daemon (NFD) is a network forwarder that implements and evolves together
 with the Named Data Networking (NDN) `protocol
 <http://named-data.net/doc/ndn-tlv/>`__. After the initial release, NFD will become a core
diff --git a/docs/release-notes/release-notes-0.1.0.rst b/docs/release-notes/release-notes-0.1.0.rst
new file mode 100644
index 0000000..03b1ce0
--- /dev/null
+++ b/docs/release-notes/release-notes-0.1.0.rst
@@ -0,0 +1,97 @@
+NFD version 0.1.0
+-----------------
+
+Release date: May 7, 2014
+
+This is an incomplete list of features that are implemented in NFD version 0.1.0.
+
+- **Packet Format**
+
+  + `NDN-TLV <http://named-data.net/doc/ndn-tlv/>`_
+  + LocalControlHeader, to allow apps to set outgoing face and learn incoming face.
+
+- **Faces**
+
+  + Unix stream socket
+  + UDP unicast
+  + UDP multicast
+  + TCP
+  + Ethernet, currently without fragmentation.
+
+    .. note::
+         Ethernet support will not work properly on Linux kernels with TPACKET_V3 flexible
+         buffer implementation (>= 3.2.0) and libpcap >= 1.5.0 (e.g., Ubuntu Linux 14.04).
+         Refer to `Issue 1551 <http://redmine.named-data.net/issues/1511>`_ for more
+         detail and implementation progress.
+
+- **Management**
+
+  + Use of signed Interests as commands, with authentication and authorization.
+  + Face management
+  + FIB management
+  + Per-namespace strategy selection
+  + NFD status publishing
+  + Notification to authorized apps of internal events, including Face creation and destruction.
+
+- **Tables and forwarding pipelines** support most Interest/Data processing, including
+  selectors.
+
+- **RIB Management** that runs as a separate process, ``nrd``.  It supports basic prefix
+  registration by applications, but no flags yet.
+
+- **Strategies**
+
+  + ``broadcast``
+  + ``best-route``
+  + ``ncc``: based on ccnx 0.7 for experimentation
+  + ``client-control``: authorized application can directly control Interest forwarding
+
+- **Name-based scoping**
+
+  + ``/localhost``: communication only within localhost using "local" Faces
+    (UnixStreamFace, LocalTcpFace).  NFD will strictly enforce this scope for Interests
+    and Data packets
+  + ``/localhop``: one-hop communication (e.g., if at least one incoming or outgoing Face
+    in PIT entry is non-local, the Interest cannot be forwarded to any non-local Face)
+
+- **Support configuration file**, which is in the Boost INFO format.
+
+- **Applications**
+
+  + Tools to discover hubs on NDN testbed.
+  + peek/poke and traffic generators for testing and debugging.
+  + ``nfdc``, a command-line tool to configure NFD.
+  + ``nfd-status``, a command-line tool to query NFD status.
+  + ``nfd-status-http-server``, which reads the NFD status and publishes over HTTP.
+
+
+Planned Functions and Features for Next Releases
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+- NACK
+    A packet sent back by a producer or a router to signal the unavailability of a requested
+    Data packet. The protocol specification for NACK is in progress.
+
+- New strategies
+    Additional strategies, including self-learning that populates the FIB by observing
+    Interest and Data exchange.
+
+- Hop-by-hop Interest limit mechanism
+    For congestion control
+
+- Face enhancements
+    Add faces for new underlying protocols such as WiFi direct.
+    Introduce the concept of "permanent faces" that can survive socket errors.
+    Design a new hop-by-hop header that supports fragmentation, reliability improvement, etc.
+
+- Tables
+    Experiment and evaluate different data structures and algorithms.
+
+- RIB management
+    Move to more scalable data structures and support all flags in prefix registrations.
+
+- Tunnel management
+    For hub nodes to authenticate incoming tunnel requests and maintain the tunnels.
+
+- Extensible name-based scoping
+    Configurable organization-based scoping
diff --git a/docs/release-notes/release-notes-0.2.0.rst b/docs/release-notes/release-notes-0.2.0.rst
new file mode 100644
index 0000000..a6df316
--- /dev/null
+++ b/docs/release-notes/release-notes-0.2.0.rst
@@ -0,0 +1,132 @@
+NFD version 0.2.0
+-----------------
+
+Release date: August 25, 2014
+
+Changes since version 0.1.0:
+
+- **Documentation**
+
+  + `"NFD Developer's Guide" by NFD authors
+    <http://named-data.net/wp-content/uploads/2014/07/NFD-developer-guide.pdf>`_ that
+    explains NFD's internals including the overall design, major modules, their
+    implementation, and their interactions
+
+  + New detailed instructions on how to enable auto-start of NFD using OSX ``launchd``
+    and Ubuntu's ``upstart`` (see `contrib/ folder
+    <https://github.com/named-data/NFD/tree/master/contrib>`_)
+
+- **Core**
+
+  + Add support for temporary privilege drop and elevation (:issue:`1370`)
+
+  + Add support to reinitialize multicast Faces and (partially) reload config file
+    (:issue:`1584`)
+
+  + Randomization routines are now uniform across all NFD modules (:issue:`1369`)
+
+  + Enable use of new NDN naming conventions (:issue:`1837` and :issue:`1838`)
+
+- **Faces**
+
+  + `WebSocket <http://tools.ietf.org/html/rfc6455>`_ Face support (:issue:`1468`)
+
+  + Fix Ethernet Face support on Linux with ``libpcap`` version >=1.5.0 (:issue:`1511`)
+
+  + Fix to recognize IPv4-mapped IPv6 addresses in ``FaceUri`` (:issue:`1635`)
+
+  + Fix to avoid multiple onFail events (:issue:`1497`)
+
+  + Fix broken support of multicast UDP Faces on OSX (:issue:`1668`)
+
+  + On Linux, path MTU discovery on unicast UDPv4 faces is now disabled (:issue:`1651`)
+
+  + Added link layer byte counts in FaceCounters (:issue:`1729`)
+
+  + Face IDs 0-255 are now reserved for internal NFD use (:issue:`1620`)
+
+  + Serialized StreamFace::send(Interest|Data) operations using queue (:issue:`1777`)
+
+- **Forwarding**
+
+  + Outgoing Interest pipeline now allows strategies to request a fresh ``Nonce`` (e.g., when
+    the strategy needs to re-express the Interest) (:issue:`1596`)
+
+  + Fix in the incoming Data pipeline to avoid sending packets to the incoming Face
+    (:issue:`1556`)
+
+  + New ``RttEstimator`` class that implements the Mean-Deviation RTT estimator to be used in
+    forwarding strategies
+
+  + Fix memory leak caused by not removing PIT entry when Interest matches CS (:issue:`1882`)
+
+  + Fix spurious assertion in NCC strategy (:issue:`1853`)
+
+- **Tables**
+
+  + Fix in ContentStore to properly adjust internal structure when ``Cs::setLimit`` is called
+    (:issue:`1646`)
+
+  + New option in configuration file to set an upper bound on ContentStore size (:issue:`1623`)
+
+  + Fix to prevent infinite lifetime of Measurement entries (:issue:`1665`)
+
+  + Introducing capacity limit in PIT NonceList (:issue:`1770`)
+
+  + Fix memory leak in NameTree (:issue:`1803`)
+
+  + Fix segfault during Fib::removeNextHopFromAllEntries (:issue:`1816`)
+
+- **Management**
+
+  + RibManager now fully support ``CHILD_INHERIT`` and ``CAPTURE`` flags (:issue:`1325`)
+
+  + Fix in ``FaceManager`` to respond with canonical form of Face URI for Face creation command
+    (:issue:`1619`)
+
+  + Fix to prevent creation of duplicate TCP/UDP Faces due to async calls (:issue:`1680`)
+
+  + Fix to properly handle optional ExpirationPeriod in RibRegister command (:issue:`1772`)
+
+  + Added functionality of publishing RIB status (RIB dataset) by RibManager (:issue:`1662`)
+
+  + Fix issue of not properly canceling route expiration during processing of ``unregister``
+    command (:issue:`1902`)
+
+  + Enable periodic clean up of route entries that refer to non-existing faces (:issue:`1875`)
+
+- **Tools**
+
+  + Extended functionality of ``nfd-status``
+
+     * ``-x`` to output in XML format, see :ref:`nfd-status xml schema`
+     * ``-c`` to retrieve channel status information (enabled by default)
+     * ``-s`` to retrieve configured strategy choice for NDN namespaces (enabled by default)
+     * Face status now includes reporting of Face flags (``local`` and ``on-demand``)
+     * On-demand UDP Faces now report remaining lifetime (``expirationPeriod``)
+     * ``-r`` to retrieve RIB information
+
+  + Improved ``nfd-status-http-server``
+
+     * HTTP server now presents status as XSL-formatted XML page
+     * XML dataset and formatted page now include certificate name of the corresponding NFD
+       (:issue:`1807`)
+
+  + Several fixes in ``ndn-autoconfig`` tool (:issue:`1595`)
+
+  + Extended options in ``nfdc``:
+
+    * ``-e`` to set expiration time for registered routes
+    * ``-o`` to specify origin for registration and unregistration commands
+
+  + Enable ``all-faces-prefix'' option in ``nfd-autoreg`` to register prefix for all face
+    (on-demand and non-on-demand) (:issue:`1861`)
+
+  + Enable processing auto-registration in ``nfd-autoreg`` for faces that existed prior to
+    start of the tool (:issue:`1863`)
+
+- **Build**
+
+  + Enable support of precompiled headers for clang and gcc to speed up compilation
+
+- Other small fixes and extensions
diff --git a/docs/release-notes/release-notes-0.3.0.rst b/docs/release-notes/release-notes-0.3.0.rst
new file mode 100644
index 0000000..acc6c15
--- /dev/null
+++ b/docs/release-notes/release-notes-0.3.0.rst
@@ -0,0 +1,251 @@
+NFD version 0.3.0
+-----------------
+
+Release date: February 2, 2015
+
+Changes since version 0.2.0:
+
+New features:
+^^^^^^^^^^^^^
+
+- **Build**
+
+  + The code now requires C++11.  The minimum supported gcc version is 4.6, as earlier versions
+    do not have proper support for C++11 features.
+
+- **Faces**
+
+  + Enable detection of WebSocket connection failures using ping/pong messages (:issue:`1903`)
+
+  + In EthernetFace:
+
+    * Avoid putting the NIC in promiscuous mode if possible (:issue:`1278`)
+
+    * Report packets dropped by the kernel if debug is enabled (:issue:`2441`)
+
+    * Integrate NDNLP fragmentation (:issue:`1209`)
+
+- **Forwarding**
+
+  + Strategy versioning (:issue:`1893`)
+
+  + New Dead Nonce List table to supplement PIT for loop detection (:issue:`1953`)
+
+  + Abstract retransmission suppression logic (:issue:`2377`)
+
+  + New forwarding strategy for access router (:issue:`1999`)
+
+- **Management**
+
+  + Add config file-based strategy selection (:issue:`2053`)
+
+    The sample config file now includes strategy selection for ``/``, ``/localhost``,
+    ``/localhost/nfd``, and ``/ndn/broadcast`` namespaces as follows:
+
+    ::
+
+        tables
+        {
+          ...
+          strategy_choice
+          {
+            /               /localhost/nfd/strategy/best-route
+            /localhost      /localhost/nfd/strategy/broadcast
+            /localhost/nfd  /localhost/nfd/strategy/best-route
+            /ndn/broadcast  /localhost/nfd/strategy/broadcast
+          }
+        }
+
+  + Implement Query Operation in FaceManager (:issue:`1993`)
+
+  + FaceManager now responds with producer-generated NACK when query is invalid (:issue:`1993`)
+
+  + Add functionality for automatic remote prefix registration (:issue:`2056`)
+
+  + Only canonical FaceUri are allowed in faces/create commands (:issue:`1910`)
+
+- **Tables**
+
+  + StrategyInfoHost can now store multiple StrategyInfo of distinct types (:issue:`2240`)
+
+  + Enable iteration over PIT and CS entries (:issue:`2339`)
+
+  + Allow predicate to be specified in Measurements::findLongestPrefixMatch (:issue:`2314`)
+
+  + Calculate the implicit digest of Data packets in CS only when necessary (:issue:`1706`)
+
+- **Tools**
+
+  + Publish ``/localhop/ndn-autoconf/routable-prefixes`` from ``ndn-autoconfig-server``
+    (:issue:`1954`)
+
+  + Display detailed NFD software verion in ``nfd-status-http-server`` and ``nfd-status``
+    (:issue:`1916`)
+
+  + ``nfdc`` now accepts FaceUri in all commands (:issue:`1995`)
+
+  + Add daemon mode for ``ndn-autoconfig`` to re-run detection when connectivity changes
+    (:issue:`2417`)
+
+- **Core**
+
+  + New scheduler::ScopedEventId class to automatically handle scheduled event lifetime
+    (:issue:`2295`)
+
+Updates and bug fixes:
+^^^^^^^^^^^^^^^^^^^^^^
+
+- **Documentation**
+
+  + NFD Developer's guide has been updated to reflect changes in the codebase
+
+  + Installation instruction updates
+
+  + Update of config file instructions for disabling unix sockets (:issue:`2190`)
+
+- **Core**
+
+  + Use implementations moved to ndn-cxx library
+
+     + Use Signal from ndn-cxx (:issue:`2272`, :issue:`2300`)
+
+     + use ethernet::Address from ndn-cxx (:issue:`2142`)
+
+     + Use MAX_NDN_PACKET_SIZE constant from ndn-cxx (:issue:`2099`)
+
+     + Use DEFAULT_INTEREST_LIFETIME from ndn-cxx (:issue:`2202`)
+
+     + Use FaceUri from ndn-cxx (:issue:`2143`)
+
+     + Use DummyClientFace from ndn-cxx (:issue:`2186`)
+
+     + Use ndn::dns from ndn-cxx (:issue:`2207`)
+
+  + Move Network class implementation from ``tools/`` to ``core/``
+
+  + Ignore non-Ethernet ``AF_LINK`` addresses when enumerating NICs on OSX and other BSD systems
+
+  + Fix bug on not properly setting FreshnessPeriod inside SegmentPublisher (:issue:`2438`)
+
+- **Faces**
+
+  + Fix spurious assertion failure in StreamFace (:issue:`1856`)
+
+  + Update websocketpp submodule (:issue:`1903`)
+
+  + Replace FaceFlags with individual fields (:issue:`1992`)
+
+  + Drop WebSocket message if the size is larger than maximum NDN packet size (:issue:`2081`)
+
+  + Make EthernetFace more robust against errors (:issue:`1984`)
+
+  + Prevent potential infinite loop in TcpFactory and UdpFactory (:issue:`2292`)
+
+  + Prevent crashes when attempting to create a UdpFace over a half-working connection
+    (:issue:`2311`)
+
+  + Support MTU larger than 1500 in EthernetFace (for jumbo frames) (:issue:`2305`)
+
+  + Re-enable EthernetFace on OS X platform with boost >=1.57.0 (:issue:`1922`)
+
+  + Fix ``ioctl()`` calls on platforms where libpcap uses ``/dev/bpf*`` (:issue:`2327`)
+
+  + Fix overhead estimation in NDNLP slicer (:issue:`2317`)
+
+  + Replace usage of deprecated EventEmitter with Signal in Face abstractions (:issue:`2300`)
+
+  + Fix NDNLP PartialMessage cleanup scheduling (:issue:`2414`)
+
+  + Remove unnecessary use of DNS resolver in (Udp|Tcp|WebSocket)Factory (:issue:`2422`)
+
+- **Forwarding**
+
+  + Updates related to NccStrategy
+
+    * Fix to prevent remembering of suboptimal upstreams (:issue:`1961`)
+
+    * Optimizing FwNccStrategy/FavorRespondingUpstream test case (:issue:`2037`)
+
+    * Proper detection for new PIT entry (:issue:`1971`)
+
+    * Use UnitTestTimeFixture in NCC test case (:issue:`2163`)
+
+    * Fix loop back to sole downstream (:issue:`1998`)
+
+  + Updates related to BestRoute strategy
+
+    + Redesign best-route v2 strategy test case (:issue:`2126`)
+
+    + Fix clang compilation error in best-route v2 test case (:issue:`2179`)
+
+    + Use UnitTestClock in BestRouteStrategy2 test (:issue:`2160`)
+
+  + Allow strategies limited access to FaceTable (:issue:`2272`)
+
+- **Tables**
+
+  + Ensure that eviction of unsolicited Data is done in FIFO order (:issue:`2043`)
+
+  + Simplify table implementations with C++11 features (:issue:`2100`)
+
+  + Fix issue with Fib::removeNextHopFromAllEntries invalidating NameTree iterator
+    (:issue:`2177`)
+
+  + Replace deprecated EventEmitter with Signal in FaceTable (:issue:`2272`)
+
+  + Refactored implementation of ContentStore based on std::set (:issue:`2254`)
+
+- **Management**
+
+  + Allow omitted FaceId in faces/create command (:issue:`2031`)
+
+  + Avoid deprecated ``ndn::nfd::Controller(Face&)`` constructor (:issue:`2039`)
+
+  + Enable check of command length before accessing verb (:issue:`2151`)
+
+  + Rename FaceEntry to Route (:issue:`2159`)
+
+  + Insert RIB command prefixes into RIB (:issue:`2312`)
+
+- **Tools**
+
+  + Display face attribute fields instead of FaceFlags in ``nfd-status`` and
+    ``nfd-status-http-server`` output (:issue:`1991`)
+
+  + Fix ``nfd-status-http-server`` hanging when nfd-status output is >64k (:issue:`2121`)
+
+  + Ensure that ``ndn-autoconfig`` canonizes FaceUri before sending commands to NFD
+    (:issue:`2387`)
+
+  + Refactored ndn-autoconfig implementation (:issue:`2421`)
+
+  + ndn-autoconfig will now register also ``/localhop/nfd`` prefix towards the hub (:issue:`2416`)
+
+- **Tests**
+
+  + Use UnitTestClock in Forwarder persistent loop test case (:issue:`2162`)
+
+  + Use LimitedIo in FwForwarder/SimpleExchange test case (:issue:`2161`)
+
+- **Build**
+
+  + Fix build error with python3 (:issue:`1302`)
+
+  + Embed CI build and test running script
+
+  + Properly disable assertions in release builds (:issue:`2139`)
+
+  + Embed setting of ``PKG_CONFIG_PATH`` variable to commonly used values (:issue:`2178`)
+
+  + Add conditional compilation for NetworkInterface and PrivilegeHelper
+
+  + Support tools with multiple translation units (:issue:`2344`)
+
+Removals
+^^^^^^^^
+
+- Remove ``listen`` option from unix channel configuration (:issue:`2188`)
+
+- Remove usage of deprecated ``MetaInfo::TYPE_*`` constants (:issue:`2128`)
+
+- Eliminate MapValueIterator in favor of ``boost::adaptors::map_values``
diff --git a/docs/release-notes/release-notes-0.3.1.rst b/docs/release-notes/release-notes-0.3.1.rst
new file mode 100644
index 0000000..59ecfce
--- /dev/null
+++ b/docs/release-notes/release-notes-0.3.1.rst
@@ -0,0 +1,73 @@
+NFD version 0.3.1
+-----------------
+
+Release date: March 3, 2015
+
+Changes since version 0.3.0:
+
+New features:
+^^^^^^^^^^^^^
+
+- ``nfd`` and ``nrd`` daemons are now merged into a single process using separate threads
+  (:issue:`2489`)
+
+- **Core**
+
+  - Extend ConfigFile to support passing a parsed ConfigSection (:issue:`2495`)
+
+  - Allow customization of Logger and LoggerFactory (:issue:`2433`)
+
+  - Make global io_service, scheduler, and global random generator thread-local, and logger
+    thread-safe (:issue:`2489`)
+
+- **Forwarding**
+
+  - Introduce exponential back-off interest retransmission suppression mechanism and enable
+    its use in the best-route strategy (:issue:`1913`)
+
+  - Strategies are now registered with a macro, making it simpler to introduce new strategies
+    to NFD codebase (:issue:`2410`)
+
+- **Tables**
+
+  - ContentStore now recognizes CachingPolicy-NoCache from LocalControlHeader (:issue:`2185`)
+
+Updates and bug fixes:
+^^^^^^^^^^^^^^^^^^^^^^
+
+- **Faces**
+
+  - Remove Tcp|UdpChannel::connect overloads that perform DNS resolution (:issue:`2422`)
+
+  - Properly handle error conditions in UdpChannel::newPeer (:issue:`2516`)
+
+  - Fix inconsistency of UDP face timeouts in sample `nfd.conf` and actual defaults
+    (:issue:`2473`)
+
+  - Introduce Face-specific logging macros (:issue:`2450`)
+
+  - Refactor handling of LinkType face trait and fix FaceStatus reporting: the link type was
+    not properly propagated (:issue:`2563`)
+
+  - Avoid exceptions in NDNLP PartialMessageStore (:issue:`2261`)
+
+  - Update websocketpp to version 0.5.1
+
+- **Tables**
+
+  - Reduce priority of DeadNonceList log messages from DEBUG to TRACE
+
+- **Management**
+
+  - Change register/unregister logging in RibManager to INFO level (:issue:`2547`)
+
+- **Tools**
+
+  - Change prefix for :ref:`the local hub prefix discovery <local-prefix-discovery>` to be
+    under ``/localhop/nfd`` (:issue:`2479`, :issue:`2512`)
+
+- **Tests**
+
+  - Change naming conventions for unit test files and test suite names (:issue:`2497`)
+
+  - Fix segfault in TableNameTree test suite when all test logs are enabled (:issue:`2564`)
diff --git a/docs/release-notes/release-notes-0.3.2.rst b/docs/release-notes/release-notes-0.3.2.rst
new file mode 100644
index 0000000..c785ccb
--- /dev/null
+++ b/docs/release-notes/release-notes-0.3.2.rst
@@ -0,0 +1,69 @@
+NFD version 0.3.2
+-----------------
+
+Release date: May 12, 2015
+
+Changes since version 0.3.1:
+
+New features:
+^^^^^^^^^^^^^
+
+- **Tables**
+
+  * Change lookup API to allow async implementations  of ContentStore (:issue:`2411`)
+
+- **Management**
+
+  * Perform FIB updates before modifying RIB (:issue:`1941`)
+
+Updates and bug fixes:
+^^^^^^^^^^^^^^^^^^^^^^
+
+- **Documentation**
+
+  * Update planned Features: face enhancements (:issue:`2617`)
+
+  * Updated NFD's developer guide to reflect new changes and adding a new section on
+    NFD/ndn-cxx unit testing
+
+- **Face**
+
+  * Refactor channel acceptors to avoid use of shared pointers (:issue:`2613`)
+
+  * Refactor code to avoid deprecated `Block::fromBuffer` overloads (:issue:`2553`)
+
+  * Refactor code to use move semantics for sockets where possible (:issue:`2613`)
+
+  * Switch to non-throwing version of websocketpp APIs (:issue:`2630`)
+
+- **Forwarding**
+
+  * Extend measurements lifetime in AccessStrategy (:issue:`2452`)
+
+- **Management**
+
+  * Stop removed namespace from inheriting ancestor route (:issue:`2757`)
+
+  * Fix TestFibUpdates/EraseFace on Ubuntu 14.04 32-bit (:issue:`2697`)
+
+- **Tools**
+
+  * Fix hanging of `nfdc` on wrong input (:issue:`2690`)
+
+- **Build**
+
+  * Make build scripts compatible with Python 3 (:issue:`2625`)
+
+  * Get rid of the last use of ndn::dns in NFD (:issue:`2422`)
+
+  * Update waf build system to version 1.8.9 (:issue:`2209`, :issue:`2657`, :issue:`2792`)
+
+  * Tweak default pkg-config search paths (:issue:`2711`)
+
+  * Use C version of snprintf (:issue:`2299`)
+
+  * Emulate `std::to_string` when it is missing (:issue:`2299`)
+
+  * Fix several "defined but not used" warnings with gcc-5 (:issue:`2767`)
+
+  * Disable precompiled headers on OS X with clang < 6.1.0 (:issue:`2804`)
diff --git a/docs/release-notes/release-notes-0.3.3.rst b/docs/release-notes/release-notes-0.3.3.rst
new file mode 100644
index 0000000..25010c5
--- /dev/null
+++ b/docs/release-notes/release-notes-0.3.3.rst
@@ -0,0 +1,44 @@
+NFD version 0.3.3
+-----------------
+
+Release date: July 1, 2015
+
+Changes since version 0.3.2:
+
+New features:
+^^^^^^^^^^^^^
+
+- Content Store replacement policy interface (:issue:`1207`)
+
+- Add unit file and instructions for systemd (:issue:`1586`)
+
+- NDN Essential Tools version 0.1 `<https://github.com/named-data/ndn-tools>`__ featuring:
+
+  * ``ndnpeek``, ``ndnpoke``: a pair of programs to request and make available for retrieval of
+    a single Data packet
+  * ``ndnping``, ``ndnpingserver``: reachability testing tools for Named Data Networking
+  * ``ndndump``: a traffic analysis tool that captures Interest and Data packets on the wire
+  * ``ndn-dissect``: an NDN packet format inspector. It reads zero or more NDN packets from
+    either an input file or the standard input, and displays the Type-Length-Value (TLV)
+    structure of those packets on the standard output.
+
+Updates and bug fixes:
+^^^^^^^^^^^^^^^^^^^^^^
+
+- Avoid loopback new Interest in AccessStrategy (:issue:`2831`)
+
+- Simplified implementation of ``nfd-status`` using SegmentFetcher utility class (:issue:`2456`)
+
+Deprecated:
+^^^^^^^^^^^
+
+- ``ndn-tlv-peek`` and ``ndn-tlv-poke`` command-line tools: use ``ndnpeek`` and ``ndnpoke``
+  programs from NDN Essential Tools repository `<https://github.com/named-data/ndn-tools>`__.
+
+Upcoming features:
+^^^^^^^^^^^^^^^^^^
+
+- NDNLPv2 (http://redmine.named-data.net/projects/nfd/wiki/NDNLPv2, :issue:`2520`,
+  :issue:`2879`, :issue:`2763`, :issue:`2883`, :issue:`2841`, :issue:`2866`)
+
+- Refactored implementation of NFD management (:issue:`2200`, :issue:`2107`)
diff --git a/docs/release-notes/release-notes-0.3.4.rst b/docs/release-notes/release-notes-0.3.4.rst
new file mode 100644
index 0000000..822c4ff
--- /dev/null
+++ b/docs/release-notes/release-notes-0.3.4.rst
@@ -0,0 +1,58 @@
+NFD version 0.3.4
+-----------------
+
+Release date: August 31, 2015
+
+Changes since version 0.3.3:
+
+New features:
+^^^^^^^^^^^^^
+
+- Boolean Face property IsOnDemand has been replaced with multistate FacePersistency
+  property (:issue:`2989`, :issue:`3018`): persistent (Face exists as long as there are no
+  system or socket errors), on-demand (Face is removed after inactivity period), and
+  permanent (Face exists unless explicitly destroyed by the management).
+
+  Currently, only UDP faces are allowed to be permanent.  However, management interface to
+  create UDP permanent faces or switch UDP to permanent state will be available in the
+  next release (:issue:`2991`).
+
+- Least Recently Used policy for Content Store (:issue:`2219`)
+
+  Currently, changing the policy requires a minor change in NFD source code.
+  Configuration interface is coming in the next release (:issue:`3148`)
+
+
+Updates and bug fixes:
+^^^^^^^^^^^^^^^^^^^^^^
+
+- Update of NDN Essential Tools to version 0.2 `<https://github.com/named-data/ndn-tools>`__
+  with code improvements and the following new tools:
+
+  * PIB service to manage the public information of keys and publish certificates
+    (:issue:`3018`)
+  * A Wireshark dissector for NDN packets (:issue:`3092`)
+
+- RibManager constructor now accepts KeyChain as a parameter, preparing it for simplifying
+  implementation with the new ``ndn::Dispatcher`` class (:issue:`2390`)
+
+- Fix HTML rendering of nfd-status-http-server output in some browsers (:issue:`3019`)
+
+- Enable automatic re-creation of multicast faces when network connectivity changes
+  (:issue:`2460`)
+
+- Enhance exception throwing with Boost Exception library (:issue:`2541`)
+
+Deprecated:
+^^^^^^^^^^^
+
+- BroadcastStrategy (``/localhost/nfd/strategy/broadcast``) renamed as MulticastStrategy
+  (``/localhost/nfd/strategy/multicast``) (:issue:`3011`)
+
+Upcoming features (partially finished in development branches):
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+- NDNLPv2 (http://redmine.named-data.net/projects/nfd/wiki/NDNLPv2, :issue:`2520`,
+  :issue:`2879`, :issue:`2763`, :issue:`2883`, :issue:`2841`, :issue:`2866`)
+
+- Refactored implementation of NFD management (:issue:`2200`, :issue:`2107`)
diff --git a/docs/release-notes/release-notes-0.4.0.rst b/docs/release-notes/release-notes-0.4.0.rst
new file mode 100644
index 0000000..f7bf0cf
--- /dev/null
+++ b/docs/release-notes/release-notes-0.4.0.rst
@@ -0,0 +1,80 @@
+NFD version 0.4.0
+-----------------
+
+Release date: TBD
+
+.. note::
+   Version 0.4.0 introduces several breaking changes to API and wire format of management protocols
+
+Changes since version 0.3.4:
+
+New features:
+^^^^^^^^^^^^^
+
+- **(breaking change)** Refactored implementation of face system (:issue:`3088`,
+  :issue:`3104`, :issue:`3165`, :issue:`3168`, :issue:`3225`, :issue:`3226`)
+
+  The abstraction to send/receive NDN packets has been split into Transport, LinkService, and Face:
+
+  * *Transport* provides delivery of the data blocks over specific underlying channels
+    (raw ethernet packets, unicast/multicast UDP datagrams, TCP and WebSocket streams)
+
+    Implemented: :NFD:`UnixStreamTransport`, :NFD:`UnicastUdpTransport`, :NFD:`MulticastUdpTransport`.
+
+  * *LinkService* provides an "adaptation" layer to translate between NDN packets and data
+    blocks communicated through Transport.  For example, LinkService can provide packet
+    fragmentation and reassembly services.
+
+    Implemented: :NFD:`GenericLinkService`
+
+  * *Face* provides combines Transport and LinkServices, providing high-level interface to work
+    with Interest/Data/Nack packets inside NFD.
+
+  .. note::
+     This feature replaces support for signaling between local applications and NFD from
+     LocalControlHeader with NDNLPv2 protocol.  If your application uses
+     LocalControlHeader features, it must be updated to use the new protocol (e.g., update
+     to use ndn-cxx >= 0.4.0)
+
+- Support for NDNLPv2 (http://redmine.named-data.net/projects/nfd/wiki/NDNLPv2,
+  :issue:`2520`, :issue:`2763`, :issue:`2841`)
+
+  * Network NACK (:issue:`2883`)
+
+- Networking NACK in pipelines and best-route strategy (:issue:`3156`)
+
+- Refactored implementation of NFD management (:issue:`2200`, :issue:`2107`)
+
+- Interest forwarding processes Link included in interest packets (:issue:`3034`)
+
+  .. note::
+     This feature requires proper defintion of new ``tables.network_region`` section in
+     the NFD config file (:issue:`3159`)
+
+- Full support for UDP permanent faces (:issue:`2993`, :issue:`2989`, :issue:`3018`)
+
+Updates and bug fixes:
+^^^^^^^^^^^^^^^^^^^^^^
+
+- Display extended information for fatal NFD errors (:issue:`2541`)
+
+- Compilation fixes for clang-700.0.72 (Apple LLVM 7.0.0) (:issue:`3209`)
+
+- Properly handle exception from NetworkMonitor when the platform doesn't support it
+  (:issue:`3195`)
+
+Deprecated:
+^^^^^^^^^^^
+
+- BroadcastStrategy (``/localhost/nfd/strategy/broadcast``) renamed as MulticastStrategy
+  (``/localhost/nfd/strategy/multicast``) (:issue:`3011`)
+
+Planned features for future releases:
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+- Improvements and extension of NDNLPv2 support
+
+  * New transports
+  * New link service implementation, including support for fragmentation and assembly
+
+- Improved support for automatic prefix propagation (:issue:`3211`, :issue:`2413`)
diff --git a/docs/releases.rst b/docs/releases.rst
new file mode 100644
index 0000000..35d4b70
--- /dev/null
+++ b/docs/releases.rst
@@ -0,0 +1,72 @@
+NFD Versions
+++++++++++++
+
+.. toctree::
+   :hidden:
+   :maxdepth: 1
+
+   release-notes/release-notes-0.4.0
+   release-notes/release-notes-0.3.4
+   release-notes/release-notes-0.3.3
+   release-notes/release-notes-0.3.2
+   release-notes/release-notes-0.3.1
+   release-notes/release-notes-0.3.0
+   release-notes/release-notes-0.2.0
+   release-notes/release-notes-0.1.0
+
+* **NFD version 0.4.0**
+  (:doc:`Release Notes <release-notes/release-notes-0.4.0>`, `Documentation <http://named-data.net/doc/NFD/0.4.0/>`__)
+
+  `src (git) <https://github.com/named-data/NFD/releases/tag/NFD-0.4.0>`__,
+  `src (tarball) <http://named-data.net/downloads/nfd-0.4.0.tar.bz2>`__ (`checksum <http://named-data.net/downloads/nfd-0.4.0.tar.bz2.sha256>`__)
+
+* **NFD version 0.3.4**
+  (:doc:`Release Notes <release-notes/release-notes-0.3.4>`, `Documentation <http://named-data.net/doc/NFD/0.3.4/>`__)
+
+  `src (git) <https://github.com/named-data/NFD/releases/tag/NFD-0.3.4>`__,
+  `src (tarball) <http://named-data.net/downloads/nfd-0.3.4.tar.bz2>`__ (`checksum <http://named-data.net/downloads/nfd-0.3.4.tar.bz2.sha256>`__)
+
+* **NFD version 0.3.3**
+  (:doc:`Release Notes <release-notes/release-notes-0.3.3>`, `Documentation <http://named-data.net/doc/NFD/0.3.3/>`__)
+
+  `src (git) <https://github.com/named-data/NFD/releases/tag/NFD-0.3.3>`__,
+  `src (tarball) <http://named-data.net/downloads/nfd-0.3.3.tar.bz2>`__ (`checksum <http://named-data.net/downloads/nfd-0.3.3.tar.bz2.sha256>`__)
+
+* **NFD version 0.3.2**
+  (:doc:`Release Notes <release-notes/release-notes-0.3.2>`, `Documentation <http://named-data.net/doc/NFD/0.3.2/>`__)
+
+  `src (git) <https://github.com/named-data/NFD/releases/tag/NFD-0.3.2>`__,
+  `src (tarball) <http://named-data.net/downloads/nfd-0.3.2.tar.bz2>`__ (`checksum <http://named-data.net/downloads/nfd-0.3.2.tar.bz2.sha256>`__)
+
+* **NFD version 0.3.1**
+  (:doc:`Release Notes <release-notes/release-notes-0.3.1>`, `Documentation <http://named-data.net/doc/NFD/0.3.1/>`__)
+
+  `src (git) <https://github.com/named-data/NFD/releases/tag/NFD-0.3.1>`__,
+  `src (tarball) <http://named-data.net/downloads/nfd-0.3.1.tar.bz2>`__ (`checksum <http://named-data.net/downloads/nfd-0.3.1.tar.bz2.sha256>`__)
+
+* **NFD version 0.3.0**
+  (:doc:`Release Notes <release-notes/release-notes-0.3.0>`, `Documentation <http://named-data.net/doc/NFD/0.3.0/>`__)
+
+  `src (git) <https://github.com/named-data/NFD/releases/tag/NFD-0.3.0>`__,
+  `src (tarball) <http://named-data.net/downloads/nfd-0.3.0.tar.bz2>`__ (`checksum <http://named-data.net/downloads/nfd-0.3.0.tar.bz2.sha256>`__)
+
+* **NFD version 0.2.0**
+  (:doc:`Release Notes <release-notes/release-notes-0.2.0>`, `Documentation <http://named-data.net/doc/NFD/0.2.0/>`__)
+
+  `src (git) <https://github.com/named-data/NFD/releases/tag/NFD-0.2.0>`__,
+  `src (tarball) <http://named-data.net/downloads/nfd-0.2.0.tar.bz2>`__ (`checksum <http://named-data.net/downloads/nfd-0.2.0.tar.bz2.sha256>`__)
+
+  - NFD version 0.2.0-rc1
+    `src (git) <https://github.com/named-data/NFD/releases/tag/NFD-0.2.0-rc1>`__
+
+  - NFD version 0.2.0-rc2
+    `src (git) <https://github.com/named-data/NFD/releases/tag/NFD-0.2.0-rc2>`__
+
+* **NFD version 0.1.0**
+  (:doc:`Release Notes <release-notes/release-notes-0.1.0>`, `Documentation <http://named-data.net/doc/NFD/0.1.0/>`__)
+
+  `src (git) <https://github.com/named-data/NFD/releases/tag/NFD-0.1.0>`__,
+  `src (tarball) <http://named-data.net/downloads/nfd-0.1.0.tar.bz2>`__ (`checksum <http://named-data.net/downloads/nfd-0.1.0.tar.bz2.sha256>`__)
+
+  - NFD version 0.1.0-rc1
+    `src (git) <https://github.com/named-data/NFD/releases/tag/NFD-0.1.0-rc1>`__
diff --git a/wscript b/wscript
index 151a084..4312413 100644
--- a/wscript
+++ b/wscript
@@ -24,7 +24,7 @@
 NFD, e.g., in COPYING.md file.  If not, see <http://www.gnu.org/licenses/>.
 """
 
-VERSION = "0.3.4"
+VERSION = "0.3.91"
 APPNAME = "nfd"
 BUGREPORT = "http://redmine.named-data.net/projects/nfd"
 URL = "http://named-data.net/doc/NFD/"