Austin Group Defect Tracker

Aardvark Mark IV


Viewing Issue Simple Details Jump to Notes ] Issue History ] Print ]
ID Category Severity Type Date Submitted Last Update
0001405 [1003.1(2016/18)/Issue7+TC2] Shell and Utilities Objection Clarification Requested 2020-09-25 11:12 2020-09-28 15:03
Reporter geoffclare View Status public  
Assigned To
Priority normal Resolution Open  
Status New  
Name Geoff Clare
Organization The Open Group
User Reference
Section mailx
Page Number 2944-2965
Line Number 97476-98335
Interp Status ---
Final Accepted Text
Summary 0001405: mailx header terminology needs to change to match RFC5322
Description The terminology used in relation to message headers is described in the first paragraph under "Commands in mailx" as follows:
In the following list, header refers to lines from the message header, as shown in the OUTPUT FILES section. Header-line refers to lines within the header that begin with one or more non-white-space characters, immediately followed by a <colon> and white space and continuing until the next line beginning with a non-white-space character or an empty line. Header-field refers to the portion of a header line prior to the first <colon> in that line.

This is confusingly different from the terminology used in RFC5322 (where "header field" means what the above calls "header-line", and "field name" means what the above calls "header-field") and also does not match many of the uses of the terms later in the mailx description. For example the description of the "discard" and "ignore" commands says:
Suppress the specified header fields when writing messages.

By a strict reading, this requires that the part prior to the first <colon> is suppressed, leaving the colon and the remainder of the header-line.

There are also some uses of "headers" where either "header-lines" or "header summaries" is intended, and uses of "line" where "header-line" is intended.

Finally, there is inconsistency as to whether the ":" is included when specifying header fields by name.
Desired Action Everywhere on the mailx page, change all occurrences of "header-line" to "header field".

On page 2944 line 97476 section mailx (-F option), change:
... found first on the To: line in the mail header.
to:
... found first in the To field in the message header.

On page 2945 line 97536 section mailx (LC_CTYPE), change:
header-field comparisons
to:
header-field name comparisons

On page 2946 line 97573 section mailx (LC_CTYPE), change:
screenful of headers
to:
screenful of header summaries

On page 2949 line 97706 section mailx (deleted state), change:
search the subject lines of messages
to:
search the Subject header fields of messages

On page 2950 line 97733 section mailx (/string message specification), change:
All messages with string in the subject line (case ignored).
to:
All messages with string in the Subject header field (case ignored).

On page 2951 line 97779 section mailx (ask variable), change:
Prompt for a subject line on outgoing mail
to:
Prompt for a value for the Subject header field on outgoing mail

On page 2953 line 97862 section mailx (showto variable), change:
write the information from the To: line instead of the From: line in the header summary
to:
write the information from the To field instead of the From field in the header summary

On page 2953 line 97876 section mailx (Commands in mailx), change:
In the following list, header refers to lines from the message header, as shown in the OUTPUT FILES section. Header-line refers to lines within the header that begin with one or more non-white-space characters, immediately followed by a <colon> and white space and continuing until the next line beginning with a non-white-space character or an empty line. Header-field refers to the portion of a header line prior to the first <colon> in that line.
to:
In the following list, header refers to lines from the message header, as shown in the OUTPUT FILES section. Header field refers to a line or set of lines within the header that begins with one or more non-white-space characters immediately followed by a <colon> and white space, and continuing up to and including a <newline> that immediately precedes either the next line beginning with a non-white-space character or an empty line. Field name refers to the portion of a header field prior to the first <colon>.

On page 2955 line 97943,97944 section mailx (discard command), change:
header-field
to:
field-name

On page 2955 line 97945 section mailx (discard command), change:
Suppress the specified header fields when writing messages. Specified header-fields shall be added to the list of suppressed header fields. Examples of header fields to ignore are status and cc. The fields shall be included when the message is saved. The Print and Type commands shall override this command. The comparison of header fields shall be in a case-insensitive manner. If no arguments are specified, write a list of the currently suppressed header fields to standard output; the listing need not reflect the same order of header fields that were entered.
to:
Suppress header fields with the specified field names when writing messages. Specified field-name arguments shall be added to the list of suppressed field names. Examples of field names to ignore are status and cc. The header fields shall be included when the message is saved. The Print and Type commands shall override this command. The comparison of field names shall be performed in a case-insensitive manner. If no arguments are specified, write a list of the currently suppressed field names to standard output; the listing need not reflect the same order of field names that were entered.

On page 2956 line 97999 section mailx (followup command), change:
The subject line shall be taken from the first message
to:
The Subject header field shall be taken from the first message

On page 2957 line 98006 section mailx (headers command), change:
Display Header Summary
to:
Display Header Summaries

On page 2957 line 98008-98011 section mailx (headers command), change three occurrences of "headers" to "header summaries".

On page 2958 line 98062 section mailx (Print command), change:
Display Message with Headers
to:
Display Message with Header

On page 2958 line 98065 section mailx (Print command), change:
Write the specified messages, including all header lines, to standard output. Override suppression of lines by ...
to:
Write the specified messages, including all header fields, to standard output. This command shall override suppression of header fields by ...

On page 2959 line 98085 section mailx (Reply command), change:
The subject line shall be formed by concatenating Re:<space> (unless it already begins with that string) and the subject from the first message.
to:
The value for the Subject header field shall be formed by concatenating Re:<space> (unless it already begins with that string) and the value of the Subject header field from the first message.

On page 2959 line 98093 section mailx (reply command), change:
The subject line shall be formed by concatenating Re:<space> (unless it already begins with that string) and the subject from the message.
to:
The value for the Subject header field shall be formed by concatenating Re:<space> (unless it already begins with that string) and the value of the Subject header field from the message.

On page 2959 line 98099 section mailx (retain command), change:
header-field
to:
field-name

On page 2959 line 98100 section mailx (retain command), change:
Retain the specified header fields when writing messages. This command shall override all discard and ignore commands. The comparison of header fields shall be in a case-insensitive manner. If no arguments are specified, write a list of the currently retained header fields to standard output; the listing need not reflect the same order of header fields that were entered.
to:
Retain header fields with the specified field names when writing messages. This command shall override all discard and ignore commands. The comparison of field names shall be performed in a case-insensitive manner. If no arguments are specified, write a list of the currently retained field names to standard output; the listing need not reflect the same order of field names that were entered.

On page 2961 line 98170 section mailx (z command), change:
The number of headers written
to:
The number of header summaries written

On page 2962 line 98210 section mailx (~f command escape), change:
The specified messages shall be inserted into the current message without alteration. This command escape also shall insert message headers into the message with field selection affected by ...
to:
The specified messages, including their headers, shall be inserted into the current message without alteration. The header fields included in each header shall be affected by ...

On page 2963 line 98214 section mailx (~F command escape), change:
except that all headers shall be included in the message
to:
except that all header fields shall be included in the message headers

On page 2963 line 98217 section mailx (~h command escape), change:
If standard input is a terminal, prompt for a Subject line and the To, Cc, and Bcc lists. Other implementation-defined headers may also be presented for editing. If the field is written with an initial value, it can be edited as if it had just been typed.
to:
If standard input is a terminal, prompt for values for the Subject, To, Cc, and Bcc header fields. Other implementation-defined header fields may also be presented for editing. If the header field is written with an initial value, it can be edited as if it had just been typed.

On page 2963 line 98222 section mailx (~m command escape), change:
Insert the specified messages into the message, prefixing non-empty lines with the string in the indentprefix variable. This command escape also shall insert message headers into the message, with field selection affected by ...
to:
Insert the specified messages, including their headers, into the current message, prefixing non-empty lines with the string in the indentprefix variable. The header fields included in each header shall be affected by ...

On page 2963 line 98226 section mailx (~M command escape), change:
except that all headers shall be included in the message
to:
except that all header fields shall be included in the message headers

On page 2963 line 98241 section mailx (~s command escape), change:
Set the subject line to string.
to:
Set the value for the Subject header field to string.

On page 2964 line 98293 section mailx (APPLICATION USAGE), change:
The retain command discards all header-fields except those explicitly retained. The discard command keeps all header-fields except those explicitly discarded. If headers exist on the retained header list, discard and ignore commands are ignored.
to:
The retain command discards all header fields except those explicitly retained. The discard command keeps all header fields except those explicitly discarded. If field names exist on the retained field names list, discard and ignore commands are ignored.

On page 2965 line 98321 section mailx (RATIONALE), change:
The restriction on a subject line being ...
to:
The restriction on the value for a Subject header field being ...

On page 2965 line 98335 section mailx (RATIONALE), change:
Some headers found in incoming mail
to:
Some header fields found in incoming mail
Tags No tags attached.
Attached Files

- Relationships
related to 0001401New reply command uses obsolete wording 

-  Notes
(0005006)
kre (reporter)
2020-09-28 15:03

This isn't specifically about the issue (I have no problems with the
proposed changes) but since the paragraphs that relate to the discard/ignore
and retain commands are being rewritten anyway, it might be worth also fixing
them to take one consistent view of what they do.

The most obvious example of the issue is shown above (the discard cmd):

    Suppress header fields with the specified field names when writing
    messages. Specified field-name arguments shall be added to the list of
    suppressed field names. Examples of field names to ignore are status
    and cc. The header fields shall be included when the message is saved.
    The Print and Type commands shall override this command.

If the discard command adds field names to a list, it makes no sense for the
Print and Type commands to override the command (what would that mean
exactly?) What those commands would do is ignore the list, they don't
affect anything related to adding field names to the list (which still exists
unaltered for other commands, even after a Print command has "overridden"
the discard command).

Alternatively, it would be possible to skip the list implementation detail
and simply specify that the commands cause the field names listed to be
ignored when they would otherwise be written by other commands, in which case
the P/T commands can override it (though if going that route, care needs to
be taken to allow the command to be issued multiple times, and that all
of them still apply).

This split personality of how these things work appears all over the place,
including in the relationship with the retain command.

It might also be worth being more precise about what "written" means, I
believe these only apply to messages being displayed on stdout, right?

Just list the commands to which these lists (or commands) apply, and then
the sentence about "The header fields shall be included when the message
is saved." can be deleted, which would be a good thing, as it kind of
suggests that only the fields named in discard commands shall be included
when a message is saved, and that's certainly not what is intended ... but
if that isn't what it means, why the different wording style for saving
messages and the "override" for the P/T commands?

Note: all of this is just about the way the text is written, I don't think
there's any real doubt here as to what is supposed to actually happen.

- Issue History
Date Modified Username Field Change
2020-09-25 11:12 geoffclare New Issue
2020-09-25 11:12 geoffclare Name => Geoff Clare
2020-09-25 11:12 geoffclare Organization => The Open Group
2020-09-25 11:12 geoffclare Section => mailx
2020-09-25 11:12 geoffclare Page Number => 2944-2965
2020-09-25 11:12 geoffclare Line Number => 97476-98335
2020-09-25 11:12 geoffclare Interp Status => ---
2020-09-25 11:14 geoffclare Relationship added related to 0001401
2020-09-28 15:03 kre Note Added: 0005006


Mantis 1.1.6[^]
Copyright © 2000 - 2008 Mantis Group
Powered by Mantis Bugtracker