diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 95560e36..642d0f93 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -27,11 +27,13 @@ jobs: docker run profanity ./ci-build.sh code-style: - runs-on: ubuntu-22.04 + runs-on: ubuntu-latest name: Check coding style continue-on-error: true + env: + GITHUB_WORKSPACE: ${{ runner.workspace }} steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 # if this check fails, you have to update the number of auto types known and the list of auto types in the check below - name: Check auto types are up-to-date run: | @@ -39,11 +41,34 @@ jobs: - name: Check auto types are initialized run: | grep -P 'auto_(char|gchar|gcharv|guchar|jid|sqlite|gfd|FILE)[\w *]*;$' -r src && exit -1 || true - - name: Run clang-format - uses: jidicula/clang-format-action@v4.11.0 - with: - clang-format-version: '16' - check-path: 'src' + + - name: Install clang-format + run: | + sudo apt-get update + sudo apt-get install -y clang-format + + - name: Run clang-format check + run: | + # Find all source files you care about + INCLUDE_REGEX='^.*\.((((c|C)(c|pp|xx|\+\+)?$)|((h|H)h?(pp|xx|\+\+)?$))|(ino|pde|proto|cu))$' + CHECK_PATH='src' + files=$(find "$CHECK_PATH" -name .git -prune -o -regextype posix-egrep -regex "$INCLUDE_REGEX" -print) + + # Run clang-format in dry-run mode and collect any improperly formatted files + failed=0 + for file in $files; do + output=$(clang-format --dry-run --Werror --style=file "$file" 2>&1) + status=$? + if [ $status -ne 0 ]; then + echo "❌ Failed on file: $file" + echo "$output" + echo "----------------------------------------" + failed=1 + fi + done + + # Exit with 1 if any formatting issues were found + exit $failed spell-check: runs-on: ubuntu-22.04 diff --git a/src/pgp/gpg.c b/src/pgp/gpg.c index 1ea2ef02..100f22f1 100644 --- a/src/pgp/gpg.c +++ b/src/pgp/gpg.c @@ -668,7 +668,7 @@ p_gpg_decrypt(const char* const cipher) } if (recipient->next) { - g_string_append(recipients_str, ", "); + g_string_append(recipients_str, ", "); } recipient = recipient->next;