[Looking for Charlie's main web site?]

Charlie Arehart's Ultimate List of 200+ New ColdFusion 10 Features

Note: This blog post is from 2012. Some content may be outdated--though not necessarily. Same with links and subsequent comments from myself or others. Corrections are welcome, in the comments. And I may revise the content as necessary.
Wondering what all is new in CF10? Have I got a list for you! :-) (revision 1.9, 217 items1

I've not yet seen anyone try to create an ultimate list of *all* the new features in CF10, so here's my shot at it. (This is based on the public beta. I will update it soon with info from the final release.) Of course many (including Adobe) have created lists that show perhaps a couple dozen of what they think may be the most prominent features, or the most interesting for them, etc. I've just not yet seen anyone list even simply all the features mentioned in the beta new features guide. That's what I'm doing here.

But to be clear, I am not listing every new tag and function (that would be tedious.) Instead, I'm listing them as concepts, and where warranted, any relevant subtopics that expand on the new feature.

I've got more to say about the list (how I created it basically from the 244-page CF10 new feature docs, and what you can do to help expand it). But some will want me to cut to the chase, so here's the list. Please check out the additional discussion after it.

Charlie's Ultimate List of new CF10 Features, revision 1.9 (Sep 12 2012), listing 217 items1

[....Continue Reading....]

Comments
Great list. Thanks for making it quick and easy as you always do.
Thanks for doing this.

I always look for this with new versions of software and I am amazed how hard it usually is to find a complete list of new features, rather than a mention of a few important ones.
Thanks for the encouragement, Mike and Steve.

And I agree with you, Steve, which is why I wondered about the idea of a wiki. And really, for more than just CF10, and indeed more than just CF. May pursue it if others express interest. Could be a lot of work, but as they say, "many hands make it light". We shall see.
Great one Charlie and thanks for mentioning my ColdFusion 10 list as well. It’s really encouraging and I feel glad for receiving an appreciation for what I did.
So many new features. I like CF10 server update. With CF10 updates will be cumulative which means that all fixes of previously released hotfix be included in any new hotfix which comes later. This is great, no need to worry about previous method of self managing patch order and manual unzip file replacements.
# Posted By Carl | 3/12/12 6:24 PM
Great list, thanks for sharing ;)
Thanks, now I have something to deep dive with. Much appreciated Charlie!
Charlie,

Under Caching, you may want to add that CFLOGIN now uses ehcache for an authentication cache.
Nice one, Rob. Done. Thanks. Hey, if that's all that about caching that's new that I didn't, then coming from you (the master of CF ehcache caching), I wipe my brow and say "phew". :-)

Thanks, also, to Joao and Wade for the kind regards.
Great, thanks Charlie.

It'd be great if the list can indicate which features are limited or N/a on Standard edition.
# Posted By Henry Ho | 5/15/12 8:27 PM
Well, Henry, as I note at the top, I had created this back in the public beta. And at that time, the differences in editions was not published, so that's why they are not there.

But I will note that today I posted another entry with those differences. See http://www.carehart....
Any thoughts on how to get around the case issue with the new Tomcat server?

http://localhost/mys...
is different then
http://localhost/mysite/Test.cfm
using Tomcat.

I'm sure a lot of site are going to have issues when deploying CF10 with a legacy app that has something like <cflocation url="someurlinlowercase"> when the directories or filenames will be mixed case.
Christopher, I'm not finding that. Let's be very specific about what you are asking.

First, are you referring to Windows or Mac/Linux/Unix? I ask because first of all, on non-windows servers hasn't this always been the case? I know, for instance, that on those that application.cfm/cfc has to be spelled Application.cfm/cfc. On Windows, on the other hand, I am finding first that I cannot even create a file of the same name differing only by case. Windows keeps rejecting that attempt, as if I'm overwriting the current file.

Second, when you say Tomcat, do you mean simply "the Tomcat that underlies CF"? Or do you mean more specifically the Tomcat Web Server, which is what CF now uses if you enable CF's "built-in web server" during installation (or via manually tweaking an xml file after that)?

Again, when I do testing using that, I find that I get the same file whether I ask for it as upper or lower case (and again, in my case on Windows, there can only be one file of a given name, regardless of its case. That's always what's shown in response.)

Further, when I use IIS to request the file, I find the same thing. Are you perhaps using Apache? How is your setup different than mine?

(Really, this is going beyond the intent of this blog entry. I'll ask after we close this one out that other readers wanting to raise concerns over such seeming "differences" ought to raise them instead in the Adobe forums. But then certainly if it's concluded that there is a difference, I'll be happy to see it offered here.)

Anyway, I do want to close out this problem here since you raised it. Looking forward to your reply.
Sorry for not being a bit more detailed.

My situation is as follows. I'm on a windows 7 box at home.
I downloaded CF10 Dev edition and the built in webserver (Tomcat).
Under the root I created a test directory a file name, CF10test.cfm

I went to: http://localhost/tes... and the server barfed.
I went to: http://localhost/test/CF10test.cfm and voila I have my test output.

I guess what I'm saying is that in cf9 and prior, on a windows machine, the case didn't matter.

But going forward with CF10 AND using Tomcat, there could be some case issues.

Assuming I have a piece of code that:
<cflocation url="http://myserver.com/...">

but the actual filename is "launderMoney.cfm"

Just something Windows users who are using the built in Tomcat server should be aware of.
Great stuff! Thanks Charlie!
@christopher, the thing is, I have the exact same setup, and i'm saying i'm NOT seeing that. And I didn't see anyone else complain of it throughout the prerelease, and have not heard it since the final. Of course, I'm not seeing everything people are reporting. :-)

So let's see what others find and report. Admittedly, since we're talking about the built-in web server that cuts down the number of people who will hit this in the near term (many use only external web servers), and then they would also have to have a case issue to cause any conflict. But we shall see.

You can certainly file a bug report. I'm just saying I don't think you (or anyone reading this) would want to declare "CF10 has a case problem", at least until someone else can confirm seeing this. Since you and I have about the same setup and we are seeing different results, it just says it's not "always" an issue. But let's see how it shakes out.

@Peter, thanks for the support.
Wrong! Case does matter as CF is a multi-platform product. For example "Application.cfm" and "OnRequestEnd.cfm" are still relevant.
Who are you yelling at, Peter? If me, I DID say that I realize Applicaiton.cfm/cfc is case-sensitive--on non-Windows systems. See my comment at 5/16/12 6:12 PM.

But what Christopher and I are talking about is an observation he's having of case-sensitivity even on Windows, which I'm not seeing. Are you? What is it you're saying I'm "wrong!" about?
Not saying anyone is wrong, per se, or shouting. Apologies if that was perceived.

To maintain backward compatibilty Application.cfm and OnRequestEnd.cfm should be cased accordingly. Not sure if Adobe will change this (I've asked in the past - they said unlikely). Alternative is obvously Apllication.cfc (cased as a poke!).

Not an issue usually but if your app winds up on another OS that IS stricter well... better safe than sorry.
Always use lower case for file names where possible, apart from the Application.cfm/OnRequestEnd.cfm. Should be no dramas then.

Just like HTML or CSS attributes lowercase is the accepted norm. Apply it to your filenames too like act_update_tableusers.cfm as opposed to act_Update_TableUsers.cfm.
@Peter, you started your comment (that I was replying to) with "Wrong!". If that's neither "shouting' or "saying anyone is wrong", then I honestly don't know what is. :-)

More than that, you seem stuck on your issue. I would seriously challenge you to look closely at the blog entry, and your comments, and how I've tried to acknowledge your point, yet you keep pressing it for some reason. I understand doing that when one feels they are not being heard.

But you're not saying anything we don't already acknowledge, so why keep pressing it? Bottom line: Christopher has presented a problem. Let's focus solely on that (with respect to this whole "case" issue).

Otherwise I would ask that we drop any other discussions with respect to case in CFML. We've gone WAY off topic of the original post. Thanks for trying to help, though.
Charlie, I'm noticing the same issue with case sensitivity as well. I just installed CF10 developer edition using the internal Tomcat webserver on Windows 7 32-bit. I have a site and now none of my css files are showing up. When I do a view source I see "/fps/pub/AIA/scripts/text.css" as one of my resources, when I try and navigate to that I get "The requested resource (/fps/pub/AIA/scripts/text.css) is not available." However, when I navigate to "/FPS/pub/AIA/scripts/text.css" I all of a sudden see the css file.

I also found a post on the Adobe forums regarding this.
http://forums.adobe....
# Posted By Chuck S | 5/22/12 3:11 PM
HI Charlie

I was glad to learn to know you in Zurich, SOTR12. I was the orange one.

Question: I was also in the CF10 beta program and I thought I saw a function described to get the device context of the client. I.e. such as the client's screen dimensions, flash availability, whatever. Do I miss someting there or is this the ClientInfo you mention? Or am I completely bogus?

Thanks,
Martin
# Posted By Martin Baur | 5/24/12 1:22 PM
Thanks for pointing out the forum entry, Chuck. I would respectfully ask that all with case issues with CF10 take their comments there. I am not seeing such an error (as Christopher first raised, of a CFM file. I had not tried a CSS file as you mention, Chuck.)

So it seems that the issue is not as obvious as "CF10's internal web server is always case sensitive", if anyone might take that away from the discussion in comments above. Just trying to help folks be objective in what they're observing/reporting. Hope whatever the problem is for some is resolved.

Again, I'd ask that we curtail further discussion of case issues (unless someone reports a solution or discovery of why it's an issue for some and not others.) If you want to add to the chorus of those with a problem, please do it in the forum that Chuck pointed to.

@Martin, finally, thanks for the kind regards. As for the device details, it seems that was not implemented finally, from the early mentions during the prerelease tour events. (As for your own experience, remember that "The first rule about being on the beta is never talk about being on the beta. :-)

But no, the clientinfo stuff is NOT related to that, but rather is purely database-related. More on it in the CF10 docs.
Hi Charlie,

First, _awesome_ work here!! :)

Second, just a couple notes:

1) I see the CF10 case-sensitivity issues (mentioned in the comments) are now scheduled to be fixed: #3199283 (marked Fixed/ToTest) & #3199281 (marked BugVerified/ToFix).

2) Tho a hotfix did remove cfform's default action from pre-CF10 versions due to XSS risk, CF10 resolved the XSS risk and restored cfform's default action in the final release. CF10 seemingly runs encodeForHTMLAttribute() on the cgi.script_name portion and runs encodeForURL() on each name & value in the query string portion. Here is an example, to show why it was restored in CF10:

- index.cfm: <cfwindow|layoutarea|etc source="page.cfm?name=value&.."..
- page.cfm: <cfform><cfinput type="submit" name="submit" /></cfform>

In this example, the parent page (index.cfm) passes URL params to the child page (page.cfm). The child page contains a self-posting form. When CF writes the default cfform action, it includes the query string. Thus, the action page (itself, since its self-posting) would then receive the URL params.

Well, the hotfix's removal of the default form action caused these forms to no longer pass the URL params. This is b/c default browser behavior is to not pass the URL params when an action-less form is submitted. So, thanks to Shilpi, that bullet regarding cfform's action no longer pertains to CF10 final. w00t!

Thanks,
-Aaron
Thanks for that, Aaron, both for the kind regards, and for the update on the coming changes.

And as for that last point about the cfform action and url vars, this is one of those things were this entry being written based on the beta docs did come back to bite. I have made some changes to the entry since then, and I will strike out this bullet and refer readers to the comment here. Thanks for your added details.
Hi Charlie, you are master in CF. i want to ask my one problem that i face Case Sensitive Problem so could you help me for this?
Is the CRLF fix the reason why if you use this:

<cfcontent type="application/xml; charset=utf-8">

That it gets sent to the host as:

application/xml;charset=utf-8

The space after the semicolon is being removed...
# Posted By Brad | 7/16/14 11:22 AM
Ah, I found one more little hidden gem in CF10 that I'd not noticed when I posted this back in 2012: in the CF Admin, on the Settings page, there is a new "Maximum Output Buffer size" which defaults to 1024.

I've confirmed that this was NOT in a CF9 CF Admin (specifically 9.0.2, which was the last version of CF9), so this is indeed a new setting in the Admin as of CF10. (Of course, it could be that there was such a buffer in 9 and earlier, affected only by an underlying XML or property file, which was only exposed in the Admin as of 10.)

This could therefore influence various CFML processing based on page buffering. It's also mentioned as something to note in the CF10 and 11 lockdown guides.

As for errors you may get, like this:

"ColdFusion was unable to add the text you specified to the output stream. This is probably because you have already used a CFFLUSH tag in your template or buffered output is turned off."

I'll just note that folks were getting that with CF9 (such as reported here, http://ethermuse.blo..., when someone moved to from CF7 to 9), and he found the problem was simply about unexpected CFFLUSH tags, and in his case NOT related to any output buffering setting, whatever the message may have been referring to.
Copyright ©2024 Charlie Arehart
Carehart Logo
BlogCFC was created by Raymond Camden. This blog is running version 5.005.
(Want to validate the html in this page?)

Managed Hosting Services provided by
Managed Dedicated Hosting