Subject: Proposing Status Codes

From: Mark Nottingham <[email-masked]>
Date: Tue, 12 Jun 2012 09:49:12 +1000

One of the things that has bothered me for a while is that status codes are a scarce resource, and making a "I have an idea" proposal effectively consumes one, at least for a while.

E.g., my proposal for 430 Would Block in draft-nottingham-http-pipeline had us using 431 for Request Header Fields Too Large, even though 430 might not see the light of day.

I think we might improve this by adding something like:

"""
Proposals for new status codes that are not yet widely deployed SHOULD NOT specify a specific code until there is clear consensus to register it; instead, early drafts can use notation such as "4xx" to indicate the class of the proposed status code, without consuming one prematurely.
"""

to <https://svn.tools.ietf.org/svn/wg/httpbis/draft-ietf-httpbis/latest/p2-semantics.html#considerations.for.new.status.codes>.

Thoughts?

--
Mark Nottingham   http://www.mnot.net/

---

From: Amos Jeffries <[email-masked]>
Date: Tue, 12 Jun 2012 12:08:28 +1200

On 12.06.2012 11:49, Mark Nottingham wrote:
> One of the things that has bothered me for a while is that status
> codes are a scarce resource, and making a "I have an idea" proposal
> effectively consumes one, at least for a while.
>
> E.g., my proposal for 430 Would Block in
> draft-nottingham-http-pipeline had us using 431 for Request Header
> Fields Too Large, even though 430 might not see the light of day.
>
> Proposals for new status codes that are not yet widely deployed
> SHOULD NOT specify a specific code until there is clear consensus to
> register it; instead, early drafts can use notation such as "4xx" to
> indicate the class of the proposed status code, without consuming one
> prematurely.
> """
>
> to
> 
> <https://svn.tools.ietf.org/svn/wg/httpbis/draft-ietf-httpbis/latest/p2-semantics.html#considerations.for.new.status.codes>.
>
> Thoughts?

Sounds good. Also prevents old drafts lying around consuming numbers.

But, how do early deployments know what to test with for 
interoperability and possible long-term deployments?

AYJ

---

From: Roberto Peon <[email-masked]>
Date: Mon, 11 Jun 2012 17:15:22 -0700

I'd hope that early deployment != long-term deployment generally?

-=R

On Mon, Jun 11, 2012 at 5:08 PM, Amos Jeffries <[email-masked]> wrote:

>> <https://svn.tools.ietf.org/**svn/wg/httpbis/draft-ietf-**
>> httpbis/latest/p2-semantics.**html#considerations.for.new.**status.codes<https://svn.tools.ietf.org/svn/wg/httpbis/draft-ietf-httpbis/latest/p2-semantics.html#considerations.for.new.status.codes>
>> >.
>>
>> Thoughts?
>>
>
> But, how do early deployments know what to test with for interoperability
> and possible long-term deployments?
>
> AYJ
>
>

---

From: James M Snell <[email-masked]>
Date: Mon, 11 Jun 2012 17:21:52 -0700

My apologies... accidentally responded directly to Mark instead of the
group... Another possible approach to early implementation is to
designate a range of experimental, non-production status codes for
early development purposes that MUST NOT be used in production... once
the draft progresses to a reasonable stage (well beyond -01, the real
status can be assigned to the spec by the registrar rather than by the
spec author. I know schemes like this can tend to be problematic (e.g.
all those damn X- HTTP headers) so I'm not sure if it's a path we
should go down, but it's an idea at least.

---------- Forwarded message ----------
From: Mark Nottingham <[email-masked]>
Date: Mon, Jun 11, 2012 at 4:58 PM
Subject: Re: Proposing Status Codes
To: James M Snell <[email-masked]>

On 12/06/2012, at 9:55 AM, James M Snell wrote:

> Perhaps one solution is to require the registrar to assign the status code upon completion... However, with any such late assignment approach, we run the risk of blocking important, valuable early implementation.

Yeah, I thought about that, but until the registry is actually
reflecting deployment practice, I think there needs to be more
oversight. What I'd like to see is having a -00 draft with 5xx (for
example) specified, but maybe -01 (or -02, or..) going ahead and
picking one, based on community input, once it's clear that there's
real interest.

---

From: Amos Jeffries <[email-masked]>
Date: Tue, 12 Jun 2012 12:28:04 +1200

> should go down, but it's an idea at least.

You mean 490-499 for a 4XX exeprimental status?
Or completely out of the way range like 700-799? with requirement that 
once RFCs exist the experiments be dropped.

Amos

---

From: Mark Nottingham <[email-masked]>
Date: Tue, 12 Jun 2012 10:44:41 +1000

On 12/06/2012, at 10:28 AM, Amos Jeffries wrote:

> Or completely out of the way range like 700-799? with requirement that once RFCs exist the experiments be dropped.

I think that managing that changeover would be very tricky.

However we do this, it's not going to be perfect; I just want to avoid the more experimental / tentative proposals from consuming codes (especially since they sometimes sit for a while).

E.g., a -00 draft would use "4xx", and maybe through -01, -02, but once it was clear it has momentum, and people want to start implementing, *then* you choose a code.

Cheers,

---

From: James M Snell <[email-masked]>
Date: Mon, 11 Jun 2012 17:52:41 -0700

+1 for picking it post -02.
On Jun 11, 2012 5:46 PM, "Mark Nottingham" <[email-masked]> wrote:

> However we do this, it's not going to be perfect; I just want to avoid the
> more experimental / tentative proposals from consuming codes (especially
> since they sometimes sit for a while).
>
> E.g., a -00 draft would use "4xx", and maybe through -01, -02, but once it
> was clear it has momentum, and people want to start implementing, *then*
> you choose a code.
>
> Cheers,
>
>
> --