Skip to content

Adds a file to hold a map from class/method to headerfile (#58054) #84

Adds a file to hold a map from class/method to headerfile (#58054)

Adds a file to hold a map from class/method to headerfile (#58054) #84

Workflow file for this run

name: 🧹 Code Layout
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
on:
push:
branches:
- master
- release-**
- queued_ltr_backports
pull_request:
permissions:
contents: read
env:
DOXYGEN_VERSION: 1.9.8
jobs:
documentation_checks:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up Python 3.10
uses: actions/setup-python@v5
with:
python-version: '3.10'
- name: Install requirements
run: |
wget https://www.doxygen.nl/files/doxygen-${DOXYGEN_VERSION}.linux.bin.tar.gz
tar -xzf doxygen-${DOXYGEN_VERSION}.linux.bin.tar.gz
python -m pip install --upgrade pip
pip install autopep8 nose2 mock termcolor
- name: Make
run: |
mkdir build
cd build
cmake -DUSE_CCACHE=OFF -DWITH_CORE=OFF -DWITH_APIDOC=ON -DWITH_ASTYLE=ON -DENABLE_TESTS=ON \
-DWITH_DOT=NO -DWERROR=ON -DDOXYGEN_EXECUTABLE=../doxygen-${DOXYGEN_VERSION}/bin/doxygen ..
make -j3 apidoc
- name: Run Tests
run: cd build && ctest -V -R PyQgsDocCoverage
license_check:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install Requirements
run: |
sudo apt install -y \
cpanminus
cpanm --notest App::Licensecheck
- name: Run License Check
run: ./tests/code_layout/test_licenses.sh
shell_check:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install Requirements
run: |
sudo apt install -y \
shellcheck
- name: Run Shellcheck
run: ./tests/code_layout/test_shellcheck.sh
banned_keywords_check:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Run Banned Keywords Test
run: ./tests/code_layout/test_banned_keywords.sh
class_name_check:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Run class naming conventions check
run: ./tests/code_layout/test_class_names.sh
def_window_title_check:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Def Window Title Test
run: ./tests/code_layout/test_defwindowtitle.sh
qgsscrollarea_check:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Run QgsScrollArea check
run: ./tests/code_layout/test_qgsscrollarea.sh
qvariant_no_brace_init:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: No brace initialization of QVariant variables
run: ./tests/code_layout/test_qvariant_no_brace_init.sh
qt_module_wide_imports:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: No module-wide imports of Qt modules
run: ./tests/code_layout/test_qt_imports.sh
doxygen_layout_check:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install Requirements
run: |
sudo apt install -y \
expect \
silversearcher-ag
- name: Doxygen Layout Test
run: ./tests/code_layout/test_doxygen_layout.sh
indentation_check:
if: github.event_name == 'pull_request'
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 100
- name: Install Requirements
run: |
sudo apt install -y \
astyle \
python3-autopep8 \
flip
- name: Indentation Test
run: ./scripts/verify_indentation.sh HEAD~1
spell_check:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install Requirements
run: |
sudo apt install -y \
expect \
silversearcher-ag
- name: Retrieve changed files
uses: tj-actions/changed-files@v44
id: changed_files
with:
separator: " "
- name: Spell Test
if: steps.changed_files.outputs.any_changed == 'true'
env:
ALL_CHANGED_FILES: ${{ steps.changed_files.outputs.all_changed_files }}
run: echo "$ALL_CHANGED_FILES" | ./scripts/spell_check/check_spelling.sh
sip_check:
runs-on: ubuntu-latest
steps:
- name: Set up Python 3.7
uses: actions/setup-python@v5
with:
python-version: 3.7
- name: Install Requirements
run: |
sudo apt install -y \
cpanminus \
libyaml-tiny-perl \
libio-socket-ssl-perl \
libhttp-date-perl \
libgetopt-long-descriptive-perl \
libmoo-perl \
libnamespace-clean-perl \
libpath-tiny-perl \
libpod-constants-perl \
libscalar-list-utils-perl \
libsort-key-perl \
libstrictures-perl \
libstring-escape-perl \
libtry-tiny-perl \
expect
python -m pip install --upgrade pip
pip install autopep8 nose2 mock termcolor
- name: Checkout
uses: actions/checkout@v4
- name: Sip Checks
run: ./tests/code_layout/sipify/test_sipify.sh
- name: Sip Include Test
run: ./tests/code_layout/sipify/test_sip_include.sh
- name: Sip Files Up To Date
run: ./tests/code_layout/sipify/test_sipfiles.sh
cppcheck:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install Requirements
run: |
sudo apt install -y cppcheck
- name: Run cppcheck test
run: ./scripts/cppcheck.sh