Skip to main content
Group

Unlocked Packages

This is the Trailblazer Community for Unlocked Packages (GA in Winter '19) that is designed for Enterprise Customers and System Integrators to organize, distribute and manage Apps and Metadata on Salesforce Platform. It is part of Salesforce DX and works in tandem with other DX technologies like CLI and scratch orgs. Please read the documentation available here to learn more. We encourage you to participate in this Trailblazer Community, ask any questions, share critical feedback, and/or report bugs. We'll do our best to respond within 24 hours. Welcome aboard!

I'm trying to package and Enhanced LWR Experience Cloud Site, and I can see DigitalExperienceBundle is actually supported according to the Metadata Coverage Report. However, I'm still getting some errors on dependent metadata while trying to package it:

site/My_LWR1: Packaging is not supported for site workspaces

I couldn't really find any official documentation on whether this is supported (neither could Claude 😅). 

Anyone having an official answer on this ? 

Thank you ! 

 

cc

@* Experience Cloud *

 

 

1 answer
  1. Apr 17, 1:33 AM

    Hi @Fabien Taillon - The metadata coverage report is misleading here. DigitalExperienceBundle being listed as supported refers to the bundle metadata itself, but the site workspace — which includes the runtime configuration, theme layout, and published state — is a separate concern that currently cannot be packaged.

    The error you're seeing is accurate. Site workspaces are explicitly excluded from packaging support even when the underlying DigitalExperienceBundle deploys cleanly. This is a known gap that hasn't been formally documented well, which is why it's hard to find an official answer.

    In practice most teams handle this by packaging the LWC components, custom objects, and other dependent metadata in the unlocked package, then deploying the Experience Cloud site separately via the Metadata API or a scratch org snapshot outside the package boundary. It's not ideal but it's the only reliable path right now.

    If you need this officially confirmed, your best source would be a Salesforce support case rather than documentation — the support team can give you a written confirmation of current packaging limitations for Enhanced LWR sites, which also gives you something to reference if the behavior changes in a future release.

    Would be curious if others on the thread have found a workaround that keeps the site fully within the package boundary.

0/9000

Package Bundles (Developer Preview) 

 

We are excited to announce the launch of the Developer Preview of Package Bundles! 

 

Package Bundles enables Salesforce partners and customers to develop, install, upgrade, and manage multiple managed second-generation packages (2GPs) and unlocked packages as if they were a single unit.  

 

Please fill out this short form if you would like to participate in the Developer Preview. Your participation and feedback is deeply appreciated! Thank You! 

18 comments
  1. Mar 27, 4:03 PM

    @Igor Stosic

    we're not too worried about limitations of the pilot :) We just want to know if this will solve our "base package" problem (where a customer can't just install our app from AppExchange, they have to first follow some instructions and install the base package from some other link). 

    If I understand correctly, when the bundling feature is live, we'll be able to link a "bundle" to our App Exchange listings, so customers can install the app *and its dependencies* in one smooth journey. (I'm guessing that's not possible in the pilot, but that's OK with us).

0/9000

Unlocked packages need to post install and uninstall scripts just like 2GPs do

.  Is there any scenario where these features will be brought to unlocked packages? 

 

2GP packages have some great features we could use in our ULPs:

  1. postInstallScript
  2. uninstallScript
  3. postInstallUrl
  4. releaseNotesUrl

Because of the limitations uninstalling ULPs (permissions sets, active flows, etc.) having the ability to perform some cleanup might help. 

 

Heck, I can't even get rid of an LWC property without tripping over an error, "You can’t remove the following public properties: <propertyName/>, because the component is part of a managed package," when it is part of my unlocked package.  To get around it I need to either ignore the field and keep it forever, rename it?, or uninstall/reinstall the package.

0/9000

Feature Requests for Trailforce, Environment Hub and Scratch Orgs

 

Hello Salesforce Trailblazers,

 

I would love to hear from you on what's working and not working when it comes to:

  • Environment Hub
  • Trialforce
  • Scratch Orgs
  • General Environment Management in Salesforce

Where would you like us to invest and why, when it comes to managing your Environments? Please post here with your thoughts and suggestions.

If you would like to talk to me, please ping me (dburki@salesforce.com) and I would love to set up some time to talk to you. Thank you!

9 comments
  1. Dec 30, 2025, 9:45 AM

    For scratch orgs I had several issues in the last year:

    - LibkedIn Sales Navigator does not seem to be possible to automatically enable during the scratch org creation. This caused issues when trying to deploy a flexipage that uses the LinkedIn sales navigator components. I guess it could work of we use the components from the managed package because it can install it beforehand ( but I think if we want to use the components by enabling the feature they have a different api name and cannot be used in a scratch org).

    - marketing cloud (old pardot) related features and Einstein lead scoring seems not available in scratch orgs. There are some related components that cannot be used in flexipages, they fail when trying to install in a scratch org.

0/9000

In my case, unlocked package B already has dependencies on packages C and D and its package version created fine. 

 

I then tried creating package A with a dependencies on B, C , and D.  The dependencies on C and D are identical between A's and B's sfdx-project.json. 

 

And yes... all these packages are sharing the same devhub

Create version status: Error

Error (MultipleErrorsError): Multiple errors occurred:

(1) An error occurred while trying to install a package dependency, ID 04xxx00000Bxxxx: The package you're installing depends on package 'C', version '3.0'. Install package 'C' in the target org before you install package 'B'.

(2) An error occurred while trying to install a package dependency, ID 04xxx00000Bxxxx: The package you're installing depends on package 'D', version '3.0'. Install package 'D' in the target org before you install package 'B'.

6 answers
  1. Dec 19, 2025, 10:29 AM

    In the end, I had to settle for putting all the packages in the same repository which ultimately meant they were all in the same sfdx-package.json, but that wasn't too different from what they were already. 

     

    Luckily, these are just test packages and I can delete them and retry them in separate directories later.

0/9000

Have you figured out how to enable slack in your scratch orgs?   

 

Recently I started seeing announcements when I logged in to our production org that Slack is now included with Salesforce.  Since we are not a current Slack customer we thought it would be interesting to see what it looks like inside a scratch org., However, I didn't notice any slack features or settings in the current documentation for building and configuring scratch orgs. 

 

Scratch Org Features

 

Scratch Org Settings

 

@* Salesforce Developers *

 

#Slack Community

2 answers
  1. Nov 10, 2025, 7:27 PM

    If we don't currently have slack enabled then neither of those options will work, right? 

     

    I was hoping we could enable Slack in a scratch org to see what it looked like and how we might start using it over Chatter, before making a change to our production org. 

      

    Maybe we'll check out a developer-edition org...

0/9000

When creating a new package version for one path, why are profiles from another path included? 

 

  1. My sfdx-project.json has two package directories, "force-app" and "mga"
  2. force-app is unpackaged
  3. mga is 
  4. when I try creating a package version for mga, I get an errors for each profile in force-app/main/default/profiles complaining the profile, "..was named in package.xml, but was not found in zipped directory"

I don't want profiles from force-app to be included in mga's package.  I don't want anything from force-app included.  And why does it only complain about the profiles?  There are over 10000 files over there I want to ignore. 

 

Has anyone else seen this craziness?

2 answers
0/9000

I've created a new package version for omnistudio components and it should have included both an integration procedure and a data transform, but only the transform made it.   

 

Both files are in `omnistudio/main/default/` directory in their respective directories, `omniIntegrationProcedures` and `omniDataTransforms`. 

 

Have you had any luck? 

 

@Unlocked Packages

1 answer
  1. Oct 22, 2025, 1:05 PM

    Salesforce is reporting this is "expected behavior." 

     

    In my case I told the support folks I disagree.  If you disagree, too, please report the issue and maybe open a case to express your thoughts.

0/9000

Package Bundles (Developer Preview) 

 

We are excited to announce the launch of the Developer Preview of Package Bundles! 

 

Package Bundles enables Salesforce partners and customers to develop, install, upgrade, and manage multiple managed second-generation packages (2GPs) and unlocked packages as if they were a single unit.  

 

Please fill out this short form if you would like to participate in the Developer Preview. Your participation and feedback is deeply appreciated! Thank You! 

 @Unlocked Packages

3 comments
  1. Oct 21, 2025, 8:06 AM

    @Dileep Burki thanks for the roadmap outline. I can see package bundles being of some use in the near-term, especially around carving out utilities shared across multiple packages. We will just have to rename them all for now, I guess, and only consider the non-global utilities.

0/9000

First, it is a valid feature

according to the doc. 

 

Trying to build a package version that contains OmniStudio components (Transforms, Integration Procedures, Omni Scripts).   

 

here's the config/project-scratch-def.json

{

"orgName": "My Package Org",

"edition": "Enterprise",

"features": [

"OmniStudioDesigner",

"OmniStudioMetadata",

"OmniStudioRuntime"

],

"settings": {

"OmniStudioSettings": {

"enableOmniStudioMetadata": true

}

}

}

And here's the packagedirectory entry

{

"versionName": "ver 0.1",

"versionNumber": "0.1.0.NEXT",

"path": "omnistudio",

"default": true,

"package": "Package Name",

"versionDescription": "Package Description",

"definitionFile": "config/project-scratch-def.json",

"apexTestAccess": {

"permissionSets": [

"OmniStudioExecution"

]

}

}

Has anyone else gotten these errors and found the cause?

2 answers
0/9000