diff --git a/Sources/BuildSystemIntegration/SwiftPMBuildSystem.swift b/Sources/BuildSystemIntegration/SwiftPMBuildSystem.swift index e789d1c2..b3f16c3c 100644 --- a/Sources/BuildSystemIntegration/SwiftPMBuildSystem.swift +++ b/Sources/BuildSystemIntegration/SwiftPMBuildSystem.swift @@ -578,6 +578,13 @@ package actor SwiftPMBuildSystem: BuiltInBuildSystem { data: SourceKitSourceItemData(isHeader: true).encodeToLSPAny() ) } + sources += (swiftPMTarget.resources + swiftPMTarget.ignored + swiftPMTarget.others).map { + SourceItem( + uri: DocumentURI($0), + kind: $0.isDirectory ? .directory : .file, + generated: false, + ) + } result.append(SourcesItem(target: target, sources: sources)) } return BuildTargetSourcesResponse(items: result) @@ -773,3 +780,9 @@ package actor SwiftPMBuildSystem: BuiltInBuildSystem { return TextDocumentSourceKitOptionsResponse(compilerArguments: compilerArgs) } } + +fileprivate extension URL { + var isDirectory: Bool { + (try? resourceValues(forKeys: [.isDirectoryKey]))?.isDirectory == true + } +}