2.3.2.2 release notes

2.3.2.2

  • Unlocked support for JetBrains' 2024.2 builds which are currently in an EAP (Early Access Program) state. Note that while IC2 can now be installed into these builds, I strongly discourage using them until an official build is released, likely at the end of July or beginning of August. Pre-release builds often include breaking changes to the plugin SDK.

    I'm unlocking support to avoid a catch-22 that can occur when JetBrains begins rolling out official builds of a new version without a compatible IC2 build already available in the plugin repository. I will update IC2 as necessary between now and the official 2024.2 release with any changes required for breaking plugin SDK changes.

    If you decide to brave these waters and run into issues, please feel free to report them in the public issue tracker so that I can address them, and then revert to the most recent supported official build of 2024.1.
  • Issue 2595 - Fixed an IDE freeze that could occur during as-you-type validation when that feature and Tooling API-based deployment are both enabled for Apex and the project contains one or more System.Schedulable implementations. Now in this specific situation, the validation's check-only deployment will occur via the Metadata API to avoid both the potential incorrect failure if the class being validated is itself an actively-scheduled System.Schedulable class or a transitive-dependency of such a class and the expense of checking whether that specific state holds true during active editing of the class' source file.
  • Apex unit test code generation enhancements:
    • Added two new Apex live templates:
      • ts - Generates a new @TestSetup method.
      • tm - Generates a new @IsTest method.
    • Added three new first-class code generation options, accessed using Alt+Insert on Windows/Linux and Cmd+N on Mac:
      • Test Setup Method - Generates a new @TestSetup method; only available from @IsTest-annotated Apex classes that do not already contain a @TestSetup method.
      • Test Method - Generates a new @IsTest method; only available from @IsTest-annotated Apex classes.
      • Test... - Generates a new Apex unit test class for the current Apex production class; only available from production/non-test Apex classes. The user is prompted for:
        • The test class name; the default test class name is ProductionClassNameTest.
        • The target directory in which the test class should be created; currently the available options for the target directory are the parent directory of the current production class and the classes directory under the test source root if available.
        • The optional @TestSetup method name.
        • The optional global/public concrete methods in the production class for which @IsTest methods should be stubbed in the new test class; stubbed test methods are named testCapitalizedProductionMethodName.
        The naming conventions for generated test classes and methods described above are currently fixed. If there is an interest in making those configurable, e.g., using a different prefix/suffix or even none at all, please log an enhancement request in the public issue tracker with details about the desired supported patterns and/or configuration capabilities.
  • Prospective fix for an issue where the New | Lightning Web Component action would not be available in context menus of metadata format projects.
  • Fixed an issue where, when renaming an Apex source file, certain references to the contained top-level Apex type would be updated with the file name instead of the type name.

Note that there will be no scheduled updates to IC2 over the next two weeks while I'm away for summer holiday with my family. The typical weekly(-ish) update cadence will resume after I return, and I will, of course, still be handling all sales and support needs during this time.