diff --git a/tests/core/version.cpp b/tests/core/version.cpp
index 669a866..9fe3851 100644
--- a/tests/core/version.cpp
+++ b/tests/core/version.cpp
@@ -1,11 +1,12 @@
 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
 /**
- * Copyright (c) 2014  Regents of the University of California,
- *                     Arizona Board of Regents,
- *                     Colorado State University,
- *                     University Pierre & Marie Curie, Sorbonne University,
- *                     Washington University in St. Louis,
- *                     Beijing Institute of Technology
+ * Copyright (c) 2014,  Regents of the University of California,
+ *                      Arizona Board of Regents,
+ *                      Colorado State University,
+ *                      University Pierre & Marie Curie, Sorbonne University,
+ *                      Washington University in St. Louis,
+ *                      Beijing Institute of Technology,
+ *                      The University of Memphis
  *
  * This file is part of NFD (Named Data Networking Forwarding Daemon).
  * See AUTHORS.md for complete list of NFD authors and contributors.
@@ -20,7 +21,7 @@
  *
  * You should have received a copy of the GNU General Public License along with
  * NFD, e.g., in COPYING.md file.  If not, see <http://www.gnu.org/licenses/>.
- **/
+ */
 
 #include "version.hpp"
 #include "core/logger.hpp"
@@ -48,6 +49,8 @@
   NFD_LOG_INFO("NFD_VERSION_STRING " << NFD_VERSION_STRING);
 
   BOOST_STATIC_ASSERT(NFD_VERSION_MAJOR < 1000);
+  BOOST_STATIC_ASSERT(NFD_VERSION_MINOR < 1000);
+  BOOST_STATIC_ASSERT(NFD_VERSION_PATCH < 1000);
   char buf[12];
   snprintf(buf, sizeof(buf), "%d.%d.%d", NFD_VERSION_MAJOR, NFD_VERSION_MINOR, NFD_VERSION_PATCH);
 
diff --git a/version.hpp.in b/version.hpp.in
index 279962f..13027d4 100644
--- a/version.hpp.in
+++ b/version.hpp.in
@@ -1,11 +1,12 @@
 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
 /**
- * Copyright (c) 2014  Regents of the University of California,
- *                     Arizona Board of Regents,
- *                     Colorado State University,
- *                     University Pierre & Marie Curie, Sorbonne University,
- *                     Washington University in St. Louis,
- *                     Beijing Institute of Technology
+ * Copyright (c) 2014,  Regents of the University of California,
+ *                      Arizona Board of Regents,
+ *                      Colorado State University,
+ *                      University Pierre & Marie Curie, Sorbonne University,
+ *                      Washington University in St. Louis,
+ *                      Beijing Institute of Technology,
+ *                      The University of Memphis
  *
  * This file is part of NFD (Named Data Networking Forwarding Daemon).
  * See AUTHORS.md for complete list of NFD authors and contributors.
@@ -20,7 +21,7 @@
  *
  * You should have received a copy of the GNU General Public License along with
  * NFD, e.g., in COPYING.md file.  If not, see <http://www.gnu.org/licenses/>.
- **/
+ */
 
 #ifndef NFD_VERSION_HPP
 #define NFD_VERSION_HPP
@@ -31,6 +32,8 @@
  *  http://semver.org/
  */
 
+// To change version number, modify VERSION variable in top-level wscript.
+
 /** \brief NFD version represented as an integer
  *
  *  MAJOR*1000000 + MINOR*1000 + PATCH
diff --git a/wscript b/wscript
index 7b42d28..93c6a2d 100644
--- a/wscript
+++ b/wscript
@@ -23,7 +23,7 @@
 NFD, e.g., in COPYING.md file.  If not, see <http://www.gnu.org/licenses/>.
 """
 
-VERSION = "0.1.0"
+VERSION = "0.2.0"
 APPNAME = "nfd"
 BUGREPORT = "http://redmine.named-data.net/projects/nfd"
 URL = "http://named-data.net/doc/NFD/"
