User Guide Cancel

What's new in ColdFusion (2025 release)

New features & enhancements in Adobe ColdFusion

What's new and changed in ColdFusion (2025 release)

The 2025 release of Adobe ColdFusion redefines modern web application development with a secure, high-performance platform designed for the future. Accelerate development with enhanced containerization and DevOps capabilities, optimize scalability with next-level performance tuning, and ensure enterprise-grade security with cutting-edge security enhancements.

Effortlessly integrate with cloud services, databases, and APIs while leveraging powerful spreadsheet, charting, and HTML-to-PDF improvements. Build and deploy robust, dynamic applications faster than ever—no matter the complexity.


New licensing and activation changes

With the release of ColdFusion (2025 release), Adobe has transitioned from a traditional serial key-based licensing model to a subscription-based licensing mode. This change will provide better control and security in various deployments, whether online, offline, or isolated. The new licensing system introduces the following:


New spreadsheet and CSV functions

Support for streaming spreadsheets, 30+ new methods for cell and sheet properties, and methods to read or write CSV files.

CSV functions


Language enhancements

New functions and tags

Other language enhancements

View Other language changes for more information.


Charting enhancements

ColdFusion (2025 release) has expanded its charting capabilities to include SVG support for server-side charting, support for new chart types such as boxplot, area, donut, etc, a new cfcharset tag, 16 new themes, number formatting support, markers, rules, and animation. Using ColdFusion, developers now have more flexibility to create better data stories in their applications and projects.

The following are introduced in this release:


Deprecations and removals

In the ColdFusion 2025 release, Adobe has deprecated and removed certain features to enhance security, align with technological advancements, and eliminate obsolete libraries. This initiative involves phasing out features with no active development, such as MS Access, ODBC, and DB2 support, event gateway features like SMS and SAMETIME, and more.

View Deprecated and removed features in ColdFusion for more information.

Other additions and changes

Language changes

  • Destructuring changes: ColdFusion has added support for the following:
  • Support for final static methods: In existing versions ColdFusion supports methods using static and final keywords. In this release, ColdFusion extends this to supporting methods using both the static and final keywords. View the doc for more information.
  • Bitwise Operator Support in Query of Queries: A bitwise operator is a type of operator in programming that performs operations on individual bits of integer values. In this release, ColdFusion introduces support for bitwise operators in query of queries. View Using Birwise operators in Query of Queries for more information.
  • Modulus operator in Query of Queries: The modulus operator, often represented by the symbol %, is used to find the remainder of a division operation between two numbers1. It returns the remainder of dividing the first operand by the second operand. View Modulus operator support in Query of Queries for more information.
  • Case-sensitive deserialization: Adobe ColdFusion (2021 release) introduced ordered, case-sensitive structs. In this release, we’ve added support for deserializing a case-sensitive struct using the deSerializeJSON function. The function now accepts a fourth parameter,  preserveCaseForStructKey, which preserves case-sensitive structs during deserialization.
  • Changes in Hash function: The hash function has a new parameter, outputEncoding.
  • Support for compound assignment operators in expressions: The operators (+=, -=, *=, /=, and %=) allow you to perform an operation on a variable and then assign the result back to that variable in a single step. View Compound assignment operators in expressions for more information.
  • Support for multi-dimensional arrays in JavaCast function: Explicitly cast a value to a specific Java type. You can use this function with Java objects or calling Java methods from ColdFusion code and need to ensure that the values you pass are of the correct Java type. View Create multi-dimensional arrays using JavaCast for more information.
  • ArrayInsertAt enhancements: This release of ColdFusion makes it possible to insert a value into an empty array. View ArrayInsertAt for more information.
  • Password protection in cfspreadsheet: In this release of ColdFusion, you can no longer read password-protected Excel files without specifying the password. Read more about the changes to the cfspreadsheet tag.
  • Changes to scriptProtect property: The scriptProtect property defined in Application.cfc allows you protect one or more variable scopes from cross site scripting (XSS) attacks. In this release, ColdFusion allows you to block certain tags, mentioned in the document linked.
  • Changes to JEE configuration deployment: In stand-alone installations, ColdFusion still uses LegacyCookieProcessor for now, but will deprecate this in ColdFusion (2025 release). See the section Deprecated features in ColdFusion for more information.
  • Thread management enhancements: In JDK 21, key changes are coming to thread management, especially affecting ColdFusion. The deprecated thread.stop method will be removed due to safety concerns. ColdFusion will replace it with a new ThreadInterrupt method, providing a safer way to terminate threads. Additionally, JDK 21 introduces virtual threads, which are lightweight and managed by the JVM, improving concurrency without relying on OS threads. These updates aim to enhance performance and maintain thread safety. Users will need to adapt their code to accommodate these changes. For more details, visit the Adobe ColdFusion blog, interruptThread, and isThreadInterrupted for more information.
  • cfthread tag changes: In this release, there is a new action, interrupt, in cfthread.
  • New attribute cacheMaxIdleTime in cfquery: CFQuery now includes a new attribute cacheMaxIdleTime that helps expire a cached query that is idle beyond a specified time span.
  • FileUpload changes: There is a new parameter continueOnError for FileUpload.
  • Spreadsheet visibility: The spreadsheetInfo function now returns the visibility attributes of a sheet. The visibility information is represented as struct.
  • Support for Content-Security-Policy (CSP) in ColdFusion tags: Content-Security-Policy (CSP) is a browser security mechanism that allows you to restrict how resources are loaded. In browsers that support it, CSP offers protection from XSS. When Content-Security-Policy is enabled, it disables all inline JavaScript and Style. ColdFusion tags, such as cfform, cfwebsocket, and all the ColdFusion UI tags, generate inline JavaScript, and therefore, are not compatible with CSP by default. To allow inline script styles with CSP, ColdFusion uses nonce (number used once), which is a random value that is used to allow specific inline scripts or styles to be executed on a web page. In this release, ColdFusion introduces the following:
    • Server setting in Administrator > Server settings > Content Security Policy Nonce.
    • Application variable enableCspNonceForScript=True/False in Application.cfc.
    • The function getCSPNonce.
  • DirectoryList function enhancements: The directoryList function now contains the filter callback for the directoryList function returns the data for the row it is filtering.
  • getTimeZoneInfo enhancements: The getTimeZoneInfo function now accepts the optional parameters- timezone and locale.
  • Null coalescing operator: The NULL coalescing (??) operator is a logical operator that returns its right-hand side operand when its left-hand side operand is null or undefined. Otherwise, it returns its left-hand side operand. View Using null coalescing operators in ColdFusion for more details.
  • Multiple exception handling in catch statements: ColdFusion now supports multiple exception handling. You can handle multiple exceptions using a single catch statement within a try/catch block, separated by pipes. View Handling exceptions in ColdFusion for more details.
  • Trailing comma on last element in arrays: In previous versions, ColdFusion threw an error 500 when it encounters a trailing comma in certain code blocks. In the 2025 release of ColdFusion, you can add a trailing comma when creating arrays, structs, functions, parameters, and array/struct destructuring. View Arrays in ColdFusion for more details.
  • Deepcopy parameter in the duplicate function: The duplicate function has an additional, optional parameter, deepCopy, of type Boolean. If deepCopy is TRUE, the child elements are cloned. If deepCopy is FALSE, child elements remain linked to their respective elements in the original object.
  • ListSort function changes: This release allows the includeEmptyFields parameter when using a callback. View listSort function doc for more information.
  • Additional information on cfdump output of a Java class: The cfdump tag now shows additional details in the output, such as, methods in a Java class, constructors, which lists all the constructors for the class showing the method and the declared exceptions that can be thrown, Methods inherited from <parent object>, and the list of methods includes the exceptions that can be thrown.
  • Deserialize JSON to query: ColdFusion allows deserializing a JSON object to a query. The deserializeJSON function now includes “query” as value to return the JSON object as query. The change is to support .toJSON()’s serializeQueryByColumns="struct" parameter.
  • Changes to createObject function and cfobject tag: The createObject function and the cfobject tag include a new parameter, loadPaths, which allows ColdFusion to load external Java libraries (JAR files) or class files. This allows you to integrate external libraries, load specific versions per application, or load only specific libraries.
  • Default value of cfproperty can be valid CFML expressions: View cfproperty tag doc for more information.
  • cfoauth changes: The cfoauth tag has been updated to updated to support enhanced workflows and configurations. This release also introduces Microsoft as a new auth type along with Google and Facebook. View the cfoauth tag doc for more information.
  • cfexchangeconnection changes: As Microsoft plans to discontinue EWS support for Exchange Online in October 2026, Adobe recommends transitioning to Microsoft Graph API using ColdFusion services. ColdFusion's exchange tags also accommodated the changes. View cfcexchangeconnection for more information. To see the changes to other cfexchange* tags, refer to the respective documentation.

NON-language enhancements

CFSetup:

  • SSL: Add any AJP, HTTP, or HTTPS setting to the category server using CFSetup.
  • Client variable: Display and set client variables using CFSetup.
  • diskCacheLocation: Display and retrieve the diskCacheLocation, if set already. cfsetup:myalias>get chart diskCacheLocation will display the location for charting.

Docker changes:

Added support for Docker secrets and Docker config, startup time improvements, new image for CCS container, support for the new licensing and activation workflows, and several important bug fixes.

  • Whitespace management on all deployments: In this release, ColdFusion allows whitespace management on all deployments. For example, you can allow whitespaces on JEE deployments using the Administrator or the Admin APIs.
  • New JVM arguments: This release has added new JVM arguments. View this doc to learn more.

 

ColdFusion Administrator changes

  • On Licensing and Activation > Activation >  Activate License section, the following are introduced:
    • Select Named User License (NUL), Feature Restricted Licensing (Online/Offline), or Feature Restricted Licensing (Isolated) from the License Mode dropdown.
    • If you select:
      • Feature Restricted Licensing (Online/Offline): Select the deployment type and enter the path to the json file that contains the license details. Select Activate.
      • Feature Restricted Licensing (Isolated): Select the deployment type, copy the activation code, and enter the path to the json file that contains the license details. Select Activate.
      • Named User License (NUL): Select the deployment type. Select Activate.
  • SSL Certificate page define your existing SSL certificate to enable HTTPS or generate a self-signed certificate directly from the Administrator.
  • Select HTTP/HTTPS on the Central Config Server (CCS) page.
  • The checkbox Content Security Policy Nonce, which if enabled,  the Content-Security-Policy header will be sent along with a random generated nonce.
  • Removals:
    • A few settings related to ColdFusion mobile features are removed.
    • The Applet tab has been removed.
    • The License Scanner page has been removed.

Admin API

The following Admin APIs are introduced for Feature Restricted Licensing activation and deactivation:


Microsoft Graph: User Store in ColdFusion

Microsoft Graph API enables developers to integrate and automate tasks across Microsoft services like Microsoft Entra, Exchange Online, SharePoint, and Teams. The API provides access to a wide range of resources, such as users, groups, files, and messages, using RESTful web services.

The Microsoft Graph API in ColdFusion allows integration for creating and managing a user store on Microsoft Entra ID. A user store acts as a repository for profile data such as names, profile pictures, and other user details. It supports CRUD (Create, Read, Update, Delete) operations to handle user sign-ups, profile updates, and user data maintenance.

View Microsoft Graph- User store in ColdFusion for more information.

Frequently Asked Questions

Bugs fixed in ColdFusion (2025 release)

Known issues in ColdFusion (2025 release)

System Requirements

Support Matrix

Previous releases of ColdFusion

Release notes

Have a question or an idea?

Ask the community

If you have a question to ask or an idea to share, come and participate in the Adobe ColdFusion Community. We would love to hear from you and address your queries.

Get help faster and easier

New user?