Changelogs

Last Updated: Jun 17, 2024
documentation for the dotCMS Content Management System

dotCMS 5.2.1

Available: Nov 6, 2019

dotCMS 5.2.1 is a major release which includes some significant upgrades and new features, performance and stability improvements, upgrades to a number of key components, and some significant changes to existing functionality.

Fixes

The 5.2.1 release includes fixes for a number of reported issues. For a list of issues addressed in dotCMS 5.2.1, please visit the dotCMS Github Repository.

  • Fixed an issue with the Forms preventing binary submits from working properly (#17468)
  • Fixed an incorrect default sort order on Custom Content Portlets (#17455)
  • Fixed an issue causing redirection to a blank page after adding a Menu Link (#17347)
  • Fixed an issue causing display of a blank page (instead of a license required message) when viewing Rules in Community Edition (#17512)
  • Fixed an issue preventing Forms from being added properly to personalized Pages (#17554)
  • Fixed an issue causing error messages in REST API calls to be incorrectly included in the response header (#16383)
  • Fixed an issue preventing the navigation cache from updating properly when a Page was copied (#17353)
  • Fixed an issue preventing proper display of some Container fields when changing the Max Contents field value (#16782)
  • Fixed an issue where the removed REST_API_CONTENT_ALLOW_FRONT_END_SAVING configuration property was still required in some circumstances (#17510)
  • Fixed an issue which could give anonymous users access to content when the Front-End User Role was explicitly given permissions to that content
  • Fixed issues preventing self-joined Relationship fields from working correctly in some REST API calls (#17477, #17492, #17529)
  • Fixed an issue preventing related content from displaying properly after a bundle containing related content is uploaded (#17528)
  • Fixed an issue preventing display of content with different live and working versions (#17451)
  • Fixed an issue allowing more than one content to be related on a Relationship field with One-to-One cardinality (#17524)
  • Fixed an issue which could cause content in a Container to be removed from the Page when the layout is changed under specific circumstances (#17435)
  • Fixed an issue which could cause a log exception and incorrect content display with an empty duplicate Container in a Page (#17553)
  • Fixed an issue which could cause the selected Site to change when copying and pasting a folder (#17113)
  • Fixed an issue which could allow content to be related to itself in certain circumstances (#17543)
  • Fixed an issue which could cause upload of new files via WebDAV to fail (#17506)
  • Fixed an issue which allowed only one user to see a Workflow Task with "Four Eyes Approval" in progress (#17250)

To view more information on these issues, please visit the dotCMS Github repository.

Known Issues in dotCMS 5.2.1

The following known issues in dotCMS 5.2.1 will be addressed in future dotCMS releases:

  • Translations for 2 newly added strings were not included in the release.
    • If you wish to include these translations in your 5.2.1 distribution, you can find the translations (with key names dot.common.press and dot.common.message.no.workflow.schemes) in the dotCMS Github repository, and manually add them to the language strings files in your distribution.

Privacy and Security Updates

The following changes in dotCMS 5.2.1 fix potential security or privacy issues which have been identified by dotCMS.

It's important to understand that both security and privacy issues may have privacy implications for your existing dotCMS installation. Therefore we recommend that you review these changes, and if necessary modify any appropriate content, to ensure your site maintains compliance with any security and privacy standards and regulations you adhere to.

  • Fixed an issue which could allow anonymous users access to working versions of content when the Front-End User Role was explicitly given View permissions to that content (#17526)

Additional Changes and Improvements in dotCMS 5.2.1

  • Added caching to 404 error results pages (#17377)
  • Improved performance by removing redundant Hibernate code (#17428)
  • Added language flags to relatable content on new Relationship fields (#16129)
  • Improved logging when content validation fails (#16165)
  • Added a message to indicate when there are no available Workflow Actions for content (#17533)
  • Improved responsiveness of Content Type field deletion (#16939)
  • Improved file access performance by caching file system metadata (#17269)
  • Improved File Container caching and performance (#16597)
  • Reduced unnecessary logging when a live version of content can not be found (#17551)
  • Geolocation information has been added to the Visitor object (#17495).

dotCMS 5.1.6

Available: Jun 5, 2019

dotCMS 5.1.6 is a maintenance release which includes fixes for several issues which affected some customers running the 5.1.0 and 5.1.5 releases.

Important Changes

Important changes in dotCMS 5.1.6 configuration may impact your configuration and system behavior when upgrading an existing site. Please read the documentation sections on all of these changes before upgrading from a previous release.

Changes to Default Behavior

The following differences in default behavior in dotCMS 5.1.6 may change your expectations and require a review of your administration practices. Please review all of these changes before upgrading from a previous release.

  • XSS Prevention Filter
    • In order to minimize XSS and CSRF vunerabilities, dotCMS now will block direct access to all files under the /html and /dotAdmin directories unless dotCMS is sent a valid referer or Origin header.
    • This new behavior is enabled by default, but can be turned off (allowing requests without a valid referrer or Origin to access these folders) by adding the following property to the dotmarketing-config.properties file:
      XSS_PROTECTION_ENABLED=false
    • For more information, please see the Security Best Practices documentation.

Improvements

The following improvements have been added in dotCMS 5.1.6:

Fixes

The 5.1.6 release includes fixes for a number of reported issues. For a list of issues addressed in dotCMS 5.1.6, please visit the dotCMS Github Repository.

  • Fixed an issue preventing Key/Value fields from being added to the index (#16313)
  • Fixed an issue which could cause a push of an entire site to fail (#16481, #16623)
  • Fixed an issue which could cause pagination in the back-end to fail when running under HTTPS (#16502)
  • Fixed an issue which caused a reindex of the File Asset Content Type to cause a full reindex (#16545)
  • Translated some back-end strings which were not translated in all supported languages (#16584, #16660)
  • Fixed an issue preventing the "All" Content Type selection from working with Custom Content Tools (#16587)
  • Fixed an issue which prevented limited users without access to the Content Tool from viewing Workflow Tasks (#16590)
  • Fixed an issue which prevented limited users from being able to logout properly (#16591)
  • Fixed an issue which prevented content from being removed from the index performing "Delete then Reindex" (#16592)
  • Fixed an issue preventing the /api/content/publish endpoint from working with multipart form data (FileAssets) (#16600)
  • Fixed an issue which caused static publishing to AWS S3 to fail when dotCMS was used in a Docker environment (#16612)
  • Fixed an issue preventing cache flush of individual Content Types from working (#16626)
  • Fixed an issue which could prevent deleted content from being cleared during a full reindex (#16664)
  • Fixed an issue preventing display of a front-end URL mapped page when logged into the back end (#16671)

To view more information on these issues, please visit the dotCMS Github repository.


dotCMS 5.1.5

Available: May 8, 2019

dotCMS 5.1.5 is an intermediate release which includes some minor improvements and features, and some significant performance improvements, specifically for customers with large content repositories.

Important Changes

A number of important changes in dotCMS 5.1.5 configuration may impact your performance when upgrading an existing site. Please read the documentation sections on all of these changes before upgrading from a previous release.

Important: The Minimum Java Version Has Changed

dotCMS 5.1.5 will only work with version 1.8.0_162 or later of Java.

  • Earlier versions of Java will not work, even for systems which were upgraded from earlier dotCMS releases.
  • If the java version cannot be updated, you must install the Unlimited Strength Jurisdiction Policy Files (available at here).
    • Not having this support will result in an "InvalidKeyException" when attempting to use 192 or 256 bit keys.

New Features

In addition to the Important Changes listed above, the following additional new features have been added in dotCMS 5.1.5:

  • Reindex performance has been greatly improved, especially for large content stores.
  • Added the ability to generate stateless API Access Tokens using JWT, which can be used for authentication by applications, and which can be issued and revoked from the back-end UI.
  • Page Layouts can now include custom CSS classes for specific Rows and Containers in the Layout.
  • You can now create Custom Content Tools which display only the Content Types you wish.
    • These behave the same as the existing Content Search screen, but display only a limited set of Content Types you define. For example, you can create a Tool which displays only Blog content, only News content, or a combination of Blogs and News.
    • For more information, please see the Custom Tool Groups documentation.
  • The DotAjaxDirector API now take both JSON and API tokens.
    • This allows you, for example, to add and push Bundles using an API method.
    • For more information, please see the DotAjaxDirector API documentation.
  • The Workflow "fire" REST API endpoint has been improved.
    • The fire endpoint now accepts binary (multipart) content and new Relationships fields.
      • The fire endpoint now provides full equivalence with the legacy /api/content endpoint.
      • It is recommended that all new development use the Workflow fire endpoint instead of the legacy /api/content endpoint.
    • The fire endpoint now accepts specification of Workflow Actions by the Action Name or ID.
  • Added additional logging to the Push Publishing feature (#16197)
  • The back-end login screen has been redesigned for simplicity and greater ease-of-use.
  • A new "post" method was added to the JSONTool which allows you to send a request to the remote server using an HTTP POST.
    • For more information, please see the JSONTool documentation.

Fixes

The 5.1.5 release includes fixes for a number of reported issues. For a list of issues addressed in dotCMS 5.1.5, please visit the dotCMS Github Repository.

  • Fixed an issue which could cause a compliation error when importing some OSGI packages (#16377)
  • Enabled the use of "text/*" types with the content REST API (#15934)
  • Removed a limitation of REST API calls that prevented them from respecting LoggedInUser permissions (#16135)
  • Fixed an issue that caused file-based Containers to render incorrectly in Page edit mode (#16263)
  • Fixed an issue where an incorrect error code was returned when using an invalid identifier with the /vtl REST API (#15799)
  • Removed an inactive button from the Community Edition Content Search screen (#16270)
  • Fixed an issue which could prevent content from being published when the Tag field was Required (#16026)
  • Fixed problems that resulted when using the word "content" as a key in a Key/Value field (#16046)
  • Fixed an issue causing a Javascript error when a zero content Container was displayed in the Page editor (#16329)
  • Fixed an issue which could cause incorrect content to be displayed from the cache when pushing content using a shorty ID (#16310)
  • Fixed an issue which could display an empty popup when displaying health for a single index (#16331)
  • Fixed an issue which could prevent content saves during switch-over to a new index (#15421)
  • Fixed an issue which could prevent saving of existing content after changing a field to Required (#16376)
  • Fixed an issue that could data corruption with self-reltaed content if the order of Relationships fields was changed (#16420)
  • Made several improvements to Vanity URL caching (#16333, #16337, #16413)
  • Fixed an issue which could cause display artifacts when an invalid icon was set for a Tool Group (#16246)

To view more information on these issues, please visit the dotCMS Github repository.

Deprecated Features

The following features have been officially deprecated in dotCMS 5.1.5. These features have not been removed, and still work normally, but are no longer fully supported, and may be removed in a future dotCMS release.

  • Version 2 of the FieldResource REST API has been replaced with a new version (version 3), and version 2 is now deprecated.


dotCMS 5.1.1

Available: Mar 25, 2019

dotCMS 5.1.1 is a maintenance release to fix one specific issue which affected some customers with the dotCMS 5.1.0 release.

It is recommended that all customers running the 5.1.0 release upgrade to dotCMS 5.1.1 as soon as possible.

Fixes

  • Navigation problems could be encountered in the Page editor under some circumstances (#16221)

To view more information on this issue, please visit the dotCMS Github repository.


dotCMS 5.1.0

Available: Mar 13, 2019

dotCMS 5.1.0 is a major release which includes some major upgrades and new features, performance and stability improvements, upgrades to a number of key components, and some significant changes to existing functionality.

This release includes a number of changes which may affect existing installations. We recommend that you read through this changelog in full before upgrading any existing installations.

Important Changes

A number of important changes in dotCMS 5.1.0 configuration may impact your performance when upgrading an existing site. Please read the documentation sections on all of these changes before upgrading from a previous release.

Changes to Default Behavior

The following differences in default behavior in dotCMS 5.1.0 may change your expectations and require a review of your administration practices. Please review all of these changes before upgrading from a previous release.

  • Permissions required to create new Content Types has increased.
    • The authority level required to create new Content Types has been increased from EDIT to PUBLISH (#15285)
    • This change will not have any effect on any existing Content Types.
      • However if you have users who need to be able to create new Content Types, you will need to ensure that these users have PUBLISH permissions for Content Types in all locations where they will be creating new Content Types.
    • Users with EDIT authority will still be able to modify Content Types, but will not be able to create new ones.

New Features

In addition to the Important Changes listed above, the following additional new features have been added in dotCMS 5.1.0:

  • New Relationships Fields
    • A new type of Relationship field has been added, offering significant improvements over the legacy Relationships from older versions.
    • You may now create Relationships by adding Relationships to Content Types as fields which are created and displayed separately for each side of the Relationship.
    • This change provides more flexibility in the types of Relationships you can create, allowing you to now create both One-to-One Relationships and Relationships which are visible from only one side of the Relationship.
    • These new Relationships also allow you to access related content directly via Lucene and Elasticsearch queries, treating related content as a field of the content, rather than requiring dedicated methods (such as $dotcontent.PullRelated()) to retrieve related content.
    • Using the new Relationship fields, you may also now search for related content from the Content Search screen.
    • Legacy Relationships and Legacy Relationships fields are both still supported for backward compatibility.
      • You may mix new Relationships fields and Legacy Relationships fields in the same Content Type.
      • You can choose to convert Legacy Relationships to new Relationships fields, but to ensure backward compatibility, conversion will not be done automatically.
      • A "Relationships" tab in Content Types will still be displayed if you have Legacy Relationships on a Content Type and have not added a Legacy Relationship field to the Content Type.
      • However the "Relationships" tab is now built as a regular Tab-Divider field followed by a Legacy Relationships field in the Content Type, and any new Relationship fields will not display in the Legacy Relationships field.
    • For information on how to upgrade your existing Relationships to the new Relationships fields, please see the Migrating Legacy Relationships documentation.
    • For more information, please see the Relationships documentation.
  • Containers as Files
    • You may now create and manage Containers completely via files.
    • These files may be managed via WebDAV and other file management operations, easing integration of dotCMS with your CI/CD operations.
    • As part of this change, some Containers in the dotCMS Starter site were converted to File Containers.
    • For more information, please see the File Based Containers documentation.
  • Custom REST Endpoints
    • You may now easily create custom REST endpoints using Velocity files.
    • All HTTP Methods for RESTful services are supported, including GET, POST, PUT, PATCH, and DELETE.
    • Velocity methods have been added which simplify the generation of output in JSON and XML formats for your custom endpoints.
    • A /vtl/dynamic REST endpoint has been added which allows you to render output from HTML and Velocity code dynamically.
    • For more information, please see the Scripted Custom Endpoints documentation.
  • GraphQL REST API
    • A REST API has been added that supports the GraphQL dynamic query language for retrieving content.
    • GraphQL allows you to selectively retrieve and arrange the content and fields you retrieve, enabling you to reduce the size of responses and insulate your applications from future changes to your dotCMS content and Content Types.
    • For more information, please see the GraphQL documentation.
  • Field Variables for Content Type Fields
    • You may now add "Field Variables" to fields in your Content Types.
    • These Field Variables can be used to distinguish and handle fields of the same field type differently, either within the same Content Type or among different Content Types.
    • The Field Variables for a Content Type field may be accessed from both Velocity code and Plugins.
    • These field variables are now used to allow customization of the WYSIWYG field, and are intended to be expanded to allow customization of other Content Type fields in the future.
  • WYSIWYG Field Customization on a per-Content Type and per-Field Basis
    • You may use the new Field Variables feature to specify tinyMCE customizations for each WYSIWYG field individually by specifyin a Field Variable named tinyMCEProps, which will be used to initialize the WYSIWYG field editor.
    • For more information, please see the WYSIWYG Field documentation.
  • CORS Header Configuration
    • You can now configure headers to send with CORS requests.
    • Headers can be configured as global defaults, and can be overridden for specific endpoints.
    • For more information, please see the CORS Header Configuration documentation.

Fixes

The 5.1.0 release includes fixes for a number of reported issues. For a list of issues addressed in dotCMS 5.1.0, please visit the dotCMS Github Repository.

  • Fixed an issue that could cause a Null Pointer Exception during Push Publishing under some conditions (#9110)
  • Fixed an incorrect message when incorrect values were entered while adding a new Language (#13168)
  • Fixed an issue which prevented the site selector list from being updated when using Login As (#14116)
  • Fixed an issue preventing the site selector from updating when using the Login As feature (#14116)
  • Fixed an issue which could cause different language versions of the same content to be saved separately (#14966)
  • Fixed an issue preventing a limited user from creating a new Content Type under certain conditions (#15285,#15308)
  • Fixed an issue which could cause an error on a Page if a Container on the Page was archived (#15331)
  • Fixed an issue causing Push Publish to fail in specific circumstances after adding a new Language (#15359)
  • Fixed an issue preventing the History and Permissions tabs on Events from being refreshed on save (#15439)
  • Fixed an issue preventing limited users from using the Device Preview feature (#15474)
  • Fixed an issue which could cause a new Site Search to fail (#15475)
  • Fixed an issue preventing Pages at the root of the site from being selectable as URL Map Detail pages (#15482)
  • Corrected some widget sorting issues in the Page Editor (#15486)
  • Fixed an issue which could cause an error when trying to rearrange or un-check the Required property on a Category field (#15504)
  • Fixed an issue which could prevent a limited user from navigating public pages in the back-end (#15506)
  • Fixed some issues which could cause Elasticsearch indexing to fail to complete (#15512)
  • Fixed an issue which could cause content save to freeze with a custom list of Languages (#15624)
  • Fixed an issue which could cause the Page Editor to render incorrectly when Velocity errors exist on the Page (#15640)
  • Fixed an issue which caused Push Publishing errors when Tags contained single quotes (#15792)
  • Removed the server name and port from generated URLs, to support containerization and applications behind proxies (#15833)
  • Synchronized the properties returned by the Page API /json and /render methods (#15928)

To view more information on these issues, please visit the dotCMS Github repository.

Deprecated Features

The following features have been officially deprecated in dotCMS 5.1.0. These features have not been removed, and still work normally, but are no longer fully supported, and may be removed in a future dotCMS release.

  • Legacy Relationships and Legacy Relationship fields
    • Legacy Relationships and Legacy Relationship fields on Content Types are both officially deprecated.
    • You may migrate all Legacy Relationships to the new Relationship Fields at any time.
    • Legacy Relationships, Legacy Relationship fields, and Velocity methods referencing Relationship name rather than Content Type field name will all continue to supported for a period of time.
      • However Legacy Relationships and code should be converted to new Relationship fields as soon as possible, to ensure forward compatibility with future releases.
  • CommentActions class
    • The CommentActions class has been deprecated and is no longer shipped with the dotCMS distribution. Customers with legacy code that relies on this class should add the class using a plugin.

Additional Changes and Improvements in dotCMS 5.1.0

  • Updated the Push Publish Workflow sub-Action dialog to allow Push Delete with Workflows.
  • Added navigation crumbtrails to the back-end user interface.
  • Made several improvements to the content search listing in the Page Editor.
  • Improved indexing performance when saving and publishing content.
  • Added "/servlet/" to the list of paths for the DefaultBackEndLoginRequiredWebInterceptor (#15548)
  • Added the hostName to the results in the /es/search REST endpoint (#15574)
  • Added a titleImage property to all content, allowing easy access to images on different Content Types (#15575)
  • Added additional logging for Push Publishing (#15595)
  • Improved error handling when a new Page is created with a URL that is already in use (#15951)
  • Added the ability for the /es/search REST API to return working as well as live content (#15982)
  • Upgraded the contentlet API to return related content for retrieved content items (#9411)
  • For source code distributions, the default path for functional tests was changed from /servlet/test to /dotTest (#15548)
  • Angular has been upgraded from version 4.4.6 to version 7.2.0.
  • PrimeNG has been upgraded from version 4.3.0 to version 7.0.3.
    • There were no UI changes in relation to this upgrade; the upgrade was made to maintain currency and compatibility only.

dotCMS 5.0.3

Available: Nov 14, 2018

dotCMS 5.0.3 is a maintenance release to fix several issues which affected some customers with the dotCMS 5.0.2 release.

It is recommended that all customers running the 5.0.0, 5.0.1, or 5.0.2 releases upgrade to dotCMS 5.0.3 as soon as possible.

Fixes

  • Site selector did not update to show appropriate sites when using the Login As feature (#14116)
  • Push publishing a file or page could fail after push removing the parent folder (#15022)
  • In some circumstances, Categories referenced by a content type were not pushed by dependency with the content (#15172)
  • The Elasticsearch transport port and http port configuration settings were not honored when using auto-wire clusters (#15277)
  • The list of Widget Types was not sorted when adding a Widget to a Page (#15290)
  • In the Content Type editor, Category fields could not be renamed without also changing other field parameters (#15309)
  • Static publish to an Amazon S3 bucket of pages using Sass could fail to render correctly (#15310)
  • Archiving a container which was used on a Page could cause an error when the Page was accessed on the front-end (#15331)
  • Image, Textarea and WYSIWYG fields on existing content could not be completely cleared in the content editing screen (#15340, #15353)
  • Some OSGi plugins placed in the felix/load directory were not loaded properly when dotCMS was started (#15358)
  • The Base Types list in the Content Types tool was not ordered correctly (#15382)
  • In some cases, not all appropriate Bulk Workflow Actions were displayed for a limited user (#15385)
  • Applying "Cascade Permissions" to a Site from the Roles & Tools screen did not update child permissions (#15389)
  • The NavResource REST API did not return a nested JSON object (#15390)
  • In the Page ditor, when any Container included Velocity code with errors, an error was displayed for the whole Page instead of for just the problem Container (#15395)
  • If the Template set for a Page did not exist, the template for the Page could not be changed (#15401)
  • The Host Content Type was incorrectly allowed to be moved from the SYSTEM HOST (#15410)
  • If a Content Type had a detail page that did not exist, the content would fail to index properly (#15423)
  • When a user session expired, the automatic redirect to the Login page did not work correctly (#15437)
  • Limited user was unable to reorder menus in the Page editor when any Page was locked by another user (#15450)
  • Device preview could fail for some users in some browsers (#15474)
  • Running a new Site Search job could fail in some circumstances (#15475)
  • When setting the Detail Page for a Content Type, pages on the root of the site could not be selected (#15482)
  • The PersonaTool.getPersonas() method did not work for unauthenticated (front-end) users (#15484)
  • Reorder of fields in a Content Type could fail in some circumstances (#15504)
  • Within the Page editor, Navigation on the Page sometimes did not work properly for limited users (#15506)
  • In some conditions, an Elasticsearch reindex could get stuck (#15512)
  • In some cases limited users could not view content which was permissioned to be viewable by unauthenticated users (CMS Anonymous) (#15523)

To view more information on these issues, please visit the dotCMS Github repository.

Deprecated Features

The following features have been officially deprecated in dotCMS 5.0.3. These features have not been removed, and still work normally, but are no longer fully supported, and may be removed in a future dotCMS release.

  • H2 database is deprecated.
    • The H2 database was previously fully supported for development only.
    • With the release of dotCMS 5.0.3, the H2 database is now officially deprecated, even for development.
    • The H2 database will be replaced in a future version with a dotCMS Docker image which uses a Postgres database.

dotCMS 5.0.2

Available: Sep 19, 2018

dotCMS 5.0.2 is a maintenance release to fix several issues which affected some customers with the dotCMS 5.0.1 release, and to address two newly identified security issues.

It is recommended that all customers running the 5.0.0 and dotCMS 5.0.1 releases upgrade to dotCMS ${version} as soon as possible.

Fixes

  • Added a check to the startup process to ensure that existing assets are not deleted if the configuration of the existing site is not correct (#14819).
  • Fixed an issue preventing sorting of content by Workflow Step if any content item was set as [Not Assigned] (#14897).
  • Fixed an issue which caused an error when attempting to push remove a Site (#15013).
  • Added the ability to specify a Default Template which is used by default when creating a new Page (#15031).
  • Fixed an issue could cause content to be saved twice when the content API was used to trigger a Workflow Action (#15053).
  • Fixed an issue which prevented the options from updating after folder permissions were changed (#15055).
  • Fixed an issue which could prevent relative paths in stylesheet links from working properly (#15141).
  • Fixed an issue which could cause loss of a binary field value in certain circumstances on a content with a required relationship (#15157).
  • Fixed an issue which could prevent proper import or export of Categories containing non-Latin characters (#15174).
  • Fixed an issue which could prevent push publishing of copied sites (#15175).
  • Fixed an issue which could cause zero length files when doing a static push without a language variable in the bucket name (#15176).
  • Fixed an issue which could cause an unnecessary close confirmation prompt when content was not edited (#15177).
  • Fixed an issue which could cause a Workflow Action popup to display incorrectly in some circumstances (#15184).
  • Fixed an issue which could sometimes prevent Workflow Tasks from displaying in the task portlet (#15186).
  • Fixed an issue which could prevent a content from being updated properly via the Workflow REST API in some circumstances (#15192).
  • Fixed an issue causing the wrong Content Type to initially display when editing a content item (#15198).
  • Fixed an issue causing incorrect display of content changes when a value for a Required field was not supplied (#15199).
  • Fixed an issue which could prevent widget pre-execute code from displaying in some circumstances #15202).
  • Fixed an issue preventing the Detail Page of a Content Type from displaying properly when using a Community license (#15217, #15195).
  • Fixed an issue which could cause display errors when certain pre-defined names were used for Velocity variables (#15219).
  • Improved Sass performance when using the LibSass compiler by using fully minified (compressed) CSS (#15222).
  • Changed the priority in which Vanity URLs resolve paths, to prevent potential issues in some circumstances (#15223).
  • Fixed an issue which could prevent the NavTool from working properly when a Page was viewed in edit mode (#15229, #15162).
  • Fixed an issue which could cause Elasticsearch operations to become stuck (#15230).
  • Fixed an issue preventing the LoginAs feature from working properly with some Role configurations (#15237).
  • Fixed an issue preventing viewing of content in a custom workflow if the dotCMS instance did not have a valid license (#15238).
  • Removed an unnecessary message regarding Workflow Actions when viewing a Site (#15272).
  • Fixed an issue which could make a widget incorrectly appear to have not been updated after an edit (#15283).
  • Fixed an issue which could cause an error when a specific method is called under certain circumstances within a plugin (#15297).

To view more information on these issues, please visit the dotCMS Github repository.

Security and Privacy Updates

For more information on security issues resolved in this release, please see the Known Security Issues documentation.

Details of the two security issues fixed in this release are currently being withheld, but will be added to the Known Security Issues documentation as soon as affected customers have been notified and have had an opportunity to upgrade or mitigate the issues.


dotCMS 5.0.1

Available: Aug 20, 2018

dotCMS 5.0.1 is a maintenance release to fix several issues which affected some customers with the dotCMS 5.0.0 release.

Fixes

  • Improved messages when an attempt is made to create a new Language with the wrong values (#13168).
  • Restored previous behavior auto-selecting a recently edited Content Type in the Content Search window (#13719).
  • Fixed incorrectly displayed actions when using the Workflow "Who can use" filter (#14534).
  • Improved feedback to the user when the user does have permissions to edit a Content Type (#14999).
  • Fixed an issue which could cause the Default Host to be lost after a push under certain conditions (#15020).
  • Fixed an issue preventing futre Time Machine snapshots from showing the correct content in some circumstances (#15014).
  • Fixed a minor issue with the Content Search listing after editing content (#15064).
  • Fixed an issue preventing the deletion of Content Types in dotCMS Community Edition (#15090).
  • Fixed an issue with the XMLTool Viewtool (#15091).
  • Fixed an issue with the Page edit screen when running dotCMS on Windows Server (#15097).
  • Fixed an issue preventing the addition of files to some custom File Content Types (#15105).
  • Fixed an error which could prevent the creation of new tags when adding tags using double-byte languages (#15107).
  • Fixed an issue which caused errors in the Containers screen under certain conditions (#15114).
  • Fixed an issue which could cause errors in the Content Types Tool after a push (#15124).
  • Fixed an issue preventing the Save Draft Workflow sub-action from working properly with some Content Types (#15129).
  • Fixed an issue preventing servlet OSGI plugins from being added properly (#15145).
  • Fixed an issue which could prevent the creation of subcategories under multilingual Category names (#15148).

To view more information on these issues, please visit the dotCMS Github repository.


dotCMS 4.3.2

Available: Feb 28, 2018

dotCMS 4.3.2 is a maintenance release to fix a specific issue which affected a new feature in the 4.3.0 release.

Fixes

The 4.3.2 release includes a fix for a new reported issue in dotCMS 4.3:

  • Resolved an issue preventing the new libsass compiler support from working properly (#13449).
    • It is recommended that all customers upgrading to dotCMS 4.3 from an earlier version upgrade directly to 4.3.2
    • However only customers who wish to use features in the new Sass compiler will be affected by this issue if an earlier release of 4.3 is used.

To view more information on this issue, please visit the dotCMS Github repository.


dotCMS 4.3.1

Available: Feb 22, 2018

dotCMS 4.3.1 is a maintenance release to fix a specific issue which affected some customers with the 4.2.2 and 4.3.0 releases using the dotCMS back-end with a specific version of the Chrome browser.

Fixes

The 4.3.1 release includes a fix for the following reported issue introduced in dotCMS 4.2.0:

  • Resolved an issue which caused an error when trying to view the Template Builder when using a specific version of the Chrome browser (#13571).

To view more information on this issue, please visit the dotCMS Github repository.


dotCMS 4.3.0

Available: Feb 21, 2018

dotCMS 4.3.0 is a significant release which includes a number of notable changes including two new features, performance and security improvements, and fixes for a number of issues which affected some previous releases.

Important Changes

Changes to Default Behavior

The following differences in default behavior in dotCMS 4.3.0 may change your expectations and require a review of your administration practices. Please review all of these changes before upgrading from a previous release.

  • Default SASS Compiler Changed
    • The jruby-based SASS compiler has been replaced with the newer and more full-featured libsass.
    • For more information, including how to re-enable the legacy jruby-based SASS compiler, please see below.

Fixes

The 4.3.0 release includes fixes for a number of reported issues, including but not limited to the following:

  • Fixed an issue causing an error in specific conditions after a Push Publishing bundle has been manually deleted 13502).
  • Fixed an issue preventing LDAP validation with a Platform license (#13478).
  • Fixed an issue preventing TikaUtils from respecting Categories and Tags 13429).
  • Fixed an issue which could prevent the push of an entire site from succeeding (#13419).
  • Updated the content REST API to return Category information for unauthenticated users if the CMS Anonymous user has permission to view the Category (#13418).
  • Fixed an issue which could cause a push publish to fail if content contained special characters in a Unique field (#13392).
  • Fixed an issue which could cause push publish triggered via a Workflow to fail (#13373).
  • Fixed an issue which caused an error if the Integrity Checker was run twice in a row when using the SQL Server database (#13249).
  • Fixed an issue preventing the Content Type Permissions tab from showing inherited permissions properly under specific conditions (#13180).
  • Fixed an issue with the password reset function (#13117).
  • Fixed a potential push publishing error due to a caching error (#13115).
  • Fixed an error preventing the "/edit" URL parameter from working correctly (#13026).
  • Fixed an issue causing Categories to be removed from a Page when certain custom workflow actions were taken on the Page (#12333).
  • Fixed an issue preventing push history from being created for bundles which were force pushed (#9309).

To view more information on these issues, please visit the dotCMS Github repository.

New Features

In addition to the Important Changes listed above, the following additional new features have been added in dotCMS 4.3.0:

  • New Static Publishing Endpoints (#12669, 12521, 11892).
  • "Four Eyes" Principle Workflow Sub-Action
    • The new "Four Eyes" Workflow Sub-Action enables you to require approval by any two (or more) users from among a group of users.
    • This Sub-Action is an enhancement of the existing "Require Multiple Approvers" Sub-Action (which required approval from all specified users), to allow specification of a group of users and just require approval from a set number of those users, without requiring approval from all of them.
    • For more information, please see the Multiple Approval Sub-Actions documentation.

Additional Changes and Improvements in dotCMS 4.3.0

  • The jruby-based SASS compiler has been replaced with the newer and more full-featured libsass (#13449).
    • Legacy (jruby-based) SASS compiler support has been deprecated.
      • The old jruby-based SASS compiler still ships with dotCMS, but is disabled by default.
      • You may re-enable the legacy jruby-based SASS compiler by changing the new USE_LIBSASS_FOR_SASS_COMPILATION property from true (the default) to false.
  • The LESS compiler has been deprecated (#13449).
    • No additional upgrades are planned for the LESS compiler included in the dotCMS distribution.
    • All support for LESS compilation may be completely removed in a future version of dotCMS.


dotCMS 4.2.2

Available: Nov 14, 2017

dotCMS 4.2.2 is a maintenance release to fix an important issue which affected some customers with the dotCMS 4.2.0 and 4.2.1 releases. It is recommended that all customers running the 4.x series upgrade to 4.2.2 as there are important fixes in this release.

Important Notes

  • It is recommended that customers upgrading to release 4.2.2 from a release prior to dotCMS 4.1.0 upgrade directly to release 4.2.2 rather than upgrading incrementally.
    • Customers who upgrade incrementally should make sure to read and follow instructions in the 4.1.0 Change Logs.

Fixes

The 4.2.2 release includes fixes for the following reported issues introduced in dotCMS 4.2.0:

  • Resolved an issue causing the sort order of fields within Content Types to be reordered incorrectly (#13052).

To view more information on these issues, please visit the dotCMS Github repository.


dotCMS 4.2.1

Available: Nov 12, 2017

dotCMS 4.2.1 is a maintenance release to fix several issues which affected some customers with the dotCMS 4.2.0 release. It is recommended that all customers running the 4.x series upgrade to 4.2.1 as there are important fixes in this release and the 4.2.0 release in general.

Important Notes

  • It is recommended that customers upgrading to release 4.2.1 from a release prior to dotCMS 4.1.0 upgrade directly to release 4.2.1 rather than upgrading incrementally.
    • Customers who upgrade incrementally should make sure to read and follow instructions in the 4.1.0 Change Logs.

Fixes

The 4.2.1 release includes fixes for the following reported issues introduced in dotCMS 4.1.0:

  • Resolved an issue when upgrading from dotCMS v2.5.7 or earlier to dotCMS 3.x and higher (#12862).
  • Fixed an issue preventing the operation of some Vanity URLs which begin with "/c" (#12918).
  • Fixed an issue which could cause an exception from the Query Tool when searching in a Category field (#12959).
  • Fixed an issue which could prevent the creation of a Push Publishing endpoint (#12977).
  • Fixed an issue which could prevent Pages from displaying for customers using Oracle with a Prime level Enterprise license (#13007).
  • Fixed an issue which could prevent Vanity URLs converted from earlier versions of dotCMS from displaying (#13017).
  • Corrected an incorrect default property setting which could prevent the login page from appearing when a non-validated user attempts to access a resource with restricted Permissions (#13025).

To view more information on these issues, please visit the dotCMS Github repository.


dotCMS 3.7.2

Available: Oct 17, 2017

dotCMS 3.7.2 is a maintenance release to fix several issues which affected some customers with the dotCMS 3.7.1 release.

Fixes

The 3.7.2 release includes fixes for the following reported issues introduced in dotCMS 4.1.0:

  • Fixed an issue which could cause site search jobs run at the same time to overwrite files (#8552).
  • Fixed a case where FileTool does not respect the DEFAULT_FILE_TO_DEFAULT_LANGUAGE property (#10515).
  • Fixed an issue preventing configuration of a "receive from" endpoint when using the Oracle database (#10825).
  • Fixed an issue preventing the push of an empty template when using the Oracle database (#10828).
  • Fixed an issue preventing proper display of Boolean field values within Containers (#10869).
  • Fixed an issue which sometimes prevented trial license requests from working (#10967).
  • Changed Rules caching method to prevent potential "ping-pong" in a clustered environment (#11315).
  • Changed Elasticsearch configuration to reduce memory usage (#11330).
  • Updated the default H22 cache configuration to prevent potential deadlocks (#11592).
  • Fixed an issue preventing compilation of static plugins on Windows environments (#11622).
  • Fixed a potential out of memory issue when push publishing large bundles (#11835).
  • Fixed an issue with REST API calls accessing legacy files using ShortyIds (#12627).

To view more information on these issues, please visit the dotCMS Github repository.

Security Improvements

The 3.7.2 release includes solutions for the following potential security issues in the 3.7.1 release:

  • Prevented a potential file upload vulnerability by an authenticated user (#10974).
  • Prevented a potential SQL injection vulnerability by an authenticated user when using a specific database with dotCMS (#11811).
  • Prevented a potential information retrieval vulnerability by an unauthenticated user (#11813).

To view more information on these issues, please visit the dotCMS Github repository.


dotCMS 4.2.0

Available: Oct 16, 2017

dotCMS 4.2.0 is a minor release which includes a number of significant changes including several new features, considerable performance improvements, and fixes for a number of issues which affected previous releases.

Important Changes

A number of important changes in dotCMS 4.2.0 configuration may impact your performance when upgrading an existing site. Please read the documentation sections on all of these changes before upgrading from a previous release.

Required Post-Upgrade Actions

Important: Due to changes in the database in dotCMS 4.2.0, it is necessary to manually re-index your site after the upgrade is complete.

Configuration Changes

The following important changes have been made to configuration in dotCMS 4.2.0:

  • Velocity Cache Region Changes.
    • All Velocity cache regions may now be stored to persistent cache (e.g. disk cache, Hazelcast, Redis, etc.).
    • However it is important that if the velocitycache region is set to use any persistent cache, the velocitymacrocache region must also be configured to use the same persistent cache.
    • For more information, please see the Cache Chaining documentation.
  • Inactive Cluster Server Period Removed: The REMOVE_INACTIVE_CLUSTER_SERVER_PERIOD property has been removed (#12573).
    • Licenses previously utilized by an inactive clustered node are now immediately freed once the heartbeat time-out on that node has been reached.
  • HTTP Only Session Cookie Property Default: The useHttpOnly property is set to false by default.
    • This property must be set to true to set all dotCMS cookies to HTTP only, and helps to mitigate the risk of client side scripting when accessing a protected cookie.
  • Cluster Configuration Property Changes: The DIST_INDEXATION_ENABLED property has been removed from the portal.properties file.

Changes to Default Behavior

The following differences in default behavior in dotCMS 4.2.0 may change your expectations and require a review of your administration practices. Please review all of these changes before upgrading from a previous release.

  • WAR File Deployment. When generating a WAR file, the generated file name has been changed from dotcms.war to ROOT.war, to conform better with application server standards and expectations (#11961).
  • Struts Actions. For security reasons, ALL front end Struts actions are now disabled by default (#11784).
    • This includes all paths found under /dotCMS/*.
    • Any Struts actions required for your site operation must be explicitly enabled in the dotmarketing-config.properties file via the properties extension file.
  • Vanity URL Conversion. When upgrading an earlier version of dotCMS to release 4.2.0, any existing Vanity URLs (created in an earlier version of dotCMS) will be automatically converted to the new Vanity URL Content Type, and configured as either a 200 forward or a 301 redirect, depending on the URL of the "Enter URL to Redirect To" field in the original Vanity URL:
    • URLs beginning with a "/" will be converted to 200/forward.
    • URLs containing "//" will be converted to 301/redirect.
    • The new Vanity URL Content Type contains additional redirect and forward options and after any upgrade, you should review all your Vanity URLs to ensure they redirect or forward in the way you intend.
  • #dotParse Directive Paths. In order to prevent URL errors, the #dotParse directive is less forgiving and no longer supports paths containing invalid slashes ("/"), such as paths with extra slashes (e.g. "/application/vtl///test.vtl") and pages or files with a trailing slash (e.g. "/company/about-us/index/").
    • If you have existing Velocity code which contains or generates directives using such invalid paths, it will not longer work after the upgrade, and the code will need to be modified to ensure correct paths are used.

New Features

The following new features have been added in dotCMS 4.2.0:

  • Layout as a Service: Page and Content Relationships REST API.
    • The new Page REST API enables you to pull all the elements of any page, each encapsulated into a separate JSON obect, either in JSON format or as rendered HTML. This allows single page apps (SPAs) and other iOT applications to retrieve not just raw content, but also fully rendered layouts and modules, which include server side personalization and other context driven information.
    • The new Content Relationships REST API enables you to perform a content pull that automatically includes all related items for each item returned in the content pull. This greatly simplifies the retrieval and management of related content without the need for additional content pulls for related content.
  • Vanity URLs as Content. Vanity URLs have been converted to a standard content type, and are now accessible as content by all existing dotCMS features and tools, including Push Publishing, importing, exporting, permissions, and REST API management.
    • Vanity URLs may now be viewed from both the Vanity URLs tool (Marketing → Vanity URLs) and the standard Content Search tool (Content → Search).
    • Existing Vanity URLs will be automatically converted to content when upgrading to release 4.2.0 from an earlier release.
  • Language Variables as Content. Language Variables have been converted to a standard content type, and are now accessible as content by all existing dotCMS features and tools, including Push Publishing, importing, exporting, permissions, and REST API management.
    • Existing Language Variables will not be converted to content when upgrading to release 4.2.0 from an earlier release. Instead:
      • Language Variables created in earlier releases will still show under the Languages tool, while Language Variables created as content will show under the Content Search screen./li>
      • Language Variables in both the Languages and Content Search screens (both old and new) will be respected; if the same Language Variable exists in both places, the value from the Languages screen will be used.
      • You may convert old Language Variables to content by importing them into the Content Search screen.
  • WYSIWYG Field URL Format. You may now specify the URL format that will be used when links are inserted into WYSIWYG fields. For more information, please see the WYSIWYG Field documentation.

Fixes

The 4.2.0 release includes fixes for a number of reported issues, including but not limited to the following:

  • Fixed an issue which could cause some assets to lose their contents if multiple site search index jobs were scheduled at the same time (#8552).
  • Fixed an issue causing Network status to display as red (error) when more than one server was configured (#11933).
  • Fixed a problem pushing content when there is no live version of the Site (#11977).
  • Fixed an issue in the dojo library configuration preventing dropdowns and filtering select fields from working properly on Windows 10 (#12007).
  • JBoss fix for Boolean Casting error in 4.1.1 - (#12086).
  • Fixed an issue which sometimes caused an exception message in the log files when the /edit URL was used to access a page (#12170).
  • Timestamp inconsistency fixed for clustered nodes - (#12276).
  • Improved push publishing bundle upload to allow upload of a bundle from the same server it was generated on (#12465).
  • Fixed an issue preventing the thumbnail from being displayed when a new image is uploaded to a binary field (#12490).
  • Fixed an issue preventing the Velocity macro cache from being populated properly (#12523).
  • Fixed an issue when saving a Form system field (#12684).
  • Fixed an issue which could cause duplicate content on a receiving server if the content type has more than one unique field (#12686).
  • Fixed an issue where an extra comma was appended at the end of the options saved to a multi-select field #12715).
  • Fixed slow performance issues when push publishing content with many relationships (#12840).
  • Fixed an issue preventing a tool from being added to a new Tool Group after it was added to a different Tool Group (#12635).
  • Prevented the potential to display the contents of VTL files from the front-end (#12855).
  • Fixed incorrect return values and status codes from the content API (#11878)

To view more information on these issues, please visit the dotCMS Github repository.

Additional Changes and Improvements

The following additional changes have been made in dotCMS 4.2.0:

  • The generated WAR file name has been changed from dotcms.war to ROOT.war (#11961).
  • Push Publishing: A number of significant performance improvements have been made to Push Publishing:
    • Categories can now be pushed as a dependency of content (#12125).
    • Push Publishing now only retries failed pushes to the specific endpoints which failed (#11500).
    • When a push fails, the pushed bundle is no longer regenerated in order to retry the push (#12038).
  • Performance Improvements: Significant performance improvements have been made in a number of areas:
    • Saving Content: The performance of the contentlet getInode method has been improved (#12488).
    • Accessing Content: A number of performance improvements were made when searching, indexing, editing, and saving content from the dotCMS back-end (#12497).
    • User Interface: All Angular routes are now loaded lazily, improving performance when loading the application (#12378).
  • Library and Tool Upgrades: The following development tools and included libraries have been upgraded or changed:
    • The NG user interface library has been upgraded to version 4.2.4.
    • The Hazelcast library has been upgraded to version 3.8.4.
    • The com.moowork.node library has been upgraded to version 1.2.0.
    • Replaced the legacy edu.emory.mathcs.backport.java.util.concurrent library with the java.util.concurrent library to improve portability and maintainability.
    • UI build tools have been migrated from webpack to ng-cli.
  • Property Changes: The following properties have been changed:
    • Removed the DIST_INDEXATION_ENABLED property from the portal.properties file (#12453).
      • In most cases, only the following three properties are now required to configure clustering: AUTOWIRE_CLUSTER_TRANSPORT, AUTOWIRE_CLUSTER_ES, and AUTOWIRE_MANAGE_ES_REPLICAS.
  • Manually specifying the IP Address and port for cache and Elasticsearch has been deprecated.
    • Manual cluster configuration is still supported, but clients using manual cluster configuration should begin planning to change to use cluster auto-wiring or to externalize resources instead, as support for manual cluster configuration may be removed in a future release.
  • Added support for running the dotCMS back-end in Internet Explorer 11 (in addition to MS Edge).

Known Issues

  • Error Messages Logged when Performing a Static Push (#12187).
    • Amazon AWS has a known issue (https://github.com/aws/aws-sdk-java/issues/567), which will generate some noise in the dotcms logs when performing a static push to Amazon AWS.
    • Amazon is working to address the issue, but in the meantime, the stack traces returned from AWS in the dotcms.log file can be ignored.

dotCMS 4.1.0

Available: Jun 1, 2017

dotCMS 4.1.0 is a considered a minor release but still introduces several new features, enhances a few existing features, introduces performance enhancements, and provides fixes some issues with the 4.0.1 release.

New Features

In addition to the Important Changes listed above, the following additional new features have been added in dotCMS 4.1.0:

REST API Content Type Management

  • New JSON based Content Types
  • New REST Endpoints for defining and managing Content Types, Fields and Field Variables
  • New API and builders to programmatically create content types.
  • Backwards compatible
  • Old structure code, factories and caches are all deprecated.

Hazelcast integration

  • dotCMS 4.1.0 integrates Hazelcast both as a new cache provider and at the Cluster Transport layer.
  • Hazelcast Embedded and Client Cache Implementations
  • Hazelcast replaces JGroups for network discovery and topology
  • Performance optimizations on distributed caches invalidations (for Hazelcast and Redis) so cache-messages and invalidation-operations are not unnecessarily spread over cluster members

Progressive JPEG Support

  • dotCMS now supports progressive JPEG images, both for regular display and as a conversion filter. For more information, please see the Image Resizing and Processing documentation.

Use of Environment Variables in Properties Files

  • You may now reference environment and system variables within your properties files, enabling you to maintain common properties files across multiple dotCMS instances, while making changes to to each local server through environment and system variables. For more information, please see the Changing dotCMS Configuration Properties documentation

New Default Cache Provider/Improvements

  • caffeineCache has been made the default provider shipping with dotCMS. The caffeineCache provides a more efficient LFU algorithm, vs. Guava�۪s LRU. It will reuse the region settings made for the Guava cache.
  • H2CacheProvider has been removed. If you have any regions using the H2CacheProvider, they will need to be updated to use the H22Provider.
  • Live and Working caches have been removed and their regions are no longer needed.
  • FieldCache has been removed. Calls to it are now made to the ContentType cache
  • Velocity only requires 2 cache regions, VelocityCache and VelocityMacroCache. Currently, both of these regions can be serialized and or written to disk or clustered.

Important Changes

A number of important changes in dotCMS 4.1.0 configuration may impact your performance when upgrading an existing site. Please read the documentation sections on all of these changes before upgrading from a previous release.

Configuration Changes

The following important changes have been made to configuration in dotCMS 4.1.0:

  • Vanity URLs Upgraded from earlier versions must be manually edited to restore the correct case in the URLs.
    • When upgrading to release 4.1.0 from an earlier release of dotCMS, all Vanity URLs will have their case changed to lower case.
      • However certain Vanity URLs (such as 404 redirects) require a specific case to work properly.
      • Therefore it is recommended that, after upgrading to release 4.1.0, you manually review all upgraded Vanity URLs, and if necessary restore the case.
    • If you wish to avoid this issue when upgrading from an earlier version of dotCMS, you may upgrade directly to release 4.2.1 or higher instead of release 4.1.0.
  • Properties files are automatically reloaded after each change.
    • The dotmarketing-config.properties, dotcms-config-cluster.properties, and portal.properties files are now continually monitored for changes and automatically reloaded as soon as the file timestamp changes.
      • In previous versions of dotCMS, changes could take as long as 5 minutes to be reflected, but changes are now reflected almost immediately (typically within a few seconds).
    • If you wish to restore the previous behavior, you may add the following property to the dotmarketing-config.properties file: dotcms.usewatchermode=false.
    • For more information, please see the Reloading Property Files section of the Changing dotCMS Configuration Properties documentation.
  • CSV import now allows only Velocity field variable names as column headers.
    • You may no longer use field labels as column names.
    • For more information, please see the Importing Content documentation.
  • JGroups has been deprecated in favor of Hazelcast for cluster communication.
    • If you have jgroups cluster specific config, you will need to remove it and place such configuration in the Hazelcast .xml files.

Changes to Default Behavior

In addition, the following differences in default behavior in dotCMS 4.1.0 may change your expectations and require a review of your administration practices. Please review all of these changes before upgrading from a previous release:

  • All Vanity URLs, folder, file and page lookups are now case insensitive - they are forced to lower-case (#11264).
    • All new Vanity URLs will be forced to use only lower-case characters when created.
    • All existing Vanity URLs will be converted to lower-case (only) on upgrade to dotCMS 4.1.0 from an earlier version of dotCMS.
  • OSGI plugins that override dotCMS java classes now use ByteBuddy instead of jamm (#11142).This change will fix some issues with OSGI Plugins, however, all upgrading clients with a plugin that overrides the startup.sh/startup.bat files will need to modify their plugin to incorporate the new changes to those files.
    • In addition, a new addClassTodotCMSClassLoader(String className) method was added to the activator, which when called will add your class to the dotCMS Classloader.
  • The live cache and working cache have been removed.
    • If you have any plugins from earlier versions of dotCMS which make use of the live and working cache, you will need to update them for dotCMS 4.1.0 to use the new pattern.
    • For more information on these changes, please see issues #10947 and #11143 in the dotCMS Github repository.
  • Properties files now support the inclusion of environment and system variables.
  • Properties files are now automatically and immediately reloaded any time they are changed.
  • Change in Variable Name used for Binary Uploads in the REST Content API
    • RESTfully POSTed content including Binary fields are now expected to use the variable binary + field order.
      • For example, if the binary field is the 6th field on the content type, the variable name to use is binary6.
    • If you have automated scripts posting binaries using the REST API, please ensure that you are sending the updated variable name in your POST. You can see the proper name on the Content Type definition screen.

Fixes

The 4.1.0 release includes fixes for a number of reported issues, including but not limited to the following:

  • Potential read timeout when using JWT authentication behind a proxy (#11348).
  • OAuth plugin did not respect the `json.web.token.allowhttp` property (#11412).
  • A structure reindex could not be run from the Content Search tab (#11347).
  • Hibernate second level cache changed from ehcache to NoCache (#11205).
  • Improved messages displayed when a user doesn't have permissions to edit some types of content (#11366).
  • Images were not always displayed on Events displayed on the front-end (#11388).

To view more information on these issues, please visit the dotCMS Github repository.

Upgrading to 4.1.0

  • Database
    • DB User for dotCMS requires Drop/Add Trigger permissions in order for the database to successfully upgrade to 4.1.
    • There are 2 SQL startup tasks that lowercase vanity urls and identifiers in the database. These are to help DB performance when doing url lookups when no cached object is found.
  • -javaagent in startup scripts
    • The jamm.jar is no longer used. Please update any custom bin/startup.sh scripts and remove that as the -javaagent. Instead, set the -javaagent to ByteBuddy as seen here: https://github.com/dotCMS/core/blob/fc239043e782d04ca4a7830cee678f56cc838c92/bin/startup.sh#L60
  • H2CacheProvider is removed
    • If you have any custom configed cache regions, you should change these to the newer H22Cache

Additional Changes and Improvements in dotCMS 4.1.0

  • Velocity performance improvements: A number of performance and memory usage improvements were made to the Velocity engine. Please click the links below for details on these changes:
    • Internal reliance on Velocity macros has been minimized, and dotCMS now relies on pure java Directives vs Velocity macros. This means more compiled code and less interpreted code, resulting in shorter and faster code execution. The #dotParse and #parseContainer macros have been replaced with Velocity **directives**, significantly improving their performance and memory usage (#11362).
    • Velocity Memory Improvements (#11236).
    • Velocity objects in-memory size reduced 50-75%.
    • All velocity objects are now cacheable and Velocity cache regions are much simplified.
    • Redundant evaluation of toString disabled in Velocity code (#11441).
    • Improved performance of DotTemplateTool and Live mode (#11084).
  • Updated the TestInitialContext.java file to read environmental variables (#11319).

Known Issues 4.1.0

  • License Notifications for MSSQL and Oracle (#11710)
  • Respect Default Page to Default Language Property (#11654)
  • Navigation Tool and Page Fall Thru Property (#11640)
  • Loading Users Needs Performance Improvement (#11519)

Deprecated Features Removed 4.1.0

    • Velocity Macros Removed:
      • #pullContent macro code should be replaced with the $dotContent Tool:
    Change
    
    #pullContent("+structureName:Client +Client.footer:yes*","6","random")
    
    To
    
    #set($list = $dotcontent.pull("+structureName:Client +Client.footer:yes*","6","random"))
    					
          • #pullRelated macro code should be replaced with the $dotContent Tool:
        Change
        
        #pullRelatedContent("relationshipName" "211e0406-1c2e-4975-9027-3480c2088464" 10 "modDate")
        
        To
        
        #set($list = $dotcontent.pullRelated("relationshipName","$!{parent.identifier}",false,10,"modDate")
        
            • The #dotParse and #parseContainer macros have been replaced with Velocity directives but this requires no code changes, they simply work faster/better.
            • The following macros have been removed completely (replace with the $dotContent.find tool):
              • #getContent
              • #getContentDetail
              • #getContentDetailByIdentifier
              • #getContentMapDetail
              • #getContentMapDetailByIdentifier
          • Deprecated API's - see the new Content Type API Documentation
            • com.dotmarketing.portlets.structure.business.StructureAPI
            • com.dotmarketing.portlets.structure.business.FieldAPI
            • com.dotmarketing.portlets.structure.factories.FieldFactory
            • com.dotmarketing.cms.*
              This includes all the legacy front end struts actions, including front end login, account creation and management, SubmitContent Macros, Webforms

          dotCMS 4.0.1

          Available: Mar 23, 2017

          dotCMS 4.0.1 is a maintenance release to fix an important issue which affected some customers with the dotCMS 4.0.0 release.

          Fixes

          • Fixed an issue causing an error on startup if the dotCMS server was not connected to the Internet (#11131).

          To view more information on this issue, please visit the dotCMS Github repository.


          dotCMS 4.0.0

          Available: Mar 19, 2017

          The dotCMS backend UI has moved to an Angular 2 interface!

          For more information about the new user interface, please see UI Changes, below.


          dotCMS 4.0.0 includes a major update to the dotCMS backend user interface, several important new features, and a number of fixes. We encourage you to check out the new features and improvements in this release on the dotCMS Demo Site, and we welcome your feedback.

          Important Changes

          Important changes in dotCMS 4.0.0 configuration may impact your performance when upgrading an existing site. Please read the documentation sections on all of these changes before upgrading from a previous release.

          • Permission Inheritance Changes to default behavior
          • Internet Explorer is not currently supported for access to the back-end UI.
            • Due to Internet Explorer incompatibilities with the Angular 2 implementation, it is not currently supported to use Internet Explorer to access the dotCMS back-end UI.
            • Please see below for more information.
          • URL paths to all back-end screens have changed.
            • As part of this change, the URL to login to the dotCMS back-end has been changed from {yourdomain}/admin to {yourdomain}/dotAdmin.
            • Please see below for more information.
          • A number of legacy deprecated features were removed.
            • Please see below for a list of the features removed.
          • Windows Server is still fully supported, but has been officially deprecated (for termination of support in a future release).
            • If you currently use Windows Server for your production dotCMS environment or have questions about support for Windows, please see below for more information.

          Changes to Default Behavior

          The following difference in default behavior in dotCMS 4.0.0 may change your expectations and require a review of your administration practices. Please review this change before upgrading from a previous release.

          • Permission Inheritance
            • In dotCMS 3.x and below, when changes were made to a high-level object such as a site or top-level folder, the permissions of all lower level objects which inherit permissions from that object were updated immediately ("eagerly"). In large sites, these updates could cause performance issues and database bottlenecks.
            • In dotCMS 4.0.0, the default behavior was changed to perform these permission updates "lazily" instead, so permissions are updated as each of the inheriting objects is accessed (rather than all at once).
            • It is recommended that you keep the new behavior even if you are upgrading from an old version; however if for any reason you need to change the default behavior back to the "eager" permission updates performed in earlier versions, you may add the PERMISSIONS_REFERENCES_INSERT_LAZILY property to your dotmarketing-config.properties file (using a properties file extension), and set the value to false.
            • For more information, please see the Permission Inheritance documentation.

          There are a number of other important changes to be aware of when upgrading to dotCMS 4.0.0, including changes to OSGI plugins and the dotCMS source code base. If you are upgrading from a previous version of dotCMS, and especially if you've done any customization of the dotCMS backend, please read all sections of the Upgrading to dotCMS 4.0 documentation before performing your upgrade.

          New Features

          The following new features have been added in dotCMS 4.0.0.

          New Angular 2 UI

          dotCMS 4.0.0 has a newly re-designed, material design based backend UI interface, implemented using Angular 2 and using the PrimeNG set of components. PrimeNG offers, at this time, the richest set of pre-built Angular 2 components and has the additional benefit of being easy to skin. As the rebuilding of the dotCMS admin tool continues, we plan to layer in more prebuilt and custom NG2 components as needed.

          As part of this UI change:

          • The Roles & Tabs tool has been renamed to Roles & Tools.
          • Back-end Tabs have been renamed to Tool Groups.
          • The Tool Group Description field no longer displays in the UI.
            • The field is now instead used to allow you to specify the name of an icon for the Tool Group (from the FontAwesome font).

          JWT Based Authentication

          dotCMS 4.0.0 standardizes on JWT or Javascript Web Tokens for authentication. JWT is lightweight and scalable authentication solution that is stateless and does not require server sessions to track a users authentication.

          For more information, please see the Authentication Using JWT documentation.

          Mobile Preview

          A new mobile preview feature has been added which allows you to preview your site as it is displayed on different mobile devices. You may create different device profiles using the new "Device" Content Type, and then "Preview as" any of the devices you've created.

          Elastic Search Snapshots

          The legacy index backup and restore functionally has been replaced with the Elasticsearch snapshot and restore modules. Prior to dotCMS 4.0.0 the index backup/restoration used a custom dotCMS process. This has been optimized by calling the native snapshot/restore modules included in Elasticsearch.

          For more information, please see the Managing Site Indexes with ElasticSearch and RESTful API to Manage Indexes documentation.

          New Notification Engine

          Many new improvements have been made to the dotCMS notifications system to notify users of process status and changes to the dotCMS system. Most of these changes provide additional notifications (such as when processes complete), but do not otherwise affect how you use dotCMS.

          If you would like more information on the notifications implemented, please view the list of Notification Engine improvements on Github.

          Fixed Issues

          The 4.0.0 release includes fixes for a number of reported issues, including but not limited to the following:

          • Some international characters were not recognized in URLs (#8839)
          • Multi-valued "X-Forwarded-For" header could cause problems in the Rules Engine (#9797)
          • It was sometimes not possible to reorder Key/Value fields (#9935)
          • Restore of a downloaded snapshot could fail if the downloaded file was renamed (#9974)
          • Binary fields sometimes can not be deleted from a Content Type (#10756)
          • It was sometimes not possible to add publishing environments using non-English languages (#10749)
          • An error was sometimes generated when downloading a bundle pushed to a static publishing environment (#10740)
          • ContentMap viewtool did not always respect the content language when pulling images or files (#10119)
          • Icons for Bulgarian and Romanian were missing from the Language tool (#10112)
          • Files uploaded through the Site Browser showed the file title instead of the file name (#10011)
          • When the ContentAPI delete method was used in a plugin, the content was not deleted (#9956)
          • Push publishing a user which already existed on the receiving endpoint could cause the Role id to get out of sync (#9793)
          • When upgrading dotCMS on MySQL, upgrade could fail if the database is configured for case-sensitive table names (#9788)
          • An error could sometimes be displayed when accessing the Dashboard Analytics portlet (#9775)

          To view more information on these issues, please visit the dotCMS Github repository.

          Additional Changes and Improvements

          • Elasticsearch Results: Elasticsearch results now include Tag and Category fields (#8953).
          • Felix version: OSGI (Dynamic Plugins) have been upgraded to Felix version 5.
            • Existing plugins built for older versions of dotCMS should work without modification in dotCMS 4.0.0.
          • Back-end URL Paths: URL paths to all back-end screens have changed. As part of these changes:
            • The URL to login to the back-end has been changed from {yourdomain}/admin to {yourdomain}/dotAdmin
              • The old back-end login URL ({yourdomain}/admin) is automatically forwarded to the new URL, so existing links and scripts will work without modification.
            • Individual objects no longer have unique back-end URLs.
              • To access an individual object, you must select it from the appropriate back-end screen (e.g. Content Search).
              • Adding unique back-end URLs for specific objects is planned for a future release.
          • Back-end Messaging: Back-end messaging has been thoroughly updated.
            • All back-end messaging (control names, help and hints, error and warning messages, etc.) has been reviewed and improved for clarity and correctness.
            • Log file messages have not been significantly changed, so administrative tasks or scripts that depend on matching existing messages should work without issues.
          • Automated Testing Tools: New automated testing tools have been added to the dotCMS 4.0.0 version to ensure the stability of development modifications.
          • FixAsset tasks can now be added via an OSGI plugin (#9822)
          • Windows Server Deprecated: Support for Windows Server as a dotCMS production environment is officially deprecated.
            • This feature has been deprecated because there are known issues with the feature, there are better alternatives to the feature, and/or support for the feature is planned to be removed in a future release.
              • If you are a new to dotCMS we recommend that you plan to use a platform other than Windows for your production environment.
              • If you are currently using Windows for your production dotCMS environment, we recommend that you begin planning to migrate away from Windows as a production environment.
            • Though deprecated, Windows as a production dotCMS host will continue to be supported by dotCMS for the foreseeable future.
              • In addition, even after the EOL for production Windows Server support, dotCMS plans to continue to support Windows as a development environment.
            • We do not yet have a timeframe for terminating support for Windows as a production dotCMS host.
              • Windows as a production environment will be supported at least through the 4.0 series; the EOL for Windows Server will be in 2020 or later.
            • Note that production support for MS SQL Server has not been deprecated and will continue.

          Deprecated Features Removed

          A number of deprecated legacy features have been removed in dotCMS 4.0.0.

          Important: These features are no longer supported, and any content in existing sites which still use these legacy features must be converted to newer, supported versions of these features before the site can be upgraded to dotCMS 4.0.0.

          • Inline Help
          • Legacy Files
          • Legacy HTML Pages
          • Deprecated Content Macros
          • PollsAPI
          • RatingAPI
          • MP3 Player Button
          • MP3 Player Extended
          • MP3 Player (Streaming)
          • Photo Carrousel
          • Photo Gallery
          • Video Gallery
          • Video Player
          • Slide Show: Flash
          • Social Bookmarks
          • Send to a Friend
          • File Repository
          • PDF Export a Web Page
          • Velocity Viewtools: As part of these changes, the following Velocity Viewtools have been removed:
            • $alertMessagesWebAPI (com.dotmarketing.util.AlertMessagesWebAPI)
            • $favorites (com.dotmarketing.viewtools.FavoritesWebAPI)
            • $googleapi (com.dotmarketing.viewtools.GoogleMiniApi)
            • $groovy (com.dotmarketing.scripting.viewtool.GroovyTool)
            • $js (com.dotmarketing.scripting.viewtool.JSTool)
            • $mailinglist (com.dotmarketing.viewtools.MailingListWebAPI)
            • $nav (com.dotmarketing.viewtools.NavigationWebAPI)
            • $pageAPI (com.dotmarketing.viewtools.HTMLPageWebAPI)
            • $poll (com.dotmarketing.viewtools.PollsWebAPI)
            • $python (com.dotmarketing.scripting.viewtool.PythonTool)
            • $rating (com.dotmarketing.viewtools.RatingWebAPI)
            • $rssapi (com.dotmarketing.viewtools.RSSWebAPI)
            • $ruby (com.dotmarketing.scripting.viewtool.RubyTool)
            • $sitemapapi (com.dotmarketing.viewtools.SiteMapWebAPI)
            • $video (com.dotmarketing.viewtools.VideoGalleryWebApi)

          Known Issues

          The following known issues exist in dotCMS 4.0.0. For more information on these issues, please contact dotCMS Support.

          • Back-end access through Internet Explorer is not supported.
            • dotCMS 4.0.0 does not currently support Internet Explorer for access to the dotCMS back-end UI.
            • However it is still fully supported for users to access to your front-end site using Internet Explorer (multiple versions), and to access the back-end using Microsoft Edge.
            • Support for IE 11 will be considered for a future maintenance release.
            • If IE is a requirement for your organization, please continue using the latest 3.7.x version of dotCMS, and contact dotCMS support for information on future IE support.
          • The TinyMCE Plugin does not yet work with dotCMS 4.0.
            • Support for this plugin will be considered for a future maintenance release.

          dotCMS 3.7.1

          Available: Feb 14, 2017

          dotCMS 3.7.1 is a maintenance release which includes several improvements and some fixes for known issues.

          Fixes in dotCMS 3.7.1

          The 3.7.1 maintenance release includes fixes for the following reported issues:

          • Fix to Push Publish dialogue: (#10628).
          • SQL Upgrade Task Fix: (#10608).
          • Large Metadata Re-indexation Fix: (#9451).

          Improvements in dotCMS 3.7.1

          The 3.7.1 maintenance release includes the following functionality/feature improvments:

          To view more information on these issues, please visit the dotCMS Github repository.


          dotCMS 3.7.0

          Available: Jan 31, 2017

          dotCMS 3.7.0 includes static publishing to AWS S3 for simplified content delivery.  The static publishing works in conjunction with dotCMS’s current push publishing  framework and allows customers to publish to AWS S3 “buckets” to serve static content and sites.  This allows customers to leverage S3 as a point-in-time DR, as a CDN (Cloudfront) or just to serve content and sites statically.  3.7.0  also includes support of shorter “shorty” UUId's for SEO and user-friendly file and image URLs.  3.7.0 also offers enhanced image resizing and thumbnail support of a wider variety of file types. We encourage you to check out the new features and improvements in this release on the dotCMS Demo Site, and we welcome your feedback on these enhancements.

          Important Changes

          • Licensing - dotCMS 3.7.0 introduces a new license level - “Platform”. The static publishing feature is available at the “Platform” license level and is available to customers with a dotCMS site-license subscription. If you would like to evaluate the new static publishing capabilities, please contact your account representative or the dotCMS Support desk.
          • Microsoft SQL Customers - dotCMS 3.7.0 includes a MSSQL only Startup Task. Previously, dotCMS MSSQL implementation did not support UTF-8 characters or the use of SQL indexes when querying SQL Server which can result in poor performance with large datasets. This has been fixed in 3.7.0 which provides a Startup Task to convert the dotCMS database to support UTF-8. This task modifies many tables, constraints and indexes and might take a long time to complete on large MSSQL datasets. Please insure that for this task, the dotCMS DB user supplied in the JDBC connection has drop/create privileges for all dotCMS tables, tmp tables, indexes, triggers and constraints. The other database types supported by dotCMS (Oracle, Postgres and MySQL) are not affected.

          Configuration Changes

          • AWS Static Publishing is configured directly through the dotCMS Push Publishing UI and does not require configuration changes

          Performance Improvements

          • The MSSQL startup task described above will result in dotCMS using SQL indexes (instead of full table scans) for content lookups and offer a potential significant performance improvement: #9647

          Important Fixes

          The 3.7.0 release includes fixes for a number of reported issues, including but not limited to the following:

          • Renaming Folders forces a reindex on all content under that folder. Fix: #10547
          • WebDav folder renaming fixed on OSX Finder. Fix: #10397
          • New tags introduced in 3.5  are now included in REST content response Fix: #9736
          • Auto-Cluster does not revoke a server license if not using heartbeat. Fix #10388
          • User accessing a non-public file is redirected properly after login.  Fix: #9996
          • Content Types can no longer have multiple TAG fields: #9684
          • Fix Asset Inconsistencies now includes fixing orphaned assets - #9095

          See a complete list of issues in the dotCMS 3.7 release.

          New Features

          In addition to the Important Fixes listed above, the following additional new features have been added in dotCMS 3.7.0:

          Additional Changes and Improvements in dotCMS 3.7.0

          • Improve Push Directory (#10599)
          • PDF Thumbnailer (#10499)
          • Dynamic Plugin Undeploy Fix (#10103)
          • File Resource Link Fix (>#9996)

          Known Issues

          • SQLserver: IOUtils.toString() can hit OOM by hoversized metadata (#9451)

          To view more information on these issues, please visit the dotCMS Github repository.


          On this page

          ×

          We Dig Feedback

          Selected excerpt:

          ×