Friday, 6 September 2013

Good work Adobe ColdFusion Team!

G'day:
I've run a coupla articles about how many ColdFusion 10 issues there are outstanding in the Adobe ColdFusion bugbase, and how there seemed to be total inertia in dealing with them:

Well I'm pleased to say there's been a flurry of activity recently - in the last day or so it seems - and we're now down to [checks]... 165 untriaged ColdFusion 10 bugs (at time of writing). That's still quite a few, but it's also 40-odd fewer than there were a week or so ago.

Now this doesn't mean that these 40-odd bugs have been fixed, but it does mean that Adobe have definitely had a first look at them, and actually triaged them: re-categorised them for possible action. This is good work. Well it's a good start. I firmly believe the count of untriaged bugs should be close to zero. But it's great work that they've triaged 20% of the ones I have been recently banging on about.

A few of these bugs (and enhancement requests! It's not all bugs) are ones I raised, or knew about and thought "yeah, nice one... fix/do that", and am pleased at the results of the triage. Let's have a look at a few.

(3550103) Be able to specify the port for built-in web server during install

Currently the installer takes a guess at which port to listen on for the inbuilt web server: it starts at 8500 and increments through ports that it finds in use.

It'd be handy to have an option to set this value (defaulting to its best guess).

This has been marked "to fix".

(3434441) Promote built-in functions to be first-class

Ref: http://en.wikipedia.org/wiki/First-class_function

Use case: https://groups.google.com/forum/?fromgroups=#!topic/railo/EJVknC8_6Rk

Discussion: http://blog.adamcameron.me/2012/12/callbacks-and-built-in-functions-as.html

I was a bit terse with the wording of that one. Basically I think it'd be handy to be able to treat built-in CFML functions as callbacks or basically treat them exactly the same way one might treat a UDF, which currently one cannot do in CFML. I was never expecting them to deal with this, so pleased that they are.

(3335540) [ANeff] ER for: add invoke()'s argument array support to cfinvoke

invoke() accepts an arguments array. cfinvoke does not. Could cfinvoke also accept an arguments array?
This is a brilliant idea. I added a comment to the ticket thus:

Could this be extended to simply allow arrays of ordered args in any place argumentCollection is used? ie: not simply for <cfinvoke> ? That's be really cool!

If functions can accept ordered arguments instead of named arguments, and one can pass a collection of arguments to a function, then one should be able to pass either a name/value-pair collection, or an ordered one. This just makes sense.

(3299625) Add isFile() to the language

See http://stackoverflow.com/questions/11692302/how-do-i-know-if-this-variable-is-a-file-handle for discussion. Basically there's no way of identifying if a variable is a file handler.
This is just a simple one, and probably something that should already have been there. I don't often need this functionality, but I have had a few times over the years. It's been marked "to fix".

(3504508) Installer option to install local documentation

The CF10 installer (for Windows at least) has an option to instlal local documentation. According to bug 3342688 local documentation is not available anymore. So either bring back the local documentation (my preference) or remove the installer option because it's annoying to think you've got it installed and then have to go to forums / bug trackers to find out why it didn't work.
This is marked as "fixed". I wonder what the fix is: removing the install option, or re-including the docs as a local install option? I hope it's the latter.

(3476873) Upgrade Zingcharts

The latest version of Zingcharts has the following property [etc]
I hope the fix here is implemented in such a way that when ZingCharts is updated, it can simply be dropped into CF and it'll keep working. Also updates like this should be pushed out by the updater as/when they're available. Anyhow at least ZingCharts is getting an update.

(3350403) [ANeff] ER for: addition of "Upgrade" button to wsconfig.exe's UI (to update connector w/o losing config)

Currently, the wsconfig.exe tool has these buttons: [Add...] [Remove] [Exit]

An Upgrade button should be added as follows: [Add...] [Upgrade] [Remove] [Exit]

wsconfig.exe supports the -upgrade command, but the UI does not. The -upgrade command upgrades the web server connector modules while preserving config files (ex: uriworkermap.properties & applicationHost.config). Description is here: http://help.adobe.com/en_US/ColdFusion/10.0/Admin/WSc3ff6d0ea77859461172e0811cbf364104-7fd9.html

Users should be able to run the -upgrade command via the UI, after installing Updaters. (tho the Updaters should just automatically run the -upgrade command)
This is a very significant one which has been marked "to fix". It's a bit rubbish that Adobe's guidance - when they've messed with the web server connector and it needs updating - is to "remove and reapply" especially if there's actually an "upgrade" option available (which I did not know about). Some of my installs have non-standard connector config, and "removing" the connector also deletes the config (which it should not do anyhow)... something I didn't find out until after I noticed my config had been blitzed. I'm glad they're getting on top of this one.

So that's all good news!

Just as a reminder: if you want to keep track of the activity on the ColdFusion bug base, follow @cfbugnotifier on Twitter. It checks for new bugs every coupla hours, and updates to existing bug every four hours or so.

Cheers.

--
Adam