ndn-cxx version 0.6.5

Note that this is the last release that encodes to NDN packet format
version 0.2.1. A future release will continue to decode v0.2.1 format,
but will encode to v0.3 format.

New features
============

- More support for NDN packet format version 0.3 (4527)
  - Stop using ChildSelector in NotificationSubscriber (4664)
  - Stop using ChildSelector in CertificateBundleFetcher (4665)
- Support floating point numbers in TLV-VALUE (4612)
- Scoped prefix registration, scoped Interest filter, and scoped pending
  Interest (3919, 4316)
- Counters for satisfied and unsatisfied Interests in ForwarderStatus
  (4720)
- random::getRandomNumberEngine() in the public API
- MetadataObject class to encode/decode RDR-style metadata (4707)
- SegmentFetcher::stop() (4692)

Improvements and bug fixes
==========================

- Use openssl-based routines for the PKCS#8 decoding/decryption when
  exporting key from macOS Keychain (4450)
- Switch to AES-256 for private key encryption in PKCS #8 export
- Add exponential backoff in CertificateFetcherFromNetwork (4718, 4712)
- Throw exception when loading an orphaned ValidationPolicyConfig (API
  violation) (4758)
- Forbid unrecognized TLVs before Name (4667)
- Prevent memory pool size from becoming zero in InMemoryStorage (4769)
- Clean up fetchers when destructing nfd::Controller (4775)
- Fix SegmentFetcher undefined behavior caused by uncanceled pending
  interest (4770)
- Seed the PRNG with more entropy (4808)
- Stop accepting NonNegativeInteger as sequence number in NDNLP (4598)
- Backport C++17 std::any and std::variant as ndn::any and ndn::variant
- Reimplement scheduler::EventId with CancelHandle (4698)

Deprecated
==========

- ndn-cxx/util/scheduler-scoped-event-id.hpp header as it is now
  sufficient to use ndn-cxx/util/scheduler.hpp header (4698)
- Implicit conversion from nullptr to scheduler::EventId (4698)

Removed
=======

- ndn::ip::address{,V6}FromString
- SegmentFetcher::fetch (4464)
- {get,set}FinalBlockId()
- Headers that were already considered internal implementation details
  have been explicitly moved to a detail/ subdir to more clearly
  separate private and public headers
  1. 844b093 build: require gcc >= 5.3, boost >= 1.58, openssl >= 1.0.2 by Davide Pesavento · 6 years ago
  2. ab9aad0 examples: handle Nack in consumer by Weiwei Liu · 8 years ago
  3. 55ea01a docs: spec of SafeBag format by Yingdi Yu · 9 years ago
  4. e6e6fde build: require gcc >= 4.8.2 and boost >= 1.54.0 by Davide Pesavento · 8 years ago
  5. 9fcc24f docs: improve example applications by Steve DiBenedetto · 10 years ago
  6. ba1a4a9 docs: Documentation update by Ivan Yeo · 10 years ago
  7. 4e99f53 docs: Update of tutorials and other minor fixes by Yingdi Yu · 10 years ago
  8. 9b0e114 docs: Updating documentation for 0.1.0 release by Alexander Afanasyev · 10 years ago
  9. dfa52c4 docs: Updating documentation and license boilerplates in all files by Alexander Afanasyev · 10 years ago
  10. 151a855 docs: Extending documentation and manpages by Alexander Afanasyev · 10 years ago