What's new in AppCode 2018.2
In this release: more new refactorings, better autocompletion, support for databases from DataGrip, and even support for Touch Bar. In more detail - under the cut.

Following the extraction of methods, we learned how to extract closures. There was no separate shortcut key, but refactoring can be easily called via

closure signature, as always, is easy to change:

Removed the dialogues for local renaming:

Many finalized in the cross-language part. Now you can normally rename the block arguments in Objective-C, the names of the classes exported from Objective-C to Swift using the attribute
We continue to close the “elementary” cases of types of autocompletion. This time added an automatic insert '?' for optional types:

And at the same time we add a little less elementary, like autocompletion for attributes in Swift:

Plus, our bread crumbs - that the birds will not eat them. Therefore, Hansel and Gretel will find their way home without any problems:

In Objective-C, categories are easily distinguished by name. But in Swift there are no names for extensions. Therefore, we added to the Structure View the display of comments from the extension code in Swift:

Fixed the generation of overloads / implementations for fields with the same name from the base classes and protocols, mutable properties and optional parts of the protocols not yet implemented in the base class:

In AppCode 2017.3, actions appeared to add / remove explicitly specified types of variables, and in AppCode 2018.2 we implemented the same for loops:

Solved the problem with the output for Python scripts (such as Chisel ):

The platform rolled out a small but very convenient feature - a bundle of actions for manipulating breakpoints through

In this release, we decided, it seems, the last really big problem with the display of assembly messages - we started processing the output of the Run Script phase normally:

In AppCode 2018.2, we have included the full DataGrip functionality for working with the database. Here, by the way, is an example for SQLite:
With all the features available on our website .
Now it works in AppCode:

As always, many improvements have been added to the IntelliJ platform, and all of them are now available in the AppCode.
The most visible of the changes is the icons that were completely reworked in the same style: You

can read about the process of changing icons here .
That's all. As always, download - here , bugs - to the tracker , ask general questions right here.

Swift
Removing closures
Following the extraction of methods, we learned how to extract closures. There was no separate shortcut key, but refactoring can be easily called via
⌃T
+ 5
: The 
closure signature, as always, is easy to change:

Rename
Removed the dialogues for local renaming:

Many finalized in the cross-language part. Now you can normally rename the block arguments in Objective-C, the names of the classes exported from Objective-C to Swift using the attribute
@objc
, and the enumeration elements in Swift.Autocompletion
We continue to close the “elementary” cases of types of autocompletion. This time added an automatic insert '?' for optional types:

And at the same time we add a little less elementary, like autocompletion for attributes in Swift:

Hansel and Gretel saved
Plus, our bread crumbs - that the birds will not eat them. Therefore, Hansel and Gretel will find their way home without any problems:

Comments for extensions
In Objective-C, categories are easily distinguished by name. But in Swift there are no names for extensions. Therefore, we added to the Structure View the display of comments from the extension code in Swift:

Override / Implement
Fixed the generation of overloads / implementations for fields with the same name from the base classes and protocols, mutable properties and optional parts of the protocols not yet implemented in the base class:

Intentions
In AppCode 2017.3, actions appeared to add / remove explicitly specified types of variables, and in AppCode 2018.2 we implemented the same for loops:

Debugging
Solved the problem with the output for Python scripts (such as Chisel ):

The platform rolled out a small but very convenient feature - a bundle of actions for manipulating breakpoints through
⌥⏎
:
Build messages
In this release, we decided, it seems, the last really big problem with the display of assembly messages - we started processing the output of the Run Script phase normally:

Database support
In AppCode 2018.2, we have included the full DataGrip functionality for working with the database. Here, by the way, is an example for SQLite:
With all the features available on our website .
Touch bar
Now it works in AppCode:

Version control
As always, many improvements have been added to the IntelliJ platform, and all of them are now available in the AppCode.
User interface
The most visible of the changes is the icons that were completely reworked in the same style: You

can read about the process of changing icons here .
That's all. As always, download - here , bugs - to the tracker , ask general questions right here.