Releases: esheldon/fitsio
Releases · esheldon/fitsio
1.3.0
version 1.3.0
Changes
- Introduced a `fitsio.NOT_SET` singleton for some
parameters whose defaults are deferred at the Python
level and instead set at the C level by cfitsio. The
image compression parameters now use this singleton.
However, the actual underlying defaults used have not
changed.
- Added a new function `fitsio.cfitsio_is_bundled()`
that detects if the cfitsio library is bundled with
the Python code.
- Enabled the code to track all cfitsio error messages,
including those put onto the internal stack and then
later removed. This feature should help with debugging.
- Added support for uint64 / ULONLONG data for binary tables
and images. You need cfitsio version at least 4.1.0 (or
to use the bundled cfitsio) for this feature to work.
- Installation of fitsio will fail if the `patch` command
line utility is missing. To prevent this, set the environment
variable `FITSIO_FAIL_ON_BAD_PATCHES=false`.
- The C code is now styled uniformly with clang-format.
- Updated bundled cfitsio to 4.6.3.
- Added utilities `cfitsio_has_bzip2_support` and
`cfitsio_has_curl_support` to detect at run-time if cfitsio
was built with these options.
- Added methods `delete_key` and `delete_keys` to HDUs to allow
deleting header keys.
- HDU info loading is now done lazily.
- Changed string handling in python 3 to allow for correct
null-terminated behavior when linking to external builds
of cfitsio at version 4 or larger.
Bug Fixes
- Fixed incorrect/unspecified minimum python version,
setting it to `>=3.8`.
- Fixed bug where we attempted to open `mem://` files
as existing files when calling `fitsio.FITS.reopen`.
- Fixed a bug where compression parameters set in filenames
were inconsistently applied, especially when compression
parameters were specified in Python too. Now the code will
raise an exception if a user sets Python keyword compression
parameters while also using filename compression parameters.
However, the `dither_seed` can be set from Python even if other
compression parameters are specified in the filename.
- Fixed bugs in lossless GZIP compression of integer types. See the
new patch `patches/imcompress.c.patch`. See https://github.com/HEASARC/cfitsio/pull/97
and https://github.com/HEASARC/cfitsio/pull/98 for the upstream PR for the patch.
- Fixed a bug where compression parameters were cached across different HDUs.
- Fixed a bug where writing unsupported image types either did not raise an error
or did not raise the correct error.
- Fixed a bug where rectangular subsets of images were not written properly.
- Fixed automatic detection of bzip2 and curl libraries.
- Fixed handling nan values when reading and writing compressed images.
- Fixed bug in cfitsio where underflows were cast to zero when handling
nan values. See https://github.com/HEASARC/cfitsio/pull/102.
- Fixed bug in cfitsio where overwriting a tile-compressed image fails
when the new values are not lossily compressed but the old values were.
See https://github.com/HEASARC/cfitsio/pull/101.
- Fixed a bug where the FITS HDU properties could go out of sync as header
keys were added, modified, etc.
1.2.8
What's Changed
- feat: move to setuptools-scm version by @beckermr in #441
- test: add test of unaligned array views by @beckermr in #440
- fix: ensure arrays are aligned before calling fitsio functions by @petesmc in #436
- fix: pypi uploads broke after setuptools-scm by @beckermr in #443
- fix: remove hacking changes, fix bugs in wheel/pypi release, release 1.2.8 by @beckermr in #445
New Contributors
- @petesmc made their first contribution in #436
Full Changelog: 1.2.7...1.2.8
1.2.7
1.2.6
1.2.5
What's Changed
- check TBIT for slices/rows read by @esheldon in #409
- Seed dithering by @esheldon in #411
- feat: build wheels by @beckermr in #416
- Bump the github-actions group with 2 updates by @dependabot in #417
- prod: release 1.2.5 by @beckermr in #418
New Contributors
- @dependabot made their first contribution in #417
Full Changelog: 1.2.4...1.2.5
1.2.4
1.2.3
1.2.2
1.2.1
1.2.0
Tagging 1.2.0
Changes
- move to cfitsio 4
Bug Fixes
- Fixed issue where the patched C fitsio headers were not
first in the include path.
- Added extra header guards and headers to help with compilation issues.
- Fixed builds of the bundled cfitsio code to hide symbols and directly
include the *.o files when linking.