Saturday 25 May 2013

212 untriaged ColdFusion 10 bugs

I saw this on Twitter last night, and - predictably - it f***ed me right off.

From: James Moberg @gamesover
To: @Adobe @coldfusion
I want to upgrade to #ColdFusion 10, but not if issues exist & aren't even being actively reviewed. Need help?

From: Adobe ColdFusion @coldfusion
To: @gamesover @Adobe
Can you provide the bug numbers if you have already logged them? We will review the same.

From: James Moberg @gamesover
To: @coldfusion @Adobe
Use search feature Type=Bugs Only, Product=#ColdFusion, Version=10, State=Open, Status=Unverified

From: Sean Corfield @seancorfield
To: @gamesover
@dacCfml @Adobeis that right? 212 unverified bugs reported against @coldfusion 10? 

To which the response was (initiated by me, followed-up by others):

From: @dacccfml
To: @seancorfield @gamesover @coldfusion @Adobe
Yep, that's what I see as well. 212 publicly visible bugs in an enterprise (priced) product that the vendor hasn't even bothered to triage. That's very disrespectful of their clients

From: Jason Brookins @twinsploitation
To: @dacCfml
Trying to get to Railo as quickly as possible; this just adds impetus.

From: Adam Cameron @dacCfml
To: @twinsploitation
@coldfusion @Adobe
Indeed. Do you know what though, it's not that there's a lot of bugs - everything has bugs - it's just that they can't even be arsed checking to see if there are any significant problem being raised. Or respecting their clients enough to bother suggesting they give the slightest shit.

From: am2605 @am2605
To: @dacCfml
this makes me sad more than angry. I wish we could all chip in and buy it off them and give the poor thing a good home
Please note: the 212 figure Sean cites is not "bug and feature requests", it's just "bugs". And it's not all bugs. It's just the ones that are a) open; b) haven't even been looked-at by Adobe. And just for ColdFusion 10.

I know I said it in the Twitter exchange, but to re-iterate: it's just completely unacceptable that the Adobe ColdFusion Team have such a shitty attitude towards their clients. Their paying clients. Clients who pay thousands and thousands of dollars / pounds for their product. And who have clearly been caught out by these bugs, so they are affecting people in a real world way, and enough so that they take the time to raise said bugs with their vendor, Adobe. This is borderline professional negligence on the part of Adobe (actually I'm not sure which side of the that particular border it's on!).

I hasten to add I do not blame the bulk of the Adobe ColdFusion Team for this. The developers won't be at fault here because they will just be doing what they're told. And clearly they've been told to ignore the bugbase. However I do firmly blame whoever is the decision-maker in that process.

I've been part of assessing the upgrade of a pretty bloody big ColdFusion install from CF9 to CF10 recently. I hasten to add I'm not one of the decision-makers in this and I will not express the opinions of the decision-makers here (I don't know their opinion, for one thing), but I will say that the upgrade involves licensing costs measured in the tens of thousands of pounds (many tens of thousands of pounds). If it was entirely my decision as to the direction to take, the fact that Adobe have 212 untriaged bugs sitting in their public bugbase would weigh heavily on me: why would I be wanting to give Adobe all that money for... nothing. For apathy. For client neglect.

To repeat what I touch on about, I actually don't have much of a problem with the number of bugs in total. Everything has bugs. And there's a good chance a lot of those 212 bugs will be minor, or so trivial as to not even warrant the time taken to raise them, or not actually bugs but people misunderstanding something. However a lot will be genuine bugs, and some might be serious bugs. But we wouldn't know, would we? Because no-one's bothered to look at them.

This paints a very poor picture of Adobe's focus on ColdFusion. Yet another one.

And let's not forget we're only talking ColdFusion 10 bugs here. What about the other metrics:

8.01011(incl 1 "fixed" but still "to test")
9.021073(incl 4 "fixed" but still "to test")
9.0.111010354(incl 10 "fixed" but still "to test")
10.02127919232(incl 15 "fixed" but still "to test")

So it's not like there's a policy of them to simply ignore everything, or they're just not updating the bugbase. They do look at stuff. They've verified almost as many bugs as they've ignored in CF10. So they really honestly actually haven't bothered to took at those 212 James / Sean singled out.

It's also worth pointing out that the CF Team have fixed really a lot of issues too.  There's 515 open issues for CF10, but 362 closed ones. For 9.0.1 it's better reading: 398 closed to 159 open. 9.0: 1550 closed; only 31 open. CF8.x: 1082 closed vs 18 open. So they do plug through the work. But that doesn't excuse not at least triaging all the stuff that people have taken the time to raise with them, at least as a professional courtesy.

If you want to know what 212 untriaged ColdFusion bugs looks like... here they all are:

12012-04-173167817Running Web Server Configuration tool on one site throws a 500 error
22012-05-043182493 with no expires attribute managing session (CFID / CFTOKEN) browser only cookies results in persistent cookies
32012-05-073183868ORM Search Serialization Issue
42012-05-223196322path_info breaks Flash forms
52012-05-223196326CF9.0.1 vs CF10 wrt cfgrid + bind = floating point
62012-05-263199273When using offline AIR support, certain class property names need escaped
72012-05-263199274When using offline AIR support, the actionscript load(cls, object, ignoreLazyLoading) method is broken
82012-05-263199275When using offline AIR support, the client-side [Transient] metadata is already used for another purpose.
92012-06-053206530Spring integration, spring security and jsp tags
102012-06-133213501Conflict with Microsoft Exchange and Handler Mappings
112012-06-203219587UPgrading from CF 9 to CF 10 leaves connectors to CF 9 causing issues.
122012-06-253222889GetPageContext().getRequest().getParameter('param_name') is undefined
132012-07-103283049Dockable Debugging Error
142012-07-203292315cftrace "fatal information" image is not displayed properly
152012-07-283298213Various Charts Will not render in IE7
162012-08-023301875Login method on cfide.adminapi.administrator component failing intermittently
172012-08-063303777CFGRID doesn't set values in HTML like CF9 but will work if format is changed to flash.
182012-08-073304661unable to register C++ CFX tag in 32 bit CF on 64-bit OS.
192012-08-173312917CF9 won't uninstall; CF10 is a nightmare to install
202012-08-223315764CFFlush doesn't work.
212012-08-223315766CFChart Tooltips not working correctly on Google Chrome
222012-08-223315776CFChart does not recognize "animate" or "detach" values when using format=html and JSON style file
232012-08-233316776arrayFindNoCase() returns false negatives
242012-08-233316784arrayFindAllNoCase() returns false negatives
252012-08-233316788arrayFindAll() returns false positives
262012-08-233316798arrayDelete() returns false positives
272012-08-273318699Tomcat connector, isapi_redirector 1.2.32 issues
282012-08-303321646Deprecate CFLOOP/array and try again
292012-09-033323375HTML cfchart ignores labelFormat attribute
302012-09-043324252IE9 fails but Firefox fine.using cfwindow and cfgrid.
312012-09-103328113Cannot access CF Admin after install
322012-09-133330734Dynamically Typed Queries with '300D' in the first row.
332012-09-133330785CGI Scope geting reset by websocket handler
342012-09-213334751AJAX XHR Upload (application/octet-stream) after update from coldfusion 9 to 10
352012-09-223335478Unable to delete a REST service
362012-09-223335493Caching issue
372012-09-223335505[ANeff] Bug for: Incorrect task status when action="list" omits task="" attribute
382012-09-243335956[ANeff] Bug for: ArrayContainsNoCase and ArrayDeleteNoCase are missing
392012-09-243336205[ANeff] Bug for: cfschedule falsely says exclude date format invalid
402012-09-243336210[ANeff] Bug for: cfschedule's exclude disallows date and range combination
412012-09-253336302using functions of an included file makes coldfusion ignore imports
422012-09-263337394Function SerializeJSON() converts employee's last name ("No") to boolean false in JSON output
432012-09-273338329Dumping an entire object that extends a parent class displays metadata for overridden functions from parent instead of child
442012-09-283338790OrmSearch does not include result score + entity for queries generating a single result
452012-09-283338825SerializeJSON casts multiple zero value as number instead of string
462012-09-293339105valueList() should take any expression that evaluates to a query column
472012-09-293339126CFFeed does not extract content element xml:base attribute from atom feeds
482012-09-303339175"coldfusion status" command fails silently on Linux
492012-10-013339690Starting Solr on RHEL 6 64 bit
502012-10-033340537[ANeff] Bug for: Wish form links to old
512012-10-053341684Redirection to URL in IIS6 website redirecting to /jakarta/isapi_redirect.dll
522012-10-053341910SQL Server 2008 (or newer) HierarchyID datatype not supported by CF10 jdbc driver (works in CF8)
532012-10-063342124XML serialization for REST services is not escaping some values.
542012-10-073342141Source code file should not need special charset encoding instructions for them to compile properly
552012-10-093342986[ANeff] Bug for: WebSocket open/closeConnection() return undefined instead of boolean
562012-10-093342991[ANeff] Bug for: typo subscribercount_callbackHanlders (dl, not ld) in cfwebsocketChannel.js
572012-10-093342995[ANeff] Bug for: typo in WSPublish() exception
582012-10-093343006[ANeff] Bug for: invokeAndPublish() returns no error when channel doesn't exist
592012-10-093343429A cfm page is set as a custom error page for a website in IIS, does not work as expected
602012-10-103344090pageEncoding only works in CFCs
612012-10-103344353Web services will not be served from https with stock CF10 install
622012-10-113345011error "javax.mail.MessagingException: Unable to load BODYSTRUCTURE" when using CFIMAP
632012-10-113345191isValid 'Email' validation allows underscores in email form
642012-10-113345255function call structure creation occasionally executes before the line in code is run
652012-10-113345316[ANeff] Bug for: WebSocket unsubscribe() invokes afterUnsubscribe() twice
662012-10-143346117[ANeff] Bug for: restInitApplication("absolute path",..) null pointer in Application.cfc pseudo-constructor
672012-10-173348475Concurrency issue accessing / verifying a datasource - "could not locate" datasource
682012-10-173348765[ANeff] Bug for: REST app will crash if installed on multiple sites
692012-10-183349444IIS Physical Path can't see Google Drive folders
702012-10-193350030Some Query of Query errors are 500 errors
712012-10-223351326.NET Integration Services grayed out during the sub component installation of Coldfusion server on windows 8
722012-10-233351451Cannot edit or delete scheduled tasks
732012-10-243352451CF 9 scheduled tasks not migrated during CF 10 install and unable to re-create them manually on Win 2008 Server
742012-10-253352745properties with default values not accessible outside init function
752012-10-253353222ColdFusion 10 doesn't gzip responses. This worked fine with the same configuration in ColdFusion 9.
762012-10-253353254ColdFusion doesn't properly start or restart if ethernet is down even if loopback is up
772012-10-253353358cfajaxproxy generates incorrect javascript when machine restarted
782012-10-253353515CFSelect Google Chrome
792012-10-263354038Scheduled Tasks disappear after restart - Update 3 broke
802012-10-273354476Session reset on each page load on IE for certain machines
812012-11-033358792WSConfig does not back up all the config files it changes
822012-11-033358817Application.cfc-set mappings don't work in onApplicationEnd()
832012-11-063360511CFDBINFO doesn't know to escape reserved words
842012-11-063360524"unique" constraint on ORM-mapped properties not respected when DB is Derby
852012-11-073361502No setting in cluster admin to enable session replication
862012-11-073361929CFSTAT server port conflict in multiserver configuration
872012-11-093363329onMisfire attribute of cfschedule docs & tag behavior don't match & include duplicate arguments (fire_now vs. firenow)
882012-11-093363366Application mappings failing with a REST call
892012-11-133364745Web Server Configuration Tool doesn't work for "All" sites in IIS 7
902012-11-143365388AWS Elastic Beanstalk rejects ColdFusion WARs
912012-11-153365773cflayout - tab height problem in IE 7
922012-11-153366005Default document not working
932012-11-193367866"Select all" option in ColdFusion updater doesn't work
942012-11-193367872Updater should leave the system how it found it
952012-11-213369252CF9 Query of Queries on CF10 Query object only returns the first row
962012-11-283373247isJSON throws exception
972012-11-293374680CFDocument won't embed Helvetica font
982012-11-303375263Misleading error with REST services and missing returnType
992012-11-303375431Unable to access delegated calendar using cfexchangeConnection
1002012-12-033376486restSetResponse with a header can cause an error.
1012012-12-033376670Remove spreadSheetReadBinary
1022012-12-043377595Bundled jIntegra is 32bit on 64 Bit Windows
1032012-12-053378447Java Servlet Exceptions prevent ColdFusion10 server from starting
1042012-12-123427668cfinfo reports wrong version number
1052012-12-123427695CFLOOP over a list should have includeEmptyValues attribute
1062012-12-123427961Changing Task Name causes CTASK error and tasks deletes itself
1072012-12-143429588isCustomFunction() needs to do what it says on the box
1082012-12-173430245Session gets lost on cflocation width J2EE Sessions and Cookies disabled
1092012-12-173430402CFPDFFORM fails on Linux
1102012-12-183431165CFFILE - Unable to set MS Office MIME Types if OpenOffice installed
1112012-12-183431423INSERT query on Oracle database with maxrows attribute on cfquery tag crashes
1122012-12-233433620ImageGetEXIFMetadata is not working as expected
1132012-12-233433621CFIMAGE action="write" is not maintaining EXIF Metadata info of an image
1142012-12-263434100Updating a task via cfschedule resets task to defaults
1152012-12-263434101cfschedule missing values for attributes
1162012-12-263434106Code Hinting
1172012-12-293434535param statement with no default creates spurious variables
1182012-12-303434560CFDUMP tag doesn't collapse in Opera
1192012-12-313434633Enterprise Manager: Element httpport is undefined in a Java object of type class java.util.HashMap.
1202013-01-013434652Parser bug in function with typo in it
1212013-01-043436101NULL NULL errors after the last coldfusion update
1222013-01-073442915Installation fails on IIS 7.5 without CGI but does not alert the user to it
1232013-01-153476230event gateway services won't start/stop from cfadmin.
1242013-01-153476661deserializeJson does not properly handle high-ascii characters
1252013-01-163477538cfajaxproxy and cfcomponent extends no longer work in CF 10 when using IIS Virtual Directories
1262013-01-183485286ColdFusion not exposing exceptions correctly
1272013-01-223486707[ANeff] Bug for: Admin API's login() treats ishashed=false as ishashed=true
1282013-01-253489921The value of isDSTOn returned by GetTimeZoneInfo always seems to be no
1292013-01-253490112SEVERE: Error in getRealPathFromConn persists after Updating Coldfusion
1302013-01-273490441Using the word "required" with a leading underscore in the name attribute of a cfinput field
1312013-01-283491238NumberFormat returns different results with optional placeholders
1322013-01-293492574[ANeff] Bug for: CF installer migrates ODBC data sources w/ wrong port
1332013-01-293492580[ANeff] Bug for: ODBC DSN creation fails in non-cfusion instances
1342013-01-293492608[ANeff] Bug for: ODBC DSN deletion fails in non-cfusion instances
1352013-01-293492620[ANeff] Bug for: 64-bit CF10 creates wrong registry entries for ODBC data sources
1362013-01-303493209CFPresentation tag throws file not found error when trying to create a presentation with a VFS destination
1372013-01-313493990CFPDF doesn't add headers/footers to PDF files
1382013-01-313494006Calling Oracle Package: [Macromedia][Oracle JDBC Driver]User defined type not found: SYS.DBMS_UTILITY
1392013-01-313494045Coldfusion Errors when parsing "Reporting" form submission from Captivate
1402013-02-123498968Some web services with data structure as argument values could not execute
1412013-02-123499114JBoss 6
1422013-02-173501428Scheduled task does not allow ":" in url
1432013-02-193502465Manage Colelction Values not saved
1442013-02-193502742Nested loop over [] array notation throws compiler error
1452013-02-203503303hover tips for resume and pausing tasks need to be switched
1462013-02-203503472Creative Cloud 6 fonts corrupt the ColdFusion CFPDFFORM tag (not cfform)
1472013-02-203503539Cannot Delete Log Files
1482013-02-213504508Installer option to install local documentation
1492013-02-253506225argumentcollection bugs with numeric keys
1502013-02-263506891CFM can't find a CFC in the same directory.
1512013-02-273508034Flashservices Gateway Configuration
1522013-02-283508651Bug in writeDump() / CFDUMP with non-contiguous-numerically-keyed argumentcollection
1532013-03-033511958ColdFusion Sandbox Security Breaks Active FTP Connections
1542013-03-043512735cftextarea richtext does not load in Internet Explorer 10 (Windows 8)
1552013-03-043512854Error connecting to Oracle servers using Oracle Advanced Security
1562013-03-063514590Annotations with ":" do not work inline in script based functions
1572013-03-063514766Problem adding Scheduled Task on system with different Format and Display settings that runs on Java 7
1582013-03-073515355Adobe ColdFusion 10 Extensions for Dreamweaver Removes HTML5 Tags
1592013-03-073515644CFHTTP with compression="none" fails to decode deflated http response
1602013-03-083516357Connection verification failed for data source: csvfiles
1612013-03-103516836Error updating a scheduled task on day of Daylight Saving Time
1622013-03-113517457ColdFusion mappings are ignored when using REST services
1632013-03-123518496Administrator throws errors on managing scheduled task with space at end of name
1642013-03-133519649Could not find the included template
1652013-03-153521203CFThread loses Attributes collection inside Custom Tag.
1662013-03-153521227Page Level Caching Does Not Work Correctly For Application Specific Caches
1672013-03-193525182CFGRID HTML version issue
1682013-03-193525473Mail spooler jam due to SpoolLockTimeoutException
1692013-03-213526880cfimport doesn't resolve /../ correctly in cf10. It did in cf9
1702013-03-213527009Caused by: java.lang.NullPointerException On CreateObject
1712013-03-273530880App Pool Crashing "Randomly". "Load balancing workers will not function properly." in isapi_redirct.log at crash time.
1722013-03-283531688There was an error accessing this page. Check logs for more details.
1732013-04-013533394CFIDE available even with no virtual directory
1742013-04-023534348Typographical errors in $cfroot/cfusion/bin/
1752013-04-043536062In memory file system limit cannot be more than JVM max heap size
1762013-04-053536673Problem with empty CGI variables/Windows authentication in CF10/IIS 7.5
1772013-04-053536920A query object with a column type "object" becomes column type "longvarchar" after being converted to WDDX and back
1782013-04-093538759Adding a domain requires restart of Cold Fusion
1792013-04-093539041coldfusion-out logs stuff targeted for other logs
1802013-04-093539042coldfusion-error.log logs non-error stuff
1822013-04-103539831imageInfo() should take string of image path like cfimage action=info
1832013-04-103539842Bug with dotted key names in structs
1842013-04-113540118ColdFusion not responding after clock change from GMT to BST
1852013-04-163542815REST errors are not properly passed to CF Admin.
1862013-04-163542825REST registration and class not found errors
1872013-04-163542845null for uri for rest services
1882013-04-163542854File picker loses your setting
1892013-04-173543725Error deserializing client message.
1902013-04-193546046restSetResponse() requires the method to be returntype void
1912013-04-193546047Why is it restSetResponse()? Why is it not just setResponse()?
1922013-04-213546323Unable to use Datasource.cfc in Admin API - The current user is not authorized to invoke this method
1932013-04-223546959JVM 1.7 corrupts XML objects resulting in StackOverFlows when performing XmlSearch()
1942013-04-233547852This setVariable expression not equivalent
1952013-04-253549922SpreadsheetAddFreezePane does not occur when a spreadsheet object is added to an existing file
1962013-05-033554224Amazon S3 Support with DirectoryList
1972013-05-073556076Using isNull() on a non-NULL query column returns TRUE
1982013-05-083556864Jakarta isapi_redirector Intermittent Service Temporary Unavailable Errors
1992013-05-103558347Documented example of mediaplayer isn't workable
2002013-05-103558382SerializeJson improper conversion of dates.
2012013-05-113558670cfmenuitem fails after 10 items in a row
2022013-05-133558899Covariance in CFML data types with interface contracts
2032013-05-133558904Interface support for mix-ins
2042013-05-133558908"Abstract" parent classes don't work with interfaces
2052013-05-143560212JS-style comments in CSS file
2062013-05-153560929Going to a url formed like this: c.cfm/test/test.cfm returns a coldfusion.runtime.TemplateNotFoundException
2072013-05-153560964Multiple Form Elements With the same name turned into array - missing empty elements
2082013-05-183563034Multiple child tasks fail to fire when the onComplete attribute contains spaces after the comma delimiter
2092013-05-193563072mail() doesn't work if setFrom is not a proper email address.
2102013-05-203563690Autosuggest with delimiter is broken.
2112013-05-233566150EncodeForHTML mangles strings containing %[0-F][0-F]
2122013-05-233566202test: reported bugs getting lost?

That's a lot, isn't it?

Seriously, Adobe ColdFusion Team (~ management)... get your act sorted out. This is a disgrace.