ci: type check the codebase using luacats and lua-typecheck-action #11
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
# copied from https://github.com/nvim-neorg/neorg/blob/1e63f84f04caed4b8831b8122c4ba2e7dbda389f/.github/workflows/typecheck.yml#L17 | |
name: lua_ls-typecheck | |
on: | |
pull_request: ~ | |
push: | |
branches: | |
- "*" | |
jobs: | |
build: | |
name: Type Check Code Base | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout Code | |
uses: actions/checkout@v4 | |
- name: Checkout dependency neodev # get neodev and neovim/runtime for builtin types | |
uses: actions/checkout@v4 | |
with: | |
repository: "folke/neodev.nvim" | |
path: "deps/neodev.nvim" | |
- name: Checkout dependency plenary | |
uses: actions/checkout@v4 | |
with: | |
repository: "nvim-lua/plenary.nvim" | |
path: "deps/plenary.nvim" | |
- name: Checkout neovim for type annotations | |
uses: actions/checkout@v3 | |
with: | |
repository: "neovim/neovim" | |
path: "deps/neovim" | |
- uses: leafo/gh-actions-lua@v9 # get luarocks dependencies for their types (eg `PathlibPath`) | |
with: | |
luaVersion: "5.1" | |
- uses: leafo/gh-actions-luarocks@v4 | |
- name: install dependencies | |
run: | | |
luarocks init | |
luarocks install --only-deps ./*.rockspec | |
- name: Typecheck the code base | |
uses: mrcjkb/[email protected] | |
with: | |
configpath: .github/workflows/.luarc.json | |
directories: | | |
lua |