Changelog for
python-pyfits-3.3-lp150.1.145.x86_64.rpm :
* Thu Sep 11 2014 toddrme2178AATTgmail.com- This package is DEPRECATED upstream, please use astropy instead.- Add pyfits-3.3-use-external-cfitsio.patch to use external cfitsio- Update urls- Update to 3.3 (2014-07-17)
* New Features + Added new verification options ``fix+ignore``, ``fix+warn``, ``fix+exception``, ``silentfix+ignore``, ``silentfix+warn``, and ``silentfix+exception`` which give more control over how to report fixable errors as opposed to unfixable errors. See the \"Verification\" section in the PyFITS documentation for more details.
* API Changes + The ``pyfits.new_table`` function is now fully deprecated (though will not be removed for a long time, considering how widely it is used). Instead please use the more explicit ``pyfits.BinTableHDU.from_columns`` to create a new binary table HDU, and the similar ``pyfits.TableHDU.from_columns`` to create a new ASCII table. These otherwise accept the same arguments as ``pyfits.new_table`` which is now just a wrapper for these. + The ``.fromstring`` classmethod of each HDU type has been simplified such that, true to its namesake, it only initializes an HDU from a string containing its header
*and
* data. (spacetelescope/PyFITS#64) + Fixed an issue where header wildcard matching (for example ``header[\'DATE
*\']``) can be used to match
*any
* characters that might appear in a keyword. Previously this only matched keywords containing characters in the set ``[0-9A-Za-z_]``. Now this can also match a hyphen ``-`` and any other characters, as some conventions like ``HIERARCH`` and record-valued keyword cards allow a wider range of valid characters than standard FITS keywords. + This will be the
*last
* release to support the following APIs that have been marked deprecated since PyFITS v3.1: - - The ``CardList`` class, which was part of the old header implementation. - - The ``Card.key`` attribute. Use ``Card.keyword`` instead. - - The ``Card.cardimage`` and ``Card.ascardimage`` attributes. Use simply ``Card.image`` or ``str(card)`` instead. - - The ``create_card`` factory function. Simply use the normal ``Card`` constructor instead. - - The ``create_card_from_string`` factory function. Use ``Card.fromstring`` instead. - - The ``upper_key`` function. Use ``Card.normalize_keyword`` method instead (this is not unlikely to be used outside of PyFITS itself, but it was technically public API). - - The usage of ``Header.update`` with ``Header.update(keyword, value, comment)`` arguments. ``Header.update`` should only be used analogously to ``dict.update``. Use ``Header.set`` instead. - - The ``Header.ascard`` attribute. Use ``Header.cards`` instead for a list of all the ``Card`` objects in the header. - - The ``Header.rename_key`` method. Use ``Header.rename_keyword`` instead. - - The ``Header.get_history`` method. Use ``header[\'HISTORY\']`` instead (normal keyword lookup). - - The ``Header.get_comment`` method. Use ``header[\'COMMENT\']`` instead. - - The ``Header.toTxtFile`` method. Use ``header.totextfile`` instead. - - The ``Header.fromTxtFile`` method. Use ``Header.fromtextfile`` instead. - - The ``pyfits.tdump`` and ``tcreate`` functions. Use ``pyfits.tabledump`` and ``pyfits.tableload`` respectively. - - The ``BinTableHDU.tdump`` and ``tcreate`` methods. Use ``BinTableHDU.dump`` and ``BinTableHDU.load`` respectively. - - The ``txtfile`` argument to the ``Header`` constructor. Use ``Header.fromfile`` instead. - - The ``startColumn`` and ``endColumn`` arguments to the ``FITS_record`` constructor. These are unlikely to be used by any user code. These deprecated interfaces will be removed from the development version of PyFITS following the v3.3 release (they will still be available in any v3.3.x bugfix releases, however).
* Other Changes and Additions + PyFITS has switched to a unified code base which supports Python 2.5 through 3.4 simultaneously without translation. This
*shouldn\'t
* have any significant performance impacts, but please report if anything seems noticeably slower. As a reminder, support for Python 2.5 will be ended after PyFITS 3.3.x. + Warnings for deprecated APIs in PyFITS are now always displayed by default. This is in line with a similar change made recently to Astropy: https://github.com/astropy/astropy/pull/1871 To disable PyFITS deprecation warnings in scripts one may call ``pyfits.ignore_deprecation_warnings()`` after importing PyFITS. + ``Card`` objects have a new ``is_blank`` attribute which returns ``True`` if the card represents a blank card (no keyword, value, or comment) and ``False`` otherwise.
* Bug Fixes + Fixed a regression where it was not possible to save an empty \"compressed\" image to a file (in this case there is nothing to compress, hence the quotes, but trying to do so caused a crash). (spacetelescope/PyFITS#69) + Fixed a regression that may have been introduced in v3.2.1 with writing compressed image HDUs, particularly compressed images using a non-empty GZIP_COMPRESSED_DATA column. (spacetelescope/#71)- Update to 3.2.4 (2014-06-02)
* Fixed a regression where multiple consecutive calls of the ``writeto`` method on the same HDU but to different files could lead to corrupt data or crashes on the subsequent calls after the first. (spacetelescope/PyFITS#40)- Update to 3.2.3 (2014-05-14)
* Nominal support for Python 3.4.
* Fixed a bug with using the ``tabledump`` and ``tableload`` functions with tables containing array columns (columns in which each element is an array instead of a single scalar value). (spacetelescope/PyFITS#22)
* Fixed an issue where PyFITS allowed newline characters in header values and comments. (spacetelescope/PyFITS#51)
* Fixed pickling of ``FITS_rec`` (table data) objects. (spacetelescope/PyFITS#53)
* Improved behavior when writing large compressed images on OSX by removing an unncessary check for platform architecture. (spacetelescope/PyFITS#57)
* Allow reading FITS files from file-like objects that do not have a ``.closed`` attribute (and as such may not even have an \"open\" vs. \"closed\" concept). (spacetelescope/PyFITS#56)
* Fixed duplicate insertion of commentary keywords on compressed image headers. (spacetelescope/PyFITS#58)
* Fixed minor issue with comparison of header commentary card values. (spacetelescope/PyFITS#59)- Update to 3.2.2 (2014-03-25)
* Fixed a regression on deletion of record-valued keyword cards using the Header wildcard syntax. This was intended to be fixed before the v3.2.1 release.- Update to 3.2.1 (2014-03-04)
* Nominal support for the upcoming Python 3.4.
* Added missing features from the ``Header.insert()`` method that were intended for inclusion in the original 3.1 release: In addition to accepting an integer index as the first argument, it also supports supplying a keyword name as the first argument for insertion relative to a specific keyword. It also now supports an optional ``after`` argument. If ``after=True`` the the insertion is made below the insertion point instead of above it. (spacetelescope/PyFITS#12)
* Fixed support for broadcasting of values assigned to table columns. (spacetelescope/PyFITS#48)
* A grab bag of minor performance improvements in headers. (spacetelescope/PyFITS#46)
* Fix an unrelated error that occurred when instantiating a ``ColDefs`` object with invalid input.
* Fixed an issue where opening an image containing pseudo-unsigned integers and immediately writing it to a new file using the ``writeto`` method would drop the scale factors that identified the data as unsigned.
* Fixed a bug where writing a file with ``checksum=True`` did not add the checksum on new files. (spacetelescope/PyFITS#8)
* Fixed an issue where validating an HDU\'s checksums removed the checksum from that HDU\'s header entirely (even if it was valid.)
* Fixed checksums on compressed images, so that the ``ZHECKSUM`` and ``ZDATASUM`` contain a checksum of the original image HDU, while ``CHECKSUM`` and ``DATASUM`` contain checksums of the compressed image HDU. This feature was supposed to be supported in 3.2, but the support was buggy.
* Fixed an issue where the size of the heap was sometimes not computed properly when writing an existing table containing variable-length array columns to a new FITS file. This could result in corruption in the new FITS file. (spacetelescope/PyFITS#47)
* Fixed issue with updates to the header of ``CompImageHDU`` objects not being preserved on save. (spacetelescope/PyFITS#23)
* Fixed a bug where a boolean value of ``True`` in a header could not be replaced with the integer 1, and likewise for ``False`` and 0 and vice versa.
* Fixed an issue similar to the above one but for numeric values--now replacing a header value with an equivalent numeric value will up/downcast that value. For example replacing \'0\' with \'0.0\' will write \'0.0\' to the header so that it is returned as a floating point value. Likewise a float can be downcast to an integer. (spacetelescope/PyFITS#49)
* A handful of Python 3 compatibility fixes, especially for compatibility with the upcoming Python 3.4.
* Fixed unrelated crash when a header contains an invalid END card (for example \"END = \"). This resulted in a cryptic traceback. Now headers like this will detect \"clearly intended\" END cards and produce a warning about their invalidity and fix them. (#217)
* Allowed a sequence of ``Column`` objects to be passed in as the main argument to ``FITS_rec.from_columns`` as the documentation suggests should be possible.
* Fixed a display formatting issue with fitsdiff where sometimes it did not show the difference between two floating point numbers if they were the same up to some low number of digits. (spacetelescope/PyFITS#21)
* Fixed an issue where Python 2 sometimes allowed non-ASCII strings to be assigned as header values if they were assigned as old-style ``str`` objects and not ``unicode`` objects. (spacetelescope/PyFITS#37)- Update to 3.2 (2013-11-26)
* Highlights + Rewrote CFITSIO-based backend for handling tile compression of FITS files. It now uses a standard CFITSIO instead of heavily modified pieces of CFITSIO as before. PyFITS ships with its own copy of CFITSIO v3.35 which supports the latest version of the Tiled Image Convention (v2.3), but system packagers may choose instead to strip this out in favor of a system-installed version of CFITSIO. Earlier versions may work, but nothing earlier than 3.28 has been tested yet. (#169) + Added support for reading and writing tables using the Q format for columns. The Q format is identical to the P format (variable-length arrays) except that it uses 64-bit integers for the data descriptors, allowing more than 4 GB of variable-length array data in a single table. (#160) + Added initial support for table columns containing pseudo-unsigned integers. This is currently enabled by using the ``uint=True`` option when opening files; any table columns with the correct BZERO value will be interpreted and returned as arrays of unsigned integers. + Some refactoring of the table and ``FITS_rec`` modules in order to better separate the details of the FITS binary and ASCII table data structures from the HDU data structures that encapsulate them. Most of these changes should not be apparent to users (but see API Changes below).
* API Changes + Assigning to values in ``ColDefs.names``, ``ColDefs.formats``, ``ColDefs.nulls`` and other attributes of ``ColDefs`` instances that return lists of column properties is no longer supported. Assigning to those lists will no longer update the corresponding columns. Instead, please just modify the ``Column`` instances directly (``Column.name``, ``Column.null``, etc.) + The ``pyfits.new_table`` function is marked \"pending deprecation\". This does not mean it will be removed outright or that its functionality has changed. It will likely be replaced in the future for a function with similar, if not subtly different functionality. A better, if not slightly more verbose approach is to use ``pyfits.FITS_rec.from_columns`` to create a new ``FITS_rec`` table--this has the same interface as ``pyfits.new_table``. The difference is that it returns a plan ``FITS_rec`` array, and not an HDU instance. This ``FITS_rec`` object can then be used as the data argument in the constructors for ``BinTableHDU`` (for binary tables) or ``TableHDU`` (for ASCII tables). This is analogous to creating an ``ImageHDU`` by passing in an image array. ``pyfits.FITS_rec.from_columns`` is just a simpler way of creating a FITS-compatible recarray from a FITS column specification. + The ``updateHeader``, ``updateHeaderData``, and ``updateCompressedData`` methods of the ``CompDataHDU`` class are pending deprecation and moved to internal methods. The operation of these methods depended too much on internal state to be used safely by users; instead they are invoked automatically in the appropriate places when reading/writing compressed image HDUs. + The ``CompDataHDU.compData`` attribute is pending deprecation in favor of the clearer and more PEP-8 compatible ``CompDataHDU.compressed_data``. + The constructor for ``CompDataHDU`` has been changed to accept new keyword arguments. The new keyword arguments are essentially the same, but are in underscore_separated format rather than camelCase format. The old arguments are still pending deprecation. + The internal attributes of HDU classes ``_hdrLoc``, ``_datLoc``, and ``_datSpan`` have been replaced with ``_header_offset``, ``_data_offset``, and ``_data_size`` respectively. The old attribute names are still pending deprecation. This should only be of interest to advanced users who have created their own HDU subclasses. + The following previously deprecated functions and methods have been removed entirely: ``createCard``, ``createCardFromString``, ``upperKey``, ``ColDefs.data``, ``setExtensionNameCaseSensitive``, ``_File.getfile``, ``_TableBaseHDU.get_coldefs``, ``Header.has_key``, ``Header.ascardlist``. If you run your code with a previous version of PyFITS (>= 3.0, < 3.2) with the ``python -Wd`` argument, warnings for all deprecated interfaces still in use will be displayed. + Interfaces that were pending deprecation are now fully deprecated. These include: ``create_card``, ``create_card_from_string``, ``upper_key``, ``Header.get_history``, and ``Header.get_comment``. + The ``.name`` attribute on HDUs is now directly tied to the HDU\'s header, so that if ``.header[\'EXTNAME\']`` changes so does ``.name`` and vice-versa. + The ``pyfits.file.PYTHON_MODES`` constant dict was renamed to ``pyfits.file.PYFITS_MODES`` which better reflects its purpose. This is rarely used by client code, however. Support for the old name will be removed by PyFITS 3.4.
* Other Changes and Additions + The new compression code also adds support for the ZQUANTIZ and ZDITHER0 keywords added in more recent versions of this FITS Tile Compression spec. This includes support for lossless compression with GZIP. (#198) By default no dithering is used, but the ``SUBTRACTIVE_DITHER_1`` and ``SUBTRACTIVE_DITHER_2`` methods can be enabled by passing the correct constants to the ``quantize_method`` argument to the ``CompImageHDU`` constuctor. A seed can be manually specified, or automatically generated using either the system clock or checksum-based methods via the ``dither_seed`` argument. See the documentation for ``CompImageHDU`` for more details. (#198) (spacetelescope/PYFITS#32) + Images compressed with the Tile Compression standard can now be larger than 4 GB through support of the Q format. (#159) + All HDUs now have a ``.ver`` ``.level`` attribute that returns the value of the EXTVAL and EXTLEVEL keywords from that HDU\'s header, if the exist. This was added for consistency with the ``.name`` attribute which returns the EXTNAME value from the header. + Then ``Column`` and ``ColDefs`` classes have new ``.dtype`` attributes which give the Numpy dtype for the column data in the first case, and the full Numpy compound dtype for each table row in the latter case. + There was an issue where new tables created defaulted the values in all string columns to \'0.0\'. Now string columns are filled with empty strings by default--this seems a less surprising default, but it may cause differences with tables created with older versions of PyFITS. + Improved round-tripping and preservation of manually assigned column attributes (``TNULLn``, ``TSCALn``, etc.) in table HDU headers. (astropy/astropy#996)
* Bug Fixes + Binary tables containing compressed images may, optionally, contain other columns unrelated to the tile compression convention. Although this is an uncommon use case, it is permitted by the standard. (#159) + Reworked some of the file I/O routines to allow simpler, more consistent mapping between OS-level file modes (\'rb\', \'wb\', \'ab\', etc.) and the more \"PyFITS-specific\" modes used by PyFITS like \"readonly\" and \"update\". That is, if reading a FITS file from an open file object, it doesn\'t matter as much what \"mode\" it was opened in so long as it has the right capabilities (read/write/etc.) Also works around bugs in the Python io module in 2.6+ with regard to file modes. (spacetelescope/PyFITS#33)- Fixed an obscure issue that can occur on systems that don\'t have flush to memory-mapped files implemented (namely GNU Hurd). (astropy/astropy#968)- Update to 3.1.3 (2013-11-26)
* Disallowed assigning NaN and Inf floating point values as header values, since the FITS standard does not define a way to represent them in. Because this is undefined, the previous behavior did not make sense and produced invalid FITS files. (spacetelescope/PyFITS#11)
* Added a workaround for a bug in 64-bit OSX that could cause truncation when writing files greater than 2^32 bytes in size. (spacetelescope/PyFITS#28)
* Fixed a long-standing issue where writing binary tables did not correctly write the TFORMn keywords for variable-length array columns (they ommitted the max array length parameter of the format). This was thought fixed in v3.1.2, but it was only fixed there for compressed image HDUs and not for binary tables in general.
* Fixed an obscure issue that can occur on systems that don\'t have flush to memory-mapped files implemented (namely GNU Hurd). (Backported from 3.2)
* Thu Oct 24 2013 speilickeAATTsuse.com- Require python-setuptools instead of distribute (upstreams merged)
* Tue Aug 21 2012 highwaystar.ruAATTgmail.com- update to version 3.1
* The ``Header`` object has been significantly reworked, and ``CardList`` objects are now deprecated (their functionality folded into the ``Header`` class). See API Changes for more details.
* Memory maps are now used by default to access HDU data. See API Changes for more details.
* Now includes a new version of the ``fitsdiff`` program for comparing two FITS files, and a new FITS comparison API used by ``fitsdiff``. See New Features.- python3 package addded- spec improved
* Thu Mar 08 2012 saschpeAATTsuse.de- Update to version 3.0.6
* Thu Nov 03 2011 matwey.kornilovAATTgmail.com- Initial version