Re: Deploying new expectation-extensions

Adrien de Croy wrote:
> 1: where the extension was semantically incompatible with the current 
> version of HTTP. 
> 2: where the extension was optional in the current version but for some 
> reason indispensable to the client.
...
> Version changes I think is a better way to cope with the first class of 
> use-cases.

That's assuming agents reject a message with a newer version number...

Since they don't reject expectations, I would be surprised if they
consistently reject newer version numbers.

> There's no difference between a chain of 
> agent->intermediary->server supporting a newer version number than 
> supporting an extension.  It's just a matter of labelling.

Well, in principle you can try extensions privately ("Expect:
x-my-experiment") and they can be orthogonal.  Version numbering
forces linearity: if you handle feature Z, you must handle feature X
and Y too.

Also, agents tend to report they are HTTP/1.1 even when they are
grossly non-compliant.  I suspect that's due to it being a version to
aim for, and they do support some features of 1.1, and reporting the
version is advantageous.  If expectations were able to be used, naming
individual features, I suspect agents wouldn't pretend to handle all
features.

In practice it seems there aren't that many "features" to be concerned
about.

Peculiar things like chunked requests have long been unusable.... I
guess they might have fitted into the scheme.

-- Jamie

Received on Friday, 4 April 2008 06:44:07 UTC