Salesforce Winter ’21 Release Notes (Developer Perspective)

Update Resources with the PATCH HTTP Method in Apex Callouts

To make partial or full updates to a resource in an HTTP web service, specify the PATCH method in the HttpRequest class. Previously, only the PUT method was supported for full updates.

https://releasenotes.docs.salesforce.com/en-us/winter21/release-notes/rn_apex_callouts_patch.htm?edition=&impact=

Use the Safe Navigation Operator to Avoid Null Pointer Exceptions

Use the safe navigation operator (?.) to replace explicit, sequential checks for null references. This new operator short-circuits expressions that attempt to operate on a null value and returns null instead of throwing a NullPointerException.

Where: This change applies to Lightning Experience and Salesforce Classic in Enterprise, Performance, Unlimited, and Developer editions.

How: If the left-hand-side of the chain expression evaluates to null, the right-hand-side is not evaluated. Use the safe navigation operator (?.) in method, variable, and property chaining. The part of the expression that is not evaluated can include variable references, method references, or array expressions.

https://releasenotes.docs.salesforce.com/en-us/winter21/release-notes/rn_apex_SafeNavigationOperator.htm?edition=&impact=

Instead of checking System.isFuture() || System.isQueueable(), detect Apex Runtime Context with RequestId and Quiddity

//Get info about the current request
Request reqInfo = Request.getCurrent();

//Universally unique identifier for this request
//Same as requestId in splunk or REQUEST_ID in event monitoring
String currentRequestId = reqInfo.getRequestId();

//enum representing how Apex is running. e.g. BULK_API vs LIGHTNING
//Use this with a switch statement,
//instead of checking System.isFuture() || System.isQueueable() || ...
Quiddity currentType = reqInfo.getQuiddity();

Improve Apex Testing with New SObject Error Methods

If the SObject.addError() method has been called on an SObject instance, the SObject.hasErrors() method returns true. The SObject.getErrors() method returns a list of Database.Error objects that contain the errors. encountered.https://releasenotes.docs.salesforce.com/en-us/winter21/release-notes/rn_apex_trackErrors.htm?edition=&impact=

A new REST resource for Composite requests is now generally available

Then composite resources let you batch up multiple calls in a single call. By using this you can simplify your code, reduce network overhead, and improve your app’s performance.

composite graphs ensure that the steps in a given set of operations are either all completed or all terminated. It’s no longer necessary to check for a mix of successful and unsuccessful results. The Composite Graph resource payload increases the subrequest limit to 500 per payload, up from 25 per Standard Composite payload. A single API call can now do much more.

https://developer.salesforce.com/docs/atlas.en-us.api_rest.meta/api_rest/using_composite_resources.htm

Transform Data with a Few Clicks (Pilot)

Data in your Salesforce org is stored across different objects. Use Data Processing Engine to bring all the data in one place and transform it based on your requirements. Start by creating an instance of Data Processing Engine. Then select data sources, define the various configurations, and choose whether you want to use the transformed data to create records or update existing records.

https://releasenotes.docs.salesforce.com/en-us/winter21/release-notes/rn_data_processing_engine_create.htm?edition=&impact=

1,085 thoughts on “Salesforce Winter ’21 Release Notes (Developer Perspective)”

  1. Hi i am kavin, its my first time to commenting anywhere, when i
    read this paragraph i thought i could also create comment due to this
    good paragraph.

  2. Great beat ! I would like to apprentice while you amend your site,
    how can i subscribe for a blog web site? The account helped me a acceptable deal.

    I had been a little bit acquainted of this
    your broadcast provided bright clear concept

  3. Hi there everybody, here every person is sharing such familiarity,
    so it’s pleasant to read this web site, and I used to go to see this
    webpage everyday.

  4. Oh my goodness! Awesome article dude! Thank you so much, However
    I am having troubles with your RSS. I don’t understand why I can’t subscribe to it.
    Is there anybody else having the same RSS problems? Anyone who
    knows the solution can you kindly respond? Thanks!!

  5. I used to be suggested this website by means of my
    cousin. I’m not certain whether or not this submit is written by
    way of him as no one else recognize such particular approximately my problem.
    You are wonderful! Thank you!

  6. whoah this weblog is excellent i really like studying your
    posts. Stay up the good work! You understand, lots of persons are
    looking around for this information, you could help them greatly.

  7. Pretty section of content. I just stumbled upon your weblog and in accession capital to assert that I get actually enjoyed account your blog posts.

    Any way I will be subscribing to your augment and even I achievement you access consistently fast.

  8. Woah! I’m really enjoying the template/theme of this blog.
    It’s simple, yet effective. A lot of times it’s very hard to get that “perfect balance” between user
    friendliness and visual appeal. I must say you have done a excellent job with
    this. In addition, the blog loads very fast for me on Opera.
    Excellent Blog!

  9. Having read this I believed it was really enlightening.
    I appreciate you finding the time and energy to put this content together.

    I once again find myself spending a lot of time both reading and commenting.
    But so what, it was still worthwhile!

  10. great publish, very informative. I’m wondering why the other specialists of this sector do not
    notice this. You should continue your writing. I am sure, you
    have a great readers’ base already!

  11. Every weekend i used to pay a quick visit this website, because i wish for
    enjoyment, for the reason that this this web page conations
    in fact fastidious funny data too.

  12. I just could not depart your site prior to suggesting that I
    extremely enjoyed the standard info a person supply on your guests?
    Is going to be back incessantly in order to check out new posts

  13. Good day! Do you use Twitter? I’d like to follow you if that would be ok.
    I’m undoubtedly enjoying your blog and look forward to new updates.

  14. This is the perfect web site for everyone who would like to understand
    this topic. You know so much its almost hard
    to argue with you (not that I really would want to…HaHa).
    You certainly put a fresh spin on a topic that has been written about for many
    years. Wonderful stuff, just excellent!

  15. I’m really impressed with your writing skills and also with the layout on your
    blog. Is this a paid theme or did you modify it
    yourself? Either way keep up the excellent quality writing,
    it is rare to see a nice blog like this one today.

  16. Hey there would you mind letting me know which hosting company you’re working with?
    I’ve loaded your blog in 3 different browsers and I must say this
    blog loads a lot quicker then most. Can you suggest
    a good internet hosting provider at a fair price?
    Thanks, I appreciate it!

Comments are closed.