2.2.5.0 release notes
2.2.5.0
- New UI - If you're not aware, JetBrains' new UI is available in a beta form starting with 2022.3. It can be enabled under Settings / Preferences > Appearance & Behavior > New UI. I'm using the new UI as my daily driver for IC2 development and testing, in part to become familiar with it, but also to ferret out any issues with IC2 itself under the new UI. This build includes a few cosmetic and usability updates for the new UI (and I imagine there will be plenty of others to come in future builds):
- Added the IC2 toolbar buttons to the new UI's toolbar. In order to preserve available real estate, I've combined the three settings toolbar buttons into a drop-down button and moved it to the right of the Open Connection drop-down button. This can be disabled if desired in Illuminated Cloud > Configure Application > User Interface by unchecking Add Illuminated Cloud toolbar actions in new UI.
- Forced the editor components in the Anonymous Apex and SOQL Query tool windows to use the correct background color for consistency and readability.
- Adjusted the Log Analyzer profiling view percentage bar colors for readability.
- It's still very much a work-in-progress for JetBrains and therefore still has a number of issues and shortcomings. They're tracking reported issues closely under the
newUI
tag, e.g., a request to add a compact mode that makes better use of available space in the new UI. If you're trying out the new UI—with or without IC2—and have feedback, please see whether that feedback has already been logged with the team via thenewUI
tag and either update an existing issue or create a new issue as appropriate. - Since the new UI itself is still a work-in-progress, obviously IC2's own existence in that UI will be subject to the same overall status. As indicated above, I'm actively working to make IC2 look and work as well as possible in the new UI, but there are almost certainly going to be issues. Feel free to report anything IC2-specific that you find to me, but I would ask that you remove any potential external contributors from the equation, or at least gain an understanding of how those externals contribute to the issues. For example, if you have a third-party theme enabled and are seeing layout issues, please disable that theme and see whether the same issues are present with the standard IDE themes.
- Personally I make heavy use of the menu bar via standard keyboard accelerators, e.g., Alt+C > I for Code > Inspect Code..., so when I enable the new UI I also enable the option to Show main menu in separate toolbar. Obviously everyone works differently, but if you're trying out the new UI and are missing menu bar functionality, I recommend enabling that option.
- Issue 2263 - Fixed an issue where trigger renames wouldn't be properly reflected in the
package.xml
file or the project's profiles and permission sets. - Issue 2268 - Fixed an issue where the
@RestResource
annotation wouldn't be offered as a code completion for top-level classes. - Issue 2272 - Change notes are now only displayed when the first IC2 project is opened after a plugin update. Previously they were also displayed if a non-IC2 project is first opened after the update.
- Issue 2274 - When changing the connection for a module in IC2 project-level settings, if there are other modules that use the same connection, the user is now prompted whether to update those modules as well.
- Issue 2276 - Exact prefix matches are now prioritized before camel hump prefix matches in Apex code completions.
- Issue 2282 - Fixed an issue with generated interface method visibility when the implemented interface has
private
visibility. - Issue 2283 - Fixed an issue with the allowed millisecond resolution in SOQL date/time literals.
- Issue 2284 - Usages of SOQL
FIELDS(ALL)
orFIELDS(CUSTOM)
not in standalone SOQL queries and/or without aLIMIT
clause or with aLIMIT
value greater than 200 are now flagged as errors. The following quick fixes are provided:- Usages of the
FIELDS()
function can be expanded to the corresponding explicit comma-delimited list of scalar fields. - A
LIMIT
clause can be added if missing or changed to an allowed maximum if present but above that value.
- Usages of the
- Issue 2287 - Fixed an issue with class renames not properly updating stub/default constructor references.
- Push deployments to source-tracked organizations now provide the same detailed deployment status reporting as bulk deployments via the Metadata API instead of an indeterminate progress indicator for the duration of the
force:source:push
command. Unfortunately I haven't yet found a good way to do the same for CLI-based retrievals (bothforce:source:retrieve
andforce:source:pull
) but will add similar support if I can figure out how to do so. - Exclusions are automatically added for the
.sfdx
and.sf
directories for new source format projects and new metadata projects configured for CLI-managed connections. - Fixed an issue where focus would be transferred from the editor to the Messages tool window during code completion when the cached org list is stale and Salesforce CLI command logging is enabled.
- Implemented a set of performance optimizations that are likely most evident when editing large Apex files with extensive and complex inner types—specifically when the top-level Apex class is effectively used for lexical scoping—though they will likely also apply in smaller and less complex files.
- Other related fixes and improvements.