In Rails 2.x, if you have an XML template, and try to render a template that does not have an XML version, but does have an HTML version, it will be rendered. XML and HTML are just examples; this is true for any two mime types.
Is this behavior important? First of all, I'm not sure this is the right behavior, since it's possible to be explicit about the format you wish to use and rendering a template from a different MIME seems likely to be a mistake. Second of all, it requires us to widen our search criteria when looking for subsidiary templates (like partials), and prevents us from efficiently caching the template for a given format (instead, we need to cache the template for a given Array of formats, which is much less efficient).
I also think that restricting subsidiary templates would be consistent with other (non-breaking) fixes we've done to ensure that layouts match the MIME type of the template they are wrapping (which allowed us to eliminate the exempt_from_layout hacks).
Thanks for your attention,