mirror of
https://github.com/zed-industries/zed.git
synced 2024-11-07 20:39:04 +03:00
Clarify /docs
error message when target/doc
does not exist (#14364)
This PR improves the error message shown by the `/docs` slash command when indexing fails due to the absence of `target/doc`. We now distinguish between the overall `target/doc` directory missing and an individual crate directory missing beneath it. Release Notes: - N/A
This commit is contained in:
parent
ca80343486
commit
85d77a3eec
@ -60,11 +60,18 @@ impl IndexedDocsProvider for LocalRustdocProvider {
|
||||
let crate_name = crate_name.clone();
|
||||
let item = item.cloned();
|
||||
async move {
|
||||
let mut local_cargo_doc_path = cargo_workspace_root.join("target/doc");
|
||||
local_cargo_doc_path.push(crate_name.as_ref());
|
||||
let target_doc_path = cargo_workspace_root.join("target/doc");
|
||||
let mut local_cargo_doc_path = target_doc_path.join(crate_name.as_ref());
|
||||
|
||||
if !fs.is_dir(&local_cargo_doc_path).await {
|
||||
bail!("docs directory for '{crate_name}' does not exist. run `cargo doc`");
|
||||
let cargo_doc_exists_at_all = fs.is_dir(&target_doc_path).await;
|
||||
if cargo_doc_exists_at_all {
|
||||
bail!(
|
||||
"no docs directory for '{crate_name}'. if this is a valid crate name, try running `cargo doc`"
|
||||
);
|
||||
} else {
|
||||
bail!("no cargo doc directory. run `cargo doc`");
|
||||
}
|
||||
}
|
||||
|
||||
if let Some(item) = item {
|
||||
|
Loading…
Reference in New Issue
Block a user