home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #27 / NN_1992_27.iso / spool / comp / sources / d / 1419 < prev    next >
Encoding:
Text File  |  1992-11-18  |  6.2 KB  |  179 lines

  1. Newsgroups: comp.sources.d
  2. Path: sparky!uunet!think.com!spool.mu.edu!news.cs.indiana.edu!nstn.ns.ca!cs.dal.ca!david
  3. From: david@cs.dal.ca (David Trueman)
  4. Subject: announcing gawk version 2.14
  5. Message-ID: <BxxHLw.3q1@cs.dal.ca>
  6. Sender: usenet@cs.dal.ca (USENET News)
  7. Nntp-Posting-Host: cs.cs.dal.ca
  8. Organization: Math, Stats & CS, Dalhousie University, Halifax, NS, Canada
  9. Date: Wed, 18 Nov 1992 20:15:31 GMT
  10. Lines: 167
  11.  
  12. Version 2.14 of gawk is now available for ftp on ftp.cs.dal.ca as
  13. /pub/gawk/gawk-2.14.tar.Z.  Hopefully, it will be available elsewhere
  14. soon, as we have only a 112kbps link to the outside world.  This version
  15. contains many bug fixes, a substantially updated manual and one new
  16. feature as detailed below.  We have not used autoconf in this version,
  17. but that is high on the TODO list, so you can expect a patch that
  18. contains that support.
  19.  
  20. We certainly never intended that it would take so long to get this
  21. version out, but young families intervened.  We are committed to
  22. keeping this version more up to date, with patches as the need arises.
  23.  
  24. We are grateful for help from many people, especially our pretesters.
  25. Some of these people are listed in the ACKNOWLEDGMENT file in the
  26. distribution, but a large number of people sent bug reports and/or
  27. fixes and I'm afraid that I was not organized enough to keep track of
  28. them all, so I cannot acknowledge them individually.
  29.  
  30. David Trueman
  31. Arnold Robbins
  32.  
  33.  
  34. Changes from 2.13.2 to 2.14
  35. ---------------------------
  36.  
  37. Updated manual!
  38.  
  39. Added "next file" to skip efficiently to the next input file.
  40.  
  41. Fixed potential of overflowing buffer in do_sprintf().
  42.  
  43. EOF on a redirect is now "sticky" -- it can only be cleared by close()ing
  44.   the pipe or file.
  45.  
  46. Now works if used via a #! /bin/gawk line at the top of an executable file
  47.   when that line ends with whitespace.
  48.  
  49. Added some checks to the grammar to catch redefinition of builtin functions.
  50.   This could eventually be the basis for an extension to allow redefining
  51.   functions, but in the mean time it's a good error catching facility.
  52.  
  53. Negative integer exponents now work.
  54.  
  55. Modified do_system() to make sure it had a non-null string to be passed
  56.   to system(3). Thus, system("") will flush any pending output but not go
  57.   through the overhead of forking an un-needed shell.
  58.  
  59. A fix to floating point comparisons so that NaNs compare right on IEEE systems.
  60.  
  61. Added code to make sure we're not opening directories for reading and such.
  62.  
  63. Added code to do better diagnoses of weird or null file names.
  64.  
  65. Allow continue outside of a loop, unless in strict posix mode.  Lint option
  66.   will issue warning.
  67.  
  68. New missing/strftime.c.  There has been one chage that affects gawk.  Posix
  69.   now defines a %V conversion so the vms conversion has been changed to %v.
  70.   If this version is used with gawk -Wlint and they use %V in a call to
  71.   strftime, they'll get a warning.
  72.  
  73. Error messages now conform to GNU standard (I hope).
  74.  
  75. Changed comparisons to conform to the  description found in the file POSIX.
  76.   This is inconsistent with the current POSIX draft, but that is broken.
  77.   Hopefully the final POSIX standard will conform to this version.
  78.   (Alas, this will have to wait for 1003.2b, which will be a revision to
  79.   the 1003.2 standard.  That standard has been frozen with the broken
  80.   comparison rules.)
  81.  
  82. The length of a string was a short and now is a size_t.
  83.  
  84. Updated VMS help.
  85.  
  86. Added quite a few new tests to the test suite and deleted many due to lack of
  87.   written releases.  Test output is only removed if it is identical to the
  88.   "good" output.
  89.  
  90. Fixed a couple of bugs for reference to $0 when $0 is "" -- particularly in
  91.   a BEGIN block.
  92.  
  93. Fixed premature freeing in construct "$0 = $0".
  94.  
  95. Removed the call to wait_any() in gawk_popen(), since on at least some systems,
  96.   if gawk's input was from a pipe, the predecssor process in the pipe was a
  97.   child of gawk and this caused a deadlock.
  98.  
  99. Regexp can (once again) match a newline, if given explicitly.
  100.  
  101. nextopen() makes sure file name is null terminated.
  102.  
  103. Fixed VMS pipe simulation.  Improved VMS I/O performance.
  104.  
  105. Catch . used in variable names.
  106.  
  107. Fixed bug in getline without redirect from a file -- it was quitting after the
  108.   first EOF, rather than trying the next file.
  109.  
  110. Fixed bug in treatment of backslash at the end of a string -- it was bombing
  111.   rather than doing something sensible.  It is not clear what this should mean,
  112.   but for now I issue a warning and take it as a literal backslash.
  113.  
  114. Moved setting of regexp syntax to before the option parsing in main(), to
  115.   handle things like -v FS='[.,;]'
  116.  
  117. Fixed bug when NF is set by user -- fields_arr must be expanded if necessary
  118.   and "new" fields must be initialized.
  119.  
  120. Plugged small memory leak in sub_common().
  121.  
  122. Fixed several bugs in [g]sub() for no match found or the match is 0-length.
  123.  
  124. Fixed bug where in gsub() a pattern anchorred at the beginning would still
  125.   substitute throughout the string.
  126.  
  127. make test does not assume the . is in PATH.
  128.  
  129. Fixed bug when a field beyond the end of the record was requested after
  130.   $0 was altered (directly or indirectly).
  131.  
  132. Fixed bug for assignment to field beyond end of record -- the assigned value
  133.   was not found on subsequent reference to that field.
  134.  
  135. Fixed bug for FS a regexp and it matches at the end of a record.
  136.  
  137. Fixed memory leak for an array local to a function.
  138.  
  139. Fixed hanging of pipe redirection to getline
  140.  
  141. Fixed coredump on access to $0 inside BEGIN block.
  142.  
  143. Fixed treatment of RS = "".  It now parses the fields correctly and strips
  144.   leading whitspace from a record if FS is a space.
  145.  
  146. Fixed faking of /dev/stdin.
  147.  
  148. Fixed problem with x += x
  149.  
  150. Use of scalar as array and vice versa is now detected.
  151.  
  152. IGNORECASE now obeyed for FS (even if FS is a single alphabetic character).
  153.  
  154. Switch to GPL version 2.
  155.  
  156. Renamed awk.tab.c to awktab.c for MSDOS and VMS tar programs.
  157.  
  158. Renamed this file (CHANGES) to NEWS.
  159.  
  160. Use fmod() instead of modf() and provide FMOD_MISSING #define to undo
  161.   this change.
  162.  
  163. Correct the volatile declarations in eval.c.
  164.  
  165. Avoid errant closing of the file descriptors for stdin, stdout and stderr.
  166.  
  167. Be more flexible about where semi-colons can occur in programs.
  168.  
  169. Check for write errors on all output, not just on close().
  170.  
  171. Eliminate the need for missing/{strtol.c,vprintf.c}.
  172.  
  173. Use GNU getopt and eliminate missing/getopt.c.
  174.  
  175. More "lint" checking.
  176.  
  177. -- 
  178. {uunet watmath}!dalcs!david  or  david@cs.dal.ca
  179.