Build Information
Successful build of SwaggerParser, reference mainline (c0eb70
), with Swift 6.0 for macOS (SPM) on 16 Sep 2024 02:21:20 UTC.
Swift 6 data race errors: 3
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.0.0-Release.Candidate.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.53.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/knovichikhin/SwaggerParser.git
Reference: mainline
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/knovichikhin/SwaggerParser
* branch mainline -> FETCH_HEAD
* [new branch] mainline -> origin/mainline
HEAD is now at c0eb704 Fix version decoding for Swift 5.2.
Cloned https://github.com/knovichikhin/SwaggerParser.git
Revision (git rev-parse @):
c0eb70485c59a9d7dd6765dcd303b49fdb3040ee
SUCCESS checkout https://github.com/knovichikhin/SwaggerParser.git at mainline
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.0
Building package at path: $PWD
https://github.com/knovichikhin/SwaggerParser.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.0.0-Release.Candidate.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Building for debugging...
[0/4] Write sources
[1/4] Write swift-version-117DEE11B69C53C9.txt
[3/46] Emitting module SwaggerParser
/Users/admin/builder/spi-builder-workspace/Sources/ReferenceResolver.swift:6:13: warning: let 'kSchemaBuilderReferenceResolver' is not concurrency-safe because non-'Sendable' type 'ReferenceResolver<SchemaBuilder>' may have shared mutable state; this is an error in the Swift 6 language mode
4 | }
5 |
6 | private let kSchemaBuilderReferenceResolver = ReferenceResolver<SchemaBuilder>()
| |- warning: let 'kSchemaBuilderReferenceResolver' is not concurrency-safe because non-'Sendable' type 'ReferenceResolver<SchemaBuilder>' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'kSchemaBuilderReferenceResolver' 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
7 | extension SchemaBuilder: ResolvableType {
8 | static var path: String { return "definitions" }
:
23 |
24 |
25 | class ReferenceResolver<T: ResolvableType> {
| `- note: generic class 'ReferenceResolver' does not conform to the 'Sendable' protocol
26 | enum ResolverError: Error {
27 | case invalidContext
/Users/admin/builder/spi-builder-workspace/Sources/ReferenceResolver.swift:12:13: warning: let 'kParameterBuilderReferenceResolver' is not concurrency-safe because non-'Sendable' type 'ReferenceResolver<ParameterBuilder>' may have shared mutable state; this is an error in the Swift 6 language mode
10 | }
11 |
12 | private let kParameterBuilderReferenceResolver = ReferenceResolver<ParameterBuilder>()
| |- warning: let 'kParameterBuilderReferenceResolver' is not concurrency-safe because non-'Sendable' type 'ReferenceResolver<ParameterBuilder>' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'kParameterBuilderReferenceResolver' 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
13 | extension ParameterBuilder: ResolvableType {
14 | static var path: String { return "parameters" }
:
23 |
24 |
25 | class ReferenceResolver<T: ResolvableType> {
| `- note: generic class 'ReferenceResolver' does not conform to the 'Sendable' protocol
26 | enum ResolverError: Error {
27 | case invalidContext
/Users/admin/builder/spi-builder-workspace/Sources/ReferenceResolver.swift:18:13: warning: let 'kResponseBuilderReferenceResolver' is not concurrency-safe because non-'Sendable' type 'ReferenceResolver<ResponseBuilder>' may have shared mutable state; this is an error in the Swift 6 language mode
16 | }
17 |
18 | private let kResponseBuilderReferenceResolver = ReferenceResolver<ResponseBuilder>()
| |- warning: let 'kResponseBuilderReferenceResolver' is not concurrency-safe because non-'Sendable' type 'ReferenceResolver<ResponseBuilder>' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'kResponseBuilderReferenceResolver' 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
19 | extension ResponseBuilder: ResolvableType {
20 | static var path: String { return "responses" }
:
23 |
24 |
25 | class ReferenceResolver<T: ResolvableType> {
| `- note: generic class 'ReferenceResolver' does not conform to the 'Sendable' protocol
26 | enum ResolverError: Error {
27 | case invalidContext
[4/50] Compiling SwaggerParser SecuritySchema.swift
[5/50] Compiling SwaggerParser StringFormat.swift
[6/50] Compiling SwaggerParser StringItem.swift
[7/50] Compiling SwaggerParser StringMetadata.swift
[8/50] Compiling SwaggerParser Parameter.swift
[9/50] Compiling SwaggerParser Path.swift
[10/50] Compiling SwaggerParser Pointer.swift
[11/50] Compiling SwaggerParser Reference.swift
[12/50] Compiling SwaggerParser ReferenceResolver.swift
/Users/admin/builder/spi-builder-workspace/Sources/ReferenceResolver.swift:6:13: warning: let 'kSchemaBuilderReferenceResolver' is not concurrency-safe because non-'Sendable' type 'ReferenceResolver<SchemaBuilder>' may have shared mutable state; this is an error in the Swift 6 language mode
4 | }
5 |
6 | private let kSchemaBuilderReferenceResolver = ReferenceResolver<SchemaBuilder>()
| |- warning: let 'kSchemaBuilderReferenceResolver' is not concurrency-safe because non-'Sendable' type 'ReferenceResolver<SchemaBuilder>' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'kSchemaBuilderReferenceResolver' 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
7 | extension SchemaBuilder: ResolvableType {
8 | static var path: String { return "definitions" }
:
23 |
24 |
25 | class ReferenceResolver<T: ResolvableType> {
| `- note: generic class 'ReferenceResolver' does not conform to the 'Sendable' protocol
26 | enum ResolverError: Error {
27 | case invalidContext
/Users/admin/builder/spi-builder-workspace/Sources/ReferenceResolver.swift:12:13: warning: let 'kParameterBuilderReferenceResolver' is not concurrency-safe because non-'Sendable' type 'ReferenceResolver<ParameterBuilder>' may have shared mutable state; this is an error in the Swift 6 language mode
10 | }
11 |
12 | private let kParameterBuilderReferenceResolver = ReferenceResolver<ParameterBuilder>()
| |- warning: let 'kParameterBuilderReferenceResolver' is not concurrency-safe because non-'Sendable' type 'ReferenceResolver<ParameterBuilder>' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'kParameterBuilderReferenceResolver' 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
13 | extension ParameterBuilder: ResolvableType {
14 | static var path: String { return "parameters" }
:
23 |
24 |
25 | class ReferenceResolver<T: ResolvableType> {
| `- note: generic class 'ReferenceResolver' does not conform to the 'Sendable' protocol
26 | enum ResolverError: Error {
27 | case invalidContext
/Users/admin/builder/spi-builder-workspace/Sources/ReferenceResolver.swift:18:13: warning: let 'kResponseBuilderReferenceResolver' is not concurrency-safe because non-'Sendable' type 'ReferenceResolver<ResponseBuilder>' may have shared mutable state; this is an error in the Swift 6 language mode
16 | }
17 |
18 | private let kResponseBuilderReferenceResolver = ReferenceResolver<ResponseBuilder>()
| |- warning: let 'kResponseBuilderReferenceResolver' is not concurrency-safe because non-'Sendable' type 'ReferenceResolver<ResponseBuilder>' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'kResponseBuilderReferenceResolver' 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
19 | extension ResponseBuilder: ResolvableType {
20 | static var path: String { return "responses" }
:
23 |
24 |
25 | class ReferenceResolver<T: ResolvableType> {
| `- note: generic class 'ReferenceResolver' does not conform to the 'Sendable' protocol
26 | enum ResolverError: Error {
27 | case invalidContext
[13/50] Compiling SwaggerParser Response.swift
/Users/admin/builder/spi-builder-workspace/Sources/ReferenceResolver.swift:6:13: warning: let 'kSchemaBuilderReferenceResolver' is not concurrency-safe because non-'Sendable' type 'ReferenceResolver<SchemaBuilder>' may have shared mutable state; this is an error in the Swift 6 language mode
4 | }
5 |
6 | private let kSchemaBuilderReferenceResolver = ReferenceResolver<SchemaBuilder>()
| |- warning: let 'kSchemaBuilderReferenceResolver' is not concurrency-safe because non-'Sendable' type 'ReferenceResolver<SchemaBuilder>' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'kSchemaBuilderReferenceResolver' 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
7 | extension SchemaBuilder: ResolvableType {
8 | static var path: String { return "definitions" }
:
23 |
24 |
25 | class ReferenceResolver<T: ResolvableType> {
| `- note: generic class 'ReferenceResolver' does not conform to the 'Sendable' protocol
26 | enum ResolverError: Error {
27 | case invalidContext
/Users/admin/builder/spi-builder-workspace/Sources/ReferenceResolver.swift:12:13: warning: let 'kParameterBuilderReferenceResolver' is not concurrency-safe because non-'Sendable' type 'ReferenceResolver<ParameterBuilder>' may have shared mutable state; this is an error in the Swift 6 language mode
10 | }
11 |
12 | private let kParameterBuilderReferenceResolver = ReferenceResolver<ParameterBuilder>()
| |- warning: let 'kParameterBuilderReferenceResolver' is not concurrency-safe because non-'Sendable' type 'ReferenceResolver<ParameterBuilder>' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'kParameterBuilderReferenceResolver' 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
13 | extension ParameterBuilder: ResolvableType {
14 | static var path: String { return "parameters" }
:
23 |
24 |
25 | class ReferenceResolver<T: ResolvableType> {
| `- note: generic class 'ReferenceResolver' does not conform to the 'Sendable' protocol
26 | enum ResolverError: Error {
27 | case invalidContext
/Users/admin/builder/spi-builder-workspace/Sources/ReferenceResolver.swift:18:13: warning: let 'kResponseBuilderReferenceResolver' is not concurrency-safe because non-'Sendable' type 'ReferenceResolver<ResponseBuilder>' may have shared mutable state; this is an error in the Swift 6 language mode
16 | }
17 |
18 | private let kResponseBuilderReferenceResolver = ReferenceResolver<ResponseBuilder>()
| |- warning: let 'kResponseBuilderReferenceResolver' is not concurrency-safe because non-'Sendable' type 'ReferenceResolver<ResponseBuilder>' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'kResponseBuilderReferenceResolver' 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
19 | extension ResponseBuilder: ResolvableType {
20 | static var path: String { return "responses" }
:
23 |
24 |
25 | class ReferenceResolver<T: ResolvableType> {
| `- note: generic class 'ReferenceResolver' does not conform to the 'Sendable' protocol
26 | enum ResolverError: Error {
27 | case invalidContext
[14/50] Compiling SwaggerParser Schema.swift
/Users/admin/builder/spi-builder-workspace/Sources/ReferenceResolver.swift:6:13: warning: let 'kSchemaBuilderReferenceResolver' is not concurrency-safe because non-'Sendable' type 'ReferenceResolver<SchemaBuilder>' may have shared mutable state; this is an error in the Swift 6 language mode
4 | }
5 |
6 | private let kSchemaBuilderReferenceResolver = ReferenceResolver<SchemaBuilder>()
| |- warning: let 'kSchemaBuilderReferenceResolver' is not concurrency-safe because non-'Sendable' type 'ReferenceResolver<SchemaBuilder>' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'kSchemaBuilderReferenceResolver' 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
7 | extension SchemaBuilder: ResolvableType {
8 | static var path: String { return "definitions" }
:
23 |
24 |
25 | class ReferenceResolver<T: ResolvableType> {
| `- note: generic class 'ReferenceResolver' does not conform to the 'Sendable' protocol
26 | enum ResolverError: Error {
27 | case invalidContext
/Users/admin/builder/spi-builder-workspace/Sources/ReferenceResolver.swift:12:13: warning: let 'kParameterBuilderReferenceResolver' is not concurrency-safe because non-'Sendable' type 'ReferenceResolver<ParameterBuilder>' may have shared mutable state; this is an error in the Swift 6 language mode
10 | }
11 |
12 | private let kParameterBuilderReferenceResolver = ReferenceResolver<ParameterBuilder>()
| |- warning: let 'kParameterBuilderReferenceResolver' is not concurrency-safe because non-'Sendable' type 'ReferenceResolver<ParameterBuilder>' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'kParameterBuilderReferenceResolver' 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
13 | extension ParameterBuilder: ResolvableType {
14 | static var path: String { return "parameters" }
:
23 |
24 |
25 | class ReferenceResolver<T: ResolvableType> {
| `- note: generic class 'ReferenceResolver' does not conform to the 'Sendable' protocol
26 | enum ResolverError: Error {
27 | case invalidContext
/Users/admin/builder/spi-builder-workspace/Sources/ReferenceResolver.swift:18:13: warning: let 'kResponseBuilderReferenceResolver' is not concurrency-safe because non-'Sendable' type 'ReferenceResolver<ResponseBuilder>' may have shared mutable state; this is an error in the Swift 6 language mode
16 | }
17 |
18 | private let kResponseBuilderReferenceResolver = ReferenceResolver<ResponseBuilder>()
| |- warning: let 'kResponseBuilderReferenceResolver' is not concurrency-safe because non-'Sendable' type 'ReferenceResolver<ResponseBuilder>' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'kResponseBuilderReferenceResolver' 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
19 | extension ResponseBuilder: ResolvableType {
20 | static var path: String { return "responses" }
:
23 |
24 |
25 | class ReferenceResolver<T: ResolvableType> {
| `- note: generic class 'ReferenceResolver' does not conform to the 'Sendable' protocol
26 | enum ResolverError: Error {
27 | case invalidContext
[15/50] Compiling SwaggerParser SchemaType.swift
/Users/admin/builder/spi-builder-workspace/Sources/ReferenceResolver.swift:6:13: warning: let 'kSchemaBuilderReferenceResolver' is not concurrency-safe because non-'Sendable' type 'ReferenceResolver<SchemaBuilder>' may have shared mutable state; this is an error in the Swift 6 language mode
4 | }
5 |
6 | private let kSchemaBuilderReferenceResolver = ReferenceResolver<SchemaBuilder>()
| |- warning: let 'kSchemaBuilderReferenceResolver' is not concurrency-safe because non-'Sendable' type 'ReferenceResolver<SchemaBuilder>' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'kSchemaBuilderReferenceResolver' 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
7 | extension SchemaBuilder: ResolvableType {
8 | static var path: String { return "definitions" }
:
23 |
24 |
25 | class ReferenceResolver<T: ResolvableType> {
| `- note: generic class 'ReferenceResolver' does not conform to the 'Sendable' protocol
26 | enum ResolverError: Error {
27 | case invalidContext
/Users/admin/builder/spi-builder-workspace/Sources/ReferenceResolver.swift:12:13: warning: let 'kParameterBuilderReferenceResolver' is not concurrency-safe because non-'Sendable' type 'ReferenceResolver<ParameterBuilder>' may have shared mutable state; this is an error in the Swift 6 language mode
10 | }
11 |
12 | private let kParameterBuilderReferenceResolver = ReferenceResolver<ParameterBuilder>()
| |- warning: let 'kParameterBuilderReferenceResolver' is not concurrency-safe because non-'Sendable' type 'ReferenceResolver<ParameterBuilder>' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'kParameterBuilderReferenceResolver' 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
13 | extension ParameterBuilder: ResolvableType {
14 | static var path: String { return "parameters" }
:
23 |
24 |
25 | class ReferenceResolver<T: ResolvableType> {
| `- note: generic class 'ReferenceResolver' does not conform to the 'Sendable' protocol
26 | enum ResolverError: Error {
27 | case invalidContext
/Users/admin/builder/spi-builder-workspace/Sources/ReferenceResolver.swift:18:13: warning: let 'kResponseBuilderReferenceResolver' is not concurrency-safe because non-'Sendable' type 'ReferenceResolver<ResponseBuilder>' may have shared mutable state; this is an error in the Swift 6 language mode
16 | }
17 |
18 | private let kResponseBuilderReferenceResolver = ReferenceResolver<ResponseBuilder>()
| |- warning: let 'kResponseBuilderReferenceResolver' is not concurrency-safe because non-'Sendable' type 'ReferenceResolver<ResponseBuilder>' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'kResponseBuilderReferenceResolver' 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
19 | extension ResponseBuilder: ResolvableType {
20 | static var path: String { return "responses" }
:
23 |
24 |
25 | class ReferenceResolver<T: ResolvableType> {
| `- note: generic class 'ReferenceResolver' does not conform to the 'Sendable' protocol
26 | enum ResolverError: Error {
27 | case invalidContext
[16/50] Compiling SwaggerParser ObjectSchema.swift
[17/50] Compiling SwaggerParser OneOfSchema.swift
[18/50] Compiling SwaggerParser OneOrMany.swift
[19/50] Compiling SwaggerParser Operation.swift
[20/50] Compiling SwaggerParser APIKeySchema.swift
[21/50] Compiling SwaggerParser AllOfSchema.swift
[22/50] Compiling SwaggerParser ArrayItem.swift
[23/50] Compiling SwaggerParser ArrayMetadata.swift
[24/50] Compiling SwaggerParser ArraySchema.swift
[25/50] Compiling SwaggerParser Items.swift
[26/50] Compiling SwaggerParser ItemsType.swift
[27/50] Compiling SwaggerParser KeyedDecodingContainer+Extensions.swift
[28/50] Compiling SwaggerParser KeyedEncodingContainer+Extensions.swift
[29/50] Compiling SwaggerParser License.swift
[30/50] Compiling SwaggerParser Structure.swift
[31/50] Compiling SwaggerParser Swagger.swift
[32/50] Compiling SwaggerParser Tag.swift
[33/50] Compiling SwaggerParser Version.swift
[34/50] Compiling SwaggerParser Metadata.swift
[35/50] Compiling SwaggerParser NumberItem.swift
[36/50] Compiling SwaggerParser NumericMetadata.swift
[37/50] Compiling SwaggerParser Oauth2Schema.swift
[38/50] Compiling SwaggerParser ObjectMetadata.swift
[39/50] Compiling SwaggerParser Errors.swift
[40/50] Compiling SwaggerParser ExternalDocumentation.swift
[41/50] Compiling SwaggerParser FixedParameterFields.swift
[42/50] Compiling SwaggerParser Information.swift
[43/50] Compiling SwaggerParser IntegerItem.swift
[44/50] Compiling SwaggerParser Builder.swift
[45/50] Compiling SwaggerParser Contact.swift
[46/50] Compiling SwaggerParser Decodable+Extensions.swift
[47/50] Compiling SwaggerParser Either.swift
[48/50] Compiling SwaggerParser Enums.swift
[48/50] Write Objects.LinkFileList
[49/50] Archiving libSwaggerParser.a
Build complete! (12.39s)
Build complete.
{
"dependencies" : [
],
"manifest_display_name" : "SwaggerParser",
"name" : "SwaggerParser",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
],
"products" : [
{
"name" : "SwaggerParser",
"targets" : [
"SwaggerParser"
],
"type" : {
"library" : [
"static"
]
}
}
],
"targets" : [
{
"c99name" : "SwaggerParserTests",
"module_type" : "SwiftTarget",
"name" : "SwaggerParserTests",
"path" : "Tests",
"sources" : [
"AbstractTests.swift",
"AllOfTests.swift",
"BasicTests.swift",
"ChainedReferenceTests.swift",
"CrossReferenceTests.swift",
"ExampleTests.swift",
"LinuxMain.swift",
"NullableTests.swift",
"OneOfTests.swift",
"StructureSchemaTests.swift",
"TestHelpers.swift",
"VersionTests.swift"
],
"type" : "test"
},
{
"c99name" : "SwaggerParser",
"module_type" : "SwiftTarget",
"name" : "SwaggerParser",
"path" : "Sources",
"product_memberships" : [
"SwaggerParser"
],
"sources" : [
"APIKeySchema.swift",
"AllOfSchema.swift",
"ArrayItem.swift",
"ArrayMetadata.swift",
"ArraySchema.swift",
"Builder.swift",
"Contact.swift",
"Decodable+Extensions.swift",
"Either.swift",
"Enums.swift",
"Errors.swift",
"ExternalDocumentation.swift",
"FixedParameterFields.swift",
"Information.swift",
"IntegerItem.swift",
"Items.swift",
"ItemsType.swift",
"KeyedDecodingContainer+Extensions.swift",
"KeyedEncodingContainer+Extensions.swift",
"License.swift",
"Metadata.swift",
"NumberItem.swift",
"NumericMetadata.swift",
"Oauth2Schema.swift",
"ObjectMetadata.swift",
"ObjectSchema.swift",
"OneOfSchema.swift",
"OneOrMany.swift",
"Operation.swift",
"Parameter.swift",
"Path.swift",
"Pointer.swift",
"Reference.swift",
"ReferenceResolver.swift",
"Response.swift",
"Schema.swift",
"SchemaType.swift",
"SecuritySchema.swift",
"StringFormat.swift",
"StringItem.swift",
"StringMetadata.swift",
"Structure.swift",
"Swagger.swift",
"Tag.swift",
"Version.swift"
],
"type" : "library"
}
],
"tools_version" : "4.0"
}
Done.