diff --git a/.github/workflows/c-cpp.yml b/.github/workflows/c-cpp.yml index d27e42c..f0f2a0d 100644 --- a/.github/workflows/c-cpp.yml +++ b/.github/workflows/c-cpp.yml @@ -35,7 +35,7 @@ jobs: apk add git cmake gcc g++ make - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: submodules: true @@ -102,7 +102,7 @@ jobs: file p2pool - name: Archive binary - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: p2pool-alpine-static-${{ matrix.config.arch }} path: build/p2pool @@ -126,7 +126,7 @@ jobs: sudo apt install -y git build-essential cmake libuv1-dev libzmq3-dev libsodium-dev libpgm-dev libnorm-dev libgss-dev libcurl4-openssl-dev libidn2-0-dev ${{ matrix.config.c }} ${{ matrix.config.cpp }} - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: submodules: true @@ -157,7 +157,7 @@ jobs: ./p2pool_tests - name: Archive binary - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: p2pool-${{ matrix.config.os }} path: build/p2pool @@ -181,7 +181,7 @@ jobs: sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-12 100 --slave /usr/bin/g++ g++ /usr/bin/g++-12 --slave /usr/bin/gcov gcov /usr/bin/gcov-12 - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: submodules: true @@ -235,7 +235,7 @@ jobs: ./p2pool_tests - name: Archive binary - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: p2pool-ubuntu-static-libs path: build/p2pool @@ -258,7 +258,7 @@ jobs: sudo apt install -y git build-essential cmake gcc-aarch64-linux-gnu g++-aarch64-linux-gnu binutils-aarch64-linux-gnu qemu-user - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: submodules: true @@ -312,7 +312,7 @@ jobs: qemu-aarch64 -L /usr/aarch64-linux-gnu ./p2pool_tests - name: Archive binary - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: p2pool-${{ matrix.config.os }}-aarch64 path: build/p2pool @@ -334,7 +334,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: submodules: recursive @@ -394,7 +394,7 @@ jobs: ./p2pool_tests.exe - name: Archive binary - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: p2pool-msys2-${{ matrix.config.c }}.exe path: build/p2pool.exe @@ -413,7 +413,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: submodules: recursive @@ -458,7 +458,7 @@ jobs: ./p2pool_tests.exe - name: Archive binary - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: p2pool-vs-${{ matrix.config.os }}-randomx-${{ matrix.config.rx }}-upnp-${{ matrix.config.upnp }}.exe path: build/Release/p2pool.exe @@ -470,7 +470,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: submodules: recursive @@ -524,7 +524,7 @@ jobs: ./p2pool_tests - name: Archive binary - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: p2pool-macos-11 path: build/p2pool @@ -536,7 +536,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: submodules: recursive @@ -571,7 +571,7 @@ jobs: make -j3 - name: Archive binary - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: p2pool-macos-11-aarch64 path: build/p2pool @@ -591,7 +591,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: submodules: recursive @@ -634,7 +634,7 @@ jobs: ./p2pool_tests - name: Archive binary - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: p2pool-${{ matrix.os.name }}-${{ matrix.os.version }} path: build/p2pool @@ -654,7 +654,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: submodules: recursive @@ -678,7 +678,7 @@ jobs: ./p2pool_tests - name: Archive binary - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: p2pool-${{ matrix.os.name }}-${{ matrix.os.version }} path: build/p2pool diff --git a/.github/workflows/clang-tidy.yml b/.github/workflows/clang-tidy.yml index c9b86c7..ff2fe93 100644 --- a/.github/workflows/clang-tidy.yml +++ b/.github/workflows/clang-tidy.yml @@ -23,12 +23,12 @@ jobs: run: | wget https://apt.llvm.org/llvm.sh chmod +x llvm.sh - sudo ./llvm.sh 17 - sudo apt-get install -y clang-tidy-17 - clang-tidy-17 --verify-config + sudo ./llvm.sh 18 + sudo apt-get install -y clang-tidy-18 + clang-tidy-18 --verify-config - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: submodules: true @@ -36,9 +36,9 @@ jobs: run: | mkdir build cd build - cmake .. -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DCMAKE_C_COMPILER=clang-17 -DCMAKE_CXX_COMPILER=clang++-17 -DDEV_CLANG_TIDY=ON + cmake .. -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DCMAKE_C_COMPILER=clang-18 -DCMAKE_CXX_COMPILER=clang++-18 -DDEV_CLANG_TIDY=ON - name: Run clang-tidy run: | cd src - clang-tidy-17 *.cpp -p ../build -checks=-clang-diagnostic-undefined-internal -warnings-as-errors=* -header-filter=^[^\.] + clang-tidy-18 *.cpp -p ../build -checks=-clang-diagnostic-undefined-internal,-clang-diagnostic-nan-infinity-disabled -warnings-as-errors=* -header-filter=^[^\.] diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml index b005be3..45e9e97 100644 --- a/.github/workflows/codeql-analysis.yml +++ b/.github/workflows/codeql-analysis.yml @@ -47,13 +47,13 @@ jobs: sudo apt update && sudo apt install git build-essential cmake libuv1-dev libzmq3-dev libsodium-dev libpgm-dev libnorm-dev libgss-dev libcurl4-openssl-dev libidn2-0-dev - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: submodules: true # Initializes the CodeQL tools for scanning. - name: Initialize CodeQL - uses: github/codeql-action/init@v2 + uses: github/codeql-action/init@v3 with: languages: ${{ matrix.language }} # If you wish to specify custom queries, you can do so here or in a config file. @@ -64,7 +64,7 @@ jobs: # Autobuild attempts to build any compiled languages (C/C++, C#, or Java). # If this step fails, then you should remove it and run the build manually (see below) - name: Autobuild - uses: github/codeql-action/autobuild@v2 + uses: github/codeql-action/autobuild@v3 # ℹī¸ Command-line programs to run using the OS shell. # 📚 https://git.io/JvXDl @@ -78,4 +78,4 @@ jobs: # make release - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@v2 + uses: github/codeql-action/analyze@v3 diff --git a/.github/workflows/cppcheck.yml b/.github/workflows/cppcheck.yml index 52eb424..56c392c 100644 --- a/.github/workflows/cppcheck.yml +++ b/.github/workflows/cppcheck.yml @@ -25,12 +25,12 @@ jobs: sudo apt install -y libuv1-dev libzmq3-dev libcurl4-openssl-dev - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: submodules: true - name: Checkout cppcheck - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: repository: danmar/cppcheck path: cppcheck-main @@ -53,7 +53,7 @@ jobs: ./run.sh - name: Archive full error list - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: errors_full-linux path: cppcheck/errors_full.txt @@ -65,12 +65,12 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: submodules: true - name: Checkout cppcheck - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: repository: danmar/cppcheck path: cppcheck-main @@ -95,7 +95,7 @@ jobs: ./run.cmd - name: Archive full error list - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: errors_full-windows path: cppcheck/errors_full.txt diff --git a/.github/workflows/msvc-analysis.yml b/.github/workflows/msvc-analysis.yml index d3b2d7a..1ecabe7 100644 --- a/.github/workflows/msvc-analysis.yml +++ b/.github/workflows/msvc-analysis.yml @@ -33,7 +33,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: submodules: true @@ -45,7 +45,7 @@ jobs: # run: cmake --build ${{ env.build }} - name: Initialize MSVC Code Analysis - uses: microsoft/msvc-code-analysis-action@24c285ab36952c9e9182f4b78dfafbac38a7e5ee + uses: microsoft/msvc-code-analysis-action@96315324a485db21449515180214ecb78c16a1c5 # Provide a unique ID to access the sarif output path id: run-analysis with: @@ -56,13 +56,13 @@ jobs: # Upload SARIF file to GitHub Code Scanning Alerts - name: Upload SARIF to GitHub - uses: github/codeql-action/upload-sarif@v2 + uses: github/codeql-action/upload-sarif@v3 with: sarif_file: ${{ steps.run-analysis.outputs.sarif }} # Upload SARIF file as an Artifact to download and view - name: Upload SARIF as an Artifact - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: sarif-file path: ${{ steps.run-analysis.outputs.sarif }} diff --git a/.github/workflows/source-snapshot.yml b/.github/workflows/source-snapshot.yml index dabb933..fc8e5ae 100644 --- a/.github/workflows/source-snapshot.yml +++ b/.github/workflows/source-snapshot.yml @@ -8,7 +8,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: submodules: true @@ -18,7 +18,7 @@ jobs: XZ_OPT=-e9 tar --exclude=".git" --exclude="build" -f build/p2pool_source.tar.xz -c ../p2pool --xz - name: Archive source code - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: p2pool_source.tar.xz path: build/p2pool_source.tar.xz diff --git a/.github/workflows/test-sync.yml b/.github/workflows/test-sync.yml index 44fd3f7..f9bd9ed 100644 --- a/.github/workflows/test-sync.yml +++ b/.github/workflows/test-sync.yml @@ -26,7 +26,7 @@ jobs: sudo apt install -y git build-essential cmake gcc-12 g++-12 - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: submodules: true @@ -75,7 +75,7 @@ jobs: grep 'Synchronization finished successfully' p2pool.log - name: Archive p2pool.log - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: p2pool_ubuntu_data_tsan path: | @@ -111,7 +111,7 @@ jobs: cp -r lib /tmp/libcxx_msan - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: submodules: true @@ -160,7 +160,7 @@ jobs: grep 'Synchronization finished successfully' p2pool.log - name: Archive p2pool.log - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: p2pool_ubuntu_data_msan path: | @@ -180,7 +180,7 @@ jobs: sudo apt install -y git build-essential cmake libuv1-dev libzmq3-dev libsodium-dev libpgm-dev libnorm-dev libgss-dev libcurl4-openssl-dev libidn2-0-dev gcc-12 g++-12 - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: submodules: true @@ -206,7 +206,7 @@ jobs: grep 'Synchronization finished successfully' p2pool.log - name: Archive p2pool.log - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: p2pool_ubuntu_data_ubsan path: | @@ -226,7 +226,7 @@ jobs: sudo apt install -y git build-essential cmake libuv1-dev libzmq3-dev libsodium-dev libpgm-dev libnorm-dev libgss-dev libcurl4-openssl-dev libidn2-0-dev gcc-12 g++-12 - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: submodules: true @@ -252,7 +252,7 @@ jobs: grep 'Synchronization finished successfully' p2pool.log - name: Archive p2pool.log - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: p2pool_ubuntu_data_asan path: | @@ -266,7 +266,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: submodules: recursive @@ -320,7 +320,7 @@ jobs: grep 'Synchronization finished successfully' p2pool.log - name: Archive p2pool.log - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: p2pool_macos_data path: | @@ -334,7 +334,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: submodules: recursive @@ -365,7 +365,7 @@ jobs: findstr /C:"Synchronization finished successfully" p2pool.log - name: Archive p2pool.log - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: p2pool_windows_data_debug_asan path: | @@ -379,7 +379,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: submodules: recursive @@ -408,7 +408,7 @@ jobs: findstr /C:"Synchronization finished successfully" p2pool.log - name: Archive p2pool.log - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: p2pool_windows_data_leaks path: |