Release Notes

This section contains release notes for Crafter CMS 3.1.x. For other release notes, please visit your release’s release notes page here: http://docs.craftercms.org

Crafter CMS 3.1.11

Updates

  • Added a new property for enabling/disabling support for script tags in Input and Text Area controls
    To enable/disable support for escaping script tags, just put a check or uncheck the property Escape Content in the control’s properties section.

  • Bug fixes and performance improvements in auto-clustering Enterprise only feature

Lot’s of other small enhancements and bug fixes :)

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

Important

Please see Upgrading Crafter CMS for instructions on how to update your Crafter CMS install to 3.1.1 (applies to 3.1.11)

For Docker/Kuber deployments, see Docker/Kuber Instructions for Upgrading Crafter CMS

For Linux installs, the embedded MariaDB 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

Please see Upgrade Notes for Fixing Backup Error for some important notes when restoring backups created prior to Crafter CMS 3.1.10 and Upgrade Notes for Re-encrypting Values for some important notes on the re-encryption process performed by the upgrade manager on installations upgraded to Crafter CMS 3.1.9 and later 3.1.x versions.

Crafter CMS 3.1.10

Updates

  • Added a new environment variable for the backup folder location
    See Backup and Recovery for more information

  • Elasticsearch improvements

    The ES index settings will be automatically updated when upgrading to Crafter CMS 3.1.10. The automatic update is triggered when upgrading to 3.1.10 because of an update to support custom index settings and update to disable date detection as listed above.

  • Added content-length header for all responses
    The content-length header is sent for all responses by default. If you need to disable sending the content-length header for all responses, just set crafter.engine.header.etag.enable to false

    TOMCAT/shared/classes/crafter/engine/extension/server-config.properties
    # Indicates if the 'etag' header should be added
    crafter.engine.header.etag.enable=true
    
  • Updated dependencies for the following:

    • Upgraded Jackson Databind library to 2.10.5 for various Crafter modules

    • Upgraded ehcache library to 2.10.6 for various Crafter modules

    • Upgraded Apache cxf library to 3.3.5 for Crafter Studio

    • Upgraded xstream library to 1.4.12 for various Crafter modules

    • Upgraded tika library to 1.24 for various Crafter modules

    • Upgraded unit library to 2.0 for various Crafter modules

    • Upgraded commons configuration library to 2.7 for various Crafter modules

    • Upgraded commons text library to 1.8 for various Crafter modules

    • Upgraded groovy library to 3.0.4 for various Crafter modules

    • Upgraded the embedded mariadb4j library to 2.4.8 for various Crafter modules

    • Upgraded node-sass library to 4.13.1

  • RTE improvements
    Browser spell checking is now enabled in TinyMCE 2 and TinyMCE 5

  • Publishing enhancement
    See here for more information

Lot’s of other small enhancements and bug fixes :)

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

Important

Please see Upgrading Crafter CMS for instructions on how to update your Crafter CMS install to 3.1.1 (applies to 3.1.10)

For Docker/Kuber deployments, see Docker/Kuber Instructions for Upgrading Crafter CMS

For Linux installs, the embedded MariaDB 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

Please see Upgrade Notes for Fixing Backup Error for some important notes when restoring backups created prior to Crafter CMS 3.1.10 and Upgrade Notes for Re-encrypting Values for some important notes on the re-encryption process performed by the upgrade manager on installations upgraded to Crafter CMS 3.1.9 and later 3.1.x versions.

Crafter CMS 3.1.9

New Features

  • Added Git Shell in the Git SSH server image in the Crafter CMS Docker images. This allows an extra level of security since only Git related commands can be used when connecting to the server

Updates

  • Upgraded JGit version to 5.8

  • Published repository improvements
    When creating a site, the published repository is not created until a publish request has been sent. The published repository is initialized when the very first publish request is received.

  • Added support for using the numpad (numeric keypad/ten key/number pad) on a keyboard in number form control

  • Added support for the search API to accept path filters with regex values
    The search parameter (SearchParams) path is now added in the search API for filtering paths using a regular expression. See https://app.swaggerhub.com/apis/craftercms/studio/3.1.9.1#/search/search for more information.

  • Added a new lifecycle hook for remote targets
    All targets that use the gitPullProcessor need to include a new lifecycle hook, deleteLocalRepoFolderLifecycleHook. This new lifecycle hook will be automatically added to existing targets when upgrading to Crafter CMS 3.1.9 by the upgrade manager.

  • Added support for clearing the site cache for static-assets
    The deployer now includes templates under the static-assets folder in the clear cache post processor. This change will be automatically performed by the upgrade manager for existing targets when upgrading to Crafter CMS 3.1.9.

  • Added new environment variables for encrypting and decrypting values in the database
    See Securing Your Crafter CMS Install for more information on the database values encryption key and salt.

  • Re-encryption of configuration files and remote repository credentials
    This is automatically done by the upgrade manager when upgrading to Crafter CMS 3.1.9. For more information on the re-encryption performed by the upgrade manager, see Upgrade Notes for Re-encrypting Values.

  • Added Studio and Engine support for forwarded headers, to resolve the actual hostname and protocol when it is behind a load balancer, reverse proxy or CloudFront via new properties

    To enable forwarded headers in Engine, open the server-config.properties and set the crafter.engine.forwarded.headers.enabled property to true

    CRAFTER_HOME/bin/apache-tomcat/shared/classes/crafter/engine/extension/server-config.properties
    # Indicates if Forwarded or X-Forwarded headers should be used when resolving the client-originated protocol and
    # address. Enable when Engine is behind a reverse proxy or load balancer that sends these
    crafter.engine.forwarded.headers.enabled=false
    

    To enable forwarded headers in Studio, open the studio-config-override.yaml and set the studio.forwarded.headers.enabled property to true

    CRAFTER_HOME/bin/apache-tomcat/shared/classes/crafter/studio/extension/studio-config-override.yaml
    ##################################################
    ##             Forwarded Headers                ##
    ##################################################
    # Indicates if Forwarded or X-Forwarded headers should be used when resolving the client-originated protocol and
    # address. Enable when Studio is behind a reverse proxy or load balancer that sends these
    studio.forwarded.headers.enabled: false
    

Lot’s of other small enhancements and bug fixes :)

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

Important

Please see Upgrading Crafter CMS for instructions on how to update your Crafter CMS install to 3.1.1 (applies to 3.1.9)

For Docker/Kuber deployments, see Docker/Kuber Instructions for Upgrading Crafter CMS

For Linux installs, the embedded MariaDB 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

Please see Upgrade Notes for Fixing Backup Error for some important notes when updating to Crafter CMS 3.1.9

Crafter CMS 3.1.8

New Features

  • Added a new processor s3DeploymentEventsProcessor that uploads the deployment-events.properties of a site for S3 serverless deployer
    See S3 Deployment Events Processor for more information.

  • Added a new processor, gitUpdateCommitIdProcessor, that only updates the latest commit id
    See Git Update Commit Id Processor for more information.

  • Added a new property updateCommitStore for the gitDiffProcessor that indicates whether or not to update the processed commit
    See Git Diff Processor for more information.

  • Added a new property failDeploymentOnFailure for all processors that enables failing the deployment when there’s a processor failure See Deployer Processors Guide for more information.

  • Added support for automatically updating ES index settings
    Whenever the Elasticsearch index settings are updated, for example, a new field has been added for a release, the ES index settings will be automatically updated by the Crafter CMS upgrade manager. The updated index containing the new settings will be named the current index version name incremented by 1, e.g. let’s say the current index is mysite-authoring_v1, after the upgrade, the new index will now be mysite-authoring_v2

    The ES index settings will be automatically updated when upgrading to Crafter CMS 3.1.8 for users upgrading from Crafter CMS 3.1.6 and earlier, and also for users upgrading from Crafter CMS 3.1.7 where a manual update of the ES index settings has not been performed. The automatic update is triggered when upgrading to 3.1.8 as mentioned above because of an update in the ES index settings (input fields tokenize in repeating groups) in Crafter CMS 3.1.7.

Updates

  • Elasticsearch improvements
    The Elasticsearch client connection timeout, socket timeout and number of threads to use are now configurable for Studio, Engine and Deployer

    • In Studio, go to CRAFTER_HOME/bin/apache-tomcat/shared/classes/crafter/studio/extension/, then edit the studio-config-override.yaml file and update the following properties to the desired values

      CRAFTER_HOME/bin/apache-tomcat/shared/classes/crafter/studio/extension/studio-config-override.yaml
      # The connection timeout in milliseconds, if set to -1 the default will be used
      studio.search.timeout.connect: -1
      # The socket timeout in milliseconds, if set to -1 the default will be used
      studio.search.timeout.socket: -1
      # The number of threads to use, if set to -1 the default will be used
      studio.search.threads: -1
      

    • In Engine, go to CRAFTER_HOME/bin/apache-tomcat/shared/classes/crafter/engine/extension, then edit the server-config.properties and update the following properties to the desired values:

      CRAFTER_HOME/bin/apache-tomcat/shared/classes/crafter/engine/extension/server-config.properties
          # The connection timeout in milliseconds, if set to -1 the default will be used
      crafter.engine.elasticsearch.timeout.connect=-1
      # The socket timeout in milliseconds, if set to -1 the default will be used
      crafter.engine.elasticsearch.timeout.socket=-1
      # The number of threads to use, if set to -1 the default will be used
      crafter.engine.elasticsearch.threads=-1
      

    • In Deployer, edit CRAFTER_HOME/bin/crafter-deployer/config/base-target.yaml and update the following to the desired values:

      CRAFTER_HOME/bin/crafter-deployer/config/base-target.yaml
      timeout:
        # The connection timeout in milliseconds, if set to -1 the default will be used
        connect: -1
        # The socket timeout in milliseconds, if set to -1 the default will be used
        socket: -1
      # The number of threads to use, if set to -1 the default will be used
      threads: -1
      

Lot’s of other small enhancements and bug fixes :)

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

Important

Please see Upgrading Crafter CMS for instructions on how to update your Crafter CMS install to 3.1.1 (applies to 3.1.8)

For Docker/Kuber deployments, see Docker/Kuber Instructions for Upgrading Crafter CMS

For Linux installs, the embedded MariaDB 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

Please see Upgrade Notes for Fixing Backup Error for some important notes when updating to Crafter CMS 3.1.8

Crafter CMS 3.1.7

New Features

  • Added multi-target configuration support for Engine configuration files
    See Engine Multi-Target Configuration for more information.

  • Built-in database security enhancements
    At startup, when Crafter Studio detects an unsecured database, a secure installation script will be run against the database to secure it.

  • Enhanced scripts and templates security
    This addresses the following security advisories: CV-2020080101 and CV-2020080102

    • FreeMarker engine security enhancements with service access limits

    • Groovy engine security enhancements * Groovy engine service access limits * Groovy engine sandboxing

    See Script Sandbox Configuration for more information on Groovy Engine sandboxing and Access to Services for more information on Groovy and Freemarker Engine service access limits.

  • Added support for proxy system to proxy GraphQL, Engine, NodeJS or other application delivery system
    See Proxy Configuration for more information.

  • Added engine API for site status
    See Get Status for more information.

Updates

  • The environment-config.xml configuration has been removed
    The following tags from the environment-config.xml file has been removed and staging and live are now used as defaults for the repository branch name for publishing targets:

    The tags below from “environment-config.xml” no longer exist, “staging” and “live” are now used as default publishing targets
    <open-sidebar />
    <publishing-targets>
      <target>
        <repo-branch-name />
        <display-label />
      </target>
    </publishing-targets>
    

    The site URLs from the environment-config.xml file has been moved to Site Configuration
    See Site Configuration for more information.

  • Updated Engine multi-environment configuration
    See Engine Multi-Environment Configuration for more information.

  • Upgraded Deployer Spring Boot library to 2.2.6

Lot’s of other small enhancements and bug fixes :)

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

Important

Please see Upgrading Crafter CMS for instructions on how to update your Crafter CMS install to 3.1.1 (applies to 3.1.7)

For Docker/Kuber deployments, see Docker/Kuber Instructions for Upgrading Crafter CMS

For Linux installs, the embedded MariaDB 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

Please see Upgrade Notes for Fixing Backup Error for some important notes when updating to Crafter CMS 3.1.7

Crafter CMS 3.1.6

New Features

Updates

  • Upgraded Jackson library to 2.9.10 for various Crafter modules

  • Upgraded Crafter Studio, Engine, Profile and Social Tomcat version to 8.5.53

  • Upgraded Crafter Deployer Tomcat version to 9.0.33

Lot’s of other small enhancements and bug fixes :)

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

Important

Please see Upgrading Crafter CMS for instructions on how to update your Crafter CMS install to 3.1.1 (applies to 3.1.6)

For Docker/Kuber deployments, see Docker/Kuber Instructions for Upgrading Crafter CMS

For Linux installs, the embedded MariaDB 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

Crafter CMS 3.1.5

New Features

  • Added management tokens for Studio, Engine, Deployer, Search, Profile and Social modules

    Make sure to adjust your monitors to supply your configured token. See Management Tokens for more information.

  • Added API and UI support for encrypting sensitive text in configuration files (like access credentials)

    Make sure to change the default crypto configurations for your deployment

  • Added Deployer support for indexing to multiple ES on a single target

    You can now have multiple Elasticsearch clusters being seeded by a single Deployer target (these clusters can be geo-distributed)

Updates

  • Upgraded Elasticsearch version to 6.8.6

  • Upgraded the following Studio UI dependencies: @types/jest to 24.0.23, @types/node to 12.12.17, @types/react to 16.9.16, graphiql to 0.17.5, typescript tp 3.7.3 and babel-plugin-react-intl to 5.1.11

  • Upgraded Tomcat version to 8.5.51

  • Added support for path style access configuration to all S3 client creations

  • Improved Content type administration UI

Lot’s of other small enhancements and bug fixes :)

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

Important

Please see Upgrading Crafter CMS for instructions on how to update your Crafter CMS install to 3.1.1 (applies to 3.1.5)

For Docker/Kuber deployments, see Docker/Kuber Instructions for Upgrading Crafter CMS

For Linux installs, the embedded MariaDB 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

Crafter CMS 3.1.4

New Features

  • Added support for Crafter CMS plugins to be listed in Crafter Marketplace simply by tagging your project on GitHub. Follow the instructions here to create your own plugins and list it in the Crafter Marketplace

  • Added support for flattened content XML through a new data source Embedded Content to be used for creating inline components

  • Added a date-time picker inside the targeting dialog in the Website Editorial blueprint

  • Added Publishing Queue tab to Site ConfigPublishing

  • Added Code Editor Configuration for adding/editing snippets

  • Added a logrotate sidecar image for docker/kubernetes

Updates

  • Upgraded Jackson library to 2.9.10 for various Crafter modules

  • Upgraded Quartz library to 2.3.2 for various Crafter modules

  • Added support for passing parameters to blueprints during site creation

  • Added support for automatic Engine cache warming and double-buffering in Serverless mode

  • Added support for federated GraphQL and extensible schema definition and overrides

  • Added publishing queue management and improved publishing status reporting

  • Added an RTE plugin for inserting static asset links

  • Improved Create Site dialog

Lot’s of other small enhancements and bug fixes :)

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

Important

Please see Upgrading Crafter CMS for instructions on how to update your Crafter CMS install to 3.1.1 (applies to 3.1.4)

For Docker/Kuber deployments, see Docker/Kuber Instructions for Upgrading to Crafter CMS 3.1.3 from 3.1.0 version for instructions on how to upgrade from 3.1.0 to 3.1.3 (applies to 3.1.4)

Please see Upgrade Notes for Crafter CMS 3.1.4 for some important notes when updating to Crafter CMS 3.1.4

For Linux installs, the embedded MariaDB 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

Crafter CMS 3.1.3

Updates

  • Fixed bug where field name postfixes were enforced on Crafter CMS reserved fields for older upgraded sites

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

Important

Please see Upgrading Crafter CMS for instructions on how to update your Crafter CMS install to 3.1.1 (applies to 3.1.3)

For Docker/Kuber deployments, see Docker/Kuber Instructions for Upgrading to Crafter CMS 3.1.3 from 3.1.0 version for instructions on how to upgrade from 3.1.0 to 3.1.3

For Linux installs, the embedded MariaDB 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

Crafter CMS 3.1.2

Updates

  • Fixed bug where field name postfixes were enforced on Crafter CMS reserved fields

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

Important

Please see Upgrading Crafter CMS for instructions on how to update your Crafter CMS install to 3.1.1 (applies to 3.1.2)

For Linux installs, the embedded MariaDB 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

Crafter CMS 3.1.1

Updates

  • Upgraded Spring Boot to 2.1.6

  • Upgraded Spring Security to 4.2.13

  • Upgraded Jackson Databind library to 2.9.9.3 for various Crafter modules

  • Embedded MariaDB upgraded to version 10.4.6

  • Upgraded GraphiQL version

  • Upgraded JGit version to v5.4.0.201906121030-r

  • Upgraded jQuery version to 3.4.1

  • Several improvements for GraphQL schema generation, added support for fragments and complex filters in queries and added integration for url transformation service in queries in GraphQL

  • Added message in sites dashboard for users who are not members of any sites

  • Added support UI and API support in Crafter Studio for resolving conflicted repository states

  • Documentation updates

  • Other security related patches

New Features

  • Added plugin support for Form Engine Controls and Data Sources

  • Added deployer target lifecycle hook support

  • Added support UI and API support for Quick Create

  • Added data source for uploading then transcoding video using AWS MediaConvert

  • Added numbers only and time only controls

  • Added Engine API to check if preview is enabled

  • Added support for user controlled publishing of soft and hard dependencies

Lot’s of other small enhancements and bug fixes :)

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

Important

Please see Upgrading Crafter CMS for instructions on how to update your Crafter CMS install to 3.1.1

For Linux installs, the embedded MariaDB 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

Crafter CMS 3.1.0

New Features

  • Added Elasticsearch support

    • The default search engine for Crafter CMS is now Elasticsearch (we continue to support Solr)

    • Full support for AWS Elasticsearch as well as vanilla Elasticsearch

    • Improved Studio search with new search backend based on Elasticsearch

  • New Crafter Studio features

    • Added Crafter Studio multi-master clustering

    • Added Studio form engine TinyMCE 5 support

    • Added Studio upgrade engine that performs site and blueprint upgrades automatically moving forward

    • Added Video Center Blueprint, a live, live-to-VOD, and video serving site on Crafter CMS.

  • Serverless Delivery

    • Full support for Kubernetes clustering vanilla or AWS EKS

    • Crafter Engine backed by AWS S3 (or compatible services)

    • Added native Docker support. Crafter CMS provided Docker images now available

    • Search is provided by Elasticsearch and is scaled separately

  • Added GraphQL support (Studio and Engine)

  • Added indexing of assets on external storage such as Box, S3, WebDAV, and CMIS

Updates

  • Solr library upgraded to 7.x

  • Improved AWS Media Services integration for video processing (upload, transcode, stream ABR video)

  • Improved S3 datasource integration

  • Improved Crafter Studio user management

  • Improved Crafter Studio/Engine configuration management

    • Support added for a staging waypoint (an environment where you can stage your project before pushing it to production environments)

  • Improved Crafter Studio create site experience

  • Improved code editor for editing code, configuration and textual things (text blocks in forms) in Crafter Studio

  • Improved Crafter Studio external preview support

  • Improved Crafter Studio ICE support

  • Improved logging interface

  • Improved Crafter Studio LDAP/SSO (for new groups)

  • Improved Crafter Studio auditing interface

Lot’s of other small enhancements and bug fixes :)

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

Important

Please see Instructions for Upgrading to Crafter CMS 3.1.0 from a previous 3.0.x version for instructions on how to update your Crafter CMS install and for some important notes about the update.