[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