AppCode 2016.1.3 EAP opens: Swift 2.2 support and improvements in mixed code resolve

Hi everyone,

Today we are excited to announce the launch of AppCode 2016.1.3 EAP and the first build is already available on our confluence page. Please note that a patch from the release version will not be available until AppCode 2016.1.3 gets stable. This EAP requires an active AppCode subscription or is available for 30 day evaluation.


We worked hard to implement all the changes in Swift 2.2 and now we are ready to show all of them. This build delivers parsing, highlighting and completion for the following language constructs:

  • associatedtype keyword.
  • #file, #line, #column and #function debug identifiers:
    Debug identifiers
  • new typesafe #selector directive:
    Typesafe selector
  • Swift version build configuration option:
    Build version check
  • keywords used as argument labels:
    Keywords as argument labels
  • function naming with argument labels.

Besides, we’ve also fixed parser errors that would appear when using quotes inside Swift string interpolation.

Mixed code

This build delivers initial implementation of cross-language resolve for classes defined in frameworks. It means that now classes from Swift frameworks added as a dependency to an Objective-C project (for example, using CocoaPods) should be correctly resolved from Objective-C code. The same applies to classes from the Objective-C framework used in Swift code (OC-12322). Together these changes significantly improve mixed code editing, by bringing more correct navigation and Rename refactoring for Swift classes used from Objective-C code, better completion and more accurate results for symbol usages search.

Performance improvements

A couple of performance improvements are available in this build:

  • Fix for OC-13046 should improve the general responsiveness of the editor window as well as result in less CPU usage for AppCode.
  • Partial fix for OC-11712 should increase the speed of the Navigate to Symbol (⌥⌘O) action when using it in mixed code and especially pure Swift projects. For the moment we are leaving this ticket open to implement the complete fix in the future.

Other fixes and improvements

Your feedback is especially important for us at this stage, so download 2016.1.3 EAP, try it and in case you find any issue at all – report it to our tracker!

Your AppCode team
The Drive to Develop

Posted in Announcement | Tagged , | 19 Comments

AppCode 2016.1.2 bug-fix update

Hi everyone,

AppCode 2016.1.2 update is available for download. If using AppCode 2016.1.x or 2016.1.2 RC, you will get an automatic notification in the IDE.

In addition to changes described in the blog post about AppCode 2016.1.2 RC, this update contains important fixes for two security issues inside IntelliJ Platform. The vulnerabilities, in various forms, are also present in older versions of the AppCode; therefore, patches for those are also available.

Find more information about the issues, the affected versions and ways to update in this special blog post.

It is strongly recommended for all users to install the update as soon as possible.

The minimum AppCode release version for which update will be released is AppCode 2.1. Please find below the information about updates and patches availability:

Release version Version with security fixes Patch availability
2.0 or 2.0.x update,
2.1 or 2.1.x update
2.1.3 For 2.1.2
2.5 or 2.5.x update 2.5.6 For 2.5.5
3.0 or 3.0.x update 3.0.7 For 3.0.6
3.1 or 3.1.x update 3.1.8 For 3.1.7
3.2 3.2.1 For 3.2
3.3 or 3.3.x 3.3.4 For 3.3.3
2016.1, 2016.1.x
or 2016.1.2 RC
2016.1.2 For 2016.1.1

In case you need to download the full build with all the necessary security fixes, you can either use link from the Version with security fixes column in the table above or download specific build from the page with previous AppCode releases.

Your AppCode team
The Drive to Develop

Posted in Announcement | Tagged , | 4 Comments

AppCode 2016.1.2 RC

Hi everyone,

Our team continues polishing AppCode 2016.1 release, and today we are glad to announce the availability of AppCode 2016.1.2 RC build.

Issues addressed in this build are:

  • ANSI colors are now supported in Run/Debug console output (OC-12454).
  • Pre-built caches for standard Swift frameworks for Xcode 7.3.1 GM are bundled into this build (thus you could expect “Processing Swift modules” phase to pass significantly quicker for this Xcode version).

Check the full release notes by the link.

As usual, you can download AppCode 2016.1.2 RC from our confluence page, or get it via a patch-update from the previous 2016.1.1 version. Note, that this RC build requires an active AppCode license or is available for 30 day evaluation.

As you can see, it’s not a release yet, and your feedback is more than welcome! Please, submit any issue at all to our tracker.

Your AppCode team
The Drive to Develop

Posted in Announcement | Tagged , , | 5 Comments

AppCode 2016.2 roadmap & thanks to our EAP users

Hi everyone,

Two weeks ago we published AppCode 2016.1 and now it’s time to reveal our plans for the next release.

Special thanks

We’d like to thank everyone who evaluated AppCode during the Early Access Program and shared their feedback and suggestions in our Twitter, blog and support channel, and especially to those who submitted issues or feature requests to our tracker. Several evaluators deserve special gifts for their contributions: free 1-year subscriptions. So here they are:

  • Mark Anders (YouTrack: markand)
  • Ian Bytchek (YouTrack: ianbytchek)
  • Benjamin Winterberg (YouTrack: Benjamin.Winterberg)
  • Jon Akhtar (YouTrack: sylvanaar)

A personal message will be sent to each one with the details on how to obtain the license. (If you see your name above and you don’t get an email from us within a week, ping us here in the comments.)


The main directions of development will remain the same as for AppCode 2016.1, with a few additions:

  • Swift
    • Syntax inspections (OC-13024)
    • Swift 2.2 support in parser (OC-13365 and subtasks)
    • New refactorings for Swift (Inline variable (OC-11356) and Introduce variable (OC-11591) first)
    • Related editor performance issues
  • Mixed Objective-C and Swift code:
    • Resolve issues
    • Improvements for Rename refactoring and Find Usages
  • Objective-C: fixes for generics

The current plan is to deliver Swift 2.2 and part of the mixed code improvements in updates for 2016.1. All other improvements are scheduled for 2016.2 EAP, which we plan to open around mid-May.

Stay tuned and don’t to miss the next EAP launch!

Your AppCode team
The Drive to Develop

Posted in Announcement | Tagged , | 3 Comments

Meet AppCode and Kotlin teams at MCE 2016!


Next week AppCode and Kotlin teams will be visiting MCE conference in Warsaw, Poland and we are looking forward to meet you there!


Visit our booth during 2 main conference days (April 21-22) to ask questions about JetBrains products or our future plans, learn some tips&tricks and watch demos. Participate in our license raffle and win a free 1-year subscription! Even if you don’t win, we’ll send you a discount for a personal 1-year subscription to any JetBrains product of your choice.

See you soon!
The AppCode Team

Posted in Announcement, Events | Tagged | Leave a comment

AppCode 2016.1.1 update is out

Hi everyone,

AppCode 2016.1.1 update is available for download. If using AppCode 2016.1 you will get an automatic notification in the IDE.

This update delivers the following fixes and improvements:

  • Now in case you’ve opened Xcode project which is already included into workspace with the same name located in same directory, you will get the notification with the Reload project as workspace option:
  • This update includes several fixes for rendering Included from… compiler messages which can appear for some compiler notes. Starting from this version these messages will be displayed as a sub-node for corresponding note and will be collapsed by default:included_from@2x
    In addition, we fixed the issue when it was not possible to hide such messages by pressing Hide warnings button in Build messages tool window (OC-7637).
  • Issue with the #import statement added to the end of another import when creating new class from usage (OC-12544) is fixed.

Find complete release notes here and feel free to share your feedback in the comments section below.

Your AppCode team
The Drive to Develop

Posted in Announcement | Tagged | 4 Comments

AppCode 2016.1 released: better Swift language support, code folding for Swift declarations and more!


Finally, AppCode 2016.1 is here, so download and try it right now! And if you’ve already installed the AppCode 2016.1 RC2 build, then simply keep using it, since it’s the same as the released one.


This release delivers a lot of fixes bringing correct parsing and resolve for the following Swift constructions:

  • Types conforming to OptionSetType protocol:
  • Self type
    Self statement
  • Variadic parameters in closures and functions
  • Typealias initializers
  • Function array types

Continue reading

Posted in Announcement | Tagged , , , , | 5 Comments

AppCode 2016.1 RC2 is out

Hi everyone,

After the first 2016.1 release candidate we decided to publish an update, which addresses the following important issues:

  • Issue with completion in for-in loop (OC-13343)
  • Performance regression in Swift code completion (OC-13339)

In addition in this build we decided to temporarily revert changes for DerivedData location (OC-13193) due to the multiple issues caused by this change.

Important note: this week Xcode 7.3 was released and as we wrote in AppCode 3.3.3 release post, AppCode 3.3.3 is not compatible with Xcode 7.3 due to some crucial changes in debugger which prevent AppCode from starting iOS application on the simulator while running/debugging. This issue was fixed in the first 3.4 EAP build and it means that this fix is already included into AppCode 2016.1 RC2, so we would like to ask everybody who updated Xcode to the 7.3 version to use the current RC build instead of AppCode 3.3.3.

As usual, you can download AppCode 2016.1 RC2 from our confluence page. Note, that this RC build requires an active AppCode license or is available for 30 day evaluation.

Feel free to share your feedback in the comments section below. In case you find any problem, please report it to our tracker.

Posted in Announcement | Tagged , | 9 Comments

AppCode 2016.1 Release Candidate

Hi everyone,

AppCode 2016.1 release candidate (build 145.257) is out today. Previously this version was announced as 3.4 and now it’s time to explain where the 2016.1 version number has come from.

There are 2 main reasons for it. First, with the switch to subscription model, we planned to release more often, move away from major/minor version scheme and focus on continuous delivery of value independently of versioning. The second reason is to unify versions of all products under the JetBrains Toolbox and make it clear for everybody which particular product version will include some platform changes in general IDE experience. To find out more, please read the post in our company blog.

From the Swift side this build addresses the following issues:

  • Completion duplicates for functions in classes with a lot of super protocols and extensions (OC-13111)
  • Swift generated header file import is not resolved in frameworks (OC-13119)

In addition, this build delivers a fix for the issue with xcproject being opened instead of xcworkspace in some cases (OC-13157).

Some words about features mentioned in our roadmap. For the current release we had 3 main feature directions planned:

  • Swift refactorings (Inline variable (OC-11356) and Introduce variable (OC-11591) first)
  • Warnings and errors shown in the editor for the Swift code (OC-11496)
  • Fixes for bridged header problems that currently affect writing mixed Objective-C and Swift code

For now a large amount of improvements for the mixed code is already in our internal testing, but due to the amount of changes we cannot roll them out in the current release. We need to finish our internal testing and evaluate all the changes during the EAP period.

There are still some parsing/resolve issues that currently do not allow us to start implementation of Swift refactorings (including recent changes in Swift 2.2). Some of them required more effort than we expected, so currently we are still working on them. After the current release we will publish an update in our blog post with the ETA for this feature.

Finally, the task to show warnings and errors in editor for the Swift code (OC-11496) is close to our internal testing and we will publish information about its ETA after release.

You can download AppCode 2016.1 RC from our confluence page or use the patch update directly from the IDE in case you are using 3.4 EAP build. And if you find any bug at all, please file an issue in our tracker.

Your AppCode team
The Drive to Develop

Posted in Announcement | Tagged , | 7 Comments

New AppCode 3.4 EAP: code folding for Swift


New AppCode 3.4 EAP, build 145.256 is available for download. The patch update is also available if you are using previous 3.4 EAP build.

This update brings one of the long-awaited Swift code editing features – code folding of declarations in Swift.

Let’s go through all the code folding options available:

  • Use +/- toggles on the left side of the editor window to expand/collapse any declaration:Code folding toggles
  • Mouse over the collapsed declaration to see it’s contents:
    Folding contents
  • Expand/collapse the current code block using ⌘+/⌘-:Expand/collapse current block
  • Expand or collapse any declaration recursively via ⌥⌘+/⌥⌘-:Expand/collapse recursively
  • Expand or collapse all declarations in the current file using ⇧⌘+/⇧⌘-:Expand/collapse all

The same options are also available for #if/#else/#elseif/#endif conditional compilation statements.

As usual, you can find complete release notes here. Feel free to share your feedback in the comments section below or in our tracker.

Posted in Announcement | Tagged , | 4 Comments