Apple is still coming out with updates to their API as Xcode approaches the final release of 8.0. As we begin developing Tagmento, here are the latest list of changes we noticed with Beta 6:
Any replaces AnyObject
Dictionaries returned by the API or instantiated as literals are no longer assumed to have AnyObject values but Any values. This would be places like:
func application (_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool
func application (_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey : Any]? = nil) -> Bool
This includes literals such as [String:AnyObject] is now [String:Any]. Also senders in various UIViewController methods are now Any? no longer AnyObject?. This includes:
public override func prepare(for segue: UIStoryboardSegue, sender: AnyObject?)
public override func prepare(for segue: UIStoryboardSegue, sender: Any?)
Must Specify Escaping Closures
Closure parameters are no longer assumed to be escaping; that is they escape the calling function. Therefore closures need to be specified as escaping using the @escaping annotation.
type of operator
The dynamicType property has been changed to the type(of: _) operator.
Process.arguments becomes CommandLine.arguments
To get the arguments passed to an application for both iOS and macOS, use CommandLine.arguments rather than Process.arguements.
We are getting down to the line when it comes to the release of Xcode 8.
If you are looking for help updating your application, contact us and let us know how we can help.
If you are interested in time management and willing to test Tagmento on iOS10, you can submit your email address at Tagmento.