The Swift Package Index logo.Swift Package Index

Build Information

Successful build of JavaScriptKit, reference 0.59.0 (991755), with Swift 6.4 for Android on 16 Sep 2026 03:01:32 UTC.

Swift 6 data race errors: 0

Build Command

bash -c docker run --pull=always --rm -v "checkouts-54344844-0":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/spi-images:android-6.4-latest swift build --swift-sdk aarch64-unknown-linux-android28 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 5.1.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/swiftwasm/JavaScriptKit.git
Reference: 0.59.0
Initialized empty Git repository in /host/spi-builder-workspace/.git/
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: 	git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: 	git branch -m <name>
From https://github.com/swiftwasm/JavaScriptKit
 * tag               0.59.0     -> FETCH_HEAD
HEAD is now at 991755e Merge pull request #811 from PassiveLogic/kr/package-to-js-uwasi
Cloned https://github.com/swiftwasm/JavaScriptKit.git
Revision (git rev-parse @):
991755e698a7516eac571e6f6a65c04c907ce5ed
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/swiftwasm/JavaScriptKit.git at 0.59.0
========================================
Build
========================================
Selected platform:         android
Swift version:             6.4
Building package at path:  $PWD
https://github.com/swiftwasm/JavaScriptKit.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-54344844-0":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/spi-images:android-6.4-latest swift build --swift-sdk aarch64-unknown-linux-android28 2>&1
android-6.4-latest: Pulling from saguaro1/spi-images
Digest: sha256:abadcff584c273feba50641b454858d377ba30b35ea7287a94f45ebd8afd0ea0
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:android-6.4-latest
Fetching https://github.com/swiftlang/swift-syntax
[1/79910] Fetching swift-syntax
Fetched https://github.com/swiftlang/swift-syntax (2.96s)
Computing version for https://github.com/swiftlang/swift-syntax
Computed https://github.com/swiftlang/swift-syntax at 603.0.2 (4.17s)
Creating working copy for https://github.com/swiftlang/swift-syntax
Working copy of https://github.com/swiftlang/swift-syntax resolved at 603.0.2
warning: 'spi-builder-workspace': found 1 file(s) which are unhandled; explicitly declare them as resources or exclude from the target
    /host/spi-builder-workspace/Tests/BridgeJSIdentityTests/JavaScript/IdentityModeTests.mjs
Building for debugging...
[Computing dependencies]
[Provisioning 23 / 37]
[Pre-planning 1 / 1001]
[Planning deferred tasks]
[187 / 365] _CJavaScriptEventLoop
[217 / 371]
[231 / 381] SwiftSyntax
[243 / 386] SwiftSyntax603
[251 / 386] SwiftSyntax
[252 / 387] SwiftSyntax600
[254 / 387] SwiftSyntax600
[255 / 387] SwiftSyntax
[268 / 415] SwiftParser
[270 / 415] SwiftDiagnostics
[272 / 415] SwiftDiagnostics
[282 / 415] SwiftParser
[283 / 415] SwiftParser
[286 / 415] SwiftParser
[292 / 415] SwiftDiagnostics
[293 / 415] SwiftDiagnostics
[295 / 415] SwiftOperators
[296 / 415] SwiftOperators
[297 / 415] SwiftDiagnostics
[299 / 415] SwiftDiagnostics
[300 / 415] SwiftBasicFormat
[302 / 416] SwiftParserDiagnostics
[304 / 416] SwiftDiagnostics
[309 / 436] SwiftOperators
[310 / 436] SwiftParserDiagnostics
[311 / 437] SwiftParserDiagnostics
[313 / 437] SwiftOperators
[324 / 437] SwiftParserDiagnostics
[326 / 437] SwiftParserDiagnostics
[327 / 438] SwiftParserDiagnostics
[328 / 438] SwiftParser
[331 / 438] SwiftOperators
[332 / 438] SwiftOperators
[335 / 438] SwiftOperators
[337 / 438] SwiftOperators
[338 / 438] SwiftBasicFormat
[341 / 448] SwiftOperators
[343 / 448] SwiftSyntaxBuilder
[345 / 450] SwiftSyntaxBuilder
[347 / 450] SwiftSyntaxBuilder
[348 / 450] SwiftSyntax
[358 / 451]
[361 / 460] SwiftOperators
[364 / 460] SwiftIfConfig
[370 / 460] SwiftIfConfig
[371 / 461] SwiftIfConfig
[373 / 461] SwiftSyntax
[376 / 462]
[381 / 471] SwiftSyntaxMacros
[386 / 471] SwiftSyntaxMacros
[399 / 482] SwiftSyntaxMacroExpansion
[401 / 483] SwiftSyntaxMacroExpansion
[404 / 483] SwiftSyntaxMacroExpansion
[414 / 493] SwiftCompilerPluginMessageHandling
[415 / 493] SwiftCompilerPluginMessageHandling
[416 / 493] SwiftCompilerPluginMessageHandling
[418 / 493] SwiftCompilerPluginMessageHandling
[425 / 494]
[432 / 496] SwiftCompilerPluginMessageHandling
[434 / 498] SwiftCompilerPlugin
[436 / 498] SwiftCompilerPluginMessageHandling
[437 / 499] SwiftCompilerPluginMessageHandling
[438 / 499] SwiftSyntax
[441 / 500] SwiftSyntax
[448 / 500] SwiftIfConfig
[457 / 501] BridgeJSMacros
[464 / 508] BridgeJSMacros
[465 / 508] BridgeJSMacros
[469 / 509] BridgeJSMacros
[479 / 519] JavaScriptKit
[493 / 532] JavaScriptEventLoop
[495 / 532] JavaScriptKit
/host/spi-builder-workspace/Sources/JavaScriptEventLoop/JavaScriptEventLoop.swift:211:19: warning: 'withUnsafeContinuation(isolation:_:)' is deprecated: Replaced by nonisolated(nonsending) overload [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
209 |     /// - Note: Calling this function does not switch from the caller's isolation domain.
210 |     public func value(isolation: isolated (any Actor)? = #isolation) async throws(JSException) -> JSValue {
211 |         try await withUnsafeContinuation(isolation: isolation) { [self] continuation in
    |                   `- warning: 'withUnsafeContinuation(isolation:_:)' is deprecated: Replaced by nonisolated(nonsending) overload [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
212 |             self.then(
213 |                 success: {
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
[503 / 533] JavaScriptEventLoopTestSupport
[507 / 536] JavaScriptBigIntSupport
[521 / 540] JavaScriptEventLoopTestSupport
[528 / 541] JavaScriptKit
[534 / 542] JavaScriptFoundationCompat
[538 / 543] JavaScriptEventLoop
[541 / 544] JavaScriptEventLoop
Build complete! (44.65 secs)
Build complete.
{
  "dependencies" : [
    {
      "identity" : "swift-syntax",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "600.0.0",
            "upper_bound" : "604.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/swiftlang/swift-syntax"
    }
  ],
  "manifest_display_name" : "JavaScriptKit",
  "name" : "JavaScriptKit",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "13.0"
    },
    {
      "name" : "ios",
      "version" : "13.0"
    },
    {
      "name" : "tvos",
      "version" : "13.0"
    },
    {
      "name" : "watchos",
      "version" : "6.0"
    },
    {
      "name" : "maccatalyst",
      "version" : "13.0"
    }
  ],
  "products" : [
    {
      "name" : "JavaScriptKit",
      "targets" : [
        "JavaScriptKit"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "JavaScriptEventLoop",
      "targets" : [
        "JavaScriptEventLoop"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "JavaScriptBigIntSupport",
      "targets" : [
        "JavaScriptBigIntSupport"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "JavaScriptFoundationCompat",
      "targets" : [
        "JavaScriptFoundationCompat"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "JavaScriptEventLoopTestSupport",
      "targets" : [
        "JavaScriptEventLoopTestSupport"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "PackageToJS",
      "targets" : [
        "PackageToJS"
      ],
      "type" : {
        "plugin" : null
      }
    },
    {
      "name" : "BridgeJS",
      "targets" : [
        "BridgeJS"
      ],
      "type" : {
        "plugin" : null
      }
    },
    {
      "name" : "BridgeJSCommandPlugin",
      "targets" : [
        "BridgeJSCommandPlugin"
      ],
      "type" : {
        "plugin" : null
      }
    },
    {
      "name" : "BridgeJSTool",
      "targets" : [
        "BridgeJSTool"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "BridgeJSMacros",
      "targets" : [
        "BridgeJSMacros"
      ],
      "type" : {
        "macro" : null
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "_CJavaScriptKit",
      "module_type" : "ClangTarget",
      "name" : "_CJavaScriptKit",
      "path" : "Sources/_CJavaScriptKit",
      "product_memberships" : [
        "JavaScriptKit",
        "JavaScriptEventLoop",
        "JavaScriptBigIntSupport",
        "JavaScriptFoundationCompat",
        "JavaScriptEventLoopTestSupport"
      ],
      "sources" : [
        "_CJavaScriptKit.c"
      ],
      "type" : "library"
    },
    {
      "c99name" : "_CJavaScriptEventLoopTestSupport",
      "module_type" : "ClangTarget",
      "name" : "_CJavaScriptEventLoopTestSupport",
      "path" : "Sources/_CJavaScriptEventLoopTestSupport",
      "product_memberships" : [
        "JavaScriptEventLoopTestSupport"
      ],
      "sources" : [
        "_CJavaScriptEventLoopTestSupport.c"
      ],
      "type" : "library"
    },
    {
      "c99name" : "_CJavaScriptEventLoop",
      "module_type" : "ClangTarget",
      "name" : "_CJavaScriptEventLoop",
      "path" : "Sources/_CJavaScriptEventLoop",
      "product_memberships" : [
        "JavaScriptEventLoop",
        "JavaScriptEventLoopTestSupport"
      ],
      "sources" : [
        "_CJavaScriptEventLoop.c"
      ],
      "type" : "library"
    },
    {
      "c99name" : "_CJavaScriptBigIntSupport",
      "module_type" : "ClangTarget",
      "name" : "_CJavaScriptBigIntSupport",
      "path" : "Sources/_CJavaScriptBigIntSupport",
      "product_memberships" : [
        "JavaScriptBigIntSupport"
      ],
      "sources" : [
        "_CJavaScriptKit+I64.c"
      ],
      "target_dependencies" : [
        "_CJavaScriptKit"
      ],
      "type" : "library"
    },
    {
      "c99name" : "PackageToJS",
      "module_type" : "PluginTarget",
      "name" : "PackageToJS",
      "path" : "Plugins/PackageToJS/Sources",
      "plugin_capability" : {
        "intent" : {
          "description" : "Convert a Swift package to a JavaScript package",
          "type" : "custom",
          "verb" : "js"
        },
        "permissions" : [
        ],
        "type" : "command"
      },
      "product_memberships" : [
        "PackageToJS"
      ],
      "sources" : [
        "BridgeJSLink/BridgeJSLink.swift",
        "BridgeJSLink/ImportedJSModuleRegistry.swift",
        "BridgeJSLink/JSGlueGen.swift",
        "BridgeJSLink/JSIntrinsicRegistry.swift",
        "BridgeJSPluginUtilities/PluginPaths.swift",
        "BridgeJSSkeleton/BridgeJSSkeleton.swift",
        "BridgeJSUtilities/JavaScriptModulePath.swift",
        "BridgeJSUtilities/Utilities.swift",
        "MiniMake.swift",
        "PackageToJS.swift",
        "PackageToJSPlugin.swift",
        "ParseWasm.swift",
        "Preprocess.swift",
        "TestsParser.swift"
      ],
      "type" : "plugin"
    },
    {
      "c99name" : "JavaScriptKitTests",
      "module_type" : "SwiftTarget",
      "name" : "JavaScriptKitTests",
      "path" : "Tests/JavaScriptKitTests",
      "sources" : [
        "JSClosureTests.swift",
        "JSExceptionTests.swift",
        "JSObjectTests.swift",
        "JSStringTests.swift",
        "JSTracingTests.swift",
        "JSTypedArrayTests.swift",
        "JavaScriptKitTests.swift",
        "ThreadLocalTests.swift"
      ],
      "target_dependencies" : [
        "JavaScriptKit",
        "JavaScriptEventLoopTestSupport"
      ],
      "type" : "test"
    },
    {
      "c99name" : "JavaScriptKit",
      "module_type" : "SwiftTarget",
      "name" : "JavaScriptKit",
      "path" : "Sources/JavaScriptKit",
      "product_memberships" : [
        "JavaScriptKit",
        "JavaScriptEventLoop",
        "JavaScriptBigIntSupport",
        "JavaScriptFoundationCompat",
        "JavaScriptEventLoopTestSupport"
      ],
      "sources" : [
        "BasicObjects/JSArray.swift",
        "BasicObjects/JSDate.swift",
        "BasicObjects/JSError.swift",
        "BasicObjects/JSPromise.swift",
        "BasicObjects/JSTimer.swift",
        "BasicObjects/JSTypedArray.swift",
        "BridgeJSIntrinsics.swift",
        "ConstructibleFromJSValue.swift",
        "ConvertibleToJSValue.swift",
        "Deprecated.swift",
        "Features.swift",
        "FundamentalObjects/JSBigInt.swift",
        "FundamentalObjects/JSClosure.swift",
        "FundamentalObjects/JSObject+CallAsFunction.swift",
        "FundamentalObjects/JSObject.swift",
        "FundamentalObjects/JSString.swift",
        "FundamentalObjects/JSSymbol.swift",
        "FundamentalObjects/JSThrowingFunction.swift",
        "JSBridgedType.swift",
        "JSException.swift",
        "JSTracing.swift",
        "JSUndefinedOr.swift",
        "JSValue.swift",
        "JSValueDecoder.swift",
        "Macros.swift",
        "ThreadLocal.swift"
      ],
      "target_dependencies" : [
        "_CJavaScriptKit",
        "BridgeJSMacros"
      ],
      "type" : "library"
    },
    {
      "c99name" : "JavaScriptFoundationCompatTests",
      "module_type" : "SwiftTarget",
      "name" : "JavaScriptFoundationCompatTests",
      "path" : "Tests/JavaScriptFoundationCompatTests",
      "sources" : [
        "Data+JSValueTests.swift"
      ],
      "target_dependencies" : [
        "JavaScriptFoundationCompat"
      ],
      "type" : "test"
    },
    {
      "c99name" : "JavaScriptFoundationCompat",
      "module_type" : "SwiftTarget",
      "name" : "JavaScriptFoundationCompat",
      "path" : "Sources/JavaScriptFoundationCompat",
      "product_memberships" : [
        "JavaScriptFoundationCompat"
      ],
      "sources" : [
        "Data+JSValue.swift"
      ],
      "target_dependencies" : [
        "JavaScriptKit"
      ],
      "type" : "library"
    },
    {
      "c99name" : "JavaScriptEventLoopTests",
      "module_type" : "SwiftTarget",
      "name" : "JavaScriptEventLoopTests",
      "path" : "Tests/JavaScriptEventLoopTests",
      "sources" : [
        "JSClosure+AsyncTests.swift",
        "JSPromiseTests.swift",
        "JSTimerTests.swift",
        "JavaScriptEventLoopTests.swift",
        "WebWorkerDedicatedExecutorTests.swift",
        "WebWorkerTaskExecutorTests.swift"
      ],
      "target_dependencies" : [
        "JavaScriptEventLoop",
        "JavaScriptKit",
        "JavaScriptEventLoopTestSupport"
      ],
      "type" : "test"
    },
    {
      "c99name" : "JavaScriptEventLoopTestSupportTests",
      "module_type" : "SwiftTarget",
      "name" : "JavaScriptEventLoopTestSupportTests",
      "path" : "Tests/JavaScriptEventLoopTestSupportTests",
      "sources" : [
        "JavaScriptEventLoopTestSupportTests.swift"
      ],
      "target_dependencies" : [
        "JavaScriptKit",
        "JavaScriptEventLoopTestSupport"
      ],
      "type" : "test"
    },
    {
      "c99name" : "JavaScriptEventLoopTestSupport",
      "module_type" : "SwiftTarget",
      "name" : "JavaScriptEventLoopTestSupport",
      "path" : "Sources/JavaScriptEventLoopTestSupport",
      "product_memberships" : [
        "JavaScriptEventLoopTestSupport"
      ],
      "sources" : [
        "JavaScriptEventLoopTestSupport.swift"
      ],
      "target_dependencies" : [
        "_CJavaScriptEventLoopTestSupport",
        "JavaScriptEventLoop"
      ],
      "type" : "library"
    },
    {
      "c99name" : "JavaScriptEventLoop",
      "module_type" : "SwiftTarget",
      "name" : "JavaScriptEventLoop",
      "path" : "Sources/JavaScriptEventLoop",
      "product_memberships" : [
        "JavaScriptEventLoop",
        "JavaScriptEventLoopTestSupport"
      ],
      "sources" : [
        "JSRemote.swift",
        "JSSending.swift",
        "JavaScriptEventLoop+ExecutorFactory.swift",
        "JavaScriptEventLoop+LegacyHooks.swift",
        "JavaScriptEventLoop.swift",
        "JobQueue.swift",
        "WebWorkerDedicatedExecutor.swift",
        "WebWorkerTaskExecutor.swift"
      ],
      "target_dependencies" : [
        "JavaScriptKit",
        "_CJavaScriptEventLoop"
      ],
      "type" : "library"
    },
    {
      "c99name" : "JavaScriptBigIntSupportTests",
      "module_type" : "SwiftTarget",
      "name" : "JavaScriptBigIntSupportTests",
      "path" : "Tests/JavaScriptBigIntSupportTests",
      "sources" : [
        "JavaScriptBigIntSupportTests.swift"
      ],
      "target_dependencies" : [
        "JavaScriptBigIntSupport",
        "JavaScriptKit"
      ],
      "type" : "test"
    },
    {
      "c99name" : "JavaScriptBigIntSupport",
      "module_type" : "SwiftTarget",
      "name" : "JavaScriptBigIntSupport",
      "path" : "Sources/JavaScriptBigIntSupport",
      "product_memberships" : [
        "JavaScriptBigIntSupport"
      ],
      "sources" : [
        "Int64+I64.swift",
        "JSBigInt+I64.swift"
      ],
      "target_dependencies" : [
        "_CJavaScriptBigIntSupport",
        "JavaScriptKit"
      ],
      "type" : "library"
    },
    {
      "c99name" : "BridgeJSTool",
      "module_type" : "SwiftTarget",
      "name" : "BridgeJSTool",
      "path" : "Sources/BridgeJSTool",
      "product_dependencies" : [
        "SwiftParser",
        "SwiftSyntax",
        "SwiftBasicFormat",
        "SwiftSyntaxBuilder"
      ],
      "product_memberships" : [
        "BridgeJS",
        "BridgeJSCommandPlugin",
        "BridgeJSTool"
      ],
      "sources" : [
        "BridgeJSCore/ClosureCodegen.swift",
        "BridgeJSCore/ExportSwift.swift",
        "BridgeJSCore/ExternalModuleIndex.swift",
        "BridgeJSCore/ImportTS.swift",
        "BridgeJSCore/Misc.swift",
        "BridgeJSCore/SwiftToSkeleton.swift",
        "BridgeJSCore/TypeDeclResolver.swift",
        "BridgeJSSkeleton/BridgeJSSkeleton.swift",
        "BridgeJSTool/BridgeJSTool.swift",
        "BridgeJSUtilities/JavaScriptModulePath.swift",
        "BridgeJSUtilities/Utilities.swift",
        "TS2Swift/TS2Swift.swift"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "BridgeJSRuntimeTests",
      "module_type" : "SwiftTarget",
      "name" : "BridgeJSRuntimeTests",
      "path" : "Tests/BridgeJSRuntimeTests",
      "sources" : [
        "AliasAPIs.swift",
        "AliasTests.swift",
        "ArraySupportTests.swift",
        "AsyncImportTests.swift",
        "ClosureAsyncAPIs.swift",
        "ClosureSupportTests.swift",
        "ClosureThrowsAPIs.swift",
        "CrossFileNestedTypeClassAPIs.swift",
        "CrossFileNestedTypeExtensionAPIs.swift",
        "DefaultArgumentTests.swift",
        "DictionarySupportTests.swift",
        "ExportAPITests.swift",
        "ExtensionNestedTypesAPIs.swift",
        "Generated/BridgeJS.Macros.swift",
        "Generated/BridgeJS.swift",
        "GlobalThisImportTests.swift",
        "ImportAPITests.swift",
        "ImportGenericAPIs.swift",
        "ImportStructAPIs.swift",
        "IntegerTypesSupportTests.swift",
        "JSClassSupportTests.swift",
        "JSImportBareModuleTests.swift",
        "JSImportModuleTests.swift",
        "JSNameAPIs.swift",
        "JSTypedArrayTests.swift",
        "MacroCompileTests/JSClassCompileTests.swift",
        "MacroCompileTests/JSFunctionCompileTests.swift",
        "OptionalSupportTests.swift",
        "StructAPIs.swift",
        "SwiftClassSupportTests.swift",
        "SwiftStructTests.swift"
      ],
      "target_dependencies" : [
        "JavaScriptKit",
        "JavaScriptEventLoop",
        "JavaScriptEventLoopTestSupport"
      ],
      "type" : "test"
    },
    {
      "c99name" : "BridgeJSMacros",
      "module_type" : "SwiftTarget",
      "name" : "BridgeJSMacros",
      "path" : "Sources/BridgeJSMacros",
      "product_dependencies" : [
        "SwiftSyntaxMacros",
        "SwiftCompilerPlugin"
      ],
      "product_memberships" : [
        "JavaScriptKit",
        "JavaScriptEventLoop",
        "JavaScriptBigIntSupport",
        "JavaScriptFoundationCompat",
        "JavaScriptEventLoopTestSupport",
        "BridgeJSMacros"
      ],
      "sources" : [
        "BridgeJSMacrosPlugin.swift",
        "JSClassMacro.swift",
        "JSFunctionMacro.swift",
        "JSGetterMacro.swift",
        "JSMacroSupport.swift",
        "JSSetterMacro.swift"
      ],
      "type" : "macro"
    },
    {
      "c99name" : "BridgeJSIdentityTests",
      "module_type" : "SwiftTarget",
      "name" : "BridgeJSIdentityTests",
      "path" : "Tests/BridgeJSIdentityTests",
      "sources" : [
        "Generated/BridgeJS.swift",
        "IdentityModeTests.swift"
      ],
      "target_dependencies" : [
        "JavaScriptKit",
        "JavaScriptEventLoop",
        "JavaScriptEventLoopTestSupport"
      ],
      "type" : "test"
    },
    {
      "c99name" : "BridgeJSGlobalTests",
      "module_type" : "SwiftTarget",
      "name" : "BridgeJSGlobalTests",
      "path" : "Tests/BridgeJSGlobalTests",
      "sources" : [
        "Generated/BridgeJS.swift",
        "GlobalAPITests.swift"
      ],
      "target_dependencies" : [
        "JavaScriptKit",
        "JavaScriptEventLoop"
      ],
      "type" : "test"
    },
    {
      "c99name" : "BridgeJSCommandPlugin",
      "module_type" : "PluginTarget",
      "name" : "BridgeJSCommandPlugin",
      "path" : "Plugins/BridgeJS/Sources/BridgeJSCommandPlugin",
      "plugin_capability" : {
        "intent" : {
          "description" : "Generate bridging code",
          "type" : "custom",
          "verb" : "bridge-js"
        },
        "permissions" : [
          {
            "network_scope" : {
              "none" : {
              }
            },
            "reason" : "Generate bridging code",
            "type" : "writeToPackageDirectory"
          }
        ],
        "type" : "command"
      },
      "product_memberships" : [
        "BridgeJSCommandPlugin"
      ],
      "sources" : [
        "BridgeJSCommandPlugin.swift"
      ],
      "target_dependencies" : [
        "BridgeJSTool"
      ],
      "type" : "plugin"
    },
    {
      "c99name" : "BridgeJS",
      "module_type" : "PluginTarget",
      "name" : "BridgeJS",
      "path" : "Plugins/BridgeJS/Sources/BridgeJSBuildPlugin",
      "plugin_capability" : {
        "type" : "buildTool"
      },
      "product_memberships" : [
        "BridgeJS"
      ],
      "sources" : [
        "BridgeJSBuildPlugin.swift",
        "BridgeJSPluginUtilities/PluginPaths.swift"
      ],
      "target_dependencies" : [
        "BridgeJSTool"
      ],
      "type" : "plugin"
    }
  ],
  "tools_version" : "6.2"
}
android-6.4-latest: Pulling from saguaro1/spi-images
Digest: sha256:abadcff584c273feba50641b454858d377ba30b35ea7287a94f45ebd8afd0ea0
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:android-6.4-latest
Done.