needle icon indicating copy to clipboard operation
needle copied to clipboard

Add support for Swift Concurrency

Open garricn opened this issue 1 year ago • 6 comments

  • Modify Generator, NeedleFoundation, and all Samples to support Swift Concurrency
  • Set SWIFT_STRICT_CONCURRENCY to Complete to all Samples
  • Remove actor isolated code from non-isolated deinits in Samples
  • Run make install to install new needle executable in bin

Hoping to merge https://github.com/uber/needle/pull/471 and https://github.com/uber/needle/pull/473 first.

garricn avatar Feb 21 '24 00:02 garricn

Hello @rudro! 👋 May you please take time to review and approve this PR? Having these concurrency changes in is crucial for strict concurrency checking and Swift 6 adoption. Thank you!!

tinder-cfuller avatar Mar 08 '24 17:03 tinder-cfuller

@rudro Now that Swift 5.10 is released, this is becoming more and more critical. What can we do to get this reviewed and merged in? Please advise. Thank you!

tinder-cfuller avatar Mar 27 '24 17:03 tinder-cfuller

@rudro May you please advise next steps on this PR? May it be merged in? Thank you! 🙏

tinder-cfuller avatar Apr 18 '24 15:04 tinder-cfuller

@rudro If you may please reply indicating whether this PR will be accepted, or not, this information will be very helpful for planning Swift Concurrency adoption as it relates to Needle. Please advise. Thank you!

tinder-cfuller avatar May 15 '24 05:05 tinder-cfuller

@tinder-cfuller as a temporary step you can point your Podfile or SPM to your forked repo to unblock yourself

I'll chat with Rudro about reviewing this PR, it will need to be carefully looked at and tested — we're not planning on using complete (aka 'strict') concurrency checking internally with needle generated code at this moment.

alanzeino avatar Aug 20 '24 23:08 alanzeino

@tinder-cfuller as a temporary step you can point your Podfile or SPM to your forked repo to unblock yourself

I'll chat with Rudro about reviewing this PR, it will need to be carefully looked at and tested — we're not planning on using complete (aka 'strict') concurrency checking internally with needle generated code at this moment.

Hi @alanzeino 👋

Thank you so much for taking a look into this. Very much appreciated. Adding this support to the Uber repo benefits other projects within the community that should not really be depending on my fork.

The @preconcurrency attributes were added intentionally for compatibility with codebases not using complete (aka 'strict') concurrency checking 👍

Please also take note of the two additional PRs in the PR description above as they are related.

Thank you!

tinder-cfuller avatar Aug 21 '24 00:08 tinder-cfuller