Tuesday 4 March 2014

ColdFusion: Of integers and indolence


Yes, OK, I'm still banging on about integers and ColdFusion bugs. It's my blog and I can talk about whatever I like! ;-)

You might be aware that I am particularly nonplussed about Adobe's reaction to bug 3712010, which relates to integer validation via isValid(), and how it is broken.

I started by just being mildly annoyed by how ColdFusion can make such a pig's ear of something that should be simply. But the more Adobe (or, hey, let's say it: Rupesh from Adobe) squirms about the place and tries to justify why they shouldn't just bloody fix a fairly obvious bug, the more annoyed I am getting about this. I dislike having my intelligence insulted, and I also dislike the collective intelligence of the ColdFusion community insulted. Especially by someone who very clearly should not be in the business of insulting anyone's intelligence.

It's all getting a bit stupid, but one of the comments posted today on this caught my eye and made my blood boil just that bit more. I've asked Carl if I can reproduce his comment, and he has said it's fine. So here it is. I've dollied it up for formatting, but it's othewise unchanged.

Ray Camden reported this issue back in CF7 before July 31, 2005 (https://bugbase.adobe.com/index.cfm?event=bug&id=3024044) and it was deferred with "not enough time". Since this issue was migrated from the old bugtracker, no votes are listed.

Ray followed up with a suggested flag or workaround before August 3, 2005 (https://bugbase.adobe.com/index.cfm?event=bug&id=3024112) and it was deferred with "not enough time". Despite this bug being migrated from the old bugtracker, it got two votes.

ErnestoRA reported a similar issue in CF8 on September 1, 2010 (https://bugbase.adobe.com/index.cfm?event=bug&id=3042116) and it was closed with "NeverFix".

MisterDai reported similar issues with IsValid in CF8 on September 20, 2010 (https://bugbase.adobe.com/index.cfm?event=bug&id=3042202) and it was deferred with "not enough time". This issue got one vote.

MaryJo reported similar issues with IsValid in CF9 on April 18, 2012 (https://bugbase.adobe.com/index.cfm?event=bug&id=3169196) and it was closed as "Withdrawn/AsDesigned". This issue had 15 votes and 4 comments from end users.

Now MaryJo has once again reported this against a BETA version of CF11, and it is again being deferred? Are you kidding? With 10 votes and 14 comments from end users telling you to fix it?

So after more than eight years of begging, six different bug reports against four (really five if you implicitly include CF10) different releases, more than a dozen unique end users weighing in with comments, and at least 28 votes to fix this issue (with recognition from those commenting/voting that dealing with any backward compatibility issues would be preferable to maintaining the status quo on broken functionality), you still want to push this off to yet another future release? After continually deferring it since 2005?

This MUST get fixed during the current BETA cycle. Waiting until CF12 (maybe) to get this resolved is ABSOLUTELY UNACCEPTABLE (especially to those of us who have been paying for upgrades to the product over the years).
So it was basically reported as soon as the function came out (CFMX7 was released in Feb 2007; Ray first raised this no later than July that year). For you, Rupesh, to say "It has been like this forever" (Rupesh Kumar 4:36:34 AM GMT+00:00 Mar 3, 2014)... you're taking the piss. We know that, sunshine. We told you at the time.

Let's not lose sight of the fact that we're not asking for a function to cure world hunger or to give India an effective bowling attack. We're asking for a function to correctly identify whether ColdFusion considers a value to be usable as an integer to work so that it's a) usable; b) consistent with the rest of ColdFusion. How is this so hard? How does it take EIGHT FUCKING YEARS TO (still not ~) FIX?