The Swift Package Index logo.Swift Package Index

Build Information

Successful build of swift-ros2, reference 0.6.1 (180300), with Swift 6.2 for macOS (SPM) on 28 Apr 2026 23:45:28 UTC.

Swift 6 data race errors: 0

Build Command

env DEVELOPER_DIR=/Applications/Xcode-26.3.0.app xcrun swift build --arch arm64

Build Log

========================================
RunAll
========================================
Builder version: 4.70.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/youtalk/swift-ros2.git
Reference: 0.6.1
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/youtalk/swift-ros2
 * tag               0.6.1      -> FETCH_HEAD
HEAD is now at 180300b fix(cdds): support cyclonedds 11 radmin header rename (#55)
Submodule path 'vendor/cyclonedds': checked out '0bab1b248f3dc2e94d0a0c4d93cbf069035cf50c'
Submodule path 'vendor/zenoh-pico': checked out 'd2028ed42e8fcc05effbef90d6708305911c73a3'
Submodule 'vendor/cyclonedds' (https://github.com/youtalk/cyclonedds.git) registered for path 'vendor/cyclonedds'
Submodule 'vendor/zenoh-pico' (https://github.com/youtalk/zenoh-pico.git) registered for path 'vendor/zenoh-pico'
Cloning into '/Users/admin/builder/spi-builder-workspace/vendor/cyclonedds'...
Cloning into '/Users/admin/builder/spi-builder-workspace/vendor/zenoh-pico'...
Cloned https://github.com/youtalk/swift-ros2.git
Revision (git rev-parse @):
180300b6f5014434c6b972d6f35a3a749d86774c
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/youtalk/swift-ros2.git at 0.6.1
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.2
Building package at path:  $PWD
https://github.com/youtalk/swift-ros2.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-26.3.0.app xcrun swift build --arch arm64
Building for debugging...
[0/24] Write sources
[3/24] Write talker-entitlement.plist
[4/24] Write listener-entitlement.plist
[7/24] Write sources
[11/24] Copying libzenohpico.a
[11/24] Copying libddsc.a
[13/24] Write swift-version--3CB7CFEC50E0D141.txt
[14/33] Compiling CDDSBridge raw_cdr_regression_bridge.c
[15/33] Compiling CDDSBridge dds_bridge.c
[16/33] Compiling CDDSBridge raw_cdr_sertype.c
[17/33] Compiling CZenohBridge zenoh_bridge.c
[19/33] Compiling SwiftROS2Wire ZenohWireCodec.swift
[20/33] Compiling SwiftROS2Wire DDSWireCodec.swift
[21/33] Compiling SwiftROS2Wire TypeNameConverter.swift
[22/33] Compiling SwiftROS2Wire ROS2Distro.swift
[23/33] Emitting module SwiftROS2Wire
[24/33] Compiling SwiftROS2Wire WireCodec.swift
[25/33] Emitting module SwiftROS2CDR
[26/33] Compiling SwiftROS2CDR CDRDecoder.swift
[27/33] Compiling SwiftROS2CDR CDREncoder.swift
[28/71] Compiling SwiftROS2Messages SetBool.swift
[29/71] Compiling SwiftROS2Messages Trigger.swift
[30/73] Compiling SwiftROS2Messages StdMsgs.swift
[31/73] Compiling SwiftROS2Messages Empty.swift
[32/73] Compiling SwiftROS2Messages RegionOfInterest.swift
[33/73] Compiling SwiftROS2Messages Temperature.swift
[34/73] Compiling SwiftROS2Transport ZenohTransportSession+Connection.swift
/Users/admin/builder/spi-builder-workspace/Sources/SwiftROS2Transport/ZenohTransportSession+Connection.swift:13:21: warning: capture of 'client' with non-Sendable type 'any ZenohClientProtocol' in a '@Sendable' closure [#SendableClosureCaptures]
11 |         DispatchQueue.global(qos: .userInitiated).async {
12 |             do {
13 |                 try client.open(locator: locator)
   |                     `- warning: capture of 'client' with non-Sendable type 'any ZenohClientProtocol' in a '@Sendable' closure [#SendableClosureCaptures]
14 |                 result.setCompleted()
15 |             } catch {
/Users/admin/builder/spi-builder-workspace/Sources/SwiftROS2Transport/ZenohClientProtocol.swift:85:17: note: protocol 'ZenohClientProtocol' does not conform to the 'Sendable' protocol
 83 | /// }
 84 | /// ```
 85 | public protocol ZenohClientProtocol: AnyObject {
    |                 `- note: protocol 'ZenohClientProtocol' does not conform to the 'Sendable' protocol
 86 |     /// Open a Zenoh session
 87 |     func open(locator: String) throws
[#SendableClosureCaptures]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures>
[35/73] Compiling SwiftROS2Transport ZenohTransportSession+Publisher.swift
/Users/admin/builder/spi-builder-workspace/Sources/SwiftROS2Transport/ZenohTransportSession+Publisher.swift:45:85: warning: left side of nil coalescing operator '??' has non-optional type 'String', so the right side is never used
 43 |             declaredKey = try client.declareKeyExpr(keyExpr)
 44 |         } catch let error as ZenohError {
 45 |             throw TransportError.publisherCreationFailed(error.localizedDescription ?? "Key declaration failed")
    |                                                                                     `- warning: left side of nil coalescing operator '??' has non-optional type 'String', so the right side is never used
 46 |         }
 47 |
/Users/admin/builder/spi-builder-workspace/Sources/SwiftROS2Transport/ZenohTransportSession+Publisher.swift:158:82: warning: left side of nil coalescing operator '??' has non-optional type 'String', so the right side is never used
156 |         } catch let error as ZenohError {
157 |             if case .sessionDisconnected = error {
158 |                 throw TransportError.sessionUnhealthy(error.localizedDescription ?? "Disconnected")
    |                                                                                  `- warning: left side of nil coalescing operator '??' has non-optional type 'String', so the right side is never used
159 |             }
160 |             throw TransportError.publishFailed(error.localizedDescription ?? "Put failed")
/Users/admin/builder/spi-builder-workspace/Sources/SwiftROS2Transport/ZenohTransportSession+Publisher.swift:160:75: warning: left side of nil coalescing operator '??' has non-optional type 'String', so the right side is never used
158 |                 throw TransportError.sessionUnhealthy(error.localizedDescription ?? "Disconnected")
159 |             }
160 |             throw TransportError.publishFailed(error.localizedDescription ?? "Put failed")
    |                                                                           `- warning: left side of nil coalescing operator '??' has non-optional type 'String', so the right side is never used
161 |         }
162 |     }
[36/73] Compiling SwiftROS2Messages TFMessage.swift
[37/73] Compiling SwiftROS2Messages BatteryState.swift
[38/73] Compiling SwiftROS2Transport ZenohTransportSession+Subscriber.swift
[39/73] Compiling SwiftROS2Transport ZenohClientProtocol.swift
[40/74] Compiling SwiftROS2Messages Imu.swift
[41/74] Compiling SwiftROS2Messages Joy.swift
[42/74] Compiling SwiftROS2Messages MagneticField.swift
[43/74] Emitting module SwiftROS2Messages
[44/74] Compiling SwiftROS2Messages AudioData.swift
[45/74] Compiling SwiftROS2Messages GeometryMsgs.swift
[46/74] Compiling SwiftROS2Messages FluidPressure.swift
[47/74] Compiling SwiftROS2Messages Illuminance.swift
[48/74] Compiling SwiftROS2Messages Image.swift
[49/74] Compiling SwiftROS2Messages PointField.swift
[50/74] Compiling SwiftROS2Messages CameraInfo.swift
/Users/admin/builder/spi-builder-workspace/Sources/SwiftROS2Transport/DDSTransportSession.swift:72:14: warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
 70 |         try client.createSession(domainId: Int32(config.domainId), discoveryConfig: discoveryConfig)
 71 |
 72 |         lock.lock()
    |              `- warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
 73 |         self.config = config
 74 |         self.isOpen = true
Foundation.NSLock.lock:2:11: note: 'lock()' declared here
1 | class NSLock {
2 | open func lock()}
  |           `- note: 'lock()' declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/SwiftROS2Transport/DDSTransportSession.swift:76:14: warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
 74 |         self.isOpen = true
 75 |         self._sessionId = client.getSessionId() ?? generateFallbackSessionId()
 76 |         lock.unlock()
    |              `- warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
 77 |     }
 78 |
Foundation.NSLock.unlock:2:11: note: 'unlock()' declared here
1 | class NSLock {
2 | open func unlock()}
  |           `- note: 'unlock()' declared here
3 |
[51/74] Compiling SwiftROS2Messages CompressedImage.swift
/Users/admin/builder/spi-builder-workspace/Sources/SwiftROS2Transport/DDSTransportSession.swift:72:14: warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
 70 |         try client.createSession(domainId: Int32(config.domainId), discoveryConfig: discoveryConfig)
 71 |
 72 |         lock.lock()
    |              `- warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
 73 |         self.config = config
 74 |         self.isOpen = true
Foundation.NSLock.lock:2:11: note: 'lock()' declared here
1 | class NSLock {
2 | open func lock()}
  |           `- note: 'lock()' declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/SwiftROS2Transport/DDSTransportSession.swift:76:14: warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
 74 |         self.isOpen = true
 75 |         self._sessionId = client.getSessionId() ?? generateFallbackSessionId()
 76 |         lock.unlock()
    |              `- warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
 77 |     }
 78 |
Foundation.NSLock.unlock:2:11: note: 'unlock()' declared here
1 | class NSLock {
2 | open func unlock()}
  |           `- note: 'unlock()' declared here
3 |
[52/74] Emitting module SwiftROS2Transport
[54/74] Compiling SwiftROS2Messages Range.swift
[64/74] Compiling SwiftROS2Messages NavSatFix.swift
[65/74] Compiling SwiftROS2Messages PointCloud2.swift
[66/74] Compiling SwiftROS2Transport ZenohTransportSession.swift
/Users/admin/builder/spi-builder-workspace/Sources/SwiftROS2Transport/ZenohTransportSession.swift:78:78: warning: left side of nil coalescing operator '??' has non-optional type 'String', so the right side is never used
 76 |             }
 77 |         } catch let error as ZenohError {
 78 |             throw TransportError.connectionFailed(error.localizedDescription ?? "Zenoh connection failed")
    |                                                                              `- warning: left side of nil coalescing operator '??' has non-optional type 'String', so the right side is never used
 79 |         } catch let error as TransportError {
 80 |             throw error
[67/74] Compiling SwiftROS2Messages CommonTypes.swift
[68/74] Compiling SwiftROS2Messages MessageProtocol.swift
[69/80] Emitting module SwiftROS2DDS
[70/80] Compiling SwiftROS2DDS Exports.swift
[71/80] Compiling SwiftROS2DDS DDSClient.swift
[72/80] Compiling SwiftROS2Zenoh ZenohClient.swift
[73/80] Emitting module SwiftROS2Zenoh
[74/80] Compiling SwiftROS2Zenoh Exports.swift
[75/87] Compiling SwiftROS2 QoSProfile.swift
[76/87] Compiling SwiftROS2 Subscription.swift
[77/87] Compiling SwiftROS2 Publisher.swift
[78/87] Compiling SwiftROS2 Context.swift
[79/87] Compiling SwiftROS2 Exports.swift
[80/87] Emitting module SwiftROS2
[81/87] Compiling SwiftROS2 Node.swift
[82/91] Compiling listener main.swift
[83/91] Emitting module listener
[84/91] Compiling talker main.swift
[85/91] Emitting module talker
[85/91] Write Objects.LinkFileList
[87/91] Linking listener
[88/91] Applying listener
[89/91] Linking talker
[90/91] Applying talker
Build complete! (9.40s)
Downloading binary artifact https://github.com/youtalk/swift-ros2/releases/download/0.6.0/CZenohPico.xcframework.zip
Downloading binary artifact https://github.com/youtalk/swift-ros2/releases/download/0.6.0/CCycloneDDS.xcframework.zip
[16375/2480232] Downloading https://github.com/youtalk/swift-ros2/releases/download/0.6.0/CZenohPico.xcframework.zip
[2496607/9096067] Downloading https://github.com/youtalk/swift-ros2/releases/download/0.6.0/CZenohPico.xcframework.zip, https://github.com/youtalk/swift-ros2/releases/download/0.6.0/CCycloneDDS.xcframework.zip
Downloaded https://github.com/youtalk/swift-ros2/releases/download/0.6.0/CZenohPico.xcframework.zip (1.42s)
Downloaded https://github.com/youtalk/swift-ros2/releases/download/0.6.0/CCycloneDDS.xcframework.zip (1.70s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "swift-ros2",
  "name" : "swift-ros2",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "16.0"
    },
    {
      "name" : "macos",
      "version" : "13.0"
    },
    {
      "name" : "maccatalyst",
      "version" : "16.0"
    },
    {
      "name" : "visionos",
      "version" : "1.0"
    }
  ],
  "products" : [
    {
      "name" : "SwiftROS2CDR",
      "targets" : [
        "SwiftROS2CDR"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "SwiftROS2Messages",
      "targets" : [
        "SwiftROS2Messages"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "SwiftROS2Wire",
      "targets" : [
        "SwiftROS2Wire"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "SwiftROS2Transport",
      "targets" : [
        "SwiftROS2Transport"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "SwiftROS2Zenoh",
      "targets" : [
        "SwiftROS2Zenoh"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "SwiftROS2",
      "targets" : [
        "SwiftROS2"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "SwiftROS2DDS",
      "targets" : [
        "SwiftROS2DDS"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "talker",
      "targets" : [
        "talker"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "listener",
      "targets" : [
        "listener"
      ],
      "type" : {
        "executable" : null
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "talker",
      "module_type" : "SwiftTarget",
      "name" : "talker",
      "path" : "Sources/Examples/Talker",
      "product_memberships" : [
        "talker"
      ],
      "sources" : [
        "main.swift"
      ],
      "target_dependencies" : [
        "SwiftROS2"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "listener",
      "module_type" : "SwiftTarget",
      "name" : "listener",
      "path" : "Sources/Examples/Listener",
      "product_memberships" : [
        "listener"
      ],
      "sources" : [
        "main.swift"
      ],
      "target_dependencies" : [
        "SwiftROS2"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "SwiftROS2ZenohTests",
      "module_type" : "SwiftTarget",
      "name" : "SwiftROS2ZenohTests",
      "path" : "Tests/SwiftROS2ZenohTests",
      "sources" : [
        "ZenohClientSmokeTests.swift"
      ],
      "target_dependencies" : [
        "SwiftROS2Zenoh"
      ],
      "type" : "test"
    },
    {
      "c99name" : "SwiftROS2Zenoh",
      "module_type" : "SwiftTarget",
      "name" : "SwiftROS2Zenoh",
      "path" : "Sources/SwiftROS2Zenoh",
      "product_memberships" : [
        "SwiftROS2Zenoh",
        "SwiftROS2",
        "talker",
        "listener"
      ],
      "sources" : [
        "Exports.swift",
        "ZenohClient.swift"
      ],
      "target_dependencies" : [
        "CZenohBridge",
        "SwiftROS2Transport",
        "SwiftROS2Wire"
      ],
      "type" : "library"
    },
    {
      "c99name" : "SwiftROS2WireTests",
      "module_type" : "SwiftTarget",
      "name" : "SwiftROS2WireTests",
      "path" : "Tests/SwiftROS2WireTests",
      "sources" : [
        "WireCodecTests.swift"
      ],
      "target_dependencies" : [
        "SwiftROS2Wire"
      ],
      "type" : "test"
    },
    {
      "c99name" : "SwiftROS2Wire",
      "module_type" : "SwiftTarget",
      "name" : "SwiftROS2Wire",
      "path" : "Sources/SwiftROS2Wire",
      "product_memberships" : [
        "SwiftROS2Wire",
        "SwiftROS2Transport",
        "SwiftROS2Zenoh",
        "SwiftROS2",
        "SwiftROS2DDS",
        "talker",
        "listener"
      ],
      "sources" : [
        "DDSWireCodec.swift",
        "ROS2Distro.swift",
        "TypeNameConverter.swift",
        "WireCodec.swift",
        "ZenohWireCodec.swift"
      ],
      "type" : "library"
    },
    {
      "c99name" : "SwiftROS2Transport",
      "module_type" : "SwiftTarget",
      "name" : "SwiftROS2Transport",
      "path" : "Sources/SwiftROS2Transport",
      "product_memberships" : [
        "SwiftROS2Transport",
        "SwiftROS2Zenoh",
        "SwiftROS2",
        "SwiftROS2DDS",
        "talker",
        "listener"
      ],
      "sources" : [
        "DDSClientProtocol.swift",
        "DDSTransportSession+Publisher.swift",
        "DDSTransportSession+Subscriber.swift",
        "DDSTransportSession.swift",
        "EntityManager.swift",
        "GIDManager.swift",
        "RMWRequestId.swift",
        "TransportConfig.swift",
        "TransportQoS+QoSPolicy.swift",
        "TransportSession.swift",
        "ZenohClientProtocol.swift",
        "ZenohTransportSession+Connection.swift",
        "ZenohTransportSession+Publisher.swift",
        "ZenohTransportSession+Subscriber.swift",
        "ZenohTransportSession.swift"
      ],
      "target_dependencies" : [
        "SwiftROS2CDR",
        "SwiftROS2Wire"
      ],
      "type" : "library"
    },
    {
      "c99name" : "SwiftROS2Tests",
      "module_type" : "SwiftTarget",
      "name" : "SwiftROS2Tests",
      "path" : "Tests/SwiftROS2Tests",
      "sources" : [
        "ContextFactoryTests.swift",
        "MessageRoundTripTests.swift",
        "StdSrvsRoundTripTests.swift"
      ],
      "target_dependencies" : [
        "SwiftROS2",
        "SwiftROS2Messages",
        "SwiftROS2CDR"
      ],
      "type" : "test"
    },
    {
      "c99name" : "SwiftROS2Messages",
      "module_type" : "SwiftTarget",
      "name" : "SwiftROS2Messages",
      "path" : "Sources/SwiftROS2Messages",
      "product_memberships" : [
        "SwiftROS2Messages",
        "SwiftROS2",
        "talker",
        "listener"
      ],
      "sources" : [
        "BuiltinMessages/AudioMsgs/AudioData.swift",
        "BuiltinMessages/GeometryMsgs/GeometryMsgs.swift",
        "BuiltinMessages/GeometryMsgs/TFMessage.swift",
        "BuiltinMessages/SensorMsgs/BatteryState.swift",
        "BuiltinMessages/SensorMsgs/CameraInfo.swift",
        "BuiltinMessages/SensorMsgs/CompressedImage.swift",
        "BuiltinMessages/SensorMsgs/FluidPressure.swift",
        "BuiltinMessages/SensorMsgs/Illuminance.swift",
        "BuiltinMessages/SensorMsgs/Image.swift",
        "BuiltinMessages/SensorMsgs/Imu.swift",
        "BuiltinMessages/SensorMsgs/Joy.swift",
        "BuiltinMessages/SensorMsgs/MagneticField.swift",
        "BuiltinMessages/SensorMsgs/NavSatFix.swift",
        "BuiltinMessages/SensorMsgs/PointCloud2.swift",
        "BuiltinMessages/SensorMsgs/PointField.swift",
        "BuiltinMessages/SensorMsgs/Range.swift",
        "BuiltinMessages/SensorMsgs/RegionOfInterest.swift",
        "BuiltinMessages/SensorMsgs/Temperature.swift",
        "BuiltinMessages/StdMsgs/StdMsgs.swift",
        "BuiltinServices/StdSrvs/Empty.swift",
        "BuiltinServices/StdSrvs/SetBool.swift",
        "BuiltinServices/StdSrvs/Trigger.swift",
        "CommonTypes.swift",
        "MessageProtocol.swift"
      ],
      "target_dependencies" : [
        "SwiftROS2CDR"
      ],
      "type" : "library"
    },
    {
      "c99name" : "SwiftROS2IntegrationTests",
      "module_type" : "SwiftTarget",
      "name" : "SwiftROS2IntegrationTests",
      "path" : "Tests/SwiftROS2IntegrationTests",
      "sources" : [
        "DDSRoundTripTests.swift",
        "DDSSubscriberTests.swift",
        "ZenohRoundTripTests.swift"
      ],
      "target_dependencies" : [
        "SwiftROS2",
        "SwiftROS2Messages",
        "SwiftROS2Transport"
      ],
      "type" : "test"
    },
    {
      "c99name" : "SwiftROS2DDSTests",
      "module_type" : "SwiftTarget",
      "name" : "SwiftROS2DDSTests",
      "path" : "Tests/SwiftROS2DDSTests",
      "sources" : [
        "DDSClientSmokeTests.swift",
        "RMWRequestIdTests.swift"
      ],
      "target_dependencies" : [
        "SwiftROS2DDS"
      ],
      "type" : "test"
    },
    {
      "c99name" : "SwiftROS2DDS",
      "module_type" : "SwiftTarget",
      "name" : "SwiftROS2DDS",
      "path" : "Sources/SwiftROS2DDS",
      "product_memberships" : [
        "SwiftROS2",
        "SwiftROS2DDS",
        "talker",
        "listener"
      ],
      "sources" : [
        "DDSClient.swift",
        "Exports.swift"
      ],
      "target_dependencies" : [
        "CDDSBridge",
        "SwiftROS2Transport",
        "SwiftROS2Wire"
      ],
      "type" : "library"
    },
    {
      "c99name" : "SwiftROS2CDRTests",
      "module_type" : "SwiftTarget",
      "name" : "SwiftROS2CDRTests",
      "path" : "Tests/SwiftROS2CDRTests",
      "sources" : [
        "CDRBoundsTests.swift",
        "CDRRoundTripTests.swift"
      ],
      "target_dependencies" : [
        "SwiftROS2CDR"
      ],
      "type" : "test"
    },
    {
      "c99name" : "SwiftROS2CDR",
      "module_type" : "SwiftTarget",
      "name" : "SwiftROS2CDR",
      "path" : "Sources/SwiftROS2CDR",
      "product_memberships" : [
        "SwiftROS2CDR",
        "SwiftROS2Messages",
        "SwiftROS2Transport",
        "SwiftROS2Zenoh",
        "SwiftROS2",
        "SwiftROS2DDS",
        "talker",
        "listener"
      ],
      "sources" : [
        "CDRDecoder.swift",
        "CDREncoder.swift"
      ],
      "type" : "library"
    },
    {
      "c99name" : "SwiftROS2",
      "module_type" : "SwiftTarget",
      "name" : "SwiftROS2",
      "path" : "Sources/SwiftROS2",
      "product_memberships" : [
        "SwiftROS2",
        "talker",
        "listener"
      ],
      "sources" : [
        "Context.swift",
        "Exports.swift",
        "Node.swift",
        "Publisher.swift",
        "QoSProfile.swift",
        "Subscription.swift"
      ],
      "target_dependencies" : [
        "SwiftROS2Messages",
        "SwiftROS2Transport",
        "SwiftROS2Wire",
        "SwiftROS2Zenoh",
        "SwiftROS2DDS"
      ],
      "type" : "library"
    },
    {
      "c99name" : "CZenohPico",
      "module_type" : "BinaryTarget",
      "name" : "CZenohPico",
      "path" : "remote/archive/CZenohPico.xcframework.zip",
      "product_memberships" : [
        "SwiftROS2Zenoh",
        "SwiftROS2",
        "talker",
        "listener"
      ],
      "sources" : [
      ],
      "type" : "binary"
    },
    {
      "c99name" : "CZenohBridge",
      "module_type" : "ClangTarget",
      "name" : "CZenohBridge",
      "path" : "Sources/CZenohBridge",
      "product_memberships" : [
        "SwiftROS2Zenoh",
        "SwiftROS2",
        "talker",
        "listener"
      ],
      "sources" : [
        "zenoh_bridge.c"
      ],
      "target_dependencies" : [
        "CZenohPico"
      ],
      "type" : "library"
    },
    {
      "c99name" : "CDDSBridge",
      "module_type" : "ClangTarget",
      "name" : "CDDSBridge",
      "path" : "Sources/CDDSBridge",
      "product_memberships" : [
        "SwiftROS2",
        "SwiftROS2DDS",
        "talker",
        "listener"
      ],
      "sources" : [
        "dds_bridge.c",
        "raw_cdr_regression_bridge.c",
        "raw_cdr_sertype.c"
      ],
      "target_dependencies" : [
        "CCycloneDDS"
      ],
      "type" : "library"
    },
    {
      "c99name" : "CCycloneDDS",
      "module_type" : "BinaryTarget",
      "name" : "CCycloneDDS",
      "path" : "remote/archive/CCycloneDDS.xcframework.zip",
      "product_memberships" : [
        "SwiftROS2",
        "SwiftROS2DDS",
        "talker",
        "listener"
      ],
      "sources" : [
      ],
      "type" : "binary"
    }
  ],
  "tools_version" : "5.9"
}
Done.