AppCode 2016.3: first part of Swift 3 support, new formatting options, performance improvements, Create from usage for Swift and more!

Hi everyone,

AppCode 2016.3 is here, so download and try it right now! The patch update is also available if you are using 2016.2.4 version.
AppCode 2016.3
In this post we will cover the most important changes included. Let’s get down to it!
Continue reading

Posted in Announcement | Tagged , | 1 Comment

AppCode 2016.3 Release Candidate

Hi everyone,

Today we are glad to announce that AppCode 2016.3 Release Candidate (build 163.8703.1) is available for download. That means 2016.3 release is just around the corner!

The following issues are fixed in this build:

  • Displaying Swift instance variables in the debugger (OC-14513)
  • Problem with SourceKit inspections in some projects (OC-13999)
  • False spellchecker errors when using class member in C++ (CPP-8185)

We appreciate your feedback and comments, and if you find any bug at all, please file an issue in our tracker.

Note, that this RC build does not require an active AppCode subscription. The full list of fixes and improvements can be found here.

Your AppCode team
JetBrains
The Drive to Develop

Posted in Announcement | Tagged , | 17 Comments

New AppCode 2016.3 EAP: completion and code analysis performance

Hi,

This week brings a very important AppCode 2016.3 EAP build, as it contains significant performance improvements in areas essential for writing the Swift code.

Completion performance

We made performance optimizations for Swift completion in pure Swift and mixed Objective-C/Swift projects and re-worked some parts of our completion caching system. It means that completion in Swift projects should become much faster comparing to any previous 2016.3 EAP build.

SourceKit warnings and errors

We fixed an important issue in SourceKit integration which caused significant delays when showing warnings and errors in editor. Now this functionality should work much faster in general (note that there is an issue with some projects when SourceKit warnings and errors are not shown and we are still working on it).

In addition, we added support for precedencegroup keyword including highlighting, completion and formatting and fixed issue with NSLog output on macOS 10.12.1.

As performance improvements mentioned above are quite massive, we encourage you to try this build with your project and share your feedback with us either in comments below or in our tracker.

For the full list of fixes please see the release notes.

Download AppCode 2016.3 EAP

Your AppCode team
JetBrains
The Drive to Develop

Posted in Announcement | Tagged , , | 14 Comments

AppCode 2016.3 EAP: improvements in Swift resolution performance, Swift 3 support in debugger and more

New AppCode 2016.3 EAP (build 163.7743.19) is available for download on our confluence page. If you are using previous 2016.3 EAP build, the patch update is also available.

Resolution performance

This build contains significant improvements in Swift resolution performance implemented as a first part of this task. It means that highlighting in Swift files should become faster and AppCode should use less CPU when editing Swift files in general. If you experienced any of the problems mentioned above before, we encourage you to try this build and share your feedback with us.

Note that we are still working on completion performance (OC-14065).

Swift 3 support

The following Swift 3 support features are included into this build:

  • Debugger fixes (OC-14432) related to Swift 3 collections rendering
  • SE-0077: Improved operator declarations (OC-14162)
  • SE-0040: Replacing equal signs with colons for attribute arguments (OC-14370)

Swift semantic highlighting

Another feature included into this EAP build is the semantic highlighting support for Swift language (OC-13894):

Swift semantic highlighting

You can turn it on in Preferences | Editor | Colors & Fonts | Language defaults | Semantic highlighting.

For the full list of fixes please see the release notes.

Your AppCode team
JetBrains
The Drive to Develop

Posted in Announcement | Tagged , | 12 Comments

AppCode 2016.2.4 EAP, build 162.2573.3

Hi everyone,

We are starting the Early Access Program for 2016.2.4 update and the first build is already available on our confluence page. Please, note that this EAP build requires an active subscription (or you can start a 30-day evaluation period).

This build delivers support for Xcode 8.1 and a lot of fixes related to Swift 3 support. Find them all in the full release notes.

Your AppCode team
JetBrains
The Drive to Develop

Posted in Announcement | Tagged , , | Leave a comment

New AppCode 2016.3 EAP: Xcode 8.1 support and Create from Usage in Swift

Hi everyone,

New AppCode 2016.3 EAP (build 163.7342.8) is available for download on our confluence page. If you are using previous 2016.3 EAP build, the patch update is also available.

In this build we fixed critical issue with running/debugging iOS applications on simulator and device with Xcode 8.1 set in AppCode preferences. Currently it’s the only issue related to this particular Xcode version support, so in case you see any other serious issues, please let us know about them.

The most important new feature included in this build is the first part of Create from usage feature for Swift. You may know that similar ability is available in Objective-C/C/C++ in AppCode – you can create variables, constants, methods, functions and classes just by pressing ⌥⏎ on the unresolved entity:

Create from usage in Objective-C

Now this functionality is also available for Swift functions, methods, variables, constants and properties. Try using the function which does not exist, press ⌥⏎ and choose if you want to create the global function or class method:

Create function from usage

Press  to generate the function/method stub and change parameter names or return type if needed:

Generate function

Try using the non-existing variable, press ⌥⏎, select the proper scope and press  to create it automatically:

Create variable from usage

Create from usage functionality for new types (classes/structs/etc) is still in progress.

That’s it! For the full list of fixes please see the release notes.

Your AppCode team
JetBrains
The Drive to Develop

Posted in Announcement | Tagged , | 6 Comments

AppCode 2016.3 EAP, build 163.6957.25

Important note: build 163.6957.11 is no longer available because of the critical issue with completion in mixed Objective-C/Swift projects. Please, use 163.6957.25 build instead which contains fixes mentioned below and does not have such problems with completion. We sincerely apologize for this issue.

New AppCode 2016.3 EAP is available for download on our confluence page. If you are using previous 2016.3 EAP build, the patch update is also available.

This build brings fixes for the following issues:

  • Problems with Swift operators formatting (OC-12352OC-12353)
  • Incorrect indentation for catch on a new line (OC-14278)
  • Issue when typealias with access modifier was incorrectly formatted (OC-14317)
  • Resolve issue with ()->Void type (OC-14298)
  • Parser error for function type parameter with label and underscore (OC-14343)
  • Problem with building project after switching Xcode toolchain (OC-14188)
  • Issue with Objective-C string concatenation (OC-14308), which also caused parser errors when using XCTAssert and some other macros
  • Problem with run configurations specified in Before launch section (OC-14017)

The following Swift 3 support features are included into this build:

For the full list of fixes please see the release notes.

Your AppCode team
JetBrains
The Drive to Develop

Posted in Announcement | Tagged , | 15 Comments

AppCode 2016.3 EAP, build 163.6512.19

Hi everyone,

New AppCode 2016.3 EAP is out and available for download on our confluence page. If you are using previous 2016.3 EAP build, the patch update is also available.

This build contains the following fixes and improvements:

  • Issue running application on a device with Reveal library injected (OC-14326) and related problem with run configurations (OC-14335)
  • Issue when source folder entries in project.iml file were changed unexpectedly (OC-13028)
  • Support for projects generated with Swift Package Manager (OC-14196)
  • Swift formatter fixes: continuation indent for multiline declarations (OC-12302) and ternary operators (OC-14246)

For the full list of fixes please see the release notes.

Your AppCode team
JetBrains
The Drive to Develop

Posted in Announcement | Tagged , | 4 Comments

AppCode 2016.2.3 update is out

Hi everyone,

AppCode 2016.2.3 update is available for download. If using AppCode 2016.2.2, you will get an automatic notification in the IDE.

The update contains the following Swift 3 support features:

  • SE-0005, first part: Resolution for Objective-C enums and options in Swift (OC-13728)
  • SE-0025: Scoped access level support (OC-14151)
  • SE-0031: Adjusting inout declarations for type decoration (OC-14104)
  • SE-0046: Establish consistent label behavior across all parameters including first labels (OC-14055)
  • SE-0048: Generic type aliases (OC-13838)
  • SE-0049: Move @noescape and @autoclosure to be type attributes (OC-14144)
  • SE-0066: Standardize function type argument syntax to require parentheses (OC-14186)
  • SE-0071: Allow (most) keywords in member references (OC-13837)
  • SE-0081: Move where clause to end of declaration (OC-13836)
  • SE-0099: Restructuring condition clauses (OC-14164)
  • SE-0103: Make non-escaping closures the default (OC-14145)
  • SE-0106: Update platform configurations (OC-14138)
  • Also, SWIFT_VERSION build setting support is implemented (OC-14139)

In addition to Swift 3 support changes, this build brings improvements and fixes for issues given below:

  • Class properties support in Objective-C (OC-14107)
  • Problem with NSLog/os_log output on iOS 10 device/simulator (OC-14285)
  • Issue with SourceKit version used in AppCode (OC-14159), which also fixes lot of problems with completion, navigation and symbol resolution. Note, that there are still issues related to those Swift 3 features that are not supported yet
  • Incorrect error handling intentions (OC-13774)
  • Problem with running test target on iOS 10 devices (OC-14165)
  • Problem with debugging on iPhone7/7+ devices (OC-14177)
  • Full support for for-in-where & case constructs in parser (OC-12041)
  • Issue with “Manage targets” dialog (OC-13411)
  • Reveal 2.0 integration (OC-14148, OC-14326OC-14335)
  • Problem with launching apps on simulator with Xcode 8 selected in Preferences (OC-14018)
  • Extremely sensitive scrolling on macOS Sierra (IDEA-158500)

Check the full release notes here.

Your AppCode team
JetBrains
The Drive to Develop

Posted in Announcement | Tagged , , | Leave a comment

AppCode 2016.2.3 RC: support for class properties in Objective-C and important fixes for Swift

AppCode 2016.2.3 release candidate is out today.

This build brings the following new features and important fixes:

  • class properties support in Objective-C (OC-14107).
  • Fix for the problem with NSLog/os_log output on iOS 10 device/simulator.
  • Fix for the SourceKit version used AppCode (OC-14159). This issue caused a lot of problems with completion, navigation and symbol resolution, now they should be fixed. Note, that issues related to the Swift 3 features which are not yet supported still exist.
  • Fix for incorrect error handling intentions (OC-13774).

Support for changes described in SE-0099 proposal (Restructuring Condition Clauses, OC-14164) is also available in this build.

Other changes which we promised to backport will be included into further 2016.2.x updates.

Note, that this RC build requires an active AppCode subscription or is available for 30 day evaluation. The full list of fixes and improvements can be found here.

Your AppCode team
JetBrains
The Drive to Develop

Posted in Announcement | Tagged , | Leave a comment