An interesting perspective:
“…this new weird and programmer-unfriendly behavior of Firefox’s.” [emphasis mine]
I mean, I’ve never thought of behaving correctly with respect to the specification as “programmer-unfriendly” before. Dave mentions that Firefox “…implements permanent redirects without looping the server in…”, but I don’t even know what that means.
I know the issue Dave had was discussed in the comments on his earlier post, but still; 301 (Moved Permanently) has been essentially unchanged in the HTTP/1.1 specification since 1997:
“Clients with link editing capabilities SHOULD automatically re-link references to the Request-URI to one or more of the new references returned by the server, where possible. This response is cachable unless indicated otherwise.”
and that was only slightly changed from HTTP/1.0 in 1996:
“Clients with link editing capabilities should
automatically relink references to the
Request-URIto the new reference returned by the server,
I’m guilty of my fair share (and probably more than my fair share) of shortcut-coding, of implementing only the methods I need at the time, but it’s never occured to me to place the blame so squarely on a specification-compliant client application.