Posts

2.2.8.5 release notes

  2.2.8.5 Issue 2437  - Fixed an issue with variant code completions offered for standalone  new  expressions. Issue 2440  - Added  static final  modifiers to  Canvas.Test  constants. Note that the OST must be regenerated to see the effect of this change. Implemented several improvements and fixes for the Einstein GPT for Developers integration: Added a settings button to the top-right corner of the main Einstein GPT dialog that can be used to configure the following (with more likely to come): Feedback | Include class context information  - When checked, the immediate call to the  feedback  API includes contextual information about the top-level and member declarations of the Apex source file which was active when generation was requested. This is  enabled by default  but can be disabled if you'd prefer not to share this information with Salesforce. Feedback | Include file information  - When set to any value ot...

2.2.8.4 release notes

  2.2.8.4 Issue 2425  - Added support for  Einstein GPT for Developers . To be clear, though, as the underlying feature is currently in an  early beta-level state , so too should this IC2 integration be considered an early beta. The API used to interact with the backing service is absolutely going to change between now and the final release, and  temporary breakages  are pretty much  guaranteed . I will track these API changes closely and update IC2 as needed to keep the integration healthy, but until the API settles, there will likely be short periods during which it goes from working fine to not working at all. If you run into such issues, please let me know and I'll see what changes are required. With that preface out of the way, here are the features: Added the  EinsteinGPTForDevelopers  scratch org feature flag which must be enabled when creating scratch orgs for use with this feature. This feature can be enabled explicitly in non-scratc...

2.2.8.3 release notes

2.2.8.3 Issue 2423  - Fixed an issue that could lead to incorrect/inaccessible constructor/method signatures being added as references. Updated the  Deprecated API usage  code inspection to report usages of declarations marked as deprecated using the  @deprecated  ApexDoc tag as well as the  @Deprecated  Apex annotation. The inspection can be configured for which of these two mechanisms should be reported, with both enabled by default. Updated the  Modifier Agreement  code inspection to detect and invalid combination of the  virtual  modifier and  @Deprecated  annotation. Ensured that the appropriate  SF_*  environment variables are set alongside the corresponding  SFDX_*  environment variables when executing the Salesforce CLI. This build is light on changes because the bulk of my time has been spent  integrating  Einstein GPT  into IC2. At this point I've implemented a pretty much full-...

2.2.8.2 release notes

2.2.8.2 Issue 2418  - Added a number of new configuration options for Apex code generation: Generate ApexDoc  - When checked, automatically includes an appropriate ApexDoc comment for generated  constructors  and  getters/setters . Note that if the  Enable ApexDoc formatting  formatter option is not enabled, the user will be prompted to enable it to ensure that generated comments are formatted correctly. Generate single line methods  - When checked,  getters and setters  are generated as compact single line methods. Note that if the  Keep when reformatting | Simple methods in one line  formatter option is not enabled, the user will be prompted to enable it to ensure that the generated method isn't immediately formatted across multiple lines. Generate Builder Pattern/Fluent API-style setters  - When checked,  setters  are generated according to the Builder Pattern/Fluent API where, after the field value is set, th...

2.2.8.1 release notes

  2.2.8.1 Issue 25  (phase 2) - Implemented several additional  code generation capabilities for Apex : Constructor  - Generates constructors based on base class constructors and/or local member variables (fields and properties) as appropriate and as selected by the user. Note that the  Implement / Override  code generation feature now also includes base class constructors when appropriate in addition to methods and interface methods. Add constructor parameters  - Added a code intention for member variables that are not already initialized in constructors to add them as constructor parameters that are used to initialize the respective member variables. The user is prompted as to which fields should be added to which constructors, and the  Change Signature  refactoring is then used to apply all changes, allowing the user an opportunity to tailor the resulting signature changes as desired, and to ensure that signature changes are properly refle...

2.2.8.0 release notes

  2.2.8.0 Issue 25  (partial) - Implemented several code generation capabilities for Apex: equals()  /  hashCode()  - Generates overrides of the  equals()  and/or  hashCode()  methods using user-specified fields, checking for  null  for those not specified as non-nullable. The enclosing Apex class must have at least one member variable (field or property) to be used for comparison. If either  equals()  or  hashCode()  already exists, only the missing method is generated. If both methods already exist, the user is prompted to remove and regenerate them using a new specification. NOTE:  The implementations of these methods are based on the canonical implementations from the Java ecosystem, adjusting for limitations and differences in Apex as necessary. I'm certainly open to other options for implementing them as long as they meet general contract of the implemented methods, are generic in nature, and do not fo...

2.2.7.9 release notes

  2.2.7.9 Issue 2188  - Added a project-level  Recent Connections  section to all project connection selectors that includes the most used  non-project  connections. Non-project connections are added to this list automatically when they are used for certain operations from the current project, e.g., metadata deployment/retrieval/removal, Anonymous Apex and SOQL Query execution, Log Analyzer, etc. This feature can be configured under  Illuminated Cloud | Configure Application | User Interface | Recent connections  as follows: Remember recent connections  - Allows the user to decide whether or not this feature is enabled ( enabled by default ). Clear recent connections for project  - Allows the user to clear/reset all remembered connections for the current project if desired. Maximum recent connections  - Allows the user to configure the number of recent connections that are included in the list in the range 5-20 ( 10 by default ). So...