Salesforce CLI v47 Release Notes

Here are the new and changed features in recent updates of Salesforce CLI and the salesforcedx plug-in.

Run sfdx version to display the version of Salesforce CLI installed on your computer. Run sfdx plugins --core to display the version of the installed salesforcedx plug-in.

Run sfdx update to update both the CLI and the salesforcedx plug-in to the latest available version.

Click here for the v46 release notes.

47.1.5 (October 10, 2019)

Welcome to the first release of version 47 of the salesforcedx plug-in for Salesforce CLI in Winter '20. Here's what's changed:

Installation Notes

We're still working on creating salesforcedx v47 installers. However, you can easily update Salesforce CLI to v47 by running sfdx update or any CLI command. If you are installing Salesforce CLI for the first time, see Install Salesforce CLI to install the CLI for your operating system, then run sfdx update.

Uninstall the Pre-Release Version of the salesforcedx CLI Plug-In

If you installed the pre-release version 47 of the salesforcedx plug-in, uninstall it, then run the update command.

sfdx plugins:uninstall salesforcedx
sfdx update

ISV Hammer Commands Now in Beta

These new commands are now available in salesforcedx v47 (beta).

force:package:hammertest:list: Lists the statuses of running and completed ISV Hammer tests.

force:package:hammertest:report: Returns the status of a running ISV Hammer test or the results of a completed hammer test.

force:package:hammertest:run: Runs ISV Hammer for the specified package version and subscriber orgs.

Note: As a beta feature, ISV Hammer is a preview and isn’t part of the “Services” under your master subscription agreement with Salesforce. Use this feature at your sole discretion, and make your purchase decisions only on the basis of generally available products and features. Salesforce doesn’t guarantee general availability of this feature within any particular time frame or at all, and we can discontinue it at any time. This feature is for evaluation purposes only, not for production use. It’s offered as is and isn’t supported, and Salesforce has no liability for any harm or damage arising out of or in connection with it. All restrictions, Salesforce reservation of rights, obligations concerning the Services, and terms for related Non-Salesforce Applications and Content apply equally to your use of this feature. You can provide feedback and suggestions for this feature in the ISV Hammer group in the Trailblazer Community.

New Commands

These new commands are available in salesforcedx v47.

force:auth:device:login(beta). You can authorize an org using a device code. This means that you can use Salesforce CLI to authenticate in a Docker container or any headless environment without setting up JWT. For more information, see OAuth 2.0 Device Authentication Flow in Salesforce Help or Remote Development in the Salesforce Extensions for Visual Studio Code User Guide.

Note: The force:auth:device:login command is in beta and has been released early so we can collect your feedback. It may contain significant problems, undergo major changes, or be discontinued. If you encounter any problems, or want to request an enhancement, open a GitHub issue. The use of this feature is governed by the Salesforce.com Program Agreement.

New Parameters

These parameters are new in salesforcedx v47.

force:package:hammertest:run --apextestinterface | -n (beta). After upgrade validation, runs the Apex tests in the subscriber org that implement this interface.

force:package:version:create. We added several parameters to this command:

ParameterDescription
--codecoverageCalculates and stores the code coverage percentage by running the Apex tests included in the package version. To promote a new managed package version to the released state, the code coverage minimum must be met.
--postinstallscriptFor managed packages only, specifies an Apex script to run automatically in the subscriber org after the managed package is installed or upgraded.
--postinstallurlSpecifies a URL to post-install instructions for subscribers.
--releasenotesurlSpecifies a URL to release notes.
--uninstallscriptFor managed packages only, specifies an Apex script to run automatically in the subscriber org before the managed package is uninstalled.

Changed Commands

The functionality for these commands changed in weekly releases of salesforcedx v46 or in the pre-release of v47.

force:org:delete -u MyDevSandbox. Deleting a sandbox created by the CLI is now supported.

force:package:install --securitytype | -s. We changed the default value changed from AllUsers to AdminsOnly.

force:source:status, force:source:push, force:source:pull. Source tracking is supported for Einstein Bots metadata in scratch orgs.