2016/04/02分のコミットです。
CHANGELOGにのったコミットは以下の通りです。
- ETags: Introduce
Response#strong_etag=
and#weak_etag=
and analogous options forfresh_when
andstale?
.Response#etag=
sets a weak ETag. - ETags: No longer strips quotes (") from ETag values before comparing them. Quotes are significant, part of the ETag. A quoted ETag and an unquoted one are not the same entity.
- ETags: Support
If-None-Match: *
. Rarely useful for GET requests; meant to provide some optimistic concurrency control for PUT requests.
Merge pull request #24387 from jeremy/strong-etag
Action Packの修正です。Etagに関連する複数の対応が一つのコミットでまとめて行われています。
If-None-Match
に*
が指定された場合のサポートを追加。- ETagの値を比較する前に、クオート(
"
)を削除していたのを、削除しないよう修正しています。元々の処理だと、クオートされたETagとクオートされてないETagが同じエンティティだと判定されてしまっていたが、厳密には違うエンティティである為。 Response#strong_etag=
、Response#weak_etag=
メソッドを追加、及び、#fresh_when
、#stale?
メソッドにweak_etag
、strong_etag
オプションを追加しています。strong_etag
とweak_etag
オプションが同時に指定された場合、strong_etag
の方が使用されるようになっています。
参考:ハイパーテキスト転送プロトコル -- HTTP/1.1 #14.19 ETag
activesupport/lib/active_support/core_ext/date_time.rb
、
activesupport/lib/active_support/core_ext/date_time/zones.rb
の修正です。
DateTime
クラスにDateAndTime::Zones
をincludeしていたのを、しないよう修正しています。
DateTime
クラスはDate
クラスを継承しており、Date
クラスの方でDateAndTime::Zones
をincludeしている為との事です。
Grammer fix in comment: capitalize first word in sentence [ci skip].
actionpack/lib/action_controller/metal/conditional_get.rb
のdocの修正です。
fresh_when
メソッドのdocのグラマーの修正を行っています。