build+ci: switch to python3
Also in this commit:
* Sync CI scripts with other projects
* Modernize docs/conf.py
* Fix typo in docs/doxygen.conf.in
* Cleanup README.md
Refs: #5095
Change-Id: If95b6f00e4f48a102054b47e14e9c021da069e71
diff --git a/README.md b/README.md
index 760c0e0..67cbc8e 100644
--- a/README.md
+++ b/README.md
@@ -1,40 +1,28 @@
-PSYNC - Partial and Full Synchronization Library for NDN
-========================================================
+# PSync: Partial and Full Synchronization Library for NDN
-If you are new to the NDN community of software generally, read the
-[Contributor's Guide](https://github.com/named-data/NFD/blob/master/CONTRIBUTING.md).
+
+[](https://travis-ci.org/named-data/PSync)
+
-PSync library implements the [PSync protocol](https://named-data.net/wp-content/uploads/2017/05/scalable_name-based_data_synchronization.pdf). It uses Invertible
-Bloom Lookup Table (IBLT), also known as Invertible Bloom Filter (IBF), to represent the state
-of a producer in partial sync mode and the state of a node in full sync mode. An IBF is a compact data
-structure where difference of two IBFs can be computed efficiently.
-In partial sync, PSync uses a Bloom Filter to represent the subscription of list of the consumer.
-PSync uses [ndn-cxx](https://github.com/named-data/ndn-cxx) library as NDN development
-library.
+The PSync library implements the
+[PSync protocol](https://named-data.net/wp-content/uploads/2017/05/scalable_name-based_data_synchronization.pdf).
+It uses Invertible Bloom Lookup Table (IBLT), also known as Invertible Bloom Filter (IBF),
+to represent the state of a producer in partial sync mode and the state of a node in full
+sync mode. An IBF is a compact data structure where difference of two IBFs can be computed
+efficiently. In partial sync, PSync uses a Bloom Filter to represent the subscription list
+of the consumer.
-PSync is an open source project licensed under LGPL 3.0 (see `COPYING.md` for more
-detail). We highly welcome all contributions to the PSync code base, provided that
-they can be licensed under LGPL 3.0+ or other compatible license.
+PSync uses the [ndn-cxx](https://github.com/named-data/ndn-cxx) library.
-Feedback
---------
-
-Please submit any bugs or issues to the **PSync** issue tracker:
-
-* https://redmine.named-data.net/projects/psync
-
-Installation instructions
--------------------------
+## Installation
### Prerequisites
-Required:
-
-* [ndn-cxx and its dependencies](https://named-data.net/doc/ndn-cxx/)
+* [ndn-cxx and its dependencies](https://named-data.net/doc/ndn-cxx/current/INSTALL.html)
### Build
-To build PSync from the source:
+To build PSync from source:
./waf configure
./waf
@@ -43,5 +31,23 @@
To build on memory constrained platform, please use `./waf -j1` instead of `./waf`. The
command will disable parallel compilation.
-If configured with tests: `./waf configure --with-tests`), the above commands will also
-generate unit tests in `./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`.
+
+## Reporting bugs
+
+Please submit any bug reports or feature requests to the
+[PSync issue tracker](https://redmine.named-data.net/projects/psync/issues).
+
+## Contributing
+
+We greatly appreciate contributions to the PSync code base, provided that they are
+licensed under the LGPL 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.
+
+## License
+
+PSync is an open source project licensed under the LGPL version 3.
+See [`COPYING.md`](COPYING.md) for more information.