Skip to content

v4.10.0 - Spring '23 Release

Compare
Choose a tag to compare
@jongpie jongpie released this 05 Apr 16:41
· 79 commits to main since this release
c9c4b5d

Managed Package Release - v4.10.0

Happy belated Spring '23 release! 🥳 A little behind schedule, this release is for both the unlocked package (as always), as well as the managed package! For orgs that are upgrading to this version of the managed package, you can see everything that's changed between v4.9.0 and v4.10.0 by reviewing:

  • The v4.10.0 milestone to see all of the issues & pull requests that are included in the this release.
  • The diff between v4.9.0 and v4.10.0 to see all of the code & metadata changes that have been committed since the last managed package release.

Core Unlocked Package Changes - v4.10.0

Metadata API Version

  • Updated all metadata from API v56.0 (Winter '23 release) to v57.0 (Spring '23 release)
  • Removed the now-deprecated picklist value "v56.0 - Winter '23 Release" in the field Log__c.ApiVersion__c, added "v58.0 - Summer '23 Release"

Apex Logging Improvements

  • @jamessimone added several new methods in PR #471 to add support for logging instances of Database.LeadConvertResult - thanks to @justin-lyon for pointing out that this was missing from the list of supported Database classes that were added in v4.7.4!
    • Added new instance method overload LogEntryEventBuilder.setDatabaseResult(Database.LeadConvertResult leadConvertResult)

    • Added several static method overloads in Logger for easily logging Database.LeadConvertResult instances. The full list of method overloads is:

      global static LogEntryEventBuilder error(LogMessage logMessage, Database.LeadConvertResult leadConvertResult);
      global static LogEntryEventBuilder error(String message, Database.LeadConvertResult leadConvertResult);
      global static LogEntryEventBuilder warn(LogMessage logMessage, Database.LeadConvertResult leadConvertResult);
      global static LogEntryEventBuilder warn(String message, Database.LeadConvertResult leadConvertResult);
      global static LogEntryEventBuilder info(LogMessage logMessage, Database.LeadConvertResult leadConvertResult);
      global static LogEntryEventBuilder info(String message, Database.LeadConvertResult leadConvertResult);
      global static LogEntryEventBuilder debug(LogMessage logMessage, Database.LeadConvertResult leadConvertResult);
      global static LogEntryEventBuilder debug(String message, Database.LeadConvertResult leadConvertResult);
      global static LogEntryEventBuilder fine(LogMessage logMessage, Database.LeadConvertResult leadConvertResult);
      global static LogEntryEventBuilder fine(String message, Database.LeadConvertResult leadConvertResult);
      global static LogEntryEventBuilder finer(LogMessage logMessage, Database.LeadConvertResult leadConvertResult);
      global static LogEntryEventBuilder finer(String message, Database.LeadConvertResult leadConvertResult);
      global static LogEntryEventBuilder finest(LogMessage logMessage, Database.LeadConvertResult leadConvertResult);
      global static LogEntryEventBuilder finest(String message, Database.LeadConvertResult leadConvertResult);
    • Added static methods overloads for Logger.logDatabaseErrors() for logging List<Database.LeadConvertResult> errors. If the list of lead convert results includes 1 or more errors (based on isSuccess() == false), then a new log entry is added, and the JSON of any unsuccessful results is serialized/stored in the log entry.

      global static LogEntryEventBuilder logDatabaseErrors(System.LoggingLevel loggingLevel, LogMessage logMessage, List<Database.LeadConvertResult> leadConvertResults);
      global static LogEntryEventBuilder logDatabaseErrors(System.LoggingLevel loggingLevel, String message, List<Database.LeadConvertResult> leadConvertResults);

Bugfixes

  • Worked with @jamessimone to fix #436 that prevented data from being fully loaded in the "Open Viewer" quick action on Log__c - thanks to @solo-1234 for reporting this issue!
    • Small enhancement: added a lightning-spinner to logViewer that's displayed on load
  • Fixed #469 by updating how some tests query for the autoproc user - thanks to @YodaDaCoda for reporting this & providing the solution!

Code Cleanup

  • Bumped all metadata to API v57.0 (Summer '23 release)
  • Moved the private constant LogEntryEventBuilder.ORGANIZATION_API_VERSION to Logger.ORGANIZATION_API_VERSION so Logger can dynamically include the API version when saving with the save method Logger.SaveMethod.REST
  • Finally removed the last @future method in the codebase, LogEntryEventHandler.setStatusApiDetails() (used to call the Salesforce Status API), and replaced it with a private queueable class LogEntryEventHandler.StatusApiCalloutQueueable

Documentation Improvements

  • Added sfdx commands in README.md so everyone can easily copy & paste the recommended commands to install Nebula Logger's unlocked & managed core packages

Pipeline Changes

  • Updated sfdx to version 7.191.1
  • Updated sfdx commands in build.yml and package.json to use the new syntax for commands & parameters

Installation Info

Core Unlocked Package - no namespace

Full Changelog: v4.9.11...v4.10.0

Core Managed Package - Nebula namespace

Full Changelog: v4.9.0...v4.10.0