ndn-cxx version 0.7.1

The build requirements have been increased to require Clang >= 4.0,
Xcode >= 9.0, and Python >= 3.6. Meanwhile, it is recommended to use GCC
>= 7.4.0 and Boost >= 1.65.1. This effectively drops official support
for Ubuntu 16.04 when using distribution-provided Boost packages --
ndn-cxx may still work on this platform, but we provide no official
support for it. Additionally, this release drops support for CentOS 7
and adds support for CentOS 8.

New features

- Signed Interests according to Packet Specification v0.3 (4804)
- Add "in-order" mode to SegmentFetcher and a corresponding signal
  that is emitted after each segment is received and validated in
  segment order. Segments that arrive out-of-order will be buffered
  internally until all earlier segments have arrived and passed
  validation.
- Allow KeyLocator to either identify the full name of a certificate,
  an unversioned certificate prefix, or the name of a public key
  (without issuer and version) (5115)
- Allow face MTU to be changed via management (5056)

Improvements and bug fixes

- Change default key type generated by ndnsec to ECDSA
- Use named curve when encoding ECDSA public keys (5037)
- Allow non-default key to be exported for an identity via
  ndnsec-export (5043)
- Fix spurious error message from ndnsec-key-gen when key-id is
  specified (5057)
- Provide more fine-grained choices for name::UriFormat (4777)
- Allow automatic log flushing to be disabled (3668)
- Avoid unnecessarily invalidating cached wire encodings of Data
  packets
- Correct extraction of signed portion of Data packets to be
  compatible with Packet Specification v0.3 (4583)
- Fix regression in CertificateBundleFetcher with FinalBlockId
  handling
- Improve error handling during TPM signing (4585, 5086)
- Correctly handle non-existent identity in
  PibImpl::setDefaultIdentity
- Fix incompatibility with time::toIsoString in Boost 1.73.0+
- Fix incompatibility with <version> header in C++20
- Various fixes for Android
- Various improvements to documentation, test suite structure, and
  authors list

Deprecations

- Deprecate old Signed Interest and Command Interest formats (4804)
- Deprecate Signature in favor of SignatureInfo in Data packets and
  certificates (4804)
- SignatureInfo::unsetKeyLocator and
  SignatureInfo::unsetValidityPeriod have been deprecated
- Header files under ndn/security/v2 have been moved into the main
  ndn/security directory

Removals

- Remove deprecated PendingInterestId, InterestFilterId, and
  RegisteredPrefixId (4885)
- Remove a number of long-deprecated functions and enums
  1. 933a567 docs: fix syntax highlighting of code blocks by Davide Pesavento · 4 years, 2 months ago
  2. 78338c5 build: recommend boost >= 1.65.1 by Davide Pesavento · 4 years, 5 months ago
  3. 844b093 build: require gcc >= 5.3, boost >= 1.58, openssl >= 1.0.2 by Davide Pesavento · 6 years ago
  4. ab9aad0 examples: handle Nack in consumer by Weiwei Liu · 8 years ago
  5. 55ea01a docs: spec of SafeBag format by Yingdi Yu · 9 years ago
  6. e6e6fde build: require gcc >= 4.8.2 and boost >= 1.54.0 by Davide Pesavento · 8 years ago
  7. 9fcc24f docs: improve example applications by Steve DiBenedetto · 10 years ago
  8. ba1a4a9 docs: Documentation update by Ivan Yeo · 10 years ago
  9. 4e99f53 docs: Update of tutorials and other minor fixes by Yingdi Yu · 10 years ago
  10. 9b0e114 docs: Updating documentation for 0.1.0 release by Alexander Afanasyev · 10 years ago
  11. dfa52c4 docs: Updating documentation and license boilerplates in all files by Alexander Afanasyev · 10 years ago
  12. 151a855 docs: Extending documentation and manpages by Alexander Afanasyev · 10 years ago