BloomReach Experience 12.1 & Hippo CMS 12.1 Release Notes
We have released version 12.1 of BloomReach Experience and Hippo CMS developer edition. This minor release introduces new functionality without breaking backwards compatibility with the previous minor release. In this document we will give a brief overview of the highlights of this release.
BloomReach Experience and Hippo CMS V12.1 - Highlights
Extended On Premise Cluster Support
As part of our ongoing efforts to provide core enterprise capabilities for clustered environments that run on premise and require highly available solutions, we have extended these capabilities with new functionality.
Lucene Index hot Export Addon
After rigorous internal testing in the BloomReach Cloud platform, our On Premise Enterprise customers now also can create a hot (live) export of the Lucene index through a secure REST API. By using this feature the Lucene index no longer has to be re-generated when restoring a system or when scaling out with additional cluster instances, but directly can be started using a ‘hot’ exported index. For installations with large content databases this can save an enormous amount of initialization time. This Addon is available as an Essentials component that can be added easily to an BloomReach Experience project.
As of Hippo CMS 12.1, a new LockManager service is provided as a more scalable and resilient solution to ensure sequential process execution across a clustered environment.
This new service provides an alternative solution from using ‘native’ JCR based locking.
Technical details and more background information is online available at: https://www.onehippo.org/library/concepts/locking/lockmanager.html.
Using JCR locking for short living locks in general doesn't cause problems. If however longer lived locks are needed, the JCR locking API has limitations which may cause lock timeouts under extreme conditions with concurrent and long-running JCR sessions.
To guarantee proper locking semantics in a scalable way, even in such extreme conditions, a new LockManager service is provided which doesn’t use or depend on JCR.
This new LockManager service has been designed to be more lightweight and easier to use and manage, and now replaces all usages of the native JCR lock and JCR-based HippoLock API throughout the core of the product.
Because lock management plays a critical role in core product features (Workflow, Scheduling, Relevance, Replication, etc.), the new LockManager service and its usages also will be backported for all currently supported releases. The upcoming maintenance releases v12.0.3, v11.2.4, and v10.2.8 therefore also will provide this major technical improvement.
Note: The upgrade will by default automatically take care of setting up an additional database table needed for the LockManager. If database schema management is restricted in your environment please make sure to checkout the following upgrade notes first: https://www.onehippo.org/library/upgrade-minor-versions/upgrade-12.0.2-to-12.1.0.html.
BloomReach Enterprise Repository
First introduced in the v12.0 release, v12.1 now provides the following enhancements for the BloomReach Enterprise Repository:
Protected concurrent initialization of multiple cluster instances. This enhancement, which uses the new LockManager service, now supports fast initialization and scaling out of clustered environment without delay. Without the protected cluster initialization, new cluster instances were required to be started one-by-one in sequence. This no longer is necessary which can hugely speed up creating or scaling out a clustered environment, especially when combined with the new Lucene Index Export Addon.
The Enterprise Repository will automatically be added when converting a project to BloomReach Experience with Essentials (see below).
What is new for developers
Convert a project to BloomReach Experience
If you have a project that was created using the Hippo CMS Developer Edition and you want to convert this to a BloomReach Experience (Enterprise) project, a converter ships with Essentials to make this a ‘one-click’ operation.
Install additional enterprise features via Essentials
Users now can install the Relevance, Projects and Relevance Collectors Bundle features conveniently through Essentials.
Built-in OpenAPI/Swagger API descriptor support
The CMS now has support for /restapi/swagger.json or /restapi/swagger.yaml URLs for the API descriptor when HST Plain REST API mount is configured at /restapi for instance. Using this new option, developers can easily surface documentation for new and existing API resources.
Other technical improvements and changes
The HstSiteMenusManager is now extendable by simply overriding the factory methods,
Pass pluginContext and pluginConfig as constructor arguments to ImageCropEditorDialog,
Expose HippoSecurityManager through InternalHippoRepository to simplify user & group management in REST services,
@ParametersInfo annotation usages for parameters in JAX-RS Resource class.
Content REST API has been improved. Now you can determine in the request which properties and child nodes of a document will be part of the result and return exactly the subset you want to.
The CMS Console now displays information about the YAML sources of nodes and properties used during bootstrap. This can be used to debug configuration problems at runtime or to find the definitions of nodes and properties provided by the CMS platform or third-party add-ons.
What is new for end users
Improved Taxonomy Plugin
We improved the Taxonomy Plugin to support the full IETF locale. Internationalisation now also takes region/country into account besides the language. If the project does not specify the region, the system gracefully falls back to language only. Also, auto-export to YAML is possible.
Several usability improvements have been made in this release:
Remember view preferences in the Channel Manager. The system now remembers the user's preference to view the channel manager by country or type and list or tile. It also remembers the user’s collapse/expand choices.
Permissions, users and groups UI is improved.The breadcrumb has been updated, button order has been changed to ensure consistency. The search has also been improved: no longer case sensitive, does not require an exact match and searches across all channels.
If a menu item is disabled then the icon is too (previously the icon was enabled despite a disabled menu item).
Small improvements to the currently implemented Projects feature: improved button text, dialogue text, status text and improved styling on the project-details page.
Visual Editing panel now supports double fields AND long fields as well as an updated validation set to match the Content Perspective editor.
Added a filter to the Projects perspective to better support locating the project you are looking for and updated wording in many of the dialogs to provide more detailed information about the action being performed.
Added http response codes to the dropdown within the URL Rewriter Addon supporting marketers to select the redirect option.
Support for business users to be able to set the global resource bundles for a channel through the channel setting dialog.
After the introduction of the Commerce Components in Beta at the same time as V12.0, we have worked on new components and have worked on improving the existing components. Synchronised with V12.1, we will release a new version of the Commerce Components in Beta:
The Search Results Product list is a new component that displays a list or grid with results of a query a visitor typed in the search box component.
The Search Results Category list is a new component that displays a category listing with results of a query a visitor typed in the search box component.
The Search box is a new component that collects a query that a visitor types in the input box. The results of this query can be used in the Search Results components.
Autosuggest/Autocorrect. Next to the client side autosuggest/autocorrect capabilities that are available from BloomReach Personalization directly, the developer also can use a server side implementation.
Visitor selectable pagination. The site visitor can set the pagination size that the components use.
The separate product grids are consolidated in a single product grid that handles both queries as category search, as product search and as the combination of these (query inside a category). Also adds f.q. queries (all AND-ed) to the grids.
A product detail component that can be used to show details of a specific product.
Improved components architecture. Shared response data between components to prevent multiple redundant API calls. This makes the system more performant. Components were refactored to use Spring, greatly simplifying the implementation of personalization.
V12.1 is a minor release. This means that this release is backwards compatible with the previous release.
System support and requirements
Numerous changes in the system requirements have been made and some terminology changed. The full system requirements can be found via this web page: https://www.onehippo.org/about/release-notes/release-notes-overview.html. Highlighted are:
Added support for MySQL 5.7. Version 5.6 will remain supported till February 2018.
Added support for Debian 9 (Stretch).
Dropped support for Windows Server 2008 R2.
End-of-life and support
End-of-life table for releases
Please note that this release does not trigger any end-of-life status of other active releases.
With the new LockManager service (see above) the existing HippoLock API no longer is needed nor used by the product itself, and deprecated for removal with the next major release (v13).
We will stop supporting Windows 8.1 as client operating system in some of the coming releases. Microsoft ends standard support on this product in January 2018. Extended support will be offered till January 2023. If you rely on Windows 8.1 for the foreseeable future please let us know.
We will drop support for Debian 7 (Wheezy) as it will be EOL in May 2018.
BloomReach Experience and Hippo CMS are available as from November 30, 2017 onwards.