mirror of
https://github.com/rust-lang/rust-analyzer
synced 2024-12-25 04:23:25 +00:00
Rename ra_flycheck -> flycheck
This commit is contained in:
parent
5a184fe855
commit
0ec5d4f55c
8 changed files with 31 additions and 30 deletions
26
Cargo.lock
generated
26
Cargo.lock
generated
|
@ -340,6 +340,18 @@ version = "0.2.0"
|
|||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "37ab347416e802de484e4d03c7316c48f1ecb56574dfd4a46a80f173ce1de04d"
|
||||
|
||||
[[package]]
|
||||
name = "flycheck"
|
||||
version = "0.1.0"
|
||||
dependencies = [
|
||||
"cargo_metadata",
|
||||
"crossbeam-channel",
|
||||
"jod-thread",
|
||||
"log",
|
||||
"ra_toolchain",
|
||||
"serde_json",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "fnv"
|
||||
version = "1.0.7"
|
||||
|
@ -959,18 +971,6 @@ dependencies = [
|
|||
"vfs",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "ra_flycheck"
|
||||
version = "0.1.0"
|
||||
dependencies = [
|
||||
"cargo_metadata",
|
||||
"crossbeam-channel",
|
||||
"jod-thread",
|
||||
"log",
|
||||
"ra_toolchain",
|
||||
"serde_json",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "ra_fmt"
|
||||
version = "0.1.0"
|
||||
|
@ -1373,6 +1373,7 @@ dependencies = [
|
|||
"anyhow",
|
||||
"crossbeam-channel",
|
||||
"env_logger",
|
||||
"flycheck",
|
||||
"globset",
|
||||
"insta",
|
||||
"itertools",
|
||||
|
@ -1384,7 +1385,6 @@ dependencies = [
|
|||
"pico-args",
|
||||
"ra_cfg",
|
||||
"ra_db",
|
||||
"ra_flycheck",
|
||||
"ra_hir",
|
||||
"ra_hir_def",
|
||||
"ra_hir_ty",
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
[package]
|
||||
edition = "2018"
|
||||
name = "ra_flycheck"
|
||||
name = "flycheck"
|
||||
version = "0.1.0"
|
||||
authors = ["rust-analyzer developers"]
|
||||
|
|
@ -32,7 +32,7 @@ threadpool = "1.7.1"
|
|||
stdx = { path = "../stdx" }
|
||||
|
||||
lsp-server = "0.3.3"
|
||||
ra_flycheck = { path = "../ra_flycheck" }
|
||||
flycheck = { path = "../flycheck" }
|
||||
ra_ide = { path = "../ra_ide" }
|
||||
ra_prof = { path = "../ra_prof" }
|
||||
ra_project_model = { path = "../ra_project_model" }
|
||||
|
|
|
@ -10,9 +10,9 @@
|
|||
use std::{ffi::OsString, path::PathBuf};
|
||||
|
||||
use crate::diagnostics::DiagnosticsConfig;
|
||||
use flycheck::FlycheckConfig;
|
||||
use lsp_types::ClientCapabilities;
|
||||
use ra_db::AbsPathBuf;
|
||||
use ra_flycheck::FlycheckConfig;
|
||||
use ra_ide::{AssistConfig, CompletionConfig, HoverConfig, InlayHintsConfig};
|
||||
use ra_project_model::{CargoConfig, ProjectJson, ProjectJsonData, ProjectManifest};
|
||||
use serde::Deserialize;
|
||||
|
|
|
@ -2,20 +2,21 @@
|
|||
//! `cargo check` json format to the LSP diagnostic format.
|
||||
use std::{collections::HashMap, path::Path};
|
||||
|
||||
use flycheck::{Applicability, DiagnosticLevel, DiagnosticSpan, DiagnosticSpanMacroExpansion};
|
||||
use lsp_types::{
|
||||
Diagnostic, DiagnosticRelatedInformation, DiagnosticSeverity, DiagnosticTag, Location,
|
||||
NumberOrString, Position, Range, TextEdit, Url,
|
||||
};
|
||||
use ra_flycheck::{Applicability, DiagnosticLevel, DiagnosticSpan, DiagnosticSpanMacroExpansion};
|
||||
use stdx::format_to;
|
||||
|
||||
use super::DiagnosticsConfig;
|
||||
use crate::{lsp_ext, to_proto::url_from_abs_path};
|
||||
|
||||
use super::DiagnosticsConfig;
|
||||
|
||||
/// Determines the LSP severity from a diagnostic
|
||||
fn map_diagnostic_to_severity(
|
||||
config: &DiagnosticsConfig,
|
||||
val: &ra_flycheck::Diagnostic,
|
||||
val: &flycheck::Diagnostic,
|
||||
) -> Option<DiagnosticSeverity> {
|
||||
let res = match val.level {
|
||||
DiagnosticLevel::Ice => DiagnosticSeverity::Error,
|
||||
|
@ -95,7 +96,7 @@ fn map_secondary_span_to_related(
|
|||
}
|
||||
|
||||
/// Determines if diagnostic is related to unused code
|
||||
fn is_unused_or_unnecessary(rd: &ra_flycheck::Diagnostic) -> bool {
|
||||
fn is_unused_or_unnecessary(rd: &flycheck::Diagnostic) -> bool {
|
||||
match &rd.code {
|
||||
Some(code) => match code.code.as_str() {
|
||||
"dead_code" | "unknown_lints" | "unreachable_code" | "unused_attributes"
|
||||
|
@ -107,7 +108,7 @@ fn is_unused_or_unnecessary(rd: &ra_flycheck::Diagnostic) -> bool {
|
|||
}
|
||||
|
||||
/// Determines if diagnostic is related to deprecated code
|
||||
fn is_deprecated(rd: &ra_flycheck::Diagnostic) -> bool {
|
||||
fn is_deprecated(rd: &flycheck::Diagnostic) -> bool {
|
||||
match &rd.code {
|
||||
Some(code) => code.code.as_str() == "deprecated",
|
||||
None => false,
|
||||
|
@ -121,7 +122,7 @@ enum MappedRustChildDiagnostic {
|
|||
}
|
||||
|
||||
fn map_rust_child_diagnostic(
|
||||
rd: &ra_flycheck::Diagnostic,
|
||||
rd: &flycheck::Diagnostic,
|
||||
workspace_root: &Path,
|
||||
) -> MappedRustChildDiagnostic {
|
||||
let spans: Vec<&DiagnosticSpan> = rd.spans.iter().filter(|s| s.is_primary).collect();
|
||||
|
@ -183,7 +184,7 @@ pub(crate) struct MappedRustDiagnostic {
|
|||
/// If the diagnostic has no primary span this will return `None`
|
||||
pub(crate) fn map_rust_diagnostic_to_lsp(
|
||||
config: &DiagnosticsConfig,
|
||||
rd: &ra_flycheck::Diagnostic,
|
||||
rd: &flycheck::Diagnostic,
|
||||
workspace_root: &Path,
|
||||
) -> Vec<MappedRustDiagnostic> {
|
||||
let primary_spans: Vec<&DiagnosticSpan> = rd.spans.iter().filter(|s| s.is_primary).collect();
|
||||
|
@ -286,8 +287,8 @@ pub(crate) fn map_rust_diagnostic_to_lsp(
|
|||
mod tests {
|
||||
use super::*;
|
||||
|
||||
fn parse_diagnostic(val: &str) -> ra_flycheck::Diagnostic {
|
||||
serde_json::from_str::<ra_flycheck::Diagnostic>(val).unwrap()
|
||||
fn parse_diagnostic(val: &str) -> flycheck::Diagnostic {
|
||||
serde_json::from_str::<flycheck::Diagnostic>(val).unwrap()
|
||||
}
|
||||
|
||||
#[test]
|
||||
|
|
|
@ -6,10 +6,10 @@
|
|||
use std::{convert::TryFrom, sync::Arc};
|
||||
|
||||
use crossbeam_channel::{unbounded, Receiver};
|
||||
use flycheck::{CheckTask, FlycheckConfig, FlycheckHandle};
|
||||
use lsp_types::Url;
|
||||
use parking_lot::RwLock;
|
||||
use ra_db::{CrateId, SourceRoot, VfsPath};
|
||||
use ra_flycheck::{CheckTask, FlycheckConfig, FlycheckHandle};
|
||||
use ra_ide::{Analysis, AnalysisChange, AnalysisHost, CrateGraph, FileId};
|
||||
use ra_project_model::{CargoWorkspace, ProcMacroClient, ProjectWorkspace, Target};
|
||||
use stdx::format_to;
|
||||
|
|
|
@ -9,10 +9,10 @@ use std::{
|
|||
};
|
||||
|
||||
use crossbeam_channel::{never, select, unbounded, RecvError, Sender};
|
||||
use flycheck::CheckTask;
|
||||
use lsp_server::{Connection, ErrorCode, Message, Notification, Request, RequestId, Response};
|
||||
use lsp_types::{request::Request as _, NumberOrString, TextDocumentContentChangeEvent};
|
||||
use ra_db::VfsPath;
|
||||
use ra_flycheck::CheckTask;
|
||||
use ra_ide::{Canceled, FileId, LineIndex};
|
||||
use ra_prof::profile;
|
||||
use ra_project_model::{PackageRoot, ProjectWorkspace};
|
||||
|
@ -629,9 +629,9 @@ fn on_check_task(
|
|||
|
||||
CheckTask::Status(status) => {
|
||||
let (state, message) = match status {
|
||||
ra_flycheck::Status::Being => (ProgressState::Start, None),
|
||||
ra_flycheck::Status::Progress(target) => (ProgressState::Report, Some(target)),
|
||||
ra_flycheck::Status::End => (ProgressState::End, None),
|
||||
flycheck::Status::Being => (ProgressState::Start, None),
|
||||
flycheck::Status::Progress(target) => (ProgressState::Report, Some(target)),
|
||||
flycheck::Status::End => (ProgressState::End, None),
|
||||
};
|
||||
|
||||
report_progress(global_state, msg_sender, "cargo check", state, message, None);
|
||||
|
|
Loading…
Reference in a new issue