Skip to content

Commit 6d34d70

Browse files
committed
Split SourceKitLSPOptions out of SKCore
This only leaves build system functionality in SKCore, which allows us to rename SKCore.
1 parent cfe18f1 commit 6d34d70

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

48 files changed

+76
-31
lines changed

Documentation/Modules.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,10 @@ This includes:
7171

7272
Types that are API-compatible with OSLog to allow logging to OSLog when building for Darwin platforms and logging to stderr or files on non-Darwin platforms. This should not be dependent on any LSP specific types and be portable to other packages.
7373

74+
### SKOptions
75+
76+
Configuration options to change how SourceKit-LSP behaves, based on [Configuration files](Configuration%20File.md).
77+
7478
### SKSupport
7579

7680
Contains SourceKit-LSP-specific helper functions. These fall into three different categories:

Package.swift

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ let package = Package(
2828
"LanguageServerProtocol",
2929
"LanguageServerProtocolJSONRPC",
3030
"SKCore",
31+
"SKOptions",
3132
"SKSupport",
3233
"SourceKitLSP",
3334
"ToolchainRegistry",
@@ -78,6 +79,7 @@ let package = Package(
7879
"InProcessClient",
7980
"SKCore",
8081
"SKLogging",
82+
"SKOptions",
8183
"SKSupport",
8284
"SourceKitD",
8385
"SourceKitLSP",
@@ -113,6 +115,7 @@ let package = Package(
113115
"LanguageServerProtocol",
114116
"SKCore",
115117
"SKLogging",
118+
"SKOptions",
116119
"SourceKitLSP",
117120
"ToolchainRegistry",
118121
],
@@ -187,6 +190,7 @@ let package = Package(
187190
"LanguageServerProtocol",
188191
"LanguageServerProtocolJSONRPC",
189192
"SKLogging",
193+
"SKOptions",
190194
"SKSupport",
191195
"SourceKitD",
192196
"SwiftExtensions",
@@ -201,6 +205,7 @@ let package = Package(
201205
name: "SKCoreTests",
202206
dependencies: [
203207
"SKCore",
208+
"SKOptions",
204209
"SKTestSupport",
205210
"ToolchainRegistry",
206211
]
@@ -226,6 +231,19 @@ let package = Package(
226231
]
227232
),
228233

234+
// MARK: SKOptions
235+
236+
.target(
237+
name: "SKOptions",
238+
dependencies: [
239+
"LanguageServerProtocol",
240+
"SKLogging",
241+
"SKSupport",
242+
.product(name: "SwiftToolsSupport-auto", package: "swift-tools-support-core"),
243+
],
244+
exclude: ["CMakeLists.txt"]
245+
),
246+
229247
// MARK: SKSupport
230248

231249
.target(
@@ -258,6 +276,7 @@ let package = Package(
258276
"LanguageServerProtocol",
259277
"SKCore",
260278
"SKLogging",
279+
"SKOptions",
261280
"SwiftExtensions",
262281
"ToolchainRegistry",
263282
.product(name: "SwiftPM-auto", package: "swift-package-manager"),
@@ -271,6 +290,7 @@ let package = Package(
271290
dependencies: [
272291
"LanguageServerProtocol",
273292
"SKCore",
293+
"SKOptions",
274294
"SKSwiftPMWorkspace",
275295
"SKTestSupport",
276296
"SourceKitLSP",
@@ -291,6 +311,7 @@ let package = Package(
291311
"LanguageServerProtocolJSONRPC",
292312
"SKCore",
293313
"SKLogging",
314+
"SKOptions",
294315
"SKSupport",
295316
"SourceKitLSP",
296317
"SwiftExtensions",
@@ -336,6 +357,7 @@ let package = Package(
336357
"SemanticIndex",
337358
"SKCore",
338359
"SKLogging",
360+
"SKOptions",
339361
"SKSupport",
340362
"SKSwiftPMWorkspace",
341363
"SourceKitD",
@@ -364,6 +386,7 @@ let package = Package(
364386
"SemanticIndex",
365387
"SKCore",
366388
"SKLogging",
389+
"SKOptions",
367390
"SKSupport",
368391
"SKTestSupport",
369392
"SourceKitD",

Sources/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ add_subdirectory(LanguageServerProtocolJSONRPC)
99
add_subdirectory(SemanticIndex)
1010
add_subdirectory(SKCore)
1111
add_subdirectory(SKLogging)
12+
add_subdirectory(SKOptions)
1213
add_subdirectory(SKSupport)
1314
add_subdirectory(SKSwiftPMWorkspace)
1415
add_subdirectory(SourceKitLSP)

Sources/Diagnose/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ target_link_libraries(Diagnose PUBLIC
2828
InProcessClient
2929
SKCore
3030
SKLogging
31+
SKOptions
3132
SourceKitD
3233
SwiftExtensions
3334
ToolchainRegistry

Sources/Diagnose/IndexCommand.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ import ArgumentParser
1414
import Foundation
1515
import InProcessClient
1616
import LanguageServerProtocol
17-
import SKCore
17+
import SKOptions
1818
import SKSupport
1919
import SourceKitLSP
2020
import SwiftExtensions

Sources/InProcessClient/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ target_link_libraries(InProcessClient PUBLIC
99
LanguageServerProtocol
1010
SKCore
1111
SKLogging
12+
SKOptions
1213
SourceKitLSP
1314
ToolchainRegistry
1415
)

Sources/InProcessClient/InProcessSourceKitLSPClient.swift

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212

1313
import LanguageServerProtocol
1414
import SKCore
15+
import SKOptions
1516
import SKSupport
1617
import SourceKitLSP
1718
import ToolchainRegistry

Sources/SKCore/CMakeLists.txt

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11

22
add_library(SKCore STATIC
3-
BuildConfiguration.swift
43
BuildServerBuildSystem.swift
54
BuildSystem.swift
65
BuildSystemDelegate.swift
@@ -12,16 +11,15 @@ add_library(SKCore STATIC
1211
IndexTaskID.swift
1312
MainFilesProvider.swift
1413
PathPrefixMapping.swift
15-
SourceKitLSPOptions.swift
16-
SplitShellCommand.swift
17-
WorkspaceType.swift)
14+
SplitShellCommand.swift)
1815
set_target_properties(SKCore PROPERTIES
1916
INTERFACE_INCLUDE_DIRECTORIES ${CMAKE_Swift_MODULE_DIRECTORY})
2017
target_link_libraries(SKCore PUBLIC
2118
BuildServerProtocol
2219
LanguageServerProtocol
2320
LanguageServerProtocolJSONRPC
2421
SKLogging
22+
SKOptions
2523
SKSupport
2624
SourceKitD
2725
SwiftExtensions

Sources/SKCore/FallbackBuildSystem.swift

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ import BuildServerProtocol
1414
import Dispatch
1515
import Foundation
1616
import LanguageServerProtocol
17+
import SKOptions
1718
import SKSupport
1819

1920
import enum PackageLoading.Platform

Sources/SKOptions/CMakeLists.txt

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
2+
add_library(SKOptions STATIC
3+
BuildConfiguration.swift
4+
SourceKitLSPOptions.swift
5+
WorkspaceType.swift)
6+
set_target_properties(SKOptions PROPERTIES
7+
INTERFACE_INCLUDE_DIRECTORIES ${CMAKE_Swift_MODULE_DIRECTORY})
8+
target_link_libraries(SKOptions PUBLIC
9+
LanguageServerProtocol
10+
SKLogging
11+
SKSupport
12+
TSCBasic)

Sources/SKCore/SourceKitLSPOptions.swift renamed to Sources/SKOptions/SourceKitLSPOptions.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -309,7 +309,7 @@ public struct SourceKitLSPOptions: Sendable, Codable {
309309
}
310310

311311
public init?(path: URL?) {
312-
guard let path, let contents = try? String(contentsOf: path, encoding: .utf8) else {
312+
guard let path, let contents = try? Data(contentsOf: path) else {
313313
return nil
314314
}
315315
guard

Sources/SKSwiftPMWorkspace/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ target_link_libraries(SKSwiftPMWorkspace PRIVATE
88
LanguageServerProtocol
99
SKCore
1010
SKLogging
11+
SKOptions
1112
SwiftExtensions
1213
ToolchainRegistry
1314
TSCBasic)

Sources/SKSwiftPMWorkspace/SwiftPMBuildSystem.swift

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ import PackageLoading
2121
import PackageModel
2222
import SKCore
2323
import SKLogging
24+
import SKOptions
2425
import SKSupport
2526
import SourceControl
2627
import SourceKitLSPAPI

Sources/SKTestSupport/IndexedSingleSwiftFileTestProject.swift

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
import Foundation
1414
import LanguageServerProtocol
1515
@_spi(Testing) import SKCore
16+
import SKOptions
1617
import SourceKitLSP
1718
import TSCBasic
1819
import ToolchainRegistry

Sources/SKTestSupport/MultiFileTestProject.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212

1313
import Foundation
1414
import LanguageServerProtocol
15-
import SKCore
15+
import SKOptions
1616
import SourceKitLSP
1717

1818
/// The location of a test file within test workspace.

Sources/SKTestSupport/SkipUnless.swift

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,7 @@
1313
import Foundation
1414
import LanguageServerProtocol
1515
import RegexBuilder
16-
@_spi(Testing) import SKCore
1716
import SKLogging
18-
import SKTestSupport
1917
import SourceKitLSP
2018
import ToolchainRegistry
2119
import XCTest

Sources/SKTestSupport/SwiftPMTestProject.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212

1313
import Foundation
1414
import LanguageServerProtocol
15-
@_spi(Testing) import SKCore
15+
import SKOptions
1616
import SourceKitLSP
1717
import TSCBasic
1818
import ToolchainRegistry

Sources/SKTestSupport/TestSourceKitLSPClient.swift

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,8 @@ import Foundation
1414
import InProcessClient
1515
import LanguageServerProtocol
1616
import LanguageServerProtocolJSONRPC
17-
@_spi(Testing) import SKCore
17+
import SKOptions
1818
import SKSupport
19-
import SKTestSupport
2019
import SourceKitLSP
2120
import SwiftExtensions
2221
import SwiftSyntax

Sources/SKTestSupport/Utils.swift

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@
1212

1313
import Foundation
1414
import LanguageServerProtocol
15-
import SKCore
1615
import TSCBasic
1716

1817
extension Language {

Sources/SemanticIndex/IndexTaskDescription.swift

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,6 @@
1010
//
1111
//===----------------------------------------------------------------------===//
1212

13-
import SKCore
14-
1513
/// Protocol of tasks that are executed on the index task scheduler.
1614
///
1715
/// It is assumed that `IndexTaskDescription` of different types are allowed to execute in parallel.

Sources/SourceKitLSP/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,7 @@ target_link_libraries(SourceKitLSP PUBLIC
8080
SemanticIndex
8181
SKCore
8282
SKLogging
83+
SKOptions
8384
SKSupport
8485
SKSwiftPMWorkspace
8586
SourceKitD

Sources/SourceKitLSP/Clang/ClangLanguageService.swift

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ import LanguageServerProtocol
1414
import LanguageServerProtocolJSONRPC
1515
import SKCore
1616
import SKLogging
17+
import SKOptions
1718
import SKSupport
1819
import SwiftExtensions
1920
import SwiftSyntax

Sources/SourceKitLSP/CreateBuildSystem.swift

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
import LanguageServerProtocol
1414
import SKCore
1515
import SKLogging
16+
import SKOptions
1617
import SKSwiftPMWorkspace
1718
import ToolchainRegistry
1819

Sources/SourceKitLSP/IndexProgressManager.swift

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@
1111
//===----------------------------------------------------------------------===//
1212

1313
import LanguageServerProtocol
14-
import SKCore
1514
import SKLogging
1615
import SKSupport
1716
import SemanticIndex

Sources/SourceKitLSP/LanguageService.swift

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
import Foundation
1414
import LanguageServerProtocol
1515
import SKCore
16+
import SKOptions
1617
import SwiftSyntax
1718
import ToolchainRegistry
1819

Sources/SourceKitLSP/SourceKitIndexDelegate.swift

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@
1212

1313
import Dispatch
1414
import IndexStoreDB
15-
import SKCore
1615
import SKLogging
1716
import SKSupport
1817
import SwiftExtensions

Sources/SourceKitLSP/SourceKitLSPServer.swift

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ import LanguageServerProtocol
1818
import PackageLoading
1919
import SKCore
2020
import SKLogging
21+
import SKOptions
2122
import SKSupport
2223
import SKSwiftPMWorkspace
2324
import SemanticIndex

Sources/SourceKitLSP/Swift/CodeCompletionSession.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@
1212

1313
import Dispatch
1414
import LanguageServerProtocol
15-
import SKCore
1615
import SKLogging
16+
import SKOptions
1717
import SKSupport
1818
import SourceKitD
1919
import SwiftExtensions

Sources/SourceKitLSP/Swift/DiagnosticReportManager.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@
1111
//===----------------------------------------------------------------------===//
1212

1313
import LanguageServerProtocol
14-
import SKCore
1514
import SKLogging
15+
import SKOptions
1616
import SKSupport
1717
import SourceKitD
1818
import SwiftExtensions

Sources/SourceKitLSP/Swift/SwiftLanguageService.swift

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ import IndexStoreDB
1616
import LanguageServerProtocol
1717
import SKCore
1818
import SKLogging
19+
import SKOptions
1920
import SKSupport
2021
import SemanticIndex
2122
import SourceKitD

Sources/SourceKitLSP/TestHooks.swift

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@
1212

1313
import Foundation
1414
import LanguageServerProtocol
15-
import SKCore
1615
import SKSupport
1716
import SKSwiftPMWorkspace
1817
import SemanticIndex

Sources/SourceKitLSP/Workspace.swift

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ import IndexStoreDB
1414
import LanguageServerProtocol
1515
import SKCore
1616
import SKLogging
17+
import SKOptions
1718
import SKSupport
1819
import SemanticIndex
1920
import SwiftExtensions

Sources/sourcekit-lsp/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ target_link_libraries(sourcekit-lsp PRIVATE
77
LanguageServerProtocolJSONRPC
88
SemanticIndex
99
SKCore
10+
SKOptions
1011
SKSupport
1112
SourceKitLSP
1213
ToolchainRegistry

0 commit comments

Comments
 (0)