• Document Up to Date

Release Notes

This section contains release notes for CrafterCMS 4.0.x. For other release notes, please visit your release’s release notes page here: https://docs.craftercms.org

Note

CrafterCMS 4.0.x requires Java 11

CrafterCMS 4.0.7

Released July 17, 2023

Updates

  • Upgraded dependencies

  • Git performance optimization

For information on upgrading 3.1.x sites, see here

Important

Please see Breaking changes in 4.0.3 for breaking changes and other things to consider before upgrading

Please see Breaking changes in 4.0.0 for breaking changes and other things to consider before upgrading

For instructions on how to update your CrafterCMS install to 4.0.0 (applies to 4.0.7), please see Upgrading CrafterCMS

When using private key SSH authentication in the init-site.sh script, the private key path must be set explicitly.
Please see Setup Project for a Delivery Environment for more information on using the -k option of init-site.sh to set the private key path

For Linux installs, the Studio upgrade requires the library libaio which is not installed by default in some Linux distributions. Please see the section on Linux Prerequisites in Linux Prerequisite for instructions on how to install the library libaio




CrafterCMS 4.0.6

Released July 5, 2023

Updates

  • Upgraded dependencies

For information on upgrading 3.1.x sites, see here

Important

Please see Breaking changes in 4.0.3 for breaking changes and other things to consider before upgrading

Please see Breaking changes in 4.0.0 for breaking changes and other things to consider before upgrading

For instructions on how to update your CrafterCMS install to 4.0.0 (applies to 4.0.6), please see Upgrading CrafterCMS

When using private key SSH authentication in the init-site.sh script, the private key path must be set explicitly.
Please see Setup Project for a Delivery Environment for more information on using the -k option of init-site.sh to set the private key path

For Linux installs, the Studio upgrade requires the library libaio which is not installed by default in some Linux distributions. Please see the section on Linux Prerequisites in Linux Prerequisite for instructions on how to install the library libaio




CrafterCMS 4.0.5

Released June 7, 2023

Updates

  • Fixed bug where Studio fails to ingest very large commits

For information on upgrading 3.1.x sites, see here

Important

Please see Breaking changes in 4.0.3 for breaking changes and other things to consider before upgrading

Please see Breaking changes in 4.0.0 for breaking changes and other things to consider before upgrading

For instructions on how to update your CrafterCMS install to 4.0.0 (applies to 4.0.5), please see Upgrading CrafterCMS

When using private key SSH authentication in the init-site.sh script, the private key path must be set explicitly.
Please see Setup Project for a Delivery Environment for more information on using the -k option of init-site.sh to set the private key path

For Linux installs, the Studio upgrade requires the library libaio which is not installed by default in some Linux distributions. Please see the section on Linux Prerequisites in Linux Prerequisite for instructions on how to install the library libaio




CrafterCMS 4.0.4

Released June 2, 2023

This release includes fixes for issues with the release version 4.0.3

Updates

  • Fixed issue with page history when page contains an É, é (e-acute) entity
    See here for more information

  • Fixed issue with hard dependency calculation when parent is moved
    See here for more information

  • Fixed issue with SAML not re-authenticating users via the Open Login Form after a Session Expired

  • Fixed issue with site creation if write takes place while creation is still in process

  • Upgraded various libraries and dependencies

For a full list of tickets, please visit: GitHub 4.0.4 Milestone

For information on upgrading 3.1.x sites, see here

Important

Please see Breaking changes in 4.0.3 for breaking changes and other things to consider before upgrading

Please see Breaking changes in 4.0.0 for breaking changes and other things to consider before upgrading

For instructions on how to update your CrafterCMS install to 4.0.0 (applies to 4.0.4), please see Upgrading CrafterCMS

When using private key SSH authentication in the init-site.sh script, the private key path must be set explicitly.
Please see Setup Project for a Delivery Environment for more information on using the -k option of init-site.sh to set the private key path

For Linux installs, the Studio upgrade requires the library libaio which is not installed by default in some Linux distributions. Please see the section on Linux Prerequisites in Linux Prerequisite for instructions on how to install the library libaio




CrafterCMS 4.0.3

Released March 24, 2023

This release includes fixes for issues with the release version 4.0.2

New Features

  • Crafter Studio now uses zxcvbn for password strength management
    See here for more information

    For more information on configuring the password requirements, see Configure Studio Password Requirements

  • Added support for adding headers to responses when there are matched configuration patterns in the Engine Project Configuration file

    Crafter Engine now supports configuring Cache-Control headers via the Engine Project Configuration file, using the headerMappings property. By default, it will follow the cache policies configured, where before, it was set to no-cache.

    If you’re using a reverse-proxy or a CDN, no changes are required since caching is done by the reverse-proxy/CDN.

    See Engine Project Configuration for more information on configuring response headers

    See here for more information

  • Added support for displaying item paths in Crafter Studio’s PreviewDialog
    See here for more information

  • Added support for capturing output of the crafter.sh script in a log file
    See here for more information

    To learn how to capture the output of the crafter.sh script, see here

Updates

  • Updated Studio and Engine SAML to use the new Spring Security
    See Engine SAML2 Configuration and Studio SAML2 Configuration for more information.

  • The property studio.cache.assets.maxAge in the Studio configuration file is changed from minutes to seconds

    ##################################################
    ##                    Cache                     ##
    ##################################################
    ...
    # The max age in seconds that the browser should cache responses for requests matching `studio.cache.assets.maxAge.includeUrls`
    studio.cache.assets.maxAge: 3600
    # The urls that should include max-age=<studio.cache.assets.maxAge> in Cache-Control header. Other urls will be set to default max-age=0, must-revalidate
    studio.cache.assets.maxAge.includeUrls: /static-assets/**,/1/plugin/file/**
    ...
    
  • Added support for previewing PDF assets in Studio
    See here for more information

  • Updated Group management dashboard to sort groups alphabetically
    See here for more information

  • Updated Moment Timezone library
    See here for more information

  • Added support for sorting assets by Name/Recently uploaded
    See here for more information

  • Fixed issue with image cropper for existing images
    See here for more information+

  • Fixed issue with session inactivity timeout
    See here for more information

    For more information on session timeouts, see Changing the Session Timeout

  • Improved logging for script not found errors
    See here for more information

  • Fixed issue with Sidebar not loading properly due to a broken/missing content type
    See here for more information

  • Fixed issue with log console errors
    See here for more information

  • Added support for viewing and editing Sass files
    See here for more information

  • Improved Dashboard performance
    See here for more information

  • Fixed typo in Dashboard publishing message
    See here for more information

  • Fixed issue with Component and Shared Content node selectors
    See here for more information

  • Fixed issue with decryption of data containing new lines
    See here for more information

  • Fixed issue with assigning users to groups
    See here for more information

  • Fixed issue with selecting items via search in item selector
    See here for more information

  • Improved Group/User forms
    See here for more information

  • Fixed issue with groups when using LDAP authentication

  • Fixed issue while performing cache warming

  • Upgraded the following dependencies:

    • Spring to version 5.3.23

    • Spring Boot to version 2.7.6

    • Spring Security to version 5.7.5

    • Tomcat to version 9.0.71

    • GraphQL to version 20.0

    • Groovy to version 3.0.14

    • Jackson (and related) to version 2.14.2

    • JGit to version 6.4.0.202211300538-r

    • Apache CXF to version 3.4.10

    • Google protobuf to version 3.19.6

    • The embedded MariaDB library to version 2.6.0

    • Apache Commons Text to version 1.10.0

    • Various Studio UI libraries

  • Added support for editing text files|br| See here for more information

  • Fixed issue with Video Transcode form control
    See here for more information

  • Fixed issue with the disabled bit not updating properly when content changes through git
    See here for more information

  • Fixed issue with XB targets not honoring multiple “Components” data sources
    See here for more information

  • Fixed issue with Javascript SDK’s ContentInstance interface not exposing the orderDefault_f field used by pages
    See here for more information

  • Fixed issue with extracted internal-name field on save when embedded content data source is used
    See here for more information

  • Fixed issue when pasting from a Word document with a link in the RTE
    See here for more information

  • Fixed issue with form not saving when form contains a repeat group that contains a checkbox field with a default value set to false
    See here for more information

  • Fixed issue with LDAP authentication while creating group

  • Fixed issue with Publish All failing when blob is missing
    See here for more information

Lots of other small enhancements and bug fixes :)

For a full list of tickets, please visit: GitHub 4.0.3 Milestone

For information on upgrading 3.1.x sites, see here

Important

Please see Breaking changes for breaking changes and other things to consider before upgrading

Please see Breaking changes for breaking changes and other things to consider before upgrading

For instructions on how to update your CrafterCMS install to 4.0.0 (applies to 4.0.2), please see Upgrading CrafterCMS

When using private key SSH authentication in the init-site.sh script, the private key path must be set explicitly.
Please see Setup Project for a Delivery Environment for more information on using the -k option of init-site.sh to set the private key path

For Linux installs, the Studio upgrade requires the library libaio which is not installed by default in some Linux distributions. Please see the section on Linux Prerequisites in Linux Prerequisite for instructions on how to install the library libaio




CrafterCMS 4.0.2

Released October 25, 2022

This release includes fixes for issues with the release version 4.0.1

New Features

  • New publishing on demand option to Publish everything
    See here for more information

    For more information on the new publishing on demand option, see Publish all changes on the repo

  • Items in an item selector now displays the item’s path in the form control
    See here for more information

Updates

  • Upgraded the following dependencies:

    • Apache Commons Configuration to version 2.8.0

    • Hazelcast to version 5.1.3

    • Snakeyaml to version 1.33

    • Mockito to version 4.8.0

    • Jackson (and related) to version 2.13.4

    • GraphQL to version 17.4

  • Added cache control support to proxy configuration
    See here for more information

  • Fixed issue with page URL validation check
    See here for more information

  • Fixed issue with parentPath macro in embedded components
    See here for more information

  • Fixed issue with Studio search filters
    See here for more information

  • Fixed issue with publishing hard and soft dependencies
    See here for more information

  • Added an indicator while duplicating content is in progress
    See here for more information

  • Fixed issue with STUDIO_TOKEN_VALID_ISSUERS env variable
    See here for more information

  • Updated documentation for Engine’s preview mode
    See here for more information

  • Fixed issue when duplicating pages with images
    See here for more information

  • Added icon at the top right section of image preview dialog for switching background modes
    See here for more information

  • Fixed issue with group checkboxes control
    See here for more information

  • Fixed issue with deployment events watcher
    See here for more information

  • Updated Policy Engine configuration
    The Policy Engine configuration by default now replaces parenthesis with dashes. See here for more information

    For more information on project policy configuration, see here

  • Fixed issue with DB connection resets
    See here for more information

  • Renamed Drop Targets data source to Components and Project Component data source to Simple Taxonomy

  • Enhanced Crafter Studio clustering

  • Fixed issue with branding image files in upgrade scripts

Lots of other small enhancements and bug fixes :)

For a full list of tickets, please visit: GitHub 4.0.2 Milestone

For information on upgrading 3.1.x sites, see here

Important

Please see Breaking changes for breaking changes and other things to consider before upgrading

For instructions on how to update your CrafterCMS install to 4.0.0 (applies to 4.0.2), please see Upgrading CrafterCMS

When using private key SSH authentication in the init-site.sh script, the private key path must be set explicitly.
Please see Setup Project for a Delivery Environment for more information on using the -k option of init-site.sh to set the private key path

For Linux installs, the Studio upgrade requires the library libaio which is not installed by default in some Linux distributions. Please see the section on Linux Prerequisites in Linux Prerequisite for instructions on how to install the library libaio




CrafterCMS 4.0.1

Released July 27, 2022

This release includes fixes for issues with the release version 4.0.0

New Features

  • New publisher review workflow option
    See here for more information

    For more information on the new publisher review workflow option, see Requiring Peer Review for Publishing

  • Configurable site cookie domain as base or sub
    See here for more information

    For more information on setting the crafterSite cookie at the base domain instead of a subdomain see: crafterSite Cookie Domain

Updates

  • Added documentation on how to upgrade from ICE to XB
    For more information on how to move from the 3.x ICE system to the 4.x Experience Builder (XB) system, see Upgrading In Context Editing

  • Upgraded the following dependencies:

    • Spring to version 5.3.22

    • Spring Boot to version 2.7.1

    • Spring Security to version 5.7.2

    • Jackson (and related) to version 2.13.3

    • Tomcat to version 9.0.64

    • JGit to version 6.2.0.202206071550-r

  • Improved asset panel to show full path on hover or as part of card
    See here for more information

  • Fix cache clearing issue with the deployment events watcher
    See here for more information

  • Fixed issue with files containing parenthesis in its name
    See here for more information

  • Fixed issue when opening the Pages sidebar cabinet in the sidebar
    See here for more information

  • Fixed issue with XB component default value properties
    See here for more information

  • Fixed issue when inserting a component via XB drag-drop with & in the default value of a field
    See here for more information

  • Improved debug logging for token validation
    See here for more information

  • Improved message for unsupported browsers
    See here for more information

  • Fixed issue when dragging and dropping a component with an ampersand
    See here for more information

  • Improved filtering by keyword using the get_content_by_path API
    See here for more information

  • Added support for cookie domain in refresh token
    See here for more information

  • Fixed issue reading environment specific configuration
    See here for more information

  • Email notification enhancements
    See here for more information

  • Fixed issue with deployment pipeline when create index fails
    See here for more information

  • Fixed issue with renaming the URL of a page to an existing folder
    See here for more information

  • Fixed issue with numeric input fields when using Firefox
    See here for more information

  • Added support for specifying a root prefix for the AWS profile
    See here for more information

  • Fixed issue displaying total amount of videos in Video Center blueprint
    See here for more information

  • Fix publishing issue when publishing by commit ID for a merge commit
    See here for more information

Lots of other small enhancements and bug fixes :)

For a full list of tickets, please visit: GitHub 4.0.1 Milestone

For information on upgrading 3.1.x sites, see here

Important

Please see Breaking changes for breaking changes and other things to consider before upgrading

For instructions on how to update your CrafterCMS install to 4.0.0 (applies to 4.0.1), please see Upgrading CrafterCMS

For Linux installs, the Studio upgrade requires the library libaio which is not installed by default in some Linux distributions. Please see the section on Linux Prerequisites in Linux Prerequisite for instructions on how to install the library libaio




CrafterCMS 4.0.0

Released May 12, 2022

New Features

  • New Studio UI for Content Authors

    • New Pluggable React-based UI

      • Improved Sidebar

      • Improved authoring search experience

      • Improved user management experience

      • Improved code editing

      • Improved configuration management

      • Improved My Projects experience

      • And more…

    • Experience Builder (XB) - a new In-Context Editing system:

      • Edit content in-place

      • Drag and drop components and assets to build and rearrange pages

        • Supports projects built with FreeMarker, React, and can easily be extended to support Vue, Angular and other UI frameworks

      • New Experience Builder package in the SDK here

      • See Experience Builder for more information

    • New configuration mechanics of the UI that allow plugins to wire to almost every aspect of the experience. This opens the door for having different authoring experiences per project.

  • Plugins!

    • New plugin system allowing developers to build plugins for a project (headless or templated) that provide:

      • Authoring side extensions allowing content authors new tools to build the desired experience. This includes extending Crafter Studio’s functionality with server-side code, UI widgets, third-party integration, pre-baked content model items and more. Learn all about it here

      • Delivery-side extensions that provide end-user widgets, server-side code, integration with third-party providers and more. Learn about it here

      • Host plugins are still supported, see here

      • Plugins are starting to appear on the marketplace here

      • Read the guide to building your own plugins here

    • Added support for a plugin to add servlet filters
      See here for more information

      For more information on how to wire your plugin, see the section on a sample for a servlet filter here

  • Switched Crafter Studio’s authentication system to JWT

    • It’s now much easier to automate work with Crafter Studio APIs by issuing secure tokens for your automation jobs, see Working with Crafter Studio’s APIs

    • Remember to replace default values for all the variables used to control the access tokens (JWT) used for Studio’s API. See here for more information on default values used for JWT

  • Project Content Rules and Policy

    Added a project-wide policy configuration that lets site administrators control:

    • File name patterns (permissioning and automatic renaming of files)

    • File mime-type

    • File size

    See here for more information on the Project Policy configuration

  • New Crafter CLI

    The CrafterCMS Command Line Interface (CLI) for DevContentOps, allows you to authenticate with CrafterCMS and exercise its APIs from a terminal or automation tools.
    See here for more information on the Crafter CLI

  • Better locale support

    CrafterCMS allows configuring a locale to be used for displaying dates and times in the Studio UI or, it can also be configured to respect the user’s locale settings

    See Project Time Zone for more information on how to customize your project’s dates and times display

Updates

  • Upgraded Java to version 11

  • Upgraded Elasticsearch to version 7

  • Upgraded Tomcat to version 9

  • Unlock permission added and can be assigned to a role
    See here for more information

  • Added support for deployment mode for deployer processors
    Supported modes currently are PUBLISH and SEARCH_INDEX. See here and here for more information

  • Added support for deleting content types
    See here for more information

  • Updated the JavaScript SDK for in-context editing (ICE)
    See https://npm.io/package/@craftercms/ice for more information

  • RTE improvements Added support for pasting from MS Word to RTE

  • Added friendly labels for content types and mime types on the search filter
    See here for more information

  • Fixed data source plugin failure when loading in content form
    See here for more information

  • Improved visuals when search is running
    See here for more information

  • The entire project is now published (bulk publish) when an item is published for the very first time
    See here for more information

  • Fixed format for dates when copying
    See here for more information

  • Added support for regex patterns in CORS origins for Studio, Engine, Profile and Social|br|

    Values in the CORS origins are split using ,. Remember that commas inside patterns need to be escaped with a \ like: studio.cors.origins: 'http://localhost:[8000\,3000],http://*.domain1.com'

    See here for more information

Lots of other small enhancements and bug fixes :)

For a full list of tickets, please visit: GitHub 4.0.0 Milestone

For information on upgrading 3.1.x sites, see here

Important

Please see Breaking changes for breaking changes and other things to consider before upgrading

For instructions on how to update your CrafterCMS install to 4.0.0, please see Upgrading CrafterCMS

For Linux installs, the Studio upgrade requires the library libaio which is not installed by default in some Linux distributions. Please see the section on Linux Prerequisites in Linux Prerequisite for instructions on how to install the library libaio