AppCode 1.6 EAP unleashed! (build #120.38)

Good morning || afternoon || evening everyone!

Today we are happy to open early access program for the next AppCode version – 1.6, which is scheduled for the end of summer and will be available as free update! And to get the ball rolling, here are some new goodies for you to try!

Code Quality

Batch Inspections. We have reconsidered batch inspections (you can launch them from the menu, Code | Inspect Code) and introduced several improvements: they are now much faster, inspection results are now categorized by the inspection type, plus you can now perform the bulk fix of the problems right from the inspection results view: apply quick-fix to either a single problem, or the whole file, group or even the whole project:

You can easily migrate your project to ARC – just pick the “ARC issues” group and select “Apply Fix ‘Migrate to ARC’”.

New inspections. In this build we added a bunch of new inspections, including the ones for switch cases: missing cases, duplicate cases, overlapping cases. Moreover, you can even generate missing cases automatically by pressing Alt+Enter:

Reworked rename refactorings. All Rename refactorings now work “in-place” and take into account usages in comments and non-code files. One more thing: you can now rename method selectors and category names:

String resources completion got the new look:

In addition to all this we’ve added an ability to suppress following warnings:

  • “Unused” warnings with “__unused” attribute.
  • Memory leak warnings with “NS_RETURNS_RETAINED” attribute.

Quick fixes automatically insert these attributes.

Code Generation

In this EAP we’ve boosted method generation with some new options. You can now choose where to declare the method – in the implementation, interface, or a category:

You can even add new methods to the framework classes – they will be put into a new category for you.

From now on adding parameters to existing method calls is going to be easy as a pie!

Navigation

We have improved Go to declaration/definition actions: now you can reach any category or subclass using Cmd+Alt+Click (Command+Alt+B) and switch between declarations and definitions of classes, methods, functions, etc. using Cmd+Click (Command+B):

Also, Go to class/file/symbol is smarter now – it can match even a substring!

File Structure view (Command+F12) shows inherited methods and methods from categories:

C/C++ Support

This build also brings a whole bunch of improvements in C++ area:

  • We know, you’ve been waiting for this…
    C++11 and libc++ support!
    not everything is implemented yet, so stay tuned for the following updates.
  • Template specialization and partial specialization.
  • Improvements in C99 compound initializers.
  • Implement/override functions are now available for C++ too.

And Even More!

Less indexing: caches are saved per run configuration (Xcode scheme). AppCode now supports CocoaPods projects, third-party project and file templates and all new Objective C features. You can also create Folder References with AppCode and clone GitHub projects with the bundled GitHub plugin.

Now, for the dessert, here’s another feature you’ve asked for: easy switching Simulator/Device:

Of course, we also carefully track your feedback, and are pleased to say that there are more than 300 fixes in this build! Want to learn what’s planned for the release? Take a look at the road map.

Give it a try! Download AppCode EAP build #120.38.

Develop with pleasure!
–The AppCode Team

This entry was posted in Announcement, Early Access Preview. Bookmark the permalink.

2 Responses to AppCode 1.6 EAP unleashed! (build #120.38)

  1. fly2never says:

    Cool, Waiting for several weeks!

  2. Macdevign says:

    Awesome release. Mac development is get more and more fun with AppCode. Has become indispensable tool for me.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">