TABLES v3.1 Full Release Notes

CHANGES TO APPLICATIONS

- THEDIT

  There was an incorrect calling sequence in the section for deleting
  keywords.  This resulting in an error when more than one keyword
  was to be deleted.

SYSTEM LIBRARY CHANGES

- GFLIB

  Fixed a bug related to multiple ROOTNAME keywords (they appear in both 
  the primary and extension headers of multi-extension FITS files of HST 
  data sets).
  
- TBTABLES

  The is_image() function was unnecessarily complicated.  It has been
  simplified so that it now just calls tbtacc() to see if the file is
  a table; if tbtacc() returns NO, then is_image() calls imaccess() to
  see if the file is an image.

  When reading a numerical value from a string using sscan, if the
  string is "INDEF" then nscan() is 1, rather than 0 as previously
  assumed.  The code was changed to check the value explicitly, rather
  than relying on nscan().  Also, strsearch() is used instead of streq()
  to check for INDEF in a string.

  Many of the ttools tasks set the type of the output table to be the
  same as the type of the input table.  This has roots in the 
  row-ordered vs column-ordered STSDAS table format.  It is not 
  necessary with FITS tables (the type is implied by the filename 
  extension).  If the output is redirected or explicitly set to STDOUT, 
  some tasks actually failed after changing the table type of the 
  standard output (which is regarded as a text table).  tbpset() was 
  modified to prevent this; it now ignores any request to change the 
  table type of STDOUT or STDERR.

  The print format for table entries has had the option to pad integer 
  values with zeros on the left.  When the user specifies the format in 
  Fortran style, zero padding was supported for I format but not for Z 
  (hexadecimal) format.  The routine that converts from Fortran format 
  to SPP now checks for this and supports zero padding of hexadecimal 
  numbers.
