Reported by Robert Adkins <firstname.lastname@example.org>
Reported by Yonghui Luo.
The ConditionalGet, ContentLength, Deflator, and ShowStatus middleware components were reading/checking headers case sensitively.
This is a backwards incompatible change that removes header name normalization while attempting to keep most of its benefits. The header name case is preserved but the Hash has case insensitive lookup, replace, delete, and include semantics.
… environment variable data included with the Rack::Request instantiation memoization.