2.1.2.9 release notes

Post date: Jul 10, 2020 5:22:37 PM

2.1.2.9

  • Lightning fixes and improvements - Implemented another round of fixes and improvements for Lightning development, both LWC and Aura. In fact, most of these fixes are for Aura and/or Community Edition IDE users.

    • Added full support for Aura/LWC component composition, i.e., using custom LWC components in Aura component markup. This includes code completion, reference navigation, LWC components as selectors in Aura style files, integrated LWC component API documentation from Aura markup, etc.

    • Added full support for design tokens in Aura style files. This includes code completion, reference navigation, handling of token renames (requires a commercial JetBrains IDE), etc.

    • Improved the structure view for ES6 classes in Community Edition IDEs. Previously it was limited by the Rhino JavaScript parser's inability to grok ES6. Now I'm using the same simple custom ES6 parser used to find ES6 properties and methods for code completion to build the structure view. It's not perfect, but it's much more accurate that in the past and should facilitate faster navigation of ES6 class members in Community Edition IDEs.

    • Fixed an issue where multiple identical HTML references to JavaScript controller properties and functions were not being de-duplicated correctly in Community Edition IDEs leading to duplicate entries being offered during reference navigation.

    • Improved reference highlighting in Community Edition IDEs for controller properties/fields and functions/methods used in markup.

    • Fixed an issue where undecorated ES6 fields were not being found properly.

    • Fixed a potentially long-standing issue where directories were being evaluated as JavaScript/CSS files incorrectly.

    • NOTE: As before, there are still a few issues that I have not been able to resolve because they are in the commercial JetBrains HTML/CSS/JS plugin and are not subject to inspection suppression. In addition to those enumerated in the previous build's release notes, I have logged the following bug with JetBrains regarding an issue with the rename refactoring not properly updating braced expression references to ES6 members:

  • Issue 1652 - Made the confirmation messages displayed during connection removal more detailed regarding the exact connection requested for removal and the ramifications of removing a CLI-managed connection.

  • Issue 1661 - Fixed an issue that could cause the namespace to be missed for Salesforce CLI connections when one is specified in sfdx-project.json. Note that this is not a 100% perfect fix because the namespace is not included in the response from force:org:list or force:org:display and must be sourced from the project-specific sfdx-project.json file. If the relevant project is not open when the connection details are evaluated, the namespace will not be found. I have filed an enhancement request with Salesforce to include the namespace in one/both of those CLI actions so that the namespace for a CLI-managed org is always known.

  • Issue 1662 - In the previous release references were only added to query bind expressions in string literals if they were in a string literal or string concatenation that begins with either SELECT or FIND. This missed some other types of multi-statement string concatenations. Now it will also look for string literals/concatenations that begin with other keywords for clauses in which bind expressions can be used, specifically WHERE, AND, OR, LIMIT, OFFSET, and GEOLOCATION. To avoid invalid reference attribution, any string literal/concatenation expression that does not begin with one of these keywords will not be evaluated for references to Apex symbols used in bind expressions.

  • Issue 1667 - Implemented a workaround for a backward-incompatible change to the JSON output format for force:source:deploy's async status. It should work with both previous and new output formats now.

  • Other fixes and improvements.