# Summer '20 Abridged

---

The [Salesforce Discord Collective](https://join.sfxd.org) Presents:  
**[THE SUMMER 20 RELEASE NOTES - ABRIDGED](https://cdn.discordapp.com/attachments/314860664885870592/660832931354509322/final_5e08a63309a3c50014a495f7_895504.mp4)**  
Best read from 1.5m distance

---

**[CRITICAL STUFF](https://media.makeameme.org/created/critical-updates.jpg)**

- [Lightning Sync](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_sales_lightning_sync_eosale.htm) will be [retired in Winter 21](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_sales_lightning_sync_for_g_eosale.htm). Recommended integration path: Einstein Activity Capture. This is the what, [5th release in a row](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_sales_sfo_retire.htm) they’ve [nuked some integration](https://www.theseoproject.org/wp-content/uploads/2016/08/delete-meme.jpg) with Google/Microsoft ? At this point I’d probably just recommend going third-party.
- [Pardot Connector](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_sales_pardot_v2_upgrade.htm) needs to be manually updated to v2.
- [After Save Flows](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_forcecom_flow_fbuilder_after-save_trigger.htm), [Platform Event Flows](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_forcecom_flow_fbuilder_platform_event_trigger.htm), and [Flows that Bypass User security](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_forcecom_flow_fbuilder_system_mode_no_sharing.htm) change [everything](https://www.youtube.com/watch?v=90WD_ats6eE) about Declarative Automation in Salesforce (but curb your enthusiasm a bit). Read our “Special Edition” at the end for more details, which also covers [Dynamic Forms](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_forcecom_lab_dynamic_forms.htm).
- Lightning Message Service (`LMS`) is [now GA-ed and available](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_lc_message_channel.htm). This **replaces** the janky `pubsub` module found with `lwc-recipes` and is now the official communication mechanism between VF pages, Aura, LWCs, and components placed in the lightning utility bar. See /u/temp\_sv\_dev 's [github repo here](https://github.com/tsalb/lwc-utils/pull/8/commits/e2330c539eef2e5b40ff8e93e6d460ecbeb3b350?diff=split&w=1) for some samples on how to swap out `pubsub`.
- [Some](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_sales_other_changes_permissions.htm) [Permissions](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_service_permissions.htm) [Changed](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_forcecom_general_permissions.htm) and [Need](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_security_other_changes_permissions.htm) [Review](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_vf_permissions.htm)

**GENERAL STUFF**

- [Paths now create Kanban views](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_sales_kanban_details_panel.htm) and are also subject to [confetti](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_sales_kanban_celebration.htm) which I assume means they’ve [merged](https://i.imgur.com/YlenUaq.jpg) Kanban and Path in the backend
- [Email Insights](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_sales_productivity_eac_email_insight.htm) just got a little bit smarter. Requires Einstein Activity Capture.
- [B2B Commerce Orders protested against confinement](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_sales_features_core_order.htm) and aren’t forcibly tied to Products anymore. <span style="text-decoration: line-through;">It’s worth a shout because a lot of companies did custom Order\_\_c due to this limitation</span>. Only applies to B2B Commerce, my bad.<span style="text-decoration: line-through;">  
    </span>
- The [Related Record](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_related_record_lookup.htm) component in the App Builder now allows showing the parent of a parent AND polymorphic relationships, which is actually super nice
- Knowledge [took the red pill](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_knowledge_sharing.htm) and now sees record access as it really is (Beta)
- [Dynamic Actions](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_lex_dynamic_actions.htm) don’t force you to open the Page Layout to changes Actions in Lightning (for desktop)
- [Salesforce Help Login now goes through trailblazer420.yolo](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_customhelp_sso_help.htm) which is OK for most people but annoying for implementation partners which have tons of the same user with the same email.
- [Mobile App](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_mobile_feature_overview_table.htm) team get the “Best Release Notes” award because I can’t summarize them more than they did. Seriously, great job. Also [Custom Notifications](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_mobile_newfeat_notification_builder_platform.htm) get a nice upgrade.

**FLOWS**

- The Critical stuff we wrote above
- Flow now [try to help you do Flows that suck less](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_forcecom_flow_fbuilder_guidance.htm) with in-app [prompts](https://media.discordapp.net/attachments/314860664885870592/713395812964499496/unknown.png) when you do [things that suck](https://cdn.discordapp.com/attachments/246568944213819393/550684188043640847/Screen_Shot_2019-02-28_at_9.22.07_AM.png)
- Debug Mode is now really a [Debug Mode](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_forcecom_flow_fbuilder_debug.htm) meaning data isn’t saved when you run the debug thank god finally pfiew
- [Passing Data to Flows now easier](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_forcecom_flow_fbuilder_pass_record.htm)
- Developers rejoice as [Apex-defined Variables](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_forcecom_flow_extend_apex_type.htm) can now be returned, and [Flows now accuerately indicate usage in debug logs](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_forcecom_flow_mgmnt_debug_logs.htm)

**COMMUNITIES**

- [Standard Actions Overrides](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_networks_override_standard_actions.htm)!
- A few personalization updates with [multi-level nav bar](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_networks_components_multilevel_navigation_menu.htm) and [some](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_networks_tile_menu_revamp.htm) [standard component](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_networks_page_management.htm) changes.
- Sharing data with external users now simpler thanks to [External Account Hierarchies](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_networks_external_account_hierarchy.htm)
- Salesforce have [Fixed a bug for the Service Appoinment Component](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_ls_review_comp.htm) which requires some manual setup.
- Other notes were either Previously announced (no more [Guest user owners](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_networks_reassign_guest_records.htm), etc) or Pilot ([LWC Build-your-Own](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_networks_developers_lwc.htm))

**SERVICE**

- Salesforce are releasing [their own CTI](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_voice.htm) which [seems to be a front for Amazon Connect](https://i.imgur.com/vK31GqS.jpg) and some SF polish like [automated transcription](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_voice_call_transcription.htm). Comes at extra cost, unsure if worth it ATM.
- Bots get [Multi-Language Support](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_einstein_bots_multi_language.htm), [Best-Practice Help Pages](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_einstein_bots_intent_event_docs.htm), [Skill-Based Routing to Agents](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_einstein_bots_skills_based_routing.htm), and [Builder](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_einstein_bots_builder_upgrades.htm) upgrades.
- Routing now allows [optional skills](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_omnichannel_iterative_routing.htm) which avoids huge queue times.
- Surveys are still not as good as GetFeedback but are [slowly](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_general_survey_merge_field.htm) [getting](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_general_salesforce_surveys.htm) there. [It’s kind of peppered accross the entire Release Notes though](https://releasenotes.docs.salesforce.com/en-us/search?query=surveys&version=summer20)

**REPORTS AND DASHBOARDS**

- [Flow Interviews](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_forcecom_flow_mgmnt_analyze_screen_flow_usage.htm) now also available for reporting
- [PriceBookEntries](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_sales_other_changes_custom_product_pricing_reports.htm) now targetable when creating Custom Report Types
- This was already the case for Formatted Data, but now [CSV](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_rd_reports_subscribe_attachment.htm) can now also be attached to subscriptions

**EINSTEIN**

- I may have missed this before but it seems that Salesforce have now decided to cover themselves re: the use of the Einstein name: "[Rights of ALBERT EINSTEIN are used with permission of The Hebrew University of Jerusalem. Represented exclusively by Greenlight.](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_sales_einstein.htm)" which I find funny
- Einstein features have gotten a lot of love in the last year, and are getting at a point where I could start recommending clients buy them.
- [Prediction Builder now supports Field-to-Field Comparisions](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_forcecom_einstein_prediction_builder_data_checker_improved.htm)
- [Case-WrapUp](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_einstein_service_case_wrapup.htm) is a nice addition to Service Einstein
- Einstein Search now gets [Natural Language Processing](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_ai_search_shield_encrypt_ok.htm) and is no longer limited by [Shield Encryption](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_ai_search_shield_encrypt_ok.htm)

**DEVELOPMENT**

- [Unlocked Packages](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_sfdx_packaging_get_ready_code_coverage.htm) will require Code Coverage to Promote and can also be [Org-Dependent](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_sfdx_packaging_org_dependent_packages.htm)
- [Einstein OCR via API](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_einstein_vision_ocr_ga.htm)
- Sending [VF Emails to Guest Users](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_sales_productivity_email_templates.htm) requires extra parameter, check if you’re subject to this.
- [Reusable CSS](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_lwc_css_share.htm) betweens LWCs. I think design tokens are still a bit wonky though.
- Use the @salesforce/community scoped module to import information about the [current community context](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_networks_developers_module.htm)
- [Connect REST Api now returns SVG instead of Flash](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_files_file_rendition_resource.htm)
- [Generic SObject](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_forcecom_flow_extend_generic_sobject.htm) data types are here and can be used in Flow actions. This means you can use `sObject` and `sObject[]` in your flow screen LWCs!
- [Private Connect](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_security_private_connect.htm) sets up a fully managed network connection between your Salesforce org and your AWS Virtual Private Cloud (VPC)
- [Crypto](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_security_crypto_algorithms.htm) now supports RSA-SHA384 and RSA-SHA512.
- [TOTP](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_auth_apex_2fa_config.htm) via APEX now possibilities
- CDC Events now support [mandatory sent fields in events](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_change_data_capture_enrichment.htm)
- Dev and Dev Pro Sandbox now support [scratch org type of source tracking](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_sandboxes_source_tracking.htm). Hopefully they will support at *least* partial sandboxes in the future!
- `System.Security.stripInaccessible()` now [respect relationship fields](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_apex_nc.htm#rn_apex_System_namespace). It’s now minimal overhead to add FLS / CRUD checker to your apex. Finally.
- [New `@JSON annotation`](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_apex_JsonAccessAnnotation.htm)controls whether instances of the class can be serialized or deserialized. Default setting in API v48+ more restrictive than current situation.

**DOGELAND**

- [:doge:](https://cdn.discordapp.com/attachments/314860664885870592/660826873252675614/dogesf.png) Someone at SF thought it was a good idea to re-open the [Work.com casket](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_workdotcom.htm) but put a Sales pitch instead of content, and brand it as COVID relief. Reception mixed at best.
- [:doge:](https://cdn.discordapp.com/attachments/314860664885870592/660826873252675614/dogesf.png) Salesforce PRESENTS: [OPTIMIZER](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_general_optimizer_app.htm) ! Yes it’s the same (awesome) tool that was first an external website and then a menu item. No, we don’t know why it’s in the release notes. [Again](https://releasenotes.docs.salesforce.com/en-us/winter20/release-notes/rn_general_optimizer_setup.htm). And [Again](https://releasenotes.docs.salesforce.com/en-us/winter19/release-notes/rn_lex_optimizer.htm). And [Again](https://releasenotes.docs.salesforce.com/en-us/summer18/release-notes/rn_optimizer.htm).
- [:doge:](https://cdn.discordapp.com/attachments/314860664885870592/660826873252675614/dogesf.png) [In-App Guidance got an upgrade with Walkthroughs](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_customhelp_wt.htm) buuuuuuuuut you need MyTrailhead to use it. Too bad because it looks [Dope as Hell](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_customhelp_builder.htm)
- CMT team wins “weirdest Jargon” award for an otherwise [cool release note](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_forcecom_cmt_entity_particle.htm)

---

This abridged version was graciously written up by the **SF Discord**

We have a nice wiki: [https://wiki.sfxd.org/](https://wiki.sfxd.org/)

And a linkedin page: [https://www.linkedin.com/company/sfxd/](https://www.linkedin.com/company/sfxd/)

Join the ~2000 members in the most active chat-based community around Salesforce these parts of the web at [http://join.sfxd.org/](http://join.sfxd.org/)

---

---

---

**SPECIAL EDITION - FUTURE OF AUTOMATION**

I put this outside of the ARN themselves because, well, it’s not a release note.

*Re: After/Before/Events Triggered Flows:*

- HUGE SPECULLATION as alway - I’m calling Process Builder deprecated by 1y and fully retired by 2y. To the angry people that flamed me when I called Aura [deprecated](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_aura_ui_deprecate.htm): [BOOYAH](https://vignette.wikia.nocookie.net/community-sitcom/images/3/31/1X1_Booyah.png/revision/latest/scale-to-width-down/340?cb=20180531080526).
- Using PB is still required due to current Flow limitations, and I expect that there will be a tool to migrate one to the other seeing as technically they’re both the exact same tool in the backend - so don’t panic about your Process Builders just yet.
- These changes add yet another automation source to Objects. That new automation source probably won’t play super well with others, as the [Before Save](http://bobbuzzard.blogspot.com/2020/01/spring-20-before-save-flows-and-apex.html) flows highlighted with APEX.
- The new Flow execution contexts don’t support everything that is in PB or even normal Flows yet (no Subflows, [no ](https://wiki.sfxd.org/books/cool-links-stuff/page/how-to-roll-your-own-%22ischanged%22-%22priorvalue%22-and-%22isnew%22-in-before-save-flows)`<a href="https://wiki.sfxd.org/books/cool-links-stuff/page/how-to-roll-your-own-%22ischanged%22-%22priorvalue%22-and-%22isnew%22-in-before-save-flows">ISCHANGED()</a>`).
- In Summary while these are very exciting times and highlight a bright future of Low-Code possibilities, we currently advise NOT to use these new flows outside of Prototyping or Sandboxes.

*Re: User-Permission Bypassing Flows:*

- While SF seems to push Flows as Admin-friendly, the reality is that as time goes on, Flows are becoming more of Procedural programming with a GUI than anything else.
- The above effectively puts the skill floor higher for any new admins - think 7 years ago when all you had was page layouts and workflows. Things are a bit more complex now.
- User-Permission Bypassing means you can effectively do VERY BAD THINGS, and to be honest I would rather they hide this option behind a few layers of prompts asking if you know WTF you’re doing. As-is I can totally see compliance issues in the medium-term. I encourage any Auditors or Consulting partners to add checking for this permission in any audit checklist and ensure that it’s needed.
- For all SF Admins reading this, SFXD already told you this last release, but really: Train yourself on Flows, Fast. You’re going to need it.

*Re: Dynamic Forms:*

- [Dynamic Forms](https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_forcecom_lab_dynamic_forms.htm) will extend quite a lot what can be done in Lightning Page Layouts. It pretty much replaces Layouts in general.
- The current status is Preview, meaning SF don’t want to support it just yet. If you’re using it in Production, this is bad. Don’t do it. Wait a few releases more.
- I am still unsure what this means for Page Layouts/Record Types in the future. Probably will be decorrelated and based on conditional display (which doesn’t work well ATM)
- As-Is this is a very strong Do Not Use.
- It seems that more and more things are getting `Builders` in the backend which allow more powerful stuff in the hands of admins (Flows, Bots, Paths). While this does sound like great news, it’ll raise the skill floor to be a competent Salesforce Manager in the next years

*Re: Lightning Message Service (`LMS`) and continued support of legacy code:*

- With `LMS` there is now one ring to rule them all. In its most ideal usage, this now serves as the primary inter-component communication mechanism **between** LWCs that are in separate component trees.
- But, until your org(s) reach the state where you can invest 100% in LWCs only (because you are moving to that future, right?) this is now a quick win for bringing your VF and Aura solutions to play nicely with your shiny new LWCs.
- Now that they have finally settled on conventions (`LMS` using various `channels`), I fully expect this to be the backbone for some cool event driven application hooks in the future.