Skip to content

Removed Chatter dependencies

Choose a tag to compare

@jongpie jongpie released this 20 Sep 14:19
· 103 commits to main since this release
fb6cd3e

For years, Nebula Logger has leveraged Chatter's field feed tracking functionality to automatically create Chatter posts for new Log__c and LogEntry__c records. In Salesforce, this can be done in 2 steps:

  1. Enabling feeds on a custom object, like Log__c
  2. Enabling feed tracking on a field within that object, such as Log__c.LoggedBy__c

When deploying metadata/installing packages, Salesforce will gracefully handle orgs with Chatter disabled:

  • When Chatter is enabled in the org, the trackFeedHistory node in field metadata is used to automatically enable Chatter's feed tracking in the appropriate fields
  • When Chatter is disabled in the org, the fields still deploy & the trackFeedHistory node is ignored/the deployment completes successfully

However, several of the App Builder pages (FlexiPage metadata) in Nebula Logger have been using the standard Chatter components to display the record's Chatter activity. Using these standard components has created a hard dependency on having Chatter enabled - orgs with Chatter disabled have been blocked from installing Nebula Logger.

Given that Nebula Logger's usage of Chatter is very simple (it only has field feed tracking enabled as a convenience - there is no other functionality in Nebula Logger that relies on Chatter), having Chatter disabled should not prevent orgs from utilizing Nebula Logger. As a compromise, this release removes the Chatter components from Nebula Logger's UI, but feed data is still automatically tracked on the backend in orgs that have Chatter enabled.

Core Unlocked Package Changes

Removed Chatter dependencies

  • Disabled Chatter in base scratch org file config/scratch-orgs/base-scratch-def.json to help implicitly test in the pipeline that Chatter is not required to deploy/install Nebula Logger
    • The experience cloud scratch org file config/scratch-orgs/experience-cloud-scratch-def.json will continue to have Chatter enabled to help test that Chatter being enabled doesn't cause problems either 😅
  • Removed all Chatter components in FlexiPage metadata to remove a dependency on Chatter being enabled in orgs - Chatter is no longer required 🥳
    • No changes have been made to the objects & fields that have Chatter feed tracking enabled (<trackFeedHistory>true</trackFeedHistory> in the field XML)

Installation Info

Core Unlocked Package - no namespace

Full Changelog: v4.11.3...v4.11.4