New PrimalScript update available

We won’t be posting this often, but since it’s the first update since the release of PrimalScript 3.1 I thought I would mention it. Sapien has released an update to PrimalScript that addresses some issues. You can find full details of what has changed here. In the future you can check if you are running the latest version of PrimalScript by select HELP > Check For Updates from within PrimalScript. Sapien released updates regularly so it’s good to get accustomed to checking for updates once in a while.

PrimalScript doesn’t have automatic update notifications so if you want to be notified of updates you can do this with some browsers. I added a bookmark to the change log and told FireFox to notify me when it changes. Instant update notifications.

When updating an existing installation, you only need to select the “Repair” option during setup. The installer will automatically update your existing installation.

Missing in Action @ MXDU

A little update. I wonÂ’t be speaking at MXDU as originally planned. I was really looking forward to it but my visa has yet to arrive from the Australian Embassy. Geoff has been really understanding about it and will have some contingency plans in place. Maybe IÂ’ll make it next year, and Peter take lots of pics!

UIObject depends on UIComponent

If you’re developing components using UIObject as a base class you may want to know that in order for your component to use styles you’ll need to still include UIComponent in your asset layer. The CSSSetStyle class is initialized through UIComponentExtensions and thus is not available if UIComponent is not included in your asset layer.

Pass CFCATCH to a UDF expecting a structure

When you dump CFCATCH ColdFusion says it’s a structure. But when you try pass it to a UDF that expects a structure you get an error.

So how does CFDUMP treat CFCATCH as a structure and how can we do the same thing? Through duplicate(). When you pass CFCATCH to duplicate() it returns a structure. After that you can pass it to UDF as a structure.

#duplicate(cfcatch).getClass().toString()#

Extensibility does not replace the need for new functionality

S.Isaac Dealey posted an interesting blog entry about whether or not certain functionality should be added to the core CFML language. He was talking specifically about the ability to work with zip compressed archives but the argument applies to many other things.

His assertion is that since a lot of functionality can be easily added through the use of ColdFusion extensibility options–User Defined Functions, Custom Tags, and ColdFusion Components–and because of this some common functionality does not need to be added to the core CFML language or function library.

I completely agree that developers should take full advantage of extensibility and the great resources available to us such as cflib.org and Macromedia Exchange. With these options individuals can add functionality to CF and share that functionality with others.

However, I disagree that this replaces the need for new functionality to be added to the core language for several reasons.
Continue reading