Enable timestamps in CI logs #5333
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# | |
# Distributed Linear Algebra with Future (DLAF) | |
# | |
# Copyright (c) 2018-2024, ETH Zurich | |
# All rights reserved. | |
# | |
# Please, refer to the LICENSE file in the root directory. | |
# SPDX-License-Identifier: BSD-3-Clause | |
# | |
name: Check format | |
on: | |
- pull_request | |
jobs: | |
check: | |
runs-on: ubuntu-24.04 | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/javascript-action@v1 | |
- name: Install tools | |
run: | | |
# Need non buggy version of clang-format-18 (See #1174). | |
wget -qO llvm.key https://apt.llvm.org/llvm-snapshot.gpg.key | |
echo "ce6eee4130298f79b0e0f09a89f93c1bc711cd68e7e3182d37c8e96c5227e2f0 llvm.key" > check.sha256 | |
shasum -c check.sha256 | |
cat llvm.key | sudo tee /etc/apt/trusted.gpg.d/apt.llvm.org.asc > /dev/null | |
echo "deb http://apt.llvm.org/noble/ llvm-toolchain-noble-18 main" | sudo tee /etc/apt/sources.list.d/llvm.list > /dev/null | |
sudo apt-get update | |
sudo apt-get install --no-install-recommends clang-format-18 python3 python3-pip | |
pip3 install --break-system-packages black==24.4.2 | |
pip3 install --break-system-packages cmakelang==0.6.13 | |
- name: Fetch master | |
run: git fetch --no-tags --depth=1 origin +refs/heads/master:refs/heads/master | |
# Fails if there are tabs in source files. | |
- name: Check formatting | |
run: ./.github/format.sh | |
- name: Check scripts formatting | |
if: always() | |
run: black --line-length 105 scripts/ | |
# Fails if there are differences. | |
- name: Formatting issues | |
if: always() | |
run: git diff --color --exit-code | |
- name: Check include guards | |
if: always() | |
run: | | |
find . test -type f '(' -name "*.h" -o -name "*.h.in" ')' \ | |
| xargs -I{} sh -c \ | |
"egrep -sq '^#pragma once' {} || echo {}" \ | |
> pragma-once.check | |
for filepath in `cat pragma-once.check`; do \ | |
echo "::error file=$filepath,line=1::missing include guard in $filepath"; \ | |
done | |
test ! -s pragma-once.check |