Skip to content

Commit

Permalink
Summer '23 Release (API v58.0) - v4.11.0 (#507)
Browse files Browse the repository at this point in the history
* Updated metadata to API v58.0 (Summer '23 release)

* Updated some picklist values to have options for API v58.0 and 59.0

* Updated some calls to String.join() to remove extra conversions of Set<String> to List<String> - Summer '23 supports iterating over Set<Object> now

* Retrieved the metadata for fields & object so the repo's version more closely matches the XML returned by the platform

* Added "Nebula Logger" as a label prefix for metadata types AnimationRule, CustomPermission, FlexiPage, GlobalValueSet, LWCs, PermissionSet, VF page

* Resolved #488 by adding new LoggParameter__mdt record EnableLogEntryEventStream - when set to false, the buttons on the LWC are hidden, input elements are disabled, and a warning message is displayed

* Added missing unit test for a recently-added guard clause in LogManagemenetDataSelector

* Added link in Logger.cls to Trust API's docs site

* Added conditional rendering to the release notes button in LWC loggerHomeHeader to only show if Logger's version number has been loaded

* Added new control on logEntryEventStream LWC to set the max number of events to deliver before the component auto-pauses the stream. This helps avoid unintentionally consuming the org's daily limit for platform event delivery allocations

* Updated LoggerHomePage flexipage to always display LoggerAdmin dashboard (even when there are errors), removed <runningUser> XML node in LoggerAdmin dashboard

* Updated loggerHomePage LWC to display summary info about Nebula Logger plugins installed in the current org

* Excluding the custom index on LogEntry__c.OriginLocation__c from the managed package via .forceignore. One person reported a gack when deploying the metadata from GitHub, so as a precaution, I'm excluding it from the managed package this release

* Added version-specific release note link in the manage package's sfdx-project.json file

* Slightly updated the commit message used in build.yml

* Added sf commands to README.md
  • Loading branch information
jongpie authored Jun 29, 2023
1 parent 36f7440 commit a834b5a
Show file tree
Hide file tree
Showing 362 changed files with 965 additions and 528 deletions.
3 changes: 2 additions & 1 deletion .forceignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@

nebula-logger/managed-package/sfdx-project.json
nebula-logger/managed-package/**/*.animationRule-meta.xml
nebula-logger/managed-package/**/*.indx-meta.xml
nebula-logger/managed-package/**/*.testSuite-meta.xml
/**/Admin.profile-meta.xml

Expand All @@ -17,4 +18,4 @@ nebula-logger/managed-package/**/*.testSuite-meta.xml

# LWC Jest
**/__tests__/**
**/jest-mocks/**
**/jest-mocks/**
2 changes: 1 addition & 1 deletion .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -362,7 +362,7 @@ jobs:
npx sfdx bummer:package:aliases:sort
npx prettier --write ./sfdx-project.json
git add ./sfdx-project.json
git commit -m "Created new package version"
git commit -m "Created new core unlocked package version"
git push
promote-package-versions:
Expand Down
24 changes: 15 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,21 +5,27 @@

The most robust logger for Salesforce. Works with Apex, Lightning Components, Flow, Process Builder & Integrations. Designed for Salesforce admins, developers & architects.

## Unlocked Package - v4.10.6
## Unlocked Package - v4.11.0

[![Install Unlocked Package in a Sandbox](./images/btn-install-unlocked-package-sandbox.png)](https://test.salesforce.com/packaging/installPackage.apexp?p0=04t5Y0000023SCqQAM)
[![Install Unlocked Package in Production](./images/btn-install-unlocked-package-production.png)](https://login.salesforce.com/packaging/installPackage.apexp?p0=04t5Y0000023SCqQAM)
[![Install Unlocked Package in a Sandbox](./images/btn-install-unlocked-package-sandbox.png)](https://test.salesforce.com/packaging/installPackage.apexp?p0=04t5Y0000023SI6QAM)
[![Install Unlocked Package in Production](./images/btn-install-unlocked-package-production.png)](https://login.salesforce.com/packaging/installPackage.apexp?p0=04t5Y0000023SI6QAM)
[![View Documentation](./images/btn-view-documentation.png)](https://jongpie.github.io/NebulaLogger/)

`sfdx package install --wait 20 --security-type AdminsOnly --package 04t5Y0000023SCqQAM`
`sf package install --wait 20 --security-type AdminsOnly --package 04t5Y0000023SI6QAM`

## Managed Package - v4.10.0
`sfdx force:package:install --wait 20 --securitytype AdminsOnly --package 04t5Y0000023SI6QAM`

[![Install Managed Package in a Sandbox](./images/btn-install-managed-package-sandbox.png)](https://test.salesforce.com/packaging/installPackage.apexp?mgd=true&p0=04t5Y0000015nWeQAI)
[![Install Managed Package in Production](./images/btn-install-managed-package-production.png)](https://login.salesforce.com/packaging/installPackage.apexp?mgd=true&p0=04t5Y0000015nWeQAI)
[![View Milestone](./images/btn-view-managed-package-milestone.png)](https://github.com/jongpie/NebulaLogger/milestone/10?closed=1)
---

## Managed Package - v4.11.0

[![Install Managed Package in a Sandbox](./images/btn-install-managed-package-sandbox.png)](https://test.salesforce.com/packaging/installPackage.apexp?mgd=true&p0=04t5Y0000023SI1QAM)
[![Install Managed Package in Production](./images/btn-install-managed-package-production.png)](https://login.salesforce.com/packaging/installPackage.apexp?mgd=true&p0=04t5Y0000023SI1QAM)
[![View Milestone](./images/btn-view-managed-package-milestone.png)](https://github.com/jongpie/NebulaLogger/milestone/11?closed=1)

`sf package install --wait 30 --security-type AdminsOnly --package 04t5Y0000023SI1QAM`

`sfdx package install --wait 30 --security-type AdminsOnly --package 04t5Y0000015nWeQAI`
`sfdx force:package:install --wait 20 --securitytype AdminsOnly --package 04t5Y0000023SI1QAM`

---

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
<ApexClass xmlns="http://soap.sforce.com/2006/04/metadata">
<apiVersion>57.0</apiVersion>
<apiVersion>58.0</apiVersion>
<status>Active</status>
</ApexClass>
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
<ApexClass xmlns="http://soap.sforce.com/2006/04/metadata">
<apiVersion>57.0</apiVersion>
<apiVersion>58.0</apiVersion>
<status>Active</status>
</ApexClass>
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
<ApexClass xmlns="http://soap.sforce.com/2006/04/metadata">
<apiVersion>57.0</apiVersion>
<apiVersion>58.0</apiVersion>
<status>Active</status>
</ApexClass>
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
<ApexClass xmlns="http://soap.sforce.com/2006/04/metadata">
<apiVersion>57.0</apiVersion>
<apiVersion>58.0</apiVersion>
<status>Active</status>
</ApexClass>
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
<ApexClass xmlns="http://soap.sforce.com/2006/04/metadata">
<apiVersion>57.0</apiVersion>
<apiVersion>58.0</apiVersion>
<status>Active</status>
</ApexClass>
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
<ApexClass xmlns="http://soap.sforce.com/2006/04/metadata">
<apiVersion>57.0</apiVersion>
<apiVersion>58.0</apiVersion>
<status>Active</status>
</ApexClass>
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
<ApexClass xmlns="http://soap.sforce.com/2006/04/metadata">
<apiVersion>57.0</apiVersion>
<apiVersion>58.0</apiVersion>
<status>Active</status>
</ApexClass>
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
<ApexClass xmlns="http://soap.sforce.com/2006/04/metadata">
<apiVersion>57.0</apiVersion>
<apiVersion>58.0</apiVersion>
<status>Active</status>
</ApexClass>
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
<ApexClass xmlns="http://soap.sforce.com/2006/04/metadata">
<apiVersion>57.0</apiVersion>
<apiVersion>58.0</apiVersion>
<status>Active</status>
</ApexClass>
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
<ApexClass xmlns="http://soap.sforce.com/2006/04/metadata">
<apiVersion>57.0</apiVersion>
<apiVersion>58.0</apiVersion>
<status>Active</status>
</ApexClass>
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
<ApexClass xmlns="http://soap.sforce.com/2006/04/metadata">
<apiVersion>57.0</apiVersion>
<apiVersion>58.0</apiVersion>
<status>Active</status>
</ApexClass>
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
<ApexClass xmlns="http://soap.sforce.com/2006/04/metadata">
<apiVersion>57.0</apiVersion>
<apiVersion>58.0</apiVersion>
<status>Active</status>
</ApexClass>
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" ?>
<ApexPage xmlns="http://soap.sforce.com/2006/04/metadata">
<apiVersion>57.0</apiVersion>
<apiVersion>58.0</apiVersion>
<availableInTouch>false</availableInTouch>
<confirmationTokenRequired>false</confirmationTokenRequired>
<description>Página predeterminada de límite superado de Plataforma Lightning</description>
Expand Down
2 changes: 1 addition & 1 deletion config/experience-cloud/pages/ChangePassword.page-meta.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" ?>
<ApexPage xmlns="http://soap.sforce.com/2006/04/metadata">
<apiVersion>57.0</apiVersion>
<apiVersion>58.0</apiVersion>
<availableInTouch>false</availableInTouch>
<confirmationTokenRequired>false</confirmationTokenRequired>
<description>Página de cambio de contraseña predeterminada de Sitios de Salesforce</description>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" ?>
<ApexPage xmlns="http://soap.sforce.com/2006/04/metadata">
<apiVersion>57.0</apiVersion>
<apiVersion>58.0</apiVersion>
<availableInTouch>false</availableInTouch>
<confirmationTokenRequired>false</confirmationTokenRequired>
<description>Página de inicio de experiencias predeterminadas</description>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" ?>
<ApexPage xmlns="http://soap.sforce.com/2006/04/metadata">
<apiVersion>57.0</apiVersion>
<apiVersion>58.0</apiVersion>
<availableInTouch>false</availableInTouch>
<confirmationTokenRequired>false</confirmationTokenRequired>
<description>Página de inicio de sesión para experiencias predeterminadas</description>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" ?>
<ApexPage xmlns="http://soap.sforce.com/2006/04/metadata">
<apiVersion>57.0</apiVersion>
<apiVersion>58.0</apiVersion>
<availableInTouch>false</availableInTouch>
<confirmationTokenRequired>false</confirmationTokenRequired>
<description>Página de inscripción automática de experiencias predeterminadas</description>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" ?>
<ApexPage xmlns="http://soap.sforce.com/2006/04/metadata">
<apiVersion>57.0</apiVersion>
<apiVersion>58.0</apiVersion>
<availableInTouch>false</availableInTouch>
<confirmationTokenRequired>false</confirmationTokenRequired>
<description>Página de confirmación de registro de experiencias predeterminadas</description>
Expand Down
2 changes: 1 addition & 1 deletion config/experience-cloud/pages/Exception.page-meta.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" ?>
<ApexPage xmlns="http://soap.sforce.com/2006/04/metadata">
<apiVersion>57.0</apiVersion>
<apiVersion>58.0</apiVersion>
<availableInTouch>false</availableInTouch>
<confirmationTokenRequired>false</confirmationTokenRequired>
<description>Página predeterminada de Plataforma Lightning para errores post-autenticación</description>
Expand Down
2 changes: 1 addition & 1 deletion config/experience-cloud/pages/FileNotFound.page-meta.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" ?>
<ApexPage xmlns="http://soap.sforce.com/2006/04/metadata">
<apiVersion>57.0</apiVersion>
<apiVersion>58.0</apiVersion>
<availableInTouch>false</availableInTouch>
<confirmationTokenRequired>false</confirmationTokenRequired>
<description>Página predeterminada de página/datos no encontrados de Plataforma Lightning</description>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" ?>
<ApexPage xmlns="http://soap.sforce.com/2006/04/metadata">
<apiVersion>57.0</apiVersion>
<apiVersion>58.0</apiVersion>
<availableInTouch>false</availableInTouch>
<confirmationTokenRequired>false</confirmationTokenRequired>
<description>Página Contraseña olvidada predeterminada de Sitios de Salesforce</description>
Expand Down
2 changes: 1 addition & 1 deletion config/experience-cloud/pages/InMaintenance.page-meta.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" ?>
<ApexPage xmlns="http://soap.sforce.com/2006/04/metadata">
<apiVersion>57.0</apiVersion>
<apiVersion>58.0</apiVersion>
<availableInTouch>false</availableInTouch>
<confirmationTokenRequired>false</confirmationTokenRequired>
<description>Página predeterminada de Plataforma Lightning en mantenimiento</description>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" ?>
<ApexPage xmlns="http://soap.sforce.com/2006/04/metadata">
<apiVersion>57.0</apiVersion>
<apiVersion>58.0</apiVersion>
<availableInTouch>false</availableInTouch>
<confirmationTokenRequired>false</confirmationTokenRequired>
<description>Página Confirmación de registro de usuario predeterminada de Sitios de Salesforce</description>
Expand Down
6 changes: 4 additions & 2 deletions config/linters/lint-staged.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,11 @@ module.exports = {
'sfdx-project.json': () => {
return `npm run package:version:number:fix`;
},
'*.{cls,cmp,component,css,html,js,json,md,page,trigger,yaml,yml}': filenames => filenames.map(filename => `prettier --write '${filename}'`),
'*.{cls,cmp,component,css,html,js,json,md,page,trigger,xml,yaml,yml}': filenames => filenames.map(filename => `prettier --write '${filename}'`),
'**/lwc/**': filenames => {
return [`eslint --config ./config/linters/.eslintrc.json ${filenames.join(' ')} --fix`, `npm run test:lwc`];
return [`eslint --config ./config/linters/.eslintrc.json ${filenames.join(' ')} --fix`];
// FIXME this command should only run tests for the changed LWCs (instead of running tests for all LWCs)
// return [`eslint --config ./config/linters/.eslintrc.json ${filenames.join(' ')} --fix`, `npm run test:lwc`];
}
// FIXME this command should only scan the changed Apex files (instead of scanning all Apex files)
// '*.{cls,trigger}': () => {
Expand Down
4 changes: 4 additions & 0 deletions docs/apex/Configuration/LoggerParameter.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,10 @@ Provides a centralized way to load parameters for SObject handlers &amp; plugins

Indicates if Nebula Logger will make an async callout to `https://api.status.salesforce.com` to get additional details about the current org, which is then stored on the Log\_\_c record. Controlled by the custom metadata record `LoggerParameter.CallStatusApi`, or `false` as the default

#### `ENABLE_LOG_ENTRY_EVENT_STREAM``Boolean`

Indicates if Nebula Logger&apos;s LWC `logEntryEventStream` is enabled. The component uses the Emp API, which counts towards orgs&apos; daily delivery allocations for platform events. To help reduce usage of the daily allocation limit, orgs can disable the LWC. Controlled by the custom metadata record `LoggerParameter.EnableLogEntryEventStream`, or `true` as the default

#### `ENABLE_STACK_TRACE_PARSING``Boolean`

Indicates if Nebula Logger will parse a stack trace for each log entry, which is then used to populate fields like `LogEntry__c.StackTrace__c` and `LogEntry__c.OriginLocation__c`. Controlled by the custom metadata record `LoggerParameter.EnableStackTraceParsing`, or `true` as the default
Expand Down
14 changes: 14 additions & 0 deletions docs/apex/Configuration/LoggerPlugin.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,20 @@ List&lt;LoggerPlugin_t&gt;

The list of matching `LoggerPlugin_t` records

#### `getPluginConfigurations()``List<LoggerPlugin_t>`

Returns all enabled `LoggerPlugin_t` records, based on `IsEnabled__c == true`

##### Return

**Type**

List&lt;LoggerPlugin_t&gt;

**Description**

The list of enabled `LoggerPlugin_t` records

#### `newBatchableInstance(String apexClassTypeName)``Batchable`

Creates an instance of the class `LoggerPlugin.Batchable` based on the provided `LoggerPlugin_t` configuration
Expand Down
14 changes: 14 additions & 0 deletions docs/apex/Log-Management/LogEntryEventStreamController.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,4 +24,18 @@ List&lt;String&gt;

The instance of `List&lt;String&gt;`, containing the list of columns to be displayed in

#### `isEnabled()``Boolean`

Indicates if the LWC `logEntryEventStream` has been enabled (default) or disabled

##### Return

**Type**

Boolean

**Description**

The `Boolean` value of the `LoggerParameter_t` record `LoggerParameter.EnableLogEntryEventStream`

---
8 changes: 4 additions & 4 deletions docs/apex/Log-Management/LoggerHomeHeaderController.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,10 @@ An instance of `LoggerHomeHeaderController.Environment`

##### Properties

###### `loggerEnabledPlugins``String`

###### `loggerEnabledPluginsCount``Integer`

###### `loggerNamespacePrefix``String`

###### `loggerVersionNumber``String`
Expand All @@ -44,8 +48,6 @@ An instance of `LoggerHomeHeaderController.Environment`

###### `organizationDomainUrl``String`

###### `organizationEnvironment``String`

###### `organizationFormattedCreatedDate``String`

###### `organizationId``String`
Expand All @@ -64,8 +66,6 @@ An instance of `LoggerHomeHeaderController.Environment`

###### `organizationReleaseVersion``String`

###### `organizationStatus``String`

###### `organizationType``String`

---
2 changes: 1 addition & 1 deletion docs/apex/Logger-Engine/Logger.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ Enum used to control how LogEntryEvent\_\_e records are inserted

#### `callStatusApi()``StatusApiResponse`

**This is only intended to be used internally by Nebula Logger, and is subject to change.** Calls Salesforce&apos;s API endpoint https://api.status.salesforce.com/v1/instances/ to get more details about the current org, including the org&apos;s release number and release version
**This is only intended to be used internally by Nebula Logger, and is subject to change.** Calls Salesforce&apos;s API endpoint https://api.status.salesforce.com/v1/instances/ to get more details about the current org, including the org&apos;s release number and release version. Trust API docs available at https://api.status.salesforce.com/v1/docs/

##### Return

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
<ApexClass xmlns="http://soap.sforce.com/2006/04/metadata">
<apiVersion>57.0</apiVersion>
<apiVersion>58.0</apiVersion>
<status>Active</status>
</ApexClass>
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
<ApexClass xmlns="http://soap.sforce.com/2006/04/metadata">
<apiVersion>57.0</apiVersion>
<apiVersion>58.0</apiVersion>
<status>Active</status>
</ApexClass>
17 changes: 17 additions & 0 deletions nebula-logger/core/main/configuration/classes/LoggerParameter.cls
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,23 @@ public class LoggerParameter {
private set;
}

/**
* @description Indicates if Nebula Logger's LWC `logEntryEventStream` is enabled. The component uses
* the Emp API, which counts towards orgs' daily delivery allocations for platform events.
* To help reduce usage of the daily allocation limit, orgs can disable the LWC.
* Controlled by the custom metadata record `LoggerParameter.EnableLogEntryEventStream`,
* or `true` as the default
*/
public static final Boolean ENABLE_LOG_ENTRY_EVENT_STREAM {
get {
if (ENABLE_LOG_ENTRY_EVENT_STREAM == null) {
ENABLE_LOG_ENTRY_EVENT_STREAM = getBoolean('EnableLogEntryEventStream', true);
}
return ENABLE_LOG_ENTRY_EVENT_STREAM;
}
private set;
}

/**
* @description Indicates if Nebula Logger will parse a stack trace for each log entry, which is then used to populate
* fields like `LogEntry__c.StackTrace__c` and `LogEntry__c.OriginLocation__c`.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
<ApexClass xmlns="http://soap.sforce.com/2006/04/metadata">
<apiVersion>57.0</apiVersion>
<apiVersion>58.0</apiVersion>
<status>Active</status>
</ApexClass>
Loading

0 comments on commit a834b5a

Please sign in to comment.