Re: [hybi] Versioning is a anti-pattern

David Orchard <orchard@pacificspirit.com> Thu, 02 September 2010 21:41 UTC

Return-Path: <dorchard100@gmail.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 830E83A69B8 for <hybi@core3.amsl.com>; Thu, 2 Sep 2010 14:41:40 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.977
X-Spam-Level:
X-Spam-Status: No, score=-1.977 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, FM_FORGED_GMAIL=0.622]
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 beTh6itAEtnv for <hybi@core3.amsl.com>; Thu, 2 Sep 2010 14:41:39 -0700 (PDT)
Received: from mail-bw0-f44.google.com (mail-bw0-f44.google.com [209.85.214.44]) by core3.amsl.com (Postfix) with ESMTP id 08CE13A68A3 for <hybi@ietf.org>; Thu, 2 Sep 2010 14:41:38 -0700 (PDT)
Received: by bwz9 with SMTP id 9so1172550bwz.31 for <hybi@ietf.org>; Thu, 02 Sep 2010 14:42:07 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:sender:received :in-reply-to:references:date:x-google-sender-auth:message-id:subject :from:to:cc:content-type:content-transfer-encoding; bh=OQsvBCxv39mjL612KSx03tNzP6Fv5n39BVUGF0LJEas=; b=Vi7hg3Ubtr2g2ied7me+Wb8Of2dsmFzZ8vwT05/qsnOD7wioS/Yk9Hqss0Bgm4ORCX stGi21x4RLY5ojGyfLsXJ6ez6230Wru3EJvozqQwXKlNHnnxuX8a9cfCYj9nU4jIEHLN 81fvX0FCygDbyV2ri9vXeebWYEhQmJaCq1T04=
DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type :content-transfer-encoding; b=wtAbW4dXR2mT9DWl7gWPNLImlB7RFrdVrlO7OoW0KV5TdbW+61lb0SsJCTgoVtUME9 Jq0IF4TH/BMuFOUCuuTlUJ675gZfaWJdRnHzA4cBnSahXkx9Ip07pZ3Yh1fQA2+E0lat p8+tpWStCqdykuyEh8Hy7BUmW4cdg3KJkOAjo=
MIME-Version: 1.0
Received: by 10.204.117.136 with SMTP id r8mr7002698bkq.119.1283463727777; Thu, 02 Sep 2010 14:42:07 -0700 (PDT)
Sender: dorchard100@gmail.com
Received: by 10.204.121.68 with HTTP; Thu, 2 Sep 2010 14:42:07 -0700 (PDT)
In-Reply-To: <alpine.DEB.2.00.1009022022090.7470@tvnag.unkk.fr>
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>
Date: Thu, 02 Sep 2010 14:42:07 -0700
X-Google-Sender-Auth: 7PcmMm8tqCi1GyRAzWoCSQL312E
Message-ID: <AANLkTinyQUYn_zRZKPC0Gp7MeT13O2jhXu1EyNLOojXR@mail.gmail.com>
From: David Orchard <orchard@pacificspirit.com>
To: Daniel Stenberg <daniel@haxx.se>
Content-Type: text/plain; charset="ISO-8859-1"
Content-Transfer-Encoding: quoted-printable
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: Thu, 02 Sep 2010 21:41:40 -0000

I think the expression that versioning is an anti-pattern for the web
is in the context of human authored HTML documents, where people
notoriously view source and cut 'n paste that results in the wrong
DTDs, etc.  I don't think that a large number of people will be
cutting and pasting text containing versioning information to hybi
protocol messages, so that advice doesn't apply to hybi imo.

However, protocols that have many optional features might not do well
with single string version identifiers.  HTTP's use of version numbers
asserting the capabilities of the server rather than the features used
by the message has worked pretty well at a coarse grained level but
the different feature negotiations have had varying degrees of
success.

A lack of versioning, and I don't mean just using identifiers, is
pretty risky.  Interesting question as to whether HTTP version
identifiers have helped or not, and I tend to think they have helped.

Cheers,
Dave

On Thu, Sep 2, 2010 at 11:25 AM, Daniel Stenberg <daniel@haxx.se> wrote:
> On Wed, 1 Sep 2010, Adam Barth wrote:
>
>> Please don't add versioning to the protocol.  Versioning is a anti-pattern
>> for the web.
>
> We've seen this mentioned before on this list but without a lot of
> clarifications and I'm curious:
>
> What are the other transfer protocols for which versioning have failed so
> significantly that versioning in protocols can be called an anti-pattern?
>
> Or isn't it so that it truly is an anti-pattern for the *web* (with the
> emphasis added on the web word) and we're not really doing web here, we're
> discussing a transfer protocol.
>
> HTTP is the primary "web protocol" and AFAIK, its versioning is usually not
> considered a failure.
>
> --
>
>  / daniel.haxx.se
> _______________________________________________
> hybi mailing list
> hybi@ietf.org
> https://www.ietf.org/mailman/listinfo/hybi
>