close

Filter

loading table of contents...

Release Notes / Version 12.2506.0

Table Of Contents

CoreMedia Core

Matured cm jshell for Automation

We matured the Java JShell-wrapper cm jshell. Main purpose of the adaptations is to pave paths for using cm jshell in automation scenarios.

Follow Section, “Matured cm jshell for Automation” for upgrade information.

(CMS-27867)

Content Feeder Configuration Changes and Deprecations

Content Feeder configuration properties for indexing blob properties have changed in this release, and may require adapting your configuration.

Follow Section, “Content Feeder Configuration Changes and Deprecations” for upgrade information.

(CMS-27819)

Removal of Deprecated Content Server Code

The following deprecated classes and methods have been removed:

  • com.coremedia.ldap.OrganizationalUnit

  • hox.corem.server.media.S3Store

    • Note: hox.corem.server.media.S3BlobStore handles encryption differently. It uses the buckets default method. If you want to keep the behavior of the removed class, you need to set the encryption mode to AES256 explicitly via cap.server.blobstore.s3.encryption-mode=AES256.

  • com.coremedia.ldap.LdapUserProvider.defaultLdapProperty(Properties, String, String)

  • com.coremedia.ldap.LdapUserProvider.getExpirationSeconds()

  • com.coremedia.ldap.LdapUserProvider.tokenize(String, String)

  • com.coremedia.ldap.UserProvider.getExpirationSeconds()

  • hox.corem.server.media.CompoundMediaStoreSelector.addSelector(MediaStoreSelector)

  • hox.corem.server.media.CompoundMediaStoreSelector.setSelectors(List)

  • hox.corem.server.media.CompoundMediaStoreSelector()

  • hox.corem.server.media.UploadContextImpl(MimeType, int, String, String, String, boolean)

Follow Section, “Removal of Deprecated Content Server Code” for upgrade information.

(CMS-27560)

Removal of Deprecated Code

The following classes, methods and fields were removed:

  • com.coremedia.translate.workflow.ValidateTranslationParametersAction.Parameters.targetSiteId (use field ValidateTranslationParametersAction.Parameters.targetSiteIds instead)

  • com.coremedia.translate.workflow.GetDerivedContentsAction.Parameters.getTargetSite() (use GetDerivedContentsAction.Parameters.getTargetSiteIds() and SitesService.getSite(java.lang.String) instead)

  • com.coremedia.translate.workflow.ListDiff.elementEqual(T, T) (instead of overriding this method, pass an equality predicate to the constructor)

  • com.coremedia.translate.workflow.ValidateTranslationParametersAction.Parameters(User, List<ContentObject>, String) (use other constructor instead)

Follow Section, “Removal of Deprecated Code” for upgrade information.

(CMS-27558)

CAE Feeder Configuration Changes and Deprecations

Multiple changes were made to CAE Feeder configuration properties, its defaults and related Java API. This includes changes for configuring indexed blob values and properties by name, that may require adapting your configuration. Other changes deprecate existing configuration properties or API, and introduce suggested replacements. For the latter, it is not necessary but still recommended to switch to new properties and API. Deprecated properties and API will be removed in future releases.

Follow Section, “CAE Feeder Configuration Changes and Deprecations” for upgrade information.

(CMS-27543)

New Options -g/--grpc-endpoint and --http-base-uri for Command Line Tools

The options - grpc-endpoint (short: -g) and -http-base-uri have been added to the command line tools. These have been applied to com.coremedia.cmdline.CommandLineClient, so that your custom command line clients may inherit them, too.

The command line option --grpc-endpoint <ENDPOINT> has been added to support a gRPC-based Unified API Connection. The ENDPOINT has the format HOSTNAME:PORT[,HOSTNAME:PORT]*.

Follow Section, “New Options -g/--grpc-endpoint and --http-base-uri for Command Line Tools” for upgrade information.

(CMS-27489)

CAE Feeder Option to Inherit Indexed Valid Time From Navigation Contexts

The CAE Feeder can now be configured to feed index fields validfrom and validto not only based on a CMLinkable's own validFrom and validTo fields, but by also taking validFrom and validTo fields of its navigation contexts into account. If enabled and after corresponding content has been re-indexed, then website search will not return CMLinkable hits anymore if their page was marked as invalid for the current time. This new behavior can be enabled with Blueprint configuration property caefeeder.valid-time.inherit-from-navigation=true (default is false). The default behavior is the same as before, but changes in the CAE Feeder Spring configuration may require adjustments for project customizations.

  • Previously, feeding validfrom and validto index fields was configured in Blueprint Spring configuration apps/cae-feeder/modules/search/caefeeder-blueprint-component/src/main/resources/META-INF/coremedia/caefeeder.xml using BeanPropertyFeedableElementMapping elements. This has been replaced with the configuration of a newly introduced dedicated ValidTimeFeedablePopulator in com.coremedia.blueprint.caefeeder.config.CaeFeederBlueprintAutoConfiguration. If needed, you can still keep custom alternative logic for feeding the valid time using a BeanPropertyFeedableElementMapping. The ValidTimeFeedablePopulator runs afterward and doesn't do anything, if validfrom or validto elements are already set in the Feedable.

  • The Spring bean navigationPathKeyFactory that was used in Blueprint caefeeder.xml has been replaced with bean navigationPathContentsFunction. If you called method TreePathKeyFactory#getPath(Content) of the navigationPathKeyFactory bean in custom code, then you can replace such usages by calling the Function#apply(Content) method of the new navigationPathContentsFunction bean. For details, see also the API documentation of com.coremedia.blueprint.base.caefeeder.navigation.CaeFeederNavigationConfiguration#navigationPathContentsFunction.

  • Public API interface com.coremedia.cap.feeder.MutableFeedable got a new default method setDateElement(String, java.time.Instant, Map) that works like existing methods but supports values of new type java.time.Instant.

  • Note, that if you enable property caefeeder.valid-time.inherit-from-navigation=true to feed an existing index, then contents need to be re-indexed before changes will become effective for them. Also, automatic re-indexing of many contents may happen once, if validFrom or validTo is already set at transitive navigation contents and the CAE Feeder is re-indexing other content below that navigation.

  • For more details on feeding valid time, have a look at the CAE Feeder Java API documentation in packages com.coremedia.blueprint.base.caefeeder and com.coremedia.blueprint.base.caefeeder.navigation.

(CMS-27206)

Fix Studio Search Filter "Last Edited By"

Fixed a bug in the Studio Search Filter “Last Edited By”, that caused a content item to not show up as edited by the current user, if its latest modification was a publication that destroyed old intermediate versions. The fix will become effective for newly indexed content items, or after changes were made to content items. The Solr field ‘editor’ was changed as part of the fix.

Follow Section, “Fix Studio Search Filter "Last Edited By"” for upgrade information.

(CMS-27056)

Enhanced translate.xliff.import.ignorableWhitespaceRegex

The pattern translate.xliff.import.ignorableWhitespaceRegex is meant to match those strings, that translators may perceive as empty (and thus, won’t provide a translation for).

Follow Section, “Enhanced translate.xliff.import.ignorableWhitespaceRegex” for upgrade information.

(CMS-26952)

Package 'hox.configuration' removed from public API

The deprecated classes and interfaces of package hox.configuration have been removed without replacement. Use Spring's external configuration API instead.

(CMS-25528)

New Method in ServerImportBuilder

Some internal mime type utilities have been abandoned in favor of the com.coremedia.mimetype.MimeTypeService. The serverimport tool needs the MimeTypeService now, and therefore the com.coremedia.cap.server.importexport.base.importer.ServerImportBuilder has been enhanced with a new method withMimeTypeService. The MimeTypeService is mandatory for serverimport. If you use the ServerImportBuilder, you must set a MimeTypeService, otherwise the ServerImportBuilder fails to build the ServerImport. In the unlikely case that you have implemented the ServerImportBuilder interface, you must implement the new method.

(CMS-23764)

Case-insensitive User and Group Search

The default of the content server configuration option cap.server.case-sensitive-member-search has been changed to false. This makes the user and group search in the Studio's User Manager app case-insensitive.

Follow Section, “Case-insensitive User and Group Search” for upgrade information.

(CMS-20282)

Removal of license property "workflow"

The content server license property “workflow” was always enabled. As it does not license any additional features, it has been removed from future licenses.

(CMS-379)

Search Results

Table Of Contents
warning

Your Internet Explorer is no longer supported.

Please use Mozilla Firefox, Google Chrome, or Microsoft Edge.