{"record":{"id":"e743de5a9d9b9683","repo":"zed-industries/zed","slug":"can-t-convert-uri-to-path","errorCode":null,"errorMessage":"can't convert URI to path","messagePattern":"can't convert URI to path","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"crates/project/src/lsp_store.rs","lineNumber":3697,"sourceCode":"            Ok(edits)\n        })\n    }\n\n    pub(crate) async fn deserialize_workspace_edit(\n        this: Entity<LspStore>,\n        edit: lsp::WorkspaceEdit,\n        push_to_history: bool,\n        language_server: Arc<LanguageServer>,\n        cx: &mut AsyncApp,\n    ) -> Result<ProjectTransaction> {\n        let fs = this.read_with(cx, |this, _| this.as_local().unwrap().fs.clone());\n\n        let mut operations = Vec::new();\n        if let Some(document_changes) = edit.document_changes {\n            match document_changes {\n                lsp::DocumentChanges::Edits(edits) => {\n                    operations.extend(edits.into_iter().map(lsp::DocumentChangeOperation::Edit))\n                }\n                lsp::DocumentChanges::Operations(ops) => operations = ops,\n            }\n        } else if let Some(changes) = edit.changes {\n            operations.extend(changes.into_iter().map(|(uri, edits)| {\n                lsp::DocumentChangeOperation::Edit(lsp::TextDocumentEdit {\n                    text_document: lsp::OptionalVersionedTextDocumentIdentifier {\n                        uri,\n                        version: None,\n                    },\n                    edits: edits.into_iter().map(Edit::Plain).collect(),\n                })\n            }));\n        }\n\n        let mut project_transaction = ProjectTransaction::default();\n        for operation in operations {\n            match operation {\n                lsp::DocumentChangeOperation::Op(lsp::ResourceOp::Create(op)) => {","sourceCodeStart":3679,"sourceCodeEnd":3715,"githubUrl":"https://github.com/zed-industries/zed/blob/9d272b036335401f339d024ea94968fd51016c40/crates/project/src/lsp_store.rs#L3679-L3715","documentation":"While applying code-action/workspace-edit operations, an LSP edit's document URI could not be converted to a local file path (non-file scheme or malformed URI), so the edit cannot be applied to a buffer.","triggerScenarios":"Thrown at crates/project/src/lsp_store.rs:3538 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Report the unsupported URI to the language server maintainers","Ensure the language server emits file:// URIs for editable documents"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"9d272b036335401f339d024ea94968fd51016c40","analyzedAt":"2026-08-20T19:29:52.058Z","contentChangedAt":"2026-08-20T19:29:52.058Z","schemaVersion":2},"datasetVersion":"2026-09-14T05:17:10.506Z"}