If you are planning a move to ColdFusion 2025 — or you already installed it and are sorting out what broke — Charlie Arehart’s Mid-Michigan ColdFusion Users Group session is worth your time. He combines his “Hidden Gems in CF2025” and “Migrating apps to ColdFusion 2025” talks into one pass over what is new, what was removed, and which tools help you find trouble before production does.
The recording is about 82 minutes:
Making the move to CF2025, cheers and challenges with Charlie Arehart (Mid-Michigan CFUG on YouTube)
Charlie’s slide deck and related talks live on carehart.org/presentations. The PDF for this session is titled Moving to CF2025, cheers and challenges.
What the talk covers
At a high level, Charlie walks through three areas:
- Cheers — CSV, spreadsheet, and chart improvements; Microsoft Graph / Entra integration; language niceties (trailing commas, multi-catch, null coalescing); per-call Java jar loading; Update 8 AI packages, passkeys, Argon2, and sets; Java 21 and Tomcat updates.
- Challenges — removals such as
parameterExists(),HTMLEditFormat(),getTemplatePath(), tags-as-script CFCs from the CF9 era, YUI-backed UI tags, andcfmx_compat; subscription-only licensing for 2025; security-driven changes in updates that sometimes need JVM arguments to restore old behavior. - Tools — the CF Administrator code analyzer, Pete Freitag’s Fixinator for compatibility scanning, and fiddles (cfiddle.org, trycf.com, cfmlfiddle.com) so you can verify behavior without installing everything first.
One clarification Charlie posted after the session: CF2025 did not remove the cfquery statement in CFScript, or queryExecute. What went away were the CF9-era CFC-based “tags as script” implementations (for example query.cfc under custom tags). If something in your app still does new Query() that old way, that is the path that breaks.
AI-generated summary with timestamps
In the YouTube comments, Charlie Arehart (@cmarehart) posted an AI-generated summary with linked times. Reproduced below with credit to him; each time jumps into the recording.
The presentation is structured into three core segments:
1. The “Cheers” (new features & coding improvements)
Arehart highlights major features introduced natively in ColdFusion 2025 or via subsequent major upgrades like Update 8 (3:21):
- Business process improvements: Elaborate new tags and functions for processing CSV files, heavily modernized spreadsheet capabilities, and upgraded charting support (10:51).
- Microsoft Graph integration: Native CFML support for Microsoft’s Graph API, facilitating smoother online authentication and Exchange Online interactions (12:40).
- Developer syntax additions: Support for trailing commas in arrays, structs, and function arguments (14:54); multiple-exception catching within a single try-catch block (15:36); and a new null coalescing operator (
??(16:01). - Java jar loading flexibility: The long-awaited capability to define specific Java jar paths directly inline inside a
cfobjectorcreateObjectstatement, restricting scope to that individual line rather than the entire application path (18:27). - AI integration & modern security (Update 8): Robust options for integrating generative AI packages (28:48), local passkey support (29:52), Argon2 password hashing (30:04), and the introduction of programming sets (30:04).
2. The “Challenges” (removals & security restrictions)
ColdFusion 2025 cleans house by stripping out dozens of features that have long been marked deprecated (35:24):
- Core code removals: Functions like
parameterExists()(replaced byisDefined()) (38:09),HTMLEditFormat()(replaced byencodeForHTML()) (39:07), andgetTemplatePath()have been strictly removed (39:46). - Script interface adjustments: The syntax formatting that allowed certain custom tags to look like functions in older scripts (tags-as-script CFCs from CF9) is gone; modern native script equivalents must be utilized (43:03).
- UI elements stranded: Any functionality relying on legacy YUI library extensions — such as
cfmenu,cftree,cfcalendar, orcfinputauto-suggest parameters — has been officially removed (46:36). - Algorithmic and architectural deprecations: The old
cfmx_compatencryption/hashing algorithm is dead (with a fallback recommendation to use MD5 explicitly) (41:20). Additionally, Microsoft Access via ODBC databases (51:27) and DB2 support are aggressively being sunsetted (51:50). - Licensing overhaul: ColdFusion has completely transitioned to a subscription-only pricing structure, discarding perpetual licensing completely (52:02). However, the free trial and Developer Edition environments remain intact (52:40).
3. Recommended migration & code-scanning tools
To help developers handle the massive code adjustments, the presentation highlights several essential utilities (4:24):
- Adobe Code Analyzer: Built natively into the ColdFusion Administrator backend to scan directories and call out missing functions or obsolete syntax parameters (1:02:55).
- Fixinator: A highly recommended paid tool by Pete Freitag that performs both security vulnerability audits and automated compatibility tracking for removed CF2025 elements (1:06:12).
- Testing playgrounds: Online execution boxes like cfiddle.org, trycf.com, and the self-hosted cfmlfiddle.com configuration framework, which allow developers to drop raw code snippets directly into testing grids across distinct engine variations (1:09:36).
Summary text credited to Charlie Arehart (@cmarehart), posted as an AI-generated summary on the YouTube video.
Why this matters operationally
CF2025 is not only a feature release. Updates keep tightening serialization, remote method arguments, XML, bytecode, and related surfaces — often with JVM flags to trade security for older compatibility. That is the same pattern we have been dealing with in recent patches such as ColdFusion 2025 Update 13 / 2023 Update 25. Scan and stage first; do not discover removals on the night you cut over.
If you need help planning a ColdFusion upgrade, inventorying breaking changes, or validating an update path on staging, get in touch with Tierney Dynamics.
Comments