Migueldeicaza,
@Migueldeicaza@mastodon.social avatar

Update on SwiftGodot and strict concurrency.

The easy stuff is gone, but the remaining stuff is hard. I could brute force my way to the end, but goal is not to just have it build, I want to make sure that my users can rely on the guarantees and be able to benefit from this additional level of safety.

So the next step will take some time to complete, as many of these will require some research into some Godot features.

v1sea,
@v1sea@mastodon.social avatar

@Migueldeicaza It is open source right? I've been meaning to learn more about Godot for cross platform XR development.

Migueldeicaza,
@Migueldeicaza@mastodon.social avatar

@v1sea yes. GitHub.com/migueldeicaza/SwiftGodot

airspeedswift,
@airspeedswift@mastodon.social avatar

@Migueldeicaza If you haven't tried it, it may be worth grabbing a toolchain from swift.org for the 6.0 release. There are additional features of the upcoming compiler that e.g. let non-Sendable types be transferred between isolation domains if they can be seen to be the last use on the outgoing side.

Migueldeicaza,
@Migueldeicaza@mastodon.social avatar

@airspeedswift thanks for the recommendation!

Migueldeicaza,
@Migueldeicaza@mastodon.social avatar

@airspeedswift oh nice! One issue I am running into are C data type pointers - will post details tonight

lukasa,
@lukasa@hachyderm.io avatar

@Migueldeicaza @airspeedswift For C pointers I strongly recommend wrapping them in types that both a) automatically manage their lifetime, and b) enforce their threading requirements. Sadly that often requires research into what those are, but a low-level wrapper type is super valuable here. Often classes, rarely noncopyable structs. Swift Crypto does this a lot if you need examples.

Migueldeicaza,
@Migueldeicaza@mastodon.social avatar

@lukasa @airspeedswift I think they are typedefs for function pointers. I feel wrapping is a crime, but will check tonight the specifics (I am away from my computer until then)

Thanks for the pointer to Swift Crypto as a reference

Migueldeicaza,
@Migueldeicaza@mastodon.social avatar

@airspeedswift Ok, I downloaded it, and it fails with internal errors, where should I report these?

airspeedswift,
@airspeedswift@mastodon.social avatar

@Migueldeicaza I'm sorry, these look like they're coming from the embedded driver inside XCBuild falling back to using the out of process driver. They're harmless, but pretty annoying given the whole point of this is to get warnings to burn down.

Setting SWIFT_USE_INTEGRATED_DRIVER to NO in the xcode build settings should supress them.

A feedback for this would be great (it's a bug in Xcode, not the Swift toolchain, so not a GitHub Issue)

  • All
  • Subscribed
  • Moderated
  • Favorites
  • random
  • ethstaker
  • DreamBathrooms
  • mdbf
  • InstantRegret
  • ngwrru68w68
  • magazineikmin
  • everett
  • thenastyranch
  • Youngstown
  • slotface
  • cisconetworking
  • kavyap
  • osvaldo12
  • modclub
  • megavids
  • GTA5RPClips
  • khanakhh
  • tacticalgear
  • Durango
  • rosin
  • normalnudes
  • Leos
  • provamag3
  • tester
  • cubers
  • anitta
  • JUstTest
  • lostlight
  • All magazines