Build Information
Successful build of ReadingTimePublishPlugin, reference 0.3.0 (0a0bf1
), with Swift 6.0 for macOS (SPM) on 2 Nov 2024 20:48:26 UTC.
Swift 6 data race errors: 2
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Build Log
========================================
RunAll
========================================
Builder version: 4.56.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/alexito4/ReadingTimePublishPlugin.git
Reference: 0.3.0
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/alexito4/ReadingTimePublishPlugin
* tag 0.3.0 -> FETCH_HEAD
HEAD is now at 0a0bf14 fixed readme
Cloned https://github.com/alexito4/ReadingTimePublishPlugin.git
Revision (git rev-parse @):
0a0bf141a5b626c2444601cf0ed7b2bfcfdabcdf
SUCCESS checkout https://github.com/alexito4/ReadingTimePublishPlugin.git at 0.3.0
Fetching https://github.com/johnsundell/plot.git
Fetching https://github.com/johnsundell/codextended.git
Fetching https://github.com/johnsundell/collectionConcurrencyKit.git
Fetching https://github.com/johnsundell/ink.git
Fetching https://github.com/johnsundell/shellout.git
Fetching https://github.com/johnsundell/files.git
Fetching https://github.com/johnsundell/sweep.git
[3/116] Fetching sweep
[26/2202] Fetching sweep, plot
[214/2383] Fetching sweep, plot, codextended
[247/4288] Fetching sweep, plot, codextended, ink
[322/5248] Fetching sweep, plot, codextended, ink, shellout
[466/5331] Fetching sweep, plot, codextended, ink, shellout, collectionconcurrencykit
[478/6562] Fetching sweep, plot, codextended, ink, shellout, collectionconcurrencykit, files
Fetched https://github.com/johnsundell/collectionConcurrencyKit.git from cache (0.94s)
Fetched https://github.com/johnsundell/codextended.git from cache (0.94s)
Fetching https://github.com/johnsundell/publish.git
[6151/6298] Fetching sweep, plot, ink, shellout, files
Fetched https://github.com/johnsundell/plot.git from cache (0.97s)
[4077/4212] Fetching sweep, ink, shellout, files
Fetched https://github.com/johnsundell/shellout.git from cache (0.98s)
[3216/3252] Fetching sweep, ink, files
Fetched https://github.com/johnsundell/files.git from cache (1.01s)
Fetched https://github.com/johnsundell/sweep.git from cache (1.01s)
Fetched https://github.com/johnsundell/ink.git from cache (1.01s)
[1/2895] Fetching publish
Fetched https://github.com/johnsundell/publish.git from cache (1.02s)
Computing version for https://github.com/johnsundell/publish.git
Computed https://github.com/johnsundell/publish.git at 0.9.0 (0.64s)
Computing version for https://github.com/johnsundell/collectionConcurrencyKit.git
Computed https://github.com/johnsundell/collectionConcurrencyKit.git at 0.2.0 (0.59s)
Computing version for https://github.com/johnsundell/sweep.git
Computed https://github.com/johnsundell/sweep.git at 0.4.0 (0.60s)
Computing version for https://github.com/johnsundell/shellout.git
Computed https://github.com/johnsundell/shellout.git at 2.3.0 (2.49s)
Computing version for https://github.com/johnsundell/codextended.git
Computed https://github.com/johnsundell/codextended.git at 0.3.0 (0.62s)
Computing version for https://github.com/johnsundell/files.git
Computed https://github.com/johnsundell/files.git at 4.2.0 (0.60s)
Computing version for https://github.com/johnsundell/plot.git
Computed https://github.com/johnsundell/plot.git at 0.11.0 (0.60s)
Computing version for https://github.com/johnsundell/ink.git
Computed https://github.com/johnsundell/ink.git at 0.5.1 (0.67s)
Creating working copy for https://github.com/johnsundell/ink.git
Working copy of https://github.com/johnsundell/ink.git resolved at 0.5.1
Creating working copy for https://github.com/johnsundell/shellout.git
Working copy of https://github.com/johnsundell/shellout.git resolved at 2.3.0
Creating working copy for https://github.com/johnsundell/publish.git
Working copy of https://github.com/johnsundell/publish.git resolved at 0.9.0
Creating working copy for https://github.com/johnsundell/files.git
Working copy of https://github.com/johnsundell/files.git resolved at 4.2.0
Creating working copy for https://github.com/johnsundell/sweep.git
Working copy of https://github.com/johnsundell/sweep.git resolved at 0.4.0
Creating working copy for https://github.com/johnsundell/plot.git
Working copy of https://github.com/johnsundell/plot.git resolved at 0.11.0
Creating working copy for https://github.com/johnsundell/codextended.git
Working copy of https://github.com/johnsundell/codextended.git resolved at 0.3.0
Creating working copy for https://github.com/johnsundell/collectionConcurrencyKit.git
Working copy of https://github.com/johnsundell/collectionConcurrencyKit.git resolved at 0.2.0
========================================
ResolveProductDependencies
========================================
Resolving dependencies ...
{
"identity": ".resolve-product-dependencies",
"name": "resolve-dependencies",
"url": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
"dependencies": [
{
"identity": "readingtimepublishplugin",
"name": "ReadingTimePublishPlugin",
"url": "https://github.com/alexito4/ReadingTimePublishPlugin.git",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/ReadingTimePublishPlugin",
"dependencies": [
{
"identity": "publish",
"name": "Publish",
"url": "https://github.com/johnsundell/publish.git",
"version": "0.9.0",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/publish",
"dependencies": [
{
"identity": "ink",
"name": "Ink",
"url": "https://github.com/johnsundell/ink.git",
"version": "0.6.0",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/ink",
"dependencies": [
]
},
{
"identity": "plot",
"name": "Plot",
"url": "https://github.com/johnsundell/plot.git",
"version": "0.14.0",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/plot",
"dependencies": [
]
},
{
"identity": "files",
"name": "Files",
"url": "https://github.com/johnsundell/files.git",
"version": "4.2.0",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/files",
"dependencies": [
]
},
{
"identity": "codextended",
"name": "Codextended",
"url": "https://github.com/johnsundell/codextended.git",
"version": "0.3.0",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/codextended",
"dependencies": [
]
},
{
"identity": "shellout",
"name": "ShellOut",
"url": "https://github.com/johnsundell/shellout.git",
"version": "2.3.0",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/shellout",
"dependencies": [
]
},
{
"identity": "sweep",
"name": "Sweep",
"url": "https://github.com/johnsundell/sweep.git",
"version": "0.4.0",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/sweep",
"dependencies": [
]
},
{
"identity": "collectionconcurrencykit",
"name": "CollectionConcurrencyKit",
"url": "https://github.com/johnsundell/collectionConcurrencyKit.git",
"version": "0.2.0",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/collectionConcurrencyKit",
"dependencies": [
]
}
]
}
]
}
]
}
Fetching https://github.com/alexito4/ReadingTimePublishPlugin.git
[1/136] Fetching readingtimepublishplugin
Fetched https://github.com/alexito4/ReadingTimePublishPlugin.git from cache (0.67s)
Fetching https://github.com/johnsundell/publish.git from cache
Fetched https://github.com/johnsundell/publish.git from cache (0.47s)
Computing version for https://github.com/johnsundell/publish.git
Computed https://github.com/johnsundell/publish.git at 0.9.0 (0.03s)
Fetching https://github.com/johnsundell/sweep.git from cache
Fetching https://github.com/johnsundell/codextended.git from cache
Fetching https://github.com/johnsundell/files.git from cache
Fetching https://github.com/johnsundell/ink.git from cache
Fetching https://github.com/johnsundell/shellout.git from cache
Fetching https://github.com/johnsundell/collectionConcurrencyKit.git from cache
Fetching https://github.com/johnsundell/plot.git from cache
Fetched https://github.com/johnsundell/codextended.git from cache (0.49s)
Fetched https://github.com/johnsundell/files.git from cache (0.51s)
Fetched https://github.com/johnsundell/sweep.git from cache (0.54s)
Fetched https://github.com/johnsundell/collectionConcurrencyKit.git from cache (0.53s)
Fetched https://github.com/johnsundell/shellout.git from cache (0.54s)
Fetched https://github.com/johnsundell/ink.git from cache (0.54s)
Fetched https://github.com/johnsundell/plot.git from cache (0.54s)
Computing version for https://github.com/johnsundell/sweep.git
Computed https://github.com/johnsundell/sweep.git at 0.4.0 (0.03s)
Computing version for https://github.com/johnsundell/shellout.git
Computed https://github.com/johnsundell/shellout.git at 2.3.0 (0.02s)
Computing version for https://github.com/johnsundell/collectionConcurrencyKit.git
Computed https://github.com/johnsundell/collectionConcurrencyKit.git at 0.2.0 (0.02s)
Computing version for https://github.com/johnsundell/codextended.git
Computed https://github.com/johnsundell/codextended.git at 0.3.0 (0.03s)
Computing version for https://github.com/johnsundell/files.git
Computed https://github.com/johnsundell/files.git at 4.2.0 (0.03s)
Computing version for https://github.com/johnsundell/ink.git
Computed https://github.com/johnsundell/ink.git at 0.6.0 (0.03s)
Computing version for https://github.com/johnsundell/plot.git
Computed https://github.com/johnsundell/plot.git at 0.14.0 (0.02s)
Creating working copy for https://github.com/johnsundell/ink.git
Working copy of https://github.com/johnsundell/ink.git resolved at 0.6.0
Creating working copy for https://github.com/johnsundell/plot.git
Working copy of https://github.com/johnsundell/plot.git resolved at 0.14.0
Creating working copy for https://github.com/johnsundell/files.git
Working copy of https://github.com/johnsundell/files.git resolved at 4.2.0
Creating working copy for https://github.com/johnsundell/collectionConcurrencyKit.git
Working copy of https://github.com/johnsundell/collectionConcurrencyKit.git resolved at 0.2.0
Creating working copy for https://github.com/alexito4/ReadingTimePublishPlugin.git
Working copy of https://github.com/alexito4/ReadingTimePublishPlugin.git resolved at 0.3.0 (0a0bf14)
Creating working copy for https://github.com/johnsundell/publish.git
Working copy of https://github.com/johnsundell/publish.git resolved at 0.9.0
Creating working copy for https://github.com/johnsundell/codextended.git
Working copy of https://github.com/johnsundell/codextended.git resolved at 0.3.0
Creating working copy for https://github.com/johnsundell/sweep.git
Working copy of https://github.com/johnsundell/sweep.git resolved at 0.4.0
Creating working copy for https://github.com/johnsundell/shellout.git
Working copy of https://github.com/johnsundell/shellout.git resolved at 2.3.0
warning: '.resolve-product-dependencies': dependency 'readingtimepublishplugin' is not used by any target
Found 1 product dependencies
- Publish
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.0
Building package at path: $PWD
https://github.com/alexito4/ReadingTimePublishPlugin.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Building for debugging...
[0/10] Write sources
[9/10] Write swift-version--7754E27361AE5C74.txt
[11/112] Emitting module CollectionConcurrencyKit
[12/112] Compiling CollectionConcurrencyKit CollectionConcurrencyKit.swift
[13/112] Emitting module ShellOut
[14/112] Compiling Plot HTMLListStyle.swift
[15/112] Compiling Plot HTMLVideoFormat.swift
[16/112] Compiling Plot HTMLViewportWidthMode.swift
[17/115] Compiling Plot HTMLFormMethod.swift
[18/115] Compiling Plot HTMLInputType.swift
[19/115] Compiling Plot HTMLLinkRelationship.swift
[20/115] Compiling Plot DocumentEncoding.swift
[21/115] Compiling Plot Element.swift
[22/115] Compiling Plot ElementClosingMode.swift
[23/115] Compiling Plot HTMLButtonType.swift
[24/115] Compiling Plot HTMLComponents.swift
[25/115] Compiling Plot HTMLElements.swift
[26/115] Compiling Plot HTMLFormContentType.swift
[27/115] Compiling Plot ElementComponent.swift
[28/115] Compiling Plot ElementDefinition.swift
[29/115] Compiling Plot EmptyComponent.swift
[30/115] Compiling Plot HTMLAnchorTarget.swift
[31/115] Compiling Plot HTMLAttributes.swift
[32/115] Compiling Plot HTMLAudioFormat.swift
[33/115] Compiling Plot Document.swift
[34/115] Emitting module Ink
[35/115] Compiling Ink TextStyleMarker.swift
[36/115] Compiling Ink URL.swift
[37/115] Compiling Ink URLDeclaration.swift
[38/115] Compiling Plot Attribute.swift
[39/115] Compiling Plot Component.swift
[40/115] Compiling Plot ComponentAttributes.swift
[41/115] Compiling Plot ComponentBuilder.swift
[42/115] Compiling Codextended Codextended.swift
[43/115] Emitting module Codextended
[44/115] Compiling Plot ComponentContainer.swift
[45/115] Compiling Plot ComponentGroup.swift
[46/115] Compiling Plot ControlFlow.swift
[47/115] Compiling Plot EnvironmentKey.swift
[48/115] Compiling Plot EnvironmentValue.swift
[49/115] Compiling Plot HTML.swift
[50/115] Compiling Plot HTMLAnchorRelationship.swift
[51/115] Emitting module Sweep
[52/115] Compiling Sweep Sweep.swift
[53/115] Compiling Plot XMLAttributes.swift
[54/115] Compiling Plot XMLElements.swift
[55/115] Compiling Plot AnyAttribute.swift
[56/115] Compiling Plot AnyElement.swift
[57/115] Compiling Plot AnyEnvironmentValue.swift
[58/115] Compiling Plot AnyNode.swift
[59/115] Compiling Plot SiteMap.swift
[60/115] Compiling Plot SiteMapChangeFrequency.swift
[61/115] Compiling Plot SiteMapElements.swift
[62/115] Compiling Plot TwitterCardType.swift
[63/115] Compiling Plot URLRepresentable.swift
[64/115] Compiling Plot XML.swift
[65/121] Compiling Plot Optional+Component.swift
[66/121] Compiling Plot PodcastAttributes.swift
[67/121] Compiling Plot PodcastComponents.swift
[68/121] Compiling Plot PodcastElements.swift
[69/121] Compiling Plot PodcastEpisodeType.swift
[70/121] Compiling Plot PodcastFeed.swift
[71/121] Compiling Plot PodcastMediaType.swift
[72/121] Compiling Plot PodcastType.swift
[73/121] Compiling Plot RSS.swift
[74/121] Compiling Plot RSSAttributes.swift
[75/121] Compiling Plot RSSElements.swift
[76/121] Compiling Plot Renderable.swift
[83/121] Compiling Plot NodeConvertible.swift
[84/121] Emitting module Plot
[85/121] Compiling ShellOut ShellOut.swift
[114/121] Compiling Plot ElementRenderingBuffer.swift
[115/121] Compiling Plot ElementWrapper.swift
[116/121] Compiling Plot Environment.swift
[117/121] Compiling Plot ModifiedComponent.swift
[118/121] Compiling Plot Renderer.swift
[119/121] Compiling Plot String+Escaping.swift
[120/121] Compiling Files Files.swift
[121/121] Emitting module Files
[122/176] Compiling Publish PlotModifiers.swift
[123/176] Compiling Publish Plugin.swift
[124/176] Compiling Publish PodcastAuthor.swift
[125/176] Compiling Publish PodcastCompatibleWebsiteItemMetadata.swift
[126/176] Compiling Publish PodcastEpisodeMetadata.swift
[127/176] Compiling Publish PodcastFeedConfiguration.swift
[128/176] Compiling Publish Array+Appending.swift
[129/176] Compiling Publish CommandLine+Output.swift
[130/176] Compiling Publish ContentError.swift
[131/176] Compiling Publish File+SwiftPackageFolder.swift
[132/176] Compiling Publish FileIOError.swift
[133/176] Compiling Publish Folder+Group.swift
[134/181] Compiling Publish AnyItem.swift
[135/181] Compiling Publish Audio.swift
[136/181] Compiling Publish Content.swift
[137/181] Compiling Publish ContentProtocol.swift
[138/181] Compiling Publish DeploymentMethod.swift
[139/181] Compiling Publish Favicon.swift
[140/181] Compiling Publish Location.swift
[141/181] Compiling Publish Mutations.swift
[142/181] Compiling Publish Page.swift
[143/181] Compiling Publish Path.swift
[144/181] Compiling Publish PlotComponents.swift
[145/181] Compiling Publish PlotEnvironmentKeys.swift
[146/181] Compiling Publish TagHTMLConfiguration.swift
[147/181] Compiling Publish TagListPage.swift
[148/181] Compiling Publish Theme+Foundation.swift
[149/181] Compiling Publish Theme.swift
[150/181] Compiling Publish Video.swift
[151/181] Compiling Publish Website.swift
[152/181] Emitting module Publish
[153/181] Compiling Publish Section.swift
[154/181] Compiling Publish SectionMap.swift
[155/181] Compiling Publish SortOrder.swift
[156/181] Compiling Publish StringWrapper.swift
[157/181] Compiling Publish Tag.swift
[158/181] Compiling Publish TagDetailsPage.swift
[159/181] Compiling Publish FeedConfiguration.swift
[160/181] Compiling Publish HTMLFactory.swift
[161/181] Compiling Publish HTMLFileMode.swift
[162/181] Compiling Publish Index.swift
[163/181] Compiling Publish Item.swift
[164/181] Compiling Publish ItemRSSProperties.swift
[165/181] Compiling Publish Predicate.swift
[166/181] Compiling Publish PublishedWebsite.swift
[167/181] Compiling Publish PublishingContext.swift
[168/181] Compiling Publish PublishingError.swift
[169/181] Compiling Publish PublishingStep.swift
[170/181] Compiling Publish RSSFeedConfiguration.swift
[171/181] Compiling Publish HTMLGenerator.swift
[172/181] Compiling Publish MarkdownContentFactory.swift
[173/181] Compiling Publish MarkdownFileHandler.swift
[174/181] Compiling Publish MarkdownMetadataDecoder.swift
[175/181] Compiling Publish PodcastError.swift
[176/181] Compiling Publish PodcastFeedGenerator.swift
[177/181] Compiling Publish PublishingPipeline.swift
[178/181] Compiling Publish RSSFeedGenerator.swift
[179/181] Compiling Publish ShellOutError+PublishingErrorConvertible.swift
[180/181] Compiling Publish SiteMapGenerator.swift
[181/181] Compiling Publish String+Normalized.swift
[182/184] Compiling ReadingTimePublishPlugin CommandLine+Output.swift
/Users/admin/builder/spi-builder-workspace/Sources/ReadingTimePublishPlugin/CommandLine+Output.swift:8:5: warning: var 'output' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
6 | import Foundation
7 |
8 | var output: (String, OutputKind) -> Void = { string, kind in
| |- warning: var 'output' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'output' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'output' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
9 | var string = string + "\n"
10 |
[183/184] Compiling ReadingTimePublishPlugin ReadingTime.swift
/Users/admin/builder/spi-builder-workspace/Sources/ReadingTimePublishPlugin/ReadingTime.swift:42:13: warning: var 'data' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
40 | }
41 |
42 | private var data = [AnyHashable: ReadingTimeMetadata]()
| |- warning: var 'data' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'data' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'data' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
43 |
44 | func estimateTime(for string: String, wordsPerMinute: Int) -> ReadingTimeMetadata {
/Users/admin/builder/spi-builder-workspace/Sources/ReadingTimePublishPlugin/CommandLine+Output.swift:8:5: warning: var 'output' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
6 | import Foundation
7 |
8 | var output: (String, OutputKind) -> Void = { string, kind in
| |- warning: var 'output' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'output' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'output' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
9 | var string = string + "\n"
10 |
[184/184] Emitting module ReadingTimePublishPlugin
/Users/admin/builder/spi-builder-workspace/Sources/ReadingTimePublishPlugin/CommandLine+Output.swift:8:5: warning: var 'output' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
6 | import Foundation
7 |
8 | var output: (String, OutputKind) -> Void = { string, kind in
| |- warning: var 'output' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'output' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'output' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
9 | var string = string + "\n"
10 |
/Users/admin/builder/spi-builder-workspace/Sources/ReadingTimePublishPlugin/ReadingTime.swift:42:13: warning: var 'data' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
40 | }
41 |
42 | private var data = [AnyHashable: ReadingTimeMetadata]()
| |- warning: var 'data' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'data' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'data' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
43 |
44 | func estimateTime(for string: String, wordsPerMinute: Int) -> ReadingTimeMetadata {
Build complete! (22.60s)
Build complete.
{
"dependencies" : [
{
"identity" : "publish",
"requirement" : {
"range" : [
{
"lower_bound" : "0.9.0",
"upper_bound" : "1.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/johnsundell/publish.git"
}
],
"manifest_display_name" : "ReadingTimePublishPlugin",
"name" : "ReadingTimePublishPlugin",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "12.0"
}
],
"products" : [
{
"name" : "ReadingTimePublishPlugin",
"targets" : [
"ReadingTimePublishPlugin"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "ReadingTimePublishPluginTests",
"module_type" : "SwiftTarget",
"name" : "ReadingTimePublishPluginTests",
"path" : "Tests/ReadingTimePublishPluginTests",
"sources" : [
"ConsoleOutputTests.swift",
"ReadingTimeTests.swift"
],
"target_dependencies" : [
"ReadingTimePublishPlugin"
],
"type" : "test"
},
{
"c99name" : "ReadingTimePublishPlugin",
"module_type" : "SwiftTarget",
"name" : "ReadingTimePublishPlugin",
"path" : "Sources/ReadingTimePublishPlugin",
"product_dependencies" : [
"Publish"
],
"product_memberships" : [
"ReadingTimePublishPlugin"
],
"sources" : [
"CommandLine+Output.swift",
"ReadingTime.swift"
],
"type" : "library"
}
],
"tools_version" : "5.5"
}
Done.