Revisions of wcslib

Dominique Leuenberger's avatar Dominique Leuenberger (dimstar_suse) accepted request 819079 from Asterios Dramis's avatar Asterios Dramis (adra) (revision 6)
- Update to version 7.3
  * C library
    - wcshdo() was writing MJD-OBS twice to the header, and
      MJD-BEG not at all.
    - In wcshdo(), if MJDREF assumes its default value, just write
      MJDREF = 0 (not MJDREFI & MJDREFF), and omit writing DATEREF,
      which, with a value of '1858-11-17', looks strange and is
      potentially confusing.  Reported by Thomas Robitaille.
      If the fractional part of MJDREF is zero, then just write the
      integer part as MJDREF (i.e. not as MJDREFI & MJDREFF).
    - Bug fix in wcsfix() - it was writing error messages that
      referred to DATE-REF and MJD-REF rather then DATEREF and
      MJDREF.  Reported by Mihai Cara.
    - Under control of a new flag, WCSHDR_DATEREF, added the option
      to wcspih() and wcsbth() to accept DATE-REF, MJD-REF,
      MJD-REFI, MJD-REFF, JDREF, JD-REFI, and JD-REFF as synonyms
      for the standard keywords, DATEREF, MJDREF, MJDREFI, MJDREFF,
      JDREF, JDREFI, and JDREFF.  The latter buck the pattern set
      by the other date keywords ({DATE,MJD}-{OBS,BEG,AVG,END}),
      thereby increasing the potential for confusion and error.
  * Fortran wrappers
    - As compilers are becoming much stricter (gfortran 10),
      modified all Fortran test programs to use the type-specific
      equivalents of the various *PUT and *GET routines.
      Reported by Ole Streicher.
    - For the fitshdr wrappers, added type-specific equivalents
      of KEYGET: KEYGTI, KEYGTD, and KEYGTC.
  * PGSBOX
    - Modified pgtest to use the type-specific equivalents of
      WCSPUT.
  * User manual
    - In the section "WCSLIB Fortran wrappers", promoted use of
      the type-specific equivalents of the various *PUT and *GET
      routines.
    - In the section "FITS-WCS and related software", added ASCL
      and ADS codes, where they exist, for all software packages
      mentioned.
    - Documentation generation moved to doxygen 1.8.18
      (was 1.8.17).
- Allow fortran argument mismatches in rank and type to pass the
  tests.
- Update to version 7.2:
  * C library
    - In wcssub(), fixed a bug relating to handling coordinate
      lookup tables.  Reported by Mihai Cara with fix.
      Also increased the number of coordinate axes handled from
      10 to 32.
  * Installation
    - New configure option, --disable-shared, defeats generation
      of the sharable library.
  Version 7.1:
    Changes in the contents of the wcsprm struct necessitated
    incrementing the major version number from 6 to 7 (i.e. the
    ABI changed).
  * C library
    - In wcsset(), set wcsprm::mjdref[] to zero if neither it nor
      wcsprm::dateref are defined, as per the standard.  Reported
      by Thomas Robitaille.
      wcsset() now also checks that the number of coordinate axes
      does not exceed 32.
    - In tabs2x(), fixed an out-of-bounds array access produced
      by invalid world coordinates.  Reported by Mihai Cara and
      Michael Seifert.
      In tab.c, declare static three helper functions, tabedge(),
      tabrow(), and tabvox(), used by tabs2x().  Increased the
      number of coordinate axes handled by tabvox() from 16 to
      32.
    - Extended datfix() to handle MJDREF/DATEREF, overlooked in
      the changes in release 6.1.  Also fixed the handling of
      MJD < 0.
    - Support Solar keywords RSUN_REF, DSUN_OBS, CRLN_OBS,
      CRLT_OBS, HGLN_OBS, and HGLT_OBS by accomodating them
      within an auxiliary struct, auxprm, within the wcsprm
      struct.  Now filled by the header parsers, wcspih() and
      wcsbth() and handled routinely by wcsinit(), wcssub(),
      wcscompare(), wcsfree(), wcsprt(), wcsset(), and wcshdo().
      Requested by Stuart Mumford (SunPy) with input from Bill
      Thompson.
    - Bug fix in wcsprintf_set() for resetting the output
      disposition.
      Reported by Mihai Cara with patch.
    - In dis.{h,c}, the DOCORR record is now handled as a
      first-class value via disprm::docorr.  This required
      changing the struct.
    - In cel.c, spc.c, wcserr.c, wcsfix.c, wcshdr.c, and
      wcsutil.c, quelled compiler warnings from gcc 9.2.0
      generated by
      -Wmaybe-uninitialized and -Wstringop-truncation (via
      -Wall).
      Similarly for various programs in the test suite.
    - In various functions, quelled warnings from the Microsoft
      Visual C++ compiler, mostly relating to pointer arithmetic.
      Reported by Michael Seifert.
  * Fortran wrappers
    - Handled compiler warnings from gcc 9.2.0 generated by
      -Wstringop-truncation (via -Wall).
    - Minor enhancements to character argument handling,
      including, in prjget_(), blank-filling the returned strings
      matching PRJ_CODE and PRJ_NAME, and likewise for SPC_TYPE
      and SPC_CODE in spcget_().
  * Utilities
    - In wcsgrid, handled compiler warnings from gcc 9.2.0
      generated by -Wstringop-truncation (via -Wall).
  * User manual
    - In the section on "FITS-WCS and related software", added
      mention of the R wrappers (Rwcs).  Suggested by Aaron
      Robotham.
    - Added a new section detailing the limit on the number of
      image axes that WCSLIB can handle (currently 32), and how
      this could be increased if needed.  Prompted by Thomas
      Robitaille.
    - Augmented the section on the Fortran wrappers, particularly
      with respect to character string handling in argument
      lists.
    - Documentation generation moved to doxygen 1.8.17 (was
      1.8.16).
Dominique Leuenberger's avatar Dominique Leuenberger (dimstar_suse) accepted request 747258 from Asterios Dramis's avatar Asterios Dramis (adra) (revision 5)
- Update to version 6.4 (2019/08/15):
  * Installation
    - The rule change to the Fortran makefile in v6.3 to add getwcstab_f.o
      to the sharable library causes it to depend on CFITSIO to resolve
      fits_get_wcstab().  Hence backed out of that change.
  * User manual
    - Documentation generation moved to doxygen 1.8.16 (was 1.8.14).
- Update to version 6.3 (2019/07/12)
  * C library
    - Fixed the Polynomial and TPD distortions so that, as stipulated in
      WCS Paper IV, they are now considered to return an additive
      correction to be applied to the given coordinates, rather than the
      corrected coordinates themselves.
        Added a new subsection to the prologue of dis.h entitled 'Historical
      idiosyncrasies', which discusses this issue and other vagueries.
        Amended components of the test suite accordingly: SIPTPV.keyrec,
      TPV7.keyrec, and tdis1.c.
    - Fixed memory leaks and other potential problems that arose in the
      wcserr system consequent on changes made in release 6.1.
        Memory allocated by wcsfixi() for messages in the array of wcserr
      structs must now be freed by the caller.  Amended twcsfix.c
      accordingly.
    - Plugged memory leaks arising in disset().
    - New function wcsdealloc() provided to free memory allocated within
      certain WCSLIB routines.  Suggested by David Motl.
    - Eliminated a swag of inconsequential compiler warnings, particularly
      those emanating from the flex sources.
  * Validation
    - The library, Fortran wrappers, utilities, and test programs now pass
      runtime analysis using -fsanitize=address and -fsanitize=undefined
      in gcc 8.3.0, in addition to valgrind.  Also compile-time strictures
      using -std=c99, -pedantic, -Wall, -Wextra, and -DFORTIFY_SOURCE=2.
      Prompted by feedback from Ole Streicher.
  * Installation
    - The non-graphical tests now run reliably in parallel builds
      (make CHECK=nopgplot -j8 check).  Requested by Mohammed Akhlaghi.
        The graphical tests can also be run in parallel, but as PGPLOT can
      only handle one stream at a time, some graphics are likely to be
      lost.  Nevertheless, it is a useful option, especially with runtime
      analysis via -fsanitize=address, etc.
    - As CFITSIO doesn't provide a Fortran wrapper for fits_read_wcstab(),
      getwcstab_f.o is now always included in the WCSLIB object library
      and sharable library if CFITSIO is available (and the WCSLIB Fortran
      wrappers are required).  Use 'configure --without-cfitsio' to
      defeat this.
    - Tidied up some aspects of the build where CFITSIO is not available.
  * User manual
    - Fixed minor formatting problems in dis.h.
Dominique Leuenberger's avatar Dominique Leuenberger (dimstar_suse) accepted request 411584 from Asterios Dramis's avatar Asterios Dramis (adra) (revision 1)
According to comment on SR#409123, rename libwcs to wcslib.
Displaying all 13 revisions
openSUSE Build Service is sponsored by