Summer'20 Release Notes
The Sandbox Preview window for Sumnmer ‘20 begins on May 29, 2020. If you would like your sandbox to take part, it must be active on a preview instance before then.
1. Control How to Serialize and Deserialize Apex Types
The new @JsonAccess annotation defined at Apex class level controls whether instances of the class can be serialized or deserialized. If the annotation restricts JSON serialization and deserialization, a runtime JSONException exception is thrown.
This example code shows an Apex class marked with the @JsonAccess annotation.
@JsonAccess( serializeable='always||samePackage||sameNamespace||never', deserializable='....' ) public class Foo {}
2. Share CSS Styles Among Lightning Web Components
Create a consistent look and feel for Lightning web components by using a common CSS module. Define styles in the CSS module, and import the module into the components that share those styles.
View Example
Close
- Create a component that contains a CSS file and a configuration file. The folder and filenames must be identical. This component is your CSS module.
cssLibrary ├──cssLibrary.css └──cssLibrary.js-meta.xml
- In the CSS file, define the style rules to share.
/* cssLibrary.css */ h1 { font-size: xx-large; }
- The configuration file needs only these tags.
<!-- cssLibrary.js-meta.xml --> <?xml version="1.0" encoding="UTF-8" ?> <LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata"> <apiVersion>49.0</apiVersion> <isExposed>false</isExposed> </LightningComponentBundle>
- In the CSS file of a Lightning web component, import the module.
myComponent ├──myComponent.html ├──myComponent.js ├──myComponent.js-meta.xml └──myComponent.css
/* myComponent.css */ @import 'c/cssLibrary'; /* Define other style rules for myComponent here */
You can import one or more CSS modules./* Syntax */ @import 'namespace/moduleName';
- Imported style rules are applied to the template just like non-imported style rules. All style rules cascade. In the myComponent.html template, the text in the <h1> tag uses the xx-large style defined in cssLibrary.css.
<!-- myComponent.html --> <template> <h1>Words to the Wise</h1> <p>An apple a day keeps the doctor away</p> </template>
3. Get Information About the Current Lightning Community
Use the @salesforce/community scoped module to import information about the current community context when developing Lightning web components for Lightning communities.
4. Develop Flow Screen Components That Work for Multiple Objects (Beta)
Now you can create reusable flow screen components that use the generic sObject and sObject[] data types. Build one component that works for multiple objects, rather than one for each individual object. For example, you can build a data table component that works with any collection of records, from accounts and contacts to custom objects.
Beta feature
Close
5. Get Child Elements by Tag or Class Name in Lightning Web Components
The Element.getElementsByTagName() and Element.getElementsByClassName() APIs are now supported in the LightningElement base class for Lightning web components. A parent element can use getElementsByTagName() to get a list of its child elements with a specified tag. A parent element can use getElementsByClassName() to get a list of its child elements with a specified class.
6. Speed Up Org Maintenance with the Optimizer App
Introducing the Salesforce Optimizer app, the interactive way to review and act on expert recommendations for maintaining your Salesforce org’s implementation. No need to install a package, just enable the app, click to run, and sit back while we inspect your org. Quickly identify issues that require immediate attention by using the sortable results list view. Read through the Salesforce recommendations to plan next steps. Use quick links on result pages to go directly to the applicable Setup page. Previously, you could only consume Optimizer content by scrolling through an English language report delivered as a PDF file.
7. Break Up Your Record Details with Dynamic Forms (Non-GA Preview)
Dynamic Forms is the next step in the evolution of Lightning record pages. It adds the ability to configure record detail fields and sections inside the Lightning App Builder.
Non-GA Preview feature
Close
8. Work Through Lists with Ease Using Split View for Standard Navigation
Do you often find yourself working through multiple records in a list? With split view, you can see a list view and a record side by side. To move on to a new record, select it from the split view, and the new record opens with the list still in view. No more navigating back and forth between your list and your records. Split view is great for going through records in sequence or for quickly skimming through a set of records. The split view panel is collapsible for extra flexibility.
Changed Limits
- You can send up to 20,000 iOS and 10,000 Android push notifications per hour per org.
- Use More Bulk Requests. For both Bulk API and Bulk API 2.0, the limit for the number of batches has increased from 10,000 to 15,000 per day. For both Bulk API and Bulk API 2.0, the limit for the number of records that can be processed for ingest operations has increased from 100 million to 150 million per day
- The deleteImmediate() method now supports batch deletes of up to 2,000 big object records at a time, which is consistent with the SOAP API limits for the deleteByExample() method.
Useful links:
Comments powered by CComment