Release date: April 5, 2021
v.4.2.18 had 45 bug fixes, 7 new features, and 16 improvements.
- Editors can configure Brightspot to have a dark-mode appearance.
- Improved integration with Google Analytics that provides additional insights in the Reports widget and search panel.
- The CMA now supports editorially defined content types.
- Prior to this release, creating a new record via a CMA mutation required unnecessary arguments for simple cases. Starting with this release, if a record is being created, there is no need to specify an arbitrary id DiffId argument for the mutation and its only valid diff object. As a result,
idargument rules for mutations have been improved.
- Removed Express dependencies from GraphQL module tests.
FormRequesterrors typically exist due to validation errors, and are thus expected since they imply user error rather than a bug. As a result,
FormRequesterrors are now treated as expected errors in the CMA.
- The Automatic Persisted Query implementation has been updated and optimized for performance by accounting for CloudFront caching and load-balanced environment factors.
- Developers now have the ability to inspect
PersistedQueryrecords to identify non-optimized Automatic Persisted Query queries in production if missed in lower environments.
- The class
ContentDeliveryApiViewRequestAnnotationProcessorwas replaced with
ContentDeliveryApiWebAnnotationProcessor, which has the same signature and functionality.
@WebParameterconverts an HTTP parameter to an enum in view models; as a result,
ContentDeliveryWebParameterProcessorwas updated to accommodate enum fields.
Significant defects addressed
- In some scenarios, the Revisions widget did not display a workflow state or combinations of workflow state and actual revisions. This defect has been addressed.
- In some scenarios, the Recent Activity widget and search panel did not include assets in a workflow. This defect has been addressed.
- The search panel did not display assets’ revisions when the search field had at least two characters. For example, if an article with headline
Chocolate is Heavenhas revisions, and the editor types
choco, the article’s revisions were not listed in the search panel. This defect has been addressed.
- Defects in the InDesign plugin’s UI were resolved.
- In some scenarios, the search panel did not display additional filters for a selected content type. This defect has been addressed.
- When viewing a site’s Edit Site widget, selecting a new site from the site switcher did not load the selected site. The site switcher now loads the selected site in this scenario.
IllegalStateExceptionerror occurred when performing a YouTube federated search and no channel ID is specified in the YouTube configuration. The error no longer appears in this scenario.
IllegalStateExceptionerror occurred when performing a Getty federated search and no API key is specified in the Getty configuration. The error no longer appears in this scenario.
- Searches on AP Images returned different numbers of matches when using different sorts. For example, sorting by oldest returned a different number of matches compared to sorting by newest. The number of matches is now identical regardless of sort.
- Prior to this release, editors could create custom content forms that include widgets defined as hidden. For example, a publisher wants to hide the Translations tab, but editors could include that tab in their custom content forms. Starting with this release, editors cannot include hidden widgets in their custom content forms.
- In some scenarios, the content picker did not limit the content type to the corresponding selection field. For example, when opening a selection field to select a video, the content picker included the content type field to select any content type—not just videos. The content picker now limits results to the expected content type.
- When opening a content picker for tags, the display of child tags was incorrect. (The display was correct when opening the tag from the search panel.) The display of child tags is now correct.
- For existing projects that include the Translation plugin, all existing roles that should have the Translation permission will need to be re-saved with the new Translation Permission object added. Please contact your Brightspot representative for the script needed to complete this function, referencing ticket BSP-11635.
- “Primary Author” has been deprecated. As a result, themes will need to be updated to render multiple authors on the front end.
- GraphQL object types are supported without backing Java classes in the CMA. Any classes that have a custom internal name that is not their fully qualified class name will need their entry fields redefined to specifically utilize their object type directly.
- We have improved Automatic Persisted Queries (APQ). Previously, the
serveGraphQLmethod expected only an
ApiRequestparameter, and returned a plain map representing the response. Now the method expects a
WebResponseparameter along with the
ApiRequest, and also returns a
GraphQLApiResponseobject. In order to get the plain map from the response object, call
ContentDeliveryApiWebAnnotationProcessorhas moved from
ContentDeliveryApiViewRequestAnnotationProcessoris replaced by
ContentDeliveryApiWebAnnotationProcessor; however, they share the same signature and functionality, so only the superclass name needs to be changed in any affected subclasses.