v4.2.17 release
Release date: March 4, 2021
Significant improvements
- Site admins can now hide comments posted by a visitor. Filed under: user plugin
- A toolbar button is now available in the rich-text editor for adding heading levels. These headings typically render on the front end as
<h2>
,<h3>
, etc. Filed under: rich-text editor - Multiple workflows are now available for any content type or site-content type combination. Filed under: workflow
Conversations widget:
- Improved display of threaded comments.
- Improved layout and appearance of entire widget. Filed under: conversation
- The processing for translations now supports the correction of validation errors. For example, an editor sent an article for translation, and in the interim the date published became a required field. In this scenario, Brightspot considered the translation as an error. Editors can now manually add the date published to the translation instead of resending the for translation. Filed under: translation
- In the Edit Global and Edit Site widgets, a search field is now available to locate a label. For example, searching for
Advanced
lists all the accordions and fields containing the wordAdvanced
. Filed under: site setting - Several improvements to GraphQL were deployed, including improved error messages and support for wildcard paths. Filed under: GraphQL
- Social posts are now available for lookup by group, in addition to the previous user and role lookups. Filed under: social link
- Users can create new content types from the Admin menu. Filed under: content form, configuration
- Prior to this release, when configuring a translation, admins could select the workflow a translation entered after translation. In that case the translation entered the workflow at the workflow’s first status. Starting with this release, admins can select the workflow status a completed translation enters. Filed under: translation, workflow
Significant defects addressed
- In some scenarios, Brightspot reported that an item was archived even though the item was not actually archived in the database. This defect has been addressed. Filed under: archive, database
- In some scenarios, when creating an image from a URL the crop dimensions were not honored. This defect has been addressed. Filed under: image
- In some scenarios, when adding content types to a list an error message appeared similar to the following:
Must match groups = brightspot.core.promo.Promotoable and isAbstract = false!
This defect has been addressed. Filed under: database - A translation for a content type (such as an article) has a completion state of Draft. An editor creates an article, manually translates it, and publishes the translation. The editor then translates the article again. Prior to this release, because the end state of the translation is Draft, the existing live translation was also put into draft thereby removing the published version from the front end. Starting with this release, new translations are published as a new revision and the previously live translations are treated as previous revisions. Filed under: translation, draft, revision
- Under certain conditions, embedding an Instagram post generated an error message in the rich-text editor. This defect has been addressed. Filed under: rich-text editor
- In some scenarios, previews of SVG images within Brightspot resulted in error messages. This defect has been addressed. Filed under: image
- Prior to this release, when an editor archived a vanity redirect, the redirect was still active on the server. Starting with this release, archived vanity redirects are no longer active. Filed under: archive, URL
- In some scenarios, the Add URL form did not appear in the URLs widget. Although this error is not reproducible in our development environment, we pushed a fix to hopefully remedy this symptom. Filed under: URL
- Prior to this release, an enhancement in draft status did not render in the rich-text editor. Starting with this release, enhancements in draft status render correctly in the rich-text editor. Filed under: draft, rich-text editor
- Starting with release 4.2.13 comments to items could be displayed in a threaded format. A regression error occurred when opening items with non-threaded comments; changes made in the rich-text editor for such items were not saved. This defect has been addressed. Filed under: conversation, rich-text editor
- In some scenarios, deleting a content type caused an error when impersonating a user with permission to that content type. This defect has been addressed. Filed under: impersonate
- Pasting hyperlinks into the rich-text editor caused an error condition. This defect has been addressed. Filed under: rich-text editor
Breaking changes
- This release removes
ObjectType
records when a content type is removed. Since an object type won’t be available if a corresponding Java class is removed from code, existing content associated with the object type must be cleaned. Otherwise, some of the CMS functionality, such as search and work stream, will be broken. This release introduces new Slack webhooks no longer supporting user notifications, and, as a result, the following breaking changes were made:
- Existing Slack apps that haven’t been migrated to allow granular scopes must do so for search and notifications to function.
- Slack workspaces previously configured via the Slack Webhook setting must instead be added as a Slack Workspace object in Sites & Settings.
- Existing Slack delivery options will no longer function. Users will need to authenticate with a new delivery option to re-enable slack notifications.
- Similarly, users will need to reauthenticate in search to regain access to Slack search.
- The Draft & Workflow Completion Action would sometimes unpublish content if it was re-translated. To fix this bug, the
TranslationCompletionAction
API has been changed such that any of its downstream implementations perform database persistence calls, rather than relying onTranslationService#completeTranslation
for persisting data. - This release addresses some issues with
Substitution
andAugmentation
. As a result,com.psddev.dari.db.Substitution
andcom.psddev.dari.db.Augmentation
are both deprecated and replaced withcom.psddev.dari.util.Substitution
. The deprecated classes will continue to work, but we recommend updating existing code to use the new syntax. Please contact your Brightspot representative for this new syntax, referencing ticket number BSP-11338. As a result of enabling CMS admins to delete comments, the following breaking changes were made:
MemberAffinity
andMemberContent
are no longer read-only at a class level. Instead,MemberAffinity
is permissionable, which verifies a user’s permissions and properly displays records within the community widget that the user is allowed to see.CommunityWidgetPage
now conditionally displays associated records based on read permissions and of those who can view those records, and only those who can edit comments will be allowed to when viewing a community widget record.
- Delivery no longer uses Express Theme Core, and is unable to use Style Groups in newer projects. As a result,
ModuleTypeAugmentation
has been deleted in favor ofModuleTyle implements StyleGroupObject
. Additionally,StyleGroupSettings
,CuratedStyleGroupProvider
, andCuratedStyleGroup
have all been moved from thebrightspot.themes
package tobrightspot.core.theme
. As a result of improving GraphQL error response messages, the following breaking changes were made:
GraphQLRequestException
is no longer directly throwable, because it is an abstract class now. Instead, subclasses should throw exceptions.- Default extension details include a new
code
extension that consists of the exception class name so that error types can easily be identified. In order to change either theextensions
orcode
details, theaddDefaultExtension
and/orgetCode
implementations, respectively, must be overridden in subclasses. - Persisted query exceptions only include the message in the error response, but no longer include any extension data.
- The Translation framework decouples the
TranslationService
invocation from theTranslationRequestPage
. As a result, any downstream implementations ofTranslationServiceSettings
will need to be updated to implement the new abstract methodgetService
. Projects will also need to remove the generic specification. - We have improved the
WorkflowTranslationCompletionAction
. As a result, theworkflow
field is deprecated and will no longer work. AllTranslationSettings
that use it will need to be updated. - When using DIMS v3.3.21 or higher, the corresponding image editor must set the
dimsDisableEncodedFetch
sub-setting to match theDimsDisableEncodedFetch
setting. Projects should set both totrue
if possible.
Previous Topic
v4.2.18.1 release
Next Topic
v4.2.17.13 release