Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: enable async/await on older OS's #278

Merged
merged 37 commits into from Dec 8, 2021
Merged

feat: enable async/await on older OS's #278

merged 37 commits into from Dec 8, 2021

Conversation

cbaker6
Copy link
Contributor

@cbaker6 cbaker6 commented Nov 9, 2021

New Pull Request Checklist

Issue Description

Xcode 13.2 backports async/await for older OS's (iOS13, tvOS13, watchOS6, and macOS10_15). See more here

Requires Xcode 13.2 or above to use async/await. Not compatible with Xcode 13.0/1. Still works with Xcode 11/12. Developers who want to use this should point to this branch as it won't be merged until Xcode 13.2 is officially released.

Related issue: #n/a

Approach

Remove OS requirement on async/await methods.

TODOs before merging

  • Remove OS restrictions
  • Make all async/await methods @MainActor's
  • Add multi-core building for improved build times. More info here
  • Add ParseRelation static methods and tests
  • Improve documentation for async/await and Combine methods

@parse-github-assistant
Copy link

parse-github-assistant bot commented Nov 9, 2021

Thanks for opening this pull request!

  • 🎉 We are excited about your hands-on contribution!

@cbaker6 cbaker6 changed the title fix: enable async/await on older OS's feat: enable async/await on older OS's Nov 9, 2021
@codecov
Copy link

codecov bot commented Nov 19, 2021

Codecov Report

Merging #278 (26445a7) into main (ae6de04) will increase coverage by 0.15%.
The diff coverage is 72.04%.

Impacted file tree graph

@@            Coverage Diff             @@
##             main     #278      +/-   ##
==========================================
+ Coverage   82.80%   82.96%   +0.15%     
==========================================
  Files         104      104              
  Lines       10622    10582      -40     
==========================================
- Hits         8796     8779      -17     
+ Misses       1826     1803      -23     
Impacted Files Coverage Δ
...cation/3rd Party/ParseApple/ParseApple+async.swift 100.00% <ø> (ø)
.../3rd Party/ParseFacebook/ParseFacebook+async.swift 100.00% <ø> (ø)
...tication/3rd Party/ParseLDAP/ParseLDAP+async.swift 100.00% <ø> (ø)
...on/3rd Party/ParseTwitter/ParseTwitter+async.swift 100.00% <ø> (ø)
...tication/3rd Party/ParseTwitter/ParseTwitter.swift 100.00% <ø> (ø)
...Authentication/Internal/ParseAnonymous+async.swift 100.00% <ø> (ø)
...tication/Protocols/ParseAuthentication+async.swift 85.71% <ø> (ø)
Sources/ParseSwift/Extensions/URLSession.swift 72.46% <0.00%> (ø)
...es/ParseSwift/LiveQuery/ParseLiveQuery+async.swift 72.72% <ø> (ø)
...s/ParseSwift/Objects/ParseInstallation+async.swift 100.00% <ø> (ø)
... and 30 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update ae6de04...26445a7. Read the comment docs.

@cbaker6 cbaker6 merged commit ccbbb33 into main Dec 8, 2021
@cbaker6 cbaker6 deleted the concurrency branch December 8, 2021 21:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant