diff --git a/Sources/ProjectDescription/WorkspaceGenerationOptions.swift b/Sources/ProjectDescription/WorkspaceGenerationOptions.swift index d7aa65a..24ff9c6 100644 --- a/Sources/ProjectDescription/WorkspaceGenerationOptions.swift +++ b/Sources/ProjectDescription/WorkspaceGenerationOptions.swift @@ -121,6 +121,9 @@ extension Workspace { /// Creates configurations for all projects public var configurations: [String: BuildConfiguration.Variant] + /// Suppress objc class duplication warnings when loading plugins. + public var suppressObjcDuplicateClassWarningsDuringPluginLoading: Bool + public init( enableAutomaticXcodeSchemes: Bool?, autogeneratedWorkspaceSchemes: AutogeneratedWorkspaceSchemes, @@ -129,7 +132,9 @@ extension Workspace { autogenerateLocalPodsProjects: AutogenerateLocalPodsProjects, autogenerateLocalPodsSchemes: AutogenerateLocalPodsSchemes, commonSettings: [CommonSettings], - configurations: [String: BuildConfiguration.Variant] + configurations: [String: BuildConfiguration.Variant], + // TODO: Remove default value in next major release + suppressObjcDuplicateClassWarningsDuringPluginLoading: Bool = true ) { self.enableAutomaticXcodeSchemes = enableAutomaticXcodeSchemes self.autogeneratedWorkspaceSchemes = autogeneratedWorkspaceSchemes @@ -139,6 +144,7 @@ extension Workspace { self.autogenerateLocalPodsSchemes = autogenerateLocalPodsSchemes self.commonSettings = commonSettings self.configurations = configurations + self.suppressObjcDuplicateClassWarningsDuringPluginLoading = suppressObjcDuplicateClassWarningsDuringPluginLoading } public static func options( @@ -149,7 +155,8 @@ extension Workspace { autogenerateLocalPodsProjects: AutogenerateLocalPodsProjects = .disabled, autogenerateLocalPodsSchemes: AutogenerateLocalPodsSchemes = .disabled, commonSettings: [CommonSettings] = [], - configurations: [String: BuildConfiguration.Variant] = ["Debug": .debug, "Release": .release] + configurations: [String: BuildConfiguration.Variant] = ["Debug": .debug, "Release": .release], + suppressObjcDuplicateClassWarningsDuringPluginLoading: Bool = true ) -> Self { GenerationOptions( enableAutomaticXcodeSchemes: enableAutomaticXcodeSchemes, @@ -159,7 +166,8 @@ extension Workspace { autogenerateLocalPodsProjects: autogenerateLocalPodsProjects, autogenerateLocalPodsSchemes: autogenerateLocalPodsSchemes, commonSettings: commonSettings, - configurations: configurations + configurations: configurations, + suppressObjcDuplicateClassWarningsDuringPluginLoading: suppressObjcDuplicateClassWarningsDuringPluginLoading ) } }