Early Access Program News

AppCode 2022.3 EAP: Enhanced Inline and Extract Refactorings

Hi everyone,

A new AppCode 2022.3 EAP build (223.7571.46) is available for download from our website or via the Toolbox App. You can also update from the previous 2022.3 EAP build via a patch.


Swift Inline refactoring

A recently added Swift Inline refactoring got some improvements in this build:

  • AppCode now warns users when conflicts are detected during the refactoring. Users can choose to continue or cancel the refactoring:
    Warning while refactoring
  • When refactoring functions with an effective single exit point, AppCode no longer creates a scope to jump to but uses a single variable to return the result of the function (OC-23171).
  • When inlining, AppCode provides an extra scope with the do {} block when necessary to keep the code correct (OC-23193).
  • AppCode now replaces all self expressions with the caller of the function when inlining (OC-23162).

Swift Extract Method refactoring

Another refactoring that received our attention is Extract Method. The following fixes were implemented:

  • Extract Method no longer misses the mutating modifier (OC-20585).
  • Extract Method takes into account the variable lifetime and scope (OC-22858).
  • The refactoring no longer fails in cases where the code you selected to extract starts from a conditional expression (OC-22707).

New code analysis checks

New checks warn you about a redundant nullable type (OC-23216) and a redundant closure (OC-23206):
Redundant null

Kotlin Multiplatform Mobile plugin updates

  • Xcodeprojs is now only linked when no Apple Gradle DSL is present (KMA-547).
  • The plugin now supports moving/copying files into and out of Xcode projects (KMA-456).
  • The cross-language class rename now works as expected (KMA-541).
  • We improved the debugger for the hybrid model (KMA-405).

The full release notes are available here.

Your AppCode team
The Drive to Develop