The Salesforce Developer’s Guide to the Summer ’24 Release

The Salesforce Developer’s Guide to the Summer ’24 Release

Attention Salesforce Developers — we’re excited to introduce you to the Summer ’24 Release Readiness program! Salesforce has three major releases each year, and with them comes a lot to read and learn about. If you don’t have time to read the 600+ pages of release notes in full, we’ve got you covered.

The Release Readiness program provides developers with easy-to-access information on the latest release. This article highlights the latest features and functionality updates to the Salesforce Platform, our AI and data tools, enhancements to Apex and Lightning Web Components, APIs, integrations, and more.

Read the full guide on the Salesforce Developers blog for even more updates and code samples. And that’s not all. You can learn more about the latest release by watching Release Readiness Live on Thursday, May 30, 2024 at 9 a.m. PT, or listening to it in podcast format.

Want to get release ready? Let’s get started!

Summer ’24 Salesforce Platform updates

Summer '24 is packed with innovations. Whether you work with the Salesforce Platform, Data Cloud, or Einstein 1 Studio, these innovations improve your quality of life as a developer.

Apex enhancements

Support for five-level SOQL relationship queries

  • Apex now supports SOQL relationship queries that traverse up to five levels of parent-child records. Note that this was previously supported only in REST APIs. To view an example of a SOQL statement with five levels of parent-child records, read the full guide.

FormulaEval class (Beta)

  • Use the FormulaEval class (Beta) to construct and evaluate formulas at Apex runtime. Use the new Formula.builder() method to create an instance of the FormulaBuilder to configure the formula. Read the full guide to view a simple example that shows how to create an instance of the FormulaBuilder class and evaluate a formula.

Apex Cursors (Beta)

  • Introducing Apex Cursors! Apex cursors enable the processing of large SOQL query results in smaller batches within a single transaction, avoiding the need to retrieve the entire result set at once. When used with Queueable Apex, they streamline the handling of extensive query results. To view an example code that shows how to use Apex cursors with Queueable to process a large number of files, read the full guide.

Improved Apex exception emails

  • When your Apex code encounters unhandled exceptions, the Apex exception emails now include the organization name, username, and My Domain name where the exception occurred.

For even more Apex updates, read the full guide.

LWC enhancements

  • You can now make LWCs URL-addressable, so you no longer need to embed your LWCs within an Aura component to make them URL-addressable. See code examples in the documentation to explore how to navigate to a URL-addressable component and pass state.
  • A new lightning/platformUtilityBarApi LWC module has been introduced, providing API methods to manage utilities within the utility bar, so you no longer need to work with Aura components to control utilities. Check the official documentation to learn more about the Utility Bar API methods.

Salesforce has been versioning LWCs since Winter '24. With the latest API version 61.0, the new features below are now available:

  • The ElementInternals API (see docs) is part of the custom elements API, allowing developers to manage a custom element's internal states and participate in form submissions and validations.
  • Lifecycle hooks using native browser APIs behave differently compared to lifecycle hooks that we had originally as a part of synthetic polyfill. Starting with LWC API version 61.0, LWCs use only native browser APIs to fire lifecycle hooks.
  • You can integrate third-party Web Components into Lightning Web Components (Beta feature). If you have a component built using Web Components, you don't have to rebuild it as an LWC. See the documentation to explore code examples and learn how to pass data between your LWC and the embedded third-party web component.
  • We continue updating Base components to prepare for future native shadow support. See the documentation to find the list of base components updated in this release.
  • Create a Lightning web component (LWC) that uses the Near Field Communication (NFC) plug-in to streamline business processes and accelerate data exchange.
  • Create a Lightning web component (LWC) that uses the Space Capture plug-in to capture an image showing the layout of a space. The LWC uses the device's native Lidar capability to capture 2D and 3D measurements within the Field Service mobile app.

For even more LWC updates, read the full guide.

Data Cloud highlights

In the age of AI, data is the new currency. Salesforce Data Cloud brings data integration and harmonization capabilities to the Salesforce Platform, allowing you to unify large volumes of data from multiple systems and unlock its potential through automation and AI for delivering personalized customer experiences at scale. The Summer '24 release seamlessly integrates Data Cloud with Salesforce, enabling you to leverage your data using familiar skills like creating reports, automating processes with flows or Apex, and providing a consistent experience.

  • Static SOQL can now be used with Data Cloud data model objects (DMOs), making it easier to work with Data Cloud DMOs in Apex. Previously, you had to write these queries dynamically and use the CdpQuery (see docs) in Apex. To view an example of SOQL working with a Data Cloud data model object, read the full guide.
  • You can now access the data graph metadata and data through REST APIs (see docs), enabling seamless integration with other systems and applications.
  • You can now package Data Cloud metadata types listed in the documentation with second-generation packaged (2GP) managed packages. Note that 2GP-managed packages for Data Cloud should consist of only metadata types related to Data Cloud.
  • Data Cloud-triggered flows can now be tested (see docs). With tests, you can quickly verify that your flow is behaving as intended without having to manually configure debug parameters for each debug run.
  • You can now create a lookup relationship between any DMO and a limited number of CRM objects in your org so that you can query from Apex or create a related list for Data Cloud data.
  • Data Cloud Related List Enrichments now offer support for Account objects (see docs).
  • You can create and access copy field enrichments for more objects from Setup (see docs). Previously only Leads and Contacts were supported.

For even more Data Cloud updates, read the full guide.

Einstein 1 Studio highlights

Einstein Copilot is now Generally Available!

Einstein Copilot provides conversational AI capability for your Salesforce app.

  • Copilot Builder is now GA. It lets you design, test, and troubleshoot your copilot.
  • Copilot is packed with a library of standard actions.
  • Extend and build actions for Copilot using Apex, Flows, or prompts.
  • We now support Copilot in scratch orgs.
  • All of your custom copilot actions can now be deployed with metadata APIs.
  • You now have analytics to measure adoption and usability for Einstein Copilot.

Einstein 1 Studio (including Prompt Builder, Copilot Builder, and Model Builder) and Data Cloud receive monthly feature updates. We will continue to update this section in our full guide to the Summer ’24 Release on the Salesforce Developers blog.

Development environments

  • The Scratch Org Snapshots feature lets you quickly replicate scratch orgs with required project dependencies. Manually configuring scratch orgs with packages, metadata, data, and other configurations can be time-consuming. With snapshots, you save a scratch org’s configuration and then use it to create identically-configured orgs much faster. This makes development and testing easier.
  • Data Mask (GA) enables admins and developers to mask sensitive data in sandboxes, such as Personally Identifiable Information (PII) or sales revenue.

Platform development tools

The Salesforce CLI receives updates every week. Check the Salesforce CLI release notes weekly for helpful updates. Recent major improvements include:

  • Salesforce CLI downloads, installations, and updates just got a lot faster, especially on Windows. We've significantly reduced the size of both the npm packages and the OS-specific installers.
  • You can now specify to the Salesforce CLI to decompose four more metadata types (Permission Set, Custom Labels, Sharing Rules, and Workflows) when it converts from mdapi to source format, in addition to the types it currently decomposes automatically (CustomObject and CustomObjectTranslation). This feature is in Beta.
  • Import and export test data more easily with the improved data import|export tree commands (Beta).

Packaging enhancements

  • External client apps, a new generation of connected apps, can now be packaged in 2GP-managed packages.
  • Iterate creating unlocked and 2GP packages quickly with new Async validation. With Async validation, the packages will be created without validation. To create a package with async validation, you can use the CLI command sf package version create –-async-validation <rest of command syntax>.
  • Skip the FeatureEnforcement handler (see docs) during package installation in scratch orgs to accelerate the process. This handler validates objects and features, but it isn't critical for temporary scratch org environments used for development and testing. Skipping it significantly reduces installation time, streamlining your development workflows. To skip feature enforcement during package installation, use the command sf package install --skip-handlers FeatureEnforcement <rest of command syntax>.

For more information on the latest development environment, development tools, and packaging enhancement updates, read the full guide.

APIs & integrations

  • You can now update a record using the value of its external ID with the new updateOnly parameter in REST API. Previously, you could only upsert a record using its external ID.
  • Ensure uninterrupted service by updating the URLs in your API calls to use your My Domain login URL. This proactive step will prevent any potential service disruptions. For detailed guidance, please refer to the documentation.
  • You can better manage event subscriptions with the Pub/Sub API (Beta). Use the configuration options via the new ManagedEventSubscription tooling objects to automatically track the events that a subscriber client consumed, and to resume a subscription from where it left off after a client disconnects.
  • You can now access more external data types with the custom adapter for Salesforce Connect.
  • The external client apps framework, a new and improved generation of connected apps, is rapidly gaining ground. This innovative framework now offers several powerful features, including Headless Login, Passwordless Login, Guest User Flows, and JSON Web Token (JWT) Access Tokens.
  • The new External Client App Manager allows you to create, manage, and update your external client apps from the Salesforce UI, in addition to using metadata APIs.

More Summer ’24 learning resources

要查看或添加评论,请登录