Linting blocks vim for multiple seconds and keeps a lock on the working dir
还没有人认领这个 Issue。
评估
- 难度
- 3/5
- 预计耗时
- 1-2 天
- 新手友好度
- 45/100
- Issue 类型
- 缺陷
- 描述清晰度
- 基本清楚
- 活跃度
- 停滞
- 技术栈
- vim
调研方向
Start by tracing how the Syntastic cargo checker invokes Cargo from rust.vim; the report identifies the checker as cargo and says linting blocks Vim while holding the build directory lock. Check the lint invocation and any related tests for synchronous process handling. Done means linting no longer freezes Vim or blocks other Cargo commands while it runs.
由索引模型根据 Issue 内容生成。
描述
Hi, when i run a syntastic lint while this plugin is installed, vim gets blocked for multiple seconds.
Apparently i am unable to run any other cargo commands while the lint is going on aswell since this plugin seems to lock the directory.
Output from other cargo commands while linting
Blocking waiting for file lock on build directory
- rust.vim version: Vim Plug and rust.vim@4aa69b84c8a58fcec6b6dad6fe244b916b1cf830
Steps to reproduce:
- Use Vim Plug, Syntastic and rust.vim together
- Open any rust project
- Run a syntastic lint
Expected vs. actual behavior:
rust.vim shouldnt lock my working directory and shouldnt freeze vim.
it should run asynchronously in the background
RustInfo
rust.vim Global Variables:
let g:ftplugin_rust_source_path = v:null
let g:loaded_syntastic_rust_cargo_checker = 1
let g:loaded_syntastic_rust_filetype = v:null
let g:loaded_syntastic_rust_rustc_checker = 1
let g:rust_bang_comment_leader = v:null
let g:rust_cargo_avoid_whole_workspace = v:null
let g:rust_clip_command = v:null
let g:rust_conceal = v:null
let g:rust_conceal_mod_path = v:null
let g:rust_conceal_pub = v:null
let g:rust_conceal_mod_path = v:null
let g:rust_conceal_pub = v:null
let g:rust_fold = v:null
let g:rust_last_args = v:null
let b:rust_last_args = []
let g:rust_last_rustc_args = v:null
let b:rust_last_rustc_args = []
let g:rust_original_delimitMate_excluded_regions = v:null
let g:rust_playpen_url = v:null
let g:rust_prev_delimitMate_quotes = v:null
let g:rust_recent_nearest_cargo_tol = v:null
let g:rust_recent_root_cargo_toml = v:null
let b:rust_recent_root_cargo_toml = 'Cargo.toml'
let g:rust_recommended_style = v:null
let g:rust_set_conceallevel = v:null
let g:rust_set_conceallevel=1 = v:null
let g:rust_set_foldmethod = v:null
let g:rust_set_foldmethod=1 = v:null
let g:rust_shortener_url = v:null
let g:rustc_makeprg_no_percent = v:null
let g:rustc_path = v:null
let g:rustfmt_autosave = 1
let g:rustfmt_autosave_if_config_present = v:null
let g:rustfmt_command = 'rustfmt'
let g:rustfmt_emit_files = 1
let g:rustfmt_fail_silently = 0
let g:rustfmt_options = ''
let g:syntastic_extra_filetypes = ['rust']
let g:syntastic_rust_cargo_fname = ''
rustfmt 1.4.37-nightly (003d8d3 2021-10-04)
rustc 1.57.0-nightly (003d8d3f5 2021-10-04)
cargo 1.57.0-nightly (d56b42c54 2021-09-27)
NVIM v0.6.1
Build type: Release
LuaJIT 2.1.0-beta3
Übersetzt von nixbld
Features: +acl +iconv +tui
See ":help feature-compile"
System-vimrc-Datei: "$VIM/sysinit.vim"
Voreinstellung für $VIM: "/nix/store/fg64f7rll0i3gk8ay4q2mca1vjk8klvc-neovim-unwrapped-0.6.1/share/nvim"
Run :checkhealth for more info
----
Info from Syntastic:
Syntastic version: 3.10.0-32 (Vim 800, Neovim, Linux)
Info for filetype: rust
Global mode: active
Filetype rust is active
The current file will be checked automatically
Available checkers: cargo rustc
Currently enabled checker: cargo
- 主要语言
- Vim Script
- 星标
- 4.2k
- 派生
- 323
- PR 合并指标
- 30 天内没有已合并 PR
环境准备
这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
rust-lang/rust.vim 的其他 Issue
-
难度 1/5 1-3 小时 新手友好度 76/100
-
It's Dead, Jim!未关闭
难度 5/5 一周以上 新手友好度 15/100
-
Remove hard coded edition fallback可能已有人在做 @alerque 于 230 天前认领。 未关闭
难度 1/5 1 小时以内 新手友好度 35/100
-
难度 1/5 1 小时以内 新手友好度 55/100
-
难度 3/5 1-2 天 新手友好度 45/100
查看 rust-lang/rust.vim 的全部 Issue
相似的 Issue
-
bug
难度 2/5 1-3 小时 新手友好度 78/100
rohit746/pdf-view.nvim#109 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 78/100
daeh/zotero-markdb-connect#187 ·
-
难度 2/5 1-3 小时 新手友好度 83/100
IngvarConsulting/unica#2814 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 84/100
mglaman/phpstan-drupal#1078 ·
维护者通常 1 天内回复
-
[Bug]: Python mod.Box[T] annotation gets a false generic_arg edge that replaces the parameter_type one ('is' on tree-sitter nodes)可能已有人在做 @rohit-jsfreaky 今天认领。 未关闭
难度 2/5 1-3 小时 新手友好度 88/100
Graphify-Labs/graphify#5110 · 1 条评论 ·
维护者通常 2 天内回复