AppCode 2018.3 is here!

Posted on by

Please welcome the release of AppCode 2018.3!

Read on to learn about Swift 4.2 support, new Generate actions, Navigate to Type Declaration, and lots of formatting improvements for Swift, iOS extensions support in the debugger, better resolve in multi-target projects, and much more!



Download AppCode 2018.3

Swift

AppCode 2018.3 supports all the Swift 4.2 features affecting the IDE functionality:

SE-0192 (Handling Future Enum Cases)

SE-0193 (Cross-module inlining and specialization)

SE-0194 (Derived Collection of Enum Cases)

SE-0195 (User-defined “Dynamic Member Lookup” Types)

SE-0196 (Compiler Diagnostic Directives)

SE-0212 (Compiler Version Directive)

To track our progress with Swift 5.0, star this issue.

Generate

Generate initializers, hashValue and the equality operator, description and debugDescription properties in no time using the new Generate actions ( ⌘N ):



Navigate to Type Declaration

Jump directly to the type declaration in Swift using ⇧⌘B :



Exit point highlighting

Find all the exit points in your code easily by placing the caret on a break , continue , try , throw , or return keyword:



Formatting

Get multiline strings indented correctly when writing your code and re-formatting:



Reformat code easily with dedicated indentation settings for preprocessor directives and their children:



Set alignment settings for ternary operator expressions in Preferences | Editor | Code Style | Swift | Wrapping and Braces | Ternary conditional operation , and get continued operator expressions re-indented automatically.

Swift Package Manager support in CLion

Develop your server-side projects using the Swift plugin for CLion, which now supports Swift Package Manager projects directly on macOS and Linux:

Objective-C/C/C++

Multiple targets

Highlighting and completion now work correctly for classes with the same name from different targets. Note that there is an issue when navigation does not work correctly for such classes and we are still working on it.

Change Signature

Refactoring is easier with the Change Signature correctly handling the default argument values in method/function declarations:



Quick Documentation

Macro replacements are now properly formatted and highlighted in the Quick Documentation ( F1 ):



Multiline TODO

Add an indent starting from the second line of your multiline TODO comment to differentiate it from ordinary comments, and display the complete TODO text via ⌘6 :



Mixed code

The Rename refactoring now works correctly for Objective-C declarations aliased with swift_name attribute and for various cases with Swift and Objective-C enums.

Performance

Thanks to performance fixes in unit-testing support, there should be no more freezes when you open top-level menus (such as the Run Configurations popup with test configurations), run a heap of unit-tests, or navigate to the test code.

Run & Debug

iOS extensions

AppCode debugger now supports iOS extensions in the same way Xcode does:



LLDB console for Swift

Completion works now in LLDB console for Swift:



Features Trainer plugin



AppCode has tons of useful actions and shortcuts, and it takes time to become familiar with all of them. To help you learn the most important ones, we’ve created a set of lessons for the IDE Features Trainer plugin, which is now available for download in Preferences | Plugins | Marketplace | Featured .

IDE

Search Everywhere

The updated Search Everywhere ( Double⇧ ) now includes multiple actions under the one tool window:

Search Everywhere

Go to Class / File / Symbol

Find Action

Each one has its own separate tab in the dialog, and you can use ⇥ to switch between them.

Run Anything

Run Anything ( Double⌃ ) is a new universal way to run and debug any configuration in your project, and it can even be used to open a project:



To run a configuration, just start typing its name. To debug, hold down the ⇧ key to switch to Debug mode. To open a project, type open and select the desired project from the list.

Activity Monitor

This new experimental feature shows how much CPU the subsystems and plugins (both built-in and additionally installed ones) are consuming. To access it, go to Help | Activity Monitor . If you see a subsystem whose %CPU is unusually high, feel free to ask our support team about it or report it to our tracker.

New Plugins UI

The plugins settings under Preferences | Plugins have been redesigned from the ground up. The new UI makes it much easier to control the plugins installed and keep them up-to-date.

Featured plugins and marketplace

You can see a list of the most valuable plugins for AppCode located in the Featured plugins list. Or, sort all the plugins by rating or number of downloads. If you are a plugin writer, check out our new platform for third-party plugin vendors.

Version Control

Git submodules

AppCode now supports Git repositories with submodules: repository with submodules is cloned recursively; Diff, History, and conflict resolution now work for submodule folders; and updating the project correctly updates the submodules.

Github Pull Requests

View all the pull requests from your GitHub repository right inside the IDE, thanks to the brand new GitHub Pull Requests tool window ( VCS | Git | View Pull Requests ).

Accessibility



To make our tools accessible to as many people as possible, we’ve added a few new options to the Appearance section in the IDE’s settings ( Preferences | Appearance & Behavior | Appearance ). Here, you’ll find a new High-contrast IDE theme, expanded support for screen readers (they can now read line numbers, VCS annotations, and gutter icons tooltips), and an option to adjust IDE colors for people with color deficiencies.

That’s it! Explore all the new features in detail on our website and start your 30-day free evaluation to try them!

Your AppCode Team

JetBrains

The Drive to Develop