Blog

Brad Wood

November 13, 2020

Spread the word


Share your thoughts

Adobe released ColdFusion 2021 this week.  It's a pretty big release with a modularization of the core engine and a nice list of language enhancements. 

https://helpx.adobe.com/coldfusion/user-guide.html/coldfusion/cfml-reference/new-changed-functions-coldfusion-2021.ug.html

Here's what you need to know for using it with CommandBox.

ForgeBox

The 2021.0.0 version is already on ForgeBox.  If you're thinking, "Hey, wasn't this version 2020?" you'd be right.  It got...changed at some point recently.  You can start an ACF 2021 server just like any other Adobe server right now like this:

CommandBox> server start cfengine=adobe@2021

We've only done basic testing, but the server seems to start up just fine.  Check the server log, or do a --debug start if you have any issues.

server log
server start --debug

CFConfig

If  you're using CFConfig, you'll need to update it to the latest version so it recognizes the version. 

CommandBox> update --system

We haven't added any new settings to CFConfig yet, so it you find some new 2021 settings you need to be able to import/export please let us know what they are.

Modular Architecture

Following in the footsteps of Lucee 5, ACF 2021 uses OSGI bundles to load/unload additional functionality into the server.  This makes the core engine a lot smaller, but it also means your app may not compile until you've added in some missing pieces.  Unlike the default Lucee server that ships with most extensions, Adobe CF 2021 ships with almost no extensions.  We're still discussing how to handle this  in ForgeBox. 

For Lucee, I have two ForgeBox slugs: lucee and lucee-light.  The former coming with most extensions and the latter coming with none.  We've considered adding additional options to download an Adobe engine with all the same functionality that previous versions had.  However, I'm not sure if time is better spent putting effort into making it easy to declare your needed packages and just let CommandBox automatically install those packages for you.  

cfpm

The ColdFusion Package Manager, or cfpm is a tool that ships with ACF 2021 in the form of a script in the cfusion/bin folder you can run to download and install additional functionality into your server.  Unlike Lucee, ACF 2021 doesn't appear to have any file system based convention whereby you can download these packages manually, place them in a special deploy folder, and have the engine just slurp them in.  It seems the installation needs to flow through the cfpm script.

You can run cfpm from inside CommandBox like this.  It works well, but it's not pretty.

!C:/Users/Brad.development/Documents/GitHub/cfconfig/tests/resources/adobe2021/serverHome/WEB-INF/cfusion/bin/cfpm.bat install feed

As such, I've added a new feature to the latest CommandBox 5.2.0-RC.1 build to make it easier for you to call the cfpm tool without needing to dig into the bowels of your server installation to find it.  CommandBox now has a top level command called "cfpm"  that, when run in the webroot of an Adobe 2021 server, will find the location of the cfpm.bat or cfpm.sh script and execute it, passing along any parameters you supply

// This opens the cfpm shell.  Type "q" and hit enter to exit back to CommandBox
CommandBox> cfpm

// This directly runs a cfpm command
CommandBox> cfpm install feed

This should make life a little easier while we work on a better convention for CommandBox to "auto-install" packages from your box.json or server.json file on server start.

Remember, you need to update to the CommandBox 5.2.0 build to get this feature.

Issues

If your a ColdBox or TestBox user, you may run into issues.  ColdBox 6's app templates don't appear to run at all on CF 2021 and we've heard reports of TestBox not working as well.

https://tracker.adobe.com/#/view/CF-4210899

https://tracker.adobe.com/#/view/CF-4210912

Add Your Comment

Recent Entries

CBWIRE 3.0.0 Released

CBWIRE 3.0.0 Released

We are very excited to announce the release of version 3 of CBWIRE, our ColdBox module that makes building modern, reactive apps a breeze. This version brings with it a new component syntax, 19 enhancements and bug fixes, and improved documentation. Our biggest goal with this release was to improve the developer experience and to provide a low barrier to entry to getting started with CBWIRE.

Grant Copley
Grant Copley
May 22, 2023
ColdBox 7.0.0 Released

ColdBox 7.0.0 Released

Introducing ColdBox 7: Revolutionizing Web Development with Cutting-Edge Features and Unparalleled Performance

We are thrilled to announce the highly anticipated release of ColdBox 7, the latest version of the acclaimed web development HMVC framework for ColdFusion (CFML). ColdBox 7 introduces groundbreaking features and advancements, elevating the development experience to new heights and empowering developers to create exceptional web applications and APIs.

Designed to meet the evolving needs of modern web development, ColdBox 7 boasts a range of powerful features that streamline the development process and enhance productivity. With its robust HMVC architecture and developer-friendly tools, ColdBox 7 enables developers to deliver high-performance, scalable, and maintainable web applications and APIs with ease.

Esme Acevedo
Esme Acevedo
May 16, 2023
TestBox v5.0.0 Released!

TestBox v5.0.0 Released!


We are excited to announced the release of Testbox version 5, which brings a host of new features and improvements for developers. TestBox is a powerful and flexible tool that helps developers write comprehensive BDD/TDD tests for their applications, ensuring code quality and reducing the likelihood of bugs and errors. With TestBox v5, developers can take advantage of new features such as batch code coverage testing, improved reporting capabilities, method spies, and better integration with other tools in the Ortus suite.

These new features make TestBox even more versatile and user-friendly, and provide developers with a powerful tool for building high-quality, reliable applications.

 

Luis Majano
Luis Majano
May 11, 2023