blob: 2b137c9ab6c2bffdada0019e71352b216d69c3d7 [file] [log] [blame]
Alexander Afanasyevcf8ffd42019-12-29 17:58:53 -08001ndn-cxx version 0.7.0
2---------------------
3
4Release date: January 13, 2020
5
6**Breaking Change**
7
8This release features support of only `NDN packet format version 0.3
9<https://named-data.net/doc/NDN-packet-spec/0.3/>`__ (:issue:`4527`, :issue:`4567`,
10:issue:`4709`, :issue:`4913`). The library encodes and interprets Interest and Data
11packets only in 0.3 format; support for version 0.2 has been completely removed. In
12addition, the URI representation of Interest packets has also been changed following the
13packet format updates.
14
15New features
16^^^^^^^^^^^^
17
18- HMAC signing support (:issue:`3075`)
19
20- Support for ``ParametersSha256DigestComponent`` in ``Name`` and ``Interest`` classes
21 (:issue:`4658`)
22
23- Encoding/decoding of ``HopLimit`` field in Interest (:issue:`4806`)
24
25- PIT token (:issue:`4532`).
26
27 PIT token is a hop-by-hop header field that identifies an Interest-Data exchange. The
28 downstream node can assign an opaque token to an outgoing Interest, and the upstream node
29 is expected to return the same token on the Data or Nack in reply to that Interest. This
30 would allow the downstream node to accelerate its processing, especially in PIT lookup.
31
32- ``io::loadBuffer`` and ``io::saveBuffer`` helper functions
33
34Improvements and bug fixes
35^^^^^^^^^^^^^^^^^^^^^^^^^^
36
37- Various improvements in the Linux implementation of ``NetworkMonitor`` class
38
39- Rework of ``RttEstimator`` class:
40
41 * split into two classes: ``RttEstimator`` and ``RttEstimatorWithStats`` (:issue:`4887`)
42 * add a getter for the smoothed RTT value (:issue:`4892`)
43 * switch to use ``time::nanoseconds`` (:issue:`4887`)
44
45- Make use of attributes in logging facilities and generalize logger backend support
46 (:issue:`4969`, :issue:`3782`)
47
48- Silently accept an empty validation policy instead of throwing an exception (:issue:`5049`)
49
50- Introduce alternative URI syntax for component types used in naming conventions, with
51 ability to choose between canonical and alternate format (:issue:`4777`)
52
53- Don't force the generation of an Interest nonce during decoding (:issue:`4685`)
54
55- Various documentation improvements
56
57Removals
58^^^^^^^^
59
60- ``ndn::util::Scheduler`` (use ``ndn::Scheduler`` or ``ndn::scheduler::Scheduler``) and
61 ``ndn::EventId`` (use ``ndn::scheduler::EventId``) (:issue:`4883`)
62
63- Unused ``KeyClass`` and ``AclType`` enums
64
65- Unused ``v2::PublicKey`` alias of ``transform::PublicKey``
66
67- ``HmacFilter`` class, use SignerFilter and VerifierFilter instead
68
69- Ill-defined equality operators for ``Interest``, ``MetaInfo``, ``Signature`` (:issue:`4569`)
70
71- Implicit conversion from the ``xyzHandle`` types to ``const xyzId*`` (where ``xyz`` is
72 ``PendingInterest``, ``RegisteredPrefixId``, and ``InterestFilterId``)
73
74- Deprecated ``KeyLocator::Type`` enum
75
76- Private header files of concrete PIB, TPM, and KeyHandle implementations are no longer
77 installed (:issue:`4782`)
78
79- Renamed ``util/backports-ostream-joiner.hpp`` to ``util/ostream-joiner.hpp``