ColdFusion 2025 released, Feb 25 2025: resources and my initial thoughts
First, for more on the many features and changes, I share many Adobe resources--about which I also offer some additional comment. I also discuss changes regarding OS and DB support as well as the fact that CF2025 now runs on Java 21-- and that the traditional server deployment of CF comes installed atop Tomcat 10.1. I then share still more info on other matters and resources related to the new version.
I then focus on the major change in licensing, for CF2025 and forward, to being subscription only--which I'll note has no effect on those currently running CF2023 or earlier. I share pricing info and also help in assessing differences in the EULA, and more.
Finally I discuss some migration considerations--including important REMOVAL of some older features from CF2025, as CF continues to be made more secure and modernized. I also identify tools and resources to help aid you in that migration, when you're ready to begin attempting it.
For all that and more, read on.
Introduction
This rather lengthy post is broken into the following categories (I only show the first two levels here):
- I. What's new or improved
- Key features outlined in What's New document
- Changes in systems supported (OS, web server, DB, etc.)
- CF2025 runs on (only) Java 21 by default
- CF2025 server deployments now run on Tomcat 10
- II. Finding still other info on the new release
- Other details offered in the What's New document
- Where else is CF2025 release discussed, or news of it announced?
- Some pre-release videos about CF2025
- The several ways to obtain CF2025
- III. Changes regarding licensing, pricing, etc
- Major change: CF2025 licensed only on subscription basis (still free for Development)
- How much will a subscription cost?
- Where can you find the pricing details for yourself?
- Where can you learn (a lot) more about the subscription licensing change?
- Changes in the CF EULA/licensing agreement
- IV. Migration concerns
As you can see, my focus is on matters well beyond just "cfml language changes". Those are well-covered in the Adobe resources I point to. I lean a bit more on broader matters "about" CF, which might interest not just developers but administrators, managers, and pundits (those not using CF but "keeping an eye on it").
Also, before I proceed, let me offer apologies to any who may have thought I might get this news out earlier today. :-) As you'll see, there's been a lot for me to digest, and even though I had pre-release access (and had a lot of this post done in advance, waiting for the day it would be released) I then had to double-check everything (in case of any changes). And then there were new aspects (especially about the various resources Adobe created and in particular about the change in the licensing model), things that I did not have access to until today.
(Oh and hey, note today's date for the release, which makes it "cf2025 released on 2/25/25". I doubt that was planned--though maybe. But at least it will make it easy for to remember the date!)
I. What's new or improved
As with each new CF release, there is so much more to the new release than any simple bullet point list of "new features" will cover. And of course beyond "what's new" there is also "what's improved".
Key features outlined in What's New document
Thankfully in this release (as in CF2023 and CF2021), the Adobe folks have created a single what's new doc page that serves to highlight briefly those major new features: What's new and changed in ColdFusion (2025 release)
As you'll find there (in more detail), among the key things highlighted are (in their order presented there):
- New licensing and activation changes (I have more on this important change below)
- New spreadsheet and CSV functions
- Language enhancements (including the new functions listGetDuplicates, structValueArray, getCSPNonce, interruptThread, isThreadInterrupted, getPropertyString, getPropertyFile, and setPropertyString; and the tag
and its script equivalent, cfchartset(), and many more changed tags/functions - Charting enhancements
- Deprecations and removals (I have more on this important change below)
- Other additions and changes (which addresses not only changes to language features but also non-language features)
- Docker changes
- ColdFusion Administrator changes
- Microsoft Graph: User Store in ColdFusion
Most of the features discussed there points to yet another doc page with more on that thing (sometimes a lot) as well as code examples. And many of those offer a link to run that code in Adobe's long-existing code-run site, cffiddle.org, which has now been updated to support CF2025 as well, so that you can test any code you like.
Let's move on to still other aspects of changes in this release.
Changes in systems supported (OS, web server, DB, etc.)
As with each release, Adobe added support for newer versions of systems (OS's, web servers, DB servers, etc.), while also sometimes removing support for older systems. If you look at the support matrix PDF I'd mentioned above, and compare it to CF2023's version, you do see differences.
First, CF2025 now supports these more updated versions of OS's:
- MacOS 15, including on ARM64
- Red Hat Enterprise Linux 9.5 & later, Ubuntu 24 LTS, and SUSE 15.5 & later
- No change in Windows support: Windows Server 2022 is the latest server edition, not yet Windows Server 2025
(On initial release, the "system requirements" pages are a bit out of sync with that new info. I've reported it and it's being worked on.)
As for web servers, the page shows that the Apache version supported has bumped up to 2.4.62. No change in IIS (still IIS 10). And as for DBs, there have been updates for Derby, MySQL, and Postgres (but no change--compared to CF2023--for SQL Server or Oracle).
What's never clear from this page is whether/how CF2025 now "works with" versions (or even newer) versions of things listed there. The docs are saying at least that only the listed versions listed are what are "supported" by CF. Often folks running slightly older or even newer versions that listed do "still work".
(And let me add also that as for databases, this is referring more to what drivers are INCLUDED with CF, in the CF Admin list of database drivers when creating a datasource. One can always choose "other" if they have obtained and implemented another driver that CF did not include. That has often helped people use either newer or older versions than CF offered.)
That said, there have been new REMOVALS at the system support level, as compared to CF2023. As the support matrix PDF shows:
- Solaris is removed as a supported OS (so that technically MacOS is the only remaining Unix distro supported)
- WebLogic and Websphere are removed as supported JEE app servers (while Tomcat, JBoss EAP, and Wildfly remain). (And of course, the CF2025 server configuration runs atop Tomcat by default (upgraded to Tomcat 10 as of CF2025. More on that in a moment.)
- DB2 is removed as a supported DB (FWIW, Sybase and Informix had been removed in previous releases)
Before leaving this topic, let me repeat: if you may be skipping CF2023 and coming to CF2025 from CF2021 or earlier, there were similar changes and removals at the systems support level made in CF2023, which I covered in my post on CF2023 when it was released.
CF2025 runs on (only) Java 21 by default
Another key point made in the Support Matrix that could be missed and is worthy of drawing attention to is that CF2025 continues its ever-rising support of new Java versions. CF2025 is now implemented atop Java 21 and as per its custom in recent releases it supports only that Java 21 (not Java 17 which CF2023 supported, nor Java 11 which CF2021 and 2018 supported).
What can we expect from CF2025 now that it runs atop Java 21?
Adobe has not seemed to make any changes to default jvm args related to it, and I'm not aware of any major changes within CF related to it--other than one issue related to thread termination, due to a removal of that feature in the JVM. For more on that topic, see a 2024 Adobe blog post that anticipated that change and which offered their proposed change to provide similar functionality.
FWIW, the java version embedded with CF2025 at this initial release install is Oracle JDK 21.0.6. and that is in fact the latest current Java 21 update--as of the last JVM updates in Jan 2025. And while not Java 21 is not yet offered on the CF downloads page section on Java updates, we can expect they will add it in time. If you're interested in updating the Java that comes with CF, see a resource I have that addresses many important issues and questions you may have.
CF2025 server deployments now run on Tomcat 10
I mentioned in passing above that CF2025 now runs on Tomcat 10 (in the normal "server" form of deployment that most use when running the CF installer or when deploying using the "zip install" feature new since CF2021.) For many, simply hearing that this underlying Tomcat engine is updated will be good news and perhaps all they need to hear. It's running Tomcat 10.1.34, at this initial release (and CF updates often update that Tomcat minor version--though rarely fast enough for security-conscious folks.)
But the change from Tomcat 9 to 10.1 is a significant leap with respect to some internals--and also with respect to those who may have previously created WAR or EAR files for CF and their apps that they'd deployed previously on Tomcat 9. For those folks, there will be a need to either recreate them anew with CF2025, or they will need to update them with respect to a major change in the underlying servlet spec (v4 to v6) and especially its change of the vital javax.servlet package to use jakarta.servlet.
Again, this has NO impact on those who deploy CF in the traditional server form of deployment discussed in the previous paragraph. For more on this matter and a few others, see a Dec 2024 blog post Adobe did on the matter. That said, there is a specific attribute impacted: cfheader statustext. For more on that, see the blog post or the resources I share below about other CFML aspects that are "removed" in CF2025.
Other than that (and one more time): this Tomcat change is generally of no consequence to most CF devs and admins, so let's move on.
II. Finding still other info on the new release
Beyond the new features offered in the "what's new" document itself, there are still other sources of information you'll want to consider as you assess the new release.
Other details offered in the What's New document
In fact, the what's new page itself has still more than JUST the brief discussion of major new features and links to more. It also offers links to:
- Bug fixes (several dozen--192, in fact, as listed today--some of which may interest folks while others are rather edge cases)
- Known issues (several--including a couple on MacOS, though again some others are rather edge cases)
- System requirements (again, I have more to say about some key system support changes below)
- Support matrix (adds even more about versions of web servers and DB servers supported)
- Frequently Asked Questions (Compared to the 2023 versions, there is a new section about the licensing change, "Adobe Named User Licensing (NUL) vs. Feature Restricted Licensing (FRL)". And while there is indeed a FAQ for Standard as well as that one for Enterprise, I find currently the only difference is that the Enterprise one has a new section for "Customers with Existing M&S", which refers to maintenance and support contracts--which perhaps only ever existed for Enterprise)
- Deprecated features (about which there are substantial removals and new deprecations. See more below)
- Release notes page (which I've pointed to above based on links offered to it on the what's new page)
Where else is CF2025 release discussed, or news of it announced?
When a new CF release comes out--just like when a new CF update comes out, there are a few places where Adobe shares that news:
- the CF community forums, and the post announcing CF2025
- The CF Team's social media accounts, such as at @ColdFusion on Twitter/X (and the CF2025 post here), AdobeColdFusion on Facebook (and the CF2025 post here), AdobeColdFusion on Linkedin (and the CF2025 post here))
- the Adobe CF portal, though as of today they have not yet posted an entry about CF2025 there yet
- and if there is any place I'm missing, I welcome feedback
And this is all in addition to resources that may be shared in the community, like my post here. My focus in this post is on the news Adobe has shared.
Some pre-release videos about CF2025
Even before today's release, Adobe had released some videos about the coming release. I offer them here to help readers find and consider them. Again, these are from the prerelease: you really should look at the final docs, as they have more examples and depth of detail:
Here are 3 youtube videos from the prerelease:
- Adobe ColdFusion (2025 release) - What's new and Exciting!
- Security and Stability in ColdFusion (CF2025)
- Smart language additions in ColdFusion (CF2025)
The several ways to obtain CF2025
The ways to obtain CF2025 (to install and test with it) are no different than previous releases:
- You can get the installer or zip via the "free trial" button at the top of the Adobe CF product site
- You can get the zip (but NOT the full installer) at the CF downloads page (note that the zip installer is quite a different install experience from the full installer)
- you can find Adobe's CF2025 container image available at the CF repos at dockerhub or Amazon ECR
- You can create a WAR file for CF2025 either from the full installer or from within the CF Admin (in CF Enterprise, at least, in the "packaging & deployment" section), and you can obtain a WAR version of the "zip" install above on that same CF Downloads page
- You should soon be able to get the Commandbox implementation, by using "cfengine=adobe@2025" in your box server start or configuration files (though I tried it this evening of the day CF2025 was released and it was not yet available)
- And in time you may find someone has offered it at the community-run CFML Repo site
You can also "try out" CFML against CF2025 at the Adobe cffiddle.org site, which now offers CF2025 as well as previous CF versions. And while the popular trycf.com site does not offer CF2025 as of a check today, the day CF2025 is release, we can hope it will come in time.
FWIW, I have a presentation where I go over these various alternative for running CF. See the youtube video link and PDF at The Many Ways to Run CF or Lucee .
And of course, if one BUYS a license to ColdFusion (discussed further below), they have traditionally been given access to its installers via either the Adobe Licensing Web Site (LWS) or the Adobe Account>Products page, both of which require a login (and that your CF purchase has been associated with that account).
Let's move on now to the elephant in the room.
III. Changes regarding licensing, pricing, etc
As with every release, there can be changes in how CF is licensed, how it's priced, what features are in Standard vs Enterprise. I cover these here.
Major change: CF2025 licensed only on subscription basis (still free for Development)
By far the biggest news and change regarding CF2025 may be the change regarding licensing: CF2025 is now licensed only on subscription basis. We were told about this by Adobe in the leadup to the release, but the details did not come out until today. There will no longer be the option of a perpetual license of CF2025 (and beyond) like there was before now. I don't think this is the "crushing news" that some want to make it out to be. More on that in a moment.
First, who's NOT impacted by this change to subscription
Let me first clarify that (as I note in the section title here) this does NOT affect free Developer edition of CF. That is still available: you don't have to pay Adobe a dime to install and use CF for development purposes on your own machine. More about this later.
And of course none of this change to the 2025 subscription licensing affects those currently running on CF2023 or earlier with perpetual licenses. Those will continue to work, and Adobe will continue to update those (with CF2023 getting free updates into 2028, and CF2021 getting updates until Nov 2025.)
One other point: while the removal of a perpetual license option is indeed noticeable to all those who used one before, we should note that many people do NOT currently run CF in production using such a perpetual license: that includes those who deploy CF using the AWS or Azure AMIs (which is a subscription), those who licensed CF via an ETLA (enterprise term licensing agreement, which is a subscription), or those who license CF via their hosting company (which is a subscription). So while some will see this as "turning over tables" for everyone...well, it's really not even "everyone" who uses CF in production.
Still, there will naturally be many questions about the new subscription model. And while I don't propose to answer them all, I want to try to answer a few key ones, and point you to resources where you can find the details.
How much will a subscription cost?
Let me cut to the chase and say it's listed as US$760/year for Standard, and $US2930/year for Enterprise. (And this is with the same sort of "per core" approach of recent previous releases: Standard is priced per 2 cores, and Enterprise is priced per 8 cores.)
Does this subscription change entail an increase or decrease in pricing?
Well, let me point you to a reply I made on the point yesterday morning, in the Adobe CF community forums post on the release, when the question came up. From my math, it seems essentially a wash, compared to someone who would keep CF updated with each release otherwise.
I'll add that a question I have that's outstanding (as of yesterday) was one I raised there also, regarding whether the new CF subscription license included what used to be called "premium" or "platinum" support. I'm hoping we'll get an answer, but the CF team is notoriously tight-lipped about discussing publicly anything related to licensing beyond what's also been published publicly.
What about an upgrade discount for those now on CF2023?
You'll notice I didn't mention any "upgrade" pricing: the change to subscription model means that simply no longer applies, in the sense that as long as one pays for the subscription they get updates included.
But it does beg the question what this means for those currently on CF2023. For now, all I can offer is that on those FAQ pages (for each edition) there is a question:
I Recently Purchased ColdFusion (2023 Release). Do I Need to Pay to Upgrade to the 2025 Release?with the answer:
If you recently purchased ColdFusion (2023 release), you may be eligible for an upgrade. Submit your request via Adobe Customer Service to confirm your eligibility.
We can't know what "recently purchased" and "may be eligible" do mean. Reach out to them. I'll suggest that rather than reach out to GENERAL Adobe customer service (who deal mostly with several dozen OTHER Adobe products), perhaps you should direct such questions to the long-existing email address, [email protected] (yep, one L). If you learn anything, I'd welcome updating this.
Are there still education discounts?
Yes, the FAQ pages have a question about this as well, with the answer:
Yes. Adobe offers educational pricing for the 2025 release of Adobe ColdFusion at a discounted rate for qualified educational institutions and students. Contact Adobe Sales to check eligibility and receive pricing details.
Is development still free? Is there still a free trial?
Yes, development with ColdFusion is still free.
Though I stated it at the opening of this section I want to reinforce the point, as it's not addressed in the FAQ, and some people think the subscription model may have changed things. There are even many people who don't realize that there even IS a Developer edition. What is it, and how do you get it? It's quite simple.
When you install CF (or run it as a Docker container or WAR file, or run it via Commandbox), if you don't put in a serial number/license key then you either run in:
- the free Developer edition mode (limited to no more than 2 concurrent requests, as discussed in the EULA--see below)
- or you run in the 30-day trial mode (which reverts to the Developer edition if you don't put in a serial number/license key)
Use of the Developer edition or Trial mode are both governed by the EULA (which you are shown and do accept at installation or deployment of CF). You can also find it in the root of your CF folder or online, as I discuss in another blog post.
Where can you find the pricing details for yourself?
Naturally some will want (or have ) to be able to see that price I quote above for themselves, on Adobe's site. How do do that? Well, there's a simple answer and then a bit of elaboration some may need to hear. There are a few different ways you may find it, and some will suit you better than others.
1) First, if you go to the FAQ pages (that I offered above) for either Standard or Enterprise (as I offered above), they have this question:
How Much Does a New License for the 2025 Release of Adobe ColdFusion Cost?With the answer including this:
Pricing varies based on the edition, Adobe Enterprise price is at $2930 and ColdFusion Standard at $760. Contact Adobe Sales for detailed pricing and subscription options tailored to your requirements.
2) Second, if you go to the product page for CF Standard, that offers a "buy now" button in the top menu (top of screen on desktop, or via top left menu in mobile). That takes you to a page which shows the price as well--and I suppose if one is in a different locale, they may see prices in their own currency, but I don't know.
And there is also a separate product page for CF Enterprise, which has its own "buy now" link, which does the same and shows its price.
Something interesting I find about both those "buy now" pages: what they show varies based on whether you are logged in or not (a logged in user can proceed to buy). But it's nice to see that even if you are NOT logged the page (currently) STILL shows the price (and asks to you login).
3) Finally, I want to address how if instead you visit the "front" of the CF product family page (or use the simpler coldfusion.com shortcut that goes there), it turns out the info it shows there is for CF Enterprise (though that's not clear), and more important the "buy now" button there presumes to show the Enterprise price. That's unfortunate, as it's confused many who found that page and concluded "that was all that was offered to buy". And I've complained of it before.
But note that you CAN get that page to show the info (and buy now) button for Standard: you just have to know to use the first menu item, which is labelled, "web application platforms", and change that to "Adobe ColdFusion Standard". Again, it is what it is.
(BTW, I do realize that the coldfusion.com shortcut I offered above only works via http: if you use that with https, you get a browser warning. They just have to update the cert on their web server for that domain name. I have reported to Adobe as well. I'm just a messenger and here to help.)
Where can you learn (a lot) more about the subscription licensing change?
There are two broad places to look.
Discussion in the FAQ pages
First, note the FAQ pages I keep pointing to also have an entire section of questions and answers on the topic, which I don't find differs between the Standard and Enterprise versions of the page. Sadly, there is no anchor I can point you to, so go to either of the FAQ pages and user your browser find feature to locate the section labelled, "Adobe Named User Licensing (NUL) vs. Feature Restricted Licensing (FRL)".
These NUL and FRL distinctions refer to the technical name of two broad variants of subscription licensing that are available. Yep, it's getting confusing. Good news: the FAQ (on either page) has a section of 10 questions and answers covering both of the two variants (NUL and FRL).
Dedicated doc pages on the three licensing variants
More than that, there is substantially more documentation on this new licensing model (and these two broad variants) in some new doc pages, starting with a top-level page titled simply Named User License and Feature Restricted Licensing in ColdFusion.
And THAT page then offers links to other pages.
The first is on the Named User Licencing (NUL) variant, which is itself substantial (including discussions and screenshots of handling licensing during installation and via administration, as well as in silent installs), and when ends with set of 16 FAQs (which include covering Docker and Kubernetes, though I don't see any clarification about how many container instances are covered by a license.)
Then for the other (FRL) form of licensing, there are two doc pages discussions sub-variants of that, the first on the Feature Restricted Licensing (FRL) Online model and the other Feature Restricted Licensing (FRL) Offline model. These pages also include discussions and screenshots of installation (including silent installation) and admin configuration, and they each end with their own FAQs. Curiously, neither of these FRL licenses discuss Docker or Kubernetes, though perhaps that will change
Yowza. It's a whole new world, friends. And it will take time for it to all sink in. I am certainly planning to do another post (or more) on the topic, and especially as we all learn more (and perhaps even the resources change to offer better clarifications).
Changes in the CF EULA/licensing agreement
Another thing I want to highlight (and save you trouble trying to compare) is the EULA, End User Licensing Agreement, which can be found as a file in the root of your CF installation directory or is available online (I have covered finding the EULA in another post.)
I compared the CF2025 and CF2023 versions (based on the license.html in the root folder of CF2025 and 2023), and though I am not a lawyer and you should read it for yourself before making any decisions on things, the only significant differences are these which don't relate to CF, per se, but seem more about rather minor technicalities regarding the change of licensing model. You/your lawyer may read things differently.
The definition of "Authorized users" has changed from:
1.3 "Authorized Users" means employees or individual contractors (e.g., temporary employees) of Licensee.to
1.3 "Authorized Users" As a Personal User or a Business User, you may create an Adobe account using an email address provided or assigned to you by a Business (such as your work email address). If the Business establishes a direct relationship with us, they may want to add your account to such relationship. You, as a Personal User with an Adobe account assigned to a Business or a Business User, also acknowledge that Adobe may provide your personal information to such Business (including, for clarity, sharing your information with an administrator of your Business), such as your name, email address and Entitlement information. If you do not want a Business to access, use, remove, retain, or control an account or profile, then do not use a Business email address with that account. Information regarding storage and access, and how you may change the email address associated with your account may be found?here:?https://adobe.com/go/business-storage-helpx. Adobe may share information about the Business, such as name and email address of the administrator, to a Business User. Both Personal User and Business User are individually and collectively referred to as "Authorized User"
They have also refined section 2.0 on "License" to that the start of the intro paragraph changes from:
Subject to the terms and conditions of this Agreement, Adobe grants to Licensee a, non transferable, non-exclusive and revocable license to permit...to:
Subject to the terms and conditions of this Agreement, Adobe grants to Licensee a perpetual (except as set forth in Section 15 ("Term and Termination") or as otherwise provided herein), non-exclusive license to permit...
And the end of that first paragraph in section 2.0 in CF2023 is followed by this additional text (probably should have been a new paragraph but is not):
Each license is to be used by only one (1) Authorized User and cannot be shared. At the end of license term, Licensee's license(s) will expire as set forth in your order document(s), or the?Subscription and Cancellation Terms. (https://www.adobe.com/legal/subscription-terms.html), then such terms are also considered part of the Terms. If you are using and accessing the Services and Software through Adobe's Value Incentive Plan ("VIP") program, then the Subscription and Cancellation Terms do not apply to you, but the remainder of the Terms will govern your use of and access to the Services and Software. The version(s) of the Software available at your renewal date may be different from the version(s) available when you first licensed them from Adobe. The versions of the Software that Adobe supports can be found here:?https://www.adobe.com/go/software-support-guidelines.
Also, section 2.7 on "Delivery" is changed from:
The Software is deemed to be delivered and accepted by Customer on the date the Software is made available for electronic download.to:
The Software may be delivered via electronic delivery or via tangible media (e.g., CD or DVD), and, if applicable, the Software may be supplied with a valid License Key.
Finally, they have changed the section that was labeled "Updates", from 2023's:
If the Software is an upgrade or update to a previous version of the Software, Licensee must possess a valid license to such previous version in order to use such upgrade or update. All upgrades and updates are provided to Licensee subject to the terms of this Agreement on a license exchange basis. Licensee agrees that by using an upgrade or update Licensee voluntarily terminates Licensee's right to use any previous version of the Software. As an exception, Licensee may maintain installations of previous versions of the Software on Licensee's Computers for a reasonable period of time (but not to exceed ninety (90) days) after Licensee obtains the upgrade or update to assist Licensee in the transition to the upgrade or update, provided that Licensee's right to such simultaneous installations does not constitute an increase in the number of copies, licensed amounts, or scope of use granted to Licensee hereunder. Any obligations that Adobe may have to support previous versions during the license term may end upon the availability of this update.
to 2025's:
Adobe may modify, update, or discontinue the Software (including any portions or features), which modifications, updates or discontinuations may, for clarity, be detrimental or result in a diminishment of value to you, at any time, without liability to you or anyone else. For changes to paid offerings that, in Adobe's reasonable discretion, are detrimental or result in a material diminishment of value to you, Adobe will make reasonable commercial efforts to notify you of such modification, update, or discontinuation. If Adobe discontinues the Software in its entirety, Adobe will use reasonable commercial efforts to allow you to transition your Content, and Adobe may provide you with a pro rata refund for any unused fees for that Software that you prepaid.
I see nothing new about hardware, vm's, cloud deployment, cf edition differences, or other things that would seem to be of interest to most folks. (Still zero discussion in the EULA about containerized deployment/docker, which is disappointing.)
IV. Migration concerns
We're almost done. This is (currently) the last major section of my post. As is also true with every release, there can be changes that impact your ability to migrate. I cover these next.
One thing I will note, first, is that if you are coming to CF2025 from CF2021 or earlier, then it's in your interest to consider what changes were made in the version you were skipping. I have previous blog posts and presentations that cover changes in CF2023 and earlier releases. I also have talks on migration, as I discuss below.
Then, also, consider that even after a new release comes out, there may be changes made as a result of certain updates to CF (or the to the JVM underlying CF). I have blog posts about such CF updates and each JVM update in recent years. Or if you struggle to keep up with it all, I can help directly with my remote screenshare consulting, where I often help people solve problems in minutes that might stymie them otherwise for hours or days. In particular, I can often help avoid the need of changing thousands of templates" by instead making one config change at the application, CF admin, or jvm level.
With that as preface, following is more on the specifics of migration to CF2025.
CF2025 removes many old things, some which may impact you
Before talking about some general aspects of migration, it's important to first discuss some significant "removals" from CF2025. This is one of those topics where some will want to celebrate "old crap finally being removed" while others (who just want their code to continue to work) will decry that the fact that their code (which may not even be "old" to them) can't run on CF2025: they may have had code written even recently by someone who still uses "old crap", or more likely they have either inherited some old app or wrote it long ago--and it's just always "worked". But now it may fail.
Indeed, there are too many items for me to list what's been removed in CF2025. Thankfully, Adobe has made thinkgs pretty clear, though...
Where to find information on what's "removed" (or "deprecated")
First, to see what was has been removed, you can find it within the Deprecated Features page from the CF docs, which has long identified what had been deprecated or removed in previous releases, and it now indicates that for things related to CF2025.
Separately--and focusing ONLY on what was to be removed in CF2025, note that Adobe had provided the information in advance to help us prepare for it, in the form of a December 2024 forum post from December pre-announcing the planned removals. (They also offered a blog post at the time, with the same info.) There they acknowledged being open to feedback from folks and might change the plans on any particular item. There was also some back and forth among folks in the comments of that forum post.
Both the doc page and the blog post clarify a) what's "removed" (no longer works) and b) what's "deprecated" (meaning it works but it's due to be removed), and c) the fact that Adobe will now formally remove any deprecated item in the next version (whether the next one after CF2025 will be called CF2027 or something else.)
As for what was removed, there are so many things indicted in those resources above. And there are facets that deserve more discussion than is apparent from the bullet points in those docs, so that I plan to do another blog post on the topic. When I do, I will update this one to point to that.
What about those JVM arguments added last year in updates for CF2023 and 2021?
I do want to offer one point of clarification, regarding the Mar 2024 CF update on implicit scope searching and the Jun 2024 CF update on cfmx_compat behavior. Each of those introduced two new JVM args (for CF2023 and CF2021) to the revert default behavior which was changed in those updates. The args were -Dcoldfusion.searchimplicitscopes and -Dcoldfusion.encryption.useCFMX_COMPATAsDefault, as I disucssed then.
To be clear, and though there's nothing in the CF2025 docs to clarify it, those jvm args NO LONGER are honored in CF2025 (there's no error, they're just ignored. They simply no longer revert the behavior. See the posts for more, if you're a bit lost right now.) And Adobe DID indicate they would no longer work in the technote for each update, as did my blog post on each.
But related to that June update, let's note that what WILL fail as of CF2025 is any use of "cfmx_compat" as the value of an encryption algorithm in the several functions that support that. That removal IS indicated in the doc and those December resources about the removals.
Again, I don't want to elaborate here on any other removals (again more in another planned post to come), but this matter was a little more subtle--again since the removals docs do NOT discuss the removal of such JVM args.
Anyway, this general discussion of removals leads nicely into the general discussion of migrating apps to CF2025, and I elaborate on that below, including also tools and other resources to help with the process.
Migrating apps to CF2025
As with every new CF release, people inevitably ask "how hard will it be?" And my answer is always the same: for some it will be trivial, for some it will seem impossible (but they're nearly always mistaken--and I can help), while for most the migration effort will fall somewhere between those extremes.
The challenge depends on where you're coming from
Of course, it will depend significantly on what version you're coming from. Certainly if you're on CF2023 you will be "closer" to CF2025 than someone still on CF2021 or earlier.
Beyond that, it depends also on how recently you have updated whatever CF version you're currently on. Often a new version incorporates changes that were made in recent updates to previous versions--and some may well be breaking changes. So people who have "dealt with that" in a recent update of a previous CF version will be "close" to CF2025 than someone who has not applied any (or any recent) updates. And that's true not only for if you're running CF2023, but even if you're on CF2021.
Most CF updates incorporate the same changes to both recent versions, as long as they are supported. CF2021 will get updates until Nov 2025, and CF2023 will get them to 2028 (each being 5 years after they came out). Of course, those on CF2018 or earlier will have the most compatibility challenges--depending as well on how recent their updates were.
My talk on specific challenges (and solutions) in migrating from recent versions
Beyond those general concepts, I can offer that I have a talk on the specifics of migrating to CF2023 (just like I'd done for CF2021). The talk goes into considerable detail about the kind of common problems people encounter (or can anticipate) and how to resolve them.
The talk also cover the different issues that folks would face in moving from each of several recent versions, so it will be useful especially for anyone moving to CF2025 from CF2021 or earlier.
I do plan to create a version of the talk on migrating to CF2025, once it's been out a while and to incorporate more "lessons learned" once it's been out a while. Again, I hope to come back and point to it here when I do, for those who may find this post in the future.
In the meantime, that CF2023 migration talk also covers some tools and techniques (and resources) which may be just as useful for those migrating to CF2025--even from CF2023 or any version--and I want to touch on these just a bit next.
Tools to assist in migration to CF2025
While reading the docs and just testing code by hand would be the approach most would follow, some good news is that there are tools that can help you with migration to CF2025 (or indeed to earlier releases of CF).
Adobe's free Code Analyzer
First, within the CF Admin interface, Adobe does offer (and has long offered) a "Code Analyzer. The link for it is (rather curiously) offered within the "Debugging & Logging" section of the CF Admin. The interface is pretty straightforward: you point it to a code directory, identifying what CF version you're coming from, and it produces a report identifying compatibility issues. The report is produced either in seconds or minutes, depending on the size of your codebase. Note that it also offers an "advanced options" feature which provides more fine-grained control.Sadly, there aren't too many recent resources about the tool--though it's essential functionality has not changed (just the language support). The Adobe docs for the tool are rather spartan. Other resources include this from cfguide.io (including screenshots) , and here's an old post about it from Ray Camden. I would like to do one based on the current version, especially given the significant removals in CF2025.
Foundeo's commercial Fixinator tool, and its new compatibility checker
Second, some of my readers may be familiar with a tool from Pete Freitag and his company, Foundeo, called Fixinator. It's a commercial tool/service that's was originally focused on scanning CFML code for security problems, but modified it in Oct 2024 to add a new compatibility checking feature (which can help checking your code not only for compatibility with a given CF versions but with a given Lucee version as well.) He acknowledged in that post that he plans to add support for CF2025, and I know he was working on that during the prerelease of CF2025.BTW, some may ask why I don't list the Ortus CodeChecker module from forgebox. It's a worthy tool, but it focus is not checking compatibility between CF versions.
Also, before leaving this broader section on migration, I'll note as well that while Adobe had offered a "migration guide" for CF2023 (and one also for CF2021), that guide is not so much about migrating apps as migrating admin settings. That is important, sure, but it's not really steps that change between releases. (I will note it does at least talk about newer features, like the cfsetup tool for managing admin settings.) I have not yet found a 2025 version of that, but perhaps it's yet to come.
"Hidden gems in CF2025", to come from me soon
You might think I've "covered everything" above, but in fact (as is true with each release) there's still more than is indicated with the main points above. And as I've been doing since "the turn of the century" (with my first "Hidden Gems in CF 4.01" talk), I'll be offering a Hidden Gems in CF2025 talk at the Adobe CF Summit East next month. Sadly, those CF Summit East talks may not be recorded, and if so then I plan to record the talk after that session>.
Until then, check out the new release on your own, exploring the many ways to implement CF2025 and to check out how your app works. As I've indicated above, I plan to do more posts on CF2025 in time. Again, there's always so much to take in!
For more content like this from Charlie Arehart:Need more help with problems?
- Signup to get his blog posts by email:
- Follow his blog RSS feed
- View the rest of his blog posts
- View his blog posts on the Adobe CF portal
- If you may prefer direct help, rather than digging around here/elsewhere or via comments, he can help via his online consulting services
- See that page for more on how he can help a) over the web, safely and securely, b) usually very quickly, c) teaching you along the way, and d) with satisfaction guaranteed
"How Do I License ColdFusion for Containerized Deployments?
ColdFusion licensing for containerized environments follows the ColdFusion End User Licensing Agreement (EULA). Each containerized instance of ColdFusion must be individually licensed.
For example, if two ColdFusion containers are running on a single VM, both must be licensed separately based on that VM instance. Contact Adobe for detailed licensing terms."
As for what you found in the FAQ, I have always hoped that somehow that might not be as authoritative as we'd take it--though it's all we had before: and note how I mentioned elsewhere above that it is still not covered in the 2025 EULA, nor even in the new NUL or FRL licensing pages. I was hoping somehow that's where we'd find clarity.
Sadly, I don't know that we can expect anyone from Adobe to speak up here. They are notoriously tight-lipped when it comes to public statements about licensing matters (beyond what's offered on the site publicly).
But maybe there will be enough hue and cry about this to engender some response. Otherwise, yes, it seems folks wanting to run many *licensed* containers will seemingly need to consider Lucee or Boxlang's cf compat feature.
(I stress "licensed" because of course one can run CF containers for free as the Developer edition, and for some that may suffice while they are simply exploring the prospects of containerized deployment.)