Prepare release 0.7.0
Change-Id: I3d707d1f1684879fa9133ac87d1b53710465dea1
diff --git a/.jenkins b/.jenkins
index 0f40e00..92b9dae 100755
--- a/.jenkins
+++ b/.jenkins
@@ -32,6 +32,9 @@
export DISABLE_HEADERS_CHECK=yes
fi
+# https://reproducible-builds.org/docs/source-date-epoch/
+export SOURCE_DATE_EPOCH=$(git log -1 --format=%ct)
+
for file in .jenkins.d/*; do
[[ -f $file && -x $file ]] || continue
diff --git a/.jenkins.d/10-build.sh b/.jenkins.d/10-build.sh
index ee8f4ba..f2ba812 100755
--- a/.jenkins.d/10-build.sh
+++ b/.jenkins.d/10-build.sh
@@ -27,7 +27,7 @@
fi
# Build in debug mode with tests
-./waf --color=yes configure --debug --with-psync --with-chronosync --with-svs --with-tests $ASAN $COVERAGE
+./waf --color=yes configure --debug --with-chronosync --with-psync --with-svs --with-tests $ASAN $COVERAGE
./waf --color=yes build
# (tests will be run against the debug version)
diff --git a/docs/doxygen.conf.in b/docs/doxygen.conf.in
index efb75db..ea70692 100644
--- a/docs/doxygen.conf.in
+++ b/docs/doxygen.conf.in
@@ -1090,14 +1090,6 @@
HTML_COLORSTYLE_GAMMA = 91
-# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML
-# page will contain the date and time when the page was generated. Setting this
-# to NO can help when comparing the output of multiple runs.
-# The default value is: YES.
-# This tag requires that the tag GENERATE_HTML is set to YES.
-
-HTML_TIMESTAMP = NO
-
# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML
# documentation will contain sections that can be hidden and shown after the
# page has loaded.
@@ -1367,17 +1359,6 @@
FORMULA_FONTSIZE = 10
-# Use the FORMULA_TRANPARENT tag to determine whether or not the images
-# generated for formulas are transparent PNGs. Transparent PNGs are not
-# supported properly for IE 6.0, but are supported on all modern browsers.
-#
-# Note that when changing this option you need to delete any form_*.png files in
-# the HTML output directory before the changes have effect.
-# The default value is: YES.
-# This tag requires that the tag GENERATE_HTML is set to YES.
-
-FORMULA_TRANSPARENT = YES
-
# Enable the USE_MATHJAX option to render LaTeX formulas using MathJax (see
# http://www.mathjax.org) which uses client side Javascript for the rendering
# instead of using prerendered bitmaps. Use this if you do not have LaTeX
@@ -1640,16 +1621,6 @@
LATEX_HIDE_INDICES = NO
-# If the LATEX_SOURCE_CODE tag is set to YES then doxygen will include source
-# code with syntax highlighting in the LaTeX output.
-#
-# Note that which sources are shown also depends on other settings such as
-# SOURCE_BROWSER.
-# The default value is: NO.
-# This tag requires that the tag GENERATE_LATEX is set to YES.
-
-LATEX_SOURCE_CODE = NO
-
# The LATEX_BIB_STYLE tag can be used to specify the style to use for the
# bibliography, e.g. plainnat, or ieeetr. See
# http://en.wikipedia.org/wiki/BibTeX and \cite for more info.
@@ -1980,15 +1951,6 @@
# Configuration options related to the dot tool
#---------------------------------------------------------------------------
-# If the CLASS_DIAGRAMS tag is set to YES doxygen will generate a class diagram
-# (in HTML and LaTeX) for classes with base or super classes. Setting the tag to
-# NO turns the diagrams off. Note that this option also works with HAVE_DOT
-# disabled, but it is recommended to install and use dot, since it yields more
-# powerful graphs.
-# The default value is: YES.
-
-CLASS_DIAGRAMS = YES
-
# If set to YES, the inheritance and collaboration graphs will hide inheritance
# and usage relations if the target is undocumented or is not a class.
# The default value is: YES.
@@ -2014,23 +1976,6 @@
DOT_NUM_THREADS = 0
-# When you want a differently looking font n the dot files that doxygen
-# generates you can specify the font name using DOT_FONTNAME. You need to make
-# sure dot is able to find the font, which can be done by putting it in a
-# standard location or by setting the DOTFONTPATH environment variable or by
-# setting DOT_FONTPATH to the directory containing the font.
-# The default value is: Helvetica.
-# This tag requires that the tag HAVE_DOT is set to YES.
-
-DOT_FONTNAME = Helvetica
-
-# The DOT_FONTSIZE tag can be used to set the size (in points) of the font of
-# dot graphs.
-# Minimum value: 4, maximum value: 24, default value: 10.
-# This tag requires that the tag HAVE_DOT is set to YES.
-
-DOT_FONTSIZE = 10
-
# By default doxygen will tell dot to use the default font as specified with
# DOT_FONTNAME. If you specify a different font using DOT_FONTNAME you can set
# the path where dot can find it using this tag.
diff --git a/docs/release-notes.rst b/docs/release-notes.rst
index 7a816ba..1f0ebcc 100644
--- a/docs/release-notes.rst
+++ b/docs/release-notes.rst
@@ -1,4 +1,4 @@
Release Notes
=============
-.. include:: release-notes/release-notes-0.6.0.rst
+.. include:: release-notes/release-notes-0.7.0.rst
diff --git a/docs/release-notes/release-notes-0.7.0.rst b/docs/release-notes/release-notes-0.7.0.rst
new file mode 100644
index 0000000..68326fa
--- /dev/null
+++ b/docs/release-notes/release-notes-0.7.0.rst
@@ -0,0 +1,44 @@
+NLSR version 0.7.0
+------------------
+
+Release date: August 18, 2023
+
+New features
+^^^^^^^^^^^^
+
+- Add experimental support for State Vector Sync (SVS) (:issue:`5248`)
+- ``nlsrc``: Add an option to query the status from remote routers (:issue:`4544`)
+
+Notable changes and improvements
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+- **Deprecate ChronoSync support**: ChronoSync support is now optional and excluded from the
+ default build; it remains available mainly for testing purposes (:issue:`5147`)
+- Switched to the C++17 standard
+- The minimum build requirements have been increased as follows:
+
+ - Either GCC >= 7.4.0 or Clang >= 6.0 is required on Linux
+ - On macOS, Xcode 11.3 or later is recommended; older versions may still work but are not
+ officially supported
+ - Boost >= 1.65.1 and ndn-cxx >= 0.8.1 are required on all platforms
+ - Sphinx 4.0 or later is required to build the documentation
+
+- Refactor LSDB for readability and add signals to notify of modifications (:issue:`4127`)
+- Retrieve LSA from the face that triggered the notification of LSA changes
+- Accommodate certificate name in ``KeyLocator`` (:issue:`5195`)
+- Change ``sig-type`` to ``ecdsa-sha256`` in ``nlsr.conf`` as ndn-cxx now has strict checking for it
+- Improve error handling and reporting
+- Stop using the ``gold`` linker on Linux; prefer instead linking with ``lld`` if installed
+- Update waf build system to version 2.0.24
+- Various test suite and documentation improvements
+
+Bug fixes
+^^^^^^^^^
+
+- lsdb: Fix for issues involving incorrect retransmission behavior in segment fetcher
+- Prevent NLSR from unregistering route during update for router that advertised it initially
+ (:issue:`5179`)
+- NameLsa: fix LSDB update bug by sorting the NPLs before difference
+- Fix recurring sync prefix registration on every hello data (:issue:`5157`)
+- Return the appropriate exit codes when executing ``nlsrc`` advertise/withdraw commands
+ (:issue:`5271`)
diff --git a/docs/releases.rst b/docs/releases.rst
index 0efddcc..9e9da64 100644
--- a/docs/releases.rst
+++ b/docs/releases.rst
@@ -1,5 +1,5 @@
-NLSR Versions
-=============
+All NLSR Releases
+=================
.. toctree::
:glob:
@@ -9,6 +9,12 @@
release-notes/*
+* **NLSR version 0.7.0**
+ (:doc:`Release Notes <release-notes/release-notes-0.7.0>`, `Documentation <https://docs.named-data.net/NLSR/0.7.0/>`__)
+
+ `src (git) <https://github.com/named-data/NLSR/releases/tag/NLSR-0.7.0>`__,
+ `src (tarball) <https://named-data.net/downloads/nlsr-0.7.0.tar.xz>`__ (`checksum <https://named-data.net/downloads/nlsr-0.7.0.tar.xz.sha256>`__)
+
* **NLSR version 0.6.0**
(:doc:`Release Notes <release-notes/release-notes-0.6.0>`, `Documentation <https://docs.named-data.net/NLSR/0.6.0/>`__)
diff --git a/src/conf-parameter.hpp b/src/conf-parameter.hpp
index 1bcf64c..687aa1c 100644
--- a/src/conf-parameter.hpp
+++ b/src/conf-parameter.hpp
@@ -1,6 +1,6 @@
/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
/*
- * Copyright (c) 2014-2022, The University of Memphis,
+ * Copyright (c) 2014-2023, The University of Memphis,
* Regents of the University of California,
* Arizona Board of Regents.
*
@@ -531,7 +531,7 @@
PUBLIC_WITH_TESTS_ELSE_PRIVATE:
// must be incremented when breaking changes are made to sync
- static constexpr uint64_t SYNC_VERSION = 10;
+ static constexpr uint64_t SYNC_VERSION = 11;
AdjacencyList m_adjl;
NamePrefixList m_npl;
diff --git a/wscript b/wscript
index 6beff79..bcf3261 100644
--- a/wscript
+++ b/wscript
@@ -22,7 +22,7 @@
from waflib import Context, Logs, Utils
import os, subprocess
-VERSION = '0.6.0'
+VERSION = '0.7.0'
APPNAME = 'nlsr'
GIT_TAG_PREFIX = 'NLSR-'