The Swift Package Index logo.Swift Package Index

Build Information

Successful build of XibLoc, reference main (66e12f), with Swift 6.4 for macOS (SPM) on 24 Sep 2026 20:34:54 UTC.

Swift 6 data race errors: 0

Build Command

env DEVELOPER_DIR=/Applications/Xcode-27.0.0-Release.Candidate.app xcrun swift build --arch arm64

Build Log

========================================
RunAll
========================================
Builder version: 5.1.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/happn-app/XibLoc.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/happn-app/XibLoc
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at 66e12f5 Merge pull request #13 from happn-app/IOS-2359-build-mac
Cloned https://github.com/happn-app/XibLoc.git
Revision (git rev-parse @):
66e12f5379c5fd365f2be96afae58bf134a5d9b6
SUCCESS checkout https://github.com/happn-app/XibLoc.git at main
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.4
Building package at path:  $PWD
https://github.com/happn-app/XibLoc.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-27.0.0-Release.Candidate.app xcrun swift build --arch arm64
Building for debugging...
[Pre-planning 1 / 125]
[Planning deferred tasks]
[36 / 54] XibLoc_XibLocTests
[37 / 54]
[38 / 55] Logging
[47 / 82]
[51 / 82]
[53 / 82]
[54 / 82]
[65 / 82] Logging
[66 / 82] Logging
[72 / 83] Logging
[74 / 83] XibLoc
[84 / 156]
[87 / 156]
[95 / 156]
[97 / 156]
[98 / 156]
[103 / 156]
[106 / 156]
[109 / 156]
[114 / 156]
[117 / 156]
[119 / 156]
[120 / 156]
[129 / 156]
[131 / 156]
[132 / 156]
[134 / 156]
[136 / 156]
[147 / 156] XibLoc
[148 / 156] XibLoc
[153 / 156] XibLoc
Build complete! (11.77 sec)
Fetching https://github.com/apple/swift-log.git
[1/8165] Fetching swift-log
Fetched https://github.com/apple/swift-log.git (1.58s)
Computing version for https://github.com/apple/swift-log.git
Computed https://github.com/apple/swift-log.git at 1.15.1 (2.25s)
Creating working copy for https://github.com/apple/swift-log.git
Working copy of https://github.com/apple/swift-log.git resolved at 1.15.1
warning: /Users/admin/builder/spi-builder-workspace/Sources/XibLoc/Parser/ParsedXibLoc.swift:415:10 I’m pretty sure the adjustment can be done using another algo (basically the same as the one in remove(escapeToken...)). Note there might be other places where we could update the algo too.
/Users/admin/builder/spi-builder-workspace/Sources/XibLoc/Plurality/PluralityDefinitionZoneValueIntervalOfFloats.swift:33:22: warning: 'scanLocation' was deprecated in macOS 10.15 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
31 | 		assert(bracket1 == "[" || bracket1 == "]")
32 |
33 | 		let loc1 = scanner.scanLocation
   |                      `- warning: 'scanLocation' was deprecated in macOS 10.15 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
34 | 		start = scanner.xl_scanCharacters(from: floatCharSet)
35 | 			.flatMap{ PluralValue(string: $0) }
/Users/admin/builder/spi-builder-workspace/Sources/XibLoc/Plurality/PluralityDefinitionZoneValueIntervalOfFloats.swift:37:33: warning: 'scanLocation' was deprecated in macOS 10.15 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
35 | 			.flatMap{ PluralValue(string: $0) }
36 | 			.flatMap{ (value: $0, included: bracket1 == "[") }
37 | 		guard start != nil || scanner.scanLocation == loc1 else {return nil}
   |                                 `- warning: 'scanLocation' was deprecated in macOS 10.15 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
38 |
39 | 		guard scanner.xl_scanString("→") != nil else {return nil}
/Users/admin/builder/spi-builder-workspace/Sources/XibLoc/Plurality/PluralityDefinitionZoneValueIntervalOfFloats.swift:41:22: warning: 'scanLocation' was deprecated in macOS 10.15 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
39 | 		guard scanner.xl_scanString("→") != nil else {return nil}
40 |
41 | 		let loc2 = scanner.scanLocation
   |                      `- warning: 'scanLocation' was deprecated in macOS 10.15 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
42 | 		let endValue = scanner.xl_scanCharacters(from: floatCharSet).flatMap{ PluralValue(string: $0) }
43 | 		guard endValue != nil || scanner.scanLocation == loc2 else {return nil}
/Users/admin/builder/spi-builder-workspace/Sources/XibLoc/Plurality/PluralityDefinitionZoneValueIntervalOfFloats.swift:43:36: warning: 'scanLocation' was deprecated in macOS 10.15 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
41 | 		let loc2 = scanner.scanLocation
42 | 		let endValue = scanner.xl_scanCharacters(from: floatCharSet).flatMap{ PluralValue(string: $0) }
43 | 		guard endValue != nil || scanner.scanLocation == loc2 else {return nil}
   |                                    `- warning: 'scanLocation' was deprecated in macOS 10.15 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
44 |
45 | 		guard let bracket2 = scanner.xl_scanCharacters(from: bracketsCharset), bracket2.count == 1 else {return nil}
/Users/admin/builder/spi-builder-workspace/Sources/XibLoc/Plurality/PluralityDefinitionZoneValueIntervalOfInts.swift:29:22: warning: 'scanLocation' was deprecated in macOS 10.15 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
27 | 		let intCharSet = CharacterSet(charactersIn: "-0123456789")
28 |
29 | 		let loc1 = scanner.scanLocation
   |                      `- warning: 'scanLocation' was deprecated in macOS 10.15 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
30 | 		startValue = scanner.xl_scanCharacters(from: intCharSet).flatMap{ PluralValue(string: $0) }
31 | 		guard startValue != nil || scanner.scanLocation == loc1 else {return nil}
/Users/admin/builder/spi-builder-workspace/Sources/XibLoc/Plurality/PluralityDefinitionZoneValueIntervalOfInts.swift:31:38: warning: 'scanLocation' was deprecated in macOS 10.15 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
29 | 		let loc1 = scanner.scanLocation
30 | 		startValue = scanner.xl_scanCharacters(from: intCharSet).flatMap{ PluralValue(string: $0) }
31 | 		guard startValue != nil || scanner.scanLocation == loc1 else {return nil}
   |                                      `- warning: 'scanLocation' was deprecated in macOS 10.15 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
32 |
33 | 		guard scanner.xl_scanString("→") != nil else {return nil}
/Users/admin/builder/spi-builder-workspace/Sources/XibLoc/Plurality/PluralityDefinitionZoneValueIntervalOfInts.swift:35:22: warning: 'scanLocation' was deprecated in macOS 10.15 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
33 | 		guard scanner.xl_scanString("→") != nil else {return nil}
34 |
35 | 		let loc2 = scanner.scanLocation
   |                      `- warning: 'scanLocation' was deprecated in macOS 10.15 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
36 | 		endValue = scanner.xl_scanCharacters(from: intCharSet).flatMap{ PluralValue(string: $0) }
37 | 		guard endValue != nil || scanner.scanLocation == loc2 else {return nil}
/Users/admin/builder/spi-builder-workspace/Sources/XibLoc/Plurality/PluralityDefinitionZoneValueIntervalOfInts.swift:37:36: warning: 'scanLocation' was deprecated in macOS 10.15 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
35 | 		let loc2 = scanner.scanLocation
36 | 		endValue = scanner.xl_scanCharacters(from: intCharSet).flatMap{ PluralValue(string: $0) }
37 | 		guard endValue != nil || scanner.scanLocation == loc2 else {return nil}
   |                                    `- warning: 'scanLocation' was deprecated in macOS 10.15 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
38 |
39 | 		assert(startValue?.isInt ?? true)
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
/Users/admin/builder/spi-builder-workspace/Sources/XibLoc/Plurality/PluralityDefinitionZone.swift:62:172: warning: 'scanLocation' was deprecated in macOS 10.15 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
 60 | #if canImport(os)
 61 | 			if #available(macOS 10.12, tvOS 10.0, iOS 10.0, watchOS 3.0, *) {
 62 | 				Conf.oslog.flatMap{ os_log("Got garbage after end of plurality definition zone string: %@", log: $0, type: .info, (scanner.string as NSString).substring(from: scanner.scanLocation)) }}
    |                                                                                                                                                                            `- warning: 'scanLocation' was deprecated in macOS 10.15 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
 63 | #endif
 64 | 			Conf.logger?.warning("Got garbage after end of plurality definition zone string: \((scanner.string as NSString).substring(from: scanner.scanLocation))")
/Users/admin/builder/spi-builder-workspace/Sources/XibLoc/Plurality/PluralityDefinitionZone.swift:64:140: warning: 'scanLocation' was deprecated in macOS 10.15 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
 62 | 				Conf.oslog.flatMap{ os_log("Got garbage after end of plurality definition zone string: %@", log: $0, type: .info, (scanner.string as NSString).substring(from: scanner.scanLocation)) }}
 63 | #endif
 64 | 			Conf.logger?.warning("Got garbage after end of plurality definition zone string: \((scanner.string as NSString).substring(from: scanner.scanLocation))")
    |                                                                                                                                            `- warning: 'scanLocation' was deprecated in macOS 10.15 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
 65 | 		}
 66 |
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
/Users/admin/builder/spi-builder-workspace/Sources/XibLoc/Parser/ParsedXibLoc.swift:415:10: warning: I’m pretty sure the adjustment can be done using another algo (basically the same as the one in remove(escapeToken...)). Note there might be other places where we could update the algo too.
413 |
414 | #if !USE_UTF16_OFFSETS
415 | #warning("I’m pretty sure the adjustment can be done using another algo (basically the same as the one in remove(escapeToken...)). Note there might be other places where we could update the algo too.")
    |          `- warning: I’m pretty sure the adjustment can be done using another algo (basically the same as the one in remove(escapeToken...)). Note there might be other places where we could update the algo too.
416 | 			/* With this version of the algorithm we play it safe and re-compute the ranges by searching for partial strings from the original string in the new string.
417 | 			 * This has a small performance impact on some ObjC strings, but in most of the cases it’s completely negligible. */
/Users/admin/builder/spi-builder-workspace/Sources/XibLoc/Utilities/AttributedString+Utils.swift:34:14: warning: conformance of 'NSFont' to 'Sendable' is unavailable
32 | 		for r in runs {
33 | #if os(macOS)
34 | 		let font = r.appKit.font ?? XibLocFont.xl_preferredFont
   |              `- warning: conformance of 'NSFont' to 'Sendable' is unavailable
35 | 		self[r.range].appKit.font = font.fontBySetting(size: nil, isBold: bold, isItalic: italic)
36 | #else
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX27.0.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSFont.h: 0: 26 | APPKIT_EXTERN const CGFloat * NSFontIdentityMatrix;
 27 |
 28 | @interface NSFont : NSObject <NSCopying, NSSecureCoding>
    +---  --------------------------------------------------------------
    |1 | @_nonSendable(_assumed)
    |  | `- note: conformance of 'NSFont' to 'Sendable' has been explicitly marked unavailable here
    +-------------------------------------------------------------------
 29 |
 30 | /********* Factory *********/
/Users/admin/builder/spi-builder-workspace/Sources/XibLoc/Utilities/AttributedString+Utils.swift:35:3: warning: conformance of 'NSFont' to 'Sendable' is unavailable
33 | #if os(macOS)
34 | 		let font = r.appKit.font ?? XibLocFont.xl_preferredFont
35 | 		self[r.range].appKit.font = font.fontBySetting(size: nil, isBold: bold, isItalic: italic)
   |   `- warning: conformance of 'NSFont' to 'Sendable' is unavailable
36 | #else
37 | 		let font = r.uiKit.font ?? XibLocFont.xl_preferredFont
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX27.0.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSFont.h: 0: 26 | APPKIT_EXTERN const CGFloat * NSFontIdentityMatrix;
 27 |
 28 | @interface NSFont : NSObject <NSCopying, NSSecureCoding>
    +---  --------------------------------------------------------------
    |1 | @_nonSendable(_assumed)
    |  | `- note: conformance of 'NSFont' to 'Sendable' has been explicitly marked unavailable here
    +-------------------------------------------------------------------
 29 |
 30 | /********* Factory *********/
/Users/admin/builder/spi-builder-workspace/Sources/XibLoc/Utilities/AttributedString+Utils.swift:56:12: warning: conformance of 'NSFont' to 'Sendable' is unavailable
54 | 		for r in runs {
55 | #if os(macOS)
56 | 			let f = r.appKit.font
   |            `- warning: conformance of 'NSFont' to 'Sendable' is unavailable
57 | 			let (b, i, s) = (f?.isBold, f?.isItalic, f?.pointSize)
58 | 			self[r.range].appKit.font = font.fontBySetting(
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX27.0.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSFont.h: 0: 26 | APPKIT_EXTERN const CGFloat * NSFontIdentityMatrix;
 27 |
 28 | @interface NSFont : NSObject <NSCopying, NSSecureCoding>
    +---  --------------------------------------------------------------
    |1 | @_nonSendable(_assumed)
    |  | `- note: conformance of 'NSFont' to 'Sendable' has been explicitly marked unavailable here
    +-------------------------------------------------------------------
 29 |
 30 | /********* Factory *********/
/Users/admin/builder/spi-builder-workspace/Sources/XibLoc/Utilities/AttributedString+Utils.swift:58:4: warning: conformance of 'NSFont' to 'Sendable' is unavailable
56 | 			let f = r.appKit.font
57 | 			let (b, i, s) = (f?.isBold, f?.isItalic, f?.pointSize)
58 | 			self[r.range].appKit.font = font.fontBySetting(
   |    `- warning: conformance of 'NSFont' to 'Sendable' is unavailable
59 | 				size: keepOriginalSize ? s : nil,
60 | 				isBold: keepOriginalIsBold ? b : nil,
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX27.0.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSFont.h: 0: 26 | APPKIT_EXTERN const CGFloat * NSFontIdentityMatrix;
 27 |
 28 | @interface NSFont : NSObject <NSCopying, NSSecureCoding>
    +---  --------------------------------------------------------------
    |1 | @_nonSendable(_assumed)
    |  | `- note: conformance of 'NSFont' to 'Sendable' has been explicitly marked unavailable here
    +-------------------------------------------------------------------
 29 |
 30 | /********* Factory *********/
/Users/admin/builder/spi-builder-workspace/Sources/XibLoc/Resolving Info/Tokens Group/CommonTokensGroup.swift:185:25: warning: conformance of 'NSFont' to 'Sendable' is unavailable
183 | 	public var str2AttrStrXibLocInfo: Str2AttrStrXibLocInfo {
184 | 		var defaultAttributes = baseAttributes
185 | 		if let f = baseFont  {defaultAttributes.font = f}
    |                         `- warning: conformance of 'NSFont' to 'Sendable' is unavailable
186 | 		if let c = baseColor {defaultAttributes.foregroundColor = c}
187 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX27.0.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSFont.h: 0: 26 | APPKIT_EXTERN const CGFloat * NSFontIdentityMatrix;
 27 |
 28 | @interface NSFont : NSObject <NSCopying, NSSecureCoding>
    +---  --------------------------------------------------------------
    |1 | @_nonSendable(_assumed)
    |  | `- note: conformance of 'NSFont' to 'Sendable' has been explicitly marked unavailable here
    +-------------------------------------------------------------------
 29 |
 30 | /********* Factory *********/
/Users/admin/builder/spi-builder-workspace/Sources/XibLoc/Resolving Info/Tokens Group/TokensGroup.swift:59:10: warning: 'applying(xibLocInfo:)' was deprecated in macOS 12: Use AttributedString [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
57 |
58 | 	public func applying(tokensGroupNSAttributed group: TokensGroup) -> NSMutableAttributedString {
59 | 		return applying(xibLocInfo: group.str2NSAttrStrXibLocInfo)
   |          `- warning: 'applying(xibLocInfo:)' was deprecated in macOS 12: Use AttributedString [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
60 | 	}
61 |
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
Build complete.
{
  "default_localization" : "en",
  "dependencies" : [
    {
      "identity" : "swift-log",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.2.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-log.git"
    }
  ],
  "manifest_display_name" : "XibLoc",
  "name" : "XibLoc",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "XibLoc",
      "targets" : [
        "XibLoc"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "XibLocTests",
      "module_type" : "SwiftTarget",
      "name" : "XibLocTests",
      "path" : "Tests/XibLocTests",
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/XibLocTests/Helpers/en.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "en"
            }
          }
        }
      ],
      "sources" : [
        "AttrStrTests.swift",
        "AttributedStringUtilsTests.swift",
        "Helpers/PluralityDefinition+Utils.swift",
        "Helpers/Utils.swift",
        "Helpers/XibLoc4ObjCHelper.swift",
        "PluralityTests.swift",
        "XibLocResolvingInfoTests.swift",
        "XibLocTestsSwiftAttrStr.swift",
        "XibLocTestsSwiftNSAttrStr.swift",
        "XibLocTestsSwiftStr.swift"
      ],
      "target_dependencies" : [
        "XibLoc"
      ],
      "type" : "test"
    },
    {
      "c99name" : "XibLoc",
      "module_type" : "SwiftTarget",
      "name" : "XibLoc",
      "path" : "Sources/XibLoc",
      "product_dependencies" : [
        "Logging"
      ],
      "product_memberships" : [
        "XibLoc"
      ],
      "sources" : [
        "Cache/CacheLock.swift",
        "Cache/ParsedXibLoc+InitCache.swift",
        "Cache/XibLocParsingInfo.swift",
        "Parser/ParsedXibLoc.swift",
        "Parser/ParserHelper+AttributedString.swift",
        "Parser/ParserHelper+NSMutableAttributedString.swift",
        "Parser/ParserHelper+String.swift",
        "Parser/ParserHelper.swift",
        "Plurality/PluralValue.swift",
        "Plurality/PluralityDefinition.swift",
        "Plurality/PluralityDefinitionZone.swift",
        "Plurality/PluralityDefinitionZoneValue.swift",
        "Plurality/PluralityDefinitionZoneValueGlob.swift",
        "Plurality/PluralityDefinitionZoneValueIntervalOfFloats.swift",
        "Plurality/PluralityDefinitionZoneValueIntervalOfInts.swift",
        "Plurality/PluralityDefinitionZoneValueNumber.swift",
        "Resolving Info/MultipleWordsTokens.swift",
        "Resolving Info/OneWordTokens.swift",
        "Resolving Info/Str2AttrStrXibLocInfo.swift",
        "Resolving Info/Str2NSAttrStrXibLocInfo.swift",
        "Resolving Info/Str2StrXibLocInfo.swift",
        "Resolving Info/Tokens Group/CommonTokensGroup.swift",
        "Resolving Info/Tokens Group/CommonTokensGroup_Linux.swift",
        "Resolving Info/Tokens Group/TokensGroup.swift",
        "Resolving Info/XibLocResolvingInfo.swift",
        "Utilities/AttributedString+Utils.swift",
        "Utilities/Collection+Utils.swift",
        "Utilities/NSMutableAttributedString+Utils.swift",
        "Utilities/NumberFormatter+Utils.swift",
        "Utilities/RandomAccessCollection+StableSort.swift",
        "Utilities/Range+Utils.swift",
        "Utilities/Scanner+LinuxCompat.swift",
        "Utilities/StringAttributesChangesDescription.swift",
        "Utilities/XibLocFont.swift",
        "Utilities/XibLocNumber.swift",
        "XibLoc.swift",
        "XibLocConfig.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.3"
}
Done.