New AppCode 2018.1 EAP: Quick support for Swift, code folding for control flow statements and more!


The new AppCode 2018.1 EAP (build 181.3494.17) is available for download on our site.

Quick support

It was previously possible to run and debug Quick tests in the same way as with Xcode, with the same rendering for test names in the tests runner. Now the following improvements have been implemented for Quick tests in Swift:

  • Tests are displayed hierarchically keeping their structure in the code:Quick tests hierarchy
  • Navigation works properly and allows you to jump to a specific part of the Quick spec

Note that the same features for Objective-C Quick tests are not implemented yet, and it’s also not possible to run a single test because of the issue here.

Code folding for control flow statements

Control statements (if/else, do/while, for, switch) can now be folded/expanded via ⇧⌘./⌘+ shortcut in Objective-C/C++/Swift. It works for any block with more than one line of code or a block inside braces:

Block folding

Folding icons on the left gutter are not displayed by default and only appear when a code block has already been folded. This behavior is still questionable, and if you need folding icons to be displayed by default for such code constructs, please leave a comment here.


  • Adopted protocols and where clauses for Swift extensions are now shown in Structure view and Go to Class/Go to Symbol dialogs:Where clauses
  • The problem with a frequent StackOverflowException in mixed Objective-C/Swift projects, which caused freezes and issues with highlighting in the first EAP build, is now fixed.
  • Find Usages and Rename refactoring now work faster (OC-15549)

The full release notes are available here.

Your AppCode team
The Drive to Develop

Comments below can no longer be edited.

2 Responses to New AppCode 2018.1 EAP: Quick support for Swift, code folding for control flow statements and more!

  1. Avatar

    Jan Diederich says:

    February 13, 2018

    Swift types are still very often not found, especially (but not only) when they are in frameworks.
    The complete code is filled with red underlined lines for “Unknown type errors”. The best part is:
    class B : A // <– AppCode says: ""A" doesn't exist!"
    Click on left sidebar "O Down-Arrow" next to "A": AppCode tells me "Look there are x Implementations, one of them is this "B" type."
    And that is all over the code like, when you first started Swift support.
    Not to mention how it completely falls apart if aliases are used or even aliases imported from frameworks.

    Unbelievable that that still isn't fixed.

    • Stanislav Dombrovsky

      Stanislav Dombrovsky says:

      February 13, 2018

      Could you please share some minimal project to reproduce the issue? There can be different reasons that may cause such behavior, and sample project will help us to investigate and fix it.

Discover more