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. 39570d9 tests: fix Interest name in face integration test by Davide Pesavento · 4 years, 9 months ago
  2. 720e25c detail: improve ScopedCancelHandle by Davide Pesavento · 5 years ago
  3. f1bb38d util: move Scheduler and related classes to ndn::scheduler by Davide Pesavento · 5 years ago
  4. a5f233e util: rename Scheduler::scheduleEvent to schedule by Junxiao Shi · 5 years ago
  5. fd61231 util: add ndn::scheduler namespace alias by Davide Pesavento · 5 years ago
  6. 24c5a00 impl: rename 'detail' to 'impl' by Junxiao Shi · 6 years ago
  7. 7e78064 Change #include style by Davide Pesavento · 6 years ago
  8. 1944281 Rename 'src' directory to 'ndn-cxx' by Davide Pesavento · 6 years ago
  9. b55e5d3 interest: declare default CanBePrefix setting by Junxiao Shi · 6 years ago
  10. 5560fd4 build: update waf to version 2.0.6 by Alexander Afanasyev · 7 years ago
  11. 0f83080 util: add literal operators for duration types by Davide Pesavento · 7 years ago
  12. bdcedf4 security+util: remove overloaded operator!() by Davide Pesavento · 7 years ago
  13. cdcde90 Fix compilation with Boost 1.65.0 by Davide Pesavento · 7 years ago
  14. 2bea5c4 tests: revamp Face integrated tests by Junxiao Shi · 7 years ago
  15. b6e276f face: move packet encoding to Impl class by Junxiao Shi · 7 years ago
  16. f35c427 net: NetworkMonitorImplOsx: optimize conversion from CFString by Davide Pesavento · 7 years ago
  17. 770f904 tests: add ndn::tlv::readVarNumber benchmark by Junxiao Shi · 7 years ago
  18. 909ffef interest: mark constructor explicit by Junxiao Shi · 7 years ago
  19. 2dc416d net: add NetworkMonitorStub by Junxiao Shi · 7 years ago
  20. 2546794 net: move network-related files to src/net by Junxiao Shi · 7 years ago
  21. 5bcee10 util: Add detection whether WiFi interface is ad hoc on macOS by Alexander Afanasyev · 7 years ago
  22. 3b3355c util: NetworkMonitor: macOS version of fine-grained signals on interface state changes by Alexander Afanasyev · 7 years ago
  23. f4c1eb3 util: no-op NetworkMonitor on unsupported platforms by Junxiao Shi · 7 years ago
  24. 2bf35a6 util: NetworkMonitor: fine-grained signals on interface/address changes by Davide Pesavento · 7 years ago
  25. a54d5a6 face: Avoid resuming transport after connect if the transmission queue empty by Alexander Afanasyev · 8 years ago
  26. fc99b51 tests: Implement IdentityManagementV2Fixture for v2::KeyChain by Alexander Afanasyev · 8 years ago
  27. 4c9a3d5 security: Move KeyChain to security::v1 namespace and deprecated it by Alexander Afanasyev · 8 years ago
  28. 0669061 tests: remove use of deprecated Face::expressInterest by Eric Newberry · 8 years ago
  29. eee3e82 tests: respect naming conventions and improve nesting of some test suites by Davide Pesavento · 8 years ago
  30. 9f764b5 tests: Scheduler benchmark by Junxiao Shi · 8 years ago
  31. cf9c6bb tests: fix "child has exited" error in Face integrated tests by Junxiao Shi · 8 years ago
  32. e4f8c3b tests: Enable isolation of KeyChain during run of unit/integrated tests by Alexander Afanasyev · 8 years ago
  33. 537dc3a Reduce inclusions of <boost/asio.hpp> in public headers by Davide Pesavento · 9 years ago
  34. e508f14 face: Call Transport::connect within io_service thread by Alexander Afanasyev · 9 years ago
  35. fba1ac6 transport: Fix segfault when transport is closed while multiple send operations are scheduled by Alexander Afanasyev · 9 years ago
  36. 9d158f0 face: Refactor internal PIT to use scheduled events by Alexander Afanasyev · 10 years ago
  37. e6c65e2 util: NetworkMonitor helper to detect network state changes by Alexander Afanasyev · 10 years ago
  38. af99f46 src: Update copyright notices for files modified in 2015 by Alexander Afanasyev · 10 years ago
  39. 4154634 security: Pair-up Tpm and Pib in KeyChain by Yingdi Yu · 10 years ago
  40. 5fc795f tests: Add partial unit test coverage for Face class by Alexander Afanasyev · 10 years ago
  41. 49bb1fb face: Throw Face::Error if supplied Interest or Data exceeds maximum packet size by Alexander Afanasyev · 10 years ago
  42. 5ec0ee3 security: Support ECDSA verification in all related classes. by Yingdi Yu · 10 years ago
  43. 0f5fb69 security: Include timestamp and nonce in signed interest and provide timestamp checking in ValidatorConf by Yingdi Yu · 10 years ago
  44. b465065 security: Add 'type dir' trust-anchor in ValidatorConfig by Yingdi Yu · 10 years ago
  45. 8b1674a build: Reviving support for precompiled headers by Alexander Afanasyev · 10 years ago