diff --git a/docs/release-notes/release-notes-0.7.0.rst b/docs/release-notes/release-notes-0.7.0.rst
new file mode 100644
index 0000000..2b137c9
--- /dev/null
+++ b/docs/release-notes/release-notes-0.7.0.rst
@@ -0,0 +1,79 @@
+ndn-cxx version 0.7.0
+---------------------
+
+Release date: January 13, 2020
+
+**Breaking Change**
+
+This release features support of only `NDN packet format version 0.3
+<https://named-data.net/doc/NDN-packet-spec/0.3/>`__ (:issue:`4527`, :issue:`4567`,
+:issue:`4709`, :issue:`4913`). The library encodes and interprets Interest and Data
+packets only in 0.3 format; support for version 0.2 has been completely removed.  In
+addition, the URI representation of Interest packets has also been changed following the
+packet format updates.
+
+New features
+^^^^^^^^^^^^
+
+- HMAC signing support (:issue:`3075`)
+
+- Support for ``ParametersSha256DigestComponent`` in ``Name`` and ``Interest`` classes
+  (:issue:`4658`)
+
+- Encoding/decoding of ``HopLimit`` field in Interest (:issue:`4806`)
+
+- PIT token (:issue:`4532`).
+
+  PIT token is a hop-by-hop header field that identifies an Interest-Data exchange. The
+  downstream node can assign an opaque token to an outgoing Interest, and the upstream node
+  is expected to return the same token on the Data or Nack in reply to that Interest. This
+  would allow the downstream node to accelerate its processing, especially in PIT lookup.
+
+- ``io::loadBuffer`` and ``io::saveBuffer`` helper functions
+
+Improvements and bug fixes
+^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+- Various improvements in the Linux implementation of ``NetworkMonitor`` class
+
+- Rework of ``RttEstimator`` class:
+
+  * split into two classes: ``RttEstimator`` and ``RttEstimatorWithStats`` (:issue:`4887`)
+  * add a getter for the smoothed RTT value (:issue:`4892`)
+  * switch to use ``time::nanoseconds`` (:issue:`4887`)
+
+- Make use of attributes in logging facilities and generalize logger backend support
+  (:issue:`4969`, :issue:`3782`)
+
+- Silently accept an empty validation policy instead of throwing an exception (:issue:`5049`)
+
+- Introduce alternative URI syntax for component types used in naming conventions, with
+  ability to choose between canonical and alternate format (:issue:`4777`)
+
+- Don't force the generation of an Interest nonce during decoding (:issue:`4685`)
+
+- Various documentation improvements
+
+Removals
+^^^^^^^^
+
+- ``ndn::util::Scheduler`` (use ``ndn::Scheduler`` or ``ndn::scheduler::Scheduler``) and
+  ``ndn::EventId`` (use ``ndn::scheduler::EventId``) (:issue:`4883`)
+
+- Unused ``KeyClass`` and ``AclType`` enums
+
+- Unused ``v2::PublicKey`` alias of ``transform::PublicKey``
+
+- ``HmacFilter`` class, use SignerFilter and VerifierFilter instead
+
+- Ill-defined equality operators for ``Interest``, ``MetaInfo``, ``Signature`` (:issue:`4569`)
+
+- Implicit conversion from the ``xyzHandle`` types to ``const xyzId*`` (where ``xyz`` is
+  ``PendingInterest``, ``RegisteredPrefixId``, and ``InterestFilterId``)
+
+- Deprecated ``KeyLocator::Type`` enum
+
+- Private header files of concrete PIB, TPM, and KeyHandle implementations are no longer
+  installed (:issue:`4782`)
+
+- Renamed ``util/backports-ostream-joiner.hpp`` to ``util/ostream-joiner.hpp``
