<div dir="ltr">Thanks! I wrote up your suggested edits here: <a href="https://github.com/httpwg/http-extensions/pull/1980">https://github.com/httpwg/http-extensions/pull/1980</a><div><br clear="all"><div><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr">~ Ari Chivukula (Their/There/They're)<br></div></div></div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Jan 25, 2022 at 5:28 PM John Wilander <<a href="mailto:wilander@apple.com">wilander@apple.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div style="overflow-wrap: break-word;">Hi Ari!<div><br></div><div>Apple WebKit and CFNetwork (HTTP stack for Apple ports of WebKit) support a 400-day max-age upper limit with some caveats.</div><div><br></div><div>We think there should always be a limit (your case 1), that user agents should be free to use a lower or a higher limit, and that 400 days is a good recommended limit to put in the spec (your case 2 but softer).</div><div><br></div><div>Some detailed feedback:</div><div><br></div><div>We understand your ≈13 months analysis but wanted to point out that there are things called “annual” that can go a bit further than 13 months, for instance tax filing which can be done early one year, late the next, and result in a ≈440 day span.</div><div><br></div><div>There are use cases for cookies outside of web browsers where no limit still makes sense. For instance machine-to-machine communication over HTTP. The spec may want to call that out.</div><div><br></div><div>   Regards, John</div><div><div style="color:rgb(0,0,0)"><br></div><div><br><blockquote type="cite"><div>On Jan 19, 2022, at 8:12 AM, Ari Chivukula via webkit-dev <<a href="mailto:webkit-dev@lists.webkit.org" target="_blank">webkit-dev@lists.webkit.org</a>> wrote:</div><br><div><div dir="ltr"><div>I'd like to get WebKit's position on:</div><div>(1) Having an explicit upper limit for Cookie Expires/Max-Age attributes</div>(2) Having an explicit upper limit for Cookie Expires/Max-Age attributes that's less than or equal to 400 days<div><br></div><div><a href="https://httpwg.org/http-extensions/draft-ietf-httpbis-rfc6265bis.html#name-the-expires-attribute-2" target="_blank">https://httpwg.org/http-extensions/draft-ietf-httpbis-rfc6265bis.html#name-the-expires-attribute-2</a><br></div><div><a href="https://github.com/httpwg/http-extensions/pull/1732" target="_blank">https://github.com/httpwg/http-extensions/pull/1732</a><br><a href="https://github.com/mozilla/standards-positions/issues/592" target="_blank">https://github.com/mozilla/standards-positions/issues/592</a><br></div><div><a href="https://bugs.chromium.org/p/chromium/issues/detail?id=1264458" target="_blank">https://bugs.chromium.org/p/chromium/issues/detail?id=1264458</a><br></div><div><br></div><div>The draft of rfc6265bis now contains an upper limit for Cookie Expires/Max-Age attributes. As written:<br>`The user agent MUST limit the maximum value of the [Max-Age/Expiration] attribute. The limit MUST NOT be greater than 400 days (34560000 seconds) in duration. The RECOMMENDED limit is 400 days in duration, but the user agent MAY adjust the limit to be less. [Max-Age/Expiration] attributes that are greater than the limit MUST be reduced to the limit.`<br><br>400 days was chosen as a round number close to 13 months in duration. 13 months was chosen to ensure that sites one visits roughly once a year (e.g., picking health insurance benefits) will continue to work.<br><br>Safari is already partially compliant (has an upper age limit of 7 days when cookies are set  client side), while Firefox and Chrome both support cookies with expiration dates orders of magnitude longer than a millenia in the future.<br></div><div><br></div><div>According to measurements in Chrome of all cookies set about 20% have an Expires/Max-Age further than 400 days in the future. <span style="font-family:Roboto,Noto,sans-serif;font-size:13px;white-space:pre-wrap">Of that 20%: half target 2 years, a quarter target 10 years or more, and the remainder are spread over the rest of the range.</span></div><br clear="all"><div><div dir="ltr"><div dir="ltr">~ Ari Chivukula (Their/There/They're)<br></div></div></div></div>
_______________________________________________<br>webkit-dev mailing list<br><a href="mailto:webkit-dev@lists.webkit.org" target="_blank">webkit-dev@lists.webkit.org</a><br><a href="https://lists.webkit.org/mailman/listinfo/webkit-dev" target="_blank">https://lists.webkit.org/mailman/listinfo/webkit-dev</a><br></div></blockquote></div><br></div></div></blockquote></div>