ndn-cxx version 0.7.0

BREAKING CHANGE

This release features support of only NDN packet format version 0.3
(Issues 4527, 4567, 4709, 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 (3075)

- Support for ParametersSha256DigestComponent in Name and Interest
  classes (4658)

- Encoding/decoding of HopLimit field in Interest (4806)

- PIT token (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
    (4887)
  - add a getter for the smoothed RTT value (4892)
  - switch to use time::nanoseconds (4887)
- Make use of attributes in logging facilities and generalize logger
  backend support (4969, 3782)
- Silently accept an empty validation policy instead of throwing an
  exception (5049)
- Introduce alternative URI syntax for component types used in naming
  conventions, with ability to choose between canonical and alternate
  format (4777)
- Don't force the generation of an Interest nonce during decoding (4685)
- Various documentation improvements

Removals:

- ndn::util::Scheduler (use ndn::Scheduler or ndn::scheduler::Scheduler)
  and ndn::EventId (use ndn::scheduler::EventId) (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
  (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 (4782)
- Renamed util/backports-ostream-joiner.hpp to util/ostream-joiner.hpp
  1. cf8ffd4 Prepare release 0.7.0 by Alexander Afanasyev · 4 years, 7 months ago ndn-cxx-0.7.0
  2. a39c0b5 name: select canonical vs alternate URI representation by Junxiao Shi · 4 years, 7 months ago
  3. 21a4ea5 tests: avoid deprecated boost headers by Davide Pesavento · 4 years, 7 months ago
  4. 813ae58 encoding: use boost::endian::endian_load() if available by Davide Pesavento · 4 years, 7 months ago
  5. 7c67ab5 security: remove deprecated HmacFilter by Davide Pesavento · 4 years, 8 months ago
  6. 39cb402 util: partial support for abstract types in NDN_LOG_MEMBER_* macros by Davide Pesavento · 4 years, 8 months ago
  7. 39570d9 tests: fix Interest name in face integration test by Davide Pesavento · 4 years, 8 months ago
  8. 009062d name: alternative URI syntax for component types used in naming conventions by Davide Pesavento · 4 years, 8 months ago
  9. a421c80 face+transport: minor code cleanup by Davide Pesavento · 4 years, 9 months ago
  10. 0a6456c security: don't throw when loading an empty validation policy by Davide Pesavento · 4 years, 8 months ago
  11. 4fb35d8 security: stop installing headers of concrete PIB, TPM, and KeyHandle implementations by Davide Pesavento · 4 years, 9 months ago
  12. 12cef87 security: make BackEnd::Error an alias of Tpm::Error by Davide Pesavento · 4 years, 9 months ago
  13. bc997e5 security: add HMAC support in verification helpers by laqinfan · 5 years ago
  14. 73940c9 security: avoid potential undefined behavior in const_cast by Davide Pesavento · 4 years, 9 months ago
  15. 56a812d security: add HMAC support in KeyChain and SigningInfo by laqinfan · 5 years ago
  16. e6e125e ci: output Travis folding markers for each build stage by Davide Pesavento · 4 years, 10 months ago
  17. 5e494c0 security: accept HMAC keys shorter than the hash function's output length by Davide Pesavento · 4 years, 10 months ago
  18. cb67252 ci: upgrade Travis config to Ubuntu 18.04 by Davide Pesavento · 4 years, 10 months ago
  19. 835f027 interest: don't force the generation of a nonce during decoding by Davide Pesavento · 4 years, 10 months ago
  20. 28a5bf1 interest: minor cleanups by Davide Pesavento · 4 years, 10 months ago
  21. 75c5601 util: make overload() function public by Davide Pesavento · 5 years ago
  22. 2fdb274 interest: update toUri() for packet format v0.3 by Davide Pesavento · 5 years ago
  23. 0e0b389 interest: drop support for packet format v0.2 by Davide Pesavento · 5 years ago
  24. ef654dd Remove ill-defined equality operators (part 1) by Davide Pesavento · 5 years ago
  25. 140e9cb util: backport C++17 [[nodiscard]] attribute by Davide Pesavento · 5 years ago
  26. 869b11e util: backport std::to_underlying() by Davide Pesavento · 5 years ago
  27. 4c5b7b8 util: split RttEstimator into two classes by Davide Pesavento · 5 years ago
  28. 92dbb00 Revert "mgmt: add EndpointId field to NextHopRecord class" by Ju Pan · 5 years ago
  29. 6c6e385 util: add io::loadBuffer and io::saveBuffer by Davide Pesavento · 5 years ago
  30. b3f78b5 Introduce NDN_CXX_UNREACHABLE macro by Davide Pesavento · 5 years ago
  31. 43eac58 lp: introduce PIT token by Junxiao Shi · 5 years ago
  32. 5149350 key-locator: reimplement using a sum type by Davide Pesavento · 5 years ago
  33. 7b2f58c util: Generalize logger backend support by Alexander Afanasyev · 5 years ago
  34. fe407f2 ci: add Xcode 11 to Travis CI build matrix by Davide Pesavento · 5 years ago
  35. 65f697f ims: drop support for ChildSelector by Davide Pesavento · 5 years ago
  36. 2b0cc7b interest: implement HopLimit encoding/decoding by Davide Pesavento · 5 years ago
  37. 720e25c detail: improve ScopedCancelHandle by Davide Pesavento · 5 years ago
  38. adc9aa2 interest: add support for ParametersSha256DigestComponent by Davide Pesavento · 5 years ago
  39. 576b4ff util: Make use of attributes in logging facilities by Alexander Afanasyev · 5 years ago
  40. ecfb391 Declare overloaded comparison operators as non-member functions by Davide Pesavento · 5 years ago
  41. 700e12a util: import nonstd::get into namespace ndn, for use with variant by Davide Pesavento · 5 years ago
  42. 9a04dda docs: write CertificateV2 and SafeBag syntax in ABNF by Junxiao Shi · 5 years ago
  43. cf0baa2 security: add signature verification support in TPM by laqinfan · 5 years ago
  44. 8b0344d examples: fix "CanBePrefix unset" warning and general cleanup by Zhiyi Zhang · 5 years ago
  45. 57a3276 util: use time::nanoseconds in RttEstimator by Davide Pesavento · 5 years ago
  46. c816371 ci: add gcc-9 to Travis CI build matrix by Davide Pesavento · 5 years ago
  47. 1bac111 security: make PrivateKey::getKeySize() work in all cases by Davide Pesavento · 5 years ago
  48. ccce0bc mgmt: add EndpointId field to NextHopRecord class by Ju Pan · 5 years ago
  49. 3243c3d util: Add a getter for the smoothed RTT value by Ernest McCracken · 5 years ago
  50. 48f9724 security: add PrivateKey::loadRaw() for HMAC keys by laqinfan · 5 years ago
  51. 4ad933a util: add afterMeasurement signal to RttEstimator by Davide Pesavento · 5 years ago
  52. 77d9e81 security: remove unused KeyClass and AclType enums by Davide Pesavento · 5 years ago
  53. 0fe72ea security: add HMAC support to SignerFilter and VerifierFilter by Laqin Fan · 5 years ago
  54. 2ad2fbe interest: drop Selectors from matching functions by Junxiao Shi · 5 years ago
  55. 3510d29 lp: add missing std::move to Nack constructor by Davide Pesavento · 5 years ago
  56. e37ec7d net: NetworkMonitor: set NETLINK_GET_STRICT_CHK on netlink socket by Davide Pesavento · 5 years ago
  57. 530c10f net: use the correct netlink message payload to request an address dump by Davide Pesavento · 5 years ago
  58. 5223ea8 net: use generic::raw_protocol instead of posix::stream_descriptor for netlink by Davide Pesavento · 5 years ago
  59. c9650e4 net: NetworkMonitor: use an enum to track the interface enumeration phase by Davide Pesavento · 5 years ago
  60. 2ec13eb net: NetworkMonitor: improve handling of NLMSG_DONE by Davide Pesavento · 5 years ago
  61. fcdc873 net: NetworkMonitor: set NETLINK_CAP_ACK on netlink socket by Davide Pesavento · 5 years ago
  62. f1bb38d util: move Scheduler and related classes to ndn::scheduler by Davide Pesavento · 5 years ago
  63. 0d748af Prepare release 0.6.6 by Alexander Afanasyev · 5 years ago ndn-cxx-0.6.6
  64. 0c31537 Fix compilation with Boost 1.70.0 by Davide Pesavento · 5 years ago
  65. 6b33040 encoding: treat TLV-TYPE zero as invalid by Davide Pesavento · 5 years ago
  66. 599ee3f ci: adapt to new repo layout for CentOS boost RPMs by Davide Pesavento · 5 years ago
  67. 78e3549 util: update bundled copies of {any,optional,variant}-lite by Davide Pesavento · 5 years ago
  68. b310efb docs+ndnsec: improve description and parsing of command options, rewrite man pages by Davide Pesavento · 5 years ago
  69. fa995ac docs+tools: improve ndnsec help, error messages, and manual page by Davide Pesavento · 5 years ago
  70. 3891244 interest: improve setApplicationParameters() behavior by Davide Pesavento · 5 years ago
  71. 9c19a39 interest: rename Parameters to ApplicationParameters by Davide Pesavento · 5 years ago
  72. 4bb06bc interest: improve the "CanBePrefix unset" warning by Davide Pesavento · 5 years ago
  73. 46b04a5 docs: improve README.md by Davide Pesavento · 5 years ago
  74. e7b90e5 face: rework list structures by Junxiao Shi · 5 years ago
  75. 5437aa2 tests: fix compilation with Boost 1.69.0 by Davide Pesavento · 5 years ago
  76. 1660d00 security: Add option to disable infrastructure interest in CertificateFetcherDirectFetch by Alexander Afanasyev · 5 years ago
  77. a5f233e util: rename Scheduler::scheduleEvent to schedule by Junxiao Shi · 5 years ago
  78. fd61231 util: add ndn::scheduler namespace alias by Davide Pesavento · 5 years ago
  79. 4fc9080 ci: update Travis-CI configuration by Davide Pesavento · 5 years ago
  80. fc27d3b Fix build with Xcode 10.2 by Davide Pesavento · 5 years ago
  81. 77f1c76 build: do not look for unneeded libraries by Davide Pesavento · 5 years ago
  82. e209961 name-component: encode/decode Convention rev2 by Junxiao Shi · 5 years ago
  83. 923ba44 Replace all uses of BOOST_THROW_EXCEPTION with NDN_THROW by Davide Pesavento · 5 years ago
  84. fccb2dc encoding+interest: change Parameters to use non-critical type 36 by Davide Pesavento · 5 years ago
  85. 4fdcb27 face: deprecate Id types in favor of Handles by Junxiao Shi · 5 years ago
  86. da9761f face: don't use memory address as PendingInterestId by Junxiao Shi · 5 years ago
  87. fd67401 util: introduce NDN_THROW by Davide Pesavento · 5 years ago
  88. 8fdae89 build: Propagate DEFINES of dependent libraries to libndn-cxx.pc by Alexander Afanasyev · 5 years ago
  89. d0fef21 common: drop inclusion of unistd.h by Davide Pesavento · 5 years ago
  90. 5c803b9 encoding: improve documentation of Block class by Davide Pesavento · 5 years ago
  91. 459a653 util: update bundled copies of {any,optional,variant}-lite by Davide Pesavento · 5 years ago
  92. b72360f Prepare release 0.6.5 by Alexander Afanasyev · 5 years ago ndn-cxx-0.6.5
  93. 80609d4 face: scoped pending Interest by Junxiao Shi · 5 years ago
  94. 7c5bc1e build: Upgrade waf build system to version 2.0.14 by Alexander Afanasyev · 5 years ago
  95. 07115cc util: reimplement scheduler::EventId with CancelHandle by Junxiao Shi · 5 years ago
  96. 4e0cc6c security: Remove use of ChildSelector in CertificateBundleFetcher by Alexander Afanasyev · 6 years ago
  97. 322e76e Use Boost.Range to simplify some code by Davide Pesavento · 6 years ago
  98. 6b99b6f Add MetadataObject class to encode/decode RDR-style metadata by Chavoosh Ghasemi · 6 years ago
  99. ca48851 tests: delete goodness-of-fit tests from Util/TestRandom by Davide Pesavento · 6 years ago
  100. c53df03 lp: stop accepting NonNegativeInteger as sequence number by Junxiao Shi · 6 years ago