Property 'encrypted' not valid in version 44.0

This situation is caused because the branches have the metadata in API v43 and the Copado backend changed to Salesforce API v44 on the 4th of February.

The ‘encrypted’ tag of custom fields has been deprecated (available until API v43) and has been replaced by a new tag called ‘encryptionScheme’.

https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/customfield.htm

The old ‘encrypted’ tag only has 2 values (true or false), whereas the new ‘encryptionScheme’ tag has 4 different values.

The old ‘False’ value can be replaced by ‘None’, however, there are now three options for the old ‘True’ value, ‘ProbabilisticEncryption’, ‘CaseSensitiveDeterministicEncryption’ and ‘CaseInsensitiveDeterministicEncryption’. The option will vary depending on the type of encryption you have available in your org and the specific encryption defined for each custom field.

In this situation, we recommend the following workaround:

  1. Open the Git Snapshot record linked to the master branch of your Git repository and then click on Take Snapshot Now (Create Snapshot Now if you are in v11 or under). This way we update the master branch to API v44.
  2. Recreate all the feature branches of the user stories in progress. You can do this by using the Recommit Files operation + Re-Create Feature Branch in the user story. Check out the Recommit files article for more information.
  3. Recreate the promotion branches that are in progress. Navigate to the Promotion records that are in progress and create the deployment again to generate a new promotion branch.
  4. Deploy the promotion.

Alternatively, you can use the find and replace functionality to safely replace the <encrypted>false</encrypted> tag with <encryptionScheme>None</encryptionScheme>. However replacing the true option <encrypted>true</encrypted> can be risky (potential data loss) if the replaced values are not the ones set in the field in Salesforce. We do not recommend doing a find and replace for the <encrypted>true</encrypted> tag. If you do so, be aware that there can be unexpected results, and you are doing it at your own risk.


How did we do?