diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index b551e45..f328d39 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -53,7 +53,7 @@
           - os: macos-12
             xcode: '13.4'
           - os: macos-12
-            xcode: '14.1'
+            xcode: '14.2'
     steps:
       - name: Set up Xcode
         uses: maxim-lobanov/setup-xcode@v1
diff --git a/.jenkins.d/00-deps.sh b/.jenkins.d/00-deps.sh
index a677d91..299b052 100755
--- a/.jenkins.d/00-deps.sh
+++ b/.jenkins.d/00-deps.sh
@@ -20,7 +20,7 @@
 
 if [[ $ID == macos ]]; then
     if [[ -n $GITHUB_ACTIONS ]]; then
-        export HOMEBREW_NO_INSTALL_UPGRADE=1
+        export HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK=1
     fi
     brew update
     brew install --formula "${FORMULAE[@]}"
diff --git a/.waf-tools/default-compiler-flags.py b/.waf-tools/default-compiler-flags.py
index 4debb4e..3a7bf66 100644
--- a/.waf-tools/default-compiler-flags.py
+++ b/.waf-tools/default-compiler-flags.py
@@ -145,9 +145,9 @@
         flags = super(GccBasicFlags, self).getDebugFlags(conf)
         flags['CXXFLAGS'] += ['-Og',
                               '-g3',
-                              '-pedantic',
                               '-Wall',
                               '-Wextra',
+                              '-Wpedantic',
                               '-Werror',
                               '-Wcatch-value=2',
                               '-Wextra-semi',
@@ -163,9 +163,9 @@
         flags = super(GccBasicFlags, self).getOptimizedFlags(conf)
         flags['CXXFLAGS'] += ['-O2',
                               '-g',
-                              '-pedantic',
                               '-Wall',
                               '-Wextra',
+                              '-Wpedantic',
                               '-Wcatch-value=2',
                               '-Wextra-semi',
                               '-Wnon-virtual-dtor',
diff --git a/AUTHORS.md b/AUTHORS.md
index cfebce1..88cba47 100644
--- a/AUTHORS.md
+++ b/AUTHORS.md
@@ -1,8 +1,8 @@
 # repo-ng Authors
 
-The following lists maintainers, primary developers, and all much-appreciated contributors to repo-ng in alphabetic order.
+The following lists maintainers, primary developers, and all much-appreciated contributors to repo-ng in alphabetical order.
 The specific contributions of individual authors can be obtained from the git history of the [official repo-ng repository](https://github.com/named-data/repo-ng).
-If you would like to become a contributor to the official repository, please follow the recommendations in https://github.com/named-data/.github/blob/master/CONTRIBUTING.md.
+If you would like to become a contributor to the official repository, please follow the recommendations in <https://github.com/named-data/.github/blob/main/CONTRIBUTING.md>.
 
 * Alexander Afanasyev <https://users.cs.fiu.edu/~afanasyev>
 * Shuo Chen <https://github.com/chenatu>
diff --git a/INSTALL.md b/INSTALL.md
index cdfd1a8..8b45bcf 100644
--- a/INSTALL.md
+++ b/INSTALL.md
@@ -2,7 +2,7 @@
 
 ## Prerequisites
 
-* [ndn-cxx and its dependencies](https://named-data.net/doc/ndn-cxx/current/INSTALL.html)
+* [ndn-cxx and its dependencies](https://docs.named-data.net/ndn-cxx/current/INSTALL.html)
 * sqlite3
 
 ## Build
@@ -16,13 +16,14 @@
 
 This builds and installs `ndn-repo-ng` and related tools.
 
-If configured with tests (`./waf configure --with-tests`), the above commands will
-also generate unit tests that can be run with `./build/unit-tests`.
+If configured with tests (`./waf configure --with-tests`), the above commands
+will also generate unit tests that can be run with `./build/unit-tests`.
 
 ## Configuration
 
 The default configuration file path is `/usr/local/etc/ndn/repo-ng.conf`.
-Users may copy the [repo-ng.conf.sample](repo-ng.conf.sample) config sample to that path.
+Users may copy the [`repo-ng.conf.sample`](repo-ng.conf.sample) example config
+to that path.
 
 ## Database
 
@@ -36,6 +37,6 @@
 
 ## Tools
 
-Currently, three tools are included: *ndngetfile*, *ndnputfile*, and *repo-ng-ls*.
+Currently, three tools are included: `ndngetfile`, `ndnputfile`, and `repo-ng-ls`.
 Users can find detailed information about these tools on the
 [repo-ng wiki](https://redmine.named-data.net/projects/repo-ng/wiki/Tools).
diff --git a/README-dev.md b/README-dev.md
deleted file mode 100644
index eb421cc..0000000
--- a/README-dev.md
+++ /dev/null
@@ -1,38 +0,0 @@
-Notes for repo-ng developers
-============================
-
-Code style
-----------
-
-repo-ng code is subject to [ndn-cxx code style](https://named-data.net/doc/ndn-cxx/current/code-style.html).
-
-Licensing
----------
-
-All contributions to **repo-ng** project must be licensed under GPL 3.0+ or compatible
-license.  When GPL 3.0 license is used, the following is the recommended license
-boilerplate to be put into all `.hpp` and `.cpp` files:
-
-    /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
-    /*
-     * Copyright (c) [Year(s)],  [Copyright Holder(s)].
-     *
-     * This file is part of NDN repo-ng (Next generation of NDN repository).
-     * See AUTHORS.md for complete list of repo-ng authors and contributors.
-     *
-     * repo-ng is free software: you can redistribute it and/or modify it under the terms
-     * of the GNU General Public License as published by the Free Software Foundation,
-     * either version 3 of the License, or (at your option) any later version.
-     *
-     * repo-ng is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
-     * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-     * PURPOSE.  See the GNU General Public License for more details.
-     *
-     * You should have received a copy of the GNU General Public License along with
-     * repo-ng, e.g., in COPYING.md file.  If not, see <http://www.gnu.org/licenses/>.
-     ////// [optional part] //////
-     *
-     * @author Author's Name <email@domain-or-homepage://url>
-     * @author Other Author's Name <another.email@domain-or-homepage://url>
-     ////// [end of optional part] //////
-     */
diff --git a/README.md b/README.md
index b2ca06d..1260249 100644
--- a/README.md
+++ b/README.md
@@ -21,12 +21,11 @@
 ## Contributing
 
 We greatly appreciate contributions to the repo-ng code base, provided that they are
-licensed under the GPL 3.0+ or a compatible license (see below).
-If you are new to the NDN software community, please read the
-[Contributor's Guide](https://github.com/named-data/.github/blob/master/CONTRIBUTING.md)
-to get started.
+licensed under the GNU GPL version 3 or a compatible license.
+If you are new to the NDN software community, please read our [Contributor's Guide](
+https://github.com/named-data/.github/blob/main/CONTRIBUTING.md) to get started.
 
 ## License
 
-repo-ng is an open source project licensed under the GPL version 3.
-See [`COPYING.md`](COPYING.md) for more information.
+repo-ng is free software distributed under the GNU General Public License version 3.
+See [`COPYING.md`](COPYING.md) for details.
diff --git a/repo-ng.conf.sample b/repo-ng.conf.sample
index bb26751..82b11bc 100644
--- a/repo-ng.conf.sample
+++ b/repo-ng.conf.sample
@@ -13,9 +13,9 @@
   }
 
   ; Section defining the list of command prefixes (to insert or delete Data) to register.
-  ; Only the 'prefix' option is allowed here and it can be repeated multiple times.
   command
   {
+    ; Only the 'prefix' option is allowed here and it can be repeated multiple times.
     prefix "ndn:/example/repo/1"
     prefix "ndn:/example/repo/2"
   }
@@ -44,10 +44,11 @@
       type any
     }
 
-    ; ; These rules are examples to validate signed Interests for commands and data.
-    ; ; One can define their own rules for signed Interests and Data packets to be
-    ; ; inserted according to the Validator Configuration File Format.
-    ; ; See https://named-data.net/doc/ndn-cxx/current/tutorials/security-validator-config.html
+    ; The following rules are examples to validate signed Interests for commands and data.
+    ; One can define their own rules for signed Interests and Data packets to be inserted
+    ; according to the Validator Configuration File Format.
+    ; See https://docs.named-data.net/ndn-cxx/current/tutorials/security-validator-config.html
+    ;
     ; rule
     ; {
     ;   id "Simple Rule For Interests"
diff --git a/wscript b/wscript
index 29435e0..524e9de 100644
--- a/wscript
+++ b/wscript
@@ -34,7 +34,7 @@
     conf.find_program(['pkgconf', 'pkg-config'], var='PKGCONFIG')
 
     pkg_config_path = os.environ.get('PKG_CONFIG_PATH', f'{conf.env.LIBDIR}/pkgconfig')
-    conf.check_cfg(package='libndn-cxx', args=['libndn-cxx >= 0.8.0', '--cflags', '--libs'],
+    conf.check_cfg(package='libndn-cxx', args=['libndn-cxx >= 0.8.1', '--cflags', '--libs'],
                    uselib_store='NDN_CXX', pkg_config_path=pkg_config_path)
 
     conf.check_sqlite3()
