rust-lang / rust-analyzer

A Rust compiler front-end for IDEs
https://rust-analyzer.github.io/
Apache License 2.0
14.19k stars 1.59k forks source link

[BUG] Const generics broken when inside struct #14844

Closed utkarshgupta137 closed 1 month ago

utkarshgupta137 commented 1 year ago

Versions:

rust-analyzer version: 2023-05-15 & Nightly

rustc version: 1.69.0

relevant settings: https://github.com/utkarshgupta137/nvim-lazy/blob/main/lua/lvim/lsp/settings/rust_analyzer.lua

Minimal reproduction:

pub const ONE: usize = 1;

pub struct Inner<const P: usize>();

pub struct Outer {
    pub inner: Inner<ONE>,
}

fn main() {
    _ = Outer {
        inner: Inner::<1>(), // Error: expected Inner<ONE>, found Inner<1> | rust-analyzer (type-mismatch) [11, 16]
    };
}

Diagnosis:

The bug doesn't exist in the 2023-05-08 release. This PR included in the 2023-05-15 release seems relevant: https://github.com/rust-lang/rust-analyzer/pull/14727

utkarshgupta137 commented 1 year ago

cc: @HKalbasi

HKalbasi commented 1 year ago

@utkarshgupta137 can you please check if this issue is actually fixed on the master? The stats on webrender doesn't go back to pre #14727 state, but it might be unrelated to this issue.

utkarshgupta137 commented 1 year ago

Will do it once a nightly is released.

lnicola commented 1 year ago

Nightly ETA 30 minutes

utkarshgupta137 commented 1 year ago

Yes, my issue is resolved now. Will update in case I see it someplace else. (Yes, I did re-enable the type-mistmatch diagnostic)

utkarshgupta137 commented 1 year ago

Welp, it is still occurring in other places. I'll try to share a minimum reproduction.

utkarshgupta137 commented 1 year ago

I've found a much nastier bug that completely breaks RA for the files containing Fn(<type alias>) -> <any>. The same doesn't happen if I do Fn(<any>) -> <type alias>. The issue can be resolved if you substitute the type alias.

Example:

pub const ONE: usize = 1;

pub type MyInner = Inner<ONE>;

pub struct Inner<const P: usize>();

pub struct Outer {
    pub inner: Inner<ONE>,
}

impl Outer {
    fn map<F>(&self, func: F) -> bool
    where
        F: Fn(&MyInner) -> bool,
    {
        func(&self.inner)
    }
}

fn main() {
    _ = Outer {
        inner: Inner::<1>(),
    };
}
utkarshgupta137 commented 1 year ago

@bors reopen

utkarshgupta137 commented 1 year ago

@HKalbasi I can't reopen this issue, do you want me to create a new one? I think it might be a good idea to revert the relevant change until the ramifications are completely understood.

I'd be happy to test any builds you can provide through our 65K line codebase.

utkarshgupta137 commented 1 year ago
LSP Logs with `RA_LOG='rust_analyzer=debug' nvim`: ``` [START][2023-05-26 23:11:11] LSP logging initiated [ERROR][2023-05-26 23:11:11] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[INFO rust_analyzer] server version 0.4.1529-standalone (06d02e0a1 2023-05-25) will start\n[INFO rust_analyzer] InitializeParams: {"rootUri":"file:///Users/utkarsh/utkarsh/rust/play","rootPath":"/Users/utkarsh/utkarsh/rust/play","clientInfo":{"name":"Neovim","version":"0.9.0"},"trace":"off","capabilities":{"experimental":{"codeActionGroup":true,"ssr":true,"serverStatusNotification":true,"hoverRange":true,"commands":{"commands":["rust-analyzer.runSingle","rust-analyzer.debugSingle","rust-analyzer.showReferences","rust-analyzer.gotoLocation","editor.action.triggerParameterHints"]},"snippetTextEdit":true,"hoverActions":true},"textDocument":{"typeDefinition":{"linkSupport":true},"hover":{"dynamicRegistration":false,"contentFormat":["markdown","plaintext"]},"implementation":{"linkSupport":true},"callHierarchy":{"dynamicRegistration":false},"synchronization":{"willSave":true,"didSave":true,"willSaveWaitUntil":true,"dynamicRegistration":false},"declaration":{"linkSupport":true},"semanticTokens":{"tokenModifiers":["declaration","definition","readonly","static","deprecated","abstract","async","modification","documentation","defaultLibrary"],"formats":["relative"],"serverCancelSupport":false,"requests":{"full":{"delta":true},"range":false},"overlappingTokenSupport":true,"augmentsSyntaxTokens":true,"tokenTypes":["namespace","type","class","enum","interface","struct","typeParameter","parameter","variable","property","enumMember","event","function","method","macro","keyword","modifier","comment","string","number","regexp","operator","decorator"],"dynamicRegistration":false,"multilineTokenSupport":false},"documentSymbol":{"symbolKind":{"valueSet":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26]},"hierarchicalDocumentSymbolSupport":true,"dynamicRegistration":false},"rename":{"prepareSupport":true,"dynamicRegistration":false},"publishDiagnostics":{"relatedInformation":true,"tagSupport":{"valueSet":[1,2]}},"documentHighlight":{"dynamicRegistration":false},"signatureHelp":{"dynamicRegistration":false,"signatureInformation":{"parameterInformation":{"labelOffsetSupport":true},"documentationFormat":["markdown","plaintext"],"activeParameterSupport":true}},"references":{"dynamicRegistration":false},"codeAction":{"isPreferredSupport":true,"dataSupport":true,"resolveSupport":{"properties":["edit"]},"dynamicRegistration":false,"codeActionLiteralSupport":{"codeActionKind":{"valueSet":["","quickfix","refactor","refactor.extract","refactor.inline","refactor.rewrite","source","source.organizeImports"]}}},"completion":{"completionList":{"itemDefaults":["commitCharacters","editRange","insertTextFormat","insertTextMode","data"]},"completionItemKind":{"valueSet":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25]},"insertTextMode":1,"contextSupport":true,"dynamicRegistration":false,"completionItem":{"documentationFormat":["markdown","plaintext"],"labelDetailsSupport":true,"insertTextModeSupport":{"valueSet":[1,2]},"deprecatedSupport":true,"preselectSupport":true,"commitCharactersSupport":true,"snippetSupport":true,"insertReplaceSupport":true,"resolveSupport":{"properties":["documentation","detail","additionalTextEdits"]},"tagSupport":{"valueSet":[1]}}},"definition":{"linkSupport":true}},"window":{"showMessage":{"messageActionItem":{"additionalPropertiesSupport":false}},"showDocument":{"support":true},"workDoneProgress":true},"workspace":{"workspaceEdit":{"resourceOperations":["rename","create","delete"]},"applyEdit":true,"symbol":{"hierarchicalWorkspaceSymbolSupport":true,"dynamicRegistration":false,"symbolKind":{"valueSet":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26]}},"didChangeWatchedFiles":{"dynamicRegistration":false,"relativePatternSupport":true},"configuration":true,"semanticTokens":{"refreshSupport":true},"workspaceFolders":true}},"processId":43468,"initializationOptions":{},"workspaceFolders":[{"uri":"file:///Users/utkarsh/utkarsh/rust/play","name":"/Users/utkarsh/utkarsh/rust/play"}]}\n[INFO rust_analyzer::config] updating config from JSON: {}\n' [ERROR][2023-05-26 23:11:11] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[INFO rust_analyzer] Client 'Neovim' 0.9.0\n[INFO rust_analyzer::config] discovered projects: [CargoToml(ManifestPath { file: AbsPathBuf(\"/Users/utkarsh/utkarsh/rust/play/Cargo.toml\") })]\n[INFO rust_analyzer::main_loop] initial config: Config {\n discovered_projects: [\n CargoToml(\n ManifestPath {\n file: AbsPathBuf(\n \"/Users/utkarsh/utkarsh/rust/play/Cargo.toml\",\n ),\n },\n ),\n ],\n workspace_roots: [\n AbsPathBuf(\n \"/Users/utkarsh/utkarsh/rust/play\",\n ),\n ],\n caps: ClientCapabilities {\n workspace: Some(\n WorkspaceClientCapabilities {\n apply_edit: Some(\n true,\n ),\n workspace_edit: Some(\n WorkspaceEditClientCapabilities {\n document_changes: None,\n resource_operations: Some(\n [\n Rename,\n Create,\n Delete,\n ],\n ),\n failure_handling: None,\n normalizes_line_endings: None,\n change_annotation_support: None,\n },\n ),\n did_change_configuration: None,\n did_change_watched_files: Some(\n DidChangeWatchedFilesClientCapabilities {\n dynamic_registration: Some(\n false,\n ),\n relative_pattern_support: Some(\n true,\n ),\n },\n ),\n symbol: Some(\n WorkspaceSymbolClientCapabilities {\n dynamic_registration: Some(\n false,\n ),\n symbol_kind: Some(\n SymbolKindCapability {\n value_set: Some(\n [\n File,\n Module,\n Namespace,\n Package,\n Class,\n Method,\n Property,\n Field,\n Constructor,\n Enum,\n Interface,\n Function,\n Variable,\n Constant,\n String,\n Number,\n Boolean,\n Array,\n Object,\n Key,\n Null,\n EnumMember,\n Struct,\n Event,\n Operator,\n TypeParameter,\n ],\n ),\n },\n ),\n tag_support: None,\n resolve_support: None,\n },\n ),\n execute_command: None,\n workspace_folders: Some(\n true,\n ),\n configuration: Some(\n true,\n ),\n semantic_tokens: Some(\n SemanticTokensWorkspaceClientCapabilities {\n refresh_support: Some(\n true,\n ),\n },\n ),\n code_lens: None,\n file_operations: None,\n inline_value: None,\n inlay_hint: None,\n },\n ),\n text_document: Some(\n TextDocumentClientCapabilities {\n synchronization: Some(\n TextDocumentSyncClientCapabilities {\n dynamic_registration: Some(\n false,\n ),\n will_save: Some(\n true,\n ),\n will_save_wait_until: Some(\n true,\n ),\n did_save: Some(\n true,\n ),\n },\n ),\n completion: Some(\n CompletionClientCapabilities {\n dynamic_registration: Some(\n false,\n ),\n completion_item: Some(\n CompletionItemCapability {\n snippet_support: Some(\n true,\n ),\n commit_characters_support: Some(\n true,\n ),\n documentation_format: Some(\n [\n Markdown,\n PlainText,\n ],\n ),\n deprecated_support: Some(\n true,\n ),\n preselect_support: Some(\n true,\n ),\n tag_support: Some(\n TagSupport {\n value_set: [\n Deprecated,\n ],\n },\n ),\n insert_replace_support: Some(\n true,\n ),\n resolve_support: Some(\n CompletionItemCapabilityResolveSupport {\n properties: [\n \"documentation\",\n \"detail\",\n \"additionalTextEdits\",\n ],\n },\n ),\n insert_text_mode_support: Some(\n InsertTextModeSupport {\n value_set: [\n AsIs,\n AdjustIndentation,\n ],\n },\n ),\n label_details_support: Some(\n true,\n ),\n },\n ),\n completion_item_kind: Some(\n CompletionItemKindCapability {\n value_set: Some(\n [\n Text,\n Method,\n Function,\n Constructor,\n Field,\n Variable,\n Class,\n " [ERROR][2023-05-26 23:11:11] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" ' Interface,\n Module,\n Property,\n Unit,\n Value,\n Enum,\n Keyword,\n Snippet,\n Color,\n File,\n Reference,\n Folder,\n EnumMember,\n Constant,\n Struct,\n Event,\n Operator,\n TypeParameter,\n ],\n ),\n },\n ),\n context_support: Some(\n true,\n ),\n insert_text_mode: Some(\n AsIs,\n ),\n completion_list: Some(\n CompletionListCapability {\n item_defaults: Some(\n [\n "commitCharacters",\n "editRange",\n "insertTextFormat",\n "insertTextMode",\n "data",\n ],\n ),\n },\n ),\n },\n ),\n hover: Some(\n HoverClientCapabilities {\n dynamic_registration: Some(\n false,\n ),\n content_format: Some(\n [\n Markdown,\n PlainText,\n ],\n ),\n },\n ),\n signature_help: Some(\n SignatureHelpClientCapabilities {\n dynamic_registration: Some(\n false,\n ),\n signature_information: Some(\n SignatureInformationSettings {\n documentation_format: Some(\n [\n Markdown,\n PlainText,\n ],\n ),\n parameter_information: Some(\n ParameterInformationSettings {\n label_offset_support: Some(\n true,\n ),\n },\n ),\n active_parameter_support: Some(\n true,\n ),\n },\n ),\n context_support: None,\n },\n ),\n references: Some(\n DynamicRegistrationClientCapabilities {\n dynamic_registration: Some(\n false,\n ),\n },\n ),\n document_highlight: Some(\n DynamicRegistrationClientCapabilities {\n dynamic_registration: Some(\n false,\n ),\n },\n ),\n document_symbol: Some(\n DocumentSymbolClientCapabilities {\n dynamic_registration: Some(\n false,\n ),\n symbol_kind: Some(\n SymbolKindCapability {\n value_set: Some(\n [\n File,\n Module,\n Namespace,\n Package,\n Class,\n Method,\n Property,\n Field,\n Constructor,\n Enum,\n Interface,\n Function,\n Variable,\n Constant,\n String,\n Number,\n Boolean,\n Array,\n Object,\n Key,\n Null,\n EnumMember,\n Struct,\n Event,\n Operator,\n TypeParameter,\n ],\n ),\n },\n ),\n hierarchical_document_symbol_support: Some(\n true,\n ),\n tag_support: None,\n },\n ),\n formatting: None,\n range_formatting: None,\n on_type_formatting: None,\n declaration: Some(\n GotoCapability {\n dynamic_registration: None,\n link_support: Some(\n true,\n ),\n },\n ),\n definition: Some(\n GotoCapability {\n dynamic_registration: None,\n link_support: Some(\n true,\n ),\n },\n ),\n type_definition: Some(\n GotoCapability {\n dynamic_registration: None,\n link_support: Some(\n true,\n ),\n },\n ),\n implementation: Some(\n GotoCapability {\n dynamic_registration: None,\n link_support: Some(\n true,\n ),\n },\n ),\n code_action: Some(\n CodeActionClientCapabilities {\n dynamic_registration: Some(\n false,\n ),\n code_action_literal_support: Some(\n CodeActionLiteralSupport {\n code_action_kind: CodeActionKindLiteralSupport {\n value_set: [\n "",\n "quickfix",\n "refactor",\n "refactor.extract",\n "refactor.inline",\n "refactor.rewrite",\n "source",\n "source.organizeImports",\n ' [ERROR][2023-05-26 23:11:11] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" ' ],\n },\n },\n ),\n is_preferred_support: Some(\n true,\n ),\n disabled_support: None,\n data_support: Some(\n true,\n ),\n resolve_support: Some(\n CodeActionCapabilityResolveSupport {\n properties: [\n "edit",\n ],\n },\n ),\n honors_change_annotations: None,\n },\n ),\n code_lens: None,\n document_link: None,\n color_provider: None,\n rename: Some(\n RenameClientCapabilities {\n dynamic_registration: Some(\n false,\n ),\n prepare_support: Some(\n true,\n ),\n prepare_support_default_behavior: None,\n honors_change_annotations: None,\n },\n ),\n publish_diagnostics: Some(\n PublishDiagnosticsClientCapabilities {\n related_information: Some(\n true,\n ),\n tag_support: Some(\n TagSupport {\n value_set: [\n Unnecessary,\n Deprecated,\n ],\n },\n ),\n version_support: None,\n code_description_support: None,\n data_support: None,\n },\n ),\n folding_range: None,\n selection_range: None,\n linked_editing_range: None,\n call_hierarchy: Some(\n DynamicRegistrationClientCapabilities {\n dynamic_registration: Some(\n false,\n ),\n },\n ),\n semantic_tokens: Some(\n SemanticTokensClientCapabilities {\n dynamic_registration: Some(\n false,\n ),\n requests: SemanticTokensClientCapabilitiesRequests {\n range: Some(\n false,\n ),\n full: Some(\n Delta {\n delta: Some(\n true,\n ),\n },\n ),\n },\n token_types: [\n SemanticTokenType(\n "namespace",\n ),\n SemanticTokenType(\n "type",\n ),\n SemanticTokenType(\n "class",\n ),\n SemanticTokenType(\n "enum",\n ),\n SemanticTokenType(\n "interface",\n ),\n SemanticTokenType(\n "struct",\n ),\n SemanticTokenType(\n "typeParameter",\n ),\n SemanticTokenType(\n "parameter",\n ),\n SemanticTokenType(\n "variable",\n ),\n SemanticTokenType(\n "property",\n ),\n SemanticTokenType(\n "enumMember",\n ),\n SemanticTokenType(\n "event",\n ),\n SemanticTokenType(\n "function",\n ),\n SemanticTokenType(\n "method",\n ),\n SemanticTokenType(\n "macro",\n ),\n SemanticTokenType(\n "keyword",\n ),\n SemanticTokenType(\n "modifier",\n ),\n SemanticTokenType(\n "comment",\n ),\n SemanticTokenType(\n "string",\n ),\n SemanticTokenType(\n "number",\n ),\n SemanticTokenType(\n "regexp",\n ),\n SemanticTokenType(\n "operator",\n ),\n SemanticTokenType(\n "decorator",\n ),\n ],\n token_modifiers: [\n SemanticTokenModifier(\n "declaration",\n ),\n SemanticTokenModifier(\n "definition",\n ),\n SemanticTokenModifier(\n "readonly",\n ),\n SemanticTokenModifier(\n "static",\n ),\n SemanticTokenModifier(\n "deprecated",\n ),\n SemanticTokenModifier(\n "abstract",\n ),\n SemanticTokenModifier(\n "async",\n ),\n SemanticTokenModifier(\n "modification",\n ),\n SemanticTokenModifier(\n "documentation",\n ),\n SemanticTokenModifier(\n "defaultLibrary",\n ),\n ],\n formats: [\n TokenFormat(\n "relative",\n ),\n ],\n overlapping_token_support: Some(\n true,\n ),\n multiline_token_support: Some(\n false,\n ),\n server_cancel_support: Some(\n false,\n ),\n augments_syntax_tokens: Some(\n true,\n ),\n },\n ),\n moniker: None,\n type_hierarchy: None,\n inline_value: None,\n inlay_hint: None,\n },\n ),\n win' [ERROR][2023-05-26 23:11:11] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" 'dow: Some(\n WindowClientCapabilities {\n work_done_progress: Some(\n true,\n ),\n show_message: Some(\n ShowMessageRequestClientCapabilities {\n message_action_item: Some(\n MessageActionItemCapabilities {\n additional_properties_support: Some(\n false,\n ),\n },\n ),\n },\n ),\n show_document: Some(\n ShowDocumentClientCapabilities {\n support: true,\n },\n ),\n },\n ),\n general: None,\n offset_encoding: None,\n experimental: Some(\n Object {\n "codeActionGroup": Bool(true),\n "ssr": Bool(true),\n "serverStatusNotification": Bool(true),\n "hoverRange": Bool(true),\n "commands": Object {\n "commands": Array [\n String("rust-analyzer.runSingle"),\n String("rust-analyzer.debugSingle"),\n String("rust-analyzer.showReferences"),\n String("rust-analyzer.gotoLocation"),\n String("editor.action.triggerParameterHints"),\n ],\n },\n "snippetTextEdit": Bool(true),\n "hoverActions": Bool(true),\n },\n ),\n },\n root_path: AbsPathBuf(\n "/Users/utkarsh/utkarsh/rust/play",\n ),\n data: ConfigData {\n assist_emitMustUse: false,\n assist_expressionFillDefault: Todo,\n cachePriming_enable: true,\n cachePriming_numThreads: 0,\n cargo_autoreload: true,\n cargo_buildScripts_enable: true,\n cargo_buildScripts_invocationLocation: Workspace,\n cargo_buildScripts_invocationStrategy: PerWorkspace,\n cargo_buildScripts_overrideCommand: None,\n cargo_buildScripts_useRustcWrapper: true,\n cargo_extraArgs: [],\n cargo_extraEnv: {},\n cargo_features: Selected(\n [],\n ),\n cargo_noDefaultFeatures: false,\n cargo_sysroot: Some(\n "discover",\n ),\n cargo_sysrootSrc: None,\n cargo_target: None,\n cargo_unsetTest: [\n "core",\n ],\n checkOnSave: true,\n check_allTargets: true,\n check_command: "check",\n check_extraArgs: [],\n check_extraEnv: {},\n check_features: None,\n check_invocationLocation: Workspace,\n check_invocationStrategy: PerWorkspace,\n check_noDefaultFeatures: None,\n check_overrideCommand: None,\n check_targets: None,\n completion_autoimport_enable: true,\n completion_autoself_enable: true,\n completion_callable_snippets: FillArguments,\n completion_limit: None,\n completion_postfix_enable: true,\n completion_privateEditable_enable: false,\n completion_snippets_custom: {\n "Arc::new": SnippetDef {\n prefix: [],\n postfix: [\n "arc",\n ],\n description: Some(\n "Put the expression into an `Arc`",\n ),\n body: [\n "Arc::new(${receiver})",\n ],\n requires: [\n "std::sync::Arc",\n ],\n scope: Expr,\n },\n "Rc::new": SnippetDef {\n prefix: [],\n postfix: [\n "rc",\n ],\n description: Some(\n "Put the expression into an `Rc`",\n ),\n body: [\n "Rc::new(${receiver})",\n ],\n requires: [\n "std::rc::Rc",\n ],\n scope: Expr,\n },\n "Box::pin": SnippetDef {\n prefix: [],\n postfix: [\n "pinbox",\n ],\n description: Some(\n "Put the expression into a pinned `Box`",\n ),\n body: [\n "Box::pin(${receiver})",\n ],\n requires: [\n "std::boxed::Box",\n ],\n scope: Expr,\n },\n "Err": SnippetDef {\n prefix: [],\n postfix: [\n "err",\n ],\n description: Some(\n "Wrap the expression in a `Result::Err`",\n ),\n body: [\n "Err(${receiver})",\n ],\n requires: [],\n scope: Expr,\n },\n "Some": SnippetDef {\n prefix: [],\n postfix: [\n "some",\n ],\n description: Some(\n "Wrap the expression in an `Option::Some`",\n ),\n body: [\n "Some(${receiver})",\n ],\n requires: [],\n scope: Expr,\n },\n "Ok": SnippetDef {\n prefix: [],\n postfix: [\n "ok",\n ],\n description: Some(\n "Wrap the expression in a `Result::Ok`",\n ),\n body: [\n "Ok(${receiver})",\n ],\n requires: [],\n scope: Expr,\n },\n },\n diagnostics_disabled: {},\n diagnostics_enable: true,\n diagnostics_experimental_enable: false,\n diagnostics_remapPrefix: {},\n diagnostics_warningsAsHint: [],\n diagnostics_warningsAsInfo: [],\n files_excludeDirs: [],\n files_watcher: Client,\n highlightRelated_breakPoints_enable: true,\n highlightRelated_closureCaptures_enable: true,\n highlightRelated_exitPoints_enable: true,\n highlightRelated_references_enable: true,\n highlightRelated_yieldPoints_enable: true,\n hover_actions_debug_enable: true,\n hover_actions_enable: true,\n hover_actions_gotoTypeDef_enable: true,\n hover_actions_implementations_enable: true,\n hover_actions_references_enable: false,\n hover_actions_run_enable: true,\n hover_documentation_enable: true,\n hover_documentation_keywords_enable: true,\n hover_links_enable: true,\n hover_memoryLayout_enable: true,\n imports_granularity_enforce: false,\n imports_granularity_group: Crate,\n imports_group_enable: true,\n imports_merge_glob: true,\n imports_prefer_no_std: false,\n imports_prefix: Plain,\n inlayHints_bindingModeHints_enable: false,\n inlayHints_chainingHints_enable: true,\n inlayHints_closingBraceHints_enable: true,\n inlayHints_closingBraceHints_minLines: 25,\n inlayHints_closureCaptureHints_enable: false,\n inlayHints_closureReturnTypeHints_enable: Never,\n inlayHints_closureStyle: ImplFn,\n inlayHints_discriminantHints_enable: Never,\n inlayHints_expressionAdjustmentHints_enable: Never,\n inlayHints_expressionAdjustmentHints_hideOutsideUnsafe: false,\n inlayHints_expressionAdjustmentHints_mode: Prefix,\n inlayHints_lifetimeElisionHints_enable: Never,\n inlayHints_lifetimeElisionHints_useParameterNames: false,\n inlayHints_maxLength: Some(\n 25,\n ),\n inlayHints_parameterHints_enable: true,\n inlayHints_reborrowHints_enable: Never,\n inlayHints_renderColons: true,\n inlayHints_typeHints_enable: true,\n inlayHints_typeHints_hideClosureInitialization: false,\n inlayHints_typeHints_hideNamedConstructor: false,\n interpret_tests: false,\n joinLines_joinAssignments: true,\n joinLi' [ERROR][2023-05-26 23:11:11] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "nes_joinElseIf: true,\n joinLines_removeTrailingComma: true,\n joinLines_unwrapTrivialBlock: true,\n lens_debug_enable: true,\n lens_enable: true,\n lens_forceCustomCommands: true,\n lens_implementations_enable: true,\n lens_location: AboveName,\n lens_references_adt_enable: false,\n lens_references_enumVariant_enable: false,\n lens_references_method_enable: false,\n lens_references_trait_enable: false,\n lens_run_enable: true,\n linkedProjects: [],\n lru_capacity: None,\n lru_query_capacities: {},\n notifications_cargoTomlNotFound: true,\n numThreads: None,\n procMacro_attributes_enable: true,\n procMacro_enable: true,\n procMacro_ignored: {},\n procMacro_server: None,\n references_excludeImports: false,\n runnables_command: None,\n runnables_extraArgs: [],\n rustc_source: None,\n rustfmt_extraArgs: [],\n rustfmt_overrideCommand: None,\n rustfmt_rangeFormatting_enable: false,\n semanticHighlighting_doc_comment_inject_enable: true,\n semanticHighlighting_nonStandardTokens: true,\n semanticHighlighting_operator_enable: true,\n semanticHighlighting_operator_specialization_enable: false,\n semanticHighlighting_punctuation_enable: false,\n semanticHighlighting_punctuation_separate_macro_bang: false,\n semanticHighlighting_punctuation_specialization_enable: false,\n semanticHighlighting_strings_enable: true,\n signatureInfo_detail: Full,\n signatureInfo_documentation_enable: true,\n typing_autoClosingAngleBrackets_enable: false,\n workspace_symbol_search_kind: OnlyTypes,\n workspace_symbol_search_limit: 128,\n workspace_symbol_search_scope: Workspace,\n },\n detached_files: [],\n snippets: [],\n}\n" [ERROR][2023-05-26 23:11:11] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[INFO rust_analyzer::reload] will fetch workspaces cause=startup\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317904, tv_nsec: 567106625 } handle_event(Notification(Notification { method: "workspace/didChangeConfiguration", params: Object {"settings": Object {"rust-analyzer": Object {"imports": Object {"prefix": String("self"), "granularity": Object {"enforce": Bool(true), "group": String("module")}}, "rustfmt": Object {"rangeFormatting": Object {"enable": Bool(true)}}, "lens": Object {"location": String("above_whole_item")}, "inlayHints": Object {"expressionAdjustmentHints": Object {"hideOutsideUnsafe": Bool(true), "enable": String("always")}, "parameterHints": Object {"enable": Bool(false)}, "lifetimeElisionHints": Object {"enable": String("skip_trivial")}, "maxLength": Number(100), "bindingModeHints": Object {"enable": Bool(true)}, "closureCaptureHints": Object {"enable": Bool(true)}, "closureReturnTypeHints": Object {"enable": String("always")}, "closureStyle": String("rust_analyzer")}, "references": Object {"excludeImports": Bool(true)}, "debug": Object {"openDebugPane": Bool(true)}, "assist": Object {"emitMustUse": Bool(true)}, "cargo": Object {"features": String("all"), "extraEnv": Object {"CARGO_PROFILE_RUST_ANALYZER_INHERITS": String("dev")}, "extraArgs": Array [String("--profile"), String("rust-analyzer")]}, "files": Object {"watcher": String("server")}, "server": Object {"extraEnv": Object {"RA_LOG": String("rust_analyzer=info")}}, "typing": Object {"autoClosingAngleBrackets": Object {"enable": Bool(true)}}, "workspace": Object {"symbol": Object {"search": Object {"limit": Number(1024), "kind": String("all_symbols")}}}, "check": Object {"command": String("clippy")}, "interpret": Object {"tests": Bool(true)}, "semanticHighlighting": Object {"punctuation": Object {"enable": Bool(true), "separate": Object {"macro": Object {"bang": Bool(true)}}, "specialization": Object {"enable": Bool(true)}}, "operator": Object {"specialization": Object {"enable": Bool(true)}}}, "diagnostics": Object {"disabled": Array [String("inactive-code")], "previewRustcOutput": Bool(true), "useRustcErrorCode": Bool(true), "experimental": Object {"enable": Bool(true)}}}}} }))\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317904, tv_nsec: 567203708 } handle_event(FetchWorkspace(Begin))\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317904, tv_nsec: 567216833 } handle_event(Notification(Notification { method: "workspace/didChangeConfiguration", params: Object {"settings": Object {"rust-analyzer": Object {"imports": Object {"prefix": String("self"), "granularity": Object {"enforce": Bool(true), "group": String("module")}}, "rustfmt": Object {"rangeFormatting": Object {"enable": Bool(true)}}, "lens": Object {"location": String("above_whole_item")}, "inlayHints": Object {"expressionAdjustmentHints": Object {"hideOutsideUnsafe": Bool(true), "enable": String("always")}, "parameterHints": Object {"enable": Bool(false)}, "lifetimeElisionHints": Object {"enable": String("skip_trivial")}, "maxLength": Number(100), "bindingModeHints": Object {"enable": Bool(true)}, "closureCaptureHints": Object {"enable": Bool(true)}, "closureReturnTypeHints": Object {"enable": String("always")}, "closureStyle": String("rust_analyzer")}, "references": Object {"excludeImports": Bool(true)}, "debug": Object {"openDebugPane": Bool(true)}, "assist": Object {"emitMustUse": Bool(true)}, "cargo": Object {"features": String("all"), "extraEnv": Object {"CARGO_PROFILE_RUST_ANALYZER_INHERITS": String("dev")}, "extraArgs": Array [String("--profile"), String("rust-analyzer")]}, "files": Object {"watcher": String("server")}, "server": Object {"extraEnv": Object {"RA_LOG": String("rust_analyzer=info")}}, "typing": Object {"autoClosingAngleBrackets": Object {"enable": Bool(true)}}, "workspace": Object {"symbol": Object {"search": Object {"limit": Number(1024), "kind": String("all_symbols")}}}, "check": Object {"command": String("clippy")}, "interpret": Object {"tests": Bool(true)}, "semanticHighlighting": Object {"punctuation": Object {"enable": Bool(true), "separate": Object {"macro": Object {"bang": Bool(true)}}, "specialization": Object {"enable": Bool(true)}}, "operator": Object {"specialization": Object {"enable": Bool(true)}}}, "diagnostics": Object {"disabled": Array [String("inactive-code")], "previewRustcOutput": Bool(true), "useRustcErrorCode": Bool(true), "experimental": Object {"enable": Bool(true)}}}}} }))\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317904, tv_nsec: 567265791 } handle_event(Notification { method: "textDocument/didOpen" })\n' [ERROR][2023-05-26 23:11:11] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317904, tv_nsec: 567309250 } handle_event(Request(Request { id: RequestId(I32(2)), method: "textDocument/documentSymbol", params: Object {"textDocument": Object {"uri": String("file:///Users/utkarsh/utkarsh/rust/play/neo-tree%20filesystem%20%5b1%5d")}} }))\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317904, tv_nsec: 567377125 } handle_event(Response { id: RequestId(I32(2)), error: Some(ResponseError { code: -32603, message: "file not found: /Users/utkarsh/utkarsh/rust/play/neo-tree filesystem [1]", data: None }) })\n[DEBUG rust_analyzer::global_state] handled textDocument/documentSymbol - (2) in 74.46µs\n' [ERROR][2023-05-26 23:11:11] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317904, tv_nsec: 568302208 } handle_event(Request(Request { id: RequestId(I32(3)), method: "textDocument/documentSymbol", params: Object {"textDocument": Object {"uri": String("file:///Users/utkarsh/utkarsh/rust/play/src/main.rs")}} }))\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317904, tv_nsec: 568545083 } handle_event(Response { id: RequestId(I32(3)), error: None })\n[DEBUG rust_analyzer::global_state] handled textDocument/documentSymbol - (3) in 245.63µs\n' [ERROR][2023-05-26 23:11:11] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317904, tv_nsec: 569278875 } handle_event(Request(Request { id: RequestId(I32(4)), method: "textDocument/documentHighlight", params: Object {"position": Object {"line": Number(21), "character": Number(27)}, "textDocument": Object {"uri": String("file:///Users/utkarsh/utkarsh/rust/play/src/main.rs")}} }))\n' [ERROR][2023-05-26 23:11:11] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317904, tv_nsec: 569380125 } handle_event(Response { id: RequestId(I32(4)), error: None })\n[DEBUG rust_analyzer::global_state] handled textDocument/documentHighlight - (4) in 108.96µs\n" [ERROR][2023-05-26 23:11:11] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317904, tv_nsec: 570270750 } handle_event(Request(Request { id: RequestId(I32(5)), method: "textDocument/semanticTokens/full", params: Object {"textDocument": Object {"uri": String("file:///Users/utkarsh/utkarsh/rust/play/src/main.rs")}} }))\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317904, tv_nsec: 570351375 } handle_event(Response { id: RequestId(I32(5)), error: None })\n[DEBUG rust_analyzer::global_state] handled textDocument/semanticTokens/full - (5) in 84.33µs\n' [ERROR][2023-05-26 23:11:11] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317904, tv_nsec: 643366000 } handle_event(Response(Response { id: RequestId(I32(0)), result: Some(Array [Object {\"imports\": Object {\"prefix\": String(\"self\"), \"granularity\": Object {\"enforce\": Bool(true), \"group\": String(\"module\")}}, \"rustfmt\": Object {\"rangeFormatting\": Object {\"enable\": Bool(true)}}, \"lens\": Object {\"location\": String(\"above_whole_item\")}, \"inlayHints\": Object {\"expressionAdjustmentHints\": Object {\"hideOutsideUnsafe\": Bool(true), \"enable\": String(\"always\")}, \"parameterHints\": Object {\"enable\": Bool(false)}, \"lifetimeElisionHints\": Object {\"enable\": String(\"skip_trivial\")}, \"maxLength\": Number(100), \"bindingModeHints\": Object {\"enable\": Bool(true)}, \"closureCaptureHints\": Object {\"enable\": Bool(true)}, \"closureReturnTypeHints\": Object {\"enable\": String(\"always\")}, \"closureStyle\": String(\"rust_analyzer\")}, \"references\": Object {\"excludeImports\": Bool(true)}, \"debug\": Object {\"openDebugPane\": Bool(true)}, \"assist\": Object {\"emitMustUse\": Bool(true)}, \"cargo\": Object {\"features\": String(\"all\"), \"extraEnv\": Object {\"CARGO_PROFILE_RUST_ANALYZER_INHERITS\": String(\"dev\")}, \"extraArgs\": Array [String(\"--profile\"), String(\"rust-analyzer\")]}, \"files\": Object {\"watcher\": String(\"server\")}, \"server\": Object {\"extraEnv\": Object {\"RA_LOG\": String(\"rust_analyzer=info\")}}, \"typing\": Object {\"autoClosingAngleBrackets\": Object {\"enable\": Bool(true)}}, \"workspace\": Object {\"symbol\": Object {\"search\": Object {\"limit\": Number(1024), \"kind\": String(\"all_symbols\")}}}, \"check\": Object {\"command\": String(\"clippy\")}, \"interpret\": Object {\"tests\": Bool(true)}, \"semanticHighlighting\": Object {\"punctuation\": Object {\"enable\": Bool(true), \"separate\": Object {\"macro\": Object {\"bang\": Bool(true)}}, \"specialization\": Object {\"enable\": Bool(true)}}, \"operator\": Object {\"specialization\": Object {\"enable\": Bool(true)}}}, \"diagnostics\": Object {\"disabled\": Array [String(\"inactive-code\")], \"previewRustcOutput\": Bool(true), \"useRustcErrorCode\": Bool(true), \"experimental\": Object {\"enable\": Bool(true)}}}]), error: None }))\n[DEBUG rust_analyzer::handlers::notification] config update response: 'Response { id: RequestId(I32(0)), result: Some(Array [Object {\"imports\": Object {\"prefix\": String(\"self\"), \"granularity\": Object {\"enforce\": Bool(true), \"group\": String(\"module\")}}, \"rustfmt\": Object {\"rangeFormatting\": Object {\"enable\": Bool(true)}}, \"lens\": Object {\"location\": String(\"above_whole_item\")}, \"inlayHints\": Object {\"expressionAdjustmentHints\": Object {\"hideOutsideUnsafe\": Bool(true), \"enable\": String(\"always\")}, \"parameterHints\": Object {\"enable\": Bool(false)}, \"lifetimeElisionHints\": Object {\"enable\": String(\"skip_trivial\")}, \"maxLength\": Number(100), \"bindingModeHints\": Object {\"enable\": Bool(true)}, \"closureCaptureHints\": Object {\"enable\": Bool(true)}, \"closureReturnTypeHints\": Object {\"enable\": String(\"always\")}, \"closureStyle\": String(\"rust_analyzer\")}, \"references\": Object {\"excludeImports\": Bool(true)}, \"debug\": Object {\"openDebugPane\": Bool(true)}, \"assist\": Object {\"emitMustUse\": Bool(true)}, \"cargo\": Object {\"features\": String(\"all\"), \"extraEnv\": Object {\"CARGO_PROFILE_RUST_ANALYZER_INHERITS\": String(\"dev\")}, \"extraArgs\": Array [String(\"--profile\"), String(\"rust-analyzer\")]}, \"files\": Object {\"watcher\": String(\"server\")}, \"server\": Object {\"extraEnv\": Object {\"RA_LOG\": String(\"rust_analyzer=info\")}}, \"typing\": Object {\"autoClosingAngleBrackets\": Object {\"enable\": Bool(true)}}, \"workspace\": Object {\"symbol\": Object {\"search\": Object {\"limit\": Number(1024), \"kind\": String(\"all_symbols\")}}}, \"check\": Object {\"command\": String(\"clippy\")}, \"interpret\": Object {\"tests\": Bool(true)}, \"semanticHighlighting\": Object {\"punctuation\": Object {\"enable\": Bool(true), \"separate\": Object {\"macro\": Object {\"bang\": Bool(true)}}, \"specialization\": Object {\"enable\": Bool(true)}}, \"operator\": Object {\"specialization\": Object {\"enable\": Bool(true)}}}, \"diagnostics\": Object {\"disabled\": Array [String(\"inactive-code\")], \"previewRustcOutput\": Bool(true), \"useRustcErrorCode\": Bool(true), \"experimental\": Object {\"enable\": Bool(true)}}}]), error: None }\n[INFO rust_analyzer::config] updating config from JSON: {\n \"imports\": {\n \"prefix\": \"self\",\n \"granularity\": {\n \"enforce\": true,\n \"group\": \"module\"\n }\n },\n \"rustfmt\": {\n \"rangeFormatting\": {\n \"enable\": true\n }\n },\n \"lens\": {\n \"location\": \"above_whole_item\"\n },\n \"inlayHints\": {\n \"expressionAdjustmentHints\": {\n \"hideOutsideUnsafe\": true,\n \"enable\": \"always\"\n },\n \"parameterHints\": {\n \"enable\": false\n },\n \"lifetimeElisionHints\": {\n \"enable\": \"skip_trivial\"\n },\n \"maxLength\": 100,\n \"bindingModeHints\": {\n \"enable\": true\n },\n \"closureCaptureHints\": {\n \"enable\": true\n },\n \"closureReturnTypeHints\": {\n \"enable\": \"always\"\n },\n \"closureStyle\": \"rust_analyzer\"\n },\n \"references\": {\n \"excludeImports\": true\n },\n \"debug\": {\n \"openDebugPane\": true\n },\n \"assist\": {\n \"emitMustUse\": true\n },\n \"cargo\": {\n \"features\": \"all\",\n \"extraEnv\": {\n \"CARGO_PROFILE_RUST_ANALYZER_INHERITS\": \"dev\"\n },\n \"extraArgs\": [\n \"--profile\",\n \"rust-analyzer\"\n ]\n },\n \"files\": {\n \"watcher\": \"server\"\n },\n \"server\": {\n \"extraEnv\": {\n \"RA_LOG\": \"rust_analyzer=info\"\n }\n },\n \"typing\": {\n \"autoClosingAngleBrackets\": {\n \"enable\": true\n }\n },\n \"workspace\": {\n \"symbol\": {\n \"search\": {\n \"limit\": 1024,\n \"kind\": \"all_symbols\"\n }\n }\n },\n \"check\": {\n \"command\": \"clippy\"\n },\n \"interpret\": {\n \"tests\": true\n },\n \"semanticHighlighting\": {\n \"punctuation\": {\n \"enable\": true,\n \"separate\": {\n \"macro\": {\n \"bang\": true\n }\n },\n \"specialization\": {\n \"enable\": true\n }\n },\n \"operator\": {\n \"specialization\": {\n \"enable\": true\n }\n }\n },\n \"diagnostics\": {\n \"disabled\": [\n \"inactive-code\"\n ],\n \"previewRustcOutput\": true,\n \"useRustcErrorCode\": true,\n \"experimental\": {\n \"enable\": true\n }\n }\n}\n" [ERROR][2023-05-26 23:11:11] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[DEBUG rust_analyzer::config] deserialized config data: ConfigData {\n assist_emitMustUse: true,\n assist_expressionFillDefault: Todo,\n cachePriming_enable: true,\n cachePriming_numThreads: 0,\n cargo_autoreload: true,\n cargo_buildScripts_enable: true,\n cargo_buildScripts_invocationLocation: Workspace,\n cargo_buildScripts_invocationStrategy: PerWorkspace,\n cargo_buildScripts_overrideCommand: None,\n cargo_buildScripts_useRustcWrapper: true,\n cargo_extraArgs: [\n "--profile",\n "rust-analyzer",\n ],\n cargo_extraEnv: {\n "CARGO_PROFILE_RUST_ANALYZER_INHERITS": "dev",\n },\n cargo_features: All,\n cargo_noDefaultFeatures: false,\n cargo_sysroot: Some(\n "discover",\n ),\n cargo_sysrootSrc: None,\n cargo_target: None,\n cargo_unsetTest: [\n "core",\n ],\n checkOnSave: true,\n check_allTargets: true,\n check_command: "clippy",\n check_extraArgs: [],\n check_extraEnv: {},\n check_features: None,\n check_invocationLocation: Workspace,\n check_invocationStrategy: PerWorkspace,\n check_noDefaultFeatures: None,\n check_overrideCommand: None,\n check_targets: None,\n completion_autoimport_enable: true,\n completion_autoself_enable: true,\n completion_callable_snippets: FillArguments,\n completion_limit: None,\n completion_postfix_enable: true,\n completion_privateEditable_enable: false,\n completion_snippets_custom: {\n "Arc::new": SnippetDef {\n prefix: [],\n postfix: [\n "arc",\n ],\n description: Some(\n "Put the expression into an `Arc`",\n ),\n body: [\n "Arc::new(${receiver})",\n ],\n requires: [\n "std::sync::Arc",\n ],\n scope: Expr,\n },\n "Rc::new": SnippetDef {\n prefix: [],\n postfix: [\n "rc",\n ],\n description: Some(\n "Put the expression into an `Rc`",\n ),\n body: [\n "Rc::new(${receiver})",\n ],\n requires: [\n "std::rc::Rc",\n ],\n scope: Expr,\n },\n "Box::pin": SnippetDef {\n prefix: [],\n postfix: [\n "pinbox",\n ],\n description: Some(\n "Put the expression into a pinned `Box`",\n ),\n body: [\n "Box::pin(${receiver})",\n ],\n requires: [\n "std::boxed::Box",\n ],\n scope: Expr,\n },\n "Err": SnippetDef {\n prefix: [],\n postfix: [\n "err",\n ],\n description: Some(\n "Wrap the expression in a `Result::Err`",\n ),\n body: [\n "Err(${receiver})",\n ],\n requires: [],\n scope: Expr,\n },\n "Some": SnippetDef {\n prefix: [],\n postfix: [\n "some",\n ],\n description: Some(\n "Wrap the expression in an `Option::Some`",\n ),\n body: [\n "Some(${receiver})",\n ],\n requires: [],\n scope: Expr,\n },\n "Ok": SnippetDef {\n prefix: [],\n postfix: [\n "ok",\n ],\n description: Some(\n "Wrap the expression in a `Result::Ok`",\n ),\n body: [\n "Ok(${receiver})",\n ],\n requires: [],\n scope: Expr,\n },\n },\n diagnostics_disabled: {\n "inactive-code",\n },\n diagnostics_enable: true,\n diagnostics_experimental_enable: true,\n diagnostics_remapPrefix: {},\n diagnostics_warningsAsHint: [],\n diagnostics_warningsAsInfo: [],\n files_excludeDirs: [],\n files_watcher: Server,\n highlightRelated_breakPoints_enable: true,\n highlightRelated_closureCaptures_enable: true,\n highlightRelated_exitPoints_enable: true,\n highlightRelated_references_enable: true,\n highlightRelated_yieldPoints_enable: true,\n hover_actions_debug_enable: true,\n hover_actions_enable: true,\n hover_actions_gotoTypeDef_enable: true,\n hover_actions_implementations_enable: true,\n hover_actions_references_enable: false,\n hover_actions_run_enable: true,\n hover_documentation_enable: true,\n hover_documentation_keywords_enable: true,\n hover_links_enable: true,\n hover_memoryLayout_enable: true,\n imports_granularity_enforce: true,\n imports_granularity_group: Module,\n imports_group_enable: true,\n imports_merge_glob: true,\n imports_prefer_no_std: false,\n imports_prefix: BySelf,\n inlayHints_bindingModeHints_enable: true,\n inlayHints_chainingHints_enable: true,\n inlayHints_closingBraceHints_enable: true,\n inlayHints_closingBraceHints_minLines: 25,\n inlayHints_closureCaptureHints_enable: true,\n inlayHints_closureReturnTypeHints_enable: Always,\n inlayHints_closureStyle: RustAnalyzer,\n inlayHints_discriminantHints_enable: Never,\n inlayHints_expressionAdjustmentHints_enable: Always,\n inlayHints_expressionAdjustmentHints_hideOutsideUnsafe: true,\n inlayHints_expressionAdjustmentHints_mode: Prefix,\n inlayHints_lifetimeElisionHints_enable: SkipTrivial,\n inlayHints_lifetimeElisionHints_useParameterNames: false,\n inlayHints_maxLength: Some(\n 100,\n ),\n inlayHints_parameterHints_enable: false,\n inlayHints_reborrowHints_enable: Never,\n inlayHints_renderColons: true,\n inlayHints_typeHints_enable: true,\n inlayHints_typeHints_hideClosureInitialization: false,\n inlayHints_typeHints_hideNamedConstructor: false,\n interpret_tests: true,\n joinLines_joinAssignments: true,\n joinLines_joinElseIf: true,\n joinLines_removeTrailingComma: true,\n joinLines_unwrapTrivialBlock: true,\n lens_debug_enable: true,\n lens_enable: true,\n lens_forceCustomCommands: true,\n lens_implementations_enable: true,\n lens_location: AboveWholeItem,\n lens_references_adt_enable: false,\n lens_references_enumVariant_enable: false,\n lens_references_method_enable: false,\n lens_references_trait_enable: false,\n lens_run_enable: true,\n linkedProjects: [],\n lru_capacity: None,\n lru_query_capacities: {},\n notifications_cargoTomlNotFound: true,\n numThreads: None,\n procMacro_attributes_enable: true,\n procMacro_enable: true,\n procMacro_ignored: {},\n procMacro_server: None,\n references_excludeImports: true,\n runnables_command: None,\n runnables_extraArgs: [],\n rustc_source: None,\n rustfmt_extraArgs: [],\n rustfmt_overrideCommand: None,\n rustfmt_rangeFormatting_enable: true,\n semanticHighlighting_doc_comment_inject_enable: true,\n semanticHighlighting_nonStandardTokens: true,\n semanticHighlighting_operator_enable: true,\n semanticHighlighting_operator_specialization_enable: true,\n semanticHighlighting_punctuation_enable: true,\n semanticHighlighting_punctuation_separate_macro_bang: true,\n semanticHighlighting_punctuation_specialization_enable: true,\n semanticHighlighting_strings_enable: true,\n signatureInfo_detail: Full,\n signatureInfo_documentation_enable: true,\n typing_autoClosingAngleBrackets_enable: true,\n workspace_symbol_search_kind: AllSymbols,\n workspace_symbol_search_limit: 1024,\n workspace_symbol_search_scope: Workspace,\n}\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317904, tv_nsec: 643697416 } handle_event(Response(Response { id: RequestId(I32(1)), result: None, error: None }))\n' [ERROR][2023-05-26 23:11:11] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317904, tv_nsec: 643879291 } handle_event(Response(Response { id: RequestId(I32(2)), result: Some(Array [Object {\"imports\": Object {\"prefix\": String(\"self\"), \"granularity\": Object {\"enforce\": Bool(true), \"group\": String(\"module\")}}, \"rustfmt\": Object {\"rangeFormatting\": Object {\"enable\": Bool(true)}}, \"lens\": Object {\"location\": String(\"above_whole_item\")}, \"inlayHints\": Object {\"expressionAdjustmentHints\": Object {\"hideOutsideUnsafe\": Bool(true), \"enable\": String(\"always\")}, \"parameterHints\": Object {\"enable\": Bool(false)}, \"lifetimeElisionHints\": Object {\"enable\": String(\"skip_trivial\")}, \"maxLength\": Number(100), \"bindingModeHints\": Object {\"enable\": Bool(true)}, \"closureCaptureHints\": Object {\"enable\": Bool(true)}, \"closureReturnTypeHints\": Object {\"enable\": String(\"always\")}, \"closureStyle\": String(\"rust_analyzer\")}, \"references\": Object {\"excludeImports\": Bool(true)}, \"debug\": Object {\"openDebugPane\": Bool(true)}, \"assist\": Object {\"emitMustUse\": Bool(true)}, \"cargo\": Object {\"features\": String(\"all\"), \"extraEnv\": Object {\"CARGO_PROFILE_RUST_ANALYZER_INHERITS\": String(\"dev\")}, \"extraArgs\": Array [String(\"--profile\"), String(\"rust-analyzer\")]}, \"files\": Object {\"watcher\": String(\"server\")}, \"server\": Object {\"extraEnv\": Object {\"RA_LOG\": String(\"rust_analyzer=info\")}}, \"typing\": Object {\"autoClosingAngleBrackets\": Object {\"enable\": Bool(true)}}, \"workspace\": Object {\"symbol\": Object {\"search\": Object {\"limit\": Number(1024), \"kind\": String(\"all_symbols\")}}}, \"check\": Object {\"command\": String(\"clippy\")}, \"interpret\": Object {\"tests\": Bool(true)}, \"semanticHighlighting\": Object {\"punctuation\": Object {\"enable\": Bool(true), \"separate\": Object {\"macro\": Object {\"bang\": Bool(true)}}, \"specialization\": Object {\"enable\": Bool(true)}}, \"operator\": Object {\"specialization\": Object {\"enable\": Bool(true)}}}, \"diagnostics\": Object {\"disabled\": Array [String(\"inactive-code\")], \"previewRustcOutput\": Bool(true), \"useRustcErrorCode\": Bool(true), \"experimental\": Object {\"enable\": Bool(true)}}}]), error: None }))\n[DEBUG rust_analyzer::handlers::notification] config update response: 'Response { id: RequestId(I32(2)), result: Some(Array [Object {\"imports\": Object {\"prefix\": String(\"self\"), \"granularity\": Object {\"enforce\": Bool(true), \"group\": String(\"module\")}}, \"rustfmt\": Object {\"rangeFormatting\": Object {\"enable\": Bool(true)}}, \"lens\": Object {\"location\": String(\"above_whole_item\")}, \"inlayHints\": Object {\"expressionAdjustmentHints\": Object {\"hideOutsideUnsafe\": Bool(true), \"enable\": String(\"always\")}, \"parameterHints\": Object {\"enable\": Bool(false)}, \"lifetimeElisionHints\": Object {\"enable\": String(\"skip_trivial\")}, \"maxLength\": Number(100), \"bindingModeHints\": Object {\"enable\": Bool(true)}, \"closureCaptureHints\": Object {\"enable\": Bool(true)}, \"closureReturnTypeHints\": Object {\"enable\": String(\"always\")}, \"closureStyle\": String(\"rust_analyzer\")}, \"references\": Object {\"excludeImports\": Bool(true)}, \"debug\": Object {\"openDebugPane\": Bool(true)}, \"assist\": Object {\"emitMustUse\": Bool(true)}, \"cargo\": Object {\"features\": String(\"all\"), \"extraEnv\": Object {\"CARGO_PROFILE_RUST_ANALYZER_INHERITS\": String(\"dev\")}, \"extraArgs\": Array [String(\"--profile\"), String(\"rust-analyzer\")]}, \"files\": Object {\"watcher\": String(\"server\")}, \"server\": Object {\"extraEnv\": Object {\"RA_LOG\": String(\"rust_analyzer=info\")}}, \"typing\": Object {\"autoClosingAngleBrackets\": Object {\"enable\": Bool(true)}}, \"workspace\": Object {\"symbol\": Object {\"search\": Object {\"limit\": Number(1024), \"kind\": String(\"all_symbols\")}}}, \"check\": Object {\"command\": String(\"clippy\")}, \"interpret\": Object {\"tests\": Bool(true)}, \"semanticHighlighting\": Object {\"punctuation\": Object {\"enable\": Bool(true), \"separate\": Object {\"macro\": Object {\"bang\": Bool(true)}}, \"specialization\": Object {\"enable\": Bool(true)}}, \"operator\": Object {\"specialization\": Object {\"enable\": Bool(true)}}}, \"diagnostics\": Object {\"disabled\": Array [String(\"inactive-code\")], \"previewRustcOutput\": Bool(true), \"useRustcErrorCode\": Bool(true), \"experimental\": Object {\"enable\": Bool(true)}}}]), error: None }\n[INFO rust_analyzer::config] updating config from JSON: {\n \"imports\": {\n \"prefix\": \"self\",\n \"granularity\": {\n \"enforce\": true,\n \"group\": \"module\"\n }\n },\n \"rustfmt\": {\n \"rangeFormatting\": {\n \"enable\": true\n }\n },\n \"lens\": {\n \"location\": \"above_whole_item\"\n },\n \"inlayHints\": {\n \"expressionAdjustmentHints\": {\n \"hideOutsideUnsafe\": true,\n \"enable\": \"always\"\n },\n \"parameterHints\": {\n \"enable\": false\n },\n \"lifetimeElisionHints\": {\n \"enable\": \"skip_trivial\"\n },\n \"maxLength\": 100,\n \"bindingModeHints\": {\n \"enable\": true\n },\n \"closureCaptureHints\": {\n \"enable\": true\n },\n \"closureReturnTypeHints\": {\n \"enable\": \"always\"\n },\n \"closureStyle\": \"rust_analyzer\"\n },\n \"references\": {\n \"excludeImports\": true\n },\n \"debug\": {\n \"openDebugPane\": true\n },\n \"assist\": {\n \"emitMustUse\": true\n },\n \"cargo\": {\n \"features\": \"all\",\n \"extraEnv\": {\n \"CARGO_PROFILE_RUST_ANALYZER_INHERITS\": \"dev\"\n },\n \"extraArgs\": [\n \"--profile\",\n \"rust-analyzer\"\n ]\n },\n \"files\": {\n \"watcher\": \"server\"\n },\n \"server\": {\n \"extraEnv\": {\n \"RA_LOG\": \"rust_analyzer=info\"\n }\n },\n \"typing\": {\n \"autoClosingAngleBrackets\": {\n \"enable\": true\n }\n },\n \"workspace\": {\n \"symbol\": {\n \"search\": {\n \"limit\": 1024,\n \"kind\": \"all_symbols\"\n }\n }\n },\n \"check\": {\n \"command\": \"clippy\"\n },\n \"interpret\": {\n \"tests\": true\n },\n \"semanticHighlighting\": {\n \"punctuation\": {\n \"enable\": true,\n \"separate\": {\n \"macro\": {\n \"bang\": true\n }\n },\n \"specialization\": {\n \"enable\": true\n }\n },\n \"operator\": {\n \"specialization\": {\n \"enable\": true\n }\n }\n },\n \"diagnostics\": {\n \"disabled\": [\n \"inactive-code\"\n ],\n \"previewRustcOutput\": true,\n \"useRustcErrorCode\": true,\n \"experimental\": {\n \"enable\": true\n }\n }\n}\n[DEBUG rust_analyzer::config] deserialized config data: ConfigData {\n assist_emitMustUse: true,\n assist_expressionFillDefault: Todo,\n cachePriming_enable: true,\n cachePriming_numThreads: 0,\n cargo_autoreload: true,\n cargo_buildScripts_enable: true,\n cargo_buildScripts_invocationLocation: Workspace,\n cargo_buildScripts_invocationStrategy: PerWorkspace,\n cargo_buildScripts_overrideCommand: None,\n cargo_buildScripts_useRustcWrapper: true,\n cargo_extraArgs: [\n \"--profile\",\n \"rust-analyzer\",\n ],\n cargo_extraEnv: {\n \"CARGO_PROFILE_RUST_ANALYZER_INHERITS\": \"dev\",\n },\n cargo_features: All,\n cargo_noDefaultFeatures: false,\n cargo_sysroot: Some(\n \"discover\",\n ),\n cargo_sysrootSrc: None,\n cargo_target: None,\n cargo_unsetTest: [\n \"core\",\n ],\n checkOnSave: true,\n check_allTargets: true,\n check_command: \"clippy\",\n check_extraArgs: [],\n check_extraEnv: {},\n check_features: None,\n check_invocationLocation: Workspace,\n check_invocationStrategy: PerWorkspace,\n check_noDefaultFeatures: None,\n check_overrideCommand: None,\n check_targets: None,\n completion_autoimport_enable: true,\n completion_autoself_enable: true,\n completion_callable_snippets: FillArguments,\n completion_limit: None,\n completion_postfix_enable: true,\n completion_privateEditable_enable: false,\n completion_snippets_custom: {\n \"Arc::new\": SnippetDef {\n prefix: [],\n postfix: [\n \"arc\",\n ],\n description: Some(\n \"Put the expression into an `Arc`\",\n ),\n body: [\n \"Arc::new(${receiver})\",\n ],\n requires: [\n \"std::sync::Arc\",\n ],\n scope: Expr,\n },\n \"Rc::new\": SnippetDef {\n prefix: [],\n postfix: [\n \"rc\",\n ],\n description: Some(\n \"Put the expression into an `Rc`\",\n ),\n " [ERROR][2023-05-26 23:11:11] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" ' body: [\n "Rc::new(${receiver})",\n ],\n requires: [\n "std::rc::Rc",\n ],\n scope: Expr,\n },\n "Box::pin": SnippetDef {\n prefix: [],\n postfix: [\n "pinbox",\n ],\n description: Some(\n "Put the expression into a pinned `Box`",\n ),\n body: [\n "Box::pin(${receiver})",\n ],\n requires: [\n "std::boxed::Box",\n ],\n scope: Expr,\n },\n "Err": SnippetDef {\n prefix: [],\n postfix: [\n "err",\n ],\n description: Some(\n "Wrap the expression in a `Result::Err`",\n ),\n body: [\n "Err(${receiver})",\n ],\n requires: [],\n scope: Expr,\n },\n "Some": SnippetDef {\n prefix: [],\n postfix: [\n "some",\n ],\n description: Some(\n "Wrap the expression in an `Option::Some`",\n ),\n body: [\n "Some(${receiver})",\n ],\n requires: [],\n scope: Expr,\n },\n "Ok": SnippetDef {\n prefix: [],\n postfix: [\n "ok",\n ],\n description: Some(\n "Wrap the expression in a `Result::Ok`",\n ),\n body: [\n "Ok(${receiver})",\n ],\n requires: [],\n scope: Expr,\n },\n },\n diagnostics_disabled: {\n "inactive-code",\n },\n diagnostics_enable: true,\n diagnostics_experimental_enable: true,\n diagnostics_remapPrefix: {},\n diagnostics_warningsAsHint: [],\n diagnostics_warningsAsInfo: [],\n files_excludeDirs: [],\n files_watcher: Server,\n highlightRelated_breakPoints_enable: true,\n highlightRelated_closureCaptures_enable: true,\n highlightRelated_exitPoints_enable: true,\n highlightRelated_references_enable: true,\n highlightRelated_yieldPoints_enable: true,\n hover_actions_debug_enable: true,\n hover_actions_enable: true,\n hover_actions_gotoTypeDef_enable: true,\n hover_actions_implementations_enable: true,\n hover_actions_references_enable: false,\n hover_actions_run_enable: true,\n hover_documentation_enable: true,\n hover_documentation_keywords_enable: true,\n hover_links_enable: true,\n hover_memoryLayout_enable: true,\n imports_granularity_enforce: true,\n imports_granularity_group: Module,\n imports_group_enable: true,\n imports_merge_glob: true,\n imports_prefer_no_std: false,\n imports_prefix: BySelf,\n inlayHints_bindingModeHints_enable: true,\n inlayHints_chainingHints_enable: true,\n inlayHints_closingBraceHints_enable: true,\n inlayHints_closingBraceHints_minLines: 25,\n inlayHints_closureCaptureHints_enable: true,\n inlayHints_closureReturnTypeHints_enable: Always,\n inlayHints_closureStyle: RustAnalyzer,\n inlayHints_discriminantHints_enable: Never,\n inlayHints_expressionAdjustmentHints_enable: Always,\n inlayHints_expressionAdjustmentHints_hideOutsideUnsafe: true,\n inlayHints_expressionAdjustmentHints_mode: Prefix,\n inlayHints_lifetimeElisionHints_enable: SkipTrivial,\n inlayHints_lifetimeElisionHints_useParameterNames: false,\n inlayHints_maxLength: Some(\n 100,\n ),\n inlayHints_parameterHints_enable: false,\n inlayHints_reborrowHints_enable: Never,\n inlayHints_renderColons: true,\n inlayHints_typeHints_enable: true,\n inlayHints_typeHints_hideClosureInitialization: false,\n inlayHints_typeHints_hideNamedConstructor: false,\n interpret_tests: true,\n joinLines_joinAssignments: true,\n joinLines_joinElseIf: true,\n joinLines_removeTrailingComma: true,\n joinLines_unwrapTrivialBlock: true,\n lens_debug_enable: true,\n lens_enable: true,\n lens_forceCustomCommands: true,\n lens_implementations_enable: true,\n lens_location: AboveWholeItem,\n lens_references_adt_enable: false,\n lens_references_enumVariant_enable: false,\n lens_references_method_enable: false,\n lens_references_trait_enable: false,\n lens_run_enable: true,\n linkedProjects: [],\n lru_capacity: None,\n lru_query_capacities: {},\n notifications_cargoTomlNotFound: true,\n numThreads: None,\n procMacro_attributes_enable: true,\n procMacro_enable: true,\n procMacro_ignored: {},\n procMacro_server: None,\n references_excludeImports: true,\n runnables_command: None,\n runnables_extraArgs: [],\n rustc_source: None,\n rustfmt_extraArgs: [],\n rustfmt_overrideCommand: None,\n rustfmt_rangeFormatting_enable: true,\n semanticHighlighting_doc_comment_inject_enable: true,\n semanticHighlighting_nonStandardTokens: true,\n semanticHighlighting_operator_enable: true,\n semanticHighlighting_operator_specialization_enable: true,\n semanticHighlighting_punctuation_enable: true,\n semanticHighlighting_punctuation_separate_macro_bang: true,\n semanticHighlighting_punctuation_specialization_enable: true,\n semanticHighlighting_strings_enable: true,\n signatureInfo_detail: Full,\n signatureInfo_documentation_enable: true,\n typing_autoClosingAngleBrackets_enable: true,\n workspace_symbol_search_kind: AllSymbols,\n workspace_symbol_search_limit: 1024,\n workspace_symbol_search_scope: Workspace,\n}\n' [ERROR][2023-05-26 23:11:11] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317904, tv_nsec: 681497208 } handle_event(FetchWorkspace(Report("metadata")))\n' [WARN][2023-05-26 23:11:12] ...lsp/handlers.lua:137 "The language server copilot triggers a registerCapability handler despite dynamicRegistration set to false. Report upstream, this warning is harmless" [ERROR][2023-05-26 23:11:12] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[INFO rust_analyzer::reload] did fetch workspaces [Ok(Cargo { root: Some("play"), n_packages: 33, sysroot: true, n_rustc_compiler_crates: 0, n_rustc_cfg: 77, n_cfg_overrides: 1, toolchain: Some(Version { major: 1, minor: 69, patch: 0 }), data_layout: Ok("e-m:o-i64:64-i128:128-n32:64-S128") })]\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 31533916 } handle_event(FetchWorkspace(End([Ok(Cargo { root: Some("play"), n_packages: 33, sysroot: true, n_rustc_compiler_crates: 0, n_rustc_cfg: 77, n_cfg_overrides: 1, toolchain: Some(Version { major: 1, minor: 69, patch: 0 }), data_layout: Ok("e-m:o-i64:64-i128:128-n32:64-S128") })])))\n[INFO rust_analyzer::reload] will switch workspaces cause=fetched workspace\n[DEBUG rust_analyzer::reload] abandon build scripts for workspaces\n' [ERROR][2023-05-26 23:11:12] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[INFO rust_analyzer::reload] Spawning proc-macro servers\n[INFO rust_analyzer::reload] Using proc-macro server at /Users/utkarsh/.local/share/rustup/toolchains/stable-aarch64-apple-darwin/libexec/rust-analyzer-proc-macro-srv\n" [ERROR][2023-05-26 23:11:12] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[INFO rust_analyzer::reload] did switch workspaces\n[INFO rust_analyzer::reload] will fetch workspaces cause=workspace vfs file change: /Users/utkarsh/.local/share/rustup/toolchains/stable-aarch64-apple-darwin/lib/rustlib/src/rust/library/core/src/lib.rs\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 35596166 } handle_event(Progress { n_total: 34, n_done: 0, config_version: 1 })\n" [ERROR][2023-05-26 23:11:12] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[INFO rust_analyzer::main_loop] task queue len: 1\n" [ERROR][2023-05-26 23:11:12] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 36791833 } handle_event(Loaded { n_files: 26 })\n" [ERROR][2023-05-26 23:11:12] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 38180291 } handle_event(Response(Response { id: RequestId(I32(3)), result: None, error: None }))\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 38188791 } handle_event(FetchWorkspace(Begin))\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 38210041 } handle_event(Loaded { n_files: 13 })\n" [ERROR][2023-05-26 23:11:12] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 38889125 } handle_event(Response(Response { id: RequestId(I32(4)), result: None, error: None }))\n" [ERROR][2023-05-26 23:11:12] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 40997791 } handle_event(Loaded { n_files: 222 })\n" [ERROR][2023-05-26 23:11:12] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 45041666 } handle_event(Loaded { n_files: 19 })\n" [ERROR][2023-05-26 23:11:12] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 49539833 } handle_event(Loaded { n_files: 5 })\n" [ERROR][2023-05-26 23:11:12] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 69945750 } handle_event(Loaded { n_files: 1286 })\n" [ERROR][2023-05-26 23:11:12] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 92319583 } handle_event(Loaded { n_files: 1 })\n" [ERROR][2023-05-26 23:11:12] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 146792666 } handle_event(FetchWorkspace(Report("metadata")))\n' [ERROR][2023-05-26 23:11:12] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 211680750 } handle_event(Request(Request { id: RequestId(I32(6)), method: "textDocument/codeAction", params: Object {"context": Object {"diagnostics": Array []}, "range": Object {"end": Object {"line": Number(21), "character": Number(27)}, "start": Object {"line": Number(21), "character": Number(27)}}, "textDocument": Object {"uri": String("file:///Users/utkarsh/utkarsh/rust/play/src/main.rs")}} }))\n' [ERROR][2023-05-26 23:11:12] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[INFO rust_analyzer::reload] did fetch workspaces [Ok(Cargo { root: Some("play"), n_packages: 33, sysroot: true, n_rustc_compiler_crates: 0, n_rustc_cfg: 77, n_cfg_overrides: 1, toolchain: Some(Version { major: 1, minor: 69, patch: 0 }), data_layout: Ok("e-m:o-i64:64-i128:128-n32:64-S128") })]\n' [ERROR][2023-05-26 23:11:12] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 366426500 } handle_event(FetchWorkspace(End([Ok(Cargo { root: Some("play"), n_packages: 33, sysroot: true, n_rustc_compiler_crates: 0, n_rustc_cfg: 77, n_cfg_overrides: 1, toolchain: Some(Version { major: 1, minor: 69, patch: 0 }), data_layout: Ok("e-m:o-i64:64-i128:128-n32:64-S128") })])))\n' [ERROR][2023-05-26 23:11:12] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[INFO rust_analyzer::reload] will switch workspaces cause=fetched workspace\n" [ERROR][2023-05-26 23:11:12] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[INFO rust_analyzer::reload] build scripts do not match the version of the active workspace\n" [ERROR][2023-05-26 23:11:12] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[INFO rust_analyzer::reload] will fetch workspaces cause=workspace vfs file change: /Users/utkarsh/.local/share/rustup/toolchains/stable-aarch64-apple-darwin/lib/rustlib/src/rust/library/core/benches/str.rs\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 366691750 } handle_event(FetchWorkspace(Begin))\n" [ERROR][2023-05-26 23:11:12] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 366828875 } handle_event(Request(Request { id: RequestId(I32(7)), method: "textDocument/semanticTokens/full/delta", params: Object {"previousResultId": String("1"), "textDocument": Object {"uri": String("file:///Users/utkarsh/utkarsh/rust/play/src/main.rs")}} }))\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 366872333 } handle_event(Response(Response { id: RequestId(I32(5)), result: None, error: None }))\n[INFO rust_analyzer::main_loop] task queue len: 1\n' [ERROR][2023-05-26 23:11:12] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 366906166 } handle_event(Response(Response { id: RequestId(I32(6)), result: None, error: None }))\n" [ERROR][2023-05-26 23:11:12] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 399152875 } handle_event(Request(Request { id: RequestId(I32(8)), method: "textDocument/documentSymbol", params: Object {"textDocument": Object {"uri": String("file:///Users/utkarsh/utkarsh/rust/play/src/main.rs")}} }))\n' [ERROR][2023-05-26 23:11:12] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 399306958 } handle_event(Response { id: RequestId(I32(8)), error: None })\n[DEBUG rust_analyzer::global_state] handled textDocument/documentSymbol - (8) in 157.75µs\n" [ERROR][2023-05-26 23:11:12] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 477735375 } handle_event(FetchWorkspace(Report("metadata")))\n' [ERROR][2023-05-26 23:11:12] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[INFO rust_analyzer::reload] did fetch workspaces [Ok(Cargo { root: Some("play"), n_packages: 33, sysroot: true, n_rustc_compiler_crates: 0, n_rustc_cfg: 77, n_cfg_overrides: 1, toolchain: Some(Version { major: 1, minor: 69, patch: 0 }), data_layout: Ok("e-m:o-i64:64-i128:128-n32:64-S128") })]\n' [ERROR][2023-05-26 23:11:12] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 694738416 } handle_event(FetchWorkspace(End([Ok(Cargo { root: Some("play"), n_packages: 33, sysroot: true, n_rustc_compiler_crates: 0, n_rustc_cfg: 77, n_cfg_overrides: 1, toolchain: Some(Version { major: 1, minor: 69, patch: 0 }), data_layout: Ok("e-m:o-i64:64-i128:128-n32:64-S128") })])))\n[INFO rust_analyzer::reload] will switch workspaces cause=fetched workspace\n' [ERROR][2023-05-26 23:11:12] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[INFO rust_analyzer::reload] build scripts do not match the version of the active workspace\n" [ERROR][2023-05-26 23:11:12] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[INFO rust_analyzer::reload] will fetch build data cause=workspace updated\n" [ERROR][2023-05-26 23:11:12] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 695014291 } handle_event(FetchBuildData(Begin))\n[INFO rust_analyzer::reload] will load proc macros cause=fetched workspace\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 695096000 } handle_event(LoadProcMacros(Begin))\n" [ERROR][2023-05-26 23:11:12] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 695692500 } handle_event(Notification(Notification { method: "$/cancelRequest", params: Object {"id": Number(7)} }))\n' [ERROR][2023-05-26 23:11:12] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 695719250 } handle_event(Request(Request { id: RequestId(I32(9)), method: "textDocument/semanticTokens/full/delta", params: Object {"previousResultId": String("1"), "textDocument": Object {"uri": String("file:///Users/utkarsh/utkarsh/rust/play/src/main.rs")}} }))\n' [ERROR][2023-05-26 23:11:12] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 695793000 } handle_event(Response(Response { id: RequestId(I32(7)), result: None, error: None }))\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 695803708 } handle_event(Response(Response { id: RequestId(I32(8)), result: None, error: None }))\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 695813666 } handle_event(Response(Response { id: RequestId(I32(9)), result: None, error: None }))\n" [ERROR][2023-05-26 23:11:13] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 874376166 } handle_event(FetchBuildData(Report("building proc-macros: proc-macro2")))\n' [ERROR][2023-05-26 23:11:13] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 874511916 } handle_event(FetchBuildData(Report("building proc-macros: quote")))\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 874559916 } handle_event(FetchBuildData(Report("building proc-macros: libc")))\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 874605791 } handle_event(FetchBuildData(Report("building proc-macros: version_check")))\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 874784958 } handle_event(FetchBuildData(Report("building proc-macros: ahash")))\n' [ERROR][2023-05-26 23:11:13] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 874887458 } handle_event(FetchBuildData(Report("building proc-macros: serde")))\n' [ERROR][2023-05-26 23:11:13] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 874996291 } handle_event(FetchBuildData(Report("building proc-macros: num-traits")))\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 875036208 } handle_event(FetchBuildData(Report("building proc-macros: libc")))\n' [ERROR][2023-05-26 23:11:13] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 875050375 } handle_event(FetchBuildData(Report("building proc-macros: lexical-parse-integer")))\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 875056791 } handle_event(FetchBuildData(Report("building proc-macros: lexical-write-integer")))\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 875089666 } handle_event(FetchBuildData(Report("building proc-macros: syn")))\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 875223083 } handle_event(FetchBuildData(Report("building proc-macros: serde_json")))\n' [ERROR][2023-05-26 23:11:13] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 875346583 } handle_event(FetchBuildData(Report("building proc-macros: thiserror")))\n' [ERROR][2023-05-26 23:11:13] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 875428416 } handle_event(FetchBuildData(Report("building proc-macros: serde_json")))\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 875486916 } handle_event(FetchBuildData(Report("building proc-macros: value-trait")))\n' [ERROR][2023-05-26 23:11:13] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 879830333 } handle_event(FetchBuildData(Report("building proc-macros: rust-play")))\n' [ERROR][2023-05-26 23:11:13] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 881237125 } handle_event(FetchBuildData(End(([Cargo { root: Some("play"), n_packages: 33, sysroot: true, n_rustc_compiler_crates: 0, n_rustc_cfg: 77, n_cfg_overrides: 1, toolchain: Some(Version { major: 1, minor: 69, patch: 0 }), data_layout: Ok("e-m:o-i64:64-i128:128-n32:64-S128") }], [Ok(WorkspaceBuildScripts { outputs: ArenaMap { v: [Some(BuildScriptOutput { cfgs: [KeyValue { key: "feature", value: "folded_multiply" }], envs: [("OUT_DIR", "/Users/utkarsh/utkarsh/rust/play/target/rust-analyzer/build/ahash-732e575ba335e0de/out")], out_dir: Some(AbsPathBuf("/Users/utkarsh/utkarsh/rust/play/target/rust-analyzer/build/ahash-732e575ba335e0de/out")), proc_macro_dylib_path: None }), Some(BuildScriptOutput { cfgs: [], envs: [], out_dir: None, proc_macro_dylib_path: None }), Some(BuildScriptOutput { cfgs: [], envs: [], out_dir: None, proc_macro_dylib_path: None }), Some(BuildScriptOutput { cfgs: [], envs: [], out_dir: None, proc_macro_dylib_path: None }), Some(BuildScriptOutput { cfgs: [], envs: [], out_dir: None, proc_macro_dylib_path: None }), Some(BuildScriptOutput { cfgs: [], envs: [], out_dir: None, proc_macro_dylib_path: None }), Some(BuildScriptOutput { cfgs: [], envs: [], out_dir: None, proc_macro_dylib_path: None }), Some(BuildScriptOutput { cfgs: [], envs: [], out_dir: None, proc_macro_dylib_path: None }), Some(BuildScriptOutput { cfgs: [], envs: [], out_dir: None, proc_macro_dylib_path: None }), Some(BuildScriptOutput { cfgs: [], envs: [], out_dir: None, proc_macro_dylib_path: None }), Some(BuildScriptOutput { cfgs: [], envs: [], out_dir: None, proc_macro_dylib_path: None }), Some(BuildScriptOutput { cfgs: [], envs: [], out_dir: None, proc_macro_dylib_path: None }), Some(BuildScriptOutput { cfgs: [], envs: [], out_dir: None, proc_macro_dylib_path: None }), Some(BuildScriptOutput { cfgs: [], envs: [], out_dir: None, proc_macro_dylib_path: None }), Some(BuildScriptOutput { cfgs: [Atom("freebsd11"), Atom("libc_priv_mod_use"), Atom("libc_union"), Atom("libc_const_size_of"), Atom("libc_align"), Atom("libc_int128"), Atom("libc_core_cvoid"), Atom("libc_packedN"), Atom("libc_cfg_target_vendor"), Atom("libc_non_exhaustive"), Atom("libc_long_array"), Atom("libc_ptr_addr_of"), Atom("libc_underscore_const_names"), Atom("libc_const_extern_fn")], envs: [("OUT_DIR", "/Users/utkarsh/utkarsh/rust/play/target/rust-analyzer/build/libc-2885d528525eba0d/out")], out_dir: Some(AbsPathBuf("/Users/utkarsh/utkarsh/rust/play/target/rust-analyzer/build/libc-2885d528525eba0d/out")), proc_macro_dylib_path: None }), Some(BuildScriptOutput { cfgs: [Atom("has_i128"), Atom("has_to_int_unchecked"), Atom("has_reverse_bits"), Atom("has_leading_trailing_ones"), Atom("has_int_assignop_ref"), Atom("has_div_euclid")], envs: [("OUT_DIR", "/Users/utkarsh/utkarsh/rust/play/target/rust-analyzer/build/num-traits-c410807619112b6a/out")], out_dir: Some(AbsPathBuf("/Users/utkarsh/utkarsh/rust/play/target/rust-analyzer/build/num-traits-c410807619112b6a/out")), proc_macro_dylib_path: None }), Some(BuildScriptOutput { cfgs: [], envs: [], out_dir: None, proc_macro_dylib_path: None }), Some(BuildScriptOutput { cfgs: [Atom("use_proc_macro"), Atom("wrap_proc_macro")], envs: [("OUT_DIR", "/Users/utkarsh/utkarsh/rust/play/target/rust-analyzer/build/proc-macro2-4f6b2e0e86de715d/out")], out_dir: Some(AbsPathBuf("/Users/utkarsh/utkarsh/rust/play/target/rust-analyzer/build/proc-macro2-4f6b2e0e86de715d/out")), proc_macro_dylib_path: None }), Some(BuildScriptOutput { cfgs: [], envs: [("OUT_DIR", "/Users/utkarsh/utkarsh/rust/play/target/rust-analyzer/build/quote-1aea8d08d433227e/out")], out_dir: Some(AbsPathBuf("/Users/utkarsh/utkarsh/rust/play/target/rust-analyzer/build/quote-1aea8d08d433227e/out")), proc_macro_dylib_path: None }), Some(BuildScriptOutput { cfgs: [], envs: [], out_dir: None, proc_macro_dylib_path: None }), Some(BuildScriptOutput { cfgs: [], envs: [], out_dir: None, proc_macro_dylib_path: None }), Some(BuildScriptOutput { cfgs: [], envs: [("OUT_DIR", "/Users/utkarsh/utkarsh/rust/play/target/rust-analyzer/build/serde-c200f3954d0a4170/out")], out_dir: Some(AbsPathBuf("/Users/utkarsh/utkarsh/rust/play/target/rust-analyzer/build/serde-c200f3954d0a4170/out")), proc_macro_dylib_path: None }), Some(BuildScriptOutput { cfgs: [], envs: [], out_dir: None, proc_macro_dylib_path: Some(AbsPathBuf("/Users/utkarsh/utkarsh/rust/play/target/rust-analyzer/deps/libserde_derive-639fa2d82e58a714.dylib")) }), Some(BuildScriptOutput { cfgs: [Atom("limb_width_64")], envs: [("OUT_DIR", "/Users/utkarsh/utkarsh/rust/play/target/rust-analyzer/build/serde_json-a780a1d7d4cda5c4/out")], out_dir: Some(AbsPathBuf("/Users/utkarsh/utkarsh/rust/play/target/rust-analyzer/build/serde_json-a780a1d7d4cda5c4/out")), proc_macro_dylib_path: None }), Some(BuildScriptOutput { cfgs: [], envs: [], out_dir: None, proc_macro_dylib_path: None }), Some(BuildScriptOutput { cfgs: [], envs: [], out_dir: None, proc_macro_dylib_path: None }), Some(BuildScriptOutput { cfgs: [], envs: [], out_dir: None, proc_macro_dylib_path: None }), Some(BuildScriptOutput { cfgs: [], envs: [], out_dir: None, proc_macro_dylib_path: None }), Some(BuildScriptOutput { cfgs: [], envs: [("OUT_DIR", "/Users/utkarsh/utkarsh/rust/play/target/rust-analyzer/build/thiserror-d70f0c6d16a46703/out")], out_dir: Some(AbsPathBuf("/Users/utkarsh/utkarsh/rust/play/target/rust-analyzer/build/thiserror-d70f0c6d16a46703/out")), proc_macro_dylib_path: None }), Some(BuildScriptOutput { cfgs: [], envs: [], out_dir: None, proc_macro_dylib_path: Some(AbsPathBuf("/Users/utkarsh/utkarsh/rust/play/target/rust-analyzer/deps/libthiserror_impl-fde8d11439061eac.dylib")) }), Some(BuildScriptOutput { cfgs: [], envs: [], out_dir: None, proc_macro_dylib_path: None }), Some(BuildScriptOutput { cfgs: [], envs: [], out_dir: None, proc_macro_dylib_path: None }), Some(BuildScriptOutput { cfgs: [], envs: [], out_dir: None, proc_macro_dylib_path: None })], _ty: PhantomData> }, error: None })]))))\n[INFO rust_analyzer::reload] will switch workspaces cause=fetched build data\n[DEBUG rust_analyzer::reload] set build scripts to workspaces\n[INFO rust_analyzer::reload] did switch workspaces\n[INFO rust_analyzer::reload] will load proc macros cause=fetched build data\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 883031666 } handle_event(Progress { n_total: 34, n_done: 0, config_version: 2 })\n[INFO rust_analyzer::main_loop] task queue len: 1\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 883212666 } handle_event(LoadProcMacros(Begin))\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 883361208 } handle_event(Loaded { n_files: 11 })\n' [ERROR][2023-05-26 23:11:13] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 883801666 } handle_event(Loaded { n_files: 18 })\n[INFO rust_analyzer::reload] Loaded proc-macros for /Users/utkarsh/utkarsh/rust/play/target/rust-analyzer/deps/libthiserror_impl-fde8d11439061eac.dylib: ["Error"]\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 883862833 } handle_event(LoadProcMacros(Report("/Users/utkarsh/utkarsh/rust/play/target/rust-analyzer/deps/libserde_derive-639fa2d82e58a714.dylib")))\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 883869833 } handle_event(Loaded { n_files: 2 })\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 883930541 } handle_event(Loaded { n_files: 1 })\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 884286958 } handle_event(Loaded { n_files: 26 })\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 884398208 } handle_event(Loaded { n_files: 7 })\n[INFO rust_analyzer::reload] Loaded proc-macros for /Users/utkarsh/utkarsh/rust/play/target/rust-analyzer/deps/libserde_derive-639fa2d82e58a714.dylib: ["Serialize", "Deserialize"]\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 884444416 } handle_event(LoadProcMacros(End({Idx::(40): Ok([ProcMacro { name: "Error", kind: CustomDerive, expander: Expander(ProcMacro { process: Mutex { data: ProcMacroProcessSrv { _process: Process { child: JodChild(Child { stdin: None, stdout: None, stderr: None, .. }) }, stdin: ChildStdin { .. }, stdout: BufReader { reader: ChildStdout { .. }, buffer: 0/8192 }, version: 1 }, poisoned: false, .. }, dylib_path: AbsPathBuf("/Users/utkarsh/utkarsh/rust/play/target/rust-analyzer/deps/libthiserror_impl-fde8d11439061eac.dylib"), name: "Error", kind: CustomDerive }) }]), Idx::(24): Ok([ProcMacro { name: "Serialize", kind: CustomDerive, expander: Expander(ProcMacro { process: Mutex { data: ProcMacroProcessSrv { _process: Process { child: JodChild(Child { stdin: None, stdout: None, stderr: None, .. }) }, stdin: ChildStdin { .. }, stdout: BufReader { reader: ChildStdout { .. }, buffer: 0/8192 }, version: 1 }, poisoned: false, .. }, dylib_path: AbsPathBuf("/Users/utkarsh/utkarsh/rust/play/target/rust-analyzer/deps/libserde_derive-639fa2d82e58a714.dylib"), name: "Serialize", kind: CustomDerive }) }, ProcMacro { name: "Deserialize", kind: CustomDerive, expander: Expander(ProcMacro { process: Mutex { data: ProcMacroProcessSrv { _process: Process { child: JodChild(Child { stdin: None, stdout: None, stderr: None, .. }) }, stdin: ChildStdin { .. }, stdout: BufReader { reader: ChildStdout { .. }, buffer: 0/8192 }, version: 1 }, poisoned: false, .. }, dylib_path: AbsPathBuf("/Users/utkarsh/utkarsh/rust/play/target/rust-analyzer/deps/libserde_derive-639fa2d82e58a714.dylib"), name: "Deserialize", kind: CustomDerive }) }])})))\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 885019041 } handle_event(Loaded { n_files: 25 })\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 885217916 } handle_event(Loaded { n_files: 13 })\n' [ERROR][2023-05-26 23:11:13] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 889445625 } handle_event(Loaded { n_files: 222 })\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 890248625 } handle_event(Loaded { n_files: 11 })\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 890433166 } handle_event(Loaded { n_files: 8 })\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 890901083 } handle_event(Loaded { n_files: 16 })\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 891472708 } handle_event(Loaded { n_files: 21 })\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 891886166 } handle_event(Loaded { n_files: 18 })\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 892611250 } handle_event(Loaded { n_files: 40 })\n" [ERROR][2023-05-26 23:11:13] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 893392375 } handle_event(Loaded { n_files: 49 })\n" [ERROR][2023-05-26 23:11:13] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 893629416 } handle_event(Loaded { n_files: 13 })\n" [ERROR][2023-05-26 23:11:13] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 893760541 } handle_event(Loaded { n_files: 10 })\n" [ERROR][2023-05-26 23:11:13] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 893971416 } handle_event(Response(Response { id: RequestId(I32(10)), result: None, error: None }))\n" [ERROR][2023-05-26 23:11:13] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 894400250 } handle_event(Response(Response { id: RequestId(I32(11)), result: None, error: None }))\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 894424916 } handle_event(Loaded { n_files: 52 })\n" [ERROR][2023-05-26 23:11:13] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 894574208 } handle_event(Loaded { n_files: 6 })\n" [ERROR][2023-05-26 23:11:13] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 899931291 } handle_event(Loaded { n_files: 8 })\n" [ERROR][2023-05-26 23:11:13] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 900039458 } handle_event(Retry(Request { id: RequestId(I32(9)), method: "textDocument/semanticTokens/full/delta", params: Object {"previousResultId": String("1"), "textDocument": Object {"uri": String("file:///Users/utkarsh/utkarsh/rust/play/src/main.rs")}} }))\n' [ERROR][2023-05-26 23:11:13] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 914876125 } handle_event(Loaded { n_files: 1286 })\n" [ERROR][2023-05-26 23:11:13] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[DEBUG rust_analyzer::main_loop] will prime caches cause=became quiescent\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 917789125 } handle_event(PrimeCaches(Begin))\n" [ERROR][2023-05-26 23:11:13] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 917934500 } handle_event(PrimeCaches(Report(ParallelPrimeCachesProgress { crates_currently_indexing: ["test"], crates_total: 9, crates_done: 0 })))\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 918099750 } handle_event(Notification(Notification { method: "$/cancelRequest", params: Object {"id": Number(9)} }))\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 918136458 } handle_event(Request(Request { id: RequestId(I32(10)), method: "textDocument/semanticTokens/full/delta", params: Object {"previousResultId": String("1"), "textDocument": Object {"uri": String("file:///Users/utkarsh/utkarsh/rust/play/src/main.rs")}} }))\n' [ERROR][2023-05-26 23:11:13] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 918173291 } handle_event(Response(Response { id: RequestId(I32(12)), result: None, error: None }))\n[INFO rust_analyzer::main_loop] task queue len: 1\n" [ERROR][2023-05-26 23:11:13] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 918360291 } handle_event(Response(Response { id: RequestId(I32(13)), result: None, error: None }))\n" [ERROR][2023-05-26 23:11:13] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 939020875 } handle_event(PrimeCaches(Report(ParallelPrimeCachesProgress { crates_currently_indexing: ["core"], crates_total: 9, crates_done: 1 })))\n' [ERROR][2023-05-26 23:11:13] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 977280750 } handle_event(Progress { id: 0, progress: DidStart })\n" [ERROR][2023-05-26 23:11:13] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317905, tv_nsec: 979971333 } handle_event(Response(Response { id: RequestId(I32(14)), result: None, error: None }))\n" [ERROR][2023-05-26 23:11:13] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317906, tv_nsec: 197112791 } handle_event(AddDiagnostic { id: 0, workspace_root: AbsPathBuf("/Users/utkarsh/utkarsh/rust/play"), diagnostic_code: Some("dead_code") })\n' [ERROR][2023-05-26 23:11:13] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317906, tv_nsec: 198992458 } handle_event(Progress { id: 0, progress: DidFinish(Ok(())) })\n" [ERROR][2023-05-26 23:11:13] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317906, tv_nsec: 567926166 } handle_event(Request(Request { id: RequestId(I32(11)), method: "textDocument/inlayHint", params: Object {"range": Object {"end": Object {"line": Number(23), "character": Number(1)}, "start": Object {"line": Number(0), "character": Number(0)}}, "textDocument": Object {"uri": String("file:///Users/utkarsh/utkarsh/rust/play/src/main.rs")}} }))\n' [ERROR][2023-05-26 23:11:14] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317906, tv_nsec: 885324458 } handle_event(PrimeCaches(Report(ParallelPrimeCachesProgress { crates_currently_indexing: [], crates_total: 9, crates_done: 2 })))\n" [ERROR][2023-05-26 23:11:14] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317906, tv_nsec: 885366833 } handle_event(PrimeCaches(Report(ParallelPrimeCachesProgress { crates_currently_indexing: ["alloc"], crates_total: 9, crates_done: 2 })))\n' [ERROR][2023-05-26 23:11:14] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317906, tv_nsec: 991111000 } handle_event(PrimeCaches(Report(ParallelPrimeCachesProgress { crates_currently_indexing: [], crates_total: 9, crates_done: 3 })))\n" [ERROR][2023-05-26 23:11:14] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317907, tv_nsec: 313637875 } handle_event(PrimeCaches(Report(ParallelPrimeCachesProgress { crates_currently_indexing: [], crates_total: 9, crates_done: 4 })))\n" [ERROR][2023-05-26 23:11:14] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317907, tv_nsec: 357159166 } handle_event(PrimeCaches(Report(ParallelPrimeCachesProgress { crates_currently_indexing: [], crates_total: 9, crates_done: 5 })))\n" [ERROR][2023-05-26 23:11:14] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317907, tv_nsec: 357193541 } handle_event(PrimeCaches(Report(ParallelPrimeCachesProgress { crates_currently_indexing: ["serde"], crates_total: 9, crates_done: 5 })))\n' [ERROR][2023-05-26 23:11:14] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317907, tv_nsec: 599768666 } handle_event(PrimeCaches(Report(ParallelPrimeCachesProgress { crates_currently_indexing: ["serde"], crates_total: 9, crates_done: 6 })))\n' [ERROR][2023-05-26 23:11:14] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317907, tv_nsec: 696818875 } handle_event(PrimeCaches(Report(ParallelPrimeCachesProgress { crates_currently_indexing: [], crates_total: 9, crates_done: 7 })))\n" [ERROR][2023-05-26 23:11:14] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317907, tv_nsec: 696861250 } handle_event(PrimeCaches(Report(ParallelPrimeCachesProgress { crates_currently_indexing: ["serde_json"], crates_total: 9, crates_done: 7 })))\n' [ERROR][2023-05-26 23:11:15] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317907, tv_nsec: 749083000 } handle_event(PrimeCaches(Report(ParallelPrimeCachesProgress { crates_currently_indexing: [], crates_total: 9, crates_done: 8 })))\n" [ERROR][2023-05-26 23:11:15] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317908, tv_nsec: 468359333 } handle_event(PrimeCaches(Report(ParallelPrimeCachesProgress { crates_currently_indexing: [], crates_total: 9, crates_done: 9 })))\n" [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "Panic context:\n> \nversion: 0.4.1529-standalone (06d02e0a1 2023-05-25)\nrequest: textDocument/inlayHint InlayHintParams {\n work_done_progress_params: WorkDoneProgressParams {\n work_done_token: None,\n },\n text_document: TextDocumentIdentifier {\n uri: Url {\n scheme: \"file\",\n cannot_be_a_base: false,\n username: \"\",\n password: None,\n host: None,\n port: None,\n path: \"/Users/utkarsh/utkarsh/rust/play/src/main.rs\",\n query: None,\n fragment: None,\n },\n },\n range: Range {\n start: Position {\n line: 0,\n character: 0,\n },\n end: Position {\n line: 23,\n character: 1,\n },\n },\n}\n\nthread 'Worker' panicked at 'internal error: entered unreachable code: It should at least implement FnOnce at this point', crates/hir-ty/src/infer/unify.rs:744:13\n" [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "stack backtrace:\n" [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" " 0: _rust_begin_unwind\n" [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" " 1: " [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "core::panicking::panic_fmt\n" [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" " 2" [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" ": hir_ty::infer::unify::InferenceTable::callable_sig\n 3: hir_ty::infer::expr::::infer_expr_inner\n 4: hir_ty::infer::expr::::infer_expr_coerce\n 5" [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" ": hir_ty::infer::expr::::infer_block\n 6: hir_ty::infer::expr::::infer_expr_inner\n" [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" " 7: hir_ty::infer::expr::::infer_return\n" [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" " 8" [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" ": hir_ty::infer::infer_query\n" [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" " 9: salsa::" [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "runtime::Runtime::execute_query_implementation\n" [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" " 10: salsa" [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "::derived::slot::Slot::read_upgrade\n" [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" " 11" [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" ": salsa::derived::slot::Slot::read\n" [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" " 12: " [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" " as salsa::plumbing::QueryStorageOps>::try_fetch\n" [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" " 13: ::infer_query::__shim\n 14: ::infer_query\n 15: hir_ty::db::infer_wait\n" [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" " 16: ::infer\n 17: hir::source_analyzer::SourceAnalyzer::new_for_body\n 18: hir" [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "::semantics::SemanticsImpl::analyze_impl\n 19: hir::semantics::SemanticsImpl::pattern_adjustments\n" [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" " 20: ide::" [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "inlay_hints::binding_mode::hints\n 21: ide::inlay_hints::hints\n 22: as core::iter::traits::iterator::Iterator>::fold\n 23: ide::" [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "inlay_hints::inlay_hints\n 24: std::panicking::try\n" [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" " 25: " [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "rust_analyzer::handlers::request::handle_inlay_hints\n" [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" " 26: std" [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "::panicking::try\n 27: ::call_box\n" [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.\n" [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317910, tv_nsec: 489612291 } handle_event(Retry(Request { id: RequestId(I32(6)), method: "textDocument/codeAction", params: Object {"context": Object {"diagnostics": Array []}, "range": Object {"end": Object {"line": Number(21), "character": Number(27)}, "start": Object {"line": Number(21), "character": Number(27)}}, "textDocument": Object {"uri": String("file:///Users/utkarsh/utkarsh/rust/play/src/main.rs")}} }))\n' [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317910, tv_nsec: 489856291 } handle_event(Response { id: RequestId(I32(11)), error: Some(ResponseError { code: -32603, message: "request handler panicked: internal error: entered unreachable code: It should at least implement FnOnce at this point", data: None }) })\nPanic context:\n> ' [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "\nversion: 0.4.1529-standalone (06d02e0a1 2023-05-25)\nrequest: textDocument/codeAction CodeActionParams {\n text_document: TextDocumentIdentifier {\n uri: Url {\n scheme: \"file\",\n cannot_be_a_base: false,\n username: \"\",\n password: None,\n host: None,\n port: None,\n path: \"/Users/utkarsh/utkarsh/rust/play/src/main.rs\",\n query: None,\n fragment: None,\n },\n },\n range: Range {\n start: Position {\n line: 21,\n character: 27,\n },\n end: Position {\n line: 21,\n character: 27,\n },\n },\n context: CodeActionContext {\n diagnostics: [],\n only: None,\n trigger_kind: None,\n },\n work_done_progress_params: WorkDoneProgressParams {\n work_done_token: None,\n },\n partial_result_params: PartialResultParams {\n partial_result_token: None,\n },\n}\n\nthread 'Worker[DEBUG rust_analyzer::global_state] handled textDocument/inlayHint - (11) in 3.92s\n' panicked at 'internal error: entered unreachable code: It should at least implement FnOnce at this point', crates/hir-ty/src/infer/unify.rs:744:13\nstack backtrace:\n" [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" " 0: _rust_begin_unwind\n 1: core::panicking::panic_fmt\n 2: hir_ty::infer::unify::InferenceTable::callable_sig\n 3: hir_ty::infer::expr::::infer_expr_inner\n 4: hir_ty::infer::expr::::infer_expr_coerce\n 5: hir_ty::infer::expr::::infer_block\n 6: hir_ty::infer::expr::::infer_expr_inner\n 7: hir_ty::infer::expr::::infer_return\n 8: hir_ty::infer::infer_query\n 9: salsa::runtime::Runtime::execute_query_implementation\n 10: salsa::derived::slot::Slot::read_upgrade\n 11: salsa::derived::slot" [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '::Slot::read\n 12: as salsa::plumbing::QueryStorageOps>::try_fetch\n 13: ::infer_query::__shim\n 14: ::infer_query\n 15: hir_ty::db::infer_wait\n 16: ::infer\n 17: hir::DefWithBody::diagnostics\n 18: hir::Module::diagnostics\n 19: ide_diagnostics::diagnostics\n 20: std::panicking::try\n 21: ide::Analysis::assists_with_fixes\n 22: rust_analyzer::handlers::request::handle_code_action\n 23: std::panicking::try\n 24: ::call_box\nnote: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.\n[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317910, tv_nsec: 490433291 } handle_event(Retry(Request { id: RequestId(I32(10)), method: "textDocument/semanticTokens/full/delta", params: Object {"previousResultId": String("1"), "textDocument": Object {"uri": String("file:///Users/utkarsh/utkarsh/rust/play/src/main.rs")}} }))\n' [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[DEBUG rust_analyzer::global_state] handled textDocument/codeAction - (6) in 5.28s\n" [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" 'Panic context:\n> \nversion: 0.4.1529-standalone (06d02e0a1 2023-05-25)\nrequest: textDocument/semanticTokens/full/delta SemanticTokensDeltaParams {\n work_done_progress_params: WorkDoneProgressParams {\n work_done_token: None,\n },\n partial_result_params: PartialResultParams {\n partial_result_token: None,\n },\n text_document: TextDocumentIdentifier {\n uri: Url {\n scheme: "file",\n cannot_be_a_base: false,\n username: "",\n password: None,\n host: None,\n port: None,\n path: "/Users/utkarsh/utkarsh/rust/play/src/main.rs",\n query: None,\n fragment: None,\n },\n },\n previous_result_id: "1",\n}' [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "\n\nthread 'Worker' panicked at 'internal error: entered unreachable code: It should at least implement FnOnce at this point', crates/hir-ty/src/infer/unify.rs:744:13\nstack backtrace:\n" [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" " 0: _rust_begin_unwind\n 1: core::panicking::panic_fmt\n 2: hir_ty::infer::unify::InferenceTable::callable_sig\n" [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" " 3: hir_ty::infer::expr::::infer_expr_inner\n 4: hir_ty::infer::expr::::infer_expr_coerce\n " [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" " 5: hir_ty::infer::expr::::infer_block\n 6: hir_ty::infer::expr::::infer_expr_inner\n 7: hir_ty::infer::expr::::infer_return\n " [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" " 8: hir_ty::infer::infer_query\n 9: salsa::runtime::Runtime::execute_query_implementation\n 10: salsa::derived::" [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "slot::Slot::read_upgrade\n 11: salsa::derived::slot::Slot::read\n" [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" " 12: as salsa::plumbing::QueryStorageOps>::try_fetch\n" [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" " 13: ::infer_query::__shim\n 14: ::infer_query\n 15: hir_ty::db::infer_wait\n 16: ::infer\n 17: hir::Local::ty\n 18: ide::syntax_highlighting::highlight::highlight_def\n 19: ide::syntax_highlighting::highlight::name_like" [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "\n 20: ide::syntax_highlighting::highlight\n 21: std::panicking::try\n 22: rust_analyzer::handlers::request::handle_semantic_tokens_full_delta\n 23" [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" ": std::panicking::try\n 24: ::call_box\nnote: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.\n" [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" '[DEBUG rust_analyzer::main_loop] Instant { tv_sec: 317910, tv_nsec: 490992416 } handle_event(Response { id: RequestId(I32(10)), error: Some(ResponseError { code: -32603, message: "request handler panicked: internal error: entered unreachable code: It should at least implement FnOnce at this point", data: None }) })\n' [ERROR][2023-05-26 23:11:17] .../vim/lsp/rpc.lua:734 "rpc" "/Users/utkarsh/.local/share/nvim/mason/bin/rust-analyzer" "stderr" "[DEBUG rust_analyzer::global_state] handled textDocument/semanticTokens/full/delta - (10) in 4.57s\n" ```
lnicola commented 1 year ago

That is,

thread 'Worker' panicked at 'internal error: entered unreachable code: It should at least implement FnOnce at this point', crates/hir-ty/src/infer/unify.rs:744:13
stack backtrace:
   0: rust_begin_unwind
             at /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/std/src/panicking.rs:579:5
   1: core::panicking::panic_fmt
             at /rustc/84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc/library/core/src/panicking.rs:64:14
   2: hir_ty::infer::unify::InferenceTable::callable_sig
   3: hir_ty::infer::expr::<impl hir_ty::infer::InferenceContext>::infer_expr_inner
   4: hir_ty::infer::expr::<impl hir_ty::infer::InferenceContext>::infer_expr_coerce
   5: hir_ty::infer::expr::<impl hir_ty::infer::InferenceContext>::with_breakable_ctx
   6: hir_ty::infer::expr::<impl hir_ty::infer::InferenceContext>::infer_block
   7: hir_ty::infer::expr::<impl hir_ty::infer::InferenceContext>::infer_expr_inner
   8: hir_ty::infer::expr::<impl hir_ty::infer::InferenceContext>::infer_return
   9: hir_ty::infer::infer_query
  10: salsa::runtime::Runtime::execute_query_implementation
  11: salsa::derived::slot::Slot<Q,MP>::read_upgrade
  12: salsa::derived::slot::Slot<Q,MP>::read
  13: <salsa::derived::DerivedStorage<Q,MP> as salsa::plumbing::QueryStorageOps<Q>>::try_fetch
  14: <DB as hir_ty::db::HirDatabase>::infer_query::__shim
  15: <DB as hir_ty::db::HirDatabase>::infer_query
  16: hir_ty::db::infer_wait
  17: <DB as hir_ty::db::HirDatabase>::infer
  18: hir::Local::ty
  19: ide::syntax_highlighting::highlight::highlight_def
  20: ide::syntax_highlighting::highlight::name_like
  21: ide::syntax_highlighting::highlight
  22: std::panicking::try
  23: ide::Analysis::highlight
  24: rust_analyzer::handlers::request::handle_semantic_tokens_full
  25: std::panicking::try
  26: <F as threadpool::FnBox>::call_box
HKalbasi commented 1 year ago

I'd be happy to test any builds you can provide through our 65K line codebase.

It would be great. You can check panics like this in the whole workspace by using rust-analyzer analysis-stats and you can list all type mismatches by using rust-analyzer diagnostics (every diagnostic is a bug, but some of them might be unrelated to const generics). #14913 is trying to fix this panic, but it might add some more :)

utkarshgupta137 commented 1 year ago

rustup run stable rust-analyzer analysis-stats .:

[ERROR project_model::workspace] cyclic deps: bbb(CrateId(440)) -> bbb(CrateId(440)), alternative path: bbb(CrateId(440))
[ERROR project_model::workspace] cyclic deps: ccc(CrateId(445)) -> xxx(CrateId(443)), alternative path: xxx(CrateId(443)) -> ccc(CrateId(445))
[ERROR project_model::workspace] cyclic deps: ddd(CrateId(448)) -> ddd(CrateId(448)), alternative path: ddd(CrateId(448))
[ERROR project_model::workspace] cyclic deps: eee(CrateId(458)) -> eee(CrateId(458)), alternative path: eee(CrateId(458))
[ERROR project_model::workspace] cyclic deps: fff(CrateId(468)) -> fff(CrateId(468)), alternative path: fff(CrateId(468))
[ERROR project_model::workspace] cyclic deps: ggg(CrateId(487)) -> ggg(CrateId(487)), alternative path: ggg(CrateId(487))
Database loaded:     2.79s (metadata 1.11s; build 557.04ms)
  crates: 99, mods: 572, decls: 7832, fns: 4914
Item Collection:     22.67s
  exprs: 224919, ??ty: 327 (0%), ?ty: 560 (0%), !ty: 0
Inference:           38.86s
Total:               61.54s

rustup run nightly rust-analyzer analysis-stats .:

[ERROR project_model::workspace] cyclic deps: aaa(CrateId(429)) -> aaa(CrateId(429)), alternative path: aaa(CrateId(429))
[ERROR project_model::workspace] cyclic deps: bbb(CrateId(440)) -> bbb(CrateId(440)), alternative path: bbb(CrateId(440))
[ERROR project_model::workspace] cyclic deps: ccc(CrateId(445)) -> xxx(CrateId(443)), alternative path: xxx(CrateId(443)) -> ccc(CrateId(445))
[ERROR project_model::workspace] cyclic deps: ddd(CrateId(448)) -> ddd(CrateId(448)), alternative path: ddd(CrateId(448))
[ERROR project_model::workspace] cyclic deps: eee(CrateId(458)) -> eee(CrateId(458)), alternative path: eee(CrateId(458))
[ERROR project_model::workspace] cyclic deps: fff(CrateId(468)) -> fff(CrateId(468)), alternative path: fff(CrateId(468))
[ERROR project_model::workspace] cyclic deps: ggg(CrateId(487)) -> ggg(CrateId(487)), alternative path: ggg(CrateId(487))
Database loaded:     2.26s (metadata 822.25ms; build 504.77ms)
  crates: 99, mods: 572, decls: 7832, fns: 4914
Item Collection:     22.94s
  exprs: 224892, ??ty: 1353 (0%), ?ty: 2015 (0%), !ty: 217
  pats: 33922, ??ty: 80 (0%), ?ty: 182 (0%), !ty: 15
Inference:           41.40s
Total:               64.34s

You can ignore the cyclic deps, code is working fine. We just do my-crate = { path = ".", features = ["bench"] } in our dev-dependencies.

rust-analyzer diagnostics . is tricky because it contains a lot of private identifiers. I'll try to filter through them, but there should be a way to anonymize them.

utkarshgupta137 commented 1 year ago

I'd be happy to test any builds you can provide through our 65K line codebase.

It would be great. You can check panics like this in the whole workspace by using rust-analyzer analysis-stats and you can list all type mismatches by using rust-analyzer diagnostics (every diagnostic is a bug, but some of them might be unrelated to const generics). #14913 is trying to fix this panic, but it might add some more :)

The latest nightly indeed fixed the problem.

rustup stable run rust-analyzer diagnostics . | grep -v my-crate-prefix | grep -v inactive-code | grep -v unresolved-macro-call | grep -v unresolved-proc-macro | grep -v unresolved-import | grep -v 'experimental: true':

Diagnostic { code: DiagnosticCode("type-mismatch"), message: "expected &{unknown}, found &str", range: 31352..31361, severity: Error, unused: false, experimental: false, fixes: Some([Assist { id: AssistId("add_reference_here", QuickFix), la
bel: "Add reference here", group: None, target: 31352..31361, source_change: Some(SourceChange { source_file_edits: {FileId(8720): TextEdit { indels: [Indel { insert: "&", delete: 31352..31352 }] }}, file_system_edits: [], is_snippet: false
 }), trigger_signature_help: false }]) }
Diagnostic { code: DiagnosticCode("private-assoc-item"), message: "function `as_mut_ptr` is private", range: 13191..13205, severity: Error, unused: false, experimental: false, fixes: None }
Diagnostic { code: DiagnosticCode("private-assoc-item"), message: "function `as_mut_ptr` is private", range: 13777..13791, severity: Error, unused: false, experimental: false, fixes: None }
Diagnostic { code: DiagnosticCode("type-mismatch"), message: "expected &mut {unknown}, found &mut |{unknown}| -> {unknown}", range: 2579..3368, severity: Error, unused: false, experimental: false, fixes: Some([Assist { id: AssistId("add_ref
erence_here", QuickFix), label: "Add reference here", group: None, target: 2579..3368, source_change: Some(SourceChange { source_file_edits: {FileId(8507): TextEdit { indels: [Indel { insert: "&mut ", delete: 2579..2579 }] }}, file_system_e
dits: [], is_snippet: false }), trigger_signature_help: false }]) }
Diagnostic { code: DiagnosticCode("type-mismatch"), message: "expected &mut {unknown}, found &mut |{unknown}| -> {unknown}", range: 3501..3702, severity: Error, unused: false, experimental: false, fixes: Some([Assist { id: AssistId("add_ref
erence_here", QuickFix), label: "Add reference here", group: None, target: 3501..3702, source_change: Some(SourceChange { source_file_edits: {FileId(8507): TextEdit { indels: [Indel { insert: "&mut ", delete: 3501..3501 }] }}, file_system_e
dits: [], is_snippet: false }), trigger_signature_help: false }]) }
Diagnostic { code: DiagnosticCode("type-mismatch"), message: "expected &mut {unknown}, found &mut |{unknown}| -> {unknown}", range: 4625..4761, severity: Error, unused: false, experimental: false, fixes: Some([Assist { id: AssistId("add_ref
erence_here", QuickFix), label: "Add reference here", group: None, target: 4625..4761, source_change: Some(SourceChange { source_file_edits: {FileId(402): TextEdit { indels: [Indel { insert: "&mut ", delete: 4625..4625 }] }}, file_system_ed
its: [], is_snippet: false }), trigger_signature_help: false }]) }
Diagnostic { code: DiagnosticCode("type-mismatch"), message: "expected &mut {unknown}, found &mut |{unknown}| -> {unknown}", range: 4986..5110, severity: Error, unused: false, experimental: false, fixes: Some([Assist { id: AssistId("add_ref
erence_here", QuickFix), label: "Add reference here", group: None, target: 4986..5110, source_change: Some(SourceChange { source_file_edits: {FileId(402): TextEdit { indels: [Indel { insert: "&mut ", delete: 4986..4986 }] }}, file_system_ed
its: [], is_snippet: false }), trigger_signature_help: false }]) }
Diagnostic { code: DiagnosticCode("type-mismatch"), message: "expected &mut {unknown}, found &mut |{unknown}| -> {unknown}", range: 6917..7041, severity: Error, unused: false, experimental: false, fixes: Some([Assist { id: AssistId("add_ref
erence_here", QuickFix), label: "Add reference here", group: None, target: 6917..7041, source_change: Some(SourceChange { source_file_edits: {FileId(402): TextEdit { indels: [Indel { insert: "&mut ", delete: 6917..6917 }] }}, file_system_ed
its: [], is_snippet: false }), trigger_signature_help: false }]) }
Diagnostic { code: DiagnosticCode("type-mismatch"), message: "expected &mut {unknown}, found &mut |{unknown}| -> {unknown}", range: 6561..6697, severity: Error, unused: false, experimental: false, fixes: Some([Assist { id: AssistId("add_ref
erence_here", QuickFix), label: "Add reference here", group: None, target: 6561..6697, source_change: Some(SourceChange { source_file_edits: {FileId(402): TextEdit { indels: [Indel { insert: "&mut ", delete: 6561..6561 }] }}, file_system_ed
its: [], is_snippet: false }), trigger_signature_help: false }]) }
Diagnostic { code: DiagnosticCode("type-mismatch"), message: "expected &mut {unknown}, found &mut |{unknown}| -> {unknown}", range: 1112..1163, severity: Error, unused: false, experimental: false, fixes: Some([Assist { id: AssistId("add_ref
erence_here", QuickFix), label: "Add reference here", group: None, target: 1112..1163, source_change: Some(SourceChange { source_file_edits: {FileId(401): TextEdit { indels: [Indel { insert: "&mut ", delete: 1112..1112 }] }}, file_system_ed
its: [], is_snippet: false }), trigger_signature_help: false }]) }
Diagnostic { code: DiagnosticCode("type-mismatch"), message: "expected &mut {unknown}, found &mut |{unknown}| -> {unknown}", range: 4432..4483, severity: Error, unused: false, experimental: false, fixes: Some([Assist { id: AssistId("add_ref
erence_here", QuickFix), label: "Add reference here", group: None, target: 4432..4483, source_change: Some(SourceChange { source_file_edits: {FileId(8499): TextEdit { indels: [Indel { insert: "&mut ", delete: 4432..4432 }] }}, file_system_e
dits: [], is_snippet: false }), trigger_signature_help: false }]) }
Diagnostic { code: DiagnosticCode("type-mismatch"), message: "expected &mut {unknown}, found &mut |{unknown}| -> {unknown}", range: 7589..7640, severity: Error, unused: false, experimental: false, fixes: Some([Assist { id: AssistId("add_ref
erence_here", QuickFix), label: "Add reference here", group: None, target: 7589..7640, source_change: Some(SourceChange { source_file_edits: {FileId(8498): TextEdit { indels: [Indel { insert: "&mut ", delete: 7589..7589 }] }}, file_system_e
dits: [], is_snippet: false }), trigger_signature_help: false }]) }
Diagnostic { code: DiagnosticCode("type-mismatch"), message: "expected &mut {unknown}, found &mut |{unknown}| -> {unknown}", range: 5177..5813, severity: Error, unused: false, experimental: false, fixes: Some([Assist { id: AssistId("add_ref
erence_here", QuickFix), label: "Add reference here", group: None, target: 5177..5813, source_change: Some(SourceChange { source_file_edits: {FileId(8498): TextEdit { indels: [Indel { insert: "&mut ", delete: 5177..5177 }] }}, file_system_e
dits: [], is_snippet: false }), trigger_signature_help: false }]) }
Diagnostic { code: DiagnosticCode("type-mismatch"), message: "expected &mut {unknown}, found &mut |{unknown}| -> {unknown}", range: 6099..6770, severity: Error, unused: false, experimental: false, fixes: Some([Assist { id: AssistId("add_ref
erence_here", QuickFix), label: "Add reference here", group: None, target: 6099..6770, source_change: Some(SourceChange { source_file_edits: {FileId(8496): TextEdit { indels: [Indel { insert: "&mut ", delete: 6099..6099 }] }}, file_system_e
dits: [], is_snippet: false }), trigger_signature_help: false }]) }
Diagnostic { code: DiagnosticCode("type-mismatch"), message: "expected &mut {unknown}, found &mut |{unknown}| -> {unknown}", range: 4102..4701, severity: Error, unused: false, experimental: false, fixes: Some([Assist { id: AssistId("add_ref
erence_here", QuickFix), label: "Add reference here", group: None, target: 4102..4701, source_change: Some(SourceChange { source_file_edits: {FileId(8496): TextEdit { indels: [Indel { insert: "&mut ", delete: 4102..4102 }] }}, file_system_e
dits: [], is_snippet: false }), trigger_signature_help: false }]) }
Diagnostic { code: DiagnosticCode("type-mismatch"), message: "expected &mut {unknown}, found &mut |{unknown}| -> {unknown}", range: 4957..5628, severity: Error, unused: false, experimental: false, fixes: Some([Assist { id: AssistId("add_ref
erence_here", QuickFix), label: "Add reference here", group: None, target: 4957..5628, source_change: Some(SourceChange { source_file_edits: {FileId(8496): TextEdit { indels: [Indel { insert: "&mut ", delete: 4957..4957 }] }}, file_system_e
dits: [], is_snippet: false }), trigger_signature_help: false }]) }
Diagnostic { code: DiagnosticCode("type-mismatch"), message: "expected &mut {unknown}, found &mut |{unknown}| -> {unknown}", range: 7437..7929, severity: Error, unused: false, experimental: false, fixes: Some([Assist { id: AssistId("add_ref
erence_here", QuickFix), label: "Add reference here", group: None, target: 7437..7929, source_change: Some(SourceChange { source_file_edits: {FileId(8496): TextEdit { indels: [Indel { insert: "&mut ", delete: 7437..7437 }] }}, file_system_e
dits: [], is_snippet: false }), trigger_signature_help: false }]) }
Diagnostic { code: DiagnosticCode("type-mismatch"), message: "expected &mut {unknown}, found &mut |{unknown}| -> {unknown}", range: 9539..9590, severity: Error, unused: false, experimental: false, fixes: Some([Assist { id: AssistId("add_ref
erence_here", QuickFix), label: "Add reference here", group: None, target: 9539..9590, source_change: Some(SourceChange { source_file_edits: {FileId(8496): TextEdit { indels: [Indel { insert: "&mut ", delete: 9539..9539 }] }}, file_system_e
dits: [], is_snippet: false }), trigger_signature_help: false }]) }
Diagnostic { code: DiagnosticCode("type-mismatch"), message: "expected &u64, found u64", range: 2088..2090, severity: Error, unused: false, experimental: false, fixes: Some([Assist { id: AssistId("add_reference_here", QuickFix), label: "Add
 reference here", group: None, target: 2088..2090, source_change: Some(SourceChange { source_file_edits: {FileId(8490): TextEdit { indels: [Indel { insert: "&", delete: 2088..2088 }] }}, file_system_edits: [], is_snippet: false }), trigger_
signature_help: false }]) }
Diagnostic { code: DiagnosticCode("type-mismatch"), message: "expected &u64, found u64", range: 2050..2054, severity: Error, unused: false, experimental: false, fixes: Some([Assist { id: AssistId("add_reference_here", QuickFix), label: "Add
 reference here", group: None, target: 2050..2054, source_change: Some(SourceChange { source_file_edits: {FileId(8490): TextEdit { indels: [Indel { insert: "&", delete: 2050..2050 }] }}, file_system_edits: [], is_snippet: false }), trigger_
signature_help: false }]) }
Diagnostic { code: DiagnosticCode("type-mismatch"), message: "expected &u64, found u64", range: 1998..2002, severity: Error, unused: false, experimental: false, fixes: Some([Assist { id: AssistId("add_reference_here", QuickFix), label: "Add
 reference here", group: None, target: 1998..2002, source_change: Some(SourceChange { source_file_edits: {FileId(8490): TextEdit { indels: [Indel { insert: "&", delete: 1998..1998 }] }}, file_system_edits: [], is_snippet: false }), trigger_
signature_help: false }]) }
Diagnostic { code: DiagnosticCode("mismatched-arg-count"), message: "expected 3 arguments, found 0", range: 1711..1713, severity: Error, unused: false, experimental: false, fixes: None }

diagnostic scan complete

You can probably ignore most of this since we do have unmaintained code here & there.

rustup nightly run rust-analyzer diagnostics . | grep -v my-crate-prefix | grep -v inactive-code | grep -v 'experimental: true':


diagnostic scan complete

One thing I noticed is that nightly had a much smaller output compared to stable.

> rustup stable run rust-analyzer diagnostics . | grep unresolved-macro-call | wc -l
5366

> rustup stable run rust-analyzer diagnostics . | grep unresolved-proc-macro | wc -l
806

> rustup stable run rust-analyzer diagnostics . | grep unresolved-import | wc -l
740
> rustup nightly run rust-analyzer diagnostics . | grep unresolved-macro-call | wc -l
33

> rustup nightly run rust-analyzer diagnostics . | grep unresolved-proc-macro | wc -l
0

> rustup nightly run rust-analyzer diagnostics . | grep unresolved-import | wc -l
3

Guess something was fixed recently.

Also, I ran rustup update before running anything.

HKalbasi commented 1 year ago

Rustup version is not updated. Can you try the github release version, or building from source? Its just a cargo build --release.

utkarshgupta137 commented 1 year ago

Rustup version is not updated. Can you try the github release version, or building from source? Its just a cargo build --release.

Are you talking about the stable or the nightly version? I have got this:

> rustup run stable rust-analyzer --version
rust-analyzer 1.69.0 (84c898d6 2023-04-16)

> rustup run nightly rust-analyzer --version
rust-analyzer 1.71.0-nightly (a2b1646c 2023-05-25)
lnicola commented 1 year ago

Both are old, you should use GitHub Releases. rustup one is from March 20 or so.

utkarshgupta137 commented 1 year ago

2023-05-08 (last version without bug):

> ~/.local/share/nvim/mason/bin/rust-analyzer --version
rust-analyzer 0.3.1506-standalone (833d5301d 2023-05-07)

> ~/.local/share/nvim/mason/bin/rust-analyzer analysis-stats .
Database loaded:     46.22s (metadata 931.71ms; build 44.25s)
  crates: 99, mods: 572, decls: 9534, fns: 6616
Item Collection:     25.26s
  exprs: 271908, ??ty: 485 (0%), ?ty: 733 (0%), !ty: 3
  pats: 60344, ??ty: 192 (0%), ?ty: 188 (0%), !ty: 0
Inference:           53.43s
Total:               78.68s

Nightly:

> ~/.local/share/nvim/mason/bin/rust-analyzer --version
rust-analyzer 0.4.1531-standalone (f6e3a87bf 2023-05-27)

> ~/.local/share/nvim/mason/bin/rust-analyzer analysis-stats .
Database loaded:     1.48s (metadata 647.78ms; build 554.56ms)
  crates: 99, mods: 572, decls: 9534, fns: 6616
Item Collection:     23.09s
  exprs: 277862, ??ty: 562 (0%), ?ty: 1436 (0%), !ty: 230
  pats: 60344, ??ty: 231 (0%), ?ty: 309 (0%), !ty: 54
Inference:           49.35s
MIR lowering:        5.39s
Mir failed bodies: 409 (6%)
Data layouts:        190.09ms
Failed data layouts: 14 (2%)
Const evaluation:    48.51ms
Failed const evals: 36 (6%)
Total:               78.08s
lnicola commented 1 year ago

At least it's not crashing 😅

HKalbasi commented 1 year ago

exprs: 277862, ??ty: 562 (0%), ?ty: 1436 (0%), !ty: 230

This is bad. Can you try to bring some of the type mismatches? rust-analyzer diagnostic . will show the location of them.

lnicola commented 1 month ago

The original and follow-up issue are fixed, and there's not enough info about the unknown types regression.