What's new in dotCMS Community Edition 23.01.7 LTS

Oct 3, 2023
  • Enhancements & Adjustments
  • Built new PostgreSQL Pub/Sub listener to replace the impossibl Postgres driver with a vanilla one. This gives us a better diagnostic view of the process, and helps rule out some factors in rare but difficult-to-diagnose cases where the driver fails to connect. [#26019]
  • Implemented session-sharing via Redisson; now sessions can be serialized and replicated as needed across servers in a cluster. [#24291] [#24294] [#24990] [#25541] [#25570]
  • Added to the Maintenance pane the ability to restart not only a dotCMS instance, but an entire cluster. [#22507]
  • The /api/v1/categories endpoint now accepts the query parameter showChildrenCount=true to show the number of children in a category. [#23254]
  • Visual Fixes
  • Personas no longer appear in Tag lists with a separate and distinct icon than other tags; a tag is a tag is a tag. [#26159]
  • Reinstated title bar to query dialogs on content search screen. Repaired their styling, too. [#23554] [#23739]
  • Fixes
  • Elasticsearch queries no longer add :persona to a Tag field that also happens to be a Persona. Whereas the :persona appendage had been stripped of its meaning and function earlier this year, in release 22.03, this is mostly a bit of tidying up. [#26158]
  • Suggestion lists for Tag fields now properly collate tags from content deeper in the folder structure, rather than just the site root. [#26131]
  • Radio-button fields with the Data Type set to True/False now correctly evaluate values of 0 or 1 as valid boolean values in Elasticsearch queries. [#26046]
  • Unnecessary XML encoding has been removed from environmental variables that originate from the Tomcat access log file. [#23669]
  • Widgets with WYSIWYG fields set to Code view no longer encounter value length errors when saving. [#21855]

New in dotCMS Community Edition 23.01.6 LTS (Sep 8, 2023)

  • Content:
  • The Block Editor now supports h4, h5, and h6 headings by default. [#25660]
  • On an export, users now have the option to exclude old versions of dotCMS content, outputting only live and working/draft versions. [#25510]
  • Enhancements & Adjustments:
  • Added a feature to map legacy SAML configuration IDs to site IDs, storing this as an App secret on a host, and using it to facilitate login URL routing. [#25636]
  • Fixes:
  • Downloading a starter from the back end is now a streamed process that begins as the assets are being incorporated into an archive. This prevents timeouts under certain administrative setups — such as running dotCMS behind a load balancer — and limits the danger of the destination container over-allocating space in the case of multiple requests. That's a mouthful, but two birds with one stone merits a yarn. [#23733]
  • In the Job Scheduler, the default Site Search index is specified with (Default) appended to its alias. This caused the Job Scheduler to throw an error when adding a new reindex to the schedule, until that additional text was manually cleared. Well, that snag has been fixed. [#24176]
  • The Copy URL button at the top of the page viewing mode interfaces now copies the whole URL, and not just the path. [#24683]
  • Improved debouncing on undo/redo operations in the Block Editor; the number of undo or redo steps should now more or less conform to expectation. [#24716]
  • NavTool's getNav method now returns only published links. [#24829]
  • Mending conflicts with the Integrity Checker will no longer result in null values on contentlet_as_json database fields. [#25229]
  • Pushing a newly created folder as a limited user with appropriate permissions no longer fails. [#25371]
  • When performing a “Publish (all)” on its contents, a folder will no longer flop and bellyache to draw sympathy from the referee. [#25440]
  • The Block Editor's hyperlink search feature now respects non-default languages. [#25567]
  • Pagination has been restored to Content API calls with the /related path parameter. [#25666]
  • Uploading multiple files will now respect the language filter when assigning the files a system language, instead of defaulting to English. [#25797]
  • Creating a version of content in a second language no longer removes all related content from all language versions of that contentlet. [#25896]
  • Content API and Elasticsearch queries now properly return metadata keywords. [#25618]
  • Fixed an issue that would cause the Block Editor, on Chromium-based browsers, to represent content pasted from a Word document as an image rather than a sequence of blocks. [#25726]

New in dotCMS Community Edition 23.01.5 LTS (Aug 22, 2023)

  • Content:
  • The Page API now accepts a depth parameter, permitting access to related content through contentlets embedded on a Page. [#18123]
  • Enhancements & Adjustments:
  • Added new Show Preview button to the page viewing mode screens; you can now view a fully rendered preview of your changes in a new tab, outside of the context of the dotCMS back end. [#23948]
  • Fixes:
  • The presence or absence of a trailing slash in URLs no longer yields a different result, such as a 404 response code. [#23276]
  • When changing the language of a piece of content, it will likewise alter its relationships to point to versions of subordinate contentlets in the same language, where available. [#24415]
  • Corrected a Javascript console error preventing the contextual menu from functioning when right-clicking a role name in the Roles & Tools tool. [#24424]
  • Note: If you are using a version affected by this bug, you can still use the operations of that menu through the + button's dropdown menu while the role is selected.
  • Stopped Sites now correctly display on the Site Selector; only archived Sites are hidden. [#25120]
  • Fixed an error preventing the display of a contentlet containing an empty Block Editor field. [#25121]
  • Fixed Site Browser sorting; the default pattern is to show folders first, alphabetically, and then all other items in the current folder by descending modified date. [#25136]
  • The presence of language query parameters was interfering with attempts to correctly render images when performing a static Push Publish. We've added a workaround to ensure all images render statically in a multilingual context. [#25217]
  • Mending conflicts with the Integrity Checker will no longer result in null values on certain database fields. [#25224]
  • WYSIWYG fields now accept images regardless of whether the content is in the default language; after all, even with language barriers, it's not hard to convey that you want to have your picture taken. [#25258]
  • The sorting listener on Key/Value fields has been made field-discrete; this prevents a situation where sorting keys in a contentlet with multiple Key/Value fields could cause the two fields' data to combine. [#25402]
  • The date-format mismatch identified in [#25008] had been fixed in API responses, but persisted in Velocity contexts; this fixes it there, too. [#25293]
  • Added a user limitation to the admin panel's nav update event, to limit calls to the menu endpoint and prevent usability issues. [#25556]
  • Specified tag_inode table column insert order on an upgrade task to prevent an issue when upgrading between 23.01 LTS patch releases. [#25720]
  • Dependencies, Components, Etc.:
  • Removing old Dojo resources from packaging. [#24840]
  • Removing old jaxws libraries no longer in use. [#24843]

New in dotCMS Community Edition 23.01.4 LTS (Jul 20, 2023)

  • Enhancements & Adjustments:
  • Added a new $dotsecrets viewtool to pass sensitive data through Velocity. [#23175]
  • Fixes:
  • Fixed the retrieval of Personas via Lucene query; persona tags neither require, nor yield different results with, :persona appended to the tag name. [#22872]
  • When using the tasks page's “hamburger” button (⋮) menu, the Publish action now fires directly — i.e., the expected behavior — instead of opening the Push Publish dialog. [#23395]
  • The image editor's Download button is now once more hunky-dory. [#23924]
  • Users with an ID length of more than 36 characters are no longer prevented from locking content. [#24133]
  • Fixed a date-format mismatch between an old format used in some places and a new one in others. [#25008]
  • Creating content in more than two successive languages without leaving the content editor no longer throws an error. [#24286]
  • Folders no longer fail to push publish if they contain archived content. [#24705]
  • For those who prefer Podman over Docker: File assets now upload properly to dotCMS containers managed via Podman. [#24937]
  • Resolved an issue that caused content to push publish to a working (draft) state instead of a live state in the specific case where an alternate-language version of that same content exists in an archived state. (That sentence went through like eight drafts; you need to take a deep breath before summarizing a bug this particular.) [#25044]
  • getResizeUri method now returns valid URLS for a resized binary image — no more double-slash shenanigans. [#25203]
  • Fixed an issue preventing Templates from saving. [#25212]
  • The Block Editor's content & asset search is no longer intimidated into silence by certain non-alphanumeric character inputs. Dash all you want; it won't flinch. [#25230]
  • Breaking Changes:
  • Fixed a permission error that prevented a user with a custom role with appropriate permissions from using Workflow API operations. While this will not change observed behaviors, permissions-based fixes are generally classed as breaking changes due to how they may affect the hypothetical user working around them. [#23199]

New in dotCMS Community Edition 23.01.3 LTS (Jun 7, 2023)

  • Content:
  • Added video blocks to the Block Editor. Import videos either from your dotCMS file system, from your local files, or elsewhere online, and situate them within your Block Editor field's content. These videos are stored as full dotAssets, and can be reused freely. Default video rendering settings live in dotVideo.vtl, alongside other rendering defaults in /velocity/static/storyblock/. [#23863] [#23436] [#24465]
  • Enhancements & Adjustments:
  • The Block Editor's image-block popup now includes a tab for uploading a local file. [#23237]
  • The paragraph block has been removed from the configurable Allowed Blocks list, to better convey its inviolable “default block” status. [#23764]
  • Fixes:
  • Whitelisting a block on a Block Editor field will no longer result in error when adding images to that field. [#23920]
  • Solved rendering issue with fields converted from WYSIWYG to Block Editor that contain code. [#24422] [#24230]
  • Fixed issue that could potentially cause errors when push publishing a Block Editor field. [#24299]
  • Solved rendering issue with fields converted from WYSIWYG to Block Editor that contain code. [#24422]
  • Block Editor now no longer allows recursively adding a contentlet to itself, which could render the content unrecoverable. [#23846]
  • WYSIWYG Editor no longer throws errors when inserting an image with a different default site language than the editor. [#24285]
  • Removed a wide assortment of unnecessary cache invalidations when saving and/or updating content. This also counts as a performance optimization, though we shall list it as a fix for reasons of honor. [#24781]
  • Restored behavior whereby the file browser dialog shows files in the default language as a fallback if they do not exist in the requested language. [#24444]
  • Push publishing will now properly respect timezone selections made from the dialog in the Publishing Queue's Bundles tab. [#25037]

New in dotCMS Community Edition 22.03.6 LTS (May 14, 2023)

  • Enhancements & Adjustments:
  • Image permits, which control the number of threads dotCMS's image editor can occupy at once, have been made more permissive through better use of caching. They are now less likely to cap out on routine operations, without compromising their intended purpose of easing system resource burdens. [#23807]
  • Increased number of password hash iterations from 20,000 to 600,000, in line with current OWASP recommendations for a SHA256 algorithm. [#23915]
  • Significantly shortened startup time by optimizing vanity URL loading procedures. [#23982]
  • Changed the way JSON Web Tokens are handled, removing an issuer check and replacing it with additional reliance on jwt_secret.dat. This makes possible the use of the same JWT tokens across multiple environments. [#24395]
  • Fixes:
  • Fixed issue preventing content with double quotes in its title from displaying properly in a Relationship fields. [#23396]
  • Bad requests, such as malformed URIs, no longer result in Tomcat errors in advance of reaching custom dotCMS error pages. [#21742]
  • Bundled content not assigned to a workflow will no longer fail to push publish. #22087
  • Resolved errors resulting from blanking an existing date field or checking “Never” on an expiration date field. [#22667] [#22350]
  • Performing a health check via /api/v1/system-status now cleans up after itself, removing all created folders. [#23267]
  • Image fields now filter properly according to user input. [#23449]
  • Permissions tabs — appearing in folder properties, contentlets, templates, etc. — no longer fail to load. [#23889]
  • Improved publishing procedures for environments with many locales and relationships, preventing slowdowns. This sounds like it should be under Enhancements, but those slowdowns could get pretty significant. So, here we are. [#24245]
  • Leaving the “publishing” Date/time field blank on content preset for scheduled publishing, no longer causes that content to re-publish if unpublished. We determined this behavior was simply too silly. [#24344]
  • Relationship fields now correctly respect changes to their “required” status; formerly, the checkbox would display according to your changed selection, but the content would not follow suit functionally. [#22532]
  • Updated the /webp/ image filter to accommodate recent versions of Safari capable of rendering WebP files; now WebP is served to sufficiently new versions of Safari, and JPEG to older ones. [#21652]

New in dotCMS Community Edition 23.05 (May 2, 2023)

  • Content:
  • Block Editor content has been implemented within the compare tool for diff-style viewing alongside past versions. [#24365]
  • Block Editor fields that had been converted from WYSIWYG fields save all changes correctly. [#24565]
  • Further video block development: Videos can now be added to Block Editor video blocks from elsewhere within the dotCMS instance, or by drag and drop or copy/paste from a local system. Finally, default video rendering settings now live in dotVideo.vtl, alongside other rendering defaults in /velocity/static/storyblock/ [#23436] [#24445] [#24465]
  • Added YouTube support to the Block Editor. Drop a link either in an empty block or the Video URL tab of a video block to embed a YouTube video. [#24455]
  • You can now create a Custom Content Tool from within the Content Type editor, via a button on the top right.
  • Enhancements & Adjustments:
  • Variables added in a container via the Add Variable button now use the $dotContentMap built-in content object. [#23006]
  • You can now enable multiple multiple user IDs to possess the same email address by setting the environment variable DOT_SAML_ALLOWUSERSWITHDIFFID_REPEATEDEMAIL to true. [#24138]
  • In Edit Mode, when editing content that appears on multiple pages, a new dialog will confirm whether you want change the content for the current page only, or all pages. [#23225]
  • Significantly shortened startup time by optimizing vanity URL loading procedures. [#23982]
  • The Host field is now a filterable parameter on the Content Search screen. [#24194]
  • Improved performance of fetching metadata from databases. [#22779]
  • All APIs now provide pagination as part of the data payload. This allows use through proxies that may strip away headers — the place said information was previously stored. [#23870]
  • The SASS compiler has returned to minifying CSS output by default. [#24227]
  • Changed the way JSON Web Tokens are handled, removing an issuer check and replacing it with additional reliance on jwt_secret.dat. This makes possible the use of the same JWT tokens across multiple environments. [#24395]
  • Added additional logging options via environment variables. [#24067]
  • Added two-second delay on invalid login — i.e., a nonexistent user — similar to the behavior on receiving an incorrect password
  • Visual Fixes:
  • We've improved the look of the toolbar buttons at the top of the Content Type menu. [#23638]
  • The Block Editor's + button is now a bit less furtive, permanently visible beside any empty block with user focus. [#23687]
  • Corrected the proportions on the compare tool for better visual comparison; after careful consideration, we decided the this was neither the time nor the place for a funhouse mirror. [#24109]
  • Improved spacing, positioning, and appearance throughout the user interface — including the Site Browser, the Container tool, the Content Type creator, and more. [#24654] [#22486] [#23816]
  • Host fields now show the full content, instead of just the containing folder's name — sure to be a relief to those with a bunch of common-name subdirectories like vtl or images. [#24317]
  • Site Selector dropdowns are now a bit more clear about which site is selected. No more confusing gray backgrounds; it's either bold or it's not. [#23505]
  • Removed nonfunctional/vestigial “resize” controls beside images on the content-editing pane. [#24195]
  • Corrected Caffine Memory Cache TTL displays; the default TTL will now display as infinity. While not technically true, the practical difference is moot, as few systems experience ~68 years of uptime. [#24199
  • Development Improvements:
  • Adjusted pipelines to remove the requirement to generate an “enterprise” jar — another of many steps in the long march toward the purest ideal of monorepo status. [#24760]
  • The release process is evolving to test upgradability from a number of previous LTS editions to the latest release. [#24774]
  • Fixes
  • Fixes:
  • Fixed PostgreSQL error observed in upgrades from 22.03 LTS. [#24380]
  • The Block Editor's code block no longer triggers Block Editor menu events, such as the suggestion popup if / is the first character typed. [#24361]
  • The Content Palette no longer includes archived content. [#24292]
  • The arrow buttons in a container's Max Contents field now correctly update the total; manually typing a value is still something you can do, but not something you have to do. [#24163]
  • Discovered and vanquished a race condition with the potential to crash the reindexing process for sites with a lot of Content Types. [#23651]
  • Modifying a template no longer removes content from page columns, unless the column or container was expressly removed. [#23181]
  • OSGi framework has been adjusted to restart less often, in many cases not needing to at all. [#24468]
  • Improved debouncing on undo/redo operations in the Block Editor; the number of undo or redo steps should now more or less conform to expectation. [#24716]
  • Clicking on a file-based Container in the Site Browser now takes you to the correct folder. [#24644]
  • File Browser now properly displays multilingual content, not limited by the configured user-interface language. [#24358]
  • Fixed File Browser display behavior; now displays Page and file assets in expected fasion. [#24272]
  • Copying a folder that contains Pages with both live and draft versions will no longer result in an error; duplicate your folders fearlessly. [#24441]
  • While we appreciated all the extra traffic from Minecraft enthusiasts, we must regretfully announce that mineType was a mere typo of mimeType in the Block Editor's video node. This has been corrected. [#24556]
  • Widgets now correctly display in non-default languages on working (i.e., draft) versions of Pages. [#24059]
  • Language parameters update correctly when redirecting via Rule. [#24158]
  • Leaving the “publishing” Date/time field blank on content preset for scheduled publishing, no longer causes that content to re-publish if unpublished. We determined this behavior was simply too silly. [#24344]
  • The job scheduler tab once again loads correctly in the Site Search developer tool. [#24524]
  • Fixed an update task that absolutizes container paths: It erroneously added the site to the same path multiple times in certain situations. Well, not anymore. [#24436]
  • Nested dotcache block caches no longer interfere with page loading by caching an incorrect context. [#24247]
  • Fixed a bug interfering with the ability to reorder content in Edit Mode. [#24678]
  • Improved publishing procedures for environments with many locales and relationships, preventing slowdowns. This sounds like it should be under Enhancements, but those slowdowns could get pretty significant. So, here we are. [#24245]
  • Resolved errors resulting from blanking an existing date field or checking “Never” on an expiration date field. [#22667] [#22350]
  • It more work.
  • Significant fixes to URL-mapped content, adding resilience in the face of broken or absent detail pages and addressing several error cases directly. [#24490]
  • Breaking Changes:
  • Fixed a permission error that prevented a user with a custom role with appropriate permissions from using Workflow API operations. While this will not change observed behaviors, permissions-based fixes are generally classed as breaking changes due to how they may affect the hypothetical user working around them. [#23199]
  • Permissions have undergone overall changes on the back end, improving comprehensiveness and error handling. [#22993]

New in dotCMS Community Edition 23.03 (Apr 3, 2023)

  • Content:
  • You can now create your own custom remote extensions for the Block Editor. The field is now “hackable” — in the good way! [#24032] [#23938] [#23863] [#23865] [#24031]
  • Added video blocks to the Block Editor. Import videos either from your dotCMS file system, from your local files, or elsewhere online, and situate them within your Block Editor field's content. These videos are stored as full dotAssets, and can be reused freely. [#23863] [#24016] [#23861] [#24040]
  • Added a button to preview URL-Mapped content in Edit Mode; it can be accessed from the task menu when editing a contentlet. [#23955]
  • Enhancements & Adjustments:
  • S3Client can now be configured to interact with Simple Storage Service (S3) object stores other than Amazon S3. [#22151]
  • The Content Type API now accepts host names and folder paths as arguments instead of requiring a UUID for both host and folder when creating a Content Type. [#23239]
  • Increased number of password hash iterations from 20,000 to 600,000, in line with current OWASP recommendations for a SHA256 algorithm. [#23915]
  • Window scrolling is frozen while the Block Editor's block selector has cursor focus. [#23977]
  • Visual Fixes:
  • Form labels have been standardized across the platform, unifying styles between legacy and new Angular components. [#23683]
  • Fixes:
  • CSS files now push publish to S3 buckets without the risk of compilation error. [#24351]
  • A required Block Editor field no longer validates and saves an empty field if content is added and then removed. [#24263]
  • Corrected an upgrade task that was misbehaving — all systems green. [#24026]
  • Fixed issue preventing the addition of images to WYSIWYG fields from certain folders. [#23926]
  • Image fields now filter properly according to user input. [#23449]
  • Several image editor fixes ensue! [#23882]
  • Crop zones now resize correctly in the image editor. [#23925]
  • The Clip button has been repaired, and now properly stores the data to the platform clipboard. (Note that this is separate from the system clipboard, and is accessed through separate dotCMS controls, such as the WYSIWYG Clipboard button.) [#23927]
  • The Download button is now once more hunky-dory. [#23924]
  • Fixed the retrieval of Personas via Lucene query; persona tags neither require, nor yield different results with, :persona appended to the tag name. Kind of an oddball issue, but settled is settled! [#22872]
  • Permissions tabs — appearing in folder properties, contentlets, templates, etc. — no longer fail to load. [#23889]
  • Solved rendering issue with fields converted from WYSIWYG to Block Editor that contain code. [#24422]
  • Fixed an issue preventing saving content in a secondary language while a working/draft version exists in the default language. [#23280]
  • A recent commit broke the contentlet search within the Edit Mode Content Palette; this one fixes it. [#24308]
  • Gradle now resolves current git hash correctly when building. [#23901]
  • Fixed issues reported by SonarQube, including reported AJAX vulnerability. [#23900]
  • Breaking Changes:
  • Page and Template REST APIs may have been returning an excessive amount of relatively low-value information. This can be messy to sift through and harmful to performance, so we've scaled it back a bit. Out of an abundance of caution this is being listed as a breaking change, even though it may not actually cause an issue for anyone. [#23203]
  • The dotcache directive no longer caches objects declared with set directive within the block; caching of generic objects should be handled manually through the Dotcache viewtool. Note that this is a breaking change if upgrading from 23.01, which introduced the behavior, but not for any previous version — that is, it effectively unbreaks the change. [#24075]
  • Note: This change was erroneously attributed to 23.02 at its release; the changed had been merged into the master branch by that time, but had not been included in the subsequent release. Consarn it!

New in dotCMS Community Edition 23.02 (Feb 21, 2023)

  • Enhancements & Adjustments:
  • New Rule condition allows a Rule to fire based on the HTTP method used. [#23209]
  • Users may now edit the labels of system fields on any Content Type. [#22901]
  • The Page API can now additionally return a count of the number of Pages in which a piece of content appears. [#23223]
  • While editing an existing piece of content, the editor will display a link to the relevant Content Type under the Workflow summary. [#23231]
  • The Block Editor's image-block popup now includes a tab for uploading a local file. [#23237]
  • The top bar of the Content Search has been reorganized for better visibility and distribution. On page load, the search input field receives focus. These little details matter! [#23601]
  • In a follow-up to our previous effort to make system fields in Base Content Types removable by users, we're extending the process so it'll do likewise to user-created variants. [#23736]
  • The paragraph block has been removed from the configurable Allowed Blocks list, to better convey its inviolable “default block” status. [#23764]
  • The logs have fewer spammy messages to let you know that no apps require ACCESS_TOKEN renewal. The logs cover a lot of ground, so it's important to maintain a decent signal-to-noise ratio. [#23781]
  • S3Client can now be configured to interact with Simple Storage Service (S3) object stores other than Amazon S3. [#22151]
  • Image permits, which control the number of threads dotCMS's image editor can occupy at once, have been made more permissive through better use of caching. They are now less likely to cap out on routine operations, without compromising their intended purpose of easing system resource burdens
  • Visual Fixes:
  • Content Type layouts in excess of three columns now distribute their contents more evenly on smaller displays. [#23644]Reinstated title bar to query dialogs on content search screen. Repaired their styling, too. [#23554] [#23739]
  • Development Improvements:
  • Postman tests are now run in parallel, segmented into smaller groups. [#23330]
  • Added Push Publishing test fixes for Postman covering sender collection and graceful failure when it cannot determine a result. [#23766][#23330]
  • Created automation to remove published dotCMS CI/CD image used for Postman tests. [#23808]
  • Maven build no longer adversely impacts a local npm registry. [#23692]
  • SonarQube is now run on every pull request to core-web. [#23696][#23779]
  • Simplified integration of Docker images considered dependencies via Github Container Registry. [#23808]
  • Fixes:
  • Whitelisting a block on a Block Editor field will no longer result in error when adding images to that field. [#23920]
  • Corrected the exclusion of two asset directories from back-end exports; both are now present and accounted for. [#23810]
  • Fetching language keys for an unsupported language now falls back to default administrative language configured from the System → Configuration tool, rather than the default content language configured through the Types & Tags → Languages tool. [#23777]
  • Multilingual sites no longer simultaneously display default-language navigation elements when non-default-language navigation is requested. [#23890]
  • Resolved issue preventing latest upgrade for MSSQL database users. [#23761]
  • Downloading a starter from the back end is now a streamed process that begins as the assets are being incorporated into an archive. This prevents timeouts under certain administrative setups — such as running dotCMS behind a load balancer — and limits the danger of the destination container over-allocating space in the case of multiple requests. That's a mouthful, but two birds with one stone merits a yarn. [#23733]
  • Unnecessary XML encoding has been removed from environmental variables that originate from the Tomcat access log file. [#23669]
  • Categories are no longer removed from content mass-imported via CSV file. [#23440]
  • Adding the same Content Type to a custom content tool twice will now display a more descriptive error message. [#22411]
  • Push Publishing filters now save to the correct subfolder with the correct filename; a recent update was missing a trailing slash, causing them to be saved in the parent folder with the subfolder's name appended to the filenames. [#23578]
  • Mended typo in the Checkbox Field's values property, which is now callable in the Velocity content object either through the .values or .value properties, instead of just the latter. [#22049]
  • Breaking Changes:
  • The user API endpoint at /api/v1/users/filter has been refactored to take query strings instead of path parameters. [#20529]

New in dotCMS Community Edition 23.01 (Jan 14, 2023)

  • Content
  • Tables! The Block Editor now has a Table block — the newest sail on our flagship content editor. [#21991]
  • Simplified image import from the Block Editor: Pasting an image link into a new block displays the image, and a button allows one-click importation as a dotAsset. [#22194]
  • Selecting “Images” from the Block Editor displays a new dialog that allows easy selection of images from within dotCMS, or via URL. [#23235] [#23238]
  • While in Edit Mode, Block Editor fields can be edited inline through a swanky new modal interface. [#22487]
  • Note: This feature was announced and documented circa the 22.12 release, but was not yet functional; 23.01 is its first effective release.
  • Enhancements & Adjustments:
  • The new $dotcache Viewtool, a generic object cache, permits a wide assortment of highly convenient caching and storage behaviors! [#23037] [#23430] [#23431] [#23432] [#23575]
  • Note: This also alters the behavior of the dotcache directive; see Breaking Changes.
  • We've built a new Velocity Playground developer tool, allowing users to easily test and preview Velocity snippets before deployment. Debug with gusto — maybe even élan! [#23610]
  • We've added an interface to the Block Editor settings to allow configuration of whitelisted content and assets without the use of field variables. [#22908]
  • New Rule condition allows a Rule to fire based on the HTTP method used. [#23209]
  • Metadata for Binary Fields is now exposed through API responses. [#23552]
  • New /api/v1/page/copyContentlet endpoint allows copying of content in the context of a page, duplicating the object and editing the tree entry. In other words, this is a “Save as Copy” method that allows content to be modified for a single page rather than all pages. [#23224]
  • Added in the same breath: New /api/v1/page/{pageIdentifier}/_deepcopy endpoint allows a “deep copy” of an entire page — copying both the page itself and all content contained therein.
  • The $dotContentMap built-in content object is now utilized in shortcut dialogs in the Container interface. [#23248]
  • In the traditional interface, clicking on an entry in the Categories menu now provides a list of child categories, for improved navigation. [#23252]
  • Enabled further support for undo and redo operations in the Block Editor. [#22903]
  • Made thumbnails a bit less noisy in the logs. [#23757]
  • Visual Fixes:
  • Significant cleanup operations and general improvements have been undertaken on the user interface for Containers. Error messages, toasts, layout elements, context menus, and more have received some TLC for a cleaner and smoother user experience. [#23141] [#23142] [#23143] [#23144] [#23146] [#23200]
  • “Break lines, not layouts!” The field variable interface now handles lengthy keys and values more gracefully; long text now wraps to additional lines within invariant columns. This supersedes the old behavior of “plunging into chaos.” [#23119]
  • Fixed cases of back-end menu tools' text not displaying. [#23341]
  • Slight adjustment to the styling of cards in the Apps section. [#23367]
  • “Paper” layering styles (e.g., gaps and drop-shadows) removed from back end, reclaiming some space. [#23369]
  • Push publishing queue displays all bundles, even when one or more fail to publish. [#23062]
  • Removed extraneous descriptive text from dropdowns in Edit Mode. [#23406]
  • Context menus called at the bottom of a menu list no longer break off. [#23461]
  • Date and Date/Time fields now highlight the current date. [#23551]
  • Removed visual duplication of the content palette while Edit Mode is loading. [#23619]
  • Dependencies, Components, Etc.:
  • Updated GNU General Public License text. [#23352]
  • PDFBox library updated to 2.0.27. [#23384-comment]
  • Stabilized internal Tomcat path to prevent breaking changes on minor-version updates. [#23407]
  • Removed unused jsass and Apache commons text libraries, to avoid flags associated with the text4shell vulnerability. Although dotCMS was never susceptible to said vulnerability, we thought it best to avoid even the suggestion of it. [#23475]
  • Upgraded the PostgreSQL JDBC driver. As with the previous bullet point, this resolves a vulnerability that did not strictly affect dotCMS. [#23531]
  • We've carved npm out of the front-end build process and wrapped the latter in a Maven module, as a first step toward using Maven for the full build. [#23556]
  • Development Improvements:
  • Resolved vulnerabilities and identified by SonarQube. [#23405]
  • Updated GitHub Actions code in response to command deprecations. [#23332]
  • Fixes:
  • Push publishing to S3 buckets now works in all major regions, regardless of which Signature Version is supported behind the scenes. [#22449]
  • Fixed erroneous difference between the Key/Value field's import and export formatting. [#22582]
  • Resolved errors resulting from blanking an existing date field or checking “Never” on an expiration date field. [#22667] [#22350]
  • Image selector displays correct totals and respects language selection. [#22729]
  • /api/v1/containers endpoint correctly updates a Container when maxContentlets is set to 0. [#23147]
  • Large bulk updates via import are now faster, via adjustments to relationship-field validation operations. Timeout troubles, begone! [#23015]
  • Fixed the sort-order parameter, orderby, for Categories; they now sort as specified. [#23253]
  • Performing a health check via /api/v1/system-status now cleans up after itself, removing all created folders. [#23267]
  • Restored PDF and video previews in back-end content editor. [#23359]
  • Resource consumption has been restricted on PDF thumbnail generation, decreasing system footprint and preventing out-of-memory exceptions. [#23384]
  • Resolved issue where certain access-limited users could not switch between multiple sites on the back end. This was due to a permission correspondence between the necessary endpoint and the Sites tool, which may not be visible to the limited user. [#23474]
  • Fixed error preventing the addition of a Container to an Advanced Template. [#23557]
  • Updated internal IP blacklists to include AWS metadata services. [#23481]
  • URI normalization filter has been made less aggressive, and now plays nicely with slashes and equals signs. [#22498]
  • Breaking Changes:
  • Removed unused MySQL and Oracle drivers; users relying on either of these will need to provide their own drivers in their plugins. [#23531-comment]
  • The new $dotcache Viewtool (see Enhancements) has altered the behavior of the prior dotcache directive. Previously, dotcache blocks cached fully rendered versions of their contents, omitting various Velocity state operations in the process. Now, set directives within dotcache blocks are “wrapped” in the new generic object cache routines, allowing declared objects to persist on cache hit. This may interfere with a small, niche set of use-cases, which can still be addressed via the viewtool.

New in dotCMS Community Edition 22.03.4 LTS (Jan 5, 2023)

  • Fixed bug that inverted the display of parent and child in many-to-one Relationship fields. [#22549]
  • Fixed a case where specific conditions could cause drafted content to fail to Push Publish. [#21966]
  • DotCMS now scans zip files to ensure integrity, preventing errors resulting from working with an invalid archive. [#23401]
  • Remote-URL access tools like $json or $import now run in a thread pool to avoid blocking, backups and crashes in the event of high traffic to a non-responsive external API. [#22522]
  • Fixed issue where certain access-limited users could not switch between multiple sites on the back end. This was due to a permission correspondence between the necessary endpoint and the Sites tool, which may not be visible to the limited user. [#23474]
  • Large bulk updates via import are now faster, via adjustments to relationship-field validation operations. Timeout troubles, begone! [#23015]
  • Resolved erroneous difference between the Key/Value field's import and export formatting. [#22582]

New in dotCMS Community Edition 22.12 (Dec 9, 2022)

  • Content
  • While in Edit Mode, Block Editor fields can be edited inline through a swanky new modal interface. [#22487]
  • Block Editor image blocks now provide more tailored support to dotImages, HTML images, etc. Among other things, this improves the process of WYSIWYG-to-Block-Editor conversion. [#22832]
  • When performing a “shallow push” — i.e., Push Publishing with the “Only Selected Items” filter selected — tree entries are included in the push. This renders the behavior more intuitive in certain cases. [#18742]
  • Contentlets placed in a Block Editor field now remain updated if the referenced content changes. This feature syncs the block-contentlet with that of both the database and the cache. This comes with a slight performance cost — in most cases statistically insignificant — that can be offset by disabling the cache-synchronization: Just set the environment variable DOT_REFRESH_BLOCK_EDITOR_REFERENCES=false. [#22857][#22990]
  • Note: This item originally premiered as a feature of 22.10; however, because of an oversight, the feature was not operational in that release. 22.12 is therefore its first effective release.
  • Blocks now have a “Delete” button: that is, one of these dealies now appears in the bubble menu). [#22881]
  • Block Editors can now display character count, word count, and estimated reading time figures below the field. This can be optionally disabled — or a character limit can be configured — through new field variables. [#22904]
  • Enhancements & Adjustments
  • The log viewer has been rebuilt. While this represents an enhancement overall by way of better performance and reliability, this item represents a number of bugfixes as well.
  • Certain System fields in certain Base Content Types have been rendered user-removable. [#15847]
  • Caches storing all Velocity macros now flush and refresh according to a more eager strategy, triggered either by flushing the Velocity2 cache manually via the System → Maintenance panel, or by editing any dot_velocity_macro.vtl file. [#22297]
  • Permissions operations now use REST API endpoints, replacing Direct Web Remoting (DWR) behind the scenes. [#22524]
  • Angular dropdown menus, such as the site selector, now allow for keyboard navigation. [#22835]
  • Sped up the process of fetching a piece of content's categories via Velocity. You might say we've increased our Velocity. Stop frowning at me. [#22864]
  • Additional logging has been added to SAML operations. [#23048]
  • Visual Fixes
  • “Uploading” placeholder no longer sticks around after an image is successfully added to a Block Editor via drag and drop. [#22580][#22859]
  • Contentlets embedded within the Block Editor now correctly push during a Push Publish operation. [#22899]
  • Displayed date updates correctly on menu after changing time zone. [#23128]
  • Default system container no longer reports a broken image when displaying content without an image. [#23088]
  • Dependencies & Components
  • Tomcat native library location has been fixed for Apple M1 contexts. [#22893]
  • Update tasks have been updated and backported, improving maintenance of future LTS releases. [#22916]
  • Bugfixes
  • The Log Viewer — A Chronicle:
  • The viewer now properly filters and highlights search terms. [#23043]
  • Navigation between pages has been fixed. [#23042]
  • Viewer's front-end performance has been fixed and optimized. [#22968]
  • Ditto on the back end. [#22978]
  • The front- and back-end changes have been integrated. [#23039]
  • Block Editor bubble menu no longer pops up after reordering blocks by drag and drop. [#22898]
  • Docker images have been updated to use UTF-8 language settings by default. [#23056]
  • SameSite cookie property can now be overridden from strict to lax, which can counter certain conditions preventing SAML redirects. [#23072]
  • Fixed issue preventing categories from being added properly to bundles. [#23078]
  • Additional error handling procedures added to the Scripting API ensure that file handles close properly. [#23082]
  • Site Selector now correctly switches between multiple sites while in Edit Mode. [#23106]
  • Fixed case causing WYSIWYG to throw a null pointer exception when containing certain invalid data elements. [#23296]
  • Resuscitated the ElasticSearch query tool after the sight of a recent bug caused it to faint. It's feeling much better, now. [#23379]
  • dotCMS now scans zip files to ensure integrity, preventing errors resulting from working with an invalid archive. [#23401]
  • The API endpoint for firing a workflow action no longer fails when the indexPolicy parameter is specified. [#23381]
  • ⚠️ Breaking Changes
  • Because of changes in the way identifiers are handled, it is necessary to perform a full reindex after upgrading to 22.12.

New in dotCMS Community Edition 22.03.3 LTS (Nov 17, 2022)

  • Bugfixes:
  • SAML redirects now forward properly after authentication. [#22156]
  • Added a way to avoid cases where hashed IDs are referenced against non-hashed data in the creation of SAML users: Created hash.userid property (boolean) to SAML configuration to control whether the UserID is hashed or not. [#22692]
  • Bulk adjustment of large quantities of permissions can no longer deadlock the database. [#19358]
  • Updating a Binary field via REST API no longer removes the value from other Binary fields in the same contentlet. [#21482]
  • Fixed WebP filter: no longer adds white background in Safari, and default quality no longer ruins perfectly good images. [#21694] [#21652]
  • Fixed issue with database export streams that caused connection closure before file generation in instances behind a load balancer. [#22116]
  • Users with Back-End User and Front-End User roles who sign into the front end are no longer delivered to the back-end Edit Mode version of the page after manual URL entry. [#22124]
  • When upgrading from version 5.1.6 (or older), database migration tasks now run smoothly, without errors due to differences in DB column counts. [#22349]
  • Restored missing locales for Velocity localization operations. [#22603]
  • Fixed a MSSQL DB error on upgrade. [#22605]
  • Time zone data updates properly on upgrade to 22.03 or later. [#22771]
  • Workflow changes save properly for all users, including new users or users with special characters in their name. [#22696]
  • Fixed issue causing some navigation items to fail to display after upgrade to 22.03 or later. [#22809]
  • Fixed the Show Archive checkbox in the Templates section. [#21885]
  • Revamped push-publishing of users: It is now possible to push an individual user instead of all users, and interface labeling is clearer throughout. [#22149]
  • NavTool's getNav() method no longer returns unpublished pages; published pages only! [#22425]
  • Copy Site copies all content; previously, the process encountered a silent cap at 10,000 items due to limits on indexes and Elasticsearch queries. [#22520]
  • Copying a folder containing a page no longer copies the content displayed in that page's containers. [#22763]
  • Visual Fixes:
  • When changing a password, verbose error message now displays when new password does not meet security requirements. [#22204]
  • Content Palette displays larger numbers of Content Types more reliably. [#22338]
  • The “What's Changed?” checkbox in Edit Mode now displays as checked when enabled, and correctly switches between states. [#22673]
  • Pagination now displays properly when querying related content by REST API. [#22236]
  • Displayed date updates correctly on menu after changing time zone. [#23128]
  • Push publishing queue displays all bundles, even when one or more fail to publish. [#23062]
  • Enhancements and Adjustments:
  • Switched to using Tomcat's RemoteIpValve for DNS resolution. [#19569]
  • Removed performance drag from supporting on-the-fly configuration changes via file watchers and other blocking patterns, which are unsuited to a containerized paradigm. [#21619]
  • Reinstated Publishing options in Template editor. [#21612]
  • Various improvements have been implemented in upgrade routines. [#22916]
  • Submit button disabled immediately after Form submission to prevent duplicate submissions. [#22951]
  • Implemented storage of content info as JSON for MSSQL databases — as previously implemented for PostgreSQL. [#21219]
  • Removed various system fields — tags, categories, relationships, constants, host, and folder — from the immutable JSON object storage in the database. Folder and host are passed in during the construction of a contentlet; the rest are loaded lazily. [#21858]
  • Related content spanning multiple locales has been made more performant, shortening load times. [#22910]
  • Queued jobs have received additional failsafes against long waits for dependencies. [#23041]
  • Improved ContentMap category lookups to be quicker and less expensive. [#22864]
  • Dependencies & Components:
  • Minor version update to Java on Docker image. [#22852]
  • Updated Tomcat to subsequent minor version. [#21849]

New in dotCMS Community Edition 22.10 (Oct 27, 2022)

  • Content:
  • Introducing the new JSON Field, an easy way to store and access JSON data. [#22829]
  • You can now transform WYSIWYG fields into Block Editor fields at the push of a button. [#22488]
  • Contentlets placed in a Block Editor field now remain updated if the referenced content changes. This feature syncs the contentlet stored in a block with both the database and the cache. This comes with a slight performance cost — in most cases statistically insignificant — that can be offset by disabling the cache-synchronization: Just set the environment variable
  • Enhancements & Adjustments:
  • Related content spanning multiple locales has been made more performant, shortening load times. [#22910]
  • Updated the Next.js starter: Upgraded to the latest Next.js version, added inline editing to the Block Editor, and reviewed compliance with community guidelines. Read more about using dotCMS with Next.js on our blog. [#22992][#22994][#22995]
  • The basic, empty dotCMS starter image has been tidied and updated. [#22967]
  • Visual Fixes:
  • Updated labeling to more clearly distinguishing between a “key” and a “token” in the user interface — a subtle but “key” difference! [#23007]
  • Fixed bug that inverted the display of parent and child in many-to-one Relationship fields.[#22549]
  • The “What's Changed?” checkbox in Edit Mode now displays as checked when enabled, and correctly switches between states. [#22673]
  • Improved the system for default icon assignment to tool groups during upgrades. [#22861]
  • Bugfixes:
  • Contentlets can now be added to the Block Editor field before the content containing the field has been saved. [#23163]
  • Copy Site copies all content; previously, the process encountered a silent cap at 10,000 items due to limits on indexes and Elasticsearch queries. [#22520]
  • NavTool's getNav() method no longer returns unpublished pages; published pages only! [#22425]
  • Copying a folder containing a page no longer copies the content displayed in that page's containers. [#22763]
  • Remote-URL access tools like $json or $import now run in a thread pool to avoid blocking, backups and crashes in the event of high traffic to a non-responsive external API. [#22522]
  • Key/Value fields once again properly escape special characters, thereby squashing a recent and noisome bug. [#22754]
  • Key/Value fields properly record item order after sorting. [#22975]
  • Fixed issue causing some navigation items to fail to display after upgrade to 22.03 or later. [#22809]
  • Time zone data updates properly on upgrade to 22.03 or later. [#22771]
  • The breadcrumb-trail links at the top of the admin panel open in the same tab. [#22843]
  • Additional error handling has been added to the PublisherJobQueue to improve logging and resilience. Now nigh unkillable, it may be observed in the wild eating boulders and arm-wrestling jabberwocks. [#22850]
  • Submit button disabled immediately after Form submission, to prevent duplicate submissions. [#22951]
  • Multiple Block Editors in the same content type will all save their respective content properly. [#23216]

New in dotCMS Community Edition 22.09 (Sep 26, 2022)

  • Content:
  • You can now easily link to other dotCMS content within the Block Editor.
  • Base font size inside Block Editor has been increased slightly for readability.
  • It is now possible to read field variable key-value pairs from within Velocity, allowing evaluation at load time from your Velocity template files — and giving user-defined field variables more utility.
  • Enhancements & Adjustments:
  • Expanding on an improvement in 22.08, the Enter key now performs the primary action (e.g., “Next,” “OK,” “Accept,” etc.) in a wider array of dialogs.
  • “Suggestion” components — the clickable items that populate under a search bar, such as when linking content in the Block Editor — have been refactored to be more reusable and maintainable.
  • Added a Docker compose example running dotCMS with MSSQL in ARM architecture (e.g., for users of Apple M1 processors).
  • Refactored block-editor library to include folder structure.
  • Tomcat no longer performs scans for Tag Library Descriptor files at startup, speeding up initialization.
  • General library-driven improvements to paste behavior across a variety of fields and data types.
  • Visual Fixes:
  • Fixed pagination errors on the UI site selector; now displays a maximum of 15 results at a time, with live text filtering of choices.
  • Pagination now displays properly when querying related content by REST API.
  • Dependencies & Components:
  • Minor version update to Java on Docker image.
  • Upgraded Nx and Angular.
  • Updated Dojo.
  • Smoke-tested Dojo update.
  • Moved from Libsass to Dart Sass for SASS/CSS compilation.
  • GitHub Environmental Improvements:
  • Migrated Actions to monorepo.
  • Improved test times.
  • Consolidated build jobs.
  • Migrated Postman tests to GitHub Actions.
  • Bugfixes:
  • Locales have been added back at the level of the Java seed.
  • Workflow changes save properly for all users, including new users or users with special characters in their name.
  • Fixed the removal of categories through API calls, which no longer throws an error.
  • Bad requests, such as malformed URIs, no longer result in Tomcat errors in advance of reaching custom dotCMS error pages.
  • Creating language variables from the Content search allows the translation of tokens containing blank spaces.
  • Image fields containing dotAssets now play well with Velocity.
  • When upgrading from version 5.1.6 (or older), database migration tasks now run smoothly, without errors due to differences in DB column counts.
  • Resolved conflicts between ByteBuddy and NewRelic agents, speeding up initialization and preventing errors.
  • GraphQL introspection queries have been disabled for non-authenticated users.
  • Fixed redirect issue that emerged with the update to Angular 14.
  • Fixed browser console error when moving to Edit Mode from Site Browser.
  • Fixed issue preventing Host variable from rendering headlessly via the Page API.
  • SAML redirects now forward properly after authentication.
  • Created a way to avoid cases where hashed IDs are referenced against non-hashed data in the creation of SAML users: Added hash.userid property (boolean) to SAML configuration to control whether the UserID is hashed or not.
  • Breaking Changes:
  • Updated Dojo.

New in dotCMS Community Edition 22.03.2 LTS (Sep 15, 2022)

  • Enhancements:
  • It is now possible to retrieve parent content through a child contentlet's Relationship Field by using Lucene queries.
  • Date and time fields have been modified in MSSQL databases to include time zone data.
  • Bugfixes:
  • An error that could cause OSGi import procedures to fail has been corrected.
  • No HTML field-validation regular expression no longer invalidates an entry if it detects a period.
  • Pages with the show_on_menu option enabled no longer create exceptions in procedures that reorder navigation elements.
  • Corrected issue that prevented limited users with sitewide viewing permissions from viewing content not explicitly permitted for their role.
  • Static Push Publishing no longer fails when pushing certain Base Content Types when a default language other than English is set.
  • Resolved an error that could cause OSGi import procedures to fail when a version range is specified.
  • dotParse now properly respects all parameters of the config property.
  • Date and time data are now updated before timezone is factored in, to prevent date and time errors during upgrades.
  • Bad results on ShortyIdentifier database calls are no longer cached. This prevents a condition in which a database error could result in persistent 404 status for “shorty” IDs until their region is flushed.
  • Updated SSL configuration to resolve an inactive port in the Docker image.
  • Visual Fixes:
  • Corrected a display issue where relationship fields, on editing, sometimes appeared to change the type selection, such that a many-to-many relationship would display as a one-to-many relationship.
  • Improved logo displays on back-end menus.
  • Plugins:
  • Fragments now only load when forced. On uploading, dotCMS reads the Export-Package from the fragment manifest, adds this to the OSGi-extras file, then moves the fragment to the undeployed folder and restarts the OSGi framework. This prevents interference with other plugins.
  • Improved OSGi plugin loading in server-cluster context.

New in dotCMS Community Edition 22.08 (Aug 12, 2022)

  • Enhancements & Adjustments:
  • Added a new API Playground tool to the Dev Tools, built using Swagger. [#22298]
  • Added new API endpoints for creating, reading, updating, or deleting containers. [#21626]
  • Enter key now activates the primary action — e.g., Next, Submit, etc. — for all dialogs in the system. [#19158]
  • It is now possible to retrieve parent content through a child contentlet's Relationship Field by using Lucene queries.[#22319]
  • Image filter scale has been mapped to the resize filter that replaced it, improving backwards compatibility. [#22463]
  • The Edit Mode Anywhere URL Override plugin's functionality is now part of the core, available out of the box. [#21713]
  • Versions of the same content across different languages can now display publishing dates distinct from one another. [#21518]
  • The version of Java used in docker images has been updated. [#22426]
  • The import and export format of starters has been changed to JSON. [#19400]
  • Bugfixes:
  • In the Site Browser, the “View Statistics” data now displays correctly; the button is removed from the menu entirely when the ENABLE_CLICKSTREAM_TRACKING property is set to false. [#22131]
  • dotParse now properly respects all parameters of the config property. [#22288]
  • Corrected issue that prevented limited users with sitewide viewing permissions from viewing content not explicitly permitted for their role. [#22237]
  • CookiesFilter can now reinitialize cleanly, allowing the dynamic addition of new filters via OSGi. [#22312]
  • Browser page title now updates correctly when switching between contentlets in Edit Mode. [#22320]
  • Bad results on ShortyIdentifier database calls are no longer cached. This prevents a condition in which a database error could result in persistent 404 status for “shorty” IDs until their region is flushed. [#22430]
  • Adding a user to a bundle no longer causes errors. [#22508]
  • Fixed 404 redirect routine. [#22559]
  • Page API calls through GraphQL now work properly with anonymous permissions. [#22615]
  • Resolved errors preventing users with MSSQL databases from successfully executing upgrade procedures. [#22613]
  • Selecting a different site from the admin panel's header dropdown correctly updates the panel while viewing tools built using Angular. [#16754]
  • Drag-and-drop navigation reordering now saves properly. [#22501]
  • Saving a contentlet before its related content loads will no longer result in a clearing of the Relationships field. [#22323]
  • Static Push Publishing no longer fails when attempting to push a bundle containing only a single file asset. [#22073]
  • Static Push Publishing no longer fails when pushing certain Base Content Types when a default language other than English is set. [#22266]
  • Temporarily rolling back the log-file filter feature introduced in 22.06 for performance reasons; it will be retooled and reintroduced soon. [#22691]
  • Page caches have been made more attentive to servlet forwarding attributes, to prevent cases where a Vanity URL pointing to a URL-mapped detail pages could result in the wrong content being cached. [#22083]
  • It is no longer possible to create a folder with an empty title. [#21129]
  • On initialization, NextJS Edit Mode Anywhere environments generate a unique token, saved to the ENV file and appended to the EMA URL on requests; in the absence of this token, requests fail. [#21959]
  • When performing inline editing on a page that displays related content, edits to related content are also saved and published. [#22173]
  • XMLTool has been fixed; the Jaxen exception has been rectified. [#22307]
  • Corrected errors with Show Query search URL generation. [#22168]

New in dotCMS Community Edition 22.06 (Jun 28, 2022)

  • Bugfixes:
  • GraphQL queries no longer throw errors when fetching Block Editor content. #22391
  • An error that could cause OSGi import procedures to fail has been corrected. #22287
  • Creating new content from Edit Mode now properly adds it to the Page when saved. #22210
  • Changed default path of images within WYSIWYG fields to be based on ID rather than iNode, to prevent the path from breaking on file update. #22207
  • Fixed errors with processing and saving of inline HTML on the WYSIWYG editor. #22179 [#22176]
  • Improved handling of unrecognized properties in JSON to restore backwards compatibility with versions prior to 22.03. #22174
  • Fixed error that caused content to disappear from a page after altering its template or layout. #22140
  • Pages with the show_on_menu option enabled no longer create exceptions in procedures that reorder navigation elements. #22137
  • Users with Back-End User and Front-End User roles who sign into the front end are no longer delivered to the back-end Edit Mode version of the page after manual URL entry. #22124
  • Fixed issue with database export streams that caused connection closure before file generation in instances behind a load balancer. #22116
  • Enter key in the dialog to create or copy a Content Type now executes the operation, instead of moving focus to the icon selector. #22104
  • No HTML field-validation regular expression no longer invalidates an entry if it detects a period. #22094
  • Velocity rendering of Block Editor correctly displays all nested nodes. #22092
  • Bundled content not assigned to a workflow will no longer fail to push publish. #22087
  • Fixed error preventing Override plugin from functioning. #22043
  • PageCache now only caches with response codes of 200. #22014
  • Importing a contentlet containing a binary field with a null value no longer generates an error. #22004
  • Pulling related content with no sorting parameter set now returns related content in the order it was added. #21929)
  • Tags considered to be stored under specific sites rather than All Sites no longer fail to display. #21904
  • Push Removal of a Static Pushed page no longer removes any other files required for that page to render. #21832
  • Flag icons now display properly next to languages in the content list. #21827
  • Static Push Publishing no longer sets an incorrect response type for content generated on a dynamic page. #21720
  • Fixed bug that caused failures when copying a site. #21718
  • User interface no longer displays an erroneous Type Error when uploading files via image fields. #21715
  • Fixed WebP filter: no longer adds white background in Safari, and default quality no longer ruins perfectly good images. #21694 #21652
  • Push publishing plugins no longer results in error. #21568
  • Updating a Binary field via REST API no longer removes the value from other Binary fields in the same contentlet. #21482
  • When saving content via REST and using the WAIT_FOR index policy, the call will now properly pass down the parameter instead of defaulting to DEFER. #21469
  • Fixed license requirement message in the Personas tool on the community edition. #21307
  • Container removed from Advanced Template Designer now correctly disassociates from the template, and can be deleted. #21099
  • Using Select All on categories before deleting no longer deletes even deselected items. #20400
  • Fixed bug preventing content from exporting when all languages are selected. #19734
  • Form submissions send files correctly. #18312
  • Visual fixes:
  • The read-only system container and system template are now more visually clear as to this status, with a greyed-out color scheme and contextual buttons removed. #22216 #22217
  • Corrected a display issue where relationship fields, on editing, sometimes appeared to change the type selection, such that a many-to-many relationship would display as a one-to-many relationship. #22198
  • Context menus, such as those behind the “hamburger” buttons in the Content Type menu, now display one at a time. #21996
  • Minor improvements to the Edit Content Type window in the admin panel.
  • Fixed pop-up that appears when dragging and dropping the Form Content Type to a container. #21747
  • Content Types with two Relationship fields of the same type no longer display list of crossed-out unavailable languages. #21735
  • Toggling the Code view in a WYSIWYG field on Content Type that requires scrolling no longer causes the scroll position to jump. #21492

New in dotCMS Community Edition 22.05 (May 5, 2022)

  • Bugfixes:
  • Resolved Javascript console errors that resulted from adding a pre-existing widget to a page.
  • Fixed Enterprise Edition license check misfiring on some page edits.
  • Fixed bundle errors when reimporting a previously imported folder that has been renamed.
  • Fixed the Show Archive checkbox in the Templates section.
  • Pages built with URL Mapped content are now correctly created on a full-site Static Push.
  • Fixed a case where specific conditions could cause drafted content to fail to Push Publish.
  • Visual fixes:
  • Fixed cases of contextual menus cutting off at the bottom of their parent display pane.
  • Improved display for “Add Row” button in the Content Type creation interface.
  • License info renders more cleanly on Create Content modal dialog.
  • Content:
  • New Block Editor (see above).
  • Added ability to copy Content Types.
  • Replaced Vanity URL base content type's Site field with a Host Folder field.
  • Removed limit on number of widgets or forms displayed in Content Selector popup.
  • Page titles now update to display the name of content being edited; multitab without fear!
  • Unique fields on global Content Types can now be specified as unique globally or unique per site.
  • Optimized saving procedures to improve performance.
  • Improved clickability when relating content — click anywhere in the list's rows to toggle!
  • Implemented storage of content info as JSON for MSSQL databases — as previously implemented for PostgreSQL.
  • Plugins:
  • Improved OSGi plugin loading in server-cluster context.
  • Fixed error preventing OSGi plugin undeployment.
  • Fixed ability to upload multiple OSGi assets at once.
  • Enhancements & Adjustments:
  • Changed folder handling to enforce knowable & consistent folder ID behavior.
  • Added ability to create a whitelist of acceptable keys for Key/Value fields.
  • Reinstated Publishing options in Template editor.
  • JSON handling: Removed GSON dependency in favor of Jackson.
  • Added integration tests for Integrity Checker.
  • Edit Mode Anywhere app no longer sends the page.rendered property on POST unless enabled in the app.
  • Optimized routines for bulk adjustment of permissions.

New in dotCMS Community Edition 22.03 (Mar 17, 2022)

  • New Features and Enhancements:
  • Moved to Shenandoah Garbage Collector. Shenandoah is a “pauseless” garbage collector that also has the benifit of quickly returing unused memory back to the underlying operating system, rather than greedly holding on to it. Operationally, this results in dotCMS needing/using less memory over time, which is very important for density when running dotCMS in orchestrators. This change in the default garbage collection can be overridden by passing other options to the JVM.
  • Better FS Caching. Binary file properties that are referenced in Velocity, e.g. $content.image1.width now rely on the assetMetadataCache to return things like size and image dimensions, rather than relying on slower operations that use the filesystem and often traverse the network with NFS.
  • Legacy Data Model Improvements. Folders no longer rely on hiberate object mapping to persist data.
  • Docker Image now uses Amazon's Corretto OpenJDK 11 under the covers. This change was made because Amazon's OpenJDK is supported over a long term and also contains a backported version of the Shenandoah Garbage Collector, which dotCMS (docker) now uses by default. This change should not affect how dotCMS is launched or run.
  • It is now possible to disable drag and drop image upload from the WYSIWYG field. To do this, you need to add a field variable dragAndDrop with the value set to false.
  • Security:
  • When writing tmp files for newly uploaded files, the filenames are now scanned and rejected if they contain directory escaping characters, e.g. ../.
  • Changes/Improvements:
  • Ticked up our versions of Angular to 13.1.3 and PrimeNg to v13.1.0.
  • CalendarEvents content type can now be deleted without causing a system error.
  • Elasticsearch Client was upgraded to v7.10.2.
  • Users with both backend and frontend roles can now preview/edit pages.
  • Langauge Keys for backend i18n are now stored using the dotCMS version as the key, and will be automatically refreshed when the dotCMS version updates.
  • The background is pleasingly blurred when a modal window is popped up in the backend.

New in dotCMS Community Edition 22.02 (Feb 14, 2022)

  • New Features:
  • Content Editors rejoice - the Content Pallet now allows for simple, click and drag content reuse.
  • GraphQL now supports dotAssets (in addition to normal FileAssets) on File and Image fields
  • Download a full sql dump and asset backup via api/Admin Screen (Postgres/Docker only).
  • See job progress when running Bulk Actions across large numbers of contents.
  • New Host Integrity Checker to ensure that the hostnames/id match across push publishing environments.
  • Updated Docker Image, removed legacy configuration process and removed “special” docker environmental variables that were used only in dotCMS docker, unifing them with the variables that the dotCMS binary expects.
  • Moving forward, environmental variables should be used to configure (almost) everything. If you need to configure something outside of what can be done via environmental variables, you should be prepared to either build a custom dotCMS docker image or mount in an override file.
  • GZIP enabled by default in tomcat and is configurable via environmental variables.
  • SMTP server now supports SMTPS and STARTTLS and should be configured via environmental variables.
  • HTTP Responses now include a header x-dot-server that identifies which server in a cluster is responding. This can be disabled if needed.
  • New velocity script actionlet can be used to abort an in-flight content workflow.
  • Changes/Improvements:
  • Site selector type searches uses wildcards, which is very helpful when searching/switching sites in multi-tenanted environments.
  • Forms no longer require CSP “unsafe-eval” to be used.
  • “What's changed” diff takes place on the client side and no longer uses outdated XML java libraries.
  • Robustification - now the backend relies more on db than Elasticsearch. Previously, if the Elasticsearch index was down or broken, dotCMS could not render front end pages, navigation, templates or the site browser. Now these work. Github issues: #21284, #21283, #21385, #21360.
  • Changed to FILE_SYSTEM for metadata storage by default. This changes from the previous incorrect default of storing the metadata in the db and prevents runaway DB load when cold starting a dotcms cluster.
  • Fixed race condition when copying host.
  • Removed noisy log when using edit mode.
  • Removed unnecessary SAML logging.
  • Allow dotCMS docker image to be build using GID=0, helpful when building a dotCMS image for openshift.
  • Added “Bring Back” button to the new content compare screen.
  • Removed a number of old/unused dotmarketing-config.properties that caused confusion.

New in dotCMS Community Edition 22.01 (Jan 10, 2022)

  • New Features:
  • Unlimited fields on content / content stored as JSON. Currently available in Postgres with plans on targeting MSSQL next.
  • New content version compare screen shows a field by field comparison of what's changed on any give content.
  • Widgets can render both markup and as json, allowing widgets to be used in headfull and headless implementations simultaneously.
  • New Redis Pub/Sub and Cache Provider. Uses the Lettuce library under the covers, allows a cluster wide 2nd level cache to improve cold startup performance on large sites. The new Redis implementation also allows the pub/sub cache invalidation mechanism to be used when primary datastore is not Postgres.
  • Default folders can now be set for image/file fields, rather than always having to browse from the site root, giving a better end user experience.
  • Changes/Improvements:
  • Site “Host Name” is renamed “Site Key” and once set, users are discouraged from changing site keys. The “Site Key” should be treated and understood as immutable and should not be changed over the lifecycle of a site.
  • Site Key (hostnames) can only accept characters that are valid for server/DNS names.
  • ContentTypeAPI can now filter content type results by site/host.
  • SAML authentication now correctly stores the last ip for the authenticated user
  • $dotcontent.find("{id}") no longer uses elasticsearch to pull proper lang/version resulting in better performance and less log spamming from velocity.
  • Security Fixes:
  • Updated Log4j2 to 2.17.1, added {nolookups} to log4j2.xml config file, start java with -Dlog4j2.formatMsgNoLookups=true github #21485, #21393. See
  • Prevent XMLTool from fetching remote entities github #21415
  • Remote Calls - XMLTool, JSONTool and VanityUrl Proxy calls are now blocked for localhost and private networks by default. This is best practices as per OWASP security standards. This behavior can be disabled using configuration properties. github #21415
  • TempFileAPI will only import by URL if user is an admin github #21400
  • User.userId is now immutable once initialized github #21392
  • Breaking Changes
  • UID/GID in our docker image has changed to 65001:65001. Previously, it was 1000000000:1000000000. In order to run the new dotCMS docker image, you will need to make sure that the user on your host has the proper uid/gid and that your shared assets folder that map into docker have the proper ownership. As an example:
  • Usermod -u 65001 dotcms
  • Groupmod -g 65001 dotcms
  • Chown -R dotcms.dotcms /assets/folder/root
  • In Postgres implementations, content is now stored as JSON. This means if there is custom code that is directly queuing the contentlet table in the db (tisk, tisk, as this is bad practice), these queries will no longer work.
  • Remote Calls - XML, JSONTool and VanityUrl Proxy calls are blocked for localhost and private networks by default. This is best practices as per OWASP security standards. If your implementation makes local calls using these tools, you can change/configure the network blacklist by setting a config variable.
  • Site.hostname field can only accept characters that are valid for server/DNS names (via the ui).

New in dotCMS Community Edition 21.11 (Nov 16, 2021)

  • Added multiple improvements to the import action in the Apps module. (#19747)
  • Added improved messaging about how to add Apps. (#18707)
  • Added a static cache to GraphQL to help with heavy queries.(#19981)
  • Added the ability to change the default language in the UI.(#20887)
  • Added the ability to generate secure passwords for users. (#20915)
  • Combined Default Content View was added in Content Search. It includes the thumbnail and details. (#21014)
  • Improvements were added to improve the handling of SVG images.(#21051)
  • We have removed the repackaged xbill DNS jar that contained classes under com.dotcms.repackage.org.xbill.DNS.*. Customers should instead reference these classes here: org.xbill.DNS.*.(#20940)

New in dotCMS Community Edition 21.10 (Oct 12, 2021)

  • Improvements:
  • Improvements in dotCMS 21.10
  • Improved how we save timezone information.(#20899)
  • Improved logging for rules. (#20880)
  • Improved Reindex log messages. (#20821)
  • New dotCMS endpoint /v1/system-status/alive to check if the server is up.(#20827)
  • Batik dependency was removed.(#20847)
  • dotCMS now releases licenses on shutdown. (#20856)
  • Type selector will no longer show when searching in a portlet with only one type. Like the image portlet. (#20861)
  • Replaced Moment.js library with the date-fns library.(#19784)
  • Warning log messages were updated when the user is lacking permissions to view a catagory associated with the contentlet.(#20801)
  • Improved error message for when an invalid shard is entered in the creation of a site search index. (#17569)
  • Fixes:
  • The application fails trying to apply a valid license pack in Oracle
  • Noisy log trying to use the What's changed feature
  • Unable to start an instance using oracle as DB
  • Unable to edit events
  • We loose web-socket event when you add//remove a new site
  • We loose web-socket event when you add//remove a new site
  • CONTENT SEARCH: Card view actions not working
  • Set Persona Action in Rules Engine does not display the list of Personas
  • Content Type Icons not working consistently
  • Cache bad ES queries
  • Make content palette enterprise only
  • Fix Prerelease Automation
  • Redis Client should not allow flush all
  • Redis Client should not allow flush all
  • Retry bundle does not work
  • Response code in Integrity Checker producing a 502
  • Edit contentlet scrollbar hidden or hard to click
  • Material icon selector web component needs to search using wildcard
  • Assigning roles to users triggers a lot of requests
  • Users tabs (permissions and API keys) content not updating
  • NAVIGATION: two sections opened at the same time
  • NAVIGATION: two sections opened at the same time
  • Add more information to the thread pool
  • PAGE EDITOR: Show UI error when data save fails
  • Spike: saving timezone information

New in dotCMS Community Edition 21.09 (Sep 9, 2021)

  • Images can be added to a page using drag and drop. (#18411)
  • A downloadable bundle manifest is now available for each bundle. (#20010)
  • Icon picker and sort_order are now available on the content type screen and on the database. (#20426)
  • Created content resource that can be found by id or inode. (#20429)
  • A bulk move action is now available on the content search screen. (#20504)
  • License.zip files will not be moved, rewritten or duplicated on startup.(#20591)
  • Improved error messages for WorkflowAPIImpl. (#20636)
  • Added REST call /api/v1/content (#20429)

New in dotCMS Community Edition 21.06 (Jul 7, 2021)

  • Improvements in dotCMS:
  • Enabled the ability to replace dotCMS logo on backend. (#19970)
  • Created a new REST endpoint to return the versoion of versionables when the identifier is passed in. (#19778)
  • Improved confusing E-mail address used for system and anonymous user. (#20095)
  • Updated GraphQL PageAPI call. (#20203)
  • Introduced new metadata attributes for GraphQL. (#20209)
  • Improved error message for deleting a container used by a template. (#20277)
  • Added the ability to copy a site from a REST call. (#20272)
  • Updated bundle output file type to TAR/GZIP to improve performance. (#20325)
  • Added the ability to specify in the GraphQL query if a given field should be returned velocity-rendered in the response. (#20407)
  • Added header identifying what vanity URL directed the user to the page to help simplify debugging. (#20416)
  • Improved how external caches and the dotCMS internal cache interact. (#20412)
  • Added the ability to update a site via REST using Site Resource. (#20393)
  • Added ability for Felix load to be overridden by enviromental variables. (#20601)
  • Fixes:
  • Only occured for legacy relationships.
  • Only occured when there was no internet access.
  • Occured when the user's computer time was ahead or behind the server time.
  • Occured when a user made a new rule to check if the session attribute existed.
  • Occured when the default language was changed in the marketing configuration properties.
  • Only occured when selecting available workflow actions for all content in the content search for the content type, date, with more than 40 results.
  • Only occured when a folder's name was changed.
  • Only occured when the default language was changed in the marketing configuration properties.
  • Only occured for some content types in edit mode.
  • Only occured for some fields when they were related to another field.
  • Only occured when the content added was new and so was the page.
  • Only occured when the vanity url had a 301/302 HTTP redirect from a URL with a trailing slash to the same url with no trailing slash.
  • Only occured when the file asset name had spaces in it.
  • Only occured when either of the following properties were set as shown below: COOKIES_HTTP_ONLY=TRUE or COOKIES_SECURE_FLAG=always/https.
  • The link only failed when not clicking on words.
  • The environment only failed to show when it had already been selected previously.
  • Occured when the parameters includeAnonymous and includeDefault parameters were not being respected.
  • The issue only occured when someone tried to get the metadata directly from VTL files.
  • The issue only occured when the next assign or permission role did not exist.
  • The issue only occured when the reindex is of a large database that takes more than five minutes.

New in dotCMS Community Edition 21.05.1 (Jun 10, 2021)

  • New Features:
  • A new tool called Focal Point has been added to dotCMS:
  • This tool allows a focal point to be set for images on the edit screen for images.
  • The Focal Point will draw your customer's eye to the most important area of the image.
  • Once a focal point is set for an image it will be persisted until it is changed.
  • The newly revamped tool Enhanced Inline Editing has been added to dotCMS:
  • This gives content editors the abiltity to edit content directly on the page edit screen as long as they add a specific HTML block to the container.
  • See documentation for more information.
  • A new tool called the GraphQL Playground has been introduced to this version of dotCMS:
  • This tool provides an area for users to test GraphQL calls, and see what would be outputted.
  • The GraphQL playground is available under dev tools.
  • Example data is provided.
  • Doing a headless bulk update is now possible using the workflow fire endpoint:
  • The workflow fire endpoint can now take multiple pieces of content.
  • See the Improvements in dotCMS section for details.
  • Metadata has been enhanced greatly:
  • Metadata now has new data including the data for a focal point along with many others.
  • Metadata caching has also been greatly impoved since it now has it's own cache allowing the metadata cache to be invalidated individually.
  • See documentation for more information.
  • A System Theme, Container, and Template have been introduced in this version of dotCMS:
  • This gives the ability to create simple headless pages with a brand new instance of dotCMS.
  • Improvements:
  • Improved push publishing performance.(#19646)
  • Streamlined log by removing uneccessary output.(#20313), (#20317)
  • Added validation type none for SAML.(#20420)
  • The ability to add multiple content pieces when calling the workflow fire endpoint now exists. (#20080)
  • Improved error messages for Integrity Checker when fixing a File Asset conflict. (#20232)
  • In Push Publishing improved error message when finding unique content after looking for a content match.(#20250)
  • Added copy options for host ID's in app section.(#20135)
  • Improve concurrency issues.(#20507)
  • Fixes:
  • The 21.05.1 release includes fixes for the following reported issues.

New in dotCMS Community Edition 21.05 (May 28, 2021)

  • Announcements, Deprecations and Breaking Changes:
  • This version requires a reindex after upgrade
  • dotCMS 21.05 can now run with Java 8 or Java 11in order to run properly. That said, we expect that within the next 3 months, dotCMS will be deprecating support for Java 8 and instead require Java 11 to run. We will keep the community posted.
  • Many new features have been introduced in 21.05 please see the New Features section to see all the new features.
  • New Features:
  • The following new features have been added in dotCMS 21.05:
  • A new tool called Focal Point has been added to dotCMS.
  • This tool allows a focal point to be set for images on the edit screen for images.
  • The Focal Point will draw your customer's eyes to the most important area of the image
  • Once a focal point is set for an image it will be persisted until it is changed.
  • The newly revamped tool Enhanced Inline Editing has been added to dotCMS.
  • This gives content editors the abiltity to edit content on a page directly on the page edit screen as long as they add a specific HTML block to the container.
  • See documentation for more information.
  • A new tool called the GraphQL Playground has been introduced to this version of dotCMS.
  • This tool provides an area for users to test GraphQL calls, and see what would be outputted.
  • The GraphQL playground is available under dev tools.
  • Example data is provided.
  • Doing a headless bulk update is now possible using the workflow fire endpoint.
  • The workflow fire endpoint now can take multiple pieces of content.
  • See the Improvements in dotCMS section for details.
  • Metadata has been enhanced greatly in dotCMS 21.05
  • Metadata now has new data including the data for a focal point along with many others.
  • Metadata caching has also been greatly impoved since it now has it's own cache allowing the metadata cache to be invalidated individually.
  • See documentation for more information.
  • A System Theme, Container, Template have been introduced in this version of dotCMS.
  • This gives the ability to create simple headless pages with a brand new instance of dotCMS.
  • Improvements in dotCMS 21.05:
  • The System Host System Theme is now available in the theme selector.(#19415)
  • Improved push publishing performance.(#19646)
  • Streamlined log by removing uneccessary output.(#20313), (#20317)
  • Added validation type none for SAML.(#20420)
  • The ability to add multiple content pieces when calling the workflow fire endpoint now exists. (#20080)
  • Improved error messages for Integrity Checker when fixing a File Asset conflict. (#20232)
  • In Push Publishing improved error message when finding unique content after looking for a content match.(#20250)
  • Added copy options for host ID's in app section.(#20135)
  • Fixes:
  • The 21.05 release includes fixes for the following reported issues.
  • For a list of issues addressed in dotCMS 21.05, please visit the dotCMS Github Repository.

New in dotCMS Community Edition 21.04 (Apr 26, 2021)

  • DotCMS 21.04 is a release which includes several improvements, and fixes for several issues in previous releases.

New in dotCMS Community Edition 21.03 (Mar 19, 2021)

  • Announcements and Deprecations:
  • This version of dotCMS ships with Tomcat 9. Any plugins or overrides that specify files in the tomcat directory tomcat-8.5.32 will need to be updated.
  • dotCMS 21.03 still requires Java 8 in order to run properly. That said, we expect that within the next 3 months, dotCMS will be deprecating support for Java 8 and instead require Java 11 to run. We will keep the community posted.
  • New Features:
  • The following new features have been added in dotCMS 21.03:
  • A new Tool called "Getting Started" has been added to dotCMS.
  • The tool will be shown when admins log into dotCMS for the first time.
  • This tool will supply admins with relavant examples and resources to get started with dotCMS quickly and easily.
  • Admins will be able to dismiss this tool if they don't feel they need it.
  • Improvements in dotCMS 21.03:
  • Added three informational fields to the relationship field popup; direction of the cardinality relationship, is this content the parent or chilld, and what related content type field is this relationship connected to.(#18706)
  • Upgraded security and infrastructure by upgrading to Tomcat 9.(#19241)
  • Included a new "Generate Metadata" button in SAML app.(#19503)
  • Improved personalization in GraphQL to better handle URL maps and personalization.(#19508)
  • Added a "Download" button to the log files tab in the maintenance tool.(#19560)
  • Created a component allowing users to preview material icons before they choose one.(#19592)
  • Improved our infrastructure by upgrading to Gradle 4.10.2 . (#19714)
  • Made XStream initialization static so less resources are now needed. (#19715)
  • Made the password reset feature more robust by removing the use of a token. (#19877)
  • Improved logging in the JSON Tool. (#19927)
  • Increased security when sending cookies. (#20063)
  • Fixes:
  • The 21.03 release includes fixes for the following reported issues.
  • For a list of issues addressed in dotCMS 21.03, please visit the dotCMS Github Repository.

New in dotCMS Community Edition 21.02.2 (Mar 2, 2021)

  • dotCMS 21.02.2 is a release which includes several improvements, and fixes for several issues in previous releases.
  • Improvements in dotCMS 21.02.2
  • Created a new endpoint to remove a layout from a role. (#19581)
  • The ability to customize TinyMCE and set it systemwide is now part of dotCMS. (#19651)
  • The filtering of related content items returned in GraphQl is now available. (#19652)
  • Enhanced logging messages for the deletion of roles. (#19664)
  • Built a history tab in the template detail screen. (#19668)
  • Allow the /api/content/search endpoint to accept POST parameters; this avoids having to URL encode your content queries. Also added curl examples of this to the content query dialog box. (#19691)
  • Improved resiliency to rules in push publishing, minimizing errors. (#19679)
  • Upgraded the edit page experience with multiple improvements including better drag and drop. (#19711)
  • Included a new endpoint in which a specific inode is passed and that version is deleted. (#19776)
  • Added the ability to close all dialog boxes in template portlet with the ESC key. (#19838)
  • Revamped the legacy template UI, moved it to Angular. Templates can now be designed using the same layout tool as pages.(#19087)
  • Ingesting a push publish bundle is now a stateful job and acts like a queue. This will prevent multiple bundles from being imported at a single time which can cause errors and performance issues. (#18722)
  • Vanity Url redirects can now include parameters.(#19564)
  • Updated translations.(#19823)
  • Changes in dotCMS 21.02.2
  • Push publishing authentication now uses API tokens. This means that it is no longer necessary to configure the “receiver” in a Push Publish architecture, just have a valid admin token. If you are upgrading, any existing push publishing configuration will continue to work normally and will be maintained. There is a utility on the Endpoint screen that can be used to generate and retrieve a valid token from the receiving server.
  • Fixes:
  • The 21.02.2 release includes fixes for the following reported issues. For a list of issues addressed in dotCMS 21.02.2, please visit the dotCMS Github Repository.
  • Fixed an issue that caused an error when creating a page on a site without templates. (#19999)
  • Fixed an issue that caused an error when editing a page and selecting any persona in order to create a personalized version of the page. (#20009)
  • Fixed an issue that sometimes prevented the value of a field from being saved when it was created in the content type with the variable name properties. (#18073)
  • Fixed an issue that sometimes prevented a new user from being given permissions on folders. (#18208)
  • Fixed an issue that sometimes prevented a single quote from being accepted in the name of a content type. new user from being given permissions on folders. (#18241)
  • Fixed an issue that sometimes caused push publishing errors when multiples users were attempting to push publish at the same time. (#18722)
  • Fixed an issue that sometimes caused apps to break when Elastic Search was unavailable. (#19515)
  • Fixed an issue that prevented $dotcontent.pull from returning over 10,000 content items. (#19527)
  • Fixed an issue that sometimes prevented the Network tab on dotCMS instances from responding. (#19547)
  • Fixed an issue that prevented parameters from being passed when a 301 or 302 vanity URL was used. (#19564)
  • Fixed an issue that caused the push publish batch button to select all content items on the site instead of all of the content items on that specific page. (#19620)
  • Fixed an issue that caused rules to always be forced pushed even when they were excluded in the push publishing filter. (#19648)
  • Fixed an issue that prevented the Language, Device and Persona dropdowns buttons from hiding when the browser window shrunk while in Edit Page. (#19656)
  • Fixed an issue that caused scroll problems in the content search when tag fields are used. (#19688)
  • Fixed an issue that prevented "Push Publish" and "Add to Bundle" options from showing when you add a rule to a page. (#19708)
  • Fixed an issue that caused a blank screen to be presented after the "Pick Design" or "Advanced" dialog boxes were closed on the template list. (#19713)
  • Fixed an issue that prevented the thumbnail from loading when a new page was created whose template has a thumbnail. (#19727)
  • Fixed an issue that prevented the portlet title from updating when navigating through the backend. (#19792)
  • Fixed an issue that prevented the user from being redirected to "Edit Page" after creating and publishing a new page. (#19812)
  • Fixed an issue that prevented "No Results" from showing when the user searches the template list for something with no results. (#19839)
  • Fixed an issue that prevented the template portlet from refreshing when the site is changed. (#19840)
  • Fixed an issue that prevented the creation or editing of an advanced template in Safari. (#19841)
  • Fixed an issue that prevented the template list to return templates from sites other than the current one. (#19845)
  • Fixed an issue that caused an error to show when attempting to see details of a container. (#19867)
  • Fixed an issue which could cause problems switching over to a new index in clustered instances.(#19738)
  • Fixed an issue that sometimes prevented a custom layout included in a push publish from showing on the reciever.(#19890)
  • Fixed an issue that caused errors when reindexing on an instance with an empty starter. (#19959)
  • To view more information on these and other issues, please visit the dotCMS Github repository.
  • Announcements and Deprecations:
  • dotCMS 21.02.1 still requires Java 8 in order to run properly. That said, we expect that within the next 6 months, dotCMS will be deprecating support for Java 8 and instead require Java 11 to run. We will keep the community posted.
  • The next version of dotCMS will ship with Tomcat 9. Starting with the next version, any plugins or overrides that specify files in the tomcat directory tomcat-8.5.32 will need to be updated.

New in dotCMS Community Edition 21.02.1 (Feb 18, 2021)

  • Fixes:
  • Fixed an issue that caused errors when reindexing on an instance with an empty starter.
  • Announcements and Deprecations:
  • dotCMS 21.02 still requires Java 8 in order to run properly. That said, we expect that within the next 6 months, dotCMS will be deprecating support for Java 8 and instead require Java 11 to run. We will keep the community posted.
  • The next version of dotCMS will ship with Tomcat 9. Starting with the next version, any plugins or overrides that specify files in the tomcat directory tomcat-8.5.32 will need to be updated.

New in dotCMS Community Edition 21.01 (Jan 13, 2021)

  • Fixed an issue which prevented a valid license from being recognized for some servers in a cluster. (#18860)
  • Fixed an issue which prevented content from appearing when using the advance search option, select, on the Content Search screen.(#19337)
  • Fixed an issue which sometimes caused unpublished related content to appear in Preview Mode / Live mode when pushed to a static site. (#19044)
  • Fixed an issue which sometimes prevented a bundle from being deleted when it contains thousands of items. (#19378)
  • Fixed an issue which caused contentlets to return in a lucene query even if they do not have the tag searched for. (#19458)
  • Fixed an issue that sometimes prevented contentlets from returning in a query when it had a unique text field that included dashes. (#19489)
  • Fixed an issue that sometimes prevented content from being push published when it was manually selected. (#19571) ( #19634)
  • Fixed an issue that sometimes caused bundling to fail when content was added to a bundle and a user tried to push or download the bundle. ( #19636)
  • Fixed an issue that sometimes caused the Content API to not return the name or title when ID was entered in the call. ( #19639)
  • Fixed an issue that could have prevented dotCMS from starting up. (#19653)
  • Fixed an issue that sometimes caused an error when a page was edited in a foreign language but the page only existed in the default language. (#19686)
  • Fixed an issue in EMA app that caused an error when proxying the request to a 3rd party server. (#19709)
  • Fixed an issue that sometimes caused GraphQL to freeze when push publishing new content. (#19660)
  • Fixed an issue that sometimes caused an error when GraphQL was queried via a relationship with another Content Type and the query included a Category field on a File Content Type. (#19728)
  • Fixed an issue that sometimes caused a SQL error when a user tried to browse by a specific content type using the filter in the content types portlet. (#19744)
  • Fixed an issue that sometimes caused an error when a user defined a new content type with a variable name that was the same as a default variable used on the backend. (#19725)
  • Additional Changes and Improvements in dotCMS 21.01:
  • Added the ability to get a token to the Add Endpoint screen to streamline push publishing. (#19275)
  • Improved behavior of SAML log out screen. (#19299 )
  • Added Import button on Application listing configuration page. (#19517)
  • Improved the speed of the CVS Importer tool. (#19536)
  • Improved how the database handles content from deleted users. (#19555)
  • Improved logging messages. (#19566 )(#19621)

New in dotCMS Community Edition 20.11.1 (Dec 4, 2020)

  • Reverted fix content type detail page always to show in bundle which was included in 20.11 due to errors caused for push publishing. (#19558)

New in dotCMS Community Edition 20.11 (Nov 25, 2020)

  • Changes to Default Behavior:
  • The following differences in default behavior in dotCMS 20.11 may change your expectations and require a review of your administration practices. Please review all of these changes before upgrading from a previous release.
  • Changed default location for generated image to /assets.
  • Fixes:
  • The 20.11 release includes fixes for the following reported issue. For a list of issues addressed in dotCMS 20.11, please visit the dotCMS Github Repository.
  • Fixed an issue which prevented a file added to a binary field from saving in the form. (#18346)
  • Fixed an issue which sometimes caused errors when changing the version of a piece of content. (#18550)
  • Fixed an issue which sometimes prevented page personalization from showing up when using legacy containers. (#19285)
  • Fixed an issue which sometimes reordered fields in a content type.(#18834)
  • Fixed an issue that sometimes prevented GraphQL from retrieving image information. (#19449)
  • Fixed an issue that sometimes caused existing URL maps on newly upgraded systems to throw an error. (#19452)
  • Fixed an issue that sometimes caused push publishing to fail due to file-based containers. (#19497)
  • Fixed an issue that prevented the deletion of conditions in rules. (#19538)
  • Fixed an issue that caused the layout editor to look abnormal when coming from the edit page. (#19540)
  • Fixed an issue that sometimes caused the login username field to appear as a selector. (#19585)
  • Fixed an issue that prevented task details from showing up in the workflow portlet. (#19598)
  • Additional Changes and Improvements in dotCMS 20.11:
  • Added secrets exporter and importer which encrypts and decrypts files as json for CMS Admins. (#18236)
  • Added endpoints to the GraphQl API to get page information. (#18297)
  • Added default vtl files allowing users to be able to create content with a new out of the box dotCMS instance. (#19086)
  • Added the ability to shut down a dotCMS instance from the console.(#19319)
  • Update theme to PrimeNG 10 from PrimeNG7. (#19341)
  • Added a tool to show cache size estimates catagorized by object and region. . (#19379)
  • Added parameters to the api/v1/templates endpoint. (#19421)
  • Folder's default file type is now based on the parent folder's default file type. (#19410)
  • Changed naming logic for upgrade tasks. (#19424)
  • Added a button type to allow intergration with third-party systems. (#19439)(#19440)
  • Added Create Export buttons on site listing configuration page. (#19490)
  • Resized the visitor location map pop-up in rules to be wider. (#19539)
  • Implemented WebDAV improvements. (#19428)

New in dotCMS Community Edition 20.10.1 (Nov 6, 2020)

  • Changes to Default Behavior:
  • The following differences in default behavior in dotCMS 20.10.1 may change your expectations and require a review of your administration practices. Please review all of these changes before upgrading from a previous release.
  • The cancel option has been removed for the push publishing integrity check.
  • In previous versions, a user could cancel an integrity check while it was in progress.
  • With dotCMS 20.10.1, a user can not longer cancel an integrity check once it is in progress.
  • Users with SAML configured will now see a logout screen user.
  • If a user with SAML configured logs out they will be sent to a logout page.
  • When a browser timeouts for user with SAML configured,the user will see no change until they refresh, then they will see a logout page.
  • For more information, please see Additional Changes.
  • Privacy and Security Updates:
  • The following changes in dotCMS 20.10.1 fix potential security or privacy issues which have been identified by dotCMS. For more details on any of these issues, please contact dotCMS Support.
  • Fixed a security vulnerability which could allow an authenticated user to exploit a weakness in certain API calls.
  • In addition to the fix in dotCMS 20.10.1, a plugin which mitigates the vulnerability has been created for all affected dotCMS versions (all release from 5.0.3 to 5.3.9), which can be applied without a server restart.
  • Mitigation has already been performed for all dotCMS Cloud customers.
  • Detailed information on this vulnerability, including a link to the patch plugin, will be provided in a Security Issue notice on the Known Security Issues page once all on-premesis customers have had an opportunity to apply the patch.
  • It's important to understand that some security 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.
  • Fixes:
  • The 20.10.1 release includes fixes for the following reported issue. For a list of issues addressed in dotCMS 20.10.1, please visit the dotCMS Github Repository.
  • Fixed an issue which could prevent push publishing when attempting to fix a folder conflict. (#19471)
  • Fixed an issue which could prevent the permissions tab from displaying for a limited user. (#19364)
  • Fixed an issue which could temporarily prevent the file list from refreshing after an image is added. (#19335)
  • Fixed an issue which could prevent display of an appropriate error to appear when adding a file to a folder with filters. (#19182)
  • Fixed an issue causing the wrong filter name to appear in bundle details. (#1
  • Fixed an issue causing the Integrity Checker to fail when JWT was used for Push Publishing authentication. (#18690)
  • Fixed an issue preventing SVG images from displaying correctly in the UI. (#18656)
  • Fixed an issue that sometimes cause errors when integity checker was run on dotCMS clusters. (#18554)
  • Fixed an issue causing the JSONTool to return a single content item instead of a list. (#18505)
  • To view more information on these and other issues, please visit the dotCMS Github repository.
  • Additional Changes and Improvements in dotCMS 20.10.1
  • Added endpoints to the Page API to support operations on the Query Tool. (#18314)
  • Added endpoints to the Bundle API to support operations on Creating a Bundle. (#19321)
  • Added fireRules parameter at page level of the GraphQL API.(#19219)
  • Updated the logout for SAML users to return users to a new logout page.(#19098)
  • Updated HTTP Client to Angular 10.(#19073)

New in dotCMS Community Edition 5.3.9 (Oct 9, 2020)

  • Changes to Default Behavior:
  • The following differences in default behavior in dotCMS 5.3.9 may change your expectations and require a review of your administration practices. Please review all of these changes before upgrading from a previous release.
  • The Permissions required to edit Categories have been changed.
  • In pervious versions, a user could not create top-level Categories without Edit Permissions rights for Categories on the System Host (All Hosts).
  • With dotCMS 5.3.9, permissions have been changed to allow you to give non-administrative users the ability to create and edit top-level Categories. The permissions required to edit Categories are now the following:
  • Create Top-Level Category: Publish rights for Categories on the System Host (All Hosts).
  • Create Subcategory: Publish rights for Categories on the parent Category.
  • Edit Any Category: Edit rights for the Category to be edited.
  • Unused Elasticsearch _text fields have been removed.
  • _text fields in the index, which were created by default in previous versions but not used by dotCMS, are no longer created by default.
  • Creation of these fields can be re-enabled by setting the CREATE_TEXT_INDEX_FIELD_FOR_NON_TEXT_FIELDS configuration property to true.
  • For more information, please see the Github issue.
  • Fixes:
  • Fixed an issue preventing pagination of content displayed in the add content popup in the Page Editor (#19304)
  • Fixed an issue which could cause extra content to be exported in some circumstances when creating a new starter.zip (#19300)
  • Fixed an issue preventing the use of the "UPLOAD NEW FILE" button when setting the value for Image and File fields (#19181)
  • Fixed an issue which could temporarily prevent a changed layout from displaying properly when changing the view in the Page Editor (#19165)
  • Fixed an issue which could cause errors when using a File-based Container on a Site other than the Default Host (#18780)
  • Fixed an issue which prevented display of content added to a Container when the Template was changed to one that used the same Container (#18607)
  • Fixed an issue preventing the use of the #dotParse() directive in Custom Fields when the included file was on a different Site (#18573)
  • Fixed an issue causing improper display of the Page Editor toolbar in Edit mode on some screen sizes (#18203)
  • Additional Changes and Improvements:
  • Improved Permissions used to control access to Top-level Categories (#8538)
  • For more information, please see Default Behavior Changes, above.
  • Improved the display of error messages when some types of runtime exceptions are encountered (#19310)
  • Updated the release Docker images to enable execution on ARM architecture (#19334)
  • Improved error handling when the Apps Secret Store file became corrupted (#19302)
  • Added several minor improvements to the dotCMS starter site that ships with the release (#19289)
  • Made some minor improvements to the GraphQL Page API (#18990, #19190)
  • Improved GraphQL cache handling to improve performance in a cluster (#19255)
  • Restricted access to SAML App metadata (#19157)
  • Although exposing the SAML metadata poses no known security risks, access to this data was restricted to support a security posture of restricted data access by default.
  • Added endpoints to the Page API to support operations on Templates (#19096)
  • These endpoints are currently intended for internal use only; official support for customer use may be provided in later versions.
  • Reduced the default size of Elasticsearch indexes by removing unused fields (#18988)
  • For more information, please see Default Behavior Changes, above.
  • Added a REST endpoint enabling App configuration to be imported from and exported to external files, for backup and portability (#18237).

New in dotCMS Community Edition 5.3.8 (Sep 19, 2020)

  • Fixes:
  • Fixed an issue which could cause performance issues, and in some cases application hangs, due to Apps configuration (#19282)
  • Fixed an issue which could sometimes prevent the content list from being shown in the content selection modal (#19263)
  • Fixed an issue preventing display of available actions in the batch action modal after executing a Workflow Action directly in Content Search (#19257)
  • Fixed an issue which could cause content to be removed from a Page when the same content was edited within another Page (#19245, #19212, #19213)
  • Fixed an issue which could cause errors to be generated when using GraphQL to pull content containing Binary fields (#19240)
  • Fixed an issue which could prevent Push Publishing from working properly when the content being pushed already existed in an archived state on the receiver (#18920, #19221)
  • Fixed an issue which could cause editing of a VTL file in Page edit mode under specific circumstances (#19220)
  • Fixed an issue which caused errors editing content on a Page if the Content Type used a #}dotParse directive in the tinymceprops field variable (#19214)
  • Fixed an issue which could cause results to stop displaying in Content Search after sorting on a field for which no content contains a value (#19210, #19169)
  • Fixed an issue preventing the use of GraphQL in Community Edition (#19206)
  • Fixed an issue preventing display of "Language" and "Host" Search fields when relating content on Content Types with multiple relationship fields (#19204)
  • Fixed an incorrect Site name in the starter site (#19203)
  • Fixed an issue preventing display of Binary images on the front-end of the site if the working version of the content is not the same as the live version (#19201)
  • Fixed an issue which could cause some Categories to be lost when exporting and then importing content (#19195)
  • Fixed an issue which could prevent content from saving if no value existed in a non-required Tag field (#19189)
  • Fixed an issue prevented the changing of Loggers with the LoggerResource if the classes were not in the classpath (#19183)
  • Fixed an issue preventing limited users from creating content in languages other than the default language (#19155)
  • Fixed an issue preventing Vanity URLs from being evaluated in the proper order (#19147)
  • Fixed an issue preventing the Push Publish modal from working from some screens (#19133)
  • Fixed an issue prevented second-level (grandchild) category values from being returned with content in multiple REST API calls (#19121)
  • Fixed an issue which could cause elevated server load if multiple background operations were executed in a short period of time (#19006)
  • Fixed an issue which could sometimes prevent some content items from being added to the Elasticsearch index (#18951)
  • Deprecated Features:
  • Support for MySQL has been deprecated. Future features may not be supported in MySQL, and fixes for issues which are not security- or privacy-related may not be fixed for systems running on MySQL. Support for MySQL may be fully removed in a future release.
  • Additional Changes and Improvements in dotCMS 5.3.8:
  • Added several new fields to the GraphQL Page API (#19159, #19143, #19136, #19108)
  • The following new properties were added:
  • layout
  • render
  • urlContentMap
  • ViewAs
  • Improved Apps to allow the storage of multi-line secrets (hidden fields) (#19074)
  • Reordered the tabs in the Publishing Queue to show the most-commonly used tab (Status/History) first (#19071)
  • Moved configuration for Google Translate (and the Translate Workflow Sub-Action) to the Apps feature (#19061)
  • Added a new REST endpoint to retrieve an entire folder tree (#18964)

New in dotCMS Community Edition 5.3.7 (Aug 27, 2020)

  • New Features:
  • New Environment Variable Configuration capability
  • You can now set or override dotCMS configuration with environment variables, allowing easy changing of dotCMS properties in standard Docker images
  • For more information, please see the Changing Configuration Properties documentation.
  • New GraphQL Additions and Improvements
  • The GraphQL interface has been enhanced with several new features and improvements, including:
  • New BaseType Interfaces allow return of dotCMS Base Types.
  • Added a total results count to all GraphQL results, to aid in handling pagination.
  • Improved the Site field in the GraphQL response to include all content fields added to the Host Content Type.
  • For more information on all of these additions, please see the GraphQL documentation.
  • Fixes:
  • Fixed an issue preventing proper use of cluster Autowire when Hazelcast discovery was enabled (#19163)
  • Fixed an issue which could prevent display of the Template Designer for Sites with certain characters in the Aliases field (#19123)
  • Fixed an issue preventing use of the Cancel button when editing existing Content Type fields (#19120)
  • Fixed an issue preventing display of some Content Types in the Content Search Tool under certain conditions (#19118)
  • Fixed an issue preventing display and editing of Task details in the Tasks Tool (#19117)
  • Fixed an issue preventing the insertion of links in the WYSIWYG Field when using Community Edition (#19102)
  • Fixed an issue preventing scrolling of the Tools menu when the back-end UI navigation was collapsed (#19030)
  • Fixed an issue preventing the Push Publish popup from displaying in the Page editor (#18678)
  • Fixed an issue causing the Permission tab to incorrectly display (but not allow editing) for users without "Edit Permissions" rights to the content (#18583)
  • Fixed an issue some UI problems when adding Content Types with reserved names (#18474)
  • Fixed an issue preventing the use of "force unlock" by administrators in the Page editor (#18204)
  • Fixed an issue causing incorrect display of some portions of the Page editor on smaller screens (#18203)
  • To view more information on these and other issues, please visit the dotCMS Github repository.
  • Additional Changes and Improvements in dotCMS 5.3.7:
  • Improved validation of YAML formatting on Push Publish Filter configuration files (#18986)
  • Added a REST API endpont that returns a list of users based on selected Roles (#18979)
  • For more information, please see the REST API Endpoints documentation.
  • Added information about the default language to the response from the /api/v2/languages endpoint (#18969)

New in dotCMS Community Edition 5.3.6 (Aug 14, 2020)

  • Fixed an issue preventing the creation of links in the WYSIWYG field editor (#19041)
  • Fixed an issue which caused the Push Publishing Filters to be removed when the deploy-plugins.sh script was run (#19037)
  • Fixed an issue which could cause a reindex to time out on sites with very large numbers of Content Type fields (#19033)
  • Fixed an issue preventing drag-and-drop of images into WYSIWYG fields (#19018)
  • Fixed an issue allowing users to delete a just-archived Page, even if no Workflow Action existed to perform a delete (#19015)
  • Fixed an issue which could cause an error when fetching a contentType collection with no content via GraphQL (#18977)
  • Fixed an issue which could prevent selection of a file-based-Container when the title did not match the file name (#18921)
  • Fixed an issue which prevented proper front-end operation when running AdoptOpenJDK v8u262b10 (#18917)
  • Fixed an issue which incorrectly allowed creation of Content Type fields with variable named "host" (#18882)
  • Fixed an issue which could sometimes cause some Containers to not display any content (#18855)
  • Fixed an issue preventing the Time Machine from respecting Publish and Expire dates in content displayed by Widgets (#18795)
  • Fixed an issue which could prevent the Available Workflow Actions button from working in specific circumstances (#18697)
  • Fixed an issue which could cause relationships on a receiver to get temporarily out-of-sync with the sender in specific circumstances (#18571)

New in dotCMS Community Edition 5.3.5 (Jul 30, 2020)

  • Privacy and Security Updates:
  • The following changes in dotCMS 5.3.5 fix potential security or privacy issues which have been identified by dotCMS. For more details on any of these issues, please contact dotCMS Support.
  • It's important to understand that some security 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 a potential XSS vulnerability in a specific dotCMS component (#18961)
  • Updated the com.fasterxml.jackson.core library to the latest version, to address potential vulnerabilities (#18151)
  • Fixes:
  • The 5.3.5 release includes fixes for the following reported issue. For a list of issues addressed in dotCMS 5.3.5, please visit the dotCMS Github Repository.
  • Fixed an issue which could prevent creation of a new dotAsset when dragging an image onto the WYSIWYG file browser (#18980)
  • Fixed an issue which resulted in a Bad Request response when passing the 'uri' parameter to the sitename endpoint (#18848)
  • Fixed an issue which could cause errors and prevent some Workflows from working properly after upgrading a system which uses Oracle as a database (#18782)
  • Fixed an issue which caused a dojo/parser error in console when adding more than 2 relationship fields (#18764)
  • Fixed an issue preventing the "com.dotcms.hooks" sample plugin from working properly (#18756)
  • Fixed an issue which prevented the use of relative URL Map patterns which worked in earlier dotCMS releases (#18744)
  • Fixed an issue which could cause Container Ids to be duplicated under certain conditions (#18714)
  • Fixed an issue which could cause all Push Publishing Filters to fail when bad data was found in any of the filter files (#18705)
  • Fixed an issue which could cause reindexing to fail on some systems upgraded from very old versions of dotCMS (#18673)
  • Fixed an issue which could cause errors when attempting to Push Publish files that were uploaded via WebDAV (#18626)
  • Fixed an issue which could cause errors on some systems when upgrading from earlier dotCMS versions (#18524)
  • To view more information on these and other issues, please visit the dotCMS Github repository.
  • Additional Changes and Improvements in dotCMS 5.3.5:
  • Removed unnecessary messages written to the log file when using MySQL as database (#18947)
  • Improved the error message displayed when a Push Publish fails due to Push Publish Filter excluding dependencies (#18792)
  • Improved Elasticsearch connection in a cluster, to utilize ES load balancing features without using an external load balancer (#18870)
  • Improved content export to allow export of unlimited number of content items (#18641)
  • Added a Page field to GraphQL which contains properties of the Page (#18599)
  • Improved the Log File pop-up window to expand the messsage display portion of the window when the window is resized (#18556)
  • Unrepackaged the com.fasterxml.jackson.core library (#18151)
  • Any customers which reference the repackaged libraries in their code will need to modify the code to refer to the unrepackaged libraries instead. For example, import com.dotcms.repackage.com.fasterxml.jackson.annotation.JsonProperty; should be changed to import com.fasterxml.jackson.annotation.JsonProperty;.
  • Upgraded GraphQL from v11.0 to v13.0
  • Upgraded the kickstart library from v7 to v9.

New in dotCMS Community Edition 5.3.4.1 (Jul 22, 2020)

  • Fixed an issue preventing dotCMS startup on sites using MSSQL (#18940)
  • Fixed an issue causing an error when a cluster was initialized on sites using Oracle (#18918)
  • Fixed an issue prevented reindexing on sites using MSSQL (#18912)
  • Fixed an issue which could cause the Site Browser to fail to display some folders (#18901)
  • Fixed an issue causing startup and reindexing failures on sites using Oracle (#18878)

New in dotCMS Community Edition 5.3.4 (Jul 15, 2020)

  • Fixes:
  • The 5.3.4 release includes fixes for the following reported issue. For a list of issues addressed in dotCMS 5.3.4, please visit the dotCMS Github Repository.
  • Fixed an issue which prevented users from being able to change which Site Search index was the default (#18872)
  • Fixed an issue preventing site search indexing jobs from completing and being assigned as the new default Site Search index (#18869)
  • Fixed an issue which could prevent a Container from displaying any content in some circumstances (#18855)
  • Fixed an issue preventing the Page layout editor from working properly for some Pages (#18830)
  • Fixed an issue which could cause incorrect results to be returned when searching for Site Aliases with Elasticsearch (#18805)
  • Fixed an issue which could prevent the parent content in a self-joined relationship from being pushed by dependency (#18804)
  • Fixed an issue preventing proper operation of Workflows in Oracle (#18782)
  • Fixed an issue causing only partial display of very long file names in the Asset information window (#18691)
  • Fixed an issue which could cause Push Publishing to fail in specific circumstances (#18621)
  • Fixed an issue which prevented some Site Aliases from working correctly (#18187)
  • To view more information on these and other issues, please visit the dotCMS Github repository.
  • Additional Changes and Improvements in dotCMS 5.3.4:
  • Added display of a notification when Elasticsearch is in read-only mode (#17842)
  • When content is saved, if the Elasticsearch server is unavailable (due to a network error, for example), a notification will be displayed in the back-end UI
  • Availability of the Elasticsearch server will be automatically re-checked until the server is once again available - when a new notification will be displayed in the back-end UI.
  • Added display of the instance Secret Key (SHA-3 Key Digest) and Cluster Id to the System -> Configuration -> Basic Info screen (#17938)
  • Added the ability to update or regenerate the instance Secret Key from the System -> Configuration -> Basic Config screen (#18381)

New in dotCMS Community Edition 5.3.3 (Jun 30, 2020)

  • Configuration Changes:
  • The "Push Now" Workflow Sub-Action now allows you to specify a Push Publishing Filter
  • Existing "Push Now" Sub-Actions will use whichever filter is defined as the default filter.
  • By default, this will preserve the Push Publishing behavior of previous versions
  • However, if you modify your Push Publishing Filters to change which filter is used as the default filter, the "Push Now" Sub-Actions will change to use the new default filter.
  • You may change each "Push Now" Sub-Action to specify a filter by name, instead of using the default filter.
  • The Vanity URL cache regions have changed
  • Vanity URLs continue to work the same as they have in previous versions, but the underlying code has been significantly updated to improve performance and reliability.
  • As part of this change, there are now two different cache regions for Vanity URLs: vanityurlsitecache and vanityurldirectcache.
  • The vanityurlsitecache region stores a separate list of Vanity URLs for each host on your system
  • The default size of 5000 should work for almost all dotCMS instances, but if you have thousands of sites on the same dotCMS instance, you should set this region to a size that's larger than the number of hosts you expect to have on your system.
  • The vanityurldirectcache region stores the most recently matched Vanity URLs.
  • The default size of 25000 will work for the majority of sites, but if your sites use Vanity URLs heavily, you may wish to monitor the cache statistics, and increase the size of this region appropriately if necessary.
  • New Features:
  • New Push Publishing Filters enable you to selectively limit which types of content and dependencies are pushed to a receiving environment
  • You may create different filters, to give your users a choice of how to push content.
  • You may give different permissions to each filter, to limit the use of some filters by Role.
  • You may specify a default filter, which will be automatically selected, and which will be used by default in all existing Workflow Actions.
  • When upgrading your site, the default filter will be set to the "Everything and Dependencies" filter, which pushes content with all dependencies, matching the behavior of pushes in earlier dotCMS versions.
  • The dotCMS starter site includes a set of standard filters.
  • When upgrading your site, these filters will be installed automatically.
  • Fixes:
  • Removed unnecessary file metadata log messages during reindexing (#18752)
  • Fixed an issue preventing the main navigation in the back-end from scrolling (#18716)
  • Fixed an issue causing an error when renaming a file while creating new content (#18685)
  • Fixed an issue which could cause an error when a Page without a valid template was bundled (#18598)
  • Fixed an issue which could prevent import of a starter site with XML 1.1 characters in it (#18576)
  • Fixed an problem with the download link on File Assets (#18561)
  • Fixed an issue which could cause the Drop Old Assets Versions tool to fail when deleting a large number of records (#18494)
  • Fixed an issue which could cause Elasticsearch indexing issues with heavy use of Key/Value fields (#18446)
  • Fixed an issue which could cause an error when an empty VTL file was push published (#18051)
  • Fixed performance and consistency issues when Vanity URLs were used in a cluster (#17278)
  • Fixed an issue which could cause the buttons in the Content Type properties window to stop working under certain conditions (#18595)
  • Fixed an issue which could sometimes cause GraphQL to return an incomplete URL (without the full path) #18286)
  • Fixed an issue which could cause a UI (Javascript) error when a content type had two relationship fields to the same parent content type (#18152)
  • Additional Changes and Improvements:
  • Created a new REST endpoint to load all message keys (#18530)
  • Upgraded the #dotParse() directive to accept dotAssets (#18402)
  • Added the ability to open the File Browser with one click from the WYSIWYG field (#18498)
  • Upgraded the Workflow Scheduled Action to support multi-lingual content (#18591)
  • Implemented some internal performance improvements (#18682)
  • Improved error logging in several areas (#18645)
  • Improved resource handling in the Temp file API (#18676)

New in dotCMS Community Edition 5.3.2 (Jun 24, 2020)

  • New Features:
  • The following new features have been added in dotCMS 5.3.2:
  • Improved file handling in the WYSIWYG field
  • Added the ability to drag and drop images into the WYSIWYG field.
  • Dropped images will be saved as dotAssets, and automatically assigned to a dotAsset Content Type based on the file type, in the way as files dropped into the Content Search screen.
  • Added the ability to open the File browser with one click.
  • Added a button to edit image properties.
  • Privacy and Security Updates:
  • The following changes in dotCMS 5.3.2 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 causing some screens in the back-end UI to display improperly when the X-Content-Type-Options header was specified (#16955)
  • This issue did not cause any security issues, but prevented the use of the X-Content-Type-Options header, which can be used to improve security.
  • The X-Content-Type-Options header may now be used to improve browser security while accessing the dotCMS back-end UI.
  • Fixes:
  • The 5.3.2 release includes fixes for the following reported issue. For a list of issues addressed in dotCMS 5.3.2, please visit the dotCMS Github Repository.
  • Fixed an issue preventing upgrade from earlier release when using older versions of Postgres (#18640)
  • Fixed an issue which sometimes caused conflicts when pushing legacy relationships upgraded to new relationship fields (#18616)
  • Fixed an issue preventing scrolling in the Content Types Tool (#18588)
  • Fixed an issue which could sometimes cause Content Type fields to be reordered unpredictably (#18542)
  • Fixed an issue which could cause errors in the Content editor when a content item had related Parents that were archived (#18525)
  • Fixed an issue which could sometimes prevent OSGI plugins from initializing properly, and cause noisy logging (#18501)
  • Fixed an issue which caused Key Value field data to be returned in the wrong order (#18479)
  • Fixed an issue which prevented GraphQL from returning related content in any Language other than the default Language (#18444)
  • Fixed an issue which prevented GraphQL from returning any content in specific circumstances (#18443)
  • Fixed an issue which prevented a reindex from finishing under specific conditions (#18424)
  • Fixed an issue which could prevent the "What's Changed" feature from detecting content changes on the page (#18356)
  • Fixed an issue which sometimes prevented access to an asset using the ID Path URL, even for admin users (#18345)
  • Fixed an issue preventing multiple Tools from updating properly when the Site was changed in the back-end UI (#18148)
  • Fixed an issue causing errors in the content editing screen when the Tab divider and other fields shared the same name (#18102)
  • To view more information on these and other issues, please visit the dotCMS Github repository.
  • Additional Changes and Improvements in dotCMS 5.3.2
  • Added a CORS filter to the GraphQL interface (#18567)
  • Added a new REST API endpoint to retrieve the image URL from a dotAsset (#18427)
  • Improved the query strings displayed in the Show Query popup to better match the content displayed in the Content Search screen (#18316)

New in dotCMS Community Edition 5.2.8 (Apr 7, 2020)

  • New Features:
  • New REST API Front-end User Authentication capability
  • Users can now be authenticated as either front-end or beck-end users using the REST API.
  • For more information, please see the Preview vs. Live documentation.
  • Fixes:
  • Fixed an issue which caused columns in the Content Search screen to be displayed in the wrong order (#18159)
  • Fixed an issue preventing the Page API from returning content items placed in Advanced Templates (#18158)
  • Fixed an issue which caused Content Type Text fields configured for Numeric data to be saved as Text data (#18147)
  • Fixed an issue which caused error messages in the My Account popup to be displayed incorrectly (#18143)
  • Fixed an issue preventing new pages from being Push Published under certain conditions (#18126)
  • Fixed issues preventing the Site name from refreshing when the a new Site was selected (#17937, #18125)
  • Fixed an issue preventing a user from being remembered with the Remember Me feature after another login of the same user from a differen location (#18101)
  • Fixed an issue which could cause Front-End users to get a 403 (access denied) error when accessing a front-end form requiring authentication (#18076)
  • Fixed an issue which caused already-pushed content to be re-pushed after a bundle was deleted on the sender (#18025)
  • Fixed an issue which caused content which was archived on the sender to be deleted from the receiver when Push Published (#17994)
  • Fixed an issue which caused items to continue to appear in Site Search after being unpublished or archived (#17976)
  • Fixed an issue which could prevent a limited user from being able to create rules, even when granted appropriate permissions (#17901)
  • Fixed an issue preventing Vanity URLs from working if there was a trailing slash in Uri field (#16433)
  • Improved the user interface of the Relate Content popup:
  • Added the ability to search by hitting the Enter key in the Relate Content popup (#18038)
  • Updated the Relate Content popup to allow a click anywhere on the line to select content (#16936, #17981)
  • Improved the management and performance of clusters when using Docker containers and Kubernetes (#18050, #18190)
  • Upcoming Changes in dotCMS 5.3.0:
  • The dotCMS 5.3.0 release, currently planned for release in April 2020, will contain some important changes that may impact your system configuration and processes. Please review the changes listed below to be aware of these changes, and if necessary, begin preparing for them.
  • Removal of embedded Elasticsearch server dotCMS 5.3.0 will no longer include an embedded Elasticsearch server.
  • This means that all customers upgrading to dotCMS 5.3.0 will need to use an external Elasticsearch server.
  • The dotCMS Docker reference containers are all designed to use a containerized Elasticsearch server out-of-the-box, so switching to a Docker deployment is a very good option for customers that want to upgrade to 5.3.0 with the minimum effort.

New in dotCMS Community Edition 5.2.7 (Mar 10, 2020)

  • New Features:
  • The following new features have been added in dotCMS 5.2.7:
  • New Asset Base Content Type enables creation of files and images in a repository without an explicit URL path
  • You can now create Content Types which contain files and images, but which are not located in a specific location within the site.
  • For more information, please see the Base Content Types documentation.
  • Fixes:
  • The 5.2.7 release includes fixes for a number of reported issues. For a list of issues addressed in dotCMS 5.2.7, please visit the dotCMS Github Repository.
  • Fixed an issue preventing some Image and File field types from being displayed by GraphQL API (#18005)
  • Fixed an issue which could prevent Push Publishing of a Rule actively running on the receiver (#17930)
  • Fixed an issue which could prevent Worklow execution by a user without permissions to the Default site (#17876)
  • To view more information on these and other issues, please visit the dotCMS Github repository.
  • Additional Changes and Improvements in dotCMS 5.2.7
  • Added support for Image Focal Points when using the /da image URL format with "shorty" Ids (#17965)
  • For more information, please see the Image Resizing and Processing documentation.
  • Added the ability to make Binary fields indexable and displayable using the Show in List field property (#17944, #18022)
  • Note: Only the first Binary field on a Content Type can be indexed and set to Show in List.

New in dotCMS Community Edition 5.2.6 (Feb 22, 2020)

  • New Features:
  • The following new features have been added in dotCMS 5.2.6:
  • New Reset Approvers Workflow Sub-Action allows Workflows relying on multiple approval to reset the list of approvers if the content is re-edited after previously being approved.
  • For more information, please see the Multiple Approval Sub-Actions documentation.
  • New Default Workflow Action settings are available in the Workflow Scheme properties screen.
  • You can now set Default Workflow Actions so that if standard operations on content (e.g. New, Save, Publish, Unpublish, etc.) are performed using a method that does not execute a Workflow Action, the operation will be automatically performed using a Workflow Action you specify.
  • For more information on the types of Default Workflow Actions that can be assigned, please see the documentation on Default Workflow Actions.
  • Fixes:
  • The 5.2.6 release includes fixes for a number of reported issues. For a list of issues addressed in dotCMS 5.2.6, please visit the dotCMS Github Repository.
  • Fixed an issue preventing users from switching a WYSIWYG field to Text and back to WYSIWYG (#18018)
  • Fixed an issue which prevented URL map field values containing forward slashes from working properly (#18015)
  • Fixed an issue preventing unauthorized attempts to access pages from properly redirecting to the login page (#18010)
  • Fixed an issue preventing relationships on the Host Content Type from displaying in the Back-end (#17928)
  • Fixed an issue causing some types of navigation menus from displaying properly in the Page Editor in Edit mode (#17896)
  • Fixed an issue preventing selection of some filter combinations in the User Tool (#17895)
  • Fixed an issue which could cause some browsers to auto-fill new passwords on the change password screen (#17889)
  • Fixed an issue preventing Categories from being sorted properly via the Sort Order field (#17798)
  • Fixed an issue preventing file-based Containers from working properly when not located on the default Site (#17749)
  • Fixed an issue which could prevent relationships from being saved correctly in some cases when using "Relate New Content" (#17743)
  • Fixed an issue causing an incorrect URL to be displayed in the Task Detail screen (#17532)
  • Fixed an issue causing errors in the GraphQL API when Content Types have fields with specific variable names (#17515)
  • Fixed an issue which caused the Event popup to display incorrectly if the End Date field in the Event Content Type was moved before the Start date field (#17497)
  • To view more information on these and other issues, please visit the dotCMS Github repository.
  • Additional Changes and Improvements in dotCMS 5.2.6:
  • Upgraded the starter site included with the release distribution to a brand new, completely rebuilt site which demonstrates many of the newer and more sophisticated features of dotCMS.
  • Please perform a fresh installation of dotCMS 5.2.6 to a new location to have the new starter site installed for you.
  • Once the new starter site is installed, you can use Bundles to copy features from the new starter site to your existing site.
  • Improved the "Add to Bundle" functionality to remember the last Bundle name selected (#14066)
  • Added a new parameter to the Content REST API to return full Category information in results (#12739)
  • The includeCategoriesExtraInfo URL parameter can now be supplied (e.g. /includeCategoriesExtraInfo/true) to reutrn full Category information in the results.
  • Added the ability to create "pluggable" content field validations using OSGI plugins (#17773)
  • This allows you to add your own custom code to perform sophisticated and proprietary validations on the data users enter into your content fields.
  • Improved the Binary field to allow limiting of both file length and file type in all uploaded files (#17772)
  • You may use the allowedFileTypes Field Variable to specify which mime types may be uploaded, and the maxFileLength Field Variable to limit the size of all uploads.
  • Since these limitations are implemented as Field Variables, you may set different limits for different Binary fields, even within the same content type (to ensure, for example, that one Binary field is used to upload only videos, while another is used to upload only photos).

New in dotCMS Community Edition 5.2.5 (Feb 8, 2020)

  • New Features:
  • New Image Focal Point feature:
  • You can now add a focal point to images to enable more intelligent cropping.
  • Fixes:
  • Fixed an issue which could cause the Navtool Viewtool to return incorrect items in some circumstances (#16589)
  • Fixed an issue preventing Vanity URLs from properly redirecting to URL-mapped content (#16684)
  • Fixed an issue which could prevent the Time Machine from displaying individual future content in some circumstances (#17594)
  • Fixed an issue causing some valid folder names from being rejected (#17751)
  • Fixed an issue causing Archived content to be copied to a new Site as Unpublished (#17763)
  • Fixed an issue which could improperly prevent use of the Workflow API in some circumstances (#17794)
  • Fixed an issue with the Content Search tool when the Back-end UI language was set to Spanish (#17797)
  • Fixed an issue which could prevent pages on a non-default host from being found in the Page editor (#17803)
  • Fixed an issue causing duplicate Containers to appear when paging through Containers (#xxxxx)
  • Fixed an issue preventing the Site selector from refreshing properly in Chrome in some circumstances (#17828)
  • Fixed an issue preventing the "Send for Review" feature from working when viewing Workflow Task details (#17829)
  • Fixed an issue adding files with long names in the WYSIWYG field (#17833)
  • Fixed an issue preventing the user menu selections from displaying under certain conditions (#17855)
  • Fixed an issue preventing constant fields from being included in JSON responses (#17864)
  • Fixed an issue which could prevent the Image Editor from scrolling down on large images (#17940)
  • Additional Changes and Improvements:
  • Improved the REST API to allow Binary fields to be uploaded by specifying a remote URL (#16852)
  • Previously, files needed to be uploaded to dotCMS prior to adding them to Binary fields.

New in dotCMS Community Edition 5.2.4 (Jan 25, 2020)

  • Privacy and Security Updates:
  • The following changes in dotCMS 5.2.4 fix potential security or privacy issues which have been identified by dotCMS.
  • Fixed a critical security vulnerability reported in CVE-2020-6754
  • Fixes for this vulnerability have been generated for all affected dotCMS versions.
  • Fore more information, including mitigation measures and the link to the CVE alert, please see security issue SI-54.
  • Fixes:
  • The 5.2.4 release includes fixes for a number of reported issues. For a list of issues addressed in dotCMS 5.2.4, please visit the dotCMS Github Repository.
  • Fixed an issue preventing the Redirect URL property from working with custom Page Content Types (#15427)
  • Fixed an issue causing CMSFilter to return a 404 for URLs containing a plus sign (#17261)
  • Fixed an issue preventing the Copy Site operation from properly copying Page contents to a new Site (#17541)
  • Fixed an issue which could sometimes cause Push Publishing conflicts when pushing Language Variables (#17596)
  • Fixed an issue which could prevent users from being able to edit Sites without View permission on the Default Site (#17612)
  • Fixed an issue preventing the Asset Backup tool from using the ASSET_REAL_PATH configuration (#17620)
  • Removed an old/invalid foreign key from some database upgrade scripts (#17647)
  • Fixed an issue causing WebDAV to force folder and file names to lowercase (#17698)
  • Fixed an issue causing GraphQL to return a null when no Content Types of a queried Base Type existed (#17717)
  • Fixed an issue which could prevent browsing beyond five sub-folder levels when adding a file to a WYSIWYG field (#17792)
  • To view more information on these and other issues, please visit the dotCMS Github repository.
  • Additional Changes and Improvements in dotCMS 5.2.4:
  • The Back-end Menu Navigation has been improved to allow the menu to remain collapsed continually.
  • Added the ability to set a security constraint on the assets folder in the web.xml file (#17835)
  • The REST Content Type API has been enhanced to allow specification of additional default Workflow Actions
  • Default Workflow Actions may now be specified for UNPUBLISH, ARCHIVE, UNARCHIVE, DELETE, and DESTROY, in addition to existing NEW, EDIT, and PUBLISH default actions.
  • Improved the content import and REST API save functions to accept remote URLs for the content of Binary Fields (#16852)
  • Prevented the copy of Workflow history when making a copy of a content item (#17550)

New in dotCMS Community Edition 5.2.3 (Jan 4, 2020)

  • New Features:
  • The following new features have been added in dotCMS 5.2.3:
  • New Elasticsearch Custom Field Mappings
  • Custom Elasticsearch mappings may now be created for individual Content Type fields.
  • For more information, please see the How Content is Mapped to Elasticsearch documentation.
  • New Language REST API Operations
  • Methods to allow Save, Update, and Delete of languages have been added to the Language REST API.
  • For more information, please see the REST API Endpoints documentation.
  • Fixes:
  • The 5.2.3 release includes fixes for a number of reported issues. For a list of issues addressed in dotCMS 5.2.3, please visit the dotCMS Github Repository.
  • Fixed an issue which could cause incorrect bundle audit information to generate noisy log messages (#17626)
  • Fixed an issue preventing the Bundles screen from refreshing after a Bundle was deleted (#17676)
  • Fixed an issue preventing Language Variables containing spaces from resolving correctly (#17679)
  • Fixed an issue which could prevent past Time Machine snapshots from being displayed (#17684)
  • Fixed an issue preventing images in WYSIWYG fields from being selected (#17731)
  • To view more information on these and other issues, please visit the dotCMS Github repository.
  • Additional Changes and Improvements in dotCMS 5.2.3:
  • The Page REST API (/api/v1/page) includes several new enhancements to support Single Page Applications (SPAs):
  • Information for all content contained in a Page is now rendered in results (#17665)
  • Content of URL Mapped pages is now rendered in results (#17666)
  • Languages passed via URL parameters can now be specified by language code (e.g. "en-US") as an alternative to language ID (e.g. "1") (#17700)
  • TinyMCE (used in the WYSIWYG field) has been upgraded from version 4.1.6 to version 4.9.6.

New in dotCMS Community Edition 5.2.25 (Dec 14, 2019)

  • New Features:
  • The following new features have been added in dotCMS 5.2.2:
  • New Delete All Versions Workflow Sub-Action
  • A new Workflow Sub-action has been added to delete all Language versions of a content item.
  • For more information, please see the Workflow Sub-actions documentation.
  • New Delete Push Publishing Bundles REST Endpoint
  • A new REST API endpoint has been added to enable deleting old Push Publishing bundles.
  • For more information, please see the REST API Endpoints documentation.
  • Fixes:
  • The 5.2.2 release includes fixes for a number of reported issues. For a list of issues addressed in dotCMS 5.2.2, please visit the dotCMS Github Repository.
  • Fixed an issue preventing the Push Publish popup from displaying from the Tasks Tool (#17026)
  • Fixed an issue which could prevent proper batching of transaction when calling Quartz from code (#17591)
  • Fixed an issue preventing GraphQL from returning IDs for new languages (added after upgrade to dotCMS 5.1.0+) (#17615)
  • Fixed incorrect key when serializing the Visitor object (#17616)
  • Fixed an issue preventing Lucene date range queries from working (#17621)
  • Fixed an issue causing upgrades to dotCMS 5.2.1 to fail for systems with no URL Maps (#17642)
  • Fixed a javascript error when selecting a relationship from the relationship select popup (#17663)
  • To view more information on these issues, please visit the dotCMS Github repository.
  • Additional Changes and Improvements in dotCMS 5.2.2:
  • Folder name restrictions have been implemented at the API level, to ensure bad folder names can not be created through WebDAV and other means (#16715)
  • Changed deletion of Content Type fields to perform the deletion in the background (#16939)
  • To improve compatibility, the GraphQL implementation has been modified to remove Base Types as Interfaces, and no longer allow specification of individual fields for Base Type collections (#17560)
  • REST API calls which return related content were improved to respect supplied language parameters for both parent and related content (#16917)

New in dotCMS Community Edition 5.1.5 (May 9, 2019)

  • 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.
  • New Features:
  • In addition to the Important Changes listed above, the following additional new features have been added in dotCMS 5.1.5:
  • 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.
  • For more information, please see the Authentication Using JWT documentation.
  • Page Layouts can now include custom CSS classes for specific Rows and Containers in the Layout.
  • For more information, please see the Page Layouts documentation.
  • 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.
  • 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 ... (#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.
  • Additional Changes and Improvements in dotCMS 5.1.5:
  • Reindex performance has been greatly improved, especially for large content stores.
  • Added additional logging to the Push Publishing feature (#16197)
  • The back-end login screen has been redesigned for simplicity and greater ease-of-use.

New in dotCMS Community Edition 5.1.1 (Mar 27, 2019)

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

New in dotCMS Community Edition 5.1.0 (Mar 14, 2019)

  • 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)
  • Users with EDIT authority will still be able to modify Content Types, but will not be able to create new ones.
  • 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.
  • 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.
  • 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.
  • 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.
  • 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.
  • 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.
  • Fixes:
  • 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)
  • Deprecated Features:
  • 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.
  • Additional Changes and Improvements:
  • 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)
  • 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.

New in dotCMS Community Edition 5.0.3 (Nov 16, 2018)

  • Fixes
  • Site selector did not update to show appropriate sites when using the Login As feature (#14116)
  • Under specific conditions, adding content in a new language created a separate content item for the new language version (#14966)
  • Push publishing a file or page could fail after push removing the parent folder (#15022)
  • Content Search screen did not allow filtering for Select fields with multiple word values/keys (#15139)
  • 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)

New in dotCMS Community Edition 5.0.2 (Sep 21, 2018)

  • 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).

New in dotCMS Community Edition 5.0.1 (Aug 22, 2018)

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

New in dotCMS Community Edition 4.3.3 (Apr 20, 2018)

  • Resolved an issue which could prevent images from being retrieved via Velocity code from non-default language versions of content (#12820).
  • Resolved an issue which could cause the Integrity Checker to fail in specific circumstances with mismatching Roles on the sender and receiver (#13067).
  • Resolved an issue which could allow the working version of content to be retrieved incorrectly via the REST API (#13131).
  • Resolved an issue preventing old versions of content from being deleted when a specific language version of the content was deleted (#13682).
  • Resolved an issue which could cause the push of Categories to fail in certain circumstances (#13722).
  • Improved the handling of database connections to prevent the potential premature connection closure (#13792).
  • Increased the space used to display related content in the Relationships tab to enable the full title to be viewed (#14060).
  • Resolved an issue preventing limited users from adding Containers they have permission to when editing a Template (#14134).
  • Resolved an issue which could cause the Fix Assets Inconsistencies tool to fail in some circumstances (#14141).
  • Resolved an issue which could cause the "Four Eyes" Workflow action to move content to the next step prematurely (#14144).

New in dotCMS Community Edition 4.3.2 (Mar 1, 2018)

  • 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.

New in dotCMS Community Edition 4.3.1 (Feb 24, 2018)

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

New in dotCMS Community Edition 4.3.0 (Feb 22, 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).
  • dotCMS now supports creation of Custom Static Endpoints which save static versions of your site to a local folder (on the server), or any external location accessible via SCP or sFTP.
  • For more information, please see the Connecting Remote Servers documentation.
  • "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.

New in dotCMS Community Edition 4.2.2 (Nov 16, 2017)

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

New in dotCMS Community Edition 4.2.1 (Nov 14, 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:
  • 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).

New in dotCMS Community Edition 4.2.0 (Oct 18, 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 between dotCMS 4.2.0, it is necessary to manually re-index your site after the upgrade is complete.
  • Configuration Changes:
  • 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.
  • 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
  • 1. URLs beginning with a "/" will be converted to 200/forward.
  • 2. URLs containing "//" will be converted to 301/redirect.
  • 3. 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.
  • New features:
  • 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:
  • Fixed a problem pushing content when there is no live version of the Site (#11977).
  • Fixed an issue causing Network status to display as red (error) when more than one server was configured (#11933).
  • JBoss fix for Boolean Casting error in 4.1.1 - (#12086).
  • Timestamp inconsistency fixed for clustered nodes - (#12276).
  • Fixed an issue preventing the thumbnail from being displayed when a new image is uploaded to a binary field (#12490).
  • Fixed an issue in the dojo library configuration preventing dropdowns and filtering select fields from working properly on Windows 10 (#12007).
  • Fixed an issue when saving a Form system field (#12684).
  • Fixed slow performance issues when push publishing content with many relationships (#12840).
  • Fixed an issue preventing the Velocity macro cache from being populated properly (#12523).
  • Fixed an issue where an extra comma was appended at the end of the options saved to a multi-select field #12715).
  • Fixed an issue which sometimes caused an exception message in the log files when the /edit URL was used to access a page (#12170).
  • 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 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 preventing a tool from being added to a new Tool Group after it was added to a different Tool Group (#12635).
  • Improved push publishing bundle upload to allow upload of a bundle from the same server it was generated on (#12465).
  • Additional changes and improvements:
  • 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.
  • 1. Categories can now be pushed as a dependency of content (#12125).
  • 2. Push Publishing now only retries failed pushes to the specific endpoints which failed (#11500).
  • 3. 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.
  • 1. Saving Content: The performance of the contentlet getInode method has been improved (#12488).
  • 2. Accessing Content: A number of performance improvements were made when searching, indexing, editing, and saving content from the dotCMS back-end (#12497).
  • 3. 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.
  • 1. The NG user interface library has been upgraded to version 4.2.4.
  • 2. The Hazelcast library has been upgraded to version 3.8.4.
  • 3. The com.moowork.node library has been upgraded to version 1.2.0.
  • 4. Replaced the legacy edu.emory.mathcs.backport.java.util.concurrent library with the java.util.concurrent library to improve portability and maintainability.
  • 5. UI build tools have been migrated from webpack to ng-cli.
  • Property changes: 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).
  • 1. 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.
  • 2. 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.

New in dotCMS Community Edition 4.1.1 (Jun 19, 2017)

  • The 4.1.1 release includes fixes for the following reported issues introduced in dotCMS 4.1.0:
  • Fixed a potential issue when pushing relationships (#11842).
  • Fixed an issue preventing inherited permissions from being displayed in Content Types (#11850).
  • Fixed a problem where the Unique property was not respected on a Text field set to display Whole Numbers (#11857)
  • Re-introduced the ability to set publish and expire dates on all types of content, including simple content, Widgets, Files, and Pages (#11861).
  • In addition, the 4.1.1 release includes fixes for the following additional issues which existed in earlier versions of dotCMS:
  • Fixed a potential out of memory error when push publishing very large bundles (#11835).
  • ◦This potential issue has existed since dotCMS release 2.x, so customers who have experienced issues pushing very large bundles on older releases may notice imrpoved performance and reliability with the 4.1.1 release.
  • Fixed a reported potential security vulnerability in the administrative panel.
  • Added the visitor content tab back to the starter site.
  • ◦This tab has been not been included in the starter site since release 4.0.0.

New in dotCMS Community Edition 4.1.0 (Jun 5, 2017)

  • 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.
  • 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).
  • 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:
  • 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:
  • OSGI plugins that are overridding 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 environmental and system variables.
  • For more information, please see the Property File Values section of the Changing dotCMS Configuration Properties documentation.
  • Properties files are now automatically and immediately reloaded any time they are changed.
  • For more information, please see the Reloading Property Files section of the Changing dotCMS Configuration Properties documentation.
  • All Vanity URLs, folder, file and page lookups are 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.
  • Restful Content API for Binary Uploads
  • RESTfully POSTed content including Binary fields are now expected to use the variable binary + field order, e.g. if the binary field is the 6rd field on the content type, binary6. For customers that have automated scripts posting binaries RESTfully, please ensure that you are sending the updated variable name in your POSTing. You can see the proper name on the Content Type definition screen.
  • 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 in 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" "" 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

New in dotCMS Community Edition 4.0.1 (May 9, 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.
  • Fixed an issue causing an error on startup if the dotCMS server was not connected to the Internet (#11131).

New in dotCMS Community Edition 3.6.0 (Sep 6, 2016)

  • IMPORTANT CHANGES:
  • Important changes in dotCMS 3.6.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:
  • Empty File Handling:
  • *A dotmarketing configuration property has been added to accept/reject empty file uploads. Empty files uploads are not allowed in dotCMS 3.6.0 by default:
  • CONTENT_ALLOW_ZERO_LENGTH_FILES=false
  • IMPORTANT: It is highly recommended that empty files are cleaned from the assets folder of your dotCMS installation. This can be done in unix by running:
  • find $PATH_TO_ASSETS -size 0 -type f -delete
  • *A warning is always logged any time an empty file is found, regardless of the property setting. For more information, see the File Configuration documentation.
  • Cluster Autowire Scale Down Improvement:
  • A dotmarketing configuration property has so that replicas are not considered "timed out" and dropped for 30 minutes by default:
  • HEARTBEAT_TIMEOUT: By default the timeout is 30 mins without a "heart beat".
  • This allows servers to be stopped for short maintenance intervals without being dropped from the cluster (#7860, #8038)
  • Postgres Upgrade Requirements (Applies only to pre-dotCMS 3.5.1 upgrades)
  • Clients with large datasets that are using a Postgres database must make configuration changes to two properties in the context.xml file both prior to and after the upgrade to ensure the upgrade completes successfully.
  • Before Upgrade:
  • Before starting up the new 3.6.0 instance, change the following property values in your context.xml file
  • After Upgrade:
  • After the upgrade process is completed, the properties for the Postgress configuration should be reset to the default settings:
  • Disregard if you are upgrading from dotCMS version 3.5.1.
  • Improvements to Default Cache Behavior:
  • Cache Regions not defined in dotmarketing-config.properties are now divided into separate caches. In dotCMS 3.3, undefined cache regions were previously all combined into the default cache region. In dotCMS 3.6.0, undefined cache regions are separated into unique cache regions, each one using the cache chain specified by the cache.default.chain property and using the default region size (1000 entries). (#9104)
  • New H2 Cache:
  • The H22 cache provider replaces the original H2 cache provider, to offer an H2 cache which is more flexible, configurable, robust, and fault-tolerant than the original H2 cache provider. However, the original H2 cache provider is still supported for backward compatibility with older versions. (#9200)
  • PERFORMANCE IMPROVEMENTS:
  • Fix tasks in Maintenance:
  • Execution time when fixing a big number of orphan identifiers was greatly reduced (#9234)
  • Execution time when fixing a big number of contents with inconsistencies in its inodes was greatly reduced (#9229)
  • Smarter Reindex to avoid multiple reindexation of the same content and nested relationships (#8836)
  • IMPORTANT FIXES:
  • The 3.6.0 release includes fixes for a number of reported issues, including but not limited to the following:
  • Changed database to maintain compatibility with the new version of Oracle (#9277)
  • ‘Delete Push Assets History’ functionality on Maintenance Portlet is now working when using Oracle and MS SQL Server databases (#9383)
  • Push Push Actionlet works in Edit Mode (#9351)
  • Push of already pushed bundled assets to multiple environments gets them sent to all selected/expected (#9289)
  • Push delete properly deleting content on the receiver when adding the content to a bundle and downloading for deletion (#9053)
  • Pushing content with a live version but on working state now properly reflects its working state on the receiver (#8784)
  • Users can now be properly push published (#9242)
  • Time machine correctly snapshots personalized content (#9097)
  • Jobs not leaking database connections (#9159)
  • CSV Template now has correct values for key/value fields when downloading the CSV Sample file for a content type with fields of that type (#9137)
  • Pagination on the Content Type admin page is now properly working (#9133)
  • Fix task for checking inconsistencies in Assets not hanging anymore (#9106)
  • Binaries already selected not losing its value when another require field is missing (#9082)
  • List of pages referencing a contentlet is now showing the correct ones when those are in different languages (#8996)
  • User permissions are now fully cascading from “All Sites” (#8853)
  • Delete content through the Maintenance admin screen properly deletes object (in all languages) (#8820)
  • New versions of existing content in different languages are now able to be created via REST (#8775)
  • User name and last name now accept unicode characters (#8750)
  • Deploy static plugins from git checkout now works correctly on Windows (#8414)
  • List of initial hosts for auto clustering is now building properly (#8196)
  • Cluster Autowire functionality now verifies that addresses exist on a network interface (#6971)
  • Tags are now included when getting content via REST (#8903)
  • Tags and Categories of content are now included in the results of the ElasticSearch admin page (#8953)
  • In the HTMLPage admin page, the 'Filter By Template' dropdown now properly lists options (#8901)
  • 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 3.6.0:
  • A Google Translate feature has been added as an optional workflow actionlet for one-click automated content translations (#9037)
  • Multilingual files are now supported via back-end upload, web-dav, etc. (#9162)
  • Finnish back-end translation is now available as a login or default language option (#9691)
  • Users can now be deleted in the system. (#8879)
  • ADDITIONAL CHANGES AND IMPROVEMENTS IN DOTCMS:
  • Elasticsearch has been upgraded to version 1.7.
  • Markdown support has been moved from a plugin into the dotCMS core via the Markdown Viewtool.
  • Streamlined Source Code: A number of deprecated SQL tables, Javascript libraries, etc.
  • Unmapped several deprecated servlets.
  • Record startup times of different modules in the System (Overall, Cache, DB, ElastcSearch, Quartz Jobs, OSGI plugins) (#Performance Tuning - StartupTime)
  • Results from Elasticseach via REST can be prettyfied (#REST-prettyfied)
  • Deploy-plugins sh, bat and gradle task now runs undeploy-plugins first (#8814)
  • Deploy-plugins sh, bat, and gradle task now always compile the code, even though when the build folder already exists (#8703)
  • UrlRewriteFilter was moved above the CMSFilter in order to correctly process forwards (#6926)
  • JSONTool now is able to handle JSON arrays (#JSONTool, #1991)
  • When editing a Site, the “All Sites” option was removed from the tag storage field to eliminate ambiguity and confusion with “System Host”
  • Note: Clients upgrading from older versions (especially dotCMS 1.x) may need to re-map some of these servlets to enable old migrated content to operate in dotCMS 3.6.0.
  • Servlet Explanation
  • SalesForceAuthFilter No longer used.
  • PdfServlet We recommend a web service or a css driven print view instead.
  • Servlets used by Jasper reports No longer used.
  • PermalinkServlet Previously used for old school ping backs and pathing like /permalink/{id}.
  • IconServlet Used by the deprecated admin tool.
  • CampaignReportingServlet Previously used for email campaigns.
  • AdminControlServlet Not used.
  • TitleImage We recommend the use of web fonts and css instead.
  • ThumbnailImage Use the RESTful image url instead.
  • XSPFServlet Used in the deprecated mp3 macro.
  • SlideShowServlet Used in the deprecated slide show macro.
  • SimpleCaptchaServlet We recommend implementing captchas using a 3rd party library.
  • ImageServlet Used only by the deprecated Configuration Portlet.
  • AudioCaptchaServlet We recommend implementing captchas using a 3rd party library.
  • JMySpellCheckerServlet Browser-based spell checking in the WYSIWYG field is now used instead.

New in dotCMS Community Edition 3.5.1 (Jul 29, 2016)

  • IMPORTANT CHANGES:
  • Important changes in dotCMS 3.5.1 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:
  • Postgres Upgrade Requirements:
  • Clients with large datasets that are using a Postgres database must make configuration changes to two properties in the context.xml file both prior to and after the upgrade to ensure the upgrade completes successfully.
  • Before Upgrade:
  • Before starting up the new 3.5.1 instance, change the following property values in your context.xml
  • After Upgrade:
  • After the upgrade process is completed, the properties for the Postgress configuration should be reset to the default
  • PERFORMANCE IMPROVEMENTS:
  • Several performance improvements have been made in this release:
  • Improved cache handling of permissions:
  • The overall system performance has been improved by reducing the number of round trips to the database server when checking permissions
  • Improved upgrade performance:
  • Upgrade tasks for datasets with a large number of contentlets that utilize tags has been significantly optimized (#9362).
  • Improved cache performance under heavy load:
  • The cache implementation has been changed to utilize less CPU resources
  • FIXES:
  • This release includes fixes for a number of reported issues, including but not limited to the following:
  • Fixed critical security isssue, "Lack of user verification in the CMSMaintenanceAjax class"
  • Changed database to maintain compatibility with the new version of Oracle
  • Improved the DB locks used in scheduled jobs when running with MS SQLServer
  • Fixed an issue when deleting a field from a Content Type with large numbers of existing records
  • To view the details on any of these issues, please click the link in parentheses next to each issue.

New in dotCMS Community Edition 3.3.2 (May 19, 2016)

  • This release includes fixes for the following reported security issues:
  • XSS vulnerability in the Query Tool (lucene) screen.
  • SQL Injection vulnerability when saving content through the REST API.
  • Ability to view files on the Log Viewer outside the configured directory.
  • SQL Injection vulnerability in the Workflow configuration screen.
  • Header injection vulnerability in the send email functionality.
  • SQL Injection vulnerability via DWR.
  • Lack of user verification in the CMSMaintenanceAjax class.

New in dotCMS Community Edition 3.3.1 (Apr 9, 2016)

  • dotCMS version 3.3.1 is a maintenance release to add some performance improvements and fix a number of reported issues in the 3.3 release. Note that all fixes in the 3.3.1 release are already included in the dotCMS 3.5 Beta release.
  • Performance Improvements:
  • Several performance improvements have been made in this release, including but not limited to the following:
  • Push publishing has been optimized for bundles containing related items, significantly improving speed for large sites.
  • Some MySQL queries have been optimized, significantly improving performance for some operations.
  • Performance has been improved when viewing pages in Edit or Preview mode on servers with large numbers of Content Types.
  • Fixes:
  • This release includes fixes for a number of reported issues, including but not limited to the following:
  • After migrating legacy pages, the Redirect URL value is dropped.
  • Cannot add folders at root level with a limited user, even when permissions should allow it.
  • Filenames are not escaped when Downloading.
  • In some cases, the wrong language_id affects the current session.
  • The Integrity Checker sometimes generates errors when running on MS SQL Server.
  • Log4j2 log rollover file locations have changed to support improved log history.
  • FileAssetMap no longer has a 'host' field.
  • In some specific circumstances, aborted filehandles may not be released properly.
  • There is sometimes a casting exception during Push Publishing when running on MS SQL Server.
  • Host Lookup in request does not work in Live Mode.
  • The back-end Link to the dotCMS Support Portal is incorrect.
  • Integrity Checker may sometimes fail if there are unpublished/archived assets.
  • The cluster cache may sometimes become corrupted after receiving content.
  • NavTool may return incorrect "active" items.
  • Button in Push Publish Workflow Action has a misleading label.
  • Files under a folder are sometimes sorted incorrectly.
  • Pushed Containers and Templates sometimes don't go live on the receiving site.
  • getContentletVersionInfo() has inconsistent behavior.
  • Log messages for OSGI plugins are displayed in catalina.out instead of dotcms.log.

New in dotCMS Community Edition 3.3 (Apr 9, 2016)

  • Important Changes:
  • A number of important changes in dotCMS 3.3 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 3.3:
  • Velocity Macro Caching
  • The Startup Script Has Changed
  • Cache Configuration Has Changed
  • Quartz Job Scheduler MisfireHandler Log Error
  • The log4j.xml File is No Longer Used
  • Behavior Changes:
  • In addition, the following differences in default behavior in dotCMS 3.3 may change your expectations and require a review of your administration practices. Please review all of these changes before upgrading from a previous release.
  • dotCMS Messages are No Longer Written to the Console
  • The Log file Rollover Pattern has Changed
  • Velocity Macro Caching:
  • dotCMS 3.3 uses a new cache chain which allows you to specify multiple cache providers in a chain. Due to the need to support cache providers which handle velocity code in different ways, velocity macros can no longer be cached to disk.
  • If you have velocity macros in .vtl files, the velocity macros will not render properly on some servers, or after a restart.
  • If your velocity macros are stored in files with a .vm extension you do not need to make any changes; dotCMS will automatically cache your macros to memory only, and your applications will continue to work normally.
  • If you have velocity macros stored in .vtl files or files with other extensions, you have two options to prevent problems rendering your macros:
  • Move all velocity macros into separate files with an extension of .vm.
  • Enterprise Only: Change the Velocity cache region chain (cache.VelocityUserVTLCache.chain) to use cache providers which store data to memory only.
  • The Startup Script Has Changed"
  • The dot.jamm jar has been upgraded to a newer version, so the command used to startup the javaagent for the dot.jamm jar has changed.
  • Cache Configuration has Changed":
  • dotCMS 3.3 includes a new cache chain feature which enables Enterprise customers to configure and customize cache providers. As part of this change, the cache configuration properties have changed. How you address these changes depends on your dotCMS license version:
  • Community Customers:
  • dotCMS 3.3 still uses the cache size parameters (cache.default.size, cache.adminconfigpool.size, etc.), but dotCMS Community Edition no longer uses a disk cache. So if you have changed your cache .size parameters you must copy them to the dotCMS 3.3 properties file, but no other changes are needed (and you do not need to copy your cache .disk parameters such as cache.default.disk).
  • Enterprise Customers:
  • dotCMS 3.3 still uses the cache size parameters (cache.default.size, cache.adminconfigpool.size, etc.), so if you've made changes to these properties you will need to copy them to your dotCMS 3.3 configuration. However the ".disk" properties (cache.default.disk, cache.contentletcache.disk, etc.) have been replaced with the cache chain properties, so if you've made changes to the cache ".disk" cache properties, you must reconfigure your cache using the new cache chain parameters in dotCMS 3.3. Please see the Cache Chaining documentation for more information.
  • Quartz Job Scheduler MisfireHandler Log Error:
  • When upgrading from an older version, you may receive an error in the logs related to the quartz job scheduler:
  • CST ERROR quartz.DotJobStore: MisfireHandler: Error handling misfires: Couldn't store trigger 'trigger16' for 'CleanBlockCacheScheduledTask'
  • Although this causes errors to be written to the log file, it does not affect system performance.
  • Resolution:
  • The CleanBlockCacheScheduledTask is a system job, so it can't be removed from the Job Scheduler tab. To remove the errors from the log file, you must manually run SQL commands against your database to remove the CleanBlockCacheScheduledTask. The following SQL commands will remove the task causing the error (these commands can be used in all databases):
  • DELETE FROM qrtz_excl_cron_triggers WHERE trigger_name IN (SELECT trigger_name FROM qrtz_excl_triggers WHERE job_name = 'CleanBlockCacheScheduledTask');
  • DELETE FROM qrtz_excl_triggers WHERE job_name = 'CleanBlockCacheScheduledTask';
  • DELETE FROM qrtz_excl_job_details WHERE job_name = 'CleanBlockCacheScheduledTask';
  • Important Logging Changes:
  • dotCMS 3.3 has been upgraded to Log4j version 2. As part of this update, a number of changes have been made to the logging configuration and behavior.
  • The log4j.xml File is No Longer Used:
  • The log4j configuration file has been renamed to log4j2.xml, and moved to the ROOT/WEB-INF/log4j folder.
  • If you've made changes to the log4j configuration on your site, you may still use many of your changes, but you will need to merge these changes into the log4j2.xml file provided with dotCMS 3.3. Please see the Logging Configuration documentation for more information.
  • dotCMS Messages are No Longer Written to the Console:
  • To improve performance and prevent management issues with application server log files (e.g. catalina.out), dotCMS log messages are no longer written to the console. All dotCMS log messages can still be viewed in the dotCMS log files; please see the Logging Configuration documentation for more information.
  • The Log file Rollover Pattern has Changed:
  • Rolled log files are now stored in date-stamped directories under the /dotserver/Tomcat-X.xx/webapps/dotsecure/ directory (or whatever directory is specified by your DOTCMS_LOGGING_HOME variable). This means that log files from previous days will not be automatically overwritten as they were in previous versions, giving you access to older log files, but requiring you to periodically remove older log directories (manually or through a scheduled task). In addition, for large sites with significant log activity, this may cause the log files to roll over more frequently than in previous versions.
  • If you wish to change rolling log file behavior to store all rolled log files in a single folder (e.g. .../dotsecure/logs/archive), edit the log4j2.xml file, replacing the string $${date:yyyy-MM} in all FILENAME_PATTERN properties with the name of the folder to store the files (e.g. archive).
  • Fixes:
  • Fixed a number of reported security issues (please contact dotCMS support for more information).
  • Fixed several issues with push publishing.
  • Fixed a number of issues with the Integrity Checker.
  • Fixed some scroll bar issues in Edit Mode in IE11.
  • Fixed an issue with incorrect dates set in a .ICS file downloaded from the Calendar.
  • Fixed some issues managing files and folders in the Site Browser.
  • Fixed an issue preventing newly created cookies from respecting the expire parameter.
  • Fixed some ordering issues with Workflow sub-actions.
  • Fixed some issues running dotCMS as a WAR in JBoss and WebSphere.
  • Fixed an issue with Image Editor URLs.
  • New Features;
  • Added a Stop Reindex and Make Active button to allow you to safely stop the reindexing process.
  • Added the ability to use external cache providers, including Redis.
  • Added the ability to chain the cache, and specify different chains for each cache region.
  • Added the ability to directly push languages and add languages to bundles
  • Added a User Agent viewtool plugin.
  • Additional Changes and Improvements:
  • The Reindex feature has been improved to try all records once before retrying failed records a configurable number of times, ensuring failed records will not hold up the reindex process. In addition logging and notifications of index failures have been improved, and buttons have been added to display failed records and auto switch to the new index if needed.
  • Right-click functionality in the WYSIWYG field has been disabled. We now rely entirely on the user's browser for functions such as spell check.
  • The JUnit framework is no longer packaged with dotCMS. If you have a plugin that requires the JUnit framework, you must repackage your plugin to include it.
  • The class com.dotmarketing.cache.StructureCache was refactored to com.dotmarketing.cache.ContentTypeCache. Any references in plugins or other locations should be updated to the new class name when upgrading.
  • Updated the CMIS library to version 1.3.
  • The HTML code returned for page redirects has been changed from 302 (moved temporarily) to 301 (moved permanently).
  • The navtool Velocity viewtool now accepts a navigation level, allowing you to display the navigation from any level in the navigation tree.
  • The jsontool and importtool Velocity viewtools now accept a timeout value to prevent long waiting requests from stalling threads.

New in dotCMS Community Edition 3.2.4 (Apr 9, 2016)

  • Fixes:
  • Added ability to add files without extensions via webdav
  • Improved 1.9 to 3.2.4 upgrade
  • Improved logging for the Migrate to Content functionality
  • Cut/Paste fixed on Legacy Pages
  • Added config to sleep during Reindex logic
  • Improved the performance for File Assets when getting their dimensions

New in dotCMS Community Edition 3.2.3 (Jul 22, 2015)

  • Improvements:
  • Improvements to Reindex Logic on Failures in ElasticSearch

New in dotCMS Community Edition 3.2.2 (Jul 3, 2015)

  • Fixes:
  • Fixed issues with What's Changed functionality in Edit Mode
  • Fixed some issues with Publishing content in multiple languages
  • Fixed some major performance issues with legacy pages meaning pages that are not content

New in dotCMS Community Edition 3.2.1 (Jun 25, 2015)

  • Improvements:
  • Updated Spring OSGi example plugin from Spring 3 to Spring 4.
  • Made multiple performance improvements.
  • Sessions are no longer required and load balancer stickiness is not longer mandatory for front end site delivery in a cluster (the admin functionality and multilingual sites where languages can be toggled still require sessions). By default, dotCMS still creates sessions for clickstream tracking. You can turn off automatic session cookie creation by setting ENABLE_CLICKSTREAM_TRACKING to false in your dotmarketing-config.properties.
  • Fixes:
  • Fixed the key value field losing data after rendering in the UI.
  • Fixed the DB pooling parameters. The context.xml shipped with 3.2 still used Tomcat 7 specific properties which no longer work with Tomcat 8, specifically the maxActive configuration option has been renamed to maxTotal and the maxWait configuration option has been renamed to maxWaitMillis.
  • Fixed issues with images in a multi-lingual site
  • Fixed static plugin compiling issues with Java 7 and 8
  • Fixed multiple issues with the Navtool Viewtool and Multiple Languages on Pages as Content

New in dotCMS Community Edition 3.2 (Apr 23, 2015)

  • Improvements:
  • Ships with updated Tomcat 8.0.18
  • Java 8 now supported. You can still run Java 7 if needed
  • Added 3 new out of the box Actionlets for Custom Workflows (Email, Auto Set Value, and an Auto Push)
  • Fixes:
  • Fixed the random sort on pull contents
  • Fixed some issues with Weblogic
  • Fixed 3.x issue where the history code fields in containers was not saved

New in dotCMS Community Edition 3.1 (Mar 24, 2015)

  • New Features:
  • HTML Pages are now Content:
  • As content, HTML Pages enjoys all of the features of content. i.e. workflow, versioning, multilingual support, pessimistic locking etc.
  • To support all the new functionality Edit Mode has been improved on the left side controls when editing an HTML Page as Content including Workflow Controls
  • Pages can now exist on the root of a host. This means that if you have a page on the root of your site you no longer need the Virtual Link to map your home page
  • Pages no longer require a file extension
  • Pages can have UTF-8 URIs.
  • Added a more secure Viewtool to query the dotCMS DB directly. The new tool is mapped to $sql. The old method in the CMSMacro Viewtool has been deprecated.
  • All Enterprise versions have added the ability to pass Elasticsearch queries directly into dotCMS. This allows greater flexibility. The queries can be passed in via REST, directly to our APIs in Java, or from Velocity via a Viewtool
  • There is a REST example of this using Geolocalization on the new starter site
  • This opens the possibilities to using functionality like suggestion, facets, geolocalization etc…
  • There is a new portlet that can be used to test queries
  • Overview of Fixes/Improvements:
  • Fixed front end issue where some special characters would use excess CPU cycles
  • A number of security improvements have been made regarding how dotCMS manages cookies
  • Timemachine will now copy dotAsset files
  • The Activity Logger is now logging more events on content modifications
  • Fixed an issue where the back end session would time out while logged in
  • The CSV Content importer now accepts more date formats
  • Updated to the latest ElasticSearch (v1.4.2). This will necessitate a reindex on upgrade
  • Front end forms have much improved multilingual support
  • JGroups library was upgraded which should prevent a small potential memory leak when running a cluster
  • Many fixes to the Integrity Checker and Push Publishing infrastructure
  • Improved the SASS/LESS infrastructure. There is still an issue with SASS on Windows which is still not working. https://github.com/dotCMS/core/issues/7236
  • Improved the REST Portlet infrastructure for those creating portlets in the backend
  • Fixed plugins broken from previous TinyMCE upgrade
  • LDAP and WebDAV work properly now
  • Date ranges are now supported from the Content Search Manager
  • Worked with partner to allow them to run with Azure MSSQL database though Azure is not an officially supported dotCMS stack component

New in dotCMS Community Edition 3.0.1 (Dec 23, 2014)

  • Fixes:
  • Fixed some typos in the backend
  • Updated some missing files in the WYSIWYG editor that was causing issues with both workflows and front end content submission
  • Addressed a leak from a possible closed connection while requesting a file
  • Updated the helloworld plugin for 3.0
  • Improved the logic when running a full reindex. Helps with those who run a reindex that never finishes

New in dotCMS Community Edition 3.0 (Nov 19, 2014)

  • New Features:
  • SASS/LESS:
  • Both SASS and LESS files will compile server side as you upload the source files
  • The SASS/LESS files are cached server side so they only have to compile the first time they are hit
  • Autoscale Clustering:
  • Attaching 2 different dotCMS installs to the same DB and Assets will cause the 2 installs to cluster with zero config
  • Network Configuration Tab:
  • Network and Clustering config can now be done from the Configuration Manager in the Backend UI
  • License Management:
  • The License Management Tab in the UI is redone and improved
  • In the new my.dotcms.com Support Portal you can get a License Pack which allows you to Autoscale
  • Your ServerID and License Info is fully manageable in the License Manager
  • XML Sitemap:
  • The XML Sitemap plugin is now included
  • Ace Text Editor:
  • The Ace Editor is now used for all code textareas
  • Multiple Type Containers:
  • Code can now be added to a container for every structure. This allows a container to display content from multiple structures
  • Indexing Code Upgraded:
  • The index libraries have all been upgraded providing much improved indexing performance
  • Simplified WAR Deployment:
  • Getting a WAR file can now be obtained from the normal dotCMS download
  • A shell and batch script to produce a WAR is included in the bin directory
  • Added JSONP to REST APIs
  • Enhanced dotCMS Logging:
  • Area of the system like Push Publishing have had been improved with better logging to help diagnose issues
  • A notification framework has been implemented complete with APIs to allow system wide communication and notifications
  • The User Activity Logger is much improved and logs many more dotCMS user actions
  • All Libraries Repackaged:
  • Third Party Jars now have unique packaging to avoid conflicts with plugins and app servers
  • H2 DB Added for Testing and POCs:
  • The dotCMS distribution can now be run without any config with the internal H2 DB
  • H2DB is not intended for production use
  • Overview of Fixes/Improvements:
  • Over 100 Push Publishing Fixes and Improvements
  • TinyMCE has been upgraded and should work in all modern browsers
  • Site Search Highlighting has been fixed and improved
  • Continued XSS Security Improvements
  • CMIS code updated so that the latest workbench will connect and work

New in dotCMS Community Edition 2.5.5 (Jul 31, 2014)

  • Improvements:
  • Integrity Checker & Conflict Resolver - This is a new feature in the Publishing Environments tab (system/configuration/publishing environments) that allows users to check for and resolve conflicts that that may exist between servers. Prior to this there were some conflicts which Push Publishing was unable to handle
  • Improved the Job Scheduler’s ability to handle errors and delete jobs which no longer exist
  • To help developers build workflows, ActionID is now displayed for reference on the Workflow screen
  • Significant improvement to the logging of errors while Push Publishing to help with troubleshooting
  • Improved performance and stability of the Reindex process
  • Improved issues with the Tag Manager when working in other languages
  • Improved support for Unicode characters with File Assets
  • Fixes:
  • Fixed multiple bugs in the DB layer which caused breakdowns when saving especially during Push Publishing
  • Fixed issue when adding comments that would occasionally mess up the comments count
  • Fixed absolute URLs in vanity URLs when referencing a dotcms host
  • Fixed issue where limited user couldn’t create a page using layout templates
  • Fixed the help screen when logged in via HTTPS
  • Fixed issues with multi lingual content and Push Publishing where titles wouldn’t show
  • Fixed the reorder menu issue (impacted version 2.5.4 only)
  • Fixed ability to reassign workflow directly from the Edit Content Screen
  • Fixed Push Publishing issue when Pushing content that didn’t have a version in the default language
  • Fixed multiple issues when using the Site Search Highlighter on a cluster
  • Cleaned up duplicate references in the web.xml which prevented deploy on some app servers
  • Fixed issues related to the compare method in later versions of Java

New in dotCMS Community Edition 2.5.4 (Mar 28, 2014)

  • Fixes:
  • Made forgotten password process more secure - now emails token for password reset.
  • Increased security algorithm for generation of passwords.
  • Fixed issue in Edit Mode which could resulting a 404 when clicking on a Menu Link.
  • By default you cannot redirect to an external referrer. To change this default behavior, set DISABLE_EXTERNAL_REFERERS=false in dotmarketing-config.properties file of your configuration plugin.
  • Increased security for comments functionality.
  • Increased security to prevent header injection.
  • Improved XSS prevention algorithms.
  • Fixed live site caching issue when updating files.
  • Fixed CSV import when importing to a host.
  • Increased security of AjaxFileUploadServlet.
  • Improved security for system user.
  • Locked down multiple security issues.
  • Turned off autocompletion of password fields.

New in dotCMS Community Edition 2.5.3 (Feb 17, 2014)

  • Fixes:
  • Fixed multiple IE issues in the backend
  • Fixed multiple errors in the browser's console in the backend
  • Improved some system performance when running under load and during site search indexing
  • Fixed a few Push Publishing Issues
  • Fixed multiple issues for WebSphere 8
  • Fixed the Auto Login Checkbox
  • OSGi can now be disabled
  • Tags will now be imported properly when loading users from a CSV file

New in dotCMS Community Edition 2.5.2 (Feb 17, 2014)

  • Fixes:
  • Fixed concurrency issues with the dotcms cache under load
  • OSGi Examples all use Gradle now for building. This makes deploying and building plugins much easier
  • Fixed the issue where modifying files in a theme could cause the theme to disappear
  • Improved the Upgrade from dotcms 1.9 to 2.5.2+
  • Fixed over 20 Push Publishing Issues

New in dotCMS Community Edition 2.5.1 (Feb 17, 2014)

  • Improvements:
  • Workflows will now Push Publish when Pushing a Structure
  • When Content is Pushed the Workflow will be maintained meaning you will be in the same step on the Receiving server
  • When Pushing Structures the Field Variable name is now used for Fields which is important when the inodes are different but the Field Variable is the same
  • Fixes:
  • Fixed multiple issues when using the Push Publish Actionlet associated with Workflow
  • The User-Agent is now set properly in the header when using dotCMS functionality like Site-Search, Timemachine etc..
  • Fixed an issue when adding binary imagines to Events
  • Fixed Push Publishing a Page when it contains a Working version of Content but no Live version
  • Fixed multiple JS Script Errors on Content Search Manager
  • Fixed issues when retrying a failed Bundle
  • Improved dotcms logic on flushing the cache which will improve the performance of the system
  • Fixed an issue when binary fields weren't being copied over when creating a new language of an existing content
  • A number of stability and performance tweaks mostly surrounding Push Publishing

New in dotCMS Community Edition 2.5 (Feb 17, 2014)

  • [b/]New Features
  • Push Publishing for the following objects:
  • Hosts
  • Folders
  • Files
  • Menu Links
  • HTML Pages
  • Templates
  • Containers
  • OSGI Bundles
  • Categories
  • Structures
  • Users
  • Push Publishing will figure out your dependencies. ie.. Folders,files etc.. under your host
  • You can build Bundles in the UI as your browse around the dotCMS. These Bundles can be uploaded into other dotCMS installs
  • For more info see http://dotcms.com/docs/latest/PushPublishing
  • Overview of Fixes/Improvements:
  • The Content REST API is much improved with new examples see http://dotcms.com/docs/latest/RESTSaveContent
  • Content Search Manager UI/XP Improvements. Now includes a simple search over all content
  • Edit Mode now will keep the session alive after long periods of inactivity
  • Company Tooling is now a Configuration Tool. In the future this will be used for dotCMS Configuration in the UI
  • Updated our Twitter tooling so the newer authentication works
  • Improved the Authentication methods for the REST APIs. Can now use Header, BASIC, Form and Session authentication
  • Site Search now respects content on the System Host(All Hosts) see https://github.com/dotCMS/dotCMS/issues/3123
  • XSS Viewtool added see https://github.com/dotCMS/dotCMS/issues/3064
  • Special Characters not import better when importing Content. See https://github.com/dotCMS/dotCMS/issues/3327
  • User Agents are now set when the dotCMS is rendering its own pages for its interal tooling. The possible agents match their functionality. The possible values are DOTCMS-SITESEARCH, DOTCMS-CMIS, DOTCMS-HTMLPAGEDIFF, DOTCMS-TIMEMACHINE, DOTCMS-BROWSER

New in dotCMS Community Edition 2.3.2 (Feb 17, 2014)

  • Overview of Fixes/Improvements:
  • Addressed issues with pre 2.0 files in dotCMS
  • Addressed the issue where pages could be lost from CMS Maintenance Tooling
  • Addressed IE8 issues on login screen
  • Addressed Full Reindex issues where dotCMS wouldn't switch to the new index even though no content was left to index
  • Fixed the Random Sort in the ContentTool
  • Security Fixes:
  • Removed some test JSPs http://dotcms.com/security/SI-11
  • Locked down dotCMS Scripts under the JSP directory
  • Removed XSS from Login Screen http://dotcms.com/security/SI-14
  • Addressed issues with DWR being too open
  • Fixed SQL Injection Issue http://dotcms.com/security/SI-8
  • Notes:
  • Changed the default for Clickstream. dotCMS now ships with it on by default

New in dotCMS Community Edition 2.3.1 (Feb 17, 2014)

  • Overview of Fixes/Improvements:
  • Fixed the Windows issue when Downloading Data/Assets
  • Fixed an issue with Webdav where files could overwrite other files with like filenames

New in dotCMS Community Edition 2.3 (Feb 17, 2014)

  • New Features
  • Themes and Responsive Design:
  • Themes provide a portable, sharable way to apply a common look and feel across a site or sites.
  • The included dotCMS starter site uses a theme based on Twitter’s Bootstrap for Responsive design, though any modern CSS/JS framework can be used.
  • dotCMS’s theme library provides starter themes for other major CSS frameworks (Foundation, YAML) and allows the community to contribute new themes.
  • Themes can be shared within a host and across hosts.
  • Available in the Community Edition
  • Template Designer:
  • Allows users to create dotCMS templates without any knowledge of HTML code.
  • The Template Designer is used in conjunction with themes to apply a common, responsive look and feel across a site.
  • Preview your theme and template in mobile device resolutions.
  • Use an existing themes, create your own theme, or download a third party theme to create a new design template.
  • Available in the Community Edition
  • Automatic Link Checker:
  • The new Link Checker workflow automatically checks links in WYSIWYG content before saving it, to avoid external link errors.
  • There is a new portlet called Broken Links that can run an external link check on all content structures and creates a report of all broken links. This process can be scheduled using a cron expression, which then sends an email with the link errors found to the content editors.
  • Available in the Enterprise Standard Edition
  • Time Machine / Static Snapshot:
  • Time Machine allows a user to browse a snapshot of how a site has looked in the past or will look in the future (based on publish and expire dates).
  • The timemachine also allows a user to take a snapshot, or static copy, of selected hosts and save it as a "bundle" in dotCMS. This bundle can then be used to run a static copy of your sites on a non-dotCMS web server. Multiple snapshots can be taken for any dotCMS managed host.
  • Available in the Enterprise Standard Edition
  • Scheduled Publishing:
  • Users can assign Publish dates and Expire dates to content structure which would automatically publish or expire content based on those dates.
  • Available in the Enterprise Professional Edition
  • Dynamic Plugins get more Powerful:
  • Hot deploy portlets/admin tools in the backend of dotCMS.
  • Added the ability to deploy Quartz/Cron Jobs.
  • The extra packages can now be deployed from the UI.
  • New Examples on deploying your own Spring version and complete with Spring Web Services.
  • urlReWrite (tuckey) Filters can now be deployed from Dynamic Plugins.
  • Available in the Community Edition
  • New Navigation Tool:
  • dotCMS ships with a developer friendly way to develop custom menus, crumbtrails and sitemaps with your own HTML and styles. This tool will build a navigation given a path and return a list of items.
  • Available in the Community Edition
  • Wiki Tool:
  • The new WikiTool allows dotCMS to parse wiki formated from 3rd party wiki sources like TWiki, Markdown, MediaWiki, Confluence
  • Available in the Community Edition
  • Remote Publishing - BETA:
  • 2.3 introduces a new Remote Publishing framework which will enable remote publishing with an easy to use interface.
  • Publish content, pages and even whole sites to one or more dotCMS server or dotCMS clusters that can be geographically distributed.
  • Remote Publishing is beta functionality that will be supported for Enterprise customers in the 2.3 version and will be finalized in the next dotCMS release.
  • Available in the Enterprise Professional Edition
  • Overview of Fixes/Improvements:
  • The size of the dotCMS Cache is greatly reduced
  • CMIS is now faster and more robust. 2.3 connects can server content via CMIS directly to products like Liferay
  • Salesforce can now be used to authenticate similar to LDAP
  • Multiple IE9/IE10 fixes made
  • Roles Manager can now support hundreds of thousands of roles
  • URLMap now respects a passed in language_id and will set the language session to the language you pull
  • MySQL 5.6 now fully supported
  • Date fields now respect patterns YYYY-MM-DD (HH:MM:SS) and can accept an empty date. You can also set to now by default
  • Restful RoleAPI added
  • Rest APIs now support many authentication methods (GET,POST,BASIC,HEADER,SESSION)

New in dotCMS Community Edition 2.2.1 (Feb 17, 2014)

  • Overview of Fixes:
  • The Log Tailer now Supports Absolute Pathing and logs in sub directories. This should help non Tomcat environments
  • Fixed issues with File Systems that do not support Hard Links
  • Fixed the issue with uploading files when your assets live on another volume from the dotCMS
  • Fixed a number of IE9 issues found on the backend of dotCMS
  • Made Workflows more forgiving when a role is deleted
  • Fixed the Photo Gallery Macro
  • Fixed issues with the Binary Field and Front End Forms
  • Fixed issues occuring when uploading multiple files at a time
  • Fixed some issues with the Dashboard
  • Some minor improvements to backend performance

New in dotCMS Community Edition 2.2 (Feb 17, 2014)

  • Overview of Changes
  • OSGI/Dynamic Plugin Improvements:
  • Dynamic Plugin support has been greatly extended
  • Many more examples are provided under docs/examples/osgi
  • Added support for Servlets, Spring, and Content Hooks
  • Added more controls to Dynamic Plugins. Now you can restart the Framework from the UI without restarting the application
  • Related Content Improvements:
  • You can now select multiple Contents to relate at once
  • When relating Content you can filter by language
  • The Relationship Field UI is much improved when saving content for dotCMS installs with multiple languages
  • Front End Content Forms:
  • Custom Fields are now supported on the Front End of dotCMS Forms and SubmitContent Macro
  • CMIS Library Update:
  • Updated to the latest Chemistry Open CMIS 0.7 libraries
  • RESTful XML/ATOM read write access to content repository
  • Index Management:
  • Added new methods to the Restful API for Index Management providing easier backup/restore functionality
  • Aliases now work and SiteSearch Indicies can now be managed from the API
  • The following methods have been added getIndexName,getIndexStatus,getIndexRecordCount,getNotActiveIndexNames,StopReindexThread, startReindexThread, getReindexThreadStatus
  • General Backend Enhancements:
  • Error Pages - You can now control the logo on the default error pages ie.. 403, 404, 500
  • dotCMS Browser - You can now copy/paste at root level of Host
  • The Drop Old Assets and Fix Asset Inconsistencies are much improved in both performance and functionality
  • Overview of Fixes/Improvements:
  • Permission Performance is greatly improved. This included applying permissions from the Role Manager on All Hosts
  • Reindex Performance is greatly improved. We have seen over 10 times the speed on some installs
  • Upgraded WebDav library and fixed many bugs with WebDav including issues with limited users
  • Fixed issues with Site Search fields not be fully searchable
  • For cluster fixed the issue with teh WEB-INF/binary directory needing to be on the same partition as the Assets directory
  • The Autoupdater uses hardlinks for assets now to help with disk space
  • URL Map Content has much improved multiple language support
  • DOJO has been upgraded to 1.8 for latest Browser support
  • Upgraded Elastic Search to 19.9
  • Upgraded TinyMCE to 3.5.7
  • dotCMS will now respect the URL you are trying to hit when not logged into the backend. So you can go right to the correct tooling/portlet in the backend
  • dotCMS is now fully translated into Chinese, French, Italian, Dutch, German, Russian, and Spanish

New in dotCMS Community Edition 2.1.1 (Feb 17, 2014)

  • Overview of Changes:
  • The logging config now logs Velocity logging to its own file
  • We made a few changes to the stater
  • Solved a cluster issue which could prevent dotCMS from starting in 2.1
  • Fixed a MSSQL permission caching issue

New in dotCMS Community Edition 2.1 (Feb 17, 2014)

  • Overview of Changes
  • .html is now the Default HTML Page Extension:
  • When starting with a new starter .html is the new default file extension (goodbye .dot! We will miss you.)
  • If you are UPGRADING and you are running the default .dot extension you need to download this plugin and deploy to make your front end work.
  • Easier Administration and Manageabillity:
  • You can now get Index Details and Cluster Statistics by highlighting over the Cluster Health Bar under CMS Maintenance
  • It is now possible to get a list of users currently logged in from the CMS Maintenance tool
  • It is now possible to get a Thread Dump from the CMS Maintenance tool
  • MySQL no longer requires lowercase table names be set nor bin_logging to be off
  • Content Improvements:
  • Via a REST URL you can now retrieve and search for content. Results can be XML or JSON. http://www.dotcms.com/docs/latest/ContentAPI
  • dotCMS now ships with a 508/WCAG Accessibility Checker. This functionality is built directly into the WYSIWYG editor. Look for the green check mark icon in the WYSIWYG editor.
  • Binary Content - Will now attempt to use Hard Links for file storage.
  • Remote Widgets:
  • dotCMS Widgets can be delivered into remote systems using a restful API, as either code snippets or as full blown applications
  • Integrated Help System:
  • dotCMS has started a Help System built into the backend
  • Users will be able to get documentation help on areas of dotCMS linked directly from the dotCMS backend
  • Overview of Fixes/Improvements:
  • The Spring code had issues trying to POST. Prior to 2.1 it was possible to get a 301 when POSTING
  • The Autoupdater no longer removes executable permissions from startup files
  • Files can now be used as URL Map Content
  • There have been a number of Workflow fixes
  • Some IE9 tweaks and fixes
  • Many Improvements made on Binary Content - to both performance and stability

New in dotCMS Community Edition 2.0 (Feb 17, 2014)

  • New Customizable/Extendable Workflow Engine:
  • Allows the creation of multiple, muli-level workflow schemes for content and files.
  • Workflows can trigger customizable subactions.
  • Different content type can have different workflows.
  • Files as Content:
  • New file types can be created, fields can be customized on a per filetype basis.
  • URL addressable binary files with all the benefits of being content.
  • CDN friendly pathing to image manipulation with no query strings.
  • Greatly improved Multi-file uploads
  • Metadata Extraction/Indexing:
  • Metadata/content is extracted from files and is indexed and made searchable, including full-text indexing. This allows for document management solutions to be created using the dotCMS platform.
  • ElasticSearch replaces (wraps) lucene for performance and horizontal scalability:
  • Index Replication/Auto-sharding
  • Index once, available everywhere in clustered installations.
  • Allows index infrastructure to scale separately from dotCMS installation based on an implementation’s need.
  • Pessimistic Content Check-in / Checkout:
  • Content can be locked for editing - only the editing user or CMS Administrators can release the lock.
  • Content Editing UI improvements:
  • Workflows and content locking are integrated into an improved content editing UI.
  • Key/Value Field Type:
  • Allows a content type an unlimited number of values that can be determined when the content is being entered – think the specifications page for various electronic products in an ecommerce environment.
  • Data Model/API Improvements:
  • Content state has been moved to a separate table
  • Identifiers, live and working versions all enforced by referential integrity

New in dotCMS Community Edition 1.9.2 (Feb 17, 2014)

  • New Features Include:
  • Online Image Editor allows content contributors to edit images without needing additional software. Users can resize, crop, rotate, "save as" different image types and adjust hue, saturation, brightness and coloration of images stored in dotCMS.
  • New Image Renditions and Clipboard allows content editors to use edited versions (renditions) of source images without having to store multiple versions of the same image. An Image clipboard allows users to create the rendition they want to use, add it to their clipboard, and paste it into their content for re-use.
  • Inline Editing allows content editors frictionless editing of site content, inline, without needing to return to the admin portal.
  • Host Dashboard gives web site owners and marketers a snapshot of key site trends and usage statistics.
  • Activity Stream Reporter provides web managers detailed reports into content contributors’ and other users' usage and activity within the web content management system.
  • Page Caching allows an administrator to cache pages statically for a set period of time for maximum scalability.
  • Extended SEO Descriptions and Keywords give page editors fine grained control over relevant SEO metadata.
  • Cache Tags give web developers a way to statically cache arbitrary blocks of template, container, page or content code to increase page performance.
  • New Auto Updater allows for easier system upgrades and helps insure you are running the latest version of dotCMS.
  • Italian Language translation now included out of the box.
  • Improvements Include:
  • All images and icons used in the back end of dotCMS are rendered as sprites, using just 2 images. This improves browser performance considerably.
  • New Recurring Events functionality now stores singlely in the system, allowing individual events in a series to be disconnected and making overall event editing much quicker.
  • Content can now be imported using the content identifier as the primary key, which facilitates batch editing of large numbers of content objects.
  • A number of minor bug fixes and performance improvements.
  • Admin log tracks who, where and what of major system operations and functions.

New in dotCMS Community Edition 1.9.1 (Feb 17, 2014)

  • Multi-lingual backend now includes Spanish, French, German and Conversational Chinese translations. Thanks to our Partners CGX AG and Asta Systems!
  • Red-lining : "what's changed" tracks additions, deletions before publishing.
  • Lucene/Nutch based site search. The new site search can index many different file types such as HTML, XML, ZIP, OpenDocument, Microsoft Office (Word, Excel, Powerpoint), PDF, JavaScript, RSS, RTF, MP3 (ID3 tags). Additionally, we have created an admin tool to allow a site administrator to build new indexes on a scheduled basis.
  • New I/O friendly disk cache implementation speeds page delivery and overall throughput.
  • JSP/Velocity integration tool eases legacy/enterprise system integration by allowing JSPs to be wrapped by velocity templates and content.
  • Improved starter site ships with Events calendar, more demonstrations, Google Maps and Google Analytics.
  • Multi-host sites will exclude system content by default, more cleanly separating content that lives on specific hosts.
  • Multi-host sites log you into the host that you are viewing by default.
  • Community contributed JSON Tool - server side JSON handling that allows you to consume and reuse JSON from remote systems - thanks Michael Fienen (@fienen)!
  • Community contributed email Tool - scripting friendly tool allows email communication from within Velocity - thanks Chris Falzone (@chris_falzone)!
  • A number of minor bug fixes and improvements.

New in dotCMS Community Edition 1.9 (Aug 6, 2010)

  • CMIS & Content API
  • Multi-Tenet Host Management
  • Copy Paste Entire Web Sites
  • Cascading Permissions and Roles
  • SEO Friendly Names for Dynamic Pages Play Video