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. 720e25c detail: improve ScopedCancelHandle by Davide Pesavento · 5 years ago
  2. 80609d4 face: scoped pending Interest by Junxiao Shi · 6 years ago
  3. 60aaef0 face: scoped Interest filter by Junxiao Shi · 6 years ago
  4. ec475a7 face: scoped prefix registration by Junxiao Shi · 6 years ago
  5. 7e78064 Change #include style by Davide Pesavento · 6 years ago
  6. 74daf74 Rename 'tests/unit-tests' directory to 'tests/unit' by Davide Pesavento · 6 years ago[Renamed from tests/unit-tests/face.t.cpp]
  7. b55e5d3 interest: declare default CanBePrefix setting by Junxiao Shi · 6 years ago
  8. e240422 face: use post instead of dispatch to avoid re-entrancy issues by Ashlesh Gawande · 6 years ago
  9. 0f83080 util: add literal operators for duration types by Davide Pesavento · 7 years ago
  10. b682891 face: Interest loopback by Junxiao Shi · 7 years ago
  11. 859888f face: retain PendingInterest during Interest processing by Junxiao Shi · 7 years ago
  12. 79a7a16 face: send Nack after every InterestCallback has responded by Junxiao Shi · 7 years ago
  13. 1ad0b4b face: insert pending Interest records for Interests from forwarder by Junxiao Shi · 7 years ago
  14. 80782e0 **breaking change**: Switch Face and related classes to v2::KeyChain by Alexander Afanasyev · 8 years ago
  15. e6835fe Remove previously deprecated headers, methods, and constants by Alexander Afanasyev · 8 years ago
  16. 70244f4 Switch to new KeyChain where possible by Alexander Afanasyev · 8 years ago
  17. fc99b51 tests: Implement IdentityManagementV2Fixture for v2::KeyChain by Alexander Afanasyev · 8 years ago
  18. 4c9a3d5 security: Move KeyChain to security::v1 namespace and deprecated it by Alexander Afanasyev · 8 years ago
  19. 1013fd0 face: Invoke NackCallback on all matching Interests by Alexander Afanasyev · 8 years ago
  20. eee3e82 tests: respect naming conventions and improve nesting of some test suites by Davide Pesavento · 8 years ago
  21. 4d261b6 lp: add CongestionMark field and tag by Eric Newberry · 8 years ago
  22. a1478db lp: delete deprecated LocalControlHeader by Junxiao Shi · 8 years ago
  23. e7bb6c8 face: perform wire format encoding in frontend class by Junxiao Shi · 8 years ago
  24. ae0b418 face: don't crash if Face is destroyed with outstanding io.post by Junxiao Shi · 8 years ago
  25. f5b5ae2 face: make Face test suite run faster by Junxiao Shi · 8 years ago
  26. 76e0eb2 face: accommodate empty InterestCallback/DataCallback/NackCallback by Junxiao Shi · 8 years ago
  27. 103d8ed face: minor refactoring and Doxygen improvements by Junxiao Shi · 8 years ago
  28. 85d9083 tests: move makeInterest/makeData/etc to ndn::tests namespace by Junxiao Shi · 8 years ago
  29. cf49055 tests: Extending Face test cases by Alexander Afanasyev · 8 years ago
  30. e4f8c3b tests: Enable isolation of KeyChain during run of unit/integrated tests by Alexander Afanasyev · 8 years ago
  31. 57e0036 face+security: Introduce environment variables to set/override transport, pib, and tpm configurations. by Alexander Afanasyev · 8 years ago
  32. bb64c17 face: Allow creation of Face with custom IO service and default transport by Alexander Afanasyev · 9 years ago
  33. 9bdbb83 tests: Replace usage of deprecated elements of ndn::util::DummyClientFace by Alexander Afanasyev · 9 years ago
  34. 3a6da36 face+util: Add protected Face::getTransport method and simplify DummyClientFace implementation by Alexander Afanasyev · 9 years ago
  35. 4b46998 lp: IncomingFaceId, NextHopFaceId, CachePolicy tags by Junxiao Shi · 9 years ago
  36. 56b0bf8 face: API to remove all pending Interests by Ilya Moiseenko · 9 years ago
  37. 83872fd face: send and receive NACK by Eric Newberry · 9 years ago
  38. 0b3cac5 face: simplify prefix registration APIs with SigningInfo by Joao Pereira · 9 years ago
  39. 9d158f0 face: Refactor internal PIT to use scheduled events by Alexander Afanasyev · 10 years ago
  40. 429634f tests: Change to updated naming conventions by Spyridon Mastorakis · 10 years ago[Renamed (99%) from tests/unit-tests/test-face.cpp]
  41. c759a20 management: add CachingPolicy to LocalControlHeader by Jiewen Tan · 10 years ago
  42. ea71967 util: Extend DummyClientFace to process LocalControlHeader by Alexander Afanasyev · 10 years ago
  43. a1ea506 face: connect to Transport during construction by Junxiao Shi · 10 years ago[Renamed (93%) from tests/unit-tests/test-faces.cpp]
  44. d3a55b2 tests: Converting test cases to use UnitTestClock by Alexander Afanasyev · 10 years ago
  45. 8e15854 face: Reset io_service after io_service::poll() by Alexander Afanasyev · 10 years ago
  46. a60d936 util: make DummyClientFace public API by Junxiao Shi · 10 years ago
  47. 5fc795f tests: Add partial unit test coverage for Face class by Alexander Afanasyev · 10 years ago