aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJustin M. Keyes <justinkz@gmail.com>2024-11-26 07:34:16 -0800
committerGitHub <noreply@github.com>2024-11-26 07:34:16 -0800
commit16008a64f6ab9309641f30b8a7c9a432f1649b9a (patch)
tree349e8a7678ba9f7579e25f3b7dd1386e344c267d
parentrefactor: remove implementation of util.path.dirname #3460 (diff)
downloadnvim-lspconfig-16008a64f6ab9309641f30b8a7c9a432f1649b9a.tar
nvim-lspconfig-16008a64f6ab9309641f30b8a7c9a432f1649b9a.tar.gz
nvim-lspconfig-16008a64f6ab9309641f30b8a7c9a432f1649b9a.tar.bz2
nvim-lspconfig-16008a64f6ab9309641f30b8a7c9a432f1649b9a.tar.lz
nvim-lspconfig-16008a64f6ab9309641f30b8a7c9a432f1649b9a.tar.xz
nvim-lspconfig-16008a64f6ab9309641f30b8a7c9a432f1649b9a.tar.zst
nvim-lspconfig-16008a64f6ab9309641f30b8a7c9a432f1649b9a.zip
ci: check for deprecated util functions #3462
-rw-r--r--.github/ci/run_sanitizer.sh12
-rw-r--r--.github/workflows/lint.yml12
-rw-r--r--.github/workflows/sanitizer.yml14
-rw-r--r--CONTRIBUTING.md2
-rw-r--r--lua/lspconfig/util.lua4
5 files changed, 24 insertions, 20 deletions
diff --git a/.github/ci/run_sanitizer.sh b/.github/ci/run_sanitizer.sh
index 8630de3f..1f148ba2 100644
--- a/.github/ci/run_sanitizer.sh
+++ b/.github/ci/run_sanitizer.sh
@@ -5,12 +5,20 @@ REF_BRANCH="$1"
PR_BRANCH="$2"
# checks for added lines that contain search pattern and prints them
-SEARCH_PATTERN="(path\.dirname|fn\.cwd)"
+SEARCH_PATTERN='(path\.dirname|fn\.cwd)'
if git diff --pickaxe-all -U0 -G "${SEARCH_PATTERN}" "${REF_BRANCH}" "${PR_BRANCH}" -- '*.lua' | grep -Ev '(configs|utils)\.lua$' | grep -E "^\+.*${SEARCH_PATTERN}" ; then
echo
echo 'String "dirname" found. There is a high risk that this might contradict the directive:'
- echo '"Do not add vim.fn.cwd or util.path.dirname in root_dir".'
+ echo '"Do not use vim.fn.cwd or util.path.dirname in root_dir".'
echo "see: https://github.com/neovim/nvim-lspconfig/blob/master/CONTRIBUTING.md#adding-a-server-to-lspconfig."
exit 1
fi
+
+SEARCH_PATTERN='(util\.path\.dirname)'
+
+if git diff --pickaxe-all -U0 -G "${SEARCH_PATTERN}" "${REF_BRANCH}" "${PR_BRANCH}" -- '*.lua' | grep -Ev '\.lua$' | grep -E "^\+.*${SEARCH_PATTERN}" ; then
+ echo
+ echo 'Do not use deprecated util functions: '"${SEARCH_PATTERN}"
+ exit 1
+fi
diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml
index 7ee1244d..def839e9 100644
--- a/.github/workflows/lint.yml
+++ b/.github/workflows/lint.yml
@@ -6,6 +6,18 @@ on:
- master
jobs:
+ deprecated-functions:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v4
+ with:
+ fetch-depth: 0
+ ref: ${{ github.event.pull_request.head.sha }}
+ - run: |
+ if ! bash .github/ci/run_sanitizer.sh ${{ github.event.pull_request.base.sha }} ${{ github.event.pull_request.head.sha }}; then
+ exit 1
+ fi
+
luacheck:
runs-on: ubuntu-latest
steps:
diff --git a/.github/workflows/sanitizer.yml b/.github/workflows/sanitizer.yml
deleted file mode 100644
index 89fd51e3..00000000
--- a/.github/workflows/sanitizer.yml
+++ /dev/null
@@ -1,14 +0,0 @@
-name: "Dirname Checker"
-on: [pull_request]
-jobs:
- disallowed-root-checker:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v4
- with:
- fetch-depth: 0
- ref: ${{ github.event.pull_request.head.sha }}
- - run: |
- if ! bash .github/ci/run_sanitizer.sh ${{ github.event.pull_request.base.sha }} ${{ github.event.pull_request.head.sha }}; then
- exit 1
- fi
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 212788a0..e18932cb 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -43,7 +43,7 @@ reading your `config` source code, so the less indirection in your code, the mor
* `root_dir`: function which returns the root of the project, used to decide if lspconfig should launch a new language server, or attach a previously launched server when you open a new buffer matching the filetype of the server.
* See `:help lspconfig-new`.
* See `vim.fs.root()`
- * Do not use `vim.fn.cwd` or `util.path.dirname`.
+ * Do not use `vim.fn.cwd` or `vim.fs.dirname`.
Additionally, these options are often useful:
diff --git a/lua/lspconfig/util.lua b/lua/lspconfig/util.lua
index dd6c57cf..041f56e6 100644
--- a/lua/lspconfig/util.lua
+++ b/lua/lspconfig/util.lua
@@ -151,9 +151,7 @@ M.path = (function()
end
end
- --- @generic T: string?
- --- @param path T
- --- @return T
+ ---@deprecated use `vim.fs.dirname` instead
local function dirname(path)
return vim.fs.dirname(path)
end