Subject: [NNTP] Snapshot

From: clive at demon.net (Clive D.W. Feather)
Date: Mon Nov 8 09:22:30 2004

I've put a snapshot of the current text up at:
  <http://www.davros.org/nntp-texts/draft25.pre-1.txt>
  <http://www.davros.org/nntp-texts/draft25.pre-1.html>
  <http://www.davros.org/nntp-texts/draft25.pre-1.nr>
so that people can see where we are. This includes:
* new restrictions on command names and extension labels;
* no optional commands any more;
* new LIST extension;
* consequential changes;
* other minor fixes since draft 24.
It does not deal with all the version number and MODE READER stuff we're
still discussing, since that doesn't feel solid enough yet to try to word.

Please could people look at the changed sections and check I haven't missed
any consequential stuff. Thanks.

Changed sections:
* 3.1
* 3.2.1 (503 response, 401 response, 400 response)
* 5.2 (MODE-READER => MODE_READER)
* 5.3
* 7.3.2
* 7.6 (some sections removed, 7.6.3 is new)
* 7.6.2.2
* 7.6.2.3
* 8 (minor wording change, and break out 8.1, thus renumbering 8.2 onwards)
* 8.1
* 8.2 extra entry
* 8.6.2.1 no longer optional
* 8.6.2.2
* 8.6.2.3
* 8.8 new section
* 9, including new 9.6 and other changes
* 12 (add Mark, correct Ken)
* C (215 response code)
* D.4 new section

-- 
Clive D.W. Feather  | Work:  <[email-masked]>   | Tel:    +44 20 8495 6138
Internet Expert     | Home:  <[email-masked]>  | Fax:    +44 870 051 9937
Demon Internet      | WWW: http://www.davros.org | Mobile: +44 7973 377646
Thus plc            |                            |

---

From: ken at oceana.com (Ken Murchison)
Date: Mon Nov 8 10:48:38 2004

> any consequential stuff. Thanks.

Couple of things I noticed:

8.8.1.2, 2nd paragraph, last sentence: "itand" should be "and it"

C, 215:  you show "LIST" as a valid command.  Unless I missed it, we no 
longer document "LIST" as a shortcut to "LIST ACTIVE *".  Are you using 
this as a way to capture the extensions to LIST?  In that case maybe it 
would make more sense to just have "LIST" and nothing else, since this 
will include "LIST ACTIVE", "LIST HEADERS", etc.

D.[1-4], MODE READER interaction: I think Russ had agreed to changing 
the text to read:

"On servers that require the use of the MODE READER command, the
LISTGROUP command can only be used after the MODE READER command."

-- 
Kenneth Murchison     Oceana Matrix Ltd.
Software Engineer     21 Princeton Place
716-662-8973 x26      Orchard Park, NY 14127
--PGP Public Key--    http://www.oceana.com/~ken/ksm.pgp

---

From: clive at demon.net (Clive D.W. Feather)
Date: Tue Nov 9 00:43:11 2004

> 8.8.1.2, 2nd paragraph, last sentence: "itand" should be "and it"

Just "it", actually. But thanks.

> longer document "LIST" as a shortcut to "LIST ACTIVE *".

You missed it. It's phrased as "If no wildmat is specified, the keyword
ACTIVE MAY be omitted without altering the effect of the command.".

> Are you using 
> this as a way to capture the extensions to LIST?

Yes. Following Russ's suggestion to make LIST ACTIVE.TIMES into an
extension, the most logical approach seemed to be to have a generic LIST
extension.

> In that case maybe it 

The problem is that:
- we want LIST ACTIVE, LIST EXTENSIONS, and LIST NEWSGROUPS to be mandatory;
- LIST EXTENSIONS doesn't use the 215 response code;
- we want LIST HEADERS and LIST OVERVIEW.FMT to be part of their respective
  extensions, not part of a generic LIST extension;
- LIST HEADERS takes an argument other than a wildmat.

If we have a separate LIST extension, you're going to end up with these
sort of warts. I encourage everyone to look at this wording and see whether
they think it better than having optional commands that would require
separate LIST EXTENSIONS entries. I can put it back fairly easily if
necessary.

> LISTGROUP command can only be used after the MODE READER command."

Still on my list, waiting for us to resolve the MODE READER issues (since
they could affect all this wording).

---

From: ken at oceana.com (Ken Murchison)
Date: Tue Nov 9 06:26:15 2004

> ACTIVE MAY be omitted without altering the effect of the command.".

OK.  I didn't see it in the ABNF.  But I'm guesing we don't want to 
promote this.

> extension, the most logical approach seemed to be to have a generic LIST

Right, I agree with this.  Not arguing that point.

> - LIST EXTENSIONS doesn't use the 215 response code;

Yeah, I forgot that LIST EXTENSIONS uses a different response which does 
make things a little murky.

>   extensions, not part of a generic LIST extension;

Yes, but LIST is both an extensions *and* a command, so I think grouping 
the mandatory LIST variants with the LIST extensions (as just "LIST" 
commands) is not out of bounds.  Its not a big deal and I'll defer to 
the consensus.

> - LIST HEADERS takes an argument other than a wildmat.

But its still a "LIST" command.

---

From: clive at demon.net (Clive D.W. Feather)
Date: Tue Nov 9 06:44:25 2004

Ken Murchison said:
> OK.  I didn't see it in the ABNF.

  list-active-command = "LIST" [WS "ACTIVE" [WS wildmat]]

Note the outer brackets.

> commands) is not out of bounds.

Except then we get a mandatory extension! I think.

I'm not totally happy with what we've got (though it's better than what we
had), so if you've any suggestions as how to arrange it better, I'd be
happy to think them through.

> But its still a "LIST" command.

True, and that's relatively minor.

---

From: ken at oceana.com (Ken Murchison)
Date: Tue Nov 9 06:50:03 2004

>   list-active-command = "LIST" [WS "ACTIVE" [WS wildmat]]

Argh!  I'm batting a thousand.  Clearly I need to either drink more or 
less.  ;)  Sorry about the noise.

> happy to think them through.

Still pondering.  If I come up with anything more useful than my 
previous blathering, I'll pass it along.

---

From: rra at stanford.edu (Russ Allbery)
Date: Tue Nov 9 19:09:36 2004

> will include "LIST ACTIVE", "LIST HEADERS", etc.

LIST was the original command.  In an ill-advised move in retrospect
(hindsight is 20-20 and all), when additional types of information were
added, they were bolded on to LIST and LIST started behaving differently
based on its second argument.  This was possible since the original LIST
command didn't take any arguments and just returned the whole newsgroup
list.  See RFC 977, which documents the original LIST command.

Since all servers support LIST with no arguments and since RFC 977 defines
it, we need to continue to allow for it, as odd as it is now that we have
other types of LIST commands.

The original LIST description in RFC 977 is a fascinating read,
particularly the discussion of newsgroup flags, and a pretty clear example
of why RFC 977 is hopelessly obsolete for writing real NNTP clients.

-- 
Russ Allbery ([email-masked])             <http://www.eyrie.org/~eagle/>