Download PyFITS Documentation, Release 3.2.2 - stsdas

Transcript
PyFITS Documentation, Release 3.2.2
• Removed an unnecessary inline import in ExtensionHDU.__setattr__ that was causing some slowdown
when opening files containing a large number of extensions, plus a few other small (but not insignficant) performance improvements thanks to Julian Taylor. (#133)
• Fixed a regression where header blocks containing invalid end-of-header padding (i.e. null bytes instead of
spaces) couldn’t be parsed by PyFITS. Such headers can be parsed again, but a warning is raised, as such
headers are not valid FITS. (#136)
• Fixed a memory leak where table data in random groups HDUs weren’t being garbage collected. (#138)
4.3.17 3.0.6 (2012-02-29)
Highlights
The main reason for this release is to fix an issue that was introduced in PyFITS 3.0.5 where merely opening a file
containing scaled data (that is, with non-trivial BSCALE and BZERO keywords) in ‘update’ mode would cause the
data to be automatically rescaled–possibly converting the data from ints to floats–as soon as the file is closed, even
if the application did not touch the data. Now PyFITS will only rescale the data in an extension when the data is
actually accessed by the application. So opening a file in ‘update’ mode in order to modify the header or append new
extensions will not cause any change to the data in existing extensions.
This release also fixes a few Windows-specific bugs found through more extensive Windows testing, and other miscellaneous bugs.
Bug Fixes
• More accurate error messages when opening files containing invalid header cards. (#109)
• Fixed a possible reference cycle/memory leak that was caught through more extensive testing on Windows.
(#112)
• Fixed ‘ostream’ mode to open the underlying file in ‘wb’ mode instead of ‘w’ mode. (#112)
• Fixed a Windows-only issue where trying to save updates to a resized FITS file could result in a crash due to
there being open mmaps on that file. (#112)
• Fixed a crash when trying to create a FITS table (i.e. with new_table()) from a Numpy array containing bool
fields. (#113)
• Fixed a bug where manually initializing an HDUList with a list of of HDUs wouldn’t set the correct EXTEND
keyword value on the primary HDU. (#114)
• Fixed a crash that could occur when trying to deepcopy a Header in Python < 2.7. (#115)
• Fixed an issue where merely opening a scaled image in ‘update’ mode would cause the data to be converted to
floats when the file is closed. (#119)
4.3.18 3.0.5 (2012-01-30)
• Fixed a crash that could occur when accessing image sections of files opened with memmap=True. (r1211)
• Fixed the inconsistency in the behavior of files opened in ‘readonly’ mode when memmap=True vs. when
memmap=False. In the latter case, although changes to array data were not saved to disk, it was possible to
update the array data in memory. On the other hand with memmap=True, ‘readonly’ mode prevented even
in-memory modification to the data. This is what ‘copyonwrite’ mode was for, but difference in behavior was
confusing. Now ‘readonly’ is equivalent to ‘copyonwrite’ when using memmap. If the old behavior of denying
4.3. Changelog
167