Swift 6.2 Tip! All SwiftUI Views are now implicitly @MainActor isolated.
Got a warning using a View property inside a @Sendable closure? That's because it might run on a background thread.
The fix: Explicitly capture a copy of the property
Swift 6.2 Tip! All SwiftUI Views are now implicitly @MainActor isolated.
Got a warning using a View property inside a @Sendable closure? That's because it might run on a background thread.
The fix: Explicitly capture a copy of the property
@noboilerplate THIS!
I think a lot of people inadvertently assume async #RustLang is so different from sync Rust, because the way it is - when in fact it's because of the (most popular) async runtime they're using.
We should look way more into alternative #async runtimes to #Tokio, e.g. smol:
https://floss.social/@janriemer/111669258656959538
#Smol allows you to use non-'static Futures by using a local executor:
https://floss.social/@janriemer/111669668856899636
It looks a lot more like "normal" #Rust.
Paging #Swift #Concurrency experts! Is there any way to leverage KVO to synchronously update a property in one class in response to a change in another?
Note that both `MyClass` and `AVPlayer` are `@MainActor`, so I think this should be a safe thing to want to do... I just don't know how to do it!
cc @mattiem
EDIT: is this a good use case for `MainActor.assumeIsolated`?
Weekly log about my work on the #EmberInitiative a story of concurrency in tests:
This Swift 6 code crashes in _dispatch_assert_queue_fail(), even if the installTap() closure is empty. If I remove the MainActor annotation on the class, it works. Anybody else seen and/or worked around this?
The #Interaction and #Concurrency Experience #workshop (ICE ) 2025 Call for paper is out! #CFP
https://ice-workshop.github.io/cfp.txt
ICE will be co-located with @DisCoTecConf and take place in #Lille , #France
on June 16th (https://www.discotec.org/2025/satellite/ice).
This workshop is very dear to me: instead of the usual "submission ⇉ (rebuttal ⇉) review" flow, it uses a very original selection procedure (https://www.discotec.org/2025/satellite/ice#the-ice-selection-procedure), where PC members and authors discuss and collaborate for the greater good ⇆.
This year again we have an amazing program committee (https://www.discotec.org/2025/satellite/ice#programme-committee), an amazing invited speaker (Kirstin Peters, from Augsburg University) and welcome submissions until April 9th, 2025 .
Interesting, just found this page explaining vocabulary in use for Swift Concurrency
#Swift #Concurrency #iosdev
https://www.massicotte.org/concurrency-glossary
Has something changed in concurrency warnings between Xcode 16.1 and Xcode 16.2 beta 3? Here is an example of a warning that I get in 16.1 but not 16.2b3. (I think not getting it is correct?) I can’t find any release notes or such about this.
(I put such explicit captures there because 16.2b3 was warning about implicit captures.)
If your #iOS #developer team is struggling to move to #Swift 6/Xcode 16 due to #Apple’s new Swift #Concurrency changes, I highly recommend contacting @mattiem (or even reading his blog posts). He did a workshop for @foreflight that was incredibly valuable in learning about the new Swift 6 Concurrency changes.
I can't say enough positive things about his workshop and the content he prepared & presented. Consensus was that it was far more valuable and practical than any of the #WWDC sessions.
Designing A Fast Concurrent Hash Table, https://ibraheem.ca/posts/designing-papaya/.
The author presents a novel Rust library called papaya, that is a (really) fast concurrent hash table. The article explains the inspirations, the differences with other libraries, the new techniques etc. A really instructive article.
2/5 "Concurrency in Spring Boot Applications: Making the Right Choice by Andrei Shakirin" ⸱ +2k views ⸱ 09 Oct 2024 ⸱ 00h 34m 05s
https://youtube.com/watch?v=vhHDlSV_0zg #java #springboot #concurrency
Is there any sane way to make this warning go away, other than using the older callback-based method of this API?
Here is August 2024
And I still sadly find myself writing new code in Combine
Because modern async stream does not support multicast
Another day, another #Swift #Concurrency question. How would I fix this? #UIKit #SwiftUI
Any idea how to fix this warning? #SwiftUI #UIKit #Swift #Concurrency
I’m toying around with SwiftData a bit. One thing I don’t understand: when I try do offload work into background, why does it end up back on the main thread here?
I call this with Task {} from UI.
Shouldn’t ModelActor make sure it ends up on some background thread? What am I missing?
My worry with the “Swift 5 is not going anywhere” argument is that many upcoming features will be soon available on Swift 6 exclusively and most developers will be forced to immaturely upgrade just to have access to them. I just found out that Typed Throws is only available on 6 for some reason and I am both frustrated and pissed!