diff options
author | James McCoy <jamessan@jamessan.com> | 2022-08-14 19:20:06 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-08-14 19:20:06 -0400 |
commit | 36acb803c673baa7969244d64bd5e319b7bbc675 (patch) | |
tree | 1c647ef1ea762429ba34516f78093a41543fa960 | |
parent | d3569e83379dc34ea26b7bc7265c9a679473f1fe (diff) | |
parent | 0cd39c2f50f19df3ab8d176acf3a4b0b70e61412 (diff) | |
download | rneovim-36acb803c673baa7969244d64bd5e319b7bbc675.tar.gz rneovim-36acb803c673baa7969244d64bd5e319b7bbc675.tar.bz2 rneovim-36acb803c673baa7969244d64bd5e319b7bbc675.zip |
Merge pull request #19772 from lewis6991/uncrust_suggest
ci(lint): various improvements
-rw-r--r-- | .github/workflows/ci.yml | 104 |
1 files changed, 85 insertions, 19 deletions
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 74940c762f..e22d99067a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -18,11 +18,6 @@ concurrency: jobs: lint: - # This job tests two things: it lints the code but also builds neovim using - # system dependencies instead of bundled dependencies. This is to make sure - # we are able to build neovim without pigeonholing ourselves into specifics - # of the bundled dependencies. - if: (github.event_name == 'pull_request' && github.base_ref == 'master') || (github.event_name == 'push' && github.ref == 'refs/heads/master') runs-on: ubuntu-20.04 timeout-minutes: 10 @@ -65,7 +60,6 @@ jobs: ninja-build \ pkg-config - - name: Cache uncrustify id: cache-uncrustify uses: actions/cache@v3 @@ -101,13 +95,6 @@ jobs: - name: Build third-party deps run: ./ci/before_script.sh - - name: Build nvim - run: ./ci/run_tests.sh build_nvim - - - if: "!cancelled()" - name: lintcfull - run: make lintcfull - - if: "!cancelled()" name: lintstylua uses: JohnnyMorganz/stylua-action@1.0.0 @@ -116,12 +103,6 @@ jobs: args: --check runtime/ - if: "!cancelled()" - name: uncrustify - run: | - ${{ env.CACHE_UNCRUSTIFY }} -c ./src/uncrustify.cfg -q --replace --no-backup $(find ./src/nvim -name "*.[ch]") - git diff --color --exit-code - - - if: "!cancelled()" name: lintlua run: make lintlua @@ -134,6 +115,91 @@ jobs: run: make lintsh - if: "!cancelled()" + name: uncrustify + run: | + ${{ env.CACHE_UNCRUSTIFY }} -c ./src/uncrustify.cfg -q --replace --no-backup $(find ./src/nvim -name "*.[ch]") + + - if: "!cancelled()" + name: suggester / uncrustify + uses: reviewdog/action-suggester@v1 + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + tool_name: uncrustify + cleanup: false + + - if: "!cancelled()" + name: check uncrustify + run: | + git diff --color --exit-code + + - name: Cache dependencies + run: ./ci/before_cache.sh + + lintc: + # This job tests two things: it lints the code but also builds neovim using + # system dependencies instead of bundled dependencies. This is to make sure + # we are able to build neovim without pigeonholing ourselves into specifics + # of the bundled dependencies. + + if: (github.event_name == 'pull_request' && github.base_ref == 'master') || (github.event_name == 'push' && github.ref == 'refs/heads/master') + runs-on: ubuntu-20.04 + timeout-minutes: 10 + env: + CC: gcc + steps: + - uses: actions/checkout@v3 + + - name: Setup common environment variables + run: ./.github/workflows/env.sh lint + + - name: Install apt packages + run: | + sudo add-apt-repository ppa:neovim-ppa/stable + sudo apt-get update + sudo apt-get install -y \ + autoconf \ + automake \ + build-essential \ + cmake \ + gettext \ + libluajit-5.1-dev \ + libmsgpack-dev \ + libtermkey-dev \ + libtool-bin \ + libtree-sitter-dev \ + libunibilium-dev \ + libuv1-dev \ + libvterm-dev \ + locales \ + lua-busted \ + lua-check \ + lua-filesystem \ + lua-inspect \ + lua-lpeg \ + lua-luv-dev \ + lua-nvim \ + luajit \ + ninja-build \ + pkg-config + + - name: Cache artifacts + uses: actions/cache@v3 + with: + path: | + ${{ env.CACHE_NVIM_DEPS_DIR }} + key: lint-${{ hashFiles('cmake/*', '**/CMakeLists.txt', '!cmake.deps/**CMakeLists.txt') }}-${{ github.base_ref }} + + - name: Build third-party deps + run: ./ci/before_script.sh + + - name: Build nvim + run: ./ci/run_tests.sh build_nvim + + - if: "!cancelled()" + name: lintc + run: make lintc + + - if: "!cancelled()" name: check-single-includes run: make check-single-includes |