Required by astropy v6.0
- Update to 8.2.2
* In prj.c, a number of variables with global scope that are only
used internally were declared static to avoid namespace
conflicts arising in Link Time Optimization (LTO) builds of the
Rwcs wrappers. This is a patch release as it does not affect
the library itself other than in localising some symbols that
were never meant to be global. Reported by Rodrigo Carrizo with
patch.
Likewise for an internally used helper function, prjoff().
Likewise for a handful of variables in cel.c, dis.c, lin.c,
tab.c, wcs.c, wcsfix.c, and wcshdr.c.
- WCSLIB version 8.2
* In wcshdo(), fixed character buffer overflows in the comment
string for the longitude and latitude axes triggered by some
projections, and also the formatting for generic coordinate
systems. Reported by Shu Niu.
- WCSLIB version 8.1
* Changes in the contents of the auxprm struct (in 8.0 beta)
necessitated incrementing the major version number from 7 to 8,
i.e. the ABI changed. Took the opportunity for minor tweaks to
wcsprm and disprm.
## C library
* In disprm, changed the order of maxdis and totdis to ensure
correct alignment of doubles on 32-bit machines.
## Fortran wrappers
* Match changes to disprm in the C library.
* In the Fortran test suite, inserted a brief pause between plots
in tprj2, tspc, and tpih2, which have long been a blur.
## PGSBOX
* Quell innocuous compiler warnings from gfortran 12.1.0.
OBS-URL: https://build.opensuse.org/request/show/1132251
OBS-URL: https://build.opensuse.org/package/show/science/wcslib?expand=0&rev=27
- update to 7.3.1:
* There are no functional changes in this release.
- Changed all C code, including within the flex sources, Fortran and
PGSBOX wrappers, and test suite, to use C99 style commenting (i.e.
using //), excluding the header prologues used to generate the user
manual.
- Documentation generation moved to doxygen 1.8.19 (was 1.8.18).
OBS-URL: https://build.opensuse.org/request/show/831044
OBS-URL: https://build.opensuse.org/package/show/science/wcslib?expand=0&rev=16
- 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).
OBS-URL: https://build.opensuse.org/request/show/819079
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/wcslib?expand=0&rev=6
- 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.
OBS-URL: https://build.opensuse.org/request/show/747258
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/wcslib?expand=0&rev=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.
OBS-URL: https://build.opensuse.org/request/show/747228
OBS-URL: https://build.opensuse.org/package/show/science/wcslib?expand=0&rev=9