Module

WorkspaceConfiguration

The root API used in configuration files.

Declaration

.target(name: "WorkspaceConfiguration")

Overview

Workspace can be configured by placing a Swift file named Workspace.swift in the project root.

The contents of a configuration file might look something like this:

import WorkspaceConfiguration /* Exernal packages can be imported with this syntax: import [module] // [package], [url], [version], [product] */ import SDGControlFlow // SDGCornerstone, https://github.com/SDGGiesbrecht/SDGCornerstone, 0.10.0, SDGControlFlow let configuration = WorkspaceConfiguration() configuration.optIntoAllTasks() configuration.supportedPlatforms = [.macOS, .windows, .ubuntu, .android] configuration.documentation.currentVersion = Version(1, 0, 0) configuration.documentation.projectWebsite = URL(string: "project.uk") configuration.documentation.documentationURL = URL(string: "project.uk/Documentation") configuration.documentation.repositoryURL = URL(string: "https://github.com/User/Project") configuration.documentation.api.yearFirstPublished = 2017 configuration.documentation.localisations = ["🇬🇧EN", "🇺🇸EN", "🇨🇦EN", "fr", "es"] configuration.documentation.api.copyrightNotice = Lazy<[LocalisationIdentifier: StrictString]>( resolve: { configuration in return [ "🇬🇧EN": "Copyright #dates \(configuration.documentation.primaryAuthor!).", "🇺🇸EN": "Copyright #dates \(configuration.documentation.primaryAuthor!).", "🇨🇦EN": "Copyright #dates \(configuration.documentation.primaryAuthor!).", "fr": "Droit d’auteur #dates \(configuration.documentation.primaryAuthor!).", "es": "Derecho de autor #dates \(configuration.documentation.primaryAuthor!).", ] }) configuration.documentation.primaryAuthor = "John Doe"

Types

APIDocumentationConfiguration

Options related to API documentation.

ContinuousIntegrationConfiguration

Options related to continuous integration.

CustomTask

A custom task.

DocumentationConfiguration

Options related to documentation.

FileHeaderConfiguration

Options related to file headers.

GitConfiguration

Options related to Git.

GitHubConfiguration

Options related to GitHub.

IssueTemplate

A GitHub issue template.

Lazy<Option> where Option : Codable

An option which can be resolved lazily.

License

A project license.

LicenseConfiguration

Options related to licensing.

LocalizationIdentifier

A localisation identifier; either an IETF language tag or a language icon.

Markdown

Markdown source.

PackageManifest

Information from the package manifest.

Platform

A platform.

ProofreadingConfiguration

Options related to proofreading.

ProofreadingRule

A proofreading rule.

ReadMeConfiguration

Options related to the project read‐me.

#if !os(WASI)
RelatedProjectEntry

An entry for the related projects list.

RepositoryConfiguration

Options related to the project repository.

TestCoverageExemptionToken

A test coverage exemption token.

TestingConfiguration

Options related to building and testing.

UnicodeRuleScope

A scope of application for the unicode rule.

WorkspaceConfiguration

The root API used in configuration files.

WorkspaceContext

External information about the project.

XcodeConfiguration

Options related to Xcode.

Extensions

macOS CentOS Ubuntu Amazon Linux