Move from SPM libs to TSC (#1230)

* Convert from SPM libs to TSC.

* Edit changelog.

* Fix flaky duplicate configuration name test.

* Fix lint project duplicate config names.
This commit is contained in:
Marek Fořt 2020-04-17 08:24:24 +02:00 committed by GitHub
parent 03e99da47d
commit 8337c02bc9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
422 changed files with 644 additions and 784 deletions

View File

@ -6,6 +6,7 @@ Please, check out guidelines: https://keepachangelog.com/en/1.0.0/
### Changed
- Point swift tools support repo instead of SPM https://github.com/tuist/tuist/pull/1230 by @fortmarek
- Migrate to new argument parser https://github.com/tuist/tuist/pull/1154 by @fortmarek
- Only warn about copying Info.plist when it's the target's Info.plist https://github.com/tuist/tuist/pull/1203 by @sgrgrsn

View File

@ -118,15 +118,6 @@
"version": "0.0.4"
}
},
{
"package": "llbuild",
"repositoryURL": "https://github.com/apple/swift-llbuild.git",
"state": {
"branch": null,
"revision": "f73b84bc1525998e5e267f9d830c1411487ac65e",
"version": "0.2.0"
}
},
{
"package": "swift-log",
"repositoryURL": "https://github.com/apple/swift-log.git",
@ -137,12 +128,12 @@
}
},
{
"package": "SwiftPM",
"repositoryURL": "https://github.com/apple/swift-package-manager",
"package": "swift-tools-support-core",
"repositoryURL": "https://github.com/apple/swift-tools-support-core",
"state": {
"branch": null,
"revision": "9abcc2260438177cecd7cf5185b144d13e74122b",
"version": "0.5.0"
"revision": "ae8ccef3274e38eb5ae3189c357883510da74a01",
"version": "0.1.1"
}
},
{

View File

@ -28,7 +28,6 @@ let package = Package(
],
dependencies: [
.package(url: "https://github.com/tuist/XcodeProj", .upToNextMajor(from: "7.10.0")),
.package(url: "https://github.com/apple/swift-package-manager", .upToNextMajor(from: "0.5.0")),
.package(url: "https://github.com/IBM-Swift/BlueSignals", .upToNextMajor(from: "1.0.21")),
.package(url: "https://github.com/ReactiveX/RxSwift.git", .upToNextMajor(from: "5.0.1")),
.package(url: "https://github.com/rnine/Checksum.git", .upToNextMajor(from: "1.0.2")),
@ -38,12 +37,13 @@ let package = Package(
.package(url: "https://github.com/stencilproject/Stencil", .branch("master")),
.package(url: "https://github.com/kishikawakatsumi/KeychainAccess.git", .upToNextMajor(from: "4.1.0")),
.package(url: "https://github.com/httpswift/swifter.git", .upToNextMajor(from: "1.4.7")),
.package(url: "https://github.com/apple/swift-tools-support-core", .upToNextMinor(from: "0.1.1")),
.package(url: "https://github.com/apple/swift-argument-parser", .upToNextMinor(from: "0.0.4")),
],
targets: [
.target(
name: "TuistCore",
dependencies: ["SPMUtility", "TuistSupport", "XcodeProj"]
dependencies: ["SwiftToolsSupport", "TuistSupport", "XcodeProj"]
),
.target(
name: "TuistCoreTesting",
@ -59,7 +59,7 @@ let package = Package(
),
.target(
name: "TuistKit",
dependencies: ["XcodeProj", "SPMUtility", "ArgumentParser", "TuistSupport", "TuistGenerator", "TuistCache", "TuistAutomation", "ProjectDescription", "Signals", "RxSwift", "RxBlocking", "Checksum", "TuistLoader", "TuistInsights", "TuistScaffold", "TuistSigning", "TuistCloud"]
dependencies: ["XcodeProj", "SwiftToolsSupport", "ArgumentParser", "TuistSupport", "TuistGenerator", "TuistCache", "TuistAutomation", "ProjectDescription", "Signals", "RxSwift", "RxBlocking", "Checksum", "TuistLoader", "TuistInsights", "TuistScaffold", "TuistSigning", "TuistCloud"]
),
.testTarget(
name: "TuistKitTests",
@ -75,7 +75,7 @@ let package = Package(
),
.target(
name: "TuistEnvKit",
dependencies: ["ArgumentParser", "SPMUtility", "TuistSupport", "RxSwift", "RxBlocking"]
dependencies: ["ArgumentParser", "SwiftToolsSupport", "TuistSupport", "RxSwift", "RxBlocking"]
),
.testTarget(
name: "TuistEnvKitTests",
@ -95,11 +95,11 @@ let package = Package(
),
.target(
name: "TuistSupport",
dependencies: ["SPMUtility", "RxSwift", "RxRelay", "Logging", "KeychainAccess", "Swifter", "Signals"]
dependencies: ["SwiftToolsSupport", "RxSwift", "RxRelay", "Logging", "KeychainAccess", "Swifter", "Signals"]
),
.target(
name: "TuistSupportTesting",
dependencies: ["TuistSupport", "SPMUtility"]
dependencies: ["TuistSupport", "SwiftToolsSupport"]
),
.testTarget(
name: "TuistSupportTests",
@ -111,7 +111,7 @@ let package = Package(
),
.target(
name: "TuistGenerator",
dependencies: ["XcodeProj", "SPMUtility", "TuistCore", "TuistSupport"]
dependencies: ["XcodeProj", "SwiftToolsSupport", "TuistCore", "TuistSupport"]
),
.target(
name: "TuistGeneratorTesting",
@ -127,7 +127,7 @@ let package = Package(
),
.target(
name: "TuistCache",
dependencies: ["XcodeProj", "SPMUtility", "TuistCore", "TuistSupport", "Checksum", "RxSwift"]
dependencies: ["XcodeProj", "SwiftToolsSupport", "TuistCore", "TuistSupport", "Checksum", "RxSwift"]
),
.testTarget(
name: "TuistCacheTests",
@ -135,11 +135,11 @@ let package = Package(
),
.target(
name: "TuistCacheTesting",
dependencies: ["TuistCache", "SPMUtility", "TuistCore", "RxTest", "RxSwift"]
dependencies: ["TuistCache", "SwiftToolsSupport", "TuistCore", "RxTest", "RxSwift"]
),
.target(
name: "TuistCloud",
dependencies: ["XcodeProj", "SPMUtility", "TuistCore", "TuistSupport", "Checksum", "RxSwift"]
dependencies: ["XcodeProj", "SwiftToolsSupport", "TuistCore", "TuistSupport", "Checksum", "RxSwift"]
),
.testTarget(
name: "TuistCloudTests",
@ -147,7 +147,7 @@ let package = Package(
),
.target(
name: "TuistCloudTesting",
dependencies: ["TuistCloud", "SPMUtility", "TuistCore", "RxTest", "RxSwift"]
dependencies: ["TuistCloud", "SwiftToolsSupport", "TuistCore", "RxTest", "RxSwift"]
),
.testTarget(
name: "TuistCacheIntegrationTests",
@ -155,7 +155,7 @@ let package = Package(
),
.target(
name: "TuistScaffold",
dependencies: ["SPMUtility", "TuistCore", "TuistSupport", "Stencil"]
dependencies: ["SwiftToolsSupport", "TuistCore", "TuistSupport", "Stencil"]
),
.target(
name: "TuistScaffoldTesting",
@ -171,7 +171,7 @@ let package = Package(
),
.target(
name: "TuistAutomation",
dependencies: ["XcodeProj", "SPMUtility", "TuistCore", "TuistSupport", "XcbeautifyLib"]
dependencies: ["XcodeProj", "SwiftToolsSupport", "TuistCore", "TuistSupport", "XcbeautifyLib"]
),
.testTarget(
name: "TuistAutomationTests",
@ -183,7 +183,7 @@ let package = Package(
),
.target(
name: "TuistInsights",
dependencies: ["XcodeProj", "SPMUtility", "TuistCore", "TuistSupport", "XcbeautifyLib"]
dependencies: ["XcodeProj", "SwiftToolsSupport", "TuistCore", "TuistSupport", "XcbeautifyLib"]
),
.testTarget(
name: "TuistInsightsTests",
@ -203,11 +203,11 @@ let package = Package(
),
.target(
name: "TuistLoader",
dependencies: ["XcodeProj", "SPMUtility", "TuistCore", "TuistSupport", "ProjectDescription"]
dependencies: ["XcodeProj", "SwiftToolsSupport", "TuistCore", "TuistSupport", "ProjectDescription"]
),
.target(
name: "TuistLoaderTesting",
dependencies: ["TuistLoader", "SPMUtility", "TuistCore", "ProjectDescription"]
dependencies: ["TuistLoader", "SwiftToolsSupport", "TuistCore", "ProjectDescription"]
),
.testTarget(
name: "TuistLoaderTests",

View File

@ -1,6 +1,6 @@
import Basic
import Foundation
import RxSwift
import TSCBasic
import TuistCore
import TuistSupport
import XcbeautifyLib

View File

@ -1,6 +1,6 @@
import Basic
import Foundation
import RxSwift
import TSCBasic
public final class Cache: CacheStoraging {
// MARK: - Attributes

View File

@ -1,6 +1,6 @@
import Basic
import Foundation
import RxSwift
import TSCBasic
import TuistCore
import TuistSupport

View File

@ -1,6 +1,6 @@
import Basic
import Foundation
import RxSwift
import TSCBasic
import TuistSupport
enum CacheLocalStorageError: FatalError, Equatable {

View File

@ -1,6 +1,6 @@
import Basic
import Foundation
import RxSwift
import TSCBasic
public protocol CacheStoraging {
/// Returns if the target with the given hash exists in the cache.

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
import TuistCore
import TuistSupport

View File

@ -1,7 +1,7 @@
import Basic
import Foundation
import RxBlocking
import RxSwift
import TSCBasic
import TuistCore
import TuistSupport

View File

@ -1,6 +1,6 @@
import Basic
import Foundation
import RxSwift
import TSCBasic
import TuistCore
import TuistSupport
@ -77,69 +77,69 @@ public final class XCFrameworkBuilder: XCFrameworkBuilding {
let scheme = target.name.spm_shellEscaped()
// Create temporary directories
let outputDirectory = try TemporaryDirectory(removeTreeOnDeinit: false)
let temporaryPath = try TemporaryDirectory(removeTreeOnDeinit: false)
return try withTemporaryDirectories { outputDirectory, temporaryPath in
logger.notice("Building .xcframework for \(target.name)...", metadata: .section)
logger.notice("Building .xcframework for \(target.name)...", metadata: .section)
// Build for the device
// Without the BUILD_LIBRARY_FOR_DISTRIBUTION argument xcodebuild doesn't generate the .swiftinterface file
let deviceArchivePath = temporaryPath.path.appending(component: "device.xcarchive")
let deviceArchiveObservable = xcodeBuildController.archive(projectTarget,
scheme: scheme,
clean: true,
archivePath: deviceArchivePath,
arguments: [
.sdk(target.platform.xcodeDeviceSDK),
.derivedDataPath(temporaryPath.path),
.buildSetting("SKIP_INSTALL", "NO"),
.buildSetting("BUILD_LIBRARY_FOR_DISTRIBUTION", "YES"),
])
.printFormattedOutput()
.do(onSubscribed: {
logger.notice("Building \(target.name) for device...", metadata: .subsection)
})
// Build for the simulator
var simulatorArchiveObservable: Observable<SystemEvent<XcodeBuildOutput>>?
var simulatorArchivePath: AbsolutePath?
if target.platform.hasSimulators {
simulatorArchivePath = temporaryPath.path.appending(component: "simulator.xcarchive")
simulatorArchiveObservable = xcodeBuildController.archive(projectTarget,
scheme: scheme,
clean: false,
archivePath: simulatorArchivePath!,
arguments: [
.sdk(target.platform.xcodeSimulatorSDK!),
.derivedDataPath(temporaryPath.path),
.buildSetting("SKIP_INSTALL", "NO"),
.buildSetting("BUILD_LIBRARY_FOR_DISTRIBUTION", "YES"),
])
// Build for the device
// Without the BUILD_LIBRARY_FOR_DISTRIBUTION argument xcodebuild doesn't generate the .swiftinterface file
let deviceArchivePath = temporaryPath.appending(component: "device.xcarchive")
let deviceArchiveObservable = xcodeBuildController.archive(projectTarget,
scheme: scheme,
clean: true,
archivePath: deviceArchivePath,
arguments: [
.sdk(target.platform.xcodeDeviceSDK),
.derivedDataPath(temporaryPath),
.buildSetting("SKIP_INSTALL", "NO"),
.buildSetting("BUILD_LIBRARY_FOR_DISTRIBUTION", "YES"),
])
.printFormattedOutput()
.do(onSubscribed: {
logger.notice("Building \(target.name) for simulator", metadata: .subsection)
logger.notice("Building \(target.name) for device...", metadata: .subsection)
})
// Build for the simulator
var simulatorArchiveObservable: Observable<SystemEvent<XcodeBuildOutput>>?
var simulatorArchivePath: AbsolutePath?
if target.platform.hasSimulators {
simulatorArchivePath = temporaryPath.appending(component: "simulator.xcarchive")
simulatorArchiveObservable = xcodeBuildController.archive(projectTarget,
scheme: scheme,
clean: false,
archivePath: simulatorArchivePath!,
arguments: [
.sdk(target.platform.xcodeSimulatorSDK!),
.derivedDataPath(temporaryPath),
.buildSetting("SKIP_INSTALL", "NO"),
.buildSetting("BUILD_LIBRARY_FOR_DISTRIBUTION", "YES"),
])
.printFormattedOutput()
.do(onSubscribed: {
logger.notice("Building \(target.name) for simulator", metadata: .subsection)
})
}
// Build the xcframework
var frameworkpaths = [frameworkPath(fromArchivePath: deviceArchivePath, productName: target.productName)]
if let simulatorArchivePath = simulatorArchivePath {
frameworkpaths.append(frameworkPath(fromArchivePath: simulatorArchivePath, productName: target.productName))
}
let xcframeworkPath = outputDirectory.appending(component: "\(target.productName).xcframework")
let xcframeworkObservable = xcodeBuildController.createXCFramework(frameworks: frameworkpaths, output: xcframeworkPath)
.do(onSubscribed: {
logger.notice("Exporting xcframework for \(target.platform.caseValue)", metadata: .subsection)
})
return deviceArchiveObservable
.concat(simulatorArchiveObservable ?? Observable.empty())
.concat(xcframeworkObservable)
.ignoreElements()
.andThen(Observable.just(xcframeworkPath))
.do(afterCompleted: {
try FileHandler.shared.delete(temporaryPath)
})
}
// Build the xcframework
var frameworkpaths = [frameworkPath(fromArchivePath: deviceArchivePath, productName: target.productName)]
if let simulatorArchivePath = simulatorArchivePath {
frameworkpaths.append(frameworkPath(fromArchivePath: simulatorArchivePath, productName: target.productName))
}
let xcframeworkPath = outputDirectory.path.appending(component: "\(target.productName).xcframework")
let xcframeworkObservable = xcodeBuildController.createXCFramework(frameworks: frameworkpaths, output: xcframeworkPath)
.do(onSubscribed: {
logger.notice("Exporting xcframework for \(target.platform.caseValue)", metadata: .subsection)
})
return deviceArchiveObservable
.concat(simulatorArchiveObservable ?? Observable.empty())
.concat(xcframeworkObservable)
.ignoreElements()
.andThen(Observable.just(xcframeworkPath))
.do(afterCompleted: {
try FileHandler.shared.delete(temporaryPath.path)
})
}
/// Returns the path to the framework inside the archive.

View File

@ -1,6 +1,6 @@
import Basic
import Foundation
import RxSwift
import TSCBasic
import TuistCache
import TuistCore

View File

@ -1,6 +1,6 @@
import Basic
import Foundation
import RxSwift
import TSCBasic
import TuistCache
import TuistCore

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
/// It represents arguments that can be passed to the xcodebuild command.
public enum XcodeBuildArgument: Equatable, CustomStringConvertible {

View File

@ -1,6 +1,6 @@
import Basic
import Foundation
import RxSwift
import TSCBasic
import TuistSupport
public protocol XcodeBuildControlling {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
public enum XcodeBuildTarget {
/// The target is an Xcode project.

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
/// File Descriptor
///

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
/// Side Effect Descriptor
///

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
import TuistSupport
enum GraphError: FatalError {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
struct GraphCircularDetectorNode: Hashable {
let path: AbsolutePath

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
public enum GraphDependencyReference: Equatable, Comparable, Hashable {
case xcframework(

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
import TuistSupport
public protocol GraphLoading: AnyObject {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
protocol GraphLoaderCaching: AnyObject {
// MARK: - Projects

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
import TuistSupport
enum GraphLoadingError: FatalError, Equatable {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
/// A protocol that defines an interface to map dependency graphs.
public protocol GraphMapping {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
/// Target Node Graph Mapper
///

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
public class CocoaPodsNode: GraphNode {
/// Path to the Podfile.

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
import TuistSupport
public class FrameworkNode: PrecompiledNode {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
import TuistSupport
public class GraphNode: Equatable, Hashable, Encodable, CustomStringConvertible {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
import TuistSupport
public class LibraryNode: PrecompiledNode {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
import TuistSupport
/// Node specifying a product dependency on a swift package

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
import TuistSupport
public class PrecompiledNode: GraphNode {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
import TuistSupport
public class SDKNode: GraphNode {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
import TuistSupport
public class TargetNode: GraphNode {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
import TuistSupport
public class XCFrameworkNode: PrecompiledNode {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
import TuistSupport
protocol FrameworkMetadataProviding: PrecompiledMetadataProviding {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
import TuistSupport
protocol LibraryMetadataProviding: PrecompiledMetadataProviding {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
import TuistSupport
enum PrecompiledMetadataProviderError: FatalError, Equatable {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
import TuistSupport
enum XCFrameworkMetadataProviderError: FatalError, Equatable {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
public struct ArchiveAction: Equatable {
// MARK: - Attributes

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
public struct BuildAction: Equatable {
// MARK: - Attributes

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
import TuistSupport
/// This model allows to configure Tuist.

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
import TuistSupport
public struct CoreDataModel: Equatable {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
public enum SDKStatus {
case required

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
public struct ExecutionAction: Equatable {
// MARK: - Attributes

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
public enum FileElement: Equatable {
case file(path: AbsolutePath)

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
import TuistSupport
import XcodeProj

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
import TuistSupport
public enum InfoPlist: Equatable {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
import XcodeProj
public enum Package: Equatable {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
import TuistSupport
public class Project: Equatable, CustomStringConvertible {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
public struct RunAction: Equatable {
// MARK: - Attributes

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
public struct Scheme: Equatable {
// MARK: - Attributes

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
import TuistSupport
public enum SettingValue: ExpressibleByStringLiteral, ExpressibleByArrayLiteral, Equatable {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
import TuistSupport
public struct Target: Equatable, Hashable {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
import TuistSupport
/// It represents a target script build phase

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
public struct TargetReference: Hashable {
public var projectPath: AbsolutePath

View File

@ -1,4 +1,4 @@
import Basic
import TSCBasic
public struct Template: Equatable {
public let description: String

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
public struct TestAction: Equatable {
// MARK: - Attributes

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
public struct TestableTarget: Equatable {
public let target: TargetReference

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
import TuistSupport
public struct Workspace: Equatable {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
/// It represents th Info.plist contained in an .xcframework bundle.
public struct XCFrameworkInfoPlist: Codable, Equatable {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
import TuistSupport
enum FrameworkNodeLoaderError: FatalError, Equatable {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
import TuistSupport
enum LibraryNodeLoaderError: FatalError, Equatable {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
import TuistSupport
enum XCFrameworkNodeLoaderError: FatalError, Equatable {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
/// Entity responsible for providing generator models
///

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
import TuistSupport
public protocol RootDirectoryLocating {

View File

@ -1,6 +1,6 @@
import Basic
import Foundation
import RxSwift
import TSCBasic
import TuistCore
import TuistSupport
@testable import TuistSupportTesting

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
import TuistCore
import TuistSupportTesting
import XCTest

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
@testable import TuistCore

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
@testable import TuistCore

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
@testable import TuistCore
public extension Graph {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
import TuistCore
public extension GraphDependencyReference {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
@testable import TuistCore

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
@testable import TuistCore
public final class MockGraphLoader: GraphLoading {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
@testable import TuistCore
public final class MockGraphLoaderCache: GraphLoaderCaching {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
@testable import TuistCore

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
@testable import TuistCore

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
@testable import TuistCore

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
@testable import TuistCore
public final class MockFrameworkMetadataProvider: MockPrecompiledMetadataProvider, FrameworkMetadataProviding {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
@testable import TuistCore
public final class MockLibraryMetadataProvider: MockPrecompiledMetadataProvider, LibraryMetadataProviding {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
@testable import TuistCore
public class MockPrecompiledMetadataProvider: PrecompiledMetadataProviding {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
@testable import TuistCore
public final class MockXCFrameworkMetadataProvider: MockPrecompiledMetadataProvider, XCFrameworkMetadataProviding {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
@testable import TuistCore
public extension AnalyzeAction {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
@testable import TuistCore
public extension ArchiveAction {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
@testable import TuistCore
public extension Arguments {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
@testable import TuistCore
public extension BuildAction {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
@testable import TuistCore
public extension Config {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
@testable import TuistCore
public extension Headers {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
@testable import TuistCore
public extension ProfileAction {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
@testable import TuistCore
public extension Project {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
@testable import TuistCore
public extension RunAction {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
@testable import TuistCore
public extension Scheme {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
@testable import TuistCore
public extension Configuration {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
@testable import TuistCore
public extension Target {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
@testable import TuistCore
extension Template {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
@testable import TuistCore
public extension TestAction {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
@testable import TuistCore
public extension Workspace {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
import TuistCore
public final class MockFrameworkNodeLoader: FrameworkNodeLoading {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
import TuistCore
public final class MockLibraryNodeLoader: LibraryNodeLoading {

View File

@ -1,5 +1,5 @@
import Basic
import Foundation
import TSCBasic
import TuistCore
public final class MockXCFrameworkNodeLoader: XCFrameworkNodeLoading {

Some files were not shown because too many files have changed in this diff Show More