Re: [hybi] Versioning is a anti-pattern

John Tamplin <jat@google.com> Fri, 03 September 2010 06:57 UTC

Return-Path: <jat@google.com>
X-Original-To: hybi@core3.amsl.com
Delivered-To: hybi@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id C4C6A3A67FA for <hybi@core3.amsl.com>; Thu, 2 Sep 2010 23:57:05 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -105.876
X-Spam-Level:
X-Spam-Status: No, score=-105.876 tagged_above=-999 required=5 tests=[AWL=0.100, BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_MED=-4, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id WZaT1IpNIvZa for <hybi@core3.amsl.com>; Thu, 2 Sep 2010 23:56:58 -0700 (PDT)
Received: from smtp-out.google.com (smtp-out.google.com [216.239.44.51]) by core3.amsl.com (Postfix) with ESMTP id C28C13A67F6 for <hybi@ietf.org>; Thu, 2 Sep 2010 23:56:52 -0700 (PDT)
Received: from wpaz29.hot.corp.google.com (wpaz29.hot.corp.google.com [172.24.198.93]) by smtp-out.google.com with ESMTP id o836vIXH003489 for <hybi@ietf.org>; Thu, 2 Sep 2010 23:57:19 -0700
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=google.com; s=beta; t=1283497039; bh=q4GDllJvhmWtEWlrgEddURC+ZzE=; h=MIME-Version:In-Reply-To:References:From:Date:Message-ID:Subject: To:Cc:Content-Type; b=IP08lXTT7pdAwkoAB0ENMmb6Rg3qx5Ag+umciY6+CED3DV1WFrMRJOubE0FLdW2v9 Mq9EyZtWzgWBjPUhophNg==
Received: from qwf7 (qwf7.prod.google.com [10.241.194.71]) by wpaz29.hot.corp.google.com with ESMTP id o836vH3P014388 for <hybi@ietf.org>; Thu, 2 Sep 2010 23:57:18 -0700
Received: by qwf7 with SMTP id 7so1900339qwf.0 for <hybi@ietf.org>; Thu, 02 Sep 2010 23:57:17 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=beta; h=domainkey-signature:received:mime-version:received:in-reply-to :references:from:date:message-id:subject:to:cc:content-type; bh=AWu+Me+67hK1sl9lu8WfpKgqw7//fHnNmJPiWf5zvxw=; b=lov1VmS60Zil0RXmlmxBrur6+sgcCbP19fOCY05nFIRgT0Oe2NU6lG9QsopeYGOFRX ooZ9PBhU1zy/anwqWo7A==
DomainKey-Signature: a=rsa-sha1; c=nofws; d=google.com; s=beta; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type; b=tL5pBbNgFvbyY1x3J96Ofbnxoj/kc6/3bHe3hcnLjP7bFhDFM1cvd9lcT4qqZtostP 6VSAl35BT9/RyyKE3r6Q==
Received: by 10.229.51.210 with SMTP id e18mr238271qcg.249.1283497030381; Thu, 02 Sep 2010 23:57:10 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.229.98.77 with HTTP; Thu, 2 Sep 2010 23:56:50 -0700 (PDT)
In-Reply-To: <alpine.DEB.2.00.1009030843230.25862@sirius>
References: <20100901224502.0519B3A687C@core3.amsl.com> <AANLkTikP1CF22fL0rBniXmrxEoBAbTNfzP9kyiNA4nbb@mail.gmail.com> <AANLkTi=_1m36ThFZTH_aGE_Unz0KTeexJq_74UGr2j+u@mail.gmail.com> <alpine.DEB.2.00.1009022022090.7470@tvnag.unkk.fr> <AANLkTinyQUYn_zRZKPC0Gp7MeT13O2jhXu1EyNLOojXR@mail.gmail.com> <AANLkTikkGGJ1dhzP7z-qnxiAs_Bus8rEecV0YBO9Uw5N@mail.gmail.com> <alpine.DEB.2.00.1009030843230.25862@sirius>
From: John Tamplin <jat@google.com>
Date: Fri, 03 Sep 2010 02:56:50 -0400
Message-ID: <AANLkTinknBSfH1GfzRunvu-W4LAO9u9Nq59LFnPBbJ+p@mail.gmail.com>
To: James Graham <jgraham@opera.com>
Content-Type: multipart/alternative; boundary="0016364ed8a690f31d048f5570d0"
X-System-Of-Record: true
Cc: hybi <hybi@ietf.org>
Subject: Re: [hybi] Versioning is a anti-pattern
X-BeenThere: hybi@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Server-Initiated HTTP <hybi.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/hybi>, <mailto:hybi-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/hybi>
List-Post: <mailto:hybi@ietf.org>
List-Help: <mailto:hybi-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/hybi>, <mailto:hybi-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 03 Sep 2010 06:57:06 -0000

On Fri, Sep 3, 2010 at 2:47 AM, James Graham <jgraham@opera.com> wrote:

> So, to makw sure I understand you correctly, you are proposing that future
> clients and servers support *all* the versions of the draft that have ever
> seen non-trivial deployment (possibly including hixie-75, likely including
> hixie-76, and presumably including more future versions that happen to line
> up with significant client releases)?
>

Speaking for myself, I think we are already likely in a position of
supporting v76 for some extended period of time.  Chrome tends to get
updated pretty quickly, though certain platforms may lag getting a new
release into stable.  Unless the final spec makes FF4.0 (and I don't know
how much lead time it would take to get it in), then it is likely to exist
there for some non-trivial period of time.  I suspect at least one more
intermediate version will see some deployment so we can get real-world data.

The point is, these clients will still exist whether there is a version in
new drafts or not.  Even the question of whether you care about making them
work is orthogonal to the question of whether to put a version on them or
not.  The only thing having a version does for you is to know which version
of the protocol the other end is speaking, rather than having to guess from
the information it sent.  Unless you just send something and hope it works,
you still ultimately decide "the remote endpoint is speaking v76" in either
case -- what you do with it after that is up to you -- it could be that you
drop the connection as incompatible, or it could be you speak v76 to it.

-- 
John A. Tamplin
Software Engineer (GWT), Google