Build Information
Successful build of RealityUI, reference main (b359cb
), with Swift 6.0 for macOS (SPM) on 30 Nov 2024 08:46:43 UTC.
Swift 6 data race errors: 19
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
Build Log
========================================
RunAll
========================================
Builder version: 4.58.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/maxxfrazer/RealityUI.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/maxxfrazer/RealityUI
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at b359cb4 Merge pull request #26 from maxxfrazer/visionos-readme
Cloned https://github.com/maxxfrazer/RealityUI.git
Revision (git rev-parse @):
b359cb4d0428ea75266929da710efb94a2ee7749
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/maxxfrazer/RealityUI.git at main
========================================
ResolveProductDependencies
========================================
Resolving dependencies ...
{
"identity": ".resolve-product-dependencies",
"name": "resolve-dependencies",
"url": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
"dependencies": [
{
"identity": "realityui",
"name": "RealityUI",
"url": "https://github.com/maxxfrazer/RealityUI.git",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/RealityUI",
"dependencies": [
]
}
]
}
Fetching https://github.com/maxxfrazer/RealityUI.git
[1/1344] Fetching realityui
Fetched https://github.com/maxxfrazer/RealityUI.git from cache (1.52s)
Creating working copy for https://github.com/maxxfrazer/RealityUI.git
Working copy of https://github.com/maxxfrazer/RealityUI.git resolved at main (b359cb4)
warning: '.resolve-product-dependencies': dependency 'realityui' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.0
Building package at path: $PWD
https://github.com/maxxfrazer/RealityUI.git
{
"dependencies" : [
],
"manifest_display_name" : "RealityUI",
"name" : "RealityUI",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "13.0"
},
{
"name" : "macos",
"version" : "10.15"
},
{
"name" : "visionos",
"version" : "1.0"
}
],
"products" : [
{
"name" : "RealityUI",
"targets" : [
"RealityUI"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "RealityUITests",
"module_type" : "SwiftTarget",
"name" : "RealityUITests",
"path" : "Tests/RealityUITests",
"sources" : [
"RUIAnimationTests.swift",
"RUIButtonTests.swift",
"RUIDragButtonTests.swift",
"RUIDragSliderTests.swift",
"RUIGeometryTests.swift",
"RUISliderTests.swift",
"RUIStepperTests.swift",
"RUISwitchTests.swift",
"RUITextTests.swift",
"RUITextureTests.swift",
"RUITurnTests.swift",
"RealityUIGeneralTests.swift",
"RealityUIUtilityTests.swift"
],
"target_dependencies" : [
"RealityUI"
],
"type" : "test"
},
{
"c99name" : "RealityUI",
"module_type" : "SwiftTarget",
"name" : "RealityUI",
"path" : "Sources/RealityUI",
"product_memberships" : [
"RealityUI"
],
"sources" : [
"HasRUI.swift",
"RUIAnimations.swift",
"RUIButton.swift",
"RUIDragComponent+DragEvents.swift",
"RUIDragComponent.swift",
"RUIDragDelegate.swift",
"RUIDragGestureRecognizer+Mouse.swift",
"RUIDragGestureRecognizer+Touch.swift",
"RUIDragGestureRecognizer.swift",
"RUISlider.swift",
"RUIStepper.swift",
"RUISwitch.swift",
"RUITapComponent.swift",
"RUIText.swift",
"RUITexture.swift",
"RealityUI.swift",
"SwiftUI+RUIGestures.swift"
],
"type" : "library"
}
],
"tools_version" : "5.9"
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version--7754E27361AE5C74.txt
[3/19] Compiling RealityUI RUIStepper.swift
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIStepper.swift:80:17: warning: main actor-isolated instance method 'ruiDrag(_:selectedDidUpdate:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
77 | }
78 |
79 | extension RUIStepper: RUIDragDelegate {
| `- note: add '@preconcurrency' to the 'RUIDragDelegate' conformance to defer isolation checking to run time
80 | public func ruiDrag(_ entity: Entity, selectedDidUpdate isSelected: Bool) {
| |- warning: main actor-isolated instance method 'ruiDrag(_:selectedDidUpdate:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'ruiDrag(_:selectedDidUpdate:)' to make this instance method not isolated to the actor
81 | entity.scale = isSelected ? .init(repeating: 0.95) : .one
82 | }
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragDelegate.swift:57:10: note: mark the protocol requirement 'ruiDrag(_:selectedDidUpdate:)' 'async' to allow actor-isolated conformances
55 | /// - entity: The `Entity` involved in the collision state change.
56 | /// - isSelected: A Boolean value indicating the 3D interaction is currently on the entity.
57 | func ruiDrag(_ entity: Entity, selectedDidUpdate isSelected: Bool)
| `- note: mark the protocol requirement 'ruiDrag(_:selectedDidUpdate:)' 'async' to allow actor-isolated conformances
58 |
59 | /// Called when a touch-up event is completed on entities with a ``RUIDragComponent`` of type ``RUIDragComponent/DragComponentType/click``.
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIStepper.swift:83:17: warning: main actor-isolated instance method 'ruiDrag(_:touchUpInsideDidComplete:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
81 | entity.scale = isSelected ? .init(repeating: 0.95) : .one
82 | }
83 | public func ruiDrag(
| |- warning: main actor-isolated instance method 'ruiDrag(_:touchUpInsideDidComplete:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'ruiDrag(_:touchUpInsideDidComplete:)' to make this instance method not isolated to the actor
84 | _ entity: Entity,
85 | touchUpInsideDidComplete ray: (origin: SIMD3<Float>, direction: SIMD3<Float>)
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragDelegate.swift:67:10: note: mark the protocol requirement 'ruiDrag(_:touchUpInsideDidComplete:)' 'async' to allow actor-isolated conformances
65 | /// - entity: The `Entity` on which the touch-up gesture is completed.
66 | /// - ray: A ray representing the origin and direction of the touch-up interaction. The direction vector is not normalized.
67 | func ruiDrag(_ entity: Entity, touchUpInsideDidComplete ray: (origin: SIMD3<Float>, direction: SIMD3<Float>))
| `- note: mark the protocol requirement 'ruiDrag(_:touchUpInsideDidComplete:)' 'async' to allow actor-isolated conformances
68 |
69 | /// Called when a touch-up event fails on entities with a ``RUIDragComponent``
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUISwitch.swift:82:17: warning: main actor-isolated instance method 'ruiDrag(_:dragDidStart:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
79 | }
80 |
81 | extension RUISwitch: RUIDragDelegate {
| `- note: add '@preconcurrency' to the 'RUIDragDelegate' conformance to defer isolation checking to run time
82 | public func ruiDrag(_ entity: Entity, dragDidStart ray: (origin: SIMD3<Float>, direction: SIMD3<Float>)) {
| |- warning: main actor-isolated instance method 'ruiDrag(_:dragDidStart:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'ruiDrag(_:dragDidStart:)' to make this instance method not isolated to the actor
83 | guard entity.name == "thumb" else { return }
84 |
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragDelegate.swift:22:10: note: mark the protocol requirement 'ruiDrag(_:dragDidStart:)' 'async' to allow actor-isolated conformances
20 | /// - entity: The `Entity` that the user starts dragging.
21 | /// - ray: A ray showing the origin and direction of the ray used to move the entity. The direction is not normalised.
22 | func ruiDrag(_ entity: Entity, dragDidStart ray: (origin: SIMD3<Float>, direction: SIMD3<Float>))
| `- note: mark the protocol requirement 'ruiDrag(_:dragDidStart:)' 'async' to allow actor-isolated conformances
23 | /// Called when there is an update to a drag interaction on an entity.
24 | ///
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUISwitch.swift:89:17: warning: main actor-isolated instance method 'ruiDrag(_:dragDidUpdate:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
87 | self.compressThumb()
88 | }
89 | public func ruiDrag(_ entity: Entity, dragDidUpdate ray: (origin: SIMD3<Float>, direction: SIMD3<Float>)) {
| |- warning: main actor-isolated instance method 'ruiDrag(_:dragDidUpdate:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'ruiDrag(_:dragDidUpdate:)' to make this instance method not isolated to the actor
90 | guard entity.name == "thumb" else { return }
91 |
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragDelegate.swift:31:10: note: mark the protocol requirement 'ruiDrag(_:dragDidUpdate:)' 'async' to allow actor-isolated conformances
29 | /// - entity: The `Entity` whose position or state is being updated due to the drag interaction.
30 | /// - ray: A ray showing the origin and direction of the ray used to move the entity. The direction is not normalised.
31 | func ruiDrag(_ entity: Entity, dragDidUpdate ray: (origin: SIMD3<Float>, direction: SIMD3<Float>))
| `- note: mark the protocol requirement 'ruiDrag(_:dragDidUpdate:)' 'async' to allow actor-isolated conformances
32 | /// Called when a drag interaction on an AR entity ends.
33 | ///
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUISwitch.swift:95:17: warning: main actor-isolated instance method 'ruiDrag(_:dragDidEnd:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
93 | self.lastThumbPos = entity.position
94 | }
95 | public func ruiDrag(_ entity: Entity, dragDidEnd ray: (origin: SIMD3<Float>, direction: SIMD3<Float>)) {
| |- warning: main actor-isolated instance method 'ruiDrag(_:dragDidEnd:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'ruiDrag(_:dragDidEnd:)' to make this instance method not isolated to the actor
96 | guard entity.name == "thumb" else { return }
97 |
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragDelegate.swift:40:10: note: mark the protocol requirement 'ruiDrag(_:dragDidEnd:)' 'async' to allow actor-isolated conformances
38 | /// - entity: The `Entity` that was being dragged and is now released.
39 | /// - ray: A ray showing the origin and direction of the ray used to move the entity. The direction is not normalised.
40 | func ruiDrag(_ entity: Entity, dragDidEnd ray: (origin: SIMD3<Float>, direction: SIMD3<Float>))
| `- note: mark the protocol requirement 'ruiDrag(_:dragDidEnd:)' 'async' to allow actor-isolated conformances
41 | /// Called when a drag interaction on an entity is cancelled.
42 | ///
[4/19] Compiling RealityUI RUISwitch.swift
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIStepper.swift:80:17: warning: main actor-isolated instance method 'ruiDrag(_:selectedDidUpdate:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
77 | }
78 |
79 | extension RUIStepper: RUIDragDelegate {
| `- note: add '@preconcurrency' to the 'RUIDragDelegate' conformance to defer isolation checking to run time
80 | public func ruiDrag(_ entity: Entity, selectedDidUpdate isSelected: Bool) {
| |- warning: main actor-isolated instance method 'ruiDrag(_:selectedDidUpdate:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'ruiDrag(_:selectedDidUpdate:)' to make this instance method not isolated to the actor
81 | entity.scale = isSelected ? .init(repeating: 0.95) : .one
82 | }
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragDelegate.swift:57:10: note: mark the protocol requirement 'ruiDrag(_:selectedDidUpdate:)' 'async' to allow actor-isolated conformances
55 | /// - entity: The `Entity` involved in the collision state change.
56 | /// - isSelected: A Boolean value indicating the 3D interaction is currently on the entity.
57 | func ruiDrag(_ entity: Entity, selectedDidUpdate isSelected: Bool)
| `- note: mark the protocol requirement 'ruiDrag(_:selectedDidUpdate:)' 'async' to allow actor-isolated conformances
58 |
59 | /// Called when a touch-up event is completed on entities with a ``RUIDragComponent`` of type ``RUIDragComponent/DragComponentType/click``.
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIStepper.swift:83:17: warning: main actor-isolated instance method 'ruiDrag(_:touchUpInsideDidComplete:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
81 | entity.scale = isSelected ? .init(repeating: 0.95) : .one
82 | }
83 | public func ruiDrag(
| |- warning: main actor-isolated instance method 'ruiDrag(_:touchUpInsideDidComplete:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'ruiDrag(_:touchUpInsideDidComplete:)' to make this instance method not isolated to the actor
84 | _ entity: Entity,
85 | touchUpInsideDidComplete ray: (origin: SIMD3<Float>, direction: SIMD3<Float>)
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragDelegate.swift:67:10: note: mark the protocol requirement 'ruiDrag(_:touchUpInsideDidComplete:)' 'async' to allow actor-isolated conformances
65 | /// - entity: The `Entity` on which the touch-up gesture is completed.
66 | /// - ray: A ray representing the origin and direction of the touch-up interaction. The direction vector is not normalized.
67 | func ruiDrag(_ entity: Entity, touchUpInsideDidComplete ray: (origin: SIMD3<Float>, direction: SIMD3<Float>))
| `- note: mark the protocol requirement 'ruiDrag(_:touchUpInsideDidComplete:)' 'async' to allow actor-isolated conformances
68 |
69 | /// Called when a touch-up event fails on entities with a ``RUIDragComponent``
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUISwitch.swift:82:17: warning: main actor-isolated instance method 'ruiDrag(_:dragDidStart:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
79 | }
80 |
81 | extension RUISwitch: RUIDragDelegate {
| `- note: add '@preconcurrency' to the 'RUIDragDelegate' conformance to defer isolation checking to run time
82 | public func ruiDrag(_ entity: Entity, dragDidStart ray: (origin: SIMD3<Float>, direction: SIMD3<Float>)) {
| |- warning: main actor-isolated instance method 'ruiDrag(_:dragDidStart:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'ruiDrag(_:dragDidStart:)' to make this instance method not isolated to the actor
83 | guard entity.name == "thumb" else { return }
84 |
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragDelegate.swift:22:10: note: mark the protocol requirement 'ruiDrag(_:dragDidStart:)' 'async' to allow actor-isolated conformances
20 | /// - entity: The `Entity` that the user starts dragging.
21 | /// - ray: A ray showing the origin and direction of the ray used to move the entity. The direction is not normalised.
22 | func ruiDrag(_ entity: Entity, dragDidStart ray: (origin: SIMD3<Float>, direction: SIMD3<Float>))
| `- note: mark the protocol requirement 'ruiDrag(_:dragDidStart:)' 'async' to allow actor-isolated conformances
23 | /// Called when there is an update to a drag interaction on an entity.
24 | ///
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUISwitch.swift:89:17: warning: main actor-isolated instance method 'ruiDrag(_:dragDidUpdate:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
87 | self.compressThumb()
88 | }
89 | public func ruiDrag(_ entity: Entity, dragDidUpdate ray: (origin: SIMD3<Float>, direction: SIMD3<Float>)) {
| |- warning: main actor-isolated instance method 'ruiDrag(_:dragDidUpdate:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'ruiDrag(_:dragDidUpdate:)' to make this instance method not isolated to the actor
90 | guard entity.name == "thumb" else { return }
91 |
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragDelegate.swift:31:10: note: mark the protocol requirement 'ruiDrag(_:dragDidUpdate:)' 'async' to allow actor-isolated conformances
29 | /// - entity: The `Entity` whose position or state is being updated due to the drag interaction.
30 | /// - ray: A ray showing the origin and direction of the ray used to move the entity. The direction is not normalised.
31 | func ruiDrag(_ entity: Entity, dragDidUpdate ray: (origin: SIMD3<Float>, direction: SIMD3<Float>))
| `- note: mark the protocol requirement 'ruiDrag(_:dragDidUpdate:)' 'async' to allow actor-isolated conformances
32 | /// Called when a drag interaction on an AR entity ends.
33 | ///
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUISwitch.swift:95:17: warning: main actor-isolated instance method 'ruiDrag(_:dragDidEnd:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
93 | self.lastThumbPos = entity.position
94 | }
95 | public func ruiDrag(_ entity: Entity, dragDidEnd ray: (origin: SIMD3<Float>, direction: SIMD3<Float>)) {
| |- warning: main actor-isolated instance method 'ruiDrag(_:dragDidEnd:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'ruiDrag(_:dragDidEnd:)' to make this instance method not isolated to the actor
96 | guard entity.name == "thumb" else { return }
97 |
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragDelegate.swift:40:10: note: mark the protocol requirement 'ruiDrag(_:dragDidEnd:)' 'async' to allow actor-isolated conformances
38 | /// - entity: The `Entity` that was being dragged and is now released.
39 | /// - ray: A ray showing the origin and direction of the ray used to move the entity. The direction is not normalised.
40 | func ruiDrag(_ entity: Entity, dragDidEnd ray: (origin: SIMD3<Float>, direction: SIMD3<Float>))
| `- note: mark the protocol requirement 'ruiDrag(_:dragDidEnd:)' 'async' to allow actor-isolated conformances
41 | /// Called when a drag interaction on an entity is cancelled.
42 | ///
[5/19] Compiling RealityUI RUITapComponent.swift
[6/19] Compiling RealityUI RUIText.swift
[7/20] Compiling RealityUI RUITexture.swift
[8/20] Compiling RealityUI RUIButton.swift
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIButton.swift:51:17: warning: main actor-isolated instance method 'ruiDrag(_:selectedDidUpdate:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
48 | }
49 | }
50 | extension RUIButton: RUIDragDelegate {
| `- note: add '@preconcurrency' to the 'RUIDragDelegate' conformance to defer isolation checking to run time
51 | public func ruiDrag(
| |- warning: main actor-isolated instance method 'ruiDrag(_:selectedDidUpdate:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'ruiDrag(_:selectedDidUpdate:)' to make this instance method not isolated to the actor
52 | _ entity: Entity,
53 | selectedDidUpdate hasCollided: Bool
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragDelegate.swift:57:10: note: mark the protocol requirement 'ruiDrag(_:selectedDidUpdate:)' 'async' to allow actor-isolated conformances
55 | /// - entity: The `Entity` involved in the collision state change.
56 | /// - isSelected: A Boolean value indicating the 3D interaction is currently on the entity.
57 | func ruiDrag(_ entity: Entity, selectedDidUpdate isSelected: Bool)
| `- note: mark the protocol requirement 'ruiDrag(_:selectedDidUpdate:)' 'async' to allow actor-isolated conformances
58 |
59 | /// Called when a touch-up event is completed on entities with a ``RUIDragComponent`` of type ``RUIDragComponent/DragComponentType/click``.
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIButton.swift:57:17: warning: main actor-isolated instance method 'ruiDrag(_:touchUpInsideDidComplete:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
55 | if hasCollided { compressButton() } else { releaseButton() }
56 | }
57 | public func ruiDrag(
| |- warning: main actor-isolated instance method 'ruiDrag(_:touchUpInsideDidComplete:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'ruiDrag(_:touchUpInsideDidComplete:)' to make this instance method not isolated to the actor
58 | _ entity: Entity,
59 | touchUpInsideDidComplete ray: (origin: SIMD3<Float>, direction: SIMD3<Float>)
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragDelegate.swift:67:10: note: mark the protocol requirement 'ruiDrag(_:touchUpInsideDidComplete:)' 'async' to allow actor-isolated conformances
65 | /// - entity: The `Entity` on which the touch-up gesture is completed.
66 | /// - ray: A ray representing the origin and direction of the touch-up interaction. The direction vector is not normalized.
67 | func ruiDrag(_ entity: Entity, touchUpInsideDidComplete ray: (origin: SIMD3<Float>, direction: SIMD3<Float>))
| `- note: mark the protocol requirement 'ruiDrag(_:touchUpInsideDidComplete:)' 'async' to allow actor-isolated conformances
68 |
69 | /// Called when a touch-up event fails on entities with a ``RUIDragComponent``
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragComponent+DragEvents.swift:29:31: warning: call to main actor-isolated instance method 'convert(position:from:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
23 | /// - origin: The original position of the entity.
24 | @discardableResult
25 | public func dragStarted(
| `- note: add '@MainActor' to make instance method 'dragStarted(_:ray:)' part of global actor 'MainActor'
26 | _ entity: Entity, ray: (origin: SIMD3<Float>, direction: SIMD3<Float>)
27 | ) -> Bool {
28 | let worldPos = ray.origin + ray.direction
29 | let localPos = entity.convert(position: worldPos, from: nil)
| `- warning: call to main actor-isolated instance method 'convert(position:from:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
30 | var dist = simd_length(ray.direction)
31 | switch self.type {
RealityFoundation.HasTransform:15:44: note: calls to instance method 'convert(position:from:)' from outside of its actor context are implicitly asynchronous
13 | @MainActor @preconcurrency public func transformMatrix(relativeTo referenceEntity: Entity?) -> float4x4
14 | @MainActor @preconcurrency public func setTransformMatrix(_ transform: float4x4, relativeTo referenceEntity: Entity?)
15 | @MainActor @preconcurrency public func convert(position: SIMD3<Float>, from referenceEntity: Entity?) -> SIMD3<Float>
| `- note: calls to instance method 'convert(position:from:)' from outside of its actor context are implicitly asynchronous
16 | @MainActor @preconcurrency public func convert(direction: SIMD3<Float>, from referenceEntity: Entity?) -> SIMD3<Float>
17 | @MainActor @preconcurrency public func convert(normal: SIMD3<Float>, from referenceEntity: Entity?) -> SIMD3<Float>
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragComponent+DragEvents.swift:61:34: warning: call to main actor-isolated instance method 'convert(position:from:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
53 | /// - ray: A tuple containing the origin and direction of the ray used in the drag interaction.
54 | /// - hasCollided: A boolean indicating whether there has been a collision.
55 | public func dragUpdated(
| `- note: add '@MainActor' to make instance method 'dragUpdated(_:ray:hasCollided:)' part of global actor 'MainActor'
56 | _ entity: Entity, ray: (origin: SIMD3<Float>, direction: SIMD3<Float>), hasCollided: Bool
57 | ) {
:
59 | var newTouchPos: SIMD3<Float>?
60 | if let worldPos {
61 | newTouchPos = entity.convert(position: worldPos, from: nil)
| `- warning: call to main actor-isolated instance method 'convert(position:from:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
62 | }
63 | var outputRay = ray
RealityFoundation.HasTransform:15:44: note: calls to instance method 'convert(position:from:)' from outside of its actor context are implicitly asynchronous
13 | @MainActor @preconcurrency public func transformMatrix(relativeTo referenceEntity: Entity?) -> float4x4
14 | @MainActor @preconcurrency public func setTransformMatrix(_ transform: float4x4, relativeTo referenceEntity: Entity?)
15 | @MainActor @preconcurrency public func convert(position: SIMD3<Float>, from referenceEntity: Entity?) -> SIMD3<Float>
| `- note: calls to instance method 'convert(position:from:)' from outside of its actor context are implicitly asynchronous
16 | @MainActor @preconcurrency public func convert(direction: SIMD3<Float>, from referenceEntity: Entity?) -> SIMD3<Float>
17 | @MainActor @preconcurrency public func convert(normal: SIMD3<Float>, from referenceEntity: Entity?) -> SIMD3<Float>
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragComponent+DragEvents.swift:69:24: warning: main actor-isolated property 'position' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
53 | /// - ray: A tuple containing the origin and direction of the ray used in the drag interaction.
54 | /// - hasCollided: A boolean indicating whether there has been a collision.
55 | public func dragUpdated(
| `- note: add '@MainActor' to make instance method 'dragUpdated(_:ray:hasCollided:)' part of global actor 'MainActor'
56 | _ entity: Entity, ray: (origin: SIMD3<Float>, direction: SIMD3<Float>), hasCollided: Bool
57 | ) {
:
67 | case .move(let poi, let len):
68 | if let newMovePos = RUIDragComponent.handleMoveState(entity, newTouchPos, poi) {
69 | entity.position = newMovePos
| `- warning: main actor-isolated property 'position' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
70 | }
71 | if len != 0 {
RealityFoundation.HasTransform:7:43: note: mutation of this property is only permitted within the actor
5 | @MainActor @preconcurrency public func scale(relativeTo referenceEntity: Entity?) -> SIMD3<Float>
6 | @MainActor @preconcurrency public func setScale(_ scale: SIMD3<Float>, relativeTo referenceEntity: Entity?)
7 | @MainActor @preconcurrency public var position: SIMD3<Float> { get set }
| `- note: mutation of this property is only permitted within the actor
8 | @MainActor @preconcurrency public func position(relativeTo referenceEntity: Entity?) -> SIMD3<Float>
9 | @MainActor @preconcurrency public func setPosition(_ position: SIMD3<Float>, relativeTo referenceEntity: Entity?)
[9/20] Compiling RealityUI RUIDragComponent+DragEvents.swift
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIButton.swift:51:17: warning: main actor-isolated instance method 'ruiDrag(_:selectedDidUpdate:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
48 | }
49 | }
50 | extension RUIButton: RUIDragDelegate {
| `- note: add '@preconcurrency' to the 'RUIDragDelegate' conformance to defer isolation checking to run time
51 | public func ruiDrag(
| |- warning: main actor-isolated instance method 'ruiDrag(_:selectedDidUpdate:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'ruiDrag(_:selectedDidUpdate:)' to make this instance method not isolated to the actor
52 | _ entity: Entity,
53 | selectedDidUpdate hasCollided: Bool
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragDelegate.swift:57:10: note: mark the protocol requirement 'ruiDrag(_:selectedDidUpdate:)' 'async' to allow actor-isolated conformances
55 | /// - entity: The `Entity` involved in the collision state change.
56 | /// - isSelected: A Boolean value indicating the 3D interaction is currently on the entity.
57 | func ruiDrag(_ entity: Entity, selectedDidUpdate isSelected: Bool)
| `- note: mark the protocol requirement 'ruiDrag(_:selectedDidUpdate:)' 'async' to allow actor-isolated conformances
58 |
59 | /// Called when a touch-up event is completed on entities with a ``RUIDragComponent`` of type ``RUIDragComponent/DragComponentType/click``.
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIButton.swift:57:17: warning: main actor-isolated instance method 'ruiDrag(_:touchUpInsideDidComplete:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
55 | if hasCollided { compressButton() } else { releaseButton() }
56 | }
57 | public func ruiDrag(
| |- warning: main actor-isolated instance method 'ruiDrag(_:touchUpInsideDidComplete:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'ruiDrag(_:touchUpInsideDidComplete:)' to make this instance method not isolated to the actor
58 | _ entity: Entity,
59 | touchUpInsideDidComplete ray: (origin: SIMD3<Float>, direction: SIMD3<Float>)
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragDelegate.swift:67:10: note: mark the protocol requirement 'ruiDrag(_:touchUpInsideDidComplete:)' 'async' to allow actor-isolated conformances
65 | /// - entity: The `Entity` on which the touch-up gesture is completed.
66 | /// - ray: A ray representing the origin and direction of the touch-up interaction. The direction vector is not normalized.
67 | func ruiDrag(_ entity: Entity, touchUpInsideDidComplete ray: (origin: SIMD3<Float>, direction: SIMD3<Float>))
| `- note: mark the protocol requirement 'ruiDrag(_:touchUpInsideDidComplete:)' 'async' to allow actor-isolated conformances
68 |
69 | /// Called when a touch-up event fails on entities with a ``RUIDragComponent``
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragComponent+DragEvents.swift:29:31: warning: call to main actor-isolated instance method 'convert(position:from:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
23 | /// - origin: The original position of the entity.
24 | @discardableResult
25 | public func dragStarted(
| `- note: add '@MainActor' to make instance method 'dragStarted(_:ray:)' part of global actor 'MainActor'
26 | _ entity: Entity, ray: (origin: SIMD3<Float>, direction: SIMD3<Float>)
27 | ) -> Bool {
28 | let worldPos = ray.origin + ray.direction
29 | let localPos = entity.convert(position: worldPos, from: nil)
| `- warning: call to main actor-isolated instance method 'convert(position:from:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
30 | var dist = simd_length(ray.direction)
31 | switch self.type {
RealityFoundation.HasTransform:15:44: note: calls to instance method 'convert(position:from:)' from outside of its actor context are implicitly asynchronous
13 | @MainActor @preconcurrency public func transformMatrix(relativeTo referenceEntity: Entity?) -> float4x4
14 | @MainActor @preconcurrency public func setTransformMatrix(_ transform: float4x4, relativeTo referenceEntity: Entity?)
15 | @MainActor @preconcurrency public func convert(position: SIMD3<Float>, from referenceEntity: Entity?) -> SIMD3<Float>
| `- note: calls to instance method 'convert(position:from:)' from outside of its actor context are implicitly asynchronous
16 | @MainActor @preconcurrency public func convert(direction: SIMD3<Float>, from referenceEntity: Entity?) -> SIMD3<Float>
17 | @MainActor @preconcurrency public func convert(normal: SIMD3<Float>, from referenceEntity: Entity?) -> SIMD3<Float>
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragComponent+DragEvents.swift:61:34: warning: call to main actor-isolated instance method 'convert(position:from:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
53 | /// - ray: A tuple containing the origin and direction of the ray used in the drag interaction.
54 | /// - hasCollided: A boolean indicating whether there has been a collision.
55 | public func dragUpdated(
| `- note: add '@MainActor' to make instance method 'dragUpdated(_:ray:hasCollided:)' part of global actor 'MainActor'
56 | _ entity: Entity, ray: (origin: SIMD3<Float>, direction: SIMD3<Float>), hasCollided: Bool
57 | ) {
:
59 | var newTouchPos: SIMD3<Float>?
60 | if let worldPos {
61 | newTouchPos = entity.convert(position: worldPos, from: nil)
| `- warning: call to main actor-isolated instance method 'convert(position:from:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
62 | }
63 | var outputRay = ray
RealityFoundation.HasTransform:15:44: note: calls to instance method 'convert(position:from:)' from outside of its actor context are implicitly asynchronous
13 | @MainActor @preconcurrency public func transformMatrix(relativeTo referenceEntity: Entity?) -> float4x4
14 | @MainActor @preconcurrency public func setTransformMatrix(_ transform: float4x4, relativeTo referenceEntity: Entity?)
15 | @MainActor @preconcurrency public func convert(position: SIMD3<Float>, from referenceEntity: Entity?) -> SIMD3<Float>
| `- note: calls to instance method 'convert(position:from:)' from outside of its actor context are implicitly asynchronous
16 | @MainActor @preconcurrency public func convert(direction: SIMD3<Float>, from referenceEntity: Entity?) -> SIMD3<Float>
17 | @MainActor @preconcurrency public func convert(normal: SIMD3<Float>, from referenceEntity: Entity?) -> SIMD3<Float>
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragComponent+DragEvents.swift:69:24: warning: main actor-isolated property 'position' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
53 | /// - ray: A tuple containing the origin and direction of the ray used in the drag interaction.
54 | /// - hasCollided: A boolean indicating whether there has been a collision.
55 | public func dragUpdated(
| `- note: add '@MainActor' to make instance method 'dragUpdated(_:ray:hasCollided:)' part of global actor 'MainActor'
56 | _ entity: Entity, ray: (origin: SIMD3<Float>, direction: SIMD3<Float>), hasCollided: Bool
57 | ) {
:
67 | case .move(let poi, let len):
68 | if let newMovePos = RUIDragComponent.handleMoveState(entity, newTouchPos, poi) {
69 | entity.position = newMovePos
| `- warning: main actor-isolated property 'position' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
70 | }
71 | if len != 0 {
RealityFoundation.HasTransform:7:43: note: mutation of this property is only permitted within the actor
5 | @MainActor @preconcurrency public func scale(relativeTo referenceEntity: Entity?) -> SIMD3<Float>
6 | @MainActor @preconcurrency public func setScale(_ scale: SIMD3<Float>, relativeTo referenceEntity: Entity?)
7 | @MainActor @preconcurrency public var position: SIMD3<Float> { get set }
| `- note: mutation of this property is only permitted within the actor
8 | @MainActor @preconcurrency public func position(relativeTo referenceEntity: Entity?) -> SIMD3<Float>
9 | @MainActor @preconcurrency public func setPosition(_ position: SIMD3<Float>, relativeTo referenceEntity: Entity?)
[10/20] Compiling RealityUI RUIDragGestureRecognizer+Mouse.swift
[11/20] Compiling RealityUI RUIDragGestureRecognizer+Touch.swift
[12/20] Compiling RealityUI RUIDragGestureRecognizer.swift
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RealityUI.swift:39:23: warning: static property 'longGestureMask' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
37 |
38 | /// Mask to exclude entities from being hit by the long/panning gesture
39 | public static var longGestureMask: CollisionGroup = .all
| |- warning: static property 'longGestureMask' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'longGestureMask' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'longGestureMask' 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
40 |
41 | /// Mask to exclude entities from being hit by the tap gesture.
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUISlider.swift:82:17: warning: main actor-isolated instance method 'ruiDrag(_:dragDidStart:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
79 | }
80 |
81 | extension RUISlider: RUIDragDelegate {
| `- note: add '@preconcurrency' to the 'RUIDragDelegate' conformance to defer isolation checking to run time
82 | public func ruiDrag(_ entity: Entity, dragDidStart ray: (origin: SIMD3<Float>, direction: SIMD3<Float>)) {
| |- warning: main actor-isolated instance method 'ruiDrag(_:dragDidStart:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'ruiDrag(_:dragDidStart:)' to make this instance method not isolated to the actor
83 | self.sliderUpdateCallback?(self, .started)
84 | }
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragDelegate.swift:22:10: note: mark the protocol requirement 'ruiDrag(_:dragDidStart:)' 'async' to allow actor-isolated conformances
20 | /// - entity: The `Entity` that the user starts dragging.
21 | /// - ray: A ray showing the origin and direction of the ray used to move the entity. The direction is not normalised.
22 | func ruiDrag(_ entity: Entity, dragDidStart ray: (origin: SIMD3<Float>, direction: SIMD3<Float>))
| `- note: mark the protocol requirement 'ruiDrag(_:dragDidStart:)' 'async' to allow actor-isolated conformances
23 | /// Called when there is an update to a drag interaction on an entity.
24 | ///
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUISlider.swift:85:17: warning: main actor-isolated instance method 'ruiDrag(_:dragDidUpdate:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
83 | self.sliderUpdateCallback?(self, .started)
84 | }
85 | public func ruiDrag(_ entity: Entity, dragDidUpdate ray: (origin: SIMD3<Float>, direction: SIMD3<Float>)) {
| |- warning: main actor-isolated instance method 'ruiDrag(_:dragDidUpdate:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'ruiDrag(_:dragDidUpdate:)' to make this instance method not isolated to the actor
86 | var newPercent = 0.5 - entity.position.x / sliderLength
87 | self.clampSlideValue(&newPercent)
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragDelegate.swift:31:10: note: mark the protocol requirement 'ruiDrag(_:dragDidUpdate:)' 'async' to allow actor-isolated conformances
29 | /// - entity: The `Entity` whose position or state is being updated due to the drag interaction.
30 | /// - ray: A ray showing the origin and direction of the ray used to move the entity. The direction is not normalised.
31 | func ruiDrag(_ entity: Entity, dragDidUpdate ray: (origin: SIMD3<Float>, direction: SIMD3<Float>))
| `- note: mark the protocol requirement 'ruiDrag(_:dragDidUpdate:)' 'async' to allow actor-isolated conformances
32 | /// Called when a drag interaction on an AR entity ends.
33 | ///
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUISlider.swift:93:17: warning: main actor-isolated instance method 'ruiDrag(_:dragDidEnd:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
91 | if self.isContinuous { self.sliderUpdateCallback?(self, .updated) }
92 | }
93 | public func ruiDrag(_ entity: Entity, dragDidEnd ray: (origin: SIMD3<Float>, direction: SIMD3<Float>)) {
| |- warning: main actor-isolated instance method 'ruiDrag(_:dragDidEnd:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'ruiDrag(_:dragDidEnd:)' to make this instance method not isolated to the actor
94 | self.sliderUpdateCallback?(self, .ended)
95 | }
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragDelegate.swift:40:10: note: mark the protocol requirement 'ruiDrag(_:dragDidEnd:)' 'async' to allow actor-isolated conformances
38 | /// - entity: The `Entity` that was being dragged and is now released.
39 | /// - ray: A ray showing the origin and direction of the ray used to move the entity. The direction is not normalised.
40 | func ruiDrag(_ entity: Entity, dragDidEnd ray: (origin: SIMD3<Float>, direction: SIMD3<Float>))
| `- note: mark the protocol requirement 'ruiDrag(_:dragDidEnd:)' 'async' to allow actor-isolated conformances
41 | /// Called when a drag interaction on an entity is cancelled.
42 | ///
[13/20] Compiling RealityUI RUISlider.swift
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RealityUI.swift:39:23: warning: static property 'longGestureMask' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
37 |
38 | /// Mask to exclude entities from being hit by the long/panning gesture
39 | public static var longGestureMask: CollisionGroup = .all
| |- warning: static property 'longGestureMask' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'longGestureMask' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'longGestureMask' 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
40 |
41 | /// Mask to exclude entities from being hit by the tap gesture.
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUISlider.swift:82:17: warning: main actor-isolated instance method 'ruiDrag(_:dragDidStart:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
79 | }
80 |
81 | extension RUISlider: RUIDragDelegate {
| `- note: add '@preconcurrency' to the 'RUIDragDelegate' conformance to defer isolation checking to run time
82 | public func ruiDrag(_ entity: Entity, dragDidStart ray: (origin: SIMD3<Float>, direction: SIMD3<Float>)) {
| |- warning: main actor-isolated instance method 'ruiDrag(_:dragDidStart:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'ruiDrag(_:dragDidStart:)' to make this instance method not isolated to the actor
83 | self.sliderUpdateCallback?(self, .started)
84 | }
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragDelegate.swift:22:10: note: mark the protocol requirement 'ruiDrag(_:dragDidStart:)' 'async' to allow actor-isolated conformances
20 | /// - entity: The `Entity` that the user starts dragging.
21 | /// - ray: A ray showing the origin and direction of the ray used to move the entity. The direction is not normalised.
22 | func ruiDrag(_ entity: Entity, dragDidStart ray: (origin: SIMD3<Float>, direction: SIMD3<Float>))
| `- note: mark the protocol requirement 'ruiDrag(_:dragDidStart:)' 'async' to allow actor-isolated conformances
23 | /// Called when there is an update to a drag interaction on an entity.
24 | ///
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUISlider.swift:85:17: warning: main actor-isolated instance method 'ruiDrag(_:dragDidUpdate:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
83 | self.sliderUpdateCallback?(self, .started)
84 | }
85 | public func ruiDrag(_ entity: Entity, dragDidUpdate ray: (origin: SIMD3<Float>, direction: SIMD3<Float>)) {
| |- warning: main actor-isolated instance method 'ruiDrag(_:dragDidUpdate:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'ruiDrag(_:dragDidUpdate:)' to make this instance method not isolated to the actor
86 | var newPercent = 0.5 - entity.position.x / sliderLength
87 | self.clampSlideValue(&newPercent)
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragDelegate.swift:31:10: note: mark the protocol requirement 'ruiDrag(_:dragDidUpdate:)' 'async' to allow actor-isolated conformances
29 | /// - entity: The `Entity` whose position or state is being updated due to the drag interaction.
30 | /// - ray: A ray showing the origin and direction of the ray used to move the entity. The direction is not normalised.
31 | func ruiDrag(_ entity: Entity, dragDidUpdate ray: (origin: SIMD3<Float>, direction: SIMD3<Float>))
| `- note: mark the protocol requirement 'ruiDrag(_:dragDidUpdate:)' 'async' to allow actor-isolated conformances
32 | /// Called when a drag interaction on an AR entity ends.
33 | ///
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUISlider.swift:93:17: warning: main actor-isolated instance method 'ruiDrag(_:dragDidEnd:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
91 | if self.isContinuous { self.sliderUpdateCallback?(self, .updated) }
92 | }
93 | public func ruiDrag(_ entity: Entity, dragDidEnd ray: (origin: SIMD3<Float>, direction: SIMD3<Float>)) {
| |- warning: main actor-isolated instance method 'ruiDrag(_:dragDidEnd:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'ruiDrag(_:dragDidEnd:)' to make this instance method not isolated to the actor
94 | self.sliderUpdateCallback?(self, .ended)
95 | }
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragDelegate.swift:40:10: note: mark the protocol requirement 'ruiDrag(_:dragDidEnd:)' 'async' to allow actor-isolated conformances
38 | /// - entity: The `Entity` that was being dragged and is now released.
39 | /// - ray: A ray showing the origin and direction of the ray used to move the entity. The direction is not normalised.
40 | func ruiDrag(_ entity: Entity, dragDidEnd ray: (origin: SIMD3<Float>, direction: SIMD3<Float>))
| `- note: mark the protocol requirement 'ruiDrag(_:dragDidEnd:)' 'async' to allow actor-isolated conformances
41 | /// Called when a drag interaction on an entity is cancelled.
42 | ///
[14/20] Compiling RealityUI RUIDragComponent.swift
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragComponent.swift:211:37: warning: call to main actor-isolated instance method 'convert(position:to:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
205 | }
206 |
207 | internal static func handleMoveState(
| `- note: add '@MainActor' to make static method 'handleMoveState' part of global actor 'MainActor'
208 | _ entity: Entity, _ newTouchPos: SIMD3<Float>?, _ poi: SIMD3<Float>
209 | ) -> SIMD3<Float>? {
210 | guard let newTouchPos else { return nil }
211 | let parentSpaceNTP = entity.convert(position: newTouchPos, to: entity.parent)
| `- warning: call to main actor-isolated instance method 'convert(position:to:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
212 | let parentSpaceOTP = entity.convert(position: poi, to: entity.parent)
213 | guard let arTouchComp = entity.components.get(RUIDragComponent.self) else { return nil }
RealityFoundation.HasTransform:19:44: note: calls to instance method 'convert(position:to:)' from outside of its actor context are implicitly asynchronous
17 | @MainActor @preconcurrency public func convert(normal: SIMD3<Float>, from referenceEntity: Entity?) -> SIMD3<Float>
18 | @MainActor @preconcurrency public func convert(transform: Transform, from referenceEntity: Entity?) -> Transform
19 | @MainActor @preconcurrency public func convert(position: SIMD3<Float>, to referenceEntity: Entity?) -> SIMD3<Float>
| `- note: calls to instance method 'convert(position:to:)' from outside of its actor context are implicitly asynchronous
20 | @MainActor @preconcurrency public func convert(direction: SIMD3<Float>, to referenceEntity: Entity?) -> SIMD3<Float>
21 | @MainActor @preconcurrency public func convert(normal: SIMD3<Float>, to referenceEntity: Entity?) -> SIMD3<Float>
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragComponent.swift:211:79: warning: main actor-isolated property 'parent' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
205 | }
206 |
207 | internal static func handleMoveState(
| `- note: add '@MainActor' to make static method 'handleMoveState' part of global actor 'MainActor'
208 | _ entity: Entity, _ newTouchPos: SIMD3<Float>?, _ poi: SIMD3<Float>
209 | ) -> SIMD3<Float>? {
210 | guard let newTouchPos else { return nil }
211 | let parentSpaceNTP = entity.convert(position: newTouchPos, to: entity.parent)
| `- warning: main actor-isolated property 'parent' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
212 | let parentSpaceOTP = entity.convert(position: poi, to: entity.parent)
213 | guard let arTouchComp = entity.components.get(RUIDragComponent.self) else { return nil }
RealityFoundation.HasHierarchy:3:43: note: property declared here
1 | @available(macOS 10.15, iOS 13.0, *)
2 | extension HasHierarchy {
3 | @MainActor @preconcurrency public var parent: Entity? { get }
| `- note: property declared here
4 | @MainActor @preconcurrency public func setParent(_ parent: Entity?, preservingWorldTransform: Bool = false)
5 | @MainActor @preconcurrency public var children: Entity.ChildCollection { get set }
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragComponent.swift:212:37: warning: call to main actor-isolated instance method 'convert(position:to:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
205 | }
206 |
207 | internal static func handleMoveState(
| `- note: add '@MainActor' to make static method 'handleMoveState' part of global actor 'MainActor'
208 | _ entity: Entity, _ newTouchPos: SIMD3<Float>?, _ poi: SIMD3<Float>
209 | ) -> SIMD3<Float>? {
210 | guard let newTouchPos else { return nil }
211 | let parentSpaceNTP = entity.convert(position: newTouchPos, to: entity.parent)
212 | let parentSpaceOTP = entity.convert(position: poi, to: entity.parent)
| `- warning: call to main actor-isolated instance method 'convert(position:to:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
213 | guard let arTouchComp = entity.components.get(RUIDragComponent.self) else { return nil }
214 | let endPos = entity.position + parentSpaceNTP - parentSpaceOTP
RealityFoundation.HasTransform:19:44: note: calls to instance method 'convert(position:to:)' from outside of its actor context are implicitly asynchronous
17 | @MainActor @preconcurrency public func convert(normal: SIMD3<Float>, from referenceEntity: Entity?) -> SIMD3<Float>
18 | @MainActor @preconcurrency public func convert(transform: Transform, from referenceEntity: Entity?) -> Transform
19 | @MainActor @preconcurrency public func convert(position: SIMD3<Float>, to referenceEntity: Entity?) -> SIMD3<Float>
| `- note: calls to instance method 'convert(position:to:)' from outside of its actor context are implicitly asynchronous
20 | @MainActor @preconcurrency public func convert(direction: SIMD3<Float>, to referenceEntity: Entity?) -> SIMD3<Float>
21 | @MainActor @preconcurrency public func convert(normal: SIMD3<Float>, to referenceEntity: Entity?) -> SIMD3<Float>
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragComponent.swift:212:71: warning: main actor-isolated property 'parent' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
205 | }
206 |
207 | internal static func handleMoveState(
| `- note: add '@MainActor' to make static method 'handleMoveState' part of global actor 'MainActor'
208 | _ entity: Entity, _ newTouchPos: SIMD3<Float>?, _ poi: SIMD3<Float>
209 | ) -> SIMD3<Float>? {
210 | guard let newTouchPos else { return nil }
211 | let parentSpaceNTP = entity.convert(position: newTouchPos, to: entity.parent)
212 | let parentSpaceOTP = entity.convert(position: poi, to: entity.parent)
| `- warning: main actor-isolated property 'parent' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
213 | guard let arTouchComp = entity.components.get(RUIDragComponent.self) else { return nil }
214 | let endPos = entity.position + parentSpaceNTP - parentSpaceOTP
RealityFoundation.HasHierarchy:3:43: note: property declared here
1 | @available(macOS 10.15, iOS 13.0, *)
2 | extension HasHierarchy {
3 | @MainActor @preconcurrency public var parent: Entity? { get }
| `- note: property declared here
4 | @MainActor @preconcurrency public func setParent(_ parent: Entity?, preservingWorldTransform: Bool = false)
5 | @MainActor @preconcurrency public var children: Entity.ChildCollection { get set }
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragComponent.swift:213:51: warning: call to main actor-isolated instance method 'get' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
205 | }
206 |
207 | internal static func handleMoveState(
| `- note: add '@MainActor' to make static method 'handleMoveState' part of global actor 'MainActor'
208 | _ entity: Entity, _ newTouchPos: SIMD3<Float>?, _ poi: SIMD3<Float>
209 | ) -> SIMD3<Float>? {
:
211 | let parentSpaceNTP = entity.convert(position: newTouchPos, to: entity.parent)
212 | let parentSpaceOTP = entity.convert(position: poi, to: entity.parent)
213 | guard let arTouchComp = entity.components.get(RUIDragComponent.self) else { return nil }
| `- warning: call to main actor-isolated instance method 'get' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
214 | let endPos = entity.position + parentSpaceNTP - parentSpaceOTP
215 | return getClampedPosition(arTouchComp.moveConstraint, endPos)
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RealityUI.swift:188:10: note: calls to instance method 'get' from outside of its actor context are implicitly asynchronous
186 |
187 | extension Entity.ComponentSet {
188 | func get<T>(_ component: T.Type) -> T? where T: Component {
| `- note: calls to instance method 'get' from outside of its actor context are implicitly asynchronous
189 | self[T.self]
190 | }
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragComponent.swift:213:40: warning: main actor-isolated property 'components' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
205 | }
206 |
207 | internal static func handleMoveState(
| `- note: add '@MainActor' to make static method 'handleMoveState' part of global actor 'MainActor'
208 | _ entity: Entity, _ newTouchPos: SIMD3<Float>?, _ poi: SIMD3<Float>
209 | ) -> SIMD3<Float>? {
:
211 | let parentSpaceNTP = entity.convert(position: newTouchPos, to: entity.parent)
212 | let parentSpaceOTP = entity.convert(position: poi, to: entity.parent)
213 | guard let arTouchComp = entity.components.get(RUIDragComponent.self) else { return nil }
| `- warning: main actor-isolated property 'components' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
214 | let endPos = entity.position + parentSpaceNTP - parentSpaceOTP
215 | return getClampedPosition(arTouchComp.moveConstraint, endPos)
RealityFoundation.Entity:4:43: note: property declared here
2 | @MainActor @preconcurrency open class Entity : HasHierarchy, HasSynchronization, HasTransform, Sendable {
3 | @MainActor @preconcurrency public var __coreEntity: __EntityRef { get }
4 | @MainActor @preconcurrency public var components: Entity.ComponentSet { get set }
| `- note: property declared here
5 | @MainActor @preconcurrency public var scene: Scene? { get }
6 | @MainActor @preconcurrency public var name: String { get set }
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragComponent.swift:214:29: warning: main actor-isolated property 'position' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
205 | }
206 |
207 | internal static func handleMoveState(
| `- note: add '@MainActor' to make static method 'handleMoveState' part of global actor 'MainActor'
208 | _ entity: Entity, _ newTouchPos: SIMD3<Float>?, _ poi: SIMD3<Float>
209 | ) -> SIMD3<Float>? {
:
212 | let parentSpaceOTP = entity.convert(position: poi, to: entity.parent)
213 | guard let arTouchComp = entity.components.get(RUIDragComponent.self) else { return nil }
214 | let endPos = entity.position + parentSpaceNTP - parentSpaceOTP
| `- warning: main actor-isolated property 'position' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
215 | return getClampedPosition(arTouchComp.moveConstraint, endPos)
216 | }
RealityFoundation.HasTransform:7:43: note: property declared here
5 | @MainActor @preconcurrency public func scale(relativeTo referenceEntity: Entity?) -> SIMD3<Float>
6 | @MainActor @preconcurrency public func setScale(_ scale: SIMD3<Float>, relativeTo referenceEntity: Entity?)
7 | @MainActor @preconcurrency public var position: SIMD3<Float> { get set }
| `- note: property declared here
8 | @MainActor @preconcurrency public func position(relativeTo referenceEntity: Entity?) -> SIMD3<Float>
9 | @MainActor @preconcurrency public func setPosition(_ position: SIMD3<Float>, relativeTo referenceEntity: Entity?)
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragComponent.swift:237:20: warning: main actor-isolated property 'orientation' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
216 | }
217 |
218 | internal func handleTurnState(
| `- note: add '@MainActor' to make instance method 'handleTurnState' part of global actor 'MainActor'
219 | _ entity: Entity, _ plane: float4x4, _ lastPoint: SIMD3<Float>,
220 | _ ray: inout (origin: SIMD3<Float>, direction: SIMD3<Float>)
:
235 | if angle > 1e-7 {
236 | // calculate the rotation quaternion, and apply
237 | entity.orientation *= simd_quatf(angle: signedAngle, axis: rotateVector)
| `- warning: main actor-isolated property 'orientation' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
238 | // update the turn state, so we only check the difference with the new angle
239 | self.dragState = .turn(plane: plane, start: newPoint)
RealityFoundation.HasTransform:10:43: note: mutation of this property is only permitted within the actor
8 | @MainActor @preconcurrency public func position(relativeTo referenceEntity: Entity?) -> SIMD3<Float>
9 | @MainActor @preconcurrency public func setPosition(_ position: SIMD3<Float>, relativeTo referenceEntity: Entity?)
10 | @MainActor @preconcurrency public var orientation: simd_quatf { get set }
| `- note: mutation of this property is only permitted within the actor
11 | @MainActor @preconcurrency public func orientation(relativeTo referenceEntity: Entity?) -> simd_quatf
12 | @MainActor @preconcurrency public func setOrientation(_ orientation: simd_quatf, relativeTo referenceEntity: Entity?)
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RealityUI.swift:39:23: warning: static property 'longGestureMask' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
37 |
38 | /// Mask to exclude entities from being hit by the long/panning gesture
39 | public static var longGestureMask: CollisionGroup = .all
| |- warning: static property 'longGestureMask' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'longGestureMask' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'longGestureMask' 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
40 |
41 | /// Mask to exclude entities from being hit by the tap gesture.
[15/20] Compiling RealityUI RUIDragDelegate.swift
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragComponent.swift:211:37: warning: call to main actor-isolated instance method 'convert(position:to:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
205 | }
206 |
207 | internal static func handleMoveState(
| `- note: add '@MainActor' to make static method 'handleMoveState' part of global actor 'MainActor'
208 | _ entity: Entity, _ newTouchPos: SIMD3<Float>?, _ poi: SIMD3<Float>
209 | ) -> SIMD3<Float>? {
210 | guard let newTouchPos else { return nil }
211 | let parentSpaceNTP = entity.convert(position: newTouchPos, to: entity.parent)
| `- warning: call to main actor-isolated instance method 'convert(position:to:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
212 | let parentSpaceOTP = entity.convert(position: poi, to: entity.parent)
213 | guard let arTouchComp = entity.components.get(RUIDragComponent.self) else { return nil }
RealityFoundation.HasTransform:19:44: note: calls to instance method 'convert(position:to:)' from outside of its actor context are implicitly asynchronous
17 | @MainActor @preconcurrency public func convert(normal: SIMD3<Float>, from referenceEntity: Entity?) -> SIMD3<Float>
18 | @MainActor @preconcurrency public func convert(transform: Transform, from referenceEntity: Entity?) -> Transform
19 | @MainActor @preconcurrency public func convert(position: SIMD3<Float>, to referenceEntity: Entity?) -> SIMD3<Float>
| `- note: calls to instance method 'convert(position:to:)' from outside of its actor context are implicitly asynchronous
20 | @MainActor @preconcurrency public func convert(direction: SIMD3<Float>, to referenceEntity: Entity?) -> SIMD3<Float>
21 | @MainActor @preconcurrency public func convert(normal: SIMD3<Float>, to referenceEntity: Entity?) -> SIMD3<Float>
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragComponent.swift:211:79: warning: main actor-isolated property 'parent' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
205 | }
206 |
207 | internal static func handleMoveState(
| `- note: add '@MainActor' to make static method 'handleMoveState' part of global actor 'MainActor'
208 | _ entity: Entity, _ newTouchPos: SIMD3<Float>?, _ poi: SIMD3<Float>
209 | ) -> SIMD3<Float>? {
210 | guard let newTouchPos else { return nil }
211 | let parentSpaceNTP = entity.convert(position: newTouchPos, to: entity.parent)
| `- warning: main actor-isolated property 'parent' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
212 | let parentSpaceOTP = entity.convert(position: poi, to: entity.parent)
213 | guard let arTouchComp = entity.components.get(RUIDragComponent.self) else { return nil }
RealityFoundation.HasHierarchy:3:43: note: property declared here
1 | @available(macOS 10.15, iOS 13.0, *)
2 | extension HasHierarchy {
3 | @MainActor @preconcurrency public var parent: Entity? { get }
| `- note: property declared here
4 | @MainActor @preconcurrency public func setParent(_ parent: Entity?, preservingWorldTransform: Bool = false)
5 | @MainActor @preconcurrency public var children: Entity.ChildCollection { get set }
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragComponent.swift:212:37: warning: call to main actor-isolated instance method 'convert(position:to:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
205 | }
206 |
207 | internal static func handleMoveState(
| `- note: add '@MainActor' to make static method 'handleMoveState' part of global actor 'MainActor'
208 | _ entity: Entity, _ newTouchPos: SIMD3<Float>?, _ poi: SIMD3<Float>
209 | ) -> SIMD3<Float>? {
210 | guard let newTouchPos else { return nil }
211 | let parentSpaceNTP = entity.convert(position: newTouchPos, to: entity.parent)
212 | let parentSpaceOTP = entity.convert(position: poi, to: entity.parent)
| `- warning: call to main actor-isolated instance method 'convert(position:to:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
213 | guard let arTouchComp = entity.components.get(RUIDragComponent.self) else { return nil }
214 | let endPos = entity.position + parentSpaceNTP - parentSpaceOTP
RealityFoundation.HasTransform:19:44: note: calls to instance method 'convert(position:to:)' from outside of its actor context are implicitly asynchronous
17 | @MainActor @preconcurrency public func convert(normal: SIMD3<Float>, from referenceEntity: Entity?) -> SIMD3<Float>
18 | @MainActor @preconcurrency public func convert(transform: Transform, from referenceEntity: Entity?) -> Transform
19 | @MainActor @preconcurrency public func convert(position: SIMD3<Float>, to referenceEntity: Entity?) -> SIMD3<Float>
| `- note: calls to instance method 'convert(position:to:)' from outside of its actor context are implicitly asynchronous
20 | @MainActor @preconcurrency public func convert(direction: SIMD3<Float>, to referenceEntity: Entity?) -> SIMD3<Float>
21 | @MainActor @preconcurrency public func convert(normal: SIMD3<Float>, to referenceEntity: Entity?) -> SIMD3<Float>
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragComponent.swift:212:71: warning: main actor-isolated property 'parent' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
205 | }
206 |
207 | internal static func handleMoveState(
| `- note: add '@MainActor' to make static method 'handleMoveState' part of global actor 'MainActor'
208 | _ entity: Entity, _ newTouchPos: SIMD3<Float>?, _ poi: SIMD3<Float>
209 | ) -> SIMD3<Float>? {
210 | guard let newTouchPos else { return nil }
211 | let parentSpaceNTP = entity.convert(position: newTouchPos, to: entity.parent)
212 | let parentSpaceOTP = entity.convert(position: poi, to: entity.parent)
| `- warning: main actor-isolated property 'parent' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
213 | guard let arTouchComp = entity.components.get(RUIDragComponent.self) else { return nil }
214 | let endPos = entity.position + parentSpaceNTP - parentSpaceOTP
RealityFoundation.HasHierarchy:3:43: note: property declared here
1 | @available(macOS 10.15, iOS 13.0, *)
2 | extension HasHierarchy {
3 | @MainActor @preconcurrency public var parent: Entity? { get }
| `- note: property declared here
4 | @MainActor @preconcurrency public func setParent(_ parent: Entity?, preservingWorldTransform: Bool = false)
5 | @MainActor @preconcurrency public var children: Entity.ChildCollection { get set }
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragComponent.swift:213:51: warning: call to main actor-isolated instance method 'get' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
205 | }
206 |
207 | internal static func handleMoveState(
| `- note: add '@MainActor' to make static method 'handleMoveState' part of global actor 'MainActor'
208 | _ entity: Entity, _ newTouchPos: SIMD3<Float>?, _ poi: SIMD3<Float>
209 | ) -> SIMD3<Float>? {
:
211 | let parentSpaceNTP = entity.convert(position: newTouchPos, to: entity.parent)
212 | let parentSpaceOTP = entity.convert(position: poi, to: entity.parent)
213 | guard let arTouchComp = entity.components.get(RUIDragComponent.self) else { return nil }
| `- warning: call to main actor-isolated instance method 'get' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
214 | let endPos = entity.position + parentSpaceNTP - parentSpaceOTP
215 | return getClampedPosition(arTouchComp.moveConstraint, endPos)
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RealityUI.swift:188:10: note: calls to instance method 'get' from outside of its actor context are implicitly asynchronous
186 |
187 | extension Entity.ComponentSet {
188 | func get<T>(_ component: T.Type) -> T? where T: Component {
| `- note: calls to instance method 'get' from outside of its actor context are implicitly asynchronous
189 | self[T.self]
190 | }
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragComponent.swift:213:40: warning: main actor-isolated property 'components' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
205 | }
206 |
207 | internal static func handleMoveState(
| `- note: add '@MainActor' to make static method 'handleMoveState' part of global actor 'MainActor'
208 | _ entity: Entity, _ newTouchPos: SIMD3<Float>?, _ poi: SIMD3<Float>
209 | ) -> SIMD3<Float>? {
:
211 | let parentSpaceNTP = entity.convert(position: newTouchPos, to: entity.parent)
212 | let parentSpaceOTP = entity.convert(position: poi, to: entity.parent)
213 | guard let arTouchComp = entity.components.get(RUIDragComponent.self) else { return nil }
| `- warning: main actor-isolated property 'components' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
214 | let endPos = entity.position + parentSpaceNTP - parentSpaceOTP
215 | return getClampedPosition(arTouchComp.moveConstraint, endPos)
RealityFoundation.Entity:4:43: note: property declared here
2 | @MainActor @preconcurrency open class Entity : HasHierarchy, HasSynchronization, HasTransform, Sendable {
3 | @MainActor @preconcurrency public var __coreEntity: __EntityRef { get }
4 | @MainActor @preconcurrency public var components: Entity.ComponentSet { get set }
| `- note: property declared here
5 | @MainActor @preconcurrency public var scene: Scene? { get }
6 | @MainActor @preconcurrency public var name: String { get set }
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragComponent.swift:214:29: warning: main actor-isolated property 'position' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
205 | }
206 |
207 | internal static func handleMoveState(
| `- note: add '@MainActor' to make static method 'handleMoveState' part of global actor 'MainActor'
208 | _ entity: Entity, _ newTouchPos: SIMD3<Float>?, _ poi: SIMD3<Float>
209 | ) -> SIMD3<Float>? {
:
212 | let parentSpaceOTP = entity.convert(position: poi, to: entity.parent)
213 | guard let arTouchComp = entity.components.get(RUIDragComponent.self) else { return nil }
214 | let endPos = entity.position + parentSpaceNTP - parentSpaceOTP
| `- warning: main actor-isolated property 'position' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
215 | return getClampedPosition(arTouchComp.moveConstraint, endPos)
216 | }
RealityFoundation.HasTransform:7:43: note: property declared here
5 | @MainActor @preconcurrency public func scale(relativeTo referenceEntity: Entity?) -> SIMD3<Float>
6 | @MainActor @preconcurrency public func setScale(_ scale: SIMD3<Float>, relativeTo referenceEntity: Entity?)
7 | @MainActor @preconcurrency public var position: SIMD3<Float> { get set }
| `- note: property declared here
8 | @MainActor @preconcurrency public func position(relativeTo referenceEntity: Entity?) -> SIMD3<Float>
9 | @MainActor @preconcurrency public func setPosition(_ position: SIMD3<Float>, relativeTo referenceEntity: Entity?)
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragComponent.swift:237:20: warning: main actor-isolated property 'orientation' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
216 | }
217 |
218 | internal func handleTurnState(
| `- note: add '@MainActor' to make instance method 'handleTurnState' part of global actor 'MainActor'
219 | _ entity: Entity, _ plane: float4x4, _ lastPoint: SIMD3<Float>,
220 | _ ray: inout (origin: SIMD3<Float>, direction: SIMD3<Float>)
:
235 | if angle > 1e-7 {
236 | // calculate the rotation quaternion, and apply
237 | entity.orientation *= simd_quatf(angle: signedAngle, axis: rotateVector)
| `- warning: main actor-isolated property 'orientation' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
238 | // update the turn state, so we only check the difference with the new angle
239 | self.dragState = .turn(plane: plane, start: newPoint)
RealityFoundation.HasTransform:10:43: note: mutation of this property is only permitted within the actor
8 | @MainActor @preconcurrency public func position(relativeTo referenceEntity: Entity?) -> SIMD3<Float>
9 | @MainActor @preconcurrency public func setPosition(_ position: SIMD3<Float>, relativeTo referenceEntity: Entity?)
10 | @MainActor @preconcurrency public var orientation: simd_quatf { get set }
| `- note: mutation of this property is only permitted within the actor
11 | @MainActor @preconcurrency public func orientation(relativeTo referenceEntity: Entity?) -> simd_quatf
12 | @MainActor @preconcurrency public func setOrientation(_ orientation: simd_quatf, relativeTo referenceEntity: Entity?)
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RealityUI.swift:39:23: warning: static property 'longGestureMask' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
37 |
38 | /// Mask to exclude entities from being hit by the long/panning gesture
39 | public static var longGestureMask: CollisionGroup = .all
| |- warning: static property 'longGestureMask' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'longGestureMask' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'longGestureMask' 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
40 |
41 | /// Mask to exclude entities from being hit by the tap gesture.
[16/20] Emitting module RealityUI
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIButton.swift:51:17: warning: main actor-isolated instance method 'ruiDrag(_:selectedDidUpdate:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
48 | }
49 | }
50 | extension RUIButton: RUIDragDelegate {
| `- note: add '@preconcurrency' to the 'RUIDragDelegate' conformance to defer isolation checking to run time
51 | public func ruiDrag(
| |- warning: main actor-isolated instance method 'ruiDrag(_:selectedDidUpdate:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'ruiDrag(_:selectedDidUpdate:)' to make this instance method not isolated to the actor
52 | _ entity: Entity,
53 | selectedDidUpdate hasCollided: Bool
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragDelegate.swift:57:10: note: mark the protocol requirement 'ruiDrag(_:selectedDidUpdate:)' 'async' to allow actor-isolated conformances
55 | /// - entity: The `Entity` involved in the collision state change.
56 | /// - isSelected: A Boolean value indicating the 3D interaction is currently on the entity.
57 | func ruiDrag(_ entity: Entity, selectedDidUpdate isSelected: Bool)
| `- note: mark the protocol requirement 'ruiDrag(_:selectedDidUpdate:)' 'async' to allow actor-isolated conformances
58 |
59 | /// Called when a touch-up event is completed on entities with a ``RUIDragComponent`` of type ``RUIDragComponent/DragComponentType/click``.
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIButton.swift:57:17: warning: main actor-isolated instance method 'ruiDrag(_:touchUpInsideDidComplete:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
55 | if hasCollided { compressButton() } else { releaseButton() }
56 | }
57 | public func ruiDrag(
| |- warning: main actor-isolated instance method 'ruiDrag(_:touchUpInsideDidComplete:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'ruiDrag(_:touchUpInsideDidComplete:)' to make this instance method not isolated to the actor
58 | _ entity: Entity,
59 | touchUpInsideDidComplete ray: (origin: SIMD3<Float>, direction: SIMD3<Float>)
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragDelegate.swift:67:10: note: mark the protocol requirement 'ruiDrag(_:touchUpInsideDidComplete:)' 'async' to allow actor-isolated conformances
65 | /// - entity: The `Entity` on which the touch-up gesture is completed.
66 | /// - ray: A ray representing the origin and direction of the touch-up interaction. The direction vector is not normalized.
67 | func ruiDrag(_ entity: Entity, touchUpInsideDidComplete ray: (origin: SIMD3<Float>, direction: SIMD3<Float>))
| `- note: mark the protocol requirement 'ruiDrag(_:touchUpInsideDidComplete:)' 'async' to allow actor-isolated conformances
68 |
69 | /// Called when a touch-up event fails on entities with a ``RUIDragComponent``
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUISlider.swift:82:17: warning: main actor-isolated instance method 'ruiDrag(_:dragDidStart:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
79 | }
80 |
81 | extension RUISlider: RUIDragDelegate {
| `- note: add '@preconcurrency' to the 'RUIDragDelegate' conformance to defer isolation checking to run time
82 | public func ruiDrag(_ entity: Entity, dragDidStart ray: (origin: SIMD3<Float>, direction: SIMD3<Float>)) {
| |- warning: main actor-isolated instance method 'ruiDrag(_:dragDidStart:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'ruiDrag(_:dragDidStart:)' to make this instance method not isolated to the actor
83 | self.sliderUpdateCallback?(self, .started)
84 | }
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragDelegate.swift:22:10: note: mark the protocol requirement 'ruiDrag(_:dragDidStart:)' 'async' to allow actor-isolated conformances
20 | /// - entity: The `Entity` that the user starts dragging.
21 | /// - ray: A ray showing the origin and direction of the ray used to move the entity. The direction is not normalised.
22 | func ruiDrag(_ entity: Entity, dragDidStart ray: (origin: SIMD3<Float>, direction: SIMD3<Float>))
| `- note: mark the protocol requirement 'ruiDrag(_:dragDidStart:)' 'async' to allow actor-isolated conformances
23 | /// Called when there is an update to a drag interaction on an entity.
24 | ///
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUISlider.swift:85:17: warning: main actor-isolated instance method 'ruiDrag(_:dragDidUpdate:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
83 | self.sliderUpdateCallback?(self, .started)
84 | }
85 | public func ruiDrag(_ entity: Entity, dragDidUpdate ray: (origin: SIMD3<Float>, direction: SIMD3<Float>)) {
| |- warning: main actor-isolated instance method 'ruiDrag(_:dragDidUpdate:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'ruiDrag(_:dragDidUpdate:)' to make this instance method not isolated to the actor
86 | var newPercent = 0.5 - entity.position.x / sliderLength
87 | self.clampSlideValue(&newPercent)
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragDelegate.swift:31:10: note: mark the protocol requirement 'ruiDrag(_:dragDidUpdate:)' 'async' to allow actor-isolated conformances
29 | /// - entity: The `Entity` whose position or state is being updated due to the drag interaction.
30 | /// - ray: A ray showing the origin and direction of the ray used to move the entity. The direction is not normalised.
31 | func ruiDrag(_ entity: Entity, dragDidUpdate ray: (origin: SIMD3<Float>, direction: SIMD3<Float>))
| `- note: mark the protocol requirement 'ruiDrag(_:dragDidUpdate:)' 'async' to allow actor-isolated conformances
32 | /// Called when a drag interaction on an AR entity ends.
33 | ///
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUISlider.swift:93:17: warning: main actor-isolated instance method 'ruiDrag(_:dragDidEnd:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
91 | if self.isContinuous { self.sliderUpdateCallback?(self, .updated) }
92 | }
93 | public func ruiDrag(_ entity: Entity, dragDidEnd ray: (origin: SIMD3<Float>, direction: SIMD3<Float>)) {
| |- warning: main actor-isolated instance method 'ruiDrag(_:dragDidEnd:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'ruiDrag(_:dragDidEnd:)' to make this instance method not isolated to the actor
94 | self.sliderUpdateCallback?(self, .ended)
95 | }
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragDelegate.swift:40:10: note: mark the protocol requirement 'ruiDrag(_:dragDidEnd:)' 'async' to allow actor-isolated conformances
38 | /// - entity: The `Entity` that was being dragged and is now released.
39 | /// - ray: A ray showing the origin and direction of the ray used to move the entity. The direction is not normalised.
40 | func ruiDrag(_ entity: Entity, dragDidEnd ray: (origin: SIMD3<Float>, direction: SIMD3<Float>))
| `- note: mark the protocol requirement 'ruiDrag(_:dragDidEnd:)' 'async' to allow actor-isolated conformances
41 | /// Called when a drag interaction on an entity is cancelled.
42 | ///
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIStepper.swift:80:17: warning: main actor-isolated instance method 'ruiDrag(_:selectedDidUpdate:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
77 | }
78 |
79 | extension RUIStepper: RUIDragDelegate {
| `- note: add '@preconcurrency' to the 'RUIDragDelegate' conformance to defer isolation checking to run time
80 | public func ruiDrag(_ entity: Entity, selectedDidUpdate isSelected: Bool) {
| |- warning: main actor-isolated instance method 'ruiDrag(_:selectedDidUpdate:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'ruiDrag(_:selectedDidUpdate:)' to make this instance method not isolated to the actor
81 | entity.scale = isSelected ? .init(repeating: 0.95) : .one
82 | }
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragDelegate.swift:57:10: note: mark the protocol requirement 'ruiDrag(_:selectedDidUpdate:)' 'async' to allow actor-isolated conformances
55 | /// - entity: The `Entity` involved in the collision state change.
56 | /// - isSelected: A Boolean value indicating the 3D interaction is currently on the entity.
57 | func ruiDrag(_ entity: Entity, selectedDidUpdate isSelected: Bool)
| `- note: mark the protocol requirement 'ruiDrag(_:selectedDidUpdate:)' 'async' to allow actor-isolated conformances
58 |
59 | /// Called when a touch-up event is completed on entities with a ``RUIDragComponent`` of type ``RUIDragComponent/DragComponentType/click``.
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIStepper.swift:83:17: warning: main actor-isolated instance method 'ruiDrag(_:touchUpInsideDidComplete:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
81 | entity.scale = isSelected ? .init(repeating: 0.95) : .one
82 | }
83 | public func ruiDrag(
| |- warning: main actor-isolated instance method 'ruiDrag(_:touchUpInsideDidComplete:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'ruiDrag(_:touchUpInsideDidComplete:)' to make this instance method not isolated to the actor
84 | _ entity: Entity,
85 | touchUpInsideDidComplete ray: (origin: SIMD3<Float>, direction: SIMD3<Float>)
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragDelegate.swift:67:10: note: mark the protocol requirement 'ruiDrag(_:touchUpInsideDidComplete:)' 'async' to allow actor-isolated conformances
65 | /// - entity: The `Entity` on which the touch-up gesture is completed.
66 | /// - ray: A ray representing the origin and direction of the touch-up interaction. The direction vector is not normalized.
67 | func ruiDrag(_ entity: Entity, touchUpInsideDidComplete ray: (origin: SIMD3<Float>, direction: SIMD3<Float>))
| `- note: mark the protocol requirement 'ruiDrag(_:touchUpInsideDidComplete:)' 'async' to allow actor-isolated conformances
68 |
69 | /// Called when a touch-up event fails on entities with a ``RUIDragComponent``
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUISwitch.swift:82:17: warning: main actor-isolated instance method 'ruiDrag(_:dragDidStart:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
79 | }
80 |
81 | extension RUISwitch: RUIDragDelegate {
| `- note: add '@preconcurrency' to the 'RUIDragDelegate' conformance to defer isolation checking to run time
82 | public func ruiDrag(_ entity: Entity, dragDidStart ray: (origin: SIMD3<Float>, direction: SIMD3<Float>)) {
| |- warning: main actor-isolated instance method 'ruiDrag(_:dragDidStart:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'ruiDrag(_:dragDidStart:)' to make this instance method not isolated to the actor
83 | guard entity.name == "thumb" else { return }
84 |
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragDelegate.swift:22:10: note: mark the protocol requirement 'ruiDrag(_:dragDidStart:)' 'async' to allow actor-isolated conformances
20 | /// - entity: The `Entity` that the user starts dragging.
21 | /// - ray: A ray showing the origin and direction of the ray used to move the entity. The direction is not normalised.
22 | func ruiDrag(_ entity: Entity, dragDidStart ray: (origin: SIMD3<Float>, direction: SIMD3<Float>))
| `- note: mark the protocol requirement 'ruiDrag(_:dragDidStart:)' 'async' to allow actor-isolated conformances
23 | /// Called when there is an update to a drag interaction on an entity.
24 | ///
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUISwitch.swift:89:17: warning: main actor-isolated instance method 'ruiDrag(_:dragDidUpdate:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
87 | self.compressThumb()
88 | }
89 | public func ruiDrag(_ entity: Entity, dragDidUpdate ray: (origin: SIMD3<Float>, direction: SIMD3<Float>)) {
| |- warning: main actor-isolated instance method 'ruiDrag(_:dragDidUpdate:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'ruiDrag(_:dragDidUpdate:)' to make this instance method not isolated to the actor
90 | guard entity.name == "thumb" else { return }
91 |
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragDelegate.swift:31:10: note: mark the protocol requirement 'ruiDrag(_:dragDidUpdate:)' 'async' to allow actor-isolated conformances
29 | /// - entity: The `Entity` whose position or state is being updated due to the drag interaction.
30 | /// - ray: A ray showing the origin and direction of the ray used to move the entity. The direction is not normalised.
31 | func ruiDrag(_ entity: Entity, dragDidUpdate ray: (origin: SIMD3<Float>, direction: SIMD3<Float>))
| `- note: mark the protocol requirement 'ruiDrag(_:dragDidUpdate:)' 'async' to allow actor-isolated conformances
32 | /// Called when a drag interaction on an AR entity ends.
33 | ///
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUISwitch.swift:95:17: warning: main actor-isolated instance method 'ruiDrag(_:dragDidEnd:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
93 | self.lastThumbPos = entity.position
94 | }
95 | public func ruiDrag(_ entity: Entity, dragDidEnd ray: (origin: SIMD3<Float>, direction: SIMD3<Float>)) {
| |- warning: main actor-isolated instance method 'ruiDrag(_:dragDidEnd:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'ruiDrag(_:dragDidEnd:)' to make this instance method not isolated to the actor
96 | guard entity.name == "thumb" else { return }
97 |
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragDelegate.swift:40:10: note: mark the protocol requirement 'ruiDrag(_:dragDidEnd:)' 'async' to allow actor-isolated conformances
38 | /// - entity: The `Entity` that was being dragged and is now released.
39 | /// - ray: A ray showing the origin and direction of the ray used to move the entity. The direction is not normalised.
40 | func ruiDrag(_ entity: Entity, dragDidEnd ray: (origin: SIMD3<Float>, direction: SIMD3<Float>))
| `- note: mark the protocol requirement 'ruiDrag(_:dragDidEnd:)' 'async' to allow actor-isolated conformances
41 | /// Called when a drag interaction on an entity is cancelled.
42 | ///
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RealityUI.swift:39:23: warning: static property 'longGestureMask' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
37 |
38 | /// Mask to exclude entities from being hit by the long/panning gesture
39 | public static var longGestureMask: CollisionGroup = .all
| |- warning: static property 'longGestureMask' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'longGestureMask' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'longGestureMask' 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
40 |
41 | /// Mask to exclude entities from being hit by the tap gesture.
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RealityUI.swift:42:23: warning: static property 'tapGestureMask' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
40 |
41 | /// Mask to exclude entities from being hit by the tap gesture.
42 | public static var tapGestureMask: CollisionGroup = .all
| |- warning: static property 'tapGestureMask' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'tapGestureMask' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'tapGestureMask' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
43 |
44 | /// Store all the RealityUI Animations for an Entity. It's important for memory management that this is empty when it should be.
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RealityUI.swift:45:25: warning: static property 'anims' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
43 |
44 | /// Store all the RealityUI Animations for an Entity. It's important for memory management that this is empty when it should be.
45 | internal static var anims: [Entity: [String: Cancellable]] = [:]
| |- warning: static property 'anims' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'anims' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'anims' 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
46 |
47 | private func logActivated() {
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RealityUI.swift:75:27: warning: static property 'tap' is not concurrency-safe because non-'Sendable' type 'RealityUI.RUIGesture' may have shared mutable state; this is an error in the Swift 6 language mode
62 |
63 | /// Different type of gestures used by RealityUI.
64 | public struct RUIGesture: OptionSet {
| `- note: consider making struct 'RUIGesture' conform to the 'Sendable' protocol
65 | /// Integer raw value used by the OptionSet
66 | public let rawValue: Int
:
73 |
74 | /// OptionSet value for tap gestures.
75 | public static let tap = RUIGesture(rawValue: 1 << 0)
| |- warning: static property 'tap' is not concurrency-safe because non-'Sendable' type 'RealityUI.RUIGesture' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'tap' 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
76 |
77 | /// OptionSet value for long touch gestures. This will catch all entities with ``RUIDragComponent`` and a collision body.
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RealityUI.swift:78:27: warning: static property 'ruiDrag' is not concurrency-safe because non-'Sendable' type 'RealityUI.RUIGesture' may have shared mutable state; this is an error in the Swift 6 language mode
62 |
63 | /// Different type of gestures used by RealityUI.
64 | public struct RUIGesture: OptionSet {
| `- note: consider making struct 'RUIGesture' conform to the 'Sendable' protocol
65 | /// Integer raw value used by the OptionSet
66 | public let rawValue: Int
:
76 |
77 | /// OptionSet value for long touch gestures. This will catch all entities with ``RUIDragComponent`` and a collision body.
78 | public static let ruiDrag = RUIGesture(rawValue: 1 << 1)
| |- warning: static property 'ruiDrag' is not concurrency-safe because non-'Sendable' type 'RealityUI.RUIGesture' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'ruiDrag' 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
79 |
80 | @available(*, deprecated, renamed: "ruiDrag")
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RealityUI.swift:81:27: warning: static property 'longTouch' is not concurrency-safe because non-'Sendable' type 'RealityUI.RUIGesture' may have shared mutable state; this is an error in the Swift 6 language mode
62 |
63 | /// Different type of gestures used by RealityUI.
64 | public struct RUIGesture: OptionSet {
| `- note: consider making struct 'RUIGesture' conform to the 'Sendable' protocol
65 | /// Integer raw value used by the OptionSet
66 | public let rawValue: Int
:
79 |
80 | @available(*, deprecated, renamed: "ruiDrag")
81 | public static let longTouch = RUIGesture.ruiDrag
| |- warning: static property 'longTouch' is not concurrency-safe because non-'Sendable' type 'RealityUI.RUIGesture' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'longTouch' 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
82 |
83 | /// Encapsulates all the possible values of this OptionSet
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RealityUI.swift:84:27: warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'RealityUI.RUIGesture' may have shared mutable state; this is an error in the Swift 6 language mode
62 |
63 | /// Different type of gestures used by RealityUI.
64 | public struct RUIGesture: OptionSet {
| `- note: consider making struct 'RUIGesture' conform to the 'Sendable' protocol
65 | /// Integer raw value used by the OptionSet
66 | public let rawValue: Int
:
82 |
83 | /// Encapsulates all the possible values of this OptionSet
84 | public static let all: RUIGesture = [.tap, .ruiDrag]
| |- warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'RealityUI.RUIGesture' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'all' 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
85 | }
86 |
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RealityUI.swift:105:23: warning: static property 'RUIComponents' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
103 |
104 | /// All the components used by RealityUI
105 | public static var RUIComponents: [Component.Type] = [
| |- warning: static property 'RUIComponents' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'RUIComponents' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'RUIComponents' 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
106 | RUIComponent.self,
107 | ButtonComponent.self,
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RealityUI.swift:116:25: warning: static property 'shared' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
114 | ]
115 |
116 | internal static var shared = RealityUI()
| |- warning: static property 'shared' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'shared' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'shared' 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
117 |
118 | private override init() {
[17/20] Compiling RealityUI HasRUI.swift
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RealityUI.swift:45:25: warning: static property 'anims' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
43 |
44 | /// Store all the RealityUI Animations for an Entity. It's important for memory management that this is empty when it should be.
45 | internal static var anims: [Entity: [String: Cancellable]] = [:]
| |- warning: static property 'anims' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'anims' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'anims' 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
46 |
47 | private func logActivated() {
[18/20] Compiling RealityUI RUIAnimations.swift
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RealityUI.swift:45:25: warning: static property 'anims' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
43 |
44 | /// Store all the RealityUI Animations for an Entity. It's important for memory management that this is empty when it should be.
45 | internal static var anims: [Entity: [String: Cancellable]] = [:]
| |- warning: static property 'anims' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'anims' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'anims' 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
46 |
47 | private func logActivated() {
[19/20] Compiling RealityUI RealityUI.swift
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RealityUI.swift:39:23: warning: static property 'longGestureMask' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
37 |
38 | /// Mask to exclude entities from being hit by the long/panning gesture
39 | public static var longGestureMask: CollisionGroup = .all
| |- warning: static property 'longGestureMask' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'longGestureMask' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'longGestureMask' 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
40 |
41 | /// Mask to exclude entities from being hit by the tap gesture.
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RealityUI.swift:42:23: warning: static property 'tapGestureMask' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
40 |
41 | /// Mask to exclude entities from being hit by the tap gesture.
42 | public static var tapGestureMask: CollisionGroup = .all
| |- warning: static property 'tapGestureMask' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'tapGestureMask' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'tapGestureMask' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
43 |
44 | /// Store all the RealityUI Animations for an Entity. It's important for memory management that this is empty when it should be.
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RealityUI.swift:45:25: warning: static property 'anims' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
43 |
44 | /// Store all the RealityUI Animations for an Entity. It's important for memory management that this is empty when it should be.
45 | internal static var anims: [Entity: [String: Cancellable]] = [:]
| |- warning: static property 'anims' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'anims' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'anims' 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
46 |
47 | private func logActivated() {
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RealityUI.swift:75:27: warning: static property 'tap' is not concurrency-safe because non-'Sendable' type 'RealityUI.RUIGesture' may have shared mutable state; this is an error in the Swift 6 language mode
62 |
63 | /// Different type of gestures used by RealityUI.
64 | public struct RUIGesture: OptionSet {
| `- note: consider making struct 'RUIGesture' conform to the 'Sendable' protocol
65 | /// Integer raw value used by the OptionSet
66 | public let rawValue: Int
:
73 |
74 | /// OptionSet value for tap gestures.
75 | public static let tap = RUIGesture(rawValue: 1 << 0)
| |- warning: static property 'tap' is not concurrency-safe because non-'Sendable' type 'RealityUI.RUIGesture' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'tap' 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
76 |
77 | /// OptionSet value for long touch gestures. This will catch all entities with ``RUIDragComponent`` and a collision body.
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RealityUI.swift:78:27: warning: static property 'ruiDrag' is not concurrency-safe because non-'Sendable' type 'RealityUI.RUIGesture' may have shared mutable state; this is an error in the Swift 6 language mode
62 |
63 | /// Different type of gestures used by RealityUI.
64 | public struct RUIGesture: OptionSet {
| `- note: consider making struct 'RUIGesture' conform to the 'Sendable' protocol
65 | /// Integer raw value used by the OptionSet
66 | public let rawValue: Int
:
76 |
77 | /// OptionSet value for long touch gestures. This will catch all entities with ``RUIDragComponent`` and a collision body.
78 | public static let ruiDrag = RUIGesture(rawValue: 1 << 1)
| |- warning: static property 'ruiDrag' is not concurrency-safe because non-'Sendable' type 'RealityUI.RUIGesture' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'ruiDrag' 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
79 |
80 | @available(*, deprecated, renamed: "ruiDrag")
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RealityUI.swift:81:27: warning: static property 'longTouch' is not concurrency-safe because non-'Sendable' type 'RealityUI.RUIGesture' may have shared mutable state; this is an error in the Swift 6 language mode
62 |
63 | /// Different type of gestures used by RealityUI.
64 | public struct RUIGesture: OptionSet {
| `- note: consider making struct 'RUIGesture' conform to the 'Sendable' protocol
65 | /// Integer raw value used by the OptionSet
66 | public let rawValue: Int
:
79 |
80 | @available(*, deprecated, renamed: "ruiDrag")
81 | public static let longTouch = RUIGesture.ruiDrag
| |- warning: static property 'longTouch' is not concurrency-safe because non-'Sendable' type 'RealityUI.RUIGesture' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'longTouch' 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
82 |
83 | /// Encapsulates all the possible values of this OptionSet
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RealityUI.swift:84:27: warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'RealityUI.RUIGesture' may have shared mutable state; this is an error in the Swift 6 language mode
62 |
63 | /// Different type of gestures used by RealityUI.
64 | public struct RUIGesture: OptionSet {
| `- note: consider making struct 'RUIGesture' conform to the 'Sendable' protocol
65 | /// Integer raw value used by the OptionSet
66 | public let rawValue: Int
:
82 |
83 | /// Encapsulates all the possible values of this OptionSet
84 | public static let all: RUIGesture = [.tap, .ruiDrag]
| |- warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'RealityUI.RUIGesture' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'all' 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
85 | }
86 |
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RealityUI.swift:105:23: warning: static property 'RUIComponents' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
103 |
104 | /// All the components used by RealityUI
105 | public static var RUIComponents: [Component.Type] = [
| |- warning: static property 'RUIComponents' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'RUIComponents' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'RUIComponents' 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
106 | RUIComponent.self,
107 | ButtonComponent.self,
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RealityUI.swift:116:25: warning: static property 'shared' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
114 | ]
115 |
116 | internal static var shared = RealityUI()
| |- warning: static property 'shared' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'shared' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'shared' 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
117 |
118 | private override init() {
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RealityUI.swift:142:31: warning: call to main actor-isolated initializer 'init(target:action:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
136 | self.enabledGestures[arView]?.formUnion(newGestures)
137 | }
138 | private func addTap(to arView: ARView) {
| `- note: add '@MainActor' to make instance method 'addTap(to:)' part of global actor 'MainActor'
139 | #if os(iOS)
140 | let addUITapGesture = UITapGestureRecognizer(target: self, action: #selector(self.tapReco))
141 | #elseif os(macOS)
142 | let addUITapGesture = NSClickGestureRecognizer(target: self, action: #selector(self.clickReco))
| `- warning: call to main actor-isolated initializer 'init(target:action:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
143 | #endif
144 | arView.addGestureRecognizer(addUITapGesture)
AppKit.NSClickGestureRecognizer:7:23: note: calls to initializer 'init(target:action:)' from outside of its actor context are implicitly asynchronous
5 | @available(macOS 10.12.2, *)
6 | open var numberOfTouchesRequired: Int { get set }
7 | @MainActor public init(target: Any?, action: Selector?)
| `- note: calls to initializer 'init(target:action:)' from outside of its actor context are implicitly asynchronous
8 | public init?(coder: NSCoder)
9 | public convenience init()
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RealityUI.swift:144:16: warning: call to main actor-isolated instance method 'addGestureRecognizer' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
136 | self.enabledGestures[arView]?.formUnion(newGestures)
137 | }
138 | private func addTap(to arView: ARView) {
| `- note: add '@MainActor' to make instance method 'addTap(to:)' part of global actor 'MainActor'
139 | #if os(iOS)
140 | let addUITapGesture = UITapGestureRecognizer(target: self, action: #selector(self.tapReco))
:
142 | let addUITapGesture = NSClickGestureRecognizer(target: self, action: #selector(self.clickReco))
143 | #endif
144 | arView.addGestureRecognizer(addUITapGesture)
| `- warning: call to main actor-isolated instance method 'addGestureRecognizer' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
145 | self.installedGestures[arView]?.append(addUITapGesture)
146 | }
AppKit.NSView:5:26: note: calls to instance method 'addGestureRecognizer' from outside of its actor context are implicitly asynchronous
3 | open var gestureRecognizers: [NSGestureRecognizer] { get set }
4 | @available(macOS 10.10, *)
5 | @MainActor open func addGestureRecognizer(_ gestureRecognizer: NSGestureRecognizer)
| `- note: calls to instance method 'addGestureRecognizer' from outside of its actor context are implicitly asynchronous
6 | @available(macOS 10.10, *)
7 | open func removeGestureRecognizer(_ gestureRecognizer: NSGestureRecognizer)
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RealityUI.swift:148:27: warning: call to main actor-isolated initializer 'init(target:action:view:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
145 | self.installedGestures[arView]?.append(addUITapGesture)
146 | }
147 | private func addDragGesture(to arView: ARView) {
| `- note: add '@MainActor' to make instance method 'addDragGesture(to:)' part of global actor 'MainActor'
148 | let dragGesture = RUIDragGestureRecognizer(
| `- warning: call to main actor-isolated initializer 'init(target:action:view:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
149 | target: self, action: #selector(self.arTouchReco),
150 | view: arView
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RUIDragGestureRecognizer.swift:36:12: note: calls to initializer 'init(target:action:view:)' from outside of its actor context are implicitly asynchronous
34 | var viewSubscriber: Cancellable?
35 |
36 | public init(target: Any?, action: Selector?, view: ARView) {
| `- note: calls to initializer 'init(target:action:view:)' from outside of its actor context are implicitly asynchronous
37 | self.arView = view
38 | super.init(target: target, action: action)
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RealityUI.swift:152:16: warning: call to main actor-isolated instance method 'addGestureRecognizer' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
145 | self.installedGestures[arView]?.append(addUITapGesture)
146 | }
147 | private func addDragGesture(to arView: ARView) {
| `- note: add '@MainActor' to make instance method 'addDragGesture(to:)' part of global actor 'MainActor'
148 | let dragGesture = RUIDragGestureRecognizer(
149 | target: self, action: #selector(self.arTouchReco),
150 | view: arView
151 | )
152 | arView.addGestureRecognizer(dragGesture)
| `- warning: call to main actor-isolated instance method 'addGestureRecognizer' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
153 | self.installedGestures[arView]?.append(dragGesture)
154 | }
AppKit.NSView:5:26: note: calls to instance method 'addGestureRecognizer' from outside of its actor context are implicitly asynchronous
3 | open var gestureRecognizers: [NSGestureRecognizer] { get set }
4 | @available(macOS 10.10, *)
5 | @MainActor open func addGestureRecognizer(_ gestureRecognizer: NSGestureRecognizer)
| `- note: calls to instance method 'addGestureRecognizer' from outside of its actor context are implicitly asynchronous
6 | @available(macOS 10.10, *)
7 | open func removeGestureRecognizer(_ gestureRecognizer: NSGestureRecognizer)
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RealityUI.swift:157:31: warning: call to main actor-isolated instance method 'hitTest(_:query:mask:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
154 | }
155 |
156 | internal func tapActionChecker(_ arView: ARView, _ tapInView: CGPoint) {
| `- note: add '@MainActor' to make instance method 'tapActionChecker' part of global actor 'MainActor'
157 | if let ccHit = arView.hitTest(tapInView, mask: RealityUI.tapGestureMask).first,
| `- warning: call to main actor-isolated instance method 'hitTest(_:query:mask:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
158 | let comp = ccHit.entity.components.get(RUITapComponent.self) {
159 | // if the element has RUIComponent, and it has `ruiEnabled` set to false
RealityKit.ARView:10:44: note: calls to instance method 'hitTest(_:query:mask:)' from outside of its actor context are implicitly asynchronous
8 | @MainActor @preconcurrency public func unproject(_ point: CGPoint, ontoPlane planeTransform: float4x4, relativeToCamera: Bool) -> SIMD3<Float>?
9 | @MainActor @preconcurrency public func ray(through screenPoint: CGPoint) -> (origin: SIMD3<Float>, direction: SIMD3<Float>)?
10 | @MainActor @preconcurrency public func hitTest(_ point: CGPoint, query: CollisionCastQueryType = .all, mask: CollisionGroup = .all) -> [CollisionCastHit]
| `- note: calls to instance method 'hitTest(_:query:mask:)' from outside of its actor context are implicitly asynchronous
11 | @MainActor @preconcurrency public func entity(at point: CGPoint) -> Entity?
12 | @MainActor @preconcurrency public func entities(at point: CGPoint) -> [Entity]
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RealityUI.swift:158:47: warning: call to main actor-isolated instance method 'get' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
154 | }
155 |
156 | internal func tapActionChecker(_ arView: ARView, _ tapInView: CGPoint) {
| `- note: add '@MainActor' to make instance method 'tapActionChecker' part of global actor 'MainActor'
157 | if let ccHit = arView.hitTest(tapInView, mask: RealityUI.tapGestureMask).first,
158 | let comp = ccHit.entity.components.get(RUITapComponent.self) {
| `- warning: call to main actor-isolated instance method 'get' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
159 | // if the element has RUIComponent, and it has `ruiEnabled` set to false
160 | if let ruiComp = ccHit.entity.components.get(RUIComponent.self), !ruiComp.ruiEnabled {
:
186 |
187 | extension Entity.ComponentSet {
188 | func get<T>(_ component: T.Type) -> T? where T: Component {
| `- note: calls to instance method 'get' from outside of its actor context are implicitly asynchronous
189 | self[T.self]
190 | }
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RealityUI.swift:158:36: warning: main actor-isolated property 'components' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
154 | }
155 |
156 | internal func tapActionChecker(_ arView: ARView, _ tapInView: CGPoint) {
| `- note: add '@MainActor' to make instance method 'tapActionChecker' part of global actor 'MainActor'
157 | if let ccHit = arView.hitTest(tapInView, mask: RealityUI.tapGestureMask).first,
158 | let comp = ccHit.entity.components.get(RUITapComponent.self) {
| `- warning: main actor-isolated property 'components' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
159 | // if the element has RUIComponent, and it has `ruiEnabled` set to false
160 | if let ruiComp = ccHit.entity.components.get(RUIComponent.self), !ruiComp.ruiEnabled {
RealityFoundation.Entity:4:43: note: property declared here
2 | @MainActor @preconcurrency open class Entity : HasHierarchy, HasSynchronization, HasTransform, Sendable {
3 | @MainActor @preconcurrency public var __coreEntity: __EntityRef { get }
4 | @MainActor @preconcurrency public var components: Entity.ComponentSet { get set }
| `- note: property declared here
5 | @MainActor @preconcurrency public var scene: Scene? { get }
6 | @MainActor @preconcurrency public var name: String { get set }
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RealityUI.swift:160:54: warning: call to main actor-isolated instance method 'get' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
154 | }
155 |
156 | internal func tapActionChecker(_ arView: ARView, _ tapInView: CGPoint) {
| `- note: add '@MainActor' to make instance method 'tapActionChecker' part of global actor 'MainActor'
157 | if let ccHit = arView.hitTest(tapInView, mask: RealityUI.tapGestureMask).first,
158 | let comp = ccHit.entity.components.get(RUITapComponent.self) {
159 | // if the element has RUIComponent, and it has `ruiEnabled` set to false
160 | if let ruiComp = ccHit.entity.components.get(RUIComponent.self), !ruiComp.ruiEnabled {
| `- warning: call to main actor-isolated instance method 'get' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
161 | return
162 | }
:
186 |
187 | extension Entity.ComponentSet {
188 | func get<T>(_ component: T.Type) -> T? where T: Component {
| `- note: calls to instance method 'get' from outside of its actor context are implicitly asynchronous
189 | self[T.self]
190 | }
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RealityUI.swift:160:43: warning: main actor-isolated property 'components' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
154 | }
155 |
156 | internal func tapActionChecker(_ arView: ARView, _ tapInView: CGPoint) {
| `- note: add '@MainActor' to make instance method 'tapActionChecker' part of global actor 'MainActor'
157 | if let ccHit = arView.hitTest(tapInView, mask: RealityUI.tapGestureMask).first,
158 | let comp = ccHit.entity.components.get(RUITapComponent.self) {
159 | // if the element has RUIComponent, and it has `ruiEnabled` set to false
160 | if let ruiComp = ccHit.entity.components.get(RUIComponent.self), !ruiComp.ruiEnabled {
| `- warning: main actor-isolated property 'components' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
161 | return
162 | }
RealityFoundation.Entity:4:43: note: property declared here
2 | @MainActor @preconcurrency open class Entity : HasHierarchy, HasSynchronization, HasTransform, Sendable {
3 | @MainActor @preconcurrency public var __coreEntity: __EntityRef { get }
4 | @MainActor @preconcurrency public var components: Entity.ComponentSet { get set }
| `- note: property declared here
5 | @MainActor @preconcurrency public var scene: Scene? { get }
6 | @MainActor @preconcurrency public var name: String { get set }
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RealityUI.swift:172:35: warning: main actor-isolated property 'view' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
169 |
170 | #if os(macOS)
171 | @objc internal func clickReco(sender: NSGestureRecognizer) {
| `- note: add '@MainActor' to make instance method 'clickReco(sender:)' part of global actor 'MainActor'
172 | guard let arView = sender.view as? ARView else {
| `- warning: main actor-isolated property 'view' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
173 | return
174 | }
AppKit.NSGestureRecognizer:12:25: note: property declared here
10 | @available(swift, obsoleted: 3, renamed: "isEnabled")
11 | open var enabled: Bool { get set }
12 | @MainActor open var view: NSView? { get }
| `- note: property declared here
13 | @available(macOS 10.11, *)
14 | open var pressureConfiguration: NSPressureConfiguration { get set }
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RealityUI.swift:175:32: warning: call to main actor-isolated instance method 'location(in:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
169 |
170 | #if os(macOS)
171 | @objc internal func clickReco(sender: NSGestureRecognizer) {
| `- note: add '@MainActor' to make instance method 'clickReco(sender:)' part of global actor 'MainActor'
172 | guard let arView = sender.view as? ARView else {
173 | return
174 | }
175 | let tapInView = sender.location(in: arView)
| `- warning: call to main actor-isolated instance method 'location(in:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
176 | tapActionChecker(arView, tapInView)
177 | }
AppKit.NSGestureRecognizer:21:26: note: calls to instance method 'location(in:)' from outside of its actor context are implicitly asynchronous
19 | open var delaysMagnificationEvents: Bool { get set }
20 | open var delaysRotationEvents: Bool { get set }
21 | @MainActor open func location(in view: NSView?) -> NSPoint
| `- note: calls to instance method 'location(in:)' from outside of its actor context are implicitly asynchronous
22 | @available(swift, obsoleted: 3, renamed: "location(in:)")
23 | open func locationInView(_ view: NSView?) -> NSPoint
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RealityUI.swift:142:31: warning: sending task-isolated value of type 'RealityUI' with later accesses to main actor-isolated context risks causing data races; this is an error in the Swift 6 language mode
140 | let addUITapGesture = UITapGestureRecognizer(target: self, action: #selector(self.tapReco))
141 | #elseif os(macOS)
142 | let addUITapGesture = NSClickGestureRecognizer(target: self, action: #selector(self.clickReco))
| `- warning: sending task-isolated value of type 'RealityUI' with later accesses to main actor-isolated context risks causing data races; this is an error in the Swift 6 language mode
143 | #endif
144 | arView.addGestureRecognizer(addUITapGesture)
/Users/admin/builder/spi-builder-workspace/Sources/RealityUI/RealityUI.swift:148:27: warning: sending task-isolated value of type 'RealityUI' with later accesses to main actor-isolated context risks causing data races; this is an error in the Swift 6 language mode
146 | }
147 | private func addDragGesture(to arView: ARView) {
148 | let dragGesture = RUIDragGestureRecognizer(
| `- warning: sending task-isolated value of type 'RealityUI' with later accesses to main actor-isolated context risks causing data races; this is an error in the Swift 6 language mode
149 | target: self, action: #selector(self.arTouchReco),
150 | view: arView
[20/20] Compiling RealityUI SwiftUI+RUIGestures.swift
Build complete! (25.16s)
Build complete.
{
"dependencies" : [
],
"manifest_display_name" : "RealityUI",
"name" : "RealityUI",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "13.0"
},
{
"name" : "macos",
"version" : "10.15"
},
{
"name" : "visionos",
"version" : "1.0"
}
],
"products" : [
{
"name" : "RealityUI",
"targets" : [
"RealityUI"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "RealityUITests",
"module_type" : "SwiftTarget",
"name" : "RealityUITests",
"path" : "Tests/RealityUITests",
"sources" : [
"RUIAnimationTests.swift",
"RUIButtonTests.swift",
"RUIDragButtonTests.swift",
"RUIDragSliderTests.swift",
"RUIGeometryTests.swift",
"RUISliderTests.swift",
"RUIStepperTests.swift",
"RUISwitchTests.swift",
"RUITextTests.swift",
"RUITextureTests.swift",
"RUITurnTests.swift",
"RealityUIGeneralTests.swift",
"RealityUIUtilityTests.swift"
],
"target_dependencies" : [
"RealityUI"
],
"type" : "test"
},
{
"c99name" : "RealityUI",
"module_type" : "SwiftTarget",
"name" : "RealityUI",
"path" : "Sources/RealityUI",
"product_memberships" : [
"RealityUI"
],
"sources" : [
"HasRUI.swift",
"RUIAnimations.swift",
"RUIButton.swift",
"RUIDragComponent+DragEvents.swift",
"RUIDragComponent.swift",
"RUIDragDelegate.swift",
"RUIDragGestureRecognizer+Mouse.swift",
"RUIDragGestureRecognizer+Touch.swift",
"RUIDragGestureRecognizer.swift",
"RUISlider.swift",
"RUIStepper.swift",
"RUISwitch.swift",
"RUITapComponent.swift",
"RUIText.swift",
"RUITexture.swift",
"RealityUI.swift",
"SwiftUI+RUIGestures.swift"
],
"type" : "library"
}
],
"tools_version" : "5.9"
}
✅ Doc result (pending) reported
========================================
GenerateDocs
========================================
Generating docs at path: $PWD/.docs/maxxfrazer/realityui/main
Repository: maxxfrazer/RealityUI
Swift version used: 6.0
Target: RealityUI
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/swift-docc-render-artifact/.git/
From https://github.com/swiftlang/swift-docc-render-artifact
* branch 88815688627177b9716a01ca41da19397bd30e47 -> FETCH_HEAD
HEAD is now at 8881568 Update the artifact
Extracting symbol information for 'RealityUI'...
Finished extracting symbol information for 'RealityUI'. (6.88s)
Building documentation for 'RealityUI'...
warning: Parameter 'worldPos' not found in instance method declaration
--> ../RUIDragComponent+DragEvents.swift:22:11-22:65
20 | /// - Parameters:
21 | /// - entity: The entity involved in the drag interaction.
22 + /// - worldPos: The world position where the drag started.
| ╰─suggestion: Remove 'worldPos' parameter documentation
23 | /// - origin: The original position of the entity.
24 | @discardableResult
warning: Parameter 'origin' not found in instance method declaration
--> ../RUIDragComponent+DragEvents.swift:23:11-23:57
21 | /// - entity: The entity involved in the drag interaction.
22 | /// - worldPos: The world position where the drag started.
23 + /// - origin: The original position of the entity.
| ╰─suggestion: Remove 'origin' parameter documentation
24 | @discardableResult
25 | public func dragStarted(
warning: Parameter 'ray' is missing documentation
--> ../RUIDragComponent+DragEvents.swift:23:57-23:57
21 | /// - entity: The entity involved in the drag interaction.
22 | /// - worldPos: The world position where the drag started.
23 + /// - origin: The original position of the entity.
| ╰─suggestion: Document 'ray' parameter
24 | @discardableResult
25 | public func dragStarted(
warning: Parameter 'sliderUpdated' not found in initializer declaration
--> ../RUISlider.swift:43:13-43:26
41 | /// - slider: Details about the slider to be set when initialized
42 | /// - rui: Details about the RealityUI Entity
43 + /// - sliderUpdated: callback function to receive updates on slider value changes.
| ╰─suggestion: Replace 'sliderUpdated' with 'sliderUpdateCallback'
44 | required public init(
45 | slider: SliderComponent? = nil, rui: RUIComponent? = nil,
warning: Parameter 'sliderUpdateCallback' is missing documentation
--> ../RUISlider.swift:43:89-43:89
41 | /// - slider: Details about the slider to be set when initialized
42 | /// - rui: Details about the RealityUI Entity
43 + /// - sliderUpdated: callback function to receive updates on slider value changes.
| ╰─suggestion: Document 'sliderUpdateCallback' parameter
44 | required public init(
45 | slider: SliderComponent? = nil, rui: RUIComponent? = nil,
warning: Parameter 'separatorTint' is missing documentation
--> ../RUIStepper.swift:148:110-148:110
146 | /// - backgroundTint: Background color of the stepper, default `.windowBackgroundColor`
147 | /// - buttonTint: Color of the buttons inside a stepper, default `.systemBlue`.
| ╰─suggestion: Document 'separatorTint' parameter
148 + /// - secondaryTint: Color of the second button inside a stepper. If nil, then buttonTint will be used.
149 | public init(
150 | style: StepperComponent.Style = .minusPlus,
warning: 'init(button:RUI:updateCallback:)' doesn't exist at '/RealityUI/RUIButton'
--> RUIButton.md:15:5-15:37
13 | - ``init()``
14 | - ``init(button:rui:touchUpInside:)``
15 + - ``init(button:RUI:updateCallback:)``
| ╰─suggestion: Replace 'init(button:RUI:updateCallback:)' with 'init(button:rui:touchUpInside:)'
16 |
17 | ### Button Action Callback
warning: 'Setup' is ambiguous at '/RealityUI'
--> RUIControls.md:7:104-7:109
5 | ## Overview
6 |
7 + Look below to see how to add all the RUIControls to your RealityKit Scene. Make sure to check out <doc:Setup> before adding RUIControls; otherwise the touch gestures may not work.
| ├─suggestion: Insert 'anchor' for'Setup'
| ╰─suggestion: Insert 'article' for'Setup'
8 |
9 | ## Control Types
warning: 'touchState' doesn't exist at '/RealityUI/RUIDragComponent'
--> RUIDragComponent.md:28:5-28:15
26 | - ``type``
27 | - ``delegate``
28 + - ``touchState``
29 |
30 | ### Drag Types
warning: 'init(textComponent:rui:)' doesn't exist at '/RealityUI/RUIText'
--> RUIText.md:12:5-12:29
10 |
11 | - ``init(with:width:height:font:extrusion:color:)``
12 + - ``init(textComponent:rui:)``
| ╰─suggestion: Replace 'init(textComponent:rui:)' with 'init(textComponent:rui:tapAction:)'
13 | - ``init()``
14 |
warning: 'Setup' is ambiguous at '/RealityUI'
--> RealityUI+Extension.md:13:8-13:13
11 | ### Setup
12 |
13 + - <doc:Setup>
| ├─suggestion: Insert 'anchor' for'Setup'
| ╰─suggestion: Insert 'article' for'Setup'
14 | - ``RealityUI/RealityUI/enableGestures(_:on:)``
15 | - ``RealityUI/RealityUI/registerComponents()``
warning: 'Setup' is ambiguous at '/RealityUI'
--> RealityUI.md:18:8-18:13
16 | It's important to set up your RealityKit scene to work with RealityUI before moving on.
17 |
18 + - <doc:Setup>
| ├─suggestion: Insert 'anchor' for'Setup'
| ╰─suggestion: Insert 'article' for'Setup'
19 | - <doc:RealityUI/RealityUI>
20 |Finished building documentation for 'RealityUI' (0.28s)
Generated documentation archive at:
/Users/admin/builder/spi-builder-workspace/.docs/maxxfrazer/realityui/main
Fetching https://github.com/swiftlang/swift-docc-plugin
[1/2038] Fetching swift-docc-plugin
Fetched https://github.com/swiftlang/swift-docc-plugin from cache (1.30s)
Computing version for https://github.com/swiftlang/swift-docc-plugin
Computed https://github.com/swiftlang/swift-docc-plugin at 1.4.3 (2.44s)
Fetching https://github.com/swiftlang/swift-docc-symbolkit
[1/3187] Fetching swift-docc-symbolkit
Fetched https://github.com/swiftlang/swift-docc-symbolkit from cache (1.22s)
Computing version for https://github.com/swiftlang/swift-docc-symbolkit
Computed https://github.com/swiftlang/swift-docc-symbolkit at 1.0.0 (0.56s)
Creating working copy for https://github.com/swiftlang/swift-docc-plugin
Working copy of https://github.com/swiftlang/swift-docc-plugin resolved at 1.4.3
Creating working copy for https://github.com/swiftlang/swift-docc-symbolkit
Working copy of https://github.com/swiftlang/swift-docc-symbolkit resolved at 1.0.0
Building for debugging...
[0/8] Write sources
[3/8] Write snippet-extract-tool-entitlement.plist
[4/8] Write swift-version--7754E27361AE5C74.txt
[6/53] Emitting module SymbolKit
[7/57] Compiling SymbolKit Relationship.swift
[8/57] Compiling SymbolKit RelationshipKind.swift
[9/57] Compiling SymbolKit SourceOrigin.swift
[10/57] Compiling SymbolKit GenericConstraints.swift
[11/57] Compiling SymbolKit Swift.swift
[12/57] Compiling SymbolKit Mixin+Equals.swift
[13/57] Compiling SymbolKit Mixin+Hash.swift
[14/57] Compiling SymbolKit Mixin.swift
[15/57] Compiling SymbolKit LineList.swift
[16/57] Compiling SymbolKit Position.swift
[17/57] Compiling SymbolKit Symbol.swift
[18/57] Compiling SymbolKit SymbolKind.swift
[19/57] Compiling SymbolKit SymbolGraph.swift
[20/57] Compiling SymbolKit GraphCollector.swift
[21/57] Compiling SymbolKit SourceRange.swift
[22/57] Compiling SymbolKit Metadata.swift
[23/57] Compiling SymbolKit Module.swift
[24/57] Compiling SymbolKit OperatingSystem.swift
[25/57] Compiling SymbolKit Platform.swift
[26/57] Compiling SymbolKit GenericConstraint.swift
[27/57] Compiling SymbolKit GenericParameter.swift
[28/57] Compiling SymbolKit Generics.swift
[29/57] Compiling SymbolKit Namespace.swift
[30/57] Compiling SymbolKit Identifier.swift
[31/57] Compiling SymbolKit KindIdentifier.swift
[32/57] Compiling SymbolKit Location.swift
[33/57] Compiling SymbolKit Mutability.swift
[34/57] Compiling SymbolKit Names.swift
[35/57] Compiling SymbolKit SPI.swift
[36/57] Compiling SymbolKit Snippet.swift
[37/57] Compiling SymbolKit Extension.swift
[38/57] Compiling SymbolKit DeclarationFragments.swift
[39/57] Compiling SymbolKit Fragment.swift
[40/57] Compiling SymbolKit FragmentKind.swift
[41/57] Compiling SymbolKit FunctionParameter.swift
[42/57] Compiling SymbolKit FunctionSignature.swift
[43/57] Compiling Snippets Snippet.swift
[44/57] Compiling Snippets SnippetParser.swift
[45/57] Emitting module Snippets
[46/57] Compiling SymbolKit SemanticVersion.swift
[47/57] Compiling SymbolKit AccessControl.swift
[48/57] Compiling SymbolKit Availability.swift
[49/57] Compiling SymbolKit AvailabilityItem.swift
[50/57] Compiling SymbolKit Domain.swift
[51/57] Compiling SymbolKit UnifiedSymbol+Encodable.swift
[52/57] Compiling SymbolKit UnifiedSymbol.swift
[53/57] Compiling SymbolKit UnifiedSymbolGraph+Encodable.swift
[54/57] Compiling SymbolKit UnifiedSymbolGraph.swift
[55/61] Compiling snippet_extract URL+Status.swift
[56/61] Compiling snippet_extract SymbolGraph+Snippet.swift
[57/61] Emitting module snippet_extract
[58/61] Compiling snippet_extract SnippetBuildCommand.swift
[58/61] Write Objects.LinkFileList
[59/61] Linking snippet-extract-tool
[60/61] Applying snippet-extract-tool
Build of product 'snippet-extract' complete! (3.76s)
Building for debugging...
[0/1] Write swift-version--7754E27361AE5C74.txt
[2/18] Compiling RealityUI RUITexture.swift
[3/18] Compiling RealityUI RealityUI.swift
[4/18] Compiling RealityUI RUIDragGestureRecognizer+Mouse.swift
[5/18] Compiling RealityUI RUIDragGestureRecognizer+Touch.swift
[6/18] Compiling RealityUI RUIDragGestureRecognizer.swift
[7/18] Compiling RealityUI RUISlider.swift
[8/18] Compiling RealityUI RUITapComponent.swift
[9/18] Compiling RealityUI RUIText.swift
[10/18] Compiling RealityUI RUIDragComponent.swift
[11/18] Compiling RealityUI RUIDragDelegate.swift
[12/18] Compiling RealityUI HasRUI.swift
[13/18] Compiling RealityUI RUIAnimations.swift
[14/18] Compiling RealityUI RUIButton.swift
[15/18] Compiling RealityUI RUIDragComponent+DragEvents.swift
[16/18] Emitting module RealityUI
[17/18] Compiling RealityUI RUIStepper.swift
[18/18] Compiling RealityUI RUISwitch.swift
[19/19] Compiling RealityUI SwiftUI+RUIGestures.swift
Build of target: 'RealityUI' complete! (1.72s)
802
8 /Users/admin/builder/spi-builder-workspace/.docs/maxxfrazer/realityui/main
✅ Doc result (uploading) reported
========================================
SyncDocs
========================================
Doc archive source directory: $PWD/.docs/maxxfrazer/realityui/main
File count: 802
Doc size: 8.0MB
Preparing doc bundle ...
Uploading prod-maxxfrazer-realityui-main-05db6e8f.zip to s3://spi-docs-inbox/prod-maxxfrazer-realityui-main-05db6e8f.zip
Copying... [11%]
Copying... [22%]
Copying... [31%]
Copying... [42%]
Copying... [51%]
Copying... [62%]
Copying... [70%]
Copying... [81%]
Copying... [90%]
Copying... [100%]
Done.