Неотправляемый тип «Realm», возвращаемый неявным асинхронным вызовом неизолированной функции, не может пересекать границу субъекта; это ошибка в языковом режиме Swift 6.
воспроизводимый фрагмент:
Код: Выделить всё
@preconcurrency import RealmSwift
import Foundation
@StorageActor
protocol StorageProtocol: Sendable {
var realm: Realm? { get }
}
final class Storage: StorageProtocol, @unchecked Sendable {
@StorageActor public var realm: Realm?
@StorageActor
public init(_ name: String) async throws {
var config = Realm.Configuration.defaultConfiguration
guard var fileURL = config.fileURL else { throw StorageError.initialize }
fileURL.deleteLastPathComponent()
fileURL.appendPathComponent(name)
fileURL.appendPathExtension("realm")
config.fileURL = fileURL
print(config.fileURL?.absoluteString ?? "")
realm = try await Realm(configuration: config, actor: StorageActor.shared)
}
}
@globalActor actor StorageActor: GlobalActor {
static public var shared = StorageActor()
}

Есть идеи, как можно решить проблему это?
Подробнее здесь: https://stackoverflow.com/questions/793 ... le-warning