Sponsored Link
Receive Detailed Feedback and Debug your iOS App Faster
What will you do with all your extra free time? Instabug lets your users simply shake to send detailed bug reports loaded with everything you need to track and reproduce issues faster. It's lightweight, easy to integrate, fast, and if you start your 14 day free trial from instabug.com/iosdevweekly then it comes with a free Instabug t-shirt too!
News
CocoaPods 1.8 Beta is here
What I wrote in my comment above doesn't mean CocoaPods is dead. Far from it! Even if the adoption of SPM exceeds Apple's wildest dreams, which will be hard when SPM is still missing some critical features, CocoaPods will be around for many, many years. So let's see what's new with this announcement post from Dimitris Koutsogiorgas.
Tools
Injecting and changing code on the fly with LLDB
Ready to move on from print("here")
and print("here2")
? Bruno Rocha goes into some advanced techniques for LLDB using Chisel, amongst other things. Honestly? I don't know why you need more than print("here3")
... π¬
Xcode Shortcuts Cheat Sheet
Yes, these keyboard shortcuts are all listed in the Xcode menus, but seeing them listed out like this with video demonstrations was a nice reminder of some of the more subtle ways to make development faster. Thanks to Shad Rayhan Mazumder for putting this together.
Code
Getting Started With NSPersistentCloudKitContainer
iCloud Core Data sync is back in this year's platform releases. We've been here before, but maybe this time it'll be different! If you're ready to give it another try, here comes Andrew Bancroft with this guide on how to get things up and running.
SwiftUIX
Is SwiftUI missing anything important? Why yes, of course it is! Luckily, we have Vatsal Manot filling in some of the gaps with some useful extensions. I've no doubt some of these will eventually make it into the official API, but equally I'm sure Vatsal will continue to add more utility here as well!
Combine Latest Collection
This is a great article from Daniel Tull on combining an unlimited number of publishers together rather than using something like CombineLatest3 or CombineLatest4. Not only is his new publisher potentially useful, but it's a great way to learn about how to build your own custom publisher for Combine. π
Building a custom operator in Combine
Next up is Marin Todorov with a post on custom operators on his brand new, Combine focused blog! I'm looking forward to reading plenty more content here in the future.
Combine vs. RxSwift: Should you switch to Combine?
So much Combine content this week! We'll finish with Stefan Kofler taking a balanced look comparing RxSwift to Combine. He also did some very interesting performance testing between the two frameworks.
Design
Dark Theme Design
Nick Babich with a great guide on a whole load of things you need to be thinking about before shipping dark mode support for your app.
Jobs
iOS Developer Trainee Program @ The App Academy β Boost Your Career In Mobile Tech. Apply For The iOS Developer Trainee Program At The App Academy Now! β Amsterdam, NL
iOS Swift Engineer @ Redzone Production Systems β Looking for a development role where you can have an impact and play a key role in a social/mobile enterprise application? We are looking for a proven iOS/tvOS Swift developer to work alongside our Scala, iOS/tvOS, and DevOps engineers as part of a highly collaborative team. β Remote, or Miami FL, Orlando FL, Birmingham UK
And finally...
Spicing up Swift πΆ
It's got a label up top and then you configure it later ... oh, that's really bad ... in the back of my throat ... no, the code, not the pepper! π₯
Comment
I've been working on something new for the last few weeks, and it's time to share it. It's called the SwiftPM Library and it's a place to find libraries that support the Swift Package Manager. π¦
I wrote up plenty of detail about what it is, and why I built it in this blog post. This paragraph pretty much sums it up though:
Go experiment with it, then add any packages that are missing, and if there's anything you'd like to see there's a feature requests Trello board where we can talk about them.
Dave Verwer