Re: No-Vary-Search

Rory Hewitt <rory.hewitt@gmail.com> Tue, 18 June 2024 20:44 UTC

Received: by ietfa.amsl.com (Postfix) id 12F83C169400; Tue, 18 Jun 2024 13:44:03 -0700 (PDT)
Delivered-To: ietfarch-httpbisa-archive-bis2juki@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 121C0C15171B for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Tue, 18 Jun 2024 13:44:03 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.357
X-Spam-Level:
X-Spam-Status: No, score=-2.357 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HEADER_FROM_DIFFERENT_DOMAINS=0.25, HTML_MESSAGE=0.001, MAILING_LIST_MULTI=-1, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLACK=0.5, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=w3.org header.b="aIGbaUht"; dkim=pass (2048-bit key) header.d=w3.org header.b="HdY7qG0L"; dkim=pass (2048-bit key) header.d=gmail.com header.b="a7Rdzwvl"
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id vBBAT8JlKr-5 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Tue, 18 Jun 2024 13:43:59 -0700 (PDT)
Received: from mab.w3.org (mab.w3.org [IPv6:2600:1f18:7d7a:2700:d091:4b25:8566:8113]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 3D63AC157915 for <httpbisa-archive-bis2Juki@ietf.org>; Tue, 18 Jun 2024 13:43:25 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=w3.org; s=s1; h=Subject:Content-Type:Cc:To:Message-ID:Date:From:In-Reply-To: References:MIME-Version:Reply-To; bh=0fOb3gSep0h+WP4xgDmolTfuJ0VpTsW2BuWUmW3exHQ=; b=aIGbaUht/1Bf/rF3JOueQXN9Np HdRTR9o8ncDqrEcK8kskYg3sYH+RNv2QNCVtMcgDxX1o7p0OwS79RFqsQ8qrdZVmNU7SMXIsKVqXg Wbrik56G/SJlXsSslWoDopOgidS5T13n9K7DfBI7CdSoUzRRRZAuU67GlGQNW4JBuRpT/PGpbpNeo 43Hgjh4KTO1VgnR1Fi5Vv843dGg5CmngI/yaEzxqA6B+9UN++VN2g1HGttznWsNLnWuer9nSQs2OQ snVgHbx8+tIFMw9HiZOphzV4uJipkrxi2uPVREmp/zX3VjEHTSgqfkaQW9BfkehoePearTUYMDUba bdLb6hlw==;
Received: from lists by mab.w3.org with local (Exim 4.96) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1sJff4-00GaSH-0b for ietf-http-wg-dist@listhub.w3.org; Tue, 18 Jun 2024 20:42:38 +0000
Resent-Date: Tue, 18 Jun 2024 20:42:38 +0000
Resent-Message-Id: <E1sJff4-00GaSH-0b@mab.w3.org>
Received: from ip-10-0-0-224.ec2.internal ([10.0.0.224] helo=puck.w3.org) by mab.w3.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from <roryhewitt@gmail.com>) id 1sJff1-00GaRI-0I for ietf-http-wg@listhub.w3.internal; Tue, 18 Jun 2024 20:42:35 +0000
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=w3.org; s=s1; h=Content-Type:Cc:To:Subject:Message-ID:Date:From:In-Reply-To: References:MIME-Version:Reply-To; bh=0fOb3gSep0h+WP4xgDmolTfuJ0VpTsW2BuWUmW3exHQ=; t=1718743355; x=1719607355; b=HdY7qG0LjF3idH4vHbHQRz/rjB3bD2m+2f9LryvoEQK82slxXnSm1z5SLhtMCL7+HKFiZOdO4dx pnl0qzRnQB/z36CakER+PnsMETNw9u6z4oVHFQgNHgqo+WtxAwzyxmwu8PNgy/wp3BHpJIO8MrXJH apckqVeQvnFlKEAlDfXRwJgE47yS+JiQEpKa23bAnVpevsM+epsBU4sjPhYfdAjs80k9HgnxCSCmv Rz0BskiRoHKJ+cZYfy2j0v96GcGnDdCNSG6Q6t9iap6d2SWhqAxT8CQtJss4A4Dhm2MIkM82ogzi1 yv7/NQsotoYQPg/pa3YpVrueJgFKT4YF/SZg==;
Received-SPF: pass (puck.w3.org: domain of gmail.com designates 2a00:1450:4864:20::42f as permitted sender) client-ip=2a00:1450:4864:20::42f; envelope-from=roryhewitt@gmail.com; helo=mail-wr1-x42f.google.com;
Received: from mail-wr1-x42f.google.com ([2a00:1450:4864:20::42f]) by puck.w3.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from <roryhewitt@gmail.com>) id 1sJff0-0096l9-15 for ietf-http-wg@w3.org; Tue, 18 Jun 2024 20:42:35 +0000
Received: by mail-wr1-x42f.google.com with SMTP id ffacd0b85a97d-36226e98370so611284f8f.3 for <ietf-http-wg@w3.org>; Tue, 18 Jun 2024 13:42:34 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1718743350; x=1719348150; darn=w3.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=0fOb3gSep0h+WP4xgDmolTfuJ0VpTsW2BuWUmW3exHQ=; b=a7RdzwvlVRGClbVjRU7F7WsyQKBOOQ+/pX+9xZ73/7BeZXOYb2bdjWt1ye7rEqnW97 obAXap6Jom6SCnF6pc/scTykyiwT0TJlBfHTx4EhnxkQft8Pae7bI+S/QquaJUph9RqE FRw2XteQioiq95ve2iglwrltEAQ4KsNjTWAx3RmT967BZYADL/vXSeBCrFuFxzsLXE/z W2oF7MO0mgrDD7aoww+J2atNDnmEc3Su/73KkmX4GoNEnoat8XsS5AuJ4NEq6iSaXljQ tI10RUYgR0imZ5mp0J1+WepVFimz8FwBn/BvXptdyWtewOlVu3S+FyB0m5BzGu0IwY5V BlCQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1718743350; x=1719348150; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=0fOb3gSep0h+WP4xgDmolTfuJ0VpTsW2BuWUmW3exHQ=; b=tT89DyERc/yl/PRt2ongYUhTTYKeDHCfRmRwiStVbbBgYkMFyBcvKfHSp3OXtchxI9 Gy6V7/StIA7gm8g8yld1O4E+bjJvTf5FMX9wiB1L3EcMRkF1ILkp+Xugjxuq2GEsGc+2 XxN4cnT5IXr+ht6F143kCatTzaBWoat7wS8gxIgSiz1BXOesPz0UDvQ5gPtfNSj6WcVP KBpCem0wqDYAeerfjN3m5GgDifxUSL1kB/0zm1aVItZKfX4ZTi0ro/6tI8VmaFKThcu2 MV1qEtGrEItoEIOu5KZIStjnNtzL8JAf4GJICPQDJaK9ymh+4OXcRKTB+4tQUVo+Q3Tt zgjQ==
X-Gm-Message-State: AOJu0YxFYP8s2978qD6voHUAQC3csxHo6JgVoRvlkXmo61LhOZgVEr/Y gPat2KFJS5arvSFFttyXh3Mv5cAjzMcMtWIDbC9iyjB5mZ6VVZFXpKRQLq8w8thCGevOJYygCzF G4h0bQYrWJRDgZlL/n3cX+L0fXCm41w==
X-Google-Smtp-Source: AGHT+IHqlrDBvQQy0j2qQoojilLX1ynPhWcOs6yhOgdaLeC/Az7yxUPdeyeAMycEmq9l+1YW6c59Eg8dIIZIMAG/y+Q=
X-Received: by 2002:a5d:4d4e:0:b0:362:c0c4:fbc2 with SMTP id ffacd0b85a97d-363170ecbaamr616102f8f.2.1718743349728; Tue, 18 Jun 2024 13:42:29 -0700 (PDT)
MIME-Version: 1.0
References: <CACuR13cnHHoRv_Z-HtJeOyJqZb7AVU-_udQ=R_x9qQ1_JeP=KQ@mail.gmail.com> <CAEmMwDwZ8RB0Zz5GCbPeSFH-1tVgTW-hy4_0Fd1L90hNi3h0RA@mail.gmail.com>
In-Reply-To: <CAEmMwDwZ8RB0Zz5GCbPeSFH-1tVgTW-hy4_0Fd1L90hNi3h0RA@mail.gmail.com>
From: Rory Hewitt <rory.hewitt@gmail.com>
Date: Tue, 18 Jun 2024 13:42:18 -0700
Message-ID: <CAEmMwDwxpy7QvJBx01WZpHmH=c2QKE6Q7iBAQisNSqRaxBoz3Q@mail.gmail.com>
To: Jeremy Roman <jbroman@chromium.org>
Cc: ietf-http-wg@w3.org
Content-Type: multipart/alternative; boundary="000000000000d21e35061b301ea4"
X-W3C-Hub-DKIM-Status: validation passed: (address=roryhewitt@gmail.com domain=gmail.com), signature is good
X-W3C-Hub-Spam-Status: No, score=-3.4
X-W3C-Hub-Spam-Report: BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, DMARC_PASS=-0.001, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLACK=1.7, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, W3C_AA=-1, W3C_DB=-1, W3C_WL=-1
X-W3C-Scan-Sig: puck.w3.org 1sJff0-0096l9-15 7360a2aec9a457b19a1f109888009a1f
X-Original-To: ietf-http-wg@w3.org
Subject: Re: No-Vary-Search
Archived-At: <https://www.w3.org/mid/CAEmMwDwxpy7QvJBx01WZpHmH=c2QKE6Q7iBAQisNSqRaxBoz3Q@mail.gmail.com>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/52025
X-Loop: ietf-http-wg@w3.org
Resent-Sender: ietf-http-wg-request@w3.org
Precedence: list
List-Id: <ietf-http-wg.w3.org>
List-Help: <https://www.w3.org/email/>
List-Post: <mailto:ietf-http-wg@w3.org>
List-Unsubscribe: <mailto:ietf-http-wg-request@w3.org?subject=unsubscribe>

Hi Jeremy,

In the two examples sections, can you provide an example of a URL and show
how specifying this header will change caching - your examples give some
"Input => Result" answers in a table, but I think an actual sample URL
(e.g. https://www.example.com?you=cool&me=notcool) showing the effect of
various header values affect how the content should be cached would be
useful.

On Tue, Jun 18, 2024 at 1:20 PM Rory Hewitt <rory.hewitt@gmail.com> wrote:

> Hey Jeremy,
>
> > This was originally No-Vary-Query, but the web-exposed APIs call this
> part of the URL "search", so this change was requested in a W3C discussion.
>
> I can understand why you changed the name from "No-Vary-Query", but given
> that it's primarily a mechanism to change the way that content is cached, I
> think it makes sense to call it "No-Vary-Cache"
>
> I think this document needs a high-level overview section, explaining what
> you're trying to do and what specific problems you're trying to solve.
> You're clearly deep in the weeds on it (I don't mean that pejoratively!)
> but for those of us that are coming at it fresh, it needs something there
> to tell us about the idea/project.
>
> On Tue, Feb 20, 2024 at 6:14 PM Jeremy Roman <jbroman@chromium.org> wrote:
>
>> Hello HTTPWG:
>>
>> This is tangentially unrelated to my previous email, but I've split it
>> into another thread to avoid entangling the two.
>>
>> A developer previously reported to us that their ability to use the
>> prefetch cache was limited because their prefetch request URLs needed to
>> include certain query parameters which are different from the navigation
>> request URL, even though these URLs do not affect the resource the server
>> ultimately produces (and therefore, the client can safely use the
>> resource). The explainer
>> <https://github.com/WICG/nav-speculation/blob/main/no-vary-search.md> we
>> wrote goes through some of the possible use cases in more detail.
>>
>> The semantics we have right now (and the header name, No-Vary-Search¹)
>> are designed with the concept of being implementable in non-browser HTTP
>> implementations, but since browser use cases were what we are focused on,
>> there are some places where the semantics rely on, e.g., WHATWG URL
>> <https://url.spec.whatwg.org/>, which may vary in subtle ways from other
>> concepts of the meaning of the query string (since IETF HTTP doesn't
>> currently take a position on that as far as I know).
>>
>> The specification draft
>> <https://wicg.github.io/nav-speculation/no-vary-search.html> is
>> currently hosted by the W3C's Web Incubator Community Group (WICG) and
>> we've previously discussed it in a W3C context, but it was suggested that
>> we bring it to HTTPWG's attention, too, and if there is interest among
>> participants it could migrate to an HTTPWG RFC instead of continuing
>> incubation in the web standards venues.
>>
>> ¹ This was originally No-Vary-Query, but the web-exposed APIs call this
>> part of the URL "search", so this change was requested in a W3C discussion.
>>
>