2.2.9.5 release notes

 2.2.9.5

  • Issue 2476 - Prospective performance improvement when deploying via the metadata API in very large projects with Local Files subscriptions. This still doesn't resolve slow times discovering the metadata types/names of all files in large projects, but it should help with deployment specifically. Realistically, projects with extremely large numbers of metadata objects (in the reported case, >100K local metadata files) should use a Package.xml-based metadata subscription.
  • Fixed an issue with automatic module problem resolution as the project is opening.
  • Flow graphical preview improvements and fixes
    • Issue 2483 - Fixed a broad class of potential NPEs that could occur when Flow XML elements that were previously expected to be present (based on my limited access to test Flow metadata) were not in fact present.
    • Symbolic details are now presented in a fixed-width (i.e., code) font.
    • Added numeric indices on filters so that custom filter logic references are properly represented.
    • Fixed the zoom in and out actions so that they work properly now. Note that there is a known issue which I've already reported to JetBrains where the scrollbars in the embedded browser scale according to the selected zoom level instead of staying a consistent size.
    • Changed the zoom in and out levels to be increments of 25% instead of 10%.
    • Changed the Zoom Reset action to be Actual Size and Fit to Width where the former zooms in on the diagram so that its contents are legible, and the latter zooms to 100% of the containing editor width.
    • Replaced the Mermaid plugin's flaky Export Diagram to SVG toolbar button with a working Save Flow Diagram as PNG toolbar button. The user is prompted for the output directory (project root directory by default), image filename, DPI (150 by default), and whether or not to use a transparent background (enabled by default). Note that the zoom level is automatically reset to 100% of the editor width when exporting to PNG. Also note that higher DPI exports of larger diagrams may require more memory to be allocated to the IDE. If/when the Mermaid plugin's SVG export functionality is fixed, I'll restore it as another option for exporting Flow diagrams.
    • Added support for resolution of element references to constant values if present.

    Other things I'm either actively working on or at least considering for this feature:
    • Navigation to the original Flow XML elements when the corresponding diagram nodes are clicked, but there are numerous layers of indirection with Mermaid executing in an embedded browser executing in the IDE's UI framework, and conveying the click event back to the IC2 plugin is proving to be a bit elusive right now. I'm sure it's possible, though, and I hope to have it figured out in short order.
    • Adding more extensive user-configurable options for Flow diagram rendering including:
      • Which specific details of each node type are included instead of the current binary show/hide details toggle.
      • Node connector curve style; I've experimented with each of the available styles and some do seem to produce slightly cleaner diagrams, but this is obviously a purely subjective type of thing and therefore lends itself well to being configurable.
      • Node type colors for light and dark themes.
      • Enabling Mermaid's new, experimental elk flowchart renderer; again, I've experimented with it a bit and it does produce more compact and (again, subjectively) clean diagrams, but since it's still in an experimental state right now, it also seems to have some issues to be addressed before switching over wholesale, e.g., it doesn't respect dark themes, and it doesn't seem to respect the specified graph direction completely.