home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 January / usenetsourcesnewsgroupsinfomagicjanuary1994.iso / sources / std_unix / volume.23 / text0092.txt < prev    next >
Encoding:
Text File  |  1991-06-15  |  10.4 KB  |  277 lines

  1. Submitted-by: pc@hillside.co.uk (Peter Collinson)
  2.  
  3. USENIX Standards Watchdog Committee
  4. Stephen Walli <stephe@usenix.org>, Report Editor
  5. Report on IEEE 1003.2: Shell and Utilities
  6.  
  7.  
  8. David Rowley <david@mks.com> reports on the April 15-19 meeting in
  9. Chicago, IL:
  10.  
  11. Background
  12.  
  13. A brief POSIX.2 project description:
  14.  
  15.    - POSIX.2 is the base standard and deals with the basic shell
  16.      programming language and a set of utilities required for the
  17.      portability of shell scripts.  It excludes most features that
  18.      might be considered interactive.  POSIX.2 also standardizes
  19.      command-line and function interfaces related to certain POSIX.2
  20.      utilities (e.g., popen(), regular expressions, etc.).  This part
  21.      of POSIX.2, which was developed first, is sometimes known as
  22.      ``Dot 2 Classic.''
  23.  
  24.    - POSIX.2a, the User Portability Extension or UPE, is a supplement
  25.      to the base POSIX.2 standard and standardizes commands, such as
  26.      vi, that might not appear in shell scripts but are important
  27.      enough that users must learn them on any real system.  It is
  28.      essentially an interactive standard, and it will eventually be an
  29.      optional chapter to a future draft of the base document.  This
  30.      approach allows the adoption of the UPE to trail Dot 2 Classic
  31.      without delaying it.
  32.  
  33.      Some utilities have both interactive and non- interactive
  34.      features.  In such cases, the UPE defines extensions from the
  35.      base POSIX.2 utility.  Features used both interactively and in
  36.      scripts tend to be defined in the base standard.
  37.  
  38.    - POSIX.2b is a newly approved project which will cover extensions
  39.      and new requests from other groups, such as utilities for the
  40.      POSIX.4 (Realtime) and POSIX.6 (Security) documents.
  41.  
  42. Together, Dot 2 Classic and the UPE will make up the International
  43. Standards Organization's ISO 9945-2 -- the second volume of the
  44. proposed ISO three-volume POSIX standard.
  45.  
  46. Summary
  47.  
  48. POSIX.2 (Shell and Utilities) closed its recirculation ballot on 29
  49. March. The Chair feels there will only be a small number of changes to
  50. the current draft, probably circulated as change pages. There were
  51. some ballot concerns over the internationalization areas, but these
  52. will likely remain intact due to current support. There was also a
  53. concern raised over the ballot period for a 900+ page document.
  54. POSIX.2a closed its recirculation ballot on 24 April.
  55.  
  56. POSIX.2b has been approved after a number of scope change
  57. recommendations from the PMC.  The POSIX.2 group requests technology
  58. for both a new archive format, and also a new family of compression
  59. utilities.  Much of the Chicago meeting was spent with POSIX.3.2 (Test
  60. Methods for POSIX.2) creating test assertions for the document.
  61.  
  62. Status of POSIX.2 Balloting
  63.  
  64. The Draft 11 Recirculation Ballot for POSIX.2 closed March 29th. Some
  65. balloters seemed to forget that it was a recirculation ballot, as
  66. there were a large number of objections on items other than changes.
  67. These were ruled unresponsive.
  68.  
  69. Hal Jespersen, the POSIX.2 Chair and Technical Editor, believes that
  70. there will only be a small number of actual modifications to the
  71. draft. Draft 12 (which may possibly be called Draft 11.1) will likely
  72. be distributed as a set of changed pages, which he estimates to number
  73. about 200.  (More recent estimates suggest the number of pages to be as
  74. low as 50). Expect it sometime around July.
  75.  
  76. There were a number of objections to the internationalization part of
  77. POSIX.2, but since Hal has support from X/Open, WG15, etc, he thinks
  78. the current specification will remain largely intact.
  79.  
  80. There was a problem with the Draft 11 distribution. POSIX.2 is now
  81. over 900 pages. It's balloting period was 30 days, although with a
  82. mailing lead it was about 6 weeks.  Due to postal services, some
  83. members of the balloting group only received their ballot copies two
  84. weeks prior to the closing deadline. Hal Jespersen was as
  85. accommodating as he could be on the deadline, but the extent of these
  86. submissions was definitely affected.  The question rears its head
  87. again.  Should we be balloting POSIX standards the same as we ballot
  88. smaller hardware standards?
  89.  
  90. The ISO standards process sees a document move through three phases on
  91. its way to standardization -- Committee Document, Draft International
  92. Standard, and finally International Standard.  Draft 9 of POSIX.2 is
  93. currently being used as a committee document.  The ISO has requested
  94. the U.S. Member Body to forward to them another draft once it has
  95. become more stable. The next draft (Draft 12 or Draft 11.1) will be a
  96. likely candidate.  The ISO has delegated responsibility for producing
  97. the POSIX draft standards documents to the U.S. Member Body, ANSI,
  98. which in turn delegated the responsibility to the IEEE.
  99.  
  100. Status of POSIX.2a Balloting
  101.  
  102. The Draft 6 Recirculation Ballot of POSIX.2a (UPE) closed April 24th.
  103. Unfortunately the deadline for comments came a mere three days after
  104. the end of the April meeting. There were quite a few comments on the
  105. unfortunate timing of the ballot close. Work on ballot resolution is
  106. ongoing.
  107.  
  108. New PARs
  109.  
  110. The Project Management Committee (PMC) has recommended the proposed
  111. PAR (Project Authorization Request) for 1003.2b be split into two
  112. parts. One part will cover extensions and new requests from other
  113. groups, such as the tar, cpio and new pax file formats from POSIX.1
  114. (Kernel) and utilities from POSIX.4 (Realtime) and POSIX.6
  115. (Security).  The timing and alignment issues with the ISO 9945-2
  116. balloting process will be covered by the other part.
  117.  
  118. The scope of this second PAR is restricted to standardization of
  119. existing industry practice. The group does not want to get into
  120. designing new utilities.
  121.  
  122. There is also concern over draft stability when discussing the
  123. commands to access the features from the POSIX.4 and POSIX.6
  124. standards. How mature does the feature have to be before the POSIX.2
  125. group goes to the effort of defining a command interface to it ?
  126.  
  127. Discussion
  128.  
  129. Donn Terry, the chair of POSIX.1 officially handed off responsibility
  130. of the pax file formats, including the new format currently being
  131. designed, to the POSIX.2 group.
  132.  
  133. A proposal was examined to reserve the utility status return code 126
  134. to indicate that a utility was found but could not be successfully
  135. invoked.  This would be especially useful in systems with limited
  136. resources, where execution can not be assured even though the utility
  137. has been found. The group generally agreed that this was reasonable.
  138.  
  139. There was a question as to whether the warning message for getopts
  140. should be specified in the standard or not, so that filters could
  141. parse it. It was decided to not specify the error format, since there
  142. is no precedent for stating the format of something written to
  143. standard error.
  144.  
  145. There was discussion on removing -e from pax, since charmaps were not
  146. really intended to be used in this manner.  The -e option was intended
  147. to allow filenames to be written out using only characters from the
  148. portable character set.  OSF had already implemented this in their
  149. pax, and agreed that it didn't work out too well.
  150.  
  151. The $(( notation in the Korn Shell currently can have two widely
  152. different meanings: either spawning a subshell or expressing an
  153. arithmetic operation. The working group agreed that disambiguating by
  154. placing a space between the two parentheses, though inelegant, was the
  155. best approach.
  156.  
  157. There was some discussion on a proposal on User Controllable Limits,
  158. and whether or not it had relevance to POSIX.2.  The group felt that
  159. there should be a command interface to these services, with the
  160. functional interface to be provided by POSIX.1.  A proposal for the
  161. POSIX.2 interface is now being solicited.
  162.  
  163. We also discussed the the test command. David Korn proposed fixing the
  164. functionality of test based on the number of arguments given (1, 2 or
  165. 3). Invocations with greater than 3 arguments would not be portable.
  166. We generally agreed on this approach.
  167.  
  168. Richard Hart from POSIX.7 (System Administration) presented the syntax
  169. for a new printing command based on the MIT/Athena Palladium network
  170. printing services. Everyone in the POSIX.2 group agreed that the
  171. proposed syntax was awkward:
  172.  
  173.         prpr -print-quality draft
  174.  
  175.             means use draft if you can
  176.  
  177.         prpr =print-quality draft
  178.  
  179.             means you must use draft
  180.  
  181.         prpr =p-q draft
  182.  
  183.             means the same thing, but ``print-quality''
  184.             has been abbreviated.
  185.  
  186. The abbreviation mechanism is particularly poor, since it is likely
  187. that new extensions will cause namespace conflicts.
  188.  
  189. Requests for technology
  190.  
  191. There is an opportunity now to propose a new archive format.  The only
  192. prerequisites are that it is ISO 1001 tape format compatible, and uses
  193. the ISO 646 character set.  This consists of the invariant codeset
  194. from a variety of character set standards, largely 7-Bit ASCII minus
  195. about 10 contentious characters.  Here's a list of requirements:
  196.  
  197.    o Should be textual (mailable) if members are all textual
  198.  
  199.    o Should support filename and file contents mapping (eg.
  200.      for dynamic encryption or compression)
  201.  
  202.    o Should be extensible
  203.  
  204. Personally I don't understand why the ISO 1001 tape format needs to be
  205. a restriction. Archive formats have many other uses besides tape
  206. backup and transfer. To embed the tape format in what could otherwise
  207. be a general-use archive format seems overly complex and restrictive.
  208.  
  209. The group is also looking for a new family of compression utilities,
  210. now that the Lempel-Ziv-Welch family of commands have been removed
  211. from the standard.  The main requirements for a substitute are:
  212.  
  213.    o The algorithm should be expressed (expressible) in a
  214.      language independent form
  215.  
  216.    o The algorithm should be free of patent issues
  217.  
  218. Test Plans and Assertions
  219.  
  220. A test plan for POSIX.2 and POSIX.2a has been written, and has been
  221. passed to POSIX.3.2 (Test Assertions for POSIX.2) for comment and
  222. approval.
  223.  
  224. Tuesday to Thursday were spent writing test assertions in a joint
  225. meeting between POSIX.2 and POSIX.3.2 Commands tackled included make,
  226. regular expressions, ln, cp, rm, mv, pax, pathconf, echo and read.
  227.  
  228. Some members volunteered test assertions written by their companies,
  229. usually to a previous draft. They were almost always unusable, either
  230. because they were out of date (based on previous drafts), or of poor
  231. quality. Writing good test assertions is very difficult, and quickly
  232. points out (the many) ambiguous wordings in the draft.
  233.  
  234. The POSIX.3.2 group would like to go to a mock ballot after the
  235. October meeting in Parsippany, New Jersey.
  236.  
  237.  
  238.  
  239.  
  240.  
  241.  
  242.  
  243.  
  244.  
  245.  
  246.  
  247.  
  248.  
  249.  
  250.  
  251.  
  252.  
  253.  
  254.  
  255.  
  256.  
  257.  
  258.  
  259.  
  260.  
  261.  
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.  
  269.  
  270.  
  271.  
  272.  
  273.  
  274.  
  275. Volume-Number: Volume 23, Number 97
  276.  
  277.