Episode 49
I For One Welcome Our Safety Overlords
October 5th, 2021
1 hr 13 mins 24 secs
Season 1
Tags
About this Episode
Welcome to Code Completion, Episode 49! We are a group of iOS developers and educators hoping to share what we love most about development, Apple technology, and completing your code!
Follow us @CodeCompletion on Twitter to hear about our upcoming livestreams, videos, and other content.
Today, we discuss:
- Code Completion Club: https://codecompletion.io/jointheclub
- Indie App Spotlight, with a new app for you to check out:
- SmartFilter by Jake Grant (@mmgreenmms): https://apps.apple.com/us/app/smartfilter-for-sms/id1271258894
- New Features in Swift 5.5
- What’s new in Swift: https://www.whatsnewinswift.com/?from=5.4&to=5.5
- Swift 5.5 Release: https://swift.org/blog/swift-5-5-released/
- Updated From WWDC21: https://www.wwdcnotes.com/notes/wwdc21/10192/
- SE-0319 - Read only properties can now throw: https://github.com/apple/swift-evolution/blob/main/proposals/0310-effectful-readonly-properties.md
- SE-0308 - #if within postfix member expressions: https://github.com/apple/swift-evolution/blob/main/proposals/0308-postfix-if-config-expressions.md
- SE-0307 - Automatic Bridging between CGFloat and Double: https://github.com/apple/swift-evolution/blob/main/proposals/0307-allow-interchangeable-use-of-double-cgfloat-types.md
- SE-0295 - Codable synthesis for enums with associated values: https://github.com/apple/swift-evolution/blob/main/proposals/0295-codable-synthesis-for-enums-with-associated-values.md
- Faster JSON serialization
- Lazy in local contexts
- SE-0293 - Property wrappers on function parameters: https://github.com/apple/swift-evolution/blob/main/proposals/0293-extend-property-wrappers-to-function-and-closure-parameters.md
- SE-0299 - Static members on protocols: https://github.com/apple/swift-evolution/blob/main/proposals/0299-extend-generic-static-member-lookup.md
- SE-0291 - Package Collections: https://github.com/apple/swift-evolution/blob/main/proposals/0291-package-collections.md
- Async/Await:
- SE-0298 - Async Sequences: https://github.com/apple/swift-evolution/blob/main/proposals/0298-asyncsequence.md
- How to think about for-await loops: https://twitter.com/Catfish_Man/status/1442919592431538178
- SE-0304 - Structured concurrency: https://github.com/apple/swift-evolution/blob/main/proposals/0304-structured-concurrency.md
- WWDC21 - Explore structured concurrency in Swift: https://developer.apple.com/videos/play/wwdc2021/10134/
- WWDC21 - Swift concurrency: Behind the scenes: https://developer.apple.com/videos/play/wwdc2021/10254/
- SE-0306 - Actors: https://github.com/apple/swift-evolution/blob/main/proposals/0306-actors.md
- SE-0316 - Global Actors: https://github.com/apple/swift-evolution/blob/main/proposals/0316-global-actors.md
- SE-0302 - Sendable: https://github.com/apple/swift-evolution/blob/main/proposals/0302-concurrent-value-and-concurrent-closures.md
- Discussion on Swift Evolution Proposals and the Future of Swift
- Declarative String Processing: https://forums.swift.org/t/declarative-string-processing-overview/52459
Also, join us for #CompleteTheCode and Compiler Error, two segments that test both your knowledge and our knowledge on Swift, Apple, and all things development!
Your hosts for this week:
Be sure to also sign up to our monthly newsletter, where we will recap the topics we discussed, reveal the answers to #CompleteTheCode, and share even more things we learned in between episodes.
You are what makes this show possible, so please be sure to share this with your friends and family who are also interested in any part of the app development process.
Sponsor
This week's episode of Code Completion is brought to you by Super Easy Timer. Search for Super Easy Timer on the Mac App Store to give it a try. https://apps.apple.com/app/apple-store/id1525104124?mt=12
Complete the Code
How can you use UIViewController's updateViewConstraints() to quickly swap between very different view layouts?
// How can you use UIViewController's updateViewConstraints() to quickly swap between very different view layouts?
override func updateViewConstraints() {
// What goes in here?
super.updateViewConstraints()
}
Be sure to tweet us with hashtag #CompleteTheCode if you know the answer!