ColdFusion 8 Update 1 Released

The bits are live and the release formerly known as Gemini can be downloaded immediately from Adobe.com. Not only does the free ColdFusion 8 Update 1 (CF 8.0.1) roll-up some minor bug fixes, it also adds support for new operating systems (including 64bit) and some extended functionality (attributeCollection). Here is a run down on the update:

Native OSX Leopard Support

This is clearly a big one for many of you.  Getting ColdFusion 8 to run on Leopard has taken a little bit of hackery, but thanks to our community we've had several online resources to walk us through the process. With 8.01, all you have to do is run the installer. I'd recommend a full reinstall for existing user running CF8 on Leopard, but you can also just redeploy the new EAR/WAR.

64bit Support

When we initially released ColdFusion 8 in August 2007, Sun didn't have a JVM that supported a wide range of 64bit platforms (only Solaris). Sun released a new JVM since then and added support for a full range of 64bit OSes.

For the record we support the following 64bit OS:

  • Windows Vista, 2003 and XP
  • Mac OSX Leopard
  • RedHat Linux 5
  • Suse Linux 10
  • Solaris 9 & 10 

So what does 64bit support really mean? The main benefit is the increased memory range. 64bit JVMs can see more system memory so you're no longer restrained to 3.x Gigs per instance. We've also refactored some of the bits under the hood so everything runs smoothly and takes advantage of the 64bit architecture. 64bit support is limited to Enterprise and Developer edition only. If you are running ColdFusion Standard you can still install it on a 64bit operating system, but it will run in 32bit mode. We've also added support for Windows 2008, but thats still limited to 32bit.

Enhanced Attribute Collections

These are a few enhancements I've wanted since we first proposed the attribute collection feature in ColdFusion 8. Update 1 will now allow us to overload the structures we pass into tags. Previously, we could only pass a structure to tag that had the exact same keys as the tag. If I passed a structure with a key name 'location' to <cfquery>, ColdFusion would throw an error saying 'Yo, location is not a valid attribute for <cfquery>!'. Now ColdFusion can ignore those extra keys and use only the ones that apply to the specific tag. This means you could create a single structure to act as the 'default' for all of your tags. This behavior is different from CF8, but it's enabled by default. If you've written code that relies on an error being thrown, you can disable it via the CF Admin, Application.cfc (this.allowExtraAttributes=false) or at the tag level (allowExtraAttributes=false).

You can also override what you pass in via attributeCollection with the attribute at the tag level. So if you pass in a default structure for <cfquery> that has a key like 'name', it will be ignored if you specified the name attribute of <cfquery>.

Updated UI Components

As you probably already know, ColdFusion packs in some of the best open source and OEM products around. We've updated a  number of these libraries with Update 1. The one that stands out for me, is an updated version of the FCK Editor (which powers <cftextarea richtext=true>). The latest release has full support for Safari, which was important to use, since it's the same HTML engine that's embedded in AIR. Here is the run down on the updated libraries:

  • FCK Editor 2.5
  • Yahoo UI 2.3
  • ExtJS 1.1.1
  • Spry 1.6
  • Verity / Autonomy® K2 Toolkit V5.5.0 Service Pack 3

I know what you're saying... Dude, why didn't you update to ExtJS 2? Well, there are a number of reasons, most which will bore you, but the primary one is that it wouldn't add much to the _existing_ UI controls in CF8. However, I can say that we've been working very closely with the ExtJS team we will be squeezing all of the goodness of ExtJS 2+ into Centaur (a.k.a. ColdFusion 9).

We've also made it a lot easier to work with the Rich Text Editor via JavaScript as well as adding an external spell check. We still aren't shipping with a spell check, but now you can drop in your own without much hassle.

Nested Implicit Arrays and Structures

Finally, right? Feel free to nest structures and arrays until to your heart's content. This code will totally work now:

<cfset employeeArray = [{name="Ben",title="ColdFusion Guru"},{name="Adam",title="Ben's Whipping Boy"}] />

Minor CFML Updates

These are just some of the higher level enhancements of ColdFusion 8 Update 1. To see the entire list of updates check out the release note, which covers minor updates to the following tags/functions:

  • <cfdocumentitem>
  • <cfpdf>
  • <cfregistry>
  • <cfmail> & <cfmailparam>
  • <cfimage>
  • <cfexecute>
  • <cfprint>
  • <cfexchangecalendar>
  • <cfftp>
  • removeWatermark()

More Information

Here are links to all the goodness:

Viva ColdFusion!

Comments

Sami Hoda

Sami Hoda wrote on 04/04/08 12:41 AM

I fought long and hard for 64 bit. Yippee!
Jeff Coughlin

Jeff Coughlin wrote on 04/04/08 1:01 AM

If interested, you can get the full installers (including the Mac OS X 64-bit) here http://www.adobe.com/cfusion/tdrc/index.cfm?product=coldfusion
Sean Corfield

Sean Corfield wrote on 04/04/08 1:22 AM

@Sami, folks can just remove -staging from the URL (and I'm sure the early adopters will figure that out - and Adobe will fix the links soon) but it is an unfortunate glitch.

One thing that is not clear is that the updaters cannot be applied to an existing, hacked-about, CF8-running-on-Leopard in order to create a working 64-bit supported installation. At least, that's what I believe to be the case...
O?uz Demirkap?

O?uz Demirkap? wrote on 04/04/08 2:38 AM

Link for "ColdFusion 8 Extensions for Eclipse" is also broken.

http://download.macromedia.com/pub/coldfusion/8/eclipseextensions/CF801-Extensions-for-Eclipse.zip

FYI.
Sammy Larbi

Sammy Larbi wrote on 04/04/08 7:06 AM

Excellent news!
Adrock

Adrock wrote on 04/04/08 10:17 AM

Sorry for some of the URL hiccups. I made this post the second the Updater was supposed to go live (12AM), but it looks like it took awhile for Adobe.com to update. All seems well and good now. I hope you guys are enjoying 8.01!
Steve 'Cutter' Blades

Steve 'Cutter' Blades wrote on 04/04/08 3:28 PM

Outstanding news here. Unfortunate about not yet getting ExtJs 2, but understandable considering the changes to the core of that library (that would be some nice retooling of the CF java hooks). Glad to hear it will make it into Centaur though. The biggest piece is the 64-bit support. Now, if we can just get it to run well on the latest JVM (I know, that's Sun's issue....)
Charlie Arehart

Charlie Arehart wrote on 04/05/08 12:00 PM

Hey Adam, can you confirm that the extra attributes on attributecollection is "not enable (sic) by default"?

You say folks "need to enable it via the CF Admin, Application.cfc (this.allowExtraAttributes=true) or at the tag level (allowExtraAttributes=true)", but the Release notes say that the Admin setting is true, and that the others (if not specified) follow the Admin setting, so it would seem it's more accurate to say it *is* enabled by default. I've not yet installed it so can't confirm myself. Perhaps the release notes are wrong.

Just looking for clarification. Could be important to some to know if indeed it is or is not enabled by default (some have expressed concern that the behavior also makes it easy to pass in a misspelled attribute which would be ignored with this behavior enabled). Thanks.

PS Do you really need to have a 9 character, mixed-case capcha with special chars? :-)
Adrock

Adrock wrote on 04/07/08 12:40 AM

@Charlie

You are very right; I had it backwards. The new behavior of attributeCollection is _enabled_ by default. Sorry for the confusion, I've updated the posting.

9 chars? You must have had a short one. I fixed it in my next blog update. I'll try and deploy it soon.
David McGuigan

David McGuigan wrote on 04/08/08 3:18 AM

"We've also added support for Windows 2008, but thats still limited to 32bit."

This PDF:
http://www.adobe.com/products/coldfusion/pdfs/cf8_systemsupportmatrix.pdf

Clarifies that Enterprise and Developer editions actually ARE supported in "full" 64-bit mode on 2008 64-bit, just to clarify. Which is a VERY good thing. I thought the same thing you said when I read the release notes.