JetBrains has been making a hard push in recent versions to make/keep the IDE performance snappy. In a Swing application, a critical aspect of that is ensuring that anything that happens on the EDT (Event Dispatch Thread) happens very quickly. They’ve started helping plugin devs know about calls to potentially slow plugin SDK operations when invoked on the EDT, manifesting as stack traces in idea.log
with the message “Slow operations are prohibited on EDT”.
IC2 produces quite a few of these due to needing to query information about the project/module structure frequently, primarily to discern the configuration, e.g., the location and contents of the sfdx-project.json
file and the IC2-specific module config. While these queries do not seem to have any negative impact on performance, they do result in very noisy log file contents when trying to troubleshoot legitimate issues.
I’m currently working to minimize (ideally eliminate) these calls from the EDT and have local changes that seem to address the vast majority of them. However, as you can imagine, such changes are non-trivial and require significant testing beyond just normal automated (or even manual) functional/regression testing.
I’m planning to keep a test version of the current released IC2 build available here for any brave souls who would like to help “burn in” these changes. For those who volunteer to assist, I’d be asking for these builds to be installed instead of the official builds posted to the JetBrains plugin repository and, if issues are encountered that aren’t present on the official build, to report them here so that they can be addressed. Of course, if those issues have high impact, users can (and should) return to the official build (ideally once the issues have been reported).
Volunteers should add themselves as watchers of this issue tracker entry so that 1) I have an idea of how many users are on these builds; 2) those using these builds can know when an updated build is available and move to that to continue providing feedback on the latest-and-greatest.
If you'd like to help test these changes, please:
If you see issues unique to this build -- functional or performance -- please report them here as comments. If the issues are impeding your work, please just uninstall the test build and install the official build, but please do report those issues so that I can address them.
Thanks for the help!