roy@phri.UUCP (Roy Smith) (10/06/89)
Perusing my news spool directory tree, I noticed two different formats for Expires: headers. All the articles in news.announce.conferences have headers which look like the following (some header lines deleted): +---------------- |Newsgroups: news.announce.conferences |Subject: CFP: Optical Computing (April 8-12 '90, Japan) (In English) |Message-ID: <1989Sep5.000014.11070@mcmi.uucp> |Date: 5 Sep 89 00:00:14 GMT |Expires: 11/10/89 |Sender: denny@mcmi.uucp (Denny Page) |Approved: denny@mcmi +---------------- while the articles in news.newusers.questions have headers like this: +---------------- |From: tneff@bfmny0.UU.NET (Tom Neff) |Newsgroups: news.newusers.questions |Subject: When to Post, When to Mail? |Message-ID: <14644@bfmny0.UU.NET> |Date: 10 Sep 89 01:55:26 GMT |Expires: 10 Oct 89 00:00:00 GMT +---------------- It was always my understanding that the proper "Expires: " format is as in the second example. Is the first (mm/dd/yy) also legal? -- Roy Smith, Public Health Research Institute 455 First Avenue, New York, NY 10016 {att,philabs,cmcl2,rutgers,hombre}!phri!roy -or- roy@alanine.phri.nyu.edu "The connector is the network"
henry@utzoo.uucp (Henry Spencer) (10/10/89)
In article <4036@phri.UUCP> roy@phri.UUCP (Roy Smith) writes: >|Expires: 11/10/89 >|Expires: 10 Oct 89 00:00:00 GMT > It was always my understanding that the proper "Expires: " format is >as in the second example. Is the first (mm/dd/yy) also legal? In practice, most anything that getdate() will understand is a reasonable choice. In theory, it ought to conform to RFC822 as well, which the first format does not. Use of the first format is a dumb idea for another reason too: it's ambiguous. (US custom puts month first, British custom puts day first.) -- A bit of tolerance is worth a | Henry Spencer at U of Toronto Zoology megabyte of flaming. | uunet!attcan!utzoo!henry henry@zoo.toronto.edu
denny@mcmi.uucp (Denny Page) (10/13/89)
henry@utzoo.uucp (Henry Spencer) writes: >>|Expires: 11/10/89 >> It was always my understanding that the proper "Expires: " format is >>as in the second example. Is the first (mm/dd/yy) also legal? > >In practice, most anything that getdate() will understand is a reasonable >choice. In theory, it ought to conform to RFC822 as well, which the first >format does not. Use of the first format is a dumb idea for another reason >too: it's ambiguous. (US custom puts month first, British custom puts >day first.) Being the guilty party here... The reason that these have been showing up in news.announce.conferences since late July is mcmi's switch to C news. C news (via inews) does not edit the Expires header as B news did, which my shell scripts depend on. To be quite honest, I hadn't noticed this until Roy pointer it out. I will fix this when I have a chance - I've been meaning to re-write my scripts in perl anyway. -- Good health is merely the slowest rate at which one can die.
allbery@NCoast.ORG (Brandon S. Allbery) (10/13/89)
As quoted from <4036@phri.UUCP> by roy@phri.UUCP (Roy Smith): +--------------- | Perusing my news spool directory tree, I noticed two different | formats for Expires: headers. All the articles in news.announce.conferences | have headers which look like the following (some header lines deleted): | | |Expires: 11/10/89 | | while the articles in news.newusers.questions have headers like this: | | |Expires: 10 Oct 89 00:00:00 GMT | | It was always my understanding that the proper "Expires: " format is | as in the second example. Is the first (mm/dd/yy) also legal? +--------------- The "Expires:" line can, in practice, take almost any date format. The smarts are hidden in a YACC parser, "getdate.y", which can construct dates from absolute or relative date specifications in a subset of English as well as in various digital formats. (Example: my Welcome! postings in comp.sources.misc get an Expires: of "6 weeks"; getdate.y has no trouble with this, it expires 6 weeks after arriving on a system.) There *are* things it cannot or will not handle. Example: occasional postings come in with "31 Dec 1969 21:00:00" expiration dates, which are the usual result of passing 0 to the ctime() function. Second example: someone in rec.motorcycles put "Expires: never" in his posting. (The latter, BTW, contained other header irregularities which convinced me that the poster simply wasn't aware of the intended meaning of the headers. I can define a meaning for Expires: which does what the poster apparently intended, but it isn't the official meaning (and would be less useful as well, since the current meaning includes the restricted one): the date is the date after which the article is no longer applicable, as with e.g. a posting about something to happen on a given date, which is less than useful the day *after* the event.) (How did I notice this? Expire does the date conversion in C news, and send mail to the news administrator if it can't understand the date.) Anyway, while the relevant RFC's may define a specific date format, in practice one can use almost anything. I wouldn't worry about it unless Rick Adams, Henry Spencer, Geoff Collyer, or some other news program architect (Eric?) decides not to support the current date-handling mechanism. ++Brandon -- Brandon S. Allbery, moderator of comp.sources.misc allbery@NCoast.ORG uunet!hal.cwru.edu!ncoast!allbery ncoast!allbery@hal.cwru.edu bsa@telotech.uucp, 161-7070 BALLBERY (MCI), ALLBERY (Delphi), B.ALLBERY (GEnie) Is that enough addresses for you? no? then: allbery@uunet.UU.NET (c.s.misc)