Skip to content

Commit 92d65bf

Browse files
authored
Hide build system internals with @_spi (swiftlang#7365)
These details should not leak outside of the SwiftPM package. In the (hopefully temporary) absence of `package` access control, we can hide build system-related APIs with `@_spi` annotations.
1 parent 03fef47 commit 92d65bf

Some content is hidden

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

56 files changed

+232
-14
lines changed

Sources/Build/BuildOperation.swift

+8
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,18 @@
1212

1313
@_spi(SwiftPMInternal)
1414
import Basics
15+
16+
@_spi(SwiftPMInternal)
17+
import Build
18+
1519
import LLBuildManifest
1620
import PackageGraph
1721
import PackageLoading
1822
import PackageModel
23+
24+
@_spi(SwiftPMInternal)
1925
import SPMBuildCore
26+
2027
import SPMLLBuild
2128
import Foundation
2229

@@ -36,6 +43,7 @@ import DriverSupport
3643
import SwiftDriver
3744
#endif
3845

46+
@_spi(SwiftPMInternal)
3947
public final class BuildOperation: PackageStructureDelegate, SPMBuildCore.BuildSystem, BuildErrorAdviceProvider {
4048
/// The delegate used by the build system.
4149
public weak var delegate: SPMBuildCore.BuildSystemDelegate?

Sources/Build/BuildOperationBuildSystemDelegateHandler.swift

+3
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,10 @@ import Dispatch
1616
import Foundation
1717
import LLBuildManifest
1818
import PackageModel
19+
20+
@_spi(SwiftPMInternal)
1921
import SPMBuildCore
22+
2023
import SPMLLBuild
2124

2225
import struct TSCBasic.ByteString

Sources/Commands/CommandWorkspaceDelegate.swift

+3
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,10 @@
1111
//===----------------------------------------------------------------------===//
1212

1313
import Basics
14+
15+
@_spi(SwiftPMInternal)
1416
import CoreCommands
17+
1518
import Dispatch
1619
import class Foundation.NSLock
1720
import struct Foundation.URL

Sources/Commands/PackageCommands/APIDiff.swift

+6
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,18 @@
1212

1313
import ArgumentParser
1414
import Basics
15+
16+
@_spi(SwiftPMInternal)
1517
import CoreCommands
18+
1619
import Dispatch
1720
import PackageGraph
1821
import PackageModel
1922
import SourceControl
2023

24+
@_spi(SwiftPMInternal)
25+
import SPMBuildCore
26+
2127
struct DeprecatedAPIDiff: ParsableCommand {
2228
static let configuration = CommandConfiguration(commandName: "experimental-api-diff",
2329
abstract: "Deprecated - use `swift package diagnose-api-breaking-changes` instead",

Sources/Commands/PackageCommands/ArchiveSource.swift

+3
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,10 @@
1212

1313
import ArgumentParser
1414
import Basics
15+
16+
@_spi(SwiftPMInternal)
1517
import CoreCommands
18+
1619
import SourceControl
1720

1821
extension SwiftPackageCommand {

Sources/Commands/PackageCommands/CompletionCommand.swift

+2
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,8 @@
1111
//===----------------------------------------------------------------------===//
1212

1313
import ArgumentParser
14+
15+
@_spi(SwiftPMInternal)
1416
import CoreCommands
1517

1618
import var TSCBasic.stdoutStream

Sources/Commands/PackageCommands/ComputeChecksum.swift

+3
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,10 @@
1212

1313
import ArgumentParser
1414
import Basics
15+
16+
@_spi(SwiftPMInternal)
1517
import CoreCommands
18+
1619
import Workspace
1720

1821
import struct TSCBasic.SHA256

Sources/Commands/PackageCommands/Config.swift

+3
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,10 @@
1212

1313
import ArgumentParser
1414
import Basics
15+
16+
@_spi(SwiftPMInternal)
1517
import CoreCommands
18+
1619
import Workspace
1720

1821
import var TSCBasic.stderrStream

Sources/Commands/PackageCommands/Describe.swift

+3
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,10 @@
1212

1313
import ArgumentParser
1414
import Basics
15+
16+
@_spi(SwiftPMInternal)
1517
import CoreCommands
18+
1619
import Foundation
1720
import PackageModel
1821

Sources/Commands/PackageCommands/DumpCommands.swift

+7
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,16 @@
1212

1313
import ArgumentParser
1414
import Basics
15+
16+
@_spi(SwiftPMInternal)
1517
import CoreCommands
18+
1619
import Foundation
1720
import PackageModel
21+
22+
@_spi(SwiftPMInternal)
23+
import SPMBuildCore
24+
1825
import XCBuildSupport
1926

2027
struct DumpSymbolGraph: SwiftCommand {

Sources/Commands/PackageCommands/EditCommands.swift

+3
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,10 @@
1212

1313
import ArgumentParser
1414
import Basics
15+
16+
@_spi(SwiftPMInternal)
1517
import CoreCommands
18+
1619
import SourceControl
1720

1821
extension SwiftPackageCommand {

Sources/Commands/PackageCommands/Format.swift

+3
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,10 @@
1212

1313
import ArgumentParser
1414
import Basics
15+
16+
@_spi(SwiftPMInternal)
1517
import CoreCommands
18+
1619
import PackageModel
1720

1821
import class TSCBasic.Process

Sources/Commands/PackageCommands/Init.swift

+3
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,10 @@
1212

1313
import ArgumentParser
1414
import Basics
15+
16+
@_spi(SwiftPMInternal)
1517
import CoreCommands
18+
1619
import Workspace
1720
import SPMBuildCore
1821

Sources/Commands/PackageCommands/InstalledPackages.swift

+7
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,16 @@
1111
//===----------------------------------------------------------------------===//
1212

1313
import ArgumentParser
14+
15+
@_spi(SwiftPMInternal)
1416
import CoreCommands
17+
1518
import Foundation
1619
import PackageModel
20+
21+
@_spi(SwiftPMInternal)
22+
import SPMBuildCore
23+
1724
import TSCBasic
1825

1926
extension SwiftPackageCommand {

Sources/Commands/PackageCommands/Learn.swift

+3
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,10 @@
1212

1313
import ArgumentParser
1414
import Basics
15+
16+
@_spi(SwiftPMInternal)
1517
import CoreCommands
18+
1619
import PackageGraph
1720
import PackageModel
1821

Sources/Commands/PackageCommands/PluginCommand.swift

+6
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,13 @@
1212

1313
import ArgumentParser
1414
import Basics
15+
16+
@_spi(SwiftPMInternal)
1517
import CoreCommands
18+
19+
@_spi(SwiftPMInternal)
20+
import SPMBuildCore
21+
1622
import Dispatch
1723
import PackageGraph
1824
import PackageModel

Sources/Commands/PackageCommands/ResetCommands.swift

+2
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,8 @@
1111
//===----------------------------------------------------------------------===//
1212

1313
import ArgumentParser
14+
15+
@_spi(SwiftPMInternal)
1416
import CoreCommands
1517

1618
extension SwiftPackageCommand {

Sources/Commands/PackageCommands/Resolve.swift

+3
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,10 @@
1111
//===----------------------------------------------------------------------===//
1212

1313
import ArgumentParser
14+
15+
@_spi(SwiftPMInternal)
1416
import CoreCommands
17+
1518
import TSCUtility
1619

1720
extension SwiftPackageCommand {

Sources/Commands/PackageCommands/ShowDependencies.swift

+3
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,10 @@
1313

1414
import ArgumentParser
1515
import Basics
16+
17+
@_spi(SwiftPMInternal)
1618
import CoreCommands
19+
1720
import PackageGraph
1821

1922
import class TSCBasic.LocalFileOutputByteStream

Sources/Commands/PackageCommands/SwiftPackageCommand.swift

+3
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,10 @@
1212

1313
import ArgumentParser
1414
import Basics
15+
16+
@_spi(SwiftPMInternal)
1517
import CoreCommands
18+
1619
import Foundation
1720
import PackageGraph
1821
import PackageLoading

Sources/Commands/PackageCommands/ToolsVersionCommand.swift

+3
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,10 @@
1111
//===----------------------------------------------------------------------===//
1212

1313
import ArgumentParser
14+
15+
@_spi(SwiftPMInternal)
1416
import CoreCommands
17+
1518
import PackageLoading
1619
import PackageModel
1720
import Workspace

Sources/Commands/PackageCommands/Update.swift

+3
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,10 @@
1111
//===----------------------------------------------------------------------===//
1212

1313
import ArgumentParser
14+
15+
@_spi(SwiftPMInternal)
1416
import CoreCommands
17+
1518
import Dispatch
1619
import PackageModel
1720
import PackageGraph

Sources/Commands/Snippets/CardStack.swift

+3
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,10 @@
1111
//===----------------------------------------------------------------------===//
1212

1313
import Basics
14+
15+
@_spi(SwiftPMInternal)
1416
import CoreCommands
17+
1518
import PackageGraph
1619
import PackageModel
1720

Sources/Commands/Snippets/Cards/SnippetCard.swift

+7
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,14 @@
1111
//===----------------------------------------------------------------------===//
1212

1313
import Basics
14+
15+
@_spi(SwiftPMInternal)
1416
import CoreCommands
17+
18+
19+
@_spi(SwiftPMInternal)
20+
import SPMBuildCore
21+
1522
import PackageModel
1623

1724
import enum TSCBasic.ProcessEnv

Sources/Commands/Snippets/Cards/SnippetGroupCard.swift

+2
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,9 @@
1010
//
1111
//===----------------------------------------------------------------------===//
1212

13+
@_spi(SwiftPMInternal)
1314
import CoreCommands
15+
1416
import PackageModel
1517

1618
/// A card showing the snippets in a ``SnippetGroup``.

Sources/Commands/Snippets/Cards/TopCard.swift

+3
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,10 @@
1010
//
1111
//===----------------------------------------------------------------------===//
1212

13+
14+
@_spi(SwiftPMInternal)
1315
import CoreCommands
16+
1417
import Foundation
1518
import PackageModel
1619
import PackageGraph

Sources/Commands/SwiftBuildCommand.swift

+8
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,16 @@
1212

1313
import ArgumentParser
1414
import Basics
15+
16+
@_spi(SwiftPMInternal)
1517
import Build
18+
19+
@_spi(SwiftPMInternal)
1620
import CoreCommands
21+
1722
import PackageGraph
23+
24+
@_spi(SwiftPMInternal)
1825
import SPMBuildCore
1926
import XCBuildSupport
2027

@@ -92,6 +99,7 @@ struct BuildCommandOptions: ParsableArguments {
9299
}
93100

94101
/// swift-build command namespace
102+
@_spi(SwiftPMInternal)
95103
public struct SwiftBuildCommand: AsyncSwiftCommand {
96104
public static var configuration = CommandConfiguration(
97105
commandName: "build",

Sources/Commands/SwiftRunCommand.swift

+7
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,17 @@
1212

1313
import ArgumentParser
1414
import Basics
15+
16+
@_spi(SwiftPMInternal)
1517
import CoreCommands
18+
1619
import Foundation
1720
import PackageGraph
1821
import PackageModel
1922

23+
@_spi(SwiftPMInternal)
24+
import SPMBuildCore
25+
2026
import enum TSCBasic.ProcessEnv
2127
import func TSCBasic.exec
2228

@@ -90,6 +96,7 @@ struct RunCommandOptions: ParsableArguments {
9096
}
9197

9298
/// swift-run command namespace
99+
@_spi(SwiftPMInternal)
93100
public struct SwiftRunCommand: AsyncSwiftCommand {
94101
public static var configuration = CommandConfiguration(
95102
commandName: "run",

0 commit comments

Comments
 (0)