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. b310efb docs+ndnsec: improve description and parsing of command options, rewrite man pages by Davide Pesavento · 5 years ago
  2. fa995ac docs+tools: improve ndnsec help, error messages, and manual page by Davide Pesavento · 5 years ago
  3. 923ba44 Replace all uses of BOOST_THROW_EXCEPTION with NDN_THROW by Davide Pesavento · 5 years ago
  4. 24c5a00 impl: rename 'detail' to 'impl' by Junxiao Shi · 6 years ago
  5. 7e78064 Change #include style by Davide Pesavento · 6 years ago
  6. 1944281 Rename 'src' directory to 'ndn-cxx' by Davide Pesavento · 6 years ago
  7. 634a62b tools: Allow specifying passphrase for ndnsec import/export in command line by Alexander Afanasyev · 6 years ago
  8. 6d43393 tools: fix compilation with Boost 1.67 by Davide Pesavento · 6 years ago
  9. 5560fd4 build: update waf to version 2.0.6 by Alexander Afanasyev · 6 years ago
  10. 0f83080 util: add literal operators for duration types by Davide Pesavento · 7 years ago
  11. 457f09a tools: Allow 'ndnsec key-gen' to customize KeyId by Zhiyi Zhang · 7 years ago
  12. 5afbb0b util: switch to boost::asio::basic_waitable_timer by Davide Pesavento · 7 years ago
  13. 5d0b010 encoding: remove duplicate buf() and get() methods from Buffer class by Davide Pesavento · 7 years ago
  14. 5759be3 security: Identity/Key comparison operators by Junxiao Shi · 7 years ago
  15. 478206e tools: print correct certificate in ndnsec cert-dump by Junxiao Shi · 7 years ago
  16. 476200b tools: delete -p in ndnsec-export/import help by Junxiao Shi · 7 years ago
  17. 22ee089 tools: Disable unnecessary confirmation during ndnsec-import by Alexander Afanasyev · 7 years ago
  18. 464da53 tools: Fix bugs in cert-gen by Alexander Afanasyev · 7 years ago
  19. cdcde90 Fix compilation with Boost 1.65.0 by Davide Pesavento · 7 years ago
  20. 35109a1 tools: Convert ndnsec to v2::KeyChain by Alexander Afanasyev · 8 years ago
  21. 82c359c tools: Refactor ndnsec tools and update code style by Alexander Afanasyev · 8 years ago
  22. 80782e0 **breaking change**: Switch Face and related classes to v2::KeyChain by Alexander Afanasyev · 8 years ago
  23. 1ece2e3 security: Renaming EcdsaKeyParams to EcKeyParams by Spyridon Mastorakis · 9 years ago
  24. 4c9a3d5 security: Move KeyChain to security::v1 namespace and deprecated it by Alexander Afanasyev · 8 years ago
  25. 848a1e6 tools: delete deprecated ndncatchunks3 and ndnputchunks3 by Davide Pesavento · 8 years ago
  26. 160701a util: ndn::io::loadBlock and saveBlock by Junxiao Shi · 8 years ago
  27. 2fa5939 security: Reorganizing source code to prepare for support of two version of NDN certificates by Alexander Afanasyev · 8 years ago
  28. 99b2a00 security: change enum to enum class in security-common.hpp by Yingdi Yu · 9 years ago
  29. 1e787c4 tools: deprecate ndncatchunks3 and ndnputchunks3 by Weiwei Liu · 8 years ago
  30. aa82eb6 common: remove NDN_CXX_DECL_FINAL/OVERRIDE macros; use C++11 keywords directly by Davide Pesavento · 8 years ago
  31. 606e665 tools: delete deprecated tlvdump by Davide Pesavento · 8 years ago
  32. 5d69550 tools: Fix broken ndnsec-op-tool by Alexander Afanasyev · 8 years ago
  33. f8f63da tools: deprecate tlvdump by Junxiao Shi · 9 years ago
  34. 8f5cbdc Fix int vs. ssize_t type confusion by Davide Pesavento · 9 years ago
  35. 73e3004 docs: Correct copyright statements by Alexander Afanasyev · 9 years ago
  36. ae20525 tools: Fix compilation error with Boost >=1.59 by Alexander Afanasyev · 9 years ago
  37. 1b0311c security: New generalized signing API in KeyChain by Yingdi Yu · 9 years ago
  38. 117f5ef encoding: Remove SCOPE from Interests and all references to it in the related code by Alexander Afanasyev · 9 years ago
  39. cf3a667 build: Fix conditional compilation on availability of getpass() by Alexander Afanasyev · 9 years ago
  40. a2ada22 src: Disable use of getpass() when it is not available by Alexander Afanasyev · 10 years ago
  41. af99f46 src: Update copyright notices for files modified in 2015 by Alexander Afanasyev · 10 years ago
  42. 6147ef4 tools: ndnsec-delete reports success or failure by Yingdi Yu · 10 years ago
  43. d7db8bf tools: ndnsec code reorganization by Alexander Afanasyev · 10 years ago
  44. 28d0d94 build: Support tools and examples with multiple translation units by Alexander Afanasyev · 10 years ago
  45. 4cd8d73 tools: Fix incorrect tag map in tlvdump by Alexander Afanasyev · 10 years ago
  46. 7d8644a tools: Allow ndnsec-key-gen to generate ECDSA keys by Yingdi Yu · 10 years ago
  47. 2a047eb tools: Allow generation of DSK using ndnsec-key-gen by Alexander Afanasyev · 10 years ago
  48. ace7445 tools: Enable ndnsec-dsk-gen by Alexander Afanasyev · 10 years ago
  49. 3e8b52e tools: Allow verbose option in ndnsec-list/ndnsec-ls-identity command line tools by Yingdi Yu · 10 years ago
  50. 37339fd tools: Fix segmentation fault in ndnsec-sign-req by Yingdi Yu · 10 years ago
  51. 6486d52 name: Add support for ImplicitSha256DigestComponent by Alexander Afanasyev · 10 years ago
  52. 66cd424 tools: New (safer) option to include additional information blocks into the certificate by Alexander Afanasyev · 10 years ago
  53. 7438a15 tools: Accept `--sign-id` and `--cert-prefix` in ndnsec-cert-revoke by Alexander Afanasyev · 10 years ago
  54. ba8604d tools: Fix ndnsec-cert-gen to correctly infer prefix before KEY by Yingdi Yu · 10 years ago
  55. 54ce668 all: rename Tlv namespace to tlv for consistency by Steve DiBenedetto · 10 years ago
  56. c4c8120 tools+security: Add empty pointer checking in ndnsec-cert-gen by Yingdi Yu · 10 years ago
  57. 9d9d599 security: Enable exporting/importing ECDSA key by Yingdi Yu · 10 years ago
  58. 5edf97d tools: ndnsec-cert-revoke command by Yingdi Yu · 10 years ago
  59. 0eb5d72 security+tools: Allow user to explicitly specify the cert name prefix before 'KEY' component in ndnsec-certgen by Yingdi Yu · 10 years ago
  60. 24b75c8 src: Minor corrections and improvements by Alexander Afanasyev · 10 years ago
  61. c169a81 src: Switching to LGPL 3.0 license by Alexander Afanasyev · 10 years ago
  62. 9c57818 src: Making use of DEPRECATED macro and updating library code not to use deprecated methods by Alexander Afanasyev · 10 years ago
  63. f73f063 src: Removing unnecessary use of cref() in concert with make_shared by Alexander Afanasyev · 10 years ago
  64. fff47d6 build: Add optional pthread flag when detecting Crypto++ by Alexander Afanasyev · 10 years ago
  65. cfe0b06 build: Changing the way version is managed by Alexander Afanasyev · 10 years ago ndn-cxx-0.1.0
  66. 27b0e39 tools: tlvdump can decode Block from stream directly by Yingdi Yu · 10 years ago
  67. f56c68f security: Construct KeyChain from configuration file. by Yingdi Yu · 10 years ago
  68. dfa52c4 docs: Updating documentation and license boilerplates in all files by Alexander Afanasyev · 10 years ago
  69. 766cea7 ====== Renaming library to ndn-cxx ====== by Alexander Afanasyev · 10 years ago
  70. 05842f2 tools: Adjust ndnsec-cert-gen behaivor by Yingdi Yu · 10 years ago
  71. fdbfc6d src: Improving consistency and correcting code style by Alexander Afanasyev · 10 years ago
  72. b1db7c6 build: Warnings correction for gcc 4.2 by Alexander Afanasyev · 10 years ago
  73. 482ccc5 build: suppress CryptoPP warnings by Junxiao Shi · 10 years ago
  74. b61f540 security: Correct code style for ndnsec and add command-line exception handling by Yingdi Yu · 10 years ago
  75. 5c1f841 tools: Add delete option in ndnsec by Yingdi Yu · 10 years ago
  76. 1dd95c5 src: Enabling -Werror in debug mode and some style updates by Alexander Afanasyev · 10 years ago
  77. 4b98e8c name: Implementing appendNumber/toNumber to use nonNegativeInteger by Alexander Afanasyev · 10 years ago
  78. aa0e7da all: Refactoring work with time using boost::chrono by Alexander Afanasyev · 10 years ago
  79. 64c3fb4 security: Add a wrapper for export/import information. by Yingdi Yu · 10 years ago
  80. f8fc8de security: Bug fixing by Yingdi Yu · 10 years ago
  81. 8d7468f tools: Combine all security tools into one; Add Export/Import/Delete/Unlock/AddACL command by Yingdi Yu · 10 years ago
  82. be4150e security: Adjust unlocking TPM process. by Yingdi Yu · 10 years ago
  83. 4b45628 tlv: Another set of changes to update TLV type re-assignment by Alexander Afanasyev · 10 years ago
  84. 6835ad8 tlv: !!! MAJOR CHANGE !!! Changed TLV codes by Alexander Afanasyev · 10 years ago
  85. 29e5c3d encoding: Fixing Block (and as a result Name) encoding bugs by Alexander Afanasyev · 10 years ago
  86. 0222fba api: Major API change. OnInterest/OnData callbacks now use just references, not shared pointers by Alexander Afanasyev · 10 years ago
  87. e289b53 face: Implementing nfd::Controller by Alexander Afanasyev · 10 years ago
  88. 9c7ed11 src: Fixing signed/unsigned comparison warnings and removing all warning-suppressing pragmas by Alexander Afanasyev · 10 years ago
  89. 95e8c2f name: Optimization of Name implementation by Alexander Afanasyev · 10 years ago
  90. e6bfab2 tools: Add security tools; Add waf build options for tools. by Yingdi Yu · 10 years ago
  91. 09c613f src: Another round of source updates: moving all headers close to implementation files by Alexander Afanasyev · 10 years ago
  92. 1e0a077 build: Fixing build and unit tests by Alexander Afanasyev · 10 years ago
  93. 200dd6f build: Finalizing build system conversion by Alexander Afanasyev · 10 years ago
  94. d409d59 build: Finalizing waf building system (removing legacy code) by Alexander Afanasyev · 10 years ago
  95. a1ae0a1 build: Adding waf as a build system by Alexander Afanasyev · 10 years ago
  96. fffd1e4 renaming: Make names of the tools unique by Yingdi Yu · 11 years ago
  97. 61ec272 renaming: ndn-cpp to ndn-cpp-dev by Yingdi Yu · 11 years ago
  98. 89a889c tools/ndncatchunks: Enable MustBeFresh selector by Alexander Afanasyev · 11 years ago
  99. 8995f54 node+transport: Fixing bug that prevented reconnection to the forwarder after being disconnected for some reason by Alexander Afanasyev · 11 years ago
  100. c1ebbe9 tools: Disabling hardcoded Scope(1) for ndncatchunks tool by Alexander Afanasyev · 11 years ago