JTAppleCalendar
JTAppleCalendar copied to clipboard
View dependend protocols should be marked with @MainActor
(Required) Version Number: 8.0.5
Description
I've got a ViewController that conforms to the JTACMonthViewDelegate
protocol. With strict concurrency warnings turned on, the compiler complains that "Main-actor isolated instance method cannot be used to satisfy nonisolated protocol requirement` since the ViewController is obviously marked @MainActor. I think all the view dependent delegate protocols (and probably also the data source protocols) should be marked @MainActor, since they are probably called from the main actor anyways. This is also how UICollectionViewDelegate and DataSources are marked.
Steps To Reproduce
Conform a ViewController to a delegate like JTACMonthViewDelegate
with swift strict concurrency warnings set to complete
.
Expected Behavior
The compiler shouldn't complain about nonisolated protocol requirements.
hmmm...
if i put mainactor
into this library, i think this will raise the minimum OS requirement?
if yes, then is there another way around this? I am unfamiliar with mainactor
Hmh, might work if we gate this with #if swift(<5.4)
or something like that. I can try this out and submit a PR if you want to.