dense-analysis / dense-analysis/ale

Update tools to consider both directories and files when searching for .git

Open
#5,039 0 comments 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
Vim Script
Stars
14k
Forks
1.5k
Avg merge
17h 49m
Merged PRs (30d)
1

Description

As was discovered in #5023 a pattern exists to look for `.git` directories when determining project roots, without also appropriately look for `.git` files. This may lead to tools working with the wrong version of files for any project within a git [worktree][].

I believe the list of files where this happens are:

| File | Type | Pull request |
|-----------------------------------------|-------------|--------------|
| autoload/ale/c.vim | Provide A-C | |
| autoload/ale/lua.vim | Provide D | |
| autoload/ale/handlers/biome.vim | Provide E | |
| autoload/ale/handlers/ccls.vim | Provide F | |
| autoload/ale/handlers/deno.vim | Provide G | |
| autoload/ale/handlers/hdl_checker.vim | Provide H | |
| ale_linters/ansible/language_server.vim | Stand-alone | |
| ale_linters/c/cc.vim | Use C | |
| ale_linters/c/ccls.vim | Use F | |
| ale_linters/c/clangd.vim | Use A | |
| ale_linters/c/clangtidy.vim | Use C | |
| ale_linters/c/cquery.vim | Use A | |
| ale_linters/cpp/cc.vim | Use C | |
| ale_linters/cpp/ccls.vim | Use F | |
| ale_linters/cpp/clangd.vim | Use A | |
| ale_linters/cpp/clangtidy.vim | Use C | |
| ale_linters/cpp/cquery.vim | Use A | |
| ale_linters/css/vscodecss.vim | Stand-alone | |
| ale_linters/cuda/clangd.vim | Use A | |
| ale_linters/cuda/nvcc.vim | Use B | |
| ale_linters/glsl/glslls.vim | Use A | |
| ale_linters/go/bingo.vim | Stand-alone | |
| ale_linters/go/gopls.vim | Stand-alone | |
| ale_linters/html/vscodehtml.vim | Stand-alone | |
| ale_linters/ispc/ispc.vim | Use B | |
| ale_linters/javascript/biome.vim | Use E | |
| ale_linters/javascript/deno.vim | Use G | |
| ale_linters/json/biome.vim | Use E | |
| ale_linters/json/vscodejson.vim | Stand-alone | |
| ale_linters/jsonc/biome.vim | Use E | |
| ale_linters/lua/lua_language_server.vim | Use D | |
| ale_linters/markdown/marksman.vim | Stand-alone | |
| ale_linters/nim/nimlsp.vim | Stand-alone | |
| ale_linters/perl/languageserver.vim | Stand-alone | #5038 |
| ale_linters/objc/ccls.vim | Use F | |
| ale_linters/objc/clangd.vim | Use A | |
| ale_linters/objcpp/clangd.vim | Use A | |
| ale_linters/php/intelephense.vim | Stand-alone | |
| ale_linters/php/langserver.vim | Stand-alone | |
| ale_linters/php/phpactor.vim | Stand-alone | |
| ale_linters/php/psalm.vim | Stand-alone | |
| ale_linters/php/tlint.vim | Stand-alone | |
| ale_linters/sh/language_server.vim | Stand-alone | |
| ale_linters/tex/texlab.vim | Stand-alone | |
| ale_linters/toml/tombi.vim | Stand-alone | |
| ale_linters/typescript/biome.vim | Use E | |
| ale_linters/typescript/deno.vim | Use G | |
| ale_linters/verilog/hdl_checker.vim | Use H | |
| ale_linters/vhdl/hdl_checker.vim | Use H | |
| ale_linters/vim/vimls.vim | Stand-alone | |
| ale_linters/vue/volar.vim | Stand-alone | |
| ale_linters/yara/yls.vim | Stand-alone | |

I'll try to keep the above list updated as they get addressed. Please mention this issue if pushing a PR for some the file(s).

Documentation should be updated for at least the ones of these which mentions searching for a `.git` directory. It might be nice to improve documentation also for the ones which currently fails to mention it.

[worktree]: https://git-scm.com/docs/git-worktree

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.