[fitsbits] WCSLIB 5.18 released

Mark Calabretta mark at calabretta.id.au
Wed Jan 10 06:49:56 EST 2018


Greetings,

I have just released WCSLIB 5.18 with fixes, mainly to support
threaded execution, as per the change log appended below.

Regards,
Mark Calabretta


WCSLIB version 5.18 (2018/01/10)
--------------------------------

* C library

  - New routines introduced to preclude altering the global variables
    NPVMAX, NPSMAX, and NDPMAX, which determine how much memory to
    allocate for storing PVi_ma, PSi_ma, DPja, and DQia keyvalues:
    wcsinit(), lininit(), lindist(), and disinit().  These are now used
    by various WCSLIB routines, such as the header parsers, which
    previously temporarily altered the global variables, thus posing a
    thread hazard.  Testing and feedback on thread-safety issues, with
    patches, from Rodrigo Tobar Carrizo.

  - The Flex scanners, fitshdr(), wcsbth(), wcspih(), wcsulexe(), and
    wcsutrne(), have been rewritten as thin wrappers (with the same API)
    over scanners that were modified (with changed API) as required to
    use Flex's "reentrant" option.  Consequently, they are now reentrant
    and should be thread-safe.  That also passes through to the
    deprecated wrappers, wcsulex() and wcsutrn().

  - Fixed memory leaks in lindist() and lincpy() uncovered by valgrind.

  - Test programs tfitshdr, tpih1, tpih2, and ttab3 are now careful to
    free all allocated memory before exit to defeat spurious reports of
    memory leaks by valgrind.

* Fortran wrappers

  - New wrappers for wcsinit(), lininit(), lindist(), and disinit().

* Installation

  - configure now recognises the value of ARFLAGS obtained from the
    environment.

* User manual

  - Updates and amendments in line with the above changes.

  - Documentation generation moved to doxygen 1.8.14 (was 1.8.13).



More information about the fitsbits mailing list