May 17, 2019 Release (5.0.387.10)

Important

Per the Coveo Version Support Lifecycle policy, this Coveo for Sitecore 5 release has been retired. See available Coveo for Sitecore releases.

Even if this release is retired, you must still perform its upgrade steps to upgrade to a more recent version of Coveo for Sitecore.

This release includes the 2.5926.10 version of the JavaScript Search Framework (see April 2019 Release (v2.5926.10)).

When using a CDN with the Coveo Hive framework, this release includes the latest 2.5926 version of the JavaScript Search Framework (see Understanding How the Coveo JavaScript Files are Loaded (CDN)).

Release Notes

This section summarizes the new features and fixed support cases introduced in the Coveo for Sitecore May 17, 2019 release (5.0.387.10).

Identifier Enhancement
SC-3683 [SXA] Added context item children to the suggested data source locations (see Coveo Rendering Data Source Locations).
SC-3683 [Hive][SXA] Added context item children Coveo Local Parameters Folders component type folder to the suggested data source locations (see Coveo Rendering Data Source Locations).
SC-3743 [Command Center] Improved display of index crawler multi-value attributes.
SC-3767 [Command Center] Improved handling of invalid Sitecore credentials at activation.
SC-3789 Support Coveo JavaScript Search Framework version 2.5926.
SC-3811 Support Sitecore 9.1.1.
Identifier Case Fixed support case
SC-3803 00050372 Fixed issues to support Sitecore 9.1 content delivery servers without the Core database.
Identifier Bug fix
SC-3766 [Command Center] Fixed table rendering issue in Microsoft Edge.
SC-3791 [Hive] [SXA] Fixed issue with Hive and SXA Coveo Facet Value Suggestion rendering item IDs being identical.
SC-3831 Fixed index initialization issue on Sitecore 9 ContentDelivery servers.
SC-3836 [Hive] Fixed issue with Basic Search Interface Layout.cshtml throwing an exception on XM Sitecore topology.
SC-3838 Fixed indexing issue on Sitecore XM topology.
SC-3863 Fixed issue with Coveo Send Analytics to Sitecore events not being recorded in the Sitecore xDB Interactions table.

Upgrade Steps

This section describes how to upgrade Coveo for Sitecore from April 18, 2019 (5.0.362.4) to May 17, 2019 (5.0.387.10). If you're upgrading over multiple versions, Coveo has a procedure to streamline the process.

Important

For the best Coveo for Sitecore experience, always follow the Best Practices When Upgrading Coveo for Sitecore.

Step 1: Upgrade Coveo for Sitecore

Important

Make sure the Microsoft MVC security update MS14-059 is installed on every Sitecore host in your environment.

  1. Log in to the Sitecore Desktop.

  2. Access the Installation Wizard (Sitecore Start Menu > Development Tools > Installation Wizard).

  3. Upload and install the Coveo for Sitecore XX 5.0.387.10 package. You can find it in Downloads.

  4. When prompted to overwrite files, click Yes to all.

  5. When prompted to overwrite items, select Overwrite, then click Apply to all.

    Note

    You might be prompted twice with this question. Select the Overwrite option and click Apply to all both times.

  6. Once the installation is completed, make sure that you restart both the Sitecore client and server.

Step 2: Manually Update the Coveo Configuration Files

The Coveo configuration files are located in the Website\App_Config\Include\Coveo folder. When upgrading, you must compare the changes to the .example files from your current Coveo for Sitecore version with the ones in the build you’re upgrading to. Then, you can merge these changes into your current configuration files. This method allows you to keep your own customization intact, while still benefiting from the latest enhancements brought in the product. You can use a merge tool such as WinMerge to accomplish this.

In further detail, here are the modifications that you must perform to the configuration files resulting from the feature changes between the previous and current Coveo for Sitecore releases:

Coveo.Authentication.config

The modification below only pertains to Sitecore 9.1 instances.

The following line:

<site patch:before="*[1]" name="coveoapi" virtualFolder="/coveo" physicalFolder="/coveo" enableTracking="false" content="master" domain="sitecore" set:loginPage="$(loginPath)shell/SitecoreIdentityServer" />

has been changed to:

<site patch:before="*[1]" name="coveoapi" virtualFolder="/coveo" physicalFolder="/coveo" enableTracking="false" content="master" domain="sitecore" set:loginPage="$(loginPath)shell/SitecoreIdentityServer">
  <patch:attribute role:require="ContentDelivery" name="content">web</patch:attribute>
</site>

The modification below only pertains to Sitecore 9.1 instances.

The <site name="coveoapi" element has been moved to become the first child of the <sites> element. Comments regarding the <site name="coveoapi" and <site name="coveorest" elements have been changed accordingly.

When combined, the result of the two Sitecore 9.1 changes above on the <sites> element is the following:

<sites>
  <!-- The site coveoapi needs to be inserted as the first element, or before any other sites that have the coveoapi site as a child (for example, sites defined with virtualpath="/coveo*"). -->
  <site patch:before="*[1]" name="coveoapi" virtualFolder="/coveo" physicalFolder="/coveo" enableTracking="false" content="master" domain="sitecore" set:loginPage="$(loginPath)shell/SitecoreIdentityServer">
    <patch:attribute role:require="ContentDelivery" name="content">web</patch:attribute>
  </site>
  <!-- The site coveorest needs to be inserted before any other sites that have the coveorest site as a child (for example, sites defined with virtualpath="/coveo/rest*"). -->
  <site patch:before="*[1]" name="coveorest" virtualFolder="/coveo/rest" physicalFolder="/coveo/rest" enableTracking="false" database="web" domain="extranet" />
  <!-- The site coveoanalytics needs to be inserted before coveorest, as it requires analytics to be enabled. -->
  <!-- The coveoanalytics website database attribute value should match the published website database attribute value to allow Coveo Usage Analytics logging. -->
  <site patch:before="*[1]" name="coveoanalytics" virtualFolder="/coveo/rest/v6/analytics" enableTracking="true" database="web" domain="extranet" />
  <site patch:before="*[1]" name="coveo_website" virtualFolder="/sitecore modules/Web/Coveo" physicalFolder="/sitecore modules/Web/Coveo" rootPath="/sitecore/content" startItem="/home" language="en" content="web" domain="sitecore" loginPage="/identity/login/admin/SitecoreIdentityServer" />
</sites>

The modification below only pertains to Sitecore 9.1 instances.

The following block has been added inside the <sitecore> element.

<settings>
  <setting name="Coveo.Framework.DatabasePropertyName" value="web" />
</settings>

The modification below pertains to all Sitecore versions except Sitecore 9.1.

The comment line regarding the <site name="coveorest" element has been changed from:

<!-- The site coveorest needs to be inserted as the first element, or before any other sites that have the coveorest site as a child (for example, sites defined with virtualpath="/"). -->

to:

<!-- The site coveorest needs to be inserted as the first element, or before any other sites that have the coveorest site as a child (for example, sites defined with virtualpath="/coveo/rest*"). -->

Coveo.SearchProvider.config

The modification below only pertains to Sitecore 9.1 instances.

The databasePropertyStore/Database element has been changed from

<Database>core</Database>

to

<Database>web</Database>

Coveo.SearchProvider.Custom.config

If you have Sitecore 9, the <configuration> element has been changed from

<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/" xmlns:coveo="http://www.sitecore.net/xmlconfig/coveo/">

to

<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/" xmlns:role="http://www.sitecore.net/xmlconfig/role/" xmlns:coveo="http://www.sitecore.net/xmlconfig/coveo/">

If you have Sitecore 9, the <index id="Coveo_master_index"> element has been changed to

<index role:require="!ContentDelivery" id="Coveo_master_index">

Step 3: Regenerate and Save your Encryption Key

Sitecore 9.1

For Sitecore 9.1 instances only, you must regenerate and save your encryption key in the web database and subsequently copy your new configurations across your instances (see Issues When the Core Database Is Disabled on Content Delivery Servers).

  1. On your CM, regenerate your API keys by using the Command Center (see Modifying Your Coveo Organization). Select the same organization than previously configured.

  2. Regenerate your Sitecore Credentials using the Security panel of the Command Center (see Understanding the Indexing Manager - Security). Re-enter the credentials, and click Apply and Restart.

  3. Copy the configuration files (see Deploy Coveo for Sitecore on the Content Delivery Servers - Copying the Configuration Files).

Step 4: Publish Your Site

In the Sitecore Content Editor, perform a publish site action. This ensures any changes related to Coveo components in the upgrade are published to the web database.