Blog

Brad Wood

April 18, 2019

Spread the word


Share your thoughts

We've released a new major version of our CommandBox FusionReactor module.  This module allows you to easily add FusionReactor to any server you start with no manual installation or fiddling with JVM args.

Usage

install commandbox-fusionreactor
fr register "myLicenseKey"
server start

Debug Libs

One of the most-requested features is for it to include the JVM args that load the debugger libraries.  This new version of the module will do that automatically for you now unless you set fusionreactor.debugEnable to false in your server.json.  The debugger libs unlock additional functionality such as the production debugger, event snapshots, and heap analysis.  

Automatic Updates

One of the next most-common requests we would receive was for us to update the module to use the latest version of FusionReactor-- something that used to be manual.  FusionReactor is now maintained on ForgeBox automatically as part of Integral's build process so you can use the newest FusionReactor versions right away with no waiting and no effort.  Just restarting your server will be enough to trigger a download of the latest version automatically.  You'll never be behind again.

Pinning A Custom Version

The reason this is a major release is because there is a small backwards incompatibility with the previous version of the module now based on the fact that it installs the FR jar and debug libs from ForgeBox.  The "version" and "downloadURL" settings have been removed in favor of a new consolidated setting called "installID" which currently defaults to the following value internally:

installID : "fusionreactor@^8.0.0"

You may recognize that is the same format as when you use the "install" command in CommandBox to install packages from ForgeBox.  That is because it is exactly what you are looking at!  "fusionreactor" is the name of the new package on ForgeBox and "^8.0.0" is a semantic version range that will automatically match the latest stable 8.x version.  

If you want to dial into a specific version and/or skip the ForgeBox check on startup, you can remove the caret and dial in your version like so:

server set fusionreactor.installID="fusionreactor@7.4.4"

You can review the published versions on ForgeBox to see what is available to you.  And as you may have guessed, the "installID" can be ANY VALID CommandBox endpoint, meaning you can point to a custom HTTP URL, ForgeBox package, etc using any installation mechanism supported by the "install" command.  So long as the installation ID points to a package with the FR jar and debug libs, you're good to go!

Upgrading the Module

If you have an older version of the module currently installed, you cannot use "update --system" since this is a major bump.  Instead, explicitly request the latest to be installed like so:

install commandbox-fusionreactor

If you were not using the version or downloadURL settings, then you don't need to do anything in order to use the latest version.  It will be a drop-in replacement. If you were using the "version" setting, then update your configs to use the new installID setting in the format "fusionreactor@version".  Please note, Integral does not support old releases and opted to not add all old versions to ForgeBox to check the listing to see what versions are available to you. If you were using the downloadURL setting, update your URL target to be a proper package zip file with a box.json, fusionreactor.jar, and the debugging libs and move the HTTP url into the installID setting.  

 

Add Your Comment

(1)

Apr 19, 2019 07:55:55 UTC

by Charlie Arehart

Sweet stuff. Thanks for the efforts, guys: you especially on commandbox and forgebox and this integration, of course, and Integral as well for whatever they did for linking to forgebox and supporting the auto update process.

Recent Entries

BoxLang 1.0.0 Beta 22 Launched

BoxLang 1.0.0 Beta 22 Launched

The BoxLang 1.0.0-Beta22 release includes several improvements, bug fixes, new features, and stories. Key improvements include enhanced redirection for the Miniserver, better transactional event broadcasting, and added convenience methods like getRequestContext() and getApplicationContext(). Bug fixes address issues such as JSON deserialization, whitespace management, and various errors related to data types and loops. New features include support for multiple statements inside queries and a new datasourceRegister() BIF for easier SaaS integrations.

Jon Clausen
Jon Clausen
November 15, 2024
Is Cloud the Answer for Your ColdFusion Dilemma?

Is Cloud the Answer for Your ColdFusion Dilemma?

Feeling the limits of an on-premise ColdFusion setup?

Many businesses face high costs, limited scalability, and performance bottlenecks, leaving them wondering if the cloud could be the answer.

In our FREE whitepaper, "Is Cloud the Answer for Your ColdFusion Dilemma?", we explore:

  • Benefits of Migrating to the Cloud: From cost savings to increased flexibility, find out what a cloud-based ColdFusion setup can do.
Cristobal Escobar
Cristobal Escobar
November 13, 2024
Mastering Events and Listeners in CBWIRE

Mastering Events and Listeners in CBWIRE

In CBWIRE, events and listeners are the backbone of building responsive, modular applications without relying heavily on JavaScript. This guide walks you through setting up and using CBWIRE events to create seamless interactions between components, from dispatching events in CFML and frontend templates to listening with Alpine.js and JavaScript. Learn how to make your applications feel dynamic and engaging by effortlessly connecting components. Whether you’re triggering events to update a dashboard or targeting specific parts of your app with dispatchTo, these techniques will empower you to create a modern, interactive CFML experience with ease.

Grant Copley
Grant Copley
November 11, 2024