diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f328d39..a9f36bb 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1,65 +1,12 @@ name: CI on: push: - paths-ignore: - - 'docs/**' - - '*.md' - - '.mailmap' workflow_dispatch: -permissions: - contents: read +permissions: {} jobs: - linux: - name: ${{ matrix.compiler }} on ${{ matrix.os }} - runs-on: ${{ matrix.os }} - strategy: - fail-fast: false - matrix: - os: [ubuntu-20.04] - compiler: [g++-7, g++-8, g++-9, g++-10, - clang++-7, clang++-8, clang++-9, clang++-10, clang++-11, clang++-12] - include: - - os: ubuntu-22.04 - compiler: g++-11 - - os: ubuntu-22.04 - compiler: g++-12 - - os: ubuntu-22.04 - compiler: clang++-13 - - os: ubuntu-22.04 - compiler: clang++-14 - env: - CXX: ${{ matrix.compiler }} - steps: - - name: Install C++ compiler - run: | - sudo apt-get -qy install ${CXX/clang++/clang} - ${CXX} --version - - name: Checkout - uses: actions/checkout@v3 - - name: Build and test - run: ./.jenkins - - macos: - name: Xcode ${{ matrix.xcode }} on ${{ matrix.os }} - runs-on: ${{ matrix.os }} - strategy: - fail-fast: false - matrix: - os: [macos-11] - xcode: ['12.4', '12.5', '13.2'] - include: - - os: macos-12 - xcode: '13.4' - - os: macos-12 - xcode: '14.2' - steps: - - name: Set up Xcode - uses: maxim-lobanov/setup-xcode@v1 - with: - xcode-version: ${{ matrix.xcode }} - - name: Checkout - uses: actions/checkout@v3 - - name: Build and test - run: ./.jenkins + Ubuntu: + uses: named-data/actions/.github/workflows/jenkins-script-ubuntu.yml@v1 + macOS: + uses: named-data/actions/.github/workflows/jenkins-script-macos.yml@v1 diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index fd27188..0333b7b 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -1,33 +1,10 @@ name: Docs on: push: - paths-ignore: - - '*.md' - - '.mailmap' workflow_dispatch: -permissions: - contents: read +permissions: {} jobs: - build: - runs-on: ${{ matrix.os }} - strategy: - fail-fast: false - matrix: - os: [macos-latest, ubuntu-latest] - env: - JOB_NAME: Docs - steps: - - name: Checkout - uses: actions/checkout@v3 - - name: Install dependencies - run: | - find .jenkins.d/ -type f -name '[1-9]*.sh' -exec chmod -x '{}' + - ./.jenkins - - name: Build documentation - run: | - pybindir=$(python3 -c 'import sysconfig; print(sysconfig.get_path("scripts", "posix_user"))') - export PATH="${pybindir}${PATH:+:}${PATH}" - ./waf --color=yes configure - ./waf --color=yes docs + html: + uses: named-data/actions/.github/workflows/docs-html.yml@v1 diff --git a/AUTHORS.md b/AUTHORS.md index 8a11400..6b7919c 100644 --- a/AUTHORS.md +++ b/AUTHORS.md @@ -2,7 +2,7 @@ The following lists maintainers, primary developers, and all much-appreciated contributors to ChronoSync in alphabetical order. The specific contributions of individual authors can be obtained from the git history of the [official ChronoSync repository](https://github.com/named-data/ChronoSync). -If you would like to become a contributor to the official repository, please follow the recommendations in . +If you would like to become a contributor to the official repository, please follow the recommendations in . * ***(Maintainer)*** Alexander Afanasyev * Chaoyi Bian diff --git a/README.md b/README.md index 5ada05c..e8074fb 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@ ![Language](https://img.shields.io/badge/C%2B%2B-17-blue) ![Latest version](https://img.shields.io/github/v/tag/named-data/ChronoSync?label=Latest%20version) -> DEPRECATION NOTICE: ChronoSync's design is outdated. We recommend using more recent sync protocols, such as [PSync](https://named-data.net/doc/PSync/current/) or [StateVectorSync](https://named-data.github.io/StateVectorSync/). +> DEPRECATION NOTICE: ChronoSync's design is outdated. We recommend using more recent sync protocols, such as [PSync](https://github.com/named-data/PSync) or [StateVectorSync](https://named-data.github.io/StateVectorSync/). In supporting many distributed applications, such as group text messaging, file sharing, and joint editing, a basic requirement is the efficient and robust synchronization of @@ -26,11 +26,11 @@ ChronoSync uses the [ndn-cxx](https://github.com/named-data/ndn-cxx) library. ### 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) ### Build -To build ChronoSync from the source: +To build ChronoSync from source: ./waf configure ./waf @@ -50,12 +50,11 @@ Please submit any bug reports or feature requests to the ## Contributing We greatly appreciate contributions to the ChronoSync 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 -ChronoSync is an open source project licensed under the GPL version 3. -See [`COPYING.md`](COPYING.md) for more information. +ChronoSync is free software distributed under the GNU General Public License version 3. +See [`COPYING.md`](COPYING.md) for details. diff --git a/docs/conf.py b/docs/conf.py index 4e2d02d..199e8d6 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -10,7 +10,7 @@ import sys # https://www.sphinx-doc.org/en/master/usage/configuration.html#project-information project = 'ChronoSync: A Synchronization Protocol for NDN' -copyright = 'Copyright © 2012-2022 Regents of the University of California.' +copyright = 'Copyright © 2012-2023 Regents of the University of California.' author = 'Named Data Networking Project' # The short X.Y version. diff --git a/docs/doxygen.conf.in b/docs/doxygen.conf.in index da86688..0cbb0c5 100644 --- a/docs/doxygen.conf.in +++ b/docs/doxygen.conf.in @@ -140,7 +140,7 @@ INLINE_INHERITED_MEMB = YES # shortest path that makes the file name unique will be used # The default value is: YES. -FULL_PATH_NAMES = NO +FULL_PATH_NAMES = YES # The STRIP_FROM_PATH tag can be used to strip a user-defined part of the path. # Stripping is only done if one of the specified strings matches the left-hand @@ -161,7 +161,7 @@ STRIP_FROM_PATH = # specify the list of include paths that are normally passed to the compiler # using the -I flag. -STRIP_FROM_INC_PATH = +STRIP_FROM_INC_PATH = .. # If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter (but # less readable) file names. This can be useful is your file systems doesn't @@ -437,7 +437,7 @@ EXTRACT_PACKAGE = NO # included in the documentation. # The default value is: NO. -EXTRACT_STATIC = YES +EXTRACT_STATIC = NO # If the EXTRACT_LOCAL_CLASSES tag is set to YES, classes (and structs) defined # locally in source files will be included in the documentation. If set to NO, @@ -445,7 +445,7 @@ EXTRACT_STATIC = YES # for Java sources. # The default value is: YES. -EXTRACT_LOCAL_CLASSES = YES +EXTRACT_LOCAL_CLASSES = NO # This flag is only useful for Objective-C code. If set to YES, local methods, # which are defined in the implementation section but not in the interface are @@ -1178,7 +1178,7 @@ HTML_COLORSTYLE_GAMMA = 91 # The default value is: NO. # This tag requires that the tag GENERATE_HTML is set to YES. -HTML_TIMESTAMP = 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